public final class IteratorAggregation
extends java.lang.Object
Modifier and Type | Field and Description |
---|---|
static int |
DEFAULT_MAX_BUF_SIZE
An optimization option.
|
Modifier | Constructor and Description |
---|---|
private |
IteratorAggregation()
Private constructor to prevent instantiation
|
Modifier and Type | Method and Description |
---|---|
(package private) static void |
andToContainer(BitmapStorage container,
int desiredrlwcount,
IteratingRLW rlwi,
IteratingRLW rlwj) |
(package private) static void |
andToContainer(BitmapStorage container,
IteratingRLW rlwi,
IteratingRLW rlwj) |
static IteratingRLW |
bufferedand(int bufSize,
IteratingRLW... al)
Aggregate the iterators using a bitmap buffer.
|
static IteratingRLW |
bufferedand(IteratingRLW... al)
Aggregate the iterators using a bitmap buffer.
|
static IteratingRLW |
bufferedor(int bufSize,
IteratingRLW... al)
Aggregate the iterators using a bitmap buffer.
|
static IteratingRLW |
bufferedor(IteratingRLW... al)
Aggregate the iterators using a bitmap buffer.
|
static IteratingRLW |
bufferedxor(int bufSize,
IteratingRLW... al)
Aggregate the iterators using a bitmap buffer.
|
static IteratingRLW |
bufferedxor(IteratingRLW... al)
Aggregate the iterators using a bitmap buffer.
|
protected static long |
discharge(BitmapStorage container,
IteratingRLW i,
long max)
Write out up to max words, returns how many were written
|
protected static void |
dischargeAsEmpty(BitmapStorage container,
IteratingRLW i)
Write out the content of the iterator, but as if it were all zeros.
|
protected static long |
dischargeNegated(BitmapStorage container,
IteratingRLW i,
long max)
Write out up to max negated words, returns how many were written
|
protected static int |
inplaceand(long[] bitmap,
IteratingRLW i) |
protected static int |
inplaceor(long[] bitmap,
IteratingRLW i) |
protected static int |
inplacexor(long[] bitmap,
IteratingRLW i) |
static IteratingRLW |
not(IteratingRLW x) |
static void |
xorToContainer(BitmapStorage container,
int desiredrlwcount,
IteratingRLW rlwi,
IteratingRLW rlwj)
Compute the first few words of the XOR aggregate between two
iterators.
|
public static final int DEFAULT_MAX_BUF_SIZE
private IteratorAggregation()
public static IteratingRLW not(IteratingRLW x)
x
- iterator to negatepublic static IteratingRLW bufferedand(IteratingRLW... al)
al
- set of iterators to aggregatepublic static IteratingRLW bufferedand(int bufSize, IteratingRLW... al)
al
- set of iterators to aggregatebufSize
- size of the internal buffer used by the iterator in
64-bit words (per input iterator)public static IteratingRLW bufferedor(IteratingRLW... al)
al
- set of iterators to aggregatepublic static IteratingRLW bufferedor(int bufSize, IteratingRLW... al)
al
- iterators to aggregatebufSize
- size of the internal buffer used by the iterator in
64-bit wordspublic static IteratingRLW bufferedxor(IteratingRLW... al)
al
- set of iterators to aggregatepublic static IteratingRLW bufferedxor(int bufSize, IteratingRLW... al)
al
- iterators to aggregatebufSize
- size of the internal buffer used by the iterator in 64-bit wordsprotected static void dischargeAsEmpty(BitmapStorage container, IteratingRLW i)
container
- where we writei
- the iteratorprotected static long discharge(BitmapStorage container, IteratingRLW i, long max)
container
- target for writesi
- source of datamax
- maximal number of writesprotected static long dischargeNegated(BitmapStorage container, IteratingRLW i, long max)
container
- target for writesi
- source of datamax
- maximal number of writesstatic void andToContainer(BitmapStorage container, int desiredrlwcount, IteratingRLW rlwi, IteratingRLW rlwj)
static void andToContainer(BitmapStorage container, IteratingRLW rlwi, IteratingRLW rlwj)
public static void xorToContainer(BitmapStorage container, int desiredrlwcount, IteratingRLW rlwi, IteratingRLW rlwj)
container
- where to writedesiredrlwcount
- number of words to be written (max)rlwi
- first iterator to aggregaterlwj
- second iterator to aggregateprotected static int inplaceor(long[] bitmap, IteratingRLW i)
protected static int inplacexor(long[] bitmap, IteratingRLW i)
protected static int inplaceand(long[] bitmap, IteratingRLW i)