qb  2.0.0.0
C++17 Actor Framework
qb Issue Watch Star Fork Follow @isndev
Loading...
Searching...
No Matches
qb::router::sesh< _RawEvent, _Handler > Class Template Reference

Single-Event Single-Handler router. More...

#include <router.h>

Inheritance diagram for qb::router::sesh< _RawEvent, _Handler >:
Collaboration diagram for qb::router::sesh< _RawEvent, _Handler >:

Public Member Functions

 sesh (_Handler &handler) noexcept
 Constructs a SESH router with the given handler.
template<bool _CleanEvent = true>
void route (_RawEvent &event)
 Routes an event to the handler.

Additional Inherited Members

Protected Member Functions inherited from qb::router::internal::EventPolicy
template<typename _Handler, typename _Event>
void invoke (_Handler &handler, _Event &event) const
 Invoke a handler with an event.
template<typename _Event>
void dispose (_Event &event) const noexcept
 Dispose of an event if necessary.

Detailed Description

template<typename _RawEvent, typename _Handler>
class qb::router::sesh< _RawEvent, _Handler >

Single-Event Single-Handler router.

Routes a specific event type to a single handler.

Template Parameters
_RawEventThe event type
_HandlerThe handler type

Constructor & Destructor Documentation

◆ sesh()

template<typename _RawEvent, typename _Handler>
qb::router::sesh< _RawEvent, _Handler >::sesh ( _Handler & handler)
inlineexplicitnoexcept

Constructs a SESH router with the given handler.

Parameters
handlerThe handler that will receive events

Member Function Documentation

◆ route()

template<typename _RawEvent, typename _Handler>
template<bool _CleanEvent = true>
void qb::router::sesh< _RawEvent, _Handler >::route ( _RawEvent & event)
inline

Routes an event to the handler.

Template Parameters
_CleanEventWhether to clean up the event after routing
Parameters
eventThe event to route