14 #ifndef SION_SION_OMP_CB 15 #define SION_SION_OMP_CB 19 typedef struct _omp_api_commdata_struct _omp_api_commdata;
20 struct _omp_api_commdata_struct {
26 int _sion_register_callbacks_omp();
28 int _sion_omp_create_lcg_cb(
void **local_commgroup,
void *global_commgroup,
31 int filenumber,
int numfiles
33 int _sion_omp_free_lcg_cb(
void *local_commgroup);
36 int _sion_omp_barrier_cb(
void *commdata);
37 int _sion_omp_bcastr_cb(
void *data,
void *commdata,
int dtype,
int nelem,
int root);
38 int _sion_omp_gatherr_cb(
void *indata,
void *outdata,
void *commdata,
int dtype,
int nelem,
int root);
39 int _sion_omp_scatterr_cb(
void *indata,
void *outdata,
void *commdata,
int dtype,
int nelem,
int root);
40 int _sion_omp_gathervr_cb(
void *indata,
void *outdata,
void *commdata,
int dtype,
int *counts,
int nelem,
int root);
41 int _sion_omp_scattervr_cb(
void *indata,
void *outdata,
void *commdata,
int dtype,
int *counts,
int nelem,
int root);
55 int _sion_omp_gather_process_cb(
const void *indata, sion_int64 *spec,
int spec_len, sion_int64 fsblksize,
56 void *commdata,
int collector,
int range_start,
int range_end,
int sid,
57 int process_cb(
const void *,sion_int64 *,
int ) );
59 int _sion_omp_process_scatter_cb(
void *outdata, sion_int64 *spec,
int spec_len, sion_int64 fsblksize,
60 void *commdata,
int collector,
int range_start,
int range_end,
int sid,
61 int process_cb(
void *,sion_int64 *,
int ) );
63 int _sion_omp_get_capability_cb(
void *commdata );