| 
struct      WireMessage;
void        (*WireReadFunc)                 (GIOChannel *channel,
                                             WireMessage *msg);
void        (*WireWriteFunc)                (GIOChannel *channel,
                                             WireMessage *msg);
void        (*WireDestroyFunc)              (WireMessage *msg);
gboolean    (*WireIOFunc)                   (GIOChannel *channel,
                                             guint8 *buf,
                                             gulong count);
gboolean    (*WireFlushFunc)                (GIOChannel *channel);
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,
                                             gulong count);
gboolean    wire_write                      (GIOChannel *channel,
                                             guint8 *buf,
                                             gulong count);
gboolean    wire_flush                      (GIOChannel *channel);
gboolean    wire_error                      (void);
void        wire_clear_error                (void);
gboolean    wire_read_msg                   (GIOChannel *channel,
                                             WireMessage *msg);
gboolean    wire_write_msg                  (GIOChannel *channel,
                                             WireMessage *msg);
void        wire_destroy                    (WireMessage *msg);
gboolean    wire_read_int32                 (GIOChannel *channel,
                                             guint32 *data,
                                             gint count);
gboolean    wire_read_int16                 (GIOChannel *channel,
                                             guint16 *data,
                                             gint count);
gboolean    wire_read_int8                  (GIOChannel *channel,
                                             guint8 *data,
                                             gint count);
gboolean    wire_read_double                (GIOChannel *channel,
                                             gdouble *data,
                                             gint count);
gboolean    wire_read_string                (GIOChannel *channel,
                                             gchar **data,
                                             gint count);
gboolean    wire_write_int32                (GIOChannel *channel,
                                             guint32 *data,
                                             gint count);
gboolean    wire_write_int16                (GIOChannel *channel,
                                             guint16 *data,
                                             gint count);
gboolean    wire_write_int8                 (GIOChannel *channel,
                                             guint8 *data,
                                             gint count);
gboolean    wire_write_double               (GIOChannel *channel,
                                             gdouble *data,
                                             gint count);
gboolean    wire_write_string               (GIOChannel *channel,
                                             gchar **data,
                                             gint count); |