aboutsummaryrefslogtreecommitdiff
path: root/docs/gst/html/gstreamer-GstMiniObject.html
diff options
context:
space:
mode:
Diffstat (limited to 'docs/gst/html/gstreamer-GstMiniObject.html')
-rw-r--r--docs/gst/html/gstreamer-GstMiniObject.html70
1 files changed, 56 insertions, 14 deletions
diff --git a/docs/gst/html/gstreamer-GstMiniObject.html b/docs/gst/html/gstreamer-GstMiniObject.html
index be59c7f..3903994 100644
--- a/docs/gst/html/gstreamer-GstMiniObject.html
+++ b/docs/gst/html/gstreamer-GstMiniObject.html
@@ -3,8 +3,8 @@
<head>
<meta http-equiv="Content-Type" content="text/html; charset=UTF-8">
<title>GstMiniObject</title>
-<meta name="generator" content="DocBook XSL Stylesheets V1.75.2">
-<link rel="home" href="index.html" title="GStreamer 0.11 Core Reference Manual">
+<meta name="generator" content="DocBook XSL Stylesheets V1.76.1">
+<link rel="home" href="index.html" title="GStreamer 1.0 Core Reference Manual">
<link rel="up" href="libgstreamer.html" title="GStreamer Core Library">
<link rel="prev" href="gstreamer-GstMeta.html" title="GstMeta">
<link rel="next" href="GstObject.html" title="GstObject">
@@ -17,7 +17,7 @@
<td><a accesskey="p" href="gstreamer-GstMeta.html"><img src="left.png" width="24" height="24" border="0" alt="Prev"></a></td>
<td><a accesskey="u" href="libgstreamer.html"><img src="up.png" width="24" height="24" border="0" alt="Up"></a></td>
<td><a accesskey="h" href="index.html"><img src="home.png" width="24" height="24" border="0" alt="Home"></a></td>
-<th width="100%" align="center">GStreamer 0.11 Core Reference Manual</th>
+<th width="100%" align="center">GStreamer 1.0 Core Reference Manual</th>
<td><a accesskey="n" href="GstObject.html"><img src="right.png" width="24" height="24" border="0" alt="Next"></a></td>
</tr>
<tr><td colspan="5" class="shortcuts">
@@ -62,7 +62,7 @@ enum <a class="link" href="gstreamer-GstMiniObject.html#GstMiniOb
type_name)
<span class="returnvalue">void</span> <a class="link" href="gstreamer-GstMiniObject.html#gst-mini-object-init" title="gst_mini_object_init ()">gst_mini_object_init</a> (<em class="parameter"><code><a class="link" href="gstreamer-GstMiniObject.html#GstMiniObject" title="struct GstMiniObject"><span class="type">GstMiniObject</span></a> *mini_object</code></em>,
<em class="parameter"><code><a href="http://library.gnome.org/devel/gobject/unstable/gobject-Type-Information.html#GType"><span class="type">GType</span></a> type</code></em>,
- <em class="parameter"><code><a href="http://library.gnome.org/devel/glib/unstable/glib-Basic-Types.html#gsize"><span class="type">gsize</span></a> size</code></em>);
+ <em class="parameter"><code><span class="type">gsize</span> size</code></em>);
<a class="link" href="gstreamer-GstMiniObject.html#GstMiniObject" title="struct GstMiniObject"><span class="returnvalue">GstMiniObject</span></a> * <a class="link" href="gstreamer-GstMiniObject.html#gst-mini-object-copy" title="gst_mini_object_copy ()">gst_mini_object_copy</a> (<em class="parameter"><code>const <a class="link" href="gstreamer-GstMiniObject.html#GstMiniObject" title="struct GstMiniObject"><span class="type">GstMiniObject</span></a> *mini_object</code></em>);
<a href="http://library.gnome.org/devel/glib/unstable/glib-Basic-Types.html#gboolean"><span class="returnvalue">gboolean</span></a> <a class="link" href="gstreamer-GstMiniObject.html#gst-mini-object-is-writable" title="gst_mini_object_is_writable ()">gst_mini_object_is_writable</a> (<em class="parameter"><code>const <a class="link" href="gstreamer-GstMiniObject.html#GstMiniObject" title="struct GstMiniObject"><span class="type">GstMiniObject</span></a> *mini_object</code></em>);
<a class="link" href="gstreamer-GstMiniObject.html#GstMiniObject" title="struct GstMiniObject"><span class="returnvalue">GstMiniObject</span></a> * <a class="link" href="gstreamer-GstMiniObject.html#gst-mini-object-make-writable" title="gst_mini_object_make_writable ()">gst_mini_object_make_writable</a> (<em class="parameter"><code><a class="link" href="gstreamer-GstMiniObject.html#GstMiniObject" title="struct GstMiniObject"><span class="type">GstMiniObject</span></a> *mini_object</code></em>);
@@ -84,13 +84,30 @@ enum <a class="link" href="gstreamer-GstMiniObject.html#GstMiniOb
<div class="refsect1">
<a name="gstreamer-GstMiniObject.description"></a><h2>Description</h2>
<p>
-<a class="link" href="gstreamer-GstMiniObject.html#GstMiniObject" title="struct GstMiniObject"><span class="type">GstMiniObject</span></a> is a baseclass like <a href="http://library.gnome.org/devel/gobject/unstable/gobject-The-Base-Object-Type.html#GObject"><span class="type">GObject</span></a>, but has been stripped down of
-features to be fast and small.
-It offers sub-classing and ref-counting in the same way as <a href="http://library.gnome.org/devel/gobject/unstable/gobject-The-Base-Object-Type.html#GObject"><span class="type">GObject</span></a> does.
-It has no properties and no signal-support though.
+<a class="link" href="gstreamer-GstMiniObject.html#GstMiniObject" title="struct GstMiniObject"><span class="type">GstMiniObject</span></a> is a simple structure that can be used to implement refcounted
+types.
</p>
<p>
-Last reviewed on 2005-11-23 (0.9.5)
+Subclasses will include <a class="link" href="gstreamer-GstMiniObject.html#GstMiniObject" title="struct GstMiniObject"><span class="type">GstMiniObject</span></a> as the first member in their structure
+and then call <a class="link" href="gstreamer-GstMiniObject.html#gst-mini-object-init" title="gst_mini_object_init ()"><code class="function">gst_mini_object_init()</code></a> to initialize the <a class="link" href="gstreamer-GstMiniObject.html#GstMiniObject" title="struct GstMiniObject"><span class="type">GstMiniObject</span></a> fields.
+</p>
+<p>
+<a class="link" href="gstreamer-GstMiniObject.html#gst-mini-object-ref" title="gst_mini_object_ref ()"><code class="function">gst_mini_object_ref()</code></a> and <a class="link" href="gstreamer-GstMiniObject.html#gst-mini-object-unref" title="gst_mini_object_unref ()"><code class="function">gst_mini_object_unref()</code></a> increment and decrement the
+refcount respectively. When the refcount of a mini-object reaches 0, the
+dispose function is called first and when this returns <a href="http://library.gnome.org/devel/glib/unstable/glib-Standard-Macros.html#TRUE:CAPS"><code class="literal">TRUE</code></a>, the free
+function of the miniobject is called.
+</p>
+<p>
+A copy can be made with <a class="link" href="gstreamer-GstMiniObject.html#gst-mini-object-copy" title="gst_mini_object_copy ()"><code class="function">gst_mini_object_copy()</code></a>.
+</p>
+<p>
+<a class="link" href="gstreamer-GstMiniObject.html#gst-mini-object-is-writable" title="gst_mini_object_is_writable ()"><code class="function">gst_mini_object_is_writable()</code></a> will return <a href="http://library.gnome.org/devel/glib/unstable/glib-Standard-Macros.html#TRUE:CAPS"><code class="literal">TRUE</code></a> when the refcount of the
+object is exactly 1, meaning the current caller has the only reference to the
+object. <a class="link" href="gstreamer-GstMiniObject.html#gst-mini-object-make-writable" title="gst_mini_object_make_writable ()"><code class="function">gst_mini_object_make_writable()</code></a> will return a writable version of the
+object, which might be a new copy when the refcount was not 1.
+</p>
+<p>
+Last reviewed on 2012-03-28 (0.11.3)
</p>
</div>
<div class="refsect1">
@@ -132,7 +149,7 @@ Get Value Func: g_value_get_boxed
<td>extra flags.</td>
</tr>
<tr>
-<td><p><span class="term"><a href="http://library.gnome.org/devel/glib/unstable/glib-Basic-Types.html#gsize"><span class="type">gsize</span></a> <em class="structfield"><code><a name="GstMiniObject.size"></a>size</code></em>;</span></p></td>
+<td><p><span class="term"><span class="type">gsize</span> <em class="structfield"><code><a name="GstMiniObject.size"></a>size</code></em>;</span></p></td>
<td>the size of the structure</td>
</tr>
<tr>
@@ -265,6 +282,16 @@ its adress as hash-index or the like.
<a name="GST-MINI-OBJECT-TYPE:CAPS"></a><h3>GST_MINI_OBJECT_TYPE()</h3>
<pre class="programlisting">#define GST_MINI_OBJECT_TYPE(obj) (GST_MINI_OBJECT_CAST(obj)-&gt;type)
</pre>
+<p>
+This macro returns the type of the mini-object.
+</p>
+<div class="variablelist"><table border="0">
+<col align="left" valign="top">
+<tbody><tr>
+<td><p><span class="term"><em class="parameter"><code>obj</code></em> :</span></p></td>
+<td>MiniObject to return type for.</td>
+</tr></tbody>
+</table></div>
</div>
<hr>
<div class="refsect2">
@@ -403,13 +430,29 @@ Get the allocated size of <em class="parameter"><code>obj</code></em>.
<div class="refsect2">
<a name="GST-DEFINE-MINI-OBJECT-TYPE:CAPS"></a><h3>GST_DEFINE_MINI_OBJECT_TYPE()</h3>
<pre class="programlisting">#define GST_DEFINE_MINI_OBJECT_TYPE(TypeName,type_name)</pre>
+<p>
+Define a new mini-object type with the given name
+</p>
+<div class="variablelist"><table border="0">
+<col align="left" valign="top">
+<tbody>
+<tr>
+<td><p><span class="term"><em class="parameter"><code>TypeName</code></em> :</span></p></td>
+<td>name of the new type in CamelCase</td>
+</tr>
+<tr>
+<td><p><span class="term"><em class="parameter"><code>type_name</code></em> :</span></p></td>
+<td>name of the new type</td>
+</tr>
+</tbody>
+</table></div>
</div>
<hr>
<div class="refsect2">
<a name="gst-mini-object-init"></a><h3>gst_mini_object_init ()</h3>
<pre class="programlisting"><span class="returnvalue">void</span> gst_mini_object_init (<em class="parameter"><code><a class="link" href="gstreamer-GstMiniObject.html#GstMiniObject" title="struct GstMiniObject"><span class="type">GstMiniObject</span></a> *mini_object</code></em>,
<em class="parameter"><code><a href="http://library.gnome.org/devel/gobject/unstable/gobject-Type-Information.html#GType"><span class="type">GType</span></a> type</code></em>,
- <em class="parameter"><code><a href="http://library.gnome.org/devel/glib/unstable/glib-Basic-Types.html#gsize"><span class="type">gsize</span></a> size</code></em>);</pre>
+ <em class="parameter"><code><span class="type">gsize</span> size</code></em>);</pre>
<p>
Initializes a mini-object with the desired type and size.
</p>
@@ -471,9 +514,8 @@ MT safe
<pre class="programlisting"><a href="http://library.gnome.org/devel/glib/unstable/glib-Basic-Types.html#gboolean"><span class="returnvalue">gboolean</span></a> gst_mini_object_is_writable (<em class="parameter"><code>const <a class="link" href="gstreamer-GstMiniObject.html#GstMiniObject" title="struct GstMiniObject"><span class="type">GstMiniObject</span></a> *mini_object</code></em>);</pre>
<p>
Checks if a mini-object is writable. A mini-object is writable
-if the reference count is one and the <a href="http://gstreamer.freedesktop.org/data/doc/gstreamer/head/gstreamer/html/gstreamer-GstMiniObject.html#GST-MINI-OBJECT-FLAG-READONLY:CAPS"><span class="type">GST_MINI_OBJECT_FLAG_READONLY</span></a>
-flag is not set. Modification of a mini-object should only be
-done after verifying that it is writable.
+if the reference count is one. Modification of a mini-object should
+only be done after verifying that it is writable.
</p>
<p>
MT safe