H5T_GET_ARRAY_DIMS is a macro that is mapped to either H5T_GET_ARRAY_DIMS1 or H5T_GET_ARRAY_DIMS2, depending on the needs of the application.
Such macros are provided to facilitate application compatibility. For example:
- The H5T_GET_ARRAY_DIMS macro will be mapped to H5T_GET_ARRAY_DIMS1 and will use the H5T_GET_ARRAY_DIMS1 syntax (first signature above) if an application is coded for HDF5 Release 1.6.x.
- The H5T_GET_ARRAY_DIMS macro mapped to H5T_GET_ARRAY_DIMS2
H5Tget_array_dims2 and will use the H5T_GET_ARRAY_DIMS2
H5Tget_array_dims2 syntax (second signature above) if an application is coded for HDF5 Release 1.8.x.
Macro use and mappings are fully described in “API Compatibility Macros in HDF5”; we urge you to read that document closely.
When both the HDF5 library and the application are built and installed with no specific compatibility flags, H5T_GET_ARRAY_DIMS is mapped to the most recent version of the function, currently H5T_GET_ARRAY_DIMS2
H5Tget_array_dims2. If the library and/or application is compiled for Release 1.6 emulation, H5T_GET_ARRAY_DIMS will be mapped to H5T_GET_ARRAY_DIMS1. Function-specific flags are available to override these settings on a function-by-function basis when the application is compiled.
Specific compile-time compatibility flags and the resulting mappings are as follows:
|No compatibility flag|
|Enable deprecated symbols|
|Disable deprecated symbols|
|Emulate Release 1.6 interface|
H5Tget_array_dims_vers = 2
H5Tget_array_dims_vers = 1
Interface history: Signature  above is the original H5T_GET_ARRAY_DIMS interface and the only interface available prior to HDF5 Release 1.8.0. This signature and the corresponding function are now deprecated but will remain directly callable as H5T_GET_ARRAY_DIMS1.
Signature  above was introduced with HDF5 Release 1.8.0 and is the recommended and default interface. It is directly callable asH5T_GET_ARRAY_DIMS2
See “API Compatibility Macros in HDF5” for circumstances under which either of these functions might not be available in an installed instance of the HDF5 library.