41using miosix::FastMutex;
50static constexpr unsigned int EVENT_BROKER_MIN_DELAY = 50;
144 void deleteSubscriber(vector<EventHandlerBase*>& subVector,
147 vector<DelayedEvent> delayedEvents;
148 FastMutex mtxDelayedEvents;
150 map<uint8_t, vector<EventHandlerBase*>> subscribers;
151 FastMutex mtxSubscribers;
153 uint16_t eventCounter = 0;
void post(const Event &ev, uint8_t topic, EventHandlerBase *subscriber=nullptr)
uint16_t postDelayed(const Event &ev, uint8_t topic, unsigned int delayMs)
void subscribe(EventHandlerBase *subscriber, uint8_t topic)
void removeDelayed(uint16_t id)
void unsubscribe(EventHandlerBase *subscriber, uint8_t topic)
Unsubscribe an EventHandler from a specific topic This function should be used only for testing purpo...
EventBroker()
Construct a new Event Broker object.
void clearDelayedEvents()
Unschedules all pending events. This function should be used only for testing purposes.
static PrintLogger getLogger(const string &name)
This file includes all the types the logdecoder script will decode.