diff options
author | Quincey Koziol <koziol@hdfgroup.org> | 2007-10-17 12:48:04 (GMT) |
---|---|---|
committer | Quincey Koziol <koziol@hdfgroup.org> | 2007-10-17 12:48:04 (GMT) |
commit | 13c484162cc9098e6538deec931563848011bdb5 (patch) | |
tree | c33201bfab0f74c7e3bff9b17a55d92deb852118 /tools/h5repack | |
parent | be729e5f78ae9308dd4a305039e8ddd58068d477 (diff) | |
download | hdf5-13c484162cc9098e6538deec931563848011bdb5.zip hdf5-13c484162cc9098e6538deec931563848011bdb5.tar.gz hdf5-13c484162cc9098e6538deec931563848011bdb5.tar.bz2 |
[svn-r14206] Description:
Make H5Pget_filter API versioned and switch internal usage to
H5Pget_filter2.
Add regression test for H5Pget_filter1.
Tested on:
FreeBSD/32 6.2 (duty) in debug mode
FreeBSD/64 6.2 (liberty) w/C++ & FORTRAN, in debug mode
Linux/32 2.6 (kagiso) w/PGI compilers, w/C++ & FORTRAN, w/threadsafe,
in debug mode
Linux/64-amd64 2.6 (smirom) w/default API=1.6.x, w/C++ & FORTRAN,
in production mode
Linux/64-ia64 2.6 (cobalt) w/Intel compilers, w/C++ & FORTRAN,
in production mode
Solaris/32 2.10 (linew) w/deprecated symbols disabled, w/C++ & FORTRAN,
w/szip filter, in production mode
Mac OS X/32 10.4.10 (amazon) in debug mode
Diffstat (limited to 'tools/h5repack')
-rw-r--r-- | tools/h5repack/h5repack_copy.c | 37 | ||||
-rw-r--r-- | tools/h5repack/h5repack_filters.c | 36 | ||||
-rw-r--r-- | tools/h5repack/h5repack_verify.c | 37 |
3 files changed, 27 insertions, 83 deletions
diff --git a/tools/h5repack/h5repack_copy.c b/tools/h5repack/h5repack_copy.c index b1417e1..e6c32c6 100644 --- a/tools/h5repack/h5repack_copy.c +++ b/tools/h5repack/h5repack_copy.c @@ -1053,36 +1053,19 @@ static void print_dataset_info(hid_t dcpl_id, strcpy(strfilter,"\0"); /* get information about input filters */ - if ((nfilters = H5Pget_nfilters(dcpl_id)) < 0) + if((nfilters = H5Pget_nfilters(dcpl_id)) < 0) return; - for ( i=0; i<nfilters; i++) - { + for(i = 0; i < nfilters; i++) { cd_nelmts = NELMTS(cd_values); -#ifdef H5_WANT_H5_V1_6_COMPAT - filtn = H5Pget_filter(dcpl_id, - (unsigned)i, - &filt_flags, - &cd_nelmts, - cd_values, - sizeof(f_objname), - f_objname); -#else - filtn = H5Pget_filter(dcpl_id, - (unsigned)i, - &filt_flags, - &cd_nelmts, - cd_values, - sizeof(f_objname), - f_objname, - NULL); -#endif /* H5_WANT_H5_V1_6_COMPAT */ - - switch (filtn) - { + filtn = H5Pget_filter2(dcpl_id, (unsigned)i, &filt_flags, &cd_nelmts, + cd_values, sizeof(f_objname), f_objname, NULL); + + switch(filtn) { default: break; + case H5Z_FILTER_DEFLATE: strcat(strfilter,"GZIP "); @@ -1093,8 +1076,8 @@ static void print_dataset_info(hid_t dcpl_id, strcat(strfilter,temp); } #endif - break; + case H5Z_FILTER_SZIP: strcat(strfilter,"SZIP "); @@ -1114,15 +1097,19 @@ static void print_dataset_info(hid_t dcpl_id, #endif break; + case H5Z_FILTER_SHUFFLE: strcat(strfilter,"SHUF "); break; + case H5Z_FILTER_FLETCHER32: strcat(strfilter,"FLET "); break; + case H5Z_FILTER_NBIT: strcat(strfilter,"NBIT "); break; + case H5Z_FILTER_SCALEOFFSET: strcat(strfilter,"SCALEOFFSET "); break; diff --git a/tools/h5repack/h5repack_filters.c b/tools/h5repack/h5repack_filters.c index a2d86fa..0e7a557 100644 --- a/tools/h5repack/h5repack_filters.c +++ b/tools/h5repack/h5repack_filters.c @@ -412,8 +412,6 @@ int apply_filters(const char* name, /* object name from traverse list */ return 0; } - - /*------------------------------------------------------------------------- * Function: print_filters * @@ -437,47 +435,25 @@ int print_filters(hid_t dcpl_id) int i; /* get information about filters */ - if ((nfilters = H5Pget_nfilters(dcpl_id))<0) + if((nfilters = H5Pget_nfilters(dcpl_id)) < 0) return -1; - for (i=0; i<nfilters; i++) - { + for(i = 0; i < nfilters; i++) { cd_nelmts = NELMTS(cd_values); -#ifdef H5_WANT_H5_V1_6_COMPAT - filtn = H5Pget_filter(dcpl_id, - (unsigned)i, - &filt_flags, - &cd_nelmts, - cd_values, - sizeof(f_name), - f_name); -#else - filtn = H5Pget_filter(dcpl_id, - (unsigned)i, - &filt_flags, - &cd_nelmts, - cd_values, - sizeof(f_name), - f_name, - NULL); -#endif /* H5_WANT_H5_V1_6_COMPAT */ + filtn = H5Pget_filter2(dcpl_id, (unsigned)i, &filt_flags, &cd_nelmts, + cd_values, sizeof(f_name), f_name, NULL); f_name[sizeof(f_name)-1] = '\0'; sprintf(s, "Filter-%d:", i); printf(" %-10s %s-%u %s {", s, - f_name[0]?f_name:"method", + f_name[0] ? f_name : "method", (unsigned)filtn, filt_flags & H5Z_FLAG_OPTIONAL?"OPT":""); - for (cd_num=0; cd_num<cd_nelmts; cd_num++) { + for(cd_num = 0; cd_num < cd_nelmts; cd_num++) printf("%s%u", cd_num?", ":"", cd_values[cd_num]); - } printf("}\n"); } return 0; - - } - - diff --git a/tools/h5repack/h5repack_verify.c b/tools/h5repack/h5repack_verify.c index e87d318..995aca1 100644 --- a/tools/h5repack/h5repack_verify.c +++ b/tools/h5repack/h5repack_verify.c @@ -37,53 +37,34 @@ extern char *progname; static int has_filter(hid_t dcpl_id, H5Z_filter_t filtnin) { - int nfilters; /* number of filters */ unsigned filt_flags; /* filter flags */ H5Z_filter_t filtn; /* filter identification number */ unsigned cd_values[20]; /* filter client data values */ size_t cd_nelmts; /* filter client number of values */ char f_name[256]; /* filter name */ - int have=0; /* flag, filter is present */ + int have = 0; /* flag, filter is present */ int i; /* index */ /* if no information about the input filter is requested return exit */ - if (filtnin==-1) + if(filtnin == -1) return 1; /* get information about filters */ - if ((nfilters = H5Pget_nfilters(dcpl_id)) < 0) + if((nfilters = H5Pget_nfilters(dcpl_id)) < 0) return -1; /* if we do not have filters and the requested filter is NONE, return 1 */ - if (!nfilters && filtnin==H5Z_FILTER_NONE) + if(!nfilters && filtnin == H5Z_FILTER_NONE) return 1; - for (i=0; i<nfilters; i++) - { + for(i = 0; i < nfilters; i++) { cd_nelmts = NELMTS(cd_values); -#ifdef H5_WANT_H5_V1_6_COMPAT - filtn = H5Pget_filter(dcpl_id, - (unsigned)i, - &filt_flags, - &cd_nelmts, - cd_values, - sizeof(f_name), - f_name); -#else - filtn = H5Pget_filter(dcpl_id, - (unsigned)i, - &filt_flags, - &cd_nelmts, - cd_values, - sizeof(f_name), - f_name, - NULL); -#endif /* H5_WANT_H5_V1_6_COMPAT */ - - if (filtnin==filtn) - have=1; + filtn = H5Pget_filter2(dcpl_id, (unsigned)i, &filt_flags, &cd_nelmts, + cd_values, sizeof(f_name), f_name, NULL); + if(filtnin == filtn) + have = 1; } return have; |