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

#include <cxCompositeTimedAlgorithm.h>

Inheritance diagram for cx::CompositeParallelTimedAlgorithm:
cx::CompositeTimedAlgorithm cx::TimedBaseAlgorithm

Public Member Functions

 CompositeParallelTimedAlgorithm (QString name="parallel")
 
virtual void clear ()
 
virtual QString getProduct () const
 
virtual void execute ()
 
virtual bool isFinished () const
 
virtual bool isRunning () const
 
- Public Member Functions inherited from cx::CompositeTimedAlgorithm
 CompositeTimedAlgorithm (QString name)
 
virtual void append (TimedAlgorithmPtr child)
 
- Public Member Functions inherited from cx::TimedBaseAlgorithm
 TimedBaseAlgorithm (QString product, int secondsBetweenAnnounce)
 
virtual ~TimedBaseAlgorithm ()
 

Additional Inherited Members

- Signals inherited from cx::TimedBaseAlgorithm
void aboutToStart ()
 emitted at start of execute. Use to perform preprocessing More...
 
void started (int maxSteps)
 emitted at start of run. More...
 
void finished ()
 should be emitted when at the end of postProcessingSlot More...
 
void productChanged ()
 emitted whenever product string has changed More...
 
- Protected Slots inherited from cx::TimedBaseAlgorithm
virtual void finishedSlot ()
 
virtual void postProcessingSlot ()
 
- Protected Member Functions inherited from cx::TimedBaseAlgorithm
void startTiming ()
 
void stopTiming ()
 
QString getSecondsPassedAsString () const
 
- Protected Attributes inherited from cx::CompositeTimedAlgorithm
std::vector< TimedAlgorithmPtrmChildren
 
- Protected Attributes inherited from cx::TimedBaseAlgorithm
bool mUseDefaultMessages
 

Detailed Description

Composition of several TimedBaseAlgorithms executing in parallel.

Usage: Append all algorithms as children then execute. All children will be executed in parallel. started()/finished() will also work.

Date
Nov 06, 2012
Author
Christian Askeland

Definition at line 83 of file cxCompositeTimedAlgorithm.h.

Constructor & Destructor Documentation

cx::CompositeParallelTimedAlgorithm::CompositeParallelTimedAlgorithm ( QString  name = "parallel")

Definition at line 114 of file cxCompositeTimedAlgorithm.cpp.

Member Function Documentation

void cx::CompositeParallelTimedAlgorithm::clear ( )
virtual

Implements cx::CompositeTimedAlgorithm.

Definition at line 133 of file cxCompositeTimedAlgorithm.cpp.

void cx::CompositeParallelTimedAlgorithm::execute ( )
virtual

Execute the algorithm. Parts of the execution can be in another thread, thus the call usually returns after preprocessing is complete. The exec starts by emitting aboutToStart(), which can be used by callers to set input arguments.

Implements cx::TimedBaseAlgorithm.

Definition at line 146 of file cxCompositeTimedAlgorithm.cpp.

QString cx::CompositeParallelTimedAlgorithm::getProduct ( ) const
virtual

Reimplemented from cx::TimedBaseAlgorithm.

Definition at line 119 of file cxCompositeTimedAlgorithm.cpp.

bool cx::CompositeParallelTimedAlgorithm::isFinished ( ) const
virtual

Returns true after the finished() signal is emitted.

Implements cx::TimedBaseAlgorithm.

Definition at line 168 of file cxCompositeTimedAlgorithm.cpp.

bool cx::CompositeParallelTimedAlgorithm::isRunning ( ) const
virtual

Returns true if preprocess is started and postprocess not complete. (Right after aboutToStart, right before finished())

Implements cx::TimedBaseAlgorithm.

Definition at line 179 of file cxCompositeTimedAlgorithm.cpp.


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