29 std::string key = NavAddr::BusToString(msg->bus) +
"::" + msg->GetKey();
32 CallAfter([msg] { obs::Observable(*msg).Notify(msg); });
34 obs::Observable(*msg).Notify(msg);
38 std::lock_guard lock(m_mutex);
39 auto rv = m_active_messages.insert(key);
Common interface for all drivers.
The raw message layer, a singleton.
obs::EventVar new_msg_event
Notified without data when new message type(s) are detected.
bool RegisterKey(const std::string &key)
Register a message type in list the GetActiveMessages() list.
void Notify(std::shared_ptr< const NavMsg > message)
Accept message received by driver, make it available for upper layers.
Raw messages layer, supports sending and recieving navmsg messages.