Page tree

 

JAVA

FORTRAN

C++

C

 

Link

H5T_ARRAY_CREATE

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 settingH5Tarray_create mapping

Global settings
No compatibility flagH5Tarray_create2 
Enable deprecated symbolsH5Tarray_create2 
Disable deprecated symbolsH5Tarray_create2 
Emulate Release 1.6 interfaceH5Tarray_create1 

Function-level macros
H5Tarray_create_vers = 2    H5Tarray_create2
H5Tarray_create_vers = 1H5Tarray_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.0The 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