diff options
author | Pedro Vicente Nunes <pvn@hdfgroup.org> | 2008-01-07 20:36:32 (GMT) |
---|---|---|
committer | Pedro Vicente Nunes <pvn@hdfgroup.org> | 2008-01-07 20:36:32 (GMT) |
commit | 8ba92cda45315abfbc19cac0f80adcbde435984d (patch) | |
tree | 12b8e5df60ee0a7935afb0845c817c5958ae2637 /tools/h5diff/h5diff_common.c | |
parent | 20c5484440dd9427c23afec554249ff165abf6a9 (diff) | |
download | hdf5-8ba92cda45315abfbc19cac0f80adcbde435984d.zip hdf5-8ba92cda45315abfbc19cac0f80adcbde435984d.tar.gz hdf5-8ba92cda45315abfbc19cac0f80adcbde435984d.tar.bz2 |
[svn-r14380] Eliminate old code not used and that was replaced (command line)
tested: windows, linux
Diffstat (limited to 'tools/h5diff/h5diff_common.c')
-rw-r--r-- | tools/h5diff/h5diff_common.c | 381 |
1 files changed, 73 insertions, 308 deletions
diff --git a/tools/h5diff/h5diff_common.c b/tools/h5diff/h5diff_common.c index 802cc37..357bb32 100644 --- a/tools/h5diff/h5diff_common.c +++ b/tools/h5diff/h5diff_common.c @@ -52,175 +52,6 @@ static struct long_options l_opts[] = { * *------------------------------------------------------------------------- */ -#if 0 -#define OLD -#endif - -#if defined (OLD) - -void parse_command_line(int argc, - const char* argv[], - const char** fname1, - const char** fname2, - const char** objname1, - const char** objname2, - diff_opt_t* options) -{ - int i; - const char *s = NULL; - - /* process the command-line */ - memset(options, 0, sizeof (diff_opt_t)); - -/*------------------------------------------------------------------------- - * initial check of command line options - *------------------------------------------------------------------------- - */ - - if ( argv[1] && (strcmp("-V",argv[1])==0) ) - { - print_version("h5diff"); - h5diff_exit(EXIT_SUCCESS); - - } - - if ( argc==2 && (strcmp("-h",argv[1])==0) ) - usage(); - - if ( argc<3 ) - { - usage(); - } - -/*------------------------------------------------------------------------- - * file names are first - *------------------------------------------------------------------------- - */ - if ( argc>=3 ) - { - *fname1 = argv[1]; - *fname2 = argv[2]; - } -/*------------------------------------------------------------------------- - * parse command line options - *------------------------------------------------------------------------- - */ - for (i=3; i<argc ; i++) - { - /* get the single-letter switches */ - if ( '-'==argv[i][0] ) - { - for (s=argv[i]+1; *s; s++) - { - switch (*s) { - default: - printf("-%s is an invalid option\n", s ); - usage(); - break; - case 'h': - usage(); - break; - case 'V': - print_version("h5diff"); - h5diff_exit(EXIT_SUCCESS); - case 'v': - options->m_verbose = 1; - break; - case 'q': - /* use quiet mode; supress the message "0 differences found" */ - options->m_quiet = 1; - break; - case 'r': - options->m_report = 1; - break; - case 'd': - /* if it is not another option */ - if ( i<argc-1 &&'-' != argv[i+1][0] ) - { - options->d=1; - if ( check_p_input(argv[i+1])==-1) - { - printf("<-d %s> is not a valid option\n", argv[i+1] ); - usage(); - } - options->delta = atof(argv[i+1]); - i++; /* go to next */ - } - else - { - printf("Not a valid -d option\n"); - usage(); - } - break; - case 'p': - if ( i<argc-1 &&'-' !=argv[i+1][0] ) - { - options->p=1; - if ( check_p_input(argv[i+1])==-1) - { - printf("<-p %s> is not a valid option\n", argv[i+1] ); - usage(); - } - options->percent = atof(argv[i+1]); - i++; /* go to next */ - } - else - { - printf("Not a valid -p option\n"); - usage(); - } - break; - case 'n': - if ( i<argc-1 && '-' !=argv[i+1][0] ) - { - options->n=1; - if ( check_n_input(argv[i+1])==-1) - { - printf("<-n %s> is not a valid option\n", argv[i+1] ); - usage(); - } - options->count = atol(argv[i+1]); - i++; /* go to next */ - } - else - { - printf("Not a valid -n option\n"); - usage(); - } - break; - } /*switch*/ - } /*for*/ - } /*if*/ - - else /* not single-letter switches */ - - { - /* check if it is not a -d, -p parameter */ - if ( '-'==argv[i-1][0] && ('d'==argv[i-1][1] ||'p'==argv[i-1][1] )) - continue; - else - { - if ( *objname1==NULL ) - *objname1 = argv[i]; - if ( *objname2==NULL ) - { - /* check if we have a second object name */ - if ( i+1<argc && '-' !=argv[i+1][0] ) { - /* yes */ - *objname2 = argv[i+1]; - i++; /* go to next */ - } - else - /* no */ - *objname2 = *objname1; - } /*objname2*/ - } /*else*/ - } /*else*/ - - }/*for*/ -} - -#else void parse_command_line(int argc, const char* argv[], @@ -329,40 +160,37 @@ void parse_command_line(int argc, } - -#endif - /*------------------------------------------------------------------------- * Function: print_info * - * Purpose: print several information messages + * Purpose: print several information messages after h5diff call * *------------------------------------------------------------------------- */ -void print_info(diff_opt_t* options) -{ - if (options->m_quiet || options->err_stat) - return; - - if (options->cmn_objs==0) - { - printf("No common objects found. Files are not comparable.\n"); - if (!options->m_verbose) - printf("Use -v for a list of objects.\n"); - } - - if (options->not_cmp==1) + void print_info(diff_opt_t* options) { - printf("--------------------------------\n"); - printf("Some objects are not comparable\n"); - printf("--------------------------------\n"); - if (!options->m_verbose) - printf("Use -v for a list of objects.\n"); + if (options->m_quiet || options->err_stat) + return; + + if (options->cmn_objs==0) + { + printf("No common objects found. Files are not comparable.\n"); + if (!options->m_verbose) + printf("Use -v for a list of objects.\n"); + } + + if (options->not_cmp==1) + { + printf("--------------------------------\n"); + printf("Some objects are not comparable\n"); + printf("--------------------------------\n"); + if (!options->m_verbose) + printf("Use -v for a list of objects.\n"); + } + } -} - /*------------------------------------------------------------------------- * Function: check_n_input * @@ -382,22 +210,22 @@ void print_info(diff_opt_t* options) */ int check_n_input( const char *str ) { - unsigned i; - char c; - - for ( i = 0; i < strlen(str); i++) - { - c = str[i]; - if ( i==0 ) - { - if ( c < 49 || c > 57 ) /* ascii values between 1 and 9 */ - return -1; - } - else - if ( c < 48 || c > 57 ) /* 0 also */ - return -1; - } - return 1; + unsigned i; + char c; + + for ( i = 0; i < strlen(str); i++) + { + c = str[i]; + if ( i==0 ) + { + if ( c < 49 || c > 57 ) /* ascii values between 1 and 9 */ + return -1; + } + else + if ( c < 48 || c > 57 ) /* 0 also */ + return -1; + } + return 1; } /*------------------------------------------------------------------------- @@ -417,20 +245,20 @@ int check_n_input( const char *str ) */ int check_p_input( const char *str ) { - double x; - - /* - the atof return value on a hexadecimal input is different - on some systems; we do a character check for this - */ - if (strlen(str)>2 && str[0]=='0' && str[1]=='x') - return -1; - - x=atof(str); - if (x<=0) - return -1; - - return 1; + double x; + + /* + the atof return value on a hexadecimal input is different + on some systems; we do a character check for this + */ + if (strlen(str)>2 && str[0]=='0' && str[1]=='x') + return -1; + + x=atof(str); + if (x<=0) + return -1; + + return 1; } /*------------------------------------------------------------------------- @@ -450,20 +278,20 @@ int check_p_input( const char *str ) */ int check_d_input( const char *str ) { - double x; - - /* - the atof return value on a hexadecimal input is different - on some systems; we do a character check for this - */ - if (strlen(str)>2 && str[0]=='0' && str[1]=='x') - return -1; - - x=atof(str); - if (x <=0) - return -1; - - return 1; + double x; + + /* + the atof return value on a hexadecimal input is different + on some systems; we do a character check for this + */ + if (strlen(str)>2 && str[0]=='0' && str[1]=='x') + return -1; + + x=atof(str); + if (x <=0) + return -1; + + return 1; } /*------------------------------------------------------------------------- @@ -476,68 +304,6 @@ int check_d_input( const char *str ) *------------------------------------------------------------------------- */ -#if defined (OLD) -void usage(void) -{ - printf("usage: h5diff [OPTIONS] file1 file2 [obj1[obj2]] \n"); - printf("\n"); - printf("file1 File name of the first HDF5 file\n"); - printf("file2 File name of the second HDF5 file\n"); - printf("[obj1] Name of an HDF5 object, in absolute path\n"); - printf("[obj2] Name of an HDF5 object, in absolute path\n"); - printf("[OPTIONS] are:\n"); - printf("[-h] Print out this information\n"); - printf("[-V] Print HDF5 library version number and exit\n"); - printf("[-r] Report mode. Print differences\n"); - printf("[-v] Verbose mode. Print differences, list of objects, warnings\n"); - printf("[-q] Quiet mode. Do not do output\n"); - printf("[-n count] Print difference up to count number\n"); - printf("[-d delta] Print difference when it is greater than limit delta\n"); - printf("[-p relative] Print difference when it is greater than a relative limit\n"); - printf("\n"); - printf("Items in [] are optional\n"); - printf("[obj1] and [obj2] are HDF5 objects (datasets, groups, datatypes or links)\n"); - printf("The 'count' value must be a positive integer\n"); - printf("The 'delta' and 'relative' values must be positive numbers\n"); - printf("The -d compare criteria is |a - b| > delta\n"); - printf("The -p compare criteria is |(b-a)/a| > relative\n"); - printf("\n"); - printf("h5diff has four modes of output:\n"); - printf(" Normal mode: print the number of differences found and where they occured\n"); - printf(" Report mode: print the above plus the differences\n"); - printf(" Verbose mode: print the above plus a list of objects and warnings\n"); - printf(" Quiet mode: do not print output (h5diff always returns an exit code of 1 when differences are found)\n"); - printf("\n"); - printf("Examples of use:\n"); - printf("\n"); - printf("1) h5diff file1 file2 /g1/dset1 /g1/dset2\n"); - printf("\n"); - printf(" Compares object '/g1/dset1' in file1 with '/g1/dset2' in file2\n"); - printf("\n"); - printf("2) h5diff file1 file2 /g1/dset1\n"); - printf("\n"); - printf(" Compares object '/g1/dset1' in both files\n"); - printf("\n"); - printf("3) h5diff file1 file2\n"); - printf("\n"); - printf(" Compares all objects in both files\n"); - printf("\n"); - printf("Note) file1 and file2 can be the same file. Use\n"); - printf("\n"); - printf(" h5diff file1 file1 /g1/dset1 /g1/dset2\n"); - printf("\n"); - printf(" to compare '/g1/dset1' and '/g1/dset2' in the same file\n"); - printf("\n"); - printf("If no objects are specified, h5diff only compares objects with the same "); - printf("absolute path in both files. The compare criteria is: "); - printf("1) datasets: numerical array differences 2) groups: name string difference "); - printf("3) datatypes: the return value of H5Tequal 2) links: name string difference of the linked value\n"); - -} - - -#else - void usage(void) { printf("usage: h5diff [OPTIONS] file1 file2 [obj1[obj2]] \n"); @@ -610,7 +376,6 @@ void usage(void) } -#endif /*------------------------------------------------------------------------- * Function: h5diff_exit @@ -631,14 +396,14 @@ void usage(void) void h5diff_exit(int status) { #ifdef H5_HAVE_PARALLEL - /* if in parallel mode, dismiss workers, close down MPI, then exit */ - if((g_nTasks > 1) && g_Parallel) { - phdiff_dismiss_workers(); - MPI_Barrier(MPI_COMM_WORLD); - } - if(g_Parallel) - MPI_Finalize(); + /* if in parallel mode, dismiss workers, close down MPI, then exit */ + if((g_nTasks > 1) && g_Parallel) { + phdiff_dismiss_workers(); + MPI_Barrier(MPI_COMM_WORLD); + } + if(g_Parallel) + MPI_Finalize(); #endif - exit(status); + exit(status); } |