Last modified: 11 May 2011
Name: H5Pset_layout
Signature:
  herr_t `H5Pset_layout`( hid_t `plist`, H5D_layout_t `layout` )

Purpose:
  Sets the type of storage used to store the raw data for a dataset.

Description:
  `H5Pset_layout` sets the type of storage used to store the raw data for a dataset. This function is only valid for dataset creation property lists.

  Valid values for `layout` are:

  H5D_COMPACT
    Store raw data in the dataset object header in file. This should only be used for datasets with small amounts of raw data. The raw data size limit is 64K (65520 bytes). Attempting to create a dataset with raw data larger than this limit will cause the H5Dcreate call to fail.
  H5D_CONTIGUOUS
    Store raw data separately from the object header in one large chunk in the file.
  H5D_CHUNKED
    Store raw data separately from the object header as chunks of data in separate locations in the file.

  Note that a compact storage layout may affect writing data to the dataset with parallel applications. See note in H5Dwrite documentation for details.

Parameters:

  hid_t `plist` | IN: Identifier of property list to query.
  H5D_layout_t `layout` | IN: Type of storage layout for raw data.

Returns:
  Returns a non-negative value if successful; otherwise returns a negative value.

Fortran90 Interface: h5pset_layout_f

      SUBROUTINE h5pset_layout_f (prp_id, layout, hdferr)
        IMPLICIT NONE
        INTEGER(HID_T), INTENT(IN) :: prp_id ! Property list identifier
        INTEGER, INTENT(IN) :: layout        ! Type of storage layout for raw data
                                             ! Possible values are:
                                             !    H5D_COMPACT_F
                                             !    H5D_CONTIGUOUS_F
                                             !    H5D_CHUNKED_F
        INTEGER, INTENT(OUT) :: hdferr       ! Error code
                                             ! 0 on success and -1 on failure
      END SUBROUTINE h5pset_layout_f