OpenSDN source code
McastManagerPartition Class Reference

#include <bgp_multicast.h>

Collaboration diagram for McastManagerPartition:

Public Member Functions

 McastManagerPartition (McastTreeManager *tree_manager, size_t part_id)
 
 ~McastManagerPartition ()
 
McastSGEntry * FindSGEntry (const Ip4Address &group, const Ip4Address &source)
 
const McastSGEntry * FindSGEntry (const Ip4Address &group, const Ip4Address &source) const
 
McastSGEntry * LocateSGEntry (Ip4Address group, Ip4Address source)
 
void EnqueueSGEntry (McastSGEntry *sg_entry)
 
DBTablePartBase * GetTablePartition ()
 
const RoutingInstance * routing_instance () const
 
BgpServer * server ()
 
const BgpServer * server () const
 
McastTreeManager * tree_manager () const
 
bool empty () const
 
size_t size () const
 
ErmVpnRoute * GetGlobalTreeRootRoute (const Ip4Address &source, const Ip4Address &group) const
 
void NotifyForestNode (const Ip4Address &source, const Ip4Address &group)
 
bool GetForestNodePMSI (ErmVpnRoute *rt, uint32_t *label, Ip4Address *address, std::vector< std::string > *encap) const
 

Private Types

typedef std::set< McastSGEntry *, McastSGEntryCompare > SGList
 

Private Member Functions

bool ProcessSGEntry (McastSGEntry *sg_entry)
 
 DISALLOW_COPY_AND_ASSIGN (McastManagerPartition)
 

Private Attributes

McastTreeManager * tree_manager_
 
size_t part_id_
 
SGList sg_list_
 
int update_count_
 
WorkQueue< McastSGEntry * > work_queue_
 

Friends

class BgpMulticastTest
 
class ShowMulticastManagerDetailHandler
 

Detailed Description

Definition at line 307 of file bgp_multicast.h.

Member Typedef Documentation

◆ SGList

Definition at line 337 of file bgp_multicast.h.

Constructor & Destructor Documentation

◆ McastManagerPartition()

McastManagerPartition::McastManagerPartition ( McastTreeManager *  tree_manager,
size_t  part_id 
)

Definition at line 749 of file bgp_multicast.cc.

◆ ~McastManagerPartition()

McastManagerPartition::~McastManagerPartition ( )

Definition at line 762 of file bgp_multicast.cc.

Here is the call graph for this function:

Member Function Documentation

◆ DISALLOW_COPY_AND_ASSIGN()

McastManagerPartition::DISALLOW_COPY_AND_ASSIGN ( McastManagerPartition  )
private

◆ empty()

bool McastManagerPartition::empty ( ) const
inline

Definition at line 324 of file bgp_multicast.h.

◆ EnqueueSGEntry()

void McastManagerPartition::EnqueueSGEntry ( McastSGEntry *  sg_entry)

Definition at line 821 of file bgp_multicast.cc.

Here is the call graph for this function:

◆ FindSGEntry() [1/2]

McastSGEntry * McastManagerPartition::FindSGEntry ( const Ip4Address &  group,
const Ip4Address &  source 
)

Definition at line 767 of file bgp_multicast.cc.

◆ FindSGEntry() [2/2]

const McastSGEntry * McastManagerPartition::FindSGEntry ( const Ip4Address &  group,
const Ip4Address &  source 
) const

Definition at line 777 of file bgp_multicast.cc.

◆ GetForestNodePMSI()

bool McastManagerPartition::GetForestNodePMSI ( ErmVpnRoute *  rt,
uint32_t *  label,
Ip4Address *  address,
std::vector< std::string > *  encap 
) const

Definition at line 811 of file bgp_multicast.cc.

Here is the call graph for this function:

◆ GetGlobalTreeRootRoute()

ErmVpnRoute * McastManagerPartition::GetGlobalTreeRootRoute ( const Ip4Address &  source,
const Ip4Address &  group 
) const

Definition at line 798 of file bgp_multicast.cc.

Here is the call graph for this function:

◆ GetTablePartition()

DBTablePartBase * McastManagerPartition::GetTablePartition ( )

Definition at line 853 of file bgp_multicast.cc.

Here is the call graph for this function:

◆ LocateSGEntry()

McastSGEntry * McastManagerPartition::LocateSGEntry ( Ip4Address  group,
Ip4Address  source 
)

Definition at line 788 of file bgp_multicast.cc.

Here is the call graph for this function:

◆ NotifyForestNode()

void McastManagerPartition::NotifyForestNode ( const Ip4Address &  source,
const Ip4Address &  group 
)

Definition at line 804 of file bgp_multicast.cc.

Here is the call graph for this function:

◆ ProcessSGEntry()

bool McastManagerPartition::ProcessSGEntry ( McastSGEntry *  sg_entry)
private

Definition at line 832 of file bgp_multicast.cc.

Here is the call graph for this function:

◆ routing_instance()

const RoutingInstance * McastManagerPartition::routing_instance ( ) const

Definition at line 857 of file bgp_multicast.cc.

Here is the call graph for this function:

◆ server() [1/2]

BgpServer * McastManagerPartition::server ( )

Definition at line 861 of file bgp_multicast.cc.

Here is the call graph for this function:

◆ server() [2/2]

const BgpServer * McastManagerPartition::server ( ) const

Definition at line 865 of file bgp_multicast.cc.

Here is the call graph for this function:

◆ size()

size_t McastManagerPartition::size ( ) const
inline

Definition at line 325 of file bgp_multicast.h.

◆ tree_manager()

McastTreeManager* McastManagerPartition::tree_manager ( ) const
inline

Definition at line 323 of file bgp_multicast.h.

Friends And Related Function Documentation

◆ BgpMulticastTest

friend class BgpMulticastTest
friend

Definition at line 334 of file bgp_multicast.h.

◆ ShowMulticastManagerDetailHandler

friend class ShowMulticastManagerDetailHandler
friend

Definition at line 335 of file bgp_multicast.h.

Member Data Documentation

◆ part_id_

size_t McastManagerPartition::part_id_
private

Definition at line 342 of file bgp_multicast.h.

◆ sg_list_

SGList McastManagerPartition::sg_list_
private

Definition at line 343 of file bgp_multicast.h.

◆ tree_manager_

McastTreeManager* McastManagerPartition::tree_manager_
private

Definition at line 341 of file bgp_multicast.h.

◆ update_count_

int McastManagerPartition::update_count_
private

Definition at line 344 of file bgp_multicast.h.

◆ work_queue_

WorkQueue<McastSGEntry *> McastManagerPartition::work_queue_
private

Definition at line 345 of file bgp_multicast.h.


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