9#ifndef INCLUDED_ldpc_G_matrix_H
10#define INCLUDED_ldpc_G_matrix_H
43 public std::enable_shared_from_this<ldpc_G_matrix>
46 typedef std::shared_ptr<ldpc_G_matrix>
sptr;
62 void encode(
unsigned char* outbuffer,
63 const unsigned char* inbuffer)
const override = 0;
66 void decode(
unsigned char* outbuffer,
67 const float* inbuffer,
68 unsigned int frame_size,
69 unsigned int max_iterations)
const override = 0;
73 unsigned int n()
const override = 0;
77 unsigned int k()
const override = 0;
88 virtual gr::fec::code::fec_mtrx_sptr get_base_sptr() = 0;
Base class for FEC matrix objects.
Definition: fec_mtrx.h:124
Class for storing H or G matrix.
Definition: ldpc_G_matrix.h:44
static sptr make(const std::string filename)
Constructor given alist file.
void encode(unsigned char *outbuffer, const unsigned char *inbuffer) const override=0
Encode inbuffer with LDPC H matrix into outbuffer.
unsigned int k() const override=0
Get the information word length k.
unsigned int n() const override=0
Get the codeword length n.
std::shared_ptr< ldpc_G_matrix > sptr
Definition: ldpc_G_matrix.h:46
void decode(unsigned char *outbuffer, const float *inbuffer, unsigned int frame_size, unsigned int max_iterations) const override=0
Decode inbuffer with LDPC H matrix into outbuffer.
#define FEC_API
Definition: gr-fec/include/gnuradio/fec/api.h:18
GNU Radio logging wrapper.
Definition: basic_block.h:29