queue.h - quark - quark web server
 (HTM) git clone git://git.suckless.org/quark
 (DIR) Log
 (DIR) Files
 (DIR) Refs
 (DIR) LICENSE
       ---
       queue.h (678B)
       ---
            1 #ifndef QUEUE_H
            2 #define QUEUE_H
            3 
            4 #include <stddef.h>
            5 
            6 #ifdef __linux__
            7         #include <sys/epoll.h>
            8 
            9         typedef struct epoll_event queue_event;
           10 #else
           11         #include <sys/types.h>
           12         #include <sys/event.h>
           13         #include <sys/time.h>
           14 
           15         typedef struct kevent queue_event;
           16 #endif
           17 
           18 enum queue_event_type {
           19         QUEUE_EVENT_IN,
           20         QUEUE_EVENT_OUT,
           21 };
           22 
           23 int queue_create(void);
           24 int queue_add_fd(int, int, enum queue_event_type, int, const void *);
           25 int queue_mod_fd(int, int, enum queue_event_type, const void *);
           26 int queue_rem_fd(int, int);
           27 ssize_t queue_wait(int, queue_event *, size_t);
           28 
           29 void *queue_event_get_data(const queue_event *);
           30 
           31 int queue_event_is_error(const queue_event *e);
           32 
           33 #endif /* QUEUE_H */