aboutsummaryrefslogtreecommitdiff
path: root/jim-eventloop.h
diff options
context:
space:
mode:
authoroharboe <oharboe>2008-07-08 16:51:44 +0000
committeroharboe <oharboe>2008-07-08 16:51:44 +0000
commit9468e354b07293fb3b924b40136f1c273044c690 (patch)
treebc31f67b6146168a0b904e0dd492626b544fe2ed /jim-eventloop.h
parenta305962f04110d6ff252bf6ff531eeba342138ba (diff)
downloadjimtcl-9468e354b07293fb3b924b40136f1c273044c690.zip
jimtcl-9468e354b07293fb3b924b40136f1c273044c690.tar.gz
jimtcl-9468e354b07293fb3b924b40136f1c273044c690.tar.bz2
* changes to jim-eventloop.[ch]
* fix negative displacement in timeout computation for select * add basic support for the fileevent stuff [ used from jim-aio ] * add basic support for signal handling / actions * add basic support for timer [via after] restart, cancel and returning the remaining time for cancled events
Diffstat (limited to 'jim-eventloop.h')
-rw-r--r--jim-eventloop.h14
1 files changed, 8 insertions, 6 deletions
diff --git a/jim-eventloop.h b/jim-eventloop.h
index 80cf113..caf89d7 100644
--- a/jim-eventloop.h
+++ b/jim-eventloop.h
@@ -31,6 +31,7 @@
#define __JIM_EVENTLOOP_H__
typedef int Jim_FileProc(Jim_Interp *interp, void *clientData, int mask);
+typedef int Jim_SignalProc(Jim_Interp *interp, void *clientData, void *msg);
typedef void Jim_TimeProc(Jim_Interp *interp, void *clientData);
typedef void Jim_EventFinalizerProc(Jim_Interp *interp, void *clientData);
@@ -38,6 +39,7 @@ typedef void Jim_EventFinalizerProc(Jim_Interp *interp, void *clientData);
#define JIM_EVENT_READABLE 1
#define JIM_EVENT_WRITABLE 2
#define JIM_EVENT_EXCEPTION 4
+#define JIM_EVENT_FEOF 8
#ifndef __JIM_EVENTLOOP_CORE__
# if defined JIM_EXTENSION || defined JIM_EMBEDDED
@@ -62,7 +64,7 @@ JIM_STATIC jim_wide JIM_API(Jim_CreateTimeHandler) (Jim_Interp *interp,
jim_wide milliseconds,
Jim_TimeProc *proc, void *clientData,
Jim_EventFinalizerProc *finalizerProc);
-JIM_STATIC int JIM_API(Jim_DeleteTimeHandler) (Jim_Interp *interp, jim_wide id);
+JIM_STATIC jim_wide JIM_API(Jim_DeleteTimeHandler) (Jim_Interp *interp, jim_wide id);
JIM_STATIC int JIM_API(Jim_ProcessEvents) (Jim_Interp *interp, int flags);
#undef JIM_STATIC
@@ -77,11 +79,11 @@ JIM_STATIC int JIM_API(Jim_ProcessEvents) (Jim_Interp *interp, int flags);
/* This must be included "inline" inside the extension */
static void Jim_ImportEventloopAPI(Jim_Interp *interp)
{
- JIM_GET_API(Jim_CreateFileHandler);
- JIM_GET_API(Jim_DeleteFileHandler);
- JIM_GET_API(Jim_CreateTimeHandler);
- JIM_GET_API(Jim_DeleteTimeHandler);
- JIM_GET_API(Jim_ProcessEvents);
+ JIM_GET_API(CreateFileHandler);
+ JIM_GET_API(DeleteFileHandler);
+ JIM_GET_API(CreateTimeHandler);
+ JIM_GET_API(DeleteTimeHandler);
+ JIM_GET_API(ProcessEvents);
}
#endif /* defined JIM_EXTENSION || defined JIM_EMBEDDED */
#undef JIM_GET_API