diff options
author | Pedro Vicente Nunes <pvn@hdfgroup.org> | 2008-02-19 19:12:10 (GMT) |
---|---|---|
committer | Pedro Vicente Nunes <pvn@hdfgroup.org> | 2008-02-19 19:12:10 (GMT) |
commit | 6bc41c8b209fd0cc9cc3d088eb425ddbcf681a53 (patch) | |
tree | a6c6f0d9f1fb4bd950c74dbadaf50f4ee1623092 /tools/h5import | |
parent | fc8e5477f583b6e256b06da62fb9b80d0db5418f (diff) | |
download | hdf5-6bc41c8b209fd0cc9cc3d088eb425ddbcf681a53.zip hdf5-6bc41c8b209fd0cc9cc3d088eb425ddbcf681a53.tar.gz hdf5-6bc41c8b209fd0cc9cc3d088eb425ddbcf681a53.tar.bz2 |
[svn-r14613] 971 (B2) h5import bug on Windows w/binary datasets. CLOSED. fread in windows needs a binary file to be open with "rb" instead of "r" otherwise it terminates execution if an end of file character is found on the input file. Besides that the binary file generated needs to be open with "wb" , otherwise an end of line character is read twice. DONE NOW for 1.8, already done previously for 1.6
renamed the h5import test files to have the extensions
text input files = .txt
binary input files = .bin
configuration files = .conf
hdf5 files = .h5
besides that in very test the files have the same name except extension.
For example
TOOLTEST txtin16.txt -c $srcdir/testfiles/txtin16.conf -o txtin16.h5
The convention for the test name is for example, for "txtin16"
"txt" for text then "in16" means integer 16 size
Tested: linux, solaris
Diffstat (limited to 'tools/h5import')
-rwxr-xr-x | tools/h5import/h5import.c | 55 | ||||
-rwxr-xr-x | tools/h5import/h5importtest.c | 439 | ||||
-rwxr-xr-x | tools/h5import/h5importtestutil.sh | 55 | ||||
-rwxr-xr-x | tools/h5import/testfiles/binfp64.conf (renamed from tools/h5import/testfiles/conbfp64) | 0 | ||||
-rw-r--r-- | tools/h5import/testfiles/binfp64.h5 (renamed from tools/h5import/testfiles/test8.h5) | bin | 10760 -> 10760 bytes | |||
-rwxr-xr-x | tools/h5import/testfiles/binin16.conf (renamed from tools/h5import/testfiles/conbin16) | 0 | ||||
-rw-r--r-- | tools/h5import/testfiles/binin16.h5 (renamed from tools/h5import/testfiles/test9.h5) | bin | 10760 -> 10760 bytes | |||
-rwxr-xr-x | tools/h5import/testfiles/binin32.conf (renamed from tools/h5import/testfiles/conbin32) | 0 | ||||
-rw-r--r-- | tools/h5import/testfiles/binin32.h5 (renamed from tools/h5import/testfiles/test11.h5) | bin | 9472 -> 9472 bytes | |||
-rwxr-xr-x | tools/h5import/testfiles/binin8.conf (renamed from tools/h5import/testfiles/conbin8) | 0 | ||||
-rw-r--r-- | tools/h5import/testfiles/binin8.h5 (renamed from tools/h5import/testfiles/test10.h5) | bin | 10760 -> 10760 bytes | |||
-rw-r--r-- | tools/h5import/testfiles/binin8w.conf | 9 | ||||
-rw-r--r-- | tools/h5import/testfiles/binin8w.h5 | bin | 0 -> 2852 bytes | |||
-rwxr-xr-x | tools/h5import/testfiles/binuin16.conf (renamed from tools/h5import/testfiles/conbuin16) | 0 | ||||
-rw-r--r-- | tools/h5import/testfiles/binuin16.h5 (renamed from tools/h5import/testfiles/test12.h5) | bin | 10760 -> 10760 bytes | |||
-rwxr-xr-x | tools/h5import/testfiles/binuin32.conf (renamed from tools/h5import/testfiles/conbuin32) | 0 | ||||
-rw-r--r-- | tools/h5import/testfiles/binuin32.h5 (renamed from tools/h5import/testfiles/test13.h5) | bin | 6384 -> 6384 bytes | |||
-rwxr-xr-x | tools/h5import/testfiles/txtfp32.conf (renamed from tools/h5import/testfiles/textfp32) | 0 | ||||
-rw-r--r-- | tools/h5import/testfiles/txtfp32.h5 (renamed from tools/h5import/testfiles/test6.h5) | bin | 4192 -> 4192 bytes | |||
-rwxr-xr-x | tools/h5import/testfiles/txtfp32.txt (renamed from tools/h5import/testfiles/fp1) | 0 | ||||
-rwxr-xr-x | tools/h5import/testfiles/txtfp64.conf (renamed from tools/h5import/testfiles/textfp64) | 0 | ||||
-rw-r--r-- | tools/h5import/testfiles/txtfp64.h5 (renamed from tools/h5import/testfiles/test7.h5) | bin | 9784 -> 9784 bytes | |||
-rwxr-xr-x | tools/h5import/testfiles/txtfp64.txt (renamed from tools/h5import/testfiles/fp2) | 0 | ||||
-rwxr-xr-x | tools/h5import/testfiles/txtin16.conf (renamed from tools/h5import/testfiles/textin16) | 0 | ||||
-rw-r--r-- | tools/h5import/testfiles/txtin16.h5 (renamed from tools/h5import/testfiles/test2.h5) | bin | 9784 -> 9784 bytes | |||
-rw-r--r--[-rwxr-xr-x] | tools/h5import/testfiles/txtin16.txt (renamed from tools/h5import/testfiles/in1) | 0 | ||||
-rwxr-xr-x | tools/h5import/testfiles/txtin32.conf (renamed from tools/h5import/testfiles/textin32) | 0 | ||||
-rw-r--r-- | tools/h5import/testfiles/txtin32.h5 (renamed from tools/h5import/testfiles/test1.h5) | bin | 4192 -> 4192 bytes | |||
-rw-r--r-- | tools/h5import/testfiles/txtin32.txt | 15 | ||||
-rwxr-xr-x | tools/h5import/testfiles/txtin8.conf (renamed from tools/h5import/testfiles/textin8) | 0 | ||||
-rw-r--r-- | tools/h5import/testfiles/txtin8.h5 (renamed from tools/h5import/testfiles/test3.h5) | bin | 9784 -> 9784 bytes | |||
-rw-r--r-- | tools/h5import/testfiles/txtstr.conf (renamed from tools/h5import/testfiles/textstr) | 0 | ||||
-rw-r--r-- | tools/h5import/testfiles/txtstr.h5 (renamed from tools/h5import/testfiles/teststr.h5) | bin | 10240 -> 10240 bytes | |||
-rw-r--r-- | tools/h5import/testfiles/txtstr.txt (renamed from tools/h5import/testfiles/txtstr) | 0 | ||||
-rwxr-xr-x | tools/h5import/testfiles/txtuin16.conf (renamed from tools/h5import/testfiles/textuin16) | 0 | ||||
-rw-r--r-- | tools/h5import/testfiles/txtuin16.h5 (renamed from tools/h5import/testfiles/test5.h5) | bin | 10240 -> 10240 bytes | |||
-rwxr-xr-x | tools/h5import/testfiles/txtuin32.conf (renamed from tools/h5import/testfiles/textuin32) | 0 | ||||
-rw-r--r-- | tools/h5import/testfiles/txtuin32.h5 (renamed from tools/h5import/testfiles/test4.h5) | bin | 6240 -> 6240 bytes | |||
-rwxr-xr-x | tools/h5import/testfiles/txtuin32.txt | 15 |
39 files changed, 397 insertions, 191 deletions
diff --git a/tools/h5import/h5import.c b/tools/h5import/h5import.c index f8f518b..d1b15bb 100755 --- a/tools/h5import/h5import.c +++ b/tools/h5import/h5import.c @@ -45,10 +45,6 @@ int main(int argc, char *argv[]) (void)HDsetvbuf(stderr, (char *) NULL, _IOLBF, 0); (void)HDsetvbuf(stdout, (char *) NULL, _IOLBF, 0); -#if defined __MWERKS__ - argc = ccommand(&argv); -#endif - if ( argv[1] && (strcmp("-V",argv[1])==0) ) { print_version("h5import"); @@ -275,7 +271,7 @@ gtoken(char *s) * Programmer: pkmat * * Modifications: pvn - * 7/23/2007. Added support for STR type + * 7/23/2007. Added support for STR type, extra parameter FILE_ID * *------------------------------------------------------------------------- */ @@ -293,12 +289,53 @@ processDataFile(char *infile, struct Input *in, FILE **strm, hid_t file_id) const char *err10 = "Unrecognized input class type.\n"; const char *err11 = "Error in reading string data.\n"; - if ((*strm = fopen(infile, "r")) == NULL) + /*------------------------------------------------------------------------- + * special case for opening binary classes in WIN32 + * "FP" denotes a floating point binary file, + * "IN" denotes a signed integer binary file, + * "UIN" denotes an unsigned integer binary file, + *------------------------------------------------------------------------- + */ + if ( in->inputClass == 4 /* "IN" */ || + in->inputClass == 3 /* "FP" */ || + in->inputClass == 7 /* "UIN" */ + + ) + { + +#ifdef WIN32 + + if ((*strm = fopen(infile, "rb")) == NULL) + { + (void) fprintf(stderr, err1, infile); + return(-1); + } +#else + + if ((*strm = fopen(infile, "r")) == NULL) + { + (void) fprintf(stderr, err1, infile); + return(-1); + } + +#endif + + } + /*------------------------------------------------------------------------- + * if the input class is not binary, just use "r" + *------------------------------------------------------------------------- + */ + else { - (void) fprintf(stderr, err1, infile); - return(-1); + if ((*strm = fopen(infile, "r")) == NULL) + { + (void) fprintf(stderr, err1, infile); + return(-1); + } } + + switch(in->inputClass) { case 0: /* TEXTIN */ @@ -372,7 +409,7 @@ readIntegerData(FILE **strm, struct Input *in) H5DT_INT8 *in08; H5DT_INT16 *in16, temp; H5DT_INT32 *in32; -#ifndef _WIN32 +#ifndef WIN32 H5DT_INT64 *in64; char buffer[256]; #endif diff --git a/tools/h5import/h5importtest.c b/tools/h5import/h5importtest.c index 2a8c827..9272632 100755 --- a/tools/h5import/h5importtest.c +++ b/tools/h5import/h5importtest.c @@ -21,271 +21,378 @@ * h5importtest * * Description: - * This program creates files that can be + * This program creates that can be * used to test the h5import program. * */ -/* - * Define names for test files - */ int main(void) { - int nrow = 3, ncol = 4, npln = 5; - int i, j, k; - FILE *sp; - + int nrow = 3, ncol = 4, npln = 5; + int i, j, k; + FILE *sp; + float b32r3[5][3][4]; float row4[3], col4[4], pln4[5]; float rowo4 = (float)11.0e0, colo4 = (float)21.0e0, plno4 = (float)51.0e0; float rowi4 = (float)1.0e0, coli4 = (float)2.0e0, plni4 = (float)5.0e0; - - int b32i3[5][3][4]; - int row4i[3], col4i[4], pln4i[5]; - int rowo4i = (int)11 , colo4i = (int)21 , plno4i = (int)51 ; - int rowi4i = (int)1 , coli4i = (int)2 , plni4i = (int)5 ; - -#ifndef _WIN32 - long_long b64i2[3][4], b64i3[5][3][4]; - long_long row4i64[3], col4i64[4], pln4i64[5]; - long_long rowo4i64 = (long_long)11 , colo4i64 = (long_long)21 , plno4i64 = (long_long)51 ; - long_long rowi4i64 = (long_long)1 , coli4i64 = (long_long)2 , plni4i64 = (long_long)5 ; + + int b32i3[5][3][4]; + int row4i[3], col4i[4], pln4i[5]; + int rowo4i = (int)11 , colo4i = (int)21 , plno4i = (int)51 ; + int rowi4i = (int)1 , coli4i = (int)2 , plni4i = (int)5 ; + +#ifndef WIN32 + long_long b64i2[3][4], b64i3[5][3][4]; + long_long row4i64[3], col4i64[4], pln4i64[5]; + long_long rowo4i64 = (long_long)11 , colo4i64 = (long_long)21 , plno4i64 = (long_long)51 ; + long_long rowi4i64 = (long_long)1 , coli4i64 = (long_long)2 , plni4i64 = (long_long)5 ; #endif - + short b16i3[5][3][4]; short row4i16[3], col4i16[4], pln4i16[5]; short rowo4i16 = (short)11 , colo4i16 = (short)21 , plno4i16 = (short)51 ; short rowi4i16 = (short)1 , coli4i16 = (short)2 , plni4i16 = (short)5 ; - - char b8i3[5][3][4]; - char row4i8[3], col4i8[4], pln4i8[5]; - char rowo4i8 = (char)11 , colo4i8 = (char)21 , plno4i8 = (char)51 ; - char rowi4i8 = (char)1 , coli4i8 = (char)2 , plni4i8 = (char)5 ; - - double b64r3[5][3][4]; - double row8[3], col8[4], pln8[5]; - double rowo8 = 11.0e0, colo8 = 21.0e0, plno8 = 51.0e0; - double rowi8 = 1.0e0, coli8 = 2.0e0, plni8 = 5.0e0; - - + + char b8i3[5][3][4]; + char row4i8[3], col4i8[4], pln4i8[5]; + char rowo4i8 = (char)11 , colo4i8 = (char)21 , plno4i8 = (char)51 ; + char rowi4i8 = (char)1 , coli4i8 = (char)2 , plni4i8 = (char)5 ; + + double b64r3[5][3][4]; + double row8[3], col8[4], pln8[5]; + double rowo8 = 11.0e0, colo8 = 21.0e0, plno8 = 51.0e0; + double rowi8 = 1.0e0, coli8 = 2.0e0, plni8 = 5.0e0; + + /* - * initialize the row, column, and plane vectors - * - * row values start at 11 and increment by 1 => 11, 12, 13 - * column values start at 21 and increment by 2 => 21, 23, 25, 27 - * plane values start at 51 and increment by 5 => 51, 56, 61, 66, 71 - */ - - + * initialize the row, column, and plane vectors + * + * row values start at 11 and increment by 1 => 11, 12, 13 + * column values start at 21 and increment by 2 => 21, 23, 25, 27 + * plane values start at 51 and increment by 5 => 51, 56, 61, 66, 71 + */ + + /* - * build array elements - rank 2 - * - * element value = sum of row value and col values - */ - + * build array elements - rank 2 + * + * element value = sum of row value and col values + */ + row4[0] = rowo4; col4[0] = colo4; pln4[0] = plno4; - + row8[0] = rowo8; col8[0] = colo8; pln8[0] = plno8; - + row4i[0] = rowo4i; col4i[0] = colo4i; pln4i[0] = plno4i; - -#ifndef _WIN32 + +#ifndef WIN32 row4i64[0] = rowo4i64; col4i64[0] = colo4i64; pln4i64[0] = plno4i64; #endif - + row4i16[0] = rowo4i16; col4i16[0] = colo4i16; pln4i16[0] = plno4i16; - + row4i8[0] = rowo4i8; col4i8[0] = colo4i8; pln4i8[0] = plno4i8; - + for (i = 1; i < nrow; i++) { row4[i] = row4[i - 1] + rowi4; row8[i] = row8[i - 1] + rowi8; row4i[i] = row4i[i - 1] + rowi4i; -#ifndef _WIN32 - row4i64[i] = row4i64[i - 1] + rowi4i64; +#ifndef WIN32 + row4i64[i] = row4i64[i - 1] + rowi4i64; #endif - row4i16[i] = row4i16[i - 1] + rowi4i16; - row4i8[i] = row4i8[i - 1] + rowi4i8; + row4i16[i] = row4i16[i - 1] + rowi4i16; + row4i8[i] = row4i8[i - 1] + rowi4i8; } for (j = 1; j < ncol; j++) { - col4[j] = col4[j - 1] + coli4; - col8[j] = col8[j - 1] + coli8; - col4i[j] = col4i[j - 1] + coli4i; -#ifndef _WIN32 - col4i64[j] = col4i64[j - 1] + coli4i64; + col4[j] = col4[j - 1] + coli4; + col8[j] = col8[j - 1] + coli8; + col4i[j] = col4i[j - 1] + coli4i; +#ifndef WIN32 + col4i64[j] = col4i64[j - 1] + coli4i64; #endif - col4i16[j] = col4i16[j - 1] + coli4i16; - col4i8[j] = col4i8[j - 1] + coli4i8; + col4i16[j] = col4i16[j - 1] + coli4i16; + col4i8[j] = col4i8[j - 1] + coli4i8; } for (k = 1; k < npln; k++) { - pln4[k] = pln4[k - 1] + plni4; - pln8[k] = pln8[k - 1] + plni8; - pln4i[k] = pln4i[k - 1] + plni4i; -#ifndef _WIN32 - pln4i64[k] = pln4i64[k - 1] + plni4i64; + pln4[k] = pln4[k - 1] + plni4; + pln8[k] = pln8[k - 1] + plni8; + pln4i[k] = pln4i[k - 1] + plni4i; +#ifndef WIN32 + pln4i64[k] = pln4i64[k - 1] + plni4i64; #endif - pln4i16[k] = pln4i16[k - 1] + plni4i16; - pln4i8[k] = pln4i8[k - 1] + plni4i8; - } - - for (i = 0; i < nrow; i++) - { - for (j = 0; j < ncol; j++) - { -#ifndef _WIN32 - b64i2[i][j] = row4i64[i] + col4i64[j]; + pln4i16[k] = pln4i16[k - 1] + plni4i16; + pln4i8[k] = pln4i8[k - 1] + plni4i8; + } + + for (i = 0; i < nrow; i++) + { + for (j = 0; j < ncol; j++) + { +#ifndef WIN32 + b64i2[i][j] = row4i64[i] + col4i64[j]; #endif - } - } + } + } /* - * build array elements - rank 3 - * - * element value = sum of row value, col, and plane values - */ - + * build array elements - rank 3 + * + * element value = sum of row value, col, and plane values + */ + for (i = 0; i < nrow; i++) - { - for (j = 0; j < ncol; j++) + { + for (j = 0; j < ncol; j++) + { + for (k = 0; k < npln; k++) { - for (k = 0; k < npln; k++) - { - b32r3[k][i][j] = row4[i] + col4[j] + pln4[k]; - b64r3[k][i][j] = row8[i] + col8[j] + pln8[k]; - b32i3[k][i][j] = row4i[i] + col4i[j] + pln4i[k]; -#ifndef _WIN32 - b64i3[k][i][j] = row4i64[i] + col4i64[j] + pln4i64[k]; + b32r3[k][i][j] = row4[i] + col4[j] + pln4[k]; + b64r3[k][i][j] = row8[i] + col8[j] + pln8[k]; + b32i3[k][i][j] = row4i[i] + col4i[j] + pln4i[k]; +#ifndef WIN32 + b64i3[k][i][j] = row4i64[i] + col4i64[j] + pln4i64[k]; #endif - b16i3[k][i][j] = row4i16[i] + col4i16[j] + pln4i16[k]; - b8i3[k][i][j] = row4i8[i] + col4i8[j] + pln4i8[k]; - } + b16i3[k][i][j] = row4i16[i] + col4i16[j] + pln4i16[k]; + b8i3[k][i][j] = row4i8[i] + col4i8[j] + pln4i8[k]; } - } + } + } - /* - * binary 32-bit file - rank 2 & 3 - */ + #ifndef UNICOS - sp = fopen("txtin16", "w"); - for (k = 0; k < npln; k++) - for (i = 0; i < nrow; i++) + + /*------------------------------------------------------------------------- + * TOOLTEST txtin16.txt -c $srcdir/testfiles/txtin16.conf -o txtin16.h5 + *------------------------------------------------------------------------- + */ + + + sp = fopen("txtin16.txt", "w"); + for (k = 0; k < npln; k++) + { + for (i = 0; i < nrow; i++) { - for (j = 0; j < ncol; j++) - (void) fprintf(sp, "%10u", b16i3[k][i][j]); - (void) fprintf(sp, "\n"); + for (j = 0; j < ncol; j++) + (void) fprintf(sp, "%10u", b16i3[k][i][j]); + (void) fprintf(sp, "\n"); } + } (void) fclose(sp); - sp = fopen("txtin32", "w"); - for (k = 0; k < npln; k++) - for (i = 0; i < nrow; i++) + /*------------------------------------------------------------------------- + * TOOLTEST txtin32.txt -c $srcdir/testfiles/textin32.conf -o textin32.h5 + *------------------------------------------------------------------------- + */ + + sp = fopen("txtin32.txt", "w"); + for (k = 0; k < npln; k++) + { + for (i = 0; i < nrow; i++) { - for (j = 0; j < ncol; j++) - (void) fprintf(sp, "%10d", b32i3[k][i][j]); - (void) fprintf(sp, "\n"); + for (j = 0; j < ncol; j++) + (void) fprintf(sp, "%10d", b32i3[k][i][j]); + (void) fprintf(sp, "\n"); } - (void) fclose(sp); + } + (void) fclose(sp); + + /*------------------------------------------------------------------------- + * TOOLTEST binin32.bin -c $srcdir/testfiles/binin32.conf -o binin32.h5 + *------------------------------------------------------------------------- + */ - sp = fopen("bin32", "w"); +#ifdef WIN32 + sp = fopen("binin32.bin", "wb"); +#else + sp = fopen("binin32.bin", "w"); +#endif for (k = 0; k < npln; k++) - for (i = 0; i < nrow; i++) - for (j = 0; j < ncol; j++) - (void) fwrite((char *) &b32i3[k][i][j], sizeof(int), 1, sp); + { + for (i = 0; i < nrow; i++) + { + for (j = 0; j < ncol; j++) + { + (void) fwrite((char *) &b32i3[k][i][j], sizeof(int), 1, sp); + } + } + } (void) fclose(sp); + /*------------------------------------------------------------------------- + * TOOLTEST binuin32.bin -c $srcdir/testfiles/binuin32.conf -o binuin32.h5 + *------------------------------------------------------------------------- + */ - sp = fopen("buin32", "w"); +#ifdef WIN32 + sp = fopen("binuin32.bin", "wb"); +#else + sp = fopen("binuin32.bin", "w"); +#endif for (k = 0; k < npln; k++) - for (i = 0; i < nrow; i++) - for (j = 0; j < ncol; j++) - (void) fwrite((char *) &b32i3[k][i][j], sizeof(unsigned int), 1, sp); + { + for (i = 0; i < nrow; i++) + { + for (j = 0; j < ncol; j++) + { + (void) fwrite((char *) &b32i3[k][i][j], sizeof(unsigned int), 1, sp); + } + } + } (void) fclose(sp); -#ifndef _WIN32 - sp = fopen("bin64-2", "w"); - for (i = 0; i < nrow; i++) - for (j = 0; j < ncol; j++) - (void) fwrite((char *) &b64i2[i][j], sizeof(long_long), 1, sp); - (void) fclose(sp); -#endif - sp = fopen("bfp32", "w"); + + /*------------------------------------------------------------------------- + * TOOLTEST binin16.bin -c $srcdir/testfiles/binin16.conf -o binin16.h5 + *------------------------------------------------------------------------- + */ + +#ifdef WIN32 + sp = fopen("binin16.bin", "wb"); +#else + sp = fopen("binin16.bin", "w"); +#endif for (k = 0; k < npln; k++) + { for (i = 0; i < nrow; i++) + { for (j = 0; j < ncol; j++) - (void) fwrite((char *) &b32r3[k][i][j], - sizeof(float), 1, sp); + { + (void) fwrite((char *) &b16i3[k][i][j], sizeof(short), 1, sp); + } + } + } (void) fclose(sp); - sp = fopen("bin16", "w"); - for (k = 0; k < npln; k++) - for (i = 0; i < nrow; i++) - for (j = 0; j < ncol; j++) - (void) fwrite((char *) &b16i3[k][i][j], sizeof(short), 1, - sp); + /*------------------------------------------------------------------------- + * TOOLTEST binuin16.bin -c $srcdir/testfiles/binuin16.conf -o binuin16.h5 + *------------------------------------------------------------------------- + */ +#ifdef WIN32 + sp = fopen("binuin16.bin", "wb"); +#else + sp = fopen("binuin16.bin", "w"); +#endif + for (k = 0; k < npln; k++) + { + for (i = 0; i < nrow; i++) + { + for (j = 0; j < ncol; j++) + { + (void) fwrite((char *) &b16i3[k][i][j], sizeof(unsigned short), 1, sp); + } + } + } (void) fclose(sp); - sp = fopen("buin16", "w"); - for (k = 0; k < npln; k++) - for (i = 0; i < nrow; i++) - for (j = 0; j < ncol; j++) - (void) fwrite((char *) &b16i3[k][i][j], sizeof(unsigned short), 1, - sp); - (void) fclose(sp); -#ifndef _WIN32 - sp = fopen("bin64-3", "w"); - for (k = 0; k < npln; k++) - for (i = 0; i < nrow; i++) - for (j = 0; j < ncol; j++) - (void) fwrite((char *) &b64i3[k][i][j], sizeof(long_long), 1, - sp); - (void) fclose(sp); -#endif + /*------------------------------------------------------------------------- + * TOOLTEST binin8.bin -c $srcdir/testfiles/binin8.conf -o binin8.h5 + *------------------------------------------------------------------------- + */ - sp = fopen("bin8", "w"); +#ifdef WIN32 + sp = fopen("binin8.bin", "wb"); +#else + sp = fopen("binin8.bin", "w"); +#endif for (k = 0; k < npln; k++) - for (i = 0; i < nrow; i++) - for (j = 0; j < ncol; j++) - (void) fwrite((char *) &b8i3[k][i][j], sizeof(char), 1, - sp); + { + for (i = 0; i < nrow; i++) + { + for (j = 0; j < ncol; j++) + { + (void) fwrite((char *) &b8i3[k][i][j], sizeof(char), 1, sp); + } + } + } (void) fclose(sp); -#endif +#endif /* UNICOS */ - /* - * binary 64-bit file - rank 2 & 3 - */ - sp = fopen("bfp64", "w"); + + + /*------------------------------------------------------------------------- + * TOOLTEST binfp64.bin -c $srcdir/testfiles/binfp64.conf -o binfp64.h5 + *------------------------------------------------------------------------- + */ + + /* + * binary 64-bit file - rank 2 & 3 + */ + +#ifdef WIN32 + sp = fopen("binfp64.bin", "wb"); +#else + sp = fopen("binfp64.bin", "w"); +#endif for (k = 0; k < npln; k++) + { for (i = 0; i < nrow; i++) + { for (j = 0; j < ncol; j++) - (void) fwrite((char *) &b64r3[k][i][j], - sizeof(double), 1, sp); + { + (void) fwrite((char *) &b64r3[k][i][j], sizeof(double), 1, sp); + } + } + } (void) fclose(sp); + + + + /*------------------------------------------------------------------------- + * TOOLTEST binin8w.bin -c $srcdir/testfiles/binin8w.conf -o binin8w.h5 + *------------------------------------------------------------------------- + */ + + { + /* test CR+LF (13,10) and EOF (26) in windows */ + char bin8w[4] = {13,10,26,0}; + +#ifdef WIN32 + sp = fopen("binin8w.bin", "wb"); +#else + sp = fopen("binin8w.bin", "w"); +#endif + for (i = 0; i < 4; i++) + { + char c = bin8w[i]; + if ( fwrite( &c, sizeof(char), 1, sp) != 1 ) + printf("error writing file\n"); + } + fclose(sp); + + + } + + + + + return (0); } diff --git a/tools/h5import/h5importtestutil.sh b/tools/h5import/h5importtestutil.sh index 0687871..ff7dc35 100755 --- a/tools/h5import/h5importtestutil.sh +++ b/tools/h5import/h5importtestutil.sh @@ -60,49 +60,72 @@ cp $srcdir/testfiles/*.h5 tmp_testfiles/ $RUNSERIAL ./h5importtest TESTING "ASCII I32 rank 3 - Output BE " ; -TOOLTEST txtin32 -c $srcdir/testfiles/textin32 -o test1.h5 +#TOOLTEST txtin32 -c $srcdir/testfiles/textin32 -o test1.h5 +TOOLTEST $srcdir/testfiles/txtin16.txt -c $srcdir/testfiles/txtin32.conf -o txtin32.h5 TESTING "ASCII I16 rank 3 - Output LE - CHUNKED - extended" -TOOLTEST txtin16 -c $srcdir/testfiles/textin16 -o test2.h5 +#TOOLTEST txtin16 -c $srcdir/testfiles/textin16 -o test2.h5 +TOOLTEST $srcdir/testfiles/txtin16.txt -c $srcdir/testfiles/txtin16.conf -o txtin16.h5 + TESTING "ASCII I8 - rank 3 - Output I16 LE-Chunked+Extended+Compressed " -TOOLTEST txtin16 -c $srcdir/testfiles/textin8 -o test3.h5 +#TOOLTEST txtin16 -c $srcdir/testfiles/textin8 -o test3.h5 +TOOLTEST $srcdir/testfiles/txtin16.txt -c $srcdir/testfiles/txtin8.conf -o txtin8.h5 TESTING "ASCII UI32 - rank 3 - Output BE" -TOOLTEST $srcdir/testfiles/in1 -c $srcdir/testfiles/textuin32 -o test4.h5 +#TOOLTEST $srcdir/testfiles/in1 -c $srcdir/testfiles/textuin32 -o test4.h5 +TOOLTEST $srcdir/testfiles/txtuin32.txt -c $srcdir/testfiles/txtuin32.conf -o txtuin32.h5 TESTING "ASCII UI16 - rank 2 - Output LE+Chunked+Compressed " -TOOLTEST $srcdir/testfiles/in1 -c $srcdir/testfiles/textuin16 -o test5.h5 +#TOOLTEST $srcdir/testfiles/in1 -c $srcdir/testfiles/textuin16 -o test5.h5 +TOOLTEST $srcdir/testfiles/txtuin32.txt -c $srcdir/testfiles/txtuin16.conf -o txtuin16.h5 TESTING "ASCII F32 - rank 3 - Output LE " -TOOLTEST $srcdir/testfiles/fp1 -c $srcdir/testfiles/textfp32 -o test6.h5 +#TOOLTEST $srcdir/testfiles/fp1 -c $srcdir/testfiles/textfp32 -o test6.h5 +TOOLTEST $srcdir/testfiles/txtfp32.txt -c $srcdir/testfiles/txtfp32.conf -o txtfp32.h5 + TESTING "ASCII F64 - rank 3 - Output BE + CHUNKED+Extended+Compressed " -TOOLTEST $srcdir/testfiles/fp2 -c $srcdir/testfiles/textfp64 -o test7.h5 +#TOOLTEST $srcdir/testfiles/fp2 -c $srcdir/testfiles/textfp64 -o test7.h5 +TOOLTEST $srcdir/testfiles/txtfp64.txt -c $srcdir/testfiles/txtfp64.conf -o txtfp64.h5 TESTING "BINARY F64 - rank 3 - Output LE+CHUNKED+Extended+Compressed " -TOOLTEST bfp64 -c $srcdir/testfiles/conbfp64 -o test8.h5 +#TOOLTEST bfp64 -c $srcdir/testfiles/conbfp64 -o test8.h5 +TOOLTEST binfp64.bin -c $srcdir/testfiles/binfp64.conf -o binfp64.h5 + TESTING "BINARY I16 - rank 3 - Output order LE + CHUNKED + extended " -TOOLTEST bin16 -c $srcdir/testfiles/conbin16 -o test9.h5 +#TOOLTEST bin16 -c $srcdir/testfiles/conbin16 -o test9.h5 +TOOLTEST binin16.bin -c $srcdir/testfiles/binin16.conf -o binin16.h5 + TESTING "BINARY I8 - rank 3 - Output I16LE + Chunked+Extended+Compressed " -TOOLTEST bin8 -c $srcdir/testfiles/conbin8 -o test10.h5 +#TOOLTEST bin8 -c $srcdir/testfiles/conbin8 -o test10.h5 +TOOLTEST binin8.bin -c $srcdir/testfiles/binin8.conf -o binin8.h5 + TESTING "BINARY I32 - rank 3 - Output BE + CHUNKED " -TOOLTEST bin32 -c $srcdir/testfiles/conbin32 -o test11.h5 +#TOOLTEST bin32 -c $srcdir/testfiles/conbin32 -o test11.h5 +TOOLTEST binin32.bin -c $srcdir/testfiles/binin32.conf -o binin32.h5 + TESTING "BINARY UI16 - rank 3 - Output byte BE + CHUNKED " -TOOLTEST buin16 -c $srcdir/testfiles/conbuin16 -o test12.h5 +#TOOLTEST buin16 -c $srcdir/testfiles/conbuin16 -o test12.h5 +TOOLTEST binuin16.bin -c $srcdir/testfiles/binuin16.conf -o binuin16.h5 TESTING "BINARY UI32 - rank 3 - Output LE + CHUNKED " -TOOLTEST buin32 -c $srcdir/testfiles/conbuin32 -o test13.h5 +#TOOLTEST buin32 -c $srcdir/testfiles/conbuin32 -o test13.h5 +TOOLTEST binuin32.bin -c $srcdir/testfiles/binuin32.conf -o binuin32.h5 + TESTING "STR" -TOOLTEST $srcdir/testfiles/txtstr -c $srcdir/testfiles/textstr -o teststr.h5 +TOOLTEST $srcdir/testfiles/txtstr.txt -c $srcdir/testfiles/txtstr.conf -o txtstr.h5 + +TESTING "BINARY I8 CR LF EOF" +TOOLTEST binin8w.bin -c $srcdir/testfiles/binin8w.conf -o binin8w.h5 + -rm -f tx* b* *.dat -rm -f test*.h5 +rm -f *.txt *.bin *.h5 rm -rf tmp_testfiles else echo "** h5import or h5importtest not available ***" diff --git a/tools/h5import/testfiles/conbfp64 b/tools/h5import/testfiles/binfp64.conf index 6b4c361..6b4c361 100755 --- a/tools/h5import/testfiles/conbfp64 +++ b/tools/h5import/testfiles/binfp64.conf diff --git a/tools/h5import/testfiles/test8.h5 b/tools/h5import/testfiles/binfp64.h5 Binary files differindex 80e3a8a..80e3a8a 100644 --- a/tools/h5import/testfiles/test8.h5 +++ b/tools/h5import/testfiles/binfp64.h5 diff --git a/tools/h5import/testfiles/conbin16 b/tools/h5import/testfiles/binin16.conf index 06869cb..06869cb 100755 --- a/tools/h5import/testfiles/conbin16 +++ b/tools/h5import/testfiles/binin16.conf diff --git a/tools/h5import/testfiles/test9.h5 b/tools/h5import/testfiles/binin16.h5 Binary files differindex 0825bbc..0825bbc 100644 --- a/tools/h5import/testfiles/test9.h5 +++ b/tools/h5import/testfiles/binin16.h5 diff --git a/tools/h5import/testfiles/conbin32 b/tools/h5import/testfiles/binin32.conf index 11996ef..11996ef 100755 --- a/tools/h5import/testfiles/conbin32 +++ b/tools/h5import/testfiles/binin32.conf diff --git a/tools/h5import/testfiles/test11.h5 b/tools/h5import/testfiles/binin32.h5 Binary files differindex fd8faa9..fd8faa9 100644 --- a/tools/h5import/testfiles/test11.h5 +++ b/tools/h5import/testfiles/binin32.h5 diff --git a/tools/h5import/testfiles/conbin8 b/tools/h5import/testfiles/binin8.conf index 1edd80a..1edd80a 100755 --- a/tools/h5import/testfiles/conbin8 +++ b/tools/h5import/testfiles/binin8.conf diff --git a/tools/h5import/testfiles/test10.h5 b/tools/h5import/testfiles/binin8.h5 Binary files differindex a1d1a37..a1d1a37 100644 --- a/tools/h5import/testfiles/test10.h5 +++ b/tools/h5import/testfiles/binin8.h5 diff --git a/tools/h5import/testfiles/binin8w.conf b/tools/h5import/testfiles/binin8w.conf new file mode 100644 index 0000000..fccb4ac --- /dev/null +++ b/tools/h5import/testfiles/binin8w.conf @@ -0,0 +1,9 @@ + +INPUT-CLASS IN +INPUT-SIZE 8 +RANK 1 +DIMENSION-SIZES 4 +OUTPUT-BYTE-ORDER LE +OUTPUT-CLASS IN +OUTPUT-SIZE 8 +OUTPUT-ARCHITECTURE STD diff --git a/tools/h5import/testfiles/binin8w.h5 b/tools/h5import/testfiles/binin8w.h5 Binary files differnew file mode 100644 index 0000000..64acaed --- /dev/null +++ b/tools/h5import/testfiles/binin8w.h5 diff --git a/tools/h5import/testfiles/conbuin16 b/tools/h5import/testfiles/binuin16.conf index a4603df..a4603df 100755 --- a/tools/h5import/testfiles/conbuin16 +++ b/tools/h5import/testfiles/binuin16.conf diff --git a/tools/h5import/testfiles/test12.h5 b/tools/h5import/testfiles/binuin16.h5 Binary files differindex c486c89..c486c89 100644 --- a/tools/h5import/testfiles/test12.h5 +++ b/tools/h5import/testfiles/binuin16.h5 diff --git a/tools/h5import/testfiles/conbuin32 b/tools/h5import/testfiles/binuin32.conf index a649e97..a649e97 100755 --- a/tools/h5import/testfiles/conbuin32 +++ b/tools/h5import/testfiles/binuin32.conf diff --git a/tools/h5import/testfiles/test13.h5 b/tools/h5import/testfiles/binuin32.h5 Binary files differindex 41699d7..41699d7 100644 --- a/tools/h5import/testfiles/test13.h5 +++ b/tools/h5import/testfiles/binuin32.h5 diff --git a/tools/h5import/testfiles/textfp32 b/tools/h5import/testfiles/txtfp32.conf index 9696a7f..9696a7f 100755 --- a/tools/h5import/testfiles/textfp32 +++ b/tools/h5import/testfiles/txtfp32.conf diff --git a/tools/h5import/testfiles/test6.h5 b/tools/h5import/testfiles/txtfp32.h5 Binary files differindex f74e003..f74e003 100644 --- a/tools/h5import/testfiles/test6.h5 +++ b/tools/h5import/testfiles/txtfp32.h5 diff --git a/tools/h5import/testfiles/fp1 b/tools/h5import/testfiles/txtfp32.txt index 142c94f..142c94f 100755 --- a/tools/h5import/testfiles/fp1 +++ b/tools/h5import/testfiles/txtfp32.txt diff --git a/tools/h5import/testfiles/textfp64 b/tools/h5import/testfiles/txtfp64.conf index fbab6a6..fbab6a6 100755 --- a/tools/h5import/testfiles/textfp64 +++ b/tools/h5import/testfiles/txtfp64.conf diff --git a/tools/h5import/testfiles/test7.h5 b/tools/h5import/testfiles/txtfp64.h5 Binary files differindex b6ba4f5..b6ba4f5 100644 --- a/tools/h5import/testfiles/test7.h5 +++ b/tools/h5import/testfiles/txtfp64.h5 diff --git a/tools/h5import/testfiles/fp2 b/tools/h5import/testfiles/txtfp64.txt index 6c83dc3..6c83dc3 100755 --- a/tools/h5import/testfiles/fp2 +++ b/tools/h5import/testfiles/txtfp64.txt diff --git a/tools/h5import/testfiles/textin16 b/tools/h5import/testfiles/txtin16.conf index d2d11c3..d2d11c3 100755 --- a/tools/h5import/testfiles/textin16 +++ b/tools/h5import/testfiles/txtin16.conf diff --git a/tools/h5import/testfiles/test2.h5 b/tools/h5import/testfiles/txtin16.h5 Binary files differindex dc6c1ea..dc6c1ea 100644 --- a/tools/h5import/testfiles/test2.h5 +++ b/tools/h5import/testfiles/txtin16.h5 diff --git a/tools/h5import/testfiles/in1 b/tools/h5import/testfiles/txtin16.txt index 0688e9b..0688e9b 100755..100644 --- a/tools/h5import/testfiles/in1 +++ b/tools/h5import/testfiles/txtin16.txt diff --git a/tools/h5import/testfiles/textin32 b/tools/h5import/testfiles/txtin32.conf index ca4802a..ca4802a 100755 --- a/tools/h5import/testfiles/textin32 +++ b/tools/h5import/testfiles/txtin32.conf diff --git a/tools/h5import/testfiles/test1.h5 b/tools/h5import/testfiles/txtin32.h5 Binary files differindex 350333c..350333c 100644 --- a/tools/h5import/testfiles/test1.h5 +++ b/tools/h5import/testfiles/txtin32.h5 diff --git a/tools/h5import/testfiles/txtin32.txt b/tools/h5import/testfiles/txtin32.txt new file mode 100644 index 0000000..0688e9b --- /dev/null +++ b/tools/h5import/testfiles/txtin32.txt @@ -0,0 +1,15 @@ + 83 85 87 89 + 84 86 88 90 + 85 87 89 91 + 88 90 92 94 + 89 91 93 95 + 90 92 94 96 + 93 95 97 99 + 94 96 98 100 + 95 97 99 101 + 98 100 102 104 + 99 101 103 105 + 100 102 104 106 + 103 105 107 109 + 104 106 108 110 + 105 107 109 111 diff --git a/tools/h5import/testfiles/textin8 b/tools/h5import/testfiles/txtin8.conf index 4405338..4405338 100755 --- a/tools/h5import/testfiles/textin8 +++ b/tools/h5import/testfiles/txtin8.conf diff --git a/tools/h5import/testfiles/test3.h5 b/tools/h5import/testfiles/txtin8.h5 Binary files differindex 42e7727..42e7727 100644 --- a/tools/h5import/testfiles/test3.h5 +++ b/tools/h5import/testfiles/txtin8.h5 diff --git a/tools/h5import/testfiles/textstr b/tools/h5import/testfiles/txtstr.conf index 85079e0..85079e0 100644 --- a/tools/h5import/testfiles/textstr +++ b/tools/h5import/testfiles/txtstr.conf diff --git a/tools/h5import/testfiles/teststr.h5 b/tools/h5import/testfiles/txtstr.h5 Binary files differindex ceb0810..ceb0810 100644 --- a/tools/h5import/testfiles/teststr.h5 +++ b/tools/h5import/testfiles/txtstr.h5 diff --git a/tools/h5import/testfiles/txtstr b/tools/h5import/testfiles/txtstr.txt index 25be0a6..25be0a6 100644 --- a/tools/h5import/testfiles/txtstr +++ b/tools/h5import/testfiles/txtstr.txt diff --git a/tools/h5import/testfiles/textuin16 b/tools/h5import/testfiles/txtuin16.conf index 753e6e8..753e6e8 100755 --- a/tools/h5import/testfiles/textuin16 +++ b/tools/h5import/testfiles/txtuin16.conf diff --git a/tools/h5import/testfiles/test5.h5 b/tools/h5import/testfiles/txtuin16.h5 Binary files differindex 9ee166a..9ee166a 100644 --- a/tools/h5import/testfiles/test5.h5 +++ b/tools/h5import/testfiles/txtuin16.h5 diff --git a/tools/h5import/testfiles/textuin32 b/tools/h5import/testfiles/txtuin32.conf index d61e1a1..d61e1a1 100755 --- a/tools/h5import/testfiles/textuin32 +++ b/tools/h5import/testfiles/txtuin32.conf diff --git a/tools/h5import/testfiles/test4.h5 b/tools/h5import/testfiles/txtuin32.h5 Binary files differindex 1a4dda5..1a4dda5 100644 --- a/tools/h5import/testfiles/test4.h5 +++ b/tools/h5import/testfiles/txtuin32.h5 diff --git a/tools/h5import/testfiles/txtuin32.txt b/tools/h5import/testfiles/txtuin32.txt new file mode 100755 index 0000000..0688e9b --- /dev/null +++ b/tools/h5import/testfiles/txtuin32.txt @@ -0,0 +1,15 @@ + 83 85 87 89 + 84 86 88 90 + 85 87 89 91 + 88 90 92 94 + 89 91 93 95 + 90 92 94 96 + 93 95 97 99 + 94 96 98 100 + 95 97 99 101 + 98 100 102 104 + 99 101 103 105 + 100 102 104 106 + 103 105 107 109 + 104 106 108 110 + 105 107 109 111 |