annotate src/vamp-plugin-sdk-2.5/skeleton/MyPlugin.h @ 23:619f715526df sv_v2.1

Update Vamp plugin SDK to 2.5
author Chris Cannam
date Thu, 09 May 2013 10:52:46 +0100
parents
children
rev   line source
Chris@23 1
Chris@23 2 // This is a skeleton file for use in creating your own plugin
Chris@23 3 // libraries. Replace MyPlugin and myPlugin throughout with the name
Chris@23 4 // of your first plugin class, and fill in the gaps as appropriate.
Chris@23 5
Chris@23 6
Chris@23 7 // Remember to use a different guard symbol in each header!
Chris@23 8 #ifndef _MY_PLUGIN_H_
Chris@23 9 #define _MY_PLUGIN_H_
Chris@23 10
Chris@23 11 #include <vamp-sdk/Plugin.h>
Chris@23 12
Chris@23 13 using std::string;
Chris@23 14
Chris@23 15
Chris@23 16 class MyPlugin : public Vamp::Plugin
Chris@23 17 {
Chris@23 18 public:
Chris@23 19 MyPlugin(float inputSampleRate);
Chris@23 20 virtual ~MyPlugin();
Chris@23 21
Chris@23 22 string getIdentifier() const;
Chris@23 23 string getName() const;
Chris@23 24 string getDescription() const;
Chris@23 25 string getMaker() const;
Chris@23 26 int getPluginVersion() const;
Chris@23 27 string getCopyright() const;
Chris@23 28
Chris@23 29 InputDomain getInputDomain() const;
Chris@23 30 size_t getPreferredBlockSize() const;
Chris@23 31 size_t getPreferredStepSize() const;
Chris@23 32 size_t getMinChannelCount() const;
Chris@23 33 size_t getMaxChannelCount() const;
Chris@23 34
Chris@23 35 ParameterList getParameterDescriptors() const;
Chris@23 36 float getParameter(string identifier) const;
Chris@23 37 void setParameter(string identifier, float value);
Chris@23 38
Chris@23 39 ProgramList getPrograms() const;
Chris@23 40 string getCurrentProgram() const;
Chris@23 41 void selectProgram(string name);
Chris@23 42
Chris@23 43 OutputList getOutputDescriptors() const;
Chris@23 44
Chris@23 45 bool initialise(size_t channels, size_t stepSize, size_t blockSize);
Chris@23 46 void reset();
Chris@23 47
Chris@23 48 FeatureSet process(const float *const *inputBuffers,
Chris@23 49 Vamp::RealTime timestamp);
Chris@23 50
Chris@23 51 FeatureSet getRemainingFeatures();
Chris@23 52
Chris@23 53 protected:
Chris@23 54 // plugin-specific data and methods go here
Chris@23 55 };
Chris@23 56
Chris@23 57
Chris@23 58
Chris@23 59 #endif