1 #ifndef __ob__mainloop_h
2 #define __ob__mainloop_h
7 typedef struct _ObMainLoop ObMainLoop
;
9 ObMainLoop
*ob_main_loop_new(Display
*display
);
10 void ob_main_loop_destroy(ObMainLoop
*loop
);
12 typedef void (*ObMainLoopXHandler
) (const XEvent
*e
, gpointer data
);
13 typedef void (*ObMainLoopXDoneHandler
) (gpointer data
);
15 void ob_main_loop_x_add(ObMainLoop
*loop
,
16 ObMainLoopXHandler handler
,
17 ObMainLoopXDoneHandler done_handler
,
19 GDestroyNotify notify
);
20 void ob_main_loop_x_remove(ObMainLoop
*loop
,
21 ObMainLoopXHandler handler
);
23 typedef void (*ObMainLoopFdHandler
) (gint fd
, gpointer data
);
25 void ob_main_loop_fd_add(ObMainLoop
*loop
,
27 ObMainLoopFdHandler handler
,
29 GDestroyNotify notify
);
30 void ob_main_loop_fd_remove(ObMainLoop
*loop
,
33 typedef void (*ObMainLoopSignalHandler
) (gint signal
, gpointer data
);
35 void ob_main_loop_signal_add(ObMainLoop
*loop
,
37 ObMainLoopSignalHandler handler
,
39 GDestroyNotify notify
);
40 void ob_main_loop_signal_remove(ObMainLoop
*loop
,
41 ObMainLoopSignalHandler handler
);
43 void ob_main_loop_timeout_add(ObMainLoop
*loop
,
47 GDestroyNotify notify
);
48 void ob_main_loop_timeout_remove(ObMainLoop
*loop
,
50 void ob_main_loop_timeout_remove_data(ObMainLoop
*loop
,
54 void ob_main_loop_run(ObMainLoop
*loop
);
55 void ob_main_loop_exit(ObMainLoop
*loop
);