23 #include "sion_error_handler.h"    55 #define DFUNCTION "_sion_paropen_generic_buddy"    64   if (cb_args == NULL) {
    65     _sion_errorprint(SION_NOT_SUCCESS,_SION_ERROR_RETURN,
"cannot allocate cb_args structure of size %lu (sion_file_check_par_args), aborting ...\n", 
    70   cb_args->file_mode=strdup(file_mode);
    73   cb_args->numfiles=numfiles;
    79 #define DFUNCTION "sion_file_check_par_args_free_mpi"    83     if(cb_args->file_mode!=NULL) {
    84       free(cb_args->file_mode);
    92 #define DFUNCTION "sion_file_check_par_cb_mpi"    93 int sion_file_check_par_cb_mpi( 
char *fname,  
void *v_args ) {
    95   int rc=SION_NOT_SUCCESS;
    96   int gtasks, gRank, sid;
    97   sion_int64  chunksize=0;
    98   sion_int32  fsblksize=-1;
   102   MPI_Comm_size(cb_args->gComm, >asks);
   103   MPI_Comm_rank(cb_args->gComm, &gRank);
   105   DPRINTFP((1, DFUNCTION, gRank, 
"enter parallel check of file %s with mode %s\n", fname,cb_args->file_mode));
   107   _sion_errorprint_set_flag(_SION_ERROR_FLAG_SUPPRESS_MSG);
   108   sid = 
sion_paropen_mpi(fname, cb_args->file_mode, &cb_args->numfiles, cb_args->gComm, &cb_args->lComm, &chunksize, &fsblksize, &globalrank, NULL, NULL);
   109   _sion_errorprint_set_flag(_SION_ERROR_FLAG_NONE);
   117   DPRINTFP((1, DFUNCTION, gRank, 
"leave parallel check of file %s with mode %s rc=%d\n", fname,cb_args->file_mode,rc));
 
int sion_paropen_mpi(const char *fname, const char *file_mode, int *numFiles, MPI_Comm gComm, const MPI_Comm *lComm, sion_int64 *chunksize, sion_int32 *fsblksize, int *globalrank, FILE **fileptr, char **newfname)
Open a sion file using MPI.
int sion_parclose_mpi(int sid)
Close a sion file using MPI.