Class ThresholdFuncBitmap32
java.lang.Object
com.googlecode.javaewah32.symmetric.UpdateableBitmapFunction32
com.googlecode.javaewah32.symmetric.ThresholdFuncBitmap32
A threshold Boolean function returns true if the number of true values exceed
a threshold. It is a symmetric Boolean function.
This class implements an algorithm described in the following paper:
Owen Kaser and Daniel Lemire, Compressed bitmap indexes: beyond unions and intersections
http://arxiv.org/abs/1402.4466
It is not thread safe: you should use one object per thread.
- Since:
- 0.8.2
- See Also:
-
Field Summary
FieldsModifier and TypeFieldDescriptionprivate final int[]private int[]private intprivate final intprivate static final int[]Fields inherited from class com.googlecode.javaewah32.symmetric.UpdateableBitmapFunction32
b, hammingWeight, litWeight, litwlist, rw -
Constructor Summary
ConstructorsConstructorDescriptionThresholdFuncBitmap32(int min) Construction a threshold function with a given threshold -
Method Summary
Modifier and TypeMethodDescriptionprivate voidandLiterals(BitmapStorage32 out, int runBegin, int runLength) voiddispatch(BitmapStorage32 out, int runBegin, int runend) Writes out the answer.private voidgeneralLiterals(int deficit, BitmapStorage32 out, int runBegin, int runLength) private voidorLiterals(BitmapStorage32 out, int runBegin, int runLength) private intthreshold2buf(int t, int[] buf, int bufUsed) private static intthreshold3(int t, int[] buffers, int bufUsed) private intthreshold4(int t, int[] buf, int bufUsed) Methods inherited from class com.googlecode.javaewah32.symmetric.UpdateableBitmapFunction32
clearLiteral, fillWithLiterals, getLiterals, getNumberOfLiterals, resize, setLiteral, setOne, setZero
-
Field Details
-
min
private final int min -
buffers
private int[] buffers -
bufferUsed
private int bufferUsed -
bufcounters
private final int[] bufcounters -
zeroes64
private static final int[] zeroes64
-
-
Constructor Details
-
ThresholdFuncBitmap32
public ThresholdFuncBitmap32(int min) Construction a threshold function with a given threshold- Parameters:
min- threshold
-
-
Method Details
-
dispatch
Description copied from class:UpdateableBitmapFunction32Writes out the answer.- Specified by:
dispatchin classUpdateableBitmapFunction32- Parameters:
out- output bufferrunBegin- beginning of the runrunend- end of the run
-
threshold2buf
private int threshold2buf(int t, int[] buf, int bufUsed) -
threshold3
private static int threshold3(int t, int[] buffers, int bufUsed) -
threshold4
private int threshold4(int t, int[] buf, int bufUsed) -
orLiterals
-
andLiterals
-
generalLiterals
-