OpenSDN source code
OVSDB::MulticastMacLocalOvsdb Class Reference

#include <multicast_mac_local_ovsdb.h>

Inheritance diagram for OVSDB::MulticastMacLocalOvsdb:
Collaboration diagram for OVSDB::MulticastMacLocalOvsdb:

Public Types

typedef std::pair< VrfEntry *, MulticastMacLocalEntry * > VrfDepEntry
 
typedef std::set< VrfDepEntryVrfDepList
 
typedef std::map< struct ovsdb_idl_row *, MulticastMacLocalEntry * > OvsdbIdlDepList
 
- Public Types inherited from KSyncObject
typedef boost::intrusive::member_hook< KSyncEntry, boost::intrusive::set_member_hook<>, &KSyncEntry::node_KSyncObjectNode
 
typedef boost::intrusive::set< KSyncEntry, KSyncObjectNodeTree
 
typedef boost::intrusive::member_hook< KSyncFwdReference, boost::intrusive::set_member_hook<>, &KSyncFwdReference::node_KSyncFwdRefNode
 
typedef boost::intrusive::set< KSyncFwdReference, KSyncFwdRefNodeFwdRefTree
 
typedef boost::intrusive::member_hook< KSyncBackReference, boost::intrusive::set_member_hook<>, &KSyncBackReference::node_KSyncBackRefNode
 
typedef boost::intrusive::set< KSyncBackReference, KSyncBackRefNodeBackRefTree
 

Public Member Functions

 MulticastMacLocalOvsdb (OvsdbClientIdl *idl, OvsPeer *peer)
 
 ~MulticastMacLocalOvsdb ()
 
OvsPeerpeer ()
 
void Notify (OvsdbClientIdl::Op op, struct ovsdb_idl_row *row)
 
void LocatorSetNotify (OvsdbClientIdl::Op op, struct ovsdb_idl_row *row)
 
KSyncEntryAlloc (const KSyncEntry *key, uint32_t index)
 
void VrfReEvalEnqueue (VrfEntry *vrf)
 
bool VrfReEval (VrfEntryRef vrf)
 
- Public Member Functions inherited from OVSDB::OvsdbObject
 OvsdbObject (OvsdbClientIdl *idl)
 
virtual ~OvsdbObject ()
 
KSyncEntryFindActiveEntry (KSyncEntry *key)
 
void DeleteTable (void)
 
virtual void EmptyTable (void)
 
OvsdbClientIdlclient_idl ()
 
- Public Member Functions inherited from KSyncObject
 KSyncObject (const std::string &name)
 
 KSyncObject (const std::string &name, int max_index)
 
virtual ~KSyncObject ()
 
void InitStaleEntryCleanup (boost::asio::io_context &ios, uint32_t cleanup_time, uint32_t cleanup_intvl, uint16_t entries_per_intvl)
 
void NotifyEvent (KSyncEntry *entry, KSyncEntry::KSyncEvent event)
 
void SafeNotifyEvent (KSyncEntry *entry, KSyncEntry::KSyncEvent event)
 
virtual void NetlinkAck (KSyncEntry *entry, KSyncEntry::KSyncEvent event)
 
void BackRefAdd (KSyncEntry *key, KSyncEntry *reference)
 
void BackRefDel (KSyncEntry *key)
 
void BackRefReEval (KSyncEntry *key)
 
KSyncEntryCreate (const KSyncEntry *key)
 
KSyncEntryCreate (const KSyncEntry *key, bool skip_lookup)
 
KSyncEntryCreateStale (const KSyncEntry *key)
 
void Change (KSyncEntry *entry)
 
void Delete (KSyncEntry *entry)
 
KSyncEntryFind (const KSyncEntry *key)
 
KSyncEntryNext (const KSyncEntry *entry) const
 
KSyncEntryGetReference (const KSyncEntry *key)
 
virtual void Free (KSyncEntry *entry)
 
bool IsEmpty (void)
 
virtual bool DoEventTrace (void)
 
virtual void PreFree (KSyncEntry *entry)
 
std::size_t Size ()
 
void set_delete_scheduled ()
 
bool delete_scheduled ()
 
virtual SandeshTraceBufferPtr GetKSyncTraceBuf ()
 

Private Member Functions

 DISALLOW_COPY_AND_ASSIGN (MulticastMacLocalOvsdb)
 

Private Attributes

OvsPeerpeer_
 
VrfDepList vrf_dep_list_
 
WorkQueue< VrfEntryRef > * vrf_reeval_queue_
 
OvsdbIdlDepList locator_dep_list_
 

Friends

class MulticastMacLocalEntry
 

Additional Inherited Members

- Static Public Member Functions inherited from KSyncObject
static void Shutdown ()
 
- Protected Member Functions inherited from OVSDB::OvsdbObject
virtual void DeleteTableDone (void)
 
- Protected Member Functions inherited from KSyncObject
KSyncEntryCreateImpl (const KSyncEntry *key)
 
void ClearStale (KSyncEntry *entry)
 
void ChangeKey (KSyncEntry *entry, uint32_t arg)
 
virtual void UpdateKey (KSyncEntry *entry, uint32_t arg)
 
virtual uint32_t GetKey (KSyncEntry *entry)
 
- Protected Attributes inherited from OVSDB::OvsdbObject
OvsdbClientIdlPtr client_idl_
 
- Protected Attributes inherited from KSyncObject
tbb::recursive_mutex lock_
 

Detailed Description

Definition at line 17 of file multicast_mac_local_ovsdb.h.

Member Typedef Documentation

◆ OvsdbIdlDepList

typedef std::map<struct ovsdb_idl_row *, MulticastMacLocalEntry *> OVSDB::MulticastMacLocalOvsdb::OvsdbIdlDepList

Definition at line 21 of file multicast_mac_local_ovsdb.h.

◆ VrfDepEntry

◆ VrfDepList

Constructor & Destructor Documentation

◆ MulticastMacLocalOvsdb()

MulticastMacLocalOvsdb::MulticastMacLocalOvsdb ( OvsdbClientIdl idl,
OvsPeer peer 
)

Definition at line 191 of file multicast_mac_local_ovsdb.cc.

Here is the call graph for this function:

◆ ~MulticastMacLocalOvsdb()

MulticastMacLocalOvsdb::~MulticastMacLocalOvsdb ( )

Definition at line 210 of file multicast_mac_local_ovsdb.cc.

Member Function Documentation

◆ Alloc()

KSyncEntry * MulticastMacLocalOvsdb::Alloc ( const KSyncEntry key,
uint32_t  index 
)
virtual

Implements KSyncObject.

Definition at line 300 of file multicast_mac_local_ovsdb.cc.

◆ DISALLOW_COPY_AND_ASSIGN()

OVSDB::MulticastMacLocalOvsdb::DISALLOW_COPY_AND_ASSIGN ( MulticastMacLocalOvsdb  )
private

◆ LocatorSetNotify()

void MulticastMacLocalOvsdb::LocatorSetNotify ( OvsdbClientIdl::Op  op,
struct ovsdb_idl_row *  row 
)

Definition at line 288 of file multicast_mac_local_ovsdb.cc.

Here is the call graph for this function:

◆ Notify()

void MulticastMacLocalOvsdb::Notify ( OvsdbClientIdl::Op  op,
struct ovsdb_idl_row *  row 
)

Definition at line 239 of file multicast_mac_local_ovsdb.cc.

Here is the call graph for this function:

◆ peer()

OvsPeer * MulticastMacLocalOvsdb::peer ( )

Definition at line 215 of file multicast_mac_local_ovsdb.cc.

◆ VrfReEval()

bool MulticastMacLocalOvsdb::VrfReEval ( VrfEntryRef  vrf)

Definition at line 224 of file multicast_mac_local_ovsdb.cc.

Here is the call graph for this function:

◆ VrfReEvalEnqueue()

void MulticastMacLocalOvsdb::VrfReEvalEnqueue ( VrfEntry vrf)

Definition at line 219 of file multicast_mac_local_ovsdb.cc.

Friends And Related Function Documentation

◆ MulticastMacLocalEntry

friend class MulticastMacLocalEntry
friend

Definition at line 34 of file multicast_mac_local_ovsdb.h.

Member Data Documentation

◆ locator_dep_list_

OvsdbIdlDepList OVSDB::MulticastMacLocalOvsdb::locator_dep_list_
private

Definition at line 38 of file multicast_mac_local_ovsdb.h.

◆ peer_

OvsPeer* OVSDB::MulticastMacLocalOvsdb::peer_
private

Definition at line 35 of file multicast_mac_local_ovsdb.h.

◆ vrf_dep_list_

VrfDepList OVSDB::MulticastMacLocalOvsdb::vrf_dep_list_
private

Definition at line 36 of file multicast_mac_local_ovsdb.h.

◆ vrf_reeval_queue_

WorkQueue<VrfEntryRef>* OVSDB::MulticastMacLocalOvsdb::vrf_reeval_queue_
private

Definition at line 37 of file multicast_mac_local_ovsdb.h.


The documentation for this class was generated from the following files: