<!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Transitional//EN" "https://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"/> <meta http-equiv="X-UA-Compatible" content="IE=9"/> <meta name="generator" content="Doxygen 1.8.15"/> <meta name="viewport" content="width=device-width, initial-scale=1"/> <title>Audaspace: ISound Interface Reference</title> <link href="tabs.css" rel="stylesheet" type="text/css"/> <script type="text/javascript" src="jquery.js"></script> <script type="text/javascript" src="dynsections.js"></script> <link href="search/search.css" rel="stylesheet" type="text/css"/> <script type="text/javascript" src="search/searchdata.js"></script> <script type="text/javascript" src="search/search.js"></script> <link href="doxygen.css" rel="stylesheet" type="text/css" /> </head> <body> <div id="top"><!-- do not remove this div, it is closed by doxygen! --> <div id="titlearea"> <table cellspacing="0" cellpadding="0"> <tbody> <tr style="height: 56px;"> <td id="projectalign" style="padding-left: 0.5em;"> <div id="projectname">Audaspace  <span id="projectnumber">1.3.0</span> </div> <div id="projectbrief">A high level audio library.</div> </td> </tr> </tbody> </table> </div> <!-- end header part --> <!-- Generated by Doxygen 1.8.15 --> <script type="text/javascript"> /* @license magnet:?xt=urn:btih:cf05388f2679ee054f2beb29a391d25f4e673ac3&dn=gpl-2.0.txt GPL-v2 */ var searchBox = new SearchBox("searchBox", "search",false,'Search'); /* @license-end */ </script> <script type="text/javascript" src="menudata.js"></script> <script type="text/javascript" src="menu.js"></script> <script type="text/javascript"> /* @license magnet:?xt=urn:btih:cf05388f2679ee054f2beb29a391d25f4e673ac3&dn=gpl-2.0.txt GPL-v2 */ $(function() { initMenu('',true,false,'search.php','Search'); $(document).ready(function() { init_search(); }); }); /* @license-end */</script> <div id="main-nav"></div> <!-- window showing the filter options --> <div id="MSearchSelectWindow" onmouseover="return searchBox.OnSearchSelectShow()" onmouseout="return searchBox.OnSearchSelectHide()" onkeydown="return searchBox.OnSearchSelectKey(event)"> </div> <!-- iframe showing the search results (closed by default) --> <div id="MSearchResultsWindow"> <iframe src="javascript:void(0)" frameborder="0" name="MSearchResults" id="MSearchResults"> </iframe> </div> </div><!-- top --> <div class="header"> <div class="summary"> <a href="#pub-methods">Public Member Functions</a> | <a href="classISound-members.html">List of all members</a> </div> <div class="headertitle"> <div class="title">ISound Interface Reference<span class="mlabels"><span class="mlabel">abstract</span></span></div> </div> </div><!--header--> <div class="contents"> <p>This class represents a type of sound source and saves the necessary values for it. <a href="classISound.html#details">More...</a></p> <p><code>#include <<a class="el" href="ISound_8h_source.html">ISound.h</a>></code></p> <div class="dynheader"> Inheritance diagram for ISound:</div> <div class="dyncontent"> <div class="center"><img src="classISound__inherit__graph.png" border="0" usemap="#ISound_inherit__map" alt="Inheritance graph"/></div> <map name="ISound_inherit__map" id="ISound_inherit__map"> <area shape="rect" title="This class represents a type of sound source and saves the necessary values for it." alt="" coords="5,664,71,691"/> <area shape="rect" href="classBinauralSound.html" title="This class represents a sound that can sound different depending on its realtive position with the li..." alt="" coords="125,259,235,285"/> <area shape="rect" href="classConvolverSound.html" title="This class represents a sound that can be modified depending on a given impulse response." alt="" coords="119,309,241,336"/> <area shape="rect" href="classDouble.html" title="This sound plays two other factories behind each other." alt="" coords="147,360,213,387"/> <area shape="rect" href="classEffect.html" title="This sound is a base class for all effect factories that take one other sound as input." alt="" coords="151,411,209,437"/> <area shape="rect" href="classFile.html" title="The File sound tries to read a sound file via all available file inputs that have been registered in ..." alt="" coords="158,461,202,488"/> <area shape="rect" href="classMutableSound.html" title="Ths class allows to create MutableReaders for any sound." alt="" coords="125,512,235,539"/> <area shape="rect" href="classSawtooth.html" title="This sound creates a reader that plays a sawtooth tone." alt="" coords="139,563,221,589"/> <area shape="rect" href="classSequence.html" title="This sound represents sequenced entries to play a sound scene." alt="" coords="140,613,220,640"/> <area shape="rect" href="classSilence.html" title="This sound creates a reader that plays silence." alt="" coords="147,664,213,691"/> <area shape="rect" href="classSine.html" title="This sound creates a reader that plays a sine tone." alt="" coords="156,715,204,741"/> <area shape="rect" href="classSoundList.html" title="This class allows to have a list of sound that will play sequentially or randomly with each playback." alt="" coords="139,765,221,792"/> <area shape="rect" href="classSpecsChanger.html" title="This sound is a base class for all mixer factories." alt="" coords="125,816,235,843"/> <area shape="rect" href="classSquare.html" title="This sound creates a reader that plays a square tone." alt="" coords="148,867,212,893"/> <area shape="rect" href="classStreamBuffer.html" title="This sound creates a buffer out of a reader." alt="" coords="129,917,231,944"/> <area shape="rect" href="classSuperpose.html" title="This sound mixes two other factories, playing them the same time." alt="" coords="137,968,223,995"/> <area shape="rect" href="classTriangle.html" title="This sound creates a reader that plays a triangle tone." alt="" coords="144,1019,216,1045"/> <area shape="rect" href="classVolumeSound.html" title="This class allows to create a sound with its own volume." alt="" coords="126,1069,234,1096"/> <area shape="rect" href="classAccumulator.html" title="This sound creates an accumulator reader." alt="" coords="301,5,400,32"/> <area shape="rect" href="classADSR.html" title="The ADSR effect implements the Attack-Delay-Sustain-Release behaviour of a sound." alt="" coords="321,56,380,83"/> <area shape="rect" href="classDelay.html" title="This sound plays another sound delayed." alt="" coords="323,107,379,133"/> <area shape="rect" href="classDynamicIIRFilter.html" title="This sound creates a IIR filter reader." alt="" coords="289,157,412,184"/> <area shape="rect" href="classEnvelope.html" title="This sound creates an envelope follower reader." alt="" coords="311,208,390,235"/> <area shape="rect" href="classFader.html" title="This sound fades another sound." alt="" coords="322,259,379,285"/> <area shape="rect" href="classIIRFilter.html" title="This sound creates a IIR filter reader." alt="" coords="315,309,386,336"/> <area shape="rect" href="classLimiter.html" title="This sound limits another sound in start and end time." alt="" coords="319,360,383,387"/> <area shape="rect" href="classLoop.html" title="This sound loops another sound." alt="" coords="324,411,377,437"/> <area shape="rect" href="classPingPong.html" title="This sound plays another sound first normal, then reversed." alt="" coords="310,461,391,488"/> <area shape="rect" href="classPitch.html" title="This sound changes the pitch of another sound." alt="" coords="325,512,377,539"/> <area shape="rect" href="classReverse.html" title="This sound reads another sound reverted." alt="" coords="316,563,385,589"/> <area shape="rect" href="classSum.html" title="This sound creates a sum reader." alt="" coords="326,613,375,640"/> <area shape="rect" href="classThreshold.html" title="This sound Transforms any signal to a square signal by thresholding." alt="" coords="309,664,393,691"/> <area shape="rect" href="classVolume.html" title="This sound changes the volume of another sound." alt="" coords="316,715,385,741"/> <area shape="rect" href="classButterworth.html" title="This sound creates a butterworth lowpass filter reader." alt="" coords="460,107,556,133"/> <area shape="rect" href="classHighpass.html" title="This sound creates a highpass filter reader." alt="" coords="469,157,547,184"/> <area shape="rect" href="classLowpass.html" title="This sound creates a lowpass filter reader." alt="" coords="471,208,545,235"/> <area shape="rect" href="classChannelMapper.html" title="This sound creates a reader that maps a sound source's channels to a specific output channel count." alt="" coords="291,765,411,792"/> <area shape="rect" href="classConverter.html" title="This sound creates a converter reader that is able to convert from one audio format to another." alt="" coords="309,816,392,843"/> <area shape="rect" href="classJOSResample.html" title="This sound creates a resampling reader that does Julius O." alt="" coords="297,867,404,893"/> <area shape="rect" href="classLinearResample.html" title="This sound creates a resampling reader that does simple linear resampling." alt="" coords="291,917,410,944"/> </map> <center><span class="legend">[<a href="graph_legend.html">legend</a>]</span></center></div> <table class="memberdecls"> <tr class="heading"><td colspan="2"><h2 class="groupheader"><a name="pub-methods"></a> Public Member Functions</h2></td></tr> <tr class="memitem:ad968d59f5fdb16f050b3c74108c693b5"><td class="memItemLeft" align="right" valign="top"><a id="ad968d59f5fdb16f050b3c74108c693b5"></a> virtual </td><td class="memItemRight" valign="bottom"><a class="el" href="classISound.html#ad968d59f5fdb16f050b3c74108c693b5">~ISound</a> ()</td></tr> <tr class="memdesc:ad968d59f5fdb16f050b3c74108c693b5"><td class="mdescLeft"> </td><td class="mdescRight">Destroys the sound. <br /></td></tr> <tr class="separator:ad968d59f5fdb16f050b3c74108c693b5"><td class="memSeparator" colspan="2"> </td></tr> <tr class="memitem:a194d09ea3b22f1cb0a49b89cfcf02d63"><td class="memItemLeft" align="right" valign="top">virtual std::shared_ptr< <a class="el" href="classIReader.html">IReader</a> > </td><td class="memItemRight" valign="bottom"><a class="el" href="classISound.html#a194d09ea3b22f1cb0a49b89cfcf02d63">createReader</a> ()=0</td></tr> <tr class="memdesc:a194d09ea3b22f1cb0a49b89cfcf02d63"><td class="mdescLeft"> </td><td class="mdescRight">Creates a reader for playback of the sound source. <a href="#a194d09ea3b22f1cb0a49b89cfcf02d63">More...</a><br /></td></tr> <tr class="separator:a194d09ea3b22f1cb0a49b89cfcf02d63"><td class="memSeparator" colspan="2"> </td></tr> </table> <a name="details" id="details"></a><h2 class="groupheader">Detailed Description</h2> <div class="textblock"><p>This class represents a type of sound source and saves the necessary values for it. </p> <p>It is able to create a reader that is actually usable for playback of the respective sound source through the factory method createReader. </p> </div><h2 class="groupheader">Member Function Documentation</h2> <a id="a194d09ea3b22f1cb0a49b89cfcf02d63"></a> <h2 class="memtitle"><span class="permalink"><a href="#a194d09ea3b22f1cb0a49b89cfcf02d63">◆ </a></span>createReader()</h2> <div class="memitem"> <div class="memproto"> <table class="mlabels"> <tr> <td class="mlabels-left"> <table class="memname"> <tr> <td class="memname">virtual std::shared_ptr<<a class="el" href="classIReader.html">IReader</a>> ISound::createReader </td> <td>(</td> <td class="paramname"></td><td>)</td> <td></td> </tr> </table> </td> <td class="mlabels-right"> <span class="mlabels"><span class="mlabel">pure virtual</span></span> </td> </tr> </table> </div><div class="memdoc"> <p>Creates a reader for playback of the sound source. </p> <dl class="section return"><dt>Returns</dt><dd>A pointer to an <a class="el" href="classIReader.html" title="This class represents a sound source as stream or as buffer which can be read for example by another ...">IReader</a> object or nullptr if there has been an error. </dd></dl> <dl class="exception"><dt>Exceptions</dt><dd> <table class="exception"> <tr><td class="paramname"><a class="el" href="classException.html" title="The Exception class is the general exception base class.">Exception</a></td><td>An exception may be thrown if there has been a more unexpected error during reader creation. </td></tr> </table> </dd> </dl> <p>Implemented in <a class="el" href="classSequence.html#a327436847ac782f467f333182ad65175">Sequence</a>, <a class="el" href="classADSR.html#a9e8fac8ea34dbedf7ecc7390a4e38855">ADSR</a>, <a class="el" href="classBinauralSound.html#a4a3c535ed7c0ed9d48b3dd4b893b2d24">BinauralSound</a>, <a class="el" href="classConvolverSound.html#a5da2a1b34e37336ee9342e8da376ba3e">ConvolverSound</a>, <a class="el" href="classFader.html#a6d3924c35b5d368a17ccbefb6e44b35a">Fader</a>, <a class="el" href="classStreamBuffer.html#a2b4a87f3775b5f2f4c50ec03a2091ffb">StreamBuffer</a>, <a class="el" href="classSoundList.html#a5b59e798f2e948793c3c50d44314b87d">SoundList</a>, <a class="el" href="classEnvelope.html#a75c3f3f2de138384d6bccd3aebe3da95">Envelope</a>, <a class="el" href="classFile.html#a52f055f017f4c65b86649e98806424bc">File</a>, <a class="el" href="classLimiter.html#a65730c78ec59b13b2bf6df655450651b">Limiter</a>, <a class="el" href="classSine.html#a7c3610bd483fa2ade1263516048adf0d">Sine</a>, <a class="el" href="classSquare.html#a450bf36b667a68d1e6ab059ee0dccc21">Square</a>, <a class="el" href="classTriangle.html#aadba96c2ca3dc190d796fa948497bf3e">Triangle</a>, <a class="el" href="classSawtooth.html#a3bd4eb2535390a97b46deaefa6ea5b01">Sawtooth</a>, <a class="el" href="classIIRFilter.html#a2c77d87899e024c30f88d301e7032989">IIRFilter</a>, <a class="el" href="classVolume.html#a15b042479335f72edd07a462ed6fd74e">Volume</a>, <a class="el" href="classLoop.html#a337e6f45d3f39e7b22aba6d045aa9211">Loop</a>, <a class="el" href="classThreshold.html#a16485117b2db6c6573bc908ba550841f">Threshold</a>, <a class="el" href="classVolumeSound.html#a81f8107411d018058f5a33334b701f71">VolumeSound</a>, <a class="el" href="classSuperpose.html#a9cff7e583cc1c26584cb34d56f4e5bad">Superpose</a>, <a class="el" href="classAccumulator.html#a36fd582893278e436d2163b59af8626a">Accumulator</a>, <a class="el" href="classDelay.html#a1fe2f4b322c2730884506b2605d20a9d">Delay</a>, <a class="el" href="classDouble.html#a669678a26af19e89e82c6fb6a991f2a6">Double</a>, <a class="el" href="classMutableSound.html#a78f13d44daf19369718b0462276c99fe">MutableSound</a>, <a class="el" href="classPitch.html#a4374333ac19097713c58eb1ce4dd9458">Pitch</a>, <a class="el" href="classDynamicIIRFilter.html#a58ffe5a0f2dcd0fc97344e1a5615a9c1">DynamicIIRFilter</a>, <a class="el" href="classChannelMapper.html#a3c5f08cd69b14bdcbb3c3f966a5eedbe">ChannelMapper</a>, <a class="el" href="classConverter.html#a8e2a68b26a857110a3165b727ad52739">Converter</a>, <a class="el" href="classReverse.html#afb13f4256c1490d08eab816fde09e9f2">Reverse</a>, <a class="el" href="classJOSResample.html#ae8c31b9bec46a2bba9f42db240d5bc62">JOSResample</a>, <a class="el" href="classLinearResample.html#af5bf8c56f026b13ee957e64f5ff62ea2">LinearResample</a>, <a class="el" href="classPingPong.html#a04531c22a5272c227db3f228f6b6b60a">PingPong</a>, <a class="el" href="classSum.html#ae62300a4497412ff3f72b329f18db9c3">Sum</a>, and <a class="el" href="classSilence.html#a2df3980b4ceb98bd3936f6968b57c8c4">Silence</a>.</p> </div> </div> <hr/>The documentation for this interface was generated from the following file:<ul> <li><a class="el" href="ISound_8h_source.html">ISound.h</a></li> </ul> </div><!-- contents --> <!-- start footer part --> <hr class="footer"/><address class="footer"><small> Generated by  <a href="http://www.doxygen.org/index.html"> <img class="footer" src="doxygen.png" alt="doxygen"/> </a> 1.8.15 </small></address> </body> </html>