## GskMainLoopPollBase

GskMainLoopPollBase — a base class for file-descriptor-only polling mechanisms.

## Synopsis

                        GskMainLoopPollBaseClass;
                        GskMainLoopPollBase;
    void                gsk_main_loop_poll_base_wakeup      (GskMainLoopPollBase *poll_base);

## Object Hierarchy

      GObject
       +----GskMainLoop
             +----GskMainLoopPollBase
                   +----GskMainLoopDevPoll
                   +----GskMainLoopPoll
                   +----GskMainLoopSelect

## Description

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.

## Details

### GskMainLoopPollBaseClass

    typedef struct {
      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);
    } GskMainLoopPollBaseClass;

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.
`config_fd` () | 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.)
`do_polling` () |

### GskMainLoopPollBase

    typedef struct _GskMainLoopPollBase GskMainLoopPollBase;

Base data for I/O-only main loop mechanisms.

### gsk_main_loop_poll_base_wakeup ()

    void                gsk_main_loop_poll_base_wakeup      (GskMainLoopPollBase *poll_base);

`poll_base` : |