mirror of
https://github.com/gnss-sdr/gnss-sdr
synced 2024-12-14 12:10:34 +00:00
Merge branch 'next' of https://github.com/mmajoral/gnss-sdr into fpga_extended_coherent_integration
This commit is contained in:
commit
d9d3696880
@ -341,7 +341,7 @@ Cloning the GNSS-SDR repository as in the line above will create a folder named
|
||||
|-----utils <- some utilities (e.g. Matlab scripts).
|
||||
~~~~~~
|
||||
|
||||
By default, you will be in the 'master' branch of the Git repository, which corresponds to the lastest stable release. If you want to try the latest developments, you can use the 'next' branch by going to the newly created gnss-sdr folder doing:
|
||||
By default, you will be in the 'master' branch of the Git repository, which corresponds to the latest stable release. If you want to try the latest developments, you can use the 'next' branch by going to the newly created gnss-sdr folder doing:
|
||||
|
||||
~~~~~~
|
||||
$ git checkout next
|
||||
|
@ -48,7 +48,7 @@ list(APPEND AVAIL_BUILDTYPES
|
||||
# known build types in AVAIL_BUILDTYPES. If the build type is found,
|
||||
# the function exits immediately. If nothing is found by the end of
|
||||
# checking all available build types, we exit with an error and list
|
||||
# the avialable build types.
|
||||
# the available build types.
|
||||
########################################################################
|
||||
function(GNSSSDR_CHECK_BUILD_TYPE settype)
|
||||
string(TOUPPER ${settype} _settype)
|
||||
|
@ -21,6 +21,7 @@
|
||||
|
||||
### Improvements in Flexibility:
|
||||
|
||||
- Rewritten Control Thread and GNSS Flowgraph for increased control of channels' status and smarter assignation of satellites in multi-band configurations.
|
||||
- New Tracking parameters allow the configuration of PLL and DLL filters order.
|
||||
- Added parameter to enable FLL during pull-in time.
|
||||
- Configurable pull-in time in the Tracking loops.
|
||||
@ -28,7 +29,7 @@
|
||||
|
||||
### Improvements in Interoperability:
|
||||
|
||||
- Added the BeiDou B1I receiver chain.
|
||||
- Added the BeiDou B1I and B3I receiver chains.
|
||||
- Fix bug in GLONASS dual frequency receiver.
|
||||
- Added a custom UDP/IP output for PVT data streaming.
|
||||
- Improved Monitor block with UDP/IP output for internal receiver's data streaming.
|
||||
@ -43,6 +44,7 @@
|
||||
- Applied clang-tidy checks and fixes related to readability: readability-container-size-empty, readability-identifier-naming, readability-inconsistent-declaration-parameter-name, readability-named-parameter, readability-non-const-parameter, readability-string-compare.
|
||||
- Improved includes selection following suggestions by include-what-you-use (see https://include-what-you-use.org/), allowing faster compiles, fewer recompiles and making refactoring easier.
|
||||
- Deprecated boost::asio::io_service replaced by boost::asio::io_context if Boost > 1.65
|
||||
- The internal communication mechanism based on gr::msg_queue has been replaced by asynchronous message passing.
|
||||
|
||||
|
||||
### Improvements in Portability:
|
||||
|
@ -126,9 +126,12 @@ rtklib_pvt_gs::rtklib_pvt_gs(uint32_t nchannels,
|
||||
{
|
||||
// Send feedback message to observables block with the receiver clock offset
|
||||
this->message_port_register_out(pmt::mp("pvt_to_observables"));
|
||||
// Send PVT status to gnss_flowgraph
|
||||
this->message_port_register_out(pmt::mp("status"));
|
||||
|
||||
d_output_rate_ms = conf_.output_rate_ms;
|
||||
d_display_rate_ms = conf_.display_rate_ms;
|
||||
d_report_rate_ms = 1000; //report every second PVT to gnss_synchro
|
||||
d_dump = conf_.dump;
|
||||
d_dump_mat = conf_.dump_mat and d_dump;
|
||||
d_dump_filename = conf_.dump_filename;
|
||||
@ -3729,10 +3732,19 @@ int rtklib_pvt_gs::work(int noutput_items, gr_vector_const_void_star& input_item
|
||||
}
|
||||
|
||||
// PVT MONITOR
|
||||
if (d_pvt_solver->is_valid_position() and flag_monitor_pvt_enabled)
|
||||
if (d_pvt_solver->is_valid_position())
|
||||
{
|
||||
Monitor_Pvt monitor_pvt = d_pvt_solver->get_monitor_pvt();
|
||||
udp_sink_ptr->write_monitor_pvt(monitor_pvt);
|
||||
std::shared_ptr<Monitor_Pvt> monitor_pvt = std::make_shared<Monitor_Pvt>(d_pvt_solver->get_monitor_pvt());
|
||||
|
||||
//publish new position to the gnss_flowgraph channel status monitor
|
||||
if (current_RX_time_ms % d_report_rate_ms == 0)
|
||||
{
|
||||
this->message_port_pub(pmt::mp("status"), pmt::make_any(monitor_pvt));
|
||||
}
|
||||
if (flag_monitor_pvt_enabled)
|
||||
{
|
||||
udp_sink_ptr->write_monitor_pvt(monitor_pvt);
|
||||
}
|
||||
}
|
||||
}
|
||||
}
|
||||
|
@ -169,6 +169,7 @@ private:
|
||||
|
||||
int32_t d_output_rate_ms;
|
||||
int32_t d_display_rate_ms;
|
||||
int32_t d_report_rate_ms;
|
||||
|
||||
std::shared_ptr<Rinex_Printer> rp;
|
||||
std::shared_ptr<Kml_Printer> d_kml_dump;
|
||||
|
@ -51,14 +51,14 @@ Monitor_Pvt_Udp_Sink::Monitor_Pvt_Udp_Sink(const std::vector<std::string>& addre
|
||||
}
|
||||
|
||||
|
||||
bool Monitor_Pvt_Udp_Sink::write_monitor_pvt(const Monitor_Pvt& monitor_pvt)
|
||||
bool Monitor_Pvt_Udp_Sink::write_monitor_pvt(const std::shared_ptr<Monitor_Pvt>& monitor_pvt)
|
||||
{
|
||||
std::string outbound_data;
|
||||
if (use_protobuf == false)
|
||||
{
|
||||
std::ostringstream archive_stream;
|
||||
boost::archive::binary_oarchive oa{archive_stream};
|
||||
oa << monitor_pvt;
|
||||
oa << *monitor_pvt.get();
|
||||
outbound_data = archive_stream.str();
|
||||
}
|
||||
else
|
||||
|
@ -45,8 +45,8 @@ using b_io_context = boost::asio::io_service;
|
||||
class Monitor_Pvt_Udp_Sink
|
||||
{
|
||||
public:
|
||||
Monitor_Pvt_Udp_Sink(const std::vector<std::string>& addresses, const uint16_t &port, bool protobuf_enabled);
|
||||
bool write_monitor_pvt(const Monitor_Pvt &monitor_pvt);
|
||||
Monitor_Pvt_Udp_Sink(const std::vector<std::string>& addresses, const uint16_t& port, bool protobuf_enabled);
|
||||
bool write_monitor_pvt(const std::shared_ptr<Monitor_Pvt>& monitor_pvt);
|
||||
|
||||
private:
|
||||
b_io_context io_context;
|
||||
|
@ -6217,7 +6217,7 @@ void Rinex_Printer::rinex_obs_header(std::fstream& out, const Gps_Ephemeris& eph
|
||||
|
||||
if (version == 2)
|
||||
{
|
||||
// --------- WAVELENGHT FACTOR
|
||||
// --------- WAVELENGTH FACTOR
|
||||
// put here real data!
|
||||
line.clear();
|
||||
line += Rinex_Printer::rightJustify("1", 6);
|
||||
|
@ -157,7 +157,7 @@ public:
|
||||
/*!
|
||||
* \brief Generates the Mixed GPS L1,L5 + BDS B1I, B3I Navigation Data header
|
||||
*/
|
||||
void rinex_nav_header(std::fstream& out, const Gps_Iono& gps_lnav_iono, const Gps_Utc_Model& gps_lnav_utc_model, const Gps_Ephemeris& eph, const Beidou_Dnav_Iono& bds_dnav_iono, const Beidou_Dnav_Utc_Model& bds_dnav_utc_model);
|
||||
void rinex_nav_header(std::fstream& out, const Gps_Iono& gps_iono, const Gps_Utc_Model& gps_utc_model, const Gps_Ephemeris& eph, const Beidou_Dnav_Iono& bds_dnav_iono, const Beidou_Dnav_Utc_Model& bds_dnav_utc_model);
|
||||
|
||||
/*!
|
||||
* \brief Generates the Mixed GPS L2C + BDS B1I, B3I Navigation Data header
|
||||
|
@ -43,6 +43,7 @@
|
||||
#include <boost/asio.hpp>
|
||||
#include <boost/date_time/posix_time/posix_time.hpp>
|
||||
#include <glog/logging.h>
|
||||
#include <pmt/pmt.h>
|
||||
#include <bitset>
|
||||
#include <cstddef> // for size_t
|
||||
#include <cstdint>
|
||||
|
@ -384,7 +384,7 @@ int Rtcm_Printer::init_serial(const std::string& serial_device)
|
||||
* Opens the serial device and sets the default baud rate for a RTCM transmission (9600,8,N,1)
|
||||
*/
|
||||
int32_t fd = 0;
|
||||
struct termios options;
|
||||
struct termios options{};
|
||||
int64_t BAUD;
|
||||
int64_t DATABITS;
|
||||
int64_t STOPBITS;
|
||||
|
@ -34,7 +34,7 @@
|
||||
|
||||
#include "monitor_pvt.h"
|
||||
#include "monitor_pvt.pb.h" // file created by Protocol Buffers at compile time
|
||||
|
||||
#include <memory>
|
||||
|
||||
/*!
|
||||
* \brief This class implements serialization and deserialization of
|
||||
@ -80,40 +80,40 @@ public:
|
||||
return *this;
|
||||
}
|
||||
|
||||
inline std::string createProtobuffer(const Monitor_Pvt& monitor) //!< Serialization into a string
|
||||
inline std::string createProtobuffer(std::shared_ptr<Monitor_Pvt> monitor) //!< Serialization into a string
|
||||
{
|
||||
monitor_.Clear();
|
||||
|
||||
std::string data;
|
||||
|
||||
monitor_.set_tow_at_current_symbol_ms(monitor.TOW_at_current_symbol_ms);
|
||||
monitor_.set_week(monitor.week);
|
||||
monitor_.set_rx_time(monitor.RX_time);
|
||||
monitor_.set_user_clk_offset(monitor.user_clk_offset);
|
||||
monitor_.set_pos_x(monitor.pos_x);
|
||||
monitor_.set_pos_y(monitor.pos_y);
|
||||
monitor_.set_pos_z(monitor.pos_z);
|
||||
monitor_.set_vel_x(monitor.vel_x);
|
||||
monitor_.set_vel_y(monitor.vel_y);
|
||||
monitor_.set_vel_z(monitor.vel_z);
|
||||
monitor_.set_cov_xx(monitor.cov_xx);
|
||||
monitor_.set_cov_yy(monitor.cov_yy);
|
||||
monitor_.set_cov_zz(monitor.cov_zz);
|
||||
monitor_.set_cov_xy(monitor.cov_xy);
|
||||
monitor_.set_cov_yz(monitor.cov_yz);
|
||||
monitor_.set_cov_zx(monitor.cov_zx);
|
||||
monitor_.set_latitude(monitor.latitude);
|
||||
monitor_.set_longitude(monitor.longitude);
|
||||
monitor_.set_height(monitor.height);
|
||||
monitor_.set_valid_sats(monitor.valid_sats);
|
||||
monitor_.set_solution_status(monitor.solution_status);
|
||||
monitor_.set_solution_type(monitor.solution_type);
|
||||
monitor_.set_ar_ratio_factor(monitor.AR_ratio_factor);
|
||||
monitor_.set_ar_ratio_threshold(monitor.AR_ratio_threshold);
|
||||
monitor_.set_gdop(monitor.gdop);
|
||||
monitor_.set_pdop(monitor.pdop);
|
||||
monitor_.set_hdop(monitor.hdop);
|
||||
monitor_.set_vdop(monitor.vdop);
|
||||
monitor_.set_tow_at_current_symbol_ms(monitor->TOW_at_current_symbol_ms);
|
||||
monitor_.set_week(monitor->week);
|
||||
monitor_.set_rx_time(monitor->RX_time);
|
||||
monitor_.set_user_clk_offset(monitor->user_clk_offset);
|
||||
monitor_.set_pos_x(monitor->pos_x);
|
||||
monitor_.set_pos_y(monitor->pos_y);
|
||||
monitor_.set_pos_z(monitor->pos_z);
|
||||
monitor_.set_vel_x(monitor->vel_x);
|
||||
monitor_.set_vel_y(monitor->vel_y);
|
||||
monitor_.set_vel_z(monitor->vel_z);
|
||||
monitor_.set_cov_xx(monitor->cov_xx);
|
||||
monitor_.set_cov_yy(monitor->cov_yy);
|
||||
monitor_.set_cov_zz(monitor->cov_zz);
|
||||
monitor_.set_cov_xy(monitor->cov_xy);
|
||||
monitor_.set_cov_yz(monitor->cov_yz);
|
||||
monitor_.set_cov_zx(monitor->cov_zx);
|
||||
monitor_.set_latitude(monitor->latitude);
|
||||
monitor_.set_longitude(monitor->longitude);
|
||||
monitor_.set_height(monitor->height);
|
||||
monitor_.set_valid_sats(monitor->valid_sats);
|
||||
monitor_.set_solution_status(monitor->solution_status);
|
||||
monitor_.set_solution_type(monitor->solution_type);
|
||||
monitor_.set_ar_ratio_factor(monitor->AR_ratio_factor);
|
||||
monitor_.set_ar_ratio_threshold(monitor->AR_ratio_threshold);
|
||||
monitor_.set_gdop(monitor->gdop);
|
||||
monitor_.set_pdop(monitor->pdop);
|
||||
monitor_.set_hdop(monitor->hdop);
|
||||
monitor_.set_vdop(monitor->vdop);
|
||||
|
||||
monitor_.SerializeToString(&data);
|
||||
return data;
|
||||
|
@ -136,9 +136,6 @@ BeidouB1iPcpsAcquisition::BeidouB1iPcpsAcquisition(
|
||||
}
|
||||
|
||||
|
||||
BeidouB1iPcpsAcquisition::~BeidouB1iPcpsAcquisition() = default;
|
||||
|
||||
|
||||
void BeidouB1iPcpsAcquisition::stop_acquisition()
|
||||
{
|
||||
}
|
||||
|
@ -60,7 +60,7 @@ public:
|
||||
const std::string& role, unsigned int in_streams,
|
||||
unsigned int out_streams);
|
||||
|
||||
virtual ~BeidouB1iPcpsAcquisition();
|
||||
~BeidouB1iPcpsAcquisition() = default;
|
||||
|
||||
inline std::string role() override
|
||||
{
|
||||
|
@ -134,9 +134,6 @@ BeidouB3iPcpsAcquisition::BeidouB3iPcpsAcquisition(
|
||||
}
|
||||
|
||||
|
||||
BeidouB3iPcpsAcquisition::~BeidouB3iPcpsAcquisition() = default;
|
||||
|
||||
|
||||
void BeidouB3iPcpsAcquisition::stop_acquisition()
|
||||
{
|
||||
}
|
||||
|
@ -59,7 +59,7 @@ public:
|
||||
const std::string& role, unsigned int in_streams,
|
||||
unsigned int out_streams);
|
||||
|
||||
virtual ~BeidouB3iPcpsAcquisition();
|
||||
~BeidouB3iPcpsAcquisition() = default;
|
||||
|
||||
inline std::string role() override
|
||||
{
|
||||
|
@ -123,9 +123,6 @@ GalileoE1Pcps8msAmbiguousAcquisition::GalileoE1Pcps8msAmbiguousAcquisition(
|
||||
}
|
||||
|
||||
|
||||
GalileoE1Pcps8msAmbiguousAcquisition::~GalileoE1Pcps8msAmbiguousAcquisition() = default;
|
||||
|
||||
|
||||
void GalileoE1Pcps8msAmbiguousAcquisition::stop_acquisition()
|
||||
{
|
||||
}
|
||||
|
@ -54,7 +54,7 @@ public:
|
||||
unsigned int in_streams,
|
||||
unsigned int out_streams);
|
||||
|
||||
virtual ~GalileoE1Pcps8msAmbiguousAcquisition();
|
||||
~GalileoE1Pcps8msAmbiguousAcquisition() = default;
|
||||
|
||||
inline std::string role() override
|
||||
{
|
||||
|
@ -167,9 +167,6 @@ GalileoE1PcpsAmbiguousAcquisition::GalileoE1PcpsAmbiguousAcquisition(
|
||||
}
|
||||
|
||||
|
||||
GalileoE1PcpsAmbiguousAcquisition::~GalileoE1PcpsAmbiguousAcquisition() = default;
|
||||
|
||||
|
||||
void GalileoE1PcpsAmbiguousAcquisition::stop_acquisition()
|
||||
{
|
||||
}
|
||||
|
@ -58,7 +58,7 @@ public:
|
||||
unsigned int in_streams,
|
||||
unsigned int out_streams);
|
||||
|
||||
virtual ~GalileoE1PcpsAmbiguousAcquisition();
|
||||
~GalileoE1PcpsAmbiguousAcquisition() = default;
|
||||
|
||||
inline std::string role() override
|
||||
{
|
||||
|
@ -194,9 +194,6 @@ GalileoE1PcpsAmbiguousAcquisitionFpga::GalileoE1PcpsAmbiguousAcquisitionFpga(
|
||||
}
|
||||
|
||||
|
||||
GalileoE1PcpsAmbiguousAcquisitionFpga::~GalileoE1PcpsAmbiguousAcquisitionFpga() = default;
|
||||
|
||||
|
||||
void GalileoE1PcpsAmbiguousAcquisitionFpga::stop_acquisition()
|
||||
{
|
||||
// this command causes the SW to reset the HW.
|
||||
|
@ -55,7 +55,7 @@ public:
|
||||
unsigned int in_streams,
|
||||
unsigned int out_streams);
|
||||
|
||||
virtual ~GalileoE1PcpsAmbiguousAcquisitionFpga();
|
||||
~GalileoE1PcpsAmbiguousAcquisitionFpga() = default;
|
||||
|
||||
inline std::string role() override
|
||||
{
|
||||
|
@ -123,9 +123,6 @@ GalileoE1PcpsCccwsrAmbiguousAcquisition::GalileoE1PcpsCccwsrAmbiguousAcquisition
|
||||
}
|
||||
|
||||
|
||||
GalileoE1PcpsCccwsrAmbiguousAcquisition::~GalileoE1PcpsCccwsrAmbiguousAcquisition() = default;
|
||||
|
||||
|
||||
void GalileoE1PcpsCccwsrAmbiguousAcquisition::stop_acquisition()
|
||||
{
|
||||
}
|
||||
|
@ -54,7 +54,7 @@ public:
|
||||
unsigned int in_streams,
|
||||
unsigned int out_streams);
|
||||
|
||||
virtual ~GalileoE1PcpsCccwsrAmbiguousAcquisition();
|
||||
~GalileoE1PcpsCccwsrAmbiguousAcquisition() = default;
|
||||
|
||||
inline std::string role() override
|
||||
{
|
||||
|
@ -157,9 +157,6 @@ GalileoE1PcpsQuickSyncAmbiguousAcquisition::GalileoE1PcpsQuickSyncAmbiguousAcqui
|
||||
}
|
||||
|
||||
|
||||
GalileoE1PcpsQuickSyncAmbiguousAcquisition::~GalileoE1PcpsQuickSyncAmbiguousAcquisition() = default;
|
||||
|
||||
|
||||
void GalileoE1PcpsQuickSyncAmbiguousAcquisition::stop_acquisition()
|
||||
{
|
||||
}
|
||||
|
@ -55,7 +55,7 @@ public:
|
||||
unsigned int in_streams,
|
||||
unsigned int out_streams);
|
||||
|
||||
virtual ~GalileoE1PcpsQuickSyncAmbiguousAcquisition();
|
||||
~GalileoE1PcpsQuickSyncAmbiguousAcquisition() = default;
|
||||
|
||||
inline std::string role() override
|
||||
{
|
||||
|
@ -127,9 +127,6 @@ GalileoE1PcpsTongAmbiguousAcquisition::GalileoE1PcpsTongAmbiguousAcquisition(
|
||||
}
|
||||
|
||||
|
||||
GalileoE1PcpsTongAmbiguousAcquisition::~GalileoE1PcpsTongAmbiguousAcquisition() = default;
|
||||
|
||||
|
||||
void GalileoE1PcpsTongAmbiguousAcquisition::stop_acquisition()
|
||||
{
|
||||
}
|
||||
|
@ -54,7 +54,7 @@ public:
|
||||
unsigned int in_streams,
|
||||
unsigned int out_streams);
|
||||
|
||||
virtual ~GalileoE1PcpsTongAmbiguousAcquisition();
|
||||
~GalileoE1PcpsTongAmbiguousAcquisition() = default;
|
||||
|
||||
inline std::string role() override
|
||||
{
|
||||
|
@ -132,9 +132,6 @@ GalileoE5aNoncoherentIQAcquisitionCaf::GalileoE5aNoncoherentIQAcquisitionCaf(
|
||||
}
|
||||
|
||||
|
||||
GalileoE5aNoncoherentIQAcquisitionCaf::~GalileoE5aNoncoherentIQAcquisitionCaf() = default;
|
||||
|
||||
|
||||
void GalileoE5aNoncoherentIQAcquisitionCaf::stop_acquisition()
|
||||
{
|
||||
}
|
||||
|
@ -55,7 +55,7 @@ public:
|
||||
unsigned int in_streams,
|
||||
unsigned int out_streams);
|
||||
|
||||
virtual ~GalileoE5aNoncoherentIQAcquisitionCaf();
|
||||
~GalileoE5aNoncoherentIQAcquisitionCaf() = default;
|
||||
|
||||
inline std::string role() override
|
||||
{
|
||||
|
@ -165,9 +165,6 @@ GalileoE5aPcpsAcquisition::GalileoE5aPcpsAcquisition(ConfigurationInterface* con
|
||||
}
|
||||
|
||||
|
||||
GalileoE5aPcpsAcquisition::~GalileoE5aPcpsAcquisition() = default;
|
||||
|
||||
|
||||
void GalileoE5aPcpsAcquisition::stop_acquisition()
|
||||
{
|
||||
}
|
||||
|
@ -49,7 +49,7 @@ public:
|
||||
unsigned int in_streams,
|
||||
unsigned int out_streams);
|
||||
|
||||
virtual ~GalileoE5aPcpsAcquisition();
|
||||
~GalileoE5aPcpsAcquisition() = default;
|
||||
|
||||
inline std::string role() override
|
||||
{
|
||||
|
@ -197,9 +197,6 @@ GalileoE5aPcpsAcquisitionFpga::GalileoE5aPcpsAcquisitionFpga(ConfigurationInterf
|
||||
}
|
||||
|
||||
|
||||
GalileoE5aPcpsAcquisitionFpga::~GalileoE5aPcpsAcquisitionFpga() = default;
|
||||
|
||||
|
||||
void GalileoE5aPcpsAcquisitionFpga::stop_acquisition()
|
||||
{
|
||||
// this command causes the SW to reset the HW.
|
||||
|
@ -55,7 +55,7 @@ public:
|
||||
unsigned int in_streams,
|
||||
unsigned int out_streams);
|
||||
|
||||
virtual ~GalileoE5aPcpsAcquisitionFpga();
|
||||
~GalileoE5aPcpsAcquisitionFpga() = default;
|
||||
|
||||
inline std::string role() override
|
||||
{
|
||||
|
@ -138,9 +138,6 @@ GlonassL1CaPcpsAcquisition::GlonassL1CaPcpsAcquisition(
|
||||
}
|
||||
|
||||
|
||||
GlonassL1CaPcpsAcquisition::~GlonassL1CaPcpsAcquisition() = default;
|
||||
|
||||
|
||||
void GlonassL1CaPcpsAcquisition::stop_acquisition()
|
||||
{
|
||||
}
|
||||
|
@ -57,7 +57,7 @@ public:
|
||||
unsigned int in_streams,
|
||||
unsigned int out_streams);
|
||||
|
||||
virtual ~GlonassL1CaPcpsAcquisition();
|
||||
~GlonassL1CaPcpsAcquisition() = default;
|
||||
|
||||
inline std::string role() override
|
||||
{
|
||||
|
@ -137,9 +137,6 @@ GlonassL2CaPcpsAcquisition::GlonassL2CaPcpsAcquisition(
|
||||
}
|
||||
|
||||
|
||||
GlonassL2CaPcpsAcquisition::~GlonassL2CaPcpsAcquisition() = default;
|
||||
|
||||
|
||||
void GlonassL2CaPcpsAcquisition::stop_acquisition()
|
||||
{
|
||||
}
|
||||
|
@ -56,7 +56,7 @@ public:
|
||||
unsigned int in_streams,
|
||||
unsigned int out_streams);
|
||||
|
||||
virtual ~GlonassL2CaPcpsAcquisition();
|
||||
~GlonassL2CaPcpsAcquisition() = default;
|
||||
|
||||
inline std::string role() override
|
||||
{
|
||||
|
@ -161,9 +161,6 @@ GpsL1CaPcpsAcquisition::GpsL1CaPcpsAcquisition(
|
||||
}
|
||||
|
||||
|
||||
GpsL1CaPcpsAcquisition::~GpsL1CaPcpsAcquisition() = default;
|
||||
|
||||
|
||||
void GpsL1CaPcpsAcquisition::stop_acquisition()
|
||||
{
|
||||
}
|
||||
|
@ -62,7 +62,7 @@ public:
|
||||
unsigned int in_streams,
|
||||
unsigned int out_streams);
|
||||
|
||||
virtual ~GpsL1CaPcpsAcquisition();
|
||||
~GpsL1CaPcpsAcquisition() = default;
|
||||
|
||||
inline std::string role() override
|
||||
{
|
||||
|
@ -109,9 +109,6 @@ GpsL1CaPcpsAcquisitionFineDoppler::GpsL1CaPcpsAcquisitionFineDoppler(
|
||||
}
|
||||
|
||||
|
||||
GpsL1CaPcpsAcquisitionFineDoppler::~GpsL1CaPcpsAcquisitionFineDoppler() = default;
|
||||
|
||||
|
||||
void GpsL1CaPcpsAcquisitionFineDoppler::stop_acquisition()
|
||||
{
|
||||
}
|
||||
|
@ -55,7 +55,7 @@ public:
|
||||
unsigned int in_streams,
|
||||
unsigned int out_streams);
|
||||
|
||||
virtual ~GpsL1CaPcpsAcquisitionFineDoppler();
|
||||
~GpsL1CaPcpsAcquisitionFineDoppler() = default;
|
||||
|
||||
inline std::string role() override
|
||||
{
|
||||
|
@ -175,9 +175,6 @@ GpsL1CaPcpsAcquisitionFpga::GpsL1CaPcpsAcquisitionFpga(
|
||||
}
|
||||
|
||||
|
||||
GpsL1CaPcpsAcquisitionFpga::~GpsL1CaPcpsAcquisitionFpga() = default;
|
||||
|
||||
|
||||
void GpsL1CaPcpsAcquisitionFpga::stop_acquisition()
|
||||
{
|
||||
// this command causes the SW to reset the HW.
|
||||
|
@ -57,7 +57,7 @@ public:
|
||||
unsigned int in_streams,
|
||||
unsigned int out_streams);
|
||||
|
||||
virtual ~GpsL1CaPcpsAcquisitionFpga();
|
||||
~GpsL1CaPcpsAcquisitionFpga() = default;
|
||||
|
||||
inline std::string role() override
|
||||
{
|
||||
|
@ -101,9 +101,6 @@ GpsL1CaPcpsAssistedAcquisition::GpsL1CaPcpsAssistedAcquisition(
|
||||
}
|
||||
|
||||
|
||||
GpsL1CaPcpsAssistedAcquisition::~GpsL1CaPcpsAssistedAcquisition() = default;
|
||||
|
||||
|
||||
void GpsL1CaPcpsAssistedAcquisition::stop_acquisition()
|
||||
{
|
||||
}
|
||||
|
@ -55,7 +55,7 @@ public:
|
||||
unsigned int in_streams,
|
||||
unsigned int out_streams);
|
||||
|
||||
virtual ~GpsL1CaPcpsAssistedAcquisition();
|
||||
~GpsL1CaPcpsAssistedAcquisition() = default;
|
||||
|
||||
inline std::string role() override
|
||||
{
|
||||
|
@ -121,9 +121,6 @@ GpsL1CaPcpsOpenClAcquisition::GpsL1CaPcpsOpenClAcquisition(
|
||||
}
|
||||
|
||||
|
||||
GpsL1CaPcpsOpenClAcquisition::~GpsL1CaPcpsOpenClAcquisition() = default;
|
||||
|
||||
|
||||
void GpsL1CaPcpsOpenClAcquisition::stop_acquisition()
|
||||
{
|
||||
}
|
||||
|
@ -54,7 +54,7 @@ public:
|
||||
unsigned int in_streams,
|
||||
unsigned int out_streams);
|
||||
|
||||
virtual ~GpsL1CaPcpsOpenClAcquisition();
|
||||
~GpsL1CaPcpsOpenClAcquisition() = default;
|
||||
|
||||
inline std::string role() override
|
||||
{
|
||||
|
@ -150,9 +150,6 @@ GpsL1CaPcpsQuickSyncAcquisition::GpsL1CaPcpsQuickSyncAcquisition(
|
||||
}
|
||||
|
||||
|
||||
GpsL1CaPcpsQuickSyncAcquisition::~GpsL1CaPcpsQuickSyncAcquisition() = default;
|
||||
|
||||
|
||||
void GpsL1CaPcpsQuickSyncAcquisition::stop_acquisition()
|
||||
{
|
||||
}
|
||||
|
@ -56,7 +56,7 @@ public:
|
||||
unsigned int in_streams,
|
||||
unsigned int out_streams);
|
||||
|
||||
virtual ~GpsL1CaPcpsQuickSyncAcquisition();
|
||||
~GpsL1CaPcpsQuickSyncAcquisition() = default;
|
||||
|
||||
inline std::string role() override
|
||||
{
|
||||
|
@ -112,9 +112,6 @@ GpsL1CaPcpsTongAcquisition::GpsL1CaPcpsTongAcquisition(
|
||||
}
|
||||
|
||||
|
||||
GpsL1CaPcpsTongAcquisition::~GpsL1CaPcpsTongAcquisition() = default;
|
||||
|
||||
|
||||
void GpsL1CaPcpsTongAcquisition::stop_acquisition()
|
||||
{
|
||||
}
|
||||
|
@ -55,7 +55,7 @@ public:
|
||||
unsigned int in_streams,
|
||||
unsigned int out_streams);
|
||||
|
||||
virtual ~GpsL1CaPcpsTongAcquisition();
|
||||
~GpsL1CaPcpsTongAcquisition() = default;
|
||||
|
||||
inline std::string role() override
|
||||
{
|
||||
|
@ -165,9 +165,6 @@ GpsL2MPcpsAcquisition::GpsL2MPcpsAcquisition(
|
||||
}
|
||||
|
||||
|
||||
GpsL2MPcpsAcquisition::~GpsL2MPcpsAcquisition() = default;
|
||||
|
||||
|
||||
void GpsL2MPcpsAcquisition::stop_acquisition()
|
||||
{
|
||||
}
|
||||
|
@ -59,7 +59,7 @@ public:
|
||||
unsigned int in_streams,
|
||||
unsigned int out_streams);
|
||||
|
||||
virtual ~GpsL2MPcpsAcquisition();
|
||||
~GpsL2MPcpsAcquisition() = default;
|
||||
|
||||
inline std::string role() override
|
||||
{
|
||||
|
@ -163,9 +163,6 @@ GpsL2MPcpsAcquisitionFpga::GpsL2MPcpsAcquisitionFpga(
|
||||
}
|
||||
|
||||
|
||||
GpsL2MPcpsAcquisitionFpga::~GpsL2MPcpsAcquisitionFpga() = default;
|
||||
|
||||
|
||||
void GpsL2MPcpsAcquisitionFpga::stop_acquisition()
|
||||
{
|
||||
}
|
||||
|
@ -58,7 +58,7 @@ public:
|
||||
unsigned int in_streams,
|
||||
unsigned int out_streams);
|
||||
|
||||
virtual ~GpsL2MPcpsAcquisitionFpga();
|
||||
~GpsL2MPcpsAcquisitionFpga() = default;
|
||||
|
||||
inline std::string role() override
|
||||
{
|
||||
|
@ -160,9 +160,6 @@ GpsL5iPcpsAcquisition::GpsL5iPcpsAcquisition(
|
||||
}
|
||||
|
||||
|
||||
GpsL5iPcpsAcquisition::~GpsL5iPcpsAcquisition() = default;
|
||||
|
||||
|
||||
void GpsL5iPcpsAcquisition::stop_acquisition()
|
||||
{
|
||||
}
|
||||
|
@ -59,7 +59,7 @@ public:
|
||||
unsigned int in_streams,
|
||||
unsigned int out_streams);
|
||||
|
||||
virtual ~GpsL5iPcpsAcquisition();
|
||||
~GpsL5iPcpsAcquisition() = default;
|
||||
|
||||
inline std::string role() override
|
||||
{
|
||||
|
@ -178,9 +178,6 @@ GpsL5iPcpsAcquisitionFpga::GpsL5iPcpsAcquisitionFpga(
|
||||
}
|
||||
|
||||
|
||||
GpsL5iPcpsAcquisitionFpga::~GpsL5iPcpsAcquisitionFpga() = default;
|
||||
|
||||
|
||||
void GpsL5iPcpsAcquisitionFpga::stop_acquisition()
|
||||
{
|
||||
// this command causes the SW to reset the HW.
|
||||
|
@ -56,7 +56,7 @@ public:
|
||||
unsigned int in_streams,
|
||||
unsigned int out_streams);
|
||||
|
||||
virtual ~GpsL5iPcpsAcquisitionFpga();
|
||||
~GpsL5iPcpsAcquisitionFpga() = default;
|
||||
|
||||
inline std::string role() override
|
||||
{
|
||||
|
@ -40,9 +40,9 @@
|
||||
#include <gnuradio/io_signature.h>
|
||||
#include <volk/volk.h>
|
||||
#include <volk_gnsssdr/volk_gnsssdr.h>
|
||||
#include <array>
|
||||
#include <exception>
|
||||
#include <sstream>
|
||||
#include <utility>
|
||||
|
||||
|
||||
galileo_e5a_noncoherentIQ_acquisition_caf_cc_sptr galileo_e5a_noncoherentIQ_make_acquisition_caf_cc(
|
||||
@ -310,9 +310,8 @@ void galileo_e5a_noncoherentIQ_acquisition_caf_cc::init()
|
||||
d_grid_doppler_wipeoffs[doppler_index] = static_cast<gr_complex *>(volk_gnsssdr_malloc(d_fft_size * sizeof(gr_complex), volk_gnsssdr_get_alignment()));
|
||||
int doppler = -static_cast<int>(d_doppler_max) + d_doppler_step * doppler_index;
|
||||
float phase_step_rad = GALILEO_TWO_PI * doppler / static_cast<float>(d_fs_in);
|
||||
float _phase[1];
|
||||
_phase[0] = 0;
|
||||
volk_gnsssdr_s32f_sincos_32fc(d_grid_doppler_wipeoffs[doppler_index], -phase_step_rad, _phase, d_fft_size);
|
||||
std::array<float, 1> _phase{};
|
||||
volk_gnsssdr_s32f_sincos_32fc(d_grid_doppler_wipeoffs[doppler_index], -phase_step_rad, _phase.data(), d_fft_size);
|
||||
}
|
||||
|
||||
/* CAF Filtering to resolve doppler ambiguity. Phase and quadrature must be processed
|
||||
|
@ -34,9 +34,9 @@
|
||||
#include <gnuradio/io_signature.h>
|
||||
#include <volk/volk.h>
|
||||
#include <volk_gnsssdr/volk_gnsssdr.h>
|
||||
#include <array>
|
||||
#include <exception>
|
||||
#include <sstream>
|
||||
#include <utility>
|
||||
|
||||
|
||||
galileo_pcps_8ms_acquisition_cc_sptr galileo_pcps_8ms_make_acquisition_cc(
|
||||
@ -192,9 +192,8 @@ void galileo_pcps_8ms_acquisition_cc::init()
|
||||
d_grid_doppler_wipeoffs[doppler_index] = static_cast<gr_complex *>(volk_gnsssdr_malloc(d_fft_size * sizeof(gr_complex), volk_gnsssdr_get_alignment()));
|
||||
int32_t doppler = -static_cast<int32_t>(d_doppler_max) + d_doppler_step * doppler_index;
|
||||
float phase_step_rad = static_cast<float>(GALILEO_TWO_PI) * doppler / static_cast<float>(d_fs_in);
|
||||
float _phase[1];
|
||||
_phase[0] = 0;
|
||||
volk_gnsssdr_s32f_sincos_32fc(d_grid_doppler_wipeoffs[doppler_index], -phase_step_rad, _phase, d_fft_size);
|
||||
std::array<float, 1> _phase{};
|
||||
volk_gnsssdr_s32f_sincos_32fc(d_grid_doppler_wipeoffs[doppler_index], -phase_step_rad, _phase.data(), d_fft_size);
|
||||
}
|
||||
}
|
||||
|
||||
@ -358,7 +357,7 @@ int galileo_pcps_8ms_acquisition_cc::general_work(int noutput_items,
|
||||
std::streamsize n = 2 * sizeof(float) * (d_fft_size); // complex file write
|
||||
filename.str("");
|
||||
filename << "../data/test_statistics_" << d_gnss_synchro->System
|
||||
<< "_" << d_gnss_synchro->Signal << "_sat_"
|
||||
<< "_" << d_gnss_synchro->Signal[0] << d_gnss_synchro->Signal[1] << "_sat_"
|
||||
<< d_gnss_synchro->PRN << "_doppler_" << doppler << ".dat";
|
||||
d_dump_file.open(filename.str().c_str(), std::ios::out | std::ios::binary);
|
||||
d_dump_file.write(reinterpret_cast<char *>(d_ifft->get_outbuf()), n); //write directly |abs(x)|^2 in this Doppler bin?
|
||||
|
@ -206,9 +206,6 @@ pcps_acquisition::pcps_acquisition(const Acq_Conf& conf_) : gr::block("pcps_acqu
|
||||
}
|
||||
|
||||
|
||||
pcps_acquisition::~pcps_acquisition() = default;
|
||||
|
||||
|
||||
void pcps_acquisition::set_resampler_latency(uint32_t latency_samples)
|
||||
{
|
||||
gr::thread::scoped_lock lock(d_setlock); // require mutex with work function called by the scheduler
|
||||
@ -284,9 +281,8 @@ void pcps_acquisition::update_local_carrier(gsl::span<gr_complex> carrier_vector
|
||||
{
|
||||
phase_step_rad = GPS_TWO_PI * freq / static_cast<float>(acq_parameters.fs_in);
|
||||
}
|
||||
float _phase[1];
|
||||
_phase[0] = 0.0;
|
||||
volk_gnsssdr_s32f_sincos_32fc(carrier_vector.data(), -phase_step_rad, _phase, carrier_vector.length());
|
||||
std::array<float, 1> _phase{};
|
||||
volk_gnsssdr_s32f_sincos_32fc(carrier_vector.data(), -phase_step_rad, _phase.data(), carrier_vector.length());
|
||||
}
|
||||
|
||||
|
||||
|
@ -90,7 +90,7 @@ pcps_acquisition_sptr pcps_make_acquisition(const Acq_Conf& conf_);
|
||||
class pcps_acquisition : public gr::block
|
||||
{
|
||||
public:
|
||||
~pcps_acquisition();
|
||||
~pcps_acquisition() = default;
|
||||
|
||||
/*!
|
||||
* \brief Set acquisition/tracking common Gnss_Synchro object pointer
|
||||
|
@ -158,11 +158,11 @@ pcps_acquisition_fine_doppler_cc::pcps_acquisition_fine_doppler_cc(const Acq_Con
|
||||
unsigned int pcps_acquisition_fine_doppler_cc::nextPowerOf2(unsigned int n)
|
||||
{
|
||||
n--;
|
||||
n |= n >> 1;
|
||||
n |= n >> 2;
|
||||
n |= n >> 4;
|
||||
n |= n >> 8;
|
||||
n |= n >> 16;
|
||||
n |= n >> 1U;
|
||||
n |= n >> 2U;
|
||||
n |= n >> 4U;
|
||||
n |= n >> 8U;
|
||||
n |= n >> 16U;
|
||||
n++;
|
||||
return n;
|
||||
}
|
||||
|
@ -84,9 +84,6 @@ pcps_acquisition_fpga::pcps_acquisition_fpga(pcpsconf_fpga_t conf_)
|
||||
}
|
||||
|
||||
|
||||
pcps_acquisition_fpga::~pcps_acquisition_fpga() = default;
|
||||
|
||||
|
||||
void pcps_acquisition_fpga::set_local_code()
|
||||
{
|
||||
acquisition_fpga->set_local_code(d_gnss_synchro->PRN);
|
||||
|
@ -89,7 +89,7 @@ pcps_acquisition_fpga_sptr pcps_make_acquisition_fpga(pcpsconf_fpga_t conf_);
|
||||
class pcps_acquisition_fpga
|
||||
{
|
||||
public:
|
||||
~pcps_acquisition_fpga();
|
||||
~pcps_acquisition_fpga() = default;
|
||||
|
||||
/*!
|
||||
* \brief Set acquisition/tracking common Gnss_Synchro object pointer
|
||||
|
@ -38,6 +38,7 @@
|
||||
#include <gnuradio/io_signature.h>
|
||||
#include <volk/volk.h>
|
||||
#include <volk_gnsssdr/volk_gnsssdr.h>
|
||||
#include <array>
|
||||
#include <exception>
|
||||
#include <sstream>
|
||||
#include <utility>
|
||||
@ -233,9 +234,8 @@ void pcps_assisted_acquisition_cc::redefine_grid()
|
||||
// doppler search steps
|
||||
// compute the carrier doppler wipe-off signal and store it
|
||||
phase_step_rad = static_cast<float>(GPS_TWO_PI) * doppler_hz / static_cast<float>(d_fs_in);
|
||||
float _phase[1];
|
||||
_phase[0] = 0;
|
||||
volk_gnsssdr_s32f_sincos_32fc(d_grid_doppler_wipeoffs[doppler_index].data(), -phase_step_rad, _phase, d_fft_size);
|
||||
std::array<float, 1> _phase{};
|
||||
volk_gnsssdr_s32f_sincos_32fc(d_grid_doppler_wipeoffs[doppler_index].data(), -phase_step_rad, _phase.data(), d_fft_size);
|
||||
}
|
||||
}
|
||||
|
||||
|
@ -206,9 +206,8 @@ void pcps_cccwsr_acquisition_cc::init()
|
||||
|
||||
int32_t doppler = -static_cast<int32_t>(d_doppler_max) + d_doppler_step * doppler_index;
|
||||
float phase_step_rad = GPS_TWO_PI * doppler / static_cast<float>(d_fs_in);
|
||||
float _phase[1];
|
||||
_phase[0] = 0;
|
||||
volk_gnsssdr_s32f_sincos_32fc(d_grid_doppler_wipeoffs[doppler_index], -phase_step_rad, _phase, d_fft_size);
|
||||
std::array<float, 1> _phase{};
|
||||
volk_gnsssdr_s32f_sincos_32fc(d_grid_doppler_wipeoffs[doppler_index], -phase_step_rad, _phase.data(), d_fft_size);
|
||||
}
|
||||
}
|
||||
|
||||
|
@ -57,11 +57,11 @@
|
||||
#include <volk/volk.h>
|
||||
#include <volk_gnsssdr/volk_gnsssdr.h>
|
||||
#include <algorithm>
|
||||
#include <array>
|
||||
#include <exception>
|
||||
#include <fstream>
|
||||
#include <iostream>
|
||||
#include <sstream>
|
||||
#include <utility>
|
||||
|
||||
|
||||
pcps_opencl_acquisition_cc_sptr pcps_make_opencl_acquisition_cc(
|
||||
@ -324,9 +324,8 @@ void pcps_opencl_acquisition_cc::init()
|
||||
|
||||
int doppler = -static_cast<int>(d_doppler_max) + d_doppler_step * doppler_index;
|
||||
float phase_step_rad = static_cast<float>(GPS_TWO_PI) * doppler / static_cast<float>(d_fs_in);
|
||||
float _phase[1];
|
||||
_phase[0] = 0;
|
||||
volk_gnsssdr_s32f_sincos_32fc(d_grid_doppler_wipeoffs[doppler_index], -phase_step_rad, _phase, d_fft_size);
|
||||
std::array<float, 1> _phase{};
|
||||
volk_gnsssdr_s32f_sincos_32fc(d_grid_doppler_wipeoffs[doppler_index], -phase_step_rad, _phase.data(), d_fft_size);
|
||||
|
||||
if (d_opencl == 0)
|
||||
{
|
||||
|
@ -38,7 +38,6 @@
|
||||
#include <cmath>
|
||||
#include <exception>
|
||||
#include <sstream>
|
||||
#include <utility>
|
||||
|
||||
|
||||
pcps_quicksync_acquisition_cc_sptr pcps_quicksync_make_acquisition_cc(
|
||||
@ -235,9 +234,8 @@ void pcps_quicksync_acquisition_cc::init()
|
||||
d_grid_doppler_wipeoffs[doppler_index] = static_cast<gr_complex*>(volk_gnsssdr_malloc(d_samples_per_code * d_folding_factor * sizeof(gr_complex), volk_gnsssdr_get_alignment()));
|
||||
int32_t doppler = -static_cast<int32_t>(d_doppler_max) + d_doppler_step * doppler_index;
|
||||
float phase_step_rad = GPS_TWO_PI * doppler / static_cast<float>(d_fs_in);
|
||||
float _phase[1];
|
||||
_phase[0] = 0;
|
||||
volk_gnsssdr_s32f_sincos_32fc(d_grid_doppler_wipeoffs[doppler_index], -phase_step_rad, _phase, d_samples_per_code * d_folding_factor);
|
||||
std::array<float, 1> _phase{};
|
||||
volk_gnsssdr_s32f_sincos_32fc(d_grid_doppler_wipeoffs[doppler_index], -phase_step_rad, _phase.data(), d_samples_per_code * d_folding_factor);
|
||||
}
|
||||
// DLOG(INFO) << "end init";
|
||||
}
|
||||
|
@ -54,9 +54,9 @@
|
||||
#include <gnuradio/io_signature.h>
|
||||
#include <volk/volk.h>
|
||||
#include <volk_gnsssdr/volk_gnsssdr.h>
|
||||
#include <array>
|
||||
#include <exception>
|
||||
#include <sstream>
|
||||
#include <utility>
|
||||
|
||||
|
||||
pcps_tong_acquisition_cc_sptr pcps_tong_make_acquisition_cc(
|
||||
@ -211,9 +211,8 @@ void pcps_tong_acquisition_cc::init()
|
||||
|
||||
int32_t doppler = -static_cast<int32_t>(d_doppler_max) + d_doppler_step * doppler_index;
|
||||
float phase_step_rad = GPS_TWO_PI * doppler / static_cast<float>(d_fs_in);
|
||||
float _phase[1];
|
||||
_phase[0] = 0;
|
||||
volk_gnsssdr_s32f_sincos_32fc(d_grid_doppler_wipeoffs[doppler_index], -phase_step_rad, _phase, d_fft_size);
|
||||
std::array<float, 1> _phase{};
|
||||
volk_gnsssdr_s32f_sincos_32fc(d_grid_doppler_wipeoffs[doppler_index], -phase_step_rad, _phase.data(), d_fft_size);
|
||||
|
||||
d_grid_data[doppler_index] = static_cast<float *>(volk_gnsssdr_malloc(d_fft_size * sizeof(float), volk_gnsssdr_get_alignment()));
|
||||
|
||||
|
@ -108,9 +108,6 @@ Fpga_Acquisition::Fpga_Acquisition(std::string device_name,
|
||||
}
|
||||
|
||||
|
||||
Fpga_Acquisition::~Fpga_Acquisition() = default;
|
||||
|
||||
|
||||
bool Fpga_Acquisition::set_local_code(uint32_t PRN)
|
||||
{
|
||||
// select the code with the chosen PRN
|
||||
|
@ -56,7 +56,7 @@ public:
|
||||
uint32_t *all_fft_codes,
|
||||
uint32_t excludelimit);
|
||||
|
||||
~Fpga_Acquisition();
|
||||
~Fpga_Acquisition() = default;
|
||||
|
||||
bool set_local_code(uint32_t PRN);
|
||||
|
||||
|
@ -40,6 +40,7 @@ target_link_libraries(channel_adapters
|
||||
target_include_directories(channel_adapters
|
||||
PUBLIC
|
||||
${CMAKE_SOURCE_DIR}/src/core/interfaces
|
||||
${CMAKE_SOURCE_DIR}/src/core/receiver
|
||||
)
|
||||
|
||||
if(ENABLE_CLANG_TIDY)
|
||||
|
@ -42,7 +42,7 @@
|
||||
|
||||
Channel::Channel(ConfigurationInterface* configuration, uint32_t channel, std::shared_ptr<AcquisitionInterface> acq,
|
||||
std::shared_ptr<TrackingInterface> trk, std::shared_ptr<TelemetryDecoderInterface> nav,
|
||||
std::string role, std::string implementation, gr::msg_queue::sptr queue)
|
||||
std::string role, std::string implementation, std::shared_ptr<Concurrent_Queue<pmt::pmt_t> > queue)
|
||||
{
|
||||
acq_ = std::move(acq);
|
||||
trk_ = std::move(trk);
|
||||
@ -118,9 +118,6 @@ Channel::Channel(ConfigurationInterface* configuration, uint32_t channel, std::s
|
||||
}
|
||||
|
||||
|
||||
Channel::~Channel() = default;
|
||||
|
||||
|
||||
void Channel::connect(gr::top_block_sptr top_block)
|
||||
{
|
||||
if (!flag_enable_fpga)
|
||||
|
@ -38,10 +38,11 @@
|
||||
#include "channel_fsm.h"
|
||||
#include "channel_interface.h"
|
||||
#include "channel_msg_receiver_cc.h"
|
||||
#include "concurrent_queue.h"
|
||||
#include "gnss_signal.h"
|
||||
#include "gnss_synchro.h"
|
||||
#include <gnuradio/block.h>
|
||||
#include <gnuradio/msg_queue.h>
|
||||
#include <pmt/pmt.h>
|
||||
#include <cstddef>
|
||||
#include <cstdint>
|
||||
#include <memory>
|
||||
@ -66,9 +67,9 @@ public:
|
||||
//! Constructor
|
||||
Channel(ConfigurationInterface* configuration, uint32_t channel, std::shared_ptr<AcquisitionInterface> acq,
|
||||
std::shared_ptr<TrackingInterface> trk, std::shared_ptr<TelemetryDecoderInterface> nav,
|
||||
std::string role, std::string implementation, gr::msg_queue::sptr queue);
|
||||
std::string role, std::string implementation, std::shared_ptr<Concurrent_Queue<pmt::pmt_t>> queue);
|
||||
|
||||
virtual ~Channel(); //!< Virtual destructor
|
||||
~Channel() = default; //!< Destructor
|
||||
|
||||
void connect(gr::top_block_sptr top_block) override; //!< connects the tracking block to the top_block and to the telemetry
|
||||
void disconnect(gr::top_block_sptr top_block) override;
|
||||
@ -100,12 +101,12 @@ private:
|
||||
std::string implementation_;
|
||||
bool flag_enable_fpga;
|
||||
uint32_t channel_;
|
||||
Gnss_Synchro gnss_synchro_;
|
||||
Gnss_Synchro gnss_synchro_{};
|
||||
Gnss_Signal gnss_signal_;
|
||||
bool connected_;
|
||||
bool repeat_;
|
||||
std::shared_ptr<ChannelFsm> channel_fsm_;
|
||||
gr::msg_queue::sptr queue_;
|
||||
std::shared_ptr<Concurrent_Queue<pmt::pmt_t>> queue_;
|
||||
std::mutex mx;
|
||||
};
|
||||
|
||||
|
@ -24,7 +24,7 @@ set(CHANNEL_FSM_SOURCES
|
||||
set(CHANNEL_FSM_HEADERS
|
||||
channel_fsm.h
|
||||
channel_msg_receiver_cc.h
|
||||
)
|
||||
)
|
||||
|
||||
list(SORT CHANNEL_FSM_HEADERS)
|
||||
list(SORT CHANNEL_FSM_SOURCES)
|
||||
@ -35,14 +35,19 @@ add_library(channel_libs ${CHANNEL_FSM_SOURCES} ${CHANNEL_FSM_HEADERS})
|
||||
|
||||
target_link_libraries(channel_libs
|
||||
PUBLIC
|
||||
core_system_parameters
|
||||
Gnuradio::runtime
|
||||
Gnuradio::pmt
|
||||
core_system_parameters
|
||||
PRIVATE
|
||||
core_libs
|
||||
Boost::boost
|
||||
Gflags::gflags
|
||||
Glog::glog
|
||||
core_receiver
|
||||
)
|
||||
|
||||
target_include_directories(channel_libs
|
||||
PUBLIC
|
||||
${CMAKE_SOURCE_DIR}/src/core/receiver
|
||||
)
|
||||
|
||||
if(ENABLE_CLANG_TIDY)
|
||||
|
@ -31,7 +31,7 @@
|
||||
*/
|
||||
|
||||
#include "channel_fsm.h"
|
||||
#include "control_message_factory.h"
|
||||
#include "channel_event.h"
|
||||
#include <glog/logging.h>
|
||||
#include <utility>
|
||||
|
||||
@ -179,7 +179,7 @@ void ChannelFsm::set_telemetry(std::shared_ptr<TelemetryDecoderInterface> teleme
|
||||
}
|
||||
|
||||
|
||||
void ChannelFsm::set_queue(gr::msg_queue::sptr queue)
|
||||
void ChannelFsm::set_queue(std::shared_ptr<Concurrent_Queue<pmt::pmt_t>> queue)
|
||||
{
|
||||
std::lock_guard<std::mutex> lk(mx);
|
||||
queue_ = std::move(queue);
|
||||
@ -215,29 +215,17 @@ void ChannelFsm::start_acquisition()
|
||||
void ChannelFsm::start_tracking()
|
||||
{
|
||||
trk_->start_tracking();
|
||||
std::unique_ptr<ControlMessageFactory> cmf(new ControlMessageFactory());
|
||||
if (queue_ != gr::msg_queue::make())
|
||||
{
|
||||
queue_->handle(cmf->GetQueueMessage(channel_, 1));
|
||||
}
|
||||
queue_->push(pmt::make_any(channel_event_make(channel_, 1)));
|
||||
}
|
||||
|
||||
|
||||
void ChannelFsm::request_satellite()
|
||||
{
|
||||
std::unique_ptr<ControlMessageFactory> cmf(new ControlMessageFactory());
|
||||
if (queue_ != gr::msg_queue::make())
|
||||
{
|
||||
queue_->handle(cmf->GetQueueMessage(channel_, 0));
|
||||
}
|
||||
queue_->push(pmt::make_any(channel_event_make(channel_, 0)));
|
||||
}
|
||||
|
||||
|
||||
void ChannelFsm::notify_stop_tracking()
|
||||
{
|
||||
std::unique_ptr<ControlMessageFactory> cmf(new ControlMessageFactory());
|
||||
if (queue_ != gr::msg_queue::make())
|
||||
{
|
||||
queue_->handle(cmf->GetQueueMessage(channel_, 2));
|
||||
}
|
||||
queue_->push(pmt::make_any(channel_event_make(channel_, 2)));
|
||||
}
|
||||
|
@ -34,9 +34,10 @@
|
||||
#define GNSS_SDR_CHANNEL_FSM_H
|
||||
|
||||
#include "acquisition_interface.h"
|
||||
#include "concurrent_queue.h"
|
||||
#include "telemetry_decoder_interface.h"
|
||||
#include "tracking_interface.h"
|
||||
#include <gnuradio/msg_queue.h>
|
||||
#include <pmt/pmt.h>
|
||||
#include <cstdint>
|
||||
#include <memory>
|
||||
#include <mutex>
|
||||
@ -54,7 +55,7 @@ public:
|
||||
void set_acquisition(std::shared_ptr<AcquisitionInterface> acquisition);
|
||||
void set_tracking(std::shared_ptr<TrackingInterface> tracking);
|
||||
void set_telemetry(std::shared_ptr<TelemetryDecoderInterface> telemetry);
|
||||
void set_queue(gr::msg_queue::sptr queue);
|
||||
void set_queue(std::shared_ptr<Concurrent_Queue<pmt::pmt_t>> queue);
|
||||
void set_channel(uint32_t channel);
|
||||
void start_acquisition();
|
||||
// FSM EVENTS
|
||||
@ -76,7 +77,7 @@ private:
|
||||
std::shared_ptr<AcquisitionInterface> acq_;
|
||||
std::shared_ptr<TrackingInterface> trk_;
|
||||
std::shared_ptr<TelemetryDecoderInterface> nav_;
|
||||
gr::msg_queue::sptr queue_;
|
||||
std::shared_ptr<Concurrent_Queue<pmt::pmt_t>> queue_;
|
||||
uint32_t channel_;
|
||||
uint32_t d_state;
|
||||
std::mutex mx;
|
||||
|
@ -55,9 +55,6 @@ channel_msg_receiver_cc::channel_msg_receiver_cc(std::shared_ptr<ChannelFsm> cha
|
||||
}
|
||||
|
||||
|
||||
channel_msg_receiver_cc::~channel_msg_receiver_cc() = default;
|
||||
|
||||
|
||||
void channel_msg_receiver_cc::msg_handler_events(pmt::pmt_t msg)
|
||||
{
|
||||
bool result = false;
|
||||
|
@ -48,7 +48,7 @@ channel_msg_receiver_cc_sptr channel_msg_receiver_make_cc(std::shared_ptr<Channe
|
||||
class channel_msg_receiver_cc : public gr::block
|
||||
{
|
||||
public:
|
||||
~channel_msg_receiver_cc(); //!< Default destructor
|
||||
~channel_msg_receiver_cc() = default; //!< Default destructor
|
||||
|
||||
private:
|
||||
friend channel_msg_receiver_cc_sptr channel_msg_receiver_make_cc(std::shared_ptr<ChannelFsm> channel_fsm, bool repeat);
|
||||
|
@ -54,10 +54,6 @@ ArraySignalConditioner::ArraySignalConditioner(ConfigurationInterface *configura
|
||||
}
|
||||
|
||||
|
||||
// Destructor
|
||||
ArraySignalConditioner::~ArraySignalConditioner() = default;
|
||||
|
||||
|
||||
void ArraySignalConditioner::connect(gr::top_block_sptr top_block)
|
||||
{
|
||||
// note: the array signal conditioner do not have data type adapter, and must use the array input filter (multichannel)
|
||||
|
@ -55,8 +55,8 @@ public:
|
||||
std::shared_ptr<GNSSBlockInterface> data_type_adapt, std::shared_ptr<GNSSBlockInterface> in_filt,
|
||||
std::shared_ptr<GNSSBlockInterface> res, std::string role, std::string implementation);
|
||||
|
||||
//! Virtual destructor
|
||||
virtual ~ArraySignalConditioner();
|
||||
//! Destructor
|
||||
~ArraySignalConditioner() = default;
|
||||
|
||||
void connect(gr::top_block_sptr top_block) override;
|
||||
void disconnect(gr::top_block_sptr top_block) override;
|
||||
|
@ -54,10 +54,6 @@ SignalConditioner::SignalConditioner(ConfigurationInterface *configuration,
|
||||
}
|
||||
|
||||
|
||||
// Destructor
|
||||
SignalConditioner::~SignalConditioner() = default;
|
||||
|
||||
|
||||
void SignalConditioner::connect(gr::top_block_sptr top_block)
|
||||
{
|
||||
if (connected_)
|
||||
|
@ -52,8 +52,8 @@ public:
|
||||
std::shared_ptr<GNSSBlockInterface> data_type_adapt, std::shared_ptr<GNSSBlockInterface> in_filt,
|
||||
std::shared_ptr<GNSSBlockInterface> res, std::string role, std::string implementation);
|
||||
|
||||
//! Virtual destructor
|
||||
virtual ~SignalConditioner();
|
||||
//! Destructor
|
||||
~SignalConditioner() = default;
|
||||
|
||||
void connect(gr::top_block_sptr top_block) override;
|
||||
void disconnect(gr::top_block_sptr top_block) override;
|
||||
|
@ -71,9 +71,6 @@ ByteToShort::ByteToShort(ConfigurationInterface* configuration, std::string role
|
||||
}
|
||||
|
||||
|
||||
ByteToShort::~ByteToShort() = default;
|
||||
|
||||
|
||||
void ByteToShort::connect(gr::top_block_sptr top_block)
|
||||
{
|
||||
if (dump_)
|
||||
|
@ -49,7 +49,7 @@ public:
|
||||
std::string role, unsigned int in_streams,
|
||||
unsigned int out_streams);
|
||||
|
||||
virtual ~ByteToShort();
|
||||
~ByteToShort() = default;
|
||||
|
||||
inline std::string role() override
|
||||
{
|
||||
|
@ -76,9 +76,6 @@ IbyteToCbyte::IbyteToCbyte(ConfigurationInterface* configuration, const std::str
|
||||
}
|
||||
|
||||
|
||||
IbyteToCbyte::~IbyteToCbyte() = default;
|
||||
|
||||
|
||||
void IbyteToCbyte::connect(gr::top_block_sptr top_block)
|
||||
{
|
||||
if (dump_)
|
||||
|
@ -51,7 +51,7 @@ public:
|
||||
const std::string& role, unsigned int in_streams,
|
||||
unsigned int out_streams);
|
||||
|
||||
virtual ~IbyteToCbyte();
|
||||
~IbyteToCbyte() = default;
|
||||
|
||||
inline std::string role() override
|
||||
{
|
||||
|
@ -74,9 +74,6 @@ IbyteToComplex::IbyteToComplex(ConfigurationInterface* configuration, const std:
|
||||
}
|
||||
|
||||
|
||||
IbyteToComplex::~IbyteToComplex() = default;
|
||||
|
||||
|
||||
void IbyteToComplex::connect(gr::top_block_sptr top_block)
|
||||
{
|
||||
if (dump_)
|
||||
|
@ -51,7 +51,7 @@ public:
|
||||
const std::string& role, unsigned int in_streams,
|
||||
unsigned int out_streams);
|
||||
|
||||
virtual ~IbyteToComplex();
|
||||
~IbyteToComplex() = default;
|
||||
|
||||
inline std::string role() override
|
||||
{
|
||||
|
@ -76,9 +76,6 @@ IbyteToCshort::IbyteToCshort(ConfigurationInterface* configuration, const std::s
|
||||
}
|
||||
|
||||
|
||||
IbyteToCshort::~IbyteToCshort() = default;
|
||||
|
||||
|
||||
void IbyteToCshort::connect(gr::top_block_sptr top_block)
|
||||
{
|
||||
if (dump_)
|
||||
|
@ -51,7 +51,7 @@ public:
|
||||
const std::string& role, unsigned int in_streams,
|
||||
unsigned int out_streams);
|
||||
|
||||
virtual ~IbyteToCshort();
|
||||
~IbyteToCshort() = default;
|
||||
|
||||
inline std::string role() override
|
||||
{
|
||||
|
@ -74,9 +74,6 @@ IshortToComplex::IshortToComplex(ConfigurationInterface* configuration, const st
|
||||
}
|
||||
|
||||
|
||||
IshortToComplex::~IshortToComplex() = default;
|
||||
|
||||
|
||||
void IshortToComplex::connect(gr::top_block_sptr top_block)
|
||||
{
|
||||
if (dump_)
|
||||
|
@ -50,7 +50,7 @@ public:
|
||||
const std::string& role, unsigned int in_streams,
|
||||
unsigned int out_streams);
|
||||
|
||||
virtual ~IshortToComplex();
|
||||
~IshortToComplex() = default;
|
||||
|
||||
inline std::string role() override
|
||||
{
|
||||
|
@ -76,9 +76,6 @@ IshortToCshort::IshortToCshort(ConfigurationInterface* configuration, const std:
|
||||
}
|
||||
|
||||
|
||||
IshortToCshort::~IshortToCshort() = default;
|
||||
|
||||
|
||||
void IshortToCshort::connect(gr::top_block_sptr top_block)
|
||||
{
|
||||
if (dump_)
|
||||
|
@ -51,7 +51,7 @@ public:
|
||||
const std::string& role, unsigned int in_streams,
|
||||
unsigned int out_streams);
|
||||
|
||||
virtual ~IshortToCshort();
|
||||
~IshortToCshort() = default;
|
||||
|
||||
inline std::string role() override
|
||||
{
|
||||
|
@ -77,9 +77,6 @@ BeamformerFilter::BeamformerFilter(
|
||||
}
|
||||
|
||||
|
||||
BeamformerFilter::~BeamformerFilter() = default;
|
||||
|
||||
|
||||
void BeamformerFilter::connect(gr::top_block_sptr top_block)
|
||||
{
|
||||
if (dump_)
|
||||
|
@ -50,7 +50,7 @@ public:
|
||||
const std::string& role, unsigned int in_stream,
|
||||
unsigned int out_stream);
|
||||
|
||||
virtual ~BeamformerFilter();
|
||||
~BeamformerFilter() = default;
|
||||
|
||||
inline std::string role() override
|
||||
{
|
||||
@ -86,4 +86,4 @@ private:
|
||||
gr::block_sptr file_sink_;
|
||||
};
|
||||
|
||||
#endif /*GNSS_SDR_BEAMFORMER_FILTER_H_*/
|
||||
#endif /* GNSS_SDR_BEAMFORMER_FILTER_H_ */
|
||||
|
Some files were not shown because too many files have changed in this diff Show More
Loading…
Reference in New Issue
Block a user