26 #ifndef _COMMDRIVERREGISTRY_H__
27 #define _COMMDRIVERREGISTRY_H__
29 #include "model/comm_driver.h"
30 #include "observable_evtvar.h"
32 typedef std::shared_ptr<AbstractCommDriver> DriverPtr;
78 std::vector<DriverPtr> drivers;
85 const DriverPtr FindDriver(
const std::vector<DriverPtr>& drivers,
86 const std::string& iface,
87 const NavAddr::Bus _bus = NavAddr::Bus::Undef);
The global driver registry, a singleton.
EventVar evt_driver_msg
Notified for messages from drivers.
void Activate(DriverPtr driver)
Add driver to list of active drivers.
EventVar evt_driverlist_change
Notified by all driverlist updates.
void Deactivate(DriverPtr driver)
Remove driver from list of active drivers.
void CloseAllDrivers()
Close and destroy all drivers completely.
EventVar evt_dump_stats
Notified when receiving –remote –dump_stat on local API.
const std::vector< DriverPtr > & GetDrivers()
EventVar evt_comm_overrun
Notified with a printable message on first detected overrun.
Generic event handling between MVC Model and Controller based on a shared EventVar variable.