OpenSDN source code
MacLearningPartition Class Reference

#include <mac_learning.h>

Collaboration diagram for MacLearningPartition:

Public Types

typedef std::pair< MacLearningKey, MacLearningEntryPtrMacLearningEntryPair
 
typedef std::map< MacLearningKey, MacLearningEntryPtr, MacLearningKeyCmpMacLearningEntryTable
 

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< MacAgingPartitionaging_partition_
 

Friends

class MacLearningSandeshResp
 

Detailed Description

Definition at line 206 of file mac_learning.h.

Member Typedef Documentation

◆ MacLearningEntryPair

◆ MacLearningEntryTable

Constructor & Destructor Documentation

◆ MacLearningPartition()

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

Definition at line 152 of file mac_learning.cc.

Here is the call graph for this function:

◆ ~MacLearningPartition()

MacLearningPartition::~MacLearningPartition ( )
virtual

Definition at line 162 of file mac_learning.cc.

Member Function Documentation

◆ Add()

void MacLearningPartition::Add ( MacLearningEntryPtr  ptr)

Definition at line 215 of file mac_learning.cc.

Here is the call graph for this function:

◆ agent()

Agent* MacLearningPartition::agent ( )
inline

Definition at line 227 of file mac_learning.h.

◆ aging_partition()

MacAgingPartition* MacLearningPartition::aging_partition ( ) const
inline

Definition at line 231 of file mac_learning.h.

◆ Delete()

void MacLearningPartition::Delete ( MacLearningEntryPtr  ptr)

Definition at line 243 of file mac_learning.cc.

Here is the call graph for this function:

◆ DeleteAll()

void MacLearningPartition::DeleteAll ( )

◆ DISALLOW_COPY_AND_ASSIGN()

MacLearningPartition::DISALLOW_COPY_AND_ASSIGN ( MacLearningPartition  )
private

◆ Enqueue()

void MacLearningPartition::Enqueue ( MacLearningEntryRequestPtr  req)

Definition at line 277 of file mac_learning.cc.

Here is the call graph for this function:

◆ EnqueueMgmtReq()

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

Definition at line 206 of file mac_learning.cc.

Here is the call graph for this function:

◆ Find()

MacLearningEntry * MacLearningPartition::Find ( const MacLearningKey key)

Definition at line 301 of file mac_learning.cc.

◆ id()

uint32_t MacLearningPartition::id ( ) const
inline

Definition at line 235 of file mac_learning.h.

◆ MayBeStartRunner()

void MacLearningPartition::MayBeStartRunner ( TokenPool pool)

Definition at line 166 of file mac_learning.cc.

Here is the call graph for this function:

◆ ReleaseToken()

void MacLearningPartition::ReleaseToken ( const MacLearningKey key)

Definition at line 315 of file mac_learning.cc.

Here is the call graph for this function:

◆ RequestHandler()

bool MacLearningPartition::RequestHandler ( MacLearningEntryRequestPtr  ptr)

Definition at line 176 of file mac_learning.cc.

Here is the call graph for this function:

◆ Resync()

void MacLearningPartition::Resync ( MacLearningEntryPtr  ptr)

Definition at line 264 of file mac_learning.cc.

Here is the call graph for this function:

◆ SetDeleteQueueDisable()

void MacLearningPartition::SetDeleteQueueDisable ( bool  disable)
inline

Definition at line 243 of file mac_learning.h.

Here is the call graph for this function:

◆ TestGet()

MacLearningEntryPtr MacLearningPartition::TestGet ( const MacLearningKey key)

Definition at line 310 of file mac_learning.cc.

Friends And Related Function Documentation

◆ MacLearningSandeshResp

friend class MacLearningSandeshResp
friend

Definition at line 248 of file mac_learning.h.

Member Data Documentation

◆ add_request_queue_

MacLearningRequestQueue MacLearningPartition::add_request_queue_
private

Definition at line 252 of file mac_learning.h.

◆ agent_

Agent* MacLearningPartition::agent_
private

Definition at line 249 of file mac_learning.h.

◆ aging_partition_

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

Definition at line 255 of file mac_learning.h.

◆ change_request_queue_

MacLearningRequestQueue MacLearningPartition::change_request_queue_
private

Definition at line 253 of file mac_learning.h.

◆ delete_request_queue_

MacLearningRequestQueue MacLearningPartition::delete_request_queue_
private

Definition at line 254 of file mac_learning.h.

◆ id_

uint32_t MacLearningPartition::id_
private

Definition at line 250 of file mac_learning.h.

◆ mac_learning_table_

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: