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

#include <bgp_origin_vn_path.h>

Collaboration diagram for OriginVnPath:

Public Types

typedef boost::array< uint8_t, 8 > OriginVnValue
 
typedef std::vector
< OriginVnValue
OriginVnList
 

Public Member Functions

 OriginVnPath (OriginVnPathDB *ovnpath_db)
 
 OriginVnPath (const OriginVnPath &rhs)
 
 OriginVnPath (OriginVnPathDB *ovnpath_db, const OriginVnPathSpec spec)
 
virtual ~OriginVnPath ()
 
virtual void Remove ()
 
bool Contains (const OriginVnValue &value) const
 
bool Contains (as_t asn, uint32_t vn_index) const
 
int CompareTo (const OriginVnPath &rhs) const
 
const OriginVnListorigin_vns () const
 

Private Member Functions

void Prepend (const OriginVnValue &value)
 

Private Attributes

tbb::atomic< int > refcount_
 
OriginVnPathDBovnpath_db_
 
OriginVnList origin_vns_
 

Friends

class OriginVnPathDB
 
class BgpAttrTest
 
std::size_t hash_value (const OriginVnPath &ovnpath)
 
int intrusive_ptr_add_ref (const OriginVnPath *covnpath)
 
int intrusive_ptr_del_ref (const OriginVnPath *covnpath)
 
void intrusive_ptr_release (const OriginVnPath *covnpath)
 

Detailed Description

Definition at line 37 of file bgp_origin_vn_path.h.

Member Typedef Documentation

Definition at line 40 of file bgp_origin_vn_path.h.

typedef boost::array<uint8_t, 8> OriginVnPath::OriginVnValue

Definition at line 39 of file bgp_origin_vn_path.h.

Constructor & Destructor Documentation

OriginVnPath::OriginVnPath ( OriginVnPathDB ovnpath_db)
inlineexplicit

Definition at line 42 of file bgp_origin_vn_path.h.

OriginVnPath::OriginVnPath ( const OriginVnPath rhs)
inlineexplicit

Definition at line 46 of file bgp_origin_vn_path.h.

OriginVnPath::OriginVnPath ( OriginVnPathDB ovnpath_db,
const OriginVnPathSpec  spec 
)
explicit

Definition at line 41 of file bgp_origin_vn_path.cc.

Here is the call graph for this function:

virtual OriginVnPath::~OriginVnPath ( )
inlinevirtual

Definition at line 53 of file bgp_origin_vn_path.h.

Member Function Documentation

int OriginVnPath::CompareTo ( const OriginVnPath rhs) const

Definition at line 89 of file bgp_origin_vn_path.cc.

bool OriginVnPath::Contains ( const OriginVnValue value) const

Definition at line 73 of file bgp_origin_vn_path.cc.

Here is the call graph for this function:

bool OriginVnPath::Contains ( as_t  asn,
uint32_t  vn_index 
) const

Definition at line 62 of file bgp_origin_vn_path.cc.

Here is the call graph for this function:

const OriginVnList& OriginVnPath::origin_vns ( ) const
inline

Definition at line 60 of file bgp_origin_vn_path.h.

void OriginVnPath::Prepend ( const OriginVnValue value)
private

Definition at line 57 of file bgp_origin_vn_path.cc.

void OriginVnPath::Remove ( )
virtual

Definition at line 53 of file bgp_origin_vn_path.cc.

Here is the call graph for this function:

Friends And Related Function Documentation

friend class BgpAttrTest
friend

Definition at line 76 of file bgp_origin_vn_path.h.

std::size_t hash_value ( const OriginVnPath ovnpath)
friend

Definition at line 62 of file bgp_origin_vn_path.h.

int intrusive_ptr_add_ref ( const OriginVnPath covnpath)
friend

Definition at line 85 of file bgp_origin_vn_path.h.

int intrusive_ptr_del_ref ( const OriginVnPath covnpath)
friend

Definition at line 89 of file bgp_origin_vn_path.h.

void intrusive_ptr_release ( const OriginVnPath covnpath)
friend

Definition at line 93 of file bgp_origin_vn_path.h.

friend class OriginVnPathDB
friend

Definition at line 75 of file bgp_origin_vn_path.h.

Member Data Documentation

OriginVnList OriginVnPath::origin_vns_
private

Definition at line 82 of file bgp_origin_vn_path.h.

OriginVnPathDB* OriginVnPath::ovnpath_db_
private

Definition at line 81 of file bgp_origin_vn_path.h.

tbb::atomic<int> OriginVnPath::refcount_
mutableprivate

Definition at line 80 of file bgp_origin_vn_path.h.


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