Class UpdateableBitmapFunction
- java.lang.Object
-
- com.googlecode.javaewah.symmetric.UpdateableBitmapFunction
-
- Direct Known Subclasses:
ThresholdFuncBitmap
public abstract class UpdateableBitmapFunction extends java.lang.Object
This is a Java specification for an "updatable" Boolean function meant to run over EWAH bitmaps. Reference: Daniel Lemire, Owen Kaser, Kamel Aouiche, Sorting improves word-aligned bitmap indexes. Data & Knowledge Engineering 69 (1), pages 3-28, 2010.- Since:
- 0.8.0
-
-
Field Summary
Fields Modifier and Type Field Description (package private) boolean[]
b
(package private) int
hammingWeight
(package private) int
litWeight
(package private) BitSet
litwlist
(package private) EWAHPointer[]
rw
-
Constructor Summary
Constructors Constructor Description UpdateableBitmapFunction()
-
Method Summary
All Methods Instance Methods Abstract Methods Concrete Methods Modifier and Type Method Description void
clearLiteral(int pos)
abstract void
dispatch(BitmapStorage out, int runBegin, int runEnd)
Writes out the answer.void
fillWithLiterals(java.util.List<EWAHPointer> container)
append to the list the literal words as EWAHPointerjava.lang.Iterable<EWAHPointer>
getLiterals()
Goes through the literals.int
getNumberOfLiterals()
void
resize(int newsize)
void
setLiteral(int pos)
void
setOne(int pos)
void
setZero(int pos)
-
-
-
Field Detail
-
rw
EWAHPointer[] rw
-
hammingWeight
int hammingWeight
-
litWeight
int litWeight
-
b
boolean[] b
-
litwlist
final BitSet litwlist
-
-
Method Detail
-
getNumberOfLiterals
public final int getNumberOfLiterals()
- Returns:
- the current number of literal words
-
getLiterals
public final java.lang.Iterable<EWAHPointer> getLiterals()
Goes through the literals.- Returns:
- an iterator
-
fillWithLiterals
public final void fillWithLiterals(java.util.List<EWAHPointer> container)
append to the list the literal words as EWAHPointer- Parameters:
container
- where we write
-
resize
public final void resize(int newsize)
- Parameters:
newsize
- the number of inputs
-
setLiteral
public void setLiteral(int pos)
- Parameters:
pos
- position of a literal
-
clearLiteral
public void clearLiteral(int pos)
- Parameters:
pos
- position where a literal was removed
-
setZero
public final void setZero(int pos)
- Parameters:
pos
- position where a zero word was added
-
setOne
public final void setOne(int pos)
- Parameters:
pos
- position were a 11...1 word was added
-
dispatch
public abstract void dispatch(BitmapStorage out, int runBegin, int runEnd)
Writes out the answer.- Parameters:
out
- output bufferrunBegin
- beginning of the runrunEnd
- end of the run
-
-