b-tree-plus-alpha
Loading...
Searching...
No Matches
stool::bptree::BitContainer Class Reference

A container that stores a short sequence of bits. More...

#include <bit_container.hpp>

Classes

class  BitContainerIterator
 

Public Member Functions

 BitContainer (std::vector< uint64_t > &_items)
 
 BitContainer (std::vector< bool > &_items)
 
void swap (BitContainer &item)
 
uint64_t size () const
 
uint64_t size_in_bytes (bool only_extra_bytes) const
 
uint64_t unused_size_in_bytes () const
 
uint64_t at (uint64_t pos) const
 
void print () const
 
void clear ()
 
uint64_t psum (uint64_t i) const noexcept
 
uint64_t psum () const noexcept
 
int64_t search (uint64_t x) const noexcept
 
std::string to_string () const
 
std::vector< uint64_tto_value_vector () const
 
uint64_t to_uint64 () const
 
template<typename VEC >
void to_values (VEC &output_vec) const
 
void insert (uint64_t pos, uint64_t value)
 
void remove (uint64_t pos)
 
void push_front (std::vector< uint64_t > &new_items)
 
void push_front (uint64_t new_item)
 
void push_back (std::vector< uint64_t > &new_items)
 
void verify () const
 
void push_back (uint64_t value)
 
void pop_front ()
 
std::vector< uint64_tpop_front (uint64_t len)
 
void pop_back ()
 
std::vector< uint64_tpop_back (uint64_t len)
 
uint64_t reverse_psum (uint64_t i) const
 
uint64_t psum (uint64_t i, uint64_t j) const
 
void increment (uint64_t i, int64_t delta)
 
BitContainerIterator begin () const
 
BitContainerIterator end () const
 
int64_t rank1 (uint64_t i) const
 
int64_t rank0 (uint64_t i) const
 
int64_t rank (uint64_t i, bool b) const
 
int64_t select (uint64_t i, bool b) const
 
int64_t select1 (uint64_t i) const
 
int64_t select0 (uint64_t i) const
 
void to_data (std::vector< uint8_t > &output) const
 
void sort_leaf_containers ()
 

Static Public Member Functions

static std::string name ()
 
static uint64_t get_byte_size (const std::vector< BitContainer > &items)
 
static void save (const std::vector< BitContainer > &items, std::vector< uint8_t > &output, uint64_t &pos)
 
static void save (const std::vector< BitContainer > &items, std::ofstream &os)
 
static std::vector< BitContainerload_vector (const std::vector< uint8_t > &data, uint64_t &pos)
 
static std::vector< BitContainerload_vector (std::ifstream &ifs)
 

Detailed Description

A container that stores a short sequence of bits.


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