summaryrefslogtreecommitdiffstats
path: root/src/H5Fprivate.h
diff options
context:
space:
mode:
authorNeil Fortner <nfortne2@hdfgroup.org>2019-10-29 19:38:50 (GMT)
committerNeil Fortner <nfortne2@hdfgroup.org>2019-11-08 21:14:33 (GMT)
commit1dbec40d465072540f8507c524ae7b909a6b1cf0 (patch)
tree111dd9bb4925da3be08a4a5ae63f7bffb16d6ee0 /src/H5Fprivate.h
parentafd4b291315e39e3966eadaf8ae9894b30e9504e (diff)
downloadhdf5-1dbec40d465072540f8507c524ae7b909a6b1cf0.zip
hdf5-1dbec40d465072540f8507c524ae7b909a6b1cf0.tar.gz
hdf5-1dbec40d465072540f8507c524ae7b909a6b1cf0.tar.bz2
Implement H5VLget_file_type() to return a copy of a datatype with the
location set to be in a file. Only meant to be used by VOL connectors. Implement H5VLpeek_connector_id() to support connectors querying their own IDs. Fix app_ref with connector IDs in a couple places (external VOLs registered as default through ENV should be visible to the application). Modify vlen and reference interfaces to work with arbitrary VOL connectors. Implement file "post open" specific callback, to enable connectors to update their file structs after a wrap context has been set.
Diffstat (limited to 'src/H5Fprivate.h')
-rw-r--r--src/H5Fprivate.h5
1 files changed, 4 insertions, 1 deletions
diff --git a/src/H5Fprivate.h b/src/H5Fprivate.h
index c9a1b25..e1a8a2f 100644
--- a/src/H5Fprivate.h
+++ b/src/H5Fprivate.h
@@ -26,7 +26,6 @@ typedef struct H5F_t H5F_t;
/* Public headers needed by this file */
#include "H5FDpublic.h" /* File drivers */
-#include "H5VLpublic.h" /* Virtual Object Layer */
/* Private headers needed by this file */
#include "H5MMprivate.h" /* Memory management */
@@ -34,6 +33,7 @@ typedef struct H5F_t H5F_t;
#include "H5Pprivate.h" /* Property lists */
#endif /* H5_HAVE_PARALLEL */
#include "H5VMprivate.h" /* Vectors and arrays */
+#include "H5VLprivate.h" /* Virtual Object Layer */
/**************************/
@@ -337,6 +337,7 @@ typedef struct H5F_t H5F_t;
#define H5F_GET_MIN_DSET_OHDR(F) ((F)->shared->crt_dset_min_ohdr_flag)
#define H5F_SET_MIN_DSET_OHDR(F, V) ((F)->shared->crt_dset_min_ohdr_flag = (V))
#define H5F_VOL_CLS(F) ((F)->shared->vol_cls)
+#define H5F_VOL_OBJ(F) ((F)->vol_obj)
#else /* H5F_MODULE */
#define H5F_LOW_BOUND(F) (H5F_get_low_bound(F))
#define H5F_HIGH_BOUND(F) (H5F_get_high_bound(F))
@@ -398,6 +399,7 @@ typedef struct H5F_t H5F_t;
#define H5F_GET_MIN_DSET_OHDR(F) (H5F_get_min_dset_ohdr(F))
#define H5F_SET_MIN_DSET_OHDR(F, V) (H5F_set_min_dset_ohdr((F), (V)))
#define H5F_VOL_CLS(F) (H5F_get_vol_cls(F))
+#define H5F_VOL_OBJ(F) (H5F_get_vol_obj(F))
#endif /* H5F_MODULE */
@@ -759,6 +761,7 @@ H5_DLL hbool_t H5F_get_null_fsm_addr(const H5F_t *f);
H5_DLL hbool_t H5F_get_min_dset_ohdr(const H5F_t *f);
H5_DLL herr_t H5F_set_min_dset_ohdr(H5F_t *f, hbool_t minimize);
H5_DLL const H5VL_class_t *H5F_get_vol_cls(const H5F_t *f);
+H5_DLL H5VL_object_t *H5F_get_vol_obj(const H5F_t *f);
/* Functions than retrieve values set/cached from the superblock/FCPL */
H5_DLL haddr_t H5F_get_base_addr(const H5F_t *f);