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

#include <bgp_mvpn.h>

Collaboration diagram for MvpnState:

Classes

struct  SG
 

Public Types

typedef std::set< MvpnRoute * > RoutesSet
 
typedef std::map< MvpnRoute
*, BgpAttrPtr
RoutesMap
 
typedef std::map< SG, MvpnState * > StatesMap
 

Public Member Functions

 MvpnState (const SG &sg, StatesMap *states, MvpnProjectManager *pm)
 
virtual ~MvpnState ()
 
const SGsg () const
 
ErmVpnRouteglobal_ermvpn_tree_rt ()
 
const ErmVpnRouteglobal_ermvpn_tree_rt () const
 
MvpnRoutespmsi_rt ()
 
const MvpnRoutespmsi_rt () const
 
void set_global_ermvpn_tree_rt (ErmVpnRoute *global_ermvpn_tree_rt)
 
void set_spmsi_rt (MvpnRoute *spmsi_rt)
 
RoutesSetspmsi_routes_received ()
 
RoutesMapleafad_routes_attr_received ()
 
const RoutesSetspmsi_routes_received () const
 
const RoutesMapleafad_routes_attr_received () const
 
const StatesMapstates () const
 
StatesMapstates ()
 
MvpnRoutesource_active_rt ()
 
const MvpnRoutesource_active_rt () const
 
void set_source_active_rt (MvpnRoute *source_active_rt)
 
MvpnProjectManagerproject_manager ()
 
const MvpnProjectManagerproject_manager () const
 
int refcount () const
 

Private Member Functions

const ErmVpnTabletable () const
 
 DISALLOW_COPY_AND_ASSIGN (MvpnState)
 

Private Attributes

SG sg_
 
ErmVpnRouteglobal_ermvpn_tree_rt_
 
MvpnRoutespmsi_rt_
 
MvpnRoutesource_active_rt_
 
RoutesSet spmsi_routes_received_
 
RoutesMap leafad_routes_attr_received_
 
StatesMapstates_
 
MvpnProjectManagerproject_manager_
 
tbb::atomic< int > refcount_
 

Friends

class MvpnDBState
 
class MvpnManagerPartition
 
class MvpnProjectManagerPartition
 
void intrusive_ptr_add_ref (MvpnState *mvpn_state)
 
void intrusive_ptr_release (MvpnState *mvpn_state)
 

Detailed Description

Definition at line 261 of file bgp_mvpn.h.

Member Typedef Documentation

Definition at line 264 of file bgp_mvpn.h.

typedef std::set<MvpnRoute *> MvpnState::RoutesSet

Definition at line 263 of file bgp_mvpn.h.

typedef std::map<SG, MvpnState *> MvpnState::StatesMap

Definition at line 279 of file bgp_mvpn.h.

Constructor & Destructor Documentation

MvpnState::MvpnState ( const SG sg,
StatesMap states,
MvpnProjectManager pm 
)

Definition at line 34 of file bgp_mvpn.cc.

MvpnState::~MvpnState ( )
virtual

Definition at line 40 of file bgp_mvpn.cc.

Member Function Documentation

MvpnState::DISALLOW_COPY_AND_ASSIGN ( MvpnState  )
private
ErmVpnRoute * MvpnState::global_ermvpn_tree_rt ( )

Definition at line 294 of file bgp_mvpn.cc.

const ErmVpnRoute * MvpnState::global_ermvpn_tree_rt ( ) const

Definition at line 298 of file bgp_mvpn.cc.

MvpnState::RoutesMap & MvpnState::leafad_routes_attr_received ( )

Definition at line 318 of file bgp_mvpn.cc.

const MvpnState::RoutesMap & MvpnState::leafad_routes_attr_received ( ) const

Definition at line 322 of file bgp_mvpn.cc.

MvpnProjectManager* MvpnState::project_manager ( )
inline

Definition at line 299 of file bgp_mvpn.h.

const MvpnProjectManager* MvpnState::project_manager ( ) const
inline

Definition at line 300 of file bgp_mvpn.h.

int MvpnState::refcount ( ) const
inline

Definition at line 303 of file bgp_mvpn.h.

void MvpnState::set_global_ermvpn_tree_rt ( ErmVpnRoute global_ermvpn_tree_rt)

Definition at line 326 of file bgp_mvpn.cc.

Here is the call graph for this function:

void MvpnState::set_source_active_rt ( MvpnRoute source_active_rt)

Definition at line 342 of file bgp_mvpn.cc.

Here is the call graph for this function:

void MvpnState::set_spmsi_rt ( MvpnRoute spmsi_rt)

Definition at line 330 of file bgp_mvpn.cc.

Here is the call graph for this function:

const MvpnState::SG & MvpnState::sg ( ) const

Definition at line 290 of file bgp_mvpn.cc.

MvpnRoute * MvpnState::source_active_rt ( )

Definition at line 334 of file bgp_mvpn.cc.

const MvpnRoute * MvpnState::source_active_rt ( ) const

Definition at line 338 of file bgp_mvpn.cc.

MvpnState::RoutesSet & MvpnState::spmsi_routes_received ( )

Definition at line 310 of file bgp_mvpn.cc.

const MvpnState::RoutesSet & MvpnState::spmsi_routes_received ( ) const

Definition at line 314 of file bgp_mvpn.cc.

MvpnRoute * MvpnState::spmsi_rt ( )

Definition at line 302 of file bgp_mvpn.cc.

const MvpnRoute * MvpnState::spmsi_rt ( ) const

Definition at line 306 of file bgp_mvpn.cc.

const StatesMap* MvpnState::states ( ) const
inline

Definition at line 294 of file bgp_mvpn.h.

StatesMap* MvpnState::states ( )
inline

Definition at line 295 of file bgp_mvpn.h.

const ErmVpnTable * MvpnState::table ( ) const
private

Definition at line 49 of file bgp_mvpn.cc.

Here is the call graph for this function:

Friends And Related Function Documentation

void intrusive_ptr_add_ref ( MvpnState mvpn_state)
friend

Definition at line 462 of file bgp_mvpn.h.

void intrusive_ptr_release ( MvpnState mvpn_state)
friend

Definition at line 470 of file bgp_mvpn.h.

friend class MvpnDBState
friend

Definition at line 306 of file bgp_mvpn.h.

friend class MvpnManagerPartition
friend

Definition at line 307 of file bgp_mvpn.h.

friend class MvpnProjectManagerPartition
friend

Definition at line 308 of file bgp_mvpn.h.

Member Data Documentation

ErmVpnRoute* MvpnState::global_ermvpn_tree_rt_
private

Definition at line 315 of file bgp_mvpn.h.

RoutesMap MvpnState::leafad_routes_attr_received_
private

Definition at line 319 of file bgp_mvpn.h.

MvpnProjectManager* MvpnState::project_manager_
private

Definition at line 321 of file bgp_mvpn.h.

tbb::atomic<int> MvpnState::refcount_
private

Definition at line 322 of file bgp_mvpn.h.

SG MvpnState::sg_
private

Definition at line 314 of file bgp_mvpn.h.

MvpnRoute* MvpnState::source_active_rt_
private

Definition at line 317 of file bgp_mvpn.h.

RoutesSet MvpnState::spmsi_routes_received_
private

Definition at line 318 of file bgp_mvpn.h.

MvpnRoute* MvpnState::spmsi_rt_
private

Definition at line 316 of file bgp_mvpn.h.

StatesMap* MvpnState::states_
private

Definition at line 320 of file bgp_mvpn.h.


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