Bluenet  5.7.0
Bluenet, firmware for nRF52 smart home devices
Loading...
Searching...
No Matches
EventDispatcher Class Reference

Event dispatcher. More...

#include <cs_EventDispatcher.h>

Collaboration diagram for EventDispatcher:

Public Member Functions

 EventDispatcher (EventDispatcher const &)=delete
 
void operator= (EventDispatcher const &)=delete
 
bool addListener (EventListener *listener)
 Add a listener. More...
 
void removeListener (EventListener *listener)
 Nulls all elements in _listeners equal to listener. More...
 
void dispatch (event_t &event)
 Dispatch an event to all registered (non-null) listeners. More...
 

Static Public Member Functions

static EventDispatchergetInstance ()
 

Private Member Functions

 EventDispatcher ()
 

Private Attributes

EventListener_listeners [MAX_EVENT_LISTENERS] = {}
 Array of listeners. More...
 
uint16_t _listenerCount
 Count of added listeners. More...
 

Detailed Description

Event dispatcher.

Constructor & Destructor Documentation

◆ EventDispatcher() [1/2]

◆ EventDispatcher() [2/2]

Member Function Documentation

◆ addListener()

bool EventDispatcher::addListener ( EventListener listener)

Add a listener.

◆ dispatch()

void EventDispatcher::dispatch ( event_t event)

Dispatch an event to all registered (non-null) listeners.

◆ getInstance()

static EventDispatcher & EventDispatcher::getInstance ( )
inlinestatic

◆ operator=()

void EventDispatcher::operator= ( EventDispatcher const &  )
delete

◆ removeListener()

void EventDispatcher::removeListener ( EventListener listener)

Nulls all elements in _listeners equal to listener.

Member Data Documentation

◆ _listenerCount

uint16_t EventDispatcher::_listenerCount
private

Count of added listeners.

◆ _listeners

EventListener* EventDispatcher::_listeners[MAX_EVENT_LISTENERS] = {}
private

Array of listeners.


The documentation for this class was generated from the following file: