comparison code-doc/classSpectralCentroid.html @ 50:8260c0f4e05b website

Update code docs for 2.3
author cannam
date Tue, 04 Oct 2011 13:47:23 +0000
parents 0976232e353b
children
comparison
equal deleted inserted replaced
49:f75f330aa130 50:8260c0f4e05b
1 <!DOCTYPE HTML PUBLIC "-//W3C//DTD HTML 4.01 Transitional//EN"> 1 <!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Transitional//EN" "http://www.w3.org/TR/xhtml1/DTD/xhtml1-transitional.dtd">
2 <html><head><meta http-equiv="Content-Type" content="text/html;charset=UTF-8"> 2 <html xmlns="http://www.w3.org/1999/xhtml">
3 <head>
4 <meta http-equiv="Content-Type" content="text/xhtml;charset=UTF-8"/>
3 <title>VampPluginSDK: SpectralCentroid Class Reference</title> 5 <title>VampPluginSDK: SpectralCentroid Class Reference</title>
4 <link href="tabs.css" rel="stylesheet" type="text/css"> 6
5 <link href="doxygen.css" rel="stylesheet" type="text/css"> 7 <link href="tabs.css" rel="stylesheet" type="text/css"/>
6 </head><body> 8 <link href="doxygen.css" rel="stylesheet" type="text/css" />
7 <!-- Generated by Doxygen 1.5.8 --> 9 <link href="navtree.css" rel="stylesheet" type="text/css"/>
8 <div class="navigation" id="top"> 10 <script type="text/javascript" src="jquery.js"></script>
9 <div class="tabs"> 11 <script type="text/javascript" src="resize.js"></script>
10 <ul> 12 <script type="text/javascript" src="navtree.js"></script>
11 <li><a href="main.html"><span>Main&nbsp;Page</span></a></li> 13 <script type="text/javascript">
14 $(document).ready(initResizable);
15 </script>
16
17
18 </head>
19 <body>
20 <div id="top"><!-- do not remove this div! -->
21
22
23 <div id="titlearea">
24 <table cellspacing="0" cellpadding="0">
25 <tbody>
26 <tr style="height: 56px;">
27
28
29 <td style="padding-left: 0.5em;">
30 <div id="projectname">VampPluginSDK
31 &#160;<span id="projectnumber">2.1</span>
32 </div>
33
34 </td>
35
36
37
38 </tr>
39 </tbody>
40 </table>
41 </div>
42
43 <!-- Generated by Doxygen 1.7.5.1 -->
44 <div id="navrow1" class="tabs">
45 <ul class="tablist">
46 <li><a href="index.html"><span>Main&#160;Page</span></a></li>
12 <li><a href="namespaces.html"><span>Namespaces</span></a></li> 47 <li><a href="namespaces.html"><span>Namespaces</span></a></li>
13 <li class="current"><a href="annotated.html"><span>Classes</span></a></li> 48 <li class="current"><a href="annotated.html"><span>Classes</span></a></li>
14 <li><a href="files.html"><span>Files</span></a></li> 49 <li><a href="files.html"><span>Files</span></a></li>
15 <li><a href="dirs.html"><span>Directories</span></a></li> 50 <li><a href="dirs.html"><span>Directories</span></a></li>
16 </ul> 51 </ul>
17 </div> 52 </div>
18 <div class="tabs"> 53 <div id="navrow2" class="tabs2">
19 <ul> 54 <ul class="tablist">
20 <li><a href="annotated.html"><span>Class&nbsp;List</span></a></li> 55 <li><a href="annotated.html"><span>Class&#160;List</span></a></li>
21 <li><a href="hierarchy.html"><span>Class&nbsp;Hierarchy</span></a></li> 56 <li><a href="inherits.html"><span>Class&#160;Hierarchy</span></a></li>
22 <li><a href="functions.html"><span>Class&nbsp;Members</span></a></li> 57 <li><a href="functions.html"><span>Class&#160;Members</span></a></li>
23 </ul> 58 </ul>
24 </div> 59 </div>
25 </div> 60 </div>
61 <div id="side-nav" class="ui-resizable side-nav-resizable">
62 <div id="nav-tree">
63 <div id="nav-tree-contents">
64 </div>
65 </div>
66 <div id="splitbar" style="-moz-user-select:none;"
67 class="ui-resizable-handle">
68 </div>
69 </div>
70 <script type="text/javascript">
71 initNavTree('classSpectralCentroid.html','');
72 </script>
73 <div id="doc-content">
74 <div class="header">
75 <div class="summary">
76 <a href="#pub-types">Public Types</a> &#124;
77 <a href="#pub-methods">Public Member Functions</a> &#124;
78 <a href="#pro-attribs">Protected Attributes</a> </div>
79 <div class="headertitle">
80 <div class="title">SpectralCentroid Class Reference</div> </div>
81 </div>
26 <div class="contents"> 82 <div class="contents">
27 <h1>SpectralCentroid Class Reference</h1><!-- doxytag: class="SpectralCentroid" --><!-- doxytag: inherits="Vamp::Plugin" -->Example plugin that calculates the centre of gravity of the frequency domain representation of each block of audio. 83 <!-- doxytag: class="SpectralCentroid" --><!-- doxytag: inherits="Vamp::Plugin" -->
28 <a href="#_details">More...</a> 84 <p>Example plugin that calculates the centre of gravity of the frequency domain representation of each block of audio.
29 <p> 85 <a href="classSpectralCentroid.html#details">More...</a></p>
30 <code>#include &lt;<a class="el" href="SpectralCentroid_8h-source.html">SpectralCentroid.h</a>&gt;</code> 86
31 <p> 87 <p><code>#include &lt;<a class="el" href="SpectralCentroid_8h_source.html">SpectralCentroid.h</a>&gt;</code></p>
32 <div class="dynheader"> 88 <div class="dynheader">
33 Inheritance diagram for SpectralCentroid:</div> 89 Inheritance diagram for SpectralCentroid:</div>
34 <div class="dynsection"> 90 <div class="dyncontent">
35 <p><center><img src="classSpectralCentroid__inherit__graph.png" border="0" usemap="#SpectralCentroid__inherit__map" alt="Inheritance graph"></center> 91 <div class="center"><img src="classSpectralCentroid__inherit__graph.png" border="0" usemap="#SpectralCentroid_inherit__map" alt="Inheritance graph"/></div>
36 <map name="SpectralCentroid__inherit__map"> 92 <map name="SpectralCentroid_inherit__map" id="SpectralCentroid_inherit__map">
37 <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="19,81,112,105"><area shape="rect" href="classVamp_1_1PluginBase.html" title="A base class for plugins with optional configurable parameters, programs, etc." alt="" coords="5,7,125,31"></map> 93 <area shape="rect" id="node2" href="classVamp_1_1Plugin.html" title="Vamp::Plugin is a base class for plugin instance classes that provide feature extraction from audio o..." alt="" coords="18,81,109,106"/><area shape="rect" id="node4" href="classVamp_1_1PluginBase.html" title="A base class for plugins with optional configurable parameters, programs, etc." alt="" coords="5,6,123,31"/></map>
38 <center><font size="2">[<a target="top" href="graph_legend.html">legend</a>]</font></center></div> 94 <center><span class="legend">[<a target="top" href="graph_legend.html">legend</a>]</span></center></div>
39 95
40 <p> 96 <p><a href="classSpectralCentroid-members.html">List of all members.</a></p>
41 <a href="classSpectralCentroid-members.html">List of all members.</a><table border="0" cellpadding="0" cellspacing="0"> 97 <table class="memberdecls">
42 <tr><td></td></tr> 98 <tr><td colspan="2"><h2><a name="pub-types"></a>
43 <tr><td colspan="2"><br><h2>Public Types</h2></td></tr> 99 Public Types</h2></td></tr>
44 <tr><td class="memItemLeft" nowrap align="right" valign="top">enum &nbsp;</td><td class="memItemRight" valign="bottom"><a class="el" href="classVamp_1_1Plugin.html#39cb7649d6dcc20e4cb1640cd55907bc">InputDomain</a> { <a class="el" href="classVamp_1_1Plugin.html#39cb7649d6dcc20e4cb1640cd55907bcd4a9f31b958a43a9757af7893aa2e7ff">TimeDomain</a>, 100 <tr><td class="memItemLeft" align="right" valign="top">enum &#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="classVamp_1_1Plugin.html#a39cb7649d6dcc20e4cb1640cd55907bc">InputDomain</a> { <a class="el" href="classVamp_1_1Plugin.html#a39cb7649d6dcc20e4cb1640cd55907bcad4a9f31b958a43a9757af7893aa2e7ff">TimeDomain</a>,
45 <a class="el" href="classVamp_1_1Plugin.html#39cb7649d6dcc20e4cb1640cd55907bca30e7877ab33f76acbdca28607e6ab53">FrequencyDomain</a> 101 <a class="el" href="classVamp_1_1Plugin.html#a39cb7649d6dcc20e4cb1640cd55907bcaa30e7877ab33f76acbdca28607e6ab53">FrequencyDomain</a>
46 }</td></tr> 102 }</td></tr>
47 103 <tr><td class="memItemLeft" align="right" valign="top">typedef std::vector<br class="typebreak"/>
48 <tr><td class="memItemLeft" nowrap align="right" valign="top">typedef std::vector<br class="typebreak"> 104 &lt; <a class="el" href="structVamp_1_1Plugin_1_1OutputDescriptor.html">OutputDescriptor</a> &gt;&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="classVamp_1_1Plugin.html#a30f531b8fb69fac41a24e3d2a6a08ed9">OutputList</a></td></tr>
49 &lt; <a class="el" href="structVamp_1_1Plugin_1_1OutputDescriptor.html">OutputDescriptor</a> &gt;&nbsp;</td><td class="memItemRight" valign="bottom"><a class="el" href="classVamp_1_1Plugin.html#30f531b8fb69fac41a24e3d2a6a08ed9">OutputList</a></td></tr> 105 <tr><td class="memItemLeft" align="right" valign="top">typedef std::vector&lt; <a class="el" href="structVamp_1_1Plugin_1_1Feature.html">Feature</a> &gt;&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="classVamp_1_1Plugin.html#a0730bc72c87fa02eb8d2854b233f7be1">FeatureList</a></td></tr>
50 106 <tr><td class="memItemLeft" align="right" valign="top">typedef std::map&lt; int, <br class="typebreak"/>
51 <tr><td class="memItemLeft" nowrap align="right" valign="top">typedef std::vector&lt; <a class="el" href="structVamp_1_1Plugin_1_1Feature.html">Feature</a> &gt;&nbsp;</td><td class="memItemRight" valign="bottom"><a class="el" href="classVamp_1_1Plugin.html#0730bc72c87fa02eb8d2854b233f7be1">FeatureList</a></td></tr> 107 <a class="el" href="classVamp_1_1Plugin.html#a0730bc72c87fa02eb8d2854b233f7be1">FeatureList</a> &gt;&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="classVamp_1_1Plugin.html#a448fb57dc245d47923ec9eeaf9856c5f">FeatureSet</a></td></tr>
52 108 <tr><td class="memItemLeft" align="right" valign="top">typedef std::vector<br class="typebreak"/>
53 <tr><td class="memItemLeft" nowrap align="right" valign="top">typedef std::map&lt; int, <br class="typebreak"> 109 &lt; <a class="el" href="structVamp_1_1PluginBase_1_1ParameterDescriptor.html">ParameterDescriptor</a> &gt;&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="classVamp_1_1PluginBase.html#a3b6bb4bbd86affe1ca9deceea1aad4f8">ParameterList</a></td></tr>
54 <a class="el" href="classVamp_1_1Plugin.html#0730bc72c87fa02eb8d2854b233f7be1">FeatureList</a> &gt;&nbsp;</td><td class="memItemRight" valign="bottom"><a class="el" href="classVamp_1_1Plugin.html#448fb57dc245d47923ec9eeaf9856c5f">FeatureSet</a></td></tr> 110 <tr><td class="memItemLeft" align="right" valign="top">typedef std::vector&lt; std::string &gt;&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="classVamp_1_1PluginBase.html#a7f66f00437b21e5f694fe02356b12f20">ProgramList</a></td></tr>
55 111 <tr><td colspan="2"><h2><a name="pub-methods"></a>
56 <tr><td colspan="2"><br><h2>Public Member Functions</h2></td></tr> 112 Public Member Functions</h2></td></tr>
57 <tr><td class="memItemLeft" nowrap align="right" valign="top">&nbsp;</td><td class="memItemRight" valign="bottom"><a class="el" href="classSpectralCentroid.html#2cd801ad72f262eceb95ab0d22e7dbcd">SpectralCentroid</a> (float inputSampleRate)</td></tr> 113 <tr><td class="memItemLeft" align="right" valign="top">&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="classSpectralCentroid.html#a2cd801ad72f262eceb95ab0d22e7dbcd">SpectralCentroid</a> (float inputSampleRate)</td></tr>
58 114 <tr><td class="memItemLeft" align="right" valign="top">virtual&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="classSpectralCentroid.html#a483e0d6757bc3dcf61e8066f764f45c6">~SpectralCentroid</a> ()</td></tr>
59 <tr><td class="memItemLeft" nowrap align="right" valign="top">virtual&nbsp;</td><td class="memItemRight" valign="bottom"><a class="el" href="classSpectralCentroid.html#483e0d6757bc3dcf61e8066f764f45c6">~SpectralCentroid</a> ()</td></tr> 115 <tr><td class="memItemLeft" align="right" valign="top">bool&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="classSpectralCentroid.html#aab1ae16f5c68e2b319668f447908cedb">initialise</a> (size_t channels, size_t stepSize, size_t blockSize)</td></tr>
60 116 <tr><td class="mdescLeft">&#160;</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="#aab1ae16f5c68e2b319668f447908cedb"></a><br/></td></tr>
61 <tr><td class="memItemLeft" nowrap align="right" valign="top">bool&nbsp;</td><td class="memItemRight" valign="bottom"><a class="el" href="classSpectralCentroid.html#ab1ae16f5c68e2b319668f447908cedb">initialise</a> (size_t channels, size_t stepSize, size_t blockSize)</td></tr> 117 <tr><td class="memItemLeft" align="right" valign="top">void&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="classSpectralCentroid.html#a9b5f5581691ff8f46bb7674d8d74395c">reset</a> ()</td></tr>
62 118 <tr><td class="mdescLeft">&#160;</td><td class="mdescRight">Reset the plugin after use, to prepare it for another clean run. <a href="#a9b5f5581691ff8f46bb7674d8d74395c"></a><br/></td></tr>
63 <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="#ab1ae16f5c68e2b319668f447908cedb"></a><br></td></tr> 119 <tr><td class="memItemLeft" align="right" valign="top"><a class="el" href="classVamp_1_1Plugin.html#a39cb7649d6dcc20e4cb1640cd55907bc">InputDomain</a>&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="classSpectralCentroid.html#a0ec2cb74c1c5f6e57d0bd9dcf7c8f469">getInputDomain</a> () const </td></tr>
64 <tr><td class="memItemLeft" nowrap align="right" valign="top">void&nbsp;</td><td class="memItemRight" valign="bottom"><a class="el" href="classSpectralCentroid.html#9b5f5581691ff8f46bb7674d8d74395c">reset</a> ()</td></tr> 120 <tr><td class="mdescLeft">&#160;</td><td class="mdescRight">Get the plugin's required input domain. <a href="#a0ec2cb74c1c5f6e57d0bd9dcf7c8f469"></a><br/></td></tr>
65 121 <tr><td class="memItemLeft" align="right" valign="top">std::string&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="classSpectralCentroid.html#a1b2c4c8440c024c4c635fcef5697949f">getIdentifier</a> () const </td></tr>
66 <tr><td class="mdescLeft">&nbsp;</td><td class="mdescRight">Reset the plugin after use, to prepare it for another clean run. <a href="#9b5f5581691ff8f46bb7674d8d74395c"></a><br></td></tr> 122 <tr><td class="mdescLeft">&#160;</td><td class="mdescRight">Get the computer-usable name of the plugin. <a href="#a1b2c4c8440c024c4c635fcef5697949f"></a><br/></td></tr>
67 <tr><td class="memItemLeft" nowrap align="right" valign="top"><a class="el" href="classVamp_1_1Plugin.html#39cb7649d6dcc20e4cb1640cd55907bc">InputDomain</a>&nbsp;</td><td class="memItemRight" valign="bottom"><a class="el" href="classSpectralCentroid.html#0ec2cb74c1c5f6e57d0bd9dcf7c8f469">getInputDomain</a> () const </td></tr> 123 <tr><td class="memItemLeft" align="right" valign="top">std::string&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="classSpectralCentroid.html#ab7e6a620fea568af431be3cfd9dd5a41">getName</a> () const </td></tr>
68 124 <tr><td class="mdescLeft">&#160;</td><td class="mdescRight">Get a human-readable name or title of the plugin. <a href="#ab7e6a620fea568af431be3cfd9dd5a41"></a><br/></td></tr>
69 <tr><td class="mdescLeft">&nbsp;</td><td class="mdescRight">Get the plugin's required input domain. <a href="#0ec2cb74c1c5f6e57d0bd9dcf7c8f469"></a><br></td></tr> 125 <tr><td class="memItemLeft" align="right" valign="top">std::string&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="classSpectralCentroid.html#a8fbb74a46283057d9a0b0e4718ee943c">getDescription</a> () const </td></tr>
70 <tr><td class="memItemLeft" nowrap align="right" valign="top">std::string&nbsp;</td><td class="memItemRight" valign="bottom"><a class="el" href="classSpectralCentroid.html#1b2c4c8440c024c4c635fcef5697949f">getIdentifier</a> () const </td></tr> 126 <tr><td class="mdescLeft">&#160;</td><td class="mdescRight">Get a human-readable description for the plugin, typically a line of text that may optionally be displayed in addition to the plugin's "name". <a href="#a8fbb74a46283057d9a0b0e4718ee943c"></a><br/></td></tr>
71 127 <tr><td class="memItemLeft" align="right" valign="top">std::string&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="classSpectralCentroid.html#ac01ff858bf67e2e93ad5d24a6ba8c8c8">getMaker</a> () const </td></tr>
72 <tr><td class="mdescLeft">&nbsp;</td><td class="mdescRight">Get the computer-usable name of the plugin. <a href="#1b2c4c8440c024c4c635fcef5697949f"></a><br></td></tr> 128 <tr><td class="mdescLeft">&#160;</td><td class="mdescRight">Get the name of the author or vendor of the plugin in human-readable form. <a href="#ac01ff858bf67e2e93ad5d24a6ba8c8c8"></a><br/></td></tr>
73 <tr><td class="memItemLeft" nowrap align="right" valign="top">std::string&nbsp;</td><td class="memItemRight" valign="bottom"><a class="el" href="classSpectralCentroid.html#b7e6a620fea568af431be3cfd9dd5a41">getName</a> () const </td></tr> 129 <tr><td class="memItemLeft" align="right" valign="top">int&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="classSpectralCentroid.html#af64622e66bf678ac2b0b58aa832ca2b3">getPluginVersion</a> () const </td></tr>
74 130 <tr><td class="mdescLeft">&#160;</td><td class="mdescRight">Get the version number of the plugin. <a href="#af64622e66bf678ac2b0b58aa832ca2b3"></a><br/></td></tr>
75 <tr><td class="mdescLeft">&nbsp;</td><td class="mdescRight">Get a human-readable name or title of the plugin. <a href="#b7e6a620fea568af431be3cfd9dd5a41"></a><br></td></tr> 131 <tr><td class="memItemLeft" align="right" valign="top">std::string&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="classSpectralCentroid.html#a925747d513d598e0fa21ed0ed6520980">getCopyright</a> () const </td></tr>
76 <tr><td class="memItemLeft" nowrap align="right" valign="top">std::string&nbsp;</td><td class="memItemRight" valign="bottom"><a class="el" href="classSpectralCentroid.html#8fbb74a46283057d9a0b0e4718ee943c">getDescription</a> () const </td></tr> 132 <tr><td class="mdescLeft">&#160;</td><td class="mdescRight">Get the copyright statement or licensing summary for the plugin. <a href="#a925747d513d598e0fa21ed0ed6520980"></a><br/></td></tr>
77 133 <tr><td class="memItemLeft" align="right" valign="top"><a class="el" href="classVamp_1_1Plugin.html#a30f531b8fb69fac41a24e3d2a6a08ed9">OutputList</a>&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="classSpectralCentroid.html#a894ca9740927102bb80b56b5e9e95877">getOutputDescriptors</a> () const </td></tr>
78 <tr><td class="mdescLeft">&nbsp;</td><td class="mdescRight">Get a human-readable description for the plugin, typically a line of text that may optionally be displayed in addition to the plugin's "name". <a href="#8fbb74a46283057d9a0b0e4718ee943c"></a><br></td></tr> 134 <tr><td class="mdescLeft">&#160;</td><td class="mdescRight">Get the outputs of this plugin. <a href="#a894ca9740927102bb80b56b5e9e95877"></a><br/></td></tr>
79 <tr><td class="memItemLeft" nowrap align="right" valign="top">std::string&nbsp;</td><td class="memItemRight" valign="bottom"><a class="el" href="classSpectralCentroid.html#c01ff858bf67e2e93ad5d24a6ba8c8c8">getMaker</a> () const </td></tr> 135 <tr><td class="memItemLeft" align="right" valign="top"><a class="el" href="classVamp_1_1Plugin.html#a448fb57dc245d47923ec9eeaf9856c5f">FeatureSet</a>&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="classSpectralCentroid.html#aca96c70e7e75c9e4a7db38485018914c">process</a> (const float *const *inputBuffers, <a class="el" href="structVamp_1_1RealTime.html">Vamp::RealTime</a> timestamp)</td></tr>
80 136 <tr><td class="mdescLeft">&#160;</td><td class="mdescRight">Process a single block of input data. <a href="#aca96c70e7e75c9e4a7db38485018914c"></a><br/></td></tr>
81 <tr><td class="mdescLeft">&nbsp;</td><td class="mdescRight">Get the name of the author or vendor of the plugin in human-readable form. <a href="#c01ff858bf67e2e93ad5d24a6ba8c8c8"></a><br></td></tr> 137 <tr><td class="memItemLeft" align="right" valign="top"><a class="el" href="classVamp_1_1Plugin.html#a448fb57dc245d47923ec9eeaf9856c5f">FeatureSet</a>&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="classSpectralCentroid.html#a83ba39f0870a2f86837605a958dfab1a">getRemainingFeatures</a> ()</td></tr>
82 <tr><td class="memItemLeft" nowrap align="right" valign="top">int&nbsp;</td><td class="memItemRight" valign="bottom"><a class="el" href="classSpectralCentroid.html#f64622e66bf678ac2b0b58aa832ca2b3">getPluginVersion</a> () const </td></tr> 138 <tr><td class="mdescLeft">&#160;</td><td class="mdescRight">After all blocks have been processed, calculate and return any remaining features derived from the complete input. <a href="#a83ba39f0870a2f86837605a958dfab1a"></a><br/></td></tr>
83 139 <tr><td class="memItemLeft" align="right" valign="top">virtual size_t&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="classVamp_1_1Plugin.html#aa529adf83f87a603954eb31407602aac">getPreferredBlockSize</a> () const </td></tr>
84 <tr><td class="mdescLeft">&nbsp;</td><td class="mdescRight">Get the version number of the plugin. <a href="#f64622e66bf678ac2b0b58aa832ca2b3"></a><br></td></tr> 140 <tr><td class="mdescLeft">&#160;</td><td class="mdescRight">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#ae4aed3bebfe80a2e2fccd3d37af26996" title="Process a single block of input data.">process()</a> function). <a href="#aa529adf83f87a603954eb31407602aac"></a><br/></td></tr>
85 <tr><td class="memItemLeft" nowrap align="right" valign="top">std::string&nbsp;</td><td class="memItemRight" valign="bottom"><a class="el" href="classSpectralCentroid.html#925747d513d598e0fa21ed0ed6520980">getCopyright</a> () const </td></tr> 141 <tr><td class="memItemLeft" align="right" valign="top">virtual size_t&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="classVamp_1_1Plugin.html#a514c716c22f81c055f19b56c3f882567">getPreferredStepSize</a> () const </td></tr>
86 142 <tr><td class="mdescLeft">&#160;</td><td class="mdescRight">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#ae4aed3bebfe80a2e2fccd3d37af26996" title="Process a single block of input data.">process()</a> function) for the plugin. <a href="#a514c716c22f81c055f19b56c3f882567"></a><br/></td></tr>
87 <tr><td class="mdescLeft">&nbsp;</td><td class="mdescRight">Get the copyright statement or licensing summary for the plugin. <a href="#925747d513d598e0fa21ed0ed6520980"></a><br></td></tr> 143 <tr><td class="memItemLeft" align="right" valign="top">virtual size_t&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="classVamp_1_1Plugin.html#a267b42e866df3cf0d190893e8096f525">getMinChannelCount</a> () const </td></tr>
88 <tr><td class="memItemLeft" nowrap align="right" valign="top"><a class="el" href="classVamp_1_1Plugin.html#30f531b8fb69fac41a24e3d2a6a08ed9">OutputList</a>&nbsp;</td><td class="memItemRight" valign="bottom"><a class="el" href="classSpectralCentroid.html#894ca9740927102bb80b56b5e9e95877">getOutputDescriptors</a> () const </td></tr> 144 <tr><td class="mdescLeft">&#160;</td><td class="mdescRight">Get the minimum supported number of input channels. <a href="#a267b42e866df3cf0d190893e8096f525"></a><br/></td></tr>
89 145 <tr><td class="memItemLeft" align="right" valign="top">virtual size_t&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="classVamp_1_1Plugin.html#a2c5ab12b6fa4847cb244bd1e9cb3ae5e">getMaxChannelCount</a> () const </td></tr>
90 <tr><td class="mdescLeft">&nbsp;</td><td class="mdescRight">Get the outputs of this plugin. <a href="#894ca9740927102bb80b56b5e9e95877"></a><br></td></tr> 146 <tr><td class="mdescLeft">&#160;</td><td class="mdescRight">Get the maximum supported number of input channels. <a href="#a2c5ab12b6fa4847cb244bd1e9cb3ae5e"></a><br/></td></tr>
91 <tr><td class="memItemLeft" nowrap align="right" valign="top"><a class="el" href="classVamp_1_1Plugin.html#448fb57dc245d47923ec9eeaf9856c5f">FeatureSet</a>&nbsp;</td><td class="memItemRight" valign="bottom"><a class="el" href="classSpectralCentroid.html#ca96c70e7e75c9e4a7db38485018914c">process</a> (const float *const *inputBuffers, <a class="el" href="structVamp_1_1RealTime.html">Vamp::RealTime</a> timestamp)</td></tr> 147 <tr><td class="memItemLeft" align="right" valign="top">virtual std::string&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="classVamp_1_1Plugin.html#abe13b3997a69fbcc09e2213faa352f91">getType</a> () const </td></tr>
92 148 <tr><td class="mdescLeft">&#160;</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 from audio o...">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="#abe13b3997a69fbcc09e2213faa352f91"></a><br/></td></tr>
93 <tr><td class="mdescLeft">&nbsp;</td><td class="mdescRight">Process a single block of input data. <a href="#ca96c70e7e75c9e4a7db38485018914c"></a><br></td></tr> 149 <tr><td class="memItemLeft" align="right" valign="top">virtual unsigned int&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="classVamp_1_1PluginBase.html#a8fd2c48291c64b790f0efb8948508dcf">getVampApiVersion</a> () const </td></tr>
94 <tr><td class="memItemLeft" nowrap align="right" valign="top"><a class="el" href="classVamp_1_1Plugin.html#448fb57dc245d47923ec9eeaf9856c5f">FeatureSet</a>&nbsp;</td><td class="memItemRight" valign="bottom"><a class="el" href="classSpectralCentroid.html#83ba39f0870a2f86837605a958dfab1a">getRemainingFeatures</a> ()</td></tr> 150 <tr><td class="mdescLeft">&#160;</td><td class="mdescRight">Get the <a class="el" href="namespaceVamp.html">Vamp</a> API compatibility level of the plugin. <a href="#a8fd2c48291c64b790f0efb8948508dcf"></a><br/></td></tr>
95 151 <tr><td class="memItemLeft" align="right" valign="top">virtual <a class="el" href="classVamp_1_1PluginBase.html#a3b6bb4bbd86affe1ca9deceea1aad4f8">ParameterList</a>&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="classVamp_1_1PluginBase.html#aac3e49b3b66cacfbb768dfdf07444f21">getParameterDescriptors</a> () const </td></tr>
96 <tr><td class="mdescLeft">&nbsp;</td><td class="mdescRight">After all blocks have been processed, calculate and return any remaining features derived from the complete input. <a href="#83ba39f0870a2f86837605a958dfab1a"></a><br></td></tr> 152 <tr><td class="mdescLeft">&#160;</td><td class="mdescRight">Get the controllable parameters of this plugin. <a href="#aac3e49b3b66cacfbb768dfdf07444f21"></a><br/></td></tr>
97 <tr><td class="memItemLeft" nowrap align="right" valign="top">virtual size_t&nbsp;</td><td class="memItemRight" valign="bottom"><a class="el" href="classVamp_1_1Plugin.html#a529adf83f87a603954eb31407602aac">getPreferredBlockSize</a> () const </td></tr> 153 <tr><td class="memItemLeft" align="right" valign="top">virtual float&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="classVamp_1_1PluginBase.html#a97ababcd45348ceec998d0f8e0f38bf7">getParameter</a> (std::string) const </td></tr>
98 154 <tr><td class="mdescLeft">&#160;</td><td class="mdescRight">Get the value of a named parameter. <a href="#a97ababcd45348ceec998d0f8e0f38bf7"></a><br/></td></tr>
99 <tr><td class="mdescLeft">&nbsp;</td><td class="mdescRight">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). <a href="#a529adf83f87a603954eb31407602aac"></a><br></td></tr> 155 <tr><td class="memItemLeft" align="right" valign="top">virtual void&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="classVamp_1_1PluginBase.html#a6c718ce822f7b73b98940d59dcaa9366">setParameter</a> (std::string, float)</td></tr>
100 <tr><td class="memItemLeft" nowrap align="right" valign="top">virtual size_t&nbsp;</td><td class="memItemRight" valign="bottom"><a class="el" href="classVamp_1_1Plugin.html#514c716c22f81c055f19b56c3f882567">getPreferredStepSize</a> () const </td></tr> 156 <tr><td class="mdescLeft">&#160;</td><td class="mdescRight">Set a named parameter. <a href="#a6c718ce822f7b73b98940d59dcaa9366"></a><br/></td></tr>
101 157 <tr><td class="memItemLeft" align="right" valign="top">virtual <a class="el" href="classVamp_1_1PluginBase.html#a7f66f00437b21e5f694fe02356b12f20">ProgramList</a>&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="classVamp_1_1PluginBase.html#abb307c60bdb981d5f5af50c3c4ae84af">getPrograms</a> () const </td></tr>
102 <tr><td class="mdescLeft">&nbsp;</td><td class="mdescRight">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. <a href="#514c716c22f81c055f19b56c3f882567"></a><br></td></tr> 158 <tr><td class="mdescLeft">&#160;</td><td class="mdescRight">Get the program settings available in this plugin. <a href="#abb307c60bdb981d5f5af50c3c4ae84af"></a><br/></td></tr>
103 <tr><td class="memItemLeft" nowrap align="right" valign="top">virtual size_t&nbsp;</td><td class="memItemRight" valign="bottom"><a class="el" href="classVamp_1_1Plugin.html#267b42e866df3cf0d190893e8096f525">getMinChannelCount</a> () const </td></tr> 159 <tr><td class="memItemLeft" align="right" valign="top">virtual std::string&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="classVamp_1_1PluginBase.html#a24e77eccf1bdfbbca3c79bb25e8799b3">getCurrentProgram</a> () const </td></tr>
104 160 <tr><td class="mdescLeft">&#160;</td><td class="mdescRight">Get the current program. <a href="#a24e77eccf1bdfbbca3c79bb25e8799b3"></a><br/></td></tr>
105 <tr><td class="mdescLeft">&nbsp;</td><td class="mdescRight">Get the minimum supported number of input channels. <a href="#267b42e866df3cf0d190893e8096f525"></a><br></td></tr> 161 <tr><td class="memItemLeft" align="right" valign="top">virtual void&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="classVamp_1_1PluginBase.html#aadd3a547ef140bae200473a9518e3353">selectProgram</a> (std::string)</td></tr>
106 <tr><td class="memItemLeft" nowrap align="right" valign="top">virtual size_t&nbsp;</td><td class="memItemRight" valign="bottom"><a class="el" href="classVamp_1_1Plugin.html#2c5ab12b6fa4847cb244bd1e9cb3ae5e">getMaxChannelCount</a> () const </td></tr> 162 <tr><td class="mdescLeft">&#160;</td><td class="mdescRight">Select a program. <a href="#aadd3a547ef140bae200473a9518e3353"></a><br/></td></tr>
107 163 <tr><td colspan="2"><h2><a name="pro-attribs"></a>
108 <tr><td class="mdescLeft">&nbsp;</td><td class="mdescRight">Get the maximum supported number of input channels. <a href="#2c5ab12b6fa4847cb244bd1e9cb3ae5e"></a><br></td></tr> 164 Protected Attributes</h2></td></tr>
109 <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> 165 <tr><td class="memItemLeft" align="right" valign="top">size_t&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="classSpectralCentroid.html#a49805a090ba58477da4adbefea4392a7">m_stepSize</a></td></tr>
110 166 <tr><td class="memItemLeft" align="right" valign="top">size_t&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="classSpectralCentroid.html#a262f583d71b442bb2d80023e7c85aa4e">m_blockSize</a></td></tr>
111 <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> 167 <tr><td class="memItemLeft" align="right" valign="top">float&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="classVamp_1_1Plugin.html#a59b9dd82a4f4eb946cd0474cc81abc23">m_inputSampleRate</a></td></tr>
112 <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>
113
114 <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>
115 <tr><td class="memItemLeft" nowrap align="right" valign="top">virtual <a class="el" href="classVamp_1_1PluginBase.html#3b6bb4bbd86affe1ca9deceea1aad4f8">ParameterList</a>&nbsp;</td><td class="memItemRight" valign="bottom"><a class="el" href="classVamp_1_1PluginBase.html#ac3e49b3b66cacfbb768dfdf07444f21">getParameterDescriptors</a> () const </td></tr>
116
117 <tr><td class="mdescLeft">&nbsp;</td><td class="mdescRight">Get the controllable parameters of this plugin. <a href="#ac3e49b3b66cacfbb768dfdf07444f21"></a><br></td></tr>
118 <tr><td class="memItemLeft" nowrap align="right" valign="top">virtual float&nbsp;</td><td class="memItemRight" valign="bottom"><a class="el" href="classVamp_1_1PluginBase.html#97ababcd45348ceec998d0f8e0f38bf7">getParameter</a> (std::string) const </td></tr>
119
120 <tr><td class="mdescLeft">&nbsp;</td><td class="mdescRight">Get the value of a named parameter. <a href="#97ababcd45348ceec998d0f8e0f38bf7"></a><br></td></tr>
121 <tr><td class="memItemLeft" nowrap align="right" valign="top">virtual void&nbsp;</td><td class="memItemRight" valign="bottom"><a class="el" href="classVamp_1_1PluginBase.html#6c718ce822f7b73b98940d59dcaa9366">setParameter</a> (std::string, float)</td></tr>
122
123 <tr><td class="mdescLeft">&nbsp;</td><td class="mdescRight">Set a named parameter. <a href="#6c718ce822f7b73b98940d59dcaa9366"></a><br></td></tr>
124 <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>
125
126 <tr><td class="mdescLeft">&nbsp;</td><td class="mdescRight">Get the program settings available in this plugin. <a href="#bb307c60bdb981d5f5af50c3c4ae84af"></a><br></td></tr>
127 <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>
128
129 <tr><td class="mdescLeft">&nbsp;</td><td class="mdescRight">Get the current program. <a href="#24e77eccf1bdfbbca3c79bb25e8799b3"></a><br></td></tr>
130 <tr><td class="memItemLeft" nowrap align="right" valign="top">virtual void&nbsp;</td><td class="memItemRight" valign="bottom"><a class="el" href="classVamp_1_1PluginBase.html#add3a547ef140bae200473a9518e3353">selectProgram</a> (std::string)</td></tr>
131
132 <tr><td class="mdescLeft">&nbsp;</td><td class="mdescRight">Select a program. <a href="#add3a547ef140bae200473a9518e3353"></a><br></td></tr>
133 <tr><td colspan="2"><br><h2>Protected Attributes</h2></td></tr>
134 <tr><td class="memItemLeft" nowrap align="right" valign="top">size_t&nbsp;</td><td class="memItemRight" valign="bottom"><a class="el" href="classSpectralCentroid.html#49805a090ba58477da4adbefea4392a7">m_stepSize</a></td></tr>
135
136 <tr><td class="memItemLeft" nowrap align="right" valign="top">size_t&nbsp;</td><td class="memItemRight" valign="bottom"><a class="el" href="classSpectralCentroid.html#262f583d71b442bb2d80023e7c85aa4e">m_blockSize</a></td></tr>
137
138 <tr><td class="memItemLeft" nowrap align="right" valign="top">float&nbsp;</td><td class="memItemRight" valign="bottom"><a class="el" href="classVamp_1_1Plugin.html#59b9dd82a4f4eb946cd0474cc81abc23">m_inputSampleRate</a></td></tr>
139
140 </table> 168 </table>
141 <hr><a name="_details"></a><h2>Detailed Description</h2> 169 <hr/><a name="details" id="details"></a><h2>Detailed Description</h2>
142 Example plugin that calculates the centre of gravity of the frequency domain representation of each block of audio. 170 <div class="textblock"><p>Example plugin that calculates the centre of gravity of the frequency domain representation of each block of audio. </p>
143 <p>Definition at line <a class="el" href="SpectralCentroid_8h-source.html#l00047">47</a> of file <a class="el" href="SpectralCentroid_8h-source.html">SpectralCentroid.h</a>.</p> 171
144 <hr><h2>Member Typedef Documentation</h2> 172 <p>Definition at line <a class="el" href="SpectralCentroid_8h_source.html#l00047">47</a> of file <a class="el" href="SpectralCentroid_8h_source.html">SpectralCentroid.h</a>.</p>
145 <a class="anchor" name="30f531b8fb69fac41a24e3d2a6a08ed9"></a><!-- doxytag: member="SpectralCentroid::OutputList" ref="30f531b8fb69fac41a24e3d2a6a08ed9" args="" --> 173 </div><hr/><h2>Member Typedef Documentation</h2>
146 <div class="memitem"> 174 <a class="anchor" id="a30f531b8fb69fac41a24e3d2a6a08ed9"></a><!-- doxytag: member="SpectralCentroid::OutputList" ref="a30f531b8fb69fac41a24e3d2a6a08ed9" args="" -->
147 <div class="memproto"> 175 <div class="memitem">
148 <table class="memname"> 176 <div class="memproto">
149 <tr> 177 <table class="memname">
150 <td class="memname">typedef std::vector&lt;<a class="el" href="structVamp_1_1Plugin_1_1OutputDescriptor.html">OutputDescriptor</a>&gt; <a class="el" href="classVamp_1_1Plugin.html#30f531b8fb69fac41a24e3d2a6a08ed9">Vamp::Plugin::OutputList</a><code> [inherited]</code> </td> 178 <tr>
151 </tr> 179 <td class="memname">typedef std::vector&lt;<a class="el" href="structVamp_1_1Plugin_1_1OutputDescriptor.html">OutputDescriptor</a>&gt; <a class="el" href="classVamp_1_1Plugin.html#a30f531b8fb69fac41a24e3d2a6a08ed9">Vamp::Plugin::OutputList</a><code> [inherited]</code></td>
152 </table> 180 </tr>
153 </div> 181 </table>
154 <div class="memdoc"> 182 </div>
155 183 <div class="memdoc">
156 <p> 184
157 185 <p>Definition at line <a class="el" href="vamp-sdk_2Plugin_8h_source.html#l00327">327</a> of file <a class="el" href="vamp-sdk_2Plugin_8h_source.html">vamp-sdk/Plugin.h</a>.</p>
158 <p>Definition at line <a class="el" href="vamp-sdk_2Plugin_8h-source.html#l00327">327</a> of file <a class="el" href="vamp-sdk_2Plugin_8h-source.html">vamp-sdk/Plugin.h</a>.</p> 186
159 187 </div>
160 </div> 188 </div>
161 </div><p> 189 <a class="anchor" id="a0730bc72c87fa02eb8d2854b233f7be1"></a><!-- doxytag: member="SpectralCentroid::FeatureList" ref="a0730bc72c87fa02eb8d2854b233f7be1" args="" -->
162 <a class="anchor" name="0730bc72c87fa02eb8d2854b233f7be1"></a><!-- doxytag: member="SpectralCentroid::FeatureList" ref="0730bc72c87fa02eb8d2854b233f7be1" args="" --> 190 <div class="memitem">
163 <div class="memitem"> 191 <div class="memproto">
164 <div class="memproto"> 192 <table class="memname">
165 <table class="memname"> 193 <tr>
166 <tr> 194 <td class="memname">typedef std::vector&lt;<a class="el" href="structVamp_1_1Plugin_1_1Feature.html">Feature</a>&gt; <a class="el" href="classVamp_1_1Plugin.html#a0730bc72c87fa02eb8d2854b233f7be1">Vamp::Plugin::FeatureList</a><code> [inherited]</code></td>
167 <td class="memname">typedef std::vector&lt;<a class="el" href="structVamp_1_1Plugin_1_1Feature.html">Feature</a>&gt; <a class="el" href="classVamp_1_1Plugin.html#0730bc72c87fa02eb8d2854b233f7be1">Vamp::Plugin::FeatureList</a><code> [inherited]</code> </td> 195 </tr>
168 </tr> 196 </table>
169 </table> 197 </div>
170 </div> 198 <div class="memdoc">
171 <div class="memdoc"> 199
172 200 <p>Definition at line <a class="el" href="vamp-sdk_2Plugin_8h_source.html#l00385">385</a> of file <a class="el" href="vamp-sdk_2Plugin_8h_source.html">vamp-sdk/Plugin.h</a>.</p>
173 <p> 201
174 202 </div>
175 <p>Definition at line <a class="el" href="vamp-sdk_2Plugin_8h-source.html#l00385">385</a> of file <a class="el" href="vamp-sdk_2Plugin_8h-source.html">vamp-sdk/Plugin.h</a>.</p> 203 </div>
176 204 <a class="anchor" id="a448fb57dc245d47923ec9eeaf9856c5f"></a><!-- doxytag: member="SpectralCentroid::FeatureSet" ref="a448fb57dc245d47923ec9eeaf9856c5f" args="" -->
177 </div> 205 <div class="memitem">
178 </div><p> 206 <div class="memproto">
179 <a class="anchor" name="448fb57dc245d47923ec9eeaf9856c5f"></a><!-- doxytag: member="SpectralCentroid::FeatureSet" ref="448fb57dc245d47923ec9eeaf9856c5f" args="" --> 207 <table class="memname">
180 <div class="memitem"> 208 <tr>
181 <div class="memproto"> 209 <td class="memname">typedef std::map&lt;int, <a class="el" href="classVamp_1_1Plugin.html#a0730bc72c87fa02eb8d2854b233f7be1">FeatureList</a>&gt; <a class="el" href="classVamp_1_1Plugin.html#a448fb57dc245d47923ec9eeaf9856c5f">Vamp::Plugin::FeatureSet</a><code> [inherited]</code></td>
182 <table class="memname"> 210 </tr>
183 <tr> 211 </table>
184 <td class="memname">typedef std::map&lt;int, <a class="el" href="classVamp_1_1Plugin.html#0730bc72c87fa02eb8d2854b233f7be1">FeatureList</a>&gt; <a class="el" href="classVamp_1_1Plugin.html#448fb57dc245d47923ec9eeaf9856c5f">Vamp::Plugin::FeatureSet</a><code> [inherited]</code> </td> 212 </div>
185 </tr> 213 <div class="memdoc">
186 </table> 214
187 </div> 215 <p>Definition at line <a class="el" href="vamp-sdk_2Plugin_8h_source.html#l00387">387</a> of file <a class="el" href="vamp-sdk_2Plugin_8h_source.html">vamp-sdk/Plugin.h</a>.</p>
188 <div class="memdoc"> 216
189 217 </div>
190 <p> 218 </div>
191 219 <a class="anchor" id="a3b6bb4bbd86affe1ca9deceea1aad4f8"></a><!-- doxytag: member="SpectralCentroid::ParameterList" ref="a3b6bb4bbd86affe1ca9deceea1aad4f8" args="" -->
192 <p>Definition at line <a class="el" href="vamp-sdk_2Plugin_8h-source.html#l00387">387</a> of file <a class="el" href="vamp-sdk_2Plugin_8h-source.html">vamp-sdk/Plugin.h</a>.</p> 220 <div class="memitem">
193 221 <div class="memproto">
194 </div> 222 <table class="memname">
195 </div><p> 223 <tr>
196 <a class="anchor" name="3b6bb4bbd86affe1ca9deceea1aad4f8"></a><!-- doxytag: member="SpectralCentroid::ParameterList" ref="3b6bb4bbd86affe1ca9deceea1aad4f8" args="" --> 224 <td class="memname">typedef std::vector&lt;<a class="el" href="structVamp_1_1PluginBase_1_1ParameterDescriptor.html">ParameterDescriptor</a>&gt; <a class="el" href="classVamp_1_1PluginBase.html#a3b6bb4bbd86affe1ca9deceea1aad4f8">Vamp::PluginBase::ParameterList</a><code> [inherited]</code></td>
197 <div class="memitem"> 225 </tr>
198 <div class="memproto"> 226 </table>
199 <table class="memname"> 227 </div>
200 <tr> 228 <div class="memdoc">
201 <td class="memname">typedef std::vector&lt;<a class="el" href="structVamp_1_1PluginBase_1_1ParameterDescriptor.html">ParameterDescriptor</a>&gt; <a class="el" href="classVamp_1_1PluginBase.html#3b6bb4bbd86affe1ca9deceea1aad4f8">Vamp::PluginBase::ParameterList</a><code> [inherited]</code> </td> 229
202 </tr> 230 <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>
203 </table> 231
204 </div> 232 </div>
205 <div class="memdoc"> 233 </div>
206 234 <a class="anchor" id="a7f66f00437b21e5f694fe02356b12f20"></a><!-- doxytag: member="SpectralCentroid::ProgramList" ref="a7f66f00437b21e5f694fe02356b12f20" args="" -->
207 <p> 235 <div class="memitem">
208 236 <div class="memproto">
209 <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> 237 <table class="memname">
210 238 <tr>
211 </div> 239 <td class="memname">typedef std::vector&lt;std::string&gt; <a class="el" href="classVamp_1_1PluginBase.html#a7f66f00437b21e5f694fe02356b12f20">Vamp::PluginBase::ProgramList</a><code> [inherited]</code></td>
212 </div><p> 240 </tr>
213 <a class="anchor" name="7f66f00437b21e5f694fe02356b12f20"></a><!-- doxytag: member="SpectralCentroid::ProgramList" ref="7f66f00437b21e5f694fe02356b12f20" args="" --> 241 </table>
214 <div class="memitem"> 242 </div>
215 <div class="memproto"> 243 <div class="memdoc">
216 <table class="memname"> 244
217 <tr> 245 <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>
218 <td class="memname">typedef std::vector&lt;std::string&gt; <a class="el" href="classVamp_1_1PluginBase.html#7f66f00437b21e5f694fe02356b12f20">Vamp::PluginBase::ProgramList</a><code> [inherited]</code> </td> 246
219 </tr> 247 </div>
220 </table> 248 </div>
221 </div> 249 <hr/><h2>Member Enumeration Documentation</h2>
222 <div class="memdoc"> 250 <a class="anchor" id="a39cb7649d6dcc20e4cb1640cd55907bc"></a><!-- doxytag: member="SpectralCentroid::InputDomain" ref="a39cb7649d6dcc20e4cb1640cd55907bc" args="" -->
223 251 <div class="memitem">
224 <p> 252 <div class="memproto">
225 253 <table class="memname">
226 <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> 254 <tr>
227 255 <td class="memname">enum <a class="el" href="classVamp_1_1Plugin.html#a39cb7649d6dcc20e4cb1640cd55907bc">Vamp::Plugin::InputDomain</a><code> [inherited]</code></td>
228 </div> 256 </tr>
229 </div><p> 257 </table>
230 <hr><h2>Member Enumeration Documentation</h2> 258 </div>
231 <a class="anchor" name="39cb7649d6dcc20e4cb1640cd55907bc"></a><!-- doxytag: member="SpectralCentroid::InputDomain" ref="39cb7649d6dcc20e4cb1640cd55907bc" args="" --> 259 <div class="memdoc">
232 <div class="memitem"> 260 <dl><dt><b>Enumerator: </b></dt><dd><table border="0" cellspacing="2" cellpadding="0">
233 <div class="memproto"> 261 <tr><td valign="top"><em><a class="anchor" id="a39cb7649d6dcc20e4cb1640cd55907bcad4a9f31b958a43a9757af7893aa2e7ff"></a><!-- doxytag: member="TimeDomain" ref="a39cb7649d6dcc20e4cb1640cd55907bcad4a9f31b958a43a9757af7893aa2e7ff" args="" -->TimeDomain</em>&nbsp;</td><td>
234 <table class="memname">
235 <tr>
236 <td class="memname">enum <a class="el" href="classVamp_1_1Plugin.html#39cb7649d6dcc20e4cb1640cd55907bc">Vamp::Plugin::InputDomain</a><code> [inherited]</code> </td>
237 </tr>
238 </table>
239 </div>
240 <div class="memdoc">
241
242 <p>
243 <dl compact><dt><b>Enumerator: </b></dt><dd>
244 <table border="0" cellspacing="2" cellpadding="0">
245 <tr><td valign="top"><em><a class="anchor" name="39cb7649d6dcc20e4cb1640cd55907bcd4a9f31b958a43a9757af7893aa2e7ff"></a><!-- doxytag: member="TimeDomain" ref="39cb7649d6dcc20e4cb1640cd55907bcd4a9f31b958a43a9757af7893aa2e7ff" args="" -->TimeDomain</em>&nbsp;</td><td>
246 </td></tr> 262 </td></tr>
247 <tr><td valign="top"><em><a class="anchor" name="39cb7649d6dcc20e4cb1640cd55907bca30e7877ab33f76acbdca28607e6ab53"></a><!-- doxytag: member="FrequencyDomain" ref="39cb7649d6dcc20e4cb1640cd55907bca30e7877ab33f76acbdca28607e6ab53" args="" -->FrequencyDomain</em>&nbsp;</td><td> 263 <tr><td valign="top"><em><a class="anchor" id="a39cb7649d6dcc20e4cb1640cd55907bcaa30e7877ab33f76acbdca28607e6ab53"></a><!-- doxytag: member="FrequencyDomain" ref="a39cb7649d6dcc20e4cb1640cd55907bcaa30e7877ab33f76acbdca28607e6ab53" args="" -->FrequencyDomain</em>&nbsp;</td><td>
248 </td></tr> 264 </td></tr>
249 </table> 265 </table>
266 </dd>
250 </dl> 267 </dl>
251 268
252 <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> 269 <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>
253 270
254 </div> 271 </div>
255 </div><p> 272 </div>
256 <hr><h2>Constructor &amp; Destructor Documentation</h2> 273 <hr/><h2>Constructor &amp; Destructor Documentation</h2>
257 <a class="anchor" name="2cd801ad72f262eceb95ab0d22e7dbcd"></a><!-- doxytag: member="SpectralCentroid::SpectralCentroid" ref="2cd801ad72f262eceb95ab0d22e7dbcd" args="(float inputSampleRate)" --> 274 <a class="anchor" id="a2cd801ad72f262eceb95ab0d22e7dbcd"></a><!-- doxytag: member="SpectralCentroid::SpectralCentroid" ref="a2cd801ad72f262eceb95ab0d22e7dbcd" args="(float inputSampleRate)" -->
258 <div class="memitem"> 275 <div class="memitem">
259 <div class="memproto"> 276 <div class="memproto">
260 <table class="memname"> 277 <table class="memname">
261 <tr> 278 <tr>
262 <td class="memname">SpectralCentroid::SpectralCentroid </td> 279 <td class="memname">SpectralCentroid::SpectralCentroid </td>
263 <td>(</td> 280 <td>(</td>
264 <td class="paramtype">float&nbsp;</td> 281 <td class="paramtype">float&#160;</td>
265 <td class="paramname"> <em>inputSampleRate</em> </td> 282 <td class="paramname"><em>inputSampleRate</em></td><td>)</td>
266 <td>&nbsp;)&nbsp;</td>
267 <td></td> 283 <td></td>
268 </tr> 284 </tr>
269 </table> 285 </table>
270 </div> 286 </div>
271 <div class="memdoc"> 287 <div class="memdoc">
272 288
273 <p> 289 <p>Definition at line <a class="el" href="SpectralCentroid_8cpp_source.html#l00056">56</a> of file <a class="el" href="SpectralCentroid_8cpp_source.html">SpectralCentroid.cpp</a>.</p>
274 290
275 <p>Definition at line <a class="el" href="SpectralCentroid_8cpp-source.html#l00056">56</a> of file <a class="el" href="SpectralCentroid_8cpp-source.html">SpectralCentroid.cpp</a>.</p> 291 </div>
276 292 </div>
277 </div> 293 <a class="anchor" id="a483e0d6757bc3dcf61e8066f764f45c6"></a><!-- doxytag: member="SpectralCentroid::~SpectralCentroid" ref="a483e0d6757bc3dcf61e8066f764f45c6" args="()" -->
278 </div><p> 294 <div class="memitem">
279 <a class="anchor" name="483e0d6757bc3dcf61e8066f764f45c6"></a><!-- doxytag: member="SpectralCentroid::~SpectralCentroid" ref="483e0d6757bc3dcf61e8066f764f45c6" args="()" --> 295 <div class="memproto">
280 <div class="memitem"> 296 <table class="memname">
281 <div class="memproto"> 297 <tr>
282 <table class="memname"> 298 <td class="memname">SpectralCentroid::~SpectralCentroid </td>
283 <tr> 299 <td>(</td>
284 <td class="memname">SpectralCentroid::~SpectralCentroid </td> 300 <td class="paramname"></td><td>)</td>
285 <td>(</td>
286 <td class="paramname"> </td>
287 <td>&nbsp;)&nbsp;</td>
288 <td><code> [virtual]</code></td> 301 <td><code> [virtual]</code></td>
289 </tr> 302 </tr>
290 </table> 303 </table>
291 </div> 304 </div>
292 <div class="memdoc"> 305 <div class="memdoc">
293 306
294 <p> 307 <p>Definition at line <a class="el" href="SpectralCentroid_8cpp_source.html#l00063">63</a> of file <a class="el" href="SpectralCentroid_8cpp_source.html">SpectralCentroid.cpp</a>.</p>
295 308
296 <p>Definition at line <a class="el" href="SpectralCentroid_8cpp-source.html#l00063">63</a> of file <a class="el" href="SpectralCentroid_8cpp-source.html">SpectralCentroid.cpp</a>.</p> 309 </div>
297 310 </div>
298 </div> 311 <hr/><h2>Member Function Documentation</h2>
299 </div><p> 312 <a class="anchor" id="aab1ae16f5c68e2b319668f447908cedb"></a><!-- doxytag: member="SpectralCentroid::initialise" ref="aab1ae16f5c68e2b319668f447908cedb" args="(size_t channels, size_t stepSize, size_t blockSize)" -->
300 <hr><h2>Member Function Documentation</h2> 313 <div class="memitem">
301 <a class="anchor" name="ab1ae16f5c68e2b319668f447908cedb"></a><!-- doxytag: member="SpectralCentroid::initialise" ref="ab1ae16f5c68e2b319668f447908cedb" args="(size_t channels, size_t stepSize, size_t blockSize)" --> 314 <div class="memproto">
302 <div class="memitem"> 315 <table class="memname">
303 <div class="memproto"> 316 <tr>
304 <table class="memname"> 317 <td class="memname">bool SpectralCentroid::initialise </td>
305 <tr> 318 <td>(</td>
306 <td class="memname">bool SpectralCentroid::initialise </td> 319 <td class="paramtype">size_t&#160;</td>
307 <td>(</td> 320 <td class="paramname"><em>inputChannels</em>, </td>
308 <td class="paramtype">size_t&nbsp;</td>
309 <td class="paramname"> <em>inputChannels</em>, </td>
310 </tr> 321 </tr>
311 <tr> 322 <tr>
312 <td class="paramkey"></td> 323 <td class="paramkey"></td>
313 <td></td> 324 <td></td>
314 <td class="paramtype">size_t&nbsp;</td> 325 <td class="paramtype">size_t&#160;</td>
315 <td class="paramname"> <em>stepSize</em>, </td> 326 <td class="paramname"><em>stepSize</em>, </td>
316 </tr> 327 </tr>
317 <tr> 328 <tr>
318 <td class="paramkey"></td> 329 <td class="paramkey"></td>
319 <td></td> 330 <td></td>
320 <td class="paramtype">size_t&nbsp;</td> 331 <td class="paramtype">size_t&#160;</td>
321 <td class="paramname"> <em>blockSize</em></td><td>&nbsp;</td> 332 <td class="paramname"><em>blockSize</em>&#160;</td>
322 </tr> 333 </tr>
323 <tr> 334 <tr>
324 <td></td> 335 <td></td>
325 <td>)</td> 336 <td>)</td>
326 <td></td><td></td><td><code> [virtual]</code></td> 337 <td></td><td><code> [virtual]</code></td>
327 </tr> 338 </tr>
328 </table> 339 </table>
329 </div> 340 </div>
330 <div class="memdoc"> 341 <div class="memdoc">
331 342
332 <p> 343 <p>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). </p>
333 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). 344 <p>The input sample rate should have been already specified at construction time.</p>
334 <p> 345 <p>Return true for successful initialisation, false if the number of input channels, step size and/or block size cannot be supported. </p>
335 The input sample rate should have been already specified at construction time.<p> 346
336 Return true for successful initialisation, false if the number of input channels, step size and/or block size cannot be supported. 347 <p>Implements <a class="el" href="classVamp_1_1Plugin.html#af26212cf5fc511b603a8b48034247822">Vamp::Plugin</a>.</p>
337 <p>Implements <a class="el" href="classVamp_1_1Plugin.html#f26212cf5fc511b603a8b48034247822">Vamp::Plugin</a>.</p> 348
338 349 <p>Definition at line <a class="el" href="SpectralCentroid_8cpp_source.html#l00104">104</a> of file <a class="el" href="SpectralCentroid_8cpp_source.html">SpectralCentroid.cpp</a>.</p>
339 <p>Definition at line <a class="el" href="SpectralCentroid_8cpp-source.html#l00104">104</a> of file <a class="el" href="SpectralCentroid_8cpp-source.html">SpectralCentroid.cpp</a>.</p> 350
340 351 <p>References <a class="el" href="vamp-sdk_2Plugin_8h_source.html#l00204">Vamp::Plugin::getMaxChannelCount()</a>, <a class="el" href="vamp-sdk_2Plugin_8h_source.html#l00199">Vamp::Plugin::getMinChannelCount()</a>, <a class="el" href="SpectralCentroid_8h_source.html#l00074">m_blockSize</a>, and <a class="el" href="SpectralCentroid_8h_source.html#l00073">m_stepSize</a>.</p>
341 <p>References <a class="el" href="vamp-sdk_2Plugin_8h-source.html#l00204">Vamp::Plugin::getMaxChannelCount()</a>, <a class="el" href="vamp-sdk_2Plugin_8h-source.html#l00199">Vamp::Plugin::getMinChannelCount()</a>, <a class="el" href="SpectralCentroid_8h-source.html#l00074">m_blockSize</a>, and <a class="el" href="SpectralCentroid_8h-source.html#l00073">m_stepSize</a>.</p> 352
342 353 </div>
343 </div> 354 </div>
344 </div><p> 355 <a class="anchor" id="a9b5f5581691ff8f46bb7674d8d74395c"></a><!-- doxytag: member="SpectralCentroid::reset" ref="a9b5f5581691ff8f46bb7674d8d74395c" args="()" -->
345 <a class="anchor" name="9b5f5581691ff8f46bb7674d8d74395c"></a><!-- doxytag: member="SpectralCentroid::reset" ref="9b5f5581691ff8f46bb7674d8d74395c" args="()" --> 356 <div class="memitem">
346 <div class="memitem"> 357 <div class="memproto">
347 <div class="memproto"> 358 <table class="memname">
348 <table class="memname"> 359 <tr>
349 <tr> 360 <td class="memname">void SpectralCentroid::reset </td>
350 <td class="memname">void SpectralCentroid::reset </td> 361 <td>(</td>
351 <td>(</td> 362 <td class="paramname"></td><td>)</td>
352 <td class="paramname"> </td>
353 <td>&nbsp;)&nbsp;</td>
354 <td><code> [virtual]</code></td> 363 <td><code> [virtual]</code></td>
355 </tr> 364 </tr>
356 </table> 365 </table>
357 </div> 366 </div>
358 <div class="memdoc"> 367 <div class="memdoc">
359 368
360 <p> 369 <p>Reset the plugin after use, to prepare it for another clean run. </p>
361 Reset the plugin after use, to prepare it for another clean run. 370 <p>Not called for the first initialisation (i.e. initialise must also do a reset). </p>
362 <p> 371
363 Not called for the first initialisation (i.e. initialise must also do a reset). 372 <p>Implements <a class="el" href="classVamp_1_1Plugin.html#aad67dc9d0052417511070c4ebcfbf24f">Vamp::Plugin</a>.</p>
364 <p>Implements <a class="el" href="classVamp_1_1Plugin.html#ad67dc9d0052417511070c4ebcfbf24f">Vamp::Plugin</a>.</p> 373
365 374 <p>Definition at line <a class="el" href="SpectralCentroid_8cpp_source.html#l00116">116</a> of file <a class="el" href="SpectralCentroid_8cpp_source.html">SpectralCentroid.cpp</a>.</p>
366 <p>Definition at line <a class="el" href="SpectralCentroid_8cpp-source.html#l00116">116</a> of file <a class="el" href="SpectralCentroid_8cpp-source.html">SpectralCentroid.cpp</a>.</p> 375
367 376 </div>
368 </div> 377 </div>
369 </div><p> 378 <a class="anchor" id="a0ec2cb74c1c5f6e57d0bd9dcf7c8f469"></a><!-- doxytag: member="SpectralCentroid::getInputDomain" ref="a0ec2cb74c1c5f6e57d0bd9dcf7c8f469" args="() const " -->
370 <a class="anchor" name="0ec2cb74c1c5f6e57d0bd9dcf7c8f469"></a><!-- doxytag: member="SpectralCentroid::getInputDomain" ref="0ec2cb74c1c5f6e57d0bd9dcf7c8f469" args="() const " --> 379 <div class="memitem">
371 <div class="memitem"> 380 <div class="memproto">
372 <div class="memproto"> 381 <table class="memname">
373 <table class="memname"> 382 <tr>
374 <tr> 383 <td class="memname"><a class="el" href="classVamp_1_1Plugin.html#a39cb7649d6dcc20e4cb1640cd55907bc">InputDomain</a> SpectralCentroid::getInputDomain </td>
375 <td class="memname"><a class="el" href="classVamp_1_1Plugin.html#39cb7649d6dcc20e4cb1640cd55907bc">InputDomain</a> SpectralCentroid::getInputDomain </td> 384 <td>(</td>
376 <td>(</td> 385 <td class="paramname"></td><td>)</td>
377 <td class="paramname"> </td>
378 <td>&nbsp;)&nbsp;</td>
379 <td> const<code> [inline, virtual]</code></td> 386 <td> const<code> [inline, virtual]</code></td>
380 </tr> 387 </tr>
381 </table> 388 </table>
382 </div> 389 </div>
383 <div class="memdoc"> 390 <div class="memdoc">
384 391
385 <p> 392 <p>Get the plugin's required input domain. </p>
386 Get the plugin's required input domain. 393 <p>If this is TimeDomain, the samples provided to the <a class="el" href="classSpectralCentroid.html#aca96c70e7e75c9e4a7db38485018914c" 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.</p>
387 <p> 394 <p>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="classSpectralCentroid.html#aca96c70e7e75c9e4a7db38485018914c" title="Process a single block of input data.">process()</a>. The input data for the FFT will be rotated so as to place the origin in the centre of the block. 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. </p>
388 If this is TimeDomain, the samples provided to the <a class="el" href="classSpectralCentroid.html#ca96c70e7e75c9e4a7db38485018914c" 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.<p> 395
389 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="classSpectralCentroid.html#ca96c70e7e75c9e4a7db38485018914c" title="Process a single block of input data.">process()</a>. The input data for the FFT will be rotated so as to place the origin in the centre of the block. 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. 396 <p>Implements <a class="el" href="classVamp_1_1Plugin.html#ae1d317a9702cbeda65ddf0ec500c1ff6">Vamp::Plugin</a>.</p>
390 <p>Implements <a class="el" href="classVamp_1_1Plugin.html#e1d317a9702cbeda65ddf0ec500c1ff6">Vamp::Plugin</a>.</p> 397
391 398 <p>Definition at line <a class="el" href="SpectralCentroid_8h_source.html#l00056">56</a> of file <a class="el" href="SpectralCentroid_8h_source.html">SpectralCentroid.h</a>.</p>
392 <p>Definition at line <a class="el" href="SpectralCentroid_8h-source.html#l00056">56</a> of file <a class="el" href="SpectralCentroid_8h-source.html">SpectralCentroid.h</a>.</p> 399
393 400 <p>References <a class="el" href="vamp-sdk_2Plugin_8h_source.html#l00152">Vamp::Plugin::FrequencyDomain</a>.</p>
394 <p>References <a class="el" href="vamp-sdk_2Plugin_8h-source.html#l00152">Vamp::Plugin::FrequencyDomain</a>.</p> 401
395 402 </div>
396 </div> 403 </div>
397 </div><p> 404 <a class="anchor" id="a1b2c4c8440c024c4c635fcef5697949f"></a><!-- doxytag: member="SpectralCentroid::getIdentifier" ref="a1b2c4c8440c024c4c635fcef5697949f" args="() const " -->
398 <a class="anchor" name="1b2c4c8440c024c4c635fcef5697949f"></a><!-- doxytag: member="SpectralCentroid::getIdentifier" ref="1b2c4c8440c024c4c635fcef5697949f" args="() const " --> 405 <div class="memitem">
399 <div class="memitem"> 406 <div class="memproto">
400 <div class="memproto"> 407 <table class="memname">
401 <table class="memname"> 408 <tr>
402 <tr> 409 <td class="memname">string SpectralCentroid::getIdentifier </td>
403 <td class="memname">string SpectralCentroid::getIdentifier </td> 410 <td>(</td>
404 <td>(</td> 411 <td class="paramname"></td><td>)</td>
405 <td class="paramname"> </td>
406 <td>&nbsp;)&nbsp;</td>
407 <td> const<code> [virtual]</code></td> 412 <td> const<code> [virtual]</code></td>
408 </tr> 413 </tr>
409 </table> 414 </table>
410 </div> 415 </div>
411 <div class="memdoc"> 416 <div class="memdoc">
412 417
413 <p> 418 <p>Get the computer-usable name of the plugin. </p>
414 Get the computer-usable name of the plugin. 419 <p>This should be reasonably short and contain no whitespace or punctuation characters. It may only contain the characters [a-zA-Z0-9_-]. This is the authoritative way for a program to identify a plugin within a given library.</p>
415 <p> 420 <p>This text may be visible to the user, but it should not be the main text used to identify a plugin to the user (that will be the name, below).</p>
416 This should be reasonably short and contain no whitespace or punctuation characters. It may only contain the characters [a-zA-Z0-9_-]. This is the authoritative way for a program to identify a plugin within a given library.<p> 421 <p>Example: "zero_crossings" </p>
417 This text may be visible to the user, but it should not be the main text used to identify a plugin to the user (that will be the name, below).<p> 422
418 Example: "zero_crossings" 423 <p>Implements <a class="el" href="classVamp_1_1PluginBase.html#ad1c6dfc77aa03d937a885b7f08258f4a">Vamp::PluginBase</a>.</p>
419 <p>Implements <a class="el" href="classVamp_1_1PluginBase.html#d1c6dfc77aa03d937a885b7f08258f4a">Vamp::PluginBase</a>.</p> 424
420 425 <p>Definition at line <a class="el" href="SpectralCentroid_8cpp_source.html#l00068">68</a> of file <a class="el" href="SpectralCentroid_8cpp_source.html">SpectralCentroid.cpp</a>.</p>
421 <p>Definition at line <a class="el" href="SpectralCentroid_8cpp-source.html#l00068">68</a> of file <a class="el" href="SpectralCentroid_8cpp-source.html">SpectralCentroid.cpp</a>.</p> 426
422 427 </div>
423 </div> 428 </div>
424 </div><p> 429 <a class="anchor" id="ab7e6a620fea568af431be3cfd9dd5a41"></a><!-- doxytag: member="SpectralCentroid::getName" ref="ab7e6a620fea568af431be3cfd9dd5a41" args="() const " -->
425 <a class="anchor" name="b7e6a620fea568af431be3cfd9dd5a41"></a><!-- doxytag: member="SpectralCentroid::getName" ref="b7e6a620fea568af431be3cfd9dd5a41" args="() const " --> 430 <div class="memitem">
426 <div class="memitem"> 431 <div class="memproto">
427 <div class="memproto"> 432 <table class="memname">
428 <table class="memname"> 433 <tr>
429 <tr> 434 <td class="memname">string SpectralCentroid::getName </td>
430 <td class="memname">string SpectralCentroid::getName </td> 435 <td>(</td>
431 <td>(</td> 436 <td class="paramname"></td><td>)</td>
432 <td class="paramname"> </td>
433 <td>&nbsp;)&nbsp;</td>
434 <td> const<code> [virtual]</code></td> 437 <td> const<code> [virtual]</code></td>
435 </tr> 438 </tr>
436 </table> 439 </table>
437 </div> 440 </div>
438 <div class="memdoc"> 441 <div class="memdoc">
439 442
440 <p> 443 <p>Get a human-readable name or title of the plugin. </p>
441 Get a human-readable name or title of the plugin. 444 <p>This should be brief and self-contained, as it may be used to identify the plugin to the user in isolation (i.e. without also showing the plugin's "identifier").</p>
442 <p> 445 <p>Example: "Zero Crossings" </p>
443 This should be brief and self-contained, as it may be used to identify the plugin to the user in isolation (i.e. without also showing the plugin's "identifier").<p> 446
444 Example: "Zero Crossings" 447 <p>Implements <a class="el" href="classVamp_1_1PluginBase.html#a18619d5097e444ecefee0c359da53232">Vamp::PluginBase</a>.</p>
445 <p>Implements <a class="el" href="classVamp_1_1PluginBase.html#18619d5097e444ecefee0c359da53232">Vamp::PluginBase</a>.</p> 448
446 449 <p>Definition at line <a class="el" href="SpectralCentroid_8cpp_source.html#l00074">74</a> of file <a class="el" href="SpectralCentroid_8cpp_source.html">SpectralCentroid.cpp</a>.</p>
447 <p>Definition at line <a class="el" href="SpectralCentroid_8cpp-source.html#l00074">74</a> of file <a class="el" href="SpectralCentroid_8cpp-source.html">SpectralCentroid.cpp</a>.</p> 450
448 451 </div>
449 </div> 452 </div>
450 </div><p> 453 <a class="anchor" id="a8fbb74a46283057d9a0b0e4718ee943c"></a><!-- doxytag: member="SpectralCentroid::getDescription" ref="a8fbb74a46283057d9a0b0e4718ee943c" args="() const " -->
451 <a class="anchor" name="8fbb74a46283057d9a0b0e4718ee943c"></a><!-- doxytag: member="SpectralCentroid::getDescription" ref="8fbb74a46283057d9a0b0e4718ee943c" args="() const " --> 454 <div class="memitem">
452 <div class="memitem"> 455 <div class="memproto">
453 <div class="memproto"> 456 <table class="memname">
454 <table class="memname"> 457 <tr>
455 <tr> 458 <td class="memname">string SpectralCentroid::getDescription </td>
456 <td class="memname">string SpectralCentroid::getDescription </td> 459 <td>(</td>
457 <td>(</td> 460 <td class="paramname"></td><td>)</td>
458 <td class="paramname"> </td>
459 <td>&nbsp;)&nbsp;</td>
460 <td> const<code> [virtual]</code></td> 461 <td> const<code> [virtual]</code></td>
461 </tr> 462 </tr>
462 </table> 463 </table>
463 </div> 464 </div>
464 <div class="memdoc"> 465 <div class="memdoc">
465 466
466 <p> 467 <p>Get a human-readable description for the plugin, typically a line of text that may optionally be displayed in addition to the plugin's "name". </p>
467 Get a human-readable description for the plugin, typically a line of text that may optionally be displayed in addition to the plugin's "name". 468 <p>May be empty if the name has said it all already.</p>
468 <p> 469 <p>Example: "Detect and count zero crossing points" </p>
469 May be empty if the name has said it all already.<p> 470
470 Example: "Detect and count zero crossing points" 471 <p>Implements <a class="el" href="classVamp_1_1PluginBase.html#a59153a02364f75fff46973b2072e9e5a">Vamp::PluginBase</a>.</p>
471 <p>Implements <a class="el" href="classVamp_1_1PluginBase.html#59153a02364f75fff46973b2072e9e5a">Vamp::PluginBase</a>.</p> 472
472 473 <p>Definition at line <a class="el" href="SpectralCentroid_8cpp_source.html#l00080">80</a> of file <a class="el" href="SpectralCentroid_8cpp_source.html">SpectralCentroid.cpp</a>.</p>
473 <p>Definition at line <a class="el" href="SpectralCentroid_8cpp-source.html#l00080">80</a> of file <a class="el" href="SpectralCentroid_8cpp-source.html">SpectralCentroid.cpp</a>.</p> 474
474 475 </div>
475 </div> 476 </div>
476 </div><p> 477 <a class="anchor" id="ac01ff858bf67e2e93ad5d24a6ba8c8c8"></a><!-- doxytag: member="SpectralCentroid::getMaker" ref="ac01ff858bf67e2e93ad5d24a6ba8c8c8" args="() const " -->
477 <a class="anchor" name="c01ff858bf67e2e93ad5d24a6ba8c8c8"></a><!-- doxytag: member="SpectralCentroid::getMaker" ref="c01ff858bf67e2e93ad5d24a6ba8c8c8" args="() const " --> 478 <div class="memitem">
478 <div class="memitem"> 479 <div class="memproto">
479 <div class="memproto"> 480 <table class="memname">
480 <table class="memname"> 481 <tr>
481 <tr> 482 <td class="memname">string SpectralCentroid::getMaker </td>
482 <td class="memname">string SpectralCentroid::getMaker </td> 483 <td>(</td>
483 <td>(</td> 484 <td class="paramname"></td><td>)</td>
484 <td class="paramname"> </td>
485 <td>&nbsp;)&nbsp;</td>
486 <td> const<code> [virtual]</code></td> 485 <td> const<code> [virtual]</code></td>
487 </tr> 486 </tr>
488 </table> 487 </table>
489 </div> 488 </div>
490 <div class="memdoc"> 489 <div class="memdoc">
491 490
492 <p> 491 <p>Get the name of the author or vendor of the plugin in human-readable form. </p>
493 Get the name of the author or vendor of the plugin in human-readable form. 492 <p>This should be a short identifying text, as it may be used to label plugins from the same source in a menu or similar. </p>
494 <p> 493
495 This should be a short identifying text, as it may be used to label plugins from the same source in a menu or similar. 494 <p>Implements <a class="el" href="classVamp_1_1PluginBase.html#a53d9918bf9ef4d12feedf66b2b26c637">Vamp::PluginBase</a>.</p>
496 <p>Implements <a class="el" href="classVamp_1_1PluginBase.html#53d9918bf9ef4d12feedf66b2b26c637">Vamp::PluginBase</a>.</p> 495
497 496 <p>Definition at line <a class="el" href="SpectralCentroid_8cpp_source.html#l00086">86</a> of file <a class="el" href="SpectralCentroid_8cpp_source.html">SpectralCentroid.cpp</a>.</p>
498 <p>Definition at line <a class="el" href="SpectralCentroid_8cpp-source.html#l00086">86</a> of file <a class="el" href="SpectralCentroid_8cpp-source.html">SpectralCentroid.cpp</a>.</p> 497
499 498 </div>
500 </div> 499 </div>
501 </div><p> 500 <a class="anchor" id="af64622e66bf678ac2b0b58aa832ca2b3"></a><!-- doxytag: member="SpectralCentroid::getPluginVersion" ref="af64622e66bf678ac2b0b58aa832ca2b3" args="() const " -->
502 <a class="anchor" name="f64622e66bf678ac2b0b58aa832ca2b3"></a><!-- doxytag: member="SpectralCentroid::getPluginVersion" ref="f64622e66bf678ac2b0b58aa832ca2b3" args="() const " --> 501 <div class="memitem">
503 <div class="memitem"> 502 <div class="memproto">
504 <div class="memproto"> 503 <table class="memname">
505 <table class="memname"> 504 <tr>
506 <tr> 505 <td class="memname">int SpectralCentroid::getPluginVersion </td>
507 <td class="memname">int SpectralCentroid::getPluginVersion </td> 506 <td>(</td>
508 <td>(</td> 507 <td class="paramname"></td><td>)</td>
509 <td class="paramname"> </td>
510 <td>&nbsp;)&nbsp;</td>
511 <td> const<code> [virtual]</code></td> 508 <td> const<code> [virtual]</code></td>
512 </tr> 509 </tr>
513 </table> 510 </table>
514 </div> 511 </div>
515 <div class="memdoc"> 512 <div class="memdoc">
516 513
517 <p> 514 <p>Get the version number of the plugin. </p>
518 Get the version number of the plugin. 515
519 <p> 516 <p>Implements <a class="el" href="classVamp_1_1PluginBase.html#a63f686d77bc3d6b807e7944cdde83151">Vamp::PluginBase</a>.</p>
520 517
521 <p>Implements <a class="el" href="classVamp_1_1PluginBase.html#63f686d77bc3d6b807e7944cdde83151">Vamp::PluginBase</a>.</p> 518 <p>Definition at line <a class="el" href="SpectralCentroid_8cpp_source.html#l00092">92</a> of file <a class="el" href="SpectralCentroid_8cpp_source.html">SpectralCentroid.cpp</a>.</p>
522 519
523 <p>Definition at line <a class="el" href="SpectralCentroid_8cpp-source.html#l00092">92</a> of file <a class="el" href="SpectralCentroid_8cpp-source.html">SpectralCentroid.cpp</a>.</p> 520 </div>
524 521 </div>
525 </div> 522 <a class="anchor" id="a925747d513d598e0fa21ed0ed6520980"></a><!-- doxytag: member="SpectralCentroid::getCopyright" ref="a925747d513d598e0fa21ed0ed6520980" args="() const " -->
526 </div><p> 523 <div class="memitem">
527 <a class="anchor" name="925747d513d598e0fa21ed0ed6520980"></a><!-- doxytag: member="SpectralCentroid::getCopyright" ref="925747d513d598e0fa21ed0ed6520980" args="() const " --> 524 <div class="memproto">
528 <div class="memitem"> 525 <table class="memname">
529 <div class="memproto"> 526 <tr>
530 <table class="memname"> 527 <td class="memname">string SpectralCentroid::getCopyright </td>
531 <tr> 528 <td>(</td>
532 <td class="memname">string SpectralCentroid::getCopyright </td> 529 <td class="paramname"></td><td>)</td>
533 <td>(</td>
534 <td class="paramname"> </td>
535 <td>&nbsp;)&nbsp;</td>
536 <td> const<code> [virtual]</code></td> 530 <td> const<code> [virtual]</code></td>
537 </tr> 531 </tr>
538 </table> 532 </table>
539 </div> 533 </div>
540 <div class="memdoc"> 534 <div class="memdoc">
541 535
542 <p> 536 <p>Get the copyright statement or licensing summary for the plugin. </p>
543 Get the copyright statement or licensing summary for the plugin. 537 <p>This can be an informative text, without the same presentation constraints as mentioned for getMaker above. </p>
544 <p> 538
545 This can be an informative text, without the same presentation constraints as mentioned for getMaker above. 539 <p>Implements <a class="el" href="classVamp_1_1PluginBase.html#ab7e9dedbe965f5ab9018b72920fe7661">Vamp::PluginBase</a>.</p>
546 <p>Implements <a class="el" href="classVamp_1_1PluginBase.html#b7e9dedbe965f5ab9018b72920fe7661">Vamp::PluginBase</a>.</p> 540
547 541 <p>Definition at line <a class="el" href="SpectralCentroid_8cpp_source.html#l00098">98</a> of file <a class="el" href="SpectralCentroid_8cpp_source.html">SpectralCentroid.cpp</a>.</p>
548 <p>Definition at line <a class="el" href="SpectralCentroid_8cpp-source.html#l00098">98</a> of file <a class="el" href="SpectralCentroid_8cpp-source.html">SpectralCentroid.cpp</a>.</p> 542
549 543 </div>
550 </div> 544 </div>
551 </div><p> 545 <a class="anchor" id="a894ca9740927102bb80b56b5e9e95877"></a><!-- doxytag: member="SpectralCentroid::getOutputDescriptors" ref="a894ca9740927102bb80b56b5e9e95877" args="() const " -->
552 <a class="anchor" name="894ca9740927102bb80b56b5e9e95877"></a><!-- doxytag: member="SpectralCentroid::getOutputDescriptors" ref="894ca9740927102bb80b56b5e9e95877" args="() const " --> 546 <div class="memitem">
553 <div class="memitem"> 547 <div class="memproto">
554 <div class="memproto"> 548 <table class="memname">
555 <table class="memname"> 549 <tr>
556 <tr> 550 <td class="memname"><a class="el" href="classVamp_1_1Plugin.html#a30f531b8fb69fac41a24e3d2a6a08ed9">SpectralCentroid::OutputList</a> SpectralCentroid::getOutputDescriptors </td>
557 <td class="memname"><a class="el" href="classVamp_1_1Plugin.html#30f531b8fb69fac41a24e3d2a6a08ed9">SpectralCentroid::OutputList</a> SpectralCentroid::getOutputDescriptors </td> 551 <td>(</td>
558 <td>(</td> 552 <td class="paramname"></td><td>)</td>
559 <td class="paramname"> </td>
560 <td>&nbsp;)&nbsp;</td>
561 <td> const<code> [virtual]</code></td> 553 <td> const<code> [virtual]</code></td>
562 </tr> 554 </tr>
563 </table> 555 </table>
564 </div> 556 </div>
565 <div class="memdoc"> 557 <div class="memdoc">
566 558
567 <p> 559 <p>Get the outputs of this plugin. </p>
568 Get the outputs of this plugin. 560 <p>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="classSpectralCentroid.html#aca96c70e7e75c9e4a7db38485018914c" title="Process a single block of input data.">process()</a> call. </p>
569 <p> 561
570 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="classSpectralCentroid.html#ca96c70e7e75c9e4a7db38485018914c" title="Process a single block of input data.">process()</a> call. 562 <p>Implements <a class="el" href="classVamp_1_1Plugin.html#ad064d5d132b5c9bd7064f429c3309e35">Vamp::Plugin</a>.</p>
571 <p>Implements <a class="el" href="classVamp_1_1Plugin.html#d064d5d132b5c9bd7064f429c3309e35">Vamp::Plugin</a>.</p> 563
572 564 <p>Definition at line <a class="el" href="SpectralCentroid_8cpp_source.html#l00121">121</a> of file <a class="el" href="SpectralCentroid_8cpp_source.html">SpectralCentroid.cpp</a>.</p>
573 <p>Definition at line <a class="el" href="SpectralCentroid_8cpp-source.html#l00121">121</a> of file <a class="el" href="SpectralCentroid_8cpp-source.html">SpectralCentroid.cpp</a>.</p> 565
574 566 <p>References <a class="el" href="vamp-sdk_2Plugin_8h_source.html#l00247">Vamp::Plugin::OutputDescriptor::binCount</a>, <a class="el" href="vamp-sdk_2Plugin_8h_source.html#l00227">Vamp::Plugin::OutputDescriptor::description</a>, <a class="el" href="vamp-sdk_2Plugin_8h_source.html#l00239">Vamp::Plugin::OutputDescriptor::hasFixedBinCount</a>, <a class="el" href="vamp-sdk_2Plugin_8h_source.html#l00260">Vamp::Plugin::OutputDescriptor::hasKnownExtents</a>, <a class="el" href="vamp-sdk_2Plugin_8h_source.html#l00214">Vamp::Plugin::OutputDescriptor::identifier</a>, <a class="el" href="vamp-sdk_2Plugin_8h_source.html#l00278">Vamp::Plugin::OutputDescriptor::isQuantized</a>, <a class="el" href="vamp-sdk_2Plugin_8h_source.html#l00220">Vamp::Plugin::OutputDescriptor::name</a>, <a class="el" href="vamp-sdk_2Plugin_8h_source.html#l00290">Vamp::Plugin::OutputDescriptor::OneSamplePerStep</a>, <a class="el" href="vamp-sdk_2Plugin_8h_source.html#l00302">Vamp::Plugin::OutputDescriptor::sampleType</a>, and <a class="el" href="vamp-sdk_2Plugin_8h_source.html#l00232">Vamp::Plugin::OutputDescriptor::unit</a>.</p>
575 <p>References <a class="el" href="vamp-sdk_2Plugin_8h-source.html#l00247">Vamp::Plugin::Plugin::OutputDescriptor::binCount</a>, <a class="el" href="vamp-sdk_2Plugin_8h-source.html#l00227">Vamp::Plugin::Plugin::OutputDescriptor::description</a>, <a class="el" href="vamp-sdk_2Plugin_8h-source.html#l00239">Vamp::Plugin::Plugin::OutputDescriptor::hasFixedBinCount</a>, <a class="el" href="vamp-sdk_2Plugin_8h-source.html#l00260">Vamp::Plugin::Plugin::OutputDescriptor::hasKnownExtents</a>, <a class="el" href="vamp-sdk_2Plugin_8h-source.html#l00214">Vamp::Plugin::Plugin::OutputDescriptor::identifier</a>, <a class="el" href="vamp-sdk_2Plugin_8h-source.html#l00278">Vamp::Plugin::Plugin::OutputDescriptor::isQuantized</a>, <a class="el" href="vamp-sdk_2Plugin_8h-source.html#l00220">Vamp::Plugin::Plugin::OutputDescriptor::name</a>, <a class="el" href="vamp-sdk_2Plugin_8h-source.html#l00290">Vamp::Plugin::Plugin::OutputDescriptor::OneSamplePerStep</a>, <a class="el" href="vamp-sdk_2Plugin_8h-source.html#l00302">Vamp::Plugin::Plugin::OutputDescriptor::sampleType</a>, and <a class="el" href="vamp-sdk_2Plugin_8h-source.html#l00232">Vamp::Plugin::Plugin::OutputDescriptor::unit</a>.</p> 567
576 568 </div>
577 </div> 569 </div>
578 </div><p> 570 <a class="anchor" id="aca96c70e7e75c9e4a7db38485018914c"></a><!-- doxytag: member="SpectralCentroid::process" ref="aca96c70e7e75c9e4a7db38485018914c" args="(const float *const *inputBuffers, Vamp::RealTime timestamp)" -->
579 <a class="anchor" name="ca96c70e7e75c9e4a7db38485018914c"></a><!-- doxytag: member="SpectralCentroid::process" ref="ca96c70e7e75c9e4a7db38485018914c" args="(const float *const *inputBuffers, Vamp::RealTime timestamp)" --> 571 <div class="memitem">
580 <div class="memitem"> 572 <div class="memproto">
581 <div class="memproto"> 573 <table class="memname">
582 <table class="memname"> 574 <tr>
583 <tr> 575 <td class="memname"><a class="el" href="classVamp_1_1Plugin.html#a448fb57dc245d47923ec9eeaf9856c5f">SpectralCentroid::FeatureSet</a> SpectralCentroid::process </td>
584 <td class="memname"><a class="el" href="classVamp_1_1Plugin.html#448fb57dc245d47923ec9eeaf9856c5f">SpectralCentroid::FeatureSet</a> SpectralCentroid::process </td> 576 <td>(</td>
585 <td>(</td> 577 <td class="paramtype">const float *const *&#160;</td>
586 <td class="paramtype">const float *const *&nbsp;</td> 578 <td class="paramname"><em>inputBuffers</em>, </td>
587 <td class="paramname"> <em>inputBuffers</em>, </td>
588 </tr> 579 </tr>
589 <tr> 580 <tr>
590 <td class="paramkey"></td> 581 <td class="paramkey"></td>
591 <td></td> 582 <td></td>
592 <td class="paramtype"><a class="el" href="structVamp_1_1RealTime.html">Vamp::RealTime</a>&nbsp;</td> 583 <td class="paramtype"><a class="el" href="structVamp_1_1RealTime.html">Vamp::RealTime</a>&#160;</td>
593 <td class="paramname"> <em>timestamp</em></td><td>&nbsp;</td> 584 <td class="paramname"><em>timestamp</em>&#160;</td>
594 </tr> 585 </tr>
595 <tr> 586 <tr>
596 <td></td> 587 <td></td>
597 <td>)</td> 588 <td>)</td>
598 <td></td><td></td><td><code> [virtual]</code></td> 589 <td></td><td><code> [virtual]</code></td>
599 </tr> 590 </tr>
600 </table> 591 </table>
601 </div> 592 </div>
602 <div class="memdoc"> 593 <div class="memdoc">
603 594
604 <p> 595 <p>Process a single block of input data. </p>
605 Process a single block of input data. 596 <p>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>
606 <p> 597 <p>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>
607 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> 598 <p>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.) </p>
608 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> 599
609 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.) 600 <p>Implements <a class="el" href="classVamp_1_1Plugin.html#ae4aed3bebfe80a2e2fccd3d37af26996">Vamp::Plugin</a>.</p>
610 <p>Implements <a class="el" href="classVamp_1_1Plugin.html#e4aed3bebfe80a2e2fccd3d37af26996">Vamp::Plugin</a>.</p> 601
611 602 <p>Definition at line <a class="el" href="SpectralCentroid_8cpp_source.html#l00146">146</a> of file <a class="el" href="SpectralCentroid_8cpp_source.html">SpectralCentroid.cpp</a>.</p>
612 <p>Definition at line <a class="el" href="SpectralCentroid_8cpp-source.html#l00146">146</a> of file <a class="el" href="SpectralCentroid_8cpp-source.html">SpectralCentroid.cpp</a>.</p> 603
613 604 <p>References <a class="el" href="vamp-sdk_2Plugin_8h_source.html#l00344">Vamp::Plugin::Feature::hasTimestamp</a>, <a class="el" href="SpectralCentroid_8h_source.html#l00074">m_blockSize</a>, <a class="el" href="vamp-sdk_2Plugin_8h_source.html#l00436">Vamp::Plugin::m_inputSampleRate</a>, <a class="el" href="SpectralCentroid_8h_source.html#l00073">m_stepSize</a>, and <a class="el" href="vamp-sdk_2Plugin_8h_source.html#l00374">Vamp::Plugin::Feature::values</a>.</p>
614 <p>References <a class="el" href="vamp-sdk_2Plugin_8h-source.html#l00344">Vamp::Plugin::Plugin::Feature::hasTimestamp</a>, <a class="el" href="SpectralCentroid_8h-source.html#l00074">m_blockSize</a>, <a class="el" href="vamp-sdk_2Plugin_8h-source.html#l00436">Vamp::Plugin::m_inputSampleRate</a>, <a class="el" href="SpectralCentroid_8h-source.html#l00073">m_stepSize</a>, and <a class="el" href="vamp-sdk_2Plugin_8h-source.html#l00374">Vamp::Plugin::Plugin::Feature::values</a>.</p> 605
615 606 </div>
616 </div> 607 </div>
617 </div><p> 608 <a class="anchor" id="a83ba39f0870a2f86837605a958dfab1a"></a><!-- doxytag: member="SpectralCentroid::getRemainingFeatures" ref="a83ba39f0870a2f86837605a958dfab1a" args="()" -->
618 <a class="anchor" name="83ba39f0870a2f86837605a958dfab1a"></a><!-- doxytag: member="SpectralCentroid::getRemainingFeatures" ref="83ba39f0870a2f86837605a958dfab1a" args="()" --> 609 <div class="memitem">
619 <div class="memitem"> 610 <div class="memproto">
620 <div class="memproto"> 611 <table class="memname">
621 <table class="memname"> 612 <tr>
622 <tr> 613 <td class="memname"><a class="el" href="classVamp_1_1Plugin.html#a448fb57dc245d47923ec9eeaf9856c5f">SpectralCentroid::FeatureSet</a> SpectralCentroid::getRemainingFeatures </td>
623 <td class="memname"><a class="el" href="classVamp_1_1Plugin.html#448fb57dc245d47923ec9eeaf9856c5f">SpectralCentroid::FeatureSet</a> SpectralCentroid::getRemainingFeatures </td> 614 <td>(</td>
624 <td>(</td> 615 <td class="paramname"></td><td>)</td>
625 <td class="paramname"> </td>
626 <td>&nbsp;)&nbsp;</td>
627 <td><code> [virtual]</code></td> 616 <td><code> [virtual]</code></td>
628 </tr> 617 </tr>
629 </table> 618 </table>
630 </div> 619 </div>
631 <div class="memdoc"> 620 <div class="memdoc">
632 621
633 <p> 622 <p>After all blocks have been processed, calculate and return any remaining features derived from the complete input. </p>
634 After all blocks have been processed, calculate and return any remaining features derived from the complete input. 623
635 <p> 624 <p>Implements <a class="el" href="classVamp_1_1Plugin.html#aeca2a26e658ba0314ba90d25dd2195d6">Vamp::Plugin</a>.</p>
636 625
637 <p>Implements <a class="el" href="classVamp_1_1Plugin.html#eca2a26e658ba0314ba90d25dd2195d6">Vamp::Plugin</a>.</p> 626 <p>Definition at line <a class="el" href="SpectralCentroid_8cpp_source.html#l00192">192</a> of file <a class="el" href="SpectralCentroid_8cpp_source.html">SpectralCentroid.cpp</a>.</p>
638 627
639 <p>Definition at line <a class="el" href="SpectralCentroid_8cpp-source.html#l00192">192</a> of file <a class="el" href="SpectralCentroid_8cpp-source.html">SpectralCentroid.cpp</a>.</p> 628 </div>
640 629 </div>
641 </div> 630 <a class="anchor" id="aa529adf83f87a603954eb31407602aac"></a><!-- doxytag: member="SpectralCentroid::getPreferredBlockSize" ref="aa529adf83f87a603954eb31407602aac" args="() const " -->
642 </div><p> 631 <div class="memitem">
643 <a class="anchor" name="a529adf83f87a603954eb31407602aac"></a><!-- doxytag: member="SpectralCentroid::getPreferredBlockSize" ref="a529adf83f87a603954eb31407602aac" args="() const " --> 632 <div class="memproto">
644 <div class="memitem"> 633 <table class="memname">
645 <div class="memproto"> 634 <tr>
646 <table class="memname"> 635 <td class="memname">virtual size_t Vamp::Plugin::getPreferredBlockSize </td>
647 <tr> 636 <td>(</td>
648 <td class="memname">virtual size_t Vamp::Plugin::getPreferredBlockSize </td> 637 <td class="paramname"></td><td>)</td>
649 <td>(</td>
650 <td class="paramname"> </td>
651 <td>&nbsp;)&nbsp;</td>
652 <td> const<code> [inline, virtual, inherited]</code></td> 638 <td> const<code> [inline, virtual, inherited]</code></td>
653 </tr> 639 </tr>
654 </table> 640 </table>
655 </div> 641 </div>
656 <div class="memdoc"> 642 <div class="memdoc">
657 643
658 <p> 644 <p>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#ae4aed3bebfe80a2e2fccd3d37af26996" title="Process a single block of input data.">process()</a> function). </p>
659 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). 645 <p>This should be called before <a class="el" href="classVamp_1_1Plugin.html#af26212cf5fc511b603a8b48034247822" title="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).">initialise()</a>.</p>
660 <p> 646 <p>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#af26212cf5fc511b603a8b48034247822" title="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).">initialise()</a> call. </p>
661 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> 647
662 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. 648 <p>Reimplemented in <a class="el" href="classVamp_1_1HostExt_1_1PluginBufferingAdapter.html#a21e45180b19873f9ab69fe7a4e184a03">Vamp::HostExt::PluginBufferingAdapter</a>, <a class="el" href="classVamp_1_1HostExt_1_1PluginInputDomainAdapter.html#a4cf40d09d02022b1962ff17bb0324ea5">Vamp::HostExt::PluginInputDomainAdapter</a>, <a class="el" href="classVamp_1_1PluginHostAdapter.html#ad5e0ea8042bdec4dd18428991117e07a">Vamp::PluginHostAdapter</a>, <a class="el" href="classVamp_1_1HostExt_1_1PluginWrapper.html#a2c62a656313a819650656643a867ad01">Vamp::HostExt::PluginWrapper</a>, <a class="el" href="classFixedTempoEstimator.html#a68b8569b71504a0478caf990dbe30683">FixedTempoEstimator</a>, and <a class="el" href="classPercussionOnsetDetector.html#a410c0b47c6c849d7ed9b726b84402ad0">PercussionOnsetDetector</a>.</p>
663 <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> 649
664 650 <p>Definition at line <a class="el" href="vamp-sdk_2Plugin_8h_source.html#l00179">179</a> of file <a class="el" href="vamp-sdk_2Plugin_8h_source.html">vamp-sdk/Plugin.h</a>.</p>
665 <p>Definition at line <a class="el" href="vamp-sdk_2Plugin_8h-source.html#l00179">179</a> of file <a class="el" href="vamp-sdk_2Plugin_8h-source.html">vamp-sdk/Plugin.h</a>.</p> 651
666 652 <p>Referenced by <a class="el" href="vamp-simple-host_8cpp_source.html#l00578">enumeratePlugins()</a>, and <a class="el" href="vamp-simple-host_8cpp_source.html#l00265">runPlugin()</a>.</p>
667 <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> 653
668 654 </div>
669 </div> 655 </div>
670 </div><p> 656 <a class="anchor" id="a514c716c22f81c055f19b56c3f882567"></a><!-- doxytag: member="SpectralCentroid::getPreferredStepSize" ref="a514c716c22f81c055f19b56c3f882567" args="() const " -->
671 <a class="anchor" name="514c716c22f81c055f19b56c3f882567"></a><!-- doxytag: member="SpectralCentroid::getPreferredStepSize" ref="514c716c22f81c055f19b56c3f882567" args="() const " --> 657 <div class="memitem">
672 <div class="memitem"> 658 <div class="memproto">
673 <div class="memproto"> 659 <table class="memname">
674 <table class="memname"> 660 <tr>
675 <tr> 661 <td class="memname">virtual size_t Vamp::Plugin::getPreferredStepSize </td>
676 <td class="memname">virtual size_t Vamp::Plugin::getPreferredStepSize </td> 662 <td>(</td>
677 <td>(</td> 663 <td class="paramname"></td><td>)</td>
678 <td class="paramname"> </td>
679 <td>&nbsp;)&nbsp;</td>
680 <td> const<code> [inline, virtual, inherited]</code></td> 664 <td> const<code> [inline, virtual, inherited]</code></td>
681 </tr> 665 </tr>
682 </table> 666 </table>
683 </div> 667 </div>
684 <div class="memdoc"> 668 <div class="memdoc">
685 669
686 <p> 670 <p>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#ae4aed3bebfe80a2e2fccd3d37af26996" title="Process a single block of input data.">process()</a> function) for the plugin. </p>
687 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. 671 <p>This should be called before <a class="el" href="classVamp_1_1Plugin.html#af26212cf5fc511b603a8b48034247822" title="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).">initialise()</a>.</p>
688 <p> 672 <p>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#af26212cf5fc511b603a8b48034247822" title="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).">initialise()</a> call. </p>
689 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> 673
690 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. 674 <p>Reimplemented in <a class="el" href="classVamp_1_1HostExt_1_1PluginInputDomainAdapter.html#ad979af9f1cbf2eeb16f4eaedb4a4f565">Vamp::HostExt::PluginInputDomainAdapter</a>, <a class="el" href="classVamp_1_1PluginHostAdapter.html#a859ad5d59402691daed3cf1af1899ebe">Vamp::PluginHostAdapter</a>, <a class="el" href="classVamp_1_1HostExt_1_1PluginBufferingAdapter.html#a2e66d009df69c951001e5d2786973d60">Vamp::HostExt::PluginBufferingAdapter</a>, <a class="el" href="classVamp_1_1HostExt_1_1PluginWrapper.html#a0137d93d7019bacc31104836fb4d352e">Vamp::HostExt::PluginWrapper</a>, <a class="el" href="classFixedTempoEstimator.html#ad450bb7e7df559ae3d68dfbfb085676f">FixedTempoEstimator</a>, and <a class="el" href="classPercussionOnsetDetector.html#a733824891e11c306a7a678534b89b968">PercussionOnsetDetector</a>.</p>
691 <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> 675
692 676 <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>
693 <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> 677
694 678 <p>Referenced by <a class="el" href="vamp-simple-host_8cpp_source.html#l00578">enumeratePlugins()</a>, and <a class="el" href="vamp-simple-host_8cpp_source.html#l00265">runPlugin()</a>.</p>
695 <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> 679
696 680 </div>
697 </div> 681 </div>
698 </div><p> 682 <a class="anchor" id="a267b42e866df3cf0d190893e8096f525"></a><!-- doxytag: member="SpectralCentroid::getMinChannelCount" ref="a267b42e866df3cf0d190893e8096f525" args="() const " -->
699 <a class="anchor" name="267b42e866df3cf0d190893e8096f525"></a><!-- doxytag: member="SpectralCentroid::getMinChannelCount" ref="267b42e866df3cf0d190893e8096f525" args="() const " --> 683 <div class="memitem">
700 <div class="memitem"> 684 <div class="memproto">
701 <div class="memproto"> 685 <table class="memname">
702 <table class="memname"> 686 <tr>
703 <tr> 687 <td class="memname">virtual size_t Vamp::Plugin::getMinChannelCount </td>
704 <td class="memname">virtual size_t Vamp::Plugin::getMinChannelCount </td> 688 <td>(</td>
705 <td>(</td> 689 <td class="paramname"></td><td>)</td>
706 <td class="paramname"> </td>
707 <td>&nbsp;)&nbsp;</td>
708 <td> const<code> [inline, virtual, inherited]</code></td> 690 <td> const<code> [inline, virtual, inherited]</code></td>
709 </tr> 691 </tr>
710 </table> 692 </table>
711 </div> 693 </div>
712 <div class="memdoc"> 694 <div class="memdoc">
713 695
714 <p> 696 <p>Get the minimum supported number of input channels. </p>
715 Get the minimum supported number of input channels. 697
716 <p> 698 <p>Reimplemented in <a class="el" href="classVamp_1_1PluginHostAdapter.html#a67d1198c0e58d3f0076d0eda599ff28d">Vamp::PluginHostAdapter</a>, and <a class="el" href="classVamp_1_1HostExt_1_1PluginWrapper.html#a2b28f1cf37d46a514f1e1411a6037bf8">Vamp::HostExt::PluginWrapper</a>.</p>
717 699
718 <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> 700 <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>
719 701
720 <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> 702 <p>Referenced by <a class="el" href="vamp-simple-host_8cpp_source.html#l00578">enumeratePlugins()</a>, <a class="el" href="FixedTempoEstimator_8cpp_source.html#l00677">FixedTempoEstimator::initialise()</a>, <a class="el" href="PercussionOnsetDetector_8cpp_source.html#l00113">PercussionOnsetDetector::initialise()</a>, <a class="el" href="AmplitudeFollower_8cpp_source.html#l00105">AmplitudeFollower::initialise()</a>, <a class="el" href="SpectralCentroid_8cpp_source.html#l00104">initialise()</a>, <a class="el" href="ZeroCrossing_8cpp_source.html#l00094">ZeroCrossing::initialise()</a>, <a class="el" href="PowerSpectrum_8cpp_source.html#l00092">PowerSpectrum::initialise()</a>, and <a class="el" href="vamp-simple-host_8cpp_source.html#l00265">runPlugin()</a>.</p>
721 703
722 <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#l00104">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">AmplitudeFollower::initialise()</a>, and <a class="el" href="vamp-simple-host_8cpp-source.html#l00265">runPlugin()</a>.</p> 704 </div>
723 705 </div>
724 </div> 706 <a class="anchor" id="a2c5ab12b6fa4847cb244bd1e9cb3ae5e"></a><!-- doxytag: member="SpectralCentroid::getMaxChannelCount" ref="a2c5ab12b6fa4847cb244bd1e9cb3ae5e" args="() const " -->
725 </div><p> 707 <div class="memitem">
726 <a class="anchor" name="2c5ab12b6fa4847cb244bd1e9cb3ae5e"></a><!-- doxytag: member="SpectralCentroid::getMaxChannelCount" ref="2c5ab12b6fa4847cb244bd1e9cb3ae5e" args="() const " --> 708 <div class="memproto">
727 <div class="memitem"> 709 <table class="memname">
728 <div class="memproto"> 710 <tr>
729 <table class="memname"> 711 <td class="memname">virtual size_t Vamp::Plugin::getMaxChannelCount </td>
730 <tr> 712 <td>(</td>
731 <td class="memname">virtual size_t Vamp::Plugin::getMaxChannelCount </td> 713 <td class="paramname"></td><td>)</td>
732 <td>(</td>
733 <td class="paramname"> </td>
734 <td>&nbsp;)&nbsp;</td>
735 <td> const<code> [inline, virtual, inherited]</code></td> 714 <td> const<code> [inline, virtual, inherited]</code></td>
736 </tr> 715 </tr>
737 </table> 716 </table>
738 </div> 717 </div>
739 <div class="memdoc"> 718 <div class="memdoc">
740 719
741 <p> 720 <p>Get the maximum supported number of input channels. </p>
742 Get the maximum supported number of input channels. 721
743 <p> 722 <p>Reimplemented in <a class="el" href="classVamp_1_1PluginHostAdapter.html#a25091905e97e39d515d8ffc1a9f2b9e0">Vamp::PluginHostAdapter</a>, and <a class="el" href="classVamp_1_1HostExt_1_1PluginWrapper.html#a985eb21f1827bfbc3950d6871b107a58">Vamp::HostExt::PluginWrapper</a>.</p>
744 723
745 <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> 724 <p>Definition at line <a class="el" href="vamp-sdk_2Plugin_8h_source.html#l00204">204</a> of file <a class="el" href="vamp-sdk_2Plugin_8h_source.html">vamp-sdk/Plugin.h</a>.</p>
746 725
747 <p>Definition at line <a class="el" href="vamp-sdk_2Plugin_8h-source.html#l00204">204</a> of file <a class="el" href="vamp-sdk_2Plugin_8h-source.html">vamp-sdk/Plugin.h</a>.</p> 726 <p>Referenced by <a class="el" href="vamp-simple-host_8cpp_source.html#l00578">enumeratePlugins()</a>, <a class="el" href="FixedTempoEstimator_8cpp_source.html#l00677">FixedTempoEstimator::initialise()</a>, <a class="el" href="PercussionOnsetDetector_8cpp_source.html#l00113">PercussionOnsetDetector::initialise()</a>, <a class="el" href="AmplitudeFollower_8cpp_source.html#l00105">AmplitudeFollower::initialise()</a>, <a class="el" href="SpectralCentroid_8cpp_source.html#l00104">initialise()</a>, <a class="el" href="ZeroCrossing_8cpp_source.html#l00094">ZeroCrossing::initialise()</a>, <a class="el" href="PowerSpectrum_8cpp_source.html#l00092">PowerSpectrum::initialise()</a>, and <a class="el" href="vamp-simple-host_8cpp_source.html#l00265">runPlugin()</a>.</p>
748 727
749 <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#l00104">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">AmplitudeFollower::initialise()</a>, and <a class="el" href="vamp-simple-host_8cpp-source.html#l00265">runPlugin()</a>.</p> 728 </div>
750 729 </div>
751 </div> 730 <a class="anchor" id="abe13b3997a69fbcc09e2213faa352f91"></a><!-- doxytag: member="SpectralCentroid::getType" ref="abe13b3997a69fbcc09e2213faa352f91" args="() const " -->
752 </div><p> 731 <div class="memitem">
753 <a class="anchor" name="be13b3997a69fbcc09e2213faa352f91"></a><!-- doxytag: member="SpectralCentroid::getType" ref="be13b3997a69fbcc09e2213faa352f91" args="() const " --> 732 <div class="memproto">
754 <div class="memitem"> 733 <table class="memname">
755 <div class="memproto"> 734 <tr>
756 <table class="memname"> 735 <td class="memname">virtual std::string Vamp::Plugin::getType </td>
757 <tr> 736 <td>(</td>
758 <td class="memname">virtual std::string Vamp::Plugin::getType </td> 737 <td class="paramname"></td><td>)</td>
759 <td>(</td>
760 <td class="paramname"> </td>
761 <td>&nbsp;)&nbsp;</td>
762 <td> const<code> [inline, virtual, inherited]</code></td> 738 <td> const<code> [inline, virtual, inherited]</code></td>
763 </tr> 739 </tr>
764 </table> 740 </table>
765 </div> 741 </div>
766 <div class="memdoc"> 742 <div class="memdoc">
767 743
768 <p> 744 <p>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 from audio o...">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>. </p>
769 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>. 745 <p>Do not reimplement this function in your subclass. </p>
770 <p> 746
771 Do not reimplement this function in your subclass. 747 <p>Implements <a class="el" href="classVamp_1_1PluginBase.html#a2da03e9ced8dc7e4382205e6dc05dbff">Vamp::PluginBase</a>.</p>
772 <p>Implements <a class="el" href="classVamp_1_1PluginBase.html#2da03e9ced8dc7e4382205e6dc05dbff">Vamp::PluginBase</a>.</p> 748
773 749 <p>Definition at line <a class="el" href="vamp-sdk_2Plugin_8h_source.html#l00430">430</a> of file <a class="el" href="vamp-sdk_2Plugin_8h_source.html">vamp-sdk/Plugin.h</a>.</p>
774 <p>Definition at line <a class="el" href="vamp-sdk_2Plugin_8h-source.html#l00430">430</a> of file <a class="el" href="vamp-sdk_2Plugin_8h-source.html">vamp-sdk/Plugin.h</a>.</p> 750
775 751 </div>
776 </div> 752 </div>
777 </div><p> 753 <a class="anchor" id="a8fd2c48291c64b790f0efb8948508dcf"></a><!-- doxytag: member="SpectralCentroid::getVampApiVersion" ref="a8fd2c48291c64b790f0efb8948508dcf" args="() const " -->
778 <a class="anchor" name="8fd2c48291c64b790f0efb8948508dcf"></a><!-- doxytag: member="SpectralCentroid::getVampApiVersion" ref="8fd2c48291c64b790f0efb8948508dcf" args="() const " --> 754 <div class="memitem">
779 <div class="memitem"> 755 <div class="memproto">
780 <div class="memproto"> 756 <table class="memname">
781 <table class="memname"> 757 <tr>
782 <tr> 758 <td class="memname">virtual unsigned int Vamp::PluginBase::getVampApiVersion </td>
783 <td class="memname">virtual unsigned int Vamp::PluginBase::getVampApiVersion </td> 759 <td>(</td>
784 <td>(</td> 760 <td class="paramname"></td><td>)</td>
785 <td class="paramname"> </td>
786 <td>&nbsp;)&nbsp;</td>
787 <td> const<code> [inline, virtual, inherited]</code></td> 761 <td> const<code> [inline, virtual, inherited]</code></td>
788 </tr> 762 </tr>
789 </table> 763 </table>
790 </div> 764 </div>
791 <div class="memdoc"> 765 <div class="memdoc">
792 766
793 <p> 767 <p>Get the <a class="el" href="namespaceVamp.html">Vamp</a> API compatibility level of the plugin. </p>
794 Get the <a class="el" href="namespaceVamp.html">Vamp</a> API compatibility level of the plugin. 768
795 <p> 769 <p>Reimplemented in <a class="el" href="classVamp_1_1PluginHostAdapter.html#a98aadddc8403eb46c9d8c5a9d1fdd19e">Vamp::PluginHostAdapter</a>, and <a class="el" href="classVamp_1_1HostExt_1_1PluginWrapper.html#a74147fda6b44ff2169bd4a1eea0d46ff">Vamp::HostExt::PluginWrapper</a>.</p>
796 770
797 <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> 771 <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>
798 772
799 <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> 773 <p>Referenced by <a class="el" href="vamp-simple-host_8cpp_source.html#l00578">enumeratePlugins()</a>.</p>
800 774
801 <p>Referenced by <a class="el" href="vamp-simple-host_8cpp-source.html#l00559">enumeratePlugins()</a>.</p> 775 </div>
802 776 </div>
803 </div> 777 <a class="anchor" id="aac3e49b3b66cacfbb768dfdf07444f21"></a><!-- doxytag: member="SpectralCentroid::getParameterDescriptors" ref="aac3e49b3b66cacfbb768dfdf07444f21" args="() const " -->
804 </div><p> 778 <div class="memitem">
805 <a class="anchor" name="ac3e49b3b66cacfbb768dfdf07444f21"></a><!-- doxytag: member="SpectralCentroid::getParameterDescriptors" ref="ac3e49b3b66cacfbb768dfdf07444f21" args="() const " --> 779 <div class="memproto">
806 <div class="memitem"> 780 <table class="memname">
807 <div class="memproto"> 781 <tr>
808 <table class="memname"> 782 <td class="memname">virtual <a class="el" href="classVamp_1_1PluginBase.html#a3b6bb4bbd86affe1ca9deceea1aad4f8">ParameterList</a> Vamp::PluginBase::getParameterDescriptors </td>
809 <tr> 783 <td>(</td>
810 <td class="memname">virtual <a class="el" href="classVamp_1_1PluginBase.html#3b6bb4bbd86affe1ca9deceea1aad4f8">ParameterList</a> Vamp::PluginBase::getParameterDescriptors </td> 784 <td class="paramname"></td><td>)</td>
811 <td>(</td>
812 <td class="paramname"> </td>
813 <td>&nbsp;)&nbsp;</td>
814 <td> const<code> [inline, virtual, inherited]</code></td> 785 <td> const<code> [inline, virtual, inherited]</code></td>
815 </tr> 786 </tr>
816 </table> 787 </table>
817 </div> 788 </div>
818 <div class="memdoc"> 789 <div class="memdoc">
819 790
820 <p> 791 <p>Get the controllable parameters of this plugin. </p>
821 Get the controllable parameters of this plugin. 792
822 <p> 793 <p>Reimplemented in <a class="el" href="classVamp_1_1PluginHostAdapter.html#a602faa0bfaae83e2ca53b36292271a76">Vamp::PluginHostAdapter</a>, <a class="el" href="classVamp_1_1HostExt_1_1PluginWrapper.html#a9be71561265c2e6e43b7feaddaa91f36">Vamp::HostExt::PluginWrapper</a>, <a class="el" href="classAmplitudeFollower.html#a9df01323a09e117bc12354ebe9244edf">AmplitudeFollower</a>, <a class="el" href="classFixedTempoEstimator.html#ae157465a4e07d180bab05b5c3a4d8987">FixedTempoEstimator</a>, and <a class="el" href="classPercussionOnsetDetector.html#abceae88cc9762b0ea310d7aad71de815">PercussionOnsetDetector</a>.</p>
823 794
824 <p>Reimplemented in <a class="el" href="classVamp_1_1PluginHostAdapter.html#602faa0bfaae83e2ca53b36292271a76">Vamp::PluginHostAdapter</a>, <a class="el" href="classVamp_1_1HostExt_1_1PluginWrapper.html#9be71561265c2e6e43b7feaddaa91f36">Vamp::HostExt::PluginWrapper</a>, <a class="el" href="classAmplitudeFollower.html#9df01323a09e117bc12354ebe9244edf">AmplitudeFollower</a>, <a class="el" href="classFixedTempoEstimator.html#e157465a4e07d180bab05b5c3a4d8987">FixedTempoEstimator</a>, and <a class="el" href="classPercussionOnsetDetector.html#bceae88cc9762b0ea310d7aad71de815">PercussionOnsetDetector</a>.</p> 795 <p>Definition at line <a class="el" href="vamp-sdk_2PluginBase_8h_source.html#l00208">208</a> of file <a class="el" href="vamp-sdk_2PluginBase_8h_source.html">vamp-sdk/PluginBase.h</a>.</p>
825 796
826 <p>Definition at line <a class="el" href="vamp-sdk_2PluginBase_8h-source.html#l00208">208</a> of file <a class="el" href="vamp-sdk_2PluginBase_8h-source.html">vamp-sdk/PluginBase.h</a>.</p> 797 <p>Referenced by <a class="el" href="vamp-simple-host_8cpp_source.html#l00578">enumeratePlugins()</a>.</p>
827 798
828 <p>Referenced by <a class="el" href="vamp-simple-host_8cpp-source.html#l00559">enumeratePlugins()</a>.</p> 799 </div>
829 800 </div>
830 </div> 801 <a class="anchor" id="a97ababcd45348ceec998d0f8e0f38bf7"></a><!-- doxytag: member="SpectralCentroid::getParameter" ref="a97ababcd45348ceec998d0f8e0f38bf7" args="(std::string) const " -->
831 </div><p> 802 <div class="memitem">
832 <a class="anchor" name="97ababcd45348ceec998d0f8e0f38bf7"></a><!-- doxytag: member="SpectralCentroid::getParameter" ref="97ababcd45348ceec998d0f8e0f38bf7" args="(std::string) const " --> 803 <div class="memproto">
833 <div class="memitem"> 804 <table class="memname">
834 <div class="memproto"> 805 <tr>
835 <table class="memname"> 806 <td class="memname">virtual float Vamp::PluginBase::getParameter </td>
836 <tr> 807 <td>(</td>
837 <td class="memname">virtual float Vamp::PluginBase::getParameter </td> 808 <td class="paramtype">std::string&#160;</td>
838 <td>(</td> 809 <td class="paramname"></td><td>)</td>
839 <td class="paramtype">std::string&nbsp;</td>
840 <td class="paramname"> </td>
841 <td>&nbsp;)&nbsp;</td>
842 <td> const<code> [inline, virtual, inherited]</code></td> 810 <td> const<code> [inline, virtual, inherited]</code></td>
843 </tr> 811 </tr>
844 </table> 812 </table>
845 </div> 813 </div>
846 <div class="memdoc"> 814 <div class="memdoc">
847 815
848 <p> 816 <p>Get the value of a named parameter. </p>
849 Get the value of a named parameter. 817 <p>The argument is the identifier field from that parameter's descriptor. </p>
850 <p> 818
851 The argument is the identifier field from that parameter's descriptor. 819 <p>Reimplemented in <a class="el" href="classVamp_1_1PluginHostAdapter.html#af0c46d4f67ca93be7c76f3ea2e6c8efb">Vamp::PluginHostAdapter</a>, <a class="el" href="classVamp_1_1HostExt_1_1PluginWrapper.html#a034920f56c8d7609a85447c42556048c">Vamp::HostExt::PluginWrapper</a>, <a class="el" href="classAmplitudeFollower.html#ab278c4b6f2ca23248dc94ad775273f39">AmplitudeFollower</a>, <a class="el" href="classFixedTempoEstimator.html#a2030b05fb1228b30ace16200780c9152">FixedTempoEstimator</a>, and <a class="el" href="classPercussionOnsetDetector.html#a9b28da8315fcde46ce7644d6592ba527">PercussionOnsetDetector</a>.</p>
852 <p>Reimplemented in <a class="el" href="classVamp_1_1PluginHostAdapter.html#f0c46d4f67ca93be7c76f3ea2e6c8efb">Vamp::PluginHostAdapter</a>, <a class="el" href="classVamp_1_1HostExt_1_1PluginWrapper.html#034920f56c8d7609a85447c42556048c">Vamp::HostExt::PluginWrapper</a>, <a class="el" href="classAmplitudeFollower.html#b278c4b6f2ca23248dc94ad775273f39">AmplitudeFollower</a>, <a class="el" href="classFixedTempoEstimator.html#2030b05fb1228b30ace16200780c9152">FixedTempoEstimator</a>, and <a class="el" href="classPercussionOnsetDetector.html#9b28da8315fcde46ce7644d6592ba527">PercussionOnsetDetector</a>.</p> 820
853 821 <p>Definition at line <a class="el" href="vamp-sdk_2PluginBase_8h_source.html#l00216">216</a> of file <a class="el" href="vamp-sdk_2PluginBase_8h_source.html">vamp-sdk/PluginBase.h</a>.</p>
854 <p>Definition at line <a class="el" href="vamp-sdk_2PluginBase_8h-source.html#l00216">216</a> of file <a class="el" href="vamp-sdk_2PluginBase_8h-source.html">vamp-sdk/PluginBase.h</a>.</p> 822
855 823 </div>
856 </div> 824 </div>
857 </div><p> 825 <a class="anchor" id="a6c718ce822f7b73b98940d59dcaa9366"></a><!-- doxytag: member="SpectralCentroid::setParameter" ref="a6c718ce822f7b73b98940d59dcaa9366" args="(std::string, float)" -->
858 <a class="anchor" name="6c718ce822f7b73b98940d59dcaa9366"></a><!-- doxytag: member="SpectralCentroid::setParameter" ref="6c718ce822f7b73b98940d59dcaa9366" args="(std::string, float)" --> 826 <div class="memitem">
859 <div class="memitem"> 827 <div class="memproto">
860 <div class="memproto"> 828 <table class="memname">
861 <table class="memname"> 829 <tr>
862 <tr> 830 <td class="memname">virtual void Vamp::PluginBase::setParameter </td>
863 <td class="memname">virtual void Vamp::PluginBase::setParameter </td> 831 <td>(</td>
864 <td>(</td> 832 <td class="paramtype">std::string&#160;</td>
865 <td class="paramtype">std::string&nbsp;</td>
866 <td class="paramname">, </td> 833 <td class="paramname">, </td>
867 </tr> 834 </tr>
868 <tr> 835 <tr>
869 <td class="paramkey"></td> 836 <td class="paramkey"></td>
870 <td></td> 837 <td></td>
871 <td class="paramtype">float&nbsp;</td> 838 <td class="paramtype">float&#160;</td>
872 <td class="paramname"></td><td>&nbsp;</td> 839 <td class="paramname">&#160;</td>
873 </tr> 840 </tr>
874 <tr> 841 <tr>
875 <td></td> 842 <td></td>
876 <td>)</td> 843 <td>)</td>
877 <td></td><td></td><td><code> [inline, virtual, inherited]</code></td> 844 <td></td><td><code> [inline, virtual, inherited]</code></td>
878 </tr> 845 </tr>
879 </table> 846 </table>
880 </div> 847 </div>
881 <div class="memdoc"> 848 <div class="memdoc">
882 849
883 <p> 850 <p>Set a named parameter. </p>
884 Set a named parameter. 851 <p>The first argument is the identifier field from that parameter's descriptor. </p>
885 <p> 852
886 The first argument is the identifier field from that parameter's descriptor. 853 <p>Reimplemented in <a class="el" href="classVamp_1_1HostExt_1_1PluginBufferingAdapter.html#a7a979b20c169d37adbd7b7d8b8a077b3">Vamp::HostExt::PluginBufferingAdapter</a>, <a class="el" href="classVamp_1_1PluginHostAdapter.html#a29f75395aa75b9de0228aa11edf9c6d6">Vamp::PluginHostAdapter</a>, <a class="el" href="classVamp_1_1HostExt_1_1PluginWrapper.html#a651b15a5dc4c27942ac0c87c6092bfe5">Vamp::HostExt::PluginWrapper</a>, <a class="el" href="classAmplitudeFollower.html#ae1fc37ece4d20e40f3066a3361a99340">AmplitudeFollower</a>, <a class="el" href="classFixedTempoEstimator.html#a8a5a413025384cf451c64d2c2ce13a75">FixedTempoEstimator</a>, and <a class="el" href="classPercussionOnsetDetector.html#aa097d72488e1211f05fc661ff5c6dc01">PercussionOnsetDetector</a>.</p>
887 <p>Reimplemented in <a class="el" href="classVamp_1_1HostExt_1_1PluginBufferingAdapter.html#7a979b20c169d37adbd7b7d8b8a077b3">Vamp::HostExt::PluginBufferingAdapter</a>, <a class="el" href="classVamp_1_1PluginHostAdapter.html#29f75395aa75b9de0228aa11edf9c6d6">Vamp::PluginHostAdapter</a>, <a class="el" href="classVamp_1_1HostExt_1_1PluginWrapper.html#651b15a5dc4c27942ac0c87c6092bfe5">Vamp::HostExt::PluginWrapper</a>, <a class="el" href="classAmplitudeFollower.html#e1fc37ece4d20e40f3066a3361a99340">AmplitudeFollower</a>, <a class="el" href="classFixedTempoEstimator.html#8a5a413025384cf451c64d2c2ce13a75">FixedTempoEstimator</a>, and <a class="el" href="classPercussionOnsetDetector.html#a097d72488e1211f05fc661ff5c6dc01">PercussionOnsetDetector</a>.</p> 854
888 855 <p>Definition at line <a class="el" href="vamp-sdk_2PluginBase_8h_source.html#l00222">222</a> of file <a class="el" href="vamp-sdk_2PluginBase_8h_source.html">vamp-sdk/PluginBase.h</a>.</p>
889 <p>Definition at line <a class="el" href="vamp-sdk_2PluginBase_8h-source.html#l00222">222</a> of file <a class="el" href="vamp-sdk_2PluginBase_8h-source.html">vamp-sdk/PluginBase.h</a>.</p> 856
890 857 </div>
891 </div> 858 </div>
892 </div><p> 859 <a class="anchor" id="abb307c60bdb981d5f5af50c3c4ae84af"></a><!-- doxytag: member="SpectralCentroid::getPrograms" ref="abb307c60bdb981d5f5af50c3c4ae84af" args="() const " -->
893 <a class="anchor" name="bb307c60bdb981d5f5af50c3c4ae84af"></a><!-- doxytag: member="SpectralCentroid::getPrograms" ref="bb307c60bdb981d5f5af50c3c4ae84af" args="() const " --> 860 <div class="memitem">
894 <div class="memitem"> 861 <div class="memproto">
895 <div class="memproto"> 862 <table class="memname">
896 <table class="memname"> 863 <tr>
897 <tr> 864 <td class="memname">virtual <a class="el" href="classVamp_1_1PluginBase.html#a7f66f00437b21e5f694fe02356b12f20">ProgramList</a> Vamp::PluginBase::getPrograms </td>
898 <td class="memname">virtual <a class="el" href="classVamp_1_1PluginBase.html#7f66f00437b21e5f694fe02356b12f20">ProgramList</a> Vamp::PluginBase::getPrograms </td> 865 <td>(</td>
899 <td>(</td> 866 <td class="paramname"></td><td>)</td>
900 <td class="paramname"> </td>
901 <td>&nbsp;)&nbsp;</td>
902 <td> const<code> [inline, virtual, inherited]</code></td> 867 <td> const<code> [inline, virtual, inherited]</code></td>
903 </tr> 868 </tr>
904 </table> 869 </table>
905 </div> 870 </div>
906 <div class="memdoc"> 871 <div class="memdoc">
907 872
908 <p> 873 <p>Get the program settings available in this plugin. </p>
909 Get the program settings available in this plugin. 874 <p>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>
910 <p> 875 <p>The programs must have unique names. </p>
911 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> 876
912 The programs must have unique names. 877 <p>Reimplemented in <a class="el" href="classVamp_1_1PluginHostAdapter.html#ae0cde5cd625418c1bc470b91f75daafc">Vamp::PluginHostAdapter</a>, and <a class="el" href="classVamp_1_1HostExt_1_1PluginWrapper.html#a131fbe1df81215020b9aa8cecef4c802">Vamp::HostExt::PluginWrapper</a>.</p>
913 <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> 878
914 879 <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>
915 <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> 880
916 881 </div>
917 </div> 882 </div>
918 </div><p> 883 <a class="anchor" id="a24e77eccf1bdfbbca3c79bb25e8799b3"></a><!-- doxytag: member="SpectralCentroid::getCurrentProgram" ref="a24e77eccf1bdfbbca3c79bb25e8799b3" args="() const " -->
919 <a class="anchor" name="24e77eccf1bdfbbca3c79bb25e8799b3"></a><!-- doxytag: member="SpectralCentroid::getCurrentProgram" ref="24e77eccf1bdfbbca3c79bb25e8799b3" args="() const " --> 884 <div class="memitem">
920 <div class="memitem"> 885 <div class="memproto">
921 <div class="memproto"> 886 <table class="memname">
922 <table class="memname"> 887 <tr>
923 <tr> 888 <td class="memname">virtual std::string Vamp::PluginBase::getCurrentProgram </td>
924 <td class="memname">virtual std::string Vamp::PluginBase::getCurrentProgram </td> 889 <td>(</td>
925 <td>(</td> 890 <td class="paramname"></td><td>)</td>
926 <td class="paramname"> </td>
927 <td>&nbsp;)&nbsp;</td>
928 <td> const<code> [inline, virtual, inherited]</code></td> 891 <td> const<code> [inline, virtual, inherited]</code></td>
929 </tr> 892 </tr>
930 </table> 893 </table>
931 </div> 894 </div>
932 <div class="memdoc"> 895 <div class="memdoc">
933 896
934 <p> 897 <p>Get the current program. </p>
935 Get the current program. 898
936 <p> 899 <p>Reimplemented in <a class="el" href="classVamp_1_1PluginHostAdapter.html#a34859eff8ca8d862af39be9636ec1867">Vamp::PluginHostAdapter</a>, and <a class="el" href="classVamp_1_1HostExt_1_1PluginWrapper.html#a7a312dd42d161064b70afd7ff24c0651">Vamp::HostExt::PluginWrapper</a>.</p>
937 900
938 <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> 901 <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>
939 902
940 <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> 903 </div>
941 904 </div>
942 </div> 905 <a class="anchor" id="aadd3a547ef140bae200473a9518e3353"></a><!-- doxytag: member="SpectralCentroid::selectProgram" ref="aadd3a547ef140bae200473a9518e3353" args="(std::string)" -->
943 </div><p> 906 <div class="memitem">
944 <a class="anchor" name="add3a547ef140bae200473a9518e3353"></a><!-- doxytag: member="SpectralCentroid::selectProgram" ref="add3a547ef140bae200473a9518e3353" args="(std::string)" --> 907 <div class="memproto">
945 <div class="memitem"> 908 <table class="memname">
946 <div class="memproto"> 909 <tr>
947 <table class="memname"> 910 <td class="memname">virtual void Vamp::PluginBase::selectProgram </td>
948 <tr> 911 <td>(</td>
949 <td class="memname">virtual void Vamp::PluginBase::selectProgram </td> 912 <td class="paramtype">std::string&#160;</td>
950 <td>(</td> 913 <td class="paramname"></td><td>)</td>
951 <td class="paramtype">std::string&nbsp;</td>
952 <td class="paramname"> </td>
953 <td>&nbsp;)&nbsp;</td>
954 <td><code> [inline, virtual, inherited]</code></td> 914 <td><code> [inline, virtual, inherited]</code></td>
955 </tr> 915 </tr>
956 </table> 916 </table>
957 </div> 917 </div>
958 <div class="memdoc"> 918 <div class="memdoc">
959 919
960 <p> 920 <p>Select a program. </p>
961 Select a program. 921 <p>(If the given program name is not one of the available programs, do nothing.) </p>
962 <p> 922
963 (If the given program name is not one of the available programs, do nothing.) 923 <p>Reimplemented in <a class="el" href="classVamp_1_1HostExt_1_1PluginBufferingAdapter.html#a3cc7000e0aff525950e0a286b87f8927">Vamp::HostExt::PluginBufferingAdapter</a>, <a class="el" href="classVamp_1_1PluginHostAdapter.html#a8f5515ab34cc13d9403ccc6b4b788683">Vamp::PluginHostAdapter</a>, and <a class="el" href="classVamp_1_1HostExt_1_1PluginWrapper.html#a074978333a74fdcf336a8a1d8ea20abf">Vamp::HostExt::PluginWrapper</a>.</p>
964 <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> 924
965 925 <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>
966 <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> 926
967 927 </div>
968 </div> 928 </div>
969 </div><p> 929 <hr/><h2>Member Data Documentation</h2>
970 <hr><h2>Member Data Documentation</h2> 930 <a class="anchor" id="a49805a090ba58477da4adbefea4392a7"></a><!-- doxytag: member="SpectralCentroid::m_stepSize" ref="a49805a090ba58477da4adbefea4392a7" args="" -->
971 <a class="anchor" name="49805a090ba58477da4adbefea4392a7"></a><!-- doxytag: member="SpectralCentroid::m_stepSize" ref="49805a090ba58477da4adbefea4392a7" args="" --> 931 <div class="memitem">
972 <div class="memitem"> 932 <div class="memproto">
973 <div class="memproto"> 933 <table class="memname">
974 <table class="memname"> 934 <tr>
975 <tr> 935 <td class="memname">size_t <a class="el" href="classSpectralCentroid.html#a49805a090ba58477da4adbefea4392a7">SpectralCentroid::m_stepSize</a><code> [protected]</code></td>
976 <td class="memname">size_t <a class="el" href="classSpectralCentroid.html#49805a090ba58477da4adbefea4392a7">SpectralCentroid::m_stepSize</a><code> [protected]</code> </td> 936 </tr>
977 </tr> 937 </table>
978 </table> 938 </div>
979 </div> 939 <div class="memdoc">
980 <div class="memdoc"> 940
981 941 <p>Definition at line <a class="el" href="SpectralCentroid_8h_source.html#l00073">73</a> of file <a class="el" href="SpectralCentroid_8h_source.html">SpectralCentroid.h</a>.</p>
982 <p> 942
983 943 <p>Referenced by <a class="el" href="SpectralCentroid_8cpp_source.html#l00104">initialise()</a>, and <a class="el" href="SpectralCentroid_8cpp_source.html#l00146">process()</a>.</p>
984 <p>Definition at line <a class="el" href="SpectralCentroid_8h-source.html#l00073">73</a> of file <a class="el" href="SpectralCentroid_8h-source.html">SpectralCentroid.h</a>.</p> 944
985 945 </div>
986 <p>Referenced by <a class="el" href="SpectralCentroid_8cpp-source.html#l00104">initialise()</a>, and <a class="el" href="SpectralCentroid_8cpp-source.html#l00146">process()</a>.</p> 946 </div>
987 947 <a class="anchor" id="a262f583d71b442bb2d80023e7c85aa4e"></a><!-- doxytag: member="SpectralCentroid::m_blockSize" ref="a262f583d71b442bb2d80023e7c85aa4e" args="" -->
988 </div> 948 <div class="memitem">
989 </div><p> 949 <div class="memproto">
990 <a class="anchor" name="262f583d71b442bb2d80023e7c85aa4e"></a><!-- doxytag: member="SpectralCentroid::m_blockSize" ref="262f583d71b442bb2d80023e7c85aa4e" args="" --> 950 <table class="memname">
991 <div class="memitem"> 951 <tr>
992 <div class="memproto"> 952 <td class="memname">size_t <a class="el" href="classSpectralCentroid.html#a262f583d71b442bb2d80023e7c85aa4e">SpectralCentroid::m_blockSize</a><code> [protected]</code></td>
993 <table class="memname"> 953 </tr>
994 <tr> 954 </table>
995 <td class="memname">size_t <a class="el" href="classSpectralCentroid.html#262f583d71b442bb2d80023e7c85aa4e">SpectralCentroid::m_blockSize</a><code> [protected]</code> </td> 955 </div>
996 </tr> 956 <div class="memdoc">
997 </table> 957
998 </div> 958 <p>Definition at line <a class="el" href="SpectralCentroid_8h_source.html#l00074">74</a> of file <a class="el" href="SpectralCentroid_8h_source.html">SpectralCentroid.h</a>.</p>
999 <div class="memdoc"> 959
1000 960 <p>Referenced by <a class="el" href="SpectralCentroid_8cpp_source.html#l00104">initialise()</a>, and <a class="el" href="SpectralCentroid_8cpp_source.html#l00146">process()</a>.</p>
1001 <p> 961
1002 962 </div>
1003 <p>Definition at line <a class="el" href="SpectralCentroid_8h-source.html#l00074">74</a> of file <a class="el" href="SpectralCentroid_8h-source.html">SpectralCentroid.h</a>.</p> 963 </div>
1004 964 <a class="anchor" id="a59b9dd82a4f4eb946cd0474cc81abc23"></a><!-- doxytag: member="SpectralCentroid::m_inputSampleRate" ref="a59b9dd82a4f4eb946cd0474cc81abc23" args="" -->
1005 <p>Referenced by <a class="el" href="SpectralCentroid_8cpp-source.html#l00104">initialise()</a>, and <a class="el" href="SpectralCentroid_8cpp-source.html#l00146">process()</a>.</p> 965 <div class="memitem">
1006 966 <div class="memproto">
1007 </div> 967 <table class="memname">
1008 </div><p> 968 <tr>
1009 <a class="anchor" name="59b9dd82a4f4eb946cd0474cc81abc23"></a><!-- doxytag: member="SpectralCentroid::m_inputSampleRate" ref="59b9dd82a4f4eb946cd0474cc81abc23" args="" --> 969 <td class="memname">float <a class="el" href="classVamp_1_1Plugin.html#a59b9dd82a4f4eb946cd0474cc81abc23">Vamp::Plugin::m_inputSampleRate</a><code> [protected, inherited]</code></td>
1010 <div class="memitem"> 970 </tr>
1011 <div class="memproto"> 971 </table>
1012 <table class="memname"> 972 </div>
1013 <tr> 973 <div class="memdoc">
1014 <td class="memname">float <a class="el" href="classVamp_1_1Plugin.html#59b9dd82a4f4eb946cd0474cc81abc23">Vamp::Plugin::m_inputSampleRate</a><code> [protected, inherited]</code> </td> 974
1015 </tr> 975 <p>Definition at line <a class="el" href="vamp-sdk_2Plugin_8h_source.html#l00436">436</a> of file <a class="el" href="vamp-sdk_2Plugin_8h_source.html">vamp-sdk/Plugin.h</a>.</p>
1016 </table> 976
1017 </div> 977 <p>Referenced by <a class="el" href="FixedTempoEstimator_8cpp_source.html#l00481">FixedTempoEstimator::D::assembleFeatures()</a>, <a class="el" href="FixedTempoEstimator_8cpp_source.html#l00375">FixedTempoEstimator::D::calculate()</a>, <a class="el" href="FixedTempoEstimator_8cpp_source.html#l00190">FixedTempoEstimator::D::getOutputDescriptors()</a>, <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">AmplitudeFollower::initialise()</a>, <a class="el" href="FixedTempoEstimator_8cpp_source.html#l00252">FixedTempoEstimator::D::initialise()</a>, <a class="el" href="FixedTempoEstimator_8cpp_source.html#l00363">FixedTempoEstimator::D::lag2tempo()</a>, <a class="el" href="SpectralCentroid_8cpp_source.html#l00146">process()</a>, <a class="el" href="ZeroCrossing_8cpp_source.html#l00142">ZeroCrossing::process()</a>, <a class="el" href="PercussionOnsetDetector_8cpp_source.html#l00226">PercussionOnsetDetector::process()</a>, and <a class="el" href="FixedTempoEstimator_8cpp_source.html#l00369">FixedTempoEstimator::D::tempo2lag()</a>.</p>
1018 <div class="memdoc"> 978
1019 979 </div>
1020 <p> 980 </div>
1021 981 <hr/>The documentation for this class was generated from the following files:<ul>
1022 <p>Definition at line <a class="el" href="vamp-sdk_2Plugin_8h-source.html#l00436">436</a> of file <a class="el" href="vamp-sdk_2Plugin_8h-source.html">vamp-sdk/Plugin.h</a>.</p> 982 <li><a class="el" href="SpectralCentroid_8h_source.html">SpectralCentroid.h</a></li>
1023 983 <li><a class="el" href="SpectralCentroid_8cpp_source.html">SpectralCentroid.cpp</a></li>
1024 <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">AmplitudeFollower::initialise()</a>, <a class="el" href="ZeroCrossing_8cpp-source.html#l00142">ZeroCrossing::process()</a>, <a class="el" href="SpectralCentroid_8cpp-source.html#l00146">process()</a>, and <a class="el" href="PercussionOnsetDetector_8cpp-source.html#l00226">PercussionOnsetDetector::process()</a>.</p> 984 </ul>
1025 985 </div>
1026 </div> 986 </div>
1027 </div><p> 987 <div id="nav-path" class="navpath">
1028 <hr>The documentation for this class was generated from the following files:<ul> 988 <ul>
1029 <li><a class="el" href="SpectralCentroid_8h-source.html">SpectralCentroid.h</a><li><a class="el" href="SpectralCentroid_8cpp-source.html">SpectralCentroid.cpp</a></ul> 989 <li class="navelem"><a class="el" href="classSpectralCentroid.html">SpectralCentroid</a> </li>
1030 </div> 990
1031 <hr size="1"><address style="text-align: right;"><small>Generated on Thu Sep 24 13:40:13 2009 for VampPluginSDK by&nbsp; 991 <li class="footer">Generated on Tue Oct 4 2011 14:38:51 for VampPluginSDK by
1032 <a href="http://www.doxygen.org/index.html"> 992 <a href="http://www.doxygen.org/index.html">
1033 <img src="doxygen.png" alt="doxygen" align="middle" border="0"></a> 1.5.8 </small></address> 993 <img class="footer" src="doxygen.png" alt="doxygen"/></a> 1.7.5.1 </li>
994 </ul>
995 </div>
996
997
1034 </body> 998 </body>
1035 </html> 999 </html>