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