diff plugin/FeatureExtractionPluginFactory.h @ 1223:c2207877689d piper

Avoid instantiating all plugins (in piper client) on startup, using plugin static data instead. Problem of where to get the units field from is still pending.
author Chris Cannam
date Thu, 20 Oct 2016 14:06:58 +0100
parents 8dc7ab20e847
children 9ae2ce9190e6
line wrap: on
line diff
--- a/plugin/FeatureExtractionPluginFactory.h	Thu Oct 20 11:19:34 2016 +0100
+++ b/plugin/FeatureExtractionPluginFactory.h	Thu Oct 20 14:06:58 2016 +0100
@@ -26,8 +26,7 @@
 #include "base/Debug.h"
 #include "base/BaseTypes.h"
 
-#include "vamp-client/ProcessQtTransport.h"
-#include "vamp-client/CapnpRRClient.h"
+#include "vamp-support/PluginStaticData.h"
 
 class FeatureExtractionPluginFactory
 {
@@ -41,6 +40,8 @@
 
     virtual std::vector<QString> getPluginIdentifiers();
 
+    virtual piper_vamp::PluginStaticData getPluginStaticData(QString identifier);
+    
     // We don't set blockSize or channels on this -- they're
     // negotiated and handled via initialize() on the plugin
     virtual Vamp::Plugin *instantiatePlugin(QString identifier,
@@ -53,10 +54,6 @@
 
 protected:
     std::string m_serverName;
-    
-    piper_vamp::client::ProcessQtTransport m_transport;
-    piper_vamp::client::CapnpRRClient m_client;
-
     QMutex m_mutex;
     std::vector<piper_vamp::PluginStaticData> m_pluginData;
     std::map<QString, QString> m_taxonomy;