+#include "plugins/Silence.h"
+
+template <typename P>
+class VersionedPluginAdapter : public Vamp::PluginAdapterBase
+{
+public:
+ VersionedPluginAdapter(unsigned int v) : PluginAdapterBase(), m_v(v) { }
+ virtual ~VersionedPluginAdapter() { }
+
+protected:
+ Vamp::Plugin *createPlugin(float inputSampleRate) {
+ P *p = new P(inputSampleRate, m_v);
+ Vamp::Plugin *plugin = dynamic_cast<Vamp::Plugin *>(p);
+ return plugin;
+ }
+ unsigned int m_v;
+};