24 #ifndef INCLUDED_FEC_POLAR_DECODER_COMMON_H
25 #define INCLUDED_FEC_POLAR_DECODER_COMMON_H
31 #ifndef BOOST_CONSTEXPR_OR_CONST
32 #define BOOST_CONSTEXPR_OR_CONST const
60 std::vector<int> frozen_bit_positions,
61 std::vector<char> frozen_bit_values);
65 double rate(){
return (1.0 * get_output_size() / get_input_size());};
72 unsigned int d_frozen_bit_counter;
76 float llr_odd(
const float la,
const float lb)
const;
77 float llr_even(
const float la,
const float lb,
const unsigned char f)
const;
81 const bool is_frozen_bit(
const int u_num)
const;
82 const unsigned char next_frozen_bit();
85 void initialize_decoder(
unsigned char* u,
float* llrs,
const float* input);
88 void butterfly(
float* llrs,
unsigned char* u,
const int stage,
const int u_num,
const int row);
89 void butterfly_volk(
float* llrs,
unsigned char* u,
const int stage,
const int u_num,
const int row);
90 void butterfly_generic(
float* llrs,
unsigned char* u,
const int stage,
const int u_num,
const int row);
91 void even_u_values(
unsigned char* u_even,
const unsigned char* u,
const int u_num);
92 void odd_xor_even_values(
unsigned char* u_xor,
const unsigned char* u,
const int u_num);
93 void extract_info_bits(
unsigned char* output,
const unsigned char* input)
const;
96 void print_pretty_llr_vector(
const float* llr_vec)
const;
int get_input_size()
Definition: polar_decoder_common.h:66
int get_output_size()
Definition: polar_decoder_common.h:67
Parent class for FECAPI objects.
Definition: generic_decoder.h:60
bool set_frame_size(unsigned int frame_size)
Definition: polar_decoder_common.h:68
Include this header to use the message passing features.
Definition: logger.h:131
Class holds common methods and attributes for different decoder implementations.
Definition: polar_decoder_common.h:43
#define FEC_API
Definition: gr-fec/include/gnuradio/fec/api.h:30
double rate()
Definition: polar_decoder_common.h:65
#define BOOST_CONSTEXPR_OR_CONST
Definition: polar_decoder_common.h:32
unsigned char llr_bit_decision(const float llr) const
Definition: polar_decoder_common.h:78
POLAR code common operations and attributes.
Definition: polar_common.h:55