summaryrefslogtreecommitdiff
path: root/tests/lib/stream-tube-chan.h
blob: 45bccc9384d786b88c2216e36c65bc56f0967c03 (plain)
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49
50
51
52
53
54
55
56
57
58
59
60
61
62
63
64
65
66
67
68
69
70
71
72
73
74
75
76
77
78
79
80
81
82
83
84
85
86
87
88
89
90
91
92
93
94
95
96
97
98
99
100
101
102
103
104
105
106
107
108
109
110
111
112
113
114
115
116
117
118
119
120
121
122
123
124
125
126
127
128
129
130
/*
 * stream-tube-chan.h - Simple stream tube channel
 *
 * Copyright (C) 2010 Collabora Ltd. <http://www.collabora.co.uk/>
 *
 * 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 <glib-object.h>
#include <telepathy-glib/telepathy-glib.h>
#include <telepathy-glib/telepathy-glib-dbus.h>

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__ */