| 
 | 
 | ||||||||||||||||
The IfMgrIfTree is the top-level container of interface configuration state. The tree contains a collection of IfMgrIfAtom objects, each of which represents the configuration state of a physical interface.
| typedef map<const string, IfMgrIfAtom> IfMap | IfMap | 
| const IfMap&  interfaces () | interfaces | 
[const]
Interface collection accessor.
| IfMap&  interfaces () | interfaces | 
Interface collection accessor.
| void  clear () | clear | 
| const IfMgrIfAtom*  find_interface (const string& ifname) | find_interface | 
[const]
Find interface.
Parameters:
| ifname | name of interface to find. | 
Returns: pointer to interface structure on success, 0 otherwise.
| IfMgrIfAtom*  find_interface (const string& ifname) | find_interface | 
Find interface.
Parameters:
| ifname | name of interface to find. | 
Returns: pointer to interface structure on success, 0 otherwise.
| const IfMgrVifAtom*  find_vif (const string& ifname,
				 const string& vifname) | find_vif | 
[const]
Find virtual interface.
Parameters:
| ifname | name of interface responsible for virtual interface. | 
| vifname | name of virtual interface. | 
Returns: pointer to virtual interface structure on success, 0 otherwise.
| IfMgrVifAtom*  find_vif (const string& ifname,
			   const string& vifname) | find_vif | 
Find virtual interface.
Parameters:
| ifname | name of interface responsible for virtual interface. | 
| vifname | name of virtual interface. | 
Returns: pointer to virtual interface structure on success, 0 otherwise.
| const IfMgrIPv4Atom*  find_addr (const string& ifname,
				   const string& vifname,
				   const IPv4&	 addr) | find_addr | 
[const]
Find IPv4 address structure.
Parameters:
| ifname | name of interface responsible for address. | 
| vifname | name of virtual interface responsible for address. | 
| addr | IPv4 address. | 
Returns: pointer to virtual interface structure on success, 0 otherwise.
| IfMgrIPv4Atom*  find_addr (const string&	ifname,
			     const string&	vifname,
			     const IPv4&	addr) | find_addr | 
Find IPv4 address structure.
Parameters:
| ifname | name of interface responsible for address. | 
| vifname | name of virtual interface responsible for address. | 
| addr | IPv4 address. | 
Returns: pointer to virtual interface structure on success, 0 otherwise.
| const IfMgrIPv6Atom*  find_addr (const string& ifname,
				   const string& vifname,
				   const IPv6&	 addr) | find_addr | 
[const]
Find IPv6 address structure.
Parameters:
| ifname | name of interface responsible for address. | 
| vifname | name of virtual interface responsible for address. | 
| addr | IPv6 address. | 
Returns: pointer to virtual interface structure on success, 0 otherwise.
| IfMgrIPv6Atom*  find_addr (const string&	ifname,
			     const string&	vifname,
			     const IPv6&	addr) | find_addr | 
Find IPv6 address structure.
Parameters:
| ifname | name of interface responsible for address. | 
| vifname | name of virtual interface responsible for address. | 
| addr | IPv6 address. | 
Returns: pointer to virtual interface structure on success, 0 otherwise.
| bool  operator== (const IfMgrIfTree& o) | operator== | 
[const]
Equality operator.
Parameters:
| o | tree to compare against. | 
Returns: true if this instance and o are the same, false otherwise.
| bool  is_my_addr (const IPv4& addr, string& ifname, string& vifname) | is_my_addr | 
[const]
Test if an IPv4 address belongs to an interface.
If an interface with the address is down, then the address is not considered to belong to that interface.
Parameters:
| addr | the address to test. | 
| ifname | the return-by-reference name of the interface the address belongs to, or an empty string. | 
| vifname | the return-by-reference name of the vif the address belongs to, or an empty string. | 
Returns: true if the address belongs to an interface, otherwise false.
| bool  is_my_addr (const IPv6& addr, string& ifname, string& vifname) | is_my_addr | 
[const]
Test if an IPv6 address belongs to an interface.
If an interface with the address is down, then the address is not considered to belong to that interface.
Parameters:
| addr | the address to test. | 
| ifname | the return-by-reference name of the interface the address belongs to, or an empty string. | 
| vifname | the return-by-reference name of the vif the address belongs to, or an empty string. | 
Returns: true if the address belongs to an interface, otherwise false.
| bool  is_my_addr (const IPvX& addr, string& ifname, string& vifname) | is_my_addr | 
[const]
Test if an IPvX address belongs to an interface.
If an interface with the address is down, then the address is not considered to belong to that interface.
Parameters:
| addr | the address to test. | 
| ifname | the return-by-reference name of the interface the address belongs to, or an empty string. | 
| vifname | the return-by-reference name of the vif the address belongs to, or an empty string. | 
Returns: true if the address belongs to an interface, otherwise false.
| bool  is_directly_connected (const IPv4& addr, string& ifname,
			       string& vifname) | is_directly_connected | 
[const]
Test if an IPv4 address is directly connected to an interface.
If an interface toward an address is down, then the address is not considered as directly connected.
Parameters:
| addr | the address to test. | 
| ifname | the return-by-reference name of the interface toward the address if the address is directly connected otherwise an empty string. | 
| vifname | the return-by-reference name of the vif toward the address if the address is directly connected otherwise an empty string. | 
Returns: true if the address is directly connected, otherwise false.
| bool  is_directly_connected (const IPv6& addr, string& ifname,
			       string& vifname) | is_directly_connected | 
[const]
Test if an IPv6 address is directly connected to an interface.
If an interface toward an address is down, then the address is not considered as directly connected.
Parameters:
| addr | the address to test. | 
| ifname | the return-by-reference name of the interface toward the address if the address is directly connected otherwise an empty string. | 
| vifname | the return-by-reference name of the vif toward the address if the address is directly connected otherwise an empty string. | 
Returns: true if the address is directly connected, otherwise false.
| bool  is_directly_connected (const IPvX& addr, string& ifname,
			       string& vifname) | is_directly_connected | 
[const]
Test if an IPvX address is directly connected to an interface.
If an interface toward an address is down, then the address is not considered as directly connected.
Parameters:
| addr | the address to test. | 
| ifname | the return-by-reference name of the interface toward the address if the address is directly connected otherwise an empty string. | 
| vifname | the return-by-reference name of the vif toward the address if the address is directly connected otherwise an empty string. | 
Returns: true if the address is directly connected, otherwise false.
| IfMap _interfaces | _interfaces | 
[protected]
| inline void
 clear () | clear | 
[protected]