Chris@1: Chris@1: Chris@1: Chris@1: Chris@3: Chris@1: VampPluginSDK: _VampPluginDescriptor Struct Reference Chris@1: Chris@1: Chris@1: Chris@1: Chris@1: Chris@1: Chris@1: Chris@1: Chris@1: Chris@1: Chris@1: Chris@1: Chris@1:
Chris@1: Chris@1: Chris@1:
Chris@1: Chris@1: Chris@1: Chris@1: Chris@1: Chris@1: Chris@1: Chris@1: Chris@1: Chris@1: Chris@1: Chris@1:
Chris@1:
VampPluginSDK Chris@3:  2.4 Chris@1:
Chris@1: Chris@1:
Chris@1:
Chris@1: Chris@3: Chris@1: Chris@1: Chris@1:
Chris@1:
Chris@1: Chris@1:
Chris@1:
Chris@1:
Chris@1: Chris@1:
Chris@1:
Chris@1: Chris@1:
Chris@1:
_VampPluginDescriptor Struct Reference
Chris@3:
Chris@1:
Chris@3: Chris@1:

#include <vamp.h>

Chris@1: Chris@1:

List of all members.

Chris@1: Chris@1: Chris@3: Chris@3: Chris@3: Chris@3: Chris@3: Chris@3: Chris@3: Chris@3: Chris@3: Chris@3: Chris@3: Chris@3: Chris@3: Chris@3: Chris@3: Chris@3: Chris@3: Chris@3: Chris@3: Chris@3: Chris@3: Chris@3: Chris@3: Chris@3: Chris@3: Chris@3: Chris@3: Chris@3: Chris@3: Chris@3: Chris@3: Chris@3: Chris@3: Chris@3: Chris@3: Chris@3: Chris@3: Chris@3: Chris@3: Chris@3: Chris@3: Chris@3: Chris@3: Chris@3: Chris@3: Chris@3: Chris@3: Chris@3: Chris@3: Chris@3: Chris@3: Chris@3: Chris@3: Chris@3: Chris@3: Chris@3: Chris@3: Chris@3: Chris@3: Chris@3: Chris@1:

Chris@1: Public Attributes

unsigned int vampApiVersion
 API version with which this descriptor is compatible.
const char * identifier
 Computer-usable name of the plugin.
const char * name
 Human-readable name of the plugin.
const char * description
 Human-readable short text about the plugin.
const char * maker
 Human-readable name of plugin's author or vendor.
int pluginVersion
 Version number of the plugin.
const char * copyright
 Human-readable summary of copyright or licensing for plugin.
unsigned int parameterCount
 Number of parameter inputs.
const VampParameterDescriptor ** parameters
 Fixed descriptors for parameter inputs.
unsigned int programCount
 Number of programs.
const char ** programs
 Fixed names for programs.
VampInputDomain inputDomain
 Preferred input domain for audio input (time or frequency).
VampPluginHandle(* instantiate )(const struct _VampPluginDescriptor *, float inputSampleRate)
 Create and return a new instance of this plugin.
void(* cleanup )(VampPluginHandle)
 Destroy an instance of this plugin.
int(* initialise )(VampPluginHandle, unsigned int inputChannels, unsigned int stepSize, unsigned int blockSize)
 Initialise an instance following parameter configuration.
void(* reset )(VampPluginHandle)
 Reset an instance, ready to use again on new input data.
float(* getParameter )(VampPluginHandle, int)
 Get a parameter value.
void(* setParameter )(VampPluginHandle, int, float)
 Set a parameter value.
unsigned int(* getCurrentProgram )(VampPluginHandle)
 Get the current program (if programCount > 0).
void(* selectProgram )(VampPluginHandle, unsigned int)
 Set the current program.
unsigned int(* getPreferredStepSize )(VampPluginHandle)
 Get the plugin's preferred processing window increment in samples.
unsigned int(* getPreferredBlockSize )(VampPluginHandle)
 Get the plugin's preferred processing window size in samples.
unsigned int(* getMinChannelCount )(VampPluginHandle)
 Get the minimum number of input channels this plugin can handle.
unsigned int(* getMaxChannelCount )(VampPluginHandle)
 Get the maximum number of input channels this plugin can handle.
unsigned int(* getOutputCount )(VampPluginHandle)
 Get the number of feature outputs (distinct sets of results).
VampOutputDescriptor *(* getOutputDescriptor )(VampPluginHandle, unsigned int)
 Get a descriptor for a given feature output.
void(* releaseOutputDescriptor )(VampOutputDescriptor *)
 Destroy a descriptor for a feature output.
VampFeatureList *(* process )(VampPluginHandle, const float *const *inputBuffers, int sec, int nsec)
 Process an input block and return a set of features.
VampFeatureList *(* getRemainingFeatures )(VampPluginHandle)
 Return any remaining features at the end of processing.
void(* releaseFeatureSet )(VampFeatureList *)
 Release a feature set returned from process or getRemainingFeatures.
Chris@1:

Detailed Description

Chris@1:
Chris@1:

Definition at line 248 of file vamp.h.

Chris@1:

Member Data Documentation

Chris@3: Chris@1:
Chris@1:
Chris@1: Chris@1: Chris@1: Chris@1: Chris@1:
unsigned int _VampPluginDescriptor::vampApiVersion
Chris@1:
Chris@1:
Chris@1: Chris@1:

API version with which this descriptor is compatible.

Chris@1: Chris@1:

Definition at line 251 of file vamp.h.

Chris@1: Chris@1:
Chris@1:
Chris@3: Chris@1:
Chris@1:
Chris@1: Chris@1: Chris@1: Chris@1: Chris@1:
const char* _VampPluginDescriptor::identifier
Chris@1:
Chris@1:
Chris@1: Chris@1:

Computer-usable name of the plugin.

Chris@1:

Must not change. [a-zA-Z0-9_]

Chris@1: Chris@1:

Definition at line 254 of file vamp.h.

Chris@1: Chris@1:
Chris@1:
Chris@3: Chris@1:
Chris@1:
Chris@1: Chris@1: Chris@1: Chris@1: Chris@1:
const char* _VampPluginDescriptor::name
Chris@1:
Chris@1:
Chris@1: Chris@1:

Human-readable name of the plugin.

Chris@1:

May be translatable.

Chris@1: Chris@1:

Definition at line 257 of file vamp.h.

Chris@1: Chris@1:
Chris@1:
Chris@3: Chris@1:
Chris@1:
Chris@1: Chris@1: Chris@1: Chris@1: Chris@1:
const char* _VampPluginDescriptor::description
Chris@1:
Chris@1:
Chris@1: Chris@1:

Human-readable short text about the plugin.

Chris@1:

May be translatable.

Chris@1: Chris@1:

Definition at line 260 of file vamp.h.

Chris@1: Chris@1:
Chris@1:
Chris@3: Chris@1:
Chris@1:
Chris@1: Chris@1: Chris@1: Chris@1: Chris@1:
const char* _VampPluginDescriptor::maker
Chris@1:
Chris@1:
Chris@1: Chris@1:

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

Chris@1: Chris@1:

Definition at line 263 of file vamp.h.

Chris@1: Chris@1:
Chris@1:
Chris@3: Chris@1:
Chris@1:
Chris@1: Chris@1: Chris@1: Chris@1: Chris@1:
int _VampPluginDescriptor::pluginVersion
Chris@1:
Chris@1:
Chris@1: Chris@1:

Version number of the plugin.

Chris@1: Chris@1:

Definition at line 266 of file vamp.h.

Chris@1: Chris@1:
Chris@1:
Chris@3: Chris@1:
Chris@1:
Chris@1: Chris@1: Chris@1: Chris@1: Chris@1:
const char* _VampPluginDescriptor::copyright
Chris@1:
Chris@1:
Chris@1: Chris@1:

Human-readable summary of copyright or licensing for plugin.

Chris@1: Chris@1:

Definition at line 269 of file vamp.h.

Chris@1: Chris@1:
Chris@1:
Chris@3: Chris@1:
Chris@1:
Chris@1: Chris@1: Chris@1: Chris@1: Chris@1:
unsigned int _VampPluginDescriptor::parameterCount
Chris@1:
Chris@1:
Chris@1: Chris@1:

Number of parameter inputs.

Chris@1: Chris@1:

Definition at line 272 of file vamp.h.

Chris@1: Chris@1:
Chris@1:
Chris@3: Chris@1:
Chris@1:
Chris@1: Chris@1: Chris@1: Chris@1: Chris@1:
const VampParameterDescriptor** _VampPluginDescriptor::parameters
Chris@1:
Chris@1:
Chris@1: Chris@1:

Fixed descriptors for parameter inputs.

Chris@1: Chris@1:

Definition at line 275 of file vamp.h.

Chris@1: Chris@1:
Chris@1:
Chris@3: Chris@1:
Chris@1:
Chris@1: Chris@1: Chris@1: Chris@1: Chris@1:
unsigned int _VampPluginDescriptor::programCount
Chris@1:
Chris@1:
Chris@1: Chris@1:

Number of programs.

Chris@1: Chris@1:

Definition at line 278 of file vamp.h.

Chris@1: Chris@1:
Chris@1:
Chris@3: Chris@1:
Chris@1:
Chris@1: Chris@1: Chris@1: Chris@1: Chris@1:
const char** _VampPluginDescriptor::programs
Chris@1:
Chris@1:
Chris@1: Chris@1:

Fixed names for programs.

Chris@1: Chris@1:

Definition at line 281 of file vamp.h.

Chris@1: Chris@1:
Chris@1:
Chris@3: Chris@1:
Chris@1:
Chris@1: Chris@1: Chris@1: Chris@1: Chris@1:
VampInputDomain _VampPluginDescriptor::inputDomain
Chris@1:
Chris@1:
Chris@1: Chris@1:

Preferred input domain for audio input (time or frequency).

Chris@1: Chris@1:

Definition at line 284 of file vamp.h.

Chris@1: Chris@1:
Chris@1:
Chris@3: Chris@1:
Chris@1:
Chris@1: Chris@1: Chris@1: Chris@1: Chris@1:
VampPluginHandle(* _VampPluginDescriptor::instantiate)(const struct _VampPluginDescriptor *, float inputSampleRate)
Chris@1:
Chris@1:
Chris@1: Chris@1:

Create and return a new instance of this plugin.

Chris@1: Chris@1:

Definition at line 287 of file vamp.h.

Chris@1: Chris@1:
Chris@1:
Chris@3: Chris@1:
Chris@1:
Chris@1: Chris@1: Chris@1: Chris@1: Chris@1:
void(* _VampPluginDescriptor::cleanup)(VampPluginHandle)
Chris@1:
Chris@1:
Chris@1: Chris@1:

Destroy an instance of this plugin.

Chris@1: Chris@1:

Definition at line 291 of file vamp.h.

Chris@1: Chris@1:
Chris@1:
Chris@3: Chris@1:
Chris@1:
Chris@1: Chris@1: Chris@1: Chris@1: Chris@1:
int(* _VampPluginDescriptor::initialise)(VampPluginHandle, unsigned int inputChannels, unsigned int stepSize, unsigned int blockSize)
Chris@1:
Chris@1:
Chris@1: Chris@1:

Initialise an instance following parameter configuration.

Chris@1: Chris@1:

Definition at line 294 of file vamp.h.

Chris@1: Chris@1:
Chris@1:
Chris@3: Chris@1:
Chris@1:
Chris@1: Chris@1: Chris@1: Chris@1: Chris@1:
void(* _VampPluginDescriptor::reset)(VampPluginHandle)
Chris@1:
Chris@1:
Chris@1: Chris@1:

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

Chris@1: Chris@1:

Definition at line 300 of file vamp.h.

Chris@1: Chris@1:
Chris@1:
Chris@3: Chris@1:
Chris@1:
Chris@1: Chris@1: Chris@1: Chris@1: Chris@1:
float(* _VampPluginDescriptor::getParameter)(VampPluginHandle, int)
Chris@1:
Chris@1:
Chris@1: Chris@1:

Get a parameter value.

Chris@1: Chris@1:

Definition at line 303 of file vamp.h.

Chris@1: Chris@1:
Chris@1:
Chris@3: Chris@1:
Chris@1:
Chris@1: Chris@1: Chris@1: Chris@1: Chris@1:
void(* _VampPluginDescriptor::setParameter)(VampPluginHandle, int, float)
Chris@1:
Chris@1:
Chris@1: Chris@1:

Set a parameter value.

Chris@1:

May only be called before initialise.

Chris@1: Chris@1:

Definition at line 306 of file vamp.h.

Chris@1: Chris@1:
Chris@1:
Chris@3: Chris@1:
Chris@1:
Chris@1: Chris@1: Chris@1: Chris@1: Chris@1:
unsigned int(* _VampPluginDescriptor::getCurrentProgram)(VampPluginHandle)
Chris@1:
Chris@1:
Chris@1: Chris@1:

Get the current program (if programCount > 0).

Chris@1: Chris@1:

Definition at line 309 of file vamp.h.

Chris@1: Chris@1:
Chris@1:
Chris@3: Chris@1:
Chris@1:
Chris@1: Chris@1: Chris@1: Chris@1: Chris@1:
void(* _VampPluginDescriptor::selectProgram)(VampPluginHandle, unsigned int)
Chris@1:
Chris@1:
Chris@1: Chris@1:

Set the current program.

Chris@1:

May only be called before initialise.

Chris@1: Chris@1:

Definition at line 312 of file vamp.h.

Chris@1: Chris@1:
Chris@1:
Chris@3: Chris@1:
Chris@1:
Chris@1: Chris@1: Chris@1: Chris@1: Chris@1:
unsigned int(* _VampPluginDescriptor::getPreferredStepSize)(VampPluginHandle)
Chris@1:
Chris@1:
Chris@1: Chris@1:

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

Chris@1: Chris@1:

Definition at line 315 of file vamp.h.

Chris@1: Chris@1:
Chris@1:
Chris@3: Chris@1:
Chris@1:
Chris@1: Chris@1: Chris@1: Chris@1: Chris@1:
unsigned int(* _VampPluginDescriptor::getPreferredBlockSize)(VampPluginHandle)
Chris@1:
Chris@1:
Chris@1: Chris@1:

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

Chris@1: Chris@1:

Definition at line 318 of file vamp.h.

Chris@1: Chris@1:
Chris@1:
Chris@3: Chris@1:
Chris@1:
Chris@1: Chris@1: Chris@1: Chris@1: Chris@1:
unsigned int(* _VampPluginDescriptor::getMinChannelCount)(VampPluginHandle)
Chris@1:
Chris@1:
Chris@1: Chris@1:

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

Chris@1: Chris@1:

Definition at line 321 of file vamp.h.

Chris@1: Chris@1:
Chris@1:
Chris@3: Chris@1:
Chris@1:
Chris@1: Chris@1: Chris@1: Chris@1: Chris@1:
unsigned int(* _VampPluginDescriptor::getMaxChannelCount)(VampPluginHandle)
Chris@1:
Chris@1:
Chris@1: Chris@1:

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

Chris@1: Chris@1:

Definition at line 324 of file vamp.h.

Chris@1: Chris@1:
Chris@1:
Chris@3: Chris@1:
Chris@1:
Chris@1: Chris@1: Chris@1: Chris@1: Chris@1:
unsigned int(* _VampPluginDescriptor::getOutputCount)(VampPluginHandle)
Chris@1:
Chris@1:
Chris@1: Chris@1:

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

Chris@1: Chris@1:

Definition at line 327 of file vamp.h.

Chris@1: Chris@1:
Chris@1:
Chris@3: Chris@1:
Chris@1:
Chris@1: Chris@1: Chris@1: Chris@1: Chris@1:
VampOutputDescriptor*(* _VampPluginDescriptor::getOutputDescriptor)(VampPluginHandle, unsigned int)
Chris@1:
Chris@1:
Chris@1: Chris@1:

Get a descriptor for a given feature output.

Chris@1:

Returned pointer is valid only until next call to getOutputDescriptor for this handle, or releaseOutputDescriptor for this descriptor. Host must call releaseOutputDescriptor after use.

Chris@1: Chris@1:

Definition at line 333 of file vamp.h.

Chris@1: Chris@1:
Chris@1:
Chris@3: Chris@1:
Chris@1:
Chris@1: Chris@1: Chris@1: Chris@1: Chris@1:
void(* _VampPluginDescriptor::releaseOutputDescriptor)(VampOutputDescriptor *)
Chris@1:
Chris@1:
Chris@1: Chris@1:

Destroy a descriptor for a feature output.

Chris@1: Chris@1:

Definition at line 337 of file vamp.h.

Chris@1: Chris@1:
Chris@1:
Chris@3: Chris@1:
Chris@1:
Chris@1: Chris@1: Chris@1: Chris@1: Chris@1:
VampFeatureList*(* _VampPluginDescriptor::process)(VampPluginHandle, const float *const *inputBuffers, int sec, int nsec)
Chris@1:
Chris@1:
Chris@1: Chris@1:

Process an input block and return a set of features.

Chris@1:

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.

Chris@1: Chris@1:

Definition at line 344 of file vamp.h.

Chris@1: Chris@1:
Chris@1:
Chris@3: Chris@1:
Chris@1:
Chris@1: Chris@1: Chris@1: Chris@1: Chris@1:
VampFeatureList*(* _VampPluginDescriptor::getRemainingFeatures)(VampPluginHandle)
Chris@1:
Chris@1:
Chris@1: Chris@1:

Return any remaining features at the end of processing.

Chris@1: Chris@1:

Definition at line 350 of file vamp.h.

Chris@1: Chris@1:
Chris@1:
Chris@3: Chris@1:
Chris@1:
Chris@1: Chris@1: Chris@1: Chris@1: Chris@1:
void(* _VampPluginDescriptor::releaseFeatureSet)(VampFeatureList *)
Chris@1:
Chris@1:
Chris@1: Chris@1:

Release a feature set returned from process or getRemainingFeatures.

Chris@1: Chris@1:

Definition at line 353 of file vamp.h.

Chris@1: Chris@1:
Chris@1:
Chris@1:
The documentation for this struct was generated from the following file: Chris@3:
Chris@1:
Chris@1: Chris@1: Chris@1: Chris@1: Chris@1: