MPI_Datatype ParaTraits<Int64>::MPIDataType = MPI_LONG;
- /*! \anchor CommInterface-det
- \class CommInterface
-
- The class \a CommInterface is the gateway to the MPI library.
- It is a wrapper around all MPI calls, thus trying to abstract the rest of the code from using the direct MPI API
- (but this is not strictly respected overall in practice ...). It is used in all
- the \ref parallel "DEC related classes".
-
- It is typically instantiated after the MPI_Init() call in a program and is afterwards passed as a
- parameter to the constructors of various \ref parallel "parallel objects" so that they access the
- MPI library via this common interface.
-
- As an example, the following code excerpt initializes a processor group made of the zero processor.
-
- \verbatim
- #include "CommInterface.hxx"
- #include "ProcessorGroup.hxx"
-
- int main(int argc, char** argv)
- {
- //initialization
- MPI_Init(&argc, &argv);
- MEDCoupling::CommInterface comm_interface;
-
- //setting up a processor group with proc 0
- set<int> procs;
- procs.insert(0);
- MEDCoupling::ProcessorGroup group(procs, comm_interface);
-
- //cleanup
- MPI_Finalize();
- }
- \endverbatim
- */
-
void CommInterface::gatherArrays(MPI_Comm comm, int root, const DataArrayIdType *array, std::vector< MCAuto<DataArrayIdType> >& arraysOut) const
{
this->gatherArraysT2<mcIdType>(comm,root,array,arraysOut);