CCAFFEINE
0.8.8
|
00001 #ifdef _CCAMPI 00002 #ifndef DefaultMPIBorrow_h_seen 00003 #define DefaultMPIBorrow_h_seen 00004 #include "util/noSeekMPI.h" 00005 #include <mpi.h> 00006 #include "dc/export/config.hh" 00007 class DefaultMPIBorrow 00008 #if (defined(HAVE_NEO) || defined(HAVE_CLASSIC)) 00009 : 00010 #endif 00011 #ifdef HAVE_CLASSIC 00012 public virtual classic::gov::cca::MPIBorrow 00013 #endif // HAVE_CLASSIC 00014 #ifdef HAVE_NEO 00015 00016 #ifdef HAVE_CLASSIC 00017 , // need a , only if classic preceding 00018 #endif // HAVE_CLASSIC 00019 public virtual neo::cca::Port 00020 , public virtual neo::cca::ports::MPIBorrow 00021 #endif // HAVE_NEO 00022 00023 { 00024 00025 private: 00026 00028 int maxTag; 00029 00031 int maxKey; 00032 00033 // ur-communicator 00034 int64_t fortranMPIComm; 00035 public: 00036 00040 DefaultMPIBorrow(int64_t fComm); 00041 00042 virtual ~DefaultMPIBorrow(); 00043 00048 virtual MPI_Comm borrowComm(int, int*, int&); 00049 00051 virtual void returnComm(MPI_Comm, int, int*, int); 00052 00053 }; 00054 #endif //DefaultMPIBorrow_h_seen 00055 #endif // _CCAMPI