BitMagic-C++
|
Byte based writer for un-aligned bit streaming. More...
#include <encoding.h>
Public Member Functions | |
bit_out (TEncoder &dest) | |
~bit_out () | |
void | put_bit (unsigned value) BMNOEXCEPT |
issue single bit into encode bit-stream | |
void | put_bits (unsigned value, unsigned count) BMNOEXCEPT |
issue count bits out of value | |
void | put_zero_bit () BMNOEXCEPT |
issue 0 into output stream | |
void | put_zero_bits (unsigned count) BMNOEXCEPT |
issue specified number of 0s | |
void | gamma (unsigned value) BMNOEXCEPT |
Elias Gamma encode the specified value. | |
void | bic_encode_u16 (const bm::gap_word_t *arr, unsigned sz, bm::gap_word_t lo, bm::gap_word_t hi) BMNOEXCEPT |
Binary Interpolative array decode. | |
void | bic_encode_u16_rg (const bm::gap_word_t *arr, unsigned sz, bm::gap_word_t lo, bm::gap_word_t hi) BMNOEXCEPT |
Binary Interpolative encoding (array of 16-bit ints) | |
void | bic_encode_u16_cm (const bm::gap_word_t *arr, unsigned sz, bm::gap_word_t lo, bm::gap_word_t hi) BMNOEXCEPT |
Binary Interpolative encoding (array of 16-bit ints) cm - "center-minimal". | |
void | bic_encode_u32_cm (const bm::word_t *arr, unsigned sz, bm::word_t lo, bm::word_t hi) BMNOEXCEPT |
Binary Interpolative encoding (array of 32-bit ints) cm - "center-minimal". | |
void | flush () BMNOEXCEPT |
Flush the incomplete 32-bit accumulator word. | |
Byte based writer for un-aligned bit streaming.
Definition at line 174 of file encoding.h.
|
inline |
Definition at line 177 of file encoding.h.
|
inline |
Definition at line 181 of file encoding.h.
|
inline |
Binary Interpolative array decode.
Definition at line 199 of file encoding.h.
Referenced by bm::serializer< BV >::bienc_gap_bit_block(), bm::serializer< BV >::interpolated_arr_bit_block(), bm::serializer< BV >::interpolated_encode_gap_block(), bm::serializer< BV >::interpolated_gap_array(), and bm::serializer< BV >::interpolated_gap_array_v0().
void bm::bit_out< TEncoder >::bic_encode_u16_cm | ( | const bm::gap_word_t * | arr, |
unsigned | sz, | ||
bm::gap_word_t | lo, | ||
bm::gap_word_t | hi | ||
) |
Binary Interpolative encoding (array of 16-bit ints) cm - "center-minimal".
Definition at line 1336 of file encoding.h.
References bm::bit_scan_reverse32(), and BM_ASSERT.
void bm::bit_out< TEncoder >::bic_encode_u16_rg | ( | const bm::gap_word_t * | arr, |
unsigned | sz, | ||
bm::gap_word_t | lo, | ||
bm::gap_word_t | hi | ||
) |
Binary Interpolative encoding (array of 16-bit ints)
Definition at line 1175 of file encoding.h.
References bm::bit_scan_reverse32(), and BM_ASSERT.
void bm::bit_out< TEncoder >::bic_encode_u32_cm | ( | const bm::word_t * | arr, |
unsigned | sz, | ||
bm::word_t | lo, | ||
bm::word_t | hi | ||
) |
Binary Interpolative encoding (array of 32-bit ints) cm - "center-minimal".
Definition at line 1210 of file encoding.h.
References bm::bit_scan_reverse32(), and BM_ASSERT.
|
inline |
Flush the incomplete 32-bit accumulator word.
Definition at line 222 of file encoding.h.
Referenced by bm::serializer< BV >::bienc_gap_bit_block(), bm::serializer< BV >::interpolated_arr_bit_block(), bm::serializer< BV >::interpolated_encode_gap_block(), bm::serializer< BV >::interpolated_gap_array(), and bm::serializer< BV >::interpolated_gap_array_v0().
void bm::bit_out< TEncoder >::gamma | ( | unsigned | value | ) |
Elias Gamma encode the specified value.
Definition at line 1103 of file encoding.h.
References bm::bit_scan_reverse32(), and BM_ASSERT.
Referenced by bm::serializer< BV >::gamma_gap_array(), and bm::serializer< BV >::interpolated_gap_array_v0().
void bm::bit_out< TEncoder >::put_bit | ( | unsigned | value | ) |
issue single bit into encode bit-stream
Definition at line 1011 of file encoding.h.
References BM_ASSERT.
void bm::bit_out< TEncoder >::put_bits | ( | unsigned | value, |
unsigned | count | ||
) |
void bm::bit_out< TEncoder >::put_zero_bit | ( | ) |
issue 0 into output stream
Definition at line 1064 of file encoding.h.
void bm::bit_out< TEncoder >::put_zero_bits | ( | unsigned | count | ) |
issue specified number of 0s
Definition at line 1073 of file encoding.h.