changeset 15:50ab01b77262 tonioni

added specific addLayerForNotes() function to analyser
author gyorgyf
date Sat, 13 Apr 2013 14:09:20 +0100
parents 7ab5ed737788
children c6f5a9b4b617
files src/Analyser.cpp src/Analyser.h
diffstat 2 files changed, 32 insertions(+), 1 deletions(-) [+]
line wrap: on
line diff
--- a/src/Analyser.cpp	Sat Apr 13 13:39:17 2013 +0100
+++ b/src/Analyser.cpp	Sat Apr 13 14:09:20 2013 +0100
@@ -74,7 +74,7 @@
 	}
     }
 
-    layer = addLayerFor(notes);
+    layer = addLayerForNotes(notes);
 
     if (layer) {
 	FlexiNoteLayer *nl = qobject_cast<FlexiNoteLayer *>(layer);
@@ -106,6 +106,36 @@
     transform.setBlockSize(2048);
 	
     ModelTransformer::Input input(m_fileModel, -1);
+    
+    Layer *layer;
+    layer = m_document->createDerivedLayer(transform, m_fileModel);
+
+    if (layer) {
+		m_document->addLayerToView(m_pane, layer);
+    } else {
+		std::cerr << "ERROR: Cound not create layer. " << std::endl;
+	}
+
+    return layer;
+}
+
+Layer *
+Analyser::addLayerForNotes(TransformId id)
+{
+    TransformFactory *tf = TransformFactory::getInstance();
+
+    if (!tf->haveTransform(id)) {
+	std::cerr << "ERROR: Analyser::addLayerFor(" << id << "): Transform unknown" << std::endl;
+	return 0;
+    }
+    
+    Transform transform = tf->getDefaultTransformFor
+	(id, m_fileModel->getSampleRate());
+	
+    transform.setStepSize(512);
+    transform.setBlockSize(2048);
+	
+    ModelTransformer::Input input(m_fileModel, -1);
 
 	FeatureExtractionModelTransformer::PreferredOutputModel preferredModel;
 	
--- a/src/Analyser.h	Sat Apr 13 13:39:17 2013 +0100
+++ b/src/Analyser.h	Sat Apr 13 14:09:20 2013 +0100
@@ -46,6 +46,7 @@
     Pane *m_pane;
 
     Layer *addLayerFor(TransformId);
+    Layer *addLayerForNotes(TransformId);
 	LayerFactory::LayerType preferredLayer;
 
 };