00001 #ifndef LMO_COLLECTIVES_H_
00002 #define LMO_COLLECTIVES_H_
00003
00004 #ifdef HAVE_CONFIG_H
00005 #include "models/lmo.h"
00006 #else
00007 #include "lmo.h"
00008 #endif
00009
00014 #ifdef __cplusplus
00015 extern "C" {
00016 #endif
00017
00023 int LMO_initialize(MPI_Comm comm, LMO_model* model);
00024
00026 int LMO_finalize(MPI_Comm comm);
00027
00029 int LMO_Scatter_split_flat(void* sendbuf, int sendcount, MPI_Datatype sendtype,
00030 void* recvbuf, int recvcount, MPI_Datatype recvtype,
00031 int root, MPI_Comm comm);
00032
00034 int LMO_Gather_split_flat(void* sendbuf, int sendcount, MPI_Datatype sendtype,
00035 void* recvbuf, int recvcount, MPI_Datatype recvtype,
00036 int root, MPI_Comm comm);
00037
00038 #ifdef __cplusplus
00039 }
00040 #endif
00041
00045 #endif