GNU Radio C++ API
trellis_viterbi_combined_fi Class Reference

#include <trellis_viterbi_combined_fi.h>

Inheritance diagram for trellis_viterbi_combined_fi:

Public Member Functions

fsm FSM () const
 
int K () const
 
int S0 () const
 
int SK () const
 
int D () const
 
std::vector< float > TABLE () const
 
trellis_metric_type_t TYPE () const
 
void set_TABLE (const std::vector< float > &table)
 
void forecast (int noutput_items, gr_vector_int &ninput_items_required)
 Estimate input requirements given output request. More...
 
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 More...
 
- Public Member Functions inherited from gr_block
virtual ~gr_block ()
 
unsigned history () const
 
void set_history (unsigned history)
 
bool fixed_rate () const
 Return true if this block has a fixed input to output rate. More...
 
virtual bool start ()
 Called to enable drivers, etc for i/o devices. More...
 
virtual bool stop ()
 Called to disable drivers, etc for i/o devices. More...
 
void set_output_multiple (int multiple)
 Constrain the noutput_items argument passed to forecast and general_work. More...
 
int output_multiple () const
 
void consume (int which_input, int how_many_items)
 Tell the scheduler how_many_items of input stream which_input were consumed. More...
 
void consume_each (int how_many_items)
 Tell the scheduler how_many_items were consumed on each input stream. More...
 
void produce (int which_output, int how_many_items)
 Tell the scheduler how_many_items were produced on output stream which_output. More...
 
void set_relative_rate (double relative_rate)
 Set the approximate output rate / input rate. More...
 
double relative_rate () const
 return the approximate output rate / input rate More...
 
virtual int fixed_rate_ninput_to_noutput (int ninput)
 Given ninput samples, return number of output samples that will be produced. N.B. this is only defined if fixed_rate returns true. Generally speaking, you don't need to override this. More...
 
virtual int fixed_rate_noutput_to_ninput (int noutput)
 Given noutput samples, return number of input samples required to produce noutput. N.B. this is only defined if fixed_rate returns true. Generally speaking, you don't need to override this. More...
 
uint64_t nitems_read (unsigned int which_input)
 Return the number of items read on input stream which_input. More...
 
uint64_t nitems_written (unsigned int which_output)
 Return the number of items written on output stream which_output. More...
 
tag_propagation_policy_t tag_propagation_policy ()
 Asks for the policy used by the scheduler to moved tags downstream. More...
 
void set_tag_propagation_policy (tag_propagation_policy_t p)
 Set the policy by the scheduler to determine how tags are moved downstream. More...
 
gr_block_detail_sptr detail () const
 
void set_detail (gr_block_detail_sptr detail)
 
- Public Member Functions inherited from gr_basic_block
virtual ~gr_basic_block ()
 
long unique_id () const
 
std::string name () const
 
gr_io_signature_sptr input_signature () const
 
gr_io_signature_sptr output_signature () const
 
gr_basic_block_sptr to_basic_block ()
 
virtual bool check_topology (int ninputs, int noutputs)
 Confirm that ninputs and noutputs is an acceptable combination. More...
 
template<typename T >
void set_msg_handler (T msg_handler)
 Set the callback that is fired when messages are available. More...
 
- Public Member Functions inherited from gr_msg_accepter
 gr_msg_accepter ()
 
 ~gr_msg_accepter ()
 
void post (pmt::pmt_t msg)
 send msg to msg_accepter More...
 
- Public Member Functions inherited from gruel::msg_accepter
 msg_accepter ()
 
virtual ~msg_accepter ()
 

Friends

TRELLIS_API
trellis_viterbi_combined_fi_sptr 
trellis_make_viterbi_combined_fi (const fsm &FSM, int K, int S0, int SK, int D, const std::vector< float > &TABLE, trellis_metric_type_t TYPE)
 

Additional Inherited Members

- Public Types inherited from gr_block
enum  { WORK_CALLED_PRODUCE = -2, WORK_DONE = -1 }
 Magic return values from general_work. More...
 
enum  tag_propagation_policy_t { TPP_DONT = 0, TPP_ALL_TO_ALL = 1, TPP_ONE_TO_ONE = 2 }
 
- Protected Types inherited from gr_basic_block
enum  vcolor { WHITE, GREY, BLACK }
 
- Protected Member Functions inherited from gr_block
 gr_block (void)
 
 gr_block (const std::string &name, gr_io_signature_sptr input_signature, gr_io_signature_sptr output_signature)
 
void set_fixed_rate (bool fixed_rate)
 
void add_item_tag (unsigned int which_output, uint64_t abs_offset, const pmt::pmt_t &key, const pmt::pmt_t &value, const pmt::pmt_t &srcid=pmt::PMT_F)
 Adds a new tag onto the given output buffer. More...
 
void add_item_tag (unsigned int which_output, const gr_tag_t &tag)
 Adds a new tag onto the given output buffer. More...
 
void get_tags_in_range (std::vector< gr_tag_t > &v, unsigned int which_input, uint64_t abs_start, uint64_t abs_end)
 Given a [start,end), returns a vector of all tags in the range. More...
 
void get_tags_in_range (std::vector< gr_tag_t > &v, unsigned int which_input, uint64_t abs_start, uint64_t abs_end, const pmt::pmt_t &key)
 Given a [start,end), returns a vector of all tags in the range with a given key. More...
 
- Protected Attributes inherited from gr_basic_block
std::string d_name
 
gr_io_signature_sptr d_input_signature
 
gr_io_signature_sptr d_output_signature
 
long d_unique_id
 
vcolor d_color
 

Member Function Documentation

int trellis_viterbi_combined_fi::D ( ) const
inline
void trellis_viterbi_combined_fi::forecast ( int  noutput_items,
gr_vector_int ninput_items_required 
)
virtual

Estimate input requirements given output request.

Parameters
noutput_itemsnumber of output items to produce
ninput_items_requirednumber 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.

fsm trellis_viterbi_combined_fi::FSM ( ) const
inline
int trellis_viterbi_combined_fi::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

Parameters
noutput_itemsnumber of output items to write on each output stream
ninput_itemsnumber of input items available on each input stream
input_itemsvector of pointers to the input items, one entry per input stream
output_itemsvector of pointers to the output items, one entry per output stream
Returns
number of items actually written to each output stream, or -1 on EOF. It is OK to return a value less than noutput_items. -1 <= return value <= noutput_items

general_work must call consume or consume_each to indicate how many items were consumed on each input stream.

Implements gr_block.

int trellis_viterbi_combined_fi::K ( ) const
inline
int trellis_viterbi_combined_fi::S0 ( ) const
inline
void trellis_viterbi_combined_fi::set_TABLE ( const std::vector< float > &  table)
int trellis_viterbi_combined_fi::SK ( ) const
inline
std::vector<float> trellis_viterbi_combined_fi::TABLE ( ) const
inline
trellis_metric_type_t trellis_viterbi_combined_fi::TYPE ( ) const
inline

Friends And Related Function Documentation

TRELLIS_API trellis_viterbi_combined_fi_sptr trellis_make_viterbi_combined_fi ( const fsm FSM,
int  K,
int  S0,
int  SK,
int  D,
const std::vector< float > &  TABLE,
trellis_metric_type_t  TYPE 
)
friend

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