#ifndef _EVENTS_H_INCLUDED_
#define _EVENTS_H_INCLUDED_
#include <time.h>
typedef void (*EVENT_NOTIFY_FN) (int, char *);
#define EVENT_NOTIFY_TIME_FN EVENT_NOTIFY_FN
#define EVENT_NOTIFY_RDWR_FN EVENT_NOTIFY_FN
extern time_t event_time(void);
extern void event_enable_read(int, EVENT_NOTIFY_RDWR_FN, char *);
extern void event_enable_write(int, EVENT_NOTIFY_RDWR_FN, char *);
extern void event_disable_readwrite(int);
extern time_t event_request_timer(EVENT_NOTIFY_TIME_FN, char *, int);
extern int event_cancel_timer(EVENT_NOTIFY_TIME_FN, char *);
extern void event_loop(int);
extern void event_drain(int);
extern void event_fork(void);
#define EVENT_READ (1<<0)
#define EVENT_WRITE (1<<1)
#define EVENT_XCPT (1<<2)
#define EVENT_TIME (1<<3)
#define EVENT_ERROR EVENT_XCPT
#define EVENT_NULL_TYPE (0)
#define EVENT_NULL_CONTEXT ((char *) 0)
#define EVENT_NULL_DELAY (0)
#endif