1#ifndef XF_INTERFACE_DISPATCHER_H
2#define XF_INTERFACE_DISPATCHER_H
31 friend class ::DispatcherThread;
62 virtual int execute(
const void * param =
nullptr) = 0;
The DispatcherThread calls the XFDispatcher execute() method in a separate thread.
Definition: xf.cpp:61
Base class for state machines, activities, process and data flows.
Definition: behavior.h:29
Base class for all types of events and timeouts.
Definition: event.h:23
Static class grouping the basic methods for the XF together.
Definition: xf.h:73
Interface to receive and process events.
Definition: behavior.h:24
Interface for the XF dispatcher providing the event processing loop.
Definition: dispatcher.h:29
virtual void unscheduleTimeout(int timeoutId, interface::XFBehavior *pBehavior)=0
Removes all timeouts corresponding the given parameters.
static XFDispatcher * getInstance()
Returns a pointer to the single instance of XFDispatcher.
Definition: dispatcher.cpp:22
virtual int execute(const void *param=nullptr)=0
Main loop of the dispatcher. Implements event loop processing.
virtual void dispatchEvent(const XFEvent *pEvent) const =0
Dispatches the event to the corresponding behavioral part.
virtual void pushEvent(XFEvent *pEvent)=0
Adds event to the events queue.
virtual void executeOnce()=0
Executes once the dispatcher.
virtual void scheduleTimeout(int timeoutId, int interval, interface::XFBehavior *pBehavior)=0
Adds a new timeout to be handled.