CustusX  16.5
An IGT application
 All Classes Namespaces Files Functions Variables Typedefs Enumerations Enumerator Friends Macros Groups Pages
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 104 of file cxCompositeTimedAlgorithm.h.

Constructor & Destructor Documentation

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

Definition at line 135 of file cxCompositeTimedAlgorithm.cpp.

Member Function Documentation

void cx::CompositeParallelTimedAlgorithm::clear ( )
virtual

Implements cx::CompositeTimedAlgorithm.

Definition at line 154 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 167 of file cxCompositeTimedAlgorithm.cpp.

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

Reimplemented from cx::TimedBaseAlgorithm.

Definition at line 140 of file cxCompositeTimedAlgorithm.cpp.

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

Returns true after the finished() signal is emitted.

Implements cx::TimedBaseAlgorithm.

Definition at line 189 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 200 of file cxCompositeTimedAlgorithm.cpp.


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