18 #ifndef GNSS_SDR_NOTCH_LITE_CC_H 19 #define GNSS_SDR_NOTCH_LITE_CC_H 22 #include <gnuradio/block.h> 23 #include <gnuradio/fft/fft.h> 24 #include <volk_gnsssdr/volk_gnsssdr_alloc.h> 36 using notch_lite_sptr = gnss_shared_ptr<NotchLite>;
38 notch_lite_sptr make_notch_filter_lite(
42 int32_t n_segments_est,
43 int32_t n_segments_reset,
44 int32_t n_segments_coeff);
54 int general_work(
int noutput_items, gr_vector_int &ninput_items,
55 gr_vector_const_void_star &input_items,
56 gr_vector_void_star &output_items);
59 friend notch_lite_sptr make_notch_filter_lite(
float p_c_factor,
float pfa, int32_t length, int32_t n_segments_est, int32_t n_segments_reset, int32_t n_segments_coeff);
60 NotchLite(
float p_c_factor,
float pfa, int32_t length, int32_t n_segments_est, int32_t n_segments_reset, int32_t n_segments_coeff);
61 #if GNURADIO_FFT_USES_TEMPLATES 62 std::unique_ptr<gr::fft::fft_complex_fwd> d_fft_;
64 std::unique_ptr<gr::fft::fft_complex> d_fft_;
66 volk_gnsssdr::vector<float> power_spect_;
69 gr_complex p_c_factor_;
70 gr_complex c_samples1_;
71 gr_complex c_samples2_;
79 int32_t n_segments_est_;
80 int32_t n_segments_reset_;
81 int32_t n_segments_coeff_reset_;
82 int32_t n_segments_coeff_;
90 #endif // GNSS_SDR_NOTCH_LITE_CC_H This class implements a real-time software-defined multi state notch filter light version...
This interface represents a GNSS block.