SDSL 3.0.1
Succinct Data Structure Library
|
A bit vector which compresses very sparse populated bit vectors by. More...
#include <sd_vector.hpp>
Public Types | |
typedef bit_vector::size_type | size_type |
typedef size_type | value_type |
typedef bit_vector::difference_type | difference_type |
typedef random_access_const_iterator< sd_vector > | iterator |
typedef iterator | const_iterator |
typedef bv_tag | index_category |
typedef t_select_0 | select_0_support_type |
typedef t_select_1 | select_1_support_type |
typedef rank_support_sd< 0, t_hi_bit_vector, select_1_support_type, select_0_support_type > | rank_0_type |
typedef rank_support_sd< 1, t_hi_bit_vector, select_1_support_type, select_0_support_type > | rank_1_type |
typedef select_support_sd< 0, t_hi_bit_vector, select_1_support_type, select_0_support_type > | select_0_type |
typedef select_support_sd< 1, t_hi_bit_vector, select_1_support_type, select_0_support_type > | select_1_type |
typedef t_hi_bit_vector | hi_bit_vector_type |
Public Member Functions | |
sd_vector () | |
sd_vector (const sd_vector &sd) | |
sd_vector & | operator= (const sd_vector &v) |
sd_vector & | operator= (sd_vector &&v) |
sd_vector (sd_vector &&sd) | |
sd_vector (const bit_vector &bv) | |
template<class t_itr > | |
sd_vector (const t_itr begin, const t_itr end) | |
sd_vector (sd_vector_builder &builder) | |
value_type | operator[] (size_type i) const |
Accessing the i-th element of the original bit_vector. More... | |
uint64_t | get_int (size_type idx, const uint8_t len=64) const |
Get the integer value of the binary string of length len starting at position idx. More... | |
size_type | size () const |
Returns the size of the original bit vector. More... | |
size_type | serialize (std::ostream &out, structure_tree_node *v=nullptr, std::string name="") const |
Serializes the data structure into the given ostream. More... | |
void | load (std::istream &in) |
Loads the data structure from the given istream. More... | |
template<typename archive_t > | |
void | CEREAL_SAVE_FUNCTION_NAME (archive_t &ar) const |
template<typename archive_t > | |
void | CEREAL_LOAD_FUNCTION_NAME (archive_t &ar) |
iterator | begin () const |
iterator | end () const |
bool | operator== (const sd_vector &v) const |
bool | operator!= (const sd_vector &v) const |
Public Attributes | |
const uint8_t & | wl = m_wl |
const hi_bit_vector_type & | high = m_high |
const int_vector & | low = m_low |
const select_1_support_type & | high_1_select = m_high_1_select |
const select_0_support_type & | high_0_select = m_high_0_select |
A bit vector which compresses very sparse populated bit vectors by.
t_hi_bit_vector | Type of the bitvector used for the unary decoded differences of the high part of the positions of the 1s. |
t_select_1 | Type of the select structure which is used to select ones in HI. |
t_select_0 | Type of the select structure which is used to select zeros in HI. |
Definition at line 114 of file sd_vector.hpp.
typedef iterator sdsl::sd_vector< t_hi_bit_vector, t_select_1, t_select_0 >::const_iterator |
Definition at line 121 of file sd_vector.hpp.
typedef bit_vector::difference_type sdsl::sd_vector< t_hi_bit_vector, t_select_1, t_select_0 >::difference_type |
Definition at line 119 of file sd_vector.hpp.
typedef t_hi_bit_vector sdsl::sd_vector< t_hi_bit_vector, t_select_1, t_select_0 >::hi_bit_vector_type |
Definition at line 131 of file sd_vector.hpp.
typedef bv_tag sdsl::sd_vector< t_hi_bit_vector, t_select_1, t_select_0 >::index_category |
Definition at line 122 of file sd_vector.hpp.
typedef random_access_const_iterator<sd_vector> sdsl::sd_vector< t_hi_bit_vector, t_select_1, t_select_0 >::iterator |
Definition at line 120 of file sd_vector.hpp.
typedef rank_support_sd<0, t_hi_bit_vector, select_1_support_type, select_0_support_type> sdsl::sd_vector< t_hi_bit_vector, t_select_1, t_select_0 >::rank_0_type |
Definition at line 126 of file sd_vector.hpp.
typedef rank_support_sd<1, t_hi_bit_vector, select_1_support_type, select_0_support_type> sdsl::sd_vector< t_hi_bit_vector, t_select_1, t_select_0 >::rank_1_type |
Definition at line 127 of file sd_vector.hpp.
typedef t_select_0 sdsl::sd_vector< t_hi_bit_vector, t_select_1, t_select_0 >::select_0_support_type |
Definition at line 123 of file sd_vector.hpp.
typedef select_support_sd<0, t_hi_bit_vector, select_1_support_type, select_0_support_type> sdsl::sd_vector< t_hi_bit_vector, t_select_1, t_select_0 >::select_0_type |
Definition at line 128 of file sd_vector.hpp.
typedef t_select_1 sdsl::sd_vector< t_hi_bit_vector, t_select_1, t_select_0 >::select_1_support_type |
Definition at line 124 of file sd_vector.hpp.
typedef select_support_sd<1, t_hi_bit_vector, select_1_support_type, select_0_support_type> sdsl::sd_vector< t_hi_bit_vector, t_select_1, t_select_0 >::select_1_type |
Definition at line 129 of file sd_vector.hpp.
typedef bit_vector::size_type sdsl::sd_vector< t_hi_bit_vector, t_select_1, t_select_0 >::size_type |
Definition at line 117 of file sd_vector.hpp.
typedef size_type sdsl::sd_vector< t_hi_bit_vector, t_select_1, t_select_0 >::value_type |
Definition at line 118 of file sd_vector.hpp.
|
inline |
Definition at line 152 of file sd_vector.hpp.
|
inline |
Definition at line 154 of file sd_vector.hpp.
|
inline |
Definition at line 192 of file sd_vector.hpp.
|
inline |
Definition at line 194 of file sd_vector.hpp.
|
inline |
Definition at line 236 of file sd_vector.hpp.
|
inline |
Definition at line 271 of file sd_vector.hpp.
|
inline |
Definition at line 437 of file sd_vector.hpp.
|
inline |
Definition at line 425 of file sd_vector.hpp.
|
inline |
Definition at line 414 of file sd_vector.hpp.
|
inline |
Definition at line 439 of file sd_vector.hpp.
|
inline |
Get the integer value of the binary string of length len starting at position idx.
idx | Starting index of the binary representation of the integer. |
len | Length of the binary representation of the integer. Default value is 64. |
Definition at line 328 of file sd_vector.hpp.
|
inline |
Loads the data structure from the given istream.
Definition at line 403 of file sd_vector.hpp.
|
inline |
Definition at line 446 of file sd_vector.hpp.
|
inline |
Definition at line 166 of file sd_vector.hpp.
|
inline |
Definition at line 176 of file sd_vector.hpp.
|
inline |
Definition at line 441 of file sd_vector.hpp.
|
inline |
Accessing the i-th element of the original bit_vector.
i | An index i with ![]() |
Definition at line 298 of file sd_vector.hpp.
|
inline |
Serializes the data structure into the given ostream.
Definition at line 388 of file sd_vector.hpp.
|
inline |
Returns the size of the original bit vector.
Definition at line 385 of file sd_vector.hpp.
const hi_bit_vector_type& sdsl::sd_vector< t_hi_bit_vector, t_select_1, t_select_0 >::high = m_high |
Definition at line 147 of file sd_vector.hpp.
const select_0_support_type& sdsl::sd_vector< t_hi_bit_vector, t_select_1, t_select_0 >::high_0_select = m_high_0_select |
Definition at line 150 of file sd_vector.hpp.
const select_1_support_type& sdsl::sd_vector< t_hi_bit_vector, t_select_1, t_select_0 >::high_1_select = m_high_1_select |
Definition at line 149 of file sd_vector.hpp.
const int_vector& sdsl::sd_vector< t_hi_bit_vector, t_select_1, t_select_0 >::low = m_low |
Definition at line 148 of file sd_vector.hpp.
const uint8_t& sdsl::sd_vector< t_hi_bit_vector, t_select_1, t_select_0 >::wl = m_wl |
Definition at line 146 of file sd_vector.hpp.