23 #ifndef _ATSC_EQUALIZER_LMS2_H_
24 #define _ATSC_EQUALIZER_LMS2_H_
38 virtual int ntaps()
const;
44 filter_normal(
const float* input_samples,
float* output_samples,
int nsamples);
47 float* output_samples,
52 float* output_samples,
58 std::vector<double> d_taps_ff;
59 std::vector<double> d_taps_fb;
60 std::vector<float> d_old_output;
64 void filterN(
const float* input_samples,
float* output_samples,
int nsamples);
66 void adaptN(
const float* input_samples,
67 const float* training_pattern,
68 float* output_samples,
71 float filter1(
const float input[]);
72 float adapt1(
const float input[],
float ideal_output);
#define ATSC_API
Definition: gr-atsc/include/gnuradio/atsc/api.h:30
virtual int npretaps() const =0
how many taps are "in the future".
abstract base class for ATSC equalizer
Definition: equalizer_impl.h:33
virtual void filter_normal(const float *input_samples, float *output_samples, int nsamples)=0
Definition: equalizer_lms2_impl.h:31
virtual void filter_data_seg_sync(const float *input_samples, float *output_samples, int nsamples, int offset)=0
FILE * trainingfile
Definition: equalizer_lms2_impl.h:42
virtual void reset()
reset state (e.g., on channel change)
virtual void filter_field_sync(const float *input_samples, float *output_samples, int nsamples, int offset, int which_field)=0
virtual int ntaps() const =0
how much history the input data stream requires.