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

Base class for parallel data transport models. More...

#include <PTransport.h>

Inheritance diagram for casa::PTransport:
casa::SerialTransport

Public Member Functions

 PTransport ()
 Default constructor and destructor. More...
 
virtual ~PTransport ()
 
casacore::Int numThreads ()
 Return the number of processes. More...
 
casacore::Int cpu ()
 Return the current process rank. More...
 
casacore::Int connect (casacore::Int i)
 Set the properties of the current connection including source/destination and message tag. More...
 
void connectAnySource ()
 
void connectToController ()
 
void setTag (casacore::Int tag)
 
void setAnyTag ()
 
casacore::Bool isController ()
 Status functions for worker/controller designation. More...
 
casacore::Bool isWorker ()
 
virtual casacore::Int anyTag ()=0
 Default source and message tag values. More...
 
virtual casacore::Int anySource ()=0
 
virtual casacore::Int controllerRank ()=0
 Define the rank of the controller process. More...
 
virtual casacore::Int put (const casacore::Array< casacore::Float > &)=0
 Get and put functions on the parallel data transport layer. More...
 
virtual casacore::Int put (const casacore::Array< casacore::Double > &)=0
 
virtual casacore::Int put (const casacore::Array< casacore::Complex > &)=0
 
virtual casacore::Int put (const casacore::Array< casacore::DComplex > &)=0
 
virtual casacore::Int put (const casacore::Array< casacore::Int > &)=0
 
virtual casacore::Int put (const casacore::Float &)=0
 
virtual casacore::Int put (const casacore::Double &)=0
 
virtual casacore::Int put (const casacore::Complex &)=0
 
virtual casacore::Int put (const casacore::DComplex &)=0
 
virtual casacore::Int put (const casacore::Int &)=0
 
virtual casacore::Int put (const casacore::String &)=0
 
virtual casacore::Int put (const casacore::Bool &)=0
 
virtual casacore::Int put (const casacore::Record &)=0
 
virtual casacore::Int get (casacore::Array< casacore::Float > &)=0
 
virtual casacore::Int get (casacore::Array< casacore::Double > &)=0
 
virtual casacore::Int get (casacore::Array< casacore::Complex > &)=0
 
virtual casacore::Int get (casacore::Array< casacore::DComplex > &)=0
 
virtual casacore::Int get (casacore::Array< casacore::Int > &)=0
 
virtual casacore::Int get (casacore::Float &)=0
 
virtual casacore::Int get (casacore::Double &)=0
 
virtual casacore::Int get (casacore::Complex &)=0
 
virtual casacore::Int get (casacore::DComplex &)=0
 
virtual casacore::Int get (casacore::Int &)=0
 
virtual casacore::Int get (casacore::String &)=0
 
virtual casacore::Int get (casacore::Bool &)=0
 
virtual casacore::Int get (casacore::Record &)=0
 

Protected Attributes

casacore::Int numprocs
 Number of processes. More...
 
casacore::Int myCpu
 Rank of current process. More...
 
casacore::Int aWorker
 Current source or destination process. More...
 
casacore::Int aTag
 Current message tag. More...
 

Detailed Description

Base class for parallel data transport models.

Intended use:

Internal or

Intended use:

Internal

Review Status

Date Reviewed:
yyyy/mm/dd

Prerequisite

Etymology

Synopsis

Example

Motivation

Definition at line 81 of file PTransport.h.

Constructor & Destructor Documentation

casa::PTransport::PTransport ( )
inline

Default constructor and destructor.

Definition at line 84 of file PTransport.h.

virtual casa::PTransport::~PTransport ( )
inlinevirtual

Definition at line 85 of file PTransport.h.

Member Function Documentation

virtual casacore::Int casa::PTransport::anySource ( )
pure virtual

Implemented in casa::SerialTransport.

Referenced by connectAnySource().

virtual casacore::Int casa::PTransport::anyTag ( )
pure virtual

Default source and message tag values.

Implemented in casa::SerialTransport.

Referenced by setAnyTag().

casacore::Int casa::PTransport::connect ( casacore::Int  i)
inline

Set the properties of the current connection including source/destination and message tag.

Definition at line 95 of file PTransport.h.

References aWorker.

void casa::PTransport::connectAnySource ( )
inline

Definition at line 96 of file PTransport.h.

References anySource(), and aWorker.

void casa::PTransport::connectToController ( )
inline

Definition at line 97 of file PTransport.h.

References aWorker, and controllerRank().

virtual casacore::Int casa::PTransport::controllerRank ( )
pure virtual

Define the rank of the controller process.

Implemented in casa::SerialTransport.

Referenced by connectToController(), isController(), and isWorker().

casacore::Int casa::PTransport::cpu ( )
inline

Return the current process rank.

Definition at line 91 of file PTransport.h.

References myCpu.

Referenced by isController(), and isWorker().

virtual casacore::Int casa::PTransport::get ( casacore::Array< casacore::Float > &  )
pure virtual

Implemented in casa::SerialTransport.

Referenced by casa::Applicator::get().

virtual casacore::Int casa::PTransport::get ( casacore::Array< casacore::Double > &  )
pure virtual

Implemented in casa::SerialTransport.

virtual casacore::Int casa::PTransport::get ( casacore::Array< casacore::Complex > &  )
pure virtual

Implemented in casa::SerialTransport.

virtual casacore::Int casa::PTransport::get ( casacore::Array< casacore::DComplex > &  )
pure virtual

Implemented in casa::SerialTransport.

virtual casacore::Int casa::PTransport::get ( casacore::Array< casacore::Int > &  )
pure virtual

Implemented in casa::SerialTransport.

virtual casacore::Int casa::PTransport::get ( casacore::Float )
pure virtual

Implemented in casa::SerialTransport.

virtual casacore::Int casa::PTransport::get ( casacore::Double )
pure virtual

Implemented in casa::SerialTransport.

virtual casacore::Int casa::PTransport::get ( casacore::Complex &  )
pure virtual

Implemented in casa::SerialTransport.

virtual casacore::Int casa::PTransport::get ( casacore::DComplex &  )
pure virtual

Implemented in casa::SerialTransport.

virtual casacore::Int casa::PTransport::get ( casacore::Int )
pure virtual

Implemented in casa::SerialTransport.

virtual casacore::Int casa::PTransport::get ( casacore::String )
pure virtual

Implemented in casa::SerialTransport.

virtual casacore::Int casa::PTransport::get ( casacore::Bool )
pure virtual

Implemented in casa::SerialTransport.

virtual casacore::Int casa::PTransport::get ( casacore::Record )
pure virtual

Implemented in casa::SerialTransport.

casacore::Bool casa::PTransport::isController ( )
inline

Status functions for worker/controller designation.

Definition at line 102 of file PTransport.h.

References controllerRank(), and cpu().

casacore::Bool casa::PTransport::isWorker ( )
inline

Definition at line 103 of file PTransport.h.

References controllerRank(), and cpu().

casacore::Int casa::PTransport::numThreads ( )
inline

Return the number of processes.

Definition at line 88 of file PTransport.h.

References numprocs.

virtual casacore::Int casa::PTransport::put ( const casacore::Array< casacore::Float > &  )
pure virtual

Get and put functions on the parallel data transport layer.

Implemented in casa::SerialTransport.

Referenced by casa::Applicator::put().

virtual casacore::Int casa::PTransport::put ( const casacore::Array< casacore::Double > &  )
pure virtual

Implemented in casa::SerialTransport.

virtual casacore::Int casa::PTransport::put ( const casacore::Array< casacore::Complex > &  )
pure virtual

Implemented in casa::SerialTransport.

virtual casacore::Int casa::PTransport::put ( const casacore::Array< casacore::DComplex > &  )
pure virtual

Implemented in casa::SerialTransport.

virtual casacore::Int casa::PTransport::put ( const casacore::Array< casacore::Int > &  )
pure virtual

Implemented in casa::SerialTransport.

virtual casacore::Int casa::PTransport::put ( const casacore::Float )
pure virtual

Implemented in casa::SerialTransport.

virtual casacore::Int casa::PTransport::put ( const casacore::Double )
pure virtual

Implemented in casa::SerialTransport.

virtual casacore::Int casa::PTransport::put ( const casacore::Complex &  )
pure virtual

Implemented in casa::SerialTransport.

virtual casacore::Int casa::PTransport::put ( const casacore::DComplex &  )
pure virtual

Implemented in casa::SerialTransport.

virtual casacore::Int casa::PTransport::put ( const casacore::Int )
pure virtual

Implemented in casa::SerialTransport.

virtual casacore::Int casa::PTransport::put ( const casacore::String )
pure virtual

Implemented in casa::SerialTransport.

virtual casacore::Int casa::PTransport::put ( const casacore::Bool )
pure virtual

Implemented in casa::SerialTransport.

virtual casacore::Int casa::PTransport::put ( const casacore::Record )
pure virtual

Implemented in casa::SerialTransport.

void casa::PTransport::setAnyTag ( )
inline

Definition at line 99 of file PTransport.h.

References anyTag(), and aTag.

void casa::PTransport::setTag ( casacore::Int  tag)
inline

Definition at line 98 of file PTransport.h.

References aTag.

Member Data Documentation

casacore::Int casa::PTransport::aTag
protected

Current message tag.

Definition at line 152 of file PTransport.h.

Referenced by setAnyTag(), and setTag().

casacore::Int casa::PTransport::aWorker
protected

Current source or destination process.

Definition at line 149 of file PTransport.h.

Referenced by connect(), connectAnySource(), and connectToController().

casacore::Int casa::PTransport::myCpu
protected

Rank of current process.

Definition at line 146 of file PTransport.h.

Referenced by cpu().

casacore::Int casa::PTransport::numprocs
protected

Number of processes.

Definition at line 143 of file PTransport.h.

Referenced by numThreads().


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