GNU Radio 3.3.0 C++ API
|
abstract base class for ATSC field sync checker More...
#include <atsci_fs_checker.h>
Public Member Functions | |
atsci_fs_checker () | |
virtual | ~atsci_fs_checker ()=0 |
virtual void | reset ()=0 |
virtual void | filter (float input_sample, atsc::syminfo input_tag, float *output_sample, atsc::syminfo *output_tag)=0 |
virtual int | delay () const =0 |
return delay in samples from input to output |
abstract base class for ATSC field sync checker
Processes input samples one at a time looking for an occurence of either the field sync 1 or field sync 2 pattern.
Note that unlike atsci_fs_correlator, this class uses the symbol_num in input_tag to avoid having to test each symbol position.
For each sample processed, an output sample and an output tag are produced. The output samples are identical to the input samples but are delayed by a number of samples given by delay()
. The output tag associated with the the given output sample indicates whether this sample is the beginning of one of the field syncs or is an ordinary sample. The tags are defined in atsci_sync_tag.h.
For ease of use, the field sync patterns are defined to begin with the first symbol of the 4 symbol data segment sync pattern that immediately proceeds the actual PN 511 code. This makes it easier for downstream code to determine the location of data segment syncs merely by counting. They'll occur every 832 samples assuming everything is working.
atsci_fs_checker::atsci_fs_checker | ( | ) |
virtual atsci_fs_checker::~atsci_fs_checker | ( | ) | [pure virtual] |
virtual int atsci_fs_checker::delay | ( | ) | const [pure virtual] |
return delay in samples from input to output
Implemented in atsci_fs_checker_naive.
virtual void atsci_fs_checker::filter | ( | float | input_sample, |
atsc::syminfo | input_tag, | ||
float * | output_sample, | ||
atsc::syminfo * | output_tag | ||
) | [pure virtual] |
Implemented in atsci_fs_checker_naive.
virtual void atsci_fs_checker::reset | ( | ) | [pure virtual] |
Implemented in atsci_fs_checker_naive.