1 #ifndef __TF_SESSION_H__
2 #define __TF_SESSION_H__
3 
4 #include <glib-object.h>
5 #include <gst/gst.h>
6 #include <telepathy-glib/telepathy-glib.h>
7 
8 G_BEGIN_DECLS
9 
10 #define TF_TYPE_SESSION _tf_session_get_type()
11 
12 #define TF_SESSION(obj) \
13   (G_TYPE_CHECK_INSTANCE_CAST ((obj), \
14   TF_TYPE_SESSION, TfSession))
15 
16 #define TF_SESSION_CLASS(klass) \
17   (G_TYPE_CHECK_CLASS_CAST ((klass), \
18   TF_TYPE_SESSION, TfSessionClass))
19 
20 #define TF_IS_SESSION(obj) \
21   (G_TYPE_CHECK_INSTANCE_TYPE ((obj), \
22   TF_TYPE_SESSION))
23 
24 #define TF_IS_SESSION_CLASS(klass) \
25   (G_TYPE_CHECK_CLASS_TYPE ((klass), \
26   TF_TYPE_SESSION))
27 
28 #define TF_SESSION_GET_CLASS(obj) \
29   (G_TYPE_INSTANCE_GET_CLASS ((obj), \
30   TF_TYPE_SESSION, TfSessionClass))
31 
32 typedef struct _TfSessionPrivate TfSessionPrivate;
33 
34 
35 /**
36  * TfSession:
37  *
38  * All members of the object are private
39  */
40 
41 typedef struct {
42   GObject parent;
43 
44   TfSessionPrivate *priv;
45 } TfSession;
46 
47 /**
48  * TfSessionClass:
49  *
50  * There are no overridable functions
51  */
52 
53 typedef struct {
54   GObjectClass parent_class;
55 } TfSessionClass;
56 
57 GType _tf_session_get_type (void);
58 
59 TfSession *
60 _tf_session_new (TpMediaSessionHandler *proxy,
61     const gchar *conference_type,
62     GError **error);
63 
64 gboolean _tf_session_bus_message (TfSession *session,
65     GstMessage *message);
66 
67 G_END_DECLS
68 
69 #endif /* __TF_SESSION_H__ */
70 
71