23 #error "Do not include this file outside the H5G package!" 30 #include "H5Gprivate.h" 33 #include "H5B2private.h" 34 #include "H5FLprivate.h" 35 #include "H5HFprivate.h" 36 #include "H5HLprivate.h" 37 #include "H5Oprivate.h" 38 #include "H5SLprivate.h" 45 #define H5G_DENSE_FHEAP_ID_LEN 7 48 #define H5G_NODE_SIZE(f) ( \ 56 + ((2 * H5F_SYM_LEAF_K(f)) * H5G_SIZEOF_ENTRY(f)) \ 346 const H5O_link_t *lnk,
unsigned target,
size_t *nlinks,
hbool_t last_comp,
362 const H5O_ginfo_t *ginfo, H5O_stab_t *
stab);
365 H5O_link_t *obj_lnk,
H5O_type_t obj_type,
const void *crt_info,
369 const void *crt_info,
hid_t dxpl_id);
379 H5RS_str_t *grp_full_path_r,
const char *
name);
383 H5O_link_t *lnk,
hid_t dxpl_id);
386 #ifndef H5_STRICT_FORMAT_CHECKS 388 H5O_stab_t *alt_stab);
390 #ifndef H5_NO_DEPRECATED_SYMBOLS 400 H5_copy_depth_t depth);
410 int fwidth,
const H5HL_t *heap);
415 const void *_rt_key,
void *_udata);
417 const void *_rt_key,
void *_udata);
419 const void *_rt_key,
void *_udata);
421 const void *_rt_key,
void *_udata);
423 const void *_rt_key,
void *_udata);
425 const void *_rt_key,
void *_udata);
439 H5RS_str_t *grp_full_path_r,
const H5O_link_t *lnk);
448 H5RS_str_t *grp_full_path_r,
const char *
name);
450 const H5O_linfo_t *linfo, H5RS_str_t *grp_full_path_r,
H5_index_t idx_type,
456 H5O_link_t *lnk,
hid_t dxpl_id);
460 #ifndef H5_NO_DEPRECATED_SYMBOLS 469 const H5O_pline_t *pline);
471 const H5O_linfo_t *linfo,
const H5O_link_t *lnk);
473 const H5O_linfo_t *linfo,
const char *
name, H5O_link_t *lnk);
484 H5RS_str_t *grp_full_path_r,
const char *
name);
486 const H5O_linfo_t *linfo, H5RS_str_t *grp_full_path_r,
H5_index_t idx_type,
490 #ifndef H5_NO_DEPRECATED_SYMBOLS 499 const H5O_ginfo_t *ginfo,
const H5O_linfo_t *linfo,
509 H5O_link_t *lnk,
hid_t dxpl_id);
521 H5G_loc_t *obj_loc,
H5O_type_t obj_type,
const void *crt_info,
hid_t dxpl_id);
531 H5_DLL herr_t H5G__user_path_test(
hid_t obj_id,
char *user_path,
size_t *user_path_len,
unsigned *user_path_hidden);
H5O_copy_file_ud_common_t common
H5_DLL herr_t H5G__stab_iterate(const H5O_loc_t *oloc, hid_t dxpl_id, H5_iter_order_t order, hsize_t skip, hsize_t *last_lnk, H5G_lib_iterate_t op, void *op_data)
H5_DLLVAR const H5B2_class_t H5G_BT2_CORDER[1]
#define H5G_DENSE_FHEAP_ID_LEN
H5_DLL herr_t H5G__compact_remove_by_idx(const H5O_loc_t *oloc, hid_t dxpl_id, const H5O_linfo_t *linfo, H5RS_str_t *grp_full_path_r, H5_index_t idx_type, H5_iter_order_t order, hsize_t n)
H5_DLLVAR H5B_class_t H5B_SNODE[1]
struct H5G_bt2_ud_common_t H5G_bt2_ud_common_t
struct H5G_bt_rm_t H5G_bt_rm_t
H5_DLL herr_t H5G__obj_create(H5F_t *f, hid_t dxpl_id, H5G_obj_create_t *gcrt_info, H5O_loc_t *oloc)
H5_DLL herr_t H5G__dense_iterate(H5F_t *f, hid_t dxpl_id, const H5O_linfo_t *linfo, H5_index_t idx_type, H5_iter_order_t order, hsize_t skip, hsize_t *last_lnk, H5G_lib_iterate_t op, void *op_data)
H5_DLL herr_t H5G__stab_lookup_by_idx(const H5O_loc_t *grp_oloc, H5_iter_order_t order, hsize_t n, H5O_link_t *lnk, hid_t dxpl_id)
H5_DLL htri_t H5G__compact_lookup(const H5O_loc_t *grp_oloc, const char *name, H5O_link_t *lnk, hid_t dxpl_id)
herr_t(* H5G_bt_find_op_t)(const H5G_entry_t *ent, void *operator_data)
H5_DLL herr_t H5G__obj_create_real(H5F_t *f, hid_t dxpl_id, const H5O_ginfo_t *ginfo, const H5O_linfo_t *linfo, const H5O_pline_t *pline, H5G_obj_create_t *gcrt_info, H5O_loc_t *oloc)
struct H5G_dense_bt2_corder_rec_t H5G_dense_bt2_corder_rec_t
H5_DLL herr_t H5G__link_release_table(H5G_link_table_t *ltable)
H5_DLL void H5G__ent_copy(H5G_entry_t *dst, const H5G_entry_t *src, H5_copy_depth_t depth)
H5_DLL H5G_obj_t H5G__dense_get_type_by_idx(H5F_t *f, hid_t dxpl_id, H5O_linfo_t *linfo, hsize_t idx)
H5_DLL int H5G__node_by_idx(H5F_t *f, hid_t dxpl_id, const void *_lt_key, haddr_t addr, const void *_rt_key, void *_udata)
struct H5G_bt2_ud_ins_t H5G_bt2_ud_ins_t
unsigned long long hsize_t
H5_DLL herr_t H5G__stab_remove_by_idx(const H5O_loc_t *oloc, hid_t dxpl_id, H5RS_str_t *grp_full_path_r, H5_iter_order_t order, hsize_t n)
H5RS_str_t * grp_full_path_r
H5_DLL herr_t H5G__dense_insert(H5F_t *f, hid_t dxpl_id, const H5O_linfo_t *linfo, const H5O_link_t *lnk)
struct H5G_cache_t::@26 stab
H5_DLL herr_t H5G__loc_copy(H5G_loc_t *dst, const H5G_loc_t *src, H5_copy_depth_t depth)
H5_DLL int H5G__node_iterate(H5F_t *f, hid_t dxpl_id, const void *_lt_key, haddr_t addr, const void *_rt_key, void *_udata)
H5_DLL ssize_t H5G__compact_get_name_by_idx(const H5O_loc_t *oloc, hid_t dxpl_id, const H5O_linfo_t *linfo, H5_index_t idx_type, H5_iter_order_t order, hsize_t idx, char *name, size_t size)
H5_DLL herr_t H5G__node_iterate_size(H5F_t *f, hid_t dxpl_id, const void *_lt_key, haddr_t addr, const void *_rt_key, void *_udata)
H5_DLL herr_t H5G__link_name_replace(H5F_t *file, hid_t dxpl_id, H5RS_str_t *grp_full_path_r, const H5O_link_t *lnk)
H5_DLL htri_t H5G__dense_lookup(H5F_t *f, hid_t dxpl_id, const H5O_linfo_t *linfo, const char *name, H5O_link_t *lnk)
H5_DLL herr_t H5G__stab_insert(const H5O_loc_t *grp_oloc, const char *name, H5O_link_t *obj_lnk, H5O_type_t obj_type, const void *crt_info, hid_t dxpl_id)
H5_DLL htri_t H5G__obj_lookup(const H5O_loc_t *grp_oloc, const char *name, H5O_link_t *lnk, hid_t dxpl_id)
H5_DLL H5G_obj_t H5G__stab_get_type_by_idx(H5O_loc_t *oloc, hsize_t idx, hid_t dxpl_id)
H5_DLLVAR const H5B2_class_t H5G_BT2_NAME[1]
H5_DLL herr_t H5G__link_to_loc(const H5G_loc_t *grp_loc, const H5O_link_t *lnk, H5G_loc_t *obj_loc)
H5_DLL herr_t H5G__ent_encode_vec(const H5F_t *f, uint8_t **pp, const H5G_entry_t *ent, unsigned n)
H5_DLL herr_t H5G__ent_debug(const H5G_entry_t *ent, FILE *stream, int indent, int fwidth, const H5HL_t *heap)
H5_DLL herr_t H5G__dense_remove(H5F_t *f, hid_t dxpl_id, const H5O_linfo_t *linfo, H5RS_str_t *grp_full_path_r, const char *name)
H5G_cache_type_t cache_type
H5_DLL herr_t H5G__stab_create(H5O_loc_t *grp_oloc, hid_t dxpl_id, const H5O_ginfo_t *ginfo, H5O_stab_t *stab)
H5_DLLVAR const H5AC_class_t H5AC_SNODE[1]
struct H5G_node_t H5G_node_t
H5_DLL herr_t H5G__dense_delete(H5F_t *f, hid_t dxpl_id, H5O_linfo_t *linfo, hbool_t adj_link)
struct H5G_bt_common_t H5G_bt_common_t
HDFFCLIBAPI _fcd intf intf * order
H5_DLL herr_t H5G__obj_iterate(const H5O_loc_t *grp_oloc, H5_index_t idx_type, H5_iter_order_t order, hsize_t skip, hsize_t *last_lnk, H5G_lib_iterate_t op, void *op_data, hid_t dxpl_id)
H5_DLL void H5G__ent_reset(H5G_entry_t *ent)
H5_DLL H5G_t * H5G__open_name(const H5G_loc_t *loc, const char *name, hid_t gapl_id, hid_t dxpl_id)
H5_DLL herr_t H5G__link_sort_table(H5G_link_table_t *ltable, H5_index_t idx_type, H5_iter_order_t order)
struct H5G_obj_create_t H5G_obj_create_t
H5_DLL int H5G__node_copy(H5F_t *f, hid_t dxpl_id, const void *_lt_key, haddr_t addr, const void *_rt_key, void *_udata)
struct H5G_cache_t::@27 slink
H5G_bt2_ud_common_t common
H5_DLL herr_t H5G__compact_iterate(const H5O_loc_t *oloc, hid_t dxpl_id, const H5O_linfo_t *linfo, H5_index_t idx_type, H5_iter_order_t order, hsize_t skip, hsize_t *last_lnk, H5G_lib_iterate_t op, void *op_data)
H5_DLL herr_t H5G__stab_create_components(H5F_t *f, H5O_stab_t *stab, size_t size_hint, hid_t dxpl_id)
struct H5G_bt_ins_t H5G_bt_ins_t
H5_DLL herr_t H5G__obj_info(H5O_loc_t *oloc, H5G_info_t *grp_info, hid_t dxpl_id)
H5_DLL herr_t H5G__compact_insert(const H5O_loc_t *grp_oloc, H5O_link_t *obj_lnk, hid_t dxpl_id)
H5_DLL herr_t H5G__dense_create(H5F_t *f, hid_t dxpl_id, H5O_linfo_t *linfo, const H5O_pline_t *pline)
H5_DLL herr_t H5G__ent_to_link(H5O_link_t *lnk, const H5HL_t *heap, const H5G_entry_t *ent, const char *name)
HDFFCLIBAPI _fcd _fcd intf * n
H5_DLL herr_t H5G__stab_count(struct H5O_loc_t *oloc, hsize_t *num_objs, hid_t dxpl_id)
struct H5G_bt_it_bt_t H5G_bt_it_bt_t
H5_DLL herr_t H5G__compact_remove(const H5O_loc_t *oloc, hid_t dxpl_id, H5RS_str_t *grp_full_path_r, const char *name)
struct H5G_copy_file_ud_t H5G_copy_file_ud_t
H5_DLL herr_t H5G__stab_lookup(const H5O_loc_t *grp_oloc, const char *name, H5O_link_t *lnk, hid_t dxpl_id)
H5_DLL herr_t H5G__term_deprec_interface(void)
H5_DLL ssize_t H5G__stab_get_name_by_idx(const H5O_loc_t *oloc, H5_iter_order_t order, hsize_t n, char *name, size_t size, hid_t dxpl_id)
union H5G_cache_t H5G_cache_t
H5_DLL herr_t H5G__traverse_special(const H5G_loc_t *grp_loc, const H5O_link_t *lnk, unsigned target, size_t *nlinks, hbool_t last_comp, H5G_loc_t *obj_loc, hbool_t *obj_exists, hid_t lapl_id, hid_t dxpl_id)
struct H5G_bt_it_it_t H5G_bt_it_it_t
H5_DLL herr_t H5G__compact_lookup_by_idx(const H5O_loc_t *oloc, hid_t dxpl_id, const H5O_linfo_t *linfo, H5_index_t idx_type, H5_iter_order_t order, hsize_t n, H5O_link_t *lnk)
H5_DLL herr_t H5G__stab_insert_real(H5F_t *f, const H5O_stab_t *stab, const char *name, H5O_link_t *obj_lnk, H5O_type_t obj_type, const void *crt_info, hid_t dxpl_id)
const H5O_loc_t * src_oloc
H5_DLL herr_t H5G__link_iterate_table(const H5G_link_table_t *ltable, hsize_t skip, hsize_t *last_lnk, const H5G_lib_iterate_t op, void *op_data)
H5_DLL herr_t H5G__stab_delete(H5F_t *f, hid_t dxpl_id, const H5O_stab_t *stab)
H5_DLL int H5G__node_build_table(H5F_t *f, hid_t dxpl_id, const void *_lt_key, haddr_t addr, const void *_rt_key, void *_udata)
H5_DLL herr_t H5G__node_init(H5F_t *f)
struct H5G_bt_lkp_t H5G_bt_lkp_t
H5_DLL herr_t H5G__init(void)
H5_DLL herr_t H5G__stab_remove(const H5O_loc_t *oloc, hid_t dxpl_id, H5RS_str_t *grp_full_path_r, const char *name)
struct H5G_bt_it_idx_common_t H5G_bt_it_idx_common_t
H5_DLL herr_t H5G__ent_convert(H5F_t *f, hid_t dxpl_id, H5HL_t *heap, const char *name, const H5O_link_t *lnk, H5O_type_t obj_type, const void *crt_info, H5G_entry_t *ent)
H5_DLL herr_t H5G__loc_insert(H5G_loc_t *grp_loc, const char *name, H5G_loc_t *obj_loc, H5O_type_t obj_type, const void *crt_info, hid_t dxpl_id)
H5_DLL herr_t H5G__node_free(H5G_node_t *sym)
H5_DLL H5G_obj_t H5G__compact_get_type_by_idx(H5O_loc_t *oloc, hid_t dxpl_id, const H5O_linfo_t *linfo, hsize_t idx)
H5_DLL herr_t H5G__stab_bh_size(H5F_t *f, hid_t dxpl_id, const H5O_stab_t *stab, H5_ih_info_t *bh_info)
H5_DLL herr_t H5G__stab_valid(H5O_loc_t *grp_oloc, hid_t dxpl_id, H5O_stab_t *alt_stab)
H5_DLL ssize_t H5G__dense_get_name_by_idx(H5F_t *f, hid_t dxpl_id, H5O_linfo_t *linfo, H5_index_t idx_type, H5_iter_order_t order, hsize_t n, char *name, size_t size)
H5_DLL herr_t H5G__dense_lookup_by_idx(H5F_t *f, hid_t dxpl_id, const H5O_linfo_t *linfo, H5_index_t idx_type, H5_iter_order_t order, hsize_t n, H5O_link_t *lnk)
H5_DLL herr_t H5G__name_init(H5G_name_t *name, const char *path)
H5_DLL int H5G__node_sumup(H5F_t *f, hid_t dxpl_id, const void *_lt_key, haddr_t addr, const void *_rt_key, void *_udata)
H5G_link_table_t * ltable
H5_DLL H5G_t * H5G__create_named(const H5G_loc_t *loc, const char *name, hid_t lcpl_id, hid_t gcpl_id, hid_t gapl_id, hid_t dxpl_id)
struct H5G_dense_bt2_name_rec_t H5G_dense_bt2_name_rec_t
H5_DLL herr_t H5G__ent_decode_vec(const H5F_t *f, const uint8_t **pp, const uint8_t *p_end, H5G_entry_t *ent, unsigned n)
herr_t(* H5G_lib_iterate_t)(const H5O_link_t *lnk, void *op_data)
const H5O_stab_t * dst_stab
H5_DLL herr_t H5G__dense_remove_by_idx(H5F_t *f, hid_t dxpl_id, const H5O_linfo_t *linfo, H5RS_str_t *grp_full_path_r, H5_index_t idx_type, H5_iter_order_t order, hsize_t n)
H5_DLL herr_t H5G__dense_build_table(H5F_t *f, hid_t dxpl_id, const H5O_linfo_t *linfo, H5_index_t idx_type, H5_iter_order_t order, H5G_link_table_t *ltable)
H5_DLL htri_t H5G__obj_get_linfo(const H5O_loc_t *grp_oloc, H5O_linfo_t *linfo, hid_t dxpl_id)
H5G_cache_type_t cache_type
H5_DLL const char * H5G__component(const char *name, size_t *size_p)
struct H5G_bt_it_cpy_t H5G_bt_it_cpy_t
H5_DLL H5G_t * H5G__create(H5F_t *file, H5G_obj_create_t *gcrt_info, hid_t dxpl_id)