MPIAllToAllCommunicatorFactory.h

Go to the documentation of this file.
00001 #ifndef MPIALLTOALLCOMMUNICATORFACTORY_H_
00002 #define MPIALLTOALLCOMMUNICATORFACTORY_H_
00003 
00004 #include <string>
00005 
00006 #include "MPIDefaultAllToAllCommunicator.h"
00007 #include "MPISynchroShuffleAllToAllComm.h"
00008 #include "MPIInputSpikeBuffer.h"
00009 #include "MPIOutputSpikeBuffer.h"
00010 
00011 using std::string;
00012 
00013 
00015 class MPIAllToAllCommunicatorFactory
00016 {
00017 public:
00019     typedef enum { Default, SynchronuousShuffle } CommunicatorType;
00020 
00022 
00025     MPIAllToAllCommunicatorFactory(MPIAllToAllCommunicatorFactory::CommunicatorType commType);
00026 
00027     virtual ~MPIAllToAllCommunicatorFactory();
00028 
00030     MPIAllToAllCommunicator * getCommunicator(
00031         MPIInputBufferVector & mpiInputBuffers,
00032         MPIOutputBufferVector & mpiOutputBuffers,
00033         MPI::Intracomm & comm,
00034         vector<bool> &incomingConnections,
00035         vector<bool> &outgoingConnections);
00036 
00037 protected:
00038 
00040     CommunicatorType communicator_type;
00041 
00042 };
00043 
00044 #endif /*MPIALLTOALLCOMMUNICATORFACTORY_H_*/

Generated on Wed Jul 9 16:34:37 2008 for PCSIM by  doxygen 1.5.5