<!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::AudioClock 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.3 --> <div class="navigation" id="top"> <div class="tabs"> <ul> <li><a href="index.html"><span>Main Page</span></a></li> <li><a href="pages.html"><span>Related 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 List</span></a></li> <li><a href="hierarchy.html"><span>Class Hierarchy</span></a></li> <li><a href="functions.html"><span>Class Members</span></a></li> </ul> </div> <div class="navpath"><a class="el" href="namespaceGst.html">Gst</a>::<a class="el" href="classGst_1_1AudioClock.html">AudioClock</a> </div> </div> <div class="contents"> <h1>Gst::AudioClock Class Reference</h1><!-- doxytag: class="Gst::AudioClock" --><!-- doxytag: inherits="Gst::SystemClock" --> <p>A Helper object for implementing audio clocks. <a href="#_details">More...</a></p> <p>Inherits <a class="el" href="classGst_1_1SystemClock.html">Gst::SystemClock</a>.</p> <div class="dynheader"> Collaboration diagram for Gst::AudioClock:</div> <div class="dynsection"> <div class="center"><img src="classGst_1_1AudioClock__coll__graph.png" border="0" usemap="#Gst_1_1AudioClock_coll__map" alt="Collaboration graph"/></div> <map name="Gst_1_1AudioClock_coll__map" id="Gst_1_1AudioClock_coll__map"> <area shape="rect" id="node2" href="classGst_1_1SystemClock.html" title="A default clock that uses the current system time." alt="" coords="5,406,133,437"/><area shape="rect" id="node4" href="classGst_1_1Clock.html" title="An abstract class for global clocks." alt="" coords="28,326,111,357"/><area shape="rect" id="node6" href="classGst_1_1Object.html" title="A base class for the GStreamer object hierarchy." alt="" coords="25,246,113,277"/><area shape="rect" id="node8" href="../../../glibmm-2.4/reference/html/classGlib_1_1Object.html" title="Glib::Object" alt="" coords="24,166,115,197"/><area shape="rect" id="node10" href="../../../glibmm-2.4/reference/html/classGlib_1_1ObjectBase.html" title="Glib::ObjectBase" alt="" coords="9,86,129,117"/><area shape="rect" id="node12" href="../../../libsigc++-2.0/reference/html/structsigc_1_1trackable.html" title="sigc::trackable" alt="" coords="16,6,123,37"/></map> <center><span class="legend">[<a href="graph_legend.html">legend</a>]</span></center></div> <p><a href="classGst_1_1AudioClock-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><br class="typebreak"/> < <a class="el" href="namespaceGst.html#ad35f82b74cae5822fe16b231e8293cda">Gst::ClockTime</a>, const <br class="typebreak"/> <a class="elRef" href="../../../glibmm-2.4/reference/html/classGlib_1_1RefPtr.html">Glib::RefPtr</a>< <a class="el" href="classGst_1_1Clock.html">Gst::Clock</a> >& > </td><td class="memItemRight" valign="bottom"><a class="el" href="classGst_1_1AudioClock.html#ab26fe1aec14a7b3b7bb34a87fc319e4e">SlotGetTime</a></td></tr> <tr><td class="mdescLeft"> </td><td class="mdescRight">For example, <a class="el" href="namespaceGst.html#ad35f82b74cae5822fe16b231e8293cda" title="A data type to hold a time, measured in nanoseconds.">Gst::ClockTime</a> on_get_time(const Glib::RefPtr<Gst::Clock>& clock);. <a href="#ab26fe1aec14a7b3b7bb34a87fc319e4e"></a><br/></td></tr> <tr><td colspan="2"><h2>Public Member Functions</h2></td></tr> <tr><td class="memItemLeft" align="right" valign="top">virtual </td><td class="memItemRight" valign="bottom"><a class="el" href="classGst_1_1AudioClock.html#a0a7d6dc79e6b6078b782efac00c6511c">~AudioClock</a> ()</td></tr> <tr><td class="memItemLeft" align="right" valign="top">GstAudioClock* </td><td class="memItemRight" valign="bottom"><a class="el" href="classGst_1_1AudioClock.html#a3433b11a621ab898d05c36df2a331ea6">gobj</a> ()</td></tr> <tr><td class="mdescLeft"> </td><td class="mdescRight">Provides access to the underlying C GObject. <a href="#a3433b11a621ab898d05c36df2a331ea6"></a><br/></td></tr> <tr><td class="memItemLeft" align="right" valign="top">const GstAudioClock* </td><td class="memItemRight" valign="bottom"><a class="el" href="classGst_1_1AudioClock.html#a70c595a95a928f472dc8025b64531a2c">gobj</a> () const </td></tr> <tr><td class="mdescLeft"> </td><td class="mdescRight">Provides access to the underlying C GObject. <a href="#a70c595a95a928f472dc8025b64531a2c"></a><br/></td></tr> <tr><td class="memItemLeft" align="right" valign="top">GstAudioClock* </td><td class="memItemRight" valign="bottom"><a class="el" href="classGst_1_1AudioClock.html#a89862916e87b4b7bb77c2a3fff64271d">gobj_copy</a> ()</td></tr> <tr><td class="mdescLeft"> </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="#a89862916e87b4b7bb77c2a3fff64271d"></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>< <a class="el" href="classGst_1_1AudioClock.html">AudioClock</a> > </td><td class="memItemRight" valign="bottom"><a class="el" href="classGst_1_1AudioClock.html#ab565f6e1b1d2e934591608e81d04353e">create</a> (const <a class="elRef" href="../../../glibmm-2.4/reference/html/classGlib_1_1ustring.html">Glib::ustring</a>& name, const <a class="elRef" href="../../../libsigc++-2.0/reference/html/classsigc_1_1slot.html">SlotGetTime</a>& time_slot)</td></tr> <tr><td class="mdescLeft"> </td><td class="mdescRight">Create a new <a class="el" href="classGst_1_1AudioClock.html" title="A Helper object for implementing audio clocks.">Gst::AudioClock</a> instance. <a href="#ab565f6e1b1d2e934591608e81d04353e"></a><br/></td></tr> <tr><td colspan="2"><h2>Protected Member Functions</h2></td></tr> <tr><td class="memItemLeft" align="right" valign="top"> </td><td class="memItemRight" valign="bottom"><a class="el" href="classGst_1_1AudioClock.html#a83be91211e5a6f3fe98188fa6801b8ac">AudioClock</a> (const <a class="elRef" href="../../../glibmm-2.4/reference/html/classGlib_1_1ustring.html">Glib::ustring</a>& name, const <a class="elRef" href="../../../libsigc++-2.0/reference/html/classsigc_1_1slot.html">SlotGetTime</a>& time_slot)</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>< <a class="el" href="classGst_1_1AudioClock.html">Gst::AudioClock</a> > </td><td class="memItemRight" valign="bottom"><a class="el" href="classGst_1_1AudioClock.html#a6bf5b0951c7f33e9e58c34e2f2cd59f8">wrap</a> (GstAudioClock* object, bool take_copy=false)</td></tr> <tr><td class="mdescLeft"> </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="#a6bf5b0951c7f33e9e58c34e2f2cd59f8"></a><br/></td></tr> </table> <hr/><a name="_details"></a><h2>Detailed Description</h2> <p>A Helper object for implementing audio clocks. </p> <p><a class="el" href="classGst_1_1AudioClock.html" title="A Helper object for implementing audio clocks.">Gst::AudioClock</a> makes it easy for elements to implement a <a class="el" href="classGst_1_1Clock.html" title="An abstract class for global clocks.">Gst::Clock</a>, they simply need to provide a slot that returns the current clock time.</p> <p>This object is internally used to implement the clock in <a class="el" href="classGst_1_1BaseAudioSink.html" title="The base class for audio sinks.">Gst::BaseAudioSink</a>.</p> <p>Last reviewed on 2006-09-27 (0.10.12). </p> <hr/><h2>Member Typedef Documentation</h2> <a class="anchor" id="ab26fe1aec14a7b3b7bb34a87fc319e4e"></a><!-- doxytag: member="Gst::AudioClock::SlotGetTime" ref="ab26fe1aec14a7b3b7bb34a87fc319e4e" 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>< <a class="el" href="namespaceGst.html#ad35f82b74cae5822fe16b231e8293cda">Gst::ClockTime</a>, const <a class="elRef" href="../../../glibmm-2.4/reference/html/classGlib_1_1RefPtr.html">Glib::RefPtr</a><<a class="el" href="classGst_1_1Clock.html">Gst::Clock</a>>& > <a class="elRef" href="../../../libsigc++-2.0/reference/html/classsigc_1_1slot.html">Gst::AudioClock::SlotGetTime</a></td> </tr> </table> </div> <div class="memdoc"> <p>For example, <a class="el" href="namespaceGst.html#ad35f82b74cae5822fe16b231e8293cda" title="A data type to hold a time, measured in nanoseconds.">Gst::ClockTime</a> on_get_time(const Glib::RefPtr<Gst::Clock>& clock);. </p> <p>This function will be called whenever the current clock time needs to be calculated. If this function returns Gst::CLOCK_TIME_NONE, the last reported time will be returned by the clock.</p> <dl><dt><b>Parameters:</b></dt><dd> <table border="0" cellspacing="2" cellpadding="0"> <tr><td valign="top"></td><td valign="top"><em>clock</em> </td><td>The <a class="el" href="classGst_1_1AudioClock.html" title="A Helper object for implementing audio clocks.">Gst::AudioClock</a>. </td></tr> </table> </dd> </dl> </div> </div> <hr/><h2>Constructor & Destructor Documentation</h2> <a class="anchor" id="a0a7d6dc79e6b6078b782efac00c6511c"></a><!-- doxytag: member="Gst::AudioClock::~AudioClock" ref="a0a7d6dc79e6b6078b782efac00c6511c" args="()" --> <div class="memitem"> <div class="memproto"> <table class="memname"> <tr> <td class="memname">virtual Gst::AudioClock::~AudioClock </td> <td>(</td> <td class="paramname"></td> <td> ) </td> <td><code> [virtual]</code></td> </tr> </table> </div> <div class="memdoc"> </div> </div> <a class="anchor" id="a83be91211e5a6f3fe98188fa6801b8ac"></a><!-- doxytag: member="Gst::AudioClock::AudioClock" ref="a83be91211e5a6f3fe98188fa6801b8ac" args="(const Glib::ustring &name, const SlotGetTime &time_slot)" --> <div class="memitem"> <div class="memproto"> <table class="memname"> <tr> <td class="memname">Gst::AudioClock::AudioClock </td> <td>(</td> <td class="paramtype">const <a class="elRef" href="../../../glibmm-2.4/reference/html/classGlib_1_1ustring.html">Glib::ustring</a> & </td> <td class="paramname"> <em>name</em>, </td> </tr> <tr> <td class="paramkey"></td> <td></td> <td class="paramtype">const <a class="elRef" href="../../../libsigc++-2.0/reference/html/classsigc_1_1slot.html">SlotGetTime</a> & </td> <td class="paramname"> <em>time_slot</em></td><td> </td> </tr> <tr> <td></td> <td>)</td> <td></td><td></td><td><code> [protected]</code></td> </tr> </table> </div> <div class="memdoc"> </div> </div> <hr/><h2>Member Function Documentation</h2> <a class="anchor" id="ab565f6e1b1d2e934591608e81d04353e"></a><!-- doxytag: member="Gst::AudioClock::create" ref="ab565f6e1b1d2e934591608e81d04353e" args="(const Glib::ustring &name, const SlotGetTime &time_slot)" --> <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><<a class="el" href="classGst_1_1AudioClock.html">AudioClock</a>> Gst::AudioClock::create </td> <td>(</td> <td class="paramtype">const <a class="elRef" href="../../../glibmm-2.4/reference/html/classGlib_1_1ustring.html">Glib::ustring</a> & </td> <td class="paramname"> <em>name</em>, </td> </tr> <tr> <td class="paramkey"></td> <td></td> <td class="paramtype">const <a class="elRef" href="../../../libsigc++-2.0/reference/html/classsigc_1_1slot.html">SlotGetTime</a> & </td> <td class="paramname"> <em>time_slot</em></td><td> </td> </tr> <tr> <td></td> <td>)</td> <td></td><td></td><td><code> [static]</code></td> </tr> </table> </div> <div class="memdoc"> <p>Create a new <a class="el" href="classGst_1_1AudioClock.html" title="A Helper object for implementing audio clocks.">Gst::AudioClock</a> instance. </p> <p>Whenever the clock time should be calculated it will call <em>time_slot</em>. When <em>time_slot</em> returns Gst::CLOCK_TIME_NONE, the clock will return the last reported time.</p> <dl><dt><b>Parameters:</b></dt><dd> <table border="0" cellspacing="2" cellpadding="0"> <tr><td valign="top"></td><td valign="top"><em>name</em> </td><td>The name of the clock. </td></tr> <tr><td valign="top"></td><td valign="top"><em>time_slot</em> </td><td>A slot that returns the time.</td></tr> </table> </dd> </dl> <dl class="return"><dt><b>Returns:</b></dt><dd>a new <a class="el" href="classGst_1_1AudioClock.html" title="A Helper object for implementing audio clocks.">Gst::AudioClock</a>. </dd></dl> </div> </div> <a class="anchor" id="a70c595a95a928f472dc8025b64531a2c"></a><!-- doxytag: member="Gst::AudioClock::gobj" ref="a70c595a95a928f472dc8025b64531a2c" args="() const " --> <div class="memitem"> <div class="memproto"> <table class="memname"> <tr> <td class="memname">const GstAudioClock* Gst::AudioClock::gobj </td> <td>(</td> <td class="paramname"></td> <td> ) </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_1SystemClock.html#aca0d8cd01b925e7f931dfdfa19caf223">Gst::SystemClock</a>.</p> </div> </div> <a class="anchor" id="a3433b11a621ab898d05c36df2a331ea6"></a><!-- doxytag: member="Gst::AudioClock::gobj" ref="a3433b11a621ab898d05c36df2a331ea6" args="()" --> <div class="memitem"> <div class="memproto"> <table class="memname"> <tr> <td class="memname">GstAudioClock* Gst::AudioClock::gobj </td> <td>(</td> <td class="paramname"></td> <td> ) </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_1SystemClock.html#a3ab62611768fae656296202660905223">Gst::SystemClock</a>.</p> </div> </div> <a class="anchor" id="a89862916e87b4b7bb77c2a3fff64271d"></a><!-- doxytag: member="Gst::AudioClock::gobj_copy" ref="a89862916e87b4b7bb77c2a3fff64271d" args="()" --> <div class="memitem"> <div class="memproto"> <table class="memname"> <tr> <td class="memname">GstAudioClock* Gst::AudioClock::gobj_copy </td> <td>(</td> <td class="paramname"></td> <td> ) </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_1SystemClock.html#acfcaad3c7fee0e7e51c98a9d152fe00c">Gst::SystemClock</a>.</p> </div> </div> <hr/><h2>Friends And Related Function Documentation</h2> <a class="anchor" id="a6bf5b0951c7f33e9e58c34e2f2cd59f8"></a><!-- doxytag: member="Gst::AudioClock::wrap" ref="a6bf5b0951c7f33e9e58c34e2f2cd59f8" args="(GstAudioClock *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>< <a class="el" href="classGst_1_1AudioClock.html">Gst::AudioClock</a> > wrap </td> <td>(</td> <td class="paramtype">GstAudioClock * </td> <td class="paramname"> <em>object</em>, </td> </tr> <tr> <td class="paramkey"></td> <td></td> <td class="paramtype">bool </td> <td class="paramname"> <em>take_copy</em> = <code>false</code></td><td> </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> </td><td>The C instance. </td></tr> <tr><td valign="top"></td><td valign="top"><em>take_copy</em> </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/audioclock.h</li> </ul> </div> <hr class="footer"/><address style="text-align: right;"><small>Generated on Mon Apr 12 20:33:48 2010 for gstreamermm by  <a href="http://www.doxygen.org/index.html"> <img class="footer" src="doxygen.png" alt="doxygen"/></a> 1.6.3 </small></address> </body> </html>