summaryrefslogtreecommitdiffstats
path: root/src/H5Zprivate.h
diff options
context:
space:
mode:
authorMuQun Yang <ymuqun@hdfgroup.org>2003-04-01 15:39:48 (GMT)
committerMuQun Yang <ymuqun@hdfgroup.org>2003-04-01 15:39:48 (GMT)
commitf94431ce1f10d796268767121cd85269b7c0f094 (patch)
tree01edce5f7fe3e3977f5aa86aeddd36e481b61caf /src/H5Zprivate.h
parent646ac3850720155ced3851cf0c5ecf52a72857c4 (diff)
downloadhdf5-f94431ce1f10d796268767121cd85269b7c0f094.zip
hdf5-f94431ce1f10d796268767121cd85269b7c0f094.tar.gz
hdf5-f94431ce1f10d796268767121cd85269b7c0f094.tar.bz2
[svn-r6551] Purpose:
To support szip compression in HDF5 Description: szip compression support is required by NASA ESDIS. The compression algorithm is good for scientific data. In HDF5, we add another filter function to make szip as a default compression package as we did for gzip(or zlib). In this check-in, a new function called H5Pset_szip was added into H5Pdcpl.c, this function is very similar to H5Pset_deflate. The only difference is SZIP needs four parameters from the user to get the compression done while gzip needs only one. So we pass a pointer to this function instead of an integer number. The description of the four parameters of szip should be in different documents. H5Z.c and other header files were simply modified to have HDF5 know szip. Solution: See the decription Platforms tested: Since there are changes of configure.in and configure,I didn't use h5committest. I tested with four platforms. 1) Linux 2.4 (eirene) 2) Solaris 2.7(arabica) 3) windows 2000(VS 6.0) 4) SGI IRIX6.5-64(modi4) For test 1)-3), only basic C tests were done For modi4 test, I tested 64-bit C,parallel and fortran. All tests passed, except a warning message from szip library when checksum is used in some order, which doesn't cause any real problems. Misc. update:
Diffstat (limited to 'src/H5Zprivate.h')
-rw-r--r--src/H5Zprivate.h7
1 files changed, 7 insertions, 0 deletions
diff --git a/src/H5Zprivate.h b/src/H5Zprivate.h
index 07cf38b..9d7d25c 100644
--- a/src/H5Zprivate.h
+++ b/src/H5Zprivate.h
@@ -23,6 +23,9 @@
#include "H5Fprivate.h"
#include "H5Ppublic.h"
+#ifdef H5_HAVE_SZLIB_H
+#include "szlib.h"
+#endif
/*
* The filter table maps filter identification numbers to structs that
* contain a pointers to the filter function and timing statistics.
@@ -62,6 +65,10 @@ H5_DLL size_t H5Z_filter_deflate(unsigned flags, size_t cd_nelmts,
const unsigned cd_values[], size_t nbytes,
size_t *buf_size, void **buf);
+H5_DLL size_t H5Z_filter_szip(unsigned flags, size_t cd_nelmts,
+ const unsigned cd_values[], size_t nbytes,
+ size_t *buf_size, void **buf);
+
H5_DLL size_t H5Z_filter_shuffle(unsigned flags, size_t cd_nelmts,
const unsigned cd_values[], size_t nbytes,
size_t *buf_size, void **buf);