diff libpurple/mediamanager.h @ 26431:1ae3af12095a

Move GStreamer related media functions into its own header.
author Mike Ruprecht <maiku@soc.pidgin.im>
date Mon, 23 Mar 2009 02:59:18 +0000
parents 75a02ffb0139
children 064657db29c4
line wrap: on
line diff
--- a/libpurple/mediamanager.h	Mon Mar 23 01:43:25 2009 +0000
+++ b/libpurple/mediamanager.h	Mon Mar 23 02:59:18 2009 +0000
@@ -50,8 +50,6 @@
 typedef struct _PurpleMediaManagerClass PurpleMediaManagerClass;
 /** @copydoc _PurpleMediaManagerPrivate */
 typedef struct _PurpleMediaManagerPrivate PurpleMediaManagerPrivate;
-/** @copydoc _PurpleMediaElementInfo */
-typedef struct _PurpleMediaElementInfo PurpleMediaElementInfo;
 
 /** The media manager class. */
 struct _PurpleMediaManagerClass
@@ -66,37 +64,6 @@
 	PurpleMediaManagerPrivate *priv; /**< Private data for the manager. */
 };
 
-typedef enum {
-	PURPLE_MEDIA_ELEMENT_AUDIO = 1,			/** supports audio */
-	PURPLE_MEDIA_ELEMENT_VIDEO = 1 << 1,		/** supports video */
-	PURPLE_MEDIA_ELEMENT_AUDIO_VIDEO = PURPLE_MEDIA_ELEMENT_AUDIO
-			| PURPLE_MEDIA_ELEMENT_VIDEO, 	/** supports audio and video */
-
-	PURPLE_MEDIA_ELEMENT_NO_SRCS = 0,		/** has no src pads */
-	PURPLE_MEDIA_ELEMENT_ONE_SRC = 1 << 2,		/** has one src pad */
-	PURPLE_MEDIA_ELEMENT_MULTI_SRC = 1 << 3, 	/** has multiple src pads */
-	PURPLE_MEDIA_ELEMENT_REQUEST_SRC = 1 << 4, 	/** src pads must be requested */
-
-	PURPLE_MEDIA_ELEMENT_NO_SINKS = 0,		/** has no sink pads */
-	PURPLE_MEDIA_ELEMENT_ONE_SINK = 1 << 5, 	/** has one sink pad */
-	PURPLE_MEDIA_ELEMENT_MULTI_SINK = 1 << 6, 	/** has multiple sink pads */
-	PURPLE_MEDIA_ELEMENT_REQUEST_SINK = 1 << 7, 	/** sink pads must be requested */
-
-	PURPLE_MEDIA_ELEMENT_UNIQUE = 1 << 8,		/** This element is unique and
-							 only one instance of it should
-							 be created at a time */
-
-	PURPLE_MEDIA_ELEMENT_SRC = 1 << 9,		/** can be set as an active src */
-	PURPLE_MEDIA_ELEMENT_SINK = 1 << 10,		/** can be set as an active sink */
-} PurpleMediaElementType;
-
-struct _PurpleMediaElementInfo
-{
-	const gchar *id;
-	PurpleMediaElementType type;
-	GstElement *(*create)(void);
-};
-
 #ifdef __cplusplus
 extern "C" {
 #endif
@@ -121,16 +88,6 @@
 PurpleMediaManager *purple_media_manager_get(void);
 
 /**
- * Gets the pipeline from the media manager.
- *
- * @param manager The media manager to get the pipeline from.
- *
- * @return The pipeline.
- */
-GstElement *
-purple_media_manager_get_pipeline(PurpleMediaManager *manager);
-
-/**
  * Creates a media session.
  *
  * @param manager The media manager to create the session under.
@@ -177,25 +134,6 @@
 				  PurpleMedia *media);
 
 /**
- * Returns a GStreamer source or sink for audio or video.
- *
- * @param manager The media manager to use to obtain the source/sink.
- * @param type The type of source/sink to get.
- */
-GstElement *purple_media_manager_get_element(PurpleMediaManager *manager,
-		PurpleMediaSessionType type);
-
-PurpleMediaElementInfo *purple_media_manager_get_element_info(
-		PurpleMediaManager *manager, const gchar *name);
-gboolean purple_media_manager_register_element(PurpleMediaManager *manager,
-		PurpleMediaElementInfo *info);
-gboolean purple_media_manager_unregister_element(PurpleMediaManager *manager,
-		const gchar *name);
-gboolean purple_media_manager_set_active_element(PurpleMediaManager *manager,
-		PurpleMediaElementInfo *info);
-PurpleMediaElementInfo *purple_media_manager_get_active_element(
-		PurpleMediaManager *manager, PurpleMediaElementType type);
-/**
  * This shouldn't be called outside of mediamanager.c and media.c
  */
 gboolean purple_media_manager_create_output_window(