casa  5.7.0-16
 All Classes Namespaces Files Functions Variables Typedefs Enumerations Enumerator Friends Macros Groups Pages
Public Member Functions | Protected Member Functions | List of all members
casa::Algorithm Class Referenceabstract

Defines a computational unit for parallel processing. More...

#include <Algorithm.h>

Inheritance diagram for casa::Algorithm:
casa::ClarkCleanAlgorithm casa::MakeApproxPSFAlgorithm casa::PredictAlgorithm casa::ReadMSAlgorithm casa::ResidualAlgorithm

Public Member Functions

 Algorithm ()
 Default constructor and destructor. More...
 
virtual ~Algorithm ()
 
void apply ()
 Generic apply to execute the parallel task. More...
 
virtual void get ()=0
 Get the input data and parameters from the controller. More...
 
virtual void put ()=0
 Return the results to the controller. More...
 
virtual casacore::Stringname ()=0
 Return the name of the algorithm. More...
 

Protected Member Functions

virtual void task ()=0
 Do the work assigned as a parallel task. More...
 

Detailed Description

Defines a computational unit for parallel processing.

Intended use:

Internal or

Intended use:

Internal

Review Status

Date Reviewed:
yyyy/mm/dd

Prerequisite

Etymology

Synopsis

Base class used to define a computational unit for parallel processing. The user supplies: i) the get() (fetch the data); ii) the task() (do the work); iii) the put() (send the results back); and iv) the name() (name of the task).

Example

Motivation

The algorithm class is used for embarassingly- or nearly-embarassingly types of parallel problems.

To Do

Base class. User always derives off this class

Definition at line 89 of file Algorithm.h.

Constructor & Destructor Documentation

casa::Algorithm::Algorithm ( )
inline

Default constructor and destructor.

Definition at line 92 of file Algorithm.h.

virtual casa::Algorithm::~Algorithm ( )
inlinevirtual

Definition at line 93 of file Algorithm.h.

Member Function Documentation

void casa::Algorithm::apply ( )
inline

Generic apply to execute the parallel task.

Definition at line 96 of file Algorithm.h.

References casa::applicator, casa::Applicator::done(), put(), and task().

virtual void casa::Algorithm::get ( )
pure virtual

Get the input data and parameters from the controller.

Implemented in casa::ResidualAlgorithm, casa::MakeApproxPSFAlgorithm, casa::PredictAlgorithm, casa::ReadMSAlgorithm, and casa::ClarkCleanAlgorithm.

virtual casacore::String& casa::Algorithm::name ( )
pure virtual
virtual void casa::Algorithm::put ( )
pure virtual

Return the results to the controller.

Implemented in casa::ResidualAlgorithm, casa::MakeApproxPSFAlgorithm, casa::PredictAlgorithm, casa::ReadMSAlgorithm, and casa::ClarkCleanAlgorithm.

Referenced by apply().

virtual void casa::Algorithm::task ( )
protectedpure virtual

Do the work assigned as a parallel task.

Implemented in casa::ResidualAlgorithm, casa::MakeApproxPSFAlgorithm, casa::PredictAlgorithm, casa::ClarkCleanAlgorithm, and casa::ReadMSAlgorithm.

Referenced by apply().


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