diff plugin/FeatureExtractionPluginFactory.h @ 1830:5f8fbbde08ff audio-source-refactor

Use shared_ptr for plugin instances throughout
author Chris Cannam
date Fri, 20 Mar 2020 16:30:33 +0000
parents 91bb68146dfc
children
line wrap: on
line diff
--- a/plugin/FeatureExtractionPluginFactory.h	Fri Mar 20 16:30:16 2020 +0000
+++ b/plugin/FeatureExtractionPluginFactory.h	Fri Mar 20 16:30:33 2020 +0000
@@ -24,6 +24,8 @@
 
 #include <QString>
 
+#include <memory>
+
 class FeatureExtractionPluginFactory
 {
 public:
@@ -47,8 +49,8 @@
      * blockSize or channels on this -- they're negotiated and handled
      * via initialize() on the plugin itself after loading.
      */
-    virtual Vamp::Plugin *instantiatePlugin(QString identifier,
-                                            sv_samplerate_t inputSampleRate) = 0;
+    virtual std::shared_ptr<Vamp::Plugin> instantiatePlugin(QString identifier,
+                                                            sv_samplerate_t inputSampleRate) = 0;
     
     /**
      * Get category metadata about a plugin (without instantiating it).