Package org.apache.lucene.util.packed
Class AppendingPackedLongBuffer
java.lang.Object
org.apache.lucene.index.NumericDocValues
org.apache.lucene.util.LongValues
org.apache.lucene.util.packed.AppendingPackedLongBuffer
Utility class to buffer a list of signed longs in memory. This class only
supports appending and is optimized for non-negative numbers with a uniform distribution over a fixed (limited) range
-
Field Summary
Fields inherited from class org.apache.lucene.index.NumericDocValues
EMPTY -
Constructor Summary
ConstructorsConstructorDescriptionCreate anAppendingPackedLongBufferwith initialPageCount=16, pageSize=1024 and acceptableOverheadRatio=PackedInts.DEFAULTAppendingPackedLongBuffer(float acceptableOverheadRatio) Create anAppendingPackedLongBufferwith initialPageCount=16, pageSize=1024AppendingPackedLongBuffer(int initialPageCount, int pageSize, float acceptableOverheadRatio) -
Method Summary
Modifier and TypeMethodDescriptionfinal voidadd(long l) Append a value to this buffer.voidfreeze()Pack all pending values in this buffer.final longget(long index) Get value atindex.final intget(long index, long[] arr, int off, int len) Bulk get: read at least one and at mostlenlongs starting fromindexintoarr[off:off+len]and return the actual number of values that have been read.org.apache.lucene.util.packed.AbstractAppendingLongBuffer.Iteratoriterator()Return an iterator over the values of this buffer.longReturn the number of bytes used by this instance.final longsize()Get the number of values that have been added to the buffer.Methods inherited from class org.apache.lucene.util.LongValues
get
-
Constructor Details
-
AppendingPackedLongBuffer
public AppendingPackedLongBuffer(int initialPageCount, int pageSize, float acceptableOverheadRatio) - Parameters:
initialPageCount- the initial number of pagespageSize- the size of a single pageacceptableOverheadRatio- an acceptable overhead ratio per value
-
AppendingPackedLongBuffer
public AppendingPackedLongBuffer()Create anAppendingPackedLongBufferwith initialPageCount=16, pageSize=1024 and acceptableOverheadRatio=PackedInts.DEFAULT -
AppendingPackedLongBuffer
public AppendingPackedLongBuffer(float acceptableOverheadRatio) Create anAppendingPackedLongBufferwith initialPageCount=16, pageSize=1024
-
-
Method Details
-
size
public final long size()Get the number of values that have been added to the buffer. -
add
public final void add(long l) Append a value to this buffer. -
get
public final long get(long index) Description copied from class:LongValuesGet value atindex.- Specified by:
getin classLongValues
-
get
public final int get(long index, long[] arr, int off, int len) Bulk get: read at least one and at mostlenlongs starting fromindexintoarr[off:off+len]and return the actual number of values that have been read. -
iterator
public org.apache.lucene.util.packed.AbstractAppendingLongBuffer.Iterator iterator()Return an iterator over the values of this buffer. -
ramBytesUsed
public long ramBytesUsed()Return the number of bytes used by this instance. -
freeze
public void freeze()Pack all pending values in this buffer. Subsequent calls toadd(long)will fail.
-