mirror of
https://github.com/gnss-sdr/gnss-sdr
synced 2024-12-14 04:00:34 +00:00
Fixing broken tests due to changes in the configuration names
This commit is contained in:
parent
98f841880f
commit
7d0ac88f93
@ -88,14 +88,14 @@ void GalileoE1DllPllVemlTrackingInternalTest::init()
|
|||||||
gnss_synchro.PRN = 11;
|
gnss_synchro.PRN = 11;
|
||||||
|
|
||||||
config->set_property("GNSS-SDR.internal_fs_hz", "8000000");
|
config->set_property("GNSS-SDR.internal_fs_hz", "8000000");
|
||||||
config->set_property("Tracking.item_type", "gr_complex");
|
config->set_property("Tracking_Galileo.item_type", "gr_complex");
|
||||||
config->set_property("Tracking.dump", "true");
|
config->set_property("Tracking_Galileo.dump", "true");
|
||||||
config->set_property("Tracking.dump_filename", "../data/veml_tracking_ch_");
|
config->set_property("Tracking_Galileo.dump_filename", "../data/veml_tracking_ch_");
|
||||||
config->set_property("Tracking.implementation", "Galileo_E1_DLL_PLL_VEML_Tracking");
|
config->set_property("Tracking_Galileo.implementation", "Galileo_E1_DLL_PLL_VEML_Tracking");
|
||||||
config->set_property("Tracking.early_late_space_chips", "0.15");
|
config->set_property("Tracking_Galileo.early_late_space_chips", "0.15");
|
||||||
config->set_property("Tracking.very_early_late_space_chips", "0.6");
|
config->set_property("Tracking_Galileo.very_early_late_space_chips", "0.6");
|
||||||
config->set_property("Tracking.pll_bw_hz", "30.0");
|
config->set_property("Tracking_Galileo.pll_bw_hz", "30.0");
|
||||||
config->set_property("Tracking.dll_bw_hz", "2.0");
|
config->set_property("Tracking_Galileo.dll_bw_hz", "2.0");
|
||||||
}
|
}
|
||||||
|
|
||||||
|
|
||||||
|
@ -135,7 +135,7 @@ void GalileoE1PcpsTongAmbiguousAcquisitionGSoC2013Test::config_1()
|
|||||||
{
|
{
|
||||||
gnss_synchro.Channel_ID = 0;
|
gnss_synchro.Channel_ID = 0;
|
||||||
gnss_synchro.System = 'E';
|
gnss_synchro.System = 'E';
|
||||||
std::string signal = "1C";
|
std::string signal = "1B";
|
||||||
signal.copy(gnss_synchro.Signal, 2, 0);
|
signal.copy(gnss_synchro.Signal, 2, 0);
|
||||||
|
|
||||||
integration_time_ms = 4;
|
integration_time_ms = 4;
|
||||||
@ -189,24 +189,24 @@ void GalileoE1PcpsTongAmbiguousAcquisitionGSoC2013Test::config_1()
|
|||||||
config->set_property("InputFilter.filter_type", "bandpass");
|
config->set_property("InputFilter.filter_type", "bandpass");
|
||||||
config->set_property("InputFilter.grid_density", "16");
|
config->set_property("InputFilter.grid_density", "16");
|
||||||
|
|
||||||
config->set_property("Acquisition.item_type", "gr_complex");
|
config->set_property("Acquisition_Galileo.item_type", "gr_complex");
|
||||||
config->set_property("Acquisition.if", "0");
|
config->set_property("Acquisition_Galileo.if", "0");
|
||||||
config->set_property("Acquisition.coherent_integration_time_ms",
|
config->set_property("Acquisition_Galileo.coherent_integration_time_ms",
|
||||||
std::to_string(integration_time_ms));
|
std::to_string(integration_time_ms));
|
||||||
config->set_property("Acquisition.tong_init_val", "1");
|
config->set_property("Acquisition_Galileo.tong_init_val", "1");
|
||||||
config->set_property("Acquisition.tong_max_val", "8");
|
config->set_property("Acquisition_Galileo.tong_max_val", "8");
|
||||||
config->set_property("Acquisition.implementation", "Galileo_E1_PCPS_Tong_Ambiguous_Acquisition");
|
config->set_property("Acquisition_Galileo.implementation", "Galileo_E1_PCPS_Tong_Ambiguous_Acquisition");
|
||||||
config->set_property("Acquisition.threshold", "0.3");
|
config->set_property("Acquisition_Galileo.threshold", "0.3");
|
||||||
config->set_property("Acquisition.doppler_max", "10000");
|
config->set_property("Acquisition_Galileo.doppler_max", "10000");
|
||||||
config->set_property("Acquisition.doppler_step", "250");
|
config->set_property("Acquisition_Galileo.doppler_step", "250");
|
||||||
config->set_property("Acquisition.dump", "false");
|
config->set_property("Acquisition_Galileo.dump", "false");
|
||||||
}
|
}
|
||||||
|
|
||||||
void GalileoE1PcpsTongAmbiguousAcquisitionGSoC2013Test::config_2()
|
void GalileoE1PcpsTongAmbiguousAcquisitionGSoC2013Test::config_2()
|
||||||
{
|
{
|
||||||
gnss_synchro.Channel_ID = 0;
|
gnss_synchro.Channel_ID = 0;
|
||||||
gnss_synchro.System = 'E';
|
gnss_synchro.System = 'E';
|
||||||
std::string signal = "1C";
|
std::string signal = "1B";
|
||||||
signal.copy(gnss_synchro.Signal, 2, 0);
|
signal.copy(gnss_synchro.Signal, 2, 0);
|
||||||
|
|
||||||
integration_time_ms = 4;
|
integration_time_ms = 4;
|
||||||
@ -278,17 +278,17 @@ void GalileoE1PcpsTongAmbiguousAcquisitionGSoC2013Test::config_2()
|
|||||||
config->set_property("InputFilter.filter_type", "bandpass");
|
config->set_property("InputFilter.filter_type", "bandpass");
|
||||||
config->set_property("InputFilter.grid_density", "16");
|
config->set_property("InputFilter.grid_density", "16");
|
||||||
|
|
||||||
config->set_property("Acquisition.item_type", "gr_complex");
|
config->set_property("Acquisition_Galileo.item_type", "gr_complex");
|
||||||
config->set_property("Acquisition.if", "0");
|
config->set_property("Acquisition_Galileo.if", "0");
|
||||||
config->set_property("Acquisition.coherent_integration_time_ms",
|
config->set_property("Acquisition_Galileo.coherent_integration_time_ms",
|
||||||
std::to_string(integration_time_ms));
|
std::to_string(integration_time_ms));
|
||||||
config->set_property("Acquisition.tong_init_val", "1");
|
config->set_property("Acquisition_Galileo.tong_init_val", "1");
|
||||||
config->set_property("Acquisition.tong_max_val", "8");
|
config->set_property("Acquisition_Galileo.tong_max_val", "8");
|
||||||
config->set_property("Acquisition.implementation", "Galileo_E1_PCPS_Tong_Ambiguous_Acquisition");
|
config->set_property("Acquisition_Galileo.implementation", "Galileo_E1_PCPS_Tong_Ambiguous_Acquisition");
|
||||||
config->set_property("Acquisition.threshold", "0.00028"); // Pfa,a = 0.1
|
config->set_property("Acquisition_Galileo.threshold", "0.00028"); // Pfa,a = 0.1
|
||||||
config->set_property("Acquisition.doppler_max", "10000");
|
config->set_property("Acquisition_Galileo.doppler_max", "10000");
|
||||||
config->set_property("Acquisition.doppler_step", "250");
|
config->set_property("Acquisition_Galileo.doppler_step", "250");
|
||||||
config->set_property("Acquisition.dump", "false");
|
config->set_property("Acquisition_Galileo.dump", "false");
|
||||||
}
|
}
|
||||||
|
|
||||||
void GalileoE1PcpsTongAmbiguousAcquisitionGSoC2013Test::start_queue()
|
void GalileoE1PcpsTongAmbiguousAcquisitionGSoC2013Test::start_queue()
|
||||||
|
@ -16,7 +16,7 @@
|
|||||||
* GNSS-SDR is free software: you can redistribute it and/or modify
|
* GNSS-SDR is free software: you can redistribute it and/or modify
|
||||||
* it under the terms of the GNU General Public License as published by
|
* it under the terms of the GNU General Public License as published by
|
||||||
* the Free Software Foundation, either version 3 of the License, or
|
* the Free Software Foundation, either version 3 of the License, or
|
||||||
* at your option) any later version.
|
* (at your option) any later version.
|
||||||
*
|
*
|
||||||
* GNSS-SDR is distributed in the hope that it will be useful,
|
* GNSS-SDR is distributed in the hope that it will be useful,
|
||||||
* but WITHOUT ANY WARRANTY; without even the implied warranty of
|
* but WITHOUT ANY WARRANTY; without even the implied warranty of
|
||||||
@ -58,14 +58,14 @@ class GalileoE5aPcpsAcquisitionGSoC2014GensourceTest: public ::testing::Test
|
|||||||
{
|
{
|
||||||
protected:
|
protected:
|
||||||
GalileoE5aPcpsAcquisitionGSoC2014GensourceTest()
|
GalileoE5aPcpsAcquisitionGSoC2014GensourceTest()
|
||||||
{
|
{
|
||||||
queue = gr::msg_queue::make(0);
|
queue = gr::msg_queue::make(0);
|
||||||
top_block = gr::make_top_block("Acquisition test");
|
top_block = gr::make_top_block("Acquisition test");
|
||||||
|
|
||||||
item_size = sizeof(gr_complex);
|
item_size = sizeof(gr_complex);
|
||||||
stop = false;
|
stop = false;
|
||||||
message = 0;
|
message = 0;
|
||||||
}
|
}
|
||||||
|
|
||||||
~GalileoE5aPcpsAcquisitionGSoC2014GensourceTest()
|
~GalileoE5aPcpsAcquisitionGSoC2014GensourceTest()
|
||||||
{
|
{
|
||||||
@ -149,8 +149,8 @@ void GalileoE5aPcpsAcquisitionGSoC2014GensourceTest::config_1()
|
|||||||
{
|
{
|
||||||
gnss_synchro.Channel_ID = 0;
|
gnss_synchro.Channel_ID = 0;
|
||||||
gnss_synchro.System = 'E';
|
gnss_synchro.System = 'E';
|
||||||
// std::string signal = "5I";
|
// std::string signal = "5I";
|
||||||
// std::string signal = "5Q";
|
// std::string signal = "5Q";
|
||||||
std::string signal = "5X";
|
std::string signal = "5X";
|
||||||
signal.copy(gnss_synchro.Signal,2,0);
|
signal.copy(gnss_synchro.Signal,2,0);
|
||||||
|
|
||||||
@ -162,13 +162,13 @@ void GalileoE5aPcpsAcquisitionGSoC2014GensourceTest::config_1()
|
|||||||
//fs_in = 30.69e6;
|
//fs_in = 30.69e6;
|
||||||
//fs_in = 20.47e6;
|
//fs_in = 20.47e6;
|
||||||
|
|
||||||
// unsigned int delay_samples = (delay_chips_[sat] % codelen)
|
// unsigned int delay_samples = (delay_chips_[sat] % codelen)
|
||||||
// * samples_per_code_[sat] / codelen;
|
// * samples_per_code_[sat] / codelen;
|
||||||
expected_delay_chips = round(14000*((double)10230000/(double)fs_in));
|
expected_delay_chips = round(14000*((double)10230000/(double)fs_in));
|
||||||
expected_doppler_hz = 2800;
|
expected_doppler_hz = 2800;
|
||||||
//expected_doppler_hz = 0;
|
//expected_doppler_hz = 0;
|
||||||
expected_delay_sec = 94;
|
expected_delay_sec = 94;
|
||||||
// CAF_window_hz = 3000;
|
// CAF_window_hz = 3000;
|
||||||
CAF_window_hz = 0;
|
CAF_window_hz = 0;
|
||||||
Zero_padding = 0;
|
Zero_padding = 0;
|
||||||
|
|
||||||
@ -231,22 +231,22 @@ void GalileoE5aPcpsAcquisitionGSoC2014GensourceTest::config_1()
|
|||||||
config->set_property("InputFilter.filter_type", "bandpass");
|
config->set_property("InputFilter.filter_type", "bandpass");
|
||||||
config->set_property("InputFilter.grid_density", "16");
|
config->set_property("InputFilter.grid_density", "16");
|
||||||
|
|
||||||
config->set_property("Acquisition.item_type", "gr_complex");
|
config->set_property("Acquisition_Galileo.item_type", "gr_complex");
|
||||||
config->set_property("Acquisition.if", "0");
|
config->set_property("Acquisition_Galileo.if", "0");
|
||||||
config->set_property("Acquisition.coherent_integration_time_ms",
|
config->set_property("Acquisition_Galileo.coherent_integration_time_ms",
|
||||||
std::to_string(integration_time_ms));
|
std::to_string(integration_time_ms));
|
||||||
config->set_property("Acquisition.max_dwells", "1");
|
config->set_property("Acquisition_Galileo.max_dwells", "1");
|
||||||
config->set_property("Acquisition.CAF_window_hz",std::to_string(CAF_window_hz));
|
config->set_property("Acquisition_Galileo.CAF_window_hz",std::to_string(CAF_window_hz));
|
||||||
config->set_property("Acquisition.Zero_padding",std::to_string(Zero_padding));
|
config->set_property("Acquisition_Galileo.Zero_padding",std::to_string(Zero_padding));
|
||||||
|
|
||||||
config->set_property("Acquisition.implementation", "Galileo_E5a_Noncoherent_IQ_Acquisition_CAF");
|
config->set_property("Acquisition_Galileo.implementation", "Galileo_E5a_Noncoherent_IQ_Acquisition_CAF");
|
||||||
config->set_property("Acquisition.pfa","0.003");
|
config->set_property("Acquisition_Galileo.pfa","0.003");
|
||||||
// config->set_property("Acquisition.threshold", "0.01");
|
// config->set_property("Acquisition_Galileo.threshold", "0.01");
|
||||||
config->set_property("Acquisition.doppler_max", "10000");
|
config->set_property("Acquisition_Galileo.doppler_max", "10000");
|
||||||
config->set_property("Acquisition.doppler_step", "250");
|
config->set_property("Acquisition_Galileo.doppler_step", "250");
|
||||||
// config->set_property("Acquisition.doppler_step", "500");
|
// config->set_property("Acquisition_Galileo.doppler_step", "500");
|
||||||
config->set_property("Acquisition.bit_transition_flag", "false");
|
config->set_property("Acquisition_Galileo.bit_transition_flag", "false");
|
||||||
config->set_property("Acquisition.dump", "true");
|
config->set_property("Acquisition_Galileo.dump", "true");
|
||||||
config->set_property("SignalSource.dump_filename", "../data/acquisition.dat");
|
config->set_property("SignalSource.dump_filename", "../data/acquisition.dat");
|
||||||
}
|
}
|
||||||
|
|
||||||
@ -280,19 +280,19 @@ void GalileoE5aPcpsAcquisitionGSoC2014GensourceTest::config_2()
|
|||||||
|
|
||||||
config->set_property("GNSS-SDR.internal_fs_hz", std::to_string(fs_in));
|
config->set_property("GNSS-SDR.internal_fs_hz", std::to_string(fs_in));
|
||||||
|
|
||||||
config->set_property("Acquisition.item_type", "gr_complex");
|
config->set_property("Acquisition_Galileo.item_type", "gr_complex");
|
||||||
config->set_property("Acquisition.if", "0");
|
config->set_property("Acquisition_Galileo.if", "0");
|
||||||
config->set_property("Acquisition.coherent_integration_time_ms",
|
config->set_property("Acquisition_Galileo.coherent_integration_time_ms",
|
||||||
std::to_string(integration_time_ms));
|
std::to_string(integration_time_ms));
|
||||||
config->set_property("Acquisition.max_dwells", "1");
|
config->set_property("Acquisition_Galileo.max_dwells", "1");
|
||||||
config->set_property("Acquisition.implementation", "Galileo_E5a_PCPS_Acquisition");
|
config->set_property("Acquisition_Galileo.implementation", "Galileo_E5a_PCPS_Acquisition");
|
||||||
//config->set_property("Acquisition.implementation", "Galileo_E5a_Pilot_3ms_Acquisition");
|
//config->set_property("Acquisition_Galileo.implementation", "Galileo_E5a_Pilot_3ms_Acquisition");
|
||||||
//config->set_property("Acquisition.implementation", "Galileo_E5ax_2ms_Pcps_Acquisition");
|
//config->set_property("Acquisition_Galileo.implementation", "Galileo_E5ax_2ms_Pcps_Acquisition");
|
||||||
config->set_property("Acquisition.threshold", "0.1");
|
config->set_property("Acquisition_Galileo.threshold", "0.1");
|
||||||
config->set_property("Acquisition.doppler_max", "10000");
|
config->set_property("Acquisition_Galileo.doppler_max", "10000");
|
||||||
config->set_property("Acquisition.doppler_step", "250");
|
config->set_property("Acquisition_Galileo.doppler_step", "250");
|
||||||
config->set_property("Acquisition.bit_transition_flag", "false");
|
config->set_property("Acquisition_Galileo.bit_transition_flag", "false");
|
||||||
config->set_property("Acquisition.dump", "true");
|
config->set_property("Acquisition_Galileo.dump", "true");
|
||||||
config->set_property("SignalSource.dump_filename", "../data/acquisition.dat");
|
config->set_property("SignalSource.dump_filename", "../data/acquisition.dat");
|
||||||
}
|
}
|
||||||
|
|
||||||
@ -405,20 +405,20 @@ void GalileoE5aPcpsAcquisitionGSoC2014GensourceTest::config_3()
|
|||||||
config->set_property("InputFilter.filter_type", "bandpass");
|
config->set_property("InputFilter.filter_type", "bandpass");
|
||||||
config->set_property("InputFilter.grid_density", "16");
|
config->set_property("InputFilter.grid_density", "16");
|
||||||
|
|
||||||
config->set_property("Acquisition.item_type", "gr_complex");
|
config->set_property("Acquisition_Galileo.item_type", "gr_complex");
|
||||||
config->set_property("Acquisition.if", "0");
|
config->set_property("Acquisition_Galileo.if", "0");
|
||||||
config->set_property("Acquisition.coherent_integration_time_ms",
|
config->set_property("Acquisition_Galileo.coherent_integration_time_ms",
|
||||||
std::to_string(integration_time_ms));
|
std::to_string(integration_time_ms));
|
||||||
config->set_property("Acquisition.max_dwells", "1");
|
config->set_property("Acquisition_Galileo.max_dwells", "1");
|
||||||
config->set_property("Acquisition.implementation", "Galileo_E5a_PCPS_Acquisition");
|
config->set_property("Acquisition_Galileo.implementation", "Galileo_E5a_PCPS_Acquisition");
|
||||||
//config->set_property("Acquisition.implementation", "Galileo_E1_PCPS_Ambiguous_Acquisition");
|
//config->set_property("Acquisition.implementation", "Galileo_E1_PCPS_Ambiguous_Acquisition");
|
||||||
//config->set_property("Acquisition.implementation", "Galileo_E5a_Pilot_3ms_Acquisition");
|
//config->set_property("Acquisition.implementation", "Galileo_E5a_Pilot_3ms_Acquisition");
|
||||||
|
|
||||||
config->set_property("Acquisition.threshold", "0.5");
|
config->set_property("Acquisition_Galileo.threshold", "0.5");
|
||||||
config->set_property("Acquisition.doppler_max", "10000");
|
config->set_property("Acquisition_Galileo.doppler_max", "10000");
|
||||||
config->set_property("Acquisition.doppler_step", "250");
|
config->set_property("Acquisition_Galileo.doppler_step", "250");
|
||||||
config->set_property("Acquisition.bit_transition_flag", "false");
|
config->set_property("Acquisition_Galileo.bit_transition_flag", "false");
|
||||||
config->set_property("Acquisition.dump", "true");
|
config->set_property("Acquisition_Galileo.dump", "true");
|
||||||
config->set_property("SignalSource.dump_filename", "../data/acquisition.dat");
|
config->set_property("SignalSource.dump_filename", "../data/acquisition.dat");
|
||||||
}
|
}
|
||||||
|
|
||||||
@ -456,37 +456,37 @@ void GalileoE5aPcpsAcquisitionGSoC2014GensourceTest::process_message()
|
|||||||
{
|
{
|
||||||
if (message == 1)
|
if (message == 1)
|
||||||
{
|
{
|
||||||
double delay_error_chips;
|
double delay_error_chips;
|
||||||
double doppler_error_hz;
|
double doppler_error_hz;
|
||||||
switch (sat)
|
switch (sat)
|
||||||
{
|
{
|
||||||
case 0:
|
case 0:
|
||||||
delay_error_chips = abs((double)expected_delay_chips - (double)(gnss_synchro.Acq_delay_samples-5)*10230.0/((double)fs_in*1e-3));
|
delay_error_chips = abs((double)expected_delay_chips - (double)(gnss_synchro.Acq_delay_samples-5)*10230.0/((double)fs_in*1e-3));
|
||||||
doppler_error_hz = abs(expected_doppler_hz - gnss_synchro.Acq_doppler_hz);
|
doppler_error_hz = abs(expected_doppler_hz - gnss_synchro.Acq_doppler_hz);
|
||||||
break;
|
break;
|
||||||
case 1:
|
case 1:
|
||||||
delay_error_chips = abs((double)expected_delay_chips1 - (double)(gnss_synchro.Acq_delay_samples-5)*10230.0/((double)fs_in*1e-3));
|
delay_error_chips = abs((double)expected_delay_chips1 - (double)(gnss_synchro.Acq_delay_samples-5)*10230.0/((double)fs_in*1e-3));
|
||||||
doppler_error_hz = abs(expected_doppler_hz1 - gnss_synchro.Acq_doppler_hz);
|
doppler_error_hz = abs(expected_doppler_hz1 - gnss_synchro.Acq_doppler_hz);
|
||||||
break;
|
break;
|
||||||
case 2:
|
case 2:
|
||||||
delay_error_chips = abs((double)expected_delay_chips2 - (double)(gnss_synchro.Acq_delay_samples-5)*10230.0/((double)fs_in*1e-3));
|
delay_error_chips = abs((double)expected_delay_chips2 - (double)(gnss_synchro.Acq_delay_samples-5)*10230.0/((double)fs_in*1e-3));
|
||||||
doppler_error_hz = abs(expected_doppler_hz2 - gnss_synchro.Acq_doppler_hz);
|
doppler_error_hz = abs(expected_doppler_hz2 - gnss_synchro.Acq_doppler_hz);
|
||||||
break;
|
break;
|
||||||
case 3:
|
case 3:
|
||||||
delay_error_chips = abs((double)expected_delay_chips3 - (double)(gnss_synchro.Acq_delay_samples-5)*10230.0/((double)fs_in*1e-3));
|
delay_error_chips = abs((double)expected_delay_chips3 - (double)(gnss_synchro.Acq_delay_samples-5)*10230.0/((double)fs_in*1e-3));
|
||||||
doppler_error_hz = abs(expected_doppler_hz3 - gnss_synchro.Acq_doppler_hz);
|
doppler_error_hz = abs(expected_doppler_hz3 - gnss_synchro.Acq_doppler_hz);
|
||||||
break;
|
break;
|
||||||
default: // case 3
|
default: // case 3
|
||||||
std::cout << "Error: message from unexpected acquisition channel" << std::endl;
|
std::cout << "Error: message from unexpected acquisition channel" << std::endl;
|
||||||
break;
|
break;
|
||||||
}
|
}
|
||||||
detection_counter++;
|
detection_counter++;
|
||||||
|
|
||||||
// The term -5 is here to correct the additional delay introduced by the FIR filter
|
// The term -5 is here to correct the additional delay introduced by the FIR filter
|
||||||
/*
|
/*
|
||||||
double delay_error_chips = abs((double)expected_delay_chips - (double)(gnss_synchro.Acq_delay_samples-5)*10230.0/((double)fs_in*1e-3));
|
double delay_error_chips = abs((double)expected_delay_chips - (double)(gnss_synchro.Acq_delay_samples-5)*10230.0/((double)fs_in*1e-3));
|
||||||
double doppler_error_hz = abs(expected_doppler_hz - gnss_synchro.Acq_doppler_hz);
|
double doppler_error_hz = abs(expected_doppler_hz - gnss_synchro.Acq_doppler_hz);
|
||||||
*/
|
*/
|
||||||
mse_delay += std::pow(delay_error_chips, 2);
|
mse_delay += std::pow(delay_error_chips, 2);
|
||||||
mse_doppler += std::pow(doppler_error_hz, 2);
|
mse_doppler += std::pow(doppler_error_hz, 2);
|
||||||
|
|
||||||
@ -531,7 +531,7 @@ TEST_F(GalileoE5aPcpsAcquisitionGSoC2014GensourceTest, Instantiate)
|
|||||||
delete acquisition;
|
delete acquisition;
|
||||||
|
|
||||||
}
|
}
|
||||||
*/
|
*/
|
||||||
/*
|
/*
|
||||||
TEST_F(GalileoE5aPcpsAcquisitionGSoC2014GensourceTest, ConnectAndRun)
|
TEST_F(GalileoE5aPcpsAcquisitionGSoC2014GensourceTest, ConnectAndRun)
|
||||||
{
|
{
|
||||||
@ -566,7 +566,7 @@ TEST_F(GalileoE5aPcpsAcquisitionGSoC2014GensourceTest, ConnectAndRun)
|
|||||||
|
|
||||||
delete acquisition;
|
delete acquisition;
|
||||||
}
|
}
|
||||||
*/
|
*/
|
||||||
/*
|
/*
|
||||||
TEST_F(GalileoE5aPcpsAcquisitionGSoC2014GensourceTest, SOURCEValidation)
|
TEST_F(GalileoE5aPcpsAcquisitionGSoC2014GensourceTest, SOURCEValidation)
|
||||||
{
|
{
|
||||||
@ -583,7 +583,7 @@ TEST_F(GalileoE5aPcpsAcquisitionGSoC2014GensourceTest, SOURCEValidation)
|
|||||||
|
|
||||||
}) << "Failure generating signal" << std::endl;
|
}) << "Failure generating signal" << std::endl;
|
||||||
}
|
}
|
||||||
*/
|
*/
|
||||||
/*
|
/*
|
||||||
TEST_F(GalileoE5aPcpsAcquisitionGSoC2014GensourceTest, SOURCEValidationTOFILE)
|
TEST_F(GalileoE5aPcpsAcquisitionGSoC2014GensourceTest, SOURCEValidationTOFILE)
|
||||||
{
|
{
|
||||||
@ -605,7 +605,7 @@ TEST_F(GalileoE5aPcpsAcquisitionGSoC2014GensourceTest, SOURCEValidationTOFILE)
|
|||||||
|
|
||||||
}) << "Failure generating signal" << std::endl;
|
}) << "Failure generating signal" << std::endl;
|
||||||
}
|
}
|
||||||
*/
|
*/
|
||||||
|
|
||||||
TEST_F(GalileoE5aPcpsAcquisitionGSoC2014GensourceTest, ValidationOfSIM)
|
TEST_F(GalileoE5aPcpsAcquisitionGSoC2014GensourceTest, ValidationOfSIM)
|
||||||
{
|
{
|
||||||
@ -614,8 +614,8 @@ TEST_F(GalileoE5aPcpsAcquisitionGSoC2014GensourceTest, ValidationOfSIM)
|
|||||||
//int nsamples = floor(fs_in*integration_time_ms*1e-3);
|
//int nsamples = floor(fs_in*integration_time_ms*1e-3);
|
||||||
acquisition = new GalileoE5aNoncoherentIQAcquisitionCaf(config.get(), "Acquisition", 1, 1, queue);
|
acquisition = new GalileoE5aNoncoherentIQAcquisitionCaf(config.get(), "Acquisition", 1, 1, queue);
|
||||||
unsigned int skiphead_sps = 28000+32000; // 32 Msps
|
unsigned int skiphead_sps = 28000+32000; // 32 Msps
|
||||||
// unsigned int skiphead_sps = 0;
|
// unsigned int skiphead_sps = 0;
|
||||||
// unsigned int skiphead_sps = 84000;
|
// unsigned int skiphead_sps = 84000;
|
||||||
|
|
||||||
ASSERT_NO_THROW( {
|
ASSERT_NO_THROW( {
|
||||||
acquisition->set_channel(1);
|
acquisition->set_channel(1);
|
||||||
@ -647,10 +647,10 @@ TEST_F(GalileoE5aPcpsAcquisitionGSoC2014GensourceTest, ValidationOfSIM)
|
|||||||
|
|
||||||
acquisition->init();
|
acquisition->init();
|
||||||
// USING SIGNAL GENERATOR
|
// USING SIGNAL GENERATOR
|
||||||
/*
|
|
||||||
ASSERT_NO_THROW( {
|
ASSERT_NO_THROW( {
|
||||||
//std::string filename_ = "../data/Tiered_sink.dat";
|
//std::string filename_ = "../data/Tiered_sink.dat";
|
||||||
//boost::shared_ptr<gr::blocks::file_sink> file_sink_;
|
//boost::shared_ptr<gr::blocks::file_sink> file_sink_;
|
||||||
|
|
||||||
boost::shared_ptr<GenSignalSource> signal_source;
|
boost::shared_ptr<GenSignalSource> signal_source;
|
||||||
SignalGenerator* signal_generator = new SignalGenerator(config.get(), "SignalSource", 0, 1, queue);
|
SignalGenerator* signal_generator = new SignalGenerator(config.get(), "SignalSource", 0, 1, queue);
|
||||||
@ -671,9 +671,9 @@ TEST_F(GalileoE5aPcpsAcquisitionGSoC2014GensourceTest, ValidationOfSIM)
|
|||||||
//
|
//
|
||||||
|
|
||||||
}) << "Failure connecting the blocks of acquisition test." << std::endl;
|
}) << "Failure connecting the blocks of acquisition test." << std::endl;
|
||||||
*/
|
|
||||||
// USING SIGNAL FROM FILE SOURCE
|
|
||||||
|
|
||||||
|
// USING SIGNAL FROM FILE SOURCE
|
||||||
|
/*
|
||||||
ASSERT_NO_THROW( {
|
ASSERT_NO_THROW( {
|
||||||
//noiseless sim
|
//noiseless sim
|
||||||
//std::string file = "/home/marc/E5a_acquisitions/sim_32M_sec94_PRN11_long.dat";
|
//std::string file = "/home/marc/E5a_acquisitions/sim_32M_sec94_PRN11_long.dat";
|
||||||
@ -688,7 +688,7 @@ TEST_F(GalileoE5aPcpsAcquisitionGSoC2014GensourceTest, ValidationOfSIM)
|
|||||||
top_block->connect(skip_head, 0, acquisition->get_left_block(), 0);
|
top_block->connect(skip_head, 0, acquisition->get_left_block(), 0);
|
||||||
|
|
||||||
// top_block->connect(file_source, 0, acquisition->get_left_block(), 0);
|
// top_block->connect(file_source, 0, acquisition->get_left_block(), 0);
|
||||||
}) << "Failure connecting the blocks of acquisition test." << std::endl;
|
}) << "Failure connecting the blocks of acquisition test." << std::endl; */
|
||||||
|
|
||||||
// i = 0 --> satellite in acquisition is visible
|
// i = 0 --> satellite in acquisition is visible
|
||||||
// i = 1 --> satellite in acquisition is not visible
|
// i = 1 --> satellite in acquisition is not visible
|
||||||
@ -698,36 +698,36 @@ TEST_F(GalileoE5aPcpsAcquisitionGSoC2014GensourceTest, ValidationOfSIM)
|
|||||||
|
|
||||||
switch (i)
|
switch (i)
|
||||||
{
|
{
|
||||||
case 0:
|
case 0:
|
||||||
{
|
{
|
||||||
gnss_synchro.PRN = 19; //real
|
gnss_synchro.PRN = 19; //real
|
||||||
//gnss_synchro.PRN = 11; //sim
|
//gnss_synchro.PRN = 11; //sim
|
||||||
break;
|
break;
|
||||||
}
|
}
|
||||||
// case 1:
|
// case 1:
|
||||||
// {
|
// {
|
||||||
// gnss_synchro.PRN = 11;
|
// gnss_synchro.PRN = 11;
|
||||||
// break;
|
// break;
|
||||||
// }
|
// }
|
||||||
// case 2:
|
// case 2:
|
||||||
// {
|
// {
|
||||||
// gnss_synchro.PRN = 12;
|
// gnss_synchro.PRN = 12;
|
||||||
// break;
|
// break;
|
||||||
// }
|
// }
|
||||||
// case 3:
|
// case 3:
|
||||||
// {
|
// {
|
||||||
// gnss_synchro.PRN = 20;
|
// gnss_synchro.PRN = 20;
|
||||||
// break;
|
// break;
|
||||||
// }
|
// }
|
||||||
}
|
}
|
||||||
// if (i == 0)
|
// if (i == 0)
|
||||||
// {
|
// {
|
||||||
// gnss_synchro.PRN = 11;// This satellite is visible
|
// gnss_synchro.PRN = 11;// This satellite is visible
|
||||||
// }
|
// }
|
||||||
// else if (i == 1)
|
// else if (i == 1)
|
||||||
// {
|
// {
|
||||||
// gnss_synchro.PRN = 19; // This satellite is not visible
|
// gnss_synchro.PRN = 19; // This satellite is not visible
|
||||||
// }
|
// }
|
||||||
acquisition->set_local_code();
|
acquisition->set_local_code();
|
||||||
|
|
||||||
start_queue();
|
start_queue();
|
||||||
@ -739,23 +739,23 @@ TEST_F(GalileoE5aPcpsAcquisitionGSoC2014GensourceTest, ValidationOfSIM)
|
|||||||
std::cout << gnss_synchro.Acq_delay_samples << "acq delay" <<std::endl;
|
std::cout << gnss_synchro.Acq_delay_samples << "acq delay" <<std::endl;
|
||||||
std::cout << gnss_synchro.Acq_doppler_hz << "acq doppler" <<std::endl;
|
std::cout << gnss_synchro.Acq_doppler_hz << "acq doppler" <<std::endl;
|
||||||
std::cout << gnss_synchro.Acq_samplestamp_samples << "acq samples" <<std::endl;
|
std::cout << gnss_synchro.Acq_samplestamp_samples << "acq samples" <<std::endl;
|
||||||
// if (i == 0)
|
// if (i == 0)
|
||||||
// {
|
// {
|
||||||
// EXPECT_EQ(1, message) << "Acquisition failure. Expected message: 1=ACQ SUCCESS.";
|
// EXPECT_EQ(1, message) << "Acquisition failure. Expected message: 1=ACQ SUCCESS.";
|
||||||
// if (message == 1)
|
// if (message == 1)
|
||||||
// {
|
// {
|
||||||
// std::cout << gnss_synchro.Acq_delay_samples << "acq delay" <<std::endl;
|
// std::cout << gnss_synchro.Acq_delay_samples << "acq delay" <<std::endl;
|
||||||
// EXPECT_EQ((unsigned int) 1, correct_estimation_counter) << "Acquisition failure. Incorrect parameters estimation.";
|
// EXPECT_EQ((unsigned int) 1, correct_estimation_counter) << "Acquisition failure. Incorrect parameters estimation.";
|
||||||
// }
|
// }
|
||||||
//
|
//
|
||||||
// }
|
// }
|
||||||
// else if (i == 1)
|
// else if (i == 1)
|
||||||
// {
|
// {
|
||||||
// EXPECT_EQ(2, message) << "Acquisition failure. Expected message: 2=ACQ FAIL.";
|
// EXPECT_EQ(2, message) << "Acquisition failure. Expected message: 2=ACQ FAIL.";
|
||||||
// }
|
// }
|
||||||
}
|
}
|
||||||
|
|
||||||
// free(acquisition);
|
// free(acquisition);
|
||||||
delete acquisition;
|
delete acquisition;
|
||||||
}
|
}
|
||||||
|
|
||||||
@ -856,7 +856,7 @@ TEST_F(GalileoE5aPcpsAcquisitionGSoC2014GensourceTest, ValidationOfResults)
|
|||||||
|
|
||||||
delete acquisition;
|
delete acquisition;
|
||||||
}
|
}
|
||||||
*/
|
*/
|
||||||
/*
|
/*
|
||||||
TEST_F(GalileoE5aPcpsAcquisitionGSoC2014GensourceTest, FourSatsGen)
|
TEST_F(GalileoE5aPcpsAcquisitionGSoC2014GensourceTest, FourSatsGen)
|
||||||
{
|
{
|
||||||
@ -990,5 +990,5 @@ TEST_F(GalileoE5aPcpsAcquisitionGSoC2014GensourceTest, FourSatsGen)
|
|||||||
}
|
}
|
||||||
delete acquisition;
|
delete acquisition;
|
||||||
}
|
}
|
||||||
*/
|
*/
|
||||||
|
|
||||||
|
@ -17,7 +17,7 @@
|
|||||||
* GNSS-SDR is free software: you can redistribute it and/or modify
|
* GNSS-SDR is free software: you can redistribute it and/or modify
|
||||||
* it under the terms of the GNU General Public License as published by
|
* it under the terms of the GNU General Public License as published by
|
||||||
* the Free Software Foundation, either version 3 of the License, or
|
* the Free Software Foundation, either version 3 of the License, or
|
||||||
* at your option) any later version.
|
* (at your option) any later version.
|
||||||
*
|
*
|
||||||
* GNSS-SDR is distributed in the hope that it will be useful,
|
* GNSS-SDR is distributed in the hope that it will be useful,
|
||||||
* but WITHOUT ANY WARRANTY; without even the implied warranty of
|
* but WITHOUT ANY WARRANTY; without even the implied warranty of
|
||||||
@ -45,7 +45,6 @@
|
|||||||
#include "in_memory_configuration.h"
|
#include "in_memory_configuration.h"
|
||||||
#include "gnss_sdr_valve.h"
|
#include "gnss_sdr_valve.h"
|
||||||
#include "gnss_synchro.h"
|
#include "gnss_synchro.h"
|
||||||
//#include "galileo_e1_dll_pll_veml_tracking.h"
|
|
||||||
#include "galileo_e5a_dll_pll_tracking.h"
|
#include "galileo_e5a_dll_pll_tracking.h"
|
||||||
|
|
||||||
|
|
||||||
@ -96,16 +95,16 @@ void GalileoE5aTrackingTest::init()
|
|||||||
config->set_property("Tracking.early_late_space_chips", "0.5");
|
config->set_property("Tracking.early_late_space_chips", "0.5");
|
||||||
|
|
||||||
config->set_property("Tracking.pll_bw_hz_init","20.0");
|
config->set_property("Tracking.pll_bw_hz_init","20.0");
|
||||||
// config->set_property("Tracking.pll_bw_hz_init","5.0");
|
// config->set_property("Tracking.pll_bw_hz_init","5.0");
|
||||||
config->set_property("Tracking.dll_bw_hz_init","2.0");
|
config->set_property("Tracking.dll_bw_hz_init","2.0");
|
||||||
|
|
||||||
config->set_property("Tracking.pll_bw_hz", "5");
|
config->set_property("Tracking.pll_bw_hz", "5");
|
||||||
config->set_property("Tracking.dll_bw_hz", "2");
|
config->set_property("Tracking.dll_bw_hz", "2");
|
||||||
config->set_property("Tracking.ti_ms","1");
|
config->set_property("Tracking.ti_ms","1");
|
||||||
|
|
||||||
// config->set_property("Tracking.pll_bw_hz", "5");
|
// config->set_property("Tracking.pll_bw_hz", "5");
|
||||||
// config->set_property("Tracking.dll_bw_hz", "2");
|
// config->set_property("Tracking.dll_bw_hz", "2");
|
||||||
// config->set_property("Tracking.ti_ms","1");
|
// config->set_property("Tracking.ti_ms","1");
|
||||||
//config->set_property("Tracking.fll_bw_hz", "10.0");
|
//config->set_property("Tracking.fll_bw_hz", "10.0");
|
||||||
}
|
}
|
||||||
/*
|
/*
|
||||||
@ -169,40 +168,42 @@ TEST_F(GalileoE5aTrackingTest, ConnectAndRun)
|
|||||||
|
|
||||||
std::cout << "Processed " << nsamples << " samples in " << (end - begin) << " microseconds" << std::endl;
|
std::cout << "Processed " << nsamples << " samples in " << (end - begin) << " microseconds" << std::endl;
|
||||||
}
|
}
|
||||||
*/
|
*/
|
||||||
TEST_F(GalileoE5aTrackingTest, ValidationOfResults)
|
TEST_F(GalileoE5aTrackingTest, ValidationOfResults)
|
||||||
{
|
{
|
||||||
struct timeval tv;
|
struct timeval tv;
|
||||||
long long int begin = 0;
|
long long int begin = 0;
|
||||||
long long int end = 0;
|
long long int end = 0;
|
||||||
int num_samples = 320000000*1.5; // 32 Msps
|
int fs_in = 3200000000;
|
||||||
|
int nsamples = 3200000000*1.5;
|
||||||
|
//int num_samples = 320000000*1.5; // 32 Msps
|
||||||
//unsigned int skiphead_sps = 98000; // 1 Msample
|
//unsigned int skiphead_sps = 98000; // 1 Msample
|
||||||
unsigned int skiphead_sps = 0; // 1 Msampl
|
unsigned int skiphead_sps = 0; // 1 Msampl
|
||||||
// unsigned int skiphead_sps = 104191; // 1 Msampl
|
// unsigned int skiphead_sps = 104191; // 1 Msampl
|
||||||
init();
|
init();
|
||||||
|
|
||||||
// Example using smart pointers and the block factory
|
// Example using smart pointers and the block factory
|
||||||
std::shared_ptr<GNSSBlockInterface> trk_ = factory->GetBlock(config, "Tracking", "Galileo_E5a_DLL_PLL_Tracking", 1, 1, queue);
|
std::shared_ptr<GNSSBlockInterface> trk_ = factory->GetBlock(config, "Tracking", "Galileo_E5a_DLL_PLL_Tracking", 1, 1, queue);
|
||||||
std::shared_ptr<TrackingInterface> tracking = std::dynamic_pointer_cast<TrackingInterface>(trk_);
|
std::shared_ptr<TrackingInterface> tracking = std::dynamic_pointer_cast<TrackingInterface>(trk_);
|
||||||
|
|
||||||
//REAL
|
//REAL
|
||||||
gnss_synchro.Acq_delay_samples = 15579+1; // 32 Msps
|
gnss_synchro.Acq_delay_samples = 15579+1; // 32 Msps
|
||||||
// gnss_synchro.Acq_doppler_hz = 3500; // 32 Msps
|
// gnss_synchro.Acq_doppler_hz = 3500; // 32 Msps
|
||||||
gnss_synchro.Acq_doppler_hz = 3750; // 500 Hz resolution
|
gnss_synchro.Acq_doppler_hz = 3750; // 500 Hz resolution
|
||||||
// gnss_synchro.Acq_samplestamp_samples = 98000;
|
// gnss_synchro.Acq_samplestamp_samples = 98000;
|
||||||
gnss_synchro.Acq_samplestamp_samples = 0;
|
gnss_synchro.Acq_samplestamp_samples = 0;
|
||||||
//SIM
|
//SIM
|
||||||
// gnss_synchro.Acq_delay_samples = 14001+1; // 32 Msps
|
// gnss_synchro.Acq_delay_samples = 14001+1; // 32 Msps
|
||||||
// //gnss_synchro.Acq_doppler_hz = 2750; // 32 Msps (real 2800)
|
// //gnss_synchro.Acq_doppler_hz = 2750; // 32 Msps (real 2800)
|
||||||
//// gnss_synchro.Acq_doppler_hz = 2800; // 32 Msps (real 2800)
|
//// gnss_synchro.Acq_doppler_hz = 2800; // 32 Msps (real 2800)
|
||||||
// gnss_synchro.Acq_doppler_hz = 0; // 32 Msps (real 2800)
|
// gnss_synchro.Acq_doppler_hz = 0; // 32 Msps (real 2800)
|
||||||
//// gnss_synchro.Acq_samplestamp_samples = 98000;
|
//// gnss_synchro.Acq_samplestamp_samples = 98000;
|
||||||
// gnss_synchro.Acq_samplestamp_samples = 0;
|
// gnss_synchro.Acq_samplestamp_samples = 0;
|
||||||
|
|
||||||
//SIM2
|
//SIM2
|
||||||
// gnss_synchro.Acq_delay_samples = 5810; // 32 Msps
|
// gnss_synchro.Acq_delay_samples = 5810; // 32 Msps
|
||||||
// gnss_synchro.Acq_doppler_hz = 2800;
|
// gnss_synchro.Acq_doppler_hz = 2800;
|
||||||
// gnss_synchro.Acq_samplestamp_samples = 0;
|
// gnss_synchro.Acq_samplestamp_samples = 0;
|
||||||
|
|
||||||
ASSERT_NO_THROW( {
|
ASSERT_NO_THROW( {
|
||||||
tracking->set_channel(gnss_synchro.Channel_ID);
|
tracking->set_channel(gnss_synchro.Channel_ID);
|
||||||
@ -221,7 +222,16 @@ TEST_F(GalileoE5aTrackingTest, ValidationOfResults)
|
|||||||
}) << "Failure connecting tracking to the top_block." << std::endl;
|
}) << "Failure connecting tracking to the top_block." << std::endl;
|
||||||
|
|
||||||
ASSERT_NO_THROW( {
|
ASSERT_NO_THROW( {
|
||||||
std::string file = "/home/marc/E5a_acquisitions/32MS_complex.dat";
|
gr::analog::sig_source_c::sptr source = gr::analog::sig_source_c::make(fs_in, gr::analog::GR_SIN_WAVE, 1000, 1, gr_complex(0));
|
||||||
|
boost::shared_ptr<gr::block> valve = gnss_sdr_make_valve(sizeof(gr_complex), nsamples, queue);
|
||||||
|
gr::blocks::null_sink::sptr sink = gr::blocks::null_sink::make(sizeof(Gnss_Synchro));
|
||||||
|
top_block->connect(source, 0, valve, 0);
|
||||||
|
top_block->connect(valve, 0, tracking->get_left_block(), 0);
|
||||||
|
top_block->connect(tracking->get_right_block(), 0, sink, 0);
|
||||||
|
|
||||||
|
|
||||||
|
|
||||||
|
/** std::string file = "/home/marc/E5a_acquisitions/32MS_complex.dat";
|
||||||
//std::string file = "/home/marc/E5a_acquisitions/sim_32M_sec94_PRN11_long.dat";
|
//std::string file = "/home/marc/E5a_acquisitions/sim_32M_sec94_PRN11_long.dat";
|
||||||
//std::string file = "/home/marc/E5a_acquisitions/sim_32M_sec94_PRN11_long_0dopp.dat";
|
//std::string file = "/home/marc/E5a_acquisitions/sim_32M_sec94_PRN11_long_0dopp.dat";
|
||||||
gnss_synchro.PRN = 19;//real
|
gnss_synchro.PRN = 19;//real
|
||||||
@ -235,7 +245,7 @@ TEST_F(GalileoE5aTrackingTest, ValidationOfResults)
|
|||||||
top_block->connect(file_source, 0, skip_head, 0);
|
top_block->connect(file_source, 0, skip_head, 0);
|
||||||
top_block->connect(skip_head, 0, valve, 0);
|
top_block->connect(skip_head, 0, valve, 0);
|
||||||
top_block->connect(valve, 0, tracking->get_left_block(), 0);
|
top_block->connect(valve, 0, tracking->get_left_block(), 0);
|
||||||
top_block->connect(tracking->get_right_block(), 0, sink, 0);
|
top_block->connect(tracking->get_right_block(), 0, sink, 0);*/
|
||||||
}) << "Failure connecting the blocks of tracking test." << std::endl;
|
}) << "Failure connecting the blocks of tracking test." << std::endl;
|
||||||
|
|
||||||
tracking->start_tracking();
|
tracking->start_tracking();
|
||||||
@ -248,6 +258,6 @@ TEST_F(GalileoE5aTrackingTest, ValidationOfResults)
|
|||||||
end = tv.tv_sec *1000000 + tv.tv_usec;
|
end = tv.tv_sec *1000000 + tv.tv_usec;
|
||||||
}) << "Failure running the top_block." << std::endl;
|
}) << "Failure running the top_block." << std::endl;
|
||||||
|
|
||||||
std::cout << "Tracked " << num_samples << " samples in " << (end - begin) << " microseconds" << std::endl;
|
std::cout << "Tracked " << nsamples << " samples in " << (end - begin) << " microseconds" << std::endl;
|
||||||
}
|
}
|
||||||
|
|
||||||
|
@ -299,14 +299,14 @@ TEST(GNSS_Block_Factory_Test, InstantiateGpsL1CaTelemetryDecoder)
|
|||||||
TEST(GNSS_Block_Factory_Test, InstantiateChannels)
|
TEST(GNSS_Block_Factory_Test, InstantiateChannels)
|
||||||
{
|
{
|
||||||
std::shared_ptr<InMemoryConfiguration> configuration = std::make_shared<InMemoryConfiguration>();
|
std::shared_ptr<InMemoryConfiguration> configuration = std::make_shared<InMemoryConfiguration>();
|
||||||
configuration->set_property("Channels.count", "2");
|
configuration->set_property("Channels_GPS.count", "2");
|
||||||
|
configuration->set_property("Channels_Galileo.count", "0");
|
||||||
configuration->set_property("Channels.in_acquisition", "2");
|
configuration->set_property("Channels.in_acquisition", "2");
|
||||||
configuration->set_property("Tracking.implementation","GPS_L1_CA_DLL_FLL_PLL_Tracking");
|
configuration->set_property("Tracking_GPS.implementation","GPS_L1_CA_DLL_FLL_PLL_Tracking");
|
||||||
configuration->set_property("TelemetryDecoder.implementation","GPS_L1_CA_Telemetry_Decoder");
|
configuration->set_property("TelemetryDecoder_GPS.implementation","GPS_L1_CA_Telemetry_Decoder");
|
||||||
configuration->set_property("Channel0.item_type", "gr_complex");
|
configuration->set_property("Channel0.item_type", "gr_complex");
|
||||||
configuration->set_property("Acquisition0.implementation", "GPS_L1_CA_PCPS_Acquisition");
|
configuration->set_property("Acquisition_GPS.implementation", "GPS_L1_CA_PCPS_Acquisition");
|
||||||
configuration->set_property("Channel1.item_type", "gr_complex");
|
configuration->set_property("Channel1.item_type", "gr_complex");
|
||||||
configuration->set_property("Acquisition1.implementation", "GPS_L1_CA_PCPS_Acquisition");
|
|
||||||
gr::msg_queue::sptr queue = gr::msg_queue::make(0);
|
gr::msg_queue::sptr queue = gr::msg_queue::make(0);
|
||||||
std::unique_ptr<GNSSBlockFactory> factory;
|
std::unique_ptr<GNSSBlockFactory> factory;
|
||||||
std::unique_ptr<std::vector<std::unique_ptr<GNSSBlockInterface>>> channels = std::move(factory->GetChannels(configuration, queue));
|
std::unique_ptr<std::vector<std::unique_ptr<GNSSBlockInterface>>> channels = std::move(factory->GetChannels(configuration, queue));
|
||||||
|
Loading…
Reference in New Issue
Block a user