57 FXIMPLEMENT(
FXSingleEventThread, FXObject, FXSingleEventThreadMap, ARRAYNUMBER(FXSingleEventThreadMap))
62 : FXObject(), myClient(client) {
66 FXint res = pipe(event);
71 event = CreateEvent(NULL, FALSE, FALSE, NULL);
72 FXASSERT(event != NULL);
80 myApp->removeInput(event[
PIPE_READ], INPUT_READ);
81 ::close(event[PIPE_READ]);
85 myApp->removeInput(event, INPUT_READ);
95 FXint res = ::write(event[
PIPE_WRITE], &seltype,
sizeof(seltype));
107 FXint res = ::write(event[
PIPE_WRITE], &seltype,
sizeof(seltype));
119 FXint res = ::read(event[
PIPE_READ], &seltype,
sizeof(seltype));
125 handle(
this, sel, 0);
132 myClient->eventOccured();
149 long long us = ms * 1000;
FXInputHandle * FXThreadEventHandle
long onThreadEvent(FXObject *, FXSelector, void *)
#define UNUSED_PARAMETER(x)
ID for message passing between threads.
static void sleep(long ms)
FXDEFMAP(FXBaseObject) FXBaseObjectMap[]
virtual ~FXSingleEventThread()
long onThreadSignal(FXObject *, FXSelector, void *)