diff options
author | Quincey Koziol <koziol@hdfgroup.org> | 2005-01-06 22:30:10 (GMT) |
---|---|---|
committer | Quincey Koziol <koziol@hdfgroup.org> | 2005-01-06 22:30:10 (GMT) |
commit | e9109df3f235a0a64e7204339a44ae24f2a607a3 (patch) | |
tree | a5bdd1ceebea5d22f0e9ba3b3337c59a92dd2020 /src/H5SLprivate.h | |
parent | 4357fccbd3bb8367d54604eefc9ea7c537edb023 (diff) | |
download | hdf5-e9109df3f235a0a64e7204339a44ae24f2a607a3.zip hdf5-e9109df3f235a0a64e7204339a44ae24f2a607a3.tar.gz hdf5-e9109df3f235a0a64e7204339a44ae24f2a607a3.tar.bz2 |
[svn-r9764] Purpose:
New feature
Description:
Add some additional features to the skip list code that was needed to
fully support all the features that the threaded, balanced binary tree code
has.
Also, updated the property list code to take advantage of a few of the
new features.
Platforms tested:
FreeBSD 4.10 (sleipnir)
Too minor to require h5committest
Diffstat (limited to 'src/H5SLprivate.h')
-rw-r--r-- | src/H5SLprivate.h | 10 |
1 files changed, 9 insertions, 1 deletions
diff --git a/src/H5SLprivate.h b/src/H5SLprivate.h index f3944f4..bf8d3b7 100644 --- a/src/H5SLprivate.h +++ b/src/H5SLprivate.h @@ -43,7 +43,8 @@ typedef enum { H5SL_TYPE_INT, /* Skip list keys are 'int's */ H5SL_TYPE_HADDR, /* Skip list keys are 'haddr_t's */ H5SL_TYPE_STR, /* Skip list keys are 'char *'s (ie. strings) */ - H5SL_TYPE_HSIZE /* Skip list keys are 'hsize_t's */ + H5SL_TYPE_HSIZE, /* Skip list keys are 'hsize_t's */ + H5SL_TYPE_UNSIGNED /* Skip list keys are 'unsigned's */ } H5SL_type_t; /**********/ @@ -61,14 +62,21 @@ typedef herr_t (*H5SL_operator_t)(void *item, void *key, H5_DLL H5SL_t *H5SL_create(H5SL_type_t type, double p, size_t max_level); H5_DLL size_t H5SL_count(H5SL_t *slist); H5_DLL herr_t H5SL_insert(H5SL_t *slist, void *item, const void *key); +H5_DLL H5SL_node_t *H5SL_add(H5SL_t *slist, void *item, const void *key); H5_DLL void *H5SL_remove(H5SL_t *slist, const void *key); H5_DLL void *H5SL_search(H5SL_t *slist, const void *key); +H5_DLL void *H5SL_less(H5SL_t *slist, const void *key); +H5_DLL H5SL_node_t *H5SL_find(H5SL_t *slist, const void *key); H5_DLL H5SL_node_t *H5SL_first(H5SL_t *slist); H5_DLL H5SL_node_t *H5SL_next(H5SL_node_t *slist_node); +H5_DLL H5SL_node_t *H5SL_prev(H5SL_node_t *slist_node); +H5_DLL H5SL_node_t *H5SL_last(H5SL_t *slist); H5_DLL void *H5SL_item(H5SL_node_t *slist_node); H5_DLL herr_t H5SL_iterate(H5SL_t *slist, H5SL_operator_t op, void *op_data); H5_DLL herr_t H5SL_release(H5SL_t *slist); +H5_DLL herr_t H5SL_free(H5SL_t *slist, H5SL_operator_t op, void *op_data); H5_DLL herr_t H5SL_close(H5SL_t *slist); +H5_DLL herr_t H5SL_destroy(H5SL_t *slist, H5SL_operator_t op, void *op_data); #endif /* _H5SLprivate_H */ |