Package it.unimi.dsi.sux4j.mph.codec
Class Codec.Huffman.Coder.Decoder
java.lang.Object
it.unimi.dsi.sux4j.mph.codec.Codec.Huffman.Coder.Decoder
- All Implemented Interfaces:
Codec.Decoder
,Serializable
- Enclosing class:
- Codec.Huffman.Coder
- See Also:
-
Constructor Summary
ConstructorDescriptionDecoder
(long[] lastCodeWordPlusOne, int[] howManyUpToBlock, byte[] shift, int escapeLength, int escapedSymbolLength, long[] symbol) -
Method Summary
Modifier and TypeMethodDescriptionlong
decode
(long value) Decodes a sequence of bits.void
dump
(ByteBuffer buffer) int
Returns the length in bit of an escaped symbol, or zero if there are no escaped symbols.int
Returns the length of the escape codeword, if it exists, or zero.long
numBits()
The number of bits used by this decoder.
-
Constructor Details
-
Decoder
public Decoder(long[] lastCodeWordPlusOne, int[] howManyUpToBlock, byte[] shift, int escapeLength, int escapedSymbolLength, long[] symbol)
-
-
Method Details
-
escapedSymbolLength
public int escapedSymbolLength()Description copied from interface:Codec.Decoder
Returns the length in bit of an escaped symbol, or zero if there are no escaped symbols.- Specified by:
escapedSymbolLength
in interfaceCodec.Decoder
- Returns:
- the length in bit of an escaped symbol, or zero if there are no escaped symbols.
-
escapeLength
public int escapeLength()Description copied from interface:Codec.Decoder
Returns the length of the escape codeword, if it exists, or zero.- Specified by:
escapeLength
in interfaceCodec.Decoder
- Returns:
- the escape codeword, if it exists, or zero.
-
decode
public long decode(long value) Description copied from interface:Codec.Decoder
Decodes a sequence of bits.If the first codeword appearing in the sequence is the escape codeword, this method returns −1 and the actual symbol must be retrieved by reading
Codec.Decoder.escapedSymbolLength()
further bits.This method assumes that the first bit of the code is the leftmost bit (i.e., the bit of index
Codec.Coder.maxCodewordLength()
− 1).- Specified by:
decode
in interfaceCodec.Decoder
- Parameters:
value
- a sequence of bits.- Returns:
- the symbol associated with the first codeword appearing in the sequence, or −1 if the codeword is an escape.
-
numBits
public long numBits()Description copied from interface:Codec.Decoder
The number of bits used by this decoder.- Specified by:
numBits
in interfaceCodec.Decoder
- Returns:
- the number of bits used by this decoder.
-
dump
-