X-Git-Url: https://git.saurik.com/wxWidgets.git/blobdiff_plain/301deecc27a700e5432f8923be63ec71a79b8a52..81c882b613b5d99ddb1e5ab69fcd7ebccc287025:/docs/latex/wx/strmzlib.tex diff --git a/docs/latex/wx/strmzlib.tex b/docs/latex/wx/strmzlib.tex index d563a50640..eda8d2f207 100644 --- a/docs/latex/wx/strmzlib.tex +++ b/docs/latex/wx/strmzlib.tex @@ -4,7 +4,8 @@ \section{\class{wxZlibInputStream}}\label{wxzlibinputstream} This filter stream decompresses a stream that is in zlib or gzip format. -Note that reading the gzip format requires zlib version 1.2.0 greater. +Note that reading the gzip format requires zlib version 1.2.1 or greater, +(the builtin version does support gzip format). The stream is not seekable, \helpref{SeekI()}{wxinputstreamseeki} returns {\it wxInvalidOffset}. Also \helpref{GetSize()}{wxstreambasegetsize} is @@ -25,27 +26,52 @@ not supported, it always returns $0$. \latexignore{\rtfignore{\wxheading{Members}}} -\membersection{wxZlibInputStream::wxZlibInputStream} +\membersection{wxZlibInputStream::wxZlibInputStream}\label{wxzlibinputstreamwxzlibinputstream} -\func{}{wxZlibInputStream}{\param{wxInputStream\&}{ stream}, \param{int}{ flags = wxZLIB\_ZLIB | wxZLIB\_GZIP}} +\func{}{wxZlibInputStream}{\param{wxInputStream\&}{ stream}, \param{int}{ flags = wxZLIB\_AUTO}} + +\func{}{wxZlibInputStream}{\param{wxInputStream*}{ stream}, \param{int}{ flags = wxZLIB\_AUTO}} + +If the parent stream is passed as a pointer then the new filter stream +takes ownership of it. If it is passed by reference then it does not. The {\it flags} wxZLIB\_ZLIB and wxZLIB\_GZIP specify whether the input data -is in zlib or gzip format. If both are used, bitwise ored, then zlib will +is in zlib or gzip format. If wxZLIB\_AUTO is used, then zlib will autodetect the stream type, this is the default. -If {\it flags} is zero, then the data is assumed to be a raw deflate stream -without either zlib or gzip headers. + +If {\it flags} is wxZLIB\_NO\_HEADER, then the data is assumed to be a raw +deflate stream without either zlib or gzip headers. This is a lower level +mode, which is not usually used directly. It can be used to read a raw +deflate stream embedded in a higher level protocol. + +%if WXWIN_COMPATIBILITY_2_4 +This version is not by default compatible with the output produced by +the version of {\it wxZlibOutputStream} in wxWidgets 2.4.x. However, +there is a compatibility mode, which is switched on by passing +wxZLIB\_24COMPATIBLE for flags. Note that in when operating in compatibility +mode error checking is very much reduced. +%endif The following symbols can be use for the flags: \begin{verbatim} // Flags enum { - wxZLIB_NO_HEADER = 0, // raw deflate stream, no header or checksum - wxZLIB_ZLIB = 1, // zlib header and checksum - wxZLIB_GZIP = 2 // gzip header and checksum, requires zlib 1.2+ +#if WXWIN_COMPATIBILITY_2_4 + wxZLIB_24COMPATIBLE = 4, // read v2.4.x data without error +#endif + wxZLIB_NO_HEADER = 0, // raw deflate stream, no header or checksum + wxZLIB_ZLIB = 1, // zlib header and checksum + wxZLIB_GZIP = 2, // gzip header and checksum, requires zlib 1.2.1+ + wxZLIB_AUTO = 3 // autodetect header zlib or gzip }; \end{verbatim} +\membersection{wxZlibInputStream::CanHandleGZip}\label{wxzlibinputstreamcanhandlegzip} + +\func{static bool}{CanHandleGZip}{\void} + +Returns true if zlib library in use can handle gzip compressed data. % ----------------------------------------------------------------------------- % wxZlibOutputStream @@ -54,7 +80,8 @@ enum { This stream compresses all data written to it. The compressed output can be in zlib or gzip format. -Note that writing the gzip format requires zlib version 1.2.0 greater. +Note that writing the gzip format requires zlib version 1.2.1 or greater +(the builtin version does support gzip format). The stream is not seekable, \helpref{SeekO()}{wxoutputstreamseeko} returns {\it wxInvalidOffset}. @@ -75,19 +102,27 @@ The stream is not seekable, \helpref{SeekO()}{wxoutputstreamseeko} returns \latexignore{\rtfignore{\wxheading{Members}}} -\membersection{wxZlibOutputStream::wxZlibOutputStream} +\membersection{wxZlibOutputStream::wxZlibOutputStream}\label{wxzliboutputstreamwxzliboutputstream} \func{}{wxZlibOutputStream}{\param{wxOutputStream\&}{ stream}, \param{int}{ level = -1}, \param{int}{ flags = wxZLIB\_ZLIB}} +\func{}{wxZlibOutputStream}{\param{wxOutputStream*}{ stream}, \param{int}{ level = -1}, \param{int}{ flags = wxZLIB\_ZLIB}} + Creates a new write-only compressed stream. {\it level} means level of compression. It is number between 0 and 9 (including these values) where 0 means no compression and 9 best but slowest compression. -1 is default value (currently equivalent to 6). +If the parent stream is passed as a pointer then the new filter stream +takes ownership of it. If it is passed by reference then it does not. + The {\it flags} wxZLIB\_ZLIB and wxZLIB\_GZIP specify whether the output data will be in zlib or gzip format. wxZLIB\_ZLIB is the default. -If {\it flags} is zero, then a raw deflate stream is output without either -zlib or gzip headers. + +If {\it flags} is wxZLIB\_NO\_HEADER, then a raw deflate stream is output +without either zlib or gzip headers. This is a lower level +mode, which is not usually used directly. It can be used to embed a raw +deflate stream in a higher level protocol. The following symbols can be use for the compression level and flags: @@ -104,7 +139,13 @@ enum { enum { wxZLIB_NO_HEADER = 0, // raw deflate stream, no header or checksum wxZLIB_ZLIB = 1, // zlib header and checksum - wxZLIB_GZIP = 2 // gzip header and checksum, requires zlib 1.2+ + wxZLIB_GZIP = 2 // gzip header and checksum, requires zlib 1.2.1+ }; \end{verbatim} +\membersection{wxZlibOutputStream::CanHandleGZip}\label{wxoutputstreamcanhandlegzip} + +\func{static bool}{CanHandleGZip}{\void} + +Returns true if zlib library in use can handle gzip compressed data. +