comparison code-docs/classVamp_1_1PluginHostAdapter.html @ 3:5c2683745b33 vamp-plugin-sdk-v2.4

Update for 2.4
author Chris Cannam
date Fri, 13 Jul 2012 13:30:27 +0100
parents 3c430ef1ed66
children 27319718b1f8
comparison
equal deleted inserted replaced
2:52d16fb98e80 3:5c2683745b33
1 <!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Transitional//EN" "http://www.w3.org/TR/xhtml1/DTD/xhtml1-transitional.dtd"> 1 <!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Transitional//EN" "http://www.w3.org/TR/xhtml1/DTD/xhtml1-transitional.dtd">
2 <html xmlns="http://www.w3.org/1999/xhtml"> 2 <html xmlns="http://www.w3.org/1999/xhtml">
3 <head> 3 <head>
4 <meta http-equiv="Content-Type" content="text/xhtml;charset=UTF-8"/> 4 <meta http-equiv="Content-Type" content="text/xhtml;charset=UTF-8"/>
5 <meta http-equiv="X-UA-Compatible" content="IE=9"/>
5 <title>VampPluginSDK: Vamp::PluginHostAdapter Class Reference</title> 6 <title>VampPluginSDK: Vamp::PluginHostAdapter Class Reference</title>
6 7
7 <link href="tabs.css" rel="stylesheet" type="text/css"/> 8 <link href="tabs.css" rel="stylesheet" type="text/css"/>
8 <link href="doxygen.css" rel="stylesheet" type="text/css" /> 9 <link href="doxygen.css" rel="stylesheet" type="text/css" />
9 <link href="navtree.css" rel="stylesheet" type="text/css"/> 10 <link href="navtree.css" rel="stylesheet" type="text/css"/>
26 <tr style="height: 56px;"> 27 <tr style="height: 56px;">
27 28
28 29
29 <td style="padding-left: 0.5em;"> 30 <td style="padding-left: 0.5em;">
30 <div id="projectname">VampPluginSDK 31 <div id="projectname">VampPluginSDK
31 &#160;<span id="projectnumber">2.1</span> 32 &#160;<span id="projectnumber">2.4</span>
32 </div> 33 </div>
33 34
34 </td> 35 </td>
35 36
36 37
38 </tr> 39 </tr>
39 </tbody> 40 </tbody>
40 </table> 41 </table>
41 </div> 42 </div>
42 43
43 <!-- Generated by Doxygen 1.7.5.1 --> 44 <!-- Generated by Doxygen 1.8.0 -->
44 <div id="navrow1" class="tabs"> 45 <div id="navrow1" class="tabs">
45 <ul class="tablist"> 46 <ul class="tablist">
46 <li><a href="index.html"><span>Main&#160;Page</span></a></li> 47 <li><a href="index.html"><span>Main&#160;Page</span></a></li>
47 <li><a href="namespaces.html"><span>Namespaces</span></a></li> 48 <li><a href="namespaces.html"><span>Namespaces</span></a></li>
48 <li class="current"><a href="annotated.html"><span>Classes</span></a></li> 49 <li class="current"><a href="annotated.html"><span>Classes</span></a></li>
78 <a href="#pub-static-methods">Static Public Member Functions</a> &#124; 79 <a href="#pub-static-methods">Static Public Member Functions</a> &#124;
79 <a href="#pro-methods">Protected Member Functions</a> &#124; 80 <a href="#pro-methods">Protected Member Functions</a> &#124;
80 <a href="#pro-attribs">Protected Attributes</a> </div> 81 <a href="#pro-attribs">Protected Attributes</a> </div>
81 <div class="headertitle"> 82 <div class="headertitle">
82 <div class="title">Vamp::PluginHostAdapter Class Reference</div> </div> 83 <div class="title">Vamp::PluginHostAdapter Class Reference</div> </div>
83 </div> 84 </div><!--header-->
84 <div class="contents"> 85 <div class="contents">
85 <!-- doxytag: class="Vamp::PluginHostAdapter" --><!-- doxytag: inherits="Vamp::Plugin" --> 86
86 <p><a class="el" href="classVamp_1_1PluginHostAdapter.html" title="PluginHostAdapter is a wrapper class that a Vamp host can use to make the C-language VampPluginDescri...">PluginHostAdapter</a> is a wrapper class that a <a class="el" href="namespaceVamp.html">Vamp</a> host can use to make the C-language VampPluginDescriptor object appear as a C++ <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> object. 87 <p><a class="el" href="classVamp_1_1PluginHostAdapter.html" title="PluginHostAdapter is a wrapper class that a Vamp host can use to make the C-language VampPluginDescri...">PluginHostAdapter</a> is a wrapper class that a <a class="el" href="namespaceVamp.html">Vamp</a> host can use to make the C-language VampPluginDescriptor object appear as a C++ <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> object.
87 <a href="classVamp_1_1PluginHostAdapter.html#details">More...</a></p> 88 <a href="classVamp_1_1PluginHostAdapter.html#details">More...</a></p>
88 89
89 <p><code>#include &lt;<a class="el" href="PluginHostAdapter_8h_source.html">vamp-hostsdk/PluginHostAdapter.h</a>&gt;</code></p> 90 <p><code>#include &lt;<a class="el" href="PluginHostAdapter_8h_source.html">vamp-hostsdk/PluginHostAdapter.h</a>&gt;</code></p>
90 <div class="dynheader"> 91 <div class="dynheader">
97 98
98 <p><a href="classVamp_1_1PluginHostAdapter-members.html">List of all members.</a></p> 99 <p><a href="classVamp_1_1PluginHostAdapter-members.html">List of all members.</a></p>
99 <table class="memberdecls"> 100 <table class="memberdecls">
100 <tr><td colspan="2"><h2><a name="pub-types"></a> 101 <tr><td colspan="2"><h2><a name="pub-types"></a>
101 Public Types</h2></td></tr> 102 Public Types</h2></td></tr>
102 <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>, 103 <tr class="memitem:a39cb7649d6dcc20e4cb1640cd55907bc"><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>,
103 <a class="el" href="classVamp_1_1Plugin.html#a39cb7649d6dcc20e4cb1640cd55907bcaa30e7877ab33f76acbdca28607e6ab53">FrequencyDomain</a> 104 <a class="el" href="classVamp_1_1Plugin.html#a39cb7649d6dcc20e4cb1640cd55907bcaa30e7877ab33f76acbdca28607e6ab53">FrequencyDomain</a>
104 }</td></tr> 105 }</td></tr>
105 <tr><td class="memItemLeft" align="right" valign="top">typedef std::vector<br class="typebreak"/> 106 <tr class="memitem:a30f531b8fb69fac41a24e3d2a6a08ed9"><td class="memItemLeft" align="right" valign="top">typedef std::vector<br class="typebreak"/>
106 &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> 107 &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>
107 <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> 108 <tr class="memitem:a0730bc72c87fa02eb8d2854b233f7be1"><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>
108 <tr><td class="memItemLeft" align="right" valign="top">typedef std::map&lt; int, <br class="typebreak"/> 109 <tr class="memitem:a448fb57dc245d47923ec9eeaf9856c5f"><td class="memItemLeft" align="right" valign="top">typedef std::map&lt; int, <br class="typebreak"/>
109 <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> 110 <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>
110 <tr><td class="memItemLeft" align="right" valign="top">typedef std::vector<br class="typebreak"/> 111 <tr class="memitem:a3b6bb4bbd86affe1ca9deceea1aad4f8"><td class="memItemLeft" align="right" valign="top">typedef std::vector<br class="typebreak"/>
111 &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> 112 &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>
112 <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> 113 <tr class="memitem:a7f66f00437b21e5f694fe02356b12f20"><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>
113 <tr><td colspan="2"><h2><a name="pub-methods"></a> 114 <tr><td colspan="2"><h2><a name="pub-methods"></a>
114 Public Member Functions</h2></td></tr> 115 Public Member Functions</h2></td></tr>
115 <tr><td class="memItemLeft" align="right" valign="top">&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="classVamp_1_1PluginHostAdapter.html#a6535abd551acfbbaab381bbe1268cd49">PluginHostAdapter</a> (const <a class="el" href="vamp_8h.html#aa1d6e0792099b9516a89b5fb7ed2ad2b">VampPluginDescriptor</a> *descriptor, float inputSampleRate)</td></tr> 116 <tr class="memitem:a6535abd551acfbbaab381bbe1268cd49"><td class="memItemLeft" align="right" valign="top">&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="classVamp_1_1PluginHostAdapter.html#a6535abd551acfbbaab381bbe1268cd49">PluginHostAdapter</a> (const <a class="el" href="vamp_8h.html#aa1d6e0792099b9516a89b5fb7ed2ad2b">VampPluginDescriptor</a> *descriptor, float inputSampleRate)</td></tr>
116 <tr><td class="memItemLeft" align="right" valign="top">virtual&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="classVamp_1_1PluginHostAdapter.html#aed66c091340aa668d3be89c4b4c24474">~PluginHostAdapter</a> ()</td></tr> 117 <tr class="memitem:aed66c091340aa668d3be89c4b4c24474"><td class="memItemLeft" align="right" valign="top">virtual&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="classVamp_1_1PluginHostAdapter.html#aed66c091340aa668d3be89c4b4c24474">~PluginHostAdapter</a> ()</td></tr>
117 <tr><td class="memItemLeft" align="right" valign="top">bool&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="classVamp_1_1PluginHostAdapter.html#add6a2f1ee7e47bd97fa599cead14b738">initialise</a> (size_t channels, size_t stepSize, size_t blockSize)</td></tr> 118 <tr class="memitem:add6a2f1ee7e47bd97fa599cead14b738"><td class="memItemLeft" align="right" valign="top">bool&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="classVamp_1_1PluginHostAdapter.html#add6a2f1ee7e47bd97fa599cead14b738">initialise</a> (size_t channels, size_t stepSize, size_t blockSize)</td></tr>
118 <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="#add6a2f1ee7e47bd97fa599cead14b738"></a><br/></td></tr> 119 <tr class="memdesc:add6a2f1ee7e47bd97fa599cead14b738"><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="#add6a2f1ee7e47bd97fa599cead14b738"></a><br/></td></tr>
119 <tr><td class="memItemLeft" align="right" valign="top">void&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="classVamp_1_1PluginHostAdapter.html#a5d54c5bbd76bc27b7a243827148afeaa">reset</a> ()</td></tr> 120 <tr class="memitem:a5d54c5bbd76bc27b7a243827148afeaa"><td class="memItemLeft" align="right" valign="top">void&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="classVamp_1_1PluginHostAdapter.html#a5d54c5bbd76bc27b7a243827148afeaa">reset</a> ()</td></tr>
120 <tr><td class="mdescLeft">&#160;</td><td class="mdescRight">Reset the plugin after use, to prepare it for another clean run. <a href="#a5d54c5bbd76bc27b7a243827148afeaa"></a><br/></td></tr> 121 <tr class="memdesc:a5d54c5bbd76bc27b7a243827148afeaa"><td class="mdescLeft">&#160;</td><td class="mdescRight">Reset the plugin after use, to prepare it for another clean run. <a href="#a5d54c5bbd76bc27b7a243827148afeaa"></a><br/></td></tr>
121 <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="classVamp_1_1PluginHostAdapter.html#a8e9d25673367c741631a60cbb36e91d2">getInputDomain</a> () const </td></tr> 122 <tr class="memitem:a8e9d25673367c741631a60cbb36e91d2"><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="classVamp_1_1PluginHostAdapter.html#a8e9d25673367c741631a60cbb36e91d2">getInputDomain</a> () const </td></tr>
122 <tr><td class="mdescLeft">&#160;</td><td class="mdescRight">Get the plugin's required input domain. <a href="#a8e9d25673367c741631a60cbb36e91d2"></a><br/></td></tr> 123 <tr class="memdesc:a8e9d25673367c741631a60cbb36e91d2"><td class="mdescLeft">&#160;</td><td class="mdescRight">Get the plugin's required input domain. <a href="#a8e9d25673367c741631a60cbb36e91d2"></a><br/></td></tr>
123 <tr><td class="memItemLeft" align="right" valign="top">unsigned int&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="classVamp_1_1PluginHostAdapter.html#a98aadddc8403eb46c9d8c5a9d1fdd19e">getVampApiVersion</a> () const </td></tr> 124 <tr class="memitem:a98aadddc8403eb46c9d8c5a9d1fdd19e"><td class="memItemLeft" align="right" valign="top">unsigned int&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="classVamp_1_1PluginHostAdapter.html#a98aadddc8403eb46c9d8c5a9d1fdd19e">getVampApiVersion</a> () const </td></tr>
124 <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="#a98aadddc8403eb46c9d8c5a9d1fdd19e"></a><br/></td></tr> 125 <tr class="memdesc:a98aadddc8403eb46c9d8c5a9d1fdd19e"><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="#a98aadddc8403eb46c9d8c5a9d1fdd19e"></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="classVamp_1_1PluginHostAdapter.html#ab27423a656f878d97d2ad2eba4e76c7a">getIdentifier</a> () const </td></tr> 126 <tr class="memitem:ab27423a656f878d97d2ad2eba4e76c7a"><td class="memItemLeft" align="right" valign="top">std::string&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="classVamp_1_1PluginHostAdapter.html#ab27423a656f878d97d2ad2eba4e76c7a">getIdentifier</a> () const </td></tr>
126 <tr><td class="mdescLeft">&#160;</td><td class="mdescRight">Get the computer-usable name of the plugin. <a href="#ab27423a656f878d97d2ad2eba4e76c7a"></a><br/></td></tr> 127 <tr class="memdesc:ab27423a656f878d97d2ad2eba4e76c7a"><td class="mdescLeft">&#160;</td><td class="mdescRight">Get the computer-usable name of the plugin. <a href="#ab27423a656f878d97d2ad2eba4e76c7a"></a><br/></td></tr>
127 <tr><td class="memItemLeft" align="right" valign="top">std::string&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="classVamp_1_1PluginHostAdapter.html#a45f1d0377e233eeddd1b7cefb48be62a">getName</a> () const </td></tr> 128 <tr class="memitem:a45f1d0377e233eeddd1b7cefb48be62a"><td class="memItemLeft" align="right" valign="top">std::string&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="classVamp_1_1PluginHostAdapter.html#a45f1d0377e233eeddd1b7cefb48be62a">getName</a> () const </td></tr>
128 <tr><td class="mdescLeft">&#160;</td><td class="mdescRight">Get a human-readable name or title of the plugin. <a href="#a45f1d0377e233eeddd1b7cefb48be62a"></a><br/></td></tr> 129 <tr class="memdesc:a45f1d0377e233eeddd1b7cefb48be62a"><td class="mdescLeft">&#160;</td><td class="mdescRight">Get a human-readable name or title of the plugin. <a href="#a45f1d0377e233eeddd1b7cefb48be62a"></a><br/></td></tr>
129 <tr><td class="memItemLeft" align="right" valign="top">std::string&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="classVamp_1_1PluginHostAdapter.html#a5eaafcef030e81b90a3e77cf16cf8ae1">getDescription</a> () const </td></tr> 130 <tr class="memitem:a5eaafcef030e81b90a3e77cf16cf8ae1"><td class="memItemLeft" align="right" valign="top">std::string&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="classVamp_1_1PluginHostAdapter.html#a5eaafcef030e81b90a3e77cf16cf8ae1">getDescription</a> () const </td></tr>
130 <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="#a5eaafcef030e81b90a3e77cf16cf8ae1"></a><br/></td></tr> 131 <tr class="memdesc:a5eaafcef030e81b90a3e77cf16cf8ae1"><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="#a5eaafcef030e81b90a3e77cf16cf8ae1"></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="classVamp_1_1PluginHostAdapter.html#af572be0b175f5661559006a380a0f3db">getMaker</a> () const </td></tr> 132 <tr class="memitem:af572be0b175f5661559006a380a0f3db"><td class="memItemLeft" align="right" valign="top">std::string&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="classVamp_1_1PluginHostAdapter.html#af572be0b175f5661559006a380a0f3db">getMaker</a> () const </td></tr>
132 <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="#af572be0b175f5661559006a380a0f3db"></a><br/></td></tr> 133 <tr class="memdesc:af572be0b175f5661559006a380a0f3db"><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="#af572be0b175f5661559006a380a0f3db"></a><br/></td></tr>
133 <tr><td class="memItemLeft" align="right" valign="top">int&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="classVamp_1_1PluginHostAdapter.html#a6fbd94781867ca46a20368c2a3593c77">getPluginVersion</a> () const </td></tr> 134 <tr class="memitem:a6fbd94781867ca46a20368c2a3593c77"><td class="memItemLeft" align="right" valign="top">int&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="classVamp_1_1PluginHostAdapter.html#a6fbd94781867ca46a20368c2a3593c77">getPluginVersion</a> () const </td></tr>
134 <tr><td class="mdescLeft">&#160;</td><td class="mdescRight">Get the version number of the plugin. <a href="#a6fbd94781867ca46a20368c2a3593c77"></a><br/></td></tr> 135 <tr class="memdesc:a6fbd94781867ca46a20368c2a3593c77"><td class="mdescLeft">&#160;</td><td class="mdescRight">Get the version number of the plugin. <a href="#a6fbd94781867ca46a20368c2a3593c77"></a><br/></td></tr>
135 <tr><td class="memItemLeft" align="right" valign="top">std::string&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="classVamp_1_1PluginHostAdapter.html#ac73c9d6baad04369beee695e99584815">getCopyright</a> () const </td></tr> 136 <tr class="memitem:ac73c9d6baad04369beee695e99584815"><td class="memItemLeft" align="right" valign="top">std::string&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="classVamp_1_1PluginHostAdapter.html#ac73c9d6baad04369beee695e99584815">getCopyright</a> () const </td></tr>
136 <tr><td class="mdescLeft">&#160;</td><td class="mdescRight">Get the copyright statement or licensing summary for the plugin. <a href="#ac73c9d6baad04369beee695e99584815"></a><br/></td></tr> 137 <tr class="memdesc:ac73c9d6baad04369beee695e99584815"><td class="mdescLeft">&#160;</td><td class="mdescRight">Get the copyright statement or licensing summary for the plugin. <a href="#ac73c9d6baad04369beee695e99584815"></a><br/></td></tr>
137 <tr><td class="memItemLeft" align="right" valign="top"><a class="el" href="classVamp_1_1PluginBase.html#a3b6bb4bbd86affe1ca9deceea1aad4f8">ParameterList</a>&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="classVamp_1_1PluginHostAdapter.html#a602faa0bfaae83e2ca53b36292271a76">getParameterDescriptors</a> () const </td></tr> 138 <tr class="memitem:a602faa0bfaae83e2ca53b36292271a76"><td class="memItemLeft" align="right" valign="top"><a class="el" href="classVamp_1_1PluginBase.html#a3b6bb4bbd86affe1ca9deceea1aad4f8">ParameterList</a>&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="classVamp_1_1PluginHostAdapter.html#a602faa0bfaae83e2ca53b36292271a76">getParameterDescriptors</a> () const </td></tr>
138 <tr><td class="mdescLeft">&#160;</td><td class="mdescRight">Get the controllable parameters of this plugin. <a href="#a602faa0bfaae83e2ca53b36292271a76"></a><br/></td></tr> 139 <tr class="memdesc:a602faa0bfaae83e2ca53b36292271a76"><td class="mdescLeft">&#160;</td><td class="mdescRight">Get the controllable parameters of this plugin. <a href="#a602faa0bfaae83e2ca53b36292271a76"></a><br/></td></tr>
139 <tr><td class="memItemLeft" align="right" valign="top">float&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="classVamp_1_1PluginHostAdapter.html#af0c46d4f67ca93be7c76f3ea2e6c8efb">getParameter</a> (std::string) const </td></tr> 140 <tr class="memitem:af0c46d4f67ca93be7c76f3ea2e6c8efb"><td class="memItemLeft" align="right" valign="top">float&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="classVamp_1_1PluginHostAdapter.html#af0c46d4f67ca93be7c76f3ea2e6c8efb">getParameter</a> (std::string) const </td></tr>
140 <tr><td class="mdescLeft">&#160;</td><td class="mdescRight">Get the value of a named parameter. <a href="#af0c46d4f67ca93be7c76f3ea2e6c8efb"></a><br/></td></tr> 141 <tr class="memdesc:af0c46d4f67ca93be7c76f3ea2e6c8efb"><td class="mdescLeft">&#160;</td><td class="mdescRight">Get the value of a named parameter. <a href="#af0c46d4f67ca93be7c76f3ea2e6c8efb"></a><br/></td></tr>
141 <tr><td class="memItemLeft" align="right" valign="top">void&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="classVamp_1_1PluginHostAdapter.html#a29f75395aa75b9de0228aa11edf9c6d6">setParameter</a> (std::string, float)</td></tr> 142 <tr class="memitem:a29f75395aa75b9de0228aa11edf9c6d6"><td class="memItemLeft" align="right" valign="top">void&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="classVamp_1_1PluginHostAdapter.html#a29f75395aa75b9de0228aa11edf9c6d6">setParameter</a> (std::string, float)</td></tr>
142 <tr><td class="mdescLeft">&#160;</td><td class="mdescRight">Set a named parameter. <a href="#a29f75395aa75b9de0228aa11edf9c6d6"></a><br/></td></tr> 143 <tr class="memdesc:a29f75395aa75b9de0228aa11edf9c6d6"><td class="mdescLeft">&#160;</td><td class="mdescRight">Set a named parameter. <a href="#a29f75395aa75b9de0228aa11edf9c6d6"></a><br/></td></tr>
143 <tr><td class="memItemLeft" align="right" valign="top"><a class="el" href="classVamp_1_1PluginBase.html#a7f66f00437b21e5f694fe02356b12f20">ProgramList</a>&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="classVamp_1_1PluginHostAdapter.html#ae0cde5cd625418c1bc470b91f75daafc">getPrograms</a> () const </td></tr> 144 <tr class="memitem:ae0cde5cd625418c1bc470b91f75daafc"><td class="memItemLeft" align="right" valign="top"><a class="el" href="classVamp_1_1PluginBase.html#a7f66f00437b21e5f694fe02356b12f20">ProgramList</a>&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="classVamp_1_1PluginHostAdapter.html#ae0cde5cd625418c1bc470b91f75daafc">getPrograms</a> () const </td></tr>
144 <tr><td class="mdescLeft">&#160;</td><td class="mdescRight">Get the program settings available in this plugin. <a href="#ae0cde5cd625418c1bc470b91f75daafc"></a><br/></td></tr> 145 <tr class="memdesc:ae0cde5cd625418c1bc470b91f75daafc"><td class="mdescLeft">&#160;</td><td class="mdescRight">Get the program settings available in this plugin. <a href="#ae0cde5cd625418c1bc470b91f75daafc"></a><br/></td></tr>
145 <tr><td class="memItemLeft" align="right" valign="top">std::string&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="classVamp_1_1PluginHostAdapter.html#a34859eff8ca8d862af39be9636ec1867">getCurrentProgram</a> () const </td></tr> 146 <tr class="memitem:a34859eff8ca8d862af39be9636ec1867"><td class="memItemLeft" align="right" valign="top">std::string&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="classVamp_1_1PluginHostAdapter.html#a34859eff8ca8d862af39be9636ec1867">getCurrentProgram</a> () const </td></tr>
146 <tr><td class="mdescLeft">&#160;</td><td class="mdescRight">Get the current program. <a href="#a34859eff8ca8d862af39be9636ec1867"></a><br/></td></tr> 147 <tr class="memdesc:a34859eff8ca8d862af39be9636ec1867"><td class="mdescLeft">&#160;</td><td class="mdescRight">Get the current program. <a href="#a34859eff8ca8d862af39be9636ec1867"></a><br/></td></tr>
147 <tr><td class="memItemLeft" align="right" valign="top">void&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="classVamp_1_1PluginHostAdapter.html#a8f5515ab34cc13d9403ccc6b4b788683">selectProgram</a> (std::string)</td></tr> 148 <tr class="memitem:a8f5515ab34cc13d9403ccc6b4b788683"><td class="memItemLeft" align="right" valign="top">void&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="classVamp_1_1PluginHostAdapter.html#a8f5515ab34cc13d9403ccc6b4b788683">selectProgram</a> (std::string)</td></tr>
148 <tr><td class="mdescLeft">&#160;</td><td class="mdescRight">Select a program. <a href="#a8f5515ab34cc13d9403ccc6b4b788683"></a><br/></td></tr> 149 <tr class="memdesc:a8f5515ab34cc13d9403ccc6b4b788683"><td class="mdescLeft">&#160;</td><td class="mdescRight">Select a program. <a href="#a8f5515ab34cc13d9403ccc6b4b788683"></a><br/></td></tr>
149 <tr><td class="memItemLeft" align="right" valign="top">size_t&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="classVamp_1_1PluginHostAdapter.html#a859ad5d59402691daed3cf1af1899ebe">getPreferredStepSize</a> () const </td></tr> 150 <tr class="memitem:a859ad5d59402691daed3cf1af1899ebe"><td class="memItemLeft" align="right" valign="top">size_t&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="classVamp_1_1PluginHostAdapter.html#a859ad5d59402691daed3cf1af1899ebe">getPreferredStepSize</a> () const </td></tr>
150 <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_1PluginHostAdapter.html#a38fe1080b343ba10e5d8a4b30c87cbdd" title="Process a single block of input data.">process()</a> function) for the plugin. <a href="#a859ad5d59402691daed3cf1af1899ebe"></a><br/></td></tr> 151 <tr class="memdesc:a859ad5d59402691daed3cf1af1899ebe"><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_1PluginHostAdapter.html#a38fe1080b343ba10e5d8a4b30c87cbdd" title="Process a single block of input data.">process()</a> function) for the plugin. <a href="#a859ad5d59402691daed3cf1af1899ebe"></a><br/></td></tr>
151 <tr><td class="memItemLeft" align="right" valign="top">size_t&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="classVamp_1_1PluginHostAdapter.html#ad5e0ea8042bdec4dd18428991117e07a">getPreferredBlockSize</a> () const </td></tr> 152 <tr class="memitem:ad5e0ea8042bdec4dd18428991117e07a"><td class="memItemLeft" align="right" valign="top">size_t&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="classVamp_1_1PluginHostAdapter.html#ad5e0ea8042bdec4dd18428991117e07a">getPreferredBlockSize</a> () const </td></tr>
152 <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_1PluginHostAdapter.html#a38fe1080b343ba10e5d8a4b30c87cbdd" title="Process a single block of input data.">process()</a> function). <a href="#ad5e0ea8042bdec4dd18428991117e07a"></a><br/></td></tr> 153 <tr class="memdesc:ad5e0ea8042bdec4dd18428991117e07a"><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_1PluginHostAdapter.html#a38fe1080b343ba10e5d8a4b30c87cbdd" title="Process a single block of input data.">process()</a> function). <a href="#ad5e0ea8042bdec4dd18428991117e07a"></a><br/></td></tr>
153 <tr><td class="memItemLeft" align="right" valign="top">size_t&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="classVamp_1_1PluginHostAdapter.html#a67d1198c0e58d3f0076d0eda599ff28d">getMinChannelCount</a> () const </td></tr> 154 <tr class="memitem:a67d1198c0e58d3f0076d0eda599ff28d"><td class="memItemLeft" align="right" valign="top">size_t&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="classVamp_1_1PluginHostAdapter.html#a67d1198c0e58d3f0076d0eda599ff28d">getMinChannelCount</a> () const </td></tr>
154 <tr><td class="mdescLeft">&#160;</td><td class="mdescRight">Get the minimum supported number of input channels. <a href="#a67d1198c0e58d3f0076d0eda599ff28d"></a><br/></td></tr> 155 <tr class="memdesc:a67d1198c0e58d3f0076d0eda599ff28d"><td class="mdescLeft">&#160;</td><td class="mdescRight">Get the minimum supported number of input channels. <a href="#a67d1198c0e58d3f0076d0eda599ff28d"></a><br/></td></tr>
155 <tr><td class="memItemLeft" align="right" valign="top">size_t&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="classVamp_1_1PluginHostAdapter.html#a25091905e97e39d515d8ffc1a9f2b9e0">getMaxChannelCount</a> () const </td></tr> 156 <tr class="memitem:a25091905e97e39d515d8ffc1a9f2b9e0"><td class="memItemLeft" align="right" valign="top">size_t&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="classVamp_1_1PluginHostAdapter.html#a25091905e97e39d515d8ffc1a9f2b9e0">getMaxChannelCount</a> () const </td></tr>
156 <tr><td class="mdescLeft">&#160;</td><td class="mdescRight">Get the maximum supported number of input channels. <a href="#a25091905e97e39d515d8ffc1a9f2b9e0"></a><br/></td></tr> 157 <tr class="memdesc:a25091905e97e39d515d8ffc1a9f2b9e0"><td class="mdescLeft">&#160;</td><td class="mdescRight">Get the maximum supported number of input channels. <a href="#a25091905e97e39d515d8ffc1a9f2b9e0"></a><br/></td></tr>
157 <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="classVamp_1_1PluginHostAdapter.html#a9649a113da0252fe8bd9fc731b047ae0">getOutputDescriptors</a> () const </td></tr> 158 <tr class="memitem:a9649a113da0252fe8bd9fc731b047ae0"><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="classVamp_1_1PluginHostAdapter.html#a9649a113da0252fe8bd9fc731b047ae0">getOutputDescriptors</a> () const </td></tr>
158 <tr><td class="mdescLeft">&#160;</td><td class="mdescRight">Get the outputs of this plugin. <a href="#a9649a113da0252fe8bd9fc731b047ae0"></a><br/></td></tr> 159 <tr class="memdesc:a9649a113da0252fe8bd9fc731b047ae0"><td class="mdescLeft">&#160;</td><td class="mdescRight">Get the outputs of this plugin. <a href="#a9649a113da0252fe8bd9fc731b047ae0"></a><br/></td></tr>
159 <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="classVamp_1_1PluginHostAdapter.html#a38fe1080b343ba10e5d8a4b30c87cbdd">process</a> (const float *const *inputBuffers, <a class="el" href="structVamp_1_1RealTime.html">RealTime</a> timestamp)</td></tr> 160 <tr class="memitem:a38fe1080b343ba10e5d8a4b30c87cbdd"><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="classVamp_1_1PluginHostAdapter.html#a38fe1080b343ba10e5d8a4b30c87cbdd">process</a> (const float *const *inputBuffers, <a class="el" href="structVamp_1_1RealTime.html">RealTime</a> timestamp)</td></tr>
160 <tr><td class="mdescLeft">&#160;</td><td class="mdescRight">Process a single block of input data. <a href="#a38fe1080b343ba10e5d8a4b30c87cbdd"></a><br/></td></tr> 161 <tr class="memdesc:a38fe1080b343ba10e5d8a4b30c87cbdd"><td class="mdescLeft">&#160;</td><td class="mdescRight">Process a single block of input data. <a href="#a38fe1080b343ba10e5d8a4b30c87cbdd"></a><br/></td></tr>
161 <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="classVamp_1_1PluginHostAdapter.html#a984a4c11f3fbdcfd90e4837b1619a5ab">getRemainingFeatures</a> ()</td></tr> 162 <tr class="memitem:a984a4c11f3fbdcfd90e4837b1619a5ab"><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="classVamp_1_1PluginHostAdapter.html#a984a4c11f3fbdcfd90e4837b1619a5ab">getRemainingFeatures</a> ()</td></tr>
162 <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="#a984a4c11f3fbdcfd90e4837b1619a5ab"></a><br/></td></tr> 163 <tr class="memdesc:a984a4c11f3fbdcfd90e4837b1619a5ab"><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="#a984a4c11f3fbdcfd90e4837b1619a5ab"></a><br/></td></tr>
163 <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> 164 <tr class="memitem:abe13b3997a69fbcc09e2213faa352f91"><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>
164 <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> 165 <tr class="memdesc:abe13b3997a69fbcc09e2213faa352f91"><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>
165 <tr><td colspan="2"><h2><a name="pub-static-methods"></a> 166 <tr><td colspan="2"><h2><a name="pub-static-methods"></a>
166 Static Public Member Functions</h2></td></tr> 167 Static Public Member Functions</h2></td></tr>
167 <tr><td class="memItemLeft" align="right" valign="top">static std::vector&lt; std::string &gt;&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="classVamp_1_1PluginHostAdapter.html#a09cbfb7903d28f10d6d556c6cb81c5f6">getPluginPath</a> ()</td></tr> 168 <tr class="memitem:a09cbfb7903d28f10d6d556c6cb81c5f6"><td class="memItemLeft" align="right" valign="top">static std::vector&lt; std::string &gt;&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="classVamp_1_1PluginHostAdapter.html#a09cbfb7903d28f10d6d556c6cb81c5f6">getPluginPath</a> ()</td></tr>
168 <tr><td colspan="2"><h2><a name="pro-methods"></a> 169 <tr><td colspan="2"><h2><a name="pro-methods"></a>
169 Protected Member Functions</h2></td></tr> 170 Protected Member Functions</h2></td></tr>
170 <tr><td class="memItemLeft" align="right" valign="top">void&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="classVamp_1_1PluginHostAdapter.html#aee417a4c9ba9dbb63777c963d5f9452a">convertFeatures</a> (<a class="el" href="vamp_8h.html#a5f257e3f8b5ca1ca4c159d486e219078">VampFeatureList</a> *, <a class="el" href="classVamp_1_1Plugin.html#a448fb57dc245d47923ec9eeaf9856c5f">FeatureSet</a> &amp;)</td></tr> 171 <tr class="memitem:aee417a4c9ba9dbb63777c963d5f9452a"><td class="memItemLeft" align="right" valign="top">void&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="classVamp_1_1PluginHostAdapter.html#aee417a4c9ba9dbb63777c963d5f9452a">convertFeatures</a> (<a class="el" href="vamp_8h.html#a5f257e3f8b5ca1ca4c159d486e219078">VampFeatureList</a> *, <a class="el" href="classVamp_1_1Plugin.html#a448fb57dc245d47923ec9eeaf9856c5f">FeatureSet</a> &amp;)</td></tr>
171 <tr><td colspan="2"><h2><a name="pro-attribs"></a> 172 <tr><td colspan="2"><h2><a name="pro-attribs"></a>
172 Protected Attributes</h2></td></tr> 173 Protected Attributes</h2></td></tr>
173 <tr><td class="memItemLeft" align="right" valign="top">const <a class="el" href="vamp_8h.html#aa1d6e0792099b9516a89b5fb7ed2ad2b">VampPluginDescriptor</a> *&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="classVamp_1_1PluginHostAdapter.html#a0c9f252aca8ac298e30cadd0de032ec2">m_descriptor</a></td></tr> 174 <tr class="memitem:a0c9f252aca8ac298e30cadd0de032ec2"><td class="memItemLeft" align="right" valign="top">const <a class="el" href="vamp_8h.html#aa1d6e0792099b9516a89b5fb7ed2ad2b">VampPluginDescriptor</a> *&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="classVamp_1_1PluginHostAdapter.html#a0c9f252aca8ac298e30cadd0de032ec2">m_descriptor</a></td></tr>
174 <tr><td class="memItemLeft" align="right" valign="top"><a class="el" href="vamp_8h.html#ad3be2952b1f4ad7d775940a6db75c79b">VampPluginHandle</a>&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="classVamp_1_1PluginHostAdapter.html#a02ebd03b226b4a467cad747ce77e79ee">m_handle</a></td></tr> 175 <tr class="memitem:a02ebd03b226b4a467cad747ce77e79ee"><td class="memItemLeft" align="right" valign="top"><a class="el" href="vamp_8h.html#ad3be2952b1f4ad7d775940a6db75c79b">VampPluginHandle</a>&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="classVamp_1_1PluginHostAdapter.html#a02ebd03b226b4a467cad747ce77e79ee">m_handle</a></td></tr>
175 <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> 176 <tr class="memitem:a59b9dd82a4f4eb946cd0474cc81abc23"><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>
176 </table> 177 </table>
177 <hr/><a name="details" id="details"></a><h2>Detailed Description</h2> 178 <hr/><a name="details" id="details"></a><h2>Detailed Description</h2>
178 <div class="textblock"><p><a class="el" href="classVamp_1_1PluginHostAdapter.html" title="PluginHostAdapter is a wrapper class that a Vamp host can use to make the C-language VampPluginDescri...">PluginHostAdapter</a> is a wrapper class that a <a class="el" href="namespaceVamp.html">Vamp</a> host can use to make the C-language VampPluginDescriptor object appear as a C++ <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> object. </p> 179 <div class="textblock"><p><a class="el" href="classVamp_1_1PluginHostAdapter.html" title="PluginHostAdapter is a wrapper class that a Vamp host can use to make the C-language VampPluginDescri...">PluginHostAdapter</a> is a wrapper class that a <a class="el" href="namespaceVamp.html">Vamp</a> host can use to make the C-language VampPluginDescriptor object appear as a C++ <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> object. </p>
179 <p>The <a class="el" href="namespaceVamp.html">Vamp</a> API is defined in <a class="el" href="vamp_8h.html">vamp/vamp.h</a> as a C API. The C++ objects used for convenience by plugins and hosts actually communicate using the C low-level API, but the details of this communication are handled seamlessly by the <a class="el" href="namespaceVamp.html">Vamp</a> SDK implementation provided the plugin and host use the proper C++ wrapper objects.</p> 180 <p>The <a class="el" href="namespaceVamp.html">Vamp</a> API is defined in <a class="el" href="vamp_8h.html">vamp/vamp.h</a> as a C API. The C++ objects used for convenience by plugins and hosts actually communicate using the C low-level API, but the details of this communication are handled seamlessly by the <a class="el" href="namespaceVamp.html">Vamp</a> SDK implementation provided the plugin and host use the proper C++ wrapper objects.</p>
180 <p>See also <a class="el" href="classVamp_1_1PluginAdapter.html" title="PluginAdapter turns a PluginAdapterBase into a specific wrapper for a particular plugin implementatio...">PluginAdapter</a>, the plugin-side wrapper that makes a C++ plugin object available using the C query API. </p> 181 <p>See also <a class="el" href="classVamp_1_1PluginAdapter.html" title="PluginAdapter turns a PluginAdapterBase into a specific wrapper for a particular plugin implementatio...">PluginAdapter</a>, the plugin-side wrapper that makes a C++ plugin object available using the C query API. </p>
181 182
182 <p>Definition at line <a class="el" href="PluginHostAdapter_8h_source.html#l00068">68</a> of file <a class="el" href="PluginHostAdapter_8h_source.html">PluginHostAdapter.h</a>.</p> 183 <p>Definition at line <a class="el" href="PluginHostAdapter_8h_source.html#l00068">68</a> of file <a class="el" href="PluginHostAdapter_8h_source.html">PluginHostAdapter.h</a>.</p>
183 </div><hr/><h2>Member Typedef Documentation</h2> 184 </div><hr/><h2>Member Typedef Documentation</h2>
184 <a class="anchor" id="a30f531b8fb69fac41a24e3d2a6a08ed9"></a><!-- doxytag: member="Vamp::PluginHostAdapter::OutputList" ref="a30f531b8fb69fac41a24e3d2a6a08ed9" args="" --> 185 <a class="anchor" id="a30f531b8fb69fac41a24e3d2a6a08ed9"></a>
185 <div class="memitem"> 186 <div class="memitem">
186 <div class="memproto"> 187 <div class="memproto">
187 <table class="memname"> 188 <table class="memname">
188 <tr> 189 <tr>
189 <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> 190 <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>
194 195
195 <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> 196 <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>
196 197
197 </div> 198 </div>
198 </div> 199 </div>
199 <a class="anchor" id="a0730bc72c87fa02eb8d2854b233f7be1"></a><!-- doxytag: member="Vamp::PluginHostAdapter::FeatureList" ref="a0730bc72c87fa02eb8d2854b233f7be1" args="" --> 200 <a class="anchor" id="a0730bc72c87fa02eb8d2854b233f7be1"></a>
200 <div class="memitem"> 201 <div class="memitem">
201 <div class="memproto"> 202 <div class="memproto">
202 <table class="memname"> 203 <table class="memname">
203 <tr> 204 <tr>
204 <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> 205 <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>
209 210
210 <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> 211 <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>
211 212
212 </div> 213 </div>
213 </div> 214 </div>
214 <a class="anchor" id="a448fb57dc245d47923ec9eeaf9856c5f"></a><!-- doxytag: member="Vamp::PluginHostAdapter::FeatureSet" ref="a448fb57dc245d47923ec9eeaf9856c5f" args="" --> 215 <a class="anchor" id="a448fb57dc245d47923ec9eeaf9856c5f"></a>
215 <div class="memitem"> 216 <div class="memitem">
216 <div class="memproto"> 217 <div class="memproto">
217 <table class="memname"> 218 <table class="memname">
218 <tr> 219 <tr>
219 <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> 220 <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>
224 225
225 <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> 226 <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>
226 227
227 </div> 228 </div>
228 </div> 229 </div>
229 <a class="anchor" id="a3b6bb4bbd86affe1ca9deceea1aad4f8"></a><!-- doxytag: member="Vamp::PluginHostAdapter::ParameterList" ref="a3b6bb4bbd86affe1ca9deceea1aad4f8" args="" --> 230 <a class="anchor" id="a3b6bb4bbd86affe1ca9deceea1aad4f8"></a>
230 <div class="memitem"> 231 <div class="memitem">
231 <div class="memproto"> 232 <div class="memproto">
232 <table class="memname"> 233 <table class="memname">
233 <tr> 234 <tr>
234 <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> 235 <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>
235 </tr> 236 </tr>
236 </table> 237 </table>
237 </div> 238 </div>
238 <div class="memdoc"> 239 <div class="memdoc">
239 240
240 <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> 241 <p>Definition at line <a class="el" href="vamp-sdk_2PluginBase_8h_source.html#l00199">199</a> of file <a class="el" href="vamp-sdk_2PluginBase_8h_source.html">vamp-sdk/PluginBase.h</a>.</p>
241 242
242 </div> 243 </div>
243 </div> 244 </div>
244 <a class="anchor" id="a7f66f00437b21e5f694fe02356b12f20"></a><!-- doxytag: member="Vamp::PluginHostAdapter::ProgramList" ref="a7f66f00437b21e5f694fe02356b12f20" args="" --> 245 <a class="anchor" id="a7f66f00437b21e5f694fe02356b12f20"></a>
245 <div class="memitem"> 246 <div class="memitem">
246 <div class="memproto"> 247 <div class="memproto">
247 <table class="memname"> 248 <table class="memname">
248 <tr> 249 <tr>
249 <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> 250 <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>
250 </tr> 251 </tr>
251 </table> 252 </table>
252 </div> 253 </div>
253 <div class="memdoc"> 254 <div class="memdoc">
254 255
255 <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> 256 <p>Definition at line <a class="el" href="vamp-sdk_2PluginBase_8h_source.html#l00221">221</a> of file <a class="el" href="vamp-sdk_2PluginBase_8h_source.html">vamp-sdk/PluginBase.h</a>.</p>
256 257
257 </div> 258 </div>
258 </div> 259 </div>
259 <hr/><h2>Member Enumeration Documentation</h2> 260 <hr/><h2>Member Enumeration Documentation</h2>
260 <a class="anchor" id="a39cb7649d6dcc20e4cb1640cd55907bc"></a><!-- doxytag: member="Vamp::PluginHostAdapter::InputDomain" ref="a39cb7649d6dcc20e4cb1640cd55907bc" args="" --> 261 <a class="anchor" id="a39cb7649d6dcc20e4cb1640cd55907bc"></a>
261 <div class="memitem"> 262 <div class="memitem">
262 <div class="memproto"> 263 <div class="memproto">
263 <table class="memname"> 264 <table class="memname">
264 <tr> 265 <tr>
265 <td class="memname">enum <a class="el" href="classVamp_1_1Plugin.html#a39cb7649d6dcc20e4cb1640cd55907bc">Vamp::Plugin::InputDomain</a><code> [inherited]</code></td> 266 <td class="memname">enum <a class="el" href="classVamp_1_1Plugin.html#a39cb7649d6dcc20e4cb1640cd55907bc">Vamp::Plugin::InputDomain</a><code> [inherited]</code></td>
266 </tr> 267 </tr>
267 </table> 268 </table>
268 </div> 269 </div>
269 <div class="memdoc"> 270 <div class="memdoc">
270 <dl><dt><b>Enumerator: </b></dt><dd><table border="0" cellspacing="2" cellpadding="0"> 271 <dl><dt><b>Enumerator: </b></dt><dd><table border="0" cellspacing="2" cellpadding="0">
271 <tr><td valign="top"><em><a class="anchor" id="a39cb7649d6dcc20e4cb1640cd55907bcad4a9f31b958a43a9757af7893aa2e7ff"></a><!-- doxytag: member="TimeDomain" ref="a39cb7649d6dcc20e4cb1640cd55907bcad4a9f31b958a43a9757af7893aa2e7ff" args="" -->TimeDomain</em>&nbsp;</td><td> 272 <tr><td valign="top"><em><a class="anchor" id="a39cb7649d6dcc20e4cb1640cd55907bcad4a9f31b958a43a9757af7893aa2e7ff"></a>TimeDomain</em>&nbsp;</td><td>
272 </td></tr> 273 </td></tr>
273 <tr><td valign="top"><em><a class="anchor" id="a39cb7649d6dcc20e4cb1640cd55907bcaa30e7877ab33f76acbdca28607e6ab53"></a><!-- doxytag: member="FrequencyDomain" ref="a39cb7649d6dcc20e4cb1640cd55907bcaa30e7877ab33f76acbdca28607e6ab53" args="" -->FrequencyDomain</em>&nbsp;</td><td> 274 <tr><td valign="top"><em><a class="anchor" id="a39cb7649d6dcc20e4cb1640cd55907bcaa30e7877ab33f76acbdca28607e6ab53"></a>FrequencyDomain</em>&nbsp;</td><td>
274 </td></tr> 275 </td></tr>
275 </table> 276 </table>
276 </dd> 277 </dd>
277 </dl> 278 </dl>
278 279
279 <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> 280 <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>
280 281
281 </div> 282 </div>
282 </div> 283 </div>
283 <hr/><h2>Constructor &amp; Destructor Documentation</h2> 284 <hr/><h2>Constructor &amp; Destructor Documentation</h2>
284 <a class="anchor" id="a6535abd551acfbbaab381bbe1268cd49"></a><!-- doxytag: member="Vamp::PluginHostAdapter::PluginHostAdapter" ref="a6535abd551acfbbaab381bbe1268cd49" args="(const VampPluginDescriptor *descriptor, float inputSampleRate)" --> 285 <a class="anchor" id="a6535abd551acfbbaab381bbe1268cd49"></a>
285 <div class="memitem"> 286 <div class="memitem">
286 <div class="memproto"> 287 <div class="memproto">
287 <table class="memname"> 288 <table class="memname">
288 <tr> 289 <tr>
289 <td class="memname">Vamp::PluginHostAdapter::PluginHostAdapter </td> 290 <td class="memname"><a class="el" href="classVamp_1_1PluginHostAdapter.html#a6535abd551acfbbaab381bbe1268cd49">Vamp::PluginHostAdapter::PluginHostAdapter</a> </td>
290 <td>(</td> 291 <td>(</td>
291 <td class="paramtype">const <a class="el" href="vamp_8h.html#aa1d6e0792099b9516a89b5fb7ed2ad2b">VampPluginDescriptor</a> *&#160;</td> 292 <td class="paramtype">const <a class="el" href="vamp_8h.html#aa1d6e0792099b9516a89b5fb7ed2ad2b">VampPluginDescriptor</a> *&#160;</td>
292 <td class="paramname"><em>descriptor</em>, </td> 293 <td class="paramname"><em>descriptor</em>, </td>
293 </tr> 294 </tr>
294 <tr> 295 <tr>
306 </div> 307 </div>
307 <div class="memdoc"> 308 <div class="memdoc">
308 309
309 </div> 310 </div>
310 </div> 311 </div>
311 <a class="anchor" id="aed66c091340aa668d3be89c4b4c24474"></a><!-- doxytag: member="Vamp::PluginHostAdapter::~PluginHostAdapter" ref="aed66c091340aa668d3be89c4b4c24474" args="()" --> 312 <a class="anchor" id="aed66c091340aa668d3be89c4b4c24474"></a>
312 <div class="memitem"> 313 <div class="memitem">
313 <div class="memproto"> 314 <div class="memproto">
314 <table class="memname"> 315 <table class="memname">
315 <tr> 316 <tr>
316 <td class="memname">virtual Vamp::PluginHostAdapter::~PluginHostAdapter </td> 317 <td class="memname">virtual <a class="el" href="classVamp_1_1PluginHostAdapter.html#aed66c091340aa668d3be89c4b4c24474">Vamp::PluginHostAdapter::~PluginHostAdapter</a> </td>
317 <td>(</td> 318 <td>(</td>
318 <td class="paramname"></td><td>)</td> 319 <td class="paramname"></td><td>)</td>
319 <td><code> [virtual]</code></td> 320 <td><code> [virtual]</code></td>
320 </tr> 321 </tr>
321 </table> 322 </table>
323 <div class="memdoc"> 324 <div class="memdoc">
324 325
325 </div> 326 </div>
326 </div> 327 </div>
327 <hr/><h2>Member Function Documentation</h2> 328 <hr/><h2>Member Function Documentation</h2>
328 <a class="anchor" id="a09cbfb7903d28f10d6d556c6cb81c5f6"></a><!-- doxytag: member="Vamp::PluginHostAdapter::getPluginPath" ref="a09cbfb7903d28f10d6d556c6cb81c5f6" args="()" --> 329 <a class="anchor" id="a09cbfb7903d28f10d6d556c6cb81c5f6"></a>
329 <div class="memitem"> 330 <div class="memitem">
330 <div class="memproto"> 331 <div class="memproto">
331 <table class="memname"> 332 <table class="memname">
332 <tr> 333 <tr>
333 <td class="memname">static std::vector&lt;std::string&gt; Vamp::PluginHostAdapter::getPluginPath </td> 334 <td class="memname">static std::vector&lt;std::string&gt; <a class="el" href="classVamp_1_1PluginHostAdapter.html#a09cbfb7903d28f10d6d556c6cb81c5f6">Vamp::PluginHostAdapter::getPluginPath</a> </td>
334 <td>(</td> 335 <td>(</td>
335 <td class="paramname"></td><td>)</td> 336 <td class="paramname"></td><td>)</td>
336 <td><code> [static]</code></td> 337 <td><code> [static]</code></td>
337 </tr> 338 </tr>
338 </table> 339 </table>
339 </div> 340 </div>
340 <div class="memdoc"> 341 <div class="memdoc">
341 342
342 </div> 343 </div>
343 </div> 344 </div>
344 <a class="anchor" id="add6a2f1ee7e47bd97fa599cead14b738"></a><!-- doxytag: member="Vamp::PluginHostAdapter::initialise" ref="add6a2f1ee7e47bd97fa599cead14b738" args="(size_t channels, size_t stepSize, size_t blockSize)" --> 345 <a class="anchor" id="add6a2f1ee7e47bd97fa599cead14b738"></a>
345 <div class="memitem"> 346 <div class="memitem">
346 <div class="memproto"> 347 <div class="memproto">
347 <table class="memname"> 348 <table class="memname">
348 <tr> 349 <tr>
349 <td class="memname">bool Vamp::PluginHostAdapter::initialise </td> 350 <td class="memname">bool <a class="el" href="classVamp_1_1PluginHostAdapter.html#add6a2f1ee7e47bd97fa599cead14b738">Vamp::PluginHostAdapter::initialise</a> </td>
350 <td>(</td> 351 <td>(</td>
351 <td class="paramtype">size_t&#160;</td> 352 <td class="paramtype">size_t&#160;</td>
352 <td class="paramname"><em>inputChannels</em>, </td> 353 <td class="paramname"><em>inputChannels</em>, </td>
353 </tr> 354 </tr>
354 <tr> 355 <tr>
378 379
379 <p>Implements <a class="el" href="classVamp_1_1Plugin.html#af26212cf5fc511b603a8b48034247822">Vamp::Plugin</a>.</p> 380 <p>Implements <a class="el" href="classVamp_1_1Plugin.html#af26212cf5fc511b603a8b48034247822">Vamp::Plugin</a>.</p>
380 381
381 </div> 382 </div>
382 </div> 383 </div>
383 <a class="anchor" id="a5d54c5bbd76bc27b7a243827148afeaa"></a><!-- doxytag: member="Vamp::PluginHostAdapter::reset" ref="a5d54c5bbd76bc27b7a243827148afeaa" args="()" --> 384 <a class="anchor" id="a5d54c5bbd76bc27b7a243827148afeaa"></a>
384 <div class="memitem"> 385 <div class="memitem">
385 <div class="memproto"> 386 <div class="memproto">
386 <table class="memname"> 387 <table class="memname">
387 <tr> 388 <tr>
388 <td class="memname">void Vamp::PluginHostAdapter::reset </td> 389 <td class="memname">void <a class="el" href="classVamp_1_1PluginHostAdapter.html#a5d54c5bbd76bc27b7a243827148afeaa">Vamp::PluginHostAdapter::reset</a> </td>
389 <td>(</td> 390 <td>(</td>
390 <td class="paramname"></td><td>)</td> 391 <td class="paramname"></td><td>)</td>
391 <td><code> [virtual]</code></td> 392 <td><code> [virtual]</code></td>
392 </tr> 393 </tr>
393 </table> 394 </table>
399 400
400 <p>Implements <a class="el" href="classVamp_1_1Plugin.html#aad67dc9d0052417511070c4ebcfbf24f">Vamp::Plugin</a>.</p> 401 <p>Implements <a class="el" href="classVamp_1_1Plugin.html#aad67dc9d0052417511070c4ebcfbf24f">Vamp::Plugin</a>.</p>
401 402
402 </div> 403 </div>
403 </div> 404 </div>
404 <a class="anchor" id="a8e9d25673367c741631a60cbb36e91d2"></a><!-- doxytag: member="Vamp::PluginHostAdapter::getInputDomain" ref="a8e9d25673367c741631a60cbb36e91d2" args="() const " --> 405 <a class="anchor" id="a8e9d25673367c741631a60cbb36e91d2"></a>
405 <div class="memitem"> 406 <div class="memitem">
406 <div class="memproto"> 407 <div class="memproto">
407 <table class="memname"> 408 <table class="memname">
408 <tr> 409 <tr>
409 <td class="memname"><a class="el" href="classVamp_1_1Plugin.html#a39cb7649d6dcc20e4cb1640cd55907bc">InputDomain</a> Vamp::PluginHostAdapter::getInputDomain </td> 410 <td class="memname"><a class="el" href="classVamp_1_1Plugin.html#a39cb7649d6dcc20e4cb1640cd55907bc">InputDomain</a> <a class="el" href="classVamp_1_1PluginHostAdapter.html#a8e9d25673367c741631a60cbb36e91d2">Vamp::PluginHostAdapter::getInputDomain</a> </td>
410 <td>(</td> 411 <td>(</td>
411 <td class="paramname"></td><td>)</td> 412 <td class="paramname"></td><td>)</td>
412 <td> const<code> [virtual]</code></td> 413 <td> const<code> [virtual]</code></td>
413 </tr> 414 </tr>
414 </table> 415 </table>
415 </div> 416 </div>
416 <div class="memdoc"> 417 <div class="memdoc">
417 418
418 <p>Get the plugin's required input domain. </p> 419 <p>Get the plugin's required input domain. </p>
419 <p>If this is TimeDomain, the samples provided to the <a class="el" href="classVamp_1_1PluginHostAdapter.html#a38fe1080b343ba10e5d8a4b30c87cbdd" 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> 420 <p>If this is TimeDomain, the samples provided to the <a class="el" href="classVamp_1_1PluginHostAdapter.html#a38fe1080b343ba10e5d8a4b30c87cbdd" 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>
420 <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="classVamp_1_1PluginHostAdapter.html#a38fe1080b343ba10e5d8a4b30c87cbdd" 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> 421 <p>If this is FrequencyDomain, the host will carry out a windowed <a class="el" href="classVamp_1_1FFT.html" title="A simple FFT implementation provided for convenience of plugin authors.">FFT</a> of size equal to the negotiated block size on the data before passing the frequency bin data in to <a class="el" href="classVamp_1_1PluginHostAdapter.html#a38fe1080b343ba10e5d8a4b30c87cbdd" title="Process a single block of input data.">process()</a>. The input data for the <a class="el" href="classVamp_1_1FFT.html" title="A simple FFT implementation provided for convenience of plugin authors.">FFT</a> 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>
421 422
422 <p>Implements <a class="el" href="classVamp_1_1Plugin.html#ae1d317a9702cbeda65ddf0ec500c1ff6">Vamp::Plugin</a>.</p> 423 <p>Implements <a class="el" href="classVamp_1_1Plugin.html#ae1d317a9702cbeda65ddf0ec500c1ff6">Vamp::Plugin</a>.</p>
423 424
424 </div> 425 </div>
425 </div> 426 </div>
426 <a class="anchor" id="a98aadddc8403eb46c9d8c5a9d1fdd19e"></a><!-- doxytag: member="Vamp::PluginHostAdapter::getVampApiVersion" ref="a98aadddc8403eb46c9d8c5a9d1fdd19e" args="() const " --> 427 <a class="anchor" id="a98aadddc8403eb46c9d8c5a9d1fdd19e"></a>
427 <div class="memitem"> 428 <div class="memitem">
428 <div class="memproto"> 429 <div class="memproto">
429 <table class="memname"> 430 <table class="memname">
430 <tr> 431 <tr>
431 <td class="memname">unsigned int Vamp::PluginHostAdapter::getVampApiVersion </td> 432 <td class="memname">unsigned int <a class="el" href="classVamp_1_1PluginHostAdapter.html#a98aadddc8403eb46c9d8c5a9d1fdd19e">Vamp::PluginHostAdapter::getVampApiVersion</a> </td>
432 <td>(</td> 433 <td>(</td>
433 <td class="paramname"></td><td>)</td> 434 <td class="paramname"></td><td>)</td>
434 <td> const<code> [virtual]</code></td> 435 <td> const<code> [virtual]</code></td>
435 </tr> 436 </tr>
436 </table> 437 </table>
441 442
442 <p>Reimplemented from <a class="el" href="classVamp_1_1PluginBase.html#a8fd2c48291c64b790f0efb8948508dcf">Vamp::PluginBase</a>.</p> 443 <p>Reimplemented from <a class="el" href="classVamp_1_1PluginBase.html#a8fd2c48291c64b790f0efb8948508dcf">Vamp::PluginBase</a>.</p>
443 444
444 </div> 445 </div>
445 </div> 446 </div>
446 <a class="anchor" id="ab27423a656f878d97d2ad2eba4e76c7a"></a><!-- doxytag: member="Vamp::PluginHostAdapter::getIdentifier" ref="ab27423a656f878d97d2ad2eba4e76c7a" args="() const " --> 447 <a class="anchor" id="ab27423a656f878d97d2ad2eba4e76c7a"></a>
447 <div class="memitem"> 448 <div class="memitem">
448 <div class="memproto"> 449 <div class="memproto">
449 <table class="memname"> 450 <table class="memname">
450 <tr> 451 <tr>
451 <td class="memname">std::string Vamp::PluginHostAdapter::getIdentifier </td> 452 <td class="memname">std::string <a class="el" href="classVamp_1_1PluginHostAdapter.html#ab27423a656f878d97d2ad2eba4e76c7a">Vamp::PluginHostAdapter::getIdentifier</a> </td>
452 <td>(</td> 453 <td>(</td>
453 <td class="paramname"></td><td>)</td> 454 <td class="paramname"></td><td>)</td>
454 <td> const<code> [virtual]</code></td> 455 <td> const<code> [virtual]</code></td>
455 </tr> 456 </tr>
456 </table> 457 </table>
464 465
465 <p>Implements <a class="el" href="classVamp_1_1PluginBase.html#ad1c6dfc77aa03d937a885b7f08258f4a">Vamp::PluginBase</a>.</p> 466 <p>Implements <a class="el" href="classVamp_1_1PluginBase.html#ad1c6dfc77aa03d937a885b7f08258f4a">Vamp::PluginBase</a>.</p>
466 467
467 </div> 468 </div>
468 </div> 469 </div>
469 <a class="anchor" id="a45f1d0377e233eeddd1b7cefb48be62a"></a><!-- doxytag: member="Vamp::PluginHostAdapter::getName" ref="a45f1d0377e233eeddd1b7cefb48be62a" args="() const " --> 470 <a class="anchor" id="a45f1d0377e233eeddd1b7cefb48be62a"></a>
470 <div class="memitem"> 471 <div class="memitem">
471 <div class="memproto"> 472 <div class="memproto">
472 <table class="memname"> 473 <table class="memname">
473 <tr> 474 <tr>
474 <td class="memname">std::string Vamp::PluginHostAdapter::getName </td> 475 <td class="memname">std::string <a class="el" href="classVamp_1_1PluginHostAdapter.html#a45f1d0377e233eeddd1b7cefb48be62a">Vamp::PluginHostAdapter::getName</a> </td>
475 <td>(</td> 476 <td>(</td>
476 <td class="paramname"></td><td>)</td> 477 <td class="paramname"></td><td>)</td>
477 <td> const<code> [virtual]</code></td> 478 <td> const<code> [virtual]</code></td>
478 </tr> 479 </tr>
479 </table> 480 </table>
486 487
487 <p>Implements <a class="el" href="classVamp_1_1PluginBase.html#a18619d5097e444ecefee0c359da53232">Vamp::PluginBase</a>.</p> 488 <p>Implements <a class="el" href="classVamp_1_1PluginBase.html#a18619d5097e444ecefee0c359da53232">Vamp::PluginBase</a>.</p>
488 489
489 </div> 490 </div>
490 </div> 491 </div>
491 <a class="anchor" id="a5eaafcef030e81b90a3e77cf16cf8ae1"></a><!-- doxytag: member="Vamp::PluginHostAdapter::getDescription" ref="a5eaafcef030e81b90a3e77cf16cf8ae1" args="() const " --> 492 <a class="anchor" id="a5eaafcef030e81b90a3e77cf16cf8ae1"></a>
492 <div class="memitem"> 493 <div class="memitem">
493 <div class="memproto"> 494 <div class="memproto">
494 <table class="memname"> 495 <table class="memname">
495 <tr> 496 <tr>
496 <td class="memname">std::string Vamp::PluginHostAdapter::getDescription </td> 497 <td class="memname">std::string <a class="el" href="classVamp_1_1PluginHostAdapter.html#a5eaafcef030e81b90a3e77cf16cf8ae1">Vamp::PluginHostAdapter::getDescription</a> </td>
497 <td>(</td> 498 <td>(</td>
498 <td class="paramname"></td><td>)</td> 499 <td class="paramname"></td><td>)</td>
499 <td> const<code> [virtual]</code></td> 500 <td> const<code> [virtual]</code></td>
500 </tr> 501 </tr>
501 </table> 502 </table>
508 509
509 <p>Implements <a class="el" href="classVamp_1_1PluginBase.html#a59153a02364f75fff46973b2072e9e5a">Vamp::PluginBase</a>.</p> 510 <p>Implements <a class="el" href="classVamp_1_1PluginBase.html#a59153a02364f75fff46973b2072e9e5a">Vamp::PluginBase</a>.</p>
510 511
511 </div> 512 </div>
512 </div> 513 </div>
513 <a class="anchor" id="af572be0b175f5661559006a380a0f3db"></a><!-- doxytag: member="Vamp::PluginHostAdapter::getMaker" ref="af572be0b175f5661559006a380a0f3db" args="() const " --> 514 <a class="anchor" id="af572be0b175f5661559006a380a0f3db"></a>
514 <div class="memitem"> 515 <div class="memitem">
515 <div class="memproto"> 516 <div class="memproto">
516 <table class="memname"> 517 <table class="memname">
517 <tr> 518 <tr>
518 <td class="memname">std::string Vamp::PluginHostAdapter::getMaker </td> 519 <td class="memname">std::string <a class="el" href="classVamp_1_1PluginHostAdapter.html#af572be0b175f5661559006a380a0f3db">Vamp::PluginHostAdapter::getMaker</a> </td>
519 <td>(</td> 520 <td>(</td>
520 <td class="paramname"></td><td>)</td> 521 <td class="paramname"></td><td>)</td>
521 <td> const<code> [virtual]</code></td> 522 <td> const<code> [virtual]</code></td>
522 </tr> 523 </tr>
523 </table> 524 </table>
529 530
530 <p>Implements <a class="el" href="classVamp_1_1PluginBase.html#a53d9918bf9ef4d12feedf66b2b26c637">Vamp::PluginBase</a>.</p> 531 <p>Implements <a class="el" href="classVamp_1_1PluginBase.html#a53d9918bf9ef4d12feedf66b2b26c637">Vamp::PluginBase</a>.</p>
531 532
532 </div> 533 </div>
533 </div> 534 </div>
534 <a class="anchor" id="a6fbd94781867ca46a20368c2a3593c77"></a><!-- doxytag: member="Vamp::PluginHostAdapter::getPluginVersion" ref="a6fbd94781867ca46a20368c2a3593c77" args="() const " --> 535 <a class="anchor" id="a6fbd94781867ca46a20368c2a3593c77"></a>
535 <div class="memitem"> 536 <div class="memitem">
536 <div class="memproto"> 537 <div class="memproto">
537 <table class="memname"> 538 <table class="memname">
538 <tr> 539 <tr>
539 <td class="memname">int Vamp::PluginHostAdapter::getPluginVersion </td> 540 <td class="memname">int <a class="el" href="classVamp_1_1PluginHostAdapter.html#a6fbd94781867ca46a20368c2a3593c77">Vamp::PluginHostAdapter::getPluginVersion</a> </td>
540 <td>(</td> 541 <td>(</td>
541 <td class="paramname"></td><td>)</td> 542 <td class="paramname"></td><td>)</td>
542 <td> const<code> [virtual]</code></td> 543 <td> const<code> [virtual]</code></td>
543 </tr> 544 </tr>
544 </table> 545 </table>
549 550
550 <p>Implements <a class="el" href="classVamp_1_1PluginBase.html#a63f686d77bc3d6b807e7944cdde83151">Vamp::PluginBase</a>.</p> 551 <p>Implements <a class="el" href="classVamp_1_1PluginBase.html#a63f686d77bc3d6b807e7944cdde83151">Vamp::PluginBase</a>.</p>
551 552
552 </div> 553 </div>
553 </div> 554 </div>
554 <a class="anchor" id="ac73c9d6baad04369beee695e99584815"></a><!-- doxytag: member="Vamp::PluginHostAdapter::getCopyright" ref="ac73c9d6baad04369beee695e99584815" args="() const " --> 555 <a class="anchor" id="ac73c9d6baad04369beee695e99584815"></a>
555 <div class="memitem"> 556 <div class="memitem">
556 <div class="memproto"> 557 <div class="memproto">
557 <table class="memname"> 558 <table class="memname">
558 <tr> 559 <tr>
559 <td class="memname">std::string Vamp::PluginHostAdapter::getCopyright </td> 560 <td class="memname">std::string <a class="el" href="classVamp_1_1PluginHostAdapter.html#ac73c9d6baad04369beee695e99584815">Vamp::PluginHostAdapter::getCopyright</a> </td>
560 <td>(</td> 561 <td>(</td>
561 <td class="paramname"></td><td>)</td> 562 <td class="paramname"></td><td>)</td>
562 <td> const<code> [virtual]</code></td> 563 <td> const<code> [virtual]</code></td>
563 </tr> 564 </tr>
564 </table> 565 </table>
570 571
571 <p>Implements <a class="el" href="classVamp_1_1PluginBase.html#ab7e9dedbe965f5ab9018b72920fe7661">Vamp::PluginBase</a>.</p> 572 <p>Implements <a class="el" href="classVamp_1_1PluginBase.html#ab7e9dedbe965f5ab9018b72920fe7661">Vamp::PluginBase</a>.</p>
572 573
573 </div> 574 </div>
574 </div> 575 </div>
575 <a class="anchor" id="a602faa0bfaae83e2ca53b36292271a76"></a><!-- doxytag: member="Vamp::PluginHostAdapter::getParameterDescriptors" ref="a602faa0bfaae83e2ca53b36292271a76" args="() const " --> 576 <a class="anchor" id="a602faa0bfaae83e2ca53b36292271a76"></a>
576 <div class="memitem"> 577 <div class="memitem">
577 <div class="memproto"> 578 <div class="memproto">
578 <table class="memname"> 579 <table class="memname">
579 <tr> 580 <tr>
580 <td class="memname"><a class="el" href="classVamp_1_1PluginBase.html#a3b6bb4bbd86affe1ca9deceea1aad4f8">ParameterList</a> Vamp::PluginHostAdapter::getParameterDescriptors </td> 581 <td class="memname"><a class="el" href="classVamp_1_1PluginBase.html#a3b6bb4bbd86affe1ca9deceea1aad4f8">ParameterList</a> <a class="el" href="classVamp_1_1PluginHostAdapter.html#a602faa0bfaae83e2ca53b36292271a76">Vamp::PluginHostAdapter::getParameterDescriptors</a> </td>
581 <td>(</td> 582 <td>(</td>
582 <td class="paramname"></td><td>)</td> 583 <td class="paramname"></td><td>)</td>
583 <td> const<code> [virtual]</code></td> 584 <td> const<code> [virtual]</code></td>
584 </tr> 585 </tr>
585 </table> 586 </table>
590 591
591 <p>Reimplemented from <a class="el" href="classVamp_1_1PluginBase.html#aac3e49b3b66cacfbb768dfdf07444f21">Vamp::PluginBase</a>.</p> 592 <p>Reimplemented from <a class="el" href="classVamp_1_1PluginBase.html#aac3e49b3b66cacfbb768dfdf07444f21">Vamp::PluginBase</a>.</p>
592 593
593 </div> 594 </div>
594 </div> 595 </div>
595 <a class="anchor" id="af0c46d4f67ca93be7c76f3ea2e6c8efb"></a><!-- doxytag: member="Vamp::PluginHostAdapter::getParameter" ref="af0c46d4f67ca93be7c76f3ea2e6c8efb" args="(std::string) const " --> 596 <a class="anchor" id="af0c46d4f67ca93be7c76f3ea2e6c8efb"></a>
596 <div class="memitem"> 597 <div class="memitem">
597 <div class="memproto"> 598 <div class="memproto">
598 <table class="memname"> 599 <table class="memname">
599 <tr> 600 <tr>
600 <td class="memname">float Vamp::PluginHostAdapter::getParameter </td> 601 <td class="memname">float <a class="el" href="classVamp_1_1PluginHostAdapter.html#af0c46d4f67ca93be7c76f3ea2e6c8efb">Vamp::PluginHostAdapter::getParameter</a> </td>
601 <td>(</td> 602 <td>(</td>
602 <td class="paramtype">std::string&#160;</td> 603 <td class="paramtype">std::string&#160;</td>
603 <td class="paramname"></td><td>)</td> 604 <td class="paramname"></td><td>)</td>
604 <td> const<code> [virtual]</code></td> 605 <td> const<code> [virtual]</code></td>
605 </tr> 606 </tr>
612 613
613 <p>Reimplemented from <a class="el" href="classVamp_1_1PluginBase.html#a97ababcd45348ceec998d0f8e0f38bf7">Vamp::PluginBase</a>.</p> 614 <p>Reimplemented from <a class="el" href="classVamp_1_1PluginBase.html#a97ababcd45348ceec998d0f8e0f38bf7">Vamp::PluginBase</a>.</p>
614 615
615 </div> 616 </div>
616 </div> 617 </div>
617 <a class="anchor" id="a29f75395aa75b9de0228aa11edf9c6d6"></a><!-- doxytag: member="Vamp::PluginHostAdapter::setParameter" ref="a29f75395aa75b9de0228aa11edf9c6d6" args="(std::string, float)" --> 618 <a class="anchor" id="a29f75395aa75b9de0228aa11edf9c6d6"></a>
618 <div class="memitem"> 619 <div class="memitem">
619 <div class="memproto"> 620 <div class="memproto">
620 <table class="memname"> 621 <table class="memname">
621 <tr> 622 <tr>
622 <td class="memname">void Vamp::PluginHostAdapter::setParameter </td> 623 <td class="memname">void <a class="el" href="classVamp_1_1PluginHostAdapter.html#a29f75395aa75b9de0228aa11edf9c6d6">Vamp::PluginHostAdapter::setParameter</a> </td>
623 <td>(</td> 624 <td>(</td>
624 <td class="paramtype">std::string&#160;</td> 625 <td class="paramtype">std::string&#160;</td>
625 <td class="paramname">, </td> 626 <td class="paramname">, </td>
626 </tr> 627 </tr>
627 <tr> 628 <tr>
644 645
645 <p>Reimplemented from <a class="el" href="classVamp_1_1PluginBase.html#a6c718ce822f7b73b98940d59dcaa9366">Vamp::PluginBase</a>.</p> 646 <p>Reimplemented from <a class="el" href="classVamp_1_1PluginBase.html#a6c718ce822f7b73b98940d59dcaa9366">Vamp::PluginBase</a>.</p>
646 647
647 </div> 648 </div>
648 </div> 649 </div>
649 <a class="anchor" id="ae0cde5cd625418c1bc470b91f75daafc"></a><!-- doxytag: member="Vamp::PluginHostAdapter::getPrograms" ref="ae0cde5cd625418c1bc470b91f75daafc" args="() const " --> 650 <a class="anchor" id="ae0cde5cd625418c1bc470b91f75daafc"></a>
650 <div class="memitem"> 651 <div class="memitem">
651 <div class="memproto"> 652 <div class="memproto">
652 <table class="memname"> 653 <table class="memname">
653 <tr> 654 <tr>
654 <td class="memname"><a class="el" href="classVamp_1_1PluginBase.html#a7f66f00437b21e5f694fe02356b12f20">ProgramList</a> Vamp::PluginHostAdapter::getPrograms </td> 655 <td class="memname"><a class="el" href="classVamp_1_1PluginBase.html#a7f66f00437b21e5f694fe02356b12f20">ProgramList</a> <a class="el" href="classVamp_1_1PluginHostAdapter.html#ae0cde5cd625418c1bc470b91f75daafc">Vamp::PluginHostAdapter::getPrograms</a> </td>
655 <td>(</td> 656 <td>(</td>
656 <td class="paramname"></td><td>)</td> 657 <td class="paramname"></td><td>)</td>
657 <td> const<code> [virtual]</code></td> 658 <td> const<code> [virtual]</code></td>
658 </tr> 659 </tr>
659 </table> 660 </table>
666 667
667 <p>Reimplemented from <a class="el" href="classVamp_1_1PluginBase.html#abb307c60bdb981d5f5af50c3c4ae84af">Vamp::PluginBase</a>.</p> 668 <p>Reimplemented from <a class="el" href="classVamp_1_1PluginBase.html#abb307c60bdb981d5f5af50c3c4ae84af">Vamp::PluginBase</a>.</p>
668 669
669 </div> 670 </div>
670 </div> 671 </div>
671 <a class="anchor" id="a34859eff8ca8d862af39be9636ec1867"></a><!-- doxytag: member="Vamp::PluginHostAdapter::getCurrentProgram" ref="a34859eff8ca8d862af39be9636ec1867" args="() const " --> 672 <a class="anchor" id="a34859eff8ca8d862af39be9636ec1867"></a>
672 <div class="memitem"> 673 <div class="memitem">
673 <div class="memproto"> 674 <div class="memproto">
674 <table class="memname"> 675 <table class="memname">
675 <tr> 676 <tr>
676 <td class="memname">std::string Vamp::PluginHostAdapter::getCurrentProgram </td> 677 <td class="memname">std::string <a class="el" href="classVamp_1_1PluginHostAdapter.html#a34859eff8ca8d862af39be9636ec1867">Vamp::PluginHostAdapter::getCurrentProgram</a> </td>
677 <td>(</td> 678 <td>(</td>
678 <td class="paramname"></td><td>)</td> 679 <td class="paramname"></td><td>)</td>
679 <td> const<code> [virtual]</code></td> 680 <td> const<code> [virtual]</code></td>
680 </tr> 681 </tr>
681 </table> 682 </table>
686 687
687 <p>Reimplemented from <a class="el" href="classVamp_1_1PluginBase.html#a24e77eccf1bdfbbca3c79bb25e8799b3">Vamp::PluginBase</a>.</p> 688 <p>Reimplemented from <a class="el" href="classVamp_1_1PluginBase.html#a24e77eccf1bdfbbca3c79bb25e8799b3">Vamp::PluginBase</a>.</p>
688 689
689 </div> 690 </div>
690 </div> 691 </div>
691 <a class="anchor" id="a8f5515ab34cc13d9403ccc6b4b788683"></a><!-- doxytag: member="Vamp::PluginHostAdapter::selectProgram" ref="a8f5515ab34cc13d9403ccc6b4b788683" args="(std::string)" --> 692 <a class="anchor" id="a8f5515ab34cc13d9403ccc6b4b788683"></a>
692 <div class="memitem"> 693 <div class="memitem">
693 <div class="memproto"> 694 <div class="memproto">
694 <table class="memname"> 695 <table class="memname">
695 <tr> 696 <tr>
696 <td class="memname">void Vamp::PluginHostAdapter::selectProgram </td> 697 <td class="memname">void <a class="el" href="classVamp_1_1PluginHostAdapter.html#a8f5515ab34cc13d9403ccc6b4b788683">Vamp::PluginHostAdapter::selectProgram</a> </td>
697 <td>(</td> 698 <td>(</td>
698 <td class="paramtype">std::string&#160;</td> 699 <td class="paramtype">std::string&#160;</td>
699 <td class="paramname"></td><td>)</td> 700 <td class="paramname"></td><td>)</td>
700 <td><code> [virtual]</code></td> 701 <td><code> [virtual]</code></td>
701 </tr> 702 </tr>
708 709
709 <p>Reimplemented from <a class="el" href="classVamp_1_1PluginBase.html#aadd3a547ef140bae200473a9518e3353">Vamp::PluginBase</a>.</p> 710 <p>Reimplemented from <a class="el" href="classVamp_1_1PluginBase.html#aadd3a547ef140bae200473a9518e3353">Vamp::PluginBase</a>.</p>
710 711
711 </div> 712 </div>
712 </div> 713 </div>
713 <a class="anchor" id="a859ad5d59402691daed3cf1af1899ebe"></a><!-- doxytag: member="Vamp::PluginHostAdapter::getPreferredStepSize" ref="a859ad5d59402691daed3cf1af1899ebe" args="() const " --> 714 <a class="anchor" id="a859ad5d59402691daed3cf1af1899ebe"></a>
714 <div class="memitem"> 715 <div class="memitem">
715 <div class="memproto"> 716 <div class="memproto">
716 <table class="memname"> 717 <table class="memname">
717 <tr> 718 <tr>
718 <td class="memname">size_t Vamp::PluginHostAdapter::getPreferredStepSize </td> 719 <td class="memname">size_t <a class="el" href="classVamp_1_1PluginHostAdapter.html#a859ad5d59402691daed3cf1af1899ebe">Vamp::PluginHostAdapter::getPreferredStepSize</a> </td>
719 <td>(</td> 720 <td>(</td>
720 <td class="paramname"></td><td>)</td> 721 <td class="paramname"></td><td>)</td>
721 <td> const<code> [virtual]</code></td> 722 <td> const<code> [virtual]</code></td>
722 </tr> 723 </tr>
723 </table> 724 </table>
730 731
731 <p>Reimplemented from <a class="el" href="classVamp_1_1Plugin.html#a514c716c22f81c055f19b56c3f882567">Vamp::Plugin</a>.</p> 732 <p>Reimplemented from <a class="el" href="classVamp_1_1Plugin.html#a514c716c22f81c055f19b56c3f882567">Vamp::Plugin</a>.</p>
732 733
733 </div> 734 </div>
734 </div> 735 </div>
735 <a class="anchor" id="ad5e0ea8042bdec4dd18428991117e07a"></a><!-- doxytag: member="Vamp::PluginHostAdapter::getPreferredBlockSize" ref="ad5e0ea8042bdec4dd18428991117e07a" args="() const " --> 736 <a class="anchor" id="ad5e0ea8042bdec4dd18428991117e07a"></a>
736 <div class="memitem"> 737 <div class="memitem">
737 <div class="memproto"> 738 <div class="memproto">
738 <table class="memname"> 739 <table class="memname">
739 <tr> 740 <tr>
740 <td class="memname">size_t Vamp::PluginHostAdapter::getPreferredBlockSize </td> 741 <td class="memname">size_t <a class="el" href="classVamp_1_1PluginHostAdapter.html#ad5e0ea8042bdec4dd18428991117e07a">Vamp::PluginHostAdapter::getPreferredBlockSize</a> </td>
741 <td>(</td> 742 <td>(</td>
742 <td class="paramname"></td><td>)</td> 743 <td class="paramname"></td><td>)</td>
743 <td> const<code> [virtual]</code></td> 744 <td> const<code> [virtual]</code></td>
744 </tr> 745 </tr>
745 </table> 746 </table>
752 753
753 <p>Reimplemented from <a class="el" href="classVamp_1_1Plugin.html#aa529adf83f87a603954eb31407602aac">Vamp::Plugin</a>.</p> 754 <p>Reimplemented from <a class="el" href="classVamp_1_1Plugin.html#aa529adf83f87a603954eb31407602aac">Vamp::Plugin</a>.</p>
754 755
755 </div> 756 </div>
756 </div> 757 </div>
757 <a class="anchor" id="a67d1198c0e58d3f0076d0eda599ff28d"></a><!-- doxytag: member="Vamp::PluginHostAdapter::getMinChannelCount" ref="a67d1198c0e58d3f0076d0eda599ff28d" args="() const " --> 758 <a class="anchor" id="a67d1198c0e58d3f0076d0eda599ff28d"></a>
758 <div class="memitem"> 759 <div class="memitem">
759 <div class="memproto"> 760 <div class="memproto">
760 <table class="memname"> 761 <table class="memname">
761 <tr> 762 <tr>
762 <td class="memname">size_t Vamp::PluginHostAdapter::getMinChannelCount </td> 763 <td class="memname">size_t <a class="el" href="classVamp_1_1PluginHostAdapter.html#a67d1198c0e58d3f0076d0eda599ff28d">Vamp::PluginHostAdapter::getMinChannelCount</a> </td>
763 <td>(</td> 764 <td>(</td>
764 <td class="paramname"></td><td>)</td> 765 <td class="paramname"></td><td>)</td>
765 <td> const<code> [virtual]</code></td> 766 <td> const<code> [virtual]</code></td>
766 </tr> 767 </tr>
767 </table> 768 </table>
772 773
773 <p>Reimplemented from <a class="el" href="classVamp_1_1Plugin.html#a267b42e866df3cf0d190893e8096f525">Vamp::Plugin</a>.</p> 774 <p>Reimplemented from <a class="el" href="classVamp_1_1Plugin.html#a267b42e866df3cf0d190893e8096f525">Vamp::Plugin</a>.</p>
774 775
775 </div> 776 </div>
776 </div> 777 </div>
777 <a class="anchor" id="a25091905e97e39d515d8ffc1a9f2b9e0"></a><!-- doxytag: member="Vamp::PluginHostAdapter::getMaxChannelCount" ref="a25091905e97e39d515d8ffc1a9f2b9e0" args="() const " --> 778 <a class="anchor" id="a25091905e97e39d515d8ffc1a9f2b9e0"></a>
778 <div class="memitem"> 779 <div class="memitem">
779 <div class="memproto"> 780 <div class="memproto">
780 <table class="memname"> 781 <table class="memname">
781 <tr> 782 <tr>
782 <td class="memname">size_t Vamp::PluginHostAdapter::getMaxChannelCount </td> 783 <td class="memname">size_t <a class="el" href="classVamp_1_1PluginHostAdapter.html#a25091905e97e39d515d8ffc1a9f2b9e0">Vamp::PluginHostAdapter::getMaxChannelCount</a> </td>
783 <td>(</td> 784 <td>(</td>
784 <td class="paramname"></td><td>)</td> 785 <td class="paramname"></td><td>)</td>
785 <td> const<code> [virtual]</code></td> 786 <td> const<code> [virtual]</code></td>
786 </tr> 787 </tr>
787 </table> 788 </table>
792 793
793 <p>Reimplemented from <a class="el" href="classVamp_1_1Plugin.html#a2c5ab12b6fa4847cb244bd1e9cb3ae5e">Vamp::Plugin</a>.</p> 794 <p>Reimplemented from <a class="el" href="classVamp_1_1Plugin.html#a2c5ab12b6fa4847cb244bd1e9cb3ae5e">Vamp::Plugin</a>.</p>
794 795
795 </div> 796 </div>
796 </div> 797 </div>
797 <a class="anchor" id="a9649a113da0252fe8bd9fc731b047ae0"></a><!-- doxytag: member="Vamp::PluginHostAdapter::getOutputDescriptors" ref="a9649a113da0252fe8bd9fc731b047ae0" args="() const " --> 798 <a class="anchor" id="a9649a113da0252fe8bd9fc731b047ae0"></a>
798 <div class="memitem"> 799 <div class="memitem">
799 <div class="memproto"> 800 <div class="memproto">
800 <table class="memname"> 801 <table class="memname">
801 <tr> 802 <tr>
802 <td class="memname"><a class="el" href="classVamp_1_1Plugin.html#a30f531b8fb69fac41a24e3d2a6a08ed9">OutputList</a> Vamp::PluginHostAdapter::getOutputDescriptors </td> 803 <td class="memname"><a class="el" href="classVamp_1_1Plugin.html#a30f531b8fb69fac41a24e3d2a6a08ed9">OutputList</a> <a class="el" href="classVamp_1_1PluginHostAdapter.html#a9649a113da0252fe8bd9fc731b047ae0">Vamp::PluginHostAdapter::getOutputDescriptors</a> </td>
803 <td>(</td> 804 <td>(</td>
804 <td class="paramname"></td><td>)</td> 805 <td class="paramname"></td><td>)</td>
805 <td> const<code> [virtual]</code></td> 806 <td> const<code> [virtual]</code></td>
806 </tr> 807 </tr>
807 </table> 808 </table>
813 814
814 <p>Implements <a class="el" href="classVamp_1_1Plugin.html#ad064d5d132b5c9bd7064f429c3309e35">Vamp::Plugin</a>.</p> 815 <p>Implements <a class="el" href="classVamp_1_1Plugin.html#ad064d5d132b5c9bd7064f429c3309e35">Vamp::Plugin</a>.</p>
815 816
816 </div> 817 </div>
817 </div> 818 </div>
818 <a class="anchor" id="a38fe1080b343ba10e5d8a4b30c87cbdd"></a><!-- doxytag: member="Vamp::PluginHostAdapter::process" ref="a38fe1080b343ba10e5d8a4b30c87cbdd" args="(const float *const *inputBuffers, RealTime timestamp)" --> 819 <a class="anchor" id="a38fe1080b343ba10e5d8a4b30c87cbdd"></a>
819 <div class="memitem"> 820 <div class="memitem">
820 <div class="memproto"> 821 <div class="memproto">
821 <table class="memname"> 822 <table class="memname">
822 <tr> 823 <tr>
823 <td class="memname"><a class="el" href="classVamp_1_1Plugin.html#a448fb57dc245d47923ec9eeaf9856c5f">FeatureSet</a> Vamp::PluginHostAdapter::process </td> 824 <td class="memname"><a class="el" href="classVamp_1_1Plugin.html#a448fb57dc245d47923ec9eeaf9856c5f">FeatureSet</a> <a class="el" href="classVamp_1_1PluginHostAdapter.html#a38fe1080b343ba10e5d8a4b30c87cbdd">Vamp::PluginHostAdapter::process</a> </td>
824 <td>(</td> 825 <td>(</td>
825 <td class="paramtype">const float *const *&#160;</td> 826 <td class="paramtype">const float *const *&#160;</td>
826 <td class="paramname"><em>inputBuffers</em>, </td> 827 <td class="paramname"><em>inputBuffers</em>, </td>
827 </tr> 828 </tr>
828 <tr> 829 <tr>
840 </div> 841 </div>
841 <div class="memdoc"> 842 <div class="memdoc">
842 843
843 <p>Process a single block of input data. </p> 844 <p>Process a single block of input data. </p>
844 <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> 845 <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>
845 <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> 846 <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 <a class="el" href="classVamp_1_1FFT.html" title="A simple FFT implementation provided for convenience of plugin authors.">FFT</a> 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 <a class="el" href="classVamp_1_1FFT.html" title="A simple FFT implementation provided for convenience of plugin authors.">FFT</a> input window (i.e. the very first block passed to process might contain the <a class="el" href="classVamp_1_1FFT.html" title="A simple FFT implementation provided for convenience of plugin authors.">FFT</a> of half a block of zero samples and the first half-block of the actual data, with a timestamp of zero).</p>
846 <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> 847 <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>
847 848
848 <p>Implements <a class="el" href="classVamp_1_1Plugin.html#ae4aed3bebfe80a2e2fccd3d37af26996">Vamp::Plugin</a>.</p> 849 <p>Implements <a class="el" href="classVamp_1_1Plugin.html#ae4aed3bebfe80a2e2fccd3d37af26996">Vamp::Plugin</a>.</p>
849 850
850 </div> 851 </div>
851 </div> 852 </div>
852 <a class="anchor" id="a984a4c11f3fbdcfd90e4837b1619a5ab"></a><!-- doxytag: member="Vamp::PluginHostAdapter::getRemainingFeatures" ref="a984a4c11f3fbdcfd90e4837b1619a5ab" args="()" --> 853 <a class="anchor" id="a984a4c11f3fbdcfd90e4837b1619a5ab"></a>
853 <div class="memitem"> 854 <div class="memitem">
854 <div class="memproto"> 855 <div class="memproto">
855 <table class="memname"> 856 <table class="memname">
856 <tr> 857 <tr>
857 <td class="memname"><a class="el" href="classVamp_1_1Plugin.html#a448fb57dc245d47923ec9eeaf9856c5f">FeatureSet</a> Vamp::PluginHostAdapter::getRemainingFeatures </td> 858 <td class="memname"><a class="el" href="classVamp_1_1Plugin.html#a448fb57dc245d47923ec9eeaf9856c5f">FeatureSet</a> <a class="el" href="classVamp_1_1PluginHostAdapter.html#a984a4c11f3fbdcfd90e4837b1619a5ab">Vamp::PluginHostAdapter::getRemainingFeatures</a> </td>
858 <td>(</td> 859 <td>(</td>
859 <td class="paramname"></td><td>)</td> 860 <td class="paramname"></td><td>)</td>
860 <td><code> [virtual]</code></td> 861 <td><code> [virtual]</code></td>
861 </tr> 862 </tr>
862 </table> 863 </table>
867 868
868 <p>Implements <a class="el" href="classVamp_1_1Plugin.html#aeca2a26e658ba0314ba90d25dd2195d6">Vamp::Plugin</a>.</p> 869 <p>Implements <a class="el" href="classVamp_1_1Plugin.html#aeca2a26e658ba0314ba90d25dd2195d6">Vamp::Plugin</a>.</p>
869 870
870 </div> 871 </div>
871 </div> 872 </div>
872 <a class="anchor" id="aee417a4c9ba9dbb63777c963d5f9452a"></a><!-- doxytag: member="Vamp::PluginHostAdapter::convertFeatures" ref="aee417a4c9ba9dbb63777c963d5f9452a" args="(VampFeatureList *, FeatureSet &amp;)" --> 873 <a class="anchor" id="aee417a4c9ba9dbb63777c963d5f9452a"></a>
873 <div class="memitem"> 874 <div class="memitem">
874 <div class="memproto"> 875 <div class="memproto">
875 <table class="memname"> 876 <table class="memname">
876 <tr> 877 <tr>
877 <td class="memname">void Vamp::PluginHostAdapter::convertFeatures </td> 878 <td class="memname">void <a class="el" href="classVamp_1_1PluginHostAdapter.html#aee417a4c9ba9dbb63777c963d5f9452a">Vamp::PluginHostAdapter::convertFeatures</a> </td>
878 <td>(</td> 879 <td>(</td>
879 <td class="paramtype"><a class="el" href="vamp_8h.html#a5f257e3f8b5ca1ca4c159d486e219078">VampFeatureList</a> *&#160;</td> 880 <td class="paramtype"><a class="el" href="vamp_8h.html#a5f257e3f8b5ca1ca4c159d486e219078">VampFeatureList</a> *&#160;</td>
880 <td class="paramname">, </td> 881 <td class="paramname">, </td>
881 </tr> 882 </tr>
882 <tr> 883 <tr>
894 </div> 895 </div>
895 <div class="memdoc"> 896 <div class="memdoc">
896 897
897 </div> 898 </div>
898 </div> 899 </div>
899 <a class="anchor" id="abe13b3997a69fbcc09e2213faa352f91"></a><!-- doxytag: member="Vamp::PluginHostAdapter::getType" ref="abe13b3997a69fbcc09e2213faa352f91" args="() const " --> 900 <a class="anchor" id="abe13b3997a69fbcc09e2213faa352f91"></a>
900 <div class="memitem"> 901 <div class="memitem">
901 <div class="memproto"> 902 <div class="memproto">
902 <table class="memname"> 903 <table class="memname">
903 <tr> 904 <tr>
904 <td class="memname">virtual std::string Vamp::Plugin::getType </td> 905 <td class="memname">virtual std::string <a class="el" href="classVamp_1_1Plugin.html#abe13b3997a69fbcc09e2213faa352f91">Vamp::Plugin::getType</a> </td>
905 <td>(</td> 906 <td>(</td>
906 <td class="paramname"></td><td>)</td> 907 <td class="paramname"></td><td>)</td>
907 <td> const<code> [inline, virtual, inherited]</code></td> 908 <td> const<code> [inline, virtual, inherited]</code></td>
908 </tr> 909 </tr>
909 </table> 910 </table>
918 <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> 919 <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>
919 920
920 </div> 921 </div>
921 </div> 922 </div>
922 <hr/><h2>Member Data Documentation</h2> 923 <hr/><h2>Member Data Documentation</h2>
923 <a class="anchor" id="a0c9f252aca8ac298e30cadd0de032ec2"></a><!-- doxytag: member="Vamp::PluginHostAdapter::m_descriptor" ref="a0c9f252aca8ac298e30cadd0de032ec2" args="" --> 924 <a class="anchor" id="a0c9f252aca8ac298e30cadd0de032ec2"></a>
924 <div class="memitem"> 925 <div class="memitem">
925 <div class="memproto"> 926 <div class="memproto">
926 <table class="memname"> 927 <table class="memname">
927 <tr> 928 <tr>
928 <td class="memname">const <a class="el" href="vamp_8h.html#aa1d6e0792099b9516a89b5fb7ed2ad2b">VampPluginDescriptor</a>* <a class="el" href="classVamp_1_1PluginHostAdapter.html#a0c9f252aca8ac298e30cadd0de032ec2">Vamp::PluginHostAdapter::m_descriptor</a><code> [protected]</code></td> 929 <td class="memname">const <a class="el" href="vamp_8h.html#aa1d6e0792099b9516a89b5fb7ed2ad2b">VampPluginDescriptor</a>* <a class="el" href="classVamp_1_1PluginHostAdapter.html#a0c9f252aca8ac298e30cadd0de032ec2">Vamp::PluginHostAdapter::m_descriptor</a><code> [protected]</code></td>
933 934
934 <p>Definition at line <a class="el" href="PluginHostAdapter_8h_source.html#l00113">113</a> of file <a class="el" href="PluginHostAdapter_8h_source.html">PluginHostAdapter.h</a>.</p> 935 <p>Definition at line <a class="el" href="PluginHostAdapter_8h_source.html#l00113">113</a> of file <a class="el" href="PluginHostAdapter_8h_source.html">PluginHostAdapter.h</a>.</p>
935 936
936 </div> 937 </div>
937 </div> 938 </div>
938 <a class="anchor" id="a02ebd03b226b4a467cad747ce77e79ee"></a><!-- doxytag: member="Vamp::PluginHostAdapter::m_handle" ref="a02ebd03b226b4a467cad747ce77e79ee" args="" --> 939 <a class="anchor" id="a02ebd03b226b4a467cad747ce77e79ee"></a>
939 <div class="memitem"> 940 <div class="memitem">
940 <div class="memproto"> 941 <div class="memproto">
941 <table class="memname"> 942 <table class="memname">
942 <tr> 943 <tr>
943 <td class="memname"><a class="el" href="vamp_8h.html#ad3be2952b1f4ad7d775940a6db75c79b">VampPluginHandle</a> <a class="el" href="classVamp_1_1PluginHostAdapter.html#a02ebd03b226b4a467cad747ce77e79ee">Vamp::PluginHostAdapter::m_handle</a><code> [protected]</code></td> 944 <td class="memname"><a class="el" href="vamp_8h.html#ad3be2952b1f4ad7d775940a6db75c79b">VampPluginHandle</a> <a class="el" href="classVamp_1_1PluginHostAdapter.html#a02ebd03b226b4a467cad747ce77e79ee">Vamp::PluginHostAdapter::m_handle</a><code> [protected]</code></td>
948 949
949 <p>Definition at line <a class="el" href="PluginHostAdapter_8h_source.html#l00114">114</a> of file <a class="el" href="PluginHostAdapter_8h_source.html">PluginHostAdapter.h</a>.</p> 950 <p>Definition at line <a class="el" href="PluginHostAdapter_8h_source.html#l00114">114</a> of file <a class="el" href="PluginHostAdapter_8h_source.html">PluginHostAdapter.h</a>.</p>
950 951
951 </div> 952 </div>
952 </div> 953 </div>
953 <a class="anchor" id="a59b9dd82a4f4eb946cd0474cc81abc23"></a><!-- doxytag: member="Vamp::PluginHostAdapter::m_inputSampleRate" ref="a59b9dd82a4f4eb946cd0474cc81abc23" args="" --> 954 <a class="anchor" id="a59b9dd82a4f4eb946cd0474cc81abc23"></a>
954 <div class="memitem"> 955 <div class="memitem">
955 <div class="memproto"> 956 <div class="memproto">
956 <table class="memname"> 957 <table class="memname">
957 <tr> 958 <tr>
958 <td class="memname">float <a class="el" href="classVamp_1_1Plugin.html#a59b9dd82a4f4eb946cd0474cc81abc23">Vamp::Plugin::m_inputSampleRate</a><code> [protected, inherited]</code></td> 959 <td class="memname">float <a class="el" href="classVamp_1_1Plugin.html#a59b9dd82a4f4eb946cd0474cc81abc23">Vamp::Plugin::m_inputSampleRate</a><code> [protected, inherited]</code></td>
968 </div> 969 </div>
969 </div> 970 </div>
970 <hr/>The documentation for this class was generated from the following file:<ul> 971 <hr/>The documentation for this class was generated from the following file:<ul>
971 <li><a class="el" href="PluginHostAdapter_8h_source.html">PluginHostAdapter.h</a></li> 972 <li><a class="el" href="PluginHostAdapter_8h_source.html">PluginHostAdapter.h</a></li>
972 </ul> 973 </ul>
973 </div> 974 </div><!-- contents -->
974 </div> 975 </div>
975 <div id="nav-path" class="navpath"> 976 <div id="nav-path" class="navpath">
976 <ul> 977 <ul>
977 <li class="navelem"><a class="el" href="namespaceVamp.html">Vamp</a> </li> 978 <li class="navelem"><a class="el" href="namespaceVamp.html">Vamp</a> </li>
978 <li class="navelem"><a class="el" href="classVamp_1_1PluginHostAdapter.html">PluginHostAdapter</a> </li> 979 <li class="navelem"><a class="el" href="classVamp_1_1PluginHostAdapter.html">PluginHostAdapter</a> </li>
979 980
980 <li class="footer">Generated on Tue Oct 4 2011 14:38:52 for VampPluginSDK by 981 <li class="footer">Generated on Fri Jul 13 2012 13:28:49 for VampPluginSDK by
981 <a href="http://www.doxygen.org/index.html"> 982 <a href="http://www.doxygen.org/index.html">
982 <img class="footer" src="doxygen.png" alt="doxygen"/></a> 1.7.5.1 </li> 983 <img class="footer" src="doxygen.png" alt="doxygen"/></a> 1.8.0 </li>
983 </ul> 984 </ul>
984 </div> 985 </div>
985 986
986 987
987 </body> 988 </body>