16 #ifndef __VOM_ROUTE_DOMAIN_H__ 17 #define __VOM_ROUTE_DOMAIN_H__ 25 #include <vapi/ip.api.vapi.hpp> 64 std::shared_ptr<route_domain>
singular()
const;
84 static std::shared_ptr<route_domain>
find(
const key_t& temp);
89 static void dump(std::ostream& os);
109 virtual ~event_handler() =
default;
119 void handle_replay();
124 void show(std::ostream& os);
135 static event_handler m_evh;
145 static std::shared_ptr<route_domain> find_or_add(
const route_domain& temp);
181 static
singular_db<route::table_id_t, route_domain> m_db;
uint32_t table_id_t
type def the table-id
static std::shared_ptr< route_domain > find(const key_t &temp)
Find the instnace of the route domain in the OM.
const std::string key_t
In the opflex world each entity is known by a URI which can be converted into a string.
A HW::item is data that is either to be written to or read from VPP/HW.
route::table_id_t table_id() const
Get the table ID.
static std::shared_ptr< route_domain > get_default()
Return the sigular instance for the default table.
void replay(void)
replay the object to create it in hardware
A Database to store the unique 'singular' instances of a single object type.
std::shared_ptr< route_domain > singular() const
Return the matching 'singular instance'.
Class definition for listeners to OM events.
inspect command handler Handler
dependency_t
There needs to be a strict order in which object types are read from VPP (at boot time) and replayed ...
The interface to writing objects into VPP OM.
A base class for all object_base in the VPP object_base-Model.
bool operator==(const route_domain &r) const
comparison operator - for UT
std::string to_string() const
Debug print function.
route_domain(route::table_id_t id)
Construct a new object matching the desried state.
key_t key() const
Get the route-domain's key.
The VPP Object Model (VOM) library.
~route_domain()
Destructor.
static void dump(std::ostream &os)
Dump all route-doamin into the stream provided.
route::table_id_t key_t
The Key for a route-domain.