diff options
author | Allen Byrne <byrn@hdfgroup.org> | 2017-05-10 15:59:13 (GMT) |
---|---|---|
committer | Allen Byrne <byrn@hdfgroup.org> | 2017-05-10 15:59:13 (GMT) |
commit | 445c805a4cd1222703e0294afa3af9631c7d6c99 (patch) | |
tree | fd23d7bd1bc9fa2ed6390483e7d4c926e92582b5 /tools/lib/h5tools_type.c | |
parent | 9d50ed52875549dad6e5253111c0356aca3c2c05 (diff) | |
download | hdf5-445c805a4cd1222703e0294afa3af9631c7d6c99.zip hdf5-445c805a4cd1222703e0294afa3af9631c7d6c99.tar.gz hdf5-445c805a4cd1222703e0294afa3af9631c7d6c99.tar.bz2 |
HDFFV-10186 Add endianess to bitfield and fix tests
Diffstat (limited to 'tools/lib/h5tools_type.c')
-rw-r--r-- | tools/lib/h5tools_type.c | 24 |
1 files changed, 22 insertions, 2 deletions
diff --git a/tools/lib/h5tools_type.c b/tools/lib/h5tools_type.c index 8c5592f..b57e274 100644 --- a/tools/lib/h5tools_type.c +++ b/tools/lib/h5tools_type.c @@ -100,8 +100,18 @@ h5tools_get_little_endian_type(hid_t tid) p_type=H5Tcopy(H5T_IEEE_F64LE); break; - case H5T_TIME: case H5T_BITFIELD: + if ( size == 1) + p_type=H5Tcopy(H5T_STD_B8LE); + else if ( size == 2) + p_type=H5Tcopy(H5T_STD_B16LE); + else if ( size == 4) + p_type=H5Tcopy(H5T_STD_B32LE); + else if ( size == 8) + p_type=H5Tcopy(H5T_STD_B64LE); + break; + + case H5T_TIME: case H5T_OPAQUE: case H5T_STRING: case H5T_COMPOUND: @@ -177,8 +187,18 @@ h5tools_get_big_endian_type(hid_t tid) p_type=H5Tcopy(H5T_IEEE_F64BE); break; - case H5T_TIME: case H5T_BITFIELD: + if ( size == 1) + p_type=H5Tcopy(H5T_STD_B8BE); + else if ( size == 2) + p_type=H5Tcopy(H5T_STD_B16BE); + else if ( size == 4) + p_type=H5Tcopy(H5T_STD_B32BE); + else if ( size == 8) + p_type=H5Tcopy(H5T_STD_B64BE); + break; + + case H5T_TIME: case H5T_OPAQUE: case H5T_STRING: case H5T_COMPOUND: |