Sophie

Sophie

distrib > Mandriva > 2010.0 > i586 > media > contrib-release > by-pkgid > 7a65d2578765429f23843d9c8d1c0efa > files > 746

libgstreamermm-devel-0.10.5.2-1mdv2010.0.i586.rpm

<!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Transitional//EN" "http://www.w3.org/TR/xhtml1/DTD/xhtml1-transitional.dtd">
<html xmlns="http://www.w3.org/1999/xhtml">
<head>
<meta http-equiv="Content-Type" content="text/xhtml;charset=UTF-8"/>
<title>gstreamermm: Gst::TaskPool Class Reference</title>
<link href="tabs.css" rel="stylesheet" type="text/css"/>
<link href="doxygen.css" rel="stylesheet" type="text/css"/>
</head>
<body>
<!-- Generated by Doxygen 1.6.1 -->
<div class="navigation" id="top">
  <div class="tabs">
    <ul>
      <li><a href="index.html"><span>Main&#160;Page</span></a></li>
      <li><a href="pages.html"><span>Related&#160;Pages</span></a></li>
      <li><a href="modules.html"><span>Modules</span></a></li>
      <li><a href="namespaces.html"><span>Namespaces</span></a></li>
      <li class="current"><a href="annotated.html"><span>Classes</span></a></li>
    </ul>
  </div>
  <div class="tabs">
    <ul>
      <li><a href="annotated.html"><span>Class&#160;List</span></a></li>
      <li><a href="hierarchy.html"><span>Class&#160;Hierarchy</span></a></li>
      <li><a href="functions.html"><span>Class&#160;Members</span></a></li>
    </ul>
  </div>
  <div class="navpath"><a class="el" href="namespaceGst.html">Gst</a>::<a class="el" href="classGst_1_1TaskPool.html">TaskPool</a>
  </div>
</div>
<div class="contents">
<h1>Gst::TaskPool Class Reference</h1><!-- doxytag: class="Gst::TaskPool" --><!-- doxytag: inherits="Gst::Object" -->
<p><a class="el" href="classGst_1_1TaskPool.html" title="Gst::TaskPool - Pool of GStreamer streaming threads.">Gst::TaskPool</a> - Pool of GStreamer streaming threads. <a href="#_details">More...</a></p>

<p>Inherits <a class="el" href="classGst_1_1Object.html">Gst::Object</a>.</p>
<div class="dynheader">
Collaboration diagram for Gst::TaskPool:</div>
<div class="dynsection">
<div class="center"><img src="classGst_1_1TaskPool__coll__graph.png" border="0" usemap="#Gst_1_1TaskPool_coll__map" alt="Collaboration graph"/></div>
<map name="Gst_1_1TaskPool_coll__map" id="Gst_1_1TaskPool_coll__map">
<area shape="rect" href="classGst_1_1Object.html" title="Gst::Object &#45; Base class for the GStreamer object hierarchy." alt="" coords="21,237,109,267"/><area shape="rect" href="../../../glibmm-2.4/reference/html/classGlib_1_1Object.html" title="Glib::Object" alt="" coords="20,160,111,189"/><area shape="rect" href="../../../glibmm-2.4/reference/html/classGlib_1_1ObjectBase.html" title="Glib::ObjectBase" alt="" coords="5,83,125,112"/><area shape="rect" href="../../../libsigc++-2.0/reference/html/structsigc_1_1trackable.html" title="sigc::trackable" alt="" coords="12,5,119,35"/></map>
<center><span class="legend">[<a href="graph_legend.html">legend</a>]</span></center></div>

<p><a href="classGst_1_1TaskPool-members.html">List of all members.</a></p>
<table border="0" cellpadding="0" cellspacing="0">
<tr><td colspan="2"><h2>Public Types</h2></td></tr>
<tr><td class="memItemLeft" align="right" valign="top">typedef <a class="elRef" href="../../../libsigc++-2.0/reference/html/classsigc_1_1slot.html">sigc::slot</a>&lt; void &gt;&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="classGst_1_1TaskPool.html#a08de3ae178ec8cb586aa447f2c58b548">SlotPush</a></td></tr>
<tr><td class="mdescLeft">&#160;</td><td class="mdescRight">For example, void on_do_push();. <a href="#a08de3ae178ec8cb586aa447f2c58b548"></a><br/></td></tr>
<tr><td colspan="2"><h2>Public Member Functions</h2></td></tr>
<tr><td class="memItemLeft" align="right" valign="top">virtual&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="classGst_1_1TaskPool.html#a0219ba53496b820173b90cd2a6f2e9d7">~TaskPool</a> ()</td></tr>
<tr><td class="memItemLeft" align="right" valign="top">GstTaskPool*&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="classGst_1_1TaskPool.html#a4ac83b20ffdffe4a9abb55df881db45c">gobj</a> ()</td></tr>
<tr><td class="mdescLeft">&#160;</td><td class="mdescRight">Provides access to the underlying C GObject. <a href="#a4ac83b20ffdffe4a9abb55df881db45c"></a><br/></td></tr>
<tr><td class="memItemLeft" align="right" valign="top">const GstTaskPool*&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="classGst_1_1TaskPool.html#af1e070b668b16bc28f182074d005be65">gobj</a> () const </td></tr>
<tr><td class="mdescLeft">&#160;</td><td class="mdescRight">Provides access to the underlying C GObject. <a href="#af1e070b668b16bc28f182074d005be65"></a><br/></td></tr>
<tr><td class="memItemLeft" align="right" valign="top">GstTaskPool*&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="classGst_1_1TaskPool.html#a95e248e6cdd68ee0e000bb5c76e2d6c1">gobj_copy</a> ()</td></tr>
<tr><td class="mdescLeft">&#160;</td><td class="mdescRight">Provides access to the underlying C instance. The caller is responsible for unrefing it. Use when directly setting fields in structs. <a href="#a95e248e6cdd68ee0e000bb5c76e2d6c1"></a><br/></td></tr>
<tr><td class="memItemLeft" align="right" valign="top">void&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="classGst_1_1TaskPool.html#a73c6b1eff956b5a23fb17b91a404541e">prepare</a> ()</td></tr>
<tr><td class="memItemLeft" align="right" valign="top">gpointer&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="classGst_1_1TaskPool.html#ac83e65e642ba730de7624103f1b2545d">push</a> (const <a class="elRef" href="../../../libsigc++-2.0/reference/html/classsigc_1_1slot.html">SlotPush</a>&amp; slot)</td></tr>
<tr><td class="mdescLeft">&#160;</td><td class="mdescRight">Start the execution of a new thread from pool. <a href="#ac83e65e642ba730de7624103f1b2545d"></a><br/></td></tr>
<tr><td class="memItemLeft" align="right" valign="top">void&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="classGst_1_1TaskPool.html#a3c639b26335b701fbf39a0353e204c86">join</a> (gpointer id)</td></tr>
<tr><td class="mdescLeft">&#160;</td><td class="mdescRight">Join a task and/or return it to the pool. <a href="#a3c639b26335b701fbf39a0353e204c86"></a><br/></td></tr>
<tr><td class="memItemLeft" align="right" valign="top">void&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="classGst_1_1TaskPool.html#ad9e186ce45550f402853fbda38c25e95">cleanup</a> ()</td></tr>
<tr><td class="mdescLeft">&#160;</td><td class="mdescRight">Wait for all tasks to be stopped. <a href="#ad9e186ce45550f402853fbda38c25e95"></a><br/></td></tr>
<tr><td colspan="2"><h2>Static Public Member Functions</h2></td></tr>
<tr><td class="memItemLeft" align="right" valign="top">static <a class="elRef" href="../../../glibmm-2.4/reference/html/classGlib_1_1RefPtr.html">Glib::RefPtr</a>&lt; <a class="el" href="classGst_1_1TaskPool.html">TaskPool</a> &gt;&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="classGst_1_1TaskPool.html#a647c480b5a600b14f954e536a4d55e91">create</a> ()</td></tr>
<tr><td class="mdescLeft">&#160;</td><td class="mdescRight">Create a new default task pool. <a href="#a647c480b5a600b14f954e536a4d55e91"></a><br/></td></tr>
<tr><td colspan="2"><h2>Related Functions</h2></td></tr>
<tr><td colspan="2"><p>(Note that these are not member functions.) </p>
<br/><br/></td></tr>
<tr><td class="memItemLeft" align="right" valign="top"><a class="elRef" href="../../../glibmm-2.4/reference/html/classGlib_1_1RefPtr.html">Glib::RefPtr</a>&lt; <a class="el" href="classGst_1_1TaskPool.html">Gst::TaskPool</a> &gt;&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="classGst_1_1TaskPool.html#ae50baa545cf60a4412841ef455682ad9">wrap</a> (GstTaskPool* object, bool take_copy=false)</td></tr>
<tr><td class="mdescLeft">&#160;</td><td class="mdescRight">A <a class="elRef" href="../../../glibmm-2.4/reference/html/namespaceGlib.html#a671306f4a3a0cae5ab4d7a9d54886592">Glib::wrap()</a> method for this object. <a href="#ae50baa545cf60a4412841ef455682ad9"></a><br/></td></tr>
</table>
<hr/><a name="_details"></a><h2>Detailed Description</h2>
<p><a class="el" href="classGst_1_1TaskPool.html" title="Gst::TaskPool - Pool of GStreamer streaming threads.">Gst::TaskPool</a> - Pool of GStreamer streaming threads. </p>
<p>This object provides an abstraction for creating threads. The default implementation uses a regular <a class="elRef" href="../../../glibmm-2.4/reference/html/classGlib_1_1ThreadPool.html">Glib::ThreadPool</a> to start tasks.</p>
<p>Subclasses can be made to create custom threads.</p>
<p>Last reviewed on 2009-04-23 (0.10.24) </p>
<hr/><h2>Member Typedef Documentation</h2>
<a class="anchor" id="a08de3ae178ec8cb586aa447f2c58b548"></a><!-- doxytag: member="Gst::TaskPool::SlotPush" ref="a08de3ae178ec8cb586aa447f2c58b548" args="" -->
<div class="memitem">
<div class="memproto">
      <table class="memname">
        <tr>
          <td class="memname">typedef <a class="elRef" href="../../../libsigc++-2.0/reference/html/classsigc_1_1slot.html">sigc::slot</a>&lt;void&gt; <a class="elRef" href="../../../libsigc++-2.0/reference/html/classsigc_1_1slot.html">Gst::TaskPool::SlotPush</a></td>
        </tr>
      </table>
</div>
<div class="memdoc">

<p>For example, void on_do_push();. </p>

</div>
</div>
<hr/><h2>Constructor &amp; Destructor Documentation</h2>
<a class="anchor" id="a0219ba53496b820173b90cd2a6f2e9d7"></a><!-- doxytag: member="Gst::TaskPool::~TaskPool" ref="a0219ba53496b820173b90cd2a6f2e9d7" args="()" -->
<div class="memitem">
<div class="memproto">
      <table class="memname">
        <tr>
          <td class="memname">virtual Gst::TaskPool::~TaskPool </td>
          <td>(</td>
          <td class="paramname"></td>
          <td>&#160;)&#160;</td>
          <td><code> [virtual]</code></td>
        </tr>
      </table>
</div>
<div class="memdoc">

</div>
</div>
<hr/><h2>Member Function Documentation</h2>
<a class="anchor" id="ad9e186ce45550f402853fbda38c25e95"></a><!-- doxytag: member="Gst::TaskPool::cleanup" ref="ad9e186ce45550f402853fbda38c25e95" args="()" -->
<div class="memitem">
<div class="memproto">
      <table class="memname">
        <tr>
          <td class="memname">void Gst::TaskPool::cleanup </td>
          <td>(</td>
          <td class="paramname"></td>
          <td>&#160;)&#160;</td>
          <td></td>
        </tr>
      </table>
</div>
<div class="memdoc">

<p>Wait for all tasks to be stopped. </p>
<p>This is mainly used internally to ensure proper cleanup of internal data structures in test suites.</p>
<p>MT safe. </p>

</div>
</div>
<a class="anchor" id="a647c480b5a600b14f954e536a4d55e91"></a><!-- doxytag: member="Gst::TaskPool::create" ref="a647c480b5a600b14f954e536a4d55e91" args="()" -->
<div class="memitem">
<div class="memproto">
      <table class="memname">
        <tr>
          <td class="memname">static <a class="elRef" href="../../../glibmm-2.4/reference/html/classGlib_1_1RefPtr.html">Glib::RefPtr</a>&lt;<a class="el" href="classGst_1_1TaskPool.html">TaskPool</a>&gt; Gst::TaskPool::create </td>
          <td>(</td>
          <td class="paramname"></td>
          <td>&#160;)&#160;</td>
          <td><code> [static]</code></td>
        </tr>
      </table>
</div>
<div class="memdoc">

<p>Create a new default task pool. </p>
<p>The default task pool will use a regular <a class="elRef" href="../../../glibmm-2.4/reference/html/classGlib_1_1ThreadPool.html">Glib::ThreadPool</a> for threads. </p>
<dl class="return"><dt><b>Returns:</b></dt><dd>A new <a class="el" href="classGst_1_1TaskPool.html" title="Gst::TaskPool - Pool of GStreamer streaming threads.">Gst::TaskPool</a>. </dd></dl>

</div>
</div>
<a class="anchor" id="af1e070b668b16bc28f182074d005be65"></a><!-- doxytag: member="Gst::TaskPool::gobj" ref="af1e070b668b16bc28f182074d005be65" args="() const " -->
<div class="memitem">
<div class="memproto">
      <table class="memname">
        <tr>
          <td class="memname">const GstTaskPool* Gst::TaskPool::gobj </td>
          <td>(</td>
          <td class="paramname"></td>
          <td>&#160;)&#160;</td>
          <td> const<code> [inline]</code></td>
        </tr>
      </table>
</div>
<div class="memdoc">

<p>Provides access to the underlying C GObject. </p>

<p>Reimplemented from <a class="el" href="classGst_1_1Object.html#a11313ecde7bc68ee4ee43c0cf2e65c22">Gst::Object</a>.</p>

</div>
</div>
<a class="anchor" id="a4ac83b20ffdffe4a9abb55df881db45c"></a><!-- doxytag: member="Gst::TaskPool::gobj" ref="a4ac83b20ffdffe4a9abb55df881db45c" args="()" -->
<div class="memitem">
<div class="memproto">
      <table class="memname">
        <tr>
          <td class="memname">GstTaskPool* Gst::TaskPool::gobj </td>
          <td>(</td>
          <td class="paramname"></td>
          <td>&#160;)&#160;</td>
          <td><code> [inline]</code></td>
        </tr>
      </table>
</div>
<div class="memdoc">

<p>Provides access to the underlying C GObject. </p>

<p>Reimplemented from <a class="el" href="classGst_1_1Object.html#a3d889e949c76aa3ab4490026d6aca8ca">Gst::Object</a>.</p>

</div>
</div>
<a class="anchor" id="a95e248e6cdd68ee0e000bb5c76e2d6c1"></a><!-- doxytag: member="Gst::TaskPool::gobj_copy" ref="a95e248e6cdd68ee0e000bb5c76e2d6c1" args="()" -->
<div class="memitem">
<div class="memproto">
      <table class="memname">
        <tr>
          <td class="memname">GstTaskPool* Gst::TaskPool::gobj_copy </td>
          <td>(</td>
          <td class="paramname"></td>
          <td>&#160;)&#160;</td>
          <td></td>
        </tr>
      </table>
</div>
<div class="memdoc">

<p>Provides access to the underlying C instance. The caller is responsible for unrefing it. Use when directly setting fields in structs. </p>

<p>Reimplemented from <a class="el" href="classGst_1_1Object.html#a63d7202d3eb47c81ffc3ac16a895e9d1">Gst::Object</a>.</p>

</div>
</div>
<a class="anchor" id="a3c639b26335b701fbf39a0353e204c86"></a><!-- doxytag: member="Gst::TaskPool::join" ref="a3c639b26335b701fbf39a0353e204c86" args="(gpointer id)" -->
<div class="memitem">
<div class="memproto">
      <table class="memname">
        <tr>
          <td class="memname">void Gst::TaskPool::join </td>
          <td>(</td>
          <td class="paramtype">gpointer&#160;</td>
          <td class="paramname"> <em>id</em></td>
          <td>&#160;)&#160;</td>
          <td></td>
        </tr>
      </table>
</div>
<div class="memdoc">

<p>Join a task and/or return it to the pool. </p>
<p><em>id</em> is the id obtained from <a class="el" href="classGst_1_1TaskPool.html#ac83e65e642ba730de7624103f1b2545d" title="Start the execution of a new thread from pool.">push()</a>. </p>
<dl><dt><b>Parameters:</b></dt><dd>
  <table border="0" cellspacing="2" cellpadding="0">
    <tr><td valign="top"></td><td valign="top"><em>id</em>&#160;</td><td>The id. </td></tr>
  </table>
  </dd>
</dl>

</div>
</div>
<a class="anchor" id="a73c6b1eff956b5a23fb17b91a404541e"></a><!-- doxytag: member="Gst::TaskPool::prepare" ref="a73c6b1eff956b5a23fb17b91a404541e" args="()" -->
<div class="memitem">
<div class="memproto">
      <table class="memname">
        <tr>
          <td class="memname">void Gst::TaskPool::prepare </td>
          <td>(</td>
          <td class="paramname"></td>
          <td>&#160;)&#160;</td>
          <td></td>
        </tr>
      </table>
</div>
<div class="memdoc">
<dl><dt><b>Exceptions:</b></dt><dd>
  <table border="0" cellspacing="2" cellpadding="0">
    <tr><td valign="top"></td><td valign="top"><em>Glib::Error.</em>&#160;</td><td></td></tr>
  </table>
  </dd>
</dl>

</div>
</div>
<a class="anchor" id="ac83e65e642ba730de7624103f1b2545d"></a><!-- doxytag: member="Gst::TaskPool::push" ref="ac83e65e642ba730de7624103f1b2545d" args="(const SlotPush &amp;slot)" -->
<div class="memitem">
<div class="memproto">
      <table class="memname">
        <tr>
          <td class="memname">gpointer Gst::TaskPool::push </td>
          <td>(</td>
          <td class="paramtype">const <a class="elRef" href="../../../libsigc++-2.0/reference/html/classsigc_1_1slot.html">SlotPush</a> &amp;&#160;</td>
          <td class="paramname"> <em>slot</em></td>
          <td>&#160;)&#160;</td>
          <td></td>
        </tr>
      </table>
</div>
<div class="memdoc">

<p>Start the execution of a new thread from pool. </p>
<dl><dt><b>Parameters:</b></dt><dd>
  <table border="0" cellspacing="2" cellpadding="0">
    <tr><td valign="top"></td><td valign="top"><em>slot</em>&#160;</td><td>The function to call. </td></tr>
  </table>
  </dd>
</dl>
<dl class="return"><dt><b>Returns:</b></dt><dd>A pointer that should be used for the <a class="el" href="classGst_1_1TaskPool.html#a3c639b26335b701fbf39a0353e204c86" title="Join a task and/or return it to the pool.">join()</a> method. This pointer can be 0, you must check error to detect errors. </dd></dl>
<dl><dt><b>Exceptions:</b></dt><dd>
  <table border="0" cellspacing="2" cellpadding="0">
    <tr><td valign="top"></td><td valign="top"><em>Glib::Error.</em>&#160;</td><td></td></tr>
  </table>
  </dd>
</dl>

</div>
</div>
<hr/><h2>Friends And Related Function Documentation</h2>
<a class="anchor" id="ae50baa545cf60a4412841ef455682ad9"></a><!-- doxytag: member="Gst::TaskPool::wrap" ref="ae50baa545cf60a4412841ef455682ad9" args="(GstTaskPool *object, bool take_copy=false)" -->
<div class="memitem">
<div class="memproto">
      <table class="memname">
        <tr>
          <td class="memname"><a class="elRef" href="../../../glibmm-2.4/reference/html/classGlib_1_1RefPtr.html">Glib::RefPtr</a>&lt; <a class="el" href="classGst_1_1TaskPool.html">Gst::TaskPool</a> &gt; wrap </td>
          <td>(</td>
          <td class="paramtype">GstTaskPool *&#160;</td>
          <td class="paramname"> <em>object</em>, </td>
        </tr>
        <tr>
          <td class="paramkey"></td>
          <td></td>
          <td class="paramtype">bool&#160;</td>
          <td class="paramname"> <em>take_copy</em> = <code>false</code></td><td>&#160;</td>
        </tr>
        <tr>
          <td></td>
          <td>)</td>
          <td></td><td></td><td><code> [related]</code></td>
        </tr>
      </table>
</div>
<div class="memdoc">

<p>A <a class="elRef" href="../../../glibmm-2.4/reference/html/namespaceGlib.html#a671306f4a3a0cae5ab4d7a9d54886592">Glib::wrap()</a> method for this object. </p>
<dl><dt><b>Parameters:</b></dt><dd>
  <table border="0" cellspacing="2" cellpadding="0">
    <tr><td valign="top"></td><td valign="top"><em>object</em>&#160;</td><td>The C instance. </td></tr>
    <tr><td valign="top"></td><td valign="top"><em>take_copy</em>&#160;</td><td>False if the result should take ownership of the C instance. True if it should take a new copy or ref. </td></tr>
  </table>
  </dd>
</dl>
<dl class="return"><dt><b>Returns:</b></dt><dd>A C++ instance that wraps this C instance. </dd></dl>

</div>
</div>
<hr/>The documentation for this class was generated from the following file:<ul>
<li>gstreamermm/taskpool.h</li>
</ul>
</div>
<hr size="1"/><address style="text-align: right;"><small>Generated on Mon Sep 21 22:33:01 2009 for gstreamermm by&#160;
<a href="http://www.doxygen.org/index.html">
<img class="footer" src="doxygen.png" alt="doxygen"/></a> 1.6.1 </small></address>
</body>
</html>