diff options
Diffstat (limited to 'extras/vom/vom/interface.cpp')
-rw-r--r-- | extras/vom/vom/interface.cpp | 19 |
1 files changed, 19 insertions, 0 deletions
diff --git a/extras/vom/vom/interface.cpp b/extras/vom/vom/interface.cpp index 371682333c7..c1894c2fbdf 100644 --- a/extras/vom/vom/interface.cpp +++ b/extras/vom/vom/interface.cpp @@ -39,6 +39,11 @@ std::map<handle_t, std::weak_ptr<interface>> interface::m_hdl_db; 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 */ interface::interface(const std::string& name, @@ -486,6 +491,20 @@ interface::dump(std::ostream& 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) { /* |