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

Comparing libev/event.h (file contents):
Revision 1.3 by root, Fri Nov 2 11:02:23 2007 UTC vs.
Revision 1.7 by root, Sun Nov 4 00:24:17 2007 UTC

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#include "ev.h"
35
34#ifdef __cplusplus 36#ifdef __cplusplus
35extern "C" { 37extern "C" {
36#endif 38#endif
37 39
38#include "ev.h" 40struct event
41{
42 /* libev watchers we map onto */
43 union {
44 struct ev_io io;
45 struct ev_signal sig;
46 } iosig;
47 struct ev_timer to;
39 48
40struct event 49 /* compatibility slots */
41 {
42 struct ev_io io;
43 struct ev_timer to;
44 struct ev_signal sig;
45
46 struct event_base *ev_base; 50 struct event_base *ev_base;
47 void (*ev_callback)(int, short, void *arg); 51 void (*ev_callback)(int, short, void *arg);
48 void *ev_arg; 52 void *ev_arg;
49 int ev_fd; 53 int ev_fd;
50 int ev_pri; 54 int ev_pri;
51 int ev_res; 55 int ev_res;
52 short ev_events; 56 short ev_events;
57
58 char initialised; /* flag to work around some idiosynchrasies in the API */
53}; 59};
54 60
55#define EV_PERSIST 0x10 61#define EV_PERSIST 0x10
56 62
57#define EVENT_SIGNAL(ev) ((int) (ev)->ev_fd) 63#define EVENT_SIGNAL(ev) ((int) (ev)->ev_fd)
58#define EVENT_FD(ev) ((int) (ev)->ev_fd) 64#define EVENT_FD(ev) ((int) (ev)->ev_fd)
59 65
60#define event_initialized(ev) 1 66#define event_initialized(ev) ((ev)->initialised)
61 67
62#define evtimer_add(ev,tv) event_add (ev, tv) 68#define evtimer_add(ev,tv) event_add (ev, tv)
63#define evtimer_set(ev,cb,data) event_set (ev, -1, 0, cb, data) 69#define evtimer_set(ev,cb,data) event_set (ev, -1, 0, cb, data)
64#define evtimer_del(ev) event_del (ev) 70#define evtimer_del(ev) event_del (ev)
65#define evtimer_pending(ev,tv) event_pending (ev, EV_TIMEOUT, tv) 71#define evtimer_pending(ev,tv) event_pending (ev, EV_TIMEOUT, tv)
113int event_base_loopexit (struct event_base *base, struct timeval *tv); 119int event_base_loopexit (struct event_base *base, struct timeval *tv);
114int event_base_dispatch (struct event_base *base); 120int event_base_dispatch (struct event_base *base);
115int event_base_once (struct event_base *base, int fd, short events, void (*cb)(int, short, void *), void *arg, struct timeval *tv); 121int event_base_once (struct event_base *base, int fd, short events, void (*cb)(int, short, void *), void *arg, struct timeval *tv);
116int event_base_priority_init (struct event_base *base, int fd); 122int event_base_priority_init (struct event_base *base, int fd);
117 123
124#ifndef EV_STANDALONE
125# include "event_compat.h"
118#endif 126#endif
127
128#ifdef __cplusplus
129}
130#endif
131
132#endif
133

Diff Legend

Removed lines
+ Added lines
< Changed lines
> Changed lines