OpenSDN source code
AsPath Class Reference

#include <bgp_aspath.h>

Collaboration diagram for AsPath:

Public Member Functions

 AsPath (AsPathDB *aspath_db)
 
 AsPath (AsPathDB *aspath_db, const AsPathSpec &spec)
 
virtual ~AsPath ()
 
virtual void Remove ()
 
int AsCount () const
 
int CompareTo (const AsPath &rhs) const
 
const AsPathSpecpath () const
 
bool empty () const
 
as2_t neighbor_as () const
 

Private Attributes

tbb::atomic< int > refcount_
 
AsPathDBaspath_db_
 
AsPathSpec path_
 

Friends

std::size_t hash_value (const AsPath &as_path)
 
int intrusive_ptr_add_ref (const AsPath *cpath)
 
int intrusive_ptr_del_ref (const AsPath *cpath)
 
void intrusive_ptr_release (const AsPath *cpath)
 

Detailed Description

Definition at line 82 of file bgp_aspath.h.

Constructor & Destructor Documentation

◆ AsPath() [1/2]

AsPath::AsPath ( AsPathDB aspath_db)
inlineexplicit

Definition at line 84 of file bgp_aspath.h.

◆ AsPath() [2/2]

AsPath::AsPath ( AsPathDB aspath_db,
const AsPathSpec spec 
)
inlineexplicit

Definition at line 87 of file bgp_aspath.h.

◆ ~AsPath()

virtual AsPath::~AsPath ( )
inlinevirtual

Definition at line 97 of file bgp_aspath.h.

Member Function Documentation

◆ AsCount()

int AsPath::AsCount ( ) const
inline

Definition at line 99 of file bgp_aspath.h.

◆ CompareTo()

int AsPath::CompareTo ( const AsPath rhs) const
inline

Definition at line 113 of file bgp_aspath.h.

◆ empty()

bool AsPath::empty ( ) const
inline

Definition at line 128 of file bgp_aspath.h.

◆ neighbor_as()

as2_t AsPath::neighbor_as ( ) const
inline

Definition at line 129 of file bgp_aspath.h.

Here is the call graph for this function:

◆ path()

const AsPathSpec& AsPath::path ( ) const
inline

Definition at line 127 of file bgp_aspath.h.

◆ Remove()

void AsPath::Remove ( )
virtual

Definition at line 273 of file bgp_aspath.cc.

Here is the call graph for this function:

Friends And Related Function Documentation

◆ hash_value

std::size_t hash_value ( const AsPath as_path)
friend

Definition at line 131 of file bgp_aspath.h.

◆ intrusive_ptr_add_ref

int intrusive_ptr_add_ref ( const AsPath cpath)
friend

Definition at line 147 of file bgp_aspath.h.

◆ intrusive_ptr_del_ref

int intrusive_ptr_del_ref ( const AsPath cpath)
friend

Definition at line 151 of file bgp_aspath.h.

◆ intrusive_ptr_release

void intrusive_ptr_release ( const AsPath cpath)
friend

Definition at line 155 of file bgp_aspath.h.

Member Data Documentation

◆ aspath_db_

AsPathDB* AsPath::aspath_db_
private

Definition at line 143 of file bgp_aspath.h.

◆ path_

AsPathSpec AsPath::path_
private

Definition at line 144 of file bgp_aspath.h.

◆ refcount_

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

Definition at line 142 of file bgp_aspath.h.


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