GNU Radio 3.5.3.2 C++ API
gr_adaptive_fir_ccf Class Reference

Adaptive FIR filter with gr_complex input, gr_complex output and float taps. More...

#include <gr_adaptive_fir_ccf.h>

Inheritance diagram for gr_adaptive_fir_ccf:
gr_sync_decimator gr_sync_block gr_block gr_basic_block gr_msg_accepter gruel::msg_accepter

Public Member Functions

void set_taps (const std::vector< float > &taps)
int work (int noutput_items, gr_vector_const_void_star &input_items, gr_vector_void_star &output_items)
 just like gr_block::general_work, only this arranges to call consume_each for you
- Public Member Functions inherited from gr_sync_decimator
unsigned decimation () const
void set_decimation (unsigned decimation)
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
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.
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.

Protected Member Functions

virtual float error (const gr_complex &out)=0
virtual void update_tap (float &tap, const gr_complex &in)=0
 gr_adaptive_fir_ccf (const char *name, int decimation, const std::vector< float > &taps)
- Protected Member Functions inherited from gr_sync_decimator
 gr_sync_decimator (void)
 gr_sync_decimator (const std::string &name, gr_io_signature_sptr input_signature, gr_io_signature_sptr output_signature, unsigned decimation)
- Protected Member Functions inherited from gr_sync_block
 gr_sync_block (void)
 gr_sync_block (const std::string &name, gr_io_signature_sptr input_signature, gr_io_signature_sptr output_signature)
- 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.
void add_item_tag (unsigned int which_output, const gr_tag_t &tag)
 Adds a new tag onto the given output buffer.
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.
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.
- Protected Member Functions inherited from gr_basic_block
 gr_basic_block (void)
 gr_basic_block (const std::string &name, gr_io_signature_sptr input_signature, gr_io_signature_sptr output_signature)
 Protected constructor prevents instantiation by non-derived classes.
void set_input_signature (gr_io_signature_sptr iosig)
 may only be called during constructor
void set_output_signature (gr_io_signature_sptr iosig)
 may only be called during constructor
void set_color (vcolor color)
 Allow the flowgraph to set for sorting and partitioning.
vcolor color () const

Protected Attributes

float d_error
std::vector< float > d_taps

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 }

Detailed Description

Adaptive FIR filter with gr_complex input, gr_complex output and float taps.

Constructor & Destructor Documentation

gr_adaptive_fir_ccf::gr_adaptive_fir_ccf ( const char *  name,
int  decimation,
const std::vector< float > &  taps 
)
protected

Member Function Documentation

virtual float gr_adaptive_fir_ccf::error ( const gr_complex out)
protectedpure virtual
void gr_adaptive_fir_ccf::set_taps ( const std::vector< float > &  taps)
virtual void gr_adaptive_fir_ccf::update_tap ( float &  tap,
const gr_complex in 
)
protectedpure virtual
int gr_adaptive_fir_ccf::work ( int  noutput_items,
gr_vector_const_void_star input_items,
gr_vector_void_star output_items 
)
virtual

just like gr_block::general_work, only this arranges to call consume_each for you

The user must override work to define the signal processing code

Implements gr_sync_block.

Member Data Documentation

float gr_adaptive_fir_ccf::d_error
protected
std::vector<float> gr_adaptive_fir_ccf::d_taps
protected

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