50template <
class T_topic,
class T_msg,
class T_data>
53template <
class T_topic,
class T_msg,
class T_data>
56template <
class T_topic,
class T_msg,
class T_data>
74template <
class T_topic,
class T_msg,
class T_data>
94 unsigned int getId() {
return mId; }
Defines the interface for components that can connect to an EventBus.
Definition ClearQueue.h:38
Definition DataChannels.h:43
EventBus(unsigned int id)
Constructs an EventBus with a unique identifier.
Definition EventBus.h:83
virtual void execute(short _) override
Processes all queued events.
Definition EventBus.cpp:91
bool registerEntity(EventEntity< T_topic, T_msg, T_data > *entity)
Registers an entity (emitter or listener) with this EventBus.
Definition EventBus.cpp:44
void unregisterKit(IEventBusConnectionKit< T_topic, T_msg, T_data > &connection)
Unregisters a connection kit from this EventBus.
Definition EventBus.cpp:39
void registerKit(IEventBusConnectionKit< T_topic, T_msg, T_data > &connection)
Registers a connection kit with this EventBus.
Definition EventBus.cpp:34
unsigned int getId()
Gets the unique identifier of this EventBus.
Definition EventBus.h:94
void unregisterEntity(EventEntity< T_topic, T_msg, T_data > *entity)
Unregisters an entity from this EventBus.
Definition EventBus.cpp:53
bool closeDataChannel(T_topic topic)
Closes a previously opened data channel.
Definition EventBus.cpp:66
virtual ~EventBus()
Destroys the EventBus and cleans up registered entities.
Definition EventBus.cpp:29
T_data receiveDataFromChannel(T_topic topic)
Receives data from a specific data channel.
Definition EventBus.cpp:76
bool sendDataToChannel(T_topic topic, T_data data)
Sends data to a specific data channel.
Definition EventBus.cpp:71
void emitEvent(T_topic topic, T_msg msg)
Emits an event to all registered listeners.
Definition EventBus.cpp:86
bool isDataChannelEmpty(T_topic topic)
Checks if a data channel is empty.
Definition EventBus.cpp:81
bool openDataChannel(T_topic topic, size_t limit)
Opens a data channel for a specific topic with a size limit.
Definition EventBus.cpp:61
Definition EventEmitter.h:41
Entity that can connect to and interact with EventBus instances.
Definition EventEntity.h:55
Definition EventListener.h:42
Definition IEventBusConnectionKit.h:52
Interface for executing tasks in the scheduler system.
Definition IExecutor.h:31
EventBus< unsigned int, int, Bytes > CoreEventBus
Standard EventBus configuration used throughout the core system.
Definition EventBus.h:211
Contains all classes and functions related to the Uniot Core.