annotate src/vamp-plugin-sdk-2.5/skeleton/MyPlugin.h @ 83:ae30d91d2ffe

Replace these with versions built using an older toolset (so as to avoid ABI compatibilities when linking on Ubuntu 14.04 for packaging purposes)
author Chris Cannam
date Fri, 07 Feb 2020 11:51:13 +0000
parents 619f715526df
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