public final class IteratingBufferedRunningLengthWord32 extends Object implements IteratingRLW32, Cloneable
Constructor and Description |
---|
IteratingBufferedRunningLengthWord32(EWAHCompressedBitmap32 bitmap)
Instantiates a new iterating buffered running length word.
|
IteratingBufferedRunningLengthWord32(EWAHIterator32 iterator)
Instantiates a new iterating buffered running length word.
|
Modifier and Type | Method and Description |
---|---|
IteratingBufferedRunningLengthWord32 |
clone() |
void |
discardFirstWords(int x)
Discard first words, iterating to the next running length word if
needed.
|
void |
discardRunningWords()
Discard all running words
|
void |
discharge(BitmapStorage32 container)
Write out the remaining words
|
int |
discharge(BitmapStorage32 container,
int max)
Write out up to max words, returns how many were written
|
protected static void |
discharge(BufferedRunningLengthWord32 initialWord,
EWAHIterator32 iterator,
BitmapStorage32 container)
For internal use.
|
void |
dischargeAsEmpty(BitmapStorage32 container)
Write out the remain words, transforming them to zeroes.
|
int |
dischargeNegated(BitmapStorage32 container,
int max)
Write out up to max words (negated), returns how many were written
|
int |
getLiteralWordAt(int index)
Get the nth literal word for the current running length word
|
int |
getNumberOfLiteralWords()
Gets the number of literal words for the current running length word.
|
boolean |
getRunningBit()
Gets the running bit.
|
int |
getRunningLength()
Gets the running length.
|
boolean |
next()
Move to the next RunningLengthWord
|
int |
size()
Size in uncompressed words of the current running length word.
|
void |
writeLiteralWords(int numWords,
BitmapStorage32 container)
write the first N literal words to the target bitmap.
|
void |
writeNegatedLiteralWords(int numWords,
BitmapStorage32 container)
write the first N literal words (negated) to the target bitmap.
|
public IteratingBufferedRunningLengthWord32(EWAHIterator32 iterator)
iterator
- iteratorpublic IteratingBufferedRunningLengthWord32(EWAHCompressedBitmap32 bitmap)
bitmap
- over which we want to iteratepublic void discardFirstWords(int x)
discardFirstWords
in interface IteratingRLW32
x
- the xpublic void discardRunningWords()
IteratingRLW32
discardRunningWords
in interface IteratingRLW32
public int discharge(BitmapStorage32 container, int max)
container
- target for writesmax
- maximal number of writespublic int dischargeNegated(BitmapStorage32 container, int max)
container
- target for writesmax
- maximal number of writespublic boolean next()
next
in interface IteratingRLW32
public void dischargeAsEmpty(BitmapStorage32 container)
container
- target for writespublic void discharge(BitmapStorage32 container)
container
- target for writespublic int getLiteralWordAt(int index)
getLiteralWordAt
in interface IteratingRLW32
index
- zero based indexpublic int getNumberOfLiteralWords()
getNumberOfLiteralWords
in interface IteratingRLW32
public boolean getRunningBit()
getRunningBit
in interface IteratingRLW32
public int getRunningLength()
getRunningLength
in interface IteratingRLW32
public int size()
size
in interface IteratingRLW32
public void writeLiteralWords(int numWords, BitmapStorage32 container)
numWords
- number of words to be writtencontainer
- where we write the datapublic void writeNegatedLiteralWords(int numWords, BitmapStorage32 container)
numWords
- number of words to be writtencontainer
- where we write the dataprotected static void discharge(BufferedRunningLengthWord32 initialWord, EWAHIterator32 iterator, BitmapStorage32 container)
initialWord
- the initial worditerator
- the iteratorcontainer
- the containerpublic IteratingBufferedRunningLengthWord32 clone() throws CloneNotSupportedException
clone
in interface IteratingRLW32
clone
in class Object
CloneNotSupportedException
- this should not be thrown in theoryCopyright © 2016. All Rights Reserved.