Package org.apache.lucene.util.packed
Class AppendingDeltaPackedLongBuffer
- java.lang.Object
-
- org.apache.lucene.index.NumericDocValues
-
- org.apache.lucene.util.LongValues
-
- org.apache.lucene.util.packed.AppendingDeltaPackedLongBuffer
-
public final class AppendingDeltaPackedLongBuffer extends LongValues
Utility class to buffer a list of signed longs in memory. This class only supports appending and is optimized for the case where values are close to each other.
-
-
Field Summary
-
Fields inherited from class org.apache.lucene.index.NumericDocValues
EMPTY
-
-
Constructor Summary
Constructors Constructor Description AppendingDeltaPackedLongBuffer()
Create anAppendingDeltaPackedLongBuffer
with initialPageCount=16, pageSize=1024 and acceptableOverheadRatio=PackedInts.DEFAULT
AppendingDeltaPackedLongBuffer(float acceptableOverheadRatio)
Create anAppendingDeltaPackedLongBuffer
with initialPageCount=16, pageSize=1024AppendingDeltaPackedLongBuffer(int initialPageCount, int pageSize, float acceptableOverheadRatio)
-
Method Summary
All Methods Instance Methods Concrete Methods Modifier and Type Method Description void
add(long l)
Append a value to this buffer.void
freeze()
Pack all pending values in this buffer.long
get(long index)
Get value atindex
.int
get(long index, long[] arr, int off, int len)
Bulk get: read at least one and at mostlen
longs starting fromindex
intoarr[off:off+len]
and return the actual number of values that have been read.org.apache.lucene.util.packed.AbstractAppendingLongBuffer.Iterator
iterator()
Return an iterator over the values of this buffer.long
ramBytesUsed()
Return the number of bytes used by this instance.long
size()
Get the number of values that have been added to the buffer.-
Methods inherited from class org.apache.lucene.util.LongValues
get
-
-
-
-
Constructor Detail
-
AppendingDeltaPackedLongBuffer
public AppendingDeltaPackedLongBuffer(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
-
AppendingDeltaPackedLongBuffer
public AppendingDeltaPackedLongBuffer()
Create anAppendingDeltaPackedLongBuffer
with initialPageCount=16, pageSize=1024 and acceptableOverheadRatio=PackedInts.DEFAULT
-
AppendingDeltaPackedLongBuffer
public AppendingDeltaPackedLongBuffer(float acceptableOverheadRatio)
Create anAppendingDeltaPackedLongBuffer
with initialPageCount=16, pageSize=1024
-
-
Method Detail
-
ramBytesUsed
public long ramBytesUsed()
Return the number of bytes used by this instance.
-
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:LongValues
Get value atindex
.- Specified by:
get
in classLongValues
-
get
public final int get(long index, long[] arr, int off, int len)
Bulk get: read at least one and at mostlen
longs starting fromindex
intoarr[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.
-
freeze
public void freeze()
Pack all pending values in this buffer. Subsequent calls toadd(long)
will fail.
-
-