PluginBufferingAdapter.h
Go to the documentation of this file.00001
00002
00003
00004
00005
00006
00007
00008
00009
00010
00011
00012
00013
00014
00015
00016
00017
00018
00019
00020
00021
00022
00023
00024
00025
00026
00027
00028
00029
00030
00031
00032
00033
00034
00035
00036
00037
00038 #ifndef _VAMP_PLUGIN_BUFFERING_ADAPTER_H_
00039 #define _VAMP_PLUGIN_BUFFERING_ADAPTER_H_
00040
00041 #include "hostguard.h"
00042 #include "PluginWrapper.h"
00043
00044 _VAMP_SDK_HOSTSPACE_BEGIN(PluginBufferingAdapter.h)
00045
00046 namespace Vamp {
00047
00048 namespace HostExt {
00049
00075 class PluginBufferingAdapter : public PluginWrapper
00076 {
00077 public:
00083 PluginBufferingAdapter(Plugin *plugin);
00084 virtual ~PluginBufferingAdapter();
00085
00095 size_t getPreferredStepSize() const;
00096
00107 size_t getPreferredBlockSize() const;
00108
00118 bool initialise(size_t channels, size_t stepSize, size_t blockSize);
00119
00131 size_t getPluginPreferredStepSize() const;
00132
00139 size_t getPluginPreferredBlockSize() const;
00140
00148 void setPluginStepSize(size_t stepSize);
00149
00157 void setPluginBlockSize(size_t blockSize);
00158
00170 void getActualStepAndBlockSizes(size_t &stepSize, size_t &blockSize);
00171
00172 void setParameter(std::string, float);
00173 void selectProgram(std::string);
00174
00175 OutputList getOutputDescriptors() const;
00176
00177 void reset();
00178
00179 FeatureSet process(const float *const *inputBuffers, RealTime timestamp);
00180
00181 FeatureSet getRemainingFeatures();
00182
00183 protected:
00184 class Impl;
00185 Impl *m_impl;
00186 };
00187
00188 }
00189
00190 }
00191
00192 _VAMP_SDK_HOSTSPACE_END(PluginBufferingAdapter.h)
00193
00194 #endif