Interface

GioConverter

Description [src]

interface Gio.Converter : GObject.Object

GConverter is implemented by objects that convert binary data in various ways. The conversion can be stateful and may fail at any place.

Some example conversions are: character set conversion, compression, decompression and regular expression replace.

Available since:2.24

Prerequisite

In order to implement Converter, your type must inherit from GObject.

Instance methods

g_converter_convert

This is the main operation used when converting data. It is to be called multiple times in a loop, and each time it will do some work, i.e. producing some output (in outbuf) or consuming some input (from inbuf) or both. If its not possible to do any work an error is returned.

Available since: 2.24

g_converter_reset

Resets all internal state in the converter, making it behave as if it was just created. If the converter has any internal state that would produce output then that output is lost.

Available since: 2.24

Interface structure

struct GioConverterIface {
  GTypeInterface g_iface;
  GConverterResult (* convert) (
    GConverter* converter,
    void* inbuf,
    gsize inbuf_size,
    void* outbuf,
    gsize outbuf_size,
    GConverterFlags flags,
    gsize* bytes_read,
    gsize* bytes_written,
    GError** error
  );
  void (* reset) (
    GConverter* converter
  );
  
}
Interface members
g_iface
GTypeInterface
 

The parent interface.

convert
GConverterResult (* convert) (
    GConverter* converter,
    void* inbuf,
    gsize inbuf_size,
    void* outbuf,
    gsize outbuf_size,
    GConverterFlags flags,
    gsize* bytes_read,
    gsize* bytes_written,
    GError** error
  )
 No description available.
reset
void (* reset) (
    GConverter* converter
  )
 No description available.

Virtual methods

Gio.Converter.convert

This is the main operation used when converting data. It is to be called multiple times in a loop, and each time it will do some work, i.e. producing some output (in outbuf) or consuming some input (from inbuf) or both. If its not possible to do any work an error is returned.

Gio.Converter.reset

Resets all internal state in the converter, making it behave as if it was just created. If the converter has any internal state that would produce output then that output is lost.