Mercurial > hg > sonic-annotator
comparison runner/FeatureExtractionManager.h @ 110:ca565b18ba3e multiplex
Merge from default branch
author | Chris Cannam |
---|---|
date | Thu, 02 Oct 2014 14:54:48 +0100 |
parents | de76b2df518f 78a7c77ba432 |
children | 0c2d8c945bbf |
comparison
equal
deleted
inserted
replaced
107:7b60603966cf | 110:ca565b18ba3e |
---|---|
81 // of them and then iterate through this map | 81 // of them and then iterate through this map |
82 | 82 |
83 typedef map<Transform, vector<FeatureWriter *> > TransformWriterMap; | 83 typedef map<Transform, vector<FeatureWriter *> > TransformWriterMap; |
84 typedef map<Vamp::Plugin *, TransformWriterMap> PluginMap; | 84 typedef map<Vamp::Plugin *, TransformWriterMap> PluginMap; |
85 PluginMap m_plugins; | 85 PluginMap m_plugins; |
86 | 86 |
87 // When we run plugins, we want to run them in a known order so as | |
88 // to get the same results on each run of Sonic Annotator with the | |
89 // same transforms. But if we just iterate through our PluginMap, | |
90 // we get them in an arbitrary order based on pointer | |
91 // address. This vector provides an underlying order for us. Note | |
92 // that the TransformWriterMap is consistently ordered (because | |
93 // the key is a Transform which has a proper ordering) so using | |
94 // this gives us a consistent order across the whole PluginMap | |
95 vector<Vamp::Plugin *> m_orderedPlugins; | |
96 | |
87 // And a map back from transforms to their plugins. Note that | 97 // And a map back from transforms to their plugins. Note that |
88 // this is keyed by transform, not transform ID -- two differently | 98 // this is keyed by transform, not transform ID -- two differently |
89 // configured transforms with the same ID must use different | 99 // configured transforms with the same ID must use different |
90 // plugin instances. | 100 // plugin instances. |
91 | 101 |