Mercurial > hg > svcore
comparison plugin/RealTimePluginFactory.h @ 1057:5c5d4863b428 tonioni
Merge from cxx11 branch
author | Chris Cannam |
---|---|
date | Mon, 23 Mar 2015 11:26:28 +0000 |
parents | a1cd5abcb38b |
children | 48e9f538e6e9 |
comparison
equal
deleted
inserted
replaced
1056:c4898e57eea5 | 1057:5c5d4863b428 |
---|---|
24 | 24 |
25 #include <QString> | 25 #include <QString> |
26 #include <vector> | 26 #include <vector> |
27 | 27 |
28 #include "base/Debug.h" | 28 #include "base/Debug.h" |
29 #include "base/BaseTypes.h" | |
29 | 30 |
30 class RealTimePluginInstance; | 31 class RealTimePluginInstance; |
31 | 32 |
32 class RealTimePluginDescriptor | 33 class RealTimePluginDescriptor |
33 { | 34 { |
53 static RealTimePluginFactory *instance(QString pluginType); | 54 static RealTimePluginFactory *instance(QString pluginType); |
54 static RealTimePluginFactory *instanceFor(QString identifier); | 55 static RealTimePluginFactory *instanceFor(QString identifier); |
55 static std::vector<QString> getAllPluginIdentifiers(); | 56 static std::vector<QString> getAllPluginIdentifiers(); |
56 static void enumerateAllPlugins(std::vector<QString> &); | 57 static void enumerateAllPlugins(std::vector<QString> &); |
57 | 58 |
58 static void setSampleRate(int sampleRate) { m_sampleRate = sampleRate; } | 59 static void setSampleRate(sv_samplerate_t sampleRate) { m_sampleRate = sampleRate; } |
59 | 60 |
60 /** | 61 /** |
61 * Look up the plugin path and find the plugins in it. Called | 62 * Look up the plugin path and find the plugins in it. Called |
62 * automatically after construction of a factory. | 63 * automatically after construction of a factory. |
63 */ | 64 */ |
85 * Instantiate a plugin. | 86 * Instantiate a plugin. |
86 */ | 87 */ |
87 virtual RealTimePluginInstance *instantiatePlugin(QString identifier, | 88 virtual RealTimePluginInstance *instantiatePlugin(QString identifier, |
88 int clientId, | 89 int clientId, |
89 int position, | 90 int position, |
90 unsigned int sampleRate, | 91 sv_samplerate_t sampleRate, |
91 unsigned int blockSize, | 92 int blockSize, |
92 unsigned int channels) = 0; | 93 int channels) = 0; |
93 | 94 |
94 /** | 95 /** |
95 * Get category metadata about a plugin (without instantiating it). | 96 * Get category metadata about a plugin (without instantiating it). |
96 */ | 97 */ |
97 virtual QString getPluginCategory(QString identifier) = 0; | 98 virtual QString getPluginCategory(QString identifier) = 0; |
101 | 102 |
102 // for call by RealTimePluginInstance dtor | 103 // for call by RealTimePluginInstance dtor |
103 virtual void releasePlugin(RealTimePluginInstance *, QString identifier) = 0; | 104 virtual void releasePlugin(RealTimePluginInstance *, QString identifier) = 0; |
104 friend class RealTimePluginInstance; | 105 friend class RealTimePluginInstance; |
105 | 106 |
106 static int m_sampleRate; | 107 static sv_samplerate_t m_sampleRate; |
107 }; | 108 }; |
108 | 109 |
109 #endif | 110 #endif |