12 #ifndef INCLUDED_FEC_POLAR_COMMON_H
13 #define INCLUDED_FEC_POLAR_COMMON_H
19 #include <volk/volk_alloc.hh>
67 std::vector<int> frozen_bit_positions,
68 std::vector<uint8_t> frozen_bit_values);
77 long bit_reverse(
long value,
int active_bits)
const;
78 void print_packed_bit_array(
const unsigned char* printed_array,
79 const int num_bytes)
const;
80 void print_unpacked_bit_array(
const unsigned char* bits,
81 const unsigned int num_bytes)
const;
87 void setup_info_bit_positions_reversed();
92 void setup_volk_vectors();
93 void volk_encode(
unsigned char* out_buf,
const unsigned char* in_buf);
94 void volk_encode_block(
unsigned char* out_buf,
unsigned char* in_buf);
104 void initialize_info_bit_position_vector();
int block_size() const
Definition: polar_common.h:72
std::vector< int > d_info_bit_positions_reversed
Definition: polar_common.h:86
std::vector< int > d_info_bit_positions
Definition: polar_common.h:85
volk::vector< unsigned char > d_volk_frozen_bit_mask
Definition: polar_common.h:96
volk::vector< unsigned char > d_volk_temp
Definition: polar_common.h:95
Converts a byte with k relevant bits to k output bytes with 1 bit in the LSB.
Definition: unpack_k_bits.h:36
std::vector< uint8_t > d_frozen_bit_values
Definition: polar_common.h:84
GNU Radio logging wrapper.
Definition: basic_block.h:29
#define FEC_API
Definition: gr-fec/include/gnuradio/fec/api.h:18
int block_power() const
Definition: polar_common.h:73
int num_info_bits() const
Definition: polar_common.h:74
POLAR code common operations and attributes.
Definition: polar_common.h:49
std::vector< int > d_frozen_bit_positions
Definition: polar_common.h:83
volk::vector< unsigned char > d_volk_frozen_bits
Definition: polar_common.h:97