Creates an array datatype object
Signature:
hid_t H5Tarray_create( hid_t base_type_id, int rank, const hsize_t dims[/*rank*/], const int perm[/*rank*/] )
hid_t H5Tarray_create( hid_t base_typ_id, unsigned rank, const hsize_t dims[/*rank*/], )
SUBROUTINE h5tarray_create_f(base_id, rank, dims, type_id, hdferr)
IMPLICIT NONE
INTEGER(HID_T), INTENT(IN) :: base_id ! Identifier of array base datatype
INTEGER, INTENT(IN) :: rank ! Rank of the array
INTEGER(HSIZE_T), DIMENSION(*), INTENT(IN) :: dims
! Sizes of each array dimension
INTEGER(HID_T), INTENT(OUT) :: type_id ! Identifier of the array datatype
INTEGER, INTENT(OUT) :: hdferr ! Error code
END SUBROUTINE h5tarray_create_f
Description:
H5T_ARRAY_CREATE is a macro that is mapped to either H5T_ARRAY_CREATE1 or H5T_ARRAY_CREATE2, depending on the needs of the application.
Such macros are provided to facilitate application compatibility. For example:
- The H5T_ARRAY_CREATE macro will be mapped to H5T_ARRAY_CREATE1 and will use the H5T_ARRAY_CREATE1 syntax (first signature above) if an application is coded for HDF5 Release 1.6.x.
- The H5T_ARRAY_CREATE macro mapped to H5T_ARRAY_CREATE2 and will use the H5T_ARRAY_CREATE2 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_ARRAY_CREATE is mapped to the most recent version of the function, currently H5T_ARRAY_CREATE2. If the library and/or application is compiled for Release 1.6 emulation, H5T_ARRAY_CREATE will be mapped to H5T_ARRAY_CREATE1. 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:
Compatibility setting | H5Tarray_create mapping |
---|
Global settings |
No compatibility flag | H5Tarray_create2 |
Enable deprecated symbols | H5Tarray_create2 |
Disable deprecated symbols | H5Tarray_create2 |
Emulate Release 1.6 interface | H5Tarray_create1 |
Function-level macros |
H5Tarray_create_vers = 2 | H5Tarray_create2 |
H5Tarray_create_vers = 1 | H5Tarray_create1 |
Interface history: Signature [1] above is the original H5T_ARRAY_CREATE 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_ARRAY_CREATE1.
Signature [2] above was introduced with HDF5 Release 1.8.0 and is the recommended and default interface. It is directly callable as H5T_ARRAY_CREATE2.
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.
History:
Release | Change |
---|
1.8.0 | The function H5Tarray_create renamed to H5Tarray_create1 and deprecated in this release. The macro H5Tarray_create and the function H5Tarray_create2 introduced in this release. |
--- Last Modified: May 03, 2019 | 03:02 PM