+2005-10-28 Stefan Kost <ensonic@users.sf.net>
+
+ * docs/gst/gstreamer-sections.txt:
+ move some macros to private sections
+ * gst/gstminiobject.c:
+ * gst/gstminiobject.h:
+ add descriptions provided by ds and some more
+ * gst/gstpad.h:
+ mark macro as to be removed
+
2005-10-28 Wim Taymans <wim@fluendo.com>
* docs/design/part-TODO.txt:
GST_TYPE_CLOCK_ENTRY_TYPE
GST_TYPE_CLOCK_FLAGS
GST_TYPE_CLOCK_RETURN
+GST_TYPE_CLOCK_TIME
<SUBSECTION Private>
gst_clock_get_type
gst_clock_entry_type_get_type
GST_OBJECT_FLAG_UNSET
GST_OBJECT_NAME
GST_OBJECT_PARENT
-GST_LOCK
-GST_TRYLOCK
-GST_UNLOCK
-GST_GET_LOCK
GST_OBJECT_IS_DISPOSING
GST_OBJECT_IS_FLOATING
GST_OBJECT_REFCOUNT
GST_CLASS_LOCK
GST_CLASS_TRYLOCK
GST_CLASS_UNLOCK
+GST_LOCK
+GST_TRYLOCK
+GST_UNLOCK
+GST_GET_LOCK
gst_object_set_name
gst_object_get_name
gst_pad_set_active
-GST_PREROLL_BROADCAST
-GST_PREROLL_GET_COND
-GST_PREROLL_GET_LOCK
-GST_PREROLL_LOCK
-GST_PREROLL_SIGNAL
-GST_PREROLL_TIMED_WAIT
-GST_PREROLL_TRYLOCK
-GST_PREROLL_UNLOCK
-GST_PREROLL_WAIT
GST_STREAM_GET_LOCK
GST_STREAM_LOCK
GST_STREAM_LOCK_FULL
GST_PAD_QUERYTYPEFUNC
GST_PAD_SETCAPSFUNC
GST_PAD_UNLINKFUNC
+
+GST_PREROLL_BROADCAST
+GST_PREROLL_GET_COND
+GST_PREROLL_GET_LOCK
+GST_PREROLL_LOCK
+GST_PREROLL_SIGNAL
+GST_PREROLL_TIMED_WAIT
+GST_PREROLL_TRYLOCK
+GST_PREROLL_UNLOCK
+GST_PREROLL_WAIT
</SECTION>
<TITLE>GstPadTemplate</TITLE>
GstPadTemplate
GstStaticPadTemplate
-GST_IS_PAD_FAST
GST_PAD_TEMPLATE_NAME_TEMPLATE
GST_PAD_TEMPLATE_DIRECTION
GST_PAD_TEMPLATE_PRESENCE
gst_pad_template_get_type
gst_pad_template_flags_get_type
gst_pad_template_pad_created
+
+GST_IS_PAD_FAST
</SECTION>
GST_BASE_SINK_CLOCK
GST_BASE_SINK_PAD
-GST_LIVE_BROADCAST
-GST_LIVE_GET_COND
-GST_LIVE_GET_LOCK
-GST_LIVE_LOCK
-GST_LIVE_SIGNAL
-GST_LIVE_TIMED_WAIT
-GST_LIVE_TRYLOCK
-GST_LIVE_UNLOCK
-GST_LIVE_WAIT
-
<SUBSECTION Standard>
GstBaseSinkClass
GST_BASE_SINK
GST_BASE_SINK_GET_CLASS
<SUBSECTION Private>
gst_base_sink_get_type
+GST_LIVE_BROADCAST
+GST_LIVE_GET_COND
+GST_LIVE_GET_LOCK
+GST_LIVE_LOCK
+GST_LIVE_SIGNAL
+GST_LIVE_TIMED_WAIT
+GST_LIVE_TRYLOCK
+GST_LIVE_UNLOCK
+GST_LIVE_WAIT
</SECTION>
* Free Software Foundation, Inc., 59 Temple Place - Suite 330,
* Boston, MA 02111-1307, USA.
*/
-
+/**
+ * SECTION:gstminiobject
+ * @short_description: Lightweight base class for the GStreamer object hierarchy
+ *
+ * #GstMiniObject is a baseclass like #GObject, but has been stripped down of
+ * 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.
+ */
#ifdef HAVE_CONFIG_H
#include "config.h"
#endif
typedef struct _GstMiniObject GstMiniObject;
typedef struct _GstMiniObjectClass GstMiniObjectClass;
-typedef GstMiniObject * (*GstMiniObjectCopyFunction) (const GstMiniObject *);
-typedef void (*GstMiniObjectFinalizeFunction) (GstMiniObject *);
+/**
+ * GstMiniObjectCopyFunction:
+ * @obj: MiniObject to copy
+ *
+ * Virtual function prototype for methods to create copies of instances.
+ *
+ * Returns: reference to cloned instance.
+ */
+typedef GstMiniObject * (*GstMiniObjectCopyFunction) (const GstMiniObject *obj);
+/**
+ * GstMiniObjectFinalizeFunction:
+ * @obj: MiniObject to finalize
+ *
+ * Virtual function prototype for methods to free ressources used by
+ * mini-objects.
+ */
+typedef void (*GstMiniObjectFinalizeFunction) (GstMiniObject *obj);
/**
* GST_MINI_OBJECT_FLAGS:
GST_MINI_OBJECT_FLAG_LAST = (1<<4)
} GstMiniObjectFlags;
+/**
+ * GST_MINI_OBJECT_REFCOUNT:
+ * @obj: MiniObject get the refcount for.
+ *
+ * Get access to the reference count field of the mini-object.
+ */
#define GST_MINI_OBJECT_REFCOUNT(obj) ((GST_MINI_OBJECT_CAST(obj))->refcount)
+/**
+ * GST_MINI_OBJECT_REFCOUNT_VALUE:
+ * @obj: MiniObject get the refcount value for.
+ *
+ * Get the reference count value of the mini-object.
+ */
#define GST_MINI_OBJECT_REFCOUNT_VALUE(obj) (g_atomic_int_get (&(GST_MINI_OBJECT_CAST(obj))->refcount))
struct _GstMiniObject {
*/
#define GST_TYPE_PAD (gst_pad_get_type ())
#define GST_IS_PAD(obj) (G_TYPE_CHECK_INSTANCE_TYPE ((obj), GST_TYPE_PAD))
-#define GST_IS_PAD_FAST(obj) (G_OBJECT_TYPE(obj) == GST_TYPE_PAD) /* necessary? */
#define GST_IS_PAD_CLASS(klass) (G_TYPE_CHECK_CLASS_TYPE ((klass), GST_TYPE_PAD))
#define GST_PAD(obj) (G_TYPE_CHECK_INSTANCE_CAST ((obj), GST_TYPE_PAD, GstPad))
#define GST_PAD_CLASS(klass) (G_TYPE_CHECK_CLASS_CAST ((klass), GST_TYPE_PAD, GstPadClass))
#define GST_PAD_CAST(obj) ((GstPad*)(obj))
+/* FIXME: remove - its unused */
+#define GST_IS_PAD_FAST(obj) (G_OBJECT_TYPE(obj) == GST_TYPE_PAD)
+
typedef struct _GstPad GstPad;
typedef struct _GstPadClass GstPadClass;