GNU Radio's ADAPT Package
gr::adapt::lms_filter_ff Class Referenceabstract

Least Mean Squares Adaptive Filter (float in/out) More...

#include <lms_filter_ff.h>

Inheritance diagram for gr::adapt::lms_filter_ff:

Public Types

typedef boost::shared_ptr< lms_filter_ffsptr
 

Public Member Functions

virtual void set_taps (const std::vector< float > &taps)=0
 
virtual const std::vector< float > & get_taps ()=0
 
virtual float get_mu () const =0
 
virtual void set_mu (float mu)=0
 
virtual unsigned get_skip () const =0
 
virtual void set_skip (unsigned skip)=0
 
virtual bool get_adapt () const =0
 
virtual void set_adapt (bool adapt)=0
 
virtual bool get_bypass () const =0
 
virtual void set_bypass (bool bypass)=0
 
virtual bool get_reset () const =0
 
virtual void set_reset (bool reset)=0
 

Static Public Member Functions

static sptr make (bool first_input, int num_taps, float mu, unsigned skip, unsigned decimation, bool adapt, bool bypass, bool reset)
 

Protected Member Functions

virtual float error (const float &desired, const float &out)=0
 
virtual void update_tap (float &tap, const float &in)=0
 

Detailed Description

Least Mean Squares Adaptive Filter (float in/out)

This block implements an LMS-based adaptive filter.

Member Typedef Documentation

◆ sptr

typedef boost::shared_ptr<lms_filter_ff> gr::adapt::lms_filter_ff::sptr

Member Function Documentation

◆ error()

virtual float gr::adapt::lms_filter_ff::error ( const float &  desired,
const float &  out 
)
protectedpure virtual

◆ get_adapt()

virtual bool gr::adapt::lms_filter_ff::get_adapt ( ) const
pure virtual

◆ get_bypass()

virtual bool gr::adapt::lms_filter_ff::get_bypass ( ) const
pure virtual

◆ get_mu()

virtual float gr::adapt::lms_filter_ff::get_mu ( ) const
pure virtual

◆ get_reset()

virtual bool gr::adapt::lms_filter_ff::get_reset ( ) const
pure virtual

◆ get_skip()

virtual unsigned gr::adapt::lms_filter_ff::get_skip ( ) const
pure virtual

◆ get_taps()

virtual const std::vector< float > & gr::adapt::lms_filter_ff::get_taps ( )
pure virtual

◆ make()

static sptr gr::adapt::lms_filter_ff::make ( bool  first_input,
int  num_taps,
float  mu,
unsigned  skip,
unsigned  decimation,
bool  adapt,
bool  bypass,
bool  reset 
)
static

Make an LMS adaptive filter

Parameters
first_inputSpecifies whether first input is reference or error signal (bool)
num_tapsNumber of taps in the filter (int)
muGain of the update loop (float)
skipSpecifies how many samples are skipped between successive filter updates (unsigned)
decimationDecimation rate of the filter (unsigned)
adaptControls whether filter taps are being updated (bool)
bypassBypass filter (bool)
resetReset filter taps (bool)

◆ set_adapt()

virtual void gr::adapt::lms_filter_ff::set_adapt ( bool  adapt)
pure virtual

◆ set_bypass()

virtual void gr::adapt::lms_filter_ff::set_bypass ( bool  bypass)
pure virtual

◆ set_mu()

virtual void gr::adapt::lms_filter_ff::set_mu ( float  mu)
pure virtual

◆ set_reset()

virtual void gr::adapt::lms_filter_ff::set_reset ( bool  reset)
pure virtual

◆ set_skip()

virtual void gr::adapt::lms_filter_ff::set_skip ( unsigned  skip)
pure virtual

◆ set_taps()

virtual void gr::adapt::lms_filter_ff::set_taps ( const std::vector< float > &  taps)
pure virtual

◆ update_tap()

virtual void gr::adapt::lms_filter_ff::update_tap ( float &  tap,
const float &  in 
)
protectedpure virtual

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