diff plugin/LADSPAPluginFactory.h @ 1527:710e6250a401 zoom

Merge from default branch
author Chris Cannam
date Mon, 17 Sep 2018 13:51:14 +0100
parents 5d7057af0c68
children c01cbe41aeb5
line wrap: on
line diff
--- a/plugin/LADSPAPluginFactory.h	Mon Dec 12 15:18:52 2016 +0000
+++ b/plugin/LADSPAPluginFactory.h	Mon Sep 17 13:51:14 2018 +0100
@@ -47,20 +47,24 @@
     virtual const RealTimePluginDescriptor *getPluginDescriptor(QString identifier) const;
 
     virtual RealTimePluginInstance *instantiatePlugin(QString identifier,
-						      int clientId,
-						      int position,
-						      sv_samplerate_t sampleRate,
-						      int blockSize,
-						      int channels);
+                                                      int clientId,
+                                                      int position,
+                                                      sv_samplerate_t sampleRate,
+                                                      int blockSize,
+                                                      int channels);
 
     virtual QString getPluginCategory(QString identifier);
 
+    virtual QString getPluginLibraryPath(QString identifier);
+    
     float getPortMinimum(const LADSPA_Descriptor *, int port);
     float getPortMaximum(const LADSPA_Descriptor *, int port);
     float getPortDefault(const LADSPA_Descriptor *, int port);
     float getPortQuantization(const LADSPA_Descriptor *, int port);
     int getPortDisplayHint(const LADSPA_Descriptor *, int port);
 
+    static std::vector<QString> getPluginPath();
+
 protected:
     LADSPAPluginFactory();
     friend class RealTimePluginFactory;
@@ -69,8 +73,6 @@
         return PluginScan::LADSPAPlugin;
     }
 
-    virtual std::vector<QString> getPluginPath();
-
     virtual std::vector<QString> getLRDFPath(QString &baseUri);
 
     virtual void discoverPluginsFrom(QString soName);
@@ -86,6 +88,7 @@
     void unloadUnusedLibraries();
 
     std::vector<QString> m_identifiers;
+    std::map<QString, QString> m_libraries; // identifier -> full file path
     std::map<QString, RealTimePluginDescriptor *> m_rtDescriptors;
 
     std::map<QString, QString> m_taxonomy;