| GSK Reference Manual |
|---|
struct GskMainLoopPollBaseClass; struct GskMainLoopPollBase; void gsk_main_loop_poll_base_wakeup (GskMainLoopPollBase *poll_base);
This class converts signals and child-process-termination notification events into I/O events so that derived class need only implement I/O. The remaining event types are implemented in terms of pipes.
struct GskMainLoopPollBaseClass {
GskMainLoopClass main_loop_class;
void (*config_fd) (GskMainLoopPollBase *main_loop,
int fd,
GIOCondition old_io_conditions,
GIOCondition io_conditions);
/* returns FALSE if the poll function has an error.
*/
gboolean (*do_polling) (GskMainLoopPollBase *main_loop,
int max_timeout,
guint max_events,
guint *num_events_out,
GskMainLoopEvent *events);
};Base-class for I/O-only main-loops. The config_fd and do_polling functions are to be implemented by specific polling mechanisms.
GskMainLoopClass main_loop_class | the base-class from which this is derived. |
void (*config_fd) (GskMainLoopPollBase *main_loop,
int fd,
GIOCondition old_io_conditions,
GIOCondition io_conditions) | method to change our preferences with regard to a file-descriptor. These should not be cached, since the parent-class automatically coagulates multiple configurations into a single event. (Furthermore, caching would break on some OS's where the file-descriptor is auto-unpolled when it is closed.) |
gboolean (*do_polling) (GskMainLoopPollBase *main_loop,
int max_timeout,
guint max_events,
guint *num_events_out,
GskMainLoopEvent *events) |
void gsk_main_loop_poll_base_wakeup (GskMainLoopPollBase *poll_base);
| poll_base : |
|
| <<< GskMainLoopPoll | GskMainLoopSelect >>> |