public class SemiExternalGammaBigList extends AbstractLongBigList
This class is a semi-external LongBigList that
MG4J uses to access files containing frequencies.
Instead, this class accesses frequencies in their compressed forms, and provides entry points for random access to each long. At construction time, entry points are computed with a certain step, which is the number of longs accessible from each entry point, or, equivalently, the maximum number of longs that will be necessary to read to access a given long.
Warning: This class is not thread safe, and needs to be synchronised to be used in a multithreaded environment.
AbstractLongBigList.LongSubList| Modifier and Type | Field and Description |
|---|---|
static int |
DEFAULT_STEP |
| Constructor and Description |
|---|
SemiExternalGammaBigList(InputBitStream longs)
Creates a new semi-external list.
|
SemiExternalGammaBigList(InputBitStream longs,
int step,
long numLongs)
Creates a new semi-external list.
|
| Modifier and Type | Method and Description |
|---|---|
long |
getLong(long index) |
long |
size64() |
add, add, add, addAll, addAll, addAll, addAll, addAll, addAll, addAll, addElements, addElements, compareTo, contains, ensureIndex, ensureRestrictedIndex, equals, get, getElements, getLong, hashCode, indexOf, indexOf, iterator, lastIndexOf, lastIndexOf, listIterator, listIterator, listIterator, peek, peekLong, pop, popLong, push, push, rem, remove, remove, removeElements, removeLong, removeLong, set, set, set, size, size, size, subList, top, topLong, toStringadd, contains, containsAll, containsAll, isEmpty, longIterator, rem, remove, removeAll, removeAll, retainAll, retainAll, toArray, toArray, toArray, toLongArray, toLongArrayclearclone, finalize, getClass, notify, notifyAll, wait, wait, waitcontainsAll, longIterator, removeAll, retainAll, toArray, toArray, toLongArray, toLongArrayadd, clear, contains, containsAll, isEmpty, parallelStream, remove, removeAll, removeIf, retainAll, spliterator, stream, toArraypublic static final int DEFAULT_STEP
public SemiExternalGammaBigList(InputBitStream longs, int step, long numLongs) throws IOException
longs - a bit stream containing γ-encoded longs.step - the step used to build random-access entry points, or -1 to get DEFAULT_STEP; note that
a step causing more than 231 slots will be silently increased.numLongs - the overall number of offsets (i.e., the number of terms).IOExceptionpublic SemiExternalGammaBigList(InputBitStream longs) throws IOException
This quick-and-dirty constructor estimates the number of longs by checking
for an EOFException.
longs - a bit stream containing γ-encoded longs.IOException