Package it.unimi.dsi.compression
Class CanonicalFast64CodeWordDecoder
- java.lang.Object
-
- it.unimi.dsi.compression.CanonicalFast64CodeWordDecoder
-
- All Implemented Interfaces:
Decoder
,java.io.Serializable
public final class CanonicalFast64CodeWordDecoder extends java.lang.Object implements Decoder, java.io.Serializable
A fast table-based decoder for canonical Huffman codes supporting only codes with limited (less than 64 bits) codewords. We use the technique described by Daniel S. Hirschberg and Debra A. Lelewer, “Efficient Decoding of Prefix Codes”, Comm. ACM, 33(4): 449−459, 1990.- See Also:
- Serialized Form
-
-
Constructor Summary
Constructors Constructor Description CanonicalFast64CodeWordDecoder(int[] codeWordLength, int[] symbol)
Creates a new codeword-based decoder using the given vector of codewords lengths and a symbol array.
-
Method Summary
All Methods Instance Methods Concrete Methods Modifier and Type Method Description int
decode(it.unimi.dsi.fastutil.booleans.BooleanIterator iterator)
Decodes the next symbol from the given boolean iterator.int
decode(InputBitStream ibs)
Decodes the next symbol from the given input bit stream.
-
-
-
Constructor Detail
-
CanonicalFast64CodeWordDecoder
public CanonicalFast64CodeWordDecoder(int[] codeWordLength, int[] symbol)
Creates a new codeword-based decoder using the given vector of codewords lengths and a symbol array.- Parameters:
codeWordLength
- a vector of nondecreasing codeword lengths suitable for a canonical code.symbol
- a parallel array of symbols corresponding to each codeword length.
-
-
Method Detail
-
decode
public int decode(it.unimi.dsi.fastutil.booleans.BooleanIterator iterator)
Description copied from interface:Decoder
Decodes the next symbol from the given boolean iterator.Note that
InputBitStream
implementsBooleanIterator
.
-
decode
public int decode(InputBitStream ibs) throws java.io.IOException
Description copied from interface:Decoder
Decodes the next symbol from the given input bit stream.Note that
InputBitStream
implementsBooleanIterator
.
-
-