FD.io VPP  v18.07-34-g55fbdb9
Vector Packet Processing
VOM::route::ip_route Class Reference

A IP route. More...

+ Inheritance diagram for VOM::route::ip_route:
+ Collaboration diagram for VOM::route::ip_route:

Public Types

typedef std::pair< route::table_id_t, prefix_tkey_t
 The key for a route. More...
 

Public Member Functions

 ip_route (const prefix_t &prefix)
 Construct a route in the default table. More...
 
 ip_route (const prefix_t &prefix, const path &p)
 Construct a route with a path. More...
 
 ip_route (const ip_route &r)
 Copy Construct. More...
 
 ip_route (const route_domain &rd, const prefix_t &prefix)
 Construct a route in the given route domain. More...
 
 ip_route (const route_domain &rd, const prefix_t &prefix, const path &p)
 Construct a route in the given route domain with a path. More...
 
 ~ip_route ()
 Destructor. More...
 
const key_t key () const
 Get the route's key. More...
 
bool operator== (const ip_route &i) const
 Comparison operator. More...
 
std::shared_ptr< ip_routesingular () const
 Return the matching 'singular instance'. More...
 
void add (const path &path)
 Add a path. More...
 
void remove (const path &path)
 remove a path. More...
 
void replay (void)
 replay the object to create it in hardware More...
 
std::string to_string () const
 Convert to string for debugging. More...
 

Static Public Member Functions

static std::shared_ptr< ip_routefind (const ip_route &temp)
 Find the instnace of the route domain in the OM. More...
 
static void dump (std::ostream &os)
 Dump all route-doamin into the stream provided. More...
 
static std::shared_ptr< ip_routefind (const key_t &k)
 Return the matching 'singular instance'. More...
 

Friends

class VOM::OM
 
class singular_db< key_t, ip_route >
 It's the singular_db class that calls replay() More...
 

Additional Inherited Members

- Protected Member Functions inherited from VOM::object_base
 object_base ()=default
 Constructable by derived classes only. More...
 
virtual ~object_base ()=default
 Destructor. More...
 

Detailed Description

A IP route.

Definition at line 220 of file route.hpp.

Member Typedef Documentation

The key for a route.

Definition at line 226 of file route.hpp.

Constructor & Destructor Documentation

VOM::route::ip_route::ip_route ( const prefix_t prefix)

Construct a route in the default table.

Definition at line 241 of file route.cpp.

VOM::route::ip_route::ip_route ( const prefix_t prefix,
const path p 
)

Construct a route with a path.

Definition at line 233 of file route.cpp.

VOM::route::ip_route::ip_route ( const ip_route r)

Copy Construct.

Definition at line 249 of file route.cpp.

VOM::route::ip_route::ip_route ( const route_domain rd,
const prefix_t prefix 
)

Construct a route in the given route domain.

Definition at line 257 of file route.cpp.

VOM::route::ip_route::ip_route ( const route_domain rd,
const prefix_t prefix,
const path p 
)

Construct a route in the given route domain with a path.

Definition at line 265 of file route.cpp.

VOM::route::ip_route::~ip_route ( )

Destructor.

Definition at line 275 of file route.cpp.

+ Here is the call graph for this function:

Member Function Documentation

void VOM::route::ip_route::add ( const path path)

Add a path.

Definition at line 297 of file route.cpp.

+ Here is the caller graph for this function:

void VOM::route::ip_route::dump ( std::ostream &  os)
static

Dump all route-doamin into the stream provided.

Definition at line 368 of file route.cpp.

+ Here is the call graph for this function:

static std::shared_ptr<ip_route> VOM::route::ip_route::find ( const ip_route temp)
static

Find the instnace of the route domain in the OM.

std::shared_ptr< ip_route > VOM::route::ip_route::find ( const key_t k)
static

Return the matching 'singular instance'.

Definition at line 356 of file route.cpp.

const ip_route::key_t VOM::route::ip_route::key ( ) const

Get the route's key.

Definition at line 285 of file route.cpp.

+ Here is the caller graph for this function:

bool VOM::route::ip_route::operator== ( const ip_route i) const

Comparison operator.

Definition at line 291 of file route.cpp.

+ Here is the call graph for this function:

void VOM::route::ip_route::remove ( const path path)

remove a path.

Definition at line 303 of file route.cpp.

+ Here is the call graph for this function:

void VOM::route::ip_route::replay ( void  )
virtual

replay the object to create it in hardware

Implements VOM::object_base.

Definition at line 319 of file route.cpp.

+ Here is the call graph for this function:

std::shared_ptr< ip_route > VOM::route::ip_route::singular ( ) const

Return the matching 'singular instance'.

Definition at line 362 of file route.cpp.

std::string VOM::route::ip_route::to_string ( void  ) const
virtual

Convert to string for debugging.

Implements VOM::object_base.

Definition at line 327 of file route.cpp.

+ Here is the call graph for this function:

+ Here is the caller graph for this function:

Friends And Related Function Documentation

friend class singular_db< key_t, ip_route >
friend

It's the singular_db class that calls replay()

Definition at line 357 of file route.hpp.

friend class VOM::OM
friend

Definition at line 352 of file route.hpp.


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