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