PCL
|
Implementation of the LZ4 compression algorithm. More...
#include <Compression.h>
Public Member Functions | |
String | AlgorithmName () const override |
int | DefaultCompressionLevel () const override |
int | MaxCompressionLevel () const override |
Public Member Functions inherited from pcl::Compression | |
Compression ()=default | |
Compression (const Compression &)=default | |
~Compression () override | |
bool | ByteShufflingEnabled () const |
bool | ChecksumsEnabled () const |
template<class C > | |
subblock_list | Compress (const C &data, Performance *perf=nullptr) const |
subblock_list | Compress (const void *data, size_type size, Performance *perf=nullptr) const |
int | CompressionLevel () const |
void | DisableByteShuffling (bool disable=true) |
void | DisableChecksums (bool disable=true) |
void | EnableByteShuffling (bool enable=true) |
void | EnableChecksums (bool enable=true) |
size_type | ItemSize () const |
virtual int | MinCompressionLevel () const |
Compression & | operator= (const Compression &)=default |
void | SetCompressionLevel (int level) |
void | SetDefaultCompressionLevel () |
void | SetItemSize (size_type itemSize) |
void | SetSubblockSize (size_type size) |
size_type | SubblockSize () const |
ByteArray | Uncompress (const ByteArray &compressedData, size_type uncompressedSize, Performance *perf=nullptr) const |
ByteArray | Uncompress (const subblock_list &subblocks, Performance *perf=nullptr) const |
size_type | Uncompress (void *data, size_type maxSize, const subblock_list &subblocks, Performance *perf=nullptr) const |
Public Member Functions inherited from pcl::ParallelProcess | |
ParallelProcess ()=default | |
ParallelProcess (const ParallelProcess &)=default | |
virtual | ~ParallelProcess () |
void | DisableParallelProcessing (bool disable=true) noexcept |
void | EnableParallelProcessing (bool enable=true, int maxProcessors=0) noexcept |
bool | IsParallelProcessingEnabled () const noexcept |
int | MaxProcessors () const noexcept |
ParallelProcess & | operator= (const ParallelProcess &)=default |
void | SetMaxProcessors (int maxProcessors) noexcept |
void | Swap (ParallelProcess &process) noexcept |
Additional Inherited Members | |
Public Types inherited from pcl::Compression | |
using | subblock_list = Array< Subblock > |
Protected Member Functions inherited from pcl::Compression | |
void | Throw (const String &errorMessage) const |
Static Protected Member Functions inherited from pcl::Compression | |
static void | InPlaceUnshuffle (uint8 *data, size_type size, size_type itemSize) |
static ByteArray | Shuffle (const uint8 *data, size_type size, size_type itemSize) |
static ByteArray | Unshuffle (const uint8 *data, size_type size, size_type itemSize) |
This class implements the LZ4 compression algorithm by Yann Collet.
LZ4 is a lossless data compression algorithm focused on compression and decompression speed.
The underlying implementation in the PixInsight core application is the reference implementation by Yann Collet, which has been released under a New BSD license.
References
Definition at line 694 of file Compression.h.
|
inlineoverridevirtual |
Returns the name of this data compression algorithm (LZ4-HC).
Implements pcl::Compression.
Definition at line 701 of file Compression.h.
|
overridevirtual |
Returns the default compression optimization level for this algorithm. The returned value represents a good compromise between execution speed and compression ratio.
Implements pcl::Compression.
|
overridevirtual |
Returns the maximum compression optimization level supported by this algorithm. Higher levels tend to provide higher compression ratios at the cost of more computational work.
Implements pcl::Compression.