24 #ifndef INCLUDED_FEC_POLAR_ENCODER_H
25 #define INCLUDED_FEC_POLAR_ENCODER_H
67 std::vector<int> frozen_bit_positions,
68 std::vector<char> frozen_bit_values,
69 bool is_packed =
false);
73 void generic_work(
void* in_buffer,
void* out_buffer);
74 double rate() {
return (1.0 * get_input_size() / get_output_size()); };
84 std::vector<int>& frozen_bit_positions,
85 std::vector<char>& frozen_bit_values,
90 void setup_frozen_bit_inserter();
93 unsigned char* d_frozen_bit_prototype;
95 void insert_packed_frozen_bits_and_reverse(
unsigned char* target,
96 const unsigned char* input)
const;
97 void insert_unpacked_bit_into_packed_array_at_position(
unsigned char* target,
98 const unsigned char bit,
100 void insert_packet_bit_into_packed_array_at_position(
unsigned char* target,
101 const unsigned char bit,
102 const int target_pos,
103 const int bit_pos)
const;
106 void encode_vector_packed(
unsigned char* target)
const;
107 void encode_vector_packed_subbyte(
unsigned char* target)
const;
108 void encode_packed_byte(
unsigned char* target)
const;
109 void encode_vector_packed_interbyte(
unsigned char* target)
const;