e-CryptIt Engine - Compression Xojo Plugin

LZMA Class (console safe)

LZMA - The Lempel–Ziv–Markov chain algorithm (LZMA) is an algorithm used to perform lossless data compression. It has been under development either since 1996 or 1998[1] and was first used in the 7z format of the 7-Zip archiver.


The LZMA implementation extracted from 7-Zip is available as LZMA SDK. It was originally dual-licensed under both the GNU LGPL and Common Public License,[13] with an additional special exception for linked binaries, but was placed by Igor Pavlov in the public domain on December 2, 2008, with the release of version 4.62.

Object
   LZMA

class LZMA

Properties

AllowYield (console safe) If set to true then the plugin will yield to Xojo threads during compression or decompression. (Default set to false)
Level (console safe) Compression level from 0 to 9 (Default is 5)
OutputString (console safe) Returns the result of compression or decompression when the output was set to string.
WriteEndMark (console safe) If set to true then end marker is written in the stream. (Default false)

Methods

Compress (console safe) Compresses the data that has been set by the input source, to the output destination.
Decompress (console safe) Decompresses the data that has been set by the input source, to the output destination.
shared PluginVersionReturns the version number of the plugin.
SetInputToStream (console safe) Sets the input to a BinaryStream.
SetInputToString (console safe) Sets the input to a given string.
SetOutputToStream (console safe) Sets the output to BinaryStream
SetOutputToString (console safe) Sets the output to write to a string. The result will be written to the OutputString property.
SetProgressHandler (console safe) Sets progress hander for the class. (Optional)

Supported Platforms:

  • macOS Intel 64 bit
  • macOS Apple Silicon
  • Windows 32 bit
  • Windows 64 bit
  • Windows ARM 64 bit
  • Linux 32 bit
  • Linux 64 bit
  • Linux ARM 32 bit
  • Linux ARM 64 bit
  • iOS