#define VARx(type,name) VAR(name, type name) VARx(ev_tstamp, now_floor); /* last time we refreshed rt_time */ VARx(ev_tstamp, mn_now); /* monotonic clock "now" */ VARx(ev_tstamp, rt_now); VARx(ev_tstamp, diff); /* difference realtime - monotonic time */ VARx(int, method); VARx(int, have_monotonic); /* runtime */ VARx(ev_tstamp, method_fudge); /* assumed typical timer resolution */ VAR (method_modify, void (*method_modify)(EV_P_ int fd, int oev, int nev)); VAR (method_poll , void (*method_poll)(EV_P_ ev_tstamp timeout)); VARx(int, activecnt); /* number of active events */ #if EV_USE_SELECT VARx(unsigned char *, vec_ri); VARx(unsigned char *, vec_ro); VARx(unsigned char *, vec_wi); VARx(unsigned char *, vec_wo); VARx(int, vec_max); #endif #if EV_USEV_POLL VARx(struct pollfd *, polls); VARx(int, pollmax); VARx(int, pollcnt); VARx(int *, pollidxs); /* maps fds into structure indices */ VARx(int, pollidxmax); #endif #if EV_USE_EPOLL VARx(int, epoll_fd); VARx(struct epoll_event *, events); VARx(int, eventmax); #endif #if EV_USE_KQUEUE VARx(int, kqueue_fd); VARx(struct kevent *, kqueue_changes); VARx(int, kqueue_changemax); VARx(int, kqueue_changecnt); VARx(struct kevent *, kqueue_events); VARx(int, kqueue_eventmax); #endif VARx(ANFD *, anfds); VARx(int, anfdmax); VAR (pendings, ANPENDING *pendings [NUMPRI]); VAR (pendingmax, int pendingmax [NUMPRI]); VAR (pendingcnt, int pendingcnt [NUMPRI]); VARx(int *, fdchanges); VARx(int, fdchangemax); VARx(int, fdchangecnt); VARx(struct ev_timer **, timers); VARx(int, timermax); VARx(int, timercnt); VARx(struct ev_periodic **, periodics); VARx(int, periodicmax); VARx(int, periodiccnt); VARx(struct ev_idle **, idles); VARx(int, idlemax); VARx(int, idlecnt); VARx(struct ev_prepare **, prepares); VARx(int, preparemax); VARx(int, preparecnt); VARx(struct ev_check **, checks); VARx(int, checkmax); VARx(int, checkcnt); VAR (childs, struct ev_child *childs [PID_HASHSIZE]); VARx(struct ev_signal, childev); VARx(struct ev_io, sigev); #undef VARx