diff vamp-hostsdk/PluginLoader.h @ 57:09a1aac6c362 host-factory-stuff

* add wrapper base * make loader able to look up categories
author cannam
date Wed, 09 May 2007 15:21:37 +0000
parents 4ab6224110ef
children
line wrap: on
line diff
--- a/vamp-hostsdk/PluginLoader.h	Fri May 04 15:21:12 2007 +0000
+++ b/vamp-hostsdk/PluginLoader.h	Wed May 09 15:21:37 2007 +0000
@@ -52,6 +52,7 @@
     virtual ~PluginLoader();
 
     typedef std::string PluginKey;
+    typedef std::vector<std::string> PluginCategoryHierarchy;
 
     std::vector<PluginKey> listPlugins(); //!!! pass in version number?
 
@@ -59,12 +60,17 @@
     //have to consider library loading issues -- do we have a wrapper
     //class that tells us when it's been deleted, and keep a reference
     //count for the dynamic library?
-    Plugin *load(PluginKey key, float inputSampleRate);
+    Plugin *load(PluginKey plugin, float inputSampleRate);
 
-    std::string getLibraryPath(PluginKey key);
+    PluginCategoryHierarchy getPluginCategory(PluginKey plugin);
+
+    std::string getLibraryPathForPlugin(PluginKey plugin);
 
 protected:
     std::map<PluginKey, std::string> m_pluginLibraryMap;
+    std::map<PluginKey, PluginCategoryHierarchy> m_taxonomy;
+    void generateTaxonomy();
+    std::vector<std::string> getFilesInDir(std::string dir, std::string ext);
 };
 
 }