com.googlecode.javaewah
Class NonEmptyVirtualStorage

java.lang.Object
  extended by com.googlecode.javaewah.NonEmptyVirtualStorage
All Implemented Interfaces:
BitmapStorage

public class NonEmptyVirtualStorage
extends Object
implements BitmapStorage

This is a BitmapStorage that can be used to determine quickly if the result of an operation is non-trivial... that is, whether there will be at least on set bit.

Since:
0.4.2
Author:
Daniel Lemire

Constructor Summary
NonEmptyVirtualStorage()
           
 
Method Summary
 void add(long newdata)
          If the word to be added is non-zero, a NonEmptyException exception is thrown.
 void addStreamOfEmptyWords(boolean v, long number)
          If the boolean value is true and number>0, then it throws a NonEmptyException exception, otherwise, nothing happens.
 void addStreamOfLiteralWords(long[] data, int start, int number)
          throws a NonEmptyException exception when number > 0
 void addStreamOfNegatedLiteralWords(long[] data, int start, int number)
          throws a NonEmptyException exception when number > 0
 void setSizeInBits(int bits)
          Does nothing.
 
Methods inherited from class java.lang.Object
clone, equals, finalize, getClass, hashCode, notify, notifyAll, toString, wait, wait, wait
 

Constructor Detail

NonEmptyVirtualStorage

public NonEmptyVirtualStorage()
Method Detail

add

public void add(long newdata)
If the word to be added is non-zero, a NonEmptyException exception is thrown.

Specified by:
add in interface BitmapStorage
Parameters:
newdata - the word
See Also:
BitmapStorage.add(long)

addStreamOfLiteralWords

public void addStreamOfLiteralWords(long[] data,
                                    int start,
                                    int number)
throws a NonEmptyException exception when number > 0

Specified by:
addStreamOfLiteralWords in interface BitmapStorage
Parameters:
data - the literal words
start - the starting point in the array
number - the number of literal words to add
See Also:
com.googlecode.javaewah.BitmapStorage#addStreamOfLiteralWords(long[], long, long)

addStreamOfEmptyWords

public void addStreamOfEmptyWords(boolean v,
                                  long number)
If the boolean value is true and number>0, then it throws a NonEmptyException exception, otherwise, nothing happens.

Specified by:
addStreamOfEmptyWords in interface BitmapStorage
Parameters:
v - zeros or ones
number - how many to words add
See Also:
BitmapStorage.addStreamOfEmptyWords(boolean, long)

addStreamOfNegatedLiteralWords

public void addStreamOfNegatedLiteralWords(long[] data,
                                           int start,
                                           int number)
throws a NonEmptyException exception when number > 0

Specified by:
addStreamOfNegatedLiteralWords in interface BitmapStorage
Parameters:
data - the literal words
start - the starting point in the array
number - the number of literal words to add
See Also:
com.googlecode.javaewah.BitmapStorage#addStreamOfNegatedLiteralWords(long[], long, long)

setSizeInBits

public void setSizeInBits(int bits)
Does nothing.

Specified by:
setSizeInBits in interface BitmapStorage
Parameters:
bits - number of bits
See Also:
BitmapStorage.setSizeInBits(int)


Copyright © 2013. All Rights Reserved.