Package edu.berkeley.nlp.lm.bits
Class BitStream
- java.lang.Object
-
- edu.berkeley.nlp.lm.bits.BitStream
-
public final class BitStream extends java.lang.ObjectWraps a portion of a long[] array with iterator-like functionality over a stream of bits.- Author:
- adampauls
-
-
Method Summary
All Methods Instance Methods Concrete Methods Modifier and Type Method Description voidadvance(int n)Advances without returning any bits.booleanfinished()voidmark()Sets a mark at the current bit that can be returned to using rewindToMark.longnext(int n)Read and return next n bits.booleannextBit()intnextConsecutiveZeros()Reads a string of zeros followed by a 1.intnumBitsLeft()voidrewind(int i)voidrewindToMark()
-
-
-
Constructor Detail
-
BitStream
public BitStream(LongArray data, long start, int startBit, int numBits)
-
-
Method Detail
-
nextBit
public boolean nextBit()
-
nextConsecutiveZeros
public int nextConsecutiveZeros()
Reads a string of zeros followed by a 1.- Returns:
- the number of consecutive zeros (plus 1)
-
next
public long next(int n)
Read and return next n bits.- Parameters:
n-- Returns:
-
finished
public boolean finished()
-
rewind
public void rewind(int i)
-
numBitsLeft
public int numBitsLeft()
-
advance
public void advance(int n)
Advances without returning any bits.- Parameters:
n-
-
mark
public void mark()
Sets a mark at the current bit that can be returned to using rewindToMark.
-
rewindToMark
public void rewindToMark()
-
-