Mercurial > hg > vamp-plugin-sdk
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); }; }