comparison code-doc/classAmplitudeFollower.html @ 21:cc0be37dc9d3 website

* Updates for 2.0
author cannam
date Tue, 09 Dec 2008 11:02:57 +0000
parents 351c4ebce5f9
children 0976232e353b
comparison
equal deleted inserted replaced
20:34e758355884 21:cc0be37dc9d3
2 <html><head><meta http-equiv="Content-Type" content="text/html;charset=UTF-8"> 2 <html><head><meta http-equiv="Content-Type" content="text/html;charset=UTF-8">
3 <title>VampPluginSDK: AmplitudeFollower Class Reference</title> 3 <title>VampPluginSDK: AmplitudeFollower Class Reference</title>
4 <link href="doxygen.css" rel="stylesheet" type="text/css"> 4 <link href="doxygen.css" rel="stylesheet" type="text/css">
5 <link href="tabs.css" rel="stylesheet" type="text/css"> 5 <link href="tabs.css" rel="stylesheet" type="text/css">
6 </head><body> 6 </head><body>
7 <!-- Generated by Doxygen 1.5.5 --> 7 <!-- Generated by Doxygen 1.5.6 -->
8 <div class="navigation" id="top"> 8 <div class="navigation" id="top">
9 <div class="tabs"> 9 <div class="tabs">
10 <ul> 10 <ul>
11 <li><a href="main.html"><span>Main&nbsp;Page</span></a></li> 11 <li><a href="main.html"><span>Main&nbsp;Page</span></a></li>
12 <li><a href="namespaces.html"><span>Namespaces</span></a></li> 12 <li><a href="namespaces.html"><span>Namespaces</span></a></li>
29 <div class="dynheader"> 29 <div class="dynheader">
30 Inheritance diagram for AmplitudeFollower:</div> 30 Inheritance diagram for AmplitudeFollower:</div>
31 <div class="dynsection"> 31 <div class="dynsection">
32 <p><center><img src="classAmplitudeFollower__inherit__graph.png" border="0" usemap="#AmplitudeFollower__inherit__map" alt="Inheritance graph"></center> 32 <p><center><img src="classAmplitudeFollower__inherit__graph.png" border="0" usemap="#AmplitudeFollower__inherit__map" alt="Inheritance graph"></center>
33 <map name="AmplitudeFollower__inherit__map"> 33 <map name="AmplitudeFollower__inherit__map">
34 <area shape="rect" href="classVamp_1_1Plugin.html" title="Vamp::Plugin is a base class for plugin instance classes that provide feature extraction..." alt="" coords="20,82,119,106"><area shape="rect" href="classVamp_1_1PluginBase.html" title="A base class for plugins with optional configurable parameters, programs, etc." alt="" coords="5,7,133,31"></map> 34 <area shape="rect" href="classVamp_1_1Plugin.html" title="Vamp::Plugin is a base class for plugin instance classes that provide feature extraction..." alt="" coords="20,80,119,107"><area shape="rect" href="classVamp_1_1PluginBase.html" title="A base class for plugins with optional configurable parameters, programs, etc." alt="" coords="5,6,133,32"></map>
35 <center><font size="2">[<a target="top" href="graph_legend.html">legend</a>]</font></center></div> 35 <center><font size="2">[<a target="top" href="graph_legend.html">legend</a>]</font></center></div>
36 36
37 <p> 37 <p>
38 <a href="classAmplitudeFollower-members.html">List of all members.</a><hr><a name="_details"></a><h2>Detailed Description</h2> 38 <a href="classAmplitudeFollower-members.html">List of all members.</a><hr><a name="_details"></a><h2>Detailed Description</h2>
39 Example plugin implementing the SuperCollider amplitude follower function. 39 Example plugin implementing the SuperCollider amplitude follower function.
59 <tr><td class="memItemLeft" nowrap align="right" valign="top">typedef std::vector&lt; std::string &gt;&nbsp;</td><td class="memItemRight" valign="bottom"><a class="el" href="classVamp_1_1PluginBase.html#7f66f00437b21e5f694fe02356b12f20">ProgramList</a></td></tr> 59 <tr><td class="memItemLeft" nowrap align="right" valign="top">typedef std::vector&lt; std::string &gt;&nbsp;</td><td class="memItemRight" valign="bottom"><a class="el" href="classVamp_1_1PluginBase.html#7f66f00437b21e5f694fe02356b12f20">ProgramList</a></td></tr>
60 60
61 <tr><td colspan="2"><br><h2>Public Member Functions</h2></td></tr> 61 <tr><td colspan="2"><br><h2>Public Member Functions</h2></td></tr>
62 <tr><td class="memItemLeft" nowrap align="right" valign="top">&nbsp;</td><td class="memItemRight" valign="bottom"><a class="el" href="classAmplitudeFollower.html#29eaeffc353da2614ae508abcd0ab63f">AmplitudeFollower</a> (float inputSampleRate)</td></tr> 62 <tr><td class="memItemLeft" nowrap align="right" valign="top">&nbsp;</td><td class="memItemRight" valign="bottom"><a class="el" href="classAmplitudeFollower.html#29eaeffc353da2614ae508abcd0ab63f">AmplitudeFollower</a> (float inputSampleRate)</td></tr>
63 63
64 <tr><td class="mdescLeft">&nbsp;</td><td class="mdescRight">An implementation of SuperCollider's amplitude-follower algorithm as a simple <a class="el" href="namespaceVamp.html" title="If you want to compile using FFTW instead of the built-in FFT implementation for...">Vamp</a> plugin. <a href="#29eaeffc353da2614ae508abcd0ab63f"></a><br></td></tr> 64 <tr><td class="mdescLeft">&nbsp;</td><td class="mdescRight">An implementation of SuperCollider's amplitude-follower algorithm as a simple <a class="el" href="namespaceVamp.html">Vamp</a> plugin. <a href="#29eaeffc353da2614ae508abcd0ab63f"></a><br></td></tr>
65 <tr><td class="memItemLeft" nowrap align="right" valign="top">virtual&nbsp;</td><td class="memItemRight" valign="bottom"><a class="el" href="classAmplitudeFollower.html#a78f98539ad3a1b08691a99b32035b2d">~AmplitudeFollower</a> ()</td></tr> 65 <tr><td class="memItemLeft" nowrap align="right" valign="top">virtual&nbsp;</td><td class="memItemRight" valign="bottom"><a class="el" href="classAmplitudeFollower.html#a78f98539ad3a1b08691a99b32035b2d">~AmplitudeFollower</a> ()</td></tr>
66 66
67 <tr><td class="memItemLeft" nowrap align="right" valign="top">bool&nbsp;</td><td class="memItemRight" valign="bottom"><a class="el" href="classAmplitudeFollower.html#eb727e44ee8ad1aceb90964d20f8d90d">initialise</a> (size_t channels, size_t stepSize, size_t blockSize)</td></tr> 67 <tr><td class="memItemLeft" nowrap align="right" valign="top">bool&nbsp;</td><td class="memItemRight" valign="bottom"><a class="el" href="classAmplitudeFollower.html#eb727e44ee8ad1aceb90964d20f8d90d">initialise</a> (size_t channels, size_t stepSize, size_t blockSize)</td></tr>
68 68
69 <tr><td class="mdescLeft">&nbsp;</td><td class="mdescRight">Initialise a plugin to prepare it for use with the given number of input channels, step size (window increment, in sample frames) and block size (window size, in sample frames). <a href="#eb727e44ee8ad1aceb90964d20f8d90d"></a><br></td></tr> 69 <tr><td class="mdescLeft">&nbsp;</td><td class="mdescRight">Initialise a plugin to prepare it for use with the given number of input channels, step size (window increment, in sample frames) and block size (window size, in sample frames). <a href="#eb727e44ee8ad1aceb90964d20f8d90d"></a><br></td></tr>
124 <tr><td class="memItemLeft" nowrap align="right" valign="top">virtual std::string&nbsp;</td><td class="memItemRight" valign="bottom"><a class="el" href="classVamp_1_1Plugin.html#be13b3997a69fbcc09e2213faa352f91">getType</a> () const </td></tr> 124 <tr><td class="memItemLeft" nowrap align="right" valign="top">virtual std::string&nbsp;</td><td class="memItemRight" valign="bottom"><a class="el" href="classVamp_1_1Plugin.html#be13b3997a69fbcc09e2213faa352f91">getType</a> () const </td></tr>
125 125
126 <tr><td class="mdescLeft">&nbsp;</td><td class="mdescRight">Used to distinguish between <a class="el" href="classVamp_1_1Plugin.html" title="Vamp::Plugin is a base class for plugin instance classes that provide feature extraction...">Vamp::Plugin</a> and other potential sibling subclasses of <a class="el" href="classVamp_1_1PluginBase.html" title="A base class for plugins with optional configurable parameters, programs, etc.">PluginBase</a>. <a href="#be13b3997a69fbcc09e2213faa352f91"></a><br></td></tr> 126 <tr><td class="mdescLeft">&nbsp;</td><td class="mdescRight">Used to distinguish between <a class="el" href="classVamp_1_1Plugin.html" title="Vamp::Plugin is a base class for plugin instance classes that provide feature extraction...">Vamp::Plugin</a> and other potential sibling subclasses of <a class="el" href="classVamp_1_1PluginBase.html" title="A base class for plugins with optional configurable parameters, programs, etc.">PluginBase</a>. <a href="#be13b3997a69fbcc09e2213faa352f91"></a><br></td></tr>
127 <tr><td class="memItemLeft" nowrap align="right" valign="top">virtual unsigned int&nbsp;</td><td class="memItemRight" valign="bottom"><a class="el" href="classVamp_1_1PluginBase.html#8fd2c48291c64b790f0efb8948508dcf">getVampApiVersion</a> () const </td></tr> 127 <tr><td class="memItemLeft" nowrap align="right" valign="top">virtual unsigned int&nbsp;</td><td class="memItemRight" valign="bottom"><a class="el" href="classVamp_1_1PluginBase.html#8fd2c48291c64b790f0efb8948508dcf">getVampApiVersion</a> () const </td></tr>
128 128
129 <tr><td class="mdescLeft">&nbsp;</td><td class="mdescRight">Get the <a class="el" href="namespaceVamp.html" title="If you want to compile using FFTW instead of the built-in FFT implementation for...">Vamp</a> API compatibility level of the plugin. <a href="#8fd2c48291c64b790f0efb8948508dcf"></a><br></td></tr> 129 <tr><td class="mdescLeft">&nbsp;</td><td class="mdescRight">Get the <a class="el" href="namespaceVamp.html">Vamp</a> API compatibility level of the plugin. <a href="#8fd2c48291c64b790f0efb8948508dcf"></a><br></td></tr>
130 <tr><td class="memItemLeft" nowrap align="right" valign="top">virtual <a class="el" href="classVamp_1_1PluginBase.html#7f66f00437b21e5f694fe02356b12f20">ProgramList</a>&nbsp;</td><td class="memItemRight" valign="bottom"><a class="el" href="classVamp_1_1PluginBase.html#bb307c60bdb981d5f5af50c3c4ae84af">getPrograms</a> () const </td></tr> 130 <tr><td class="memItemLeft" nowrap align="right" valign="top">virtual <a class="el" href="classVamp_1_1PluginBase.html#7f66f00437b21e5f694fe02356b12f20">ProgramList</a>&nbsp;</td><td class="memItemRight" valign="bottom"><a class="el" href="classVamp_1_1PluginBase.html#bb307c60bdb981d5f5af50c3c4ae84af">getPrograms</a> () const </td></tr>
131 131
132 <tr><td class="mdescLeft">&nbsp;</td><td class="mdescRight">Get the program settings available in this plugin. <a href="#bb307c60bdb981d5f5af50c3c4ae84af"></a><br></td></tr> 132 <tr><td class="mdescLeft">&nbsp;</td><td class="mdescRight">Get the program settings available in this plugin. <a href="#bb307c60bdb981d5f5af50c3c4ae84af"></a><br></td></tr>
133 <tr><td class="memItemLeft" nowrap align="right" valign="top">virtual std::string&nbsp;</td><td class="memItemRight" valign="bottom"><a class="el" href="classVamp_1_1PluginBase.html#24e77eccf1bdfbbca3c79bb25e8799b3">getCurrentProgram</a> () const </td></tr> 133 <tr><td class="memItemLeft" nowrap align="right" valign="top">virtual std::string&nbsp;</td><td class="memItemRight" valign="bottom"><a class="el" href="classVamp_1_1PluginBase.html#24e77eccf1bdfbbca3c79bb25e8799b3">getCurrentProgram</a> () const </td></tr>
134 134
160 </div> 160 </div>
161 <div class="memdoc"> 161 <div class="memdoc">
162 162
163 <p> 163 <p>
164 164
165 <p>Definition at line <a class="el" href="Plugin_8h-source.html#l00309">309</a> of file <a class="el" href="Plugin_8h-source.html">Plugin.h</a>.</p> 165 <p>Definition at line <a class="el" href="vamp-sdk_2Plugin_8h-source.html#l00322">322</a> of file <a class="el" href="vamp-sdk_2Plugin_8h-source.html">vamp-sdk/Plugin.h</a>.</p>
166 166
167 </div> 167 </div>
168 </div><p> 168 </div><p>
169 <a class="anchor" name="0730bc72c87fa02eb8d2854b233f7be1"></a><!-- doxytag: member="AmplitudeFollower::FeatureList" ref="0730bc72c87fa02eb8d2854b233f7be1" args="" --> 169 <a class="anchor" name="0730bc72c87fa02eb8d2854b233f7be1"></a><!-- doxytag: member="AmplitudeFollower::FeatureList" ref="0730bc72c87fa02eb8d2854b233f7be1" args="" -->
170 <div class="memitem"> 170 <div class="memitem">
177 </div> 177 </div>
178 <div class="memdoc"> 178 <div class="memdoc">
179 179
180 <p> 180 <p>
181 181
182 <p>Definition at line <a class="el" href="Plugin_8h-source.html#l00347">347</a> of file <a class="el" href="Plugin_8h-source.html">Plugin.h</a>.</p> 182 <p>Definition at line <a class="el" href="vamp-sdk_2Plugin_8h-source.html#l00380">380</a> of file <a class="el" href="vamp-sdk_2Plugin_8h-source.html">vamp-sdk/Plugin.h</a>.</p>
183 183
184 </div> 184 </div>
185 </div><p> 185 </div><p>
186 <a class="anchor" name="448fb57dc245d47923ec9eeaf9856c5f"></a><!-- doxytag: member="AmplitudeFollower::FeatureSet" ref="448fb57dc245d47923ec9eeaf9856c5f" args="" --> 186 <a class="anchor" name="448fb57dc245d47923ec9eeaf9856c5f"></a><!-- doxytag: member="AmplitudeFollower::FeatureSet" ref="448fb57dc245d47923ec9eeaf9856c5f" args="" -->
187 <div class="memitem"> 187 <div class="memitem">
194 </div> 194 </div>
195 <div class="memdoc"> 195 <div class="memdoc">
196 196
197 <p> 197 <p>
198 198
199 <p>Definition at line <a class="el" href="Plugin_8h-source.html#l00348">348</a> of file <a class="el" href="Plugin_8h-source.html">Plugin.h</a>.</p> 199 <p>Definition at line <a class="el" href="vamp-sdk_2Plugin_8h-source.html#l00382">382</a> of file <a class="el" href="vamp-sdk_2Plugin_8h-source.html">vamp-sdk/Plugin.h</a>.</p>
200 200
201 </div> 201 </div>
202 </div><p> 202 </div><p>
203 <a class="anchor" name="3b6bb4bbd86affe1ca9deceea1aad4f8"></a><!-- doxytag: member="AmplitudeFollower::ParameterList" ref="3b6bb4bbd86affe1ca9deceea1aad4f8" args="" --> 203 <a class="anchor" name="3b6bb4bbd86affe1ca9deceea1aad4f8"></a><!-- doxytag: member="AmplitudeFollower::ParameterList" ref="3b6bb4bbd86affe1ca9deceea1aad4f8" args="" -->
204 <div class="memitem"> 204 <div class="memitem">
211 </div> 211 </div>
212 <div class="memdoc"> 212 <div class="memdoc">
213 213
214 <p> 214 <p>
215 215
216 <p>Definition at line <a class="el" href="PluginBase_8h-source.html#l00195">195</a> of file <a class="el" href="PluginBase_8h-source.html">PluginBase.h</a>.</p> 216 <p>Definition at line <a class="el" href="vamp-sdk_2PluginBase_8h-source.html#l00203">203</a> of file <a class="el" href="vamp-sdk_2PluginBase_8h-source.html">vamp-sdk/PluginBase.h</a>.</p>
217 217
218 </div> 218 </div>
219 </div><p> 219 </div><p>
220 <a class="anchor" name="7f66f00437b21e5f694fe02356b12f20"></a><!-- doxytag: member="AmplitudeFollower::ProgramList" ref="7f66f00437b21e5f694fe02356b12f20" args="" --> 220 <a class="anchor" name="7f66f00437b21e5f694fe02356b12f20"></a><!-- doxytag: member="AmplitudeFollower::ProgramList" ref="7f66f00437b21e5f694fe02356b12f20" args="" -->
221 <div class="memitem"> 221 <div class="memitem">
228 </div> 228 </div>
229 <div class="memdoc"> 229 <div class="memdoc">
230 230
231 <p> 231 <p>
232 232
233 <p>Definition at line <a class="el" href="PluginBase_8h-source.html#l00217">217</a> of file <a class="el" href="PluginBase_8h-source.html">PluginBase.h</a>.</p> 233 <p>Definition at line <a class="el" href="vamp-sdk_2PluginBase_8h-source.html#l00225">225</a> of file <a class="el" href="vamp-sdk_2PluginBase_8h-source.html">vamp-sdk/PluginBase.h</a>.</p>
234 234
235 </div> 235 </div>
236 </div><p> 236 </div><p>
237 <hr><h2>Member Enumeration Documentation</h2> 237 <hr><h2>Member Enumeration Documentation</h2>
238 <a class="anchor" name="39cb7649d6dcc20e4cb1640cd55907bc"></a><!-- doxytag: member="AmplitudeFollower::InputDomain" ref="39cb7649d6dcc20e4cb1640cd55907bc" args="" --> 238 <a class="anchor" name="39cb7649d6dcc20e4cb1640cd55907bc"></a><!-- doxytag: member="AmplitudeFollower::InputDomain" ref="39cb7649d6dcc20e4cb1640cd55907bc" args="" -->
254 <tr><td valign="top"><em><a class="anchor" name="39cb7649d6dcc20e4cb1640cd55907bca30e7877ab33f76acbdca28607e6ab53"></a><!-- doxytag: member="FrequencyDomain" ref="39cb7649d6dcc20e4cb1640cd55907bca30e7877ab33f76acbdca28607e6ab53" args="" -->FrequencyDomain</em>&nbsp;</td><td> 254 <tr><td valign="top"><em><a class="anchor" name="39cb7649d6dcc20e4cb1640cd55907bca30e7877ab33f76acbdca28607e6ab53"></a><!-- doxytag: member="FrequencyDomain" ref="39cb7649d6dcc20e4cb1640cd55907bca30e7877ab33f76acbdca28607e6ab53" args="" -->FrequencyDomain</em>&nbsp;</td><td>
255 </td></tr> 255 </td></tr>
256 </table> 256 </table>
257 </dl> 257 </dl>
258 258
259 <p>Definition at line <a class="el" href="Plugin_8h-source.html#l00149">149</a> of file <a class="el" href="Plugin_8h-source.html">Plugin.h</a>.</p> 259 <p>Definition at line <a class="el" href="vamp-sdk_2Plugin_8h-source.html#l00152">152</a> of file <a class="el" href="vamp-sdk_2Plugin_8h-source.html">vamp-sdk/Plugin.h</a>.</p>
260 260
261 </div> 261 </div>
262 </div><p> 262 </div><p>
263 <hr><h2>Constructor &amp; Destructor Documentation</h2> 263 <hr><h2>Constructor &amp; Destructor Documentation</h2>
264 <a class="anchor" name="29eaeffc353da2614ae508abcd0ab63f"></a><!-- doxytag: member="AmplitudeFollower::AmplitudeFollower" ref="29eaeffc353da2614ae508abcd0ab63f" args="(float inputSampleRate)" --> 264 <a class="anchor" name="29eaeffc353da2614ae508abcd0ab63f"></a><!-- doxytag: member="AmplitudeFollower::AmplitudeFollower" ref="29eaeffc353da2614ae508abcd0ab63f" args="(float inputSampleRate)" -->
269 <td class="memname">AmplitudeFollower::AmplitudeFollower </td> 269 <td class="memname">AmplitudeFollower::AmplitudeFollower </td>
270 <td>(</td> 270 <td>(</td>
271 <td class="paramtype">float&nbsp;</td> 271 <td class="paramtype">float&nbsp;</td>
272 <td class="paramname"> <em>inputSampleRate</em> </td> 272 <td class="paramname"> <em>inputSampleRate</em> </td>
273 <td>&nbsp;)&nbsp;</td> 273 <td>&nbsp;)&nbsp;</td>
274 <td width="100%"></td> 274 <td></td>
275 </tr> 275 </tr>
276 </table> 276 </table>
277 </div> 277 </div>
278 <div class="memdoc"> 278 <div class="memdoc">
279 279
280 <p> 280 <p>
281 An implementation of SuperCollider's amplitude-follower algorithm as a simple <a class="el" href="namespaceVamp.html" title="If you want to compile using FFTW instead of the built-in FFT implementation for...">Vamp</a> plugin. 281 An implementation of SuperCollider's amplitude-follower algorithm as a simple <a class="el" href="namespaceVamp.html">Vamp</a> plugin.
282 <p> 282 <p>
283 283
284 <p>Definition at line <a class="el" href="AmplitudeFollower_8cpp-source.html#l00055">55</a> of file <a class="el" href="AmplitudeFollower_8cpp-source.html">AmplitudeFollower.cpp</a>.</p> 284 <p>Definition at line <a class="el" href="AmplitudeFollower_8cpp-source.html#l00055">55</a> of file <a class="el" href="AmplitudeFollower_8cpp-source.html">AmplitudeFollower.cpp</a>.</p>
285 285
286 </div> 286 </div>
292 <tr> 292 <tr>
293 <td class="memname">AmplitudeFollower::~AmplitudeFollower </td> 293 <td class="memname">AmplitudeFollower::~AmplitudeFollower </td>
294 <td>(</td> 294 <td>(</td>
295 <td class="paramname"> </td> 295 <td class="paramname"> </td>
296 <td>&nbsp;)&nbsp;</td> 296 <td>&nbsp;)&nbsp;</td>
297 <td width="100%"><code> [virtual]</code></td> 297 <td><code> [virtual]</code></td>
298 </tr> 298 </tr>
299 </table> 299 </table>
300 </div> 300 </div>
301 <div class="memdoc"> 301 <div class="memdoc">
302 302
330 <td class="paramname"> <em>blockSize</em></td><td>&nbsp;</td> 330 <td class="paramname"> <em>blockSize</em></td><td>&nbsp;</td>
331 </tr> 331 </tr>
332 <tr> 332 <tr>
333 <td></td> 333 <td></td>
334 <td>)</td> 334 <td>)</td>
335 <td></td><td></td><td width="100%"><code> [virtual]</code></td> 335 <td></td><td></td><td><code> [virtual]</code></td>
336 </tr> 336 </tr>
337 </table> 337 </table>
338 </div> 338 </div>
339 <div class="memdoc"> 339 <div class="memdoc">
340 340
345 Return true for successful initialisation, false if the number of input channels, step size and/or block size cannot be supported. 345 Return true for successful initialisation, false if the number of input channels, step size and/or block size cannot be supported.
346 <p>Implements <a class="el" href="classVamp_1_1Plugin.html#f26212cf5fc511b603a8b48034247822">Vamp::Plugin</a>.</p> 346 <p>Implements <a class="el" href="classVamp_1_1Plugin.html#f26212cf5fc511b603a8b48034247822">Vamp::Plugin</a>.</p>
347 347
348 <p>Definition at line <a class="el" href="AmplitudeFollower_8cpp-source.html#l00105">105</a> of file <a class="el" href="AmplitudeFollower_8cpp-source.html">AmplitudeFollower.cpp</a>.</p> 348 <p>Definition at line <a class="el" href="AmplitudeFollower_8cpp-source.html#l00105">105</a> of file <a class="el" href="AmplitudeFollower_8cpp-source.html">AmplitudeFollower.cpp</a>.</p>
349 349
350 <p>References <a class="el" href="Plugin_8h-source.html#l00196">Vamp::Plugin::getMaxChannelCount()</a>, <a class="el" href="Plugin_8h-source.html#l00191">Vamp::Plugin::getMinChannelCount()</a>, <a class="el" href="AmplitudeFollower_8h-source.html#l00079">m_clampcoef</a>, <a class="el" href="Plugin_8h-source.html#l00397">Vamp::Plugin::m_inputSampleRate</a>, <a class="el" href="AmplitudeFollower_8h-source.html#l00080">m_relaxcoef</a>, and <a class="el" href="AmplitudeFollower_8h-source.html#l00077">m_stepSize</a>.</p> 350 <p>References <a class="el" href="vamp-sdk_2Plugin_8h-source.html#l00199">Vamp::Plugin::getMaxChannelCount()</a>, <a class="el" href="vamp-sdk_2Plugin_8h-source.html#l00194">Vamp::Plugin::getMinChannelCount()</a>, <a class="el" href="AmplitudeFollower_8h-source.html#l00079">m_clampcoef</a>, <a class="el" href="vamp-sdk_2Plugin_8h-source.html#l00431">Vamp::Plugin::m_inputSampleRate</a>, <a class="el" href="AmplitudeFollower_8h-source.html#l00080">m_relaxcoef</a>, and <a class="el" href="AmplitudeFollower_8h-source.html#l00077">m_stepSize</a>.</p>
351 351
352 </div> 352 </div>
353 </div><p> 353 </div><p>
354 <a class="anchor" name="cebd835e80e84669df078fbd7591d8f7"></a><!-- doxytag: member="AmplitudeFollower::reset" ref="cebd835e80e84669df078fbd7591d8f7" args="()" --> 354 <a class="anchor" name="cebd835e80e84669df078fbd7591d8f7"></a><!-- doxytag: member="AmplitudeFollower::reset" ref="cebd835e80e84669df078fbd7591d8f7" args="()" -->
355 <div class="memitem"> 355 <div class="memitem">
358 <tr> 358 <tr>
359 <td class="memname">void AmplitudeFollower::reset </td> 359 <td class="memname">void AmplitudeFollower::reset </td>
360 <td>(</td> 360 <td>(</td>
361 <td class="paramname"> </td> 361 <td class="paramname"> </td>
362 <td>&nbsp;)&nbsp;</td> 362 <td>&nbsp;)&nbsp;</td>
363 <td width="100%"><code> [virtual]</code></td> 363 <td><code> [virtual]</code></td>
364 </tr> 364 </tr>
365 </table> 365 </table>
366 </div> 366 </div>
367 <div class="memdoc"> 367 <div class="memdoc">
368 368
385 <tr> 385 <tr>
386 <td class="memname"><a class="el" href="classVamp_1_1Plugin.html#39cb7649d6dcc20e4cb1640cd55907bc">InputDomain</a> AmplitudeFollower::getInputDomain </td> 386 <td class="memname"><a class="el" href="classVamp_1_1Plugin.html#39cb7649d6dcc20e4cb1640cd55907bc">InputDomain</a> AmplitudeFollower::getInputDomain </td>
387 <td>(</td> 387 <td>(</td>
388 <td class="paramname"> </td> 388 <td class="paramname"> </td>
389 <td>&nbsp;)&nbsp;</td> 389 <td>&nbsp;)&nbsp;</td>
390 <td width="100%"> const<code> [inline, virtual]</code></td> 390 <td> const<code> [inline, virtual]</code></td>
391 </tr> 391 </tr>
392 </table> 392 </table>
393 </div> 393 </div>
394 <div class="memdoc"> 394 <div class="memdoc">
395 395
399 If this is TimeDomain, the samples provided to the <a class="el" href="classAmplitudeFollower.html#48d0f95cac31ffd190cff89b50a2a5bd" title="Process a single block of input data.">process()</a> function (below) will be in the time domain, as for a traditional audio processing plugin. If this is FrequencyDomain, the host will carry out a windowed FFT of size equal to the negotiated block size on the data before passing the frequency bin data in to <a class="el" href="classAmplitudeFollower.html#48d0f95cac31ffd190cff89b50a2a5bd" title="Process a single block of input data.">process()</a>. The plugin does not get to choose the window type -- the host will either let the user do so, or will use a Hanning window. 399 If this is TimeDomain, the samples provided to the <a class="el" href="classAmplitudeFollower.html#48d0f95cac31ffd190cff89b50a2a5bd" title="Process a single block of input data.">process()</a> function (below) will be in the time domain, as for a traditional audio processing plugin. If this is FrequencyDomain, the host will carry out a windowed FFT of size equal to the negotiated block size on the data before passing the frequency bin data in to <a class="el" href="classAmplitudeFollower.html#48d0f95cac31ffd190cff89b50a2a5bd" title="Process a single block of input data.">process()</a>. The plugin does not get to choose the window type -- the host will either let the user do so, or will use a Hanning window.
400 <p>Implements <a class="el" href="classVamp_1_1Plugin.html#e1d317a9702cbeda65ddf0ec500c1ff6">Vamp::Plugin</a>.</p> 400 <p>Implements <a class="el" href="classVamp_1_1Plugin.html#e1d317a9702cbeda65ddf0ec500c1ff6">Vamp::Plugin</a>.</p>
401 401
402 <p>Definition at line <a class="el" href="AmplitudeFollower_8h-source.html#l00056">56</a> of file <a class="el" href="AmplitudeFollower_8h-source.html">AmplitudeFollower.h</a>.</p> 402 <p>Definition at line <a class="el" href="AmplitudeFollower_8h-source.html#l00056">56</a> of file <a class="el" href="AmplitudeFollower_8h-source.html">AmplitudeFollower.h</a>.</p>
403 403
404 <p>References <a class="el" href="Plugin_8h-source.html#l00149">Vamp::Plugin::TimeDomain</a>.</p> 404 <p>References <a class="el" href="vamp-sdk_2Plugin_8h-source.html#l00152">Vamp::Plugin::TimeDomain</a>.</p>
405 405
406 </div> 406 </div>
407 </div><p> 407 </div><p>
408 <a class="anchor" name="fe7576af95c8fcc7f5bad42eec9f9f29"></a><!-- doxytag: member="AmplitudeFollower::getIdentifier" ref="fe7576af95c8fcc7f5bad42eec9f9f29" args="() const " --> 408 <a class="anchor" name="fe7576af95c8fcc7f5bad42eec9f9f29"></a><!-- doxytag: member="AmplitudeFollower::getIdentifier" ref="fe7576af95c8fcc7f5bad42eec9f9f29" args="() const " -->
409 <div class="memitem"> 409 <div class="memitem">
412 <tr> 412 <tr>
413 <td class="memname">string AmplitudeFollower::getIdentifier </td> 413 <td class="memname">string AmplitudeFollower::getIdentifier </td>
414 <td>(</td> 414 <td>(</td>
415 <td class="paramname"> </td> 415 <td class="paramname"> </td>
416 <td>&nbsp;)&nbsp;</td> 416 <td>&nbsp;)&nbsp;</td>
417 <td width="100%"> const<code> [virtual]</code></td> 417 <td> const<code> [virtual]</code></td>
418 </tr> 418 </tr>
419 </table> 419 </table>
420 </div> 420 </div>
421 <div class="memdoc"> 421 <div class="memdoc">
422 422
439 <tr> 439 <tr>
440 <td class="memname">string AmplitudeFollower::getName </td> 440 <td class="memname">string AmplitudeFollower::getName </td>
441 <td>(</td> 441 <td>(</td>
442 <td class="paramname"> </td> 442 <td class="paramname"> </td>
443 <td>&nbsp;)&nbsp;</td> 443 <td>&nbsp;)&nbsp;</td>
444 <td width="100%"> const<code> [virtual]</code></td> 444 <td> const<code> [virtual]</code></td>
445 </tr> 445 </tr>
446 </table> 446 </table>
447 </div> 447 </div>
448 <div class="memdoc"> 448 <div class="memdoc">
449 449
465 <tr> 465 <tr>
466 <td class="memname">string AmplitudeFollower::getDescription </td> 466 <td class="memname">string AmplitudeFollower::getDescription </td>
467 <td>(</td> 467 <td>(</td>
468 <td class="paramname"> </td> 468 <td class="paramname"> </td>
469 <td>&nbsp;)&nbsp;</td> 469 <td>&nbsp;)&nbsp;</td>
470 <td width="100%"> const<code> [virtual]</code></td> 470 <td> const<code> [virtual]</code></td>
471 </tr> 471 </tr>
472 </table> 472 </table>
473 </div> 473 </div>
474 <div class="memdoc"> 474 <div class="memdoc">
475 475
491 <tr> 491 <tr>
492 <td class="memname">string AmplitudeFollower::getMaker </td> 492 <td class="memname">string AmplitudeFollower::getMaker </td>
493 <td>(</td> 493 <td>(</td>
494 <td class="paramname"> </td> 494 <td class="paramname"> </td>
495 <td>&nbsp;)&nbsp;</td> 495 <td>&nbsp;)&nbsp;</td>
496 <td width="100%"> const<code> [virtual]</code></td> 496 <td> const<code> [virtual]</code></td>
497 </tr> 497 </tr>
498 </table> 498 </table>
499 </div> 499 </div>
500 <div class="memdoc"> 500 <div class="memdoc">
501 501
516 <tr> 516 <tr>
517 <td class="memname">int AmplitudeFollower::getPluginVersion </td> 517 <td class="memname">int AmplitudeFollower::getPluginVersion </td>
518 <td>(</td> 518 <td>(</td>
519 <td class="paramname"> </td> 519 <td class="paramname"> </td>
520 <td>&nbsp;)&nbsp;</td> 520 <td>&nbsp;)&nbsp;</td>
521 <td width="100%"> const<code> [virtual]</code></td> 521 <td> const<code> [virtual]</code></td>
522 </tr> 522 </tr>
523 </table> 523 </table>
524 </div> 524 </div>
525 <div class="memdoc"> 525 <div class="memdoc">
526 526
541 <tr> 541 <tr>
542 <td class="memname">string AmplitudeFollower::getCopyright </td> 542 <td class="memname">string AmplitudeFollower::getCopyright </td>
543 <td>(</td> 543 <td>(</td>
544 <td class="paramname"> </td> 544 <td class="paramname"> </td>
545 <td>&nbsp;)&nbsp;</td> 545 <td>&nbsp;)&nbsp;</td>
546 <td width="100%"> const<code> [virtual]</code></td> 546 <td> const<code> [virtual]</code></td>
547 </tr> 547 </tr>
548 </table> 548 </table>
549 </div> 549 </div>
550 <div class="memdoc"> 550 <div class="memdoc">
551 551
566 <tr> 566 <tr>
567 <td class="memname"><a class="el" href="classVamp_1_1Plugin.html#30f531b8fb69fac41a24e3d2a6a08ed9">AmplitudeFollower::OutputList</a> AmplitudeFollower::getOutputDescriptors </td> 567 <td class="memname"><a class="el" href="classVamp_1_1Plugin.html#30f531b8fb69fac41a24e3d2a6a08ed9">AmplitudeFollower::OutputList</a> AmplitudeFollower::getOutputDescriptors </td>
568 <td>(</td> 568 <td>(</td>
569 <td class="paramname"> </td> 569 <td class="paramname"> </td>
570 <td>&nbsp;)&nbsp;</td> 570 <td>&nbsp;)&nbsp;</td>
571 <td width="100%"> const<code> [virtual]</code></td> 571 <td> const<code> [virtual]</code></td>
572 </tr> 572 </tr>
573 </table> 573 </table>
574 </div> 574 </div>
575 <div class="memdoc"> 575 <div class="memdoc">
576 576
580 An output's index in this list is used as its numeric index when looking it up in the FeatureSet returned from the <a class="el" href="classAmplitudeFollower.html#48d0f95cac31ffd190cff89b50a2a5bd" title="Process a single block of input data.">process()</a> call. 580 An output's index in this list is used as its numeric index when looking it up in the FeatureSet returned from the <a class="el" href="classAmplitudeFollower.html#48d0f95cac31ffd190cff89b50a2a5bd" title="Process a single block of input data.">process()</a> call.
581 <p>Implements <a class="el" href="classVamp_1_1Plugin.html#d064d5d132b5c9bd7064f429c3309e35">Vamp::Plugin</a>.</p> 581 <p>Implements <a class="el" href="classVamp_1_1Plugin.html#d064d5d132b5c9bd7064f429c3309e35">Vamp::Plugin</a>.</p>
582 582
583 <p>Definition at line <a class="el" href="AmplitudeFollower_8cpp-source.html#l00128">128</a> of file <a class="el" href="AmplitudeFollower_8cpp-source.html">AmplitudeFollower.cpp</a>.</p> 583 <p>Definition at line <a class="el" href="AmplitudeFollower_8cpp-source.html#l00128">128</a> of file <a class="el" href="AmplitudeFollower_8cpp-source.html">AmplitudeFollower.cpp</a>.</p>
584 584
585 <p>References <a class="el" href="Plugin_8h-source.html#l00239">Vamp::Plugin::OutputDescriptor::binCount</a>, <a class="el" href="Plugin_8h-source.html#l00219">Vamp::Plugin::OutputDescriptor::description</a>, <a class="el" href="Plugin_8h-source.html#l00231">Vamp::Plugin::OutputDescriptor::hasFixedBinCount</a>, <a class="el" href="Plugin_8h-source.html#l00252">Vamp::Plugin::OutputDescriptor::hasKnownExtents</a>, <a class="el" href="Plugin_8h-source.html#l00206">Vamp::Plugin::OutputDescriptor::identifier</a>, <a class="el" href="Plugin_8h-source.html#l00270">Vamp::Plugin::OutputDescriptor::isQuantized</a>, <a class="el" href="Plugin_8h-source.html#l00212">Vamp::Plugin::OutputDescriptor::name</a>, <a class="el" href="Plugin_8h-source.html#l00282">Vamp::Plugin::OutputDescriptor::OneSamplePerStep</a>, <a class="el" href="Plugin_8h-source.html#l00294">Vamp::Plugin::OutputDescriptor::sampleType</a>, and <a class="el" href="Plugin_8h-source.html#l00224">Vamp::Plugin::OutputDescriptor::unit</a>.</p> 585 <p>References <a class="el" href="vamp-sdk_2Plugin_8h-source.html#l00242">Vamp::Plugin::OutputDescriptor::binCount</a>, <a class="el" href="vamp-sdk_2Plugin_8h-source.html#l00222">Vamp::Plugin::OutputDescriptor::description</a>, <a class="el" href="vamp-sdk_2Plugin_8h-source.html#l00234">Vamp::Plugin::OutputDescriptor::hasFixedBinCount</a>, <a class="el" href="vamp-sdk_2Plugin_8h-source.html#l00255">Vamp::Plugin::OutputDescriptor::hasKnownExtents</a>, <a class="el" href="vamp-sdk_2Plugin_8h-source.html#l00209">Vamp::Plugin::OutputDescriptor::identifier</a>, <a class="el" href="vamp-sdk_2Plugin_8h-source.html#l00273">Vamp::Plugin::OutputDescriptor::isQuantized</a>, <a class="el" href="vamp-sdk_2Plugin_8h-source.html#l00215">Vamp::Plugin::OutputDescriptor::name</a>, <a class="el" href="vamp-sdk_2Plugin_8h-source.html#l00285">Vamp::Plugin::OutputDescriptor::OneSamplePerStep</a>, <a class="el" href="vamp-sdk_2Plugin_8h-source.html#l00297">Vamp::Plugin::OutputDescriptor::sampleType</a>, and <a class="el" href="vamp-sdk_2Plugin_8h-source.html#l00227">Vamp::Plugin::OutputDescriptor::unit</a>.</p>
586 586
587 </div> 587 </div>
588 </div><p> 588 </div><p>
589 <a class="anchor" name="9df01323a09e117bc12354ebe9244edf"></a><!-- doxytag: member="AmplitudeFollower::getParameterDescriptors" ref="9df01323a09e117bc12354ebe9244edf" args="() const " --> 589 <a class="anchor" name="9df01323a09e117bc12354ebe9244edf"></a><!-- doxytag: member="AmplitudeFollower::getParameterDescriptors" ref="9df01323a09e117bc12354ebe9244edf" args="() const " -->
590 <div class="memitem"> 590 <div class="memitem">
593 <tr> 593 <tr>
594 <td class="memname"><a class="el" href="classVamp_1_1PluginBase.html#3b6bb4bbd86affe1ca9deceea1aad4f8">AmplitudeFollower::ParameterList</a> AmplitudeFollower::getParameterDescriptors </td> 594 <td class="memname"><a class="el" href="classVamp_1_1PluginBase.html#3b6bb4bbd86affe1ca9deceea1aad4f8">AmplitudeFollower::ParameterList</a> AmplitudeFollower::getParameterDescriptors </td>
595 <td>(</td> 595 <td>(</td>
596 <td class="paramname"> </td> 596 <td class="paramname"> </td>
597 <td>&nbsp;)&nbsp;</td> 597 <td>&nbsp;)&nbsp;</td>
598 <td width="100%"> const<code> [virtual]</code></td> 598 <td> const<code> [virtual]</code></td>
599 </tr> 599 </tr>
600 </table> 600 </table>
601 </div> 601 </div>
602 <div class="memdoc"> 602 <div class="memdoc">
603 603
607 607
608 <p>Reimplemented from <a class="el" href="classVamp_1_1PluginBase.html#ac3e49b3b66cacfbb768dfdf07444f21">Vamp::PluginBase</a>.</p> 608 <p>Reimplemented from <a class="el" href="classVamp_1_1PluginBase.html#ac3e49b3b66cacfbb768dfdf07444f21">Vamp::PluginBase</a>.</p>
609 609
610 <p>Definition at line <a class="el" href="AmplitudeFollower_8cpp-source.html#l00148">148</a> of file <a class="el" href="AmplitudeFollower_8cpp-source.html">AmplitudeFollower.cpp</a>.</p> 610 <p>Definition at line <a class="el" href="AmplitudeFollower_8cpp-source.html#l00148">148</a> of file <a class="el" href="AmplitudeFollower_8cpp-source.html">AmplitudeFollower.cpp</a>.</p>
611 611
612 <p>References <a class="el" href="PluginBase_8h-source.html#l00166">Vamp::PluginBase::ParameterDescriptor::defaultValue</a>, <a class="el" href="PluginBase_8h-source.html#l00143">Vamp::PluginBase::ParameterDescriptor::description</a>, <a class="el" href="PluginBase_8h-source.html#l00132">Vamp::PluginBase::ParameterDescriptor::identifier</a>, <a class="el" href="PluginBase_8h-source.html#l00172">Vamp::PluginBase::ParameterDescriptor::isQuantized</a>, <a class="el" href="PluginBase_8h-source.html#l00158">Vamp::PluginBase::ParameterDescriptor::maxValue</a>, <a class="el" href="PluginBase_8h-source.html#l00153">Vamp::PluginBase::ParameterDescriptor::minValue</a>, <a class="el" href="PluginBase_8h-source.html#l00137">Vamp::PluginBase::ParameterDescriptor::name</a>, and <a class="el" href="PluginBase_8h-source.html#l00148">Vamp::PluginBase::ParameterDescriptor::unit</a>.</p> 612 <p>References <a class="el" href="vamp-sdk_2PluginBase_8h-source.html#l00171">Vamp::PluginBase::ParameterDescriptor::defaultValue</a>, <a class="el" href="vamp-sdk_2PluginBase_8h-source.html#l00148">Vamp::PluginBase::ParameterDescriptor::description</a>, <a class="el" href="vamp-sdk_2PluginBase_8h-source.html#l00137">Vamp::PluginBase::ParameterDescriptor::identifier</a>, <a class="el" href="vamp-sdk_2PluginBase_8h-source.html#l00177">Vamp::PluginBase::ParameterDescriptor::isQuantized</a>, <a class="el" href="vamp-sdk_2PluginBase_8h-source.html#l00163">Vamp::PluginBase::ParameterDescriptor::maxValue</a>, <a class="el" href="vamp-sdk_2PluginBase_8h-source.html#l00158">Vamp::PluginBase::ParameterDescriptor::minValue</a>, <a class="el" href="vamp-sdk_2PluginBase_8h-source.html#l00142">Vamp::PluginBase::ParameterDescriptor::name</a>, and <a class="el" href="vamp-sdk_2PluginBase_8h-source.html#l00153">Vamp::PluginBase::ParameterDescriptor::unit</a>.</p>
613 613
614 </div> 614 </div>
615 </div><p> 615 </div><p>
616 <a class="anchor" name="b278c4b6f2ca23248dc94ad775273f39"></a><!-- doxytag: member="AmplitudeFollower::getParameter" ref="b278c4b6f2ca23248dc94ad775273f39" args="(std::string paramid) const " --> 616 <a class="anchor" name="b278c4b6f2ca23248dc94ad775273f39"></a><!-- doxytag: member="AmplitudeFollower::getParameter" ref="b278c4b6f2ca23248dc94ad775273f39" args="(std::string paramid) const " -->
617 <div class="memitem"> 617 <div class="memitem">
621 <td class="memname">float AmplitudeFollower::getParameter </td> 621 <td class="memname">float AmplitudeFollower::getParameter </td>
622 <td>(</td> 622 <td>(</td>
623 <td class="paramtype">std::string&nbsp;</td> 623 <td class="paramtype">std::string&nbsp;</td>
624 <td class="paramname"> </td> 624 <td class="paramname"> </td>
625 <td>&nbsp;)&nbsp;</td> 625 <td>&nbsp;)&nbsp;</td>
626 <td width="100%"> const<code> [virtual]</code></td> 626 <td> const<code> [virtual]</code></td>
627 </tr> 627 </tr>
628 </table> 628 </table>
629 </div> 629 </div>
630 <div class="memdoc"> 630 <div class="memdoc">
631 631
658 <td class="paramname"></td><td>&nbsp;</td> 658 <td class="paramname"></td><td>&nbsp;</td>
659 </tr> 659 </tr>
660 <tr> 660 <tr>
661 <td></td> 661 <td></td>
662 <td>)</td> 662 <td>)</td>
663 <td></td><td></td><td width="100%"><code> [virtual]</code></td> 663 <td></td><td></td><td><code> [virtual]</code></td>
664 </tr> 664 </tr>
665 </table> 665 </table>
666 </div> 666 </div>
667 <div class="memdoc"> 667 <div class="memdoc">
668 668
695 <td class="paramname"> <em>timestamp</em></td><td>&nbsp;</td> 695 <td class="paramname"> <em>timestamp</em></td><td>&nbsp;</td>
696 </tr> 696 </tr>
697 <tr> 697 <tr>
698 <td></td> 698 <td></td>
699 <td>)</td> 699 <td>)</td>
700 <td></td><td></td><td width="100%"><code> [virtual]</code></td> 700 <td></td><td></td><td><code> [virtual]</code></td>
701 </tr> 701 </tr>
702 </table> 702 </table>
703 </div> 703 </div>
704 <div class="memdoc"> 704 <div class="memdoc">
705 705
706 <p> 706 <p>
707 Process a single block of input data. 707 Process a single block of input data.
708 <p> 708 <p>
709 If the plugin's inputDomain is TimeDomain, inputBuffers will point to one array of floats per input channel, and each of these arrays will contain blockSize consecutive audio samples (the host will zero-pad as necessary). The timestamp will be the real time in seconds of the start of the supplied block of samples.<p> 709 If the plugin's inputDomain is TimeDomain, inputBuffers will point to one array of floats per input channel, and each of these arrays will contain blockSize consecutive audio samples (the host will zero-pad as necessary). The timestamp in this case will be the real time in seconds of the start of the supplied block of samples.<p>
710 If the plugin's inputDomain is FrequencyDomain, inputBuffers will point to one array of floats per input channel, and each of these arrays will contain blockSize/2+1 consecutive pairs of real and imaginary component floats corresponding to bins 0..(blockSize/2) of the FFT output. That is, bin 0 (the first pair of floats) contains the DC output, up to bin blockSize/2 which contains the Nyquist-frequency output. There will therefore be blockSize+2 floats per channel in total. The timestamp will be the real time in seconds of the centre of the FFT input window (i.e. the very first block passed to process might contain the FFT of half a block of zero samples and the first half-block of the actual data, with a timestamp of zero).<p> 710 If the plugin's inputDomain is FrequencyDomain, inputBuffers will point to one array of floats per input channel, and each of these arrays will contain blockSize/2+1 consecutive pairs of real and imaginary component floats corresponding to bins 0..(blockSize/2) of the FFT output. That is, bin 0 (the first pair of floats) contains the DC output, up to bin blockSize/2 which contains the Nyquist-frequency output. There will therefore be blockSize+2 floats per channel in total. The timestamp will be the real time in seconds of the centre of the FFT input window (i.e. the very first block passed to process might contain the FFT of half a block of zero samples and the first half-block of the actual data, with a timestamp of zero).<p>
711 Return any features that have become available after this process call. (These do not necessarily have to fall within the process block, except for OneSamplePerStep outputs.) 711 Return any features that have become available after this process call. (These do not necessarily have to fall within the process block, except for OneSamplePerStep outputs.)
712 <p>Implements <a class="el" href="classVamp_1_1Plugin.html#e4aed3bebfe80a2e2fccd3d37af26996">Vamp::Plugin</a>.</p> 712 <p>Implements <a class="el" href="classVamp_1_1Plugin.html#e4aed3bebfe80a2e2fccd3d37af26996">Vamp::Plugin</a>.</p>
713 713
714 <p>Definition at line <a class="el" href="AmplitudeFollower_8cpp-source.html#l00200">200</a> of file <a class="el" href="AmplitudeFollower_8cpp-source.html">AmplitudeFollower.cpp</a>.</p> 714 <p>Definition at line <a class="el" href="AmplitudeFollower_8cpp-source.html#l00200">200</a> of file <a class="el" href="AmplitudeFollower_8cpp-source.html">AmplitudeFollower.cpp</a>.</p>
715 715
716 <p>References <a class="el" href="Plugin_8h-source.html#l00325">Vamp::Plugin::Feature::hasTimestamp</a>, <a class="el" href="AmplitudeFollower_8h-source.html#l00079">m_clampcoef</a>, <a class="el" href="AmplitudeFollower_8h-source.html#l00078">m_previn</a>, <a class="el" href="AmplitudeFollower_8h-source.html#l00080">m_relaxcoef</a>, <a class="el" href="AmplitudeFollower_8h-source.html#l00077">m_stepSize</a>, and <a class="el" href="Plugin_8h-source.html#l00339">Vamp::Plugin::Feature::values</a>.</p> 716 <p>References <a class="el" href="vamp-sdk_2Plugin_8h-source.html#l00339">Vamp::Plugin::Feature::hasTimestamp</a>, <a class="el" href="AmplitudeFollower_8h-source.html#l00079">m_clampcoef</a>, <a class="el" href="AmplitudeFollower_8h-source.html#l00078">m_previn</a>, <a class="el" href="AmplitudeFollower_8h-source.html#l00080">m_relaxcoef</a>, <a class="el" href="AmplitudeFollower_8h-source.html#l00077">m_stepSize</a>, and <a class="el" href="vamp-sdk_2Plugin_8h-source.html#l00369">Vamp::Plugin::Feature::values</a>.</p>
717 717
718 </div> 718 </div>
719 </div><p> 719 </div><p>
720 <a class="anchor" name="368606f643b88e0df0823d85e36f030c"></a><!-- doxytag: member="AmplitudeFollower::getRemainingFeatures" ref="368606f643b88e0df0823d85e36f030c" args="()" --> 720 <a class="anchor" name="368606f643b88e0df0823d85e36f030c"></a><!-- doxytag: member="AmplitudeFollower::getRemainingFeatures" ref="368606f643b88e0df0823d85e36f030c" args="()" -->
721 <div class="memitem"> 721 <div class="memitem">
724 <tr> 724 <tr>
725 <td class="memname"><a class="el" href="classVamp_1_1Plugin.html#448fb57dc245d47923ec9eeaf9856c5f">AmplitudeFollower::FeatureSet</a> AmplitudeFollower::getRemainingFeatures </td> 725 <td class="memname"><a class="el" href="classVamp_1_1Plugin.html#448fb57dc245d47923ec9eeaf9856c5f">AmplitudeFollower::FeatureSet</a> AmplitudeFollower::getRemainingFeatures </td>
726 <td>(</td> 726 <td>(</td>
727 <td class="paramname"> </td> 727 <td class="paramname"> </td>
728 <td>&nbsp;)&nbsp;</td> 728 <td>&nbsp;)&nbsp;</td>
729 <td width="100%"><code> [virtual]</code></td> 729 <td><code> [virtual]</code></td>
730 </tr> 730 </tr>
731 </table> 731 </table>
732 </div> 732 </div>
733 <div class="memdoc"> 733 <div class="memdoc">
734 734
749 <tr> 749 <tr>
750 <td class="memname">virtual size_t Vamp::Plugin::getPreferredBlockSize </td> 750 <td class="memname">virtual size_t Vamp::Plugin::getPreferredBlockSize </td>
751 <td>(</td> 751 <td>(</td>
752 <td class="paramname"> </td> 752 <td class="paramname"> </td>
753 <td>&nbsp;)&nbsp;</td> 753 <td>&nbsp;)&nbsp;</td>
754 <td width="100%"> const<code> [inline, virtual, inherited]</code></td> 754 <td> const<code> [inline, virtual, inherited]</code></td>
755 </tr> 755 </tr>
756 </table> 756 </table>
757 </div> 757 </div>
758 <div class="memdoc"> 758 <div class="memdoc">
759 759
760 <p> 760 <p>
761 Get the preferred block size (window size -- the number of sample frames passed in each block to the <a class="el" href="classVamp_1_1Plugin.html#e4aed3bebfe80a2e2fccd3d37af26996" title="Process a single block of input data.">process()</a> function). 761 Get the preferred block size (window size -- the number of sample frames passed in each block to the <a class="el" href="classVamp_1_1Plugin.html#e4aed3bebfe80a2e2fccd3d37af26996" title="Process a single block of input data.">process()</a> function).
762 <p> 762 <p>
763 This should be called before <a class="el" href="classVamp_1_1Plugin.html#f26212cf5fc511b603a8b48034247822" title="Initialise a plugin to prepare it for use with the given number of input channels...">initialise()</a>.<p> 763 This should be called before <a class="el" href="classVamp_1_1Plugin.html#f26212cf5fc511b603a8b48034247822" title="Initialise a plugin to prepare it for use with the given number of input channels...">initialise()</a>.<p>
764 A plugin that can handle any block size may return 0. The final block size will be set in the <a class="el" href="classVamp_1_1Plugin.html#f26212cf5fc511b603a8b48034247822" title="Initialise a plugin to prepare it for use with the given number of input channels...">initialise()</a> call. 764 A plugin that can handle any block size may return 0. The final block size will be set in the <a class="el" href="classVamp_1_1Plugin.html#f26212cf5fc511b603a8b48034247822" title="Initialise a plugin to prepare it for use with the given number of input channels...">initialise()</a> call.
765 <p>Reimplemented in <a class="el" href="classVamp_1_1PluginHostAdapter.html#d5e0ea8042bdec4dd18428991117e07a">Vamp::PluginHostAdapter</a>, <a class="el" href="classVamp_1_1HostExt_1_1PluginInputDomainAdapter.html#4cf40d09d02022b1962ff17bb0324ea5">Vamp::HostExt::PluginInputDomainAdapter</a>, <a class="el" href="classVamp_1_1HostExt_1_1PluginWrapper.html#2c62a656313a819650656643a867ad01">Vamp::HostExt::PluginWrapper</a>, and <a class="el" href="classPercussionOnsetDetector.html#410c0b47c6c849d7ed9b726b84402ad0">PercussionOnsetDetector</a>.</p> 765 <p>Reimplemented in <a class="el" href="classVamp_1_1HostExt_1_1PluginBufferingAdapter.html#21e45180b19873f9ab69fe7a4e184a03">Vamp::HostExt::PluginBufferingAdapter</a>, <a class="el" href="classVamp_1_1PluginHostAdapter.html#d5e0ea8042bdec4dd18428991117e07a">Vamp::PluginHostAdapter</a>, <a class="el" href="classVamp_1_1HostExt_1_1PluginInputDomainAdapter.html#4cf40d09d02022b1962ff17bb0324ea5">Vamp::HostExt::PluginInputDomainAdapter</a>, <a class="el" href="classVamp_1_1HostExt_1_1PluginWrapper.html#2c62a656313a819650656643a867ad01">Vamp::HostExt::PluginWrapper</a>, <a class="el" href="classFixedTempoEstimator.html#68b8569b71504a0478caf990dbe30683">FixedTempoEstimator</a>, and <a class="el" href="classPercussionOnsetDetector.html#410c0b47c6c849d7ed9b726b84402ad0">PercussionOnsetDetector</a>.</p>
766 766
767 <p>Definition at line <a class="el" href="Plugin_8h-source.html#l00171">171</a> of file <a class="el" href="Plugin_8h-source.html">Plugin.h</a>.</p> 767 <p>Definition at line <a class="el" href="vamp-sdk_2Plugin_8h-source.html#l00174">174</a> of file <a class="el" href="vamp-sdk_2Plugin_8h-source.html">vamp-sdk/Plugin.h</a>.</p>
768 768
769 <p>Referenced by <a class="el" href="PluginWrapper_8cpp-source.html#l00164">Vamp::HostExt::PluginWrapper::getPreferredBlockSize()</a>, <a class="el" href="PluginInputDomainAdapter_8cpp-source.html#l00283">Vamp::HostExt::PluginInputDomainAdapter::Impl::getPreferredBlockSize()</a>, <a class="el" href="PluginBufferingAdapter_8cpp-source.html#l00314">Vamp::HostExt::PluginBufferingAdapter::Impl::initialise()</a>, and <a class="el" href="vamp-simple-host_8cpp-source.html#l00244">runPlugin()</a>.</p> 769 <p>Referenced by <a class="el" href="vamp-simple-host_8cpp-source.html#l00559">enumeratePlugins()</a>, and <a class="el" href="vamp-simple-host_8cpp-source.html#l00265">runPlugin()</a>.</p>
770 770
771 </div> 771 </div>
772 </div><p> 772 </div><p>
773 <a class="anchor" name="514c716c22f81c055f19b56c3f882567"></a><!-- doxytag: member="AmplitudeFollower::getPreferredStepSize" ref="514c716c22f81c055f19b56c3f882567" args="() const " --> 773 <a class="anchor" name="514c716c22f81c055f19b56c3f882567"></a><!-- doxytag: member="AmplitudeFollower::getPreferredStepSize" ref="514c716c22f81c055f19b56c3f882567" args="() const " -->
774 <div class="memitem"> 774 <div class="memitem">
777 <tr> 777 <tr>
778 <td class="memname">virtual size_t Vamp::Plugin::getPreferredStepSize </td> 778 <td class="memname">virtual size_t Vamp::Plugin::getPreferredStepSize </td>
779 <td>(</td> 779 <td>(</td>
780 <td class="paramname"> </td> 780 <td class="paramname"> </td>
781 <td>&nbsp;)&nbsp;</td> 781 <td>&nbsp;)&nbsp;</td>
782 <td width="100%"> const<code> [inline, virtual, inherited]</code></td> 782 <td> const<code> [inline, virtual, inherited]</code></td>
783 </tr> 783 </tr>
784 </table> 784 </table>
785 </div> 785 </div>
786 <div class="memdoc"> 786 <div class="memdoc">
787 787
788 <p> 788 <p>
789 Get the preferred step size (window increment -- the distance in sample frames between the start frames of consecutive blocks passed to the <a class="el" href="classVamp_1_1Plugin.html#e4aed3bebfe80a2e2fccd3d37af26996" title="Process a single block of input data.">process()</a> function) for the plugin. 789 Get the preferred step size (window increment -- the distance in sample frames between the start frames of consecutive blocks passed to the <a class="el" href="classVamp_1_1Plugin.html#e4aed3bebfe80a2e2fccd3d37af26996" title="Process a single block of input data.">process()</a> function) for the plugin.
790 <p> 790 <p>
791 This should be called before <a class="el" href="classVamp_1_1Plugin.html#f26212cf5fc511b603a8b48034247822" title="Initialise a plugin to prepare it for use with the given number of input channels...">initialise()</a>.<p> 791 This should be called before <a class="el" href="classVamp_1_1Plugin.html#f26212cf5fc511b603a8b48034247822" title="Initialise a plugin to prepare it for use with the given number of input channels...">initialise()</a>.<p>
792 A plugin may return 0 if it has no particular interest in the step size. In this case, the host should make the step size equal to the block size if the plugin is accepting input in the time domain. If the plugin is accepting input in the frequency domain, the host may use any step size. The final step size will be set in the <a class="el" href="classVamp_1_1Plugin.html#f26212cf5fc511b603a8b48034247822" title="Initialise a plugin to prepare it for use with the given number of input channels...">initialise()</a> call. 792 A plugin may return 0 if it has no particular interest in the step size. In this case, the host should make the step size equal to the block size if the plugin is accepting input in the time domain. If the plugin is accepting input in the frequency domain, the host may use any step size. The final step size will be set in the <a class="el" href="classVamp_1_1Plugin.html#f26212cf5fc511b603a8b48034247822" title="Initialise a plugin to prepare it for use with the given number of input channels...">initialise()</a> call.
793 <p>Reimplemented in <a class="el" href="classVamp_1_1PluginHostAdapter.html#859ad5d59402691daed3cf1af1899ebe">Vamp::PluginHostAdapter</a>, <a class="el" href="classVamp_1_1HostExt_1_1PluginBufferingAdapter.html#2e66d009df69c951001e5d2786973d60">Vamp::HostExt::PluginBufferingAdapter</a>, <a class="el" href="classVamp_1_1HostExt_1_1PluginInputDomainAdapter.html#d979af9f1cbf2eeb16f4eaedb4a4f565">Vamp::HostExt::PluginInputDomainAdapter</a>, <a class="el" href="classVamp_1_1HostExt_1_1PluginWrapper.html#0137d93d7019bacc31104836fb4d352e">Vamp::HostExt::PluginWrapper</a>, and <a class="el" href="classPercussionOnsetDetector.html#733824891e11c306a7a678534b89b968">PercussionOnsetDetector</a>.</p> 793 <p>Reimplemented in <a class="el" href="classVamp_1_1HostExt_1_1PluginBufferingAdapter.html#2e66d009df69c951001e5d2786973d60">Vamp::HostExt::PluginBufferingAdapter</a>, <a class="el" href="classVamp_1_1PluginHostAdapter.html#859ad5d59402691daed3cf1af1899ebe">Vamp::PluginHostAdapter</a>, <a class="el" href="classVamp_1_1HostExt_1_1PluginInputDomainAdapter.html#d979af9f1cbf2eeb16f4eaedb4a4f565">Vamp::HostExt::PluginInputDomainAdapter</a>, <a class="el" href="classVamp_1_1HostExt_1_1PluginWrapper.html#0137d93d7019bacc31104836fb4d352e">Vamp::HostExt::PluginWrapper</a>, <a class="el" href="classFixedTempoEstimator.html#d450bb7e7df559ae3d68dfbfb085676f">FixedTempoEstimator</a>, and <a class="el" href="classPercussionOnsetDetector.html#733824891e11c306a7a678534b89b968">PercussionOnsetDetector</a>.</p>
794 794
795 <p>Definition at line <a class="el" href="Plugin_8h-source.html#l00186">186</a> of file <a class="el" href="Plugin_8h-source.html">Plugin.h</a>.</p> 795 <p>Definition at line <a class="el" href="vamp-sdk_2Plugin_8h-source.html#l00189">189</a> of file <a class="el" href="vamp-sdk_2Plugin_8h-source.html">vamp-sdk/Plugin.h</a>.</p>
796 796
797 <p>Referenced by <a class="el" href="PluginWrapper_8cpp-source.html#l00158">Vamp::HostExt::PluginWrapper::getPreferredStepSize()</a>, <a class="el" href="PluginInputDomainAdapter_8cpp-source.html#l00271">Vamp::HostExt::PluginInputDomainAdapter::Impl::getPreferredStepSize()</a>, <a class="el" href="PluginBufferingAdapter_8cpp-source.html#l00314">Vamp::HostExt::PluginBufferingAdapter::Impl::initialise()</a>, and <a class="el" href="vamp-simple-host_8cpp-source.html#l00244">runPlugin()</a>.</p> 797 <p>Referenced by <a class="el" href="vamp-simple-host_8cpp-source.html#l00559">enumeratePlugins()</a>, and <a class="el" href="vamp-simple-host_8cpp-source.html#l00265">runPlugin()</a>.</p>
798 798
799 </div> 799 </div>
800 </div><p> 800 </div><p>
801 <a class="anchor" name="267b42e866df3cf0d190893e8096f525"></a><!-- doxytag: member="AmplitudeFollower::getMinChannelCount" ref="267b42e866df3cf0d190893e8096f525" args="() const " --> 801 <a class="anchor" name="267b42e866df3cf0d190893e8096f525"></a><!-- doxytag: member="AmplitudeFollower::getMinChannelCount" ref="267b42e866df3cf0d190893e8096f525" args="() const " -->
802 <div class="memitem"> 802 <div class="memitem">
805 <tr> 805 <tr>
806 <td class="memname">virtual size_t Vamp::Plugin::getMinChannelCount </td> 806 <td class="memname">virtual size_t Vamp::Plugin::getMinChannelCount </td>
807 <td>(</td> 807 <td>(</td>
808 <td class="paramname"> </td> 808 <td class="paramname"> </td>
809 <td>&nbsp;)&nbsp;</td> 809 <td>&nbsp;)&nbsp;</td>
810 <td width="100%"> const<code> [inline, virtual, inherited]</code></td> 810 <td> const<code> [inline, virtual, inherited]</code></td>
811 </tr> 811 </tr>
812 </table> 812 </table>
813 </div> 813 </div>
814 <div class="memdoc"> 814 <div class="memdoc">
815 815
817 Get the minimum supported number of input channels. 817 Get the minimum supported number of input channels.
818 <p> 818 <p>
819 819
820 <p>Reimplemented in <a class="el" href="classVamp_1_1PluginHostAdapter.html#67d1198c0e58d3f0076d0eda599ff28d">Vamp::PluginHostAdapter</a>, and <a class="el" href="classVamp_1_1HostExt_1_1PluginWrapper.html#2b28f1cf37d46a514f1e1411a6037bf8">Vamp::HostExt::PluginWrapper</a>.</p> 820 <p>Reimplemented in <a class="el" href="classVamp_1_1PluginHostAdapter.html#67d1198c0e58d3f0076d0eda599ff28d">Vamp::PluginHostAdapter</a>, and <a class="el" href="classVamp_1_1HostExt_1_1PluginWrapper.html#2b28f1cf37d46a514f1e1411a6037bf8">Vamp::HostExt::PluginWrapper</a>.</p>
821 821
822 <p>Definition at line <a class="el" href="Plugin_8h-source.html#l00191">191</a> of file <a class="el" href="Plugin_8h-source.html">Plugin.h</a>.</p> 822 <p>Definition at line <a class="el" href="vamp-sdk_2Plugin_8h-source.html#l00194">194</a> of file <a class="el" href="vamp-sdk_2Plugin_8h-source.html">vamp-sdk/Plugin.h</a>.</p>
823 823
824 <p>Referenced by <a class="el" href="PluginWrapper_8cpp-source.html#l00170">Vamp::HostExt::PluginWrapper::getMinChannelCount()</a>, <a class="el" href="ZeroCrossing_8cpp-source.html#l00093">ZeroCrossing::initialise()</a>, <a class="el" href="SpectralCentroid_8cpp-source.html#l00095">SpectralCentroid::initialise()</a>, <a class="el" href="PluginChannelAdapter_8cpp-source.html#l00119">Vamp::HostExt::PluginChannelAdapter::Impl::initialise()</a>, <a class="el" href="PercussionOnsetDetector_8cpp-source.html#l00113">PercussionOnsetDetector::initialise()</a>, <a class="el" href="AmplitudeFollower_8cpp-source.html#l00105">initialise()</a>, and <a class="el" href="vamp-simple-host_8cpp-source.html#l00244">runPlugin()</a>.</p> 824 <p>Referenced by <a class="el" href="vamp-simple-host_8cpp-source.html#l00559">enumeratePlugins()</a>, <a class="el" href="ZeroCrossing_8cpp-source.html#l00094">ZeroCrossing::initialise()</a>, <a class="el" href="SpectralCentroid_8cpp-source.html#l00099">SpectralCentroid::initialise()</a>, <a class="el" href="PowerSpectrum_8cpp-source.html#l00092">PowerSpectrum::initialise()</a>, <a class="el" href="PercussionOnsetDetector_8cpp-source.html#l00113">PercussionOnsetDetector::initialise()</a>, <a class="el" href="FixedTempoEstimator_8cpp-source.html#l00676">FixedTempoEstimator::initialise()</a>, <a class="el" href="AmplitudeFollower_8cpp-source.html#l00105">initialise()</a>, and <a class="el" href="vamp-simple-host_8cpp-source.html#l00265">runPlugin()</a>.</p>
825 825
826 </div> 826 </div>
827 </div><p> 827 </div><p>
828 <a class="anchor" name="2c5ab12b6fa4847cb244bd1e9cb3ae5e"></a><!-- doxytag: member="AmplitudeFollower::getMaxChannelCount" ref="2c5ab12b6fa4847cb244bd1e9cb3ae5e" args="() const " --> 828 <a class="anchor" name="2c5ab12b6fa4847cb244bd1e9cb3ae5e"></a><!-- doxytag: member="AmplitudeFollower::getMaxChannelCount" ref="2c5ab12b6fa4847cb244bd1e9cb3ae5e" args="() const " -->
829 <div class="memitem"> 829 <div class="memitem">
832 <tr> 832 <tr>
833 <td class="memname">virtual size_t Vamp::Plugin::getMaxChannelCount </td> 833 <td class="memname">virtual size_t Vamp::Plugin::getMaxChannelCount </td>
834 <td>(</td> 834 <td>(</td>
835 <td class="paramname"> </td> 835 <td class="paramname"> </td>
836 <td>&nbsp;)&nbsp;</td> 836 <td>&nbsp;)&nbsp;</td>
837 <td width="100%"> const<code> [inline, virtual, inherited]</code></td> 837 <td> const<code> [inline, virtual, inherited]</code></td>
838 </tr> 838 </tr>
839 </table> 839 </table>
840 </div> 840 </div>
841 <div class="memdoc"> 841 <div class="memdoc">
842 842
844 Get the maximum supported number of input channels. 844 Get the maximum supported number of input channels.
845 <p> 845 <p>
846 846
847 <p>Reimplemented in <a class="el" href="classVamp_1_1PluginHostAdapter.html#25091905e97e39d515d8ffc1a9f2b9e0">Vamp::PluginHostAdapter</a>, and <a class="el" href="classVamp_1_1HostExt_1_1PluginWrapper.html#985eb21f1827bfbc3950d6871b107a58">Vamp::HostExt::PluginWrapper</a>.</p> 847 <p>Reimplemented in <a class="el" href="classVamp_1_1PluginHostAdapter.html#25091905e97e39d515d8ffc1a9f2b9e0">Vamp::PluginHostAdapter</a>, and <a class="el" href="classVamp_1_1HostExt_1_1PluginWrapper.html#985eb21f1827bfbc3950d6871b107a58">Vamp::HostExt::PluginWrapper</a>.</p>
848 848
849 <p>Definition at line <a class="el" href="Plugin_8h-source.html#l00196">196</a> of file <a class="el" href="Plugin_8h-source.html">Plugin.h</a>.</p> 849 <p>Definition at line <a class="el" href="vamp-sdk_2Plugin_8h-source.html#l00199">199</a> of file <a class="el" href="vamp-sdk_2Plugin_8h-source.html">vamp-sdk/Plugin.h</a>.</p>
850 850
851 <p>Referenced by <a class="el" href="PluginWrapper_8cpp-source.html#l00175">Vamp::HostExt::PluginWrapper::getMaxChannelCount()</a>, <a class="el" href="ZeroCrossing_8cpp-source.html#l00093">ZeroCrossing::initialise()</a>, <a class="el" href="SpectralCentroid_8cpp-source.html#l00095">SpectralCentroid::initialise()</a>, <a class="el" href="PluginChannelAdapter_8cpp-source.html#l00119">Vamp::HostExt::PluginChannelAdapter::Impl::initialise()</a>, <a class="el" href="PercussionOnsetDetector_8cpp-source.html#l00113">PercussionOnsetDetector::initialise()</a>, <a class="el" href="AmplitudeFollower_8cpp-source.html#l00105">initialise()</a>, and <a class="el" href="vamp-simple-host_8cpp-source.html#l00244">runPlugin()</a>.</p> 851 <p>Referenced by <a class="el" href="vamp-simple-host_8cpp-source.html#l00559">enumeratePlugins()</a>, <a class="el" href="ZeroCrossing_8cpp-source.html#l00094">ZeroCrossing::initialise()</a>, <a class="el" href="SpectralCentroid_8cpp-source.html#l00099">SpectralCentroid::initialise()</a>, <a class="el" href="PowerSpectrum_8cpp-source.html#l00092">PowerSpectrum::initialise()</a>, <a class="el" href="PercussionOnsetDetector_8cpp-source.html#l00113">PercussionOnsetDetector::initialise()</a>, <a class="el" href="FixedTempoEstimator_8cpp-source.html#l00676">FixedTempoEstimator::initialise()</a>, <a class="el" href="AmplitudeFollower_8cpp-source.html#l00105">initialise()</a>, and <a class="el" href="vamp-simple-host_8cpp-source.html#l00265">runPlugin()</a>.</p>
852 852
853 </div> 853 </div>
854 </div><p> 854 </div><p>
855 <a class="anchor" name="be13b3997a69fbcc09e2213faa352f91"></a><!-- doxytag: member="AmplitudeFollower::getType" ref="be13b3997a69fbcc09e2213faa352f91" args="() const " --> 855 <a class="anchor" name="be13b3997a69fbcc09e2213faa352f91"></a><!-- doxytag: member="AmplitudeFollower::getType" ref="be13b3997a69fbcc09e2213faa352f91" args="() const " -->
856 <div class="memitem"> 856 <div class="memitem">
859 <tr> 859 <tr>
860 <td class="memname">virtual std::string Vamp::Plugin::getType </td> 860 <td class="memname">virtual std::string Vamp::Plugin::getType </td>
861 <td>(</td> 861 <td>(</td>
862 <td class="paramname"> </td> 862 <td class="paramname"> </td>
863 <td>&nbsp;)&nbsp;</td> 863 <td>&nbsp;)&nbsp;</td>
864 <td width="100%"> const<code> [inline, virtual, inherited]</code></td> 864 <td> const<code> [inline, virtual, inherited]</code></td>
865 </tr> 865 </tr>
866 </table> 866 </table>
867 </div> 867 </div>
868 <div class="memdoc"> 868 <div class="memdoc">
869 869
871 Used to distinguish between <a class="el" href="classVamp_1_1Plugin.html" title="Vamp::Plugin is a base class for plugin instance classes that provide feature extraction...">Vamp::Plugin</a> and other potential sibling subclasses of <a class="el" href="classVamp_1_1PluginBase.html" title="A base class for plugins with optional configurable parameters, programs, etc.">PluginBase</a>. 871 Used to distinguish between <a class="el" href="classVamp_1_1Plugin.html" title="Vamp::Plugin is a base class for plugin instance classes that provide feature extraction...">Vamp::Plugin</a> and other potential sibling subclasses of <a class="el" href="classVamp_1_1PluginBase.html" title="A base class for plugins with optional configurable parameters, programs, etc.">PluginBase</a>.
872 <p> 872 <p>
873 Do not reimplement this function in your subclass. 873 Do not reimplement this function in your subclass.
874 <p>Implements <a class="el" href="classVamp_1_1PluginBase.html#2da03e9ced8dc7e4382205e6dc05dbff">Vamp::PluginBase</a>.</p> 874 <p>Implements <a class="el" href="classVamp_1_1PluginBase.html#2da03e9ced8dc7e4382205e6dc05dbff">Vamp::PluginBase</a>.</p>
875 875
876 <p>Definition at line <a class="el" href="Plugin_8h-source.html#l00391">391</a> of file <a class="el" href="Plugin_8h-source.html">Plugin.h</a>.</p> 876 <p>Definition at line <a class="el" href="vamp-sdk_2Plugin_8h-source.html#l00425">425</a> of file <a class="el" href="vamp-sdk_2Plugin_8h-source.html">vamp-sdk/Plugin.h</a>.</p>
877 877
878 </div> 878 </div>
879 </div><p> 879 </div><p>
880 <a class="anchor" name="8fd2c48291c64b790f0efb8948508dcf"></a><!-- doxytag: member="AmplitudeFollower::getVampApiVersion" ref="8fd2c48291c64b790f0efb8948508dcf" args="() const " --> 880 <a class="anchor" name="8fd2c48291c64b790f0efb8948508dcf"></a><!-- doxytag: member="AmplitudeFollower::getVampApiVersion" ref="8fd2c48291c64b790f0efb8948508dcf" args="() const " -->
881 <div class="memitem"> 881 <div class="memitem">
884 <tr> 884 <tr>
885 <td class="memname">virtual unsigned int Vamp::PluginBase::getVampApiVersion </td> 885 <td class="memname">virtual unsigned int Vamp::PluginBase::getVampApiVersion </td>
886 <td>(</td> 886 <td>(</td>
887 <td class="paramname"> </td> 887 <td class="paramname"> </td>
888 <td>&nbsp;)&nbsp;</td> 888 <td>&nbsp;)&nbsp;</td>
889 <td width="100%"> const<code> [inline, virtual, inherited]</code></td> 889 <td> const<code> [inline, virtual, inherited]</code></td>
890 </tr> 890 </tr>
891 </table> 891 </table>
892 </div> 892 </div>
893 <div class="memdoc"> 893 <div class="memdoc">
894 894
895 <p> 895 <p>
896 Get the <a class="el" href="namespaceVamp.html" title="If you want to compile using FFTW instead of the built-in FFT implementation for...">Vamp</a> API compatibility level of the plugin. 896 Get the <a class="el" href="namespaceVamp.html">Vamp</a> API compatibility level of the plugin.
897 <p> 897 <p>
898 898
899 <p>Reimplemented in <a class="el" href="classVamp_1_1PluginHostAdapter.html#98aadddc8403eb46c9d8c5a9d1fdd19e">Vamp::PluginHostAdapter</a>, and <a class="el" href="classVamp_1_1HostExt_1_1PluginWrapper.html#74147fda6b44ff2169bd4a1eea0d46ff">Vamp::HostExt::PluginWrapper</a>.</p> 899 <p>Reimplemented in <a class="el" href="classVamp_1_1PluginHostAdapter.html#98aadddc8403eb46c9d8c5a9d1fdd19e">Vamp::PluginHostAdapter</a>, and <a class="el" href="classVamp_1_1HostExt_1_1PluginWrapper.html#74147fda6b44ff2169bd4a1eea0d46ff">Vamp::HostExt::PluginWrapper</a>.</p>
900 900
901 <p>Definition at line <a class="el" href="PluginBase_8h-source.html#l00067">67</a> of file <a class="el" href="PluginBase_8h-source.html">PluginBase.h</a>.</p> 901 <p>Definition at line <a class="el" href="vamp-sdk_2PluginBase_8h-source.html#l00072">72</a> of file <a class="el" href="vamp-sdk_2PluginBase_8h-source.html">vamp-sdk/PluginBase.h</a>.</p>
902 902
903 <p>Referenced by <a class="el" href="vamp-simple-host_8cpp-source.html#l00478">enumeratePlugins()</a>, <a class="el" href="PluginAdapter_8cpp-source.html#l00153">Vamp::PluginAdapterBase::Impl::getDescriptor()</a>, and <a class="el" href="PluginWrapper_8cpp-source.html#l00080">Vamp::HostExt::PluginWrapper::getVampApiVersion()</a>.</p> 903 <p>Referenced by <a class="el" href="vamp-simple-host_8cpp-source.html#l00559">enumeratePlugins()</a>.</p>
904 904
905 </div> 905 </div>
906 </div><p> 906 </div><p>
907 <a class="anchor" name="bb307c60bdb981d5f5af50c3c4ae84af"></a><!-- doxytag: member="AmplitudeFollower::getPrograms" ref="bb307c60bdb981d5f5af50c3c4ae84af" args="() const " --> 907 <a class="anchor" name="bb307c60bdb981d5f5af50c3c4ae84af"></a><!-- doxytag: member="AmplitudeFollower::getPrograms" ref="bb307c60bdb981d5f5af50c3c4ae84af" args="() const " -->
908 <div class="memitem"> 908 <div class="memitem">
911 <tr> 911 <tr>
912 <td class="memname">virtual <a class="el" href="classVamp_1_1PluginBase.html#7f66f00437b21e5f694fe02356b12f20">ProgramList</a> Vamp::PluginBase::getPrograms </td> 912 <td class="memname">virtual <a class="el" href="classVamp_1_1PluginBase.html#7f66f00437b21e5f694fe02356b12f20">ProgramList</a> Vamp::PluginBase::getPrograms </td>
913 <td>(</td> 913 <td>(</td>
914 <td class="paramname"> </td> 914 <td class="paramname"> </td>
915 <td>&nbsp;)&nbsp;</td> 915 <td>&nbsp;)&nbsp;</td>
916 <td width="100%"> const<code> [inline, virtual, inherited]</code></td> 916 <td> const<code> [inline, virtual, inherited]</code></td>
917 </tr> 917 </tr>
918 </table> 918 </table>
919 </div> 919 </div>
920 <div class="memdoc"> 920 <div class="memdoc">
921 921
922 <p> 922 <p>
923 Get the program settings available in this plugin. 923 Get the program settings available in this plugin.
924 <p> 924 <p>
925 A program is a named shorthand for a set of parameter values; changing the program may cause the plugin to alter the values of its published parameters (and/or non-public internal processing parameters). The host should re-read the plugin's parameter values after setting a new program.<p> 925 A program is a named shorthand for a set of parameter values; changing the program may cause the plugin to alter the values of its published parameters (and/or non-public internal processing parameters). The host should re-read the plugin's parameter values after setting a new program.<p>
926 The programs must have unique names. 926 The programs must have unique names.
927 <p>Reimplemented in <a class="el" href="classVamp_1_1PluginHostAdapter.html#7ac5681dcfe08b7b8a796bffc0aff3e3">Vamp::PluginHostAdapter</a>, and <a class="el" href="classVamp_1_1HostExt_1_1PluginWrapper.html#f3abaf717dc4b00cad5770ed6dfa01e1">Vamp::HostExt::PluginWrapper</a>.</p> 927 <p>Reimplemented in <a class="el" href="classVamp_1_1PluginHostAdapter.html#e0cde5cd625418c1bc470b91f75daafc">Vamp::PluginHostAdapter</a>, and <a class="el" href="classVamp_1_1HostExt_1_1PluginWrapper.html#131fbe1df81215020b9aa8cecef4c802">Vamp::HostExt::PluginWrapper</a>.</p>
928 928
929 <p>Definition at line <a class="el" href="PluginBase_8h-source.html#l00229">229</a> of file <a class="el" href="PluginBase_8h-source.html">PluginBase.h</a>.</p> 929 <p>Definition at line <a class="el" href="vamp-sdk_2PluginBase_8h-source.html#l00237">237</a> of file <a class="el" href="vamp-sdk_2PluginBase_8h-source.html">vamp-sdk/PluginBase.h</a>.</p>
930
931 <p>Referenced by <a class="el" href="PluginAdapter_8cpp-source.html#l00153">Vamp::PluginAdapterBase::Impl::getDescriptor()</a>, and <a class="el" href="PluginWrapper_8cpp-source.html#l00140">Vamp::HostExt::PluginWrapper::getPrograms()</a>.</p>
932 930
933 </div> 931 </div>
934 </div><p> 932 </div><p>
935 <a class="anchor" name="24e77eccf1bdfbbca3c79bb25e8799b3"></a><!-- doxytag: member="AmplitudeFollower::getCurrentProgram" ref="24e77eccf1bdfbbca3c79bb25e8799b3" args="() const " --> 933 <a class="anchor" name="24e77eccf1bdfbbca3c79bb25e8799b3"></a><!-- doxytag: member="AmplitudeFollower::getCurrentProgram" ref="24e77eccf1bdfbbca3c79bb25e8799b3" args="() const " -->
936 <div class="memitem"> 934 <div class="memitem">
939 <tr> 937 <tr>
940 <td class="memname">virtual std::string Vamp::PluginBase::getCurrentProgram </td> 938 <td class="memname">virtual std::string Vamp::PluginBase::getCurrentProgram </td>
941 <td>(</td> 939 <td>(</td>
942 <td class="paramname"> </td> 940 <td class="paramname"> </td>
943 <td>&nbsp;)&nbsp;</td> 941 <td>&nbsp;)&nbsp;</td>
944 <td width="100%"> const<code> [inline, virtual, inherited]</code></td> 942 <td> const<code> [inline, virtual, inherited]</code></td>
945 </tr> 943 </tr>
946 </table> 944 </table>
947 </div> 945 </div>
948 <div class="memdoc"> 946 <div class="memdoc">
949 947
951 Get the current program. 949 Get the current program.
952 <p> 950 <p>
953 951
954 <p>Reimplemented in <a class="el" href="classVamp_1_1PluginHostAdapter.html#34859eff8ca8d862af39be9636ec1867">Vamp::PluginHostAdapter</a>, and <a class="el" href="classVamp_1_1HostExt_1_1PluginWrapper.html#7a312dd42d161064b70afd7ff24c0651">Vamp::HostExt::PluginWrapper</a>.</p> 952 <p>Reimplemented in <a class="el" href="classVamp_1_1PluginHostAdapter.html#34859eff8ca8d862af39be9636ec1867">Vamp::PluginHostAdapter</a>, and <a class="el" href="classVamp_1_1HostExt_1_1PluginWrapper.html#7a312dd42d161064b70afd7ff24c0651">Vamp::HostExt::PluginWrapper</a>.</p>
955 953
956 <p>Definition at line <a class="el" href="PluginBase_8h-source.html#l00234">234</a> of file <a class="el" href="PluginBase_8h-source.html">PluginBase.h</a>.</p> 954 <p>Definition at line <a class="el" href="vamp-sdk_2PluginBase_8h-source.html#l00242">242</a> of file <a class="el" href="vamp-sdk_2PluginBase_8h-source.html">vamp-sdk/PluginBase.h</a>.</p>
957
958 <p>Referenced by <a class="el" href="PluginWrapper_8cpp-source.html#l00146">Vamp::HostExt::PluginWrapper::getCurrentProgram()</a>.</p>
959 955
960 </div> 956 </div>
961 </div><p> 957 </div><p>
962 <a class="anchor" name="add3a547ef140bae200473a9518e3353"></a><!-- doxytag: member="AmplitudeFollower::selectProgram" ref="add3a547ef140bae200473a9518e3353" args="(std::string)" --> 958 <a class="anchor" name="add3a547ef140bae200473a9518e3353"></a><!-- doxytag: member="AmplitudeFollower::selectProgram" ref="add3a547ef140bae200473a9518e3353" args="(std::string)" -->
963 <div class="memitem"> 959 <div class="memitem">
967 <td class="memname">virtual void Vamp::PluginBase::selectProgram </td> 963 <td class="memname">virtual void Vamp::PluginBase::selectProgram </td>
968 <td>(</td> 964 <td>(</td>
969 <td class="paramtype">std::string&nbsp;</td> 965 <td class="paramtype">std::string&nbsp;</td>
970 <td class="paramname"> </td> 966 <td class="paramname"> </td>
971 <td>&nbsp;)&nbsp;</td> 967 <td>&nbsp;)&nbsp;</td>
972 <td width="100%"><code> [inline, virtual, inherited]</code></td> 968 <td><code> [inline, virtual, inherited]</code></td>
973 </tr> 969 </tr>
974 </table> 970 </table>
975 </div> 971 </div>
976 <div class="memdoc"> 972 <div class="memdoc">
977 973
978 <p> 974 <p>
979 Select a program. 975 Select a program.
980 <p> 976 <p>
981 (If the given program name is not one of the available programs, do nothing.) 977 (If the given program name is not one of the available programs, do nothing.)
982 <p>Reimplemented in <a class="el" href="classVamp_1_1PluginHostAdapter.html#8f5515ab34cc13d9403ccc6b4b788683">Vamp::PluginHostAdapter</a>, and <a class="el" href="classVamp_1_1HostExt_1_1PluginWrapper.html#074978333a74fdcf336a8a1d8ea20abf">Vamp::HostExt::PluginWrapper</a>.</p> 978 <p>Reimplemented in <a class="el" href="classVamp_1_1HostExt_1_1PluginBufferingAdapter.html#3cc7000e0aff525950e0a286b87f8927">Vamp::HostExt::PluginBufferingAdapter</a>, <a class="el" href="classVamp_1_1PluginHostAdapter.html#8f5515ab34cc13d9403ccc6b4b788683">Vamp::PluginHostAdapter</a>, and <a class="el" href="classVamp_1_1HostExt_1_1PluginWrapper.html#074978333a74fdcf336a8a1d8ea20abf">Vamp::HostExt::PluginWrapper</a>.</p>
983 979
984 <p>Definition at line <a class="el" href="PluginBase_8h-source.html#l00240">240</a> of file <a class="el" href="PluginBase_8h-source.html">PluginBase.h</a>.</p> 980 <p>Definition at line <a class="el" href="vamp-sdk_2PluginBase_8h-source.html#l00248">248</a> of file <a class="el" href="vamp-sdk_2PluginBase_8h-source.html">vamp-sdk/PluginBase.h</a>.</p>
985
986 <p>Referenced by <a class="el" href="PluginWrapper_8cpp-source.html#l00152">Vamp::HostExt::PluginWrapper::selectProgram()</a>.</p>
987 981
988 </div> 982 </div>
989 </div><p> 983 </div><p>
990 <hr><h2>Member Data Documentation</h2> 984 <hr><h2>Member Data Documentation</h2>
991 <a class="anchor" name="959c2647fd3c5feea2591e3618774027"></a><!-- doxytag: member="AmplitudeFollower::m_stepSize" ref="959c2647fd3c5feea2591e3618774027" args="" --> 985 <a class="anchor" name="959c2647fd3c5feea2591e3618774027"></a><!-- doxytag: member="AmplitudeFollower::m_stepSize" ref="959c2647fd3c5feea2591e3618774027" args="" -->
1075 </div> 1069 </div>
1076 <div class="memdoc"> 1070 <div class="memdoc">
1077 1071
1078 <p> 1072 <p>
1079 1073
1080 <p>Definition at line <a class="el" href="Plugin_8h-source.html#l00397">397</a> of file <a class="el" href="Plugin_8h-source.html">Plugin.h</a>.</p> 1074 <p>Definition at line <a class="el" href="vamp-sdk_2Plugin_8h-source.html#l00431">431</a> of file <a class="el" href="vamp-sdk_2Plugin_8h-source.html">vamp-sdk/Plugin.h</a>.</p>
1081 1075
1082 <p>Referenced by <a class="el" href="ZeroCrossing_8cpp-source.html#l00110">ZeroCrossing::getOutputDescriptors()</a>, <a class="el" href="PercussionOnsetDetector_8cpp-source.html#l00196">PercussionOnsetDetector::getOutputDescriptors()</a>, <a class="el" href="PluginWrapper_8cpp-source.html#l00047">Vamp::HostExt::PluginRateExtractor::getRate()</a>, <a class="el" href="AmplitudeFollower_8cpp-source.html#l00105">initialise()</a>, <a class="el" href="PluginBufferingAdapter_8cpp-source.html#l00238">Vamp::HostExt::PluginBufferingAdapter::PluginBufferingAdapter()</a>, <a class="el" href="PluginInputDomainAdapter_8cpp-source.html#l00113">Vamp::HostExt::PluginInputDomainAdapter::PluginInputDomainAdapter()</a>, <a class="el" href="ZeroCrossing_8cpp-source.html#l00141">ZeroCrossing::process()</a>, <a class="el" href="SpectralCentroid_8cpp-source.html#l00137">SpectralCentroid::process()</a>, and <a class="el" href="PercussionOnsetDetector_8cpp-source.html#l00226">PercussionOnsetDetector::process()</a>.</p> 1076 <p>Referenced by <a class="el" href="ZeroCrossing_8cpp-source.html#l00111">ZeroCrossing::getOutputDescriptors()</a>, <a class="el" href="PercussionOnsetDetector_8cpp-source.html#l00196">PercussionOnsetDetector::getOutputDescriptors()</a>, <a class="el" href="AmplitudeFollower_8cpp-source.html#l00105">initialise()</a>, <a class="el" href="ZeroCrossing_8cpp-source.html#l00142">ZeroCrossing::process()</a>, <a class="el" href="SpectralCentroid_8cpp-source.html#l00141">SpectralCentroid::process()</a>, and <a class="el" href="PercussionOnsetDetector_8cpp-source.html#l00226">PercussionOnsetDetector::process()</a>.</p>
1083 1077
1084 </div> 1078 </div>
1085 </div><p> 1079 </div><p>
1086 <hr>The documentation for this class was generated from the following files:<ul> 1080 <hr>The documentation for this class was generated from the following files:<ul>
1087 <li><a class="el" href="AmplitudeFollower_8h-source.html">AmplitudeFollower.h</a><li><a class="el" href="AmplitudeFollower_8cpp-source.html">AmplitudeFollower.cpp</a></ul> 1081 <li><a class="el" href="AmplitudeFollower_8h-source.html">AmplitudeFollower.h</a><li><a class="el" href="AmplitudeFollower_8cpp-source.html">AmplitudeFollower.cpp</a></ul>
1088 </div> 1082 </div>
1089 <hr size="1"><address style="text-align: right;"><small>Generated on Wed Jul 9 11:36:07 2008 for VampPluginSDK by&nbsp; 1083 <hr size="1"><address style="text-align: right;"><small>Generated on Mon Dec 8 14:37:19 2008 for VampPluginSDK by&nbsp;
1090 <a href="http://www.doxygen.org/index.html"> 1084 <a href="http://www.doxygen.org/index.html">
1091 <img src="doxygen.png" alt="doxygen" align="middle" border="0"></a> 1.5.5 </small></address> 1085 <img src="doxygen.png" alt="doxygen" align="middle" border="0"></a> 1.5.6 </small></address>
1092 </body> 1086 </body>
1093 </html> 1087 </html>