FD.io VPP  v19.04.2-12-g66b1689
Vector Packet Processing
VOM::gbp_contract Class Reference

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

+ Inheritance diagram for VOM::gbp_contract:
+ Collaboration diagram for VOM::gbp_contract:

Public Types

typedef std::set< gbp_rulegbp_rules_t
 set of gbp rules More...
 
typedef std::pair< sclass_t, sclass_tkey_t
 The key for a contract is the pair of EPG-IDs. More...
 
typedef std::set< ethertype_tethertype_set_t
 A set of allowed ethertypes. More...
 

Public Member Functions

 gbp_contract (sclass_t sclass, sclass_t dclass, const ACL::l3_list &acl, const gbp_rules_t &gpb_rules, const ethertype_set_t &allowed_ethertypes)
 Construct a GBP contract. More...
 
 gbp_contract (const gbp_contract &r)
 Copy Construct. More...
 
 ~gbp_contract ()
 Destructor. More...
 
const key_t key () const
 Return the object's key. More...
 
bool operator== (const gbp_contract &bdae) const
 comparison operator More...
 
std::shared_ptr< gbp_contractsingular () 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_contractfind (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_contract >
 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 Bridge Domain.

Definition at line 31 of file gbp_contract.hpp.

Member Typedef Documentation

A set of allowed ethertypes.

Definition at line 47 of file gbp_contract.hpp.

set of gbp rules

Definition at line 37 of file gbp_contract.hpp.

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

Definition at line 42 of file gbp_contract.hpp.

Constructor & Destructor Documentation

VOM::gbp_contract::gbp_contract ( sclass_t  sclass,
sclass_t  dclass,
const ACL::l3_list acl,
const gbp_rules_t gpb_rules,
const ethertype_set_t allowed_ethertypes 
)

Construct a GBP contract.

Definition at line 27 of file gbp_contract.cpp.

VOM::gbp_contract::gbp_contract ( const gbp_contract r)

Copy Construct.

Definition at line 41 of file gbp_contract.cpp.

VOM::gbp_contract::~gbp_contract ( )

Destructor.

Definition at line 51 of file gbp_contract.cpp.

+ Here is the call graph for this function:

Member Function Documentation

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

Dump all bridge_domain-doamin into the stream provided.

Definition at line 143 of file gbp_contract.cpp.

+ Here is the call graph for this function:

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

Find the instnace of the bridge_domain domain in the OM.

Definition at line 131 of file gbp_contract.cpp.

const gbp_contract::key_t VOM::gbp_contract::key ( ) const

Return the object's key.

Definition at line 60 of file gbp_contract.cpp.

+ Here is the caller graph for this function:

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

comparison operator

Definition at line 66 of file gbp_contract.cpp.

+ Here is the call graph for this function:

void VOM::gbp_contract::replay ( void  )
virtual

replay the object to create it in hardware

Implements VOM::object_base.

Definition at line 81 of file gbp_contract.cpp.

+ Here is the call graph for this function:

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

Return the matching 'singular instance'.

Definition at line 137 of file gbp_contract.cpp.

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

Convert to string for debugging.

Implements VOM::object_base.

Definition at line 91 of file gbp_contract.cpp.

+ Here is the call graph for this function:

+ Here is the caller graph for this function:

Friends And Related Function Documentation

friend class OM
friend

Definition at line 152 of file gbp_contract.hpp.

friend class singular_db< key_t, gbp_contract >
friend

It's the singular_db class that calls replay()

Definition at line 157 of file gbp_contract.hpp.


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