mirror of
https://gitlab.freedesktop.org/gstreamer/gstreamer.git
synced 2025-04-26 06:54:49 +00:00
docs/gst/gstreamer-sections.txt: Added some new macros.
Original commit message from CVS: * docs/gst/gstreamer-sections.txt: Added some new macros. * gst/gstclock.c: * gst/gstclock.h: * gst/gstobject.h: Docs updates.
This commit is contained in:
parent
692ec0dd30
commit
a628e6f4be
5 changed files with 59 additions and 16 deletions
10
ChangeLog
10
ChangeLog
|
@ -1,3 +1,13 @@
|
||||||
|
2005-11-09 Wim Taymans <wim@fluendo.com>
|
||||||
|
|
||||||
|
* docs/gst/gstreamer-sections.txt:
|
||||||
|
Added some new macros.
|
||||||
|
|
||||||
|
* gst/gstclock.c:
|
||||||
|
* gst/gstclock.h:
|
||||||
|
* gst/gstobject.h:
|
||||||
|
Docs updates.
|
||||||
|
|
||||||
2005-11-09 Wim Taymans <wim@fluendo.com>
|
2005-11-09 Wim Taymans <wim@fluendo.com>
|
||||||
|
|
||||||
* docs/design/part-TODO.txt:
|
* docs/design/part-TODO.txt:
|
||||||
|
|
|
@ -652,6 +652,7 @@ gst_event_unref
|
||||||
<SUBSECTION Standard>
|
<SUBSECTION Standard>
|
||||||
GstEventClass
|
GstEventClass
|
||||||
GST_EVENT
|
GST_EVENT
|
||||||
|
GST_EVENT_CAST
|
||||||
GST_IS_EVENT
|
GST_IS_EVENT
|
||||||
GST_IS_EVENT_CLASS
|
GST_IS_EVENT_CLASS
|
||||||
GST_EVENT_CLASS
|
GST_EVENT_CLASS
|
||||||
|
@ -2229,6 +2230,7 @@ GST_BASE_SRC_PAD
|
||||||
<SUBSECTION Standard>
|
<SUBSECTION Standard>
|
||||||
GstBaseSrcClass
|
GstBaseSrcClass
|
||||||
GST_BASE_SRC
|
GST_BASE_SRC
|
||||||
|
GST_BASE_SRC_CAST
|
||||||
GST_IS_BASE_SRC
|
GST_IS_BASE_SRC
|
||||||
GST_TYPE_BASE_SRC
|
GST_TYPE_BASE_SRC
|
||||||
GST_BASE_SRC_CLASS
|
GST_BASE_SRC_CLASS
|
||||||
|
@ -2251,6 +2253,7 @@ GST_BASE_SINK_PAD
|
||||||
<SUBSECTION Standard>
|
<SUBSECTION Standard>
|
||||||
GstBaseSinkClass
|
GstBaseSinkClass
|
||||||
GST_BASE_SINK
|
GST_BASE_SINK
|
||||||
|
GST_BASE_SINK_CAST
|
||||||
GST_IS_BASE_SINK
|
GST_IS_BASE_SINK
|
||||||
GST_TYPE_BASE_SINK
|
GST_TYPE_BASE_SINK
|
||||||
GST_BASE_SINK_CLASS
|
GST_BASE_SINK_CLASS
|
||||||
|
|
|
@ -55,6 +55,10 @@
|
||||||
* with the gst_clock_id_unschedule() call. If the blocking wait is unscheduled
|
* with the gst_clock_id_unschedule() call. If the blocking wait is unscheduled
|
||||||
* a return value of GST_CLOCK_UNSCHEDULED is returned.
|
* a return value of GST_CLOCK_UNSCHEDULED is returned.
|
||||||
*
|
*
|
||||||
|
* Periodic callbacks scheduled async will be repeadedly called automatically until
|
||||||
|
* it is unscheduled. To schedule an async periodic callback, gst_clock_id_wait()
|
||||||
|
* should be called repeadedly.
|
||||||
|
*
|
||||||
* The async callbacks can happen from any thread, either provided by the
|
* The async callbacks can happen from any thread, either provided by the
|
||||||
* core or from a streaming thread. The application should be prepared for this.
|
* core or from a streaming thread. The application should be prepared for this.
|
||||||
*
|
*
|
||||||
|
|
|
@ -169,8 +169,9 @@ G_STMT_START { \
|
||||||
#define GST_TIME_FORMAT "u:%02u:%02u.%09u"
|
#define GST_TIME_FORMAT "u:%02u:%02u.%09u"
|
||||||
/**
|
/**
|
||||||
* GST_TIME_ARGS:
|
* GST_TIME_ARGS:
|
||||||
|
* @t: a #GstClockTime
|
||||||
*
|
*
|
||||||
* Format the GstClockTime argument for the GST_TIME_FORMAT format string.
|
* Format @t for the GST_TIME_FORMAT format string.
|
||||||
*/
|
*/
|
||||||
#define GST_TIME_ARGS(t) \
|
#define GST_TIME_ARGS(t) \
|
||||||
(guint) (((GstClockTime)(t)) / (GST_SECOND * 60 * 60)), \
|
(guint) (((GstClockTime)(t)) / (GST_SECOND * 60 * 60)), \
|
||||||
|
|
|
@ -85,14 +85,21 @@ typedef enum
|
||||||
/* we do a GST_OBJECT_CAST to avoid type checking, better call these
|
/* we do a GST_OBJECT_CAST to avoid type checking, better call these
|
||||||
* function with a valid object! */
|
* function with a valid object! */
|
||||||
|
|
||||||
|
/**
|
||||||
|
* GST_GET_LOCK:
|
||||||
|
* @obj: Object to get the mutex of.
|
||||||
|
*
|
||||||
|
* Acquire a reference to the mutex of this object.
|
||||||
|
*/
|
||||||
|
#define GST_GET_LOCK(obj) (GST_OBJECT_CAST(obj)->lock)
|
||||||
/**
|
/**
|
||||||
* GST_LOCK:
|
* GST_LOCK:
|
||||||
* @obj: Object to lock.
|
* @obj: Object to lock.
|
||||||
*
|
*
|
||||||
* This macro will obtain a lock on the object, making serialization possible.
|
* This macro will obtain a lock on the object, making serialization possible.
|
||||||
* It block until the lock can be obtained.
|
* It blocks until the lock can be obtained.
|
||||||
*/
|
*/
|
||||||
#define GST_LOCK(obj) g_mutex_lock(GST_OBJECT_CAST(obj)->lock)
|
#define GST_LOCK(obj) g_mutex_lock(GST_GET_LOCK(obj))
|
||||||
/**
|
/**
|
||||||
* GST_TRYLOCK:
|
* GST_TRYLOCK:
|
||||||
* @obj: Object to try to get a lock on.
|
* @obj: Object to try to get a lock on.
|
||||||
|
@ -100,21 +107,14 @@ typedef enum
|
||||||
* This macro will try to obtain a lock on the object, but will return with
|
* This macro will try to obtain a lock on the object, but will return with
|
||||||
* FALSE if it can't get it immediately.
|
* FALSE if it can't get it immediately.
|
||||||
*/
|
*/
|
||||||
#define GST_TRYLOCK(obj) g_mutex_trylock(GST_OBJECT_CAST(obj)->lock)
|
#define GST_TRYLOCK(obj) g_mutex_trylock(GST_GET_LOCK(obj))
|
||||||
/**
|
/**
|
||||||
* GST_LOCK:
|
* GST_UNLOCK:
|
||||||
* @obj: Object to unlock.
|
* @obj: Object to unlock.
|
||||||
*
|
*
|
||||||
* This macro releases a lock on the object.
|
* This macro releases a lock on the object.
|
||||||
*/
|
*/
|
||||||
#define GST_UNLOCK(obj) g_mutex_unlock(GST_OBJECT_CAST(obj)->lock)
|
#define GST_UNLOCK(obj) g_mutex_unlock(GST_GET_LOCK(obj))
|
||||||
/**
|
|
||||||
* GST_LOCK:
|
|
||||||
* @obj: Object to get the mutex of.
|
|
||||||
*
|
|
||||||
* Acquire a reference to the mutex of this object.
|
|
||||||
*/
|
|
||||||
#define GST_GET_LOCK(obj) (GST_OBJECT_CAST(obj)->lock)
|
|
||||||
|
|
||||||
|
|
||||||
/**
|
/**
|
||||||
|
@ -212,10 +212,35 @@ struct _GstObject {
|
||||||
gpointer _gst_reserved[GST_PADDING];
|
gpointer _gst_reserved[GST_PADDING];
|
||||||
};
|
};
|
||||||
|
|
||||||
#define GST_CLASS_LOCK(obj) (g_static_rec_mutex_lock(GST_OBJECT_CLASS_CAST(obj)->lock))
|
/**
|
||||||
#define GST_CLASS_TRYLOCK(obj) (g_static_rec_mutex_trylock(GST_OBJECT_CLASS_CAST(obj)->lock))
|
* GST_CLASS_GET_LOCK:
|
||||||
#define GST_CLASS_UNLOCK(obj) (g_static_rec_mutex_unlock(GST_OBJECT_CLASS_CAST(obj)->lock))
|
* @obj: a #GstObjectClass
|
||||||
|
*
|
||||||
|
* This macro will return the class lock used to protect deep_notify signal
|
||||||
|
* emission on thread-unsafe glib versions (glib < 2.8).
|
||||||
|
*/
|
||||||
#define GST_CLASS_GET_LOCK(obj) (GST_OBJECT_CLASS_CAST(obj)->lock)
|
#define GST_CLASS_GET_LOCK(obj) (GST_OBJECT_CLASS_CAST(obj)->lock)
|
||||||
|
/**
|
||||||
|
* GST_CLASS_LOCK:
|
||||||
|
* @obj: a #GstObjectClass
|
||||||
|
*
|
||||||
|
* Lock the class.
|
||||||
|
*/
|
||||||
|
#define GST_CLASS_LOCK(obj) (g_static_rec_mutex_lock(GST_CLASS_GET_LOCK(obj)))
|
||||||
|
/**
|
||||||
|
* GST_CLASS_TRYLOCK:
|
||||||
|
* @obj: a #GstObjectClass
|
||||||
|
*
|
||||||
|
* Try to lock the class, returns TRUE if class could be locked.
|
||||||
|
*/
|
||||||
|
#define GST_CLASS_TRYLOCK(obj) (g_static_rec_mutex_trylock(GST_CLASS_GET_LOCK(obj)))
|
||||||
|
/**
|
||||||
|
* GST_CLASS_UNLOCK:
|
||||||
|
* @obj: a #GstObjectClass
|
||||||
|
*
|
||||||
|
* Unlock the class.
|
||||||
|
*/
|
||||||
|
#define GST_CLASS_UNLOCK(obj) (g_static_rec_mutex_unlock(GST_CLASS_GET_LOCK(obj)))
|
||||||
|
|
||||||
/* signal_object is used to signal to the whole class */
|
/* signal_object is used to signal to the whole class */
|
||||||
struct _GstObjectClass {
|
struct _GstObjectClass {
|
||||||
|
|
Loading…
Reference in a new issue