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

#include <mac_learning.h>

Collaboration diagram for MacLearningPartition:

Public Types

typedef std::pair
< MacLearningKey,
MacLearningEntryPtr
MacLearningEntryPair
 
typedef std::map
< MacLearningKey,
MacLearningEntryPtr,
MacLearningKeyCmp
MacLearningEntryTable
 

Public Member Functions

 MacLearningPartition (Agent *agent, MacLearningProto *proto, uint32_t id)
 
virtual ~MacLearningPartition ()
 
void Add (MacLearningEntryPtr ptr)
 
void Resync (MacLearningEntryPtr ptr)
 
void Delete (MacLearningEntryPtr ptr)
 
void DeleteAll ()
 
void ReleaseToken (const MacLearningKey &key)
 
MacLearningEntryFind (const MacLearningKey &key)
 
MacLearningEntryPtr TestGet (const MacLearningKey &key)
 
bool RequestHandler (MacLearningEntryRequestPtr ptr)
 
Agentagent ()
 
MacAgingPartitionaging_partition () const
 
uint32_t id () const
 
void Enqueue (MacLearningEntryRequestPtr req)
 
void EnqueueMgmtReq (MacLearningEntryPtr ptr, bool add)
 
void MayBeStartRunner (TokenPool *pool)
 
void SetDeleteQueueDisable (bool disable)
 

Private Member Functions

 DISALLOW_COPY_AND_ASSIGN (MacLearningPartition)
 

Private Attributes

Agentagent_
 
uint32_t id_
 
MacLearningEntryTable mac_learning_table_
 
MacLearningRequestQueue add_request_queue_
 
MacLearningRequestQueue change_request_queue_
 
MacLearningRequestQueue delete_request_queue_
 
boost::shared_ptr
< MacAgingPartition
aging_partition_
 

Friends

class MacLearningSandeshResp
 

Detailed Description

Definition at line 206 of file mac_learning.h.

Member Typedef Documentation

Constructor & Destructor Documentation

MacLearningPartition::MacLearningPartition ( Agent agent,
MacLearningProto proto,
uint32_t  id 
)

Definition at line 152 of file mac_learning.cc.

MacLearningPartition::~MacLearningPartition ( )
virtual

Definition at line 162 of file mac_learning.cc.

Member Function Documentation

void MacLearningPartition::Add ( MacLearningEntryPtr  ptr)

Definition at line 215 of file mac_learning.cc.

Here is the call graph for this function:

Agent* MacLearningPartition::agent ( )
inline

Definition at line 227 of file mac_learning.h.

MacAgingPartition* MacLearningPartition::aging_partition ( ) const
inline

Definition at line 231 of file mac_learning.h.

void MacLearningPartition::Delete ( MacLearningEntryPtr  ptr)

Definition at line 243 of file mac_learning.cc.

Here is the call graph for this function:

void MacLearningPartition::DeleteAll ( )
MacLearningPartition::DISALLOW_COPY_AND_ASSIGN ( MacLearningPartition  )
private
void MacLearningPartition::Enqueue ( MacLearningEntryRequestPtr  req)

Definition at line 277 of file mac_learning.cc.

Here is the call graph for this function:

void MacLearningPartition::EnqueueMgmtReq ( MacLearningEntryPtr  ptr,
bool  add 
)

Definition at line 206 of file mac_learning.cc.

Here is the call graph for this function:

MacLearningEntry * MacLearningPartition::Find ( const MacLearningKey key)

Definition at line 301 of file mac_learning.cc.

uint32_t MacLearningPartition::id ( ) const
inline

Definition at line 235 of file mac_learning.h.

void MacLearningPartition::MayBeStartRunner ( TokenPool pool)

Definition at line 166 of file mac_learning.cc.

Here is the call graph for this function:

void MacLearningPartition::ReleaseToken ( const MacLearningKey key)

Definition at line 315 of file mac_learning.cc.

Here is the call graph for this function:

bool MacLearningPartition::RequestHandler ( MacLearningEntryRequestPtr  ptr)

Definition at line 176 of file mac_learning.cc.

Here is the call graph for this function:

void MacLearningPartition::Resync ( MacLearningEntryPtr  ptr)

Definition at line 264 of file mac_learning.cc.

Here is the call graph for this function:

void MacLearningPartition::SetDeleteQueueDisable ( bool  disable)
inline

Definition at line 243 of file mac_learning.h.

Here is the call graph for this function:

MacLearningEntryPtr MacLearningPartition::TestGet ( const MacLearningKey key)

Definition at line 310 of file mac_learning.cc.

Friends And Related Function Documentation

friend class MacLearningSandeshResp
friend

Definition at line 248 of file mac_learning.h.

Member Data Documentation

MacLearningRequestQueue MacLearningPartition::add_request_queue_
private

Definition at line 252 of file mac_learning.h.

Agent* MacLearningPartition::agent_
private

Definition at line 249 of file mac_learning.h.

boost::shared_ptr<MacAgingPartition> MacLearningPartition::aging_partition_
private

Definition at line 255 of file mac_learning.h.

MacLearningRequestQueue MacLearningPartition::change_request_queue_
private

Definition at line 253 of file mac_learning.h.

MacLearningRequestQueue MacLearningPartition::delete_request_queue_
private

Definition at line 254 of file mac_learning.h.

uint32_t MacLearningPartition::id_
private

Definition at line 250 of file mac_learning.h.

MacLearningEntryTable MacLearningPartition::mac_learning_table_
private

Definition at line 251 of file mac_learning.h.


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