comparison transform/ModelTransformerFactory.h @ 1703:b17fb3a4560c single-point

Add haveRunningTransformers() and mutex
author Chris Cannam
date Thu, 09 May 2019 16:01:04 +0100
parents ad5f892c0c4d
children fe3f7f8df3a3
comparison
equal deleted inserted replaced
1701:81f50b70bdef 1703:b17fb3a4560c
23 #include "ModelTransformer.h" 23 #include "ModelTransformer.h"
24 24
25 #include <vamp-hostsdk/PluginBase.h> 25 #include <vamp-hostsdk/PluginBase.h>
26 26
27 #include <QMap> 27 #include <QMap>
28 #include <QMutex>
28 #include <map> 29 #include <map>
29 #include <set> 30 #include <set>
30 #include <vector> 31 #include <vector>
31 32
32 class AudioPlaySource; 33 class AudioPlaySource;
143 std::vector<Model *> transformMultiple(const Transforms &transform, 144 std::vector<Model *> transformMultiple(const Transforms &transform,
144 const ModelTransformer::Input &input, 145 const ModelTransformer::Input &input,
145 QString &message, 146 QString &message,
146 AdditionalModelHandler *handler = 0); 147 AdditionalModelHandler *handler = 0);
147 148
149 bool haveRunningTransformers() const;
150
148 signals: 151 signals:
149 void transformFailed(QString transformName, QString message); 152 void transformFailed(QString transformName, QString message);
150 153
151 protected slots: 154 protected slots:
152 void transformerFinished(); 155 void transformerFinished();
155 158
156 protected: 159 protected:
157 ModelTransformer *createTransformer(const Transforms &transforms, 160 ModelTransformer *createTransformer(const Transforms &transforms,
158 const ModelTransformer::Input &input); 161 const ModelTransformer::Input &input);
159 162
163 mutable QMutex m_mutex;
164
160 typedef std::map<TransformId, QString> TransformerConfigurationMap; 165 typedef std::map<TransformId, QString> TransformerConfigurationMap;
161 TransformerConfigurationMap m_lastConfigurations; 166 TransformerConfigurationMap m_lastConfigurations;
162 167
163 typedef std::set<ModelTransformer *> TransformerSet; 168 typedef std::set<ModelTransformer *> TransformerSet;
164 TransformerSet m_runningTransformers; 169 TransformerSet m_runningTransformers;