# bm::deseriaizer_base< DEC > Class Template Reference
[bvector serialization]

Base deserialization class. More...

`#include <bmserial.h>`

Inheritance diagram for bm::deseriaizer_base< DEC >:
[legend]

## Public Types

typedef DEC | decoder_type

## Protected Member Functions

| deseriaizer_base ()
unsigned | read_gap_block (decoder_type &decoder, unsigned block_type, bm::gap_word_t *dst_block, bm::gap_word_t &gap_head)
| Read GAP block from the stream.
unsigned | read_id_list (decoder_type &decoder, unsigned block_type, bm::gap_word_t *dst_arr)
| Read list of bit ids.

## Protected Attributes

bm::gap_word_t | id_array_ [bm::gap_equiv_len *2]

## Detailed Description

### template<class DEC>
class bm::deseriaizer_base< DEC >

Base deserialization class.

Definition at line 251 of file bmserial.h.

## Member Typedef Documentation

template<class DEC>

typedef DEC bm::deseriaizer_base< DEC >::decoder_type

Reimplemented in bm::deserializer< BV, DEC >, and bm::serial_stream_iterator< DEC >.

Definition at line 254 of file bmserial.h.

## Constructor & Destructor Documentation

template<class DEC>

bm::deseriaizer_base< DEC >::deseriaizer_base | ( |  | ) | `[inline, protected]`

Definition at line 256 of file bmserial.h.

## Member Function Documentation

template<class DEC >

unsigned bm::deseriaizer_base< DEC >::read_gap_block | ( | decoder_type & | decoder,
|  | unsigned | block_type,
|  | bm::gap_word_t * | dst_block,
|  | bm::gap_word_t & | gap_head |
| ) |  |  | `[inline, protected]`

Read GAP block from the stream.

Returns:
  GAP length

Definition at line 1227 of file bmserial.h.

References BM_ASSERT, bm::gap_add_value(), bm::gap_invert(), bm::gap_length(), bm::gap_max_bits, bm::gap_set_all(), bm::gap_set_array(), bm::deseriaizer_base< DEC >::id_array_, bm::deseriaizer_base< DEC >::read_id_list(), bm::set_block_arrgap, bm::set_block_arrgap_egamma, bm::set_block_arrgap_egamma_inv, bm::set_block_arrgap_inv, bm::set_block_bit_1bit, bm::set_block_gap, and bm::set_block_gap_egamma.

Referenced by bm::deserializer< BV, DEC >::deserialize_gap(), and bm::serial_stream_iterator< DEC >::get_gap_block().

template<class DEC >

unsigned bm::deseriaizer_base< DEC >::read_id_list | ( | decoder_type & | decoder,
|  | unsigned | block_type,
|  | bm::gap_word_t * | dst_arr |
| ) |  |  | `[inline, protected]`

Read list of bit ids.

Returns:
  number of ids

Definition at line 1184 of file bmserial.h.

References BM_ASSERT, bm::set_block_arrgap, bm::set_block_arrgap_egamma, bm::set_block_arrgap_egamma_inv, bm::set_block_arrgap_inv, and bm::set_block_bit_1bit.

Referenced by bm::deserializer< BV, DEC >::deserialize_gap(), and bm::deseriaizer_base< DEC >::read_gap_block().

## Field Documentation

template<class DEC>

bm::gap_word_t bm::deseriaizer_base< DEC >::id_array_[bm::gap_equiv_len *2]`[protected]`

Definition at line 275 of file bmserial.h.

Referenced by bm::deserializer< BV, DEC >::deserialize_gap(), and bm::deseriaizer_base< DEC >::read_gap_block().

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

- bmserial.h