#define EVENT_H
/* includes */
-#include "ivac.h"
+#include <stdio.h>
#include <sys/select.h>
+/* defines */
+
+/* return values */
+#define CALLBACK_ERROR -1
+#define E_ERROR -1
+#define E_SUCCESS 1
+
+/* event status */
+#define DISABLED 0
+#define ENABLED 1
+
+/* read write mode */
+#define READ 'r'
+#define WRITE 'w'
+/* add remove mode */
+#define ADD 'a'
+#define REMOVE 'r'
+
/* event specific variables */
-typedef s_event {
+typedef struct s_event {
int maxfd;
- fd_set rfds,rfds_c;
- fd_set wfds,wfds_c;
+ fd_set rfds,rfds_o;
+ fd_set wfds,wfds_o;
+ struct timeval timeout;
+ unsigned char status;
} t_event;
+/* function prototypes */
+int event_init(t_event *event);
+int event_math(int fd,t_event *event,char rw,char ar);
+int event_start(t_event *event,void *ptr,
+ int (*callback0)(t_event *event,void *ptr),
+ int (*callback1)(t_event *event,void *ptr));
+int event_stop(t_event *event);
+
#endif