From: Christian P. <cp...@se...> - 2005-01-07 19:26:12
|
Am Freitag 07 Januar 2005 18:05 schrieb stephan beal: > Don't forget to update the manual ;). > (Just kidding - i'll do that if you don't want to.) if you would be so kind ;-) my documentation english sucks. > AFAIK zlib has gzip_xxx() functions, but i *think* it only has file > variants, not in-memory variants. i've used zlib "low-level" API. gz_xxx are all operating on an file descriptor. > That's exactly what i'm thinking. i have LGPL code for std::i/ostreams > which use gzip and bzip2 (i didn't write the gzip support, and bzip2 > was simply a copy/paste plus a one-line change). These should be fairly > trivial to port to FileStream subclasses. In fact, since they're > already std::i/ostream[buffers], they may be usable as-is in P, after > renaming them for P convensions. BZip2IOFilter is already in CVS. Problem with i/ostream[buffers] is .. that they only will be usable when using P::IO::IOStream. When using IOFilter's it will be transparent to IODevice and IOStream ! ZlibIOFilter gets a bit complicated... theire 3 different zlib format's out there: 1. zlib "raw" deflate format 2. zlib "deflate" format (header + zlib raw + trailer) -> RFC 1950 3. gzip format (gzip header + zlib raw + trailer) -> RFC 1952 Based on the raw ZlibIOFilter i will implement zlib deflate and gzip formats. Greetings, Christian |