diff vamp-hostsdk/PluginLoader.h @ 473:0545cd3f1738 enumerate-options

Add plugin enumeration options (for use by piper server, needs testing)
author Chris Cannam
date Wed, 02 Nov 2016 14:22:20 +0000
parents a94ab90dfd53
children 328cb056da44
line wrap: on
line diff
--- a/vamp-hostsdk/PluginLoader.h	Fri Oct 28 14:30:26 2016 +0100
+++ b/vamp-hostsdk/PluginLoader.h	Wed Nov 02 14:22:20 2016 +0000
@@ -128,6 +128,34 @@
     PluginKeyList listPlugins();
 
     /**
+     * Search for available Vamp plugins in libraries with the given
+     * library names, and return a list of them in the order in which
+     * they were found. Do not attempt to load any plugin libraries
+     * other than those named.
+     *
+     * The library names should be supplied without path or
+     * suffix. For example, use "vamp-example-plugins" to find plugins
+     * in /install/path/of/vamp-example-plugins.dll (or .so etc). This
+     * is the same concept of "library name" as appears in the plugin
+     * key: \see composePluginKey().
+     */
+    PluginKeyList listPluginsIn(std::vector<std::string> libraryNames);
+
+    /**
+     * Search for available Vamp plugins in libraries other than those
+     * with the given library names, and return a list of them in the
+     * order in which they were found. Do not attempt to load any of
+     * the libraries named.
+     *
+     * The library names should be supplied without path or
+     * suffix. For example, use "vamp-example-plugins" to find plugins
+     * not appearing in /install/path/of/vamp-example-plugins.dll (or
+     * .so etc). This is the same concept of "library name" as appears
+     * in the plugin key: \see composePluginKey().
+     */
+    PluginKeyList listPluginsNotIn(std::vector<std::string> libraryNames);
+
+    /**
      * AdapterFlags contains a set of values that may be OR'd together
      * to indicate in which circumstances PluginLoader should use a
      * plugin adapter to make a plugin easier to use for a host that