ViewVC Help
View File | Revision Log | Show Annotations | Download File
/cvs/libev/ev_vars.h
(Generate patch)

Comparing libev/ev_vars.h (file contents):
Revision 1.25 by root, Tue Feb 5 23:56:33 2008 UTC vs.
Revision 1.48 by root, Mon Jun 13 09:52:36 2011 UTC

1/* 1/*
2 * loop member variable declarations 2 * loop member variable declarations
3 * 3 *
4 * Copyright (c) 2007,2008 Marc Alexander Lehmann <libev@schmorp.de> 4 * Copyright (c) 2007,2008,2009,2010,2011 Marc Alexander Lehmann <libev@schmorp.de>
5 * All rights reserved. 5 * All rights reserved.
6 * 6 *
7 * Redistribution and use in source and binary forms, with or without modifica- 7 * Redistribution and use in source and binary forms, with or without modifica-
8 * tion, are permitted provided that the following conditions are met: 8 * tion, are permitted provided that the following conditions are met:
9 * 9 *
10 * 1. Redistributions of source code must retain the above copyright notice, 10 * 1. Redistributions of source code must retain the above copyright notice,
11 * this list of conditions and the following disclaimer. 11 * this list of conditions and the following disclaimer.
12 * 12 *
13 * 2. Redistributions in binary form must reproduce the above copyright 13 * 2. Redistributions in binary form must reproduce the above copyright
14 * notice, this list of conditions and the following disclaimer in the 14 * notice, this list of conditions and the following disclaimer in the
15 * documentation and/or other materials provided with the distribution. 15 * documentation and/or other materials provided with the distribution.
16 * 16 *
17 * THIS SOFTWARE IS PROVIDED BY THE AUTHOR ``AS IS'' AND ANY EXPRESS OR IMPLIED 17 * THIS SOFTWARE IS PROVIDED BY THE AUTHOR ``AS IS'' AND ANY EXPRESS OR IMPLIED
18 * WARRANTIES, INCLUDING, BUT NOT LIMITED TO, THE IMPLIED WARRANTIES OF MER- 18 * WARRANTIES, INCLUDING, BUT NOT LIMITED TO, THE IMPLIED WARRANTIES OF MER-
19 * CHANTABILITY AND FITNESS FOR A PARTICULAR PURPOSE ARE DISCLAIMED. IN NO 19 * CHANTABILITY AND FITNESS FOR A PARTICULAR PURPOSE ARE DISCLAIMED. IN NO
20 * EVENT SHALL THE AUTHOR BE LIABLE FOR ANY DIRECT, INDIRECT, INCIDENTAL, SPE- 20 * EVENT SHALL THE AUTHOR BE LIABLE FOR ANY DIRECT, INDIRECT, INCIDENTAL, SPE-
21 * CIAL, EXEMPLARY, OR CONSEQUENTIAL DAMAGES (INCLUDING, BUT NOT LIMITED TO, 21 * CIAL, EXEMPLARY, OR CONSEQUENTIAL DAMAGES (INCLUDING, BUT NOT LIMITED TO,
46VARx(ev_tstamp, io_blocktime) 46VARx(ev_tstamp, io_blocktime)
47VARx(ev_tstamp, timeout_blocktime) 47VARx(ev_tstamp, timeout_blocktime)
48 48
49VARx(int, backend) 49VARx(int, backend)
50VARx(int, activecnt) /* total number of active events ("refcount") */ 50VARx(int, activecnt) /* total number of active events ("refcount") */
51VARx(unsigned int, loop_count) /* total number of loop iterations/blocks */ 51VARx(EV_ATOMIC_T, loop_done) /* signal by ev_break */
52 52
53VARx(int, backend_fd) 53VARx(int, backend_fd)
54VARx(ev_tstamp, backend_fudge) /* assumed typical timer resolution */ 54VARx(ev_tstamp, backend_mintime) /* assumed typical timer resolution */
55VAR (backend_modify, void (*backend_modify)(EV_P_ int fd, int oev, int nev)) 55VAR (backend_modify, void (*backend_modify)(EV_P_ int fd, int oev, int nev))
56VAR (backend_poll , void (*backend_poll)(EV_P_ ev_tstamp timeout)) 56VAR (backend_poll , void (*backend_poll)(EV_P_ ev_tstamp timeout))
57 57
58VARx(ANFD *, anfds)
59VARx(int, anfdmax)
60
61VAR (pendings, ANPENDING *pendings [NUMPRI])
62VAR (pendingmax, int pendingmax [NUMPRI])
63VAR (pendingcnt, int pendingcnt [NUMPRI])
64VARx(ev_prepare, pending_w) /* dummy pending watcher */
65
66/* for reverse feeding of events */
67VARx(W *, rfeeds)
68VARx(int, rfeedmax)
69VARx(int, rfeedcnt)
70
71#if EV_USE_EVENTFD || EV_GENWRAP
72VARx(int, evfd)
73#endif
58VAR (evpipe, int evpipe [2]) 74VAR (evpipe, int evpipe [2])
59VARx(ev_io, pipeev) 75VARx(ev_io, pipe_w)
76VARx(EV_ATOMIC_T, pipe_write_wanted)
77VARx(EV_ATOMIC_T, pipe_write_skipped)
60 78
61#if !defined(_WIN32) || EV_GENWRAP 79#if !defined(_WIN32) || EV_GENWRAP
62VARx(pid_t, curpid) 80VARx(pid_t, curpid)
63#endif 81#endif
64 82
65VARx(int, postfork) /* true if we need to recreate kernel state after fork */ 83VARx(char, postfork) /* true if we need to recreate kernel state after fork */
66 84
67#if EV_USE_SELECT || EV_GENWRAP 85#if EV_USE_SELECT || EV_GENWRAP
68VARx(void *, vec_ri) 86VARx(void *, vec_ri)
69VARx(void *, vec_ro) 87VARx(void *, vec_ro)
70VARx(void *, vec_wi) 88VARx(void *, vec_wi)
71VARx(void *, vec_wo) 89VARx(void *, vec_wo)
90#if defined(_WIN32) || EV_GENWRAP
91VARx(void *, vec_eo)
92#endif
72VARx(int, vec_max) 93VARx(int, vec_max)
73#endif 94#endif
74 95
75#if EV_USE_POLL || EV_GENWRAP 96#if EV_USE_POLL || EV_GENWRAP
76VARx(struct pollfd *, polls) 97VARx(struct pollfd *, polls)
81#endif 102#endif
82 103
83#if EV_USE_EPOLL || EV_GENWRAP 104#if EV_USE_EPOLL || EV_GENWRAP
84VARx(struct epoll_event *, epoll_events) 105VARx(struct epoll_event *, epoll_events)
85VARx(int, epoll_eventmax) 106VARx(int, epoll_eventmax)
107VARx(int *, epoll_eperms)
108VARx(int, epoll_epermcnt)
109VARx(int, epoll_epermmax)
86#endif 110#endif
87 111
88#if EV_USE_KQUEUE || EV_GENWRAP 112#if EV_USE_KQUEUE || EV_GENWRAP
89VARx(struct kevent *, kqueue_changes) 113VARx(struct kevent *, kqueue_changes)
90VARx(int, kqueue_changemax) 114VARx(int, kqueue_changemax)
96#if EV_USE_PORT || EV_GENWRAP 120#if EV_USE_PORT || EV_GENWRAP
97VARx(struct port_event *, port_events) 121VARx(struct port_event *, port_events)
98VARx(int, port_eventmax) 122VARx(int, port_eventmax)
99#endif 123#endif
100 124
101VARx(ANFD *, anfds) 125#if EV_USE_IOCP || EV_GENWRAP
102VARx(int, anfdmax) 126VARx(HANDLE, iocp)
103 127#endif
104VAR (pendings, ANPENDING *pendings [NUMPRI])
105VAR (pendingmax, int pendingmax [NUMPRI])
106VAR (pendingcnt, int pendingcnt [NUMPRI])
107 128
108VARx(int *, fdchanges) 129VARx(int *, fdchanges)
109VARx(int, fdchangemax) 130VARx(int, fdchangemax)
110VARx(int, fdchangecnt) 131VARx(int, fdchangecnt)
111 132
112VARx(WT *, timers) 133VARx(ANHE *, timers)
113VARx(int, timermax) 134VARx(int, timermax)
114VARx(int, timercnt) 135VARx(int, timercnt)
115 136
116#if EV_PERIODIC_ENABLE || EV_GENWRAP 137#if EV_PERIODIC_ENABLE || EV_GENWRAP
117VARx(WT *, periodics) 138VARx(ANHE *, periodics)
118VARx(int, periodicmax) 139VARx(int, periodicmax)
119VARx(int, periodiccnt) 140VARx(int, periodiccnt)
120#endif 141#endif
121 142
122#if EV_IDLE_ENABLE || EV_GENWRAP 143#if EV_IDLE_ENABLE || EV_GENWRAP
138VARx(struct ev_fork **, forks) 159VARx(struct ev_fork **, forks)
139VARx(int, forkmax) 160VARx(int, forkmax)
140VARx(int, forkcnt) 161VARx(int, forkcnt)
141#endif 162#endif
142 163
143VARx(EV_ATOMIC_T, gotasync) 164#if EV_CLEANUP_ENABLE || EV_GENWRAP
165VARx(struct ev_cleanup **, cleanups)
166VARx(int, cleanupmax)
167VARx(int, cleanupcnt)
168#endif
169
144#if EV_ASYNC_ENABLE || EV_GENWRAP 170#if EV_ASYNC_ENABLE || EV_GENWRAP
171VARx(EV_ATOMIC_T, async_pending)
145VARx(struct ev_async **, asyncs) 172VARx(struct ev_async **, asyncs)
146VARx(int, asyncmax) 173VARx(int, asyncmax)
147VARx(int, asynccnt) 174VARx(int, asynccnt)
148#endif 175#endif
149 176
150#if EV_USE_INOTIFY || EV_GENWRAP 177#if EV_USE_INOTIFY || EV_GENWRAP
151VARx(int, fs_fd) 178VARx(int, fs_fd)
152VARx(ev_io, fs_w) 179VARx(ev_io, fs_w)
180VARx(char, fs_2625) /* whether we are running in linux 2.6.25 or newer */
153VAR (fs_hash, ANFS fs_hash [EV_INOTIFY_HASHSIZE]) 181VAR (fs_hash, ANFS fs_hash [EV_INOTIFY_HASHSIZE])
154#endif 182#endif
155 183
184VARx(EV_ATOMIC_T, sig_pending)
185VARx(int, nosigmask)
186#if EV_USE_SIGNALFD || EV_GENWRAP
187VARx(int, sigfd)
188VARx(ev_io, sigfd_w)
189VARx(sigset_t, sigfd_set)
190#endif
191
192VARx(unsigned int, origflags) /* original loop flags */
193
194#if EV_FEATURE_API || EV_GENWRAP
195VARx(unsigned int, loop_count) /* total number of loop iterations/blocks */
196VARx(unsigned int, loop_depth) /* #ev_run enters - #ev_run leaves */
197
198VARx(void *, userdata)
199VAR (release_cb, void (*release_cb)(EV_P))
200VAR (acquire_cb, void (*acquire_cb)(EV_P))
201VAR (invoke_cb , void (*invoke_cb) (EV_P))
202#endif
203
156#undef VARx 204#undef VARx
157 205

Diff Legend

Removed lines
+ Added lines
< Changed lines
> Changed lines