view code-doc/struct__VampPluginDescriptor.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
line wrap: on
line source
<!DOCTYPE HTML PUBLIC "-//W3C//DTD HTML 4.01 Transitional//EN">
<html><head><meta http-equiv="Content-Type" content="text/html;charset=UTF-8">
<title>VampPluginSDK: _VampPluginDescriptor Struct Reference</title>
<link href="doxygen.css" rel="stylesheet" type="text/css">
<link href="tabs.css" rel="stylesheet" type="text/css">
</head><body>
<!-- Generated by Doxygen 1.5.5 -->
<div class="navigation" id="top">
  <div class="tabs">
    <ul>
      <li><a href="main.html"><span>Main&nbsp;Page</span></a></li>
      <li><a href="namespaces.html"><span>Namespaces</span></a></li>
      <li class="current"><a href="annotated.html"><span>Classes</span></a></li>
      <li><a href="files.html"><span>Files</span></a></li>
      <li><a href="dirs.html"><span>Directories</span></a></li>
    </ul>
  </div>
  <div class="tabs">
    <ul>
      <li><a href="annotated.html"><span>Class&nbsp;List</span></a></li>
      <li><a href="hierarchy.html"><span>Class&nbsp;Hierarchy</span></a></li>
      <li><a href="functions.html"><span>Class&nbsp;Members</span></a></li>
    </ul>
  </div>
</div>
<div class="contents">
<h1>_VampPluginDescriptor Struct Reference</h1><!-- doxytag: class="_VampPluginDescriptor" --><code>#include &lt;<a class="el" href="vamp_8h-source.html">vamp.h</a>&gt;</code>
<p>

<p>
<a href="struct__VampPluginDescriptor-members.html">List of all members.</a><hr><a name="_details"></a><h2>Detailed Description</h2>

<p>Definition at line <a class="el" href="vamp_8h-source.html#l00206">206</a> of file <a class="el" href="vamp_8h-source.html">vamp.h</a>.</p>
<table border="0" cellpadding="0" cellspacing="0">
<tr><td></td></tr>
<tr><td colspan="2"><br><h2>Public Attributes</h2></td></tr>
<tr><td class="memItemLeft" nowrap align="right" valign="top">unsigned int&nbsp;</td><td class="memItemRight" valign="bottom"><a class="el" href="struct__VampPluginDescriptor.html#b6c87760e87ddaa9ac3491bccaaa28c2">vampApiVersion</a></td></tr>

<tr><td class="mdescLeft">&nbsp;</td><td class="mdescRight">API version with which this descriptor is compatible.  <a href="#b6c87760e87ddaa9ac3491bccaaa28c2"></a><br></td></tr>
<tr><td class="memItemLeft" nowrap align="right" valign="top">const char *&nbsp;</td><td class="memItemRight" valign="bottom"><a class="el" href="struct__VampPluginDescriptor.html#4915ec8276749cb505c01d25a6d02219">identifier</a></td></tr>

<tr><td class="mdescLeft">&nbsp;</td><td class="mdescRight">Computer-usable name of the plugin.  <a href="#4915ec8276749cb505c01d25a6d02219"></a><br></td></tr>
<tr><td class="memItemLeft" nowrap align="right" valign="top">const char *&nbsp;</td><td class="memItemRight" valign="bottom"><a class="el" href="struct__VampPluginDescriptor.html#9dd5a0190e4d453ff36b5acb7000b150">name</a></td></tr>

<tr><td class="mdescLeft">&nbsp;</td><td class="mdescRight">Human-readable name of the plugin.  <a href="#9dd5a0190e4d453ff36b5acb7000b150"></a><br></td></tr>
<tr><td class="memItemLeft" nowrap align="right" valign="top">const char *&nbsp;</td><td class="memItemRight" valign="bottom"><a class="el" href="struct__VampPluginDescriptor.html#9ff8050f92f1a04a68bb34a9d368295e">description</a></td></tr>

<tr><td class="mdescLeft">&nbsp;</td><td class="mdescRight">Human-readable short text about the plugin.  <a href="#9ff8050f92f1a04a68bb34a9d368295e"></a><br></td></tr>
<tr><td class="memItemLeft" nowrap align="right" valign="top">const char *&nbsp;</td><td class="memItemRight" valign="bottom"><a class="el" href="struct__VampPluginDescriptor.html#4dca3d57331802964716edfa80580c9b">maker</a></td></tr>

<tr><td class="mdescLeft">&nbsp;</td><td class="mdescRight">Human-readable name of plugin's author or vendor.  <a href="#4dca3d57331802964716edfa80580c9b"></a><br></td></tr>
<tr><td class="memItemLeft" nowrap align="right" valign="top">int&nbsp;</td><td class="memItemRight" valign="bottom"><a class="el" href="struct__VampPluginDescriptor.html#04427c420d9252c7796c0bf5101345ae">pluginVersion</a></td></tr>

<tr><td class="mdescLeft">&nbsp;</td><td class="mdescRight">Version number of the plugin.  <a href="#04427c420d9252c7796c0bf5101345ae"></a><br></td></tr>
<tr><td class="memItemLeft" nowrap align="right" valign="top">const char *&nbsp;</td><td class="memItemRight" valign="bottom"><a class="el" href="struct__VampPluginDescriptor.html#e704bba384af0de056a26da1b13ee521">copyright</a></td></tr>

<tr><td class="mdescLeft">&nbsp;</td><td class="mdescRight">Human-readable summary of copyright or licensing for plugin.  <a href="#e704bba384af0de056a26da1b13ee521"></a><br></td></tr>
<tr><td class="memItemLeft" nowrap align="right" valign="top">unsigned int&nbsp;</td><td class="memItemRight" valign="bottom"><a class="el" href="struct__VampPluginDescriptor.html#e6271dc3ea0cea959c84a64185492cab">parameterCount</a></td></tr>

<tr><td class="mdescLeft">&nbsp;</td><td class="mdescRight">Number of parameter inputs.  <a href="#e6271dc3ea0cea959c84a64185492cab"></a><br></td></tr>
<tr><td class="memItemLeft" nowrap align="right" valign="top">const <a class="el" href="struct__VampParameterDescriptor.html">VampParameterDescriptor</a> **&nbsp;</td><td class="memItemRight" valign="bottom"><a class="el" href="struct__VampPluginDescriptor.html#64d614862604c31d6b84c49005f51913">parameters</a></td></tr>

<tr><td class="mdescLeft">&nbsp;</td><td class="mdescRight">Fixed descriptors for parameter inputs.  <a href="#64d614862604c31d6b84c49005f51913"></a><br></td></tr>
<tr><td class="memItemLeft" nowrap align="right" valign="top">unsigned int&nbsp;</td><td class="memItemRight" valign="bottom"><a class="el" href="struct__VampPluginDescriptor.html#1962666aa173e7a9a2c30dc82e4b2e00">programCount</a></td></tr>

<tr><td class="mdescLeft">&nbsp;</td><td class="mdescRight">Number of programs.  <a href="#1962666aa173e7a9a2c30dc82e4b2e00"></a><br></td></tr>
<tr><td class="memItemLeft" nowrap align="right" valign="top">const char **&nbsp;</td><td class="memItemRight" valign="bottom"><a class="el" href="struct__VampPluginDescriptor.html#d488470c582d8472d86455889d71c5ec">programs</a></td></tr>

<tr><td class="mdescLeft">&nbsp;</td><td class="mdescRight">Fixed names for programs.  <a href="#d488470c582d8472d86455889d71c5ec"></a><br></td></tr>
<tr><td class="memItemLeft" nowrap align="right" valign="top"><a class="el" href="vamp_8h.html#b107386a5f042feddf6446bea23bb765">VampInputDomain</a>&nbsp;</td><td class="memItemRight" valign="bottom"><a class="el" href="struct__VampPluginDescriptor.html#ffc4d1796da7ced2c0cbb2cc2c4a22f4">inputDomain</a></td></tr>

<tr><td class="mdescLeft">&nbsp;</td><td class="mdescRight">Preferred input domain for audio input (time or frequency).  <a href="#ffc4d1796da7ced2c0cbb2cc2c4a22f4"></a><br></td></tr>
<tr><td class="memItemLeft" nowrap align="right" valign="top"><a class="el" href="vamp_8h.html#d3be2952b1f4ad7d775940a6db75c79b">VampPluginHandle</a>(*&nbsp;</td><td class="memItemRight" valign="bottom"><a class="el" href="struct__VampPluginDescriptor.html#19c4ce36fdeb88eeedb539efc544b8ee">instantiate</a> )(const struct <a class="el" href="struct__VampPluginDescriptor.html">_VampPluginDescriptor</a> *, float inputSampleRate)</td></tr>

<tr><td class="mdescLeft">&nbsp;</td><td class="mdescRight">Create and return a new instance of this plugin.  <a href="#19c4ce36fdeb88eeedb539efc544b8ee"></a><br></td></tr>
<tr><td class="memItemLeft" nowrap align="right" valign="top">void(*&nbsp;</td><td class="memItemRight" valign="bottom"><a class="el" href="struct__VampPluginDescriptor.html#0e4522c33e59c3c518b9262f2477bc27">cleanup</a> )(<a class="el" href="vamp_8h.html#d3be2952b1f4ad7d775940a6db75c79b">VampPluginHandle</a>)</td></tr>

<tr><td class="mdescLeft">&nbsp;</td><td class="mdescRight">Destroy an instance of this plugin.  <a href="#0e4522c33e59c3c518b9262f2477bc27"></a><br></td></tr>
<tr><td class="memItemLeft" nowrap align="right" valign="top">int(*&nbsp;</td><td class="memItemRight" valign="bottom"><a class="el" href="struct__VampPluginDescriptor.html#d0978f17a5e568079470a1978a9aad22">initialise</a> )(<a class="el" href="vamp_8h.html#d3be2952b1f4ad7d775940a6db75c79b">VampPluginHandle</a>, unsigned int inputChannels, unsigned int stepSize, unsigned int blockSize)</td></tr>

<tr><td class="mdescLeft">&nbsp;</td><td class="mdescRight">Initialise an instance following parameter configuration.  <a href="#d0978f17a5e568079470a1978a9aad22"></a><br></td></tr>
<tr><td class="memItemLeft" nowrap align="right" valign="top">void(*&nbsp;</td><td class="memItemRight" valign="bottom"><a class="el" href="struct__VampPluginDescriptor.html#12267f6b506aeda3792ff7c982b02336">reset</a> )(<a class="el" href="vamp_8h.html#d3be2952b1f4ad7d775940a6db75c79b">VampPluginHandle</a>)</td></tr>

<tr><td class="mdescLeft">&nbsp;</td><td class="mdescRight">Reset an instance, ready to use again on new input data.  <a href="#12267f6b506aeda3792ff7c982b02336"></a><br></td></tr>
<tr><td class="memItemLeft" nowrap align="right" valign="top">float(*&nbsp;</td><td class="memItemRight" valign="bottom"><a class="el" href="struct__VampPluginDescriptor.html#07174981875b55ee2ec7521a7f4fc395">getParameter</a> )(<a class="el" href="vamp_8h.html#d3be2952b1f4ad7d775940a6db75c79b">VampPluginHandle</a>, int)</td></tr>

<tr><td class="mdescLeft">&nbsp;</td><td class="mdescRight">Get a parameter value.  <a href="#07174981875b55ee2ec7521a7f4fc395"></a><br></td></tr>
<tr><td class="memItemLeft" nowrap align="right" valign="top">void(*&nbsp;</td><td class="memItemRight" valign="bottom"><a class="el" href="struct__VampPluginDescriptor.html#ad3cfc7a3b432df40bd9db13eee6a481">setParameter</a> )(<a class="el" href="vamp_8h.html#d3be2952b1f4ad7d775940a6db75c79b">VampPluginHandle</a>, int, float)</td></tr>

<tr><td class="mdescLeft">&nbsp;</td><td class="mdescRight">Set a parameter value.  <a href="#ad3cfc7a3b432df40bd9db13eee6a481"></a><br></td></tr>
<tr><td class="memItemLeft" nowrap align="right" valign="top">unsigned int(*&nbsp;</td><td class="memItemRight" valign="bottom"><a class="el" href="struct__VampPluginDescriptor.html#861a77525a95d424cb846820b018af53">getCurrentProgram</a> )(<a class="el" href="vamp_8h.html#d3be2952b1f4ad7d775940a6db75c79b">VampPluginHandle</a>)</td></tr>

<tr><td class="mdescLeft">&nbsp;</td><td class="mdescRight">Get the current program (if programCount &gt; 0).  <a href="#861a77525a95d424cb846820b018af53"></a><br></td></tr>
<tr><td class="memItemLeft" nowrap align="right" valign="top">void(*&nbsp;</td><td class="memItemRight" valign="bottom"><a class="el" href="struct__VampPluginDescriptor.html#d9af40cb165ca187e49250964af5f5cf">selectProgram</a> )(<a class="el" href="vamp_8h.html#d3be2952b1f4ad7d775940a6db75c79b">VampPluginHandle</a>, unsigned int)</td></tr>

<tr><td class="mdescLeft">&nbsp;</td><td class="mdescRight">Set the current program.  <a href="#d9af40cb165ca187e49250964af5f5cf"></a><br></td></tr>
<tr><td class="memItemLeft" nowrap align="right" valign="top">unsigned int(*&nbsp;</td><td class="memItemRight" valign="bottom"><a class="el" href="struct__VampPluginDescriptor.html#2beddf2ce156c05dd24477ac663adcbb">getPreferredStepSize</a> )(<a class="el" href="vamp_8h.html#d3be2952b1f4ad7d775940a6db75c79b">VampPluginHandle</a>)</td></tr>

<tr><td class="mdescLeft">&nbsp;</td><td class="mdescRight">Get the plugin's preferred processing window increment in samples.  <a href="#2beddf2ce156c05dd24477ac663adcbb"></a><br></td></tr>
<tr><td class="memItemLeft" nowrap align="right" valign="top">unsigned int(*&nbsp;</td><td class="memItemRight" valign="bottom"><a class="el" href="struct__VampPluginDescriptor.html#c626e42554ab1532c8d8b5132a0faee8">getPreferredBlockSize</a> )(<a class="el" href="vamp_8h.html#d3be2952b1f4ad7d775940a6db75c79b">VampPluginHandle</a>)</td></tr>

<tr><td class="mdescLeft">&nbsp;</td><td class="mdescRight">Get the plugin's preferred processing window size in samples.  <a href="#c626e42554ab1532c8d8b5132a0faee8"></a><br></td></tr>
<tr><td class="memItemLeft" nowrap align="right" valign="top">unsigned int(*&nbsp;</td><td class="memItemRight" valign="bottom"><a class="el" href="struct__VampPluginDescriptor.html#f175ca17716db5a7545b61b01caabd92">getMinChannelCount</a> )(<a class="el" href="vamp_8h.html#d3be2952b1f4ad7d775940a6db75c79b">VampPluginHandle</a>)</td></tr>

<tr><td class="mdescLeft">&nbsp;</td><td class="mdescRight">Get the minimum number of input channels this plugin can handle.  <a href="#f175ca17716db5a7545b61b01caabd92"></a><br></td></tr>
<tr><td class="memItemLeft" nowrap align="right" valign="top">unsigned int(*&nbsp;</td><td class="memItemRight" valign="bottom"><a class="el" href="struct__VampPluginDescriptor.html#d1600203418d9646332f5b917284261b">getMaxChannelCount</a> )(<a class="el" href="vamp_8h.html#d3be2952b1f4ad7d775940a6db75c79b">VampPluginHandle</a>)</td></tr>

<tr><td class="mdescLeft">&nbsp;</td><td class="mdescRight">Get the maximum number of input channels this plugin can handle.  <a href="#d1600203418d9646332f5b917284261b"></a><br></td></tr>
<tr><td class="memItemLeft" nowrap align="right" valign="top">unsigned int(*&nbsp;</td><td class="memItemRight" valign="bottom"><a class="el" href="struct__VampPluginDescriptor.html#a8fc88da704e24b2b5f674821dd380c1">getOutputCount</a> )(<a class="el" href="vamp_8h.html#d3be2952b1f4ad7d775940a6db75c79b">VampPluginHandle</a>)</td></tr>

<tr><td class="mdescLeft">&nbsp;</td><td class="mdescRight">Get the number of feature outputs (distinct sets of results).  <a href="#a8fc88da704e24b2b5f674821dd380c1"></a><br></td></tr>
<tr><td class="memItemLeft" nowrap align="right" valign="top"><a class="el" href="struct__VampOutputDescriptor.html">VampOutputDescriptor</a> *(*&nbsp;</td><td class="memItemRight" valign="bottom"><a class="el" href="struct__VampPluginDescriptor.html#92c58b8ff99ad0c23a42333aa55c144d">getOutputDescriptor</a> )(<a class="el" href="vamp_8h.html#d3be2952b1f4ad7d775940a6db75c79b">VampPluginHandle</a>, unsigned int)</td></tr>

<tr><td class="mdescLeft">&nbsp;</td><td class="mdescRight">Get a descriptor for a given feature output.  <a href="#92c58b8ff99ad0c23a42333aa55c144d"></a><br></td></tr>
<tr><td class="memItemLeft" nowrap align="right" valign="top">void(*&nbsp;</td><td class="memItemRight" valign="bottom"><a class="el" href="struct__VampPluginDescriptor.html#8cc38edc921616e67e551aa03397ec79">releaseOutputDescriptor</a> )(<a class="el" href="struct__VampOutputDescriptor.html">VampOutputDescriptor</a> *)</td></tr>

<tr><td class="mdescLeft">&nbsp;</td><td class="mdescRight">Destroy a descriptor for a feature output.  <a href="#8cc38edc921616e67e551aa03397ec79"></a><br></td></tr>
<tr><td class="memItemLeft" nowrap align="right" valign="top"><a class="el" href="struct__VampFeatureList.html">VampFeatureList</a> *(*&nbsp;</td><td class="memItemRight" valign="bottom"><a class="el" href="struct__VampPluginDescriptor.html#c5a0a75b6e68b22fed536765d1f2f254">process</a> )(<a class="el" href="vamp_8h.html#d3be2952b1f4ad7d775940a6db75c79b">VampPluginHandle</a>, const float *const *inputBuffers, int sec, int nsec)</td></tr>

<tr><td class="mdescLeft">&nbsp;</td><td class="mdescRight">Process an input block and return a set of features.  <a href="#c5a0a75b6e68b22fed536765d1f2f254"></a><br></td></tr>
<tr><td class="memItemLeft" nowrap align="right" valign="top"><a class="el" href="struct__VampFeatureList.html">VampFeatureList</a> *(*&nbsp;</td><td class="memItemRight" valign="bottom"><a class="el" href="struct__VampPluginDescriptor.html#d22c666188aadab83c354a0edb18fcf0">getRemainingFeatures</a> )(<a class="el" href="vamp_8h.html#d3be2952b1f4ad7d775940a6db75c79b">VampPluginHandle</a>)</td></tr>

<tr><td class="mdescLeft">&nbsp;</td><td class="mdescRight">Return any remaining features at the end of processing.  <a href="#d22c666188aadab83c354a0edb18fcf0"></a><br></td></tr>
<tr><td class="memItemLeft" nowrap align="right" valign="top">void(*&nbsp;</td><td class="memItemRight" valign="bottom"><a class="el" href="struct__VampPluginDescriptor.html#c4bafe8ad2734d21a433d745b18e7d63">releaseFeatureSet</a> )(<a class="el" href="struct__VampFeatureList.html">VampFeatureList</a> *)</td></tr>

<tr><td class="mdescLeft">&nbsp;</td><td class="mdescRight">Release a feature set returned from process or getRemainingFeatures.  <a href="#c4bafe8ad2734d21a433d745b18e7d63"></a><br></td></tr>
</table>
<hr><h2>Member Data Documentation</h2>
<a class="anchor" name="b6c87760e87ddaa9ac3491bccaaa28c2"></a><!-- doxytag: member="_VampPluginDescriptor::vampApiVersion" ref="b6c87760e87ddaa9ac3491bccaaa28c2" args="" -->
<div class="memitem">
<div class="memproto">
      <table class="memname">
        <tr>
          <td class="memname">unsigned int <a class="el" href="struct__VampPluginDescriptor.html#b6c87760e87ddaa9ac3491bccaaa28c2">_VampPluginDescriptor::vampApiVersion</a>          </td>
        </tr>
      </table>
</div>
<div class="memdoc">

<p>
API version with which this descriptor is compatible. 
<p>

<p>Definition at line <a class="el" href="vamp_8h-source.html#l00209">209</a> of file <a class="el" href="vamp_8h-source.html">vamp.h</a>.</p>

<p>Referenced by <a class="el" href="PluginAdapter_8cpp-source.html#l00153">Vamp::PluginAdapterBase::Impl::getDescriptor()</a>, and <a class="el" href="PluginHostAdapter_8cpp-source.html#l00145">Vamp::PluginHostAdapter::getVampApiVersion()</a>.</p>

</div>
</div><p>
<a class="anchor" name="4915ec8276749cb505c01d25a6d02219"></a><!-- doxytag: member="_VampPluginDescriptor::identifier" ref="4915ec8276749cb505c01d25a6d02219" args="" -->
<div class="memitem">
<div class="memproto">
      <table class="memname">
        <tr>
          <td class="memname">const char* <a class="el" href="struct__VampPluginDescriptor.html#4915ec8276749cb505c01d25a6d02219">_VampPluginDescriptor::identifier</a>          </td>
        </tr>
      </table>
</div>
<div class="memdoc">

<p>
Computer-usable name of the plugin. 
<p>
Must not change. [a-zA-Z0-9_] 
<p>Definition at line <a class="el" href="vamp_8h-source.html#l00212">212</a> of file <a class="el" href="vamp_8h-source.html">vamp.h</a>.</p>

<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="PluginHostAdapter_8cpp-source.html#l00151">Vamp::PluginHostAdapter::getIdentifier()</a>, <a class="el" href="PluginLoader_8cpp-source.html#l00355">Vamp::HostExt::PluginLoader::Impl::loadPlugin()</a>, and <a class="el" href="PluginAdapter_8cpp-source.html#l00258">Vamp::PluginAdapterBase::Impl::~Impl()</a>.</p>

</div>
</div><p>
<a class="anchor" name="9dd5a0190e4d453ff36b5acb7000b150"></a><!-- doxytag: member="_VampPluginDescriptor::name" ref="9dd5a0190e4d453ff36b5acb7000b150" args="" -->
<div class="memitem">
<div class="memproto">
      <table class="memname">
        <tr>
          <td class="memname">const char* <a class="el" href="struct__VampPluginDescriptor.html#9dd5a0190e4d453ff36b5acb7000b150">_VampPluginDescriptor::name</a>          </td>
        </tr>
      </table>
</div>
<div class="memdoc">

<p>
Human-readable name of the plugin. 
<p>
May be translatable. 
<p>Definition at line <a class="el" href="vamp_8h-source.html#l00215">215</a> of file <a class="el" href="vamp_8h-source.html">vamp.h</a>.</p>

<p>Referenced by <a class="el" href="PluginAdapter_8cpp-source.html#l00153">Vamp::PluginAdapterBase::Impl::getDescriptor()</a>, <a class="el" href="PluginHostAdapter_8cpp-source.html#l00157">Vamp::PluginHostAdapter::getName()</a>, and <a class="el" href="PluginAdapter_8cpp-source.html#l00258">Vamp::PluginAdapterBase::Impl::~Impl()</a>.</p>

</div>
</div><p>
<a class="anchor" name="9ff8050f92f1a04a68bb34a9d368295e"></a><!-- doxytag: member="_VampPluginDescriptor::description" ref="9ff8050f92f1a04a68bb34a9d368295e" args="" -->
<div class="memitem">
<div class="memproto">
      <table class="memname">
        <tr>
          <td class="memname">const char* <a class="el" href="struct__VampPluginDescriptor.html#9ff8050f92f1a04a68bb34a9d368295e">_VampPluginDescriptor::description</a>          </td>
        </tr>
      </table>
</div>
<div class="memdoc">

<p>
Human-readable short text about the plugin. 
<p>
May be translatable. 
<p>Definition at line <a class="el" href="vamp_8h-source.html#l00218">218</a> of file <a class="el" href="vamp_8h-source.html">vamp.h</a>.</p>

<p>Referenced by <a class="el" href="PluginHostAdapter_8cpp-source.html#l00163">Vamp::PluginHostAdapter::getDescription()</a>, <a class="el" href="PluginAdapter_8cpp-source.html#l00153">Vamp::PluginAdapterBase::Impl::getDescriptor()</a>, and <a class="el" href="PluginAdapter_8cpp-source.html#l00258">Vamp::PluginAdapterBase::Impl::~Impl()</a>.</p>

</div>
</div><p>
<a class="anchor" name="4dca3d57331802964716edfa80580c9b"></a><!-- doxytag: member="_VampPluginDescriptor::maker" ref="4dca3d57331802964716edfa80580c9b" args="" -->
<div class="memitem">
<div class="memproto">
      <table class="memname">
        <tr>
          <td class="memname">const char* <a class="el" href="struct__VampPluginDescriptor.html#4dca3d57331802964716edfa80580c9b">_VampPluginDescriptor::maker</a>          </td>
        </tr>
      </table>
</div>
<div class="memdoc">

<p>
Human-readable name of plugin's author or vendor. 
<p>

<p>Definition at line <a class="el" href="vamp_8h-source.html#l00221">221</a> of file <a class="el" href="vamp_8h-source.html">vamp.h</a>.</p>

<p>Referenced by <a class="el" href="PluginAdapter_8cpp-source.html#l00153">Vamp::PluginAdapterBase::Impl::getDescriptor()</a>, <a class="el" href="PluginHostAdapter_8cpp-source.html#l00169">Vamp::PluginHostAdapter::getMaker()</a>, and <a class="el" href="PluginAdapter_8cpp-source.html#l00258">Vamp::PluginAdapterBase::Impl::~Impl()</a>.</p>

</div>
</div><p>
<a class="anchor" name="04427c420d9252c7796c0bf5101345ae"></a><!-- doxytag: member="_VampPluginDescriptor::pluginVersion" ref="04427c420d9252c7796c0bf5101345ae" args="" -->
<div class="memitem">
<div class="memproto">
      <table class="memname">
        <tr>
          <td class="memname">int <a class="el" href="struct__VampPluginDescriptor.html#04427c420d9252c7796c0bf5101345ae">_VampPluginDescriptor::pluginVersion</a>          </td>
        </tr>
      </table>
</div>
<div class="memdoc">

<p>
Version number of the plugin. 
<p>

<p>Definition at line <a class="el" href="vamp_8h-source.html#l00224">224</a> of file <a class="el" href="vamp_8h-source.html">vamp.h</a>.</p>

<p>Referenced by <a class="el" href="PluginAdapter_8cpp-source.html#l00153">Vamp::PluginAdapterBase::Impl::getDescriptor()</a>, and <a class="el" href="PluginHostAdapter_8cpp-source.html#l00175">Vamp::PluginHostAdapter::getPluginVersion()</a>.</p>

</div>
</div><p>
<a class="anchor" name="e704bba384af0de056a26da1b13ee521"></a><!-- doxytag: member="_VampPluginDescriptor::copyright" ref="e704bba384af0de056a26da1b13ee521" args="" -->
<div class="memitem">
<div class="memproto">
      <table class="memname">
        <tr>
          <td class="memname">const char* <a class="el" href="struct__VampPluginDescriptor.html#e704bba384af0de056a26da1b13ee521">_VampPluginDescriptor::copyright</a>          </td>
        </tr>
      </table>
</div>
<div class="memdoc">

<p>
Human-readable summary of copyright or licensing for plugin. 
<p>

<p>Definition at line <a class="el" href="vamp_8h-source.html#l00227">227</a> of file <a class="el" href="vamp_8h-source.html">vamp.h</a>.</p>

<p>Referenced by <a class="el" href="PluginHostAdapter_8cpp-source.html#l00181">Vamp::PluginHostAdapter::getCopyright()</a>, <a class="el" href="PluginAdapter_8cpp-source.html#l00153">Vamp::PluginAdapterBase::Impl::getDescriptor()</a>, and <a class="el" href="PluginAdapter_8cpp-source.html#l00258">Vamp::PluginAdapterBase::Impl::~Impl()</a>.</p>

</div>
</div><p>
<a class="anchor" name="e6271dc3ea0cea959c84a64185492cab"></a><!-- doxytag: member="_VampPluginDescriptor::parameterCount" ref="e6271dc3ea0cea959c84a64185492cab" args="" -->
<div class="memitem">
<div class="memproto">
      <table class="memname">
        <tr>
          <td class="memname">unsigned int <a class="el" href="struct__VampPluginDescriptor.html#e6271dc3ea0cea959c84a64185492cab">_VampPluginDescriptor::parameterCount</a>          </td>
        </tr>
      </table>
</div>
<div class="memdoc">

<p>
Number of parameter inputs. 
<p>

<p>Definition at line <a class="el" href="vamp_8h-source.html#l00230">230</a> of file <a class="el" href="vamp_8h-source.html">vamp.h</a>.</p>

<p>Referenced by <a class="el" href="PluginAdapter_8cpp-source.html#l00153">Vamp::PluginAdapterBase::Impl::getDescriptor()</a>, <a class="el" href="PluginHostAdapter_8cpp-source.html#l00213">Vamp::PluginHostAdapter::getParameter()</a>, <a class="el" href="PluginHostAdapter_8cpp-source.html#l00187">Vamp::PluginHostAdapter::getParameterDescriptors()</a>, <a class="el" href="PluginHostAdapter_8cpp-source.html#l00227">Vamp::PluginHostAdapter::setParameter()</a>, and <a class="el" href="PluginAdapter_8cpp-source.html#l00258">Vamp::PluginAdapterBase::Impl::~Impl()</a>.</p>

</div>
</div><p>
<a class="anchor" name="64d614862604c31d6b84c49005f51913"></a><!-- doxytag: member="_VampPluginDescriptor::parameters" ref="64d614862604c31d6b84c49005f51913" args="" -->
<div class="memitem">
<div class="memproto">
      <table class="memname">
        <tr>
          <td class="memname">const <a class="el" href="struct__VampParameterDescriptor.html">VampParameterDescriptor</a>** <a class="el" href="struct__VampPluginDescriptor.html#64d614862604c31d6b84c49005f51913">_VampPluginDescriptor::parameters</a>          </td>
        </tr>
      </table>
</div>
<div class="memdoc">

<p>
Fixed descriptors for parameter inputs. 
<p>

<p>Definition at line <a class="el" href="vamp_8h-source.html#l00233">233</a> of file <a class="el" href="vamp_8h-source.html">vamp.h</a>.</p>

<p>Referenced by <a class="el" href="PluginAdapter_8cpp-source.html#l00153">Vamp::PluginAdapterBase::Impl::getDescriptor()</a>, <a class="el" href="PluginHostAdapter_8cpp-source.html#l00213">Vamp::PluginHostAdapter::getParameter()</a>, <a class="el" href="PluginHostAdapter_8cpp-source.html#l00187">Vamp::PluginHostAdapter::getParameterDescriptors()</a>, <a class="el" href="PluginHostAdapter_8cpp-source.html#l00227">Vamp::PluginHostAdapter::setParameter()</a>, and <a class="el" href="PluginAdapter_8cpp-source.html#l00258">Vamp::PluginAdapterBase::Impl::~Impl()</a>.</p>

</div>
</div><p>
<a class="anchor" name="1962666aa173e7a9a2c30dc82e4b2e00"></a><!-- doxytag: member="_VampPluginDescriptor::programCount" ref="1962666aa173e7a9a2c30dc82e4b2e00" args="" -->
<div class="memitem">
<div class="memproto">
      <table class="memname">
        <tr>
          <td class="memname">unsigned int <a class="el" href="struct__VampPluginDescriptor.html#1962666aa173e7a9a2c30dc82e4b2e00">_VampPluginDescriptor::programCount</a>          </td>
        </tr>
      </table>
</div>
<div class="memdoc">

<p>
Number of programs. 
<p>

<p>Definition at line <a class="el" href="vamp_8h-source.html#l00236">236</a> of file <a class="el" href="vamp_8h-source.html">vamp.h</a>.</p>

<p>Referenced by <a class="el" href="PluginAdapter_8cpp-source.html#l00153">Vamp::PluginAdapterBase::Impl::getDescriptor()</a>, <a class="el" href="PluginHostAdapter_8cpp-source.html#l00241">Vamp::PluginHostAdapter::getPrograms()</a>, <a class="el" href="PluginHostAdapter_8cpp-source.html#l00262">Vamp::PluginHostAdapter::selectProgram()</a>, and <a class="el" href="PluginAdapter_8cpp-source.html#l00258">Vamp::PluginAdapterBase::Impl::~Impl()</a>.</p>

</div>
</div><p>
<a class="anchor" name="d488470c582d8472d86455889d71c5ec"></a><!-- doxytag: member="_VampPluginDescriptor::programs" ref="d488470c582d8472d86455889d71c5ec" args="" -->
<div class="memitem">
<div class="memproto">
      <table class="memname">
        <tr>
          <td class="memname">const char** <a class="el" href="struct__VampPluginDescriptor.html#d488470c582d8472d86455889d71c5ec">_VampPluginDescriptor::programs</a>          </td>
        </tr>
      </table>
</div>
<div class="memdoc">

<p>
Fixed names for programs. 
<p>

<p>Definition at line <a class="el" href="vamp_8h-source.html#l00239">239</a> of file <a class="el" href="vamp_8h-source.html">vamp.h</a>.</p>

<p>Referenced by <a class="el" href="PluginHostAdapter_8cpp-source.html#l00253">Vamp::PluginHostAdapter::getCurrentProgram()</a>, <a class="el" href="PluginAdapter_8cpp-source.html#l00153">Vamp::PluginAdapterBase::Impl::getDescriptor()</a>, <a class="el" href="PluginHostAdapter_8cpp-source.html#l00241">Vamp::PluginHostAdapter::getPrograms()</a>, <a class="el" href="PluginHostAdapter_8cpp-source.html#l00262">Vamp::PluginHostAdapter::selectProgram()</a>, and <a class="el" href="PluginAdapter_8cpp-source.html#l00258">Vamp::PluginAdapterBase::Impl::~Impl()</a>.</p>

</div>
</div><p>
<a class="anchor" name="ffc4d1796da7ced2c0cbb2cc2c4a22f4"></a><!-- doxytag: member="_VampPluginDescriptor::inputDomain" ref="ffc4d1796da7ced2c0cbb2cc2c4a22f4" args="" -->
<div class="memitem">
<div class="memproto">
      <table class="memname">
        <tr>
          <td class="memname"><a class="el" href="vamp_8h.html#b107386a5f042feddf6446bea23bb765">VampInputDomain</a> <a class="el" href="struct__VampPluginDescriptor.html#ffc4d1796da7ced2c0cbb2cc2c4a22f4">_VampPluginDescriptor::inputDomain</a>          </td>
        </tr>
      </table>
</div>
<div class="memdoc">

<p>
Preferred input domain for audio input (time or frequency). 
<p>

<p>Definition at line <a class="el" href="vamp_8h-source.html#l00242">242</a> of file <a class="el" href="vamp_8h-source.html">vamp.h</a>.</p>

<p>Referenced by <a class="el" href="PluginAdapter_8cpp-source.html#l00153">Vamp::PluginAdapterBase::Impl::getDescriptor()</a>, and <a class="el" href="PluginHostAdapter_8cpp-source.html#l00135">Vamp::PluginHostAdapter::getInputDomain()</a>.</p>

</div>
</div><p>
<a class="anchor" name="19c4ce36fdeb88eeedb539efc544b8ee"></a><!-- doxytag: member="_VampPluginDescriptor::instantiate" ref="19c4ce36fdeb88eeedb539efc544b8ee" args=")(const struct _VampPluginDescriptor *, float inputSampleRate)" -->
<div class="memitem">
<div class="memproto">
      <table class="memname">
        <tr>
          <td class="memname"><a class="el" href="vamp_8h.html#d3be2952b1f4ad7d775940a6db75c79b">VampPluginHandle</a>(* <a class="el" href="struct__VampPluginDescriptor.html#19c4ce36fdeb88eeedb539efc544b8ee">_VampPluginDescriptor::instantiate</a>)(const struct <a class="el" href="struct__VampPluginDescriptor.html">_VampPluginDescriptor</a> *, float inputSampleRate)          </td>
        </tr>
      </table>
</div>
<div class="memdoc">

<p>
Create and return a new instance of this plugin. 
<p>

<p>Referenced by <a class="el" href="PluginAdapter_8cpp-source.html#l00153">Vamp::PluginAdapterBase::Impl::getDescriptor()</a>, and <a class="el" href="PluginHostAdapter_8cpp-source.html#l00043">Vamp::PluginHostAdapter::PluginHostAdapter()</a>.</p>

</div>
</div><p>
<a class="anchor" name="0e4522c33e59c3c518b9262f2477bc27"></a><!-- doxytag: member="_VampPluginDescriptor::cleanup" ref="0e4522c33e59c3c518b9262f2477bc27" args=")(VampPluginHandle)" -->
<div class="memitem">
<div class="memproto">
      <table class="memname">
        <tr>
          <td class="memname">void(* <a class="el" href="struct__VampPluginDescriptor.html#0e4522c33e59c3c518b9262f2477bc27">_VampPluginDescriptor::cleanup</a>)(<a class="el" href="vamp_8h.html#d3be2952b1f4ad7d775940a6db75c79b">VampPluginHandle</a>)          </td>
        </tr>
      </table>
</div>
<div class="memdoc">

<p>
Destroy an instance of this plugin. 
<p>

<p>Referenced by <a class="el" href="PluginAdapter_8cpp-source.html#l00153">Vamp::PluginAdapterBase::Impl::getDescriptor()</a>, and <a class="el" href="PluginHostAdapter_8cpp-source.html#l00055">Vamp::PluginHostAdapter::~PluginHostAdapter()</a>.</p>

</div>
</div><p>
<a class="anchor" name="d0978f17a5e568079470a1978a9aad22"></a><!-- doxytag: member="_VampPluginDescriptor::initialise" ref="d0978f17a5e568079470a1978a9aad22" args=")(VampPluginHandle, unsigned int inputChannels, unsigned int stepSize, unsigned int blockSize)" -->
<div class="memitem">
<div class="memproto">
      <table class="memname">
        <tr>
          <td class="memname">int(* <a class="el" href="struct__VampPluginDescriptor.html#d0978f17a5e568079470a1978a9aad22">_VampPluginDescriptor::initialise</a>)(<a class="el" href="vamp_8h.html#d3be2952b1f4ad7d775940a6db75c79b">VampPluginHandle</a>, unsigned int inputChannels, unsigned int stepSize, unsigned int blockSize)          </td>
        </tr>
      </table>
</div>
<div class="memdoc">

<p>
Initialise an instance following parameter configuration. 
<p>

<p>Referenced by <a class="el" href="PluginAdapter_8cpp-source.html#l00153">Vamp::PluginAdapterBase::Impl::getDescriptor()</a>, and <a class="el" href="PluginHostAdapter_8cpp-source.html#l00118">Vamp::PluginHostAdapter::initialise()</a>.</p>

</div>
</div><p>
<a class="anchor" name="12267f6b506aeda3792ff7c982b02336"></a><!-- doxytag: member="_VampPluginDescriptor::reset" ref="12267f6b506aeda3792ff7c982b02336" args=")(VampPluginHandle)" -->
<div class="memitem">
<div class="memproto">
      <table class="memname">
        <tr>
          <td class="memname">void(* <a class="el" href="struct__VampPluginDescriptor.html#12267f6b506aeda3792ff7c982b02336">_VampPluginDescriptor::reset</a>)(<a class="el" href="vamp_8h.html#d3be2952b1f4ad7d775940a6db75c79b">VampPluginHandle</a>)          </td>
        </tr>
      </table>
</div>
<div class="memdoc">

<p>
Reset an instance, ready to use again on new input data. 
<p>

<p>Referenced by <a class="el" href="PluginAdapter_8cpp-source.html#l00153">Vamp::PluginAdapterBase::Impl::getDescriptor()</a>, and <a class="el" href="PluginHostAdapter_8cpp-source.html#l00128">Vamp::PluginHostAdapter::reset()</a>.</p>

</div>
</div><p>
<a class="anchor" name="07174981875b55ee2ec7521a7f4fc395"></a><!-- doxytag: member="_VampPluginDescriptor::getParameter" ref="07174981875b55ee2ec7521a7f4fc395" args=")(VampPluginHandle, int)" -->
<div class="memitem">
<div class="memproto">
      <table class="memname">
        <tr>
          <td class="memname">float(* <a class="el" href="struct__VampPluginDescriptor.html#07174981875b55ee2ec7521a7f4fc395">_VampPluginDescriptor::getParameter</a>)(<a class="el" href="vamp_8h.html#d3be2952b1f4ad7d775940a6db75c79b">VampPluginHandle</a>, int)          </td>
        </tr>
      </table>
</div>
<div class="memdoc">

<p>
Get a parameter value. 
<p>

<p>Referenced by <a class="el" href="PluginAdapter_8cpp-source.html#l00153">Vamp::PluginAdapterBase::Impl::getDescriptor()</a>, and <a class="el" href="PluginHostAdapter_8cpp-source.html#l00213">Vamp::PluginHostAdapter::getParameter()</a>.</p>

</div>
</div><p>
<a class="anchor" name="ad3cfc7a3b432df40bd9db13eee6a481"></a><!-- doxytag: member="_VampPluginDescriptor::setParameter" ref="ad3cfc7a3b432df40bd9db13eee6a481" args=")(VampPluginHandle, int, float)" -->
<div class="memitem">
<div class="memproto">
      <table class="memname">
        <tr>
          <td class="memname">void(* <a class="el" href="struct__VampPluginDescriptor.html#ad3cfc7a3b432df40bd9db13eee6a481">_VampPluginDescriptor::setParameter</a>)(<a class="el" href="vamp_8h.html#d3be2952b1f4ad7d775940a6db75c79b">VampPluginHandle</a>, int, float)          </td>
        </tr>
      </table>
</div>
<div class="memdoc">

<p>
Set a parameter value. 
<p>
May only be called before initialise. 
<p>Referenced by <a class="el" href="PluginAdapter_8cpp-source.html#l00153">Vamp::PluginAdapterBase::Impl::getDescriptor()</a>, and <a class="el" href="PluginHostAdapter_8cpp-source.html#l00227">Vamp::PluginHostAdapter::setParameter()</a>.</p>

</div>
</div><p>
<a class="anchor" name="861a77525a95d424cb846820b018af53"></a><!-- doxytag: member="_VampPluginDescriptor::getCurrentProgram" ref="861a77525a95d424cb846820b018af53" args=")(VampPluginHandle)" -->
<div class="memitem">
<div class="memproto">
      <table class="memname">
        <tr>
          <td class="memname">unsigned int(* <a class="el" href="struct__VampPluginDescriptor.html#861a77525a95d424cb846820b018af53">_VampPluginDescriptor::getCurrentProgram</a>)(<a class="el" href="vamp_8h.html#d3be2952b1f4ad7d775940a6db75c79b">VampPluginHandle</a>)          </td>
        </tr>
      </table>
</div>
<div class="memdoc">

<p>
Get the current program (if programCount &gt; 0). 
<p>

<p>Referenced by <a class="el" href="PluginHostAdapter_8cpp-source.html#l00253">Vamp::PluginHostAdapter::getCurrentProgram()</a>, and <a class="el" href="PluginAdapter_8cpp-source.html#l00153">Vamp::PluginAdapterBase::Impl::getDescriptor()</a>.</p>

</div>
</div><p>
<a class="anchor" name="d9af40cb165ca187e49250964af5f5cf"></a><!-- doxytag: member="_VampPluginDescriptor::selectProgram" ref="d9af40cb165ca187e49250964af5f5cf" args=")(VampPluginHandle, unsigned int)" -->
<div class="memitem">
<div class="memproto">
      <table class="memname">
        <tr>
          <td class="memname">void(* <a class="el" href="struct__VampPluginDescriptor.html#d9af40cb165ca187e49250964af5f5cf">_VampPluginDescriptor::selectProgram</a>)(<a class="el" href="vamp_8h.html#d3be2952b1f4ad7d775940a6db75c79b">VampPluginHandle</a>, unsigned int)          </td>
        </tr>
      </table>
</div>
<div class="memdoc">

<p>
Set the current program. 
<p>
May only be called before initialise. 
<p>Referenced by <a class="el" href="PluginAdapter_8cpp-source.html#l00153">Vamp::PluginAdapterBase::Impl::getDescriptor()</a>, and <a class="el" href="PluginHostAdapter_8cpp-source.html#l00262">Vamp::PluginHostAdapter::selectProgram()</a>.</p>

</div>
</div><p>
<a class="anchor" name="2beddf2ce156c05dd24477ac663adcbb"></a><!-- doxytag: member="_VampPluginDescriptor::getPreferredStepSize" ref="2beddf2ce156c05dd24477ac663adcbb" args=")(VampPluginHandle)" -->
<div class="memitem">
<div class="memproto">
      <table class="memname">
        <tr>
          <td class="memname">unsigned int(* <a class="el" href="struct__VampPluginDescriptor.html#2beddf2ce156c05dd24477ac663adcbb">_VampPluginDescriptor::getPreferredStepSize</a>)(<a class="el" href="vamp_8h.html#d3be2952b1f4ad7d775940a6db75c79b">VampPluginHandle</a>)          </td>
        </tr>
      </table>
</div>
<div class="memdoc">

<p>
Get the plugin's preferred processing window increment in samples. 
<p>

<p>Referenced by <a class="el" href="PluginAdapter_8cpp-source.html#l00153">Vamp::PluginAdapterBase::Impl::getDescriptor()</a>, and <a class="el" href="PluginHostAdapter_8cpp-source.html#l00275">Vamp::PluginHostAdapter::getPreferredStepSize()</a>.</p>

</div>
</div><p>
<a class="anchor" name="c626e42554ab1532c8d8b5132a0faee8"></a><!-- doxytag: member="_VampPluginDescriptor::getPreferredBlockSize" ref="c626e42554ab1532c8d8b5132a0faee8" args=")(VampPluginHandle)" -->
<div class="memitem">
<div class="memproto">
      <table class="memname">
        <tr>
          <td class="memname">unsigned int(* <a class="el" href="struct__VampPluginDescriptor.html#c626e42554ab1532c8d8b5132a0faee8">_VampPluginDescriptor::getPreferredBlockSize</a>)(<a class="el" href="vamp_8h.html#d3be2952b1f4ad7d775940a6db75c79b">VampPluginHandle</a>)          </td>
        </tr>
      </table>
</div>
<div class="memdoc">

<p>
Get the plugin's preferred processing window size in samples. 
<p>

<p>Referenced by <a class="el" href="PluginAdapter_8cpp-source.html#l00153">Vamp::PluginAdapterBase::Impl::getDescriptor()</a>, and <a class="el" href="PluginHostAdapter_8cpp-source.html#l00282">Vamp::PluginHostAdapter::getPreferredBlockSize()</a>.</p>

</div>
</div><p>
<a class="anchor" name="f175ca17716db5a7545b61b01caabd92"></a><!-- doxytag: member="_VampPluginDescriptor::getMinChannelCount" ref="f175ca17716db5a7545b61b01caabd92" args=")(VampPluginHandle)" -->
<div class="memitem">
<div class="memproto">
      <table class="memname">
        <tr>
          <td class="memname">unsigned int(* <a class="el" href="struct__VampPluginDescriptor.html#f175ca17716db5a7545b61b01caabd92">_VampPluginDescriptor::getMinChannelCount</a>)(<a class="el" href="vamp_8h.html#d3be2952b1f4ad7d775940a6db75c79b">VampPluginHandle</a>)          </td>
        </tr>
      </table>
</div>
<div class="memdoc">

<p>
Get the minimum number of input channels this plugin can handle. 
<p>

<p>Referenced by <a class="el" href="PluginAdapter_8cpp-source.html#l00153">Vamp::PluginAdapterBase::Impl::getDescriptor()</a>, and <a class="el" href="PluginHostAdapter_8cpp-source.html#l00289">Vamp::PluginHostAdapter::getMinChannelCount()</a>.</p>

</div>
</div><p>
<a class="anchor" name="d1600203418d9646332f5b917284261b"></a><!-- doxytag: member="_VampPluginDescriptor::getMaxChannelCount" ref="d1600203418d9646332f5b917284261b" args=")(VampPluginHandle)" -->
<div class="memitem">
<div class="memproto">
      <table class="memname">
        <tr>
          <td class="memname">unsigned int(* <a class="el" href="struct__VampPluginDescriptor.html#d1600203418d9646332f5b917284261b">_VampPluginDescriptor::getMaxChannelCount</a>)(<a class="el" href="vamp_8h.html#d3be2952b1f4ad7d775940a6db75c79b">VampPluginHandle</a>)          </td>
        </tr>
      </table>
</div>
<div class="memdoc">

<p>
Get the maximum number of input channels this plugin can handle. 
<p>

<p>Referenced by <a class="el" href="PluginAdapter_8cpp-source.html#l00153">Vamp::PluginAdapterBase::Impl::getDescriptor()</a>, and <a class="el" href="PluginHostAdapter_8cpp-source.html#l00296">Vamp::PluginHostAdapter::getMaxChannelCount()</a>.</p>

</div>
</div><p>
<a class="anchor" name="a8fc88da704e24b2b5f674821dd380c1"></a><!-- doxytag: member="_VampPluginDescriptor::getOutputCount" ref="a8fc88da704e24b2b5f674821dd380c1" args=")(VampPluginHandle)" -->
<div class="memitem">
<div class="memproto">
      <table class="memname">
        <tr>
          <td class="memname">unsigned int(* <a class="el" href="struct__VampPluginDescriptor.html#a8fc88da704e24b2b5f674821dd380c1">_VampPluginDescriptor::getOutputCount</a>)(<a class="el" href="vamp_8h.html#d3be2952b1f4ad7d775940a6db75c79b">VampPluginHandle</a>)          </td>
        </tr>
      </table>
</div>
<div class="memdoc">

<p>
Get the number of feature outputs (distinct sets of results). 
<p>

<p>Referenced by <a class="el" href="PluginHostAdapter_8cpp-source.html#l00385">Vamp::PluginHostAdapter::convertFeatures()</a>, <a class="el" href="PluginAdapter_8cpp-source.html#l00153">Vamp::PluginAdapterBase::Impl::getDescriptor()</a>, and <a class="el" href="PluginHostAdapter_8cpp-source.html#l00303">Vamp::PluginHostAdapter::getOutputDescriptors()</a>.</p>

</div>
</div><p>
<a class="anchor" name="92c58b8ff99ad0c23a42333aa55c144d"></a><!-- doxytag: member="_VampPluginDescriptor::getOutputDescriptor" ref="92c58b8ff99ad0c23a42333aa55c144d" args=")(VampPluginHandle, unsigned int)" -->
<div class="memitem">
<div class="memproto">
      <table class="memname">
        <tr>
          <td class="memname"><a class="el" href="struct__VampOutputDescriptor.html">VampOutputDescriptor</a>*(* <a class="el" href="struct__VampPluginDescriptor.html#92c58b8ff99ad0c23a42333aa55c144d">_VampPluginDescriptor::getOutputDescriptor</a>)(<a class="el" href="vamp_8h.html#d3be2952b1f4ad7d775940a6db75c79b">VampPluginHandle</a>, unsigned int)          </td>
        </tr>
      </table>
</div>
<div class="memdoc">

<p>
Get a descriptor for a given feature output. 
<p>
Returned pointer is valid only until next call to getOutputDescriptor for this handle, or releaseOutputDescriptor for this descriptor. Host must call releaseOutputDescriptor after use. 
<p>Referenced by <a class="el" href="PluginAdapter_8cpp-source.html#l00153">Vamp::PluginAdapterBase::Impl::getDescriptor()</a>, and <a class="el" href="PluginHostAdapter_8cpp-source.html#l00303">Vamp::PluginHostAdapter::getOutputDescriptors()</a>.</p>

</div>
</div><p>
<a class="anchor" name="8cc38edc921616e67e551aa03397ec79"></a><!-- doxytag: member="_VampPluginDescriptor::releaseOutputDescriptor" ref="8cc38edc921616e67e551aa03397ec79" args=")(VampOutputDescriptor *)" -->
<div class="memitem">
<div class="memproto">
      <table class="memname">
        <tr>
          <td class="memname">void(* <a class="el" href="struct__VampPluginDescriptor.html#8cc38edc921616e67e551aa03397ec79">_VampPluginDescriptor::releaseOutputDescriptor</a>)(<a class="el" href="struct__VampOutputDescriptor.html">VampOutputDescriptor</a> *)          </td>
        </tr>
      </table>
</div>
<div class="memdoc">

<p>
Destroy a descriptor for a feature output. 
<p>

<p>Referenced by <a class="el" href="PluginAdapter_8cpp-source.html#l00153">Vamp::PluginAdapterBase::Impl::getDescriptor()</a>, and <a class="el" href="PluginHostAdapter_8cpp-source.html#l00303">Vamp::PluginHostAdapter::getOutputDescriptors()</a>.</p>

</div>
</div><p>
<a class="anchor" name="c5a0a75b6e68b22fed536765d1f2f254"></a><!-- doxytag: member="_VampPluginDescriptor::process" ref="c5a0a75b6e68b22fed536765d1f2f254" args=")(VampPluginHandle, const float *const *inputBuffers, int sec, int nsec)" -->
<div class="memitem">
<div class="memproto">
      <table class="memname">
        <tr>
          <td class="memname"><a class="el" href="struct__VampFeatureList.html">VampFeatureList</a>*(* <a class="el" href="struct__VampPluginDescriptor.html#c5a0a75b6e68b22fed536765d1f2f254">_VampPluginDescriptor::process</a>)(<a class="el" href="vamp_8h.html#d3be2952b1f4ad7d775940a6db75c79b">VampPluginHandle</a>, const float *const *inputBuffers, int sec, int nsec)          </td>
        </tr>
      </table>
</div>
<div class="memdoc">

<p>
Process an input block and return a set of features. 
<p>
Returned pointer is valid only until next call to process, getRemainingFeatures, or cleanup for this handle, or releaseFeatureSet for this feature set. Host must call releaseFeatureSet after use. 
<p>Referenced by <a class="el" href="PluginAdapter_8cpp-source.html#l00153">Vamp::PluginAdapterBase::Impl::getDescriptor()</a>, and <a class="el" href="PluginHostAdapter_8cpp-source.html#l00353">Vamp::PluginHostAdapter::process()</a>.</p>

</div>
</div><p>
<a class="anchor" name="d22c666188aadab83c354a0edb18fcf0"></a><!-- doxytag: member="_VampPluginDescriptor::getRemainingFeatures" ref="d22c666188aadab83c354a0edb18fcf0" args=")(VampPluginHandle)" -->
<div class="memitem">
<div class="memproto">
      <table class="memname">
        <tr>
          <td class="memname"><a class="el" href="struct__VampFeatureList.html">VampFeatureList</a>*(* <a class="el" href="struct__VampPluginDescriptor.html#d22c666188aadab83c354a0edb18fcf0">_VampPluginDescriptor::getRemainingFeatures</a>)(<a class="el" href="vamp_8h.html#d3be2952b1f4ad7d775940a6db75c79b">VampPluginHandle</a>)          </td>
        </tr>
      </table>
</div>
<div class="memdoc">

<p>
Return any remaining features at the end of processing. 
<p>

<p>Referenced by <a class="el" href="PluginAdapter_8cpp-source.html#l00153">Vamp::PluginAdapterBase::Impl::getDescriptor()</a>, and <a class="el" href="PluginHostAdapter_8cpp-source.html#l00372">Vamp::PluginHostAdapter::getRemainingFeatures()</a>.</p>

</div>
</div><p>
<a class="anchor" name="c4bafe8ad2734d21a433d745b18e7d63"></a><!-- doxytag: member="_VampPluginDescriptor::releaseFeatureSet" ref="c4bafe8ad2734d21a433d745b18e7d63" args=")(VampFeatureList *)" -->
<div class="memitem">
<div class="memproto">
      <table class="memname">
        <tr>
          <td class="memname">void(* <a class="el" href="struct__VampPluginDescriptor.html#c4bafe8ad2734d21a433d745b18e7d63">_VampPluginDescriptor::releaseFeatureSet</a>)(<a class="el" href="struct__VampFeatureList.html">VampFeatureList</a> *)          </td>
        </tr>
      </table>
</div>
<div class="memdoc">

<p>
Release a feature set returned from process or getRemainingFeatures. 
<p>

<p>Referenced by <a class="el" href="PluginAdapter_8cpp-source.html#l00153">Vamp::PluginAdapterBase::Impl::getDescriptor()</a>, <a class="el" href="PluginHostAdapter_8cpp-source.html#l00372">Vamp::PluginHostAdapter::getRemainingFeatures()</a>, and <a class="el" href="PluginHostAdapter_8cpp-source.html#l00353">Vamp::PluginHostAdapter::process()</a>.</p>

</div>
</div><p>
<hr>The documentation for this struct was generated from the following file:<ul>
<li><a class="el" href="vamp_8h-source.html">vamp.h</a></ul>
</div>
<hr size="1"><address style="text-align: right;"><small>Generated on Wed Jul 9 11:36:07 2008 for VampPluginSDK by&nbsp;
<a href="http://www.doxygen.org/index.html">
<img src="doxygen.png" alt="doxygen" align="middle" border="0"></a> 1.5.5 </small></address>
</body>
</html>