73class pcps_tong_acquisition_cc :
public acquisition_impl_interface
88 d_gnss_synchro = p_gnss_synchro;
94 inline uint32_t
mag()
const override
134 d_channel_fsm = std::move(channel_fsm);
141 gr_vector_const_void_star& input_items,
142 gr_vector_void_star& output_items)
override;
145 friend pcps_tong_acquisition_cc_sptr
146 pcps_tong_make_acquisition_cc(
148 uint32_t tong_init_val,
149 uint32_t tong_max_val,
150 uint32_t tong_max_dwells);
152 pcps_tong_acquisition_cc(
154 uint32_t tong_init_val,
155 uint32_t tong_max_val,
156 uint32_t tong_max_dwells);
158 void calculate_magnitudes(gr_complex* fft_begin, int32_t doppler_shift, int32_t doppler_offset);
160 std::string d_satellite_str;
163 std::ofstream d_dump_file;
167 uint64_t d_sample_counter;
171 float d_test_statistics;
174 uint32_t d_dwell_count;
175 const uint32_t d_tong_init_val;
176 const uint32_t d_tong_max_val;
177 const uint32_t d_tong_max_dwells;
178 uint32_t d_tong_count;
179 const uint32_t d_fft_size;
180 uint32_t d_num_doppler_bins;
181 uint32_t d_code_phase;
185 std::weak_ptr<ChannelFsm> d_channel_fsm;
186 std::unique_ptr<gnss_fft_complex_fwd> d_fft_if;
187 std::unique_ptr<gnss_fft_complex_rev> d_ifft;
189 std::vector<std::vector<gr_complex>> d_grid_doppler_wipeoffs;
190 std::vector<std::vector<float>> d_grid_data;
191 std::vector<gr_complex> d_fft_codes;
192 std::vector<float> d_magnitude;
int general_work(int noutput_items, gr_vector_int &ninput_items, gr_vector_const_void_star &input_items, gr_vector_void_star &output_items) override
Parallel Code Phase Search Acquisition signal processing.