diff options
Diffstat (limited to 'tools/lib')
-rw-r--r-- | tools/lib/h5tools.c | 2 | ||||
-rw-r--r-- | tools/lib/h5tools.h | 4 | ||||
-rw-r--r-- | tools/lib/h5tools_str.c | 34 |
3 files changed, 29 insertions, 11 deletions
diff --git a/tools/lib/h5tools.c b/tools/lib/h5tools.c index 2cf778f..9b25ccb 100644 --- a/tools/lib/h5tools.c +++ b/tools/lib/h5tools.c @@ -45,7 +45,7 @@ int region_output; /* region output */ #ifdef H5_HAVE_H5DUMP_PACKED_BITS int packed_bits_num; /* number of packed bits to display */ int packed_data_offset; /* offset of packed bits to display */ -unsigned int packed_data_mask; /* mask in which packed bits to display */ +unsigned long long packed_data_mask; /* mask in which packed bits to display */ #endif static h5tool_format_t h5tools_dataformat = { diff --git a/tools/lib/h5tools.h b/tools/lib/h5tools.h index 0c919ae..c7836a9 100644 --- a/tools/lib/h5tools.h +++ b/tools/lib/h5tools.h @@ -532,8 +532,8 @@ extern "C" { #ifdef H5_HAVE_H5DUMP_PACKED_BITS H5TOOLS_DLLVAR int packed_bits_num; /* number of packed bits to display */ -H5TOOLS_DLLVAR int packed_data_offset; /* offset of packed bits to display */ -H5TOOLS_DLLVAR unsigned int packed_data_mask; /* mask in which packed bits to display */ +H5TOOLS_DLLVAR int packed_data_offset; /* offset of packed bits to display */ +H5TOOLS_DLLVAR unsigned long long packed_data_mask; /* mask in which packed bits to display */ #endif H5TOOLS_DLLVAR FILE *rawdatastream; /* output stream for raw data */ diff --git a/tools/lib/h5tools_str.c b/tools/lib/h5tools_str.c index 46ad8c9..1dcfda5 100644 --- a/tools/lib/h5tools_str.c +++ b/tools/lib/h5tools_str.c @@ -783,16 +783,18 @@ h5tools_str_sprint(h5tools_str_t *str, const h5tool_format_t *info, hid_t contai else if (H5Tequal(type, H5T_NATIVE_INT)) { HDmemcpy(&tempint, vp, sizeof(int)); #ifdef H5_HAVE_H5DUMP_PACKED_BITS - if(packed_bits_num) + if(packed_bits_num) { tempint = (tempint >> packed_data_offset) & packed_data_mask; + } #endif h5tools_str_append(str, OPT(info->fmt_int, "%d"), tempint); } else if (H5Tequal(type, H5T_NATIVE_UINT)) { HDmemcpy(&tempuint, vp, sizeof(unsigned int)); #ifdef H5_HAVE_H5DUMP_PACKED_BITS - if(packed_bits_num) + if(packed_bits_num) { tempuint = (tempuint >> packed_data_offset) & packed_data_mask; + } #endif h5tools_str_append(str, OPT(info->fmt_uint, "%u"), tempuint); } @@ -800,8 +802,9 @@ h5tools_str_sprint(h5tools_str_t *str, const h5tool_format_t *info, hid_t contai char tempchar; HDmemcpy(&tempchar, cp_vp, sizeof(char)); #ifdef H5_HAVE_H5DUMP_PACKED_BITS - if(packed_bits_num) + if(packed_bits_num) { tempchar = (tempchar >> packed_data_offset) & packed_data_mask; + } #endif h5tools_str_append(str, OPT(info->fmt_schar, "%d"), tempchar); } @@ -809,8 +812,9 @@ h5tools_str_sprint(h5tools_str_t *str, const h5tool_format_t *info, hid_t contai unsigned char tempuchar; HDmemcpy(&tempuchar, ucp_vp, sizeof(unsigned char)); #ifdef H5_HAVE_H5DUMP_PACKED_BITS - if(packed_bits_num) + if(packed_bits_num) { tempuchar = (tempuchar >> packed_data_offset) & packed_data_mask; + } #endif h5tools_str_append(str, OPT(info->fmt_uchar, "%u"), tempuchar); } @@ -819,8 +823,9 @@ h5tools_str_sprint(h5tools_str_t *str, const h5tool_format_t *info, hid_t contai HDmemcpy(&tempshort, vp, sizeof(short)); #ifdef H5_HAVE_H5DUMP_PACKED_BITS - if(packed_bits_num) + if(packed_bits_num) { tempshort = (tempshort >> packed_data_offset) & packed_data_mask; + } #endif h5tools_str_append(str, OPT(info->fmt_short, "%d"), tempshort); } @@ -829,33 +834,46 @@ h5tools_str_sprint(h5tools_str_t *str, const h5tool_format_t *info, hid_t contai HDmemcpy(&tempushort, vp, sizeof(unsigned short)); #ifdef H5_HAVE_H5DUMP_PACKED_BITS - if(packed_bits_num) + if(packed_bits_num) { tempushort = (tempushort >> packed_data_offset) & packed_data_mask; + } #endif h5tools_str_append(str, OPT(info->fmt_ushort, "%u"), tempushort); } else if (H5Tequal(type, H5T_NATIVE_LONG)) { HDmemcpy(&templong, vp, sizeof(long)); #ifdef H5_HAVE_H5DUMP_PACKED_BITS - if(packed_bits_num) + if(packed_bits_num) { templong = (templong >> packed_data_offset) & packed_data_mask; + } #endif h5tools_str_append(str, OPT(info->fmt_long, "%ld"), templong); } else if (H5Tequal(type, H5T_NATIVE_ULONG)) { HDmemcpy(&tempulong, vp, sizeof(unsigned long)); #ifdef H5_HAVE_H5DUMP_PACKED_BITS - if(packed_bits_num) + if(packed_bits_num) { tempulong = (tempulong >> packed_data_offset) & packed_data_mask; + } #endif h5tools_str_append(str, OPT(info->fmt_ulong, "%lu"), tempulong); } else if (H5Tequal(type, H5T_NATIVE_LLONG)) { HDmemcpy(&templlong, vp, sizeof(long long)); +#ifdef H5_HAVE_H5DUMP_PACKED_BITS + if(packed_bits_num) { + templlong = (templlong >> packed_data_offset) & packed_data_mask; + } +#endif h5tools_str_append(str, OPT(info->fmt_llong, fmt_llong), templlong); } else if (H5Tequal(type, H5T_NATIVE_ULLONG)) { HDmemcpy(&tempullong, vp, sizeof(unsigned long long)); +#ifdef H5_HAVE_H5DUMP_PACKED_BITS + if(packed_bits_num) { + tempullong = (tempullong >> packed_data_offset) & packed_data_mask; + } +#endif h5tools_str_append(str, OPT(info->fmt_ullong, fmt_ullong), tempullong); } else if (H5Tequal(type, H5T_NATIVE_HSSIZE)) { |