CustusX  2023.01.05-dev+develop.0da12
An IGT application
cx::Pipeline Class Reference

#include <cxPipeline.h>

Inheritance diagram for cx::Pipeline:

Public Slots

void nodeValueChanged (QString uid, int index)
 

Public Member Functions

 Pipeline (PatientModelServicePtr patientModelService, QObject *parent=0)
 
void initialize (FilterGroupPtr filter)
 
FilterGroupPtr getFilters () const
 
void setOption (QString valueName, QVariant value)
 
std::vector< SelectDataStringPropertyBasePtrgetNodes ()
 
TimedAlgorithmPtr getTimedAlgorithm (QString uid)
 
TimedAlgorithmPtr getPipelineTimedAlgorithm ()
 
void execute (QString uid="")
 

Detailed Description

Sequential execution of Filters.

Date
Nov 22, 2012
Author
christiana
Janne Beate Bakeng, SINTEF

Definition at line 78 of file cxPipeline.h.

Constructor & Destructor Documentation

cx::Pipeline::Pipeline ( PatientModelServicePtr  patientModelService,
QObject *  parent = 0 
)
explicit

-----------------------------------------------------—


Definition at line 133 of file cxPipeline.cpp.

Member Function Documentation

void cx::Pipeline::execute ( QString  uid = "")

Execute the filter at filterIndex. Recursively execute all filters earlier in the pipeline if they dont have an output value.

Empty input tries to update the pipeline output, i.e. execute all filters required to generate the final output, or none if already filled.

Definition at line 281 of file cxPipeline.cpp.

FilterGroupPtr cx::Pipeline::getFilters ( ) const

Get all filters in pipeline

Definition at line 160 of file cxPipeline.cpp.

std::vector< SelectDataStringPropertyBasePtr > cx::Pipeline::getNodes ( )

Get all nodes. If there are N filters, there are N+1 nodes. Node N are input to filter N, and have node N+1 as output.

Nodes are a fusion of output/input of filters in the pipeline. Setting of an output will autoset the input of the next filter through this mechanism.

Definition at line 218 of file cxPipeline.cpp.

TimedAlgorithmPtr cx::Pipeline::getPipelineTimedAlgorithm ( )

Get the TimedAlgorithm for the entire pipeline. This is a composition of all the individual filters. Do not run this directly: Rather use the execute() method, use this for extra stuff like checking for finished.

Definition at line 276 of file cxPipeline.cpp.

TimedAlgorithmPtr cx::Pipeline::getTimedAlgorithm ( QString  uid)

Get the TimedAlgorithm for a given filter. Do not run this directly: Rather use the execute() method to run all filters serially.

Definition at line 271 of file cxPipeline.cpp.

void cx::Pipeline::initialize ( FilterGroupPtr  filter)

Initialize pipeline. Do once before use.

Definition at line 140 of file cxPipeline.cpp.

void cx::Pipeline::nodeValueChanged ( QString  uid,
int  index 
)
slot

Definition at line 262 of file cxPipeline.cpp.

void cx::Pipeline::setOption ( QString  valueName,
QVariant  value 
)

Set all options with the named valueName to the value, given that they are of the correct type.

Supported types: bool, double, QString, QColor

Definition at line 170 of file cxPipeline.cpp.


The documentation for this class was generated from the following files: