annotate code-docs/classVamp_1_1PluginAdapterBase.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::PluginAdapterBase 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_1PluginAdapterBase.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="#pub-methods">Public Member Functions</a> &#124;
Chris@1 78 <a href="#pro-methods">Protected Member Functions</a> &#124;
Chris@1 79 <a href="#pro-attribs">Protected Attributes</a> </div>
Chris@1 80 <div class="headertitle">
Chris@1 81 <div class="title">Vamp::PluginAdapterBase Class Reference</div> </div>
Chris@3 82 </div><!--header-->
Chris@1 83 <div class="contents">
Chris@3 84
Chris@1 85 <p><a class="el" href="classVamp_1_1PluginAdapter.html" title="PluginAdapter turns a PluginAdapterBase into a specific wrapper for a particular plugin implementatio...">PluginAdapter</a> and <a class="el" href="classVamp_1_1PluginAdapterBase.html" title="PluginAdapter and PluginAdapterBase provide a wrapper class that a plugin library can use to make its...">PluginAdapterBase</a> provide a wrapper class that a plugin library can use to make its C++ <a class="el" href="classVamp_1_1Plugin.html" title="Vamp::Plugin is a base class for plugin instance classes that provide feature extraction from audio o...">Vamp::Plugin</a> objects available through the <a class="el" href="namespaceVamp.html">Vamp</a> C API.
Chris@1 86 <a href="classVamp_1_1PluginAdapterBase.html#details">More...</a></p>
Chris@1 87
Chris@1 88 <p><code>#include &lt;<a class="el" href="PluginAdapter_8h_source.html">vamp-sdk/PluginAdapter.h</a>&gt;</code></p>
Chris@1 89 <div class="dynheader">
Chris@1 90 Inheritance diagram for Vamp::PluginAdapterBase:</div>
Chris@1 91 <div class="dyncontent">
Chris@1 92 <div class="center"><img src="classVamp_1_1PluginAdapterBase__inherit__graph.png" border="0" usemap="#Vamp_1_1PluginAdapterBase_inherit__map" alt="Inheritance graph"/></div>
Chris@1 93 <map name="Vamp_1_1PluginAdapterBase_inherit__map" id="Vamp_1_1PluginAdapterBase_inherit__map">
Chris@1 94 <area shape="rect" id="node3" href="classVamp_1_1PluginAdapter.html" title="PluginAdapter turns a PluginAdapterBase into a specific wrapper for a particular plugin implementatio..." alt="" coords="5,81,168,106"/></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_1PluginAdapterBase-members.html">List of all members.</a></p>
Chris@1 98 <table class="memberdecls">
Chris@1 99 <tr><td colspan="2"><h2><a name="pub-methods"></a>
Chris@1 100 Public Member Functions</h2></td></tr>
Chris@3 101 <tr class="memitem:aaa8afd318b6c3da108e1cbcc7e46603d"><td class="memItemLeft" align="right" valign="top">virtual&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="classVamp_1_1PluginAdapterBase.html#aaa8afd318b6c3da108e1cbcc7e46603d">~PluginAdapterBase</a> ()</td></tr>
Chris@3 102 <tr class="memitem:ad24595002512f9f00e8e45216d6f5dfb"><td class="memItemLeft" align="right" valign="top">const <a class="el" href="vamp_8h.html#aa1d6e0792099b9516a89b5fb7ed2ad2b">VampPluginDescriptor</a> *&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="classVamp_1_1PluginAdapterBase.html#ad24595002512f9f00e8e45216d6f5dfb">getDescriptor</a> ()</td></tr>
Chris@3 103 <tr class="memdesc:ad24595002512f9f00e8e45216d6f5dfb"><td class="mdescLeft">&#160;</td><td class="mdescRight">Return a VampPluginDescriptor describing the plugin that is wrapped by this adapter. <a href="#ad24595002512f9f00e8e45216d6f5dfb"></a><br/></td></tr>
Chris@1 104 <tr><td colspan="2"><h2><a name="pro-methods"></a>
Chris@1 105 Protected Member Functions</h2></td></tr>
Chris@3 106 <tr class="memitem:a5dad6a9b4b170c0f284962e125ac988e"><td class="memItemLeft" align="right" valign="top">&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="classVamp_1_1PluginAdapterBase.html#a5dad6a9b4b170c0f284962e125ac988e">PluginAdapterBase</a> ()</td></tr>
Chris@3 107 <tr class="memitem:a9116adb9b7a426f4f0ded15e45a5531b"><td class="memItemLeft" align="right" valign="top">virtual <a class="el" href="classVamp_1_1Plugin.html">Plugin</a> *&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="classVamp_1_1PluginAdapterBase.html#a9116adb9b7a426f4f0ded15e45a5531b">createPlugin</a> (float inputSampleRate)=0</td></tr>
Chris@1 108 <tr><td colspan="2"><h2><a name="pro-attribs"></a>
Chris@1 109 Protected Attributes</h2></td></tr>
Chris@3 110 <tr class="memitem:a0e3594c54884efd5a7ef38030645745b"><td class="memItemLeft" align="right" valign="top">Impl *&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="classVamp_1_1PluginAdapterBase.html#a0e3594c54884efd5a7ef38030645745b">m_impl</a></td></tr>
Chris@1 111 </table>
Chris@1 112 <hr/><a name="details" id="details"></a><h2>Detailed Description</h2>
Chris@1 113 <div class="textblock"><p><a class="el" href="classVamp_1_1PluginAdapter.html" title="PluginAdapter turns a PluginAdapterBase into a specific wrapper for a particular plugin implementatio...">PluginAdapter</a> and <a class="el" href="classVamp_1_1PluginAdapterBase.html" title="PluginAdapter and PluginAdapterBase provide a wrapper class that a plugin library can use to make its...">PluginAdapterBase</a> provide a wrapper class that a plugin library can use to make its C++ <a class="el" href="classVamp_1_1Plugin.html" title="Vamp::Plugin is a base class for plugin instance classes that provide feature extraction from audio o...">Vamp::Plugin</a> objects available through the <a class="el" href="namespaceVamp.html">Vamp</a> C API. </p>
Chris@1 114 <p>Almost all <a class="el" href="namespaceVamp.html">Vamp</a> plugin libraries will want to make use of this. To do so, all they need to do is declare a PluginAdapter&lt;T&gt; for each plugin class T in their library. It's very simple, and you need to know absolutely nothing about how it works in order to use it. Just cut and paste from an existing plugin's discovery function. </p>
Chris@3 115 <dl class="section see"><dt>See also:</dt><dd><a class="el" href="plugins_8cpp.html#abb0fd6db76ddd39698bc370e0fd0ea78" title="Get the descriptor for a given plugin index in this library.">vampGetPluginDescriptor</a> </dd></dl>
Chris@1 116
Chris@1 117 <p>Definition at line <a class="el" href="PluginAdapter_8h_source.html#l00065">65</a> of file <a class="el" href="PluginAdapter_8h_source.html">PluginAdapter.h</a>.</p>
Chris@1 118 </div><hr/><h2>Constructor &amp; Destructor Documentation</h2>
Chris@3 119 <a class="anchor" id="aaa8afd318b6c3da108e1cbcc7e46603d"></a>
Chris@1 120 <div class="memitem">
Chris@1 121 <div class="memproto">
Chris@1 122 <table class="memname">
Chris@1 123 <tr>
Chris@3 124 <td class="memname">virtual <a class="el" href="classVamp_1_1PluginAdapterBase.html#aaa8afd318b6c3da108e1cbcc7e46603d">Vamp::PluginAdapterBase::~PluginAdapterBase</a> </td>
Chris@1 125 <td>(</td>
Chris@1 126 <td class="paramname"></td><td>)</td>
Chris@1 127 <td><code> [virtual]</code></td>
Chris@1 128 </tr>
Chris@1 129 </table>
Chris@1 130 </div>
Chris@1 131 <div class="memdoc">
Chris@1 132
Chris@1 133 </div>
Chris@1 134 </div>
Chris@3 135 <a class="anchor" id="a5dad6a9b4b170c0f284962e125ac988e"></a>
Chris@1 136 <div class="memitem">
Chris@1 137 <div class="memproto">
Chris@1 138 <table class="memname">
Chris@1 139 <tr>
Chris@3 140 <td class="memname"><a class="el" href="classVamp_1_1PluginAdapterBase.html#a5dad6a9b4b170c0f284962e125ac988e">Vamp::PluginAdapterBase::PluginAdapterBase</a> </td>
Chris@1 141 <td>(</td>
Chris@1 142 <td class="paramname"></td><td>)</td>
Chris@1 143 <td><code> [protected]</code></td>
Chris@1 144 </tr>
Chris@1 145 </table>
Chris@1 146 </div>
Chris@1 147 <div class="memdoc">
Chris@1 148
Chris@1 149 </div>
Chris@1 150 </div>
Chris@1 151 <hr/><h2>Member Function Documentation</h2>
Chris@3 152 <a class="anchor" id="ad24595002512f9f00e8e45216d6f5dfb"></a>
Chris@1 153 <div class="memitem">
Chris@1 154 <div class="memproto">
Chris@1 155 <table class="memname">
Chris@1 156 <tr>
Chris@3 157 <td class="memname">const <a class="el" href="vamp_8h.html#aa1d6e0792099b9516a89b5fb7ed2ad2b">VampPluginDescriptor</a>* <a class="el" href="classVamp_1_1PluginAdapterBase.html#ad24595002512f9f00e8e45216d6f5dfb">Vamp::PluginAdapterBase::getDescriptor</a> </td>
Chris@1 158 <td>(</td>
Chris@1 159 <td class="paramname"></td><td>)</td>
Chris@1 160 <td></td>
Chris@1 161 </tr>
Chris@1 162 </table>
Chris@1 163 </div>
Chris@1 164 <div class="memdoc">
Chris@1 165
Chris@1 166 <p>Return a VampPluginDescriptor describing the plugin that is wrapped by this adapter. </p>
Chris@1 167
Chris@1 168 <p>Referenced by <a class="el" href="plugins_8cpp_source.html#l00054">vampGetPluginDescriptor()</a>.</p>
Chris@1 169
Chris@1 170 </div>
Chris@1 171 </div>
Chris@3 172 <a class="anchor" id="a9116adb9b7a426f4f0ded15e45a5531b"></a>
Chris@1 173 <div class="memitem">
Chris@1 174 <div class="memproto">
Chris@1 175 <table class="memname">
Chris@1 176 <tr>
Chris@3 177 <td class="memname">virtual <a class="el" href="classVamp_1_1Plugin.html">Plugin</a>* <a class="el" href="classVamp_1_1PluginAdapterBase.html#a9116adb9b7a426f4f0ded15e45a5531b">Vamp::PluginAdapterBase::createPlugin</a> </td>
Chris@1 178 <td>(</td>
Chris@1 179 <td class="paramtype">float&#160;</td>
Chris@1 180 <td class="paramname"><em>inputSampleRate</em></td><td>)</td>
Chris@1 181 <td><code> [protected, pure virtual]</code></td>
Chris@1 182 </tr>
Chris@1 183 </table>
Chris@1 184 </div>
Chris@1 185 <div class="memdoc">
Chris@1 186
Chris@1 187 <p>Implemented in <a class="el" href="classVamp_1_1PluginAdapter.html#a3f387e7e37409e00d32477903b5b13d3">Vamp::PluginAdapter&lt; P &gt;</a>.</p>
Chris@1 188
Chris@1 189 </div>
Chris@1 190 </div>
Chris@1 191 <hr/><h2>Member Data Documentation</h2>
Chris@3 192 <a class="anchor" id="a0e3594c54884efd5a7ef38030645745b"></a>
Chris@1 193 <div class="memitem">
Chris@1 194 <div class="memproto">
Chris@1 195 <table class="memname">
Chris@1 196 <tr>
Chris@1 197 <td class="memname">Impl* <a class="el" href="classVamp_1_1PluginAdapterBase.html#a0e3594c54884efd5a7ef38030645745b">Vamp::PluginAdapterBase::m_impl</a><code> [protected]</code></td>
Chris@1 198 </tr>
Chris@1 199 </table>
Chris@1 200 </div>
Chris@1 201 <div class="memdoc">
Chris@1 202
Chris@1 203 <p>Definition at line <a class="el" href="PluginAdapter_8h_source.html#l00081">81</a> of file <a class="el" href="PluginAdapter_8h_source.html">PluginAdapter.h</a>.</p>
Chris@1 204
Chris@1 205 </div>
Chris@1 206 </div>
Chris@1 207 <hr/>The documentation for this class was generated from the following file:<ul>
Chris@1 208 <li><a class="el" href="PluginAdapter_8h_source.html">PluginAdapter.h</a></li>
Chris@1 209 </ul>
Chris@3 210 </div><!-- contents -->
Chris@1 211 </div>
Chris@1 212 <div id="nav-path" class="navpath">
Chris@1 213 <ul>
Chris@1 214 <li class="navelem"><a class="el" href="namespaceVamp.html">Vamp</a> </li>
Chris@1 215 <li class="navelem"><a class="el" href="classVamp_1_1PluginAdapterBase.html">PluginAdapterBase</a> </li>
Chris@1 216
Chris@3 217 <li class="footer">Generated on Fri Jul 13 2012 13:28:49 for VampPluginSDK by
Chris@1 218 <a href="http://www.doxygen.org/index.html">
Chris@3 219 <img class="footer" src="doxygen.png" alt="doxygen"/></a> 1.8.0 </li>
Chris@1 220 </ul>
Chris@1 221 </div>
Chris@1 222
Chris@1 223
Chris@1 224 </body>
Chris@1 225 </html>