Mercurial > pidgin
annotate libpurple/media/backend-iface.c @ 29150:c9845a081a3a
Fix parameter to actually be a string instead of an object.
author | maiku@pidgin.im |
---|---|
date | Fri, 23 Oct 2009 00:00:44 +0000 |
parents | af08588c06f5 |
children | 9f16127441e8 |
rev | line source |
---|---|
29145
0ae9306de1f6
Add a media backend interface to handle different backends in addition to
maiku@pidgin.im
parents:
diff
changeset
|
1 /** |
0ae9306de1f6
Add a media backend interface to handle different backends in addition to
maiku@pidgin.im
parents:
diff
changeset
|
2 * @file backend-iface.c Interface for media backend |
0ae9306de1f6
Add a media backend interface to handle different backends in addition to
maiku@pidgin.im
parents:
diff
changeset
|
3 * @ingroup core |
0ae9306de1f6
Add a media backend interface to handle different backends in addition to
maiku@pidgin.im
parents:
diff
changeset
|
4 */ |
0ae9306de1f6
Add a media backend interface to handle different backends in addition to
maiku@pidgin.im
parents:
diff
changeset
|
5 |
0ae9306de1f6
Add a media backend interface to handle different backends in addition to
maiku@pidgin.im
parents:
diff
changeset
|
6 /* purple |
0ae9306de1f6
Add a media backend interface to handle different backends in addition to
maiku@pidgin.im
parents:
diff
changeset
|
7 * |
0ae9306de1f6
Add a media backend interface to handle different backends in addition to
maiku@pidgin.im
parents:
diff
changeset
|
8 * Purple is the legal property of its developers, whose names are too numerous |
0ae9306de1f6
Add a media backend interface to handle different backends in addition to
maiku@pidgin.im
parents:
diff
changeset
|
9 * to list here. Please refer to the COPYRIGHT file distributed with this |
0ae9306de1f6
Add a media backend interface to handle different backends in addition to
maiku@pidgin.im
parents:
diff
changeset
|
10 * source distribution. |
0ae9306de1f6
Add a media backend interface to handle different backends in addition to
maiku@pidgin.im
parents:
diff
changeset
|
11 * |
0ae9306de1f6
Add a media backend interface to handle different backends in addition to
maiku@pidgin.im
parents:
diff
changeset
|
12 * This program is free software; you can redistribute it and/or modify |
0ae9306de1f6
Add a media backend interface to handle different backends in addition to
maiku@pidgin.im
parents:
diff
changeset
|
13 * it under the terms of the GNU General Public License as published by |
0ae9306de1f6
Add a media backend interface to handle different backends in addition to
maiku@pidgin.im
parents:
diff
changeset
|
14 * the Free Software Foundation; either version 2 of the License, or |
0ae9306de1f6
Add a media backend interface to handle different backends in addition to
maiku@pidgin.im
parents:
diff
changeset
|
15 * (at your option) any later version. |
0ae9306de1f6
Add a media backend interface to handle different backends in addition to
maiku@pidgin.im
parents:
diff
changeset
|
16 * |
0ae9306de1f6
Add a media backend interface to handle different backends in addition to
maiku@pidgin.im
parents:
diff
changeset
|
17 * This program is distributed in the hope that it will be useful, |
0ae9306de1f6
Add a media backend interface to handle different backends in addition to
maiku@pidgin.im
parents:
diff
changeset
|
18 * but WITHOUT ANY WARRANTY; without even the implied warranty of |
0ae9306de1f6
Add a media backend interface to handle different backends in addition to
maiku@pidgin.im
parents:
diff
changeset
|
19 * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the |
0ae9306de1f6
Add a media backend interface to handle different backends in addition to
maiku@pidgin.im
parents:
diff
changeset
|
20 * GNU General Public License for more details. |
0ae9306de1f6
Add a media backend interface to handle different backends in addition to
maiku@pidgin.im
parents:
diff
changeset
|
21 * |
0ae9306de1f6
Add a media backend interface to handle different backends in addition to
maiku@pidgin.im
parents:
diff
changeset
|
22 * You should have received a copy of the GNU General Public License |
0ae9306de1f6
Add a media backend interface to handle different backends in addition to
maiku@pidgin.im
parents:
diff
changeset
|
23 * along with this program; if not, write to the Free Software |
0ae9306de1f6
Add a media backend interface to handle different backends in addition to
maiku@pidgin.im
parents:
diff
changeset
|
24 * Foundation, Inc., 51 Franklin Street, Fifth Floor, Boston, MA 02111-1301 USA |
0ae9306de1f6
Add a media backend interface to handle different backends in addition to
maiku@pidgin.im
parents:
diff
changeset
|
25 */ |
0ae9306de1f6
Add a media backend interface to handle different backends in addition to
maiku@pidgin.im
parents:
diff
changeset
|
26 |
0ae9306de1f6
Add a media backend interface to handle different backends in addition to
maiku@pidgin.im
parents:
diff
changeset
|
27 #include "backend-iface.h" |
0ae9306de1f6
Add a media backend interface to handle different backends in addition to
maiku@pidgin.im
parents:
diff
changeset
|
28 |
0ae9306de1f6
Add a media backend interface to handle different backends in addition to
maiku@pidgin.im
parents:
diff
changeset
|
29 #include "marshallers.h" |
0ae9306de1f6
Add a media backend interface to handle different backends in addition to
maiku@pidgin.im
parents:
diff
changeset
|
30 |
0ae9306de1f6
Add a media backend interface to handle different backends in addition to
maiku@pidgin.im
parents:
diff
changeset
|
31 enum { |
0ae9306de1f6
Add a media backend interface to handle different backends in addition to
maiku@pidgin.im
parents:
diff
changeset
|
32 S_ERROR, |
0ae9306de1f6
Add a media backend interface to handle different backends in addition to
maiku@pidgin.im
parents:
diff
changeset
|
33 CANDIDATES_PREPARED, |
0ae9306de1f6
Add a media backend interface to handle different backends in addition to
maiku@pidgin.im
parents:
diff
changeset
|
34 CODECS_CHANGED, |
0ae9306de1f6
Add a media backend interface to handle different backends in addition to
maiku@pidgin.im
parents:
diff
changeset
|
35 NEW_CANDIDATE, |
0ae9306de1f6
Add a media backend interface to handle different backends in addition to
maiku@pidgin.im
parents:
diff
changeset
|
36 ACTIVE_CANDIDATE_PAIR, |
0ae9306de1f6
Add a media backend interface to handle different backends in addition to
maiku@pidgin.im
parents:
diff
changeset
|
37 LAST_SIGNAL |
0ae9306de1f6
Add a media backend interface to handle different backends in addition to
maiku@pidgin.im
parents:
diff
changeset
|
38 }; |
0ae9306de1f6
Add a media backend interface to handle different backends in addition to
maiku@pidgin.im
parents:
diff
changeset
|
39 |
0ae9306de1f6
Add a media backend interface to handle different backends in addition to
maiku@pidgin.im
parents:
diff
changeset
|
40 static guint purple_media_backend_signals[LAST_SIGNAL] = {0}; |
0ae9306de1f6
Add a media backend interface to handle different backends in addition to
maiku@pidgin.im
parents:
diff
changeset
|
41 |
0ae9306de1f6
Add a media backend interface to handle different backends in addition to
maiku@pidgin.im
parents:
diff
changeset
|
42 enum { |
0ae9306de1f6
Add a media backend interface to handle different backends in addition to
maiku@pidgin.im
parents:
diff
changeset
|
43 PROP_0, |
29148
af08588c06f5
Add the conference-type property to the media backend interface.
maiku@pidgin.im
parents:
29145
diff
changeset
|
44 PROP_CONFERENCE_TYPE, |
29145
0ae9306de1f6
Add a media backend interface to handle different backends in addition to
maiku@pidgin.im
parents:
diff
changeset
|
45 PROP_MEDIA, |
0ae9306de1f6
Add a media backend interface to handle different backends in addition to
maiku@pidgin.im
parents:
diff
changeset
|
46 }; |
0ae9306de1f6
Add a media backend interface to handle different backends in addition to
maiku@pidgin.im
parents:
diff
changeset
|
47 |
0ae9306de1f6
Add a media backend interface to handle different backends in addition to
maiku@pidgin.im
parents:
diff
changeset
|
48 static void |
0ae9306de1f6
Add a media backend interface to handle different backends in addition to
maiku@pidgin.im
parents:
diff
changeset
|
49 purple_media_backend_base_init(gpointer iface) |
0ae9306de1f6
Add a media backend interface to handle different backends in addition to
maiku@pidgin.im
parents:
diff
changeset
|
50 { |
0ae9306de1f6
Add a media backend interface to handle different backends in addition to
maiku@pidgin.im
parents:
diff
changeset
|
51 static gboolean is_initialized = FALSE; |
0ae9306de1f6
Add a media backend interface to handle different backends in addition to
maiku@pidgin.im
parents:
diff
changeset
|
52 |
0ae9306de1f6
Add a media backend interface to handle different backends in addition to
maiku@pidgin.im
parents:
diff
changeset
|
53 if (is_initialized) |
0ae9306de1f6
Add a media backend interface to handle different backends in addition to
maiku@pidgin.im
parents:
diff
changeset
|
54 return; |
0ae9306de1f6
Add a media backend interface to handle different backends in addition to
maiku@pidgin.im
parents:
diff
changeset
|
55 |
29148
af08588c06f5
Add the conference-type property to the media backend interface.
maiku@pidgin.im
parents:
29145
diff
changeset
|
56 g_object_class_install_property(iface, PROP_CONFERENCE_TYPE, |
29150
c9845a081a3a
Fix parameter to actually be a string instead of an object.
maiku@pidgin.im
parents:
29148
diff
changeset
|
57 g_param_spec_string("conference-type", |
29148
af08588c06f5
Add the conference-type property to the media backend interface.
maiku@pidgin.im
parents:
29145
diff
changeset
|
58 "Conference Type", |
af08588c06f5
Add the conference-type property to the media backend interface.
maiku@pidgin.im
parents:
29145
diff
changeset
|
59 "The type of conference that this backend " |
af08588c06f5
Add the conference-type property to the media backend interface.
maiku@pidgin.im
parents:
29145
diff
changeset
|
60 "has been created to provide.", |
29150
c9845a081a3a
Fix parameter to actually be a string instead of an object.
maiku@pidgin.im
parents:
29148
diff
changeset
|
61 NULL, |
29148
af08588c06f5
Add the conference-type property to the media backend interface.
maiku@pidgin.im
parents:
29145
diff
changeset
|
62 G_PARAM_CONSTRUCT_ONLY | G_PARAM_READWRITE)); |
29145
0ae9306de1f6
Add a media backend interface to handle different backends in addition to
maiku@pidgin.im
parents:
diff
changeset
|
63 g_object_class_install_property(iface, PROP_MEDIA, |
0ae9306de1f6
Add a media backend interface to handle different backends in addition to
maiku@pidgin.im
parents:
diff
changeset
|
64 g_param_spec_object("media", |
0ae9306de1f6
Add a media backend interface to handle different backends in addition to
maiku@pidgin.im
parents:
diff
changeset
|
65 "Purple Media", |
0ae9306de1f6
Add a media backend interface to handle different backends in addition to
maiku@pidgin.im
parents:
diff
changeset
|
66 "The media object that this backend is bound to.", |
0ae9306de1f6
Add a media backend interface to handle different backends in addition to
maiku@pidgin.im
parents:
diff
changeset
|
67 PURPLE_TYPE_MEDIA, |
0ae9306de1f6
Add a media backend interface to handle different backends in addition to
maiku@pidgin.im
parents:
diff
changeset
|
68 G_PARAM_CONSTRUCT_ONLY | G_PARAM_READWRITE)); |
0ae9306de1f6
Add a media backend interface to handle different backends in addition to
maiku@pidgin.im
parents:
diff
changeset
|
69 |
0ae9306de1f6
Add a media backend interface to handle different backends in addition to
maiku@pidgin.im
parents:
diff
changeset
|
70 purple_media_backend_signals[S_ERROR] = |
0ae9306de1f6
Add a media backend interface to handle different backends in addition to
maiku@pidgin.im
parents:
diff
changeset
|
71 g_signal_new("error", G_TYPE_FROM_CLASS(iface), |
0ae9306de1f6
Add a media backend interface to handle different backends in addition to
maiku@pidgin.im
parents:
diff
changeset
|
72 G_SIGNAL_RUN_LAST, 0, NULL, NULL, |
0ae9306de1f6
Add a media backend interface to handle different backends in addition to
maiku@pidgin.im
parents:
diff
changeset
|
73 g_cclosure_marshal_VOID__STRING, |
0ae9306de1f6
Add a media backend interface to handle different backends in addition to
maiku@pidgin.im
parents:
diff
changeset
|
74 G_TYPE_NONE, 1, G_TYPE_STRING); |
0ae9306de1f6
Add a media backend interface to handle different backends in addition to
maiku@pidgin.im
parents:
diff
changeset
|
75 purple_media_backend_signals[CANDIDATES_PREPARED] = |
0ae9306de1f6
Add a media backend interface to handle different backends in addition to
maiku@pidgin.im
parents:
diff
changeset
|
76 g_signal_new("candidates-prepared", |
0ae9306de1f6
Add a media backend interface to handle different backends in addition to
maiku@pidgin.im
parents:
diff
changeset
|
77 G_TYPE_FROM_CLASS(iface), |
0ae9306de1f6
Add a media backend interface to handle different backends in addition to
maiku@pidgin.im
parents:
diff
changeset
|
78 G_SIGNAL_RUN_LAST, 0, NULL, NULL, |
0ae9306de1f6
Add a media backend interface to handle different backends in addition to
maiku@pidgin.im
parents:
diff
changeset
|
79 purple_smarshal_VOID__STRING_STRING, |
0ae9306de1f6
Add a media backend interface to handle different backends in addition to
maiku@pidgin.im
parents:
diff
changeset
|
80 G_TYPE_NONE, 2, G_TYPE_STRING, |
0ae9306de1f6
Add a media backend interface to handle different backends in addition to
maiku@pidgin.im
parents:
diff
changeset
|
81 G_TYPE_STRING); |
0ae9306de1f6
Add a media backend interface to handle different backends in addition to
maiku@pidgin.im
parents:
diff
changeset
|
82 purple_media_backend_signals[CODECS_CHANGED] = |
0ae9306de1f6
Add a media backend interface to handle different backends in addition to
maiku@pidgin.im
parents:
diff
changeset
|
83 g_signal_new("codecs-changed", |
0ae9306de1f6
Add a media backend interface to handle different backends in addition to
maiku@pidgin.im
parents:
diff
changeset
|
84 G_TYPE_FROM_CLASS(iface), |
0ae9306de1f6
Add a media backend interface to handle different backends in addition to
maiku@pidgin.im
parents:
diff
changeset
|
85 G_SIGNAL_RUN_LAST, 0, NULL, NULL, |
0ae9306de1f6
Add a media backend interface to handle different backends in addition to
maiku@pidgin.im
parents:
diff
changeset
|
86 g_cclosure_marshal_VOID__STRING, |
0ae9306de1f6
Add a media backend interface to handle different backends in addition to
maiku@pidgin.im
parents:
diff
changeset
|
87 G_TYPE_NONE, 1, G_TYPE_STRING); |
0ae9306de1f6
Add a media backend interface to handle different backends in addition to
maiku@pidgin.im
parents:
diff
changeset
|
88 purple_media_backend_signals[NEW_CANDIDATE] = |
0ae9306de1f6
Add a media backend interface to handle different backends in addition to
maiku@pidgin.im
parents:
diff
changeset
|
89 g_signal_new("new-candidate", |
0ae9306de1f6
Add a media backend interface to handle different backends in addition to
maiku@pidgin.im
parents:
diff
changeset
|
90 G_TYPE_FROM_CLASS(iface), |
0ae9306de1f6
Add a media backend interface to handle different backends in addition to
maiku@pidgin.im
parents:
diff
changeset
|
91 G_SIGNAL_RUN_LAST, 0, NULL, NULL, |
0ae9306de1f6
Add a media backend interface to handle different backends in addition to
maiku@pidgin.im
parents:
diff
changeset
|
92 purple_smarshal_VOID__POINTER_POINTER_OBJECT, |
0ae9306de1f6
Add a media backend interface to handle different backends in addition to
maiku@pidgin.im
parents:
diff
changeset
|
93 G_TYPE_NONE, 3, G_TYPE_POINTER, |
0ae9306de1f6
Add a media backend interface to handle different backends in addition to
maiku@pidgin.im
parents:
diff
changeset
|
94 G_TYPE_POINTER, PURPLE_TYPE_MEDIA_CANDIDATE); |
0ae9306de1f6
Add a media backend interface to handle different backends in addition to
maiku@pidgin.im
parents:
diff
changeset
|
95 purple_media_backend_signals[ACTIVE_CANDIDATE_PAIR] = |
0ae9306de1f6
Add a media backend interface to handle different backends in addition to
maiku@pidgin.im
parents:
diff
changeset
|
96 g_signal_new("active-candidate-pair", |
0ae9306de1f6
Add a media backend interface to handle different backends in addition to
maiku@pidgin.im
parents:
diff
changeset
|
97 G_TYPE_FROM_CLASS(iface), |
0ae9306de1f6
Add a media backend interface to handle different backends in addition to
maiku@pidgin.im
parents:
diff
changeset
|
98 G_SIGNAL_RUN_LAST, 0, NULL, NULL, |
0ae9306de1f6
Add a media backend interface to handle different backends in addition to
maiku@pidgin.im
parents:
diff
changeset
|
99 purple_smarshal_VOID__STRING_STRING_OBJECT_OBJECT, |
0ae9306de1f6
Add a media backend interface to handle different backends in addition to
maiku@pidgin.im
parents:
diff
changeset
|
100 G_TYPE_NONE, 4, G_TYPE_STRING, G_TYPE_STRING, |
0ae9306de1f6
Add a media backend interface to handle different backends in addition to
maiku@pidgin.im
parents:
diff
changeset
|
101 PURPLE_TYPE_MEDIA_CANDIDATE, |
0ae9306de1f6
Add a media backend interface to handle different backends in addition to
maiku@pidgin.im
parents:
diff
changeset
|
102 PURPLE_TYPE_MEDIA_CANDIDATE); |
0ae9306de1f6
Add a media backend interface to handle different backends in addition to
maiku@pidgin.im
parents:
diff
changeset
|
103 |
0ae9306de1f6
Add a media backend interface to handle different backends in addition to
maiku@pidgin.im
parents:
diff
changeset
|
104 is_initialized = TRUE; |
0ae9306de1f6
Add a media backend interface to handle different backends in addition to
maiku@pidgin.im
parents:
diff
changeset
|
105 } |
0ae9306de1f6
Add a media backend interface to handle different backends in addition to
maiku@pidgin.im
parents:
diff
changeset
|
106 |
0ae9306de1f6
Add a media backend interface to handle different backends in addition to
maiku@pidgin.im
parents:
diff
changeset
|
107 GType |
0ae9306de1f6
Add a media backend interface to handle different backends in addition to
maiku@pidgin.im
parents:
diff
changeset
|
108 purple_media_backend_get_type(void) |
0ae9306de1f6
Add a media backend interface to handle different backends in addition to
maiku@pidgin.im
parents:
diff
changeset
|
109 { |
0ae9306de1f6
Add a media backend interface to handle different backends in addition to
maiku@pidgin.im
parents:
diff
changeset
|
110 static GType iface_type = 0; |
0ae9306de1f6
Add a media backend interface to handle different backends in addition to
maiku@pidgin.im
parents:
diff
changeset
|
111 if (iface_type == 0) { |
0ae9306de1f6
Add a media backend interface to handle different backends in addition to
maiku@pidgin.im
parents:
diff
changeset
|
112 static const GTypeInfo info = { |
0ae9306de1f6
Add a media backend interface to handle different backends in addition to
maiku@pidgin.im
parents:
diff
changeset
|
113 sizeof(PurpleMediaBackendIface), |
0ae9306de1f6
Add a media backend interface to handle different backends in addition to
maiku@pidgin.im
parents:
diff
changeset
|
114 purple_media_backend_base_init, |
0ae9306de1f6
Add a media backend interface to handle different backends in addition to
maiku@pidgin.im
parents:
diff
changeset
|
115 NULL, |
0ae9306de1f6
Add a media backend interface to handle different backends in addition to
maiku@pidgin.im
parents:
diff
changeset
|
116 NULL, |
0ae9306de1f6
Add a media backend interface to handle different backends in addition to
maiku@pidgin.im
parents:
diff
changeset
|
117 NULL, |
0ae9306de1f6
Add a media backend interface to handle different backends in addition to
maiku@pidgin.im
parents:
diff
changeset
|
118 NULL, |
0ae9306de1f6
Add a media backend interface to handle different backends in addition to
maiku@pidgin.im
parents:
diff
changeset
|
119 0, |
0ae9306de1f6
Add a media backend interface to handle different backends in addition to
maiku@pidgin.im
parents:
diff
changeset
|
120 0, |
0ae9306de1f6
Add a media backend interface to handle different backends in addition to
maiku@pidgin.im
parents:
diff
changeset
|
121 NULL, |
0ae9306de1f6
Add a media backend interface to handle different backends in addition to
maiku@pidgin.im
parents:
diff
changeset
|
122 NULL |
0ae9306de1f6
Add a media backend interface to handle different backends in addition to
maiku@pidgin.im
parents:
diff
changeset
|
123 }; |
0ae9306de1f6
Add a media backend interface to handle different backends in addition to
maiku@pidgin.im
parents:
diff
changeset
|
124 |
0ae9306de1f6
Add a media backend interface to handle different backends in addition to
maiku@pidgin.im
parents:
diff
changeset
|
125 iface_type = g_type_register_static (G_TYPE_INTERFACE, |
0ae9306de1f6
Add a media backend interface to handle different backends in addition to
maiku@pidgin.im
parents:
diff
changeset
|
126 "PurpleMediaBackend", &info, 0); |
0ae9306de1f6
Add a media backend interface to handle different backends in addition to
maiku@pidgin.im
parents:
diff
changeset
|
127 } |
0ae9306de1f6
Add a media backend interface to handle different backends in addition to
maiku@pidgin.im
parents:
diff
changeset
|
128 |
0ae9306de1f6
Add a media backend interface to handle different backends in addition to
maiku@pidgin.im
parents:
diff
changeset
|
129 return iface_type; |
0ae9306de1f6
Add a media backend interface to handle different backends in addition to
maiku@pidgin.im
parents:
diff
changeset
|
130 } |
0ae9306de1f6
Add a media backend interface to handle different backends in addition to
maiku@pidgin.im
parents:
diff
changeset
|
131 |
0ae9306de1f6
Add a media backend interface to handle different backends in addition to
maiku@pidgin.im
parents:
diff
changeset
|
132 gboolean |
0ae9306de1f6
Add a media backend interface to handle different backends in addition to
maiku@pidgin.im
parents:
diff
changeset
|
133 purple_media_backend_add_stream(PurpleMediaBackend *self, |
0ae9306de1f6
Add a media backend interface to handle different backends in addition to
maiku@pidgin.im
parents:
diff
changeset
|
134 const gchar *sess_id, const gchar *who, |
0ae9306de1f6
Add a media backend interface to handle different backends in addition to
maiku@pidgin.im
parents:
diff
changeset
|
135 PurpleMediaSessionType type, gboolean initiator, |
0ae9306de1f6
Add a media backend interface to handle different backends in addition to
maiku@pidgin.im
parents:
diff
changeset
|
136 const gchar *transmitter, |
0ae9306de1f6
Add a media backend interface to handle different backends in addition to
maiku@pidgin.im
parents:
diff
changeset
|
137 guint num_params, GParameter *params) |
0ae9306de1f6
Add a media backend interface to handle different backends in addition to
maiku@pidgin.im
parents:
diff
changeset
|
138 { |
0ae9306de1f6
Add a media backend interface to handle different backends in addition to
maiku@pidgin.im
parents:
diff
changeset
|
139 g_return_val_if_fail(PURPLE_IS_MEDIA_BACKEND(self), FALSE); |
0ae9306de1f6
Add a media backend interface to handle different backends in addition to
maiku@pidgin.im
parents:
diff
changeset
|
140 return PURPLE_MEDIA_BACKEND_GET_INTERFACE(self)->add_stream(self, |
0ae9306de1f6
Add a media backend interface to handle different backends in addition to
maiku@pidgin.im
parents:
diff
changeset
|
141 sess_id, who, type, initiator, transmitter, |
0ae9306de1f6
Add a media backend interface to handle different backends in addition to
maiku@pidgin.im
parents:
diff
changeset
|
142 num_params, params); |
0ae9306de1f6
Add a media backend interface to handle different backends in addition to
maiku@pidgin.im
parents:
diff
changeset
|
143 } |
0ae9306de1f6
Add a media backend interface to handle different backends in addition to
maiku@pidgin.im
parents:
diff
changeset
|
144 |
0ae9306de1f6
Add a media backend interface to handle different backends in addition to
maiku@pidgin.im
parents:
diff
changeset
|
145 void |
0ae9306de1f6
Add a media backend interface to handle different backends in addition to
maiku@pidgin.im
parents:
diff
changeset
|
146 purple_media_backend_add_remote_candidates(PurpleMediaBackend *self, |
0ae9306de1f6
Add a media backend interface to handle different backends in addition to
maiku@pidgin.im
parents:
diff
changeset
|
147 const gchar *sess_id, const gchar *participant, |
0ae9306de1f6
Add a media backend interface to handle different backends in addition to
maiku@pidgin.im
parents:
diff
changeset
|
148 GList *remote_candidates) |
0ae9306de1f6
Add a media backend interface to handle different backends in addition to
maiku@pidgin.im
parents:
diff
changeset
|
149 { |
0ae9306de1f6
Add a media backend interface to handle different backends in addition to
maiku@pidgin.im
parents:
diff
changeset
|
150 g_return_if_fail(PURPLE_IS_MEDIA_BACKEND(self)); |
0ae9306de1f6
Add a media backend interface to handle different backends in addition to
maiku@pidgin.im
parents:
diff
changeset
|
151 PURPLE_MEDIA_BACKEND_GET_INTERFACE(self)->add_remote_candidates(self, |
0ae9306de1f6
Add a media backend interface to handle different backends in addition to
maiku@pidgin.im
parents:
diff
changeset
|
152 sess_id, participant, remote_candidates); |
0ae9306de1f6
Add a media backend interface to handle different backends in addition to
maiku@pidgin.im
parents:
diff
changeset
|
153 } |
0ae9306de1f6
Add a media backend interface to handle different backends in addition to
maiku@pidgin.im
parents:
diff
changeset
|
154 |
0ae9306de1f6
Add a media backend interface to handle different backends in addition to
maiku@pidgin.im
parents:
diff
changeset
|
155 |
0ae9306de1f6
Add a media backend interface to handle different backends in addition to
maiku@pidgin.im
parents:
diff
changeset
|
156 GList * |
0ae9306de1f6
Add a media backend interface to handle different backends in addition to
maiku@pidgin.im
parents:
diff
changeset
|
157 purple_media_backend_get_codecs(PurpleMediaBackend *self, |
0ae9306de1f6
Add a media backend interface to handle different backends in addition to
maiku@pidgin.im
parents:
diff
changeset
|
158 const gchar *sess_id) |
0ae9306de1f6
Add a media backend interface to handle different backends in addition to
maiku@pidgin.im
parents:
diff
changeset
|
159 { |
0ae9306de1f6
Add a media backend interface to handle different backends in addition to
maiku@pidgin.im
parents:
diff
changeset
|
160 g_return_val_if_fail(PURPLE_IS_MEDIA_BACKEND(self), NULL); |
0ae9306de1f6
Add a media backend interface to handle different backends in addition to
maiku@pidgin.im
parents:
diff
changeset
|
161 return PURPLE_MEDIA_BACKEND_GET_INTERFACE(self)->get_codecs(self, |
0ae9306de1f6
Add a media backend interface to handle different backends in addition to
maiku@pidgin.im
parents:
diff
changeset
|
162 sess_id); |
0ae9306de1f6
Add a media backend interface to handle different backends in addition to
maiku@pidgin.im
parents:
diff
changeset
|
163 } |
0ae9306de1f6
Add a media backend interface to handle different backends in addition to
maiku@pidgin.im
parents:
diff
changeset
|
164 |
0ae9306de1f6
Add a media backend interface to handle different backends in addition to
maiku@pidgin.im
parents:
diff
changeset
|
165 GList * |
0ae9306de1f6
Add a media backend interface to handle different backends in addition to
maiku@pidgin.im
parents:
diff
changeset
|
166 purple_media_backend_get_local_candidates(PurpleMediaBackend *self, |
0ae9306de1f6
Add a media backend interface to handle different backends in addition to
maiku@pidgin.im
parents:
diff
changeset
|
167 const gchar *sess_id, const gchar *participant) |
0ae9306de1f6
Add a media backend interface to handle different backends in addition to
maiku@pidgin.im
parents:
diff
changeset
|
168 { |
0ae9306de1f6
Add a media backend interface to handle different backends in addition to
maiku@pidgin.im
parents:
diff
changeset
|
169 g_return_val_if_fail(PURPLE_IS_MEDIA_BACKEND(self), NULL); |
0ae9306de1f6
Add a media backend interface to handle different backends in addition to
maiku@pidgin.im
parents:
diff
changeset
|
170 return PURPLE_MEDIA_BACKEND_GET_INTERFACE(self)-> |
0ae9306de1f6
Add a media backend interface to handle different backends in addition to
maiku@pidgin.im
parents:
diff
changeset
|
171 get_local_candidates(self, |
0ae9306de1f6
Add a media backend interface to handle different backends in addition to
maiku@pidgin.im
parents:
diff
changeset
|
172 sess_id, participant); |
0ae9306de1f6
Add a media backend interface to handle different backends in addition to
maiku@pidgin.im
parents:
diff
changeset
|
173 } |
0ae9306de1f6
Add a media backend interface to handle different backends in addition to
maiku@pidgin.im
parents:
diff
changeset
|
174 |
0ae9306de1f6
Add a media backend interface to handle different backends in addition to
maiku@pidgin.im
parents:
diff
changeset
|
175 void |
0ae9306de1f6
Add a media backend interface to handle different backends in addition to
maiku@pidgin.im
parents:
diff
changeset
|
176 purple_media_backend_set_remote_codecs(PurpleMediaBackend *self, |
0ae9306de1f6
Add a media backend interface to handle different backends in addition to
maiku@pidgin.im
parents:
diff
changeset
|
177 const gchar *sess_id, const gchar *participant, |
0ae9306de1f6
Add a media backend interface to handle different backends in addition to
maiku@pidgin.im
parents:
diff
changeset
|
178 GList *codecs) |
0ae9306de1f6
Add a media backend interface to handle different backends in addition to
maiku@pidgin.im
parents:
diff
changeset
|
179 { |
0ae9306de1f6
Add a media backend interface to handle different backends in addition to
maiku@pidgin.im
parents:
diff
changeset
|
180 g_return_if_fail(PURPLE_IS_MEDIA_BACKEND(self)); |
0ae9306de1f6
Add a media backend interface to handle different backends in addition to
maiku@pidgin.im
parents:
diff
changeset
|
181 PURPLE_MEDIA_BACKEND_GET_INTERFACE(self)->set_remote_codecs(self, |
0ae9306de1f6
Add a media backend interface to handle different backends in addition to
maiku@pidgin.im
parents:
diff
changeset
|
182 sess_id, participant, codecs); |
0ae9306de1f6
Add a media backend interface to handle different backends in addition to
maiku@pidgin.im
parents:
diff
changeset
|
183 } |
0ae9306de1f6
Add a media backend interface to handle different backends in addition to
maiku@pidgin.im
parents:
diff
changeset
|
184 |
0ae9306de1f6
Add a media backend interface to handle different backends in addition to
maiku@pidgin.im
parents:
diff
changeset
|
185 void |
0ae9306de1f6
Add a media backend interface to handle different backends in addition to
maiku@pidgin.im
parents:
diff
changeset
|
186 purple_media_backend_set_send_codec(PurpleMediaBackend *self, |
0ae9306de1f6
Add a media backend interface to handle different backends in addition to
maiku@pidgin.im
parents:
diff
changeset
|
187 const gchar *sess_id, PurpleMediaCodec *codec) |
0ae9306de1f6
Add a media backend interface to handle different backends in addition to
maiku@pidgin.im
parents:
diff
changeset
|
188 { |
0ae9306de1f6
Add a media backend interface to handle different backends in addition to
maiku@pidgin.im
parents:
diff
changeset
|
189 g_return_if_fail(PURPLE_IS_MEDIA_BACKEND(self)); |
0ae9306de1f6
Add a media backend interface to handle different backends in addition to
maiku@pidgin.im
parents:
diff
changeset
|
190 PURPLE_MEDIA_BACKEND_GET_INTERFACE(self)->set_send_codec(self, |
0ae9306de1f6
Add a media backend interface to handle different backends in addition to
maiku@pidgin.im
parents:
diff
changeset
|
191 sess_id, codec); |
0ae9306de1f6
Add a media backend interface to handle different backends in addition to
maiku@pidgin.im
parents:
diff
changeset
|
192 } |