Sophie

Sophie

distrib > Fedora > 14 > x86_64 > media > os > by-pkgid > 9c481c872fb0ae0cbadccdc2f4a18ab6 > files > 178

libasync-devel-0.17.0-5.fc14.x86_64.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>Async: Async::AudioPassthrough 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.2-20100208 -->
<div class="navigation" id="top">
  <div class="tabs">
    <ul>
      <li><a href="index.html"><span>Main&nbsp;Page</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>
      <li><a href="files.html"><span>Files</span></a></li>
      <li><a href="dirs.html"><span>Directories</span></a></li>
      <li><a href="examples.html"><span>Examples</span></a></li>
    </ul>
  </div>
  <div class="tabs">
    <ul>
      <li><a href="annotated.html"><span>Class&nbsp;List</span></a></li>
      <li><a href="hierarchy.html"><span>Class&nbsp;Hierarchy</span></a></li>
      <li><a href="functions.html"><span>Class&nbsp;Members</span></a></li>
    </ul>
  </div>
  <div class="navpath"><a class="el" href="namespaceAsync.html">Async</a>::<a class="el" href="classAsync_1_1AudioPassthrough.html">AudioPassthrough</a>
  </div>
</div>
<div class="contents">
<h1>Async::AudioPassthrough Class Reference</h1><!-- doxytag: class="Async::AudioPassthrough" --><!-- doxytag: inherits="Async::AudioSink,Async::AudioSource" -->
<p>This class just let the audio pass through.  
<a href="#_details">More...</a></p>

<p><code>#include &lt;<a class="el" href="AsyncAudioPassthrough_8h_source.html">AsyncAudioPassthrough.h</a>&gt;</code></p>
<div class="dynheader">
Inheritance diagram for Async::AudioPassthrough:</div>
<div class="dynsection">
 <div class="center">
  <img src="classAsync_1_1AudioPassthrough.png" usemap="#Async::AudioPassthrough_map" alt=""/>
  <map id="Async::AudioPassthrough_map" name="Async::AudioPassthrough_map">
<area href="classAsync_1_1AudioSink.html" alt="Async::AudioSink" shape="rect" coords="0,0,202,24"/>
<area href="classAsync_1_1AudioSource.html" alt="Async::AudioSource" shape="rect" coords="212,0,414,24"/>
<area href="classAsync_1_1AudioStreamStateDetector.html" alt="Async::AudioStreamStateDetector" shape="rect" coords="106,112,308,136"/>
</map>
 </div>
</div>

<p><a href="classAsync_1_1AudioPassthrough-members.html">List of all members.</a></p>
<h2>Public Member Functions</h2>
<ul>
<li><a class="el" href="classAsync_1_1AudioPassthrough.html#ab7562901a80a1128799575da2de438c3">AudioPassthrough</a> (void)
<dl class="el"><dd class="mdescRight">Default constuctor.  <a href="#ab7562901a80a1128799575da2de438c3"></a><br/></dl><li>virtual <a class="el" href="classAsync_1_1AudioPassthrough.html#a34096efbab60b20a043e6a1ea5bb1d4a">~AudioPassthrough</a> (void)
<dl class="el"><dd class="mdescRight">Destructor.  <a href="#a34096efbab60b20a043e6a1ea5bb1d4a"></a><br/></dl><li>virtual int <a class="el" href="classAsync_1_1AudioPassthrough.html#ab0c0ea3766f1be55c2e08c5a4eca4b87">writeSamples</a> (const float *samples, int count)
<dl class="el"><dd class="mdescRight">Write samples into this audio sink.  <a href="#ab0c0ea3766f1be55c2e08c5a4eca4b87"></a><br/></dl><li>virtual void <a class="el" href="classAsync_1_1AudioPassthrough.html#ad22ce3a3af14c01b6c9e20c0a9672676">flushSamples</a> (void)
<dl class="el"><dd class="mdescRight">Tell the sink to flush the previously written samples.  <a href="#ad22ce3a3af14c01b6c9e20c0a9672676"></a><br/></dl><li>virtual void <a class="el" href="classAsync_1_1AudioPassthrough.html#a4591e75610b4b6f84699cc3f790695a4">resumeOutput</a> (void)
<dl class="el"><dd class="mdescRight">Resume audio output to the sink.  <a href="#a4591e75610b4b6f84699cc3f790695a4"></a><br/></dl><li>virtual void <a class="el" href="classAsync_1_1AudioPassthrough.html#a73ee065737064e255476bbd9a8b61fc9">allSamplesFlushed</a> (void)
<dl class="el"><dd class="mdescRight">The registered sink has flushed all samples.  <a href="#a73ee065737064e255476bbd9a8b61fc9"></a><br/></dl></ul>
<hr/><a name="_details"></a><h2>Detailed Description</h2>
<p>This class just let the audio pass through. </p>
<dl class="author"><dt><b>Author:</b></dt><dd>Tobias Blomberg / SM0SVX </dd></dl>
<dl class="date"><dt><b>Date:</b></dt><dd>2006-08-07</dd></dl>
<p>This class is both a source and a sink and just let the audio pass through. It can be used standalone but maybe is of more use when inheriting from it. For example if you want to snoop in on an audio streem without affecting it, just reimplement the writeSamples method and you have access to the samples. Just remember to call the sinkWriteSamples method to forward the samples. </p>

<p>Definition at line <a class="el" href="AsyncAudioPassthrough_8h_source.html#l00117">117</a> of file <a class="el" href="AsyncAudioPassthrough_8h_source.html">AsyncAudioPassthrough.h</a>.</p>
<hr/><h2>Constructor &amp; Destructor Documentation</h2>
<a class="anchor" id="ab7562901a80a1128799575da2de438c3"></a><!-- doxytag: member="Async::AudioPassthrough::AudioPassthrough" ref="ab7562901a80a1128799575da2de438c3" args="(void)" -->
<div class="memitem">
<div class="memproto">
      <table class="memname">
        <tr>
          <td class="memname">Async::AudioPassthrough::AudioPassthrough </td>
          <td>(</td>
          <td class="paramtype">void&nbsp;</td>
          <td class="paramname"></td>
          <td>&nbsp;)&nbsp;</td>
          <td><code> [inline]</code></td>
        </tr>
      </table>
</div>
<div class="memdoc">

<p>Default constuctor. </p>

<p>Definition at line <a class="el" href="AsyncAudioPassthrough_8h_source.html#l00123">123</a> of file <a class="el" href="AsyncAudioPassthrough_8h_source.html">AsyncAudioPassthrough.h</a>.</p>

</div>
</div>
<a class="anchor" id="a34096efbab60b20a043e6a1ea5bb1d4a"></a><!-- doxytag: member="Async::AudioPassthrough::~AudioPassthrough" ref="a34096efbab60b20a043e6a1ea5bb1d4a" args="(void)" -->
<div class="memitem">
<div class="memproto">
      <table class="memname">
        <tr>
          <td class="memname">virtual Async::AudioPassthrough::~AudioPassthrough </td>
          <td>(</td>
          <td class="paramtype">void&nbsp;</td>
          <td class="paramname"></td>
          <td>&nbsp;)&nbsp;</td>
          <td><code> [inline, virtual]</code></td>
        </tr>
      </table>
</div>
<div class="memdoc">

<p>Destructor. </p>

<p>Definition at line <a class="el" href="AsyncAudioPassthrough_8h_source.html#l00128">128</a> of file <a class="el" href="AsyncAudioPassthrough_8h_source.html">AsyncAudioPassthrough.h</a>.</p>

</div>
</div>
<hr/><h2>Member Function Documentation</h2>
<a class="anchor" id="a73ee065737064e255476bbd9a8b61fc9"></a><!-- doxytag: member="Async::AudioPassthrough::allSamplesFlushed" ref="a73ee065737064e255476bbd9a8b61fc9" args="(void)" -->
<div class="memitem">
<div class="memproto">
      <table class="memname">
        <tr>
          <td class="memname">virtual void Async::AudioPassthrough::allSamplesFlushed </td>
          <td>(</td>
          <td class="paramtype">void&nbsp;</td>
          <td class="paramname"></td>
          <td>&nbsp;)&nbsp;</td>
          <td><code> [inline, virtual]</code></td>
        </tr>
      </table>
</div>
<div class="memdoc">

<p>The registered sink has flushed all samples. </p>
<p>This function will be called when all samples have been flushed in the registered sink. This function is normally only called from a connected sink object. </p>

<p>Reimplemented from <a class="el" href="classAsync_1_1AudioSource.html#a563adf6411eddbd056abf206a12354b6">Async::AudioSource</a>.</p>

<p>Reimplemented in <a class="el" href="classAsync_1_1AudioStreamStateDetector.html#ac3c78e78d19c8bfb228b94b1b3e15f75">Async::AudioStreamStateDetector</a>.</p>

<p>Definition at line <a class="el" href="AsyncAudioPassthrough_8h_source.html#l00178">178</a> of file <a class="el" href="AsyncAudioPassthrough_8h_source.html">AsyncAudioPassthrough.h</a>.</p>

<p>References <a class="el" href="classAsync_1_1AudioSink.html#a2548622eb5c52ef80f3bd297f290be3c">Async::AudioSink::sourceAllSamplesFlushed()</a>.</p>

</div>
</div>
<a class="anchor" id="ad22ce3a3af14c01b6c9e20c0a9672676"></a><!-- doxytag: member="Async::AudioPassthrough::flushSamples" ref="ad22ce3a3af14c01b6c9e20c0a9672676" args="(void)" -->
<div class="memitem">
<div class="memproto">
      <table class="memname">
        <tr>
          <td class="memname">virtual void Async::AudioPassthrough::flushSamples </td>
          <td>(</td>
          <td class="paramtype">void&nbsp;</td>
          <td class="paramname"></td>
          <td>&nbsp;)&nbsp;</td>
          <td><code> [inline, virtual]</code></td>
        </tr>
      </table>
</div>
<div class="memdoc">

<p>Tell the sink to flush the previously written samples. </p>
<p>This function is used to tell the sink to flush previously written samples. When done flushing, the sink should call the sourceAllSamplesFlushed function. This function is normally only called from a connected source object. </p>

<p>Reimplemented from <a class="el" href="classAsync_1_1AudioSink.html#adde14468248671c6c5c85eb47234e0fa">Async::AudioSink</a>.</p>

<p>Reimplemented in <a class="el" href="classAsync_1_1AudioStreamStateDetector.html#a17e1b81ff934e8f31ce116c4f657db8e">Async::AudioStreamStateDetector</a>.</p>

<p>Definition at line <a class="el" href="AsyncAudioPassthrough_8h_source.html#l00154">154</a> of file <a class="el" href="AsyncAudioPassthrough_8h_source.html">AsyncAudioPassthrough.h</a>.</p>

<p>References <a class="el" href="classAsync_1_1AudioSource.html#a5837ec95fef7d668d1c5241cee54646c">Async::AudioSource::sinkFlushSamples()</a>.</p>

</div>
</div>
<a class="anchor" id="a4591e75610b4b6f84699cc3f790695a4"></a><!-- doxytag: member="Async::AudioPassthrough::resumeOutput" ref="a4591e75610b4b6f84699cc3f790695a4" args="(void)" -->
<div class="memitem">
<div class="memproto">
      <table class="memname">
        <tr>
          <td class="memname">virtual void Async::AudioPassthrough::resumeOutput </td>
          <td>(</td>
          <td class="paramtype">void&nbsp;</td>
          <td class="paramname"></td>
          <td>&nbsp;)&nbsp;</td>
          <td><code> [inline, virtual]</code></td>
        </tr>
      </table>
</div>
<div class="memdoc">

<p>Resume audio output to the sink. </p>
<p>This function will be called when the registered audio sink is ready to accept more samples. This function is normally only called from a connected sink object. </p>

<p>Reimplemented from <a class="el" href="classAsync_1_1AudioSource.html#ac187f89a6094ec066dab5b4fd3108754">Async::AudioSource</a>.</p>

<p>Definition at line <a class="el" href="AsyncAudioPassthrough_8h_source.html#l00166">166</a> of file <a class="el" href="AsyncAudioPassthrough_8h_source.html">AsyncAudioPassthrough.h</a>.</p>

<p>References <a class="el" href="classAsync_1_1AudioSink.html#a4c16d7b78aade12abc0b57ec1db95f62">Async::AudioSink::sourceResumeOutput()</a>.</p>

</div>
</div>
<a class="anchor" id="ab0c0ea3766f1be55c2e08c5a4eca4b87"></a><!-- doxytag: member="Async::AudioPassthrough::writeSamples" ref="ab0c0ea3766f1be55c2e08c5a4eca4b87" args="(const float *samples, int count)" -->
<div class="memitem">
<div class="memproto">
      <table class="memname">
        <tr>
          <td class="memname">virtual int Async::AudioPassthrough::writeSamples </td>
          <td>(</td>
          <td class="paramtype">const float *&nbsp;</td>
          <td class="paramname"> <em>samples</em>, </td>
        </tr>
        <tr>
          <td class="paramkey"></td>
          <td></td>
          <td class="paramtype">int&nbsp;</td>
          <td class="paramname"> <em>count</em></td><td>&nbsp;</td>
        </tr>
        <tr>
          <td></td>
          <td>)</td>
          <td></td><td></td><td><code> [inline, virtual]</code></td>
        </tr>
      </table>
</div>
<div class="memdoc">

<p>Write samples into this audio sink. </p>
<dl><dt><b>Parameters:</b></dt><dd>
  <table border="0" cellspacing="2" cellpadding="0">
    <tr><td valign="top"></td><td valign="top"><em>samples</em>&nbsp;</td><td>The buffer containing the samples </td></tr>
    <tr><td valign="top"></td><td valign="top"><em>count</em>&nbsp;</td><td>The number of samples in the buffer </td></tr>
  </table>
  </dd>
</dl>
<dl class="return"><dt><b>Returns:</b></dt><dd>Returns the number of samples that has been taken care of</dd></dl>
<p>This function is used to write audio into this audio sink. If it returns 0, no more samples should be written until the resumeOutput function in the source have been called. This function is normally only called from a connected source object. </p>

<p>Reimplemented from <a class="el" href="classAsync_1_1AudioSink.html#a490aa6380d6b0069fc501f0d9f62e236">Async::AudioSink</a>.</p>

<p>Reimplemented in <a class="el" href="classAsync_1_1AudioStreamStateDetector.html#a00df5765e2f3ab843655f34247850d93">Async::AudioStreamStateDetector</a>.</p>

<p>Definition at line <a class="el" href="AsyncAudioPassthrough_8h_source.html#l00141">141</a> of file <a class="el" href="AsyncAudioPassthrough_8h_source.html">AsyncAudioPassthrough.h</a>.</p>

<p>References <a class="el" href="classAsync_1_1AudioSource.html#ad23a249abf0f8fd39d364301364740a6">Async::AudioSource::sinkWriteSamples()</a>.</p>

</div>
</div>
<hr/>The documentation for this class was generated from the following file:<ul>
<li><a class="el" href="AsyncAudioPassthrough_8h_source.html">AsyncAudioPassthrough.h</a></li>
</ul>
</div>
<hr class="footer"/><address style="text-align: right;"><small>Generated by&nbsp;
<a href="http://www.doxygen.org/index.html">
<img class="footer" src="doxygen.png" alt="doxygen"/></a> 1.6.2-20100208 </small></address>
</body>
</html>