diff options
author | Quincey Koziol <koziol@lbl.gov> | 2019-03-12 16:48:11 (GMT) |
---|---|---|
committer | Quincey Koziol <koziol@lbl.gov> | 2019-03-12 16:48:11 (GMT) |
commit | 07baf44a86de400c170006557e7595ea6ba9c20a (patch) | |
tree | 449fbf063728fa602c311ec44ece4a4053bb24c8 /src/H5VLprivate.h | |
parent | 679b49d43d744f0cc34054944e827326f17a6f3d (diff) | |
parent | 86598573641dfa27278c9e29df0fa79bd7d8e07f (diff) | |
download | hdf5-07baf44a86de400c170006557e7595ea6ba9c20a.zip hdf5-07baf44a86de400c170006557e7595ea6ba9c20a.tar.gz hdf5-07baf44a86de400c170006557e7595ea6ba9c20a.tar.bz2 |
Merge pull request #1599 in HDFFV/hdf5 from preserve_lib_state to develop
* commit '86598573641dfa27278c9e29df0fa79bd7d8e07f':
Add API routines to retrieve, restore, reset, and free library state.
Diffstat (limited to 'src/H5VLprivate.h')
-rw-r--r-- | src/H5VLprivate.h | 14 |
1 files changed, 11 insertions, 3 deletions
diff --git a/src/H5VLprivate.h b/src/H5VLprivate.h index 283c77a..ac77ee0 100644 --- a/src/H5VLprivate.h +++ b/src/H5VLprivate.h @@ -41,8 +41,8 @@ typedef struct H5VL_object_t { /* Internal structure to hold the connector ID & info for FAPLs */ typedef struct H5VL_connector_prop_t { - hid_t connector_id; /* VOL connector's ID */ - const void *connector_info; /* VOL connector info, for open callbacks */ + hid_t connector_id; /* VOL connector's ID */ + void *connector_info; /* VOL connector info, for open callbacks */ } H5VL_connector_prop_t; /* Which kind of VOL connector field to use for searching */ @@ -92,11 +92,19 @@ H5_DLL herr_t H5VL_free_object(H5VL_object_t *obj); H5_DLL herr_t H5VL_get_wrap_ctx(const H5VL_class_t *connector, void *obj, void **wrap_ctx); H5_DLL herr_t H5VL_free_wrap_ctx(const H5VL_class_t *connector, void *wrap_ctx); -H5_DLL herr_t H5VL_set_vol_wrapper(void *obj, const H5VL_t *vol_connector); +H5_DLL herr_t H5VL_set_vol_wrapper(void *obj, H5VL_t *vol_connector); +H5_DLL herr_t H5VL_inc_vol_wrapper(void *vol_wrap_ctx); +H5_DLL herr_t H5VL_dec_vol_wrapper(void *vol_wrap_ctx); H5_DLL herr_t H5VL_reset_vol_wrapper(void); H5_DLL void * H5VL_wrap_object(const H5VL_class_t *connector, void *wrap_ctx, void *obj, H5I_type_t obj_type); +/* Library state functions */ +H5_DLL herr_t H5VL_retrieve_lib_state(void **state); +H5_DLL herr_t H5VL_restore_lib_state(const void *state); +H5_DLL herr_t H5VL_reset_lib_state(void); +H5_DLL herr_t H5VL_free_lib_state(void *state); + /* ID registration functions */ H5_DLL hid_t H5VL_register(H5I_type_t type, void *object, H5VL_t *vol_connector, hbool_t app_ref); H5_DLL hid_t H5VL_wrap_register(H5I_type_t type, void *obj, hbool_t app_ref); |