Release 4.4.4 tarball

This commit is contained in:
Gary Scavone
2013-09-29 23:51:11 +02:00
committed by Stephen Sinclair
parent 899303d7c4
commit 18730391e8
413 changed files with 6241 additions and 4445 deletions

3177
configure vendored

File diff suppressed because it is too large Load Diff

View File

@@ -9,7 +9,7 @@
<a class="qindex" href="index.html">Home</a> &nbsp; <a class="qindex" href="information.html">Information</a> &nbsp; <a class="qindex" href="classes.html">Classes</a> &nbsp; <a class="qindex" href="download.html">Download</a> &nbsp; <a class="qindex" href="usage.html">Usage</a> &nbsp; <a class="qindex" href="maillist.html">Mail List</a> &nbsp; <a class="qindex" href="system.html">Requirements</a> &nbsp; <a class="qindex" href="links.html">Links</a> &nbsp; <a class="qindex" href="faq.html">FAQ</a> &nbsp; <a class="qindex" href="tutorial.html">Tutorial</a></CENTER> <a class="qindex" href="index.html">Home</a> &nbsp; <a class="qindex" href="information.html">Information</a> &nbsp; <a class="qindex" href="classes.html">Classes</a> &nbsp; <a class="qindex" href="download.html">Download</a> &nbsp; <a class="qindex" href="usage.html">Usage</a> &nbsp; <a class="qindex" href="maillist.html">Mail List</a> &nbsp; <a class="qindex" href="system.html">Requirements</a> &nbsp; <a class="qindex" href="links.html">Links</a> &nbsp; <a class="qindex" href="faq.html">FAQ</a> &nbsp; <a class="qindex" href="tutorial.html">Tutorial</a></CENTER>
<HR> <HR>
<!-- Generated by Doxygen 1.6.2 --> <!-- Generated by Doxygen 1.6.2 -->
<div class="navpath"><a class="el" href="dir_f14fd23bc74c76f288031ad23b3f3505.html">include</a> <div class="navpath"><a class="el" href="dir_221deb9bdff892d63ed1e409450a60d2.html">include</a>
</div> </div>
<div class="contents"> <div class="contents">
<h1>ADSR.h</h1><div class="fragment"><pre class="fragment"><a name="l00001"></a>00001 <span class="preprocessor">#ifndef STK_ADSR_H</span> <h1>ADSR.h</h1><div class="fragment"><pre class="fragment"><a name="l00001"></a>00001 <span class="preprocessor">#ifndef STK_ADSR_H</span>
@@ -20,144 +20,144 @@
<a name="l00006"></a><a class="code" href="namespacestk.html">00006</a> <span class="keyword">namespace </span>stk { <a name="l00006"></a><a class="code" href="namespacestk.html">00006</a> <span class="keyword">namespace </span>stk {
<a name="l00007"></a>00007 <a name="l00007"></a>00007
<a name="l00008"></a>00008 <span class="comment">/***************************************************/</span> <a name="l00008"></a>00008 <span class="comment">/***************************************************/</span>
<a name="l00021"></a>00021 <span class="comment">/***************************************************/</span> <a name="l00022"></a>00022 <span class="comment">/***************************************************/</span>
<a name="l00022"></a>00022 <a name="l00023"></a>00023
<a name="l00023"></a><a class="code" href="classstk_1_1ADSR.html">00023</a> <span class="keyword">class </span><a class="code" href="classstk_1_1ADSR.html" title="STK ADSR envelope class.">ADSR</a> : <span class="keyword">public</span> <a class="code" href="classstk_1_1Generator.html" title="STK abstract unit generator parent class.">Generator</a> <a name="l00024"></a><a class="code" href="classstk_1_1ADSR.html">00024</a> <span class="keyword">class </span><a class="code" href="classstk_1_1ADSR.html" title="STK ADSR envelope class.">ADSR</a> : <span class="keyword">public</span> <a class="code" href="classstk_1_1Generator.html" title="STK abstract unit generator parent class.">Generator</a>
<a name="l00024"></a>00024 { <a name="l00025"></a>00025 {
<a name="l00025"></a>00025 <span class="keyword">public</span>: <a name="l00026"></a>00026 <span class="keyword">public</span>:
<a name="l00026"></a>00026 <a name="l00027"></a>00027
<a name="l00028"></a>00028 <span class="keyword">enum</span> { <a name="l00029"></a>00029 <span class="keyword">enum</span> {
<a name="l00029"></a><a class="code" href="classstk_1_1ADSR.html#ae1cdd1f2886d69a76fcd5b1e0e9154baa9518c737b76795fa49f997c09e074c8e">00029</a> <a class="code" href="classstk_1_1ADSR.html#ae1cdd1f2886d69a76fcd5b1e0e9154baa9518c737b76795fa49f997c09e074c8e">ATTACK</a>, <a name="l00030"></a><a class="code" href="classstk_1_1ADSR.html#ae1cdd1f2886d69a76fcd5b1e0e9154baa9518c737b76795fa49f997c09e074c8e">00030</a> <a class="code" href="classstk_1_1ADSR.html#ae1cdd1f2886d69a76fcd5b1e0e9154baa9518c737b76795fa49f997c09e074c8e">ATTACK</a>,
<a name="l00030"></a><a class="code" href="classstk_1_1ADSR.html#ae1cdd1f2886d69a76fcd5b1e0e9154baa75e1deeb861fe2989250b1977018cacf">00030</a> <a class="code" href="classstk_1_1ADSR.html#ae1cdd1f2886d69a76fcd5b1e0e9154baa75e1deeb861fe2989250b1977018cacf">DECAY</a>, <a name="l00031"></a><a class="code" href="classstk_1_1ADSR.html#ae1cdd1f2886d69a76fcd5b1e0e9154baa75e1deeb861fe2989250b1977018cacf">00031</a> <a class="code" href="classstk_1_1ADSR.html#ae1cdd1f2886d69a76fcd5b1e0e9154baa75e1deeb861fe2989250b1977018cacf">DECAY</a>,
<a name="l00031"></a><a class="code" href="classstk_1_1ADSR.html#ae1cdd1f2886d69a76fcd5b1e0e9154baa139dc35648a28ddc99a7a606e185f6ad">00031</a> <a class="code" href="classstk_1_1ADSR.html#ae1cdd1f2886d69a76fcd5b1e0e9154baa139dc35648a28ddc99a7a606e185f6ad">SUSTAIN</a>, <a name="l00032"></a><a class="code" href="classstk_1_1ADSR.html#ae1cdd1f2886d69a76fcd5b1e0e9154baa139dc35648a28ddc99a7a606e185f6ad">00032</a> <a class="code" href="classstk_1_1ADSR.html#ae1cdd1f2886d69a76fcd5b1e0e9154baa139dc35648a28ddc99a7a606e185f6ad">SUSTAIN</a>,
<a name="l00032"></a><a class="code" href="classstk_1_1ADSR.html#ae1cdd1f2886d69a76fcd5b1e0e9154baa7efc189b0b53e581201fd64f357a1756">00032</a> <a class="code" href="classstk_1_1ADSR.html#ae1cdd1f2886d69a76fcd5b1e0e9154baa7efc189b0b53e581201fd64f357a1756">RELEASE</a>, <a name="l00033"></a><a class="code" href="classstk_1_1ADSR.html#ae1cdd1f2886d69a76fcd5b1e0e9154baa7efc189b0b53e581201fd64f357a1756">00033</a> <a class="code" href="classstk_1_1ADSR.html#ae1cdd1f2886d69a76fcd5b1e0e9154baa7efc189b0b53e581201fd64f357a1756">RELEASE</a>,
<a name="l00033"></a><a class="code" href="classstk_1_1ADSR.html#ae1cdd1f2886d69a76fcd5b1e0e9154baa1ed3238253daecbdba14da71759392d8">00033</a> <a class="code" href="classstk_1_1ADSR.html#ae1cdd1f2886d69a76fcd5b1e0e9154baa1ed3238253daecbdba14da71759392d8">IDLE</a> <a name="l00034"></a><a class="code" href="classstk_1_1ADSR.html#ae1cdd1f2886d69a76fcd5b1e0e9154baa1ed3238253daecbdba14da71759392d8">00034</a> <a class="code" href="classstk_1_1ADSR.html#ae1cdd1f2886d69a76fcd5b1e0e9154baa1ed3238253daecbdba14da71759392d8">IDLE</a>
<a name="l00034"></a>00034 }; <a name="l00035"></a>00035 };
<a name="l00035"></a>00035 <a name="l00036"></a>00036
<a name="l00037"></a>00037 <a class="code" href="classstk_1_1ADSR.html#ac7473272021307b0dcf1ef602143e144" title="Default constructor.">ADSR</a>( <span class="keywordtype">void</span> ); <a name="l00038"></a>00038 <a class="code" href="classstk_1_1ADSR.html#ac7473272021307b0dcf1ef602143e144" title="Default constructor.">ADSR</a>( <span class="keywordtype">void</span> );
<a name="l00038"></a>00038 <a name="l00039"></a>00039
<a name="l00040"></a>00040 <a class="code" href="classstk_1_1ADSR.html#a714f0b9deb325050eba819bc1fe22127" title="Class destructor.">~ADSR</a>( <span class="keywordtype">void</span> ); <a name="l00041"></a>00041 <a class="code" href="classstk_1_1ADSR.html#a714f0b9deb325050eba819bc1fe22127" title="Class destructor.">~ADSR</a>( <span class="keywordtype">void</span> );
<a name="l00041"></a>00041 <a name="l00042"></a>00042
<a name="l00043"></a>00043 <span class="keywordtype">void</span> <a class="code" href="classstk_1_1ADSR.html#aad03e82009a20cfb49c1f04bae791631" title="Set target = 1, state = ADSR::ATTACK.">keyOn</a>( <span class="keywordtype">void</span> ); <a name="l00044"></a>00044 <span class="keywordtype">void</span> <a class="code" href="classstk_1_1ADSR.html#aad03e82009a20cfb49c1f04bae791631" title="Set target = 1, state = ADSR::ATTACK.">keyOn</a>( <span class="keywordtype">void</span> );
<a name="l00044"></a>00044 <a name="l00045"></a>00045
<a name="l00046"></a>00046 <span class="keywordtype">void</span> <a class="code" href="classstk_1_1ADSR.html#a9400e04b313ab8900a3ba9b693f448e6" title="Set target = 0, state = ADSR::RELEASE.">keyOff</a>( <span class="keywordtype">void</span> ); <a name="l00047"></a>00047 <span class="keywordtype">void</span> <a class="code" href="classstk_1_1ADSR.html#a9400e04b313ab8900a3ba9b693f448e6" title="Set target = 0, state = ADSR::RELEASE.">keyOff</a>( <span class="keywordtype">void</span> );
<a name="l00047"></a>00047 <a name="l00048"></a>00048
<a name="l00049"></a>00049 <span class="keywordtype">void</span> <a class="code" href="classstk_1_1ADSR.html#aff18347235fd52ce307c4b5de18a9c62" title="Set the attack rate.">setAttackRate</a>( StkFloat rate ); <a name="l00050"></a>00050 <span class="keywordtype">void</span> <a class="code" href="classstk_1_1ADSR.html#aff18347235fd52ce307c4b5de18a9c62" title="Set the attack rate (gain / sample).">setAttackRate</a>( StkFloat rate );
<a name="l00050"></a>00050 <a name="l00051"></a>00051
<a name="l00052"></a>00052 <span class="keywordtype">void</span> <a class="code" href="classstk_1_1ADSR.html#ae0af300e39f83f79776c04a3e83a85b1" title="Set the target value for the attack (default = 1.0).">setAttackTarget</a>( StkFloat target ); <a name="l00053"></a>00053 <span class="keywordtype">void</span> <a class="code" href="classstk_1_1ADSR.html#ae0af300e39f83f79776c04a3e83a85b1" title="Set the target value for the attack (default = 1.0).">setAttackTarget</a>( StkFloat target );
<a name="l00053"></a>00053 <a name="l00054"></a>00054
<a name="l00055"></a>00055 <span class="keywordtype">void</span> <a class="code" href="classstk_1_1ADSR.html#a285f500b1e149aed48dba2a155b95cdd" title="Set the decay rate.">setDecayRate</a>( StkFloat rate ); <a name="l00056"></a>00056 <span class="keywordtype">void</span> <a class="code" href="classstk_1_1ADSR.html#a285f500b1e149aed48dba2a155b95cdd" title="Set the decay rate (gain / sample).">setDecayRate</a>( StkFloat rate );
<a name="l00056"></a>00056 <a name="l00057"></a>00057
<a name="l00058"></a>00058 <span class="keywordtype">void</span> <a class="code" href="classstk_1_1ADSR.html#a85138fb6bbcc7b7cd85ec8449d68f7d8" title="Set the sustain level.">setSustainLevel</a>( StkFloat level ); <a name="l00059"></a>00059 <span class="keywordtype">void</span> <a class="code" href="classstk_1_1ADSR.html#a85138fb6bbcc7b7cd85ec8449d68f7d8" title="Set the sustain level.">setSustainLevel</a>( StkFloat level );
<a name="l00059"></a>00059 <a name="l00060"></a>00060
<a name="l00061"></a>00061 <span class="keywordtype">void</span> <a class="code" href="classstk_1_1ADSR.html#a29da04231df73c2968c0e9387b43be6e" title="Set the release rate.">setReleaseRate</a>( StkFloat rate ); <a name="l00062"></a>00062 <span class="keywordtype">void</span> <a class="code" href="classstk_1_1ADSR.html#a29da04231df73c2968c0e9387b43be6e" title="Set the release rate (gain / sample).">setReleaseRate</a>( StkFloat rate );
<a name="l00062"></a>00062 <a name="l00063"></a>00063
<a name="l00064"></a>00064 <span class="keywordtype">void</span> <a class="code" href="classstk_1_1ADSR.html#a48885319b8175cd4d6312fdf7980f116" title="Set the attack rate based on a time duration.">setAttackTime</a>( StkFloat time ); <a name="l00065"></a>00065 <span class="keywordtype">void</span> <a class="code" href="classstk_1_1ADSR.html#a48885319b8175cd4d6312fdf7980f116" title="Set the attack rate based on a time duration (seconds).">setAttackTime</a>( StkFloat time );
<a name="l00065"></a>00065 <a name="l00066"></a>00066
<a name="l00067"></a>00067 <span class="keywordtype">void</span> <a class="code" href="classstk_1_1ADSR.html#a450703c45384ae27eb766551843ce82d" title="Set the decay rate based on a time duration (seconds).">setDecayTime</a>( StkFloat time ); <a name="l00068"></a>00068 <span class="keywordtype">void</span> <a class="code" href="classstk_1_1ADSR.html#a450703c45384ae27eb766551843ce82d" title="Set the decay rate based on a time duration (seconds).">setDecayTime</a>( StkFloat time );
<a name="l00068"></a>00068 <a name="l00069"></a>00069
<a name="l00070"></a>00070 <span class="keywordtype">void</span> <a class="code" href="classstk_1_1ADSR.html#a91c14442557cb65286a327f8b297237a" title="Set the release rate based on a time duration (seconds).">setReleaseTime</a>( StkFloat time ); <a name="l00071"></a>00071 <span class="keywordtype">void</span> <a class="code" href="classstk_1_1ADSR.html#a91c14442557cb65286a327f8b297237a" title="Set the release rate based on a time duration (seconds).">setReleaseTime</a>( StkFloat time );
<a name="l00071"></a>00071 <a name="l00072"></a>00072
<a name="l00073"></a>00073 <span class="keywordtype">void</span> <a class="code" href="classstk_1_1ADSR.html#a3567b02a0e8ab82d18eb949d362f9708" title="Set sustain level and attack, decay, and release time durations.">setAllTimes</a>( StkFloat aTime, StkFloat dTime, StkFloat sLevel, StkFloat rTime ); <a name="l00074"></a>00074 <span class="keywordtype">void</span> <a class="code" href="classstk_1_1ADSR.html#a3567b02a0e8ab82d18eb949d362f9708" title="Set sustain level and attack, decay, and release time durations (seconds).">setAllTimes</a>( StkFloat aTime, StkFloat dTime, StkFloat sLevel, StkFloat rTime );
<a name="l00074"></a>00074 <a name="l00075"></a>00075
<a name="l00076"></a>00076 <span class="keywordtype">void</span> <a class="code" href="classstk_1_1ADSR.html#a428eebd510e464ccd7bb4e5728f80d63" title="Set a sustain target value and attack or decay from current value to target.">setTarget</a>( StkFloat target ); <a name="l00077"></a>00077 <span class="keywordtype">void</span> <a class="code" href="classstk_1_1ADSR.html#a428eebd510e464ccd7bb4e5728f80d63" title="Set a sustain target value and attack or decay from current value to target.">setTarget</a>( StkFloat target );
<a name="l00077"></a>00077 <a name="l00078"></a>00078
<a name="l00079"></a><a class="code" href="classstk_1_1ADSR.html#a87f9918cfa4104a841dc5b44f26f8904">00079</a> <span class="keywordtype">int</span> <a class="code" href="classstk_1_1ADSR.html#a87f9918cfa4104a841dc5b44f26f8904" title="Return the current envelope state (ATTACK, DECAY, SUSTAIN, RELEASE, IDLE).">getState</a>( <span class="keywordtype">void</span> )<span class="keyword"> const </span>{ <span class="keywordflow">return</span> state_; }; <a name="l00080"></a><a class="code" href="classstk_1_1ADSR.html#a87f9918cfa4104a841dc5b44f26f8904">00080</a> <span class="keywordtype">int</span> <a class="code" href="classstk_1_1ADSR.html#a87f9918cfa4104a841dc5b44f26f8904" title="Return the current envelope state (ATTACK, DECAY, SUSTAIN, RELEASE, IDLE).">getState</a>( <span class="keywordtype">void</span> )<span class="keyword"> const </span>{ <span class="keywordflow">return</span> state_; };
<a name="l00080"></a>00080 <a name="l00081"></a>00081
<a name="l00082"></a>00082 <span class="keywordtype">void</span> <a class="code" href="classstk_1_1ADSR.html#aa99bf5fca3885bf8d99a3edc4072a4b5" title="Set to state = ADSR::SUSTAIN with current and target values of value.">setValue</a>( StkFloat value ); <a name="l00083"></a>00083 <span class="keywordtype">void</span> <a class="code" href="classstk_1_1ADSR.html#aa99bf5fca3885bf8d99a3edc4072a4b5" title="Set to state = ADSR::SUSTAIN with current and target values of value.">setValue</a>( StkFloat value );
<a name="l00083"></a>00083 <a name="l00084"></a>00084
<a name="l00085"></a><a class="code" href="classstk_1_1ADSR.html#aedbcb85346c354139f139b3232f36f39">00085</a> StkFloat <a class="code" href="classstk_1_1ADSR.html#aedbcb85346c354139f139b3232f36f39" title="Return the last computed output value.">lastOut</a>( <span class="keywordtype">void</span> )<span class="keyword"> const </span>{ <span class="keywordflow">return</span> lastFrame_[0]; }; <a name="l00086"></a><a class="code" href="classstk_1_1ADSR.html#aedbcb85346c354139f139b3232f36f39">00086</a> StkFloat <a class="code" href="classstk_1_1ADSR.html#aedbcb85346c354139f139b3232f36f39" title="Return the last computed output value.">lastOut</a>( <span class="keywordtype">void</span> )<span class="keyword"> const </span>{ <span class="keywordflow">return</span> lastFrame_[0]; };
<a name="l00086"></a>00086 <a name="l00087"></a>00087
<a name="l00088"></a>00088 StkFloat <a class="code" href="classstk_1_1ADSR.html#af2c0869f86210a55f4f668172373c975" title="Compute and return one output sample.">tick</a>( <span class="keywordtype">void</span> ); <a name="l00089"></a>00089 StkFloat <a class="code" href="classstk_1_1ADSR.html#af2c0869f86210a55f4f668172373c975" title="Compute and return one output sample.">tick</a>( <span class="keywordtype">void</span> );
<a name="l00089"></a>00089 <a name="l00090"></a>00090
<a name="l00091"></a>00091 <a name="l00092"></a>00092
<a name="l00098"></a>00098 <a class="code" href="classstk_1_1StkFrames.html" title="An STK class to handle vectorized audio data.">StkFrames</a>&amp; <a class="code" href="classstk_1_1ADSR.html#af2c0869f86210a55f4f668172373c975" title="Compute and return one output sample.">tick</a>( <a class="code" href="classstk_1_1StkFrames.html" title="An STK class to handle vectorized audio data.">StkFrames</a>&amp; frames, <span class="keywordtype">unsigned</span> <span class="keywordtype">int</span> channel = 0 ); <a name="l00099"></a>00099 <a class="code" href="classstk_1_1StkFrames.html" title="An STK class to handle vectorized audio data.">StkFrames</a>&amp; <a class="code" href="classstk_1_1ADSR.html#af2c0869f86210a55f4f668172373c975" title="Compute and return one output sample.">tick</a>( <a class="code" href="classstk_1_1StkFrames.html" title="An STK class to handle vectorized audio data.">StkFrames</a>&amp; frames, <span class="keywordtype">unsigned</span> <span class="keywordtype">int</span> channel = 0 );
<a name="l00099"></a>00099 <a name="l00100"></a>00100
<a name="l00100"></a>00100 <span class="keyword">protected</span>: <a name="l00101"></a>00101 <span class="keyword">protected</span>:
<a name="l00101"></a>00101 <a name="l00102"></a>00102
<a name="l00102"></a>00102 <span class="keywordtype">void</span> sampleRateChanged( StkFloat newRate, StkFloat oldRate ); <a name="l00103"></a>00103 <span class="keywordtype">void</span> sampleRateChanged( StkFloat newRate, StkFloat oldRate );
<a name="l00103"></a>00103 <a name="l00104"></a>00104
<a name="l00104"></a>00104 <span class="keywordtype">int</span> state_; <a name="l00105"></a>00105 <span class="keywordtype">int</span> state_;
<a name="l00105"></a>00105 StkFloat value_; <a name="l00106"></a>00106 StkFloat value_;
<a name="l00106"></a>00106 StkFloat target_; <a name="l00107"></a>00107 StkFloat target_;
<a name="l00107"></a>00107 StkFloat attackRate_; <a name="l00108"></a>00108 StkFloat attackRate_;
<a name="l00108"></a>00108 StkFloat decayRate_; <a name="l00109"></a>00109 StkFloat decayRate_;
<a name="l00109"></a>00109 StkFloat releaseRate_; <a name="l00110"></a>00110 StkFloat releaseRate_;
<a name="l00110"></a>00110 StkFloat releaseTime_; <a name="l00111"></a>00111 StkFloat releaseTime_;
<a name="l00111"></a>00111 StkFloat sustainLevel_; <a name="l00112"></a>00112 StkFloat sustainLevel_;
<a name="l00112"></a>00112 }; <a name="l00113"></a>00113 };
<a name="l00113"></a>00113 <a name="l00114"></a>00114
<a name="l00114"></a><a class="code" href="classstk_1_1ADSR.html#af2c0869f86210a55f4f668172373c975">00114</a> <span class="keyword">inline</span> StkFloat <a class="code" href="classstk_1_1ADSR.html#af2c0869f86210a55f4f668172373c975" title="Compute and return one output sample.">ADSR :: tick</a>( <span class="keywordtype">void</span> ) <a name="l00115"></a><a class="code" href="classstk_1_1ADSR.html#af2c0869f86210a55f4f668172373c975">00115</a> <span class="keyword">inline</span> StkFloat <a class="code" href="classstk_1_1ADSR.html#af2c0869f86210a55f4f668172373c975" title="Compute and return one output sample.">ADSR :: tick</a>( <span class="keywordtype">void</span> )
<a name="l00115"></a>00115 { <a name="l00116"></a>00116 {
<a name="l00116"></a>00116 <span class="keywordflow">switch</span> ( state_ ) { <a name="l00117"></a>00117 <span class="keywordflow">switch</span> ( state_ ) {
<a name="l00117"></a>00117 <a name="l00118"></a>00118
<a name="l00118"></a>00118 <span class="keywordflow">case</span> <a class="code" href="classstk_1_1ADSR.html#ae1cdd1f2886d69a76fcd5b1e0e9154baa9518c737b76795fa49f997c09e074c8e">ATTACK</a>: <a name="l00119"></a>00119 <span class="keywordflow">case</span> <a class="code" href="classstk_1_1ADSR.html#ae1cdd1f2886d69a76fcd5b1e0e9154baa9518c737b76795fa49f997c09e074c8e">ATTACK</a>:
<a name="l00119"></a>00119 value_ += attackRate_; <a name="l00120"></a>00120 value_ += attackRate_;
<a name="l00120"></a>00120 <span class="keywordflow">if</span> ( value_ &gt;= target_ ) { <a name="l00121"></a>00121 <span class="keywordflow">if</span> ( value_ &gt;= target_ ) {
<a name="l00121"></a>00121 value_ = target_; <a name="l00122"></a>00122 value_ = target_;
<a name="l00122"></a>00122 target_ = sustainLevel_; <a name="l00123"></a>00123 target_ = sustainLevel_;
<a name="l00123"></a>00123 state_ = <a class="code" href="classstk_1_1ADSR.html#ae1cdd1f2886d69a76fcd5b1e0e9154baa75e1deeb861fe2989250b1977018cacf">DECAY</a>; <a name="l00124"></a>00124 state_ = <a class="code" href="classstk_1_1ADSR.html#ae1cdd1f2886d69a76fcd5b1e0e9154baa75e1deeb861fe2989250b1977018cacf">DECAY</a>;
<a name="l00124"></a>00124 } <a name="l00125"></a>00125 }
<a name="l00125"></a>00125 lastFrame_[0] = value_; <a name="l00126"></a>00126 lastFrame_[0] = value_;
<a name="l00126"></a>00126 <span class="keywordflow">break</span>; <a name="l00127"></a>00127 <span class="keywordflow">break</span>;
<a name="l00127"></a>00127 <a name="l00128"></a>00128
<a name="l00128"></a>00128 <span class="keywordflow">case</span> <a class="code" href="classstk_1_1ADSR.html#ae1cdd1f2886d69a76fcd5b1e0e9154baa75e1deeb861fe2989250b1977018cacf">DECAY</a>: <a name="l00129"></a>00129 <span class="keywordflow">case</span> <a class="code" href="classstk_1_1ADSR.html#ae1cdd1f2886d69a76fcd5b1e0e9154baa75e1deeb861fe2989250b1977018cacf">DECAY</a>:
<a name="l00129"></a>00129 <span class="keywordflow">if</span> ( value_ &gt; sustainLevel_ ) { <a name="l00130"></a>00130 <span class="keywordflow">if</span> ( value_ &gt; sustainLevel_ ) {
<a name="l00130"></a>00130 value_ -= decayRate_; <a name="l00131"></a>00131 value_ -= decayRate_;
<a name="l00131"></a>00131 <span class="keywordflow">if</span> ( value_ &lt;= sustainLevel_ ) { <a name="l00132"></a>00132 <span class="keywordflow">if</span> ( value_ &lt;= sustainLevel_ ) {
<a name="l00132"></a>00132 value_ = sustainLevel_; <a name="l00133"></a>00133 value_ = sustainLevel_;
<a name="l00133"></a>00133 state_ = <a class="code" href="classstk_1_1ADSR.html#ae1cdd1f2886d69a76fcd5b1e0e9154baa139dc35648a28ddc99a7a606e185f6ad">SUSTAIN</a>; <a name="l00134"></a>00134 state_ = <a class="code" href="classstk_1_1ADSR.html#ae1cdd1f2886d69a76fcd5b1e0e9154baa139dc35648a28ddc99a7a606e185f6ad">SUSTAIN</a>;
<a name="l00134"></a>00134 } <a name="l00135"></a>00135 }
<a name="l00135"></a>00135 } <a name="l00136"></a>00136 }
<a name="l00136"></a>00136 <span class="keywordflow">else</span> { <a name="l00137"></a>00137 <span class="keywordflow">else</span> {
<a name="l00137"></a>00137 value_ += decayRate_; <span class="comment">// attack target &lt; sustain level</span> <a name="l00138"></a>00138 value_ += decayRate_; <span class="comment">// attack target &lt; sustain level</span>
<a name="l00138"></a>00138 <span class="keywordflow">if</span> ( value_ &gt;= sustainLevel_ ) { <a name="l00139"></a>00139 <span class="keywordflow">if</span> ( value_ &gt;= sustainLevel_ ) {
<a name="l00139"></a>00139 value_ = sustainLevel_; <a name="l00140"></a>00140 value_ = sustainLevel_;
<a name="l00140"></a>00140 state_ = <a class="code" href="classstk_1_1ADSR.html#ae1cdd1f2886d69a76fcd5b1e0e9154baa139dc35648a28ddc99a7a606e185f6ad">SUSTAIN</a>; <a name="l00141"></a>00141 state_ = <a class="code" href="classstk_1_1ADSR.html#ae1cdd1f2886d69a76fcd5b1e0e9154baa139dc35648a28ddc99a7a606e185f6ad">SUSTAIN</a>;
<a name="l00141"></a>00141 } <a name="l00142"></a>00142 }
<a name="l00142"></a>00142 } <a name="l00143"></a>00143 }
<a name="l00143"></a>00143 lastFrame_[0] = value_; <a name="l00144"></a>00144 lastFrame_[0] = value_;
<a name="l00144"></a>00144 <span class="keywordflow">break</span>; <a name="l00145"></a>00145 <span class="keywordflow">break</span>;
<a name="l00145"></a>00145 <a name="l00146"></a>00146
<a name="l00146"></a>00146 <span class="keywordflow">case</span> <a class="code" href="classstk_1_1ADSR.html#ae1cdd1f2886d69a76fcd5b1e0e9154baa7efc189b0b53e581201fd64f357a1756">RELEASE</a>: <a name="l00147"></a>00147 <span class="keywordflow">case</span> <a class="code" href="classstk_1_1ADSR.html#ae1cdd1f2886d69a76fcd5b1e0e9154baa7efc189b0b53e581201fd64f357a1756">RELEASE</a>:
<a name="l00147"></a>00147 value_ -= releaseRate_; <a name="l00148"></a>00148 value_ -= releaseRate_;
<a name="l00148"></a>00148 <span class="keywordflow">if</span> ( value_ &lt;= 0.0 ) { <a name="l00149"></a>00149 <span class="keywordflow">if</span> ( value_ &lt;= 0.0 ) {
<a name="l00149"></a>00149 value_ = 0.0; <a name="l00150"></a>00150 value_ = 0.0;
<a name="l00150"></a>00150 state_ = <a class="code" href="classstk_1_1ADSR.html#ae1cdd1f2886d69a76fcd5b1e0e9154baa1ed3238253daecbdba14da71759392d8">IDLE</a>; <a name="l00151"></a>00151 state_ = <a class="code" href="classstk_1_1ADSR.html#ae1cdd1f2886d69a76fcd5b1e0e9154baa1ed3238253daecbdba14da71759392d8">IDLE</a>;
<a name="l00151"></a>00151 } <a name="l00152"></a>00152 }
<a name="l00152"></a>00152 lastFrame_[0] = value_; <a name="l00153"></a>00153 lastFrame_[0] = value_;
<a name="l00153"></a>00153 <a name="l00154"></a>00154
<a name="l00154"></a>00154 } <a name="l00155"></a>00155 }
<a name="l00155"></a>00155 <a name="l00156"></a>00156
<a name="l00156"></a>00156 <span class="keywordflow">return</span> value_; <a name="l00157"></a>00157 <span class="keywordflow">return</span> value_;
<a name="l00157"></a>00157 } <a name="l00158"></a>00158 }
<a name="l00158"></a>00158 <a name="l00159"></a>00159
<a name="l00159"></a><a class="code" href="classstk_1_1ADSR.html#a97a617c65e62aadb4f88bd10cf437a6a">00159</a> <span class="keyword">inline</span> <a class="code" href="classstk_1_1StkFrames.html" title="An STK class to handle vectorized audio data.">StkFrames</a>&amp; <a class="code" href="classstk_1_1ADSR.html#af2c0869f86210a55f4f668172373c975" title="Compute and return one output sample.">ADSR :: tick</a>( <a class="code" href="classstk_1_1StkFrames.html" title="An STK class to handle vectorized audio data.">StkFrames</a>&amp; frames, <span class="keywordtype">unsigned</span> <span class="keywordtype">int</span> channel ) <a name="l00160"></a><a class="code" href="classstk_1_1ADSR.html#a97a617c65e62aadb4f88bd10cf437a6a">00160</a> <span class="keyword">inline</span> <a class="code" href="classstk_1_1StkFrames.html" title="An STK class to handle vectorized audio data.">StkFrames</a>&amp; <a class="code" href="classstk_1_1ADSR.html#af2c0869f86210a55f4f668172373c975" title="Compute and return one output sample.">ADSR :: tick</a>( <a class="code" href="classstk_1_1StkFrames.html" title="An STK class to handle vectorized audio data.">StkFrames</a>&amp; frames, <span class="keywordtype">unsigned</span> <span class="keywordtype">int</span> channel )
<a name="l00160"></a>00160 { <a name="l00161"></a>00161 {
<a name="l00161"></a>00161 <span class="preprocessor">#if defined(_STK_DEBUG_)</span> <a name="l00162"></a>00162 <span class="preprocessor">#if defined(_STK_DEBUG_)</span>
<a name="l00162"></a>00162 <span class="preprocessor"></span> <span class="keywordflow">if</span> ( channel &gt;= frames.<a class="code" href="classstk_1_1StkFrames.html#aec7ef9c46675a24111aa6e2fda3ba870" title="Return the number of channels represented by the data.">channels</a>() ) { <a name="l00163"></a>00163 <span class="preprocessor"></span> <span class="keywordflow">if</span> ( channel &gt;= frames.<a class="code" href="classstk_1_1StkFrames.html#aec7ef9c46675a24111aa6e2fda3ba870" title="Return the number of channels represented by the data.">channels</a>() ) {
<a name="l00163"></a>00163 oStream_ &lt;&lt; <span class="stringliteral">&quot;ADSR::tick(): channel and StkFrames arguments are incompatible!&quot;</span>; <a name="l00164"></a>00164 oStream_ &lt;&lt; <span class="stringliteral">&quot;ADSR::tick(): channel and StkFrames arguments are incompatible!&quot;</span>;
<a name="l00164"></a>00164 <a class="code" href="classstk_1_1Stk.html#a48ac73a0d8ca28445ba1a054e1f061ff" title="Static function for error reporting and handling using c-strings.">handleError</a>( StkError::FUNCTION_ARGUMENT ); <a name="l00165"></a>00165 <a class="code" href="classstk_1_1Stk.html#a48ac73a0d8ca28445ba1a054e1f061ff" title="Static function for error reporting and handling using c-strings.">handleError</a>( StkError::FUNCTION_ARGUMENT );
<a name="l00165"></a>00165 } <a name="l00166"></a>00166 }
<a name="l00166"></a>00166 <span class="preprocessor">#endif</span> <a name="l00167"></a>00167 <span class="preprocessor">#endif</span>
<a name="l00167"></a>00167 <span class="preprocessor"></span> <a name="l00168"></a>00168 <span class="preprocessor"></span>
<a name="l00168"></a>00168 StkFloat *samples = &amp;frames[channel]; <a name="l00169"></a>00169 StkFloat *samples = &amp;frames[channel];
<a name="l00169"></a>00169 <span class="keywordtype">unsigned</span> <span class="keywordtype">int</span> hop = frames.<a class="code" href="classstk_1_1StkFrames.html#aec7ef9c46675a24111aa6e2fda3ba870" title="Return the number of channels represented by the data.">channels</a>(); <a name="l00170"></a>00170 <span class="keywordtype">unsigned</span> <span class="keywordtype">int</span> hop = frames.<a class="code" href="classstk_1_1StkFrames.html#aec7ef9c46675a24111aa6e2fda3ba870" title="Return the number of channels represented by the data.">channels</a>();
<a name="l00170"></a>00170 <span class="keywordflow">for</span> ( <span class="keywordtype">unsigned</span> <span class="keywordtype">int</span> i=0; i&lt;frames.<a class="code" href="classstk_1_1StkFrames.html#a05b1ab6fa750a8221a7d65c30e0cdab9" title="Return the number of sample frames represented by the data.">frames</a>(); i++, samples += hop ) <a name="l00171"></a>00171 <span class="keywordflow">for</span> ( <span class="keywordtype">unsigned</span> <span class="keywordtype">int</span> i=0; i&lt;frames.<a class="code" href="classstk_1_1StkFrames.html#a05b1ab6fa750a8221a7d65c30e0cdab9" title="Return the number of sample frames represented by the data.">frames</a>(); i++, samples += hop )
<a name="l00171"></a>00171 *samples = <a class="code" href="classstk_1_1ADSR.html#af2c0869f86210a55f4f668172373c975" title="Compute and return one output sample.">ADSR::tick</a>(); <a name="l00172"></a>00172 *samples = <a class="code" href="classstk_1_1ADSR.html#af2c0869f86210a55f4f668172373c975" title="Compute and return one output sample.">ADSR::tick</a>();
<a name="l00172"></a>00172 <a name="l00173"></a>00173
<a name="l00173"></a>00173 <span class="keywordflow">return</span> frames; <a name="l00174"></a>00174 <span class="keywordflow">return</span> frames;
<a name="l00174"></a>00174 } <a name="l00175"></a>00175 }
<a name="l00175"></a>00175 <a name="l00176"></a>00176
<a name="l00176"></a>00176 } <span class="comment">// stk namespace</span> <a name="l00177"></a>00177 } <span class="comment">// stk namespace</span>
<a name="l00177"></a>00177 <a name="l00178"></a>00178
<a name="l00178"></a>00178 <span class="preprocessor">#endif</span> <a name="l00179"></a>00179 <span class="preprocessor">#endif</span>
</pre></div></div> </pre></div></div>
<HR> <HR>
<table> <table>
<tr><td><A HREF="http://ccrma.stanford.edu/software/stk/"><I>The Synthesis ToolKit in C++ (STK)</I></A></td></tr> <tr><td><A HREF="http://ccrma.stanford.edu/software/stk/"><I>The Synthesis ToolKit in C++ (STK)</I></A></td></tr>
<tr><td>&copy;1995-2011 Perry R. Cook and Gary P. Scavone. All Rights Reserved.</td></tr> <tr><td>&copy;1995-2012 Perry R. Cook and Gary P. Scavone. All Rights Reserved.</td></tr>
</table> </table>
</BODY> </BODY>

View File

@@ -9,7 +9,7 @@
<a class="qindex" href="index.html">Home</a> &nbsp; <a class="qindex" href="information.html">Information</a> &nbsp; <a class="qindex" href="classes.html">Classes</a> &nbsp; <a class="qindex" href="download.html">Download</a> &nbsp; <a class="qindex" href="usage.html">Usage</a> &nbsp; <a class="qindex" href="maillist.html">Mail List</a> &nbsp; <a class="qindex" href="system.html">Requirements</a> &nbsp; <a class="qindex" href="links.html">Links</a> &nbsp; <a class="qindex" href="faq.html">FAQ</a> &nbsp; <a class="qindex" href="tutorial.html">Tutorial</a></CENTER> <a class="qindex" href="index.html">Home</a> &nbsp; <a class="qindex" href="information.html">Information</a> &nbsp; <a class="qindex" href="classes.html">Classes</a> &nbsp; <a class="qindex" href="download.html">Download</a> &nbsp; <a class="qindex" href="usage.html">Usage</a> &nbsp; <a class="qindex" href="maillist.html">Mail List</a> &nbsp; <a class="qindex" href="system.html">Requirements</a> &nbsp; <a class="qindex" href="links.html">Links</a> &nbsp; <a class="qindex" href="faq.html">FAQ</a> &nbsp; <a class="qindex" href="tutorial.html">Tutorial</a></CENTER>
<HR> <HR>
<!-- Generated by Doxygen 1.6.2 --> <!-- Generated by Doxygen 1.6.2 -->
<div class="navpath"><a class="el" href="dir_f14fd23bc74c76f288031ad23b3f3505.html">include</a> <div class="navpath"><a class="el" href="dir_221deb9bdff892d63ed1e409450a60d2.html">include</a>
</div> </div>
<div class="contents"> <div class="contents">
<h1>Asymp.h</h1><div class="fragment"><pre class="fragment"><a name="l00001"></a>00001 <span class="preprocessor">#ifndef STK_ASYMP_H</span> <h1>Asymp.h</h1><div class="fragment"><pre class="fragment"><a name="l00001"></a>00001 <span class="preprocessor">#ifndef STK_ASYMP_H</span>
@@ -117,7 +117,7 @@
<table> <table>
<tr><td><A HREF="http://ccrma.stanford.edu/software/stk/"><I>The Synthesis ToolKit in C++ (STK)</I></A></td></tr> <tr><td><A HREF="http://ccrma.stanford.edu/software/stk/"><I>The Synthesis ToolKit in C++ (STK)</I></A></td></tr>
<tr><td>&copy;1995-2011 Perry R. Cook and Gary P. Scavone. All Rights Reserved.</td></tr> <tr><td>&copy;1995-2012 Perry R. Cook and Gary P. Scavone. All Rights Reserved.</td></tr>
</table> </table>
</BODY> </BODY>

View File

@@ -9,7 +9,7 @@
<a class="qindex" href="index.html">Home</a> &nbsp; <a class="qindex" href="information.html">Information</a> &nbsp; <a class="qindex" href="classes.html">Classes</a> &nbsp; <a class="qindex" href="download.html">Download</a> &nbsp; <a class="qindex" href="usage.html">Usage</a> &nbsp; <a class="qindex" href="maillist.html">Mail List</a> &nbsp; <a class="qindex" href="system.html">Requirements</a> &nbsp; <a class="qindex" href="links.html">Links</a> &nbsp; <a class="qindex" href="faq.html">FAQ</a> &nbsp; <a class="qindex" href="tutorial.html">Tutorial</a></CENTER> <a class="qindex" href="index.html">Home</a> &nbsp; <a class="qindex" href="information.html">Information</a> &nbsp; <a class="qindex" href="classes.html">Classes</a> &nbsp; <a class="qindex" href="download.html">Download</a> &nbsp; <a class="qindex" href="usage.html">Usage</a> &nbsp; <a class="qindex" href="maillist.html">Mail List</a> &nbsp; <a class="qindex" href="system.html">Requirements</a> &nbsp; <a class="qindex" href="links.html">Links</a> &nbsp; <a class="qindex" href="faq.html">FAQ</a> &nbsp; <a class="qindex" href="tutorial.html">Tutorial</a></CENTER>
<HR> <HR>
<!-- Generated by Doxygen 1.6.2 --> <!-- Generated by Doxygen 1.6.2 -->
<div class="navpath"><a class="el" href="dir_f14fd23bc74c76f288031ad23b3f3505.html">include</a> <div class="navpath"><a class="el" href="dir_221deb9bdff892d63ed1e409450a60d2.html">include</a>
</div> </div>
<div class="contents"> <div class="contents">
<h1>BandedWG.h</h1><div class="fragment"><pre class="fragment"><a name="l00001"></a>00001 <span class="preprocessor">#ifndef STK_BANDEDWG_H</span> <h1>BandedWG.h</h1><div class="fragment"><pre class="fragment"><a name="l00001"></a>00001 <span class="preprocessor">#ifndef STK_BANDEDWG_H</span>
@@ -122,7 +122,7 @@
<table> <table>
<tr><td><A HREF="http://ccrma.stanford.edu/software/stk/"><I>The Synthesis ToolKit in C++ (STK)</I></A></td></tr> <tr><td><A HREF="http://ccrma.stanford.edu/software/stk/"><I>The Synthesis ToolKit in C++ (STK)</I></A></td></tr>
<tr><td>&copy;1995-2011 Perry R. Cook and Gary P. Scavone. All Rights Reserved.</td></tr> <tr><td>&copy;1995-2012 Perry R. Cook and Gary P. Scavone. All Rights Reserved.</td></tr>
</table> </table>
</BODY> </BODY>

View File

@@ -9,7 +9,7 @@
<a class="qindex" href="index.html">Home</a> &nbsp; <a class="qindex" href="information.html">Information</a> &nbsp; <a class="qindex" href="classes.html">Classes</a> &nbsp; <a class="qindex" href="download.html">Download</a> &nbsp; <a class="qindex" href="usage.html">Usage</a> &nbsp; <a class="qindex" href="maillist.html">Mail List</a> &nbsp; <a class="qindex" href="system.html">Requirements</a> &nbsp; <a class="qindex" href="links.html">Links</a> &nbsp; <a class="qindex" href="faq.html">FAQ</a> &nbsp; <a class="qindex" href="tutorial.html">Tutorial</a></CENTER> <a class="qindex" href="index.html">Home</a> &nbsp; <a class="qindex" href="information.html">Information</a> &nbsp; <a class="qindex" href="classes.html">Classes</a> &nbsp; <a class="qindex" href="download.html">Download</a> &nbsp; <a class="qindex" href="usage.html">Usage</a> &nbsp; <a class="qindex" href="maillist.html">Mail List</a> &nbsp; <a class="qindex" href="system.html">Requirements</a> &nbsp; <a class="qindex" href="links.html">Links</a> &nbsp; <a class="qindex" href="faq.html">FAQ</a> &nbsp; <a class="qindex" href="tutorial.html">Tutorial</a></CENTER>
<HR> <HR>
<!-- Generated by Doxygen 1.6.2 --> <!-- Generated by Doxygen 1.6.2 -->
<div class="navpath"><a class="el" href="dir_f14fd23bc74c76f288031ad23b3f3505.html">include</a> <div class="navpath"><a class="el" href="dir_221deb9bdff892d63ed1e409450a60d2.html">include</a>
</div> </div>
<div class="contents"> <div class="contents">
<h1>BeeThree.h</h1><div class="fragment"><pre class="fragment"><a name="l00001"></a>00001 <span class="preprocessor">#ifndef STK_BEETHREE_H</span> <h1>BeeThree.h</h1><div class="fragment"><pre class="fragment"><a name="l00001"></a>00001 <span class="preprocessor">#ifndef STK_BEETHREE_H</span>
@@ -100,7 +100,7 @@
<table> <table>
<tr><td><A HREF="http://ccrma.stanford.edu/software/stk/"><I>The Synthesis ToolKit in C++ (STK)</I></A></td></tr> <tr><td><A HREF="http://ccrma.stanford.edu/software/stk/"><I>The Synthesis ToolKit in C++ (STK)</I></A></td></tr>
<tr><td>&copy;1995-2011 Perry R. Cook and Gary P. Scavone. All Rights Reserved.</td></tr> <tr><td>&copy;1995-2012 Perry R. Cook and Gary P. Scavone. All Rights Reserved.</td></tr>
</table> </table>
</BODY> </BODY>

View File

@@ -9,7 +9,7 @@
<a class="qindex" href="index.html">Home</a> &nbsp; <a class="qindex" href="information.html">Information</a> &nbsp; <a class="qindex" href="classes.html">Classes</a> &nbsp; <a class="qindex" href="download.html">Download</a> &nbsp; <a class="qindex" href="usage.html">Usage</a> &nbsp; <a class="qindex" href="maillist.html">Mail List</a> &nbsp; <a class="qindex" href="system.html">Requirements</a> &nbsp; <a class="qindex" href="links.html">Links</a> &nbsp; <a class="qindex" href="faq.html">FAQ</a> &nbsp; <a class="qindex" href="tutorial.html">Tutorial</a></CENTER> <a class="qindex" href="index.html">Home</a> &nbsp; <a class="qindex" href="information.html">Information</a> &nbsp; <a class="qindex" href="classes.html">Classes</a> &nbsp; <a class="qindex" href="download.html">Download</a> &nbsp; <a class="qindex" href="usage.html">Usage</a> &nbsp; <a class="qindex" href="maillist.html">Mail List</a> &nbsp; <a class="qindex" href="system.html">Requirements</a> &nbsp; <a class="qindex" href="links.html">Links</a> &nbsp; <a class="qindex" href="faq.html">FAQ</a> &nbsp; <a class="qindex" href="tutorial.html">Tutorial</a></CENTER>
<HR> <HR>
<!-- Generated by Doxygen 1.6.2 --> <!-- Generated by Doxygen 1.6.2 -->
<div class="navpath"><a class="el" href="dir_f14fd23bc74c76f288031ad23b3f3505.html">include</a> <div class="navpath"><a class="el" href="dir_221deb9bdff892d63ed1e409450a60d2.html">include</a>
</div> </div>
<div class="contents"> <div class="contents">
<h1>BiQuad.h</h1><div class="fragment"><pre class="fragment"><a name="l00001"></a>00001 <span class="preprocessor">#ifndef STK_BIQUAD_H</span> <h1>BiQuad.h</h1><div class="fragment"><pre class="fragment"><a name="l00001"></a>00001 <span class="preprocessor">#ifndef STK_BIQUAD_H</span>
@@ -141,7 +141,7 @@
<table> <table>
<tr><td><A HREF="http://ccrma.stanford.edu/software/stk/"><I>The Synthesis ToolKit in C++ (STK)</I></A></td></tr> <tr><td><A HREF="http://ccrma.stanford.edu/software/stk/"><I>The Synthesis ToolKit in C++ (STK)</I></A></td></tr>
<tr><td>&copy;1995-2011 Perry R. Cook and Gary P. Scavone. All Rights Reserved.</td></tr> <tr><td>&copy;1995-2012 Perry R. Cook and Gary P. Scavone. All Rights Reserved.</td></tr>
</table> </table>
</BODY> </BODY>

View File

@@ -9,7 +9,7 @@
<a class="qindex" href="index.html">Home</a> &nbsp; <a class="qindex" href="information.html">Information</a> &nbsp; <a class="qindex" href="classes.html">Classes</a> &nbsp; <a class="qindex" href="download.html">Download</a> &nbsp; <a class="qindex" href="usage.html">Usage</a> &nbsp; <a class="qindex" href="maillist.html">Mail List</a> &nbsp; <a class="qindex" href="system.html">Requirements</a> &nbsp; <a class="qindex" href="links.html">Links</a> &nbsp; <a class="qindex" href="faq.html">FAQ</a> &nbsp; <a class="qindex" href="tutorial.html">Tutorial</a></CENTER> <a class="qindex" href="index.html">Home</a> &nbsp; <a class="qindex" href="information.html">Information</a> &nbsp; <a class="qindex" href="classes.html">Classes</a> &nbsp; <a class="qindex" href="download.html">Download</a> &nbsp; <a class="qindex" href="usage.html">Usage</a> &nbsp; <a class="qindex" href="maillist.html">Mail List</a> &nbsp; <a class="qindex" href="system.html">Requirements</a> &nbsp; <a class="qindex" href="links.html">Links</a> &nbsp; <a class="qindex" href="faq.html">FAQ</a> &nbsp; <a class="qindex" href="tutorial.html">Tutorial</a></CENTER>
<HR> <HR>
<!-- Generated by Doxygen 1.6.2 --> <!-- Generated by Doxygen 1.6.2 -->
<div class="navpath"><a class="el" href="dir_f14fd23bc74c76f288031ad23b3f3505.html">include</a> <div class="navpath"><a class="el" href="dir_221deb9bdff892d63ed1e409450a60d2.html">include</a>
</div> </div>
<div class="contents"> <div class="contents">
<h1>BlitSaw.h</h1><div class="fragment"><pre class="fragment"><a name="l00001"></a>00001 <span class="preprocessor">#ifndef STK_BLITSAW_H</span> <h1>BlitSaw.h</h1><div class="fragment"><pre class="fragment"><a name="l00001"></a>00001 <span class="preprocessor">#ifndef STK_BLITSAW_H</span>
@@ -122,7 +122,7 @@
<table> <table>
<tr><td><A HREF="http://ccrma.stanford.edu/software/stk/"><I>The Synthesis ToolKit in C++ (STK)</I></A></td></tr> <tr><td><A HREF="http://ccrma.stanford.edu/software/stk/"><I>The Synthesis ToolKit in C++ (STK)</I></A></td></tr>
<tr><td>&copy;1995-2011 Perry R. Cook and Gary P. Scavone. All Rights Reserved.</td></tr> <tr><td>&copy;1995-2012 Perry R. Cook and Gary P. Scavone. All Rights Reserved.</td></tr>
</table> </table>
</BODY> </BODY>

View File

@@ -9,7 +9,7 @@
<a class="qindex" href="index.html">Home</a> &nbsp; <a class="qindex" href="information.html">Information</a> &nbsp; <a class="qindex" href="classes.html">Classes</a> &nbsp; <a class="qindex" href="download.html">Download</a> &nbsp; <a class="qindex" href="usage.html">Usage</a> &nbsp; <a class="qindex" href="maillist.html">Mail List</a> &nbsp; <a class="qindex" href="system.html">Requirements</a> &nbsp; <a class="qindex" href="links.html">Links</a> &nbsp; <a class="qindex" href="faq.html">FAQ</a> &nbsp; <a class="qindex" href="tutorial.html">Tutorial</a></CENTER> <a class="qindex" href="index.html">Home</a> &nbsp; <a class="qindex" href="information.html">Information</a> &nbsp; <a class="qindex" href="classes.html">Classes</a> &nbsp; <a class="qindex" href="download.html">Download</a> &nbsp; <a class="qindex" href="usage.html">Usage</a> &nbsp; <a class="qindex" href="maillist.html">Mail List</a> &nbsp; <a class="qindex" href="system.html">Requirements</a> &nbsp; <a class="qindex" href="links.html">Links</a> &nbsp; <a class="qindex" href="faq.html">FAQ</a> &nbsp; <a class="qindex" href="tutorial.html">Tutorial</a></CENTER>
<HR> <HR>
<!-- Generated by Doxygen 1.6.2 --> <!-- Generated by Doxygen 1.6.2 -->
<div class="navpath"><a class="el" href="dir_f14fd23bc74c76f288031ad23b3f3505.html">include</a> <div class="navpath"><a class="el" href="dir_221deb9bdff892d63ed1e409450a60d2.html">include</a>
</div> </div>
<div class="contents"> <div class="contents">
<h1>BlitSquare.h</h1><div class="fragment"><pre class="fragment"><a name="l00001"></a>00001 <span class="preprocessor">#ifndef STK_BLITSQUARE_H</span> <h1>BlitSquare.h</h1><div class="fragment"><pre class="fragment"><a name="l00001"></a>00001 <span class="preprocessor">#ifndef STK_BLITSQUARE_H</span>
@@ -127,7 +127,7 @@
<table> <table>
<tr><td><A HREF="http://ccrma.stanford.edu/software/stk/"><I>The Synthesis ToolKit in C++ (STK)</I></A></td></tr> <tr><td><A HREF="http://ccrma.stanford.edu/software/stk/"><I>The Synthesis ToolKit in C++ (STK)</I></A></td></tr>
<tr><td>&copy;1995-2011 Perry R. Cook and Gary P. Scavone. All Rights Reserved.</td></tr> <tr><td>&copy;1995-2012 Perry R. Cook and Gary P. Scavone. All Rights Reserved.</td></tr>
</table> </table>
</BODY> </BODY>

View File

@@ -9,7 +9,7 @@
<a class="qindex" href="index.html">Home</a> &nbsp; <a class="qindex" href="information.html">Information</a> &nbsp; <a class="qindex" href="classes.html">Classes</a> &nbsp; <a class="qindex" href="download.html">Download</a> &nbsp; <a class="qindex" href="usage.html">Usage</a> &nbsp; <a class="qindex" href="maillist.html">Mail List</a> &nbsp; <a class="qindex" href="system.html">Requirements</a> &nbsp; <a class="qindex" href="links.html">Links</a> &nbsp; <a class="qindex" href="faq.html">FAQ</a> &nbsp; <a class="qindex" href="tutorial.html">Tutorial</a></CENTER> <a class="qindex" href="index.html">Home</a> &nbsp; <a class="qindex" href="information.html">Information</a> &nbsp; <a class="qindex" href="classes.html">Classes</a> &nbsp; <a class="qindex" href="download.html">Download</a> &nbsp; <a class="qindex" href="usage.html">Usage</a> &nbsp; <a class="qindex" href="maillist.html">Mail List</a> &nbsp; <a class="qindex" href="system.html">Requirements</a> &nbsp; <a class="qindex" href="links.html">Links</a> &nbsp; <a class="qindex" href="faq.html">FAQ</a> &nbsp; <a class="qindex" href="tutorial.html">Tutorial</a></CENTER>
<HR> <HR>
<!-- Generated by Doxygen 1.6.2 --> <!-- Generated by Doxygen 1.6.2 -->
<div class="navpath"><a class="el" href="dir_f14fd23bc74c76f288031ad23b3f3505.html">include</a> <div class="navpath"><a class="el" href="dir_221deb9bdff892d63ed1e409450a60d2.html">include</a>
</div> </div>
<div class="contents"> <div class="contents">
<h1>Blit.h</h1><div class="fragment"><pre class="fragment"><a name="l00001"></a>00001 <span class="preprocessor">#ifndef STK_BLIT_H</span> <h1>Blit.h</h1><div class="fragment"><pre class="fragment"><a name="l00001"></a>00001 <span class="preprocessor">#ifndef STK_BLIT_H</span>
@@ -117,7 +117,7 @@
<table> <table>
<tr><td><A HREF="http://ccrma.stanford.edu/software/stk/"><I>The Synthesis ToolKit in C++ (STK)</I></A></td></tr> <tr><td><A HREF="http://ccrma.stanford.edu/software/stk/"><I>The Synthesis ToolKit in C++ (STK)</I></A></td></tr>
<tr><td>&copy;1995-2011 Perry R. Cook and Gary P. Scavone. All Rights Reserved.</td></tr> <tr><td>&copy;1995-2012 Perry R. Cook and Gary P. Scavone. All Rights Reserved.</td></tr>
</table> </table>
</BODY> </BODY>

View File

@@ -9,7 +9,7 @@
<a class="qindex" href="index.html">Home</a> &nbsp; <a class="qindex" href="information.html">Information</a> &nbsp; <a class="qindex" href="classes.html">Classes</a> &nbsp; <a class="qindex" href="download.html">Download</a> &nbsp; <a class="qindex" href="usage.html">Usage</a> &nbsp; <a class="qindex" href="maillist.html">Mail List</a> &nbsp; <a class="qindex" href="system.html">Requirements</a> &nbsp; <a class="qindex" href="links.html">Links</a> &nbsp; <a class="qindex" href="faq.html">FAQ</a> &nbsp; <a class="qindex" href="tutorial.html">Tutorial</a></CENTER> <a class="qindex" href="index.html">Home</a> &nbsp; <a class="qindex" href="information.html">Information</a> &nbsp; <a class="qindex" href="classes.html">Classes</a> &nbsp; <a class="qindex" href="download.html">Download</a> &nbsp; <a class="qindex" href="usage.html">Usage</a> &nbsp; <a class="qindex" href="maillist.html">Mail List</a> &nbsp; <a class="qindex" href="system.html">Requirements</a> &nbsp; <a class="qindex" href="links.html">Links</a> &nbsp; <a class="qindex" href="faq.html">FAQ</a> &nbsp; <a class="qindex" href="tutorial.html">Tutorial</a></CENTER>
<HR> <HR>
<!-- Generated by Doxygen 1.6.2 --> <!-- Generated by Doxygen 1.6.2 -->
<div class="navpath"><a class="el" href="dir_f14fd23bc74c76f288031ad23b3f3505.html">include</a> <div class="navpath"><a class="el" href="dir_221deb9bdff892d63ed1e409450a60d2.html">include</a>
</div> </div>
<div class="contents"> <div class="contents">
<h1>BlowBotl.h</h1><div class="fragment"><pre class="fragment"><a name="l00001"></a>00001 <span class="preprocessor">#ifndef STK_BLOWBOTL_H</span> <h1>BlowBotl.h</h1><div class="fragment"><pre class="fragment"><a name="l00001"></a>00001 <span class="preprocessor">#ifndef STK_BLOWBOTL_H</span>
@@ -127,7 +127,7 @@
<table> <table>
<tr><td><A HREF="http://ccrma.stanford.edu/software/stk/"><I>The Synthesis ToolKit in C++ (STK)</I></A></td></tr> <tr><td><A HREF="http://ccrma.stanford.edu/software/stk/"><I>The Synthesis ToolKit in C++ (STK)</I></A></td></tr>
<tr><td>&copy;1995-2011 Perry R. Cook and Gary P. Scavone. All Rights Reserved.</td></tr> <tr><td>&copy;1995-2012 Perry R. Cook and Gary P. Scavone. All Rights Reserved.</td></tr>
</table> </table>
</BODY> </BODY>

View File

@@ -9,7 +9,7 @@
<a class="qindex" href="index.html">Home</a> &nbsp; <a class="qindex" href="information.html">Information</a> &nbsp; <a class="qindex" href="classes.html">Classes</a> &nbsp; <a class="qindex" href="download.html">Download</a> &nbsp; <a class="qindex" href="usage.html">Usage</a> &nbsp; <a class="qindex" href="maillist.html">Mail List</a> &nbsp; <a class="qindex" href="system.html">Requirements</a> &nbsp; <a class="qindex" href="links.html">Links</a> &nbsp; <a class="qindex" href="faq.html">FAQ</a> &nbsp; <a class="qindex" href="tutorial.html">Tutorial</a></CENTER> <a class="qindex" href="index.html">Home</a> &nbsp; <a class="qindex" href="information.html">Information</a> &nbsp; <a class="qindex" href="classes.html">Classes</a> &nbsp; <a class="qindex" href="download.html">Download</a> &nbsp; <a class="qindex" href="usage.html">Usage</a> &nbsp; <a class="qindex" href="maillist.html">Mail List</a> &nbsp; <a class="qindex" href="system.html">Requirements</a> &nbsp; <a class="qindex" href="links.html">Links</a> &nbsp; <a class="qindex" href="faq.html">FAQ</a> &nbsp; <a class="qindex" href="tutorial.html">Tutorial</a></CENTER>
<HR> <HR>
<!-- Generated by Doxygen 1.6.2 --> <!-- Generated by Doxygen 1.6.2 -->
<div class="navpath"><a class="el" href="dir_f14fd23bc74c76f288031ad23b3f3505.html">include</a> <div class="navpath"><a class="el" href="dir_221deb9bdff892d63ed1e409450a60d2.html">include</a>
</div> </div>
<div class="contents"> <div class="contents">
<h1>BlowHole.h</h1><div class="fragment"><pre class="fragment"><a name="l00001"></a>00001 <span class="preprocessor">#ifndef STK_BLOWHOLE_H</span> <h1>BlowHole.h</h1><div class="fragment"><pre class="fragment"><a name="l00001"></a>00001 <span class="preprocessor">#ifndef STK_BLOWHOLE_H</span>
@@ -149,7 +149,7 @@
<table> <table>
<tr><td><A HREF="http://ccrma.stanford.edu/software/stk/"><I>The Synthesis ToolKit in C++ (STK)</I></A></td></tr> <tr><td><A HREF="http://ccrma.stanford.edu/software/stk/"><I>The Synthesis ToolKit in C++ (STK)</I></A></td></tr>
<tr><td>&copy;1995-2011 Perry R. Cook and Gary P. Scavone. All Rights Reserved.</td></tr> <tr><td>&copy;1995-2012 Perry R. Cook and Gary P. Scavone. All Rights Reserved.</td></tr>
</table> </table>
</BODY> </BODY>

View File

@@ -9,7 +9,7 @@
<a class="qindex" href="index.html">Home</a> &nbsp; <a class="qindex" href="information.html">Information</a> &nbsp; <a class="qindex" href="classes.html">Classes</a> &nbsp; <a class="qindex" href="download.html">Download</a> &nbsp; <a class="qindex" href="usage.html">Usage</a> &nbsp; <a class="qindex" href="maillist.html">Mail List</a> &nbsp; <a class="qindex" href="system.html">Requirements</a> &nbsp; <a class="qindex" href="links.html">Links</a> &nbsp; <a class="qindex" href="faq.html">FAQ</a> &nbsp; <a class="qindex" href="tutorial.html">Tutorial</a></CENTER> <a class="qindex" href="index.html">Home</a> &nbsp; <a class="qindex" href="information.html">Information</a> &nbsp; <a class="qindex" href="classes.html">Classes</a> &nbsp; <a class="qindex" href="download.html">Download</a> &nbsp; <a class="qindex" href="usage.html">Usage</a> &nbsp; <a class="qindex" href="maillist.html">Mail List</a> &nbsp; <a class="qindex" href="system.html">Requirements</a> &nbsp; <a class="qindex" href="links.html">Links</a> &nbsp; <a class="qindex" href="faq.html">FAQ</a> &nbsp; <a class="qindex" href="tutorial.html">Tutorial</a></CENTER>
<HR> <HR>
<!-- Generated by Doxygen 1.6.2 --> <!-- Generated by Doxygen 1.6.2 -->
<div class="navpath"><a class="el" href="dir_f14fd23bc74c76f288031ad23b3f3505.html">include</a> <div class="navpath"><a class="el" href="dir_221deb9bdff892d63ed1e409450a60d2.html">include</a>
</div> </div>
<div class="contents"> <div class="contents">
<h1>BowTable.h</h1><div class="fragment"><pre class="fragment"><a name="l00001"></a>00001 <span class="preprocessor">#ifndef STK_BOWTABL_H</span> <h1>BowTable.h</h1><div class="fragment"><pre class="fragment"><a name="l00001"></a>00001 <span class="preprocessor">#ifndef STK_BOWTABL_H</span>
@@ -127,7 +127,7 @@
<table> <table>
<tr><td><A HREF="http://ccrma.stanford.edu/software/stk/"><I>The Synthesis ToolKit in C++ (STK)</I></A></td></tr> <tr><td><A HREF="http://ccrma.stanford.edu/software/stk/"><I>The Synthesis ToolKit in C++ (STK)</I></A></td></tr>
<tr><td>&copy;1995-2011 Perry R. Cook and Gary P. Scavone. All Rights Reserved.</td></tr> <tr><td>&copy;1995-2012 Perry R. Cook and Gary P. Scavone. All Rights Reserved.</td></tr>
</table> </table>
</BODY> </BODY>

View File

@@ -9,7 +9,7 @@
<a class="qindex" href="index.html">Home</a> &nbsp; <a class="qindex" href="information.html">Information</a> &nbsp; <a class="qindex" href="classes.html">Classes</a> &nbsp; <a class="qindex" href="download.html">Download</a> &nbsp; <a class="qindex" href="usage.html">Usage</a> &nbsp; <a class="qindex" href="maillist.html">Mail List</a> &nbsp; <a class="qindex" href="system.html">Requirements</a> &nbsp; <a class="qindex" href="links.html">Links</a> &nbsp; <a class="qindex" href="faq.html">FAQ</a> &nbsp; <a class="qindex" href="tutorial.html">Tutorial</a></CENTER> <a class="qindex" href="index.html">Home</a> &nbsp; <a class="qindex" href="information.html">Information</a> &nbsp; <a class="qindex" href="classes.html">Classes</a> &nbsp; <a class="qindex" href="download.html">Download</a> &nbsp; <a class="qindex" href="usage.html">Usage</a> &nbsp; <a class="qindex" href="maillist.html">Mail List</a> &nbsp; <a class="qindex" href="system.html">Requirements</a> &nbsp; <a class="qindex" href="links.html">Links</a> &nbsp; <a class="qindex" href="faq.html">FAQ</a> &nbsp; <a class="qindex" href="tutorial.html">Tutorial</a></CENTER>
<HR> <HR>
<!-- Generated by Doxygen 1.6.2 --> <!-- Generated by Doxygen 1.6.2 -->
<div class="navpath"><a class="el" href="dir_f14fd23bc74c76f288031ad23b3f3505.html">include</a> <div class="navpath"><a class="el" href="dir_221deb9bdff892d63ed1e409450a60d2.html">include</a>
</div> </div>
<div class="contents"> <div class="contents">
<h1>Bowed.h</h1><div class="fragment"><pre class="fragment"><a name="l00001"></a>00001 <span class="preprocessor">#ifndef STK_BOWED_H</span> <h1>Bowed.h</h1><div class="fragment"><pre class="fragment"><a name="l00001"></a>00001 <span class="preprocessor">#ifndef STK_BOWED_H</span>
@@ -133,7 +133,7 @@
<table> <table>
<tr><td><A HREF="http://ccrma.stanford.edu/software/stk/"><I>The Synthesis ToolKit in C++ (STK)</I></A></td></tr> <tr><td><A HREF="http://ccrma.stanford.edu/software/stk/"><I>The Synthesis ToolKit in C++ (STK)</I></A></td></tr>
<tr><td>&copy;1995-2011 Perry R. Cook and Gary P. Scavone. All Rights Reserved.</td></tr> <tr><td>&copy;1995-2012 Perry R. Cook and Gary P. Scavone. All Rights Reserved.</td></tr>
</table> </table>
</BODY> </BODY>

View File

@@ -9,7 +9,7 @@
<a class="qindex" href="index.html">Home</a> &nbsp; <a class="qindex" href="information.html">Information</a> &nbsp; <a class="qindex" href="classes.html">Classes</a> &nbsp; <a class="qindex" href="download.html">Download</a> &nbsp; <a class="qindex" href="usage.html">Usage</a> &nbsp; <a class="qindex" href="maillist.html">Mail List</a> &nbsp; <a class="qindex" href="system.html">Requirements</a> &nbsp; <a class="qindex" href="links.html">Links</a> &nbsp; <a class="qindex" href="faq.html">FAQ</a> &nbsp; <a class="qindex" href="tutorial.html">Tutorial</a></CENTER> <a class="qindex" href="index.html">Home</a> &nbsp; <a class="qindex" href="information.html">Information</a> &nbsp; <a class="qindex" href="classes.html">Classes</a> &nbsp; <a class="qindex" href="download.html">Download</a> &nbsp; <a class="qindex" href="usage.html">Usage</a> &nbsp; <a class="qindex" href="maillist.html">Mail List</a> &nbsp; <a class="qindex" href="system.html">Requirements</a> &nbsp; <a class="qindex" href="links.html">Links</a> &nbsp; <a class="qindex" href="faq.html">FAQ</a> &nbsp; <a class="qindex" href="tutorial.html">Tutorial</a></CENTER>
<HR> <HR>
<!-- Generated by Doxygen 1.6.2 --> <!-- Generated by Doxygen 1.6.2 -->
<div class="navpath"><a class="el" href="dir_f14fd23bc74c76f288031ad23b3f3505.html">include</a> <div class="navpath"><a class="el" href="dir_221deb9bdff892d63ed1e409450a60d2.html">include</a>
</div> </div>
<div class="contents"> <div class="contents">
<h1>Brass.h</h1><div class="fragment"><pre class="fragment"><a name="l00001"></a>00001 <span class="preprocessor">#ifndef STK_BRASS_H</span> <h1>Brass.h</h1><div class="fragment"><pre class="fragment"><a name="l00001"></a>00001 <span class="preprocessor">#ifndef STK_BRASS_H</span>
@@ -125,7 +125,7 @@
<table> <table>
<tr><td><A HREF="http://ccrma.stanford.edu/software/stk/"><I>The Synthesis ToolKit in C++ (STK)</I></A></td></tr> <tr><td><A HREF="http://ccrma.stanford.edu/software/stk/"><I>The Synthesis ToolKit in C++ (STK)</I></A></td></tr>
<tr><td>&copy;1995-2011 Perry R. Cook and Gary P. Scavone. All Rights Reserved.</td></tr> <tr><td>&copy;1995-2012 Perry R. Cook and Gary P. Scavone. All Rights Reserved.</td></tr>
</table> </table>
</BODY> </BODY>

View File

@@ -9,7 +9,7 @@
<a class="qindex" href="index.html">Home</a> &nbsp; <a class="qindex" href="information.html">Information</a> &nbsp; <a class="qindex" href="classes.html">Classes</a> &nbsp; <a class="qindex" href="download.html">Download</a> &nbsp; <a class="qindex" href="usage.html">Usage</a> &nbsp; <a class="qindex" href="maillist.html">Mail List</a> &nbsp; <a class="qindex" href="system.html">Requirements</a> &nbsp; <a class="qindex" href="links.html">Links</a> &nbsp; <a class="qindex" href="faq.html">FAQ</a> &nbsp; <a class="qindex" href="tutorial.html">Tutorial</a></CENTER> <a class="qindex" href="index.html">Home</a> &nbsp; <a class="qindex" href="information.html">Information</a> &nbsp; <a class="qindex" href="classes.html">Classes</a> &nbsp; <a class="qindex" href="download.html">Download</a> &nbsp; <a class="qindex" href="usage.html">Usage</a> &nbsp; <a class="qindex" href="maillist.html">Mail List</a> &nbsp; <a class="qindex" href="system.html">Requirements</a> &nbsp; <a class="qindex" href="links.html">Links</a> &nbsp; <a class="qindex" href="faq.html">FAQ</a> &nbsp; <a class="qindex" href="tutorial.html">Tutorial</a></CENTER>
<HR> <HR>
<!-- Generated by Doxygen 1.6.2 --> <!-- Generated by Doxygen 1.6.2 -->
<div class="navpath"><a class="el" href="dir_f14fd23bc74c76f288031ad23b3f3505.html">include</a> <div class="navpath"><a class="el" href="dir_221deb9bdff892d63ed1e409450a60d2.html">include</a>
</div> </div>
<div class="contents"> <div class="contents">
<h1>Chorus.h</h1><div class="fragment"><pre class="fragment"><a name="l00001"></a>00001 <span class="preprocessor">#ifndef STK_CHORUS_H</span> <h1>Chorus.h</h1><div class="fragment"><pre class="fragment"><a name="l00001"></a>00001 <span class="preprocessor">#ifndef STK_CHORUS_H</span>
@@ -142,7 +142,7 @@
<table> <table>
<tr><td><A HREF="http://ccrma.stanford.edu/software/stk/"><I>The Synthesis ToolKit in C++ (STK)</I></A></td></tr> <tr><td><A HREF="http://ccrma.stanford.edu/software/stk/"><I>The Synthesis ToolKit in C++ (STK)</I></A></td></tr>
<tr><td>&copy;1995-2011 Perry R. Cook and Gary P. Scavone. All Rights Reserved.</td></tr> <tr><td>&copy;1995-2012 Perry R. Cook and Gary P. Scavone. All Rights Reserved.</td></tr>
</table> </table>
</BODY> </BODY>

View File

@@ -9,7 +9,7 @@
<a class="qindex" href="index.html">Home</a> &nbsp; <a class="qindex" href="information.html">Information</a> &nbsp; <a class="qindex" href="classes.html">Classes</a> &nbsp; <a class="qindex" href="download.html">Download</a> &nbsp; <a class="qindex" href="usage.html">Usage</a> &nbsp; <a class="qindex" href="maillist.html">Mail List</a> &nbsp; <a class="qindex" href="system.html">Requirements</a> &nbsp; <a class="qindex" href="links.html">Links</a> &nbsp; <a class="qindex" href="faq.html">FAQ</a> &nbsp; <a class="qindex" href="tutorial.html">Tutorial</a></CENTER> <a class="qindex" href="index.html">Home</a> &nbsp; <a class="qindex" href="information.html">Information</a> &nbsp; <a class="qindex" href="classes.html">Classes</a> &nbsp; <a class="qindex" href="download.html">Download</a> &nbsp; <a class="qindex" href="usage.html">Usage</a> &nbsp; <a class="qindex" href="maillist.html">Mail List</a> &nbsp; <a class="qindex" href="system.html">Requirements</a> &nbsp; <a class="qindex" href="links.html">Links</a> &nbsp; <a class="qindex" href="faq.html">FAQ</a> &nbsp; <a class="qindex" href="tutorial.html">Tutorial</a></CENTER>
<HR> <HR>
<!-- Generated by Doxygen 1.6.2 --> <!-- Generated by Doxygen 1.6.2 -->
<div class="navpath"><a class="el" href="dir_f14fd23bc74c76f288031ad23b3f3505.html">include</a> <div class="navpath"><a class="el" href="dir_221deb9bdff892d63ed1e409450a60d2.html">include</a>
</div> </div>
<div class="contents"> <div class="contents">
<h1>Clarinet.h</h1><div class="fragment"><pre class="fragment"><a name="l00001"></a>00001 <span class="preprocessor">#ifndef STK_CLARINET_H</span> <h1>Clarinet.h</h1><div class="fragment"><pre class="fragment"><a name="l00001"></a>00001 <span class="preprocessor">#ifndef STK_CLARINET_H</span>
@@ -129,7 +129,7 @@
<table> <table>
<tr><td><A HREF="http://ccrma.stanford.edu/software/stk/"><I>The Synthesis ToolKit in C++ (STK)</I></A></td></tr> <tr><td><A HREF="http://ccrma.stanford.edu/software/stk/"><I>The Synthesis ToolKit in C++ (STK)</I></A></td></tr>
<tr><td>&copy;1995-2011 Perry R. Cook and Gary P. Scavone. All Rights Reserved.</td></tr> <tr><td>&copy;1995-2012 Perry R. Cook and Gary P. Scavone. All Rights Reserved.</td></tr>
</table> </table>
</BODY> </BODY>

View File

@@ -9,7 +9,7 @@
<a class="qindex" href="index.html">Home</a> &nbsp; <a class="qindex" href="information.html">Information</a> &nbsp; <a class="qindex" href="classes.html">Classes</a> &nbsp; <a class="qindex" href="download.html">Download</a> &nbsp; <a class="qindex" href="usage.html">Usage</a> &nbsp; <a class="qindex" href="maillist.html">Mail List</a> &nbsp; <a class="qindex" href="system.html">Requirements</a> &nbsp; <a class="qindex" href="links.html">Links</a> &nbsp; <a class="qindex" href="faq.html">FAQ</a> &nbsp; <a class="qindex" href="tutorial.html">Tutorial</a></CENTER> <a class="qindex" href="index.html">Home</a> &nbsp; <a class="qindex" href="information.html">Information</a> &nbsp; <a class="qindex" href="classes.html">Classes</a> &nbsp; <a class="qindex" href="download.html">Download</a> &nbsp; <a class="qindex" href="usage.html">Usage</a> &nbsp; <a class="qindex" href="maillist.html">Mail List</a> &nbsp; <a class="qindex" href="system.html">Requirements</a> &nbsp; <a class="qindex" href="links.html">Links</a> &nbsp; <a class="qindex" href="faq.html">FAQ</a> &nbsp; <a class="qindex" href="tutorial.html">Tutorial</a></CENTER>
<HR> <HR>
<!-- Generated by Doxygen 1.6.2 --> <!-- Generated by Doxygen 1.6.2 -->
<div class="navpath"><a class="el" href="dir_f14fd23bc74c76f288031ad23b3f3505.html">include</a> <div class="navpath"><a class="el" href="dir_221deb9bdff892d63ed1e409450a60d2.html">include</a>
</div> </div>
<div class="contents"> <div class="contents">
<h1>Cubic.h</h1><div class="fragment"><pre class="fragment"><a name="l00001"></a>00001 <span class="preprocessor">#ifndef STK_CUBIC_H</span> <h1>Cubic.h</h1><div class="fragment"><pre class="fragment"><a name="l00001"></a>00001 <span class="preprocessor">#ifndef STK_CUBIC_H</span>
@@ -115,7 +115,7 @@
<table> <table>
<tr><td><A HREF="http://ccrma.stanford.edu/software/stk/"><I>The Synthesis ToolKit in C++ (STK)</I></A></td></tr> <tr><td><A HREF="http://ccrma.stanford.edu/software/stk/"><I>The Synthesis ToolKit in C++ (STK)</I></A></td></tr>
<tr><td>&copy;1995-2011 Perry R. Cook and Gary P. Scavone. All Rights Reserved.</td></tr> <tr><td>&copy;1995-2012 Perry R. Cook and Gary P. Scavone. All Rights Reserved.</td></tr>
</table> </table>
</BODY> </BODY>

View File

@@ -9,7 +9,7 @@
<a class="qindex" href="index.html">Home</a> &nbsp; <a class="qindex" href="information.html">Information</a> &nbsp; <a class="qindex" href="classes.html">Classes</a> &nbsp; <a class="qindex" href="download.html">Download</a> &nbsp; <a class="qindex" href="usage.html">Usage</a> &nbsp; <a class="qindex" href="maillist.html">Mail List</a> &nbsp; <a class="qindex" href="system.html">Requirements</a> &nbsp; <a class="qindex" href="links.html">Links</a> &nbsp; <a class="qindex" href="faq.html">FAQ</a> &nbsp; <a class="qindex" href="tutorial.html">Tutorial</a></CENTER> <a class="qindex" href="index.html">Home</a> &nbsp; <a class="qindex" href="information.html">Information</a> &nbsp; <a class="qindex" href="classes.html">Classes</a> &nbsp; <a class="qindex" href="download.html">Download</a> &nbsp; <a class="qindex" href="usage.html">Usage</a> &nbsp; <a class="qindex" href="maillist.html">Mail List</a> &nbsp; <a class="qindex" href="system.html">Requirements</a> &nbsp; <a class="qindex" href="links.html">Links</a> &nbsp; <a class="qindex" href="faq.html">FAQ</a> &nbsp; <a class="qindex" href="tutorial.html">Tutorial</a></CENTER>
<HR> <HR>
<!-- Generated by Doxygen 1.6.2 --> <!-- Generated by Doxygen 1.6.2 -->
<div class="navpath"><a class="el" href="dir_f14fd23bc74c76f288031ad23b3f3505.html">include</a> <div class="navpath"><a class="el" href="dir_221deb9bdff892d63ed1e409450a60d2.html">include</a>
</div> </div>
<div class="contents"> <div class="contents">
<h1>DelayA.h</h1><div class="fragment"><pre class="fragment"><a name="l00001"></a>00001 <span class="preprocessor">#ifndef STK_DELAYA_H</span> <h1>DelayA.h</h1><div class="fragment"><pre class="fragment"><a name="l00001"></a>00001 <span class="preprocessor">#ifndef STK_DELAYA_H</span>
@@ -161,7 +161,7 @@
<table> <table>
<tr><td><A HREF="http://ccrma.stanford.edu/software/stk/"><I>The Synthesis ToolKit in C++ (STK)</I></A></td></tr> <tr><td><A HREF="http://ccrma.stanford.edu/software/stk/"><I>The Synthesis ToolKit in C++ (STK)</I></A></td></tr>
<tr><td>&copy;1995-2011 Perry R. Cook and Gary P. Scavone. All Rights Reserved.</td></tr> <tr><td>&copy;1995-2012 Perry R. Cook and Gary P. Scavone. All Rights Reserved.</td></tr>
</table> </table>
</BODY> </BODY>

View File

@@ -9,13 +9,13 @@
<a class="qindex" href="index.html">Home</a> &nbsp; <a class="qindex" href="information.html">Information</a> &nbsp; <a class="qindex" href="classes.html">Classes</a> &nbsp; <a class="qindex" href="download.html">Download</a> &nbsp; <a class="qindex" href="usage.html">Usage</a> &nbsp; <a class="qindex" href="maillist.html">Mail List</a> &nbsp; <a class="qindex" href="system.html">Requirements</a> &nbsp; <a class="qindex" href="links.html">Links</a> &nbsp; <a class="qindex" href="faq.html">FAQ</a> &nbsp; <a class="qindex" href="tutorial.html">Tutorial</a></CENTER> <a class="qindex" href="index.html">Home</a> &nbsp; <a class="qindex" href="information.html">Information</a> &nbsp; <a class="qindex" href="classes.html">Classes</a> &nbsp; <a class="qindex" href="download.html">Download</a> &nbsp; <a class="qindex" href="usage.html">Usage</a> &nbsp; <a class="qindex" href="maillist.html">Mail List</a> &nbsp; <a class="qindex" href="system.html">Requirements</a> &nbsp; <a class="qindex" href="links.html">Links</a> &nbsp; <a class="qindex" href="faq.html">FAQ</a> &nbsp; <a class="qindex" href="tutorial.html">Tutorial</a></CENTER>
<HR> <HR>
<!-- Generated by Doxygen 1.6.2 --> <!-- Generated by Doxygen 1.6.2 -->
<div class="navpath"><a class="el" href="dir_f14fd23bc74c76f288031ad23b3f3505.html">include</a> <div class="navpath"><a class="el" href="dir_221deb9bdff892d63ed1e409450a60d2.html">include</a>
</div> </div>
<div class="contents"> <div class="contents">
<h1>DelayL.h</h1><div class="fragment"><pre class="fragment"><a name="l00001"></a>00001 <span class="preprocessor">#ifndef STK_DELAYL_H</span> <h1>DelayL.h</h1><div class="fragment"><pre class="fragment"><a name="l00001"></a>00001 <span class="preprocessor">#ifndef STK_DELAYL_H</span>
<a name="l00002"></a>00002 <span class="preprocessor"></span><span class="preprocessor">#define STK_DELAYL_H</span> <a name="l00002"></a>00002 <span class="preprocessor"></span><span class="preprocessor">#define STK_DELAYL_H</span>
<a name="l00003"></a>00003 <span class="preprocessor"></span> <a name="l00003"></a>00003 <span class="preprocessor"></span>
<a name="l00004"></a>00004 <span class="preprocessor">#include &quot;Delay.h&quot;</span> <a name="l00004"></a>00004 <span class="preprocessor">#include &quot;Filter.h&quot;</span>
<a name="l00005"></a>00005 <a name="l00005"></a>00005
<a name="l00006"></a>00006 <span class="keyword">namespace </span>stk { <a name="l00006"></a>00006 <span class="keyword">namespace </span>stk {
<a name="l00007"></a>00007 <a name="l00007"></a>00007
@@ -159,7 +159,7 @@
<table> <table>
<tr><td><A HREF="http://ccrma.stanford.edu/software/stk/"><I>The Synthesis ToolKit in C++ (STK)</I></A></td></tr> <tr><td><A HREF="http://ccrma.stanford.edu/software/stk/"><I>The Synthesis ToolKit in C++ (STK)</I></A></td></tr>
<tr><td>&copy;1995-2011 Perry R. Cook and Gary P. Scavone. All Rights Reserved.</td></tr> <tr><td>&copy;1995-2012 Perry R. Cook and Gary P. Scavone. All Rights Reserved.</td></tr>
</table> </table>
</BODY> </BODY>

View File

@@ -9,7 +9,7 @@
<a class="qindex" href="index.html">Home</a> &nbsp; <a class="qindex" href="information.html">Information</a> &nbsp; <a class="qindex" href="classes.html">Classes</a> &nbsp; <a class="qindex" href="download.html">Download</a> &nbsp; <a class="qindex" href="usage.html">Usage</a> &nbsp; <a class="qindex" href="maillist.html">Mail List</a> &nbsp; <a class="qindex" href="system.html">Requirements</a> &nbsp; <a class="qindex" href="links.html">Links</a> &nbsp; <a class="qindex" href="faq.html">FAQ</a> &nbsp; <a class="qindex" href="tutorial.html">Tutorial</a></CENTER> <a class="qindex" href="index.html">Home</a> &nbsp; <a class="qindex" href="information.html">Information</a> &nbsp; <a class="qindex" href="classes.html">Classes</a> &nbsp; <a class="qindex" href="download.html">Download</a> &nbsp; <a class="qindex" href="usage.html">Usage</a> &nbsp; <a class="qindex" href="maillist.html">Mail List</a> &nbsp; <a class="qindex" href="system.html">Requirements</a> &nbsp; <a class="qindex" href="links.html">Links</a> &nbsp; <a class="qindex" href="faq.html">FAQ</a> &nbsp; <a class="qindex" href="tutorial.html">Tutorial</a></CENTER>
<HR> <HR>
<!-- Generated by Doxygen 1.6.2 --> <!-- Generated by Doxygen 1.6.2 -->
<div class="navpath"><a class="el" href="dir_f14fd23bc74c76f288031ad23b3f3505.html">include</a> <div class="navpath"><a class="el" href="dir_221deb9bdff892d63ed1e409450a60d2.html">include</a>
</div> </div>
<div class="contents"> <div class="contents">
<h1>Delay.h</h1><div class="fragment"><pre class="fragment"><a name="l00001"></a>00001 <span class="preprocessor">#ifndef STK_DELAY_H</span> <h1>Delay.h</h1><div class="fragment"><pre class="fragment"><a name="l00001"></a>00001 <span class="preprocessor">#ifndef STK_DELAY_H</span>
@@ -141,7 +141,7 @@
<table> <table>
<tr><td><A HREF="http://ccrma.stanford.edu/software/stk/"><I>The Synthesis ToolKit in C++ (STK)</I></A></td></tr> <tr><td><A HREF="http://ccrma.stanford.edu/software/stk/"><I>The Synthesis ToolKit in C++ (STK)</I></A></td></tr>
<tr><td>&copy;1995-2011 Perry R. Cook and Gary P. Scavone. All Rights Reserved.</td></tr> <tr><td>&copy;1995-2012 Perry R. Cook and Gary P. Scavone. All Rights Reserved.</td></tr>
</table> </table>
</BODY> </BODY>

View File

@@ -9,7 +9,7 @@
<a class="qindex" href="index.html">Home</a> &nbsp; <a class="qindex" href="information.html">Information</a> &nbsp; <a class="qindex" href="classes.html">Classes</a> &nbsp; <a class="qindex" href="download.html">Download</a> &nbsp; <a class="qindex" href="usage.html">Usage</a> &nbsp; <a class="qindex" href="maillist.html">Mail List</a> &nbsp; <a class="qindex" href="system.html">Requirements</a> &nbsp; <a class="qindex" href="links.html">Links</a> &nbsp; <a class="qindex" href="faq.html">FAQ</a> &nbsp; <a class="qindex" href="tutorial.html">Tutorial</a></CENTER> <a class="qindex" href="index.html">Home</a> &nbsp; <a class="qindex" href="information.html">Information</a> &nbsp; <a class="qindex" href="classes.html">Classes</a> &nbsp; <a class="qindex" href="download.html">Download</a> &nbsp; <a class="qindex" href="usage.html">Usage</a> &nbsp; <a class="qindex" href="maillist.html">Mail List</a> &nbsp; <a class="qindex" href="system.html">Requirements</a> &nbsp; <a class="qindex" href="links.html">Links</a> &nbsp; <a class="qindex" href="faq.html">FAQ</a> &nbsp; <a class="qindex" href="tutorial.html">Tutorial</a></CENTER>
<HR> <HR>
<!-- Generated by Doxygen 1.6.2 --> <!-- Generated by Doxygen 1.6.2 -->
<div class="navpath"><a class="el" href="dir_f14fd23bc74c76f288031ad23b3f3505.html">include</a> <div class="navpath"><a class="el" href="dir_221deb9bdff892d63ed1e409450a60d2.html">include</a>
</div> </div>
<div class="contents"> <div class="contents">
<h1>Drummer.h</h1><div class="fragment"><pre class="fragment"><a name="l00001"></a>00001 <span class="preprocessor">#ifndef STK_DRUMMER_H</span> <h1>Drummer.h</h1><div class="fragment"><pre class="fragment"><a name="l00001"></a>00001 <span class="preprocessor">#ifndef STK_DRUMMER_H</span>
@@ -114,7 +114,7 @@
<table> <table>
<tr><td><A HREF="http://ccrma.stanford.edu/software/stk/"><I>The Synthesis ToolKit in C++ (STK)</I></A></td></tr> <tr><td><A HREF="http://ccrma.stanford.edu/software/stk/"><I>The Synthesis ToolKit in C++ (STK)</I></A></td></tr>
<tr><td>&copy;1995-2011 Perry R. Cook and Gary P. Scavone. All Rights Reserved.</td></tr> <tr><td>&copy;1995-2012 Perry R. Cook and Gary P. Scavone. All Rights Reserved.</td></tr>
</table> </table>
</BODY> </BODY>

View File

@@ -9,7 +9,7 @@
<a class="qindex" href="index.html">Home</a> &nbsp; <a class="qindex" href="information.html">Information</a> &nbsp; <a class="qindex" href="classes.html">Classes</a> &nbsp; <a class="qindex" href="download.html">Download</a> &nbsp; <a class="qindex" href="usage.html">Usage</a> &nbsp; <a class="qindex" href="maillist.html">Mail List</a> &nbsp; <a class="qindex" href="system.html">Requirements</a> &nbsp; <a class="qindex" href="links.html">Links</a> &nbsp; <a class="qindex" href="faq.html">FAQ</a> &nbsp; <a class="qindex" href="tutorial.html">Tutorial</a></CENTER> <a class="qindex" href="index.html">Home</a> &nbsp; <a class="qindex" href="information.html">Information</a> &nbsp; <a class="qindex" href="classes.html">Classes</a> &nbsp; <a class="qindex" href="download.html">Download</a> &nbsp; <a class="qindex" href="usage.html">Usage</a> &nbsp; <a class="qindex" href="maillist.html">Mail List</a> &nbsp; <a class="qindex" href="system.html">Requirements</a> &nbsp; <a class="qindex" href="links.html">Links</a> &nbsp; <a class="qindex" href="faq.html">FAQ</a> &nbsp; <a class="qindex" href="tutorial.html">Tutorial</a></CENTER>
<HR> <HR>
<!-- Generated by Doxygen 1.6.2 --> <!-- Generated by Doxygen 1.6.2 -->
<div class="navpath"><a class="el" href="dir_f14fd23bc74c76f288031ad23b3f3505.html">include</a> <div class="navpath"><a class="el" href="dir_221deb9bdff892d63ed1e409450a60d2.html">include</a>
</div> </div>
<div class="contents"> <div class="contents">
<h1>Echo.h</h1><div class="fragment"><pre class="fragment"><a name="l00001"></a>00001 <span class="preprocessor">#ifndef STK_ECHO_H</span> <h1>Echo.h</h1><div class="fragment"><pre class="fragment"><a name="l00001"></a>00001 <span class="preprocessor">#ifndef STK_ECHO_H</span>
@@ -106,7 +106,7 @@
<table> <table>
<tr><td><A HREF="http://ccrma.stanford.edu/software/stk/"><I>The Synthesis ToolKit in C++ (STK)</I></A></td></tr> <tr><td><A HREF="http://ccrma.stanford.edu/software/stk/"><I>The Synthesis ToolKit in C++ (STK)</I></A></td></tr>
<tr><td>&copy;1995-2011 Perry R. Cook and Gary P. Scavone. All Rights Reserved.</td></tr> <tr><td>&copy;1995-2012 Perry R. Cook and Gary P. Scavone. All Rights Reserved.</td></tr>
</table> </table>
</BODY> </BODY>

View File

@@ -9,7 +9,7 @@
<a class="qindex" href="index.html">Home</a> &nbsp; <a class="qindex" href="information.html">Information</a> &nbsp; <a class="qindex" href="classes.html">Classes</a> &nbsp; <a class="qindex" href="download.html">Download</a> &nbsp; <a class="qindex" href="usage.html">Usage</a> &nbsp; <a class="qindex" href="maillist.html">Mail List</a> &nbsp; <a class="qindex" href="system.html">Requirements</a> &nbsp; <a class="qindex" href="links.html">Links</a> &nbsp; <a class="qindex" href="faq.html">FAQ</a> &nbsp; <a class="qindex" href="tutorial.html">Tutorial</a></CENTER> <a class="qindex" href="index.html">Home</a> &nbsp; <a class="qindex" href="information.html">Information</a> &nbsp; <a class="qindex" href="classes.html">Classes</a> &nbsp; <a class="qindex" href="download.html">Download</a> &nbsp; <a class="qindex" href="usage.html">Usage</a> &nbsp; <a class="qindex" href="maillist.html">Mail List</a> &nbsp; <a class="qindex" href="system.html">Requirements</a> &nbsp; <a class="qindex" href="links.html">Links</a> &nbsp; <a class="qindex" href="faq.html">FAQ</a> &nbsp; <a class="qindex" href="tutorial.html">Tutorial</a></CENTER>
<HR> <HR>
<!-- Generated by Doxygen 1.6.2 --> <!-- Generated by Doxygen 1.6.2 -->
<div class="navpath"><a class="el" href="dir_f14fd23bc74c76f288031ad23b3f3505.html">include</a> <div class="navpath"><a class="el" href="dir_221deb9bdff892d63ed1e409450a60d2.html">include</a>
</div> </div>
<div class="contents"> <div class="contents">
<h1>Effect.h</h1><div class="fragment"><pre class="fragment"><a name="l00001"></a>00001 <span class="preprocessor">#ifndef STK_EFFECT_H</span> <h1>Effect.h</h1><div class="fragment"><pre class="fragment"><a name="l00001"></a>00001 <span class="preprocessor">#ifndef STK_EFFECT_H</span>
@@ -34,7 +34,7 @@
<a name="l00032"></a>00032 <a name="l00032"></a>00032
<a name="l00034"></a>00034 <span class="keyword">virtual</span> <span class="keywordtype">void</span> <a class="code" href="classstk_1_1Effect.html#a0598128d1edc97729951310cc5df5171" title="Reset and clear all internal state.">clear</a>() = 0; <a name="l00034"></a>00034 <span class="keyword">virtual</span> <span class="keywordtype">void</span> <a class="code" href="classstk_1_1Effect.html#a0598128d1edc97729951310cc5df5171" title="Reset and clear all internal state.">clear</a>() = 0;
<a name="l00035"></a>00035 <a name="l00035"></a>00035
<a name="l00037"></a>00037 <span class="keywordtype">void</span> <a class="code" href="classstk_1_1Effect.html#ab4facbc9b317f18c139577e52fd69c3d" title="Set the mixture of input and &amp;quot;effected&amp;quot; levels in the output (0.0 = input...">setEffectMix</a>( StkFloat mix ); <a name="l00037"></a>00037 <span class="keyword">virtual</span> <span class="keywordtype">void</span> <a class="code" href="classstk_1_1Effect.html#ab4facbc9b317f18c139577e52fd69c3d" title="Set the mixture of input and &amp;quot;effected&amp;quot; levels in the output (0.0 = input...">setEffectMix</a>( StkFloat mix );
<a name="l00038"></a>00038 <a name="l00038"></a>00038
<a name="l00039"></a>00039 <span class="keyword">protected</span>: <a name="l00039"></a>00039 <span class="keyword">protected</span>:
<a name="l00040"></a>00040 <a name="l00040"></a>00040
@@ -82,7 +82,7 @@
<table> <table>
<tr><td><A HREF="http://ccrma.stanford.edu/software/stk/"><I>The Synthesis ToolKit in C++ (STK)</I></A></td></tr> <tr><td><A HREF="http://ccrma.stanford.edu/software/stk/"><I>The Synthesis ToolKit in C++ (STK)</I></A></td></tr>
<tr><td>&copy;1995-2011 Perry R. Cook and Gary P. Scavone. All Rights Reserved.</td></tr> <tr><td>&copy;1995-2012 Perry R. Cook and Gary P. Scavone. All Rights Reserved.</td></tr>
</table> </table>
</BODY> </BODY>

View File

@@ -9,7 +9,7 @@
<a class="qindex" href="index.html">Home</a> &nbsp; <a class="qindex" href="information.html">Information</a> &nbsp; <a class="qindex" href="classes.html">Classes</a> &nbsp; <a class="qindex" href="download.html">Download</a> &nbsp; <a class="qindex" href="usage.html">Usage</a> &nbsp; <a class="qindex" href="maillist.html">Mail List</a> &nbsp; <a class="qindex" href="system.html">Requirements</a> &nbsp; <a class="qindex" href="links.html">Links</a> &nbsp; <a class="qindex" href="faq.html">FAQ</a> &nbsp; <a class="qindex" href="tutorial.html">Tutorial</a></CENTER> <a class="qindex" href="index.html">Home</a> &nbsp; <a class="qindex" href="information.html">Information</a> &nbsp; <a class="qindex" href="classes.html">Classes</a> &nbsp; <a class="qindex" href="download.html">Download</a> &nbsp; <a class="qindex" href="usage.html">Usage</a> &nbsp; <a class="qindex" href="maillist.html">Mail List</a> &nbsp; <a class="qindex" href="system.html">Requirements</a> &nbsp; <a class="qindex" href="links.html">Links</a> &nbsp; <a class="qindex" href="faq.html">FAQ</a> &nbsp; <a class="qindex" href="tutorial.html">Tutorial</a></CENTER>
<HR> <HR>
<!-- Generated by Doxygen 1.6.2 --> <!-- Generated by Doxygen 1.6.2 -->
<div class="navpath"><a class="el" href="dir_f14fd23bc74c76f288031ad23b3f3505.html">include</a> <div class="navpath"><a class="el" href="dir_221deb9bdff892d63ed1e409450a60d2.html">include</a>
</div> </div>
<div class="contents"> <div class="contents">
<h1>Envelope.h</h1><div class="fragment"><pre class="fragment"><a name="l00001"></a>00001 <span class="preprocessor">#ifndef STK_ENVELOPE_H</span> <h1>Envelope.h</h1><div class="fragment"><pre class="fragment"><a name="l00001"></a>00001 <span class="preprocessor">#ifndef STK_ENVELOPE_H</span>
@@ -113,7 +113,7 @@
<table> <table>
<tr><td><A HREF="http://ccrma.stanford.edu/software/stk/"><I>The Synthesis ToolKit in C++ (STK)</I></A></td></tr> <tr><td><A HREF="http://ccrma.stanford.edu/software/stk/"><I>The Synthesis ToolKit in C++ (STK)</I></A></td></tr>
<tr><td>&copy;1995-2011 Perry R. Cook and Gary P. Scavone. All Rights Reserved.</td></tr> <tr><td>&copy;1995-2012 Perry R. Cook and Gary P. Scavone. All Rights Reserved.</td></tr>
</table> </table>
</BODY> </BODY>

View File

@@ -9,7 +9,7 @@
<a class="qindex" href="index.html">Home</a> &nbsp; <a class="qindex" href="information.html">Information</a> &nbsp; <a class="qindex" href="classes.html">Classes</a> &nbsp; <a class="qindex" href="download.html">Download</a> &nbsp; <a class="qindex" href="usage.html">Usage</a> &nbsp; <a class="qindex" href="maillist.html">Mail List</a> &nbsp; <a class="qindex" href="system.html">Requirements</a> &nbsp; <a class="qindex" href="links.html">Links</a> &nbsp; <a class="qindex" href="faq.html">FAQ</a> &nbsp; <a class="qindex" href="tutorial.html">Tutorial</a></CENTER> <a class="qindex" href="index.html">Home</a> &nbsp; <a class="qindex" href="information.html">Information</a> &nbsp; <a class="qindex" href="classes.html">Classes</a> &nbsp; <a class="qindex" href="download.html">Download</a> &nbsp; <a class="qindex" href="usage.html">Usage</a> &nbsp; <a class="qindex" href="maillist.html">Mail List</a> &nbsp; <a class="qindex" href="system.html">Requirements</a> &nbsp; <a class="qindex" href="links.html">Links</a> &nbsp; <a class="qindex" href="faq.html">FAQ</a> &nbsp; <a class="qindex" href="tutorial.html">Tutorial</a></CENTER>
<HR> <HR>
<!-- Generated by Doxygen 1.6.2 --> <!-- Generated by Doxygen 1.6.2 -->
<div class="navpath"><a class="el" href="dir_f14fd23bc74c76f288031ad23b3f3505.html">include</a> <div class="navpath"><a class="el" href="dir_221deb9bdff892d63ed1e409450a60d2.html">include</a>
</div> </div>
<div class="contents"> <div class="contents">
<h1>FMVoices.h</h1><div class="fragment"><pre class="fragment"><a name="l00001"></a>00001 <span class="preprocessor">#ifndef STK_FMVOICES_H</span> <h1>FMVoices.h</h1><div class="fragment"><pre class="fragment"><a name="l00001"></a>00001 <span class="preprocessor">#ifndef STK_FMVOICES_H</span>
@@ -108,7 +108,7 @@
<table> <table>
<tr><td><A HREF="http://ccrma.stanford.edu/software/stk/"><I>The Synthesis ToolKit in C++ (STK)</I></A></td></tr> <tr><td><A HREF="http://ccrma.stanford.edu/software/stk/"><I>The Synthesis ToolKit in C++ (STK)</I></A></td></tr>
<tr><td>&copy;1995-2011 Perry R. Cook and Gary P. Scavone. All Rights Reserved.</td></tr> <tr><td>&copy;1995-2012 Perry R. Cook and Gary P. Scavone. All Rights Reserved.</td></tr>
</table> </table>
</BODY> </BODY>

View File

@@ -9,7 +9,7 @@
<a class="qindex" href="index.html">Home</a> &nbsp; <a class="qindex" href="information.html">Information</a> &nbsp; <a class="qindex" href="classes.html">Classes</a> &nbsp; <a class="qindex" href="download.html">Download</a> &nbsp; <a class="qindex" href="usage.html">Usage</a> &nbsp; <a class="qindex" href="maillist.html">Mail List</a> &nbsp; <a class="qindex" href="system.html">Requirements</a> &nbsp; <a class="qindex" href="links.html">Links</a> &nbsp; <a class="qindex" href="faq.html">FAQ</a> &nbsp; <a class="qindex" href="tutorial.html">Tutorial</a></CENTER> <a class="qindex" href="index.html">Home</a> &nbsp; <a class="qindex" href="information.html">Information</a> &nbsp; <a class="qindex" href="classes.html">Classes</a> &nbsp; <a class="qindex" href="download.html">Download</a> &nbsp; <a class="qindex" href="usage.html">Usage</a> &nbsp; <a class="qindex" href="maillist.html">Mail List</a> &nbsp; <a class="qindex" href="system.html">Requirements</a> &nbsp; <a class="qindex" href="links.html">Links</a> &nbsp; <a class="qindex" href="faq.html">FAQ</a> &nbsp; <a class="qindex" href="tutorial.html">Tutorial</a></CENTER>
<HR> <HR>
<!-- Generated by Doxygen 1.6.2 --> <!-- Generated by Doxygen 1.6.2 -->
<div class="navpath"><a class="el" href="dir_f14fd23bc74c76f288031ad23b3f3505.html">include</a> <div class="navpath"><a class="el" href="dir_221deb9bdff892d63ed1e409450a60d2.html">include</a>
</div> </div>
<div class="contents"> <div class="contents">
<h1>FM.h</h1><div class="fragment"><pre class="fragment"><a name="l00001"></a>00001 <span class="preprocessor">#ifndef STK_FM_H</span> <h1>FM.h</h1><div class="fragment"><pre class="fragment"><a name="l00001"></a>00001 <span class="preprocessor">#ifndef STK_FM_H</span>
@@ -92,7 +92,7 @@
<table> <table>
<tr><td><A HREF="http://ccrma.stanford.edu/software/stk/"><I>The Synthesis ToolKit in C++ (STK)</I></A></td></tr> <tr><td><A HREF="http://ccrma.stanford.edu/software/stk/"><I>The Synthesis ToolKit in C++ (STK)</I></A></td></tr>
<tr><td>&copy;1995-2011 Perry R. Cook and Gary P. Scavone. All Rights Reserved.</td></tr> <tr><td>&copy;1995-2012 Perry R. Cook and Gary P. Scavone. All Rights Reserved.</td></tr>
</table> </table>
</BODY> </BODY>

View File

@@ -9,7 +9,7 @@
<a class="qindex" href="index.html">Home</a> &nbsp; <a class="qindex" href="information.html">Information</a> &nbsp; <a class="qindex" href="classes.html">Classes</a> &nbsp; <a class="qindex" href="download.html">Download</a> &nbsp; <a class="qindex" href="usage.html">Usage</a> &nbsp; <a class="qindex" href="maillist.html">Mail List</a> &nbsp; <a class="qindex" href="system.html">Requirements</a> &nbsp; <a class="qindex" href="links.html">Links</a> &nbsp; <a class="qindex" href="faq.html">FAQ</a> &nbsp; <a class="qindex" href="tutorial.html">Tutorial</a></CENTER> <a class="qindex" href="index.html">Home</a> &nbsp; <a class="qindex" href="information.html">Information</a> &nbsp; <a class="qindex" href="classes.html">Classes</a> &nbsp; <a class="qindex" href="download.html">Download</a> &nbsp; <a class="qindex" href="usage.html">Usage</a> &nbsp; <a class="qindex" href="maillist.html">Mail List</a> &nbsp; <a class="qindex" href="system.html">Requirements</a> &nbsp; <a class="qindex" href="links.html">Links</a> &nbsp; <a class="qindex" href="faq.html">FAQ</a> &nbsp; <a class="qindex" href="tutorial.html">Tutorial</a></CENTER>
<HR> <HR>
<!-- Generated by Doxygen 1.6.2 --> <!-- Generated by Doxygen 1.6.2 -->
<div class="navpath"><a class="el" href="dir_f14fd23bc74c76f288031ad23b3f3505.html">include</a> <div class="navpath"><a class="el" href="dir_221deb9bdff892d63ed1e409450a60d2.html">include</a>
</div> </div>
<div class="contents"> <div class="contents">
<h1>FileLoop.h</h1><div class="fragment"><pre class="fragment"><a name="l00001"></a>00001 <span class="preprocessor">#ifndef STK_FILELOOP_H</span> <h1>FileLoop.h</h1><div class="fragment"><pre class="fragment"><a name="l00001"></a>00001 <span class="preprocessor">#ifndef STK_FILELOOP_H</span>
@@ -90,7 +90,7 @@
<table> <table>
<tr><td><A HREF="http://ccrma.stanford.edu/software/stk/"><I>The Synthesis ToolKit in C++ (STK)</I></A></td></tr> <tr><td><A HREF="http://ccrma.stanford.edu/software/stk/"><I>The Synthesis ToolKit in C++ (STK)</I></A></td></tr>
<tr><td>&copy;1995-2011 Perry R. Cook and Gary P. Scavone. All Rights Reserved.</td></tr> <tr><td>&copy;1995-2012 Perry R. Cook and Gary P. Scavone. All Rights Reserved.</td></tr>
</table> </table>
</BODY> </BODY>

View File

@@ -9,7 +9,7 @@
<a class="qindex" href="index.html">Home</a> &nbsp; <a class="qindex" href="information.html">Information</a> &nbsp; <a class="qindex" href="classes.html">Classes</a> &nbsp; <a class="qindex" href="download.html">Download</a> &nbsp; <a class="qindex" href="usage.html">Usage</a> &nbsp; <a class="qindex" href="maillist.html">Mail List</a> &nbsp; <a class="qindex" href="system.html">Requirements</a> &nbsp; <a class="qindex" href="links.html">Links</a> &nbsp; <a class="qindex" href="faq.html">FAQ</a> &nbsp; <a class="qindex" href="tutorial.html">Tutorial</a></CENTER> <a class="qindex" href="index.html">Home</a> &nbsp; <a class="qindex" href="information.html">Information</a> &nbsp; <a class="qindex" href="classes.html">Classes</a> &nbsp; <a class="qindex" href="download.html">Download</a> &nbsp; <a class="qindex" href="usage.html">Usage</a> &nbsp; <a class="qindex" href="maillist.html">Mail List</a> &nbsp; <a class="qindex" href="system.html">Requirements</a> &nbsp; <a class="qindex" href="links.html">Links</a> &nbsp; <a class="qindex" href="faq.html">FAQ</a> &nbsp; <a class="qindex" href="tutorial.html">Tutorial</a></CENTER>
<HR> <HR>
<!-- Generated by Doxygen 1.6.2 --> <!-- Generated by Doxygen 1.6.2 -->
<div class="navpath"><a class="el" href="dir_f14fd23bc74c76f288031ad23b3f3505.html">include</a> <div class="navpath"><a class="el" href="dir_221deb9bdff892d63ed1e409450a60d2.html">include</a>
</div> </div>
<div class="contents"> <div class="contents">
<h1>FileRead.h</h1><div class="fragment"><pre class="fragment"><a name="l00001"></a>00001 <span class="preprocessor">#ifndef STK_FILEREAD_H</span> <h1>FileRead.h</h1><div class="fragment"><pre class="fragment"><a name="l00001"></a>00001 <span class="preprocessor">#ifndef STK_FILEREAD_H</span>
@@ -92,7 +92,7 @@
<table> <table>
<tr><td><A HREF="http://ccrma.stanford.edu/software/stk/"><I>The Synthesis ToolKit in C++ (STK)</I></A></td></tr> <tr><td><A HREF="http://ccrma.stanford.edu/software/stk/"><I>The Synthesis ToolKit in C++ (STK)</I></A></td></tr>
<tr><td>&copy;1995-2011 Perry R. Cook and Gary P. Scavone. All Rights Reserved.</td></tr> <tr><td>&copy;1995-2012 Perry R. Cook and Gary P. Scavone. All Rights Reserved.</td></tr>
</table> </table>
</BODY> </BODY>

View File

@@ -9,7 +9,7 @@
<a class="qindex" href="index.html">Home</a> &nbsp; <a class="qindex" href="information.html">Information</a> &nbsp; <a class="qindex" href="classes.html">Classes</a> &nbsp; <a class="qindex" href="download.html">Download</a> &nbsp; <a class="qindex" href="usage.html">Usage</a> &nbsp; <a class="qindex" href="maillist.html">Mail List</a> &nbsp; <a class="qindex" href="system.html">Requirements</a> &nbsp; <a class="qindex" href="links.html">Links</a> &nbsp; <a class="qindex" href="faq.html">FAQ</a> &nbsp; <a class="qindex" href="tutorial.html">Tutorial</a></CENTER> <a class="qindex" href="index.html">Home</a> &nbsp; <a class="qindex" href="information.html">Information</a> &nbsp; <a class="qindex" href="classes.html">Classes</a> &nbsp; <a class="qindex" href="download.html">Download</a> &nbsp; <a class="qindex" href="usage.html">Usage</a> &nbsp; <a class="qindex" href="maillist.html">Mail List</a> &nbsp; <a class="qindex" href="system.html">Requirements</a> &nbsp; <a class="qindex" href="links.html">Links</a> &nbsp; <a class="qindex" href="faq.html">FAQ</a> &nbsp; <a class="qindex" href="tutorial.html">Tutorial</a></CENTER>
<HR> <HR>
<!-- Generated by Doxygen 1.6.2 --> <!-- Generated by Doxygen 1.6.2 -->
<div class="navpath"><a class="el" href="dir_f14fd23bc74c76f288031ad23b3f3505.html">include</a> <div class="navpath"><a class="el" href="dir_221deb9bdff892d63ed1e409450a60d2.html">include</a>
</div> </div>
<div class="contents"> <div class="contents">
<h1>FileWrite.h</h1><div class="fragment"><pre class="fragment"><a name="l00001"></a>00001 <span class="preprocessor">#ifndef STK_FILEWRITE_H</span> <h1>FileWrite.h</h1><div class="fragment"><pre class="fragment"><a name="l00001"></a>00001 <span class="preprocessor">#ifndef STK_FILEWRITE_H</span>
@@ -98,7 +98,7 @@
<table> <table>
<tr><td><A HREF="http://ccrma.stanford.edu/software/stk/"><I>The Synthesis ToolKit in C++ (STK)</I></A></td></tr> <tr><td><A HREF="http://ccrma.stanford.edu/software/stk/"><I>The Synthesis ToolKit in C++ (STK)</I></A></td></tr>
<tr><td>&copy;1995-2011 Perry R. Cook and Gary P. Scavone. All Rights Reserved.</td></tr> <tr><td>&copy;1995-2012 Perry R. Cook and Gary P. Scavone. All Rights Reserved.</td></tr>
</table> </table>
</BODY> </BODY>

View File

@@ -9,7 +9,7 @@
<a class="qindex" href="index.html">Home</a> &nbsp; <a class="qindex" href="information.html">Information</a> &nbsp; <a class="qindex" href="classes.html">Classes</a> &nbsp; <a class="qindex" href="download.html">Download</a> &nbsp; <a class="qindex" href="usage.html">Usage</a> &nbsp; <a class="qindex" href="maillist.html">Mail List</a> &nbsp; <a class="qindex" href="system.html">Requirements</a> &nbsp; <a class="qindex" href="links.html">Links</a> &nbsp; <a class="qindex" href="faq.html">FAQ</a> &nbsp; <a class="qindex" href="tutorial.html">Tutorial</a></CENTER> <a class="qindex" href="index.html">Home</a> &nbsp; <a class="qindex" href="information.html">Information</a> &nbsp; <a class="qindex" href="classes.html">Classes</a> &nbsp; <a class="qindex" href="download.html">Download</a> &nbsp; <a class="qindex" href="usage.html">Usage</a> &nbsp; <a class="qindex" href="maillist.html">Mail List</a> &nbsp; <a class="qindex" href="system.html">Requirements</a> &nbsp; <a class="qindex" href="links.html">Links</a> &nbsp; <a class="qindex" href="faq.html">FAQ</a> &nbsp; <a class="qindex" href="tutorial.html">Tutorial</a></CENTER>
<HR> <HR>
<!-- Generated by Doxygen 1.6.2 --> <!-- Generated by Doxygen 1.6.2 -->
<div class="navpath"><a class="el" href="dir_f14fd23bc74c76f288031ad23b3f3505.html">include</a> <div class="navpath"><a class="el" href="dir_221deb9bdff892d63ed1e409450a60d2.html">include</a>
</div> </div>
<div class="contents"> <div class="contents">
<h1>FileWvIn.h</h1><div class="fragment"><pre class="fragment"><a name="l00001"></a>00001 <span class="preprocessor">#ifndef STK_FILEWVIN_H</span> <h1>FileWvIn.h</h1><div class="fragment"><pre class="fragment"><a name="l00001"></a>00001 <span class="preprocessor">#ifndef STK_FILEWVIN_H</span>
@@ -47,7 +47,7 @@
<a name="l00085"></a>00085 <a name="l00085"></a>00085
<a name="l00089"></a>00089 <span class="keyword">virtual</span> <span class="keywordtype">void</span> <a class="code" href="classstk_1_1FileWvIn.html#aaecd1950fca3a5513e0efe4e86754b11" title="Normalize data to a maximum of +-1.0.">normalize</a>( StkFloat peak ); <a name="l00089"></a>00089 <span class="keyword">virtual</span> <span class="keywordtype">void</span> <a class="code" href="classstk_1_1FileWvIn.html#aaecd1950fca3a5513e0efe4e86754b11" title="Normalize data to a maximum of +-1.0.">normalize</a>( StkFloat peak );
<a name="l00090"></a>00090 <a name="l00090"></a>00090
<a name="l00092"></a><a class="code" href="classstk_1_1FileWvIn.html#aa8ef94c3ed01af0efc9e968f09207a26">00092</a> <span class="keyword">virtual</span> <span class="keywordtype">unsigned</span> <span class="keywordtype">long</span> <a class="code" href="classstk_1_1FileWvIn.html#aa8ef94c3ed01af0efc9e968f09207a26" title="Return the file size in sample frames.">getSize</a>( <span class="keywordtype">void</span> )<span class="keyword"> const </span>{ <span class="keywordflow">return</span> data_.<a class="code" href="classstk_1_1StkFrames.html#a05b1ab6fa750a8221a7d65c30e0cdab9" title="Return the number of sample frames represented by the data.">frames</a>(); }; <a name="l00092"></a><a class="code" href="classstk_1_1FileWvIn.html#aa8ef94c3ed01af0efc9e968f09207a26">00092</a> <span class="keyword">virtual</span> <span class="keywordtype">unsigned</span> <span class="keywordtype">long</span> <a class="code" href="classstk_1_1FileWvIn.html#aa8ef94c3ed01af0efc9e968f09207a26" title="Return the file size in sample frames.">getSize</a>( <span class="keywordtype">void</span> )<span class="keyword"> const </span>{ <span class="keywordflow">return</span> file_.<a class="code" href="classstk_1_1FileRead.html#a6a83d925dd5bd18c4299ea42cc0ea488" title="Return the file size in sample frames.">fileSize</a>(); };
<a name="l00093"></a>00093 <a name="l00093"></a>00093
<a name="l00095"></a>00095 <a name="l00095"></a>00095
<a name="l00100"></a><a class="code" href="classstk_1_1FileWvIn.html#a867b7b7fdb60e5194e25d7a85a26ec0b">00100</a> <span class="keyword">virtual</span> StkFloat <a class="code" href="classstk_1_1FileWvIn.html#a867b7b7fdb60e5194e25d7a85a26ec0b" title="Return the input file sample rate in Hz (not the data read rate).">getFileRate</a>( <span class="keywordtype">void</span> )<span class="keyword"> const </span>{ <span class="keywordflow">return</span> data_.<a class="code" href="classstk_1_1StkFrames.html#a4dbbcbdc8db39a803e0861976f7f3522" title="Return the sample rate associated with the StkFrames data.">dataRate</a>(); }; <a name="l00100"></a><a class="code" href="classstk_1_1FileWvIn.html#a867b7b7fdb60e5194e25d7a85a26ec0b">00100</a> <span class="keyword">virtual</span> StkFloat <a class="code" href="classstk_1_1FileWvIn.html#a867b7b7fdb60e5194e25d7a85a26ec0b" title="Return the input file sample rate in Hz (not the data read rate).">getFileRate</a>( <span class="keywordtype">void</span> )<span class="keyword"> const </span>{ <span class="keywordflow">return</span> data_.<a class="code" href="classstk_1_1StkFrames.html#a4dbbcbdc8db39a803e0861976f7f3522" title="Return the sample rate associated with the StkFrames data.">dataRate</a>(); };
@@ -112,7 +112,7 @@
<table> <table>
<tr><td><A HREF="http://ccrma.stanford.edu/software/stk/"><I>The Synthesis ToolKit in C++ (STK)</I></A></td></tr> <tr><td><A HREF="http://ccrma.stanford.edu/software/stk/"><I>The Synthesis ToolKit in C++ (STK)</I></A></td></tr>
<tr><td>&copy;1995-2011 Perry R. Cook and Gary P. Scavone. All Rights Reserved.</td></tr> <tr><td>&copy;1995-2012 Perry R. Cook and Gary P. Scavone. All Rights Reserved.</td></tr>
</table> </table>
</BODY> </BODY>

View File

@@ -9,7 +9,7 @@
<a class="qindex" href="index.html">Home</a> &nbsp; <a class="qindex" href="information.html">Information</a> &nbsp; <a class="qindex" href="classes.html">Classes</a> &nbsp; <a class="qindex" href="download.html">Download</a> &nbsp; <a class="qindex" href="usage.html">Usage</a> &nbsp; <a class="qindex" href="maillist.html">Mail List</a> &nbsp; <a class="qindex" href="system.html">Requirements</a> &nbsp; <a class="qindex" href="links.html">Links</a> &nbsp; <a class="qindex" href="faq.html">FAQ</a> &nbsp; <a class="qindex" href="tutorial.html">Tutorial</a></CENTER> <a class="qindex" href="index.html">Home</a> &nbsp; <a class="qindex" href="information.html">Information</a> &nbsp; <a class="qindex" href="classes.html">Classes</a> &nbsp; <a class="qindex" href="download.html">Download</a> &nbsp; <a class="qindex" href="usage.html">Usage</a> &nbsp; <a class="qindex" href="maillist.html">Mail List</a> &nbsp; <a class="qindex" href="system.html">Requirements</a> &nbsp; <a class="qindex" href="links.html">Links</a> &nbsp; <a class="qindex" href="faq.html">FAQ</a> &nbsp; <a class="qindex" href="tutorial.html">Tutorial</a></CENTER>
<HR> <HR>
<!-- Generated by Doxygen 1.6.2 --> <!-- Generated by Doxygen 1.6.2 -->
<div class="navpath"><a class="el" href="dir_f14fd23bc74c76f288031ad23b3f3505.html">include</a> <div class="navpath"><a class="el" href="dir_221deb9bdff892d63ed1e409450a60d2.html">include</a>
</div> </div>
<div class="contents"> <div class="contents">
<h1>FileWvOut.h</h1><div class="fragment"><pre class="fragment"><a name="l00001"></a>00001 <span class="preprocessor">#ifndef STK_FILEWVOUT_H</span> <h1>FileWvOut.h</h1><div class="fragment"><pre class="fragment"><a name="l00001"></a>00001 <span class="preprocessor">#ifndef STK_FILEWVOUT_H</span>
@@ -73,7 +73,7 @@
<table> <table>
<tr><td><A HREF="http://ccrma.stanford.edu/software/stk/"><I>The Synthesis ToolKit in C++ (STK)</I></A></td></tr> <tr><td><A HREF="http://ccrma.stanford.edu/software/stk/"><I>The Synthesis ToolKit in C++ (STK)</I></A></td></tr>
<tr><td>&copy;1995-2011 Perry R. Cook and Gary P. Scavone. All Rights Reserved.</td></tr> <tr><td>&copy;1995-2012 Perry R. Cook and Gary P. Scavone. All Rights Reserved.</td></tr>
</table> </table>
</BODY> </BODY>

View File

@@ -9,7 +9,7 @@
<a class="qindex" href="index.html">Home</a> &nbsp; <a class="qindex" href="information.html">Information</a> &nbsp; <a class="qindex" href="classes.html">Classes</a> &nbsp; <a class="qindex" href="download.html">Download</a> &nbsp; <a class="qindex" href="usage.html">Usage</a> &nbsp; <a class="qindex" href="maillist.html">Mail List</a> &nbsp; <a class="qindex" href="system.html">Requirements</a> &nbsp; <a class="qindex" href="links.html">Links</a> &nbsp; <a class="qindex" href="faq.html">FAQ</a> &nbsp; <a class="qindex" href="tutorial.html">Tutorial</a></CENTER> <a class="qindex" href="index.html">Home</a> &nbsp; <a class="qindex" href="information.html">Information</a> &nbsp; <a class="qindex" href="classes.html">Classes</a> &nbsp; <a class="qindex" href="download.html">Download</a> &nbsp; <a class="qindex" href="usage.html">Usage</a> &nbsp; <a class="qindex" href="maillist.html">Mail List</a> &nbsp; <a class="qindex" href="system.html">Requirements</a> &nbsp; <a class="qindex" href="links.html">Links</a> &nbsp; <a class="qindex" href="faq.html">FAQ</a> &nbsp; <a class="qindex" href="tutorial.html">Tutorial</a></CENTER>
<HR> <HR>
<!-- Generated by Doxygen 1.6.2 --> <!-- Generated by Doxygen 1.6.2 -->
<div class="navpath"><a class="el" href="dir_f14fd23bc74c76f288031ad23b3f3505.html">include</a> <div class="navpath"><a class="el" href="dir_221deb9bdff892d63ed1e409450a60d2.html">include</a>
</div> </div>
<div class="contents"> <div class="contents">
<h1>Filter.h</h1><div class="fragment"><pre class="fragment"><a name="l00001"></a>00001 <span class="preprocessor">#ifndef STK_FILTER_H</span> <h1>Filter.h</h1><div class="fragment"><pre class="fragment"><a name="l00001"></a>00001 <span class="preprocessor">#ifndef STK_FILTER_H</span>
@@ -79,7 +79,7 @@
<a name="l00097"></a>00097 <a class="code" href="classstk_1_1Stk.html#a48ac73a0d8ca28445ba1a054e1f061ff" title="Static function for error reporting and handling using c-strings.">handleError</a>( StkError::WARNING ); <span class="keywordflow">return</span> 0.0; <a name="l00097"></a>00097 <a class="code" href="classstk_1_1Stk.html#a48ac73a0d8ca28445ba1a054e1f061ff" title="Static function for error reporting and handling using c-strings.">handleError</a>( StkError::WARNING ); <span class="keywordflow">return</span> 0.0;
<a name="l00098"></a>00098 } <a name="l00098"></a>00098 }
<a name="l00099"></a>00099 <a name="l00099"></a>00099
<a name="l00100"></a>00100 StkFloat omegaT = 2 * M_PI * frequency / <a class="code" href="classstk_1_1Stk.html#a5fbe37000a611ce56075ee7d8936472d" title="Static method that returns the current STK sample rate.">Stk::sampleRate</a>(); <a name="l00100"></a>00100 StkFloat omegaT = 2 * PI * frequency / <a class="code" href="classstk_1_1Stk.html#a5fbe37000a611ce56075ee7d8936472d" title="Static method that returns the current STK sample rate.">Stk::sampleRate</a>();
<a name="l00101"></a>00101 StkFloat real = 0.0, imag = 0.0; <a name="l00101"></a>00101 StkFloat real = 0.0, imag = 0.0;
<a name="l00102"></a>00102 <span class="keywordflow">for</span> ( <span class="keywordtype">unsigned</span> <span class="keywordtype">int</span> i=0; i&lt;b_.size(); i++ ) { <a name="l00102"></a>00102 <span class="keywordflow">for</span> ( <span class="keywordtype">unsigned</span> <span class="keywordtype">int</span> i=0; i&lt;b_.size(); i++ ) {
<a name="l00103"></a>00103 real += b_[i] * std::cos( i * omegaT ); <a name="l00103"></a>00103 real += b_[i] * std::cos( i * omegaT );
@@ -97,7 +97,7 @@
<a name="l00115"></a>00115 } <a name="l00115"></a>00115 }
<a name="l00116"></a>00116 <a name="l00116"></a>00116
<a name="l00117"></a>00117 phase -= std::atan2( imag, real ); <a name="l00117"></a>00117 phase -= std::atan2( imag, real );
<a name="l00118"></a>00118 phase = std::fmod( -phase, 2 * M_PI ); <a name="l00118"></a>00118 phase = std::fmod( -phase, 2 * PI );
<a name="l00119"></a>00119 <span class="keywordflow">return</span> phase / omegaT; <a name="l00119"></a>00119 <span class="keywordflow">return</span> phase / omegaT;
<a name="l00120"></a>00120 } <a name="l00120"></a>00120 }
<a name="l00121"></a>00121 <a name="l00121"></a>00121
@@ -109,7 +109,7 @@
<table> <table>
<tr><td><A HREF="http://ccrma.stanford.edu/software/stk/"><I>The Synthesis ToolKit in C++ (STK)</I></A></td></tr> <tr><td><A HREF="http://ccrma.stanford.edu/software/stk/"><I>The Synthesis ToolKit in C++ (STK)</I></A></td></tr>
<tr><td>&copy;1995-2011 Perry R. Cook and Gary P. Scavone. All Rights Reserved.</td></tr> <tr><td>&copy;1995-2012 Perry R. Cook and Gary P. Scavone. All Rights Reserved.</td></tr>
</table> </table>
</BODY> </BODY>

View File

@@ -9,7 +9,7 @@
<a class="qindex" href="index.html">Home</a> &nbsp; <a class="qindex" href="information.html">Information</a> &nbsp; <a class="qindex" href="classes.html">Classes</a> &nbsp; <a class="qindex" href="download.html">Download</a> &nbsp; <a class="qindex" href="usage.html">Usage</a> &nbsp; <a class="qindex" href="maillist.html">Mail List</a> &nbsp; <a class="qindex" href="system.html">Requirements</a> &nbsp; <a class="qindex" href="links.html">Links</a> &nbsp; <a class="qindex" href="faq.html">FAQ</a> &nbsp; <a class="qindex" href="tutorial.html">Tutorial</a></CENTER> <a class="qindex" href="index.html">Home</a> &nbsp; <a class="qindex" href="information.html">Information</a> &nbsp; <a class="qindex" href="classes.html">Classes</a> &nbsp; <a class="qindex" href="download.html">Download</a> &nbsp; <a class="qindex" href="usage.html">Usage</a> &nbsp; <a class="qindex" href="maillist.html">Mail List</a> &nbsp; <a class="qindex" href="system.html">Requirements</a> &nbsp; <a class="qindex" href="links.html">Links</a> &nbsp; <a class="qindex" href="faq.html">FAQ</a> &nbsp; <a class="qindex" href="tutorial.html">Tutorial</a></CENTER>
<HR> <HR>
<!-- Generated by Doxygen 1.6.2 --> <!-- Generated by Doxygen 1.6.2 -->
<div class="navpath"><a class="el" href="dir_f14fd23bc74c76f288031ad23b3f3505.html">include</a> <div class="navpath"><a class="el" href="dir_221deb9bdff892d63ed1e409450a60d2.html">include</a>
</div> </div>
<div class="contents"> <div class="contents">
<h1>Fir.h</h1><div class="fragment"><pre class="fragment"><a name="l00001"></a>00001 <span class="preprocessor">#ifndef STK_FIR_H</span> <h1>Fir.h</h1><div class="fragment"><pre class="fragment"><a name="l00001"></a>00001 <span class="preprocessor">#ifndef STK_FIR_H</span>
@@ -124,7 +124,7 @@
<table> <table>
<tr><td><A HREF="http://ccrma.stanford.edu/software/stk/"><I>The Synthesis ToolKit in C++ (STK)</I></A></td></tr> <tr><td><A HREF="http://ccrma.stanford.edu/software/stk/"><I>The Synthesis ToolKit in C++ (STK)</I></A></td></tr>
<tr><td>&copy;1995-2011 Perry R. Cook and Gary P. Scavone. All Rights Reserved.</td></tr> <tr><td>&copy;1995-2012 Perry R. Cook and Gary P. Scavone. All Rights Reserved.</td></tr>
</table> </table>
</BODY> </BODY>

View File

@@ -9,7 +9,7 @@
<a class="qindex" href="index.html">Home</a> &nbsp; <a class="qindex" href="information.html">Information</a> &nbsp; <a class="qindex" href="classes.html">Classes</a> &nbsp; <a class="qindex" href="download.html">Download</a> &nbsp; <a class="qindex" href="usage.html">Usage</a> &nbsp; <a class="qindex" href="maillist.html">Mail List</a> &nbsp; <a class="qindex" href="system.html">Requirements</a> &nbsp; <a class="qindex" href="links.html">Links</a> &nbsp; <a class="qindex" href="faq.html">FAQ</a> &nbsp; <a class="qindex" href="tutorial.html">Tutorial</a></CENTER> <a class="qindex" href="index.html">Home</a> &nbsp; <a class="qindex" href="information.html">Information</a> &nbsp; <a class="qindex" href="classes.html">Classes</a> &nbsp; <a class="qindex" href="download.html">Download</a> &nbsp; <a class="qindex" href="usage.html">Usage</a> &nbsp; <a class="qindex" href="maillist.html">Mail List</a> &nbsp; <a class="qindex" href="system.html">Requirements</a> &nbsp; <a class="qindex" href="links.html">Links</a> &nbsp; <a class="qindex" href="faq.html">FAQ</a> &nbsp; <a class="qindex" href="tutorial.html">Tutorial</a></CENTER>
<HR> <HR>
<!-- Generated by Doxygen 1.6.2 --> <!-- Generated by Doxygen 1.6.2 -->
<div class="navpath"><a class="el" href="dir_f14fd23bc74c76f288031ad23b3f3505.html">include</a> <div class="navpath"><a class="el" href="dir_221deb9bdff892d63ed1e409450a60d2.html">include</a>
</div> </div>
<div class="contents"> <div class="contents">
<h1>Flute.h</h1><div class="fragment"><pre class="fragment"><a name="l00001"></a>00001 <span class="preprocessor">#ifndef STK_FLUTE_H</span> <h1>Flute.h</h1><div class="fragment"><pre class="fragment"><a name="l00001"></a>00001 <span class="preprocessor">#ifndef STK_FLUTE_H</span>
@@ -140,7 +140,7 @@
<table> <table>
<tr><td><A HREF="http://ccrma.stanford.edu/software/stk/"><I>The Synthesis ToolKit in C++ (STK)</I></A></td></tr> <tr><td><A HREF="http://ccrma.stanford.edu/software/stk/"><I>The Synthesis ToolKit in C++ (STK)</I></A></td></tr>
<tr><td>&copy;1995-2011 Perry R. Cook and Gary P. Scavone. All Rights Reserved.</td></tr> <tr><td>&copy;1995-2012 Perry R. Cook and Gary P. Scavone. All Rights Reserved.</td></tr>
</table> </table>
</BODY> </BODY>

View File

@@ -9,7 +9,7 @@
<a class="qindex" href="index.html">Home</a> &nbsp; <a class="qindex" href="information.html">Information</a> &nbsp; <a class="qindex" href="classes.html">Classes</a> &nbsp; <a class="qindex" href="download.html">Download</a> &nbsp; <a class="qindex" href="usage.html">Usage</a> &nbsp; <a class="qindex" href="maillist.html">Mail List</a> &nbsp; <a class="qindex" href="system.html">Requirements</a> &nbsp; <a class="qindex" href="links.html">Links</a> &nbsp; <a class="qindex" href="faq.html">FAQ</a> &nbsp; <a class="qindex" href="tutorial.html">Tutorial</a></CENTER> <a class="qindex" href="index.html">Home</a> &nbsp; <a class="qindex" href="information.html">Information</a> &nbsp; <a class="qindex" href="classes.html">Classes</a> &nbsp; <a class="qindex" href="download.html">Download</a> &nbsp; <a class="qindex" href="usage.html">Usage</a> &nbsp; <a class="qindex" href="maillist.html">Mail List</a> &nbsp; <a class="qindex" href="system.html">Requirements</a> &nbsp; <a class="qindex" href="links.html">Links</a> &nbsp; <a class="qindex" href="faq.html">FAQ</a> &nbsp; <a class="qindex" href="tutorial.html">Tutorial</a></CENTER>
<HR> <HR>
<!-- Generated by Doxygen 1.6.2 --> <!-- Generated by Doxygen 1.6.2 -->
<div class="navpath"><a class="el" href="dir_f14fd23bc74c76f288031ad23b3f3505.html">include</a> <div class="navpath"><a class="el" href="dir_221deb9bdff892d63ed1e409450a60d2.html">include</a>
</div> </div>
<div class="contents"> <div class="contents">
<h1>FormSwep.h</h1><div class="fragment"><pre class="fragment"><a name="l00001"></a>00001 <span class="preprocessor">#ifndef STK_FORMSWEP_H</span> <h1>FormSwep.h</h1><div class="fragment"><pre class="fragment"><a name="l00001"></a>00001 <span class="preprocessor">#ifndef STK_FORMSWEP_H</span>
@@ -149,7 +149,7 @@
<table> <table>
<tr><td><A HREF="http://ccrma.stanford.edu/software/stk/"><I>The Synthesis ToolKit in C++ (STK)</I></A></td></tr> <tr><td><A HREF="http://ccrma.stanford.edu/software/stk/"><I>The Synthesis ToolKit in C++ (STK)</I></A></td></tr>
<tr><td>&copy;1995-2011 Perry R. Cook and Gary P. Scavone. All Rights Reserved.</td></tr> <tr><td>&copy;1995-2012 Perry R. Cook and Gary P. Scavone. All Rights Reserved.</td></tr>
</table> </table>
</BODY> </BODY>

View File

@@ -0,0 +1,212 @@
<HTML>
<HEAD>
<TITLE>The Synthesis ToolKit in C++ (STK)</TITLE>
<LINK HREF="doxygen.css" REL="stylesheet" TYPE="text/css">
</HEAD>
<BODY BGCOLOR="#FFFFFF">
<CENTER>
<img src="princeton.gif"> &nbsp; <img src="ccrma.gif"> &nbsp; <img src="mcgill.gif"><P>
<a class="qindex" href="index.html">Home</a> &nbsp; <a class="qindex" href="information.html">Information</a> &nbsp; <a class="qindex" href="classes.html">Classes</a> &nbsp; <a class="qindex" href="download.html">Download</a> &nbsp; <a class="qindex" href="usage.html">Usage</a> &nbsp; <a class="qindex" href="maillist.html">Mail List</a> &nbsp; <a class="qindex" href="system.html">Requirements</a> &nbsp; <a class="qindex" href="links.html">Links</a> &nbsp; <a class="qindex" href="faq.html">FAQ</a> &nbsp; <a class="qindex" href="tutorial.html">Tutorial</a></CENTER>
<HR>
<!-- Generated by Doxygen 1.6.2 -->
<div class="navpath"><a class="el" href="dir_221deb9bdff892d63ed1e409450a60d2.html">include</a>
</div>
<div class="contents">
<h1>FreeVerb.h</h1><div class="fragment"><pre class="fragment"><a name="l00001"></a>00001 <span class="preprocessor">#ifndef STK_FREEVERB_H</span>
<a name="l00002"></a>00002 <span class="preprocessor"></span><span class="preprocessor">#define STK_FREEVERB_H</span>
<a name="l00003"></a>00003 <span class="preprocessor"></span>
<a name="l00004"></a>00004 <span class="preprocessor">#include &quot;Effect.h&quot;</span>
<a name="l00005"></a>00005 <span class="preprocessor">#include &quot;Delay.h&quot;</span>
<a name="l00006"></a>00006 <span class="preprocessor">#include &quot;OnePole.h&quot;</span>
<a name="l00007"></a>00007
<a name="l00008"></a>00008 <span class="keyword">namespace </span>stk {
<a name="l00009"></a>00009
<a name="l00010"></a>00010 <span class="comment">/***********************************************************************/</span>
<a name="l00024"></a>00024 <span class="comment">/***********************************************************************/</span>
<a name="l00025"></a>00025
<a name="l00026"></a><a class="code" href="classstk_1_1FreeVerb.html">00026</a> <span class="keyword">class </span><a class="code" href="classstk_1_1FreeVerb.html" title="Jezar at Dreampoint&amp;#39;s FreeVerb, implemented in STK.">FreeVerb</a> : <span class="keyword">public</span> <a class="code" href="classstk_1_1Effect.html" title="STK abstract effects parent class.">Effect</a>
<a name="l00027"></a>00027 {
<a name="l00028"></a>00028 <span class="keyword">public</span>:
<a name="l00030"></a>00030
<a name="l00036"></a>00036 <a class="code" href="classstk_1_1FreeVerb.html#aba12855fab8cddc4119cbd854e86214a" title="FreeVerb Constructor.">FreeVerb</a>();
<a name="l00037"></a>00037
<a name="l00039"></a>00039 <a class="code" href="classstk_1_1FreeVerb.html#a203cd66e21f9ca127139b4948e26dfb9" title="Destructor.">~FreeVerb</a>();
<a name="l00040"></a>00040
<a name="l00042"></a>00042 <span class="keywordtype">void</span> <a class="code" href="classstk_1_1FreeVerb.html#af51f5592b04eba08092c2377debf16a8" title="Set the effect mix [0 = mostly dry, 1 = mostly wet].">setEffectMix</a>( StkFloat mix );
<a name="l00043"></a>00043
<a name="l00045"></a>00045 <span class="keywordtype">void</span> <a class="code" href="classstk_1_1FreeVerb.html#a60133f8378e8a6f775a01d7d3ca44307" title="Set the room size (comb filter feedback gain) parameter [0,1].">setRoomSize</a>( StkFloat value );
<a name="l00046"></a>00046
<a name="l00048"></a>00048 StkFloat <a class="code" href="classstk_1_1FreeVerb.html#af92c7e8a19aa0a265afc72cf45141d27" title="Get the room size (comb filter feedback gain) parameter.">getRoomSize</a>( <span class="keywordtype">void</span> );
<a name="l00049"></a>00049
<a name="l00051"></a>00051 <span class="keywordtype">void</span> <a class="code" href="classstk_1_1FreeVerb.html#a8576f27cfb65f06c019e80772eaed0fb" title="Set the damping parameter [0=low damping, 1=higher damping].">setDamping</a>( StkFloat value );
<a name="l00052"></a>00052
<a name="l00054"></a>00054 StkFloat <a class="code" href="classstk_1_1FreeVerb.html#a5dd46db58e656e5e9f1c1b1545a14036" title="Get the damping parameter.">getDamping</a>( <span class="keywordtype">void</span> );
<a name="l00055"></a>00055
<a name="l00057"></a>00057 <span class="keywordtype">void</span> <a class="code" href="classstk_1_1FreeVerb.html#a6ebb13f2d7d2940a0f49a08a191185c5" title="Set the width (left-right mixing) parameter [0,1].">setWidth</a>( StkFloat value );
<a name="l00058"></a>00058
<a name="l00060"></a>00060 StkFloat <a class="code" href="classstk_1_1FreeVerb.html#abb2e0328715a9446f0d5f625ffc88805" title="Get the width (left-right mixing) parameter.">getWidth</a>( <span class="keywordtype">void</span> );
<a name="l00061"></a>00061
<a name="l00063"></a>00063 <span class="keywordtype">void</span> <a class="code" href="classstk_1_1FreeVerb.html#af1070d0612b81c22031907269cf60cfc" title="Set the mode [frozen = 1, unfrozen = 0].">setMode</a>( <span class="keywordtype">bool</span> isFrozen );
<a name="l00064"></a>00064
<a name="l00066"></a>00066 StkFloat <a class="code" href="classstk_1_1FreeVerb.html#a6510448e8d12077bd475a714aace5177" title="Get the current freeze mode [frozen = 1, unfrozen = 0].">getMode</a>( <span class="keywordtype">void</span> );
<a name="l00067"></a>00067
<a name="l00069"></a>00069 <span class="keywordtype">void</span> <a class="code" href="classstk_1_1FreeVerb.html#a3a6551cb5dcf80f27f683c81f47284f3" title="Clears delay lines, etc.">clear</a>( <span class="keywordtype">void</span> );
<a name="l00070"></a>00070
<a name="l00072"></a>00072
<a name="l00080"></a>00080 StkFloat <a class="code" href="classstk_1_1FreeVerb.html#aab7afe56ff978369328cbf4dd4c4cfa3" title="Return the specified channel value of the last computed stereo frame.">lastOut</a>( <span class="keywordtype">unsigned</span> <span class="keywordtype">int</span> channel = 0 );
<a name="l00081"></a>00081
<a name="l00083"></a>00083
<a name="l00090"></a>00090 StkFloat <a class="code" href="classstk_1_1FreeVerb.html#a0cd5d18a9636029196415879e6a027ee" title="Input one or two samples to the effect and return the specified channel value of...">tick</a>( StkFloat inputL, StkFloat inputR = 0.0, <span class="keywordtype">unsigned</span> <span class="keywordtype">int</span> channel = 0 );
<a name="l00091"></a>00091
<a name="l00093"></a>00093
<a name="l00103"></a>00103 <a class="code" href="classstk_1_1StkFrames.html" title="An STK class to handle vectorized audio data.">StkFrames</a>&amp; <a class="code" href="classstk_1_1FreeVerb.html#a0cd5d18a9636029196415879e6a027ee" title="Input one or two samples to the effect and return the specified channel value of...">tick</a>( <a class="code" href="classstk_1_1StkFrames.html" title="An STK class to handle vectorized audio data.">StkFrames</a>&amp; frames, <span class="keywordtype">unsigned</span> <span class="keywordtype">int</span> channel = 0 );
<a name="l00104"></a>00104
<a name="l00106"></a>00106
<a name="l00117"></a>00117 <a class="code" href="classstk_1_1StkFrames.html" title="An STK class to handle vectorized audio data.">StkFrames</a>&amp; <a class="code" href="classstk_1_1FreeVerb.html#a0cd5d18a9636029196415879e6a027ee" title="Input one or two samples to the effect and return the specified channel value of...">tick</a>( <a class="code" href="classstk_1_1StkFrames.html" title="An STK class to handle vectorized audio data.">StkFrames</a>&amp; iFrames, <a class="code" href="classstk_1_1StkFrames.html" title="An STK class to handle vectorized audio data.">StkFrames</a> &amp;oFrames, <span class="keywordtype">unsigned</span> <span class="keywordtype">int</span> iChannel = 0, <span class="keywordtype">unsigned</span> <span class="keywordtype">int</span> oChannel = 0 );
<a name="l00118"></a>00118
<a name="l00119"></a>00119 <span class="keyword">protected</span>:
<a name="l00121"></a>00121 <span class="keywordtype">void</span> <a class="code" href="classstk_1_1FreeVerb.html#a5be3a015730462494a5807a86cd693d1" title="Update interdependent parameters.">update</a>( <span class="keywordtype">void</span> );
<a name="l00122"></a>00122
<a name="l00123"></a>00123 <span class="comment">// Clamp very small floats to zero, version from</span>
<a name="l00124"></a>00124 <span class="comment">// http://music.columbia.edu/pipermail/linux-audio-user/2004-July/013489.html .</span>
<a name="l00125"></a>00125 <span class="comment">// However, this is for 32-bit floats only.</span>
<a name="l00126"></a>00126 <span class="comment">//static inline StkFloat undenormalize( volatile StkFloat s ) { </span>
<a name="l00127"></a>00127 <span class="comment">// s += 9.8607615E-32f; </span>
<a name="l00128"></a>00128 <span class="comment">// return s - 9.8607615E-32f; </span>
<a name="l00129"></a>00129 <span class="comment">//}</span>
<a name="l00130"></a>00130
<a name="l00131"></a>00131 <span class="keyword">static</span> <span class="keyword">const</span> <span class="keywordtype">int</span> nCombs = 8;
<a name="l00132"></a>00132 <span class="keyword">static</span> <span class="keyword">const</span> <span class="keywordtype">int</span> nAllpasses = 4;
<a name="l00133"></a>00133 <span class="keyword">static</span> <span class="keyword">const</span> <span class="keywordtype">int</span> stereoSpread = 23;
<a name="l00134"></a>00134 <span class="keyword">static</span> <span class="keyword">const</span> StkFloat fixedGain;
<a name="l00135"></a>00135 <span class="keyword">static</span> <span class="keyword">const</span> StkFloat scaleWet;
<a name="l00136"></a>00136 <span class="keyword">static</span> <span class="keyword">const</span> StkFloat scaleDry;
<a name="l00137"></a>00137 <span class="keyword">static</span> <span class="keyword">const</span> StkFloat scaleDamp;
<a name="l00138"></a>00138 <span class="keyword">static</span> <span class="keyword">const</span> StkFloat scaleRoom;
<a name="l00139"></a>00139 <span class="keyword">static</span> <span class="keyword">const</span> StkFloat offsetRoom;
<a name="l00140"></a>00140
<a name="l00141"></a>00141 <span class="comment">// Delay line lengths for 44100Hz sampling rate.</span>
<a name="l00142"></a>00142 <span class="keyword">static</span> <span class="keywordtype">int</span> cDelayLengths[nCombs];
<a name="l00143"></a>00143 <span class="keyword">static</span> <span class="keywordtype">int</span> aDelayLengths[nAllpasses];
<a name="l00144"></a>00144
<a name="l00145"></a>00145 StkFloat g_; <span class="comment">// allpass coefficient</span>
<a name="l00146"></a>00146 StkFloat gain_;
<a name="l00147"></a>00147 StkFloat roomSizeMem_, roomSize_;
<a name="l00148"></a>00148 StkFloat dampMem_, damp_;
<a name="l00149"></a>00149 StkFloat wet1_, wet2_;
<a name="l00150"></a>00150 StkFloat dry_;
<a name="l00151"></a>00151 StkFloat width_;
<a name="l00152"></a>00152 <span class="keywordtype">bool</span> frozenMode_;
<a name="l00153"></a>00153
<a name="l00154"></a>00154 <span class="comment">// LBFC: Lowpass Feedback Comb Filters</span>
<a name="l00155"></a>00155 <a class="code" href="classstk_1_1Delay.html" title="STK non-interpolating delay line class.">Delay</a> combDelayL_[nCombs];
<a name="l00156"></a>00156 <a class="code" href="classstk_1_1Delay.html" title="STK non-interpolating delay line class.">Delay</a> combDelayR_[nCombs];
<a name="l00157"></a>00157 <a class="code" href="classstk_1_1OnePole.html" title="STK one-pole filter class.">OnePole</a> combLPL_[nCombs];
<a name="l00158"></a>00158 <a class="code" href="classstk_1_1OnePole.html" title="STK one-pole filter class.">OnePole</a> combLPR_[nCombs];
<a name="l00159"></a>00159
<a name="l00160"></a>00160 <span class="comment">// AP: Allpass Filters</span>
<a name="l00161"></a>00161 <a class="code" href="classstk_1_1Delay.html" title="STK non-interpolating delay line class.">Delay</a> allPassDelayL_[nAllpasses];
<a name="l00162"></a>00162 <a class="code" href="classstk_1_1Delay.html" title="STK non-interpolating delay line class.">Delay</a> allPassDelayR_[nAllpasses];
<a name="l00163"></a>00163 };
<a name="l00164"></a>00164
<a name="l00165"></a><a class="code" href="classstk_1_1FreeVerb.html#aab7afe56ff978369328cbf4dd4c4cfa3">00165</a> <span class="keyword">inline</span> StkFloat <a class="code" href="classstk_1_1FreeVerb.html#aab7afe56ff978369328cbf4dd4c4cfa3" title="Return the specified channel value of the last computed stereo frame.">FreeVerb :: lastOut</a>( <span class="keywordtype">unsigned</span> <span class="keywordtype">int</span> channel )
<a name="l00166"></a>00166 {
<a name="l00167"></a>00167 <span class="preprocessor">#if defined(_STK_DEBUG_)</span>
<a name="l00168"></a>00168 <span class="preprocessor"></span> <span class="keywordflow">if</span> ( channel &gt; 1 ) {
<a name="l00169"></a>00169 oStream_ &lt;&lt; <span class="stringliteral">&quot;FreeVerb::lastOut(): channel argument must be less than 2!&quot;</span>;
<a name="l00170"></a>00170 <a class="code" href="classstk_1_1Stk.html#a48ac73a0d8ca28445ba1a054e1f061ff" title="Static function for error reporting and handling using c-strings.">handleError</a>( StkError::FUNCTION_ARGUMENT );
<a name="l00171"></a>00171 }
<a name="l00172"></a>00172 <span class="preprocessor">#endif</span>
<a name="l00173"></a>00173 <span class="preprocessor"></span>
<a name="l00174"></a>00174 <span class="keywordflow">return</span> lastFrame_[channel];
<a name="l00175"></a>00175 }
<a name="l00176"></a>00176
<a name="l00177"></a><a class="code" href="classstk_1_1FreeVerb.html#a0cd5d18a9636029196415879e6a027ee">00177</a> <span class="keyword">inline</span> StkFloat <a class="code" href="classstk_1_1FreeVerb.html#a0cd5d18a9636029196415879e6a027ee" title="Input one or two samples to the effect and return the specified channel value of...">FreeVerb::tick</a>( StkFloat inputL, StkFloat inputR, <span class="keywordtype">unsigned</span> <span class="keywordtype">int</span> channel )
<a name="l00178"></a>00178 {
<a name="l00179"></a>00179 <span class="preprocessor">#if defined(_STK_DEBUG_)</span>
<a name="l00180"></a>00180 <span class="preprocessor"></span> <span class="keywordflow">if</span> ( channel &gt; 1 ) {
<a name="l00181"></a>00181 oStream_ &lt;&lt; <span class="stringliteral">&quot;FreeVerb::tick(): channel argument must be less than 2!&quot;</span>;
<a name="l00182"></a>00182 <a class="code" href="classstk_1_1Stk.html#a48ac73a0d8ca28445ba1a054e1f061ff" title="Static function for error reporting and handling using c-strings.">handleError</a>(StkError::FUNCTION_ARGUMENT);
<a name="l00183"></a>00183 }
<a name="l00184"></a>00184 <span class="preprocessor">#endif</span>
<a name="l00185"></a>00185 <span class="preprocessor"></span>
<a name="l00186"></a>00186 <span class="keywordflow">if</span> ( !inputR ) {
<a name="l00187"></a>00187 inputR = inputL;
<a name="l00188"></a>00188 }
<a name="l00189"></a>00189
<a name="l00190"></a>00190 StkFloat fInput = (inputL + inputR) * gain_;
<a name="l00191"></a>00191 StkFloat outL = 0.0;
<a name="l00192"></a>00192 StkFloat outR = 0.0;
<a name="l00193"></a>00193
<a name="l00194"></a>00194 <span class="comment">// Parallel LBCF filters</span>
<a name="l00195"></a>00195 <span class="keywordflow">for</span> ( <span class="keywordtype">int</span> i = 0; i &lt; nCombs; i++ ) {
<a name="l00196"></a>00196 <span class="comment">// Left channel</span>
<a name="l00197"></a>00197 <span class="comment">//StkFloat yn = fInput + (roomSize_ * FreeVerb::undenormalize(combLPL_[i].tick(FreeVerb::undenormalize(combDelayL_[i].nextOut()))));</span>
<a name="l00198"></a>00198 StkFloat yn = fInput + (roomSize_ * combLPL_[i].<a class="code" href="classstk_1_1OnePole.html#a3c83b6d43f76bec06f11caa9de76881e" title="Input one sample to the filter and return one output.">tick</a>( combDelayL_[i].nextOut() ) );
<a name="l00199"></a>00199 combDelayL_[i].<a class="code" href="classstk_1_1Delay.html#aa1a929e0e324417b8a55cbf8770532e9" title="Input one sample to the filter and return one output.">tick</a>(yn);
<a name="l00200"></a>00200 outL += yn;
<a name="l00201"></a>00201
<a name="l00202"></a>00202 <span class="comment">// Right channel</span>
<a name="l00203"></a>00203 <span class="comment">//yn = fInput + (roomSize_ * FreeVerb::undenormalize(combLPR_[i].tick(FreeVerb::undenormalize(combDelayR_[i].nextOut()))));</span>
<a name="l00204"></a>00204 yn = fInput + (roomSize_ * combLPR_[i].<a class="code" href="classstk_1_1OnePole.html#a3c83b6d43f76bec06f11caa9de76881e" title="Input one sample to the filter and return one output.">tick</a>( combDelayR_[i].nextOut() ) );
<a name="l00205"></a>00205 combDelayR_[i].<a class="code" href="classstk_1_1Delay.html#aa1a929e0e324417b8a55cbf8770532e9" title="Input one sample to the filter and return one output.">tick</a>(yn);
<a name="l00206"></a>00206 outR += yn;
<a name="l00207"></a>00207 }
<a name="l00208"></a>00208
<a name="l00209"></a>00209 <span class="comment">// Series allpass filters</span>
<a name="l00210"></a>00210 <span class="keywordflow">for</span> ( <span class="keywordtype">int</span> i = 0; i &lt; nAllpasses; i++ ) {
<a name="l00211"></a>00211 <span class="comment">// Left channel</span>
<a name="l00212"></a>00212 <span class="comment">//StkFloat vn_m = FreeVerb::undenormalize(allPassDelayL_[i].nextOut());</span>
<a name="l00213"></a>00213 StkFloat vn_m = allPassDelayL_[i].<a class="code" href="classstk_1_1Delay.html#a2433e3246551f4fdf1366884cd2ae426" title="Return the value that will be output by the next call to tick().">nextOut</a>();
<a name="l00214"></a>00214 StkFloat vn = outL + (g_ * vn_m);
<a name="l00215"></a>00215 allPassDelayL_[i].<a class="code" href="classstk_1_1Delay.html#aa1a929e0e324417b8a55cbf8770532e9" title="Input one sample to the filter and return one output.">tick</a>(vn);
<a name="l00216"></a>00216
<a name="l00217"></a>00217 <span class="comment">// calculate output</span>
<a name="l00218"></a>00218 outL = -vn + (1.0 + g_)*vn_m;
<a name="l00219"></a>00219
<a name="l00220"></a>00220 <span class="comment">// Right channel</span>
<a name="l00221"></a>00221 <span class="comment">//vn_m = FreeVerb::undenormalize(allPassDelayR_[i].nextOut());</span>
<a name="l00222"></a>00222 vn_m = allPassDelayR_[i].<a class="code" href="classstk_1_1Delay.html#a2433e3246551f4fdf1366884cd2ae426" title="Return the value that will be output by the next call to tick().">nextOut</a>();
<a name="l00223"></a>00223 vn = outR + (g_ * vn_m);
<a name="l00224"></a>00224 allPassDelayR_[i].<a class="code" href="classstk_1_1Delay.html#aa1a929e0e324417b8a55cbf8770532e9" title="Input one sample to the filter and return one output.">tick</a>(vn);
<a name="l00225"></a>00225
<a name="l00226"></a>00226 <span class="comment">// calculate output</span>
<a name="l00227"></a>00227 outR = -vn + (1.0 + g_)*vn_m;
<a name="l00228"></a>00228 }
<a name="l00229"></a>00229
<a name="l00230"></a>00230 <span class="comment">// Mix output</span>
<a name="l00231"></a>00231 lastFrame_[0] = outL*wet1_ + outR*wet2_ + inputL*dry_;
<a name="l00232"></a>00232 lastFrame_[1] = outR*wet1_ + outL*wet2_ + inputR*dry_;
<a name="l00233"></a>00233
<a name="l00234"></a>00234 <span class="comment">/*</span>
<a name="l00235"></a>00235 <span class="comment"> // Hard limiter ... there&#39;s not much else we can do at this point</span>
<a name="l00236"></a>00236 <span class="comment"> if ( lastFrame_[0] &gt;= 1.0 ) {</span>
<a name="l00237"></a>00237 <span class="comment"> lastFrame_[0] = 0.9999;</span>
<a name="l00238"></a>00238 <span class="comment"> }</span>
<a name="l00239"></a>00239 <span class="comment"> if ( lastFrame_[0] &lt;= -1.0 ) {</span>
<a name="l00240"></a>00240 <span class="comment"> lastFrame_[0] = -0.9999;</span>
<a name="l00241"></a>00241 <span class="comment"> }</span>
<a name="l00242"></a>00242 <span class="comment"> if ( lastFrame_[1] &gt;= 1.0 ) {</span>
<a name="l00243"></a>00243 <span class="comment"> lastFrame_[1] = 0.9999;</span>
<a name="l00244"></a>00244 <span class="comment"> }</span>
<a name="l00245"></a>00245 <span class="comment"> if ( lastFrame_[1] &lt;= -1.0 ) {</span>
<a name="l00246"></a>00246 <span class="comment"> lastFrame_[1] = -0.9999;</span>
<a name="l00247"></a>00247 <span class="comment"> }</span>
<a name="l00248"></a>00248 <span class="comment"> */</span>
<a name="l00249"></a>00249
<a name="l00250"></a>00250 <span class="keywordflow">return</span> lastFrame_[channel];
<a name="l00251"></a>00251 }
<a name="l00252"></a>00252
<a name="l00253"></a>00253 }
<a name="l00254"></a>00254
<a name="l00255"></a>00255 <span class="preprocessor">#endif</span>
</pre></div></div>
<HR>
<table>
<tr><td><A HREF="http://ccrma.stanford.edu/software/stk/"><I>The Synthesis ToolKit in C++ (STK)</I></A></td></tr>
<tr><td>&copy;1995-2012 Perry R. Cook and Gary P. Scavone. All Rights Reserved.</td></tr>
</table>
</BODY>
</HTML>

View File

@@ -9,7 +9,7 @@
<a class="qindex" href="index.html">Home</a> &nbsp; <a class="qindex" href="information.html">Information</a> &nbsp; <a class="qindex" href="classes.html">Classes</a> &nbsp; <a class="qindex" href="download.html">Download</a> &nbsp; <a class="qindex" href="usage.html">Usage</a> &nbsp; <a class="qindex" href="maillist.html">Mail List</a> &nbsp; <a class="qindex" href="system.html">Requirements</a> &nbsp; <a class="qindex" href="links.html">Links</a> &nbsp; <a class="qindex" href="faq.html">FAQ</a> &nbsp; <a class="qindex" href="tutorial.html">Tutorial</a></CENTER> <a class="qindex" href="index.html">Home</a> &nbsp; <a class="qindex" href="information.html">Information</a> &nbsp; <a class="qindex" href="classes.html">Classes</a> &nbsp; <a class="qindex" href="download.html">Download</a> &nbsp; <a class="qindex" href="usage.html">Usage</a> &nbsp; <a class="qindex" href="maillist.html">Mail List</a> &nbsp; <a class="qindex" href="system.html">Requirements</a> &nbsp; <a class="qindex" href="links.html">Links</a> &nbsp; <a class="qindex" href="faq.html">FAQ</a> &nbsp; <a class="qindex" href="tutorial.html">Tutorial</a></CENTER>
<HR> <HR>
<!-- Generated by Doxygen 1.6.2 --> <!-- Generated by Doxygen 1.6.2 -->
<div class="navpath"><a class="el" href="dir_f14fd23bc74c76f288031ad23b3f3505.html">include</a> <div class="navpath"><a class="el" href="dir_221deb9bdff892d63ed1e409450a60d2.html">include</a>
</div> </div>
<div class="contents"> <div class="contents">
<h1>Function.h</h1><div class="fragment"><pre class="fragment"><a name="l00001"></a>00001 <span class="preprocessor">#ifndef STK_FUNCTION_H</span> <h1>Function.h</h1><div class="fragment"><pre class="fragment"><a name="l00001"></a>00001 <span class="preprocessor">#ifndef STK_FUNCTION_H</span>
@@ -46,7 +46,7 @@
<table> <table>
<tr><td><A HREF="http://ccrma.stanford.edu/software/stk/"><I>The Synthesis ToolKit in C++ (STK)</I></A></td></tr> <tr><td><A HREF="http://ccrma.stanford.edu/software/stk/"><I>The Synthesis ToolKit in C++ (STK)</I></A></td></tr>
<tr><td>&copy;1995-2011 Perry R. Cook and Gary P. Scavone. All Rights Reserved.</td></tr> <tr><td>&copy;1995-2012 Perry R. Cook and Gary P. Scavone. All Rights Reserved.</td></tr>
</table> </table>
</BODY> </BODY>

View File

@@ -9,7 +9,7 @@
<a class="qindex" href="index.html">Home</a> &nbsp; <a class="qindex" href="information.html">Information</a> &nbsp; <a class="qindex" href="classes.html">Classes</a> &nbsp; <a class="qindex" href="download.html">Download</a> &nbsp; <a class="qindex" href="usage.html">Usage</a> &nbsp; <a class="qindex" href="maillist.html">Mail List</a> &nbsp; <a class="qindex" href="system.html">Requirements</a> &nbsp; <a class="qindex" href="links.html">Links</a> &nbsp; <a class="qindex" href="faq.html">FAQ</a> &nbsp; <a class="qindex" href="tutorial.html">Tutorial</a></CENTER> <a class="qindex" href="index.html">Home</a> &nbsp; <a class="qindex" href="information.html">Information</a> &nbsp; <a class="qindex" href="classes.html">Classes</a> &nbsp; <a class="qindex" href="download.html">Download</a> &nbsp; <a class="qindex" href="usage.html">Usage</a> &nbsp; <a class="qindex" href="maillist.html">Mail List</a> &nbsp; <a class="qindex" href="system.html">Requirements</a> &nbsp; <a class="qindex" href="links.html">Links</a> &nbsp; <a class="qindex" href="faq.html">FAQ</a> &nbsp; <a class="qindex" href="tutorial.html">Tutorial</a></CENTER>
<HR> <HR>
<!-- Generated by Doxygen 1.6.2 --> <!-- Generated by Doxygen 1.6.2 -->
<div class="navpath"><a class="el" href="dir_f14fd23bc74c76f288031ad23b3f3505.html">include</a> <div class="navpath"><a class="el" href="dir_221deb9bdff892d63ed1e409450a60d2.html">include</a>
</div> </div>
<div class="contents"> <div class="contents">
<h1>Generator.h</h1><div class="fragment"><pre class="fragment"><a name="l00001"></a>00001 <span class="preprocessor">#ifndef STK_GENERATOR_H</span> <h1>Generator.h</h1><div class="fragment"><pre class="fragment"><a name="l00001"></a>00001 <span class="preprocessor">#ifndef STK_GENERATOR_H</span>
@@ -48,7 +48,7 @@
<table> <table>
<tr><td><A HREF="http://ccrma.stanford.edu/software/stk/"><I>The Synthesis ToolKit in C++ (STK)</I></A></td></tr> <tr><td><A HREF="http://ccrma.stanford.edu/software/stk/"><I>The Synthesis ToolKit in C++ (STK)</I></A></td></tr>
<tr><td>&copy;1995-2011 Perry R. Cook and Gary P. Scavone. All Rights Reserved.</td></tr> <tr><td>&copy;1995-2012 Perry R. Cook and Gary P. Scavone. All Rights Reserved.</td></tr>
</table> </table>
</BODY> </BODY>

View File

@@ -9,7 +9,7 @@
<a class="qindex" href="index.html">Home</a> &nbsp; <a class="qindex" href="information.html">Information</a> &nbsp; <a class="qindex" href="classes.html">Classes</a> &nbsp; <a class="qindex" href="download.html">Download</a> &nbsp; <a class="qindex" href="usage.html">Usage</a> &nbsp; <a class="qindex" href="maillist.html">Mail List</a> &nbsp; <a class="qindex" href="system.html">Requirements</a> &nbsp; <a class="qindex" href="links.html">Links</a> &nbsp; <a class="qindex" href="faq.html">FAQ</a> &nbsp; <a class="qindex" href="tutorial.html">Tutorial</a></CENTER> <a class="qindex" href="index.html">Home</a> &nbsp; <a class="qindex" href="information.html">Information</a> &nbsp; <a class="qindex" href="classes.html">Classes</a> &nbsp; <a class="qindex" href="download.html">Download</a> &nbsp; <a class="qindex" href="usage.html">Usage</a> &nbsp; <a class="qindex" href="maillist.html">Mail List</a> &nbsp; <a class="qindex" href="system.html">Requirements</a> &nbsp; <a class="qindex" href="links.html">Links</a> &nbsp; <a class="qindex" href="faq.html">FAQ</a> &nbsp; <a class="qindex" href="tutorial.html">Tutorial</a></CENTER>
<HR> <HR>
<!-- Generated by Doxygen 1.6.2 --> <!-- Generated by Doxygen 1.6.2 -->
<div class="navpath"><a class="el" href="dir_f14fd23bc74c76f288031ad23b3f3505.html">include</a> <div class="navpath"><a class="el" href="dir_221deb9bdff892d63ed1e409450a60d2.html">include</a>
</div> </div>
<div class="contents"> <div class="contents">
<h1>Granulate.h</h1><div class="fragment"><pre class="fragment"><a name="l00001"></a>00001 <span class="preprocessor">#ifndef STK_GRANULATE_H</span> <h1>Granulate.h</h1><div class="fragment"><pre class="fragment"><a name="l00001"></a>00001 <span class="preprocessor">#ifndef STK_GRANULATE_H</span>
@@ -151,7 +151,7 @@
<table> <table>
<tr><td><A HREF="http://ccrma.stanford.edu/software/stk/"><I>The Synthesis ToolKit in C++ (STK)</I></A></td></tr> <tr><td><A HREF="http://ccrma.stanford.edu/software/stk/"><I>The Synthesis ToolKit in C++ (STK)</I></A></td></tr>
<tr><td>&copy;1995-2011 Perry R. Cook and Gary P. Scavone. All Rights Reserved.</td></tr> <tr><td>&copy;1995-2012 Perry R. Cook and Gary P. Scavone. All Rights Reserved.</td></tr>
</table> </table>
</BODY> </BODY>

View File

@@ -0,0 +1,153 @@
<HTML>
<HEAD>
<TITLE>The Synthesis ToolKit in C++ (STK)</TITLE>
<LINK HREF="doxygen.css" REL="stylesheet" TYPE="text/css">
</HEAD>
<BODY BGCOLOR="#FFFFFF">
<CENTER>
<img src="princeton.gif"> &nbsp; <img src="ccrma.gif"> &nbsp; <img src="mcgill.gif"><P>
<a class="qindex" href="index.html">Home</a> &nbsp; <a class="qindex" href="information.html">Information</a> &nbsp; <a class="qindex" href="classes.html">Classes</a> &nbsp; <a class="qindex" href="download.html">Download</a> &nbsp; <a class="qindex" href="usage.html">Usage</a> &nbsp; <a class="qindex" href="maillist.html">Mail List</a> &nbsp; <a class="qindex" href="system.html">Requirements</a> &nbsp; <a class="qindex" href="links.html">Links</a> &nbsp; <a class="qindex" href="faq.html">FAQ</a> &nbsp; <a class="qindex" href="tutorial.html">Tutorial</a></CENTER>
<HR>
<!-- Generated by Doxygen 1.6.2 -->
<div class="navpath"><a class="el" href="dir_221deb9bdff892d63ed1e409450a60d2.html">include</a>
</div>
<div class="contents">
<h1>Guitar.h</h1><div class="fragment"><pre class="fragment"><a name="l00001"></a>00001 <span class="preprocessor">#ifndef STK_GUITAR_H</span>
<a name="l00002"></a>00002 <span class="preprocessor"></span><span class="preprocessor">#define STK_GUITAR_H</span>
<a name="l00003"></a>00003 <span class="preprocessor"></span>
<a name="l00004"></a>00004 <span class="preprocessor">#include &quot;Stk.h&quot;</span>
<a name="l00005"></a>00005 <span class="preprocessor">#include &quot;Twang.h&quot;</span>
<a name="l00006"></a>00006 <span class="preprocessor">#include &quot;OnePole.h&quot;</span>
<a name="l00007"></a>00007 <span class="preprocessor">#include &quot;OneZero.h&quot;</span>
<a name="l00008"></a>00008
<a name="l00009"></a>00009 <span class="keyword">namespace </span>stk {
<a name="l00010"></a>00010
<a name="l00011"></a>00011 <span class="comment">/***************************************************/</span>
<a name="l00039"></a>00039 <span class="comment">/***************************************************/</span>
<a name="l00040"></a>00040
<a name="l00041"></a><a class="code" href="classstk_1_1Guitar.html">00041</a> <span class="keyword">class </span><a class="code" href="classstk_1_1Guitar.html" title="STK guitar model class.">Guitar</a> : <span class="keyword">public</span> <a class="code" href="classstk_1_1Stk.html" title="STK base class.">Stk</a>
<a name="l00042"></a>00042 {
<a name="l00043"></a>00043 <span class="keyword">public</span>:
<a name="l00045"></a>00045 <a class="code" href="classstk_1_1Guitar.html#a7eac8ce2d2d6db176770639fe547bcb2" title="Class constructor, specifying an arbitrary number of strings (default = 6).">Guitar</a>( <span class="keywordtype">unsigned</span> <span class="keywordtype">int</span> nStrings = 6, std::string bodyfile = <span class="stringliteral">&quot;&quot;</span> );
<a name="l00046"></a>00046
<a name="l00048"></a>00048 <span class="keywordtype">void</span> <a class="code" href="classstk_1_1Guitar.html#adb7355a9bcf6e94d9db4809175cbae1b" title="Reset and clear all internal state.">clear</a>( <span class="keywordtype">void</span> );
<a name="l00049"></a>00049
<a name="l00051"></a>00051
<a name="l00056"></a>00056 <span class="keywordtype">void</span> <a class="code" href="classstk_1_1Guitar.html#a95c212c2d6a72ee93c2000f0308df9cc" title="Set the string excitation, using either a soundfile or computed noise.">setBodyFile</a>( std::string bodyfile = <span class="stringliteral">&quot;&quot;</span> );
<a name="l00057"></a>00057
<a name="l00059"></a>00059
<a name="l00063"></a>00063 <span class="keywordtype">void</span> <a class="code" href="classstk_1_1Guitar.html#a4a2098002e20c5aac3927e2c080c64ca" title="Set the pluck position for one or all strings.">setPluckPosition</a>( StkFloat position, <span class="keywordtype">int</span> <span class="keywordtype">string</span> = -1 );
<a name="l00064"></a>00064
<a name="l00066"></a>00066
<a name="l00070"></a>00070 <span class="keywordtype">void</span> <a class="code" href="classstk_1_1Guitar.html#adc1d5eadc46cbcdb8ddcf8b0e4aae9db" title="Set the loop gain for one or all strings.">setLoopGain</a>( StkFloat gain, <span class="keywordtype">int</span> <span class="keywordtype">string</span> = -1 );
<a name="l00071"></a>00071
<a name="l00073"></a>00073 <span class="keywordtype">void</span> <a class="code" href="classstk_1_1Guitar.html#a8812168a7ffc5318d42a25b1cfda7bff" title="Set instrument parameters for a particular frequency.">setFrequency</a>( StkFloat frequency, <span class="keywordtype">unsigned</span> <span class="keywordtype">int</span> <span class="keywordtype">string</span> = 0 );
<a name="l00074"></a>00074
<a name="l00076"></a>00076
<a name="l00080"></a>00080 <span class="keywordtype">void</span> <a class="code" href="classstk_1_1Guitar.html#a9dec744a074dba5c869b2aec1198ada7" title="Start a note with the given frequency and amplitude.">noteOn</a>( StkFloat frequency, StkFloat amplitude, <span class="keywordtype">unsigned</span> <span class="keywordtype">int</span> <span class="keywordtype">string</span> = 0 );
<a name="l00081"></a>00081
<a name="l00083"></a>00083 <span class="keywordtype">void</span> <a class="code" href="classstk_1_1Guitar.html#accf5a4b16602560591ed010245a297d4" title="Stop a note with the given amplitude (speed of decay).">noteOff</a>( StkFloat amplitude, <span class="keywordtype">unsigned</span> <span class="keywordtype">int</span> <span class="keywordtype">string</span> = 0 );
<a name="l00084"></a>00084
<a name="l00086"></a>00086
<a name="l00090"></a>00090 <span class="keywordtype">void</span> <a class="code" href="classstk_1_1Guitar.html#ae9900d35d4f5ae7a67dfcc62a1175aba" title="Perform the control change specified by number and value (0.0 - 128.0).">controlChange</a>( <span class="keywordtype">int</span> number, StkFloat value, <span class="keywordtype">int</span> <span class="keywordtype">string</span> = -1 );
<a name="l00091"></a>00091
<a name="l00093"></a><a class="code" href="classstk_1_1Guitar.html#aee53aa17d760670cc875c06f1de6af91">00093</a> StkFloat <a class="code" href="classstk_1_1Guitar.html#aee53aa17d760670cc875c06f1de6af91" title="Return the last computed output value.">lastOut</a>( <span class="keywordtype">void</span> ) { <span class="keywordflow">return</span> lastFrame_[0]; };
<a name="l00094"></a>00094
<a name="l00096"></a>00096 StkFloat <a class="code" href="classstk_1_1Guitar.html#a47223c1ef411141ae04b0971497b5fb8" title="Take an optional input sample and compute one output sample.">tick</a>( StkFloat input = 0.0 );
<a name="l00097"></a>00097
<a name="l00099"></a>00099
<a name="l00107"></a>00107 <a class="code" href="classstk_1_1StkFrames.html" title="An STK class to handle vectorized audio data.">StkFrames</a>&amp; <a class="code" href="classstk_1_1Guitar.html#a47223c1ef411141ae04b0971497b5fb8" title="Take an optional input sample and compute one output sample.">tick</a>( <a class="code" href="classstk_1_1StkFrames.html" title="An STK class to handle vectorized audio data.">StkFrames</a>&amp; frames, <span class="keywordtype">unsigned</span> <span class="keywordtype">int</span> channel = 0 );
<a name="l00108"></a>00108
<a name="l00110"></a>00110
<a name="l00118"></a>00118 <a class="code" href="classstk_1_1StkFrames.html" title="An STK class to handle vectorized audio data.">StkFrames</a>&amp; <a class="code" href="classstk_1_1Guitar.html#a47223c1ef411141ae04b0971497b5fb8" title="Take an optional input sample and compute one output sample.">tick</a>( <a class="code" href="classstk_1_1StkFrames.html" title="An STK class to handle vectorized audio data.">StkFrames</a>&amp; iFrames, <a class="code" href="classstk_1_1StkFrames.html" title="An STK class to handle vectorized audio data.">StkFrames</a> &amp;oFrames, <span class="keywordtype">unsigned</span> <span class="keywordtype">int</span> iChannel = 0, <span class="keywordtype">unsigned</span> <span class="keywordtype">int</span> oChannel = 0 );
<a name="l00119"></a>00119
<a name="l00120"></a>00120 <span class="keyword">protected</span>:
<a name="l00121"></a>00121
<a name="l00122"></a>00122 std::vector&lt; stk::Twang &gt; strings_;
<a name="l00123"></a>00123 std::vector&lt; int &gt; stringState_; <span class="comment">// 0 = off, 1 = decaying, 2 = on</span>
<a name="l00124"></a>00124 std::vector&lt; unsigned int &gt; decayCounter_;
<a name="l00125"></a>00125 std::vector&lt; unsigned int &gt; filePointer_;
<a name="l00126"></a>00126 std::vector&lt; StkFloat &gt; pluckGains_;
<a name="l00127"></a>00127
<a name="l00128"></a>00128 <a class="code" href="classstk_1_1OnePole.html" title="STK one-pole filter class.">OnePole</a> pickFilter_;
<a name="l00129"></a>00129 <a class="code" href="classstk_1_1OnePole.html" title="STK one-pole filter class.">OnePole</a> couplingFilter_;
<a name="l00130"></a>00130 StkFloat couplingGain_;
<a name="l00131"></a>00131 <a class="code" href="classstk_1_1StkFrames.html" title="An STK class to handle vectorized audio data.">StkFrames</a> excitation_;
<a name="l00132"></a>00132 <a class="code" href="classstk_1_1StkFrames.html" title="An STK class to handle vectorized audio data.">StkFrames</a> lastFrame_;
<a name="l00133"></a>00133 };
<a name="l00134"></a>00134
<a name="l00135"></a><a class="code" href="classstk_1_1Guitar.html#a47223c1ef411141ae04b0971497b5fb8">00135</a> <span class="keyword">inline</span> StkFloat <a class="code" href="classstk_1_1Guitar.html#a47223c1ef411141ae04b0971497b5fb8" title="Take an optional input sample and compute one output sample.">Guitar :: tick</a>( StkFloat input )
<a name="l00136"></a>00136 {
<a name="l00137"></a>00137 StkFloat temp, output = 0.0;
<a name="l00138"></a>00138 lastFrame_[0] /= strings_.size(); <span class="comment">// evenly spread coupling across strings</span>
<a name="l00139"></a>00139 <span class="keywordflow">for</span> ( <span class="keywordtype">unsigned</span> <span class="keywordtype">int</span> i=0; i&lt;strings_.size(); i++ ) {
<a name="l00140"></a>00140 <span class="keywordflow">if</span> ( stringState_[i] ) {
<a name="l00141"></a>00141 temp = input;
<a name="l00142"></a>00142 <span class="comment">// If pluckGain &lt; 0.2, let string ring but don&#39;t pluck it.</span>
<a name="l00143"></a>00143 <span class="keywordflow">if</span> ( filePointer_[i] &lt; excitation_.<a class="code" href="classstk_1_1StkFrames.html#a05b1ab6fa750a8221a7d65c30e0cdab9" title="Return the number of sample frames represented by the data.">frames</a>() &amp;&amp; pluckGains_[i] &gt; 0.2 )
<a name="l00144"></a>00144 temp += pluckGains_[i] * excitation_[filePointer_[i]++];
<a name="l00145"></a>00145 temp += couplingGain_ * couplingFilter_.<a class="code" href="classstk_1_1OnePole.html#a3c83b6d43f76bec06f11caa9de76881e" title="Input one sample to the filter and return one output.">tick</a>( lastFrame_[0] ); <span class="comment">// bridge coupling</span>
<a name="l00146"></a>00146 output += strings_[i].tick( temp );
<a name="l00147"></a>00147 <span class="comment">// Check if string energy has decayed sufficiently to turn it off.</span>
<a name="l00148"></a>00148 <span class="keywordflow">if</span> ( stringState_[i] == 1 ) {
<a name="l00149"></a>00149 <span class="keywordflow">if</span> ( fabs( strings_[i].<a class="code" href="classstk_1_1Guitar.html#aee53aa17d760670cc875c06f1de6af91" title="Return the last computed output value.">lastOut</a>() ) &lt; 0.001 ) decayCounter_[i]++;
<a name="l00150"></a>00150 <span class="keywordflow">else</span> decayCounter_[i] = 0;
<a name="l00151"></a>00151 <span class="keywordflow">if</span> ( decayCounter_[i] &gt; (<span class="keywordtype">unsigned</span> <span class="keywordtype">int</span>) floor( 0.1 * <a class="code" href="classstk_1_1Stk.html#a5fbe37000a611ce56075ee7d8936472d" title="Static method that returns the current STK sample rate.">Stk::sampleRate</a>() ) ) {
<a name="l00152"></a>00152 stringState_[i] = 0;
<a name="l00153"></a>00153 decayCounter_[i] = 0;
<a name="l00154"></a>00154 }
<a name="l00155"></a>00155 }
<a name="l00156"></a>00156 }
<a name="l00157"></a>00157 }
<a name="l00158"></a>00158
<a name="l00159"></a>00159 <span class="keywordflow">return</span> lastFrame_[0] = output;
<a name="l00160"></a>00160 }
<a name="l00161"></a>00161
<a name="l00162"></a><a class="code" href="classstk_1_1Guitar.html#aa8a2447a813f400c92ab2333c2d8a125">00162</a> <span class="keyword">inline</span> <a class="code" href="classstk_1_1StkFrames.html" title="An STK class to handle vectorized audio data.">StkFrames</a>&amp; <a class="code" href="classstk_1_1Guitar.html#a47223c1ef411141ae04b0971497b5fb8" title="Take an optional input sample and compute one output sample.">Guitar :: tick</a>( <a class="code" href="classstk_1_1StkFrames.html" title="An STK class to handle vectorized audio data.">StkFrames</a>&amp; frames, <span class="keywordtype">unsigned</span> <span class="keywordtype">int</span> channel )
<a name="l00163"></a>00163 {
<a name="l00164"></a>00164 <span class="preprocessor">#if defined(_STK_DEBUG_)</span>
<a name="l00165"></a>00165 <span class="preprocessor"></span> <span class="keywordflow">if</span> ( channel &gt;= frames.<a class="code" href="classstk_1_1StkFrames.html#aec7ef9c46675a24111aa6e2fda3ba870" title="Return the number of channels represented by the data.">channels</a>() ) {
<a name="l00166"></a>00166 oStream_ &lt;&lt; <span class="stringliteral">&quot;Guitar::tick(): channel and StkFrames arguments are incompatible!&quot;</span>;
<a name="l00167"></a>00167 <a class="code" href="classstk_1_1Stk.html#a48ac73a0d8ca28445ba1a054e1f061ff" title="Static function for error reporting and handling using c-strings.">handleError</a>( StkError::FUNCTION_ARGUMENT );
<a name="l00168"></a>00168 }
<a name="l00169"></a>00169 <span class="preprocessor">#endif</span>
<a name="l00170"></a>00170 <span class="preprocessor"></span>
<a name="l00171"></a>00171 StkFloat *samples = &amp;frames[channel];
<a name="l00172"></a>00172 <span class="keywordtype">unsigned</span> <span class="keywordtype">int</span> hop = frames.<a class="code" href="classstk_1_1StkFrames.html#aec7ef9c46675a24111aa6e2fda3ba870" title="Return the number of channels represented by the data.">channels</a>();
<a name="l00173"></a>00173 <span class="keywordflow">for</span> ( <span class="keywordtype">unsigned</span> <span class="keywordtype">int</span> i=0; i&lt;frames.<a class="code" href="classstk_1_1StkFrames.html#a05b1ab6fa750a8221a7d65c30e0cdab9" title="Return the number of sample frames represented by the data.">frames</a>(); i++, samples += hop )
<a name="l00174"></a>00174 *samples = <a class="code" href="classstk_1_1Guitar.html#a47223c1ef411141ae04b0971497b5fb8" title="Take an optional input sample and compute one output sample.">tick</a>( *samples );
<a name="l00175"></a>00175
<a name="l00176"></a>00176 <span class="keywordflow">return</span> frames;
<a name="l00177"></a>00177 }
<a name="l00178"></a>00178
<a name="l00179"></a><a class="code" href="classstk_1_1Guitar.html#a8ed813db2c23a9893e7d329528d659e8">00179</a> <span class="keyword">inline</span> <a class="code" href="classstk_1_1StkFrames.html" title="An STK class to handle vectorized audio data.">StkFrames</a>&amp; <a class="code" href="classstk_1_1Guitar.html#a47223c1ef411141ae04b0971497b5fb8" title="Take an optional input sample and compute one output sample.">Guitar :: tick</a>( <a class="code" href="classstk_1_1StkFrames.html" title="An STK class to handle vectorized audio data.">StkFrames</a>&amp; iFrames, <a class="code" href="classstk_1_1StkFrames.html" title="An STK class to handle vectorized audio data.">StkFrames</a>&amp; oFrames, <span class="keywordtype">unsigned</span> <span class="keywordtype">int</span> iChannel, <span class="keywordtype">unsigned</span> <span class="keywordtype">int</span> oChannel )
<a name="l00180"></a>00180 {
<a name="l00181"></a>00181 <span class="preprocessor">#if defined(_STK_DEBUG_)</span>
<a name="l00182"></a>00182 <span class="preprocessor"></span> <span class="keywordflow">if</span> ( iChannel &gt;= iFrames.<a class="code" href="classstk_1_1StkFrames.html#aec7ef9c46675a24111aa6e2fda3ba870" title="Return the number of channels represented by the data.">channels</a>() || oChannel &gt;= oFrames.<a class="code" href="classstk_1_1StkFrames.html#aec7ef9c46675a24111aa6e2fda3ba870" title="Return the number of channels represented by the data.">channels</a>() ) {
<a name="l00183"></a>00183 oStream_ &lt;&lt; <span class="stringliteral">&quot;Guitar::tick(): channel and StkFrames arguments are incompatible!&quot;</span>;
<a name="l00184"></a>00184 <a class="code" href="classstk_1_1Stk.html#a48ac73a0d8ca28445ba1a054e1f061ff" title="Static function for error reporting and handling using c-strings.">handleError</a>( StkError::FUNCTION_ARGUMENT );
<a name="l00185"></a>00185 }
<a name="l00186"></a>00186 <span class="preprocessor">#endif</span>
<a name="l00187"></a>00187 <span class="preprocessor"></span>
<a name="l00188"></a>00188 StkFloat *iSamples = &amp;iFrames[iChannel];
<a name="l00189"></a>00189 StkFloat *oSamples = &amp;oFrames[oChannel];
<a name="l00190"></a>00190 <span class="keywordtype">unsigned</span> <span class="keywordtype">int</span> iHop = iFrames.<a class="code" href="classstk_1_1StkFrames.html#aec7ef9c46675a24111aa6e2fda3ba870" title="Return the number of channels represented by the data.">channels</a>(), oHop = oFrames.<a class="code" href="classstk_1_1StkFrames.html#aec7ef9c46675a24111aa6e2fda3ba870" title="Return the number of channels represented by the data.">channels</a>();
<a name="l00191"></a>00191 <span class="keywordflow">for</span> ( <span class="keywordtype">unsigned</span> <span class="keywordtype">int</span> i=0; i&lt;iFrames.<a class="code" href="classstk_1_1StkFrames.html#a05b1ab6fa750a8221a7d65c30e0cdab9" title="Return the number of sample frames represented by the data.">frames</a>(); i++, iSamples += iHop, oSamples += oHop )
<a name="l00192"></a>00192 *oSamples = <a class="code" href="classstk_1_1Guitar.html#a47223c1ef411141ae04b0971497b5fb8" title="Take an optional input sample and compute one output sample.">tick</a>( *iSamples );
<a name="l00193"></a>00193
<a name="l00194"></a>00194 <span class="keywordflow">return</span> iFrames;
<a name="l00195"></a>00195 }
<a name="l00196"></a>00196
<a name="l00197"></a>00197 } <span class="comment">// stk namespace</span>
<a name="l00198"></a>00198
<a name="l00199"></a>00199 <span class="preprocessor">#endif</span>
</pre></div></div>
<HR>
<table>
<tr><td><A HREF="http://ccrma.stanford.edu/software/stk/"><I>The Synthesis ToolKit in C++ (STK)</I></A></td></tr>
<tr><td>&copy;1995-2012 Perry R. Cook and Gary P. Scavone. All Rights Reserved.</td></tr>
</table>
</BODY>
</HTML>

View File

@@ -9,7 +9,7 @@
<a class="qindex" href="index.html">Home</a> &nbsp; <a class="qindex" href="information.html">Information</a> &nbsp; <a class="qindex" href="classes.html">Classes</a> &nbsp; <a class="qindex" href="download.html">Download</a> &nbsp; <a class="qindex" href="usage.html">Usage</a> &nbsp; <a class="qindex" href="maillist.html">Mail List</a> &nbsp; <a class="qindex" href="system.html">Requirements</a> &nbsp; <a class="qindex" href="links.html">Links</a> &nbsp; <a class="qindex" href="faq.html">FAQ</a> &nbsp; <a class="qindex" href="tutorial.html">Tutorial</a></CENTER> <a class="qindex" href="index.html">Home</a> &nbsp; <a class="qindex" href="information.html">Information</a> &nbsp; <a class="qindex" href="classes.html">Classes</a> &nbsp; <a class="qindex" href="download.html">Download</a> &nbsp; <a class="qindex" href="usage.html">Usage</a> &nbsp; <a class="qindex" href="maillist.html">Mail List</a> &nbsp; <a class="qindex" href="system.html">Requirements</a> &nbsp; <a class="qindex" href="links.html">Links</a> &nbsp; <a class="qindex" href="faq.html">FAQ</a> &nbsp; <a class="qindex" href="tutorial.html">Tutorial</a></CENTER>
<HR> <HR>
<!-- Generated by Doxygen 1.6.2 --> <!-- Generated by Doxygen 1.6.2 -->
<div class="navpath"><a class="el" href="dir_f14fd23bc74c76f288031ad23b3f3505.html">include</a> <div class="navpath"><a class="el" href="dir_221deb9bdff892d63ed1e409450a60d2.html">include</a>
</div> </div>
<div class="contents"> <div class="contents">
<h1>HevyMetl.h</h1><div class="fragment"><pre class="fragment"><a name="l00001"></a>00001 <span class="preprocessor">#ifndef STK_HEVYMETL_H</span> <h1>HevyMetl.h</h1><div class="fragment"><pre class="fragment"><a name="l00001"></a>00001 <span class="preprocessor">#ifndef STK_HEVYMETL_H</span>
@@ -103,7 +103,7 @@
<table> <table>
<tr><td><A HREF="http://ccrma.stanford.edu/software/stk/"><I>The Synthesis ToolKit in C++ (STK)</I></A></td></tr> <tr><td><A HREF="http://ccrma.stanford.edu/software/stk/"><I>The Synthesis ToolKit in C++ (STK)</I></A></td></tr>
<tr><td>&copy;1995-2011 Perry R. Cook and Gary P. Scavone. All Rights Reserved.</td></tr> <tr><td>&copy;1995-2012 Perry R. Cook and Gary P. Scavone. All Rights Reserved.</td></tr>
</table> </table>
</BODY> </BODY>

View File

@@ -9,7 +9,7 @@
<a class="qindex" href="index.html">Home</a> &nbsp; <a class="qindex" href="information.html">Information</a> &nbsp; <a class="qindex" href="classes.html">Classes</a> &nbsp; <a class="qindex" href="download.html">Download</a> &nbsp; <a class="qindex" href="usage.html">Usage</a> &nbsp; <a class="qindex" href="maillist.html">Mail List</a> &nbsp; <a class="qindex" href="system.html">Requirements</a> &nbsp; <a class="qindex" href="links.html">Links</a> &nbsp; <a class="qindex" href="faq.html">FAQ</a> &nbsp; <a class="qindex" href="tutorial.html">Tutorial</a></CENTER> <a class="qindex" href="index.html">Home</a> &nbsp; <a class="qindex" href="information.html">Information</a> &nbsp; <a class="qindex" href="classes.html">Classes</a> &nbsp; <a class="qindex" href="download.html">Download</a> &nbsp; <a class="qindex" href="usage.html">Usage</a> &nbsp; <a class="qindex" href="maillist.html">Mail List</a> &nbsp; <a class="qindex" href="system.html">Requirements</a> &nbsp; <a class="qindex" href="links.html">Links</a> &nbsp; <a class="qindex" href="faq.html">FAQ</a> &nbsp; <a class="qindex" href="tutorial.html">Tutorial</a></CENTER>
<HR> <HR>
<!-- Generated by Doxygen 1.6.2 --> <!-- Generated by Doxygen 1.6.2 -->
<div class="navpath"><a class="el" href="dir_f14fd23bc74c76f288031ad23b3f3505.html">include</a> <div class="navpath"><a class="el" href="dir_221deb9bdff892d63ed1e409450a60d2.html">include</a>
</div> </div>
<div class="contents"> <div class="contents">
<h1>Iir.h</h1><div class="fragment"><pre class="fragment"><a name="l00001"></a>00001 <span class="preprocessor">#ifndef STK_IIR_H</span> <h1>Iir.h</h1><div class="fragment"><pre class="fragment"><a name="l00001"></a>00001 <span class="preprocessor">#ifndef STK_IIR_H</span>
@@ -149,7 +149,7 @@
<table> <table>
<tr><td><A HREF="http://ccrma.stanford.edu/software/stk/"><I>The Synthesis ToolKit in C++ (STK)</I></A></td></tr> <tr><td><A HREF="http://ccrma.stanford.edu/software/stk/"><I>The Synthesis ToolKit in C++ (STK)</I></A></td></tr>
<tr><td>&copy;1995-2011 Perry R. Cook and Gary P. Scavone. All Rights Reserved.</td></tr> <tr><td>&copy;1995-2012 Perry R. Cook and Gary P. Scavone. All Rights Reserved.</td></tr>
</table> </table>
</BODY> </BODY>

View File

@@ -9,7 +9,7 @@
<a class="qindex" href="index.html">Home</a> &nbsp; <a class="qindex" href="information.html">Information</a> &nbsp; <a class="qindex" href="classes.html">Classes</a> &nbsp; <a class="qindex" href="download.html">Download</a> &nbsp; <a class="qindex" href="usage.html">Usage</a> &nbsp; <a class="qindex" href="maillist.html">Mail List</a> &nbsp; <a class="qindex" href="system.html">Requirements</a> &nbsp; <a class="qindex" href="links.html">Links</a> &nbsp; <a class="qindex" href="faq.html">FAQ</a> &nbsp; <a class="qindex" href="tutorial.html">Tutorial</a></CENTER> <a class="qindex" href="index.html">Home</a> &nbsp; <a class="qindex" href="information.html">Information</a> &nbsp; <a class="qindex" href="classes.html">Classes</a> &nbsp; <a class="qindex" href="download.html">Download</a> &nbsp; <a class="qindex" href="usage.html">Usage</a> &nbsp; <a class="qindex" href="maillist.html">Mail List</a> &nbsp; <a class="qindex" href="system.html">Requirements</a> &nbsp; <a class="qindex" href="links.html">Links</a> &nbsp; <a class="qindex" href="faq.html">FAQ</a> &nbsp; <a class="qindex" href="tutorial.html">Tutorial</a></CENTER>
<HR> <HR>
<!-- Generated by Doxygen 1.6.2 --> <!-- Generated by Doxygen 1.6.2 -->
<div class="navpath"><a class="el" href="dir_f14fd23bc74c76f288031ad23b3f3505.html">include</a> <div class="navpath"><a class="el" href="dir_221deb9bdff892d63ed1e409450a60d2.html">include</a>
</div> </div>
<div class="contents"> <div class="contents">
<h1>InetWvIn.h</h1><div class="fragment"><pre class="fragment"><a name="l00001"></a>00001 <span class="preprocessor">#ifndef STK_INETWVIN_H</span> <h1>InetWvIn.h</h1><div class="fragment"><pre class="fragment"><a name="l00001"></a>00001 <span class="preprocessor">#ifndef STK_INETWVIN_H</span>
@@ -108,7 +108,7 @@
<table> <table>
<tr><td><A HREF="http://ccrma.stanford.edu/software/stk/"><I>The Synthesis ToolKit in C++ (STK)</I></A></td></tr> <tr><td><A HREF="http://ccrma.stanford.edu/software/stk/"><I>The Synthesis ToolKit in C++ (STK)</I></A></td></tr>
<tr><td>&copy;1995-2011 Perry R. Cook and Gary P. Scavone. All Rights Reserved.</td></tr> <tr><td>&copy;1995-2012 Perry R. Cook and Gary P. Scavone. All Rights Reserved.</td></tr>
</table> </table>
</BODY> </BODY>

View File

@@ -9,7 +9,7 @@
<a class="qindex" href="index.html">Home</a> &nbsp; <a class="qindex" href="information.html">Information</a> &nbsp; <a class="qindex" href="classes.html">Classes</a> &nbsp; <a class="qindex" href="download.html">Download</a> &nbsp; <a class="qindex" href="usage.html">Usage</a> &nbsp; <a class="qindex" href="maillist.html">Mail List</a> &nbsp; <a class="qindex" href="system.html">Requirements</a> &nbsp; <a class="qindex" href="links.html">Links</a> &nbsp; <a class="qindex" href="faq.html">FAQ</a> &nbsp; <a class="qindex" href="tutorial.html">Tutorial</a></CENTER> <a class="qindex" href="index.html">Home</a> &nbsp; <a class="qindex" href="information.html">Information</a> &nbsp; <a class="qindex" href="classes.html">Classes</a> &nbsp; <a class="qindex" href="download.html">Download</a> &nbsp; <a class="qindex" href="usage.html">Usage</a> &nbsp; <a class="qindex" href="maillist.html">Mail List</a> &nbsp; <a class="qindex" href="system.html">Requirements</a> &nbsp; <a class="qindex" href="links.html">Links</a> &nbsp; <a class="qindex" href="faq.html">FAQ</a> &nbsp; <a class="qindex" href="tutorial.html">Tutorial</a></CENTER>
<HR> <HR>
<!-- Generated by Doxygen 1.6.2 --> <!-- Generated by Doxygen 1.6.2 -->
<div class="navpath"><a class="el" href="dir_f14fd23bc74c76f288031ad23b3f3505.html">include</a> <div class="navpath"><a class="el" href="dir_221deb9bdff892d63ed1e409450a60d2.html">include</a>
</div> </div>
<div class="contents"> <div class="contents">
<h1>InetWvOut.h</h1><div class="fragment"><pre class="fragment"><a name="l00001"></a>00001 <span class="preprocessor">#ifndef STK_INETWVOUT_H</span> <h1>InetWvOut.h</h1><div class="fragment"><pre class="fragment"><a name="l00001"></a>00001 <span class="preprocessor">#ifndef STK_INETWVOUT_H</span>
@@ -72,7 +72,7 @@
<table> <table>
<tr><td><A HREF="http://ccrma.stanford.edu/software/stk/"><I>The Synthesis ToolKit in C++ (STK)</I></A></td></tr> <tr><td><A HREF="http://ccrma.stanford.edu/software/stk/"><I>The Synthesis ToolKit in C++ (STK)</I></A></td></tr>
<tr><td>&copy;1995-2011 Perry R. Cook and Gary P. Scavone. All Rights Reserved.</td></tr> <tr><td>&copy;1995-2012 Perry R. Cook and Gary P. Scavone. All Rights Reserved.</td></tr>
</table> </table>
</BODY> </BODY>

View File

@@ -9,7 +9,7 @@
<a class="qindex" href="index.html">Home</a> &nbsp; <a class="qindex" href="information.html">Information</a> &nbsp; <a class="qindex" href="classes.html">Classes</a> &nbsp; <a class="qindex" href="download.html">Download</a> &nbsp; <a class="qindex" href="usage.html">Usage</a> &nbsp; <a class="qindex" href="maillist.html">Mail List</a> &nbsp; <a class="qindex" href="system.html">Requirements</a> &nbsp; <a class="qindex" href="links.html">Links</a> &nbsp; <a class="qindex" href="faq.html">FAQ</a> &nbsp; <a class="qindex" href="tutorial.html">Tutorial</a></CENTER> <a class="qindex" href="index.html">Home</a> &nbsp; <a class="qindex" href="information.html">Information</a> &nbsp; <a class="qindex" href="classes.html">Classes</a> &nbsp; <a class="qindex" href="download.html">Download</a> &nbsp; <a class="qindex" href="usage.html">Usage</a> &nbsp; <a class="qindex" href="maillist.html">Mail List</a> &nbsp; <a class="qindex" href="system.html">Requirements</a> &nbsp; <a class="qindex" href="links.html">Links</a> &nbsp; <a class="qindex" href="faq.html">FAQ</a> &nbsp; <a class="qindex" href="tutorial.html">Tutorial</a></CENTER>
<HR> <HR>
<!-- Generated by Doxygen 1.6.2 --> <!-- Generated by Doxygen 1.6.2 -->
<div class="navpath"><a class="el" href="dir_f14fd23bc74c76f288031ad23b3f3505.html">include</a> <div class="navpath"><a class="el" href="dir_221deb9bdff892d63ed1e409450a60d2.html">include</a>
</div> </div>
<div class="contents"> <div class="contents">
<h1>Instrmnt.h</h1><div class="fragment"><pre class="fragment"><a name="l00001"></a>00001 <span class="preprocessor">#ifndef STK_INSTRMNT_H</span> <h1>Instrmnt.h</h1><div class="fragment"><pre class="fragment"><a name="l00001"></a>00001 <span class="preprocessor">#ifndef STK_INSTRMNT_H</span>
@@ -86,7 +86,7 @@
<table> <table>
<tr><td><A HREF="http://ccrma.stanford.edu/software/stk/"><I>The Synthesis ToolKit in C++ (STK)</I></A></td></tr> <tr><td><A HREF="http://ccrma.stanford.edu/software/stk/"><I>The Synthesis ToolKit in C++ (STK)</I></A></td></tr>
<tr><td>&copy;1995-2011 Perry R. Cook and Gary P. Scavone. All Rights Reserved.</td></tr> <tr><td>&copy;1995-2012 Perry R. Cook and Gary P. Scavone. All Rights Reserved.</td></tr>
</table> </table>
</BODY> </BODY>

View File

@@ -9,7 +9,7 @@
<a class="qindex" href="index.html">Home</a> &nbsp; <a class="qindex" href="information.html">Information</a> &nbsp; <a class="qindex" href="classes.html">Classes</a> &nbsp; <a class="qindex" href="download.html">Download</a> &nbsp; <a class="qindex" href="usage.html">Usage</a> &nbsp; <a class="qindex" href="maillist.html">Mail List</a> &nbsp; <a class="qindex" href="system.html">Requirements</a> &nbsp; <a class="qindex" href="links.html">Links</a> &nbsp; <a class="qindex" href="faq.html">FAQ</a> &nbsp; <a class="qindex" href="tutorial.html">Tutorial</a></CENTER> <a class="qindex" href="index.html">Home</a> &nbsp; <a class="qindex" href="information.html">Information</a> &nbsp; <a class="qindex" href="classes.html">Classes</a> &nbsp; <a class="qindex" href="download.html">Download</a> &nbsp; <a class="qindex" href="usage.html">Usage</a> &nbsp; <a class="qindex" href="maillist.html">Mail List</a> &nbsp; <a class="qindex" href="system.html">Requirements</a> &nbsp; <a class="qindex" href="links.html">Links</a> &nbsp; <a class="qindex" href="faq.html">FAQ</a> &nbsp; <a class="qindex" href="tutorial.html">Tutorial</a></CENTER>
<HR> <HR>
<!-- Generated by Doxygen 1.6.2 --> <!-- Generated by Doxygen 1.6.2 -->
<div class="navpath"><a class="el" href="dir_f14fd23bc74c76f288031ad23b3f3505.html">include</a> <div class="navpath"><a class="el" href="dir_221deb9bdff892d63ed1e409450a60d2.html">include</a>
</div> </div>
<div class="contents"> <div class="contents">
<h1>JCRev.h</h1><div class="fragment"><pre class="fragment"><a name="l00001"></a>00001 <span class="preprocessor">#ifndef STK_JCREV_H</span> <h1>JCRev.h</h1><div class="fragment"><pre class="fragment"><a name="l00001"></a>00001 <span class="preprocessor">#ifndef STK_JCREV_H</span>
@@ -129,7 +129,7 @@
<table> <table>
<tr><td><A HREF="http://ccrma.stanford.edu/software/stk/"><I>The Synthesis ToolKit in C++ (STK)</I></A></td></tr> <tr><td><A HREF="http://ccrma.stanford.edu/software/stk/"><I>The Synthesis ToolKit in C++ (STK)</I></A></td></tr>
<tr><td>&copy;1995-2011 Perry R. Cook and Gary P. Scavone. All Rights Reserved.</td></tr> <tr><td>&copy;1995-2012 Perry R. Cook and Gary P. Scavone. All Rights Reserved.</td></tr>
</table> </table>
</BODY> </BODY>

View File

@@ -9,7 +9,7 @@
<a class="qindex" href="index.html">Home</a> &nbsp; <a class="qindex" href="information.html">Information</a> &nbsp; <a class="qindex" href="classes.html">Classes</a> &nbsp; <a class="qindex" href="download.html">Download</a> &nbsp; <a class="qindex" href="usage.html">Usage</a> &nbsp; <a class="qindex" href="maillist.html">Mail List</a> &nbsp; <a class="qindex" href="system.html">Requirements</a> &nbsp; <a class="qindex" href="links.html">Links</a> &nbsp; <a class="qindex" href="faq.html">FAQ</a> &nbsp; <a class="qindex" href="tutorial.html">Tutorial</a></CENTER> <a class="qindex" href="index.html">Home</a> &nbsp; <a class="qindex" href="information.html">Information</a> &nbsp; <a class="qindex" href="classes.html">Classes</a> &nbsp; <a class="qindex" href="download.html">Download</a> &nbsp; <a class="qindex" href="usage.html">Usage</a> &nbsp; <a class="qindex" href="maillist.html">Mail List</a> &nbsp; <a class="qindex" href="system.html">Requirements</a> &nbsp; <a class="qindex" href="links.html">Links</a> &nbsp; <a class="qindex" href="faq.html">FAQ</a> &nbsp; <a class="qindex" href="tutorial.html">Tutorial</a></CENTER>
<HR> <HR>
<!-- Generated by Doxygen 1.6.2 --> <!-- Generated by Doxygen 1.6.2 -->
<div class="navpath"><a class="el" href="dir_f14fd23bc74c76f288031ad23b3f3505.html">include</a> <div class="navpath"><a class="el" href="dir_221deb9bdff892d63ed1e409450a60d2.html">include</a>
</div> </div>
<div class="contents"> <div class="contents">
<h1>JetTable.h</h1><div class="fragment"><pre class="fragment"><a name="l00001"></a>00001 <span class="preprocessor">#ifndef STK_JETTABL_H</span> <h1>JetTable.h</h1><div class="fragment"><pre class="fragment"><a name="l00001"></a>00001 <span class="preprocessor">#ifndef STK_JETTABL_H</span>
@@ -100,7 +100,7 @@
<table> <table>
<tr><td><A HREF="http://ccrma.stanford.edu/software/stk/"><I>The Synthesis ToolKit in C++ (STK)</I></A></td></tr> <tr><td><A HREF="http://ccrma.stanford.edu/software/stk/"><I>The Synthesis ToolKit in C++ (STK)</I></A></td></tr>
<tr><td>&copy;1995-2011 Perry R. Cook and Gary P. Scavone. All Rights Reserved.</td></tr> <tr><td>&copy;1995-2012 Perry R. Cook and Gary P. Scavone. All Rights Reserved.</td></tr>
</table> </table>
</BODY> </BODY>

View File

@@ -9,11 +9,11 @@
<a class="qindex" href="index.html">Home</a> &nbsp; <a class="qindex" href="information.html">Information</a> &nbsp; <a class="qindex" href="classes.html">Classes</a> &nbsp; <a class="qindex" href="download.html">Download</a> &nbsp; <a class="qindex" href="usage.html">Usage</a> &nbsp; <a class="qindex" href="maillist.html">Mail List</a> &nbsp; <a class="qindex" href="system.html">Requirements</a> &nbsp; <a class="qindex" href="links.html">Links</a> &nbsp; <a class="qindex" href="faq.html">FAQ</a> &nbsp; <a class="qindex" href="tutorial.html">Tutorial</a></CENTER> <a class="qindex" href="index.html">Home</a> &nbsp; <a class="qindex" href="information.html">Information</a> &nbsp; <a class="qindex" href="classes.html">Classes</a> &nbsp; <a class="qindex" href="download.html">Download</a> &nbsp; <a class="qindex" href="usage.html">Usage</a> &nbsp; <a class="qindex" href="maillist.html">Mail List</a> &nbsp; <a class="qindex" href="system.html">Requirements</a> &nbsp; <a class="qindex" href="links.html">Links</a> &nbsp; <a class="qindex" href="faq.html">FAQ</a> &nbsp; <a class="qindex" href="tutorial.html">Tutorial</a></CENTER>
<HR> <HR>
<!-- Generated by Doxygen 1.6.2 --> <!-- Generated by Doxygen 1.6.2 -->
<div class="navpath"><a class="el" href="dir_f14fd23bc74c76f288031ad23b3f3505.html">include</a> <div class="navpath"><a class="el" href="dir_221deb9bdff892d63ed1e409450a60d2.html">include</a>
</div> </div>
<div class="contents"> <div class="contents">
<h1>LentPitShift.h</h1><div class="fragment"><pre class="fragment"><a name="l00001"></a>00001 <span class="preprocessor">#ifndef STK_LENLentPitShift_H</span> <h1>LentPitShift.h</h1><div class="fragment"><pre class="fragment"><a name="l00001"></a>00001 <span class="preprocessor">#ifndef STK_LENTPITSHIFT_H</span>
<a name="l00002"></a>00002 <span class="preprocessor"></span><span class="preprocessor">#define STK_LENLentPitShift_H</span> <a name="l00002"></a>00002 <span class="preprocessor"></span><span class="preprocessor">#define STK_LENTPITSHIFT_H</span>
<a name="l00003"></a>00003 <span class="preprocessor"></span> <a name="l00003"></a>00003 <span class="preprocessor"></span>
<a name="l00004"></a>00004 <span class="preprocessor">#include &quot;Effect.h&quot;</span> <a name="l00004"></a>00004 <span class="preprocessor">#include &quot;Effect.h&quot;</span>
<a name="l00005"></a>00005 <span class="preprocessor">#include &quot;Delay.h&quot;</span> <a name="l00005"></a>00005 <span class="preprocessor">#include &quot;Delay.h&quot;</span>
@@ -30,229 +30,225 @@
<a name="l00025"></a>00025 <a name="l00025"></a>00025
<a name="l00026"></a>00026 ~<a class="code" href="classstk_1_1LentPitShift.html" title="Pitch shifter effect class based on the Lent algorithm.">LentPitShift</a>( <span class="keywordtype">void</span> ) { <a name="l00026"></a>00026 ~<a class="code" href="classstk_1_1LentPitShift.html" title="Pitch shifter effect class based on the Lent algorithm.">LentPitShift</a>( <span class="keywordtype">void</span> ) {
<a name="l00027"></a>00027 <span class="keyword">delete</span> window; <a name="l00027"></a>00027 <span class="keyword">delete</span> window;
<a name="l00028"></a>00028 window = NULL; <a name="l00028"></a>00028 <span class="keyword">delete</span> dt;
<a name="l00029"></a>00029 <span class="keyword">delete</span> dt; <a name="l00029"></a>00029 <span class="keyword">delete</span> dpt;
<a name="l00030"></a>00030 dt = NULL; <a name="l00030"></a>00030 <span class="keyword">delete</span> cumDt;
<a name="l00031"></a>00031 <span class="keyword">delete</span> dpt; <a name="l00031"></a>00031 }
<a name="l00032"></a>00032 dpt = NULL; <a name="l00032"></a>00032
<a name="l00033"></a>00033 <span class="keyword">delete</span> cumDt; <a name="l00034"></a>00034 <span class="keywordtype">void</span> <a class="code" href="classstk_1_1LentPitShift.html#a5661bf4cd0a4b5b2bf9e4e81603c74be" title="Reset and clear all internal state.">clear</a>( <span class="keywordtype">void</span> );
<a name="l00034"></a>00034 cumDt = NULL; <a name="l00035"></a>00035
<a name="l00035"></a>00035 } <a name="l00037"></a>00037 <span class="keywordtype">void</span> <a class="code" href="classstk_1_1LentPitShift.html#a5dfe0a19b2ac3db599c808f4d676c076" title="Set the pitch shift factor (1.0 produces no shift).">setShift</a>( StkFloat shift );
<a name="l00036"></a>00036 <a name="l00038"></a>00038
<a name="l00038"></a>00038 <span class="keywordtype">void</span> <a class="code" href="classstk_1_1LentPitShift.html#a5661bf4cd0a4b5b2bf9e4e81603c74be" title="Reset and clear all internal state.">clear</a>( <span class="keywordtype">void</span> ); <a name="l00040"></a>00040 StkFloat <a class="code" href="classstk_1_1LentPitShift.html#a2bbc39e8e78dc672a0be451ec1fd6b7d" title="Input one sample to the filter and return one output.">tick</a>( StkFloat input );
<a name="l00039"></a>00039 <a name="l00041"></a>00041
<a name="l00041"></a>00041 <span class="keywordtype">void</span> <a class="code" href="classstk_1_1LentPitShift.html#a5dfe0a19b2ac3db599c808f4d676c076" title="Set the pitch shift factor (1.0 produces no shift).">setShift</a>( StkFloat shift ); <a name="l00043"></a>00043
<a name="l00042"></a>00042 <a name="l00051"></a>00051 <a class="code" href="classstk_1_1StkFrames.html" title="An STK class to handle vectorized audio data.">StkFrames</a>&amp; <a class="code" href="classstk_1_1LentPitShift.html#a2bbc39e8e78dc672a0be451ec1fd6b7d" title="Input one sample to the filter and return one output.">tick</a>( <a class="code" href="classstk_1_1StkFrames.html" title="An STK class to handle vectorized audio data.">StkFrames</a>&amp; frames, <span class="keywordtype">unsigned</span> <span class="keywordtype">int</span> channel = 0 );
<a name="l00044"></a>00044 StkFloat <a class="code" href="classstk_1_1LentPitShift.html#a2bbc39e8e78dc672a0be451ec1fd6b7d" title="Input one sample to the filter and return one output.">tick</a>( StkFloat input ); <a name="l00052"></a>00052
<a name="l00045"></a>00045 <a name="l00054"></a>00054
<a name="l00047"></a>00047 <a name="l00062"></a>00062 <a class="code" href="classstk_1_1StkFrames.html" title="An STK class to handle vectorized audio data.">StkFrames</a>&amp; <a class="code" href="classstk_1_1LentPitShift.html#a2bbc39e8e78dc672a0be451ec1fd6b7d" title="Input one sample to the filter and return one output.">tick</a>( <a class="code" href="classstk_1_1StkFrames.html" title="An STK class to handle vectorized audio data.">StkFrames</a>&amp; iFrames, <a class="code" href="classstk_1_1StkFrames.html" title="An STK class to handle vectorized audio data.">StkFrames</a> &amp;oFrames, <span class="keywordtype">unsigned</span> <span class="keywordtype">int</span> iChannel = 0, <span class="keywordtype">unsigned</span> <span class="keywordtype">int</span> oChannel = 0 );
<a name="l00055"></a>00055 <a class="code" href="classstk_1_1StkFrames.html" title="An STK class to handle vectorized audio data.">StkFrames</a>&amp; <a class="code" href="classstk_1_1LentPitShift.html#a2bbc39e8e78dc672a0be451ec1fd6b7d" title="Input one sample to the filter and return one output.">tick</a>( <a class="code" href="classstk_1_1StkFrames.html" title="An STK class to handle vectorized audio data.">StkFrames</a>&amp; frames, <span class="keywordtype">unsigned</span> <span class="keywordtype">int</span> channel = 0 ); <a name="l00063"></a>00063
<a name="l00056"></a>00056 <a name="l00064"></a>00064 <span class="keyword">protected</span>:
<a name="l00058"></a>00058 <a name="l00065"></a>00065
<a name="l00066"></a>00066 <a class="code" href="classstk_1_1StkFrames.html" title="An STK class to handle vectorized audio data.">StkFrames</a>&amp; <a class="code" href="classstk_1_1LentPitShift.html#a2bbc39e8e78dc672a0be451ec1fd6b7d" title="Input one sample to the filter and return one output.">tick</a>( <a class="code" href="classstk_1_1StkFrames.html" title="An STK class to handle vectorized audio data.">StkFrames</a>&amp; iFrames, <a class="code" href="classstk_1_1StkFrames.html" title="An STK class to handle vectorized audio data.">StkFrames</a> &amp;oFrames, <span class="keywordtype">unsigned</span> <span class="keywordtype">int</span> iChannel = 0, <span class="keywordtype">unsigned</span> <span class="keywordtype">int</span> oChannel = 0 );
<a name="l00067"></a>00067 <a name="l00067"></a>00067
<a name="l00068"></a>00068 <span class="keyword">protected</span>: <a name="l00071"></a>00071 <span class="keywordtype">void</span> <a class="code" href="classstk_1_1LentPitShift.html#a5af0a9e3902ca6fc7c5d77d861d74445" title="Apply the effect on the input samples and store it.">process</a>( );
<a name="l00069"></a>00069 <a name="l00072"></a>00072
<a name="l00071"></a>00071 <a name="l00073"></a>00073 <span class="comment">// Frame storage vectors for process function</span>
<a name="l00075"></a>00075 <span class="keywordtype">void</span> <a class="code" href="classstk_1_1LentPitShift.html#a5af0a9e3902ca6fc7c5d77d861d74445" title="Apply the effect on the input samples and store it.">process</a>( ); <a name="l00074"></a>00074 <a class="code" href="classstk_1_1StkFrames.html" title="An STK class to handle vectorized audio data.">StkFrames</a> inputFrames;
<a name="l00076"></a>00076 <a name="l00075"></a>00075 <a class="code" href="classstk_1_1StkFrames.html" title="An STK class to handle vectorized audio data.">StkFrames</a> outputFrames;
<a name="l00077"></a>00077 <span class="comment">// Frame storage vectors for process function</span> <a name="l00076"></a>00076 <span class="keywordtype">int</span> ptrFrames; <span class="comment">// writing pointer</span>
<a name="l00078"></a>00078 <a class="code" href="classstk_1_1StkFrames.html" title="An STK class to handle vectorized audio data.">StkFrames</a> inputFrames; <a name="l00077"></a>00077
<a name="l00079"></a>00079 <a class="code" href="classstk_1_1StkFrames.html" title="An STK class to handle vectorized audio data.">StkFrames</a> outputFrames; <a name="l00078"></a>00078 <span class="comment">// Input delay line</span>
<a name="l00080"></a>00080 <span class="keywordtype">int</span> ptrFrames; <span class="comment">// writing pointer</span> <a name="l00079"></a>00079 <a class="code" href="classstk_1_1Delay.html" title="STK non-interpolating delay line class.">Delay</a> inputLine_;
<a name="l00080"></a>00080 <span class="keywordtype">int</span> inputPtr;
<a name="l00081"></a>00081 <a name="l00081"></a>00081
<a name="l00082"></a>00082 <span class="comment">// Input delay line</span> <a name="l00082"></a>00082 <span class="comment">// Output delay line</span>
<a name="l00083"></a>00083 <a class="code" href="classstk_1_1Delay.html" title="STK non-interpolating delay line class.">Delay</a> inputLine_; <a name="l00083"></a>00083 <a class="code" href="classstk_1_1Delay.html" title="STK non-interpolating delay line class.">Delay</a> outputLine_;
<a name="l00084"></a>00084 <span class="keywordtype">int</span> inputPtr; <a name="l00084"></a>00084 <span class="keywordtype">double</span> outputPtr;
<a name="l00085"></a>00085 <a name="l00085"></a>00085
<a name="l00086"></a>00086 <span class="comment">// Output delay line</span> <a name="l00086"></a>00086 <span class="comment">// Pitch tracker variables</span>
<a name="l00087"></a>00087 <a class="code" href="classstk_1_1Delay.html" title="STK non-interpolating delay line class.">Delay</a> outputLine_; <a name="l00087"></a>00087 <span class="keywordtype">unsigned</span> <span class="keywordtype">long</span> tMax_; <span class="comment">// Maximal period measurable by the pitch tracker.</span>
<a name="l00088"></a>00088 <span class="keywordtype">double</span> outputPtr; <a name="l00088"></a>00088 <span class="comment">// It is also the size of the window used by the pitch tracker and</span>
<a name="l00089"></a>00089 <a name="l00089"></a>00089 <span class="comment">// the size of the frames that can be computed by the tick function</span>
<a name="l00090"></a>00090 <span class="comment">// Pitch tracker variables</span> <a name="l00090"></a>00090
<a name="l00091"></a>00091 <span class="keywordtype">unsigned</span> <span class="keywordtype">long</span> tMax_; <span class="comment">// Maximal period measurable by the pitch tracker.</span> <a name="l00091"></a>00091 StkFloat threshold_; <span class="comment">// Threshold of detection for the pitch tracker</span>
<a name="l00092"></a>00092 <span class="comment">// It is also the size of the window used by the pitch tracker and</span> <a name="l00092"></a>00092 <span class="keywordtype">unsigned</span> <span class="keywordtype">long</span> lastPeriod_; <span class="comment">// Result of the last pitch tracking loop</span>
<a name="l00093"></a>00093 <span class="comment">// the size of the frames that can be computed by the tick function</span> <a name="l00093"></a>00093 StkFloat* dt; <span class="comment">// Array containing the euclidian distance coefficients</span>
<a name="l00094"></a>00094 <a name="l00094"></a>00094 StkFloat* cumDt; <span class="comment">// Array containing the cumulative sum of the coefficients in dt</span>
<a name="l00095"></a>00095 StkFloat threshold_; <span class="comment">// Threshold of detection for the pitch tracker</span> <a name="l00095"></a>00095 StkFloat* dpt; <span class="comment">// Array containing the pitch tracking function coefficients</span>
<a name="l00096"></a>00096 <span class="keywordtype">unsigned</span> <span class="keywordtype">long</span> lastPeriod_; <span class="comment">// Result of the last pitch tracking loop</span> <a name="l00096"></a>00096
<a name="l00097"></a>00097 StkFloat* dt; <span class="comment">// Array containing the euclidian distance coefficients</span> <a name="l00097"></a>00097 <span class="comment">// Pitch shifter variables</span>
<a name="l00098"></a>00098 StkFloat* cumDt; <span class="comment">// Array containing the cumulative sum of the coefficients in dt</span> <a name="l00098"></a>00098 StkFloat env[2]; <span class="comment">// Coefficients for the linear interpolation when modifying the output samples</span>
<a name="l00099"></a>00099 StkFloat* dpt; <span class="comment">// Array containing the pitch tracking function coefficients</span> <a name="l00099"></a>00099 StkFloat* window; <span class="comment">// Hamming window used for the input portion extraction</span>
<a name="l00100"></a>00100 <a name="l00100"></a>00100 <span class="keywordtype">double</span> periodRatio_; <span class="comment">// Ratio of modification of the signal period</span>
<a name="l00101"></a>00101 <span class="comment">// Pitch shifter variables</span> <a name="l00101"></a>00101 <a class="code" href="classstk_1_1StkFrames.html" title="An STK class to handle vectorized audio data.">StkFrames</a> zeroFrame; <span class="comment">// Frame of tMax_ zero samples</span>
<a name="l00102"></a>00102 StkFloat env[2]; <span class="comment">// Coefficients for the linear interpolation when modifying the output samples</span> <a name="l00102"></a>00102
<a name="l00103"></a>00103 StkFloat* window; <span class="comment">// Hamming window used for the input portion extraction</span> <a name="l00103"></a>00103
<a name="l00104"></a>00104 <span class="keywordtype">double</span> periodRatio_; <span class="comment">// Ratio of modification of the signal period</span> <a name="l00104"></a>00104 <span class="comment">// Coefficient delay line that could be used for a dynamic calculation of the pitch</span>
<a name="l00105"></a>00105 <a class="code" href="classstk_1_1StkFrames.html" title="An STK class to handle vectorized audio data.">StkFrames</a> zeroFrame; <span class="comment">// Frame of tMax_ zero samples</span> <a name="l00105"></a>00105 <span class="comment">//Delay* coeffLine_;</span>
<a name="l00106"></a>00106 <a name="l00106"></a>00106
<a name="l00107"></a>00107 <a name="l00107"></a>00107 };
<a name="l00108"></a>00108 <span class="comment">// Coefficient delay line that could be used for a dynamic calculation of the pitch</span> <a name="l00108"></a>00108
<a name="l00109"></a>00109 <span class="comment">//Delay* coeffLine_;</span> <a name="l00109"></a><a class="code" href="classstk_1_1LentPitShift.html#a5af0a9e3902ca6fc7c5d77d861d74445">00109</a> <span class="keyword">inline</span> <span class="keywordtype">void</span> <a class="code" href="classstk_1_1LentPitShift.html#a5af0a9e3902ca6fc7c5d77d861d74445" title="Apply the effect on the input samples and store it.">LentPitShift::process</a>()
<a name="l00110"></a>00110 <a name="l00110"></a>00110 {
<a name="l00111"></a>00111 }; <a name="l00111"></a>00111 StkFloat x_t; <span class="comment">// input coefficient</span>
<a name="l00112"></a>00112 <a name="l00112"></a>00112 StkFloat x_t_T; <span class="comment">// previous input coefficient at T samples</span>
<a name="l00113"></a><a class="code" href="classstk_1_1LentPitShift.html#a5af0a9e3902ca6fc7c5d77d861d74445">00113</a> <span class="keyword">inline</span> <span class="keywordtype">void</span> <a class="code" href="classstk_1_1LentPitShift.html#a5af0a9e3902ca6fc7c5d77d861d74445" title="Apply the effect on the input samples and store it.">LentPitShift::process</a>() <a name="l00113"></a>00113 StkFloat coeff; <span class="comment">// new coefficient for the difference function</span>
<a name="l00114"></a>00114 { <a name="l00114"></a>00114
<a name="l00115"></a>00115 StkFloat x_t; <span class="comment">// input coefficient</span> <a name="l00115"></a>00115 <span class="keywordtype">int</span> alternativePitch = tMax_; <span class="comment">// Global minimum storage</span>
<a name="l00116"></a>00116 StkFloat x_t_T; <span class="comment">// previous input coefficient at T samples</span> <a name="l00116"></a>00116 lastPeriod_ = tMax_+1; <span class="comment">// Storage of the lowest local minimum under the threshold</span>
<a name="l00117"></a>00117 StkFloat coeff; <span class="comment">// new coefficient for the difference function</span> <a name="l00117"></a>00117
<a name="l00118"></a>00118 <a name="l00118"></a>00118 <span class="comment">// Loop variables</span>
<a name="l00119"></a>00119 <span class="keywordtype">int</span> alternativePitch = tMax_; <span class="comment">// Global minimum storage</span> <a name="l00119"></a>00119 <span class="keywordtype">unsigned</span> <span class="keywordtype">long</span> delay_;
<a name="l00120"></a>00120 lastPeriod_ = tMax_+1; <span class="comment">// Storage of the lowest local minimum under the threshold</span> <a name="l00120"></a>00120 <span class="keywordtype">unsigned</span> <span class="keywordtype">int</span> n;
<a name="l00121"></a>00121 <a name="l00121"></a>00121
<a name="l00122"></a>00122 <span class="comment">// Loop variables</span> <a name="l00122"></a>00122 <span class="comment">// Initialization of the dt coefficients. Since the</span>
<a name="l00123"></a>00123 <span class="keywordtype">unsigned</span> <span class="keywordtype">long</span> delay_; <a name="l00123"></a>00123 <span class="comment">// frames are of tMax_ length, there is no overlapping</span>
<a name="l00124"></a>00124 <span class="keywordtype">unsigned</span> <span class="keywordtype">int</span> n; <a name="l00124"></a>00124 <span class="comment">// between the successive windows where pitch tracking</span>
<a name="l00125"></a>00125 <a name="l00125"></a>00125 <span class="comment">// is performed.</span>
<a name="l00126"></a>00126 <span class="comment">// Initialization of the dt coefficients. Since the</span> <a name="l00126"></a>00126 <span class="keywordflow">for</span> ( delay_=1; delay_&lt;=tMax_; delay_++ )
<a name="l00127"></a>00127 <span class="comment">// frames are of tMax_ length, there is no overlapping</span> <a name="l00127"></a>00127 dt[delay_] = 0.;
<a name="l00128"></a>00128 <span class="comment">// between the successive windows where pitch tracking</span> <a name="l00128"></a>00128
<a name="l00129"></a>00129 <span class="comment">// is performed.</span> <a name="l00129"></a>00129 <span class="comment">// Calculation of the dt coefficients and update of the input delay line.</span>
<a name="l00130"></a>00130 <span class="keywordflow">for</span> ( delay_=1; delay_&lt;=tMax_; delay_++ ) <a name="l00130"></a>00130 <span class="keywordflow">for</span> ( n=0; n&lt;inputFrames.<a class="code" href="classstk_1_1StkFrames.html#a5c41aae98f77487c004085912d1f8f79" title="Returns the total number of audio samples represented by the object.">size</a>(); n++ ) {
<a name="l00131"></a>00131 dt[delay_] = 0.; <a name="l00131"></a>00131 x_t = inputLine_.<a class="code" href="classstk_1_1Delay.html#aa1a929e0e324417b8a55cbf8770532e9" title="Input one sample to the filter and return one output.">tick</a>( inputFrames[ n ] );
<a name="l00132"></a>00132 <a name="l00132"></a>00132 <span class="keywordflow">for</span> ( delay_=1; delay_&lt;= tMax_; delay_++ ) {
<a name="l00133"></a>00133 <span class="comment">// Calculation of the dt coefficients and update of the input delay line.</span> <a name="l00133"></a>00133 x_t_T = inputLine_.<a class="code" href="classstk_1_1Delay.html#a4d5e5bab50e4fa062bd3f0e9e2fd19db" title="Return the value at tapDelay samples from the delay-line input.">tapOut</a>( delay_ );
<a name="l00134"></a>00134 <span class="keywordflow">for</span> ( n=0; n&lt;inputFrames.<a class="code" href="classstk_1_1StkFrames.html#a5c41aae98f77487c004085912d1f8f79" title="Returns the total number of audio samples represented by the object.">size</a>(); n++ ) { <a name="l00134"></a>00134 coeff = x_t - x_t_T;
<a name="l00135"></a>00135 x_t = inputLine_.<a class="code" href="classstk_1_1Delay.html#aa1a929e0e324417b8a55cbf8770532e9" title="Input one sample to the filter and return one output.">tick</a>( inputFrames[ n ] ); <a name="l00135"></a>00135 dt[delay_] += coeff * coeff;
<a name="l00136"></a>00136 <span class="keywordflow">for</span> ( delay_=1; delay_&lt;= tMax_; delay_++ ) { <a name="l00136"></a>00136 }
<a name="l00137"></a>00137 x_t_T = inputLine_.<a class="code" href="classstk_1_1Delay.html#a4d5e5bab50e4fa062bd3f0e9e2fd19db" title="Return the value at tapDelay samples from the delay-line input.">tapOut</a>( delay_ ); <a name="l00137"></a>00137 }
<a name="l00138"></a>00138 coeff = x_t - x_t_T; <a name="l00138"></a>00138
<a name="l00139"></a>00139 dt[delay_] += coeff * coeff; <a name="l00139"></a>00139 <span class="comment">// Calculation of the pitch tracking function and test for the minima.</span>
<a name="l00140"></a>00140 } <a name="l00140"></a>00140 <span class="keywordflow">for</span> ( delay_=1; delay_&lt;=tMax_; delay_++ ) {
<a name="l00141"></a>00141 } <a name="l00141"></a>00141 cumDt[delay_] = dt[delay_] + cumDt[delay_-1];
<a name="l00142"></a>00142 <a name="l00142"></a>00142 dpt[delay_] = dt[delay_] * delay_ / cumDt[delay_];
<a name="l00143"></a>00143 <span class="comment">// Calculation of the pitch tracking function and test for the minima.</span> <a name="l00143"></a>00143
<a name="l00144"></a>00144 <span class="keywordflow">for</span> ( delay_=1; delay_&lt;=tMax_; delay_++ ) { <a name="l00144"></a>00144 <span class="comment">// Look for a minimum</span>
<a name="l00145"></a>00145 cumDt[delay_] = dt[delay_] + cumDt[delay_-1]; <a name="l00145"></a>00145 <span class="keywordflow">if</span> ( dpt[delay_-1]-dpt[delay_-2] &lt; 0 &amp;&amp; dpt[delay_]-dpt[delay_-1] &gt; 0 ) {
<a name="l00146"></a>00146 dpt[delay_] = dt[delay_] * delay_ / cumDt[delay_]; <a name="l00146"></a>00146 <span class="comment">// Check if the minimum is under the threshold</span>
<a name="l00147"></a>00147 <a name="l00147"></a>00147 <span class="keywordflow">if</span> ( dpt[delay_-1] &lt; threshold_ ){
<a name="l00148"></a>00148 <span class="comment">// Look for a minimum</span> <a name="l00148"></a>00148 lastPeriod_ = delay_-1;
<a name="l00149"></a>00149 <span class="keywordflow">if</span> ( dpt[delay_-1]-dpt[delay_-2] &lt; 0 &amp;&amp; dpt[delay_]-dpt[delay_-1] &gt; 0 ) { <a name="l00149"></a>00149 <span class="comment">// If a minimum is found, we can stop the loop</span>
<a name="l00150"></a>00150 <span class="comment">// Check if the minimum is under the threshold</span> <a name="l00150"></a>00150 <span class="keywordflow">break</span>;
<a name="l00151"></a>00151 <span class="keywordflow">if</span> ( dpt[delay_-1] &lt; threshold_ ){ <a name="l00151"></a>00151 }
<a name="l00152"></a>00152 lastPeriod_ = delay_-1; <a name="l00152"></a>00152 <span class="keywordflow">else</span> <span class="keywordflow">if</span> ( dpt[alternativePitch] &gt; dpt[delay_-1] )
<a name="l00153"></a>00153 <span class="comment">// If a minimum is found, we can stop the loop</span> <a name="l00153"></a>00153 <span class="comment">// Otherwise we store it if it is the current global minimum</span>
<a name="l00154"></a>00154 <span class="keywordflow">break</span>; <a name="l00154"></a>00154 alternativePitch = delay_-1;
<a name="l00155"></a>00155 } <a name="l00155"></a>00155 }
<a name="l00156"></a>00156 <span class="keywordflow">else</span> <span class="keywordflow">if</span> ( dpt[alternativePitch] &gt; dpt[delay_-1] ) <a name="l00156"></a>00156 }
<a name="l00157"></a>00157 <span class="comment">// Otherwise we store it if it is the current global minimum</span> <a name="l00157"></a>00157
<a name="l00158"></a>00158 alternativePitch = delay_-1; <a name="l00158"></a>00158 <span class="comment">// Test for the last period length.</span>
<a name="l00159"></a>00159 } <a name="l00159"></a>00159 <span class="keywordflow">if</span> ( dpt[delay_]-dpt[delay_-1] &lt; 0 ) {
<a name="l00160"></a>00160 } <a name="l00160"></a>00160 <span class="keywordflow">if</span> ( dpt[delay_] &lt; threshold_ )
<a name="l00161"></a>00161 <a name="l00161"></a>00161 lastPeriod_ = delay_;
<a name="l00162"></a>00162 <span class="comment">// Test for the last period length.</span> <a name="l00162"></a>00162 <span class="keywordflow">else</span> <span class="keywordflow">if</span> ( dpt[alternativePitch] &gt; dpt[delay_] )
<a name="l00163"></a>00163 <span class="keywordflow">if</span> ( dpt[delay_]-dpt[delay_-1] &lt; 0 ) { <a name="l00163"></a>00163 alternativePitch = delay_;
<a name="l00164"></a>00164 <span class="keywordflow">if</span> ( dpt[delay_] &lt; threshold_ ) <a name="l00164"></a>00164 }
<a name="l00165"></a>00165 lastPeriod_ = delay_; <a name="l00165"></a>00165
<a name="l00166"></a>00166 <span class="keywordflow">else</span> <span class="keywordflow">if</span> ( dpt[alternativePitch] &gt; dpt[delay_] ) <a name="l00166"></a>00166 <span class="keywordflow">if</span> ( lastPeriod_ == tMax_+1 )
<a name="l00167"></a>00167 alternativePitch = delay_; <a name="l00167"></a>00167 <span class="comment">// No period has been under the threshold so we used the global minimum</span>
<a name="l00168"></a>00168 } <a name="l00168"></a>00168 lastPeriod_ = alternativePitch;
<a name="l00169"></a>00169 <a name="l00169"></a>00169
<a name="l00170"></a>00170 <span class="keywordflow">if</span> ( lastPeriod_ == tMax_+1 ) <a name="l00170"></a>00170 <span class="comment">// We put the new zero output coefficients in the output delay line and </span>
<a name="l00171"></a>00171 <span class="comment">// No period has been under the threshold so we used the global minimum</span> <a name="l00171"></a>00171 <span class="comment">// we get the previous calculated coefficients</span>
<a name="l00172"></a>00172 lastPeriod_ = alternativePitch; <a name="l00172"></a>00172 outputLine_.<a class="code" href="classstk_1_1Delay.html#aa1a929e0e324417b8a55cbf8770532e9" title="Input one sample to the filter and return one output.">tick</a>( zeroFrame, outputFrames );
<a name="l00173"></a>00173 <a name="l00173"></a>00173
<a name="l00174"></a>00174 <span class="comment">// We put the new zero output coefficients in the output delay line and </span> <a name="l00174"></a>00174 <span class="comment">// Initialization of the Hamming window used in the algorithm</span>
<a name="l00175"></a>00175 <span class="comment">// we get the previous calculated coefficients</span> <a name="l00175"></a>00175 <span class="keywordflow">for</span> ( <span class="keywordtype">int</span> n=-(<span class="keywordtype">int</span>)lastPeriod_; n&lt;(int)lastPeriod_; n++ )
<a name="l00176"></a>00176 outputLine_.<a class="code" href="classstk_1_1Delay.html#aa1a929e0e324417b8a55cbf8770532e9" title="Input one sample to the filter and return one output.">tick</a>( zeroFrame, outputFrames ); <a name="l00176"></a>00176 window[n+lastPeriod_] = (1 + cos(PI*n/lastPeriod_)) / 2 ;
<a name="l00177"></a>00177 <a name="l00177"></a>00177
<a name="l00178"></a>00178 <span class="comment">// Initialization of the Hamming window used in the algorithm</span> <a name="l00178"></a>00178 <span class="keywordtype">int</span> M; <span class="comment">// Index of reading in the input delay line</span>
<a name="l00179"></a>00179 <span class="keywordflow">for</span> ( <span class="keywordtype">int</span> n=-(<span class="keywordtype">int</span>)lastPeriod_; n&lt;(int)lastPeriod_; n++ ) <a name="l00179"></a>00179 <span class="keywordtype">int</span> N; <span class="comment">// Index of writing in the output delay line</span>
<a name="l00180"></a>00180 window[n+lastPeriod_] = (1 + cos(PI*n/lastPeriod_)) / 2 ; <a name="l00180"></a>00180 <span class="keywordtype">double</span> sample; <span class="comment">// Temporary storage for the new coefficient</span>
<a name="l00181"></a>00181 <a name="l00181"></a>00181
<a name="l00182"></a>00182 <span class="keywordtype">int</span> M; <span class="comment">// Index of reading in the input delay line</span> <a name="l00182"></a>00182 <span class="comment">// We loop for all the frames of length lastPeriod_ presents between inputPtr and tMax_</span>
<a name="l00183"></a>00183 <span class="keywordtype">int</span> N; <span class="comment">// Index of writing in the output delay line</span> <a name="l00183"></a>00183 <span class="keywordflow">for</span> ( ; inputPtr&lt;(int)(tMax_-lastPeriod_); inputPtr+=lastPeriod_ ) {
<a name="l00184"></a>00184 <span class="keywordtype">double</span> sample; <span class="comment">// Temporary storage for the new coefficient</span> <a name="l00184"></a>00184 <span class="comment">// Test for the decision of compression/expansion</span>
<a name="l00185"></a>00185 <a name="l00185"></a>00185 <span class="keywordflow">while</span> ( outputPtr &lt; inputPtr ) {
<a name="l00186"></a>00186 <span class="comment">// We loop for all the frames of length lastPeriod_ presents between inputPtr and tMax_</span> <a name="l00186"></a>00186 <span class="comment">// Coefficients for the linear interpolation</span>
<a name="l00187"></a>00187 <span class="keywordflow">for</span> ( ; inputPtr&lt;(int)(tMax_-lastPeriod_); inputPtr+=lastPeriod_ ) { <a name="l00187"></a>00187 env[1] = fmod( outputPtr + tMax_, 1.0 );
<a name="l00188"></a>00188 <span class="comment">// Test for the decision of compression/expansion</span> <a name="l00188"></a>00188 env[0] = 1.0 - env[1];
<a name="l00189"></a>00189 <span class="keywordflow">while</span> ( outputPtr &lt; inputPtr ) { <a name="l00189"></a>00189 M = tMax_ - inputPtr + lastPeriod_ - 1; <span class="comment">// New reading pointer</span>
<a name="l00190"></a>00190 <span class="comment">// Coefficients for the linear interpolation</span> <a name="l00190"></a>00190 N = 2*tMax_ - (<span class="keywordtype">unsigned</span> long)floor(outputPtr + tMax_) + lastPeriod_ - 1; <span class="comment">// New writing pointer</span>
<a name="l00191"></a>00191 env[1] = fmod( outputPtr + tMax_, 1.0 ); <a name="l00191"></a>00191 <span class="keywordflow">for</span> ( <span class="keywordtype">unsigned</span> <span class="keywordtype">int</span> j=0; j&lt;2*lastPeriod_; j++,M--,N-- ) {
<a name="l00192"></a>00192 env[0] = 1.0 - env[1]; <a name="l00192"></a>00192 sample = inputLine_.<a class="code" href="classstk_1_1Delay.html#a4d5e5bab50e4fa062bd3f0e9e2fd19db" title="Return the value at tapDelay samples from the delay-line input.">tapOut</a>(M) * window[j] / 2.;
<a name="l00193"></a>00193 M = tMax_ - inputPtr + lastPeriod_ - 1; <span class="comment">// New reading pointer</span> <a name="l00193"></a>00193 <span class="comment">// Linear interpolation</span>
<a name="l00194"></a>00194 N = 2*tMax_ - (<span class="keywordtype">unsigned</span> long)floor(outputPtr + tMax_) + lastPeriod_ - 1; <span class="comment">// New writing pointer</span> <a name="l00194"></a>00194 outputLine_.<a class="code" href="classstk_1_1Delay.html#a80f143ab956c9d3b1721958ece6da65e" title="Sum the provided value into the delay line at tapDelay samples from the input.">addTo</a>(env[0] * sample, N);
<a name="l00195"></a>00195 <span class="keywordflow">for</span> ( <span class="keywordtype">unsigned</span> <span class="keywordtype">int</span> j=0; j&lt;2*lastPeriod_; j++,M--,N-- ) { <a name="l00195"></a>00195 outputLine_.<a class="code" href="classstk_1_1Delay.html#a80f143ab956c9d3b1721958ece6da65e" title="Sum the provided value into the delay line at tapDelay samples from the input.">addTo</a>(env[1] * sample, N-1);
<a name="l00196"></a>00196 sample = inputLine_.<a class="code" href="classstk_1_1Delay.html#a4d5e5bab50e4fa062bd3f0e9e2fd19db" title="Return the value at tapDelay samples from the delay-line input.">tapOut</a>(M) * window[j] / 2.; <a name="l00196"></a>00196 }
<a name="l00197"></a>00197 <span class="comment">// Linear interpolation</span> <a name="l00197"></a>00197 outputPtr = outputPtr + lastPeriod_ * periodRatio_; <span class="comment">// new output pointer</span>
<a name="l00198"></a>00198 outputLine_.<a class="code" href="classstk_1_1Delay.html#a80f143ab956c9d3b1721958ece6da65e" title="Sum the provided value into the delay line at tapDelay samples from the input.">addTo</a>(N, env[0] * sample); <a name="l00198"></a>00198 }
<a name="l00199"></a>00199 outputLine_.<a class="code" href="classstk_1_1Delay.html#a80f143ab956c9d3b1721958ece6da65e" title="Sum the provided value into the delay line at tapDelay samples from the input.">addTo</a>(N-1, env[1] * sample); <a name="l00199"></a>00199 }
<a name="l00200"></a>00200 } <a name="l00200"></a>00200 <span class="comment">// Shifting of the pointers waiting for the new frame of length tMax_.</span>
<a name="l00201"></a>00201 outputPtr = outputPtr + lastPeriod_ * periodRatio_; <span class="comment">// new output pointer</span> <a name="l00201"></a>00201 outputPtr -= tMax_;
<a name="l00202"></a>00202 } <a name="l00202"></a>00202 inputPtr -= tMax_;
<a name="l00203"></a>00203 } <a name="l00203"></a>00203 }
<a name="l00204"></a>00204 <span class="comment">// Shifting of the pointers waiting for the new frame of length tMax_.</span> <a name="l00204"></a>00204
<a name="l00205"></a>00205 outputPtr -= tMax_; <a name="l00205"></a>00205
<a name="l00206"></a>00206 inputPtr -= tMax_; <a name="l00206"></a><a class="code" href="classstk_1_1LentPitShift.html#a2bbc39e8e78dc672a0be451ec1fd6b7d">00206</a> <span class="keyword">inline</span> StkFloat <a class="code" href="classstk_1_1LentPitShift.html#a2bbc39e8e78dc672a0be451ec1fd6b7d" title="Input one sample to the filter and return one output.">LentPitShift :: tick</a>( StkFloat input )
<a name="l00207"></a>00207 } <a name="l00207"></a>00207 {
<a name="l00208"></a>00208 <a name="l00208"></a>00208 StkFloat sample;
<a name="l00209"></a>00209 <a name="l00209"></a>00209
<a name="l00210"></a><a class="code" href="classstk_1_1LentPitShift.html#a2bbc39e8e78dc672a0be451ec1fd6b7d">00210</a> <span class="keyword">inline</span> StkFloat <a class="code" href="classstk_1_1LentPitShift.html#a2bbc39e8e78dc672a0be451ec1fd6b7d" title="Input one sample to the filter and return one output.">LentPitShift :: tick</a>( StkFloat input ) <a name="l00210"></a>00210 inputFrames[ptrFrames] = input;
<a name="l00211"></a>00211 { <a name="l00211"></a>00211
<a name="l00212"></a>00212 StkFloat sample; <a name="l00212"></a>00212 sample = outputFrames[ptrFrames++];
<a name="l00213"></a>00213 <a name="l00213"></a>00213
<a name="l00214"></a>00214 inputFrames[ptrFrames] = input; <a name="l00214"></a>00214 <span class="comment">// Check for end condition</span>
<a name="l00215"></a>00215 <a name="l00215"></a>00215 <span class="keywordflow">if</span> ( ptrFrames == (<span class="keywordtype">int</span>) inputFrames.<a class="code" href="classstk_1_1StkFrames.html#a5c41aae98f77487c004085912d1f8f79" title="Returns the total number of audio samples represented by the object.">size</a>() ){
<a name="l00216"></a>00216 sample = outputFrames[ptrFrames++]; <a name="l00216"></a>00216 ptrFrames = 0;
<a name="l00217"></a>00217 <a name="l00217"></a>00217 <a class="code" href="classstk_1_1LentPitShift.html#a5af0a9e3902ca6fc7c5d77d861d74445" title="Apply the effect on the input samples and store it.">process</a>( );
<a name="l00218"></a>00218 <span class="comment">// Check for end condition</span> <a name="l00218"></a>00218 }
<a name="l00219"></a>00219 <span class="keywordflow">if</span> ( ptrFrames == (<span class="keywordtype">int</span>) inputFrames.<a class="code" href="classstk_1_1StkFrames.html#a5c41aae98f77487c004085912d1f8f79" title="Returns the total number of audio samples represented by the object.">size</a>() ){ <a name="l00219"></a>00219
<a name="l00220"></a>00220 ptrFrames = 0; <a name="l00220"></a>00220 <span class="keywordflow">return</span> sample;
<a name="l00221"></a>00221 <a class="code" href="classstk_1_1LentPitShift.html#a5af0a9e3902ca6fc7c5d77d861d74445" title="Apply the effect on the input samples and store it.">process</a>( ); <a name="l00221"></a>00221 }
<a name="l00222"></a>00222 } <a name="l00222"></a>00222
<a name="l00223"></a>00223 <a name="l00223"></a><a class="code" href="classstk_1_1LentPitShift.html#a158cb313f45bbae6ee327cbc539abdd1">00223</a> <span class="keyword">inline</span> <a class="code" href="classstk_1_1StkFrames.html" title="An STK class to handle vectorized audio data.">StkFrames</a>&amp; <a class="code" href="classstk_1_1LentPitShift.html#a2bbc39e8e78dc672a0be451ec1fd6b7d" title="Input one sample to the filter and return one output.">LentPitShift :: tick</a>( <a class="code" href="classstk_1_1StkFrames.html" title="An STK class to handle vectorized audio data.">StkFrames</a>&amp; frames, <span class="keywordtype">unsigned</span> <span class="keywordtype">int</span> channel )
<a name="l00224"></a>00224 <span class="keywordflow">return</span> sample; <a name="l00224"></a>00224 {
<a name="l00225"></a>00225 } <a name="l00225"></a>00225 <span class="preprocessor">#if defined(_STK_DEBUG_)</span>
<a name="l00226"></a>00226 <a name="l00226"></a>00226 <span class="preprocessor"></span> <span class="keywordflow">if</span> ( channel &gt;= frames.<a class="code" href="classstk_1_1StkFrames.html#aec7ef9c46675a24111aa6e2fda3ba870" title="Return the number of channels represented by the data.">channels</a>() ) {
<a name="l00227"></a><a class="code" href="classstk_1_1LentPitShift.html#a158cb313f45bbae6ee327cbc539abdd1">00227</a> <span class="keyword">inline</span> <a class="code" href="classstk_1_1StkFrames.html" title="An STK class to handle vectorized audio data.">StkFrames</a>&amp; <a class="code" href="classstk_1_1LentPitShift.html#a2bbc39e8e78dc672a0be451ec1fd6b7d" title="Input one sample to the filter and return one output.">LentPitShift :: tick</a>( <a class="code" href="classstk_1_1StkFrames.html" title="An STK class to handle vectorized audio data.">StkFrames</a>&amp; frames, <span class="keywordtype">unsigned</span> <span class="keywordtype">int</span> channel ) <a name="l00227"></a>00227 oStream_ &lt;&lt; <span class="stringliteral">&quot;LentPitShift::tick(): channel and StkFrames arguments are incompatible!&quot;</span>;
<a name="l00228"></a>00228 { <a name="l00228"></a>00228 <a class="code" href="classstk_1_1Stk.html#a48ac73a0d8ca28445ba1a054e1f061ff" title="Static function for error reporting and handling using c-strings.">handleError</a>( StkError::FUNCTION_ARGUMENT );
<a name="l00229"></a>00229 <span class="preprocessor">#if defined(_STK_DEBUG_)</span> <a name="l00229"></a>00229 }
<a name="l00230"></a>00230 <span class="preprocessor"></span> <span class="keywordflow">if</span> ( channel &gt;= frames.<a class="code" href="classstk_1_1StkFrames.html#aec7ef9c46675a24111aa6e2fda3ba870" title="Return the number of channels represented by the data.">channels</a>() ) { <a name="l00230"></a>00230 <span class="preprocessor">#endif</span>
<a name="l00231"></a>00231 oStream_ &lt;&lt; <span class="stringliteral">&quot;LentPitShift::tick(): channel and StkFrames arguments are incompatible!&quot;</span>; <a name="l00231"></a>00231 <span class="preprocessor"></span>
<a name="l00232"></a>00232 <a class="code" href="classstk_1_1Stk.html#a48ac73a0d8ca28445ba1a054e1f061ff" title="Static function for error reporting and handling using c-strings.">handleError</a>( StkError::FUNCTION_ARGUMENT ); <a name="l00232"></a>00232 StkFloat *samples = &amp;frames[channel];
<a name="l00233"></a>00233 } <a name="l00233"></a>00233 <span class="keywordtype">unsigned</span> <span class="keywordtype">int</span> hop = frames.<a class="code" href="classstk_1_1StkFrames.html#aec7ef9c46675a24111aa6e2fda3ba870" title="Return the number of channels represented by the data.">channels</a>();
<a name="l00234"></a>00234 <span class="preprocessor">#endif</span> <a name="l00234"></a>00234 <span class="keywordflow">for</span> ( <span class="keywordtype">unsigned</span> <span class="keywordtype">int</span> i=0; i&lt;frames.<a class="code" href="classstk_1_1StkFrames.html#a05b1ab6fa750a8221a7d65c30e0cdab9" title="Return the number of sample frames represented by the data.">frames</a>(); i++, samples += hop ) {
<a name="l00235"></a>00235 <span class="preprocessor"></span> <a name="l00235"></a>00235 *samples = <a class="code" href="classstk_1_1LentPitShift.html#a2bbc39e8e78dc672a0be451ec1fd6b7d" title="Input one sample to the filter and return one output.">tick</a>( *samples );
<a name="l00236"></a>00236 StkFloat *samples = &amp;frames[channel]; <a name="l00236"></a>00236 }
<a name="l00237"></a>00237 <span class="keywordtype">unsigned</span> <span class="keywordtype">int</span> hop = frames.<a class="code" href="classstk_1_1StkFrames.html#aec7ef9c46675a24111aa6e2fda3ba870" title="Return the number of channels represented by the data.">channels</a>(); <a name="l00237"></a>00237
<a name="l00238"></a>00238 <span class="keywordflow">for</span> ( <span class="keywordtype">unsigned</span> <span class="keywordtype">int</span> i=0; i&lt;frames.<a class="code" href="classstk_1_1StkFrames.html#a05b1ab6fa750a8221a7d65c30e0cdab9" title="Return the number of sample frames represented by the data.">frames</a>(); i++, samples += hop ) { <a name="l00238"></a>00238 <span class="keywordflow">return</span> frames;
<a name="l00239"></a>00239 *samples = <a class="code" href="classstk_1_1LentPitShift.html#a2bbc39e8e78dc672a0be451ec1fd6b7d" title="Input one sample to the filter and return one output.">tick</a>( *samples ); <a name="l00239"></a>00239 }
<a name="l00240"></a>00240 } <a name="l00240"></a>00240
<a name="l00241"></a>00241 <a name="l00241"></a><a class="code" href="classstk_1_1LentPitShift.html#af93de733eedca65de40597bd4a1f7b2a">00241</a> <span class="keyword">inline</span> <a class="code" href="classstk_1_1StkFrames.html" title="An STK class to handle vectorized audio data.">StkFrames</a>&amp; <a class="code" href="classstk_1_1LentPitShift.html#a2bbc39e8e78dc672a0be451ec1fd6b7d" title="Input one sample to the filter and return one output.">LentPitShift :: tick</a>( <a class="code" href="classstk_1_1StkFrames.html" title="An STK class to handle vectorized audio data.">StkFrames</a>&amp; iFrames, <a class="code" href="classstk_1_1StkFrames.html" title="An STK class to handle vectorized audio data.">StkFrames</a>&amp; oFrames, <span class="keywordtype">unsigned</span> <span class="keywordtype">int</span> iChannel, <span class="keywordtype">unsigned</span> <span class="keywordtype">int</span> oChannel )
<a name="l00242"></a>00242 <span class="keywordflow">return</span> frames; <a name="l00242"></a>00242 {
<a name="l00243"></a>00243 } <a name="l00243"></a>00243 <span class="preprocessor">#if defined(_STK_DEBUG_)</span>
<a name="l00244"></a>00244 <a name="l00244"></a>00244 <span class="preprocessor"></span> <span class="keywordflow">if</span> ( iChannel &gt;= iFrames.<a class="code" href="classstk_1_1StkFrames.html#aec7ef9c46675a24111aa6e2fda3ba870" title="Return the number of channels represented by the data.">channels</a>() || oChannel &gt;= oFrames.<a class="code" href="classstk_1_1StkFrames.html#aec7ef9c46675a24111aa6e2fda3ba870" title="Return the number of channels represented by the data.">channels</a>() ) {
<a name="l00245"></a><a class="code" href="classstk_1_1LentPitShift.html#af93de733eedca65de40597bd4a1f7b2a">00245</a> <span class="keyword">inline</span> <a class="code" href="classstk_1_1StkFrames.html" title="An STK class to handle vectorized audio data.">StkFrames</a>&amp; <a class="code" href="classstk_1_1LentPitShift.html#a2bbc39e8e78dc672a0be451ec1fd6b7d" title="Input one sample to the filter and return one output.">LentPitShift :: tick</a>( <a class="code" href="classstk_1_1StkFrames.html" title="An STK class to handle vectorized audio data.">StkFrames</a>&amp; iFrames, <a class="code" href="classstk_1_1StkFrames.html" title="An STK class to handle vectorized audio data.">StkFrames</a>&amp; oFrames, <span class="keywordtype">unsigned</span> <span class="keywordtype">int</span> iChannel, <span class="keywordtype">unsigned</span> <span class="keywordtype">int</span> oChannel ) <a name="l00245"></a>00245 oStream_ &lt;&lt; <span class="stringliteral">&quot;LentPitShift::tick(): channel and StkFrames arguments are incompatible!&quot;</span>;
<a name="l00246"></a>00246 { <a name="l00246"></a>00246 <a class="code" href="classstk_1_1Stk.html#a48ac73a0d8ca28445ba1a054e1f061ff" title="Static function for error reporting and handling using c-strings.">handleError</a>( StkError::FUNCTION_ARGUMENT );
<a name="l00247"></a>00247 <span class="preprocessor">#if defined(_STK_DEBUG_)</span> <a name="l00247"></a>00247 }
<a name="l00248"></a>00248 <span class="preprocessor"></span> <span class="keywordflow">if</span> ( iChannel &gt;= iFrames.<a class="code" href="classstk_1_1StkFrames.html#aec7ef9c46675a24111aa6e2fda3ba870" title="Return the number of channels represented by the data.">channels</a>() || oChannel &gt;= oFrames.<a class="code" href="classstk_1_1StkFrames.html#aec7ef9c46675a24111aa6e2fda3ba870" title="Return the number of channels represented by the data.">channels</a>() ) { <a name="l00248"></a>00248 <span class="preprocessor">#endif</span>
<a name="l00249"></a>00249 oStream_ &lt;&lt; <span class="stringliteral">&quot;LentPitShift::tick(): channel and StkFrames arguments are incompatible!&quot;</span>; <a name="l00249"></a>00249 <span class="preprocessor"></span>
<a name="l00250"></a>00250 <a class="code" href="classstk_1_1Stk.html#a48ac73a0d8ca28445ba1a054e1f061ff" title="Static function for error reporting and handling using c-strings.">handleError</a>( StkError::FUNCTION_ARGUMENT ); <a name="l00250"></a>00250 StkFloat *iSamples = &amp;iFrames[iChannel];
<a name="l00251"></a>00251 } <a name="l00251"></a>00251 StkFloat *oSamples = &amp;oFrames[oChannel];
<a name="l00252"></a>00252 <span class="preprocessor">#endif</span> <a name="l00252"></a>00252 <span class="keywordtype">unsigned</span> <span class="keywordtype">int</span> iHop = iFrames.<a class="code" href="classstk_1_1StkFrames.html#aec7ef9c46675a24111aa6e2fda3ba870" title="Return the number of channels represented by the data.">channels</a>(), oHop = oFrames.<a class="code" href="classstk_1_1StkFrames.html#aec7ef9c46675a24111aa6e2fda3ba870" title="Return the number of channels represented by the data.">channels</a>();
<a name="l00253"></a>00253 <span class="preprocessor"></span> <a name="l00253"></a>00253 <span class="keywordflow">for</span> ( <span class="keywordtype">unsigned</span> <span class="keywordtype">int</span> i=0; i&lt;iFrames.<a class="code" href="classstk_1_1StkFrames.html#a05b1ab6fa750a8221a7d65c30e0cdab9" title="Return the number of sample frames represented by the data.">frames</a>(); i++, iSamples += iHop, oSamples += oHop ) {
<a name="l00254"></a>00254 StkFloat *iSamples = &amp;iFrames[iChannel]; <a name="l00254"></a>00254 *oSamples = <a class="code" href="classstk_1_1LentPitShift.html#a2bbc39e8e78dc672a0be451ec1fd6b7d" title="Input one sample to the filter and return one output.">tick</a>( *iSamples );
<a name="l00255"></a>00255 StkFloat *oSamples = &amp;oFrames[oChannel]; <a name="l00255"></a>00255 }
<a name="l00256"></a>00256 <span class="keywordtype">unsigned</span> <span class="keywordtype">int</span> iHop = iFrames.<a class="code" href="classstk_1_1StkFrames.html#aec7ef9c46675a24111aa6e2fda3ba870" title="Return the number of channels represented by the data.">channels</a>(), oHop = oFrames.<a class="code" href="classstk_1_1StkFrames.html#aec7ef9c46675a24111aa6e2fda3ba870" title="Return the number of channels represented by the data.">channels</a>(); <a name="l00256"></a>00256
<a name="l00257"></a>00257 <span class="keywordflow">for</span> ( <span class="keywordtype">unsigned</span> <span class="keywordtype">int</span> i=0; i&lt;iFrames.<a class="code" href="classstk_1_1StkFrames.html#a05b1ab6fa750a8221a7d65c30e0cdab9" title="Return the number of sample frames represented by the data.">frames</a>(); i++, iSamples += iHop, oSamples += oHop ) { <a name="l00257"></a>00257 <span class="keywordflow">return</span> iFrames;
<a name="l00258"></a>00258 *oSamples = <a class="code" href="classstk_1_1LentPitShift.html#a2bbc39e8e78dc672a0be451ec1fd6b7d" title="Input one sample to the filter and return one output.">tick</a>( *iSamples ); <a name="l00258"></a>00258 }
<a name="l00259"></a>00259 } <a name="l00259"></a>00259
<a name="l00260"></a>00260 <a name="l00260"></a>00260 } <span class="comment">// stk namespace</span>
<a name="l00261"></a>00261 <span class="keywordflow">return</span> iFrames; <a name="l00261"></a>00261
<a name="l00262"></a>00262 } <a name="l00262"></a>00262 <span class="preprocessor">#endif</span>
<a name="l00263"></a>00263 <a name="l00263"></a>00263 <span class="preprocessor"></span>
<a name="l00264"></a>00264 } <span class="comment">// stk namespace</span>
<a name="l00265"></a>00265
<a name="l00266"></a>00266 <span class="preprocessor">#endif</span>
<a name="l00267"></a>00267 <span class="preprocessor"></span>
</pre></div></div> </pre></div></div>
<HR> <HR>
<table> <table>
<tr><td><A HREF="http://ccrma.stanford.edu/software/stk/"><I>The Synthesis ToolKit in C++ (STK)</I></A></td></tr> <tr><td><A HREF="http://ccrma.stanford.edu/software/stk/"><I>The Synthesis ToolKit in C++ (STK)</I></A></td></tr>
<tr><td>&copy;1995-2011 Perry R. Cook and Gary P. Scavone. All Rights Reserved.</td></tr> <tr><td>&copy;1995-2012 Perry R. Cook and Gary P. Scavone. All Rights Reserved.</td></tr>
</table> </table>
</BODY> </BODY>

View File

@@ -9,7 +9,7 @@
<a class="qindex" href="index.html">Home</a> &nbsp; <a class="qindex" href="information.html">Information</a> &nbsp; <a class="qindex" href="classes.html">Classes</a> &nbsp; <a class="qindex" href="download.html">Download</a> &nbsp; <a class="qindex" href="usage.html">Usage</a> &nbsp; <a class="qindex" href="maillist.html">Mail List</a> &nbsp; <a class="qindex" href="system.html">Requirements</a> &nbsp; <a class="qindex" href="links.html">Links</a> &nbsp; <a class="qindex" href="faq.html">FAQ</a> &nbsp; <a class="qindex" href="tutorial.html">Tutorial</a></CENTER> <a class="qindex" href="index.html">Home</a> &nbsp; <a class="qindex" href="information.html">Information</a> &nbsp; <a class="qindex" href="classes.html">Classes</a> &nbsp; <a class="qindex" href="download.html">Download</a> &nbsp; <a class="qindex" href="usage.html">Usage</a> &nbsp; <a class="qindex" href="maillist.html">Mail List</a> &nbsp; <a class="qindex" href="system.html">Requirements</a> &nbsp; <a class="qindex" href="links.html">Links</a> &nbsp; <a class="qindex" href="faq.html">FAQ</a> &nbsp; <a class="qindex" href="tutorial.html">Tutorial</a></CENTER>
<HR> <HR>
<!-- Generated by Doxygen 1.6.2 --> <!-- Generated by Doxygen 1.6.2 -->
<div class="navpath"><a class="el" href="dir_f14fd23bc74c76f288031ad23b3f3505.html">include</a> <div class="navpath"><a class="el" href="dir_221deb9bdff892d63ed1e409450a60d2.html">include</a>
</div> </div>
<div class="contents"> <div class="contents">
<h1>Mandolin.h</h1><div class="fragment"><pre class="fragment"><a name="l00001"></a>00001 <span class="preprocessor">#ifndef STK_MANDOLIN_H</span> <h1>Mandolin.h</h1><div class="fragment"><pre class="fragment"><a name="l00001"></a>00001 <span class="preprocessor">#ifndef STK_MANDOLIN_H</span>
@@ -115,7 +115,7 @@
<table> <table>
<tr><td><A HREF="http://ccrma.stanford.edu/software/stk/"><I>The Synthesis ToolKit in C++ (STK)</I></A></td></tr> <tr><td><A HREF="http://ccrma.stanford.edu/software/stk/"><I>The Synthesis ToolKit in C++ (STK)</I></A></td></tr>
<tr><td>&copy;1995-2011 Perry R. Cook and Gary P. Scavone. All Rights Reserved.</td></tr> <tr><td>&copy;1995-2012 Perry R. Cook and Gary P. Scavone. All Rights Reserved.</td></tr>
</table> </table>
</BODY> </BODY>

View File

@@ -9,7 +9,7 @@
<a class="qindex" href="index.html">Home</a> &nbsp; <a class="qindex" href="information.html">Information</a> &nbsp; <a class="qindex" href="classes.html">Classes</a> &nbsp; <a class="qindex" href="download.html">Download</a> &nbsp; <a class="qindex" href="usage.html">Usage</a> &nbsp; <a class="qindex" href="maillist.html">Mail List</a> &nbsp; <a class="qindex" href="system.html">Requirements</a> &nbsp; <a class="qindex" href="links.html">Links</a> &nbsp; <a class="qindex" href="faq.html">FAQ</a> &nbsp; <a class="qindex" href="tutorial.html">Tutorial</a></CENTER> <a class="qindex" href="index.html">Home</a> &nbsp; <a class="qindex" href="information.html">Information</a> &nbsp; <a class="qindex" href="classes.html">Classes</a> &nbsp; <a class="qindex" href="download.html">Download</a> &nbsp; <a class="qindex" href="usage.html">Usage</a> &nbsp; <a class="qindex" href="maillist.html">Mail List</a> &nbsp; <a class="qindex" href="system.html">Requirements</a> &nbsp; <a class="qindex" href="links.html">Links</a> &nbsp; <a class="qindex" href="faq.html">FAQ</a> &nbsp; <a class="qindex" href="tutorial.html">Tutorial</a></CENTER>
<HR> <HR>
<!-- Generated by Doxygen 1.6.2 --> <!-- Generated by Doxygen 1.6.2 -->
<div class="navpath"><a class="el" href="dir_f14fd23bc74c76f288031ad23b3f3505.html">include</a> <div class="navpath"><a class="el" href="dir_221deb9bdff892d63ed1e409450a60d2.html">include</a>
</div> </div>
<div class="contents"> <div class="contents">
<h1>Mesh2D.h</h1><div class="fragment"><pre class="fragment"><a name="l00001"></a>00001 <span class="preprocessor">#ifndef STK_MESH2D_H</span> <h1>Mesh2D.h</h1><div class="fragment"><pre class="fragment"><a name="l00001"></a>00001 <span class="preprocessor">#ifndef STK_MESH2D_H</span>
@@ -118,7 +118,7 @@
<table> <table>
<tr><td><A HREF="http://ccrma.stanford.edu/software/stk/"><I>The Synthesis ToolKit in C++ (STK)</I></A></td></tr> <tr><td><A HREF="http://ccrma.stanford.edu/software/stk/"><I>The Synthesis ToolKit in C++ (STK)</I></A></td></tr>
<tr><td>&copy;1995-2011 Perry R. Cook and Gary P. Scavone. All Rights Reserved.</td></tr> <tr><td>&copy;1995-2012 Perry R. Cook and Gary P. Scavone. All Rights Reserved.</td></tr>
</table> </table>
</BODY> </BODY>

View File

@@ -9,7 +9,7 @@
<a class="qindex" href="index.html">Home</a> &nbsp; <a class="qindex" href="information.html">Information</a> &nbsp; <a class="qindex" href="classes.html">Classes</a> &nbsp; <a class="qindex" href="download.html">Download</a> &nbsp; <a class="qindex" href="usage.html">Usage</a> &nbsp; <a class="qindex" href="maillist.html">Mail List</a> &nbsp; <a class="qindex" href="system.html">Requirements</a> &nbsp; <a class="qindex" href="links.html">Links</a> &nbsp; <a class="qindex" href="faq.html">FAQ</a> &nbsp; <a class="qindex" href="tutorial.html">Tutorial</a></CENTER> <a class="qindex" href="index.html">Home</a> &nbsp; <a class="qindex" href="information.html">Information</a> &nbsp; <a class="qindex" href="classes.html">Classes</a> &nbsp; <a class="qindex" href="download.html">Download</a> &nbsp; <a class="qindex" href="usage.html">Usage</a> &nbsp; <a class="qindex" href="maillist.html">Mail List</a> &nbsp; <a class="qindex" href="system.html">Requirements</a> &nbsp; <a class="qindex" href="links.html">Links</a> &nbsp; <a class="qindex" href="faq.html">FAQ</a> &nbsp; <a class="qindex" href="tutorial.html">Tutorial</a></CENTER>
<HR> <HR>
<!-- Generated by Doxygen 1.6.2 --> <!-- Generated by Doxygen 1.6.2 -->
<div class="navpath"><a class="el" href="dir_f14fd23bc74c76f288031ad23b3f3505.html">include</a> <div class="navpath"><a class="el" href="dir_221deb9bdff892d63ed1e409450a60d2.html">include</a>
</div> </div>
<div class="contents"> <div class="contents">
<h1>Messager.h</h1><div class="fragment"><pre class="fragment"><a name="l00001"></a>00001 <span class="preprocessor">#ifndef STK_MESSAGER_H</span> <h1>Messager.h</h1><div class="fragment"><pre class="fragment"><a name="l00001"></a>00001 <span class="preprocessor">#ifndef STK_MESSAGER_H</span>
@@ -24,7 +24,7 @@
<a name="l00010"></a>00010 <span class="preprocessor">#include &quot;Mutex.h&quot;</span> <a name="l00010"></a>00010 <span class="preprocessor">#include &quot;Mutex.h&quot;</span>
<a name="l00011"></a>00011 <span class="preprocessor">#include &quot;Thread.h&quot;</span> <a name="l00011"></a>00011 <span class="preprocessor">#include &quot;Thread.h&quot;</span>
<a name="l00012"></a>00012 <span class="preprocessor">#include &quot;TcpServer.h&quot;</span> <a name="l00012"></a>00012 <span class="preprocessor">#include &quot;TcpServer.h&quot;</span>
<a name="l00013"></a>00013 <span class="preprocessor">#include &quot;RtMidi.h&quot;</span> <a name="l00013"></a>00013 <span class="preprocessor">#include &quot;<a class="code" href="RtMidi_8h.html">RtMidi.h</a>&quot;</span>
<a name="l00014"></a>00014 <a name="l00014"></a>00014
<a name="l00015"></a>00015 <span class="preprocessor">#endif // __STK_REALTIME__</span> <a name="l00015"></a>00015 <span class="preprocessor">#endif // __STK_REALTIME__</span>
<a name="l00016"></a>00016 <span class="preprocessor"></span> <a name="l00016"></a>00016 <span class="preprocessor"></span>
@@ -103,7 +103,7 @@
<table> <table>
<tr><td><A HREF="http://ccrma.stanford.edu/software/stk/"><I>The Synthesis ToolKit in C++ (STK)</I></A></td></tr> <tr><td><A HREF="http://ccrma.stanford.edu/software/stk/"><I>The Synthesis ToolKit in C++ (STK)</I></A></td></tr>
<tr><td>&copy;1995-2011 Perry R. Cook and Gary P. Scavone. All Rights Reserved.</td></tr> <tr><td>&copy;1995-2012 Perry R. Cook and Gary P. Scavone. All Rights Reserved.</td></tr>
</table> </table>
</BODY> </BODY>

View File

@@ -9,7 +9,7 @@
<a class="qindex" href="index.html">Home</a> &nbsp; <a class="qindex" href="information.html">Information</a> &nbsp; <a class="qindex" href="classes.html">Classes</a> &nbsp; <a class="qindex" href="download.html">Download</a> &nbsp; <a class="qindex" href="usage.html">Usage</a> &nbsp; <a class="qindex" href="maillist.html">Mail List</a> &nbsp; <a class="qindex" href="system.html">Requirements</a> &nbsp; <a class="qindex" href="links.html">Links</a> &nbsp; <a class="qindex" href="faq.html">FAQ</a> &nbsp; <a class="qindex" href="tutorial.html">Tutorial</a></CENTER> <a class="qindex" href="index.html">Home</a> &nbsp; <a class="qindex" href="information.html">Information</a> &nbsp; <a class="qindex" href="classes.html">Classes</a> &nbsp; <a class="qindex" href="download.html">Download</a> &nbsp; <a class="qindex" href="usage.html">Usage</a> &nbsp; <a class="qindex" href="maillist.html">Mail List</a> &nbsp; <a class="qindex" href="system.html">Requirements</a> &nbsp; <a class="qindex" href="links.html">Links</a> &nbsp; <a class="qindex" href="faq.html">FAQ</a> &nbsp; <a class="qindex" href="tutorial.html">Tutorial</a></CENTER>
<HR> <HR>
<!-- Generated by Doxygen 1.6.2 --> <!-- Generated by Doxygen 1.6.2 -->
<div class="navpath"><a class="el" href="dir_f14fd23bc74c76f288031ad23b3f3505.html">include</a> <div class="navpath"><a class="el" href="dir_221deb9bdff892d63ed1e409450a60d2.html">include</a>
</div> </div>
<div class="contents"> <div class="contents">
<h1>MidiFileIn.h</h1><div class="fragment"><pre class="fragment"><a name="l00001"></a>00001 <span class="preprocessor">#ifndef STK_MIDIFILEIN_H</span> <h1>MidiFileIn.h</h1><div class="fragment"><pre class="fragment"><a name="l00001"></a>00001 <span class="preprocessor">#ifndef STK_MIDIFILEIN_H</span>
@@ -93,7 +93,7 @@
<table> <table>
<tr><td><A HREF="http://ccrma.stanford.edu/software/stk/"><I>The Synthesis ToolKit in C++ (STK)</I></A></td></tr> <tr><td><A HREF="http://ccrma.stanford.edu/software/stk/"><I>The Synthesis ToolKit in C++ (STK)</I></A></td></tr>
<tr><td>&copy;1995-2011 Perry R. Cook and Gary P. Scavone. All Rights Reserved.</td></tr> <tr><td>&copy;1995-2012 Perry R. Cook and Gary P. Scavone. All Rights Reserved.</td></tr>
</table> </table>
</BODY> </BODY>

View File

@@ -9,7 +9,7 @@
<a class="qindex" href="index.html">Home</a> &nbsp; <a class="qindex" href="information.html">Information</a> &nbsp; <a class="qindex" href="classes.html">Classes</a> &nbsp; <a class="qindex" href="download.html">Download</a> &nbsp; <a class="qindex" href="usage.html">Usage</a> &nbsp; <a class="qindex" href="maillist.html">Mail List</a> &nbsp; <a class="qindex" href="system.html">Requirements</a> &nbsp; <a class="qindex" href="links.html">Links</a> &nbsp; <a class="qindex" href="faq.html">FAQ</a> &nbsp; <a class="qindex" href="tutorial.html">Tutorial</a></CENTER> <a class="qindex" href="index.html">Home</a> &nbsp; <a class="qindex" href="information.html">Information</a> &nbsp; <a class="qindex" href="classes.html">Classes</a> &nbsp; <a class="qindex" href="download.html">Download</a> &nbsp; <a class="qindex" href="usage.html">Usage</a> &nbsp; <a class="qindex" href="maillist.html">Mail List</a> &nbsp; <a class="qindex" href="system.html">Requirements</a> &nbsp; <a class="qindex" href="links.html">Links</a> &nbsp; <a class="qindex" href="faq.html">FAQ</a> &nbsp; <a class="qindex" href="tutorial.html">Tutorial</a></CENTER>
<HR> <HR>
<!-- Generated by Doxygen 1.6.2 --> <!-- Generated by Doxygen 1.6.2 -->
<div class="navpath"><a class="el" href="dir_f14fd23bc74c76f288031ad23b3f3505.html">include</a> <div class="navpath"><a class="el" href="dir_221deb9bdff892d63ed1e409450a60d2.html">include</a>
</div> </div>
<div class="contents"> <div class="contents">
<h1>ModalBar.h</h1><div class="fragment"><pre class="fragment"><a name="l00001"></a>00001 <span class="preprocessor">#ifndef STK_MODALBAR_H</span> <h1>ModalBar.h</h1><div class="fragment"><pre class="fragment"><a name="l00001"></a>00001 <span class="preprocessor">#ifndef STK_MODALBAR_H</span>
@@ -48,7 +48,7 @@
<table> <table>
<tr><td><A HREF="http://ccrma.stanford.edu/software/stk/"><I>The Synthesis ToolKit in C++ (STK)</I></A></td></tr> <tr><td><A HREF="http://ccrma.stanford.edu/software/stk/"><I>The Synthesis ToolKit in C++ (STK)</I></A></td></tr>
<tr><td>&copy;1995-2011 Perry R. Cook and Gary P. Scavone. All Rights Reserved.</td></tr> <tr><td>&copy;1995-2012 Perry R. Cook and Gary P. Scavone. All Rights Reserved.</td></tr>
</table> </table>
</BODY> </BODY>

View File

@@ -9,7 +9,7 @@
<a class="qindex" href="index.html">Home</a> &nbsp; <a class="qindex" href="information.html">Information</a> &nbsp; <a class="qindex" href="classes.html">Classes</a> &nbsp; <a class="qindex" href="download.html">Download</a> &nbsp; <a class="qindex" href="usage.html">Usage</a> &nbsp; <a class="qindex" href="maillist.html">Mail List</a> &nbsp; <a class="qindex" href="system.html">Requirements</a> &nbsp; <a class="qindex" href="links.html">Links</a> &nbsp; <a class="qindex" href="faq.html">FAQ</a> &nbsp; <a class="qindex" href="tutorial.html">Tutorial</a></CENTER> <a class="qindex" href="index.html">Home</a> &nbsp; <a class="qindex" href="information.html">Information</a> &nbsp; <a class="qindex" href="classes.html">Classes</a> &nbsp; <a class="qindex" href="download.html">Download</a> &nbsp; <a class="qindex" href="usage.html">Usage</a> &nbsp; <a class="qindex" href="maillist.html">Mail List</a> &nbsp; <a class="qindex" href="system.html">Requirements</a> &nbsp; <a class="qindex" href="links.html">Links</a> &nbsp; <a class="qindex" href="faq.html">FAQ</a> &nbsp; <a class="qindex" href="tutorial.html">Tutorial</a></CENTER>
<HR> <HR>
<!-- Generated by Doxygen 1.6.2 --> <!-- Generated by Doxygen 1.6.2 -->
<div class="navpath"><a class="el" href="dir_f14fd23bc74c76f288031ad23b3f3505.html">include</a> <div class="navpath"><a class="el" href="dir_221deb9bdff892d63ed1e409450a60d2.html">include</a>
</div> </div>
<div class="contents"> <div class="contents">
<h1>Modal.h</h1><div class="fragment"><pre class="fragment"><a name="l00001"></a>00001 <span class="preprocessor">#ifndef STK_MODAL_H</span> <h1>Modal.h</h1><div class="fragment"><pre class="fragment"><a name="l00001"></a>00001 <span class="preprocessor">#ifndef STK_MODAL_H</span>
@@ -138,7 +138,7 @@
<table> <table>
<tr><td><A HREF="http://ccrma.stanford.edu/software/stk/"><I>The Synthesis ToolKit in C++ (STK)</I></A></td></tr> <tr><td><A HREF="http://ccrma.stanford.edu/software/stk/"><I>The Synthesis ToolKit in C++ (STK)</I></A></td></tr>
<tr><td>&copy;1995-2011 Perry R. Cook and Gary P. Scavone. All Rights Reserved.</td></tr> <tr><td>&copy;1995-2012 Perry R. Cook and Gary P. Scavone. All Rights Reserved.</td></tr>
</table> </table>
</BODY> </BODY>

View File

@@ -9,7 +9,7 @@
<a class="qindex" href="index.html">Home</a> &nbsp; <a class="qindex" href="information.html">Information</a> &nbsp; <a class="qindex" href="classes.html">Classes</a> &nbsp; <a class="qindex" href="download.html">Download</a> &nbsp; <a class="qindex" href="usage.html">Usage</a> &nbsp; <a class="qindex" href="maillist.html">Mail List</a> &nbsp; <a class="qindex" href="system.html">Requirements</a> &nbsp; <a class="qindex" href="links.html">Links</a> &nbsp; <a class="qindex" href="faq.html">FAQ</a> &nbsp; <a class="qindex" href="tutorial.html">Tutorial</a></CENTER> <a class="qindex" href="index.html">Home</a> &nbsp; <a class="qindex" href="information.html">Information</a> &nbsp; <a class="qindex" href="classes.html">Classes</a> &nbsp; <a class="qindex" href="download.html">Download</a> &nbsp; <a class="qindex" href="usage.html">Usage</a> &nbsp; <a class="qindex" href="maillist.html">Mail List</a> &nbsp; <a class="qindex" href="system.html">Requirements</a> &nbsp; <a class="qindex" href="links.html">Links</a> &nbsp; <a class="qindex" href="faq.html">FAQ</a> &nbsp; <a class="qindex" href="tutorial.html">Tutorial</a></CENTER>
<HR> <HR>
<!-- Generated by Doxygen 1.6.2 --> <!-- Generated by Doxygen 1.6.2 -->
<div class="navpath"><a class="el" href="dir_f14fd23bc74c76f288031ad23b3f3505.html">include</a> <div class="navpath"><a class="el" href="dir_221deb9bdff892d63ed1e409450a60d2.html">include</a>
</div> </div>
<div class="contents"> <div class="contents">
<h1>Modulate.h</h1><div class="fragment"><pre class="fragment"><a name="l00001"></a>00001 <span class="preprocessor">#ifndef STK_MODULATE_H</span> <h1>Modulate.h</h1><div class="fragment"><pre class="fragment"><a name="l00001"></a>00001 <span class="preprocessor">#ifndef STK_MODULATE_H</span>
@@ -99,7 +99,7 @@
<table> <table>
<tr><td><A HREF="http://ccrma.stanford.edu/software/stk/"><I>The Synthesis ToolKit in C++ (STK)</I></A></td></tr> <tr><td><A HREF="http://ccrma.stanford.edu/software/stk/"><I>The Synthesis ToolKit in C++ (STK)</I></A></td></tr>
<tr><td>&copy;1995-2011 Perry R. Cook and Gary P. Scavone. All Rights Reserved.</td></tr> <tr><td>&copy;1995-2012 Perry R. Cook and Gary P. Scavone. All Rights Reserved.</td></tr>
</table> </table>
</BODY> </BODY>

View File

@@ -9,7 +9,7 @@
<a class="qindex" href="index.html">Home</a> &nbsp; <a class="qindex" href="information.html">Information</a> &nbsp; <a class="qindex" href="classes.html">Classes</a> &nbsp; <a class="qindex" href="download.html">Download</a> &nbsp; <a class="qindex" href="usage.html">Usage</a> &nbsp; <a class="qindex" href="maillist.html">Mail List</a> &nbsp; <a class="qindex" href="system.html">Requirements</a> &nbsp; <a class="qindex" href="links.html">Links</a> &nbsp; <a class="qindex" href="faq.html">FAQ</a> &nbsp; <a class="qindex" href="tutorial.html">Tutorial</a></CENTER> <a class="qindex" href="index.html">Home</a> &nbsp; <a class="qindex" href="information.html">Information</a> &nbsp; <a class="qindex" href="classes.html">Classes</a> &nbsp; <a class="qindex" href="download.html">Download</a> &nbsp; <a class="qindex" href="usage.html">Usage</a> &nbsp; <a class="qindex" href="maillist.html">Mail List</a> &nbsp; <a class="qindex" href="system.html">Requirements</a> &nbsp; <a class="qindex" href="links.html">Links</a> &nbsp; <a class="qindex" href="faq.html">FAQ</a> &nbsp; <a class="qindex" href="tutorial.html">Tutorial</a></CENTER>
<HR> <HR>
<!-- Generated by Doxygen 1.6.2 --> <!-- Generated by Doxygen 1.6.2 -->
<div class="navpath"><a class="el" href="dir_f14fd23bc74c76f288031ad23b3f3505.html">include</a> <div class="navpath"><a class="el" href="dir_221deb9bdff892d63ed1e409450a60d2.html">include</a>
</div> </div>
<div class="contents"> <div class="contents">
<h1>Moog.h</h1><div class="fragment"><pre class="fragment"><a name="l00001"></a>00001 <span class="preprocessor">#ifndef STK_MOOG_H</span> <h1>Moog.h</h1><div class="fragment"><pre class="fragment"><a name="l00001"></a>00001 <span class="preprocessor">#ifndef STK_MOOG_H</span>
@@ -108,7 +108,7 @@
<table> <table>
<tr><td><A HREF="http://ccrma.stanford.edu/software/stk/"><I>The Synthesis ToolKit in C++ (STK)</I></A></td></tr> <tr><td><A HREF="http://ccrma.stanford.edu/software/stk/"><I>The Synthesis ToolKit in C++ (STK)</I></A></td></tr>
<tr><td>&copy;1995-2011 Perry R. Cook and Gary P. Scavone. All Rights Reserved.</td></tr> <tr><td>&copy;1995-2012 Perry R. Cook and Gary P. Scavone. All Rights Reserved.</td></tr>
</table> </table>
</BODY> </BODY>

View File

@@ -9,7 +9,7 @@
<a class="qindex" href="index.html">Home</a> &nbsp; <a class="qindex" href="information.html">Information</a> &nbsp; <a class="qindex" href="classes.html">Classes</a> &nbsp; <a class="qindex" href="download.html">Download</a> &nbsp; <a class="qindex" href="usage.html">Usage</a> &nbsp; <a class="qindex" href="maillist.html">Mail List</a> &nbsp; <a class="qindex" href="system.html">Requirements</a> &nbsp; <a class="qindex" href="links.html">Links</a> &nbsp; <a class="qindex" href="faq.html">FAQ</a> &nbsp; <a class="qindex" href="tutorial.html">Tutorial</a></CENTER> <a class="qindex" href="index.html">Home</a> &nbsp; <a class="qindex" href="information.html">Information</a> &nbsp; <a class="qindex" href="classes.html">Classes</a> &nbsp; <a class="qindex" href="download.html">Download</a> &nbsp; <a class="qindex" href="usage.html">Usage</a> &nbsp; <a class="qindex" href="maillist.html">Mail List</a> &nbsp; <a class="qindex" href="system.html">Requirements</a> &nbsp; <a class="qindex" href="links.html">Links</a> &nbsp; <a class="qindex" href="faq.html">FAQ</a> &nbsp; <a class="qindex" href="tutorial.html">Tutorial</a></CENTER>
<HR> <HR>
<!-- Generated by Doxygen 1.6.2 --> <!-- Generated by Doxygen 1.6.2 -->
<div class="navpath"><a class="el" href="dir_f14fd23bc74c76f288031ad23b3f3505.html">include</a> <div class="navpath"><a class="el" href="dir_221deb9bdff892d63ed1e409450a60d2.html">include</a>
</div> </div>
<div class="contents"> <div class="contents">
<h1>Mutex.h</h1><div class="fragment"><pre class="fragment"><a name="l00001"></a>00001 <span class="preprocessor">#ifndef STK_MUTEX_H</span> <h1>Mutex.h</h1><div class="fragment"><pre class="fragment"><a name="l00001"></a>00001 <span class="preprocessor">#ifndef STK_MUTEX_H</span>
@@ -69,7 +69,7 @@
<table> <table>
<tr><td><A HREF="http://ccrma.stanford.edu/software/stk/"><I>The Synthesis ToolKit in C++ (STK)</I></A></td></tr> <tr><td><A HREF="http://ccrma.stanford.edu/software/stk/"><I>The Synthesis ToolKit in C++ (STK)</I></A></td></tr>
<tr><td>&copy;1995-2011 Perry R. Cook and Gary P. Scavone. All Rights Reserved.</td></tr> <tr><td>&copy;1995-2012 Perry R. Cook and Gary P. Scavone. All Rights Reserved.</td></tr>
</table> </table>
</BODY> </BODY>

View File

@@ -9,7 +9,7 @@
<a class="qindex" href="index.html">Home</a> &nbsp; <a class="qindex" href="information.html">Information</a> &nbsp; <a class="qindex" href="classes.html">Classes</a> &nbsp; <a class="qindex" href="download.html">Download</a> &nbsp; <a class="qindex" href="usage.html">Usage</a> &nbsp; <a class="qindex" href="maillist.html">Mail List</a> &nbsp; <a class="qindex" href="system.html">Requirements</a> &nbsp; <a class="qindex" href="links.html">Links</a> &nbsp; <a class="qindex" href="faq.html">FAQ</a> &nbsp; <a class="qindex" href="tutorial.html">Tutorial</a></CENTER> <a class="qindex" href="index.html">Home</a> &nbsp; <a class="qindex" href="information.html">Information</a> &nbsp; <a class="qindex" href="classes.html">Classes</a> &nbsp; <a class="qindex" href="download.html">Download</a> &nbsp; <a class="qindex" href="usage.html">Usage</a> &nbsp; <a class="qindex" href="maillist.html">Mail List</a> &nbsp; <a class="qindex" href="system.html">Requirements</a> &nbsp; <a class="qindex" href="links.html">Links</a> &nbsp; <a class="qindex" href="faq.html">FAQ</a> &nbsp; <a class="qindex" href="tutorial.html">Tutorial</a></CENTER>
<HR> <HR>
<!-- Generated by Doxygen 1.6.2 --> <!-- Generated by Doxygen 1.6.2 -->
<div class="navpath"><a class="el" href="dir_f14fd23bc74c76f288031ad23b3f3505.html">include</a> <div class="navpath"><a class="el" href="dir_221deb9bdff892d63ed1e409450a60d2.html">include</a>
</div> </div>
<div class="contents"> <div class="contents">
<h1>NRev.h</h1><div class="fragment"><pre class="fragment"><a name="l00001"></a>00001 <span class="preprocessor">#ifndef STK_NREV_H</span> <h1>NRev.h</h1><div class="fragment"><pre class="fragment"><a name="l00001"></a>00001 <span class="preprocessor">#ifndef STK_NREV_H</span>
@@ -128,7 +128,7 @@
<table> <table>
<tr><td><A HREF="http://ccrma.stanford.edu/software/stk/"><I>The Synthesis ToolKit in C++ (STK)</I></A></td></tr> <tr><td><A HREF="http://ccrma.stanford.edu/software/stk/"><I>The Synthesis ToolKit in C++ (STK)</I></A></td></tr>
<tr><td>&copy;1995-2011 Perry R. Cook and Gary P. Scavone. All Rights Reserved.</td></tr> <tr><td>&copy;1995-2012 Perry R. Cook and Gary P. Scavone. All Rights Reserved.</td></tr>
</table> </table>
</BODY> </BODY>

View File

@@ -9,72 +9,73 @@
<a class="qindex" href="index.html">Home</a> &nbsp; <a class="qindex" href="information.html">Information</a> &nbsp; <a class="qindex" href="classes.html">Classes</a> &nbsp; <a class="qindex" href="download.html">Download</a> &nbsp; <a class="qindex" href="usage.html">Usage</a> &nbsp; <a class="qindex" href="maillist.html">Mail List</a> &nbsp; <a class="qindex" href="system.html">Requirements</a> &nbsp; <a class="qindex" href="links.html">Links</a> &nbsp; <a class="qindex" href="faq.html">FAQ</a> &nbsp; <a class="qindex" href="tutorial.html">Tutorial</a></CENTER> <a class="qindex" href="index.html">Home</a> &nbsp; <a class="qindex" href="information.html">Information</a> &nbsp; <a class="qindex" href="classes.html">Classes</a> &nbsp; <a class="qindex" href="download.html">Download</a> &nbsp; <a class="qindex" href="usage.html">Usage</a> &nbsp; <a class="qindex" href="maillist.html">Mail List</a> &nbsp; <a class="qindex" href="system.html">Requirements</a> &nbsp; <a class="qindex" href="links.html">Links</a> &nbsp; <a class="qindex" href="faq.html">FAQ</a> &nbsp; <a class="qindex" href="tutorial.html">Tutorial</a></CENTER>
<HR> <HR>
<!-- Generated by Doxygen 1.6.2 --> <!-- Generated by Doxygen 1.6.2 -->
<div class="navpath"><a class="el" href="dir_f14fd23bc74c76f288031ad23b3f3505.html">include</a> <div class="navpath"><a class="el" href="dir_221deb9bdff892d63ed1e409450a60d2.html">include</a>
</div> </div>
<div class="contents"> <div class="contents">
<h1>Noise.h</h1><div class="fragment"><pre class="fragment"><a name="l00001"></a>00001 <span class="preprocessor">#ifndef STK_NOISE_H</span> <h1>Noise.h</h1><div class="fragment"><pre class="fragment"><a name="l00001"></a>00001 <span class="preprocessor">#ifndef STK_NOISE_H</span>
<a name="l00002"></a>00002 <span class="preprocessor"></span><span class="preprocessor">#define STK_NOISE_H</span> <a name="l00002"></a>00002 <span class="preprocessor"></span><span class="preprocessor">#define STK_NOISE_H</span>
<a name="l00003"></a>00003 <span class="preprocessor"></span> <a name="l00003"></a>00003 <span class="preprocessor"></span>
<a name="l00004"></a>00004 <span class="preprocessor">#include &quot;Generator.h&quot;</span> <a name="l00004"></a>00004 <span class="preprocessor">#include &quot;Generator.h&quot;</span>
<a name="l00005"></a>00005 <a name="l00005"></a>00005 <span class="preprocessor">#include &lt;stdlib.h&gt;</span>
<a name="l00006"></a>00006 <span class="keyword">namespace </span>stk { <a name="l00006"></a>00006
<a name="l00007"></a>00007 <a name="l00007"></a>00007 <span class="keyword">namespace </span>stk {
<a name="l00008"></a>00008 <span class="comment">/***************************************************/</span> <a name="l00008"></a>00008
<a name="l00018"></a>00018 <span class="comment">/***************************************************/</span> <a name="l00009"></a>00009 <span class="comment">/***************************************************/</span>
<a name="l00019"></a>00019 <a name="l00019"></a>00019 <span class="comment">/***************************************************/</span>
<a name="l00020"></a><a class="code" href="classstk_1_1Noise.html">00020</a> <span class="keyword">class </span><a class="code" href="classstk_1_1Noise.html" title="STK noise generator.">Noise</a> : <span class="keyword">public</span> <a class="code" href="classstk_1_1Generator.html" title="STK abstract unit generator parent class.">Generator</a> <a name="l00020"></a>00020
<a name="l00021"></a>00021 { <a name="l00021"></a><a class="code" href="classstk_1_1Noise.html">00021</a> <span class="keyword">class </span><a class="code" href="classstk_1_1Noise.html" title="STK noise generator.">Noise</a> : <span class="keyword">public</span> <a class="code" href="classstk_1_1Generator.html" title="STK abstract unit generator parent class.">Generator</a>
<a name="l00022"></a>00022 <span class="keyword">public</span>: <a name="l00022"></a>00022 {
<a name="l00023"></a>00023 <a name="l00023"></a>00023 <span class="keyword">public</span>:
<a name="l00025"></a>00025 <a name="l00024"></a>00024
<a name="l00029"></a>00029 <a class="code" href="classstk_1_1Noise.html#a2d442a08883be25f10952dff4e515f98" title="Default constructor that can also take a specific seed value.">Noise</a>( <span class="keywordtype">unsigned</span> <span class="keywordtype">int</span> seed = 0 ); <a name="l00026"></a>00026
<a name="l00030"></a>00030 <a name="l00030"></a>00030 <a class="code" href="classstk_1_1Noise.html#a2d442a08883be25f10952dff4e515f98" title="Default constructor that can also take a specific seed value.">Noise</a>( <span class="keywordtype">unsigned</span> <span class="keywordtype">int</span> seed = 0 );
<a name="l00032"></a>00032 <a name="l00031"></a>00031
<a name="l00036"></a>00036 <span class="keywordtype">void</span> <a class="code" href="classstk_1_1Noise.html#a9507ae6eb261c577a64b4ecb5c1805dc" title="Seed the random number generator with a specific seed value.">setSeed</a>( <span class="keywordtype">unsigned</span> <span class="keywordtype">int</span> seed = 0 ); <a name="l00033"></a>00033
<a name="l00037"></a>00037 <a name="l00037"></a>00037 <span class="keywordtype">void</span> <a class="code" href="classstk_1_1Noise.html#a9507ae6eb261c577a64b4ecb5c1805dc" title="Seed the random number generator with a specific seed value.">setSeed</a>( <span class="keywordtype">unsigned</span> <span class="keywordtype">int</span> seed = 0 );
<a name="l00039"></a><a class="code" href="classstk_1_1Noise.html#a1d6c8ed80425cd0cea014bd2e328c823">00039</a> StkFloat <a class="code" href="classstk_1_1Noise.html#a1d6c8ed80425cd0cea014bd2e328c823" title="Return the last computed output value.">lastOut</a>( <span class="keywordtype">void</span> )<span class="keyword"> const </span>{ <span class="keywordflow">return</span> lastFrame_[0]; }; <a name="l00038"></a>00038
<a name="l00040"></a>00040 <a name="l00040"></a><a class="code" href="classstk_1_1Noise.html#a1d6c8ed80425cd0cea014bd2e328c823">00040</a> StkFloat <a class="code" href="classstk_1_1Noise.html#a1d6c8ed80425cd0cea014bd2e328c823" title="Return the last computed output value.">lastOut</a>( <span class="keywordtype">void</span> )<span class="keyword"> const </span>{ <span class="keywordflow">return</span> lastFrame_[0]; };
<a name="l00042"></a>00042 StkFloat <a class="code" href="classstk_1_1Noise.html#a8ac40f69475eb744e803d557e8438a6d" title="Compute and return one output sample.">tick</a>( <span class="keywordtype">void</span> ); <a name="l00041"></a>00041
<a name="l00043"></a>00043 <a name="l00043"></a>00043 StkFloat <a class="code" href="classstk_1_1Noise.html#a8ac40f69475eb744e803d557e8438a6d" title="Compute and return one output sample.">tick</a>( <span class="keywordtype">void</span> );
<a name="l00045"></a>00045 <a name="l00044"></a>00044
<a name="l00052"></a>00052 <a class="code" href="classstk_1_1StkFrames.html" title="An STK class to handle vectorized audio data.">StkFrames</a>&amp; <a class="code" href="classstk_1_1Noise.html#a8ac40f69475eb744e803d557e8438a6d" title="Compute and return one output sample.">tick</a>( <a class="code" href="classstk_1_1StkFrames.html" title="An STK class to handle vectorized audio data.">StkFrames</a>&amp; frames, <span class="keywordtype">unsigned</span> <span class="keywordtype">int</span> channel = 0 ); <a name="l00046"></a>00046
<a name="l00053"></a>00053 <a name="l00053"></a>00053 <a class="code" href="classstk_1_1StkFrames.html" title="An STK class to handle vectorized audio data.">StkFrames</a>&amp; <a class="code" href="classstk_1_1Noise.html#a8ac40f69475eb744e803d557e8438a6d" title="Compute and return one output sample.">tick</a>( <a class="code" href="classstk_1_1StkFrames.html" title="An STK class to handle vectorized audio data.">StkFrames</a>&amp; frames, <span class="keywordtype">unsigned</span> <span class="keywordtype">int</span> channel = 0 );
<a name="l00054"></a>00054 <span class="keyword">protected</span>: <a name="l00054"></a>00054
<a name="l00055"></a>00055 <a name="l00055"></a>00055 <span class="keyword">protected</span>:
<a name="l00056"></a>00056 }; <a name="l00056"></a>00056
<a name="l00057"></a>00057 <a name="l00057"></a>00057 };
<a name="l00058"></a><a class="code" href="classstk_1_1Noise.html#a8ac40f69475eb744e803d557e8438a6d">00058</a> <span class="keyword">inline</span> StkFloat <a class="code" href="classstk_1_1Noise.html#a8ac40f69475eb744e803d557e8438a6d" title="Compute and return one output sample.">Noise :: tick</a>( <span class="keywordtype">void</span> ) <a name="l00058"></a>00058
<a name="l00059"></a>00059 { <a name="l00059"></a><a class="code" href="classstk_1_1Noise.html#a8ac40f69475eb744e803d557e8438a6d">00059</a> <span class="keyword">inline</span> StkFloat <a class="code" href="classstk_1_1Noise.html#a8ac40f69475eb744e803d557e8438a6d" title="Compute and return one output sample.">Noise :: tick</a>( <span class="keywordtype">void</span> )
<a name="l00060"></a>00060 <span class="keywordflow">return</span> lastFrame_[0] = (StkFloat) ( 2.0 * rand() / (RAND_MAX + 1.0) - 1.0 ); <a name="l00060"></a>00060 {
<a name="l00061"></a>00061 } <a name="l00061"></a>00061 <span class="keywordflow">return</span> lastFrame_[0] = (StkFloat) ( 2.0 * rand() / (RAND_MAX + 1.0) - 1.0 );
<a name="l00062"></a>00062 <a name="l00062"></a>00062 }
<a name="l00063"></a><a class="code" href="classstk_1_1Noise.html#a2f92e91787dc19309305cf246632cd50">00063</a> <span class="keyword">inline</span> <a class="code" href="classstk_1_1StkFrames.html" title="An STK class to handle vectorized audio data.">StkFrames</a>&amp; <a class="code" href="classstk_1_1Noise.html#a8ac40f69475eb744e803d557e8438a6d" title="Compute and return one output sample.">Noise :: tick</a>( <a class="code" href="classstk_1_1StkFrames.html" title="An STK class to handle vectorized audio data.">StkFrames</a>&amp; frames, <span class="keywordtype">unsigned</span> <span class="keywordtype">int</span> channel ) <a name="l00063"></a>00063
<a name="l00064"></a>00064 { <a name="l00064"></a><a class="code" href="classstk_1_1Noise.html#a2f92e91787dc19309305cf246632cd50">00064</a> <span class="keyword">inline</span> <a class="code" href="classstk_1_1StkFrames.html" title="An STK class to handle vectorized audio data.">StkFrames</a>&amp; <a class="code" href="classstk_1_1Noise.html#a8ac40f69475eb744e803d557e8438a6d" title="Compute and return one output sample.">Noise :: tick</a>( <a class="code" href="classstk_1_1StkFrames.html" title="An STK class to handle vectorized audio data.">StkFrames</a>&amp; frames, <span class="keywordtype">unsigned</span> <span class="keywordtype">int</span> channel )
<a name="l00065"></a>00065 <span class="preprocessor">#if defined(_STK_DEBUG_)</span> <a name="l00065"></a>00065 {
<a name="l00066"></a>00066 <span class="preprocessor"></span> <span class="keywordflow">if</span> ( channel &gt;= frames.<a class="code" href="classstk_1_1StkFrames.html#aec7ef9c46675a24111aa6e2fda3ba870" title="Return the number of channels represented by the data.">channels</a>() ) { <a name="l00066"></a>00066 <span class="preprocessor">#if defined(_STK_DEBUG_)</span>
<a name="l00067"></a>00067 oStream_ &lt;&lt; <span class="stringliteral">&quot;Noise::tick(): channel and StkFrames arguments are incompatible!&quot;</span>; <a name="l00067"></a>00067 <span class="preprocessor"></span> <span class="keywordflow">if</span> ( channel &gt;= frames.<a class="code" href="classstk_1_1StkFrames.html#aec7ef9c46675a24111aa6e2fda3ba870" title="Return the number of channels represented by the data.">channels</a>() ) {
<a name="l00068"></a>00068 <a class="code" href="classstk_1_1Stk.html#a48ac73a0d8ca28445ba1a054e1f061ff" title="Static function for error reporting and handling using c-strings.">handleError</a>( StkError::FUNCTION_ARGUMENT ); <a name="l00068"></a>00068 oStream_ &lt;&lt; <span class="stringliteral">&quot;Noise::tick(): channel and StkFrames arguments are incompatible!&quot;</span>;
<a name="l00069"></a>00069 } <a name="l00069"></a>00069 <a class="code" href="classstk_1_1Stk.html#a48ac73a0d8ca28445ba1a054e1f061ff" title="Static function for error reporting and handling using c-strings.">handleError</a>( StkError::FUNCTION_ARGUMENT );
<a name="l00070"></a>00070 <span class="preprocessor">#endif</span> <a name="l00070"></a>00070 }
<a name="l00071"></a>00071 <span class="preprocessor"></span> <a name="l00071"></a>00071 <span class="preprocessor">#endif</span>
<a name="l00072"></a>00072 StkFloat *samples = &amp;frames[channel]; <a name="l00072"></a>00072 <span class="preprocessor"></span>
<a name="l00073"></a>00073 <span class="keywordtype">unsigned</span> <span class="keywordtype">int</span> hop = frames.<a class="code" href="classstk_1_1StkFrames.html#aec7ef9c46675a24111aa6e2fda3ba870" title="Return the number of channels represented by the data.">channels</a>(); <a name="l00073"></a>00073 StkFloat *samples = &amp;frames[channel];
<a name="l00074"></a>00074 <span class="keywordflow">for</span> ( <span class="keywordtype">unsigned</span> <span class="keywordtype">int</span> i=0; i&lt;frames.<a class="code" href="classstk_1_1StkFrames.html#a05b1ab6fa750a8221a7d65c30e0cdab9" title="Return the number of sample frames represented by the data.">frames</a>(); i++, samples += hop ) <a name="l00074"></a>00074 <span class="keywordtype">unsigned</span> <span class="keywordtype">int</span> hop = frames.<a class="code" href="classstk_1_1StkFrames.html#aec7ef9c46675a24111aa6e2fda3ba870" title="Return the number of channels represented by the data.">channels</a>();
<a name="l00075"></a>00075 *samples = (StkFloat) ( 2.0 * rand() / (RAND_MAX + 1.0) - 1.0 ); <a name="l00075"></a>00075 <span class="keywordflow">for</span> ( <span class="keywordtype">unsigned</span> <span class="keywordtype">int</span> i=0; i&lt;frames.<a class="code" href="classstk_1_1StkFrames.html#a05b1ab6fa750a8221a7d65c30e0cdab9" title="Return the number of sample frames represented by the data.">frames</a>(); i++, samples += hop )
<a name="l00076"></a>00076 <a name="l00076"></a>00076 *samples = (StkFloat) ( 2.0 * rand() / (RAND_MAX + 1.0) - 1.0 );
<a name="l00077"></a>00077 lastFrame_[0] = *(samples-hop); <a name="l00077"></a>00077
<a name="l00078"></a>00078 <span class="keywordflow">return</span> frames; <a name="l00078"></a>00078 lastFrame_[0] = *(samples-hop);
<a name="l00079"></a>00079 } <a name="l00079"></a>00079 <span class="keywordflow">return</span> frames;
<a name="l00080"></a>00080 <a name="l00080"></a>00080 }
<a name="l00081"></a>00081 } <span class="comment">// stk namespace</span> <a name="l00081"></a>00081
<a name="l00082"></a>00082 <a name="l00082"></a>00082 } <span class="comment">// stk namespace</span>
<a name="l00083"></a>00083 <span class="preprocessor">#endif</span> <a name="l00083"></a>00083
<a name="l00084"></a>00084 <span class="preprocessor">#endif</span>
</pre></div></div> </pre></div></div>
<HR> <HR>
<table> <table>
<tr><td><A HREF="http://ccrma.stanford.edu/software/stk/"><I>The Synthesis ToolKit in C++ (STK)</I></A></td></tr> <tr><td><A HREF="http://ccrma.stanford.edu/software/stk/"><I>The Synthesis ToolKit in C++ (STK)</I></A></td></tr>
<tr><td>&copy;1995-2011 Perry R. Cook and Gary P. Scavone. All Rights Reserved.</td></tr> <tr><td>&copy;1995-2012 Perry R. Cook and Gary P. Scavone. All Rights Reserved.</td></tr>
</table> </table>
</BODY> </BODY>

View File

@@ -9,7 +9,7 @@
<a class="qindex" href="index.html">Home</a> &nbsp; <a class="qindex" href="information.html">Information</a> &nbsp; <a class="qindex" href="classes.html">Classes</a> &nbsp; <a class="qindex" href="download.html">Download</a> &nbsp; <a class="qindex" href="usage.html">Usage</a> &nbsp; <a class="qindex" href="maillist.html">Mail List</a> &nbsp; <a class="qindex" href="system.html">Requirements</a> &nbsp; <a class="qindex" href="links.html">Links</a> &nbsp; <a class="qindex" href="faq.html">FAQ</a> &nbsp; <a class="qindex" href="tutorial.html">Tutorial</a></CENTER> <a class="qindex" href="index.html">Home</a> &nbsp; <a class="qindex" href="information.html">Information</a> &nbsp; <a class="qindex" href="classes.html">Classes</a> &nbsp; <a class="qindex" href="download.html">Download</a> &nbsp; <a class="qindex" href="usage.html">Usage</a> &nbsp; <a class="qindex" href="maillist.html">Mail List</a> &nbsp; <a class="qindex" href="system.html">Requirements</a> &nbsp; <a class="qindex" href="links.html">Links</a> &nbsp; <a class="qindex" href="faq.html">FAQ</a> &nbsp; <a class="qindex" href="tutorial.html">Tutorial</a></CENTER>
<HR> <HR>
<!-- Generated by Doxygen 1.6.2 --> <!-- Generated by Doxygen 1.6.2 -->
<div class="navpath"><a class="el" href="dir_f14fd23bc74c76f288031ad23b3f3505.html">include</a> <div class="navpath"><a class="el" href="dir_221deb9bdff892d63ed1e409450a60d2.html">include</a>
</div> </div>
<div class="contents"> <div class="contents">
<h1>OnePole.h</h1><div class="fragment"><pre class="fragment"><a name="l00001"></a>00001 <span class="preprocessor">#ifndef STK_ONEPOLE_H</span> <h1>OnePole.h</h1><div class="fragment"><pre class="fragment"><a name="l00001"></a>00001 <span class="preprocessor">#ifndef STK_ONEPOLE_H</span>
@@ -111,7 +111,7 @@
<table> <table>
<tr><td><A HREF="http://ccrma.stanford.edu/software/stk/"><I>The Synthesis ToolKit in C++ (STK)</I></A></td></tr> <tr><td><A HREF="http://ccrma.stanford.edu/software/stk/"><I>The Synthesis ToolKit in C++ (STK)</I></A></td></tr>
<tr><td>&copy;1995-2011 Perry R. Cook and Gary P. Scavone. All Rights Reserved.</td></tr> <tr><td>&copy;1995-2012 Perry R. Cook and Gary P. Scavone. All Rights Reserved.</td></tr>
</table> </table>
</BODY> </BODY>

View File

@@ -9,7 +9,7 @@
<a class="qindex" href="index.html">Home</a> &nbsp; <a class="qindex" href="information.html">Information</a> &nbsp; <a class="qindex" href="classes.html">Classes</a> &nbsp; <a class="qindex" href="download.html">Download</a> &nbsp; <a class="qindex" href="usage.html">Usage</a> &nbsp; <a class="qindex" href="maillist.html">Mail List</a> &nbsp; <a class="qindex" href="system.html">Requirements</a> &nbsp; <a class="qindex" href="links.html">Links</a> &nbsp; <a class="qindex" href="faq.html">FAQ</a> &nbsp; <a class="qindex" href="tutorial.html">Tutorial</a></CENTER> <a class="qindex" href="index.html">Home</a> &nbsp; <a class="qindex" href="information.html">Information</a> &nbsp; <a class="qindex" href="classes.html">Classes</a> &nbsp; <a class="qindex" href="download.html">Download</a> &nbsp; <a class="qindex" href="usage.html">Usage</a> &nbsp; <a class="qindex" href="maillist.html">Mail List</a> &nbsp; <a class="qindex" href="system.html">Requirements</a> &nbsp; <a class="qindex" href="links.html">Links</a> &nbsp; <a class="qindex" href="faq.html">FAQ</a> &nbsp; <a class="qindex" href="tutorial.html">Tutorial</a></CENTER>
<HR> <HR>
<!-- Generated by Doxygen 1.6.2 --> <!-- Generated by Doxygen 1.6.2 -->
<div class="navpath"><a class="el" href="dir_f14fd23bc74c76f288031ad23b3f3505.html">include</a> <div class="navpath"><a class="el" href="dir_221deb9bdff892d63ed1e409450a60d2.html">include</a>
</div> </div>
<div class="contents"> <div class="contents">
<h1>OneZero.h</h1><div class="fragment"><pre class="fragment"><a name="l00001"></a>00001 <span class="preprocessor">#ifndef STK_ONEZERO_H</span> <h1>OneZero.h</h1><div class="fragment"><pre class="fragment"><a name="l00001"></a>00001 <span class="preprocessor">#ifndef STK_ONEZERO_H</span>
@@ -112,7 +112,7 @@
<table> <table>
<tr><td><A HREF="http://ccrma.stanford.edu/software/stk/"><I>The Synthesis ToolKit in C++ (STK)</I></A></td></tr> <tr><td><A HREF="http://ccrma.stanford.edu/software/stk/"><I>The Synthesis ToolKit in C++ (STK)</I></A></td></tr>
<tr><td>&copy;1995-2011 Perry R. Cook and Gary P. Scavone. All Rights Reserved.</td></tr> <tr><td>&copy;1995-2012 Perry R. Cook and Gary P. Scavone. All Rights Reserved.</td></tr>
</table> </table>
</BODY> </BODY>

View File

@@ -9,7 +9,7 @@
<a class="qindex" href="index.html">Home</a> &nbsp; <a class="qindex" href="information.html">Information</a> &nbsp; <a class="qindex" href="classes.html">Classes</a> &nbsp; <a class="qindex" href="download.html">Download</a> &nbsp; <a class="qindex" href="usage.html">Usage</a> &nbsp; <a class="qindex" href="maillist.html">Mail List</a> &nbsp; <a class="qindex" href="system.html">Requirements</a> &nbsp; <a class="qindex" href="links.html">Links</a> &nbsp; <a class="qindex" href="faq.html">FAQ</a> &nbsp; <a class="qindex" href="tutorial.html">Tutorial</a></CENTER> <a class="qindex" href="index.html">Home</a> &nbsp; <a class="qindex" href="information.html">Information</a> &nbsp; <a class="qindex" href="classes.html">Classes</a> &nbsp; <a class="qindex" href="download.html">Download</a> &nbsp; <a class="qindex" href="usage.html">Usage</a> &nbsp; <a class="qindex" href="maillist.html">Mail List</a> &nbsp; <a class="qindex" href="system.html">Requirements</a> &nbsp; <a class="qindex" href="links.html">Links</a> &nbsp; <a class="qindex" href="faq.html">FAQ</a> &nbsp; <a class="qindex" href="tutorial.html">Tutorial</a></CENTER>
<HR> <HR>
<!-- Generated by Doxygen 1.6.2 --> <!-- Generated by Doxygen 1.6.2 -->
<div class="navpath"><a class="el" href="dir_f14fd23bc74c76f288031ad23b3f3505.html">include</a> <div class="navpath"><a class="el" href="dir_221deb9bdff892d63ed1e409450a60d2.html">include</a>
</div> </div>
<div class="contents"> <div class="contents">
<h1>PRCRev.h</h1><div class="fragment"><pre class="fragment"><a name="l00001"></a>00001 <span class="preprocessor">#ifndef STK_PRCREV_H</span> <h1>PRCRev.h</h1><div class="fragment"><pre class="fragment"><a name="l00001"></a>00001 <span class="preprocessor">#ifndef STK_PRCREV_H</span>
@@ -109,7 +109,7 @@
<table> <table>
<tr><td><A HREF="http://ccrma.stanford.edu/software/stk/"><I>The Synthesis ToolKit in C++ (STK)</I></A></td></tr> <tr><td><A HREF="http://ccrma.stanford.edu/software/stk/"><I>The Synthesis ToolKit in C++ (STK)</I></A></td></tr>
<tr><td>&copy;1995-2011 Perry R. Cook and Gary P. Scavone. All Rights Reserved.</td></tr> <tr><td>&copy;1995-2012 Perry R. Cook and Gary P. Scavone. All Rights Reserved.</td></tr>
</table> </table>
</BODY> </BODY>

View File

@@ -9,7 +9,7 @@
<a class="qindex" href="index.html">Home</a> &nbsp; <a class="qindex" href="information.html">Information</a> &nbsp; <a class="qindex" href="classes.html">Classes</a> &nbsp; <a class="qindex" href="download.html">Download</a> &nbsp; <a class="qindex" href="usage.html">Usage</a> &nbsp; <a class="qindex" href="maillist.html">Mail List</a> &nbsp; <a class="qindex" href="system.html">Requirements</a> &nbsp; <a class="qindex" href="links.html">Links</a> &nbsp; <a class="qindex" href="faq.html">FAQ</a> &nbsp; <a class="qindex" href="tutorial.html">Tutorial</a></CENTER> <a class="qindex" href="index.html">Home</a> &nbsp; <a class="qindex" href="information.html">Information</a> &nbsp; <a class="qindex" href="classes.html">Classes</a> &nbsp; <a class="qindex" href="download.html">Download</a> &nbsp; <a class="qindex" href="usage.html">Usage</a> &nbsp; <a class="qindex" href="maillist.html">Mail List</a> &nbsp; <a class="qindex" href="system.html">Requirements</a> &nbsp; <a class="qindex" href="links.html">Links</a> &nbsp; <a class="qindex" href="faq.html">FAQ</a> &nbsp; <a class="qindex" href="tutorial.html">Tutorial</a></CENTER>
<HR> <HR>
<!-- Generated by Doxygen 1.6.2 --> <!-- Generated by Doxygen 1.6.2 -->
<div class="navpath"><a class="el" href="dir_f14fd23bc74c76f288031ad23b3f3505.html">include</a> <div class="navpath"><a class="el" href="dir_221deb9bdff892d63ed1e409450a60d2.html">include</a>
</div> </div>
<div class="contents"> <div class="contents">
<h1>PercFlut.h</h1><div class="fragment"><pre class="fragment"><a name="l00001"></a>00001 <span class="preprocessor">#ifndef STK_PERCFLUT_H</span> <h1>PercFlut.h</h1><div class="fragment"><pre class="fragment"><a name="l00001"></a>00001 <span class="preprocessor">#ifndef STK_PERCFLUT_H</span>
@@ -105,7 +105,7 @@
<table> <table>
<tr><td><A HREF="http://ccrma.stanford.edu/software/stk/"><I>The Synthesis ToolKit in C++ (STK)</I></A></td></tr> <tr><td><A HREF="http://ccrma.stanford.edu/software/stk/"><I>The Synthesis ToolKit in C++ (STK)</I></A></td></tr>
<tr><td>&copy;1995-2011 Perry R. Cook and Gary P. Scavone. All Rights Reserved.</td></tr> <tr><td>&copy;1995-2012 Perry R. Cook and Gary P. Scavone. All Rights Reserved.</td></tr>
</table> </table>
</BODY> </BODY>

View File

@@ -9,7 +9,7 @@
<a class="qindex" href="index.html">Home</a> &nbsp; <a class="qindex" href="information.html">Information</a> &nbsp; <a class="qindex" href="classes.html">Classes</a> &nbsp; <a class="qindex" href="download.html">Download</a> &nbsp; <a class="qindex" href="usage.html">Usage</a> &nbsp; <a class="qindex" href="maillist.html">Mail List</a> &nbsp; <a class="qindex" href="system.html">Requirements</a> &nbsp; <a class="qindex" href="links.html">Links</a> &nbsp; <a class="qindex" href="faq.html">FAQ</a> &nbsp; <a class="qindex" href="tutorial.html">Tutorial</a></CENTER> <a class="qindex" href="index.html">Home</a> &nbsp; <a class="qindex" href="information.html">Information</a> &nbsp; <a class="qindex" href="classes.html">Classes</a> &nbsp; <a class="qindex" href="download.html">Download</a> &nbsp; <a class="qindex" href="usage.html">Usage</a> &nbsp; <a class="qindex" href="maillist.html">Mail List</a> &nbsp; <a class="qindex" href="system.html">Requirements</a> &nbsp; <a class="qindex" href="links.html">Links</a> &nbsp; <a class="qindex" href="faq.html">FAQ</a> &nbsp; <a class="qindex" href="tutorial.html">Tutorial</a></CENTER>
<HR> <HR>
<!-- Generated by Doxygen 1.6.2 --> <!-- Generated by Doxygen 1.6.2 -->
<div class="navpath"><a class="el" href="dir_f14fd23bc74c76f288031ad23b3f3505.html">include</a> <div class="navpath"><a class="el" href="dir_221deb9bdff892d63ed1e409450a60d2.html">include</a>
</div> </div>
<div class="contents"> <div class="contents">
<h1>Phonemes.h</h1><div class="fragment"><pre class="fragment"><a name="l00001"></a>00001 <span class="preprocessor">#ifndef STK_PHONEMES_H</span> <h1>Phonemes.h</h1><div class="fragment"><pre class="fragment"><a name="l00001"></a>00001 <span class="preprocessor">#ifndef STK_PHONEMES_H</span>
@@ -57,7 +57,7 @@
<table> <table>
<tr><td><A HREF="http://ccrma.stanford.edu/software/stk/"><I>The Synthesis ToolKit in C++ (STK)</I></A></td></tr> <tr><td><A HREF="http://ccrma.stanford.edu/software/stk/"><I>The Synthesis ToolKit in C++ (STK)</I></A></td></tr>
<tr><td>&copy;1995-2011 Perry R. Cook and Gary P. Scavone. All Rights Reserved.</td></tr> <tr><td>&copy;1995-2012 Perry R. Cook and Gary P. Scavone. All Rights Reserved.</td></tr>
</table> </table>
</BODY> </BODY>

View File

@@ -9,7 +9,7 @@
<a class="qindex" href="index.html">Home</a> &nbsp; <a class="qindex" href="information.html">Information</a> &nbsp; <a class="qindex" href="classes.html">Classes</a> &nbsp; <a class="qindex" href="download.html">Download</a> &nbsp; <a class="qindex" href="usage.html">Usage</a> &nbsp; <a class="qindex" href="maillist.html">Mail List</a> &nbsp; <a class="qindex" href="system.html">Requirements</a> &nbsp; <a class="qindex" href="links.html">Links</a> &nbsp; <a class="qindex" href="faq.html">FAQ</a> &nbsp; <a class="qindex" href="tutorial.html">Tutorial</a></CENTER> <a class="qindex" href="index.html">Home</a> &nbsp; <a class="qindex" href="information.html">Information</a> &nbsp; <a class="qindex" href="classes.html">Classes</a> &nbsp; <a class="qindex" href="download.html">Download</a> &nbsp; <a class="qindex" href="usage.html">Usage</a> &nbsp; <a class="qindex" href="maillist.html">Mail List</a> &nbsp; <a class="qindex" href="system.html">Requirements</a> &nbsp; <a class="qindex" href="links.html">Links</a> &nbsp; <a class="qindex" href="faq.html">FAQ</a> &nbsp; <a class="qindex" href="tutorial.html">Tutorial</a></CENTER>
<HR> <HR>
<!-- Generated by Doxygen 1.6.2 --> <!-- Generated by Doxygen 1.6.2 -->
<div class="navpath"><a class="el" href="dir_f14fd23bc74c76f288031ad23b3f3505.html">include</a> <div class="navpath"><a class="el" href="dir_221deb9bdff892d63ed1e409450a60d2.html">include</a>
</div> </div>
<div class="contents"> <div class="contents">
<h1>PitShift.h</h1><div class="fragment"><pre class="fragment"><a name="l00001"></a>00001 <span class="preprocessor">#ifndef STK_PITSHIFT_H</span> <h1>PitShift.h</h1><div class="fragment"><pre class="fragment"><a name="l00001"></a>00001 <span class="preprocessor">#ifndef STK_PITSHIFT_H</span>
@@ -95,7 +95,7 @@
<table> <table>
<tr><td><A HREF="http://ccrma.stanford.edu/software/stk/"><I>The Synthesis ToolKit in C++ (STK)</I></A></td></tr> <tr><td><A HREF="http://ccrma.stanford.edu/software/stk/"><I>The Synthesis ToolKit in C++ (STK)</I></A></td></tr>
<tr><td>&copy;1995-2011 Perry R. Cook and Gary P. Scavone. All Rights Reserved.</td></tr> <tr><td>&copy;1995-2012 Perry R. Cook and Gary P. Scavone. All Rights Reserved.</td></tr>
</table> </table>
</BODY> </BODY>

View File

@@ -9,7 +9,7 @@
<a class="qindex" href="index.html">Home</a> &nbsp; <a class="qindex" href="information.html">Information</a> &nbsp; <a class="qindex" href="classes.html">Classes</a> &nbsp; <a class="qindex" href="download.html">Download</a> &nbsp; <a class="qindex" href="usage.html">Usage</a> &nbsp; <a class="qindex" href="maillist.html">Mail List</a> &nbsp; <a class="qindex" href="system.html">Requirements</a> &nbsp; <a class="qindex" href="links.html">Links</a> &nbsp; <a class="qindex" href="faq.html">FAQ</a> &nbsp; <a class="qindex" href="tutorial.html">Tutorial</a></CENTER> <a class="qindex" href="index.html">Home</a> &nbsp; <a class="qindex" href="information.html">Information</a> &nbsp; <a class="qindex" href="classes.html">Classes</a> &nbsp; <a class="qindex" href="download.html">Download</a> &nbsp; <a class="qindex" href="usage.html">Usage</a> &nbsp; <a class="qindex" href="maillist.html">Mail List</a> &nbsp; <a class="qindex" href="system.html">Requirements</a> &nbsp; <a class="qindex" href="links.html">Links</a> &nbsp; <a class="qindex" href="faq.html">FAQ</a> &nbsp; <a class="qindex" href="tutorial.html">Tutorial</a></CENTER>
<HR> <HR>
<!-- Generated by Doxygen 1.6.2 --> <!-- Generated by Doxygen 1.6.2 -->
<div class="navpath"><a class="el" href="dir_f14fd23bc74c76f288031ad23b3f3505.html">include</a> <div class="navpath"><a class="el" href="dir_221deb9bdff892d63ed1e409450a60d2.html">include</a>
</div> </div>
<div class="contents"> <div class="contents">
<h1>Plucked.h</h1><div class="fragment"><pre class="fragment"><a name="l00001"></a>00001 <span class="preprocessor">#ifndef STK_PLUCKED_H</span> <h1>Plucked.h</h1><div class="fragment"><pre class="fragment"><a name="l00001"></a>00001 <span class="preprocessor">#ifndef STK_PLUCKED_H</span>
@@ -100,7 +100,7 @@
<table> <table>
<tr><td><A HREF="http://ccrma.stanford.edu/software/stk/"><I>The Synthesis ToolKit in C++ (STK)</I></A></td></tr> <tr><td><A HREF="http://ccrma.stanford.edu/software/stk/"><I>The Synthesis ToolKit in C++ (STK)</I></A></td></tr>
<tr><td>&copy;1995-2011 Perry R. Cook and Gary P. Scavone. All Rights Reserved.</td></tr> <tr><td>&copy;1995-2012 Perry R. Cook and Gary P. Scavone. All Rights Reserved.</td></tr>
</table> </table>
</BODY> </BODY>

View File

@@ -9,7 +9,7 @@
<a class="qindex" href="index.html">Home</a> &nbsp; <a class="qindex" href="information.html">Information</a> &nbsp; <a class="qindex" href="classes.html">Classes</a> &nbsp; <a class="qindex" href="download.html">Download</a> &nbsp; <a class="qindex" href="usage.html">Usage</a> &nbsp; <a class="qindex" href="maillist.html">Mail List</a> &nbsp; <a class="qindex" href="system.html">Requirements</a> &nbsp; <a class="qindex" href="links.html">Links</a> &nbsp; <a class="qindex" href="faq.html">FAQ</a> &nbsp; <a class="qindex" href="tutorial.html">Tutorial</a></CENTER> <a class="qindex" href="index.html">Home</a> &nbsp; <a class="qindex" href="information.html">Information</a> &nbsp; <a class="qindex" href="classes.html">Classes</a> &nbsp; <a class="qindex" href="download.html">Download</a> &nbsp; <a class="qindex" href="usage.html">Usage</a> &nbsp; <a class="qindex" href="maillist.html">Mail List</a> &nbsp; <a class="qindex" href="system.html">Requirements</a> &nbsp; <a class="qindex" href="links.html">Links</a> &nbsp; <a class="qindex" href="faq.html">FAQ</a> &nbsp; <a class="qindex" href="tutorial.html">Tutorial</a></CENTER>
<HR> <HR>
<!-- Generated by Doxygen 1.6.2 --> <!-- Generated by Doxygen 1.6.2 -->
<div class="navpath"><a class="el" href="dir_f14fd23bc74c76f288031ad23b3f3505.html">include</a> <div class="navpath"><a class="el" href="dir_221deb9bdff892d63ed1e409450a60d2.html">include</a>
</div> </div>
<div class="contents"> <div class="contents">
<h1>PoleZero.h</h1><div class="fragment"><pre class="fragment"><a name="l00001"></a>00001 <span class="preprocessor">#ifndef STK_POLEZERO_H</span> <h1>PoleZero.h</h1><div class="fragment"><pre class="fragment"><a name="l00001"></a>00001 <span class="preprocessor">#ifndef STK_POLEZERO_H</span>
@@ -93,7 +93,7 @@
<table> <table>
<tr><td><A HREF="http://ccrma.stanford.edu/software/stk/"><I>The Synthesis ToolKit in C++ (STK)</I></A></td></tr> <tr><td><A HREF="http://ccrma.stanford.edu/software/stk/"><I>The Synthesis ToolKit in C++ (STK)</I></A></td></tr>
<tr><td>&copy;1995-2011 Perry R. Cook and Gary P. Scavone. All Rights Reserved.</td></tr> <tr><td>&copy;1995-2012 Perry R. Cook and Gary P. Scavone. All Rights Reserved.</td></tr>
</table> </table>
</BODY> </BODY>

View File

@@ -9,7 +9,7 @@
<a class="qindex" href="index.html">Home</a> &nbsp; <a class="qindex" href="information.html">Information</a> &nbsp; <a class="qindex" href="classes.html">Classes</a> &nbsp; <a class="qindex" href="download.html">Download</a> &nbsp; <a class="qindex" href="usage.html">Usage</a> &nbsp; <a class="qindex" href="maillist.html">Mail List</a> &nbsp; <a class="qindex" href="system.html">Requirements</a> &nbsp; <a class="qindex" href="links.html">Links</a> &nbsp; <a class="qindex" href="faq.html">FAQ</a> &nbsp; <a class="qindex" href="tutorial.html">Tutorial</a></CENTER> <a class="qindex" href="index.html">Home</a> &nbsp; <a class="qindex" href="information.html">Information</a> &nbsp; <a class="qindex" href="classes.html">Classes</a> &nbsp; <a class="qindex" href="download.html">Download</a> &nbsp; <a class="qindex" href="usage.html">Usage</a> &nbsp; <a class="qindex" href="maillist.html">Mail List</a> &nbsp; <a class="qindex" href="system.html">Requirements</a> &nbsp; <a class="qindex" href="links.html">Links</a> &nbsp; <a class="qindex" href="faq.html">FAQ</a> &nbsp; <a class="qindex" href="tutorial.html">Tutorial</a></CENTER>
<HR> <HR>
<!-- Generated by Doxygen 1.6.2 --> <!-- Generated by Doxygen 1.6.2 -->
<div class="navpath"><a class="el" href="dir_f14fd23bc74c76f288031ad23b3f3505.html">include</a> <div class="navpath"><a class="el" href="dir_221deb9bdff892d63ed1e409450a60d2.html">include</a>
</div> </div>
<div class="contents"> <div class="contents">
<h1>ReedTable.h</h1><div class="fragment"><pre class="fragment"><a name="l00001"></a>00001 <span class="preprocessor">#ifndef STK_REEDTABLE_H</span> <h1>ReedTable.h</h1><div class="fragment"><pre class="fragment"><a name="l00001"></a>00001 <span class="preprocessor">#ifndef STK_REEDTABLE_H</span>
@@ -116,7 +116,7 @@
<table> <table>
<tr><td><A HREF="http://ccrma.stanford.edu/software/stk/"><I>The Synthesis ToolKit in C++ (STK)</I></A></td></tr> <tr><td><A HREF="http://ccrma.stanford.edu/software/stk/"><I>The Synthesis ToolKit in C++ (STK)</I></A></td></tr>
<tr><td>&copy;1995-2011 Perry R. Cook and Gary P. Scavone. All Rights Reserved.</td></tr> <tr><td>&copy;1995-2012 Perry R. Cook and Gary P. Scavone. All Rights Reserved.</td></tr>
</table> </table>
</BODY> </BODY>

View File

@@ -9,7 +9,7 @@
<a class="qindex" href="index.html">Home</a> &nbsp; <a class="qindex" href="information.html">Information</a> &nbsp; <a class="qindex" href="classes.html">Classes</a> &nbsp; <a class="qindex" href="download.html">Download</a> &nbsp; <a class="qindex" href="usage.html">Usage</a> &nbsp; <a class="qindex" href="maillist.html">Mail List</a> &nbsp; <a class="qindex" href="system.html">Requirements</a> &nbsp; <a class="qindex" href="links.html">Links</a> &nbsp; <a class="qindex" href="faq.html">FAQ</a> &nbsp; <a class="qindex" href="tutorial.html">Tutorial</a></CENTER> <a class="qindex" href="index.html">Home</a> &nbsp; <a class="qindex" href="information.html">Information</a> &nbsp; <a class="qindex" href="classes.html">Classes</a> &nbsp; <a class="qindex" href="download.html">Download</a> &nbsp; <a class="qindex" href="usage.html">Usage</a> &nbsp; <a class="qindex" href="maillist.html">Mail List</a> &nbsp; <a class="qindex" href="system.html">Requirements</a> &nbsp; <a class="qindex" href="links.html">Links</a> &nbsp; <a class="qindex" href="faq.html">FAQ</a> &nbsp; <a class="qindex" href="tutorial.html">Tutorial</a></CENTER>
<HR> <HR>
<!-- Generated by Doxygen 1.6.2 --> <!-- Generated by Doxygen 1.6.2 -->
<div class="navpath"><a class="el" href="dir_f14fd23bc74c76f288031ad23b3f3505.html">include</a> <div class="navpath"><a class="el" href="dir_221deb9bdff892d63ed1e409450a60d2.html">include</a>
</div> </div>
<div class="contents"> <div class="contents">
<h1>Resonate.h</h1><div class="fragment"><pre class="fragment"><a name="l00001"></a>00001 <span class="preprocessor">#ifndef STK_RESONATE_H</span> <h1>Resonate.h</h1><div class="fragment"><pre class="fragment"><a name="l00001"></a>00001 <span class="preprocessor">#ifndef STK_RESONATE_H</span>
@@ -109,7 +109,7 @@
<table> <table>
<tr><td><A HREF="http://ccrma.stanford.edu/software/stk/"><I>The Synthesis ToolKit in C++ (STK)</I></A></td></tr> <tr><td><A HREF="http://ccrma.stanford.edu/software/stk/"><I>The Synthesis ToolKit in C++ (STK)</I></A></td></tr>
<tr><td>&copy;1995-2011 Perry R. Cook and Gary P. Scavone. All Rights Reserved.</td></tr> <tr><td>&copy;1995-2012 Perry R. Cook and Gary P. Scavone. All Rights Reserved.</td></tr>
</table> </table>
</BODY> </BODY>

View File

@@ -9,7 +9,7 @@
<a class="qindex" href="index.html">Home</a> &nbsp; <a class="qindex" href="information.html">Information</a> &nbsp; <a class="qindex" href="classes.html">Classes</a> &nbsp; <a class="qindex" href="download.html">Download</a> &nbsp; <a class="qindex" href="usage.html">Usage</a> &nbsp; <a class="qindex" href="maillist.html">Mail List</a> &nbsp; <a class="qindex" href="system.html">Requirements</a> &nbsp; <a class="qindex" href="links.html">Links</a> &nbsp; <a class="qindex" href="faq.html">FAQ</a> &nbsp; <a class="qindex" href="tutorial.html">Tutorial</a></CENTER> <a class="qindex" href="index.html">Home</a> &nbsp; <a class="qindex" href="information.html">Information</a> &nbsp; <a class="qindex" href="classes.html">Classes</a> &nbsp; <a class="qindex" href="download.html">Download</a> &nbsp; <a class="qindex" href="usage.html">Usage</a> &nbsp; <a class="qindex" href="maillist.html">Mail List</a> &nbsp; <a class="qindex" href="system.html">Requirements</a> &nbsp; <a class="qindex" href="links.html">Links</a> &nbsp; <a class="qindex" href="faq.html">FAQ</a> &nbsp; <a class="qindex" href="tutorial.html">Tutorial</a></CENTER>
<HR> <HR>
<!-- Generated by Doxygen 1.6.2 --> <!-- Generated by Doxygen 1.6.2 -->
<div class="navpath"><a class="el" href="dir_f14fd23bc74c76f288031ad23b3f3505.html">include</a> <div class="navpath"><a class="el" href="dir_221deb9bdff892d63ed1e409450a60d2.html">include</a>
</div> </div>
<div class="contents"> <div class="contents">
<h1>Rhodey.h</h1><div class="fragment"><pre class="fragment"><a name="l00001"></a>00001 <span class="preprocessor">#ifndef STK_RHODEY_H</span> <h1>Rhodey.h</h1><div class="fragment"><pre class="fragment"><a name="l00001"></a>00001 <span class="preprocessor">#ifndef STK_RHODEY_H</span>
@@ -102,7 +102,7 @@
<table> <table>
<tr><td><A HREF="http://ccrma.stanford.edu/software/stk/"><I>The Synthesis ToolKit in C++ (STK)</I></A></td></tr> <tr><td><A HREF="http://ccrma.stanford.edu/software/stk/"><I>The Synthesis ToolKit in C++ (STK)</I></A></td></tr>
<tr><td>&copy;1995-2011 Perry R. Cook and Gary P. Scavone. All Rights Reserved.</td></tr> <tr><td>&copy;1995-2012 Perry R. Cook and Gary P. Scavone. All Rights Reserved.</td></tr>
</table> </table>
</BODY> </BODY>

View File

@@ -9,7 +9,7 @@
<a class="qindex" href="index.html">Home</a> &nbsp; <a class="qindex" href="information.html">Information</a> &nbsp; <a class="qindex" href="classes.html">Classes</a> &nbsp; <a class="qindex" href="download.html">Download</a> &nbsp; <a class="qindex" href="usage.html">Usage</a> &nbsp; <a class="qindex" href="maillist.html">Mail List</a> &nbsp; <a class="qindex" href="system.html">Requirements</a> &nbsp; <a class="qindex" href="links.html">Links</a> &nbsp; <a class="qindex" href="faq.html">FAQ</a> &nbsp; <a class="qindex" href="tutorial.html">Tutorial</a></CENTER> <a class="qindex" href="index.html">Home</a> &nbsp; <a class="qindex" href="information.html">Information</a> &nbsp; <a class="qindex" href="classes.html">Classes</a> &nbsp; <a class="qindex" href="download.html">Download</a> &nbsp; <a class="qindex" href="usage.html">Usage</a> &nbsp; <a class="qindex" href="maillist.html">Mail List</a> &nbsp; <a class="qindex" href="system.html">Requirements</a> &nbsp; <a class="qindex" href="links.html">Links</a> &nbsp; <a class="qindex" href="faq.html">FAQ</a> &nbsp; <a class="qindex" href="tutorial.html">Tutorial</a></CENTER>
<HR> <HR>
<!-- Generated by Doxygen 1.6.2 --> <!-- Generated by Doxygen 1.6.2 -->
<div class="navpath"><a class="el" href="dir_f14fd23bc74c76f288031ad23b3f3505.html">include</a> <div class="navpath"><a class="el" href="dir_221deb9bdff892d63ed1e409450a60d2.html">include</a>
</div> </div>
<div class="contents"> <div class="contents">
<h1>RtAudio.h File Reference</h1> <h1>RtAudio.h File Reference</h1>
@@ -140,7 +140,7 @@
<table> <table>
<tr><td><A HREF="http://ccrma.stanford.edu/software/stk/"><I>The Synthesis ToolKit in C++ (STK)</I></A></td></tr> <tr><td><A HREF="http://ccrma.stanford.edu/software/stk/"><I>The Synthesis ToolKit in C++ (STK)</I></A></td></tr>
<tr><td>&copy;1995-2011 Perry R. Cook and Gary P. Scavone. All Rights Reserved.</td></tr> <tr><td>&copy;1995-2012 Perry R. Cook and Gary P. Scavone. All Rights Reserved.</td></tr>
</table> </table>
</BODY> </BODY>

File diff suppressed because it is too large Load Diff

View File

@@ -9,7 +9,7 @@
<a class="qindex" href="index.html">Home</a> &nbsp; <a class="qindex" href="information.html">Information</a> &nbsp; <a class="qindex" href="classes.html">Classes</a> &nbsp; <a class="qindex" href="download.html">Download</a> &nbsp; <a class="qindex" href="usage.html">Usage</a> &nbsp; <a class="qindex" href="maillist.html">Mail List</a> &nbsp; <a class="qindex" href="system.html">Requirements</a> &nbsp; <a class="qindex" href="links.html">Links</a> &nbsp; <a class="qindex" href="faq.html">FAQ</a> &nbsp; <a class="qindex" href="tutorial.html">Tutorial</a></CENTER> <a class="qindex" href="index.html">Home</a> &nbsp; <a class="qindex" href="information.html">Information</a> &nbsp; <a class="qindex" href="classes.html">Classes</a> &nbsp; <a class="qindex" href="download.html">Download</a> &nbsp; <a class="qindex" href="usage.html">Usage</a> &nbsp; <a class="qindex" href="maillist.html">Mail List</a> &nbsp; <a class="qindex" href="system.html">Requirements</a> &nbsp; <a class="qindex" href="links.html">Links</a> &nbsp; <a class="qindex" href="faq.html">FAQ</a> &nbsp; <a class="qindex" href="tutorial.html">Tutorial</a></CENTER>
<HR> <HR>
<!-- Generated by Doxygen 1.6.2 --> <!-- Generated by Doxygen 1.6.2 -->
<div class="navpath"><a class="el" href="dir_f14fd23bc74c76f288031ad23b3f3505.html">include</a> <div class="navpath"><a class="el" href="dir_221deb9bdff892d63ed1e409450a60d2.html">include</a>
</div> </div>
<div class="contents"> <div class="contents">
<h1>RtError.h</h1><div class="fragment"><pre class="fragment"><a name="l00001"></a>00001 <span class="comment">/************************************************************************/</span> <h1>RtError.h</h1><div class="fragment"><pre class="fragment"><a name="l00001"></a>00001 <span class="comment">/************************************************************************/</span>
@@ -62,7 +62,7 @@
<table> <table>
<tr><td><A HREF="http://ccrma.stanford.edu/software/stk/"><I>The Synthesis ToolKit in C++ (STK)</I></A></td></tr> <tr><td><A HREF="http://ccrma.stanford.edu/software/stk/"><I>The Synthesis ToolKit in C++ (STK)</I></A></td></tr>
<tr><td>&copy;1995-2011 Perry R. Cook and Gary P. Scavone. All Rights Reserved.</td></tr> <tr><td>&copy;1995-2012 Perry R. Cook and Gary P. Scavone. All Rights Reserved.</td></tr>
</table> </table>
</BODY> </BODY>

36
doc/html/RtMidi_8h.html Normal file
View File

@@ -0,0 +1,36 @@
<HTML>
<HEAD>
<TITLE>The Synthesis ToolKit in C++ (STK)</TITLE>
<LINK HREF="doxygen.css" REL="stylesheet" TYPE="text/css">
</HEAD>
<BODY BGCOLOR="#FFFFFF">
<CENTER>
<img src="princeton.gif"> &nbsp; <img src="ccrma.gif"> &nbsp; <img src="mcgill.gif"><P>
<a class="qindex" href="index.html">Home</a> &nbsp; <a class="qindex" href="information.html">Information</a> &nbsp; <a class="qindex" href="classes.html">Classes</a> &nbsp; <a class="qindex" href="download.html">Download</a> &nbsp; <a class="qindex" href="usage.html">Usage</a> &nbsp; <a class="qindex" href="maillist.html">Mail List</a> &nbsp; <a class="qindex" href="system.html">Requirements</a> &nbsp; <a class="qindex" href="links.html">Links</a> &nbsp; <a class="qindex" href="faq.html">FAQ</a> &nbsp; <a class="qindex" href="tutorial.html">Tutorial</a></CENTER>
<HR>
<!-- Generated by Doxygen 1.6.2 -->
<div class="navpath"><a class="el" href="dir_221deb9bdff892d63ed1e409450a60d2.html">include</a>
</div>
<div class="contents">
<h1>RtMidi.h File Reference</h1>
<p><a href="RtMidi_8h_source.html">Go to the source code of this file.</a></p>
<table border="0" cellpadding="0" cellspacing="0">
<tr><td colspan="2"><h2>Classes</h2></td></tr>
<tr><td class="memItemLeft" align="right" valign="top">class &nbsp;</td><td class="memItemRight" valign="bottom"><a class="el" href="classRtMidi.html">RtMidi</a></td></tr>
<tr><td class="mdescLeft">&nbsp;</td><td class="mdescRight">An abstract base class for realtime MIDI input/output. <a href="classRtMidi.html#_details">More...</a><br/></td></tr>
<tr><td class="memItemLeft" align="right" valign="top">class &nbsp;</td><td class="memItemRight" valign="bottom"><a class="el" href="classRtMidiIn.html">RtMidiIn</a></td></tr>
<tr><td class="mdescLeft">&nbsp;</td><td class="mdescRight">A realtime MIDI input class. <a href="classRtMidiIn.html#_details">More...</a><br/></td></tr>
<tr><td class="memItemLeft" align="right" valign="top">class &nbsp;</td><td class="memItemRight" valign="bottom"><a class="el" href="classRtMidiOut.html">RtMidiOut</a></td></tr>
<tr><td class="mdescLeft">&nbsp;</td><td class="mdescRight">A realtime MIDI output class. <a href="classRtMidiOut.html#_details">More...</a><br/></td></tr>
</table>
<hr/><a name="_details"></a><h2>Detailed Description</h2>
</div>
<HR>
<table>
<tr><td><A HREF="http://ccrma.stanford.edu/software/stk/"><I>The Synthesis ToolKit in C++ (STK)</I></A></td></tr>
<tr><td>&copy;1995-2012 Perry R. Cook and Gary P. Scavone. All Rights Reserved.</td></tr>
</table>
</BODY>
</HTML>

View File

@@ -9,181 +9,526 @@
<a class="qindex" href="index.html">Home</a> &nbsp; <a class="qindex" href="information.html">Information</a> &nbsp; <a class="qindex" href="classes.html">Classes</a> &nbsp; <a class="qindex" href="download.html">Download</a> &nbsp; <a class="qindex" href="usage.html">Usage</a> &nbsp; <a class="qindex" href="maillist.html">Mail List</a> &nbsp; <a class="qindex" href="system.html">Requirements</a> &nbsp; <a class="qindex" href="links.html">Links</a> &nbsp; <a class="qindex" href="faq.html">FAQ</a> &nbsp; <a class="qindex" href="tutorial.html">Tutorial</a></CENTER> <a class="qindex" href="index.html">Home</a> &nbsp; <a class="qindex" href="information.html">Information</a> &nbsp; <a class="qindex" href="classes.html">Classes</a> &nbsp; <a class="qindex" href="download.html">Download</a> &nbsp; <a class="qindex" href="usage.html">Usage</a> &nbsp; <a class="qindex" href="maillist.html">Mail List</a> &nbsp; <a class="qindex" href="system.html">Requirements</a> &nbsp; <a class="qindex" href="links.html">Links</a> &nbsp; <a class="qindex" href="faq.html">FAQ</a> &nbsp; <a class="qindex" href="tutorial.html">Tutorial</a></CENTER>
<HR> <HR>
<!-- Generated by Doxygen 1.6.2 --> <!-- Generated by Doxygen 1.6.2 -->
<div class="navpath"><a class="el" href="dir_f14fd23bc74c76f288031ad23b3f3505.html">include</a> <div class="navpath"><a class="el" href="dir_221deb9bdff892d63ed1e409450a60d2.html">include</a>
</div> </div>
<div class="contents"> <div class="contents">
<h1>RtMidi.h</h1><div class="fragment"><pre class="fragment"><a name="l00001"></a>00001 <span class="comment">/**********************************************************************/</span> <h1>RtMidi.h</h1><a href="RtMidi_8h.html">Go to the documentation of this file.</a><div class="fragment"><pre class="fragment"><a name="l00001"></a>00001 <span class="comment">/**********************************************************************/</span>
<a name="l00036"></a>00036 <span class="comment">/**********************************************************************/</span> <a name="l00037"></a>00037 <span class="comment">/**********************************************************************/</span>
<a name="l00037"></a>00037 <a name="l00038"></a>00038
<a name="l00038"></a>00038 <span class="comment">// RtMidi: Version 1.0.15</span> <a name="l00043"></a>00043 <span class="comment">// RtMidi: Version 2.0.1</span>
<a name="l00039"></a>00039 <a name="l00044"></a>00044
<a name="l00040"></a>00040 <span class="preprocessor">#ifndef RTMIDI_H</span> <a name="l00045"></a>00045 <span class="preprocessor">#ifndef RTMIDI_H</span>
<a name="l00041"></a>00041 <span class="preprocessor"></span><span class="preprocessor">#define RTMIDI_H</span> <a name="l00046"></a>00046 <span class="preprocessor"></span><span class="preprocessor">#define RTMIDI_H</span>
<a name="l00042"></a>00042 <span class="preprocessor"></span> <a name="l00047"></a>00047 <span class="preprocessor"></span>
<a name="l00043"></a>00043 <span class="preprocessor">#include &quot;RtError.h&quot;</span> <a name="l00048"></a>00048 <span class="preprocessor">#include &quot;RtError.h&quot;</span>
<a name="l00044"></a>00044 <span class="preprocessor">#include &lt;string&gt;</span> <a name="l00049"></a>00049 <span class="preprocessor">#include &lt;string&gt;</span>
<a name="l00045"></a>00045 <a name="l00050"></a>00050 <span class="preprocessor">#include &lt;vector&gt;</span>
<a name="l00046"></a><a class="code" href="classRtMidi.html">00046</a> <span class="keyword">class </span><a class="code" href="classRtMidi.html" title="An abstract base class for realtime MIDI input/output.">RtMidi</a> <a name="l00051"></a>00051
<a name="l00047"></a>00047 { <a name="l00052"></a><a class="code" href="classRtMidi.html">00052</a> <span class="keyword">class </span><a class="code" href="classRtMidi.html" title="An abstract base class for realtime MIDI input/output.">RtMidi</a>
<a name="l00048"></a>00048 <span class="keyword">public</span>: <a name="l00053"></a>00053 {
<a name="l00049"></a>00049 <a name="l00054"></a>00054 <span class="keyword">public</span>:
<a name="l00051"></a>00051 <span class="keyword">virtual</span> <span class="keywordtype">void</span> <a class="code" href="classRtMidi.html#ad9e30a89638f93193cb40edebaa536f5" title="Pure virtual openPort() function.">openPort</a>( <span class="keywordtype">unsigned</span> <span class="keywordtype">int</span> portNumber = 0, <span class="keyword">const</span> std::string portName = std::string( <span class="stringliteral">&quot;RtMidi&quot;</span> ) ) = 0;
<a name="l00052"></a>00052
<a name="l00054"></a>00054 <span class="keyword">virtual</span> <span class="keywordtype">void</span> <a class="code" href="classRtMidi.html#a9200cde4f5337c0bc421d20bd4fcf654" title="Pure virtual openVirtualPort() function.">openVirtualPort</a>( <span class="keyword">const</span> std::string portName = std::string( <span class="stringliteral">&quot;RtMidi&quot;</span> ) ) = 0;
<a name="l00055"></a>00055 <a name="l00055"></a>00055
<a name="l00057"></a>00057 <span class="keyword">virtual</span> <span class="keywordtype">unsigned</span> <span class="keywordtype">int</span> <a class="code" href="classRtMidi.html#a9a49ef73a1e6007444019a7ae095e195" title="Pure virtual getPortCount() function.">getPortCount</a>() = 0; <a name="l00057"></a><a class="code" href="classRtMidi.html#aac66af04a85fe5c5f07c360574a19406">00057</a> <span class="keyword">enum</span> <a class="code" href="classRtMidi.html#aac66af04a85fe5c5f07c360574a19406" title="MIDI API specifier arguments.">Api</a> {
<a name="l00058"></a>00058 <a name="l00058"></a><a class="code" href="classRtMidi.html#aac66af04a85fe5c5f07c360574a19406a4a4d9f7a38a082d6b0d5dd2b5de94ab9">00058</a> <a class="code" href="classRtMidi.html#aac66af04a85fe5c5f07c360574a19406a4a4d9f7a38a082d6b0d5dd2b5de94ab9">UNSPECIFIED</a>,
<a name="l00060"></a>00060 <span class="keyword">virtual</span> std::string <a class="code" href="classRtMidi.html#a799e2b9f4df39b298518f2b394db3391" title="Pure virtual getPortName() function.">getPortName</a>( <span class="keywordtype">unsigned</span> <span class="keywordtype">int</span> portNumber = 0 ) = 0; <a name="l00059"></a><a class="code" href="classRtMidi.html#aac66af04a85fe5c5f07c360574a19406a3f41293f89467641484fbd54c4530908">00059</a> <a class="code" href="classRtMidi.html#aac66af04a85fe5c5f07c360574a19406a3f41293f89467641484fbd54c4530908">MACOSX_CORE</a>,
<a name="l00061"></a>00061 <a name="l00060"></a><a class="code" href="classRtMidi.html#aac66af04a85fe5c5f07c360574a19406a20c691b24844d3ab5dbf882123235df2">00060</a> <a class="code" href="classRtMidi.html#aac66af04a85fe5c5f07c360574a19406a20c691b24844d3ab5dbf882123235df2">LINUX_ALSA</a>,
<a name="l00063"></a>00063 <span class="keyword">virtual</span> <span class="keywordtype">void</span> <a class="code" href="classRtMidi.html#a36125c4fa16550345b57f4a4927f5b4a" title="Pure virtual closePort() function.">closePort</a>( <span class="keywordtype">void</span> ) = 0; <a name="l00061"></a><a class="code" href="classRtMidi.html#aac66af04a85fe5c5f07c360574a19406a1f59daf3120f47c0ae3891773112ddfa">00061</a> <a class="code" href="classRtMidi.html#aac66af04a85fe5c5f07c360574a19406a1f59daf3120f47c0ae3891773112ddfa">UNIX_JACK</a>,
<a name="l00064"></a>00064 <a name="l00062"></a><a class="code" href="classRtMidi.html#aac66af04a85fe5c5f07c360574a19406a647868cb4ed37f517bf185a7f41cb70f">00062</a> <a class="code" href="classRtMidi.html#aac66af04a85fe5c5f07c360574a19406a647868cb4ed37f517bf185a7f41cb70f">WINDOWS_MM</a>,
<a name="l00065"></a>00065 <span class="keyword">protected</span>: <a name="l00063"></a><a class="code" href="classRtMidi.html#aac66af04a85fe5c5f07c360574a19406a246ae76adf088dd4d359bbac3d605756">00063</a> <a class="code" href="classRtMidi.html#aac66af04a85fe5c5f07c360574a19406a246ae76adf088dd4d359bbac3d605756">WINDOWS_KS</a>,
<a name="l00064"></a><a class="code" href="classRtMidi.html#aac66af04a85fe5c5f07c360574a19406a54dba406ab358492005ce2b966a2d959">00064</a> <a class="code" href="classRtMidi.html#aac66af04a85fe5c5f07c360574a19406a54dba406ab358492005ce2b966a2d959">RTMIDI_DUMMY</a>
<a name="l00065"></a>00065 };
<a name="l00066"></a>00066 <a name="l00066"></a>00066
<a name="l00067"></a>00067 <a class="code" href="classRtMidi.html" title="An abstract base class for realtime MIDI input/output.">RtMidi</a>(); <a name="l00068"></a>00068
<a name="l00068"></a>00068 <span class="keyword">virtual</span> ~<a class="code" href="classRtMidi.html" title="An abstract base class for realtime MIDI input/output.">RtMidi</a>() {}; <a name="l00073"></a>00073 <span class="keyword">static</span> <span class="keywordtype">void</span> <a class="code" href="classRtMidi.html#a025fa339486c9a34b26ec707aa2944ce" title="A static function to determine the available compiled MIDI APIs.">getCompiledApi</a>( std::vector&lt;RtMidi::Api&gt; &amp;apis ) <span class="keywordflow">throw</span>();
<a name="l00069"></a>00069
<a name="l00070"></a>00070 <span class="comment">// A basic error reporting function for internal use in the RtMidi</span>
<a name="l00071"></a>00071 <span class="comment">// subclasses. The behavior of this function can be modified to</span>
<a name="l00072"></a>00072 <span class="comment">// suit specific needs.</span>
<a name="l00073"></a>00073 <span class="keywordtype">void</span> error( <a class="code" href="classRtError.html#ab04667aae01bffc354a9ac6bda6903ac" title="Defined RtError types.">RtError::Type</a> type );
<a name="l00074"></a>00074 <a name="l00074"></a>00074
<a name="l00075"></a>00075 <span class="keywordtype">void</span> *apiData_; <a name="l00076"></a>00076 <span class="keyword">virtual</span> <span class="keywordtype">void</span> <a class="code" href="classRtMidi.html#ad9e30a89638f93193cb40edebaa536f5" title="Pure virtual openPort() function.">openPort</a>( <span class="keywordtype">unsigned</span> <span class="keywordtype">int</span> portNumber = 0, <span class="keyword">const</span> std::string portName = std::string( <span class="stringliteral">&quot;RtMidi&quot;</span> ) ) = 0;
<a name="l00076"></a>00076 <span class="keywordtype">bool</span> connected_; <a name="l00077"></a>00077
<a name="l00077"></a>00077 std::string errorString_; <a name="l00079"></a>00079 <span class="keyword">virtual</span> <span class="keywordtype">void</span> <a class="code" href="classRtMidi.html#a9200cde4f5337c0bc421d20bd4fcf654" title="Pure virtual openVirtualPort() function.">openVirtualPort</a>( <span class="keyword">const</span> std::string portName = std::string( <span class="stringliteral">&quot;RtMidi&quot;</span> ) ) = 0;
<a name="l00078"></a>00078 }; <a name="l00080"></a>00080
<a name="l00079"></a>00079 <a name="l00082"></a>00082 <span class="keyword">virtual</span> <span class="keywordtype">unsigned</span> <span class="keywordtype">int</span> <a class="code" href="classRtMidi.html#a9a49ef73a1e6007444019a7ae095e195" title="Pure virtual getPortCount() function.">getPortCount</a>() = 0;
<a name="l00080"></a>00080 <span class="comment">/**********************************************************************/</span> <a name="l00083"></a>00083
<a name="l00096"></a>00096 <span class="comment">/**********************************************************************/</span> <a name="l00085"></a>00085 <span class="keyword">virtual</span> std::string <a class="code" href="classRtMidi.html#a799e2b9f4df39b298518f2b394db3391" title="Pure virtual getPortName() function.">getPortName</a>( <span class="keywordtype">unsigned</span> <span class="keywordtype">int</span> portNumber = 0 ) = 0;
<a name="l00097"></a>00097 <a name="l00086"></a>00086
<a name="l00098"></a>00098 <span class="preprocessor">#include &lt;vector&gt;</span> <a name="l00088"></a>00088 <span class="keyword">virtual</span> <span class="keywordtype">void</span> <a class="code" href="classRtMidi.html#a36125c4fa16550345b57f4a4927f5b4a" title="Pure virtual closePort() function.">closePort</a>( <span class="keywordtype">void</span> ) = 0;
<a name="l00099"></a>00099 <a name="l00089"></a>00089
<a name="l00100"></a><a class="code" href="classRtMidiIn.html">00100</a> <span class="keyword">class </span><a class="code" href="classRtMidiIn.html" title="A realtime MIDI input class.">RtMidiIn</a> : <span class="keyword">public</span> <a class="code" href="classRtMidi.html" title="An abstract base class for realtime MIDI input/output.">RtMidi</a> <a name="l00091"></a>00091 <span class="keyword">static</span> <span class="keywordtype">void</span> <a class="code" href="classRtMidi.html#ae1a810e84c57b2eb4989056cb384a04c" title="A basic error reporting function for RtMidi classes.">error</a>( <a class="code" href="classRtError.html#ab04667aae01bffc354a9ac6bda6903ac" title="Defined RtError types.">RtError::Type</a> type, std::string errorString );
<a name="l00101"></a>00101 { <a name="l00092"></a>00092
<a name="l00102"></a>00102 <span class="keyword">public</span>: <a name="l00093"></a>00093 <span class="keyword">protected</span>:
<a name="l00103"></a>00103 <a name="l00094"></a>00094
<a name="l00105"></a><a class="code" href="classRtMidiIn.html#a297d2eb3c3420b437970a6fc59d89cbf">00105</a> <span class="keyword">typedef</span> void (*<a class="code" href="classRtMidiIn.html#a297d2eb3c3420b437970a6fc59d89cbf" title="User callback function type definition.">RtMidiCallback</a>)( <span class="keywordtype">double</span> timeStamp, std::vector&lt;unsigned char&gt; *message, <span class="keywordtype">void</span> *userData); <a name="l00095"></a>00095 <a class="code" href="classRtMidi.html" title="An abstract base class for realtime MIDI input/output.">RtMidi</a>() {};
<a name="l00106"></a>00106 <a name="l00096"></a>00096 <span class="keyword">virtual</span> ~<a class="code" href="classRtMidi.html" title="An abstract base class for realtime MIDI input/output.">RtMidi</a>() {};
<a name="l00108"></a>00108 <a name="l00097"></a>00097 };
<a name="l00115"></a>00115 <a class="code" href="classRtMidiIn.html#a1d70da3ef18d24c5b3f0cc01888e093d" title="Default constructor that allows an optional client name and queue size.">RtMidiIn</a>( <span class="keyword">const</span> std::string clientName = std::string( <span class="stringliteral">&quot;RtMidi Input Client&quot;</span>), <span class="keywordtype">unsigned</span> <span class="keywordtype">int</span> queueSizeLimit = 100 ); <a name="l00098"></a>00098
<a name="l00099"></a>00099 <span class="comment">/**********************************************************************/</span>
<a name="l00115"></a>00115 <span class="comment">/**********************************************************************/</span>
<a name="l00116"></a>00116 <a name="l00116"></a>00116
<a name="l00118"></a>00118 <a class="code" href="classRtMidiIn.html#af865d88c154b6fdadc640da5dc278d40" title="If a MIDI connection is still open, it will be closed by the destructor.">~RtMidiIn</a>(); <a name="l00117"></a>00117 <span class="comment">// **************************************************************** //</span>
<a name="l00119"></a>00119 <a name="l00118"></a>00118 <span class="comment">//</span>
<a name="l00121"></a>00121 <a name="l00119"></a>00119 <span class="comment">// RtMidiIn and RtMidiOut class declarations.</span>
<a name="l00125"></a>00125 <span class="keywordtype">void</span> <a class="code" href="classRtMidiIn.html#a7e853661b1056083e07318d67c51f6fd" title="Open a MIDI input connection.">openPort</a>( <span class="keywordtype">unsigned</span> <span class="keywordtype">int</span> portNumber = 0, <span class="keyword">const</span> std::string Portname = std::string( <span class="stringliteral">&quot;RtMidi Input&quot;</span> ) ); <a name="l00120"></a>00120 <span class="comment">//</span>
<a name="l00126"></a>00126 <a name="l00121"></a>00121 <span class="comment">// RtMidiIn / RtMidiOut are &quot;controllers&quot; used to select an available</span>
<a name="l00128"></a>00128 <a name="l00122"></a>00122 <span class="comment">// MIDI input or output interface. They present common APIs for the</span>
<a name="l00134"></a>00134 <span class="keywordtype">void</span> <a class="code" href="classRtMidiIn.html#a245261b3f12ce727faed18fcfeef18c2" title="Create a virtual input port, with optional name, to allow software connections (OS...">openVirtualPort</a>( <span class="keyword">const</span> std::string portName = std::string( <span class="stringliteral">&quot;RtMidi Input&quot;</span> ) ); <a name="l00123"></a>00123 <span class="comment">// user to call but all functionality is implemented by the classes</span>
<a name="l00135"></a>00135 <a name="l00124"></a>00124 <span class="comment">// MidiInApi, MidiOutApi and their subclasses. RtMidiIn and RtMidiOut</span>
<a name="l00125"></a>00125 <span class="comment">// each create an instance of a MidiInApi or MidiOutApi subclass based</span>
<a name="l00126"></a>00126 <span class="comment">// on the user&#39;s API choice. If no choice is made, they attempt to</span>
<a name="l00127"></a>00127 <span class="comment">// make a &quot;logical&quot; API selection.</span>
<a name="l00128"></a>00128 <span class="comment">//</span>
<a name="l00129"></a>00129 <span class="comment">// **************************************************************** //</span>
<a name="l00130"></a>00130
<a name="l00131"></a>00131 <span class="keyword">class </span>MidiInApi;
<a name="l00132"></a>00132 <span class="keyword">class </span>MidiOutApi;
<a name="l00133"></a>00133
<a name="l00134"></a><a class="code" href="classRtMidiIn.html">00134</a> <span class="keyword">class </span><a class="code" href="classRtMidiIn.html" title="A realtime MIDI input class.">RtMidiIn</a> : <span class="keyword">public</span> <a class="code" href="classRtMidi.html" title="An abstract base class for realtime MIDI input/output.">RtMidi</a>
<a name="l00135"></a>00135 {
<a name="l00136"></a>00136 <span class="keyword">public</span>:
<a name="l00137"></a>00137 <a name="l00137"></a>00137
<a name="l00143"></a>00143 <span class="keywordtype">void</span> <a class="code" href="classRtMidiIn.html#a7590563461c7467608a4b3806406b32d" title="Set a callback function to be invoked for incoming MIDI messages.">setCallback</a>( <a class="code" href="classRtMidiIn.html#a297d2eb3c3420b437970a6fc59d89cbf" title="User callback function type definition.">RtMidiCallback</a> callback, <span class="keywordtype">void</span> *userData = 0 ); <a name="l00139"></a><a class="code" href="classRtMidiIn.html#a297d2eb3c3420b437970a6fc59d89cbf">00139</a> <span class="keyword">typedef</span> void (*<a class="code" href="classRtMidiIn.html#a297d2eb3c3420b437970a6fc59d89cbf" title="User callback function type definition.">RtMidiCallback</a>)( <span class="keywordtype">double</span> timeStamp, std::vector&lt;unsigned char&gt; *message, <span class="keywordtype">void</span> *userData);
<a name="l00144"></a>00144 <a name="l00140"></a>00140
<a name="l00146"></a>00146 <a name="l00142"></a>00142
<a name="l00150"></a>00150 <span class="keywordtype">void</span> <a class="code" href="classRtMidiIn.html#ade23832a66c1ed56965c26325602543e" title="Cancel use of the current callback function (if one exists).">cancelCallback</a>(); <a name="l00153"></a>00153 <a class="code" href="classRtMidiIn.html#aeeaeed8dae387dffc70e73e6e88b4d1a" title="Default constructor that allows an optional api, client name and queue size.">RtMidiIn</a>( <a class="code" href="classRtMidi.html#aac66af04a85fe5c5f07c360574a19406" title="MIDI API specifier arguments.">RtMidi::Api</a> api=<a class="code" href="classRtMidi.html#aac66af04a85fe5c5f07c360574a19406a4a4d9f7a38a082d6b0d5dd2b5de94ab9">UNSPECIFIED</a>,
<a name="l00151"></a>00151 <a name="l00154"></a>00154 <span class="keyword">const</span> std::string clientName = std::string( <span class="stringliteral">&quot;RtMidi Input Client&quot;</span>),
<a name="l00153"></a>00153 <span class="keywordtype">void</span> <a class="code" href="classRtMidiIn.html#a55bacf0d228fd8e3be6a79d12fd1dc39" title="Close an open MIDI connection (if one exists).">closePort</a>( <span class="keywordtype">void</span> ); <a name="l00155"></a>00155 <span class="keywordtype">unsigned</span> <span class="keywordtype">int</span> queueSizeLimit = 100 );
<a name="l00154"></a>00154 <a name="l00156"></a>00156
<a name="l00156"></a>00156 <span class="keywordtype">unsigned</span> <span class="keywordtype">int</span> <a class="code" href="classRtMidiIn.html#a62b1b38aa8e5f11cd66f03d59228f4e4" title="Return the number of available MIDI input ports.">getPortCount</a>(); <a name="l00158"></a>00158 <a class="code" href="classRtMidiIn.html#ae79f4da8a1b2e7efecdd1047670b27dc" title="If a MIDI connection is still open, it will be closed by the destructor.">~RtMidiIn</a> ( <span class="keywordtype">void</span> ) throw();
<a name="l00157"></a>00157
<a name="l00159"></a>00159 <a name="l00159"></a>00159
<a name="l00162"></a>00162 std::string <a class="code" href="classRtMidiIn.html#af2961fff09fa01a3d5bc0f0c5a042aaf" title="Return a string identifier for the specified MIDI input port number.">getPortName</a>( <span class="keywordtype">unsigned</span> <span class="keywordtype">int</span> portNumber = 0 ); <a name="l00161"></a>00161 <a class="code" href="classRtMidi.html" title="An abstract base class for realtime MIDI input/output.">RtMidi</a>::<a class="code" href="classRtMidi.html#aac66af04a85fe5c5f07c360574a19406" title="MIDI API specifier arguments.">Api</a> <a class="code" href="classRtMidiIn.html#a6475a11eeb0c8bf22157c3887b100164" title="Returns the MIDI API specifier for the current instance of RtMidiIn.">getCurrentApi</a>( <span class="keywordtype">void</span> ) throw();
<a name="l00163"></a>00163 <a name="l00162"></a>00162
<a name="l00165"></a>00165 <a name="l00164"></a>00164
<a name="l00172"></a>00172 <span class="keywordtype">void</span> <a class="code" href="classRtMidiIn.html#af9507125aaa42276ccc01df576fc3533" title="Specify whether certain MIDI message types should be queued or ignored during input...">ignoreTypes</a>( <span class="keywordtype">bool</span> midiSysex = <span class="keyword">true</span>, <span class="keywordtype">bool</span> midiTime = <span class="keyword">true</span>, <span class="keywordtype">bool</span> midiSense = <span class="keyword">true</span> ); <a name="l00168"></a>00168 <span class="keywordtype">void</span> <a class="code" href="classRtMidiIn.html#a39df8f81a22f729a9904707dde487d2c" title="Open a MIDI input connection.">openPort</a>( <span class="keywordtype">unsigned</span> <span class="keywordtype">int</span> portNumber = 0, const std::<span class="keywordtype">string</span> portName = std::<span class="keywordtype">string</span>( &quot;<a class="code" href="classRtMidi.html" title="An abstract base class for realtime MIDI input/output.">RtMidi</a> Input&quot; ) );
<a name="l00173"></a>00173 <a name="l00169"></a>00169
<a name="l00175"></a>00175 <a name="l00171"></a>00171
<a name="l00182"></a>00182 <span class="keywordtype">double</span> <a class="code" href="classRtMidiIn.html#a1ba10ecd276b30a8579c7d60a9c890eb" title="Fill the user-provided vector with the data bytes for the next available MIDI message...">getMessage</a>( std::vector&lt;unsigned char&gt; *message ); <a name="l00177"></a>00177 <span class="keywordtype">void</span> <a class="code" href="classRtMidiIn.html#a245261b3f12ce727faed18fcfeef18c2" title="Create a virtual input port, with optional name, to allow software connections (OS...">openVirtualPort</a>( const std::<span class="keywordtype">string</span> portName = std::<span class="keywordtype">string</span>( &quot;<a class="code" href="classRtMidi.html" title="An abstract base class for realtime MIDI input/output.">RtMidi</a> Input&quot; ) );
<a name="l00183"></a>00183 <a name="l00178"></a>00178
<a name="l00184"></a>00184 <span class="comment">// A MIDI structure used internally by the class to store incoming</span> <a name="l00180"></a>00180
<a name="l00185"></a>00185 <span class="comment">// messages. Each message represents one and only one MIDI message.</span> <a name="l00186"></a>00186 <span class="keywordtype">void</span> <a class="code" href="classRtMidiIn.html#a7590563461c7467608a4b3806406b32d" title="Set a callback function to be invoked for incoming MIDI messages.">setCallback</a>( <a class="code" href="classRtMidiIn.html#a297d2eb3c3420b437970a6fc59d89cbf" title="User callback function type definition.">RtMidiCallback</a> callback, <span class="keywordtype">void</span> *userData = 0 );
<a name="l00186"></a>00186 <span class="keyword">struct </span>MidiMessage { <a name="l00187"></a>00187
<a name="l00187"></a>00187 std::vector&lt;unsigned char&gt; bytes;
<a name="l00188"></a>00188 <span class="keywordtype">double</span> timeStamp;
<a name="l00189"></a>00189 <a name="l00189"></a>00189
<a name="l00190"></a>00190 <span class="comment">// Default constructor.</span> <a name="l00193"></a>00193 <span class="keywordtype">void</span> <a class="code" href="classRtMidiIn.html#ade23832a66c1ed56965c26325602543e" title="Cancel use of the current callback function (if one exists).">cancelCallback</a>();
<a name="l00191"></a>00191 MidiMessage()
<a name="l00192"></a>00192 :bytes(0), timeStamp(0.0) {}
<a name="l00193"></a>00193 };
<a name="l00194"></a>00194 <a name="l00194"></a>00194
<a name="l00195"></a>00195 <span class="keyword">struct </span>MidiQueue { <a name="l00196"></a>00196 <span class="keywordtype">void</span> <a class="code" href="classRtMidiIn.html#a55bacf0d228fd8e3be6a79d12fd1dc39" title="Close an open MIDI connection (if one exists).">closePort</a>( <span class="keywordtype">void</span> );
<a name="l00196"></a>00196 <span class="keywordtype">unsigned</span> <span class="keywordtype">int</span> front; <a name="l00197"></a>00197
<a name="l00197"></a>00197 <span class="keywordtype">unsigned</span> <span class="keywordtype">int</span> back; <a name="l00199"></a>00199 <span class="keywordtype">unsigned</span> <span class="keywordtype">int</span> <a class="code" href="classRtMidiIn.html#a62b1b38aa8e5f11cd66f03d59228f4e4" title="Return the number of available MIDI input ports.">getPortCount</a>();
<a name="l00198"></a>00198 <span class="keywordtype">unsigned</span> <span class="keywordtype">int</span> size; <a name="l00200"></a>00200
<a name="l00199"></a>00199 <span class="keywordtype">unsigned</span> <span class="keywordtype">int</span> ringSize; <a name="l00202"></a>00202
<a name="l00200"></a>00200 MidiMessage *ring; <a name="l00205"></a>00205 std::<span class="keywordtype">string</span> <a class="code" href="classRtMidiIn.html#af2961fff09fa01a3d5bc0f0c5a042aaf" title="Return a string identifier for the specified MIDI input port number.">getPortName</a>( <span class="keywordtype">unsigned</span> <span class="keywordtype">int</span> portNumber = 0 );
<a name="l00201"></a>00201
<a name="l00202"></a>00202 <span class="comment">// Default constructor.</span>
<a name="l00203"></a>00203 MidiQueue()
<a name="l00204"></a>00204 :front(0), back(0), size(0), ringSize(0) {}
<a name="l00205"></a>00205 };
<a name="l00206"></a>00206 <a name="l00206"></a>00206
<a name="l00207"></a>00207 <span class="comment">// The RtMidiInData structure is used to pass private class data to</span> <a name="l00208"></a>00208
<a name="l00208"></a>00208 <span class="comment">// the MIDI input handling function or thread.</span> <a name="l00215"></a>00215 <span class="keywordtype">void</span> <a class="code" href="classRtMidiIn.html#af9507125aaa42276ccc01df576fc3533" title="Specify whether certain MIDI message types should be queued or ignored during input...">ignoreTypes</a>( <span class="keywordtype">bool</span> midiSysex = true, <span class="keywordtype">bool</span> midiTime = true, <span class="keywordtype">bool</span> midiSense = true );
<a name="l00209"></a>00209 <span class="keyword">struct </span>RtMidiInData { <a name="l00216"></a>00216
<a name="l00210"></a>00210 MidiQueue queue; <a name="l00218"></a>00218
<a name="l00211"></a>00211 MidiMessage message; <a name="l00225"></a>00225 <span class="keywordtype">double</span> <a class="code" href="classRtMidiIn.html#a1ba10ecd276b30a8579c7d60a9c890eb" title="Fill the user-provided vector with the data bytes for the next available MIDI message...">getMessage</a>( std::vector&lt;<span class="keywordtype">unsigned</span> <span class="keywordtype">char</span>&gt; *message );
<a name="l00212"></a>00212 <span class="keywordtype">unsigned</span> <span class="keywordtype">char</span> ignoreFlags; <a name="l00226"></a>00226
<a name="l00213"></a>00213 <span class="keywordtype">bool</span> doInput; <a name="l00227"></a>00227 protected:
<a name="l00214"></a>00214 <span class="keywordtype">bool</span> firstMessage; <a name="l00228"></a>00228 <span class="keywordtype">void</span> openMidiApi( <a class="code" href="classRtMidi.html" title="An abstract base class for realtime MIDI input/output.">RtMidi</a>::<a class="code" href="classRtMidi.html#aac66af04a85fe5c5f07c360574a19406" title="MIDI API specifier arguments.">Api</a> api, const std::<span class="keywordtype">string</span> clientName, <span class="keywordtype">unsigned</span> <span class="keywordtype">int</span> queueSizeLimit );
<a name="l00215"></a>00215 <span class="keywordtype">void</span> *apiData; <a name="l00229"></a>00229 MidiInApi *rtapi_;
<a name="l00216"></a>00216 <span class="keywordtype">bool</span> usingCallback; <a name="l00230"></a>00230
<a name="l00217"></a>00217 <span class="keywordtype">void</span> *userCallback; <a name="l00231"></a>00231 };
<a name="l00218"></a>00218 <span class="keywordtype">void</span> *userData;
<a name="l00219"></a>00219 <span class="keywordtype">bool</span> continueSysex;
<a name="l00220"></a>00220
<a name="l00221"></a>00221 <span class="comment">// Default constructor.</span>
<a name="l00222"></a>00222 RtMidiInData()
<a name="l00223"></a>00223 : ignoreFlags(7), doInput(false), firstMessage(true),
<a name="l00224"></a>00224 apiData(0), usingCallback(false), userCallback(0), userData(0),
<a name="l00225"></a>00225 continueSysex(false) {}
<a name="l00226"></a>00226 };
<a name="l00227"></a>00227
<a name="l00228"></a>00228 <span class="keyword">private</span>:
<a name="l00229"></a>00229
<a name="l00230"></a>00230 <span class="keywordtype">void</span> initialize( <span class="keyword">const</span> std::string&amp; clientName );
<a name="l00231"></a>00231 RtMidiInData inputData_;
<a name="l00232"></a>00232 <a name="l00232"></a>00232
<a name="l00233"></a>00233 }; <a name="l00233"></a>00233 <span class="comment">/**********************************************************************/</span>
<a name="l00234"></a>00234
<a name="l00235"></a>00235 <span class="comment">/**********************************************************************/</span>
<a name="l00247"></a>00247 <span class="comment">/**********************************************************************/</span> <a name="l00247"></a>00247 <span class="comment">/**********************************************************************/</span>
<a name="l00248"></a>00248 <a name="l00248"></a>00248
<a name="l00249"></a><a class="code" href="classRtMidiOut.html">00249</a> <span class="keyword">class </span><a class="code" href="classRtMidiOut.html" title="A realtime MIDI output class.">RtMidiOut</a> : <span class="keyword">public</span> <a class="code" href="classRtMidi.html" title="An abstract base class for realtime MIDI input/output.">RtMidi</a> <a name="l00249"></a><a class="code" href="classRtMidiOut.html">00249</a> class <a class="code" href="classRtMidiOut.html" title="A realtime MIDI output class.">RtMidiOut</a> : public <a class="code" href="classRtMidi.html" title="An abstract base class for realtime MIDI input/output.">RtMidi</a>
<a name="l00250"></a>00250 { <a name="l00250"></a>00250 {
<a name="l00251"></a>00251 <span class="keyword">public</span>: <a name="l00251"></a>00251 <span class="keyword">public</span>:
<a name="l00252"></a>00252 <a name="l00252"></a>00252
<a name="l00254"></a>00254 <a name="l00254"></a>00254
<a name="l00257"></a>00257 <a class="code" href="classRtMidiOut.html#a8ed1b492900f3410bf91ad53203b9db3" title="Default constructor that allows an optional client name.">RtMidiOut</a>( <span class="keyword">const</span> std::string clientName = std::string( <span class="stringliteral">&quot;RtMidi Output Client&quot;</span> ) ); <a name="l00261"></a>00261 <a class="code" href="classRtMidiOut.html" title="A realtime MIDI output class.">RtMidiOut</a>( <a class="code" href="classRtMidi.html#aac66af04a85fe5c5f07c360574a19406" title="MIDI API specifier arguments.">RtMidi::Api</a> api=<a class="code" href="classRtMidi.html#aac66af04a85fe5c5f07c360574a19406a4a4d9f7a38a082d6b0d5dd2b5de94ab9">UNSPECIFIED</a>,
<a name="l00258"></a>00258 <a name="l00262"></a>00262 <span class="keyword">const</span> std::string clientName = std::string( <span class="stringliteral">&quot;RtMidi Output Client&quot;</span>) );
<a name="l00260"></a>00260 <a class="code" href="classRtMidiOut.html#ab776c431bd84193febb2f78fb8c7e792" title="The destructor closes any open MIDI connections.">~RtMidiOut</a>();
<a name="l00261"></a>00261
<a name="l00263"></a>00263 <a name="l00263"></a>00263
<a name="l00269"></a>00269 <span class="keywordtype">void</span> <a class="code" href="classRtMidiOut.html#a1b280d67317cd473a8816aeb2fe6c186" title="Open a MIDI output connection.">openPort</a>( <span class="keywordtype">unsigned</span> <span class="keywordtype">int</span> portNumber = 0, <span class="keyword">const</span> std::string portName = std::string( <span class="stringliteral">&quot;RtMidi Output&quot;</span> ) ); <a name="l00265"></a>00265 ~<a class="code" href="classRtMidiOut.html" title="A realtime MIDI output class.">RtMidiOut</a>( <span class="keywordtype">void</span> ) <span class="keywordflow">throw</span>();
<a name="l00270"></a>00270 <a name="l00266"></a>00266
<a name="l00272"></a>00272 <span class="keywordtype">void</span> <a class="code" href="classRtMidiOut.html#a3092e53a8aed2d3b163fcaa05fafd041" title="Close an open MIDI connection (if one exists).">closePort</a>(); <a name="l00268"></a>00268 <a class="code" href="classRtMidi.html#aac66af04a85fe5c5f07c360574a19406" title="MIDI API specifier arguments.">RtMidi::Api</a> <a class="code" href="classRtMidiIn.html#a6475a11eeb0c8bf22157c3887b100164" title="Returns the MIDI API specifier for the current instance of RtMidiIn.">getCurrentApi</a>( <span class="keywordtype">void</span> ) <span class="keywordflow">throw</span>();
<a name="l00273"></a>00273 <a name="l00269"></a>00269
<a name="l00275"></a>00275 <a name="l00271"></a>00271
<a name="l00283"></a>00283 <span class="keywordtype">void</span> <a class="code" href="classRtMidiOut.html#a47068e1c076d91fd89587c0ccdeddc7a" title="Create a virtual output port, with optional name, to allow software connections (OS...">openVirtualPort</a>( <span class="keyword">const</span> std::string portName = std::string( <span class="stringliteral">&quot;RtMidi Output&quot;</span> ) ); <a name="l00277"></a>00277 <span class="keywordtype">void</span> <a class="code" href="classRtMidiIn.html#a39df8f81a22f729a9904707dde487d2c" title="Open a MIDI input connection.">openPort</a>( <span class="keywordtype">unsigned</span> <span class="keywordtype">int</span> portNumber = 0, <span class="keyword">const</span> std::string portName = std::string( <span class="stringliteral">&quot;RtMidi Output&quot;</span> ) );
<a name="l00284"></a>00284 <a name="l00278"></a>00278
<a name="l00286"></a>00286 <span class="keywordtype">unsigned</span> <span class="keywordtype">int</span> <a class="code" href="classRtMidiOut.html#ad6cddbcc7faa20a7be229f765ade0877" title="Return the number of available MIDI output ports.">getPortCount</a>(); <a name="l00280"></a>00280 <span class="keywordtype">void</span> <a class="code" href="classRtMidiIn.html#a55bacf0d228fd8e3be6a79d12fd1dc39" title="Close an open MIDI connection (if one exists).">closePort</a>( <span class="keywordtype">void</span> );
<a name="l00287"></a>00287 <a name="l00281"></a>00281
<a name="l00289"></a>00289 <a name="l00283"></a>00283
<a name="l00292"></a>00292 std::string <a class="code" href="classRtMidiOut.html#acc4ae0ab71a49ae7629075d5a9cd837c" title="Return a string identifier for the specified MIDI port type and number.">getPortName</a>( <span class="keywordtype">unsigned</span> <span class="keywordtype">int</span> portNumber = 0 ); <a name="l00291"></a>00291 <span class="keywordtype">void</span> <a class="code" href="classRtMidiIn.html#a245261b3f12ce727faed18fcfeef18c2" title="Create a virtual input port, with optional name, to allow software connections (OS...">openVirtualPort</a>( <span class="keyword">const</span> std::string portName = std::string( <span class="stringliteral">&quot;RtMidi Output&quot;</span> ) );
<a name="l00293"></a>00293 <a name="l00292"></a>00292
<a name="l00294"></a>00294 <span class="keywordtype">unsigned</span> <span class="keywordtype">int</span> <a class="code" href="classRtMidiIn.html#a62b1b38aa8e5f11cd66f03d59228f4e4" title="Return the number of available MIDI input ports.">getPortCount</a>( <span class="keywordtype">void</span> );
<a name="l00295"></a>00295 <a name="l00295"></a>00295
<a name="l00299"></a>00299 <span class="keywordtype">void</span> <a class="code" href="classRtMidiOut.html#a0bd8972ef8ac4e8d37ccc4b5d51c2eb3" title="Immediately send a single message out an open MIDI output port.">sendMessage</a>( std::vector&lt;unsigned char&gt; *message ); <a name="l00297"></a>00297
<a name="l00300"></a>00300 <a name="l00300"></a>00300 std::string <a class="code" href="classRtMidiIn.html#af2961fff09fa01a3d5bc0f0c5a042aaf" title="Return a string identifier for the specified MIDI input port number.">getPortName</a>( <span class="keywordtype">unsigned</span> <span class="keywordtype">int</span> portNumber = 0 );
<a name="l00301"></a>00301 <span class="keyword">private</span>: <a name="l00301"></a>00301
<a name="l00302"></a>00302 <a name="l00303"></a>00303
<a name="l00303"></a>00303 <span class="keywordtype">void</span> initialize( <span class="keyword">const</span> std::string&amp; clientName ); <a name="l00307"></a>00307 <span class="keywordtype">void</span> sendMessage( std::vector&lt;unsigned char&gt; *message );
<a name="l00304"></a>00304 }; <a name="l00308"></a>00308
<a name="l00305"></a>00305 <a name="l00309"></a>00309 <span class="keyword">protected</span>:
<a name="l00306"></a>00306 <span class="preprocessor">#endif</span> <a name="l00310"></a>00310 <span class="keywordtype">void</span> openMidiApi( <a class="code" href="classRtMidi.html#aac66af04a85fe5c5f07c360574a19406" title="MIDI API specifier arguments.">RtMidi::Api</a> api, <span class="keyword">const</span> std::string clientName );
<a name="l00311"></a>00311 MidiOutApi *rtapi_;
<a name="l00312"></a>00312 };
<a name="l00313"></a>00313
<a name="l00314"></a>00314
<a name="l00315"></a>00315 <span class="comment">// **************************************************************** //</span>
<a name="l00316"></a>00316 <span class="comment">//</span>
<a name="l00317"></a>00317 <span class="comment">// MidiInApi / MidiOutApi class declarations.</span>
<a name="l00318"></a>00318 <span class="comment">//</span>
<a name="l00319"></a>00319 <span class="comment">// Subclasses of MidiInApi and MidiOutApi contain all API- and</span>
<a name="l00320"></a>00320 <span class="comment">// OS-specific code necessary to fully implement the RtMidi API.</span>
<a name="l00321"></a>00321 <span class="comment">//</span>
<a name="l00322"></a>00322 <span class="comment">// Note that MidiInApi and MidiOutApi are abstract base classes and</span>
<a name="l00323"></a>00323 <span class="comment">// cannot be explicitly instantiated. RtMidiIn and RtMidiOut will</span>
<a name="l00324"></a>00324 <span class="comment">// create instances of a MidiInApi or MidiOutApi subclass.</span>
<a name="l00325"></a>00325 <span class="comment">//</span>
<a name="l00326"></a>00326 <span class="comment">// **************************************************************** //</span>
<a name="l00327"></a>00327
<a name="l00328"></a>00328 <span class="keyword">class </span>MidiInApi
<a name="l00329"></a>00329 {
<a name="l00330"></a>00330 <span class="keyword">public</span>:
<a name="l00331"></a>00331
<a name="l00332"></a>00332 MidiInApi( <span class="keywordtype">unsigned</span> <span class="keywordtype">int</span> queueSizeLimit );
<a name="l00333"></a>00333 <span class="keyword">virtual</span> ~MidiInApi( <span class="keywordtype">void</span> );
<a name="l00334"></a>00334 <span class="keyword">virtual</span> <a class="code" href="classRtMidi.html#aac66af04a85fe5c5f07c360574a19406" title="MIDI API specifier arguments.">RtMidi::Api</a> <a class="code" href="classRtMidiIn.html#a6475a11eeb0c8bf22157c3887b100164" title="Returns the MIDI API specifier for the current instance of RtMidiIn.">getCurrentApi</a>( <span class="keywordtype">void</span> ) = 0;
<a name="l00335"></a>00335 <span class="keyword">virtual</span> <span class="keywordtype">void</span> <a class="code" href="classRtMidiIn.html#a39df8f81a22f729a9904707dde487d2c" title="Open a MIDI input connection.">openPort</a>( <span class="keywordtype">unsigned</span> <span class="keywordtype">int</span> portNumber, <span class="keyword">const</span> std::string portName ) = 0;
<a name="l00336"></a>00336 <span class="keyword">virtual</span> <span class="keywordtype">void</span> <a class="code" href="classRtMidiIn.html#a245261b3f12ce727faed18fcfeef18c2" title="Create a virtual input port, with optional name, to allow software connections (OS...">openVirtualPort</a>( <span class="keyword">const</span> std::string portName ) = 0;
<a name="l00337"></a>00337 <span class="keyword">virtual</span> <span class="keywordtype">void</span> <a class="code" href="classRtMidiIn.html#a55bacf0d228fd8e3be6a79d12fd1dc39" title="Close an open MIDI connection (if one exists).">closePort</a>( <span class="keywordtype">void</span> ) = 0;
<a name="l00338"></a>00338 <span class="keywordtype">void</span> <a class="code" href="classRtMidiIn.html#a7590563461c7467608a4b3806406b32d" title="Set a callback function to be invoked for incoming MIDI messages.">setCallback</a>( <a class="code" href="classRtMidiIn.html#a297d2eb3c3420b437970a6fc59d89cbf" title="User callback function type definition.">RtMidiIn::RtMidiCallback</a> callback, <span class="keywordtype">void</span> *userData );
<a name="l00339"></a>00339 <span class="keywordtype">void</span> <a class="code" href="classRtMidiIn.html#ade23832a66c1ed56965c26325602543e" title="Cancel use of the current callback function (if one exists).">cancelCallback</a>( <span class="keywordtype">void</span> );
<a name="l00340"></a>00340 <span class="keyword">virtual</span> <span class="keywordtype">unsigned</span> <span class="keywordtype">int</span> <a class="code" href="classRtMidiIn.html#a62b1b38aa8e5f11cd66f03d59228f4e4" title="Return the number of available MIDI input ports.">getPortCount</a>( <span class="keywordtype">void</span> ) = 0;
<a name="l00341"></a>00341 <span class="keyword">virtual</span> std::string <a class="code" href="classRtMidiIn.html#af2961fff09fa01a3d5bc0f0c5a042aaf" title="Return a string identifier for the specified MIDI input port number.">getPortName</a>( <span class="keywordtype">unsigned</span> <span class="keywordtype">int</span> portNumber ) = 0;
<a name="l00342"></a>00342 <span class="keyword">virtual</span> <span class="keywordtype">void</span> <a class="code" href="classRtMidiIn.html#af9507125aaa42276ccc01df576fc3533" title="Specify whether certain MIDI message types should be queued or ignored during input...">ignoreTypes</a>( <span class="keywordtype">bool</span> midiSysex, <span class="keywordtype">bool</span> midiTime, <span class="keywordtype">bool</span> midiSense );
<a name="l00343"></a>00343 <span class="keywordtype">double</span> <a class="code" href="classRtMidiIn.html#a1ba10ecd276b30a8579c7d60a9c890eb" title="Fill the user-provided vector with the data bytes for the next available MIDI message...">getMessage</a>( std::vector&lt;unsigned char&gt; *message );
<a name="l00344"></a>00344
<a name="l00345"></a>00345 <span class="comment">// A MIDI structure used internally by the class to store incoming</span>
<a name="l00346"></a>00346 <span class="comment">// messages. Each message represents one and only one MIDI message.</span>
<a name="l00347"></a>00347 <span class="keyword">struct </span>MidiMessage {
<a name="l00348"></a>00348 std::vector&lt;unsigned char&gt; bytes;
<a name="l00349"></a>00349 <span class="keywordtype">double</span> timeStamp;
<a name="l00350"></a>00350
<a name="l00351"></a>00351 <span class="comment">// Default constructor.</span>
<a name="l00352"></a>00352 MidiMessage()
<a name="l00353"></a>00353 :bytes(0), timeStamp(0.0) {}
<a name="l00354"></a>00354 };
<a name="l00355"></a>00355
<a name="l00356"></a>00356 <span class="keyword">struct </span>MidiQueue {
<a name="l00357"></a>00357 <span class="keywordtype">unsigned</span> <span class="keywordtype">int</span> front;
<a name="l00358"></a>00358 <span class="keywordtype">unsigned</span> <span class="keywordtype">int</span> back;
<a name="l00359"></a>00359 <span class="keywordtype">unsigned</span> <span class="keywordtype">int</span> size;
<a name="l00360"></a>00360 <span class="keywordtype">unsigned</span> <span class="keywordtype">int</span> ringSize;
<a name="l00361"></a>00361 MidiMessage *ring;
<a name="l00362"></a>00362
<a name="l00363"></a>00363 <span class="comment">// Default constructor.</span>
<a name="l00364"></a>00364 MidiQueue()
<a name="l00365"></a>00365 :front(0), back(0), size(0), ringSize(0) {}
<a name="l00366"></a>00366 };
<a name="l00367"></a>00367
<a name="l00368"></a>00368 <span class="comment">// The RtMidiInData structure is used to pass private class data to</span>
<a name="l00369"></a>00369 <span class="comment">// the MIDI input handling function or thread.</span>
<a name="l00370"></a>00370 <span class="keyword">struct </span>RtMidiInData {
<a name="l00371"></a>00371 MidiQueue queue;
<a name="l00372"></a>00372 MidiMessage message;
<a name="l00373"></a>00373 <span class="keywordtype">unsigned</span> <span class="keywordtype">char</span> ignoreFlags;
<a name="l00374"></a>00374 <span class="keywordtype">bool</span> doInput;
<a name="l00375"></a>00375 <span class="keywordtype">bool</span> firstMessage;
<a name="l00376"></a>00376 <span class="keywordtype">void</span> *apiData;
<a name="l00377"></a>00377 <span class="keywordtype">bool</span> usingCallback;
<a name="l00378"></a>00378 <span class="keywordtype">void</span> *userCallback;
<a name="l00379"></a>00379 <span class="keywordtype">void</span> *userData;
<a name="l00380"></a>00380 <span class="keywordtype">bool</span> continueSysex;
<a name="l00381"></a>00381
<a name="l00382"></a>00382 <span class="comment">// Default constructor.</span>
<a name="l00383"></a>00383 RtMidiInData()
<a name="l00384"></a>00384 : ignoreFlags(7), doInput(false), firstMessage(true),
<a name="l00385"></a>00385 apiData(0), usingCallback(false), userCallback(0), userData(0),
<a name="l00386"></a>00386 continueSysex(false) {}
<a name="l00387"></a>00387 };
<a name="l00388"></a>00388
<a name="l00389"></a>00389 <span class="keyword">protected</span>:
<a name="l00390"></a>00390 <span class="keyword">virtual</span> <span class="keywordtype">void</span> initialize( <span class="keyword">const</span> std::string&amp; clientName ) = 0;
<a name="l00391"></a>00391 RtMidiInData inputData_;
<a name="l00392"></a>00392
<a name="l00393"></a>00393 <span class="keywordtype">void</span> *apiData_;
<a name="l00394"></a>00394 <span class="keywordtype">bool</span> connected_;
<a name="l00395"></a>00395 std::string errorString_;
<a name="l00396"></a>00396 };
<a name="l00397"></a>00397
<a name="l00398"></a>00398 <span class="keyword">class </span>MidiOutApi
<a name="l00399"></a>00399 {
<a name="l00400"></a>00400 <span class="keyword">public</span>:
<a name="l00401"></a>00401
<a name="l00402"></a>00402 MidiOutApi( <span class="keywordtype">void</span> );
<a name="l00403"></a>00403 <span class="keyword">virtual</span> ~MidiOutApi( <span class="keywordtype">void</span> );
<a name="l00404"></a>00404 <span class="keyword">virtual</span> <a class="code" href="classRtMidi.html#aac66af04a85fe5c5f07c360574a19406" title="MIDI API specifier arguments.">RtMidi::Api</a> <a class="code" href="classRtMidiIn.html#a6475a11eeb0c8bf22157c3887b100164" title="Returns the MIDI API specifier for the current instance of RtMidiIn.">getCurrentApi</a>( <span class="keywordtype">void</span> ) = 0;
<a name="l00405"></a>00405 <span class="keyword">virtual</span> <span class="keywordtype">void</span> <a class="code" href="classRtMidiIn.html#a39df8f81a22f729a9904707dde487d2c" title="Open a MIDI input connection.">openPort</a>( <span class="keywordtype">unsigned</span> <span class="keywordtype">int</span> portNumber, <span class="keyword">const</span> std::string portName ) = 0;
<a name="l00406"></a>00406 <span class="keyword">virtual</span> <span class="keywordtype">void</span> <a class="code" href="classRtMidiIn.html#a245261b3f12ce727faed18fcfeef18c2" title="Create a virtual input port, with optional name, to allow software connections (OS...">openVirtualPort</a>( <span class="keyword">const</span> std::string portName ) = 0;
<a name="l00407"></a>00407 <span class="keyword">virtual</span> <span class="keywordtype">void</span> <a class="code" href="classRtMidiIn.html#a55bacf0d228fd8e3be6a79d12fd1dc39" title="Close an open MIDI connection (if one exists).">closePort</a>( <span class="keywordtype">void</span> ) = 0;
<a name="l00408"></a>00408 <span class="keyword">virtual</span> <span class="keywordtype">unsigned</span> <span class="keywordtype">int</span> <a class="code" href="classRtMidiIn.html#a62b1b38aa8e5f11cd66f03d59228f4e4" title="Return the number of available MIDI input ports.">getPortCount</a>( <span class="keywordtype">void</span> ) = 0;
<a name="l00409"></a>00409 <span class="keyword">virtual</span> std::string <a class="code" href="classRtMidiIn.html#af2961fff09fa01a3d5bc0f0c5a042aaf" title="Return a string identifier for the specified MIDI input port number.">getPortName</a>( <span class="keywordtype">unsigned</span> <span class="keywordtype">int</span> portNumber ) = 0;
<a name="l00410"></a>00410 <span class="keyword">virtual</span> <span class="keywordtype">void</span> sendMessage( std::vector&lt;unsigned char&gt; *message ) = 0;
<a name="l00411"></a>00411
<a name="l00412"></a>00412 <span class="keyword">protected</span>:
<a name="l00413"></a>00413 <span class="keyword">virtual</span> <span class="keywordtype">void</span> initialize( <span class="keyword">const</span> std::string&amp; clientName ) = 0;
<a name="l00414"></a>00414
<a name="l00415"></a>00415 <span class="keywordtype">void</span> *apiData_;
<a name="l00416"></a>00416 <span class="keywordtype">bool</span> connected_;
<a name="l00417"></a>00417 std::string errorString_;
<a name="l00418"></a>00418 };
<a name="l00419"></a>00419
<a name="l00420"></a>00420 <span class="comment">// **************************************************************** //</span>
<a name="l00421"></a>00421 <span class="comment">//</span>
<a name="l00422"></a>00422 <span class="comment">// Inline RtMidiIn and RtMidiOut definitions.</span>
<a name="l00423"></a>00423 <span class="comment">//</span>
<a name="l00424"></a>00424 <span class="comment">// **************************************************************** //</span>
<a name="l00425"></a>00425
<a name="l00426"></a><a class="code" href="classRtMidiIn.html#a6475a11eeb0c8bf22157c3887b100164">00426</a> <span class="keyword">inline</span> <a class="code" href="classRtMidi.html#aac66af04a85fe5c5f07c360574a19406" title="MIDI API specifier arguments.">RtMidi::Api</a> <a class="code" href="classRtMidiIn.html#a6475a11eeb0c8bf22157c3887b100164" title="Returns the MIDI API specifier for the current instance of RtMidiIn.">RtMidiIn :: getCurrentApi</a>( <span class="keywordtype">void</span> ) throw() { <span class="keywordflow">return</span> rtapi_-&gt;getCurrentApi(); }
<a name="l00427"></a><a class="code" href="classRtMidiIn.html#a39df8f81a22f729a9904707dde487d2c">00427</a> <span class="keyword">inline</span> <span class="keywordtype">void</span> <a class="code" href="classRtMidiIn.html#a39df8f81a22f729a9904707dde487d2c" title="Open a MIDI input connection.">RtMidiIn :: openPort</a>( <span class="keywordtype">unsigned</span> <span class="keywordtype">int</span> portNumber, <span class="keyword">const</span> std::string portName ) { <span class="keywordflow">return</span> rtapi_-&gt;openPort( portNumber, portName ); }
<a name="l00428"></a><a class="code" href="classRtMidiIn.html#a245261b3f12ce727faed18fcfeef18c2">00428</a> <span class="keyword">inline</span> <span class="keywordtype">void</span> <a class="code" href="classRtMidiIn.html#a245261b3f12ce727faed18fcfeef18c2" title="Create a virtual input port, with optional name, to allow software connections (OS...">RtMidiIn :: openVirtualPort</a>( <span class="keyword">const</span> std::string portName ) { <span class="keywordflow">return</span> rtapi_-&gt;openVirtualPort( portName ); }
<a name="l00429"></a><a class="code" href="classRtMidiIn.html#a55bacf0d228fd8e3be6a79d12fd1dc39">00429</a> <span class="keyword">inline</span> <span class="keywordtype">void</span> <a class="code" href="classRtMidiIn.html#a55bacf0d228fd8e3be6a79d12fd1dc39" title="Close an open MIDI connection (if one exists).">RtMidiIn :: closePort</a>( <span class="keywordtype">void</span> ) { <span class="keywordflow">return</span> rtapi_-&gt;closePort(); }
<a name="l00430"></a><a class="code" href="classRtMidiIn.html#a7590563461c7467608a4b3806406b32d">00430</a> <span class="keyword">inline</span> <span class="keywordtype">void</span> <a class="code" href="classRtMidiIn.html#a7590563461c7467608a4b3806406b32d" title="Set a callback function to be invoked for incoming MIDI messages.">RtMidiIn :: setCallback</a>( RtMidiCallback callback, <span class="keywordtype">void</span> *userData ) { <span class="keywordflow">return</span> rtapi_-&gt;setCallback( callback, userData ); }
<a name="l00431"></a><a class="code" href="classRtMidiIn.html#ade23832a66c1ed56965c26325602543e">00431</a> <span class="keyword">inline</span> <span class="keywordtype">void</span> <a class="code" href="classRtMidiIn.html#ade23832a66c1ed56965c26325602543e" title="Cancel use of the current callback function (if one exists).">RtMidiIn :: cancelCallback</a>( <span class="keywordtype">void</span> ) { <span class="keywordflow">return</span> rtapi_-&gt;cancelCallback(); }
<a name="l00432"></a><a class="code" href="classRtMidiIn.html#a62b1b38aa8e5f11cd66f03d59228f4e4">00432</a> <span class="keyword">inline</span> <span class="keywordtype">unsigned</span> <span class="keywordtype">int</span> <a class="code" href="classRtMidiIn.html#a62b1b38aa8e5f11cd66f03d59228f4e4" title="Return the number of available MIDI input ports.">RtMidiIn :: getPortCount</a>( <span class="keywordtype">void</span> ) { <span class="keywordflow">return</span> rtapi_-&gt;getPortCount(); }
<a name="l00433"></a><a class="code" href="classRtMidiIn.html#af2961fff09fa01a3d5bc0f0c5a042aaf">00433</a> <span class="keyword">inline</span> std::string <a class="code" href="classRtMidiIn.html#af2961fff09fa01a3d5bc0f0c5a042aaf" title="Return a string identifier for the specified MIDI input port number.">RtMidiIn :: getPortName</a>( <span class="keywordtype">unsigned</span> <span class="keywordtype">int</span> portNumber ) { <span class="keywordflow">return</span> rtapi_-&gt;getPortName( portNumber ); }
<a name="l00434"></a><a class="code" href="classRtMidiIn.html#af9507125aaa42276ccc01df576fc3533">00434</a> <span class="keyword">inline</span> <span class="keywordtype">void</span> <a class="code" href="classRtMidiIn.html#af9507125aaa42276ccc01df576fc3533" title="Specify whether certain MIDI message types should be queued or ignored during input...">RtMidiIn :: ignoreTypes</a>( <span class="keywordtype">bool</span> midiSysex, <span class="keywordtype">bool</span> midiTime, <span class="keywordtype">bool</span> midiSense ) { <span class="keywordflow">return</span> rtapi_-&gt;ignoreTypes( midiSysex, midiTime, midiSense ); }
<a name="l00435"></a><a class="code" href="classRtMidiIn.html#a1ba10ecd276b30a8579c7d60a9c890eb">00435</a> <span class="keyword">inline</span> <span class="keywordtype">double</span> <a class="code" href="classRtMidiIn.html#a1ba10ecd276b30a8579c7d60a9c890eb" title="Fill the user-provided vector with the data bytes for the next available MIDI message...">RtMidiIn :: getMessage</a>( std::vector&lt;unsigned char&gt; *message ) { <span class="keywordflow">return</span> rtapi_-&gt;getMessage( message ); }
<a name="l00436"></a>00436
<a name="l00437"></a><a class="code" href="classRtMidiOut.html#a532b5712e305bd8afb65a3ad14138e0f">00437</a> <span class="keyword">inline</span> <a class="code" href="classRtMidi.html#aac66af04a85fe5c5f07c360574a19406" title="MIDI API specifier arguments.">RtMidi::Api</a> <a class="code" href="classRtMidiOut.html#a532b5712e305bd8afb65a3ad14138e0f" title="Returns the MIDI API specifier for the current instance of RtMidiOut.">RtMidiOut :: getCurrentApi</a>( <span class="keywordtype">void</span> ) throw() { <span class="keywordflow">return</span> rtapi_-&gt;getCurrentApi(); }
<a name="l00438"></a><a class="code" href="classRtMidiOut.html#a1b280d67317cd473a8816aeb2fe6c186">00438</a> <span class="keyword">inline</span> <span class="keywordtype">void</span> <a class="code" href="classRtMidiOut.html#a1b280d67317cd473a8816aeb2fe6c186" title="Open a MIDI output connection.">RtMidiOut :: openPort</a>( <span class="keywordtype">unsigned</span> <span class="keywordtype">int</span> portNumber, <span class="keyword">const</span> std::string portName ) { <span class="keywordflow">return</span> rtapi_-&gt;openPort( portNumber, portName ); }
<a name="l00439"></a><a class="code" href="classRtMidiOut.html#a47068e1c076d91fd89587c0ccdeddc7a">00439</a> <span class="keyword">inline</span> <span class="keywordtype">void</span> <a class="code" href="classRtMidiOut.html#a47068e1c076d91fd89587c0ccdeddc7a" title="Create a virtual output port, with optional name, to allow software connections (OS...">RtMidiOut :: openVirtualPort</a>( <span class="keyword">const</span> std::string portName ) { <span class="keywordflow">return</span> rtapi_-&gt;openVirtualPort( portName ); }
<a name="l00440"></a><a class="code" href="classRtMidiOut.html#a5a28d1ba9e002fd07a317d3a257d87e8">00440</a> <span class="keyword">inline</span> <span class="keywordtype">void</span> <a class="code" href="classRtMidiOut.html#a5a28d1ba9e002fd07a317d3a257d87e8" title="Close an open MIDI connection (if one exists).">RtMidiOut :: closePort</a>( <span class="keywordtype">void</span> ) { <span class="keywordflow">return</span> rtapi_-&gt;closePort(); }
<a name="l00441"></a><a class="code" href="classRtMidiOut.html#a0c4d662e1c398ddf35a2dbaf66f50976">00441</a> <span class="keyword">inline</span> <span class="keywordtype">unsigned</span> <span class="keywordtype">int</span> <a class="code" href="classRtMidiOut.html#a0c4d662e1c398ddf35a2dbaf66f50976" title="Return the number of available MIDI output ports.">RtMidiOut :: getPortCount</a>( <span class="keywordtype">void</span> ) { <span class="keywordflow">return</span> rtapi_-&gt;getPortCount(); }
<a name="l00442"></a><a class="code" href="classRtMidiOut.html#acc4ae0ab71a49ae7629075d5a9cd837c">00442</a> <span class="keyword">inline</span> std::string <a class="code" href="classRtMidiOut.html#acc4ae0ab71a49ae7629075d5a9cd837c" title="Return a string identifier for the specified MIDI port type and number.">RtMidiOut :: getPortName</a>( <span class="keywordtype">unsigned</span> <span class="keywordtype">int</span> portNumber ) { <span class="keywordflow">return</span> rtapi_-&gt;getPortName( portNumber ); }
<a name="l00443"></a><a class="code" href="classRtMidiOut.html#a0bd8972ef8ac4e8d37ccc4b5d51c2eb3">00443</a> <span class="keyword">inline</span> <span class="keywordtype">void</span> <a class="code" href="classRtMidiOut.html#a0bd8972ef8ac4e8d37ccc4b5d51c2eb3" title="Immediately send a single message out an open MIDI output port.">RtMidiOut :: sendMessage</a>( std::vector&lt;unsigned char&gt; *message ) { <span class="keywordflow">return</span> rtapi_-&gt;sendMessage( message ); }
<a name="l00444"></a>00444
<a name="l00445"></a>00445 <span class="comment">// **************************************************************** //</span>
<a name="l00446"></a>00446 <span class="comment">//</span>
<a name="l00447"></a>00447 <span class="comment">// MidiInApi and MidiOutApi subclass prototypes.</span>
<a name="l00448"></a>00448 <span class="comment">//</span>
<a name="l00449"></a>00449 <span class="comment">// **************************************************************** //</span>
<a name="l00450"></a>00450
<a name="l00451"></a>00451 <span class="preprocessor">#if !defined(__LINUX_ALSA__) &amp;&amp; !defined(__UNIX_JACK__) &amp;&amp; !defined(__MACOSX_CORE__) &amp;&amp; !defined(__WINDOWS_MM__) &amp;&amp; !defined(__WINDOWS_KS__)</span>
<a name="l00452"></a>00452 <span class="preprocessor"></span><span class="preprocessor"> #define __RTMIDI_DUMMY__</span>
<a name="l00453"></a>00453 <span class="preprocessor"></span><span class="preprocessor">#endif</span>
<a name="l00454"></a>00454 <span class="preprocessor"></span>
<a name="l00455"></a>00455 <span class="preprocessor">#if defined(__MACOSX_CORE__)</span>
<a name="l00456"></a>00456 <span class="preprocessor"></span>
<a name="l00457"></a>00457 <span class="keyword">class </span>MidiInCore: <span class="keyword">public</span> MidiInApi
<a name="l00458"></a>00458 {
<a name="l00459"></a>00459 <span class="keyword">public</span>:
<a name="l00460"></a>00460 MidiInCore( <span class="keyword">const</span> std::string clientName, <span class="keywordtype">unsigned</span> <span class="keywordtype">int</span> queueSizeLimit );
<a name="l00461"></a>00461 ~MidiInCore( <span class="keywordtype">void</span> );
<a name="l00462"></a>00462 <a class="code" href="classRtMidi.html#aac66af04a85fe5c5f07c360574a19406" title="MIDI API specifier arguments.">RtMidi::Api</a> getCurrentApi( <span class="keywordtype">void</span> ) { <span class="keywordflow">return</span> <a class="code" href="classRtMidi.html#aac66af04a85fe5c5f07c360574a19406a3f41293f89467641484fbd54c4530908">RtMidi::MACOSX_CORE</a>; };
<a name="l00463"></a>00463 <span class="keywordtype">void</span> openPort( <span class="keywordtype">unsigned</span> <span class="keywordtype">int</span> portNumber, <span class="keyword">const</span> std::string portName );
<a name="l00464"></a>00464 <span class="keywordtype">void</span> openVirtualPort( <span class="keyword">const</span> std::string portName );
<a name="l00465"></a>00465 <span class="keywordtype">void</span> closePort( <span class="keywordtype">void</span> );
<a name="l00466"></a>00466 <span class="keywordtype">unsigned</span> <span class="keywordtype">int</span> getPortCount( <span class="keywordtype">void</span> );
<a name="l00467"></a>00467 std::string getPortName( <span class="keywordtype">unsigned</span> <span class="keywordtype">int</span> portNumber );
<a name="l00468"></a>00468
<a name="l00469"></a>00469 <span class="keyword">protected</span>:
<a name="l00470"></a>00470 <span class="keywordtype">void</span> initialize( <span class="keyword">const</span> std::string&amp; clientName );
<a name="l00471"></a>00471 };
<a name="l00472"></a>00472
<a name="l00473"></a>00473 <span class="keyword">class </span>MidiOutCore: <span class="keyword">public</span> MidiOutApi
<a name="l00474"></a>00474 {
<a name="l00475"></a>00475 <span class="keyword">public</span>:
<a name="l00476"></a>00476 MidiOutCore( <span class="keyword">const</span> std::string clientName );
<a name="l00477"></a>00477 ~MidiOutCore( <span class="keywordtype">void</span> );
<a name="l00478"></a>00478 <a class="code" href="classRtMidi.html#aac66af04a85fe5c5f07c360574a19406" title="MIDI API specifier arguments.">RtMidi::Api</a> getCurrentApi( <span class="keywordtype">void</span> ) { <span class="keywordflow">return</span> <a class="code" href="classRtMidi.html#aac66af04a85fe5c5f07c360574a19406a3f41293f89467641484fbd54c4530908">RtMidi::MACOSX_CORE</a>; };
<a name="l00479"></a>00479 <span class="keywordtype">void</span> openPort( <span class="keywordtype">unsigned</span> <span class="keywordtype">int</span> portNumber, <span class="keyword">const</span> std::string portName );
<a name="l00480"></a>00480 <span class="keywordtype">void</span> openVirtualPort( <span class="keyword">const</span> std::string portName );
<a name="l00481"></a>00481 <span class="keywordtype">void</span> closePort( <span class="keywordtype">void</span> );
<a name="l00482"></a>00482 <span class="keywordtype">unsigned</span> <span class="keywordtype">int</span> getPortCount( <span class="keywordtype">void</span> );
<a name="l00483"></a>00483 std::string getPortName( <span class="keywordtype">unsigned</span> <span class="keywordtype">int</span> portNumber );
<a name="l00484"></a>00484 <span class="keywordtype">void</span> sendMessage( std::vector&lt;unsigned char&gt; *message );
<a name="l00485"></a>00485
<a name="l00486"></a>00486 <span class="keyword">protected</span>:
<a name="l00487"></a>00487 <span class="keywordtype">void</span> initialize( <span class="keyword">const</span> std::string&amp; clientName );
<a name="l00488"></a>00488 };
<a name="l00489"></a>00489
<a name="l00490"></a>00490 <span class="preprocessor">#endif</span>
<a name="l00491"></a>00491 <span class="preprocessor"></span>
<a name="l00492"></a>00492 <span class="preprocessor">#if defined(__UNIX_JACK__)</span>
<a name="l00493"></a>00493 <span class="preprocessor"></span>
<a name="l00494"></a>00494 <span class="keyword">class </span>MidiInJack: <span class="keyword">public</span> MidiInApi
<a name="l00495"></a>00495 {
<a name="l00496"></a>00496 <span class="keyword">public</span>:
<a name="l00497"></a>00497 MidiInJack( <span class="keyword">const</span> std::string clientName, <span class="keywordtype">unsigned</span> <span class="keywordtype">int</span> queueSizeLimit );
<a name="l00498"></a>00498 ~MidiInJack( <span class="keywordtype">void</span> );
<a name="l00499"></a>00499 <a class="code" href="classRtMidi.html#aac66af04a85fe5c5f07c360574a19406" title="MIDI API specifier arguments.">RtMidi::Api</a> getCurrentApi( <span class="keywordtype">void</span> ) { <span class="keywordflow">return</span> <a class="code" href="classRtMidi.html#aac66af04a85fe5c5f07c360574a19406a1f59daf3120f47c0ae3891773112ddfa">RtMidi::UNIX_JACK</a>; };
<a name="l00500"></a>00500 <span class="keywordtype">void</span> openPort( <span class="keywordtype">unsigned</span> <span class="keywordtype">int</span> portNumber, <span class="keyword">const</span> std::string portName );
<a name="l00501"></a>00501 <span class="keywordtype">void</span> openVirtualPort( <span class="keyword">const</span> std::string portName );
<a name="l00502"></a>00502 <span class="keywordtype">void</span> closePort( <span class="keywordtype">void</span> );
<a name="l00503"></a>00503 <span class="keywordtype">unsigned</span> <span class="keywordtype">int</span> getPortCount( <span class="keywordtype">void</span> );
<a name="l00504"></a>00504 std::string getPortName( <span class="keywordtype">unsigned</span> <span class="keywordtype">int</span> portNumber );
<a name="l00505"></a>00505
<a name="l00506"></a>00506 <span class="keyword">protected</span>:
<a name="l00507"></a>00507 <span class="keywordtype">void</span> initialize( <span class="keyword">const</span> std::string&amp; clientName );
<a name="l00508"></a>00508 };
<a name="l00509"></a>00509
<a name="l00510"></a>00510 <span class="keyword">class </span>MidiOutJack: <span class="keyword">public</span> MidiOutApi
<a name="l00511"></a>00511 {
<a name="l00512"></a>00512 <span class="keyword">public</span>:
<a name="l00513"></a>00513 MidiOutJack( <span class="keyword">const</span> std::string clientName );
<a name="l00514"></a>00514 ~MidiOutJack( <span class="keywordtype">void</span> );
<a name="l00515"></a>00515 <a class="code" href="classRtMidi.html#aac66af04a85fe5c5f07c360574a19406" title="MIDI API specifier arguments.">RtMidi::Api</a> getCurrentApi( <span class="keywordtype">void</span> ) { <span class="keywordflow">return</span> <a class="code" href="classRtMidi.html#aac66af04a85fe5c5f07c360574a19406a1f59daf3120f47c0ae3891773112ddfa">RtMidi::UNIX_JACK</a>; };
<a name="l00516"></a>00516 <span class="keywordtype">void</span> openPort( <span class="keywordtype">unsigned</span> <span class="keywordtype">int</span> portNumber, <span class="keyword">const</span> std::string portName );
<a name="l00517"></a>00517 <span class="keywordtype">void</span> openVirtualPort( <span class="keyword">const</span> std::string portName );
<a name="l00518"></a>00518 <span class="keywordtype">void</span> closePort( <span class="keywordtype">void</span> );
<a name="l00519"></a>00519 <span class="keywordtype">unsigned</span> <span class="keywordtype">int</span> getPortCount( <span class="keywordtype">void</span> );
<a name="l00520"></a>00520 std::string getPortName( <span class="keywordtype">unsigned</span> <span class="keywordtype">int</span> portNumber );
<a name="l00521"></a>00521 <span class="keywordtype">void</span> sendMessage( std::vector&lt;unsigned char&gt; *message );
<a name="l00522"></a>00522
<a name="l00523"></a>00523 <span class="keyword">protected</span>:
<a name="l00524"></a>00524 <span class="keywordtype">void</span> initialize( <span class="keyword">const</span> std::string&amp; clientName );
<a name="l00525"></a>00525 };
<a name="l00526"></a>00526
<a name="l00527"></a>00527 <span class="preprocessor">#endif</span>
<a name="l00528"></a>00528 <span class="preprocessor"></span>
<a name="l00529"></a>00529 <span class="preprocessor">#if defined(__LINUX_ALSA__)</span>
<a name="l00530"></a>00530 <span class="preprocessor"></span>
<a name="l00531"></a>00531 <span class="keyword">class </span>MidiInAlsa: <span class="keyword">public</span> MidiInApi
<a name="l00532"></a>00532 {
<a name="l00533"></a>00533 <span class="keyword">public</span>:
<a name="l00534"></a>00534 MidiInAlsa( <span class="keyword">const</span> std::string clientName, <span class="keywordtype">unsigned</span> <span class="keywordtype">int</span> queueSizeLimit );
<a name="l00535"></a>00535 ~MidiInAlsa( <span class="keywordtype">void</span> );
<a name="l00536"></a>00536 <a class="code" href="classRtMidi.html#aac66af04a85fe5c5f07c360574a19406" title="MIDI API specifier arguments.">RtMidi::Api</a> getCurrentApi( <span class="keywordtype">void</span> ) { <span class="keywordflow">return</span> <a class="code" href="classRtMidi.html#aac66af04a85fe5c5f07c360574a19406a20c691b24844d3ab5dbf882123235df2">RtMidi::LINUX_ALSA</a>; };
<a name="l00537"></a>00537 <span class="keywordtype">void</span> openPort( <span class="keywordtype">unsigned</span> <span class="keywordtype">int</span> portNumber, <span class="keyword">const</span> std::string portName );
<a name="l00538"></a>00538 <span class="keywordtype">void</span> openVirtualPort( <span class="keyword">const</span> std::string portName );
<a name="l00539"></a>00539 <span class="keywordtype">void</span> closePort( <span class="keywordtype">void</span> );
<a name="l00540"></a>00540 <span class="keywordtype">unsigned</span> <span class="keywordtype">int</span> getPortCount( <span class="keywordtype">void</span> );
<a name="l00541"></a>00541 std::string getPortName( <span class="keywordtype">unsigned</span> <span class="keywordtype">int</span> portNumber );
<a name="l00542"></a>00542
<a name="l00543"></a>00543 <span class="keyword">protected</span>:
<a name="l00544"></a>00544 <span class="keywordtype">void</span> initialize( <span class="keyword">const</span> std::string&amp; clientName );
<a name="l00545"></a>00545 };
<a name="l00546"></a>00546
<a name="l00547"></a>00547 <span class="keyword">class </span>MidiOutAlsa: <span class="keyword">public</span> MidiOutApi
<a name="l00548"></a>00548 {
<a name="l00549"></a>00549 <span class="keyword">public</span>:
<a name="l00550"></a>00550 MidiOutAlsa( <span class="keyword">const</span> std::string clientName );
<a name="l00551"></a>00551 ~MidiOutAlsa( <span class="keywordtype">void</span> );
<a name="l00552"></a>00552 <a class="code" href="classRtMidi.html#aac66af04a85fe5c5f07c360574a19406" title="MIDI API specifier arguments.">RtMidi::Api</a> getCurrentApi( <span class="keywordtype">void</span> ) { <span class="keywordflow">return</span> <a class="code" href="classRtMidi.html#aac66af04a85fe5c5f07c360574a19406a20c691b24844d3ab5dbf882123235df2">RtMidi::LINUX_ALSA</a>; };
<a name="l00553"></a>00553 <span class="keywordtype">void</span> openPort( <span class="keywordtype">unsigned</span> <span class="keywordtype">int</span> portNumber, <span class="keyword">const</span> std::string portName );
<a name="l00554"></a>00554 <span class="keywordtype">void</span> openVirtualPort( <span class="keyword">const</span> std::string portName );
<a name="l00555"></a>00555 <span class="keywordtype">void</span> closePort( <span class="keywordtype">void</span> );
<a name="l00556"></a>00556 <span class="keywordtype">unsigned</span> <span class="keywordtype">int</span> getPortCount( <span class="keywordtype">void</span> );
<a name="l00557"></a>00557 std::string getPortName( <span class="keywordtype">unsigned</span> <span class="keywordtype">int</span> portNumber );
<a name="l00558"></a>00558 <span class="keywordtype">void</span> sendMessage( std::vector&lt;unsigned char&gt; *message );
<a name="l00559"></a>00559
<a name="l00560"></a>00560 <span class="keyword">protected</span>:
<a name="l00561"></a>00561 <span class="keywordtype">void</span> initialize( <span class="keyword">const</span> std::string&amp; clientName );
<a name="l00562"></a>00562 };
<a name="l00563"></a>00563
<a name="l00564"></a>00564 <span class="preprocessor">#endif</span>
<a name="l00565"></a>00565 <span class="preprocessor"></span>
<a name="l00566"></a>00566 <span class="preprocessor">#if defined(__WINDOWS_MM__)</span>
<a name="l00567"></a>00567 <span class="preprocessor"></span>
<a name="l00568"></a>00568 <span class="keyword">class </span>MidiInWinMM: <span class="keyword">public</span> MidiInApi
<a name="l00569"></a>00569 {
<a name="l00570"></a>00570 <span class="keyword">public</span>:
<a name="l00571"></a>00571 MidiInWinMM( <span class="keyword">const</span> std::string clientName, <span class="keywordtype">unsigned</span> <span class="keywordtype">int</span> queueSizeLimit );
<a name="l00572"></a>00572 ~MidiInWinMM( <span class="keywordtype">void</span> );
<a name="l00573"></a>00573 <a class="code" href="classRtMidi.html#aac66af04a85fe5c5f07c360574a19406" title="MIDI API specifier arguments.">RtMidi::Api</a> getCurrentApi( <span class="keywordtype">void</span> ) { <span class="keywordflow">return</span> <a class="code" href="classRtMidi.html#aac66af04a85fe5c5f07c360574a19406a647868cb4ed37f517bf185a7f41cb70f">RtMidi::WINDOWS_MM</a>; };
<a name="l00574"></a>00574 <span class="keywordtype">void</span> openPort( <span class="keywordtype">unsigned</span> <span class="keywordtype">int</span> portNumber, <span class="keyword">const</span> std::string portName );
<a name="l00575"></a>00575 <span class="keywordtype">void</span> openVirtualPort( <span class="keyword">const</span> std::string portName );
<a name="l00576"></a>00576 <span class="keywordtype">void</span> closePort( <span class="keywordtype">void</span> );
<a name="l00577"></a>00577 <span class="keywordtype">unsigned</span> <span class="keywordtype">int</span> getPortCount( <span class="keywordtype">void</span> );
<a name="l00578"></a>00578 std::string getPortName( <span class="keywordtype">unsigned</span> <span class="keywordtype">int</span> portNumber );
<a name="l00579"></a>00579
<a name="l00580"></a>00580 <span class="keyword">protected</span>:
<a name="l00581"></a>00581 <span class="keywordtype">void</span> initialize( <span class="keyword">const</span> std::string&amp; clientName );
<a name="l00582"></a>00582 };
<a name="l00583"></a>00583
<a name="l00584"></a>00584 <span class="keyword">class </span>MidiOutWinMM: <span class="keyword">public</span> MidiOutApi
<a name="l00585"></a>00585 {
<a name="l00586"></a>00586 <span class="keyword">public</span>:
<a name="l00587"></a>00587 MidiOutWinMM( <span class="keyword">const</span> std::string clientName );
<a name="l00588"></a>00588 ~MidiOutWinMM( <span class="keywordtype">void</span> );
<a name="l00589"></a>00589 <a class="code" href="classRtMidi.html#aac66af04a85fe5c5f07c360574a19406" title="MIDI API specifier arguments.">RtMidi::Api</a> getCurrentApi( <span class="keywordtype">void</span> ) { <span class="keywordflow">return</span> <a class="code" href="classRtMidi.html#aac66af04a85fe5c5f07c360574a19406a647868cb4ed37f517bf185a7f41cb70f">RtMidi::WINDOWS_MM</a>; };
<a name="l00590"></a>00590 <span class="keywordtype">void</span> openPort( <span class="keywordtype">unsigned</span> <span class="keywordtype">int</span> portNumber, <span class="keyword">const</span> std::string portName );
<a name="l00591"></a>00591 <span class="keywordtype">void</span> openVirtualPort( <span class="keyword">const</span> std::string portName );
<a name="l00592"></a>00592 <span class="keywordtype">void</span> closePort( <span class="keywordtype">void</span> );
<a name="l00593"></a>00593 <span class="keywordtype">unsigned</span> <span class="keywordtype">int</span> getPortCount( <span class="keywordtype">void</span> );
<a name="l00594"></a>00594 std::string getPortName( <span class="keywordtype">unsigned</span> <span class="keywordtype">int</span> portNumber );
<a name="l00595"></a>00595 <span class="keywordtype">void</span> sendMessage( std::vector&lt;unsigned char&gt; *message );
<a name="l00596"></a>00596
<a name="l00597"></a>00597 <span class="keyword">protected</span>:
<a name="l00598"></a>00598 <span class="keywordtype">void</span> initialize( <span class="keyword">const</span> std::string&amp; clientName );
<a name="l00599"></a>00599 };
<a name="l00600"></a>00600
<a name="l00601"></a>00601 <span class="preprocessor">#endif</span>
<a name="l00602"></a>00602 <span class="preprocessor"></span>
<a name="l00603"></a>00603 <span class="preprocessor">#if defined(__WINDOWS_KS__)</span>
<a name="l00604"></a>00604 <span class="preprocessor"></span>
<a name="l00605"></a>00605 <span class="keyword">class </span>MidiInWinKS: <span class="keyword">public</span> MidiInApi
<a name="l00606"></a>00606 {
<a name="l00607"></a>00607 <span class="keyword">public</span>:
<a name="l00608"></a>00608 MidiInWinKS( <span class="keyword">const</span> std::string clientName, <span class="keywordtype">unsigned</span> <span class="keywordtype">int</span> queueSizeLimit );
<a name="l00609"></a>00609 ~MidiInWinKS( <span class="keywordtype">void</span> );
<a name="l00610"></a>00610 <a class="code" href="classRtMidi.html#aac66af04a85fe5c5f07c360574a19406" title="MIDI API specifier arguments.">RtMidi::Api</a> getCurrentApi( <span class="keywordtype">void</span> ) { <span class="keywordflow">return</span> <a class="code" href="classRtMidi.html#aac66af04a85fe5c5f07c360574a19406a246ae76adf088dd4d359bbac3d605756">RtMidi::WINDOWS_KS</a>; };
<a name="l00611"></a>00611 <span class="keywordtype">void</span> openPort( <span class="keywordtype">unsigned</span> <span class="keywordtype">int</span> portNumber, <span class="keyword">const</span> std::string portName );
<a name="l00612"></a>00612 <span class="keywordtype">void</span> openVirtualPort( <span class="keyword">const</span> std::string portName );
<a name="l00613"></a>00613 <span class="keywordtype">void</span> closePort( <span class="keywordtype">void</span> );
<a name="l00614"></a>00614 <span class="keywordtype">unsigned</span> <span class="keywordtype">int</span> getPortCount( <span class="keywordtype">void</span> );
<a name="l00615"></a>00615 std::string getPortName( <span class="keywordtype">unsigned</span> <span class="keywordtype">int</span> portNumber );
<a name="l00616"></a>00616
<a name="l00617"></a>00617 <span class="keyword">protected</span>:
<a name="l00618"></a>00618 <span class="keywordtype">void</span> initialize( <span class="keyword">const</span> std::string&amp; clientName );
<a name="l00619"></a>00619 };
<a name="l00620"></a>00620
<a name="l00621"></a>00621 <span class="keyword">class </span>MidiOutWinKS: <span class="keyword">public</span> MidiOutApi
<a name="l00622"></a>00622 {
<a name="l00623"></a>00623 <span class="keyword">public</span>:
<a name="l00624"></a>00624 MidiOutWinKS( <span class="keyword">const</span> std::string clientName );
<a name="l00625"></a>00625 ~MidiOutWinKS( <span class="keywordtype">void</span> );
<a name="l00626"></a>00626 <a class="code" href="classRtMidi.html#aac66af04a85fe5c5f07c360574a19406" title="MIDI API specifier arguments.">RtMidi::Api</a> getCurrentApi( <span class="keywordtype">void</span> ) { <span class="keywordflow">return</span> <a class="code" href="classRtMidi.html#aac66af04a85fe5c5f07c360574a19406a246ae76adf088dd4d359bbac3d605756">RtMidi::WINDOWS_KS</a>; };
<a name="l00627"></a>00627 <span class="keywordtype">void</span> openPort( <span class="keywordtype">unsigned</span> <span class="keywordtype">int</span> portNumber, <span class="keyword">const</span> std::string portName );
<a name="l00628"></a>00628 <span class="keywordtype">void</span> openVirtualPort( <span class="keyword">const</span> std::string portName );
<a name="l00629"></a>00629 <span class="keywordtype">void</span> closePort( <span class="keywordtype">void</span> );
<a name="l00630"></a>00630 <span class="keywordtype">unsigned</span> <span class="keywordtype">int</span> getPortCount( <span class="keywordtype">void</span> );
<a name="l00631"></a>00631 std::string getPortName( <span class="keywordtype">unsigned</span> <span class="keywordtype">int</span> portNumber );
<a name="l00632"></a>00632 <span class="keywordtype">void</span> sendMessage( std::vector&lt;unsigned char&gt; *message );
<a name="l00633"></a>00633
<a name="l00634"></a>00634 <span class="keyword">protected</span>:
<a name="l00635"></a>00635 <span class="keywordtype">void</span> initialize( <span class="keyword">const</span> std::string&amp; clientName );
<a name="l00636"></a>00636 };
<a name="l00637"></a>00637
<a name="l00638"></a>00638 <span class="preprocessor">#endif</span>
<a name="l00639"></a>00639 <span class="preprocessor"></span>
<a name="l00640"></a>00640 <span class="preprocessor">#if defined(__RTMIDI_DUMMY__)</span>
<a name="l00641"></a>00641 <span class="preprocessor"></span>
<a name="l00642"></a>00642 <span class="keyword">class </span>MidiInDummy: <span class="keyword">public</span> MidiInApi
<a name="l00643"></a>00643 {
<a name="l00644"></a>00644 <span class="keyword">public</span>:
<a name="l00645"></a>00645 MidiInDummy( <span class="keyword">const</span> std::string clientName, <span class="keywordtype">unsigned</span> <span class="keywordtype">int</span> queueSizeLimit ) : MidiInApi( queueSizeLimit ) { errorString_ = <span class="stringliteral">&quot;MidiInDummy: This class provides no functionality.&quot;</span>; <a class="code" href="classRtMidi.html#ae1a810e84c57b2eb4989056cb384a04c" title="A basic error reporting function for RtMidi classes.">RtMidi::error</a>( <a class="code" href="classRtError.html#ab04667aae01bffc354a9ac6bda6903aca3a1603c24a56cbdaf5f8ae4ddcb86398">RtError::WARNING</a>, errorString_ ); };
<a name="l00646"></a>00646 <a class="code" href="classRtMidi.html#aac66af04a85fe5c5f07c360574a19406" title="MIDI API specifier arguments.">RtMidi::Api</a> getCurrentApi( <span class="keywordtype">void</span> ) { <span class="keywordflow">return</span> <a class="code" href="classRtMidi.html#aac66af04a85fe5c5f07c360574a19406a54dba406ab358492005ce2b966a2d959">RtMidi::RTMIDI_DUMMY</a>; };
<a name="l00647"></a>00647 <span class="keywordtype">void</span> openPort( <span class="keywordtype">unsigned</span> <span class="keywordtype">int</span> portNumber, <span class="keyword">const</span> std::string portName ) {};
<a name="l00648"></a>00648 <span class="keywordtype">void</span> openVirtualPort( <span class="keyword">const</span> std::string portName ) {};
<a name="l00649"></a>00649 <span class="keywordtype">void</span> closePort( <span class="keywordtype">void</span> ) {};
<a name="l00650"></a>00650 <span class="keywordtype">unsigned</span> <span class="keywordtype">int</span> getPortCount( <span class="keywordtype">void</span> ) { <span class="keywordflow">return</span> 0; };
<a name="l00651"></a>00651 std::string getPortName( <span class="keywordtype">unsigned</span> <span class="keywordtype">int</span> portNumber ) { <span class="keywordflow">return</span> <span class="stringliteral">&quot;&quot;</span>; };
<a name="l00652"></a>00652
<a name="l00653"></a>00653 <span class="keyword">protected</span>:
<a name="l00654"></a>00654 <span class="keywordtype">void</span> initialize( <span class="keyword">const</span> std::string&amp; clientName ) {};
<a name="l00655"></a>00655 };
<a name="l00656"></a>00656
<a name="l00657"></a>00657 <span class="keyword">class </span>MidiOutDummy: <span class="keyword">public</span> MidiOutApi
<a name="l00658"></a>00658 {
<a name="l00659"></a>00659 <span class="keyword">public</span>:
<a name="l00660"></a>00660 MidiOutDummy( <span class="keyword">const</span> std::string clientName ) { errorString_ = <span class="stringliteral">&quot;MidiOutDummy: This class provides no functionality.&quot;</span>; <a class="code" href="classRtMidi.html#ae1a810e84c57b2eb4989056cb384a04c" title="A basic error reporting function for RtMidi classes.">RtMidi::error</a>( <a class="code" href="classRtError.html#ab04667aae01bffc354a9ac6bda6903aca3a1603c24a56cbdaf5f8ae4ddcb86398">RtError::WARNING</a>, errorString_ ); };
<a name="l00661"></a>00661 <a class="code" href="classRtMidi.html#aac66af04a85fe5c5f07c360574a19406" title="MIDI API specifier arguments.">RtMidi::Api</a> getCurrentApi( <span class="keywordtype">void</span> ) { <span class="keywordflow">return</span> <a class="code" href="classRtMidi.html#aac66af04a85fe5c5f07c360574a19406a54dba406ab358492005ce2b966a2d959">RtMidi::RTMIDI_DUMMY</a>; };
<a name="l00662"></a>00662 <span class="keywordtype">void</span> openPort( <span class="keywordtype">unsigned</span> <span class="keywordtype">int</span> portNumber, <span class="keyword">const</span> std::string portName ) {};
<a name="l00663"></a>00663 <span class="keywordtype">void</span> openVirtualPort( <span class="keyword">const</span> std::string portName ) {};
<a name="l00664"></a>00664 <span class="keywordtype">void</span> closePort( <span class="keywordtype">void</span> ) {};
<a name="l00665"></a>00665 <span class="keywordtype">unsigned</span> <span class="keywordtype">int</span> getPortCount( <span class="keywordtype">void</span> ) { <span class="keywordflow">return</span> 0; };
<a name="l00666"></a>00666 std::string getPortName( <span class="keywordtype">unsigned</span> <span class="keywordtype">int</span> portNumber ) { <span class="keywordflow">return</span> <span class="stringliteral">&quot;&quot;</span>; };
<a name="l00667"></a>00667 <span class="keywordtype">void</span> sendMessage( std::vector&lt;unsigned char&gt; *message ) {};
<a name="l00668"></a>00668
<a name="l00669"></a>00669 <span class="keyword">protected</span>:
<a name="l00670"></a>00670 <span class="keywordtype">void</span> initialize( <span class="keyword">const</span> std::string&amp; clientName ) {};
<a name="l00671"></a>00671 };
<a name="l00672"></a>00672
<a name="l00673"></a>00673 <span class="preprocessor">#endif</span>
<a name="l00674"></a>00674 <span class="preprocessor"></span>
<a name="l00675"></a>00675 <span class="preprocessor">#endif</span>
</pre></div></div> </pre></div></div>
<HR> <HR>
<table> <table>
<tr><td><A HREF="http://ccrma.stanford.edu/software/stk/"><I>The Synthesis ToolKit in C++ (STK)</I></A></td></tr> <tr><td><A HREF="http://ccrma.stanford.edu/software/stk/"><I>The Synthesis ToolKit in C++ (STK)</I></A></td></tr>
<tr><td>&copy;1995-2011 Perry R. Cook and Gary P. Scavone. All Rights Reserved.</td></tr> <tr><td>&copy;1995-2012 Perry R. Cook and Gary P. Scavone. All Rights Reserved.</td></tr>
</table> </table>
</BODY> </BODY>

View File

@@ -9,7 +9,7 @@
<a class="qindex" href="index.html">Home</a> &nbsp; <a class="qindex" href="information.html">Information</a> &nbsp; <a class="qindex" href="classes.html">Classes</a> &nbsp; <a class="qindex" href="download.html">Download</a> &nbsp; <a class="qindex" href="usage.html">Usage</a> &nbsp; <a class="qindex" href="maillist.html">Mail List</a> &nbsp; <a class="qindex" href="system.html">Requirements</a> &nbsp; <a class="qindex" href="links.html">Links</a> &nbsp; <a class="qindex" href="faq.html">FAQ</a> &nbsp; <a class="qindex" href="tutorial.html">Tutorial</a></CENTER> <a class="qindex" href="index.html">Home</a> &nbsp; <a class="qindex" href="information.html">Information</a> &nbsp; <a class="qindex" href="classes.html">Classes</a> &nbsp; <a class="qindex" href="download.html">Download</a> &nbsp; <a class="qindex" href="usage.html">Usage</a> &nbsp; <a class="qindex" href="maillist.html">Mail List</a> &nbsp; <a class="qindex" href="system.html">Requirements</a> &nbsp; <a class="qindex" href="links.html">Links</a> &nbsp; <a class="qindex" href="faq.html">FAQ</a> &nbsp; <a class="qindex" href="tutorial.html">Tutorial</a></CENTER>
<HR> <HR>
<!-- Generated by Doxygen 1.6.2 --> <!-- Generated by Doxygen 1.6.2 -->
<div class="navpath"><a class="el" href="dir_f14fd23bc74c76f288031ad23b3f3505.html">include</a> <div class="navpath"><a class="el" href="dir_221deb9bdff892d63ed1e409450a60d2.html">include</a>
</div> </div>
<div class="contents"> <div class="contents">
<h1>RtWvIn.h</h1><div class="fragment"><pre class="fragment"><a name="l00001"></a>00001 <span class="preprocessor">#ifndef STK_RTWVIN_H</span> <h1>RtWvIn.h</h1><div class="fragment"><pre class="fragment"><a name="l00001"></a>00001 <span class="preprocessor">#ifndef STK_RTWVIN_H</span>
@@ -83,7 +83,7 @@
<table> <table>
<tr><td><A HREF="http://ccrma.stanford.edu/software/stk/"><I>The Synthesis ToolKit in C++ (STK)</I></A></td></tr> <tr><td><A HREF="http://ccrma.stanford.edu/software/stk/"><I>The Synthesis ToolKit in C++ (STK)</I></A></td></tr>
<tr><td>&copy;1995-2011 Perry R. Cook and Gary P. Scavone. All Rights Reserved.</td></tr> <tr><td>&copy;1995-2012 Perry R. Cook and Gary P. Scavone. All Rights Reserved.</td></tr>
</table> </table>
</BODY> </BODY>

View File

@@ -9,7 +9,7 @@
<a class="qindex" href="index.html">Home</a> &nbsp; <a class="qindex" href="information.html">Information</a> &nbsp; <a class="qindex" href="classes.html">Classes</a> &nbsp; <a class="qindex" href="download.html">Download</a> &nbsp; <a class="qindex" href="usage.html">Usage</a> &nbsp; <a class="qindex" href="maillist.html">Mail List</a> &nbsp; <a class="qindex" href="system.html">Requirements</a> &nbsp; <a class="qindex" href="links.html">Links</a> &nbsp; <a class="qindex" href="faq.html">FAQ</a> &nbsp; <a class="qindex" href="tutorial.html">Tutorial</a></CENTER> <a class="qindex" href="index.html">Home</a> &nbsp; <a class="qindex" href="information.html">Information</a> &nbsp; <a class="qindex" href="classes.html">Classes</a> &nbsp; <a class="qindex" href="download.html">Download</a> &nbsp; <a class="qindex" href="usage.html">Usage</a> &nbsp; <a class="qindex" href="maillist.html">Mail List</a> &nbsp; <a class="qindex" href="system.html">Requirements</a> &nbsp; <a class="qindex" href="links.html">Links</a> &nbsp; <a class="qindex" href="faq.html">FAQ</a> &nbsp; <a class="qindex" href="tutorial.html">Tutorial</a></CENTER>
<HR> <HR>
<!-- Generated by Doxygen 1.6.2 --> <!-- Generated by Doxygen 1.6.2 -->
<div class="navpath"><a class="el" href="dir_f14fd23bc74c76f288031ad23b3f3505.html">include</a> <div class="navpath"><a class="el" href="dir_221deb9bdff892d63ed1e409450a60d2.html">include</a>
</div> </div>
<div class="contents"> <div class="contents">
<h1>RtWvOut.h</h1><div class="fragment"><pre class="fragment"><a name="l00001"></a>00001 <span class="preprocessor">#ifndef STK_RTWVOUT_H</span> <h1>RtWvOut.h</h1><div class="fragment"><pre class="fragment"><a name="l00001"></a>00001 <span class="preprocessor">#ifndef STK_RTWVOUT_H</span>
@@ -70,7 +70,7 @@
<table> <table>
<tr><td><A HREF="http://ccrma.stanford.edu/software/stk/"><I>The Synthesis ToolKit in C++ (STK)</I></A></td></tr> <tr><td><A HREF="http://ccrma.stanford.edu/software/stk/"><I>The Synthesis ToolKit in C++ (STK)</I></A></td></tr>
<tr><td>&copy;1995-2011 Perry R. Cook and Gary P. Scavone. All Rights Reserved.</td></tr> <tr><td>&copy;1995-2012 Perry R. Cook and Gary P. Scavone. All Rights Reserved.</td></tr>
</table> </table>
</BODY> </BODY>

View File

@@ -9,7 +9,7 @@
<a class="qindex" href="index.html">Home</a> &nbsp; <a class="qindex" href="information.html">Information</a> &nbsp; <a class="qindex" href="classes.html">Classes</a> &nbsp; <a class="qindex" href="download.html">Download</a> &nbsp; <a class="qindex" href="usage.html">Usage</a> &nbsp; <a class="qindex" href="maillist.html">Mail List</a> &nbsp; <a class="qindex" href="system.html">Requirements</a> &nbsp; <a class="qindex" href="links.html">Links</a> &nbsp; <a class="qindex" href="faq.html">FAQ</a> &nbsp; <a class="qindex" href="tutorial.html">Tutorial</a></CENTER> <a class="qindex" href="index.html">Home</a> &nbsp; <a class="qindex" href="information.html">Information</a> &nbsp; <a class="qindex" href="classes.html">Classes</a> &nbsp; <a class="qindex" href="download.html">Download</a> &nbsp; <a class="qindex" href="usage.html">Usage</a> &nbsp; <a class="qindex" href="maillist.html">Mail List</a> &nbsp; <a class="qindex" href="system.html">Requirements</a> &nbsp; <a class="qindex" href="links.html">Links</a> &nbsp; <a class="qindex" href="faq.html">FAQ</a> &nbsp; <a class="qindex" href="tutorial.html">Tutorial</a></CENTER>
<HR> <HR>
<!-- Generated by Doxygen 1.6.2 --> <!-- Generated by Doxygen 1.6.2 -->
<div class="navpath"><a class="el" href="dir_f14fd23bc74c76f288031ad23b3f3505.html">include</a> <div class="navpath"><a class="el" href="dir_221deb9bdff892d63ed1e409450a60d2.html">include</a>
</div> </div>
<div class="contents"> <div class="contents">
<h1>Sampler.h</h1><div class="fragment"><pre class="fragment"><a name="l00001"></a>00001 <span class="preprocessor">#ifndef STK_SAMPLER_H</span> <h1>Sampler.h</h1><div class="fragment"><pre class="fragment"><a name="l00001"></a>00001 <span class="preprocessor">#ifndef STK_SAMPLER_H</span>
@@ -71,7 +71,7 @@
<table> <table>
<tr><td><A HREF="http://ccrma.stanford.edu/software/stk/"><I>The Synthesis ToolKit in C++ (STK)</I></A></td></tr> <tr><td><A HREF="http://ccrma.stanford.edu/software/stk/"><I>The Synthesis ToolKit in C++ (STK)</I></A></td></tr>
<tr><td>&copy;1995-2011 Perry R. Cook and Gary P. Scavone. All Rights Reserved.</td></tr> <tr><td>&copy;1995-2012 Perry R. Cook and Gary P. Scavone. All Rights Reserved.</td></tr>
</table> </table>
</BODY> </BODY>

View File

@@ -9,7 +9,7 @@
<a class="qindex" href="index.html">Home</a> &nbsp; <a class="qindex" href="information.html">Information</a> &nbsp; <a class="qindex" href="classes.html">Classes</a> &nbsp; <a class="qindex" href="download.html">Download</a> &nbsp; <a class="qindex" href="usage.html">Usage</a> &nbsp; <a class="qindex" href="maillist.html">Mail List</a> &nbsp; <a class="qindex" href="system.html">Requirements</a> &nbsp; <a class="qindex" href="links.html">Links</a> &nbsp; <a class="qindex" href="faq.html">FAQ</a> &nbsp; <a class="qindex" href="tutorial.html">Tutorial</a></CENTER> <a class="qindex" href="index.html">Home</a> &nbsp; <a class="qindex" href="information.html">Information</a> &nbsp; <a class="qindex" href="classes.html">Classes</a> &nbsp; <a class="qindex" href="download.html">Download</a> &nbsp; <a class="qindex" href="usage.html">Usage</a> &nbsp; <a class="qindex" href="maillist.html">Mail List</a> &nbsp; <a class="qindex" href="system.html">Requirements</a> &nbsp; <a class="qindex" href="links.html">Links</a> &nbsp; <a class="qindex" href="faq.html">FAQ</a> &nbsp; <a class="qindex" href="tutorial.html">Tutorial</a></CENTER>
<HR> <HR>
<!-- Generated by Doxygen 1.6.2 --> <!-- Generated by Doxygen 1.6.2 -->
<div class="navpath"><a class="el" href="dir_f14fd23bc74c76f288031ad23b3f3505.html">include</a> <div class="navpath"><a class="el" href="dir_221deb9bdff892d63ed1e409450a60d2.html">include</a>
</div> </div>
<div class="contents"> <div class="contents">
<h1>Saxofony.h</h1><div class="fragment"><pre class="fragment"><a name="l00001"></a>00001 <span class="preprocessor">#ifndef STK_SAXOFONY_H</span> <h1>Saxofony.h</h1><div class="fragment"><pre class="fragment"><a name="l00001"></a>00001 <span class="preprocessor">#ifndef STK_SAXOFONY_H</span>
@@ -129,7 +129,7 @@
<table> <table>
<tr><td><A HREF="http://ccrma.stanford.edu/software/stk/"><I>The Synthesis ToolKit in C++ (STK)</I></A></td></tr> <tr><td><A HREF="http://ccrma.stanford.edu/software/stk/"><I>The Synthesis ToolKit in C++ (STK)</I></A></td></tr>
<tr><td>&copy;1995-2011 Perry R. Cook and Gary P. Scavone. All Rights Reserved.</td></tr> <tr><td>&copy;1995-2012 Perry R. Cook and Gary P. Scavone. All Rights Reserved.</td></tr>
</table> </table>
</BODY> </BODY>

View File

@@ -9,116 +9,285 @@
<a class="qindex" href="index.html">Home</a> &nbsp; <a class="qindex" href="information.html">Information</a> &nbsp; <a class="qindex" href="classes.html">Classes</a> &nbsp; <a class="qindex" href="download.html">Download</a> &nbsp; <a class="qindex" href="usage.html">Usage</a> &nbsp; <a class="qindex" href="maillist.html">Mail List</a> &nbsp; <a class="qindex" href="system.html">Requirements</a> &nbsp; <a class="qindex" href="links.html">Links</a> &nbsp; <a class="qindex" href="faq.html">FAQ</a> &nbsp; <a class="qindex" href="tutorial.html">Tutorial</a></CENTER> <a class="qindex" href="index.html">Home</a> &nbsp; <a class="qindex" href="information.html">Information</a> &nbsp; <a class="qindex" href="classes.html">Classes</a> &nbsp; <a class="qindex" href="download.html">Download</a> &nbsp; <a class="qindex" href="usage.html">Usage</a> &nbsp; <a class="qindex" href="maillist.html">Mail List</a> &nbsp; <a class="qindex" href="system.html">Requirements</a> &nbsp; <a class="qindex" href="links.html">Links</a> &nbsp; <a class="qindex" href="faq.html">FAQ</a> &nbsp; <a class="qindex" href="tutorial.html">Tutorial</a></CENTER>
<HR> <HR>
<!-- Generated by Doxygen 1.6.2 --> <!-- Generated by Doxygen 1.6.2 -->
<div class="navpath"><a class="el" href="dir_f14fd23bc74c76f288031ad23b3f3505.html">include</a> <div class="navpath"><a class="el" href="dir_221deb9bdff892d63ed1e409450a60d2.html">include</a>
</div> </div>
<div class="contents"> <div class="contents">
<h1>Shakers.h</h1><div class="fragment"><pre class="fragment"><a name="l00001"></a>00001 <span class="preprocessor">#ifndef STK_SHAKERS_H</span> <h1>Shakers.h</h1><div class="fragment"><pre class="fragment"><a name="l00001"></a>00001 <span class="preprocessor">#ifndef STK_SHAKERS_H</span>
<a name="l00002"></a>00002 <span class="preprocessor"></span><span class="preprocessor">#define STK_SHAKERS_H</span> <a name="l00002"></a>00002 <span class="preprocessor"></span><span class="preprocessor">#define STK_SHAKERS_H</span>
<a name="l00003"></a>00003 <span class="preprocessor"></span> <a name="l00003"></a>00003 <span class="preprocessor"></span>
<a name="l00004"></a>00004 <span class="preprocessor">#include &quot;Instrmnt.h&quot;</span> <a name="l00004"></a>00004 <span class="preprocessor">#include &quot;Instrmnt.h&quot;</span>
<a name="l00005"></a>00005 <a name="l00005"></a>00005 <span class="preprocessor">#include &lt;cmath&gt;</span>
<a name="l00006"></a>00006 <span class="keyword">namespace </span>stk { <a name="l00006"></a>00006 <span class="preprocessor">#include &lt;stdlib.h&gt;</span>
<a name="l00007"></a>00007 <a name="l00007"></a>00007
<a name="l00008"></a>00008 <span class="comment">/***************************************************/</span> <a name="l00008"></a>00008 <span class="keyword">namespace </span>stk {
<a name="l00060"></a>00060 <span class="comment">/***************************************************/</span> <a name="l00009"></a>00009
<a name="l00061"></a>00061 <a name="l00010"></a>00010 <span class="comment">/***************************************************/</span>
<a name="l00062"></a>00062 <span class="keyword">const</span> <span class="keywordtype">int</span> MAX_FREQS = 8; <a name="l00058"></a>00058 <span class="comment">/***************************************************/</span>
<a name="l00063"></a>00063 <span class="keyword">const</span> <span class="keywordtype">int</span> NUM_INSTR = 24; <a name="l00059"></a>00059
<a name="l00064"></a>00064 <a name="l00060"></a><a class="code" href="classstk_1_1Shakers.html">00060</a> <span class="keyword">class </span><a class="code" href="classstk_1_1Shakers.html" title="PhISEM and PhOLIES class.">Shakers</a> : <span class="keyword">public</span> <a class="code" href="classstk_1_1Instrmnt.html" title="STK instrument abstract base class.">Instrmnt</a>
<a name="l00065"></a><a class="code" href="classstk_1_1Shakers.html">00065</a> <span class="keyword">class </span><a class="code" href="classstk_1_1Shakers.html" title="PhISEM and PhOLIES class.">Shakers</a> : <span class="keyword">public</span> <a class="code" href="classstk_1_1Instrmnt.html" title="STK instrument abstract base class.">Instrmnt</a> <a name="l00061"></a>00061 {
<a name="l00066"></a>00066 { <a name="l00062"></a>00062 <span class="keyword">public</span>:
<a name="l00067"></a>00067 <span class="keyword">public</span>: <a name="l00064"></a>00064 <a class="code" href="classstk_1_1Shakers.html#a0de428431174d08f6776ef141594d1b6" title="Class constructor taking instrument type argument.">Shakers</a>( <span class="keywordtype">int</span> type = 0 );
<a name="l00069"></a>00069 <a class="code" href="classstk_1_1Shakers.html#a34e4859c572a158d8fda15b7a5c6954d" title="Class constructor.">Shakers</a>( <span class="keywordtype">void</span> ); <a name="l00065"></a>00065
<a name="l00070"></a>00070 <a name="l00067"></a>00067
<a name="l00072"></a>00072 <a class="code" href="classstk_1_1Shakers.html#aa1b2ab640268da68b867de1495f19a77" title="Class destructor.">~Shakers</a>( <span class="keywordtype">void</span> ); <a name="l00071"></a>00071 <span class="keywordtype">void</span> <a class="code" href="classstk_1_1Shakers.html#a81ffb0ad1e350993af10b2795ec01861" title="Start a note with the given instrument and amplitude.">noteOn</a>( StkFloat instrument, StkFloat amplitude );
<a name="l00073"></a>00073 <a name="l00072"></a>00072
<a name="l00074"></a>00074 <span class="keywordtype">void</span> <a class="code" href="classstk_1_1Shakers.html#ab63b4b57f8306eb7cf1adbf5a5cd1d05" title="Stop a note with the given amplitude (speed of decay).">noteOff</a>( StkFloat amplitude );
<a name="l00075"></a>00075 <a name="l00075"></a>00075
<a name="l00079"></a>00079 <span class="keywordtype">void</span> <a class="code" href="classstk_1_1Shakers.html#a81ffb0ad1e350993af10b2795ec01861" title="Start a note with the given instrument and amplitude.">noteOn</a>( StkFloat instrument, StkFloat amplitude ); <a name="l00077"></a>00077 <span class="keywordtype">void</span> <a class="code" href="classstk_1_1Shakers.html#a688d9d8318e0c69779868079a7c64157" title="Perform the control change specified by number and value (0.0 - 128.0).">controlChange</a>( <span class="keywordtype">int</span> number, StkFloat value );
<a name="l00080"></a>00080 <a name="l00078"></a>00078
<a name="l00082"></a>00082 <span class="keywordtype">void</span> <a class="code" href="classstk_1_1Shakers.html#ab63b4b57f8306eb7cf1adbf5a5cd1d05" title="Stop a note with the given amplitude (speed of decay).">noteOff</a>( StkFloat amplitude ); <a name="l00080"></a>00080 StkFloat <a class="code" href="classstk_1_1Shakers.html#ae06ebba276cef74cb8c83db4e33f21c2" title="Compute and return one output sample.">tick</a>( <span class="keywordtype">unsigned</span> <span class="keywordtype">int</span> channel = 0 );
<a name="l00081"></a>00081
<a name="l00083"></a>00083 <a name="l00083"></a>00083
<a name="l00085"></a>00085 <span class="keywordtype">void</span> <a class="code" href="classstk_1_1Shakers.html#a688d9d8318e0c69779868079a7c64157" title="Perform the control change specified by number and value (0.0 - 128.0).">controlChange</a>( <span class="keywordtype">int</span> number, StkFloat value ); <a name="l00090"></a>00090 <a class="code" href="classstk_1_1StkFrames.html" title="An STK class to handle vectorized audio data.">StkFrames</a>&amp; <a class="code" href="classstk_1_1Shakers.html#ae06ebba276cef74cb8c83db4e33f21c2" title="Compute and return one output sample.">tick</a>( <a class="code" href="classstk_1_1StkFrames.html" title="An STK class to handle vectorized audio data.">StkFrames</a>&amp; frames, <span class="keywordtype">unsigned</span> <span class="keywordtype">int</span> channel = 0 );
<a name="l00086"></a>00086
<a name="l00088"></a>00088 StkFloat <a class="code" href="classstk_1_1Shakers.html#ae06ebba276cef74cb8c83db4e33f21c2" title="Compute and return one output sample.">tick</a>( <span class="keywordtype">unsigned</span> <span class="keywordtype">int</span> channel = 0 );
<a name="l00089"></a>00089
<a name="l00091"></a>00091 <a name="l00091"></a>00091
<a name="l00098"></a>00098 <a class="code" href="classstk_1_1StkFrames.html" title="An STK class to handle vectorized audio data.">StkFrames</a>&amp; <a class="code" href="classstk_1_1Shakers.html#ae06ebba276cef74cb8c83db4e33f21c2" title="Compute and return one output sample.">tick</a>( <a class="code" href="classstk_1_1StkFrames.html" title="An STK class to handle vectorized audio data.">StkFrames</a>&amp; frames, <span class="keywordtype">unsigned</span> <span class="keywordtype">int</span> channel = 0 ); <a name="l00092"></a>00092 <span class="keyword">struct </span>BiQuad {
<a name="l00099"></a>00099 <a name="l00093"></a>00093 StkFloat gain;
<a name="l00100"></a>00100 <span class="keyword">protected</span>: <a name="l00094"></a>00094 StkFloat b[3];
<a name="l00101"></a>00101 <a name="l00095"></a>00095 StkFloat a[3]; <span class="comment">// a0 term assumed equal to 1.0</span>
<a name="l00102"></a>00102 <span class="keywordtype">int</span> setupName( <span class="keywordtype">char</span>* instr ); <a name="l00096"></a>00096 StkFloat inputs[3];
<a name="l00103"></a>00103 <span class="keywordtype">int</span> setupNum( <span class="keywordtype">int</span> inst ); <a name="l00097"></a>00097 StkFloat outputs[3];
<a name="l00104"></a>00104 <span class="keywordtype">int</span> setFreqAndReson( <span class="keywordtype">int</span> which, StkFloat freq, StkFloat reson ); <a name="l00098"></a>00098
<a name="l00105"></a>00105 <span class="keywordtype">void</span> setDecays( StkFloat sndDecay, StkFloat sysDecay ); <a name="l00099"></a>00099 <span class="comment">// Default constructor.</span>
<a name="l00106"></a>00106 <span class="keywordtype">void</span> setFinalZs( StkFloat z0, StkFloat z1, StkFloat z2 ); <a name="l00100"></a>00100 BiQuad()
<a name="l00107"></a>00107 StkFloat wuter_tick( <span class="keywordtype">void</span> ); <a name="l00101"></a>00101 {
<a name="l00108"></a>00108 StkFloat tbamb_tick( <span class="keywordtype">void</span> ); <a name="l00102"></a>00102 gain = 0.0;
<a name="l00109"></a>00109 StkFloat ratchet_tick( <span class="keywordtype">void</span> ); <a name="l00103"></a>00103 <span class="keywordflow">for</span> ( <span class="keywordtype">int</span> i=0; i&lt;3; i++ ) {
<a name="l00110"></a>00110 <a name="l00104"></a>00104 b[i] = 0.0;
<a name="l00111"></a>00111 <span class="keywordtype">int</span> instType_; <a name="l00105"></a>00105 a[i] = 0.0;
<a name="l00112"></a>00112 <span class="keywordtype">int</span> ratchetPos_, lastRatchetPos_; <a name="l00106"></a>00106 inputs[i] = 0.0;
<a name="l00113"></a>00113 StkFloat shakeEnergy_; <a name="l00107"></a>00107 outputs[i] = 0.0;
<a name="l00114"></a>00114 StkFloat inputs_[MAX_FREQS]; <a name="l00108"></a>00108 }
<a name="l00115"></a>00115 StkFloat outputs_[MAX_FREQS][2]; <a name="l00109"></a>00109 }
<a name="l00116"></a>00116 StkFloat coeffs_[MAX_FREQS][2]; <a name="l00110"></a>00110 };
<a name="l00117"></a>00117 StkFloat sndLevel_; <a name="l00111"></a>00111
<a name="l00118"></a>00118 StkFloat baseGain_; <a name="l00112"></a>00112 <span class="keyword">protected</span>:
<a name="l00119"></a>00119 StkFloat gains_[MAX_FREQS]; <a name="l00113"></a>00113
<a name="l00120"></a>00120 <span class="keywordtype">int</span> nFreqs_; <a name="l00114"></a>00114 <span class="keywordtype">void</span> setType( <span class="keywordtype">int</span> type );
<a name="l00121"></a>00121 StkFloat t_center_freqs_[MAX_FREQS]; <a name="l00115"></a>00115 <span class="keywordtype">void</span> setResonance( BiQuad &amp;filter, StkFloat frequency, StkFloat radius );
<a name="l00122"></a>00122 StkFloat center_freqs_[MAX_FREQS]; <a name="l00116"></a>00116 StkFloat tickResonance( BiQuad &amp;filter, StkFloat input );
<a name="l00123"></a>00123 StkFloat resons_[MAX_FREQS]; <a name="l00117"></a>00117 <span class="keywordtype">void</span> setEqualization( StkFloat b0, StkFloat b1, StkFloat b2 );
<a name="l00124"></a>00124 StkFloat freq_rand_[MAX_FREQS]; <a name="l00118"></a>00118 StkFloat tickEqualize( StkFloat input );
<a name="l00125"></a>00125 <span class="keywordtype">int</span> freqalloc_[MAX_FREQS]; <a name="l00119"></a>00119 <span class="keywordtype">int</span> randomInt( <span class="keywordtype">int</span> max );
<a name="l00126"></a>00126 StkFloat soundDecay_; <a name="l00120"></a>00120 StkFloat randomFloat( StkFloat max = 1.0 );
<a name="l00127"></a>00127 StkFloat systemDecay_; <a name="l00121"></a>00121 StkFloat noise( <span class="keywordtype">void</span> );
<a name="l00128"></a>00128 StkFloat nObjects_; <a name="l00122"></a>00122 <span class="keywordtype">void</span> waterDrop( <span class="keywordtype">void</span> );
<a name="l00129"></a>00129 StkFloat totalEnergy_; <a name="l00123"></a>00123
<a name="l00130"></a>00130 StkFloat ratchet_, ratchetDelta_; <a name="l00124"></a>00124 <span class="keywordtype">int</span> shakerType_;
<a name="l00131"></a>00131 StkFloat finalZ_[3]; <a name="l00125"></a>00125 <span class="keywordtype">unsigned</span> <span class="keywordtype">int</span> nResonances_;
<a name="l00132"></a>00132 StkFloat finalZCoeffs_[3]; <a name="l00126"></a>00126 StkFloat shakeEnergy_;
<a name="l00133"></a>00133 StkFloat defObjs_[NUM_INSTR]; <a name="l00127"></a>00127 StkFloat soundDecay_;
<a name="l00134"></a>00134 StkFloat defDecays_[NUM_INSTR]; <a name="l00128"></a>00128 StkFloat systemDecay_;
<a name="l00135"></a>00135 StkFloat decayScale_[NUM_INSTR]; <a name="l00129"></a>00129 StkFloat nObjects_;
<a name="l00136"></a>00136 <a name="l00130"></a>00130 StkFloat sndLevel_;
<a name="l00137"></a>00137 }; <a name="l00131"></a>00131 StkFloat baseGain_;
<a name="l00138"></a>00138 <a name="l00132"></a>00132 StkFloat currentGain_;
<a name="l00139"></a><a class="code" href="classstk_1_1Shakers.html#a655713b658ddeb065d755997cac4b62e">00139</a> <span class="keyword">inline</span> <a class="code" href="classstk_1_1StkFrames.html" title="An STK class to handle vectorized audio data.">StkFrames</a>&amp; <a class="code" href="classstk_1_1Shakers.html#ae06ebba276cef74cb8c83db4e33f21c2" title="Compute and return one output sample.">Shakers :: tick</a>( <a class="code" href="classstk_1_1StkFrames.html" title="An STK class to handle vectorized audio data.">StkFrames</a>&amp; frames, <span class="keywordtype">unsigned</span> <span class="keywordtype">int</span> channel ) <a name="l00133"></a>00133 StkFloat baseDecay_;
<a name="l00140"></a>00140 { <a name="l00134"></a>00134 StkFloat baseObjects_;
<a name="l00141"></a>00141 <span class="keywordtype">unsigned</span> <span class="keywordtype">int</span> nChannels = lastFrame_.<a class="code" href="classstk_1_1StkFrames.html#aec7ef9c46675a24111aa6e2fda3ba870" title="Return the number of channels represented by the data.">channels</a>(); <a name="l00135"></a>00135 StkFloat decayScale_;
<a name="l00142"></a>00142 <span class="preprocessor">#if defined(_STK_DEBUG_)</span> <a name="l00136"></a>00136 BiQuad equalizer_;
<a name="l00143"></a>00143 <span class="preprocessor"></span> <span class="keywordflow">if</span> ( channel &gt; frames.<a class="code" href="classstk_1_1StkFrames.html#aec7ef9c46675a24111aa6e2fda3ba870" title="Return the number of channels represented by the data.">channels</a>() - nChannels ) { <a name="l00137"></a>00137 StkFloat ratchetCount_;
<a name="l00144"></a>00144 oStream_ &lt;&lt; <span class="stringliteral">&quot;Shakers::tick(): channel and StkFrames arguments are incompatible!&quot;</span>; <a name="l00138"></a>00138 StkFloat ratchetDelta_;
<a name="l00145"></a>00145 <a class="code" href="classstk_1_1Stk.html#a48ac73a0d8ca28445ba1a054e1f061ff" title="Static function for error reporting and handling using c-strings.">handleError</a>( StkError::FUNCTION_ARGUMENT ); <a name="l00139"></a>00139 StkFloat baseRatchetDelta_;
<a name="l00146"></a>00146 } <a name="l00140"></a>00140 <span class="keywordtype">int</span> lastRatchetValue_;
<a name="l00147"></a>00147 <span class="preprocessor">#endif</span> <a name="l00141"></a>00141
<a name="l00148"></a>00148 <span class="preprocessor"></span> <a name="l00142"></a>00142 std::vector&lt; BiQuad &gt; filters_;
<a name="l00149"></a>00149 StkFloat *samples = &amp;frames[channel]; <a name="l00143"></a>00143 std::vector&lt; StkFloat &gt; baseFrequencies_;
<a name="l00150"></a>00150 <span class="keywordtype">unsigned</span> <span class="keywordtype">int</span> j, hop = frames.<a class="code" href="classstk_1_1StkFrames.html#aec7ef9c46675a24111aa6e2fda3ba870" title="Return the number of channels represented by the data.">channels</a>() - nChannels; <a name="l00144"></a>00144 std::vector&lt; StkFloat &gt; baseRadii_;
<a name="l00151"></a>00151 <span class="keywordflow">if</span> ( nChannels == 1 ) { <a name="l00145"></a>00145 std::vector&lt; bool &gt; doVaryFrequency_;
<a name="l00152"></a>00152 <span class="keywordflow">for</span> ( <span class="keywordtype">unsigned</span> <span class="keywordtype">int</span> i=0; i&lt;frames.<a class="code" href="classstk_1_1StkFrames.html#a05b1ab6fa750a8221a7d65c30e0cdab9" title="Return the number of sample frames represented by the data.">frames</a>(); i++, samples += hop ) <a name="l00146"></a>00146 std::vector&lt; StkFloat &gt; tempFrequencies_;
<a name="l00153"></a>00153 *samples++ = <a class="code" href="classstk_1_1Shakers.html#ae06ebba276cef74cb8c83db4e33f21c2" title="Compute and return one output sample.">tick</a>(); <a name="l00147"></a>00147 StkFloat varyFactor_;
<a name="l00154"></a>00154 } <a name="l00148"></a>00148 };
<a name="l00155"></a>00155 <span class="keywordflow">else</span> { <a name="l00149"></a>00149
<a name="l00156"></a>00156 <span class="keywordflow">for</span> ( <span class="keywordtype">unsigned</span> <span class="keywordtype">int</span> i=0; i&lt;frames.<a class="code" href="classstk_1_1StkFrames.html#a05b1ab6fa750a8221a7d65c30e0cdab9" title="Return the number of sample frames represented by the data.">frames</a>(); i++, samples += hop ) { <a name="l00150"></a>00150 <span class="keyword">inline</span> <span class="keywordtype">void</span> Shakers :: setResonance( <a class="code" href="classstk_1_1BiQuad.html" title="STK biquad (two-pole, two-zero) filter class.">BiQuad</a> &amp;filter, StkFloat frequency, StkFloat radius )
<a name="l00157"></a>00157 *samples++ = <a class="code" href="classstk_1_1Shakers.html#ae06ebba276cef74cb8c83db4e33f21c2" title="Compute and return one output sample.">tick</a>(); <a name="l00151"></a>00151 {
<a name="l00158"></a>00158 <span class="keywordflow">for</span> ( j=1; j&lt;nChannels; j++ ) <a name="l00152"></a>00152 filter.a[1] = -2.0 * radius * cos( TWO_PI * frequency / <a class="code" href="classstk_1_1Stk.html#a5fbe37000a611ce56075ee7d8936472d" title="Static method that returns the current STK sample rate.">Stk::sampleRate</a>());
<a name="l00159"></a>00159 *samples++ = lastFrame_[j]; <a name="l00153"></a>00153 filter.a[2] = radius * radius;
<a name="l00160"></a>00160 } <a name="l00154"></a>00154 }
<a name="l00161"></a>00161 } <a name="l00155"></a>00155
<a name="l00162"></a>00162 <a name="l00156"></a>00156 <span class="keyword">inline</span> StkFloat Shakers :: tickResonance( BiQuad &amp;filter, StkFloat input )
<a name="l00163"></a>00163 <span class="keywordflow">return</span> frames; <a name="l00157"></a>00157 {
<a name="l00164"></a>00164 } <a name="l00158"></a>00158 filter.outputs[0] = input * filter.gain * currentGain_;
<a name="l00165"></a>00165 <a name="l00159"></a>00159 filter.outputs[0] -= filter.a[1] * filter.outputs[1] + filter.a[2] * filter.outputs[2];
<a name="l00166"></a>00166 } <span class="comment">// stk namespace</span> <a name="l00160"></a>00160 filter.outputs[2] = filter.outputs[1];
<a name="l00167"></a>00167 <a name="l00161"></a>00161 filter.outputs[1] = filter.outputs[0];
<a name="l00168"></a>00168 <span class="preprocessor">#endif</span> <a name="l00162"></a>00162 <span class="keywordflow">return</span> filter.outputs[0];
<a name="l00163"></a>00163 }
<a name="l00164"></a>00164
<a name="l00165"></a>00165 <span class="keyword">inline</span> <span class="keywordtype">void</span> Shakers :: setEqualization( StkFloat b0, StkFloat b1, StkFloat b2 )
<a name="l00166"></a>00166 {
<a name="l00167"></a>00167 equalizer_.b[0] = b0;
<a name="l00168"></a>00168 equalizer_.b[1] = b1;
<a name="l00169"></a>00169 equalizer_.b[2] = b2;
<a name="l00170"></a>00170 }
<a name="l00171"></a>00171
<a name="l00172"></a>00172 <span class="keyword">inline</span> StkFloat Shakers :: tickEqualize( StkFloat input )
<a name="l00173"></a>00173 {
<a name="l00174"></a>00174 equalizer_.inputs[0] = input;
<a name="l00175"></a>00175 equalizer_.outputs[0] = equalizer_.b[0] * equalizer_.inputs[0] + equalizer_.b[1] * equalizer_.inputs[1] + equalizer_.b[2] * equalizer_.inputs[2];
<a name="l00176"></a>00176 equalizer_.inputs[2] = equalizer_.inputs[1];
<a name="l00177"></a>00177 equalizer_.inputs[1] = equalizer_.inputs[0];
<a name="l00178"></a>00178 <span class="keywordflow">return</span> equalizer_.outputs[0];
<a name="l00179"></a>00179 }
<a name="l00180"></a>00180
<a name="l00181"></a>00181 <span class="keyword">inline</span> <span class="keywordtype">int</span> Shakers :: randomInt( <span class="keywordtype">int</span> max ) <span class="comment">// Return random integer between 0 and max-1</span>
<a name="l00182"></a>00182 {
<a name="l00183"></a>00183 <span class="keywordflow">return</span> (<span class="keywordtype">int</span>) ((float)max * rand() / (RAND_MAX + 1.0) );
<a name="l00184"></a>00184 }
<a name="l00185"></a>00185
<a name="l00186"></a>00186 <span class="keyword">inline</span> StkFloat Shakers :: randomFloat( StkFloat max ) <span class="comment">// Return random float between 0.0 and max</span>
<a name="l00187"></a>00187 {
<a name="l00188"></a>00188 <span class="keywordflow">return</span> (StkFloat) (max * rand() / (RAND_MAX + 1.0) );
<a name="l00189"></a>00189 }
<a name="l00190"></a>00190
<a name="l00191"></a>00191 <span class="keyword">inline</span> StkFloat Shakers :: noise( <span class="keywordtype">void</span> ) <span class="comment">// Return random StkFloat float between -1.0 and 1.0</span>
<a name="l00192"></a>00192 {
<a name="l00193"></a>00193 <span class="keywordflow">return</span> ( (StkFloat) ( 2.0 * rand() / (RAND_MAX + 1.0) ) - 1.0 );
<a name="l00194"></a>00194 }
<a name="l00195"></a>00195
<a name="l00196"></a>00196 <span class="keyword">const</span> StkFloat MIN_ENERGY = 0.001;
<a name="l00197"></a>00197 <span class="keyword">const</span> StkFloat WATER_FREQ_SWEEP = 1.0001;
<a name="l00198"></a>00198
<a name="l00199"></a>00199 <span class="keyword">inline</span> <span class="keywordtype">void</span> Shakers :: waterDrop( <span class="keywordtype">void</span> )
<a name="l00200"></a>00200 {
<a name="l00201"></a>00201 <span class="keywordflow">if</span> ( randomInt( 32767 ) &lt; nObjects_) {
<a name="l00202"></a>00202 sndLevel_ = shakeEnergy_;
<a name="l00203"></a>00203 <span class="keywordtype">unsigned</span> <span class="keywordtype">int</span> j = randomInt( 3 );
<a name="l00204"></a>00204 <span class="keywordflow">if</span> ( j == 0 &amp;&amp; filters_[0].gain == 0.0 ) { <span class="comment">// don&#39;t change unless fully decayed</span>
<a name="l00205"></a>00205 tempFrequencies_[0] = baseFrequencies_[1] * (0.75 + (0.25 * noise()));
<a name="l00206"></a>00206 filters_[0].gain = fabs( noise() );
<a name="l00207"></a>00207 }
<a name="l00208"></a>00208 <span class="keywordflow">else</span> <span class="keywordflow">if</span> (j == 1 &amp;&amp; filters_[1].gain == 0.0) {
<a name="l00209"></a>00209 tempFrequencies_[1] = baseFrequencies_[1] * (1.0 + (0.25 * noise()));
<a name="l00210"></a>00210 filters_[1].gain = fabs( noise() );
<a name="l00211"></a>00211 }
<a name="l00212"></a>00212 <span class="keywordflow">else</span> <span class="keywordflow">if</span> ( filters_[2].gain == 0.0 ) {
<a name="l00213"></a>00213 tempFrequencies_[2] = baseFrequencies_[1] * (1.25 + (0.25 * noise()));
<a name="l00214"></a>00214 filters_[2].gain = fabs( noise() );
<a name="l00215"></a>00215 }
<a name="l00216"></a>00216 }
<a name="l00217"></a>00217
<a name="l00218"></a>00218 <span class="comment">// Sweep center frequencies.</span>
<a name="l00219"></a>00219 <span class="keywordflow">for</span> ( <span class="keywordtype">unsigned</span> <span class="keywordtype">int</span> i=0; i&lt;3; i++ ) { <span class="comment">// WATER_RESONANCES = 3</span>
<a name="l00220"></a>00220 filters_[i].gain *= baseRadii_[i];
<a name="l00221"></a>00221 <span class="keywordflow">if</span> ( filters_[i].gain &gt; 0.001 ) {
<a name="l00222"></a>00222 tempFrequencies_[i] *= WATER_FREQ_SWEEP;
<a name="l00223"></a>00223 filters_[i].a[1] = -2.0 * baseRadii_[i] * cos( TWO_PI * tempFrequencies_[i] / <a class="code" href="classstk_1_1Stk.html#a5fbe37000a611ce56075ee7d8936472d" title="Static method that returns the current STK sample rate.">Stk::sampleRate</a>() );
<a name="l00224"></a>00224 }
<a name="l00225"></a>00225 <span class="keywordflow">else</span>
<a name="l00226"></a>00226 filters_[i].gain = 0.0;
<a name="l00227"></a>00227 }
<a name="l00228"></a>00228 }
<a name="l00229"></a>00229
<a name="l00230"></a><a class="code" href="classstk_1_1Shakers.html#ae06ebba276cef74cb8c83db4e33f21c2">00230</a> <span class="keyword">inline</span> StkFloat <a class="code" href="classstk_1_1Shakers.html#ae06ebba276cef74cb8c83db4e33f21c2" title="Compute and return one output sample.">Shakers :: tick</a>( <span class="keywordtype">unsigned</span> <span class="keywordtype">int</span> )
<a name="l00231"></a>00231 {
<a name="l00232"></a>00232 <span class="keywordtype">unsigned</span> <span class="keywordtype">int</span> iTube = 0;
<a name="l00233"></a>00233 StkFloat input = 0.0;
<a name="l00234"></a>00234 <span class="keywordflow">if</span> ( shakerType_ == 19 || shakerType_ == 20 ) {
<a name="l00235"></a>00235 <span class="keywordflow">if</span> ( ratchetCount_ &lt;= 0 ) <span class="keywordflow">return</span> lastFrame_[0] = 0.0;
<a name="l00236"></a>00236
<a name="l00237"></a>00237 shakeEnergy_ -= ( ratchetDelta_ + ( 0.002 * shakeEnergy_ ) );
<a name="l00238"></a>00238 <span class="keywordflow">if</span> ( shakeEnergy_ &lt; 0.0 ) {
<a name="l00239"></a>00239 shakeEnergy_ = 1.0;
<a name="l00240"></a>00240 ratchetCount_--;
<a name="l00241"></a>00241 }
<a name="l00242"></a>00242
<a name="l00243"></a>00243 <span class="keywordflow">if</span> ( randomFloat( 1024 ) &lt; nObjects_ )
<a name="l00244"></a>00244 sndLevel_ += shakeEnergy_ * shakeEnergy_;
<a name="l00245"></a>00245
<a name="l00246"></a>00246 <span class="comment">// Sound is enveloped noise</span>
<a name="l00247"></a>00247 input = sndLevel_ * noise() * shakeEnergy_;
<a name="l00248"></a>00248 }
<a name="l00249"></a>00249 <span class="keywordflow">else</span> {
<a name="l00250"></a>00250 <span class="keywordflow">if</span> ( shakeEnergy_ &lt; MIN_ENERGY ) <span class="keywordflow">return</span> lastFrame_[0] = 0.0;
<a name="l00251"></a>00251
<a name="l00252"></a>00252 <span class="comment">// Exponential system decay</span>
<a name="l00253"></a>00253 shakeEnergy_ *= systemDecay_;
<a name="l00254"></a>00254
<a name="l00255"></a>00255 <span class="comment">// Random events</span>
<a name="l00256"></a>00256 <span class="keywordflow">if</span> ( shakerType_ == 21 ) {
<a name="l00257"></a>00257 waterDrop();
<a name="l00258"></a>00258 input = sndLevel_;
<a name="l00259"></a>00259 }
<a name="l00260"></a>00260 <span class="keywordflow">else</span> {
<a name="l00261"></a>00261 <span class="keywordflow">if</span> ( randomFloat( 1024.0 ) &lt; nObjects_ ) {
<a name="l00262"></a>00262 sndLevel_ += shakeEnergy_;
<a name="l00263"></a>00263 input = sndLevel_;
<a name="l00264"></a>00264 <span class="comment">// Vary resonance frequencies if specified.</span>
<a name="l00265"></a>00265 <span class="keywordflow">for</span> ( <span class="keywordtype">unsigned</span> <span class="keywordtype">int</span> i=0; i&lt;nResonances_; i++ ) {
<a name="l00266"></a>00266 <span class="keywordflow">if</span> ( doVaryFrequency_[i] ) {
<a name="l00267"></a>00267 StkFloat tempRand = baseFrequencies_[i] * ( 1.0 + ( varyFactor_ * noise() ) );
<a name="l00268"></a>00268 filters_[i].a[1] = -2.0 * baseRadii_[i] * cos( TWO_PI * tempRand / <a class="code" href="classstk_1_1Stk.html#a5fbe37000a611ce56075ee7d8936472d" title="Static method that returns the current STK sample rate.">Stk::sampleRate</a>() );
<a name="l00269"></a>00269 }
<a name="l00270"></a>00270 }
<a name="l00271"></a>00271 <span class="keywordflow">if</span> ( shakerType_ == 22 ) iTube = randomInt( 7 ); <span class="comment">// ANGKLUNG_RESONANCES</span>
<a name="l00272"></a>00272 }
<a name="l00273"></a>00273 }
<a name="l00274"></a>00274 }
<a name="l00275"></a>00275
<a name="l00276"></a>00276 <span class="comment">// Exponential sound decay</span>
<a name="l00277"></a>00277 sndLevel_ *= soundDecay_;
<a name="l00278"></a>00278
<a name="l00279"></a>00279 <span class="comment">// Do resonance filtering</span>
<a name="l00280"></a>00280 lastFrame_[0] = 0.0;
<a name="l00281"></a>00281 <span class="keywordflow">if</span> ( shakerType_ == 22 ) {
<a name="l00282"></a>00282 <span class="keywordflow">for</span> ( <span class="keywordtype">unsigned</span> <span class="keywordtype">int</span> i=0; i&lt;nResonances_; i++ ) {
<a name="l00283"></a>00283 <span class="keywordflow">if</span> ( i == iTube )
<a name="l00284"></a>00284 lastFrame_[0] += tickResonance( filters_[i], input );
<a name="l00285"></a>00285 <span class="keywordflow">else</span>
<a name="l00286"></a>00286 lastFrame_[0] += tickResonance( filters_[i], 0.0 );
<a name="l00287"></a>00287 }
<a name="l00288"></a>00288 }
<a name="l00289"></a>00289 <span class="keywordflow">else</span> {
<a name="l00290"></a>00290 <span class="keywordflow">for</span> ( <span class="keywordtype">unsigned</span> <span class="keywordtype">int</span> i=0; i&lt;nResonances_; i++ )
<a name="l00291"></a>00291 lastFrame_[0] += tickResonance( filters_[i], input );
<a name="l00292"></a>00292 }
<a name="l00293"></a>00293
<a name="l00294"></a>00294 <span class="comment">// Do final FIR filtering (lowpass or highpass)</span>
<a name="l00295"></a>00295 lastFrame_[0] = tickEqualize( lastFrame_[0] );
<a name="l00296"></a>00296
<a name="l00297"></a>00297 <span class="comment">//if ( std::abs(lastFrame_[0]) &gt; 1.0 )</span>
<a name="l00298"></a>00298 <span class="comment">// std::cout &lt;&lt; &quot;lastOutput = &quot; &lt;&lt; lastFrame_[0] &lt;&lt; std::endl;</span>
<a name="l00299"></a>00299
<a name="l00300"></a>00300 <span class="keywordflow">return</span> lastFrame_[0];
<a name="l00301"></a>00301 }
<a name="l00302"></a>00302
<a name="l00303"></a><a class="code" href="classstk_1_1Shakers.html#a655713b658ddeb065d755997cac4b62e">00303</a> <span class="keyword">inline</span> <a class="code" href="classstk_1_1StkFrames.html" title="An STK class to handle vectorized audio data.">StkFrames</a>&amp; <a class="code" href="classstk_1_1Shakers.html#ae06ebba276cef74cb8c83db4e33f21c2" title="Compute and return one output sample.">Shakers :: tick</a>( <a class="code" href="classstk_1_1StkFrames.html" title="An STK class to handle vectorized audio data.">StkFrames</a>&amp; frames, <span class="keywordtype">unsigned</span> <span class="keywordtype">int</span> channel )
<a name="l00304"></a>00304 {
<a name="l00305"></a>00305 <span class="keywordtype">unsigned</span> <span class="keywordtype">int</span> nChannels = lastFrame_.<a class="code" href="classstk_1_1StkFrames.html#aec7ef9c46675a24111aa6e2fda3ba870" title="Return the number of channels represented by the data.">channels</a>();
<a name="l00306"></a>00306 <span class="preprocessor">#if defined(_STK_DEBUG_)</span>
<a name="l00307"></a>00307 <span class="preprocessor"></span> <span class="keywordflow">if</span> ( channel &gt; frames.<a class="code" href="classstk_1_1StkFrames.html#aec7ef9c46675a24111aa6e2fda3ba870" title="Return the number of channels represented by the data.">channels</a>() - nChannels ) {
<a name="l00308"></a>00308 oStream_ &lt;&lt; <span class="stringliteral">&quot;Shakers::tick(): channel and StkFrames arguments are incompatible!&quot;</span>;
<a name="l00309"></a>00309 <a class="code" href="classstk_1_1Stk.html#a48ac73a0d8ca28445ba1a054e1f061ff" title="Static function for error reporting and handling using c-strings.">handleError</a>( StkError::FUNCTION_ARGUMENT );
<a name="l00310"></a>00310 }
<a name="l00311"></a>00311 <span class="preprocessor">#endif</span>
<a name="l00312"></a>00312 <span class="preprocessor"></span>
<a name="l00313"></a>00313 StkFloat *samples = &amp;frames[channel];
<a name="l00314"></a>00314 <span class="keywordtype">unsigned</span> <span class="keywordtype">int</span> j, hop = frames.<a class="code" href="classstk_1_1StkFrames.html#aec7ef9c46675a24111aa6e2fda3ba870" title="Return the number of channels represented by the data.">channels</a>() - nChannels;
<a name="l00315"></a>00315 <span class="keywordflow">if</span> ( nChannels == 1 ) {
<a name="l00316"></a>00316 <span class="keywordflow">for</span> ( <span class="keywordtype">unsigned</span> <span class="keywordtype">int</span> i=0; i&lt;frames.<a class="code" href="classstk_1_1StkFrames.html#a05b1ab6fa750a8221a7d65c30e0cdab9" title="Return the number of sample frames represented by the data.">frames</a>(); i++, samples += hop )
<a name="l00317"></a>00317 *samples++ = <a class="code" href="classstk_1_1Shakers.html#ae06ebba276cef74cb8c83db4e33f21c2" title="Compute and return one output sample.">tick</a>();
<a name="l00318"></a>00318 }
<a name="l00319"></a>00319 <span class="keywordflow">else</span> {
<a name="l00320"></a>00320 <span class="keywordflow">for</span> ( <span class="keywordtype">unsigned</span> <span class="keywordtype">int</span> i=0; i&lt;frames.<a class="code" href="classstk_1_1StkFrames.html#a05b1ab6fa750a8221a7d65c30e0cdab9" title="Return the number of sample frames represented by the data.">frames</a>(); i++, samples += hop ) {
<a name="l00321"></a>00321 *samples++ = <a class="code" href="classstk_1_1Shakers.html#ae06ebba276cef74cb8c83db4e33f21c2" title="Compute and return one output sample.">tick</a>();
<a name="l00322"></a>00322 <span class="keywordflow">for</span> ( j=1; j&lt;nChannels; j++ )
<a name="l00323"></a>00323 *samples++ = lastFrame_[j];
<a name="l00324"></a>00324 }
<a name="l00325"></a>00325 }
<a name="l00326"></a>00326
<a name="l00327"></a>00327 <span class="keywordflow">return</span> frames;
<a name="l00328"></a>00328 }
<a name="l00329"></a>00329
<a name="l00330"></a>00330 } <span class="comment">// stk namespace</span>
<a name="l00331"></a>00331
<a name="l00332"></a>00332 <span class="preprocessor">#endif</span>
</pre></div></div> </pre></div></div>
<HR> <HR>
<table> <table>
<tr><td><A HREF="http://ccrma.stanford.edu/software/stk/"><I>The Synthesis ToolKit in C++ (STK)</I></A></td></tr> <tr><td><A HREF="http://ccrma.stanford.edu/software/stk/"><I>The Synthesis ToolKit in C++ (STK)</I></A></td></tr>
<tr><td>&copy;1995-2011 Perry R. Cook and Gary P. Scavone. All Rights Reserved.</td></tr> <tr><td>&copy;1995-2012 Perry R. Cook and Gary P. Scavone. All Rights Reserved.</td></tr>
</table> </table>
</BODY> </BODY>

View File

@@ -9,7 +9,7 @@
<a class="qindex" href="index.html">Home</a> &nbsp; <a class="qindex" href="information.html">Information</a> &nbsp; <a class="qindex" href="classes.html">Classes</a> &nbsp; <a class="qindex" href="download.html">Download</a> &nbsp; <a class="qindex" href="usage.html">Usage</a> &nbsp; <a class="qindex" href="maillist.html">Mail List</a> &nbsp; <a class="qindex" href="system.html">Requirements</a> &nbsp; <a class="qindex" href="links.html">Links</a> &nbsp; <a class="qindex" href="faq.html">FAQ</a> &nbsp; <a class="qindex" href="tutorial.html">Tutorial</a></CENTER> <a class="qindex" href="index.html">Home</a> &nbsp; <a class="qindex" href="information.html">Information</a> &nbsp; <a class="qindex" href="classes.html">Classes</a> &nbsp; <a class="qindex" href="download.html">Download</a> &nbsp; <a class="qindex" href="usage.html">Usage</a> &nbsp; <a class="qindex" href="maillist.html">Mail List</a> &nbsp; <a class="qindex" href="system.html">Requirements</a> &nbsp; <a class="qindex" href="links.html">Links</a> &nbsp; <a class="qindex" href="faq.html">FAQ</a> &nbsp; <a class="qindex" href="tutorial.html">Tutorial</a></CENTER>
<HR> <HR>
<!-- Generated by Doxygen 1.6.2 --> <!-- Generated by Doxygen 1.6.2 -->
<div class="navpath"><a class="el" href="dir_f14fd23bc74c76f288031ad23b3f3505.html">include</a> <div class="navpath"><a class="el" href="dir_221deb9bdff892d63ed1e409450a60d2.html">include</a>
</div> </div>
<div class="contents"> <div class="contents">
<h1>Simple.h</h1><div class="fragment"><pre class="fragment"><a name="l00001"></a>00001 <span class="preprocessor">#ifndef STK_SIMPLE_H</span> <h1>Simple.h</h1><div class="fragment"><pre class="fragment"><a name="l00001"></a>00001 <span class="preprocessor">#ifndef STK_SIMPLE_H</span>
@@ -111,7 +111,7 @@
<table> <table>
<tr><td><A HREF="http://ccrma.stanford.edu/software/stk/"><I>The Synthesis ToolKit in C++ (STK)</I></A></td></tr> <tr><td><A HREF="http://ccrma.stanford.edu/software/stk/"><I>The Synthesis ToolKit in C++ (STK)</I></A></td></tr>
<tr><td>&copy;1995-2011 Perry R. Cook and Gary P. Scavone. All Rights Reserved.</td></tr> <tr><td>&copy;1995-2012 Perry R. Cook and Gary P. Scavone. All Rights Reserved.</td></tr>
</table> </table>
</BODY> </BODY>

View File

@@ -9,7 +9,7 @@
<a class="qindex" href="index.html">Home</a> &nbsp; <a class="qindex" href="information.html">Information</a> &nbsp; <a class="qindex" href="classes.html">Classes</a> &nbsp; <a class="qindex" href="download.html">Download</a> &nbsp; <a class="qindex" href="usage.html">Usage</a> &nbsp; <a class="qindex" href="maillist.html">Mail List</a> &nbsp; <a class="qindex" href="system.html">Requirements</a> &nbsp; <a class="qindex" href="links.html">Links</a> &nbsp; <a class="qindex" href="faq.html">FAQ</a> &nbsp; <a class="qindex" href="tutorial.html">Tutorial</a></CENTER> <a class="qindex" href="index.html">Home</a> &nbsp; <a class="qindex" href="information.html">Information</a> &nbsp; <a class="qindex" href="classes.html">Classes</a> &nbsp; <a class="qindex" href="download.html">Download</a> &nbsp; <a class="qindex" href="usage.html">Usage</a> &nbsp; <a class="qindex" href="maillist.html">Mail List</a> &nbsp; <a class="qindex" href="system.html">Requirements</a> &nbsp; <a class="qindex" href="links.html">Links</a> &nbsp; <a class="qindex" href="faq.html">FAQ</a> &nbsp; <a class="qindex" href="tutorial.html">Tutorial</a></CENTER>
<HR> <HR>
<!-- Generated by Doxygen 1.6.2 --> <!-- Generated by Doxygen 1.6.2 -->
<div class="navpath"><a class="el" href="dir_f14fd23bc74c76f288031ad23b3f3505.html">include</a> <div class="navpath"><a class="el" href="dir_221deb9bdff892d63ed1e409450a60d2.html">include</a>
</div> </div>
<div class="contents"> <div class="contents">
<h1>SineWave.h</h1><div class="fragment"><pre class="fragment"><a name="l00001"></a>00001 <span class="preprocessor">#ifndef STK_SINEWAVE_H</span> <h1>SineWave.h</h1><div class="fragment"><pre class="fragment"><a name="l00001"></a>00001 <span class="preprocessor">#ifndef STK_SINEWAVE_H</span>
@@ -133,7 +133,7 @@
<table> <table>
<tr><td><A HREF="http://ccrma.stanford.edu/software/stk/"><I>The Synthesis ToolKit in C++ (STK)</I></A></td></tr> <tr><td><A HREF="http://ccrma.stanford.edu/software/stk/"><I>The Synthesis ToolKit in C++ (STK)</I></A></td></tr>
<tr><td>&copy;1995-2011 Perry R. Cook and Gary P. Scavone. All Rights Reserved.</td></tr> <tr><td>&copy;1995-2012 Perry R. Cook and Gary P. Scavone. All Rights Reserved.</td></tr>
</table> </table>
</BODY> </BODY>

View File

@@ -9,7 +9,7 @@
<a class="qindex" href="index.html">Home</a> &nbsp; <a class="qindex" href="information.html">Information</a> &nbsp; <a class="qindex" href="classes.html">Classes</a> &nbsp; <a class="qindex" href="download.html">Download</a> &nbsp; <a class="qindex" href="usage.html">Usage</a> &nbsp; <a class="qindex" href="maillist.html">Mail List</a> &nbsp; <a class="qindex" href="system.html">Requirements</a> &nbsp; <a class="qindex" href="links.html">Links</a> &nbsp; <a class="qindex" href="faq.html">FAQ</a> &nbsp; <a class="qindex" href="tutorial.html">Tutorial</a></CENTER> <a class="qindex" href="index.html">Home</a> &nbsp; <a class="qindex" href="information.html">Information</a> &nbsp; <a class="qindex" href="classes.html">Classes</a> &nbsp; <a class="qindex" href="download.html">Download</a> &nbsp; <a class="qindex" href="usage.html">Usage</a> &nbsp; <a class="qindex" href="maillist.html">Mail List</a> &nbsp; <a class="qindex" href="system.html">Requirements</a> &nbsp; <a class="qindex" href="links.html">Links</a> &nbsp; <a class="qindex" href="faq.html">FAQ</a> &nbsp; <a class="qindex" href="tutorial.html">Tutorial</a></CENTER>
<HR> <HR>
<!-- Generated by Doxygen 1.6.2 --> <!-- Generated by Doxygen 1.6.2 -->
<div class="navpath"><a class="el" href="dir_f14fd23bc74c76f288031ad23b3f3505.html">include</a> <div class="navpath"><a class="el" href="dir_221deb9bdff892d63ed1e409450a60d2.html">include</a>
</div> </div>
<div class="contents"> <div class="contents">
<h1>SingWave.h</h1><div class="fragment"><pre class="fragment"><a name="l00001"></a>00001 <span class="preprocessor">#ifndef STK_SINGWAVE_H</span> <h1>SingWave.h</h1><div class="fragment"><pre class="fragment"><a name="l00001"></a>00001 <span class="preprocessor">#ifndef STK_SINGWAVE_H</span>
@@ -112,7 +112,7 @@
<table> <table>
<tr><td><A HREF="http://ccrma.stanford.edu/software/stk/"><I>The Synthesis ToolKit in C++ (STK)</I></A></td></tr> <tr><td><A HREF="http://ccrma.stanford.edu/software/stk/"><I>The Synthesis ToolKit in C++ (STK)</I></A></td></tr>
<tr><td>&copy;1995-2011 Perry R. Cook and Gary P. Scavone. All Rights Reserved.</td></tr> <tr><td>&copy;1995-2012 Perry R. Cook and Gary P. Scavone. All Rights Reserved.</td></tr>
</table> </table>
</BODY> </BODY>

View File

@@ -9,7 +9,7 @@
<a class="qindex" href="index.html">Home</a> &nbsp; <a class="qindex" href="information.html">Information</a> &nbsp; <a class="qindex" href="classes.html">Classes</a> &nbsp; <a class="qindex" href="download.html">Download</a> &nbsp; <a class="qindex" href="usage.html">Usage</a> &nbsp; <a class="qindex" href="maillist.html">Mail List</a> &nbsp; <a class="qindex" href="system.html">Requirements</a> &nbsp; <a class="qindex" href="links.html">Links</a> &nbsp; <a class="qindex" href="faq.html">FAQ</a> &nbsp; <a class="qindex" href="tutorial.html">Tutorial</a></CENTER> <a class="qindex" href="index.html">Home</a> &nbsp; <a class="qindex" href="information.html">Information</a> &nbsp; <a class="qindex" href="classes.html">Classes</a> &nbsp; <a class="qindex" href="download.html">Download</a> &nbsp; <a class="qindex" href="usage.html">Usage</a> &nbsp; <a class="qindex" href="maillist.html">Mail List</a> &nbsp; <a class="qindex" href="system.html">Requirements</a> &nbsp; <a class="qindex" href="links.html">Links</a> &nbsp; <a class="qindex" href="faq.html">FAQ</a> &nbsp; <a class="qindex" href="tutorial.html">Tutorial</a></CENTER>
<HR> <HR>
<!-- Generated by Doxygen 1.6.2 --> <!-- Generated by Doxygen 1.6.2 -->
<div class="navpath"><a class="el" href="dir_f14fd23bc74c76f288031ad23b3f3505.html">include</a> <div class="navpath"><a class="el" href="dir_221deb9bdff892d63ed1e409450a60d2.html">include</a>
</div> </div>
<div class="contents"> <div class="contents">
<h1>Sitar.h</h1><div class="fragment"><pre class="fragment"><a name="l00001"></a>00001 <span class="preprocessor">#ifndef STK_SITAR_H</span> <h1>Sitar.h</h1><div class="fragment"><pre class="fragment"><a name="l00001"></a>00001 <span class="preprocessor">#ifndef STK_SITAR_H</span>
@@ -115,7 +115,7 @@
<table> <table>
<tr><td><A HREF="http://ccrma.stanford.edu/software/stk/"><I>The Synthesis ToolKit in C++ (STK)</I></A></td></tr> <tr><td><A HREF="http://ccrma.stanford.edu/software/stk/"><I>The Synthesis ToolKit in C++ (STK)</I></A></td></tr>
<tr><td>&copy;1995-2011 Perry R. Cook and Gary P. Scavone. All Rights Reserved.</td></tr> <tr><td>&copy;1995-2012 Perry R. Cook and Gary P. Scavone. All Rights Reserved.</td></tr>
</table> </table>
</BODY> </BODY>

View File

@@ -9,7 +9,7 @@
<a class="qindex" href="index.html">Home</a> &nbsp; <a class="qindex" href="information.html">Information</a> &nbsp; <a class="qindex" href="classes.html">Classes</a> &nbsp; <a class="qindex" href="download.html">Download</a> &nbsp; <a class="qindex" href="usage.html">Usage</a> &nbsp; <a class="qindex" href="maillist.html">Mail List</a> &nbsp; <a class="qindex" href="system.html">Requirements</a> &nbsp; <a class="qindex" href="links.html">Links</a> &nbsp; <a class="qindex" href="faq.html">FAQ</a> &nbsp; <a class="qindex" href="tutorial.html">Tutorial</a></CENTER> <a class="qindex" href="index.html">Home</a> &nbsp; <a class="qindex" href="information.html">Information</a> &nbsp; <a class="qindex" href="classes.html">Classes</a> &nbsp; <a class="qindex" href="download.html">Download</a> &nbsp; <a class="qindex" href="usage.html">Usage</a> &nbsp; <a class="qindex" href="maillist.html">Mail List</a> &nbsp; <a class="qindex" href="system.html">Requirements</a> &nbsp; <a class="qindex" href="links.html">Links</a> &nbsp; <a class="qindex" href="faq.html">FAQ</a> &nbsp; <a class="qindex" href="tutorial.html">Tutorial</a></CENTER>
<HR> <HR>
<!-- Generated by Doxygen 1.6.2 --> <!-- Generated by Doxygen 1.6.2 -->
<div class="navpath"><a class="el" href="dir_f14fd23bc74c76f288031ad23b3f3505.html">include</a> <div class="navpath"><a class="el" href="dir_221deb9bdff892d63ed1e409450a60d2.html">include</a>
</div> </div>
<div class="contents"> <div class="contents">
<h1>Skini.h</h1><div class="fragment"><pre class="fragment"><a name="l00001"></a>00001 <span class="preprocessor">#ifndef STK_SKINI_H</span> <h1>Skini.h</h1><div class="fragment"><pre class="fragment"><a name="l00001"></a>00001 <span class="preprocessor">#ifndef STK_SKINI_H</span>
@@ -94,7 +94,7 @@
<table> <table>
<tr><td><A HREF="http://ccrma.stanford.edu/software/stk/"><I>The Synthesis ToolKit in C++ (STK)</I></A></td></tr> <tr><td><A HREF="http://ccrma.stanford.edu/software/stk/"><I>The Synthesis ToolKit in C++ (STK)</I></A></td></tr>
<tr><td>&copy;1995-2011 Perry R. Cook and Gary P. Scavone. All Rights Reserved.</td></tr> <tr><td>&copy;1995-2012 Perry R. Cook and Gary P. Scavone. All Rights Reserved.</td></tr>
</table> </table>
</BODY> </BODY>

View File

@@ -9,7 +9,7 @@
<a class="qindex" href="index.html">Home</a> &nbsp; <a class="qindex" href="information.html">Information</a> &nbsp; <a class="qindex" href="classes.html">Classes</a> &nbsp; <a class="qindex" href="download.html">Download</a> &nbsp; <a class="qindex" href="usage.html">Usage</a> &nbsp; <a class="qindex" href="maillist.html">Mail List</a> &nbsp; <a class="qindex" href="system.html">Requirements</a> &nbsp; <a class="qindex" href="links.html">Links</a> &nbsp; <a class="qindex" href="faq.html">FAQ</a> &nbsp; <a class="qindex" href="tutorial.html">Tutorial</a></CENTER> <a class="qindex" href="index.html">Home</a> &nbsp; <a class="qindex" href="information.html">Information</a> &nbsp; <a class="qindex" href="classes.html">Classes</a> &nbsp; <a class="qindex" href="download.html">Download</a> &nbsp; <a class="qindex" href="usage.html">Usage</a> &nbsp; <a class="qindex" href="maillist.html">Mail List</a> &nbsp; <a class="qindex" href="system.html">Requirements</a> &nbsp; <a class="qindex" href="links.html">Links</a> &nbsp; <a class="qindex" href="faq.html">FAQ</a> &nbsp; <a class="qindex" href="tutorial.html">Tutorial</a></CENTER>
<HR> <HR>
<!-- Generated by Doxygen 1.6.2 --> <!-- Generated by Doxygen 1.6.2 -->
<div class="navpath"><a class="el" href="dir_f14fd23bc74c76f288031ad23b3f3505.html">include</a> <div class="navpath"><a class="el" href="dir_221deb9bdff892d63ed1e409450a60d2.html">include</a>
</div> </div>
<div class="contents"> <div class="contents">
<h1>Socket.h</h1><div class="fragment"><pre class="fragment"><a name="l00001"></a>00001 <span class="preprocessor">#ifndef STK_SOCKET_H</span> <h1>Socket.h</h1><div class="fragment"><pre class="fragment"><a name="l00001"></a>00001 <span class="preprocessor">#ifndef STK_SOCKET_H</span>
@@ -85,7 +85,7 @@
<table> <table>
<tr><td><A HREF="http://ccrma.stanford.edu/software/stk/"><I>The Synthesis ToolKit in C++ (STK)</I></A></td></tr> <tr><td><A HREF="http://ccrma.stanford.edu/software/stk/"><I>The Synthesis ToolKit in C++ (STK)</I></A></td></tr>
<tr><td>&copy;1995-2011 Perry R. Cook and Gary P. Scavone. All Rights Reserved.</td></tr> <tr><td>&copy;1995-2012 Perry R. Cook and Gary P. Scavone. All Rights Reserved.</td></tr>
</table> </table>
</BODY> </BODY>

View File

@@ -9,7 +9,7 @@
<a class="qindex" href="index.html">Home</a> &nbsp; <a class="qindex" href="information.html">Information</a> &nbsp; <a class="qindex" href="classes.html">Classes</a> &nbsp; <a class="qindex" href="download.html">Download</a> &nbsp; <a class="qindex" href="usage.html">Usage</a> &nbsp; <a class="qindex" href="maillist.html">Mail List</a> &nbsp; <a class="qindex" href="system.html">Requirements</a> &nbsp; <a class="qindex" href="links.html">Links</a> &nbsp; <a class="qindex" href="faq.html">FAQ</a> &nbsp; <a class="qindex" href="tutorial.html">Tutorial</a></CENTER> <a class="qindex" href="index.html">Home</a> &nbsp; <a class="qindex" href="information.html">Information</a> &nbsp; <a class="qindex" href="classes.html">Classes</a> &nbsp; <a class="qindex" href="download.html">Download</a> &nbsp; <a class="qindex" href="usage.html">Usage</a> &nbsp; <a class="qindex" href="maillist.html">Mail List</a> &nbsp; <a class="qindex" href="system.html">Requirements</a> &nbsp; <a class="qindex" href="links.html">Links</a> &nbsp; <a class="qindex" href="faq.html">FAQ</a> &nbsp; <a class="qindex" href="tutorial.html">Tutorial</a></CENTER>
<HR> <HR>
<!-- Generated by Doxygen 1.6.2 --> <!-- Generated by Doxygen 1.6.2 -->
<div class="navpath"><a class="el" href="dir_f14fd23bc74c76f288031ad23b3f3505.html">include</a> <div class="navpath"><a class="el" href="dir_221deb9bdff892d63ed1e409450a60d2.html">include</a>
</div> </div>
<div class="contents"> <div class="contents">
<h1>Sphere.h</h1><div class="fragment"><pre class="fragment"><a name="l00001"></a>00001 <span class="preprocessor">#ifndef STK_SPHERE_H</span> <h1>Sphere.h</h1><div class="fragment"><pre class="fragment"><a name="l00001"></a>00001 <span class="preprocessor">#ifndef STK_SPHERE_H</span>
@@ -75,7 +75,7 @@
<table> <table>
<tr><td><A HREF="http://ccrma.stanford.edu/software/stk/"><I>The Synthesis ToolKit in C++ (STK)</I></A></td></tr> <tr><td><A HREF="http://ccrma.stanford.edu/software/stk/"><I>The Synthesis ToolKit in C++ (STK)</I></A></td></tr>
<tr><td>&copy;1995-2011 Perry R. Cook and Gary P. Scavone. All Rights Reserved.</td></tr> <tr><td>&copy;1995-2012 Perry R. Cook and Gary P. Scavone. All Rights Reserved.</td></tr>
</table> </table>
</BODY> </BODY>

View File

@@ -9,7 +9,7 @@
<a class="qindex" href="index.html">Home</a> &nbsp; <a class="qindex" href="information.html">Information</a> &nbsp; <a class="qindex" href="classes.html">Classes</a> &nbsp; <a class="qindex" href="download.html">Download</a> &nbsp; <a class="qindex" href="usage.html">Usage</a> &nbsp; <a class="qindex" href="maillist.html">Mail List</a> &nbsp; <a class="qindex" href="system.html">Requirements</a> &nbsp; <a class="qindex" href="links.html">Links</a> &nbsp; <a class="qindex" href="faq.html">FAQ</a> &nbsp; <a class="qindex" href="tutorial.html">Tutorial</a></CENTER> <a class="qindex" href="index.html">Home</a> &nbsp; <a class="qindex" href="information.html">Information</a> &nbsp; <a class="qindex" href="classes.html">Classes</a> &nbsp; <a class="qindex" href="download.html">Download</a> &nbsp; <a class="qindex" href="usage.html">Usage</a> &nbsp; <a class="qindex" href="maillist.html">Mail List</a> &nbsp; <a class="qindex" href="system.html">Requirements</a> &nbsp; <a class="qindex" href="links.html">Links</a> &nbsp; <a class="qindex" href="faq.html">FAQ</a> &nbsp; <a class="qindex" href="tutorial.html">Tutorial</a></CENTER>
<HR> <HR>
<!-- Generated by Doxygen 1.6.2 --> <!-- Generated by Doxygen 1.6.2 -->
<div class="navpath"><a class="el" href="dir_f14fd23bc74c76f288031ad23b3f3505.html">include</a> <div class="navpath"><a class="el" href="dir_221deb9bdff892d63ed1e409450a60d2.html">include</a>
</div> </div>
<div class="contents"> <div class="contents">
<h1>StifKarp.h</h1><div class="fragment"><pre class="fragment"><a name="l00001"></a>00001 <span class="preprocessor">#ifndef STK_STIFKARP_H</span> <h1>StifKarp.h</h1><div class="fragment"><pre class="fragment"><a name="l00001"></a>00001 <span class="preprocessor">#ifndef STK_STIFKARP_H</span>
@@ -128,7 +128,7 @@
<table> <table>
<tr><td><A HREF="http://ccrma.stanford.edu/software/stk/"><I>The Synthesis ToolKit in C++ (STK)</I></A></td></tr> <tr><td><A HREF="http://ccrma.stanford.edu/software/stk/"><I>The Synthesis ToolKit in C++ (STK)</I></A></td></tr>
<tr><td>&copy;1995-2011 Perry R. Cook and Gary P. Scavone. All Rights Reserved.</td></tr> <tr><td>&copy;1995-2012 Perry R. Cook and Gary P. Scavone. All Rights Reserved.</td></tr>
</table> </table>
</BODY> </BODY>

View File

@@ -9,7 +9,7 @@
<a class="qindex" href="index.html">Home</a> &nbsp; <a class="qindex" href="information.html">Information</a> &nbsp; <a class="qindex" href="classes.html">Classes</a> &nbsp; <a class="qindex" href="download.html">Download</a> &nbsp; <a class="qindex" href="usage.html">Usage</a> &nbsp; <a class="qindex" href="maillist.html">Mail List</a> &nbsp; <a class="qindex" href="system.html">Requirements</a> &nbsp; <a class="qindex" href="links.html">Links</a> &nbsp; <a class="qindex" href="faq.html">FAQ</a> &nbsp; <a class="qindex" href="tutorial.html">Tutorial</a></CENTER> <a class="qindex" href="index.html">Home</a> &nbsp; <a class="qindex" href="information.html">Information</a> &nbsp; <a class="qindex" href="classes.html">Classes</a> &nbsp; <a class="qindex" href="download.html">Download</a> &nbsp; <a class="qindex" href="usage.html">Usage</a> &nbsp; <a class="qindex" href="maillist.html">Mail List</a> &nbsp; <a class="qindex" href="system.html">Requirements</a> &nbsp; <a class="qindex" href="links.html">Links</a> &nbsp; <a class="qindex" href="faq.html">FAQ</a> &nbsp; <a class="qindex" href="tutorial.html">Tutorial</a></CENTER>
<HR> <HR>
<!-- Generated by Doxygen 1.6.2 --> <!-- Generated by Doxygen 1.6.2 -->
<div class="navpath"><a class="el" href="dir_f14fd23bc74c76f288031ad23b3f3505.html">include</a> <div class="navpath"><a class="el" href="dir_221deb9bdff892d63ed1e409450a60d2.html">include</a>
</div> </div>
<div class="contents"> <div class="contents">
<h1>Stk.h</h1><div class="fragment"><pre class="fragment"><a name="l00001"></a>00001 <span class="preprocessor">#ifndef STK_STK_H</span> <h1>Stk.h</h1><div class="fragment"><pre class="fragment"><a name="l00001"></a>00001 <span class="preprocessor">#ifndef STK_STK_H</span>
@@ -19,7 +19,7 @@
<a name="l00005"></a>00005 <span class="preprocessor">#include &lt;iostream&gt;</span> <a name="l00005"></a>00005 <span class="preprocessor">#include &lt;iostream&gt;</span>
<a name="l00006"></a>00006 <span class="preprocessor">#include &lt;sstream&gt;</span> <a name="l00006"></a>00006 <span class="preprocessor">#include &lt;sstream&gt;</span>
<a name="l00007"></a>00007 <span class="preprocessor">#include &lt;vector&gt;</span> <a name="l00007"></a>00007 <span class="preprocessor">#include &lt;vector&gt;</span>
<a name="l00008"></a>00008 <span class="preprocessor">#include &lt;cstdlib&gt;</span> <a name="l00008"></a>00008 <span class="comment">//#include &lt;cstdlib&gt;</span>
<a name="l00009"></a>00009 <a name="l00009"></a>00009
<a name="l00016"></a>00016 <span class="keyword">namespace </span>stk { <a name="l00016"></a>00016 <span class="keyword">namespace </span>stk {
<a name="l00017"></a>00017 <a name="l00017"></a>00017
@@ -364,7 +364,7 @@
<table> <table>
<tr><td><A HREF="http://ccrma.stanford.edu/software/stk/"><I>The Synthesis ToolKit in C++ (STK)</I></A></td></tr> <tr><td><A HREF="http://ccrma.stanford.edu/software/stk/"><I>The Synthesis ToolKit in C++ (STK)</I></A></td></tr>
<tr><td>&copy;1995-2011 Perry R. Cook and Gary P. Scavone. All Rights Reserved.</td></tr> <tr><td>&copy;1995-2012 Perry R. Cook and Gary P. Scavone. All Rights Reserved.</td></tr>
</table> </table>
</BODY> </BODY>

View File

@@ -9,7 +9,7 @@
<a class="qindex" href="index.html">Home</a> &nbsp; <a class="qindex" href="information.html">Information</a> &nbsp; <a class="qindex" href="classes.html">Classes</a> &nbsp; <a class="qindex" href="download.html">Download</a> &nbsp; <a class="qindex" href="usage.html">Usage</a> &nbsp; <a class="qindex" href="maillist.html">Mail List</a> &nbsp; <a class="qindex" href="system.html">Requirements</a> &nbsp; <a class="qindex" href="links.html">Links</a> &nbsp; <a class="qindex" href="faq.html">FAQ</a> &nbsp; <a class="qindex" href="tutorial.html">Tutorial</a></CENTER> <a class="qindex" href="index.html">Home</a> &nbsp; <a class="qindex" href="information.html">Information</a> &nbsp; <a class="qindex" href="classes.html">Classes</a> &nbsp; <a class="qindex" href="download.html">Download</a> &nbsp; <a class="qindex" href="usage.html">Usage</a> &nbsp; <a class="qindex" href="maillist.html">Mail List</a> &nbsp; <a class="qindex" href="system.html">Requirements</a> &nbsp; <a class="qindex" href="links.html">Links</a> &nbsp; <a class="qindex" href="faq.html">FAQ</a> &nbsp; <a class="qindex" href="tutorial.html">Tutorial</a></CENTER>
<HR> <HR>
<!-- Generated by Doxygen 1.6.2 --> <!-- Generated by Doxygen 1.6.2 -->
<div class="navpath"><a class="el" href="dir_f14fd23bc74c76f288031ad23b3f3505.html">include</a> <div class="navpath"><a class="el" href="dir_221deb9bdff892d63ed1e409450a60d2.html">include</a>
</div> </div>
<div class="contents"> <div class="contents">
<h1>TapDelay.h</h1><div class="fragment"><pre class="fragment"><a name="l00001"></a>00001 <span class="preprocessor">#ifndef STK_TAPDELAY_H</span> <h1>TapDelay.h</h1><div class="fragment"><pre class="fragment"><a name="l00001"></a>00001 <span class="preprocessor">#ifndef STK_TAPDELAY_H</span>
@@ -166,7 +166,7 @@
<table> <table>
<tr><td><A HREF="http://ccrma.stanford.edu/software/stk/"><I>The Synthesis ToolKit in C++ (STK)</I></A></td></tr> <tr><td><A HREF="http://ccrma.stanford.edu/software/stk/"><I>The Synthesis ToolKit in C++ (STK)</I></A></td></tr>
<tr><td>&copy;1995-2011 Perry R. Cook and Gary P. Scavone. All Rights Reserved.</td></tr> <tr><td>&copy;1995-2012 Perry R. Cook and Gary P. Scavone. All Rights Reserved.</td></tr>
</table> </table>
</BODY> </BODY>

View File

@@ -9,7 +9,7 @@
<a class="qindex" href="index.html">Home</a> &nbsp; <a class="qindex" href="information.html">Information</a> &nbsp; <a class="qindex" href="classes.html">Classes</a> &nbsp; <a class="qindex" href="download.html">Download</a> &nbsp; <a class="qindex" href="usage.html">Usage</a> &nbsp; <a class="qindex" href="maillist.html">Mail List</a> &nbsp; <a class="qindex" href="system.html">Requirements</a> &nbsp; <a class="qindex" href="links.html">Links</a> &nbsp; <a class="qindex" href="faq.html">FAQ</a> &nbsp; <a class="qindex" href="tutorial.html">Tutorial</a></CENTER> <a class="qindex" href="index.html">Home</a> &nbsp; <a class="qindex" href="information.html">Information</a> &nbsp; <a class="qindex" href="classes.html">Classes</a> &nbsp; <a class="qindex" href="download.html">Download</a> &nbsp; <a class="qindex" href="usage.html">Usage</a> &nbsp; <a class="qindex" href="maillist.html">Mail List</a> &nbsp; <a class="qindex" href="system.html">Requirements</a> &nbsp; <a class="qindex" href="links.html">Links</a> &nbsp; <a class="qindex" href="faq.html">FAQ</a> &nbsp; <a class="qindex" href="tutorial.html">Tutorial</a></CENTER>
<HR> <HR>
<!-- Generated by Doxygen 1.6.2 --> <!-- Generated by Doxygen 1.6.2 -->
<div class="navpath"><a class="el" href="dir_f14fd23bc74c76f288031ad23b3f3505.html">include</a> <div class="navpath"><a class="el" href="dir_221deb9bdff892d63ed1e409450a60d2.html">include</a>
</div> </div>
<div class="contents"> <div class="contents">
<h1>TcpClient.h</h1><div class="fragment"><pre class="fragment"><a name="l00001"></a>00001 <span class="preprocessor">#ifndef STK_TCPCLIENT_H</span> <h1>TcpClient.h</h1><div class="fragment"><pre class="fragment"><a name="l00001"></a>00001 <span class="preprocessor">#ifndef STK_TCPCLIENT_H</span>
@@ -49,7 +49,7 @@
<table> <table>
<tr><td><A HREF="http://ccrma.stanford.edu/software/stk/"><I>The Synthesis ToolKit in C++ (STK)</I></A></td></tr> <tr><td><A HREF="http://ccrma.stanford.edu/software/stk/"><I>The Synthesis ToolKit in C++ (STK)</I></A></td></tr>
<tr><td>&copy;1995-2011 Perry R. Cook and Gary P. Scavone. All Rights Reserved.</td></tr> <tr><td>&copy;1995-2012 Perry R. Cook and Gary P. Scavone. All Rights Reserved.</td></tr>
</table> </table>
</BODY> </BODY>

View File

@@ -9,7 +9,7 @@
<a class="qindex" href="index.html">Home</a> &nbsp; <a class="qindex" href="information.html">Information</a> &nbsp; <a class="qindex" href="classes.html">Classes</a> &nbsp; <a class="qindex" href="download.html">Download</a> &nbsp; <a class="qindex" href="usage.html">Usage</a> &nbsp; <a class="qindex" href="maillist.html">Mail List</a> &nbsp; <a class="qindex" href="system.html">Requirements</a> &nbsp; <a class="qindex" href="links.html">Links</a> &nbsp; <a class="qindex" href="faq.html">FAQ</a> &nbsp; <a class="qindex" href="tutorial.html">Tutorial</a></CENTER> <a class="qindex" href="index.html">Home</a> &nbsp; <a class="qindex" href="information.html">Information</a> &nbsp; <a class="qindex" href="classes.html">Classes</a> &nbsp; <a class="qindex" href="download.html">Download</a> &nbsp; <a class="qindex" href="usage.html">Usage</a> &nbsp; <a class="qindex" href="maillist.html">Mail List</a> &nbsp; <a class="qindex" href="system.html">Requirements</a> &nbsp; <a class="qindex" href="links.html">Links</a> &nbsp; <a class="qindex" href="faq.html">FAQ</a> &nbsp; <a class="qindex" href="tutorial.html">Tutorial</a></CENTER>
<HR> <HR>
<!-- Generated by Doxygen 1.6.2 --> <!-- Generated by Doxygen 1.6.2 -->
<div class="navpath"><a class="el" href="dir_f14fd23bc74c76f288031ad23b3f3505.html">include</a> <div class="navpath"><a class="el" href="dir_221deb9bdff892d63ed1e409450a60d2.html">include</a>
</div> </div>
<div class="contents"> <div class="contents">
<h1>TcpServer.h</h1><div class="fragment"><pre class="fragment"><a name="l00001"></a>00001 <span class="preprocessor">#ifndef STK_TCPSERVER_H</span> <h1>TcpServer.h</h1><div class="fragment"><pre class="fragment"><a name="l00001"></a>00001 <span class="preprocessor">#ifndef STK_TCPSERVER_H</span>
@@ -49,7 +49,7 @@
<table> <table>
<tr><td><A HREF="http://ccrma.stanford.edu/software/stk/"><I>The Synthesis ToolKit in C++ (STK)</I></A></td></tr> <tr><td><A HREF="http://ccrma.stanford.edu/software/stk/"><I>The Synthesis ToolKit in C++ (STK)</I></A></td></tr>
<tr><td>&copy;1995-2011 Perry R. Cook and Gary P. Scavone. All Rights Reserved.</td></tr> <tr><td>&copy;1995-2012 Perry R. Cook and Gary P. Scavone. All Rights Reserved.</td></tr>
</table> </table>
</BODY> </BODY>

View File

@@ -9,7 +9,7 @@
<a class="qindex" href="index.html">Home</a> &nbsp; <a class="qindex" href="information.html">Information</a> &nbsp; <a class="qindex" href="classes.html">Classes</a> &nbsp; <a class="qindex" href="download.html">Download</a> &nbsp; <a class="qindex" href="usage.html">Usage</a> &nbsp; <a class="qindex" href="maillist.html">Mail List</a> &nbsp; <a class="qindex" href="system.html">Requirements</a> &nbsp; <a class="qindex" href="links.html">Links</a> &nbsp; <a class="qindex" href="faq.html">FAQ</a> &nbsp; <a class="qindex" href="tutorial.html">Tutorial</a></CENTER> <a class="qindex" href="index.html">Home</a> &nbsp; <a class="qindex" href="information.html">Information</a> &nbsp; <a class="qindex" href="classes.html">Classes</a> &nbsp; <a class="qindex" href="download.html">Download</a> &nbsp; <a class="qindex" href="usage.html">Usage</a> &nbsp; <a class="qindex" href="maillist.html">Mail List</a> &nbsp; <a class="qindex" href="system.html">Requirements</a> &nbsp; <a class="qindex" href="links.html">Links</a> &nbsp; <a class="qindex" href="faq.html">FAQ</a> &nbsp; <a class="qindex" href="tutorial.html">Tutorial</a></CENTER>
<HR> <HR>
<!-- Generated by Doxygen 1.6.2 --> <!-- Generated by Doxygen 1.6.2 -->
<div class="navpath"><a class="el" href="dir_f14fd23bc74c76f288031ad23b3f3505.html">include</a> <div class="navpath"><a class="el" href="dir_221deb9bdff892d63ed1e409450a60d2.html">include</a>
</div> </div>
<div class="contents"> <div class="contents">
<h1>Thread.h</h1><div class="fragment"><pre class="fragment"><a name="l00001"></a>00001 <span class="preprocessor">#ifndef STK_THREAD_H</span> <h1>Thread.h</h1><div class="fragment"><pre class="fragment"><a name="l00001"></a>00001 <span class="preprocessor">#ifndef STK_THREAD_H</span>
@@ -74,7 +74,7 @@
<table> <table>
<tr><td><A HREF="http://ccrma.stanford.edu/software/stk/"><I>The Synthesis ToolKit in C++ (STK)</I></A></td></tr> <tr><td><A HREF="http://ccrma.stanford.edu/software/stk/"><I>The Synthesis ToolKit in C++ (STK)</I></A></td></tr>
<tr><td>&copy;1995-2011 Perry R. Cook and Gary P. Scavone. All Rights Reserved.</td></tr> <tr><td>&copy;1995-2012 Perry R. Cook and Gary P. Scavone. All Rights Reserved.</td></tr>
</table> </table>
</BODY> </BODY>

View File

@@ -9,7 +9,7 @@
<a class="qindex" href="index.html">Home</a> &nbsp; <a class="qindex" href="information.html">Information</a> &nbsp; <a class="qindex" href="classes.html">Classes</a> &nbsp; <a class="qindex" href="download.html">Download</a> &nbsp; <a class="qindex" href="usage.html">Usage</a> &nbsp; <a class="qindex" href="maillist.html">Mail List</a> &nbsp; <a class="qindex" href="system.html">Requirements</a> &nbsp; <a class="qindex" href="links.html">Links</a> &nbsp; <a class="qindex" href="faq.html">FAQ</a> &nbsp; <a class="qindex" href="tutorial.html">Tutorial</a></CENTER> <a class="qindex" href="index.html">Home</a> &nbsp; <a class="qindex" href="information.html">Information</a> &nbsp; <a class="qindex" href="classes.html">Classes</a> &nbsp; <a class="qindex" href="download.html">Download</a> &nbsp; <a class="qindex" href="usage.html">Usage</a> &nbsp; <a class="qindex" href="maillist.html">Mail List</a> &nbsp; <a class="qindex" href="system.html">Requirements</a> &nbsp; <a class="qindex" href="links.html">Links</a> &nbsp; <a class="qindex" href="faq.html">FAQ</a> &nbsp; <a class="qindex" href="tutorial.html">Tutorial</a></CENTER>
<HR> <HR>
<!-- Generated by Doxygen 1.6.2 --> <!-- Generated by Doxygen 1.6.2 -->
<div class="navpath"><a class="el" href="dir_f14fd23bc74c76f288031ad23b3f3505.html">include</a> <div class="navpath"><a class="el" href="dir_221deb9bdff892d63ed1e409450a60d2.html">include</a>
</div> </div>
<div class="contents"> <div class="contents">
<h1>TubeBell.h</h1><div class="fragment"><pre class="fragment"><a name="l00001"></a>00001 <span class="preprocessor">#ifndef STK_TUBEBELL_H</span> <h1>TubeBell.h</h1><div class="fragment"><pre class="fragment"><a name="l00001"></a>00001 <span class="preprocessor">#ifndef STK_TUBEBELL_H</span>
@@ -100,7 +100,7 @@
<table> <table>
<tr><td><A HREF="http://ccrma.stanford.edu/software/stk/"><I>The Synthesis ToolKit in C++ (STK)</I></A></td></tr> <tr><td><A HREF="http://ccrma.stanford.edu/software/stk/"><I>The Synthesis ToolKit in C++ (STK)</I></A></td></tr>
<tr><td>&copy;1995-2011 Perry R. Cook and Gary P. Scavone. All Rights Reserved.</td></tr> <tr><td>&copy;1995-2012 Perry R. Cook and Gary P. Scavone. All Rights Reserved.</td></tr>
</table> </table>
</BODY> </BODY>

View File

@@ -9,7 +9,7 @@
<a class="qindex" href="index.html">Home</a> &nbsp; <a class="qindex" href="information.html">Information</a> &nbsp; <a class="qindex" href="classes.html">Classes</a> &nbsp; <a class="qindex" href="download.html">Download</a> &nbsp; <a class="qindex" href="usage.html">Usage</a> &nbsp; <a class="qindex" href="maillist.html">Mail List</a> &nbsp; <a class="qindex" href="system.html">Requirements</a> &nbsp; <a class="qindex" href="links.html">Links</a> &nbsp; <a class="qindex" href="faq.html">FAQ</a> &nbsp; <a class="qindex" href="tutorial.html">Tutorial</a></CENTER> <a class="qindex" href="index.html">Home</a> &nbsp; <a class="qindex" href="information.html">Information</a> &nbsp; <a class="qindex" href="classes.html">Classes</a> &nbsp; <a class="qindex" href="download.html">Download</a> &nbsp; <a class="qindex" href="usage.html">Usage</a> &nbsp; <a class="qindex" href="maillist.html">Mail List</a> &nbsp; <a class="qindex" href="system.html">Requirements</a> &nbsp; <a class="qindex" href="links.html">Links</a> &nbsp; <a class="qindex" href="faq.html">FAQ</a> &nbsp; <a class="qindex" href="tutorial.html">Tutorial</a></CENTER>
<HR> <HR>
<!-- Generated by Doxygen 1.6.2 --> <!-- Generated by Doxygen 1.6.2 -->
<div class="navpath"><a class="el" href="dir_f14fd23bc74c76f288031ad23b3f3505.html">include</a> <div class="navpath"><a class="el" href="dir_221deb9bdff892d63ed1e409450a60d2.html">include</a>
</div> </div>
<div class="contents"> <div class="contents">
<h1>Twang.h</h1><div class="fragment"><pre class="fragment"><a name="l00001"></a>00001 <span class="preprocessor">#ifndef STK_TWANG_H</span> <h1>Twang.h</h1><div class="fragment"><pre class="fragment"><a name="l00001"></a>00001 <span class="preprocessor">#ifndef STK_TWANG_H</span>
@@ -30,97 +30,99 @@
<a name="l00036"></a>00036 <span class="keyword">public</span>: <a name="l00036"></a>00036 <span class="keyword">public</span>:
<a name="l00038"></a>00038 <a class="code" href="classstk_1_1Twang.html#a813e99ee79974707a3afbfcab963c086" title="Class constructor, taking the lowest desired playing frequency.">Twang</a>( StkFloat lowestFrequency = 50.0 ); <a name="l00038"></a>00038 <a class="code" href="classstk_1_1Twang.html#a813e99ee79974707a3afbfcab963c086" title="Class constructor, taking the lowest desired playing frequency.">Twang</a>( StkFloat lowestFrequency = 50.0 );
<a name="l00039"></a>00039 <a name="l00039"></a>00039
<a name="l00041"></a>00041 <a class="code" href="classstk_1_1Twang.html#adae2759ef254101f91aa3a0a5c3fba39" title="Class destructor.">~Twang</a>( <span class="keywordtype">void</span> ); <a name="l00041"></a>00041 <span class="keywordtype">void</span> <a class="code" href="classstk_1_1Twang.html#a7cdd4bf2e486239429f6d4f0f277cea9" title="Reset and clear all internal state.">clear</a>( <span class="keywordtype">void</span> );
<a name="l00042"></a>00042 <a name="l00042"></a>00042
<a name="l00044"></a>00044 <span class="keywordtype">void</span> <a class="code" href="classstk_1_1Twang.html#a7cdd4bf2e486239429f6d4f0f277cea9" title="Reset and clear all internal state.">clear</a>( <span class="keywordtype">void</span> ); <a name="l00044"></a>00044 <span class="keywordtype">void</span> <a class="code" href="classstk_1_1Twang.html#ae27aa429cbf49f0dd60f0cc6ef41c832" title="Set the delayline parameters to allow frequencies as low as specified.">setLowestFrequency</a>( StkFloat frequency );
<a name="l00045"></a>00045 <a name="l00045"></a>00045
<a name="l00047"></a>00047 <span class="keywordtype">void</span> <a class="code" href="classstk_1_1Twang.html#ae27aa429cbf49f0dd60f0cc6ef41c832" title="Set the delayline parameters to allow frequencies as low as specified.">setLowestFrequency</a>( StkFloat frequency ); <a name="l00047"></a>00047 <span class="keywordtype">void</span> <a class="code" href="classstk_1_1Twang.html#a0043b9d374b73b6660ec2d79475d602c" title="Set the delayline parameters for a particular frequency.">setFrequency</a>( StkFloat frequency );
<a name="l00048"></a>00048 <a name="l00048"></a>00048
<a name="l00050"></a>00050 <span class="keywordtype">void</span> <a class="code" href="classstk_1_1Twang.html#a0043b9d374b73b6660ec2d79475d602c" title="Set the delayline parameters for a particular frequency.">setFrequency</a>( StkFloat frequency ); <a name="l00050"></a>00050 <span class="keywordtype">void</span> <a class="code" href="classstk_1_1Twang.html#a48008e3cd55dad6ee846b47ab32f993f" title="Set the pluck or &amp;quot;excitation&amp;quot; position along the string (0.0 - 1.0).">setPluckPosition</a>( StkFloat position );
<a name="l00051"></a>00051 <a name="l00051"></a>00051
<a name="l00053"></a>00053 <span class="keywordtype">void</span> <a class="code" href="classstk_1_1Twang.html#a48008e3cd55dad6ee846b47ab32f993f" title="Set the pluck or &amp;quot;excitation&amp;quot; position along the string (0.0 - 1.0).">setPluckPosition</a>( StkFloat position ); <a name="l00053"></a>00053
<a name="l00054"></a>00054 <a name="l00059"></a>00059 <span class="keywordtype">void</span> <a class="code" href="classstk_1_1Twang.html#ad7921c51f38b4e6e32d7db48cc101068" title="Set the nominal loop gain.">setLoopGain</a>( StkFloat loopGain );
<a name="l00056"></a>00056 <a name="l00060"></a>00060
<a name="l00062"></a>00062 <span class="keywordtype">void</span> <a class="code" href="classstk_1_1Twang.html#ad7921c51f38b4e6e32d7db48cc101068" title="Set the nominal loop gain.">setLoopGain</a>( StkFloat loopGain ); <a name="l00062"></a>00062
<a name="l00063"></a>00063 <a name="l00067"></a>00067 <span class="keywordtype">void</span> <a class="code" href="classstk_1_1Twang.html#a7076c25dd3a06262b3bf927bc64bf89e" title="Set the loop filter coefficients.">setLoopFilter</a>( std::vector&lt;StkFloat&gt; coefficients );
<a name="l00065"></a>00065 <a name="l00068"></a>00068
<a name="l00070"></a>00070 <span class="keywordtype">void</span> <a class="code" href="classstk_1_1Twang.html#a7076c25dd3a06262b3bf927bc64bf89e" title="Set the loop filter coefficients.">setLoopFilter</a>( std::vector&lt;StkFloat&gt; coefficients ); <a name="l00070"></a>00070 <span class="comment">//const StkFrames&amp; lastFrame( void ) const { return lastFrame_; };</span>
<a name="l00071"></a>00071 <a name="l00071"></a>00071
<a name="l00073"></a><a class="code" href="classstk_1_1Twang.html#ab54245fcb75144a8ffcc879789abc952">00073</a> <span class="keyword">const</span> <a class="code" href="classstk_1_1StkFrames.html" title="An STK class to handle vectorized audio data.">StkFrames</a>&amp; <a class="code" href="classstk_1_1Twang.html#ab54245fcb75144a8ffcc879789abc952" title="Return an StkFrames reference to the last output sample frame.">lastFrame</a>( <span class="keywordtype">void</span> )<span class="keyword"> const </span>{ <span class="keywordflow">return</span> lastFrame_; }; <a name="l00073"></a>00073 <span class="comment">// StkFloat lastOut( void ) { return lastFrame_[0]; };</span>
<a name="l00074"></a>00074 <a name="l00074"></a><a class="code" href="classstk_1_1Twang.html#aa25943e277f1cc396074d6be2969f0be">00074</a> StkFloat <a class="code" href="classstk_1_1Twang.html#aa25943e277f1cc396074d6be2969f0be" title="Return an StkFrames reference to the last output sample frame.">lastOut</a>( <span class="keywordtype">void</span> ) { <span class="keywordflow">return</span> lastOutput_; };
<a name="l00076"></a>00076 StkFloat <a class="code" href="classstk_1_1Twang.html#a3441ff449e3f7a451873e67d4c680ce9" title="Compute and return one output sample.">tick</a>( StkFloat input ); <a name="l00075"></a>00075
<a name="l00077"></a>00077 <a name="l00077"></a>00077 StkFloat <a class="code" href="classstk_1_1Twang.html#a3441ff449e3f7a451873e67d4c680ce9" title="Compute and return one output sample.">tick</a>( StkFloat input );
<a name="l00079"></a>00079 <a name="l00078"></a>00078
<a name="l00087"></a>00087 <a class="code" href="classstk_1_1StkFrames.html" title="An STK class to handle vectorized audio data.">StkFrames</a>&amp; <a class="code" href="classstk_1_1Twang.html#a3441ff449e3f7a451873e67d4c680ce9" title="Compute and return one output sample.">tick</a>( <a class="code" href="classstk_1_1StkFrames.html" title="An STK class to handle vectorized audio data.">StkFrames</a>&amp; frames, <span class="keywordtype">unsigned</span> <span class="keywordtype">int</span> channel = 0 ); <a name="l00080"></a>00080
<a name="l00088"></a>00088 <a name="l00088"></a>00088 <a class="code" href="classstk_1_1StkFrames.html" title="An STK class to handle vectorized audio data.">StkFrames</a>&amp; <a class="code" href="classstk_1_1Twang.html#a3441ff449e3f7a451873e67d4c680ce9" title="Compute and return one output sample.">tick</a>( <a class="code" href="classstk_1_1StkFrames.html" title="An STK class to handle vectorized audio data.">StkFrames</a>&amp; frames, <span class="keywordtype">unsigned</span> <span class="keywordtype">int</span> channel = 0 );
<a name="l00090"></a>00090 <a name="l00089"></a>00089
<a name="l00098"></a>00098 <a class="code" href="classstk_1_1StkFrames.html" title="An STK class to handle vectorized audio data.">StkFrames</a>&amp; <a class="code" href="classstk_1_1Twang.html#a3441ff449e3f7a451873e67d4c680ce9" title="Compute and return one output sample.">tick</a>( <a class="code" href="classstk_1_1StkFrames.html" title="An STK class to handle vectorized audio data.">StkFrames</a>&amp; iFrames, <a class="code" href="classstk_1_1StkFrames.html" title="An STK class to handle vectorized audio data.">StkFrames</a> &amp;oFrames, <span class="keywordtype">unsigned</span> <span class="keywordtype">int</span> iChannel = 0, <span class="keywordtype">unsigned</span> <span class="keywordtype">int</span> oChannel = 0 ); <a name="l00091"></a>00091
<a name="l00099"></a>00099 <a name="l00099"></a>00099 <a class="code" href="classstk_1_1StkFrames.html" title="An STK class to handle vectorized audio data.">StkFrames</a>&amp; <a class="code" href="classstk_1_1Twang.html#a3441ff449e3f7a451873e67d4c680ce9" title="Compute and return one output sample.">tick</a>( <a class="code" href="classstk_1_1StkFrames.html" title="An STK class to handle vectorized audio data.">StkFrames</a>&amp; iFrames, <a class="code" href="classstk_1_1StkFrames.html" title="An STK class to handle vectorized audio data.">StkFrames</a> &amp;oFrames, <span class="keywordtype">unsigned</span> <span class="keywordtype">int</span> iChannel = 0, <span class="keywordtype">unsigned</span> <span class="keywordtype">int</span> oChannel = 0 );
<a name="l00100"></a>00100 <span class="keyword">protected</span>: <a name="l00100"></a>00100
<a name="l00101"></a>00101 <a name="l00101"></a>00101 <span class="keyword">protected</span>:
<a name="l00102"></a>00102 <a class="code" href="classstk_1_1DelayA.html" title="STK allpass interpolating delay line class.">DelayA</a> delayLine_; <a name="l00102"></a>00102
<a name="l00103"></a>00103 <a class="code" href="classstk_1_1DelayL.html" title="STK linear interpolating delay line class.">DelayL</a> combDelay_; <a name="l00103"></a>00103 <a class="code" href="classstk_1_1DelayA.html" title="STK allpass interpolating delay line class.">DelayA</a> delayLine_;
<a name="l00104"></a>00104 <a class="code" href="classstk_1_1Fir.html" title="STK general finite impulse response filter class.">Fir</a> loopFilter_; <a name="l00104"></a>00104 <a class="code" href="classstk_1_1DelayL.html" title="STK linear interpolating delay line class.">DelayL</a> combDelay_;
<a name="l00105"></a>00105 <a name="l00105"></a>00105 <a class="code" href="classstk_1_1Fir.html" title="STK general finite impulse response filter class.">Fir</a> loopFilter_;
<a name="l00106"></a>00106 <a class="code" href="classstk_1_1StkFrames.html" title="An STK class to handle vectorized audio data.">StkFrames</a> lastFrame_; <a name="l00106"></a>00106
<a name="l00107"></a>00107 StkFloat frequency_; <a name="l00107"></a>00107 StkFloat lastOutput_;
<a name="l00108"></a>00108 StkFloat loopGain_; <a name="l00108"></a>00108 StkFloat frequency_;
<a name="l00109"></a>00109 StkFloat pluckPosition_; <a name="l00109"></a>00109 StkFloat loopGain_;
<a name="l00110"></a>00110 }; <a name="l00110"></a>00110 StkFloat pluckPosition_;
<a name="l00111"></a>00111 <a name="l00111"></a>00111 };
<a name="l00112"></a><a class="code" href="classstk_1_1Twang.html#a3441ff449e3f7a451873e67d4c680ce9">00112</a> <span class="keyword">inline</span> StkFloat <a class="code" href="classstk_1_1Twang.html#a3441ff449e3f7a451873e67d4c680ce9" title="Compute and return one output sample.">Twang :: tick</a>( StkFloat input ) <a name="l00112"></a>00112
<a name="l00113"></a>00113 { <a name="l00113"></a><a class="code" href="classstk_1_1Twang.html#a3441ff449e3f7a451873e67d4c680ce9">00113</a> <span class="keyword">inline</span> StkFloat <a class="code" href="classstk_1_1Twang.html#a3441ff449e3f7a451873e67d4c680ce9" title="Compute and return one output sample.">Twang :: tick</a>( StkFloat input )
<a name="l00114"></a>00114 lastFrame_[0] = delayLine_.<a class="code" href="classstk_1_1DelayA.html#ae602abe91560fb5f141db52333359b74" title="Input one sample to the filter and return one output.">tick</a>( input + loopFilter_.<a class="code" href="classstk_1_1Fir.html#afc5fd95f6bf72edaf4ee3060ca947793" title="Input one sample to the filter and return one output.">tick</a>( delayLine_.<a class="code" href="classstk_1_1DelayA.html#a4372d0e178af1cb6ca465affddfb1566" title="Return the last computed output value.">lastOut</a>() ) ); <a name="l00114"></a>00114 {
<a name="l00115"></a>00115 lastFrame_[0] -= combDelay_.<a class="code" href="classstk_1_1DelayL.html#a1d01bbaf40cc20a0b70241bb8072da7f" title="Input one sample to the filter and return one output.">tick</a>( lastFrame_[0] ); <span class="comment">// comb filtering on output</span> <a name="l00115"></a>00115 lastOutput_ = delayLine_.<a class="code" href="classstk_1_1DelayA.html#ae602abe91560fb5f141db52333359b74" title="Input one sample to the filter and return one output.">tick</a>( input + loopFilter_.<a class="code" href="classstk_1_1Fir.html#afc5fd95f6bf72edaf4ee3060ca947793" title="Input one sample to the filter and return one output.">tick</a>( delayLine_.<a class="code" href="classstk_1_1DelayA.html#a4372d0e178af1cb6ca465affddfb1566" title="Return the last computed output value.">lastOut</a>() ) );
<a name="l00116"></a>00116 <a name="l00116"></a>00116 lastOutput_ -= combDelay_.<a class="code" href="classstk_1_1DelayL.html#a1d01bbaf40cc20a0b70241bb8072da7f" title="Input one sample to the filter and return one output.">tick</a>( lastOutput_ ); <span class="comment">// comb filtering on output</span>
<a name="l00117"></a>00117 <span class="keywordflow">return</span> lastFrame_[0] * 0.5; <a name="l00117"></a>00117 lastOutput_ *= 0.5;
<a name="l00118"></a>00118 } <a name="l00118"></a>00118
<a name="l00119"></a>00119 <a name="l00119"></a>00119 <span class="keywordflow">return</span> lastOutput_;
<a name="l00120"></a><a class="code" href="classstk_1_1Twang.html#ae9e770c446e1459a5e89c0bc8285f5e3">00120</a> <span class="keyword">inline</span> <a class="code" href="classstk_1_1StkFrames.html" title="An STK class to handle vectorized audio data.">StkFrames</a>&amp; <a class="code" href="classstk_1_1Twang.html#a3441ff449e3f7a451873e67d4c680ce9" title="Compute and return one output sample.">Twang :: tick</a>( <a class="code" href="classstk_1_1StkFrames.html" title="An STK class to handle vectorized audio data.">StkFrames</a>&amp; frames, <span class="keywordtype">unsigned</span> <span class="keywordtype">int</span> channel ) <a name="l00120"></a>00120 }
<a name="l00121"></a>00121 { <a name="l00121"></a>00121
<a name="l00122"></a>00122 <span class="preprocessor">#if defined(_STK_DEBUG_)</span> <a name="l00122"></a><a class="code" href="classstk_1_1Twang.html#ae9e770c446e1459a5e89c0bc8285f5e3">00122</a> <span class="keyword">inline</span> <a class="code" href="classstk_1_1StkFrames.html" title="An STK class to handle vectorized audio data.">StkFrames</a>&amp; <a class="code" href="classstk_1_1Twang.html#a3441ff449e3f7a451873e67d4c680ce9" title="Compute and return one output sample.">Twang :: tick</a>( <a class="code" href="classstk_1_1StkFrames.html" title="An STK class to handle vectorized audio data.">StkFrames</a>&amp; frames, <span class="keywordtype">unsigned</span> <span class="keywordtype">int</span> channel )
<a name="l00123"></a>00123 <span class="preprocessor"></span> <span class="keywordflow">if</span> ( channel &gt;= frames.<a class="code" href="classstk_1_1StkFrames.html#aec7ef9c46675a24111aa6e2fda3ba870" title="Return the number of channels represented by the data.">channels</a>() ) { <a name="l00123"></a>00123 {
<a name="l00124"></a>00124 oStream_ &lt;&lt; <span class="stringliteral">&quot;Twang::tick(): channel and StkFrames arguments are incompatible!&quot;</span>; <a name="l00124"></a>00124 <span class="preprocessor">#if defined(_STK_DEBUG_)</span>
<a name="l00125"></a>00125 <a class="code" href="classstk_1_1Stk.html#a48ac73a0d8ca28445ba1a054e1f061ff" title="Static function for error reporting and handling using c-strings.">handleError</a>( StkError::FUNCTION_ARGUMENT ); <a name="l00125"></a>00125 <span class="preprocessor"></span> <span class="keywordflow">if</span> ( channel &gt;= frames.<a class="code" href="classstk_1_1StkFrames.html#aec7ef9c46675a24111aa6e2fda3ba870" title="Return the number of channels represented by the data.">channels</a>() ) {
<a name="l00126"></a>00126 } <a name="l00126"></a>00126 oStream_ &lt;&lt; <span class="stringliteral">&quot;Twang::tick(): channel and StkFrames arguments are incompatible!&quot;</span>;
<a name="l00127"></a>00127 <span class="preprocessor">#endif</span> <a name="l00127"></a>00127 <a class="code" href="classstk_1_1Stk.html#a48ac73a0d8ca28445ba1a054e1f061ff" title="Static function for error reporting and handling using c-strings.">handleError</a>( StkError::FUNCTION_ARGUMENT );
<a name="l00128"></a>00128 <span class="preprocessor"></span> <a name="l00128"></a>00128 }
<a name="l00129"></a>00129 StkFloat *samples = &amp;frames[channel]; <a name="l00129"></a>00129 <span class="preprocessor">#endif</span>
<a name="l00130"></a>00130 <span class="keywordtype">unsigned</span> <span class="keywordtype">int</span> hop = frames.<a class="code" href="classstk_1_1StkFrames.html#aec7ef9c46675a24111aa6e2fda3ba870" title="Return the number of channels represented by the data.">channels</a>(); <a name="l00130"></a>00130 <span class="preprocessor"></span>
<a name="l00131"></a>00131 <span class="keywordflow">for</span> ( <span class="keywordtype">unsigned</span> <span class="keywordtype">int</span> i=0; i&lt;frames.<a class="code" href="classstk_1_1StkFrames.html#a05b1ab6fa750a8221a7d65c30e0cdab9" title="Return the number of sample frames represented by the data.">frames</a>(); i++, samples += hop ) <a name="l00131"></a>00131 StkFloat *samples = &amp;frames[channel];
<a name="l00132"></a>00132 *samples = <a class="code" href="classstk_1_1Twang.html#a3441ff449e3f7a451873e67d4c680ce9" title="Compute and return one output sample.">tick</a>( *samples ); <a name="l00132"></a>00132 <span class="keywordtype">unsigned</span> <span class="keywordtype">int</span> hop = frames.<a class="code" href="classstk_1_1StkFrames.html#aec7ef9c46675a24111aa6e2fda3ba870" title="Return the number of channels represented by the data.">channels</a>();
<a name="l00133"></a>00133 <a name="l00133"></a>00133 <span class="keywordflow">for</span> ( <span class="keywordtype">unsigned</span> <span class="keywordtype">int</span> i=0; i&lt;frames.<a class="code" href="classstk_1_1StkFrames.html#a05b1ab6fa750a8221a7d65c30e0cdab9" title="Return the number of sample frames represented by the data.">frames</a>(); i++, samples += hop )
<a name="l00134"></a>00134 <span class="keywordflow">return</span> frames; <a name="l00134"></a>00134 *samples = <a class="code" href="classstk_1_1Twang.html#a3441ff449e3f7a451873e67d4c680ce9" title="Compute and return one output sample.">tick</a>( *samples );
<a name="l00135"></a>00135 } <a name="l00135"></a>00135
<a name="l00136"></a>00136 <a name="l00136"></a>00136 <span class="keywordflow">return</span> frames;
<a name="l00137"></a><a class="code" href="classstk_1_1Twang.html#a089ff55338a22647d94665d6adbeb7ae">00137</a> <span class="keyword">inline</span> <a class="code" href="classstk_1_1StkFrames.html" title="An STK class to handle vectorized audio data.">StkFrames</a>&amp; <a class="code" href="classstk_1_1Twang.html#a3441ff449e3f7a451873e67d4c680ce9" title="Compute and return one output sample.">Twang :: tick</a>( <a class="code" href="classstk_1_1StkFrames.html" title="An STK class to handle vectorized audio data.">StkFrames</a>&amp; iFrames, <a class="code" href="classstk_1_1StkFrames.html" title="An STK class to handle vectorized audio data.">StkFrames</a>&amp; oFrames, <span class="keywordtype">unsigned</span> <span class="keywordtype">int</span> iChannel, <span class="keywordtype">unsigned</span> <span class="keywordtype">int</span> oChannel ) <a name="l00137"></a>00137 }
<a name="l00138"></a>00138 { <a name="l00138"></a>00138
<a name="l00139"></a>00139 <span class="preprocessor">#if defined(_STK_DEBUG_)</span> <a name="l00139"></a><a class="code" href="classstk_1_1Twang.html#a089ff55338a22647d94665d6adbeb7ae">00139</a> <span class="keyword">inline</span> <a class="code" href="classstk_1_1StkFrames.html" title="An STK class to handle vectorized audio data.">StkFrames</a>&amp; <a class="code" href="classstk_1_1Twang.html#a3441ff449e3f7a451873e67d4c680ce9" title="Compute and return one output sample.">Twang :: tick</a>( <a class="code" href="classstk_1_1StkFrames.html" title="An STK class to handle vectorized audio data.">StkFrames</a>&amp; iFrames, <a class="code" href="classstk_1_1StkFrames.html" title="An STK class to handle vectorized audio data.">StkFrames</a>&amp; oFrames, <span class="keywordtype">unsigned</span> <span class="keywordtype">int</span> iChannel, <span class="keywordtype">unsigned</span> <span class="keywordtype">int</span> oChannel )
<a name="l00140"></a>00140 <span class="preprocessor"></span> <span class="keywordflow">if</span> ( iChannel &gt;= iFrames.<a class="code" href="classstk_1_1StkFrames.html#aec7ef9c46675a24111aa6e2fda3ba870" title="Return the number of channels represented by the data.">channels</a>() || oChannel &gt;= oFrames.<a class="code" href="classstk_1_1StkFrames.html#aec7ef9c46675a24111aa6e2fda3ba870" title="Return the number of channels represented by the data.">channels</a>() ) { <a name="l00140"></a>00140 {
<a name="l00141"></a>00141 oStream_ &lt;&lt; <span class="stringliteral">&quot;Twang::tick(): channel and StkFrames arguments are incompatible!&quot;</span>; <a name="l00141"></a>00141 <span class="preprocessor">#if defined(_STK_DEBUG_)</span>
<a name="l00142"></a>00142 <a class="code" href="classstk_1_1Stk.html#a48ac73a0d8ca28445ba1a054e1f061ff" title="Static function for error reporting and handling using c-strings.">handleError</a>( StkError::FUNCTION_ARGUMENT ); <a name="l00142"></a>00142 <span class="preprocessor"></span> <span class="keywordflow">if</span> ( iChannel &gt;= iFrames.<a class="code" href="classstk_1_1StkFrames.html#aec7ef9c46675a24111aa6e2fda3ba870" title="Return the number of channels represented by the data.">channels</a>() || oChannel &gt;= oFrames.<a class="code" href="classstk_1_1StkFrames.html#aec7ef9c46675a24111aa6e2fda3ba870" title="Return the number of channels represented by the data.">channels</a>() ) {
<a name="l00143"></a>00143 } <a name="l00143"></a>00143 oStream_ &lt;&lt; <span class="stringliteral">&quot;Twang::tick(): channel and StkFrames arguments are incompatible!&quot;</span>;
<a name="l00144"></a>00144 <span class="preprocessor">#endif</span> <a name="l00144"></a>00144 <a class="code" href="classstk_1_1Stk.html#a48ac73a0d8ca28445ba1a054e1f061ff" title="Static function for error reporting and handling using c-strings.">handleError</a>( StkError::FUNCTION_ARGUMENT );
<a name="l00145"></a>00145 <span class="preprocessor"></span> <a name="l00145"></a>00145 }
<a name="l00146"></a>00146 StkFloat *iSamples = &amp;iFrames[iChannel]; <a name="l00146"></a>00146 <span class="preprocessor">#endif</span>
<a name="l00147"></a>00147 StkFloat *oSamples = &amp;oFrames[oChannel]; <a name="l00147"></a>00147 <span class="preprocessor"></span>
<a name="l00148"></a>00148 <span class="keywordtype">unsigned</span> <span class="keywordtype">int</span> iHop = iFrames.<a class="code" href="classstk_1_1StkFrames.html#aec7ef9c46675a24111aa6e2fda3ba870" title="Return the number of channels represented by the data.">channels</a>(), oHop = oFrames.<a class="code" href="classstk_1_1StkFrames.html#aec7ef9c46675a24111aa6e2fda3ba870" title="Return the number of channels represented by the data.">channels</a>(); <a name="l00148"></a>00148 StkFloat *iSamples = &amp;iFrames[iChannel];
<a name="l00149"></a>00149 <span class="keywordflow">for</span> ( <span class="keywordtype">unsigned</span> <span class="keywordtype">int</span> i=0; i&lt;iFrames.<a class="code" href="classstk_1_1StkFrames.html#a05b1ab6fa750a8221a7d65c30e0cdab9" title="Return the number of sample frames represented by the data.">frames</a>(); i++, iSamples += iHop, oSamples += oHop ) <a name="l00149"></a>00149 StkFloat *oSamples = &amp;oFrames[oChannel];
<a name="l00150"></a>00150 *oSamples = <a class="code" href="classstk_1_1Twang.html#a3441ff449e3f7a451873e67d4c680ce9" title="Compute and return one output sample.">tick</a>( *iSamples ); <a name="l00150"></a>00150 <span class="keywordtype">unsigned</span> <span class="keywordtype">int</span> iHop = iFrames.<a class="code" href="classstk_1_1StkFrames.html#aec7ef9c46675a24111aa6e2fda3ba870" title="Return the number of channels represented by the data.">channels</a>(), oHop = oFrames.<a class="code" href="classstk_1_1StkFrames.html#aec7ef9c46675a24111aa6e2fda3ba870" title="Return the number of channels represented by the data.">channels</a>();
<a name="l00151"></a>00151 <a name="l00151"></a>00151 <span class="keywordflow">for</span> ( <span class="keywordtype">unsigned</span> <span class="keywordtype">int</span> i=0; i&lt;iFrames.<a class="code" href="classstk_1_1StkFrames.html#a05b1ab6fa750a8221a7d65c30e0cdab9" title="Return the number of sample frames represented by the data.">frames</a>(); i++, iSamples += iHop, oSamples += oHop )
<a name="l00152"></a>00152 <span class="keywordflow">return</span> iFrames; <a name="l00152"></a>00152 *oSamples = <a class="code" href="classstk_1_1Twang.html#a3441ff449e3f7a451873e67d4c680ce9" title="Compute and return one output sample.">tick</a>( *iSamples );
<a name="l00153"></a>00153 } <a name="l00153"></a>00153
<a name="l00154"></a>00154 <a name="l00154"></a>00154 <span class="keywordflow">return</span> iFrames;
<a name="l00155"></a>00155 } <span class="comment">// stk namespace</span> <a name="l00155"></a>00155 }
<a name="l00156"></a>00156 <a name="l00156"></a>00156
<a name="l00157"></a>00157 <span class="preprocessor">#endif</span> <a name="l00157"></a>00157 } <span class="comment">// stk namespace</span>
<a name="l00158"></a>00158 <span class="preprocessor"></span> <a name="l00158"></a>00158
<a name="l00159"></a>00159 <span class="preprocessor">#endif</span>
<a name="l00160"></a>00160 <span class="preprocessor"></span>
</pre></div></div> </pre></div></div>
<HR> <HR>
<table> <table>
<tr><td><A HREF="http://ccrma.stanford.edu/software/stk/"><I>The Synthesis ToolKit in C++ (STK)</I></A></td></tr> <tr><td><A HREF="http://ccrma.stanford.edu/software/stk/"><I>The Synthesis ToolKit in C++ (STK)</I></A></td></tr>
<tr><td>&copy;1995-2011 Perry R. Cook and Gary P. Scavone. All Rights Reserved.</td></tr> <tr><td>&copy;1995-2012 Perry R. Cook and Gary P. Scavone. All Rights Reserved.</td></tr>
</table> </table>
</BODY> </BODY>

View File

@@ -9,7 +9,7 @@
<a class="qindex" href="index.html">Home</a> &nbsp; <a class="qindex" href="information.html">Information</a> &nbsp; <a class="qindex" href="classes.html">Classes</a> &nbsp; <a class="qindex" href="download.html">Download</a> &nbsp; <a class="qindex" href="usage.html">Usage</a> &nbsp; <a class="qindex" href="maillist.html">Mail List</a> &nbsp; <a class="qindex" href="system.html">Requirements</a> &nbsp; <a class="qindex" href="links.html">Links</a> &nbsp; <a class="qindex" href="faq.html">FAQ</a> &nbsp; <a class="qindex" href="tutorial.html">Tutorial</a></CENTER> <a class="qindex" href="index.html">Home</a> &nbsp; <a class="qindex" href="information.html">Information</a> &nbsp; <a class="qindex" href="classes.html">Classes</a> &nbsp; <a class="qindex" href="download.html">Download</a> &nbsp; <a class="qindex" href="usage.html">Usage</a> &nbsp; <a class="qindex" href="maillist.html">Mail List</a> &nbsp; <a class="qindex" href="system.html">Requirements</a> &nbsp; <a class="qindex" href="links.html">Links</a> &nbsp; <a class="qindex" href="faq.html">FAQ</a> &nbsp; <a class="qindex" href="tutorial.html">Tutorial</a></CENTER>
<HR> <HR>
<!-- Generated by Doxygen 1.6.2 --> <!-- Generated by Doxygen 1.6.2 -->
<div class="navpath"><a class="el" href="dir_f14fd23bc74c76f288031ad23b3f3505.html">include</a> <div class="navpath"><a class="el" href="dir_221deb9bdff892d63ed1e409450a60d2.html">include</a>
</div> </div>
<div class="contents"> <div class="contents">
<h1>TwoPole.h</h1><div class="fragment"><pre class="fragment"><a name="l00001"></a>00001 <span class="preprocessor">#ifndef STK_TWOPOLE_H</span> <h1>TwoPole.h</h1><div class="fragment"><pre class="fragment"><a name="l00001"></a>00001 <span class="preprocessor">#ifndef STK_TWOPOLE_H</span>
@@ -121,7 +121,7 @@
<table> <table>
<tr><td><A HREF="http://ccrma.stanford.edu/software/stk/"><I>The Synthesis ToolKit in C++ (STK)</I></A></td></tr> <tr><td><A HREF="http://ccrma.stanford.edu/software/stk/"><I>The Synthesis ToolKit in C++ (STK)</I></A></td></tr>
<tr><td>&copy;1995-2011 Perry R. Cook and Gary P. Scavone. All Rights Reserved.</td></tr> <tr><td>&copy;1995-2012 Perry R. Cook and Gary P. Scavone. All Rights Reserved.</td></tr>
</table> </table>
</BODY> </BODY>

View File

@@ -9,7 +9,7 @@
<a class="qindex" href="index.html">Home</a> &nbsp; <a class="qindex" href="information.html">Information</a> &nbsp; <a class="qindex" href="classes.html">Classes</a> &nbsp; <a class="qindex" href="download.html">Download</a> &nbsp; <a class="qindex" href="usage.html">Usage</a> &nbsp; <a class="qindex" href="maillist.html">Mail List</a> &nbsp; <a class="qindex" href="system.html">Requirements</a> &nbsp; <a class="qindex" href="links.html">Links</a> &nbsp; <a class="qindex" href="faq.html">FAQ</a> &nbsp; <a class="qindex" href="tutorial.html">Tutorial</a></CENTER> <a class="qindex" href="index.html">Home</a> &nbsp; <a class="qindex" href="information.html">Information</a> &nbsp; <a class="qindex" href="classes.html">Classes</a> &nbsp; <a class="qindex" href="download.html">Download</a> &nbsp; <a class="qindex" href="usage.html">Usage</a> &nbsp; <a class="qindex" href="maillist.html">Mail List</a> &nbsp; <a class="qindex" href="system.html">Requirements</a> &nbsp; <a class="qindex" href="links.html">Links</a> &nbsp; <a class="qindex" href="faq.html">FAQ</a> &nbsp; <a class="qindex" href="tutorial.html">Tutorial</a></CENTER>
<HR> <HR>
<!-- Generated by Doxygen 1.6.2 --> <!-- Generated by Doxygen 1.6.2 -->
<div class="navpath"><a class="el" href="dir_f14fd23bc74c76f288031ad23b3f3505.html">include</a> <div class="navpath"><a class="el" href="dir_221deb9bdff892d63ed1e409450a60d2.html">include</a>
</div> </div>
<div class="contents"> <div class="contents">
<h1>TwoZero.h</h1><div class="fragment"><pre class="fragment"><a name="l00001"></a>00001 <span class="preprocessor">#ifndef STK_TWOZERO_H</span> <h1>TwoZero.h</h1><div class="fragment"><pre class="fragment"><a name="l00001"></a>00001 <span class="preprocessor">#ifndef STK_TWOZERO_H</span>
@@ -120,7 +120,7 @@
<table> <table>
<tr><td><A HREF="http://ccrma.stanford.edu/software/stk/"><I>The Synthesis ToolKit in C++ (STK)</I></A></td></tr> <tr><td><A HREF="http://ccrma.stanford.edu/software/stk/"><I>The Synthesis ToolKit in C++ (STK)</I></A></td></tr>
<tr><td>&copy;1995-2011 Perry R. Cook and Gary P. Scavone. All Rights Reserved.</td></tr> <tr><td>&copy;1995-2012 Perry R. Cook and Gary P. Scavone. All Rights Reserved.</td></tr>
</table> </table>
</BODY> </BODY>

View File

@@ -9,7 +9,7 @@
<a class="qindex" href="index.html">Home</a> &nbsp; <a class="qindex" href="information.html">Information</a> &nbsp; <a class="qindex" href="classes.html">Classes</a> &nbsp; <a class="qindex" href="download.html">Download</a> &nbsp; <a class="qindex" href="usage.html">Usage</a> &nbsp; <a class="qindex" href="maillist.html">Mail List</a> &nbsp; <a class="qindex" href="system.html">Requirements</a> &nbsp; <a class="qindex" href="links.html">Links</a> &nbsp; <a class="qindex" href="faq.html">FAQ</a> &nbsp; <a class="qindex" href="tutorial.html">Tutorial</a></CENTER> <a class="qindex" href="index.html">Home</a> &nbsp; <a class="qindex" href="information.html">Information</a> &nbsp; <a class="qindex" href="classes.html">Classes</a> &nbsp; <a class="qindex" href="download.html">Download</a> &nbsp; <a class="qindex" href="usage.html">Usage</a> &nbsp; <a class="qindex" href="maillist.html">Mail List</a> &nbsp; <a class="qindex" href="system.html">Requirements</a> &nbsp; <a class="qindex" href="links.html">Links</a> &nbsp; <a class="qindex" href="faq.html">FAQ</a> &nbsp; <a class="qindex" href="tutorial.html">Tutorial</a></CENTER>
<HR> <HR>
<!-- Generated by Doxygen 1.6.2 --> <!-- Generated by Doxygen 1.6.2 -->
<div class="navpath"><a class="el" href="dir_f14fd23bc74c76f288031ad23b3f3505.html">include</a> <div class="navpath"><a class="el" href="dir_221deb9bdff892d63ed1e409450a60d2.html">include</a>
</div> </div>
<div class="contents"> <div class="contents">
<h1>UdpSocket.h</h1><div class="fragment"><pre class="fragment"><a name="l00001"></a>00001 <span class="preprocessor">#ifndef STK_UDPSOCKET_H</span> <h1>UdpSocket.h</h1><div class="fragment"><pre class="fragment"><a name="l00001"></a>00001 <span class="preprocessor">#ifndef STK_UDPSOCKET_H</span>
@@ -58,7 +58,7 @@
<table> <table>
<tr><td><A HREF="http://ccrma.stanford.edu/software/stk/"><I>The Synthesis ToolKit in C++ (STK)</I></A></td></tr> <tr><td><A HREF="http://ccrma.stanford.edu/software/stk/"><I>The Synthesis ToolKit in C++ (STK)</I></A></td></tr>
<tr><td>&copy;1995-2011 Perry R. Cook and Gary P. Scavone. All Rights Reserved.</td></tr> <tr><td>&copy;1995-2012 Perry R. Cook and Gary P. Scavone. All Rights Reserved.</td></tr>
</table> </table>
</BODY> </BODY>

View File

@@ -9,7 +9,7 @@
<a class="qindex" href="index.html">Home</a> &nbsp; <a class="qindex" href="information.html">Information</a> &nbsp; <a class="qindex" href="classes.html">Classes</a> &nbsp; <a class="qindex" href="download.html">Download</a> &nbsp; <a class="qindex" href="usage.html">Usage</a> &nbsp; <a class="qindex" href="maillist.html">Mail List</a> &nbsp; <a class="qindex" href="system.html">Requirements</a> &nbsp; <a class="qindex" href="links.html">Links</a> &nbsp; <a class="qindex" href="faq.html">FAQ</a> &nbsp; <a class="qindex" href="tutorial.html">Tutorial</a></CENTER> <a class="qindex" href="index.html">Home</a> &nbsp; <a class="qindex" href="information.html">Information</a> &nbsp; <a class="qindex" href="classes.html">Classes</a> &nbsp; <a class="qindex" href="download.html">Download</a> &nbsp; <a class="qindex" href="usage.html">Usage</a> &nbsp; <a class="qindex" href="maillist.html">Mail List</a> &nbsp; <a class="qindex" href="system.html">Requirements</a> &nbsp; <a class="qindex" href="links.html">Links</a> &nbsp; <a class="qindex" href="faq.html">FAQ</a> &nbsp; <a class="qindex" href="tutorial.html">Tutorial</a></CENTER>
<HR> <HR>
<!-- Generated by Doxygen 1.6.2 --> <!-- Generated by Doxygen 1.6.2 -->
<div class="navpath"><a class="el" href="dir_f14fd23bc74c76f288031ad23b3f3505.html">include</a> <div class="navpath"><a class="el" href="dir_221deb9bdff892d63ed1e409450a60d2.html">include</a>
</div> </div>
<div class="contents"> <div class="contents">
<h1>Vector3D.h</h1><div class="fragment"><pre class="fragment"><a name="l00001"></a>00001 <span class="preprocessor">#ifndef STK_VECTOR3D_H</span> <h1>Vector3D.h</h1><div class="fragment"><pre class="fragment"><a name="l00001"></a>00001 <span class="preprocessor">#ifndef STK_VECTOR3D_H</span>
@@ -69,7 +69,7 @@
<table> <table>
<tr><td><A HREF="http://ccrma.stanford.edu/software/stk/"><I>The Synthesis ToolKit in C++ (STK)</I></A></td></tr> <tr><td><A HREF="http://ccrma.stanford.edu/software/stk/"><I>The Synthesis ToolKit in C++ (STK)</I></A></td></tr>
<tr><td>&copy;1995-2011 Perry R. Cook and Gary P. Scavone. All Rights Reserved.</td></tr> <tr><td>&copy;1995-2012 Perry R. Cook and Gary P. Scavone. All Rights Reserved.</td></tr>
</table> </table>
</BODY> </BODY>

View File

@@ -9,7 +9,7 @@
<a class="qindex" href="index.html">Home</a> &nbsp; <a class="qindex" href="information.html">Information</a> &nbsp; <a class="qindex" href="classes.html">Classes</a> &nbsp; <a class="qindex" href="download.html">Download</a> &nbsp; <a class="qindex" href="usage.html">Usage</a> &nbsp; <a class="qindex" href="maillist.html">Mail List</a> &nbsp; <a class="qindex" href="system.html">Requirements</a> &nbsp; <a class="qindex" href="links.html">Links</a> &nbsp; <a class="qindex" href="faq.html">FAQ</a> &nbsp; <a class="qindex" href="tutorial.html">Tutorial</a></CENTER> <a class="qindex" href="index.html">Home</a> &nbsp; <a class="qindex" href="information.html">Information</a> &nbsp; <a class="qindex" href="classes.html">Classes</a> &nbsp; <a class="qindex" href="download.html">Download</a> &nbsp; <a class="qindex" href="usage.html">Usage</a> &nbsp; <a class="qindex" href="maillist.html">Mail List</a> &nbsp; <a class="qindex" href="system.html">Requirements</a> &nbsp; <a class="qindex" href="links.html">Links</a> &nbsp; <a class="qindex" href="faq.html">FAQ</a> &nbsp; <a class="qindex" href="tutorial.html">Tutorial</a></CENTER>
<HR> <HR>
<!-- Generated by Doxygen 1.6.2 --> <!-- Generated by Doxygen 1.6.2 -->
<div class="navpath"><a class="el" href="dir_f14fd23bc74c76f288031ad23b3f3505.html">include</a> <div class="navpath"><a class="el" href="dir_221deb9bdff892d63ed1e409450a60d2.html">include</a>
</div> </div>
<div class="contents"> <div class="contents">
<h1>VoicForm.h</h1><div class="fragment"><pre class="fragment"><a name="l00001"></a>00001 <span class="preprocessor">#ifndef STK_VOICFORM_H</span> <h1>VoicForm.h</h1><div class="fragment"><pre class="fragment"><a name="l00001"></a>00001 <span class="preprocessor">#ifndef STK_VOICFORM_H</span>
@@ -130,7 +130,7 @@
<table> <table>
<tr><td><A HREF="http://ccrma.stanford.edu/software/stk/"><I>The Synthesis ToolKit in C++ (STK)</I></A></td></tr> <tr><td><A HREF="http://ccrma.stanford.edu/software/stk/"><I>The Synthesis ToolKit in C++ (STK)</I></A></td></tr>
<tr><td>&copy;1995-2011 Perry R. Cook and Gary P. Scavone. All Rights Reserved.</td></tr> <tr><td>&copy;1995-2012 Perry R. Cook and Gary P. Scavone. All Rights Reserved.</td></tr>
</table> </table>
</BODY> </BODY>

Some files were not shown because too many files have changed in this diff Show More