Page tree









Retrieves information about a filter


H5Z_GET_FILTER_INFO (filter, filter_config)


herr_t H5Zget_filter_info( H5Z_filter_t filter, unsigned int *filter_config )

SUBROUTINE h5zget_filter_info_f(filter, config_flags, hdferr)

  INTEGER, INTENT(IN)  :: filter        ! Filter, may be one of the
                                        ! following:
                                        !     H5Z_FILTER_DEFLATE_F
                                        !     H5Z_FILTER_SHUFFLE_F
                                        !     H5Z_FILTER_FLETCHER32_F
                                        !     H5Z_FILTER_SZIP_F
  INTEGER, INTENT(OUT) :: config_flags  ! Bit field indicating whether
                                        ! a filter's encoder and/or
                                        ! decoder are available
  INTEGER, INTENT(OUT) :: hdferr        ! Error code

END SUBROUTINE h5zfilter_avail_f

H5Z_filter_t filterIN: Identifier of the filter to query. See the introduction to this section of the reference manual for a list of valid filter identifiers
unsigned int *filter_config

OUT: A bit field encoding the returned filter information


H5Z_GET_FILTER_INFO retrieves information about a filter. At present, this means that the function retrieves a filter's configuration flags, indicating whether the filter is configured to decode data, to encode data, neither, or both.

If filter_config is not set to NULL prior to the function call, the returned parameter contains a bit field specifying the available filter configuration. The configuration flag values can then be determined through a series of bitwise AND operations, as described below.

Valid filter configuration flags include the following:

H5Z_FILTER_CONFIG_ENCODE_ENABLED Encoding is enabled for this filter 
H5Z_FILTER_CONFIG_DECODE_ENABLED    Decoding is enabled for this filter 
(These flags are defined for C in the HDF5 library source code file H5Zpublic.h.)

A bitwise AND of the returned filter_config and a valid filter configuration flag will reveal whether the related configuration option is available. For example, if the value of 
     H5Z_FILTER_CONFIG_ENCODE_ENABLED & filter_config 
is true, i.e., greater than 0 (zero), the queried filter is configured to encode data; if the value is FALSE, i.e., equal to 0 (zero), the filter is not so configured.

If a filter is not encode-enabled, the corresponding H5Pset_* function will return an error if the filter is added to a dataset creation property list (which is required if the filter is to be used to encode that dataset). For example, if the H5Z_FILTER_CONFIG_ENCODE_ENABLED flag is not returned for the SZIP filter, H5Z_FILTER_SZIP, a call to H5P_SET_SZIP  will fail.

If a filter is not decode-enabled, the application will not be able to read an existing file encoded with that filter.

This function should be called, and the returned filter_config analyzed, before calling any other function, such as H5P_SET_SZIP , that might require a particular filter configuration.


Returns a non-negative value on success, a negative value on failure.


Coming Soon!

Release    Change
1.6.3Function introduced in this release.
Fortran subroutine introduced in this release.

--- Last Modified: May 28, 2019 | 11:48 AM