Commit a9f7f7b7 authored by Wim Taymans's avatar Wim Taymans

Doc fixes.

Original commit message from CVS:
Doc fixes.
parent d7a5360d
2005-11-24 Wim Taymans <wim@fluendo.com>
* docs/gst/gstreamer-sections.txt:
* gst/base/gstadapter.h:
* gst/base/gstbasesink.h:
* gst/base/gstbasesrc.h:
* gst/base/gstbasetransform.h:
* gst/base/gstpushsrc.h:
* gst/elements/gstfakesink.h:
* gst/elements/gstfakesrc.c: (gst_fake_src_data_get_type):
* gst/elements/gstfakesrc.h:
* gst/elements/gstfilesink.h:
* gst/elements/gstfilesrc.h:
* gst/gst.c:
* gst/gstbin.c:
* gst/gstbuffer.c: (_gst_buffer_copy):
* gst/gstbus.h:
* gst/gstcaps.c:
* gst/gstchildproxy.c:
* gst/gstclock.c:
* gst/gstelement.c:
* gst/gstelementfactory.c:
* gst/gstelementfactory.h:
* gst/gstevent.c:
* gst/gstghostpad.h:
* gst/gstindex.h:
* gst/gstinterface.h:
* gst/gstminiobject.c:
* gst/gstminiobject.h:
* gst/gstpad.c:
* gst/gstpad.h:
* gst/gstpadtemplate.h:
* gst/gstpipeline.h:
* gst/gstpluginfeature.h:
* gst/gstquery.h:
* gst/gstqueue.h:
* gst/gsttaglist.c:
* gst/gsttaglist.h:
* gst/gsttagsetter.c:
* gst/gsttagsetter.h:
* gst/gsttrace.c:
* gst/gsttrace.h:
* gst/gsttypefind.h:
* gst/gsturi.h:
* gst/gstvalue.c:
* gst/net/gstnetclientclock.c:
* gst/net/gstnetclientclock.h:
* gst/net/gstnettimepacket.c:
* gst/net/gstnettimeprovider.c:
* gst/net/gstnettimeprovider.h:
Doc fixes.
2005-11-23 Thomas Vander Stichele <thomas at apestaart dot org>
* configure.ac: back to HEAD
......
......@@ -1294,6 +1294,7 @@ GST_PAD_STREAM_LOCK_FULL
GST_PAD_STREAM_TRYLOCK
GST_PAD_STREAM_UNLOCK
GST_PAD_STREAM_UNLOCK_FULL
GST_FLOW_IS_FATAL
<SUBSECTION Standard>
......@@ -1932,7 +1933,6 @@ gst_task_state_get_type
<FILE>gsttrace</FILE>
<TITLE>GstTrace</TITLE>
GstTrace
GstTraceEntry
gst_trace_new
gst_trace_destroy
gst_trace_flush
......@@ -1959,8 +1959,9 @@ gst_alloc_trace_new
gst_alloc_trace_free
<SUBSECTION Standard>
GST_TYPE_ALLOC_TRACE_FLAGS
<SUBSECTION Private>
gst_alloc_trace_flags_get_type
<SUBSECTION Private>
GstTraceEntry
</SECTION>
......
......@@ -42,6 +42,11 @@ G_BEGIN_DECLS
typedef struct _GstAdapter GstAdapter;
typedef struct _GstAdapterClass GstAdapterClass;
/**
* GstAdapter:
*
* The opaque #GstAdapter data structure.
*/
struct _GstAdapter {
GObject object;
......
......@@ -47,6 +47,11 @@ G_BEGIN_DECLS
typedef struct _GstBaseSink GstBaseSink;
typedef struct _GstBaseSinkClass GstBaseSinkClass;
/**
* GstBaseSink:
*
* The opaque #GstBaseSink data structure.
*/
struct _GstBaseSink {
GstElement element;
......
......@@ -61,11 +61,17 @@ typedef struct _GstBaseSrcClass GstBaseSrcClass;
#define GST_BASE_SRC_PAD(obj) (GST_BASE_SRC_CAST (obj)->srcpad)
/**
* GstBaseSrc:
*
* The opaque #GstBaseSrc data structure.
*/
struct _GstBaseSrc {
GstElement element;
/*< protected >*/
GstPad *srcpad;
/*< public >*/
/* available to subclass implementations */
/* MT-protected (with LIVE_LOCK) */
GMutex *live_lock;
......
......@@ -49,14 +49,19 @@ G_BEGIN_DECLS
typedef struct _GstBaseTransform GstBaseTransform;
typedef struct _GstBaseTransformClass GstBaseTransformClass;
/**
* GstBaseTransform:
*
* The opaque #GstBaseTransform data structure.
*/
struct _GstBaseTransform {
GstElement element;
/*< protected >*/
/* source and sink pads */
GstPad *sinkpad;
GstPad *srcpad;
/*< public >*/
/* Set by sub-class */
gboolean passthrough;
gboolean always_in_place;
......
......@@ -39,6 +39,11 @@ G_BEGIN_DECLS
typedef struct _GstPushSrc GstPushSrc;
typedef struct _GstPushSrcClass GstPushSrcClass;
/**
* GstPushSrc:
*
* The opaque #GstPushSrc data structure.
*/
struct _GstPushSrc {
GstBaseSrc parent;
......
......@@ -41,6 +41,18 @@ G_BEGIN_DECLS
#define GST_IS_FAKE_SINK_CLASS(obj) \
(G_TYPE_CHECK_CLASS_TYPE((klass),GST_TYPE_FAKE_SINK))
/**
* GstFakeSinkStateError:
* @FAKE_SINK_STATE_ERROR_NONE: no error
* @FAKE_SINK_STATE_ERROR_NULL_READY: cause the NULL to READY state change to fail
* @FAKE_SINK_STATE_ERROR_READY_PAUSED: cause the READY to PAUSED state change to fail:
* @FAKE_SINK_STATE_ERROR_PAUSED_PLAYING: cause the PAUSED to PLAYING state change to fail:
* @FAKE_SINK_STATE_ERROR_PLAYING_PAUSED: cause the PLAYING to PAUSED state change to fail:
* @FAKE_SINK_STATE_ERROR_PAUSED_READY: cause the PAUSED to READY state change to fail:
* @FAKE_SINK_STATE_ERROR_READY_NULL: cause the READY to NULL state change to fail:
*
* Possible state change errors for the state-error property.
*/
typedef enum {
FAKE_SINK_STATE_ERROR_NONE = 0,
FAKE_SINK_STATE_ERROR_NULL_READY,
......@@ -54,6 +66,11 @@ typedef enum {
typedef struct _GstFakeSink GstFakeSink;
typedef struct _GstFakeSinkClass GstFakeSinkClass;
/**
* GstFakeSink:
*
* The opaque #GstFakeSink data structure.
*/
struct _GstFakeSink {
GstBaseSink element;
......
......@@ -139,7 +139,8 @@ gst_fake_src_data_get_type (void)
};
if (!fakesrc_data_type) {
fakesrc_data_type = g_enum_register_static ("GstFakeSrcData", fakesrc_data);
fakesrc_data_type =
g_enum_register_static ("GstFakeSrcDataType", fakesrc_data);
}
return fakesrc_data_type;
}
......@@ -174,10 +175,10 @@ gst_fake_src_filltype_get_type (void)
{FAKE_SRC_FILLTYPE_ZERO, "Fill buffers with zeros", "zero"},
{FAKE_SRC_FILLTYPE_RANDOM, "Fill buffers with random crap", "random"},
{FAKE_SRC_FILLTYPE_PATTERN, "Fill buffers with pattern 0x00 -> 0xff",
"pattern"},
"pattern"},
{FAKE_SRC_FILLTYPE_PATTERN_CONT,
"Fill buffers with pattern 0x00 -> 0xff that spans buffers",
"pattern-span"},
"Fill buffers with pattern 0x00 -> 0xff that spans buffers",
"pattern-span"},
{0, NULL, NULL},
};
......
......@@ -29,6 +29,19 @@
G_BEGIN_DECLS
/**
* GstFakeSrcOutputType:
* @FAKE_SRC_FIRST_LAST_LOOP: first pad then last pad
* @FAKE_SRC_LAST_FIRST_LOOP: last pad then first pad
* @FAKE_SRC_PING_PONG: ping pong between pads
* @FAKE_SRC_ORDERED_RANDOM: ordered random pad
* @FAKE_SRC_RANDOM: random pad
* @FAKE_SRC_PATTERN_LOOP: loop between pads in a particular pattern
* @FAKE_SRC_PING_PONG_PATTERN: ping pong based on a pattern
* @FAKE_SRC_GET_ALWAYS_SUCEEDS: a get always succeeds on a pad
*
* The different output types. Unused currently.
*/
typedef enum {
FAKE_SRC_FIRST_LAST_LOOP = 1,
FAKE_SRC_LAST_FIRST_LOOP,
......@@ -40,17 +53,42 @@ typedef enum {
FAKE_SRC_GET_ALWAYS_SUCEEDS
} GstFakeSrcOutputType;
/**
* GstFakeSrcDataType:
* @FAKE_SRC_DATA_ALLOCATE: allocate buffers
* @FAKE_SRC_DATA_SUBBUFFER: subbuffer each buffer
*
* The different ways buffers are allocated.
*/
typedef enum {
FAKE_SRC_DATA_ALLOCATE = 1,
FAKE_SRC_DATA_SUBBUFFER
} GstFakeSrcDataType;
/**
* GstFakeSrcSizeType:
* @FAKE_SRC_SIZETYPE_EMPTY: create empty buffers
* @FAKE_SRC_SIZETYPE_FIXED: fixed buffer size
* @FAKE_SRC_SIZETYPE_RANDOM: random buffer size
*
* The different size of the allocated buffers.
*/
typedef enum {
FAKE_SRC_SIZETYPE_EMPTY = 1,
FAKE_SRC_SIZETYPE_FIXED,
FAKE_SRC_SIZETYPE_RANDOM
} GstFakeSrcSizeType;
/**
* GstFakeSrcFillType:
* @FAKE_SRC_FILLTYPE_NOTHING: do not fill buffers
* @FAKE_SRC_FILLTYPE_ZERO: fill buffers with 0
* @FAKE_SRC_FILLTYPE_RANDOM: fill buffers with random bytes
* @FAKE_SRC_FILLTYPE_PATTERN: fill buffers with a pattern
* @FAKE_SRC_FILLTYPE_PATTERN_CONT: fill buffers with a continuous pattern
*
* The different ways of filling the buffers.
*/
typedef enum {
FAKE_SRC_FILLTYPE_NOTHING = 1,
FAKE_SRC_FILLTYPE_ZERO,
......@@ -73,6 +111,11 @@ typedef enum {
typedef struct _GstFakeSrc GstFakeSrc;
typedef struct _GstFakeSrcClass GstFakeSrcClass;
/**
* GstFakeSrc:
*
* Opaque #GstFakeSrc data structure.
*/
struct _GstFakeSrc {
GstBaseSrc element;
......
......@@ -43,9 +43,15 @@ G_BEGIN_DECLS
typedef struct _GstFileSink GstFileSink;
typedef struct _GstFileSinkClass GstFileSinkClass;
/**
* GstFileSink:
*
* Opaque #GstFileSink structure.
*/
struct _GstFileSink {
GstBaseSink parent;
/*< private >*/
gchar *filename;
gchar *uri;
FILE *file;
......
......@@ -45,9 +45,15 @@ G_BEGIN_DECLS
typedef struct _GstFileSrc GstFileSrc;
typedef struct _GstFileSrcClass GstFileSrcClass;
/**
* GstFileSrc:
*
* Opaque #GstFileSrc structure.
*/
struct _GstFileSrc {
GstBaseSrc element;
/*< private >*/
guint pagesize; /* system page size */
gchar *filename; /* filename */
......
......@@ -91,11 +91,14 @@
* </example>
*
* Use gst_version() to query the library version at runtime or use the
* GST_VERSION_* macros to find the version at compile time.
* GST_VERSION_* macros to find the version at compile time. Optionally
* gst_version_string() returns a printable string.
*
* The functions gst_main() and gst_main_quit() enter and exit the main loop.
* GStreamer doesn't currently require you to use a mainloop but can intergrate
* with it without problems.
* The gst_deinit() call is used to clean up all internal resources used
* by <application>GStreamer</application>. It is mostly used in unit tests
* to check for leaks.
*
* Last reviewed on 2005-11-23 (0.9.5)
*/
#include <stdlib.h>
......
......@@ -27,13 +27,13 @@
* SECTION:gstbin
* @short_description: Base class and element that can contain other elements
*
* GstBin is an element that can contain other elements, allowing them to be
* #GstBin is an element that can contain other #GstElement, allowing them to be
* managed as a group.
* Pads from the child elements can be ghosted to the bin.
* Pads from the child elements can be ghosted to the bin, see #GstGhostPad.
* This makes the bin look like any other elements and enables creation of
* higher-level abstraction elements.
*
* A new GstBin is created with gst_bin_new(). Use a #GstPipeline instead if you
* A new #GstBin is created with gst_bin_new(). Use a #GstPipeline instead if you
* want to create a toplevel bin because a normal bin doesn't have a bus or
* handle clock distribution of its own.
*
......@@ -58,7 +58,7 @@
*
* <refsect2><title>Notes</title>
* <para>
* A GstBin internally intercepts every #GstMessage posted by its children and
* A #GstBin internally intercepts every #GstMessage posted by its children and
* implements the following default behaviour for each of them:
* <variablelist>
* <varlistentry>
......@@ -75,7 +75,7 @@
* </varlistentry>
* <varlistentry>
* <term>GST_MESSAGE_SEGMENT_DONE</term>
* <listitem><para> Is posted by GstBin when all elements that posted
* <listitem><para> Is posted by #GstBin when all elements that posted
* a SEGMENT_START have posted a SEGMENT_DONE.</para></listitem>
* </varlistentry>
* <varlistentry>
......@@ -84,7 +84,7 @@
* </varlistentry>
* </variablelist>
*
* A GstBin implements the following default behaviour for answering to a
* A #GstBin implements the following default behaviour for answering to a
* #GstQuery:
* <variablelist>
* <varlistentry>
......@@ -105,7 +105,7 @@
* </para>
* </refsect2>
*
* Last reviewed on 2005-10-28 (0.9.4)
* Last reviewed on 2005-11-23 (0.9.5)
*/
#include "gst_private.h"
......
......@@ -102,7 +102,7 @@
* the refcount drops to 0, any data pointed to by GST_BUFFER_MALLOCDATA() will
* also be freed.
*
* Last reviewed on October 28th, 2005 (0.9.4)
* Last reviewed on November 23th, 2005 (0.9.5)
*/
#include "gst_private.h"
......
......@@ -101,6 +101,11 @@ typedef GstBusSyncReply (*GstBusSyncHandler) (GstBus * bus, GstMessage * messag
*/
typedef gboolean (*GstBusFunc) (GstBus * bus, GstMessage * message, gpointer data);
/**
* GstBus:
*
* The opaque #GstBus data structure.
*/
struct _GstBus
{
GstObject object;
......
......@@ -60,7 +60,7 @@
* Various methods exist to work with the media types such as subtracting
* or intersecting.
*
* Last reviewed on 2005-11-09 (0.9.4)
* Last reviewed on 2005-11-23 (0.9.5)
*/
#ifdef HAVE_CONFIG_H
......
......@@ -26,7 +26,7 @@
*
* This interface abstracts handling of property sets for child elements.
* Imagine elements such as mixers or polyphonic generators. They all have
* multiple #GstPads or some kind of voice objects. The element acts as a
* multiple #GstPad or some kind of voice objects. The element acts as a
* parent for those child objects. Each child has the same properties.
*
* By implementing this interface the child properties can be accessed from the
......
......@@ -81,6 +81,15 @@
* running. Some clocks however do not progress when the element that provided
* the clock is not PLAYING.
*
* When a clock has the GST_CLOCK_FLAG_CAN_SET_MASTER flag set, it can be slaved to
* another #GstClock with the gst_clock_set_master(). The clock will then
* automatically be synchronized to this master clock by repeadedly sampling the
* master clock and the slave clock and recalibrating the slave clock with
* gst_clock_set_calibration(). This feature is mostly usefull for plugins that have
* an internal clock but must operate with another clock selected by the #GstPipeline.
* They can track the offset and rate difference of their internal clock relative to
* the master clock by using the gst_clock_get_calibration() function.
*
* Last reviewed on 2005-10-28 (0.9.4)
*/
......
......@@ -71,6 +71,8 @@
* Note that clock slection and distribution is normally handled by the
* toplevel #GstPipeline so the clock functions are only to be used in very
* specific situations.
*
* Last reviewed on 2005-11-23 (0.9.5)
*/
#include "gst_private.h"
......
......@@ -26,17 +26,10 @@
* @short_description: Create GstElements from a factory
* @see_also: #GstElement, #GstPlugin, #GstPluginFeature, #GstPadTemplate.
*
* GstElementFactory is used to create instances of elements. A
* #GstElementFactory is used to create instances of elements. A
* GstElementfactory can be added to a #GstPlugin as it is also a
* #GstPluginFeature.
*
* Use gst_element_factory_new() to create a new factory which can be added to
* a plugin with gst_plugin_add_feature().
*
* gst_element_factory_add_pad_template() is used to add a padtemplate to the
* factory. This function will enable the application to query for
* elementfactories that handle a specific media type.
*
* Use the gst_element_factory_find() and gst_element_factory_create()
* functions to create element instances or use gst_element_factory_make() as a
* convenient shortcut.
......@@ -58,8 +51,7 @@
* </programlisting>
* </example>
*
* An elementfactory can be assigned a rank with gst_element_factory_set_rank()
* so that the autopluggers can select a plugin more appropriatly
* Last reviewed on 2005-11-23 (0.9.5)
*/
#include "gst_private.h"
......
......@@ -92,6 +92,11 @@ struct _GstElementDetails
#define GST_IS_ELEMENT_FACTORY(obj) (G_TYPE_CHECK_INSTANCE_TYPE((obj),GST_TYPE_ELEMENT_FACTORY))
#define GST_IS_ELEMENT_FACTORY_CLASS(klass) (G_TYPE_CHECK_CLASS_TYPE((klass),GST_TYPE_ELEMENT_FACTORY))
/**
* GstElementFactory:
*
* The opaque #GstElementFactory data structure.
*/
struct _GstElementFactory {
GstPluginFeature parent;
......
......@@ -67,7 +67,10 @@
* ...
* </programlisting>
* </example>
*
* Last reviewed on 2005-11-23 (0.9.5)
*/
#include <string.h> /* memcpy */
#include "gst_private.h"
......
......@@ -37,6 +37,11 @@ G_BEGIN_DECLS
#define GST_GHOST_PAD(obj) (G_TYPE_CHECK_INSTANCE_CAST ((obj), GST_TYPE_GHOST_PAD, GstGhostPad))
#define GST_GHOST_PAD_CLASS(klass) (G_TYPE_CHECK_CLASS_CAST ((klass), GST_TYPE_GHOST_PAD, GstGhostPadClass))
/**
* GstGhostPad:
*
* Opaque #GstGhostPad structure.
*/
typedef struct _GstGhostPad GstGhostPad;
typedef struct _GstGhostPadClass GstGhostPadClass;
......
......@@ -316,9 +316,15 @@ typedef enum {
*/
#define GST_INDEX_IS_WRITABLE(obj) (GST_OBJECT_FLAG_IS_SET (obj, GST_INDEX_WRITABLE))
/**
* GstIndex:
*
* Opaque #GstIndex structure.
*/
struct _GstIndex {
GstObject object;
/*< private >*/
GList *groups;
GstIndexGroup *curgroup;
gint maxgroup;
......@@ -334,12 +340,14 @@ struct _GstIndex {
GHashTable *writers;
gint last_id;
/*< private >*/
gpointer _gst_reserved[GST_PADDING];
};
struct _GstIndexClass {
GstObjectClass parent_class;
/*< protected >*/
gboolean (*get_writer_id) (GstIndex *index, gint *writer_id, gchar *writer_string);
void (*commit) (GstIndex *index, gint id);
......@@ -355,6 +363,7 @@ struct _GstIndexClass {
/* signals */
void (*entry_added) (GstIndex *index, GstIndexEntry *entry);
/*< private >*/
gpointer _gst_reserved[GST_PADDING];
};
......
......@@ -43,6 +43,11 @@ G_BEGIN_DECLS
(G_TYPE_INSTANCE_GET_INTERFACE ((inst), GST_TYPE_IMPLEMENTS_INTERFACE, \
GstImplementsInterfaceClass))
/**
* GstImplementsInterface:
*
* Opaque #GstImplementsInterface structure.
*/
typedef struct _GstImplementsInterface GstImplementsInterface;
typedef struct _GstImplementsInterfaceClass GstImplementsInterfaceClass;
......
......@@ -26,6 +26,8 @@
* features to be fast and small.
* It offers sub-classing and ref-counting in the same way as #GObject does.
* It has no properties and no signal-support though.
*
* Last reviewed on 2005-11-23 (0.9.5)
*/
#ifdef HAVE_CONFIG_H
#include "config.h"
......
......@@ -54,7 +54,10 @@ typedef GstMiniObject * (*GstMiniObjectCopyFunction) (const GstMiniObject *obj);
* @obj: MiniObject to finalize
*
* Virtual function prototype for methods to free ressources used by
* mini-objects.
* mini-objects. Subclasses of the mini object are allowed to revive the
* passed object by doing a gst_mini_object_ref(). If the object is not
* revived after the finalize function, the memory associated with the
* object is freed.
*/
typedef void (*GstMiniObjectFinalizeFunction) (GstMiniObject *obj);
......
......@@ -36,7 +36,7 @@
* gst_pad_new_from_template().
*
* Pads have #GstCaps attached to it to describe the media type they are
* capable of dealing with. gst_pad_get_caps() and gst_pad_try_set_caps() are
* capable of dealing with. gst_pad_get_caps() and gst_pad_set_caps() are
* used to manipulate the caps of the pads.
* Pads created from a pad template cannot set capabilities that are
* incompatible with the pad template capabilities.
......@@ -51,14 +51,13 @@
* gst_pad_set_*_function() calls to register callbacks for various events
* on the pads.
*
* GstElements will use gst_pad_push() and gst_pad_pull() to push out
* GstElements will use gst_pad_push() and gst_pad_pull_range() to push out
* or pull in a buffer.
* gst_pad_select() and gst_pad_selectv() are used by plugins to wait for the
* first incoming buffer or event on any of the given set of pads.
*
* To send a #GstEvent on a pad, use gst_pad_send_event().
*
* Last reviewed on December 13th, 2002 (0.5.0.1)
* Last reviewed on 2005-11-23 (0.9.5)
*
*/
#include "gst_private.h"
......@@ -3678,6 +3677,7 @@ dropping:
*
* Set the given private data gpointer on the pad.
* This function can only be used by the element that owns the pad.
* No locking is performed in this function.
*/
void
gst_pad_set_element_private (GstPad * pad, gpointer priv)
......@@ -3690,6 +3690,7 @@ gst_pad_set_element_private (GstPad * pad, gpointer priv)
* @pad: the #GstPad to get the private data of.
*
* Gets the private data of a pad.
* No locking is performed in this function.
*
* Returns: a #gpointer to the private data.
*/
......
......@@ -58,6 +58,8 @@ typedef struct _GstPadClass GstPadClass;
* @GST_PAD_LINK_NOFORMAT : pads do not have common format
* @GST_PAD_LINK_NOSCHED : pads cannot cooperate in scheduling
* @GST_PAD_LINK_REFUSED : refused for some reason
*
* Result values from gst_pad_link and friends.
*/
typedef enum {
GST_PAD_LINK_OK = 0,
......@@ -152,7 +154,27 @@ typedef enum {
#define GST_PAD_MODE_ACTIVATE(mode) ((mode) != GST_ACTIVATE_NONE)
/* pad states */
/**
* GstPadActivateFunction:
* @pad: a #GstPad
*
* This function is called when the pad is activated during the element