All Downloads are FREE. Search and download functionalities are using the official Maven repository.

org.roaringbitmap.RelativeRangeConsumer Maven / Gradle / Ivy

Go to download

Roaring bitmaps are compressed bitmaps (also called bitsets) which tend to outperform conventional compressed bitmaps such as WAH or Concise.

There is a newer version: 1.3.0
Show newest version
package org.roaringbitmap;

/**
 * A consumer interface to process ranges of value contained in a bitmap using relative offsets.
 * 

* All positions are relative offsets to a start position given as an argument to methods * that expect a range consumer. In other words, the bitmap global index for every position * in the methods provided by this interface is start + relativePos. * (For 64-bit bitmaps start may be a long and so would thus start + relativePos.) *

* A "present" value at a global position pos is one where bitmap.contains(pos) == true. * An "absent" value at a global position pos is one where bitmap.contains(pos) == false. */ public interface RelativeRangeConsumer { /** * Consume a single present value at relativePos. */ void acceptPresent(int relativePos); /** * Consume a single absent value at relativePos. */ void acceptAbsent(int relativePos); /** * Consume consecutive present values in the range [relativeFrom, relativeTo). */ void acceptAllPresent(int relativeFrom, int relativeTo); /** * Consume consecutive absent values in the range [relativeFrom, relativeTo). */ void acceptAllAbsent(int relativeFrom, int relativeTo); }





© 2015 - 2024 Weber Informatics LLC | Privacy Policy