22#include <vrs/ForwardDefinitions.h> 
   41    return compressionType_;
 
   44  size_t getRecommendedInputBufferSize() 
const;
 
   49  int decompress(
void* destination, uint32_t destinationSize, uint32_t& outReadSize);
 
   62    return readSize_ - decodedSize_;
 
 
   97  const void* getCompressedData()
 const {
 
   98    return compressedBuffer_.data() + decodedSize_;
 
  100  size_t getCompressedDataSize()
 const {
 
  101    return readSize_ - decodedSize_;
 
  104  class Lz4Decompressor;
 
  105  std::unique_ptr<Lz4Decompressor> lz4Context_;
 
  106  class ZstdDecompressor;
 
  107  std::unique_ptr<ZstdDecompressor> zstdContext_;
 
  108  std::vector<uint8_t> compressedBuffer_;
 
  110  size_t readSize_ = {};
 
  111  size_t decodedSize_ = {};
 
  112  size_t lastResult_ = {};
 
 
Decompressor helper class, to decompresses data at a target location.
Definition Decompressor.h:34
void * allocateCompressedDataBuffer(size_t requestSize)
Definition Decompressor.cpp:111
int decompress(void *destination, uint32_t destinationSize, uint32_t &outReadSize)
Definition Decompressor.cpp:249
void reset()
Forget any remaining compressed data, get ready for a new frame.
Definition Decompressor.cpp:164
int readFrame(FileHandler &file, void *dst, size_t frameSize, size_t &inOutMaxReadSize)
Definition Decompressor.cpp:221
int initFrame(FileHandler &file, size_t &outFrameSize, size_t &inOutMaxReadSize)
Definition Decompressor.cpp:206
size_t getRemainingCompressedDataBufferSize() const
Definition Decompressor.h:61
Class to abstract VRS file system operations, to enable support for alternate storage methods,...
Definition FileHandler.h:75
Definition Compressor.cpp:112
CompressionType
Type of compression. Used in VRS record headers, so never modify the values.
Definition Record.h:34