Chris@15: /* -*- c-basic-offset: 4 indent-tabs-mode: nil -*- vi:set ts=8 sts=4 sw=4: */ Chris@15: Chris@15: #include "PiperExport.h" Chris@15: #include "CQVamp.h" Chris@15: #include "CQChromaVamp.h" Chris@15: Chris@15: static std::string soname("cqvamp"); Chris@15: Chris@15: class CQVampMIDIParamsAdapter : public piper_vamp_js::PiperAdapterBase Chris@15: { Chris@15: public: Chris@15: CQVampMIDIParamsAdapter() : PiperAdapterBase(soname) { } Chris@15: virtual Vamp::Plugin *createPlugin(float inputSampleRate) const override { Chris@15: return new CQVamp(inputSampleRate, true); Chris@15: } Chris@15: }; Chris@15: Chris@15: class CQVampHzParamsAdapter : public piper_vamp_js::PiperAdapterBase Chris@15: { Chris@15: public: Chris@15: CQVampHzParamsAdapter() : PiperAdapterBase(soname) { } Chris@15: virtual Vamp::Plugin *createPlugin(float inputSampleRate) const override { Chris@15: return new CQVamp(inputSampleRate, false); Chris@15: } Chris@15: }; Chris@15: Chris@15: static CQVampMIDIParamsAdapter cqVampMIDIParamsAdapter; Chris@15: static CQVampHzParamsAdapter cqVampHzParamsAdapter; Chris@15: Chris@15: static piper_vamp_js::PiperAdapter cqChromaVampAdapter(soname); Chris@15: Chris@15: static piper_vamp_js::PiperPluginLibrary library({ Chris@15: &cqVampMIDIParamsAdapter, Chris@15: &cqVampHzParamsAdapter, Chris@15: &cqChromaVampAdapter Chris@15: }); Chris@15: Chris@15: PIPER_EXPORT_LIBRARY(library);