X-Git-Url: http://git.tdb.fi/?p=libs%2Fcore.git;a=blobdiff_plain;f=source%2Fio%2Fzlibcompressed.h;h=e4ae6e08f852f9b6228f7ff0f4b415d80a08de81;hp=30894cb9cf2345e7e5d79ed742dfe74e115ab99c;hb=c8bf2d6c15893ccc9dbc4e04611b7229029f4808;hpb=e0266badf098a5cec2512eb693bca771e35fd3ab diff --git a/source/io/zlibcompressed.h b/source/io/zlibcompressed.h index 30894cb..e4ae6e0 100644 --- a/source/io/zlibcompressed.h +++ b/source/io/zlibcompressed.h @@ -34,7 +34,7 @@ private: struct Private; Base &below; - unsigned buffer_size; + std::size_t buffer_size; unsigned char *in_buffer; unsigned char *out_buffer; bool stream_end; @@ -56,10 +56,13 @@ private: public: virtual ~ZlibCompressed(); + virtual void set_block(bool); + virtual void set_inherit(bool); + void flush(); protected: - virtual unsigned do_write(const char *, unsigned); + virtual std::size_t do_write(const char *, std::size_t); private: /** Compresses data and writes it to the underlying object. Returns true if @@ -69,7 +72,9 @@ private: bool compress_data(int flush_mode); public: - virtual unsigned do_read(char *, unsigned); + virtual std::size_t do_read(char *, std::size_t); + + virtual const Handle &get_handle(Mode); }; } // namespace IO