annotate code-doc/vamp_8h.html @ 0:351c4ebce5f9 website

* Move website from vamp-website/trunk to plain website
author cannam
date Mon, 22 Sep 2008 13:01:46 +0000
parents
children cc0be37dc9d3
rev   line source
cannam@0 1 <!DOCTYPE HTML PUBLIC "-//W3C//DTD HTML 4.01 Transitional//EN">
cannam@0 2 <html><head><meta http-equiv="Content-Type" content="text/html;charset=UTF-8">
cannam@0 3 <title>VampPluginSDK: vamp.h File Reference</title>
cannam@0 4 <link href="doxygen.css" rel="stylesheet" type="text/css">
cannam@0 5 <link href="tabs.css" rel="stylesheet" type="text/css">
cannam@0 6 </head><body>
cannam@0 7 <!-- Generated by Doxygen 1.5.5 -->
cannam@0 8 <div class="navigation" id="top">
cannam@0 9 <div class="tabs">
cannam@0 10 <ul>
cannam@0 11 <li><a href="main.html"><span>Main&nbsp;Page</span></a></li>
cannam@0 12 <li><a href="namespaces.html"><span>Namespaces</span></a></li>
cannam@0 13 <li><a href="annotated.html"><span>Classes</span></a></li>
cannam@0 14 <li class="current"><a href="files.html"><span>Files</span></a></li>
cannam@0 15 <li><a href="dirs.html"><span>Directories</span></a></li>
cannam@0 16 </ul>
cannam@0 17 </div>
cannam@0 18 <div class="navpath"><a class="el" href="dir_b086eb10f854304ab96fb3af468374a7.html">vamp</a>
cannam@0 19 </div>
cannam@0 20 </div>
cannam@0 21 <div class="contents">
cannam@0 22 <h1>vamp.h File Reference</h1>
cannam@0 23 <p>
cannam@0 24
cannam@0 25 <p>
cannam@0 26 <a href="vamp_8h-source.html">Go to the source code of this file.</a><table border="0" cellpadding="0" cellspacing="0">
cannam@0 27 <tr><td></td></tr>
cannam@0 28 <tr><td colspan="2"><br><h2>Classes</h2></td></tr>
cannam@0 29 <tr><td class="memItemLeft" nowrap align="right" valign="top">struct &nbsp;</td><td class="memItemRight" valign="bottom"><a class="el" href="struct__VampParameterDescriptor.html">_VampParameterDescriptor</a></td></tr>
cannam@0 30
cannam@0 31 <tr><td class="mdescLeft">&nbsp;</td><td class="mdescRight">C language API for <a class="el" href="namespaceVamp.html" title="If you want to compile using FFTW instead of the built-in FFT implementation for...">Vamp</a> plugins. <a href="struct__VampParameterDescriptor.html#_details">More...</a><br></td></tr>
cannam@0 32 <tr><td class="memItemLeft" nowrap align="right" valign="top">struct &nbsp;</td><td class="memItemRight" valign="bottom"><a class="el" href="struct__VampOutputDescriptor.html">_VampOutputDescriptor</a></td></tr>
cannam@0 33
cannam@0 34 <tr><td class="memItemLeft" nowrap align="right" valign="top">struct &nbsp;</td><td class="memItemRight" valign="bottom"><a class="el" href="struct__VampFeature.html">_VampFeature</a></td></tr>
cannam@0 35
cannam@0 36 <tr><td class="memItemLeft" nowrap align="right" valign="top">struct &nbsp;</td><td class="memItemRight" valign="bottom"><a class="el" href="struct__VampFeatureList.html">_VampFeatureList</a></td></tr>
cannam@0 37
cannam@0 38 <tr><td class="memItemLeft" nowrap align="right" valign="top">struct &nbsp;</td><td class="memItemRight" valign="bottom"><a class="el" href="struct__VampPluginDescriptor.html">_VampPluginDescriptor</a></td></tr>
cannam@0 39
cannam@0 40 <tr><td colspan="2"><br><h2>Defines</h2></td></tr>
cannam@0 41 <tr><td class="memItemLeft" nowrap align="right" valign="top">#define&nbsp;</td><td class="memItemRight" valign="bottom"><a class="el" href="vamp_8h.html#6d6c8c755dbabf161f72712e0e2143c7">VAMP_API_VERSION</a>&nbsp;&nbsp;&nbsp;1</td></tr>
cannam@0 42
cannam@0 43 <tr><td class="mdescLeft">&nbsp;</td><td class="mdescRight">Plugin API version. <a href="#6d6c8c755dbabf161f72712e0e2143c7"></a><br></td></tr>
cannam@0 44 <tr><td colspan="2"><br><h2>Typedefs</h2></td></tr>
cannam@0 45 <tr><td class="memItemLeft" nowrap align="right" valign="top">typedef struct <br>
cannam@0 46 <a class="el" href="struct__VampParameterDescriptor.html">_VampParameterDescriptor</a>&nbsp;</td><td class="memItemRight" valign="bottom"><a class="el" href="vamp_8h.html#e26a9d54a92f1c083a1b209a25a8e44e">VampParameterDescriptor</a></td></tr>
cannam@0 47
cannam@0 48 <tr><td class="memItemLeft" nowrap align="right" valign="top">typedef struct <br>
cannam@0 49 <a class="el" href="struct__VampOutputDescriptor.html">_VampOutputDescriptor</a>&nbsp;</td><td class="memItemRight" valign="bottom"><a class="el" href="vamp_8h.html#a8429dd9c60d65800c58574c2b06bf66">VampOutputDescriptor</a></td></tr>
cannam@0 50
cannam@0 51 <tr><td class="memItemLeft" nowrap align="right" valign="top">typedef struct <a class="el" href="struct__VampFeature.html">_VampFeature</a>&nbsp;</td><td class="memItemRight" valign="bottom"><a class="el" href="vamp_8h.html#8d04355c13e5ff7a146abcb168cb919f">VampFeature</a></td></tr>
cannam@0 52
cannam@0 53 <tr><td class="memItemLeft" nowrap align="right" valign="top">typedef struct <a class="el" href="struct__VampFeatureList.html">_VampFeatureList</a>&nbsp;</td><td class="memItemRight" valign="bottom"><a class="el" href="vamp_8h.html#5f257e3f8b5ca1ca4c159d486e219078">VampFeatureList</a></td></tr>
cannam@0 54
cannam@0 55 <tr><td class="memItemLeft" nowrap align="right" valign="top">typedef void *&nbsp;</td><td class="memItemRight" valign="bottom"><a class="el" href="vamp_8h.html#d3be2952b1f4ad7d775940a6db75c79b">VampPluginHandle</a></td></tr>
cannam@0 56
cannam@0 57 <tr><td class="memItemLeft" nowrap align="right" valign="top">typedef struct <br>
cannam@0 58 <a class="el" href="struct__VampPluginDescriptor.html">_VampPluginDescriptor</a>&nbsp;</td><td class="memItemRight" valign="bottom"><a class="el" href="vamp_8h.html#a1d6e0792099b9516a89b5fb7ed2ad2b">VampPluginDescriptor</a></td></tr>
cannam@0 59
cannam@0 60 <tr><td class="memItemLeft" nowrap align="right" valign="top">typedef const <br>
cannam@0 61 <a class="el" href="struct__VampPluginDescriptor.html">VampPluginDescriptor</a> *(*&nbsp;</td><td class="memItemRight" valign="bottom"><a class="el" href="vamp_8h.html#551bb7e0d8c970c2202be5f881817478">VampGetPluginDescriptorFunction</a> )(unsigned int, unsigned int)</td></tr>
cannam@0 62
cannam@0 63 <tr><td class="mdescLeft">&nbsp;</td><td class="mdescRight">Function pointer type for vampGetPluginDescriptor. <a href="#551bb7e0d8c970c2202be5f881817478"></a><br></td></tr>
cannam@0 64 <tr><td colspan="2"><br><h2>Enumerations</h2></td></tr>
cannam@0 65 <tr><td class="memItemLeft" nowrap align="right" valign="top">enum &nbsp;</td><td class="memItemRight" valign="bottom"><a class="el" href="vamp_8h.html#a24a8cee023d8b7659d25cbe0584b821">VampSampleType</a> { <a class="el" href="vamp_8h.html#a24a8cee023d8b7659d25cbe0584b821b546deafd57f175fb1e7f9cbea1c5113">vampOneSamplePerStep</a>,
cannam@0 66 <a class="el" href="vamp_8h.html#a24a8cee023d8b7659d25cbe0584b821afc8a05f722bc83ecce227e12e838cf8">vampFixedSampleRate</a>,
cannam@0 67 <a class="el" href="vamp_8h.html#a24a8cee023d8b7659d25cbe0584b821bae8a21a9e30eb73e16d6abc6c7415e8">vampVariableSampleRate</a>
cannam@0 68 }</td></tr>
cannam@0 69
cannam@0 70 <tr><td class="memItemLeft" nowrap align="right" valign="top">enum &nbsp;</td><td class="memItemRight" valign="bottom"><a class="el" href="vamp_8h.html#b107386a5f042feddf6446bea23bb765">VampInputDomain</a> { <a class="el" href="vamp_8h.html#b107386a5f042feddf6446bea23bb765e3dbb77ff3e8f292966fd3748888e1a1">vampTimeDomain</a>,
cannam@0 71 <a class="el" href="vamp_8h.html#b107386a5f042feddf6446bea23bb765ee0c1c0d429276f071b8c0730b7bd87d">vampFrequencyDomain</a>
cannam@0 72 }</td></tr>
cannam@0 73
cannam@0 74 <tr><td colspan="2"><br><h2>Functions</h2></td></tr>
cannam@0 75 <tr><td class="memItemLeft" nowrap align="right" valign="top">const <a class="el" href="struct__VampPluginDescriptor.html">VampPluginDescriptor</a> *&nbsp;</td><td class="memItemRight" valign="bottom"><a class="el" href="vamp_8h.html#50cf6f17d0718f02093be6c7f63fcf30">vampGetPluginDescriptor</a> (unsigned int hostApiVersion, unsigned int index)</td></tr>
cannam@0 76
cannam@0 77 <tr><td class="mdescLeft">&nbsp;</td><td class="mdescRight">Get the descriptor for a given plugin index in this library. <a href="#50cf6f17d0718f02093be6c7f63fcf30"></a><br></td></tr>
cannam@0 78 </table>
cannam@0 79 <hr><h2>Define Documentation</h2>
cannam@0 80 <a class="anchor" name="6d6c8c755dbabf161f72712e0e2143c7"></a><!-- doxytag: member="vamp.h::VAMP_API_VERSION" ref="6d6c8c755dbabf161f72712e0e2143c7" args="" -->
cannam@0 81 <div class="memitem">
cannam@0 82 <div class="memproto">
cannam@0 83 <table class="memname">
cannam@0 84 <tr>
cannam@0 85 <td class="memname">#define VAMP_API_VERSION&nbsp;&nbsp;&nbsp;1 </td>
cannam@0 86 </tr>
cannam@0 87 </table>
cannam@0 88 </div>
cannam@0 89 <div class="memdoc">
cannam@0 90
cannam@0 91 <p>
cannam@0 92 Plugin API version.
cannam@0 93 <p>
cannam@0 94 This is incremented when a change is made that changes the binary layout of the descriptor records. When this happens, there should be a mechanism for retaining compatibility with older hosts and/or plugins.<p>
cannam@0 95 See also the vampApiVersion field in the plugin descriptor, and the hostApiVersion argument to the vampGetPluginDescriptor function.
cannam@0 96 <p>Definition at line <a class="el" href="vamp_8h-source.html#l00053">53</a> of file <a class="el" href="vamp_8h-source.html">vamp.h</a>.</p>
cannam@0 97
cannam@0 98 <p>Referenced by <a class="el" href="PluginLoader_8cpp-source.html#l00226">Vamp::HostExt::PluginLoader::Impl::enumeratePlugins()</a>, <a class="el" href="PluginAdapter_8cpp-source.html#l00153">Vamp::PluginAdapterBase::Impl::getDescriptor()</a>, <a class="el" href="PluginLoader_8cpp-source.html#l00355">Vamp::HostExt::PluginLoader::Impl::loadPlugin()</a>, and <a class="el" href="vamp-simple-host_8cpp-source.html#l00121">main()</a>.</p>
cannam@0 99
cannam@0 100 </div>
cannam@0 101 </div><p>
cannam@0 102 <hr><h2>Typedef Documentation</h2>
cannam@0 103 <a class="anchor" name="e26a9d54a92f1c083a1b209a25a8e44e"></a><!-- doxytag: member="vamp.h::VampParameterDescriptor" ref="e26a9d54a92f1c083a1b209a25a8e44e" args="" -->
cannam@0 104 <div class="memitem">
cannam@0 105 <div class="memproto">
cannam@0 106 <table class="memname">
cannam@0 107 <tr>
cannam@0 108 <td class="memname">typedef struct <a class="el" href="struct__VampParameterDescriptor.html">_VampParameterDescriptor</a> <a class="el" href="struct__VampParameterDescriptor.html">VampParameterDescriptor</a> </td>
cannam@0 109 </tr>
cannam@0 110 </table>
cannam@0 111 </div>
cannam@0 112 <div class="memdoc">
cannam@0 113
cannam@0 114 <p>
cannam@0 115
cannam@0 116 </div>
cannam@0 117 </div><p>
cannam@0 118 <a class="anchor" name="a8429dd9c60d65800c58574c2b06bf66"></a><!-- doxytag: member="vamp.h::VampOutputDescriptor" ref="a8429dd9c60d65800c58574c2b06bf66" args="" -->
cannam@0 119 <div class="memitem">
cannam@0 120 <div class="memproto">
cannam@0 121 <table class="memname">
cannam@0 122 <tr>
cannam@0 123 <td class="memname">typedef struct <a class="el" href="struct__VampOutputDescriptor.html">_VampOutputDescriptor</a> <a class="el" href="struct__VampOutputDescriptor.html">VampOutputDescriptor</a> </td>
cannam@0 124 </tr>
cannam@0 125 </table>
cannam@0 126 </div>
cannam@0 127 <div class="memdoc">
cannam@0 128
cannam@0 129 <p>
cannam@0 130
cannam@0 131 </div>
cannam@0 132 </div><p>
cannam@0 133 <a class="anchor" name="8d04355c13e5ff7a146abcb168cb919f"></a><!-- doxytag: member="vamp.h::VampFeature" ref="8d04355c13e5ff7a146abcb168cb919f" args="" -->
cannam@0 134 <div class="memitem">
cannam@0 135 <div class="memproto">
cannam@0 136 <table class="memname">
cannam@0 137 <tr>
cannam@0 138 <td class="memname">typedef struct <a class="el" href="struct__VampFeature.html">_VampFeature</a> <a class="el" href="struct__VampFeature.html">VampFeature</a> </td>
cannam@0 139 </tr>
cannam@0 140 </table>
cannam@0 141 </div>
cannam@0 142 <div class="memdoc">
cannam@0 143
cannam@0 144 <p>
cannam@0 145
cannam@0 146 </div>
cannam@0 147 </div><p>
cannam@0 148 <a class="anchor" name="5f257e3f8b5ca1ca4c159d486e219078"></a><!-- doxytag: member="vamp.h::VampFeatureList" ref="5f257e3f8b5ca1ca4c159d486e219078" args="" -->
cannam@0 149 <div class="memitem">
cannam@0 150 <div class="memproto">
cannam@0 151 <table class="memname">
cannam@0 152 <tr>
cannam@0 153 <td class="memname">typedef struct <a class="el" href="struct__VampFeatureList.html">_VampFeatureList</a> <a class="el" href="struct__VampFeatureList.html">VampFeatureList</a> </td>
cannam@0 154 </tr>
cannam@0 155 </table>
cannam@0 156 </div>
cannam@0 157 <div class="memdoc">
cannam@0 158
cannam@0 159 <p>
cannam@0 160
cannam@0 161 </div>
cannam@0 162 </div><p>
cannam@0 163 <a class="anchor" name="d3be2952b1f4ad7d775940a6db75c79b"></a><!-- doxytag: member="vamp.h::VampPluginHandle" ref="d3be2952b1f4ad7d775940a6db75c79b" args="" -->
cannam@0 164 <div class="memitem">
cannam@0 165 <div class="memproto">
cannam@0 166 <table class="memname">
cannam@0 167 <tr>
cannam@0 168 <td class="memname">typedef void* <a class="el" href="vamp_8h.html#d3be2952b1f4ad7d775940a6db75c79b">VampPluginHandle</a> </td>
cannam@0 169 </tr>
cannam@0 170 </table>
cannam@0 171 </div>
cannam@0 172 <div class="memdoc">
cannam@0 173
cannam@0 174 <p>
cannam@0 175
cannam@0 176 <p>Definition at line <a class="el" href="vamp_8h-source.html#l00204">204</a> of file <a class="el" href="vamp_8h-source.html">vamp.h</a>.</p>
cannam@0 177
cannam@0 178 </div>
cannam@0 179 </div><p>
cannam@0 180 <a class="anchor" name="a1d6e0792099b9516a89b5fb7ed2ad2b"></a><!-- doxytag: member="vamp.h::VampPluginDescriptor" ref="a1d6e0792099b9516a89b5fb7ed2ad2b" args="" -->
cannam@0 181 <div class="memitem">
cannam@0 182 <div class="memproto">
cannam@0 183 <table class="memname">
cannam@0 184 <tr>
cannam@0 185 <td class="memname">typedef struct <a class="el" href="struct__VampPluginDescriptor.html">_VampPluginDescriptor</a> <a class="el" href="struct__VampPluginDescriptor.html">VampPluginDescriptor</a> </td>
cannam@0 186 </tr>
cannam@0 187 </table>
cannam@0 188 </div>
cannam@0 189 <div class="memdoc">
cannam@0 190
cannam@0 191 <p>
cannam@0 192
cannam@0 193 </div>
cannam@0 194 </div><p>
cannam@0 195 <a class="anchor" name="551bb7e0d8c970c2202be5f881817478"></a><!-- doxytag: member="vamp.h::VampGetPluginDescriptorFunction" ref="551bb7e0d8c970c2202be5f881817478" args=")(unsigned int, unsigned int)" -->
cannam@0 196 <div class="memitem">
cannam@0 197 <div class="memproto">
cannam@0 198 <table class="memname">
cannam@0 199 <tr>
cannam@0 200 <td class="memname">typedef const <a class="el" href="struct__VampPluginDescriptor.html">VampPluginDescriptor</a>*(* <a class="el" href="vamp_8h.html#551bb7e0d8c970c2202be5f881817478">VampGetPluginDescriptorFunction</a>)(unsigned int, unsigned int) </td>
cannam@0 201 </tr>
cannam@0 202 </table>
cannam@0 203 </div>
cannam@0 204 <div class="memdoc">
cannam@0 205
cannam@0 206 <p>
cannam@0 207 Function pointer type for vampGetPluginDescriptor.
cannam@0 208 <p>
cannam@0 209
cannam@0 210 <p>Definition at line <a class="el" href="vamp_8h-source.html#l00340">340</a> of file <a class="el" href="vamp_8h-source.html">vamp.h</a>.</p>
cannam@0 211
cannam@0 212 </div>
cannam@0 213 </div><p>
cannam@0 214 <hr><h2>Enumeration Type Documentation</h2>
cannam@0 215 <a class="anchor" name="a24a8cee023d8b7659d25cbe0584b821"></a><!-- doxytag: member="vamp.h::VampSampleType" ref="a24a8cee023d8b7659d25cbe0584b821" args="" -->
cannam@0 216 <div class="memitem">
cannam@0 217 <div class="memproto">
cannam@0 218 <table class="memname">
cannam@0 219 <tr>
cannam@0 220 <td class="memname">enum <a class="el" href="vamp_8h.html#a24a8cee023d8b7659d25cbe0584b821">VampSampleType</a> </td>
cannam@0 221 </tr>
cannam@0 222 </table>
cannam@0 223 </div>
cannam@0 224 <div class="memdoc">
cannam@0 225
cannam@0 226 <p>
cannam@0 227 <dl compact><dt><b>Enumerator: </b></dt><dd>
cannam@0 228 <table border="0" cellspacing="2" cellpadding="0">
cannam@0 229 <tr><td valign="top"><em><a class="anchor" name="a24a8cee023d8b7659d25cbe0584b821b546deafd57f175fb1e7f9cbea1c5113"></a><!-- doxytag: member="vampOneSamplePerStep" ref="a24a8cee023d8b7659d25cbe0584b821b546deafd57f175fb1e7f9cbea1c5113" args="" -->vampOneSamplePerStep</em>&nbsp;</td><td>
cannam@0 230 Each process call returns results aligned with call's block start.
cannam@0 231 <p>
cannam@0 232 </td></tr>
cannam@0 233 <tr><td valign="top"><em><a class="anchor" name="a24a8cee023d8b7659d25cbe0584b821afc8a05f722bc83ecce227e12e838cf8"></a><!-- doxytag: member="vampFixedSampleRate" ref="a24a8cee023d8b7659d25cbe0584b821afc8a05f722bc83ecce227e12e838cf8" args="" -->vampFixedSampleRate</em>&nbsp;</td><td>
cannam@0 234 Returned results are evenly spaced at samplerate specified below.
cannam@0 235 <p>
cannam@0 236 </td></tr>
cannam@0 237 <tr><td valign="top"><em><a class="anchor" name="a24a8cee023d8b7659d25cbe0584b821bae8a21a9e30eb73e16d6abc6c7415e8"></a><!-- doxytag: member="vampVariableSampleRate" ref="a24a8cee023d8b7659d25cbe0584b821bae8a21a9e30eb73e16d6abc6c7415e8" args="" -->vampVariableSampleRate</em>&nbsp;</td><td>
cannam@0 238 Returned results have their own individual timestamps.
cannam@0 239 <p>
cannam@0 240 </td></tr>
cannam@0 241 </table>
cannam@0 242 </dl>
cannam@0 243
cannam@0 244 <p>Definition at line <a class="el" href="vamp_8h-source.html#l00105">105</a> of file <a class="el" href="vamp_8h-source.html">vamp.h</a>.</p>
cannam@0 245
cannam@0 246 </div>
cannam@0 247 </div><p>
cannam@0 248 <a class="anchor" name="b107386a5f042feddf6446bea23bb765"></a><!-- doxytag: member="vamp.h::VampInputDomain" ref="b107386a5f042feddf6446bea23bb765" args="" -->
cannam@0 249 <div class="memitem">
cannam@0 250 <div class="memproto">
cannam@0 251 <table class="memname">
cannam@0 252 <tr>
cannam@0 253 <td class="memname">enum <a class="el" href="vamp_8h.html#b107386a5f042feddf6446bea23bb765">VampInputDomain</a> </td>
cannam@0 254 </tr>
cannam@0 255 </table>
cannam@0 256 </div>
cannam@0 257 <div class="memdoc">
cannam@0 258
cannam@0 259 <p>
cannam@0 260 <dl compact><dt><b>Enumerator: </b></dt><dd>
cannam@0 261 <table border="0" cellspacing="2" cellpadding="0">
cannam@0 262 <tr><td valign="top"><em><a class="anchor" name="b107386a5f042feddf6446bea23bb765e3dbb77ff3e8f292966fd3748888e1a1"></a><!-- doxytag: member="vampTimeDomain" ref="b107386a5f042feddf6446bea23bb765e3dbb77ff3e8f292966fd3748888e1a1" args="" -->vampTimeDomain</em>&nbsp;</td><td>
cannam@0 263 </td></tr>
cannam@0 264 <tr><td valign="top"><em><a class="anchor" name="b107386a5f042feddf6446bea23bb765ee0c1c0d429276f071b8c0730b7bd87d"></a><!-- doxytag: member="vampFrequencyDomain" ref="b107386a5f042feddf6446bea23bb765ee0c1c0d429276f071b8c0730b7bd87d" args="" -->vampFrequencyDomain</em>&nbsp;</td><td>
cannam@0 265 </td></tr>
cannam@0 266 </table>
cannam@0 267 </dl>
cannam@0 268
cannam@0 269 <p>Definition at line <a class="el" href="vamp_8h-source.html#l00197">197</a> of file <a class="el" href="vamp_8h-source.html">vamp.h</a>.</p>
cannam@0 270
cannam@0 271 </div>
cannam@0 272 </div><p>
cannam@0 273 <hr><h2>Function Documentation</h2>
cannam@0 274 <a class="anchor" name="50cf6f17d0718f02093be6c7f63fcf30"></a><!-- doxytag: member="vamp.h::vampGetPluginDescriptor" ref="50cf6f17d0718f02093be6c7f63fcf30" args="(unsigned int hostApiVersion, unsigned int index)" -->
cannam@0 275 <div class="memitem">
cannam@0 276 <div class="memproto">
cannam@0 277 <table class="memname">
cannam@0 278 <tr>
cannam@0 279 <td class="memname">const <a class="el" href="struct__VampPluginDescriptor.html">VampPluginDescriptor</a>* vampGetPluginDescriptor </td>
cannam@0 280 <td>(</td>
cannam@0 281 <td class="paramtype">unsigned int&nbsp;</td>
cannam@0 282 <td class="paramname"> <em>hostApiVersion</em>, </td>
cannam@0 283 </tr>
cannam@0 284 <tr>
cannam@0 285 <td class="paramkey"></td>
cannam@0 286 <td></td>
cannam@0 287 <td class="paramtype">unsigned int&nbsp;</td>
cannam@0 288 <td class="paramname"> <em>index</em></td><td>&nbsp;</td>
cannam@0 289 </tr>
cannam@0 290 <tr>
cannam@0 291 <td></td>
cannam@0 292 <td>)</td>
cannam@0 293 <td></td><td></td><td width="100%"></td>
cannam@0 294 </tr>
cannam@0 295 </table>
cannam@0 296 </div>
cannam@0 297 <div class="memdoc">
cannam@0 298
cannam@0 299 <p>
cannam@0 300 Get the descriptor for a given plugin index in this library.
cannam@0 301 <p>
cannam@0 302 Return NULL if the index is outside the range of valid indices for this plugin library.<p>
cannam@0 303 The hostApiVersion argument tells the library code the highest <a class="el" href="namespaceVamp.html" title="If you want to compile using FFTW instead of the built-in FFT implementation for...">Vamp</a> API version supported by the host. The function should return a plugin descriptor compatible with the highest API version supported by the library that is no higher than that supported by the host. Provided the descriptor has the correct vampApiVersion field for its actual compatibility level, the host should be able to do the right thing with it: use it if possible, discard it otherwise.<p>
cannam@0 304 This is the only symbol that a <a class="el" href="namespaceVamp.html" title="If you want to compile using FFTW instead of the built-in FFT implementation for...">Vamp</a> plugin actually needs to export from its shared object; all others can be hidden. See the accompanying documentation for notes on how to achieve this with certain compilers.
cannam@0 305 <p>Definition at line <a class="el" href="plugins_8cpp-source.html#l00050">50</a> of file <a class="el" href="plugins_8cpp-source.html">plugins.cpp</a>.</p>
cannam@0 306
cannam@0 307 <p>References <a class="el" href="PluginAdapter_8cpp-source.html#l00138">Vamp::PluginAdapterBase::getDescriptor()</a>.</p>
cannam@0 308
cannam@0 309 </div>
cannam@0 310 </div><p>
cannam@0 311 </div>
cannam@0 312 <hr size="1"><address style="text-align: right;"><small>Generated on Wed Jul 9 11:36:07 2008 for VampPluginSDK by&nbsp;
cannam@0 313 <a href="http://www.doxygen.org/index.html">
cannam@0 314 <img src="doxygen.png" alt="doxygen" align="middle" border="0"></a> 1.5.5 </small></address>
cannam@0 315 </body>
cannam@0 316 </html>