annotate code-docs/classVamp_1_1PluginAdapterBase.html @ 1:3c430ef1ed66 vamp-plugin-sdk-v2.3

Add code docs from SDK 2.3
author Chris Cannam
date Tue, 04 Oct 2011 14:56:07 +0100
parents
children 5c2683745b33
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@1 5 <title>VampPluginSDK: Vamp::PluginAdapterBase Class Reference</title>
Chris@1 6
Chris@1 7 <link href="tabs.css" rel="stylesheet" type="text/css"/>
Chris@1 8 <link href="doxygen.css" rel="stylesheet" type="text/css" />
Chris@1 9 <link href="navtree.css" rel="stylesheet" type="text/css"/>
Chris@1 10 <script type="text/javascript" src="jquery.js"></script>
Chris@1 11 <script type="text/javascript" src="resize.js"></script>
Chris@1 12 <script type="text/javascript" src="navtree.js"></script>
Chris@1 13 <script type="text/javascript">
Chris@1 14 $(document).ready(initResizable);
Chris@1 15 </script>
Chris@1 16
Chris@1 17
Chris@1 18 </head>
Chris@1 19 <body>
Chris@1 20 <div id="top"><!-- do not remove this div! -->
Chris@1 21
Chris@1 22
Chris@1 23 <div id="titlearea">
Chris@1 24 <table cellspacing="0" cellpadding="0">
Chris@1 25 <tbody>
Chris@1 26 <tr style="height: 56px;">
Chris@1 27
Chris@1 28
Chris@1 29 <td style="padding-left: 0.5em;">
Chris@1 30 <div id="projectname">VampPluginSDK
Chris@1 31 &#160;<span id="projectnumber">2.1</span>
Chris@1 32 </div>
Chris@1 33
Chris@1 34 </td>
Chris@1 35
Chris@1 36
Chris@1 37
Chris@1 38 </tr>
Chris@1 39 </tbody>
Chris@1 40 </table>
Chris@1 41 </div>
Chris@1 42
Chris@1 43 <!-- Generated by Doxygen 1.7.5.1 -->
Chris@1 44 <div id="navrow1" class="tabs">
Chris@1 45 <ul class="tablist">
Chris@1 46 <li><a href="index.html"><span>Main&#160;Page</span></a></li>
Chris@1 47 <li><a href="namespaces.html"><span>Namespaces</span></a></li>
Chris@1 48 <li class="current"><a href="annotated.html"><span>Classes</span></a></li>
Chris@1 49 <li><a href="files.html"><span>Files</span></a></li>
Chris@1 50 <li><a href="dirs.html"><span>Directories</span></a></li>
Chris@1 51 </ul>
Chris@1 52 </div>
Chris@1 53 <div id="navrow2" class="tabs2">
Chris@1 54 <ul class="tablist">
Chris@1 55 <li><a href="annotated.html"><span>Class&#160;List</span></a></li>
Chris@1 56 <li><a href="inherits.html"><span>Class&#160;Hierarchy</span></a></li>
Chris@1 57 <li><a href="functions.html"><span>Class&#160;Members</span></a></li>
Chris@1 58 </ul>
Chris@1 59 </div>
Chris@1 60 </div>
Chris@1 61 <div id="side-nav" class="ui-resizable side-nav-resizable">
Chris@1 62 <div id="nav-tree">
Chris@1 63 <div id="nav-tree-contents">
Chris@1 64 </div>
Chris@1 65 </div>
Chris@1 66 <div id="splitbar" style="-moz-user-select:none;"
Chris@1 67 class="ui-resizable-handle">
Chris@1 68 </div>
Chris@1 69 </div>
Chris@1 70 <script type="text/javascript">
Chris@1 71 initNavTree('classVamp_1_1PluginAdapterBase.html','');
Chris@1 72 </script>
Chris@1 73 <div id="doc-content">
Chris@1 74 <div class="header">
Chris@1 75 <div class="summary">
Chris@1 76 <a href="#pub-methods">Public Member Functions</a> &#124;
Chris@1 77 <a href="#pro-methods">Protected Member Functions</a> &#124;
Chris@1 78 <a href="#pro-attribs">Protected Attributes</a> </div>
Chris@1 79 <div class="headertitle">
Chris@1 80 <div class="title">Vamp::PluginAdapterBase Class Reference</div> </div>
Chris@1 81 </div>
Chris@1 82 <div class="contents">
Chris@1 83 <!-- doxytag: class="Vamp::PluginAdapterBase" -->
Chris@1 84 <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 85 <a href="classVamp_1_1PluginAdapterBase.html#details">More...</a></p>
Chris@1 86
Chris@1 87 <p><code>#include &lt;<a class="el" href="PluginAdapter_8h_source.html">vamp-sdk/PluginAdapter.h</a>&gt;</code></p>
Chris@1 88 <div class="dynheader">
Chris@1 89 Inheritance diagram for Vamp::PluginAdapterBase:</div>
Chris@1 90 <div class="dyncontent">
Chris@1 91 <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 92 <map name="Vamp_1_1PluginAdapterBase_inherit__map" id="Vamp_1_1PluginAdapterBase_inherit__map">
Chris@1 93 <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 94 <center><span class="legend">[<a target="top" href="graph_legend.html">legend</a>]</span></center></div>
Chris@1 95
Chris@1 96 <p><a href="classVamp_1_1PluginAdapterBase-members.html">List of all members.</a></p>
Chris@1 97 <table class="memberdecls">
Chris@1 98 <tr><td colspan="2"><h2><a name="pub-methods"></a>
Chris@1 99 Public Member Functions</h2></td></tr>
Chris@1 100 <tr><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@1 101 <tr><td class="memItemLeft" align="right" valign="top">const <a class="el" href="vamp_8h.html#aa1d6e0792099b9516a89b5fb7ed2ad2b">VampPluginDescriptor</a> *&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="classVamp_1_1PluginAdapterBase.html#ad24595002512f9f00e8e45216d6f5dfb">getDescriptor</a> ()</td></tr>
Chris@1 102 <tr><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 103 <tr><td colspan="2"><h2><a name="pro-methods"></a>
Chris@1 104 Protected Member Functions</h2></td></tr>
Chris@1 105 <tr><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@1 106 <tr><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 107 <tr><td colspan="2"><h2><a name="pro-attribs"></a>
Chris@1 108 Protected Attributes</h2></td></tr>
Chris@1 109 <tr><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 110 </table>
Chris@1 111 <hr/><a name="details" id="details"></a><h2>Detailed Description</h2>
Chris@1 112 <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 113 <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@1 114 <dl class="see"><dt><b>See also:</b></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 115
Chris@1 116 <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 117 </div><hr/><h2>Constructor &amp; Destructor Documentation</h2>
Chris@1 118 <a class="anchor" id="aaa8afd318b6c3da108e1cbcc7e46603d"></a><!-- doxytag: member="Vamp::PluginAdapterBase::~PluginAdapterBase" ref="aaa8afd318b6c3da108e1cbcc7e46603d" args="()" -->
Chris@1 119 <div class="memitem">
Chris@1 120 <div class="memproto">
Chris@1 121 <table class="memname">
Chris@1 122 <tr>
Chris@1 123 <td class="memname">virtual Vamp::PluginAdapterBase::~PluginAdapterBase </td>
Chris@1 124 <td>(</td>
Chris@1 125 <td class="paramname"></td><td>)</td>
Chris@1 126 <td><code> [virtual]</code></td>
Chris@1 127 </tr>
Chris@1 128 </table>
Chris@1 129 </div>
Chris@1 130 <div class="memdoc">
Chris@1 131
Chris@1 132 </div>
Chris@1 133 </div>
Chris@1 134 <a class="anchor" id="a5dad6a9b4b170c0f284962e125ac988e"></a><!-- doxytag: member="Vamp::PluginAdapterBase::PluginAdapterBase" ref="a5dad6a9b4b170c0f284962e125ac988e" args="()" -->
Chris@1 135 <div class="memitem">
Chris@1 136 <div class="memproto">
Chris@1 137 <table class="memname">
Chris@1 138 <tr>
Chris@1 139 <td class="memname">Vamp::PluginAdapterBase::PluginAdapterBase </td>
Chris@1 140 <td>(</td>
Chris@1 141 <td class="paramname"></td><td>)</td>
Chris@1 142 <td><code> [protected]</code></td>
Chris@1 143 </tr>
Chris@1 144 </table>
Chris@1 145 </div>
Chris@1 146 <div class="memdoc">
Chris@1 147
Chris@1 148 </div>
Chris@1 149 </div>
Chris@1 150 <hr/><h2>Member Function Documentation</h2>
Chris@1 151 <a class="anchor" id="ad24595002512f9f00e8e45216d6f5dfb"></a><!-- doxytag: member="Vamp::PluginAdapterBase::getDescriptor" ref="ad24595002512f9f00e8e45216d6f5dfb" args="()" -->
Chris@1 152 <div class="memitem">
Chris@1 153 <div class="memproto">
Chris@1 154 <table class="memname">
Chris@1 155 <tr>
Chris@1 156 <td class="memname">const <a class="el" href="vamp_8h.html#aa1d6e0792099b9516a89b5fb7ed2ad2b">VampPluginDescriptor</a>* Vamp::PluginAdapterBase::getDescriptor </td>
Chris@1 157 <td>(</td>
Chris@1 158 <td class="paramname"></td><td>)</td>
Chris@1 159 <td></td>
Chris@1 160 </tr>
Chris@1 161 </table>
Chris@1 162 </div>
Chris@1 163 <div class="memdoc">
Chris@1 164
Chris@1 165 <p>Return a VampPluginDescriptor describing the plugin that is wrapped by this adapter. </p>
Chris@1 166
Chris@1 167 <p>Referenced by <a class="el" href="plugins_8cpp_source.html#l00054">vampGetPluginDescriptor()</a>.</p>
Chris@1 168
Chris@1 169 </div>
Chris@1 170 </div>
Chris@1 171 <a class="anchor" id="a9116adb9b7a426f4f0ded15e45a5531b"></a><!-- doxytag: member="Vamp::PluginAdapterBase::createPlugin" ref="a9116adb9b7a426f4f0ded15e45a5531b" args="(float inputSampleRate)=0" -->
Chris@1 172 <div class="memitem">
Chris@1 173 <div class="memproto">
Chris@1 174 <table class="memname">
Chris@1 175 <tr>
Chris@1 176 <td class="memname">virtual <a class="el" href="classVamp_1_1Plugin.html">Plugin</a>* Vamp::PluginAdapterBase::createPlugin </td>
Chris@1 177 <td>(</td>
Chris@1 178 <td class="paramtype">float&#160;</td>
Chris@1 179 <td class="paramname"><em>inputSampleRate</em></td><td>)</td>
Chris@1 180 <td><code> [protected, pure virtual]</code></td>
Chris@1 181 </tr>
Chris@1 182 </table>
Chris@1 183 </div>
Chris@1 184 <div class="memdoc">
Chris@1 185
Chris@1 186 <p>Implemented in <a class="el" href="classVamp_1_1PluginAdapter.html#a3f387e7e37409e00d32477903b5b13d3">Vamp::PluginAdapter&lt; P &gt;</a>.</p>
Chris@1 187
Chris@1 188 </div>
Chris@1 189 </div>
Chris@1 190 <hr/><h2>Member Data Documentation</h2>
Chris@1 191 <a class="anchor" id="a0e3594c54884efd5a7ef38030645745b"></a><!-- doxytag: member="Vamp::PluginAdapterBase::m_impl" ref="a0e3594c54884efd5a7ef38030645745b" args="" -->
Chris@1 192 <div class="memitem">
Chris@1 193 <div class="memproto">
Chris@1 194 <table class="memname">
Chris@1 195 <tr>
Chris@1 196 <td class="memname">Impl* <a class="el" href="classVamp_1_1PluginAdapterBase.html#a0e3594c54884efd5a7ef38030645745b">Vamp::PluginAdapterBase::m_impl</a><code> [protected]</code></td>
Chris@1 197 </tr>
Chris@1 198 </table>
Chris@1 199 </div>
Chris@1 200 <div class="memdoc">
Chris@1 201
Chris@1 202 <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 203
Chris@1 204 </div>
Chris@1 205 </div>
Chris@1 206 <hr/>The documentation for this class was generated from the following file:<ul>
Chris@1 207 <li><a class="el" href="PluginAdapter_8h_source.html">PluginAdapter.h</a></li>
Chris@1 208 </ul>
Chris@1 209 </div>
Chris@1 210 </div>
Chris@1 211 <div id="nav-path" class="navpath">
Chris@1 212 <ul>
Chris@1 213 <li class="navelem"><a class="el" href="namespaceVamp.html">Vamp</a> </li>
Chris@1 214 <li class="navelem"><a class="el" href="classVamp_1_1PluginAdapterBase.html">PluginAdapterBase</a> </li>
Chris@1 215
Chris@1 216 <li class="footer">Generated on Tue Oct 4 2011 14:38:52 for VampPluginSDK by
Chris@1 217 <a href="http://www.doxygen.org/index.html">
Chris@1 218 <img class="footer" src="doxygen.png" alt="doxygen"/></a> 1.7.5.1 </li>
Chris@1 219 </ul>
Chris@1 220 </div>
Chris@1 221
Chris@1 222
Chris@1 223 </body>
Chris@1 224 </html>