GNU Radio Manual and C++ API Reference 3.10.5.1
The Free & Open Software Radio Ecosystem
gr::fec::ldpc_decoder Class Reference

#include <gnuradio/fec/ldpc_decoder.h>

Public Member Functions

 ~ldpc_decoder () override
 
double rate () override
 
bool set_frame_size (unsigned int frame_size) override
 
int get_output_size () override
 
int get_input_size () override
 
int get_input_item_size () override
 
int get_output_item_size () override
 
float get_iterations () override
 
- Public Member Functions inherited from gr::fec::generic_decoder
virtual void generic_work (void *inbuffer, void *outbuffer)=0
 
int unique_id ()
 
std::string alias ()
 
 generic_decoder (void)
 
 generic_decoder (std::string name)
 
virtual ~generic_decoder ()
 
virtual double rate ()=0
 
virtual int get_input_size ()=0
 
virtual int get_output_size ()=0
 
virtual int get_history ()
 
virtual float get_shift ()
 
virtual int get_input_item_size ()
 
virtual int get_output_item_size ()
 
virtual const char * get_input_conversion ()
 
virtual const char * get_output_conversion ()
 
virtual bool set_frame_size (unsigned int frame_size)=0
 
virtual float get_iterations ()
 

Static Public Member Functions

static generic_decoder::sptr make (std::string alist_file, float sigma=0.5, int max_iterations=50)
 

Additional Inherited Members

- Public Types inherited from gr::fec::generic_decoder
typedef std::shared_ptr< generic_decodersptr
 
- Public Attributes inherited from gr::fec::generic_decoder
int my_id
 
std::string d_name
 
- Static Public Attributes inherited from gr::fec::generic_decoder
static int base_unique_id
 
- Protected Attributes inherited from gr::fec::generic_decoder
gr::logger_ptr d_logger
 

Constructor & Destructor Documentation

◆ ~ldpc_decoder()

gr::fec::ldpc_decoder::~ldpc_decoder ( )
override

Member Function Documentation

◆ get_input_item_size()

int gr::fec::ldpc_decoder::get_input_item_size ( )
overridevirtual

Sets the size of an input item, as in the size of a char or float item.

The child class SHOULD implement this function. If not reimplemented, it returns sizeof(float) as the decoders typically expect floating point input types.

Reimplemented from gr::fec::generic_decoder.

◆ get_input_size()

int gr::fec::ldpc_decoder::get_input_size ( )
overridevirtual

Returns the input size in items that the decoder object uses to decode a full frame. Often, this number is the number of bits per frame if the input format is unpacked. If the block expects packed bytes, then this value should be the number of bytes (number of bits / 8) per input frame.

The child class MUST implement this function.

Implements gr::fec::generic_decoder.

◆ get_iterations()

float gr::fec::ldpc_decoder::get_iterations ( )
inlineoverridevirtual

Get repetitions to decode.

The child class should implement this function and return the number of iterations required to decode.

Reimplemented from gr::fec::generic_decoder.

◆ get_output_item_size()

int gr::fec::ldpc_decoder::get_output_item_size ( )
overridevirtual

Sets the size of an output item, as in the size of a char or float item.

The child class SHOULD implement this function. If not reimplemented, it returns sizeof(char) as the decoders typically expect to produce bits or bytes.

Reimplemented from gr::fec::generic_decoder.

◆ get_output_size()

int gr::fec::ldpc_decoder::get_output_size ( )
overridevirtual

Returns the output size in items that the decoder object produces after decoding a full frame. Often, this number is the number of bits in the outputted frame if the input format is unpacked. If the block produces packed bytes, then this value should be the number of bytes (number of bits / 8) per frame produced. This value is generally something like get_input_size()/R for a 1/R rate code.

The child class MUST implement this function.

Implements gr::fec::generic_decoder.

◆ make()

static generic_decoder::sptr gr::fec::ldpc_decoder::make ( std::string  alist_file,
float  sigma = 0.5,
int  max_iterations = 50 
)
static

◆ rate()

double gr::fec::ldpc_decoder::rate ( )
overridevirtual

Returns the rate of the code. For every r input bits, there is 1 output bit, so the rate is 1/r. Used for setting things like the encoder block's relative rate.

This function MUST be reimplemented by the child class.

Implements gr::fec::generic_decoder.

◆ set_frame_size()

bool gr::fec::ldpc_decoder::set_frame_size ( unsigned int  frame_size)
overridevirtual

Updates the size of a decoded frame.

The child class MUST implement this function and interpret how the frame_size information affects the block's behavior. It should also provide bounds checks.

Implements gr::fec::generic_decoder.


The documentation for this class was generated from the following file: