Add wxLZMAOutputStream for compressing data using LZMA
As liblzma API is similar to zlib API, this class is also close to wxZlibOutputStream, except that it uses reusable functions instead of repeating their code.
This commit is contained in:
@@ -33,7 +33,7 @@
|
||||
@library{wxbase}
|
||||
@category{archive,streams}
|
||||
|
||||
@see wxInputStream, wxZlibInputStream
|
||||
@see wxInputStream, wxZlibInputStream, wxLZMAOutputStream.
|
||||
|
||||
@since 3.1.2
|
||||
*/
|
||||
@@ -58,3 +58,41 @@ public:
|
||||
*/
|
||||
wxLZMAInputStream(wxInputStream* stream);
|
||||
};
|
||||
|
||||
/**
|
||||
@class wxLZMAOutputStream
|
||||
|
||||
This filter stream compresses data using XZ format.
|
||||
|
||||
XZ format uses LZMA compression, making it (significantly) more efficient
|
||||
than Gzip format used by wxZlibOutputStream. Output generated by this class
|
||||
is compatible with xz utilities working with .xz files and also supported
|
||||
by 7-Zip program, even though it is different from its native .7z format.
|
||||
|
||||
@library{wxbase}
|
||||
@category{archive,streams}
|
||||
|
||||
@see wxOutputStream, wxZlibOutputStream, wxLZMAInputStream
|
||||
|
||||
@since 3.1.2
|
||||
*/
|
||||
class wxLZMAOutputStream : public wxFilterOutputStream
|
||||
{
|
||||
/**
|
||||
Create compressing stream associated with the given underlying
|
||||
stream.
|
||||
|
||||
This overload does not take ownership of the @a stream.
|
||||
*/
|
||||
wxLZMAOutputStream(wxOutputStream& stream);
|
||||
|
||||
/**
|
||||
Create compressing stream associated with the given underlying
|
||||
stream and takes ownership of it.
|
||||
|
||||
As with the base wxFilterOutputStream class, passing @a stream by
|
||||
pointer indicates that this object takes ownership of it and will
|
||||
delete it when it is itself destroyed.
|
||||
*/
|
||||
wxLZMAOutputStream(wxOutputStream* stream);
|
||||
};
|
||||
|
Reference in New Issue
Block a user