mirror of
				https://github.com/gnss-sdr/gnss-sdr
				synced 2025-10-31 07:13:03 +00:00 
			
		
		
		
	Migrate tracking adapters to new conf structure
This commit is contained in:
		| @@ -49,26 +49,36 @@ GalileoE5aDllPllTracking::GalileoE5aDllPllTracking( | |||||||
|     ConfigurationInterface* configuration, std::string role, |     ConfigurationInterface* configuration, std::string role, | ||||||
|     unsigned int in_streams, unsigned int out_streams) : role_(role), in_streams_(in_streams), out_streams_(out_streams) |     unsigned int in_streams, unsigned int out_streams) : role_(role), in_streams_(in_streams), out_streams_(out_streams) | ||||||
| { | { | ||||||
|  |     dllpllconf_t trk_param; | ||||||
|     DLOG(INFO) << "role " << role; |     DLOG(INFO) << "role " << role; | ||||||
|     //################# CONFIGURATION PARAMETERS ######################## |     //################# CONFIGURATION PARAMETERS ######################## | ||||||
|     std::string default_item_type = "gr_complex"; |     std::string default_item_type = "gr_complex"; | ||||||
|     std::string item_type = configuration->property(role + ".item_type", default_item_type); |     std::string item_type = configuration->property(role + ".item_type", default_item_type); | ||||||
|     int fs_in_deprecated = configuration->property("GNSS-SDR.internal_fs_hz", 12000000); |     int fs_in_deprecated = configuration->property("GNSS-SDR.internal_fs_hz", 12000000); | ||||||
|     int fs_in = configuration->property("GNSS-SDR.internal_fs_sps", fs_in_deprecated); |     int fs_in = configuration->property("GNSS-SDR.internal_fs_sps", fs_in_deprecated); | ||||||
|  |     trk_param.fs_in = fs_in; | ||||||
|     bool dump = configuration->property(role + ".dump", false); |     bool dump = configuration->property(role + ".dump", false); | ||||||
|  |     trk_param.dump = dump; | ||||||
|     float pll_bw_hz = configuration->property(role + ".pll_bw_hz", 20.0); |     float pll_bw_hz = configuration->property(role + ".pll_bw_hz", 20.0); | ||||||
|     if (FLAGS_pll_bw_hz != 0.0) pll_bw_hz = static_cast<float>(FLAGS_pll_bw_hz); |     if (FLAGS_pll_bw_hz != 0.0) pll_bw_hz = static_cast<float>(FLAGS_pll_bw_hz); | ||||||
|  |     trk_param.pll_bw_hz = pll_bw_hz; | ||||||
|     float dll_bw_hz = configuration->property(role + ".dll_bw_hz", 20.0); |     float dll_bw_hz = configuration->property(role + ".dll_bw_hz", 20.0); | ||||||
|     if (FLAGS_dll_bw_hz != 0.0) dll_bw_hz = static_cast<float>(FLAGS_dll_bw_hz); |     if (FLAGS_dll_bw_hz != 0.0) dll_bw_hz = static_cast<float>(FLAGS_dll_bw_hz); | ||||||
|  |     trk_param.dll_bw_hz = dll_bw_hz; | ||||||
|     float pll_bw_narrow_hz = configuration->property(role + ".pll_bw_narrow_hz", 5.0); |     float pll_bw_narrow_hz = configuration->property(role + ".pll_bw_narrow_hz", 5.0); | ||||||
|  |     trk_param.pll_bw_narrow_hz = pll_bw_narrow_hz; | ||||||
|     float dll_bw_narrow_hz = configuration->property(role + ".dll_bw_narrow_hz", 2.0); |     float dll_bw_narrow_hz = configuration->property(role + ".dll_bw_narrow_hz", 2.0); | ||||||
|     int ti_ms = configuration->property(role + ".ti_ms", 3); |     trk_param.dll_bw_narrow_hz = dll_bw_narrow_hz; | ||||||
|     float early_late_space_chips = configuration->property(role + ".early_late_space_chips", 0.5); |     float early_late_space_chips = configuration->property(role + ".early_late_space_chips", 0.5); | ||||||
|  |     trk_param.early_late_space_chips = early_late_space_chips; | ||||||
|     std::string default_dump_filename = "./track_ch"; |     std::string default_dump_filename = "./track_ch"; | ||||||
|     std::string dump_filename = configuration->property(role + ".dump_filename", default_dump_filename); |     std::string dump_filename = configuration->property(role + ".dump_filename", default_dump_filename); | ||||||
|  |     trk_param.dump_filename = dump_filename; | ||||||
|     int vector_length = std::round(fs_in / (Galileo_E5a_CODE_CHIP_RATE_HZ / Galileo_E5a_CODE_LENGTH_CHIPS)); |     int vector_length = std::round(fs_in / (Galileo_E5a_CODE_CHIP_RATE_HZ / Galileo_E5a_CODE_LENGTH_CHIPS)); | ||||||
|  |     trk_param.vector_length = vector_length; | ||||||
|     int extend_correlation_symbols = configuration->property(role + ".extend_correlation_symbols", 1); |     int extend_correlation_symbols = configuration->property(role + ".extend_correlation_symbols", 1); | ||||||
|     float early_late_space_narrow_chips = configuration->property(role + ".early_late_space_narrow_chips", 0.15); |     float early_late_space_narrow_chips = configuration->property(role + ".early_late_space_narrow_chips", 0.15); | ||||||
|  |     trk_param.early_late_space_narrow_chips = early_late_space_narrow_chips; | ||||||
|     bool track_pilot = configuration->property(role + ".track_pilot", false); |     bool track_pilot = configuration->property(role + ".track_pilot", false); | ||||||
|     if (extend_correlation_symbols < 1) |     if (extend_correlation_symbols < 1) | ||||||
|         { |         { | ||||||
| @@ -84,22 +94,18 @@ GalileoE5aDllPllTracking::GalileoE5aDllPllTracking( | |||||||
|         { |         { | ||||||
|             std::cout << TEXT_RED << "WARNING: Galileo E5a. PLL or DLL narrow tracking bandwidth is higher than wide tracking one" << TEXT_RESET << std::endl; |             std::cout << TEXT_RED << "WARNING: Galileo E5a. PLL or DLL narrow tracking bandwidth is higher than wide tracking one" << TEXT_RESET << std::endl; | ||||||
|         } |         } | ||||||
|  |     trk_param.extend_correlation_symbols = extend_correlation_symbols; | ||||||
|  |     trk_param.track_pilot = track_pilot; | ||||||
|  |     trk_param.very_early_late_space_chips = 0.0; | ||||||
|  |     trk_param.very_early_late_space_narrow_chips = 0.0; | ||||||
|  |     trk_param.system = 'E'; | ||||||
|  |     char sig_[3] = "5X"; | ||||||
|  |     std::memcpy(trk_param.signal, sig_, 3); | ||||||
|     //################# MAKE TRACKING GNURadio object ################### |     //################# MAKE TRACKING GNURadio object ################### | ||||||
|     if (item_type.compare("gr_complex") == 0) |     if (item_type.compare("gr_complex") == 0) | ||||||
|         { |         { | ||||||
|             item_size_ = sizeof(gr_complex); |             item_size_ = sizeof(gr_complex); | ||||||
|             char sig_[3] = "5X"; |             tracking_ = dll_pll_veml_make_tracking(trk_param); | ||||||
|             item_size_ = sizeof(gr_complex); |  | ||||||
|             tracking_ = dll_pll_veml_make_tracking( |  | ||||||
|                 fs_in, vector_length, dump, dump_filename, |  | ||||||
|                 pll_bw_hz, dll_bw_hz, |  | ||||||
|                 pll_bw_narrow_hz, dll_bw_narrow_hz, |  | ||||||
|                 early_late_space_chips, |  | ||||||
|                 early_late_space_chips, |  | ||||||
|                 early_late_space_narrow_chips, |  | ||||||
|                 early_late_space_narrow_chips, |  | ||||||
|                 extend_correlation_symbols, |  | ||||||
|                 track_pilot, 'E', sig_); |  | ||||||
|         } |         } | ||||||
|     else |     else | ||||||
|         { |         { | ||||||
|   | |||||||
| @@ -96,14 +96,7 @@ GpsL2MDllPllTracking::GpsL2MDllPllTracking( | |||||||
|     if (item_type.compare("gr_complex") == 0) |     if (item_type.compare("gr_complex") == 0) | ||||||
|         { |         { | ||||||
|             item_size_ = sizeof(gr_complex); |             item_size_ = sizeof(gr_complex); | ||||||
|             tracking_ = dll_pll_veml_make_tracking( |             tracking_ = dll_pll_veml_make_tracking(trk_param); | ||||||
|                 fs_in, vector_length, dump, dump_filename, |  | ||||||
|                 pll_bw_hz, dll_bw_hz, pll_bw_hz, dll_bw_hz, |  | ||||||
|                 early_late_space_chips, |  | ||||||
|                 early_late_space_chips, |  | ||||||
|                 early_late_space_chips, |  | ||||||
|                 early_late_space_chips, |  | ||||||
|                 1, false, 'G', sig_); |  | ||||||
|         } |         } | ||||||
|     else |     else | ||||||
|         { |         { | ||||||
|   | |||||||
| @@ -105,16 +105,7 @@ GpsL5iDllPllTracking::GpsL5iDllPllTracking( | |||||||
|     if (item_type.compare("gr_complex") == 0) |     if (item_type.compare("gr_complex") == 0) | ||||||
|         { |         { | ||||||
|             item_size_ = sizeof(gr_complex); |             item_size_ = sizeof(gr_complex); | ||||||
|             tracking_ = dll_pll_veml_make_tracking( |             tracking_ = dll_pll_veml_make_tracking(trk_param); | ||||||
|                 fs_in, vector_length, dump, dump_filename, |  | ||||||
|                 pll_bw_hz, dll_bw_hz, |  | ||||||
|                 pll_bw_narrow_hz, dll_bw_narrow_hz, |  | ||||||
|                 early_late_space_chips, |  | ||||||
|                 early_late_space_chips, |  | ||||||
|                 early_late_space_narrow_chips, |  | ||||||
|                 early_late_space_narrow_chips, |  | ||||||
|                 extend_correlation_symbols, |  | ||||||
|                 track_pilot, 'G', sig_); |  | ||||||
|         } |         } | ||||||
|     else |     else | ||||||
|         { |         { | ||||||
|   | |||||||
		Reference in New Issue
	
	Block a user
	 Antonio Ramos
					Antonio Ramos