SDSL 3.0.1
Succinct Data Structure Library
|
A class to encode and decode between Elias-
#include <coder_elias_gamma.hpp>
Classes | |
struct | impl |
Public Types | |
typedef uint64_t | size_type |
Static Public Member Functions | |
static uint8_t | encoding_length (uint64_t) |
template<bool t_sumup, bool t_inc, class t_iter > | |
static uint64_t | decode (const uint64_t *data, const size_type start_idx, size_type n, t_iter it=(t_iter) nullptr) |
Decode n Elias-delta encoded bits beginning at start_idx in the bitstring "data". More... | |
static uint64_t | decode_prefix_sum (const uint64_t *d, const size_type start_idx, size_type n) |
Decode n Elias gamma encoded integers beginning at start_idx in the bitstring "data" and return the sum of these values. More... | |
static uint64_t | decode_prefix_sum (const uint64_t *d, const size_type start_idx, const size_type end_idx, size_type n) |
template<class int_vector > | |
static bool | encode (const int_vector &v, int_vector &z) |
template<class int_vector > | |
static bool | decode (const int_vector &z, int_vector &v) |
static void | encode (uint64_t x, uint64_t *&z, uint8_t &offset) |
Encode one positive integer x to an int_vector at bit position start_idx. More... | |
template<class int_vector > | |
static uint64_t * | raw_data (int_vector &v) |
Static Public Attributes | |
static struct sdsl::coder::elias_gamma::impl | data |
static const uint8_t | min_codeword_length = 1 |
A class to encode and decode between Elias-
Definition at line 21 of file coder_elias_gamma.hpp.
typedef uint64_t sdsl::coder::elias_gamma< T >::size_type |
Definition at line 24 of file coder_elias_gamma.hpp.
|
inlinestatic |
Definition at line 231 of file coder_elias_gamma.hpp.
|
inlinestatic |
Decode n Elias-delta encoded bits beginning at start_idx in the bitstring "data".
Definition at line 251 of file coder_elias_gamma.hpp.
|
inlinestatic |
Definition at line 273 of file coder_elias_gamma.hpp.
|
inlinestatic |
Decode n Elias gamma encoded integers beginning at start_idx in the bitstring "data" and return the sum of these values.
data | Pointer to the beginning of the Elias gamma encoded bitstring. |
start_idx | Index of the first bit to endcode the values from. |
n | Number of values to decode from the bitstring. Attention: There have to be at least n encoded values in the bitstring. |
Definition at line 441 of file coder_elias_gamma.hpp.
|
inlinestatic |
Definition at line 168 of file coder_elias_gamma.hpp.
|
inlinestatic |
Encode one positive integer x to an int_vector at bit position start_idx.
Definition at line 212 of file coder_elias_gamma.hpp.
|
inlinestatic |
Definition at line 160 of file coder_elias_gamma.hpp.
|
inlinestatic |
Definition at line 152 of file coder_elias_gamma.hpp.
|
static |
Definition at line 559 of file coder_elias_gamma.hpp.
|
static |
Definition at line 115 of file coder_elias_gamma.hpp.