Mercurial > hg > vamp-plugin-sdk
comparison vamp-hostsdk/RequestResponse.h @ 462:6ac615fd02a3
Merge from branch vampipe
author | Chris Cannam |
---|---|
date | Mon, 10 Oct 2016 15:51:33 +0100 |
parents | 85dadd0d482f |
children |
comparison
equal
deleted
inserted
replaced
460:b409560a805b | 462:6ac615fd02a3 |
---|---|
52 class Plugin; | 52 class Plugin; |
53 | 53 |
54 namespace HostExt { | 54 namespace HostExt { |
55 | 55 |
56 /** | 56 /** |
57 * \class ListResponse RequestResponse.h <vamp-hostsdk/RequestResponse.h> | |
58 * | |
59 * Vamp::HostExt::ListResponse is a structure containing the | |
60 * information returned by PluginLoader when asked to list static | |
61 * information about the available plugins. | |
62 * | |
63 * \see PluginLoader::listPluginData, PluginStaticData | |
64 * | |
65 * \note This class was introduced in version 2.7 of the Vamp plugin | |
66 * SDK, along with the PluginLoader method that returns this structure. | |
67 */ | |
68 struct ListResponse | |
69 { | |
70 ListResponse() { } // empty by default | |
71 | |
72 std::vector<PluginStaticData> available; | |
73 }; | |
74 | |
75 /** | |
57 * \class LoadRequest RequestResponse.h <vamp-hostsdk/RequestResponse.h> | 76 * \class LoadRequest RequestResponse.h <vamp-hostsdk/RequestResponse.h> |
58 * | 77 * |
59 * Vamp::HostExt::LoadRequest is a structure containing the | 78 * Vamp::HostExt::LoadRequest is a structure containing the |
60 * information necessary to load a plugin. When a request is made to | 79 * information necessary to load a plugin. When a request is made to |
61 * load a plugin using a LoadRequest, the response is typically | 80 * load a plugin using a LoadRequest, the response is typically |
184 * SDK, along with the PluginLoader method that returns this structure. | 203 * SDK, along with the PluginLoader method that returns this structure. |
185 */ | 204 */ |
186 struct ConfigurationResponse | 205 struct ConfigurationResponse |
187 { | 206 { |
188 public: | 207 public: |
189 ConfigurationResponse() // failed by default | 208 ConfigurationResponse() : // failed by default |
190 { } | 209 plugin(0) { } |
191 | 210 |
211 Plugin *plugin; | |
192 Plugin::OutputList outputs; | 212 Plugin::OutputList outputs; |
193 }; | 213 }; |
194 | 214 |
195 /** | 215 /** |
196 * \class ProcessRequest RequestResponse.h <vamp-hostsdk/RequestResponse.h> | 216 * \class ProcessRequest RequestResponse.h <vamp-hostsdk/RequestResponse.h> |
221 /** | 241 /** |
222 * \class ProcessResponse RequestResponse.h <vamp-hostsdk/RequestResponse.h> | 242 * \class ProcessResponse RequestResponse.h <vamp-hostsdk/RequestResponse.h> |
223 * | 243 * |
224 * A structure that bundles the data returned by a process call and by | 244 * A structure that bundles the data returned by a process call and by |
225 * Plugin::getRemainingFeatures(). This is simply a FeatureSet | 245 * Plugin::getRemainingFeatures(). This is simply a FeatureSet |
226 * wrapper, named for symmetry with the other request-response pairs. | 246 * wrapper that happens to reference the plugin as well. |
227 * | 247 * |
228 * \see Plugin::process(), Plugin::getRemainingFeatures() | 248 * \see Plugin::process(), Plugin::getRemainingFeatures() |
229 * | 249 * |
230 * \note This class was introduced in version 2.7 of the Vamp plugin | 250 * \note This class was introduced in version 2.7 of the Vamp plugin |
231 * SDK, but it is not currently used by the SDK. It is supplied as a | 251 * SDK, but it is not currently used by the SDK. It is supplied as a |
233 * and configuration request structs. | 253 * and configuration request structs. |
234 */ | 254 */ |
235 struct ProcessResponse | 255 struct ProcessResponse |
236 { | 256 { |
237 public: | 257 public: |
238 ProcessResponse() // empty by default | 258 ProcessResponse() : // invalid by default |
239 { } | 259 plugin(0) { } |
240 | 260 |
261 Plugin *plugin; | |
241 Plugin::FeatureSet features; | 262 Plugin::FeatureSet features; |
242 }; | 263 }; |
243 | 264 |
265 /** | |
266 * \class FinishRequest RequestResponse.h <vamp-hostsdk/RequestResponse.h> | |
267 * | |
268 * A structure that bundles the necessary data for finishing | |
269 * processing, i.e. calling getRemainingFeatures(). This consists only | |
270 * of the plugin pointer. Caller retains ownership of the plugin. | |
271 * | |
272 * \see Plugin::getRemainingFeatures() | |
273 * | |
274 * \note This class was introduced in version 2.7 of the Vamp plugin | |
275 * SDK, but it is not currently used by the SDK. It is supplied as a | |
276 * convenience for code using the SDK, and for symmetry with the load | |
277 * and configuration request structs. | |
278 * | |
279 * \note The response to a finish request (getRemainingFeatures()) is | |
280 * a ProcessResponse, just as it is for a process request. | |
281 */ | |
282 struct FinishRequest | |
283 { | |
284 public: | |
285 FinishRequest() : // invalid by default | |
286 plugin(0) { } | |
287 | |
288 Plugin *plugin; | |
289 }; | |
290 | |
244 } | 291 } |
245 | 292 |
246 } | 293 } |
247 | 294 |
248 _VAMP_SDK_HOSTSPACE_END(RequestResponse.h) | 295 _VAMP_SDK_HOSTSPACE_END(RequestResponse.h) |