summaryrefslogtreecommitdiffstats
path: root/doc/src/RM_H5Z.html
blob: a5ef92c311e8df7c1a18d0789a67e9887e9f825f (plain)
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49
50
51
52
53
54
55
56
57
58
59
60
61
62
63
64
65
66
67
68
69
70
71
72
73
74
75
76
77
78
79
80
81
82
83
84
85
86
87
88
89
90
91
92
93
<html>
<head><title>
HDF5/H5Z Draft API Specification
</title></head>

<body>

<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>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;</td><td valign=top>
<ul>
    &nbsp;
</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="../UG/Compression.html"><cite>Compression</cite></a> in the 
<cite>HDF5 User's Guide</cite> for further information.

<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 SUCCEED (0) if successful;
        otherwise FAIL (-1).
</dl>


<hr>

<address>
<a href="mailto:fbaker@ncsa.uiuc.edu">Frank Baker</a>
<br>
<a href="mailto:h5docs@ncsa.uiuc.edu">HDF5 Documentation</a>

<br>
Last modified:  8 July 1998

</body>
</html>