Logo AND Algorithmique Numérique Distribuée

Public GIT Repository
support MPI_CXX types.
[simgrid.git] / src / smpi / mpi / smpi_datatype.cpp
index fbadce3..860257b 100644 (file)
@@ -15,6 +15,7 @@
 #include <array>
 #include <functional>
 #include <string>
+#include <complex>
 
 XBT_LOG_NEW_DEFAULT_SUBCATEGORY(smpi_datatype, smpi, "Logging specific to SMPI (datatype)");
 
@@ -90,13 +91,17 @@ CREATE_MPI_DATATYPE(INTEGER8, 48, int64_t)
 CREATE_MPI_DATATYPE(INTEGER16, 49, integer128_t)
 
 CREATE_MPI_DATATYPE(LONG_DOUBLE_INT, 50, long_double_int)
-
-CREATE_MPI_DATATYPE_NULL(UB, 51)
-CREATE_MPI_DATATYPE_NULL(LB, 52)
-CREATE_MPI_DATATYPE(PACKED, 53, char)
+CREATE_MPI_DATATYPE(CXX_BOOL, 51, bool)
+CREATE_MPI_DATATYPE(CXX_FLOAT_COMPLEX, 52, std::complex<float>)
+CREATE_MPI_DATATYPE(CXX_DOUBLE_COMPLEX, 53, std::complex<double>)
+CREATE_MPI_DATATYPE(CXX_LONG_DOUBLE_COMPLEX, 54, std::complex<long double>)
+
+CREATE_MPI_DATATYPE_NULL(UB, 55)
+CREATE_MPI_DATATYPE_NULL(LB, 56)
+CREATE_MPI_DATATYPE(PACKED, 57, char)
 // Internal use only
-CREATE_MPI_DATATYPE(PTR, 54, void*)
-CREATE_MPI_DATATYPE(COUNT, 55, long long)
+CREATE_MPI_DATATYPE(PTR, 58, void*)
+CREATE_MPI_DATATYPE(COUNT, 59, long long)
 MPI_Datatype MPI_PTR = &smpi_MPI_PTR;