gimpwire

gimpwire — The lowlevel I/O protocol used for communication between GIMP and it's plug-ins.

Synopsis




struct      WireMessage;
void        (*WireReadFunc)                 (GIOChannel *channel,
                                             WireMessage *msg,
                                             gpointer user_data);
void        (*WireWriteFunc)                (GIOChannel *channel,
                                             WireMessage *msg,
                                             gpointer user_data);
void        (*WireDestroyFunc)              (WireMessage *msg);
gboolean    (*WireIOFunc)                   (GIOChannel *channel,
                                             guint8 *buf,
                                             gulong count,
                                             gpointer user_data);
gboolean    (*WireFlushFunc)                (GIOChannel *channel,
                                             gpointer user_data);
void        wire_register                   (guint32 type,
                                             WireReadFunc read_func,
                                             WireWriteFunc write_func,
                                             WireDestroyFunc destroy_func);
void        wire_set_reader                 (WireIOFunc read_func);
void        wire_set_writer                 (WireIOFunc write_func);
void        wire_set_flusher                (WireFlushFunc flush_func);
gboolean    wire_read                       (GIOChannel *channel,
                                             guint8 *buf,
                                             gsize count,
                                             gpointer user_data);
gboolean    wire_write                      (GIOChannel *channel,
                                             guint8 *buf,
                                             gsize count,
                                             gpointer user_data);
gboolean    wire_flush                      (GIOChannel *channel,
                                             gpointer user_data);
gboolean    wire_error                      (void);
void        wire_clear_error                (void);
gboolean    wire_read_msg                   (GIOChannel *channel,
                                             WireMessage *msg,
                                             gpointer user_data);
gboolean    wire_write_msg                  (GIOChannel *channel,
                                             WireMessage *msg,
                                             gpointer user_data);
void        wire_destroy                    (WireMessage *msg);
gboolean    wire_read_int32                 (GIOChannel *channel,
                                             guint32 *data,
                                             gint count,
                                             gpointer user_data);
gboolean    wire_read_int16                 (GIOChannel *channel,
                                             guint16 *data,
                                             gint count,
                                             gpointer user_data);
gboolean    wire_read_int8                  (GIOChannel *channel,
                                             guint8 *data,
                                             gint count,
                                             gpointer user_data);
gboolean    wire_read_double                (GIOChannel *channel,
                                             gdouble *data,
                                             gint count,
                                             gpointer user_data);
gboolean    wire_read_string                (GIOChannel *channel,
                                             gchar **data,
                                             gint count,
                                             gpointer user_data);
gboolean    wire_write_int32                (GIOChannel *channel,
                                             guint32 *data,
                                             gint count,
                                             gpointer user_data);
gboolean    wire_write_int16                (GIOChannel *channel,
                                             guint16 *data,
                                             gint count,
                                             gpointer user_data);
gboolean    wire_write_int8                 (GIOChannel *channel,
                                             guint8 *data,
                                             gint count,
                                             gpointer user_data);
gboolean    wire_write_double               (GIOChannel *channel,
                                             gdouble *data,
                                             gint count,
                                             gpointer user_data);
gboolean    wire_write_string               (GIOChannel *channel,
                                             gchar **data,
                                             gint count,
                                             gpointer user_data);

Description

The lowlevel I/O protocol used for communication between GIMP and it's plug-ins.

Details

struct WireMessage

struct WireMessage {

  guint32  type;
  gpointer data;
};


WireReadFunc ()

void        (*WireReadFunc)                 (GIOChannel *channel,
                                             WireMessage *msg,
                                             gpointer user_data);

channel :
msg :
user_data :

WireWriteFunc ()

void        (*WireWriteFunc)                (GIOChannel *channel,
                                             WireMessage *msg,
                                             gpointer user_data);

channel :
msg :
user_data :

WireDestroyFunc ()

void        (*WireDestroyFunc)              (WireMessage *msg);

msg :

WireIOFunc ()

gboolean    (*WireIOFunc)                   (GIOChannel *channel,
                                             guint8 *buf,
                                             gulong count,
                                             gpointer user_data);

channel :
buf :
count :
user_data :
Returns :

WireFlushFunc ()

gboolean    (*WireFlushFunc)                (GIOChannel *channel,
                                             gpointer user_data);

channel :
user_data :
Returns :

wire_register ()

void        wire_register                   (guint32 type,
                                             WireReadFunc read_func,
                                             WireWriteFunc write_func,
                                             WireDestroyFunc destroy_func);

type :
read_func :
write_func :
destroy_func :

wire_set_reader ()

void        wire_set_reader                 (WireIOFunc read_func);

read_func :

wire_set_writer ()

void        wire_set_writer                 (WireIOFunc write_func);

write_func :

wire_set_flusher ()

void        wire_set_flusher                (WireFlushFunc flush_func);

flush_func :

wire_read ()

gboolean    wire_read                       (GIOChannel *channel,
                                             guint8 *buf,
                                             gsize count,
                                             gpointer user_data);

channel :
buf :
count :
user_data :
Returns :

wire_write ()

gboolean    wire_write                      (GIOChannel *channel,
                                             guint8 *buf,
                                             gsize count,
                                             gpointer user_data);

channel :
buf :
count :
user_data :
Returns :

wire_flush ()

gboolean    wire_flush                      (GIOChannel *channel,
                                             gpointer user_data);

channel :
user_data :
Returns :

wire_error ()

gboolean    wire_error                      (void);

Returns :

wire_clear_error ()

void        wire_clear_error                (void);


wire_read_msg ()

gboolean    wire_read_msg                   (GIOChannel *channel,
                                             WireMessage *msg,
                                             gpointer user_data);

channel :
msg :
user_data :
Returns :

wire_write_msg ()

gboolean    wire_write_msg                  (GIOChannel *channel,
                                             WireMessage *msg,
                                             gpointer user_data);

channel :
msg :
user_data :
Returns :

wire_destroy ()

void        wire_destroy                    (WireMessage *msg);

msg :

wire_read_int32 ()

gboolean    wire_read_int32                 (GIOChannel *channel,
                                             guint32 *data,
                                             gint count,
                                             gpointer user_data);

channel :
data :
count :
user_data :
Returns :

wire_read_int16 ()

gboolean    wire_read_int16                 (GIOChannel *channel,
                                             guint16 *data,
                                             gint count,
                                             gpointer user_data);

channel :
data :
count :
user_data :
Returns :

wire_read_int8 ()

gboolean    wire_read_int8                  (GIOChannel *channel,
                                             guint8 *data,
                                             gint count,
                                             gpointer user_data);

channel :
data :
count :
user_data :
Returns :

wire_read_double ()

gboolean    wire_read_double                (GIOChannel *channel,
                                             gdouble *data,
                                             gint count,
                                             gpointer user_data);

channel :
data :
count :
user_data :
Returns :

wire_read_string ()

gboolean    wire_read_string                (GIOChannel *channel,
                                             gchar **data,
                                             gint count,
                                             gpointer user_data);

channel :
data :
count :
user_data :
Returns :

wire_write_int32 ()

gboolean    wire_write_int32                (GIOChannel *channel,
                                             guint32 *data,
                                             gint count,
                                             gpointer user_data);

channel :
data :
count :
user_data :
Returns :

wire_write_int16 ()

gboolean    wire_write_int16                (GIOChannel *channel,
                                             guint16 *data,
                                             gint count,
                                             gpointer user_data);

channel :
data :
count :
user_data :
Returns :

wire_write_int8 ()

gboolean    wire_write_int8                 (GIOChannel *channel,
                                             guint8 *data,
                                             gint count,
                                             gpointer user_data);

channel :
data :
count :
user_data :
Returns :

wire_write_double ()

gboolean    wire_write_double               (GIOChannel *channel,
                                             gdouble *data,
                                             gint count,
                                             gpointer user_data);

channel :
data :
count :
user_data :
Returns :

wire_write_string ()

gboolean    wire_write_string               (GIOChannel *channel,
                                             gchar **data,
                                             gint count,
                                             gpointer user_data);

channel :
data :
count :
user_data :
Returns :

See Also

libgimp-gimpprotocol