HDF5 documents and links 
Introduction to HDF5 
HDF5 User's Guide 
HDF5 Reference Manual 
HDF5 Application Developer's Guide 

HDF5 Software Changes from Release to Release

This document is intended to assist application developers who must keep an application synchronized with the HDF5 library or related software.

Release 1.8.0 (current release) versus Release 1.6.x

HDF5 Release 1.8.0 is a major release with several new features and a variety of bugfixes, optimizations, and portability enhancements.

See the document “What’s New in HDF5 1.8.0” for a high-level overview of the new functionality in this release. The following pages assume a familiarity with that overview.

This section provides details of the API-level changes that have been made in the transition to HDF5 Release 1.8.0 from the Release 1.6.x series.

API Compatibility Macros with Associated Renamed and New Functions

Release 1.8.0 introduces API compatibility macros designed to facilitate application migration. These macros are intended to facilitate developer management of a clean, step-by-step migration from an older HDF5 Library to the new release; they can also be used to enable older applications to use the new library without requiring that the application be rewritten. See API Compatibility Macros in HDF5 for a full description.

Macros are identified in reference manual function indexes by an italic typeface.

The new macros and the new and old functions to which they may be mapped are as follows:

H5Acreate      H5Acreate1
H5Acreate2
Renamed from H5Acreate
New
H5Aiterate      H5Aiterate1
H5Aiterate2
Renamed from H5Aiterate
New
H5Eclear      H5Eclear1
H5Eclear2
Renamed from H5Eclear
New
H5Eget_auto      H5Eget_auto1
H5Eget_auto2
Renamed from H5Eget_auto
New
H5Eprint      H5Eprint1
H5Eprint2
Renamed from H5Eprint
New
H5Epush      H5Epush1
H5Epush2
Renamed from H5Epush
New
H5Eset_auto      H5Eset_auto1
H5Eset_auto2
Renamed from H5Eset_auto
New
H5Ewalk      H5Ewalk1
H5Ewalk2
Renamed from H5Ewalk
New
H5Gcreate      H5Gcreate1
H5Gcreate2
Renamed from H5Gcreate
New
H5Gopen      H5Gopen1
H5Gopen2
Renamed from H5Gopen
New
H5Pget_filter      H5Pget_filter1
H5Pget_filter2
Renamed from H5Pget_filter
New
H5Pget_filter_by_id      H5Pget_filter_by_id1
H5Pget_filter_by_id2
Renamed from H5Pget_filter_by_id
New
H5Pinsert      H5Pinsert1
H5Pinsert2
Renamed from H5Pinsert
New
H5Pregister      H5Pregister1
H5Pregister2
Renamed from H5Pregister
New
H5Rget_obj_type      H5Rget_obj_type1
H5Rget_obj_type2
Renamed from H5Rget_obj_type
New
H5Tarray_create      H5Tarray_create1
H5Tarray_create2
Renamed from H5Tarray_create
New
H5Tcommit      H5Tcommit1
H5Tcommit2
Renamed from H5Tcommit
New
H5Tget_array_dims      H5Tget_array_dims1
H5Tget_array_dims2
Renamed from H5Tget_array_dims
New
H5Topen      H5Topen1
H5Topen2
Renamed from H5Topen
New

New Functions and Tools

C functions:
The following C functions are new for Release 1.8.0 and, unless otherwise noted, are documented in the HDF5 Reference Manual.

Recursive iteration
 
H5Lvisit      herr_t H5Lvisit( hid_t group_id, H5_index_t index_type, H5_iter_order_t order, H5L_iterate_t op, void *op_data )
See entry.
H5Lvisit_by_name      herr_t H5Lvisit_by_name( hid_t loc_id, const char *group_name, H5_index_t index_type, H5_iter_order_t order, H5L_iterate_t op, void *op_data, hid_t lapl_id )
See entry.
H5Ovisit      herr_t H5Ovisit( hid_t group_id, H5_index_t index_type, H5_iter_order_t order, H5O_iterate_t op, void *op_data )
See entry.
H5Ovisit_by_name      herr_t H5Ovisit_by_name( hid_t loc_id, const char *object_name, H5_index_t index_type, H5_iter_order_t order, H5O_iterate_t op, void *op_data, hid_t lapl_id )
See entry.

“Format bounds” property
Release-to-release format compatibility
 
H5Pset_libver_bounds      herr_t H5Pset_libver_bounds( hid_t fapl_id, H5_libver_t low, H5_libver_t high )
See entry.
H5Pget_libver_bounds      herr_t H5Pget_libver_bounds( hid_t fapl_id, H5_libver_t *low, H5_libver_t *high )
See entry.

Configurable compact-or-indexed
groups (compact and large groups)
 
H5Pset_link_phase_change      herr_t H5Pset_link_phase_change( hid_t gcpl_id, unsigned max_compact, unsigned min_dense )
See entry.
H5Pget_link_phase_change      herr_t H5Pget_link_phase_change( hid_t gcpl_id, unsigned *max_compact, unsigned *min_dense )
See entry.
H5Pset_est_link_info      herr_t H5Pset_est_link_info( hid_t gcpl_id, unsigned est_num_entries, unsigned est_name_len )
See entry.
H5Pget_est_link_info      herr_t H5Pget_est_link_info( hid_t gcpl_id, unsigned *est_num_entries, unsigned *est_name_len )
See entry.
H5Pset_nlinks      herr_t H5Pset_nlinks( hid_t lapl_id, size_t nlinks )
See entry.
H5Pget_nlinks      herr_t H5Pget_nlinks( hid_t lapl_id, size_t *nlinks )
See entry.

User-defined links
 
H5Lcreate_ud      herr_t H5Lcreate_ud( hid_t link_loc_id, const char *link_name, H5L_type_t link_type, const char *udata, size_t udata_size, hid_t lcpl_id, hid_t lapl_id )
See entry.
H5Lregister      herr_t H5Lregister( const H5L_class_t * link_class )
See entry.
H5Lunregister      herr_t H5Lunregister( H5L_type_t link_cls_id )
See entry.
H5Oincr_refcount      herr_t H5Oincr_refcount( hid_t object_id )
See entry.
H5Odecr_refcount      herr_t H5Odecr_refcount( hid_t object_id )
See entry.

External links
 
H5Lcreate_external      herr_t H5Lcreate_external( const char *file_name, const char *object_name, hid_t link_loc_id, const char *link_name, hid_t lcpl_id, hid_t lapl_id )
See entry.
H5Lunpack_elink_val      herr_t H5Lunpack_elink_val( char *ext_linkval, size_t link_size, const char **filename, const char **obj_path )
See entry.
H5Pset_elink_prefix      herr_t H5Pset_elink_prefix( hid_t lapl_id, const char *prefix )
See entry.
H5Pget_elink_prefix      herr_t H5Pget_elink_prefix( hid_t lapl_id, const char **prefix )
See entry.

Link creation order
tracking and indexing
 
H5Pset_link_creation_order      herr_t H5Pset_link_creation_order( hid_t ocpl_id, unsigned *crt_order_flags )
See entry.
H5Pget_link_creation_order      herr_t H5Pget_link_creation_order( hid_t ocpl_id, unsigned *crt_order_flags )
See entry.
H5Gget_create_plist      hid_t H5Gget_create_plist( hid_t group_id )
See entry.
H5Gget_info_by_idx      herr_t H5Gget_info_by_idx( hid_t loc_id, const char *group_name, H5_index_t index_type, H5_iter_order_t order, hsize_t n, H5G_info_t *group_info, hid_t lapl_id )
See entry.
H5Tget_create_plist      hid_t H5Tget_create_plist( hid_t dtype_id )
See entry.

Link API (H5L), an all-new interface
(includes user-defined and external links)
 
H5Lcopy      herr_t H5Lcopy( hid_t src_loc_id, const char *src_name, hid_t dest_loc_id, const char *dest_name, hid_t lcpl_id hid_t lapl_id )
See entry.
H5Lcreate_external      herr_t H5Lcreate_external( const char *file_name, const char *object_name, hid_t link_loc_id, const char *link_name, hid_t lcpl_id, hid_t lapl_id )
See entry.
H5Lcreate_hard      herr_t H5Lcreate_hard( hid_t obj_loc_id, const char *obj_name, hid_t link_loc_id, const char *link_name, hid_t lcpl_id, hid_t lapl_id )
See entry.
H5Lcreate_soft      herr_t H5Lcreate_soft( const char *target_path, hid_t link_loc_id, const char *link_name, hid_t lcpl_id, hid_t lapl_id )
See entry.
H5Lcreate_ud      herr_t H5Lcreate_ud( hid_t link_loc_id, const char *link_name, H5L_type_t link_type, const char *udata, size_t udata_size, hid_t lcpl_id, hid_t lapl_id )
See entry.
H5Ldelete      herr_t H5Ldelete( hid_t loc_id, const char *name, hid_t lapl_id )
See entry.
H5Ldelete_by_idx      herr_t H5Ldelete_by_idx( hid_t loc_id, const char *group_name, H5_index_t index_field, H5_iter_order_t order, hsize_t n, hid_t lapl_id )
See entry.
H5Lexists      htri_t H5Lexists( hid_t loc_id, const char *name, hid_t lapl_id )
See entry.
H5Lget_info      herr_t H5Lget_info( hid_t link_loc_id, const char *link_name, H5L_info_t *link_buff, hid_t lapl_id )
See entry.
H5Lget_info_by_idx      herr_t H5Lget_info_by_idx( hid_t loc_id, const char *group_name, H5_index_t index_field, H5_iter_order_t order, hsize_t n, H5L_info_t *link_val, hid_t lapl_id )
See entry.
H5Lget_name_by_idx      ssize_t H5Lget_name_by_idx( hid_t loc_id, const char *group_name, H5_index_t index_field, H5_iter_order_t order, hsize_t n, char *name, size_t size, hid_t lapl_id )
See entry.
H5Lget_val      herr_t H5Lget_val( hid_t link_loc_id, const char *link_name, void *linkval_buff, size_t size, hid_t lapl_id )
See entry.
H5Lget_val_by_idx      ssize_t H5Lget_val_by_idx( hid_t loc_id, const char *group_name, H5_index_t index_field, H5_iter_order_t order, hsize_t n, char *value_buf, size_t size, hid_t lapl_id )
See entry.
H5Lis_registered      htri_t H5Lis_registered( H5L_type_t link_cls_id )
See entry.
H5Literate      herr_t H5Literate( hid_t loc_id, H5_index_t index_type, H5_iter_order_t order, hsize_t *idx, H5L_iterate_t op, void *op_data )
See entry.
H5Literate_by_name      herr_t H5Literate( hid_t loc_id, const char *group_name, H5_index_t index_type, H5_iter_order_t order, hsize_t *idx, H5L_iterate_t op, void *op_data, hid_t *lapl_id )
See entry.
H5Lmove      herr_t H5Lmove( hid_t src_loc_id, const char *src_name, hid_t dest_loc_id, const char *dest_name, hid_t lcpl, hid_t lapl )
See entry.
H5Lregister      herr_t H5Lregister( const H5L_class_t * link_class )
See entry.
H5Lunpack_elink_val      herr_t H5Lunpack_elink_val( char *ext_linkval, size_t link_size, const char **filename, const char **obj_path )
See entry.
H5Lunregister      herr_t H5Lunregister( H5L_type_t link_cls_id )
See entry.
H5Lvisit      herr_t H5Lvisit( hid_t group_id, H5_index_t index_type, H5_iter_order_t order, H5L_iterate_t op, void *op_data )
See entry.
H5Lvisit_by_name      herr_t H5Lvisit_by_name( hid_t loc_id, const char *group_name, H5_index_t index_type, H5_iter_order_t order, H5L_iterate_t op, void *op_data, hid_t lapl_id )
See entry.

Enhanced attribute handling
 
H5Acreate2      hid_t H5Acreate2( hid_t loc_id, const char *obj_name, const char *attr_name, hid_t type_id, hid_t space_id, hid_t acpl_id, hid_t aapl_id, hid_t lapl_id )
See entry.
H5Adelete_by_idx      herr_t H5Adelete_by_idx( hid_t loc_id, const char *obj_name, H5_index_t idx_type, H5_iter_order_t order, hsize_t n, hid_t lapl_id )
See entry.
H5Adelete_by_name      herr_t H5Adelete_by_name( hid_t loc_id, const char *obj_name, const char *attr_name, hid_t lapl_id )
See entry.
H5Aget_info      herr_t H5Aget_info( hid_t attr_id, H5A_info_t *ainfo )
See entry.
H5Aget_info_by_idx      herr_t H5Aget_info_by_idx( hid_t loc_id, const char *obj_name, H5_index_t idx_type, H5_iter_order_t order, hsize_t n, H5A_info_t *ainfo, hid_t lapl_id )
See entry.
H5Aget_info_by_name      herr_t H5Aget_info_by_name( hid_t loc_id, const char *obj_name, const char *attr_name, H5A_info_t *ainfo, hid_t lapl_id )
See entry.
H5Aget_name_by_idx      ssize_t H5Aget_name_by_idx( hid_t loc_id, const char *obj_name, H5_index_t idx_type, H5_iter_order_t order, hsize_t n, char *name, size_t size, hid_t lapl_id )
See entry.
H5Aget_storage_size      hsize_t H5Aget_storage_size( hid_t attr_id )
See entry.
H5Aiterate2      herr_t H5Aiterate2( hid_t obj_id, H5_index_t idx_type, H5_iter_order_t order, hsize_t *n, H5A_operator2_t op, void *op_data )
See entry.
H5Aiterate_by_name      herr_t H5Aiterate_by_name( hid_t loc_id, const char *obj_name, H5_index_t idx_type, H5_iter_order_t order, hsize_t *n, H5A_operator2_t op, void *op_data, hid_t lapd_id )
See entry.
H5Aopen      herr_t H5Aopen( hid_t loc_id, const char *obj_name, const char *attr_name, hid_t aapl_id, hid_t lapl_id )
See entry.
H5Aopen_by_idx      herr_t H5Aopen_by_idx( hid_t loc_id, const char *obj_name, H5_index_t idx_type, H5_iter_order_t order, hsize_t n, hid_t aapl_id, hid_t lapl_id )
See entry.
H5Arename_by_name      herr_t H5Arename_by_name( hid_t loc_id, const char *obj_name, const char *old_attr_name, const char *new_attr_name, hid_t lapl_id )
See entry.

Managing large numbers of attributes
 
H5Pset_attr_phase_change      herr_t H5Pset_attr_phase_change( hid_t ocpl_id, unsigned max_compact, unsigned min_dense )
See entry.
H5Pget_attr_phase_change      herr_t H5Pget_attr_phase_change( hid_t ocpl_id, unsigned *max_compact, unsigned *min_dense )
See entry.

Attribute creation order
tracking and indexing
 
H5Pset_attr_creation_order      herr_t H5Pset_attr_creation_order( hid_t ocpl_id, unsigned crt_order_flags )
See entry.
H5Pget_attr_creation_order      herr_t H5Pget_attr_creation_order( hid_t ocpl_id, unsigned *crt_order_flags )
See entry.
H5Aget_create_plist      hid_t H5Aget_create_plist( hid_t attr_id )
See entry.

Shared object header messages (SOHM)
 
H5Pset_shared_mesg_index      herr_t H5Pset_shared_mesg_index( hid_t fcpl_id, unsigned index_num, unsigned mesg_type_flags, unsigned min_mesg_size )
See entry.
H5Pset_shared_mesg_nindexes      herr_t H5Pset_shared_mesg_nindexes( hid_t plist_id, unsigned nindexes )
See entry.
H5Pset_shared_mesg_phase_change      herr_t H5Pset_shared_mesg_phase_change( hid_t fcpl_id, unsigned max_list, unsigned min_btree )
See entry.
H5Pget_shared_mesg_index      herr_t H5Pget_shared_mesg_index( hid_t fcpl_id, unsigned index_num, unsigned *mesg_type_flags, unsigned *min_mesg_size )
See entry.
H5Pget_shared_mesg_nindexes      herr_t H5Pget_shared_mesg_nindexes( hid_t fcpl_id, unsigned *nindexes )
See entry.
H5Pget_shared_mesg_phase_change      herr_t H5Pget_shared_mesg_phase_change( hid_t fcpl_id, unsigned *max_list, unsigned *min_btree )
See entry.

Enhanced local heap size
management   (group meta data)
 
H5Pset_local_heap_size_hint      herr_t H5Pset_local_heap_size_hint( hid_t gcpl_id, size_t *size_hint )
See entry.
H5Pget_local_heap_size_hint      herr_t H5Pget_local_heap_size_hint( hid_t gcpl_id, size_t size_hint )
See entry.

UNICODE support
 
H5Pset_char_encoding      herr_t H5Pset_char_encoding( hid_t plist_id, H5T_cset_t encoding )
See entry.
H5Pget_char_encoding      herr_t H5Pget_char_encoding( hid_t plist_id, H5T_cset_t encoding )
See entry.

Object API (H5O), all new
 
H5Oclose      herr_t H5Oclose( hid_t object_id )
See entry.
H5Ocopy      herr_t H5Ocopy( hid_t src_loc_id, const char *src_name, hid_t dst_loc_id, const char *dst_name, hid_t ocp_plist_id, hid_t lcpl_id )
See entry.
H5Odecr_refcount      herr_t H5Odecr_refcount( hid_t object_id )
See entry.
H5Oget_comment      ssize_t H5Oget_comment( hid_t object_id, char *comment, size_t bufsize )
See entry.
H5Oget_comment_by_name      ssize_t H5Oget_comment_by_name( hid_t loc_id, const char *name, char *comment, size_t bufsize, hid_t lapl_id )
See entry.
H5Oget_info      herr_t H5Oget_info( hid_t object_id, H5O_info_t *obj_info )
See entry.
H5Oget_info_by_idx      herr_t H5Oget_info_by_idx( hid_t loc_id, const char *group_name, H5_index_t index_field, H5_iter_order_t order, hsize_t n, H5O_info_t *obj_info, hid_t lapl_id )
See entry.
H5Oget_info_by_name      herr_t H5Oget_info_by_name( hid_t loc_id, const char *object_name, H5O_info_t *object_info, hid_t lapl_id )
See entry.
H5Oincr_refcount      herr_t H5Oincr_refcount( hid_t object_id )
See entry.
H5Olink      herr_t H5Olink( hid_t obj_id, hid_t new_loc_id, const char *new_link_name, hid_t lcpl, hid_t lapl )
See entry.
H5Oopen      hid_t H5Oopen( hid_t loc_id, const char *name, hid_t lapl_id )
See entry.
H5Oopen_by_addr      hid_t H5Oopen_by_addr( hid_t loc_id, haddr_t addr )
See entry.
H5Oopen_by_idx      herr_t H5Oopen_by_idx( hid_t loc_id, const char *group_name, H5_index_t index_field, H5_iter_order_t order, hsize_t n, hid_t lapl_id )
See entry.
H5Oset_comment      herr_t H5Oset_comment( hid_t object_id, const char *comment )
See entry.
H5Oset_comment_by_name      herr_t H5Oset_comment_by_name( hid_t loc_id, const char *name, const char *comment, hid_t lapl_id )
See entry.
H5Ovisit      herr_t H5Ovisit( hid_t group_id, H5_index_t index_type, H5_iter_order_t order, H5O_iterate_t op, void *op_data )
See entry.
H5Ovisit_by_name      herr_t H5Ovisit_by_name( hid_t loc_id, const char *object_name, H5_index_t index_type, H5_iter_order_t order, H5O_iterate_t op, void *op_data, hid_t lapl_id )
See entry.

Object creation or copying with
“create intermediate groups” property
 
H5Pset_create_intermediate_group   herr_t H5Pset_create_intermediate_group( hid_t gcpl_id, unsigned crt_intermed_group )
See entry.
H5Pget_create_intermediate_group herr_t H5Pget_create_intermediate_group( hid_t gcpl_id, unsigned *crt_intermed_group )
See entry.

Object copy properties
 
H5Ocopy      herr_t H5Ocopy( hid_t src_loc_id, const char *src_name, hid_t dst_loc_id, const char *dst_name, hid_t ocp_plist_id, hid_t lcpl_id )
See entry.
H5Pset_copy_object      herr_t H5Pset_copy_object( hid_t cplist_id, unsigned copy_options )
See entry.
H5Pget_copy_object      herr_t H5Pget_copy_object( hid_t cplist_id, unsigned *copy_options )
See entry.

Improved object and file
information retrieval
 
H5Aget_info      herr_t H5Aget_info( hid_t attr_id, H5A_info_t *ainfo )
See entry.
H5Aget_info_by_name      herr_t H5Aget_info_by_name( hid_t loc_id, const char *obj_name, const char *attr_name, H5A_info_t *ainfo, hid_t lapl_id )
See entry.
H5Aget_info_by_idx      herr_t H5Aget_info_by_idx( hid_t loc_id, const char *obj_name, H5_index_t idx_type, H5_iter_order_t order, hsize_t n, H5A_info_t *ainfo, hid_t lapl_id )
See entry.
H5Fget_info      herr_t H5Fget_info( hid_t obj_id, H5F_info_t *bh_info )
See entry.
H5Gget_info      herr_t H5Gget_info( hid_t group_id, H5G_info_t group_info )
See entry.
H5Gget_info_by_name      herr_t H5Gget_info_by_name( hid_t loc_id, const char *group_name, H5G_info_t group_info, hid_t lapl_id )
See entry.
H5Gget_info_by_idx      herr_t H5Gget_info_by_idx( hid_t loc_id, const char *group_name, H5_index_t index_type, H5_iter_order_t order, hsize_t n, H5G_info_t group_info, hid_t lapl_id )
See entry.
H5Lget_info      herr_t H5Lget_info( hid_t link_loc_id, const char *link_name, H5L_info_t *link_buff, hid_t lapl_id )
See entry.
H5Lget_info_by_idx      herr_t H5Lget_info_by_idx( hid_t loc_id, const char *group_name, H5_index_t index_field, H5_iter_order_t order, hsize_t n, H5L_info_t *link_val, hid_t lapl_id )
See entry.
H5Oget_info      herr_t H5Oget_info( hid_t object_id, H5O_info_t *obj_info )
See entry.
H5Oget_info_by_name      herr_t H5Oget_info_by_name( hid_t loc_id, const char *object_name, H5O_info_t *object_info, hid_t lapl_id )
See entry.
H5Oget_info_by_idx      herr_t H5Oget_info_by_idx( hid_t loc_id, const char *group_name, H5_index_t index_field, H5_iter_order_t order, hsize_t n, H5O_info_t *obj_info, hid_t lapl_id )
See entry.

Name of referenced object
 
H5Rget_name      ssize_t H5Rget_name( hid_t loc_id, H5R_type_t ref_type, void *ref, char *name, size_t size )
See entry.

Anonymous object creation
 
H5Dcreate_anon      hid_t H5Dcreate_anon( hid_t loc_id, hid_t type_id, hid_t space_id, hid_t dcpl_id, hid_t dapl_id )
See entry.
H5Gcreate_anon      hid_t H5Gcreate_anon(hid_t loc_id, const char * name, hid_t gcpl_id, hid_t gapl_id)
See entry.
H5Tcommit_anon      herr_t H5Tcommit_anon( hid_t loc_id, hid_t type_id, hid_t tcpl_id, hid_t tapl_id )
See entry.
H5Llink      herr_t H5Llink( hid_t link_loc_id, const char *link_name, hid_t obj_id, hid_t lcpl, hid_t lapl )
See entry.

New-style object creation and open
functions  (includes anonymous
object creation)
 
H5Dcreate_anon      hid_t H5Dcreate_anon( hid_t loc_id, hid_t type_id, hid_t space_id, hid_t dcpl_id, hid_t dapl_id )
See entry.
H5Dcreate2      hid_t H5Dcreate2( hid_t loc_id, const char *name, hid_t type_id, hid_t space_id, hid_t lcpl_id, hid_t dcpl_id, hid_t dapl_id )
See entry.
H5Dopen2      hid_t H5Dopen2( hid_t loc_id, const char *name, hid_t dapl_id )
See entry.
H5Gcreate_anon      hid_t H5Gcreate_anon(hid_t loc_id, const char * name, hid_t gcpl_id, hid_t gapl_id)
See entry.
H5Gcreate2      hid_t H5Gcreate2( hid_t loc_id, const char *name, hid_t lcpl_id, hid_t gcpl_id, hid_t gapl_id )
See entry.
H5Gopen2      hid_t H5Gopen2( hid_t loc_id, const char * name, hid_t gapl_id )
See entry.
H5Tcommit_anon      herr_t H5Tcommit_anon( hid_t loc_id, hid_t type_id, hid_t tcpl_id, hid_t tapl_id )
See entry.
H5Tcommit2      herr_t H5Tcommit2( hid_t loc_id, const char *name, hid_t type_id, hid_t lcpl_id, hid_t tcpl_id, hid_t tapl_id )
See entry.
H5Topen2      hid_t H5Topen2( hid_t loc_id, const char * name, hid_t tapl_id )
See entry.

User-defined identifiers
 
H5Iregister      hid_t H5Iregister(H5I_type_t type, void *object)
See entry.
H5Iregister_type      H5I_type_t H5Iregister_type(size_t hash_size, unsigned reserved, H5I_free_t free_func)
See entry.
H5Idestroy_type      herr_t H5Idestroy_type(H5I_type_t type)
See entry.
H5Iinc_type_ref      int H5Iinc_type_ref(H5I_type_t type)
See entry.
H5Idec_type_ref      int H5Idec_type_ref(H5I_type_t type)
See entry.
H5Iget_type_ref      int H5Iget_type_ref(H5I_type_t type)
See entry.

Other identifier API (H5I) enhancements
 
H5Iclear_type      herr_t H5Iclear_type(H5I_type_t type, hbool_t force)
See entry.
H5Inmembers      int H5Inmembers(H5I_type_t type, hsize_t *num_members)
See entry.
H5Iobject_verify      void * H5Iobject_verify(hid_t id, H5I_type_t id_type)
See entry.
H5Iremove_verify      void * H5Iremove_verify(hid_t id, H5I_type_t id_type)
See entry.
H5Isearch      void * H5Isearch(H5I_type_t type, H5I_search_func_t func, void *key)
See entry.
H5Itype_exists      htri_t H5Itype_exists(H5I_type_t type)
See entry.

Compression filters: N-bit
and scale-offset
 
H5Pset_nbit      herr_t H5Pset_nbit( hid_t plist_id )
See entry.
H5Pset_scaleoffset      herr_t H5Pset_scaleoffset( hid_t plist_id, H5Z_SO_scale_type_t scale_type, int scale_factor )
See entry.

User-defined datatype conversion
callback functions
 
H5Pget_type_conv_cb      herr_t H5Pget_type_conv_cb( hid_t plist, H5T_conv_except_func_t *func, void **op_data )
See entry.
H5Pset_type_conv_cb      herr_t H5Pset_type_conv_cb( hid_t plist, H5T_conv_except_func_t func, void *op_data )
See entry.

Datatype compiler conversion check
 
H5Tcompiler_conv      htri_t H5Tcompiler_conv( hid_t src_id, hid_t dst_id )
See entry.

Dataset array size reduction
 
H5Dset_extent      herr_t H5Dset_extent( hid_t dset_id, const hsize_t *size )
See entry.

Dataspace equivalence
 
H5Sextent_equal      herr_t H5Sextent_equal( hid_t sid1, hid_t sid2 )
See entry.

Direct I/O, bypassing system cache
 
H5Pset_fapl_direct      herr_t H5Pset_fapl_direct( hid_t fapl_id, size_t alignment, size_t block_size, size_t cbuf_size )
See entry.
H5Pget_fapl_direct      herr_t H5Pget_fapl_direct( hid_t fapl_id, size_t *alignment, size_t *block_size, size_t *cbuf_size )
See entry.

Parallel I/O optimization
(collective chunk I/O)
 
H5Pset_dxpl_mpio_chunk_opt      herr_t H5Pset_dxpl_mpio_chunk_opt(hid_t dxpl_id, H5FD_mpio_chunk_opt_t opt_mode)
See entry.
H5Pset_dxpl_mpio_chunk_opt_num      herr_t H5Pset_dxpl_mpio_chunk_opt_num(hid_t dxpl_id, unsigned num_chunk_per_proc)
See entry.
H5Pset_dxpl_mpio_chunk_opt_ratio      herr_t H5Pset_dxpl_mpio_chunk_opt_ratio(hid_t dxpl_id, unsigned percent_num_proc_per_chunk)
See entry.
H5Pset_dxpl_mpio_collective_opt      herr_t H5Pset_dxpl_mpio_collective_opt( hid_t dxpl_id, H5FD_mpio_collective_opt_t opt_mode )
See entry.

Enhanced error handling (H5E)
 
H5Eauto_is_v2      herr_t H5Eauto_is_v2( hid_t estack_id, unsigned *is_stack )
See entry.
H5Eclear2      herr_t H5Eclear2( hid_t estack_id )
See entry.
H5Eclose_msg      herr_t H5Eclose_msg (hid_t mesg_id)
See entry.
H5Eclose_stack      herr_t H5Eclose_stack(hid_t estack_id)
See entry.
H5Ecreate_msg      hid_t H5Ecreate_msg(hid_t class, H5E_type_t msg_type, const char* mesg)
See entry.
H5Eget_auto2      herr_t H5Eget_auto2(hid_t estack_id, H5E_auto2_t * func, void **client_data)
See entry.
H5Eget_class_name      ssize_t H5Eget_class_name(hid_t class_id, char* name, size_t size)
See entry.
H5Eget_current_stack      hid_t H5Eget_current_stack(void)
See entry.
H5Eget_msg      ssize_t H5Eget_msg(hid_t mesg_id, H5E_type_t* mesg_type, char* mesg, size_t size)
See entry.
H5Eget_num      ssize_t H5Eget_num(hid_t estack_id)
See entry.
H5Epop      herr_t H5Epop(hid_t estack_id, size_t count)
See entry.
H5Eprint2      herr_t H5Eprint2(hid_t estack_id, FILE * stream)
See entry.
H5Epush2      herr_t H5Epush2(hid_t estack_id, const char *file, const char *func, unsigned line, hid_t class_id, hid_t major_id, hid_t minor_id, const char *msg, ...)
See entry.
H5Eregister_class      hid_t H5Eregister_class(const char* cls_name, const char* lib_name, const char* version)
See entry.
H5Eset_auto2      herr_t H5Eset_auto2(hid_t estack_id, H5E_auto2_t func, void *client_data)
See entry.
H5Eset_current_stack      herr_t H5Eset_current_stack(hid_t estack_id)
See entry.
H5Eunregister_class      herr_t H5Eunregister_class(hid_t class_id)
See entry.
H5Ewalk2      herr_t H5Ewalk2(hid_t estack_id, H5E_direction_t direction, H5E_walk2_t func, void * client_data)
See entry.

Meta data cache management
 
H5Fget_mdc_config      herr_t H5Fget_mdc_config(hid_t file_id, H5AC_cache_config_t *config_ptr)
See entry.
H5Fget_mdc_hit_rate      herr_t H5Fget_mdc_hit_rate(hid_t file_id, double *hit_rate_ptr)
See entry.
H5Fget_mdc_size      herr_t H5Fget_mdc_size(hid_t file_id, size_t *max_size_ptr, size_t *min_clean_size_ptr, size_t *cur_size_ptr, int *cur_num_entries_ptr)
See entry.
H5Freset_mdc_hit_rate_stats      herr_t H5Freset_mdc_hit_rate_stats(hid_t file_id)
See entry.
H5Fset_mdc_config      herr_t H5Fset_mdc_config(hid_t file_id, H5AC_cache_config_t *config_ptr)
See entry.
H5Pset_mdc_config      herr_t H5Pset_mdc_config(hid_t plist_id, H5AC_cache_config_t * config_ptr)
See entry.
H5Pget_mdc_config      herr_t H5Pget_mdc_config(hid_t plist_id, H5AC_cache_config_t * config_ptr)
See entry.

File read/write status
 
H5Fget_intent      herr_t H5Fget_intent( hid_t file_id, unsigned *intent )
See entry.

Arithmetic data transform on I/O
 
H5Pget_data_transform      herr_t H5Pget_data_transform( hid_t plist_id, char* expression, size_t size)
See entry.
H5Pset_data_transform      herr_t H5Pset_data_transform( hid_t plist, const char* expression )
See entry.

Dataspace and datatype serial conversion
 
H5Sdecode      hid_t H5Sdecode( const void *buf )
See entry.
H5Sencode      herr_t H5Sencode( hid_t obj_id, void *buf, size_t *nalloc )
See entry.
H5Tdecode      hid_t H5Tdecode( const void *buf )
See entry.
H5Tencode      herr_t H5Tencode( hid_t obj_id, void *buf, size_t *nalloc )
See entry.

Enhanced filter management
 
H5Pget_filter2 herr_t H5Pget_filter2( hid_t plist_id, unsigned idx, unsigned int *flags, size_t *cd_nelmts, unsigned cd_values[], size_t namelen, char name[], unsigned *filter_config)
See entry.
H5Pget_filter_by_id2 hid_t H5Pget_filter_by_id2( hid_t plist_id, H5Z_filter_t filter_id, unsigned int *flags, size_t *cd_nelmts, unsigned int cd_values[], size_t namelen, char name[], unsigned int *filter_config)
See entry.

Comparison of properties
 
H5Pinsert2 hid_t H5Pinsert2( hid_t plid, const char *name, size_t size, void *value, H5P_prp_set_func_t