/* * stream-tube-chan.h - Simple stream tube channel * * Copyright (C) 2010 Collabora Ltd. * * Copying and distribution of this file, with or without modification, * are permitted in any medium without royalty provided the copyright * notice and this notice are preserved. */ #ifndef __TP_STREAM_TUBE_CHAN_H__ #define __TP_STREAM_TUBE_CHAN_H__ #include #include #include G_BEGIN_DECLS /* Base Class */ typedef struct _TpTestsStreamTubeChannel TpTestsStreamTubeChannel; typedef struct _TpTestsStreamTubeChannelClass TpTestsStreamTubeChannelClass; typedef struct _TpTestsStreamTubeChannelPrivate TpTestsStreamTubeChannelPrivate; GType tp_tests_stream_tube_channel_get_type (void); #define TP_TESTS_TYPE_STREAM_TUBE_CHANNEL \ (tp_tests_stream_tube_channel_get_type ()) #define TP_TESTS_STREAM_TUBE_CHANNEL(obj) \ (G_TYPE_CHECK_INSTANCE_CAST ((obj), TP_TESTS_TYPE_STREAM_TUBE_CHANNEL, \ TpTestsStreamTubeChannel)) #define TP_TESTS_STREAM_TUBE_CHANNEL_CLASS(klass) \ (G_TYPE_CHECK_CLASS_CAST ((klass), TP_TESTS_TYPE_STREAM_TUBE_CHANNEL, \ TpTestsStreamTubeChannelClass)) #define TP_TESTS_IS_STREAM_TUBE_CHANNEL(obj) \ (G_TYPE_CHECK_INSTANCE_TYPE ((obj), TP_TESTS_TYPE_STREAM_TUBE_CHANNEL)) #define TP_TESTS_IS_STREAM_TUBE_CHANNEL_CLASS(klass) \ (G_TYPE_CHECK_CLASS_TYPE ((klass), TP_TESTS_TYPE_STREAM_TUBE_CHANNEL)) #define TP_TESTS_STREAM_TUBE_CHANNEL_GET_CLASS(obj) \ (G_TYPE_INSTANCE_GET_CLASS ((obj), TP_TESTS_TYPE_STREAM_TUBE_CHANNEL, \ TpTestsStreamTubeChannelClass)) struct _TpTestsStreamTubeChannelClass { TpBaseChannelClass parent_class; TpDBusPropertiesMixinClass dbus_properties_class; }; struct _TpTestsStreamTubeChannel { TpBaseChannel parent; TpTestsStreamTubeChannelPrivate *priv; }; GSocketAddress * tp_tests_stream_tube_channel_get_server_address ( TpTestsStreamTubeChannel *self); void tp_tests_stream_tube_channel_peer_connected ( TpTestsStreamTubeChannel *self, GIOStream *stream, TpHandle handle); void tp_tests_stream_tube_channel_last_connection_disconnected ( TpTestsStreamTubeChannel *self, const gchar *error); /* Contact Stream Tube */ typedef struct _TpTestsContactStreamTubeChannel TpTestsContactStreamTubeChannel; typedef struct _TpTestsContactStreamTubeChannelClass TpTestsContactStreamTubeChannelClass; GType tp_tests_contact_stream_tube_channel_get_type (void); #define TP_TESTS_TYPE_CONTACT_STREAM_TUBE_CHANNEL \ (tp_tests_contact_stream_tube_channel_get_type ()) #define TP_TESTS_CONTACT_STREAM_TUBE_CHANNEL(obj) \ (G_TYPE_CHECK_INSTANCE_CAST ((obj), TP_TESTS_TYPE_CONTACT_STREAM_TUBE_CHANNEL, \ TpTestsContactStreamTubeChannel)) #define TP_TESTS_CONTACT_STREAM_TUBE_CHANNEL_CLASS(klass) \ (G_TYPE_CHECK_CLASS_CAST ((klass), TP_TESTS_TYPE_CONTACT_STREAM_TUBE_CHANNEL, \ TpTestsContactStreamTubeChannelClass)) #define TP_TESTS_IS_CONTACT_STREAM_TUBE_CHANNEL(obj) \ (G_TYPE_CHECK_INSTANCE_TYPE ((obj), TP_TESTS_TYPE_CONTACT_STREAM_TUBE_CHANNEL)) #define TP_TESTS_IS_CONTACT_STREAM_TUBE_CHANNEL_CLASS(klass) \ (G_TYPE_CHECK_CLASS_TYPE ((klass), TP_TESTS_TYPE_CONTACT_STREAM_TUBE_CHANNEL)) #define TP_TESTS_CONTACT_STREAM_TUBE_CHANNEL_GET_CLASS(obj) \ (G_TYPE_INSTANCE_GET_CLASS ((obj), TP_TESTS_TYPE_CONTACT_STREAM_TUBE_CHANNEL, \ TpTestsContactStreamTubeChannelClass)) struct _TpTestsContactStreamTubeChannelClass { TpTestsStreamTubeChannelClass parent_class; }; struct _TpTestsContactStreamTubeChannel { TpTestsStreamTubeChannel parent; }; /* Room Stream Tube */ typedef struct _TpTestsRoomStreamTubeChannel TpTestsRoomStreamTubeChannel; typedef struct _TpTestsRoomStreamTubeChannelClass TpTestsRoomStreamTubeChannelClass; GType tp_tests_room_stream_tube_channel_get_type (void); #define TP_TESTS_TYPE_ROOM_STREAM_TUBE_CHANNEL \ (tp_tests_room_stream_tube_channel_get_type ()) #define TP_TESTS_ROOM_STREAM_TUBE_CHANNEL(obj) \ (G_TYPE_CHECK_INSTANCE_CAST ((obj), TP_TESTS_TYPE_ROOM_STREAM_TUBE_CHANNEL, \ TpTestsRoomStreamTubeChannel)) #define TP_TESTS_ROOM_STREAM_TUBE_CHANNEL_CLASS(klass) \ (G_TYPE_CHECK_CLASS_CAST ((klass), TP_TESTS_TYPE_ROOM_STREAM_TUBE_CHANNEL, \ TpTestsRoomStreamTubeChannelClass)) #define TP_TESTS_IS_ROOM_STREAM_TUBE_CHANNEL(obj) \ (G_TYPE_CHECK_INSTANCE_TYPE ((obj), TP_TESTS_TYPE_ROOM_STREAM_TUBE_CHANNEL)) #define TP_TESTS_IS_ROOM_STREAM_TUBE_CHANNEL_CLASS(klass) \ (G_TYPE_CHECK_CLASS_TYPE ((klass), TP_TESTS_TYPE_ROOM_STREAM_TUBE_CHANNEL)) #define TP_TESTS_ROOM_STREAM_TUBE_CHANNEL_GET_CLASS(obj) \ (G_TYPE_INSTANCE_GET_CLASS ((obj), TP_TESTS_TYPE_ROOM_STREAM_TUBE_CHANNEL, \ TpTestsRoomStreamTubeChannelClass)) struct _TpTestsRoomStreamTubeChannelClass { TpTestsStreamTubeChannelClass parent_class; }; struct _TpTestsRoomStreamTubeChannel { TpTestsStreamTubeChannel parent; }; G_END_DECLS #endif /* #ifndef __TP_STREAM_TUBE_CHAN_H__ */