FD.io VPP  v20.09-64-g4f7b92f0a
Vector Packet Processing
VOM::gbp_subnet Class Reference

A GBP Enpoint (i.e. More...

+ Inheritance diagram for VOM::gbp_subnet:
+ Collaboration diagram for VOM::gbp_subnet:

Data Structures

struct  type_t
 

Public Types

typedef std::pair< gbp_route_domain::key_t, route::prefix_tkey_t
 The key for a GBP subnet; table and prefix. More...
 

Public Member Functions

 gbp_subnet (const gbp_route_domain &rd, const route::prefix_t &prefix, const type_t &type)
 Construct an internal GBP subnet. More...
 
 gbp_subnet (const gbp_route_domain &rd, const route::prefix_t &prefix, const gbp_recirc &recirc, const gbp_endpoint_group &epg)
 Construct an stitched external GBP subnet. More...
 
 gbp_subnet (const gbp_route_domain &rd, const route::prefix_t &prefix, sclass_t sclass, const type_t &type=type_t::L3_OUT)
 Construct an l3-out GBP subnet. More...
 
 gbp_subnet (const gbp_subnet &r)
 Copy Construct. More...
 
 ~gbp_subnet ()
 Destructor. More...
 
const key_t key () const
 Return the object's key. More...
 
bool operator== (const gbp_subnet &bdae) const
 comparison operator More...
 
std::shared_ptr< gbp_subnetsingular () 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...
 

Static Public Member Functions

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

Friends

class OM
 
class singular_db< key_t, gbp_subnet >
 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 GBP Enpoint (i.e.

a VM)

Definition at line 30 of file gbp_subnet.hpp.

Member Typedef Documentation

◆ key_t

The key for a GBP subnet; table and prefix.

Definition at line 36 of file gbp_subnet.hpp.

Constructor & Destructor Documentation

◆ gbp_subnet() [1/4]

VOM::gbp_subnet::gbp_subnet ( const gbp_route_domain rd,
const route::prefix_t prefix,
const type_t type 
)

Construct an internal GBP subnet.

Definition at line 42 of file gbp_subnet.cpp.

◆ gbp_subnet() [2/4]

VOM::gbp_subnet::gbp_subnet ( const gbp_route_domain rd,
const route::prefix_t prefix,
const gbp_recirc recirc,
const gbp_endpoint_group epg 
)

Construct an stitched external GBP subnet.

Definition at line 55 of file gbp_subnet.cpp.

◆ gbp_subnet() [3/4]

VOM::gbp_subnet::gbp_subnet ( const gbp_route_domain rd,
const route::prefix_t prefix,
sclass_t  sclass,
const type_t type = type_t::L3_OUT 
)

Construct an l3-out GBP subnet.

Definition at line 69 of file gbp_subnet.cpp.

◆ gbp_subnet() [4/4]

VOM::gbp_subnet::gbp_subnet ( const gbp_subnet r)

Copy Construct.

Definition at line 83 of file gbp_subnet.cpp.

◆ ~gbp_subnet()

VOM::gbp_subnet::~gbp_subnet ( )

Destructor.

Definition at line 94 of file gbp_subnet.cpp.

+ Here is the call graph for this function:

Member Function Documentation

◆ dump()

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

Dump all bridge_domain-doamin into the stream provided.

Definition at line 191 of file gbp_subnet.cpp.

+ Here is the call graph for this function:

◆ find()

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

Find the instnace of the bridge_domain domain in the OM.

Definition at line 179 of file gbp_subnet.cpp.

◆ key()

const gbp_subnet::key_t VOM::gbp_subnet::key ( ) const

Return the object's key.

Definition at line 101 of file gbp_subnet.cpp.

+ Here is the caller graph for this function:

◆ operator==()

bool VOM::gbp_subnet::operator== ( const gbp_subnet bdae) const

comparison operator

Definition at line 107 of file gbp_subnet.cpp.

+ Here is the call graph for this function:

◆ replay()

void VOM::gbp_subnet::replay ( void  )
virtual

replay the object to create it in hardware

Implements VOM::object_base.

Definition at line 124 of file gbp_subnet.cpp.

+ Here is the call graph for this function:

◆ singular()

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

Return the matching 'singular instance'.

Definition at line 185 of file gbp_subnet.cpp.

◆ to_string()

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

Convert to string for debugging.

Implements VOM::object_base.

Definition at line 135 of file gbp_subnet.cpp.

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

Friends And Related Function Documentation

◆ OM

friend class OM
friend

Definition at line 187 of file gbp_subnet.hpp.

◆ singular_db< key_t, gbp_subnet >

friend class singular_db< key_t, gbp_subnet >
friend

It's the singular_db class that calls replay()

Definition at line 192 of file gbp_subnet.hpp.


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