More updates to the API docs.
[platform/upstream/gstreamer.git] / docs / gst / tmpl / gstplugin.sgml
index 0668663..b04e7d7 100644 (file)
@@ -7,25 +7,8 @@ Dynamically loadable Elements
 <!-- ##### SECTION Long_Description ##### -->
 <para>
 GStreamer is extensible so <classname>GstElements</classname> can be loaded at runtime. A plugin
-system can provide one or more of the following basic <application>GStreamer</application> 
-objects factories:
- <itemizedlist>
-  <listitem>
-   <para>
-    A #GstElementFactory: the components to build a pipeline.
-   </para>
-  </listitem>
-  <listitem>
-   <para>
-    A #GstTypeFactory: A MIME type and an optional typefind function.
-   </para>
-  </listitem>
-  <listitem>
-   <para>
-    A #GstAutoplugFactory: An object used to automatically construct pipelines.
-   </para>
-  </listitem>
- </itemizedlist>
+system can provide one or more of the basic <application>GStreamer</application> 
+#GstPluginFeature subclasses.
 </para>
 <para>
 A plugin should export a symbol plugin_desc that is a struct of type #GstPluginDesc. 
@@ -34,25 +17,22 @@ and will create a new #GstPlugin. It will then call the #GstPluginInitFunc funct
 that was provided in the plugin_desc.
 </para>
 <para>
-Optionally a new plugin is created with gst_plugin_new(). this function will return a handle
-to the GstPlugin or NULL if the plugin could not be created.
+Once you have a handle to a #GstPlugin, you can add any object that subclasses #GstPluginFeature.
 </para>
 <para>
-Once you have a handle to a #GstPlugin, you can add the different types of factories
-to it with gst_plugin_add_factory(), gst_plugin_add_type(), gst_plugin_add_autoplugger().
+use gst_plugin_find(), gst_plugin_get_list() and gst_plugin_get_feature_list()
+to query the plugin repository.
 </para>
 <para>
-use gst_plugin_find(), gst_plugin_get_list(), gst_plugin_get_factory_list(), gst_plugin_get_type_list() and
-gst_plugin_get_autoplug_list() to query the plugin repository.
-</para>
-<para>
-Plugins are always automaticlly loaded  so you don't need to call gst_plugin_load() explicitly 
-to bring it into memory. 
+Usually plugins are always automaticlly loaded so you don't need to call gst_plugin_load() explicitly 
+to bring it into memory. There are options to statically link plugins to an app or even
+use GStreamer without a plugin repository in which case gst_plugin_load() can be needed 
+to bring the plugin into memory.
 </para>
 
 <!-- ##### SECTION See_Also ##### -->
 <para>
-#GstElement, #GstType, #GstAutoplug
+#GstPluginFeature, #GstType, #GstAutoplug, #GstElementFactory
 </para>
 
 <!-- ##### STRUCT GstPlugin ##### -->
@@ -89,15 +69,38 @@ loaded will use this variable to initialize the plugin.
 @name: The name of the plugin
 @plugin_init: The init function of this plugin.
 
-<!-- ##### FUNCTION gst_plugin_new ##### -->
+<!-- ##### MACRO GST_PLUGIN_DESC ##### -->
 <para>
+A handy macro to define a plugin description. This macro handles with all the issues
+involved with the different linking methods for this plugin.
+</para>
 
+@major: The major version of GStreamer this plugin was compiled against.
+@minor: The minor version of GStreamer this plugin was compiled against.
+@name: The name of the plugin.
+@init: The init function of this plugin.
+
+
+<!-- ##### MACRO GST_PLUGIN_DESC_DYNAMIC ##### -->
+<para>
+The macro used to define dynamically loaded plugins.
 </para>
 
-@name: 
-@major: 
-@minor: 
-@Returns: 
+@major: The major version of GStreamer this plugin was compiled against.
+@minor: The minor version of GStreamer this plugin was compiled against.
+@name: The name of the plugin.
+@init: The init function of this plugin.
+
+
+<!-- ##### MACRO GST_PLUGIN_DESC_STATIC ##### -->
+<para>
+A macro used to define a statically linked plugin.
+</para>
+
+@major: The major version of GStreamer this plugin was compiled against.
+@minor: The minor version of GStreamer this plugin was compiled against.
+@name: The name of the plugin.
+@init: The init function of this plugin.
 
 
 <!-- ##### FUNCTION gst_plugin_set_name ##### -->
@@ -230,3 +233,37 @@ loaded will use this variable to initialize the plugin.
 @Returns: 
 
 
+<!-- ##### FUNCTION gst_plugin_add_feature ##### -->
+<para>
+
+</para>
+
+@plugin: 
+@feature: 
+
+
+<!-- ##### FUNCTION gst_plugin_get_feature_list ##### -->
+<para>
+
+</para>
+
+@plugin: 
+@Returns: 
+
+
+<!-- ##### FUNCTION gst_plugin_load_plugin ##### -->
+<para>
+
+</para>
+
+@plugin: 
+@Returns: 
+
+
+<!-- ##### FUNCTION gst_plugin_unload_all ##### -->
+<para>
+
+</para>
+
+
+