11 #ifndef INCLUDED_FEC_GENERIC_DECODER_H
12 #define INCLUDED_FEC_GENERIC_DECODER_H
54 virtual void generic_work(
const void* inbuffer,
void* outbuffer) = 0;
59 std::string
alias() {
return d_name + std::to_string(unique_id()); }
62 typedef std::shared_ptr<generic_decoder>
sptr;
75 virtual double rate() = 0;
86 virtual int get_input_size() = 0;
99 virtual int get_output_size() = 0;
133 virtual int get_input_item_size();
143 virtual int get_output_item_size();
169 virtual const char* get_input_conversion();
190 virtual const char* get_output_conversion();
199 virtual bool set_frame_size(
unsigned int frame_size) = 0;
FEC_API const char * get_decoder_output_conversion(generic_decoder::sptr my_decoder)
FEC_API const char * get_decoder_input_conversion(generic_decoder::sptr my_decoder)
gr::logger_ptr d_logger
Definition: generic_decoder.h:50
std::string d_name
Definition: generic_decoder.h:58
static int base_unique_id
Definition: generic_decoder.h:55
std::shared_ptr< logger > logger_ptr
Definition: logger.h:250
General FEC decoding block that takes in a decoder variable object (derived from gr::fec::general_dec...
Definition: decoder.h:52
FEC_API int get_decoder_input_size(generic_decoder::sptr my_decoder)
Parent class for FECAPI objects.
Definition: generic_decoder.h:47
std::shared_ptr< generic_decoder > sptr
Definition: generic_decoder.h:62
virtual float get_iterations()
Definition: generic_decoder.h:208
FEC_API int get_decoder_output_size(generic_decoder::sptr my_decoder)
GNU Radio logging wrapper.
Definition: basic_block.h:29
#define FEC_API
Definition: gr-fec/include/gnuradio/fec/api.h:18
generic_decoder(void)
Definition: generic_decoder.h:64
FEC_API int get_history(generic_decoder::sptr my_decoder)
FEC_API float get_shift(generic_decoder::sptr my_decoder)
int my_id
Definition: generic_decoder.h:56
std::string alias()
Definition: generic_decoder.h:59
FEC_API int get_decoder_output_item_size(generic_decoder::sptr my_decoder)
FEC_API int get_decoder_input_item_size(generic_decoder::sptr my_decoder)