Package com.googlecode.javaewah
Class BitCounter
- java.lang.Object
-
- com.googlecode.javaewah.BitCounter
-
- All Implemented Interfaces:
BitmapStorage
public final class BitCounter extends Object implements BitmapStorage
BitCounter is a fake bitset data structure. Instead of storing the actual data, it only records the number of set bits.- Since:
- 0.4.0
- Author:
- David McIntosh
-
-
Constructor Summary
Constructors Constructor Description BitCounter()
-
Method Summary
All Methods Instance Methods Concrete Methods Modifier and Type Method Description voidaddLiteralWord(long newData)Virtually add literal words directly to the bitmapvoidaddStreamOfEmptyWords(boolean v, long number)virtually add many zeroes or ones.voidaddStreamOfLiteralWords(com.googlecode.javaewah.Buffer buffer, int start, int number)virtually add several literal words.voidaddStreamOfNegatedLiteralWords(com.googlecode.javaewah.Buffer buffer, int start, int number)virtually add several negated literal words.voidaddWord(long newData)Virtually add words directly to the bitmapvoidclear()Empties the container.intgetCount()As you act on this class, it records the number of set (true) bits.voidsetSizeInBitsWithinLastWord(int bits)should directly set the sizeInBits field, but is effectively ignored in this class.
-
-
-
Method Detail
-
addWord
public void addWord(long newData)
Virtually add words directly to the bitmap- Specified by:
addWordin interfaceBitmapStorage- Parameters:
newData- the word
-
addLiteralWord
public void addLiteralWord(long newData)
Virtually add literal words directly to the bitmap- Specified by:
addLiteralWordin interfaceBitmapStorage- Parameters:
newData- the word
-
addStreamOfLiteralWords
public void addStreamOfLiteralWords(com.googlecode.javaewah.Buffer buffer, int start, int number)virtually add several literal words.- Specified by:
addStreamOfLiteralWordsin interfaceBitmapStorage- Parameters:
buffer- the buffer wrapping the literal wordsstart- the starting point in the arraynumber- the number of literal words to add
-
addStreamOfEmptyWords
public void addStreamOfEmptyWords(boolean v, long number)virtually add many zeroes or ones.- Specified by:
addStreamOfEmptyWordsin interfaceBitmapStorage- Parameters:
v- zeros or onesnumber- how many to words add
-
addStreamOfNegatedLiteralWords
public void addStreamOfNegatedLiteralWords(com.googlecode.javaewah.Buffer buffer, int start, int number)virtually add several negated literal words.- Specified by:
addStreamOfNegatedLiteralWordsin interfaceBitmapStorage- Parameters:
buffer- the buffer wrapping the literal wordsstart- the starting point in the arraynumber- the number of literal words to add
-
clear
public void clear()
Description copied from interface:BitmapStorageEmpties the container.- Specified by:
clearin interfaceBitmapStorage
-
getCount
public int getCount()
As you act on this class, it records the number of set (true) bits.- Returns:
- number of set bits
-
setSizeInBitsWithinLastWord
public void setSizeInBitsWithinLastWord(int bits)
should directly set the sizeInBits field, but is effectively ignored in this class.- Specified by:
setSizeInBitsWithinLastWordin interfaceBitmapStorage- Parameters:
bits- number of bits
-
-