Sophie

Sophie

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

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::EventQos 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_1EventQos.html">EventQos</a>
  </div>
</div>
<div class="contents">
<h1>Gst::EventQos Class Reference</h1><!-- doxytag: class="Gst::EventQos" --><!-- doxytag: inherits="Gst::Event" -->
<p>A QOS event. <a href="#_details">More...</a></p>

<p>Inherits <a class="el" href="classGst_1_1Event.html">Gst::Event</a>.</p>
<div class="dynheader">
Collaboration diagram for Gst::EventQos:</div>
<div class="dynsection">
<div class="center"><img src="classGst_1_1EventQos__coll__graph.png" border="0" usemap="#Gst_1_1EventQos_coll__map" alt="Collaboration graph"/></div>
<map name="Gst_1_1EventQos_coll__map" id="Gst_1_1EventQos_coll__map">
<area shape="rect" href="classGst_1_1Event.html" title="Gst::Event &#45; A structure describing events that are passed up and down a pipeline..." alt="" coords="17,83,100,112"/><area shape="rect" href="classMiniObject.html" title="MiniObject" alt="" coords="17,5,100,35"/></map>
<center><span class="legend">[<a href="graph_legend.html">legend</a>]</span></center></div>

<p><a href="classGst_1_1EventQos-members.html">List of all members.</a></p>
<table border="0" cellpadding="0" cellspacing="0">
<tr><td colspan="2"><h2>Public Member Functions</h2></td></tr>
<tr><td class="memItemLeft" align="right" valign="top">&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="classGst_1_1EventQos.html#aac26c4853883c8421b5309fd49e7206d">EventQos</a> (GstEvent* event)</td></tr>
<tr><td class="memItemLeft" align="right" valign="top">void&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="classGst_1_1EventQos.html#ae101ba390c4de303c41b99b812b5b173">parse</a> (double&amp; proportion, <a class="el" href="namespaceGst.html#a1bd878eb666682156ef268a6ff0ad16c">ClockTimeDiff</a>&amp; diff, <a class="el" href="namespaceGst.html#ad35f82b74cae5822fe16b231e8293cda">ClockTime</a>&amp; timestamp) const </td></tr>
<tr><td class="mdescLeft">&#160;</td><td class="mdescRight">Get the proportion, diff and timestamp in the qos event. <a href="#ae101ba390c4de303c41b99b812b5b173"></a><br/></td></tr>
<tr><td class="memItemLeft" align="right" valign="top">double&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="classGst_1_1EventQos.html#afcb868d25c7a752a5001f3524fbb1bae">parse</a> () const </td></tr>
<tr><td class="mdescLeft">&#160;</td><td class="mdescRight">Get the proportion in the qos event. <a href="#afcb868d25c7a752a5001f3524fbb1bae"></a><br/></td></tr>
<tr><td class="memItemLeft" align="right" valign="top"><a class="el" href="namespaceGst.html#a1bd878eb666682156ef268a6ff0ad16c">ClockTimeDiff</a>&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="classGst_1_1EventQos.html#af2cd75869782794c60e7df2ec7beda90">parse_diff</a> () const </td></tr>
<tr><td class="mdescLeft">&#160;</td><td class="mdescRight">Get the diff in the qos event. <a href="#af2cd75869782794c60e7df2ec7beda90"></a><br/></td></tr>
<tr><td class="memItemLeft" align="right" valign="top"><a class="el" href="namespaceGst.html#ad35f82b74cae5822fe16b231e8293cda">ClockTime</a>&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="classGst_1_1EventQos.html#a4b31c49eb32626b21e90ed4b28a50fc9">parse_timestamp</a> () const </td></tr>
<tr><td class="mdescLeft">&#160;</td><td class="mdescRight">Get the timestamp in the qos event. <a href="#a4b31c49eb32626b21e90ed4b28a50fc9"></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_1Event.html">Gst::Event</a> &gt;&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="classGst_1_1EventQos.html#ac7bfd87ff80c301cf23c34cba507ac61">create</a> (double proportion, <a class="el" href="namespaceGst.html#a1bd878eb666682156ef268a6ff0ad16c">ClockTimeDiff</a> diff, <a class="el" href="namespaceGst.html#ad35f82b74cae5822fe16b231e8293cda">ClockTime</a> timestamp)</td></tr>
<tr><td class="mdescLeft">&#160;</td><td class="mdescRight">Allocate a new qos event with the given values. <a href="#ac7bfd87ff80c301cf23c34cba507ac61"></a><br/></td></tr>
</table>
<hr/><a name="_details"></a><h2>Detailed Description</h2>
<p>A QOS event. </p>
<p>See <a class="el" href="classGst_1_1EventQos.html#ac7bfd87ff80c301cf23c34cba507ac61" title="Allocate a new qos event with the given values.">create()</a> for more details. </p>
<hr/><h2>Constructor &amp; Destructor Documentation</h2>
<a class="anchor" id="aac26c4853883c8421b5309fd49e7206d"></a><!-- doxytag: member="Gst::EventQos::EventQos" ref="aac26c4853883c8421b5309fd49e7206d" args="(GstEvent *event)" -->
<div class="memitem">
<div class="memproto">
      <table class="memname">
        <tr>
          <td class="memname">Gst::EventQos::EventQos </td>
          <td>(</td>
          <td class="paramtype">GstEvent *&#160;</td>
          <td class="paramname"> <em>event</em></td>
          <td>&#160;)&#160;</td>
          <td><code> [explicit]</code></td>
        </tr>
      </table>
</div>
<div class="memdoc">

</div>
</div>
<hr/><h2>Member Function Documentation</h2>
<a class="anchor" id="ac7bfd87ff80c301cf23c34cba507ac61"></a><!-- doxytag: member="Gst::EventQos::create" ref="ac7bfd87ff80c301cf23c34cba507ac61" args="(double proportion, ClockTimeDiff diff, ClockTime timestamp)" -->
<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_1Event.html">Gst::Event</a>&gt; Gst::EventQos::create </td>
          <td>(</td>
          <td class="paramtype">double&#160;</td>
          <td class="paramname"> <em>proportion</em>, </td>
        </tr>
        <tr>
          <td class="paramkey"></td>
          <td></td>
          <td class="paramtype"><a class="el" href="namespaceGst.html#a1bd878eb666682156ef268a6ff0ad16c">ClockTimeDiff</a>&#160;</td>
          <td class="paramname"> <em>diff</em>, </td>
        </tr>
        <tr>
          <td class="paramkey"></td>
          <td></td>
          <td class="paramtype"><a class="el" href="namespaceGst.html#ad35f82b74cae5822fe16b231e8293cda">ClockTime</a>&#160;</td>
          <td class="paramname"> <em>timestamp</em></td><td>&#160;</td>
        </tr>
        <tr>
          <td></td>
          <td>)</td>
          <td></td><td></td><td><code> [static]</code></td>
        </tr>
      </table>
</div>
<div class="memdoc">

<p>Allocate a new qos event with the given values. </p>
<p>The QOS event is generated in an element that wants an upstream element to either reduce or increase its rate because of high/low CPU load or other resource usage such as network performance. Typically sinks generate these events for each buffer they receive.</p>
<p>proportion indicates the real-time performance of the streaming in the element that generated the QoS event (usually the sink). The value is generally computed based on more long term statistics about the streams timestamps compared to the clock. A value &lt; 1.0 indicates that the upstream element is producing data faster than real-time. A value &gt; 1.0 indicates that the upstream element is not producing data fast enough. 1.0 is the ideal proportion value. The proportion value can safely be used to lower or increase the quality of the element.</p>
<p>diff is the difference against the clock in running time of the last buffer that caused the element to generate the QOS event. A negative value means that the buffer with timestamp arrived in time. A positive value indicates how late the buffer with timestamp was.</p>
<p>timestamp is the timestamp of the last buffer that cause the element to generate the QOS event. It is expressed in running time and thus an ever increasing value.</p>
<p>The upstream element can use the diff and timestamp values to decide whether to process more buffers. For possitive diff, all buffers with timestamp &lt;= timestamp + diff will certainly arrive late in the sink as well.</p>
<p>The application can use general event probes to intercept the QoS event and implement custom application specific QoS handling.</p>
<dl><dt><b>Parameters:</b></dt><dd>
  <table border="0" cellspacing="2" cellpadding="0">
    <tr><td valign="top"></td><td valign="top"><em>proportion</em>&#160;</td><td>The proportion of the qos message. </td></tr>
    <tr><td valign="top"></td><td valign="top"><em>diff</em>&#160;</td><td>The time difference of the last clock sync. </td></tr>
    <tr><td valign="top"></td><td valign="top"><em>timestamp</em>&#160;</td><td>The timestamp of the buffer. </td></tr>
  </table>
  </dd>
</dl>
<dl class="return"><dt><b>Returns:</b></dt><dd>A new QOS event. </dd></dl>

</div>
</div>
<a class="anchor" id="afcb868d25c7a752a5001f3524fbb1bae"></a><!-- doxytag: member="Gst::EventQos::parse" ref="afcb868d25c7a752a5001f3524fbb1bae" args="() const " -->
<div class="memitem">
<div class="memproto">
      <table class="memname">
        <tr>
          <td class="memname">double Gst::EventQos::parse </td>
          <td>(</td>
          <td class="paramname"></td>
          <td>&#160;)&#160;</td>
          <td> const</td>
        </tr>
      </table>
</div>
<div class="memdoc">

<p>Get the proportion in the qos event. </p>
<p>See <a class="el" href="classGst_1_1EventQos.html#ac7bfd87ff80c301cf23c34cba507ac61" title="Allocate a new qos event with the given values.">create()</a> for more information about the different QoS values.</p>
<dl class="return"><dt><b>Returns:</b></dt><dd>The proportion. </dd></dl>

</div>
</div>
<a class="anchor" id="ae101ba390c4de303c41b99b812b5b173"></a><!-- doxytag: member="Gst::EventQos::parse" ref="ae101ba390c4de303c41b99b812b5b173" args="(double &amp;proportion, ClockTimeDiff &amp;diff, ClockTime &amp;timestamp) const " -->
<div class="memitem">
<div class="memproto">
      <table class="memname">
        <tr>
          <td class="memname">void Gst::EventQos::parse </td>
          <td>(</td>
          <td class="paramtype">double &amp;&#160;</td>
          <td class="paramname"> <em>proportion</em>, </td>
        </tr>
        <tr>
          <td class="paramkey"></td>
          <td></td>
          <td class="paramtype"><a class="el" href="namespaceGst.html#a1bd878eb666682156ef268a6ff0ad16c">ClockTimeDiff</a>&amp;&#160;</td>
          <td class="paramname"> <em>diff</em>, </td>
        </tr>
        <tr>
          <td class="paramkey"></td>
          <td></td>
          <td class="paramtype"><a class="el" href="namespaceGst.html#ad35f82b74cae5822fe16b231e8293cda">ClockTime</a>&amp;&#160;</td>
          <td class="paramname"> <em>timestamp</em></td><td>&#160;</td>
        </tr>
        <tr>
          <td></td>
          <td>)</td>
          <td></td><td></td><td> const</td>
        </tr>
      </table>
</div>
<div class="memdoc">

<p>Get the proportion, diff and timestamp in the qos event. </p>
<p>See <a class="el" href="classGst_1_1EventQos.html#ac7bfd87ff80c301cf23c34cba507ac61" title="Allocate a new qos event with the given values.">create()</a> for more information about the different QoS values.</p>
<dl><dt><b>Parameters:</b></dt><dd>
  <table border="0" cellspacing="2" cellpadding="0">
    <tr><td valign="top"></td><td valign="top"><em>proportion</em>&#160;</td><td>A reference to store the proportion in. </td></tr>
    <tr><td valign="top"></td><td valign="top"><em>diff</em>&#160;</td><td>A reference to store the diff in. </td></tr>
    <tr><td valign="top"></td><td valign="top"><em>timestamp</em>&#160;</td><td>A reference to store the timestamp in. </td></tr>
  </table>
  </dd>
</dl>

</div>
</div>
<a class="anchor" id="af2cd75869782794c60e7df2ec7beda90"></a><!-- doxytag: member="Gst::EventQos::parse_diff" ref="af2cd75869782794c60e7df2ec7beda90" args="() const " -->
<div class="memitem">
<div class="memproto">
      <table class="memname">
        <tr>
          <td class="memname"><a class="el" href="namespaceGst.html#a1bd878eb666682156ef268a6ff0ad16c">ClockTimeDiff</a> Gst::EventQos::parse_diff </td>
          <td>(</td>
          <td class="paramname"></td>
          <td>&#160;)&#160;</td>
          <td> const</td>
        </tr>
      </table>
</div>
<div class="memdoc">

<p>Get the diff in the qos event. </p>
<p>See <a class="el" href="classGst_1_1EventQos.html#ac7bfd87ff80c301cf23c34cba507ac61" title="Allocate a new qos event with the given values.">create()</a> for more information about the different QoS values.</p>
<dl class="return"><dt><b>Returns:</b></dt><dd>The difference. </dd></dl>

</div>
</div>
<a class="anchor" id="a4b31c49eb32626b21e90ed4b28a50fc9"></a><!-- doxytag: member="Gst::EventQos::parse_timestamp" ref="a4b31c49eb32626b21e90ed4b28a50fc9" args="() const " -->
<div class="memitem">
<div class="memproto">
      <table class="memname">
        <tr>
          <td class="memname"><a class="el" href="namespaceGst.html#ad35f82b74cae5822fe16b231e8293cda">ClockTime</a> Gst::EventQos::parse_timestamp </td>
          <td>(</td>
          <td class="paramname"></td>
          <td>&#160;)&#160;</td>
          <td> const</td>
        </tr>
      </table>
</div>
<div class="memdoc">

<p>Get the timestamp in the qos event. </p>
<p>See <a class="el" href="classGst_1_1EventQos.html#ac7bfd87ff80c301cf23c34cba507ac61" title="Allocate a new qos event with the given values.">create()</a> for more information about the different QoS values. </p>
<dl class="return"><dt><b>Returns:</b></dt><dd>The timestamp. </dd></dl>

</div>
</div>
<hr/>The documentation for this class was generated from the following file:<ul>
<li>gstreamermm/event.h</li>
</ul>
</div>
<hr size="1"/><address style="text-align: right;"><small>Generated on Mon Sep 21 22:32:55 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>