Package org.apache.druid.segment
Class BitmapOffset
- java.lang.Object
-
- org.apache.druid.segment.data.Offset
-
- org.apache.druid.segment.BitmapOffset
-
- All Implemented Interfaces:
Cloneable
,HotLoopCallee
,ReadableOffset
public class BitmapOffset extends Offset
-
-
Method Summary
All Methods Static Methods Instance Methods Concrete Methods Modifier and Type Method Description Offset
clone()
ReadableOffset
getBaseReadableOffset()
Returns the same offset ("this") or a readable "view" of this offset, which always returns the same value fromReadableOffset.getOffset()
, as this offset.int
getOffset()
static org.roaringbitmap.IntIterator
getReverseBitmapOffsetIterator(ImmutableBitmap bitmapIndex)
void
increment()
Move to next offsetvoid
inspectRuntimeShape(RuntimeShapeInspector inspector)
Implementations of this method should callinspector.visit()
with all fields of this class, which meet two conditions: 1.static BitmapOffset
of(ImmutableBitmap bitmapIndex, boolean descending, long numRows)
void
reset()
Resets the Offset to the position it was created or cloned with.boolean
withinBounds()
Check if current offset position is within the valid range
-
-
-
Method Detail
-
getReverseBitmapOffsetIterator
public static org.roaringbitmap.IntIterator getReverseBitmapOffsetIterator(ImmutableBitmap bitmapIndex)
-
of
public static BitmapOffset of(ImmutableBitmap bitmapIndex, boolean descending, long numRows)
-
increment
public void increment()
Description copied from class:Offset
Move to next offset
-
withinBounds
public boolean withinBounds()
Description copied from class:Offset
Check if current offset position is within the valid range- Specified by:
withinBounds
in classOffset
-
reset
public void reset()
Description copied from class:Offset
Resets the Offset to the position it was created or cloned with.
-
getBaseReadableOffset
public ReadableOffset getBaseReadableOffset()
Description copied from class:Offset
Returns the same offset ("this") or a readable "view" of this offset, which always returns the same value fromReadableOffset.getOffset()
, as this offset. This method is useful for "unwrapping" such offsets asFilteredOffset
and reduce reference indirection, when onlyReadableOffset
API is needed.- Specified by:
getBaseReadableOffset
in classOffset
-
getOffset
public int getOffset()
-
inspectRuntimeShape
public void inspectRuntimeShape(RuntimeShapeInspector inspector)
Description copied from interface:HotLoopCallee
Implementations of this method should callinspector.visit()
with all fields of this class, which meet two conditions: 1. They are used in methods of this class, annotated withCalledFromHotLoop
2. They are either: a. Nullable objects b. Instances of HotLoopCallee c. Objects, which don't always have a specific class in runtime. For example, a field of typeSet
could beHashSet
orTreeSet
in runtime, depending on how this instance (the instance on which inspectRuntimeShape() is called) is configured. d. ByteBuffer or similar objects, where byte order matters e. boolean flags, affecting branch taking f. Arrays of objects, meeting any of conditions a-e.
-
-