Class Decode
java.lang.Object
com.itextpdf.io.codec.brotli.dec.Decode
API for Brotli decompression.
-
Field Summary
FieldsModifier and TypeFieldDescriptionprivate static final int[]private static final intprivate static final intprivate static final intprivate static final intprivate static final int[]private static final int[]private static final int[]Static Huffman code for the code length code lengths.private static final intprivate static final intprivate static final intprivate static final intprivate static final intprivate static final intprivate static final int -
Constructor Summary
Constructors -
Method Summary
Modifier and TypeMethodDescriptionprivate static voidcopyUncompressedData(State state) private static voiddecodeBlockTypeAndLength(State state, int treeType) private static voiddecodeCommandBlockSwitch(State state) private static intdecodeContextMap(int contextMapSize, byte[] contextMap, BitReader br) private static voiddecodeDistanceBlockSwitch(State state) private static voiddecodeLiteralBlockSwitch(State state) private static voiddecodeMetaBlockLength(BitReader br, State state) private static intDecodes a number in the range [0..255], by reading 1 - 11 bits.(package private) static voiddecompress(State state) Actual decompress implementation.private static voidinverseMoveToFrontTransform(byte[] v, int vLen) private static voidmaybeReallocateRingBuffer(State state) private static voidmoveToFront(int[] v, int index) private static intreadBlockLength(int[] table, int offset, BitReader br) (package private) static voidreadHuffmanCode(int alphabetSize, int[] table, int offset, BitReader br) private static voidreadHuffmanCodeLengths(int[] codeLengthCodeLengths, int numSymbols, int[] codeLengths, BitReader br) private static voidprivate static voidreadMetablockInfo(State state) Reads next metablock header.private static intreadSymbol(int[] table, int offset, BitReader br) Decodes the next Huffman code from bit-stream.(package private) static voidsetCustomDictionary(State state, byte[] data) private static inttranslateShortCodes(int code, int[] ringBuffer, int index) private static booleanwriteRingBuffer(State state)
-
Field Details
-
DEFAULT_CODE_LENGTH
private static final int DEFAULT_CODE_LENGTH- See Also:
-
CODE_LENGTH_REPEAT_CODE
private static final int CODE_LENGTH_REPEAT_CODE- See Also:
-
NUM_LITERAL_CODES
private static final int NUM_LITERAL_CODES- See Also:
-
NUM_INSERT_AND_COPY_CODES
private static final int NUM_INSERT_AND_COPY_CODES- See Also:
-
NUM_BLOCK_LENGTH_CODES
private static final int NUM_BLOCK_LENGTH_CODES- See Also:
-
LITERAL_CONTEXT_BITS
private static final int LITERAL_CONTEXT_BITS- See Also:
-
DISTANCE_CONTEXT_BITS
private static final int DISTANCE_CONTEXT_BITS- See Also:
-
HUFFMAN_TABLE_BITS
private static final int HUFFMAN_TABLE_BITS- See Also:
-
HUFFMAN_TABLE_MASK
private static final int HUFFMAN_TABLE_MASK- See Also:
-
CODE_LENGTH_CODES
private static final int CODE_LENGTH_CODES- See Also:
-
CODE_LENGTH_CODE_ORDER
private static final int[] CODE_LENGTH_CODE_ORDER -
NUM_DISTANCE_SHORT_CODES
private static final int NUM_DISTANCE_SHORT_CODES- See Also:
-
DISTANCE_SHORT_CODE_INDEX_OFFSET
private static final int[] DISTANCE_SHORT_CODE_INDEX_OFFSET -
DISTANCE_SHORT_CODE_VALUE_OFFSET
private static final int[] DISTANCE_SHORT_CODE_VALUE_OFFSET -
FIXED_TABLE
private static final int[] FIXED_TABLEStatic Huffman code for the code length code lengths.
-
-
Constructor Details
-
Decode
Decode()
-
-
Method Details
-
decodeVarLenUnsignedByte
Decodes a number in the range [0..255], by reading 1 - 11 bits. -
decodeMetaBlockLength
-
readSymbol
Decodes the next Huffman code from bit-stream. -
readBlockLength
-
translateShortCodes
private static int translateShortCodes(int code, int[] ringBuffer, int index) -
moveToFront
private static void moveToFront(int[] v, int index) -
inverseMoveToFrontTransform
private static void inverseMoveToFrontTransform(byte[] v, int vLen) -
readHuffmanCodeLengths
private static void readHuffmanCodeLengths(int[] codeLengthCodeLengths, int numSymbols, int[] codeLengths, BitReader br) -
readHuffmanCode
-
decodeContextMap
-
decodeBlockTypeAndLength
-
decodeLiteralBlockSwitch
-
decodeCommandBlockSwitch
-
decodeDistanceBlockSwitch
-
maybeReallocateRingBuffer
-
readMetablockInfo
Reads next metablock header.- Parameters:
state- decoding state
-
readMetablockHuffmanCodesAndContextMaps
-
copyUncompressedData
-
writeRingBuffer
-
setCustomDictionary
-
decompress
Actual decompress implementation.
-