X-Git-Url: http://git.indexdata.com/?a=blobdiff_plain;f=server%2Feventl.h;h=01ea810078c6ff4d09a409e2125c7e1a68a0b758;hb=aa82967af8f06004b567ad1ed40c67b056c44e7b;hp=d8b965c5ac2dad9b623a76c607d41da9475934bd;hpb=7e158942eb374e7211dd3dbd834e664c70a2d143;p=yaz-moved-to-github.git diff --git a/server/eventl.h b/server/eventl.h index d8b965c..01ea810 100644 --- a/server/eventl.h +++ b/server/eventl.h @@ -4,7 +4,17 @@ * Sebastian Hammer, Adam Dickmeiss * * $Log: eventl.h,v $ - * Revision 1.1 1995-03-10 18:22:45 quinn + * Revision 1.4 1995-03-27 08:34:23 quinn + * Added dynamic server functionality. + * Released bindings to session.c (is now redundant) + * + * Revision 1.3 1995/03/15 08:37:42 quinn + * Now we're pretty much set for nonblocking I/O. + * + * Revision 1.2 1995/03/14 10:28:00 quinn + * More work on demo server. + * + * Revision 1.1 1995/03/10 18:22:45 quinn * The rudiments of an asynchronous server. * */ @@ -24,6 +34,7 @@ typedef struct iochan #define EVENT_OUTPUT 0x02 #define EVENT_EXCEPT 0x04 #define EVENT_TIMEOUT 0x08 +int force_event; IOC_CALLBACK fun; void *data; int destroyed; @@ -37,7 +48,15 @@ typedef struct iochan #define iochan_setdata(i, d) ((i)->data = d) #define iochan_getflags(i) ((i)->flags) #define iochan_setflags(i, d) ((i)->flags = d) +#define iochan_setflag(i, d) ((i)->flags |= d) +#define iochan_getflag(i, d) ((i)->flags & d ? 1 : 0) #define iochan_getfun(i) ((i)->fun) #define iochan_setfun(i, d) ((i)->fun = d) +#define iochan_setevent(i, e) ((i)->force_event = (e)) +#define iochan_getnext(i) ((i)->next) + +IOCHAN iochan_getchan(void); +IOCHAN iochan_create(int fd, IOC_CALLBACK cb, int flags); +int event_loop(); #endif