8#include "Arp/Base/Core/delegate.hxx"
9#include "Arp/Base/Core/Exception.hpp"
12namespace Arp {
namespace Base {
namespace Core
30template<
class ...Args>
35 using event_handlers = std::vector<delegate_type>;
52 event_handlers eventHandlers;
76 using event_handlers = std::vector<delegate_type>;
93 event_handlers eventHandlers;
102#include "Arp/Base/Core/Detail/event.ipp"
This is the base class of all Arp exception classes.
Definition: Exception.hpp:21
Prototyping of delegate template.
Definition: delegate.hxx:14
event(void)
Constructs a event<void> instance.
Use this class to register and invoke several delegates (function pointer in OOP design).
Definition: event.hxx:32
event & operator+=(delegate_type &&rhs)
Adds a delegate to this event.
Definition: event.ipp:22
void operator()(Args... args) const
Fires this event instance.
Definition: event.ipp:80
bool is_empty(void) const
Checks if this event has any delegates to be invoked.
Definition: event.ipp:93
event & operator-=(const delegate_type &rhs)
Removes a delegate from this event.
Definition: event.ipp:62
event(void)
Constructs a event instance.
Root namespace for the PLCnext API