From: Christian P. <cp...@se...> - 2005-01-06 17:46:37
|
Hi ! I've finished the IOFilter architecture! Description: IOFilters are proxies which will be called by IODevice's to serve the actual I/O requests. The default implementation of IOFilter directly calls the real I/O methods (_read, _write, _....). Note: IOFilters work on any type of IODevice. however I/O filters may change the return value of IODevice::isSeekable(). Therefore you cannot rely on assumptions like "Files are always seekable". ZLibIOFilter ----------- Description: an IOFilter that compresses/decompresses IODevice's on the fly. Note: seek(), peek() is not supported. size() incorrectly returns the compressed size instead of the uncompressed size. Since this is a "raw" zlib deflate stream I/O filter it cannot be directly used to decompress/compress gzip files. Processing gzip files require an additional header and a trailer (http://www.faqs.org/rfcs/rfc1952.html). Maybe we should also add an GZipIOFilter ? or if it isn't possible a GZipFile() ? Greetings, Christian |