58 FXIMPLEMENT(
FXSingleEventThread, FXObject, FXSingleEventThreadMap, ARRAYNUMBER(FXSingleEventThreadMap))
63 : FXObject(), myClient(client) {
67 FXint res = pipe(event);
72 event = CreateEvent(NULL, FALSE, FALSE, NULL);
73 FXASSERT(event != NULL);
81 myApp->removeInput(event[
PIPE_READ], INPUT_READ);
82 ::close(event[PIPE_READ]);
86 myApp->removeInput(event, INPUT_READ);
96 ::write(event[
PIPE_WRITE], &seltype,
sizeof(seltype));
107 ::write(event[
PIPE_WRITE], &seltype,
sizeof(seltype));
118 ::read(event[
PIPE_READ], &seltype,
sizeof(seltype));
123 handle(
this, sel, 0);
130 myClient->eventOccured();
147 long long us = ms * 1000;
FXInputHandle * FXThreadEventHandle
long onThreadEvent(FXObject *, FXSelector, void *)
#define UNUSED_PARAMETER(x)
static void sleep(long ms)
ID for message passing between threads.
FXDEFMAP(FXBaseObject) FXBaseObjectMap[]
virtual ~FXSingleEventThread()
long onThreadSignal(FXObject *, FXSelector, void *)