com.googlecode.javaewah32
Class IteratorAggregation32

java.lang.Object
  extended by com.googlecode.javaewah32.IteratorAggregation32

public class IteratorAggregation32
extends Object

Set of helper functions to aggregate bitmaps.


Field Summary
static int DEFAULTMAXBUFSIZE
          An optimization option.
 
Constructor Summary
IteratorAggregation32()
           
 
Method Summary
static IteratingRLW32 bufferedand(int bufsize, IteratingRLW32... al)
          Aggregate the iterators using a bitmap buffer.
static IteratingRLW32 bufferedand(IteratingRLW32... al)
          Aggregate the iterators using a bitmap buffer.
static IteratingRLW32 bufferedor(int bufsize, IteratingRLW32... al)
          Aggregate the iterators using a bitmap buffer.
static IteratingRLW32 bufferedor(IteratingRLW32... al)
          Aggregate the iterators using a bitmap buffer.
static IteratingRLW32 bufferedxor(int bufsize, IteratingRLW32... al)
          Aggregate the iterators using a bitmap buffer.
static IteratingRLW32 bufferedxor(IteratingRLW32... al)
          Aggregate the iterators using a bitmap buffer.
protected static int discharge(BitmapStorage32 container, IteratingRLW32 i, int max)
          Write out up to max words, returns how many were written
protected static void dischargeAsEmpty(BitmapStorage32 container, IteratingRLW32 i)
          Write out the content of the iterator, but as if it were all zeros.
protected static int dischargeNegated(BitmapStorage32 container, IteratingRLW32 i, int max)
          Write out up to max negated words, returns how many were written
protected static int inplaceand(int[] bitmap, IteratingRLW32 i)
           
protected static int inplaceor(int[] bitmap, IteratingRLW32 i)
           
protected static int inplacexor(int[] bitmap, IteratingRLW32 i)
           
static IteratingRLW32 not(IteratingRLW32 x)
           
static void xorToContainer(BitmapStorage32 container, int desiredrlwcount, IteratingRLW32 rlwi, IteratingRLW32 rlwj)
          Compute the first few words of the XOR aggregate between two iterators.
 
Methods inherited from class java.lang.Object
clone, equals, finalize, getClass, hashCode, notify, notifyAll, toString, wait, wait, wait
 

Field Detail

DEFAULTMAXBUFSIZE

public static final int DEFAULTMAXBUFSIZE
An optimization option. Larger values may improve speed, but at the expense of memory.

See Also:
Constant Field Values
Constructor Detail

IteratorAggregation32

public IteratorAggregation32()
Method Detail

not

public static IteratingRLW32 not(IteratingRLW32 x)
Parameters:
x - iterator to negate
Returns:
negated version of the iterator

bufferedand

public static IteratingRLW32 bufferedand(IteratingRLW32... al)
Aggregate the iterators using a bitmap buffer.

Parameters:
al - iterators to aggregate
Returns:
and aggregate

bufferedand

public static IteratingRLW32 bufferedand(int bufsize,
                                         IteratingRLW32... al)
Aggregate the iterators using a bitmap buffer.

Parameters:
al - iterators to aggregate
bufsize - size of the internal buffer used by the iterator in 64-bit words
Returns:
and aggregate

bufferedor

public static IteratingRLW32 bufferedor(IteratingRLW32... al)
Aggregate the iterators using a bitmap buffer.

Parameters:
al - iterators to aggregate
Returns:
or aggregate

bufferedor

public static IteratingRLW32 bufferedor(int bufsize,
                                        IteratingRLW32... al)
Aggregate the iterators using a bitmap buffer.

Parameters:
al - iterators to aggregate
bufsize - size of the internal buffer used by the iterator in 64-bit words
Returns:
or aggregate

bufferedxor

public static IteratingRLW32 bufferedxor(IteratingRLW32... al)
Aggregate the iterators using a bitmap buffer.

Parameters:
al - iterators to aggregate
Returns:
xor aggregate

bufferedxor

public static IteratingRLW32 bufferedxor(int bufsize,
                                         IteratingRLW32... al)
Aggregate the iterators using a bitmap buffer.

Parameters:
al - iterators to aggregate
bufsize - size of the internal buffer used by the iterator in 64-bit words
Returns:
xor aggregate

dischargeAsEmpty

protected static void dischargeAsEmpty(BitmapStorage32 container,
                                       IteratingRLW32 i)
Write out the content of the iterator, but as if it were all zeros.

Parameters:
container - where we write
i - the iterator

discharge

protected static int discharge(BitmapStorage32 container,
                               IteratingRLW32 i,
                               int max)
Write out up to max words, returns how many were written

Parameters:
container - target for writes
i - source of data
max - maximal number of writes
Returns:
how many written

dischargeNegated

protected static int dischargeNegated(BitmapStorage32 container,
                                      IteratingRLW32 i,
                                      int max)
Write out up to max negated words, returns how many were written

Parameters:
container - target for writes
i - source of data
max - maximal number of writes
Returns:
how many written

xorToContainer

public static void xorToContainer(BitmapStorage32 container,
                                  int desiredrlwcount,
                                  IteratingRLW32 rlwi,
                                  IteratingRLW32 rlwj)
Compute the first few words of the XOR aggregate between two iterators.

Parameters:
container - where to write
desiredrlwcount - number of words to be written (max)
rlwi - first iterator to aggregate
rlwj - second iterator to aggregate

inplaceor

protected static int inplaceor(int[] bitmap,
                               IteratingRLW32 i)

inplacexor

protected static int inplacexor(int[] bitmap,
                                IteratingRLW32 i)

inplaceand

protected static int inplaceand(int[] bitmap,
                                IteratingRLW32 i)


Copyright © 2014. All Rights Reserved.