Name: H5Pget_filter
Signature:
  H5Z_filter_t `H5Pget_filter`(hid_t `plist`, unsigned int `filter_number`, unsigned int *`flags`, size_t *`cd_nelmts`, unsigned int *`cd_values`, size_t `namelen`, char `name[]` )
Purpose:
  Returns information about a filter in a pipeline.
Description:
  `H5Pget_filter` returns information about a filter, specified by its filter number, in a filter pipeline, specified by the property list with which it is associated.

  If `plist` is a dataset creation property list, the pipeline is a permanent filter pipeline; if `plist` is a dataset transfer property list, the pipeline is a transient filter pipeline.

  On input, `cd_nelmts` indicates the number of entries in the `cd_values` array, as allocated by the caller; on return,`cd_nelmts` contains the number of values defined by the filter.

  `filter_number` is a value between zero and N-1, as described in `H5Pget_nfilters`. The function will return a negative value if the filter number is out of range.

  If `name` is a pointer to an array of at least `namelen` bytes, the filter name will be copied into that array. The name will be null terminated if `namelen` is large enough. The filter name returned will be the name appearing in the file, the name registered for the filter, or an empty string.

  The structure of the `flags` argument is discussed in `H5Pset_filter`.

Note:
  This function currently supports only the permanent filter pipeline; `plist` must be a dataset creation property list.
Parameters:

hid_t `plist` | IN: Property list identifier.
int `filter_number` | IN: Sequence number within the filter pipeline of the filter for which information is sought.
unsigned int *`flags` | OUT: Bit vector specifying certain general properties of the filter.
size_t *`cd_nelmts` | IN/OUT: Number of elements in `cd_values`.
unsigned int *`cd_values` | OUT: Auxiliary data for the filter.
size_t `namelen` | IN: Anticipated number of characters in `name`.
char `name[]` | OUT: Name of the filter.

Returns:
  Returns the filter identifier if successful:

  `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

  Otherwise returns a negative value.
Fortran90 Interface: h5pget_filter_f

      SUBROUTINE h5pget_filter_f(prp_id, filter_number, flags, cd_nelmts,
                                 cd_values, namelen, name, filter_id, hdferr)
        IMPLICIT NONE
        INTEGER(HID_T), INTENT(IN) :: prp_id    ! Property list identifier
        INTEGER, INTENT(IN) :: filter_number    ! Sequence number within the filter
                                                ! pipeline of the filter for which
                                                ! information is sought
        INTEGER, DIMENSION(*), INTENT(OUT) :: cd_values
                                                ! Auxiliary data for the filter
        INTEGER, INTENT(OUT) :: flags           ! Bit vector specifying certain
                                                ! general properties of the filter
        INTEGER(SIZE_T), INTENT(INOUT) :: cd_nelmts
                                                ! Number of elements in cd_values
        INTEGER(SIZE_T), INTENT(IN) :: namelen  ! Anticipated number of characters
                                                ! in name
        CHARACTER(LEN=*), INTENT(OUT) :: name   ! Name of the filter
        INTEGER, INTENT(OUT) :: filter_id       ! Filter identification number
        INTEGER, INTENT(OUT) :: hdferr          ! Error code
                                                ! 0 on success and -1 on failure
      END SUBROUTINE h5pget_filter_f

History:

Release | C
1.6.4 | `filter` parameter type changed to unsigned.