25 #ifndef INCLUDED_BLUETOOTH_MULTI_BLOCK_H 26 #define INCLUDED_BLUETOOTH_MULTI_BLOCK_H 28 #include <gnuradio/sync_block.h> 30 #include <gnuradio/analog/pwr_squelch_cc.h> 31 #include <gnuradio/filter/freq_xlating_fir_filter_ccf.h> 32 #include <gnuradio/analog/quadrature_demod_cf.h> 33 #include <gnuradio/digital/clock_recovery_mm_ff.h> 34 #include <gnuradio/digital/binary_slicer_fb.h> 35 #include <gnuradio/filter/mmse_fir_interpolator_ff.h> 105 int mm_cr(
const float *in,
int ninput_items,
float *out,
int noutput_items);
108 void demod(
const gr_complex *in,
float *out,
int noutput_items);
111 void slicer(
const float *in,
char *out,
int noutput_items);
114 int channel_symbols(
int channel, gr_vector_const_void_star &in,
char *out,
int ninput_items);
double channel_freq(int channel)
float d_omega
Definition: bluetooth_multi_block.h:90
gr::filter::mmse_fir_interpolator_ff * d_interp
Definition: bluetooth_multi_block.h:102
bluetooth_multi_block(double sample_rate, double center_freq, double squelch_threshold)
double d_center_freq
Definition: bluetooth_multi_block.h:72
int mm_cr(const float *in, int ninput_items, float *out, int noutput_items)
void slicer(const float *in, char *out, int noutput_items)
static const uint32_t BASE_FREQUENCY
Definition: bluetooth_multi_block.h:54
float d_omega_relative_limit
Definition: bluetooth_multi_block.h:89
Bluetooth multi-channel parent class.
Definition: bluetooth_multi_block.h:41
double d_samples_per_slot
Definition: bluetooth_multi_block.h:69
uint64_t d_cumulative_count
Definition: bluetooth_multi_block.h:60
int d_high_channel
Definition: bluetooth_multi_block.h:78
float d_omega_mid
Definition: bluetooth_multi_block.h:92
double d_squelch_threshold
Definition: bluetooth_multi_block.h:81
static const int SYMBOLS_PER_SLOT
Definition: bluetooth_multi_block.h:51
float d_demod_gain
Definition: bluetooth_multi_block.h:99
int channel_symbols(int channel, gr_vector_const_void_star &in, char *out, int ninput_items)
static const int SYMBOL_RATE
Definition: bluetooth_multi_block.h:48
float d_gain_omega
Definition: bluetooth_multi_block.h:91
float d_last_sample
Definition: bluetooth_multi_block.h:93
float d_mu
Definition: bluetooth_multi_block.h:88
std::vector< float > d_channel_filter
Definition: bluetooth_multi_block.h:96
float d_gain_mu
Definition: bluetooth_multi_block.h:87
void demod(const gr_complex *in, float *out, int noutput_items)
double d_sample_rate
Definition: bluetooth_multi_block.h:63
void set_symbol_history(int num_symbols)
static const int CHANNEL_WIDTH
Definition: bluetooth_multi_block.h:57
int d_low_channel
Definition: bluetooth_multi_block.h:75
int d_ddc_decimation_rate
Definition: bluetooth_multi_block.h:84
double d_samples_per_symbol
Definition: bluetooth_multi_block.h:66