sdi_toolBox::desktop::eventBus Namespace Reference

Lightweight thread-safe event bus for decoupled message passing. More...

## Classes

class | Bus
| Central message dispatcher for the event bus system. More...
class | INode
| Abstract interface representing a subscriber node in the event bus system. More...
class | Message
| Base class for all messages dispatched through the event bus. More...
class | Node
| Concrete subscriber node in the event bus system. More...

## Typedefs

using | MessageTypeID = uint64_t
| Unique identifier for a message type.
using | TimePoint = std::chrono::steady_clock::time_point
| Monotonic timestamp type used throughout the event bus.

## Detailed Description

Lightweight thread-safe event bus for decoupled message passing.

The eventBus namespace provides a publish/subscribe messaging system that allows decoupled communication between components. It is built around three core concepts:

- Bus : the central dispatcher that maintains a routing table and delivers messages to the appropriate subscribers.
- Node : a subscriber attached to a Bus that can send and receive messages through its internal FIFO queue.
- Message : the base class for all messages circulating in the bus, identified by a unique MessageTypeID.

Nodes can subscribe to specific message types or to broadcast mode. All operations are thread-safe.

See also
  Bus
  Node
  Message

## Typedef Documentation

## MessageTypeID

using MessageTypeID = uint64_t

Unique identifier for a message type.

Definition at line 21 of file defs.h.

## TimePoint

using TimePoint = std::chrono::steady_clock::time_point

Monotonic timestamp type used throughout the event bus.

Definition at line 22 of file defs.h.