diff options
Diffstat (limited to 'gsm-tvoid/src/lib/gsm_burst_cf.cc')
-rwxr-xr-x | gsm-tvoid/src/lib/gsm_burst_cf.cc | 11 |
1 files changed, 7 insertions, 4 deletions
diff --git a/gsm-tvoid/src/lib/gsm_burst_cf.cc b/gsm-tvoid/src/lib/gsm_burst_cf.cc index 8954b3f..f08424d 100755 --- a/gsm-tvoid/src/lib/gsm_burst_cf.cc +++ b/gsm-tvoid/src/lib/gsm_burst_cf.cc @@ -9,9 +9,9 @@ #include <stdio.h> #include <gri_mmse_fir_interpolator_cc.h> -gsm_burst_cf_sptr gsm_make_burst_cf (float sample_rate) +gsm_burst_cf_sptr gsm_make_burst_cf (gr_feval_dd *t,float sample_rate) { - return gsm_burst_cf_sptr (new gsm_burst_cf (sample_rate)); + return gsm_burst_cf_sptr (new gsm_burst_cf (t,sample_rate)); } static const int MIN_IN = 1; // minimum number of input streams @@ -19,15 +19,17 @@ static const int MAX_IN = 1; // maximum number of input streams static const int MIN_OUT = 1; // minimum number of output streams static const int MAX_OUT = 1; // maximum number of output streams -gsm_burst_cf::gsm_burst_cf (float sample_rate) : +gsm_burst_cf::gsm_burst_cf (gr_feval_dd *t, float sample_rate) : gr_block ( "burst_cf", gr_make_io_signature (MIN_IN, MAX_IN, sizeof (gr_complex)), gr_make_io_signature (MIN_OUT, MAX_OUT, USEFUL_BITS * sizeof (float))), + gsm_burst(t), d_clock_counter(0.0), d_last_sample(0.0,0.0), d_interp(new gri_mmse_fir_interpolator_cc()) { + printf("gsm_burst_cf: enter constructor\n"); //clocking parameters d_sample_interval = 1.0 / sample_rate; @@ -78,7 +80,8 @@ int gsm_burst_cf::general_work (int noutput_items, d_clock_counter -= GSM_SYMBOL_PERIOD; //reset clock for next sample, keep the remainder - float mu = 1.0 - d_clock_counter / GSM_SYMBOL_PERIOD; + //float mu = 1.0 - d_clock_counter / GSM_SYMBOL_PERIOD; + float mu = d_clock_counter / GSM_SYMBOL_PERIOD; gr_complex sample = d_interp->interpolate (&in[ii], mu); //FIXME: this seems noisy, make sure it is being used correctly gr_complex conjprod = sample * conj(d_last_sample); |