diff options
author | Quincey Koziol <koziol@hdfgroup.org> | 2005-02-17 00:37:04 (GMT) |
---|---|---|
committer | Quincey Koziol <koziol@hdfgroup.org> | 2005-02-17 00:37:04 (GMT) |
commit | 27dbdb8c7197b30c2683f4be2b9ef7b703d81d5f (patch) | |
tree | 36a72b479a22979060a6ccd4b663ccc0cb0cafc9 /src/H5B2private.h | |
parent | a68c4c7981ba4224e72f64556483f3707be94ffc (diff) | |
download | hdf5-27dbdb8c7197b30c2683f4be2b9ef7b703d81d5f.zip hdf5-27dbdb8c7197b30c2683f4be2b9ef7b703d81d5f.tar.gz hdf5-27dbdb8c7197b30c2683f4be2b9ef7b703d81d5f.tar.bz2 |
[svn-r10020] Purpose:
New feature
Description:
Add code to iterate over all the records in a v2 B-tree.
Platforms tested:
FreeBSD 4.11 (sleipnir)
Solaris 2.9 (shanti)
Diffstat (limited to 'src/H5B2private.h')
-rw-r--r-- | src/H5B2private.h | 18 |
1 files changed, 12 insertions, 6 deletions
diff --git a/src/H5B2private.h b/src/H5B2private.h index 51b5c2d..457d12a 100644 --- a/src/H5B2private.h +++ b/src/H5B2private.h @@ -36,13 +36,17 @@ /* Library Private Macros */ /**************************/ -/* - * Feature: Define this constant if you want to check B-tree consistency - * after each B-tree operation. Note that this slows down the - * library considerably! Debugging the B-tree depends on assert() - * being enabled. +/* Define return values from operator callback function for H5B2_iterate */ +/* (Actually, any positive value will cause the iterator to stop and pass back + * that positive value to the function that called the iterator) */ -/* #define H5B2_DEBUG */ +#define H5B2_ITER_ERROR (-1) +#define H5B2_ITER_CONT (0) +#define H5B2_ITER_STOP (1) + +/* Define the operator callback function pointer for H5B2_iterate() */ +typedef int (*H5B2_operator_t)(const void *record, void *op_data); + /****************************/ /* Library Private Typedefs */ @@ -88,6 +92,8 @@ H5_DLL herr_t H5B2_create(H5F_t *f, hid_t dxpl_id, const H5B2_class_t *type, haddr_t *addr_p); H5_DLL herr_t H5B2_insert(H5F_t *f, hid_t dxpl_id, const H5B2_class_t *type, haddr_t addr, void *udata); +H5_DLL herr_t H5B2_iterate(H5F_t *f, hid_t dxpl_id, const H5B2_class_t *type, + haddr_t addr, H5B2_operator_t op, void *op_data); #endif /* _H5B2private_H */ |