pidgin  2.13.0
About: Pidgin is a chat program (multi-protocol instant messaging client) which lets you log in to accounts on multiple chat networks simultaneously (old name "gaim").
  Fossies Dox: pidgin-2.13.0.tar.gz  ("inofficial" and yet experimental doxygen-generated source code documentation)  

backend-iface.h
Go to the documentation of this file.
1 
6 /* purple
7  *
8  * Purple is the legal property of its developers, whose names are too numerous
9  * to list here. Please refer to the COPYRIGHT file distributed with this
10  * source distribution.
11  *
12  * This program is free software; you can redistribute it and/or modify
13  * it under the terms of the GNU General Public License as published by
14  * the Free Software Foundation; either version 2 of the License, or
15  * (at your option) any later version.
16  *
17  * This program is distributed in the hope that it will be useful,
18  * but WITHOUT ANY WARRANTY; without even the implied warranty of
19  * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
20  * GNU General Public License for more details.
21  *
22  * You should have received a copy of the GNU General Public License
23  * along with this program; if not, write to the Free Software
24  * Foundation, Inc., 51 Franklin Street, Fifth Floor, Boston, MA 02111-1301 USA
25  */
26 
27 #ifndef _MEDIA_BACKEND_IFACE_H_
28 #define _MEDIA_BACKEND_IFACE_H_
29 
30 #include "codec.h"
31 #include "enum-types.h"
32 
33 #include <glib-object.h>
34 
35 G_BEGIN_DECLS
36 
37 #define PURPLE_TYPE_MEDIA_BACKEND (purple_media_backend_get_type())
38 #define PURPLE_IS_MEDIA_BACKEND(obj) (G_TYPE_CHECK_INSTANCE_TYPE((obj), PURPLE_TYPE_MEDIA_BACKEND))
39 #define PURPLE_MEDIA_BACKEND(obj) (G_TYPE_CHECK_INSTANCE_CAST((obj), PURPLE_TYPE_MEDIA_BACKEND, PurpleMediaBackend))
40 #define PURPLE_MEDIA_BACKEND_GET_INTERFACE(inst)(G_TYPE_INSTANCE_GET_INTERFACE((inst), PURPLE_TYPE_MEDIA_BACKEND, PurpleMediaBackendIface))
41 
43 typedef struct _PurpleMediaBackend PurpleMediaBackend;
46 
48 {
49  GTypeInterface parent_iface;
52  gboolean (*add_stream) (PurpleMediaBackend *self,
53  const gchar *sess_id, const gchar *who,
54  PurpleMediaSessionType type, gboolean initiator,
55  const gchar *transmitter,
56  guint num_params, GParameter *params);
58  const gchar *sess_id, const gchar *participant,
59  GList *remote_candidates);
60  gboolean (*codecs_ready) (PurpleMediaBackend *self,
61  const gchar *sess_id);
62  GList *(*get_codecs) (PurpleMediaBackend *self,
63  const gchar *sess_id);
64  GList *(*get_local_candidates) (PurpleMediaBackend *self,
65  const gchar *sess_id, const gchar *participant);
67  const gchar *sess_id, const gchar *participant,
68  GList *codecs);
69  gboolean (*set_send_codec) (PurpleMediaBackend *self,
70  const gchar *sess_id, PurpleMediaCodec *codec);
72  const gchar *sess_id, const gchar *cipher,
73  const gchar *auth, const gchar *key, gsize key_len);
75  const gchar *sess_id, const gchar *participant,
76  const gchar *cipher, const gchar *auth,
77  const gchar *key, gsize key_len);
79  guint num_params, GParameter *params);
80  const gchar **(*get_available_params) (void);
81  gboolean (*send_dtmf) (PurpleMediaBackend *self,
82  const gchar *sess_id, gchar dtmf, guint8 volume,
83  guint16 duration);
85  const gchar *sess_id, const gchar *participant, gboolean send_rtcp_mux);
86 };
87 
96 
114  const gchar *sess_id, const gchar *who,
115  PurpleMediaSessionType type, gboolean initiator,
116  const gchar *transmitter,
117  guint num_params, GParameter *params);
118 
130  const gchar *sess_id, const gchar *participant,
131  GList *remote_candidates);
132 
147  const gchar *sess_id);
148 
163  const gchar *sess_id);
164 
177  const gchar *sess_id, const gchar *participant);
178 
192  const gchar *sess_id, const gchar *participant,
193  GList *codecs);
194 
207  const gchar *sess_id, PurpleMediaCodec *codec);
208 
223  const gchar *sess_id, const gchar *cipher,
224  const gchar *auth, const gchar *key, gsize key_len);
225 
242  const gchar *sess_id, const gchar *participant,
243  const gchar *cipher, const gchar *auth,
244  const gchar *key, gsize key_len);
245 
256  guint num_params, GParameter *params);
257 
270 
285  const gchar *sess_id, const gchar *participant, gboolean send_rtcp_mux);
286 
287 
288 G_END_DECLS
289 
290 #endif /* _MEDIA_BACKEND_IFACE_H_ */
_PurpleMediaBackendIface::set_decryption_parameters
gboolean(* set_decryption_parameters)(PurpleMediaBackend *self, const gchar *sess_id, const gchar *participant, const gchar *cipher, const gchar *auth, const gchar *key, gsize key_len)
Definition: backend-iface.h:74
purple_media_backend_set_decryption_parameters
gboolean purple_media_backend_set_decryption_parameters(PurpleMediaBackend *self, const gchar *sess_id, const gchar *participant, const gchar *cipher, const gchar *auth, const gchar *key, gsize key_len)
Definition: backend-iface.c:211
purple_media_backend_set_remote_codecs
gboolean purple_media_backend_set_remote_codecs(PurpleMediaBackend *self, const gchar *sess_id, const gchar *participant, GList *codecs)
Definition: backend-iface.c:178
purple_media_backend_add_remote_candidates
void purple_media_backend_add_remote_candidates(PurpleMediaBackend *self, const gchar *sess_id, const gchar *participant, GList *remote_candidates)
Definition: backend-iface.c:140
_PurpleMediaBackendIface::set_send_rtcp_mux
gboolean(* set_send_rtcp_mux)(PurpleMediaBackend *self, const gchar *sess_id, const gchar *participant, gboolean send_rtcp_mux)
Definition: backend-iface.h:84
purple_media_backend_set_encryption_parameters
gboolean purple_media_backend_set_encryption_parameters(PurpleMediaBackend *self, const gchar *sess_id, const gchar *cipher, const gchar *auth, const gchar *key, gsize key_len)
Definition: backend-iface.c:197
purple_media_backend_get_codecs
GList * purple_media_backend_get_codecs(PurpleMediaBackend *self, const gchar *sess_id)
Definition: backend-iface.c:159
PurpleMediaSessionType
PurpleMediaSessionType
Definition: enum-types.h:91
purple_media_backend_add_stream
gboolean purple_media_backend_add_stream(PurpleMediaBackend *self, const gchar *sess_id, const gchar *who, PurpleMediaSessionType type, gboolean initiator, const gchar *transmitter, guint num_params, GParameter *params)
Definition: backend-iface.c:127
_PurpleMediaBackendIface::add_remote_candidates
void(* add_remote_candidates)(PurpleMediaBackend *self, const gchar *sess_id, const gchar *participant, GList *remote_candidates)
Definition: backend-iface.h:57
_PurpleMediaBackendIface::codecs_ready
gboolean(* codecs_ready)(PurpleMediaBackend *self, const gchar *sess_id)
Definition: backend-iface.h:60
purple_media_backend_get_available_params
const gchar ** purple_media_backend_get_available_params(PurpleMediaBackend *self)
Definition: backend-iface.c:234
codec.h
_PurpleMediaBackendIface::set_send_codec
gboolean(* set_send_codec)(PurpleMediaBackend *self, const gchar *sess_id, PurpleMediaCodec *codec)
Definition: backend-iface.h:69
purple_media_backend_set_params
void purple_media_backend_set_params(PurpleMediaBackend *self, guint num_params, GParameter *params)
Definition: backend-iface.c:226
_PurpleMediaBackendIface::set_remote_codecs
gboolean(* set_remote_codecs)(PurpleMediaBackend *self, const gchar *sess_id, const gchar *participant, GList *codecs)
Definition: backend-iface.h:66
purple_media_backend_codecs_ready
gboolean purple_media_backend_codecs_ready(PurpleMediaBackend *self, const gchar *sess_id)
Definition: backend-iface.c:150
_PurpleMediaBackendIface::parent_iface
GTypeInterface parent_iface
Definition: backend-iface.h:49
dbus-analyze-signals.type
string type
Definition: dbus-analyze-signals.py:42
purple_media_backend_get_local_candidates
GList * purple_media_backend_get_local_candidates(PurpleMediaBackend *self, const gchar *sess_id, const gchar *participant)
Definition: backend-iface.c:168
_PurpleMediaBackendIface::add_stream
gboolean(* add_stream)(PurpleMediaBackend *self, const gchar *sess_id, const gchar *who, PurpleMediaSessionType type, gboolean initiator, const gchar *transmitter, guint num_params, GParameter *params)
Definition: backend-iface.h:52
purple_media_backend_get_type
GType purple_media_backend_get_type(void)
Definition: backend-iface.c:102
_PurpleMediaBackendIface::send_dtmf
gboolean(* send_dtmf)(PurpleMediaBackend *self, const gchar *sess_id, gchar dtmf, guint8 volume, guint16 duration)
Definition: backend-iface.h:81
_PurpleMediaBackendIface
Definition: backend-iface.h:47
enum-types.h
_PurpleMediaCodec
Definition: codec.c:43
params
GList * params
Definition: gntbindable.c:48
PurpleMediaBackend
struct _PurpleMediaBackend PurpleMediaBackend
Definition: backend-iface.h:43
purple_media_backend_set_send_rtcp_mux
gboolean purple_media_backend_set_send_rtcp_mux(PurpleMediaBackend *self, const gchar *sess_id, const gchar *participant, gboolean send_rtcp_mux)
Definition: backend-iface.c:243
_PurpleMediaBackendIface::set_encryption_parameters
gboolean(* set_encryption_parameters)(PurpleMediaBackend *self, const gchar *sess_id, const gchar *cipher, const gchar *auth, const gchar *key, gsize key_len)
Definition: backend-iface.h:71
_PurpleMediaBackendIface::set_params
void(* set_params)(PurpleMediaBackend *self, guint num_params, GParameter *params)
Definition: backend-iface.h:78
purple_media_backend_set_send_codec
gboolean purple_media_backend_set_send_codec(PurpleMediaBackend *self, const gchar *sess_id, PurpleMediaCodec *codec)
Definition: backend-iface.c:188