casa::Algorithm Class Reference
[Parallel_internal_classes]

#include <Algorithm.h>

Inheritance diagram for casa::Algorithm:

Inheritance graph
[legend]
List of all members.

Detailed Description

Defines a computational unit for parallel processing.

Intended use:

Internal or<h3>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 85 of file Algorithm.h.

Public Member Functions

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

Protected Member Functions

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


Constructor & Destructor Documentation

casa::Algorithm::Algorithm (  )  [inline]

Default constructor and destructor.

Definition at line 88 of file Algorithm.h.

virtual casa::Algorithm::~Algorithm (  )  [inline, virtual]

Definition at line 89 of file Algorithm.h.


Member Function Documentation

void casa::Algorithm::apply (  )  [inline]

Generic apply to execute the parallel task.

Definition at line 92 of file Algorithm.h.

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

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

Get the input data and parameters from the controller.

Referenced by apply().

virtual void casa::Algorithm::put (  )  [pure virtual]

Return the results to the controller.

Referenced by apply().

virtual String& casa::Algorithm::name (  )  [pure virtual]

Return the name of the algorithm.

virtual void casa::Algorithm::task (  )  [protected, pure virtual]

Do the work assigned as a parallel task.

Referenced by apply().


The documentation for this class was generated from the following file:
Generated on Mon Sep 1 22:48:07 2008 for NRAOCASA by  doxygen 1.5.1