HDF5 FORTRAN Developer's Guide

## H5S

[ Top ] [ Modules ]

NAME

      MODULE H5S

FILE

      fortran/src/H5Sff.f90

PURPOSE

      This file contains Fortran interfaces for H5S 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 H5S 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.

## h5sclose_f

[ Top ] [ H5S ] [ Subroutines ]

NAME

      h5sclose_f

PURPOSE

      Releases and terminates access to a dataspace.

INPUTS

      space_id    - identifier of dataspace to release

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 6, 2001

SOURCE

              SUBROUTINE h5sclose_f(space_id, hdferr)
                IMPLICIT NONE
                INTEGER(HID_T), INTENT(IN) :: space_id ! Dataspace identifier
                INTEGER, INTENT(OUT) :: hdferr         ! Error code

## h5scopy_f

[ Top ] [ H5S ] [ Subroutines ]

NAME

      h5scopy_f

PURPOSE

      Creates an exact copy of a dataspace.

INPUTS

      space_id      - dataspace identifier

OUTPUTS

      new_space_id  - identifier of dataspace'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 6, 2001

NOTES

SOURCE

              SUBROUTINE h5scopy_f(space_id, new_space_id, hdferr)
                IMPLICIT NONE
                INTEGER(HID_T), INTENT(IN) :: space_id ! Dataspace identifier
                INTEGER(HID_T), INTENT(OUT) :: new_space_id
                                                 ! Identifier of dataspace's copy
                INTEGER, INTENT(OUT) :: hdferr   ! Error code

## h5screate_f

[ Top ] [ H5S ] [ Subroutines ]

NAME

      h5screate_f

PURPOSE

      Creates a new dataspace of a specified type.

INPUTS

      classtype   - the type of the dataspace to be created

OUTPUTS

      space_id    - dataspace 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 6, 2001

NOTES

SOURCE

              SUBROUTINE h5screate_f(classtype, space_id, hdferr)
                IMPLICIT NONE
                INTEGER, INTENT(IN) :: classtype     ! The type of the dataspace
                                                     ! to be created.
                                                     ! Possible values are:
                                                     !  H5S_SCALAR_F (0)
                                                     !  H5S_SIMPLE_F(1)
                                                     !  H5S_NULL_F(2)
                INTEGER(HID_T), INTENT(OUT) :: space_id ! Dataspace identifier
                INTEGER, INTENT(OUT) :: hdferr          ! Error code

## h5screate_simple_f

[ Top ] [ H5S ] [ Subroutines ]

NAME

      h5screate_simple_f

PURPOSE

      Creates a new simple data space and opens it for access      .

INPUTS

      rank        - number of dimensions
      dims        - an array of the size of each dimension

OUTPUTS

      space_id    - dataspace identifier
      hdferr      - Returns 0 if successful and -1 if fails

OPTIONAL PARAMETERS

      maxdims     - an array of the maximum size of each dimension

AUTHOR

      Elena Pourmal
      August 12, 1999

HISTORY

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

SOURCE

              SUBROUTINE h5screate_simple_f(rank, dims, space_id, hdferr, maxdims)

                IMPLICIT NONE
                INTEGER, INTENT(IN) :: rank             ! Number of dataspace dimensions
                INTEGER(HSIZE_T), INTENT(IN) :: dims(rank)
                                                        ! Array with the dimension
                                                        ! sizes
                INTEGER(HID_T), INTENT(OUT) :: space_id ! Dataspace identifier
                INTEGER, INTENT(OUT) :: hdferr          ! Error code
                INTEGER(HSIZE_T), OPTIONAL, INTENT(IN) :: maxdims(rank)
                                                        ! Array with the maximum
                                                        ! dimension sizes

## H5Sdecode_f

[ Top ] [ H5S ] [ Subroutines ]

NAME

      H5Sdecode_f

PURPOSE

      Decode a binary object description of data space 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
      March 26, 2008

SOURCE

      SUBROUTINE h5sdecode_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

## H5Sencode_f

[ Top ] [ H5S ] [ Subroutines ]

NAME

      H5Sencode_f

PURPOSE

      Encode a data space 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
      March 26, 2008

SOURCE

      SUBROUTINE h5sencode_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

## h5sextent_copy_f

[ Top ] [ H5S ] [ Subroutines ]

NAME

      h5sextent_copy_f

PURPOSE

      Copies the extent of a dataspace.

INPUTS

      dest_space_id         - the identifier for the dataspace to which
      the extent is copied
      source_space_id       - the identifier for the dataspace from
      which the extent is copied

OUTPUTS

      hdferr      - Returns 0 if successful and -1 if fails

OPTIONAL PARAMETERS

      NONE

AUTHOR

      Elena Pourmal
      August 12, 1999

HISTORY

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

NOTES

SOURCE

              SUBROUTINE h5sextent_copy_f(dest_space_id, source_space_id, hdferr)
                IMPLICIT NONE
                INTEGER(HID_T), INTENT(IN) :: dest_space_id  ! Identifier of destination
                                                             ! dataspace
                INTEGER(HID_T), INTENT(IN) :: source_space_id ! Identifier of source
                                                              ! dataspace
                INTEGER, INTENT(OUT) :: hdferr                ! Error code

## h5sextent_equal_f

[ Top ] [ H5S ] [ Subroutines ]

NAME

      h5sextent_equal_f

PURPOSE

      Determines whether two dataspace extents are equal.

INPUTS

      space1_id     - First dataspace identifier.
      space2_id     - Second dataspace identifier.

OUTPUTS

      Equal         - .TRUE. if equal, .FALSE. if unequal.
      hdferr      - Returns 0 if successful and -1 if fails

AUTHOR

      M. Scot Breitenfeld
      April 2, 2008

SOURCE

      SUBROUTINE h5sextent_equal_f(space1_id, space2_id, equal, hdferr)
        IMPLICIT NONE
        INTEGER(HID_T), INTENT(IN) :: space1_id ! First dataspace identifier.
        INTEGER(HID_T), INTENT(IN) :: space2_id ! Second dataspace identifier.
        LOGICAL, INTENT(OUT) :: Equal ! .TRUE. if equal, .FALSE. if unequal.
        INTEGER, INTENT(OUT) :: hdferr                ! Error code

## h5sget_select_bounds_f

[ Top ] [ H5S ] [ Subroutines ]

NAME

      h5sget_select_bounds_f

PURPOSE

      Gets the bounding box containing the current selection.

INPUTS

      space_id    - dataspace identifier

OUTPUTS

      start       - starting coordinates of bounding box
      end         - ending coordinates of bounding box
      hdferr      - Returns 0 if successful and -1 if fails

OPTIONAL PARAMETERS

      NONE

AUTHOR

      Elena Pourmal
      August 12, 1999

HISTORY

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

SOURCE

      SUBROUTINE  h5sget_select_bounds_f(space_id, start, END, hdferr)
        IMPLICIT NONE
        INTEGER(HID_T), INTENT(IN) :: space_id ! Dataspace identifier
        INTEGER(HSIZE_T), DIMENSION(*), INTENT(OUT) :: start
                                               ! Starting coordinates of the bounding box.
        INTEGER(HSIZE_T), DIMENSION(*), INTENT(OUT) :: END
                                               !Ending coordinates of the bounding box,
                                               !i.e., the coordinates of the diagonally
                                               !opposite corner
        INTEGER, INTENT(OUT) :: hdferr         ! Error code

## h5sget_select_elem_npoints_f

[ Top ] [ H5S ] [ Subroutines ]

NAME

      h5sget_select_elem_npoints_f

PURPOSE

      Gets the number of element points in the current selection

INPUTS

      space_id      - dataspace identifier

OUTPUTS

      num_points    - number of element points in the current
                      dataspace selection
      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 6, 2001

SOURCE

              SUBROUTINE h5sget_select_elem_npoints_f(space_id, num_points, hdferr)
                IMPLICIT NONE
                INTEGER(HID_T), INTENT(IN) :: space_id ! Dataspace identifier
                INTEGER(HSSIZE_T), INTENT(OUT) :: num_points
                                                 !number of element points
                                                 !in the current dataspace
                                                 !selection
                INTEGER, INTENT(OUT) :: hdferr   ! Error code

## h5sget_select_elem_pointlist_f

[ Top ] [ H5S ] [ Subroutines ]

NAME

      h5sget_select_elem_pointlist_f

PURPOSE

      Gets the list of element points currently selected.

INPUTS

      space_id    - dataspace identifier
      startpoint  - element point to start with
      num_points  - number of elemnt points to get

OUTPUTS

      buf         - buffer with element points selected
      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 6, 2001

SOURCE

              SUBROUTINE h5sget_select_elem_pointlist_f(space_id, startpoint, &
                                                        num_points, buf, hdferr)
                IMPLICIT NONE
                INTEGER(HID_T), INTENT(IN) :: space_id ! Dataspace identifier
                INTEGER(HSIZE_T), INTENT(IN) :: startpoint
                                                 !Element point to start with.
                INTEGER(HSIZE_T), INTENT(IN) :: num_points
                                                 !Number of element points to get
                INTEGER(HSIZE_T), DIMENSION(*), INTENT(OUT) :: buf
                                                 !List of element points selected
                INTEGER, INTENT(OUT) :: hdferr   ! Error code

## h5sget_select_hyper_blocklist_f

[ Top ] [ H5S ] [ Subroutines ]

NAME

      h5sget_select_hyper_blocklist_f

PURPOSE

      Gets the list of hyperslab blocks currently selected.

INPUTS

      space_id    - dataspace identifier
      startblock  - hyperslab block to start with
      num_blocks  - number of blocks to get

OUTPUTS

      buf         - buffer to hold block list
      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 6, 2001

SOURCE

              SUBROUTINE h5sget_select_hyper_blocklist_f(space_id, startblock, &
                                                        num_blocks, buf, hdferr)
                IMPLICIT NONE
                INTEGER(HID_T), INTENT(IN) :: space_id ! Dataspace identifier
                INTEGER(HSIZE_T), INTENT(IN) :: startblock
                                                 !Hyperslab block to start with.
                INTEGER(HSIZE_T), INTENT(IN) :: num_blocks
                                                 !number of hyperslab blocks
                                                 !to get in the current dataspace
                                                 !selection
                INTEGER(HSIZE_T), DIMENSION(*), INTENT(OUT) :: buf
                                                 !List of hyperslab blocks selected
                INTEGER, INTENT(OUT) :: hdferr   ! Error code

## h5sget_select_hyper_nblocks_f

[ Top ] [ H5S ] [ Subroutines ]

NAME

      h5sget_select_hyper_nblocks_f

PURPOSE

      Get number of hyperslab blocks.

INPUTS

      space_id    - dataspace identifier

OUTPUTS

      num_blocks  - number of hyperslab blocks in the current
                    hyperslab selection
      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 6, 2001

SOURCE

              SUBROUTINE h5sget_select_hyper_nblocks_f(space_id, num_blocks, hdferr)
                IMPLICIT NONE
                INTEGER(HID_T), INTENT(IN) :: space_id ! Dataspace identifier
                INTEGER(HSSIZE_T), INTENT(OUT) :: num_blocks
                                                 !number of hyperslab blocks
                                                 !in the current dataspace
                                                 !selection
                INTEGER, INTENT(OUT) :: hdferr   ! Error code

## h5sget_select_npoints_f

[ Top ] [ H5S ] [ Subroutines ]

NAME

      h5sget_select_npoints_f

PURPOSE

      Determines the number of elements in a dataspace selection.

INPUTS

      space_id      - dataspace identifier

OUTPUTS

      npoints       - number of points in the dataspace selection
      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 6, 2001

SOURCE

              SUBROUTINE h5sget_select_npoints_f(space_id, npoints, hdferr)
                IMPLICIT NONE
                INTEGER(HID_T), INTENT(IN) :: space_id     ! Dataspace identifier
                INTEGER(HSSIZE_T), INTENT(OUT) :: npoints  ! Number of elements in the
                                                           ! selection
                INTEGER, INTENT(OUT) :: hdferr             ! Error code

## h5sget_select_type_f

[ Top ] [ H5S ] [ Subroutines ]

NAME

      h5sget_select_type_f

PURPOSE

      Retrieve the type of selection

INPUTS

      space_id      - dataspace iidentifier with selection

OUTPUTS

      type          - flag, valid values are:
                        H5S_SEL_ERROR_F
                        H5S_SEL_NONE_F
                        H5S_SEL_POINTS_F
                        H5S_SEL_HYPERSLABS_F
                        H5S_SEL_ALL_F
      hdferr      - Returns 0 if successful and -1 if fails

AUTHOR

      Elena Pourmal
      October 7, 2002

SOURCE

              SUBROUTINE h5sget_select_type_f(space_id, type, hdferr)
                IMPLICIT NONE
                INTEGER(HID_T), INTENT(INOUT) :: space_id ! Dataspace identifier to
                INTEGER, INTENT(OUT) :: type        ! Selection type
                                                    !  H5S_SEL_ERROR_F
                                                    !  H5S_SEL_NONE_F
                                                    !  H5S_SEL_POINTS_F
                                                    !  H5S_SEL_HYPERSLABS_F
                                                    !  H5S_SEL_ALL_F
                INTEGER, INTENT(OUT) :: hdferr     ! Error code

## h5sget_simple_extent_dims_f

[ Top ] [ H5S ] [ Subroutines ]

NAME

      h5sget_simple_extent_dims_f

PURPOSE

      Retrieves dataspace dimension size and maximum size.

INPUTS

      space_id      - dataspace identifier

OUTPUTS

      dims          - array to store size of each dimension
      maxdims       - array to store maximum size of each
      dimension
      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 6, 2001

SOURCE

              SUBROUTINE h5sget_simple_extent_dims_f(space_id, dims, maxdims, hdferr)
                IMPLICIT NONE
                INTEGER(HID_T), INTENT(IN) :: space_id ! Dataspace identifier
                INTEGER(HSIZE_T), DIMENSION(*), INTENT(OUT) :: dims
                                                       ! Array to store dimension sizes
                INTEGER(HSIZE_T), DIMENSION(*), INTENT(OUT) :: maxdims
                                                       ! Array to store max dimension
                                                       ! sizes
                INTEGER, INTENT(OUT) :: hdferr         ! Error code: -1 on failure,
                                                       ! number of dimensions on
                                                       ! on success

## h5sget_simple_extent_ndims_f

[ Top ] [ H5S ] [ Subroutines ]

NAME

      h5sget_simple_extent_ndims_f

PURPOSE

      Determines the dimensionality of a dataspace

INPUTS

      space_id      - dataspace identifier

OUTPUTS

      rank          - number of dataspace 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 6, 2001

SOURCE

              SUBROUTINE h5sget_simple_extent_ndims_f(space_id, rank, hdferr)
                IMPLICIT NONE
                INTEGER(HID_T), INTENT(IN) :: space_id     ! Dataspace identifier
                INTEGER, INTENT(OUT) :: rank               ! Number of dimensions
                INTEGER, INTENT(OUT) :: hdferr             ! Error code

## h5sget_simple_extent_npoints_f

[ Top ] [ H5S ] [ Subroutines ]

NAME

      h5sget_simple_extent_npoints_f

PURPOSE

      Determines the number of elements in a dataspace.

INPUTS

      space_id      - dataspace identifier

OUTPUTS

      npoints       - number of elements in the dataspace
      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 6, 2001

SOURCE

              SUBROUTINE h5sget_simple_extent_npoints_f(space_id, npoints, hdferr)
                IMPLICIT NONE
                INTEGER(HID_T), INTENT(IN) :: space_id     ! Dataspace identifier
                INTEGER(HSIZE_T), INTENT(OUT) :: npoints  ! Number of elements in
                                                           ! dataspace
                INTEGER, INTENT(OUT) :: hdferr             ! Error code

## h5sget_simple_extent_type_f

[ Top ] [ H5S ] [ Subroutines ]

NAME

      h5sget_simple_extent_type_f

PURPOSE

      Determine the current class of a dataspace

INPUTS

      space_id      - dataspace identifier

OUTPUTS

      classtype     - class type, possible values are:
      H5S_NO_CLASS_F (-1)
      H5S_SCALAR_F (0)
      H5S_SIMPLE_F (1)
      H5S_NULL_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 6, 2001

SOURCE

              SUBROUTINE h5sget_simple_extent_type_f(space_id, classtype, hdferr)
                IMPLICIT NONE
                INTEGER(HID_T), INTENT(IN) :: space_id ! Dataspace identifier
                INTEGER, INTENT(OUT) :: classtype      ! Class type , possible values
                                                       ! are:
                                                       !  H5S_NO_CLASS_F (-1)
                                                       !  H5S_SCALAR_F (0)
                                                       !  H5S_SIMPLE_F (1)
                                                       !  H5S_NULL_F   (2)
                INTEGER, INTENT(OUT) :: hdferr         ! Error code

## h5sis_simple_f

[ Top ] [ H5S ] [ Subroutines ]

NAME

      h5sis_simple_f

PURPOSE

      Determines whether a dataspace is a simple dataspace.

INPUTS

      space_id      - dataspace identifier

OUTPUTS

      status        - flag to indicate if dataspace
      is simple or not
      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 6, 2001

SOURCE

              SUBROUTINE h5sis_simple_f(space_id, status, hdferr)
                IMPLICIT NONE
                INTEGER(HID_T), INTENT(IN) :: space_id  ! Dataspace identifier
                LOGICAL, INTENT(OUT) :: status      ! Flag, idicates if dataspace
                                                    ! is simple or not ( TRUE or
                                                    ! FALSE)
                INTEGER, INTENT(OUT) :: hdferr      ! Error code

## h5soffset_simple_f

[ Top ] [ H5S ] [ Subroutines ]

NAME

      h5soffset_simple_f

PURPOSE

      Sets the offset of a simple dataspace.

INPUTS

      space_id      - dataspace identifier
      offset        - the offset at which to position the
      selection

OUTPUTS

      hdferr      - Returns 0 if successful and -1 if fails

OPTIONAL PARAMETERS

      NONE

AUTHOR

      Elena Pourmal
      August 12, 1999

HISTORY

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

SOURCE

              SUBROUTINE h5soffset_simple_f(space_id, offset, hdferr)
                IMPLICIT NONE
                INTEGER(HID_T), INTENT(IN) :: space_id ! Dataspace identifier
                INTEGER(HSSIZE_T), DIMENSION(*), INTENT(IN) ::  offset
                                                       ! The offset at which to position
                                                       ! the selection
                INTEGER, INTENT(OUT) :: hdferr         ! Error code

## h5sselect_all_f

[ Top ] [ H5S ] [ Subroutines ]

NAME

      h5sselect_all_f

PURPOSE

      Selects the entire dataspace.

INPUTS

      space_id    - Identifier for the dataspace in which
                    selection being made

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 6, 2001

SOURCE

              SUBROUTINE h5sselect_all_f(space_id, hdferr)
                IMPLICIT NONE
                INTEGER(HID_T), INTENT(IN) :: space_id  ! Dataspace identifier
                INTEGER, INTENT(OUT) :: hdferr          ! Error code

## h5sselect_elements_f

[ Top ] [ H5S ] [ Subroutines ]

NAME

      h5sselect_elements_f

PURPOSE

      Selects elements to be included in the selection for
      a dataspace

INPUTS

      space_id      - dataspace identifier
      operator      - flag, valid values are:
                       H5S_SELECT_SET_F
                       H5S_SELECT_APPEND_F
                       H5S_SELECT_PREPEND_F
      rank          - number of dataspace dimensions
      num_elements  - number of elements to be selected
      coord         - 2D (rank x num_elements) array with the
                      elements coordinates ( 1-based); in C the
                      array is stored in 2D as (num_element x rank)

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 6, 2001

SOURCE

      SUBROUTINE h5sselect_elements_f(space_id, OPERATOR, rank, &
           num_elements, coord, hdferr)
        IMPLICIT NONE
        INTEGER(HID_T),   INTENT(IN)                                :: space_id
        INTEGER,          INTENT(IN)                                :: OPERATOR
        INTEGER,          INTENT(IN)                                :: rank
        INTEGER(SIZE_T),  INTENT(IN)                                :: num_elements
        INTEGER(HSIZE_T), INTENT(IN) , DIMENSION(rank,num_elements) :: coord
        INTEGER,          INTENT(OUT)                               :: hdferr

## h5sselect_hyperslab_f

[ Top ] [ H5S ] [ Subroutines ]

NAME

      h5sselect_hyperslab_f

PURPOSE

      Selects a hyperslab region to add to the current selected
      region

INPUTS

      space_id      - dataspace identifier
      operator      - flag, valid values are:
      H5S_SELECT_SET_F (0)
      H5S_SELECT_OR_F (1)
      start         - array with hyperslab offsets
      count         - number of blocks included in the
      hyperslab

OUTPUTS

      hdferr      - Returns 0 if successful and -1 if fails

OPTIONAL PARAMETERS

      stride        - array with hyperslab strides
      block         - array with hyperslab block sizes

AUTHOR

      Elena Pourmal
      August 12, 1999

HISTORY

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

SOURCE

              SUBROUTINE h5sselect_hyperslab_f(space_id, operator, start, count, &
                                               hdferr, stride, block)
                IMPLICIT NONE
                INTEGER(HID_T), INTENT(IN) :: space_id ! Dataspace identifier
                INTEGER, INTENT(IN) :: operator     ! Flag, valid values are:
                                                    ! H5S_SELECT_SET_F (0)
                                                    ! H5S_SELECT_OR_F (1)
                                                    !
                INTEGER(HSIZE_T), DIMENSION(*), INTENT(IN) :: start
                                              ! Starting coordinates of the hyperslab
                INTEGER(HSIZE_T), DIMENSION(*), INTENT(IN) :: count
                                              ! Number of blocks to select
                                              ! from dataspace
                INTEGER, INTENT(OUT) :: hdferr     ! Error code
                INTEGER(HSIZE_T), DIMENSION(:), OPTIONAL, INTENT(IN) :: stride
                                              ! Array of how many elements to move
                                              ! in each direction
                INTEGER(HSIZE_T), DIMENSION(:), OPTIONAL, INTENT(IN) :: block
                                              ! Sizes of element block

## h5sselect_none_f

[ Top ] [ H5S ] [ Subroutines ]

NAME

      h5sselect_none_f

PURPOSE

      Resets the selection region to include no elements.

INPUTS

      space_id    - the identifier for the dataspace in which
                    the selection is being reset.

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 6, 2001

SOURCE

              SUBROUTINE h5sselect_none_f(space_id, hdferr)
                IMPLICIT NONE
                INTEGER(HID_T), INTENT(IN) :: space_id  ! Dataspace identifier
                INTEGER, INTENT(OUT) :: hdferr          ! Error code

## h5sselect_valid_f

[ Top ] [ H5S ] [ Subroutines ]

NAME

      h5sselect_valid_f

PURPOSE

      Verifies that the selection is within the extent of
      the dataspace.

INPUTS

      space_id      - identifier for the dataspace for which
      selection is verified

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 6, 2001

SOURCE

              SUBROUTINE h5sselect_valid_f(space_id, status, hdferr)
                IMPLICIT NONE
                INTEGER(HID_T), INTENT(IN) :: space_id  ! Dataspace identifier
                LOGICAL, INTENT(OUT) :: status          ! TRUE if the selection is
                                                        ! contained within the extent,
                                                        ! FALSE otherwise.
                INTEGER, INTENT(OUT) :: hdferr          ! Error code

## h5sset_extent_none_f

[ Top ] [ H5S ] [ Subroutines ]

NAME

      h5sset_extent_none_f

PURPOSE

      Removes the extent from a dataspace.

INPUTS

      space_id      - dataspace 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 6, 2001

SOURCE

              SUBROUTINE h5sset_extent_none_f(space_id, hdferr)
                IMPLICIT NONE
                INTEGER(HID_T), INTENT(IN) :: space_id  ! Dataspace identifier
                INTEGER, INTENT(OUT) :: hdferr          ! Error code

## h5sset_extent_simple_f

[ Top ] [ H5S ] [ Subroutines ]

NAME

      h5sset_extent_simple_f

PURPOSE

      Sets or resets the size of an existing dataspace.

INPUTS

      space_id      - dataspace identifier
      rank          - dataspace number of dimensions
      current_size          - array with the new sizes of dimensions
      maximum_size          - array with the new maximum sizes of
      dimensions

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 6, 2001

SOURCE

              SUBROUTINE h5sset_extent_simple_f(space_id, rank, current_size, &
                                                maximum_size, hdferr)
                IMPLICIT NONE
                INTEGER(HID_T), INTENT(IN) :: space_id ! Dataspace identifier
                INTEGER, INTENT(IN) :: rank            ! Dataspace rank
                INTEGER(HSIZE_T), DIMENSION(rank), INTENT(IN) :: current_size
                                                       ! Array with the new sizes
                                                       ! of dimensions
                INTEGER(HSIZE_T), DIMENSION(rank), INTENT(IN) :: maximum_size
                                                       ! Array with the new maximum
                                                       ! sizes of dimensions
                                                       ! sizes
                INTEGER, INTENT(OUT) :: hdferr         ! Error code