34 #ifndef mpi_datatype_hpp 35 #define mpi_datatype_hpp 40 #define SCHWZ_MPI_DATATYPE(BaseType, MPIType) \ 41 inline MPI_Datatype get_mpi_datatype(const BaseType &) { return MPIType; } \ 43 "This assert is used to counter the false positive extra " \ 44 "semi-colon warnings") 47 SCHWZ_MPI_DATATYPE(
char, MPI_CHAR);
48 SCHWZ_MPI_DATATYPE(
unsigned char, MPI_UNSIGNED_CHAR);
49 SCHWZ_MPI_DATATYPE(
unsigned, MPI_UNSIGNED);
50 SCHWZ_MPI_DATATYPE(
int, MPI_INT);
51 SCHWZ_MPI_DATATYPE(
unsigned long, MPI_UNSIGNED_LONG);
52 SCHWZ_MPI_DATATYPE(
unsigned short, MPI_UNSIGNED_SHORT);
53 SCHWZ_MPI_DATATYPE(
long, MPI_LONG);
54 SCHWZ_MPI_DATATYPE(
float, MPI_FLOAT);
55 SCHWZ_MPI_DATATYPE(
double, MPI_DOUBLE);
56 SCHWZ_MPI_DATATYPE(
long double, MPI_LONG_DOUBLE);
57 SCHWZ_MPI_DATATYPE(std::complex<float>, MPI_COMPLEX);
58 SCHWZ_MPI_DATATYPE(std::complex<double>, MPI_DOUBLE_COMPLEX);
65 #endif // mpi_datatype.hpp The Schwarz wrappers namespace.
Definition: comm_helpers.hpp:49