FD.io VPP  v18.01.2-1-g9b554f3
Vector Packet Processing
VOM::l3_binding Class Reference

A representation of L3 configuration on an interface. More...

+ Inheritance diagram for VOM::l3_binding:
+ Collaboration diagram for VOM::l3_binding:

Public Types

typedef std::pair< interface::key_t, route::prefix_tkey_t
 The key type for l3_bindings. More...
 
typedef singular_db< key_t, l3_binding >::const_iterator const_iterator_t
 The iterator type. More...
 

Public Member Functions

 l3_binding (const interface &itf, const route::prefix_t &pfx)
 Construct a new object matching the desried state. More...
 
 l3_binding (const l3_binding &o)
 Copy Constructor. More...
 
 ~l3_binding ()
 Destructor. More...
 
bool operator== (const l3_binding &l) const
 Comparison operator. More...
 
const key_t key () const
 Get the object's key. More...
 
std::shared_ptr< l3_bindingsingular () const
 Return the 'singular instance' of the L3-Config that matches this object. More...
 
std::string to_string () const
 convert to string format for debug purposes More...
 
const route::prefix_tprefix () const
 Return the prefix associated with this L3 binding. More...
 
const interfaceitf () const
 Return the interface associated with this L3 binding. More...
 

Static Public Member Functions

static const_iterator_t cbegin ()
 
static const_iterator_t cend ()
 
static void dump (std::ostream &os)
 Dump all l3_bindings into the stream provided. More...
 
static std::deque< std::shared_ptr< l3_binding > > find (const interface &i)
 Find all bindings in the DB for the interface passed. More...
 
static std::shared_ptr< l3_bindingfind (const key_t &k)
 Find a binding from its key. More...
 

Friends

class OM
 
class singular_db< key_t, l3_binding >
 e* It's the singular_db class that calls replay() More...
 
class interface
 

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 representation of L3 configuration on an interface.

Definition at line 30 of file l3_binding.hpp.

Member Typedef Documentation

The iterator type.

Definition at line 66 of file l3_binding.hpp.

The key type for l3_bindings.

Definition at line 36 of file l3_binding.hpp.

Constructor & Destructor Documentation

VOM::l3_binding::l3_binding ( const interface itf,
const route::prefix_t pfx 
)

Construct a new object matching the desried state.

Definition at line 27 of file l3_binding.cpp.

VOM::l3_binding::l3_binding ( const l3_binding o)

Copy Constructor.

Definition at line 34 of file l3_binding.cpp.

VOM::l3_binding::~l3_binding ( )

Destructor.

Definition at line 41 of file l3_binding.cpp.

+ Here is the call graph for this function:

Member Function Documentation

l3_binding::const_iterator_t VOM::l3_binding::cbegin ( )
static

Definition at line 93 of file l3_binding.cpp.

+ Here is the caller graph for this function:

l3_binding::const_iterator_t VOM::l3_binding::cend ( )
static

Definition at line 99 of file l3_binding.cpp.

+ Here is the caller graph for this function:

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

Dump all l3_bindings into the stream provided.

Definition at line 147 of file l3_binding.cpp.

std::deque< std::shared_ptr< l3_binding > > VOM::l3_binding::find ( const interface i)
static

Find all bindings in the DB for the interface passed.

Definition at line 161 of file l3_binding.cpp.

+ Here is the call graph for this function:

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

Find a binding from its key.

Definition at line 135 of file l3_binding.cpp.

const interface & VOM::l3_binding::itf ( ) const

Return the interface associated with this L3 binding.

Definition at line 87 of file l3_binding.cpp.

const l3_binding::key_t VOM::l3_binding::key ( ) const

Get the object's key.

Definition at line 56 of file l3_binding.cpp.

+ Here is the call graph for this function:

+ Here is the caller graph for this function:

bool VOM::l3_binding::operator== ( const l3_binding l) const

Comparison operator.

Definition at line 50 of file l3_binding.cpp.

const route::prefix_t & VOM::l3_binding::prefix ( ) const

Return the prefix associated with this L3 binding.

Definition at line 81 of file l3_binding.cpp.

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

Return the 'singular instance' of the L3-Config that matches this object.

Definition at line 141 of file l3_binding.cpp.

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

convert to string format for debug purposes

Implements VOM::object_base.

Definition at line 105 of file l3_binding.cpp.

+ Here is the call graph for this function:

Friends And Related Function Documentation

friend class interface
friend

Definition at line 173 of file l3_binding.hpp.

friend class OM
friend

Definition at line 156 of file l3_binding.hpp.

friend class singular_db< key_t, l3_binding >
friend

e* It's the singular_db class that calls replay()

Definition at line 161 of file l3_binding.hpp.


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