Teuchos::MpiComm< Ordinal > Class Template Reference

Concrete communicator subclass based on MPI. More...

#include <Teuchos_DefaultMpiComm.hpp>

Inheritance diagram for Teuchos::MpiComm< Ordinal >:

Teuchos::Comm< Ordinal > Teuchos::Describable Teuchos::LabeledObject List of all members.

Public Member Functions

Constructors
 MpiComm (const RCP< const OpaqueWrapper< MPI_Comm > > &rawMpiComm)
 Construct given a wrapped MPI_Comm oqaque object.
RCP< const OpaqueWrapper<
MPI_Comm > > 
getRawMpiComm () const
 Return the embedded wrapped opaque MPI_Comm object.
Overridden from Comm
int getRank () const
 
int getSize () const
 
void barrier () const
 
void broadcast (const int rootRank, const Ordinal bytes, char buffer[]) const
 
void gatherAll (const Ordinal sendBytes, const char sendBuffer[], const Ordinal recvBytes, char recvBuffer[]) const
 
void reduceAll (const ValueTypeReductionOp< Ordinal, char > &reductOp, const Ordinal bytes, const char sendBuffer[], char globalReducts[]) const
 
void reduceAllAndScatter (const ValueTypeReductionOp< Ordinal, char > &reductOp, const Ordinal sendBytes, const char sendBuffer[], const Ordinal recvCounts[], const Ordinal blockSize, char myGlobalReducts[]) const
 
void scan (const ValueTypeReductionOp< Ordinal, char > &reductOp, const Ordinal bytes, const char sendBuffer[], char scanReducts[]) const
 
void send (const Ordinal bytes, const char sendBuffer[], const int destRank) const
 
int receive (const int sourceRank, const Ordinal bytes, char recvBuffer[]) const
 
Overridden from Describable
std::string description () const
 

Related Functions

(Note that these are not member functions.)

RCP< MpiComm< Ordinal > > createMpiComm (const RCP< const OpaqueWrapper< MPI_Comm > > &rawMpiComm)
 Helper function that creates a dynamically allocated MpiComm object or returns Teuchos::null to correctly represent a null communicator.

Detailed Description

template<typename Ordinal>
class Teuchos::MpiComm< Ordinal >

Concrete communicator subclass based on MPI.

Assertions:

ToDo: Finish documentation!

Definition at line 81 of file Teuchos_DefaultMpiComm.hpp.


Constructor & Destructor Documentation

template<typename Ordinal>
Teuchos::MpiComm< Ordinal >::MpiComm ( const RCP< const OpaqueWrapper< MPI_Comm > > &  rawMpiComm  ) 

Construct given a wrapped MPI_Comm oqaque object.

Preconditions:

Definition at line 207 of file Teuchos_DefaultMpiComm.hpp.


Member Function Documentation

template<typename Ordinal>
RCP<const OpaqueWrapper<MPI_Comm> > Teuchos::MpiComm< Ordinal >::getRawMpiComm (  )  const [inline]

Return the embedded wrapped opaque MPI_Comm object.

Definition at line 98 of file Teuchos_DefaultMpiComm.hpp.

template<typename Ordinal>
int Teuchos::MpiComm< Ordinal >::getRank (  )  const [virtual]

Implements Teuchos::Comm< Ordinal >.

Definition at line 224 of file Teuchos_DefaultMpiComm.hpp.

template<typename Ordinal>
int Teuchos::MpiComm< Ordinal >::getSize (  )  const [virtual]

Implements Teuchos::Comm< Ordinal >.

Definition at line 230 of file Teuchos_DefaultMpiComm.hpp.

template<typename Ordinal>
void Teuchos::MpiComm< Ordinal >::barrier (  )  const [virtual]

Implements Teuchos::Comm< Ordinal >.

Definition at line 236 of file Teuchos_DefaultMpiComm.hpp.

template<typename Ordinal>
void Teuchos::MpiComm< Ordinal >::broadcast ( const int  rootRank,
const Ordinal  bytes,
char  buffer[] 
) const [virtual]

Implements Teuchos::Comm< Ordinal >.

Definition at line 245 of file Teuchos_DefaultMpiComm.hpp.

template<typename Ordinal>
void Teuchos::MpiComm< Ordinal >::gatherAll ( const Ordinal  sendBytes,
const char  sendBuffer[],
const Ordinal  recvBytes,
char  recvBuffer[] 
) const [virtual]

Implements Teuchos::Comm< Ordinal >.

Definition at line 256 of file Teuchos_DefaultMpiComm.hpp.

template<typename Ordinal>
void Teuchos::MpiComm< Ordinal >::reduceAll ( const ValueTypeReductionOp< Ordinal, char > &  reductOp,
const Ordinal  bytes,
const char  sendBuffer[],
char  globalReducts[] 
) const [virtual]

Implements Teuchos::Comm< Ordinal >.

Definition at line 273 of file Teuchos_DefaultMpiComm.hpp.

template<typename Ordinal>
void Teuchos::MpiComm< Ordinal >::reduceAllAndScatter ( const ValueTypeReductionOp< Ordinal, char > &  reductOp,
const Ordinal  sendBytes,
const char  sendBuffer[],
const Ordinal  recvCounts[],
const Ordinal  blockSize,
char  myGlobalReducts[] 
) const [virtual]

Implements Teuchos::Comm< Ordinal >.

Definition at line 289 of file Teuchos_DefaultMpiComm.hpp.

template<typename Ordinal>
void Teuchos::MpiComm< Ordinal >::scan ( const ValueTypeReductionOp< Ordinal, char > &  reductOp,
const Ordinal  bytes,
const char  sendBuffer[],
char  scanReducts[] 
) const [virtual]

Implements Teuchos::Comm< Ordinal >.

Definition at line 337 of file Teuchos_DefaultMpiComm.hpp.

template<typename Ordinal>
void Teuchos::MpiComm< Ordinal >::send ( const Ordinal  bytes,
const char  sendBuffer[],
const int  destRank 
) const [virtual]

Implements Teuchos::Comm< Ordinal >.

Definition at line 353 of file Teuchos_DefaultMpiComm.hpp.

template<typename Ordinal>
int Teuchos::MpiComm< Ordinal >::receive ( const int  sourceRank,
const Ordinal  bytes,
char  recvBuffer[] 
) const [virtual]

Implements Teuchos::Comm< Ordinal >.

Definition at line 382 of file Teuchos_DefaultMpiComm.hpp.

template<typename Ordinal>
std::string Teuchos::MpiComm< Ordinal >::description (  )  const [virtual]

Reimplemented from Teuchos::Describable.

Definition at line 418 of file Teuchos_DefaultMpiComm.hpp.


Friends And Related Function Documentation

template<typename Ordinal>
RCP< MpiComm< Ordinal > > createMpiComm ( const RCP< const OpaqueWrapper< MPI_Comm > > &  rawMpiComm  )  [related]

Helper function that creates a dynamically allocated MpiComm object or returns Teuchos::null to correctly represent a null communicator.

Postconditions: [rawMpiComm.get()!=NULL && *rawMpiComm!=MPI_COMM_NULL] return.get()!=NULL [rawMpiComm.get()==NULL || *rawMpiComm==MPI_COMM_NULL] return.get()==NULL

Definition at line 440 of file Teuchos_DefaultMpiComm.hpp.


The documentation for this class was generated from the following file:
Generated on Tue Oct 20 12:45:27 2009 for Teuchos - Trilinos Tools Package by doxygen 1.4.7