Main Page | Namespace List | Class Hierarchy | Alphabetical List | Compound List | File List | Compound Members | File Members

clMPIComm Class Reference

MPI communication. More...

#include <Cluster.hh>

List of all members.

Public Member Functions

 clMPIComm ()
 clMPIComm (int)
 ~clMPIComm ()
void SetTag (int)
 Set message tag.

bool Send (int, char *, int)
 Send message.

bool Send (int, unsigned char *, int)
bool Send (int, short *, int)
bool Send (int, unsigned short *, int)
bool Send (int, int *, int)
bool Send (int, unsigned int *, int)
bool Send (int, long *, int)
bool Send (int, unsigned long *, int)
bool Send (int, float *, int)
bool Send (int, double *, int)
bool Send (int, long double *, int)
bool Send (int, void *, int)
bool Probe (int)
 Synchronize message and return info (with our tag or wildcard).

bool ProbeAny (int)
bool ProbeNB (int)
bool ProbeAnyNB (int)
bool Recv (int, char *, int)
 Receive message.

bool Recv (int, unsigned char *, int)
bool Recv (int, short *, int)
bool Recv (int, unsigned short *, int)
bool Recv (int, int *, int)
bool Recv (int, unsigned int *, int)
bool Recv (int, long *, int)
bool Recv (int, unsigned long *, int)
bool Recv (int, float *, int)
bool Recv (int, double *, int)
bool Recv (int, long double *, int)
bool Recv (int, void *, int)
bool RecvAny (int, char *, int)
 Receive message with any tag.

bool RecvAny (int, unsigned char *, int)
bool RecvAny (int, short *, int)
bool RecvAny (int, unsigned short *, int)
bool RecvAny (int, int *, int)
bool RecvAny (int, unsigned int *, int)
bool RecvAny (int, long *, int)
bool RecvAny (int, unsigned long *, int)
bool RecvAny (int, float *, int)
bool RecvAny (int, double *, int)
bool RecvAny (int, long double *, int)
bool RecvAny (int, void *, int)
bool GetCount (const std::type_info &, int *)
 Get length of last received message (number of elements).

int GetSenderRank ()
 Get rank of sender of last received message.

int GetSenderTag ()
 Get tag of last received message.

int GetError ()
 Get MPI returned error code.

int GetError2 ()
 Get MPI error value from status.


Private Attributes

int iTag
int iError
MPI_Status sStatus


Detailed Description

MPI communication.

Definition at line 82 of file Cluster.hh.


Constructor & Destructor Documentation

clMPIComm::clMPIComm  ) 
 

Definition at line 81 of file Cluster.cc.

References iError, and iTag.

clMPIComm::clMPIComm int   ) 
 

Definition at line 88 of file Cluster.cc.

References iError, and iTag.

clMPIComm::~clMPIComm  ) 
 

Definition at line 95 of file Cluster.cc.


Member Function Documentation

void clMPIComm::SetTag int   ) 
 

Set message tag.

Parameters:
iTag Tag

Definition at line 100 of file Cluster.cc.

References iTag.

Referenced by clLocate::clLocate(), and clSubLocate::clSubLocate().

bool clMPIComm::Send int  ,
char *  ,
int 
 

Send message.

Parameters:
iDest Receiver rank
Data Message buffer
iCount Item count
Returns:
Success

Definition at line 106 of file Cluster.cc.

References iError, and iTag.

Referenced by clSubLocate::Main(), clLocate::SendParams(), and clLocate::Stop().

bool clMPIComm::Send int  ,
unsigned char *  ,
int 
 

This is an overloaded member function, provided for convenience. It differs from the above function only in what argument(s) it accepts.

Definition at line 115 of file Cluster.cc.

References iError, and iTag.

bool clMPIComm::Send int  ,
short *  ,
int 
 

This is an overloaded member function, provided for convenience. It differs from the above function only in what argument(s) it accepts.

Definition at line 124 of file Cluster.cc.

References iError, and iTag.

bool clMPIComm::Send int  ,
unsigned short *  ,
int 
 

This is an overloaded member function, provided for convenience. It differs from the above function only in what argument(s) it accepts.

Definition at line 133 of file Cluster.cc.

References iError, and iTag.

bool clMPIComm::Send int  ,
int *  ,
int 
 

This is an overloaded member function, provided for convenience. It differs from the above function only in what argument(s) it accepts.

Definition at line 142 of file Cluster.cc.

References iError, and iTag.

bool clMPIComm::Send int  ,
unsigned int *  ,
int 
 

This is an overloaded member function, provided for convenience. It differs from the above function only in what argument(s) it accepts.

Definition at line 151 of file Cluster.cc.

References iError, and iTag.

bool clMPIComm::Send int  ,
long *  ,
int 
 

This is an overloaded member function, provided for convenience. It differs from the above function only in what argument(s) it accepts.

Definition at line 160 of file Cluster.cc.

References iError, and iTag.

bool clMPIComm::Send int  ,
unsigned long *  ,
int 
 

This is an overloaded member function, provided for convenience. It differs from the above function only in what argument(s) it accepts.

Definition at line 169 of file Cluster.cc.

References iError, and iTag.

bool clMPIComm::Send int  ,
float *  ,
int 
 

This is an overloaded member function, provided for convenience. It differs from the above function only in what argument(s) it accepts.

Definition at line 178 of file Cluster.cc.

References iError, and iTag.

bool clMPIComm::Send int  ,
double *  ,
int 
 

This is an overloaded member function, provided for convenience. It differs from the above function only in what argument(s) it accepts.

Definition at line 187 of file Cluster.cc.

References iError, and iTag.

bool clMPIComm::Send int  ,
long double *  ,
int 
 

This is an overloaded member function, provided for convenience. It differs from the above function only in what argument(s) it accepts.

Definition at line 196 of file Cluster.cc.

References iError, and iTag.

bool clMPIComm::Send int  ,
void *  ,
int 
 

This is an overloaded member function, provided for convenience. It differs from the above function only in what argument(s) it accepts.

Definition at line 205 of file Cluster.cc.

References iError, and iTag.

bool clMPIComm::Probe int   ) 
 

Synchronize message and return info (with our tag or wildcard).

Check/wait for message.

Parameters:
iSrc Source rank
Returns:
Status

Definition at line 214 of file Cluster.cc.

References iError, iTag, and sStatus.

bool clMPIComm::ProbeAny int   ) 
 

This is an overloaded member function, provided for convenience. It differs from the above function only in what argument(s) it accepts.

Definition at line 222 of file Cluster.cc.

References iError, and sStatus.

Referenced by clSubLocate::RecvParams().

bool clMPIComm::ProbeNB int   ) 
 

This is an overloaded member function, provided for convenience. It differs from the above function only in what argument(s) it accepts.

Definition at line 230 of file Cluster.cc.

References iError, iTag, and sStatus.

Referenced by clSubLocate::Main().

bool clMPIComm::ProbeAnyNB int   ) 
 

This is an overloaded member function, provided for convenience. It differs from the above function only in what argument(s) it accepts.

Definition at line 241 of file Cluster.cc.

References iError, and sStatus.

bool clMPIComm::Recv int  ,
char *  ,
int 
 

Receive message.

Parameters:
iSrc Source rank
Data Message buffer
iCount Buffer size in items
Returns:
Success

Definition at line 252 of file Cluster.cc.

References iError, iTag, and sStatus.

Referenced by clSubLocate::Main(), clLocate::ProcessThread(), and clSubLocate::RecvParams().

bool clMPIComm::Recv int  ,
unsigned char *  ,
int 
 

This is an overloaded member function, provided for convenience. It differs from the above function only in what argument(s) it accepts.

Definition at line 261 of file Cluster.cc.

References iError, iTag, and sStatus.

bool clMPIComm::Recv int  ,
short *  ,
int 
 

This is an overloaded member function, provided for convenience. It differs from the above function only in what argument(s) it accepts.

Definition at line 270 of file Cluster.cc.

References iError, iTag, and sStatus.

bool clMPIComm::Recv int  ,
unsigned short *  ,
int 
 

This is an overloaded member function, provided for convenience. It differs from the above function only in what argument(s) it accepts.

Definition at line 279 of file Cluster.cc.

References iError, iTag, and sStatus.

bool clMPIComm::Recv int  ,
int *  ,
int 
 

This is an overloaded member function, provided for convenience. It differs from the above function only in what argument(s) it accepts.

Definition at line 288 of file Cluster.cc.

References iError, iTag, and sStatus.

bool clMPIComm::Recv int  ,
unsigned int *  ,
int 
 

This is an overloaded member function, provided for convenience. It differs from the above function only in what argument(s) it accepts.

Definition at line 297 of file Cluster.cc.

References iError, iTag, and sStatus.

bool clMPIComm::Recv int  ,
long *  ,
int 
 

This is an overloaded member function, provided for convenience. It differs from the above function only in what argument(s) it accepts.

Definition at line 306 of file Cluster.cc.

References iError, iTag, and sStatus.

bool clMPIComm::Recv int  ,
unsigned long *  ,
int 
 

This is an overloaded member function, provided for convenience. It differs from the above function only in what argument(s) it accepts.

Definition at line 315 of file Cluster.cc.

References iError, iTag, and sStatus.

bool clMPIComm::Recv int  ,
float *  ,
int 
 

This is an overloaded member function, provided for convenience. It differs from the above function only in what argument(s) it accepts.

Definition at line 324 of file Cluster.cc.

References iError, iTag, and sStatus.

bool clMPIComm::Recv int  ,
double *  ,
int 
 

This is an overloaded member function, provided for convenience. It differs from the above function only in what argument(s) it accepts.

Definition at line 333 of file Cluster.cc.

References iError, iTag, and sStatus.

bool clMPIComm::Recv int  ,
long double *  ,
int 
 

This is an overloaded member function, provided for convenience. It differs from the above function only in what argument(s) it accepts.

Definition at line 342 of file Cluster.cc.

References iError, iTag, and sStatus.

bool clMPIComm::Recv int  ,
void *  ,
int 
 

This is an overloaded member function, provided for convenience. It differs from the above function only in what argument(s) it accepts.

Definition at line 351 of file Cluster.cc.

References iError, iTag, and sStatus.

bool clMPIComm::RecvAny int  ,
char *  ,
int 
 

Receive message with any tag.

Parameters:
iSrc Sender rank
Data Message buffer
iCount Size of message buffer in items

Definition at line 360 of file Cluster.cc.

References iError, and sStatus.

bool clMPIComm::RecvAny int  ,
unsigned char *  ,
int 
 

This is an overloaded member function, provided for convenience. It differs from the above function only in what argument(s) it accepts.

Definition at line 369 of file Cluster.cc.

References iError, and sStatus.

bool clMPIComm::RecvAny int  ,
short *  ,
int 
 

This is an overloaded member function, provided for convenience. It differs from the above function only in what argument(s) it accepts.

Definition at line 378 of file Cluster.cc.

References iError, and sStatus.

bool clMPIComm::RecvAny int  ,
unsigned short *  ,
int 
 

This is an overloaded member function, provided for convenience. It differs from the above function only in what argument(s) it accepts.

Definition at line 387 of file Cluster.cc.

References iError, and sStatus.

bool clMPIComm::RecvAny int  ,
int *  ,
int 
 

This is an overloaded member function, provided for convenience. It differs from the above function only in what argument(s) it accepts.

Definition at line 396 of file Cluster.cc.

References iError, and sStatus.

bool clMPIComm::RecvAny int  ,
unsigned int *  ,
int 
 

This is an overloaded member function, provided for convenience. It differs from the above function only in what argument(s) it accepts.

Definition at line 405 of file Cluster.cc.

References iError, and sStatus.

bool clMPIComm::RecvAny int  ,
long *  ,
int 
 

This is an overloaded member function, provided for convenience. It differs from the above function only in what argument(s) it accepts.

Definition at line 414 of file Cluster.cc.

References iError, and sStatus.

bool clMPIComm::RecvAny int  ,
unsigned long *  ,
int 
 

This is an overloaded member function, provided for convenience. It differs from the above function only in what argument(s) it accepts.

Definition at line 423 of file Cluster.cc.

References iError, and sStatus.

bool clMPIComm::RecvAny int  ,
float *  ,
int 
 

This is an overloaded member function, provided for convenience. It differs from the above function only in what argument(s) it accepts.

Definition at line 432 of file Cluster.cc.

References iError, and sStatus.

bool clMPIComm::RecvAny int  ,
double *  ,
int 
 

This is an overloaded member function, provided for convenience. It differs from the above function only in what argument(s) it accepts.

Definition at line 441 of file Cluster.cc.

References iError, and sStatus.

bool clMPIComm::RecvAny int  ,
long double *  ,
int 
 

This is an overloaded member function, provided for convenience. It differs from the above function only in what argument(s) it accepts.

Definition at line 450 of file Cluster.cc.

References iError, and sStatus.

bool clMPIComm::RecvAny int  ,
void *  ,
int 
 

This is an overloaded member function, provided for convenience. It differs from the above function only in what argument(s) it accepts.

Definition at line 459 of file Cluster.cc.

References iError, and sStatus.

bool clMPIComm::GetCount const std::type_info &  ,
int * 
 

Get length of last received message (number of elements).

Note:
This is not to be used extensively. This uses RTTI, so it could be very slow.
Parameters:
TypeInfo Type information
ipCount Number of elements
Returns:
Success

Definition at line 468 of file Cluster.cc.

References iError, and sStatus.

int clMPIComm::GetSenderRank  )  [inline]
 

Get rank of sender of last received message.

Returns:
Sender rank

Definition at line 220 of file Cluster.hh.

References sStatus.

int clMPIComm::GetSenderTag  )  [inline]
 

Get tag of last received message.

Returns:
Last received tag

Definition at line 226 of file Cluster.hh.

References sStatus.

Referenced by clSubLocate::RecvParams().

int clMPIComm::GetError  )  [inline]
 

Get MPI returned error code.

Returns:
Error code

Definition at line 232 of file Cluster.hh.

References iError.

int clMPIComm::GetError2  )  [inline]
 

Get MPI error value from status.

Returns:
Error code

Definition at line 238 of file Cluster.hh.

References sStatus.


Member Data Documentation

int clMPIComm::iTag [private]
 

Definition at line 84 of file Cluster.hh.

Referenced by clMPIComm(), Probe(), ProbeNB(), Recv(), Send(), and SetTag().

int clMPIComm::iError [private]
 

Definition at line 85 of file Cluster.hh.

Referenced by clMPIComm(), GetCount(), GetError(), Probe(), ProbeAny(), ProbeAnyNB(), ProbeNB(), Recv(), RecvAny(), and Send().

MPI_Status clMPIComm::sStatus [private]
 

Definition at line 86 of file Cluster.hh.

Referenced by GetCount(), GetError2(), GetSenderRank(), GetSenderTag(), Probe(), ProbeAny(), ProbeAnyNB(), ProbeNB(), Recv(), and RecvAny().


The documentation for this class was generated from the following files:
Generated on Sun Oct 26 19:12:22 2003 for HASAS by doxygen 1.3.3