]> git.llucax.com Git - software/libev.git/blobdiff - ev_vars.h
fix some aliasing issues again
[software/libev.git] / ev_vars.h
index c93d23a0884d249bc51b120b6f717a242fbabab8..36e748524cc0c05927e3b70f6881e414dfe4243f 100644 (file)
--- a/ev_vars.h
+++ b/ev_vars.h
@@ -4,14 +4,19 @@ VARx(ev_tstamp, now_floor) /* last time we refreshed rt_time */
 VARx(ev_tstamp, mn_now)    /* monotonic clock "now" */
 VARx(ev_tstamp, rtmn_diff) /* difference realtime - monotonic time */
 VARx(int, backend)
+VARx(int, activecnt) /* total number of active events ("refcount") */
+VARx(unsigned int, loop_count); /* total number of loop iterations/blocks */
 
 VARx(ev_tstamp, backend_fudge) /* assumed typical timer resolution */
 VAR (backend_modify, void (*backend_modify)(EV_P_ int fd, int oev, int nev))
 VAR (backend_poll  , void (*backend_poll)(EV_P_ ev_tstamp timeout))
 VARx(int, backend_fd)
 
+#if !defined(_WIN32) || EV_GENWRAP
+VARx(pid_t, curpid)
+#endif
+
 VARx(int, postfork)  /* true if we need to recreate kernel state after fork */
-VARx(int, activecnt) /* total number of active events ("refcount") */
 
 #if EV_USE_SELECT || EV_GENWRAP
 VARx(void *, vec_ri)
@@ -58,19 +63,22 @@ VARx(int *, fdchanges)
 VARx(int, fdchangemax)
 VARx(int, fdchangecnt)
 
-VARx(struct ev_timer **, timers)
+VARx(WT *, timers)
 VARx(int, timermax)
 VARx(int, timercnt)
 
 #if EV_PERIODIC_ENABLE || EV_GENWRAP
-VARx(struct ev_periodic **, periodics)
+VARx(WT *, periodics)
 VARx(int, periodicmax)
 VARx(int, periodiccnt)
 #endif
 
-VARx(struct ev_idle **, idles)
-VARx(int, idlemax)
-VARx(int, idlecnt)
+#if EV_IDLE_ENABLE || EV_GENWRAP
+VAR (idles, ev_idle **idles [NUMPRI])
+VAR (idlemax, int idlemax [NUMPRI])
+VAR (idlecnt, int idlecnt [NUMPRI])
+#endif
+VARx(int, idleall) /* total number */
 
 VARx(struct ev_prepare **, prepares)
 VARx(int, preparemax)