84 #ifndef UTIL_WINSOCK_EVENT_H 85 #define UTIL_WINSOCK_EVENT_H 89 #ifndef HAVE_EVENT_BASE_FREE 90 #define HAVE_EVENT_BASE_FREE 95 #define event_init winsockevent_init 96 #define event_get_version winsockevent_get_version 97 #define event_get_method winsockevent_get_method 98 #define event_base_dispatch winsockevent_base_dispatch 99 #define event_base_loopexit winsockevent_base_loopexit 100 #define event_base_free winsockevent_base_free 101 #define event_set winsockevent_set 102 #define event_base_set winsockevent_base_set 103 #define event_add winsockevent_add 104 #define event_del winsockevent_del 105 #define signal_add winsocksignal_add 106 #define signal_del winsocksignal_del 109 #define EV_TIMEOUT 0x01 113 #define EV_WRITE 0x04 115 #define EV_SIGNAL 0x08 117 #define EV_PERSIST 0x10 127 #define WSK_MAX_ITEMS 64 137 struct event** items;
143 struct event** signals;
149 struct timeval* time_tv;
162 int tcp_reinvigorated;
164 WSAEVENT waitfor[WSK_MAX_ITEMS];
177 struct event_base *ev_base;
183 struct timeval ev_timeout;
186 void (*ev_callback)(int, short,
void *);
212 void *event_init(time_t* time_secs,
struct timeval* time_tv);
214 const char *event_get_version(
void);
216 const char *event_get_method(
void);
218 int event_base_dispatch(
struct event_base *);
220 int event_base_loopexit(
struct event_base *,
struct timeval *);
222 void event_base_free(
struct event_base *);
224 void event_set(
struct event *,
int,
short,
void (*)(
int,
short,
void *),
void *);
227 int event_base_set(
struct event_base *,
struct event *);
229 int event_add(
struct event *,
struct timeval *);
231 int event_del(
struct event *);
233 #define evtimer_add(ev, tv) event_add(ev, tv) 234 #define evtimer_del(ev) event_del(ev) 239 int signal_add(
struct event *,
struct timeval *);
241 #define signal_set(ev, x, cb, arg) \ 242 event_set(ev, x, EV_SIGNAL|EV_PERSIST, cb, arg) 244 int signal_del(
struct event *);
255 void winsock_tcp_wouldblock(
struct event* ev,
int eventbit);
269 int winsock_register_wsaevent(
struct event_base* base,
struct event* ev,
270 WSAEVENT wsaevent,
void (*cb)(
int,
short,
void*),
void* arg);
276 void winsock_unregister_wsaevent(
struct event* ev);
const GenericPointer< typename T::ValueType > T2 T::AllocatorType & a
int mini_ev_cmp(const void *a, const void *b)