diff align/TransformDTWAligner.h @ 768:1b1960009be6 pitch-align

Provide callback for output preprocessing before DTW, use it for freq-pitch conversion; use direct setting of completion on alignment models instead of creating fake outputs for completion only
author Chris Cannam
date Fri, 22 May 2020 17:17:44 +0100
parents dd742e566e60
children 1d6cca5a5621
line wrap: on
line diff
--- a/align/TransformDTWAligner.h	Thu May 21 16:21:57 2020 +0100
+++ b/align/TransformDTWAligner.h	Fri May 22 17:17:44 2020 +0100
@@ -19,6 +19,8 @@
 
 #include "transform/Transform.h"
 
+#include <functional>
+
 class AlignmentModel;
 class Document;
 
@@ -37,6 +39,13 @@
                         ModelId toAlign,
                         Transform transform,
                         DTWType dtwType);
+    
+    TransformDTWAligner(Document *doc,
+                        ModelId reference,
+                        ModelId toAlign,
+                        Transform transform,
+                        DTWType dtwType,
+                        std::function<double(double)> outputPreprocessor);
 
     // Destroy the aligner, cleanly cancelling any ongoing alignment
     ~TransformDTWAligner();
@@ -58,13 +67,11 @@
     ModelId m_toAlign;
     ModelId m_referenceOutputModel;
     ModelId m_toAlignOutputModel;
-    ModelId m_alignmentProgressModel;
     ModelId m_alignmentModel;
-    bool m_referenceTransformComplete;
-    bool m_toAlignTransformComplete;
     Transform m_transform;
     DTWType m_dtwType;
     bool m_incomplete;
+    std::function<double(double)> m_outputPreprocessor;
 };
 
 #endif