#include <atsc_equalizer_nop.h>
Inheritance diagram for atsc_equalizer_nop:
Public Member Functions | |
atsc_equalizer_nop () | |
virtual | ~atsc_equalizer_nop () |
virtual void | reset () |
reset state (e.g., on channel change) | |
virtual int | ntaps () const |
how much history the input data stream requires. | |
virtual int | npretaps () const |
how many taps are "in the future". | |
Protected Member Functions | |
virtual void | filter_normal (const float *input_samples, float *output_samples, int nsamples) |
virtual void | filter_data_seg_sync (const float *input_samples, float *output_samples, int nsamples, int offset) |
virtual void | filter_field_sync (const float *input_samples, float *output_samples, int nsamples, int offset, int which_field) |
Private Member Functions | |
float | scale (float input) |
float | scale_and_train (float input) |
|
|
|
|
|
Input range is known to consist of only a data segment sync or a portion of a data segment sync.
Implements atsc_equalizer.
|
|
Input range is known to consist of only a field sync segment or a portion of a field sync segment.
Implements atsc_equalizer.
|
|
Input range is known NOT TO CONTAIN data segment syncs or field syncs. This should be the fast path. In the non decicion directed case, this just runs the input through the filter without adapting it.
Implements atsc_equalizer.
|
|
how many taps are "in the future". This allows us to handle what the ATSC folks call "pre-ghosts". What it really does is allow the caller to jack with the offset between the tags and the data so that everything magically works out. npretaps () must return a value between 0 and ntaps() - 1. If npretaps () returns 0, this means that the equalizer will only handle multipath "in the past." I suspect that a good value would be something like 15% - 20% of ntaps (). Implements atsc_equalizer.
|
|
how much history the input data stream requires. This must return a value >= 1. Think of this as the number of samples you need to look at to compute a single output sample. Implements atsc_equalizer.
|
|
reset state (e.g., on channel change) Note, subclasses must invoke the superclass's method too! Reimplemented from atsc_equalizer.
|
|
|
|
|