Such macros are provided to facilitate application compatibility. Their use and mappings are fully described in API Compatibility Macros in HDF5; we urge you to read that document closely.
In HDF5 version 1.12 and later H5O_GET_INFO_BY_NAME is mapped to H5O_GET_INFO_BY_NAME3. In version 1.10 H5O_GET_INFO_BY_NAME is identical to H5O_GET_INFO_BY_NAME1.
If using 1.10 (1.10.3+) and encountering performance issues, please use H5O_GET_INFO_BY_NAME2to limit the fields retrieved, which can help with performance.
Specific compile-time compatibility flags and the resulting mappings are as follows:
No compatibility flag
H5O_GET_INFO_BY_NAME3 for 1.12 and above
H5O_GET_INFO_BY_NAME1 for 1.8 or 1.10
Emulate 1.12 interface
Emulate Release 1.10 or 1.8 interface
The macro H5O_GET_INFO_BY_NAME and function H5O_GET_INFO_BY_NAME3 were added and H5O_GET_INFO_BY_NAME1 was deprecated.
The macro H5O_GET_INFO_BY_NAME was removed. The functions H5O_GET_INFO_BY_NAME and H5O_GET_INFO_BY_NAME1 are identical in this release. This change was added to restore the broken API compatibility introduced in HDF5-1.10.3.
The function H5O_GET_INFO_BY_NAME was renamed to H5O_GET_INFO_BY_NAME1. The macro H5O_GET_INFO_BY_NAME and the function H5O_GET_INFO_BY_NAME2 were introduced in this release.
C function introduced in this release.
Fortran 2003 subroutine andh5o_info_tderived type introduced in this release.