Epetra_SerialDistributor Class Reference

Epetra_SerialDistributor: The Epetra Serial implementation of the Epetra_Distributor Gather/Scatter Setup Class. More...

#include <Epetra_SerialDistributor.h>

Inheritance diagram for Epetra_SerialDistributor:

Inheritance graph
[legend]

List of all members.

Public Member Functions

int CreateFromSends (const int &NumExportIDs, const int *ExportPIDs, bool Deterministic, int &NumRemoteIDs)
 Create Distributor object using list of process IDs to which we export.
int CreateFromRecvs (const int &NumRemoteIDs, const int *RemoteGIDs, const int *RemotePIDs, bool Deterministic, int &NumExportIDs, int *&ExportGIDs, int *&ExportPIDs)
 Create Distributor object using list of Remote global IDs and corresponding PIDs.
int Do (char *export_objs, int obj_size, int &len_import_objs, char *&import_objs)
 Execute plan on buffer of export objects in a single step.
int DoReverse (char *export_objs, int obj_size, int &len_import_objs, char *&import_objs)
 Execute reverse of plan on buffer of export objects in a single step.
int DoPosts (char *export_objs, int obj_size, int &len_import_objs, char *&import_objs)
 Post buffer of export objects (can do other local work before executing Waits).
int DoWaits ()
 Wait on a set of posts.
int DoReversePosts (char *export_objs, int obj_size, int &len_import_objs, char *&import_objs)
 Do reverse post of buffer of export objects (can do other local work before executing Waits).
int DoReverseWaits ()
 Wait on a reverse set of posts.
int Do (char *export_objs, int obj_size, int *&sizes, int &len_import_objs, char *&import_objs)
 Execute plan on buffer of export objects in a single step (object size may vary).
int DoReverse (char *export_objs, int obj_size, int *&sizes, int &len_import_objs, char *&import_objs)
 Execute reverse of plan on buffer of export objects in a single step (object size may vary).
int DoPosts (char *export_objs, int obj_size, int *&sizes, int &len_import_objs, char *&import_objs)
 Post buffer of export objects (can do other local work before executing Waits).
int DoReversePosts (char *export_objs, int obj_size, int *&sizes, int &len_import_objs, char *&import_objs)
 Do reverse post of buffer of export objects (can do other local work before executing Waits).
virtual void Print (ostream &os) const

Private Attributes

int nrecvs_
int nsends_

Constructor/Destructor

 Epetra_SerialDistributor (const Epetra_SerialComm &Comm)
 Constructor.
 Epetra_SerialDistributor (const Epetra_SerialDistributor &Plan)
 Epetra_SerialDistributor Copy Constructor.
Epetra_DistributorClone ()
 Clone method.
virtual ~Epetra_SerialDistributor ()
 Epetra_Comm Destructor.


Detailed Description

Epetra_SerialDistributor: The Epetra Serial implementation of the Epetra_Distributor Gather/Scatter Setup Class.

The Epetra_SerialDistributor class is an Serial implement of Epetra_Distributor that is essentially a trivial class since a serial machine is a trivial parallel machine. An Epetra_SerialDistributor object is actually produced by calling a method in the Epetra_SerialComm class.

Definition at line 46 of file Epetra_SerialDistributor.h.


Constructor & Destructor Documentation

Epetra_SerialDistributor::Epetra_SerialDistributor ( const Epetra_SerialComm Comm  ) 

Constructor.

Definition at line 36 of file Epetra_SerialDistributor.cpp.

Epetra_SerialDistributor::Epetra_SerialDistributor ( const Epetra_SerialDistributor Plan  ) 

Epetra_SerialDistributor Copy Constructor.

Definition at line 45 of file Epetra_SerialDistributor.cpp.

Epetra_SerialDistributor::~Epetra_SerialDistributor (  )  [virtual]

Epetra_Comm Destructor.

Definition at line 54 of file Epetra_SerialDistributor.cpp.


Member Function Documentation

Epetra_Distributor* Epetra_SerialDistributor::Clone (  )  [inline, virtual]

Clone method.

Implements Epetra_Distributor.

Definition at line 60 of file Epetra_SerialDistributor.h.

int Epetra_SerialDistributor::CreateFromSends ( const int &  NumExportIDs,
const int *  ExportPIDs,
bool  Deterministic,
int &  NumRemoteIDs 
) [virtual]

Create Distributor object using list of process IDs to which we export.

Take a list of Process IDs and construct a plan for efficiently scattering to these processes. Return the number of IDs being sent to me.

Parameters:
NumExportIDs In Number of IDs that need to be sent from this processor.
ExportPIDs In List of processors that will get the exported IDs.
Deterministic In No op.
NumRemoteIDs Out Number of IDs this processor will be receiving.

Implements Epetra_Distributor.

Definition at line 63 of file Epetra_SerialDistributor.cpp.

int Epetra_SerialDistributor::CreateFromRecvs ( const int &  NumRemoteIDs,
const int *  RemoteGIDs,
const int *  RemotePIDs,
bool  Deterministic,
int &  NumExportIDs,
int *&  ExportGIDs,
int *&  ExportPIDs 
) [virtual]

Create Distributor object using list of Remote global IDs and corresponding PIDs.

Take a list of global IDs and construct a plan for efficiently scattering to these processes. Return the number and list of IDs being sent by me.

Parameters:
NumRemoteIDs In Number of IDs this processor will be receiving.
RemoteGIDs In List of IDs that this processor wants.
RemotePIDs In List of processors that will send the remote IDs.
Deterministic In No op.
NumExportIDs Out Number of IDs that need to be sent from this processor.
ExportPIDs Out List of processors that will get the exported IDs.

Implements Epetra_Distributor.

Definition at line 94 of file Epetra_SerialDistributor.cpp.

int Epetra_SerialDistributor::Do ( char *  export_objs,
int  obj_size,
int &  len_import_objs,
char *&  import_objs 
) [virtual]

Execute plan on buffer of export objects in a single step.

Implements Epetra_Distributor.

Definition at line 115 of file Epetra_SerialDistributor.cpp.

int Epetra_SerialDistributor::DoReverse ( char *  export_objs,
int  obj_size,
int &  len_import_objs,
char *&  import_objs 
) [virtual]

Execute reverse of plan on buffer of export objects in a single step.

Implements Epetra_Distributor.

Definition at line 132 of file Epetra_SerialDistributor.cpp.

int Epetra_SerialDistributor::DoPosts ( char *  export_objs,
int  obj_size,
int &  len_import_objs,
char *&  import_objs 
) [virtual]

Post buffer of export objects (can do other local work before executing Waits).

Implements Epetra_Distributor.

Definition at line 148 of file Epetra_SerialDistributor.cpp.

int Epetra_SerialDistributor::DoWaits (  )  [virtual]

Wait on a set of posts.

Implements Epetra_Distributor.

Definition at line 164 of file Epetra_SerialDistributor.cpp.

int Epetra_SerialDistributor::DoReversePosts ( char *  export_objs,
int  obj_size,
int &  len_import_objs,
char *&  import_objs 
) [virtual]

Do reverse post of buffer of export objects (can do other local work before executing Waits).

Implements Epetra_Distributor.

Definition at line 174 of file Epetra_SerialDistributor.cpp.

int Epetra_SerialDistributor::DoReverseWaits (  )  [virtual]

Wait on a reverse set of posts.

Implements Epetra_Distributor.

Definition at line 191 of file Epetra_SerialDistributor.cpp.

int Epetra_SerialDistributor::Do ( char *  export_objs,
int  obj_size,
int *&  sizes,
int &  len_import_objs,
char *&  import_objs 
) [virtual]

Execute plan on buffer of export objects in a single step (object size may vary).

Implements Epetra_Distributor.

Definition at line 199 of file Epetra_SerialDistributor.cpp.

int Epetra_SerialDistributor::DoReverse ( char *  export_objs,
int  obj_size,
int *&  sizes,
int &  len_import_objs,
char *&  import_objs 
) [virtual]

Execute reverse of plan on buffer of export objects in a single step (object size may vary).

Implements Epetra_Distributor.

Definition at line 216 of file Epetra_SerialDistributor.cpp.

int Epetra_SerialDistributor::DoPosts ( char *  export_objs,
int  obj_size,
int *&  sizes,
int &  len_import_objs,
char *&  import_objs 
) [virtual]

Post buffer of export objects (can do other local work before executing Waits).

Implements Epetra_Distributor.

Definition at line 234 of file Epetra_SerialDistributor.cpp.

int Epetra_SerialDistributor::DoReversePosts ( char *  export_objs,
int  obj_size,
int *&  sizes,
int &  len_import_objs,
char *&  import_objs 
) [virtual]

Do reverse post of buffer of export objects (can do other local work before executing Waits).

Implements Epetra_Distributor.

Definition at line 253 of file Epetra_SerialDistributor.cpp.

void Epetra_SerialDistributor::Print ( ostream &  os  )  const [virtual]

Implements Epetra_Distributor.

Definition at line 269 of file Epetra_SerialDistributor.cpp.


Member Data Documentation

Definition at line 130 of file Epetra_SerialDistributor.h.

Definition at line 131 of file Epetra_SerialDistributor.h.


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

Generated on Wed Jul 22 13:22:01 2009 for Epetra Package Browser (Single Doxygen Collection) by doxygen 1.5.8