EWAHBoolArray 0.8.0
A compressed bitmap class in C++
Loading...
Searching...
No Matches
ewah::BufferedRunningLengthWord< uword > Class Template Reference

Same as RunningLengthWord, except that the values are buffered for quick access. More...

#include <runninglengthword.h>

Public Types

enum  { wordinbits = sizeof(uword) * 8 }
 

Public Member Functions

 BufferedRunningLengthWord (const uword &data, EWAHBoolArrayRawIterator< uword > *p)
 
 BufferedRunningLengthWord (const RunningLengthWord< uword > &p)
 
void discharge (EWAHBoolArray< uword > &container)
 
size_t dischargeCount ()
 
size_t dischargeCountNegated ()
 
size_t dischargeCount (size_t max, size_t *count)
 
size_t dischargeCountNegated (size_t max, size_t *count)
 
bool nonzero_discharge ()
 
size_t discharge (EWAHBoolArray< uword > &container, size_t max)
 
bool nonzero_discharge (size_t max, size_t &index)
 
size_t dischargeNegated (EWAHBoolArray< uword > &container, size_t max)
 
bool nonzero_dischargeNegated (size_t max, size_t &index)
 
uword getLiteralWordAt (size_t index)
 
void writeLiteralWords (size_t numWords, EWAHBoolArray< uword > &container)
 
void writeNegatedLiteralWords (size_t numWords, EWAHBoolArray< uword > &container)
 
void discardRunningWords ()
 
void discardRunningWordsWithReload ()
 
bool next ()
 
void read (const uword &data)
 
bool getRunningBit () const
 Which bit is being repeated?
 
void discardFirstWords (uword x)
 
uword getRunningLength () const
 how many words should be filled by the running bit (see previous method)
 
uword getNumberOfLiteralWords () const
 followed by how many literal words?
 
uword size () const
 Total of getRunningLength() and getNumberOfLiteralWords()
 
void discardLiteralWordsWithReload (uword x)
 
void discardFirstWordsWithReload (uword x)
 

Detailed Description

template<class uword = uint32_t>
class ewah::BufferedRunningLengthWord< uword >

Same as RunningLengthWord, except that the values are buffered for quick access.

Definition at line 205 of file runninglengthword.h.

Member Enumeration Documentation

◆ anonymous enum

template<class uword = uint32_t>
anonymous enum

Definition at line 207 of file runninglengthword.h.

Constructor & Destructor Documentation

◆ BufferedRunningLengthWord() [1/2]

template<class uword = uint32_t>
ewah::BufferedRunningLengthWord< uword >::BufferedRunningLengthWord ( const uword & data,
EWAHBoolArrayRawIterator< uword > * p )
inline

Definition at line 209 of file runninglengthword.h.

◆ BufferedRunningLengthWord() [2/2]

template<class uword = uint32_t>
ewah::BufferedRunningLengthWord< uword >::BufferedRunningLengthWord ( const RunningLengthWord< uword > & p)
inline

Definition at line 217 of file runninglengthword.h.

Member Function Documentation

◆ discardFirstWords()

template<class uword = uint32_t>
void ewah::BufferedRunningLengthWord< uword >::discardFirstWords ( uword x)
inline

Definition at line 481 of file runninglengthword.h.

◆ discardFirstWordsWithReload()

template<class uword = uint32_t>
void ewah::BufferedRunningLengthWord< uword >::discardFirstWordsWithReload ( uword x)
inline

Definition at line 522 of file runninglengthword.h.

◆ discardLiteralWordsWithReload()

template<class uword = uint32_t>
void ewah::BufferedRunningLengthWord< uword >::discardLiteralWordsWithReload ( uword x)
inline

Definition at line 515 of file runninglengthword.h.

◆ discardRunningWords()

template<class uword = uint32_t>
void ewah::BufferedRunningLengthWord< uword >::discardRunningWords ( )
inline

Definition at line 450 of file runninglengthword.h.

◆ discardRunningWordsWithReload()

template<class uword = uint32_t>
void ewah::BufferedRunningLengthWord< uword >::discardRunningWordsWithReload ( )
inline

Definition at line 452 of file runninglengthword.h.

◆ discharge() [1/2]

template<class uword = uint32_t>
void ewah::BufferedRunningLengthWord< uword >::discharge ( EWAHBoolArray< uword > & container)
inline

Definition at line 225 of file runninglengthword.h.

◆ discharge() [2/2]

template<class uword = uint32_t>
size_t ewah::BufferedRunningLengthWord< uword >::discharge ( EWAHBoolArray< uword > & container,
size_t max )
inline

Definition at line 346 of file runninglengthword.h.

◆ dischargeCount() [1/2]

template<class uword = uint32_t>
size_t ewah::BufferedRunningLengthWord< uword >::dischargeCount ( )
inline

Definition at line 237 of file runninglengthword.h.

◆ dischargeCount() [2/2]

template<class uword = uint32_t>
size_t ewah::BufferedRunningLengthWord< uword >::dischargeCount ( size_t max,
size_t * count )
inline

Definition at line 272 of file runninglengthword.h.

◆ dischargeCountNegated() [1/2]

template<class uword = uint32_t>
size_t ewah::BufferedRunningLengthWord< uword >::dischargeCountNegated ( )
inline

Definition at line 253 of file runninglengthword.h.

◆ dischargeCountNegated() [2/2]

template<class uword = uint32_t>
size_t ewah::BufferedRunningLengthWord< uword >::dischargeCountNegated ( size_t max,
size_t * count )
inline

Definition at line 302 of file runninglengthword.h.

◆ dischargeNegated()

template<class uword = uint32_t>
size_t ewah::BufferedRunningLengthWord< uword >::dischargeNegated ( EWAHBoolArray< uword > & container,
size_t max )
inline

Definition at line 396 of file runninglengthword.h.

◆ getLiteralWordAt()

template<class uword = uint32_t>
uword ewah::BufferedRunningLengthWord< uword >::getLiteralWordAt ( size_t index)
inline

Definition at line 439 of file runninglengthword.h.

◆ getNumberOfLiteralWords()

template<class uword = uint32_t>
uword ewah::BufferedRunningLengthWord< uword >::getNumberOfLiteralWords ( ) const
inline

followed by how many literal words?

Definition at line 499 of file runninglengthword.h.

◆ getRunningBit()

template<class uword = uint32_t>
bool ewah::BufferedRunningLengthWord< uword >::getRunningBit ( ) const
inline

Which bit is being repeated?

Definition at line 479 of file runninglengthword.h.

◆ getRunningLength()

template<class uword = uint32_t>
uword ewah::BufferedRunningLengthWord< uword >::getRunningLength ( ) const
inline

how many words should be filled by the running bit (see previous method)

Definition at line 494 of file runninglengthword.h.

◆ next()

template<class uword = uint32_t>
bool ewah::BufferedRunningLengthWord< uword >::next ( )
inline

Definition at line 458 of file runninglengthword.h.

◆ nonzero_discharge() [1/2]

template<class uword = uint32_t>
bool ewah::BufferedRunningLengthWord< uword >::nonzero_discharge ( )
inline

Definition at line 331 of file runninglengthword.h.

◆ nonzero_discharge() [2/2]

template<class uword = uint32_t>
bool ewah::BufferedRunningLengthWord< uword >::nonzero_discharge ( size_t max,
size_t & index )
inline

Definition at line 373 of file runninglengthword.h.

◆ nonzero_dischargeNegated()

template<class uword = uint32_t>
bool ewah::BufferedRunningLengthWord< uword >::nonzero_dischargeNegated ( size_t max,
size_t & index )
inline

Definition at line 417 of file runninglengthword.h.

◆ read()

template<class uword = uint32_t>
void ewah::BufferedRunningLengthWord< uword >::read ( const uword & data)
inline

Definition at line 468 of file runninglengthword.h.

◆ size()

template<class uword = uint32_t>
uword ewah::BufferedRunningLengthWord< uword >::size ( ) const
inline

Total of getRunningLength() and getNumberOfLiteralWords()

Definition at line 504 of file runninglengthword.h.

◆ writeLiteralWords()

template<class uword = uint32_t>
void ewah::BufferedRunningLengthWord< uword >::writeLiteralWords ( size_t numWords,
EWAHBoolArray< uword > & container )
inline

Definition at line 441 of file runninglengthword.h.

◆ writeNegatedLiteralWords()

template<class uword = uint32_t>
void ewah::BufferedRunningLengthWord< uword >::writeNegatedLiteralWords ( size_t numWords,
EWAHBoolArray< uword > & container )
inline

Definition at line 445 of file runninglengthword.h.


The documentation for this class was generated from the following file: