FD.io VPP  v18.01-8-g0eacf49
Vector Packet Processing
VOM::interface::create_cmd< MSG > Class Template Reference

A base class for interface Create commands. More...

+ Inheritance diagram for VOM::interface::create_cmd< MSG >:
+ Collaboration diagram for VOM::interface::create_cmd< MSG >:

Public Member Functions

 create_cmd (HW::item< handle_t > &item, const std::string &name)
 
virtual ~create_cmd ()=default
 Destructor. More...
 
virtual bool operator== (const create_cmd &o) const
 Comparison operator - only used for UT. More...
 
void succeeded ()
 Indicate the succeeded, when the HW Q is disabled. More...
 
void insert_interface ()
 add the created interface to the DB More...
 
virtual vapi_error_e operator() (MSG &reply)
 call operator used as a callback by VAPI when the reply is available More...
 
- Public Member Functions inherited from VOM::rpc_cmd< HW::item< handle_t >, HW::item< handle_t >, MSG >
 rpc_cmd (HW::item< handle_t > &item)
 Constructor taking the HW item that will be updated by the command. More...
 
virtual ~rpc_cmd ()
 Desructor. More...
 
HW::item< handle_t > & item ()
 return the HW item the command updates More...
 
const HW::item< handle_t > & item () const
 return the const HW item the command updates More...
 
void fulfill (const HW::item< handle_t > &d)
 Fulfill the commands promise. More...
 
HW::item< handle_twait ()
 Wait on the commands promise. More...
 
virtual void retire (connection &con)
 Retire/cancel a long running command. More...
 
- Public Member Functions inherited from VOM::cmd
 cmd ()
 Default constructor. More...
 
virtual ~cmd ()
 Virtual destructor. More...
 
virtual rc_t issue (connection &con)=0
 Issue the command to VPP/HW. More...
 
virtual std::string to_string () const =0
 convert to string format for debug purposes More...
 

Protected Attributes

const std::string & m_name
 The name of the interface to be created. More...
 
- Protected Attributes inherited from VOM::rpc_cmd< HW::item< handle_t >, HW::item< handle_t >, MSG >
HW::item< handle_t > & m_hw_item
 A reference to an object's HW::item that the command will update. More...
 
std::promise< HW::item< handle_t > > m_promise
 The promise that implements the synchronous issue. More...
 

Additional Inherited Members

- Public Types inherited from VOM::rpc_cmd< HW::item< handle_t >, HW::item< handle_t >, MSG >
typedef MSG msg_t
 convenient typedef More...
 

Detailed Description

template<typename MSG>
class VOM::interface::create_cmd< MSG >

A base class for interface Create commands.

Definition at line 236 of file interface.hpp.

Constructor & Destructor Documentation

template<typename MSG>
VOM::interface::create_cmd< MSG >::create_cmd ( HW::item< handle_t > &  item,
const std::string &  name 
)
inline

Definition at line 239 of file interface.hpp.

template<typename MSG>
virtual VOM::interface::create_cmd< MSG >::~create_cmd ( )
virtualdefault

Destructor.

Member Function Documentation

template<typename MSG>
void VOM::interface::create_cmd< MSG >::insert_interface ( )
inline

add the created interface to the DB

Definition at line 270 of file interface.hpp.

template<typename MSG>
virtual vapi_error_e VOM::interface::create_cmd< MSG >::operator() ( MSG &  reply)
inlinevirtual

call operator used as a callback by VAPI when the reply is available

Reimplemented from VOM::rpc_cmd< HW::item< handle_t >, HW::item< handle_t >, MSG >.

Definition at line 272 of file interface.hpp.

template<typename MSG>
virtual bool VOM::interface::create_cmd< MSG >::operator== ( const create_cmd< MSG > &  o) const
inlinevirtual

Comparison operator - only used for UT.

Definition at line 253 of file interface.hpp.

template<typename MSG>
void VOM::interface::create_cmd< MSG >::succeeded ( )
inlinevirtual

Indicate the succeeded, when the HW Q is disabled.

Reimplemented from VOM::rpc_cmd< HW::item< handle_t >, HW::item< handle_t >, MSG >.

Definition at line 261 of file interface.hpp.

Field Documentation

template<typename MSG>
const std::string& VOM::interface::create_cmd< MSG >::m_name
protected

The name of the interface to be created.

Definition at line 297 of file interface.hpp.


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