-void ir_select_add (int fd, void *obj);
-void ir_select_remove (int fd, void *obj);
-void ir_select_proc (ClientData clientData);
+void ir_select_add (int fd, void *obj);
+void ir_select_add_write (int fd, void *obj);
+void ir_select_remove (int fd, void *obj);
+void ir_select_remove_write (int fd, void *obj);
+void ir_select_read (ClientData clientData);
+void ir_select_write (ClientData clientData);