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

Comparing libev/event.h (file contents):
Revision 1.8 by root, Sun Nov 4 16:52:52 2007 UTC vs.
Revision 1.15 by root, Fri Nov 9 19:14:37 2007 UTC

26 * DATA, OR PROFITS; OR BUSINESS INTERRUPTION) HOWEVER CAUSED AND ON ANY 26 * DATA, OR PROFITS; OR BUSINESS INTERRUPTION) HOWEVER CAUSED AND ON ANY
27 * THEORY OF LIABILITY, WHETHER IN CONTRACT, STRICT LIABILITY, OR TORT 27 * THEORY OF LIABILITY, WHETHER IN CONTRACT, STRICT LIABILITY, OR TORT
28 * (INCLUDING NEGLIGENCE OR OTHERWISE) ARISING IN ANY WAY OUT OF THE USE 28 * (INCLUDING NEGLIGENCE OR OTHERWISE) ARISING IN ANY WAY OUT OF THE USE
29 * OF THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF SUCH DAMAGE. 29 * OF THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF SUCH DAMAGE.
30 */ 30 */
31#ifndef _EVENT_H_ 31#ifndef EVENT_H__
32#define _EVENT_H_ 32#define EVENT_H__
33 33
34#ifndef EV_EMBED 34#ifdef EV_H
35# include EV_H
36#else
35# include "ev.h" 37# include <ev.h>
36#endif 38#endif
37 39
38#ifdef __cplusplus 40#ifdef __cplusplus
39extern "C" { 41extern "C" {
40#endif 42#endif
43
44struct event_base;
41 45
42struct event 46struct event
43{ 47{
44 /* libev watchers we map onto */ 48 /* libev watchers we map onto */
45 union { 49 union {
54 void *ev_arg; 58 void *ev_arg;
55 int ev_fd; 59 int ev_fd;
56 int ev_pri; 60 int ev_pri;
57 int ev_res; 61 int ev_res;
58 short ev_events; 62 short ev_events;
59
60 char initialised; /* flag to work around some idiosynchrasies in the API */
61}; 63};
62 64
63#define EV_PERSIST 0x10 65#define EV_PERSIST 0x10
64 66
65#define EVENT_SIGNAL(ev) ((int) (ev)->ev_fd) 67#define EVENT_SIGNAL(ev) ((int) (ev)->ev_fd)
66#define EVENT_FD(ev) ((int) (ev)->ev_fd) 68#define EVENT_FD(ev) ((int) (ev)->ev_fd)
67 69
68#define event_initialized(ev) ((ev)->initialised) 70#define event_initialized(ev) 1
69 71
70#define evtimer_add(ev,tv) event_add (ev, tv) 72#define evtimer_add(ev,tv) event_add (ev, tv)
71#define evtimer_set(ev,cb,data) event_set (ev, -1, 0, cb, data) 73#define evtimer_set(ev,cb,data) event_set (ev, -1, 0, cb, data)
72#define evtimer_del(ev) event_del (ev) 74#define evtimer_del(ev) event_del (ev)
73#define evtimer_pending(ev,tv) event_pending (ev, EV_TIMEOUT, tv) 75#define evtimer_pending(ev,tv) event_pending (ev, EV_TIMEOUT, tv)
106void event_set (struct event *ev, int fd, short events, void (*cb)(int, short, void *), void *arg); 108void event_set (struct event *ev, int fd, short events, void (*cb)(int, short, void *), void *arg);
107int event_once (int fd, short events, void (*cb)(int, short, void *), void *arg, struct timeval *tv); 109int event_once (int fd, short events, void (*cb)(int, short, void *), void *arg, struct timeval *tv);
108 110
109int event_add (struct event *ev, struct timeval *tv); 111int event_add (struct event *ev, struct timeval *tv);
110int event_del (struct event *ev); 112int event_del (struct event *ev);
113void event_active (struct event *ev, int res, short ncalls); /* ncalls is being ignored */
111 114
112int event_pending (struct event *ev, short, struct timeval *tv); 115int event_pending (struct event *ev, short, struct timeval *tv);
113 116
114int event_priority_init (int npri); 117int event_priority_init (int npri);
115int event_priority_set (struct event *ev, int pri); 118int event_priority_set (struct event *ev, int pri);
116
117struct event_base;
118 119
119int event_base_set (struct event_base *base, struct event *ev); 120int event_base_set (struct event_base *base, struct event *ev);
120int event_base_loop (struct event_base *base, int); 121int event_base_loop (struct event_base *base, int);
121int event_base_loopexit (struct event_base *base, struct timeval *tv); 122int event_base_loopexit (struct event_base *base, struct timeval *tv);
122int event_base_dispatch (struct event_base *base); 123int event_base_dispatch (struct event_base *base);
123int event_base_once (struct event_base *base, int fd, short events, void (*cb)(int, short, void *), void *arg, struct timeval *tv); 124int event_base_once (struct event_base *base, int fd, short events, void (*cb)(int, short, void *), void *arg, struct timeval *tv);
124int event_base_priority_init (struct event_base *base, int fd); 125int event_base_priority_init (struct event_base *base, int fd);
125 126
126#ifndef EV_EMBED 127#ifndef EV_STANDALONE
127# include "event_compat.h" 128# include <event_compat.h>
128#endif 129#endif
129 130
130#ifdef __cplusplus 131#ifdef __cplusplus
131} 132}
132#endif 133#endif

Diff Legend

Removed lines
+ Added lines
< Changed lines
> Changed lines