GPLIB++
|
A generic base class for all types of adaptive filters. More...
#include <AdaptiveFilter.h>
Public Member Functions | |
const gplib::rvec & | GetFilterOutput () const |
Access to the last calculated output (not sure if needed) More... | |
const gplib::rvec & | GetEpsilon () const |
Return the last estimation error. More... | |
virtual void | PrintWeights (std::ostream &output)=0 |
Print the current set of weights to the output stream, has to be implemented in derived class. More... | |
virtual const gplib::rvec & | GetWeightsAsVector ()=0 |
We can always convert the weights to some sort of vector, the details have to be implemented in the derived class. More... | |
virtual void | AdaptFilter (const gplib::rvec &Input, const gplib::rvec &Desired)=0 |
Adapt the filter weights given the Input and Desired vectors. More... | |
virtual void | CalcOutput (const gplib::rvec &Input, gplib::rvec &Output)=0 |
Calculate the filter output given Input. More... | |
AdaptiveFilter (const int inputsize, const int outputsize) | |
The constructor needs to know the length of the input and output vectors for memory allocation. More... | |
virtual | ~AdaptiveFilter () |
Protected Member Functions | |
unsigned int | GetInputLength () |
Access function for derived classes for the inputlength. More... | |
unsigned int | GetOutputLength () |
Access function for derived classes for the outputlength. More... | |
void | SetEpsilon (const gplib::rvec &MyEps) |
Possibility for derived classes to set estimation error. More... | |
void | SetOutput (const gplib::rvec &Out) |
Possibility for derived classes to set output. More... | |
Friends | |
class | ApplyFilter |
A generic base class for all types of adaptive filters.
The class AdaptiveFilter provides a unified interface for various types of adaptive filters and storage for some quantities that are common to all of them. Ideally this should facilitate transparent use of all filters in any program or routine. See, for example, mtuadaptive.cpp. We assume that the filter length and number of output points is constant for the life of the object.
Definition at line 29 of file AdaptiveFilter.h.
gplib::AdaptiveFilter::AdaptiveFilter | ( | const int | inputsize, |
const int | outputsize | ||
) |
The constructor needs to know the length of the input and output vectors for memory allocation.
Definition at line 6 of file AdaptiveFilter.cpp.
|
virtual |
Definition at line 11 of file AdaptiveFilter.cpp.
|
pure virtual |
Adapt the filter weights given the Input and Desired vectors.
Implemented in gplib::NeuralNetwork, gplib::RLSCanceller, gplib::IterDecon, gplib::WienerInterpolator, gplib::LMSCanceller, gplib::AMRLSCanceller, and gplib::WienerFilter.
Referenced by gplib::ApplyFilter::FilterData().
|
pure virtual |
Calculate the filter output given Input.
Implemented in gplib::NeuralNetwork, gplib::IterDecon, gplib::LSSOFilter, and gplib::WienerFilter.
Referenced by gplib::ApplyFilter::FilterData().
|
inline |
Return the last estimation error.
Definition at line 68 of file AdaptiveFilter.h.
Referenced by gplib::AMRLSCanceller::AdaptFilter(), gplib::LMSCanceller::AdaptFilter(), gplib::RLSCanceller::AdaptFilter(), gplib::ApplyFilter::FilterData(), and main().
|
inline |
Access to the last calculated output (not sure if needed)
Definition at line 63 of file AdaptiveFilter.h.
Referenced by gplib::LMSCanceller::AdaptFilter(), gplib::RLSCanceller::AdaptFilter(), and gplib::NeuralNetwork::AdaptFilter().
|
inlineprotected |
Access function for derived classes for the inputlength.
Definition at line 42 of file AdaptiveFilter.h.
Referenced by gplib::LMSCanceller::AdaptFilter(), and gplib::ApplyFilter::FilterData().
|
inlineprotected |
Access function for derived classes for the outputlength.
Definition at line 47 of file AdaptiveFilter.h.
Referenced by gplib::LMSCanceller::AdaptFilter(), gplib::ApplyFilter::AddReferenceChannel(), and gplib::ApplyFilter::FilterData().
|
pure virtual |
We can always convert the weights to some sort of vector, the details have to be implemented in the derived class.
Implemented in gplib::NeuralNetwork, gplib::LSSOFilter, and gplib::IterDecon.
Referenced by gplib::ApplyFilter::FilterData().
|
pure virtual |
Print the current set of weights to the output stream, has to be implemented in derived class.
Implemented in gplib::NeuralNetwork, gplib::LSSOFilter, gplib::IterDecon, and gplib::WienerFilter.
|
inlineprotected |
Possibility for derived classes to set estimation error.
Definition at line 52 of file AdaptiveFilter.h.
Referenced by gplib::LMSCanceller::AdaptFilter(), gplib::RLSCanceller::AdaptFilter(), and gplib::NeuralNetwork::AdaptFilter().
|
inlineprotected |
Possibility for derived classes to set output.
Definition at line 57 of file AdaptiveFilter.h.
Referenced by gplib::WienerFilter::CalcOutput(), gplib::LSSOFilter::CalcOutput(), gplib::IterDecon::CalcOutput(), and gplib::NeuralNetwork::CalcOutput().
|
friend |
Definition at line 84 of file AdaptiveFilter.h.