Struct
GLibIOFuncs
Description [src]
struct GIOFuncs {
  GIOStatus (* io_read) (
    GIOChannel* channel,
    gchar* buf,
    gsize count,
    gsize* bytes_read,
    GError** error
  );;
  GIOStatus (* io_write) (
    GIOChannel* channel,
    const gchar* buf,
    gsize count,
    gsize* bytes_written,
    GError** error
  );;
  GIOStatus (* io_seek) (
    GIOChannel* channel,
    gint64 offset,
    GSeekType type,
    GError** error
  );;
  GIOStatus (* io_close) (
    GIOChannel* channel,
    GError** error
  );;
  GSource* (* io_create_watch) (
    GIOChannel* channel,
    GIOCondition condition
  );;
  void (* io_free) (
    GIOChannel* channel
  );;
  GIOStatus (* io_set_flags) (
    GIOChannel* channel,
    GIOFlags flags,
    GError** error
  );;
  GIOFlags (* io_get_flags) (
    GIOChannel* channel
  );;
}
A table of functions used to handle different types of GIOChannel
in a generic way.
Structure members
- io_read:- GIOStatus (* io_read) ( GIOChannel* channel, gchar* buf, gsize count, gsize* bytes_read, GError** error )
- Reads raw bytes from the channel. This is called from various functions such as - g_io_channel_read_chars()to read raw bytes from the channel. Encoding and buffering issues are dealt with at a higher level.
- io_write:- GIOStatus (* io_write) ( GIOChannel* channel, const gchar* buf, gsize count, gsize* bytes_written, GError** error )
- Writes raw bytes to the channel. This is called from various functions such as - g_io_channel_write_chars()to write raw bytes to the channel. Encoding and buffering issues are dealt with at a higher level.
- io_seek:- GIOStatus (* io_seek) ( GIOChannel* channel, gint64 offset, GSeekType type, GError** error )
- Seeks the channel. This is called from - g_io_channel_seek()on channels that support it.
- io_close:- GIOStatus (* io_close) ( GIOChannel* channel, GError** error )
- Closes the channel. This is called from - g_io_channel_close()after flushing the buffers.
- io_create_watch:- GSource* (* io_create_watch) ( GIOChannel* channel, GIOCondition condition )
- Creates a watch on the channel. This call corresponds directly to g_io_create_watch(). 
- io_free:- void (* io_free) ( GIOChannel* channel )
- Called from - g_io_channel_unref()when the channel needs to be freed. This function must free the memory associated with the channel, including freeing the- GIOChannelstructure itself. The channel buffers have been flushed and possibly- io_closehas been called by the time this function is called.
- io_set_flags:- GIOStatus (* io_set_flags) ( GIOChannel* channel, GIOFlags flags, GError** error )
- Sets the - GIOFlagson the channel. This is called from- g_io_channel_set_flags()with all flags except for- G_IO_FLAG_APPENDand- G_IO_FLAG_NONBLOCKmasked out.
- io_get_flags:- GIOFlags (* io_get_flags) ( GIOChannel* channel )
- Gets the - GIOFlagsfor the channel. This function need only return the- G_IO_FLAG_APPENDand- G_IO_FLAG_NONBLOCKflags;- g_io_channel_get_flags()automatically adds the others as appropriate.