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.27 by root, Fri May 9 13:57:00 2008 UTC vs.
Revision 1.50 by root, Mon Apr 2 18:39:54 2012 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,2012 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
58#if EV_USE_EVENTFD || EV_GENWRAP 71#if EV_USE_EVENTFD || EV_GENWRAP
59VARx(int, evfd) 72VARx(int, evfd)
60#endif 73#endif
61VAR (evpipe, int evpipe [2]) 74VAR (evpipe, int evpipe [2])
62VARx(ev_io, pipeev) 75VARx(ev_io, pipe_w)
76VARx(EV_ATOMIC_T, pipe_write_wanted)
77VARx(EV_ATOMIC_T, pipe_write_skipped)
63 78
64#if !defined(_WIN32) || EV_GENWRAP 79#if !defined(_WIN32) || EV_GENWRAP
65VARx(pid_t, curpid) 80VARx(pid_t, curpid)
66#endif 81#endif
67 82
68VARx(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 */
69 84
70#if EV_USE_SELECT || EV_GENWRAP 85#if EV_USE_SELECT || EV_GENWRAP
71VARx(void *, vec_ri) 86VARx(void *, vec_ri)
72VARx(void *, vec_ro) 87VARx(void *, vec_ro)
73VARx(void *, vec_wi) 88VARx(void *, vec_wi)
74VARx(void *, vec_wo) 89VARx(void *, vec_wo)
90#if defined(_WIN32) || EV_GENWRAP
91VARx(void *, vec_eo)
92#endif
75VARx(int, vec_max) 93VARx(int, vec_max)
76#endif 94#endif
77 95
78#if EV_USE_POLL || EV_GENWRAP 96#if EV_USE_POLL || EV_GENWRAP
79VARx(struct pollfd *, polls) 97VARx(struct pollfd *, polls)
84#endif 102#endif
85 103
86#if EV_USE_EPOLL || EV_GENWRAP 104#if EV_USE_EPOLL || EV_GENWRAP
87VARx(struct epoll_event *, epoll_events) 105VARx(struct epoll_event *, epoll_events)
88VARx(int, epoll_eventmax) 106VARx(int, epoll_eventmax)
107VARx(int *, epoll_eperms)
108VARx(int, epoll_epermcnt)
109VARx(int, epoll_epermmax)
89#endif 110#endif
90 111
91#if EV_USE_KQUEUE || EV_GENWRAP 112#if EV_USE_KQUEUE || EV_GENWRAP
113VARx(pid_t, kqueue_fd_pid)
92VARx(struct kevent *, kqueue_changes) 114VARx(struct kevent *, kqueue_changes)
93VARx(int, kqueue_changemax) 115VARx(int, kqueue_changemax)
94VARx(int, kqueue_changecnt) 116VARx(int, kqueue_changecnt)
95VARx(struct kevent *, kqueue_events) 117VARx(struct kevent *, kqueue_events)
96VARx(int, kqueue_eventmax) 118VARx(int, kqueue_eventmax)
99#if EV_USE_PORT || EV_GENWRAP 121#if EV_USE_PORT || EV_GENWRAP
100VARx(struct port_event *, port_events) 122VARx(struct port_event *, port_events)
101VARx(int, port_eventmax) 123VARx(int, port_eventmax)
102#endif 124#endif
103 125
104VARx(ANFD *, anfds) 126#if EV_USE_IOCP || EV_GENWRAP
105VARx(int, anfdmax) 127VARx(HANDLE, iocp)
106 128#endif
107VAR (pendings, ANPENDING *pendings [NUMPRI])
108VAR (pendingmax, int pendingmax [NUMPRI])
109VAR (pendingcnt, int pendingcnt [NUMPRI])
110 129
111VARx(int *, fdchanges) 130VARx(int *, fdchanges)
112VARx(int, fdchangemax) 131VARx(int, fdchangemax)
113VARx(int, fdchangecnt) 132VARx(int, fdchangecnt)
114 133
141VARx(struct ev_fork **, forks) 160VARx(struct ev_fork **, forks)
142VARx(int, forkmax) 161VARx(int, forkmax)
143VARx(int, forkcnt) 162VARx(int, forkcnt)
144#endif 163#endif
145 164
146VARx(EV_ATOMIC_T, gotasync) 165#if EV_CLEANUP_ENABLE || EV_GENWRAP
166VARx(struct ev_cleanup **, cleanups)
167VARx(int, cleanupmax)
168VARx(int, cleanupcnt)
169#endif
170
147#if EV_ASYNC_ENABLE || EV_GENWRAP 171#if EV_ASYNC_ENABLE || EV_GENWRAP
172VARx(EV_ATOMIC_T, async_pending)
148VARx(struct ev_async **, asyncs) 173VARx(struct ev_async **, asyncs)
149VARx(int, asyncmax) 174VARx(int, asyncmax)
150VARx(int, asynccnt) 175VARx(int, asynccnt)
151#endif 176#endif
152 177
153#if EV_USE_INOTIFY || EV_GENWRAP 178#if EV_USE_INOTIFY || EV_GENWRAP
154VARx(int, fs_fd) 179VARx(int, fs_fd)
155VARx(ev_io, fs_w) 180VARx(ev_io, fs_w)
181VARx(char, fs_2625) /* whether we are running in linux 2.6.25 or newer */
156VAR (fs_hash, ANFS fs_hash [EV_INOTIFY_HASHSIZE]) 182VAR (fs_hash, ANFS fs_hash [EV_INOTIFY_HASHSIZE])
157#endif 183#endif
158 184
185VARx(EV_ATOMIC_T, sig_pending)
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
159#undef VARx 204#undef VARx
160 205

Diff Legend

Removed lines
+ Added lines
< Changed lines
> Changed lines