diff options
Diffstat (limited to 'tools/lib/h5tools.h')
-rw-r--r-- | tools/lib/h5tools.h | 33 |
1 files changed, 23 insertions, 10 deletions
diff --git a/tools/lib/h5tools.h b/tools/lib/h5tools.h index b931dc8..2b6fffb 100644 --- a/tools/lib/h5tools.h +++ b/tools/lib/h5tools.h @@ -539,24 +539,36 @@ typedef struct h5tools_context_t { int display_char; /* */ } h5tools_context_t; +/* VOL and VFD info structs used to set the file access property + * lists in the tools. + */ + typedef enum { - VFD_BY_NAME, VOL_BY_NAME, VOL_BY_VALUE -} h5tools_fapl_info_type_t; +} h5tools_vol_info_type_t; -typedef struct h5tools_fapl_info_t { - h5tools_fapl_info_type_t type; +typedef struct h5tools_vol_info_t { + h5tools_vol_info_type_t type; - /* Pointer to information to be passed to the driver/connector for its setup */ + /* Pointer to information string to be passed to the connector for its setup */ const char *info_string; - /* Field specifying either the driver's/connector's name or ID */ + /* Field specifying either the connector's name or value (ID) */ union { - const char *name; /* VOL and VFD */ - H5VL_class_value_t value; /* VOL only */ + const char *name; + H5VL_class_value_t value; } u; -} h5tools_fapl_info_t; +} h5tools_vol_info_t; + +typedef struct h5tools_vfd_info_t { + + /* Pointer to information to be passed to the driver for its setup */ + const void *info; + + /* Name of the VFD */ + const char *name; +} h5tools_vfd_info_t; H5TOOLS_DLLVAR const char *volnames[]; H5TOOLS_DLLVAR const char *drivernames[]; @@ -637,7 +649,8 @@ H5TOOLS_DLL int h5tools_set_attr_output_file(const char *fname, int is_bin); H5TOOLS_DLL int h5tools_set_input_file(const char *fname, int is_bin); H5TOOLS_DLL int h5tools_set_output_file(const char *fname, int is_bin); H5TOOLS_DLL int h5tools_set_error_file(const char *fname, int is_bin); -H5TOOLS_DLL hid_t h5tools_get_fapl(hid_t prev_fapl_id, h5tools_fapl_info_t *fapl_info); +H5TOOLS_DLL hid_t h5tools_get_fapl(hid_t prev_fapl_id, h5tools_vol_info_t *vol_info, + h5tools_vfd_info_t *vfd_info); H5TOOLS_DLL herr_t h5tools_get_vfd_name(hid_t fapl_id, char *drivername, size_t drivername_size); H5TOOLS_DLL hid_t h5tools_fopen(const char *fname, unsigned flags, hid_t fapl, hbool_t use_specific_driver, char *drivername, size_t drivername_size); |