c@94
|
1
|
c@94
|
2 #ifndef PIPER_PLUGIN_CLIENT_H
|
c@94
|
3 #define PIPER_PLUGIN_CLIENT_H
|
c@94
|
4
|
c@97
|
5 #include "vamp-support/PluginConfiguration.h"
|
c@94
|
6
|
c@97
|
7 namespace piper_vamp {
|
c@97
|
8 namespace client {
|
c@94
|
9
|
c@94
|
10 class PluginStub;
|
c@94
|
11
|
c@94
|
12 class PluginClient
|
c@94
|
13 {
|
c@94
|
14 public:
|
c@94
|
15 virtual
|
c@94
|
16 Vamp::Plugin::OutputList
|
c@94
|
17 configure(PluginStub *plugin,
|
c@97
|
18 PluginConfiguration config) = 0;
|
c@94
|
19
|
c@94
|
20 virtual
|
c@94
|
21 Vamp::Plugin::FeatureSet
|
c@94
|
22 process(PluginStub *plugin,
|
c@94
|
23 std::vector<std::vector<float> > inputBuffers,
|
c@94
|
24 Vamp::RealTime timestamp) = 0;
|
c@94
|
25
|
c@94
|
26 virtual
|
c@94
|
27 Vamp::Plugin::FeatureSet
|
c@94
|
28 finish(PluginStub *plugin) = 0;
|
c@94
|
29
|
c@94
|
30 virtual
|
c@94
|
31 void
|
c@97
|
32 reset(PluginStub *plugin, PluginConfiguration config) = 0;
|
c@94
|
33 };
|
c@94
|
34
|
c@94
|
35 }
|
c@94
|
36 }
|
c@94
|
37
|
c@94
|
38 #endif
|