Mercurial > pidgin.yaz
comparison libpurple/mediamanager.h @ 26163:521366dfd8db
Implement functions to register and unregister media elements for use in
allowing plugins and GUIs to alter the pipeline.
author | Mike Ruprecht <maiku@soc.pidgin.im> |
---|---|
date | Tue, 03 Feb 2009 22:37:24 +0000 |
parents | b93df44a5afb |
children | fc100e71de5d |
comparison
equal
deleted
inserted
replaced
26162:88f183f7dfc7 | 26163:521366dfd8db |
---|---|
48 typedef struct _PurpleMediaManager PurpleMediaManager; | 48 typedef struct _PurpleMediaManager PurpleMediaManager; |
49 /** @copydoc _PurpleMediaManagerClass */ | 49 /** @copydoc _PurpleMediaManagerClass */ |
50 typedef struct _PurpleMediaManagerClass PurpleMediaManagerClass; | 50 typedef struct _PurpleMediaManagerClass PurpleMediaManagerClass; |
51 /** @copydoc _PurpleMediaManagerPrivate */ | 51 /** @copydoc _PurpleMediaManagerPrivate */ |
52 typedef struct _PurpleMediaManagerPrivate PurpleMediaManagerPrivate; | 52 typedef struct _PurpleMediaManagerPrivate PurpleMediaManagerPrivate; |
53 /** @copydoc _PurpleMediaElementInfo */ | |
54 typedef struct _PurpleMediaElementInfo PurpleMediaElementInfo; | |
53 | 55 |
54 /** The media manager class. */ | 56 /** The media manager class. */ |
55 struct _PurpleMediaManagerClass | 57 struct _PurpleMediaManagerClass |
56 { | 58 { |
57 GObjectClass parent_class; /**< The parent class. */ | 59 GObjectClass parent_class; /**< The parent class. */ |
60 /** The media manager's data. */ | 62 /** The media manager's data. */ |
61 struct _PurpleMediaManager | 63 struct _PurpleMediaManager |
62 { | 64 { |
63 GObject parent; /**< The parent of this manager. */ | 65 GObject parent; /**< The parent of this manager. */ |
64 PurpleMediaManagerPrivate *priv; /**< Private data for the manager. */ | 66 PurpleMediaManagerPrivate *priv; /**< Private data for the manager. */ |
67 }; | |
68 | |
69 struct _PurpleMediaElementInfo | |
70 { | |
71 const gchar *id; | |
65 }; | 72 }; |
66 | 73 |
67 #ifdef __cplusplus | 74 #ifdef __cplusplus |
68 extern "C" { | 75 extern "C" { |
69 #endif | 76 #endif |
129 * @param type The type of source/sink to get. | 136 * @param type The type of source/sink to get. |
130 */ | 137 */ |
131 GstElement *purple_media_manager_get_element(PurpleMediaManager *manager, | 138 GstElement *purple_media_manager_get_element(PurpleMediaManager *manager, |
132 PurpleMediaSessionType type); | 139 PurpleMediaSessionType type); |
133 | 140 |
141 PurpleMediaElementInfo *purple_media_manager_get_element_info( | |
142 PurpleMediaManager *manager, const gchar *name); | |
143 gboolean purple_media_manager_register_element(PurpleMediaManager *manager, | |
144 PurpleMediaElementInfo *info); | |
145 gboolean purple_media_manager_unregister_element(PurpleMediaManager *manager, | |
146 const gchar *name); | |
134 /*}@*/ | 147 /*}@*/ |
135 | 148 |
136 #ifdef __cplusplus | 149 #ifdef __cplusplus |
137 } | 150 } |
138 #endif | 151 #endif |