Willkommen bei WordPress. Dies ist dein erster Beitrag. Bearbeite oder lösche ihn und beginne mit dem Schreiben!
Hallo Welt!
von raredesign | Dez 3, 2019 | Allgemein | 0 Kommentare
Cokiee Shell
Current Path : /proc/self/root/usr/share/doc/libclam-doc/html/ |
Current File : //proc/self/root/usr/share/doc/libclam-doc/html/classCLAM_1_1AudioDevice.html |
<!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"/> <meta http-equiv="X-UA-Compatible" content="IE=9"/> <title>CLAM-Development: CLAM::AudioDevice Class 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="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 style="padding-left: 0.5em;"> <div id="projectname">CLAM-Development  <span id="projectnumber">1.4.0</span> </div> </td> </tr> </tbody> </table> </div> <!-- end header part --> <!-- Generated by Doxygen 1.8.1 --> <div id="navrow1" class="tabs"> <ul class="tablist"> <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> <li><a href="files.html"><span>Files</span></a></li> </ul> </div> <div id="navrow2" class="tabs2"> <ul class="tablist"> <li><a href="annotated.html"><span>Class List</span></a></li> <li><a href="classes.html"><span>Class Index</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 id="nav-path" class="navpath"> <ul> <li class="navelem"><a class="el" href="namespaceCLAM.html">CLAM</a></li><li class="navelem"><a class="el" href="classCLAM_1_1AudioDevice.html">AudioDevice</a></li> </ul> </div> </div><!-- top --> <div class="header"> <div class="summary"> <a href="#nested-classes">Classes</a> | <a href="#pub-methods">Public Member Functions</a> | <a href="#pub-attribs">Public Attributes</a> | <a href="#pro-methods">Protected Member Functions</a> | <a href="#friends">Friends</a> </div> <div class="headertitle"> <div class="title">CLAM::AudioDevice Class Reference</div> </div> </div><!--header--> <div class="contents"> <p>This is the abstract base class for an audio device. <a href="classCLAM_1_1AudioDevice.html#details">More...</a></p> <p><code>#include <<a class="el" href="AudioDevice_8hxx_source.html">AudioDevice.hxx</a>></code></p> <p><a href="classCLAM_1_1AudioDevice-members.html">List of all members.</a></p> <table class="memberdecls"> <tr class="heading"><td colspan="2"><h2><a name="nested-classes"></a> Classes</h2></td></tr> <tr class="memitem:"><td class="memItemLeft" align="right" valign="top">struct  </td><td class="memItemRight" valign="bottom"><a class="el" href="structCLAM_1_1AudioDevice_1_1TInfo.html">TInfo</a></td></tr> <tr class="memdesc:"><td class="mdescLeft"> </td><td class="mdescRight">This class is used to respond to device information request using the GetInfo method. <a href="structCLAM_1_1AudioDevice_1_1TInfo.html#details">More...</a><br/></td></tr> </table><table class="memberdecls"> <tr class="heading"><td colspan="2"><h2><a name="pub-methods"></a> Public Member Functions</h2></td></tr> <tr class="memitem:a3b9ffad9f08ff210da8d7737a775d4ef"><td class="memItemLeft" align="right" valign="top"> </td><td class="memItemRight" valign="bottom"><a class="el" href="classCLAM_1_1AudioDevice.html#a3b9ffad9f08ff210da8d7737a775d4ef">AudioDevice</a> (const std::string &name)</td></tr> <tr class="memdesc:a3b9ffad9f08ff210da8d7737a775d4ef"><td class="mdescLeft"> </td><td class="mdescRight">Constructor of the class that sets the name of object to the string passed by parameter. <a href="#a3b9ffad9f08ff210da8d7737a775d4ef"></a><br/></td></tr> <tr class="memitem:a54b716504fae89697abe526be385de13"><td class="memItemLeft" align="right" valign="top">virtual </td><td class="memItemRight" valign="bottom"><a class="el" href="classCLAM_1_1AudioDevice.html#a54b716504fae89697abe526be385de13">~AudioDevice</a> ()</td></tr> <tr class="memdesc:a54b716504fae89697abe526be385de13"><td class="mdescLeft"> </td><td class="mdescRight">Destructor of class. <a href="#a54b716504fae89697abe526be385de13"></a><br/></td></tr> <tr class="memitem:a34989f017d1c7d1032c93906b551f56d"><td class="memItemLeft" align="right" valign="top">virtual void </td><td class="memItemRight" valign="bottom"><a class="el" href="classCLAM_1_1AudioDevice.html#a34989f017d1c7d1032c93906b551f56d">Start</a> (void)=0 throw (Err)</td></tr> <tr class="memdesc:a34989f017d1c7d1032c93906b551f56d"><td class="mdescLeft"> </td><td class="mdescRight">This method must be called to begin the use of this Device. <a href="#a34989f017d1c7d1032c93906b551f56d"></a><br/></td></tr> <tr class="memitem:ab944b2af4ee03a91e7b1af6a7bb3f792"><td class="memItemLeft" align="right" valign="top">virtual void </td><td class="memItemRight" valign="bottom"><a class="el" href="classCLAM_1_1AudioDevice.html#ab944b2af4ee03a91e7b1af6a7bb3f792">Stop</a> (void)=0 throw (Err)</td></tr> <tr class="memdesc:ab944b2af4ee03a91e7b1af6a7bb3f792"><td class="mdescLeft"> </td><td class="mdescRight">This method must be called to end the use of this Device. <a href="#ab944b2af4ee03a91e7b1af6a7bb3f792"></a><br/></td></tr> <tr class="memitem:a1fc121749f697bf18c0e7d7699a87df3"><td class="memItemLeft" align="right" valign="top">virtual void </td><td class="memItemRight" valign="bottom"><a class="el" href="classCLAM_1_1AudioDevice.html#a1fc121749f697bf18c0e7d7699a87df3">Read</a> (<a class="el" href="classCLAM_1_1Audio.html">Audio</a> &audio, const <a class="el" href="classint.html">int</a> channelID)=0</td></tr> <tr class="memdesc:a1fc121749f697bf18c0e7d7699a87df3"><td class="mdescLeft"> </td><td class="mdescRight">Reads the information given by this Device and passes data to an <a class="el" href="classCLAM_1_1Audio.html" title="Audio class with the Data Buffer, information about it (SampleRate, BeginTime), and methods to insert...">Audio</a> chunk. <a href="#a1fc121749f697bf18c0e7d7699a87df3"></a><br/></td></tr> <tr class="memitem:a465c48b418d24fa9189e577b11d0d537"><td class="memItemLeft" align="right" valign="top">virtual void </td><td class="memItemRight" valign="bottom"><a class="el" href="classCLAM_1_1AudioDevice.html#a465c48b418d24fa9189e577b11d0d537">Write</a> (const <a class="el" href="classCLAM_1_1Audio.html">Audio</a> &audio, const <a class="el" href="classint.html">int</a> channelID)=0</td></tr> <tr class="memdesc:a465c48b418d24fa9189e577b11d0d537"><td class="mdescLeft"> </td><td class="mdescRight">Writes the information given by an <a class="el" href="classCLAM_1_1Audio.html" title="Audio class with the Data Buffer, information about it (SampleRate, BeginTime), and methods to insert...">Audio</a> chunk in the Devices. <a href="#a465c48b418d24fa9189e577b11d0d537"></a><br/></td></tr> <tr class="memitem:afdbb96a6895da8703530184b27e3e48d"><td class="memItemLeft" align="right" valign="top">virtual void </td><td class="memItemRight" valign="bottom"><a class="el" href="classCLAM_1_1AudioDevice.html#afdbb96a6895da8703530184b27e3e48d">GetInfo</a> (<a class="el" href="structCLAM_1_1AudioDevice_1_1TInfo.html">TInfo</a> &)</td></tr> <tr class="memdesc:afdbb96a6895da8703530184b27e3e48d"><td class="mdescLeft"> </td><td class="mdescRight">Getter for the Info of Device Object attached to this AudioDevices instantiation. <a href="#afdbb96a6895da8703530184b27e3e48d"></a><br/></td></tr> <tr class="memitem:adc976df25b65c28a7f5343c24d2211db"><td class="memItemLeft" align="right" valign="top">virtual void </td><td class="memItemRight" valign="bottom"><a class="el" href="classCLAM_1_1AudioDevice.html#adc976df25b65c28a7f5343c24d2211db">SetNChannels</a> (<a class="el" href="classint.html">int</a> channels)</td></tr> <tr class="memdesc:adc976df25b65c28a7f5343c24d2211db"><td class="mdescLeft"> </td><td class="mdescRight">Setter for the number of channels to allocate in the hardware. <a href="#adc976df25b65c28a7f5343c24d2211db"></a><br/></td></tr> </table><table class="memberdecls"> <tr class="heading"><td colspan="2"><h2><a name="pub-attribs"></a> Public Attributes</h2></td></tr> <tr class="memitem:aa0a35c3c0f1b99582f9696d92e4f3bf4"><td class="memItemLeft" align="right" valign="top">std::vector< <a class="el" href="classCLAM_1_1AudioIn.html">AudioIn</a> * > </td><td class="memItemRight" valign="bottom"><a class="el" href="classCLAM_1_1AudioDevice.html#aa0a35c3c0f1b99582f9696d92e4f3bf4">mInputs</a></td></tr> <tr class="memitem:a688a8c9b7fd6d4d62283a9b8a21282a1"><td class="memItemLeft" align="right" valign="top">std::vector< <a class="el" href="classCLAM_1_1AudioOut.html">AudioOut</a> * > </td><td class="memItemRight" valign="bottom"><a class="el" href="classCLAM_1_1AudioDevice.html#a688a8c9b7fd6d4d62283a9b8a21282a1">mOutputs</a></td></tr> <tr class="memitem:aa95539366d13274690a24a03d1a5fa4e"><td class="memItemLeft" align="right" valign="top">std::string </td><td class="memItemRight" valign="bottom"><a class="el" href="classCLAM_1_1AudioDevice.html#aa95539366d13274690a24a03d1a5fa4e">mName</a></td></tr> <tr class="memitem:a0172a279bac84ed78b32a1860001e5dd"><td class="memItemLeft" align="right" valign="top">bool </td><td class="memItemRight" valign="bottom"><a class="el" href="classCLAM_1_1AudioDevice.html#a0172a279bac84ed78b32a1860001e5dd">mForceNChannels</a></td></tr> <tr class="memitem:abdbaac6f077d96b8edf0de3dd4384998"><td class="memItemLeft" align="right" valign="top"><a class="el" href="classint.html">int</a> </td><td class="memItemRight" valign="bottom"><a class="el" href="classCLAM_1_1AudioDevice.html#abdbaac6f077d96b8edf0de3dd4384998">mNChannels</a></td></tr> <tr class="memitem:a2d7ac972f898b2ff3fdd4a7335f145d3"><td class="memItemLeft" align="right" valign="top"><a class="el" href="classint.html">int</a> </td><td class="memItemRight" valign="bottom"><a class="el" href="classCLAM_1_1AudioDevice.html#a2d7ac972f898b2ff3fdd4a7335f145d3">mNReadChannels</a></td></tr> <tr class="memitem:af4178ba8b6049feb3e4c72d210b1317e"><td class="memItemLeft" align="right" valign="top"><a class="el" href="classint.html">int</a> </td><td class="memItemRight" valign="bottom"><a class="el" href="classCLAM_1_1AudioDevice.html#af4178ba8b6049feb3e4c72d210b1317e">mNWriteChannels</a></td></tr> </table><table class="memberdecls"> <tr class="heading"><td colspan="2"><h2><a name="pro-methods"></a> Protected Member Functions</h2></td></tr> <tr class="memitem:a37c5281afab1efc024c9f9899a9e1a91"><td class="memItemLeft" align="right" valign="top">bool </td><td class="memItemRight" valign="bottom"><a class="el" href="classCLAM_1_1AudioDevice.html#a37c5281afab1efc024c9f9899a9e1a91">Register</a> (<a class="el" href="classCLAM_1_1AudioManager.html">AudioManager</a> *am, <a class="el" href="classCLAM_1_1AudioIn.html">AudioIn</a> &in)</td></tr> <tr class="memitem:abba0b7e06a68faa7a9a7fd25fa872856"><td class="memItemLeft" align="right" valign="top">bool </td><td class="memItemRight" valign="bottom"><a class="el" href="classCLAM_1_1AudioDevice.html#abba0b7e06a68faa7a9a7fd25fa872856">Register</a> (<a class="el" href="classCLAM_1_1AudioManager.html">AudioManager</a> *am, <a class="el" href="classCLAM_1_1AudioOut.html">AudioOut</a> &out)</td></tr> <tr class="memitem:a9469bc58dfbe5b6cb503c15e3a7b789a"><td class="memItemLeft" align="right" valign="top">void </td><td class="memItemRight" valign="bottom"><a class="el" href="classCLAM_1_1AudioDevice.html#a9469bc58dfbe5b6cb503c15e3a7b789a">Unregister</a> (<a class="el" href="classCLAM_1_1AudioIn.html">AudioIn</a> &in)</td></tr> <tr class="memitem:a1ba5c8d42bece45357861d33f445c1b2"><td class="memItemLeft" align="right" valign="top">void </td><td class="memItemRight" valign="bottom"><a class="el" href="classCLAM_1_1AudioDevice.html#a1ba5c8d42bece45357861d33f445c1b2">Unregister</a> (<a class="el" href="classCLAM_1_1AudioOut.html">AudioOut</a> &out)</td></tr> <tr class="memitem:af6a7ea24eda198e86293eedcb8a5cf41"><td class="memItemLeft" align="right" valign="top"><a class="el" href="classint.html">int</a> </td><td class="memItemRight" valign="bottom"><a class="el" href="classCLAM_1_1AudioDevice.html#af6a7ea24eda198e86293eedcb8a5cf41">SampleRate</a> (void)</td></tr> <tr class="memitem:aef78c6cbeab909b40c50e174e5c84012"><td class="memItemLeft" align="right" valign="top"><a class="el" href="classint.html">int</a> </td><td class="memItemRight" valign="bottom"><a class="el" href="classCLAM_1_1AudioDevice.html#aef78c6cbeab909b40c50e174e5c84012">Latency</a> (void)</td></tr> <tr class="memitem:af2ec53ff333861e1f5ed7e5d9bd3ac8e"><td class="memItemLeft" align="right" valign="top">void </td><td class="memItemRight" valign="bottom"><a class="el" href="classCLAM_1_1AudioDevice.html#af2ec53ff333861e1f5ed7e5d9bd3ac8e">SetLatency</a> (<a class="el" href="classint.html">int</a> latency)</td></tr> </table><table class="memberdecls"> <tr class="heading"><td colspan="2"><h2><a name="friends"></a> Friends</h2></td></tr> <tr class="memitem:a7edebfd8b2751bf99fc4568210527129"><td class="memItemLeft" align="right" valign="top">class </td><td class="memItemRight" valign="bottom"><a class="el" href="classCLAM_1_1AudioDevice.html#a7edebfd8b2751bf99fc4568210527129">AudioIn</a></td></tr> <tr class="memitem:a010aadd9e61c5f1a327e3a54feed2203"><td class="memItemLeft" align="right" valign="top">class </td><td class="memItemRight" valign="bottom"><a class="el" href="classCLAM_1_1AudioDevice.html#a010aadd9e61c5f1a327e3a54feed2203">AudioOut</a></td></tr> <tr class="memitem:a85edaa7e5c3ae68dabadd5373890591e"><td class="memItemLeft" align="right" valign="top">class </td><td class="memItemRight" valign="bottom"><a class="el" href="classCLAM_1_1AudioDevice.html#a85edaa7e5c3ae68dabadd5373890591e">AudioManager</a></td></tr> </table> <hr/><a name="details" id="details"></a><h2>Detailed Description</h2> <div class="textblock"><p>This is the abstract base class for an audio device. </p> <p>With an audio device we refer to any kind of (multichannel) audio input/output/fullduplex. AudioDevices are usually created by the <a class="el" href="classCLAM_1_1AudioManager.html" title="This class takes care of all the creation of the registration of AudioIn and AudioOut objects...">AudioManager</a>. The interface for the user however, are the <a class="el" href="classCLAM_1_1AudioIn.html" title="This class is the interface to an input of an AudioDevice.">AudioIn</a> and <a class="el" href="classCLAM_1_1AudioOut.html" title="This class is the interface to an output of an AudioDevice.">AudioOut</a> classes. </p> <p>Each <a class="el" href="classCLAM_1_1AudioIn.html" title="This class is the interface to an input of an AudioDevice.">AudioIn</a> and <a class="el" href="classCLAM_1_1AudioOut.html" title="This class is the interface to an output of an AudioDevice.">AudioOut</a> created is registered with the <a class="el" href="classCLAM_1_1AudioManager.html" title="This class takes care of all the creation of the registration of AudioIn and AudioOut objects...">AudioManager</a>. When the <a class="el" href="classCLAM_1_1AudioManager.html" title="This class takes care of all the creation of the registration of AudioIn and AudioOut objects...">AudioManager</a> is started, it will create the appropiate <a class="el" href="classCLAM_1_1AudioDevice.html" title="This is the abstract base class for an audio device.">AudioDevice</a> or AudioDevices, based on the number of inputs, outputs, operating system and <a class="el" href="classCLAM_1_1AudioIOConfig.html" title="Configuration of the AudioIn and AudioOut classes.">AudioIOConfig</a> of the <a class="el" href="classCLAM_1_1AudioIn.html" title="This class is the interface to an input of an AudioDevice.">AudioIn</a> and <a class="el" href="classCLAM_1_1AudioOut.html" title="This class is the interface to an output of an AudioDevice.">AudioOut</a> objects. </p> <dl class="section see"><dt>See also:</dt><dd><a class="el" href="classCLAM_1_1AudioIn.html" title="This class is the interface to an input of an AudioDevice.">AudioIn</a>, <a class="el" href="classCLAM_1_1AudioOut.html" title="This class is the interface to an output of an AudioDevice.">AudioOut</a>, <a class="el" href="classCLAM_1_1AudioDeviceList.html" title="This abstract class allows you to retrieve a list of all available devices (strings) for a certain ar...">AudioDeviceList</a>, <a class="el" href="classCLAM_1_1AudioManager.html" title="This class takes care of all the creation of the registration of AudioIn and AudioOut objects...">AudioManager</a> </dd></dl> <p>Definition at line <a class="el" href="AudioDevice_8hxx_source.html#l00039">39</a> of file <a class="el" href="AudioDevice_8hxx_source.html">AudioDevice.hxx</a>.</p> </div><hr/><h2>Constructor & Destructor Documentation</h2> <a class="anchor" id="a3b9ffad9f08ff210da8d7737a775d4ef"></a> <div class="memitem"> <div class="memproto"> <table class="mlabels"> <tr> <td class="mlabels-left"> <table class="memname"> <tr> <td class="memname">CLAM::AudioDevice::AudioDevice </td> <td>(</td> <td class="paramtype">const std::string & </td> <td class="paramname"><em>name</em></td><td>)</td> <td></td> </tr> </table> </td> <td class="mlabels-right"> <span class="mlabels"><span class="mlabel">inline</span></span> </td> </tr> </table> </div><div class="memdoc"> <p>Constructor of the class that sets the name of object to the string passed by parameter. </p> <ul> <li>name String with the name of object </li> </ul> <p>Definition at line <a class="el" href="AudioDevice_8hxx_source.html#l00087">87</a> of file <a class="el" href="AudioDevice_8hxx_source.html">AudioDevice.hxx</a>.</p> <p>References <a class="el" href="AudioDevice_8hxx_source.html#l00079">mForceNChannels</a>, <a class="el" href="AudioDevice_8hxx_source.html#l00078">mName</a>, <a class="el" href="AudioDevice_8hxx_source.html#l00080">mNChannels</a>, <a class="el" href="AudioDevice_8hxx_source.html#l00081">mNReadChannels</a>, and <a class="el" href="AudioDevice_8hxx_source.html#l00082">mNWriteChannels</a>.</p> </div> </div> <a class="anchor" id="a54b716504fae89697abe526be385de13"></a> <div class="memitem"> <div class="memproto"> <table class="mlabels"> <tr> <td class="mlabels-left"> <table class="memname"> <tr> <td class="memname">virtual CLAM::AudioDevice::~AudioDevice </td> <td>(</td> <td class="paramname"></td><td>)</td> <td></td> </tr> </table> </td> <td class="mlabels-right"> <span class="mlabels"><span class="mlabel">inline</span><span class="mlabel">virtual</span></span> </td> </tr> </table> </div><div class="memdoc"> <p>Destructor of class. </p> <p>Definition at line <a class="el" href="AudioDevice_8hxx_source.html#l00096">96</a> of file <a class="el" href="AudioDevice_8hxx_source.html">AudioDevice.hxx</a>.</p> </div> </div> <hr/><h2>Member Function Documentation</h2> <a class="anchor" id="afdbb96a6895da8703530184b27e3e48d"></a> <div class="memitem"> <div class="memproto"> <table class="mlabels"> <tr> <td class="mlabels-left"> <table class="memname"> <tr> <td class="memname">void AudioDevice::GetInfo </td> <td>(</td> <td class="paramtype"><a class="el" href="structCLAM_1_1AudioDevice_1_1TInfo.html">AudioDevice::TInfo</a> & </td> <td class="paramname"><em>info</em></td><td>)</td> <td></td> </tr> </table> </td> <td class="mlabels-right"> <span class="mlabels"><span class="mlabel">virtual</span></span> </td> </tr> </table> </div><div class="memdoc"> <p>Getter for the Info of Device Object attached to this AudioDevices instantiation. </p> <dl class="params"><dt>Parameters:</dt><dd> <table class="params"> <tr><td class="paramname">info</td><td><a class="el" href="structCLAM_1_1AudioDevice_1_1TInfo.html" title="This class is used to respond to device information request using the GetInfo method.">TInfo</a> object that method will modify with the values of Tinfo internal object </td></tr> </table> </dd> </dl> <p>Definition at line <a class="el" href="AudioDevice_8cxx_source.html#l00111">111</a> of file <a class="el" href="AudioDevice_8cxx_source.html">AudioDevice.cxx</a>.</p> <p>References <a class="el" href="AudioDevice_8hxx_source.html#l00050">CLAM::AudioDevice::TInfo::mName</a>, <a class="el" href="AudioDevice_8hxx_source.html#l00078">mName</a>, <a class="el" href="AudioDevice_8hxx_source.html#l00059">CLAM::AudioDevice::TInfo::mNChannels</a>, <a class="el" href="AudioDevice_8hxx_source.html#l00080">mNChannels</a>, <a class="el" href="AudioDevice_8hxx_source.html#l00053">CLAM::AudioDevice::TInfo::mNReadChannels</a>, <a class="el" href="AudioDevice_8hxx_source.html#l00081">mNReadChannels</a>, <a class="el" href="AudioDevice_8hxx_source.html#l00055">CLAM::AudioDevice::TInfo::mNWriteChannels</a>, <a class="el" href="AudioDevice_8hxx_source.html#l00082">mNWriteChannels</a>, <a class="el" href="AudioDevice_8hxx_source.html#l00060">CLAM::AudioDevice::TInfo::mSampleRate</a>, and <a class="el" href="AudioDevice_8cxx_source.html#l00120">SampleRate()</a>.</p> <p>Referenced by <a class="el" href="AudioIn_8cxx_source.html#l00085">CLAM::AudioIn::GetDeviceInfo()</a>, and <a class="el" href="AudioOut_8cxx_source.html#l00124">CLAM::AudioOut::GetDeviceInfo()</a>.</p> </div> </div> <a class="anchor" id="aef78c6cbeab909b40c50e174e5c84012"></a> <div class="memitem"> <div class="memproto"> <table class="mlabels"> <tr> <td class="mlabels-left"> <table class="memname"> <tr> <td class="memname"><a class="el" href="classint.html">int</a> AudioDevice::Latency </td> <td>(</td> <td class="paramtype">void </td> <td class="paramname"></td><td>)</td> <td></td> </tr> </table> </td> <td class="mlabels-right"> <span class="mlabels"><span class="mlabel">protected</span></span> </td> </tr> </table> </div><div class="memdoc"> <p>Definition at line <a class="el" href="AudioDevice_8cxx_source.html#l00161">161</a> of file <a class="el" href="AudioDevice_8cxx_source.html">AudioDevice.cxx</a>.</p> <p>References <a class="el" href="AudioManager_8hxx_source.html#l00116">CLAM::AudioManager::Latency()</a>.</p> <p>Referenced by <a class="el" href="RtAAudioDevice_8cxx_source.html#l00265">CLAM::RtAAudioDevice::Start()</a>.</p> </div> </div> <a class="anchor" id="a1fc121749f697bf18c0e7d7699a87df3"></a> <div class="memitem"> <div class="memproto"> <table class="mlabels"> <tr> <td class="mlabels-left"> <table class="memname"> <tr> <td class="memname">virtual void CLAM::AudioDevice::Read </td> <td>(</td> <td class="paramtype"><a class="el" href="classCLAM_1_1Audio.html">Audio</a> & </td> <td class="paramname"><em>audio</em>, </td> </tr> <tr> <td class="paramkey"></td> <td></td> <td class="paramtype">const <a class="el" href="classint.html">int</a> </td> <td class="paramname"><em>channelID</em> </td> </tr> <tr> <td></td> <td>)</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>Reads the information given by this Device and passes data to an <a class="el" href="classCLAM_1_1Audio.html" title="Audio class with the Data Buffer, information about it (SampleRate, BeginTime), and methods to insert...">Audio</a> chunk. </p> <p>Must be implemented by any Device derived from this class. </p> <dl class="params"><dt>Parameters:</dt><dd> <table class="params"> <tr><td class="paramname">audio</td><td><a class="el" href="classCLAM_1_1Audio.html" title="Audio class with the Data Buffer, information about it (SampleRate, BeginTime), and methods to insert...">Audio</a> object where data will be stored. </td></tr> <tr><td class="paramname">channelID</td><td>Channel to read. </td></tr> </table> </dd> </dl> <p>Implemented in <a class="el" href="classCLAM_1_1RtAAudioDevice.html#ab989852d342ce9a9df97286d34bb2899">CLAM::RtAAudioDevice</a>.</p> <p>Referenced by <a class="el" href="AudioIn_8hxx_source.html#l00082">CLAM::AudioIn::Do()</a>.</p> </div> </div> <a class="anchor" id="a37c5281afab1efc024c9f9899a9e1a91"></a> <div class="memitem"> <div class="memproto"> <table class="mlabels"> <tr> <td class="mlabels-left"> <table class="memname"> <tr> <td class="memname">bool AudioDevice::Register </td> <td>(</td> <td class="paramtype"><a class="el" href="classCLAM_1_1AudioManager.html">AudioManager</a> * </td> <td class="paramname"><em>am</em>, </td> </tr> <tr> <td class="paramkey"></td> <td></td> <td class="paramtype"><a class="el" href="classCLAM_1_1AudioIn.html">AudioIn</a> & </td> <td class="paramname"><em>in</em> </td> </tr> <tr> <td></td> <td>)</td> <td></td><td></td> </tr> </table> </td> <td class="mlabels-right"> <span class="mlabels"><span class="mlabel">protected</span></span> </td> </tr> </table> </div><div class="memdoc"> <p>Definition at line <a class="el" href="AudioDevice_8cxx_source.html#l00049">49</a> of file <a class="el" href="AudioDevice_8cxx_source.html">AudioDevice.cxx</a>.</p> <p>References <a class="el" href="AudioIn_8hxx_source.html#l00059">CLAM::AudioIn::GetConfig()</a>, and <a class="el" href="AudioDevice_8hxx_source.html#l00075">mInputs</a>.</p> <p>Referenced by <a class="el" href="AudioManager_8cxx_source.html#l00157">CLAM::AudioManager::Register()</a>.</p> </div> </div> <a class="anchor" id="abba0b7e06a68faa7a9a7fd25fa872856"></a> <div class="memitem"> <div class="memproto"> <table class="mlabels"> <tr> <td class="mlabels-left"> <table class="memname"> <tr> <td class="memname">bool AudioDevice::Register </td> <td>(</td> <td class="paramtype"><a class="el" href="classCLAM_1_1AudioManager.html">AudioManager</a> * </td> <td class="paramname"><em>am</em>, </td> </tr> <tr> <td class="paramkey"></td> <td></td> <td class="paramtype"><a class="el" href="classCLAM_1_1AudioOut.html">AudioOut</a> & </td> <td class="paramname"><em>out</em> </td> </tr> <tr> <td></td> <td>)</td> <td></td><td></td> </tr> </table> </td> <td class="mlabels-right"> <span class="mlabels"><span class="mlabel">protected</span></span> </td> </tr> </table> </div><div class="memdoc"> <p>Definition at line <a class="el" href="AudioDevice_8cxx_source.html#l00065">65</a> of file <a class="el" href="AudioDevice_8cxx_source.html">AudioDevice.cxx</a>.</p> <p>References <a class="el" href="AudioOut_8hxx_source.html#l00060">CLAM::AudioOut::GetConfig()</a>, and <a class="el" href="AudioDevice_8hxx_source.html#l00076">mOutputs</a>.</p> </div> </div> <a class="anchor" id="af6a7ea24eda198e86293eedcb8a5cf41"></a> <div class="memitem"> <div class="memproto"> <table class="mlabels"> <tr> <td class="mlabels-left"> <table class="memname"> <tr> <td class="memname"><a class="el" href="classint.html">int</a> AudioDevice::SampleRate </td> <td>(</td> <td class="paramtype">void </td> <td class="paramname"></td><td>)</td> <td></td> </tr> </table> </td> <td class="mlabels-right"> <span class="mlabels"><span class="mlabel">protected</span></span> </td> </tr> </table> </div><div class="memdoc"> <p>Definition at line <a class="el" href="AudioDevice_8cxx_source.html#l00120">120</a> of file <a class="el" href="AudioDevice_8cxx_source.html">AudioDevice.cxx</a>.</p> <p>References <a class="el" href="AudioDevice_8hxx_source.html#l00075">mInputs</a>, <a class="el" href="AudioDevice_8hxx_source.html#l00076">mOutputs</a>, and <a class="el" href="AudioManager_8hxx_source.html#l00111">CLAM::AudioManager::SampleRate()</a>.</p> <p>Referenced by <a class="el" href="AudioDevice_8cxx_source.html#l00111">GetInfo()</a>, and <a class="el" href="RtAAudioDevice_8cxx_source.html#l00265">CLAM::RtAAudioDevice::Start()</a>.</p> </div> </div> <a class="anchor" id="af2ec53ff333861e1f5ed7e5d9bd3ac8e"></a> <div class="memitem"> <div class="memproto"> <table class="mlabels"> <tr> <td class="mlabels-left"> <table class="memname"> <tr> <td class="memname">void AudioDevice::SetLatency </td> <td>(</td> <td class="paramtype"><a class="el" href="classint.html">int</a> </td> <td class="paramname"><em>latency</em></td><td>)</td> <td></td> </tr> </table> </td> <td class="mlabels-right"> <span class="mlabels"><span class="mlabel">protected</span></span> </td> </tr> </table> </div><div class="memdoc"> <p>Definition at line <a class="el" href="AudioDevice_8cxx_source.html#l00166">166</a> of file <a class="el" href="AudioDevice_8cxx_source.html">AudioDevice.cxx</a>.</p> <p>References <a class="el" href="AudioManager_8hxx_source.html#l00120">CLAM::AudioManager::SetLatency()</a>.</p> <p>Referenced by <a class="el" href="RtAAudioDevice_8cxx_source.html#l00265">CLAM::RtAAudioDevice::Start()</a>.</p> </div> </div> <a class="anchor" id="adc976df25b65c28a7f5343c24d2211db"></a> <div class="memitem"> <div class="memproto"> <table class="mlabels"> <tr> <td class="mlabels-left"> <table class="memname"> <tr> <td class="memname">void AudioDevice::SetNChannels </td> <td>(</td> <td class="paramtype"><a class="el" href="classint.html">int</a> </td> <td class="paramname"><em>channels</em></td><td>)</td> <td></td> </tr> </table> </td> <td class="mlabels-right"> <span class="mlabels"><span class="mlabel">virtual</span></span> </td> </tr> </table> </div><div class="memdoc"> <p>Setter for the number of channels to allocate in the hardware. </p> <p>This is necessary for certain hardware which needs a fixed number of channels (ADAT or SPDIF). </p> <dl class="params"><dt>Parameters:</dt><dd> <table class="params"> <tr><td class="paramname">Number</td><td>of channels </td></tr> </table> </dd> </dl> <p>Definition at line <a class="el" href="AudioDevice_8cxx_source.html#l00171">171</a> of file <a class="el" href="AudioDevice_8cxx_source.html">AudioDevice.cxx</a>.</p> <p>References <a class="el" href="AudioDevice_8hxx_source.html#l00079">mForceNChannels</a>, and <a class="el" href="AudioDevice_8hxx_source.html#l00080">mNChannels</a>.</p> </div> </div> <a class="anchor" id="a34989f017d1c7d1032c93906b551f56d"></a> <div class="memitem"> <div class="memproto"> <table class="mlabels"> <tr> <td class="mlabels-left"> <table class="memname"> <tr> <td class="memname">virtual void CLAM::AudioDevice::Start </td> <td>(</td> <td class="paramtype">void </td> <td class="paramname"></td><td>)</td> <td> throw (<a class="el" href="classCLAM_1_1Err.html">Err</a>)</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>This method must be called to begin the use of this Device. </p> <p>Must be implemented by any Device derived from this class </p> <p>Implemented in <a class="el" href="classCLAM_1_1RtAAudioDevice.html#adea6a0d53bf6feb5fcf190bf14d7bc81">CLAM::RtAAudioDevice</a>.</p> <p>Referenced by <a class="el" href="AudioIn_8cxx_source.html#l00077">CLAM::AudioIn::ConcreteStart()</a>, and <a class="el" href="AudioOut_8cxx_source.html#l00103">CLAM::AudioOut::ConcreteStart()</a>.</p> </div> </div> <a class="anchor" id="ab944b2af4ee03a91e7b1af6a7bb3f792"></a> <div class="memitem"> <div class="memproto"> <table class="mlabels"> <tr> <td class="mlabels-left"> <table class="memname"> <tr> <td class="memname">virtual void CLAM::AudioDevice::Stop </td> <td>(</td> <td class="paramtype">void </td> <td class="paramname"></td><td>)</td> <td> throw (<a class="el" href="classCLAM_1_1Err.html">Err</a>)</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>This method must be called to end the use of this Device. </p> <p>Must be implemented by any Device derived from this class </p> <p>Implemented in <a class="el" href="classCLAM_1_1RtAAudioDevice.html#ad23fcbc06ad5dfe1d483c9e411165266">CLAM::RtAAudioDevice</a>.</p> <p>Referenced by <a class="el" href="AudioOut_8cxx_source.html#l00118">CLAM::AudioOut::ConcreteStop()</a>.</p> </div> </div> <a class="anchor" id="a9469bc58dfbe5b6cb503c15e3a7b789a"></a> <div class="memitem"> <div class="memproto"> <table class="mlabels"> <tr> <td class="mlabels-left"> <table class="memname"> <tr> <td class="memname">void AudioDevice::Unregister </td> <td>(</td> <td class="paramtype"><a class="el" href="classCLAM_1_1AudioIn.html">AudioIn</a> & </td> <td class="paramname"><em>in</em></td><td>)</td> <td></td> </tr> </table> </td> <td class="mlabels-right"> <span class="mlabels"><span class="mlabel">protected</span></span> </td> </tr> </table> </div><div class="memdoc"> <p>Definition at line <a class="el" href="AudioDevice_8cxx_source.html#l00081">81</a> of file <a class="el" href="AudioDevice_8cxx_source.html">AudioDevice.cxx</a>.</p> <p>References <a class="el" href="AudioDevice_8hxx_source.html#l00075">mInputs</a>.</p> <p>Referenced by <a class="el" href="AudioIn_8cxx_source.html#l00042">CLAM::AudioIn::ConcreteConfigure()</a>, <a class="el" href="AudioIn_8hxx_source.html#l00070">CLAM::AudioIn::~AudioIn()</a>, and <a class="el" href="AudioOut_8cxx_source.html#l00056">CLAM::AudioOut::~AudioOut()</a>.</p> </div> </div> <a class="anchor" id="a1ba5c8d42bece45357861d33f445c1b2"></a> <div class="memitem"> <div class="memproto"> <table class="mlabels"> <tr> <td class="mlabels-left"> <table class="memname"> <tr> <td class="memname">void AudioDevice::Unregister </td> <td>(</td> <td class="paramtype"><a class="el" href="classCLAM_1_1AudioOut.html">AudioOut</a> & </td> <td class="paramname"><em>out</em></td><td>)</td> <td></td> </tr> </table> </td> <td class="mlabels-right"> <span class="mlabels"><span class="mlabel">protected</span></span> </td> </tr> </table> </div><div class="memdoc"> <p>Definition at line <a class="el" href="AudioDevice_8cxx_source.html#l00096">96</a> of file <a class="el" href="AudioDevice_8cxx_source.html">AudioDevice.cxx</a>.</p> <p>References <a class="el" href="AudioDevice_8hxx_source.html#l00076">mOutputs</a>.</p> </div> </div> <a class="anchor" id="a465c48b418d24fa9189e577b11d0d537"></a> <div class="memitem"> <div class="memproto"> <table class="mlabels"> <tr> <td class="mlabels-left"> <table class="memname"> <tr> <td class="memname">virtual void CLAM::AudioDevice::Write </td> <td>(</td> <td class="paramtype">const <a class="el" href="classCLAM_1_1Audio.html">Audio</a> & </td> <td class="paramname"><em>audio</em>, </td> </tr> <tr> <td class="paramkey"></td> <td></td> <td class="paramtype">const <a class="el" href="classint.html">int</a> </td> <td class="paramname"><em>channelID</em> </td> </tr> <tr> <td></td> <td>)</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>Writes the information given by an <a class="el" href="classCLAM_1_1Audio.html" title="Audio class with the Data Buffer, information about it (SampleRate, BeginTime), and methods to insert...">Audio</a> chunk in the Devices. </p> <p>Must be implemented by any Device derived from this class. </p> <dl class="params"><dt>Parameters:</dt><dd> <table class="params"> <tr><td class="paramname">audio</td><td><a class="el" href="classCLAM_1_1Audio.html" title="Audio class with the Data Buffer, information about it (SampleRate, BeginTime), and methods to insert...">Audio</a> object with values that must to be passed to Devices </td></tr> <tr><td class="paramname">channelID</td><td>Channel to write </td></tr> </table> </dd> </dl> <p>Implemented in <a class="el" href="classCLAM_1_1RtAAudioDevice.html#ad52c49a2c69669dee08f496f1c262f5a">CLAM::RtAAudioDevice</a>.</p> <p>Referenced by <a class="el" href="AudioOut_8hxx_source.html#l00092">CLAM::AudioOut::Do()</a>.</p> </div> </div> <hr/><h2>Friends And Related Function Documentation</h2> <a class="anchor" id="a7edebfd8b2751bf99fc4568210527129"></a> <div class="memitem"> <div class="memproto"> <table class="mlabels"> <tr> <td class="mlabels-left"> <table class="memname"> <tr> <td class="memname">friend class <a class="el" href="classCLAM_1_1AudioIn.html">AudioIn</a></td> </tr> </table> </td> <td class="mlabels-right"> <span class="mlabels"><span class="mlabel">friend</span></span> </td> </tr> </table> </div><div class="memdoc"> <p>Definition at line <a class="el" href="AudioDevice_8hxx_source.html#l00041">41</a> of file <a class="el" href="AudioDevice_8hxx_source.html">AudioDevice.hxx</a>.</p> </div> </div> <a class="anchor" id="a85edaa7e5c3ae68dabadd5373890591e"></a> <div class="memitem"> <div class="memproto"> <table class="mlabels"> <tr> <td class="mlabels-left"> <table class="memname"> <tr> <td class="memname">friend class <a class="el" href="classCLAM_1_1AudioManager.html">AudioManager</a></td> </tr> </table> </td> <td class="mlabels-right"> <span class="mlabels"><span class="mlabel">friend</span></span> </td> </tr> </table> </div><div class="memdoc"> <p>Definition at line <a class="el" href="AudioDevice_8hxx_source.html#l00043">43</a> of file <a class="el" href="AudioDevice_8hxx_source.html">AudioDevice.hxx</a>.</p> </div> </div> <a class="anchor" id="a010aadd9e61c5f1a327e3a54feed2203"></a> <div class="memitem"> <div class="memproto"> <table class="mlabels"> <tr> <td class="mlabels-left"> <table class="memname"> <tr> <td class="memname">friend class <a class="el" href="classCLAM_1_1AudioOut.html">AudioOut</a></td> </tr> </table> </td> <td class="mlabels-right"> <span class="mlabels"><span class="mlabel">friend</span></span> </td> </tr> </table> </div><div class="memdoc"> <p>Definition at line <a class="el" href="AudioDevice_8hxx_source.html#l00042">42</a> of file <a class="el" href="AudioDevice_8hxx_source.html">AudioDevice.hxx</a>.</p> </div> </div> <hr/><h2>Member Data Documentation</h2> <a class="anchor" id="a0172a279bac84ed78b32a1860001e5dd"></a> <div class="memitem"> <div class="memproto"> <table class="memname"> <tr> <td class="memname">bool CLAM::AudioDevice::mForceNChannels</td> </tr> </table> </div><div class="memdoc"> <p>Definition at line <a class="el" href="AudioDevice_8hxx_source.html#l00079">79</a> of file <a class="el" href="AudioDevice_8hxx_source.html">AudioDevice.hxx</a>.</p> <p>Referenced by <a class="el" href="AudioDevice_8hxx_source.html#l00087">AudioDevice()</a>, and <a class="el" href="AudioDevice_8cxx_source.html#l00171">SetNChannels()</a>.</p> </div> </div> <a class="anchor" id="aa0a35c3c0f1b99582f9696d92e4f3bf4"></a> <div class="memitem"> <div class="memproto"> <table class="memname"> <tr> <td class="memname">std::vector<<a class="el" href="classCLAM_1_1AudioIn.html">AudioIn</a>*> CLAM::AudioDevice::mInputs</td> </tr> </table> </div><div class="memdoc"> <p>Definition at line <a class="el" href="AudioDevice_8hxx_source.html#l00075">75</a> of file <a class="el" href="AudioDevice_8hxx_source.html">AudioDevice.hxx</a>.</p> <p>Referenced by <a class="el" href="AudioDevice_8cxx_source.html#l00049">Register()</a>, <a class="el" href="AudioDevice_8cxx_source.html#l00120">SampleRate()</a>, <a class="el" href="RtAAudioDevice_8cxx_source.html#l00265">CLAM::RtAAudioDevice::Start()</a>, and <a class="el" href="AudioDevice_8cxx_source.html#l00081">Unregister()</a>.</p> </div> </div> <a class="anchor" id="aa95539366d13274690a24a03d1a5fa4e"></a> <div class="memitem"> <div class="memproto"> <table class="memname"> <tr> <td class="memname">std::string CLAM::AudioDevice::mName</td> </tr> </table> </div><div class="memdoc"> <p>Definition at line <a class="el" href="AudioDevice_8hxx_source.html#l00078">78</a> of file <a class="el" href="AudioDevice_8hxx_source.html">AudioDevice.hxx</a>.</p> <p>Referenced by <a class="el" href="AudioDevice_8hxx_source.html#l00087">AudioDevice()</a>, and <a class="el" href="AudioDevice_8cxx_source.html#l00111">GetInfo()</a>.</p> </div> </div> <a class="anchor" id="abdbaac6f077d96b8edf0de3dd4384998"></a> <div class="memitem"> <div class="memproto"> <table class="memname"> <tr> <td class="memname"><a class="el" href="classint.html">int</a> CLAM::AudioDevice::mNChannels</td> </tr> </table> </div><div class="memdoc"> <p>Definition at line <a class="el" href="AudioDevice_8hxx_source.html#l00080">80</a> of file <a class="el" href="AudioDevice_8hxx_source.html">AudioDevice.hxx</a>.</p> <p>Referenced by <a class="el" href="AudioDevice_8hxx_source.html#l00087">AudioDevice()</a>, <a class="el" href="AudioDevice_8cxx_source.html#l00111">GetInfo()</a>, and <a class="el" href="AudioDevice_8cxx_source.html#l00171">SetNChannels()</a>.</p> </div> </div> <a class="anchor" id="a2d7ac972f898b2ff3fdd4a7335f145d3"></a> <div class="memitem"> <div class="memproto"> <table class="memname"> <tr> <td class="memname"><a class="el" href="classint.html">int</a> CLAM::AudioDevice::mNReadChannels</td> </tr> </table> </div><div class="memdoc"> <p>Definition at line <a class="el" href="AudioDevice_8hxx_source.html#l00081">81</a> of file <a class="el" href="AudioDevice_8hxx_source.html">AudioDevice.hxx</a>.</p> <p>Referenced by <a class="el" href="AudioDevice_8hxx_source.html#l00087">AudioDevice()</a>, and <a class="el" href="AudioDevice_8cxx_source.html#l00111">GetInfo()</a>.</p> </div> </div> <a class="anchor" id="af4178ba8b6049feb3e4c72d210b1317e"></a> <div class="memitem"> <div class="memproto"> <table class="memname"> <tr> <td class="memname"><a class="el" href="classint.html">int</a> CLAM::AudioDevice::mNWriteChannels</td> </tr> </table> </div><div class="memdoc"> <p>Definition at line <a class="el" href="AudioDevice_8hxx_source.html#l00082">82</a> of file <a class="el" href="AudioDevice_8hxx_source.html">AudioDevice.hxx</a>.</p> <p>Referenced by <a class="el" href="AudioDevice_8hxx_source.html#l00087">AudioDevice()</a>, and <a class="el" href="AudioDevice_8cxx_source.html#l00111">GetInfo()</a>.</p> </div> </div> <a class="anchor" id="a688a8c9b7fd6d4d62283a9b8a21282a1"></a> <div class="memitem"> <div class="memproto"> <table class="memname"> <tr> <td class="memname">std::vector<<a class="el" href="classCLAM_1_1AudioOut.html">AudioOut</a>*> CLAM::AudioDevice::mOutputs</td> </tr> </table> </div><div class="memdoc"> <p>Definition at line <a class="el" href="AudioDevice_8hxx_source.html#l00076">76</a> of file <a class="el" href="AudioDevice_8hxx_source.html">AudioDevice.hxx</a>.</p> <p>Referenced by <a class="el" href="AudioDevice_8cxx_source.html#l00065">Register()</a>, <a class="el" href="AudioDevice_8cxx_source.html#l00120">SampleRate()</a>, <a class="el" href="RtAAudioDevice_8cxx_source.html#l00265">CLAM::RtAAudioDevice::Start()</a>, and <a class="el" href="AudioDevice_8cxx_source.html#l00096">Unregister()</a>.</p> </div> </div> <hr/>The documentation for this class was generated from the following files:<ul> <li><a class="el" href="AudioDevice_8hxx_source.html">AudioDevice.hxx</a></li> <li><a class="el" href="AudioDevice_8cxx_source.html">AudioDevice.cxx</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.1 </small></address> </body> </html>
Cokiee Shell Web 1.0, Coded By Razor
Neueste Kommentare