Code Review
/
vpp.git
/ blobdiff
commit
grep
author
committer
pickaxe
?
search:
re
summary
|
shortlog
|
log
|
commit
|
commitdiff
|
review
|
tree
raw
|
inline
| side by side
VOM: interface event struct
[vpp.git]
/
extras
/
vom
/
vom
/
interface.cpp
diff --git
a/extras/vom/vom/interface.cpp
b/extras/vom/vom/interface.cpp
index
3716823
..
c1894c2
100644
(file)
--- a/
extras/vom/vom/interface.cpp
+++ b/
extras/vom/vom/interface.cpp
@@
-38,6
+38,11
@@
std::map<handle_t, std::weak_ptr<interface>> interface::m_hdl_db;
interface::event_handler interface::m_evh;
interface::event_handler interface::m_evh;
+/**
+ * the event enable command.
+ */
+std::shared_ptr<interface_cmds::events_cmd> interface::m_events_cmd;
+
/**
* Construct a new object matching the desried state
*/
/**
* Construct a new object matching the desried state
*/
@@
-485,6
+490,20
@@
interface::dump(std::ostream& os)
db_dump(m_db, os);
}
db_dump(m_db, os);
}
+void
+interface::enable_events(interface::event_listener& el)
+{
+ m_events_cmd = std::make_shared<interface_cmds::events_cmd>(el);
+ HW::enqueue(m_events_cmd);
+ HW::write();
+}
+
+void
+interface::disable_events()
+{
+ m_events_cmd.reset();
+}
+
void
interface::event_handler::handle_populate(const client_db::key_t& key)
{
void
interface::event_handler::handle_populate(const client_db::key_t& key)
{