class utils::EventHandler
Overview
Provides an interface for registering and processing events for inherited classes. More…
#include <EventHandler.h> class EventHandler { public: // structs struct Event; // methods virtual void PollEvents(); protected: // typedefs typedef std::string EventId; // methods virtual void ProcessEvent(] const Event* e); template <typename T = Event, typename... Args> void RegisterEvent(Args... args); };
Detailed Documentation
Provides an interface for registering and processing events for inherited classes.
Children of this class can register events at any time, but process them together when user requests to.
This class is thread safe and can be called from asynchronous processes.
Typedefs
typedef std::string EventId
Unique identifier of event.
Methods
virtual void PollEvents()
Request to process all registered events.
virtual void ProcessEvent(] const Event* e)
Process a single event during polling.
template <typename T = Event, typename... Args> void RegisterEvent(Args... args)
Adds new event to the event queue.