diff transform/ModelTransformer.cpp @ 911:73c2fd9a7dbe

Merge from branch tony_integration
author Chris Cannam
date Wed, 14 May 2014 09:54:20 +0100
parents b109b88bfa85
children fe3f7f8df3a3
line wrap: on
line diff
--- a/transform/ModelTransformer.cpp	Wed May 07 15:17:58 2014 +0100
+++ b/transform/ModelTransformer.cpp	Wed May 14 09:54:20 2014 +0100
@@ -16,10 +16,19 @@
 #include "ModelTransformer.h"
 
 ModelTransformer::ModelTransformer(Input input, const Transform &transform) :
-    m_transform(transform),
     m_input(input),
-    m_output(0),
     m_detached(false),
+    m_detachedAdd(false),
+    m_abandoned(false)
+{
+    m_transforms.push_back(transform);
+}
+
+ModelTransformer::ModelTransformer(Input input, const Transforms &transforms) :
+    m_transforms(transforms),
+    m_input(input),
+    m_detached(false),
+    m_detachedAdd(false),
     m_abandoned(false)
 {
 }
@@ -28,6 +37,13 @@
 {
     m_abandoned = true;
     wait();
-    if (!m_detached) delete m_output;
+    if (!m_detached) {
+        Models mine = getOutputModels();
+        foreach (Model *m, mine) delete m;
+    }
+    if (!m_detachedAdd) {
+        Models mine = getAdditionalOutputModels();
+        foreach (Model *m, mine) delete m;
+    }
 }