summaryrefslogtreecommitdiffstats
path: root/src/H5Zdeflate.c
Commit message (Collapse)AuthorAgeFilesLines
* [svn-r7237] Purpose:Quincey Koziol2003-07-171-1/+4
| | | | | | | | | | | Code cleanup Description: Move PABLO_MASK above including headers. Platforms tested: FreeBSD 4.8 (sleipnir) too minor for h5committest
* [svn-r7236] Purpose:Quincey Koziol2003-07-161-33/+33
| | | | | | | | | | | Code cleanup Description: Clean up more warnings from lint. Platforms tested: FreeBSD 4.8 (sleipnir) too minor for h5committest
* [svn-r6611] Purpose:Quincey Koziol2003-04-091-2/+17
| | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | Code cleanup/new features Description: Switch over to a new style for registering filters with the library - instead passing in an ID, a string and a callback function to H5Zregister, the client should pass in a single pointer to a H5Z_claass_t struct which contains the ID, the description string and all the function callbacks as fields. Added support for a new "can apply" callback for each filter, which is called when a dataset is created to check whether the parameters for that filter apply correctly to the combination of the datatype and the chunk size (i.e. dataspace) for the dataset. Added support for a new "set local" callback for each filter, which is called when a dataset is created (after the "can apply" filter callback) and sets filter parameters that are specific to that particular dataset. Switched the filters we ship over to use the new H5Z_class_t struct for their internal registrations and also added "set local" callbacks to the szip and shuffle filters and a "can apply" callback to the szip filter. Lots of other code cleanups, etc. also Solution: Platforms tested: FreeBSD 4.8 (sleipnir) w/szip Linux 2.4 (sleipnir) w/szip Solaris 2.7 (arabica) w/FORTRAN IRIX64 6.5 (modi4) w/szip, FORTRAN & parallel Misc. update:
* [svn-r6578] Purpose:Quincey Koziol2003-04-031-21/+56
| | | | | | | | | | | | | | | | Code cleanup Description: Added lots of comments to existing filters, so they are easier to understand and use as examples for future filters. Cleaned up various bits of code, etc. Solution: Platforms tested: FreeBSD 4.8 (sleipnir) IRIX64 6.5 (modi4) w/parallel Misc. update:
* [svn-r6546] Purpose:Bill Wendling2003-03-311-3/+14
| | | | | | | | | | | | Update Description: Updated copyright statement in files which hadn't been updated yet. Platforms tested: Linux (Only comment change) Misc. update:
* [svn-r6375] Raymond Lu2003-02-041-4/+6
| | | | | | | | | | | Purpose: New feature Description: Added Adler32 checksum as a filter in pipeline Platforms tested: arabica (fortran), eirene (, C++), modi4 (parallel, fortran) Misc. update: Update release_docs/RELEASE.
* [svn-r6266] Purpose:Quincey Koziol2003-01-101-1/+1
| | | | | | | | | | | | Code cleanup/new feature. Description: Split FUNC_LEAVE into API and non-API specific versions. This allows a solution to compiling this branch with C++, as well as reducing the size of the binaries produced. Platforms tested: FreeBSD 4.7 (sleipnir) w/serial, parallel (including MPE) & thread-safe
* [svn-r6114] Purpose:Quincey Koziol2002-11-201-40/+15
| | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | Code Cleanup & New Feature Description: H5config.h.in: Removed H5_HAVE_COMPRESSION & H5_HAVE_FILTER_GZIP flags. Added H5_HAVE_FILTER_DEFLATE flag. H5Z.c: H5Zprivate.h: H5Zpublic.h: Switched from using H5_HAVE_COMPRESSION flag in favor of H5_HAVE_FILTER_DEFLATE. Added H5Zunregister & H5Zfilter_avail API functions. Changed a numeric constant (256) to a symbolic constant (H5Z_FILTER_RESERVED). Automatically add the shuffling filter to the list of available filters (when it is enabled). Moved prototypes for H5Z_filter_deflate & H5Z_filter_shuffle from the public header into the private header. H5Zdeflate.c: Switched from using H5_HAVE_COMPRESSION & H5_HAVE_FILTER_GZIP flags in favor of H5_HAVE_FILTER_DEFLATE. Cleaned up formatting & error reporting a bit. H5Zshuffle.c: Rewrote shuffling algorithm to be more efficient. Added error checking & reporting. Added standard Pablo information. Added standard function header comment. Added FUNC_ENTER & FUNC_LEAVE macros. Platforms tested: Tested h5committest {arabica (fortran), eirene (fortran, C++) modi4 (parallel, fortran)} FreeBSD 4.7 (sleipnir)
* [svn-r6071] Purpose:Quincey Koziol2002-11-111-0/+4
| | | | | | | | | | | | Code cleanup Description: Start using the H5_HAVE_FILTER_GZIP macro to enable the gzip filter. Platforms tested: Tested h5committest {arabica (fortran), eirene (fortran, C++) modi4 (parallel, fortran)}? Tested FreeBSD 4.7 (sleipnir) also
* [svn-r5807] Purpose:Bill Wendling2002-07-171-4/+4
| | | | | | | | | | | | | | | | | | | | | | | | | Update, Bug Fix, and Feature Add Description: - Updated how AC_{ENABLE,WITH} help messages were being generated. Autoconf now gives you an AC_HELP_STRING macro to use to create them. - Fixed the problem with Linux LFS on RedHat 7.3 machines. It wasn't finding getdents64(), so we can't rely on that being present anymore... - Added GPFS detection and setting. - Updated how compression is specified. It's no longer necessary to test for HAVE_ZLIB_H, HAVE_LIBZ, and HAVE_COMPRESS2. The one macro {H5_}HAVE_COMPRESSION takes care of all of these. Solution: Changed the check for Linux LFS from looking for getdents() to looking at the version number of the kernel (using the uname -r command). You can still override with the --enable-linux-lfs switch if you really believe that your <2.4 kernel has LFS support. Platforms tested: Linux (2.2 and 2.4)
* [svn-r5667] Purpose:Quincey Koziol2002-06-191-3/+3
| | | | | | | | | | Code cleanup Description: Turn on more warnings in the IRIX builds and clean them up. Platforms tested: IRIX64 6.5 (modi4) w/parallel
* [svn-r5662] Purpose:Quincey Koziol2002-06-181-6/+6
| | | | | | | | | | | | | | | | | Bug fix. Description: The chunking code was using internal allocation routines to put blocks on a free list for reuse, instead of using the system allocation routines (ie. malloc, free, etc.). This causes problems when user filters attempt to allocate/free chunks for their algorithm's use. Solution: Switched the chunking code back to using the system allocation routines, we can address performance issues with them if it becomes a real problem. Platforms tested: Linux 2.2.x (eirene) && IRIX64 6.5 (modi4)
* [svn-r5471] Purpose:Quincey Koziol2002-05-291-1/+1
| | | | | | | | | | | | | | | | Code cleanup Description: Broke the FUNC_ENTER macro into several macros, with more specialized uses (which followup mail will describe). This was designed to move most/all of the checks which could be done at compile time to that point, instead of needlessly performing them (over & over :-) at run-time. This reduces the library's size (and thus staticly linked binaries) and has a minor speedup effect also. Platforms tested: IRIX64 6.5 (modi4) with parallel & FORTRAN enabled, and additional testing on FreeBSD and Solaris immediately after the checkin.
* [svn-r4355] Purpose:Quincey Koziol2001-08-141-1/+1
| | | | | | | | | | | | | | | | | | | | | | Code cleanup (sorta) Description: When the first versions of the HDF5 library were designed, I remembered vividly the difficulties of porting code from a 32-bit platform to a 16-bit platform and asked that people use intn & uintn instead of int & unsigned int, respectively. However, in hindsight, this was overkill and unnecessary since we weren't going to be porting the HDF5 library to 16-bit architectures. Currently, the extra uintn & intn typedefs are causing problems for users who'd like to include both the HDF5 and HDF4 header files in one source module (like Kent's h4toh5 library). Solution: Changed the uintn & intn's to unsigned and int's respectively. Platforms tested: FreeBSD 4.4 (hawkwind)
* [svn-r4018] Purpose:Quincey Koziol2001-06-191-3/+3
| | | | | | | | Code cleanup Description: Removed some more warnings during compilation on SGI machines.. Platforms tested: Irix64-6.5 (modi4)
* [svn-r3781] Purpose:Bill Wendling2001-04-051-6/+6
| | | | | | | | | | | | | | | | | | Update Description: Changed #include <hdf_file.h> construct to #include "hdf_file.h" so that the GNU compiler can more easily pick up the dependencies which it places in the .depend and Dependencies files. Also regenerated the Dependencies to go along with this. Platforms tested: Linux
* [svn-r3252] Purpose:Quincey Koziol2001-01-091-1/+1
| | | | | | | | | | | | | Code cleanup. Description: Fixed _lots_ (I mean _tons_) of warnings spit out by the gcc with the extra warnings. Including a few show-stoppers for compression on IRIX machines. Solution: Changed lots of variables' types to more sensible and consistent types, more range-checking, more variable typecasts, etc. Platforms tested: FreeBSD 4.2 (hawkwind), IRIX64-64 (modi4)
* [svn-r2890] Purpose:Bill Wendling2000-11-131-0/+6
| | | | | | | | | | | Redo of a patch Description: As Quincey pointed out, the parameters are only ``UNUSED'' if we can't find libz.a. Solution: I changed it to conditionally put the UNUSED in there... Platforms tested: Linux
* [svn-r2884] Purpose:Bill Wendling2000-11-131-3/+3
| | | | | | | | | | Removed warnings Description: Unused parameters Solution: Put UNUSED macro before unused params. Platforms tested: Linux
* [svn-r2866] Purpose:Quincey Koziol2000-11-111-4/+4
| | | | | | | | Code cleanup Description: Found more "Have_foo" usage and converted them to "H5_HAVE_foo" Platforms tested: FreeBSD 4.1.1 (hawkwind)
* [svn-r2073] Added free-list code to the library and took out the older ↵Quincey Koziol2000-04-041-7/+8
| | | | | | | "temporary buffer" code, since the functionality was superceded. See the followup document for details on the free-list code.
* [svn-r1708] Turned off compression feature if zlib.h is off.Albert Cheng1999-10-011-0/+3
|
* [svn-r1619] ./src/H5O.c [1.2, 1.3]Robb Matzke1999-08-301-0/+144
Fixed a read-uninitialized-memory error that resulted in the file containing small amounts (<8 bytes each) of uninitialized data. These padding areas (which are never read by hdf5) are initialized to zero now. ./MANIFEST ./src/H5Z.c ./src/H5Zdeflate.c [NEW] ./src/H5Zprivate.h ./src/H5Zpublic.h ./src/Makefile.in The zlib filter was moved to a separate file but is still automatically defined.