ddn.lib.hdf5.h5l

HDF5 Link Binding

This module provides D bindings for HDF5 link operations (H5L API).

License

BSD-3-Clause

Types 15

enumH5L_type_t : int

Link type

ERROR = - 1
HARD = 0
SOFT = 1
EXTERNAL = 64
MAX = 255
enumH5_index_t : int

Index type

UNKNOWN = - 1
NAME = 0
CRT_ORDER = 1
N = 2
enumH5_iter_order_t : int

Iteration order

UNKNOWN = - 1
INC = 0
DEC = 1
NATIVE = 2
N = 3

Object token (16 bytes)

Fields
ubyte[16] __data

Link information structure

Fields
hbool_t corder_valid
long corder
int cset
aliasH5L_iterate2_t = herr_t function(hid_t group, const char * name, const H5L_info2_t * info, void * op_data)

Link iteration callback

Link information structure (version 1, deprecated)

Fields
H5L_type_t typeLink type
hbool_t corder_validCreation order valid flag
long corderCreation order
int csetCharacter set (H5Tcsett)
aliasH5L_iterate1_t = herr_t function(hid_t group, const char * name, const H5L_info1_t * info, void * op_data)

Link iteration callback (version 1, deprecated)

aliasH5L_traverse_func_t = hid_t function(const char * link_name, hid_t cur_group, const void * lnkdata, size_t lnkdata_size, hid_t lapl_id, hid_t dxpl_id) @nogc nothrow

Callback function type for user-defined link traversal.

This function is called when traversing a user-defined link.

Parameters

link_nameName of the link being traversed
cur_groupCurrent group containing the link
lnkdataUser data stored with the link
lnkdata_sizeSize of user data
lapl_idLink access property list identifier
udataUser-supplied data for the callback

Returns

Object identifier on success, negative on failure.
aliasH5L_create_func_t = herr_t function(const char * link_name, hid_t loc_group, const void * lnkdata, size_t lnkdata_size, hid_t lcpl_id) @nogc nothrow

Callback function type for creating user-defined links.

Parameters

link_nameName of the link being created
loc_groupLocation identifier where link is being created
lnkdataUser data for the link
lnkdata_sizeSize of user data
lcpl_idLink creation property list identifier

Returns

Non-negative on success, negative on failure.
aliasH5L_move_func_t = herr_t function(const char * new_name, hid_t new_loc, const void * lnkdata, size_t lnkdata_size) @nogc nothrow

Callback function type for moving/renaming user-defined links.

Parameters

new_nameNew name for the link
new_locNew location identifier
lnkdataUser data stored with the link
lnkdata_sizeSize of user data

Returns

Non-negative on success, negative on failure.
aliasH5L_copy_func_t = herr_t function(const char * new_name, hid_t new_loc, const void * lnkdata, size_t lnkdata_size) @nogc nothrow

Callback function type for copying user-defined links.

Parameters

new_nameName for the copy
new_locLocation identifier for the copy
lnkdataUser data stored with the link
lnkdata_sizeSize of user data

Returns

Non-negative on success, negative on failure.
aliasH5L_delete_func_t = herr_t function(const char * link_name, hid_t file, const void * lnkdata, size_t lnkdata_size) @nogc nothrow

Callback function type for deleting user-defined links.

Parameters

link_nameName of the link being deleted
fileFile identifier containing the link
lnkdataUser data stored with the link
lnkdata_sizeSize of user data

Returns

Non-negative on success, negative on failure.
aliasH5L_query_func_t = ssize_t function(const char * link_name, const void * lnkdata, size_t lnkdata_size, void * buf, size_t buf_size) @nogc nothrow

Callback function type for querying user-defined links.

Parameters

link_nameName of the link being queried
lnkdataUser data stored with the link
lnkdata_sizeSize of user data
bufBuffer to receive query result
buf_sizeSize of buffer

Returns

Size of query result on success, negative on failure.

User-defined link class structure.

This structure defines the callbacks for a user-defined link type. Used with H5Lregister() to register custom link types.

Fields
int version_Version of this struct (use H5LLINKCLASSTVERS)
H5L_type_t idLink type identifier
const(char) * commentComment describing link type (for debugging)
H5L_create_func_t create_funcCallback to create link
H5L_move_func_t move_funcCallback to move/rename link
H5L_copy_func_t copy_funcCallback to copy link
H5L_traverse_func_t trav_funcCallback to traverse link
H5L_delete_func_t del_funcCallback to delete link
H5L_query_func_t query_funcCallback to query link

Functions 28

fnherr_t H5Lcreate_hard(hid_t cur_loc, const char * cur_name, hid_t dst_loc, const char * dst_name, hid_t lcpl_id, hid_t lapl_id)Creates a hard link
fnherr_t H5Lcreate_soft(const char * link_target, hid_t link_loc_id, const char * link_name, hid_t lcpl_id, hid_t lapl_id)Creates a soft link
fnherr_t H5Lcreate_external(const char * file_name, const char * obj_name, hid_t link_loc_id, const char * link_name, hid_t lcpl_id, hid_t lapl_id)Creates an external link
fnherr_t H5Ldelete(hid_t loc_id, const char * name, hid_t lapl_id)Deletes a link
fnherr_t H5Ldelete_by_idx(hid_t loc_id, const char * group_name, H5_index_t idx_type, H5_iter_order_t order, hsize_t n, hid_t lapl_id)Deletes a link by index
fnhtri_t H5Lexists(hid_t loc_id, const char * name, hid_t lapl_id)Checks if link exists
fnherr_t H5Lget_info2(hid_t loc_id, const char * name, H5L_info2_t * linfo, hid_t lapl_id)Gets link information
fnherr_t H5Lget_val(hid_t loc_id, const char * name, void * buf, size_t size, hid_t lapl_id)Gets link value
fnssize_t H5Lget_name_by_idx(hid_t loc_id, const char * group_name, H5_index_t idx_type, H5_iter_order_t order, hsize_t n, char * name, size_t size, hid_t lapl_id)Gets link name by index
fnherr_t H5Lmove(hid_t src_loc, const char * src_name, hid_t dst_loc, const char * dst_name, hid_t lcpl_id, hid_t lapl_id)Moves a link
fnherr_t H5Lcopy(hid_t src_loc, const char * src_name, hid_t dst_loc, const char * dst_name, hid_t lcpl_id, hid_t lapl_id)Copies a link
fnherr_t H5Literate2(hid_t grp_id, H5_index_t idx_type, H5_iter_order_t order, hsize_t * idx, H5L_iterate2_t op, void * op_data)Iterates over links
fnherr_t H5Literate_by_name2(hid_t loc_id, const char * group_name, H5_index_t idx_type, H5_iter_order_t order, hsize_t * idx, H5L_iterate2_t op, void * op_data, hid_t lapl_id)Iterates over links by name
fnherr_t H5Lvisit2(hid_t grp_id, H5_index_t idx_type, H5_iter_order_t order, H5L_iterate2_t op, void * op_data)Visits links recursively
fnherr_t H5Lget_info_by_idx2(hid_t loc_id, const char * group_name, H5_index_t idx_type, H5_iter_order_t order, hsize_t n, H5L_info2_t * linfo, hid_t lapl_id)Gets link information by index.
fnherr_t H5Lget_val_by_idx(hid_t loc_id, const char * group_name, H5_index_t idx_type, H5_iter_order_t order, hsize_t n, void * buf, size_t size, hid_t lapl_id)Gets link value by index.
fnherr_t H5Lvisit_by_name2(hid_t loc_id, const char * group_name, H5_index_t idx_type, H5_iter_order_t order, H5L_iterate2_t op, void * op_data, hid_t lapl_id)Visits links recursively by name.
fnherr_t H5Lunpack_elink_val(const void * ext_linkval, size_t link_size, uint * flags, const char * * filename, const char * * obj_path)Unpacks an external link value.
fnherr_t H5Lcreate_ud(hid_t link_loc_id, const char * link_name, H5L_type_t link_type, const void * udata, size_t udata_size, hid_t lcpl_id, hid_t lapl_id)Creates a user-defined link.
fnhtri_t H5Lis_registered(H5L_type_t id)Checks if a user-defined link class is registered.
fnherr_t H5Lregister(const H5L_class_t * cls)Registers a user-defined link class.
fnherr_t H5Lunregister(H5L_type_t id)Unregisters a user-defined link class.
fnherr_t H5Lget_info1(hid_t loc_id, const char * name, H5L_info1_t * linfo, hid_t lapl_id)Gets link info (version 1, deprecated).
fnherr_t H5Lget_info_by_idx1(hid_t loc_id, const char * group_name, H5_index_t idx_type, H5_iter_order_t order, hsize_t n, H5L_info1_t * linfo, hid_t lapl_id)Gets link info by index (version 1, deprecated).
fnherr_t H5Literate1(hid_t grp_id, H5_index_t idx_type, H5_iter_order_t order, hsize_t * idx, H5L_iterate1_t op, void * op_data)Iterates over links in a group (version 1, deprecated).
fnherr_t H5Literate_by_name1(hid_t loc_id, const char * group_name, H5_index_t idx_type, H5_iter_order_t order, hsize_t * idx, H5L_iterate1_t op, void * op_data, hid_t lapl_id)Iterates over links by name (version 1, deprecated).
fnherr_t H5Lvisit1(hid_t grp_id, H5_index_t idx_type, H5_iter_order_t order, H5L_iterate1_t op, void * op_data)Visits links (version 1, deprecated).
fnherr_t H5Lvisit_by_name1(hid_t loc_id, const char * group_name, H5_index_t idx_type, H5_iter_order_t order, H5L_iterate1_t op, void * op_data, hid_t lapl_id)Visits links by name (version 1, deprecated).

Variables 1

enumvarH5L_LINK_CLASS_T_VERS = 1

Version number for H5L_class_t structure