queso-0.57.1
 All Classes Namespaces Files Functions Variables Typedefs Enumerations Enumerator Friends Pages
QUESO::DataType Class Reference

#include <MpiComm.h>

Inheritance diagram for QUESO::DataType:
QUESO::StandardType< T >

Public Member Functions

 DataType ()
 
 DataType (const DataType &other)
 
 DataType (const RawType_MPI_Datatype &type)
 
 DataType (const DataType &other, unsigned int count)
 
 DataType (const DataType &, unsigned int)
 
DataTypeoperator= (const DataType &other)
 
DataTypeoperator= (const RawType_MPI_Datatype &type)
 
 operator const RawType_MPI_Datatype & () const
 
 operator RawType_MPI_Datatype & ()
 
void commit ()
 
void free ()
 

Protected Attributes

RawType_MPI_Datatype _datatype
 

Detailed Description

Encapsulates the MPI_Datatype. Taken from libmesh.

Definition at line 77 of file MpiComm.h.

Constructor & Destructor Documentation

QUESO::DataType::DataType ( )
inline

Definition at line 80 of file MpiComm.h.

80 : _datatype() {}
RawType_MPI_Datatype _datatype
Definition: MpiComm.h:131
QUESO::DataType::DataType ( const DataType other)
inline

Definition at line 82 of file MpiComm.h.

82  :
83  _datatype(other._datatype)
84  {}
RawType_MPI_Datatype _datatype
Definition: MpiComm.h:131
QUESO::DataType::DataType ( const RawType_MPI_Datatype type)
inline

Definition at line 86 of file MpiComm.h.

86  :
87  _datatype(type)
88  {}
RawType_MPI_Datatype _datatype
Definition: MpiComm.h:131
QUESO::DataType::DataType ( const DataType other,
unsigned int  count 
)
inline

Definition at line 91 of file MpiComm.h.

References _datatype, and commit().

92  {
93  // FIXME - if we nest an inner type here will we run into bug
94  // https://github.com/libMesh/libmesh/issues/631 again?
95  MPI_Type_contiguous(count, other._datatype, &_datatype);
96  this->commit();
97  }
void commit()
Definition: MpiComm.h:116
RawType_MPI_Datatype _datatype
Definition: MpiComm.h:131
QUESO::DataType::DataType ( const DataType ,
unsigned  int 
)
inline

Definition at line 99 of file MpiComm.h.

100  {
101  }

Member Function Documentation

void QUESO::DataType::commit ( )
inline

Definition at line 116 of file MpiComm.h.

References _datatype.

Referenced by DataType().

117  {
118 #ifdef QUESO_HAS_MPI
119  MPI_Type_commit (&_datatype);
120 #endif
121  }
RawType_MPI_Datatype _datatype
Definition: MpiComm.h:131
void QUESO::DataType::free ( )
inline

Definition at line 123 of file MpiComm.h.

References _datatype.

124  {
125 #ifdef QUESO_HAS_MPI
126  MPI_Type_free (&_datatype);
127 #endif
128  }
RawType_MPI_Datatype _datatype
Definition: MpiComm.h:131
QUESO::DataType::operator const RawType_MPI_Datatype & ( ) const
inline

Definition at line 110 of file MpiComm.h.

References _datatype.

111  { return _datatype; }
RawType_MPI_Datatype _datatype
Definition: MpiComm.h:131
QUESO::DataType::operator RawType_MPI_Datatype & ( )
inline

Definition at line 113 of file MpiComm.h.

References _datatype.

114  { return _datatype; }
RawType_MPI_Datatype _datatype
Definition: MpiComm.h:131
DataType& QUESO::DataType::operator= ( const DataType other)
inline

Definition at line 104 of file MpiComm.h.

References _datatype.

105  { _datatype = other._datatype; return *this; }
RawType_MPI_Datatype _datatype
Definition: MpiComm.h:131
DataType& QUESO::DataType::operator= ( const RawType_MPI_Datatype type)
inline

Definition at line 107 of file MpiComm.h.

References _datatype.

108  { _datatype = type; return *this; }
RawType_MPI_Datatype _datatype
Definition: MpiComm.h:131

Member Data Documentation

RawType_MPI_Datatype QUESO::DataType::_datatype
protected

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

Generated on Tue Jun 5 2018 19:49:10 for queso-0.57.1 by  doxygen 1.8.5