12#ifndef INCLUDED_FEC_POLAR_ENCODER_SYSTEMATIC_H
13#define INCLUDED_FEC_POLAR_ENCODER_SYSTEMATIC_H
55 make(
int block_size,
int num_info_bits, std::vector<int> frozen_bit_positions);
59 double rate()
override {
return (1.0 * get_input_size() / get_output_size()); };
69 std::vector<int> frozen_bit_positions);
71 void bit_reverse_and_reset_frozen_bits(
unsigned char* outbuf,
72 const unsigned char* inbuf);
73 volk::vector<unsigned char> d_volk_syst_intermediate;
POLAR code common operations and attributes.
Definition: polar_common.h:50
systematic POLAR encoder for basic details see 'polar_common' class.
Definition: polar_encoder_systematic.h:39
int get_input_size() override
Definition: polar_encoder_systematic.h:60
double rate() override
Definition: polar_encoder_systematic.h:59
void generic_work(void *in_buffer, void *out_buffer) override
bool set_frame_size(unsigned int frame_size) override
Definition: polar_encoder_systematic.h:62
int get_output_size() override
Definition: polar_encoder_systematic.h:61
static generic_encoder::sptr make(int block_size, int num_info_bits, std::vector< int > frozen_bit_positions)
~polar_encoder_systematic() override
Definition: generic_encoder.h:23
std::shared_ptr< generic_encoder > sptr
Definition: generic_encoder.h:37
#define FEC_API
Definition: gr-fec/include/gnuradio/fec/api.h:18
GNU Radio logging wrapper.
Definition: basic_block.h:29