FD.io VPP  v21.01.1
Vector Packet Processing
VOM::route::path Class Reference

A path for IP or MPLS routes. More...

Data Structures

class  flags_t
 Path flags. More...
 
class  special_t
 Special path types. More...
 

Public Member Functions

 path (special_t special, const nh_proto_t &proto=nh_proto_t::IPV4)
 constructor for special paths More...
 
 path (const boost::asio::ip::address &nh, const interface &interface, uint8_t weight=1, uint8_t preference=0)
 Constructor for standard non-recursive paths. More...
 
 path (const route_domain &rd, const boost::asio::ip::address &nh, uint8_t weight=1, uint8_t preference=0)
 Constructor for standard recursive paths. More...
 
 path (const interface &interface, const nh_proto_t &proto, const flags_t &flags=flags_t::NONE, uint8_t weight=1, uint8_t preference=0)
 Constructor for DVR paths or attached paths. More...
 
 path (const path &p)
 Copy Constructor. More...
 
 ~path ()
 Destructor. More...
 
bool operator== (const path &p) const
 comparison operator More...
 
bool operator< (const path &p) const
 Less than operator for set insertion. More...
 
std::string to_string () const
 convert to string format for debug purposes More...
 
special_t type () const
 Getters. More...
 
nh_proto_t nh_proto () const
 
flags_t flags () const
 
const boost::asio::ip::addressnh () const
 
std::shared_ptr< route_domainrd () const
 
std::shared_ptr< interfaceitf () const
 
uint8_t weight () const
 
uint8_t preference () const
 

Detailed Description

A path for IP or MPLS routes.

Definition at line 32 of file route.hpp.

Constructor & Destructor Documentation

◆ path() [1/5]

VOM::route::path::path ( special_t  special,
const nh_proto_t proto = nh_proto_t::IPV4 
)

constructor for special paths

Definition at line 58 of file route.cpp.

+ Here is the caller graph for this function:

◆ path() [2/5]

VOM::route::path::path ( const boost::asio::ip::address nh,
const interface interface,
uint8_t  weight = 1,
uint8_t  preference = 0 
)

Constructor for standard non-recursive paths.

Definition at line 70 of file route.cpp.

◆ path() [3/5]

VOM::route::path::path ( const route_domain rd,
const boost::asio::ip::address nh,
uint8_t  weight = 1,
uint8_t  preference = 0 
)

Constructor for standard recursive paths.

Definition at line 85 of file route.cpp.

◆ path() [4/5]

VOM::route::path::path ( const interface interface,
const nh_proto_t proto,
const flags_t flags = flags_t::NONE,
uint8_t  weight = 1,
uint8_t  preference = 0 
)

Constructor for DVR paths or attached paths.

Definition at line 100 of file route.cpp.

◆ path() [5/5]

VOM::route::path::path ( const path p)

Copy Constructor.

Definition at line 116 of file route.cpp.

◆ ~path()

VOM::route::path::~path ( )

Destructor.

Definition at line 163 of file route.cpp.

Member Function Documentation

◆ flags()

path::flags_t VOM::route::path::flags ( ) const

Definition at line 220 of file route.cpp.

+ Here is the caller graph for this function:

◆ itf()

std::shared_ptr< interface > VOM::route::path::itf ( ) const

Definition at line 238 of file route.cpp.

+ Here is the caller graph for this function:

◆ nh()

const boost::asio::ip::address & VOM::route::path::nh ( ) const

Definition at line 226 of file route.cpp.

+ Here is the caller graph for this function:

◆ nh_proto()

nh_proto_t VOM::route::path::nh_proto ( ) const

Definition at line 214 of file route.cpp.

+ Here is the caller graph for this function:

◆ operator<()

bool VOM::route::path::operator< ( const path p) const

Less than operator for set insertion.

Definition at line 129 of file route.cpp.

◆ operator==()

bool VOM::route::path::operator== ( const path p) const

comparison operator

Definition at line 168 of file route.cpp.

◆ preference()

uint8_t VOM::route::path::preference ( ) const

Definition at line 250 of file route.cpp.

+ Here is the caller graph for this function:

◆ rd()

std::shared_ptr< route_domain > VOM::route::path::rd ( ) const

Definition at line 232 of file route.cpp.

+ Here is the caller graph for this function:

◆ to_string()

std::string VOM::route::path::to_string ( void  ) const

convert to string format for debug purposes

Definition at line 188 of file route.cpp.

+ Here is the call graph for this function:
+ Here is the caller graph for this function:

◆ type()

path::special_t VOM::route::path::type ( ) const

Getters.

Definition at line 208 of file route.cpp.

+ Here is the caller graph for this function:

◆ weight()

uint8_t VOM::route::path::weight ( ) const

Definition at line 244 of file route.cpp.

+ Here is the caller graph for this function:

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