MPIExchangeBlocksInfo.h

Go to the documentation of this file.
00001 #ifndef MPIExchangeBlocksInfo_H_
00002 #define MPIExchangeBlocksInfo_H_
00003 
00004 #include <mpi.h>
00005 
00006 class MPIMessageSpec
00007 {
00008 public:
00009         int *displacement;
00010         int *count;
00011         MPI::Datatype *datatype;
00012         
00013         void **buffer;
00014         
00015         typedef enum { contentAnalog, contentMixed, contentSpiking} ContentType_t;
00016         
00017         ContentType_t content_type;
00018         
00019         bool hasContent;
00020 
00021 };
00022 
00023 class MPIExchangeBlocksInfo
00024 {
00025 public:
00026         MPIExchangeBlocksInfo(int numBlocks);
00027         virtual ~MPIExchangeBlocksInfo();
00028         
00029         bool * hasContent;
00030         
00031         void * baseBufferPtr;
00032         
00033         int * counts;
00034         int * displs;
00035         void **buffers;
00036         
00037         MPI::Datatype * datatypes;
00038         
00039         int numBlocks;
00040         
00041         MPIMessageSpec::ContentType_t  * content_types;
00042         
00043         MPIMessageSpec getMsgSpec(int buf_idx); 
00044         
00045 };
00046 
00047 
00048 #endif /*MPIExchangeBlocksInfo_H_*/

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