00001 #ifndef GTASK_PACKET_H
00002 #define GTASK_PACKET_H
00003
00004 #include <glib-2.0/glib-object.h>
00005 #include <gtask/gtask-connection-group.h>
00006 #include <gtask/gtask-connection.h>
00007
00010
00011
00012 typedef struct _GTaskPacket GTaskPacket;
00013 typedef struct _GTaskPacketPrivate GTaskPacketPrivate;
00014 typedef struct _GTaskPacketClass GTaskPacketClass;
00015
00017 #define GTASK_PACKET_TYPE (gtask_packet_get_type())
00018
00020 #define GTASK_PACKET(obj) (G_TYPE_CHECK_INSTANCE_CAST( (obj), \
00021 GTASK_PACKET_TYPE, \
00022 GTaskPacket ))
00023
00025 #define GTASK_PACKET_CLASS(klass) (G_TYPE_CHECK_CLASS_CAST( (klass), \
00026 GTASK_PACKET_TYPE, \
00027 GTaskPacketClass ))
00028
00033 #define GTASK_IS_PACKET(obj) (G_TYPE_CHECK_INSTANCE_TYPE( (obj), \
00034 GTASK_PACKET_TYPE ))
00035
00040 #define GTASK_IS_PACKET_CLASS(klass) (G_TYPE_CHECK_CLASS_TYPE( (klass), \
00041 GTASK_PACKET_TYPE ))
00042
00043 #define GTASK_PACKET_GET_CLASS(obj) (G_TYPE_INSTANCE_GET_CLASS( (obj), \
00044 GTASK_PACKET_TYPE, \
00045 GTaskPacketClass ))
00046
00047
00048 struct _GTaskPacket {
00049 GObject parent;
00050 GTaskPacketPrivate *private;
00051 };
00052
00053 struct _GTaskPacketPrivate {
00054 GTaskConnectionGroup *conn_group;
00055 gboolean dispose_has_run;
00056 };
00057
00058 struct _GTaskPacketClass {
00059 GObjectClass parent;
00060
00061 gboolean (*serialize_packet) ( GTaskPacket *packet, GTaskConnection *conn );
00062 };
00063
00064 GType gtask_packet_get_type( void );
00065
00066 gboolean
00067 gtask_packet_serialize( GTaskPacket *packet );
00068
00069 gboolean
00070 gtask_packet_serialize_to( GTaskPacket *packet, GTaskConnection *conn );
00071
00072 GTaskConnectionGroup *
00073 gtask_packet_get_connection_group( GTaskPacket *packet );
00074
00075 void
00076 gtask_packet_set_connection_group( GTaskPacket *packet,
00077 GTaskConnectionGroup *conn_group );
00078
00079
00080
00081 #endif