29 std::vector<int> col_polys,
36 void generic_work(
const 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()); }
static generic_encoder::sptr make(std::vector< int > row_poly, std::vector< int > col_poly, int krow, int kcol, int bval, int qval)