comparison code-docs/classVamp_1_1HostExt_1_1PluginChannelAdapter.html @ 6:27319718b1f8 vamp-plugin-sdk-v2.7

Update code docs to v2.7 SDK
author Chris Cannam
date Fri, 24 Feb 2017 16:44:47 +0000
parents 5c2683745b33
children
comparison
equal deleted inserted replaced
5:5c95f546f0b4 6:27319718b1f8
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 <meta http-equiv="X-UA-Compatible" content="IE=9"/>
6 <meta name="generator" content="Doxygen 1.8.13"/>
7 <meta name="viewport" content="width=device-width, initial-scale=1"/>
6 <title>VampPluginSDK: Vamp::HostExt::PluginChannelAdapter Class Reference</title> 8 <title>VampPluginSDK: Vamp::HostExt::PluginChannelAdapter Class Reference</title>
7
8 <link href="tabs.css" rel="stylesheet" type="text/css"/> 9 <link href="tabs.css" rel="stylesheet" type="text/css"/>
9 <link href="doxygen.css" rel="stylesheet" type="text/css" /> 10 <script type="text/javascript" src="jquery.js"></script>
11 <script type="text/javascript" src="dynsections.js"></script>
10 <link href="navtree.css" rel="stylesheet" type="text/css"/> 12 <link href="navtree.css" rel="stylesheet" type="text/css"/>
11 <script type="text/javascript" src="jquery.js"></script>
12 <script type="text/javascript" src="resize.js"></script> 13 <script type="text/javascript" src="resize.js"></script>
14 <script type="text/javascript" src="navtreedata.js"></script>
13 <script type="text/javascript" src="navtree.js"></script> 15 <script type="text/javascript" src="navtree.js"></script>
14 <script type="text/javascript"> 16 <script type="text/javascript">
15 $(document).ready(initResizable); 17 $(document).ready(initResizable);
16 </script> 18 </script>
17 19 <link href="doxygen.css" rel="stylesheet" type="text/css" />
18
19 </head> 20 </head>
20 <body> 21 <body>
21 <div id="top"><!-- do not remove this div! --> 22 <div id="top"><!-- do not remove this div, it is closed by doxygen! -->
22
23
24 <div id="titlearea"> 23 <div id="titlearea">
25 <table cellspacing="0" cellpadding="0"> 24 <table cellspacing="0" cellpadding="0">
26 <tbody> 25 <tbody>
27 <tr style="height: 56px;"> 26 <tr style="height: 56px;">
28 27 <td id="projectalign" style="padding-left: 0.5em;">
29
30 <td style="padding-left: 0.5em;">
31 <div id="projectname">VampPluginSDK 28 <div id="projectname">VampPluginSDK
32 &#160;<span id="projectnumber">2.4</span> 29 &#160;<span id="projectnumber">2.7</span>
33 </div> 30 </div>
34 31 </td>
35 </td>
36
37
38
39 </tr> 32 </tr>
40 </tbody> 33 </tbody>
41 </table> 34 </table>
42 </div> 35 </div>
43 36 <!-- end header part -->
44 <!-- Generated by Doxygen 1.8.0 --> 37 <!-- Generated by Doxygen 1.8.13 -->
45 <div id="navrow1" class="tabs"> 38 <script type="text/javascript" src="menudata.js"></script>
46 <ul class="tablist"> 39 <script type="text/javascript" src="menu.js"></script>
47 <li><a href="index.html"><span>Main&#160;Page</span></a></li> 40 <script type="text/javascript">
48 <li><a href="namespaces.html"><span>Namespaces</span></a></li> 41 $(function() {
49 <li class="current"><a href="annotated.html"><span>Classes</span></a></li> 42 initMenu('',false,false,'search.php','Search');
50 <li><a href="files.html"><span>Files</span></a></li> 43 });
51 <li><a href="dirs.html"><span>Directories</span></a></li> 44 </script>
52 </ul> 45 <div id="main-nav"></div>
53 </div> 46 </div><!-- top -->
54 <div id="navrow2" class="tabs2">
55 <ul class="tablist">
56 <li><a href="annotated.html"><span>Class&#160;List</span></a></li>
57 <li><a href="inherits.html"><span>Class&#160;Hierarchy</span></a></li>
58 <li><a href="functions.html"><span>Class&#160;Members</span></a></li>
59 </ul>
60 </div>
61 </div>
62 <div id="side-nav" class="ui-resizable side-nav-resizable"> 47 <div id="side-nav" class="ui-resizable side-nav-resizable">
63 <div id="nav-tree"> 48 <div id="nav-tree">
64 <div id="nav-tree-contents"> 49 <div id="nav-tree-contents">
50 <div id="nav-sync" class="sync"></div>
65 </div> 51 </div>
66 </div> 52 </div>
67 <div id="splitbar" style="-moz-user-select:none;" 53 <div id="splitbar" style="-moz-user-select:none;"
68 class="ui-resizable-handle"> 54 class="ui-resizable-handle">
69 </div> 55 </div>
70 </div> 56 </div>
71 <script type="text/javascript"> 57 <script type="text/javascript">
72 initNavTree('classVamp_1_1HostExt_1_1PluginChannelAdapter.html',''); 58 $(document).ready(function(){initNavTree('classVamp_1_1HostExt_1_1PluginChannelAdapter.html','');});
73 </script> 59 </script>
74 <div id="doc-content"> 60 <div id="doc-content">
75 <div class="header"> 61 <div class="header">
76 <div class="summary"> 62 <div class="summary">
77 <a href="#pub-types">Public Types</a> &#124; 63 <a href="#pub-types">Public Types</a> &#124;
78 <a href="#pub-methods">Public Member Functions</a> &#124; 64 <a href="#pub-methods">Public Member Functions</a> &#124;
79 <a href="#pro-attribs">Protected Attributes</a> </div> 65 <a href="#pro-attribs">Protected Attributes</a> &#124;
66 <a href="classVamp_1_1HostExt_1_1PluginChannelAdapter-members.html">List of all members</a> </div>
80 <div class="headertitle"> 67 <div class="headertitle">
81 <div class="title">Vamp::HostExt::PluginChannelAdapter Class Reference</div> </div> 68 <div class="title">Vamp::HostExt::PluginChannelAdapter Class Reference</div> </div>
82 </div><!--header--> 69 </div><!--header-->
83 <div class="contents"> 70 <div class="contents">
84 71
89 <div class="dynheader"> 76 <div class="dynheader">
90 Inheritance diagram for Vamp::HostExt::PluginChannelAdapter:</div> 77 Inheritance diagram for Vamp::HostExt::PluginChannelAdapter:</div>
91 <div class="dyncontent"> 78 <div class="dyncontent">
92 <div class="center"><img src="classVamp_1_1HostExt_1_1PluginChannelAdapter__inherit__graph.png" border="0" usemap="#Vamp_1_1HostExt_1_1PluginChannelAdapter_inherit__map" alt="Inheritance graph"/></div> 79 <div class="center"><img src="classVamp_1_1HostExt_1_1PluginChannelAdapter__inherit__graph.png" border="0" usemap="#Vamp_1_1HostExt_1_1PluginChannelAdapter_inherit__map" alt="Inheritance graph"/></div>
93 <map name="Vamp_1_1HostExt_1_1PluginChannelAdapter_inherit__map" id="Vamp_1_1HostExt_1_1PluginChannelAdapter_inherit__map"> 80 <map name="Vamp_1_1HostExt_1_1PluginChannelAdapter_inherit__map" id="Vamp_1_1HostExt_1_1PluginChannelAdapter_inherit__map">
94 <area shape="rect" id="node2" href="classVamp_1_1HostExt_1_1PluginWrapper.html" title="PluginWrapper is a simple base class for adapter plugins." alt="" coords="27,155,211,181"/><area shape="rect" id="node4" href="classVamp_1_1Plugin.html" title="Vamp::Plugin is a base class for plugin instance classes that provide feature extraction from audio o..." alt="" coords="73,81,164,106"/><area shape="rect" id="node6" href="classVamp_1_1PluginBase.html" title="A base class for plugins with optional configurable parameters, programs, etc." alt="" coords="59,6,177,31"/></map> 81 <area shape="rect" id="node2" href="classVamp_1_1HostExt_1_1PluginWrapper.html" title="PluginWrapper is a simple base class for adapter plugins. " alt="" coords="5,152,196,177"/>
82 <area shape="rect" id="node3" href="classVamp_1_1Plugin.html" title="Vamp::Plugin is a base class for plugin instance classes that provide feature extraction from audio o..." alt="" coords="53,79,148,104"/>
83 <area shape="rect" id="node4" href="classVamp_1_1PluginBase.html" title="A base class for plugins with optional configurable parameters, programs, etc. " alt="" coords="39,5,162,31"/>
84 </map>
95 <center><span class="legend">[<a target="top" href="graph_legend.html">legend</a>]</span></center></div> 85 <center><span class="legend">[<a target="top" href="graph_legend.html">legend</a>]</span></center></div>
96
97 <p><a href="classVamp_1_1HostExt_1_1PluginChannelAdapter-members.html">List of all members.</a></p>
98 <table class="memberdecls"> 86 <table class="memberdecls">
99 <tr><td colspan="2"><h2><a name="pub-types"></a> 87 <tr class="heading"><td colspan="2"><h2 class="groupheader"><a name="pub-types"></a>
100 Public Types</h2></td></tr> 88 Public Types</h2></td></tr>
101 <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>, 89 <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>,
102 <a class="el" href="classVamp_1_1Plugin.html#a39cb7649d6dcc20e4cb1640cd55907bcaa30e7877ab33f76acbdca28607e6ab53">FrequencyDomain</a> 90 <a class="el" href="classVamp_1_1Plugin.html#a39cb7649d6dcc20e4cb1640cd55907bcaa30e7877ab33f76acbdca28607e6ab53">FrequencyDomain</a>
103 }</td></tr> 91 }</td></tr>
104 <tr class="memitem:a30f531b8fb69fac41a24e3d2a6a08ed9"><td class="memItemLeft" align="right" valign="top">typedef std::vector<br class="typebreak"/> 92 <tr class="separator:a39cb7649d6dcc20e4cb1640cd55907bc"><td class="memSeparator" colspan="2">&#160;</td></tr>
105 &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> 93 <tr class="memitem:a30f531b8fb69fac41a24e3d2a6a08ed9"><td class="memItemLeft" align="right" valign="top">typedef std::vector&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>
94 <tr class="separator:a30f531b8fb69fac41a24e3d2a6a08ed9"><td class="memSeparator" colspan="2">&#160;</td></tr>
106 <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> 95 <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>
107 <tr class="memitem:a448fb57dc245d47923ec9eeaf9856c5f"><td class="memItemLeft" align="right" valign="top">typedef std::map&lt; int, <br class="typebreak"/> 96 <tr class="separator:a0730bc72c87fa02eb8d2854b233f7be1"><td class="memSeparator" colspan="2">&#160;</td></tr>
108 <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> 97 <tr class="memitem:a448fb57dc245d47923ec9eeaf9856c5f"><td class="memItemLeft" align="right" valign="top">typedef std::map&lt; int, <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>
109 <tr class="memitem:a3b6bb4bbd86affe1ca9deceea1aad4f8"><td class="memItemLeft" align="right" valign="top">typedef std::vector<br class="typebreak"/> 98 <tr class="separator:a448fb57dc245d47923ec9eeaf9856c5f"><td class="memSeparator" colspan="2">&#160;</td></tr>
110 &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> 99 <tr class="memitem:a3b6bb4bbd86affe1ca9deceea1aad4f8"><td class="memItemLeft" align="right" valign="top">typedef std::vector&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>
100 <tr class="separator:a3b6bb4bbd86affe1ca9deceea1aad4f8"><td class="memSeparator" colspan="2">&#160;</td></tr>
111 <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> 101 <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>
112 <tr><td colspan="2"><h2><a name="pub-methods"></a> 102 <tr class="separator:a7f66f00437b21e5f694fe02356b12f20"><td class="memSeparator" colspan="2">&#160;</td></tr>
103 </table><table class="memberdecls">
104 <tr class="heading"><td colspan="2"><h2 class="groupheader"><a name="pub-methods"></a>
113 Public Member Functions</h2></td></tr> 105 Public Member Functions</h2></td></tr>
114 <tr class="memitem:a2cda2b672708264f9a33c43bad3acdd8"><td class="memItemLeft" align="right" valign="top">&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="classVamp_1_1HostExt_1_1PluginChannelAdapter.html#a2cda2b672708264f9a33c43bad3acdd8">PluginChannelAdapter</a> (<a class="el" href="classVamp_1_1Plugin.html">Plugin</a> *plugin)</td></tr> 106 <tr class="memitem:a2cda2b672708264f9a33c43bad3acdd8"><td class="memItemLeft" align="right" valign="top">&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="classVamp_1_1HostExt_1_1PluginChannelAdapter.html#a2cda2b672708264f9a33c43bad3acdd8">PluginChannelAdapter</a> (<a class="el" href="classVamp_1_1Plugin.html">Plugin</a> *plugin)</td></tr>
115 <tr class="memdesc:a2cda2b672708264f9a33c43bad3acdd8"><td class="mdescLeft">&#160;</td><td class="mdescRight">Construct a <a class="el" href="classVamp_1_1HostExt_1_1PluginChannelAdapter.html" title="PluginChannelAdapter is a Vamp plugin adapter that implements a policy for management of plugins that...">PluginChannelAdapter</a> wrapping the given plugin. <a href="#a2cda2b672708264f9a33c43bad3acdd8"></a><br/></td></tr> 107 <tr class="memdesc:a2cda2b672708264f9a33c43bad3acdd8"><td class="mdescLeft">&#160;</td><td class="mdescRight">Construct a <a class="el" href="classVamp_1_1HostExt_1_1PluginChannelAdapter.html" title="PluginChannelAdapter is a Vamp plugin adapter that implements a policy for management of plugins that...">PluginChannelAdapter</a> wrapping the given plugin. <a href="#a2cda2b672708264f9a33c43bad3acdd8">More...</a><br /></td></tr>
108 <tr class="separator:a2cda2b672708264f9a33c43bad3acdd8"><td class="memSeparator" colspan="2">&#160;</td></tr>
116 <tr class="memitem:acb9a20fefd130e323b1eb2ced43e521c"><td class="memItemLeft" align="right" valign="top">virtual&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="classVamp_1_1HostExt_1_1PluginChannelAdapter.html#acb9a20fefd130e323b1eb2ced43e521c">~PluginChannelAdapter</a> ()</td></tr> 109 <tr class="memitem:acb9a20fefd130e323b1eb2ced43e521c"><td class="memItemLeft" align="right" valign="top">virtual&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="classVamp_1_1HostExt_1_1PluginChannelAdapter.html#acb9a20fefd130e323b1eb2ced43e521c">~PluginChannelAdapter</a> ()</td></tr>
110 <tr class="separator:acb9a20fefd130e323b1eb2ced43e521c"><td class="memSeparator" colspan="2">&#160;</td></tr>
117 <tr class="memitem:ade0473c8fc54636431967cbf41649c1c"><td class="memItemLeft" align="right" valign="top">bool&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="classVamp_1_1HostExt_1_1PluginChannelAdapter.html#ade0473c8fc54636431967cbf41649c1c">initialise</a> (size_t channels, size_t stepSize, size_t blockSize)</td></tr> 111 <tr class="memitem:ade0473c8fc54636431967cbf41649c1c"><td class="memItemLeft" align="right" valign="top">bool&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="classVamp_1_1HostExt_1_1PluginChannelAdapter.html#ade0473c8fc54636431967cbf41649c1c">initialise</a> (size_t channels, size_t stepSize, size_t blockSize)</td></tr>
118 <tr class="memdesc:ade0473c8fc54636431967cbf41649c1c"><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="#ade0473c8fc54636431967cbf41649c1c"></a><br/></td></tr> 112 <tr class="memdesc:ade0473c8fc54636431967cbf41649c1c"><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="#ade0473c8fc54636431967cbf41649c1c">More...</a><br /></td></tr>
113 <tr class="separator:ade0473c8fc54636431967cbf41649c1c"><td class="memSeparator" colspan="2">&#160;</td></tr>
119 <tr class="memitem:a6ff37bf754ff8711dbcb2f020fa3902c"><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_1HostExt_1_1PluginChannelAdapter.html#a6ff37bf754ff8711dbcb2f020fa3902c">process</a> (const float *const *inputBuffers, <a class="el" href="structVamp_1_1RealTime.html">RealTime</a> timestamp)</td></tr> 114 <tr class="memitem:a6ff37bf754ff8711dbcb2f020fa3902c"><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_1HostExt_1_1PluginChannelAdapter.html#a6ff37bf754ff8711dbcb2f020fa3902c">process</a> (const float *const *inputBuffers, <a class="el" href="structVamp_1_1RealTime.html">RealTime</a> timestamp)</td></tr>
120 <tr class="memdesc:a6ff37bf754ff8711dbcb2f020fa3902c"><td class="mdescLeft">&#160;</td><td class="mdescRight">Process a single block of input data. <a href="#a6ff37bf754ff8711dbcb2f020fa3902c"></a><br/></td></tr> 115 <tr class="memdesc:a6ff37bf754ff8711dbcb2f020fa3902c"><td class="mdescLeft">&#160;</td><td class="mdescRight">Process a single block of input data. <a href="#a6ff37bf754ff8711dbcb2f020fa3902c">More...</a><br /></td></tr>
116 <tr class="separator:a6ff37bf754ff8711dbcb2f020fa3902c"><td class="memSeparator" colspan="2">&#160;</td></tr>
121 <tr class="memitem:a5c94c3eb1dbc8899fe58527bbb7bb61f"><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_1HostExt_1_1PluginChannelAdapter.html#a5c94c3eb1dbc8899fe58527bbb7bb61f">processInterleaved</a> (const float *inputBuffer, <a class="el" href="structVamp_1_1RealTime.html">RealTime</a> timestamp)</td></tr> 117 <tr class="memitem:a5c94c3eb1dbc8899fe58527bbb7bb61f"><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_1HostExt_1_1PluginChannelAdapter.html#a5c94c3eb1dbc8899fe58527bbb7bb61f">processInterleaved</a> (const float *inputBuffer, <a class="el" href="structVamp_1_1RealTime.html">RealTime</a> timestamp)</td></tr>
122 <tr class="memdesc:a5c94c3eb1dbc8899fe58527bbb7bb61f"><td class="mdescLeft">&#160;</td><td class="mdescRight">Call <a class="el" href="classVamp_1_1HostExt_1_1PluginChannelAdapter.html#a6ff37bf754ff8711dbcb2f020fa3902c" title="Process a single block of input data.">process()</a>, providing interleaved audio data with the number of channels passed to <a class="el" href="classVamp_1_1HostExt_1_1PluginChannelAdapter.html#ade0473c8fc54636431967cbf41649c1c" title="Initialise a plugin to prepare it for use with the given number of input channels, step size (window increment, in sample frames) and block size (window size, in sample frames).">initialise()</a>. <a href="#a5c94c3eb1dbc8899fe58527bbb7bb61f"></a><br/></td></tr> 118 <tr class="memdesc:a5c94c3eb1dbc8899fe58527bbb7bb61f"><td class="mdescLeft">&#160;</td><td class="mdescRight">Call <a class="el" href="classVamp_1_1HostExt_1_1PluginChannelAdapter.html#a6ff37bf754ff8711dbcb2f020fa3902c" title="Process a single block of input data. ">process()</a>, providing interleaved audio data with the number of channels passed to <a class="el" href="classVamp_1_1HostExt_1_1PluginChannelAdapter.html#ade0473c8fc54636431967cbf41649c1c" title="Initialise a plugin to prepare it for use with the given number of input channels, step size (window increment, in sample frames) and block size (window size, in sample frames). ">initialise()</a>. <a href="#a5c94c3eb1dbc8899fe58527bbb7bb61f">More...</a><br /></td></tr>
119 <tr class="separator:a5c94c3eb1dbc8899fe58527bbb7bb61f"><td class="memSeparator" colspan="2">&#160;</td></tr>
123 <tr class="memitem:ad19cc0614ba41cdc26ef3394c5146fe6"><td class="memItemLeft" align="right" valign="top">void&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="classVamp_1_1HostExt_1_1PluginWrapper.html#ad19cc0614ba41cdc26ef3394c5146fe6">reset</a> ()</td></tr> 120 <tr class="memitem:ad19cc0614ba41cdc26ef3394c5146fe6"><td class="memItemLeft" align="right" valign="top">void&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="classVamp_1_1HostExt_1_1PluginWrapper.html#ad19cc0614ba41cdc26ef3394c5146fe6">reset</a> ()</td></tr>
124 <tr class="memdesc:ad19cc0614ba41cdc26ef3394c5146fe6"><td class="mdescLeft">&#160;</td><td class="mdescRight">Reset the plugin after use, to prepare it for another clean run. <a href="#ad19cc0614ba41cdc26ef3394c5146fe6"></a><br/></td></tr> 121 <tr class="memdesc:ad19cc0614ba41cdc26ef3394c5146fe6"><td class="mdescLeft">&#160;</td><td class="mdescRight">Reset the plugin after use, to prepare it for another clean run. <a href="#ad19cc0614ba41cdc26ef3394c5146fe6">More...</a><br /></td></tr>
125 <tr class="memitem:ae203faf8384c9e1fddc381409aa8a214"><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_1HostExt_1_1PluginWrapper.html#ae203faf8384c9e1fddc381409aa8a214">getInputDomain</a> () const </td></tr> 122 <tr class="separator:ad19cc0614ba41cdc26ef3394c5146fe6"><td class="memSeparator" colspan="2">&#160;</td></tr>
126 <tr class="memdesc:ae203faf8384c9e1fddc381409aa8a214"><td class="mdescLeft">&#160;</td><td class="mdescRight">Get the plugin's required input domain. <a href="#ae203faf8384c9e1fddc381409aa8a214"></a><br/></td></tr> 123 <tr class="memitem:a8838facfe9d88cf36b13c1b42165fc6d"><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_1HostExt_1_1PluginWrapper.html#a8838facfe9d88cf36b13c1b42165fc6d">getInputDomain</a> () const</td></tr>
127 <tr class="memitem:a74147fda6b44ff2169bd4a1eea0d46ff"><td class="memItemLeft" align="right" valign="top">unsigned int&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="classVamp_1_1HostExt_1_1PluginWrapper.html#a74147fda6b44ff2169bd4a1eea0d46ff">getVampApiVersion</a> () const </td></tr> 124 <tr class="memdesc:a8838facfe9d88cf36b13c1b42165fc6d"><td class="mdescLeft">&#160;</td><td class="mdescRight">Get the plugin's required input domain. <a href="#a8838facfe9d88cf36b13c1b42165fc6d">More...</a><br /></td></tr>
128 <tr class="memdesc:a74147fda6b44ff2169bd4a1eea0d46ff"><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="#a74147fda6b44ff2169bd4a1eea0d46ff"></a><br/></td></tr> 125 <tr class="separator:a8838facfe9d88cf36b13c1b42165fc6d"><td class="memSeparator" colspan="2">&#160;</td></tr>
129 <tr class="memitem:a4baa9e48f717c2b3e7f92496aa39d904"><td class="memItemLeft" align="right" valign="top">std::string&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="classVamp_1_1HostExt_1_1PluginWrapper.html#a4baa9e48f717c2b3e7f92496aa39d904">getIdentifier</a> () const </td></tr> 126 <tr class="memitem:afa79272f991fb720ddd09784be1b3cb8"><td class="memItemLeft" align="right" valign="top">unsigned int&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="classVamp_1_1HostExt_1_1PluginWrapper.html#afa79272f991fb720ddd09784be1b3cb8">getVampApiVersion</a> () const</td></tr>
130 <tr class="memdesc:a4baa9e48f717c2b3e7f92496aa39d904"><td class="mdescLeft">&#160;</td><td class="mdescRight">Get the computer-usable name of the plugin. <a href="#a4baa9e48f717c2b3e7f92496aa39d904"></a><br/></td></tr> 127 <tr class="memdesc:afa79272f991fb720ddd09784be1b3cb8"><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="#afa79272f991fb720ddd09784be1b3cb8">More...</a><br /></td></tr>
131 <tr class="memitem:ac70a3265bb25aeb03f6dd8f8a0442088"><td class="memItemLeft" align="right" valign="top">std::string&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="classVamp_1_1HostExt_1_1PluginWrapper.html#ac70a3265bb25aeb03f6dd8f8a0442088">getName</a> () const </td></tr> 128 <tr class="separator:afa79272f991fb720ddd09784be1b3cb8"><td class="memSeparator" colspan="2">&#160;</td></tr>
132 <tr class="memdesc:ac70a3265bb25aeb03f6dd8f8a0442088"><td class="mdescLeft">&#160;</td><td class="mdescRight">Get a human-readable name or title of the plugin. <a href="#ac70a3265bb25aeb03f6dd8f8a0442088"></a><br/></td></tr> 129 <tr class="memitem:ad9312a38c199004c7bad0c42f590393f"><td class="memItemLeft" align="right" valign="top">std::string&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="classVamp_1_1HostExt_1_1PluginWrapper.html#ad9312a38c199004c7bad0c42f590393f">getIdentifier</a> () const</td></tr>
133 <tr class="memitem:ac334f699c0996055942785410d8a065c"><td class="memItemLeft" align="right" valign="top">std::string&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="classVamp_1_1HostExt_1_1PluginWrapper.html#ac334f699c0996055942785410d8a065c">getDescription</a> () const </td></tr> 130 <tr class="memdesc:ad9312a38c199004c7bad0c42f590393f"><td class="mdescLeft">&#160;</td><td class="mdescRight">Get the computer-usable name of the plugin. <a href="#ad9312a38c199004c7bad0c42f590393f">More...</a><br /></td></tr>
134 <tr class="memdesc:ac334f699c0996055942785410d8a065c"><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="#ac334f699c0996055942785410d8a065c"></a><br/></td></tr> 131 <tr class="separator:ad9312a38c199004c7bad0c42f590393f"><td class="memSeparator" colspan="2">&#160;</td></tr>
135 <tr class="memitem:a59d5a2298951b317995675e664b1c7bb"><td class="memItemLeft" align="right" valign="top">std::string&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="classVamp_1_1HostExt_1_1PluginWrapper.html#a59d5a2298951b317995675e664b1c7bb">getMaker</a> () const </td></tr> 132 <tr class="memitem:aa2b40de6e240d872997a63dd4a301ff3"><td class="memItemLeft" align="right" valign="top">std::string&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="classVamp_1_1HostExt_1_1PluginWrapper.html#aa2b40de6e240d872997a63dd4a301ff3">getName</a> () const</td></tr>
136 <tr class="memdesc:a59d5a2298951b317995675e664b1c7bb"><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="#a59d5a2298951b317995675e664b1c7bb"></a><br/></td></tr> 133 <tr class="memdesc:aa2b40de6e240d872997a63dd4a301ff3"><td class="mdescLeft">&#160;</td><td class="mdescRight">Get a human-readable name or title of the plugin. <a href="#aa2b40de6e240d872997a63dd4a301ff3">More...</a><br /></td></tr>
137 <tr class="memitem:a47e1acf1696813008324a915c9ba59c5"><td class="memItemLeft" align="right" valign="top">int&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="classVamp_1_1HostExt_1_1PluginWrapper.html#a47e1acf1696813008324a915c9ba59c5">getPluginVersion</a> () const </td></tr> 134 <tr class="separator:aa2b40de6e240d872997a63dd4a301ff3"><td class="memSeparator" colspan="2">&#160;</td></tr>
138 <tr class="memdesc:a47e1acf1696813008324a915c9ba59c5"><td class="mdescLeft">&#160;</td><td class="mdescRight">Get the version number of the plugin. <a href="#a47e1acf1696813008324a915c9ba59c5"></a><br/></td></tr> 135 <tr class="memitem:ad6e453c30b265a2daf243f953b35c815"><td class="memItemLeft" align="right" valign="top">std::string&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="classVamp_1_1HostExt_1_1PluginWrapper.html#ad6e453c30b265a2daf243f953b35c815">getDescription</a> () const</td></tr>
139 <tr class="memitem:ae14f6ecb78be909c4cd5f0cdaed3c566"><td class="memItemLeft" align="right" valign="top">std::string&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="classVamp_1_1HostExt_1_1PluginWrapper.html#ae14f6ecb78be909c4cd5f0cdaed3c566">getCopyright</a> () const </td></tr> 136 <tr class="memdesc:ad6e453c30b265a2daf243f953b35c815"><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="#ad6e453c30b265a2daf243f953b35c815">More...</a><br /></td></tr>
140 <tr class="memdesc:ae14f6ecb78be909c4cd5f0cdaed3c566"><td class="mdescLeft">&#160;</td><td class="mdescRight">Get the copyright statement or licensing summary for the plugin. <a href="#ae14f6ecb78be909c4cd5f0cdaed3c566"></a><br/></td></tr> 137 <tr class="separator:ad6e453c30b265a2daf243f953b35c815"><td class="memSeparator" colspan="2">&#160;</td></tr>
141 <tr class="memitem:a9be71561265c2e6e43b7feaddaa91f36"><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_1HostExt_1_1PluginWrapper.html#a9be71561265c2e6e43b7feaddaa91f36">getParameterDescriptors</a> () const </td></tr> 138 <tr class="memitem:af9b2f01063828ef0745dc2623fc8dd42"><td class="memItemLeft" align="right" valign="top">std::string&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="classVamp_1_1HostExt_1_1PluginWrapper.html#af9b2f01063828ef0745dc2623fc8dd42">getMaker</a> () const</td></tr>
142 <tr class="memdesc:a9be71561265c2e6e43b7feaddaa91f36"><td class="mdescLeft">&#160;</td><td class="mdescRight">Get the controllable parameters of this plugin. <a href="#a9be71561265c2e6e43b7feaddaa91f36"></a><br/></td></tr> 139 <tr class="memdesc:af9b2f01063828ef0745dc2623fc8dd42"><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="#af9b2f01063828ef0745dc2623fc8dd42">More...</a><br /></td></tr>
143 <tr class="memitem:a034920f56c8d7609a85447c42556048c"><td class="memItemLeft" align="right" valign="top">float&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="classVamp_1_1HostExt_1_1PluginWrapper.html#a034920f56c8d7609a85447c42556048c">getParameter</a> (std::string) const </td></tr> 140 <tr class="separator:af9b2f01063828ef0745dc2623fc8dd42"><td class="memSeparator" colspan="2">&#160;</td></tr>
144 <tr class="memdesc:a034920f56c8d7609a85447c42556048c"><td class="mdescLeft">&#160;</td><td class="mdescRight">Get the value of a named parameter. <a href="#a034920f56c8d7609a85447c42556048c"></a><br/></td></tr> 141 <tr class="memitem:a9537de27c826a1441b2d3643df4880bb"><td class="memItemLeft" align="right" valign="top">int&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="classVamp_1_1HostExt_1_1PluginWrapper.html#a9537de27c826a1441b2d3643df4880bb">getPluginVersion</a> () const</td></tr>
142 <tr class="memdesc:a9537de27c826a1441b2d3643df4880bb"><td class="mdescLeft">&#160;</td><td class="mdescRight">Get the version number of the plugin. <a href="#a9537de27c826a1441b2d3643df4880bb">More...</a><br /></td></tr>
143 <tr class="separator:a9537de27c826a1441b2d3643df4880bb"><td class="memSeparator" colspan="2">&#160;</td></tr>
144 <tr class="memitem:aea9c238f86de65d3380fa887bb9e47e6"><td class="memItemLeft" align="right" valign="top">std::string&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="classVamp_1_1HostExt_1_1PluginWrapper.html#aea9c238f86de65d3380fa887bb9e47e6">getCopyright</a> () const</td></tr>
145 <tr class="memdesc:aea9c238f86de65d3380fa887bb9e47e6"><td class="mdescLeft">&#160;</td><td class="mdescRight">Get the copyright statement or licensing summary for the plugin. <a href="#aea9c238f86de65d3380fa887bb9e47e6">More...</a><br /></td></tr>
146 <tr class="separator:aea9c238f86de65d3380fa887bb9e47e6"><td class="memSeparator" colspan="2">&#160;</td></tr>
147 <tr class="memitem:ab2b67205d86e921cb0a9bd1f819d2cf9"><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_1HostExt_1_1PluginWrapper.html#ab2b67205d86e921cb0a9bd1f819d2cf9">getParameterDescriptors</a> () const</td></tr>
148 <tr class="memdesc:ab2b67205d86e921cb0a9bd1f819d2cf9"><td class="mdescLeft">&#160;</td><td class="mdescRight">Get the controllable parameters of this plugin. <a href="#ab2b67205d86e921cb0a9bd1f819d2cf9">More...</a><br /></td></tr>
149 <tr class="separator:ab2b67205d86e921cb0a9bd1f819d2cf9"><td class="memSeparator" colspan="2">&#160;</td></tr>
150 <tr class="memitem:a5c0a4d72a25fded51829de21771de521"><td class="memItemLeft" align="right" valign="top">float&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="classVamp_1_1HostExt_1_1PluginWrapper.html#a5c0a4d72a25fded51829de21771de521">getParameter</a> (std::string) const</td></tr>
151 <tr class="memdesc:a5c0a4d72a25fded51829de21771de521"><td class="mdescLeft">&#160;</td><td class="mdescRight">Get the value of a named parameter. <a href="#a5c0a4d72a25fded51829de21771de521">More...</a><br /></td></tr>
152 <tr class="separator:a5c0a4d72a25fded51829de21771de521"><td class="memSeparator" colspan="2">&#160;</td></tr>
145 <tr class="memitem:a651b15a5dc4c27942ac0c87c6092bfe5"><td class="memItemLeft" align="right" valign="top">void&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="classVamp_1_1HostExt_1_1PluginWrapper.html#a651b15a5dc4c27942ac0c87c6092bfe5">setParameter</a> (std::string, float)</td></tr> 153 <tr class="memitem:a651b15a5dc4c27942ac0c87c6092bfe5"><td class="memItemLeft" align="right" valign="top">void&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="classVamp_1_1HostExt_1_1PluginWrapper.html#a651b15a5dc4c27942ac0c87c6092bfe5">setParameter</a> (std::string, float)</td></tr>
146 <tr class="memdesc:a651b15a5dc4c27942ac0c87c6092bfe5"><td class="mdescLeft">&#160;</td><td class="mdescRight">Set a named parameter. <a href="#a651b15a5dc4c27942ac0c87c6092bfe5"></a><br/></td></tr> 154 <tr class="memdesc:a651b15a5dc4c27942ac0c87c6092bfe5"><td class="mdescLeft">&#160;</td><td class="mdescRight">Set a named parameter. <a href="#a651b15a5dc4c27942ac0c87c6092bfe5">More...</a><br /></td></tr>
147 <tr class="memitem:a131fbe1df81215020b9aa8cecef4c802"><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_1HostExt_1_1PluginWrapper.html#a131fbe1df81215020b9aa8cecef4c802">getPrograms</a> () const </td></tr> 155 <tr class="separator:a651b15a5dc4c27942ac0c87c6092bfe5"><td class="memSeparator" colspan="2">&#160;</td></tr>
148 <tr class="memdesc:a131fbe1df81215020b9aa8cecef4c802"><td class="mdescLeft">&#160;</td><td class="mdescRight">Get the program settings available in this plugin. <a href="#a131fbe1df81215020b9aa8cecef4c802"></a><br/></td></tr> 156 <tr class="memitem:aa0b72ea17766266d20539f293ccae7c8"><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_1HostExt_1_1PluginWrapper.html#aa0b72ea17766266d20539f293ccae7c8">getPrograms</a> () const</td></tr>
149 <tr class="memitem:a7a312dd42d161064b70afd7ff24c0651"><td class="memItemLeft" align="right" valign="top">std::string&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="classVamp_1_1HostExt_1_1PluginWrapper.html#a7a312dd42d161064b70afd7ff24c0651">getCurrentProgram</a> () const </td></tr> 157 <tr class="memdesc:aa0b72ea17766266d20539f293ccae7c8"><td class="mdescLeft">&#160;</td><td class="mdescRight">Get the program settings available in this plugin. <a href="#aa0b72ea17766266d20539f293ccae7c8">More...</a><br /></td></tr>
150 <tr class="memdesc:a7a312dd42d161064b70afd7ff24c0651"><td class="mdescLeft">&#160;</td><td class="mdescRight">Get the current program. <a href="#a7a312dd42d161064b70afd7ff24c0651"></a><br/></td></tr> 158 <tr class="separator:aa0b72ea17766266d20539f293ccae7c8"><td class="memSeparator" colspan="2">&#160;</td></tr>
159 <tr class="memitem:a3936fe2c4b3c960dd244849a7c3320ad"><td class="memItemLeft" align="right" valign="top">std::string&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="classVamp_1_1HostExt_1_1PluginWrapper.html#a3936fe2c4b3c960dd244849a7c3320ad">getCurrentProgram</a> () const</td></tr>
160 <tr class="memdesc:a3936fe2c4b3c960dd244849a7c3320ad"><td class="mdescLeft">&#160;</td><td class="mdescRight">Get the current program. <a href="#a3936fe2c4b3c960dd244849a7c3320ad">More...</a><br /></td></tr>
161 <tr class="separator:a3936fe2c4b3c960dd244849a7c3320ad"><td class="memSeparator" colspan="2">&#160;</td></tr>
151 <tr class="memitem:a074978333a74fdcf336a8a1d8ea20abf"><td class="memItemLeft" align="right" valign="top">void&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="classVamp_1_1HostExt_1_1PluginWrapper.html#a074978333a74fdcf336a8a1d8ea20abf">selectProgram</a> (std::string)</td></tr> 162 <tr class="memitem:a074978333a74fdcf336a8a1d8ea20abf"><td class="memItemLeft" align="right" valign="top">void&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="classVamp_1_1HostExt_1_1PluginWrapper.html#a074978333a74fdcf336a8a1d8ea20abf">selectProgram</a> (std::string)</td></tr>
152 <tr class="memdesc:a074978333a74fdcf336a8a1d8ea20abf"><td class="mdescLeft">&#160;</td><td class="mdescRight">Select a program. <a href="#a074978333a74fdcf336a8a1d8ea20abf"></a><br/></td></tr> 163 <tr class="memdesc:a074978333a74fdcf336a8a1d8ea20abf"><td class="mdescLeft">&#160;</td><td class="mdescRight">Select a program. <a href="#a074978333a74fdcf336a8a1d8ea20abf">More...</a><br /></td></tr>
153 <tr class="memitem:a0137d93d7019bacc31104836fb4d352e"><td class="memItemLeft" align="right" valign="top">size_t&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="classVamp_1_1HostExt_1_1PluginWrapper.html#a0137d93d7019bacc31104836fb4d352e">getPreferredStepSize</a> () const </td></tr> 164 <tr class="separator:a074978333a74fdcf336a8a1d8ea20abf"><td class="memSeparator" colspan="2">&#160;</td></tr>
154 <tr class="memdesc:a0137d93d7019bacc31104836fb4d352e"><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_1HostExt_1_1PluginWrapper.html#a6bd72d6dfb3047524dbe8ae3294527cf" title="Process a single block of input data.">process()</a> function) for the plugin. <a href="#a0137d93d7019bacc31104836fb4d352e"></a><br/></td></tr> 165 <tr class="memitem:adf2ea98d6eeb0435c0c8d7cdc29fed7c"><td class="memItemLeft" align="right" valign="top">size_t&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="classVamp_1_1HostExt_1_1PluginWrapper.html#adf2ea98d6eeb0435c0c8d7cdc29fed7c">getPreferredStepSize</a> () const</td></tr>
155 <tr class="memitem:a2c62a656313a819650656643a867ad01"><td class="memItemLeft" align="right" valign="top">size_t&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="classVamp_1_1HostExt_1_1PluginWrapper.html#a2c62a656313a819650656643a867ad01">getPreferredBlockSize</a> () const </td></tr> 166 <tr class="memdesc:adf2ea98d6eeb0435c0c8d7cdc29fed7c"><td class="mdescLeft">&#160;</td><td class="mdescRight">Get the preferred step size (window increment &ndash; the distance in sample frames between the start frames of consecutive blocks passed to the <a class="el" href="classVamp_1_1HostExt_1_1PluginWrapper.html#a6bd72d6dfb3047524dbe8ae3294527cf" title="Process a single block of input data. ">process()</a> function) for the plugin. <a href="#adf2ea98d6eeb0435c0c8d7cdc29fed7c">More...</a><br /></td></tr>
156 <tr class="memdesc:a2c62a656313a819650656643a867ad01"><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_1HostExt_1_1PluginWrapper.html#a6bd72d6dfb3047524dbe8ae3294527cf" title="Process a single block of input data.">process()</a> function). <a href="#a2c62a656313a819650656643a867ad01"></a><br/></td></tr> 167 <tr class="separator:adf2ea98d6eeb0435c0c8d7cdc29fed7c"><td class="memSeparator" colspan="2">&#160;</td></tr>
157 <tr class="memitem:a2b28f1cf37d46a514f1e1411a6037bf8"><td class="memItemLeft" align="right" valign="top">size_t&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="classVamp_1_1HostExt_1_1PluginWrapper.html#a2b28f1cf37d46a514f1e1411a6037bf8">getMinChannelCount</a> () const </td></tr> 168 <tr class="memitem:a94f855a2cf674ccc2e7315484f706d68"><td class="memItemLeft" align="right" valign="top">size_t&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="classVamp_1_1HostExt_1_1PluginWrapper.html#a94f855a2cf674ccc2e7315484f706d68">getPreferredBlockSize</a> () const</td></tr>
158 <tr class="memdesc:a2b28f1cf37d46a514f1e1411a6037bf8"><td class="mdescLeft">&#160;</td><td class="mdescRight">Get the minimum supported number of input channels. <a href="#a2b28f1cf37d46a514f1e1411a6037bf8"></a><br/></td></tr> 169 <tr class="memdesc:a94f855a2cf674ccc2e7315484f706d68"><td class="mdescLeft">&#160;</td><td class="mdescRight">Get the preferred block size (window size &ndash; the number of sample frames passed in each block to the <a class="el" href="classVamp_1_1HostExt_1_1PluginWrapper.html#a6bd72d6dfb3047524dbe8ae3294527cf" title="Process a single block of input data. ">process()</a> function). <a href="#a94f855a2cf674ccc2e7315484f706d68">More...</a><br /></td></tr>
159 <tr class="memitem:a985eb21f1827bfbc3950d6871b107a58"><td class="memItemLeft" align="right" valign="top">size_t&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="classVamp_1_1HostExt_1_1PluginWrapper.html#a985eb21f1827bfbc3950d6871b107a58">getMaxChannelCount</a> () const </td></tr> 170 <tr class="separator:a94f855a2cf674ccc2e7315484f706d68"><td class="memSeparator" colspan="2">&#160;</td></tr>
160 <tr class="memdesc:a985eb21f1827bfbc3950d6871b107a58"><td class="mdescLeft">&#160;</td><td class="mdescRight">Get the maximum supported number of input channels. <a href="#a985eb21f1827bfbc3950d6871b107a58"></a><br/></td></tr> 171 <tr class="memitem:abc0a4e6ce0ae9de39c40725de1f30d2f"><td class="memItemLeft" align="right" valign="top">size_t&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="classVamp_1_1HostExt_1_1PluginWrapper.html#abc0a4e6ce0ae9de39c40725de1f30d2f">getMinChannelCount</a> () const</td></tr>
161 <tr class="memitem:a5a9411305f713b4c9827844b89acd270"><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_1HostExt_1_1PluginWrapper.html#a5a9411305f713b4c9827844b89acd270">getOutputDescriptors</a> () const </td></tr> 172 <tr class="memdesc:abc0a4e6ce0ae9de39c40725de1f30d2f"><td class="mdescLeft">&#160;</td><td class="mdescRight">Get the minimum supported number of input channels. <a href="#abc0a4e6ce0ae9de39c40725de1f30d2f">More...</a><br /></td></tr>
162 <tr class="memdesc:a5a9411305f713b4c9827844b89acd270"><td class="mdescLeft">&#160;</td><td class="mdescRight">Get the outputs of this plugin. <a href="#a5a9411305f713b4c9827844b89acd270"></a><br/></td></tr> 173 <tr class="separator:abc0a4e6ce0ae9de39c40725de1f30d2f"><td class="memSeparator" colspan="2">&#160;</td></tr>
174 <tr class="memitem:acfed040cd91e797ee89d077db22b4a97"><td class="memItemLeft" align="right" valign="top">size_t&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="classVamp_1_1HostExt_1_1PluginWrapper.html#acfed040cd91e797ee89d077db22b4a97">getMaxChannelCount</a> () const</td></tr>
175 <tr class="memdesc:acfed040cd91e797ee89d077db22b4a97"><td class="mdescLeft">&#160;</td><td class="mdescRight">Get the maximum supported number of input channels. <a href="#acfed040cd91e797ee89d077db22b4a97">More...</a><br /></td></tr>
176 <tr class="separator:acfed040cd91e797ee89d077db22b4a97"><td class="memSeparator" colspan="2">&#160;</td></tr>
177 <tr class="memitem:af67a6cd3afa18895393ec8d4bdec3b4c"><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_1HostExt_1_1PluginWrapper.html#af67a6cd3afa18895393ec8d4bdec3b4c">getOutputDescriptors</a> () const</td></tr>
178 <tr class="memdesc:af67a6cd3afa18895393ec8d4bdec3b4c"><td class="mdescLeft">&#160;</td><td class="mdescRight">Get the outputs of this plugin. <a href="#af67a6cd3afa18895393ec8d4bdec3b4c">More...</a><br /></td></tr>
179 <tr class="separator:af67a6cd3afa18895393ec8d4bdec3b4c"><td class="memSeparator" colspan="2">&#160;</td></tr>
163 <tr class="memitem:a2bc8c0992e64f06991fb7cf89f99857e"><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_1HostExt_1_1PluginWrapper.html#a2bc8c0992e64f06991fb7cf89f99857e">getRemainingFeatures</a> ()</td></tr> 180 <tr class="memitem:a2bc8c0992e64f06991fb7cf89f99857e"><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_1HostExt_1_1PluginWrapper.html#a2bc8c0992e64f06991fb7cf89f99857e">getRemainingFeatures</a> ()</td></tr>
164 <tr class="memdesc:a2bc8c0992e64f06991fb7cf89f99857e"><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="#a2bc8c0992e64f06991fb7cf89f99857e"></a><br/></td></tr> 181 <tr class="memdesc:a2bc8c0992e64f06991fb7cf89f99857e"><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="#a2bc8c0992e64f06991fb7cf89f99857e">More...</a><br /></td></tr>
182 <tr class="separator:a2bc8c0992e64f06991fb7cf89f99857e"><td class="memSeparator" colspan="2">&#160;</td></tr>
165 <tr class="memitem:a653d0308e8e34881a8749b7631d00f05"><td class="memTemplParams" colspan="2">template&lt;typename WrapperType &gt; </td></tr> 183 <tr class="memitem:a653d0308e8e34881a8749b7631d00f05"><td class="memTemplParams" colspan="2">template&lt;typename WrapperType &gt; </td></tr>
166 <tr class="memitem:a653d0308e8e34881a8749b7631d00f05"><td class="memTemplItemLeft" align="right" valign="top">WrapperType *&#160;</td><td class="memTemplItemRight" valign="bottom"><a class="el" href="classVamp_1_1HostExt_1_1PluginWrapper.html#a653d0308e8e34881a8749b7631d00f05">getWrapper</a> ()</td></tr> 184 <tr class="memitem:a653d0308e8e34881a8749b7631d00f05"><td class="memTemplItemLeft" align="right" valign="top">WrapperType *&#160;</td><td class="memTemplItemRight" valign="bottom"><a class="el" href="classVamp_1_1HostExt_1_1PluginWrapper.html#a653d0308e8e34881a8749b7631d00f05">getWrapper</a> ()</td></tr>
167 <tr class="memdesc:a653d0308e8e34881a8749b7631d00f05"><td class="mdescLeft">&#160;</td><td class="mdescRight">Return a pointer to the plugin wrapper of type WrapperType surrounding this wrapper's plugin, if present. <a href="#a653d0308e8e34881a8749b7631d00f05"></a><br/></td></tr> 185 <tr class="memdesc:a653d0308e8e34881a8749b7631d00f05"><td class="mdescLeft">&#160;</td><td class="mdescRight">Return a pointer to the plugin wrapper of type WrapperType surrounding this wrapper's plugin, if present. <a href="#a653d0308e8e34881a8749b7631d00f05">More...</a><br /></td></tr>
168 <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> 186 <tr class="separator:a653d0308e8e34881a8749b7631d00f05"><td class="memSeparator" colspan="2">&#160;</td></tr>
169 <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> 187 <tr class="memitem:a530123068767a8728c568ffccfe3e4e5"><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#a530123068767a8728c568ffccfe3e4e5">getType</a> () const</td></tr>
170 <tr><td colspan="2"><h2><a name="pro-attribs"></a> 188 <tr class="memdesc:a530123068767a8728c568ffccfe3e4e5"><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="#a530123068767a8728c568ffccfe3e4e5">More...</a><br /></td></tr>
189 <tr class="separator:a530123068767a8728c568ffccfe3e4e5"><td class="memSeparator" colspan="2">&#160;</td></tr>
190 </table><table class="memberdecls">
191 <tr class="heading"><td colspan="2"><h2 class="groupheader"><a name="pro-attribs"></a>
171 Protected Attributes</h2></td></tr> 192 Protected Attributes</h2></td></tr>
172 <tr class="memitem:ae3a74a2e6c4cd33dce9f4248e73c6701"><td class="memItemLeft" align="right" valign="top">Impl *&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="classVamp_1_1HostExt_1_1PluginChannelAdapter.html#ae3a74a2e6c4cd33dce9f4248e73c6701">m_impl</a></td></tr> 193 <tr class="memitem:ae3a74a2e6c4cd33dce9f4248e73c6701"><td class="memItemLeft" align="right" valign="top">Impl *&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="classVamp_1_1HostExt_1_1PluginChannelAdapter.html#ae3a74a2e6c4cd33dce9f4248e73c6701">m_impl</a></td></tr>
194 <tr class="separator:ae3a74a2e6c4cd33dce9f4248e73c6701"><td class="memSeparator" colspan="2">&#160;</td></tr>
173 <tr class="memitem:ab4e40ecd98b445e1a2aa9e7baa280ea2"><td class="memItemLeft" align="right" valign="top"><a class="el" href="classVamp_1_1Plugin.html">Plugin</a> *&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="classVamp_1_1HostExt_1_1PluginWrapper.html#ab4e40ecd98b445e1a2aa9e7baa280ea2">m_plugin</a></td></tr> 195 <tr class="memitem:ab4e40ecd98b445e1a2aa9e7baa280ea2"><td class="memItemLeft" align="right" valign="top"><a class="el" href="classVamp_1_1Plugin.html">Plugin</a> *&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="classVamp_1_1HostExt_1_1PluginWrapper.html#ab4e40ecd98b445e1a2aa9e7baa280ea2">m_plugin</a></td></tr>
196 <tr class="separator:ab4e40ecd98b445e1a2aa9e7baa280ea2"><td class="memSeparator" colspan="2">&#160;</td></tr>
174 <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> 197 <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>
175 </table> 198 <tr class="separator:a59b9dd82a4f4eb946cd0474cc81abc23"><td class="memSeparator" colspan="2">&#160;</td></tr>
176 <hr/><a name="details" id="details"></a><h2>Detailed Description</h2> 199 </table>
200 <a name="details" id="details"></a><h2 class="groupheader">Detailed Description</h2>
177 <div class="textblock"><p><a class="el" href="classVamp_1_1HostExt_1_1PluginChannelAdapter.html" title="PluginChannelAdapter is a Vamp plugin adapter that implements a policy for management of plugins that...">PluginChannelAdapter</a> is a <a class="el" href="namespaceVamp.html">Vamp</a> plugin adapter that implements a policy for management of plugins that expect a different number of input channels from the number actually available in the source audio data. </p> 201 <div class="textblock"><p><a class="el" href="classVamp_1_1HostExt_1_1PluginChannelAdapter.html" title="PluginChannelAdapter is a Vamp plugin adapter that implements a policy for management of plugins that...">PluginChannelAdapter</a> is a <a class="el" href="namespaceVamp.html">Vamp</a> plugin adapter that implements a policy for management of plugins that expect a different number of input channels from the number actually available in the source audio data. </p>
178 <p>A host using <a class="el" href="classVamp_1_1HostExt_1_1PluginChannelAdapter.html" title="PluginChannelAdapter is a Vamp plugin adapter that implements a policy for management of plugins that...">PluginChannelAdapter</a> may ignore the getMinChannelCount and getMaxChannelCount reported by the plugin, and still expect the plugin to run.</p> 202 <p>A host using <a class="el" href="classVamp_1_1HostExt_1_1PluginChannelAdapter.html" title="PluginChannelAdapter is a Vamp plugin adapter that implements a policy for management of plugins that...">PluginChannelAdapter</a> may ignore the getMinChannelCount and getMaxChannelCount reported by the plugin, and still expect the plugin to run.</p>
179 <p><a class="el" href="classVamp_1_1HostExt_1_1PluginChannelAdapter.html" title="PluginChannelAdapter is a Vamp plugin adapter that implements a policy for management of plugins that...">PluginChannelAdapter</a> implements the following policy:</p> 203 <p><a class="el" href="classVamp_1_1HostExt_1_1PluginChannelAdapter.html" title="PluginChannelAdapter is a Vamp plugin adapter that implements a policy for management of plugins that...">PluginChannelAdapter</a> implements the following policy:</p>
180 <ul> 204 <ul>
181 <li>If the plugin supports the provided number of channels directly, <a class="el" href="classVamp_1_1HostExt_1_1PluginChannelAdapter.html" title="PluginChannelAdapter is a Vamp plugin adapter that implements a policy for management of plugins that...">PluginChannelAdapter</a> will just run the plugin as normal.</li> 205 <li>If the plugin supports the provided number of channels directly, <a class="el" href="classVamp_1_1HostExt_1_1PluginChannelAdapter.html" title="PluginChannelAdapter is a Vamp plugin adapter that implements a policy for management of plugins that...">PluginChannelAdapter</a> will just run the plugin as normal.</li>
182 </ul>
183 <ul>
184 <li>If the plugin only supports exactly one channel but more than one channel is provided, <a class="el" href="classVamp_1_1HostExt_1_1PluginChannelAdapter.html" title="PluginChannelAdapter is a Vamp plugin adapter that implements a policy for management of plugins that...">PluginChannelAdapter</a> will use the mean of the channels. This ensures that the resulting values remain within the same magnitude range as expected for mono data.</li> 206 <li>If the plugin only supports exactly one channel but more than one channel is provided, <a class="el" href="classVamp_1_1HostExt_1_1PluginChannelAdapter.html" title="PluginChannelAdapter is a Vamp plugin adapter that implements a policy for management of plugins that...">PluginChannelAdapter</a> will use the mean of the channels. This ensures that the resulting values remain within the same magnitude range as expected for mono data.</li>
185 </ul>
186 <ul>
187 <li>If the plugin requires more than one channel but exactly one is provided, the provided channel will be duplicated across all the plugin input channels.</li> 207 <li>If the plugin requires more than one channel but exactly one is provided, the provided channel will be duplicated across all the plugin input channels.</li>
188 </ul> 208 </ul>
189 <p>If none of the above apply:</p> 209 <p>If none of the above apply:</p>
190 <ul> 210 <ul>
191 <li>If the plugin requires more channels than are provided, the minimum acceptable number of channels will be produced by adding empty (zero valued) channels to those provided.</li> 211 <li>If the plugin requires more channels than are provided, the minimum acceptable number of channels will be produced by adding empty (zero valued) channels to those provided.</li>
192 </ul>
193 <ul>
194 <li>If the plugin requires fewer channels than are provided, the maximum acceptable number of channels will be produced by discarding the excess channels.</li> 212 <li>If the plugin requires fewer channels than are provided, the maximum acceptable number of channels will be produced by discarding the excess channels.</li>
195 </ul> 213 </ul>
196 <p>Hosts requiring a different channel policy from the above will need to implement it themselves, instead of using <a class="el" href="classVamp_1_1HostExt_1_1PluginChannelAdapter.html" title="PluginChannelAdapter is a Vamp plugin adapter that implements a policy for management of plugins that...">PluginChannelAdapter</a>.</p> 214 <p>Hosts requiring a different channel policy from the above will need to implement it themselves, instead of using <a class="el" href="classVamp_1_1HostExt_1_1PluginChannelAdapter.html" title="PluginChannelAdapter is a Vamp plugin adapter that implements a policy for management of plugins that...">PluginChannelAdapter</a>.</p>
197 <p>Note that <a class="el" href="classVamp_1_1HostExt_1_1PluginChannelAdapter.html" title="PluginChannelAdapter is a Vamp plugin adapter that implements a policy for management of plugins that...">PluginChannelAdapter</a> does not override the minimum and maximum channel counts returned by the wrapped plugin. The host will need to be aware that it is using a <a class="el" href="classVamp_1_1HostExt_1_1PluginChannelAdapter.html" title="PluginChannelAdapter is a Vamp plugin adapter that implements a policy for management of plugins that...">PluginChannelAdapter</a>, and be prepared to ignore these counts as necessary. (This contrasts with the approach used in <a class="el" href="classVamp_1_1HostExt_1_1PluginInputDomainAdapter.html" title="PluginInputDomainAdapter is a Vamp plugin adapter that converts time-domain input into frequency-doma...">PluginInputDomainAdapter</a>, which aims to make the host completely unaware of which underlying input domain is in fact in use.)</p> 215 <p>Note that <a class="el" href="classVamp_1_1HostExt_1_1PluginChannelAdapter.html" title="PluginChannelAdapter is a Vamp plugin adapter that implements a policy for management of plugins that...">PluginChannelAdapter</a> does not override the minimum and maximum channel counts returned by the wrapped plugin. The host will need to be aware that it is using a <a class="el" href="classVamp_1_1HostExt_1_1PluginChannelAdapter.html" title="PluginChannelAdapter is a Vamp plugin adapter that implements a policy for management of plugins that...">PluginChannelAdapter</a>, and be prepared to ignore these counts as necessary. (This contrasts with the approach used in <a class="el" href="classVamp_1_1HostExt_1_1PluginInputDomainAdapter.html" title="PluginInputDomainAdapter is a Vamp plugin adapter that converts time-domain input into frequency-doma...">PluginInputDomainAdapter</a>, which aims to make the host completely unaware of which underlying input domain is in fact in use.)</p>
198 <p>(The rationale for this is that a host may wish to use the <a class="el" href="classVamp_1_1HostExt_1_1PluginChannelAdapter.html" title="PluginChannelAdapter is a Vamp plugin adapter that implements a policy for management of plugins that...">PluginChannelAdapter</a> but still discriminate in some way on the basis of the number of channels actually supported. For example, a simple stereo audio host may prefer to reject plugins that require more than two channels on the grounds that doesn't actually understand what they are for, rather than allow the channel adapter to make a potentially meaningless channel conversion for them.)</p> 216 <p>(The rationale for this is that a host may wish to use the <a class="el" href="classVamp_1_1HostExt_1_1PluginChannelAdapter.html" title="PluginChannelAdapter is a Vamp plugin adapter that implements a policy for management of plugins that...">PluginChannelAdapter</a> but still discriminate in some way on the basis of the number of channels actually supported. For example, a simple stereo audio host may prefer to reject plugins that require more than two channels on the grounds that doesn't actually understand what they are for, rather than allow the channel adapter to make a potentially meaningless channel conversion for them.)</p>
199 <p>In every respect other than its management of channels, the <a class="el" href="classVamp_1_1HostExt_1_1PluginChannelAdapter.html" title="PluginChannelAdapter is a Vamp plugin adapter that implements a policy for management of plugins that...">PluginChannelAdapter</a> behaves identically to the plugin that it wraps. The wrapped plugin will be deleted when the wrapper is deleted.</p> 217 <p>In every respect other than its management of channels, the <a class="el" href="classVamp_1_1HostExt_1_1PluginChannelAdapter.html" title="PluginChannelAdapter is a Vamp plugin adapter that implements a policy for management of plugins that...">PluginChannelAdapter</a> behaves identically to the plugin that it wraps. The wrapped plugin will be deleted when the wrapper is deleted.</p>
200 <dl class="section note"><dt>Note:</dt><dd>This class was introduced in version 1.1 of the <a class="el" href="namespaceVamp.html">Vamp</a> plugin SDK. </dd></dl> 218 <dl class="section note"><dt>Note</dt><dd>This class was introduced in version 1.1 of the <a class="el" href="namespaceVamp.html">Vamp</a> plugin SDK. </dd></dl>
201 219
202 <p>Definition at line <a class="el" href="PluginChannelAdapter_8h_source.html#l00112">112</a> of file <a class="el" href="PluginChannelAdapter_8h_source.html">PluginChannelAdapter.h</a>.</p> 220 <p class="definition">Definition at line <a class="el" href="PluginChannelAdapter_8h_source.html#l00112">112</a> of file <a class="el" href="PluginChannelAdapter_8h_source.html">PluginChannelAdapter.h</a>.</p>
203 </div><hr/><h2>Member Typedef Documentation</h2> 221 </div><h2 class="groupheader">Member Typedef Documentation</h2>
204 <a class="anchor" id="a30f531b8fb69fac41a24e3d2a6a08ed9"></a> 222 <a id="a30f531b8fb69fac41a24e3d2a6a08ed9"></a>
205 <div class="memitem"> 223 <h2 class="memtitle"><span class="permalink"><a href="#a30f531b8fb69fac41a24e3d2a6a08ed9">&#9670;&nbsp;</a></span>OutputList</h2>
206 <div class="memproto"> 224
207 <table class="memname"> 225 <div class="memitem">
208 <tr> 226 <div class="memproto">
209 <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> 227 <table class="mlabels">
210 </tr> 228 <tr>
211 </table> 229 <td class="mlabels-left">
212 </div> 230 <table class="memname">
213 <div class="memdoc"> 231 <tr>
214 232 <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></td>
215 <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> 233 </tr>
216 234 </table>
217 </div> 235 </td>
218 </div> 236 <td class="mlabels-right">
219 <a class="anchor" id="a0730bc72c87fa02eb8d2854b233f7be1"></a> 237 <span class="mlabels"><span class="mlabel">inherited</span></span> </td>
220 <div class="memitem"> 238 </tr>
221 <div class="memproto"> 239 </table>
222 <table class="memname"> 240 </div><div class="memdoc">
223 <tr> 241
224 <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> 242 <p class="definition">Definition at line <a class="el" href="vamp-sdk_2Plugin_8h_source.html#l00335">335</a> of file <a class="el" href="vamp-sdk_2Plugin_8h_source.html">vamp-sdk/Plugin.h</a>.</p>
225 </tr> 243
226 </table> 244 </div>
227 </div> 245 </div>
228 <div class="memdoc"> 246 <a id="a0730bc72c87fa02eb8d2854b233f7be1"></a>
229 247 <h2 class="memtitle"><span class="permalink"><a href="#a0730bc72c87fa02eb8d2854b233f7be1">&#9670;&nbsp;</a></span>FeatureList</h2>
230 <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> 248
231 249 <div class="memitem">
232 </div> 250 <div class="memproto">
233 </div> 251 <table class="mlabels">
234 <a class="anchor" id="a448fb57dc245d47923ec9eeaf9856c5f"></a> 252 <tr>
235 <div class="memitem"> 253 <td class="mlabels-left">
236 <div class="memproto"> 254 <table class="memname">
237 <table class="memname"> 255 <tr>
238 <tr> 256 <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></td>
239 <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> 257 </tr>
240 </tr> 258 </table>
241 </table> 259 </td>
242 </div> 260 <td class="mlabels-right">
243 <div class="memdoc"> 261 <span class="mlabels"><span class="mlabel">inherited</span></span> </td>
244 262 </tr>
245 <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> 263 </table>
246 264 </div><div class="memdoc">
247 </div> 265
248 </div> 266 <p class="definition">Definition at line <a class="el" href="vamp-sdk_2Plugin_8h_source.html#l00393">393</a> of file <a class="el" href="vamp-sdk_2Plugin_8h_source.html">vamp-sdk/Plugin.h</a>.</p>
249 <a class="anchor" id="a3b6bb4bbd86affe1ca9deceea1aad4f8"></a> 267
250 <div class="memitem"> 268 </div>
251 <div class="memproto"> 269 </div>
252 <table class="memname"> 270 <a id="a448fb57dc245d47923ec9eeaf9856c5f"></a>
253 <tr> 271 <h2 class="memtitle"><span class="permalink"><a href="#a448fb57dc245d47923ec9eeaf9856c5f">&#9670;&nbsp;</a></span>FeatureSet</h2>
254 <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> 272
255 </tr> 273 <div class="memitem">
256 </table> 274 <div class="memproto">
257 </div> 275 <table class="mlabels">
258 <div class="memdoc"> 276 <tr>
259 277 <td class="mlabels-left">
260 <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> 278 <table class="memname">
261 279 <tr>
262 </div> 280 <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></td>
263 </div> 281 </tr>
264 <a class="anchor" id="a7f66f00437b21e5f694fe02356b12f20"></a> 282 </table>
265 <div class="memitem"> 283 </td>
266 <div class="memproto"> 284 <td class="mlabels-right">
267 <table class="memname"> 285 <span class="mlabels"><span class="mlabel">inherited</span></span> </td>
268 <tr> 286 </tr>
269 <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> 287 </table>
270 </tr> 288 </div><div class="memdoc">
271 </table> 289
272 </div> 290 <p class="definition">Definition at line <a class="el" href="vamp-sdk_2Plugin_8h_source.html#l00395">395</a> of file <a class="el" href="vamp-sdk_2Plugin_8h_source.html">vamp-sdk/Plugin.h</a>.</p>
273 <div class="memdoc"> 291
274 292 </div>
275 <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> 293 </div>
276 294 <a id="a3b6bb4bbd86affe1ca9deceea1aad4f8"></a>
277 </div> 295 <h2 class="memtitle"><span class="permalink"><a href="#a3b6bb4bbd86affe1ca9deceea1aad4f8">&#9670;&nbsp;</a></span>ParameterList</h2>
278 </div> 296
279 <hr/><h2>Member Enumeration Documentation</h2> 297 <div class="memitem">
280 <a class="anchor" id="a39cb7649d6dcc20e4cb1640cd55907bc"></a> 298 <div class="memproto">
281 <div class="memitem"> 299 <table class="mlabels">
282 <div class="memproto"> 300 <tr>
283 <table class="memname"> 301 <td class="mlabels-left">
284 <tr> 302 <table class="memname">
285 <td class="memname">enum <a class="el" href="classVamp_1_1Plugin.html#a39cb7649d6dcc20e4cb1640cd55907bc">Vamp::Plugin::InputDomain</a><code> [inherited]</code></td> 303 <tr>
286 </tr> 304 <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></td>
287 </table> 305 </tr>
288 </div> 306 </table>
289 <div class="memdoc"> 307 </td>
290 <dl><dt><b>Enumerator: </b></dt><dd><table border="0" cellspacing="2" cellpadding="0"> 308 <td class="mlabels-right">
291 <tr><td valign="top"><em><a class="anchor" id="a39cb7649d6dcc20e4cb1640cd55907bcad4a9f31b958a43a9757af7893aa2e7ff"></a>TimeDomain</em>&nbsp;</td><td> 309 <span class="mlabels"><span class="mlabel">inherited</span></span> </td>
292 </td></tr> 310 </tr>
293 <tr><td valign="top"><em><a class="anchor" id="a39cb7649d6dcc20e4cb1640cd55907bcaa30e7877ab33f76acbdca28607e6ab53"></a>FrequencyDomain</em>&nbsp;</td><td> 311 </table>
294 </td></tr> 312 </div><div class="memdoc">
295 </table> 313
296 </dd> 314 <p class="definition">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>
297 </dl> 315
298 316 </div>
299 <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> 317 </div>
300 318 <a id="a7f66f00437b21e5f694fe02356b12f20"></a>
301 </div> 319 <h2 class="memtitle"><span class="permalink"><a href="#a7f66f00437b21e5f694fe02356b12f20">&#9670;&nbsp;</a></span>ProgramList</h2>
302 </div> 320
303 <hr/><h2>Constructor &amp; Destructor Documentation</h2> 321 <div class="memitem">
304 <a class="anchor" id="a2cda2b672708264f9a33c43bad3acdd8"></a> 322 <div class="memproto">
305 <div class="memitem"> 323 <table class="mlabels">
306 <div class="memproto"> 324 <tr>
307 <table class="memname"> 325 <td class="mlabels-left">
308 <tr> 326 <table class="memname">
309 <td class="memname"><a class="el" href="classVamp_1_1HostExt_1_1PluginChannelAdapter.html#a2cda2b672708264f9a33c43bad3acdd8">Vamp::HostExt::PluginChannelAdapter::PluginChannelAdapter</a> </td> 327 <tr>
328 <td class="memname">typedef std::vector&lt;std::string&gt; <a class="el" href="classVamp_1_1PluginBase.html#a7f66f00437b21e5f694fe02356b12f20">Vamp::PluginBase::ProgramList</a></td>
329 </tr>
330 </table>
331 </td>
332 <td class="mlabels-right">
333 <span class="mlabels"><span class="mlabel">inherited</span></span> </td>
334 </tr>
335 </table>
336 </div><div class="memdoc">
337
338 <p class="definition">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>
339
340 </div>
341 </div>
342 <h2 class="groupheader">Member Enumeration Documentation</h2>
343 <a id="a39cb7649d6dcc20e4cb1640cd55907bc"></a>
344 <h2 class="memtitle"><span class="permalink"><a href="#a39cb7649d6dcc20e4cb1640cd55907bc">&#9670;&nbsp;</a></span>InputDomain</h2>
345
346 <div class="memitem">
347 <div class="memproto">
348 <table class="mlabels">
349 <tr>
350 <td class="mlabels-left">
351 <table class="memname">
352 <tr>
353 <td class="memname">enum <a class="el" href="classVamp_1_1Plugin.html#a39cb7649d6dcc20e4cb1640cd55907bc">Vamp::Plugin::InputDomain</a></td>
354 </tr>
355 </table>
356 </td>
357 <td class="mlabels-right">
358 <span class="mlabels"><span class="mlabel">inherited</span></span> </td>
359 </tr>
360 </table>
361 </div><div class="memdoc">
362 <table class="fieldtable">
363 <tr><th colspan="2">Enumerator</th></tr><tr><td class="fieldname"><a id="a39cb7649d6dcc20e4cb1640cd55907bcad4a9f31b958a43a9757af7893aa2e7ff"></a>TimeDomain&#160;</td><td class="fielddoc"></td></tr>
364 <tr><td class="fieldname"><a id="a39cb7649d6dcc20e4cb1640cd55907bcaa30e7877ab33f76acbdca28607e6ab53"></a>FrequencyDomain&#160;</td><td class="fielddoc"></td></tr>
365 </table>
366
367 <p class="definition">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>
368
369 </div>
370 </div>
371 <h2 class="groupheader">Constructor &amp; Destructor Documentation</h2>
372 <a id="a2cda2b672708264f9a33c43bad3acdd8"></a>
373 <h2 class="memtitle"><span class="permalink"><a href="#a2cda2b672708264f9a33c43bad3acdd8">&#9670;&nbsp;</a></span>PluginChannelAdapter()</h2>
374
375 <div class="memitem">
376 <div class="memproto">
377 <table class="memname">
378 <tr>
379 <td class="memname">Vamp::HostExt::PluginChannelAdapter::PluginChannelAdapter </td>
310 <td>(</td> 380 <td>(</td>
311 <td class="paramtype"><a class="el" href="classVamp_1_1Plugin.html">Plugin</a> *&#160;</td> 381 <td class="paramtype"><a class="el" href="classVamp_1_1Plugin.html">Plugin</a> *&#160;</td>
312 <td class="paramname"><em>plugin</em></td><td>)</td> 382 <td class="paramname"><em>plugin</em></td><td>)</td>
313 <td></td> 383 <td></td>
314 </tr> 384 </tr>
315 </table> 385 </table>
316 </div> 386 </div><div class="memdoc">
317 <div class="memdoc">
318 387
319 <p>Construct a <a class="el" href="classVamp_1_1HostExt_1_1PluginChannelAdapter.html" title="PluginChannelAdapter is a Vamp plugin adapter that implements a policy for management of plugins that...">PluginChannelAdapter</a> wrapping the given plugin. </p> 388 <p>Construct a <a class="el" href="classVamp_1_1HostExt_1_1PluginChannelAdapter.html" title="PluginChannelAdapter is a Vamp plugin adapter that implements a policy for management of plugins that...">PluginChannelAdapter</a> wrapping the given plugin. </p>
320 <p>The adapter takes ownership of the plugin, which will be deleted when the adapter is deleted. </p> 389 <p>The adapter takes ownership of the plugin, which will be deleted when the adapter is deleted. </p>
321 390
322 </div> 391 </div>
323 </div> 392 </div>
324 <a class="anchor" id="acb9a20fefd130e323b1eb2ced43e521c"></a> 393 <a id="acb9a20fefd130e323b1eb2ced43e521c"></a>
325 <div class="memitem"> 394 <h2 class="memtitle"><span class="permalink"><a href="#acb9a20fefd130e323b1eb2ced43e521c">&#9670;&nbsp;</a></span>~PluginChannelAdapter()</h2>
326 <div class="memproto"> 395
327 <table class="memname"> 396 <div class="memitem">
328 <tr> 397 <div class="memproto">
329 <td class="memname">virtual <a class="el" href="classVamp_1_1HostExt_1_1PluginChannelAdapter.html#acb9a20fefd130e323b1eb2ced43e521c">Vamp::HostExt::PluginChannelAdapter::~PluginChannelAdapter</a> </td> 398 <table class="mlabels">
330 <td>(</td> 399 <tr>
331 <td class="paramname"></td><td>)</td> 400 <td class="mlabels-left">
332 <td><code> [virtual]</code></td> 401 <table class="memname">
333 </tr> 402 <tr>
334 </table> 403 <td class="memname">virtual Vamp::HostExt::PluginChannelAdapter::~PluginChannelAdapter </td>
335 </div> 404 <td>(</td>
336 <div class="memdoc"> 405 <td class="paramname"></td><td>)</td>
337 406 <td></td>
338 </div> 407 </tr>
339 </div> 408 </table>
340 <hr/><h2>Member Function Documentation</h2> 409 </td>
341 <a class="anchor" id="ade0473c8fc54636431967cbf41649c1c"></a> 410 <td class="mlabels-right">
342 <div class="memitem"> 411 <span class="mlabels"><span class="mlabel">virtual</span></span> </td>
343 <div class="memproto"> 412 </tr>
344 <table class="memname"> 413 </table>
345 <tr> 414 </div><div class="memdoc">
346 <td class="memname">bool <a class="el" href="classVamp_1_1HostExt_1_1PluginChannelAdapter.html#ade0473c8fc54636431967cbf41649c1c">Vamp::HostExt::PluginChannelAdapter::initialise</a> </td> 415
416 </div>
417 </div>
418 <h2 class="groupheader">Member Function Documentation</h2>
419 <a id="ade0473c8fc54636431967cbf41649c1c"></a>
420 <h2 class="memtitle"><span class="permalink"><a href="#ade0473c8fc54636431967cbf41649c1c">&#9670;&nbsp;</a></span>initialise()</h2>
421
422 <div class="memitem">
423 <div class="memproto">
424 <table class="mlabels">
425 <tr>
426 <td class="mlabels-left">
427 <table class="memname">
428 <tr>
429 <td class="memname">bool Vamp::HostExt::PluginChannelAdapter::initialise </td>
347 <td>(</td> 430 <td>(</td>
348 <td class="paramtype">size_t&#160;</td> 431 <td class="paramtype">size_t&#160;</td>
349 <td class="paramname"><em>inputChannels</em>, </td> 432 <td class="paramname"><em>inputChannels</em>, </td>
350 </tr> 433 </tr>
351 <tr> 434 <tr>
361 <td class="paramname"><em>blockSize</em>&#160;</td> 444 <td class="paramname"><em>blockSize</em>&#160;</td>
362 </tr> 445 </tr>
363 <tr> 446 <tr>
364 <td></td> 447 <td></td>
365 <td>)</td> 448 <td>)</td>
366 <td></td><td><code> [virtual]</code></td> 449 <td></td><td></td>
367 </tr> 450 </tr>
368 </table> 451 </table>
369 </div> 452 </td>
370 <div class="memdoc"> 453 <td class="mlabels-right">
454 <span class="mlabels"><span class="mlabel">virtual</span></span> </td>
455 </tr>
456 </table>
457 </div><div class="memdoc">
371 458
372 <p>Initialise a plugin to prepare it for use with the given number of input channels, step size (window increment, in sample frames) and block size (window size, in sample frames). </p> 459 <p>Initialise a plugin to prepare it for use with the given number of input channels, step size (window increment, in sample frames) and block size (window size, in sample frames). </p>
373 <p>The input sample rate should have been already specified at construction time.</p> 460 <p>The input sample rate should have been already specified at construction time.</p>
374 <p>Return true for successful initialisation, false if the number of input channels, step size and/or block size cannot be supported. </p> 461 <p>Return true for successful initialisation, false if the number of input channels, step size and/or block size cannot be supported. </p>
375 462
376 <p>Reimplemented from <a class="el" href="classVamp_1_1HostExt_1_1PluginWrapper.html#aa5a1f8290d8e9a315695584dcb3ad137">Vamp::HostExt::PluginWrapper</a>.</p> 463 <p>Implements <a class="el" href="classVamp_1_1Plugin.html#af26212cf5fc511b603a8b48034247822">Vamp::Plugin</a>.</p>
377 464
378 </div> 465 </div>
379 </div> 466 </div>
380 <a class="anchor" id="a6ff37bf754ff8711dbcb2f020fa3902c"></a> 467 <a id="a6ff37bf754ff8711dbcb2f020fa3902c"></a>
381 <div class="memitem"> 468 <h2 class="memtitle"><span class="permalink"><a href="#a6ff37bf754ff8711dbcb2f020fa3902c">&#9670;&nbsp;</a></span>process()</h2>
382 <div class="memproto"> 469
383 <table class="memname"> 470 <div class="memitem">
384 <tr> 471 <div class="memproto">
385 <td class="memname"><a class="el" href="classVamp_1_1Plugin.html#a448fb57dc245d47923ec9eeaf9856c5f">FeatureSet</a> <a class="el" href="classVamp_1_1HostExt_1_1PluginChannelAdapter.html#a6ff37bf754ff8711dbcb2f020fa3902c">Vamp::HostExt::PluginChannelAdapter::process</a> </td> 472 <table class="mlabels">
473 <tr>
474 <td class="mlabels-left">
475 <table class="memname">
476 <tr>
477 <td class="memname"><a class="el" href="classVamp_1_1Plugin.html#a448fb57dc245d47923ec9eeaf9856c5f">FeatureSet</a> Vamp::HostExt::PluginChannelAdapter::process </td>
386 <td>(</td> 478 <td>(</td>
387 <td class="paramtype">const float *const *&#160;</td> 479 <td class="paramtype">const float *const *&#160;</td>
388 <td class="paramname"><em>inputBuffers</em>, </td> 480 <td class="paramname"><em>inputBuffers</em>, </td>
389 </tr> 481 </tr>
390 <tr> 482 <tr>
394 <td class="paramname"><em>timestamp</em>&#160;</td> 486 <td class="paramname"><em>timestamp</em>&#160;</td>
395 </tr> 487 </tr>
396 <tr> 488 <tr>
397 <td></td> 489 <td></td>
398 <td>)</td> 490 <td>)</td>
399 <td></td><td><code> [virtual]</code></td> 491 <td></td><td></td>
400 </tr> 492 </tr>
401 </table> 493 </table>
402 </div> 494 </td>
403 <div class="memdoc"> 495 <td class="mlabels-right">
496 <span class="mlabels"><span class="mlabel">virtual</span></span> </td>
497 </tr>
498 </table>
499 </div><div class="memdoc">
404 500
405 <p>Process a single block of input data. </p> 501 <p>Process a single block of input data. </p>
406 <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> 502 <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>
407 <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> 503 <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>
408 <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> 504 <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>
409 505
410 <p>Reimplemented from <a class="el" href="classVamp_1_1HostExt_1_1PluginWrapper.html#a6bd72d6dfb3047524dbe8ae3294527cf">Vamp::HostExt::PluginWrapper</a>.</p> 506 <p>Implements <a class="el" href="classVamp_1_1Plugin.html#ae4aed3bebfe80a2e2fccd3d37af26996">Vamp::Plugin</a>.</p>
411 507
412 </div> 508 </div>
413 </div> 509 </div>
414 <a class="anchor" id="a5c94c3eb1dbc8899fe58527bbb7bb61f"></a> 510 <a id="a5c94c3eb1dbc8899fe58527bbb7bb61f"></a>
415 <div class="memitem"> 511 <h2 class="memtitle"><span class="permalink"><a href="#a5c94c3eb1dbc8899fe58527bbb7bb61f">&#9670;&nbsp;</a></span>processInterleaved()</h2>
416 <div class="memproto"> 512
417 <table class="memname"> 513 <div class="memitem">
418 <tr> 514 <div class="memproto">
419 <td class="memname"><a class="el" href="classVamp_1_1Plugin.html#a448fb57dc245d47923ec9eeaf9856c5f">FeatureSet</a> <a class="el" href="classVamp_1_1HostExt_1_1PluginChannelAdapter.html#a5c94c3eb1dbc8899fe58527bbb7bb61f">Vamp::HostExt::PluginChannelAdapter::processInterleaved</a> </td> 515 <table class="memname">
516 <tr>
517 <td class="memname"><a class="el" href="classVamp_1_1Plugin.html#a448fb57dc245d47923ec9eeaf9856c5f">FeatureSet</a> Vamp::HostExt::PluginChannelAdapter::processInterleaved </td>
420 <td>(</td> 518 <td>(</td>
421 <td class="paramtype">const float *&#160;</td> 519 <td class="paramtype">const float *&#160;</td>
422 <td class="paramname"><em>inputBuffer</em>, </td> 520 <td class="paramname"><em>inputBuffer</em>, </td>
423 </tr> 521 </tr>
424 <tr> 522 <tr>
431 <td></td> 529 <td></td>
432 <td>)</td> 530 <td>)</td>
433 <td></td><td></td> 531 <td></td><td></td>
434 </tr> 532 </tr>
435 </table> 533 </table>
436 </div> 534 </div><div class="memdoc">
437 <div class="memdoc"> 535
438 536 <p>Call <a class="el" href="classVamp_1_1HostExt_1_1PluginChannelAdapter.html#a6ff37bf754ff8711dbcb2f020fa3902c" title="Process a single block of input data. ">process()</a>, providing interleaved audio data with the number of channels passed to <a class="el" href="classVamp_1_1HostExt_1_1PluginChannelAdapter.html#ade0473c8fc54636431967cbf41649c1c" title="Initialise a plugin to prepare it for use with the given number of input channels, step size (window increment, in sample frames) and block size (window size, in sample frames). ">initialise()</a>. </p>
439 <p>Call <a class="el" href="classVamp_1_1HostExt_1_1PluginChannelAdapter.html#a6ff37bf754ff8711dbcb2f020fa3902c" title="Process a single block of input data.">process()</a>, providing interleaved audio data with the number of channels passed to <a class="el" href="classVamp_1_1HostExt_1_1PluginChannelAdapter.html#ade0473c8fc54636431967cbf41649c1c" title="Initialise a plugin to prepare it for use with the given number of input channels, step size (window increment, in sample frames) and block size (window size, in sample frames).">initialise()</a>. </p> 537 <p>The adapter will de-interleave into temporary buffers as appropriate before calling <a class="el" href="classVamp_1_1HostExt_1_1PluginChannelAdapter.html#a6ff37bf754ff8711dbcb2f020fa3902c" title="Process a single block of input data. ">process()</a>.</p>
440 <p>The adapter will de-interleave into temporary buffers as appropriate before calling <a class="el" href="classVamp_1_1HostExt_1_1PluginChannelAdapter.html#a6ff37bf754ff8711dbcb2f020fa3902c" title="Process a single block of input data.">process()</a>.</p> 538 <dl class="section note"><dt>Note</dt><dd>This function was introduced in version 1.4 of the <a class="el" href="namespaceVamp.html">Vamp</a> plugin SDK. </dd></dl>
441 <dl class="section note"><dt>Note:</dt><dd>This function was introduced in version 1.4 of the <a class="el" href="namespaceVamp.html">Vamp</a> plugin SDK. </dd></dl> 539
442 540 </div>
443 </div> 541 </div>
444 </div> 542 <a id="ad19cc0614ba41cdc26ef3394c5146fe6"></a>
445 <a class="anchor" id="ad19cc0614ba41cdc26ef3394c5146fe6"></a> 543 <h2 class="memtitle"><span class="permalink"><a href="#ad19cc0614ba41cdc26ef3394c5146fe6">&#9670;&nbsp;</a></span>reset()</h2>
446 <div class="memitem"> 544
447 <div class="memproto"> 545 <div class="memitem">
448 <table class="memname"> 546 <div class="memproto">
449 <tr> 547 <table class="mlabels">
450 <td class="memname">void <a class="el" href="classVamp_1_1HostExt_1_1PluginWrapper.html#ad19cc0614ba41cdc26ef3394c5146fe6">Vamp::HostExt::PluginWrapper::reset</a> </td> 548 <tr>
451 <td>(</td> 549 <td class="mlabels-left">
452 <td class="paramname"></td><td>)</td> 550 <table class="memname">
453 <td><code> [virtual, inherited]</code></td> 551 <tr>
454 </tr> 552 <td class="memname">void Vamp::HostExt::PluginWrapper::reset </td>
455 </table> 553 <td>(</td>
456 </div> 554 <td class="paramname"></td><td>)</td>
457 <div class="memdoc"> 555 <td></td>
556 </tr>
557 </table>
558 </td>
559 <td class="mlabels-right">
560 <span class="mlabels"><span class="mlabel">virtual</span><span class="mlabel">inherited</span></span> </td>
561 </tr>
562 </table>
563 </div><div class="memdoc">
458 564
459 <p>Reset the plugin after use, to prepare it for another clean run. </p> 565 <p>Reset the plugin after use, to prepare it for another clean run. </p>
460 <p>Not called for the first initialisation (i.e. initialise must also do a reset). </p> 566 <p>Not called for the first initialisation (i.e. initialise must also do a reset). </p>
461 567
462 <p>Implements <a class="el" href="classVamp_1_1Plugin.html#aad67dc9d0052417511070c4ebcfbf24f">Vamp::Plugin</a>.</p> 568 <p>Implements <a class="el" href="classVamp_1_1Plugin.html#aad67dc9d0052417511070c4ebcfbf24f">Vamp::Plugin</a>.</p>
463 569
464 <p>Reimplemented in <a class="el" href="classVamp_1_1HostExt_1_1PluginBufferingAdapter.html#a131fd9fe8a1795d7370d8a721176868a">Vamp::HostExt::PluginBufferingAdapter</a>, <a class="el" href="classVamp_1_1HostExt_1_1PluginInputDomainAdapter.html#a984a12b5b4cb0be1e2f7a0aa84106c4c">Vamp::HostExt::PluginInputDomainAdapter</a>, and <a class="el" href="classVamp_1_1HostExt_1_1PluginSummarisingAdapter.html#a3402381d145d507bd26d1a67e3616911">Vamp::HostExt::PluginSummarisingAdapter</a>.</p> 570 </div>
465 571 </div>
466 </div> 572 <a id="a8838facfe9d88cf36b13c1b42165fc6d"></a>
467 </div> 573 <h2 class="memtitle"><span class="permalink"><a href="#a8838facfe9d88cf36b13c1b42165fc6d">&#9670;&nbsp;</a></span>getInputDomain()</h2>
468 <a class="anchor" id="ae203faf8384c9e1fddc381409aa8a214"></a> 574
469 <div class="memitem"> 575 <div class="memitem">
470 <div class="memproto"> 576 <div class="memproto">
471 <table class="memname"> 577 <table class="mlabels">
472 <tr> 578 <tr>
473 <td class="memname"><a class="el" href="classVamp_1_1Plugin.html#a39cb7649d6dcc20e4cb1640cd55907bc">InputDomain</a> <a class="el" href="classVamp_1_1HostExt_1_1PluginWrapper.html#ae203faf8384c9e1fddc381409aa8a214">Vamp::HostExt::PluginWrapper::getInputDomain</a> </td> 579 <td class="mlabels-left">
474 <td>(</td> 580 <table class="memname">
475 <td class="paramname"></td><td>)</td> 581 <tr>
476 <td> const<code> [virtual, inherited]</code></td> 582 <td class="memname"><a class="el" href="classVamp_1_1Plugin.html#a39cb7649d6dcc20e4cb1640cd55907bc">InputDomain</a> Vamp::HostExt::PluginWrapper::getInputDomain </td>
477 </tr> 583 <td>(</td>
478 </table> 584 <td class="paramname"></td><td>)</td>
479 </div> 585 <td> const</td>
480 <div class="memdoc"> 586 </tr>
587 </table>
588 </td>
589 <td class="mlabels-right">
590 <span class="mlabels"><span class="mlabel">virtual</span><span class="mlabel">inherited</span></span> </td>
591 </tr>
592 </table>
593 </div><div class="memdoc">
481 594
482 <p>Get the plugin's required input domain. </p> 595 <p>Get the plugin's required input domain. </p>
483 <p>If this is TimeDomain, the samples provided to the <a class="el" href="classVamp_1_1HostExt_1_1PluginWrapper.html#a6bd72d6dfb3047524dbe8ae3294527cf" 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> 596 <p>If this is TimeDomain, the samples provided to the <a class="el" href="classVamp_1_1HostExt_1_1PluginChannelAdapter.html#a6ff37bf754ff8711dbcb2f020fa3902c" 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>
484 <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_1HostExt_1_1PluginWrapper.html#a6bd72d6dfb3047524dbe8ae3294527cf" 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> 597 <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_1HostExt_1_1PluginChannelAdapter.html#a6ff37bf754ff8711dbcb2f020fa3902c" 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 &ndash; the host will either let the user do so, or will use a Hanning window. </p>
485 598
486 <p>Implements <a class="el" href="classVamp_1_1Plugin.html#ae1d317a9702cbeda65ddf0ec500c1ff6">Vamp::Plugin</a>.</p> 599 <p>Implements <a class="el" href="classVamp_1_1Plugin.html#ae1d317a9702cbeda65ddf0ec500c1ff6">Vamp::Plugin</a>.</p>
487 600
488 <p>Reimplemented in <a class="el" href="classVamp_1_1HostExt_1_1PluginInputDomainAdapter.html#a47ff1ed72889f323da63f8abc9ea581a">Vamp::HostExt::PluginInputDomainAdapter</a>.</p> 601 </div>
489 602 </div>
490 </div> 603 <a id="afa79272f991fb720ddd09784be1b3cb8"></a>
491 </div> 604 <h2 class="memtitle"><span class="permalink"><a href="#afa79272f991fb720ddd09784be1b3cb8">&#9670;&nbsp;</a></span>getVampApiVersion()</h2>
492 <a class="anchor" id="a74147fda6b44ff2169bd4a1eea0d46ff"></a> 605
493 <div class="memitem"> 606 <div class="memitem">
494 <div class="memproto"> 607 <div class="memproto">
495 <table class="memname"> 608 <table class="mlabels">
496 <tr> 609 <tr>
497 <td class="memname">unsigned int <a class="el" href="classVamp_1_1HostExt_1_1PluginWrapper.html#a74147fda6b44ff2169bd4a1eea0d46ff">Vamp::HostExt::PluginWrapper::getVampApiVersion</a> </td> 610 <td class="mlabels-left">
498 <td>(</td> 611 <table class="memname">
499 <td class="paramname"></td><td>)</td> 612 <tr>
500 <td> const<code> [virtual, inherited]</code></td> 613 <td class="memname">unsigned int Vamp::HostExt::PluginWrapper::getVampApiVersion </td>
501 </tr> 614 <td>(</td>
502 </table> 615 <td class="paramname"></td><td>)</td>
503 </div> 616 <td> const</td>
504 <div class="memdoc"> 617 </tr>
618 </table>
619 </td>
620 <td class="mlabels-right">
621 <span class="mlabels"><span class="mlabel">virtual</span><span class="mlabel">inherited</span></span> </td>
622 </tr>
623 </table>
624 </div><div class="memdoc">
505 625
506 <p>Get the <a class="el" href="namespaceVamp.html">Vamp</a> API compatibility level of the plugin. </p> 626 <p>Get the <a class="el" href="namespaceVamp.html">Vamp</a> API compatibility level of the plugin. </p>
507 627
508 <p>Reimplemented from <a class="el" href="classVamp_1_1PluginBase.html#a8fd2c48291c64b790f0efb8948508dcf">Vamp::PluginBase</a>.</p> 628 <p>Reimplemented from <a class="el" href="classVamp_1_1PluginBase.html#ab4aa9c3e6f6dd9addbc095463c9fb772">Vamp::PluginBase</a>.</p>
509 629
510 </div> 630 </div>
511 </div> 631 </div>
512 <a class="anchor" id="a4baa9e48f717c2b3e7f92496aa39d904"></a> 632 <a id="ad9312a38c199004c7bad0c42f590393f"></a>
513 <div class="memitem"> 633 <h2 class="memtitle"><span class="permalink"><a href="#ad9312a38c199004c7bad0c42f590393f">&#9670;&nbsp;</a></span>getIdentifier()</h2>
514 <div class="memproto"> 634
515 <table class="memname"> 635 <div class="memitem">
516 <tr> 636 <div class="memproto">
517 <td class="memname">std::string <a class="el" href="classVamp_1_1HostExt_1_1PluginWrapper.html#a4baa9e48f717c2b3e7f92496aa39d904">Vamp::HostExt::PluginWrapper::getIdentifier</a> </td> 637 <table class="mlabels">
518 <td>(</td> 638 <tr>
519 <td class="paramname"></td><td>)</td> 639 <td class="mlabels-left">
520 <td> const<code> [virtual, inherited]</code></td> 640 <table class="memname">
521 </tr> 641 <tr>
522 </table> 642 <td class="memname">std::string Vamp::HostExt::PluginWrapper::getIdentifier </td>
523 </div> 643 <td>(</td>
524 <div class="memdoc"> 644 <td class="paramname"></td><td>)</td>
645 <td> const</td>
646 </tr>
647 </table>
648 </td>
649 <td class="mlabels-right">
650 <span class="mlabels"><span class="mlabel">virtual</span><span class="mlabel">inherited</span></span> </td>
651 </tr>
652 </table>
653 </div><div class="memdoc">
525 654
526 <p>Get the computer-usable name of the plugin. </p> 655 <p>Get the computer-usable name of the plugin. </p>
527 <p>This should be reasonably short and contain no whitespace or punctuation characters. It may only contain the characters [a-zA-Z0-9_-]. This is the authoritative way for a program to identify a plugin within a given library.</p> 656 <p>This should be reasonably short and contain no whitespace or punctuation characters. It may only contain the characters [a-zA-Z0-9_-]. This is the authoritative way for a program to identify a plugin within a given library.</p>
528 <p>This text may be visible to the user, but it should not be the main text used to identify a plugin to the user (that will be the name, below).</p> 657 <p>This text may be visible to the user, but it should not be the main text used to identify a plugin to the user (that will be the name, below).</p>
529 <p>Example: "zero_crossings" </p> 658 <p>Example: "zero_crossings" </p>
530 659
531 <p>Implements <a class="el" href="classVamp_1_1PluginBase.html#ad1c6dfc77aa03d937a885b7f08258f4a">Vamp::PluginBase</a>.</p> 660 <p>Implements <a class="el" href="classVamp_1_1PluginBase.html#ad1c6dfc77aa03d937a885b7f08258f4a">Vamp::PluginBase</a>.</p>
532 661
533 </div> 662 </div>
534 </div> 663 </div>
535 <a class="anchor" id="ac70a3265bb25aeb03f6dd8f8a0442088"></a> 664 <a id="aa2b40de6e240d872997a63dd4a301ff3"></a>
536 <div class="memitem"> 665 <h2 class="memtitle"><span class="permalink"><a href="#aa2b40de6e240d872997a63dd4a301ff3">&#9670;&nbsp;</a></span>getName()</h2>
537 <div class="memproto"> 666
538 <table class="memname"> 667 <div class="memitem">
539 <tr> 668 <div class="memproto">
540 <td class="memname">std::string <a class="el" href="classVamp_1_1HostExt_1_1PluginWrapper.html#ac70a3265bb25aeb03f6dd8f8a0442088">Vamp::HostExt::PluginWrapper::getName</a> </td> 669 <table class="mlabels">
541 <td>(</td> 670 <tr>
542 <td class="paramname"></td><td>)</td> 671 <td class="mlabels-left">
543 <td> const<code> [virtual, inherited]</code></td> 672 <table class="memname">
544 </tr> 673 <tr>
545 </table> 674 <td class="memname">std::string Vamp::HostExt::PluginWrapper::getName </td>
546 </div> 675 <td>(</td>
547 <div class="memdoc"> 676 <td class="paramname"></td><td>)</td>
677 <td> const</td>
678 </tr>
679 </table>
680 </td>
681 <td class="mlabels-right">
682 <span class="mlabels"><span class="mlabel">virtual</span><span class="mlabel">inherited</span></span> </td>
683 </tr>
684 </table>
685 </div><div class="memdoc">
548 686
549 <p>Get a human-readable name or title of the plugin. </p> 687 <p>Get a human-readable name or title of the plugin. </p>
550 <p>This should be brief and self-contained, as it may be used to identify the plugin to the user in isolation (i.e. without also showing the plugin's "identifier").</p> 688 <p>This should be brief and self-contained, as it may be used to identify the plugin to the user in isolation (i.e. without also showing the plugin's "identifier").</p>
551 <p>Example: "Zero Crossings" </p> 689 <p>Example: "Zero Crossings" </p>
552 690
553 <p>Implements <a class="el" href="classVamp_1_1PluginBase.html#a18619d5097e444ecefee0c359da53232">Vamp::PluginBase</a>.</p> 691 <p>Implements <a class="el" href="classVamp_1_1PluginBase.html#a18619d5097e444ecefee0c359da53232">Vamp::PluginBase</a>.</p>
554 692
555 </div> 693 </div>
556 </div> 694 </div>
557 <a class="anchor" id="ac334f699c0996055942785410d8a065c"></a> 695 <a id="ad6e453c30b265a2daf243f953b35c815"></a>
558 <div class="memitem"> 696 <h2 class="memtitle"><span class="permalink"><a href="#ad6e453c30b265a2daf243f953b35c815">&#9670;&nbsp;</a></span>getDescription()</h2>
559 <div class="memproto"> 697
560 <table class="memname"> 698 <div class="memitem">
561 <tr> 699 <div class="memproto">
562 <td class="memname">std::string <a class="el" href="classVamp_1_1HostExt_1_1PluginWrapper.html#ac334f699c0996055942785410d8a065c">Vamp::HostExt::PluginWrapper::getDescription</a> </td> 700 <table class="mlabels">
563 <td>(</td> 701 <tr>
564 <td class="paramname"></td><td>)</td> 702 <td class="mlabels-left">
565 <td> const<code> [virtual, inherited]</code></td> 703 <table class="memname">
566 </tr> 704 <tr>
567 </table> 705 <td class="memname">std::string Vamp::HostExt::PluginWrapper::getDescription </td>
568 </div> 706 <td>(</td>
569 <div class="memdoc"> 707 <td class="paramname"></td><td>)</td>
708 <td> const</td>
709 </tr>
710 </table>
711 </td>
712 <td class="mlabels-right">
713 <span class="mlabels"><span class="mlabel">virtual</span><span class="mlabel">inherited</span></span> </td>
714 </tr>
715 </table>
716 </div><div class="memdoc">
570 717
571 <p>Get a human-readable description for the plugin, typically a line of text that may optionally be displayed in addition to the plugin's "name". </p> 718 <p>Get a human-readable description for the plugin, typically a line of text that may optionally be displayed in addition to the plugin's "name". </p>
572 <p>May be empty if the name has said it all already.</p> 719 <p>May be empty if the name has said it all already.</p>
573 <p>Example: "Detect and count zero crossing points" </p> 720 <p>Example: "Detect and count zero crossing points" </p>
574 721
575 <p>Implements <a class="el" href="classVamp_1_1PluginBase.html#a59153a02364f75fff46973b2072e9e5a">Vamp::PluginBase</a>.</p> 722 <p>Implements <a class="el" href="classVamp_1_1PluginBase.html#a59153a02364f75fff46973b2072e9e5a">Vamp::PluginBase</a>.</p>
576 723
577 </div> 724 </div>
578 </div> 725 </div>
579 <a class="anchor" id="a59d5a2298951b317995675e664b1c7bb"></a> 726 <a id="af9b2f01063828ef0745dc2623fc8dd42"></a>
580 <div class="memitem"> 727 <h2 class="memtitle"><span class="permalink"><a href="#af9b2f01063828ef0745dc2623fc8dd42">&#9670;&nbsp;</a></span>getMaker()</h2>
581 <div class="memproto"> 728
582 <table class="memname"> 729 <div class="memitem">
583 <tr> 730 <div class="memproto">
584 <td class="memname">std::string <a class="el" href="classVamp_1_1HostExt_1_1PluginWrapper.html#a59d5a2298951b317995675e664b1c7bb">Vamp::HostExt::PluginWrapper::getMaker</a> </td> 731 <table class="mlabels">
585 <td>(</td> 732 <tr>
586 <td class="paramname"></td><td>)</td> 733 <td class="mlabels-left">
587 <td> const<code> [virtual, inherited]</code></td> 734 <table class="memname">
588 </tr> 735 <tr>
589 </table> 736 <td class="memname">std::string Vamp::HostExt::PluginWrapper::getMaker </td>
590 </div> 737 <td>(</td>
591 <div class="memdoc"> 738 <td class="paramname"></td><td>)</td>
739 <td> const</td>
740 </tr>
741 </table>
742 </td>
743 <td class="mlabels-right">
744 <span class="mlabels"><span class="mlabel">virtual</span><span class="mlabel">inherited</span></span> </td>
745 </tr>
746 </table>
747 </div><div class="memdoc">
592 748
593 <p>Get the name of the author or vendor of the plugin in human-readable form. </p> 749 <p>Get the name of the author or vendor of the plugin in human-readable form. </p>
594 <p>This should be a short identifying text, as it may be used to label plugins from the same source in a menu or similar. </p> 750 <p>This should be a short identifying text, as it may be used to label plugins from the same source in a menu or similar. </p>
595 751
596 <p>Implements <a class="el" href="classVamp_1_1PluginBase.html#a53d9918bf9ef4d12feedf66b2b26c637">Vamp::PluginBase</a>.</p> 752 <p>Implements <a class="el" href="classVamp_1_1PluginBase.html#a53d9918bf9ef4d12feedf66b2b26c637">Vamp::PluginBase</a>.</p>
597 753
598 </div> 754 </div>
599 </div> 755 </div>
600 <a class="anchor" id="a47e1acf1696813008324a915c9ba59c5"></a> 756 <a id="a9537de27c826a1441b2d3643df4880bb"></a>
601 <div class="memitem"> 757 <h2 class="memtitle"><span class="permalink"><a href="#a9537de27c826a1441b2d3643df4880bb">&#9670;&nbsp;</a></span>getPluginVersion()</h2>
602 <div class="memproto"> 758
603 <table class="memname"> 759 <div class="memitem">
604 <tr> 760 <div class="memproto">
605 <td class="memname">int <a class="el" href="classVamp_1_1HostExt_1_1PluginWrapper.html#a47e1acf1696813008324a915c9ba59c5">Vamp::HostExt::PluginWrapper::getPluginVersion</a> </td> 761 <table class="mlabels">
606 <td>(</td> 762 <tr>
607 <td class="paramname"></td><td>)</td> 763 <td class="mlabels-left">
608 <td> const<code> [virtual, inherited]</code></td> 764 <table class="memname">
609 </tr> 765 <tr>
610 </table> 766 <td class="memname">int Vamp::HostExt::PluginWrapper::getPluginVersion </td>
611 </div> 767 <td>(</td>
612 <div class="memdoc"> 768 <td class="paramname"></td><td>)</td>
769 <td> const</td>
770 </tr>
771 </table>
772 </td>
773 <td class="mlabels-right">
774 <span class="mlabels"><span class="mlabel">virtual</span><span class="mlabel">inherited</span></span> </td>
775 </tr>
776 </table>
777 </div><div class="memdoc">
613 778
614 <p>Get the version number of the plugin. </p> 779 <p>Get the version number of the plugin. </p>
615 780
616 <p>Implements <a class="el" href="classVamp_1_1PluginBase.html#a63f686d77bc3d6b807e7944cdde83151">Vamp::PluginBase</a>.</p> 781 <p>Implements <a class="el" href="classVamp_1_1PluginBase.html#a63f686d77bc3d6b807e7944cdde83151">Vamp::PluginBase</a>.</p>
617 782
618 </div> 783 </div>
619 </div> 784 </div>
620 <a class="anchor" id="ae14f6ecb78be909c4cd5f0cdaed3c566"></a> 785 <a id="aea9c238f86de65d3380fa887bb9e47e6"></a>
621 <div class="memitem"> 786 <h2 class="memtitle"><span class="permalink"><a href="#aea9c238f86de65d3380fa887bb9e47e6">&#9670;&nbsp;</a></span>getCopyright()</h2>
622 <div class="memproto"> 787
623 <table class="memname"> 788 <div class="memitem">
624 <tr> 789 <div class="memproto">
625 <td class="memname">std::string <a class="el" href="classVamp_1_1HostExt_1_1PluginWrapper.html#ae14f6ecb78be909c4cd5f0cdaed3c566">Vamp::HostExt::PluginWrapper::getCopyright</a> </td> 790 <table class="mlabels">
626 <td>(</td> 791 <tr>
627 <td class="paramname"></td><td>)</td> 792 <td class="mlabels-left">
628 <td> const<code> [virtual, inherited]</code></td> 793 <table class="memname">
629 </tr> 794 <tr>
630 </table> 795 <td class="memname">std::string Vamp::HostExt::PluginWrapper::getCopyright </td>
631 </div> 796 <td>(</td>
632 <div class="memdoc"> 797 <td class="paramname"></td><td>)</td>
798 <td> const</td>
799 </tr>
800 </table>
801 </td>
802 <td class="mlabels-right">
803 <span class="mlabels"><span class="mlabel">virtual</span><span class="mlabel">inherited</span></span> </td>
804 </tr>
805 </table>
806 </div><div class="memdoc">
633 807
634 <p>Get the copyright statement or licensing summary for the plugin. </p> 808 <p>Get the copyright statement or licensing summary for the plugin. </p>
635 <p>This can be an informative text, without the same presentation constraints as mentioned for getMaker above. </p> 809 <p>This can be an informative text, without the same presentation constraints as mentioned for getMaker above. </p>
636 810
637 <p>Implements <a class="el" href="classVamp_1_1PluginBase.html#ab7e9dedbe965f5ab9018b72920fe7661">Vamp::PluginBase</a>.</p> 811 <p>Implements <a class="el" href="classVamp_1_1PluginBase.html#ab7e9dedbe965f5ab9018b72920fe7661">Vamp::PluginBase</a>.</p>
638 812
639 </div> 813 </div>
640 </div> 814 </div>
641 <a class="anchor" id="a9be71561265c2e6e43b7feaddaa91f36"></a> 815 <a id="ab2b67205d86e921cb0a9bd1f819d2cf9"></a>
642 <div class="memitem"> 816 <h2 class="memtitle"><span class="permalink"><a href="#ab2b67205d86e921cb0a9bd1f819d2cf9">&#9670;&nbsp;</a></span>getParameterDescriptors()</h2>
643 <div class="memproto"> 817
644 <table class="memname"> 818 <div class="memitem">
645 <tr> 819 <div class="memproto">
646 <td class="memname"><a class="el" href="classVamp_1_1PluginBase.html#a3b6bb4bbd86affe1ca9deceea1aad4f8">ParameterList</a> <a class="el" href="classVamp_1_1HostExt_1_1PluginWrapper.html#a9be71561265c2e6e43b7feaddaa91f36">Vamp::HostExt::PluginWrapper::getParameterDescriptors</a> </td> 820 <table class="mlabels">
647 <td>(</td> 821 <tr>
648 <td class="paramname"></td><td>)</td> 822 <td class="mlabels-left">
649 <td> const<code> [virtual, inherited]</code></td> 823 <table class="memname">
650 </tr> 824 <tr>
651 </table> 825 <td class="memname"><a class="el" href="classVamp_1_1PluginBase.html#a3b6bb4bbd86affe1ca9deceea1aad4f8">ParameterList</a> Vamp::HostExt::PluginWrapper::getParameterDescriptors </td>
652 </div> 826 <td>(</td>
653 <div class="memdoc"> 827 <td class="paramname"></td><td>)</td>
828 <td> const</td>
829 </tr>
830 </table>
831 </td>
832 <td class="mlabels-right">
833 <span class="mlabels"><span class="mlabel">virtual</span><span class="mlabel">inherited</span></span> </td>
834 </tr>
835 </table>
836 </div><div class="memdoc">
654 837
655 <p>Get the controllable parameters of this plugin. </p> 838 <p>Get the controllable parameters of this plugin. </p>
656 839
657 <p>Reimplemented from <a class="el" href="classVamp_1_1PluginBase.html#aac3e49b3b66cacfbb768dfdf07444f21">Vamp::PluginBase</a>.</p> 840 <p>Reimplemented from <a class="el" href="classVamp_1_1PluginBase.html#a0c24ff6a43c681198dc9497287a26e3a">Vamp::PluginBase</a>.</p>
658 841
659 </div> 842 </div>
660 </div> 843 </div>
661 <a class="anchor" id="a034920f56c8d7609a85447c42556048c"></a> 844 <a id="a5c0a4d72a25fded51829de21771de521"></a>
662 <div class="memitem"> 845 <h2 class="memtitle"><span class="permalink"><a href="#a5c0a4d72a25fded51829de21771de521">&#9670;&nbsp;</a></span>getParameter()</h2>
663 <div class="memproto"> 846
664 <table class="memname"> 847 <div class="memitem">
665 <tr> 848 <div class="memproto">
666 <td class="memname">float <a class="el" href="classVamp_1_1HostExt_1_1PluginWrapper.html#a034920f56c8d7609a85447c42556048c">Vamp::HostExt::PluginWrapper::getParameter</a> </td> 849 <table class="mlabels">
850 <tr>
851 <td class="mlabels-left">
852 <table class="memname">
853 <tr>
854 <td class="memname">float Vamp::HostExt::PluginWrapper::getParameter </td>
667 <td>(</td> 855 <td>(</td>
668 <td class="paramtype">std::string&#160;</td> 856 <td class="paramtype">std::string&#160;</td>
669 <td class="paramname"></td><td>)</td> 857 <td class="paramname"></td><td>)</td>
670 <td> const<code> [virtual, inherited]</code></td> 858 <td> const</td>
671 </tr> 859 </tr>
672 </table> 860 </table>
673 </div> 861 </td>
674 <div class="memdoc"> 862 <td class="mlabels-right">
863 <span class="mlabels"><span class="mlabel">virtual</span><span class="mlabel">inherited</span></span> </td>
864 </tr>
865 </table>
866 </div><div class="memdoc">
675 867
676 <p>Get the value of a named parameter. </p> 868 <p>Get the value of a named parameter. </p>
677 <p>The argument is the identifier field from that parameter's descriptor. </p> 869 <p>The argument is the identifier field from that parameter's descriptor. </p>
678 870
679 <p>Reimplemented from <a class="el" href="classVamp_1_1PluginBase.html#a97ababcd45348ceec998d0f8e0f38bf7">Vamp::PluginBase</a>.</p> 871 <p>Reimplemented from <a class="el" href="classVamp_1_1PluginBase.html#aa813d61077080ec95487d2a0227cc51b">Vamp::PluginBase</a>.</p>
680 872
681 </div> 873 </div>
682 </div> 874 </div>
683 <a class="anchor" id="a651b15a5dc4c27942ac0c87c6092bfe5"></a> 875 <a id="a651b15a5dc4c27942ac0c87c6092bfe5"></a>
684 <div class="memitem"> 876 <h2 class="memtitle"><span class="permalink"><a href="#a651b15a5dc4c27942ac0c87c6092bfe5">&#9670;&nbsp;</a></span>setParameter()</h2>
685 <div class="memproto"> 877
686 <table class="memname"> 878 <div class="memitem">
687 <tr> 879 <div class="memproto">
688 <td class="memname">void <a class="el" href="classVamp_1_1HostExt_1_1PluginWrapper.html#a651b15a5dc4c27942ac0c87c6092bfe5">Vamp::HostExt::PluginWrapper::setParameter</a> </td> 880 <table class="mlabels">
881 <tr>
882 <td class="mlabels-left">
883 <table class="memname">
884 <tr>
885 <td class="memname">void Vamp::HostExt::PluginWrapper::setParameter </td>
689 <td>(</td> 886 <td>(</td>
690 <td class="paramtype">std::string&#160;</td> 887 <td class="paramtype">std::string&#160;</td>
691 <td class="paramname">, </td> 888 <td class="paramname">, </td>
692 </tr> 889 </tr>
693 <tr> 890 <tr>
697 <td class="paramname">&#160;</td> 894 <td class="paramname">&#160;</td>
698 </tr> 895 </tr>
699 <tr> 896 <tr>
700 <td></td> 897 <td></td>
701 <td>)</td> 898 <td>)</td>
702 <td></td><td><code> [virtual, inherited]</code></td> 899 <td></td><td></td>
703 </tr> 900 </tr>
704 </table> 901 </table>
705 </div> 902 </td>
706 <div class="memdoc"> 903 <td class="mlabels-right">
904 <span class="mlabels"><span class="mlabel">virtual</span><span class="mlabel">inherited</span></span> </td>
905 </tr>
906 </table>
907 </div><div class="memdoc">
707 908
708 <p>Set a named parameter. </p> 909 <p>Set a named parameter. </p>
709 <p>The first argument is the identifier field from that parameter's descriptor. </p> 910 <p>The first argument is the identifier field from that parameter's descriptor. </p>
710 911
711 <p>Reimplemented from <a class="el" href="classVamp_1_1PluginBase.html#a6c718ce822f7b73b98940d59dcaa9366">Vamp::PluginBase</a>.</p> 912 <p>Reimplemented from <a class="el" href="classVamp_1_1PluginBase.html#a6c718ce822f7b73b98940d59dcaa9366">Vamp::PluginBase</a>.</p>
712 913
713 <p>Reimplemented in <a class="el" href="classVamp_1_1HostExt_1_1PluginBufferingAdapter.html#a7a979b20c169d37adbd7b7d8b8a077b3">Vamp::HostExt::PluginBufferingAdapter</a>.</p> 914 </div>
714 915 </div>
715 </div> 916 <a id="aa0b72ea17766266d20539f293ccae7c8"></a>
716 </div> 917 <h2 class="memtitle"><span class="permalink"><a href="#aa0b72ea17766266d20539f293ccae7c8">&#9670;&nbsp;</a></span>getPrograms()</h2>
717 <a class="anchor" id="a131fbe1df81215020b9aa8cecef4c802"></a> 918
718 <div class="memitem"> 919 <div class="memitem">
719 <div class="memproto"> 920 <div class="memproto">
720 <table class="memname"> 921 <table class="mlabels">
721 <tr> 922 <tr>
722 <td class="memname"><a class="el" href="classVamp_1_1PluginBase.html#a7f66f00437b21e5f694fe02356b12f20">ProgramList</a> <a class="el" href="classVamp_1_1HostExt_1_1PluginWrapper.html#a131fbe1df81215020b9aa8cecef4c802">Vamp::HostExt::PluginWrapper::getPrograms</a> </td> 923 <td class="mlabels-left">
723 <td>(</td> 924 <table class="memname">
724 <td class="paramname"></td><td>)</td> 925 <tr>
725 <td> const<code> [virtual, inherited]</code></td> 926 <td class="memname"><a class="el" href="classVamp_1_1PluginBase.html#a7f66f00437b21e5f694fe02356b12f20">ProgramList</a> Vamp::HostExt::PluginWrapper::getPrograms </td>
726 </tr> 927 <td>(</td>
727 </table> 928 <td class="paramname"></td><td>)</td>
728 </div> 929 <td> const</td>
729 <div class="memdoc"> 930 </tr>
931 </table>
932 </td>
933 <td class="mlabels-right">
934 <span class="mlabels"><span class="mlabel">virtual</span><span class="mlabel">inherited</span></span> </td>
935 </tr>
936 </table>
937 </div><div class="memdoc">
730 938
731 <p>Get the program settings available in this plugin. </p> 939 <p>Get the program settings available in this plugin. </p>
732 <p>A program is a named shorthand for a set of parameter values; changing the program may cause the plugin to alter the values of its published parameters (and/or non-public internal processing parameters). The host should re-read the plugin's parameter values after setting a new program.</p> 940 <p>A program is a named shorthand for a set of parameter values; changing the program may cause the plugin to alter the values of its published parameters (and/or non-public internal processing parameters). The host should re-read the plugin's parameter values after setting a new program.</p>
733 <p>The programs must have unique names. </p> 941 <p>The programs must have unique names. </p>
734 942
735 <p>Reimplemented from <a class="el" href="classVamp_1_1PluginBase.html#abb307c60bdb981d5f5af50c3c4ae84af">Vamp::PluginBase</a>.</p> 943 <p>Reimplemented from <a class="el" href="classVamp_1_1PluginBase.html#aaf6febff0ab4daf4a5089c98a67f4df8">Vamp::PluginBase</a>.</p>
736 944
737 </div> 945 </div>
738 </div> 946 </div>
739 <a class="anchor" id="a7a312dd42d161064b70afd7ff24c0651"></a> 947 <a id="a3936fe2c4b3c960dd244849a7c3320ad"></a>
740 <div class="memitem"> 948 <h2 class="memtitle"><span class="permalink"><a href="#a3936fe2c4b3c960dd244849a7c3320ad">&#9670;&nbsp;</a></span>getCurrentProgram()</h2>
741 <div class="memproto"> 949
742 <table class="memname"> 950 <div class="memitem">
743 <tr> 951 <div class="memproto">
744 <td class="memname">std::string <a class="el" href="classVamp_1_1HostExt_1_1PluginWrapper.html#a7a312dd42d161064b70afd7ff24c0651">Vamp::HostExt::PluginWrapper::getCurrentProgram</a> </td> 952 <table class="mlabels">
745 <td>(</td> 953 <tr>
746 <td class="paramname"></td><td>)</td> 954 <td class="mlabels-left">
747 <td> const<code> [virtual, inherited]</code></td> 955 <table class="memname">
748 </tr> 956 <tr>
749 </table> 957 <td class="memname">std::string Vamp::HostExt::PluginWrapper::getCurrentProgram </td>
750 </div> 958 <td>(</td>
751 <div class="memdoc"> 959 <td class="paramname"></td><td>)</td>
960 <td> const</td>
961 </tr>
962 </table>
963 </td>
964 <td class="mlabels-right">
965 <span class="mlabels"><span class="mlabel">virtual</span><span class="mlabel">inherited</span></span> </td>
966 </tr>
967 </table>
968 </div><div class="memdoc">
752 969
753 <p>Get the current program. </p> 970 <p>Get the current program. </p>
754 971
755 <p>Reimplemented from <a class="el" href="classVamp_1_1PluginBase.html#a24e77eccf1bdfbbca3c79bb25e8799b3">Vamp::PluginBase</a>.</p> 972 <p>Reimplemented from <a class="el" href="classVamp_1_1PluginBase.html#aac38c5dc6e87208616122897518ca3d5">Vamp::PluginBase</a>.</p>
756 973
757 </div> 974 </div>
758 </div> 975 </div>
759 <a class="anchor" id="a074978333a74fdcf336a8a1d8ea20abf"></a> 976 <a id="a074978333a74fdcf336a8a1d8ea20abf"></a>
760 <div class="memitem"> 977 <h2 class="memtitle"><span class="permalink"><a href="#a074978333a74fdcf336a8a1d8ea20abf">&#9670;&nbsp;</a></span>selectProgram()</h2>
761 <div class="memproto"> 978
762 <table class="memname"> 979 <div class="memitem">
763 <tr> 980 <div class="memproto">
764 <td class="memname">void <a class="el" href="classVamp_1_1HostExt_1_1PluginWrapper.html#a074978333a74fdcf336a8a1d8ea20abf">Vamp::HostExt::PluginWrapper::selectProgram</a> </td> 981 <table class="mlabels">
982 <tr>
983 <td class="mlabels-left">
984 <table class="memname">
985 <tr>
986 <td class="memname">void Vamp::HostExt::PluginWrapper::selectProgram </td>
765 <td>(</td> 987 <td>(</td>
766 <td class="paramtype">std::string&#160;</td> 988 <td class="paramtype">std::string&#160;</td>
767 <td class="paramname"></td><td>)</td> 989 <td class="paramname"></td><td>)</td>
768 <td><code> [virtual, inherited]</code></td> 990 <td></td>
769 </tr> 991 </tr>
770 </table> 992 </table>
771 </div> 993 </td>
772 <div class="memdoc"> 994 <td class="mlabels-right">
995 <span class="mlabels"><span class="mlabel">virtual</span><span class="mlabel">inherited</span></span> </td>
996 </tr>
997 </table>
998 </div><div class="memdoc">
773 999
774 <p>Select a program. </p> 1000 <p>Select a program. </p>
775 <p>(If the given program name is not one of the available programs, do nothing.) </p> 1001 <p>(If the given program name is not one of the available programs, do nothing.) </p>
776 1002
777 <p>Reimplemented from <a class="el" href="classVamp_1_1PluginBase.html#aadd3a547ef140bae200473a9518e3353">Vamp::PluginBase</a>.</p> 1003 <p>Reimplemented from <a class="el" href="classVamp_1_1PluginBase.html#aadd3a547ef140bae200473a9518e3353">Vamp::PluginBase</a>.</p>
778 1004
779 <p>Reimplemented in <a class="el" href="classVamp_1_1HostExt_1_1PluginBufferingAdapter.html#a3cc7000e0aff525950e0a286b87f8927">Vamp::HostExt::PluginBufferingAdapter</a>.</p> 1005 </div>
780 1006 </div>
781 </div> 1007 <a id="adf2ea98d6eeb0435c0c8d7cdc29fed7c"></a>
782 </div> 1008 <h2 class="memtitle"><span class="permalink"><a href="#adf2ea98d6eeb0435c0c8d7cdc29fed7c">&#9670;&nbsp;</a></span>getPreferredStepSize()</h2>
783 <a class="anchor" id="a0137d93d7019bacc31104836fb4d352e"></a> 1009
784 <div class="memitem"> 1010 <div class="memitem">
785 <div class="memproto"> 1011 <div class="memproto">
786 <table class="memname"> 1012 <table class="mlabels">
787 <tr> 1013 <tr>
788 <td class="memname">size_t <a class="el" href="classVamp_1_1HostExt_1_1PluginWrapper.html#a0137d93d7019bacc31104836fb4d352e">Vamp::HostExt::PluginWrapper::getPreferredStepSize</a> </td> 1014 <td class="mlabels-left">
789 <td>(</td> 1015 <table class="memname">
790 <td class="paramname"></td><td>)</td> 1016 <tr>
791 <td> const<code> [virtual, inherited]</code></td> 1017 <td class="memname">size_t Vamp::HostExt::PluginWrapper::getPreferredStepSize </td>
792 </tr> 1018 <td>(</td>
793 </table> 1019 <td class="paramname"></td><td>)</td>
794 </div> 1020 <td> const</td>
795 <div class="memdoc"> 1021 </tr>
796 1022 </table>
797 <p>Get the preferred step size (window increment -- the distance in sample frames between the start frames of consecutive blocks passed to the <a class="el" href="classVamp_1_1HostExt_1_1PluginWrapper.html#a6bd72d6dfb3047524dbe8ae3294527cf" title="Process a single block of input data.">process()</a> function) for the plugin. </p> 1023 </td>
798 <p>This should be called before <a class="el" href="classVamp_1_1HostExt_1_1PluginWrapper.html#aa5a1f8290d8e9a315695584dcb3ad137" title="Initialise a plugin to prepare it for use with the given number of input channels, step size (window increment, in sample frames) and block size (window size, in sample frames).">initialise()</a>.</p> 1024 <td class="mlabels-right">
799 <p>A plugin may return 0 if it has no particular interest in the step size. In this case, the host should make the step size equal to the block size if the plugin is accepting input in the time domain. If the plugin is accepting input in the frequency domain, the host may use any step size. The final step size will be set in the <a class="el" href="classVamp_1_1HostExt_1_1PluginWrapper.html#aa5a1f8290d8e9a315695584dcb3ad137" title="Initialise a plugin to prepare it for use with the given number of input channels, step size (window increment, in sample frames) and block size (window size, in sample frames).">initialise()</a> call. </p> 1025 <span class="mlabels"><span class="mlabel">virtual</span><span class="mlabel">inherited</span></span> </td>
800 1026 </tr>
801 <p>Reimplemented from <a class="el" href="classVamp_1_1Plugin.html#a514c716c22f81c055f19b56c3f882567">Vamp::Plugin</a>.</p> 1027 </table>
802 1028 </div><div class="memdoc">
803 <p>Reimplemented in <a class="el" href="classVamp_1_1HostExt_1_1PluginInputDomainAdapter.html#ad979af9f1cbf2eeb16f4eaedb4a4f565">Vamp::HostExt::PluginInputDomainAdapter</a>, and <a class="el" href="classVamp_1_1HostExt_1_1PluginBufferingAdapter.html#a2e66d009df69c951001e5d2786973d60">Vamp::HostExt::PluginBufferingAdapter</a>.</p> 1029
804 1030 <p>Get the preferred step size (window increment &ndash; the distance in sample frames between the start frames of consecutive blocks passed to the <a class="el" href="classVamp_1_1HostExt_1_1PluginChannelAdapter.html#a6ff37bf754ff8711dbcb2f020fa3902c" title="Process a single block of input data. ">process()</a> function) for the plugin. </p>
805 </div> 1031 <p>This should be called before <a class="el" href="classVamp_1_1HostExt_1_1PluginChannelAdapter.html#ade0473c8fc54636431967cbf41649c1c" title="Initialise a plugin to prepare it for use with the given number of input channels, step size (window increment, in sample frames) and block size (window size, in sample frames). ">initialise()</a>.</p>
806 </div> 1032 <p>A plugin may return 0 if it has no particular interest in the step size. In this case, the host should make the step size equal to the block size if the plugin is accepting input in the time domain. If the plugin is accepting input in the frequency domain, the host may use any step size. The final step size will be set in the <a class="el" href="classVamp_1_1HostExt_1_1PluginChannelAdapter.html#ade0473c8fc54636431967cbf41649c1c" title="Initialise a plugin to prepare it for use with the given number of input channels, step size (window increment, in sample frames) and block size (window size, in sample frames). ">initialise()</a> call. </p>
807 <a class="anchor" id="a2c62a656313a819650656643a867ad01"></a> 1033
808 <div class="memitem"> 1034 <p>Reimplemented from <a class="el" href="classVamp_1_1Plugin.html#a33eaf9a265bc3a055e156452112456c2">Vamp::Plugin</a>.</p>
809 <div class="memproto"> 1035
810 <table class="memname"> 1036 </div>
811 <tr> 1037 </div>
812 <td class="memname">size_t <a class="el" href="classVamp_1_1HostExt_1_1PluginWrapper.html#a2c62a656313a819650656643a867ad01">Vamp::HostExt::PluginWrapper::getPreferredBlockSize</a> </td> 1038 <a id="a94f855a2cf674ccc2e7315484f706d68"></a>
813 <td>(</td> 1039 <h2 class="memtitle"><span class="permalink"><a href="#a94f855a2cf674ccc2e7315484f706d68">&#9670;&nbsp;</a></span>getPreferredBlockSize()</h2>
814 <td class="paramname"></td><td>)</td> 1040
815 <td> const<code> [virtual, inherited]</code></td> 1041 <div class="memitem">
816 </tr> 1042 <div class="memproto">
817 </table> 1043 <table class="mlabels">
818 </div> 1044 <tr>
819 <div class="memdoc"> 1045 <td class="mlabels-left">
820 1046 <table class="memname">
821 <p>Get the preferred block size (window size -- the number of sample frames passed in each block to the <a class="el" href="classVamp_1_1HostExt_1_1PluginWrapper.html#a6bd72d6dfb3047524dbe8ae3294527cf" title="Process a single block of input data.">process()</a> function). </p> 1047 <tr>
822 <p>This should be called before <a class="el" href="classVamp_1_1HostExt_1_1PluginWrapper.html#aa5a1f8290d8e9a315695584dcb3ad137" title="Initialise a plugin to prepare it for use with the given number of input channels, step size (window increment, in sample frames) and block size (window size, in sample frames).">initialise()</a>.</p> 1048 <td class="memname">size_t Vamp::HostExt::PluginWrapper::getPreferredBlockSize </td>
823 <p>A plugin that can handle any block size may return 0. The final block size will be set in the <a class="el" href="classVamp_1_1HostExt_1_1PluginWrapper.html#aa5a1f8290d8e9a315695584dcb3ad137" title="Initialise a plugin to prepare it for use with the given number of input channels, step size (window increment, in sample frames) and block size (window size, in sample frames).">initialise()</a> call. </p> 1049 <td>(</td>
824 1050 <td class="paramname"></td><td>)</td>
825 <p>Reimplemented from <a class="el" href="classVamp_1_1Plugin.html#aa529adf83f87a603954eb31407602aac">Vamp::Plugin</a>.</p> 1051 <td> const</td>
826 1052 </tr>
827 <p>Reimplemented in <a class="el" href="classVamp_1_1HostExt_1_1PluginBufferingAdapter.html#a21e45180b19873f9ab69fe7a4e184a03">Vamp::HostExt::PluginBufferingAdapter</a>, and <a class="el" href="classVamp_1_1HostExt_1_1PluginInputDomainAdapter.html#a4cf40d09d02022b1962ff17bb0324ea5">Vamp::HostExt::PluginInputDomainAdapter</a>.</p> 1053 </table>
828 1054 </td>
829 </div> 1055 <td class="mlabels-right">
830 </div> 1056 <span class="mlabels"><span class="mlabel">virtual</span><span class="mlabel">inherited</span></span> </td>
831 <a class="anchor" id="a2b28f1cf37d46a514f1e1411a6037bf8"></a> 1057 </tr>
832 <div class="memitem"> 1058 </table>
833 <div class="memproto"> 1059 </div><div class="memdoc">
834 <table class="memname"> 1060
835 <tr> 1061 <p>Get the preferred block size (window size &ndash; the number of sample frames passed in each block to the <a class="el" href="classVamp_1_1HostExt_1_1PluginChannelAdapter.html#a6ff37bf754ff8711dbcb2f020fa3902c" title="Process a single block of input data. ">process()</a> function). </p>
836 <td class="memname">size_t <a class="el" href="classVamp_1_1HostExt_1_1PluginWrapper.html#a2b28f1cf37d46a514f1e1411a6037bf8">Vamp::HostExt::PluginWrapper::getMinChannelCount</a> </td> 1062 <p>This should be called before <a class="el" href="classVamp_1_1HostExt_1_1PluginChannelAdapter.html#ade0473c8fc54636431967cbf41649c1c" title="Initialise a plugin to prepare it for use with the given number of input channels, step size (window increment, in sample frames) and block size (window size, in sample frames). ">initialise()</a>.</p>
837 <td>(</td> 1063 <p>A plugin that can handle any block size may return 0. The final block size will be set in the <a class="el" href="classVamp_1_1HostExt_1_1PluginChannelAdapter.html#ade0473c8fc54636431967cbf41649c1c" title="Initialise a plugin to prepare it for use with the given number of input channels, step size (window increment, in sample frames) and block size (window size, in sample frames). ">initialise()</a> call. </p>
838 <td class="paramname"></td><td>)</td> 1064
839 <td> const<code> [virtual, inherited]</code></td> 1065 <p>Reimplemented from <a class="el" href="classVamp_1_1Plugin.html#ae3b9c32b12796ece152388babad7cc7d">Vamp::Plugin</a>.</p>
840 </tr> 1066
841 </table> 1067 </div>
842 </div> 1068 </div>
843 <div class="memdoc"> 1069 <a id="abc0a4e6ce0ae9de39c40725de1f30d2f"></a>
1070 <h2 class="memtitle"><span class="permalink"><a href="#abc0a4e6ce0ae9de39c40725de1f30d2f">&#9670;&nbsp;</a></span>getMinChannelCount()</h2>
1071
1072 <div class="memitem">
1073 <div class="memproto">
1074 <table class="mlabels">
1075 <tr>
1076 <td class="mlabels-left">
1077 <table class="memname">
1078 <tr>
1079 <td class="memname">size_t Vamp::HostExt::PluginWrapper::getMinChannelCount </td>
1080 <td>(</td>
1081 <td class="paramname"></td><td>)</td>
1082 <td> const</td>
1083 </tr>
1084 </table>
1085 </td>
1086 <td class="mlabels-right">
1087 <span class="mlabels"><span class="mlabel">virtual</span><span class="mlabel">inherited</span></span> </td>
1088 </tr>
1089 </table>
1090 </div><div class="memdoc">
844 1091
845 <p>Get the minimum supported number of input channels. </p> 1092 <p>Get the minimum supported number of input channels. </p>
846 1093
847 <p>Reimplemented from <a class="el" href="classVamp_1_1Plugin.html#a267b42e866df3cf0d190893e8096f525">Vamp::Plugin</a>.</p> 1094 <p>Reimplemented from <a class="el" href="classVamp_1_1Plugin.html#ab74f7634c6ac6e3da115667808a79c30">Vamp::Plugin</a>.</p>
848 1095
849 </div> 1096 </div>
850 </div> 1097 </div>
851 <a class="anchor" id="a985eb21f1827bfbc3950d6871b107a58"></a> 1098 <a id="acfed040cd91e797ee89d077db22b4a97"></a>
852 <div class="memitem"> 1099 <h2 class="memtitle"><span class="permalink"><a href="#acfed040cd91e797ee89d077db22b4a97">&#9670;&nbsp;</a></span>getMaxChannelCount()</h2>
853 <div class="memproto"> 1100
854 <table class="memname"> 1101 <div class="memitem">
855 <tr> 1102 <div class="memproto">
856 <td class="memname">size_t <a class="el" href="classVamp_1_1HostExt_1_1PluginWrapper.html#a985eb21f1827bfbc3950d6871b107a58">Vamp::HostExt::PluginWrapper::getMaxChannelCount</a> </td> 1103 <table class="mlabels">
857 <td>(</td> 1104 <tr>
858 <td class="paramname"></td><td>)</td> 1105 <td class="mlabels-left">
859 <td> const<code> [virtual, inherited]</code></td> 1106 <table class="memname">
860 </tr> 1107 <tr>
861 </table> 1108 <td class="memname">size_t Vamp::HostExt::PluginWrapper::getMaxChannelCount </td>
862 </div> 1109 <td>(</td>
863 <div class="memdoc"> 1110 <td class="paramname"></td><td>)</td>
1111 <td> const</td>
1112 </tr>
1113 </table>
1114 </td>
1115 <td class="mlabels-right">
1116 <span class="mlabels"><span class="mlabel">virtual</span><span class="mlabel">inherited</span></span> </td>
1117 </tr>
1118 </table>
1119 </div><div class="memdoc">
864 1120
865 <p>Get the maximum supported number of input channels. </p> 1121 <p>Get the maximum supported number of input channels. </p>
866 1122
867 <p>Reimplemented from <a class="el" href="classVamp_1_1Plugin.html#a2c5ab12b6fa4847cb244bd1e9cb3ae5e">Vamp::Plugin</a>.</p> 1123 <p>Reimplemented from <a class="el" href="classVamp_1_1Plugin.html#a0bff9464bc8c117470136c396b2405dd">Vamp::Plugin</a>.</p>
868 1124
869 </div> 1125 </div>
870 </div> 1126 </div>
871 <a class="anchor" id="a5a9411305f713b4c9827844b89acd270"></a> 1127 <a id="af67a6cd3afa18895393ec8d4bdec3b4c"></a>
872 <div class="memitem"> 1128 <h2 class="memtitle"><span class="permalink"><a href="#af67a6cd3afa18895393ec8d4bdec3b4c">&#9670;&nbsp;</a></span>getOutputDescriptors()</h2>
873 <div class="memproto"> 1129
874 <table class="memname"> 1130 <div class="memitem">
875 <tr> 1131 <div class="memproto">
876 <td class="memname"><a class="el" href="classVamp_1_1Plugin.html#a30f531b8fb69fac41a24e3d2a6a08ed9">OutputList</a> <a class="el" href="classVamp_1_1HostExt_1_1PluginWrapper.html#a5a9411305f713b4c9827844b89acd270">Vamp::HostExt::PluginWrapper::getOutputDescriptors</a> </td> 1132 <table class="mlabels">
877 <td>(</td> 1133 <tr>
878 <td class="paramname"></td><td>)</td> 1134 <td class="mlabels-left">
879 <td> const<code> [virtual, inherited]</code></td> 1135 <table class="memname">
880 </tr> 1136 <tr>
881 </table> 1137 <td class="memname"><a class="el" href="classVamp_1_1Plugin.html#a30f531b8fb69fac41a24e3d2a6a08ed9">OutputList</a> Vamp::HostExt::PluginWrapper::getOutputDescriptors </td>
882 </div> 1138 <td>(</td>
883 <div class="memdoc"> 1139 <td class="paramname"></td><td>)</td>
1140 <td> const</td>
1141 </tr>
1142 </table>
1143 </td>
1144 <td class="mlabels-right">
1145 <span class="mlabels"><span class="mlabel">virtual</span><span class="mlabel">inherited</span></span> </td>
1146 </tr>
1147 </table>
1148 </div><div class="memdoc">
884 1149
885 <p>Get the outputs of this plugin. </p> 1150 <p>Get the outputs of this plugin. </p>
886 <p>An output's index in this list is used as its numeric index when looking it up in the FeatureSet returned from the <a class="el" href="classVamp_1_1HostExt_1_1PluginWrapper.html#a6bd72d6dfb3047524dbe8ae3294527cf" title="Process a single block of input data.">process()</a> call. </p> 1151 <p>An output's index in this list is used as its numeric index when looking it up in the FeatureSet returned from the <a class="el" href="classVamp_1_1HostExt_1_1PluginChannelAdapter.html#a6ff37bf754ff8711dbcb2f020fa3902c" title="Process a single block of input data. ">process()</a> call. </p>
887 1152
888 <p>Implements <a class="el" href="classVamp_1_1Plugin.html#ad064d5d132b5c9bd7064f429c3309e35">Vamp::Plugin</a>.</p> 1153 <p>Implements <a class="el" href="classVamp_1_1Plugin.html#ad064d5d132b5c9bd7064f429c3309e35">Vamp::Plugin</a>.</p>
889 1154
890 <p>Reimplemented in <a class="el" href="classVamp_1_1HostExt_1_1PluginBufferingAdapter.html#af8cc914897a284433de220f1153f3845">Vamp::HostExt::PluginBufferingAdapter</a>.</p> 1155 </div>
891 1156 </div>
892 </div> 1157 <a id="a2bc8c0992e64f06991fb7cf89f99857e"></a>
893 </div> 1158 <h2 class="memtitle"><span class="permalink"><a href="#a2bc8c0992e64f06991fb7cf89f99857e">&#9670;&nbsp;</a></span>getRemainingFeatures()</h2>
894 <a class="anchor" id="a2bc8c0992e64f06991fb7cf89f99857e"></a> 1159
895 <div class="memitem"> 1160 <div class="memitem">
896 <div class="memproto"> 1161 <div class="memproto">
897 <table class="memname"> 1162 <table class="mlabels">
898 <tr> 1163 <tr>
899 <td class="memname"><a class="el" href="classVamp_1_1Plugin.html#a448fb57dc245d47923ec9eeaf9856c5f">FeatureSet</a> <a class="el" href="classVamp_1_1HostExt_1_1PluginWrapper.html#a2bc8c0992e64f06991fb7cf89f99857e">Vamp::HostExt::PluginWrapper::getRemainingFeatures</a> </td> 1164 <td class="mlabels-left">
900 <td>(</td> 1165 <table class="memname">
901 <td class="paramname"></td><td>)</td> 1166 <tr>
902 <td><code> [virtual, inherited]</code></td> 1167 <td class="memname"><a class="el" href="classVamp_1_1Plugin.html#a448fb57dc245d47923ec9eeaf9856c5f">FeatureSet</a> Vamp::HostExt::PluginWrapper::getRemainingFeatures </td>
903 </tr> 1168 <td>(</td>
904 </table> 1169 <td class="paramname"></td><td>)</td>
905 </div> 1170 <td></td>
906 <div class="memdoc"> 1171 </tr>
1172 </table>
1173 </td>
1174 <td class="mlabels-right">
1175 <span class="mlabels"><span class="mlabel">virtual</span><span class="mlabel">inherited</span></span> </td>
1176 </tr>
1177 </table>
1178 </div><div class="memdoc">
907 1179
908 <p>After all blocks have been processed, calculate and return any remaining features derived from the complete input. </p> 1180 <p>After all blocks have been processed, calculate and return any remaining features derived from the complete input. </p>
909 1181
910 <p>Implements <a class="el" href="classVamp_1_1Plugin.html#aeca2a26e658ba0314ba90d25dd2195d6">Vamp::Plugin</a>.</p> 1182 <p>Implements <a class="el" href="classVamp_1_1Plugin.html#aeca2a26e658ba0314ba90d25dd2195d6">Vamp::Plugin</a>.</p>
911 1183
912 <p>Reimplemented in <a class="el" href="classVamp_1_1HostExt_1_1PluginBufferingAdapter.html#a28423951b2eda1a1fc371485434f417b">Vamp::HostExt::PluginBufferingAdapter</a>, and <a class="el" href="classVamp_1_1HostExt_1_1PluginSummarisingAdapter.html#ae9dcbd1ba8197ff90b4fc6bf7ade7688">Vamp::HostExt::PluginSummarisingAdapter</a>.</p> 1184 </div>
913 1185 </div>
914 </div> 1186 <a id="a653d0308e8e34881a8749b7631d00f05"></a>
915 </div> 1187 <h2 class="memtitle"><span class="permalink"><a href="#a653d0308e8e34881a8749b7631d00f05">&#9670;&nbsp;</a></span>getWrapper()</h2>
916 <a class="anchor" id="a653d0308e8e34881a8749b7631d00f05"></a> 1188
917 <div class="memitem"> 1189 <div class="memitem">
918 <div class="memproto"> 1190 <div class="memproto">
919 <div class="memtemplate"> 1191 <div class="memtemplate">
920 template&lt;typename WrapperType &gt; </div> 1192 template&lt;typename WrapperType &gt; </div>
921 <table class="memname"> 1193 <table class="mlabels">
922 <tr> 1194 <tr>
923 <td class="memname">WrapperType* <a class="el" href="classVamp_1_1HostExt_1_1PluginWrapper.html#a653d0308e8e34881a8749b7631d00f05">Vamp::HostExt::PluginWrapper::getWrapper</a> </td> 1195 <td class="mlabels-left">
924 <td>(</td> 1196 <table class="memname">
925 <td class="paramname"></td><td>)</td> 1197 <tr>
926 <td><code> [inline, inherited]</code></td> 1198 <td class="memname">WrapperType* Vamp::HostExt::PluginWrapper::getWrapper </td>
927 </tr> 1199 <td>(</td>
928 </table> 1200 <td class="paramname"></td><td>)</td>
929 </div> 1201 <td></td>
930 <div class="memdoc"> 1202 </tr>
1203 </table>
1204 </td>
1205 <td class="mlabels-right">
1206 <span class="mlabels"><span class="mlabel">inline</span><span class="mlabel">inherited</span></span> </td>
1207 </tr>
1208 </table>
1209 </div><div class="memdoc">
931 1210
932 <p>Return a pointer to the plugin wrapper of type WrapperType surrounding this wrapper's plugin, if present. </p> 1211 <p>Return a pointer to the plugin wrapper of type WrapperType surrounding this wrapper's plugin, if present. </p>
933 <p>This is useful in situations where a plugin is wrapped by multiple different wrappers (one inside another) and the host wants to call some wrapper-specific function on one of the layers without having to care about the order in which they are wrapped. For example, the plugin returned by <a class="el" href="classVamp_1_1HostExt_1_1PluginLoader.html#a964689eb9688cd7e58e8c82ebb0d305f" title="Load a Vamp plugin, given its identifying key.">PluginLoader::loadPlugin</a> may have more than one wrapper; if the host wanted to query or fine-tune some property of one of them, it would be hard to do so without knowing the order of the wrappers. This function therefore gives direct access to the wrapper of a particular type. </p> 1212 <p>This is useful in situations where a plugin is wrapped by multiple different wrappers (one inside another) and the host wants to call some wrapper-specific function on one of the layers without having to care about the order in which they are wrapped. For example, the plugin returned by <a class="el" href="classVamp_1_1HostExt_1_1PluginLoader.html#a964689eb9688cd7e58e8c82ebb0d305f" title="Load a Vamp plugin, given its identifying key. ">PluginLoader::loadPlugin</a> may have more than one wrapper; if the host wanted to query or fine-tune some property of one of them, it would be hard to do so without knowing the order of the wrappers. This function therefore gives direct access to the wrapper of a particular type. </p>
934 1213
935 <p>Definition at line <a class="el" href="PluginWrapper_8h_source.html#l00116">116</a> of file <a class="el" href="PluginWrapper_8h_source.html">PluginWrapper.h</a>.</p> 1214 <p class="definition">Definition at line <a class="el" href="PluginWrapper_8h_source.html#l00116">116</a> of file <a class="el" href="PluginWrapper_8h_source.html">PluginWrapper.h</a>.</p>
936 1215
937 <p>References <a class="el" href="PluginWrapper_8h_source.html#l00116">Vamp::HostExt::PluginWrapper::getWrapper()</a>.</p> 1216 <p class="reference">References <a class="el" href="PluginWrapper_8h_source.html#l00116">Vamp::HostExt::PluginWrapper::getWrapper()</a>.</p>
938 1217
939 <p>Referenced by <a class="el" href="PluginWrapper_8h_source.html#l00116">Vamp::HostExt::PluginWrapper::getWrapper()</a>, and <a class="el" href="vamp-simple-host_8cpp_source.html#l00265">runPlugin()</a>.</p> 1218 <p class="reference">Referenced by <a class="el" href="PluginWrapper_8h_source.html#l00116">Vamp::HostExt::PluginWrapper::getWrapper()</a>, and <a class="el" href="vamp-simple-host_8cpp_source.html#l00268">runPlugin()</a>.</p>
940 1219
941 </div> 1220 </div>
942 </div> 1221 </div>
943 <a class="anchor" id="abe13b3997a69fbcc09e2213faa352f91"></a> 1222 <a id="a530123068767a8728c568ffccfe3e4e5"></a>
944 <div class="memitem"> 1223 <h2 class="memtitle"><span class="permalink"><a href="#a530123068767a8728c568ffccfe3e4e5">&#9670;&nbsp;</a></span>getType()</h2>
945 <div class="memproto"> 1224
946 <table class="memname"> 1225 <div class="memitem">
947 <tr> 1226 <div class="memproto">
948 <td class="memname">virtual std::string <a class="el" href="classVamp_1_1Plugin.html#abe13b3997a69fbcc09e2213faa352f91">Vamp::Plugin::getType</a> </td> 1227 <table class="mlabels">
949 <td>(</td> 1228 <tr>
950 <td class="paramname"></td><td>)</td> 1229 <td class="mlabels-left">
951 <td> const<code> [inline, virtual, inherited]</code></td> 1230 <table class="memname">
952 </tr> 1231 <tr>
953 </table> 1232 <td class="memname">virtual std::string Vamp::Plugin::getType </td>
954 </div> 1233 <td>(</td>
955 <div class="memdoc"> 1234 <td class="paramname"></td><td>)</td>
956 1235 <td> const</td>
957 <p>Used to distinguish between <a class="el" href="classVamp_1_1Plugin.html" title="Vamp::Plugin is a base class for plugin instance classes that provide feature extraction from audio o...">Vamp::Plugin</a> and other potential sibling subclasses of <a class="el" href="classVamp_1_1PluginBase.html" title="A base class for plugins with optional configurable parameters, programs, etc.">PluginBase</a>. </p> 1236 </tr>
1237 </table>
1238 </td>
1239 <td class="mlabels-right">
1240 <span class="mlabels"><span class="mlabel">inline</span><span class="mlabel">virtual</span><span class="mlabel">inherited</span></span> </td>
1241 </tr>
1242 </table>
1243 </div><div class="memdoc">
1244
1245 <p>Used to distinguish between <a class="el" href="classVamp_1_1Plugin.html" title="Vamp::Plugin is a base class for plugin instance classes that provide feature extraction from audio o...">Vamp::Plugin</a> and other potential sibling subclasses of <a class="el" href="classVamp_1_1PluginBase.html" title="A base class for plugins with optional configurable parameters, programs, etc. ">PluginBase</a>. </p>
958 <p>Do not reimplement this function in your subclass. </p> 1246 <p>Do not reimplement this function in your subclass. </p>
959 1247
960 <p>Implements <a class="el" href="classVamp_1_1PluginBase.html#a2da03e9ced8dc7e4382205e6dc05dbff">Vamp::PluginBase</a>.</p> 1248 <p>Implements <a class="el" href="classVamp_1_1PluginBase.html#a2da03e9ced8dc7e4382205e6dc05dbff">Vamp::PluginBase</a>.</p>
961 1249
962 <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> 1250 <p class="definition">Definition at line <a class="el" href="vamp-sdk_2Plugin_8h_source.html#l00438">438</a> of file <a class="el" href="vamp-sdk_2Plugin_8h_source.html">vamp-sdk/Plugin.h</a>.</p>
963 1251
964 </div> 1252 </div>
965 </div> 1253 </div>
966 <hr/><h2>Member Data Documentation</h2> 1254 <h2 class="groupheader">Member Data Documentation</h2>
967 <a class="anchor" id="ae3a74a2e6c4cd33dce9f4248e73c6701"></a> 1255 <a id="ae3a74a2e6c4cd33dce9f4248e73c6701"></a>
968 <div class="memitem"> 1256 <h2 class="memtitle"><span class="permalink"><a href="#ae3a74a2e6c4cd33dce9f4248e73c6701">&#9670;&nbsp;</a></span>m_impl</h2>
969 <div class="memproto"> 1257
970 <table class="memname"> 1258 <div class="memitem">
971 <tr> 1259 <div class="memproto">
972 <td class="memname">Impl* <a class="el" href="classVamp_1_1HostExt_1_1PluginChannelAdapter.html#ae3a74a2e6c4cd33dce9f4248e73c6701">Vamp::HostExt::PluginChannelAdapter::m_impl</a><code> [protected]</code></td> 1260 <table class="mlabels">
973 </tr> 1261 <tr>
974 </table> 1262 <td class="mlabels-left">
975 </div> 1263 <table class="memname">
976 <div class="memdoc"> 1264 <tr>
977 1265 <td class="memname">Impl* Vamp::HostExt::PluginChannelAdapter::m_impl</td>
978 <p>Definition at line <a class="el" href="PluginChannelAdapter_8h_source.html#l00139">139</a> of file <a class="el" href="PluginChannelAdapter_8h_source.html">PluginChannelAdapter.h</a>.</p> 1266 </tr>
979 1267 </table>
980 </div> 1268 </td>
981 </div> 1269 <td class="mlabels-right">
982 <a class="anchor" id="ab4e40ecd98b445e1a2aa9e7baa280ea2"></a> 1270 <span class="mlabels"><span class="mlabel">protected</span></span> </td>
983 <div class="memitem"> 1271 </tr>
984 <div class="memproto"> 1272 </table>
985 <table class="memname"> 1273 </div><div class="memdoc">
986 <tr> 1274
987 <td class="memname"><a class="el" href="classVamp_1_1Plugin.html">Plugin</a>* <a class="el" href="classVamp_1_1HostExt_1_1PluginWrapper.html#ab4e40ecd98b445e1a2aa9e7baa280ea2">Vamp::HostExt::PluginWrapper::m_plugin</a><code> [protected, inherited]</code></td> 1275 <p class="definition">Definition at line <a class="el" href="PluginChannelAdapter_8h_source.html#l00139">139</a> of file <a class="el" href="PluginChannelAdapter_8h_source.html">PluginChannelAdapter.h</a>.</p>
988 </tr> 1276
989 </table> 1277 </div>
990 </div> 1278 </div>
991 <div class="memdoc"> 1279 <a id="ab4e40ecd98b445e1a2aa9e7baa280ea2"></a>
992 1280 <h2 class="memtitle"><span class="permalink"><a href="#ab4e40ecd98b445e1a2aa9e7baa280ea2">&#9670;&nbsp;</a></span>m_plugin</h2>
993 <p>Definition at line <a class="el" href="PluginWrapper_8h_source.html#l00126">126</a> of file <a class="el" href="PluginWrapper_8h_source.html">PluginWrapper.h</a>.</p> 1281
994 1282 <div class="memitem">
995 </div> 1283 <div class="memproto">
996 </div> 1284 <table class="mlabels">
997 <a class="anchor" id="a59b9dd82a4f4eb946cd0474cc81abc23"></a> 1285 <tr>
998 <div class="memitem"> 1286 <td class="mlabels-left">
999 <div class="memproto"> 1287 <table class="memname">
1000 <table class="memname"> 1288 <tr>
1001 <tr> 1289 <td class="memname"><a class="el" href="classVamp_1_1Plugin.html">Plugin</a>* Vamp::HostExt::PluginWrapper::m_plugin</td>
1002 <td class="memname">float <a class="el" href="classVamp_1_1Plugin.html#a59b9dd82a4f4eb946cd0474cc81abc23">Vamp::Plugin::m_inputSampleRate</a><code> [protected, inherited]</code></td> 1290 </tr>
1003 </tr> 1291 </table>
1004 </table> 1292 </td>
1005 </div> 1293 <td class="mlabels-right">
1006 <div class="memdoc"> 1294 <span class="mlabels"><span class="mlabel">protected</span><span class="mlabel">inherited</span></span> </td>
1007 1295 </tr>
1008 <p>Definition at line <a class="el" href="vamp-sdk_2Plugin_8h_source.html#l00436">436</a> of file <a class="el" href="vamp-sdk_2Plugin_8h_source.html">vamp-sdk/Plugin.h</a>.</p> 1296 </table>
1009 1297 </div><div class="memdoc">
1010 <p>Referenced by <a class="el" href="FixedTempoEstimator_8cpp_source.html#l00481">FixedTempoEstimator::D::assembleFeatures()</a>, <a class="el" href="FixedTempoEstimator_8cpp_source.html#l00375">FixedTempoEstimator::D::calculate()</a>, <a class="el" href="FixedTempoEstimator_8cpp_source.html#l00190">FixedTempoEstimator::D::getOutputDescriptors()</a>, <a class="el" href="ZeroCrossing_8cpp_source.html#l00111">ZeroCrossing::getOutputDescriptors()</a>, <a class="el" href="PercussionOnsetDetector_8cpp_source.html#l00196">PercussionOnsetDetector::getOutputDescriptors()</a>, <a class="el" href="AmplitudeFollower_8cpp_source.html#l00105">AmplitudeFollower::initialise()</a>, <a class="el" href="FixedTempoEstimator_8cpp_source.html#l00252">FixedTempoEstimator::D::initialise()</a>, <a class="el" href="FixedTempoEstimator_8cpp_source.html#l00363">FixedTempoEstimator::D::lag2tempo()</a>, <a class="el" href="ZeroCrossing_8cpp_source.html#l00142">ZeroCrossing::process()</a>, <a class="el" href="SpectralCentroid_8cpp_source.html#l00146">SpectralCentroid::process()</a>, <a class="el" href="PercussionOnsetDetector_8cpp_source.html#l00226">PercussionOnsetDetector::process()</a>, and <a class="el" href="FixedTempoEstimator_8cpp_source.html#l00369">FixedTempoEstimator::D::tempo2lag()</a>.</p> 1298
1299 <p class="definition">Definition at line <a class="el" href="PluginWrapper_8h_source.html#l00126">126</a> of file <a class="el" href="PluginWrapper_8h_source.html">PluginWrapper.h</a>.</p>
1300
1301 </div>
1302 </div>
1303 <a id="a59b9dd82a4f4eb946cd0474cc81abc23"></a>
1304 <h2 class="memtitle"><span class="permalink"><a href="#a59b9dd82a4f4eb946cd0474cc81abc23">&#9670;&nbsp;</a></span>m_inputSampleRate</h2>
1305
1306 <div class="memitem">
1307 <div class="memproto">
1308 <table class="mlabels">
1309 <tr>
1310 <td class="mlabels-left">
1311 <table class="memname">
1312 <tr>
1313 <td class="memname">float Vamp::Plugin::m_inputSampleRate</td>
1314 </tr>
1315 </table>
1316 </td>
1317 <td class="mlabels-right">
1318 <span class="mlabels"><span class="mlabel">protected</span><span class="mlabel">inherited</span></span> </td>
1319 </tr>
1320 </table>
1321 </div><div class="memdoc">
1322
1323 <p class="definition">Definition at line <a class="el" href="vamp-sdk_2Plugin_8h_source.html#l00444">444</a> of file <a class="el" href="vamp-sdk_2Plugin_8h_source.html">vamp-sdk/Plugin.h</a>.</p>
1324
1325 <p class="reference">Referenced by <a class="el" href="ZeroCrossing_8cpp_source.html#l00112">ZeroCrossing::getOutputDescriptors()</a>, <a class="el" href="PercussionOnsetDetector_8cpp_source.html#l00196">PercussionOnsetDetector::getOutputDescriptors()</a>, <a class="el" href="AmplitudeFollower_8cpp_source.html#l00106">AmplitudeFollower::initialise()</a>, <a class="el" href="SpectralCentroid_8cpp_source.html#l00146">SpectralCentroid::process()</a>, <a class="el" href="ZeroCrossing_8cpp_source.html#l00143">ZeroCrossing::process()</a>, and <a class="el" href="PercussionOnsetDetector_8cpp_source.html#l00226">PercussionOnsetDetector::process()</a>.</p>
1011 1326
1012 </div> 1327 </div>
1013 </div> 1328 </div>
1014 <hr/>The documentation for this class was generated from the following file:<ul> 1329 <hr/>The documentation for this class was generated from the following file:<ul>
1015 <li><a class="el" href="PluginChannelAdapter_8h_source.html">PluginChannelAdapter.h</a></li> 1330 <li><a class="el" href="PluginChannelAdapter_8h_source.html">PluginChannelAdapter.h</a></li>
1016 </ul> 1331 </ul>
1017 </div><!-- contents --> 1332 </div><!-- contents -->
1018 </div> 1333 </div><!-- doc-content -->
1019 <div id="nav-path" class="navpath"> 1334 <!-- start footer part -->
1020 <ul> 1335 <div id="nav-path" class="navpath"><!-- id is needed for treeview function! -->
1021 <li class="navelem"><a class="el" href="namespaceVamp.html">Vamp</a> </li> 1336 <ul>
1022 <li class="navelem"><a class="el" href="namespaceVamp_1_1HostExt.html">HostExt</a> </li> 1337 <li class="navelem"><a class="el" href="namespaceVamp.html">Vamp</a></li><li class="navelem"><a class="el" href="namespaceVamp_1_1HostExt.html">HostExt</a></li><li class="navelem"><a class="el" href="classVamp_1_1HostExt_1_1PluginChannelAdapter.html">PluginChannelAdapter</a></li>
1023 <li class="navelem"><a class="el" href="classVamp_1_1HostExt_1_1PluginChannelAdapter.html">PluginChannelAdapter</a> </li> 1338 <li class="footer">Generated by
1024
1025 <li class="footer">Generated on Fri Jul 13 2012 13:28:49 for VampPluginSDK by
1026 <a href="http://www.doxygen.org/index.html"> 1339 <a href="http://www.doxygen.org/index.html">
1027 <img class="footer" src="doxygen.png" alt="doxygen"/></a> 1.8.0 </li> 1340 <img class="footer" src="doxygen.png" alt="doxygen"/></a> 1.8.13 </li>
1028 </ul> 1341 </ul>
1029 </div> 1342 </div>
1030
1031
1032 </body> 1343 </body>
1033 </html> 1344 </html>