H5T

[ Top ] [ Modules ]

NAME

  MODULE H5T

PURPOSE

  This file contains Fortran interfaces for H5T functions. It includes
  all the functions that are independent on whether the Fortran 2003 functions
  are enabled or disabled.

NOTES

                         *** IMPORTANT ***
  If you add a new H5T function you must add the function name to the
  Windows dll file 'hdf5_fortrandll.def' in the fortran/src directory.
  This is needed for Windows based operating systems.

h5tarray_create_f

[ Top ] [ H5T ] [ Subroutines ]

NAME

  h5tarray_create_f

PURPOSE

  Creates an array datatype object.

INPUTS

  base_id       - datatype identifier for the array
                  base datatype
  rank          - rank of the array
  dims          - array dimension sizes

OUTPUTS

  type_id       - array datatype identifier
  hdferr        - Returns 0 if successful and -1 if fails

AUTHOR

  Elena Pourmal
  August 12, 1999

HISTORY

  Explicit Fortran interfaces were added for
  called C functions (it is needed for Windows
  port).  March 7, 2001

SOURCE

  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

h5tclose_f

[ Top ] [ H5T ] [ Subroutines ]

NAME

  h5tclose_f

PURPOSE

  Releases a datatype.

INPUTS

  type_id       - datatype identifier

OUTPUTS

  hdferr        - Returns 0 if successful and -1 if fails

AUTHOR

  Elena Pourmal
  August 12, 1999

HISTORY

  Explicit Fortran interfaces were added for
  called C functions (it is needed for Windows
  port).  March 7, 2001

SOURCE

  SUBROUTINE h5tclose_f(type_id, hdferr)
            IMPLICIT NONE
            INTEGER(HID_T), INTENT(IN) :: type_id ! Datatype identifier
            INTEGER, INTENT(OUT) :: hdferr        ! Error code

h5tcommit_anon_f

[ Top ] [ H5T ] [ Subroutines ]

NAME

  h5tcommit_anon_f

PURPOSE

  Commits a transient datatype to a file,
  creating a new named datatype,
  but does not link it into the file structure.

INPUTS

  loc_id        - A file or group identifier specifying the file
                  in which the new named datatype is to be created.
  dtype_id      - A datatype identifier.

OUTPUTS

  hdferr        - Returns 0 if successful and -1 if fails

OPTIONAL PARAMETERS

  tcpl_id       - A datatype creation property list identifier.
                  (H5P_DEFAULT_F for the default property list.)
  tapl_id       - A datatype access property list identifier.
                  should always be passed as the value H5P_DEFAULT_F.

AUTHOR

  M. Scot Breitenfeld
  February 25, 2008

SOURCE

  SUBROUTINE h5tcommit_anon_f(loc_id, dtype_id, hdferr, tcpl_id, tapl_id)
    IMPLICIT NONE
    INTEGER(HID_T), INTENT(IN) :: loc_id  ! A file or group identifier specifying
                                          ! the file in which the new named datatype
                                          ! is to be created.
    INTEGER(HID_T), INTENT(IN) :: dtype_id  ! Datatype identifier
    INTEGER, INTENT(OUT) :: hdferr          ! Error code
    INTEGER(HID_T), OPTIONAL, INTENT(IN) :: tcpl_id ! A datatype creation property
                                                    ! list identifier.
                                                    ! (H5P_DEFAULT_F for the default property list.)
    INTEGER(HID_T), OPTIONAL, INTENT(IN) :: tapl_id ! A datatype access property list identifier.
                                                    ! should always be passed as the value H5P_DEFAULT_F.

h5tcommit_f

[ Top ] [ H5T ] [ Subroutines ]

NAME

  h5tcommit_f

PURPOSE

  Commits a transient datatype to a file, creating a
  new named datatype.

INPUTS

  loc_id        - location identifier
  name          - name of the datatype to be stored
                  at the specified location
  type_id       - identifier of a datatype to be stored

OUTPUTS

  hdferr        - Returns 0 if successful and -1 if fails

OPTIONAL PARAMETERS

  lcpl_id       - Link creation property list
  tcpl_id       - Datatype creation property list
  tapl_id       - Datatype access property list

AUTHOR

  Elena Pourmal
  August 12, 1999

HISTORY

        - Explicit Fortran interfaces were added for
          called C functions (it is needed for Windows
          port).  March 7, 2001

        - Added optional parameters introduced in version 1.8
          M. Scot Breitenfeld

SOURCE

  SUBROUTINE h5tcommit_f(loc_id, name, type_id, hdferr, &
       lcpl_id, tcpl_id, tapl_id  )
    IMPLICIT NONE
    INTEGER(HID_T), INTENT(IN) :: loc_id  ! File or group identifier
    CHARACTER(LEN=*), INTENT(IN) :: name
                                  ! Datatype name within file or group
    INTEGER(HID_T), INTENT(IN) :: type_id  ! Datatype identifier
    INTEGER, INTENT(OUT) :: hdferr          ! Error code
    INTEGER(HID_T), OPTIONAL, INTENT(IN) :: lcpl_id ! Link creation property list
    INTEGER(HID_T), OPTIONAL, INTENT(IN) :: tcpl_id ! Datatype creation property list
    INTEGER(HID_T), OPTIONAL, INTENT(IN) :: tapl_id ! Datatype access property list

h5tcommitted_f

[ Top ] [ H5T ] [ Subroutines ]

NAME

  h5tcommitted_f

PURPOSE

  Determines whether a datatype is a named type or a transient type.

INPUTS

  dtype_id      - A datatype identifier.

OUTPUTS

  committed     - .TRUE., if the datatype has been committed
                  .FALSE., if the datatype has not been committed.
  hdferr        - Returns 0 if successful and -1 if fails

AUTHOR

  M. Scot Breitenfeld
  February 25, 2008

SOURCE

  SUBROUTINE h5tcommitted_f(dtype_id, committed, hdferr)
    IMPLICIT NONE
    INTEGER(HID_T), INTENT(IN) :: dtype_id  ! A datatype identifier
    LOGICAL, INTENT(OUT) :: committed ! .TRUE., if the datatype has been committed
                                      !.FALSE., if the datatype has not been committed.
    INTEGER, INTENT(OUT) :: hdferr     ! Error code:
!  Success:  0
!  Failure: -1

h5tcompiler_conv_f

[ Top ] [ H5T ] [ Subroutines ]

NAME

  h5tcompiler_conv_f

PURPOSE

  Check whether the library’s default conversion is hard conversion.R

INPUTS

  src_id        - Identifier for the source datatype.
  dst_id        - Identifier for the destination datatype.

OUTPUTS

  flag          - TRUE for compiler conversion, FALSE for library conversion
  hdferr        - Returns 0 if successful and -1 if fails

AUTHOR

  M. Scot Breitenfeld
  April 9, 2008

SOURCE

  SUBROUTINE h5tcompiler_conv_f( src_id, dst_id, flag, hdferr)
    IMPLICIT NONE
    INTEGER(HID_T), INTENT(IN) :: src_id ! Identifier for the source datatype.
    INTEGER(HID_T), INTENT(IN) :: dst_id ! Identifier for the destination datatype.
    LOGICAL, INTENT(OUT) :: flag  ! .TRUE. for compiler conversion, .FALSE. for library conversion
    INTEGER, INTENT(OUT) :: hdferr  ! Error code:
                                    ! 0 on success and -1 on failure

h5tcopy_f

[ Top ] [ H5T ] [ Subroutines ]

NAME

  h5tcopy_f

PURPOSE

  Creates a copy of exisiting datatype.

INPUTS

  type_id       - datatype identifier

OUTPUTS

  new_type_id   - identifier of datatype's copy
  hdferr        - Returns 0 if successful and -1 if fails

AUTHOR

  Elena Pourmal
  August 12, 1999

HISTORY

  Explicit Fortran interfaces were added for
  called C functions (it is needed for Windows
  port).  March 7, 2001

SOURCE

  SUBROUTINE h5tcopy_f(type_id, new_type_id, hdferr)
            IMPLICIT NONE
            INTEGER(HID_T), INTENT(IN) :: type_id ! Datatype identifier
            INTEGER(HID_T), INTENT(OUT) :: new_type_id
                                 ! Identifier of datatype's copy
            INTEGER, INTENT(OUT) :: hdferr        ! Error code

h5tcreate_f

[ Top ] [ H5T ] [ Subroutines ]

NAME

  h5tcreate_f

PURPOSE

  Creates a new dataype

INPUTS

  class         - datatype class, possible values are:
                    H5T_COMPOUND_F
                    H5T_ENUM_F
                    H5T_OPAQUE_F
  size          - datattype size

OUTPUTS

  type_id       - datatype identifier
  hdferr        - Returns 0 if successful and -1 if fails

AUTHOR

  Elena Pourmal
  August 12, 1999

HISTORY

  Explicit Fortran interfaces were added for
  called C functions (it is needed for Windows
  port).  March 7, 2001

SOURCE

  SUBROUTINE h5tcreate_f(class, size, type_id, hdferr)
            IMPLICIT NONE
            INTEGER, INTENT(IN) :: class ! Datatype class can be one of
                                         ! H5T_COMPOUND_F
                                         ! H5T_ENUM_F
                                         ! H5T_OPAQUE_F
            INTEGER(SIZE_T), INTENT(IN) :: size ! Size of the datatype
            INTEGER(HID_T), INTENT(OUT) :: type_id ! Datatype identifier
            INTEGER, INTENT(OUT) :: hdferr        ! Error code

H5Tdecode_f

[ Top ] [ H5T ] [ Subroutines ]

NAME

  H5Tdecode_f

PURPOSE

  Decode a binary object description of data type and return a new object handle.

INPUTS

  buf           -  Buffer for the data space object to be decoded.
  obj_id        - Object ID

OUTPUTS

  hdferr        - Returns 0 if successful and -1 if fails

AUTHOR

  M. Scot Breitenfeld
  April 9, 2008

SOURCE

  SUBROUTINE h5tdecode_f(buf, obj_id, hdferr)
    IMPLICIT NONE
    CHARACTER(LEN=*), INTENT(IN) :: buf ! Buffer for the data space object to be decoded.
    INTEGER(HID_T), INTENT(OUT) :: obj_id  ! Object ID
    INTEGER, INTENT(OUT) :: hdferr     ! Error code

h5tenaum_insert_f

[ Top ] [ H5T ] [ Subroutines ]

NAME

  h5tenaum_insert_f

PURPOSE

  Inserts a new enumeration datatype member.

INPUTS

  type_id       - datatype identifier

OUTPUTS

  hdferr        - Returns 0 if successful and -1 if fails

AUTHOR

  Elena Pourmal
  August 12, 1999

HISTORY

  Explicit Fortran interfaces were added for
  called C functions (it is needed for Windows
  port).  March 7, 2001

SOURCE

  SUBROUTINE h5tenum_insert_f(type_id,  name, value, hdferr)
            IMPLICIT NONE
            INTEGER(HID_T), INTENT(IN) :: type_id ! Datatype identifier
            CHARACTER(LEN=*), INTENT(IN) :: name  !Name of  the new member
            INTEGER, INTENT(IN) :: value !value of the new member
            INTEGER, INTENT(OUT) :: hdferr        ! Error code

H5Tencode_f

[ Top ] [ H5T ] [ Subroutines ]

NAME

  H5Tencode_f

PURPOSE

  Encode a data type object description into a binary buffer.

INPUTS

  obj_id        - Identifier of the object to be encoded.
  buf           - Buffer for the object to be encoded into.
  nalloc        - The size of the allocated buffer.

OUTPUTS

  nalloc        - The size of the buffer needed.
  hdferr        - Returns 0 if successful and -1 if fails.

AUTHOR

  M. Scot Breitenfeld
  April 9, 2008

SOURCE

  SUBROUTINE h5tencode_f(obj_id, buf, nalloc, hdferr)
    IMPLICIT NONE
    INTEGER(HID_T), INTENT(IN) :: obj_id ! Identifier of the object to be encoded.
    CHARACTER(LEN=*), INTENT(OUT) :: buf ! Buffer for the object to be encoded into.
    INTEGER(SIZE_T), INTENT(INOUT) :: nalloc ! The size of the allocated buffer.
    INTEGER, INTENT(OUT) :: hdferr     ! Error code

h5tenum_create_f

[ Top ] [ H5T ] [ Subroutines ]

NAME

  h5tenum_create_f

PURPOSE

  Creates a new enumeration datatype.

INPUTS

  parent_id     - datatype identifier for base datatype

OUTPUTS

  new_type_id   - datatype identifier for the enumeration datatype
  hdferr        - Returns 0 if successful and -1 if fails

AUTHOR

  Elena Pourmal
  August 12, 1999

HISTORY

  Explicit Fortran interfaces were added for
  called C functions (it is needed for Windows
  port).  March 7, 2001

SOURCE

  SUBROUTINE h5tenum_create_f(parent_id, new_type_id, hdferr)
            IMPLICIT NONE
            INTEGER(HID_T), INTENT(IN) :: parent_id  ! Datatype identifier for
                                                     ! the  base datatype
            INTEGER(HID_T), INTENT(OUT) :: new_type_id
                                                     !datatype identifier for the
                                                     ! new enumeration datatype
            INTEGER, INTENT(OUT) :: hdferr        ! Error code

h5tenum_nameof_f

[ Top ] [ H5T ] [ Subroutines ]

NAME

  h5tenum_nameof_f

PURPOSE

  Returns the symbol name corresponding to a specified
  member of an enumeration datatype.

INPUTS

  type_id       - datatype identifier
  value         - value of the enumeration datatype
  namelen       - name buffer size

OUTPUTS

  name          - buffer to hold symbol name
  hdferr        - Returns 0 if successful and -1 if fails

AUTHOR

  Elena Pourmal
  August 12, 1999

HISTORY

  Explicit Fortran interfaces were added for
  called C functions (it is needed for Windows
  port).  March 7, 2001

 NOTE
   According to the standard: Because an INTENT(OUT) variable is considered undefined 
   on entry to the procedure, any default initialization specified for its type will 
   be applied. So we need to blank out the "name" to be portable and eliminate any 
   characters the "name' may contain upon entry, depending on compiler implementation.

SOURCE

  SUBROUTINE h5tenum_nameof_f(type_id,  value, namelen, name, hdferr)
            IMPLICIT NONE
            INTEGER(HID_T), INTENT(IN) :: type_id ! Datatype identifier
            CHARACTER(LEN=*), INTENT(OUT) :: name  !Name of the  enumeration datatype.
            INTEGER(SIZE_T), INTENT(IN) :: namelen !length of the name
            INTEGER, INTENT(IN) :: value !value of the  enumeration datatype.
            INTEGER, INTENT(OUT) :: hdferr        ! Error code

h5tenum_valuof_f

[ Top ] [ H5T ] [ Subroutines ]

NAME

  h5tenum_valuof_f

PURPOSE

  Returns the value corresponding to a specified
  member of an enumeration datatype.

INPUTS

  type_id       - datatype identifier
  name          - symbol name

OUTPUTS

  value         - value of the enumeration datatype
  hdferr        - Returns 0 if successful and -1 if fails

AUTHOR

  Elena Pourmal
  August 12, 1999

HISTORY

  Explicit Fortran interfaces were added for
  called C functions (it is needed for Windows
  port).  March 7, 2001

SOURCE

  SUBROUTINE h5tenum_valueof_f(type_id,  name, value, hdferr)
            IMPLICIT NONE
            INTEGER(HID_T), INTENT(IN) :: type_id ! Datatype identifier
            CHARACTER(LEN=*), INTENT(IN) :: name  !Name of the  enumeration datatype.
            INTEGER, INTENT(OUT) :: value !value of the  enumeration datatype.
            INTEGER, INTENT(OUT) :: hdferr        ! Error code

h5tequal_f

[ Top ] [ H5T ] [ Subroutines ]

NAME

  h5tequal_f

PURPOSE

  Determines whether two datatype identifiers refer
  to the same datatype.

INPUTS

  type1_id      - datatype identifier
  type2_id      - datatype identifier

OUTPUTS

  flag          - TRUE/FALSE flag to indicate
                  if two datatypes are equal
  hdferr        - Returns 0 if successful and -1 if fails

AUTHOR

  Elena Pourmal
  August 12, 1999

HISTORY

  Explicit Fortran interfaces were added for
  called C functions (it is needed for Windows
  port).  March 7, 2001

SOURCE

  SUBROUTINE h5tequal_f(type1_id, type2_id, flag, hdferr)
            IMPLICIT NONE
            INTEGER(HID_T), INTENT(IN) :: type1_id ! Datatype identifier
            INTEGER(HID_T), INTENT(IN) :: type2_id ! Datatype identifier
            LOGICAL, INTENT(OUT) :: flag ! TRUE/FALSE flag to indicate if two
                                         ! datatypes are equal
            INTEGER, INTENT(OUT) :: hdferr        ! Error code

h5tget_array_dims_f

[ Top ] [ H5T ] [ Subroutines ]

NAME

  h5tget_array_dims_f

PURPOSE

  Returns sizes of array dimensions.

INPUTS

  type_id       - array datatype identifier

OUTPUTS

  dims          - buffer to store array datatype dimensions
  hdferr        - Returns 0 if successful and -1 if fails

AUTHOR

  Elena Pourmal
  August 12, 1999

HISTORY

  Explicit Fortran interfaces were added for
  called C functions (it is needed for Windows
  port).  March 7, 2001

SOURCE

  SUBROUTINE h5tget_array_dims_f(type_id, dims, hdferr)
            IMPLICIT NONE
            INTEGER(HID_T), INTENT(IN) :: type_id ! Array datatype identifier
            INTEGER(HSIZE_T),DIMENSION(*), INTENT(OUT) ::  dims !buffer to store array datatype
                                                                ! dimensions
            INTEGER, INTENT(OUT) :: hdferr        ! Error code

h5tget_array_ndims_f

[ Top ] [ H5T ] [ Subroutines ]

NAME

  h5tget_array_ndims_f

PURPOSE

  Returns the rank of an array datatype.

INPUTS

  type_id       - array datatype identifier

OUTPUTS

  ndims         - number of array dimensions
  hdferr        - Returns 0 if successful and -1 if fails

AUTHOR

  Elena Pourmal
  August 12, 1999

HISTORY

  Explicit Fortran interfaces were added for
  called C functions (it is needed for Windows
  port).  March 7, 2001

SOURCE

  SUBROUTINE h5tget_array_ndims_f(type_id, ndims, hdferr)
            IMPLICIT NONE
            INTEGER(HID_T), INTENT(IN) :: type_id ! Array datatype identifier
            INTEGER, INTENT(OUT) ::  ndims ! number of array dimensions
            INTEGER, INTENT(OUT) :: hdferr        ! Error code

h5tget_class_f

[ Top ] [ H5T ] [ Subroutines ]

NAME

  h5tget_class_f

PURPOSE

  Returns the datatype class identifier.

INPUTS

  type_id       - datatype identifier

OUTPUTS

  class         - class, possible values are:
                   H5T_NO_CLASS_F (-1)
                   H5T_INTEGER_F  (0)
                   H5T_FLOAT_F (1)
                   H5T_TIME_F  (2)
                   H5T_STRING_F (3)
                   H5T_BITFIELD_F (4)
                   H5T_OPAQUE_F (5)
                   H5T_COMPOUND_F (6)
                   H5T_REFERENCE_F (7)
                   H5T_ENUM_F (8)
  hdferr        - Returns 0 if successful and -1 if fails

AUTHOR

  Elena Pourmal
  August 12, 1999

HISTORY

  Explicit Fortran interfaces were added for
  called C functions (it is needed for Windows
  port).  March 7, 2001

SOURCE

  SUBROUTINE h5tget_class_f(type_id, class, hdferr)
            IMPLICIT NONE
            INTEGER(HID_T), INTENT(IN) :: type_id ! Datatype identifier
            INTEGER, INTENT(OUT) :: class
                           ! Datatype class, possible values are:
                                          ! H5T_NO_CLASS_F (-1)
                                          ! H5T_INTEGER_F  (0)
                                          ! H5T_FLOAT_F (1)
                                          ! H5T_TIME_F  (2)
                                          ! H5T_STRING_F (3)
                                          ! H5T_BITFIELD_F (4)
                                          ! H5T_OPAQUE_F (5)
                                          ! H5T_COMPOUND_F (6)
                                          ! H5T_REFERENCE_F (7)
                                          ! H5T_ENUM_F (8)
          INTEGER, INTENT(OUT) :: hdferr        ! Error code

h5tget_create_plist_f

[ Top ] [ H5T ] [ Subroutines ]

NAME

  h5tget_create_plist_f

PURPOSE

  Returns a copy of a datatype creation property list.

INPUTS

  dtype_id      - Datatype identifier

OUTPUTS

  dtpl_id       - Datatype property list identifier
  hdferr        - Returns 0 if successful and -1 if fails

AUTHOR

  M. Scot Breitenfeld
  April 9, 2008

SOURCE

  SUBROUTINE h5tget_create_plist_f(dtype_id, dtpl_id, hdferr)
    IMPLICIT NONE
    INTEGER(HID_T), INTENT(IN) :: dtype_id  ! Datatype identifier
    INTEGER(HID_T), INTENT(OUT) :: dtpl_id  ! Datatype property list identifier.
    INTEGER, INTENT(OUT) :: hdferr       ! Error code:
                                         ! 0 on success and -1 on failure

h5tget_cset_f

[ Top ] [ H5T ] [ Subroutines ]

NAME

  h5tget_cset_f

PURPOSE

  Retrieves the character set type of a string datatype.

INPUTS

  type_id  - Datatype identifier

OUTPUTS

  cset     - Character set type of a string datatype
              Possible values are:
              H5T_CSET_ASCII_F = 0
              H5T_CSET_UTF8_F
  hdferr   - Returns 0 if successful and -1 if fails

AUTHOR

  Elena Pourmal
  August 12, 1999

HISTORY

  Explicit Fortran interfaces were added for
  called C functions (it is needed for Windows
  port).  March 7, 2001

SOURCE

  SUBROUTINE h5tget_cset_f(type_id, cset, hdferr)
            IMPLICIT NONE
            INTEGER(HID_T), INTENT(IN) :: type_id ! Datatype identifier
            INTEGER, INTENT(OUT) :: cset   ! character set type of a string datatype
                                           !  Possible values are:
                                           !  H5T_CSET_ASCII_F = 0
                                           !  H5T_CSET_UTF8_F
            INTEGER, INTENT(OUT) :: hdferr ! Error code

h5tget_ebias_f

[ Top ] [ H5T ] [ Subroutines ]

NAME

  h5tget_ebias_f

PURPOSE

  Retrieves the exponent bias of a floating-point type.

INPUTS

  type_id       - datatype identifier

OUTPUTS

  ebias         - datatype exponent bias
  hdferr        - Returns 0 if successful and -1 if fails

AUTHOR

  Elena Pourmal
  August 12, 1999

HISTORY

  Explicit Fortran interfaces were added for
  called C functions (it is needed for Windows
  port).  March 7, 2001

SOURCE

  SUBROUTINE h5tget_ebias_f(type_id, ebias, hdferr)
            IMPLICIT NONE
            INTEGER(HID_T), INTENT(IN) :: type_id ! Datatype identifier
            INTEGER(SIZE_T), INTENT(OUT) :: ebias ! Datatype exponent bias of a floating-point type
            INTEGER, INTENT(OUT) :: hdferr        ! Error code

h5tget_fields_f

[ Top ] [ H5T ] [ Subroutines ]

NAME

  h5tget_fields_f

PURPOSE

  Retrieves floating point datatype bit field information.

INPUTS

  type_id       - datatype identifier

OUTPUTS

  spos          - sign bit-position
  epos          - exponent bit-position
  esize         - size of exponent in bits
  mpos          - mantissa position
  msize         - size of mantissa in bits
  hdferr        - Returns 0 if successful and -1 if fails

AUTHOR

  Elena Pourmal
  August 12, 1999

HISTORY

  Explicit Fortran interfaces were added for
  called C functions (it is needed for Windows
  port).  March 7, 2001

SOURCE

  SUBROUTINE h5tget_fields_f(type_id, spos, epos, esize, mpos, msize, hdferr)
            IMPLICIT NONE
            INTEGER(HID_T), INTENT(IN) :: type_id ! Datatype identifier
            INTEGER(SIZE_T), INTENT(OUT) :: spos   ! sign bit-position
            INTEGER(SIZE_T), INTENT(OUT) :: epos   ! exponent bit-position
            INTEGER(SIZE_T), INTENT(OUT) :: esize  ! size of exponent in bits
            INTEGER(SIZE_T), INTENT(OUT) :: mpos   ! mantissa bit-position
            INTEGER(SIZE_T), INTENT(OUT) :: msize  ! size of mantissa in bits
            INTEGER, INTENT(OUT) :: hdferr        ! Error code

h5tget_inpad_f

[ Top ] [ H5T ] [ Subroutines ]

NAME

  h5tget_inpad_f

PURPOSE

  Retrieves the internal padding type for unused bits
  in floating-point datatypes.

INPUTS

  type_id       - datatype identifier

OUTPUTS

  padtype       - padding type for unused bits
                  Possible values of padding type are:
                    H5T_PAD_ZERO_F = 0
                    H5T_PAD_ONE_F = 1
                    H5T_PAD_BACKGROUND_F = 2
  hdferr        - Returns 0 if successful and -1 if fails

AUTHOR

  Elena Pourmal
  August 12, 1999

HISTORY

  Explicit Fortran interfaces were added for
  called C functions (it is needed for Windows
  port).  March 7, 2001

SOURCE

  SUBROUTINE h5tget_inpad_f(type_id, padtype, hdferr)
            IMPLICIT NONE
            INTEGER(HID_T), INTENT(IN) :: type_id ! Datatype identifier
            INTEGER, INTENT(OUT) :: padtype ! padding type for unused bits
                                            ! in floating-point datatypes.
                                            ! Possible values of padding type are:
                                            ! H5T__PAD_ZERO_F = 0
                                            ! H5T__PAD_ONE_F = 1
                                            ! H5T__PAD_BACKGROUND_F = 2

            INTEGER, INTENT(OUT) :: hdferr        ! Error code

h5tget_member_class_f

[ Top ] [ H5T ] [ Subroutines ]

NAME

  h5tget_member_class_f

PURPOSE

  Returns datatype class of compound datatype member.

INPUTS

  type_id       - datartpe identifier
  member_no     - index of compound datatype member

OUTPUTS

  class         - class type for compound dadtype member
                  Valid classes:
                    H5T_NO_CLASS_F (error)
                    H5T_INTEGER_F
                    H5T_FLOAT_F
                    H5T_TIME_F
                    H5T_STRING_F
                    H5T_BITFIELD_F
                    H5T_OPAQUE_F
                    H5T_COMPOUND_F
                    H5T_REFERENCE_F
                    H5T_ENUM_F
                    H5T_VLEN_F
                    H5T_ARRAY_F
  hdferr        - Returns 0 if successful and -1 if fails

AUTHOR

  Elena Pourmal
  April 6, 2005

SOURCE

  SUBROUTINE h5tget_member_class_f(type_id, member_no, class, hdferr)
            IMPLICIT NONE
            INTEGER(HID_T), INTENT(IN) :: type_id  ! Datatype identifier
            INTEGER, INTENT(IN)       :: member_no  ! Member number
            INTEGER, INTENT(OUT)     :: class      ! Member class
            INTEGER, INTENT(OUT) :: hdferr      ! Error code

h5tget_member_index_f

[ Top ] [ H5T ] [ Subroutines ]

NAME

  h5tget_member_index_f

PURPOSE

  Retrieves the index of a compound or enumeration datatype member.

INPUTS

  type_id       - datatype identifier
  name          - name of the field or member whose index to
  to be retrieved from the datatype.

OUTPUTS

  index         - 0-based index of the filed or member (0 to N-1)
  hdferr        - Returns 0 if successful and -1 if fails

AUTHOR

  Elena Pourmal
  September 26, 2002

SOURCE

  SUBROUTINE h5tget_member_index_f(type_id, name, index, hdferr)
            IMPLICIT NONE
            INTEGER(HID_T), INTENT(IN) :: type_id  ! Datatype identifier
            CHARACTER(LEN=*), INTENT(IN) :: name   ! Field or member name
            INTEGER, INTENT(OUT) :: index          ! Field or member index
            INTEGER, INTENT(OUT) :: hdferr          ! Error code

h5tget_member_name_f

[ Top ] [ H5T ] [ Subroutines ]

NAME

  h5tget_member_name_f

PURPOSE

  Retrieves the name of a field of a compound datatype.

INPUTS

  type_id       - datatype identifier
  index         - filed index (0-based)

OUTPUTS

  member_name   - buffer to hold member's name
  namelen       - name length
  hdferr        - Returns 0 if successful and -1 if fails

AUTHOR

  Elena Pourmal
  August 12, 1999

HISTORY

  Explicit Fortran interfaces were added for
  called C functions (it is needed for Windows
  port).  March 7, 2001

SOURCE

  SUBROUTINE h5tget_member_name_f(type_id, index, member_name,  namelen, hdferr)
            IMPLICIT NONE
            INTEGER(HID_T), INTENT(IN) :: type_id ! Datatype identifier
            INTEGER, INTENT(IN) :: index !Field index (0-based) of the field name to retrieve
            CHARACTER(LEN=*), INTENT(OUT) :: member_name !name of a field of
                                                         !a compound datatype
            INTEGER, INTENT(OUT) :: namelen ! Length of the name
            INTEGER, INTENT(OUT) :: hdferr        ! Error code

h5tget_member_offset_f

[ Top ] [ H5T ] [ Subroutines ]

NAME

  h5tget_member_offset_f

PURPOSE

  Retrieves the offset of a field of a compound datatype.

INPUTS

  type_id       - datatype identifier
  member_no     - number of the field

OUTPUTS

  offset        - byte offset of the requested field
  hdferr        - Returns 0 if successful and -1 if fails

AUTHOR

  Elena Pourmal
  August 12, 1999

HISTORY

  Explicit Fortran interfaces were added for
  called C functions (it is needed for Windows
  port).  March 7, 2001

SOURCE

  SUBROUTINE h5tget_member_offset_f(type_id, member_no, offset, hdferr)
            IMPLICIT NONE
            INTEGER(HID_T), INTENT(IN) :: type_id ! Datatype identifier
            INTEGER, INTENT(IN) :: member_no !Number of the field
                                                       !whose offset is requested
            INTEGER(SIZE_T), INTENT(OUT) :: offset !byte offset of the beginning of the field
            INTEGER, INTENT(OUT) :: hdferr        ! Error code

h5tget_member_type_f

[ Top ] [ H5T ] [ Subroutines ]

NAME

  h5tget_member_type_f

PURPOSE

  Returns the datatype of the specified member.

INPUTS

  type_id       - compound datatype identifier
  field_idx     - field index (0-based)

OUTPUTS

  datatype      - idnetifier of the member's datatype
  hdferr        - Returns 0 if successful and -1 if fails

AUTHOR

  Elena Pourmal
  August 12, 1999

HISTORY

  Explicit Fortran interfaces were added for
  called C functions (it is needed for Windows
  port).  March 7, 2001

SOURCE

  SUBROUTINE h5tget_member_type_f(type_id,  field_idx, datatype, hdferr)
            IMPLICIT NONE
            INTEGER(HID_T), INTENT(IN) :: type_id ! Datatype identifier
            INTEGER, INTENT(IN) :: field_idx !Field index (0-based) of the field type to retrieve
            INTEGER(HID_T), INTENT(OUT) :: datatype !identifier of a copy of
                                                    !the datatype of the field
            INTEGER, INTENT(OUT) :: hdferr        ! Error code

h5tget_member_value_f

[ Top ] [ H5T ] [ Subroutines ]

NAME

  h5tget_member_value_f

PURPOSE

  Returns the value of an enumeration datatype member.

INPUTS

  type_id       - datatype identifier
  member_no     - number of the enumeration datatype member

OUTPUTS

  value         - value of the enumeration datatype
  hdferr        - Returns 0 if successful and -1 if fails

AUTHOR

  Elena Pourmal
  August 12, 1999

HISTORY

  Explicit Fortran interfaces were added for
  called C functions (it is needed for Windows
  port).  March 7, 2001

SOURCE

  SUBROUTINE h5tget_member_value_f(type_id,  member_no, value, hdferr)
            IMPLICIT NONE
            INTEGER(HID_T), INTENT(IN) :: type_id ! Datatype identifier
            INTEGER, INTENT(IN) :: member_no !Number of the enumeration datatype member
            INTEGER, INTENT(OUT) :: value !value of the  enumeration datatype.
            INTEGER, INTENT(OUT) :: hdferr        ! Error code

h5tget_native_type_f

[ Top ] [ H5T ] [ Subroutines ]

NAME

  h5tget_native_type_f

PURPOSE

  Returns the native datatype of a specified datatype.

INPUTS

  dtype_id      - Datatype identifier for the dataset datatype.
  
  direction     - Direction of search:
                  H5T_DIR_DEFAULT     = 0,    /*default direction is inscendent */
                  H5T_DIR_ASCEND      = 1,    /*in inscendent order             */
                  H5T_DIR_DESCEND     = 2     /*in descendent order             */
  * NOTE: In C it is defined as a structure: H5T_direction_t

OUTPUTS

  native_dtype_id - The native datatype identifier for the specified dataset datatype
  hdferr          - Returns 0 if successful and -1 if fails

AUTHOR

  M. Scot Breitenfeld
  June 18, 2008

SOURCE

  SUBROUTINE h5tget_native_type_f(dtype_id, direction, native_dtype_id, hdferr)
    IMPLICIT NONE
    INTEGER(HID_T), INTENT(IN) :: dtype_id  ! Datatype identifier
    INTEGER, INTENT(IN) :: direction  ! Direction of search:
                                      ! H5T_DIR_ASCEND_F      = 1  in inscendent order
                                      ! H5T_DIR_DESCEND_F     = 2  in descendent order
    INTEGER(HID_T), INTENT(OUT) :: native_dtype_id  ! The native datatype identifier
    INTEGER, INTENT(OUT) :: hdferr    ! Error code:
                                      ! 0 on success and -1 on failure

h5tget_nmembers_f

[ Top ] [ H5T ] [ Subroutines ]

NAME

  h5tget_nmembers_f

PURPOSE

  Retrieves the number of fields in a compound datatype.

INPUTS

  type_id       - datatype identifier

OUTPUTS

  num_members   - number of members
  hdferr        - Returns 0 if successful and -1 if fails

AUTHOR

  Elena Pourmal
  August 12, 1999

HISTORY

  Explicit Fortran interfaces were added for
  called C functions (it is needed for Windows
  port).  March 7, 2001

SOURCE

  SUBROUTINE h5tget_nmembers_f(type_id, num_members, hdferr)
            IMPLICIT NONE
            INTEGER(HID_T), INTENT(IN) :: type_id ! Datatype identifier
            INTEGER, INTENT(OUT) :: num_members !number of fields in a compound datatype
            INTEGER, INTENT(OUT) :: hdferr        ! Error code

h5tget_norm_f

[ Top ] [ H5T ] [ Subroutines ]

NAME

  h5tget_norm_f

PURPOSE

  Retrieves mantissa normalization of a floating-point
  datatype.

INPUTS

  type_id       - datatype identifier

OUTPUTS

  norm          - normalization types, valid values are:
                    H5T_NORM_IMPLIED_F(0)
                    H5T_NORM_MSBSET_F(1)
                    H5T_NORM_NONE_F(2)
  hdferr        - Returns 0 if successful and -1 if fails

AUTHOR

  Elena Pourmal
  August 12, 1999

HISTORY

  Explicit Fortran interfaces were added for
  called C functions (it is needed for Windows
  port).  March 7, 2001

SOURCE

  SUBROUTINE h5tget_norm_f(type_id, norm, hdferr)
            IMPLICIT NONE
            INTEGER(HID_T), INTENT(IN) :: type_id ! Datatype identifier
            INTEGER, INTENT(OUT) :: norm !mantissa normalization of a floating-point datatype
                                         !Valid normalization types are:
                                         !H5T_NORM_IMPLIED_F(0),MSB of mantissa is not
                                         !stored, always 1,  H5T_NORM_MSBSET_F(1), MSB of
                                         !mantissa is always 1, H5T_NORM_NONE_F(2)
                                         !Mantissa is not normalize
            INTEGER, INTENT(OUT) :: hdferr        ! Error code

h5tget_offset_f

[ Top ] [ H5T ] [ Subroutines ]

NAME

  h5tget_offset_f

PURPOSE

  Retrieves the bit offset of the first significant bit.

INPUTS

  type_id       - datatype identifier

OUTPUTS

  offset        - offset value
  hdferr        - Returns 0 if successful and -1 if fails

AUTHOR

  Elena Pourmal
  August 12, 1999

HISTORY

  Explicit Fortran interfaces were added for
  called C functions (it is needed for Windows
  port).  March 7, 2001

SOURCE

  SUBROUTINE h5tget_offset_f(type_id, offset, hdferr)
            IMPLICIT NONE
            INTEGER(HID_T), INTENT(IN) :: type_id ! Datatype identifier
            INTEGER(SIZE_T), INTENT(OUT) :: offset ! Datatype bit offset of the
                                           ! first significant bit
            INTEGER, INTENT(OUT) :: hdferr        ! Error code

h5tget_order_f

[ Top ] [ H5T ] [ Subroutines ]

NAME

  h5tget_order_f

PURPOSE

  Returns the byte order of an atomic datatype.

INPUTS

  type_id       - datatype identifier

OUTPUTS

  order         - byte order for the datatype, possible
                  values are:
                    H5T_ORDER_LE_F
                    H5T_ORDER_BE_F
                    H5T_ORDER_VAX_F (not implemented yet)
  hdferr        - Returns 0 if successful and -1 if fails

AUTHOR

  Elena Pourmal
  August 12, 1999

HISTORY

  Explicit Fortran interfaces were added for
  called C functions (it is needed for Windows
  port).  March 7, 2001

SOURCE

  SUBROUTINE h5tget_order_f(type_id, order, hdferr)
    IMPLICIT NONE
    INTEGER(HID_T), INTENT(IN) :: type_id ! Datatype identifier
    INTEGER, INTENT(OUT) :: order
                                    ! Datatype byte order, possible values are:
                                    ! H5T_ORDER_LE_F
                                    ! H5T_ORDER_BE_F
                                    ! H5T_ORDER_VAX_F
    INTEGER, INTENT(OUT) :: hdferr  ! Error code

h5tget_pad_f

[ Top ] [ H5T ] [ Subroutines ]

NAME

  h5tget_pad_f

PURPOSE

  Retrieves the padding type of the least and
  most          -significant bit padding.

INPUTS

  type_id       - datatype identifier

OUTPUTS

  lsbpad        - least-significant bit padding type
  msbpad        - most-significant bit padding type
                  Possible values of padding type are:
                    H5T_PAD_ERROR_F      = -1
                    H5T_PAD_ZERO_F = 0
                    H5T_PAD_ONE_F = 1
                    H5T_PAD_BACKGROUND_F = 2
                    H5T_PAD_NPAD_F      = 3
  hdferr        - Returns 0 if successful and -1 if fails

AUTHOR

  Elena Pourmal
  August 12, 1999

HISTORY

  Explicit Fortran interfaces were added for
  called C functions (it is needed for Windows
  port).  March 7, 2001

SOURCE

  SUBROUTINE h5tget_pad_f(type_id, lsbpad, msbpad, hdferr)
            IMPLICIT NONE
            INTEGER(HID_T), INTENT(IN) :: type_id ! Datatype identifier
            INTEGER, INTENT(OUT) :: lsbpad ! padding type of the
                                           ! least significant bit
            INTEGER, INTENT(OUT) :: msbpad ! padding type of the
                                           ! most significant bit
                                           ! Possible values of padding type are:
                                           ! H5T__PAD_ZERO_F = 0
                                           ! H5T__PAD_ONE_F = 1
                                           ! H5T__PAD_BACKGROUND_F = 2
                                           ! H5T_PAD_ERROR_F      = -1
                                           ! H5T_PAD_NPAD_F      = 3

            INTEGER, INTENT(OUT) :: hdferr        ! Error code

h5tget_precision_f

[ Top ] [ H5T ] [ Subroutines ]

NAME

  h5tget_precision_f

PURPOSE

  Returns the precision of an atomic datatype.

INPUTS

  type_id       - datatype identifier

OUTPUTS

  precision     - precision of the datatype
  hdferr        - Returns 0 if successful and -1 if fails

AUTHOR

  Elena Pourmal
  August 12, 1999

HISTORY

  Explicit Fortran interfaces were added for
  called C functions (it is needed for Windows
  port).  March 7, 2001

SOURCE

  SUBROUTINE h5tget_precision_f(type_id, precision, hdferr)
            IMPLICIT NONE
            INTEGER(HID_T), INTENT(IN) :: type_id ! Datatype identifier
            INTEGER(SIZE_T), INTENT(OUT) :: precision ! Datatype precision
            INTEGER, INTENT(OUT) :: hdferr        ! Error code

h5tget_sign_f

[ Top ] [ H5T ] [ Subroutines ]

NAME

  h5tget_sign_f

PURPOSE

  Retrieves the sign type for an integer type.

INPUTS

  type_id       - datatype identifier

OUTPUTS

  sign          - sign type
                  Possible values are:
                    - Unsigned integer type 
                        H5T_SGN_NONE_F = 0
                    - Two's complement signed integer type
                        H5T_SGN_2_F = 1
                    - error value: H5T_SGN_ERROR_F=-1
  hdferr        - Returns 0 if successful and -1 if fails

AUTHOR

  Elena Pourmal
  August 12, 1999

HISTORY

  Explicit Fortran interfaces were added for
  called C functions (it is needed for Windows
  port).  March 7, 2001

SOURCE

  SUBROUTINE h5tget_sign_f(type_id, sign, hdferr)
            IMPLICIT NONE
            INTEGER(HID_T), INTENT(IN) :: type_id ! Datatype identifier
            INTEGER, INTENT(OUT) :: sign ! sign type for an integer type
                                         !possible values are:
                                         !Unsigned integer type H5T_SGN_NONE_F = 0
                                         !Two's complement signed integer type
                                         !H5T_SGN_2_F = 1
                                         !or error value: H5T_SGN_ERROR_F=-1
            INTEGER, INTENT(OUT) :: hdferr        ! Error code

h5tget_size_f

[ Top ] [ H5T ] [ Subroutines ]

NAME

  h5tget_size_f

PURPOSE

  Returns the size of a datatype.

INPUTS

  type_id       - datatype identifier

OUTPUTS

  size          - datatype size
  hdferr        - Returns 0 if successful and -1 if fails

AUTHOR

  Elena Pourmal
  August 12, 1999

HISTORY

  Explicit Fortran interfaces were added for
  called C functions (it is needed for Windows
  port).  March 7, 2001

SOURCE

  SUBROUTINE h5tget_size_f(type_id, size, hdferr)
            IMPLICIT NONE
            INTEGER(HID_T), INTENT(IN) :: type_id ! Datatype identifier
            INTEGER(SIZE_T), INTENT(OUT) :: size ! Datatype size
            INTEGER, INTENT(OUT) :: hdferr        ! Error code

h5tget_strpad_f

[ Top ] [ H5T ] [ Subroutines ]

NAME

  h5tget_strpad_f

PURPOSE

  Retrieves the storage mechanism for a string datatype.

INPUTS

  type_id       - datatype identifier

OUTPUTS

  strpad        - storage method for a string datatype
                  Possible values are:
                    H5T_STR_NULLTERM_F,
                    H5T_STR_NULLPAD_F,
                    H5T_STR_SPACEPAD_F
                    H5T_STR_ERROR_F
  hdferr        - Returns 0 if successful and -1 if fails

AUTHOR

  Elena Pourmal
  August 12, 1999

HISTORY

  Explicit Fortran interfaces were added for
  called C functions (it is needed for Windows
  port).  March 7, 2001

SOURCE

  SUBROUTINE h5tget_strpad_f(type_id, strpad, hdferr)
            IMPLICIT NONE
            INTEGER(HID_T), INTENT(IN) :: type_id ! Datatype identifier
            INTEGER, INTENT(OUT) :: strpad
            INTEGER, INTENT(OUT) :: hdferr        ! Error code

h5tget_super_f

[ Top ] [ H5T ] [ Subroutines ]

NAME

  h5tget_super_f

PURPOSE

  Returns the base datatype from which a datatype is derived.

INPUTS

  type_id       - datatype identifier

OUTPUTS

  base_type_id          - identifier of the base type
  hdferr        - Returns 0 if successful and -1 if fails

AUTHOR

  Elena Pourmal
  August 12, 1999

HISTORY

  Explicit Fortran interfaces were added for
  called C functions (it is needed for Windows
  port).  March 7, 2001

SOURCE

  SUBROUTINE h5tget_super_f(type_id, base_type_id, hdferr)
            IMPLICIT NONE
            INTEGER(HID_T), INTENT(IN) :: type_id ! datatype identifier
            INTEGER(HID_T), INTENT(OUT) :: base_type_id ! identifier of the datatype
                                           ! from which datatype (type_id) was derived
            INTEGER, INTENT(OUT) :: hdferr        ! Error code

h5tget_tag_f

[ Top ] [ H5T ] [ Subroutines ]

NAME

  h5tget_tag_f

PURPOSE

  Gets the tag associated with an opaque datatype.

INPUTS

  type_id       - identifier for opaque datatype

OUTPUTS

  tag           - unique ASCII string associated with opaque
                  datatype
  hdferr        - Returns 0 if successful and -1 if fails

AUTHOR

  Elena Pourmal
  August 12, 1999

HISTORY

  Explicit Fortran interfaces were added for
  called C functions (it is needed for Windows
  port).  March 7, 2001

SOURCE

  SUBROUTINE h5tget_tag_f(type_id, tag,taglen, hdferr)
            IMPLICIT NONE
            INTEGER(HID_T), INTENT(IN) :: type_id ! Datatype identifier
            CHARACTER(LEN=*), INTENT(OUT) :: tag  ! Unique ASCII string with which
                                                  !  the opaque datatype is to be tagged
            INTEGER, INTENT(OUT) :: taglen        ! Length of tag
            INTEGER(SIZE_T)      :: tag_size      ! Declared character length of tab 
            INTEGER, INTENT(OUT) :: hdferr        ! Error code

h5tinsert_f

[ Top ] [ H5T ] [ Subroutines ]

NAME

  h5tinsert_f

PURPOSE

  Adds a new member to a compound datatype.

INPUTS

  type_id       - compound dattype identifier
  name          - name of the field to insert
  offset        - start of the member in an instance of
                  the compound datatype
  field_id      - datatype identifier of the field to insert

OUTPUTS

  hdferr        - Returns 0 if successful and -1 if fails

AUTHOR

  Elena Pourmal
  August 12, 1999

HISTORY

  Explicit Fortran interfaces were added for
  called C functions (it is needed for Windows
  port).  March 7, 2001

SOURCE

  SUBROUTINE h5tinsert_f(type_id,  name, offset, field_id, hdferr)
            IMPLICIT NONE
            INTEGER(HID_T), INTENT(IN) :: type_id ! Datatype identifier
            CHARACTER(LEN=*), INTENT(IN) :: name !Name of the field to insert
            INTEGER(SIZE_T), INTENT(IN) :: offset !start of the member in an instance of
                                                   !the compound datatype
            INTEGER(HID_T), INTENT(IN) :: field_id !datatype identifier of the new member

            INTEGER, INTENT(OUT) :: hdferr        ! Error code

h5tis_variable_str_f

[ Top ] [ H5T ] [ Subroutines ]

NAME

  h5tis_variable_str_f

PURPOSE

  Determines whether a dattype is a variable string.

INPUTS

  type_id       - datartpe identifier

OUTPUTS

  status        - flag to indicate if datatype
                  is a variable string
  hdferr        - Returns 0 if successful and -1 if fails

AUTHOR

  Elena Pourmal
  March 12, 2003

SOURCE

  SUBROUTINE h5tis_variable_str_f(type_id, status, hdferr)
            IMPLICIT NONE
            INTEGER(HID_T), INTENT(IN) :: type_id  ! Datatype identifier
            LOGICAL, INTENT(OUT) :: status      ! Flag, idicates if datatype
                                                ! is a variable string or not ( TRUE or
                                                ! FALSE)
            INTEGER, INTENT(OUT) :: hdferr      ! Error code

h5topen_f

[ Top ] [ H5T ] [ Subroutines ]

NAME

  h5topen_f

PURPOSE

  Opens named datatype.

INPUTS

  loc_id        - location identifier
  name          - a datatype name

OUTPUTS

  type_id       - datatype identifier
  hdferr        - Returns 0 if successful and -1 if fails

OPTIONAL PARAMETERS

  tapl_id       - datatype access property list identifier.

AUTHOR

  Elena Pourmal
  August 12, 1999

HISTORY

  Explicit Fortran interfaces were added for
  called C functions (it is needed for Windows
  port).  March 7, 2001

  Added optional parameter 'tapl_id' for compatability
  with H5Topen2. April 9, 2009.

SOURCE

  SUBROUTINE h5topen_f(loc_id, name, type_id, hdferr, tapl_id)
    IMPLICIT NONE
    INTEGER(HID_T), INTENT(IN) :: loc_id  ! File or group identifier
    CHARACTER(LEN=*), INTENT(IN) :: name ! Datatype name within file or group
    INTEGER(HID_T), INTENT(OUT) :: type_id  ! Datatype identifier
    INTEGER, INTENT(OUT) :: hdferr ! Error code
    INTEGER(HID_T), OPTIONAL, INTENT(IN) :: tapl_id ! datatype access property list identifier

h5tpack_f

[ Top ] [ H5T ] [ Subroutines ]

NAME

  h5tpack_f

PURPOSE

  Recursively removes padding from within a compound datatype.

INPUTS

  type_id       - compound datatype identifier

OUTPUTS

  hdferr        - Returns 0 if successful and -1 if fails

AUTHOR

  Elena Pourmal
  August 12, 1999

HISTORY

  Explicit Fortran interfaces were added for
  called C functions (it is needed for Windows
  port).  March 7, 2001

SOURCE

  SUBROUTINE h5tpack_f(type_id, hdferr)
            IMPLICIT NONE
            INTEGER(HID_T), INTENT(IN) :: type_id ! Datatype identifier
            INTEGER, INTENT(OUT) :: hdferr        ! Error code

h5tset_cset_f

[ Top ] [ H5T ] [ Subroutines ]

NAME

  h5tset_cset_f

PURPOSE

  Sets character set to be used.

INPUTS

  type_id       - datatype identifier
  cset          - character set type of a string datatype
                    Possible values are:
                     H5T_CSET_ASCII_F = 0
                     H5T_CSET_UTF8_F

OUTPUTS

  hdferr        - Returns 0 if successful and -1 if fails

AUTHOR

  Elena Pourmal
  August 12, 1999

HISTORY

  Explicit Fortran interfaces were added for
  called C functions (it is needed for Windows
  port).  March 7, 2001

SOURCE

  SUBROUTINE h5tset_cset_f(type_id, cset, hdferr)
            IMPLICIT NONE
            INTEGER(HID_T), INTENT(IN) :: type_id ! Datatype identifier
            INTEGER, INTENT(IN) :: cset !character set type of a string datatype
                                           ! Possible values of padding type are:
                                           ! H5T_CSET_ASCII_F = 0
                                           ! H5T_CSET_UTF8_F
            INTEGER, INTENT(OUT) :: hdferr        ! Error code

h5tset_ebias_f

[ Top ] [ H5T ] [ Subroutines ]

NAME

  h5tset_ebias_f

PURPOSE

  Sets the exponent bias of a floating-point type.

INPUTS

  type_id       - datatype identifier
  ebias         - datatype exponent bias

OUTPUTS

  hdferr        - Returns 0 if successful and -1 if fails

AUTHOR

  Elena Pourmal
  August 12, 1999

HISTORY

  Explicit Fortran interfaces were added for
  called C functions (it is needed for Windows
  port).  March 7, 2001

SOURCE

  SUBROUTINE h5tset_ebias_f(type_id, ebias, hdferr)
            IMPLICIT NONE
            INTEGER(HID_T), INTENT(IN) :: type_id ! Datatype identifier
            INTEGER(SIZE_T), INTENT(IN) :: ebias !Datatype exponent bias of a floating-point type
            INTEGER, INTENT(OUT) :: hdferr        ! Error code

h5tset_fields_f

[ Top ] [ H5T ] [ Subroutines ]

NAME

  h5tset_fields_f

PURPOSE

  Sets locations and sizes of floating point bit fields.

INPUTS

  type_id       - datatype identifier
  spos          - sign bit-position
  epos          - exponent bit-position
  esize         - size of exponent in bits
  mpos          - mantissa position
  msize         - size of mantissa in bits

OUTPUTS

  hdferr        - Returns 0 if successful and -1 if fails

AUTHOR

  Elena Pourmal
  August 12, 1999

HISTORY

  Explicit Fortran interfaces were added for
  called C functions (it is needed for Windows
  port).  March 7, 2001

SOURCE

  SUBROUTINE h5tset_fields_f(type_id, spos, epos, esize, mpos, msize, hdferr)
            IMPLICIT NONE
            INTEGER(HID_T), INTENT(IN) :: type_id ! Datatype identifier
            INTEGER(SIZE_T), INTENT(IN) :: spos   ! sign bit-position
            INTEGER(SIZE_T), INTENT(IN) :: epos   ! exponent bit-position
            INTEGER(SIZE_T), INTENT(IN) :: esize  ! size of exponent in bits
            INTEGER(SIZE_T), INTENT(IN) :: mpos   ! mantissa bit-position
            INTEGER(SIZE_T), INTENT(IN) :: msize  ! size of mantissa in bits
            INTEGER, INTENT(OUT) :: hdferr        ! Error code

h5tset_inpad_f

[ Top ] [ H5T ] [ Subroutines ]

NAME

  h5tset_inpad_f

PURPOSE

  Fills unused internal floating point bits.

INPUTS

  type_id       - datatype identifier
  padtype       - padding type for unused bits
                  Possible values of padding type are:
                    H5T_PAD_ZERO_F = 0
                    H5T_PAD_ONE_F = 1
                    H5T_PAD_BACKGROUND_F = 2

OUTPUTS

  hdferr        - Returns 0 if successful and -1 if fails

AUTHOR

  Elena Pourmal
  August 12, 1999

HISTORY

  Explicit Fortran interfaces were added for
  called C functions (it is needed for Windows
  port).  March 7, 2001

SOURCE

  SUBROUTINE h5tset_inpad_f(type_id, padtype, hdferr)
            IMPLICIT NONE
            INTEGER(HID_T), INTENT(IN) :: type_id ! Datatype identifier
            INTEGER, INTENT(IN) :: padtype ! padding type for unused bits
                                           ! in floating-point datatypes.
                                           ! Possible values of padding type are:
                                           ! H5T__PAD_ZERO_F = 0
                                           ! H5T__PAD_ONE_F = 1
                                           ! H5T__PAD_BACKGROUND_F = 2
            INTEGER, INTENT(OUT) :: hdferr        ! Error code

h5tset_norm_f

[ Top ] [ H5T ] [ Subroutines ]

NAME

  h5tset_norm_f

PURPOSE

  Sets the mantissa normalization of a floating-point datatype.

INPUTS

  type_id       - datatype identifier
  norm          - normalization types, valid values are:
                    H5T_NORM_IMPLIED_F(0)
                    H5T_NORM_MSBSET_F(1)
                    H5T_NORM_NONE_F(2)

OUTPUTS

  hdferr        - Returns 0 if successful and -1 if fails

AUTHOR

  Elena Pourmal
  August 12, 1999

HISTORY

  Explicit Fortran interfaces were added for
  called C functions (it is needed for Windows
  port).  March 7, 2001

SOURCE

  SUBROUTINE h5tset_norm_f(type_id, norm, hdferr)
            IMPLICIT NONE
            INTEGER(HID_T), INTENT(IN) :: type_id ! Datatype identifier
            INTEGER, INTENT(IN) :: norm !mantissa normalization of a floating-point datatype
                                         !Valid normalization types are:
                                         !H5T_NORM_IMPLIED_F(0),MSB of mantissa is not
                                         !stored, always 1,  H5T_NORM_MSBSET_F(1), MSB of
                                         !mantissa is always 1, H5T_NORM_NONE_F(2)
                                         !Mantissa is not normalize
            INTEGER, INTENT(OUT) :: hdferr        ! Error code

h5tset_offset_f

[ Top ] [ H5T ] [ Subroutines ]

NAME

  h5tset_offset_f

PURPOSE

  Sets the bit offset of the first significant bit.

INPUTS

  type_id       - datatype identifier
  offset        - offset value

OUTPUTS

  hdferr        - Returns 0 if successful and -1 if fails

AUTHOR

  Elena Pourmal
  August 12, 1999

HISTORY

  Explicit Fortran interfaces were added for
  called C functions (it is needed for Windows
  port).  March 7, 2001

SOURCE

  SUBROUTINE h5tset_offset_f(type_id, offset, hdferr)
            IMPLICIT NONE
            INTEGER(HID_T), INTENT(IN) :: type_id ! Datatype identifier
            INTEGER(SIZE_T), INTENT(IN) :: offset ! Datatype bit offset of the
                                           ! first significant bit
            INTEGER, INTENT(OUT) :: hdferr        ! Error code

h5tset_order_f

[ Top ] [ H5T ] [ Subroutines ]

NAME

  h5tset_order_f

PURPOSE

  Sets the byte ordering of an atomic datatype.

INPUTS

  type_id       - datatype identifier
  order         - datatype byte order Possible values are:
                    H5T_ORDER_LE_F
                    H5T_ORDER_BE_F
                    H5T_ORDER_VAX_F (not implemented yet)

OUTPUTS

  hdferr        - Returns 0 if successful and -1 if fails

AUTHOR

  Elena Pourmal
  August 12, 1999

HISTORY

  Explicit Fortran interfaces were added for
  called C functions (it is needed for Windows
  port).  March 7, 2001

SOURCE

  SUBROUTINE h5tset_order_f(type_id, order, hdferr)
    IMPLICIT NONE
    INTEGER(HID_T), INTENT(IN) :: type_id ! Datatype identifier
    INTEGER, INTENT(IN) :: order   ! Datatype byte order, possible values
                                   ! are:
                                   ! H5T_ORDER_LE_F
                                   ! H5T_ORDER_BE_F
                                   ! H5T_ORDER_VAX_F
    INTEGER, INTENT(OUT) :: hdferr ! Error code

h5tset_pad_f

[ Top ] [ H5T ] [ Subroutines ]

NAME

  h5tset_pad_f

PURPOSE

  Sets the least and most-significant bits padding types.

INPUTS

  type_id       - datatype identifier
  lsbpad        - least-significant bit padding type
  msbpad        - most-significant bit padding type
                  Possible values of padding type are:
                    H5T_PAD_ERROR_F      = -1
                    H5T_PAD_ZERO_F = 0
                    H5T_PAD_ONE_F = 1
                    H5T_PAD_BACKGROUND_F = 2
                    H5T_PAD_NPAD_F      = 3

OUTPUTS

  hdferr        - Returns 0 if successful and -1 if fails

AUTHOR

  Elena Pourmal
  August 12, 1999

HISTORY

  Explicit Fortran interfaces were added for
  called C functions (it is needed for Windows
  port).  March 7, 2001

SOURCE

  SUBROUTINE h5tset_pad_f(type_id, lsbpad, msbpad, hdferr)
            IMPLICIT NONE
            INTEGER(HID_T), INTENT(IN) :: type_id ! Datatype identifier
            INTEGER, INTENT(IN) :: lsbpad ! padding type of the
                                           ! least significant bit
            INTEGER, INTENT(IN) :: msbpad ! padding type of the
                                           ! most significant bit
                                           ! Possible values of padding type are:
                                           ! H5T_PAD_ZERO_F = 0
                                           ! H5T_PAD_ONE_F = 1
                                           ! H5T_PAD_BACKGROUND_F = 2
                                           ! H5T_PAD_ERROR_F      = -1
                                           ! H5T_PAD_NPAD_F      = 3
            INTEGER, INTENT(OUT) :: hdferr        ! Error code

h5tset_precision_f

[ Top ] [ H5T ] [ Subroutines ]

NAME

  h5tset_precision_f

PURPOSE

  Sets the precision of an atomic datatype.

INPUTS

  type_id       - datatype identifier
  precision     - datatype precision

OUTPUTS

  hdferr        - Returns 0 if successful and -1 if fails

AUTHOR

  Elena Pourmal
  August 12, 1999

HISTORY

  Explicit Fortran interfaces were added for
  called C functions (it is needed for Windows
  port).  March 7, 2001

SOURCE

  SUBROUTINE h5tset_precision_f(type_id, precision, hdferr)
            IMPLICIT NONE
            INTEGER(HID_T), INTENT(IN) :: type_id ! Datatype identifier
            INTEGER(SIZE_T), INTENT(IN) :: precision ! Datatype precision
            INTEGER, INTENT(OUT) :: hdferr        ! Error code

h5tset_sign_f

[ Top ] [ H5T ] [ Subroutines ]

NAME

  h5tset_sign_f

PURPOSE

  Sets the sign proprety for an integer type.

INPUTS

  type_id       - datatype identifier
  sign          - sign type
                  Possible values are:
                    - Unsigned integer type 
                        H5T_SGN_NONE_F = 0
                    - Two's complement signed integer type
                        H5T_SGN_2_F = 1
                    - error value: H5T_SGN_ERROR_F=-1

OUTPUTS

  hdferr        - Returns 0 if successful and -1 if fails

AUTHOR

  Elena Pourmal
  August 12, 1999

HISTORY

  Explicit Fortran interfaces were added for
  called C functions (it is needed for Windows
  port).  March 7, 2001

SOURCE

  SUBROUTINE h5tset_sign_f(type_id, sign, hdferr)
            IMPLICIT NONE
            INTEGER(HID_T), INTENT(IN) :: type_id ! Datatype identifier
            INTEGER, INTENT(IN) :: sign !sign type for an integer type
                                         !possible values are:
                                         !Unsigned integer type H5T_SGN_NONE_F = 0
                                         !Two's complement signed integer type
                                         !H5T_SGN_2_F = 1
                                         !or error value: H5T_SGN_ERROR_F=-1
            INTEGER, INTENT(OUT) :: hdferr        ! Error code

h5tset_size_f

[ Top ] [ H5T ] [ Subroutines ]

NAME

  h5tset_size_f

PURPOSE

  Sets the total size for an atomic datatype.

INPUTS

  type_id       - datatype identifier
  size          - size of the datatype

OUTPUTS

  hdferr        - Returns 0 if successful and -1 if fails

AUTHOR

  Elena Pourmal
  August 12, 1999

HISTORY

  Explicit Fortran interfaces were added for
  called C functions (it is needed for Windows
  port).  March 7, 2001

SOURCE

  SUBROUTINE h5tset_size_f(type_id, size, hdferr)
            IMPLICIT NONE
            INTEGER(HID_T), INTENT(IN) :: type_id ! Datatype identifier
            INTEGER(SIZE_T), INTENT(IN) :: size ! Datatype size
            INTEGER, INTENT(OUT) :: hdferr        ! Error code

h5tset_strpad_f

[ Top ] [ H5T ] [ Subroutines ]

NAME

  h5tset_strpad_f

PURPOSE

  Defines the storage mechanism for character strings.

INPUTS

  type_id       - datatype identifier
  strpad        - storage method for a string datatype
                  Possible values are:
                    H5T_STR_NULLTERM_F,
                    H5T_STR_NULLPAD_F,
                    H5T_STR_SPACEPAD_F
                    H5T_STR_ERROR_F

OUTPUTS

  hdferr        - Returns 0 if successful and -1 if fails

AUTHOR

  Elena Pourmal
  August 12, 1999

HISTORY

  Explicit Fortran interfaces were added for
  called C functions (it is needed for Windows
  port).  March 7, 2001

SOURCE

  SUBROUTINE h5tset_strpad_f(type_id, strpad, hdferr)
            IMPLICIT NONE
            INTEGER(HID_T), INTENT(IN) :: type_id ! Datatype identifier
            INTEGER, INTENT(IN) :: strpad ! string padding method for a string datatype
            INTEGER, INTENT(OUT) :: hdferr        ! Error code

h5tset_tag_f

[ Top ] [ H5T ] [ Subroutines ]

NAME

  h5tset_tag_f

PURPOSE

  Tags an opaque datatype.

INPUTS

  type_id       - identifier for opaque datatype
  tag           - unique ASCII string with which the opaque
                  datatype is to be tagged.

OUTPUTS

  hdferr        - Returns 0 if successful and -1 if fails

AUTHOR

  Elena Pourmal
  August 12, 1999

HISTORY

  Explicit Fortran interfaces were added for
  called C functions (it is needed for Windows
  port).  March 7, 2001

SOURCE

  SUBROUTINE h5tset_tag_f(type_id, tag, hdferr)
            IMPLICIT NONE
            INTEGER(HID_T), INTENT(IN) :: type_id ! Datatype identifier
            CHARACTER(LEN=*), INTENT(IN) :: tag !Unique ASCII string with which
                                                !the opaque datatype is to be tagged
            INTEGER, INTENT(OUT) :: hdferr        ! Error code

h5tvlen_create_f

[ Top ] [ H5T ] [ Subroutines ]

NAME

  h5tvlen_create_f

PURPOSE

  Creates a new variable-length datatype.

INPUTS

  type_id       - identifier iof base datatype

OUTPUTS

  vltype_id     - identifier for VL datatype
  hdferr        - Returns 0 if successful and -1 if fails

AUTHOR

  Elena Pourmal
  Wednesday, October 23, 2002

NOTES

  Only basic Fortran base datatypes are supported

SOURCE

  SUBROUTINE h5tvlen_create_f(type_id, vltype_id, hdferr)
            IMPLICIT NONE
            INTEGER(HID_T), INTENT(IN)  :: type_id    ! Datatype identifier
            INTEGER(HID_T), INTENT(OUT) :: vltype_id  ! VL datatype identifier
            INTEGER, INTENT(OUT) :: hdferr            ! Error code