23 #ifndef _ATSC_FS_CORRELATOR_NAIVE_H_
24 #define _ATSC_FS_CORRELATOR_NAIVE_H_
35 static const int SRSIZE = 1024;
37 float d_sample_sr[SRSIZE];
38 unsigned char d_bit_sr[SRSIZE];
40 static const int OFFSET_511 = 0;
41 static const int LENGTH_511 = 511 + 4;
42 static const int OFFSET_2ND_63 = 578;
43 static const int LENGTH_2ND_63 = 63;
45 static unsigned char s_511[LENGTH_511];
46 static unsigned char s_63[LENGTH_2ND_63];
48 inline static int wrap (
int index){
return index & (SRSIZE - 1); }
49 inline static int incr (
int index){
return wrap (index + 1); }
50 inline static int decr (
int index){
return wrap (index - 1); }
59 virtual void reset ();
60 void filter (
float input_sample,
float *output_sample,
float *output_tag);
virtual int delay() const =0
return delay in samples from input to output
Naive concrete implementation of field sync correlator.
Definition: fs_correlator_naive_impl.h:32
#define ATSC_API
Definition: gr-atsc/include/gnuradio/atsc/api.h:30
virtual void filter(float input_sample, float *output_sample, float *output_tag)=0
abstract base class for ATSC field sync correlator
Definition: fs_correlator_impl.h:48