1
0
mirror of https://github.com/gnss-sdr/gnss-sdr synced 2024-12-15 04:30:33 +00:00

Merge branch 'next' of https://github.com/gnss-sdr/gnss-sdr into next

This commit is contained in:
Carles Fernandez 2019-03-04 08:15:57 +01:00
commit faab4275f8
No known key found for this signature in database
GPG Key ID: 4C583C52B0C3877D
31 changed files with 129 additions and 84 deletions

View File

@ -32,6 +32,7 @@ add_library(pvt_adapters ${PVT_ADAPTER_SOURCES} ${PVT_ADAPTER_HEADERS})
target_link_libraries(pvt_adapters
PUBLIC
pvt_gr_blocks
algorithms_libs_rtklib
core_system_parameters
PRIVATE
gnss_sdr_flags

View File

@ -33,6 +33,7 @@
#include "configuration_interface.h"
#include "gnss_sdr_flags.h"
#include "pvt_conf.h"
#include "rtklib_rtkpos.h"
#include <glog/logging.h>
#if OLD_BOOST
#include <boost/math/common_factor_rt.hpp>

View File

@ -81,6 +81,10 @@ private:
const Pvt_Conf& conf_,
const rtk_t& rtk);
rtklib_pvt_gs(uint32_t nchannels,
const Pvt_Conf& conf_,
const rtk_t& rtk);
void msg_handler_telemetry(const pmt::pmt_t& msg);
bool d_dump;
@ -135,7 +139,7 @@ private:
int sysv_msqid;
typedef struct
{
long mtype; //required by sys v message
long mtype; // NOLINT(google-runtime-int) required by SysV queue messaging
double ttff;
} ttff_msgbuf;
bool send_sys_v_ttff_msg(ttff_msgbuf ttff);
@ -158,31 +162,40 @@ private:
std::vector<std::string> split_string(const std::string& s, char delim) const;
public:
rtklib_pvt_gs(uint32_t nchannels,
const Pvt_Conf& conf_,
const rtk_t& rtk);
~rtklib_pvt_gs(); //!< Default destructor
/*!
* \brief Get latest set of GPS ephemeris from PVT block
*
*/
std::map<int, Gps_Ephemeris> get_gps_ephemeris_map() const;
/*!
* \brief Get latest set of GPS almanac from PVT block
*/
std::map<int, Gps_Almanac> get_gps_almanac_map() const;
/*!
* \brief Get latest set of Galileo ephemeris from PVT block
*/
std::map<int, Galileo_Ephemeris> get_galileo_ephemeris_map() const;
/*!
* \brief Get latest set of Galileo almanac from PVT block
*/
std::map<int, Galileo_Almanac> get_galileo_almanac_map() const;
/*!
* \brief Get latest set of BeiDou DNAV ephemeris from PVT block
*/
std::map<int, Beidou_Dnav_Ephemeris> get_beidou_dnav_ephemeris_map() const;
/*!
* \brief Get latest set of BeiDou DNAV almanac from PVT block
*/
std::map<int, Beidou_Dnav_Almanac> get_beidou_dnav_almanac_map() const;
/*!
* \brief Clear all ephemeris information and the almanacs for GPS and Galileo
*
*/
void clear_ephemeris();

View File

@ -33,7 +33,6 @@
#ifndef GNSS_SDR_GPX_PRINTER_H_
#define GNSS_SDR_GPX_PRINTER_H_
#include "pvt_solution.h"
#include "rtklib_solver.h"
#include <fstream>
#include <memory>

View File

@ -33,7 +33,6 @@
#ifndef GNSS_SDR_KML_PRINTER_H_
#define GNSS_SDR_KML_PRINTER_H_
#include "pvt_solution.h"
#include "rtklib_solver.h"
#include <fstream>
#include <memory>

View File

@ -33,7 +33,6 @@
#include "GPS_L1_CA.h"
#include "geofunctions.h"
#include <glog/logging.h>
#include <exception>
#include <stdexcept>

View File

@ -31,7 +31,6 @@
#ifndef GNSS_SDR_PVT_CONF_H_
#define GNSS_SDR_PVT_CONF_H_
#include <cstddef>
#include <cstdint>
#include <map>
#include <string>

View File

@ -33,7 +33,6 @@
#include "GPS_L1_CA.h"
#include "geofunctions.h"
#include <glog/logging.h>
#include <exception>
Pvt_Solution::Pvt_Solution()
@ -54,6 +53,7 @@ Pvt_Solution::Pvt_Solution()
d_rx_dt_s = 0.0;
}
arma::vec Pvt_Solution::rotateSatellite(double const traveltime, const arma::vec &X_sat)
{
/*

View File

@ -57,6 +57,7 @@
#include "GPS_L1_CA.h"
#include "Galileo_E1.h"
#include "rtklib_conversions.h"
#include "rtklib_rtkpos.h"
#include "rtklib_solution.h"
#include <glog/logging.h>
#include <matio.h>
@ -479,11 +480,13 @@ double Rtklib_Solver::get_vdop() const
return dop_[3];
}
Monitor_Pvt Rtklib_Solver::get_monitor_pvt() const
{
return monitor_pvt;
}
bool Rtklib_Solver::get_PVT(const std::map<int, Gnss_Synchro> &gnss_observables_map, bool flag_averaging)
{
std::map<int, Gnss_Synchro>::const_iterator gnss_observables_iter;

View File

@ -55,16 +55,28 @@
#define GNSS_SDR_RTKLIB_SOLVER_H_
#include "beidou_dnav_navigation_message.h"
#include "beidou_dnav_almanac.h"
#include "beidou_dnav_ephemeris.h"
#include "beidou_dnav_iono.h"
#include "beidou_dnav_utc_model.h"
#include "galileo_almanac.h"
#include "galileo_navigation_message.h"
#include "glonass_gnav_navigation_message.h"
#include "galileo_ephemeris.h"
#include "galileo_iono.h"
#include "galileo_utc_model.h"
#include "glonass_gnav_almanac.h"
#include "glonass_gnav_ephemeris.h"
#include "glonass_gnav_utc_model.h"
#include "gnss_synchro.h"
#include "gps_cnav_navigation_message.h"
#include "gps_navigation_message.h"
#include "gps_almanac.h"
#include "gps_cnav_ephemeris.h"
#include "gps_cnav_iono.h"
#include "gps_cnav_utc_model.h"
#include "gps_ephemeris.h"
#include "gps_iono.h"
#include "gps_utc_model.h"
#include "monitor_pvt.h"
#include "pvt_solution.h"
#include "rtklib_rtkpos.h"
#include "rtklib.h"
#include <array>
#include <fstream>
#include <map>
@ -89,12 +101,13 @@ private:
Monitor_Pvt monitor_pvt;
public:
sol_t pvt_sol;
ssat_t pvt_ssat[MAXSAT];
Rtklib_Solver(int nchannels, std::string dump_filename, bool flag_dump_to_file, bool flag_dump_to_mat, const rtk_t& rtk);
~Rtklib_Solver();
bool get_PVT(const std::map<int, Gnss_Synchro>& gnss_observables_map, bool flag_averaging);
sol_t pvt_sol;
ssat_t pvt_ssat[MAXSAT];
double get_hdop() const;
double get_vdop() const;
double get_pdop() const;

View File

@ -30,10 +30,14 @@
*/
#include "channel.h"
#include "acquisition_interface.h"
#include "configuration_interface.h"
#include "gnss_sdr_flags.h"
#include "telemetry_decoder_interface.h"
#include "tracking_interface.h"
#include <glog/logging.h>
#include <cstdint>
#include <utility>
// Constructor
@ -157,16 +161,19 @@ gr::basic_block_sptr Channel::get_left_block()
return nullptr;
}
gr::basic_block_sptr Channel::get_left_block_trk()
{
return trk_->get_left_block();
}
gr::basic_block_sptr Channel::get_left_block_acq()
{
return acq_->get_left_block();
}
gr::basic_block_sptr Channel::get_right_block()
{
return nav_->get_right_block();
@ -201,6 +208,7 @@ void Channel::stop_channel()
<< "Channel stop_channel()";
}
void Channel::start_acquisition()
{
std::lock_guard<std::mutex> lk(mx);

View File

@ -38,9 +38,12 @@
#include "channel_fsm.h"
#include "channel_interface.h"
#include "channel_msg_receiver_cc.h"
#include "gnss_signal.h"
#include "gnss_synchro.h"
#include <gnuradio/block.h>
#include <gnuradio/msg_queue.h>
#include <cstddef>
#include <cstdint>
#include <memory>
#include <mutex>
#include <string>

View File

@ -36,8 +36,10 @@ add_library(channel_libs ${CHANNEL_FSM_SOURCES} ${CHANNEL_FSM_HEADERS})
target_link_libraries(channel_libs
PUBLIC
Gnuradio::runtime
Gnuradio::pmt
core_system_parameters
PRIVATE
Boost::boost
Gflags::gflags
Glog::glog
core_receiver

View File

@ -32,7 +32,7 @@
#include "channel_fsm.h"
#include "control_message_factory.h"
#include <glog/logging.h>
#include <utility>
ChannelFsm::ChannelFsm()
{
@ -57,13 +57,13 @@ bool ChannelFsm::Event_stop_channel()
DLOG(INFO) << "CH = " << channel_ << ". Ev stop channel";
switch (d_state)
{
case 0: //already in stanby
case 0: // already in stanby
break;
case 1: //acquisition
case 1: // acquisition
d_state = 0;
stop_acquisition();
break;
case 2: //tracking
case 2: // tracking
d_state = 0;
stop_tracking();
break;
@ -73,6 +73,7 @@ bool ChannelFsm::Event_stop_channel()
return true;
}
bool ChannelFsm::Event_start_acquisition()
{
std::lock_guard<std::mutex> lk(mx);

View File

@ -33,7 +33,6 @@
#define GNSS_SDR_CHANNEL_FSM_H
#include "acquisition_interface.h"
#include "telemetry_decoder_interface.h"
#include "tracking_interface.h"
#include <gnuradio/msg_queue.h>
#include <cstdint>
@ -55,7 +54,7 @@ public:
void set_queue(gr::msg_queue::sptr queue);
void set_channel(uint32_t channel);
//FSM EVENTS
// FSM EVENTS
bool Event_start_acquisition();
bool Event_valid_acquisition();
bool Event_stop_channel();
@ -79,4 +78,4 @@ private:
std::mutex mx;
};
#endif /*GNSS_SDR_CHANNEL_FSM_H*/
#endif // GNSS_SDR_CHANNEL_FSM_H

View File

@ -30,10 +30,13 @@
#include "channel_msg_receiver_cc.h"
#include <boost/any.hpp>
#include <boost/bind.hpp>
#include <glog/logging.h>
#include <gnuradio/gr_complex.h>
#include <gnuradio/io_signature.h>
#include <cstdint>
#include <utility>
channel_msg_receiver_cc_sptr channel_msg_receiver_make_cc(std::shared_ptr<ChannelFsm> channel_fsm, bool repeat)
@ -42,6 +45,19 @@ channel_msg_receiver_cc_sptr channel_msg_receiver_make_cc(std::shared_ptr<Channe
}
channel_msg_receiver_cc::channel_msg_receiver_cc(std::shared_ptr<ChannelFsm> channel_fsm, bool repeat) : gr::block("channel_msg_receiver_cc", gr::io_signature::make(0, 0, 0), gr::io_signature::make(0, 0, 0))
{
this->message_port_register_in(pmt::mp("events"));
this->set_msg_handler(pmt::mp("events"), boost::bind(&channel_msg_receiver_cc::msg_handler_events, this, _1));
d_channel_fsm = std::move(channel_fsm);
d_repeat = repeat;
}
channel_msg_receiver_cc::~channel_msg_receiver_cc() = default;
void channel_msg_receiver_cc::msg_handler_events(pmt::pmt_t msg)
{
bool result = false;
@ -80,16 +96,3 @@ void channel_msg_receiver_cc::msg_handler_events(pmt::pmt_t msg)
LOG(WARNING) << "msg_handler_telemetry invalid event";
}
}
channel_msg_receiver_cc::channel_msg_receiver_cc(std::shared_ptr<ChannelFsm> channel_fsm, bool repeat) : gr::block("channel_msg_receiver_cc", gr::io_signature::make(0, 0, 0), gr::io_signature::make(0, 0, 0))
{
this->message_port_register_in(pmt::mp("events"));
this->set_msg_handler(pmt::mp("events"), boost::bind(&channel_msg_receiver_cc::msg_handler_events, this, _1));
d_channel_fsm = std::move(channel_fsm);
d_repeat = repeat;
}
channel_msg_receiver_cc::~channel_msg_receiver_cc() = default;

View File

@ -33,6 +33,8 @@
#include "channel_fsm.h"
#include <gnuradio/block.h>
#include <pmt/pmt.h>
#include <memory>
class channel_msg_receiver_cc;

View File

@ -30,6 +30,7 @@
*/
#include "array_signal_conditioner.h"
#include "configuration_interface.h"
#include <glog/logging.h>
#include <utility>

View File

@ -34,14 +34,14 @@
#include "gnss_block_interface.h"
#include <gnuradio/msg_queue.h>
#include <gnuradio/block.h>
#include <cstddef>
#include <memory>
#include <string>
class ConfigurationInterface;
class AcquisitionInterface;
class TrackingInterface;
class TelemetryDecoderInterface;
/*!
* \brief This class wraps blocks to change data_type_adapter, input_filter and resampler

View File

@ -30,6 +30,7 @@
*/
#include "signal_conditioner.h"
#include "configuration_interface.h"
#include <glog/logging.h>
#include <utility>

View File

@ -33,12 +33,12 @@
#define GNSS_SDR_SIGNAL_CONDITIONER_H_
#include "gnss_block_interface.h"
#include <gnuradio/block.h>
#include <cstddef>
#include <memory>
#include <string>
class ConfigurationInterface;
class AcquisitionInterface;
class TrackingInterface;
class TelemetryDecoderInterface;
/*!
* \brief This class wraps blocks to change data_type_adapter, input_filter and resampler

View File

@ -2,8 +2,6 @@
* \file galileo_e5a_dll_pll_tracking.cc
* \brief Adapts a code DLL + carrier PLL
* tracking block to a TrackingInterface for Galileo E5a signals
* \brief Adapts a PCPS acquisition block to an AcquisitionInterface for
* Galileo E5a data and pilot Signals
* \author Marc Sales, 2014. marcsales92(at)gmail.com
* \based on work from:
* <ul>

View File

@ -2,8 +2,6 @@
* \file galileo_e5a_dll_pll_tracking.h
* \brief Adapts a code DLL + carrier PLL
* tracking block to a TrackingInterface for Galileo E5a signals
* \brief Adapts a PCPS acquisition block to an AcquisitionInterface for
* Galileo E5a data and pilot Signals
* \author Marc Sales, 2014. marcsales92(at)gmail.com
* \based on work from:
* <ul>

View File

@ -166,6 +166,7 @@
#endif
#include <glog/logging.h>
#include <exception>
#include <iostream>
#include <sstream>
#include <string>

View File

@ -31,16 +31,6 @@
*/
#include <gnuradio/analog/sig_source_waveform.h>
#include <gnuradio/blocks/file_source.h>
#include <gnuradio/top_block.h>
#include <chrono>
#include <utility>
#ifdef GR_GREATER_38
#include <gnuradio/analog/sig_source.h>
#else
#include <gnuradio/analog/sig_source_c.h>
#endif
#include "fir_filter.h"
#include "galileo_e1_pcps_ambiguous_acquisition.h"
#include "gen_signal_source.h"
@ -50,8 +40,18 @@
#include "in_memory_configuration.h"
#include "signal_generator.h"
#include "signal_generator_c.h"
#include <gnuradio/analog/sig_source_waveform.h>
#include <gnuradio/blocks/file_source.h>
#include <gnuradio/blocks/null_sink.h>
#include <gnuradio/msg_queue.h>
#include <gnuradio/top_block.h>
#include <chrono>
#include <utility>
#ifdef GR_GREATER_38
#include <gnuradio/analog/sig_source.h>
#else
#include <gnuradio/analog/sig_source_c.h>
#endif
// ######## GNURADIO BLOCK MESSAGE RECEVER #########

View File

@ -41,8 +41,18 @@
*/
#include "galileo_e1_pcps_ambiguous_acquisition.h"
#include "gnss_block_factory.h"
#include "gnss_block_interface.h"
#include "gnss_sdr_valve.h"
#include "gnss_signal.h"
#include "gnss_synchro.h"
#include "in_memory_configuration.h"
#include <gnuradio/analog/sig_source_waveform.h>
#include <gnuradio/blocks/file_source.h>
#include <gnuradio/blocks/null_sink.h>
#include <gnuradio/blocks/skiphead.h>
#include <gnuradio/msg_queue.h>
#include <gnuradio/top_block.h>
#include <chrono>
#include <utility>
@ -51,16 +61,6 @@
#else
#include <gnuradio/analog/sig_source_c.h>
#endif
#include "galileo_e1_pcps_ambiguous_acquisition.h"
#include "gnss_block_factory.h"
#include "gnss_block_interface.h"
#include "gnss_sdr_valve.h"
#include "gnss_signal.h"
#include "gnss_synchro.h"
#include "in_memory_configuration.h"
#include <gnuradio/blocks/null_sink.h>
#include <gnuradio/blocks/skiphead.h>
#include <gnuradio/msg_queue.h>
// ######## GNURADIO BLOCK MESSAGE RECEVER #########
class GalileoE1PcpsAmbiguousAcquisitionGSoCTest_msg_rx;

View File

@ -29,16 +29,6 @@
* -------------------------------------------------------------------------
*/
#include <gnuradio/analog/sig_source_waveform.h>
#include <gnuradio/blocks/file_source.h>
#include <gnuradio/top_block.h>
#include <chrono>
#include <utility>
#ifdef GR_GREATER_38
#include <gnuradio/analog/sig_source.h>
#else
#include <gnuradio/analog/sig_source_c.h>
#endif
#include "fir_filter.h"
#include "galileo_e5a_noncoherent_iq_acquisition_caf.h"
#include "gen_signal_source.h"
@ -49,9 +39,18 @@
#include "pass_through.h"
#include "signal_generator.h"
#include "signal_generator_c.h"
#include <gnuradio/analog/sig_source_waveform.h>
#include <gnuradio/blocks/file_source.h>
#include <gnuradio/blocks/null_sink.h>
#include <gnuradio/msg_queue.h>
#include <gnuradio/top_block.h>
#include <chrono>
#include <utility>
#ifdef GR_GREATER_38
#include <gnuradio/analog/sig_source.h>
#else
#include <gnuradio/analog/sig_source_c.h>
#endif
// ######## GNURADIO BLOCK MESSAGE RECEVER #########
class GalileoE5aPcpsAcquisitionGSoC2014GensourceTest_msg_rx;

View File

@ -30,6 +30,7 @@
#include "nmea_printer.h"
#include "rtklib_rtkpos.h"
#include <cstdio>
#include <fstream>
#include <string>

View File

@ -30,6 +30,7 @@
*/
#include "front_end_cal.h"
#include "concurrent_map.h"
#include "gnss_sdr_supl_client.h"
#include "gps_almanac.h"
#include "gps_cnav_ephemeris.h"

View File

@ -32,7 +32,6 @@
#ifndef GNSS_SDR_FRONT_END_CAL_H_
#define GNSS_SDR_FRONT_END_CAL_H_
#include "concurrent_map.h"
#include "file_configuration.h"
#include <armadillo>

View File

@ -30,7 +30,7 @@
*/
#include "galileo_ephemeris.h"
#include "galileo_ephemeris.h" // IWYU pragma: keep
#include "galileo_iono.h"
#include "galileo_utc_model.h"
#include "gps_ephemeris.h"
@ -45,6 +45,7 @@
#include <gpstk/Rinex3NavData.hpp>
#include <gpstk/Rinex3NavHeader.hpp>
#include <gpstk/Rinex3NavStream.hpp>
#include <cstddef> // for size_t
#include <cstdlib>
#include <iostream>