Vlink< A > Class Template Reference

Manage all the state for virtual links. More...

#include <vlink.hh>

List of all members.


struct  Vstate
 State about each virtual link. More...

Public Member Functions

bool create_vlink (OspfTypes::RouterID rid)
 Add a virtual link router ID to the database.
bool delete_vlink (OspfTypes::RouterID rid)
 Remove this router ID from the database.
bool set_transit_area (OspfTypes::RouterID rid, OspfTypes::AreaID transit_area)
 Set the transmit area through which the virtual link is formed.
bool get_transit_area (OspfTypes::RouterID rid, OspfTypes::AreaID &transit_area) const
 Get the transmit area information.
bool set_transit_area_notified (OspfTypes::RouterID rid, bool state)
 Set state to know if the area has been notified about this virtual link.
bool get_transit_area_notified (OspfTypes::RouterID rid) const
 Has the area been notified?
bool add_address (OspfTypes::RouterID rid, A source, A destination)
 Associate the endpoint addresses with this virtual link.
bool get_address (OspfTypes::RouterID rid, A &source, A &destination)
 Get the endpoint addresses of this virtual link.
bool get_interface_vif (OspfTypes::RouterID rid, string &interface, string &vif) const
 Provide an interface and vif for this router ID.
bool add_peerid (OspfTypes::RouterID rid, OspfTypes::PeerID peerid)
 Save the peerid that has been allocted to this virtual link.
OspfTypes::PeerID get_peerid (OspfTypes::RouterID rid) const
 Get the associated peerid.
bool set_physical_interface_vif (OspfTypes::RouterID rid, string &interface, string &vif)
 The phyical interface and vif that should be used for transmission.
bool get_physical_interface_vif (A source, A destination, string &interface, string &vif) const
 Given the source and destination addresses return the interface and vif.
OspfTypes::PeerID get_peerid (A source, A destination) const
 Given the source and destination address find the PeerID of the relevant virtual link.
void get_router_ids (OspfTypes::AreaID transit_area, list< OspfTypes::RouterID > &rids) const
 Get the list of virtual links (router ids) that flow through this area.
void area_removed (OspfTypes::AreaID area)
 This area has been removed mark all the notified for this area to false.

Private Attributes

map< OspfTypes::RouterID, Vstate_vlinks

Detailed Description

template<typename A>
class Vlink< A >

Manage all the state for virtual links.

Member Function Documentation

template<typename A >
void Vlink< A >::area_removed ( OspfTypes::AreaID  area)

This area has been removed mark all the notified for this area to false.

Allowing an area to be removed and then brought back.

template<typename A >
bool Vlink< A >::get_interface_vif ( OspfTypes::RouterID  rid,
string &  interface,
string &  vif 
) const

Provide an interface and vif for this router ID.

Must not be called before the address information has been provided.

The documentation for this class was generated from the following files:
 All Classes Namespaces Functions Variables Typedefs Enumerations