BitMagic-C++
Public Member Functions
bm::bit_in< TDecoder > Class Template Reference

Byte based reader for un-aligned bit streaming. More...

#include <encoding.h>

Public Member Functions

 bit_in (TDecoder &decoder) BMNOEXCEPT
 
unsigned gamma () BMNOEXCEPT
 decode unsigned value using Elias Gamma coding More...
 
unsigned get_bits (unsigned count) BMNOEXCEPT
 read number of bits out of the stream More...
 
unsigned get_bit () BMNOEXCEPT
 read 1 bit More...
 
void bic_decode_u16 (bm::gap_word_t *arr, unsigned sz, bm::gap_word_t lo, bm::gap_word_t hi) BMNOEXCEPT
 Binary Interpolative array decode. More...
 
void bic_decode_u16_bitset (bm::word_t *block, unsigned sz, bm::gap_word_t lo, bm::gap_word_t hi) BMNOEXCEPT
  More...
 
void bic_decode_u16_dry (unsigned sz, bm::gap_word_t lo, bm::gap_word_t hi) BMNOEXCEPT
  More...
 
void bic_decode_u16_rg (bm::gap_word_t *arr, unsigned sz, bm::gap_word_t lo, bm::gap_word_t hi) BMNOEXCEPT
 Binary Interpolative array decode. More...
 
void bic_decode_u16_cm (bm::gap_word_t *arr, unsigned sz, bm::gap_word_t lo, bm::gap_word_t hi) BMNOEXCEPT
 Binary Interpolative array decode. More...
 
void bic_decode_u32_cm (bm::word_t *arr, unsigned sz, bm::word_t lo, bm::word_t hi) BMNOEXCEPT
 Binary Interpolative array decode (32-bit) More...
 
void bic_decode_u16_rg_bitset (bm::word_t *block, unsigned sz, bm::gap_word_t lo, bm::gap_word_t hi) BMNOEXCEPT
 Binary Interpolative array decode into bitset (32-bit based) More...
 
void bic_decode_u16_rg_dry (unsigned sz, bm::gap_word_t lo, bm::gap_word_t hi) BMNOEXCEPT
 Binary Interpolative array decode into /dev/null. More...
 
void bic_decode_u16_cm_bitset (bm::word_t *block, unsigned sz, bm::gap_word_t lo, bm::gap_word_t hi) BMNOEXCEPT
 Binary Interpolative array decode into bitset (32-bit based) More...
 
void bic_decode_u16_cm_dry (unsigned sz, bm::gap_word_t lo, bm::gap_word_t hi) BMNOEXCEPT
 Binary Interpolative array decode into /dev/null. More...
 

Detailed Description

template<class TDecoder>
class bm::bit_in< TDecoder >

Byte based reader for un-aligned bit streaming.

See also
encoder

Definition at line 256 of file encoding.h.

Member Function Documentation

◆ bic_decode_u16()

template<class TDecoder >
void bm::bit_in< TDecoder >::bic_decode_u16 ( bm::gap_word_t arr,
unsigned  sz,
bm::gap_word_t  lo,
bm::gap_word_t  hi 
)
inline

◆ bic_decode_u16_bitset()

template<class TDecoder >
void bm::bit_in< TDecoder >::bic_decode_u16_bitset ( bm::word_t block,
unsigned  sz,
bm::gap_word_t  lo,
bm::gap_word_t  hi 
)
inline

Definition at line 282 of file encoding.h.

Referenced by bm::deseriaizer_base< DEC, BLOCK_IDX >::read_bic_arr().

◆ bic_decode_u16_cm()

template<class TDecoder >
void bm::bit_in< TDecoder >::bic_decode_u16_cm ( bm::gap_word_t arr,
unsigned  sz,
bm::gap_word_t  lo,
bm::gap_word_t  hi 
)

Binary Interpolative array decode.

Definition at line 1561 of file encoding.h.

References bm::bit_scan_reverse32(), and BM_ASSERT.

◆ bic_decode_u16_cm_bitset()

template<class TDecoder >
void bm::bit_in< TDecoder >::bic_decode_u16_cm_bitset ( bm::word_t block,
unsigned  sz,
bm::gap_word_t  lo,
bm::gap_word_t  hi 
)

Binary Interpolative array decode into bitset (32-bit based)

Definition at line 1608 of file encoding.h.

References bm::bit_scan_reverse32(), BM_ASSERT, bm::set_word_mask, and bm::set_word_shift.

◆ bic_decode_u16_cm_dry()

template<class TDecoder >
void bm::bit_in< TDecoder >::bic_decode_u16_cm_dry ( unsigned  sz,
bm::gap_word_t  lo,
bm::gap_word_t  hi 
)

Binary Interpolative array decode into /dev/null.

Definition at line 1659 of file encoding.h.

References bm::bit_scan_reverse32(), and BM_ASSERT.

◆ bic_decode_u16_dry()

template<class TDecoder >
void bm::bit_in< TDecoder >::bic_decode_u16_dry ( unsigned  sz,
bm::gap_word_t  lo,
bm::gap_word_t  hi 
)
inline

Definition at line 288 of file encoding.h.

Referenced by bm::deseriaizer_base< DEC, BLOCK_IDX >::read_bic_arr().

◆ bic_decode_u16_rg()

template<class TDecoder >
void bm::bit_in< TDecoder >::bic_decode_u16_rg ( bm::gap_word_t arr,
unsigned  sz,
bm::gap_word_t  lo,
bm::gap_word_t  hi 
)

Binary Interpolative array decode.

Definition at line 1472 of file encoding.h.

References bm::bit_scan_reverse32(), and BM_ASSERT.

◆ bic_decode_u16_rg_bitset()

template<class TDecoder >
void bm::bit_in< TDecoder >::bic_decode_u16_rg_bitset ( bm::word_t block,
unsigned  sz,
bm::gap_word_t  lo,
bm::gap_word_t  hi 
)

Binary Interpolative array decode into bitset (32-bit based)

Definition at line 1707 of file encoding.h.

References bm::bit_scan_reverse32(), BM_ASSERT, bm::set_word_mask, and bm::set_word_shift.

◆ bic_decode_u16_rg_dry()

template<class TDecoder >
void bm::bit_in< TDecoder >::bic_decode_u16_rg_dry ( unsigned  sz,
bm::gap_word_t  lo,
bm::gap_word_t  hi 
)

Binary Interpolative array decode into /dev/null.

Definition at line 1754 of file encoding.h.

References bm::bit_scan_reverse32(), and BM_ASSERT.

◆ bic_decode_u32_cm()

template<class TDecoder >
void bm::bit_in< TDecoder >::bic_decode_u32_cm ( bm::word_t arr,
unsigned  sz,
bm::word_t  lo,
bm::word_t  hi 
)

Binary Interpolative array decode (32-bit)

Definition at line 1514 of file encoding.h.

References bm::bit_scan_reverse32(), and BM_ASSERT.

Referenced by bm::sparse_vector_deserializer< SV >::load_planes_off_table(), and bm::deseriaizer_base< DEC, BLOCK_IDX >::read_bic_sb_arr().

◆ gamma()

template<class TDecoder >
unsigned bm::bit_in< TDecoder >::gamma

◆ get_bit()

template<class TDecoder >
unsigned bm::bit_in< TDecoder >::get_bit

read 1 bit

Definition at line 1917 of file encoding.h.

◆ get_bits()

template<class TDecoder >
unsigned bm::bit_in< TDecoder >::get_bits ( unsigned  count)

read number of bits out of the stream

Definition at line 1880 of file encoding.h.

References BM_ASSERT.


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