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

Update for 2.4
author Chris Cannam
date Fri, 13 Jul 2012 13:30:27 +0100
parents 3c430ef1ed66
children 27319718b1f8
rev   line source
Chris@1 1 <!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Transitional//EN" "http://www.w3.org/TR/xhtml1/DTD/xhtml1-transitional.dtd">
Chris@1 2 <html xmlns="http://www.w3.org/1999/xhtml">
Chris@1 3 <head>
Chris@1 4 <meta http-equiv="Content-Type" content="text/xhtml;charset=UTF-8"/>
Chris@3 5 <meta http-equiv="X-UA-Compatible" content="IE=9"/>
Chris@1 6 <title>VampPluginSDK: Vamp::PluginBase Class Reference</title>
Chris@1 7
Chris@1 8 <link href="tabs.css" rel="stylesheet" type="text/css"/>
Chris@1 9 <link href="doxygen.css" rel="stylesheet" type="text/css" />
Chris@1 10 <link href="navtree.css" rel="stylesheet" type="text/css"/>
Chris@1 11 <script type="text/javascript" src="jquery.js"></script>
Chris@1 12 <script type="text/javascript" src="resize.js"></script>
Chris@1 13 <script type="text/javascript" src="navtree.js"></script>
Chris@1 14 <script type="text/javascript">
Chris@1 15 $(document).ready(initResizable);
Chris@1 16 </script>
Chris@1 17
Chris@1 18
Chris@1 19 </head>
Chris@1 20 <body>
Chris@1 21 <div id="top"><!-- do not remove this div! -->
Chris@1 22
Chris@1 23
Chris@1 24 <div id="titlearea">
Chris@1 25 <table cellspacing="0" cellpadding="0">
Chris@1 26 <tbody>
Chris@1 27 <tr style="height: 56px;">
Chris@1 28
Chris@1 29
Chris@1 30 <td style="padding-left: 0.5em;">
Chris@1 31 <div id="projectname">VampPluginSDK
Chris@3 32 &#160;<span id="projectnumber">2.4</span>
Chris@1 33 </div>
Chris@1 34
Chris@1 35 </td>
Chris@1 36
Chris@1 37
Chris@1 38
Chris@1 39 </tr>
Chris@1 40 </tbody>
Chris@1 41 </table>
Chris@1 42 </div>
Chris@1 43
Chris@3 44 <!-- Generated by Doxygen 1.8.0 -->
Chris@1 45 <div id="navrow1" class="tabs">
Chris@1 46 <ul class="tablist">
Chris@1 47 <li><a href="index.html"><span>Main&#160;Page</span></a></li>
Chris@1 48 <li><a href="namespaces.html"><span>Namespaces</span></a></li>
Chris@1 49 <li class="current"><a href="annotated.html"><span>Classes</span></a></li>
Chris@1 50 <li><a href="files.html"><span>Files</span></a></li>
Chris@1 51 <li><a href="dirs.html"><span>Directories</span></a></li>
Chris@1 52 </ul>
Chris@1 53 </div>
Chris@1 54 <div id="navrow2" class="tabs2">
Chris@1 55 <ul class="tablist">
Chris@1 56 <li><a href="annotated.html"><span>Class&#160;List</span></a></li>
Chris@1 57 <li><a href="inherits.html"><span>Class&#160;Hierarchy</span></a></li>
Chris@1 58 <li><a href="functions.html"><span>Class&#160;Members</span></a></li>
Chris@1 59 </ul>
Chris@1 60 </div>
Chris@1 61 </div>
Chris@1 62 <div id="side-nav" class="ui-resizable side-nav-resizable">
Chris@1 63 <div id="nav-tree">
Chris@1 64 <div id="nav-tree-contents">
Chris@1 65 </div>
Chris@1 66 </div>
Chris@1 67 <div id="splitbar" style="-moz-user-select:none;"
Chris@1 68 class="ui-resizable-handle">
Chris@1 69 </div>
Chris@1 70 </div>
Chris@1 71 <script type="text/javascript">
Chris@1 72 initNavTree('classVamp_1_1PluginBase.html','');
Chris@1 73 </script>
Chris@1 74 <div id="doc-content">
Chris@1 75 <div class="header">
Chris@1 76 <div class="summary">
Chris@1 77 <a href="#nested-classes">Classes</a> &#124;
Chris@1 78 <a href="#pub-types">Public Types</a> &#124;
Chris@1 79 <a href="#pub-methods">Public Member Functions</a> </div>
Chris@1 80 <div class="headertitle">
Chris@1 81 <div class="title">Vamp::PluginBase Class Reference</div> </div>
Chris@3 82 </div><!--header-->
Chris@1 83 <div class="contents">
Chris@3 84
Chris@1 85 <p>A base class for plugins with optional configurable parameters, programs, etc.
Chris@1 86 <a href="classVamp_1_1PluginBase.html#details">More...</a></p>
Chris@1 87
Chris@1 88 <p><code>#include &lt;<a class="el" href="vamp-sdk_2PluginBase_8h_source.html">PluginBase.h</a>&gt;</code></p>
Chris@1 89 <div class="dynheader">
Chris@1 90 Inheritance diagram for Vamp::PluginBase:</div>
Chris@1 91 <div class="dyncontent">
Chris@1 92 <div class="center"><img src="classVamp_1_1PluginBase__inherit__graph.png" border="0" usemap="#Vamp_1_1PluginBase_inherit__map" alt="Inheritance graph"/></div>
Chris@1 93 <map name="Vamp_1_1PluginBase_inherit__map" id="Vamp_1_1PluginBase_inherit__map">
Chris@1 94 <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="174,178,266,203"/><area shape="rect" id="node5" href="classAmplitudeFollower.html" title="Example plugin implementing the SuperCollider amplitude follower function." alt="" coords="345,5,468,30"/><area shape="rect" id="node7" href="classFixedTempoEstimator.html" title="Example plugin that estimates the tempo of a short fixed&#45;tempo sample." alt="" coords="338,54,475,79"/><area shape="rect" id="node9" href="classPercussionOnsetDetector.html" title="Example plugin that detects percussive events." alt="" coords="329,103,484,129"/><area shape="rect" id="node11" href="classPowerSpectrum.html" title="Example plugin that returns a power spectrum calculated (trivially) from the frequency domain represe..." alt="" coords="353,153,460,178"/><area shape="rect" id="node13" href="classSpectralCentroid.html" title="Example plugin that calculates the centre of gravity of the frequency domain representation of each b..." alt="" coords="351,202,463,227"/><area shape="rect" id="node15" href="classVamp_1_1HostExt_1_1PluginWrapper.html" title="PluginWrapper is a simple base class for adapter plugins." alt="" coords="315,251,499,277"/><area shape="rect" id="node25" href="classVamp_1_1PluginHostAdapter.html" title="PluginHostAdapter is a wrapper class that a Vamp host can use to make the C&#45;language VampPluginDescri..." alt="" coords="327,301,486,326"/><area shape="rect" id="node27" href="classZeroCrossing.html" title="Example plugin that calculates the positions and density of zero&#45;crossing points in an audio waveform..." alt="" coords="360,350,453,375"/><area shape="rect" id="node17" href="classVamp_1_1HostExt_1_1PluginBufferingAdapter.html" title="PluginBufferingAdapter is a Vamp plugin adapter that allows plugins to be used by a host supplying an..." alt="" coords="558,178,789,203"/><area shape="rect" id="node19" href="classVamp_1_1HostExt_1_1PluginChannelAdapter.html" title="PluginChannelAdapter is a Vamp plugin adapter that implements a policy for management of plugins that..." alt="" coords="560,227,787,253"/><area shape="rect" id="node21" href="classVamp_1_1HostExt_1_1PluginInputDomainAdapter.html" title="PluginInputDomainAdapter is a Vamp plugin adapter that converts time&#45;domain input into frequency&#45;doma..." alt="" coords="547,277,800,302"/><area shape="rect" id="node23" href="classVamp_1_1HostExt_1_1PluginSummarisingAdapter.html" title="PluginSummarisingAdapter is a Vamp plugin adapter that provides summarisation methods such as mean an..." alt="" coords="547,326,800,351"/></map>
Chris@1 95 <center><span class="legend">[<a target="top" href="graph_legend.html">legend</a>]</span></center></div>
Chris@1 96
Chris@1 97 <p><a href="classVamp_1_1PluginBase-members.html">List of all members.</a></p>
Chris@1 98 <table class="memberdecls">
Chris@1 99 <tr><td colspan="2"><h2><a name="nested-classes"></a>
Chris@1 100 Classes</h2></td></tr>
Chris@3 101 <tr class="memitem:"><td class="memItemLeft" align="right" valign="top">struct &#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="structVamp_1_1PluginBase_1_1ParameterDescriptor.html">ParameterDescriptor</a></td></tr>
Chris@1 102 <tr><td colspan="2"><h2><a name="pub-types"></a>
Chris@1 103 Public Types</h2></td></tr>
Chris@3 104 <tr class="memitem:a3b6bb4bbd86affe1ca9deceea1aad4f8"><td class="memItemLeft" align="right" valign="top">typedef std::vector<br class="typebreak"/>
Chris@1 105 &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>
Chris@3 106 <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>
Chris@1 107 <tr><td colspan="2"><h2><a name="pub-methods"></a>
Chris@1 108 Public Member Functions</h2></td></tr>
Chris@3 109 <tr class="memitem:a3773b37c658cf22d7f135c575a28f5c5"><td class="memItemLeft" align="right" valign="top">virtual&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="classVamp_1_1PluginBase.html#a3773b37c658cf22d7f135c575a28f5c5">~PluginBase</a> ()</td></tr>
Chris@3 110 <tr class="memitem:a8fd2c48291c64b790f0efb8948508dcf"><td class="memItemLeft" align="right" valign="top">virtual unsigned int&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="classVamp_1_1PluginBase.html#a8fd2c48291c64b790f0efb8948508dcf">getVampApiVersion</a> () const </td></tr>
Chris@3 111 <tr class="memdesc:a8fd2c48291c64b790f0efb8948508dcf"><td class="mdescLeft">&#160;</td><td class="mdescRight">Get the <a class="el" href="namespaceVamp.html">Vamp</a> API compatibility level of the plugin. <a href="#a8fd2c48291c64b790f0efb8948508dcf"></a><br/></td></tr>
Chris@3 112 <tr class="memitem:ad1c6dfc77aa03d937a885b7f08258f4a"><td class="memItemLeft" align="right" valign="top">virtual std::string&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="classVamp_1_1PluginBase.html#ad1c6dfc77aa03d937a885b7f08258f4a">getIdentifier</a> () const =0</td></tr>
Chris@3 113 <tr class="memdesc:ad1c6dfc77aa03d937a885b7f08258f4a"><td class="mdescLeft">&#160;</td><td class="mdescRight">Get the computer-usable name of the plugin. <a href="#ad1c6dfc77aa03d937a885b7f08258f4a"></a><br/></td></tr>
Chris@3 114 <tr class="memitem:a18619d5097e444ecefee0c359da53232"><td class="memItemLeft" align="right" valign="top">virtual std::string&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="classVamp_1_1PluginBase.html#a18619d5097e444ecefee0c359da53232">getName</a> () const =0</td></tr>
Chris@3 115 <tr class="memdesc:a18619d5097e444ecefee0c359da53232"><td class="mdescLeft">&#160;</td><td class="mdescRight">Get a human-readable name or title of the plugin. <a href="#a18619d5097e444ecefee0c359da53232"></a><br/></td></tr>
Chris@3 116 <tr class="memitem:a59153a02364f75fff46973b2072e9e5a"><td class="memItemLeft" align="right" valign="top">virtual std::string&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="classVamp_1_1PluginBase.html#a59153a02364f75fff46973b2072e9e5a">getDescription</a> () const =0</td></tr>
Chris@3 117 <tr class="memdesc:a59153a02364f75fff46973b2072e9e5a"><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="#a59153a02364f75fff46973b2072e9e5a"></a><br/></td></tr>
Chris@3 118 <tr class="memitem:a53d9918bf9ef4d12feedf66b2b26c637"><td class="memItemLeft" align="right" valign="top">virtual std::string&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="classVamp_1_1PluginBase.html#a53d9918bf9ef4d12feedf66b2b26c637">getMaker</a> () const =0</td></tr>
Chris@3 119 <tr class="memdesc:a53d9918bf9ef4d12feedf66b2b26c637"><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="#a53d9918bf9ef4d12feedf66b2b26c637"></a><br/></td></tr>
Chris@3 120 <tr class="memitem:ab7e9dedbe965f5ab9018b72920fe7661"><td class="memItemLeft" align="right" valign="top">virtual std::string&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="classVamp_1_1PluginBase.html#ab7e9dedbe965f5ab9018b72920fe7661">getCopyright</a> () const =0</td></tr>
Chris@3 121 <tr class="memdesc:ab7e9dedbe965f5ab9018b72920fe7661"><td class="mdescLeft">&#160;</td><td class="mdescRight">Get the copyright statement or licensing summary for the plugin. <a href="#ab7e9dedbe965f5ab9018b72920fe7661"></a><br/></td></tr>
Chris@3 122 <tr class="memitem:a63f686d77bc3d6b807e7944cdde83151"><td class="memItemLeft" align="right" valign="top">virtual int&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="classVamp_1_1PluginBase.html#a63f686d77bc3d6b807e7944cdde83151">getPluginVersion</a> () const =0</td></tr>
Chris@3 123 <tr class="memdesc:a63f686d77bc3d6b807e7944cdde83151"><td class="mdescLeft">&#160;</td><td class="mdescRight">Get the version number of the plugin. <a href="#a63f686d77bc3d6b807e7944cdde83151"></a><br/></td></tr>
Chris@3 124 <tr class="memitem:aac3e49b3b66cacfbb768dfdf07444f21"><td class="memItemLeft" align="right" valign="top">virtual <a class="el" href="classVamp_1_1PluginBase.html#a3b6bb4bbd86affe1ca9deceea1aad4f8">ParameterList</a>&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="classVamp_1_1PluginBase.html#aac3e49b3b66cacfbb768dfdf07444f21">getParameterDescriptors</a> () const </td></tr>
Chris@3 125 <tr class="memdesc:aac3e49b3b66cacfbb768dfdf07444f21"><td class="mdescLeft">&#160;</td><td class="mdescRight">Get the controllable parameters of this plugin. <a href="#aac3e49b3b66cacfbb768dfdf07444f21"></a><br/></td></tr>
Chris@3 126 <tr class="memitem:a97ababcd45348ceec998d0f8e0f38bf7"><td class="memItemLeft" align="right" valign="top">virtual float&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="classVamp_1_1PluginBase.html#a97ababcd45348ceec998d0f8e0f38bf7">getParameter</a> (std::string) const </td></tr>
Chris@3 127 <tr class="memdesc:a97ababcd45348ceec998d0f8e0f38bf7"><td class="mdescLeft">&#160;</td><td class="mdescRight">Get the value of a named parameter. <a href="#a97ababcd45348ceec998d0f8e0f38bf7"></a><br/></td></tr>
Chris@3 128 <tr class="memitem:a6c718ce822f7b73b98940d59dcaa9366"><td class="memItemLeft" align="right" valign="top">virtual void&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="classVamp_1_1PluginBase.html#a6c718ce822f7b73b98940d59dcaa9366">setParameter</a> (std::string, float)</td></tr>
Chris@3 129 <tr class="memdesc:a6c718ce822f7b73b98940d59dcaa9366"><td class="mdescLeft">&#160;</td><td class="mdescRight">Set a named parameter. <a href="#a6c718ce822f7b73b98940d59dcaa9366"></a><br/></td></tr>
Chris@3 130 <tr class="memitem:abb307c60bdb981d5f5af50c3c4ae84af"><td class="memItemLeft" align="right" valign="top">virtual <a class="el" href="classVamp_1_1PluginBase.html#a7f66f00437b21e5f694fe02356b12f20">ProgramList</a>&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="classVamp_1_1PluginBase.html#abb307c60bdb981d5f5af50c3c4ae84af">getPrograms</a> () const </td></tr>
Chris@3 131 <tr class="memdesc:abb307c60bdb981d5f5af50c3c4ae84af"><td class="mdescLeft">&#160;</td><td class="mdescRight">Get the program settings available in this plugin. <a href="#abb307c60bdb981d5f5af50c3c4ae84af"></a><br/></td></tr>
Chris@3 132 <tr class="memitem:a24e77eccf1bdfbbca3c79bb25e8799b3"><td class="memItemLeft" align="right" valign="top">virtual std::string&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="classVamp_1_1PluginBase.html#a24e77eccf1bdfbbca3c79bb25e8799b3">getCurrentProgram</a> () const </td></tr>
Chris@3 133 <tr class="memdesc:a24e77eccf1bdfbbca3c79bb25e8799b3"><td class="mdescLeft">&#160;</td><td class="mdescRight">Get the current program. <a href="#a24e77eccf1bdfbbca3c79bb25e8799b3"></a><br/></td></tr>
Chris@3 134 <tr class="memitem:aadd3a547ef140bae200473a9518e3353"><td class="memItemLeft" align="right" valign="top">virtual void&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="classVamp_1_1PluginBase.html#aadd3a547ef140bae200473a9518e3353">selectProgram</a> (std::string)</td></tr>
Chris@3 135 <tr class="memdesc:aadd3a547ef140bae200473a9518e3353"><td class="mdescLeft">&#160;</td><td class="mdescRight">Select a program. <a href="#aadd3a547ef140bae200473a9518e3353"></a><br/></td></tr>
Chris@3 136 <tr class="memitem:a2da03e9ced8dc7e4382205e6dc05dbff"><td class="memItemLeft" align="right" valign="top">virtual std::string&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="classVamp_1_1PluginBase.html#a2da03e9ced8dc7e4382205e6dc05dbff">getType</a> () const =0</td></tr>
Chris@3 137 <tr class="memdesc:a2da03e9ced8dc7e4382205e6dc05dbff"><td class="mdescLeft">&#160;</td><td class="mdescRight">Get the type of plugin. <a href="#a2da03e9ced8dc7e4382205e6dc05dbff"></a><br/></td></tr>
Chris@1 138 </table>
Chris@1 139 <hr/><a name="details" id="details"></a><h2>Detailed Description</h2>
Chris@1 140 <div class="textblock"><p>A base class for plugins with optional configurable parameters, programs, etc. </p>
Chris@1 141 <p>The <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> is derived from this, and individual <a class="el" href="namespaceVamp.html">Vamp</a> plugins should derive from that.</p>
Chris@1 142 <p>This class does not provide the necessary interfaces to instantiate or run a plugin. It only specifies an interface for retrieving those controls that the host may wish to show to the user for editing. It could meaningfully be subclassed by real-time plugins or other sorts of plugin as well as <a class="el" href="namespaceVamp.html">Vamp</a> plugins. </p>
Chris@1 143
Chris@3 144 <p>Definition at line <a class="el" href="vamp-sdk_2PluginBase_8h_source.html#l00060">60</a> of file <a class="el" href="vamp-sdk_2PluginBase_8h_source.html">vamp-sdk/PluginBase.h</a>.</p>
Chris@1 145 </div><hr/><h2>Member Typedef Documentation</h2>
Chris@3 146 <a class="anchor" id="a3b6bb4bbd86affe1ca9deceea1aad4f8"></a>
Chris@1 147 <div class="memitem">
Chris@1 148 <div class="memproto">
Chris@1 149 <table class="memname">
Chris@1 150 <tr>
Chris@1 151 <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>
Chris@1 152 </tr>
Chris@1 153 </table>
Chris@1 154 </div>
Chris@1 155 <div class="memdoc">
Chris@1 156
Chris@3 157 <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>
Chris@1 158
Chris@1 159 </div>
Chris@1 160 </div>
Chris@3 161 <a class="anchor" id="a7f66f00437b21e5f694fe02356b12f20"></a>
Chris@1 162 <div class="memitem">
Chris@1 163 <div class="memproto">
Chris@1 164 <table class="memname">
Chris@1 165 <tr>
Chris@1 166 <td class="memname">typedef std::vector&lt;std::string&gt; <a class="el" href="classVamp_1_1PluginBase.html#a7f66f00437b21e5f694fe02356b12f20">Vamp::PluginBase::ProgramList</a></td>
Chris@1 167 </tr>
Chris@1 168 </table>
Chris@1 169 </div>
Chris@1 170 <div class="memdoc">
Chris@1 171
Chris@3 172 <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>
Chris@1 173
Chris@1 174 </div>
Chris@1 175 </div>
Chris@1 176 <hr/><h2>Constructor &amp; Destructor Documentation</h2>
Chris@3 177 <a class="anchor" id="a3773b37c658cf22d7f135c575a28f5c5"></a>
Chris@1 178 <div class="memitem">
Chris@1 179 <div class="memproto">
Chris@1 180 <table class="memname">
Chris@1 181 <tr>
Chris@3 182 <td class="memname">virtual <a class="el" href="classVamp_1_1PluginBase.html#a3773b37c658cf22d7f135c575a28f5c5">Vamp::PluginBase::~PluginBase</a> </td>
Chris@1 183 <td>(</td>
Chris@1 184 <td class="paramname"></td><td>)</td>
Chris@1 185 <td><code> [inline, virtual]</code></td>
Chris@1 186 </tr>
Chris@1 187 </table>
Chris@1 188 </div>
Chris@1 189 <div class="memdoc">
Chris@1 190
Chris@3 191 <p>Definition at line <a class="el" href="vamp-sdk_2PluginBase_8h_source.html#l00063">63</a> of file <a class="el" href="vamp-sdk_2PluginBase_8h_source.html">vamp-sdk/PluginBase.h</a>.</p>
Chris@1 192
Chris@1 193 </div>
Chris@1 194 </div>
Chris@1 195 <hr/><h2>Member Function Documentation</h2>
Chris@3 196 <a class="anchor" id="a8fd2c48291c64b790f0efb8948508dcf"></a>
Chris@1 197 <div class="memitem">
Chris@1 198 <div class="memproto">
Chris@1 199 <table class="memname">
Chris@1 200 <tr>
Chris@3 201 <td class="memname">virtual unsigned int <a class="el" href="classVamp_1_1PluginBase.html#a8fd2c48291c64b790f0efb8948508dcf">Vamp::PluginBase::getVampApiVersion</a> </td>
Chris@1 202 <td>(</td>
Chris@1 203 <td class="paramname"></td><td>)</td>
Chris@1 204 <td> const<code> [inline, virtual]</code></td>
Chris@1 205 </tr>
Chris@1 206 </table>
Chris@1 207 </div>
Chris@1 208 <div class="memdoc">
Chris@1 209
Chris@1 210 <p>Get the <a class="el" href="namespaceVamp.html">Vamp</a> API compatibility level of the plugin. </p>
Chris@1 211
Chris@1 212 <p>Reimplemented in <a class="el" href="classVamp_1_1PluginHostAdapter.html#a98aadddc8403eb46c9d8c5a9d1fdd19e">Vamp::PluginHostAdapter</a>, and <a class="el" href="classVamp_1_1HostExt_1_1PluginWrapper.html#a74147fda6b44ff2169bd4a1eea0d46ff">Vamp::HostExt::PluginWrapper</a>.</p>
Chris@1 213
Chris@3 214 <p>Definition at line <a class="el" href="vamp-sdk_2PluginBase_8h_source.html#l00068">68</a> of file <a class="el" href="vamp-sdk_2PluginBase_8h_source.html">vamp-sdk/PluginBase.h</a>.</p>
Chris@1 215
Chris@1 216 <p>Referenced by <a class="el" href="vamp-simple-host_8cpp_source.html#l00578">enumeratePlugins()</a>.</p>
Chris@1 217
Chris@1 218 </div>
Chris@1 219 </div>
Chris@3 220 <a class="anchor" id="ad1c6dfc77aa03d937a885b7f08258f4a"></a>
Chris@1 221 <div class="memitem">
Chris@1 222 <div class="memproto">
Chris@1 223 <table class="memname">
Chris@1 224 <tr>
Chris@3 225 <td class="memname">virtual std::string <a class="el" href="classVamp_1_1PluginBase.html#ad1c6dfc77aa03d937a885b7f08258f4a">Vamp::PluginBase::getIdentifier</a> </td>
Chris@1 226 <td>(</td>
Chris@1 227 <td class="paramname"></td><td>)</td>
Chris@1 228 <td> const<code> [pure virtual]</code></td>
Chris@1 229 </tr>
Chris@1 230 </table>
Chris@1 231 </div>
Chris@1 232 <div class="memdoc">
Chris@1 233
Chris@1 234 <p>Get the computer-usable name of the plugin. </p>
Chris@1 235 <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>
Chris@1 236 <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>
Chris@1 237 <p>Example: "zero_crossings" </p>
Chris@1 238
Chris@1 239 <p>Implemented in <a class="el" href="classVamp_1_1PluginHostAdapter.html#ab27423a656f878d97d2ad2eba4e76c7a">Vamp::PluginHostAdapter</a>, <a class="el" href="classVamp_1_1HostExt_1_1PluginWrapper.html#a4baa9e48f717c2b3e7f92496aa39d904">Vamp::HostExt::PluginWrapper</a>, <a class="el" href="classPowerSpectrum.html#a9e9d8349461cbb88d7565a5e8c51b64e">PowerSpectrum</a>, <a class="el" href="classAmplitudeFollower.html#afe7576af95c8fcc7f5bad42eec9f9f29">AmplitudeFollower</a>, <a class="el" href="classSpectralCentroid.html#a1b2c4c8440c024c4c635fcef5697949f">SpectralCentroid</a>, <a class="el" href="classZeroCrossing.html#af2baf9e19fcdd11cfe97ace56d4f5c1a">ZeroCrossing</a>, <a class="el" href="classFixedTempoEstimator.html#ab818edcf1555177d10260e197e3a5e7a">FixedTempoEstimator</a>, and <a class="el" href="classPercussionOnsetDetector.html#a267c83a7533146c127e2c3be310e0154">PercussionOnsetDetector</a>.</p>
Chris@1 240
Chris@1 241 <p>Referenced by <a class="el" href="vamp-simple-host_8cpp_source.html#l00578">enumeratePlugins()</a>, and <a class="el" href="vamp-simple-host_8cpp_source.html#l00265">runPlugin()</a>.</p>
Chris@1 242
Chris@1 243 </div>
Chris@1 244 </div>
Chris@3 245 <a class="anchor" id="a18619d5097e444ecefee0c359da53232"></a>
Chris@1 246 <div class="memitem">
Chris@1 247 <div class="memproto">
Chris@1 248 <table class="memname">
Chris@1 249 <tr>
Chris@3 250 <td class="memname">virtual std::string <a class="el" href="classVamp_1_1PluginBase.html#a18619d5097e444ecefee0c359da53232">Vamp::PluginBase::getName</a> </td>
Chris@1 251 <td>(</td>
Chris@1 252 <td class="paramname"></td><td>)</td>
Chris@1 253 <td> const<code> [pure virtual]</code></td>
Chris@1 254 </tr>
Chris@1 255 </table>
Chris@1 256 </div>
Chris@1 257 <div class="memdoc">
Chris@1 258
Chris@1 259 <p>Get a human-readable name or title of the plugin. </p>
Chris@1 260 <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>
Chris@1 261 <p>Example: "Zero Crossings" </p>
Chris@1 262
Chris@1 263 <p>Implemented in <a class="el" href="classVamp_1_1PluginHostAdapter.html#a45f1d0377e233eeddd1b7cefb48be62a">Vamp::PluginHostAdapter</a>, <a class="el" href="classVamp_1_1HostExt_1_1PluginWrapper.html#ac70a3265bb25aeb03f6dd8f8a0442088">Vamp::HostExt::PluginWrapper</a>, <a class="el" href="classPowerSpectrum.html#ac9214f9cafeeed3fca549c90aef57623">PowerSpectrum</a>, <a class="el" href="classAmplitudeFollower.html#a7cfed00bc9d96ba6c709b69ab6a40594">AmplitudeFollower</a>, <a class="el" href="classSpectralCentroid.html#ab7e6a620fea568af431be3cfd9dd5a41">SpectralCentroid</a>, <a class="el" href="classZeroCrossing.html#afa96f7ce6e7d9f03768f48c6a9d88498">ZeroCrossing</a>, <a class="el" href="classFixedTempoEstimator.html#af9eb6fa8a98aa66b55e64e1795f9405f">FixedTempoEstimator</a>, and <a class="el" href="classPercussionOnsetDetector.html#aa98f1ad061a11af98c054011a8844e6f">PercussionOnsetDetector</a>.</p>
Chris@1 264
Chris@1 265 <p>Referenced by <a class="el" href="vamp-simple-host_8cpp_source.html#l00578">enumeratePlugins()</a>, and <a class="el" href="vamp-simple-host_8cpp_source.html#l00797">printPluginCategoryList()</a>.</p>
Chris@1 266
Chris@1 267 </div>
Chris@1 268 </div>
Chris@3 269 <a class="anchor" id="a59153a02364f75fff46973b2072e9e5a"></a>
Chris@1 270 <div class="memitem">
Chris@1 271 <div class="memproto">
Chris@1 272 <table class="memname">
Chris@1 273 <tr>
Chris@3 274 <td class="memname">virtual std::string <a class="el" href="classVamp_1_1PluginBase.html#a59153a02364f75fff46973b2072e9e5a">Vamp::PluginBase::getDescription</a> </td>
Chris@1 275 <td>(</td>
Chris@1 276 <td class="paramname"></td><td>)</td>
Chris@1 277 <td> const<code> [pure virtual]</code></td>
Chris@1 278 </tr>
Chris@1 279 </table>
Chris@1 280 </div>
Chris@1 281 <div class="memdoc">
Chris@1 282
Chris@1 283 <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>
Chris@1 284 <p>May be empty if the name has said it all already.</p>
Chris@1 285 <p>Example: "Detect and count zero crossing points" </p>
Chris@1 286
Chris@1 287 <p>Implemented in <a class="el" href="classVamp_1_1PluginHostAdapter.html#a5eaafcef030e81b90a3e77cf16cf8ae1">Vamp::PluginHostAdapter</a>, <a class="el" href="classVamp_1_1HostExt_1_1PluginWrapper.html#ac334f699c0996055942785410d8a065c">Vamp::HostExt::PluginWrapper</a>, <a class="el" href="classPowerSpectrum.html#a7b48d56dc954f3af344f7e4dcd8993e5">PowerSpectrum</a>, <a class="el" href="classAmplitudeFollower.html#a6f0f2fea1fdb4b51e688edfe859d5062">AmplitudeFollower</a>, <a class="el" href="classSpectralCentroid.html#a8fbb74a46283057d9a0b0e4718ee943c">SpectralCentroid</a>, <a class="el" href="classZeroCrossing.html#a710bb0b013157adaeef2a9e6867b4478">ZeroCrossing</a>, <a class="el" href="classFixedTempoEstimator.html#a06b00853f00c2e78d490697fcd7d1920">FixedTempoEstimator</a>, and <a class="el" href="classPercussionOnsetDetector.html#a9061d189705802a48973a7ccab6360db">PercussionOnsetDetector</a>.</p>
Chris@1 288
Chris@1 289 <p>Referenced by <a class="el" href="vamp-simple-host_8cpp_source.html#l00578">enumeratePlugins()</a>, and <a class="el" href="vamp-simple-host_8cpp_source.html#l00797">printPluginCategoryList()</a>.</p>
Chris@1 290
Chris@1 291 </div>
Chris@1 292 </div>
Chris@3 293 <a class="anchor" id="a53d9918bf9ef4d12feedf66b2b26c637"></a>
Chris@1 294 <div class="memitem">
Chris@1 295 <div class="memproto">
Chris@1 296 <table class="memname">
Chris@1 297 <tr>
Chris@3 298 <td class="memname">virtual std::string <a class="el" href="classVamp_1_1PluginBase.html#a53d9918bf9ef4d12feedf66b2b26c637">Vamp::PluginBase::getMaker</a> </td>
Chris@1 299 <td>(</td>
Chris@1 300 <td class="paramname"></td><td>)</td>
Chris@1 301 <td> const<code> [pure virtual]</code></td>
Chris@1 302 </tr>
Chris@1 303 </table>
Chris@1 304 </div>
Chris@1 305 <div class="memdoc">
Chris@1 306
Chris@1 307 <p>Get the name of the author or vendor of the plugin in human-readable form. </p>
Chris@1 308 <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>
Chris@1 309
Chris@1 310 <p>Implemented in <a class="el" href="classVamp_1_1PluginHostAdapter.html#af572be0b175f5661559006a380a0f3db">Vamp::PluginHostAdapter</a>, <a class="el" href="classVamp_1_1HostExt_1_1PluginWrapper.html#a59d5a2298951b317995675e664b1c7bb">Vamp::HostExt::PluginWrapper</a>, <a class="el" href="classPowerSpectrum.html#a9f3e3f759e2b67c771a41f1c276984b2">PowerSpectrum</a>, <a class="el" href="classAmplitudeFollower.html#a44fc43838f203f58bc2ce6e3cb2b03dd">AmplitudeFollower</a>, <a class="el" href="classSpectralCentroid.html#ac01ff858bf67e2e93ad5d24a6ba8c8c8">SpectralCentroid</a>, <a class="el" href="classZeroCrossing.html#ac68561634a3c329a029c2fd3deaeae2a">ZeroCrossing</a>, <a class="el" href="classFixedTempoEstimator.html#ae910d1b9250b11097fd6b51cd8285b68">FixedTempoEstimator</a>, and <a class="el" href="classPercussionOnsetDetector.html#a63d63f2cb7ea8d8b09d58cc13b541375">PercussionOnsetDetector</a>.</p>
Chris@1 311
Chris@1 312 <p>Referenced by <a class="el" href="vamp-simple-host_8cpp_source.html#l00578">enumeratePlugins()</a>, and <a class="el" href="vamp-simple-host_8cpp_source.html#l00797">printPluginCategoryList()</a>.</p>
Chris@1 313
Chris@1 314 </div>
Chris@1 315 </div>
Chris@3 316 <a class="anchor" id="ab7e9dedbe965f5ab9018b72920fe7661"></a>
Chris@1 317 <div class="memitem">
Chris@1 318 <div class="memproto">
Chris@1 319 <table class="memname">
Chris@1 320 <tr>
Chris@3 321 <td class="memname">virtual std::string <a class="el" href="classVamp_1_1PluginBase.html#ab7e9dedbe965f5ab9018b72920fe7661">Vamp::PluginBase::getCopyright</a> </td>
Chris@1 322 <td>(</td>
Chris@1 323 <td class="paramname"></td><td>)</td>
Chris@1 324 <td> const<code> [pure virtual]</code></td>
Chris@1 325 </tr>
Chris@1 326 </table>
Chris@1 327 </div>
Chris@1 328 <div class="memdoc">
Chris@1 329
Chris@1 330 <p>Get the copyright statement or licensing summary for the plugin. </p>
Chris@1 331 <p>This can be an informative text, without the same presentation constraints as mentioned for getMaker above. </p>
Chris@1 332
Chris@1 333 <p>Implemented in <a class="el" href="classVamp_1_1PluginHostAdapter.html#ac73c9d6baad04369beee695e99584815">Vamp::PluginHostAdapter</a>, <a class="el" href="classVamp_1_1HostExt_1_1PluginWrapper.html#ae14f6ecb78be909c4cd5f0cdaed3c566">Vamp::HostExt::PluginWrapper</a>, <a class="el" href="classPowerSpectrum.html#a708b4d335c57643d5ef2b2e1caf43bd9">PowerSpectrum</a>, <a class="el" href="classAmplitudeFollower.html#a0c197fc90f30d91cb4403115c83c9134">AmplitudeFollower</a>, <a class="el" href="classSpectralCentroid.html#a925747d513d598e0fa21ed0ed6520980">SpectralCentroid</a>, <a class="el" href="classZeroCrossing.html#af9c41b92aa8ff8bddaebf75569ff789c">ZeroCrossing</a>, <a class="el" href="classFixedTempoEstimator.html#a50c6b64530c84c0707ba3936c5022a48">FixedTempoEstimator</a>, and <a class="el" href="classPercussionOnsetDetector.html#a1a22ece271330c94cc08798a77416351">PercussionOnsetDetector</a>.</p>
Chris@1 334
Chris@1 335 <p>Referenced by <a class="el" href="vamp-simple-host_8cpp_source.html#l00578">enumeratePlugins()</a>.</p>
Chris@1 336
Chris@1 337 </div>
Chris@1 338 </div>
Chris@3 339 <a class="anchor" id="a63f686d77bc3d6b807e7944cdde83151"></a>
Chris@1 340 <div class="memitem">
Chris@1 341 <div class="memproto">
Chris@1 342 <table class="memname">
Chris@1 343 <tr>
Chris@3 344 <td class="memname">virtual int <a class="el" href="classVamp_1_1PluginBase.html#a63f686d77bc3d6b807e7944cdde83151">Vamp::PluginBase::getPluginVersion</a> </td>
Chris@1 345 <td>(</td>
Chris@1 346 <td class="paramname"></td><td>)</td>
Chris@1 347 <td> const<code> [pure virtual]</code></td>
Chris@1 348 </tr>
Chris@1 349 </table>
Chris@1 350 </div>
Chris@1 351 <div class="memdoc">
Chris@1 352
Chris@1 353 <p>Get the version number of the plugin. </p>
Chris@1 354
Chris@1 355 <p>Implemented in <a class="el" href="classVamp_1_1PluginHostAdapter.html#a6fbd94781867ca46a20368c2a3593c77">Vamp::PluginHostAdapter</a>, <a class="el" href="classVamp_1_1HostExt_1_1PluginWrapper.html#a47e1acf1696813008324a915c9ba59c5">Vamp::HostExt::PluginWrapper</a>, <a class="el" href="classPowerSpectrum.html#ad23d27e4e82f10404a37b933f6a72c33">PowerSpectrum</a>, <a class="el" href="classAmplitudeFollower.html#a8a5d7a834eb996d517c51f84b2a72250">AmplitudeFollower</a>, <a class="el" href="classSpectralCentroid.html#af64622e66bf678ac2b0b58aa832ca2b3">SpectralCentroid</a>, <a class="el" href="classZeroCrossing.html#ad685f6c2f443f07a1634550c335571eb">ZeroCrossing</a>, <a class="el" href="classFixedTempoEstimator.html#ad002fddb3735c2dd7e31e6a9def9949f">FixedTempoEstimator</a>, and <a class="el" href="classPercussionOnsetDetector.html#ad6b818dbd81867ce7be71c99cae861be">PercussionOnsetDetector</a>.</p>
Chris@1 356
Chris@1 357 <p>Referenced by <a class="el" href="vamp-simple-host_8cpp_source.html#l00578">enumeratePlugins()</a>.</p>
Chris@1 358
Chris@1 359 </div>
Chris@1 360 </div>
Chris@3 361 <a class="anchor" id="aac3e49b3b66cacfbb768dfdf07444f21"></a>
Chris@1 362 <div class="memitem">
Chris@1 363 <div class="memproto">
Chris@1 364 <table class="memname">
Chris@1 365 <tr>
Chris@3 366 <td class="memname">virtual <a class="el" href="classVamp_1_1PluginBase.html#a3b6bb4bbd86affe1ca9deceea1aad4f8">ParameterList</a> <a class="el" href="classVamp_1_1PluginBase.html#aac3e49b3b66cacfbb768dfdf07444f21">Vamp::PluginBase::getParameterDescriptors</a> </td>
Chris@1 367 <td>(</td>
Chris@1 368 <td class="paramname"></td><td>)</td>
Chris@1 369 <td> const<code> [inline, virtual]</code></td>
Chris@1 370 </tr>
Chris@1 371 </table>
Chris@1 372 </div>
Chris@1 373 <div class="memdoc">
Chris@1 374
Chris@1 375 <p>Get the controllable parameters of this plugin. </p>
Chris@1 376
Chris@1 377 <p>Reimplemented in <a class="el" href="classVamp_1_1PluginHostAdapter.html#a602faa0bfaae83e2ca53b36292271a76">Vamp::PluginHostAdapter</a>, <a class="el" href="classVamp_1_1HostExt_1_1PluginWrapper.html#a9be71561265c2e6e43b7feaddaa91f36">Vamp::HostExt::PluginWrapper</a>, <a class="el" href="classAmplitudeFollower.html#a9df01323a09e117bc12354ebe9244edf">AmplitudeFollower</a>, <a class="el" href="classFixedTempoEstimator.html#ae157465a4e07d180bab05b5c3a4d8987">FixedTempoEstimator</a>, and <a class="el" href="classPercussionOnsetDetector.html#abceae88cc9762b0ea310d7aad71de815">PercussionOnsetDetector</a>.</p>
Chris@1 378
Chris@3 379 <p>Definition at line <a class="el" href="vamp-sdk_2PluginBase_8h_source.html#l00204">204</a> of file <a class="el" href="vamp-sdk_2PluginBase_8h_source.html">vamp-sdk/PluginBase.h</a>.</p>
Chris@1 380
Chris@1 381 <p>Referenced by <a class="el" href="vamp-simple-host_8cpp_source.html#l00578">enumeratePlugins()</a>.</p>
Chris@1 382
Chris@1 383 </div>
Chris@1 384 </div>
Chris@3 385 <a class="anchor" id="a97ababcd45348ceec998d0f8e0f38bf7"></a>
Chris@1 386 <div class="memitem">
Chris@1 387 <div class="memproto">
Chris@1 388 <table class="memname">
Chris@1 389 <tr>
Chris@3 390 <td class="memname">virtual float <a class="el" href="classVamp_1_1PluginBase.html#a97ababcd45348ceec998d0f8e0f38bf7">Vamp::PluginBase::getParameter</a> </td>
Chris@1 391 <td>(</td>
Chris@1 392 <td class="paramtype">std::string&#160;</td>
Chris@1 393 <td class="paramname"></td><td>)</td>
Chris@1 394 <td> const<code> [inline, virtual]</code></td>
Chris@1 395 </tr>
Chris@1 396 </table>
Chris@1 397 </div>
Chris@1 398 <div class="memdoc">
Chris@1 399
Chris@1 400 <p>Get the value of a named parameter. </p>
Chris@1 401 <p>The argument is the identifier field from that parameter's descriptor. </p>
Chris@1 402
Chris@1 403 <p>Reimplemented in <a class="el" href="classVamp_1_1PluginHostAdapter.html#af0c46d4f67ca93be7c76f3ea2e6c8efb">Vamp::PluginHostAdapter</a>, <a class="el" href="classVamp_1_1HostExt_1_1PluginWrapper.html#a034920f56c8d7609a85447c42556048c">Vamp::HostExt::PluginWrapper</a>, <a class="el" href="classAmplitudeFollower.html#ab278c4b6f2ca23248dc94ad775273f39">AmplitudeFollower</a>, <a class="el" href="classFixedTempoEstimator.html#a2030b05fb1228b30ace16200780c9152">FixedTempoEstimator</a>, and <a class="el" href="classPercussionOnsetDetector.html#a9b28da8315fcde46ce7644d6592ba527">PercussionOnsetDetector</a>.</p>
Chris@1 404
Chris@3 405 <p>Definition at line <a class="el" href="vamp-sdk_2PluginBase_8h_source.html#l00212">212</a> of file <a class="el" href="vamp-sdk_2PluginBase_8h_source.html">vamp-sdk/PluginBase.h</a>.</p>
Chris@1 406
Chris@1 407 </div>
Chris@1 408 </div>
Chris@3 409 <a class="anchor" id="a6c718ce822f7b73b98940d59dcaa9366"></a>
Chris@1 410 <div class="memitem">
Chris@1 411 <div class="memproto">
Chris@1 412 <table class="memname">
Chris@1 413 <tr>
Chris@3 414 <td class="memname">virtual void <a class="el" href="classVamp_1_1PluginBase.html#a6c718ce822f7b73b98940d59dcaa9366">Vamp::PluginBase::setParameter</a> </td>
Chris@1 415 <td>(</td>
Chris@1 416 <td class="paramtype">std::string&#160;</td>
Chris@1 417 <td class="paramname">, </td>
Chris@1 418 </tr>
Chris@1 419 <tr>
Chris@1 420 <td class="paramkey"></td>
Chris@1 421 <td></td>
Chris@1 422 <td class="paramtype">float&#160;</td>
Chris@1 423 <td class="paramname">&#160;</td>
Chris@1 424 </tr>
Chris@1 425 <tr>
Chris@1 426 <td></td>
Chris@1 427 <td>)</td>
Chris@1 428 <td></td><td><code> [inline, virtual]</code></td>
Chris@1 429 </tr>
Chris@1 430 </table>
Chris@1 431 </div>
Chris@1 432 <div class="memdoc">
Chris@1 433
Chris@1 434 <p>Set a named parameter. </p>
Chris@1 435 <p>The first argument is the identifier field from that parameter's descriptor. </p>
Chris@1 436
Chris@1 437 <p>Reimplemented in <a class="el" href="classVamp_1_1HostExt_1_1PluginBufferingAdapter.html#a7a979b20c169d37adbd7b7d8b8a077b3">Vamp::HostExt::PluginBufferingAdapter</a>, <a class="el" href="classVamp_1_1PluginHostAdapter.html#a29f75395aa75b9de0228aa11edf9c6d6">Vamp::PluginHostAdapter</a>, <a class="el" href="classVamp_1_1HostExt_1_1PluginWrapper.html#a651b15a5dc4c27942ac0c87c6092bfe5">Vamp::HostExt::PluginWrapper</a>, <a class="el" href="classAmplitudeFollower.html#ae1fc37ece4d20e40f3066a3361a99340">AmplitudeFollower</a>, <a class="el" href="classFixedTempoEstimator.html#a8a5a413025384cf451c64d2c2ce13a75">FixedTempoEstimator</a>, and <a class="el" href="classPercussionOnsetDetector.html#aa097d72488e1211f05fc661ff5c6dc01">PercussionOnsetDetector</a>.</p>
Chris@1 438
Chris@3 439 <p>Definition at line <a class="el" href="vamp-sdk_2PluginBase_8h_source.html#l00218">218</a> of file <a class="el" href="vamp-sdk_2PluginBase_8h_source.html">vamp-sdk/PluginBase.h</a>.</p>
Chris@1 440
Chris@1 441 </div>
Chris@1 442 </div>
Chris@3 443 <a class="anchor" id="abb307c60bdb981d5f5af50c3c4ae84af"></a>
Chris@1 444 <div class="memitem">
Chris@1 445 <div class="memproto">
Chris@1 446 <table class="memname">
Chris@1 447 <tr>
Chris@3 448 <td class="memname">virtual <a class="el" href="classVamp_1_1PluginBase.html#a7f66f00437b21e5f694fe02356b12f20">ProgramList</a> <a class="el" href="classVamp_1_1PluginBase.html#abb307c60bdb981d5f5af50c3c4ae84af">Vamp::PluginBase::getPrograms</a> </td>
Chris@1 449 <td>(</td>
Chris@1 450 <td class="paramname"></td><td>)</td>
Chris@1 451 <td> const<code> [inline, virtual]</code></td>
Chris@1 452 </tr>
Chris@1 453 </table>
Chris@1 454 </div>
Chris@1 455 <div class="memdoc">
Chris@1 456
Chris@1 457 <p>Get the program settings available in this plugin. </p>
Chris@1 458 <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>
Chris@1 459 <p>The programs must have unique names. </p>
Chris@1 460
Chris@1 461 <p>Reimplemented in <a class="el" href="classVamp_1_1PluginHostAdapter.html#ae0cde5cd625418c1bc470b91f75daafc">Vamp::PluginHostAdapter</a>, and <a class="el" href="classVamp_1_1HostExt_1_1PluginWrapper.html#a131fbe1df81215020b9aa8cecef4c802">Vamp::HostExt::PluginWrapper</a>.</p>
Chris@1 462
Chris@3 463 <p>Definition at line <a class="el" href="vamp-sdk_2PluginBase_8h_source.html#l00233">233</a> of file <a class="el" href="vamp-sdk_2PluginBase_8h_source.html">vamp-sdk/PluginBase.h</a>.</p>
Chris@1 464
Chris@1 465 </div>
Chris@1 466 </div>
Chris@3 467 <a class="anchor" id="a24e77eccf1bdfbbca3c79bb25e8799b3"></a>
Chris@1 468 <div class="memitem">
Chris@1 469 <div class="memproto">
Chris@1 470 <table class="memname">
Chris@1 471 <tr>
Chris@3 472 <td class="memname">virtual std::string <a class="el" href="classVamp_1_1PluginBase.html#a24e77eccf1bdfbbca3c79bb25e8799b3">Vamp::PluginBase::getCurrentProgram</a> </td>
Chris@1 473 <td>(</td>
Chris@1 474 <td class="paramname"></td><td>)</td>
Chris@1 475 <td> const<code> [inline, virtual]</code></td>
Chris@1 476 </tr>
Chris@1 477 </table>
Chris@1 478 </div>
Chris@1 479 <div class="memdoc">
Chris@1 480
Chris@1 481 <p>Get the current program. </p>
Chris@1 482
Chris@1 483 <p>Reimplemented in <a class="el" href="classVamp_1_1PluginHostAdapter.html#a34859eff8ca8d862af39be9636ec1867">Vamp::PluginHostAdapter</a>, and <a class="el" href="classVamp_1_1HostExt_1_1PluginWrapper.html#a7a312dd42d161064b70afd7ff24c0651">Vamp::HostExt::PluginWrapper</a>.</p>
Chris@1 484
Chris@3 485 <p>Definition at line <a class="el" href="vamp-sdk_2PluginBase_8h_source.html#l00238">238</a> of file <a class="el" href="vamp-sdk_2PluginBase_8h_source.html">vamp-sdk/PluginBase.h</a>.</p>
Chris@1 486
Chris@1 487 </div>
Chris@1 488 </div>
Chris@3 489 <a class="anchor" id="aadd3a547ef140bae200473a9518e3353"></a>
Chris@1 490 <div class="memitem">
Chris@1 491 <div class="memproto">
Chris@1 492 <table class="memname">
Chris@1 493 <tr>
Chris@3 494 <td class="memname">virtual void <a class="el" href="classVamp_1_1PluginBase.html#aadd3a547ef140bae200473a9518e3353">Vamp::PluginBase::selectProgram</a> </td>
Chris@1 495 <td>(</td>
Chris@1 496 <td class="paramtype">std::string&#160;</td>
Chris@1 497 <td class="paramname"></td><td>)</td>
Chris@1 498 <td><code> [inline, virtual]</code></td>
Chris@1 499 </tr>
Chris@1 500 </table>
Chris@1 501 </div>
Chris@1 502 <div class="memdoc">
Chris@1 503
Chris@1 504 <p>Select a program. </p>
Chris@1 505 <p>(If the given program name is not one of the available programs, do nothing.) </p>
Chris@1 506
Chris@1 507 <p>Reimplemented in <a class="el" href="classVamp_1_1HostExt_1_1PluginBufferingAdapter.html#a3cc7000e0aff525950e0a286b87f8927">Vamp::HostExt::PluginBufferingAdapter</a>, <a class="el" href="classVamp_1_1PluginHostAdapter.html#a8f5515ab34cc13d9403ccc6b4b788683">Vamp::PluginHostAdapter</a>, and <a class="el" href="classVamp_1_1HostExt_1_1PluginWrapper.html#a074978333a74fdcf336a8a1d8ea20abf">Vamp::HostExt::PluginWrapper</a>.</p>
Chris@1 508
Chris@3 509 <p>Definition at line <a class="el" href="vamp-sdk_2PluginBase_8h_source.html#l00244">244</a> of file <a class="el" href="vamp-sdk_2PluginBase_8h_source.html">vamp-sdk/PluginBase.h</a>.</p>
Chris@1 510
Chris@1 511 </div>
Chris@1 512 </div>
Chris@3 513 <a class="anchor" id="a2da03e9ced8dc7e4382205e6dc05dbff"></a>
Chris@1 514 <div class="memitem">
Chris@1 515 <div class="memproto">
Chris@1 516 <table class="memname">
Chris@1 517 <tr>
Chris@3 518 <td class="memname">virtual std::string <a class="el" href="classVamp_1_1PluginBase.html#a2da03e9ced8dc7e4382205e6dc05dbff">Vamp::PluginBase::getType</a> </td>
Chris@1 519 <td>(</td>
Chris@1 520 <td class="paramname"></td><td>)</td>
Chris@1 521 <td> const<code> [pure virtual]</code></td>
Chris@1 522 </tr>
Chris@1 523 </table>
Chris@1 524 </div>
Chris@1 525 <div class="memdoc">
Chris@1 526
Chris@1 527 <p>Get the type of plugin. </p>
Chris@1 528 <p>This is to be implemented by the immediate subclass, not by actual plugins. Do not attempt to implement this in plugin code. </p>
Chris@1 529
Chris@1 530 <p>Implemented in <a class="el" href="classVamp_1_1Plugin.html#abe13b3997a69fbcc09e2213faa352f91">Vamp::Plugin</a>.</p>
Chris@1 531
Chris@1 532 </div>
Chris@1 533 </div>
Chris@1 534 <hr/>The documentation for this class was generated from the following file:<ul>
Chris@1 535 <li><a class="el" href="vamp-sdk_2PluginBase_8h_source.html">vamp-sdk/PluginBase.h</a></li>
Chris@1 536 </ul>
Chris@3 537 </div><!-- contents -->
Chris@1 538 </div>
Chris@1 539 <div id="nav-path" class="navpath">
Chris@1 540 <ul>
Chris@1 541 <li class="navelem"><a class="el" href="namespaceVamp.html">Vamp</a> </li>
Chris@1 542 <li class="navelem"><a class="el" href="classVamp_1_1PluginBase.html">PluginBase</a> </li>
Chris@1 543
Chris@3 544 <li class="footer">Generated on Fri Jul 13 2012 13:28:49 for VampPluginSDK by
Chris@1 545 <a href="http://www.doxygen.org/index.html">
Chris@3 546 <img class="footer" src="doxygen.png" alt="doxygen"/></a> 1.8.0 </li>
Chris@1 547 </ul>
Chris@1 548 </div>
Chris@1 549
Chris@1 550
Chris@1 551 </body>
Chris@1 552 </html>