mirror of
https://gitlab.freedesktop.org/gstreamer/gstreamer.git
synced 2024-11-30 05:31:15 +00:00
1e4ad29e52
Original commit message from CVS: * docs/gst/gstreamer-docs.sgml: I got tired of the reference manual being such complete crap, that I decided to do major hacking of it. This checkin replaces any fine tuning that may have been done previously, with the benefit of actually being complete for much of the API that was changed since 0.6. Further fine tuning will occur shortly. (bug #134721) * docs/gst/gstreamer-sections.txt: * docs/gst/tmpl/GstBin.sgml: * docs/gst/tmpl/GstBuffer.sgml: * docs/gst/tmpl/GstCaps.sgml: * docs/gst/tmpl/GstClock.sgml: * docs/gst/tmpl/GstCompat.sgml: * docs/gst/tmpl/GstData.sgml: * docs/gst/tmpl/GstElement.sgml: * docs/gst/tmpl/GstEvent.sgml: * docs/gst/tmpl/GstIndex.sgml: * docs/gst/tmpl/GstStructure.sgml: * docs/gst/tmpl/GstTag.sgml: * docs/gst/tmpl/cothreads.sgml: * docs/gst/tmpl/cothreads_compat.sgml: * docs/gst/tmpl/gettext.sgml: * docs/gst/tmpl/grammar.tab.sgml: * docs/gst/tmpl/gst-i18n-app.sgml: * docs/gst/tmpl/gst-i18n-lib.sgml: * docs/gst/tmpl/gst.sgml: * docs/gst/tmpl/gst_private.sgml: * docs/gst/tmpl/gstaggregator.sgml: * docs/gst/tmpl/gstarch.sgml: * docs/gst/tmpl/gstatomic.sgml: * docs/gst/tmpl/gstatomic_impl.sgml: * docs/gst/tmpl/gstbin.sgml: * docs/gst/tmpl/gstbuffer.sgml: * docs/gst/tmpl/gstbufferstore.sgml: * docs/gst/tmpl/gstcaps.sgml: * docs/gst/tmpl/gstclock.sgml: * docs/gst/tmpl/gstcompat.sgml: * docs/gst/tmpl/gstconfig.sgml: * docs/gst/tmpl/gstcpu.sgml: * docs/gst/tmpl/gstdata.sgml: * docs/gst/tmpl/gstdata_private.sgml: * docs/gst/tmpl/gstelement.sgml: * docs/gst/tmpl/gstenumtypes.sgml: * docs/gst/tmpl/gsterror.sgml: * docs/gst/tmpl/gstevent.sgml: * docs/gst/tmpl/gstfakesink.sgml: * docs/gst/tmpl/gstfakesrc.sgml: * docs/gst/tmpl/gstfilesink.sgml: * docs/gst/tmpl/gstfilter.sgml: * docs/gst/tmpl/gstindex.sgml: * docs/gst/tmpl/gstinfo.sgml: * docs/gst/tmpl/gstinterface.sgml: * docs/gst/tmpl/gstlog.sgml: * docs/gst/tmpl/gstmacros.sgml: * docs/gst/tmpl/gstmarshal.sgml: * docs/gst/tmpl/gstmd5sink.sgml: * docs/gst/tmpl/gstmultifilesrc.sgml: * docs/gst/tmpl/gstobject.sgml: * docs/gst/tmpl/gstpad.sgml: * docs/gst/tmpl/gstparse.sgml: * docs/gst/tmpl/gstpipeline.sgml: * docs/gst/tmpl/gstplugin.sgml: * docs/gst/tmpl/gstpluginfeature.sgml: * docs/gst/tmpl/gstqueue.sgml: * docs/gst/tmpl/gstreamer-unused.sgml: * docs/gst/tmpl/gstregistry.sgml: * docs/gst/tmpl/gstregistrypool.sgml: * docs/gst/tmpl/gstscheduler.sgml: * docs/gst/tmpl/gstsearchfuncs.sgml: * docs/gst/tmpl/gstshaper.sgml: * docs/gst/tmpl/gstspider.sgml: * docs/gst/tmpl/gstspideridentity.sgml: * docs/gst/tmpl/gststructure.sgml: * docs/gst/tmpl/gstsystemclock.sgml: * docs/gst/tmpl/gsttag.sgml: * docs/gst/tmpl/gsttaginterface.sgml: * docs/gst/tmpl/gsttee.sgml: * docs/gst/tmpl/gstthread.sgml: * docs/gst/tmpl/gsttrace.sgml: * docs/gst/tmpl/gsttrashstack.sgml: * docs/gst/tmpl/gsttypefind.sgml: * docs/gst/tmpl/gsttypes.sgml: * docs/gst/tmpl/gsturi.sgml: * docs/gst/tmpl/gsturitype.sgml: * docs/gst/tmpl/gstutils.sgml: * docs/gst/tmpl/gstvalue.sgml: * docs/gst/tmpl/gstversion.sgml: * docs/gst/tmpl/gstxml.sgml: * docs/gst/tmpl/gstxmlregistry.sgml: * docs/gst/tmpl/gthread-cothreads.sgml: * docs/gst/tmpl/types.sgml:
99 lines
2 KiB
Text
99 lines
2 KiB
Text
<!-- ##### SECTION Title ##### -->
|
|
GstAtomic
|
|
|
|
<!-- ##### SECTION Short_Description ##### -->
|
|
Functions that implement atomic operations.
|
|
|
|
<!-- ##### SECTION Long_Description ##### -->
|
|
<para>
|
|
Functions that implement atomic operations on a #GstAtomicInt structure.
|
|
Atomic operations are thread safe and don't use heavyweight locking mechanisms.
|
|
</para>
|
|
<para>
|
|
These functions will be inlined in the GStreamer core but are available to plugins
|
|
as external methods.
|
|
</para>
|
|
|
|
<!-- ##### SECTION See_Also ##### -->
|
|
<para>
|
|
#GstMemChunk
|
|
</para>
|
|
|
|
<!-- ##### TYPEDEF gst_vgint ##### -->
|
|
<para>
|
|
|
|
</para>
|
|
|
|
|
|
<!-- ##### STRUCT GstAtomicInt ##### -->
|
|
<para>
|
|
A structure that contains an integer that can be modified
|
|
atomically.
|
|
</para>
|
|
|
|
@counter:
|
|
@lock:
|
|
|
|
<!-- ##### FUNCTION gst_atomic_int_init ##### -->
|
|
<para>
|
|
Initialize an allocated #GstAtomicInt with a value. Call this method
|
|
only once as it will allocate a mutex in the C-fallback case.
|
|
</para>
|
|
|
|
@aint: a #GstAtomicInt
|
|
@val: a new value
|
|
|
|
|
|
<!-- ##### FUNCTION gst_atomic_int_destroy ##### -->
|
|
<para>
|
|
Destroy a #GstAtomicInt. Call this method only once as it will
|
|
free the mutex in the C-fallback case.
|
|
</para>
|
|
|
|
@aint: a #GstAtomicInt
|
|
|
|
|
|
<!-- ##### FUNCTION gst_atomic_int_set ##### -->
|
|
<para>
|
|
Atomically set the value on the #GstAtomicInt.
|
|
</para>
|
|
|
|
@aint: a #GstAtomicInt
|
|
@val: The new value
|
|
|
|
|
|
<!-- ##### FUNCTION gst_atomic_int_read ##### -->
|
|
<para>
|
|
Atomically read the contents of a #GstAtomicInt
|
|
</para>
|
|
|
|
@aint: a #GstAtomicInt
|
|
@Returns: the value of the atomic int
|
|
|
|
|
|
<!-- ##### FUNCTION gst_atomic_int_add ##### -->
|
|
<para>
|
|
Atomically add the given value to the #GstAtomicInt.
|
|
</para>
|
|
|
|
@aint: a #GstAtomicInt
|
|
@val: the value to add
|
|
|
|
|
|
<!-- ##### FUNCTION gst_atomic_int_inc ##### -->
|
|
<para>
|
|
Atomically increment the #GstAtomicInt
|
|
</para>
|
|
|
|
@aint: a #GstAtomicInt
|
|
|
|
|
|
<!-- ##### FUNCTION gst_atomic_int_dec_and_test ##### -->
|
|
<para>
|
|
Atomically decrement the #GstAtomicInt and test if it is zero.
|
|
</para>
|
|
|
|
@aint: a #GstAtomicInt
|
|
@Returns: TRUE if the atomic int is 0
|
|
|
|
|