[svn-r8796]

Purpose:
    SZIP and more general filter updates

Description:
    Added SZIP to the introductory paragraphs and as appropriate in
        the Fortran subroutine descriptions.
    Revised the introductory discussion, which had previously focussed
        on one compression filter, to allow for multiple filters of
        different types.
    Added list of filters currently distributed with HDF5 to intro.
    Also some copy edits and minor formatting.

Platforms tested:
    Mozilla, Safari
This commit is contained in:
Frank Baker 2004-07-02 17:03:17 -05:00
parent f50ea642a7
commit 145fc6d7e7

View File

@ -115,30 +115,47 @@ as the corresponding C function.
HDF5 supports a filter pipeline that provides the capability for standard
and customized raw data processing during I/O operations.
HDF5 is distributed with a small set of standard filters such as
compression (gzip and a shuffling algorithm) and
compression (gzip, SZIP, and a shuffling algorithm) and
error checking (Fletcher32 checksum).
For further flexibility, the library allows a
user application to extend the pipeline through the
creation and registration of customized filters.
<p>
As mentioned above, one set of filters distributed with HDF5 provides
built-in methods for raw data compression.
The flexibility of the filter pipeline implementation enables the
definition of additional filters by a user application.
A filter<br>
&nbsp;&mdash;&nbsp;
is associated with a dataset when the dataset is created,<br>
&nbsp;&mdash;&nbsp;
can be used only with chunked data (ie., datasets stored in the
<code>H5D_CHUNKED</code> storage layout), and<br>
&nbsp;&mdash;&nbsp;
is applied independently to each chunk of the dataset.
A filter
<ul>
<li>is associated with a dataset when the dataset is created,
<li>can be used only with chunked data
(i.e., datasets stored in the <code>H5D_CHUNKED</code>
storage layout), and
<li>is applied independently to each chunk of the dataset.
</ul>
<p>
The HDF5 library does not support filters for contiguous datasets
because of the difficulty of implementing random access for partial I/O.
Compact dataset filters are not supported because it would not produce
significant results.
<p>
Filter identifiers for the filters distributed with the HDF5 Library
are as follows:
<table align=center border=0>
<tr valign=top align=left>
<td>
<code>H5Z_FILTER_DEFLATE</code></td><td>The gzip compression,
or deflation, filter
</td></tr><tr><td>
<code>H5Z_FILTER_SZIP</code></td><td>The SZIP compression filter
</td></tr><tr><td>
<code>H5Z_FILTER_SHUFFLE</code></td><td>The shuffle algorithm filter
</td></tr><tr><td>
<code>H5Z_FILTER_FLETCHER32&nbsp;&nbsp;</code></td><td>The Fletcher32 checksum,
or error checking, filter
</td></tr>
</table>
Custom filters that have been registered with the library will have
additional unique identifiers.
<p>
See <a href="Datasets.html"><cite>The Dataset Interface (H5D)</cite></a>
in the <cite>HDF5 User's Guide</cite> for further information regarding
data compression.
@ -160,7 +177,9 @@ data compression.
<ul><table>
<tr>
<td valign="top"><em>H5Z_filter_t</em>&nbsp;<code>filter&nbsp;&nbsp;&nbsp;&nbsp;</code></td>
<td valign="top">IN: Filter identifier.</td></tr>
<td valign="top">IN: Filter identifier.
See the introduction to this section of the reference manual
for a list of valid filter identifiers</td></tr>
</table></ul>
<dt><strong>Returns:</strong>
<dd>Returns a non-negative value if successful;
@ -175,8 +194,9 @@ SUBROUTINE h5zfilter_avail_f(filter, status, hdferr)
! H5Z_FILTER_DEFLATE_F
! H5Z_FILTER_SHUFFLE_F
! H5Z_FILTER_FLETCHER32_F
! H5Z_FILTER_SZIP_F
LOGICAL, INTENT(OUT) :: status ! Flag indicating whether
! filter is availble:
! filter is available:
! .TRUE.
! .FALSE.
END SUBROUTINE h5zfilter_avail_f
@ -424,7 +444,9 @@ END SUBROUTINE h5zfilter_avail_f
<ul><table>
<tr>
<td valign="top"><em>H5Z_filter_t</em>&nbsp;<code>filter&nbsp;&nbsp;&nbsp;&nbsp;</code></td>
<td valign="top">IN: Identifier of the filter to be unregistered.</td></tr>
<td valign="top">IN: Identifier of the filter to be unregistered.
See the introduction to this section of the reference manual
for a list of valid filter identifiers</td></tr>
</table></ul>
<dt><strong>Returns:</strong>
<dd>Returns a non-negative value if successful;
@ -438,6 +460,7 @@ SUBROUTINE h5zunregister_f(filter, hdferr)
! 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, and -1 on failure
END SUBROUTINE h5zunregister_f
@ -492,7 +515,7 @@ And in this document, the
Describes HDF5 Release 1.7, the unreleased development branch; working toward HDF5 Release 1.8.0
</address><!-- #EndLibraryItem --><SCRIPT LANGUAGE="JAVASCRIPT">
<!--
document.writeln("Last modified: 24 February 2004");
document.writeln("Last modified: 1 July 2004");
-->
</SCRIPT>