Sux
Classes | Public Member Functions | Friends | List of all members
sux::function::RiceBitVector< AT > Class Template Reference

#include <RiceBitVector.hpp>

Classes

class  Builder
 

Public Member Functions

 RiceBitVector ()
 
 RiceBitVector (util::Vector< uint64_t, AT > data)
 
uint64_t readNext (const int log2golomb)
 
void skipSubtree (const size_t nodes, const size_t fixed_len)
 
void readReset (const size_t bit_pos, const size_t unary_offset)
 
size_t getBits () const
 

Friends

std::ostream & operator<< (std::ostream &os, const RiceBitVector< AT > &rbv)
 
std::istream & operator>> (std::istream &is, RiceBitVector< AT > &rbv)
 

Detailed Description

template<util::AllocType AT = util::AllocType::MALLOC>
class sux::function::RiceBitVector< AT >

Storage for Golomb-Rice codes of a RecSplit bucket.

This class exists solely to implement RecSplit.

Template Parameters
ATa type of memory allocation out of util::AllocType.

Constructor & Destructor Documentation

◆ RiceBitVector() [1/2]

template<util::AllocType AT = util::AllocType::MALLOC>
sux::function::RiceBitVector< AT >::RiceBitVector ( )
inline

◆ RiceBitVector() [2/2]

template<util::AllocType AT = util::AllocType::MALLOC>
sux::function::RiceBitVector< AT >::RiceBitVector ( util::Vector< uint64_t, AT >  data)
inline

Member Function Documentation

◆ getBits()

template<util::AllocType AT = util::AllocType::MALLOC>
size_t sux::function::RiceBitVector< AT >::getBits ( ) const
inline

◆ readNext()

template<util::AllocType AT = util::AllocType::MALLOC>
uint64_t sux::function::RiceBitVector< AT >::readNext ( const int  log2golomb)
inline

◆ readReset()

template<util::AllocType AT = util::AllocType::MALLOC>
void sux::function::RiceBitVector< AT >::readReset ( const size_t  bit_pos,
const size_t  unary_offset 
)
inline

◆ skipSubtree()

template<util::AllocType AT = util::AllocType::MALLOC>
void sux::function::RiceBitVector< AT >::skipSubtree ( const size_t  nodes,
const size_t  fixed_len 
)
inline

Friends And Related Function Documentation

◆ operator<<

template<util::AllocType AT = util::AllocType::MALLOC>
std::ostream& operator<< ( std::ostream &  os,
const RiceBitVector< AT > &  rbv 
)
friend

◆ operator>>

template<util::AllocType AT = util::AllocType::MALLOC>
std::istream& operator>> ( std::istream &  is,
RiceBitVector< AT > &  rbv 
)
friend

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