Commit 215b212e authored by Christian Schulte zu Berge's avatar Christian Schulte zu Berge
Browse files

Refactoring pipeline concept #1: Rename VisualizationPipeline to AutoEvaluationPipeline

parent 53ba5fe9
...@@ -49,7 +49,7 @@ ...@@ -49,7 +49,7 @@
#include "core/tools/simplejobprocessor.h" #include "core/tools/simplejobprocessor.h"
#include "core/tools/quadrenderer.h" #include "core/tools/quadrenderer.h"
#include "core/pipeline/abstractpipeline.h" #include "core/pipeline/abstractpipeline.h"
#include "core/pipeline/visualizationpipeline.h" #include "core/pipeline/autoevaluationpipeline.h"
namespace campvis { namespace campvis {
...@@ -78,7 +78,7 @@ namespace campvis { ...@@ -78,7 +78,7 @@ namespace campvis {
tgtAssert(_initialized == false, "Destructing initialized CampVisApplication, deinitialize first!"); tgtAssert(_initialized == false, "Destructing initialized CampVisApplication, deinitialize first!");
// delete everything in the right order: // delete everything in the right order:
for (std::vector< std::pair<VisualizationPipeline*, CampVisPainter*> >::iterator it = _visualizations.begin(); it != _visualizations.end(); ++it) { for (std::vector< std::pair<AutoEvaluationPipeline*, CampVisPainter*> >::iterator it = _visualizations.begin(); it != _visualizations.end(); ++it) {
delete it->second; delete it->second;
} }
for (std::vector<AbstractPipeline*>::iterator it = _pipelines.begin(); it != _pipelines.end(); ++it) { for (std::vector<AbstractPipeline*>::iterator it = _pipelines.begin(); it != _pipelines.end(); ++it) {
...@@ -167,7 +167,7 @@ namespace campvis { ...@@ -167,7 +167,7 @@ namespace campvis {
} }
// Now init painters: // Now init painters:
for (std::vector< std::pair<VisualizationPipeline*, CampVisPainter*> >::iterator it = _visualizations.begin(); it != _visualizations.end(); ++it) { for (std::vector< std::pair<AutoEvaluationPipeline*, CampVisPainter*> >::iterator it = _visualizations.begin(); it != _visualizations.end(); ++it) {
it->second->init(); it->second->init();
} }
...@@ -190,7 +190,7 @@ namespace campvis { ...@@ -190,7 +190,7 @@ namespace campvis {
} }
// Now deinit painters: // Now deinit painters:
for (std::vector< std::pair<VisualizationPipeline*, CampVisPainter*> >::iterator it = _visualizations.begin(); it != _visualizations.end(); ++it) { for (std::vector< std::pair<AutoEvaluationPipeline*, CampVisPainter*> >::iterator it = _visualizations.begin(); it != _visualizations.end(); ++it) {
it->second->deinit(); it->second->deinit();
} }
...@@ -243,7 +243,7 @@ namespace campvis { ...@@ -243,7 +243,7 @@ namespace campvis {
s_PipelinesChanged(); s_PipelinesChanged();
} }
void CampVisApplication::addVisualizationPipeline(const std::string& name, VisualizationPipeline* vp) { void CampVisApplication::addVisualizationPipeline(const std::string& name, AutoEvaluationPipeline* vp) {
tgtAssert(_initialized == false, "Adding pipelines after initialization is currently not supported."); tgtAssert(_initialized == false, "Adding pipelines after initialization is currently not supported.");
tgtAssert(vp != 0, "Pipeline must not be 0."); tgtAssert(vp != 0, "Pipeline must not be 0.");
......
...@@ -46,7 +46,7 @@ namespace campvis { ...@@ -46,7 +46,7 @@ namespace campvis {
class AbstractPipeline; class AbstractPipeline;
class MainWindow; class MainWindow;
class CampVisPainter; class CampVisPainter;
class VisualizationPipeline; class AutoEvaluationPipeline;
/** /**
* The CampVisApplication class wraps Pipelines, Evaluators and Painters all together and takes * The CampVisApplication class wraps Pipelines, Evaluators and Painters all together and takes
...@@ -105,9 +105,9 @@ namespace campvis { ...@@ -105,9 +105,9 @@ namespace campvis {
* *
* \note You do \b not need to call addPipeline. * \note You do \b not need to call addPipeline.
* \param name Name of the OpenGL context to create for the pipeline. * \param name Name of the OpenGL context to create for the pipeline.
* \param vp VisualizationPipeline to add. * \param vp AutoEvaluationPipeline to add.
*/ */
void addVisualizationPipeline(const std::string& name, VisualizationPipeline* vp); void addVisualizationPipeline(const std::string& name, AutoEvaluationPipeline* vp);
/** /**
* Adds a dock widget to the main window. * Adds a dock widget to the main window.
...@@ -132,7 +132,7 @@ namespace campvis { ...@@ -132,7 +132,7 @@ namespace campvis {
/// All pipelines (incuding VisualizationPipelines) /// All pipelines (incuding VisualizationPipelines)
std::vector<AbstractPipeline*> _pipelines; std::vector<AbstractPipeline*> _pipelines;
/// All visualisations (i.e. VisualizationPipelines with their corresponding painters/canvases) /// All visualisations (i.e. VisualizationPipelines with their corresponding painters/canvases)
std::vector< std::pair<VisualizationPipeline*, CampVisPainter*> > _visualizations; std::vector< std::pair<AutoEvaluationPipeline*, CampVisPainter*> > _visualizations;
/// A local OpenGL context used for initialization /// A local OpenGL context used for initialization
tgt::QtThreadedCanvas* _localContext; tgt::QtThreadedCanvas* _localContext;
......
...@@ -41,7 +41,7 @@ ...@@ -41,7 +41,7 @@
#include "core/datastructures/imagedata.h" #include "core/datastructures/imagedata.h"
#include "core/datastructures/renderdata.h" #include "core/datastructures/renderdata.h"
#include "core/pipeline/visualizationpipeline.h" #include "core/pipeline/autoevaluationpipeline.h"
#include "core/tools/job.h" #include "core/tools/job.h"
#include "core/tools/opengljobprocessor.h" #include "core/tools/opengljobprocessor.h"
#include "core/tools/quadrenderer.h" #include "core/tools/quadrenderer.h"
...@@ -49,7 +49,7 @@ ...@@ -49,7 +49,7 @@
namespace campvis { namespace campvis {
const std::string CampVisPainter::loggerCat_ = "CAMPVis.core.CampVisPainter"; const std::string CampVisPainter::loggerCat_ = "CAMPVis.core.CampVisPainter";
CampVisPainter::CampVisPainter(tgt::GLCanvas* canvas, VisualizationPipeline* pipeline) CampVisPainter::CampVisPainter(tgt::GLCanvas* canvas, AutoEvaluationPipeline* pipeline)
: Runnable() : Runnable()
, tgt::Painter(canvas) , tgt::Painter(canvas)
, _pipeline(0) , _pipeline(0)
...@@ -175,7 +175,7 @@ namespace campvis { ...@@ -175,7 +175,7 @@ namespace campvis {
} }
} }
void CampVisPainter::setPipeline(VisualizationPipeline* pipeline) { void CampVisPainter::setPipeline(AutoEvaluationPipeline* pipeline) {
tgtAssert(pipeline != 0, "The given pipeline must not be 0."); tgtAssert(pipeline != 0, "The given pipeline must not be 0.");
if (_pipeline != 0) { if (_pipeline != 0) {
_pipeline->s_renderTargetChanged.disconnect(this); _pipeline->s_renderTargetChanged.disconnect(this);
......
...@@ -44,16 +44,16 @@ namespace tgt { ...@@ -44,16 +44,16 @@ namespace tgt {
} }
namespace campvis { namespace campvis {
class VisualizationPipeline; class AutoEvaluationPipeline;
/** /**
* Painter class for CAMPVis, rendering the render target of a VisualizationPipeline. * Painter class for CAMPVis, rendering the render target of a AutoEvaluationPipeline.
* This painter implements Runnable, hence, it runs in its own thread and the associated canvas * This painter implements Runnable, hence, it runs in its own thread and the associated canvas
* must be of type QtThreadedCanvas. * must be of type QtThreadedCanvas.
* Rendering is implemented using condidional wait - hence the canvas is only updated when * Rendering is implemented using condidional wait - hence the canvas is only updated when
* \a pipeline emits the s_RenderTargetChanged signal. * \a pipeline emits the s_RenderTargetChanged signal.
* *
* \sa Runnable, VisualizationPipeline * \sa Runnable, AutoEvaluationPipeline
*/ */
class CampVisPainter : public Runnable, public tgt::Painter, public sigslot::has_slots<> { class CampVisPainter : public Runnable, public tgt::Painter, public sigslot::has_slots<> {
public: public:
...@@ -62,7 +62,7 @@ namespace campvis { ...@@ -62,7 +62,7 @@ namespace campvis {
* \param canvas Canvas to render on * \param canvas Canvas to render on
* \param pipeline Pipeline to render * \param pipeline Pipeline to render
*/ */
CampVisPainter(tgt::GLCanvas* canvas, VisualizationPipeline* pipeline); CampVisPainter(tgt::GLCanvas* canvas, AutoEvaluationPipeline* pipeline);
/** /**
* Destructor, stops and waits for the rendering thread if it's still running. * Destructor, stops and waits for the rendering thread if it's still running.
...@@ -106,7 +106,7 @@ namespace campvis { ...@@ -106,7 +106,7 @@ namespace campvis {
* Pipeline with the render target to render. * Pipeline with the render target to render.
* \param pipeline Pipeline to render * \param pipeline Pipeline to render
*/ */
void setPipeline(VisualizationPipeline* pipeline); void setPipeline(AutoEvaluationPipeline* pipeline);
/** /**
* Slot being notified when the pipeline's render target changed. * Slot being notified when the pipeline's render target changed.
...@@ -121,7 +121,7 @@ namespace campvis { ...@@ -121,7 +121,7 @@ namespace campvis {
static const std::string loggerCat_; static const std::string loggerCat_;
VisualizationPipeline* _pipeline; ///< Pipeline to render AutoEvaluationPipeline* _pipeline; ///< Pipeline to render
tgt::Shader* _copyShader; ///< Shader for copying the render target to the framebuffer. tgt::Shader* _copyShader; ///< Shader for copying the render target to the framebuffer.
tbb::atomic<bool> _dirty; ///< Flag whether render result is dirty and needs to be rerendered. tbb::atomic<bool> _dirty; ///< Flag whether render result is dirty and needs to be rerendered.
std::condition_variable _renderCondition; ///< conditional wait condition for rendering std::condition_variable _renderCondition; ///< conditional wait condition for rendering
......
...@@ -27,7 +27,7 @@ ...@@ -27,7 +27,7 @@
// //
// ================================================================================================ // ================================================================================================
#include "visualizationpipeline.h" #include "autoevaluationpipeline.h"
#include "tgt/tgt_gl.h" #include "tgt/tgt_gl.h"
#include "tgt/glcanvas.h" #include "tgt/glcanvas.h"
#include "tgt/glcontext.h" #include "tgt/glcontext.h"
...@@ -57,27 +57,27 @@ namespace { ...@@ -57,27 +57,27 @@ namespace {
} }
namespace campvis { namespace campvis {
const std::string VisualizationPipeline::loggerCat_ = "CAMPVis.core.datastructures.VisualizationPipeline"; const std::string AutoEvaluationPipeline::loggerCat_ = "CAMPVis.core.datastructures.AutoEvaluationPipeline";
VisualizationPipeline::VisualizationPipeline() AutoEvaluationPipeline::AutoEvaluationPipeline()
: AbstractPipeline() : AbstractPipeline()
, tgt::EventHandler() , tgt::EventHandler()
, tgt::EventListener() , tgt::EventListener()
, _ignoreCanvasSizeUpdate(false) , _ignoreCanvasSizeUpdate(false)
, _canvasSize("CanvasSize", "Canvas Size", tgt::ivec2(128, 128), tgt::ivec2(1, 1), tgt::ivec2(4096, 4096)) , _canvasSize("CanvasSize", "Canvas Size", tgt::ivec2(128, 128), tgt::ivec2(1, 1), tgt::ivec2(4096, 4096))
, _renderTargetID("renderTargetID", "Render Target ID", "VisualizationPipeline.renderTarget", DataNameProperty::READ) , _renderTargetID("renderTargetID", "Render Target ID", "AutoEvaluationPipeline.renderTarget", DataNameProperty::READ)
, _canvas(0) , _canvas(0)
{ {
_data.s_dataAdded.connect(this, &VisualizationPipeline::onDataContainerDataAdded); _data.s_dataAdded.connect(this, &AutoEvaluationPipeline::onDataContainerDataAdded);
addProperty(&_renderTargetID); addProperty(&_renderTargetID);
addProperty(&_canvasSize); addProperty(&_canvasSize);
_renderTargetID.s_changed.connect<VisualizationPipeline>(this, &VisualizationPipeline::onPropertyChanged); _renderTargetID.s_changed.connect<AutoEvaluationPipeline>(this, &AutoEvaluationPipeline::onPropertyChanged);
} }
VisualizationPipeline::~VisualizationPipeline() { AutoEvaluationPipeline::~AutoEvaluationPipeline() {
} }
void VisualizationPipeline::onEvent(tgt::Event* e) { void AutoEvaluationPipeline::onEvent(tgt::Event* e) {
// copy and paste from tgt::EventHandler::onEvent() but without deleting e // copy and paste from tgt::EventHandler::onEvent() but without deleting e
for (size_t i = 0 ; i < listeners_.size() ; ++i) { for (size_t i = 0 ; i < listeners_.size() ; ++i) {
// check if current listener listens to the eventType of e // check if current listener listens to the eventType of e
...@@ -89,50 +89,50 @@ namespace campvis { ...@@ -89,50 +89,50 @@ namespace campvis {
} }
} }
void VisualizationPipeline::init() { void AutoEvaluationPipeline::init() {
AbstractPipeline::init(); AbstractPipeline::init();
} }
void VisualizationPipeline::deinit() { void AutoEvaluationPipeline::deinit() {
_data.s_dataAdded.disconnect(this); _data.s_dataAdded.disconnect(this);
_renderTargetID.s_changed.disconnect(this); _renderTargetID.s_changed.disconnect(this);
AbstractPipeline::deinit(); AbstractPipeline::deinit();
} }
const tgt::ivec2& VisualizationPipeline::getRenderTargetSize() const { const tgt::ivec2& AutoEvaluationPipeline::getRenderTargetSize() const {
return _canvasSize.getValue(); return _canvasSize.getValue();
} }
void VisualizationPipeline::setRenderTargetSize(const tgt::ivec2& size) { void AutoEvaluationPipeline::setRenderTargetSize(const tgt::ivec2& size) {
if (_canvasSize.getValue() != size && !_ignoreCanvasSizeUpdate) { if (_canvasSize.getValue() != size && !_ignoreCanvasSizeUpdate) {
_canvasSize.setValue(size); _canvasSize.setValue(size);
} }
} }
void VisualizationPipeline::onDataContainerDataAdded(const std::string& name, const DataHandle& dh) { void AutoEvaluationPipeline::onDataContainerDataAdded(const std::string& name, const DataHandle& dh) {
if (name == _renderTargetID.getValue()) { if (name == _renderTargetID.getValue()) {
s_renderTargetChanged(); s_renderTargetChanged();
} }
} }
const std::string& VisualizationPipeline::getRenderTargetID() const { const std::string& AutoEvaluationPipeline::getRenderTargetID() const {
return _renderTargetID.getValue(); return _renderTargetID.getValue();
} }
void VisualizationPipeline::lockGLContextAndExecuteProcessor(AbstractProcessor* processor) { void AutoEvaluationPipeline::lockGLContextAndExecuteProcessor(AbstractProcessor* processor) {
tgtAssert(_canvas != 0, "Set a valid canvas before calling this method!"); tgtAssert(_canvas != 0, "Set a valid canvas before calling this method!");
GLJobProc.enqueueJob( GLJobProc.enqueueJob(
_canvas, _canvas,
makeJobOnHeap<VisualizationPipeline, AbstractProcessor*, bool>(this, &VisualizationPipeline::executeProcessor, processor, true), makeJobOnHeap<AutoEvaluationPipeline, AbstractProcessor*, bool>(this, &AutoEvaluationPipeline::executeProcessor, processor, true),
OpenGLJobProcessor::SerialJob); OpenGLJobProcessor::SerialJob);
} }
void VisualizationPipeline::setCanvas(tgt::GLCanvas* canvas) { void AutoEvaluationPipeline::setCanvas(tgt::GLCanvas* canvas) {
_canvas = canvas; _canvas = canvas;
} }
void VisualizationPipeline::onPropertyChanged(const AbstractProperty* prop) { void AutoEvaluationPipeline::onPropertyChanged(const AbstractProperty* prop) {
if (prop == &_renderTargetID) if (prop == &_renderTargetID)
s_renderTargetChanged(); s_renderTargetChanged();
else if (prop == &_canvasSize && _canvas != 0 && !_ignoreCanvasSizeUpdate) { else if (prop == &_canvasSize && _canvas != 0 && !_ignoreCanvasSizeUpdate) {
...@@ -146,7 +146,7 @@ namespace campvis { ...@@ -146,7 +146,7 @@ namespace campvis {
AbstractPipeline::onPropertyChanged(prop); AbstractPipeline::onPropertyChanged(prop);
} }
void VisualizationPipeline::onProcessorInvalidated(AbstractProcessor* processor) { void AutoEvaluationPipeline::onProcessorInvalidated(AbstractProcessor* processor) {
if (_canvas == 0) if (_canvas == 0)
return; return;
...@@ -156,11 +156,11 @@ namespace campvis { ...@@ -156,11 +156,11 @@ namespace campvis {
// is VisualizationProcessor // is VisualizationProcessor
GLJobProc.enqueueJob( GLJobProc.enqueueJob(
_canvas, _canvas,
makeJobOnHeap<VisualizationPipeline, AbstractProcessor*>(this, &VisualizationPipeline::executeProcessorAndCheckOpenGLState, processor), makeJobOnHeap<AutoEvaluationPipeline, AbstractProcessor*>(this, &AutoEvaluationPipeline::executeProcessorAndCheckOpenGLState, processor),
OpenGLJobProcessor::SerialJob); OpenGLJobProcessor::SerialJob);
} }
else { else {
SimpleJobProc.enqueueJob(makeJob<VisualizationPipeline, AbstractProcessor*, bool>(this, &VisualizationPipeline::executeProcessor, processor, false)); SimpleJobProc.enqueueJob(makeJob<AutoEvaluationPipeline, AbstractProcessor*, bool>(this, &AutoEvaluationPipeline::executeProcessor, processor, false));
} }
} }
else { else {
...@@ -169,12 +169,12 @@ namespace campvis { ...@@ -169,12 +169,12 @@ namespace campvis {
} }
} }
void VisualizationPipeline::addProcessor(AbstractProcessor* processor) { void AutoEvaluationPipeline::addProcessor(AbstractProcessor* processor) {
_isVisProcessorMap.insert(std::make_pair(processor, (dynamic_cast<VisualizationProcessor*>(processor) != 0))); _isVisProcessorMap.insert(std::make_pair(processor, (dynamic_cast<VisualizationProcessor*>(processor) != 0)));
AbstractPipeline::addProcessor(processor); AbstractPipeline::addProcessor(processor);
} }
void VisualizationPipeline::executeProcessorAndCheckOpenGLState(AbstractProcessor* processor) { void AutoEvaluationPipeline::executeProcessorAndCheckOpenGLState(AbstractProcessor* processor) {
AbstractPipeline::executeProcessor(processor, true); AbstractPipeline::executeProcessor(processor, true);
#ifdef CAMPVIS_DEBUG #ifdef CAMPVIS_DEBUG
......
...@@ -52,17 +52,17 @@ namespace campvis { ...@@ -52,17 +52,17 @@ namespace campvis {
* Abstract base class for CAMPVis Pipelines. * Abstract base class for CAMPVis Pipelines.
* *
*/ */
class VisualizationPipeline : public AbstractPipeline, public tgt::EventHandler, public tgt::EventListener { class AutoEvaluationPipeline : public AbstractPipeline, public tgt::EventHandler, public tgt::EventListener {
public: public:
/** /**
* Creates a VisualizationPipeline. * Creates a AutoEvaluationPipeline.
*/ */
VisualizationPipeline(); AutoEvaluationPipeline();
/** /**
* Virtual Destructor * Virtual Destructor
**/ **/
virtual ~VisualizationPipeline(); virtual ~AutoEvaluationPipeline();
/** /**
......
...@@ -79,7 +79,7 @@ namespace campvis { ...@@ -79,7 +79,7 @@ namespace campvis {
// ================================================================================================ // ================================================================================================
DigraphVisualizationPipeline::DigraphVisualizationPipeline() DigraphVisualizationPipeline::DigraphVisualizationPipeline()
: VisualizationPipeline() : AutoEvaluationPipeline()
{ {
} }
...@@ -95,7 +95,7 @@ namespace campvis { ...@@ -95,7 +95,7 @@ namespace campvis {
tgtAssert(processor != 0, "Processor must not be 0!"); tgtAssert(processor != 0, "Processor must not be 0!");
// add processor to processor list and connect signals // add processor to processor list and connect signals
VisualizationPipeline::addProcessor(processor); AutoEvaluationPipeline::addProcessor(processor);
processor->s_invalidated.connect<DigraphVisualizationPipeline>(this, &DigraphVisualizationPipeline::onProcessorInvalidated); processor->s_invalidated.connect<DigraphVisualizationPipeline>(this, &DigraphVisualizationPipeline::onProcessorInvalidated);
// create DependencyNode // create DependencyNode
......
...@@ -33,7 +33,7 @@ ...@@ -33,7 +33,7 @@
#include "sigslot/sigslot.h" #include "sigslot/sigslot.h"
#include "tgt/vector.h" #include "tgt/vector.h"
#include "tgt/event/eventlistener.h" #include "tgt/event/eventlistener.h"
#include "core/pipeline/visualizationpipeline.h" #include "core/pipeline/autoevaluationpipeline.h"
#include "core/properties/genericproperty.h" #include "core/properties/genericproperty.h"
#include <map> #include <map>
...@@ -43,12 +43,12 @@ namespace campvis { ...@@ -43,12 +43,12 @@ namespace campvis {
class VisualizationProcessor; class VisualizationProcessor;
/** /**
* Specialization of the VisualizationPipeline that performs automatic evaluation based on * Specialization of the AutoEvaluationPipeline that performs automatic evaluation based on
* an acyclic directed dependency graph. * an acyclic directed dependency graph.
* *
* \todo Implement thread-safety. The current graph implementation is \b not thread-safe. * \todo Implement thread-safety. The current graph implementation is \b not thread-safe.
*/ */
class DigraphVisualizationPipeline : public VisualizationPipeline { class DigraphVisualizationPipeline : public AutoEvaluationPipeline {
public: public:
/** /**
* Creates a DigraphVisualizationPipeline. * Creates a DigraphVisualizationPipeline.
......
...@@ -88,7 +88,7 @@ namespace campvis { ...@@ -88,7 +88,7 @@ namespace campvis {
} }
void AdvancedUsVis::init() { void AdvancedUsVis::init() {
VisualizationPipeline::init(); AutoEvaluationPipeline::init();
_usReader.s_validated.connect(this, &AdvancedUsVis::onProcessorValidated); _usReader.s_validated.connect(this, &AdvancedUsVis::onProcessorValidated);
...@@ -197,7 +197,7 @@ namespace campvis { ...@@ -197,7 +197,7 @@ namespace campvis {
void AdvancedUsVis::deinit() { void AdvancedUsVis::deinit() {
_canvasSize.s_changed.disconnect(this); _canvasSize.s_changed.disconnect(this);
VisualizationPipeline::deinit(); AutoEvaluationPipeline::deinit();
} }
void AdvancedUsVis::execute() { void AdvancedUsVis::execute() {
......
...@@ -51,7 +51,7 @@ ...@@ -51,7 +51,7 @@
namespace campvis { namespace campvis {
CmBatchGeneration::CmBatchGeneration() CmBatchGeneration::CmBatchGeneration()
: VisualizationPipeline() : AutoEvaluationPipeline()
, _usReader(&_canvasSize) , _usReader(&_canvasSize)
, _confidenceGenerator() , _confidenceGenerator()
, _usBlurFilter() , _usBlurFilter()
...@@ -80,7 +80,7 @@ namespace campvis { ...@@ -80,7 +80,7 @@ namespace campvis {
} }
void CmBatchGeneration::init() { void CmBatchGeneration::init() {
VisualizationPipeline::init(); AutoEvaluationPipeline::init();
p_sourcePath.setValue("D:\\Medical Data\\US Confidence Vis\\Pasing 13-02-26\\04-02-22-212506_Perez11_20040222_212506_20040222_220332\\gallenblase"); p_sourcePath.setValue("D:\\Medical Data\\US Confidence Vis\\Pasing 13-02-26\\04-02-22-212506_Perez11_20040222_212506_20040222_220332\\gallenblase");
p_targetPathColor.setValue("D:\\Medical Data\\US Confidence Vis\\Pasing 13-02-26\\04-02-22-212506_Perez11_20040222_212506_20040222_220332\\gallenblase\\color"); p_targetPathColor.setValue("D:\\Medical Data\\US Confidence Vis\\Pasing 13-02-26\\04-02-22-212506_Perez11_20040222_212506_20040222_220332\\gallenblase\\color");
...@@ -124,7 +124,7 @@ namespace campvis { ...@@ -124,7 +124,7 @@ namespace campvis {
} }
void CmBatchGeneration::deinit() { void CmBatchGeneration::deinit() {
VisualizationPipeline::deinit(); AutoEvaluationPipeline::deinit();
} }
void CmBatchGeneration::execute() { void CmBatchGeneration::execute() {
...@@ -143,7 +143,7 @@ namespace campvis { ...@@ -143,7 +143,7 @@ namespace campvis {
void CmBatchGeneration::onProcessorInvalidated(AbstractProcessor* processor) { void CmBatchGeneration::onProcessorInvalidated(AbstractProcessor* processor) {