14 #ifndef SION_SION_MPI_CB_GEN 15 #define SION_SION_MPI_CB_GEN 19 typedef struct _ompi_api_commdata_struct _ompi_api_commdata;
20 struct _ompi_api_commdata_struct {
30 _ompi_api_commdata *lcommgroup;
39 int _sion_register_callbacks_ompi();
41 int _sion_ompi_create_lcg_cb(
void **local_commgroup,
void *global_commgroup,
44 int filenumber,
int numfiles
46 int _sion_ompi_free_lcg_cb(
void *local_commgroup);
49 int _sion_ompi_barrier_cb(
void *commdata);
50 int _sion_ompi_bcastr_cb(
void *data,
void *commdata,
int dtype,
int nelem,
int root);
51 int _sion_ompi_gatherr_cb(
void *indata,
void *outdata,
void *commdata,
int dtype,
int nelem,
int root);
52 int _sion_ompi_scatterr_cb(
void *indata,
void *outdata,
void *commdata,
int dtype,
int nelem,
int root);
53 int _sion_ompi_gathervr_cb(
void *indata,
void *outdata,
void *commdata,
int dtype,
int *counts,
int nelem,
int root);
54 int _sion_ompi_scattervr_cb(
void *indata,
void *outdata,
void *commdata,
int dtype,
int *counts,
int nelem,
int root);
68 int _sion_ompi_gather_process_cb(
const void *indata, sion_int64 *spec,
int spec_len, sion_int64 fsblksize,
69 void *commdata,
int collector,
int range_start,
int range_end,
int sid,
70 int process_cb(
const void *,sion_int64 *,
int ) );
72 int _sion_ompi_process_scatter_cb(
void *outdata, sion_int64 *spec,
int spec_len, sion_int64 fsblksize,
73 void *commdata,
int collector,
int range_start,
int range_end,
int sid,
74 int process_cb(
void *,sion_int64 *,
int ) );
76 int _sion_ompi_get_capability_cb(
void *commdata );