# bm::iterator_deserializer< BV, SerialIterator > Class Template Reference

Iterator to walk forward the serialized stream. More...

`#include <bmserial.h>`

## Public Types

typedef BV | bvector_type
typedef SerialIterator | serial_iterator_type

## Static Public Member Functions

static unsigned | deserialize (bvector_type &bv, serial_iterator_type &sit, bm::word_t *temp_block, set_operation op=bm::set_OR)
static void | deserialize (bvector_type &bv_target, const bvector_type &bv_mask, serial_iterator_type &sit, bm::word_t *temp_block, set_operation op)
| experimental 3 way deserialization target = mask OPERATION% BLOB

## Detailed Description

### template<class BV, class SerialIterator>
class bm::iterator_deserializer< BV, SerialIterator >

Iterator to walk forward the serialized stream.

Definition at line 317 of file bmserial.h.

## Member Typedef Documentation

template<class BV , class SerialIterator >

typedef BV bm::iterator_deserializer< BV, SerialIterator >::bvector_type

Definition at line 320 of file bmserial.h.

template<class BV , class SerialIterator >

typedef SerialIterator bm::iterator_deserializer< BV, SerialIterator >::serial_iterator_type

Definition at line 321 of file bmserial.h.

## Member Function Documentation

template<class BV , class SerialIterator >

void bm::iterator_deserializer< BV, SerialIterator >::deserialize | ( | bvector_type & | bv_target,
|  | const bvector_type & | bv_mask,
|  | serial_iterator_type & | sit,
|  | bm::word_t * | temp_block,
|  | set_operation | op |
| ) |  |  | `[inline, static]`

experimental 3 way deserialization target = mask OPERATION% BLOB

Definition at line 3101 of file bmserial.h.

References bm::bit_block_xor(), BM_ASSERT, BM_IS_GAP, BM_SET_MMX_GUARD, FULL_BLOCK_ADDR, bm::gap_calc_level(), bm::gap_equiv_len, bm::gap_length(), bm::set_AND, bm::set_array_shift, bm::set_ASSIGN, bm::set_block_bit_1bit, bm::set_block_shift, bm::set_OR, bm::set_SUB, bm::set_XOR, and bm::setop2op().

template<class BV , class SerialIterator >

unsigned bm::iterator_deserializer< BV, SerialIterator >::deserialize | ( | bvector_type & | bv,
|  | serial_iterator_type & | sit,
|  | bm::word_t * | temp_block,
|  | set_operation | op = `bm::set_OR` |
| ) |  |  | `[inline, static]`

Definition at line 3319 of file bmserial.h.

References bm::bit_block_xor(), bm::bits_in_block, BM_ASSERT, BM_IS_GAP, BM_SET_MMX_GUARD, BMSET_PTRGAP, bm::combine_count_operation_with_block(), bm::COUNT_SUB_BA, bm::COUNT_XOR, FULL_BLOCK_ADDR, bm::gap_calc_level(), bm::gap_convert_to_bitset(), bm::gap_equiv_len, bm::gap_length(), bm::is_const_set_operation(), IS_FULL_BLOCK, bm::operation2metric(), bm::set_AND, bm::set_ASSIGN, bm::set_COUNT, bm::set_COUNT_A, bm::set_COUNT_AND, bm::set_COUNT_B, bm::set_COUNT_OR, bm::set_COUNT_SUB_AB, bm::set_COUNT_SUB_BA, bm::set_COUNT_XOR, bm::set_END, bm::set_gap_level(), bm::set_OR, bm::set_SUB, bm::set_XOR, and bm::setop2op().

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

- bmserial.h