32 if (sion_apidesc == NULL) {
33 _sion_errorprint(SION_NOT_SUCCESS,_SION_ERROR_RETURN,
"cannot allocate apidescriptor structure of size %lu (sion_apidesc), aborting ...\n", (
unsigned long)
sizeof(
_sion_generic_apidesc));
49 int rc = SION_SUCCESS;
51 if (sion_apidesc == NULL) {
52 return(
_sion_errorprint(SION_NOT_SUCCESS,_SION_ERROR_RETURN,
"_sion_generic_init_apidesc: cannot initalized, data structure is not allocated, aborting ...\n"));
54 sion_apidesc->aid = -1;
55 sion_apidesc->name = NULL;
56 sion_apidesc->level=SION_GENERIC_API_LEVEL_NONE;
57 sion_apidesc->create_lcg_cb = NULL;
58 sion_apidesc->free_lcg_cb = NULL;
59 sion_apidesc->barrier_cb = NULL;
60 sion_apidesc->bcastr_cb = NULL;
61 sion_apidesc->gatherr_cb = NULL;
62 sion_apidesc->gathervr_cb = NULL;
63 sion_apidesc->scatterr_cb = NULL;
64 sion_apidesc->scattervr_cb = NULL;
65 sion_apidesc->gather_execute_cb = NULL;
66 sion_apidesc->execute_scatter_cb = NULL;
67 sion_apidesc->get_multi_filename_cb = NULL;
68 sion_apidesc->get_capability_cb = NULL;
82 int rc = SION_SUCCESS;
84 if (sion_apidesc == NULL) {
85 return(
_sion_errorprint(SION_NOT_SUCCESS,_SION_ERROR_RETURN,
"_sion_generic_free_apidesc: cannot free, data structure is not allocated, aborting ...\n"));
88 if (sion_apidesc->name) free(sion_apidesc->name);
105 if (sion_gendata == NULL) {
110 return(sion_gendata);
122 int rc = SION_SUCCESS;
124 if (sion_gendata == NULL) {
125 return(
_sion_errorprint(SION_NOT_SUCCESS,_SION_ERROR_RETURN,
"_sion_generic_init_gendata: cannot initalized, data structure is not allocated, aborting ...\n"));
127 sion_gendata->apidesc = NULL;
128 sion_gendata->aid = -1;
129 sion_gendata->comm_data_global = NULL;
130 sion_gendata->comm_data_local = NULL;
145 int rc = SION_SUCCESS;
147 if (sion_gendata == NULL) {
148 return(
_sion_errorprint(SION_NOT_SUCCESS,_SION_ERROR_RETURN,
"_sion_generic_free_gendata: cannot free, data structure is not allocated, aborting ...\n"));
166 int rc = SION_SUCCESS;
168 if (sion_apidesc == NULL) {
169 return(
_sion_errorprint(SION_NOT_SUCCESS,_SION_ERROR_RETURN,
"_sion_generic_update_api_level: cannot update data structure, it is not allocated, aborting ...\n"));
173 (sion_apidesc->create_lcg_cb) &&
174 (sion_apidesc->free_lcg_cb) &&
175 (sion_apidesc->barrier_cb) &&
176 (sion_apidesc->bcastr_cb) &&
177 (sion_apidesc->gatherr_cb) &&
178 (sion_apidesc->gathervr_cb) &&
179 (sion_apidesc->scatterr_cb) &&
180 (sion_apidesc->scattervr_cb)
182 sion_apidesc->level=SION_GENERIC_API_LEVEL_STD;
185 (sion_apidesc->gather_execute_cb) &&
186 (sion_apidesc->execute_scatter_cb) &&
187 (sion_apidesc->get_capability_cb)
189 sion_apidesc->level=SION_GENERIC_API_LEVEL_FULL;
_sion_generic_gendata * _sion_generic_alloc_gendata()
Allocates memory for internal sion api data structure needed for each SION file.
int _sion_generic_free_apidesc(_sion_generic_apidesc *sion_apidesc)
free apidesc structure
_sion_generic_apidesc * _sion_generic_alloc_apidesc()
Allocates memory for internal sion api desc structure.
int _sion_errorprint(int rc, int level, const char *format,...)
Internal SION error.
int _sion_generic_update_api_level(_sion_generic_apidesc *sion_apidesc)
Update API level.
int _sion_generic_init_apidesc(_sion_generic_apidesc *sion_apidesc)
Initialize the sion api description.
int _sion_generic_free_gendata(_sion_generic_gendata *sion_gendata)
Free sion gendata description.
int _sion_generic_init_gendata(_sion_generic_gendata *sion_gendata)
Initialize the sion file description.