22 #include "sion_error_handler.h"    33   if (sion_apidesc == NULL) {
    34     _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));
    50   int       rc = SION_SUCCESS;
    52   if (sion_apidesc == NULL) {
    53     return(_sion_errorprint(SION_NOT_SUCCESS,_SION_ERROR_RETURN,
"_sion_generic_init_apidesc: cannot initalized, data structure is not allocated, aborting ...\n"));
    55   sion_apidesc->aid = -1;
    56   sion_apidesc->name = NULL;
    57   sion_apidesc->level=SION_GENERIC_API_LEVEL_NONE;
    58   sion_apidesc->create_lcg_cb = NULL;
    59   sion_apidesc->free_lcg_cb = NULL;
    60   sion_apidesc->barrier_cb = NULL;
    61   sion_apidesc->bcastr_cb = NULL;
    62   sion_apidesc->gatherr_cb = NULL;
    63   sion_apidesc->gathervr_cb = NULL;
    64   sion_apidesc->scatterr_cb = NULL;
    65   sion_apidesc->scattervr_cb = NULL;
    66   sion_apidesc->gather_execute_cb = NULL;
    67   sion_apidesc->execute_scatter_cb = NULL;
    68   sion_apidesc->get_multi_filename_cb = NULL;
    69   sion_apidesc->get_capability_cb = NULL;
    83   int       rc = SION_SUCCESS;
    85   if (sion_apidesc == NULL) {
    86     return(_sion_errorprint(SION_NOT_SUCCESS,_SION_ERROR_RETURN,
"_sion_generic_free_apidesc: cannot free, data structure is not allocated, aborting ...\n"));
    89   if (sion_apidesc->name)  free(sion_apidesc->name);
   106   if (sion_gendata == NULL) {
   107     _sion_errorprint(SION_NOT_SUCCESS,_SION_ERROR_RETURN,
"cannot allocate gendata structure of size %lu (sion_gendata), aborting ...\n", (
unsigned long) 
sizeof(
_sion_generic_gendata));
   111   return(sion_gendata);
   123   int       rc = SION_SUCCESS;
   125   if (sion_gendata == NULL) {
   126     return(_sion_errorprint(SION_NOT_SUCCESS,_SION_ERROR_RETURN,
"_sion_generic_init_gendata: cannot initalized, data structure is not allocated, aborting ...\n"));
   128   sion_gendata->apidesc = NULL;
   129   sion_gendata->aid = -1;
   130   sion_gendata->comm_data_global = NULL;
   131   sion_gendata->comm_data_local = NULL;
   146   int       rc = SION_SUCCESS;
   148   if (sion_gendata == NULL) {
   149     return(_sion_errorprint(SION_NOT_SUCCESS,_SION_ERROR_RETURN,
"_sion_generic_free_gendata: cannot free, data structure is not allocated, aborting ...\n"));
   167   int       rc = SION_SUCCESS;
   169   if (sion_apidesc == NULL) {
   170     return(_sion_errorprint(SION_NOT_SUCCESS,_SION_ERROR_RETURN,
"_sion_generic_update_api_level: cannot update data structure, it is not allocated, aborting ...\n"));
   174       (sion_apidesc->create_lcg_cb) && 
   175        (sion_apidesc->free_lcg_cb) && 
   176        (sion_apidesc->barrier_cb) &&
   177        (sion_apidesc->bcastr_cb) &&  
   178        (sion_apidesc->gatherr_cb) &&  
   179        (sion_apidesc->gathervr_cb) &&   
   180        (sion_apidesc->scatterr_cb) &&
   181        (sion_apidesc->scattervr_cb) 
   183     sion_apidesc->level=SION_GENERIC_API_LEVEL_STD;
   186     (sion_apidesc->gather_execute_cb) && 
   187     (sion_apidesc->execute_scatter_cb) && 
   188     (sion_apidesc->get_capability_cb) 
   190       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_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.