diff options
Diffstat (limited to 'test/cross_read.c')
-rw-r--r-- | test/cross_read.c | 189 |
1 files changed, 88 insertions, 101 deletions
diff --git a/test/cross_read.c b/test/cross_read.c index dabd3ab..22c6828 100644 --- a/test/cross_read.c +++ b/test/cross_read.c @@ -22,45 +22,39 @@ #include "h5test.h" #include "H5srcdir.h" -const char *FILENAME[] = { - "vms_data", - "le_data", - "be_data", - NULL -}; - -#define DATASETNAME "Array_le" -#define DATASETNAME1 "Array_be" -#define DATASETNAME2 "Scale_offset_float_data_le" -#define DATASETNAME3 "Scale_offset_float_data_be" -#define DATASETNAME4 "Scale_offset_double_data_le" -#define DATASETNAME5 "Scale_offset_double_data_be" -#define DATASETNAME6 "Scale_offset_char_data_le" -#define DATASETNAME7 "Scale_offset_char_data_be" -#define DATASETNAME8 "Scale_offset_short_data_le" -#define DATASETNAME9 "Scale_offset_short_data_be" -#define DATASETNAME10 "Scale_offset_int_data_le" -#define DATASETNAME11 "Scale_offset_int_data_be" -#define DATASETNAME12 "Scale_offset_long_long_data_le" -#define DATASETNAME13 "Scale_offset_long_long_data_be" - -#define DATASETNAME14 "Fletcher_float_data_le" -#define DATASETNAME15 "Fletcher_float_data_be" -#define DATASETNAME16 "Deflate_float_data_le" -#define DATASETNAME17 "Deflate_float_data_be" +const char *FILENAME[] = {"vms_data", "le_data", "be_data", NULL}; + +#define DATASETNAME "Array_le" +#define DATASETNAME1 "Array_be" +#define DATASETNAME2 "Scale_offset_float_data_le" +#define DATASETNAME3 "Scale_offset_float_data_be" +#define DATASETNAME4 "Scale_offset_double_data_le" +#define DATASETNAME5 "Scale_offset_double_data_be" +#define DATASETNAME6 "Scale_offset_char_data_le" +#define DATASETNAME7 "Scale_offset_char_data_be" +#define DATASETNAME8 "Scale_offset_short_data_le" +#define DATASETNAME9 "Scale_offset_short_data_be" +#define DATASETNAME10 "Scale_offset_int_data_le" +#define DATASETNAME11 "Scale_offset_int_data_be" +#define DATASETNAME12 "Scale_offset_long_long_data_le" +#define DATASETNAME13 "Scale_offset_long_long_data_be" + +#define DATASETNAME14 "Fletcher_float_data_le" +#define DATASETNAME15 "Fletcher_float_data_be" +#define DATASETNAME16 "Deflate_float_data_le" +#define DATASETNAME17 "Deflate_float_data_be" #ifdef H5_HAVE_FILTER_SZIP -#define DATASETNAME18 "Szip_float_data_le" -#define DATASETNAME19 "Szip_float_data_be" +#define DATASETNAME18 "Szip_float_data_le" +#define DATASETNAME19 "Szip_float_data_be" #endif /* H5_HAVE_FILTER_SZIP */ -#define DATASETNAME20 "Shuffle_float_data_le" -#define DATASETNAME21 "Shuffle_float_data_be" -#define DATASETNAME22 "Nbit_float_data_le" -#define DATASETNAME23 "Nbit_float_data_be" +#define DATASETNAME20 "Shuffle_float_data_le" +#define DATASETNAME21 "Shuffle_float_data_be" +#define DATASETNAME22 "Nbit_float_data_le" +#define DATASETNAME23 "Nbit_float_data_be" -#define NX 6 -#define NY 6 +#define NX 6 +#define NY 6 - /*------------------------------------------------------------------------- * Function: check_data_i * @@ -77,49 +71,49 @@ const char *FILENAME[] = { static int check_data_i(const char *dsetname, hid_t fid) { - hid_t did = -1; /* dataset ID */ - long long data_in[NX+1][NY]; /* input buffer */ - long long data_out[NX+1][NY]; /* output buffer */ - int i, j; /* iterators */ - int nerrors = 0; /* # errors in dataset values */ + hid_t did = -1; /* dataset ID */ + long long data_in[NX + 1][NY]; /* input buffer */ + long long data_out[NX + 1][NY]; /* output buffer */ + int i, j; /* iterators */ + int nerrors = 0; /* # errors in dataset values */ /* Open the dataset. */ - if((did = H5Dopen2(fid, dsetname, H5P_DEFAULT)) < 0) + if ((did = H5Dopen2(fid, dsetname, H5P_DEFAULT)) < 0) FAIL_STACK_ERROR; /* Initialization. */ /* Input (last row is different) */ - for(i = 0; i < NX; i++) - for(j = 0; j < NY; j++) + for (i = 0; i < NX; i++) + for (j = 0; j < NY; j++) data_in[i][j] = i + j; - for(i = 0; i < NY; i++) + for (i = 0; i < NY; i++) data_in[NX][i] = -2; /* Output */ - HDmemset(data_out, 0, (NX+1) * NY * sizeof(long long)); + HDmemset(data_out, 0, (NX + 1) * NY * sizeof(long long)); /* Read data from hyperslab in the file into the hyperslab in * memory and display. */ - if(H5Dread(did, H5T_NATIVE_LLONG, H5S_ALL, H5S_ALL, H5P_DEFAULT, data_out) < 0) + if (H5Dread(did, H5T_NATIVE_LLONG, H5S_ALL, H5S_ALL, H5P_DEFAULT, data_out) < 0) FAIL_STACK_ERROR; /* Check results */ - for(i = 0; i < (NX + 1); i++) - for(j = 0; j < NY; j++) - if(data_out[i][j] != data_in[i][j]) - if(!nerrors++) { + for (i = 0; i < (NX + 1); i++) + for (j = 0; j < NY; j++) + if (data_out[i][j] != data_in[i][j]) + if (!nerrors++) { H5_FAILED(); - HDprintf("element [%d][%d] is %lld but should have been %lld\n", - (int)i, (int)j, data_out[i][j], data_in[i][j]); + HDprintf("element [%d][%d] is %lld but should have been %lld\n", (int)i, (int)j, + data_out[i][j], data_in[i][j]); } /* end if */ /* Close/release resources. */ - if(H5Dclose(did) < 0) + if (H5Dclose(did) < 0) FAIL_STACK_ERROR /* Failure */ - if(nerrors) { - HDprintf("total of %d errors out of %d elements\n", nerrors, (int)(NX*NY)); + if (nerrors) { + HDprintf("total of %d errors out of %d elements\n", nerrors, (int)(NX * NY)); return 1; } /* end if */ @@ -127,13 +121,11 @@ check_data_i(const char *dsetname, hid_t fid) return 0; error: - H5E_BEGIN_TRY { - H5Dclose(did); - } H5E_END_TRY; + H5E_BEGIN_TRY { H5Dclose(did); } + H5E_END_TRY; return 1; } /* end check_data_i() */ - /*------------------------------------------------------------------------- * Function: check_data_f * @@ -150,49 +142,49 @@ error: static int check_data_f(const char *dsetname, hid_t fid) { - hid_t did = -1; /* dataset ID */ - double data_in[NX+1][NY]; /* input buffer */ - double data_out[NX+1][NY]; /* output buffer */ - int i, j; /* iterators */ - int nerrors = 0; /* # of errors in dataset values */ + hid_t did = -1; /* dataset ID */ + double data_in[NX + 1][NY]; /* input buffer */ + double data_out[NX + 1][NY]; /* output buffer */ + int i, j; /* iterators */ + int nerrors = 0; /* # of errors in dataset values */ /* Open the dataset. */ - if((did = H5Dopen2(fid, dsetname, H5P_DEFAULT)) < 0) + if ((did = H5Dopen2(fid, dsetname, H5P_DEFAULT)) < 0) FAIL_STACK_ERROR; /* Initialization. */ /* Input (last row is different) */ - for(i = 0; i < NX; i++) - for(j = 0; j < NY; j++) + for (i = 0; i < NX; i++) + for (j = 0; j < NY; j++) data_in[i][j] = ((double)(i + j + 1)) / (double)3.0F; - for(i = 0; i < NY; i++) + for (i = 0; i < NY; i++) data_in[NX][i] = -2.2F; /* Output */ - HDmemset(data_out, 0, (NX+1) * NY * sizeof(double)); + HDmemset(data_out, 0, (NX + 1) * NY * sizeof(double)); /* Read data from hyperslab in the file into the hyperslab in * memory and display. */ - if(H5Dread(did, H5T_NATIVE_DOUBLE, H5S_ALL, H5S_ALL, H5P_DEFAULT, data_out) < 0) + if (H5Dread(did, H5T_NATIVE_DOUBLE, H5S_ALL, H5S_ALL, H5P_DEFAULT, data_out) < 0) FAIL_STACK_ERROR; /* Check results */ - for(i = 0; i < (NX + 1); i++) - for(j = 0; j < NY; j++) - if(!H5_DBL_REL_EQUAL(data_out[i][j], data_in[i][j], (double)0.001F)) - if(!nerrors++) { + for (i = 0; i < (NX + 1); i++) + for (j = 0; j < NY; j++) + if (!H5_DBL_REL_EQUAL(data_out[i][j], data_in[i][j], (double)0.001F)) + if (!nerrors++) { H5_FAILED(); - HDprintf("element [%d][%d] is %g but should have been %g\n", - (int)i, (int)j, data_out[i][j], data_in[i][j]); + HDprintf("element [%d][%d] is %g but should have been %g\n", (int)i, (int)j, + data_out[i][j], data_in[i][j]); } /* end if */ /* Close/release resources. */ - if(H5Dclose(did) < 0) + if (H5Dclose(did) < 0) FAIL_STACK_ERROR /* Failure */ - if(nerrors) { - HDprintf("total of %d errors out of %d elements\n", nerrors, (int)(NX*NY)); + if (nerrors) { + HDprintf("total of %d errors out of %d elements\n", nerrors, (int)(NX * NY)); return 1; } /* end if */ @@ -200,13 +192,11 @@ check_data_f(const char *dsetname, hid_t fid) return 0; error: - H5E_BEGIN_TRY { - H5Dclose(did); - } H5E_END_TRY; + H5E_BEGIN_TRY { H5Dclose(did); } + H5E_END_TRY; return 1; } /* end check_data_f() */ - /*------------------------------------------------------------------------- * Function: check_file * @@ -223,15 +213,15 @@ error: static int check_file(char *filename) { - const char *pathname = H5_get_srcdir_filename(filename); /* Corrected test file name */ - hid_t fid = -1; /* file ID */ - int nerrors = 0; /* # of datasets with errors */ + const char *pathname = H5_get_srcdir_filename(filename); /* Corrected test file name */ + hid_t fid = -1; /* file ID */ + int nerrors = 0; /* # of datasets with errors */ #if !defined(H5_HAVE_FILTER_DEFLATE) || !defined(H5_HAVE_FILTER_SZIP) - const char *not_supported= " filter is not enabled."; /* no filter message */ + const char *not_supported = " filter is not enabled."; /* no filter message */ #endif /* Open the file. */ - if((fid = H5Fopen(pathname, H5F_ACC_RDONLY, H5P_DEFAULT)) < 0) + if ((fid = H5Fopen(pathname, H5F_ACC_RDONLY, H5P_DEFAULT)) < 0) FAIL_STACK_ERROR; TESTING("regular dataset of LE DOUBLE"); @@ -285,7 +275,7 @@ check_file(char *filename) TESTING("dataset of LE FLOAT with Deflate filter"); #ifdef H5_HAVE_FILTER_DEFLATE nerrors += check_data_f(DATASETNAME16, fid); -#else /*H5_HAVE_FILTER_DEFLATE*/ +#else /*H5_HAVE_FILTER_DEFLATE*/ SKIPPED(); HDputs(not_supported); #endif /*H5_HAVE_FILTER_DEFLATE*/ @@ -293,7 +283,7 @@ check_file(char *filename) TESTING("dataset of BE FLOAT with Deflate filter"); #ifdef H5_HAVE_FILTER_DEFLATE nerrors += check_data_f(DATASETNAME17, fid); -#else /*H5_HAVE_FILTER_DEFLATE*/ +#else /*H5_HAVE_FILTER_DEFLATE*/ SKIPPED(); HDputs(not_supported); #endif /*H5_HAVE_FILTER_DEFLATE*/ @@ -301,7 +291,7 @@ check_file(char *filename) TESTING("dataset of LE FLOAT with Szip filter"); #ifdef H5_HAVE_FILTER_SZIP nerrors += check_data_f(DATASETNAME18, fid); -#else /*H5_HAVE_FILTER_SZIP*/ +#else /*H5_HAVE_FILTER_SZIP*/ SKIPPED(); HDputs(not_supported); #endif /*H5_HAVE_FILTER_SZIP*/ @@ -309,7 +299,7 @@ check_file(char *filename) TESTING("dataset of BE FLOAT with Szip filter"); #ifdef H5_HAVE_FILTER_SZIP nerrors += check_data_f(DATASETNAME19, fid); -#else /*H5_HAVE_FILTER_SZIP*/ +#else /*H5_HAVE_FILTER_SZIP*/ SKIPPED(); HDputs(not_supported); #endif /*H5_HAVE_FILTER_SZIP*/ @@ -326,18 +316,16 @@ check_file(char *filename) TESTING("dataset of BE FLOAT with Nbit filter"); nerrors += check_data_f(DATASETNAME23, fid); - if(H5Fclose(fid)) + if (H5Fclose(fid)) FAIL_STACK_ERROR return nerrors; error: - H5E_BEGIN_TRY { - H5Fclose(fid); - } H5E_END_TRY; + H5E_BEGIN_TRY { H5Fclose(fid); } + H5E_END_TRY; return nerrors; } /* end check_file() */ - /*------------------------------------------------------------------------- * Function: main * @@ -353,8 +341,8 @@ error: int main(void) { - char filename[1024]; - int nerrors = 0; + char filename[1024]; + int nerrors = 0; h5_reset(); @@ -368,7 +356,7 @@ main(void) h5_fixname(FILENAME[2], H5P_DEFAULT, filename, sizeof(filename)); nerrors += check_file(filename); - if(nerrors) { + if (nerrors) { HDprintf("***** %d FAILURE%s! *****\n", nerrors, 1 == nerrors ? "" : "S"); return EXIT_FAILURE; } /* end if */ @@ -376,4 +364,3 @@ main(void) HDprintf("All data type tests passed.\n"); return EXIT_SUCCESS; } /* end main() */ - |