23 #ifndef _GRATSCBITTIMINGLOOP_H_
24 #define _GRATSCBITTIMINGLOOP_H_
26 #include <gnuradio/blocks/nco.h>
27 #include <VrSigProc.h>
28 #include <VrHistoryProc.h>
29 #include <VrDecimatingSigProc.h>
32 #include <gnuradio/filter/mmse_fir_interpolator.h>
51 virtual const char *
name () {
return "GrAtscBitTimingLoop"; }
53 virtual int forecast (VrSampleRange output,
54 VrSampleRange inputs[]);
56 virtual int work (VrSampleRange output,
void *o[],
57 VrSampleRange inputs[],
void *i[]);
74 gr_mmse_fir_interpolator
intr;
78 gr_single_pole_iir<double,double,double>
loop;
84 #ifdef _BT_DIAG_OUTPUT_
90 #endif // _GRATSCBITTIMINGLOOP_H_
iType produce_sample(const iType *in, unsigned int &index)
gr_mmse_fir_interpolator intr
Definition: GrAtscBitTimingLoop.h:74
void set_loop_filter_tap(double tap)
Definition: GrAtscBitTimingLoop.h:62
double w
Definition: GrAtscBitTimingLoop.h:75
double mu
Definition: GrAtscBitTimingLoop.h:76
virtual ~GrAtscBitTimingLoop()
Definition: GrAtscBitTimingLoop.h:49
virtual int forecast(VrSampleRange output, VrSampleRange inputs[])
bool debug_no_update
Definition: GrAtscBitTimingLoop.h:79
VrSampleIndex next_input
Definition: GrAtscBitTimingLoop.h:73
ATSC BitTimingLoop.
Definition: GrAtscBitTimingLoop.h:44
float oType
Definition: GrAtscBitTimingLoop.h:68
double filter_error(double e)
float iType
Definition: GrAtscBitTimingLoop.h:67
void set_no_update(bool a_no_update)
Definition: GrAtscBitTimingLoop.h:61
void set_mu(double a_mu)
Definition: GrAtscBitTimingLoop.h:60
virtual int work(VrSampleRange output, void *o[], VrSampleRange inputs[], void *i[])
iType last_right
Definition: GrAtscBitTimingLoop.h:77
gr_single_pole_iir< double, double, double > loop
Definition: GrAtscBitTimingLoop.h:78
double d_timing_rate
Definition: GrAtscBitTimingLoop.h:82
void set_timing_rate(double rate)
Definition: GrAtscBitTimingLoop.h:63
double d_loop_filter_tap
Definition: GrAtscBitTimingLoop.h:81
virtual const char * name()
Definition: GrAtscBitTimingLoop.h:51