mirror of
https://github.com/gnss-sdr/gnss-sdr
synced 2025-07-12 15:02:54 +00:00
Add option to force the Observables block to always output Gnss_Synchro objects, not only when there is at least one valid observation
This commit is contained in:
parent
d4a1bb1147
commit
7f45739cf0
@ -40,6 +40,7 @@ HybridObservables::HybridObservables(const ConfigurationInterface* configuration
|
|||||||
conf.nchannels_out = out_streams_;
|
conf.nchannels_out = out_streams_;
|
||||||
conf.observable_interval_ms = configuration->property("GNSS-SDR.observable_interval_ms", conf.observable_interval_ms);
|
conf.observable_interval_ms = configuration->property("GNSS-SDR.observable_interval_ms", conf.observable_interval_ms);
|
||||||
conf.enable_carrier_smoothing = configuration->property(role + ".enable_carrier_smoothing", conf.enable_carrier_smoothing);
|
conf.enable_carrier_smoothing = configuration->property(role + ".enable_carrier_smoothing", conf.enable_carrier_smoothing);
|
||||||
|
conf.always_output_gs = configuration->property("PVT.an_output_enabled", conf.always_output_gs) || configuration->property(role + ".always_output_gs", conf.always_output_gs);
|
||||||
|
|
||||||
if (FLAGS_carrier_smoothing_factor == DEFAULT_CARRIER_SMOOTHING_FACTOR)
|
if (FLAGS_carrier_smoothing_factor == DEFAULT_CARRIER_SMOOTHING_FACTOR)
|
||||||
{
|
{
|
||||||
|
@ -61,6 +61,7 @@ hybrid_observables_gs::hybrid_observables_gs(const Obs_Conf &conf_)
|
|||||||
d_nchannels_in(conf_.nchannels_in),
|
d_nchannels_in(conf_.nchannels_in),
|
||||||
d_nchannels_out(conf_.nchannels_out),
|
d_nchannels_out(conf_.nchannels_out),
|
||||||
d_T_rx_TOW_set(false),
|
d_T_rx_TOW_set(false),
|
||||||
|
d_always_output_gs(conf_.always_output_gs),
|
||||||
d_dump(conf_.dump),
|
d_dump(conf_.dump),
|
||||||
d_dump_mat(conf_.dump_mat && d_dump)
|
d_dump_mat(conf_.dump_mat && d_dump)
|
||||||
{
|
{
|
||||||
@ -749,5 +750,14 @@ int hybrid_observables_gs::general_work(int noutput_items __attribute__((unused)
|
|||||||
return 1;
|
return 1;
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
|
if (d_always_output_gs)
|
||||||
|
{
|
||||||
|
Gnss_Synchro empty_gs{};
|
||||||
|
for (uint32_t n = 0; n < d_nchannels_out; n++)
|
||||||
|
{
|
||||||
|
out[n][0] = empty_gs;
|
||||||
|
}
|
||||||
|
return 1;
|
||||||
|
}
|
||||||
return 0;
|
return 0;
|
||||||
}
|
}
|
||||||
|
@ -119,6 +119,7 @@ private:
|
|||||||
uint32_t d_nchannels_out;
|
uint32_t d_nchannels_out;
|
||||||
|
|
||||||
bool d_T_rx_TOW_set; // rx time follow GPST
|
bool d_T_rx_TOW_set; // rx time follow GPST
|
||||||
|
bool d_always_output_gs;
|
||||||
bool d_dump;
|
bool d_dump;
|
||||||
bool d_dump_mat;
|
bool d_dump_mat;
|
||||||
};
|
};
|
||||||
|
@ -38,6 +38,7 @@ public:
|
|||||||
uint32_t nchannels_out{0U};
|
uint32_t nchannels_out{0U};
|
||||||
uint32_t observable_interval_ms{20U};
|
uint32_t observable_interval_ms{20U};
|
||||||
bool enable_carrier_smoothing{false};
|
bool enable_carrier_smoothing{false};
|
||||||
|
bool always_output_gs{false};
|
||||||
bool dump{false};
|
bool dump{false};
|
||||||
bool dump_mat{false};
|
bool dump_mat{false};
|
||||||
};
|
};
|
||||||
|
Loading…
x
Reference in New Issue
Block a user