Name: H5Pset_fill_value
Signature:
  herr_t `H5Pset_fill_value`(hid_t `plist_id`, hid_t `type_id`, const void *`value` )
Purpose:
  Sets the fill value for a dataset.
Description:
  `H5Pset_fill_value` sets the fill value for a dataset in the dataset creation property list.

  `value` is interpreted as being of datatype `type_id`. This datatype may differ from that of the dataset, but the HDF5 library must be able to convert `value` to the dataset datatype when the dataset is created.

  The default fill value is `0` (zero), which is interpreted according to the actual dataset datatype.

  Setting `value` to `NULL` indicates that the fill value is to be undefined.

Notes:
  Applications sometimes write data only to portions of an allocated dataset. It is often useful in such cases to fill the unused space with a known fill value. This function allows the user application to set that fill value; the functions H5Dfill and H5Pset_fill_time, respectively, provide the ability to apply the fill value on demand or to set up its automatic application.

  A fill value should be defined so that it is appropriate for the application. While the HDF5 default fill value is `0` (zero), it is often appropriate to use another value. It might be useful, for example, to use a value that is known to be impossible for the application to legitimately generate.

  `H5Pset_fill_value` is designed to work in concert with `H5Pset_alloc_time` and `H5Pset_fill_time`. `H5Pset_alloc_time` and `H5Pset_fill_time` govern the timing of dataset storage allocation and fill value write operations and can be important in tuning application performance.

  See H5Dcreate for further cross-references.

Parameters:

hid_t `plist_id` | IN: Dataset creation property list identifier.
hid_t `type_id`, | IN: Datatype of `value`.
const void *`value` | IN: Pointer to buffer containing value to use as fill value.

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

      SUBROUTINE h5pset_fill_value_f(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 fill
                                              ! value datatype (in memory)
        TYPE(VOID), INTENT(IN) :: fillvalue   ! Fillvalue
        INTEGER, INTENT(OUT) :: hdferr        ! Error code
                                              ! 0 on success and -1 on failure
      END SUBROUTINE h5pset_fill_value_f