1
0
mirror of https://github.com/gnss-sdr/gnss-sdr synced 2024-11-10 03:50:04 +00:00

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

This commit is contained in:
Carles Fernandez 2019-03-10 20:09:47 +01:00
commit d3791fa449
No known key found for this signature in database
GPG Key ID: 4C583C52B0C3877D
5 changed files with 55 additions and 59 deletions

View File

@ -145,7 +145,7 @@ if(NOT ${THIS_IS_A_RELEASE})
PURPOSE "Manage version control, get MINOR_VERSION name for version number."
TYPE REQUIRED
)
if(Git_FOUND)
if(GIT_FOUND)
# was this info set in the CMake commandline?
if(NOT GIT_BRANCH)
# no: try to find it
@ -154,7 +154,6 @@ if(NOT ${THIS_IS_A_RELEASE})
WORKING_DIRECTORY ${CMAKE_SOURCE_DIR}
OUTPUT_VARIABLE GIT_BRANCH
OUTPUT_STRIP_TRAILING_WHITESPACE
OUTPUT_QUIET ERROR_QUIET
)
endif(NOT GIT_BRANCH)
# was this info set in the CMake commandline?
@ -165,7 +164,6 @@ if(NOT ${THIS_IS_A_RELEASE})
WORKING_DIRECTORY ${CMAKE_SOURCE_DIR}
OUTPUT_VARIABLE GIT_COMMIT_HASH
OUTPUT_STRIP_TRAILING_WHITESPACE
OUTPUT_QUIET ERROR_QUIET
)
endif(NOT GIT_COMMIT_HASH)
endif()
@ -2241,4 +2239,4 @@ else()
ENABLED_FEATURES DISABLED_FEATURES
)
endif()
message(STATUS "GNSS-SDR is ready to be built.")
message(STATUS "GNSS-SDR v${VERSION} is ready to be built.")

View File

@ -96,13 +96,13 @@ public:
*/
~Rinex_Printer();
std::fstream obsFile; //<! Output file stream for RINEX observation file
std::fstream navFile; //<! Output file stream for RINEX navigation data file
std::fstream sbsFile; //<! Output file stream for RINEX SBAS raw data file
std::fstream navGalFile; //<! Output file stream for RINEX Galileo navigation data file
std::fstream navGloFile; //<! Output file stream for RINEX GLONASS navigation data file
std::fstream navBdsFile; //<! Output file stream for RINEX Galileo navigation data file
std::fstream navMixFile; //<! Output file stream for RINEX Mixed navigation data file
std::fstream obsFile; //!< Output file stream for RINEX observation file
std::fstream navFile; //!< Output file stream for RINEX navigation data file
std::fstream sbsFile; //!< Output file stream for RINEX SBAS raw data file
std::fstream navGalFile; //!< Output file stream for RINEX Galileo navigation data file
std::fstream navGloFile; //!< Output file stream for RINEX GLONASS navigation data file
std::fstream navBdsFile; //!< Output file stream for RINEX Galileo navigation data file
std::fstream navMixFile; //!< Output file stream for RINEX Mixed navigation data file
/*!
* \brief Generates the GPS L1 C/A Navigation Data header
@ -412,10 +412,10 @@ public:
void update_obs_header(std::fstream& out, const Beidou_Dnav_Utc_Model& utc_model);
std::map<std::string, std::string> satelliteSystem; //<! GPS, GLONASS, SBAS payload, Galileo or Beidou
std::map<std::string, std::string> observationType; //<! PSEUDORANGE, CARRIER_PHASE, DOPPLER, SIGNAL_STRENGTH
std::map<std::string, std::string> observationCode; //<! GNSS observation descriptors
std::string stringVersion; //<! RINEX version (2.10/2.11 or 3.01/3.02)
std::map<std::string, std::string> satelliteSystem; //!< GPS, GLONASS, SBAS payload, Galileo or Beidou
std::map<std::string, std::string> observationType; //!< PSEUDORANGE, CARRIER_PHASE, DOPPLER, SIGNAL_STRENGTH
std::map<std::string, std::string> observationCode; //!< GNSS observation descriptors
std::string stringVersion; //!< RINEX version (2.10/2.11 or 3.01/3.02)
std::string navfilename;
std::string obsfilename;

View File

@ -58,7 +58,7 @@
/*!
* This class implements the generation and reading of some Message Types
* \brief This class implements the generation and reading of some Message Types
* defined in the RTCM 3.2 Standard, plus some utilities to handle messages.
*
* Generation of the following Message Types:
@ -89,7 +89,7 @@
class Rtcm
{
public:
Rtcm(uint16_t port = 2101); //<! Default constructor that sets TCP port of the RTCM message server and RTCM Station ID. 2101 is the standard RTCM port according to the Internet Assigned Numbers Authority (IANA). See https://www.iana.org/assignments/service-names-port-numbers/service-names-port-numbers.xml
Rtcm(uint16_t port = 2101); //!< Default constructor that sets TCP port of the RTCM message server and RTCM Station ID. 2101 is the standard RTCM port according to the Internet Assigned Numbers Authority (IANA). See https://www.iana.org/assignments/service-names-port-numbers/service-names-port-numbers.xml
~Rtcm();
/*!
@ -127,7 +127,7 @@ public:
*/
std::string print_MT1006(uint32_t ref_id, double ecef_x, double ecef_y, double ecef_z, bool gps, bool glonass, bool galileo, bool non_physical, bool single_oscillator, uint32_t quarter_cycle_indicator, double height);
std::string print_MT1005_test(); //<! For testing purposes
std::string print_MT1005_test(); //!< For testing purposes
/*!
* \brief Prints message type 1008 (Antenna Descriptor & Serial Number)
@ -332,9 +332,9 @@ public:
bool divergence_free,
bool more_messages);
uint32_t lock_time(const Gps_Ephemeris& eph, double obs_time, const Gnss_Synchro& gnss_synchro); //<! Returns the time period in which GPS L1 signals have been continually tracked.
uint32_t lock_time(const Gps_CNAV_Ephemeris& eph, double obs_time, const Gnss_Synchro& gnss_synchro); //<! Returns the time period in which GPS L2 signals have been continually tracked.
uint32_t lock_time(const Galileo_Ephemeris& eph, double obs_time, const Gnss_Synchro& gnss_synchro); //<! Returns the time period in which Galileo signals have been continually tracked.
uint32_t lock_time(const Gps_Ephemeris& eph, double obs_time, const Gnss_Synchro& gnss_synchro); //!< Returns the time period in which GPS L1 signals have been continually tracked.
uint32_t lock_time(const Gps_CNAV_Ephemeris& eph, double obs_time, const Gnss_Synchro& gnss_synchro); //!< Returns the time period in which GPS L2 signals have been continually tracked.
uint32_t lock_time(const Galileo_Ephemeris& eph, double obs_time, const Gnss_Synchro& gnss_synchro); //!< Returns the time period in which Galileo signals have been continually tracked.
/*!
* \brief Locks time period in which GLONASS signals have been continually tracked.
* \note Code added as part of GSoC 2017 program
@ -345,34 +345,26 @@ public:
*/
uint32_t lock_time(const Glonass_Gnav_Ephemeris& eph, double obs_time, const Gnss_Synchro& gnss_synchro);
std::string bin_to_hex(const std::string& s) const; //<! Returns a string of hexadecimal symbols from a string of binary symbols
std::string hex_to_bin(const std::string& s) const; //<! Returns a string of binary symbols from a string of hexadecimal symbols
std::string bin_to_hex(const std::string& s) const; //!< Returns a string of hexadecimal symbols from a string of binary symbols
std::string hex_to_bin(const std::string& s) const; //!< Returns a string of binary symbols from a string of hexadecimal symbols
std::string bin_to_binary_data(const std::string& s) const; //<! Returns a string of binary data from a string of binary symbols
std::string binary_data_to_bin(const std::string& s) const; //<! Returns a string of binary symbols from a string of binary data
std::string bin_to_binary_data(const std::string& s) const; //!< Returns a string of binary data from a string of binary symbols
std::string binary_data_to_bin(const std::string& s) const; //!< Returns a string of binary symbols from a string of binary data
uint32_t bin_to_uint(const std::string& s) const; //<! Returns an uint32_t from a string of binary symbols
uint32_t bin_to_uint(const std::string& s) const; //!< Returns an uint32_t from a string of binary symbols
int32_t bin_to_int(const std::string& s) const;
double bin_to_double(const std::string& s) const; //<! Returns double from a string of binary symbols
/*!
* \brief Locks time period in which GLONASS signals have been continually tracked.
* \note Code added as part of GSoC 2017 program
* \param eph GLONASS GNAV Broadcast Ephemeris
* \param obs_time Time of observation at the moment of printing
* \param observables Set of observables as defined by the platform
* \return //<! Returns a int64_t from a string of binary symbols
*/
double bin_to_double(const std::string& s) const; //!< Returns double from a string of binary symbols
int32_t bin_to_sint(const std::string& s) const;
uint64_t hex_to_uint(const std::string& s) const; //<! Returns an uint64_t from a string of hexadecimal symbols
int64_t hex_to_int(const std::string& s) const; //<! Returns a int64_t from a string of hexadecimal symbols
uint64_t hex_to_uint(const std::string& s) const; //!< Returns an uint64_t from a string of hexadecimal symbols
int64_t hex_to_int(const std::string& s) const; //!< Returns a int64_t from a string of hexadecimal symbols
bool check_CRC(const std::string& message) const; //<! Checks that the CRC of a RTCM package is correct
bool check_CRC(const std::string& message) const; //!< Checks that the CRC of a RTCM package is correct
void run_server(); //<! Starts running the server
void stop_server(); //<! Stops the server
void run_server(); //!< Starts running the server
void stop_server(); //!< Stops the server
void send_message(const std::string& msg); //<! Sends a message through the server to all connected clients
bool is_server_running() const; //<! Returns true if the server is running, false otherwise
void send_message(const std::string& msg); //!< Sends a message through the server to all connected clients
bool is_server_running() const; //!< Returns true if the server is running, false otherwise
private:
//

View File

@ -67,6 +67,7 @@ public:
bool Print_Rtcm_MT1002(const Gps_Ephemeris& gps_eph, double obs_time, const std::map<int32_t, Gnss_Synchro>& observables);
bool Print_Rtcm_MT1003(const Gps_Ephemeris& gps_eph, const Gps_CNAV_Ephemeris& cnav_eph, double obs_time, const std::map<int32_t, Gnss_Synchro>& observables);
bool Print_Rtcm_MT1004(const Gps_Ephemeris& gps_eph, const Gps_CNAV_Ephemeris& cnav_eph, double obs_time, const std::map<int32_t, Gnss_Synchro>& observables);
/*!
* \brief Prints L1-Only GLONASS RTK Observables
* \details This GLONASS message type is not generally used or supported; type 1012 is to be preferred.
@ -77,6 +78,7 @@ public:
* \return true or false upon operation success
*/
bool Print_Rtcm_MT1009(const Glonass_Gnav_Ephemeris& glonass_gnav_eph, double obs_time, const std::map<int32_t, Gnss_Synchro>& observables);
/*!
* \brief Prints Extended L1-Only GLONASS RTK Observables
* \details This GLONASS message type is used when only L1 data is present and bandwidth is very tight, often 1012 is used in such cases.
@ -87,6 +89,7 @@ public:
* \return true or false upon operation success
*/
bool Print_Rtcm_MT1010(const Glonass_Gnav_Ephemeris& glonass_gnav_eph, double obs_time, const std::map<int32_t, Gnss_Synchro>& observables);
/*!
* \brief Prints L1&L2 GLONASS RTK Observables
* \details This GLONASS message type is not generally used or supported; type 1012 is to be preferred
@ -98,6 +101,7 @@ public:
* \return true or false upon operation success
*/
bool Print_Rtcm_MT1011(const Glonass_Gnav_Ephemeris& glonass_gnav_ephL1, const Glonass_Gnav_Ephemeris& glonass_gnav_ephL2, double obs_time, const std::map<int32_t, Gnss_Synchro>& observables);
/*!
* \brief Prints Extended L1&L2 GLONASS RTK Observables
* \details This GLONASS message type is the most common observational message type, with L1/L2/SNR content. This is one of the most common messages found.
@ -110,8 +114,9 @@ public:
*/
bool Print_Rtcm_MT1012(const Glonass_Gnav_Ephemeris& glonass_gnav_ephL1, const Glonass_Gnav_Ephemeris& glonass_gnav_ephL2, double obs_time, const std::map<int32_t, Gnss_Synchro>& observables);
bool Print_Rtcm_MT1019(const Gps_Ephemeris& gps_eph); //<! GPS Ephemeris, should be broadcast in the event that the IODC does not match the IODE, and every 2 minutes.
bool Print_Rtcm_MT1045(const Galileo_Ephemeris& gal_eph); //<! Galileo Ephemeris, should be broadcast every 2 minutes
bool Print_Rtcm_MT1019(const Gps_Ephemeris& gps_eph); //!< GPS Ephemeris, should be broadcast in the event that the IODC does not match the IODE, and every 2 minutes.
bool Print_Rtcm_MT1045(const Galileo_Ephemeris& gal_eph); //!< Galileo Ephemeris, should be broadcast every 2 minutes
/*!
* \brief Prints GLONASS GNAV Ephemeris
* \details This GLONASS message should be broadcast every 2 minutes
@ -135,10 +140,11 @@ public:
bool divergence_free,
bool more_messages);
std::string print_MT1005_test(); //<! For testing purposes
std::string print_MT1005_test(); //!< For testing purposes
uint32_t lock_time(const Gps_Ephemeris& eph, double obs_time, const Gnss_Synchro& gnss_synchro);
uint32_t lock_time(const Gps_CNAV_Ephemeris& eph, double obs_time, const Gnss_Synchro& gnss_synchro);
uint32_t lock_time(const Galileo_Ephemeris& eph, double obs_time, const Gnss_Synchro& gnss_synchro);
/*!
* \brief Locks time for logging given GLONASS GNAV Broadcast Ephemeris
* \note Code added as part of GSoC 2017 program

View File

@ -34,29 +34,29 @@
#include <gflags/gflags.h>
DECLARE_string(c); //<! Path to the configuration file.
DECLARE_string(config_file); //<! Path to the configuration file.
DECLARE_string(c); //!< Path to the configuration file.
DECLARE_string(config_file); //!< Path to the configuration file.
DECLARE_string(log_dir); //<! Path to the folder in which logging will be stored.
DECLARE_string(log_dir); //!< Path to the folder in which logging will be stored.
// Declare flags for signal sources
DECLARE_string(s); //<! Path to the file containing the signal samples.
DECLARE_string(signal_source); //<! Path to the file containing the signal samples.
DECLARE_string(s); //!< Path to the file containing the signal samples.
DECLARE_string(signal_source); //!< Path to the file containing the signal samples.
// Declare flags for acquisition blocks
DECLARE_int32(doppler_max); //<! If defined, maximum Doppler value in the search grid, in Hz (overrides the configuration file).
DECLARE_int32(doppler_step); //<! If defined, sets the frequency step in the search grid, in Hz, in Hz (overrides the configuration file).
DECLARE_int32(doppler_max); //!< If defined, maximum Doppler value in the search grid, in Hz (overrides the configuration file).
DECLARE_int32(doppler_step); //!< If defined, sets the frequency step in the search grid, in Hz, in Hz (overrides the configuration file).
// Declare flags for tracking blocks
DECLARE_int32(cn0_samples); //<! Number of correlator outputs used for CN0 estimation.
DECLARE_int32(cn0_min); //<! Minimum valid CN0 (in dB-Hz).
DECLARE_int32(max_lock_fail); //<! Maximum number of lock failures before dropping a satellite.
DECLARE_double(carrier_lock_th); //<! Carrier lock threshold (in rad).
DECLARE_double(dll_bw_hz); //<! Bandwidth of the DLL low pass filter, in Hz (overrides the configuration file).
DECLARE_double(pll_bw_hz); //<! Bandwidth of the PLL low pass filter, in Hz (overrides the configuration file).
DECLARE_int32(cn0_samples); //!< Number of correlator outputs used for CN0 estimation.
DECLARE_int32(cn0_min); //!< Minimum valid CN0 (in dB-Hz).
DECLARE_int32(max_lock_fail); //!< Maximum number of lock failures before dropping a satellite.
DECLARE_double(carrier_lock_th); //!< Carrier lock threshold (in rad).
DECLARE_double(dll_bw_hz); //!< Bandwidth of the DLL low pass filter, in Hz (overrides the configuration file).
DECLARE_double(pll_bw_hz); //!< Bandwidth of the PLL low pass filter, in Hz (overrides the configuration file).
// Declare flags for PVT
DECLARE_string(RINEX_version); //<! If defined, specifies the RINEX version (2.11 or 3.02). Overrides the configuration file.
DECLARE_string(RINEX_version); //!< If defined, specifies the RINEX version (2.11 or 3.02). Overrides the configuration file.
#endif