21#ifndef INCLUDED_ldpc_H_matrix_H
22#define INCLUDED_ldpc_H_matrix_H
26#include <boost/enable_shared_from_this.hpp>
27#include <boost/shared_ptr.hpp>
50 public boost::enable_shared_from_this<ldpc_H_matrix>
53 typedef boost::shared_ptr<ldpc_H_matrix>
sptr;
67 static sptr make(
const std::string filename,
unsigned int gap);
70 virtual void encode(
unsigned char* outbuffer,
71 const unsigned char* inbuffer)
const = 0;
74 virtual void decode(
unsigned char* outbuffer,
75 const float* inbuffer,
76 unsigned int frame_size,
77 unsigned int max_iterations)
const = 0;
81 virtual unsigned int n()
const = 0;
85 virtual unsigned int k()
const = 0;
96 virtual gr::fec::code::fec_mtrx_sptr get_base_sptr() = 0;
Base class for FEC matrix objects.
Definition: fec_mtrx.h:135
Parity check matrix in Richardson/Urbanke format.
Definition: ldpc_H_matrix.h:51
virtual void encode(unsigned char *outbuffer, const unsigned char *inbuffer) const =0
Encode inbuffer with LDPC H matrix into outbuffer.
boost::shared_ptr< ldpc_H_matrix > sptr
Definition: ldpc_H_matrix.h:53
static sptr make(const std::string filename, unsigned int gap)
Constructor given alist file and gap.
virtual unsigned int n() const =0
Get the codeword length n.
virtual unsigned int k() const =0
Get the information word length k.
virtual void decode(unsigned char *outbuffer, const float *inbuffer, unsigned int frame_size, unsigned int max_iterations) const =0
Decode inbuffer with LDPC H matrix into outbuffer.
#define FEC_API
Definition: gr-fec/include/gnuradio/fec/api.h:30
Include this header to use the message passing features.
Definition: basic_block.h:45