Mercurial > pidgin
diff libpurple/mediamanager.c @ 26350:064657db29c4
Properly wrap media functions so the API doesn't disappear when USE_VV
is not defined.
author | Mike Ruprecht <maiku@soc.pidgin.im> |
---|---|
date | Mon, 23 Mar 2009 04:00:11 +0000 |
parents | 1ae3af12095a |
children | 6bcf5ad967ea |
line wrap: on
line diff
--- a/libpurple/mediamanager.c Mon Mar 23 02:59:18 2009 +0000 +++ b/libpurple/mediamanager.c Mon Mar 23 04:00:11 2009 +0000 @@ -49,6 +49,7 @@ gulong window_id; GstElement *sink; }; +#endif struct _PurpleMediaManagerPrivate { @@ -155,13 +156,18 @@ PurpleMediaManager * purple_media_manager_get() { +#ifdef USE_VV static PurpleMediaManager *manager = NULL; if (manager == NULL) manager = PURPLE_MEDIA_MANAGER(g_object_new(purple_media_manager_get_type(), NULL)); return manager; +#else + return NULL; +#endif } +#ifdef USE_VV static gboolean pipeline_bus_call(GstBus *bus, GstMessage *msg, PurpleMediaManager *manager) { @@ -192,10 +198,12 @@ } return TRUE; } +#endif GstElement * purple_media_manager_get_pipeline(PurpleMediaManager *manager) { +#ifdef USE_VV g_return_val_if_fail(PURPLE_IS_MEDIA_MANAGER(manager), NULL); if (manager->priv->pipeline == NULL) { @@ -216,6 +224,9 @@ } return manager->priv->pipeline; +#else + return NULL; +#endif } PurpleMedia * @@ -225,6 +236,7 @@ const char *remote_user, gboolean initiator) { +#ifdef USE_VV PurpleMedia *media; FsConference *conference = FS_CONFERENCE(gst_element_factory_make(conference_type, NULL)); GstStateChangeReturn ret; @@ -266,18 +278,26 @@ manager->priv->medias = g_list_append(manager->priv->medias, media); return media; +#else + return NULL; +#endif } GList * purple_media_manager_get_media(PurpleMediaManager *manager) { +#ifdef USE_VV return manager->priv->medias; +#else + return NULL; +#endif } GList * purple_media_manager_get_media_by_connection(PurpleMediaManager *manager, PurpleConnection *pc) { +#ifdef USE_VV GList *media = NULL; GList *iter; @@ -291,22 +311,28 @@ } return media; +#else + return NULL; +#endif } void purple_media_manager_remove_media(PurpleMediaManager *manager, PurpleMedia *media) { +#ifdef USE_VV GList *list = g_list_find(manager->priv->medias, media); if (list) manager->priv->medias = g_list_delete_link(manager->priv->medias, list); +#endif } GstElement * purple_media_manager_get_element(PurpleMediaManager *manager, PurpleMediaSessionType type) { +#ifdef USE_VV GstElement *ret = NULL; /* TODO: If src, retrieve current src */ @@ -329,12 +355,16 @@ purple_debug_error("media", "Error creating source or sink\n"); return ret; +#else + return NULL; +#endif } PurpleMediaElementInfo * purple_media_manager_get_element_info(PurpleMediaManager *manager, const gchar *id) { +#ifdef USE_VV GList *iter; g_return_val_if_fail(PURPLE_IS_MEDIA_MANAGER(manager), NULL); @@ -346,6 +376,7 @@ if (!strcmp(info->id, id)) return info; } +#endif return NULL; } @@ -354,6 +385,7 @@ purple_media_manager_register_element(PurpleMediaManager *manager, PurpleMediaElementInfo *info) { +#ifdef USE_VV g_return_val_if_fail(PURPLE_IS_MEDIA_MANAGER(manager), FALSE); g_return_val_if_fail(info != NULL, FALSE); @@ -363,12 +395,16 @@ manager->priv->elements = g_list_prepend(manager->priv->elements, info); return TRUE; +#else + return FALSE; +#endif } gboolean purple_media_manager_unregister_element(PurpleMediaManager *manager, const gchar *id) { +#ifdef USE_VV PurpleMediaElementInfo *info; g_return_val_if_fail(PURPLE_IS_MEDIA_MANAGER(manager), FALSE); @@ -390,12 +426,16 @@ manager->priv->elements = g_list_remove( manager->priv->elements, info); return TRUE; +#else + return FALSE; +#endif } gboolean purple_media_manager_set_active_element(PurpleMediaManager *manager, PurpleMediaElementInfo *info) { +#ifdef USE_VV gboolean ret = FALSE; g_return_val_if_fail(PURPLE_IS_MEDIA_MANAGER(manager), FALSE); @@ -426,12 +466,16 @@ } return ret; +#else + return FALSE; +#endif } PurpleMediaElementInfo * purple_media_manager_get_active_element(PurpleMediaManager *manager, PurpleMediaElementType type) { +#ifdef USE_VV g_return_val_if_fail(PURPLE_IS_MEDIA_MANAGER(manager), NULL); if (type & PURPLE_MEDIA_ELEMENT_SRC) { @@ -445,10 +489,12 @@ else if (type & PURPLE_MEDIA_ELEMENT_VIDEO) return manager->priv->video_sink; } +#endif return NULL; } +#ifdef USE_VV static void window_id_cb(GstBus *bus, GstMessage *msg, PurpleMediaOutputWindow *ow) { @@ -466,12 +512,14 @@ GST_MESSAGE_SRC(msg)), ow->window_id); } } +#endif gboolean purple_media_manager_create_output_window(PurpleMediaManager *manager, PurpleMedia *media, const gchar *session_id, const gchar *participant) { +#ifdef USE_VV GList *iter; g_return_val_if_fail(PURPLE_IS_MEDIA(media), FALSE); @@ -529,6 +577,9 @@ } } return TRUE; +#else + return FALSE; +#endif } gulong @@ -536,6 +587,7 @@ PurpleMedia *media, const gchar *session_id, const gchar *participant, gulong window_id) { +#ifdef USE_VV PurpleMediaOutputWindow *output_window; g_return_val_if_fail(PURPLE_IS_MEDIA_MANAGER(manager), FALSE); @@ -556,12 +608,16 @@ media, session_id, participant); return output_window->id; +#else + return 0; +#endif } gboolean purple_media_manager_remove_output_window(PurpleMediaManager *manager, gulong output_window_id) { +#ifdef USE_VV PurpleMediaOutputWindow *output_window = NULL; GList *iter; @@ -605,6 +661,9 @@ g_free(output_window); return TRUE; +#else + return FALSE; +#endif } void @@ -612,6 +671,7 @@ PurpleMedia *media, const gchar *session_id, const gchar *participant) { +#ifdef USE_VV GList *iter; g_return_if_fail(PURPLE_IS_MEDIA(media)); @@ -632,6 +692,6 @@ purple_media_manager_remove_output_window( manager, ow->id); } +#endif } -#endif /* USE_VV */