Last modified: 10 June 2010
Name: H5Premove_filter
Signature:
  herr_t `H5Premove_filter`( hid_t `plist_id`, H5Z_filter_t `filter` )

Purpose:
  Delete one or more filters in the filter pipeline.

Description:
  `H5Premove_filter` removes the specified `filter` from the filter pipeline in the dataset or group creation property list `plist_id`.

  The `filter` parameter specifies the filter to be removed. Valid values for use in `filter` are as follows:

  `H5Z_FILTER_ALL` | Removes all filters from the filter pipeline.
  `H5Z_FILTER_DEFLATE` | Data compression filter, employing the gzip algorithm
  `H5Z_FILTER_SHUFFLE` | Data shuffling filter
  `H5Z_FILTER_FLETCHER32` | Error detection filter, employing the Fletcher32 checksum algorithm
  `H5Z_FILTER_SZIP` | Data compression filter, employing the SZIP algorithm
  `H5Z_FILTER_NBIT` | Data compression filter, employing the N-Bit algorithm
  `H5Z_FILTER_SCALEOFFSET` | Data compression filter, employing the scale-offset algorithm

  Additionally, user-defined filters can be removed with this routine by passing the filter identifier with which they were registered with the HDF5 Library.

  Attempting to remove a filter that is not in the filter pipeline is an error.

Parameters:
  hid_t `plist_id`
    IN: Dataset or group creation property list identifier.
  H5Z_filter_t `filter`
    IN: Filter to be deleted.

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

Fortran90 Interface: h5premove_filter_f

      SUBROUTINE h5premove_filter_f(prp_id, filter, hdferr)

        IMPLICIT NONE
        INTEGER(HID_T), INTENT(IN) :: prp_id ! Property list identifier
        INTEGER, INTENT(IN) :: filter        ! Filter to be removed
                                             ! Valid values are:
                                             !     H5Z_FILTER_ALL_F
                                             !     H5Z_FILTER_DEFLATE_F
                                             !     H5Z_FILTER_SHUFFLE_F
                                             !     H5Z_FILTER_FLETCHER32_F
                                             !     H5Z_FILTER_SZIP_F
        INTEGER, INTENT(OUT) :: hdferr       ! Error code
                                             ! 0 on success, -1 on failure
      END SUBROUTINE h5premove_filter_f

History:

  Release | Changes
  1.6.3 | Function introduced in this release. Fortran subroutine introduced in this release.
  1.8.5 | Function extended to work with group creation property lists.