1275793eaSopenharmony_ciThese classes provide a C++ stream interface to the zlib library. It allows you 2275793eaSopenharmony_cito do things like: 3275793eaSopenharmony_ci 4275793eaSopenharmony_ci gzofstream outf("blah.gz"); 5275793eaSopenharmony_ci outf << "These go into the gzip file " << 123 << endl; 6275793eaSopenharmony_ci 7275793eaSopenharmony_ciIt does this by deriving a specialized stream buffer for gzipped files, which is 8275793eaSopenharmony_cithe way Stroustrup would have done it. :-> 9275793eaSopenharmony_ci 10275793eaSopenharmony_ciThe gzifstream and gzofstream classes were originally written by Kevin Ruland 11275793eaSopenharmony_ciand made available in the zlib contrib/iostream directory. The older version still 12275793eaSopenharmony_cicompiles under gcc 2.xx, but not under gcc 3.xx, which sparked the development of 13275793eaSopenharmony_cithis version. 14275793eaSopenharmony_ci 15275793eaSopenharmony_ciThe new classes are as standard-compliant as possible, closely following the 16275793eaSopenharmony_ciapproach of the standard library's fstream classes. It compiles under gcc versions 17275793eaSopenharmony_ci3.2 and 3.3, but not under gcc 2.xx. This is mainly due to changes in the standard 18275793eaSopenharmony_cilibrary naming scheme. The new version of gzifstream/gzofstream/gzfilebuf differs 19275793eaSopenharmony_cifrom the previous one in the following respects: 20275793eaSopenharmony_ci- added showmanyc 21275793eaSopenharmony_ci- added setbuf, with support for unbuffered output via setbuf(0,0) 22275793eaSopenharmony_ci- a few bug fixes of stream behavior 23275793eaSopenharmony_ci- gzipped output file opened with default compression level instead of maximum level 24275793eaSopenharmony_ci- setcompressionlevel()/strategy() members replaced by single setcompression() 25275793eaSopenharmony_ci 26275793eaSopenharmony_ciThe code is provided "as is", with the permission to use, copy, modify, distribute 27275793eaSopenharmony_ciand sell it for any purpose without fee. 28275793eaSopenharmony_ci 29275793eaSopenharmony_ciLudwig Schwardt 30275793eaSopenharmony_ci<schwardt@sun.ac.za> 31275793eaSopenharmony_ci 32275793eaSopenharmony_ciDSP Lab 33275793eaSopenharmony_ciElectrical & Electronic Engineering Department 34275793eaSopenharmony_ciUniversity of Stellenbosch 35275793eaSopenharmony_ciSouth Africa 36