shithub: leaf

ref: c9f87b8761155abf2cab26cb809bcf89016697f3
dir: /docs/leaf/leaf-oscillators_8h_source.html/

View raw version
<!-- HTML header for doxygen 1.8.18-->
<!DOCTYPE html
    PUBLIC "-//W3C//DTD XHTML 1.0 Transitional//EN" "https://www.w3.org/TR/xhtml1/DTD/xhtml1-transitional.dtd">
<html xmlns="http://www.w3.org/1999/xhtml">
<head>
    <meta http-equiv="Content-Type" content="text/xhtml;charset=UTF-8" />
    <meta http-equiv="X-UA-Compatible" content="IE=9" />
    <meta name="generator" content="Doxygen 1.8.16" />
    <meta name="viewport" content="width=device-width, initial-scale=1" />
    <title>LEAF: LEAF/Inc/leaf-oscillators.h Source File</title>
    <link href="tabs.css" rel="stylesheet" type="text/css" />
    <script type="text/javascript" src="jquery.js"></script>
    <script type="text/javascript" src="dynsections.js"></script>
    <script type="text/javascript" src="../js/iframeResizer.contentWindow.min.js"></script>
    <!-- <script src="/js/template.js"></script> -->
     <link href="search/search.css" rel="stylesheet" type="text/css"/>
<script type="text/javascript" src="search/searchdata.js"></script>
<script type="text/javascript" src="search/search.js"></script>
<script type="text/javascript">
/* @license magnet:?xt=urn:btih:cf05388f2679ee054f2beb29a391d25f4e673ac3&amp;dn=gpl-2.0.txt GPL-v2 */
  $(document).ready(function() { init_search(); });
/* @license-end */
</script> 
    <link href="doxygen.css" rel="stylesheet" type="text/css" />
    <link href="customdoxygen.css" rel="stylesheet" type="text/css"/>
    <!-- <link rel="stylesheet" href="/css/tachyons.css" type="text/css" /> -->
</head>
<body class="bg-washed-green black-70 ph0 sans-serif" onload="iframeResizePipe()">
    <div>
        <!-- do not remove this div, it is closed by doxygen! -->
        <div id="titlearea">
            <table cellspacing="0" cellpadding="0">
                <tbody>
                    <tr>
                    </tr>
                </tbody>
            </table>
        </div>
        <!-- end header part -->
    </div>
</body>
</html><!-- Generated by Doxygen 1.8.16 -->
<script type="text/javascript">
/* @license magnet:?xt=urn:btih:cf05388f2679ee054f2beb29a391d25f4e673ac3&amp;dn=gpl-2.0.txt GPL-v2 */
var searchBox = new SearchBox("searchBox", "search",false,'Search');
/* @license-end */
</script>
  <div id="navrow1" class="tabs">
    <ul class="tablist">
      <li><a href="index.html"><span>Main&#160;Page</span></a></li>
      <li><a href="modules.html"><span>Modules</span></a></li>
      <li><a href="annotated.html"><span>Data&#160;Structures</span></a></li>
      <li class="current"><a href="files.html"><span>Files</span></a></li>
      <li><a href="examples.html"><span>Examples</span></a></li>
      <li>
        <div id="MSearchBox" class="MSearchBoxInactive">
        <span class="left">
          <img id="MSearchSelect" src="search/mag_sel.png"
               onmouseover="return searchBox.OnSearchSelectShow()"
               onmouseout="return searchBox.OnSearchSelectHide()"
               alt=""/>
          <input type="text" id="MSearchField" value="Search" accesskey="S"
               onfocus="searchBox.OnSearchFieldFocus(true)" 
               onblur="searchBox.OnSearchFieldFocus(false)" 
               onkeyup="searchBox.OnSearchFieldChange(event)"/>
          </span><span class="right">
            <a id="MSearchClose" href="javascript:searchBox.CloseResultsWindow()"><img id="MSearchCloseImg" border="0" src="search/close.png" alt=""/></a>
          </span>
        </div>
      </li>
    </ul>
  </div>
  <div id="navrow2" class="tabs2">
    <ul class="tablist">
      <li><a href="files.html"><span>File&#160;List</span></a></li>
      <li><a href="globals.html"><span>Globals</span></a></li>
    </ul>
  </div>
<!-- window showing the filter options -->
<div id="MSearchSelectWindow"
     onmouseover="return searchBox.OnSearchSelectShow()"
     onmouseout="return searchBox.OnSearchSelectHide()"
     onkeydown="return searchBox.OnSearchSelectKey(event)">
</div>

<!-- iframe showing the search results (closed by default) -->
<div id="MSearchResultsWindow">
<iframe src="javascript:void(0)" frameborder="0" 
        name="MSearchResults" id="MSearchResults">
</iframe>
</div>

<div id="nav-path" class="navpath">
  <ul>
<li class="navelem"><a class="el" href="dir_127e6aa213d41105176fe0c3bbb2560c.html">LEAF</a></li><li class="navelem"><a class="el" href="dir_2638202b9749e6ce2c919e410b7e2f43.html">Inc</a></li>  </ul>
</div>
</div><!-- top -->
<div class="header">
  <div class="headertitle">
<div class="title">leaf-oscillators.h</div>  </div>
</div><!--header-->
<div class="contents">
<div class="fragment"><div class="line"><a name="l00001"></a><span class="lineno">    1</span>&#160;<span class="comment">/*==============================================================================</span></div>
<div class="line"><a name="l00002"></a><span class="lineno">    2</span>&#160;<span class="comment"> leaf-oscillators.h</span></div>
<div class="line"><a name="l00003"></a><span class="lineno">    3</span>&#160;<span class="comment"> Created: 20 Jan 2017 12:00:58pm</span></div>
<div class="line"><a name="l00004"></a><span class="lineno">    4</span>&#160;<span class="comment"> Author:  Michael R Mulshine</span></div>
<div class="line"><a name="l00005"></a><span class="lineno">    5</span>&#160;<span class="comment"> ==============================================================================*/</span></div>
<div class="line"><a name="l00006"></a><span class="lineno">    6</span>&#160; </div>
<div class="line"><a name="l00007"></a><span class="lineno">    7</span>&#160;<span class="preprocessor">#ifndef LEAF_OSCILLATORS_H_INCLUDED</span></div>
<div class="line"><a name="l00008"></a><span class="lineno">    8</span>&#160;<span class="preprocessor">#define LEAF_OSCILLATORS_H_INCLUDED</span></div>
<div class="line"><a name="l00009"></a><span class="lineno">    9</span>&#160; </div>
<div class="line"><a name="l00010"></a><span class="lineno">   10</span>&#160;<span class="preprocessor">#ifdef __cplusplus</span></div>
<div class="line"><a name="l00011"></a><span class="lineno">   11</span>&#160;<span class="keyword">extern</span> <span class="stringliteral">&quot;C&quot;</span> {</div>
<div class="line"><a name="l00012"></a><span class="lineno">   12</span>&#160;<span class="preprocessor">#endif</span></div>
<div class="line"><a name="l00013"></a><span class="lineno">   13</span>&#160;    </div>
<div class="line"><a name="l00014"></a><span class="lineno">   14</span>&#160;    <span class="comment">//==============================================================================</span></div>
<div class="line"><a name="l00015"></a><span class="lineno">   15</span>&#160;    </div>
<div class="line"><a name="l00016"></a><span class="lineno">   16</span>&#160;<span class="preprocessor">#include &quot;leaf-math.h&quot;</span></div>
<div class="line"><a name="l00017"></a><span class="lineno">   17</span>&#160;<span class="preprocessor">#include &quot;leaf-mempool.h&quot;</span></div>
<div class="line"><a name="l00018"></a><span class="lineno">   18</span>&#160;<span class="preprocessor">#include &quot;leaf-tables.h&quot;</span></div>
<div class="line"><a name="l00019"></a><span class="lineno">   19</span>&#160;<span class="preprocessor">#include &quot;leaf-filters.h&quot;</span></div>
<div class="line"><a name="l00020"></a><span class="lineno">   20</span>&#160;<span class="preprocessor">#include &quot;leaf-distortion.h&quot;</span></div>
<div class="line"><a name="l00021"></a><span class="lineno">   21</span>&#160;    </div>
<div class="line"><a name="l00029"></a><span class="lineno">   29</span>&#160;    <span class="comment">//==============================================================================</span></div>
<div class="line"><a name="l00030"></a><span class="lineno">   30</span>&#160;    </div>
<div class="line"><a name="l00067"></a><span class="lineno">   67</span>&#160;    <span class="keyword">typedef</span> <span class="keyword">struct </span>_tTable</div>
<div class="line"><a name="l00068"></a><span class="lineno">   68</span>&#160;    {</div>
<div class="line"><a name="l00069"></a><span class="lineno">   69</span>&#160;        tMempool mempool;</div>
<div class="line"><a name="l00070"></a><span class="lineno">   70</span>&#160;        </div>
<div class="line"><a name="l00071"></a><span class="lineno">   71</span>&#160;        <span class="keywordtype">float</span>* waveTable;</div>
<div class="line"><a name="l00072"></a><span class="lineno">   72</span>&#160;        <span class="keywordtype">int</span> size;</div>
<div class="line"><a name="l00073"></a><span class="lineno">   73</span>&#160;        <span class="keywordtype">float</span> inc, freq;</div>
<div class="line"><a name="l00074"></a><span class="lineno">   74</span>&#160;        <span class="keywordtype">float</span> phase;</div>
<div class="line"><a name="l00075"></a><span class="lineno">   75</span>&#160;    } _tTable;</div>
<div class="line"><a name="l00076"></a><span class="lineno">   76</span>&#160;    </div>
<div class="line"><a name="l00077"></a><span class="lineno">   77</span>&#160;    <span class="keyword">typedef</span> _tTable* tTable;</div>
<div class="line"><a name="l00078"></a><span class="lineno">   78</span>&#160; </div>
<div class="line"><a name="l00079"></a><span class="lineno">   79</span>&#160;     <span class="keywordtype">void</span>    <a class="code" href="group__ttable.html#ga34f0802957415853e9dc64b7fa9355eb">tTable_init</a>(tTable* <span class="keyword">const</span> osc, <span class="keywordtype">float</span>* table, <span class="keywordtype">int</span> size, <a class="code" href="struct_l_e_a_f.html">LEAF</a>* <span class="keyword">const</span> leaf);</div>
<div class="line"><a name="l00080"></a><span class="lineno">   80</span>&#160;     <span class="keywordtype">void</span>    <a class="code" href="group__ttable.html#gae75a6c3468ae7801c86867860152117b">tTable_initToPool</a>(tTable* <span class="keyword">const</span> osc, <span class="keywordtype">float</span>* table, <span class="keywordtype">int</span> size, tMempool* <span class="keyword">const</span> mempool);</div>
<div class="line"><a name="l00081"></a><span class="lineno">   81</span>&#160;     <span class="keywordtype">void</span>    <a class="code" href="group__ttable.html#ga23c68eb02b6f856e4cabd793f386ef3d">tTable_free</a>(tTable* <span class="keyword">const</span> osc);</div>
<div class="line"><a name="l00082"></a><span class="lineno">   82</span>&#160;    </div>
<div class="line"><a name="l00083"></a><span class="lineno">   83</span>&#160;     <span class="keywordtype">float</span>   <a class="code" href="group__ttable.html#ga59f59db52bf98cf1852d7dcd6f09122c">tTable_tick</a>(tTable* <span class="keyword">const</span> osc);</div>
<div class="line"><a name="l00084"></a><span class="lineno">   84</span>&#160;     <span class="keywordtype">void</span>    <a class="code" href="group__ttable.html#ga2dcff23d9b0e98fd706d4880c766320a">tTable_setFreq</a>(tTable* <span class="keyword">const</span> osc, <span class="keywordtype">float</span> freq);</div>
<div class="line"><a name="l00085"></a><span class="lineno">   85</span>&#160;    </div>
<div class="line"><a name="l00086"></a><span class="lineno">   86</span>&#160;    <span class="comment">//==============================================================================</span></div>
<div class="line"><a name="l00087"></a><span class="lineno">   87</span>&#160;    </div>
<div class="line"><a name="l00126"></a><span class="lineno">  126</span>&#160;    <span class="keyword">typedef</span> <span class="keyword">struct </span>_tWavetable</div>
<div class="line"><a name="l00127"></a><span class="lineno">  127</span>&#160;    {</div>
<div class="line"><a name="l00128"></a><span class="lineno">  128</span>&#160;        tMempool mempool;</div>
<div class="line"><a name="l00129"></a><span class="lineno">  129</span>&#160;        </div>
<div class="line"><a name="l00130"></a><span class="lineno">  130</span>&#160;        <span class="keywordtype">float</span>** tables;</div>
<div class="line"><a name="l00131"></a><span class="lineno">  131</span>&#160;        <span class="keywordtype">int</span> size;</div>
<div class="line"><a name="l00132"></a><span class="lineno">  132</span>&#160;        <span class="keywordtype">int</span> numTables;</div>
<div class="line"><a name="l00133"></a><span class="lineno">  133</span>&#160;        <span class="keywordtype">float</span> baseFreq, invBaseFreq;</div>
<div class="line"><a name="l00134"></a><span class="lineno">  134</span>&#160;        <span class="keywordtype">float</span> inc, freq;</div>
<div class="line"><a name="l00135"></a><span class="lineno">  135</span>&#160;        <span class="keywordtype">float</span> phase;</div>
<div class="line"><a name="l00136"></a><span class="lineno">  136</span>&#160;        </div>
<div class="line"><a name="l00137"></a><span class="lineno">  137</span>&#160;        <span class="keywordtype">int</span> oct;</div>
<div class="line"><a name="l00138"></a><span class="lineno">  138</span>&#160;        <span class="keywordtype">float</span> w;</div>
<div class="line"><a name="l00139"></a><span class="lineno">  139</span>&#160;        <span class="keywordtype">float</span> aa;</div>
<div class="line"><a name="l00140"></a><span class="lineno">  140</span>&#160;        </div>
<div class="line"><a name="l00141"></a><span class="lineno">  141</span>&#160;        tButterworth bl;</div>
<div class="line"><a name="l00142"></a><span class="lineno">  142</span>&#160;    } _tWavetable;</div>
<div class="line"><a name="l00143"></a><span class="lineno">  143</span>&#160;    </div>
<div class="line"><a name="l00144"></a><span class="lineno">  144</span>&#160;    <span class="keyword">typedef</span> _tWavetable* tWavetable;</div>
<div class="line"><a name="l00145"></a><span class="lineno">  145</span>&#160;    </div>
<div class="line"><a name="l00146"></a><span class="lineno">  146</span>&#160;    <span class="keywordtype">void</span>    tWavetable_init(tWavetable* <span class="keyword">const</span> osc, <span class="keyword">const</span> <span class="keywordtype">float</span>* table, <span class="keywordtype">int</span> size, <span class="keywordtype">float</span> maxFreq, <a class="code" href="struct_l_e_a_f.html">LEAF</a>* <span class="keyword">const</span> leaf);</div>
<div class="line"><a name="l00147"></a><span class="lineno">  147</span>&#160;    <span class="keywordtype">void</span>    tWavetable_initToPool(tWavetable* <span class="keyword">const</span> osc, <span class="keyword">const</span> <span class="keywordtype">float</span>* table, <span class="keywordtype">int</span> size, <span class="keywordtype">float</span> maxFreq, tMempool* <span class="keyword">const</span> mempool);</div>
<div class="line"><a name="l00148"></a><span class="lineno">  148</span>&#160;    <span class="keywordtype">void</span>    <a class="code" href="group__twavetable.html#ga54957a54c5f86392dc8b3105668425e5">tWavetable_free</a>(tWavetable* <span class="keyword">const</span> osc);</div>
<div class="line"><a name="l00149"></a><span class="lineno">  149</span>&#160;    </div>
<div class="line"><a name="l00150"></a><span class="lineno">  150</span>&#160;    <span class="keywordtype">float</span>   <a class="code" href="group__twavetable.html#gad22ca7b75e09dd860286215aed1711b9">tWavetable_tick</a>(tWavetable* <span class="keyword">const</span> osc);</div>
<div class="line"><a name="l00151"></a><span class="lineno">  151</span>&#160;    <span class="keywordtype">void</span>    <a class="code" href="group__twavetable.html#gaf397a73fa707667cb0038b1be42896f1">tWavetable_setFreq</a>(tWavetable* <span class="keyword">const</span> osc, <span class="keywordtype">float</span> freq);</div>
<div class="line"><a name="l00152"></a><span class="lineno">  152</span>&#160;    <span class="keywordtype">void</span>    tWavetable_setAntiAliasing(tWavetable* <span class="keyword">const</span> osc, <span class="keywordtype">float</span> aa);</div>
<div class="line"><a name="l00153"></a><span class="lineno">  153</span>&#160;    </div>
<div class="line"><a name="l00154"></a><span class="lineno">  154</span>&#160;    <span class="comment">//==============================================================================</span></div>
<div class="line"><a name="l00155"></a><span class="lineno">  155</span>&#160;    </div>
<div class="line"><a name="l00194"></a><span class="lineno">  194</span>&#160;    <span class="keyword">typedef</span> <span class="keyword">struct </span>_tCompactWavetable</div>
<div class="line"><a name="l00195"></a><span class="lineno">  195</span>&#160;    {</div>
<div class="line"><a name="l00196"></a><span class="lineno">  196</span>&#160;        tMempool mempool;</div>
<div class="line"><a name="l00197"></a><span class="lineno">  197</span>&#160;        </div>
<div class="line"><a name="l00198"></a><span class="lineno">  198</span>&#160;        <span class="keywordtype">float</span>** tables;</div>
<div class="line"><a name="l00199"></a><span class="lineno">  199</span>&#160;        <span class="keywordtype">int</span> numTables;</div>
<div class="line"><a name="l00200"></a><span class="lineno">  200</span>&#160;        <span class="keywordtype">int</span>* sizes;</div>
<div class="line"><a name="l00201"></a><span class="lineno">  201</span>&#160;        <span class="keywordtype">float</span> baseFreq, invBaseFreq;</div>
<div class="line"><a name="l00202"></a><span class="lineno">  202</span>&#160;        <span class="keywordtype">float</span> inc, freq;</div>
<div class="line"><a name="l00203"></a><span class="lineno">  203</span>&#160;        <span class="keywordtype">float</span> phase;</div>
<div class="line"><a name="l00204"></a><span class="lineno">  204</span>&#160;        </div>
<div class="line"><a name="l00205"></a><span class="lineno">  205</span>&#160;        <span class="keywordtype">int</span> oct;</div>
<div class="line"><a name="l00206"></a><span class="lineno">  206</span>&#160;        <span class="keywordtype">float</span> w;</div>
<div class="line"><a name="l00207"></a><span class="lineno">  207</span>&#160;        <span class="keywordtype">float</span> aa;</div>
<div class="line"><a name="l00208"></a><span class="lineno">  208</span>&#160;        </div>
<div class="line"><a name="l00209"></a><span class="lineno">  209</span>&#160;        tButterworth bl;</div>
<div class="line"><a name="l00210"></a><span class="lineno">  210</span>&#160;        </div>
<div class="line"><a name="l00211"></a><span class="lineno">  211</span>&#160;        <span class="keywordtype">float</span> dsBuffer[2];</div>
<div class="line"><a name="l00212"></a><span class="lineno">  212</span>&#160;        tOversampler ds;</div>
<div class="line"><a name="l00213"></a><span class="lineno">  213</span>&#160;    } _tCompactWavetable;</div>
<div class="line"><a name="l00214"></a><span class="lineno">  214</span>&#160;    </div>
<div class="line"><a name="l00215"></a><span class="lineno">  215</span>&#160;    <span class="keyword">typedef</span> _tCompactWavetable* tCompactWavetable;</div>
<div class="line"><a name="l00216"></a><span class="lineno">  216</span>&#160;    </div>
<div class="line"><a name="l00217"></a><span class="lineno">  217</span>&#160;    <span class="keywordtype">void</span>    tCompactWavetable_init(tCompactWavetable* <span class="keyword">const</span> osc, <span class="keyword">const</span> <span class="keywordtype">float</span>* table, <span class="keywordtype">int</span> size, <span class="keywordtype">float</span> maxFreq, <a class="code" href="struct_l_e_a_f.html">LEAF</a>* <span class="keyword">const</span> leaf);</div>
<div class="line"><a name="l00218"></a><span class="lineno">  218</span>&#160;    <span class="keywordtype">void</span>    tCompactWavetable_initToPool(tCompactWavetable* <span class="keyword">const</span> osc, <span class="keyword">const</span> <span class="keywordtype">float</span>* table, <span class="keywordtype">int</span> size, <span class="keywordtype">float</span> maxFreq, tMempool* <span class="keyword">const</span> mempool);</div>
<div class="line"><a name="l00219"></a><span class="lineno">  219</span>&#160;    <span class="keywordtype">void</span>    <a class="code" href="group__tcompactwavetable.html#ga31c71e150c921c9c2a6b99b47ed995f5">tCompactWavetable_free</a>(tCompactWavetable* <span class="keyword">const</span> osc);</div>
<div class="line"><a name="l00220"></a><span class="lineno">  220</span>&#160;    </div>
<div class="line"><a name="l00221"></a><span class="lineno">  221</span>&#160;    <span class="keywordtype">float</span>   <a class="code" href="group__tcompactwavetable.html#ga3057038710e1b064968f8d290e753e5f">tCompactWavetable_tick</a>(tCompactWavetable* <span class="keyword">const</span> osc);</div>
<div class="line"><a name="l00222"></a><span class="lineno">  222</span>&#160;    <span class="keywordtype">void</span>    <a class="code" href="group__tcompactwavetable.html#ga49955d040284b3e1a40f2288cb89c54d">tCompactWavetable_setFreq</a>(tCompactWavetable* <span class="keyword">const</span> osc, <span class="keywordtype">float</span> freq);</div>
<div class="line"><a name="l00223"></a><span class="lineno">  223</span>&#160;    <span class="keywordtype">void</span>    tCompactWavetable_setAntiAliasing(tCompactWavetable* <span class="keyword">const</span> osc, <span class="keywordtype">float</span> aa);</div>
<div class="line"><a name="l00224"></a><span class="lineno">  224</span>&#160;    </div>
<div class="line"><a name="l00225"></a><span class="lineno">  225</span>&#160;    <span class="comment">//==============================================================================</span></div>
<div class="line"><a name="l00226"></a><span class="lineno">  226</span>&#160;    </div>
<div class="line"><a name="l00260"></a><span class="lineno">  260</span>&#160;    <span class="keyword">typedef</span> <span class="keyword">struct </span>_tCycle</div>
<div class="line"><a name="l00261"></a><span class="lineno">  261</span>&#160;    {</div>
<div class="line"><a name="l00262"></a><span class="lineno">  262</span>&#160;        </div>
<div class="line"><a name="l00263"></a><span class="lineno">  263</span>&#160;        tMempool mempool;</div>
<div class="line"><a name="l00264"></a><span class="lineno">  264</span>&#160;        <span class="comment">// Underlying phasor</span></div>
<div class="line"><a name="l00265"></a><span class="lineno">  265</span>&#160;        <span class="keywordtype">float</span> phase;</div>
<div class="line"><a name="l00266"></a><span class="lineno">  266</span>&#160;        <span class="keywordtype">float</span> inc,freq;</div>
<div class="line"><a name="l00267"></a><span class="lineno">  267</span>&#160;    } _tCycle;</div>
<div class="line"><a name="l00268"></a><span class="lineno">  268</span>&#160;    </div>
<div class="line"><a name="l00269"></a><span class="lineno">  269</span>&#160;    <span class="keyword">typedef</span> _tCycle* tCycle;</div>
<div class="line"><a name="l00270"></a><span class="lineno">  270</span>&#160;    </div>
<div class="line"><a name="l00271"></a><span class="lineno">  271</span>&#160;    <span class="keywordtype">void</span>    <a class="code" href="group__tcycle.html#ga3ae2b653f390bdacdfe952e22a7aa5c4">tCycle_init</a>         (tCycle* <span class="keyword">const</span> osc, <a class="code" href="struct_l_e_a_f.html">LEAF</a>* <span class="keyword">const</span> leaf);</div>
<div class="line"><a name="l00272"></a><span class="lineno">  272</span>&#160;    <span class="keywordtype">void</span>    <a class="code" href="group__tcycle.html#gacbd4afb6c3307d92e19a8e308ba7540b">tCycle_initToPool</a>   (tCycle* <span class="keyword">const</span> osc, tMempool* <span class="keyword">const</span> mempool);</div>
<div class="line"><a name="l00273"></a><span class="lineno">  273</span>&#160;    <span class="keywordtype">void</span>    <a class="code" href="group__tcycle.html#gacb267508910aefc3686366ba7f296938">tCycle_free</a>         (tCycle* <span class="keyword">const</span> osc);</div>
<div class="line"><a name="l00274"></a><span class="lineno">  274</span>&#160;    </div>
<div class="line"><a name="l00275"></a><span class="lineno">  275</span>&#160;    <span class="keywordtype">float</span>   <a class="code" href="group__tcycle.html#ga4fd599981f6caf87720db3a9811716cf">tCycle_tick</a>         (tCycle* <span class="keyword">const</span> osc);</div>
<div class="line"><a name="l00276"></a><span class="lineno">  276</span>&#160;    <span class="keywordtype">void</span>    <a class="code" href="group__tcycle.html#ga7eeb58e2292483416474bf83bf313deb">tCycle_setFreq</a>      (tCycle* <span class="keyword">const</span> osc, <span class="keywordtype">float</span> freq);</div>
<div class="line"><a name="l00277"></a><span class="lineno">  277</span>&#160;    </div>
<div class="line"><a name="l00278"></a><span class="lineno">  278</span>&#160;    <span class="comment">//==============================================================================</span></div>
<div class="line"><a name="l00279"></a><span class="lineno">  279</span>&#160;    </div>
<div class="line"><a name="l00312"></a><span class="lineno">  312</span>&#160;    <span class="keyword">typedef</span> <span class="keyword">struct </span>_tTriangle</div>
<div class="line"><a name="l00313"></a><span class="lineno">  313</span>&#160;    {</div>
<div class="line"><a name="l00314"></a><span class="lineno">  314</span>&#160;        </div>
<div class="line"><a name="l00315"></a><span class="lineno">  315</span>&#160;        tMempool mempool;</div>
<div class="line"><a name="l00316"></a><span class="lineno">  316</span>&#160;        <span class="comment">// Underlying phasor</span></div>
<div class="line"><a name="l00317"></a><span class="lineno">  317</span>&#160;        <span class="keywordtype">float</span> phase;</div>
<div class="line"><a name="l00318"></a><span class="lineno">  318</span>&#160;        <span class="keywordtype">float</span> inc,freq;</div>
<div class="line"><a name="l00319"></a><span class="lineno">  319</span>&#160;        <span class="keywordtype">int</span> oct;</div>
<div class="line"><a name="l00320"></a><span class="lineno">  320</span>&#160;        <span class="keywordtype">float</span> w;</div>
<div class="line"><a name="l00321"></a><span class="lineno">  321</span>&#160;    } _tTriangle;</div>
<div class="line"><a name="l00322"></a><span class="lineno">  322</span>&#160;    </div>
<div class="line"><a name="l00323"></a><span class="lineno">  323</span>&#160;    <span class="keyword">typedef</span> _tTriangle* tTriangle;</div>
<div class="line"><a name="l00324"></a><span class="lineno">  324</span>&#160; </div>
<div class="line"><a name="l00325"></a><span class="lineno">  325</span>&#160;    <span class="keywordtype">void</span>    <a class="code" href="group__ttriangle.html#ga50f2f0c7a69471479484560a94a11fbb">tTriangle_init</a>          (tTriangle* <span class="keyword">const</span> osc, <a class="code" href="struct_l_e_a_f.html">LEAF</a>* <span class="keyword">const</span> leaf);</div>
<div class="line"><a name="l00326"></a><span class="lineno">  326</span>&#160;    <span class="keywordtype">void</span>    <a class="code" href="group__ttriangle.html#gac50568ee121737e782e495e9afd0d523">tTriangle_initToPool</a>    (tTriangle* <span class="keyword">const</span> osc, tMempool* <span class="keyword">const</span> mempool);</div>
<div class="line"><a name="l00327"></a><span class="lineno">  327</span>&#160;    <span class="keywordtype">void</span>    <a class="code" href="group__ttriangle.html#gabb07623117c0d448839b808df2ea6f35">tTriangle_free</a>          (tTriangle* <span class="keyword">const</span> osc);</div>
<div class="line"><a name="l00328"></a><span class="lineno">  328</span>&#160;    </div>
<div class="line"><a name="l00329"></a><span class="lineno">  329</span>&#160;    <span class="keywordtype">float</span>   <a class="code" href="group__ttriangle.html#ga036ec99241852ea7336a3a7e8bcd2fc7">tTriangle_tick</a>          (tTriangle* <span class="keyword">const</span> osc);</div>
<div class="line"><a name="l00330"></a><span class="lineno">  330</span>&#160;    <span class="keywordtype">void</span>    <a class="code" href="group__ttriangle.html#ga02f6034d5442b55d1beda63fe7918fcb">tTriangle_setFreq</a>       (tTriangle* <span class="keyword">const</span> osc, <span class="keywordtype">float</span> freq);</div>
<div class="line"><a name="l00331"></a><span class="lineno">  331</span>&#160; </div>
<div class="line"><a name="l00332"></a><span class="lineno">  332</span>&#160;    </div>
<div class="line"><a name="l00333"></a><span class="lineno">  333</span>&#160;    <span class="comment">//==============================================================================</span></div>
<div class="line"><a name="l00334"></a><span class="lineno">  334</span>&#160;    </div>
<div class="line"><a name="l00367"></a><span class="lineno">  367</span>&#160;    <span class="keyword">typedef</span> <span class="keyword">struct </span>_tSquare</div>
<div class="line"><a name="l00368"></a><span class="lineno">  368</span>&#160;    {</div>
<div class="line"><a name="l00369"></a><span class="lineno">  369</span>&#160;        </div>
<div class="line"><a name="l00370"></a><span class="lineno">  370</span>&#160;        tMempool mempool;</div>
<div class="line"><a name="l00371"></a><span class="lineno">  371</span>&#160;        <span class="comment">// Underlying phasor</span></div>
<div class="line"><a name="l00372"></a><span class="lineno">  372</span>&#160;        <span class="keywordtype">float</span> phase;</div>
<div class="line"><a name="l00373"></a><span class="lineno">  373</span>&#160;        <span class="keywordtype">float</span> inc,freq;</div>
<div class="line"><a name="l00374"></a><span class="lineno">  374</span>&#160;        <span class="keywordtype">int</span> oct;</div>
<div class="line"><a name="l00375"></a><span class="lineno">  375</span>&#160;        <span class="keywordtype">float</span> w;</div>
<div class="line"><a name="l00376"></a><span class="lineno">  376</span>&#160;    } _tSquare;</div>
<div class="line"><a name="l00377"></a><span class="lineno">  377</span>&#160;    </div>
<div class="line"><a name="l00378"></a><span class="lineno">  378</span>&#160;    <span class="keyword">typedef</span> _tSquare* tSquare;</div>
<div class="line"><a name="l00379"></a><span class="lineno">  379</span>&#160; </div>
<div class="line"><a name="l00380"></a><span class="lineno">  380</span>&#160;    <span class="keywordtype">void</span>    <a class="code" href="group__tsquare.html#gacaaa2bf1d76371d9b4aeda286a09560f">tSquare_init</a>        (tSquare* <span class="keyword">const</span> osc, <a class="code" href="struct_l_e_a_f.html">LEAF</a>* <span class="keyword">const</span> leaf);</div>
<div class="line"><a name="l00381"></a><span class="lineno">  381</span>&#160;    <span class="keywordtype">void</span>    <a class="code" href="group__tsquare.html#gad9c41ce10b6b0c821360f43743544c89">tSquare_initToPool</a>  (tSquare* <span class="keyword">const</span> osc, tMempool* <span class="keyword">const</span>);</div>
<div class="line"><a name="l00382"></a><span class="lineno">  382</span>&#160;    <span class="keywordtype">void</span>    <a class="code" href="group__tsquare.html#ga1f6fac5cb92fcbca09970b95a2d05d7d">tSquare_free</a>        (tSquare* <span class="keyword">const</span> osc);</div>
<div class="line"><a name="l00383"></a><span class="lineno">  383</span>&#160; </div>
<div class="line"><a name="l00384"></a><span class="lineno">  384</span>&#160;    <span class="keywordtype">float</span>   <a class="code" href="group__tsquare.html#ga00053831170c826962e4f1aa9d6696e2">tSquare_tick</a>        (tSquare* <span class="keyword">const</span> osc);</div>
<div class="line"><a name="l00385"></a><span class="lineno">  385</span>&#160;    <span class="keywordtype">void</span>    <a class="code" href="group__tsquare.html#ga4453bd8e23b1b88ec944c93b8cb575f6">tSquare_setFreq</a>     (tSquare* <span class="keyword">const</span> osc, <span class="keywordtype">float</span> freq);</div>
<div class="line"><a name="l00386"></a><span class="lineno">  386</span>&#160;    </div>
<div class="line"><a name="l00390"></a><span class="lineno">  390</span>&#160;    <span class="comment">//==============================================================================</span></div>
<div class="line"><a name="l00391"></a><span class="lineno">  391</span>&#160;    </div>
<div class="line"><a name="l00424"></a><span class="lineno">  424</span>&#160;    <span class="keyword">typedef</span> <span class="keyword">struct </span>_tSawtooth</div>
<div class="line"><a name="l00425"></a><span class="lineno">  425</span>&#160;    {</div>
<div class="line"><a name="l00426"></a><span class="lineno">  426</span>&#160;        </div>
<div class="line"><a name="l00427"></a><span class="lineno">  427</span>&#160;        tMempool mempool;</div>
<div class="line"><a name="l00428"></a><span class="lineno">  428</span>&#160;        <span class="comment">// Underlying phasor</span></div>
<div class="line"><a name="l00429"></a><span class="lineno">  429</span>&#160;        <span class="keywordtype">float</span> phase;</div>
<div class="line"><a name="l00430"></a><span class="lineno">  430</span>&#160;        <span class="keywordtype">float</span> inc,freq;</div>
<div class="line"><a name="l00431"></a><span class="lineno">  431</span>&#160;        <span class="keywordtype">int</span> oct;</div>
<div class="line"><a name="l00432"></a><span class="lineno">  432</span>&#160;        <span class="keywordtype">float</span> w;</div>
<div class="line"><a name="l00433"></a><span class="lineno">  433</span>&#160;    } _tSawtooth;</div>
<div class="line"><a name="l00434"></a><span class="lineno">  434</span>&#160;    </div>
<div class="line"><a name="l00435"></a><span class="lineno">  435</span>&#160;    <span class="keyword">typedef</span> _tSawtooth* tSawtooth;</div>
<div class="line"><a name="l00436"></a><span class="lineno">  436</span>&#160; </div>
<div class="line"><a name="l00437"></a><span class="lineno">  437</span>&#160;    <span class="keywordtype">void</span>    <a class="code" href="group__tsawtooth.html#gaa052c9d8e62a198bbaeac892b0d11a7f">tSawtooth_init</a>          (tSawtooth* <span class="keyword">const</span> osc, <a class="code" href="struct_l_e_a_f.html">LEAF</a>* <span class="keyword">const</span> leaf);</div>
<div class="line"><a name="l00438"></a><span class="lineno">  438</span>&#160;    <span class="keywordtype">void</span>    <a class="code" href="group__tsawtooth.html#ga63ee3403c200358511ffb049a3a93bf2">tSawtooth_initToPool</a>    (tSawtooth* <span class="keyword">const</span> osc, tMempool* <span class="keyword">const</span> mempool);</div>
<div class="line"><a name="l00439"></a><span class="lineno">  439</span>&#160;    <span class="keywordtype">void</span>    <a class="code" href="group__tsawtooth.html#ga32ba208b6c4745587d267598702aaf02">tSawtooth_free</a>          (tSawtooth* <span class="keyword">const</span> osc);</div>
<div class="line"><a name="l00440"></a><span class="lineno">  440</span>&#160; </div>
<div class="line"><a name="l00441"></a><span class="lineno">  441</span>&#160;    <span class="keywordtype">float</span>   <a class="code" href="group__tsawtooth.html#ga55fd2d0b1572fc8a67fffc7531fced69">tSawtooth_tick</a>          (tSawtooth* <span class="keyword">const</span> osc);</div>
<div class="line"><a name="l00442"></a><span class="lineno">  442</span>&#160;    <span class="keywordtype">void</span>    <a class="code" href="group__tsawtooth.html#gab096cb0c5c0384b47959d0161d8432e4">tSawtooth_setFreq</a>       (tSawtooth* <span class="keyword">const</span> osc, <span class="keywordtype">float</span> freq);</div>
<div class="line"><a name="l00443"></a><span class="lineno">  443</span>&#160;    </div>
<div class="line"><a name="l00444"></a><span class="lineno">  444</span>&#160;    <span class="comment">//==============================================================================</span></div>
<div class="line"><a name="l00445"></a><span class="lineno">  445</span>&#160;    </div>
<div class="line"><a name="l00480"></a><span class="lineno">  480</span>&#160;    <span class="keyword">typedef</span> <span class="keyword">struct </span>_tPBTriangle</div>
<div class="line"><a name="l00481"></a><span class="lineno">  481</span>&#160;    {</div>
<div class="line"><a name="l00482"></a><span class="lineno">  482</span>&#160;        tMempool mempool;</div>
<div class="line"><a name="l00483"></a><span class="lineno">  483</span>&#160;        <span class="keywordtype">float</span> phase;</div>
<div class="line"><a name="l00484"></a><span class="lineno">  484</span>&#160;        <span class="keywordtype">float</span> inc,freq;</div>
<div class="line"><a name="l00485"></a><span class="lineno">  485</span>&#160;        <span class="keywordtype">float</span> skew;</div>
<div class="line"><a name="l00486"></a><span class="lineno">  486</span>&#160;        <span class="keywordtype">float</span> lastOut;</div>
<div class="line"><a name="l00487"></a><span class="lineno">  487</span>&#160;    } _tPBTriangle;</div>
<div class="line"><a name="l00488"></a><span class="lineno">  488</span>&#160;    </div>
<div class="line"><a name="l00489"></a><span class="lineno">  489</span>&#160;    <span class="keyword">typedef</span> _tPBTriangle* tPBTriangle;</div>
<div class="line"><a name="l00490"></a><span class="lineno">  490</span>&#160;    </div>
<div class="line"><a name="l00491"></a><span class="lineno">  491</span>&#160;    <span class="keywordtype">void</span>    <a class="code" href="group__tpbtriangle.html#ga2b0f56aabd9055402aa878929c253c3c">tPBTriangle_init</a>          (tPBTriangle* <span class="keyword">const</span> osc, <a class="code" href="struct_l_e_a_f.html">LEAF</a>* <span class="keyword">const</span> leaf);</div>
<div class="line"><a name="l00492"></a><span class="lineno">  492</span>&#160;    <span class="keywordtype">void</span>    <a class="code" href="group__tpbtriangle.html#gaff99f7e288649632fb504e470b8e0281">tPBTriangle_initToPool</a>    (tPBTriangle* <span class="keyword">const</span> osc, tMempool* <span class="keyword">const</span> mempool);</div>
<div class="line"><a name="l00493"></a><span class="lineno">  493</span>&#160;    <span class="keywordtype">void</span>    <a class="code" href="group__tpbtriangle.html#ga5619d13469f5ffb623597436324adb17">tPBTriangle_free</a>          (tPBTriangle* <span class="keyword">const</span> osc);</div>
<div class="line"><a name="l00494"></a><span class="lineno">  494</span>&#160;    </div>
<div class="line"><a name="l00495"></a><span class="lineno">  495</span>&#160;    <span class="keywordtype">float</span>   <a class="code" href="group__tpbtriangle.html#gad6e7d2472a27a64cc935d1de321890d4">tPBTriangle_tick</a>          (tPBTriangle* <span class="keyword">const</span> osc);</div>
<div class="line"><a name="l00496"></a><span class="lineno">  496</span>&#160;    <span class="keywordtype">void</span>    <a class="code" href="group__tpbtriangle.html#gad3e863c11d2feefb960ad717120ecfac">tPBTriangle_setFreq</a>       (tPBTriangle* <span class="keyword">const</span> osc, <span class="keywordtype">float</span> freq);</div>
<div class="line"><a name="l00497"></a><span class="lineno">  497</span>&#160;    <span class="keywordtype">void</span>    <a class="code" href="group__tpbtriangle.html#ga18e46643c83591dc1420d870b13a666e">tPBTriangle_setSkew</a>       (tPBTriangle* <span class="keyword">const</span> osc, <span class="keywordtype">float</span> skew);</div>
<div class="line"><a name="l00498"></a><span class="lineno">  498</span>&#160;    </div>
<div class="line"><a name="l00499"></a><span class="lineno">  499</span>&#160;    <span class="comment">//==============================================================================</span></div>
<div class="line"><a name="l00500"></a><span class="lineno">  500</span>&#160;    </div>
<div class="line"><a name="l00535"></a><span class="lineno">  535</span>&#160;    <span class="keyword">typedef</span> <span class="keyword">struct </span>_tPBPulse</div>
<div class="line"><a name="l00536"></a><span class="lineno">  536</span>&#160;    {</div>
<div class="line"><a name="l00537"></a><span class="lineno">  537</span>&#160;        tMempool mempool;</div>
<div class="line"><a name="l00538"></a><span class="lineno">  538</span>&#160;        <span class="keywordtype">float</span> phase;</div>
<div class="line"><a name="l00539"></a><span class="lineno">  539</span>&#160;        <span class="keywordtype">float</span> inc,freq;</div>
<div class="line"><a name="l00540"></a><span class="lineno">  540</span>&#160;        <span class="keywordtype">float</span> width;</div>
<div class="line"><a name="l00541"></a><span class="lineno">  541</span>&#160;    } _tPBPulse;</div>
<div class="line"><a name="l00542"></a><span class="lineno">  542</span>&#160;    </div>
<div class="line"><a name="l00543"></a><span class="lineno">  543</span>&#160;    <span class="keyword">typedef</span> _tPBPulse* tPBPulse;</div>
<div class="line"><a name="l00544"></a><span class="lineno">  544</span>&#160;    </div>
<div class="line"><a name="l00545"></a><span class="lineno">  545</span>&#160;    <span class="keywordtype">void</span>    <a class="code" href="group__tpbpulse.html#ga4b8b8e7bdc1cd61cf193cdb1c65573eb">tPBPulse_init</a>        (tPBPulse* <span class="keyword">const</span> osc, <a class="code" href="struct_l_e_a_f.html">LEAF</a>* <span class="keyword">const</span> leaf);</div>
<div class="line"><a name="l00546"></a><span class="lineno">  546</span>&#160;    <span class="keywordtype">void</span>    <a class="code" href="group__tpbpulse.html#ga089e07fce804c1b1e6056db359a18824">tPBPulse_initToPool</a>  (tPBPulse* <span class="keyword">const</span> osc, tMempool* <span class="keyword">const</span>);</div>
<div class="line"><a name="l00547"></a><span class="lineno">  547</span>&#160;    <span class="keywordtype">void</span>    <a class="code" href="group__tpbpulse.html#ga6ac8de9bbd2c97c9528b1063b34c1e18">tPBPulse_free</a>        (tPBPulse* <span class="keyword">const</span> osc);</div>
<div class="line"><a name="l00548"></a><span class="lineno">  548</span>&#160;    </div>
<div class="line"><a name="l00549"></a><span class="lineno">  549</span>&#160;    <span class="keywordtype">float</span>   <a class="code" href="group__tpbpulse.html#ga7aaad9740d3c09fc4824163c6ad0c80d">tPBPulse_tick</a>        (tPBPulse* <span class="keyword">const</span> osc);</div>
<div class="line"><a name="l00550"></a><span class="lineno">  550</span>&#160;    <span class="keywordtype">void</span>    <a class="code" href="group__tpbpulse.html#gab32a37dc71636bc09ee394d645be2c09">tPBPulse_setFreq</a>     (tPBPulse* <span class="keyword">const</span> osc, <span class="keywordtype">float</span> freq);</div>
<div class="line"><a name="l00551"></a><span class="lineno">  551</span>&#160;    <span class="keywordtype">void</span>    <a class="code" href="group__tpbpulse.html#ga8e65e57d726e906cc346ab8e27f49623">tPBPulse_setWidth</a>    (tPBPulse* <span class="keyword">const</span> osc, <span class="keywordtype">float</span> width);</div>
<div class="line"><a name="l00552"></a><span class="lineno">  552</span>&#160;    </div>
<div class="line"><a name="l00553"></a><span class="lineno">  553</span>&#160;    <span class="comment">//==============================================================================</span></div>
<div class="line"><a name="l00554"></a><span class="lineno">  554</span>&#160;    </div>
<div class="line"><a name="l00585"></a><span class="lineno">  585</span>&#160;    <span class="keyword">typedef</span> <span class="keyword">struct </span>_tPBSaw</div>
<div class="line"><a name="l00586"></a><span class="lineno">  586</span>&#160;    {</div>
<div class="line"><a name="l00587"></a><span class="lineno">  587</span>&#160;        tMempool mempool;</div>
<div class="line"><a name="l00588"></a><span class="lineno">  588</span>&#160;        <span class="keywordtype">float</span> phase;</div>
<div class="line"><a name="l00589"></a><span class="lineno">  589</span>&#160;        <span class="keywordtype">float</span> inc,freq;</div>
<div class="line"><a name="l00590"></a><span class="lineno">  590</span>&#160;    } _tPBSaw;</div>
<div class="line"><a name="l00591"></a><span class="lineno">  591</span>&#160;    </div>
<div class="line"><a name="l00592"></a><span class="lineno">  592</span>&#160;    <span class="keyword">typedef</span> _tPBSaw* tPBSaw;</div>
<div class="line"><a name="l00593"></a><span class="lineno">  593</span>&#160;    </div>
<div class="line"><a name="l00594"></a><span class="lineno">  594</span>&#160;    <span class="keywordtype">void</span>    <a class="code" href="group__tpbsaw.html#gaefe02484a169c2babc92686caa77b211">tPBSaw_init</a>          (tPBSaw* <span class="keyword">const</span> osc, <a class="code" href="struct_l_e_a_f.html">LEAF</a>* <span class="keyword">const</span> leaf);</div>
<div class="line"><a name="l00595"></a><span class="lineno">  595</span>&#160;    <span class="keywordtype">void</span>    <a class="code" href="group__tpbsaw.html#ga51843ccbdaef8d5251e11a0812c8e627">tPBSaw_initToPool</a>    (tPBSaw* <span class="keyword">const</span> osc, tMempool* <span class="keyword">const</span> mempool);</div>
<div class="line"><a name="l00596"></a><span class="lineno">  596</span>&#160;    <span class="keywordtype">void</span>    <a class="code" href="group__tpbsaw.html#ga3e00510154f54b8f7c8e8611217198ae">tPBSaw_free</a>          (tPBSaw* <span class="keyword">const</span> osc);</div>
<div class="line"><a name="l00597"></a><span class="lineno">  597</span>&#160;    </div>
<div class="line"><a name="l00598"></a><span class="lineno">  598</span>&#160;    <span class="keywordtype">float</span>   <a class="code" href="group__tpbsaw.html#ga406a4319bcbae4c0f0dfaba1d5631328">tPBSaw_tick</a>          (tPBSaw* <span class="keyword">const</span> osc);</div>
<div class="line"><a name="l00599"></a><span class="lineno">  599</span>&#160;    <span class="keywordtype">void</span>    <a class="code" href="group__tpbsaw.html#ga7e1f3a7848d2bcdab21f6cfe2e476bdc">tPBSaw_setFreq</a>       (tPBSaw* <span class="keyword">const</span> osc, <span class="keywordtype">float</span> freq);</div>
<div class="line"><a name="l00600"></a><span class="lineno">  600</span>&#160;    </div>
<div class="line"><a name="l00601"></a><span class="lineno">  601</span>&#160;    <span class="comment">//==============================================================================</span></div>
<div class="line"><a name="l00602"></a><span class="lineno">  602</span>&#160;    </div>
<div class="line"><a name="l00633"></a><span class="lineno">  633</span>&#160;    <span class="keyword">typedef</span> <span class="keyword">struct </span>_tPhasor</div>
<div class="line"><a name="l00634"></a><span class="lineno">  634</span>&#160;    {</div>
<div class="line"><a name="l00635"></a><span class="lineno">  635</span>&#160;        </div>
<div class="line"><a name="l00636"></a><span class="lineno">  636</span>&#160;        tMempool mempool;</div>
<div class="line"><a name="l00637"></a><span class="lineno">  637</span>&#160;        <span class="keywordtype">float</span> phase;</div>
<div class="line"><a name="l00638"></a><span class="lineno">  638</span>&#160;        <span class="keywordtype">float</span> inc,freq;</div>
<div class="line"><a name="l00639"></a><span class="lineno">  639</span>&#160;        uint8_t phaseDidReset;</div>
<div class="line"><a name="l00640"></a><span class="lineno">  640</span>&#160;    } _tPhasor;</div>
<div class="line"><a name="l00641"></a><span class="lineno">  641</span>&#160;    </div>
<div class="line"><a name="l00642"></a><span class="lineno">  642</span>&#160;    <span class="keyword">typedef</span> _tPhasor* tPhasor;</div>
<div class="line"><a name="l00643"></a><span class="lineno">  643</span>&#160;    </div>
<div class="line"><a name="l00644"></a><span class="lineno">  644</span>&#160;    <span class="keywordtype">void</span>    <a class="code" href="group__tphasor.html#gaef54a192792ded6d1e53a0839b55bb4a">tPhasor_init</a>        (tPhasor* <span class="keyword">const</span> osc, <a class="code" href="struct_l_e_a_f.html">LEAF</a>* <span class="keyword">const</span> leaf);</div>
<div class="line"><a name="l00645"></a><span class="lineno">  645</span>&#160;    <span class="keywordtype">void</span>    <a class="code" href="group__tphasor.html#ga7b98ada7d63395e6796a9ddeb1dd69d2">tPhasor_initToPool</a>  (tPhasor* <span class="keyword">const</span> osc, tMempool* <span class="keyword">const</span>);</div>
<div class="line"><a name="l00646"></a><span class="lineno">  646</span>&#160;    <span class="keywordtype">void</span>    <a class="code" href="group__tphasor.html#gae86aae9fa656c303dc02fabacd4bf9a9">tPhasor_free</a>        (tPhasor* <span class="keyword">const</span> osc);</div>
<div class="line"><a name="l00647"></a><span class="lineno">  647</span>&#160;    </div>
<div class="line"><a name="l00648"></a><span class="lineno">  648</span>&#160;    <span class="keywordtype">float</span>   <a class="code" href="group__tphasor.html#ga9a1e7b8a8f9bbcb74d52b95cf0ec1d6e">tPhasor_tick</a>        (tPhasor* <span class="keyword">const</span> osc);</div>
<div class="line"><a name="l00649"></a><span class="lineno">  649</span>&#160;    <span class="keywordtype">void</span>    <a class="code" href="group__tphasor.html#gab19f35f26a5de1353623ed2ecd8c92b7">tPhasor_setFreq</a>     (tPhasor* <span class="keyword">const</span> osc, <span class="keywordtype">float</span> freq);</div>
<div class="line"><a name="l00650"></a><span class="lineno">  650</span>&#160;    </div>
<div class="line"><a name="l00651"></a><span class="lineno">  651</span>&#160;    <span class="comment">//==============================================================================</span></div>
<div class="line"><a name="l00652"></a><span class="lineno">  652</span>&#160;    </div>
<div class="line"><a name="l00678"></a><span class="lineno">  678</span>&#160;    <span class="comment">/* tNoise. WhiteNoise, PinkNoise. */</span></div>
<div class="line"><a name="l00682"></a><span class="lineno"><a class="line" href="group__tnoise.html#ga9253d111035d4a83996ec5bbfd3d8963">  682</a></span>&#160;    <span class="keyword">enum</span> <a class="code" href="group__tnoise.html#ga9253d111035d4a83996ec5bbfd3d8963">NoiseType</a></div>
<div class="line"><a name="l00683"></a><span class="lineno">  683</span>&#160;    {</div>
<div class="line"><a name="l00684"></a><span class="lineno"><a class="line" href="group__tnoise.html#gga9253d111035d4a83996ec5bbfd3d8963a7c87739bebf0e95f4e6b8d9e5432b8f1">  684</a></span>&#160;        <a class="code" href="group__tnoise.html#gga9253d111035d4a83996ec5bbfd3d8963a7c87739bebf0e95f4e6b8d9e5432b8f1">WhiteNoise</a>, </div>
<div class="line"><a name="l00685"></a><span class="lineno"><a class="line" href="group__tnoise.html#gga9253d111035d4a83996ec5bbfd3d8963a0793318314019dbf241d6de4e8fcf310">  685</a></span>&#160;        <a class="code" href="group__tnoise.html#gga9253d111035d4a83996ec5bbfd3d8963a0793318314019dbf241d6de4e8fcf310">PinkNoise</a>, </div>
<div class="line"><a name="l00686"></a><span class="lineno">  686</span>&#160;        NoiseTypeNil,</div>
<div class="line"><a name="l00687"></a><span class="lineno">  687</span>&#160;    };</div>
<div class="line"><a name="l00688"></a><span class="lineno">  688</span>&#160;    </div>
<div class="line"><a name="l00691"></a><span class="lineno">  691</span>&#160;    <span class="keyword">typedef</span> <span class="keyword">enum</span> <a class="code" href="group__tnoise.html#ga9253d111035d4a83996ec5bbfd3d8963">NoiseType</a> <a class="code" href="group__tnoise.html#ga9253d111035d4a83996ec5bbfd3d8963">NoiseType</a>;</div>
<div class="line"><a name="l00692"></a><span class="lineno">  692</span>&#160;    </div>
<div class="line"><a name="l00693"></a><span class="lineno">  693</span>&#160;    <span class="keyword">typedef</span> <span class="keyword">struct </span>_tNoise</div>
<div class="line"><a name="l00694"></a><span class="lineno">  694</span>&#160;    {</div>
<div class="line"><a name="l00695"></a><span class="lineno">  695</span>&#160;        </div>
<div class="line"><a name="l00696"></a><span class="lineno">  696</span>&#160;        tMempool mempool;</div>
<div class="line"><a name="l00697"></a><span class="lineno">  697</span>&#160;        <a class="code" href="group__tnoise.html#ga9253d111035d4a83996ec5bbfd3d8963">NoiseType</a> type;</div>
<div class="line"><a name="l00698"></a><span class="lineno">  698</span>&#160;        <span class="keywordtype">float</span> pinkb0, pinkb1, pinkb2;</div>
<div class="line"><a name="l00699"></a><span class="lineno">  699</span>&#160;        float(*rand)(void);</div>
<div class="line"><a name="l00700"></a><span class="lineno">  700</span>&#160;    } _tNoise;</div>
<div class="line"><a name="l00701"></a><span class="lineno">  701</span>&#160;    </div>
<div class="line"><a name="l00702"></a><span class="lineno">  702</span>&#160;    <span class="keyword">typedef</span> _tNoise* tNoise;</div>
<div class="line"><a name="l00703"></a><span class="lineno">  703</span>&#160; </div>
<div class="line"><a name="l00704"></a><span class="lineno">  704</span>&#160;    <span class="keywordtype">void</span>    <a class="code" href="group__tnoise.html#ga4e30b8b212200e17e73b0fb96293c386">tNoise_init</a>         (tNoise* <span class="keyword">const</span> noise, <a class="code" href="group__tnoise.html#ga9253d111035d4a83996ec5bbfd3d8963">NoiseType</a> type, <a class="code" href="struct_l_e_a_f.html">LEAF</a>* <span class="keyword">const</span> leaf);</div>
<div class="line"><a name="l00705"></a><span class="lineno">  705</span>&#160;    <span class="keywordtype">void</span>    <a class="code" href="group__tnoise.html#ga6eec0a5fbc79f448a89258d9b956dfa4">tNoise_initToPool</a>   (tNoise* <span class="keyword">const</span> noise, <a class="code" href="group__tnoise.html#ga9253d111035d4a83996ec5bbfd3d8963">NoiseType</a> type, tMempool* <span class="keyword">const</span>);</div>
<div class="line"><a name="l00706"></a><span class="lineno">  706</span>&#160;    <span class="keywordtype">void</span>    <a class="code" href="group__tnoise.html#gab51a77f9ab3888d706ed0fb30cdf217d">tNoise_free</a>         (tNoise* <span class="keyword">const</span> noise);</div>
<div class="line"><a name="l00707"></a><span class="lineno">  707</span>&#160;    </div>
<div class="line"><a name="l00708"></a><span class="lineno">  708</span>&#160;    <span class="keywordtype">float</span>   <a class="code" href="group__tnoise.html#ga867c2ace286c8fdd886f7f9357821330">tNoise_tick</a>         (tNoise* <span class="keyword">const</span> noise);</div>
<div class="line"><a name="l00709"></a><span class="lineno">  709</span>&#160;    </div>
<div class="line"><a name="l00710"></a><span class="lineno">  710</span>&#160;    <span class="comment">//==============================================================================</span></div>
<div class="line"><a name="l00711"></a><span class="lineno">  711</span>&#160;    </div>
<div class="line"><a name="l00793"></a><span class="lineno"><a class="line" href="group__tneuron.html#ga39c8ad8b35bf050f69b21ca34b56cc01">  793</a></span>&#160;    <span class="keyword">enum</span> <a class="code" href="group__tneuron.html#ga39c8ad8b35bf050f69b21ca34b56cc01">NeuronMode</a></div>
<div class="line"><a name="l00794"></a><span class="lineno">  794</span>&#160;    {</div>
<div class="line"><a name="l00795"></a><span class="lineno"><a class="line" href="group__tneuron.html#gga39c8ad8b35bf050f69b21ca34b56cc01acedc049c7a14e2b30b266d88d46b3f76">  795</a></span>&#160;        <a class="code" href="group__tneuron.html#gga39c8ad8b35bf050f69b21ca34b56cc01acedc049c7a14e2b30b266d88d46b3f76">NeuronNormal</a>, </div>
<div class="line"><a name="l00796"></a><span class="lineno"><a class="line" href="group__tneuron.html#gga39c8ad8b35bf050f69b21ca34b56cc01a0f637d7316b91b66dfea6ef832b1d178">  796</a></span>&#160;        <a class="code" href="group__tneuron.html#gga39c8ad8b35bf050f69b21ca34b56cc01a0f637d7316b91b66dfea6ef832b1d178">NeuronTanh</a>, </div>
<div class="line"><a name="l00797"></a><span class="lineno"><a class="line" href="group__tneuron.html#gga39c8ad8b35bf050f69b21ca34b56cc01acdbcb725e463ccad89f2384b1254ab0c">  797</a></span>&#160;        <a class="code" href="group__tneuron.html#gga39c8ad8b35bf050f69b21ca34b56cc01acdbcb725e463ccad89f2384b1254ab0c">NeuronAaltoShaper</a>, </div>
<div class="line"><a name="l00798"></a><span class="lineno">  798</span>&#160;        NeuronModeNil</div>
<div class="line"><a name="l00799"></a><span class="lineno">  799</span>&#160;    };</div>
<div class="line"><a name="l00800"></a><span class="lineno">  800</span>&#160;    </div>
<div class="line"><a name="l00803"></a><span class="lineno">  803</span>&#160;    <span class="keyword">typedef</span> <span class="keyword">enum</span> <a class="code" href="group__tneuron.html#ga39c8ad8b35bf050f69b21ca34b56cc01">NeuronMode</a> <a class="code" href="group__tneuron.html#ga39c8ad8b35bf050f69b21ca34b56cc01">NeuronMode</a>;</div>
<div class="line"><a name="l00804"></a><span class="lineno">  804</span>&#160;    </div>
<div class="line"><a name="l00805"></a><span class="lineno">  805</span>&#160;    <span class="keyword">typedef</span> <span class="keyword">struct </span>_tNeuron</div>
<div class="line"><a name="l00806"></a><span class="lineno">  806</span>&#160;    {</div>
<div class="line"><a name="l00807"></a><span class="lineno">  807</span>&#160;        tMempool mempool;</div>
<div class="line"><a name="l00808"></a><span class="lineno">  808</span>&#160;        </div>
<div class="line"><a name="l00809"></a><span class="lineno">  809</span>&#160;        tPoleZero f;</div>
<div class="line"><a name="l00810"></a><span class="lineno">  810</span>&#160;        </div>
<div class="line"><a name="l00811"></a><span class="lineno">  811</span>&#160;        <a class="code" href="group__tneuron.html#ga39c8ad8b35bf050f69b21ca34b56cc01">NeuronMode</a> mode;</div>
<div class="line"><a name="l00812"></a><span class="lineno">  812</span>&#160;        </div>
<div class="line"><a name="l00813"></a><span class="lineno">  813</span>&#160;        <span class="keywordtype">float</span> voltage, current;</div>
<div class="line"><a name="l00814"></a><span class="lineno">  814</span>&#160;        <span class="keywordtype">float</span> timeStep;</div>
<div class="line"><a name="l00815"></a><span class="lineno">  815</span>&#160;        </div>
<div class="line"><a name="l00816"></a><span class="lineno">  816</span>&#160;        <span class="keywordtype">float</span> alpha[3];</div>
<div class="line"><a name="l00817"></a><span class="lineno">  817</span>&#160;        <span class="keywordtype">float</span> beta[3];</div>
<div class="line"><a name="l00818"></a><span class="lineno">  818</span>&#160;        <span class="keywordtype">float</span> rate[3];</div>
<div class="line"><a name="l00819"></a><span class="lineno">  819</span>&#160;        <span class="keywordtype">float</span> V[3];</div>
<div class="line"><a name="l00820"></a><span class="lineno">  820</span>&#160;        <span class="keywordtype">float</span> P[3];</div>
<div class="line"><a name="l00821"></a><span class="lineno">  821</span>&#160;        <span class="keywordtype">float</span> gK, gN, gL, C;</div>
<div class="line"><a name="l00822"></a><span class="lineno">  822</span>&#160;    } _tNeuron;</div>
<div class="line"><a name="l00823"></a><span class="lineno">  823</span>&#160;    </div>
<div class="line"><a name="l00824"></a><span class="lineno">  824</span>&#160;    <span class="keyword">typedef</span> _tNeuron* tNeuron;</div>
<div class="line"><a name="l00825"></a><span class="lineno">  825</span>&#160;    </div>
<div class="line"><a name="l00826"></a><span class="lineno">  826</span>&#160;    <span class="keywordtype">void</span>    <a class="code" href="group__tneuron.html#gaaf7fb0a50cde5d02085bae982f355d98">tNeuron_init</a>        (tNeuron* <span class="keyword">const</span> neuron, <a class="code" href="struct_l_e_a_f.html">LEAF</a>* <span class="keyword">const</span> leaf);</div>
<div class="line"><a name="l00827"></a><span class="lineno">  827</span>&#160;    <span class="keywordtype">void</span>    <a class="code" href="group__tneuron.html#ga64ec0be41011ffc7fdea5c03359a032c">tNeuron_initToPool</a>  (tNeuron* <span class="keyword">const</span> neuron, tMempool* <span class="keyword">const</span> mempool);</div>
<div class="line"><a name="l00828"></a><span class="lineno">  828</span>&#160;    <span class="keywordtype">void</span>    <a class="code" href="group__tneuron.html#ga8e7767ba34797b6e41cd47fee21a674b">tNeuron_free</a>        (tNeuron* <span class="keyword">const</span> neuron);</div>
<div class="line"><a name="l00829"></a><span class="lineno">  829</span>&#160;    </div>
<div class="line"><a name="l00830"></a><span class="lineno">  830</span>&#160;    <span class="keywordtype">void</span>    <a class="code" href="group__tneuron.html#ga3e37f3a7de15a04e697f52cb72a5b094">tNeuron_reset</a>       (tNeuron* <span class="keyword">const</span> neuron);</div>
<div class="line"><a name="l00831"></a><span class="lineno">  831</span>&#160;    <span class="keywordtype">float</span>   <a class="code" href="group__tneuron.html#gacbbb031eee9c36e21e24e54b43290bc0">tNeuron_tick</a>        (tNeuron* <span class="keyword">const</span> neuron);</div>
<div class="line"><a name="l00832"></a><span class="lineno">  832</span>&#160;    <span class="keywordtype">void</span>    <a class="code" href="group__tneuron.html#gad69adcd45e4dabc947fabbc9baf7d849">tNeuron_setMode</a>     (tNeuron* <span class="keyword">const</span> neuron, <a class="code" href="group__tneuron.html#ga39c8ad8b35bf050f69b21ca34b56cc01">NeuronMode</a> mode);</div>
<div class="line"><a name="l00833"></a><span class="lineno">  833</span>&#160;    <span class="keywordtype">void</span>    <a class="code" href="group__tneuron.html#gad683dcc57adbc4e94baedae51005f5a9">tNeuron_setCurrent</a>  (tNeuron* <span class="keyword">const</span> neuron, <span class="keywordtype">float</span> current);</div>
<div class="line"><a name="l00834"></a><span class="lineno">  834</span>&#160;    <span class="keywordtype">void</span>    <a class="code" href="group__tneuron.html#ga933040791b44ff8d7ada7aa825c48935">tNeuron_setK</a>        (tNeuron* <span class="keyword">const</span> neuron, <span class="keywordtype">float</span> K);</div>
<div class="line"><a name="l00835"></a><span class="lineno">  835</span>&#160;    <span class="keywordtype">void</span>    <a class="code" href="group__tneuron.html#ga0813977adaef8fa375c5b0f5e59908b6">tNeuron_setL</a>        (tNeuron* <span class="keyword">const</span> neuron, <span class="keywordtype">float</span> L);</div>
<div class="line"><a name="l00836"></a><span class="lineno">  836</span>&#160;    <span class="keywordtype">void</span>    <a class="code" href="group__tneuron.html#ga1969098711805e2b8a68bc115bb113d5">tNeuron_setN</a>        (tNeuron* <span class="keyword">const</span> neuron, <span class="keywordtype">float</span> N);</div>
<div class="line"><a name="l00837"></a><span class="lineno">  837</span>&#160;    <span class="keywordtype">void</span>    <a class="code" href="group__tneuron.html#gad67b6b0f22c03de1995e07bbf422c111">tNeuron_setC</a>        (tNeuron* <span class="keyword">const</span> neuron, <span class="keywordtype">float</span> C);</div>
<div class="line"><a name="l00838"></a><span class="lineno">  838</span>&#160;    <span class="keywordtype">void</span>    <a class="code" href="group__tneuron.html#ga0f4241ab21570d8accef6cdb468f24c1">tNeuron_setV1</a>       (tNeuron* <span class="keyword">const</span> neuron, <span class="keywordtype">float</span> V1);</div>
<div class="line"><a name="l00839"></a><span class="lineno">  839</span>&#160;    <span class="keywordtype">void</span>    <a class="code" href="group__tneuron.html#ga7bc12acf05b0763e80945808cf76102d">tNeuron_setV2</a>       (tNeuron* <span class="keyword">const</span> neuron, <span class="keywordtype">float</span> V2);</div>
<div class="line"><a name="l00840"></a><span class="lineno">  840</span>&#160;    <span class="keywordtype">void</span>    <a class="code" href="group__tneuron.html#ga49e7f07a28b9e12d1fd9ed9dda6fd88d">tNeuron_setV3</a>       (tNeuron* <span class="keyword">const</span> neuron, <span class="keywordtype">float</span> V3);</div>
<div class="line"><a name="l00841"></a><span class="lineno">  841</span>&#160;    <span class="keywordtype">void</span>    <a class="code" href="group__tneuron.html#ga92c05fe0216beaf2a430bf45898c46d5">tNeuron_setTimeStep</a> (tNeuron* <span class="keyword">const</span> neuron, <span class="keywordtype">float</span> timestep);</div>
<div class="line"><a name="l00842"></a><span class="lineno">  842</span>&#160;    </div>
<div class="line"><a name="l00843"></a><span class="lineno">  843</span>&#160; </div>
<div class="line"><a name="l00844"></a><span class="lineno">  844</span>&#160;    </div>
<div class="line"><a name="l00845"></a><span class="lineno">  845</span>&#160;    <span class="comment">//==============================================================================</span></div>
<div class="line"><a name="l00846"></a><span class="lineno">  846</span>&#160;    </div>
<div class="line"><a name="l00847"></a><span class="lineno">  847</span>&#160;    </div>
<div class="line"><a name="l00848"></a><span class="lineno">  848</span>&#160;<span class="preprocessor">#define FILLEN 256</span></div>
<div class="line"><a name="l00849"></a><span class="lineno">  849</span>&#160;    </div>
<div class="line"><a name="l00890"></a><span class="lineno">  890</span>&#160;    <span class="keyword">typedef</span> <span class="keyword">struct </span>_tMBPulse</div>
<div class="line"><a name="l00891"></a><span class="lineno">  891</span>&#160;    {</div>
<div class="line"><a name="l00892"></a><span class="lineno">  892</span>&#160;        </div>
<div class="line"><a name="l00893"></a><span class="lineno">  893</span>&#160;        tMempool mempool;</div>
<div class="line"><a name="l00894"></a><span class="lineno">  894</span>&#160;        <span class="keywordtype">float</span>    out;</div>
<div class="line"><a name="l00895"></a><span class="lineno">  895</span>&#160;        <span class="keywordtype">float</span>    amp;</div>
<div class="line"><a name="l00896"></a><span class="lineno">  896</span>&#160;        <span class="keywordtype">float</span>    last_amp;</div>
<div class="line"><a name="l00897"></a><span class="lineno">  897</span>&#160;        <span class="keywordtype">float</span>    freq;</div>
<div class="line"><a name="l00898"></a><span class="lineno">  898</span>&#160;        <span class="keywordtype">float</span>    waveform;    <span class="comment">// duty cycle, must be in [-1, 1]</span></div>
<div class="line"><a name="l00899"></a><span class="lineno">  899</span>&#160;        <span class="keywordtype">float</span>    lastsyncin;</div>
<div class="line"><a name="l00900"></a><span class="lineno">  900</span>&#160;        <span class="keywordtype">float</span>    sync;</div>
<div class="line"><a name="l00901"></a><span class="lineno">  901</span>&#160;        <span class="keywordtype">float</span>    syncdir;</div>
<div class="line"><a name="l00902"></a><span class="lineno">  902</span>&#160;        <span class="keywordtype">int</span>      softsync;</div>
<div class="line"><a name="l00903"></a><span class="lineno">  903</span>&#160;        <span class="keywordtype">float</span>   _p, _w, _b, _x, _z;</div>
<div class="line"><a name="l00904"></a><span class="lineno">  904</span>&#160;        <span class="keywordtype">float</span>   _f [FILLEN + STEP_DD_PULSE_LENGTH];</div>
<div class="line"><a name="l00905"></a><span class="lineno">  905</span>&#160;        <span class="keywordtype">int</span>     _j, _k;</div>
<div class="line"><a name="l00906"></a><span class="lineno">  906</span>&#160;        <span class="keywordtype">bool</span>    _init;</div>
<div class="line"><a name="l00907"></a><span class="lineno">  907</span>&#160;    } _tMBPulse;</div>
<div class="line"><a name="l00908"></a><span class="lineno">  908</span>&#160;    </div>
<div class="line"><a name="l00909"></a><span class="lineno">  909</span>&#160;    <span class="keyword">typedef</span> _tMBPulse* tMBPulse;</div>
<div class="line"><a name="l00910"></a><span class="lineno">  910</span>&#160;    </div>
<div class="line"><a name="l00911"></a><span class="lineno">  911</span>&#160;    <span class="keywordtype">void</span> <a class="code" href="group__tmbpulse.html#gabd7bb2639349323c56d8e49e1e242a4c">tMBPulse_init</a>(tMBPulse* <span class="keyword">const</span> osc, <a class="code" href="struct_l_e_a_f.html">LEAF</a>* <span class="keyword">const</span> leaf);</div>
<div class="line"><a name="l00912"></a><span class="lineno">  912</span>&#160;    <span class="keywordtype">void</span> <a class="code" href="group__tmbpulse.html#gaa36a0b547fef520a9ba55df50b7bbb70">tMBPulse_initToPool</a>(tMBPulse* <span class="keyword">const</span> osc, tMempool* <span class="keyword">const</span> mempool);</div>
<div class="line"><a name="l00913"></a><span class="lineno">  913</span>&#160;    <span class="keywordtype">void</span> <a class="code" href="group__tmbpulse.html#gac07d7bffe4cc28fb90825b2b1692bd85">tMBPulse_free</a>(tMBPulse* <span class="keyword">const</span> osc);</div>
<div class="line"><a name="l00914"></a><span class="lineno">  914</span>&#160;    </div>
<div class="line"><a name="l00915"></a><span class="lineno">  915</span>&#160;    <span class="keywordtype">float</span> <a class="code" href="group__tmbpulse.html#ga710dd6a7764807029c193cf44c923737">tMBPulse_tick</a>(tMBPulse* <span class="keyword">const</span> osc);</div>
<div class="line"><a name="l00916"></a><span class="lineno">  916</span>&#160;    <span class="keywordtype">void</span> <a class="code" href="group__tmbpulse.html#gacda622592ebee8942e11209e62ee33bc">tMBPulse_setFreq</a>(tMBPulse* <span class="keyword">const</span> osc, <span class="keywordtype">float</span> f);</div>
<div class="line"><a name="l00917"></a><span class="lineno">  917</span>&#160;    <span class="keywordtype">void</span> <a class="code" href="group__tmbpulse.html#ga071f98a4a4981b2d9c2e917c5c5fdb40">tMBPulse_setWidth</a>(tMBPulse* <span class="keyword">const</span> osc, <span class="keywordtype">float</span> w);</div>
<div class="line"><a name="l00918"></a><span class="lineno">  918</span>&#160;    <span class="keywordtype">float</span> <a class="code" href="group__tmbpulse.html#gaad5a223054bcaa4acaa29b8250be175a">tMBPulse_sync</a>(tMBPulse* <span class="keyword">const</span> osc, <span class="keywordtype">float</span> sync);</div>
<div class="line"><a name="l00919"></a><span class="lineno">  919</span>&#160;    <span class="keywordtype">void</span> <a class="code" href="group__tmbpulse.html#ga811cef578e3b37b7154cee390635f8ff">tMBPulse_setSyncMode</a>(tMBPulse* <span class="keyword">const</span> osc, <span class="keywordtype">int</span> hardOrSoft);</div>
<div class="line"><a name="l00920"></a><span class="lineno">  920</span>&#160;    </div>
<div class="line"><a name="l00961"></a><span class="lineno">  961</span>&#160;    <span class="keyword">typedef</span> <span class="keyword">struct </span>_tMBTriangle</div>
<div class="line"><a name="l00962"></a><span class="lineno">  962</span>&#160;    {</div>
<div class="line"><a name="l00963"></a><span class="lineno">  963</span>&#160;        </div>
<div class="line"><a name="l00964"></a><span class="lineno">  964</span>&#160;        tMempool mempool;</div>
<div class="line"><a name="l00965"></a><span class="lineno">  965</span>&#160;        <span class="keywordtype">float</span>    out;</div>
<div class="line"><a name="l00966"></a><span class="lineno">  966</span>&#160;        <span class="keywordtype">float</span>    amp;</div>
<div class="line"><a name="l00967"></a><span class="lineno">  967</span>&#160;        <span class="keywordtype">float</span>    last_amp;</div>
<div class="line"><a name="l00968"></a><span class="lineno">  968</span>&#160;        <span class="keywordtype">float</span>    freq;</div>
<div class="line"><a name="l00969"></a><span class="lineno">  969</span>&#160;        <span class="keywordtype">float</span>    waveform;    <span class="comment">// duty cycle, must be in [-1, 1]</span></div>
<div class="line"><a name="l00970"></a><span class="lineno">  970</span>&#160;        <span class="keywordtype">float</span>    lastsyncin;</div>
<div class="line"><a name="l00971"></a><span class="lineno">  971</span>&#160;        <span class="keywordtype">float</span>    sync;</div>
<div class="line"><a name="l00972"></a><span class="lineno">  972</span>&#160;        <span class="keywordtype">float</span>    syncdir;</div>
<div class="line"><a name="l00973"></a><span class="lineno">  973</span>&#160;        <span class="keywordtype">int</span>      softsync;</div>
<div class="line"><a name="l00974"></a><span class="lineno">  974</span>&#160;        <span class="keywordtype">float</span>   _p, _w, _b, _z;</div>
<div class="line"><a name="l00975"></a><span class="lineno">  975</span>&#160;        <span class="keywordtype">float</span>   _f [FILLEN + LONGEST_DD_PULSE_LENGTH];</div>
<div class="line"><a name="l00976"></a><span class="lineno">  976</span>&#160;        <span class="keywordtype">int</span>     _j, _k;</div>
<div class="line"><a name="l00977"></a><span class="lineno">  977</span>&#160;        <span class="keywordtype">bool</span>    _init;</div>
<div class="line"><a name="l00978"></a><span class="lineno">  978</span>&#160;    } _tMBTriangle;</div>
<div class="line"><a name="l00979"></a><span class="lineno">  979</span>&#160;    </div>
<div class="line"><a name="l00980"></a><span class="lineno">  980</span>&#160;    <span class="keyword">typedef</span> _tMBTriangle* tMBTriangle;</div>
<div class="line"><a name="l00981"></a><span class="lineno">  981</span>&#160;    </div>
<div class="line"><a name="l00982"></a><span class="lineno">  982</span>&#160;    <span class="keywordtype">void</span> <a class="code" href="group__tmbtriangle.html#gaaa43deb9cb1263b048346ddced186ae1">tMBTriangle_init</a>(tMBTriangle* <span class="keyword">const</span> osc, <a class="code" href="struct_l_e_a_f.html">LEAF</a>* <span class="keyword">const</span> leaf);</div>
<div class="line"><a name="l00983"></a><span class="lineno">  983</span>&#160;    <span class="keywordtype">void</span> <a class="code" href="group__tmbtriangle.html#ga1059c905fff781ffc59ffed1fefc3733">tMBTriangle_initToPool</a>(tMBTriangle* <span class="keyword">const</span> osc, tMempool* <span class="keyword">const</span> mempool);</div>
<div class="line"><a name="l00984"></a><span class="lineno">  984</span>&#160;    <span class="keywordtype">void</span> <a class="code" href="group__tmbtriangle.html#ga4a398681a83d517465c1f1373ecdff58">tMBTriangle_free</a>(tMBTriangle* <span class="keyword">const</span> osc);</div>
<div class="line"><a name="l00985"></a><span class="lineno">  985</span>&#160;    </div>
<div class="line"><a name="l00986"></a><span class="lineno">  986</span>&#160;    <span class="keywordtype">float</span> <a class="code" href="group__tmbtriangle.html#gad01e9918a433aae65ec099301edc9e42">tMBTriangle_tick</a>(tMBTriangle* <span class="keyword">const</span> osc);</div>
<div class="line"><a name="l00987"></a><span class="lineno">  987</span>&#160;    <span class="keywordtype">void</span> <a class="code" href="group__tmbtriangle.html#ga2d5a172cbfc2df0d71e9c8732fbe949e">tMBTriangle_setFreq</a>(tMBTriangle* <span class="keyword">const</span> osc, <span class="keywordtype">float</span> f);</div>
<div class="line"><a name="l00988"></a><span class="lineno">  988</span>&#160;    <span class="keywordtype">void</span> <a class="code" href="group__tmbtriangle.html#ga3d1220d479ab00cfdf07eda2bacd6eb6">tMBTriangle_setWidth</a>(tMBTriangle* <span class="keyword">const</span> osc, <span class="keywordtype">float</span> w);</div>
<div class="line"><a name="l00989"></a><span class="lineno">  989</span>&#160;    <span class="keywordtype">float</span> <a class="code" href="group__tmbtriangle.html#ga60f4a0114a677a86b527744f932129e9">tMBTriangle_sync</a>(tMBTriangle* <span class="keyword">const</span> osc, <span class="keywordtype">float</span> sync);</div>
<div class="line"><a name="l00990"></a><span class="lineno">  990</span>&#160;    <span class="keywordtype">void</span> <a class="code" href="group__tmbtriangle.html#gacd55ac167bd943ee44dc703d50c93381">tMBTriangle_setSyncMode</a>(tMBTriangle* <span class="keyword">const</span> osc, <span class="keywordtype">int</span> hardOrSoft);</div>
<div class="line"><a name="l00991"></a><span class="lineno">  991</span>&#160;    </div>
<div class="line"><a name="l00992"></a><span class="lineno">  992</span>&#160;    </div>
<div class="line"><a name="l01033"></a><span class="lineno"> 1033</span>&#160;    <span class="keyword">typedef</span> <span class="keyword">struct </span>_tMBSaw</div>
<div class="line"><a name="l01034"></a><span class="lineno"> 1034</span>&#160;    {</div>
<div class="line"><a name="l01035"></a><span class="lineno"> 1035</span>&#160;        tMempool mempool;</div>
<div class="line"><a name="l01036"></a><span class="lineno"> 1036</span>&#160;        <span class="keywordtype">float</span>    out;</div>
<div class="line"><a name="l01037"></a><span class="lineno"> 1037</span>&#160;        <span class="keywordtype">float</span>    amp;</div>
<div class="line"><a name="l01038"></a><span class="lineno"> 1038</span>&#160;        <span class="keywordtype">float</span>    last_amp;</div>
<div class="line"><a name="l01039"></a><span class="lineno"> 1039</span>&#160;        <span class="keywordtype">float</span>    freq;</div>
<div class="line"><a name="l01040"></a><span class="lineno"> 1040</span>&#160;        <span class="keywordtype">float</span>    lastsyncin;</div>
<div class="line"><a name="l01041"></a><span class="lineno"> 1041</span>&#160;        <span class="keywordtype">float</span>    sync;</div>
<div class="line"><a name="l01042"></a><span class="lineno"> 1042</span>&#160;        <span class="keywordtype">float</span>    syncdir;</div>
<div class="line"><a name="l01043"></a><span class="lineno"> 1043</span>&#160;        <span class="keywordtype">int</span>      softsync;</div>
<div class="line"><a name="l01044"></a><span class="lineno"> 1044</span>&#160;        <span class="keywordtype">float</span>   _p, _w, _z;</div>
<div class="line"><a name="l01045"></a><span class="lineno"> 1045</span>&#160;        <span class="keywordtype">float</span>   _f [FILLEN + STEP_DD_PULSE_LENGTH];</div>
<div class="line"><a name="l01046"></a><span class="lineno"> 1046</span>&#160;        <span class="keywordtype">int</span>     _j;</div>
<div class="line"><a name="l01047"></a><span class="lineno"> 1047</span>&#160;        <span class="keywordtype">bool</span>    _init;</div>
<div class="line"><a name="l01048"></a><span class="lineno"> 1048</span>&#160;    } _tMBSaw;</div>
<div class="line"><a name="l01049"></a><span class="lineno"> 1049</span>&#160;    </div>
<div class="line"><a name="l01050"></a><span class="lineno"> 1050</span>&#160;    <span class="keyword">typedef</span> _tMBSaw* tMBSaw;</div>
<div class="line"><a name="l01051"></a><span class="lineno"> 1051</span>&#160;    </div>
<div class="line"><a name="l01052"></a><span class="lineno"> 1052</span>&#160;    <span class="keywordtype">void</span> <a class="code" href="group__tmbsaw.html#ga4792d509595b94f20e515b077b476884">tMBSaw_init</a>(tMBSaw* <span class="keyword">const</span> osc, <a class="code" href="struct_l_e_a_f.html">LEAF</a>* <span class="keyword">const</span> leaf);</div>
<div class="line"><a name="l01053"></a><span class="lineno"> 1053</span>&#160;    <span class="keywordtype">void</span> <a class="code" href="group__tmbsaw.html#ga9405dbc7af1c8687690e7d31f8e105b5">tMBSaw_initToPool</a>(tMBSaw* <span class="keyword">const</span> osc, tMempool* <span class="keyword">const</span> mempool);</div>
<div class="line"><a name="l01054"></a><span class="lineno"> 1054</span>&#160;    <span class="keywordtype">void</span> <a class="code" href="group__tmbsaw.html#gabf4312918312e89cc6cf9f116ec48a94">tMBSaw_free</a>(tMBSaw* <span class="keyword">const</span> osc);</div>
<div class="line"><a name="l01055"></a><span class="lineno"> 1055</span>&#160;    </div>
<div class="line"><a name="l01056"></a><span class="lineno"> 1056</span>&#160;    <span class="keywordtype">float</span> <a class="code" href="group__tmbsaw.html#ga200361c3174c419e413a2b8b4e988fc4">tMBSaw_tick</a>(tMBSaw* <span class="keyword">const</span> osc);</div>
<div class="line"><a name="l01057"></a><span class="lineno"> 1057</span>&#160;    <span class="keywordtype">void</span> <a class="code" href="group__tmbsaw.html#gaa7e8996e6780f64c5530600d13e68dfa">tMBSaw_setFreq</a>(tMBSaw* <span class="keyword">const</span> osc, <span class="keywordtype">float</span> f);</div>
<div class="line"><a name="l01058"></a><span class="lineno"> 1058</span>&#160;    <span class="keywordtype">float</span> <a class="code" href="group__tmbsaw.html#ga5211205aa57dfe869c9a2c080c8de9ec">tMBSaw_sync</a>(tMBSaw* <span class="keyword">const</span> osc, <span class="keywordtype">float</span> sync);</div>
<div class="line"><a name="l01059"></a><span class="lineno"> 1059</span>&#160;    <span class="keywordtype">void</span> <a class="code" href="group__tmbsaw.html#gac4101f7661f1cde8038ef678b2eb3628">tMBSaw_setSyncMode</a>(tMBSaw* <span class="keyword">const</span> osc, <span class="keywordtype">int</span> hardOrSoft);</div>
<div class="line"><a name="l01060"></a><span class="lineno"> 1060</span>&#160; </div>
<div class="line"><a name="l01061"></a><span class="lineno"> 1061</span>&#160;    </div>
<div class="line"><a name="l01062"></a><span class="lineno"> 1062</span>&#160;<span class="preprocessor">#ifdef __cplusplus</span></div>
<div class="line"><a name="l01063"></a><span class="lineno"> 1063</span>&#160;}</div>
<div class="line"><a name="l01064"></a><span class="lineno"> 1064</span>&#160;<span class="preprocessor">#endif</span></div>
<div class="line"><a name="l01065"></a><span class="lineno"> 1065</span>&#160; </div>
<div class="line"><a name="l01066"></a><span class="lineno"> 1066</span>&#160;<span class="preprocessor">#endif  // LEAF_OSCILLATORS_H_INCLUDED</span></div>
<div class="line"><a name="l01067"></a><span class="lineno"> 1067</span>&#160; </div>
<div class="line"><a name="l01068"></a><span class="lineno"> 1068</span>&#160;<span class="comment">//==============================================================================</span></div>
<div class="line"><a name="l01069"></a><span class="lineno"> 1069</span>&#160; </div>
<div class="line"><a name="l01070"></a><span class="lineno"> 1070</span>&#160; </div>
<div class="line"><a name="l01071"></a><span class="lineno"> 1071</span>&#160; </div>
</div><!-- fragment --></div><!-- contents -->
<div class="ttc" id="agroup__tneuron_html_ga1969098711805e2b8a68bc115bb113d5"><div class="ttname"><a href="group__tneuron.html#ga1969098711805e2b8a68bc115bb113d5">tNeuron_setN</a></div><div class="ttdeci">void tNeuron_setN(tNeuron *const neuron, float N)</div><div class="ttdoc">Set the sodium value.</div><div class="ttdef"><b>Definition:</b> leaf-oscillators.c:1153</div></div>
<div class="ttc" id="agroup__ttriangle_html_gac50568ee121737e782e495e9afd0d523"><div class="ttname"><a href="group__ttriangle.html#gac50568ee121737e782e495e9afd0d523">tTriangle_initToPool</a></div><div class="ttdeci">void tTriangle_initToPool(tTriangle *const osc, tMempool *const mempool)</div><div class="ttdoc">Initialize a tTriangle to a specified mempool.</div><div class="ttdef"><b>Definition:</b> leaf-oscillators.c:471</div></div>
<div class="ttc" id="agroup__tneuron_html_ga39c8ad8b35bf050f69b21ca34b56cc01"><div class="ttname"><a href="group__tneuron.html#ga39c8ad8b35bf050f69b21ca34b56cc01">NeuronMode</a></div><div class="ttdeci">NeuronMode</div><div class="ttdef"><b>Definition:</b> leaf-oscillators.h:793</div></div>
<div class="ttc" id="agroup__tmbsaw_html_ga9405dbc7af1c8687690e7d31f8e105b5"><div class="ttname"><a href="group__tmbsaw.html#ga9405dbc7af1c8687690e7d31f8e105b5">tMBSaw_initToPool</a></div><div class="ttdeci">void tMBSaw_initToPool(tMBSaw *const osc, tMempool *const mempool)</div><div class="ttdoc">Initialize a tMBSaw to a specified mempool.</div><div class="ttdef"><b>Definition:</b> leaf-oscillators.c:1853</div></div>
<div class="ttc" id="agroup__tnoise_html_ga4e30b8b212200e17e73b0fb96293c386"><div class="ttname"><a href="group__tnoise.html#ga4e30b8b212200e17e73b0fb96293c386">tNoise_init</a></div><div class="ttdeci">void tNoise_init(tNoise *const noise, NoiseType type, LEAF *const leaf)</div><div class="ttdoc">Initialize a tNoise to the default mempool of a LEAF instance.</div><div class="ttdef"><b>Definition:</b> leaf-oscillators.c:988</div></div>
<div class="ttc" id="agroup__tnoise_html_ga6eec0a5fbc79f448a89258d9b956dfa4"><div class="ttname"><a href="group__tnoise.html#ga6eec0a5fbc79f448a89258d9b956dfa4">tNoise_initToPool</a></div><div class="ttdeci">void tNoise_initToPool(tNoise *const noise, NoiseType type, tMempool *const)</div><div class="ttdoc">Initialize a tNoise to a specified mempool.</div><div class="ttdef"><b>Definition:</b> leaf-oscillators.c:993</div></div>
<div class="ttc" id="agroup__tsawtooth_html_ga32ba208b6c4745587d267598702aaf02"><div class="ttname"><a href="group__tsawtooth.html#ga32ba208b6c4745587d267598702aaf02">tSawtooth_free</a></div><div class="ttdeci">void tSawtooth_free(tSawtooth *const osc)</div><div class="ttdoc">Free a tSawtooth from its mempool.</div><div class="ttdef"><b>Definition:</b> leaf-oscillators.c:667</div></div>
<div class="ttc" id="agroup__ttable_html_ga34f0802957415853e9dc64b7fa9355eb"><div class="ttname"><a href="group__ttable.html#ga34f0802957415853e9dc64b7fa9355eb">tTable_init</a></div><div class="ttdeci">void tTable_init(tTable *const osc, float *table, int size, LEAF *const leaf)</div><div class="ttdoc">Initialize a tTable to the default mempool of a LEAF instance.</div><div class="ttdef"><b>Definition:</b> leaf-oscillators.c:20</div></div>
<div class="ttc" id="agroup__tpbpulse_html_ga6ac8de9bbd2c97c9528b1063b34c1e18"><div class="ttname"><a href="group__tpbpulse.html#ga6ac8de9bbd2c97c9528b1063b34c1e18">tPBPulse_free</a></div><div class="ttdeci">void tPBPulse_free(tPBPulse *const osc)</div><div class="ttdoc">Free a tPBPulse from its mempool.</div><div class="ttdef"><b>Definition:</b> leaf-oscillators.c:833</div></div>
<div class="ttc" id="agroup__tsquare_html_gacaaa2bf1d76371d9b4aeda286a09560f"><div class="ttname"><a href="group__tsquare.html#gacaaa2bf1d76371d9b4aeda286a09560f">tSquare_init</a></div><div class="ttdeci">void tSquare_init(tSquare *const osc, LEAF *const leaf)</div><div class="ttdoc">Initialize a tSquare to the default mempool of a LEAF instance.</div><div class="ttdef"><b>Definition:</b> leaf-oscillators.c:559</div></div>
<div class="ttc" id="agroup__tmbpulse_html_gaad5a223054bcaa4acaa29b8250be175a"><div class="ttname"><a href="group__tmbpulse.html#gaad5a223054bcaa4acaa29b8250be175a">tMBPulse_sync</a></div><div class="ttdeci">float tMBPulse_sync(tMBPulse *const osc, float sync)</div><div class="ttdef"><b>Definition:</b> leaf-oscillators.c:1528</div></div>
<div class="ttc" id="agroup__ttriangle_html_ga036ec99241852ea7336a3a7e8bcd2fc7"><div class="ttname"><a href="group__ttriangle.html#ga036ec99241852ea7336a3a7e8bcd2fc7">tTriangle_tick</a></div><div class="ttdeci">float tTriangle_tick(tTriangle *const osc)</div><div class="ttdoc">Tick a tTriangle oscillator.</div><div class="ttdef"><b>Definition:</b> leaf-oscillators.c:510</div></div>
<div class="ttc" id="agroup__tneuron_html_ga64ec0be41011ffc7fdea5c03359a032c"><div class="ttname"><a href="group__tneuron.html#ga64ec0be41011ffc7fdea5c03359a032c">tNeuron_initToPool</a></div><div class="ttdeci">void tNeuron_initToPool(tNeuron *const neuron, tMempool *const mempool)</div><div class="ttdoc">Initialize a tNeuron to a specified mempool.</div><div class="ttdef"><b>Definition:</b> leaf-oscillators.c:1045</div></div>
<div class="ttc" id="agroup__tneuron_html_gad67b6b0f22c03de1995e07bbf422c111"><div class="ttname"><a href="group__tneuron.html#gad67b6b0f22c03de1995e07bbf422c111">tNeuron_setC</a></div><div class="ttdeci">void tNeuron_setC(tNeuron *const neuron, float C)</div><div class="ttdoc">Set the calcium value.</div><div class="ttdef"><b>Definition:</b> leaf-oscillators.c:1159</div></div>
<div class="ttc" id="agroup__tneuron_html_ga7bc12acf05b0763e80945808cf76102d"><div class="ttname"><a href="group__tneuron.html#ga7bc12acf05b0763e80945808cf76102d">tNeuron_setV2</a></div><div class="ttdeci">void tNeuron_setV2(tNeuron *const neuron, float V2)</div><div class="ttdoc">Set the V2 value.</div><div class="ttdef"><b>Definition:</b> leaf-oscillators.c:1122</div></div>
<div class="ttc" id="agroup__tneuron_html_ga3e37f3a7de15a04e697f52cb72a5b094"><div class="ttname"><a href="group__tneuron.html#ga3e37f3a7de15a04e697f52cb72a5b094">tNeuron_reset</a></div><div class="ttdeci">void tNeuron_reset(tNeuron *const neuron)</div><div class="ttdoc">Reset the neuron model.</div><div class="ttdef"><b>Definition:</b> leaf-oscillators.c:1086</div></div>
<div class="ttc" id="agroup__tneuron_html_gad683dcc57adbc4e94baedae51005f5a9"><div class="ttname"><a href="group__tneuron.html#gad683dcc57adbc4e94baedae51005f5a9">tNeuron_setCurrent</a></div><div class="ttdeci">void tNeuron_setCurrent(tNeuron *const neuron, float current)</div><div class="ttdoc">Set the current.</div><div class="ttdef"><b>Definition:</b> leaf-oscillators.c:1248</div></div>
<div class="ttc" id="agroup__tpbtriangle_html_ga18e46643c83591dc1420d870b13a666e"><div class="ttname"><a href="group__tpbtriangle.html#ga18e46643c83591dc1420d870b13a666e">tPBTriangle_setSkew</a></div><div class="ttdeci">void tPBTriangle_setSkew(tPBTriangle *const osc, float skew)</div><div class="ttdef"><b>Definition:</b> leaf-oscillators.c:807</div></div>
<div class="ttc" id="agroup__tmbsaw_html_ga5211205aa57dfe869c9a2c080c8de9ec"><div class="ttname"><a href="group__tmbsaw.html#ga5211205aa57dfe869c9a2c080c8de9ec">tMBSaw_sync</a></div><div class="ttdeci">float tMBSaw_sync(tMBSaw *const osc, float sync)</div><div class="ttdoc">Sync this oscillator to another signal.</div><div class="ttdef"><b>Definition:</b> leaf-oscillators.c:1982</div></div>
<div class="ttc" id="agroup__tphasor_html_ga7b98ada7d63395e6796a9ddeb1dd69d2"><div class="ttname"><a href="group__tphasor.html#ga7b98ada7d63395e6796a9ddeb1dd69d2">tPhasor_initToPool</a></div><div class="ttdeci">void tPhasor_initToPool(tPhasor *const osc, tMempool *const)</div><div class="ttdoc">Initialize a tPhasor to a specified mempool.</div><div class="ttdef"><b>Definition:</b> leaf-oscillators.c:937</div></div>
<div class="ttc" id="agroup__tneuron_html_ga0f4241ab21570d8accef6cdb468f24c1"><div class="ttname"><a href="group__tneuron.html#ga0f4241ab21570d8accef6cdb468f24c1">tNeuron_setV1</a></div><div class="ttdeci">void tNeuron_setV1(tNeuron *const neuron, float V1)</div><div class="ttdoc">Set the V1 value.</div><div class="ttdef"><b>Definition:</b> leaf-oscillators.c:1115</div></div>
<div class="ttc" id="agroup__tphasor_html_ga9a1e7b8a8f9bbcb74d52b95cf0ec1d6e"><div class="ttname"><a href="group__tphasor.html#ga9a1e7b8a8f9bbcb74d52b95cf0ec1d6e">tPhasor_tick</a></div><div class="ttdeci">float tPhasor_tick(tPhasor *const osc)</div><div class="ttdef"><b>Definition:</b> leaf-oscillators.c:966</div></div>
<div class="ttc" id="agroup__tcycle_html_ga3ae2b653f390bdacdfe952e22a7aa5c4"><div class="ttname"><a href="group__tcycle.html#ga3ae2b653f390bdacdfe952e22a7aa5c4">tCycle_init</a></div><div class="ttdeci">void tCycle_init(tCycle *const osc, LEAF *const leaf)</div><div class="ttdoc">Initialize a tCycle to the default mempool of a LEAF instance.</div><div class="ttdef"><b>Definition:</b> leaf-oscillators.c:391</div></div>
<div class="ttc" id="agroup__tsquare_html_ga4453bd8e23b1b88ec944c93b8cb575f6"><div class="ttname"><a href="group__tsquare.html#ga4453bd8e23b1b88ec944c93b8cb575f6">tSquare_setFreq</a></div><div class="ttdeci">void tSquare_setFreq(tSquare *const osc, float freq)</div><div class="ttdoc">Set the frequency of a tSquare oscillator.</div><div class="ttdef"><b>Definition:</b> leaf-oscillators.c:582</div></div>
<div class="ttc" id="agroup__tcompactwavetable_html_ga49955d040284b3e1a40f2288cb89c54d"><div class="ttname"><a href="group__tcompactwavetable.html#ga49955d040284b3e1a40f2288cb89c54d">tCompactWavetable_setFreq</a></div><div class="ttdeci">void tCompactWavetable_setFreq(tCompactWavetable *const osc, float freq)</div><div class="ttdoc">Set the frequency of a tCompactWavetable oscillator.</div><div class="ttdef"><b>Definition:</b> leaf-oscillators.c:359</div></div>
<div class="ttc" id="agroup__tmbtriangle_html_ga2d5a172cbfc2df0d71e9c8732fbe949e"><div class="ttname"><a href="group__tmbtriangle.html#ga2d5a172cbfc2df0d71e9c8732fbe949e">tMBTriangle_setFreq</a></div><div class="ttdeci">void tMBTriangle_setFreq(tMBTriangle *const osc, float f)</div><div class="ttdef"><b>Definition:</b> leaf-oscillators.c:1811</div></div>
<div class="ttc" id="agroup__tmbpulse_html_gaa36a0b547fef520a9ba55df50b7bbb70"><div class="ttname"><a href="group__tmbpulse.html#gaa36a0b547fef520a9ba55df50b7bbb70">tMBPulse_initToPool</a></div><div class="ttdeci">void tMBPulse_initToPool(tMBPulse *const osc, tMempool *const mempool)</div><div class="ttdoc">Initialize a tMBPulse to a specified mempool.</div><div class="ttdef"><b>Definition:</b> leaf-oscillators.c:1263</div></div>
<div class="ttc" id="agroup__twavetable_html_gad22ca7b75e09dd860286215aed1711b9"><div class="ttname"><a href="group__twavetable.html#gad22ca7b75e09dd860286215aed1711b9">tWavetable_tick</a></div><div class="ttdeci">float tWavetable_tick(tWavetable *const osc)</div><div class="ttdoc">Tick a tWavetable oscillator.</div><div class="ttdef"><b>Definition:</b> leaf-oscillators.c:172</div></div>
<div class="ttc" id="agroup__tpbpulse_html_gab32a37dc71636bc09ee394d645be2c09"><div class="ttname"><a href="group__tpbpulse.html#gab32a37dc71636bc09ee394d645be2c09">tPBPulse_setFreq</a></div><div class="ttdeci">void tPBPulse_setFreq(tPBPulse *const osc, float freq)</div><div class="ttdef"><b>Definition:</b> leaf-oscillators.c:857</div></div>
<div class="ttc" id="agroup__ttable_html_gae75a6c3468ae7801c86867860152117b"><div class="ttname"><a href="group__ttable.html#gae75a6c3468ae7801c86867860152117b">tTable_initToPool</a></div><div class="ttdeci">void tTable_initToPool(tTable *const osc, float *table, int size, tMempool *const mempool)</div><div class="ttdoc">Initialize a tTable to a specified mempool.</div><div class="ttdef"><b>Definition:</b> leaf-oscillators.c:25</div></div>
<div class="ttc" id="agroup__tmbsaw_html_gabf4312918312e89cc6cf9f116ec48a94"><div class="ttname"><a href="group__tmbsaw.html#gabf4312918312e89cc6cf9f116ec48a94">tMBSaw_free</a></div><div class="ttdeci">void tMBSaw_free(tMBSaw *const osc)</div><div class="ttdoc">Free a tMBSaw from its mempool.</div><div class="ttdef"><b>Definition:</b> leaf-oscillators.c:1871</div></div>
<div class="ttc" id="agroup__tmbtriangle_html_ga3d1220d479ab00cfdf07eda2bacd6eb6"><div class="ttname"><a href="group__tmbtriangle.html#ga3d1220d479ab00cfdf07eda2bacd6eb6">tMBTriangle_setWidth</a></div><div class="ttdeci">void tMBTriangle_setWidth(tMBTriangle *const osc, float w)</div><div class="ttdef"><b>Definition:</b> leaf-oscillators.c:1817</div></div>
<div class="ttc" id="agroup__tsawtooth_html_gab096cb0c5c0384b47959d0161d8432e4"><div class="ttname"><a href="group__tsawtooth.html#gab096cb0c5c0384b47959d0161d8432e4">tSawtooth_setFreq</a></div><div class="ttdeci">void tSawtooth_setFreq(tSawtooth *const osc, float freq)</div><div class="ttdoc">Set the frequency of a tSawtooth oscillator.</div><div class="ttdef"><b>Definition:</b> leaf-oscillators.c:674</div></div>
<div class="ttc" id="agroup__tsawtooth_html_ga63ee3403c200358511ffb049a3a93bf2"><div class="ttname"><a href="group__tsawtooth.html#ga63ee3403c200358511ffb049a3a93bf2">tSawtooth_initToPool</a></div><div class="ttdeci">void tSawtooth_initToPool(tSawtooth *const osc, tMempool *const mempool)</div><div class="ttdoc">Initialize a tSawtooth to a specified mempool.</div><div class="ttdef"><b>Definition:</b> leaf-oscillators.c:656</div></div>
<div class="ttc" id="agroup__tneuron_html_ga8e7767ba34797b6e41cd47fee21a674b"><div class="ttname"><a href="group__tneuron.html#ga8e7767ba34797b6e41cd47fee21a674b">tNeuron_free</a></div><div class="ttdeci">void tNeuron_free(tNeuron *const neuron)</div><div class="ttdoc">Free a tNeuron from its mempool.</div><div class="ttdef"><b>Definition:</b> leaf-oscillators.c:1078</div></div>
<div class="ttc" id="agroup__tcycle_html_ga7eeb58e2292483416474bf83bf313deb"><div class="ttname"><a href="group__tcycle.html#ga7eeb58e2292483416474bf83bf313deb">tCycle_setFreq</a></div><div class="ttdeci">void tCycle_setFreq(tCycle *const osc, float freq)</div><div class="ttdoc">Set the frequency of a tCycle oscillator.</div><div class="ttdef"><b>Definition:</b> leaf-oscillators.c:413</div></div>
<div class="ttc" id="agroup__tpbpulse_html_ga4b8b8e7bdc1cd61cf193cdb1c65573eb"><div class="ttname"><a href="group__tpbpulse.html#ga4b8b8e7bdc1cd61cf193cdb1c65573eb">tPBPulse_init</a></div><div class="ttdeci">void tPBPulse_init(tPBPulse *const osc, LEAF *const leaf)</div><div class="ttdoc">Initialize a tPBPulse to the default mempool of a LEAF instance.</div><div class="ttdef"><b>Definition:</b> leaf-oscillators.c:817</div></div>
<div class="ttc" id="agroup__tpbtriangle_html_ga2b0f56aabd9055402aa878929c253c3c"><div class="ttname"><a href="group__tpbtriangle.html#ga2b0f56aabd9055402aa878929c253c3c">tPBTriangle_init</a></div><div class="ttdeci">void tPBTriangle_init(tPBTriangle *const osc, LEAF *const leaf)</div><div class="ttdoc">Initialize a tPBTriangle to the default mempool of a LEAF instance.</div><div class="ttdef"><b>Definition:</b> leaf-oscillators.c:743</div></div>
<div class="ttc" id="agroup__tpbtriangle_html_ga5619d13469f5ffb623597436324adb17"><div class="ttname"><a href="group__tpbtriangle.html#ga5619d13469f5ffb623597436324adb17">tPBTriangle_free</a></div><div class="ttdeci">void tPBTriangle_free(tPBTriangle *const osc)</div><div class="ttdoc">Free a tTri from its mempool.</div><div class="ttdef"><b>Definition:</b> leaf-oscillators.c:760</div></div>
<div class="ttc" id="agroup__ttriangle_html_ga50f2f0c7a69471479484560a94a11fbb"><div class="ttname"><a href="group__ttriangle.html#ga50f2f0c7a69471479484560a94a11fbb">tTriangle_init</a></div><div class="ttdeci">void tTriangle_init(tTriangle *const osc, LEAF *const leaf)</div><div class="ttdoc">Initialize a tTriangle to the default mempool of a LEAF instance.</div><div class="ttdef"><b>Definition:</b> leaf-oscillators.c:466</div></div>
<div class="ttc" id="agroup__tneuron_html_gaaf7fb0a50cde5d02085bae982f355d98"><div class="ttname"><a href="group__tneuron.html#gaaf7fb0a50cde5d02085bae982f355d98">tNeuron_init</a></div><div class="ttdeci">void tNeuron_init(tNeuron *const neuron, LEAF *const leaf)</div><div class="ttdoc">Initialize a tNeuron to the default mempool of a LEAF instance.</div><div class="ttdef"><b>Definition:</b> leaf-oscillators.c:1040</div></div>
<div class="ttc" id="agroup__tmbtriangle_html_ga4a398681a83d517465c1f1373ecdff58"><div class="ttname"><a href="group__tmbtriangle.html#ga4a398681a83d517465c1f1373ecdff58">tMBTriangle_free</a></div><div class="ttdeci">void tMBTriangle_free(tMBTriangle *const osc)</div><div class="ttdoc">Free a tMBTriangle from its mempool.</div><div class="ttdef"><b>Definition:</b> leaf-oscillators.c:1577</div></div>
<div class="ttc" id="agroup__tsawtooth_html_gaa052c9d8e62a198bbaeac892b0d11a7f"><div class="ttname"><a href="group__tsawtooth.html#gaa052c9d8e62a198bbaeac892b0d11a7f">tSawtooth_init</a></div><div class="ttdeci">void tSawtooth_init(tSawtooth *const osc, LEAF *const leaf)</div><div class="ttdoc">Initialize a tSawtooth to the default mempool of a LEAF instance.</div><div class="ttdef"><b>Definition:</b> leaf-oscillators.c:651</div></div>
<div class="ttc" id="agroup__tneuron_html_ga0813977adaef8fa375c5b0f5e59908b6"><div class="ttname"><a href="group__tneuron.html#ga0813977adaef8fa375c5b0f5e59908b6">tNeuron_setL</a></div><div class="ttdeci">void tNeuron_setL(tNeuron *const neuron, float L)</div><div class="ttdoc">Set the chloride value.</div><div class="ttdef"><b>Definition:</b> leaf-oscillators.c:1146</div></div>
<div class="ttc" id="agroup__tmbsaw_html_gac4101f7661f1cde8038ef678b2eb3628"><div class="ttname"><a href="group__tmbsaw.html#gac4101f7661f1cde8038ef678b2eb3628">tMBSaw_setSyncMode</a></div><div class="ttdeci">void tMBSaw_setSyncMode(tMBSaw *const osc, int hardOrSoft)</div><div class="ttdoc">Set the sync behavior of the oscillator.</div><div class="ttdef"><b>Definition:</b> leaf-oscillators.c:1998</div></div>
<div class="ttc" id="agroup__tmbsaw_html_ga200361c3174c419e413a2b8b4e988fc4"><div class="ttname"><a href="group__tmbsaw.html#ga200361c3174c419e413a2b8b4e988fc4">tMBSaw_tick</a></div><div class="ttdeci">float tMBSaw_tick(tMBSaw *const osc)</div><div class="ttdoc">Tick the oscillator.</div><div class="ttdef"><b>Definition:</b> leaf-oscillators.c:1877</div></div>
<div class="ttc" id="agroup__tcycle_html_gacbd4afb6c3307d92e19a8e308ba7540b"><div class="ttname"><a href="group__tcycle.html#gacbd4afb6c3307d92e19a8e308ba7540b">tCycle_initToPool</a></div><div class="ttdeci">void tCycle_initToPool(tCycle *const osc, tMempool *const mempool)</div><div class="ttdoc">Initialize a tCycle to a specified mempool.</div><div class="ttdef"><b>Definition:</b> leaf-oscillators.c:396</div></div>
<div class="ttc" id="agroup__ttable_html_ga2dcff23d9b0e98fd706d4880c766320a"><div class="ttname"><a href="group__ttable.html#ga2dcff23d9b0e98fd706d4880c766320a">tTable_setFreq</a></div><div class="ttdeci">void tTable_setFreq(tTable *const osc, float freq)</div><div class="ttdoc">Set the frequency of a tTable oscillator.</div><div class="ttdef"><b>Definition:</b> leaf-oscillators.c:44</div></div>
<div class="ttc" id="agroup__tcompactwavetable_html_ga31c71e150c921c9c2a6b99b47ed995f5"><div class="ttname"><a href="group__tcompactwavetable.html#ga31c71e150c921c9c2a6b99b47ed995f5">tCompactWavetable_free</a></div><div class="ttdeci">void tCompactWavetable_free(tCompactWavetable *const osc)</div><div class="ttdoc">Free a tCompactWavetable from its mempool.</div><div class="ttdef"><b>Definition:</b> leaf-oscillators.c:309</div></div>
<div class="ttc" id="agroup__tmbtriangle_html_ga60f4a0114a677a86b527744f932129e9"><div class="ttname"><a href="group__tmbtriangle.html#ga60f4a0114a677a86b527744f932129e9">tMBTriangle_sync</a></div><div class="ttdeci">float tMBTriangle_sync(tMBTriangle *const osc, float sync)</div><div class="ttdef"><b>Definition:</b> leaf-oscillators.c:1823</div></div>
<div class="ttc" id="agroup__twavetable_html_gaf397a73fa707667cb0038b1be42896f1"><div class="ttname"><a href="group__twavetable.html#gaf397a73fa707667cb0038b1be42896f1">tWavetable_setFreq</a></div><div class="ttdeci">void tWavetable_setFreq(tWavetable *const osc, float freq)</div><div class="ttdoc">Set the frequency of a tWavetable oscillator.</div><div class="ttdef"><b>Definition:</b> leaf-oscillators.c:208</div></div>
<div class="ttc" id="agroup__tcycle_html_ga4fd599981f6caf87720db3a9811716cf"><div class="ttname"><a href="group__tcycle.html#ga4fd599981f6caf87720db3a9811716cf">tCycle_tick</a></div><div class="ttdeci">float tCycle_tick(tCycle *const osc)</div><div class="ttdoc">Tick a tCycle oscillator.</div><div class="ttdef"><b>Definition:</b> leaf-oscillators.c:427</div></div>
<div class="ttc" id="agroup__twavetable_html_ga54957a54c5f86392dc8b3105668425e5"><div class="ttname"><a href="group__twavetable.html#ga54957a54c5f86392dc8b3105668425e5">tWavetable_free</a></div><div class="ttdeci">void tWavetable_free(tWavetable *const osc)</div><div class="ttdoc">Free a tWavetable from its mempool.</div><div class="ttdef"><b>Definition:</b> leaf-oscillators.c:160</div></div>
<div class="ttc" id="agroup__tneuron_html_gacbbb031eee9c36e21e24e54b43290bc0"><div class="ttname"><a href="group__tneuron.html#gacbbb031eee9c36e21e24e54b43290bc0">tNeuron_tick</a></div><div class="ttdeci">float tNeuron_tick(tNeuron *const neuron)</div><div class="ttdoc">Tick a tNeuron oscillator.</div><div class="ttdef"><b>Definition:</b> leaf-oscillators.c:1166</div></div>
<div class="ttc" id="agroup__tnoise_html_gga9253d111035d4a83996ec5bbfd3d8963a0793318314019dbf241d6de4e8fcf310"><div class="ttname"><a href="group__tnoise.html#gga9253d111035d4a83996ec5bbfd3d8963a0793318314019dbf241d6de4e8fcf310">PinkNoise</a></div><div class="ttdoc">Pink noise. Inverse frequency-proportional spectrum.</div><div class="ttdef"><b>Definition:</b> leaf-oscillators.h:685</div></div>
<div class="ttc" id="agroup__tpbtriangle_html_gaff99f7e288649632fb504e470b8e0281"><div class="ttname"><a href="group__tpbtriangle.html#gaff99f7e288649632fb504e470b8e0281">tPBTriangle_initToPool</a></div><div class="ttdeci">void tPBTriangle_initToPool(tPBTriangle *const osc, tMempool *const mempool)</div><div class="ttdoc">Initialize a tPBTriangle to a specified mempool.</div><div class="ttdef"><b>Definition:</b> leaf-oscillators.c:748</div></div>
<div class="ttc" id="agroup__tsquare_html_gad9c41ce10b6b0c821360f43743544c89"><div class="ttname"><a href="group__tsquare.html#gad9c41ce10b6b0c821360f43743544c89">tSquare_initToPool</a></div><div class="ttdeci">void tSquare_initToPool(tSquare *const osc, tMempool *const)</div><div class="ttdoc">Initialize a tSquare to a specified mempool.</div><div class="ttdef"><b>Definition:</b> leaf-oscillators.c:564</div></div>
<div class="ttc" id="agroup__tmbpulse_html_gabd7bb2639349323c56d8e49e1e242a4c"><div class="ttname"><a href="group__tmbpulse.html#gabd7bb2639349323c56d8e49e1e242a4c">tMBPulse_init</a></div><div class="ttdeci">void tMBPulse_init(tMBPulse *const osc, LEAF *const leaf)</div><div class="ttdoc">Initialize a tMBPulse to the default mempool of a LEAF instance.</div><div class="ttdef"><b>Definition:</b> leaf-oscillators.c:1258</div></div>
<div class="ttc" id="agroup__tneuron_html_gga39c8ad8b35bf050f69b21ca34b56cc01acdbcb725e463ccad89f2384b1254ab0c"><div class="ttname"><a href="group__tneuron.html#gga39c8ad8b35bf050f69b21ca34b56cc01acdbcb725e463ccad89f2384b1254ab0c">NeuronAaltoShaper</a></div><div class="ttdoc">Aalto voltage shaping.</div><div class="ttdef"><b>Definition:</b> leaf-oscillators.h:797</div></div>
<div class="ttc" id="agroup__tpbpulse_html_ga8e65e57d726e906cc346ab8e27f49623"><div class="ttname"><a href="group__tpbpulse.html#ga8e65e57d726e906cc346ab8e27f49623">tPBPulse_setWidth</a></div><div class="ttdeci">void tPBPulse_setWidth(tPBPulse *const osc, float width)</div><div class="ttdef"><b>Definition:</b> leaf-oscillators.c:866</div></div>
<div class="ttc" id="agroup__tmbpulse_html_ga071f98a4a4981b2d9c2e917c5c5fdb40"><div class="ttname"><a href="group__tmbpulse.html#ga071f98a4a4981b2d9c2e917c5c5fdb40">tMBPulse_setWidth</a></div><div class="ttdeci">void tMBPulse_setWidth(tMBPulse *const osc, float w)</div><div class="ttdef"><b>Definition:</b> leaf-oscillators.c:1522</div></div>
<div class="ttc" id="agroup__tpbpulse_html_ga7aaad9740d3c09fc4824163c6ad0c80d"><div class="ttname"><a href="group__tpbpulse.html#ga7aaad9740d3c09fc4824163c6ad0c80d">tPBPulse_tick</a></div><div class="ttdeci">float tPBPulse_tick(tPBPulse *const osc)</div><div class="ttdef"><b>Definition:</b> leaf-oscillators.c:840</div></div>
<div class="ttc" id="agroup__tnoise_html_gab51a77f9ab3888d706ed0fb30cdf217d"><div class="ttname"><a href="group__tnoise.html#gab51a77f9ab3888d706ed0fb30cdf217d">tNoise_free</a></div><div class="ttdeci">void tNoise_free(tNoise *const noise)</div><div class="ttdoc">Free a tNoise from its mempool.</div><div class="ttdef"><b>Definition:</b> leaf-oscillators.c:1004</div></div>
<div class="ttc" id="agroup__tneuron_html_ga933040791b44ff8d7ada7aa825c48935"><div class="ttname"><a href="group__tneuron.html#ga933040791b44ff8d7ada7aa825c48935">tNeuron_setK</a></div><div class="ttdeci">void tNeuron_setK(tNeuron *const neuron, float K)</div><div class="ttdoc">Set the potassium value.</div><div class="ttdef"><b>Definition:</b> leaf-oscillators.c:1140</div></div>
<div class="ttc" id="agroup__ttriangle_html_ga02f6034d5442b55d1beda63fe7918fcb"><div class="ttname"><a href="group__ttriangle.html#ga02f6034d5442b55d1beda63fe7918fcb">tTriangle_setFreq</a></div><div class="ttdeci">void tTriangle_setFreq(tTriangle *const osc, float freq)</div><div class="ttdoc">Set the frequency of a tTriangle oscillator.</div><div class="ttdef"><b>Definition:</b> leaf-oscillators.c:489</div></div>
<div class="ttc" id="agroup__tneuron_html_gad69adcd45e4dabc947fabbc9baf7d849"><div class="ttname"><a href="group__tneuron.html#gad69adcd45e4dabc947fabbc9baf7d849">tNeuron_setMode</a></div><div class="ttdeci">void tNeuron_setMode(tNeuron *const neuron, NeuronMode mode)</div><div class="ttdoc">Set the tNeuron shaping mode.</div><div class="ttdef"><b>Definition:</b> leaf-oscillators.c:1242</div></div>
<div class="ttc" id="agroup__tneuron_html_gga39c8ad8b35bf050f69b21ca34b56cc01a0f637d7316b91b66dfea6ef832b1d178"><div class="ttname"><a href="group__tneuron.html#gga39c8ad8b35bf050f69b21ca34b56cc01a0f637d7316b91b66dfea6ef832b1d178">NeuronTanh</a></div><div class="ttdoc">Tanh voltage shaping.</div><div class="ttdef"><b>Definition:</b> leaf-oscillators.h:796</div></div>
<div class="ttc" id="agroup__tpbsaw_html_ga7e1f3a7848d2bcdab21f6cfe2e476bdc"><div class="ttname"><a href="group__tpbsaw.html#ga7e1f3a7848d2bcdab21f6cfe2e476bdc">tPBSaw_setFreq</a></div><div class="ttdeci">void tPBSaw_setFreq(tPBSaw *const osc, float freq)</div><div class="ttdef"><b>Definition:</b> leaf-oscillators.c:912</div></div>
<div class="ttc" id="agroup__tmbtriangle_html_gaaa43deb9cb1263b048346ddced186ae1"><div class="ttname"><a href="group__tmbtriangle.html#gaaa43deb9cb1263b048346ddced186ae1">tMBTriangle_init</a></div><div class="ttdeci">void tMBTriangle_init(tMBTriangle *const osc, LEAF *const leaf)</div><div class="ttdoc">Initialize a tMBTriangle to the default mempool of a LEAF instance.</div><div class="ttdef"><b>Definition:</b> leaf-oscillators.c:1553</div></div>
<div class="ttc" id="agroup__tmbpulse_html_ga710dd6a7764807029c193cf44c923737"><div class="ttname"><a href="group__tmbpulse.html#ga710dd6a7764807029c193cf44c923737">tMBPulse_tick</a></div><div class="ttdeci">float tMBPulse_tick(tMBPulse *const osc)</div><div class="ttdef"><b>Definition:</b> leaf-oscillators.c:1288</div></div>
<div class="ttc" id="agroup__tcompactwavetable_html_ga3057038710e1b064968f8d290e753e5f"><div class="ttname"><a href="group__tcompactwavetable.html#ga3057038710e1b064968f8d290e753e5f">tCompactWavetable_tick</a></div><div class="ttdeci">float tCompactWavetable_tick(tCompactWavetable *const osc)</div><div class="ttdoc">Tick a tCompactWavetable oscillator.</div><div class="ttdef"><b>Definition:</b> leaf-oscillators.c:322</div></div>
<div class="ttc" id="agroup__tphasor_html_gae86aae9fa656c303dc02fabacd4bf9a9"><div class="ttname"><a href="group__tphasor.html#gae86aae9fa656c303dc02fabacd4bf9a9">tPhasor_free</a></div><div class="ttdeci">void tPhasor_free(tPhasor *const osc)</div><div class="ttdoc">Free a tPhasor from its mempool.</div><div class="ttdef"><b>Definition:</b> leaf-oscillators.c:948</div></div>
<div class="ttc" id="agroup__tpbtriangle_html_gad3e863c11d2feefb960ad717120ecfac"><div class="ttname"><a href="group__tpbtriangle.html#gad3e863c11d2feefb960ad717120ecfac">tPBTriangle_setFreq</a></div><div class="ttdeci">void tPBTriangle_setFreq(tPBTriangle *const osc, float freq)</div><div class="ttdef"><b>Definition:</b> leaf-oscillators.c:798</div></div>
<div class="ttc" id="agroup__tpbsaw_html_ga406a4319bcbae4c0f0dfaba1d5631328"><div class="ttname"><a href="group__tpbsaw.html#ga406a4319bcbae4c0f0dfaba1d5631328">tPBSaw_tick</a></div><div class="ttdeci">float tPBSaw_tick(tPBSaw *const osc)</div><div class="ttdef"><b>Definition:</b> leaf-oscillators.c:898</div></div>
<div class="ttc" id="agroup__tsquare_html_ga00053831170c826962e4f1aa9d6696e2"><div class="ttname"><a href="group__tsquare.html#ga00053831170c826962e4f1aa9d6696e2">tSquare_tick</a></div><div class="ttdeci">float tSquare_tick(tSquare *const osc)</div><div class="ttdoc">Tick a tSquare oscillator.</div><div class="ttdef"><b>Definition:</b> leaf-oscillators.c:602</div></div>
<div class="ttc" id="agroup__tmbtriangle_html_gad01e9918a433aae65ec099301edc9e42"><div class="ttname"><a href="group__tmbtriangle.html#gad01e9918a433aae65ec099301edc9e42">tMBTriangle_tick</a></div><div class="ttdeci">float tMBTriangle_tick(tMBTriangle *const osc)</div><div class="ttdef"><b>Definition:</b> leaf-oscillators.c:1583</div></div>
<div class="ttc" id="agroup__tmbpulse_html_ga811cef578e3b37b7154cee390635f8ff"><div class="ttname"><a href="group__tmbpulse.html#ga811cef578e3b37b7154cee390635f8ff">tMBPulse_setSyncMode</a></div><div class="ttdeci">void tMBPulse_setSyncMode(tMBPulse *const osc, int hardOrSoft)</div><div class="ttdoc">Set the sync behavior of the oscillator.</div><div class="ttdef"><b>Definition:</b> leaf-oscillators.c:1544</div></div>
<div class="ttc" id="agroup__tmbtriangle_html_ga1059c905fff781ffc59ffed1fefc3733"><div class="ttname"><a href="group__tmbtriangle.html#ga1059c905fff781ffc59ffed1fefc3733">tMBTriangle_initToPool</a></div><div class="ttdeci">void tMBTriangle_initToPool(tMBTriangle *const osc, tMempool *const mempool)</div><div class="ttdoc">Initialize a tMBTriangle to a specified mempool.</div><div class="ttdef"><b>Definition:</b> leaf-oscillators.c:1558</div></div>
<div class="ttc" id="agroup__tpbtriangle_html_gad6e7d2472a27a64cc935d1de321890d4"><div class="ttname"><a href="group__tpbtriangle.html#gad6e7d2472a27a64cc935d1de321890d4">tPBTriangle_tick</a></div><div class="ttdeci">float tPBTriangle_tick(tPBTriangle *const osc)</div><div class="ttdef"><b>Definition:</b> leaf-oscillators.c:767</div></div>
<div class="ttc" id="agroup__tmbpulse_html_gacda622592ebee8942e11209e62ee33bc"><div class="ttname"><a href="group__tmbpulse.html#gacda622592ebee8942e11209e62ee33bc">tMBPulse_setFreq</a></div><div class="ttdeci">void tMBPulse_setFreq(tMBPulse *const osc, float f)</div><div class="ttdef"><b>Definition:</b> leaf-oscillators.c:1516</div></div>
<div class="ttc" id="agroup__tmbsaw_html_ga4792d509595b94f20e515b077b476884"><div class="ttname"><a href="group__tmbsaw.html#ga4792d509595b94f20e515b077b476884">tMBSaw_init</a></div><div class="ttdeci">void tMBSaw_init(tMBSaw *const osc, LEAF *const leaf)</div><div class="ttdoc">Initialize a tMBSaw to the default mempool of a LEAF instance.</div><div class="ttdef"><b>Definition:</b> leaf-oscillators.c:1848</div></div>
<div class="ttc" id="agroup__tcycle_html_gacb267508910aefc3686366ba7f296938"><div class="ttname"><a href="group__tcycle.html#gacb267508910aefc3686366ba7f296938">tCycle_free</a></div><div class="ttdeci">void tCycle_free(tCycle *const osc)</div><div class="ttdoc">Free a tCycle from its mempool.</div><div class="ttdef"><b>Definition:</b> leaf-oscillators.c:406</div></div>
<div class="ttc" id="agroup__tneuron_html_gga39c8ad8b35bf050f69b21ca34b56cc01acedc049c7a14e2b30b266d88d46b3f76"><div class="ttname"><a href="group__tneuron.html#gga39c8ad8b35bf050f69b21ca34b56cc01acedc049c7a14e2b30b266d88d46b3f76">NeuronNormal</a></div><div class="ttdoc">Normal operation.</div><div class="ttdef"><b>Definition:</b> leaf-oscillators.h:795</div></div>
<div class="ttc" id="agroup__tpbsaw_html_gaefe02484a169c2babc92686caa77b211"><div class="ttname"><a href="group__tpbsaw.html#gaefe02484a169c2babc92686caa77b211">tPBSaw_init</a></div><div class="ttdeci">void tPBSaw_init(tPBSaw *const osc, LEAF *const leaf)</div><div class="ttdoc">Initialize a tPBSaw to the default mempool of a LEAF instance.</div><div class="ttdef"><b>Definition:</b> leaf-oscillators.c:876</div></div>
<div class="ttc" id="agroup__ttable_html_ga59f59db52bf98cf1852d7dcd6f09122c"><div class="ttname"><a href="group__ttable.html#ga59f59db52bf98cf1852d7dcd6f09122c">tTable_tick</a></div><div class="ttdeci">float tTable_tick(tTable *const osc)</div><div class="ttdoc">Tick a tTable oscillator.</div><div class="ttdef"><b>Definition:</b> leaf-oscillators.c:56</div></div>
<div class="ttc" id="agroup__tsquare_html_ga1f6fac5cb92fcbca09970b95a2d05d7d"><div class="ttname"><a href="group__tsquare.html#ga1f6fac5cb92fcbca09970b95a2d05d7d">tSquare_free</a></div><div class="ttdeci">void tSquare_free(tSquare *const osc)</div><div class="ttdoc">Free a tSquare from its mempool.</div><div class="ttdef"><b>Definition:</b> leaf-oscillators.c:575</div></div>
<div class="ttc" id="agroup__tneuron_html_ga49e7f07a28b9e12d1fd9ed9dda6fd88d"><div class="ttname"><a href="group__tneuron.html#ga49e7f07a28b9e12d1fd9ed9dda6fd88d">tNeuron_setV3</a></div><div class="ttdeci">void tNeuron_setV3(tNeuron *const neuron, float V3)</div><div class="ttdoc">Set the V3 value.</div><div class="ttdef"><b>Definition:</b> leaf-oscillators.c:1128</div></div>
<div class="ttc" id="agroup__tmbsaw_html_gaa7e8996e6780f64c5530600d13e68dfa"><div class="ttname"><a href="group__tmbsaw.html#gaa7e8996e6780f64c5530600d13e68dfa">tMBSaw_setFreq</a></div><div class="ttdeci">void tMBSaw_setFreq(tMBSaw *const osc, float f)</div><div class="ttdoc">Set the frequency of the oscillator.</div><div class="ttdef"><b>Definition:</b> leaf-oscillators.c:1976</div></div>
<div class="ttc" id="agroup__tneuron_html_ga92c05fe0216beaf2a430bf45898c46d5"><div class="ttname"><a href="group__tneuron.html#ga92c05fe0216beaf2a430bf45898c46d5">tNeuron_setTimeStep</a></div><div class="ttdeci">void tNeuron_setTimeStep(tNeuron *const neuron, float timestep)</div><div class="ttdoc">Set the time step of the model.</div><div class="ttdef"><b>Definition:</b> leaf-oscillators.c:1134</div></div>
<div class="ttc" id="agroup__tphasor_html_gaef54a192792ded6d1e53a0839b55bb4a"><div class="ttname"><a href="group__tphasor.html#gaef54a192792ded6d1e53a0839b55bb4a">tPhasor_init</a></div><div class="ttdeci">void tPhasor_init(tPhasor *const osc, LEAF *const leaf)</div><div class="ttdoc">Initialize a tPhasor to the default mempool of a LEAF instance.</div><div class="ttdef"><b>Definition:</b> leaf-oscillators.c:932</div></div>
<div class="ttc" id="agroup__tpbpulse_html_ga089e07fce804c1b1e6056db359a18824"><div class="ttname"><a href="group__tpbpulse.html#ga089e07fce804c1b1e6056db359a18824">tPBPulse_initToPool</a></div><div class="ttdeci">void tPBPulse_initToPool(tPBPulse *const osc, tMempool *const)</div><div class="ttdoc">Initialize a tPBPulse to a specified mempool.</div><div class="ttdef"><b>Definition:</b> leaf-oscillators.c:822</div></div>
<div class="ttc" id="agroup__ttriangle_html_gabb07623117c0d448839b808df2ea6f35"><div class="ttname"><a href="group__ttriangle.html#gabb07623117c0d448839b808df2ea6f35">tTriangle_free</a></div><div class="ttdeci">void tTriangle_free(tTriangle *const osc)</div><div class="ttdoc">Free a tTriangle from its mempool.</div><div class="ttdef"><b>Definition:</b> leaf-oscillators.c:482</div></div>
<div class="ttc" id="agroup__tmbtriangle_html_gacd55ac167bd943ee44dc703d50c93381"><div class="ttname"><a href="group__tmbtriangle.html#gacd55ac167bd943ee44dc703d50c93381">tMBTriangle_setSyncMode</a></div><div class="ttdeci">void tMBTriangle_setSyncMode(tMBTriangle *const osc, int hardOrSoft)</div><div class="ttdoc">Set the sync behavior of the oscillator.</div><div class="ttdef"><b>Definition:</b> leaf-oscillators.c:1839</div></div>
<div class="ttc" id="astruct_l_e_a_f_html"><div class="ttname"><a href="struct_l_e_a_f.html">LEAF</a></div><div class="ttdoc">Struct for an instance of LEAF.</div><div class="ttdef"><b>Definition:</b> leaf-global.h:31</div></div>
<div class="ttc" id="agroup__ttable_html_ga23c68eb02b6f856e4cabd793f386ef3d"><div class="ttname"><a href="group__ttable.html#ga23c68eb02b6f856e4cabd793f386ef3d">tTable_free</a></div><div class="ttdeci">void tTable_free(tTable *const osc)</div><div class="ttdoc">Free a tTable from its mempool.</div><div class="ttdef"><b>Definition:</b> leaf-oscillators.c:37</div></div>
<div class="ttc" id="agroup__tnoise_html_ga867c2ace286c8fdd886f7f9357821330"><div class="ttname"><a href="group__tnoise.html#ga867c2ace286c8fdd886f7f9357821330">tNoise_tick</a></div><div class="ttdeci">float tNoise_tick(tNoise *const noise)</div><div class="ttdef"><b>Definition:</b> leaf-oscillators.c:1011</div></div>
<div class="ttc" id="agroup__tsawtooth_html_ga55fd2d0b1572fc8a67fffc7531fced69"><div class="ttname"><a href="group__tsawtooth.html#ga55fd2d0b1572fc8a67fffc7531fced69">tSawtooth_tick</a></div><div class="ttdeci">float tSawtooth_tick(tSawtooth *const osc)</div><div class="ttdoc">Tick a tSawtooth oscillator.</div><div class="ttdef"><b>Definition:</b> leaf-oscillators.c:694</div></div>
<div class="ttc" id="agroup__tmbpulse_html_gac07d7bffe4cc28fb90825b2b1692bd85"><div class="ttname"><a href="group__tmbpulse.html#gac07d7bffe4cc28fb90825b2b1692bd85">tMBPulse_free</a></div><div class="ttdeci">void tMBPulse_free(tMBPulse *const osc)</div><div class="ttdoc">Free a tMBPulse from its mempool.</div><div class="ttdef"><b>Definition:</b> leaf-oscillators.c:1282</div></div>
<div class="ttc" id="agroup__tphasor_html_gab19f35f26a5de1353623ed2ecd8c92b7"><div class="ttname"><a href="group__tphasor.html#gab19f35f26a5de1353623ed2ecd8c92b7">tPhasor_setFreq</a></div><div class="ttdeci">void tPhasor_setFreq(tPhasor *const osc, float freq)</div><div class="ttdef"><b>Definition:</b> leaf-oscillators.c:955</div></div>
<div class="ttc" id="agroup__tnoise_html_gga9253d111035d4a83996ec5bbfd3d8963a7c87739bebf0e95f4e6b8d9e5432b8f1"><div class="ttname"><a href="group__tnoise.html#gga9253d111035d4a83996ec5bbfd3d8963a7c87739bebf0e95f4e6b8d9e5432b8f1">WhiteNoise</a></div><div class="ttdoc">White noise. Full spectrum.</div><div class="ttdef"><b>Definition:</b> leaf-oscillators.h:684</div></div>
<div class="ttc" id="agroup__tpbsaw_html_ga3e00510154f54b8f7c8e8611217198ae"><div class="ttname"><a href="group__tpbsaw.html#ga3e00510154f54b8f7c8e8611217198ae">tPBSaw_free</a></div><div class="ttdeci">void tPBSaw_free(tPBSaw *const osc)</div><div class="ttdoc">Free a tPBSaw from its mempool.</div><div class="ttdef"><b>Definition:</b> leaf-oscillators.c:891</div></div>
<div class="ttc" id="agroup__tnoise_html_ga9253d111035d4a83996ec5bbfd3d8963"><div class="ttname"><a href="group__tnoise.html#ga9253d111035d4a83996ec5bbfd3d8963">NoiseType</a></div><div class="ttdeci">NoiseType</div><div class="ttdef"><b>Definition:</b> leaf-oscillators.h:682</div></div>
<div class="ttc" id="agroup__tpbsaw_html_ga51843ccbdaef8d5251e11a0812c8e627"><div class="ttname"><a href="group__tpbsaw.html#ga51843ccbdaef8d5251e11a0812c8e627">tPBSaw_initToPool</a></div><div class="ttdeci">void tPBSaw_initToPool(tPBSaw *const osc, tMempool *const mempool)</div><div class="ttdoc">Initialize a tPBSaw to a specified mempool.</div><div class="ttdef"><b>Definition:</b> leaf-oscillators.c:881</div></div>
<!-- HTML footer for doxygen 1.8.18-->
<!-- start footer part -->
</body>
</html>