summaryrefslogtreecommitdiffstats
path: root/tools
diff options
context:
space:
mode:
authorAllen Byrne <byrn@hdfgroup.org>2011-01-05 20:18:16 (GMT)
committerAllen Byrne <byrn@hdfgroup.org>2011-01-05 20:18:16 (GMT)
commitf3c2eb9acfd1242618bc314efffac1e0471727e9 (patch)
tree2ac2051021d8ea1f7e113518eb79352feb957d2e /tools
parent5f00939eb90d3074c5ce2cfe3526cfc2e147bf88 (diff)
downloadhdf5-f3c2eb9acfd1242618bc314efffac1e0471727e9.zip
hdf5-f3c2eb9acfd1242618bc314efffac1e0471727e9.tar.gz
hdf5-f3c2eb9acfd1242618bc314efffac1e0471727e9.tar.bz2
[svn-r19918] Add hh modifier to signed char printf format string. Added h5dump test to verify that signed/unsigned datasets print correctly.
Bring solution from 1.8 packed bits fix which solved problem on heiwa with Signed char of 8 bits Tested: local linux
Diffstat (limited to 'tools')
-rw-r--r--tools/h5dump/CMakeLists.txt6
-rw-r--r--tools/h5dump/h5dump.c6
-rw-r--r--tools/h5dump/h5dumpgentest.c208
-rw-r--r--tools/h5dump/testh5dump.sh.in2
-rw-r--r--tools/lib/h5tools.c2
-rw-r--r--tools/lib/h5tools_str.c2
-rw-r--r--tools/testfiles/packedbits.ddl572
-rw-r--r--tools/testfiles/packedbits.h5bin0 -> 15968 bytes
8 files changed, 793 insertions, 5 deletions
diff --git a/tools/h5dump/CMakeLists.txt b/tools/h5dump/CMakeLists.txt
index 6f4ea22..2a74419 100644
--- a/tools/h5dump/CMakeLists.txt
+++ b/tools/h5dump/CMakeLists.txt
@@ -38,6 +38,7 @@ IF (BUILD_TESTING)
# Copy all the HDF5 files from the test directory into the source directory
# --------------------------------------------------------------------
SET (HDF5_REFERENCE_FILES
+ packedbits.ddl
tall-1.ddl
tall-2.ddl
tall-2A.ddl
@@ -217,6 +218,7 @@ IF (BUILD_TESTING)
tbin3.ddl
tbin4.ddl
out3.h5import
+ packedbits.h5
taindices.h5
tall.h5
tarray1.h5
@@ -476,6 +478,8 @@ IF (BUILD_TESTING)
NAME H5DUMP-clearall-objects
COMMAND ${CMAKE_COMMAND}
-E remove
+ packedbits.out
+ packedbits.out.err
tall-1.out
tall-1.out.err
tall-2.out
@@ -699,6 +703,8 @@ IF (BUILD_TESTING)
ADD_TEST (NAME H5DUMP-thlink COMMAND h5dump thlink.h5)
ENDIF (HDF5_ENABLE_USING_MEMCHECKER)
+ # test for signed/unsigned datasets
+ ADD_H5_TEST (packedbits 0 packedbits.h5)
# test for displaying groups
ADD_H5_TEST (tgroup-1 0 tgroup.h5)
# test for displaying the selected groups
diff --git a/tools/h5dump/h5dump.c b/tools/h5dump/h5dump.c
index 261fe15..33750f3 100644
--- a/tools/h5dump/h5dump.c
+++ b/tools/h5dump/h5dump.c
@@ -132,7 +132,7 @@ static h5tool_format_t dataformat = {
"", /*fmt_raw */
"%d", /*fmt_int */
"%u", /*fmt_uint */
- "%d", /*fmt_schar */
+ "%hhd", /*fmt_schar */
"%u", /*fmt_uchar */
"%d", /*fmt_short */
"%u", /*fmt_ushort */
@@ -216,7 +216,7 @@ static h5tool_format_t xml_dataformat = {
"", /*fmt_raw */
"%d", /*fmt_int */
"%u", /*fmt_uint */
- "%d", /*fmt_schar */
+ "%hhd", /*fmt_schar */
"%u", /*fmt_uchar */
"%d", /*fmt_short */
"%u", /*fmt_ushort */
@@ -3988,7 +3988,7 @@ parse_start:
leave(EXIT_SUCCESS);
break;
case 'w':
- nCols = atoi(opt_arg);
+ nCols = HDatoi(opt_arg);
last_was_dset = FALSE;
break;
case 'a':
diff --git a/tools/h5dump/h5dumpgentest.c b/tools/h5dump/h5dumpgentest.c
index 95caa5e..7701651 100644
--- a/tools/h5dump/h5dumpgentest.c
+++ b/tools/h5dump/h5dumpgentest.c
@@ -95,6 +95,7 @@
/*#define FILE64 "tarray8.h5"*/
#define FILE65 "tattrreg.h5"
#define FILE66 "file_space.h5"
+#define FILE67 "packedbits.h5"
@@ -253,6 +254,22 @@ typedef struct s1_t {
#define STRATEGY H5F_FILE_SPACE_AGGR_VFD /* File space handling strategy */
#define THRESHOLD10 10 /* Free space section threshold */
+/* "FILE67" macros */
+#define F67_XDIM 8
+#define F67_DATASETU08 "DU08BITS"
+#define F67_DATASETS08 "DS08BITS"
+#define F67_YDIM8 8
+#define F67_DATASETU16 "DU16BITS"
+#define F67_DATASETS16 "DS16BITS"
+#define F67_YDIM16 16
+#define F67_DATASETU32 "DU32BITS"
+#define F67_DATASETS32 "DS32BITS"
+#define F67_YDIM32 32
+#define F67_DATASETU64 "DU64BITS"
+#define F67_DATASETS64 "DS64BITS"
+#define F67_YDIM64 64
+#define F67_DUMMYDBL "DummyDBL"
+
static void
gent_group(void)
{
@@ -6775,6 +6792,196 @@ gent_fs_strategy_threshold(void)
}
/*-------------------------------------------------------------------------
+ * Function: gent_packedbits
+ *
+ * Purpose: Generate a file to be used in the h5dump packed bits tests.
+ * Three datasets of 1, 2 and 4 bytes of unsigned int types are created.
+ * Three more datasets of 1, 2 and 4 bytes of signed int types are created.
+ * Fill them with raw data such that no bit will be all zero in a dataset.
+ * A dummy dataset of double type is created for failure test.
+ * Created: Albert Cheng, 2010/5/10.
+ * Modified: Allen Byrne, 2011/1/5 Use file to test Signed/Unsigned datatypes
+ *-------------------------------------------------------------------------
+ */
+static void
+gent_packedbits(void)
+{
+ hid_t fid, dataset, space;
+ hsize_t dims[2];
+ uint8_t dsetu8[F67_XDIM][F67_YDIM8], valu8bits;
+ uint16_t dsetu16[F67_XDIM][F67_YDIM16], valu16bits;
+ uint32_t dsetu32[F67_XDIM][F67_YDIM32], valu32bits;
+ uint64_t dsetu64[F67_XDIM][F67_YDIM64], valu64bits;
+ int8_t dset8[F67_XDIM][F67_YDIM8], val8bits;
+ int16_t dset16[F67_XDIM][F67_YDIM16], val16bits;
+ int32_t dset32[F67_XDIM][F67_YDIM32], val32bits;
+ int64_t dset64[F67_XDIM][F67_YDIM64], val64bits;
+ double dsetdbl[F67_XDIM][F67_YDIM8];
+ unsigned int i, j;
+
+ fid = H5Fcreate(FILE66, H5F_ACC_TRUNC, H5P_DEFAULT, H5P_DEFAULT);
+
+ /* Dataset of 8 bits unsigned int */
+ dims[0] = F67_XDIM; dims[1] = F67_YDIM8;
+ space = H5Screate_simple(2, dims, NULL);
+ dataset = H5Dcreate2(fid, F67_DATASETU08, H5T_STD_U8LE, space, H5P_DEFAULT, H5P_DEFAULT, H5P_DEFAULT);
+
+ valu8bits = (uint8_t) ~0u; /* all 1s */
+ for(i = 0; i < dims[0]; i++){
+ dsetu8[i][0] = valu8bits;
+ for(j = 1; j < dims[1]; j++) {
+ dsetu8[i][j] = dsetu8[i][j-1] << 1;
+ }
+ valu8bits <<= 1;
+ }
+
+ H5Dwrite(dataset, H5T_NATIVE_UINT8, H5S_ALL, H5S_ALL, H5P_DEFAULT, dsetu8);
+ H5Sclose(space);
+ H5Dclose(dataset);
+
+ /* Dataset of 16 bits unsigned int */
+ dims[0] = F67_XDIM; dims[1] = F67_YDIM16;
+ space = H5Screate_simple(2, dims, NULL);
+ dataset = H5Dcreate2(fid, F67_DATASETU16, H5T_STD_U16LE, space, H5P_DEFAULT, H5P_DEFAULT, H5P_DEFAULT);
+
+ valu16bits = (uint16_t) ~0u; /* all 1s */
+ for(i = 0; i < dims[0]; i++){
+ dsetu16[i][0] = valu16bits;
+ for(j = 1; j < dims[1]; j++) {
+ dsetu16[i][j] = dsetu16[i][j-1] << 1;
+ }
+ valu16bits <<= 1;
+ }
+
+ H5Dwrite(dataset, H5T_NATIVE_UINT16, H5S_ALL, H5S_ALL, H5P_DEFAULT, dsetu16);
+ H5Sclose(space);
+ H5Dclose(dataset);
+
+ /* Dataset of 32 bits unsigned int */
+ dims[0] = F67_XDIM; dims[1] = F67_YDIM32;
+ space = H5Screate_simple(2, dims, NULL);
+ dataset = H5Dcreate2(fid, F67_DATASETU32, H5T_STD_U32LE, space, H5P_DEFAULT, H5P_DEFAULT, H5P_DEFAULT);
+
+ valu32bits = (uint32_t) ~0u; /* all 1s */
+ for(i = 0; i < dims[0]; i++){
+ dsetu32[i][0] = valu32bits;
+ for(j = 1; j < dims[1]; j++) {
+ dsetu32[i][j] = dsetu32[i][j-1] << 1;
+ }
+ valu32bits <<= 1;
+ }
+
+ H5Dwrite(dataset, H5T_NATIVE_UINT32, H5S_ALL, H5S_ALL, H5P_DEFAULT, dsetu32);
+ H5Sclose(space);
+ H5Dclose(dataset);
+
+ /* Dataset of 64 bits unsigned int */
+ dims[0] = F67_XDIM; dims[1] = F67_YDIM64;
+ space = H5Screate_simple(2, dims, NULL);
+ dataset = H5Dcreate2(fid, F67_DATASETU64, H5T_STD_U64LE, space, H5P_DEFAULT, H5P_DEFAULT, H5P_DEFAULT);
+
+ valu64bits = (uint64_t) ~0Lu; /* all 1s */
+ for(i = 0; i < dims[0]; i++){
+ dsetu64[i][0] = valu64bits;
+ for(j = 1; j < dims[1]; j++) {
+ dsetu64[i][j] = dsetu64[i][j-1] << 1;
+ }
+ valu64bits <<= 1;
+ }
+
+ H5Dwrite(dataset, H5T_NATIVE_UINT64, H5S_ALL, H5S_ALL, H5P_DEFAULT, dsetu64);
+ H5Sclose(space);
+ H5Dclose(dataset);
+
+ /* Dataset of 8 bits signed int */
+ dims[0] = F67_XDIM; dims[1] = F67_YDIM8;
+ space = H5Screate_simple(2, dims, NULL);
+ dataset = H5Dcreate2(fid, F67_DATASETS08, H5T_STD_I8LE, space, H5P_DEFAULT, H5P_DEFAULT, H5P_DEFAULT);
+
+ val8bits = (int8_t) ~0; /* all 1s */
+ for(i = 0; i < dims[0]; i++){
+ dset8[i][0] = val8bits;
+ for(j = 1; j < dims[1]; j++) {
+ dset8[i][j] = dset8[i][j-1] << 1;
+ }
+ val8bits <<= 1;
+ }
+
+ H5Dwrite(dataset, H5T_NATIVE_INT8, H5S_ALL, H5S_ALL, H5P_DEFAULT, dset8);
+ H5Sclose(space);
+ H5Dclose(dataset);
+
+ /* Dataset of 16 bits signed int */
+ dims[0] = F67_XDIM; dims[1] = F67_YDIM16;
+ space = H5Screate_simple(2, dims, NULL);
+ dataset = H5Dcreate2(fid, F67_DATASETS16, H5T_STD_I16LE, space, H5P_DEFAULT, H5P_DEFAULT, H5P_DEFAULT);
+
+ val16bits = (int16_t) ~0; /* all 1s */
+ for(i = 0; i < dims[0]; i++){
+ dset16[i][0] = val16bits;
+ for(j = 1; j < dims[1]; j++) {
+ dset16[i][j] = dset16[i][j-1] << 1;
+ }
+ val16bits <<= 1;
+ }
+
+ H5Dwrite(dataset, H5T_NATIVE_INT16, H5S_ALL, H5S_ALL, H5P_DEFAULT, dset16);
+ H5Sclose(space);
+ H5Dclose(dataset);
+
+ /* Dataset of 32 bits signed int */
+ dims[0] = F67_XDIM; dims[1] = F67_YDIM32;
+ space = H5Screate_simple(2, dims, NULL);
+ dataset = H5Dcreate2(fid, F67_DATASETS32, H5T_STD_I32LE, space, H5P_DEFAULT, H5P_DEFAULT, H5P_DEFAULT);
+
+ val32bits = (int32_t) ~0; /* all 1s */
+ for(i = 0; i < dims[0]; i++){
+ dset32[i][0] = val32bits;
+ for(j = 1; j < dims[1]; j++) {
+ dset32[i][j] = dset32[i][j-1] << 1;
+ }
+ val32bits <<= 1;
+ }
+
+ H5Dwrite(dataset, H5T_NATIVE_INT32, H5S_ALL, H5S_ALL, H5P_DEFAULT, dset32);
+ H5Sclose(space);
+ H5Dclose(dataset);
+
+ /* Dataset of 64 bits signed int */
+ dims[0] = F67_XDIM; dims[1] = F67_YDIM64;
+ space = H5Screate_simple(2, dims, NULL);
+ dataset = H5Dcreate2(fid, F67_DATASETS64, H5T_STD_I64LE, space, H5P_DEFAULT, H5P_DEFAULT, H5P_DEFAULT);
+
+ val64bits = (int64_t) ~0L; /* all 1s */
+ for(i = 0; i < dims[0]; i++){
+ dset64[i][0] = val64bits;
+ for(j = 1; j < dims[1]; j++) {
+ dset64[i][j] = dset64[i][j-1] << 1;
+ }
+ val64bits <<= 1;
+ }
+
+ H5Dwrite(dataset, H5T_NATIVE_INT64, H5S_ALL, H5S_ALL, H5P_DEFAULT, dset64);
+ H5Sclose(space);
+ H5Dclose(dataset);
+
+ /* Double Dummy set for failure tests */
+ dims[0] = F67_XDIM; dims[1] = F67_YDIM8;
+ space = H5Screate_simple(2, dims, NULL);
+ dataset = H5Dcreate2(fid, F67_DUMMYDBL, H5T_IEEE_F64BE, space, H5P_DEFAULT, H5P_DEFAULT, H5P_DEFAULT);
+
+ for(i = 0; i < dims[0]; i++)
+ for(j = 0; j < dims[1]; j++)
+ dsetdbl[i][j] = 0.0001 * j + i;
+
+ H5Dwrite(dataset, H5T_NATIVE_DOUBLE, H5S_ALL, H5S_ALL, H5P_DEFAULT, dsetdbl);
+
+ H5Sclose(space);
+ H5Dclose(dataset);
+ H5Fclose(fid);
+}
+
+/*-------------------------------------------------------------------------
* Function: main
*
*-------------------------------------------------------------------------
@@ -6847,6 +7054,7 @@ int main(void)
gent_fpformat();
gent_extlinks();
gent_fs_strategy_threshold();
+ gent_packedbits();
return 0;
}
diff --git a/tools/h5dump/testh5dump.sh.in b/tools/h5dump/testh5dump.sh.in
index 50ff098..c29297e 100644
--- a/tools/h5dump/testh5dump.sh.in
+++ b/tools/h5dump/testh5dump.sh.in
@@ -270,6 +270,8 @@ IMPORTTEST()
##############################################################################
##############################################################################
+# test for signed/unsigned datasets
+TOOLTEST packedbits.ddl packedbits.h5
# test for displaying groups
TOOLTEST tgroup-1.ddl tgroup.h5
# test for displaying the selected groups
diff --git a/tools/lib/h5tools.c b/tools/lib/h5tools.c
index 896c310..7aee7bc 100644
--- a/tools/lib/h5tools.c
+++ b/tools/lib/h5tools.c
@@ -49,7 +49,7 @@ static h5tool_format_t h5tools_dataformat = {
"", /*fmt_raw */
"%d", /*fmt_int */
"%u", /*fmt_uint */
-"%d", /*fmt_schar */
+"%hhd", /*fmt_schar */
"%u", /*fmt_uchar */
"%d", /*fmt_short */
"%u", /*fmt_ushort */
diff --git a/tools/lib/h5tools_str.c b/tools/lib/h5tools_str.c
index c5f10b8..8c9960f 100644
--- a/tools/lib/h5tools_str.c
+++ b/tools/lib/h5tools_str.c
@@ -789,7 +789,7 @@ h5tools_str_sprint(h5tools_str_t *str, const h5tool_format_t *info, hid_t contai
h5tools_str_append(str, OPT(info->fmt_uint, "%u"), tempuint);
}
else if (H5Tequal(type, H5T_NATIVE_SCHAR)) {
- h5tools_str_append(str, OPT(info->fmt_schar, "%d"), *cp_vp);
+ h5tools_str_append(str, OPT(info->fmt_schar, "%hhd"), *cp_vp);
}
else if (H5Tequal(type, H5T_NATIVE_UCHAR)) {
h5tools_str_append(str, OPT(info->fmt_uchar, "%u"), *ucp_vp);
diff --git a/tools/testfiles/packedbits.ddl b/tools/testfiles/packedbits.ddl
new file mode 100644
index 0000000..91bd63b
--- /dev/null
+++ b/tools/testfiles/packedbits.ddl
@@ -0,0 +1,572 @@
+#############################
+Expected output for 'h5dump packedbits.h5'
+#############################
+HDF5 "packedbits.h5" {
+GROUP "/" {
+ DATASET "DS08BITS" {
+ DATATYPE H5T_STD_I8LE
+ DATASPACE SIMPLE { ( 8, 8 ) / ( 8, 8 ) }
+ DATA {
+ (0,0): -1, -2, -4, -8, -16, -32, -64, -128,
+ (1,0): -2, -4, -8, -16, -32, -64, -128, 0,
+ (2,0): -4, -8, -16, -32, -64, -128, 0, 0,
+ (3,0): -8, -16, -32, -64, -128, 0, 0, 0,
+ (4,0): -16, -32, -64, -128, 0, 0, 0, 0,
+ (5,0): -32, -64, -128, 0, 0, 0, 0, 0,
+ (6,0): -64, -128, 0, 0, 0, 0, 0, 0,
+ (7,0): -128, 0, 0, 0, 0, 0, 0, 0
+ }
+ }
+ DATASET "DS16BITS" {
+ DATATYPE H5T_STD_I16LE
+ DATASPACE SIMPLE { ( 8, 16 ) / ( 8, 16 ) }
+ DATA {
+ (0,0): -1, -2, -4, -8, -16, -32, -64, -128, -256, -512, -1024, -2048,
+ (0,12): -4096, -8192, -16384, -32768,
+ (1,0): -2, -4, -8, -16, -32, -64, -128, -256, -512, -1024, -2048,
+ (1,11): -4096, -8192, -16384, -32768, 0,
+ (2,0): -4, -8, -16, -32, -64, -128, -256, -512, -1024, -2048, -4096,
+ (2,11): -8192, -16384, -32768, 0, 0,
+ (3,0): -8, -16, -32, -64, -128, -256, -512, -1024, -2048, -4096, -8192,
+ (3,11): -16384, -32768, 0, 0, 0,
+ (4,0): -16, -32, -64, -128, -256, -512, -1024, -2048, -4096, -8192,
+ (4,10): -16384, -32768, 0, 0, 0, 0,
+ (5,0): -32, -64, -128, -256, -512, -1024, -2048, -4096, -8192, -16384,
+ (5,10): -32768, 0, 0, 0, 0, 0,
+ (6,0): -64, -128, -256, -512, -1024, -2048, -4096, -8192, -16384,
+ (6,9): -32768, 0, 0, 0, 0, 0, 0,
+ (7,0): -128, -256, -512, -1024, -2048, -4096, -8192, -16384, -32768, 0,
+ (7,10): 0, 0, 0, 0, 0, 0
+ }
+ }
+ DATASET "DS32BITS" {
+ DATATYPE H5T_STD_I32LE
+ DATASPACE SIMPLE { ( 8, 32 ) / ( 8, 32 ) }
+ DATA {
+ (0,0): -1, -2, -4, -8, -16, -32, -64, -128, -256, -512, -1024, -2048,
+ (0,12): -4096, -8192, -16384, -32768, -65536, -131072, -262144,
+ (0,19): -524288, -1048576, -2097152, -4194304, -8388608, -16777216,
+ (0,25): -33554432, -67108864, -134217728, -268435456, -536870912,
+ (0,30): -1073741824, -2147483648,
+ (1,0): -2, -4, -8, -16, -32, -64, -128, -256, -512, -1024, -2048,
+ (1,11): -4096, -8192, -16384, -32768, -65536, -131072, -262144,
+ (1,18): -524288, -1048576, -2097152, -4194304, -8388608, -16777216,
+ (1,24): -33554432, -67108864, -134217728, -268435456, -536870912,
+ (1,29): -1073741824, -2147483648, 0,
+ (2,0): -4, -8, -16, -32, -64, -128, -256, -512, -1024, -2048, -4096,
+ (2,11): -8192, -16384, -32768, -65536, -131072, -262144, -524288,
+ (2,18): -1048576, -2097152, -4194304, -8388608, -16777216, -33554432,
+ (2,24): -67108864, -134217728, -268435456, -536870912, -1073741824,
+ (2,29): -2147483648, 0, 0,
+ (3,0): -8, -16, -32, -64, -128, -256, -512, -1024, -2048, -4096, -8192,
+ (3,11): -16384, -32768, -65536, -131072, -262144, -524288, -1048576,
+ (3,18): -2097152, -4194304, -8388608, -16777216, -33554432, -67108864,
+ (3,24): -134217728, -268435456, -536870912, -1073741824, -2147483648,
+ (3,29): 0, 0, 0,
+ (4,0): -16, -32, -64, -128, -256, -512, -1024, -2048, -4096, -8192,
+ (4,10): -16384, -32768, -65536, -131072, -262144, -524288, -1048576,
+ (4,17): -2097152, -4194304, -8388608, -16777216, -33554432, -67108864,
+ (4,23): -134217728, -268435456, -536870912, -1073741824, -2147483648,
+ (4,28): 0, 0, 0, 0,
+ (5,0): -32, -64, -128, -256, -512, -1024, -2048, -4096, -8192, -16384,
+ (5,10): -32768, -65536, -131072, -262144, -524288, -1048576, -2097152,
+ (5,17): -4194304, -8388608, -16777216, -33554432, -67108864,
+ (5,22): -134217728, -268435456, -536870912, -1073741824, -2147483648,
+ (5,27): 0, 0, 0, 0, 0,
+ (6,0): -64, -128, -256, -512, -1024, -2048, -4096, -8192, -16384,
+ (6,9): -32768, -65536, -131072, -262144, -524288, -1048576, -2097152,
+ (6,16): -4194304, -8388608, -16777216, -33554432, -67108864,
+ (6,21): -134217728, -268435456, -536870912, -1073741824, -2147483648,
+ (6,26): 0, 0, 0, 0, 0, 0,
+ (7,0): -128, -256, -512, -1024, -2048, -4096, -8192, -16384, -32768,
+ (7,9): -65536, -131072, -262144, -524288, -1048576, -2097152, -4194304,
+ (7,16): -8388608, -16777216, -33554432, -67108864, -134217728,
+ (7,21): -268435456, -536870912, -1073741824, -2147483648, 0, 0, 0, 0,
+ (7,29): 0, 0, 0
+ }
+ }
+ DATASET "DS64BITS" {
+ DATATYPE H5T_STD_I64LE
+ DATASPACE SIMPLE { ( 8, 64 ) / ( 8, 64 ) }
+ DATA {
+ (0,0): -1, -2, -4, -8, -16, -32, -64, -128, -256, -512, -1024, -2048,
+ (0,12): -4096, -8192, -16384, -32768, -65536, -131072, -262144,
+ (0,19): -524288, -1048576, -2097152, -4194304, -8388608, -16777216,
+ (0,25): -33554432, -67108864, -134217728, -268435456, -536870912,
+ (0,30): -1073741824, -2147483648, -4294967296, -8589934592,
+ (0,34): -17179869184, -34359738368, -68719476736, -137438953472,
+ (0,38): -274877906944, -549755813888, -1099511627776, -2199023255552,
+ (0,42): -4398046511104, -8796093022208, -17592186044416,
+ (0,45): -35184372088832, -70368744177664, -140737488355328,
+ (0,48): -281474976710656, -562949953421312, -1125899906842624,
+ (0,51): -2251799813685248, -4503599627370496, -9007199254740992,
+ (0,54): -18014398509481984, -36028797018963968, -72057594037927936,
+ (0,57): -144115188075855872, -288230376151711744, -576460752303423488,
+ (0,60): -1152921504606846976, -2305843009213693952,
+ (0,62): -4611686018427387904, -9223372036854775808,
+ (1,0): -2, -4, -8, -16, -32, -64, -128, -256, -512, -1024, -2048,
+ (1,11): -4096, -8192, -16384, -32768, -65536, -131072, -262144,
+ (1,18): -524288, -1048576, -2097152, -4194304, -8388608, -16777216,
+ (1,24): -33554432, -67108864, -134217728, -268435456, -536870912,
+ (1,29): -1073741824, -2147483648, -4294967296, -8589934592,
+ (1,33): -17179869184, -34359738368, -68719476736, -137438953472,
+ (1,37): -274877906944, -549755813888, -1099511627776, -2199023255552,
+ (1,41): -4398046511104, -8796093022208, -17592186044416,
+ (1,44): -35184372088832, -70368744177664, -140737488355328,
+ (1,47): -281474976710656, -562949953421312, -1125899906842624,
+ (1,50): -2251799813685248, -4503599627370496, -9007199254740992,
+ (1,53): -18014398509481984, -36028797018963968, -72057594037927936,
+ (1,56): -144115188075855872, -288230376151711744, -576460752303423488,
+ (1,59): -1152921504606846976, -2305843009213693952,
+ (1,61): -4611686018427387904, -9223372036854775808, 0,
+ (2,0): -4, -8, -16, -32, -64, -128, -256, -512, -1024, -2048, -4096,
+ (2,11): -8192, -16384, -32768, -65536, -131072, -262144, -524288,
+ (2,18): -1048576, -2097152, -4194304, -8388608, -16777216, -33554432,
+ (2,24): -67108864, -134217728, -268435456, -536870912, -1073741824,
+ (2,29): -2147483648, -4294967296, -8589934592, -17179869184,
+ (2,33): -34359738368, -68719476736, -137438953472, -274877906944,
+ (2,37): -549755813888, -1099511627776, -2199023255552, -4398046511104,
+ (2,41): -8796093022208, -17592186044416, -35184372088832,
+ (2,44): -70368744177664, -140737488355328, -281474976710656,
+ (2,47): -562949953421312, -1125899906842624, -2251799813685248,
+ (2,50): -4503599627370496, -9007199254740992, -18014398509481984,
+ (2,53): -36028797018963968, -72057594037927936, -144115188075855872,
+ (2,56): -288230376151711744, -576460752303423488, -1152921504606846976,
+ (2,59): -2305843009213693952, -4611686018427387904,
+ (2,61): -9223372036854775808, 0, 0,
+ (3,0): -8, -16, -32, -64, -128, -256, -512, -1024, -2048, -4096, -8192,
+ (3,11): -16384, -32768, -65536, -131072, -262144, -524288, -1048576,
+ (3,18): -2097152, -4194304, -8388608, -16777216, -33554432, -67108864,
+ (3,24): -134217728, -268435456, -536870912, -1073741824, -2147483648,
+ (3,29): -4294967296, -8589934592, -17179869184, -34359738368,
+ (3,33): -68719476736, -137438953472, -274877906944, -549755813888,
+ (3,37): -1099511627776, -2199023255552, -4398046511104, -8796093022208,
+ (3,41): -17592186044416, -35184372088832, -70368744177664,
+ (3,44): -140737488355328, -281474976710656, -562949953421312,
+ (3,47): -1125899906842624, -2251799813685248, -4503599627370496,
+ (3,50): -9007199254740992, -18014398509481984, -36028797018963968,
+ (3,53): -72057594037927936, -144115188075855872, -288230376151711744,
+ (3,56): -576460752303423488, -1152921504606846976,
+ (3,58): -2305843009213693952, -4611686018427387904,
+ (3,60): -9223372036854775808, 0, 0, 0,
+ (4,0): -16, -32, -64, -128, -256, -512, -1024, -2048, -4096, -8192,
+ (4,10): -16384, -32768, -65536, -131072, -262144, -524288, -1048576,
+ (4,17): -2097152, -4194304, -8388608, -16777216, -33554432, -67108864,
+ (4,23): -134217728, -268435456, -536870912, -1073741824, -2147483648,
+ (4,28): -4294967296, -8589934592, -17179869184, -34359738368,
+ (4,32): -68719476736, -137438953472, -274877906944, -549755813888,
+ (4,36): -1099511627776, -2199023255552, -4398046511104, -8796093022208,
+ (4,40): -17592186044416, -35184372088832, -70368744177664,
+ (4,43): -140737488355328, -281474976710656, -562949953421312,
+ (4,46): -1125899906842624, -2251799813685248, -4503599627370496,
+ (4,49): -9007199254740992, -18014398509481984, -36028797018963968,
+ (4,52): -72057594037927936, -144115188075855872, -288230376151711744,
+ (4,55): -576460752303423488, -1152921504606846976,
+ (4,57): -2305843009213693952, -4611686018427387904,
+ (4,59): -9223372036854775808, 0, 0, 0, 0,
+ (5,0): -32, -64, -128, -256, -512, -1024, -2048, -4096, -8192, -16384,
+ (5,10): -32768, -65536, -131072, -262144, -524288, -1048576, -2097152,
+ (5,17): -4194304, -8388608, -16777216, -33554432, -67108864,
+ (5,22): -134217728, -268435456, -536870912, -1073741824, -2147483648,
+ (5,27): -4294967296, -8589934592, -17179869184, -34359738368,
+ (5,31): -68719476736, -137438953472, -274877906944, -549755813888,
+ (5,35): -1099511627776, -2199023255552, -4398046511104, -8796093022208,
+ (5,39): -17592186044416, -35184372088832, -70368744177664,
+ (5,42): -140737488355328, -281474976710656, -562949953421312,
+ (5,45): -1125899906842624, -2251799813685248, -4503599627370496,
+ (5,48): -9007199254740992, -18014398509481984, -36028797018963968,
+ (5,51): -72057594037927936, -144115188075855872, -288230376151711744,
+ (5,54): -576460752303423488, -1152921504606846976,
+ (5,56): -2305843009213693952, -4611686018427387904,
+ (5,58): -9223372036854775808, 0, 0, 0, 0, 0,
+ (6,0): -64, -128, -256, -512, -1024, -2048, -4096, -8192, -16384,
+ (6,9): -32768, -65536, -131072, -262144, -524288, -1048576, -2097152,
+ (6,16): -4194304, -8388608, -16777216, -33554432, -67108864,
+ (6,21): -134217728, -268435456, -536870912, -1073741824, -2147483648,
+ (6,26): -4294967296, -8589934592, -17179869184, -34359738368,
+ (6,30): -68719476736, -137438953472, -274877906944, -549755813888,
+ (6,34): -1099511627776, -2199023255552, -4398046511104, -8796093022208,
+ (6,38): -17592186044416, -35184372088832, -70368744177664,
+ (6,41): -140737488355328, -281474976710656, -562949953421312,
+ (6,44): -1125899906842624, -2251799813685248, -4503599627370496,
+ (6,47): -9007199254740992, -18014398509481984, -36028797018963968,
+ (6,50): -72057594037927936, -144115188075855872, -288230376151711744,
+ (6,53): -576460752303423488, -1152921504606846976,
+ (6,55): -2305843009213693952, -4611686018427387904,
+ (6,57): -9223372036854775808, 0, 0, 0, 0, 0, 0,
+ (7,0): -128, -256, -512, -1024, -2048, -4096, -8192, -16384, -32768,
+ (7,9): -65536, -131072, -262144, -524288, -1048576, -2097152, -4194304,
+ (7,16): -8388608, -16777216, -33554432, -67108864, -134217728,
+ (7,21): -268435456, -536870912, -1073741824, -2147483648, -4294967296,
+ (7,26): -8589934592, -17179869184, -34359738368, -68719476736,
+ (7,30): -137438953472, -274877906944, -549755813888, -1099511627776,
+ (7,34): -2199023255552, -4398046511104, -8796093022208,
+ (7,37): -17592186044416, -35184372088832, -70368744177664,
+ (7,40): -140737488355328, -281474976710656, -562949953421312,
+ (7,43): -1125899906842624, -2251799813685248, -4503599627370496,
+ (7,46): -9007199254740992, -18014398509481984, -36028797018963968,
+ (7,49): -72057594037927936, -144115188075855872, -288230376151711744,
+ (7,52): -576460752303423488, -1152921504606846976,
+ (7,54): -2305843009213693952, -4611686018427387904,
+ (7,56): -9223372036854775808, 0, 0, 0, 0, 0, 0, 0
+ }
+ }
+ DATASET "DU08BITS" {
+ DATATYPE H5T_STD_U8LE
+ DATASPACE SIMPLE { ( 8, 8 ) / ( 8, 8 ) }
+ DATA {
+ (0,0): 255, 254, 252, 248, 240, 224, 192, 128,
+ (1,0): 254, 252, 248, 240, 224, 192, 128, 0,
+ (2,0): 252, 248, 240, 224, 192, 128, 0, 0,
+ (3,0): 248, 240, 224, 192, 128, 0, 0, 0,
+ (4,0): 240, 224, 192, 128, 0, 0, 0, 0,
+ (5,0): 224, 192, 128, 0, 0, 0, 0, 0,
+ (6,0): 192, 128, 0, 0, 0, 0, 0, 0,
+ (7,0): 128, 0, 0, 0, 0, 0, 0, 0
+ }
+ }
+ DATASET "DU16BITS" {
+ DATATYPE H5T_STD_U16LE
+ DATASPACE SIMPLE { ( 8, 16 ) / ( 8, 16 ) }
+ DATA {
+ (0,0): 65535, 65534, 65532, 65528, 65520, 65504, 65472, 65408, 65280,
+ (0,9): 65024, 64512, 63488, 61440, 57344, 49152, 32768,
+ (1,0): 65534, 65532, 65528, 65520, 65504, 65472, 65408, 65280, 65024,
+ (1,9): 64512, 63488, 61440, 57344, 49152, 32768, 0,
+ (2,0): 65532, 65528, 65520, 65504, 65472, 65408, 65280, 65024, 64512,
+ (2,9): 63488, 61440, 57344, 49152, 32768, 0, 0,
+ (3,0): 65528, 65520, 65504, 65472, 65408, 65280, 65024, 64512, 63488,
+ (3,9): 61440, 57344, 49152, 32768, 0, 0, 0,
+ (4,0): 65520, 65504, 65472, 65408, 65280, 65024, 64512, 63488, 61440,
+ (4,9): 57344, 49152, 32768, 0, 0, 0, 0,
+ (5,0): 65504, 65472, 65408, 65280, 65024, 64512, 63488, 61440, 57344,
+ (5,9): 49152, 32768, 0, 0, 0, 0, 0,
+ (6,0): 65472, 65408, 65280, 65024, 64512, 63488, 61440, 57344, 49152,
+ (6,9): 32768, 0, 0, 0, 0, 0, 0,
+ (7,0): 65408, 65280, 65024, 64512, 63488, 61440, 57344, 49152, 32768,
+ (7,9): 0, 0, 0, 0, 0, 0, 0
+ }
+ }
+ DATASET "DU32BITS" {
+ DATATYPE H5T_STD_U32LE
+ DATASPACE SIMPLE { ( 8, 32 ) / ( 8, 32 ) }
+ DATA {
+ (0,0): 4294967295, 4294967294, 4294967292, 4294967288, 4294967280,
+ (0,5): 4294967264, 4294967232, 4294967168, 4294967040, 4294966784,
+ (0,10): 4294966272, 4294965248, 4294963200, 4294959104, 4294950912,
+ (0,15): 4294934528, 4294901760, 4294836224, 4294705152, 4294443008,
+ (0,20): 4293918720, 4292870144, 4290772992, 4286578688, 4278190080,
+ (0,25): 4261412864, 4227858432, 4160749568, 4026531840, 3758096384,
+ (0,30): 3221225472, 2147483648,
+ (1,0): 4294967294, 4294967292, 4294967288, 4294967280, 4294967264,
+ (1,5): 4294967232, 4294967168, 4294967040, 4294966784, 4294966272,
+ (1,10): 4294965248, 4294963200, 4294959104, 4294950912, 4294934528,
+ (1,15): 4294901760, 4294836224, 4294705152, 4294443008, 4293918720,
+ (1,20): 4292870144, 4290772992, 4286578688, 4278190080, 4261412864,
+ (1,25): 4227858432, 4160749568, 4026531840, 3758096384, 3221225472,
+ (1,30): 2147483648, 0,
+ (2,0): 4294967292, 4294967288, 4294967280, 4294967264, 4294967232,
+ (2,5): 4294967168, 4294967040, 4294966784, 4294966272, 4294965248,
+ (2,10): 4294963200, 4294959104, 4294950912, 4294934528, 4294901760,
+ (2,15): 4294836224, 4294705152, 4294443008, 4293918720, 4292870144,
+ (2,20): 4290772992, 4286578688, 4278190080, 4261412864, 4227858432,
+ (2,25): 4160749568, 4026531840, 3758096384, 3221225472, 2147483648, 0,
+ (2,31): 0,
+ (3,0): 4294967288, 4294967280, 4294967264, 4294967232, 4294967168,
+ (3,5): 4294967040, 4294966784, 4294966272, 4294965248, 4294963200,
+ (3,10): 4294959104, 4294950912, 4294934528, 4294901760, 4294836224,
+ (3,15): 4294705152, 4294443008, 4293918720, 4292870144, 4290772992,
+ (3,20): 4286578688, 4278190080, 4261412864, 4227858432, 4160749568,
+ (3,25): 4026531840, 3758096384, 3221225472, 2147483648, 0, 0, 0,
+ (4,0): 4294967280, 4294967264, 4294967232, 4294967168, 4294967040,
+ (4,5): 4294966784, 4294966272, 4294965248, 4294963200, 4294959104,
+ (4,10): 4294950912, 4294934528, 4294901760, 4294836224, 4294705152,
+ (4,15): 4294443008, 4293918720, 4292870144, 4290772992, 4286578688,
+ (4,20): 4278190080, 4261412864, 4227858432, 4160749568, 4026531840,
+ (4,25): 3758096384, 3221225472, 2147483648, 0, 0, 0, 0,
+ (5,0): 4294967264, 4294967232, 4294967168, 4294967040, 4294966784,
+ (5,5): 4294966272, 4294965248, 4294963200, 4294959104, 4294950912,
+ (5,10): 4294934528, 4294901760, 4294836224, 4294705152, 4294443008,
+ (5,15): 4293918720, 4292870144, 4290772992, 4286578688, 4278190080,
+ (5,20): 4261412864, 4227858432, 4160749568, 4026531840, 3758096384,
+ (5,25): 3221225472, 2147483648, 0, 0, 0, 0, 0,
+ (6,0): 4294967232, 4294967168, 4294967040, 4294966784, 4294966272,
+ (6,5): 4294965248, 4294963200, 4294959104, 4294950912, 4294934528,
+ (6,10): 4294901760, 4294836224, 4294705152, 4294443008, 4293918720,
+ (6,15): 4292870144, 4290772992, 4286578688, 4278190080, 4261412864,
+ (6,20): 4227858432, 4160749568, 4026531840, 3758096384, 3221225472,
+ (6,25): 2147483648, 0, 0, 0, 0, 0, 0,
+ (7,0): 4294967168, 4294967040, 4294966784, 4294966272, 4294965248,
+ (7,5): 4294963200, 4294959104, 4294950912, 4294934528, 4294901760,
+ (7,10): 4294836224, 4294705152, 4294443008, 4293918720, 4292870144,
+ (7,15): 4290772992, 4286578688, 4278190080, 4261412864, 4227858432,
+ (7,20): 4160749568, 4026531840, 3758096384, 3221225472, 2147483648, 0,
+ (7,26): 0, 0, 0, 0, 0, 0
+ }
+ }
+ DATASET "DU64BITS" {
+ DATATYPE H5T_STD_U64LE
+ DATASPACE SIMPLE { ( 8, 64 ) / ( 8, 64 ) }
+ DATA {
+ (0,0): 18446744073709551615, 18446744073709551614,
+ (0,2): 18446744073709551612, 18446744073709551608,
+ (0,4): 18446744073709551600, 18446744073709551584,
+ (0,6): 18446744073709551552, 18446744073709551488,
+ (0,8): 18446744073709551360, 18446744073709551104,
+ (0,10): 18446744073709550592, 18446744073709549568,
+ (0,12): 18446744073709547520, 18446744073709543424,
+ (0,14): 18446744073709535232, 18446744073709518848,
+ (0,16): 18446744073709486080, 18446744073709420544,
+ (0,18): 18446744073709289472, 18446744073709027328,
+ (0,20): 18446744073708503040, 18446744073707454464,
+ (0,22): 18446744073705357312, 18446744073701163008,
+ (0,24): 18446744073692774400, 18446744073675997184,
+ (0,26): 18446744073642442752, 18446744073575333888,
+ (0,28): 18446744073441116160, 18446744073172680704,
+ (0,30): 18446744072635809792, 18446744071562067968,
+ (0,32): 18446744069414584320, 18446744065119617024,
+ (0,34): 18446744056529682432, 18446744039349813248,
+ (0,36): 18446744004990074880, 18446743936270598144,
+ (0,38): 18446743798831644672, 18446743523953737728,
+ (0,40): 18446742974197923840, 18446741874686296064,
+ (0,42): 18446739675663040512, 18446735277616529408,
+ (0,44): 18446726481523507200, 18446708889337462784,
+ (0,46): 18446673704965373952, 18446603336221196288,
+ (0,48): 18446462598732840960, 18446181123756130304,
+ (0,50): 18445618173802708992, 18444492273895866368,
+ (0,52): 18442240474082181120, 18437736874454810624,
+ (0,54): 18428729675200069632, 18410715276690587648,
+ (0,56): 18374686479671623680, 18302628885633695744,
+ (0,58): 18158513697557839872, 17870283321406128128,
+ (0,60): 17293822569102704640, 16140901064495857664,
+ (0,62): 13835058055282163712, 9223372036854775808,
+ (1,0): 18446744073709551614, 18446744073709551612,
+ (1,2): 18446744073709551608, 18446744073709551600,
+ (1,4): 18446744073709551584, 18446744073709551552,
+ (1,6): 18446744073709551488, 18446744073709551360,
+ (1,8): 18446744073709551104, 18446744073709550592,
+ (1,10): 18446744073709549568, 18446744073709547520,
+ (1,12): 18446744073709543424, 18446744073709535232,
+ (1,14): 18446744073709518848, 18446744073709486080,
+ (1,16): 18446744073709420544, 18446744073709289472,
+ (1,18): 18446744073709027328, 18446744073708503040,
+ (1,20): 18446744073707454464, 18446744073705357312,
+ (1,22): 18446744073701163008, 18446744073692774400,
+ (1,24): 18446744073675997184, 18446744073642442752,
+ (1,26): 18446744073575333888, 18446744073441116160,
+ (1,28): 18446744073172680704, 18446744072635809792,
+ (1,30): 18446744071562067968, 18446744069414584320,
+ (1,32): 18446744065119617024, 18446744056529682432,
+ (1,34): 18446744039349813248, 18446744004990074880,
+ (1,36): 18446743936270598144, 18446743798831644672,
+ (1,38): 18446743523953737728, 18446742974197923840,
+ (1,40): 18446741874686296064, 18446739675663040512,
+ (1,42): 18446735277616529408, 18446726481523507200,
+ (1,44): 18446708889337462784, 18446673704965373952,
+ (1,46): 18446603336221196288, 18446462598732840960,
+ (1,48): 18446181123756130304, 18445618173802708992,
+ (1,50): 18444492273895866368, 18442240474082181120,
+ (1,52): 18437736874454810624, 18428729675200069632,
+ (1,54): 18410715276690587648, 18374686479671623680,
+ (1,56): 18302628885633695744, 18158513697557839872,
+ (1,58): 17870283321406128128, 17293822569102704640,
+ (1,60): 16140901064495857664, 13835058055282163712,
+ (1,62): 9223372036854775808, 0,
+ (2,0): 18446744073709551612, 18446744073709551608,
+ (2,2): 18446744073709551600, 18446744073709551584,
+ (2,4): 18446744073709551552, 18446744073709551488,
+ (2,6): 18446744073709551360, 18446744073709551104,
+ (2,8): 18446744073709550592, 18446744073709549568,
+ (2,10): 18446744073709547520, 18446744073709543424,
+ (2,12): 18446744073709535232, 18446744073709518848,
+ (2,14): 18446744073709486080, 18446744073709420544,
+ (2,16): 18446744073709289472, 18446744073709027328,
+ (2,18): 18446744073708503040, 18446744073707454464,
+ (2,20): 18446744073705357312, 18446744073701163008,
+ (2,22): 18446744073692774400, 18446744073675997184,
+ (2,24): 18446744073642442752, 18446744073575333888,
+ (2,26): 18446744073441116160, 18446744073172680704,
+ (2,28): 18446744072635809792, 18446744071562067968,
+ (2,30): 18446744069414584320, 18446744065119617024,
+ (2,32): 18446744056529682432, 18446744039349813248,
+ (2,34): 18446744004990074880, 18446743936270598144,
+ (2,36): 18446743798831644672, 18446743523953737728,
+ (2,38): 18446742974197923840, 18446741874686296064,
+ (2,40): 18446739675663040512, 18446735277616529408,
+ (2,42): 18446726481523507200, 18446708889337462784,
+ (2,44): 18446673704965373952, 18446603336221196288,
+ (2,46): 18446462598732840960, 18446181123756130304,
+ (2,48): 18445618173802708992, 18444492273895866368,
+ (2,50): 18442240474082181120, 18437736874454810624,
+ (2,52): 18428729675200069632, 18410715276690587648,
+ (2,54): 18374686479671623680, 18302628885633695744,
+ (2,56): 18158513697557839872, 17870283321406128128,
+ (2,58): 17293822569102704640, 16140901064495857664,
+ (2,60): 13835058055282163712, 9223372036854775808, 0, 0,
+ (3,0): 18446744073709551608, 18446744073709551600,
+ (3,2): 18446744073709551584, 18446744073709551552,
+ (3,4): 18446744073709551488, 18446744073709551360,
+ (3,6): 18446744073709551104, 18446744073709550592,
+ (3,8): 18446744073709549568, 18446744073709547520,
+ (3,10): 18446744073709543424, 18446744073709535232,
+ (3,12): 18446744073709518848, 18446744073709486080,
+ (3,14): 18446744073709420544, 18446744073709289472,
+ (3,16): 18446744073709027328, 18446744073708503040,
+ (3,18): 18446744073707454464, 18446744073705357312,
+ (3,20): 18446744073701163008, 18446744073692774400,
+ (3,22): 18446744073675997184, 18446744073642442752,
+ (3,24): 18446744073575333888, 18446744073441116160,
+ (3,26): 18446744073172680704, 18446744072635809792,
+ (3,28): 18446744071562067968, 18446744069414584320,
+ (3,30): 18446744065119617024, 18446744056529682432,
+ (3,32): 18446744039349813248, 18446744004990074880,
+ (3,34): 18446743936270598144, 18446743798831644672,
+ (3,36): 18446743523953737728, 18446742974197923840,
+ (3,38): 18446741874686296064, 18446739675663040512,
+ (3,40): 18446735277616529408, 18446726481523507200,
+ (3,42): 18446708889337462784, 18446673704965373952,
+ (3,44): 18446603336221196288, 18446462598732840960,
+ (3,46): 18446181123756130304, 18445618173802708992,
+ (3,48): 18444492273895866368, 18442240474082181120,
+ (3,50): 18437736874454810624, 18428729675200069632,
+ (3,52): 18410715276690587648, 18374686479671623680,
+ (3,54): 18302628885633695744, 18158513697557839872,
+ (3,56): 17870283321406128128, 17293822569102704640,
+ (3,58): 16140901064495857664, 13835058055282163712,
+ (3,60): 9223372036854775808, 0, 0, 0,
+ (4,0): 18446744073709551600, 18446744073709551584,
+ (4,2): 18446744073709551552, 18446744073709551488,
+ (4,4): 18446744073709551360, 18446744073709551104,
+ (4,6): 18446744073709550592, 18446744073709549568,
+ (4,8): 18446744073709547520, 18446744073709543424,
+ (4,10): 18446744073709535232, 18446744073709518848,
+ (4,12): 18446744073709486080, 18446744073709420544,
+ (4,14): 18446744073709289472, 18446744073709027328,
+ (4,16): 18446744073708503040, 18446744073707454464,
+ (4,18): 18446744073705357312, 18446744073701163008,
+ (4,20): 18446744073692774400, 18446744073675997184,
+ (4,22): 18446744073642442752, 18446744073575333888,
+ (4,24): 18446744073441116160, 18446744073172680704,
+ (4,26): 18446744072635809792, 18446744071562067968,
+ (4,28): 18446744069414584320, 18446744065119617024,
+ (4,30): 18446744056529682432, 18446744039349813248,
+ (4,32): 18446744004990074880, 18446743936270598144,
+ (4,34): 18446743798831644672, 18446743523953737728,
+ (4,36): 18446742974197923840, 18446741874686296064,
+ (4,38): 18446739675663040512, 18446735277616529408,
+ (4,40): 18446726481523507200, 18446708889337462784,
+ (4,42): 18446673704965373952, 18446603336221196288,
+ (4,44): 18446462598732840960, 18446181123756130304,
+ (4,46): 18445618173802708992, 18444492273895866368,
+ (4,48): 18442240474082181120, 18437736874454810624,
+ (4,50): 18428729675200069632, 18410715276690587648,
+ (4,52): 18374686479671623680, 18302628885633695744,
+ (4,54): 18158513697557839872, 17870283321406128128,
+ (4,56): 17293822569102704640, 16140901064495857664,
+ (4,58): 13835058055282163712, 9223372036854775808, 0, 0, 0, 0,
+ (5,0): 18446744073709551584, 18446744073709551552,
+ (5,2): 18446744073709551488, 18446744073709551360,
+ (5,4): 18446744073709551104, 18446744073709550592,
+ (5,6): 18446744073709549568, 18446744073709547520,
+ (5,8): 18446744073709543424, 18446744073709535232,
+ (5,10): 18446744073709518848, 18446744073709486080,
+ (5,12): 18446744073709420544, 18446744073709289472,
+ (5,14): 18446744073709027328, 18446744073708503040,
+ (5,16): 18446744073707454464, 18446744073705357312,
+ (5,18): 18446744073701163008, 18446744073692774400,
+ (5,20): 18446744073675997184, 18446744073642442752,
+ (5,22): 18446744073575333888, 18446744073441116160,
+ (5,24): 18446744073172680704, 18446744072635809792,
+ (5,26): 18446744071562067968, 18446744069414584320,
+ (5,28): 18446744065119617024, 18446744056529682432,
+ (5,30): 18446744039349813248, 18446744004990074880,
+ (5,32): 18446743936270598144, 18446743798831644672,
+ (5,34): 18446743523953737728, 18446742974197923840,
+ (5,36): 18446741874686296064, 18446739675663040512,
+ (5,38): 18446735277616529408, 18446726481523507200,
+ (5,40): 18446708889337462784, 18446673704965373952,
+ (5,42): 18446603336221196288, 18446462598732840960,
+ (5,44): 18446181123756130304, 18445618173802708992,
+ (5,46): 18444492273895866368, 18442240474082181120,
+ (5,48): 18437736874454810624, 18428729675200069632,
+ (5,50): 18410715276690587648, 18374686479671623680,
+ (5,52): 18302628885633695744, 18158513697557839872,
+ (5,54): 17870283321406128128, 17293822569102704640,
+ (5,56): 16140901064495857664, 13835058055282163712,
+ (5,58): 9223372036854775808, 0, 0, 0, 0, 0,
+ (6,0): 18446744073709551552, 18446744073709551488,
+ (6,2): 18446744073709551360, 18446744073709551104,
+ (6,4): 18446744073709550592, 18446744073709549568,
+ (6,6): 18446744073709547520, 18446744073709543424,
+ (6,8): 18446744073709535232, 18446744073709518848,
+ (6,10): 18446744073709486080, 18446744073709420544,
+ (6,12): 18446744073709289472, 18446744073709027328,
+ (6,14): 18446744073708503040, 18446744073707454464,
+ (6,16): 18446744073705357312, 18446744073701163008,
+ (6,18): 18446744073692774400, 18446744073675997184,
+ (6,20): 18446744073642442752, 18446744073575333888,
+ (6,22): 18446744073441116160, 18446744073172680704,
+ (6,24): 18446744072635809792, 18446744071562067968,
+ (6,26): 18446744069414584320, 18446744065119617024,
+ (6,28): 18446744056529682432, 18446744039349813248,
+ (6,30): 18446744004990074880, 18446743936270598144,
+ (6,32): 18446743798831644672, 18446743523953737728,
+ (6,34): 18446742974197923840, 18446741874686296064,
+ (6,36): 18446739675663040512, 18446735277616529408,
+ (6,38): 18446726481523507200, 18446708889337462784,
+ (6,40): 18446673704965373952, 18446603336221196288,
+ (6,42): 18446462598732840960, 18446181123756130304,
+ (6,44): 18445618173802708992, 18444492273895866368,
+ (6,46): 18442240474082181120, 18437736874454810624,
+ (6,48): 18428729675200069632, 18410715276690587648,
+ (6,50): 18374686479671623680, 18302628885633695744,
+ (6,52): 18158513697557839872, 17870283321406128128,
+ (6,54): 17293822569102704640, 16140901064495857664,
+ (6,56): 13835058055282163712, 9223372036854775808, 0, 0, 0, 0, 0, 0,
+ (7,0): 18446744073709551488, 18446744073709551360,
+ (7,2): 18446744073709551104, 18446744073709550592,
+ (7,4): 18446744073709549568, 18446744073709547520,
+ (7,6): 18446744073709543424, 18446744073709535232,
+ (7,8): 18446744073709518848, 18446744073709486080,
+ (7,10): 18446744073709420544, 18446744073709289472,
+ (7,12): 18446744073709027328, 18446744073708503040,
+ (7,14): 18446744073707454464, 18446744073705357312,
+ (7,16): 18446744073701163008, 18446744073692774400,
+ (7,18): 18446744073675997184, 18446744073642442752,
+ (7,20): 18446744073575333888, 18446744073441116160,
+ (7,22): 18446744073172680704, 18446744072635809792,
+ (7,24): 18446744071562067968, 18446744069414584320,
+ (7,26): 18446744065119617024, 18446744056529682432,
+ (7,28): 18446744039349813248, 18446744004990074880,
+ (7,30): 18446743936270598144, 18446743798831644672,
+ (7,32): 18446743523953737728, 18446742974197923840,
+ (7,34): 18446741874686296064, 18446739675663040512,
+ (7,36): 18446735277616529408, 18446726481523507200,
+ (7,38): 18446708889337462784, 18446673704965373952,
+ (7,40): 18446603336221196288, 18446462598732840960,
+ (7,42): 18446181123756130304, 18445618173802708992,
+ (7,44): 18444492273895866368, 18442240474082181120,
+ (7,46): 18437736874454810624, 18428729675200069632,
+ (7,48): 18410715276690587648, 18374686479671623680,
+ (7,50): 18302628885633695744, 18158513697557839872,
+ (7,52): 17870283321406128128, 17293822569102704640,
+ (7,54): 16140901064495857664, 13835058055282163712,
+ (7,56): 9223372036854775808, 0, 0, 0, 0, 0, 0, 0
+ }
+ }
+ DATASET "DummyDBL" {
+ DATATYPE H5T_IEEE_F64BE
+ DATASPACE SIMPLE { ( 8, 8 ) / ( 8, 8 ) }
+ DATA {
+ (0,0): 0, 0.0001, 0.0002, 0.0003, 0.0004, 0.0005, 0.0006, 0.0007,
+ (1,0): 1, 1.0001, 1.0002, 1.0003, 1.0004, 1.0005, 1.0006, 1.0007,
+ (2,0): 2, 2.0001, 2.0002, 2.0003, 2.0004, 2.0005, 2.0006, 2.0007,
+ (3,0): 3, 3.0001, 3.0002, 3.0003, 3.0004, 3.0005, 3.0006, 3.0007,
+ (4,0): 4, 4.0001, 4.0002, 4.0003, 4.0004, 4.0005, 4.0006, 4.0007,
+ (5,0): 5, 5.0001, 5.0002, 5.0003, 5.0004, 5.0005, 5.0006, 5.0007,
+ (6,0): 6, 6.0001, 6.0002, 6.0003, 6.0004, 6.0005, 6.0006, 6.0007,
+ (7,0): 7, 7.0001, 7.0002, 7.0003, 7.0004, 7.0005, 7.0006, 7.0007
+ }
+ }
+}
+}
diff --git a/tools/testfiles/packedbits.h5 b/tools/testfiles/packedbits.h5
new file mode 100644
index 0000000..cbb73ab
--- /dev/null
+++ b/tools/testfiles/packedbits.h5
Binary files differ