mirror of
https://github.com/HDFGroup/hdf5.git
synced 2025-01-30 15:32:37 +08:00
[svn-r12713]
added new tests with different datatypes for h5dump binary output tested: kagiso
This commit is contained in:
parent
16fe9dbb82
commit
e23d2acad8
@ -5563,33 +5563,73 @@ error:
|
||||
* Contains:
|
||||
* 1) an integer dataset
|
||||
* 2) a float dataset
|
||||
* 3) an array dataset
|
||||
* 4) a large double dataset
|
||||
*
|
||||
*-------------------------------------------------------------------------
|
||||
*/
|
||||
static void gent_binary()
|
||||
{
|
||||
hid_t fid, sid, idid, fdid;
|
||||
hid_t fid, sid, did, tid;
|
||||
hsize_t dims[1] = {6};
|
||||
hsize_t dimarray[1] = {2};
|
||||
hsize_t dimsl[1] = {100000};
|
||||
int ibuf[6] = {1,2,3,4,5,6};
|
||||
float fbuf[6] = {1,2,3,4,5,6};
|
||||
int abuf[2][6] = {{1,2,3,4,5,6},{7,8,9,10,11,12}}; /* array */
|
||||
double *dbuf=NULL;
|
||||
|
||||
fid = H5Fcreate(FILE55, H5F_ACC_TRUNC, H5P_DEFAULT, H5P_DEFAULT);
|
||||
|
||||
/* create dataspace */
|
||||
|
||||
/*-------------------------------------------------------------------------
|
||||
* integer
|
||||
*-------------------------------------------------------------------------
|
||||
*/
|
||||
sid = H5Screate_simple(1, dims, NULL);
|
||||
|
||||
/* create datasets */
|
||||
idid = H5Dcreate(fid, "integer", H5T_NATIVE_INT, sid, H5P_DEFAULT);
|
||||
fdid = H5Dcreate(fid, "float", H5T_NATIVE_FLOAT, sid, H5P_DEFAULT);
|
||||
|
||||
/* write */
|
||||
H5Dwrite(idid, H5T_NATIVE_INT, H5S_ALL, H5S_ALL, H5P_DEFAULT, ibuf);
|
||||
H5Dwrite(fdid, H5T_NATIVE_FLOAT, H5S_ALL, H5S_ALL, H5P_DEFAULT, fbuf);
|
||||
|
||||
/* close */
|
||||
did = H5Dcreate(fid, "integer", H5T_NATIVE_INT, sid, H5P_DEFAULT);
|
||||
H5Dwrite(did, H5T_NATIVE_INT, H5S_ALL, H5S_ALL, H5P_DEFAULT, ibuf);
|
||||
H5Dclose(did);
|
||||
H5Sclose(sid);
|
||||
H5Dclose(idid);
|
||||
H5Dclose(fdid);
|
||||
|
||||
/*-------------------------------------------------------------------------
|
||||
* float
|
||||
*-------------------------------------------------------------------------
|
||||
*/
|
||||
sid = H5Screate_simple(1, dims, NULL);
|
||||
did = H5Dcreate(fid, "float", H5T_NATIVE_FLOAT, sid, H5P_DEFAULT);
|
||||
H5Dwrite(did, H5T_NATIVE_FLOAT, H5S_ALL, H5S_ALL, H5P_DEFAULT, fbuf);
|
||||
H5Dclose(did);
|
||||
H5Sclose(sid);
|
||||
|
||||
/*-------------------------------------------------------------------------
|
||||
* array
|
||||
*-------------------------------------------------------------------------
|
||||
*/
|
||||
tid = H5Tarray_create(H5T_NATIVE_INT,1,dims,NULL);
|
||||
sid = H5Screate_simple(1, dimarray, NULL);
|
||||
did = H5Dcreate(fid, "array", tid, sid, H5P_DEFAULT);
|
||||
H5Dwrite(did, tid, H5S_ALL, H5S_ALL, H5P_DEFAULT, abuf);
|
||||
H5Dclose(did);
|
||||
H5Tclose(tid);
|
||||
H5Sclose(sid);
|
||||
|
||||
/*-------------------------------------------------------------------------
|
||||
* double
|
||||
*-------------------------------------------------------------------------
|
||||
*/
|
||||
sid = H5Screate_simple(1, dimsl, NULL);
|
||||
did = H5Dcreate(fid, "double", H5T_NATIVE_DOUBLE, sid, H5P_DEFAULT);
|
||||
dbuf=calloc(100000,sizeof(double));
|
||||
if (dbuf!=NULL)
|
||||
{
|
||||
H5Dwrite(did, H5T_NATIVE_DOUBLE, H5S_ALL, H5S_ALL, H5P_DEFAULT, dbuf);
|
||||
free(dbuf);
|
||||
}
|
||||
H5Dclose(did);
|
||||
H5Sclose(sid);
|
||||
|
||||
/* close */
|
||||
H5Fclose(fid);
|
||||
}
|
||||
|
||||
|
@ -323,10 +323,10 @@ TOOLTEST tlonglinks.ddl tlonglinks.h5
|
||||
TOOLTEST tvms.ddl tvms.h5
|
||||
|
||||
# test for binary output
|
||||
TOOLTEST tbin1.ddl -d integer -o out1.bin -b MEMORY tbinary.h5
|
||||
TOOLTEST tbin2.ddl -d float -o out2.bin -b FILE tbinary.h5
|
||||
TOOLTEST tbin3.ddl -d integer -o out3.bin -b LE tbinary.h5
|
||||
TOOLTEST tbin4.ddl -d float -o out4.bin -b BE tbinary.h5
|
||||
TOOLTEST tbin1.ddl -d integer -o out1.bin -b LE tbinary.h5
|
||||
TOOLTEST tbin2.ddl -d float -o out2.bin -b BE tbinary.h5
|
||||
TOOLTEST tbin3.ddl -d array -o out3.bin -b MEMORY tbinary.h5
|
||||
TOOLTEST tbin4.ddl -d double -o out4.bin -b FILE tbinary.h5
|
||||
# Clean up binary output files
|
||||
if test -z "$HDF5_NOCLEANUP"; then
|
||||
rm -f $srcdir/../testfiles/out[1-4].bin
|
||||
|
@ -1,5 +1,5 @@
|
||||
#############################
|
||||
Expected output for 'h5dump -d integer -o out1.bin -b MEMORY tbinary.h5'
|
||||
Expected output for 'h5dump -d integer -o out1.bin -b LE tbinary.h5'
|
||||
#############################
|
||||
HDF5 "tbinary.h5" {
|
||||
DATASET "integer" {
|
||||
|
@ -1,5 +1,5 @@
|
||||
#############################
|
||||
Expected output for 'h5dump -d float -o out2.bin -b FILE tbinary.h5'
|
||||
Expected output for 'h5dump -d float -o out2.bin -b BE tbinary.h5'
|
||||
#############################
|
||||
HDF5 "tbinary.h5" {
|
||||
DATASET "float" {
|
||||
|
@ -1,10 +1,10 @@
|
||||
#############################
|
||||
Expected output for 'h5dump -d integer -o out3.bin -b LE tbinary.h5'
|
||||
Expected output for 'h5dump -d array -o out3.bin -b MEMORY tbinary.h5'
|
||||
#############################
|
||||
HDF5 "tbinary.h5" {
|
||||
DATASET "integer" {
|
||||
DATATYPE H5T_STD_I32LE
|
||||
DATASPACE SIMPLE { ( 6 ) / ( 6 ) }
|
||||
DATASET "array" {
|
||||
DATATYPE H5T_ARRAY { [6] H5T_STD_I32LE }
|
||||
DATASPACE SIMPLE { ( 2 ) / ( 2 ) }
|
||||
DATA {
|
||||
}
|
||||
}
|
||||
|
@ -1,10 +1,10 @@
|
||||
#############################
|
||||
Expected output for 'h5dump -d float -o out4.bin -b BE tbinary.h5'
|
||||
Expected output for 'h5dump -d double -o out4.bin -b FILE tbinary.h5'
|
||||
#############################
|
||||
HDF5 "tbinary.h5" {
|
||||
DATASET "float" {
|
||||
DATATYPE H5T_IEEE_F32LE
|
||||
DATASPACE SIMPLE { ( 6 ) / ( 6 ) }
|
||||
DATASET "double" {
|
||||
DATATYPE H5T_IEEE_F64LE
|
||||
DATASPACE SIMPLE { ( 100000 ) / ( 100000 ) }
|
||||
DATA {
|
||||
}
|
||||
}
|
||||
|
Binary file not shown.
Loading…
Reference in New Issue
Block a user