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

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

+ Inheritance diagram for VOM::nat_static:
+ Collaboration diagram for VOM::nat_static:

Public Types

typedef std::pair< route::table_id_t, boost::asio::ip::addresskey_t
 The key for a NAT static mapping. More...
 

Public Member Functions

 nat_static (const boost::asio::ip::address &inside, const boost::asio::ip::address &outside)
 Construct an NAT Static binding with the outside address in default table. More...
 
 nat_static (const route_domain &rd, const boost::asio::ip::address &inside, const boost::asio::ip::address &outside)
 Construct an NAT Static binding with the outside address in route-domain specified. More...
 
 nat_static (const nat_static &r)
 Copy Construct. More...
 
 ~nat_static ()
 Destructor. More...
 
bool operator== (const nat_static &n) const
 Comparison operator - for UT. More...
 
const key_t key () const
 Return the object's key. More...
 
std::shared_ptr< nat_staticsingular () 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< nat_staticfind (const key_t &key)
 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, nat_static >
 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 27 of file nat_static.hpp.

Member Typedef Documentation

◆ key_t

The key for a NAT static mapping.

So far only model the address only case. The address is the outside.

Definition at line 35 of file nat_static.hpp.

Constructor & Destructor Documentation

◆ nat_static() [1/3]

VOM::nat_static::nat_static ( const boost::asio::ip::address inside,
const boost::asio::ip::address outside 
)

Construct an NAT Static binding with the outside address in default table.

Definition at line 24 of file nat_static.cpp.

◆ nat_static() [2/3]

VOM::nat_static::nat_static ( const route_domain rd,
const boost::asio::ip::address inside,
const boost::asio::ip::address outside 
)

Construct an NAT Static binding with the outside address in route-domain specified.

Definition at line 33 of file nat_static.cpp.

◆ nat_static() [3/3]

VOM::nat_static::nat_static ( const nat_static r)

Copy Construct.

Definition at line 43 of file nat_static.cpp.

◆ ~nat_static()

VOM::nat_static::~nat_static ( )

Destructor.

Definition at line 51 of file nat_static.cpp.

+ Here is the call graph for this function:

Member Function Documentation

◆ dump()

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

Dump all bridge_domain-doamin into the stream provided.

Definition at line 147 of file nat_static.cpp.

+ Here is the call graph for this function:

◆ find()

std::shared_ptr< nat_static > VOM::nat_static::find ( const key_t key)
static

Find the instnace of the bridge_domain domain in the OM.

Definition at line 135 of file nat_static.cpp.

◆ key()

const nat_static::key_t VOM::nat_static::key ( ) const

Return the object's key.

Definition at line 60 of file nat_static.cpp.

+ Here is the caller graph for this function:

◆ operator==()

bool VOM::nat_static::operator== ( const nat_static n) const

Comparison operator - for UT.

Definition at line 66 of file nat_static.cpp.

+ Here is the call graph for this function:

◆ replay()

void VOM::nat_static::replay ( void  )
virtual

replay the object to create it in hardware

Implements VOM::object_base.

Definition at line 87 of file nat_static.cpp.

+ Here is the call graph for this function:

◆ singular()

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

Return the matching 'singular instance'.

Definition at line 141 of file nat_static.cpp.

◆ to_string()

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

Convert to string for debugging.

Implements VOM::object_base.

Definition at line 118 of file nat_static.cpp.

+ Here is the call graph for this function:

Friends And Related Function Documentation

◆ OM

friend class OM
friend

Definition at line 146 of file nat_static.hpp.

◆ singular_db< key_t, nat_static >

friend class singular_db< key_t, nat_static >
friend

It's the singular_db class that calls replay()

Definition at line 151 of file nat_static.hpp.


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