All MPI-/ classes, constants, and functions are declared within the scope of an MPI namespace. Thus, instead of the MPI_ prefix that is used in C and Fortran, MPI-/ functions essentially have an MPI:: prefix.
The members of the MPI namespace are those classes corresponding to objects implicitly used by MPI-/. An abbreviated definition of the MPI namespace for MPI-/ and its member classes is as follows:
namespace MPI { class Comm {...}; class Intracomm : public Comm {...}; class Graphcomm : public Intracomm {...}; class Cartcomm : public Intracomm {...}; class Intercomm : public Comm {...}; class Datatype {...}; class Errhandler {...}; class Exception {...}; class Group {...}; class Op {...}; class Request {...}; class Prequest : public Request {...}; class Status {...}; };
Additionally, the following classes defined for MPI-//:
namespace MPI { class File {...}; class Grequest : public Request {...}; class Info {...}; class Win {...}; };
Note that there are a small number of derived classes, and that virtual inheritance is not used.
MPI-Standard for MARMOT