/*------------------------------------------------------------------------- * Function: aux_find_obj * * Purpose: find the object name NAME (got from the traverse list) * in the repack options list * *------------------------------------------------------------------------- */ static int aux_find_obj(const char* name, /* object name from traverse list */ pack_opt_t *options, /* repack options */ pack_info_t *obj /*OUT*/) /* info about object to filter */ { char *pdest; int result; unsigned int i; for ( i=0; i<options->op_tbl->nelems; i++) { if (HDstrcmp(options->op_tbl->objs[i].path,name)==0) { *obj = options->op_tbl->objs[i]; return i; } pdest = HDstrstr(name,options->op_tbl->objs[i].path); result = (int)(pdest - name); /* found at position 1, meaning without '/' */ if( pdest != NULL && result==1 ) { *obj = options->op_tbl->objs[i]; return i; } }/*i*/ return -1; }
/*------------------------------------------------------------------------- * Function: h5_rmprefix * * Purpose: This "removes" the MPIO driver prefix part of the file name * by returning a pointer that points at the non-prefix component * part of the file name. E.g., * Input Return * pfs:/scratch1/dataX /scratch1/dataX * /scratch2/dataY /scratch2/dataY * Note that there is no change to the original file name. * * Return: Success: a pointer at the non-prefix part. * * Programmer: Albert Cheng; Jun 1, 2006 * *------------------------------------------------------------------------- */ const char * h5_rmprefix(const char *filename) { const char *ret_ptr; if ((ret_ptr = HDstrstr(filename, ":")) == NULL) ret_ptr = filename; else ret_ptr++; return(ret_ptr); }