Epetra  Development
 All Classes Namespaces Files Functions Variables Enumerations Enumerator Pages
Public Member Functions | List of all members
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]
Collaboration diagram for Epetra_SerialDistributor:
Collaboration graph
[legend]

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. More...
 
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. More...
 
int CreateFromRecvs (const int &NumRemoteIDs, const long long *RemoteGIDs, const int *RemotePIDs, bool Deterministic, int &NumExportIDs, long long *&ExportGIDs, int *&ExportPIDs)
 
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 (std::ostream &os) const
 
Constructor/Destructor
 Epetra_SerialDistributor (const Epetra_SerialComm &Comm)
 Constructor.
 
 Epetra_SerialDistributor (const Epetra_SerialDistributor &Plan)
 Epetra_SerialDistributor Copy Constructor.
 
Epetra_DistributorClone ()
 Clone method.
 
Epetra_DistributorReverseClone ()
 Create and extract the reverse version of the distributor. More...
 
virtual ~Epetra_SerialDistributor ()
 Epetra_Comm Destructor.
 
- Public Member Functions inherited from Epetra_Object
 Epetra_Object (int TracebackModeIn=-1, bool set_label=true)
 Epetra_Object Constructor. More...
 
 Epetra_Object (const char *const Label, int TracebackModeIn=-1)
 Epetra_Object Constructor. More...
 
 Epetra_Object (const Epetra_Object &Object)
 Epetra_Object Copy Constructor. More...
 
virtual ~Epetra_Object ()
 Epetra_Object Destructor. More...
 
virtual int ReportError (const std::string Message, int ErrorCode) const
 Error reporting method.
 
virtual void SetLabel (const char *const Label)
 Epetra_Object Label definition using char *. More...
 
virtual const char * Label () const
 Epetra_Object Label access funtion. More...
 
- Public Member Functions inherited from Epetra_Distributor
virtual ~Epetra_Distributor ()
 Epetra_Distributor Destructor.
 

Additional Inherited Members

- Static Public Member Functions inherited from Epetra_Object
static void SetTracebackMode (int TracebackModeValue)
 Set the value of the Epetra_Object error traceback report mode. More...
 
static int GetTracebackMode ()
 Get the value of the Epetra_Object error report mode.
 
static std::ostream & GetTracebackStream ()
 Get the output stream for error reporting.
 
- Static Public Attributes inherited from Epetra_Object
static int TracebackMode
 
- Protected Member Functions inherited from Epetra_Object
std::string toString (const int &x) const
 
std::string toString (const long long &x) const
 
std::string toString (const double &x) const
 

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.

Member Function Documentation

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
NumRemoteIDsIn Number of IDs this processor will be receiving.
RemoteGIDsIn List of IDs that this processor wants.
RemotePIDsIn List of processors that will send the remote IDs.
DeterministicIn No op.
NumExportIDsOut Number of IDs that need to be sent from this processor.
ExportPIDsOut List of processors that will get the exported IDs.

Implements Epetra_Distributor.

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
NumExportIDsIn Number of IDs that need to be sent from this processor.
ExportPIDsIn List of processors that will get the exported IDs.
DeterministicIn No op.
NumRemoteIDsOut Number of IDs this processor will be receiving.

Implements Epetra_Distributor.

Epetra_Distributor* Epetra_SerialDistributor::ReverseClone ( )
inlinevirtual

Create and extract the reverse version of the distributor.

This is not implemented for SeriaDistributor.

Implements Epetra_Distributor.


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