Mercurial > hg > sonic-visualiser
diff transform/TransformFactory.h @ 118:b4110b17bca8
* Fix #1672407 confused by plugin-named files in cwd (or home?)
* Fix #1491848 crash when loading new file while transform plugin runs
* Fix #1502287 Background remains black after spectrogram layer deleted
* Fix #1604477 Replacing the main audio file silences secondary audio file
* Fix failure to initialise property box layout to last preference on startup
* Fix resample/wrong-rate display in Pane, ensure that right rate is chosen
if all current models have an acceptable rate even if previous main model
had a different one
* Fix "global zoom" broken in previous commit
* Some fixes to spectrogram cache area updating (makes spectrogram appear
more quickly, previously it had a tendency to refresh with empty space)
* Fixes to colour 3d plot normalization
author | Chris Cannam |
---|---|
date | Thu, 08 Mar 2007 16:53:08 +0000 |
parents | 58f21cf235c7 |
children | ebd906049fb6 |
line wrap: on
line diff
--- a/transform/TransformFactory.h Wed Mar 07 18:00:49 2007 +0000 +++ b/transform/TransformFactory.h Thu Mar 08 16:53:08 2007 +0000 @@ -20,6 +20,7 @@ #include "PluginTransform.h" #include <map> +#include <set> namespace Vamp { class PluginBase; } @@ -142,21 +143,16 @@ */ bool getTransformChannelRange(TransformId identifier, int &minChannels, int &maxChannels); - - //!!! Need some way to indicate that the input model has changed / - //been deleted so as not to blow up backgrounded transform! -- Or - //indeed, if the output model has been deleted -- could equally - //well happen! - - //!!! Need transform category! protected slots: void transformFinished(); + void modelAboutToBeDeleted(Model *); + protected: Transform *createTransform(TransformId identifier, Model *inputModel, const PluginTransform::ExecutionContext &context, - QString configurationXml, bool start); + QString configurationXml); struct TransformIdent { @@ -170,6 +166,9 @@ typedef std::map<TransformId, TransformDesc> TransformDescriptionMap; TransformDescriptionMap m_transforms; + typedef std::set<Transform *> TransformSet; + TransformSet m_runningTransforms; + void populateTransforms(); void populateFeatureExtractionPlugins(TransformDescriptionMap &); void populateRealTimePlugins(TransformDescriptionMap &);