BitMagic-C++
|
Deserializer for bit-vector. More...
#include <bmserial.h>
Public Types | |
typedef BV | bvector_type |
typedef bvector_type::allocator_type | allocator_type |
typedef BV::size_type | size_type |
typedef bvector_type::block_idx_type | block_idx_type |
typedef deseriaizer_base< DEC, block_idx_type > | parent_type |
typedef parent_type::decoder_type | decoder_type |
typedef bm::bv_ref_vector< BV > | bv_ref_vector_type |
Public Member Functions | |
deserializer () | |
~deserializer () | |
size_t | deserialize (bvector_type &bv, const unsigned char *buf, bm::word_t *temp_block=0) |
void | set_ref_vectors (const bv_ref_vector_type *ref_vect) |
Attach collection of reference vectors for XOR de-serialization (no transfer of ownership for the pointer) More... | |
void | set_range (size_type from, size_type to) BMNOEXCEPT |
set deserialization range [from, to] This is NOT exact, approximate range, content outside range is not guaranteed to be absent More... | |
void | unset_range () BMNOEXCEPT |
Disable range deserialization. More... | |
Protected Types | |
typedef BV::blocks_manager_type | blocks_manager_type |
typedef bm::heap_vector< bm::gap_word_t, allocator_type, true > | block_arridx_type |
typedef allocator_type::allocator_pool_type | allocator_pool_type |
![]() | |
typedef DEC | decoder_type |
typedef BV::block_idx_type | block_idx_type |
typedef bm::bit_in< DEC > | bit_in_type |
Protected Attributes | |
block_arridx_type | bit_idx_arr_ |
block_arridx_type | gap_temp_block_ |
bm::word_t * | temp_block_ |
allocator_pool_type | pool_ |
allocator_type | alloc_ |
const bv_ref_vector_type * | ref_vect_ |
ref.vector for XOR compression More... | |
bm::word_t * | xor_block_ |
xor product More... | |
bm::word_t * | or_block_ |
unsigned | is_range_set_ |
size_type | idx_from_ |
size_type | idx_to_ |
![]() | |
bm::gap_word_t * | id_array_ |
ptr to idx array for temp decode use More... | |
block_idx_type | bookmark_idx_ |
last bookmark block index More... | |
unsigned | skip_offset_ |
bookmark to skip 256 encoded blocks More... | |
const unsigned char * | skip_pos_ |
decoder skip position More... | |
Additional Inherited Members | |
![]() | |
static void | read_0runs_block (decoder_type &decoder, bm::word_t *blk) BMNOEXCEPT |
read bit-block encoded as runs More... | |
static const char * | err_msg () BMNOEXCEPT |
Deserializer for bit-vector.
Definition at line 489 of file bmserial.h.
|
protected |
Definition at line 577 of file bmserial.h.
typedef bvector_type::allocator_type bm::deserializer< BV, DEC >::allocator_type |
Definition at line 494 of file bmserial.h.
|
protected |
Definition at line 576 of file bmserial.h.
typedef bvector_type::block_idx_type bm::deserializer< BV, DEC >::block_idx_type |
Definition at line 496 of file bmserial.h.
|
protected |
Definition at line 543 of file bmserial.h.
typedef bm::bv_ref_vector<BV> bm::deserializer< BV, DEC >::bv_ref_vector_type |
Definition at line 499 of file bmserial.h.
typedef BV bm::deserializer< BV, DEC >::bvector_type |
Definition at line 493 of file bmserial.h.
typedef parent_type::decoder_type bm::deserializer< BV, DEC >::decoder_type |
Definition at line 498 of file bmserial.h.
typedef deseriaizer_base<DEC, block_idx_type> bm::deserializer< BV, DEC >::parent_type |
Definition at line 497 of file bmserial.h.
typedef BV::size_type bm::deserializer< BV, DEC >::size_type |
Definition at line 495 of file bmserial.h.
bm::deserializer< BV, DEC >::deserializer |
Definition at line 3216 of file bmserial.h.
bm::deserializer< BV, DEC >::~deserializer |
Definition at line 3231 of file bmserial.h.
|
protected |
Definition at line 3495 of file bmserial.h.
|
protected |
Definition at line 3384 of file bmserial.h.
|
protected |
Definition at line 3448 of file bmserial.h.
|
protected |
Definition at line 3468 of file bmserial.h.
size_t bm::deserializer< BV, DEC >::deserialize | ( | bvector_type & | bv, |
const unsigned char * | buf, | ||
bm::word_t * | temp_block = 0 |
||
) |
Deserialize bit-vector (equivalent to logical OR)
bv | - target bit-vector |
buf | - BLOB memory pointer |
temp_block | - temporary buffer [block size] (not used) |
Definition at line 3531 of file bmserial.h.
Referenced by bm::deserialize(), and bm::deserialize_range().
|
protected |
Definition at line 3249 of file bmserial.h.
|
inline |
set deserialization range [from, to] This is NOT exact, approximate range, content outside range is not guaranteed to be absent
Definition at line 531 of file bmserial.h.
Referenced by bm::deserialize_range().
void bm::deserializer< BV, DEC >::set_ref_vectors | ( | const bv_ref_vector_type * | ref_vect | ) |
Attach collection of reference vectors for XOR de-serialization (no transfer of ownership for the pointer)
Definition at line 3240 of file bmserial.h.
Referenced by bm::deserialize(), and bm::deserialize_range().
|
inline |
|
protected |
Definition at line 3969 of file bmserial.h.
|
protected |
Definition at line 585 of file bmserial.h.
|
protected |
Definition at line 580 of file bmserial.h.
|
protected |
Definition at line 581 of file bmserial.h.
|
protected |
Definition at line 596 of file bmserial.h.
Referenced by bm::deserializer< bvector_type, bm::decoder >::set_range().
|
protected |
Definition at line 597 of file bmserial.h.
Referenced by bm::deserializer< bvector_type, bm::decoder >::set_range().
|
protected |
Definition at line 595 of file bmserial.h.
Referenced by bm::deserializer< bvector_type, bm::decoder >::set_range(), and bm::deserializer< bvector_type, bm::decoder >::unset_range().
|
protected |
Definition at line 591 of file bmserial.h.
|
protected |
Definition at line 584 of file bmserial.h.
|
protected |
ref.vector for XOR compression
Definition at line 589 of file bmserial.h.
|
protected |
Definition at line 582 of file bmserial.h.
|
protected |
xor product
Definition at line 590 of file bmserial.h.