HDF5  1.12.0
H5Lpublic.h
Go to the documentation of this file.
1 /* * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * *
2  * Copyright by The HDF Group. *
3  * Copyright by the Board of Trustees of the University of Illinois. *
4  * All rights reserved. *
5  * *
6  * This file is part of HDF5. The full HDF5 copyright notice, including *
7  * terms governing use, modification, and redistribution, is contained in *
8  * the COPYING file, which can be found at the root of the source code *
9  * distribution tree, or in https://support.hdfgroup.org/ftp/HDF5/releases. *
10  * If you do not have access to either file, you may request a copy from *
11  * help@hdfgroup.org. *
12  * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * */
13 
14 /*-------------------------------------------------------------------------
15  *
16  * Created: H5Lpublic.h
17  * Dec 1 2005
18  * James Laird
19  *
20  * Purpose: Public declarations for the H5L package (links)
21  *
22  *-------------------------------------------------------------------------
23  */
24 #ifndef _H5Lpublic_H
25 #define _H5Lpublic_H
26 
27 /* Public headers needed by this file */
28 #include "H5public.h" /* Generic Functions */
29 #include "H5Ipublic.h" /* IDs */
30 #include "H5Opublic.h" /* Object Headers */
31 #include "H5Tpublic.h" /* Datatypes */
32 
33 /*****************/
34 /* Public Macros */
35 /*****************/
36 
37 /* Maximum length of a link's name */
38 /* (encoded in a 32-bit unsigned integer) */
39 #define H5L_MAX_LINK_NAME_LEN ((uint32_t)(-1)) /* (4GB - 1) */
40 
41 /* Macro to indicate operation occurs on same location */
42 #define H5L_SAME_LOC (hid_t)0
43 
44 /* Current version of the H5L_class_t struct */
45 #define H5L_LINK_CLASS_T_VERS 1
46 
47 #ifdef __cplusplus
48 extern "C" {
49 #endif
50 
51 /*******************/
52 /* Public Typedefs */
53 /*******************/
54 
55 /* Link class types.
56  * Values less than 64 are reserved for the HDF5 library's internal use.
57  * Values 64 to 255 are for "user-defined" link class types; these types are
58  * defined by HDF5 but their behavior can be overridden by users.
59  * Users who want to create new classes of links should contact the HDF5
60  * development team at hdfhelp@ncsa.uiuc.edu .
61  * These values can never change because they appear in HDF5 files.
62  */
63 typedef enum {
64  H5L_TYPE_ERROR = (-1), /* Invalid link type id */
65  H5L_TYPE_HARD = 0, /* Hard link id */
66  H5L_TYPE_SOFT = 1, /* Soft link id */
67  H5L_TYPE_EXTERNAL = 64, /* External link id */
68  H5L_TYPE_MAX = 255 /* Maximum link type id */
70 #define H5L_TYPE_BUILTIN_MAX H5L_TYPE_SOFT /* Maximum value link value for "built-in" link types */
71 #define H5L_TYPE_UD_MIN H5L_TYPE_EXTERNAL /* Link ids at or above this value are "user-defined" link types. */
72 
73 /* Information struct for link (for H5Lget_info2/H5Lget_info_by_idx2)
74  * H5O_token_t version used in VOL layer and future public API calls
75  */
76 typedef struct {
77  H5L_type_t type; /* Type of link */
78  hbool_t corder_valid; /* Indicate if creation order is valid */
79  int64_t corder; /* Creation order */
80  H5T_cset_t cset; /* Character set of link name */
81  union {
82  H5O_token_t token; /* Token of location that hard link points to */
83  size_t val_size; /* Size of a soft link or UD link value */
84  } u;
85 } H5L_info2_t;
86 
87 /* The H5L_class_t struct can be used to override the behavior of a
88  * "user-defined" link class. Users should populate the struct with callback
89  * functions defined below.
90  */
91 /* Callback prototypes for user-defined links */
92 /* Link creation callback */
93 typedef herr_t (*H5L_create_func_t)(const char *link_name, hid_t loc_group,
94  const void *lnkdata, size_t lnkdata_size, hid_t lcpl_id);
95 
96 /* Callback for when the link is moved */
97 typedef herr_t (*H5L_move_func_t)(const char *new_name, hid_t new_loc,
98  const void *lnkdata, size_t lnkdata_size);
99 
100 /* Callback for when the link is copied */
101 typedef herr_t (*H5L_copy_func_t)(const char *new_name, hid_t new_loc,
102  const void *lnkdata, size_t lnkdata_size);
103 
104 /* Callback during link traversal */
105 typedef hid_t (*H5L_traverse_func_t)(const char *link_name, hid_t cur_group,
106  const void *lnkdata, size_t lnkdata_size, hid_t lapl_id, hid_t dxpl_id);
107 
108 /* Callback for when the link is deleted */
109 typedef herr_t (*H5L_delete_func_t)(const char *link_name, hid_t file,
110  const void *lnkdata, size_t lnkdata_size);
111 
112 /* Callback for querying the link */
113 /* Returns the size of the buffer needed */
114 typedef ssize_t (*H5L_query_func_t)(const char *link_name, const void *lnkdata,
115  size_t lnkdata_size, void *buf /*out*/, size_t buf_size);
116 
117 typedef struct {
118  int version; /* Version number of this struct */
119  H5L_type_t id; /* Link type ID */
120  const char *comment; /* Comment for debugging */
121  H5L_create_func_t create_func; /* Callback during link creation */
122  H5L_move_func_t move_func; /* Callback after moving link */
123  H5L_copy_func_t copy_func; /* Callback after copying link */
124  H5L_traverse_func_t trav_func; /* Callback during link traversal */
125  H5L_delete_func_t del_func; /* Callback for link deletion */
126  H5L_query_func_t query_func; /* Callback for queries */
127 } H5L_class_t;
128 
129 /* Prototype for H5Literate2/H5Literate_by_name2() operator
130  * H5O_token_t version used in VOL layer and future public API calls
131  */
132 typedef herr_t (*H5L_iterate2_t)(hid_t group, const char *name, const H5L_info2_t *info,
133  void *op_data);
134 
135 /* Callback for external link traversal */
136 typedef herr_t (*H5L_elink_traverse_t)(const char *parent_file_name,
137  const char *parent_group_name, const char *child_file_name,
138  const char *child_object_name, unsigned *acc_flags, hid_t fapl_id,
139  void *op_data);
140 
141 
142 /********************/
143 /* Public Variables */
144 /********************/
145 
146 
147 /*********************/
148 /* Public Prototypes */
149 /*********************/
150 H5_DLL herr_t H5Lmove(hid_t src_loc, const char *src_name, hid_t dst_loc,
151  const char *dst_name, hid_t lcpl_id, hid_t lapl_id);
152 H5_DLL herr_t H5Lcopy(hid_t src_loc, const char *src_name, hid_t dst_loc,
153  const char *dst_name, hid_t lcpl_id, hid_t lapl_id);
154 H5_DLL herr_t H5Lcreate_hard(hid_t cur_loc, const char *cur_name,
155  hid_t dst_loc, const char *dst_name, hid_t lcpl_id, hid_t lapl_id);
156 H5_DLL herr_t H5Lcreate_soft(const char *link_target, hid_t link_loc_id,
157  const char *link_name, hid_t lcpl_id, hid_t lapl_id);
158 H5_DLL herr_t H5Ldelete(hid_t loc_id, const char *name, hid_t lapl_id);
159 H5_DLL herr_t H5Ldelete_by_idx(hid_t loc_id, const char *group_name,
160  H5_index_t idx_type, H5_iter_order_t order, hsize_t n, hid_t lapl_id);
161 H5_DLL herr_t H5Lget_val(hid_t loc_id, const char *name, void *buf/*out*/,
162  size_t size, hid_t lapl_id);
163 H5_DLL herr_t H5Lget_val_by_idx(hid_t loc_id, const char *group_name,
164  H5_index_t idx_type, H5_iter_order_t order, hsize_t n,
165  void *buf/*out*/, size_t size, hid_t lapl_id);
166 H5_DLL htri_t H5Lexists(hid_t loc_id, const char *name, hid_t lapl_id);
167 H5_DLL herr_t H5Lget_info2(hid_t loc_id, const char *name,
168  H5L_info2_t *linfo /*out*/, hid_t lapl_id);
169 H5_DLL herr_t H5Lget_info_by_idx2(hid_t loc_id, const char *group_name,
170  H5_index_t idx_type, H5_iter_order_t order, hsize_t n,
171  H5L_info2_t *linfo /*out*/, hid_t lapl_id);
172 H5_DLL ssize_t H5Lget_name_by_idx(hid_t loc_id, const char *group_name,
173  H5_index_t idx_type, H5_iter_order_t order, hsize_t n,
174  char *name /*out*/, size_t size, hid_t lapl_id);
175 H5_DLL herr_t H5Literate2(hid_t grp_id, H5_index_t idx_type,
176  H5_iter_order_t order, hsize_t *idx, H5L_iterate2_t op, void *op_data);
177 H5_DLL herr_t H5Literate_by_name2(hid_t loc_id, const char *group_name,
178  H5_index_t idx_type, H5_iter_order_t order, hsize_t *idx,
179  H5L_iterate2_t op, void *op_data, hid_t lapl_id);
180 H5_DLL herr_t H5Lvisit2(hid_t grp_id, H5_index_t idx_type, H5_iter_order_t order,
181  H5L_iterate2_t op, void *op_data);
182 H5_DLL herr_t H5Lvisit_by_name2(hid_t loc_id, const char *group_name,
183  H5_index_t idx_type, H5_iter_order_t order, H5L_iterate2_t op,
184  void *op_data, hid_t lapl_id);
185 
186 /* UD link functions */
187 H5_DLL herr_t H5Lcreate_ud(hid_t link_loc_id, const char *link_name,
188  H5L_type_t link_type, const void *udata, size_t udata_size, hid_t lcpl_id,
189  hid_t lapl_id);
193 
194 /* External link functions */
195 H5_DLL herr_t H5Lunpack_elink_val(const void *ext_linkval/*in*/, size_t link_size,
196  unsigned *flags, const char **filename/*out*/, const char **obj_path /*out*/);
197 H5_DLL herr_t H5Lcreate_external(const char *file_name, const char *obj_name,
198  hid_t link_loc_id, const char *link_name, hid_t lcpl_id, hid_t lapl_id);
199 
200 /* Symbols defined for compatibility with previous versions of the HDF5 API.
201  *
202  * Use of these symbols is deprecated.
203  */
204 #ifndef H5_NO_DEPRECATED_SYMBOLS
205 
206 /* Macros */
207 
208 /* Previous versions of the H5L_class_t struct */
209 #define H5L_LINK_CLASS_T_VERS_0 0
210 
211 
212 /* Typedefs */
213 
214 /* Information struct for link (for H5Lget_info1/H5Lget_info_by_idx1) */
215 typedef struct {
216  H5L_type_t type; /* Type of link */
217  hbool_t corder_valid; /* Indicate if creation order is valid */
218  int64_t corder; /* Creation order */
219  H5T_cset_t cset; /* Character set of link name */
220  union {
221  haddr_t address; /* Address hard link points to */
222  size_t val_size; /* Size of a soft link or UD link value */
223  } u;
224 } H5L_info1_t;
225 
226 /* Callback during link traversal */
227 typedef hid_t (*H5L_traverse_0_func_t)(const char *link_name, hid_t cur_group,
228  const void *lnkdata, size_t lnkdata_size, hid_t lapl_id);
229 
230 /* User-defined link types */
231 typedef struct {
232  int version; /* Version number of this struct */
233  H5L_type_t id; /* Link type ID */
234  const char *comment; /* Comment for debugging */
235  H5L_create_func_t create_func; /* Callback during link creation */
236  H5L_move_func_t move_func; /* Callback after moving link */
237  H5L_copy_func_t copy_func; /* Callback after copying link */
238  H5L_traverse_0_func_t trav_func; /* Callback during link traversal */
239  H5L_delete_func_t del_func; /* Callback for link deletion */
240  H5L_query_func_t query_func; /* Callback for queries */
241 } H5L_class_0_t;
242 
243 /* Prototype for H5Literate1/H5Literate_by_name1() operator */
244 typedef herr_t (*H5L_iterate1_t)(hid_t group, const char *name, const H5L_info1_t *info,
245  void *op_data);
246 
247 
248 /* Function prototypes */
249 H5_DLL herr_t H5Lget_info1(hid_t loc_id, const char *name,
250  H5L_info1_t *linfo /*out*/, hid_t lapl_id);
251 H5_DLL herr_t H5Lget_info_by_idx1(hid_t loc_id, const char *group_name,
252  H5_index_t idx_type, H5_iter_order_t order, hsize_t n,
253  H5L_info1_t *linfo /*out*/, hid_t lapl_id);
254 H5_DLL herr_t H5Literate1(hid_t grp_id, H5_index_t idx_type,
255  H5_iter_order_t order, hsize_t *idx, H5L_iterate1_t op, void *op_data);
256 H5_DLL herr_t H5Literate_by_name1(hid_t loc_id, const char *group_name,
257  H5_index_t idx_type, H5_iter_order_t order, hsize_t *idx,
258  H5L_iterate1_t op, void *op_data, hid_t lapl_id);
259 H5_DLL herr_t H5Lvisit1(hid_t grp_id, H5_index_t idx_type, H5_iter_order_t order,
260  H5L_iterate1_t op, void *op_data);
261 H5_DLL herr_t H5Lvisit_by_name1(hid_t loc_id, const char *group_name,
262  H5_index_t idx_type, H5_iter_order_t order, H5L_iterate1_t op,
263  void *op_data, hid_t lapl_id);
264 
265 #endif /* H5_NO_DEPRECATED_SYMBOLS */
266 
267 #ifdef __cplusplus
268 }
269 #endif
270 #endif /* _H5Lpublic_H */
271 
H5public.h
u
hsize_t u
Definition: H5EA.c:1007
H5L_class_t::create_func
H5L_create_func_t create_func
Definition: H5Lpublic.h:121
H5Lvisit2
H5_DLL herr_t H5Lvisit2(hid_t grp_id, H5_index_t idx_type, H5_iter_order_t order, H5L_iterate2_t op, void *op_data)
Definition: H5L.c:1465
ssize_t
int ssize_t
Definition: H5public.h:167
H5L_info1_t::address
haddr_t address
Definition: H5Lpublic.h:221
H5Ipublic.h
H5L_class_t::id
H5L_type_t id
Definition: H5Lpublic.h:119
size
iblock size
Definition: H5EAcache.c:787
H5Lget_info2
H5_DLL herr_t H5Lget_info2(hid_t loc_id, const char *name, H5L_info2_t *linfo, hid_t lapl_id)
Definition: H5L.c:982
H5L_iterate2_t
herr_t(* H5L_iterate2_t)(hid_t group, const char *name, const H5L_info2_t *info, void *op_data)
Definition: H5Lpublic.h:132
H5Lget_val
H5_DLL herr_t H5Lget_val(hid_t loc_id, const char *name, void *buf, size_t size, hid_t lapl_id)
Definition: H5L.c:817
H5Literate_by_name1
H5_DLL herr_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)
Definition: H5Ldeprec.c:227
H5L_info2_t
Definition: H5Lpublic.h:76
H5L_info1_t
Definition: H5Lpublic.h:215
H5Literate2
H5_DLL herr_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)
Definition: H5L.c:1331
haddr_t
CATCH haddr_t
Definition: H5EAdblock.c:162
H5L_TYPE_HARD
@ H5L_TYPE_HARD
Definition: H5Lpublic.h:65
H5L_class_0_t::comment
const char * comment
Definition: H5Lpublic.h:234
H5Tpublic.h
H5Lvisit_by_name2
H5_DLL herr_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)
Definition: H5L.c:1534
H5L_move_func_t
herr_t(* H5L_move_func_t)(const char *new_name, hid_t new_loc, const void *lnkdata, size_t lnkdata_size)
Definition: H5Lpublic.h:97
H5Lget_info1
H5_DLL herr_t H5Lget_info1(hid_t loc_id, const char *name, H5L_info1_t *linfo, hid_t lapl_id)
Definition: H5Ldeprec.c:303
H5L_class_0_t
Definition: H5Lpublic.h:231
H5L_class_0_t::copy_func
H5L_copy_func_t copy_func
Definition: H5Lpublic.h:237
H5L_class_0_t::query_func
H5L_query_func_t query_func
Definition: H5Lpublic.h:240
H5Lcopy
H5_DLL herr_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)
Definition: H5L.c:365
H5L_class_t::comment
const char * comment
Definition: H5Lpublic.h:120
int64_t
int64_t
Definition: H5overflow.txt:35
H5L_traverse_func_t
hid_t(* H5L_traverse_func_t)(const char *link_name, hid_t cur_group, const void *lnkdata, size_t lnkdata_size, hid_t lapl_id, hid_t dxpl_id)
Definition: H5Lpublic.h:105
H5L_create_func_t
herr_t(* H5L_create_func_t)(const char *link_name, hid_t loc_group, const void *lnkdata, size_t lnkdata_size, hid_t lcpl_id)
Definition: H5Lpublic.h:93
H5L_elink_traverse_t
herr_t(* H5L_elink_traverse_t)(const char *parent_file_name, const char *parent_group_name, const char *child_file_name, const char *child_object_name, unsigned *acc_flags, hid_t fapl_id, void *op_data)
Definition: H5Lpublic.h:136
H5Lget_val_by_idx
H5_DLL herr_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)
Definition: H5L.c:872
htri_t
int htri_t
Definition: H5public.h:160
H5L_query_func_t
ssize_t(* H5L_query_func_t)(const char *link_name, const void *lnkdata, size_t lnkdata_size, void *buf, size_t buf_size)
Definition: H5Lpublic.h:114
H5_iter_order_t
H5_iter_order_t
Definition: H5public.h:295
H5L_info2_t::cset
H5T_cset_t cset
Definition: H5Lpublic.h:80
H5Lget_info_by_idx2
H5_DLL herr_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)
Definition: H5L.c:1033
H5L_info2_t::type
H5L_type_t type
Definition: H5Lpublic.h:77
H5Ldelete_by_idx
H5_DLL herr_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)
Definition: H5L.c:754
hid_t
int64_t hid_t
Definition: H5Ipublic.h:55
H5L_class_0_t::create_func
H5L_create_func_t create_func
Definition: H5Lpublic.h:235
H5Lcreate_external
H5_DLL herr_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)
Definition: H5Lexternal.c:341
H5L_class_t::query_func
H5L_query_func_t query_func
Definition: H5Lpublic.h:126
H5L_info1_t::corder_valid
hbool_t corder_valid
Definition: H5Lpublic.h:217
H5Lexists
H5_DLL htri_t H5Lexists(hid_t loc_id, const char *name, hid_t lapl_id)
Definition: H5L.c:930
H5Lvisit1
H5_DLL herr_t H5Lvisit1(hid_t grp_id, H5_index_t idx_type, H5_iter_order_t order, H5L_iterate1_t op, void *op_data)
Definition: H5Ldeprec.c:486
H5L_info2_t::val_size
size_t val_size
Definition: H5Lpublic.h:83
H5L_info2_t::corder
int64_t corder
Definition: H5Lpublic.h:79
H5L_info2_t::token
H5O_token_t token
Definition: H5Lpublic.h:82
H5Lcreate_soft
H5_DLL herr_t H5Lcreate_soft(const char *link_target, hid_t link_loc_id, const char *link_name, hid_t lcpl_id, hid_t lapl_id)
Definition: H5L.c:459
H5T_cset_t
H5T_cset_t
Definition: H5Tpublic.h:78
H5Lunregister
H5_DLL herr_t H5Lunregister(H5L_type_t id)
Definition: H5L.c:1153
H5L_TYPE_ERROR
@ H5L_TYPE_ERROR
Definition: H5Lpublic.h:64
H5L_class_t
Definition: H5Lpublic.h:117
H5Lvisit_by_name1
H5_DLL herr_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)
Definition: H5Ldeprec.c:569
H5Lis_registered
H5_DLL htri_t H5Lis_registered(H5L_type_t id)
Definition: H5L.c:1189
H5L_class_0_t::move_func
H5L_move_func_t move_func
Definition: H5Lpublic.h:236
H5Lcreate_ud
H5_DLL herr_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)
Definition: H5L.c:632
H5L_traverse_0_func_t
hid_t(* H5L_traverse_0_func_t)(const char *link_name, hid_t cur_group, const void *lnkdata, size_t lnkdata_size, hid_t lapl_id)
Definition: H5Lpublic.h:227
H5Lmove
H5_DLL herr_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)
Definition: H5L.c:275
H5_DLL
#define H5_DLL
Definition: H5api_adpt.h:234
H5Literate1
H5_DLL herr_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)
Definition: H5Ldeprec.c:150
H5L_delete_func_t
herr_t(* H5L_delete_func_t)(const char *link_name, hid_t file, const void *lnkdata, size_t lnkdata_size)
Definition: H5Lpublic.h:109
H5Lunpack_elink_val
H5_DLL herr_t H5Lunpack_elink_val(const void *ext_linkval, size_t link_size, unsigned *flags, const char **filename, const char **obj_path)
Definition: H5Lexternal.c:470
H5L_TYPE_SOFT
@ H5L_TYPE_SOFT
Definition: H5Lpublic.h:66
H5L_class_0_t::trav_func
H5L_traverse_0_func_t trav_func
Definition: H5Lpublic.h:238
H5Lget_name_by_idx
H5_DLL ssize_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)
Definition: H5L.c:1232
H5L_class_t::version
int version
Definition: H5Lpublic.h:118
H5Lcreate_hard
H5_DLL herr_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)
Definition: H5L.c:530
H5L_info1_t::type
H5L_type_t type
Definition: H5Lpublic.h:216
H5L_class_t::move_func
H5L_move_func_t move_func
Definition: H5Lpublic.h:122
H5Lregister
H5_DLL herr_t H5Lregister(const H5L_class_t *cls)
Definition: H5L.c:1098
H5L_copy_func_t
herr_t(* H5L_copy_func_t)(const char *new_name, hid_t new_loc, const void *lnkdata, size_t lnkdata_size)
Definition: H5Lpublic.h:101
H5Ldelete
H5_DLL herr_t H5Ldelete(hid_t loc_id, const char *name, hid_t lapl_id)
Definition: H5L.c:698
H5L_class_0_t::del_func
H5L_delete_func_t del_func
Definition: H5Lpublic.h:239
H5L_class_0_t::version
int version
Definition: H5Lpublic.h:232
n
*s *s n
Definition: H5HLdbg.c:111
herr_t
int herr_t
Definition: H5public.h:128
H5L_class_t::del_func
H5L_delete_func_t del_func
Definition: H5Lpublic.h:125
hbool_t
bool hbool_t
Definition: H5public.h:159
H5L_type_t
H5L_type_t
Definition: H5Lpublic.h:63
H5L_info1_t::corder
int64_t corder
Definition: H5Lpublic.h:218
H5L_class_t::copy_func
H5L_copy_func_t copy_func
Definition: H5Lpublic.h:123
hsize_t
hsize_t
Definition: H5overflow.txt:44
H5O_token_t
Definition: H5public.h:339
H5L_info2_t::corder_valid
hbool_t corder_valid
Definition: H5Lpublic.h:78
H5_index_t
H5_index_t
Definition: H5public.h:316
H5L_TYPE_MAX
@ H5L_TYPE_MAX
Definition: H5Lpublic.h:68
H5L_class_0_t::id
H5L_type_t id
Definition: H5Lpublic.h:233
H5L_info1_t::cset
H5T_cset_t cset
Definition: H5Lpublic.h:219
H5L_info1_t::val_size
size_t val_size
Definition: H5Lpublic.h:222
H5Literate_by_name2
H5_DLL herr_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)
Definition: H5L.c:1391
H5L_TYPE_EXTERNAL
@ H5L_TYPE_EXTERNAL
Definition: H5Lpublic.h:67
H5L_iterate1_t
herr_t(* H5L_iterate1_t)(hid_t group, const char *name, const H5L_info1_t *info, void *op_data)
Definition: H5Lpublic.h:244
H5Lget_info_by_idx1
H5_DLL herr_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)
Definition: H5Ldeprec.c:383
H5Opublic.h
H5L_class_t::trav_func
H5L_traverse_func_t trav_func
Definition: H5Lpublic.h:124