OpenSDN source code
 All Classes Namespaces Files Functions Variables Typedefs Enumerations Enumerator Friends Macros Pages
KSyncRouteWalker Class Reference

#include <route_ksync.h>

Inheritance diagram for KSyncRouteWalker:
Collaboration diagram for KSyncRouteWalker:

Public Types

typedef DBTableWalker::WalkId RouteWalkerIdList [Agent::ROUTE_TABLE_MAX]
 
- Public Types inherited from AgentRouteWalker
typedef boost::function< void()> WalkDone
 
typedef boost::function< void(VrfEntry *)> RouteWalkDoneCb
 
typedef std::map< const
VrfEntry *, tbb::atomic< int > > 
VrfRouteWalkCountMap
 

Public Member Functions

 KSyncRouteWalker (Agent *agent, VrfKSyncObject::VrfState *state)
 
virtual ~KSyncRouteWalker ()
 
void NotifyRoutes (VrfEntry *vrf)
 
void EnqueueDelete ()
 
virtual bool RouteWalkNotify (DBTablePartBase *partition, DBEntryBase *e)
 
- Public Member Functions inherited from AgentRouteWalker
virtual ~AgentRouteWalker ()
 
void StartVrfWalk ()
 
void StartRouteWalk (VrfEntry *vrf)
 
virtual bool VrfWalkNotify (DBTablePartBase *partition, DBEntryBase *e)
 
virtual void VrfWalkDone (DBTableBase *part)
 
virtual void RouteWalkDone (DBTableBase *part)
 
void WalkDoneCallback (WalkDone cb)
 
void RouteWalkDoneForVrfCallback (RouteWalkDoneCb cb)
 
int walk_count () const
 
bool IsWalkCompleted () const
 
bool IsValidDeleteWalkRef () const
 
bool IsValidVrfWalkRef () const
 
bool IsDeregisterDone () const
 
bool AreAllWalksDone () const
 
bool AreAllRouteWalksDone (const VrfEntry *vrf) const
 
bool IsRouteTableWalkCompleted (RouteWalkerDBState *state)
 
AgentRouteWalkerManagermgr ()
 
Agentagent () const
 
uint32_t refcount () const
 

Private Member Functions

 DISALLOW_COPY_AND_ASSIGN (KSyncRouteWalker)
 

Private Attributes

VrfKSyncObject::VrfStatestate_
 
bool marked_for_deletion_
 

Additional Inherited Members

- Static Public Attributes inherited from AgentRouteWalker
static const int kInvalidWalkCount = 0
 
- Protected Member Functions inherited from AgentRouteWalker
 AgentRouteWalker (const std::string &name, Agent *agent)
 
void set_mgr (AgentRouteWalkerManager *mgr)
 

Detailed Description

Definition at line 278 of file route_ksync.h.

Member Typedef Documentation

typedef DBTableWalker::WalkId KSyncRouteWalker::RouteWalkerIdList[Agent::ROUTE_TABLE_MAX]

Definition at line 280 of file route_ksync.h.

Constructor & Destructor Documentation

KSyncRouteWalker::KSyncRouteWalker ( Agent agent,
VrfKSyncObject::VrfState state 
)

Definition at line 1318 of file route_ksync.cc.

KSyncRouteWalker::~KSyncRouteWalker ( )
virtual

Definition at line 1323 of file route_ksync.cc.

Member Function Documentation

KSyncRouteWalker::DISALLOW_COPY_AND_ASSIGN ( KSyncRouteWalker  )
private
void KSyncRouteWalker::EnqueueDelete ( )

Definition at line 1332 of file route_ksync.cc.

Here is the call graph for this function:

void KSyncRouteWalker::NotifyRoutes ( VrfEntry vrf)

Definition at line 1380 of file route_ksync.cc.

Here is the call graph for this function:

bool KSyncRouteWalker::RouteWalkNotify ( DBTablePartBase partition,
DBEntryBase e 
)
virtual

Reimplemented from AgentRouteWalker.

Definition at line 1337 of file route_ksync.cc.

Here is the call graph for this function:

Member Data Documentation

bool KSyncRouteWalker::marked_for_deletion_
private

Definition at line 290 of file route_ksync.h.

VrfKSyncObject::VrfState* KSyncRouteWalker::state_
private

Definition at line 289 of file route_ksync.h.


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