#include <bmserial.h>
Inheritance diagram for bm::serial_stream_iterator< DEC >:


Iterates blocks and control tokens of serialized bit-stream
Definition at line 332 of file bmserial.h.
Public Types | |
| typedef deseriaizer_base< DEC >::decoder_type | decoder_type |
| typedef unsigned(serial_stream_iterator< DEC >::* | get_bit_func_type )(bm::word_t *, bm::word_t *) |
| member function pointer for bitset-bitset get operations | |
| enum | iterator_state { e_unknown = 0, e_list_ids, e_blocks, e_zero_blocks, e_one_blocks, e_bit_block, e_gap_block } |
| iterator is a state machine, this enum encodes its key value More... | |
Public Member Functions | |
| serial_stream_iterator (const unsigned char *buf) | |
| unsigned | bv_size () const |
| serialized bitvector size | |
| bool | is_eof () const |
| Returns true if end of bit-stream reached. | |
| void | next () |
| get next block | |
| unsigned | get_bit_block (bm::word_t *dst_block, bm::word_t *tmp_block, set_operation op) |
| read bit block, using logical operation | |
| void | get_gap_block (bm::gap_word_t *dst_block) |
| Read gap block data (with head). | |
| unsigned | dec_size () const |
| Return current decoder size. | |
| decoder_type & | decoder () |
| Get low level access to the decoder (use carefully). | |
| iterator_state | state () const |
| Returns iterator internal state. | |
| iterator_state | get_state () const |
| unsigned | get_id_count () const |
| Number of ids in the inverted list (valid for e_list_ids). | |
| bm::id_t | get_id () const |
| Get last id from the id list. | |
| unsigned | block_idx () const |
| Get current block index. | |
| unsigned | get_bit_block_ASSIGN (bm::word_t *dst_block, bm::word_t *tmp_block) |
| unsigned | get_bit_block_OR (bm::word_t *dst_block, bm::word_t *tmp_block) |
| unsigned | get_bit_block_AND (bm::word_t *dst_block, bm::word_t *tmp_block) |
| unsigned | get_bit_block_SUB (bm::word_t *dst_block, bm::word_t *tmp_block) |
| unsigned | get_bit_block_XOR (bm::word_t *dst_block, bm::word_t *tmp_block) |
| unsigned | get_bit_block_COUNT (bm::word_t *dst_block, bm::word_t *tmp_block) |
| unsigned | get_bit_block_COUNT_AND (bm::word_t *dst_block, bm::word_t *tmp_block) |
| unsigned | get_bit_block_COUNT_OR (bm::word_t *dst_block, bm::word_t *tmp_block) |
| unsigned | get_bit_block_COUNT_XOR (bm::word_t *dst_block, bm::word_t *tmp_block) |
| unsigned | get_bit_block_COUNT_SUB_AB (bm::word_t *dst_block, bm::word_t *tmp_block) |
| unsigned | get_bit_block_COUNT_SUB_BA (bm::word_t *dst_block, bm::word_t *tmp_block) |
| unsigned | get_bit_block_COUNT_A (bm::word_t *dst_block, bm::word_t *tmp_block) |
| unsigned | get_bit_block_COUNT_B (bm::word_t *dst_block, bm::word_t *tmp_block) |
| unsigned | get_arr_bit (bm::word_t *dst_block, bool clear_target=true) |
| Get array of bits out of the decoder into bit block (Converts inverted list into bits) Returns number of words (bits) being read. | |
Protected Attributes | |
| get_bit_func_type | bit_func_table_ [bm::set_END] |
| decoder_type | decoder_ |
| bool | end_of_stream_ |
| unsigned | bv_size_ |
| iterator_state | state_ |
| unsigned | id_cnt_ |
| Id counter for id list. | |
| bm::id_t | last_id_ |
| Last id from the id list. | |
| gap_word_t | glevels_ [bm::gap_levels] |
| GAP levels. | |
| unsigned | block_type_ |
| current block type | |
| unsigned | block_idx_ |
| current block index | |
| unsigned | mono_block_cnt_ |
| number of 0 or 1 blocks | |
| gap_word_t | gap_head_ |
|
|||||
|
Reimplemented from bm::deseriaizer_base< DEC >. Definition at line 335 of file bmserial.h. |
|
|||||
|
member function pointer for bitset-bitset get operations
Definition at line 396 of file bmserial.h. |
|
|||||
|
iterator is a state machine, this enum encodes its key value
Definition at line 366 of file bmserial.h. |
|
||||||||||
|
|||||||||
|
Get current block index.
Definition at line 389 of file bmserial.h. References bm::serial_stream_iterator< DEC >::block_idx_. |
|
|||||||||
|
serialized bitvector size
Definition at line 340 of file bmserial.h. References bm::serial_stream_iterator< DEC >::bv_size_. |
|
|||||||||
|
Return current decoder size.
Definition at line 358 of file bmserial.h. References bm::serial_stream_iterator< DEC >::decoder_. |
|
|||||||||
|
Get low level access to the decoder (use carefully).
Definition at line 361 of file bmserial.h. References bm::serial_stream_iterator< DEC >::decoder_. |
|
||||||||||||||||
|
Get array of bits out of the decoder into bit block (Converts inverted list into bits) Returns number of words (bits) being read.
Definition at line 2732 of file bmserial.h. References bm::bit_block_set(), BM_ASSERT, bm::serial_stream_iterator< DEC >::decoder_, bm::set_bit(), bm::set_block_arrbit, and bm::set_block_bit_1bit. |
|
||||||||||||||||||||
|
read bit block, using logical operation
Definition at line 2789 of file bmserial.h. References bm::serial_stream_iterator< DEC >::bit_func_table_, bm::serial_stream_iterator< DEC >::block_idx_, BM_ASSERT, bm::serial_stream_iterator< DEC >::e_bit_block, bm::serial_stream_iterator< DEC >::e_blocks, and bm::serial_stream_iterator< DEC >::state_. |
|
||||||||||||||||
|
Definition at line 2059 of file bmserial.h. References bm::serial_stream_iterator< DEC >::block_type_, BM_ASSERT, bm::serial_stream_iterator< DEC >::decoder_, bm::serial_stream_iterator< DEC >::e_bit_block, bm::set_block_bit, and bm::set_block_bit_0runs. |
|
||||||||||||||||
|
Definition at line 1916 of file bmserial.h. References bm::bit_block_set(), BM_ASSERT, bm::serial_stream_iterator< DEC >::decoder_, bm::serial_stream_iterator< DEC >::e_bit_block, bm::set_block_bit, and bm::set_block_bit_0runs. |
|
||||||||||||||||
|
Definition at line 2245 of file bmserial.h. References bm::serial_stream_iterator< DEC >::block_type_, BM_ASSERT, bm::serial_stream_iterator< DEC >::decoder_, bm::serial_stream_iterator< DEC >::e_bit_block, bm::set_block_bit, bm::set_block_bit_0runs, and bm::word_bitcount(). Referenced by bm::serial_stream_iterator< DEC >::get_bit_block_COUNT_B(). |
|
||||||||||||||||
|
Definition at line 2302 of file bmserial.h. References bm::bit_block_calc_count(), bm::serial_stream_iterator< DEC >::block_type_, BM_ASSERT, bm::serial_stream_iterator< DEC >::decoder_, bm::serial_stream_iterator< DEC >::e_bit_block, bm::set_block_bit, and bm::set_block_bit_0runs. |
|
||||||||||||||||
|
Definition at line 2365 of file bmserial.h. References bm::serial_stream_iterator< DEC >::block_type_, BM_ASSERT, bm::serial_stream_iterator< DEC >::decoder_, bm::serial_stream_iterator< DEC >::e_bit_block, bm::set_block_bit, bm::set_block_bit_0runs, and bm::word_bitcount(). |
|
||||||||||||||||
|
Definition at line 423 of file bmserial.h. References bm::serial_stream_iterator< DEC >::get_bit_block_COUNT(). |
|
||||||||||||||||
|
Definition at line 2424 of file bmserial.h. References bm::bit_recomb(), bm::serial_stream_iterator< DEC >::block_type_, BM_ASSERT, bm::serial_stream_iterator< DEC >::decoder_, bm::serial_stream_iterator< DEC >::e_bit_block, bm::set_block_bit, bm::set_block_bit_0runs, and bm::word_bitcount(). |
|
||||||||||||||||
|
Definition at line 2580 of file bmserial.h. References bm::bit_recomb(), bm::serial_stream_iterator< DEC >::block_type_, BM_ASSERT, bm::serial_stream_iterator< DEC >::decoder_, bm::serial_stream_iterator< DEC >::e_bit_block, bm::set_block_bit, bm::set_block_bit_0runs, and bm::word_bitcount(). |
|
||||||||||||||||
|
Definition at line 2659 of file bmserial.h. References bm::bit_recomb(), bm::serial_stream_iterator< DEC >::block_type_, BM_ASSERT, bm::serial_stream_iterator< DEC >::decoder_, bm::serial_stream_iterator< DEC >::e_bit_block, bm::set_block_bit, bm::set_block_bit_0runs, and bm::word_bitcount(). |
|
||||||||||||||||
|
Definition at line 2502 of file bmserial.h. References bm::bit_recomb(), bm::serial_stream_iterator< DEC >::block_type_, BM_ASSERT, bm::serial_stream_iterator< DEC >::decoder_, bm::serial_stream_iterator< DEC >::e_bit_block, bm::set_block_bit, bm::set_block_bit_0runs, and bm::word_bitcount(). |
|
||||||||||||||||
|
Definition at line 1997 of file bmserial.h. References bm::bit_recomb(), bm::serial_stream_iterator< DEC >::block_type_, BM_ASSERT, bm::serial_stream_iterator< DEC >::decoder_, bm::serial_stream_iterator< DEC >::e_bit_block, bm::set_block_bit, bm::set_block_bit_0runs, and bm::set_block_bit_interval. |
|
||||||||||||||||
|
Definition at line 2186 of file bmserial.h. References bm::serial_stream_iterator< DEC >::block_type_, BM_ASSERT, bm::serial_stream_iterator< DEC >::decoder_, bm::serial_stream_iterator< DEC >::e_bit_block, bm::set_block_bit, and bm::set_block_bit_0runs. |
|
||||||||||||||||
|
Definition at line 2126 of file bmserial.h. References bm::serial_stream_iterator< DEC >::block_type_, BM_ASSERT, bm::serial_stream_iterator< DEC >::decoder_, bm::serial_stream_iterator< DEC >::e_bit_block, bm::set_block_bit, and bm::set_block_bit_0runs. |
|
||||||||||
|
Read gap block data (with head).
Definition at line 2771 of file bmserial.h. References bm::serial_stream_iterator< DEC >::block_idx_, BM_ASSERT, bm::serial_stream_iterator< DEC >::e_blocks, bm::serial_stream_iterator< DEC >::e_gap_block, bm::deseriaizer_base< DEC >::read_gap_block(), bm::set_block_bit_1bit, and bm::serial_stream_iterator< DEC >::state_. |
|
|||||||||
|
Get last id from the id list.
Definition at line 386 of file bmserial.h. References bm::serial_stream_iterator< DEC >::last_id_. |
|
|||||||||
|
Number of ids in the inverted list (valid for e_list_ids).
Definition at line 383 of file bmserial.h. References bm::serial_stream_iterator< DEC >::id_cnt_. |
|
|||||||||
|
Definition at line 381 of file bmserial.h. References bm::serial_stream_iterator< DEC >::state_. |
|
|||||||||
|
Returns true if end of bit-stream reached.
Definition at line 343 of file bmserial.h. References bm::serial_stream_iterator< DEC >::end_of_stream_. Referenced by bm::serial_stream_iterator< DEC >::next(). |
|
|||||||||
|
|||||||||
|
Returns iterator internal state.
Definition at line 379 of file bmserial.h. References bm::serial_stream_iterator< DEC >::state_. |
|
|||||
|
Definition at line 435 of file bmserial.h. Referenced by bm::serial_stream_iterator< DEC >::get_bit_block(), and bm::serial_stream_iterator< DEC >::serial_stream_iterator(). |
|
|||||
|
current block index
Definition at line 446 of file bmserial.h. Referenced by bm::serial_stream_iterator< DEC >::block_idx(), bm::serial_stream_iterator< DEC >::get_bit_block(), bm::serial_stream_iterator< DEC >::get_gap_block(), and bm::serial_stream_iterator< DEC >::next(). |
|
|||||
|
|||||
|
Definition at line 439 of file bmserial.h. Referenced by bm::serial_stream_iterator< DEC >::bv_size(), and bm::serial_stream_iterator< DEC >::serial_stream_iterator(). |
|
|||||
|
|||||
|
Definition at line 438 of file bmserial.h. Referenced by bm::serial_stream_iterator< DEC >::is_eof(), and bm::serial_stream_iterator< DEC >::next(). |
|
|||||
|
Definition at line 449 of file bmserial.h. Referenced by bm::serial_stream_iterator< DEC >::next(). |
|
|||||
|
GAP levels.
Definition at line 443 of file bmserial.h. Referenced by bm::serial_stream_iterator< DEC >::serial_stream_iterator(). |
|
|||||
|
Id counter for id list.
Definition at line 441 of file bmserial.h. Referenced by bm::serial_stream_iterator< DEC >::get_id_count(), bm::serial_stream_iterator< DEC >::next(), and bm::serial_stream_iterator< DEC >::serial_stream_iterator(). |
|
|||||
|
Last id from the id list.
Definition at line 442 of file bmserial.h. Referenced by bm::serial_stream_iterator< DEC >::get_id(), and bm::serial_stream_iterator< DEC >::next(). |
|
|||||
|
number of 0 or 1 blocks
Definition at line 447 of file bmserial.h. Referenced by bm::serial_stream_iterator< DEC >::next(). |
|
|||||
1.4.6
Modified on Mon Dec 07 16:24:38 2009 by modify_doxy.py rev. 173732