<html> <head><title> HDF5/H5Z API Specification </title></head> <body bgcolor="#FFFFFF"> <hr> <center> <table border=0 width=98%> <tr><td valign=top align=left> <a href="H5.intro.html">Introduction to HDF5</a> <br> <a href="H5.user.html">HDF5 User Guide</a> <br> <a href="index.html">Other HDF5 documents and links</a> <br> <!-- <a href="Glossary.html">Glossary</a><br> --> </td> <td valign=top align=right> And in this document, the <a href="RM_H5Front.html">HDF5 Reference Manual</a> <br> <a href="RM_H5.html">H5</a> <a href="RM_H5A.html">H5A</a> <a href="RM_H5D.html">H5D</a> <a href="RM_H5E.html">H5E</a> <a href="RM_H5F.html">H5F</a> <a href="RM_H5G.html">H5G</a> <a href="RM_H5I.html">H5I</a> <a href="RM_H5P.html">H5P</a> <br> <a href="RM_H5R.html">H5R</a> <a href="RM_H5S.html">H5S</a> <a href="RM_H5T.html">H5T</a> H5Z <a href="Tools.html">Tools</a> <a href="PredefDTypes.html">Datatypes</a> </td></tr> </table> </center> <hr> <center> <h1>H5Z: Compression Interface</h1> </center> <h2>Compression API Functions</h2> This function enable the user to configure a new compression method for the local environment. <table border=0> <tr><td valign=top> <ul> <li><a href="#Compression-Register">H5Zregister</a> </ul> </td><td> </td><td valign=top> <ul> </ul> </td></tr> </table> <p> HDF5 supports compression of raw data by compression methods built into the library or defined by an application. A compression method is associated with a dataset when the dataset is created and is applied independently to each storage chunk of the dataset. The dataset must use the <code>H5D_CHUNKED</code> storage layout. <p> The HDF5 library does not support compression for contiguous datasets because of the difficulty of implementing random access for partial I/O. Compact dataset compression is not supported because it would not produce significant results. <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. <hr> <dl> <dt><strong>Name:</strong> <a name="Compression-Register">H5Zregister</a> <dt><strong>Signature:</strong> <dd><em>herr_t</em> <code>H5Zregister</code>(<em>H5Z_method_t</em> <code>method</code>, <em>const char *</em><code>name</code>, <em>H5Z_func_t</em><code>cfunc</code>, <em>H5Z_func_t</em> <code>ufunc</code> ) <dt><strong>Purpose:</strong> <dd> Registers new compression and uncompression functions for a method specified by a method number. <dt><strong>Description:</strong> <dd><code>H5Zregister</code> registers new compression and uncompression functions for a method specified by a method number, <code>method</code>. <code>name</code> is used for debugging and may be the null pointer. Either or both of <code>cfunc</code> (the compression function) and <code>ufunc</code> (the uncompression method) may be null pointers. <p> The statistics associated with a method number are not reset by this function; they accumulate over the life of the library. <dt><strong>Parameters:</strong> <dl> <dt><em>H5Z_method_t</em> <code>method</code> <dd>Number specifying compression method. <dt><em>const char *</em><code>name</code> <dd>Name associated with the method number. <dt><em>H5Z_func_t</em> <code>cfunc</code> <dd>Compression method. <dt><em>H5Z_func_t</em> <code>ufunc</code> <dd>Uncompression method. </dl> <dt><strong>Returns:</strong> <dd>Returns a non-negative value if successful; otherwise returns a negative value. </dl> <hr> <center> <table border=0 width=98%> <tr><td valign=top align=left> <a href="H5.intro.html">Introduction to HDF5</a> <br> <a href="H5.user.html">HDF5 User Guide</a> <br> <a href="index.html">Other HDF5 documents and links</a> <br> <!-- <a href="Glossary.html">Glossary</a><br> --> </td> <td valign=top align=right> And in this document, the <a href="RM_H5Front.html">HDF5 Reference Manual</a> <br> <a href="RM_H5.html">H5</a> <a href="RM_H5A.html">H5A</a> <a href="RM_H5D.html">H5D</a> <a href="RM_H5E.html">H5E</a> <a href="RM_H5F.html">H5F</a> <a href="RM_H5G.html">H5G</a> <a href="RM_H5I.html">H5I</a> <a href="RM_H5P.html">H5P</a> <br> <a href="RM_H5R.html">H5R</a> <a href="RM_H5S.html">H5S</a> <a href="RM_H5T.html">H5T</a> H5Z <a href="Tools.html">Tools</a> <a href="PredefDTypes.html">Datatypes</a> </td></tr> </table> </center> <hr> <address> <a href="mailto:hdfhelp@ncsa.uiuc.edu">HDF Help Desk</a> <br> Last modified: 8 September 2000 <br> Describes HDF5 Release 1.5, Unreleased Development Branch </body> </html>