1#ifndef XF_COMMON_DISPATCHER_H
2#define XF_COMMON_DISPATCHER_H
4#include <config/xf-config.h>
6#if (USE_XF_COMMON_DISPATCHER_CLASS != 0)
8#include "xf/interface/dispatcher.h"
9#include "xf/interface/mutex.h"
47 int execute(
const void * param =
nullptr)
override;
Dispatcher used in an IDF (no underlying OS).
Definition: dispatcher.h:36
XFEventQueue events_
Queue holding events waiting to get dispatched.
Definition: dispatcher.h:54
void executeOnce() override
Executes once the dispatcher.
interface::XFMutex * pMutex_
Mutex to protect event queue.
Definition: dispatcher.h:55
void pushEvent(XFEvent *pEvent) override
Adds event to the events queue.
void unscheduleTimeout(int timeoutId, interface::XFBehavior *pBehavior) override
Removes all timeouts corresponding the given parameters.
void scheduleTimeout(int timeoutId, int interval, interface::XFBehavior *pBehavior) override
Adds a new timeout to be handled.
void dispatchEvent(const XFEvent *pEvent) const override
Dispatches the event to the corresponding behavioral part.
int execute(const void *param=nullptr) override
Main loop of the dispatcher. Implements event loop processing.
Base class for all types of events and timeouts.
Definition: event.h:23
Default Qt implementation for the XFEventQueue interface.
Definition: eventqueue.h:22
Interface to receive and process events.
Definition: behavior.h:24
Interface for the XF dispatcher providing the event processing loop.
Definition: dispatcher.h:29
Mutex interface needed by the XF to access a mutex.
Definition: mutex.h:18