16 #ifndef SION_SION_GENERIC_H
17 #define SION_SION_GENERIC_H
29 int sion_generic_create_api(
char *name );
30 int sion_generic_free_api(
int aip );
32 int sion_generic_register_create_local_commgroup_cb(
int aid,
int create_lcg_cb(
void **,
void *,
int,
int,
int,
int,
int,
int));
33 int sion_generic_register_free_local_commgroup_cb(
int aid,
int free_lcg_cb(
void *));
35 int sion_generic_register_barrier_cb(
int aid,
int barrier_cb(
void *));
36 int sion_generic_register_bcastr_cb(
int aid,
int bcastr_cb(
void *,
void *,
int,
int,
int));
37 int sion_generic_register_gatherr_cb(
int aid,
int gatherr_cb(
void *,
void *,
void *,
int,
int,
int));
38 int sion_generic_register_gathervr_cb(
int aid,
int gathervr_cb(
void *,
void *,
void *,
int,
int *,
int,
int));
39 int sion_generic_register_scatterr_cb(
int aid,
int scatterr_cb(
void *,
void *,
void *,
int,
int,
int));
40 int sion_generic_register_scattervr_cb(
int aid,
int scattervr_cb(
void *,
void *,
void *,
int,
int *,
int,
int));
41 int sion_generic_register_get_multi_filename_cb(
int aid,
char *get_multi_filename_cb(
const char *,
int));
43 int sion_generic_register_gather_and_execute_cb(
int aid,
int gather_execute_cb(
const void *, sion_int64*,
int, sion_int64,
44 void *,
int,
int,
int,
int,
45 int process_cb(
const void *,sion_int64 *,
int)));
46 int sion_generic_register_execute_and_scatter_cb(
int aid,
int execute_scatter_cb(
void *, sion_int64*,
int, sion_int64,
47 void *,
int,
int,
int,
int,
48 int process_cb(
void *,sion_int64 *,
int)));
49 int sion_generic_register_get_capability_cb(
int aid,
int get_capability_cb(
void *));
55 const char* file_mode,
56 sion_int64* chunksize,
57 sion_int32* fsblksize,
69 int sion_generic_parclose(
int sid);
71 int sion_generic_paropen_mapped(
int aid,
73 const char *file_mode,
80 sion_int64 **chunksizes,
81 int **mapping_filenrs,
83 sion_int32 *fsblksize,
86 int sion_generic_parclose_mapped(
int sid);
88 int sion_generic_parreinit(
int sid, sion_int64 chunksize );
90 size_t sion_coll_fwrite(
const void *data,
size_t size,
size_t nitems,
int sid);
91 size_t sion_coll_fread(
void *data,
size_t size,
size_t nitems,
int sid);
int sion_generic_paropen(int aid, const char *fname, const char *file_mode, sion_int64 *chunksize, sion_int32 *fsblksize, void *gcommgroup, int grank, int gsize, int *filenumber, int *numfiles, const int *lrank, const int *lsize, FILE **fileptr, char **newfname)
Open a sion file a generic interface.