OpenSDN source code
|
#include <peer.h>
Public Types | |
enum | Type { MULTICAST_PEER, EVPN_PEER, BGP_PEER, EVPN_ROUTING_PEER, LINKLOCAL_PEER, ECMP_PEER, VXLAN_BGP_PEER, LOCAL_VM_PORT_PEER, LOCAL_VM_PEER, LOCAL_PEER, NOVA_PEER, VGW_PEER, MULTICAST_FABRIC_TREE_BUILDER, OVS_PEER, MULTICAST_TOR_PEER, MAC_VM_BINDING_PEER, INET_EVPN_PEER, MAC_LEARNING_PEER } |
typedef std::map< std::string, Peer * > | PeerMap |
typedef std::pair< std::string, Peer * > | PeerPair |
Public Member Functions | |
Peer (Type type, const std::string &name, bool controller_export) | |
virtual | ~Peer () |
bool | IsLess (const Peer *rhs) const |
virtual bool | Compare (const Peer *rhs) const |
virtual bool | export_to_controller () const |
virtual const Ip4Address * | NexthopIp (Agent *agent, const AgentPath *path) const |
const std::string & | GetName () const |
const Type | GetType () const |
virtual bool | SkipAddChangeRequest () const |
virtual bool | IsDeleted () const |
uint32_t | refcount () const |
uint64_t | sequence_number () const |
void | incr_sequence_number () |
Private Member Functions | |
virtual bool | DeleteOnZeroRefcount () const |
DISALLOW_COPY_AND_ASSIGN (Peer) | |
Private Attributes | |
Type | type_ |
std::string | name_ |
bool | export_to_controller_ |
tbb::atomic< uint32_t > | refcount_ |
uint64_t | sequence_number_ |
Friends | |
void | intrusive_ptr_add_ref (const Peer *p) |
void | intrusive_ptr_release (const Peer *p) |
typedef std::map<std::string, Peer *> Peer::PeerMap |
typedef std::pair<std::string, Peer *> Peer::PeerPair |
enum Peer::Type |
Peer::Peer | ( | Type | type, |
const std::string & | name, | ||
bool | controller_export | ||
) |
|
inlinevirtual |
Reimplemented in VxlanBgpPeer, EvpnRoutingPeer, InetEvpnPeer, EvpnPeer, EcmpPeer, LocalVmPortPeer, BgpPeer, and OvsPeer.
|
privatevirtual |
Reimplemented in DynamicPeer.
|
private |
|
inlinevirtual |
|
inlinevirtual |
Reimplemented in BgpPeer, and DynamicPeer.
|
inline |
|
virtual |
|
inlinevirtual |
Reimplemented in DynamicPeer.