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

A entry in the ARP termination table of a Route Domain. More...

+ Inheritance diagram for VOM::gbp_route_domain:
+ Collaboration diagram for VOM::gbp_route_domain:

Public Types

typedef route_domain::key_t key_t
 The key for a route_domain is the pair of EPG-IDs. More...
 

Public Member Functions

 gbp_route_domain (const route_domain &rd, scope_t scope)
 Construct a GBP route_domain. More...
 
 gbp_route_domain (const route_domain &rd, scope_t scope, const interface &ip4_uu_fwd, const interface &ip6_uu_fwd)
 
 gbp_route_domain (const route_domain &rd, scope_t scope, const std::shared_ptr< interface > ip4_uu_fwd, const std::shared_ptr< interface > ip6_uu_fwd)
 
 gbp_route_domain (const gbp_route_domain &r)
 Copy Construct. More...
 
 ~gbp_route_domain ()
 Destructor. More...
 
const key_t key () const
 Return the object's key. More...
 
route::table_id_t id () const
 Return the route domain's VPP ID. More...
 
bool operator== (const gbp_route_domain &rdae) const
 comparison operator More...
 
std::shared_ptr< gbp_route_domainsingular () const
 Return the matching 'singular instance'. More...
 
void replay (void)
 replay the object to create it in hardware More...
 
std::string to_string () const
 Convert to string for debugging. More...
 
const std::shared_ptr< route_domainget_route_domain () const
 Accessors for children. More...
 
const std::shared_ptr< interfaceget_ip4_uu_fwd () const
 
const std::shared_ptr< interfaceget_ip6_uu_fwd () const
 

Static Public Member Functions

static std::shared_ptr< gbp_route_domainfind (const key_t &k)
 Find the instnace of the route_domain domain in the OM. More...
 
static void dump (std::ostream &os)
 Dump all route_domain-doamin into the stream provided. More...
 

Friends

class OM
 
class singular_db< key_t, gbp_route_domain >
 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 entry in the ARP termination table of a Route Domain.

Definition at line 30 of file gbp_route_domain.hpp.

Member Typedef Documentation

◆ key_t

The key for a route_domain is the pair of EPG-IDs.

Definition at line 36 of file gbp_route_domain.hpp.

Constructor & Destructor Documentation

◆ gbp_route_domain() [1/4]

VOM::gbp_route_domain::gbp_route_domain ( const route_domain rd,
scope_t  scope 
)

Construct a GBP route_domain.

Definition at line 71 of file gbp_route_domain.cpp.

◆ gbp_route_domain() [2/4]

VOM::gbp_route_domain::gbp_route_domain ( const route_domain rd,
scope_t  scope,
const interface ip4_uu_fwd,
const interface ip6_uu_fwd 
)

Definition at line 43 of file gbp_route_domain.cpp.

◆ gbp_route_domain() [3/4]

VOM::gbp_route_domain::gbp_route_domain ( const route_domain rd,
scope_t  scope,
const std::shared_ptr< interface ip4_uu_fwd,
const std::shared_ptr< interface ip6_uu_fwd 
)

Definition at line 55 of file gbp_route_domain.cpp.

◆ gbp_route_domain() [4/4]

VOM::gbp_route_domain::gbp_route_domain ( const gbp_route_domain r)

Copy Construct.

Construct a new object matching the desried state.

Definition at line 34 of file gbp_route_domain.cpp.

◆ ~gbp_route_domain()

VOM::gbp_route_domain::~gbp_route_domain ( )

Destructor.

Definition at line 154 of file gbp_route_domain.cpp.

+ Here is the call graph for this function:

Member Function Documentation

◆ dump()

void VOM::gbp_route_domain::dump ( std::ostream &  os)
static

Dump all route_domain-doamin into the stream provided.

Definition at line 210 of file gbp_route_domain.cpp.

+ Here is the call graph for this function:

◆ find()

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

Find the instnace of the route_domain domain in the OM.

Definition at line 179 of file gbp_route_domain.cpp.

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

◆ get_ip4_uu_fwd()

const std::shared_ptr< interface > VOM::gbp_route_domain::get_ip4_uu_fwd ( ) const

Definition at line 99 of file gbp_route_domain.cpp.

◆ get_ip6_uu_fwd()

const std::shared_ptr< interface > VOM::gbp_route_domain::get_ip6_uu_fwd ( ) const

Definition at line 105 of file gbp_route_domain.cpp.

◆ get_route_domain()

const std::shared_ptr< route_domain > VOM::gbp_route_domain::get_route_domain ( ) const

Accessors for children.

Definition at line 93 of file gbp_route_domain.cpp.

◆ id()

route::table_id_t VOM::gbp_route_domain::id ( ) const

Return the route domain's VPP ID.

Definition at line 87 of file gbp_route_domain.cpp.

◆ key()

const gbp_route_domain::key_t VOM::gbp_route_domain::key ( ) const

Return the object's key.

Definition at line 81 of file gbp_route_domain.cpp.

+ Here is the caller graph for this function:

◆ operator==()

bool VOM::gbp_route_domain::operator== ( const gbp_route_domain rdae) const

comparison operator

Definition at line 111 of file gbp_route_domain.cpp.

+ Here is the call graph for this function:

◆ replay()

void VOM::gbp_route_domain::replay ( void  )
virtual

replay the object to create it in hardware

Implements VOM::object_base.

Definition at line 142 of file gbp_route_domain.cpp.

+ Here is the call graph for this function:

◆ singular()

std::shared_ptr< gbp_route_domain > VOM::gbp_route_domain::singular ( ) const

Return the matching 'singular instance'.

Definition at line 204 of file gbp_route_domain.cpp.

◆ to_string()

std::string VOM::gbp_route_domain::to_string ( void  ) const
virtual

Convert to string for debugging.

Implements VOM::object_base.

Definition at line 163 of file gbp_route_domain.cpp.

+ Here is the caller graph for this function:

Friends And Related Function Documentation

◆ OM

friend class OM
friend

Definition at line 159 of file gbp_route_domain.hpp.

◆ singular_db< key_t, gbp_route_domain >

friend class singular_db< key_t, gbp_route_domain >
friend

It's the singular_db class that calls replay()

Definition at line 164 of file gbp_route_domain.hpp.


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