A massively spiffy yet delicately unobtrusive compression library. (grpc依赖)
You can not select more than 25 topics Topics must start with a letter or number, can include dashes ('-') and can be up to 35 characters long.

36 lines
1.5 KiB

14 years ago
These classes provide a C++ stream interface to the zlib library. It allows you
to do things like:
gzofstream outf("blah.gz");
outf << "These go into the gzip file " << 123 << endl;
14 years ago
14 years ago
It does this by deriving a specialized stream buffer for gzipped files, which is
14 years ago
the way Stroustrup would have done it. :->
14 years ago
The gzifstream and gzofstream classes were originally written by Kevin Ruland
and made available in the zlib contrib/iostream directory. The older version still
14 years ago
compiles under gcc 2.xx, but not under gcc 3.xx, which sparked the development of
14 years ago
this version.
14 years ago
The new classes are as standard-compliant as possible, closely following the
approach of the standard library's fstream classes. It compiles under gcc versions
3.2 and 3.3, but not under gcc 2.xx. This is mainly due to changes in the standard
library naming scheme. The new version of gzifstream/gzofstream/gzfilebuf differs
14 years ago
from the previous one in the following respects:
- added showmanyc
- added setbuf, with support for unbuffered output via setbuf(0,0)
- a few bug fixes of stream behavior
- gzipped output file opened with default compression level instead of maximum level
- setcompressionlevel()/strategy() members replaced by single setcompression()
14 years ago
The code is provided "as is", with the permission to use, copy, modify, distribute
14 years ago
and sell it for any purpose without fee.
Ludwig Schwardt
<schwardt@sun.ac.za>
DSP Lab
Electrical & Electronic Engineering Department
University of Stellenbosch
South Africa