# HG changeset patch # User Chris Cannam # Date 1463489571 -3600 # Node ID 4912b698f3f748371d9ca583b7cdfa440e6aa216 # Parent 56a23abf828362ba2f14cdb16b7c1f8f97d17028 Configuration request/response structs diff -r 56a23abf8283 -r 4912b698f3f7 vamp-hostsdk/LoadRequest.h --- a/vamp-hostsdk/LoadRequest.h Thu May 12 16:41:12 2016 +0100 +++ b/vamp-hostsdk/LoadRequest.h Tue May 17 13:52:51 2016 +0100 @@ -102,7 +102,7 @@ }; /** - * \class LoadResponse LoadResponse.h + * \class LoadResponse LoadRequest.h * * Vamp::HostExt::LoadResponse is a structure containing the * information returned by PluginLoader when asked to load a plugin diff -r 56a23abf8283 -r 4912b698f3f7 vamp-hostsdk/PluginConfiguration.h --- a/vamp-hostsdk/PluginConfiguration.h Thu May 12 16:41:12 2016 +0100 +++ b/vamp-hostsdk/PluginConfiguration.h Tue May 17 13:52:51 2016 +0100 @@ -39,6 +39,8 @@ #include "hostguard.h" +#include "Plugin.h" + #include #include @@ -102,6 +104,44 @@ } }; +/** + * \class ConfigurationRequest PluginConfiguration.h + * + * A wrapper for a plugin pointer and PluginConfiguration, bundling up + * the data needed to configure a plugin after it has been loaded. + * + * \see PluginConfiguration, ConfigurationResponse, LoadRequest, LoadResponse + */ +struct ConfigurationRequest +{ +public: + ConfigurationRequest() : // invalid request by default + plugin(0) { } + + Plugin *plugin; + PluginConfiguration configuration; +}; + +/** + * \class ConfigurationResponse PluginConfiguration.h + * + * The return value from a configuration request (i.e. setting the + * parameters and initialising the plugin). If the configuration was + * successful, the output list will contain the final + * post-initialisation output descriptors. If configuration failed, + * the output list will be empty. + * + * \see PluginConfiguration, ConfigurationRequest, LoadRequest, LoadResponse + */ +struct ConfigurationResponse +{ +public: + ConfigurationResponse() // failed by default + { } + + Plugin::OutputList outputs; +}; + } }