11#ifndef INCLUDED_TPC_ENCODER_H
12#define INCLUDED_TPC_ENCODER_H
29 std::vector<int> col_polys,
36 void generic_work(
void* inBuffer,
void* outbuffer)
override;
37 int get_output_size()
override;
38 int get_input_size()
override;
40 std::vector<int> d_rowpolys;
41 std::vector<int> d_colpolys;
51 std::vector<std::vector<int>> rowOutputs;
52 std::vector<std::vector<int>> rowNextStates;
54 std::vector<std::vector<int>> colOutputs;
55 std::vector<std::vector<int>> colNextStates;
57 std::vector<int> rowTail;
58 std::vector<int> colTail;
71 std::vector<unsigned char> inputWithPad;
73 std::vector<std::vector<uint8_t>> rowEncodedBits;
74 std::vector<unsigned char> rowToEncode;
75 size_t numRowsToEncode;
76 std::vector<uint8_t> rowEncoded_block;
78 std::vector<std::vector<uint8_t>> colEncodedBits;
79 std::vector<unsigned char> colToEncode;
81 std::vector<uint8_t> colEncoded_block;
83 void block_conv_encode(std::vector<uint8_t>& output,
84 std::vector<uint8_t> input,
85 std::vector<std::vector<int>> transOutputVec,
86 std::vector<std::vector<int>> transNextStateVec,
87 std::vector<int> tail,
96 std::vector<int> col_poly,
101 double rate()
override {
return (1.0 * get_input_size() / get_output_size()); }
Definition: generic_encoder.h:23
std::shared_ptr< generic_encoder > sptr
Definition: generic_encoder.h:37
Definition: tpc_encoder.h:25
double rate() override
Definition: tpc_encoder.h:101
static generic_encoder::sptr make(std::vector< int > row_poly, std::vector< int > col_poly, int krow, int kcol, int bval, int qval)
bool set_frame_size(unsigned int) override
Definition: tpc_encoder.h:102
#define FEC_API
Definition: gr-fec/include/gnuradio/fec/api.h:18
GNU Radio logging wrapper.
Definition: basic_block.h:29