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