diff options
author | Raymond Lu <songyulu@hdfgroup.org> | 2012-09-05 18:13:15 (GMT) |
---|---|---|
committer | Raymond Lu <songyulu@hdfgroup.org> | 2012-09-05 18:13:15 (GMT) |
commit | 9ce6dadd4848ad1371d32f99d320efa87de32050 (patch) | |
tree | 1d301a6b3b50dda6b3f9490291c96c9cc0ec1f77 /src/H5HFman.c | |
parent | 60daa9be2b660c4583f581c85ea2177b060c4fcb (diff) | |
parent | 1c9e159ffe6cf85a5c076f747758dc47eb7a111a (diff) | |
download | hdf5-9ce6dadd4848ad1371d32f99d320efa87de32050.zip hdf5-9ce6dadd4848ad1371d32f99d320efa87de32050.tar.gz hdf5-9ce6dadd4848ad1371d32f99d320efa87de32050.tar.bz2 |
[svn-r22739] ported revisions 22615 to 22737 from the trunk
Diffstat (limited to 'src/H5HFman.c')
-rw-r--r-- | src/H5HFman.c | 38 |
1 files changed, 38 insertions, 0 deletions
diff --git a/src/H5HFman.c b/src/H5HFman.c index 62f5580..58e3318 100644 --- a/src/H5HFman.c +++ b/src/H5HFman.c @@ -218,6 +218,44 @@ done: /*------------------------------------------------------------------------- + * Function: H5HF_man_get_obj_len + * + * Purpose: Get the size of a managed heap object + * + * Return: SUCCEED (Can't fail) + * + * Programmer: Dana Robinson (derobins@hdfgroup.org) + * August 2012 + * + *------------------------------------------------------------------------- + */ +herr_t +H5HF_man_get_obj_len(H5HF_hdr_t *hdr, const uint8_t *id, size_t *obj_len_p) +{ + + FUNC_ENTER_NOAPI_NOINIT_NOERR + + /* + * Check arguments. + */ + HDassert(hdr); + HDassert(id); + HDassert(obj_len_p); + + /* Skip over the flag byte */ + id++; + + /* Skip over object offset */ + id += hdr->heap_off_size; + + /* Retrieve the entry length */ + UINT64DECODE_VAR(id, *obj_len_p, hdr->heap_len_size); + + FUNC_LEAVE_NOAPI(SUCCEED) +} /* end H5HF_man_get_obj_len() */ + + +/*------------------------------------------------------------------------- * Function: H5HF_man_op_real * * Purpose: Internal routine to perform an operation on a managed heap |