diff options
author | Quincey Koziol <koziol@hdfgroup.org> | 2006-09-11 17:25:26 (GMT) |
---|---|---|
committer | Quincey Koziol <koziol@hdfgroup.org> | 2006-09-11 17:25:26 (GMT) |
commit | e5cad0ef24543e55d164a26dd42a0cc1ba5c2cbe (patch) | |
tree | 0a33a38538477c1705f93a0b92a2ba84828ff6f4 /src/H5HFprivate.h | |
parent | 9e158b781668387bf82fbab9d60ece304f0e9729 (diff) | |
download | hdf5-e5cad0ef24543e55d164a26dd42a0cc1ba5c2cbe.zip hdf5-e5cad0ef24543e55d164a26dd42a0cc1ba5c2cbe.tar.gz hdf5-e5cad0ef24543e55d164a26dd42a0cc1ba5c2cbe.tar.bz2 |
[svn-r12655] Description:
Add "op" routine to perform operation on heap object "in situ", to allow
for faster operations on dense links during B-tree traversal & lookup.
Refactor the "read" routine to use the internal version of the "op" routine,
to keep the code duplication as low as possible.
Tested on:
Mac OS X.4/PPC (amazon)
Linux/32 2.6 (chicago)
Linux/64 2.6 (chicago2)
Diffstat (limited to 'src/H5HFprivate.h')
-rw-r--r-- | src/H5HFprivate.h | 6 |
1 files changed, 6 insertions, 0 deletions
diff --git a/src/H5HFprivate.h b/src/H5HFprivate.h index 5e25a58f..c762eca 100644 --- a/src/H5HFprivate.h +++ b/src/H5HFprivate.h @@ -93,6 +93,10 @@ typedef struct H5HF_stat_t { /* Fractal heap info (forward decl - defined in H5HFpkg.h) */ typedef struct H5HF_t H5HF_t; +/* Typedef for 'op' operations */ +typedef herr_t (*H5HF_operator_t)(const void *obj/*in*/, size_t obj_len, + void *op_data/*in,out*/); + /*****************************/ /* Library-private Variables */ @@ -111,6 +115,8 @@ H5_DLL herr_t H5HF_get_obj_len(H5HF_t *fh, hid_t dxpl_id, const void *id, size_t *obj_len_p/*out*/); H5_DLL herr_t H5HF_read(H5HF_t *fh, hid_t dxpl_id, const void *id, void *obj/*out*/); +H5_DLL herr_t H5HF_op(H5HF_t *fh, hid_t dxpl_id, const void *_id, + H5HF_operator_t op, void *op_data); H5_DLL herr_t H5HF_remove(H5HF_t *fh, hid_t dxpl_id, const void *id); H5_DLL herr_t H5HF_close(H5HF_t *fh, hid_t dxpl_id); H5_DLL herr_t H5HF_delete(H5F_t *f, hid_t dxpl_id, haddr_t fh_addr); |