These are required constants, defined in the file mpi.h. For brevity, the types of the constants are defined below are defined in the comments.
// return codes // Type: const int (or unnamed enum) MPI::SUCCESS MPI::ERR_BUFFER MPI::ERR_COUNT MPI::ERR_TYPE MPI::ERR_TAG MPI::ERR_COMM MPI::ERR_RANK MPI::ERR_REQUEST MPI::ERR_ROOT MPI::ERR_GROUP MPI::ERR_OP MPI::ERR_TOPOLOGY MPI::ERR_DIMS MPI::ERR_ARG MPI::ERR_UNKNOWN MPI::ERR_TRUNCATE MPI::ERR_OTHER MPI::ERR_INTERN MPI::ERR_PENDING MPI::ERR_IN_STATUS MPI::ERR_LASTCODE // assorted constants // Type: const void * MPI::BOTTOM // Type: const int (or unnamed enum) MPI::PROC_NULL MPI::ANY_SOURCE MPI::ANY_TAG MPI::UNDEFINED MPI::BSEND_OVERHEAD MPI::KEYVAL_INVALID // Error-handling specifiers // Type: MPI::Errhandler (see below) MPI::ERRORS_ARE_FATAL MPI::ERRORS_RETURN MPI::ERRORS_THROW_EXCEPTIONS // Maximum sizes for strings // Type: const int MPI::MAX_PROCESSOR_NAME MPI::MAX_ERROR_STRING // elementary datatypes (C / C++) // Type: const MPI::Datatype MPI::CHAR MPI::SHORT MPI::INT MPI::LONG MPI::SIGNED_CHAR MPI::UNSIGNED_CHAR MPI::UNSIGNED_SHORT MPI::UNSIGNED MPI::UNSIGNED_LONG MPI::FLOAT MPI::DOUBLE MPI::LONG_DOUBLE MPI::BYTE MPI::PACKED // elementary datatypes (Fortran) // Type: const MPI::Datatype MPI::INTEGER MPI::REAL MPI::DOUBLE_PRECISION MPI::F_COMPLEX MPI::F_DOUBLE_COMPLEX MPI::LOGICAL MPI::CHARACTER // datatypes for reduction functions (C / C++) // Type: const MPI::Datatype MPI::FLOAT_INT MPI::DOUBLE_INT MPI::LONG_INT MPI::TWOINT MPI::SHORT_INT MPI::LONG_DOUBLE_INT // datatype for reduction functions (Fortran) // Type const MPI::Datatype MPI::TWOREAL MPI::TWODOUBLE_PRECISION MPI::TWOINTEGER // optional datatypes (Fortran) // Type: const MPI::Datatype MPI::INTEGER1 MPI::INTEGER2 MPI::INTEGER4 MPI::REAL2 MPI::REAL4 MPI::REAL8 // optional datatypes (C / C++) // Type: const MPI::Datatype
MPI::LONG_LONG MPI::UNSIGNED_LONG_LONG
// special datatypes for construction derived datatypes // Type: const MPI::Datatype MPI::UB MPI::LB // C++ datatypes // Type: const MPI::Datatype MPI::BOOL MPI::COMPLEX MPI::DOUBLE_COMPLEX MPI::LONG_DOUBLE_COMPLEX // reserved communicators // Type: MPI::Intracomm MPI::COMM_WORLD MPI::COMM_SELF // results of communicator and group comparisons // Type: const int (or unnamed enum) MPI::IDENT MPI::CONGRUENT MPI::SIMILAR MPI::UNEQUAL // environmental inquiry keys // Type: const int (or unnamed enum) MPI::TAG_UB MPI::IO MPI::HOST MPI::WTIME_IS_GLOBAL // collective operations // Type: const MPI::Op MPI::MAX MPI::MIN MPI::SUM MPI::PROD MPI::MAXLOC MPI::MINLOC MPI::BAND MPI::BOR MPI::BXOR MPI::LAND MPI::LOR MPI::LXOR // Null handles // Type: const MPI::Group MPI::GROUP_NULL// Type: See Section Communicators regarding the MPI::Comm class hierarchy and
MPI::COMM_NULL // Type: const MPI::Datatype MPI::DATATYPE_NULL // Type: const MPI::Request MPI::REQUEST_NULL // Type: const MPI::Op MPI::OP_NULL // Type: MPI::Errhandler MPI::ERRHANDLER_NULL // Empty group // Type: const MPI::Group MPI::GROUP_EMPTY // Topologies // Type: const int (or unnamed enum) MPI::GRAPH MPI::CART // Predefined functions // Type: MPI::Copy_function MPI::NULL_COPY_FN MPI::DUP_FN // Type: MPI::Delete_function MPI::NULL_DELETE_FN