Mercurial > hg > svcore
comparison plugin/RealTimePluginFactory.h @ 60:3086ff194ea0
* More structural work on feature extraction plugin C <-> C++ adapter
* Allow use of LADSPA/DSSI plugins with control outputs as feature extraction
plugins (DSSI with MIDI output still to come)
* Reorder labels on spectrogram status box
* Minor tweaks in doc etc.
author | Chris Cannam |
---|---|
date | Mon, 27 Mar 2006 15:03:02 +0000 |
parents | d397ea0a79f5 |
children | 5ae5885d6ce3 |
comparison
equal
deleted
inserted
replaced
59:9705a1978ecc | 60:3086ff194ea0 |
---|---|
24 | 24 |
25 #include <QString> | 25 #include <QString> |
26 #include <vector> | 26 #include <vector> |
27 | 27 |
28 class RealTimePluginInstance; | 28 class RealTimePluginInstance; |
29 | |
30 class RealTimePluginDescriptor | |
31 { | |
32 public: | |
33 std::string name; | |
34 std::string label; | |
35 std::string maker; | |
36 std::string copyright; | |
37 std::string category; | |
38 bool isSynth; | |
39 unsigned int parameterCount; | |
40 unsigned int audioInputPortCount; | |
41 unsigned int controlOutputPortCount; | |
42 std::vector<std::string> controlOutputPortNames; | |
43 }; | |
29 | 44 |
30 class RealTimePluginFactory | 45 class RealTimePluginFactory |
31 { | 46 { |
32 public: | 47 public: |
33 static RealTimePluginFactory *instance(QString pluginType); | 48 static RealTimePluginFactory *instance(QString pluginType); |
55 * the LADSPA implementation for details. | 70 * the LADSPA implementation for details. |
56 */ | 71 */ |
57 virtual void enumeratePlugins(std::vector<QString> &list) = 0; | 72 virtual void enumeratePlugins(std::vector<QString> &list) = 0; |
58 | 73 |
59 /** | 74 /** |
75 * Get some basic information about a plugin (rapidly). | |
76 */ | |
77 virtual const RealTimePluginDescriptor *getPluginDescriptor(QString identifier) const = 0; | |
78 | |
79 /** | |
60 * Instantiate a plugin. | 80 * Instantiate a plugin. |
61 */ | 81 */ |
62 virtual RealTimePluginInstance *instantiatePlugin(QString identifier, | 82 virtual RealTimePluginInstance *instantiatePlugin(QString identifier, |
63 int clientId, | 83 int clientId, |
64 int position, | 84 int position, |