mirror of
https://github.com/cookiengineer/audacity
synced 2025-04-30 07:39:42 +02:00
60 lines
1.5 KiB
C++
60 lines
1.5 KiB
C++
|
|
// This is a skeleton file for use in creating your own plugin
|
|
// libraries. Replace MyPlugin and myPlugin throughout with the name
|
|
// of your first plugin class, and fill in the gaps as appropriate.
|
|
|
|
|
|
// Remember to use a different guard symbol in each header!
|
|
#ifndef _MY_PLUGIN_H_
|
|
#define _MY_PLUGIN_H_
|
|
|
|
#include <vamp-sdk/Plugin.h>
|
|
|
|
using std::string;
|
|
|
|
|
|
class MyPlugin : public Vamp::Plugin
|
|
{
|
|
public:
|
|
MyPlugin(float inputSampleRate);
|
|
virtual ~MyPlugin();
|
|
|
|
string getIdentifier() const;
|
|
string getName() const;
|
|
string getDescription() const;
|
|
string getMaker() const;
|
|
int getPluginVersion() const;
|
|
string getCopyright() const;
|
|
|
|
InputDomain getInputDomain() const;
|
|
size_t getPreferredBlockSize() const;
|
|
size_t getPreferredStepSize() const;
|
|
size_t getMinChannelCount() const;
|
|
size_t getMaxChannelCount() const;
|
|
|
|
ParameterList getParameterDescriptors() const;
|
|
float getParameter(string identifier) const;
|
|
void setParameter(string identifier, float value);
|
|
|
|
ProgramList getPrograms() const;
|
|
string getCurrentProgram() const;
|
|
void selectProgram(string name);
|
|
|
|
OutputList getOutputDescriptors() const;
|
|
|
|
bool initialise(size_t channels, size_t stepSize, size_t blockSize);
|
|
void reset();
|
|
|
|
FeatureSet process(const float *const *inputBuffers,
|
|
Vamp::RealTime timestamp);
|
|
|
|
FeatureSet getRemainingFeatures();
|
|
|
|
protected:
|
|
// plugin-specific data and methods go here
|
|
};
|
|
|
|
|
|
|
|
#endif
|