HDF5 FORTRAN Developer's Guide

## H5P (_F90)

[ Top ] [ Modules ]

NAME

      H5P_PROVISIONAL

PURPOSE

      This file contains Fortran 90 interfaces for H5P functions. It contains
      the same functions as H5Pff_F03.f90 but excludes the Fortran 2003 functions
      and the interface listings. This file will be compiled instead of H5Pff_F03.f90
      if Fortran 2003 functions are not enabled.

NOTES

                             *** IMPORTANT ***
      If you add a new H5P 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.

## h5pcreate_class_f

[ Top ] [ H5P (F90) ] [ Subroutines ]

NAME

      h5pcreate_class_f

PURPOSE

      Create a new property list class

INPUTS

      parent        - Property list identifier of the parent class
                      Possible values include:
                        H5P_ROOT_F
                        H5P_FILE_CREATE_F
                        H5P_FILE_ACCESS_F
                        H5P_DATASET_CREATE_F
                        H5P_DATASET_XFER_F
                        H5P_FILE_MOUNT_F
      name          - name of the class we are creating

OUTPUTS

      class         - property list class identifier
      hdferr        - error code
                       Success: 0
                       Failure: -1

AUTHOR

      Elena Pourmal
      October 9, 2002

SOURCE

      SUBROUTINE h5pcreate_class_f(parent, name, class, hdferr)
        IMPLICIT NONE
        INTEGER(HID_T), INTENT(IN) :: parent  ! parent property list class
                                              ! identifier
        CHARACTER(LEN=*), INTENT(IN) :: name  ! name of property tocreate
        INTEGER(HID_T), INTENT(OUT) :: class  ! property list class identifier
        INTEGER, INTENT(OUT) :: hdferr        ! Error code

## h5pget_char

[ Top ] [ H5P (F90) ] [ Subroutines ]

NAME

      h5pget_char

PURPOSE

      Gets a property list value

INPUTS

      prp_id        - iproperty list identifier to modify
      name          - name of property to modify

OUTPUTS

      value         - value of property
      hdferr        - error code
                       Success:  0
                       Failure: -1

AUTHOR

      Elena Pourmal
      October 9, 2002

SOURCE

      SUBROUTINE h5pget_char(prp_id, name, value, hdferr)
        IMPLICIT NONE
        INTEGER(HID_T), INTENT(IN) :: prp_id     ! Property list identifier
        CHARACTER(LEN=*), INTENT(IN) :: name     ! Name of property to modify
        CHARACTER(LEN=*),   INTENT(OUT) :: value ! Property value
        INTEGER, INTENT(OUT) :: hdferr           ! Error code

## h5pget_double

[ Top ] [ H5P (F90) ] [ Subroutines ]

NAME

      h5pget_double

PURPOSE

      Gets a property list value

INPUTS

      prp_id        - iproperty list identifier to modify
      name          - name of property to modify

OUTPUTS

      value         - value of property
      hdferr        - error code
                       Success:  0
                       Failure: -1

AUTHOR

      Elena Pourmal
      October 9, 2002

SOURCE

      SUBROUTINE h5pget_double(prp_id, name, value, hdferr)
        IMPLICIT NONE
        INTEGER(HID_T), INTENT(IN) :: prp_id     ! Property list identifier
        CHARACTER(LEN=*), INTENT(IN) :: name     ! Name of property to modify
        DOUBLE PRECISION,   INTENT(OUT) :: value ! Property value
        INTEGER, INTENT(OUT) :: hdferr           ! Error code

## h5pget_integer

[ Top ] [ H5P (F90) ] [ Subroutines ]

NAME

      h5pget_integer

PURPOSE

      Gets a property list value

INPUTS

      prp_id        - iproperty list identifier to modify
      name          - name of property to modify

OUTPUTS

      value         - value of property
      hdferr        - error code
                       Success:  0
                       Failure: -1

AUTHOR

      Elena Pourmal
      October 9, 2002

SOURCE

      SUBROUTINE h5pget_integer(prp_id, name, value, hdferr)
        IMPLICIT NONE
        INTEGER(HID_T), INTENT(IN) :: prp_id  ! Property list identifier
        CHARACTER(LEN=*), INTENT(IN) :: name  ! Name of property to modify
        INTEGER,   INTENT(OUT) :: value       ! Property value
        INTEGER, INTENT(OUT) :: hdferr        ! Error code

## h5pget_real

[ Top ] [ H5P (F90) ] [ Subroutines ]

NAME

      h5pget_real

PURPOSE

      Gets a property list value

INPUTS

      prp_id        - iproperty list identifier to modify
      name          - name of property to modify

OUTPUTS

      value         - value of property
      hdferr        - error code
                       Success:  0
                       Failure: -1

AUTHOR

      Elena Pourmal
      October 9, 2002

SOURCE

      SUBROUTINE h5pget_real(prp_id, name, value, hdferr)
        IMPLICIT NONE
        INTEGER(HID_T), INTENT(IN) :: prp_id  ! Property list identifier
        CHARACTER(LEN=*), INTENT(IN) :: name  ! Name of property to modify
        REAL,   INTENT(OUT) :: value          ! Property value
        INTEGER, INTENT(OUT) :: hdferr        ! Error code

## h5pinsert_char

[ Top ] [ H5P (F90) ] [ Subroutines ]

NAME

      h5pinsert_char

PURPOSE

      Registers a temporary property with a property list class.

INPUTS

      plist         - property list identifier
                      permanent property within
      name          - name of property to insert
      size          - size of property in bytes
      value         - initial value for the property

OUTPUTS

      hdferr        - error code
                       Success:  0
                       Failure: -1

AUTHOR

      Elena Pourmal
      October 10, 2002

SOURCE

    SUBROUTINE h5pinsert_char(plist, name, size, value, hdferr)
        IMPLICIT NONE
        INTEGER(HID_T), INTENT(IN) :: plist      ! Property list identifier
        CHARACTER(LEN=*), INTENT(IN) :: name     ! Name of property to insert
        INTEGER(SIZE_T), INTENT(IN) :: size      ! Size of property value
        CHARACTER(LEN=*),   INTENT(IN) :: value  ! Property value
        INTEGER, INTENT(OUT) :: hdferr           ! Error code

## h5pinsert_double

[ Top ] [ H5P (F90) ] [ Subroutines ]

NAME

      h5pinsert_double

PURPOSE

      Registers a temporary property with a property list class.

INPUTS

      plist         - property list identifier
                      permanent property within
      name          - name of property to insert
      size          - size of property in bytes
      value         - initial value for the property

OUTPUTS

      hdferr        - error code
                       Success:  0
                       Failure: -1

AUTHOR

      Elena Pourmal
      October 10, 2002

SOURCE

      SUBROUTINE h5pinsert_double(plist, name, size, value, hdferr)
        IMPLICIT NONE
        INTEGER(HID_T), INTENT(IN) :: plist   ! Property list identifier
        CHARACTER(LEN=*), INTENT(IN) :: name  ! Name of property to insert
        INTEGER(SIZE_T), INTENT(IN) :: size   ! Size of the property value
        DOUBLE PRECISION, INTENT(IN) :: value ! Property value
        INTEGER, INTENT(OUT) :: hdferr        ! Error code

## h5pinsert_integer

[ Top ] [ H5P (F90) ] [ Subroutines ]

NAME

      h5pinsert_integer

PURPOSE

      Registers a temporary property with a property list class.

INPUTS

      plist         - property list identifier
      name          - name of property to insert
      size          - size of property in bytes
      value         - initial value for the property

OUTPUTS

      hdferr        - error code
                       Success:  0
                       Failure: -1

AUTHOR

      Elena Pourmal
      October 10, 2002

SOURCE

      SUBROUTINE h5pinsert_integer(plist, name, size, value, hdferr)
        IMPLICIT NONE
        INTEGER(HID_T), INTENT(IN) :: plist   ! Property list identifier
        CHARACTER(LEN=*), INTENT(IN) :: name  ! Name of property to insert
        INTEGER(SIZE_T), INTENT(IN) :: size   ! Size of the property value
        INTEGER,   INTENT(IN) :: value        ! Property value
        INTEGER, INTENT(OUT) :: hdferr        ! Error code

## h5pinsert_real

[ Top ] [ H5P (F90) ] [ Subroutines ]

NAME

      h5pinsert_real

PURPOSE

      Registers a temporary property with a property list class.

INPUTS

      plist         - property list identifier
                      permanent property within
      name          - name of property to insert
      size          - size of property in bytes
      value         - initial value for the property

OUTPUTS

      hdferr        - error code
                       Success:  0
                       Failure: -1

AUTHOR

      Elena Pourmal
      October 10, 2002

SOURCE

      SUBROUTINE h5pinsert_real(plist, name, size, value, hdferr)
        IMPLICIT NONE
        INTEGER(HID_T), INTENT(IN) :: plist   ! Property list identifier
        CHARACTER(LEN=*), INTENT(IN) :: name  ! Name of property to insert
        INTEGER(SIZE_T), INTENT(IN) :: size   ! Size of the property value
        REAL,   INTENT(IN) :: value           ! Property value
        INTEGER, INTENT(OUT) :: hdferr        ! Error code

## h5pregister_char

[ Top ] [ H5P (F90) ] [ Subroutines ]

NAME

      h5pregister_char

PURPOSE

      Registers a permanent property with a property list class.

INPUTS

      class         - property list class to register
                      permanent property within
      name          - name of property to register
      size          - size of property in bytes
      value         - default value for property in newly
                      created property lists

OUTPUTS

      hdferr        - error code
                       Success:  0
                       Failure: -1

AUTHOR

      Elena Pourmal
      October 10, 2002

SOURCE

      SUBROUTINE h5pregister_char(class, name, size, value, hdferr)
        IMPLICIT NONE
        INTEGER(HID_T), INTENT(IN) :: class     ! Property list class identifier
        CHARACTER(LEN=*), INTENT(IN) :: name    ! Name of property to register
        INTEGER(SIZE_T), INTENT(IN) :: size     ! size of the property value
        CHARACTER(LEN=*),   INTENT(IN) :: value ! Property value
        INTEGER, INTENT(OUT) :: hdferr          ! Error code

## h5pregister_double

[ Top ] [ H5P (F90) ] [ Subroutines ]

NAME

      h5pregister_double

PURPOSE

      Registers a permanent property with a property list class.

INPUTS

      class         - property list class to register
                      permanent property within
      name          - name of property to register
      size          - size of property in bytes
      value         - default value for property in newly
                      created property lists

OUTPUTS

      hdferr        - error code
                       Success:  0
                       Failure: -1

AUTHOR

      Elena Pourmal
      October 10, 2002

SOURCE

      SUBROUTINE h5pregister_double(class, name, size, value, hdferr)
        IMPLICIT NONE
        INTEGER(HID_T), INTENT(IN) :: class     ! Property list class identifier
        CHARACTER(LEN=*), INTENT(IN) :: name    ! Name of property to register
        INTEGER(SIZE_T), INTENT(IN) :: size     ! Size of the property value
        DOUBLE PRECISION,   INTENT(IN) :: value ! Property value
        INTEGER, INTENT(OUT) :: hdferr          ! Error code

## h5pregister_integer

[ Top ] [ H5P (F90) ] [ Subroutines ]

NAME

      h5pregister_integer

PURPOSE

      Registers a permanent property with a property list class.

INPUTS

      class         - property list class to register
      permanent property within
      name          - name of property to register
      size          - size of property in bytes
      value         - default value for property in newly
      created property lists

OUTPUTS

      hdferr        - error code
                       Success:  0
                       Failure: -1

AUTHOR

      Elena Pourmal
      October 10, 2002

SOURCE

      SUBROUTINE h5pregister_integer(class, name, size, value, hdferr)
        IMPLICIT NONE
        INTEGER(HID_T), INTENT(IN) :: class   ! Property list class identifier
        CHARACTER(LEN=*), INTENT(IN) :: name  ! Name of property to register
        INTEGER(SIZE_T), INTENT(IN) :: size   ! Size of the property value
        INTEGER,   INTENT(IN) :: value        ! Property value
        INTEGER, INTENT(OUT) :: hdferr        ! Error code

## h5pregister_real

[ Top ] [ H5P (F90) ] [ Subroutines ]

NAME

      h5pregister_real

     PURPOSE       Registers a permanent property with a property list class.

INPUTS

      class         - property list class to register
                      permanent property within
      name          - name of property to register
      size          - size of property in bytes
      value         - default value for property in newly
                      created property lists

OUTPUTS

      hdferr        - error code
                       Success:  0
                       Failure: -1

AUTHOR

      Elena Pourmal
      October 10, 2002

SOURCE

      SUBROUTINE h5pregister_real(class, name, size, value, hdferr)
        IMPLICIT NONE
        INTEGER(HID_T), INTENT(IN) :: class   ! Property list class identifier
        CHARACTER(LEN=*), INTENT(IN) :: name  ! Name of property to register
        INTEGER(SIZE_T), INTENT(IN) :: size   ! size of the property value
        REAL,   INTENT(IN) :: value           ! Property value
        INTEGER, INTENT(OUT) :: hdferr        ! Error code

## h5pset(get)fill_value_f

[ Top ] [ H5P (F90) ] [ Subroutines ]

NAME

      h5pset(get)fill_value_f

PURPOSE

      Sets(gets) fill value for a dataset creation property list

INPUTS

      prp_id        - dataset creation property list identifier
      type_id       - datatype identifier for fill value
      fillvalue     - fill value

OUTPUTS

      type_id      - datatype identifier for fill value
      fillvalue    - fill value
      hdferr       - error code
                      Success:  0
                      Failure: -1

AUTHOR

      Elena Pourmal
      August 12, 1999

HISTORY

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

NOTES

      h5pset(get)fill_value_f function is overloaded to support
      INTEGER, REAL, DOUBLE PRECISION and CHARACTER dtatypes.

SOURCE

      SUBROUTINE h5pset_fill_value_integer(prp_id, type_id, fillvalue, hdferr)
        IMPLICIT NONE
        INTEGER(HID_T), INTENT(IN) :: prp_id  ! Property list identifier
        INTEGER(HID_T), INTENT(IN) :: type_id ! Datatype identifier of
                                              ! of fillvalue datatype
                                              ! (in memory)
        INTEGER, INTENT(IN) :: fillvalue      ! Fillvalue
        INTEGER, INTENT(OUT) :: hdferr        ! Error code

## h5pset_char

[ Top ] [ H5P (F90) ] [ Subroutines ]

NAME

      h5pset_char

PURPOSE

      Sets a property list value

INPUTS

      prp_id        - iproperty list identifier to modify
      name          - name of property to modify
      value         - value to set property to

OUTPUTS

      hdferr        - error code
                       Success:  0
                       Failure: -1

OPTIONAL PARAMETERS

      NONE

AUTHOR

      Elena Pourmal
      October 9, 2002

SOURCE

      SUBROUTINE h5pset_char(prp_id, name, value, hdferr)
        IMPLICIT NONE
        INTEGER(HID_T), INTENT(IN) :: prp_id    ! Property list identifier
        CHARACTER(LEN=*), INTENT(IN) :: name    ! Name of property to modify
        CHARACTER(LEN=*),   INTENT(IN) :: value ! Property value
        INTEGER, INTENT(OUT) :: hdferr          ! Error code

## h5pset_double

[ Top ] [ H5P (F90) ] [ Subroutines ]

NAME

      h5pset_double

PURPOSE

      Sets a property list value

INPUTS

      prp_id        - iproperty list identifier to modify
      name          - name of property to modify
      value         - value to set property to

OUTPUTS

      hdferr:       - error code
                       Success:  0
                       Failure: -1

AUTHOR

      Elena Pourmal
      October 9, 2002

SOURCE

      SUBROUTINE h5pset_double(prp_id, name, value, hdferr)
        IMPLICIT NONE
        INTEGER(HID_T), INTENT(IN) :: prp_id    ! Property list identifier
        CHARACTER(LEN=*), INTENT(IN) :: name    ! Name of property to modify
        DOUBLE PRECISION,   INTENT(IN) :: value ! Property value
        INTEGER, INTENT(OUT) :: hdferr          ! Error code

## h5pset_integer

[ Top ] [ H5P (F90) ] [ Subroutines ]

NAME

      h5pset_integer

PURPOSE

      Sets a property list value

INPUTS

      prp_id        - iproperty list identifier to modify
      name          - name of property to modify
      value         - value to set property to

OUTPUTS

      hdferr:       - error code
                       Success:  0
                       Failure: -1

AUTHOR

      Elena Pourmal
      October 9, 2002

SOURCE

      SUBROUTINE h5pset_integer(prp_id, name, value, hdferr)
        IMPLICIT NONE
        INTEGER(HID_T), INTENT(IN) :: prp_id  ! Property list identifier
        CHARACTER(LEN=*), INTENT(IN) :: name  ! Name of property to modify
        INTEGER, INTENT(IN) :: value          ! Property value
        INTEGER, INTENT(OUT) :: hdferr        ! Error code

## h5pset_real

[ Top ] [ H5P (F90) ] [ Subroutines ]

NAME

      h5pset_real

PURPOSE

      Sets a property list value

INPUTS

      prp_id        - iproperty list identifier to modify
      name          - name of property to modify
      value         - value to set property to

OUTPUTS

      hdferr:       - error code
                       Success:  0
                       Failure: -1

AUTHOR

      Elena Pourmal
      October 9, 2002

SOURCE

      SUBROUTINE h5pset_real(prp_id, name, value, hdferr)
        IMPLICIT NONE
        INTEGER(HID_T), INTENT(IN) :: prp_id  ! Property list identifier
        CHARACTER(LEN=*), INTENT(IN) :: name  ! Name of property to modify
        REAL, INTENT(IN) :: value             ! Property value
        INTEGER, INTENT(OUT) :: hdferr        ! Error code