FairMQ  1.4.33
C++ Message Queuing Library and Framework
Public Types | Public Member Functions | List of all members
fair::mq::EventManager Class Reference

Manages event callbacks from different subscribers. More...

#include <fairmq/EventManager.h>

Public Types

template<typename E , typename ... Args>
using Signal = boost::signals2::signal< void(typename E::KeyType, Args...)>
 

Public Member Functions

template<typename E , typename ... Args>
auto Subscribe (const std::string &subscriber, std::function< void(typename E::KeyType, Args...)> callback) -> void
 
template<typename E , typename ... Args>
auto Unsubscribe (const std::string &subscriber) -> void
 
template<typename E , typename ... Args>
auto Emit (typename E::KeyType key, Args... args) const -> void
 

Detailed Description

Manages event callbacks from different subscribers.

The event manager stores a set of callbacks and associates them with events depending on the callback signature. The first callback argument must be of a special key type determined by the event type.

Callbacks can be subscribed/unsubscribed based on a subscriber id, the event type, and the callback signature.

Events can be emitted based on event type and callback signature.

The event manager is thread-safe.


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

privacy