Files
Aerofoil/unpacktool/CompactProLZHDecompressor.h
2020-05-09 21:05:58 -04:00

24 lines
543 B
C++

#pragma once
#include "LZSSDecompressor.h"
#include "IFileReader.h"
class XADPrefixCode;
class CompactProLZHDecompressor : public LZSSDecompressor
{
public:
explicit CompactProLZHDecompressor(int blocksize);
~CompactProLZHDecompressor();
private:
bool nextLiteralOrOffset(int *offset, int *length, int &result) override;
bool resetLZSSHandle() override;
XADPrefixCode *allocAndParseCodeOfSize(int size);
XADPrefixCode *literalcode, *lengthcode, *offsetcode;
int blocksize, blockcount;
IFileReader::FilePos_t blockstart;
};