GNU Radio 3.6.5 C++ API
|
Evaluate metrics for use by the Viterbi algorithm. More...
#include <trellis_metrics_i.h>
Public Member Functions | |
int | O () const |
int | D () const |
trellis_metric_type_t | TYPE () const |
std::vector< int > | TABLE () const |
void | set_TABLE (const std::vector< int > &table) |
void | forecast (int noutput_items, gr_vector_int &ninput_items_required) |
Estimate input requirements given output request. | |
int | general_work (int noutput_items, gr_vector_int &ninput_items, gr_vector_const_void_star &input_items, gr_vector_void_star &output_items) |
compute output items from input items | |
Friends | |
TRELLIS_API trellis_metrics_i_sptr | trellis_make_metrics_i (int O, int D, const std::vector< int > &TABLE, trellis_metric_type_t TYPE) |
Evaluate metrics for use by the Viterbi algorithm.
int trellis_metrics_i::D | ( | ) | const [inline] |
void trellis_metrics_i::forecast | ( | int | noutput_items, |
gr_vector_int & | ninput_items_required | ||
) | [virtual] |
Estimate input requirements given output request.
noutput_items | number of output items to produce |
ninput_items_required | number of input items required on each input stream |
Given a request to product noutput_items
, estimate the number of data items required on each input stream. The estimate doesn't have to be exact, but should be close.
Reimplemented from gr_block.
int trellis_metrics_i::general_work | ( | int | noutput_items, |
gr_vector_int & | ninput_items, | ||
gr_vector_const_void_star & | input_items, | ||
gr_vector_void_star & | output_items | ||
) | [virtual] |
compute output items from input items
noutput_items | number of output items to write on each output stream |
ninput_items | number of input items available on each input stream |
input_items | vector of pointers to the input items, one entry per input stream |
output_items | vector of pointers to the output items, one entry per output stream |
general_work must call consume or consume_each to indicate how many items were consumed on each input stream.
Reimplemented from gr_block.
int trellis_metrics_i::O | ( | ) | const [inline] |
void trellis_metrics_i::set_TABLE | ( | const std::vector< int > & | table | ) |
std::vector<int> trellis_metrics_i::TABLE | ( | ) | const [inline] |
trellis_metric_type_t trellis_metrics_i::TYPE | ( | ) | const [inline] |
TRELLIS_API trellis_metrics_i_sptr trellis_make_metrics_i | ( | int | O, |
int | D, | ||
const std::vector< int > & | TABLE, | ||
trellis_metric_type_t | TYPE | ||
) | [friend] |