![]() |
GNSS-SDR 0.0.21
An Open Source GNSS Software Defined Receiver
|
This class implements the generation and reading of some Message Types defined in the RTCM 3.2 Standard, plus some utilities to handle messages. More...
#include <rtcm.h>
Public Member Functions | |
| 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. | |
| std::string | print_MT1001 (const Gps_Ephemeris &gps_eph, double obs_time, const std::map< int32_t, Gnss_Synchro > &observables, uint16_t station_id) |
| Prints message type 1001 (L1-Only GPS RTK Observables). | |
| std::string | print_MT1002 (const Gps_Ephemeris &gps_eph, double obs_time, const std::map< int32_t, Gnss_Synchro > &observables, uint16_t station_id) |
| Prints message type 1002 (Extended L1-Only GPS RTK Observables). | |
| std::string | print_MT1003 (const Gps_Ephemeris &ephL1, const Gps_CNAV_Ephemeris &ephL2, double obs_time, const std::map< int32_t, Gnss_Synchro > &observables, uint16_t station_id) |
| Prints message type 1003 (L1 & L2 GPS RTK Observables). | |
| std::string | print_MT1004 (const Gps_Ephemeris &ephL1, const Gps_CNAV_Ephemeris &ephL2, double obs_time, const std::map< int32_t, Gnss_Synchro > &observables, uint16_t station_id) |
| Prints message type 1004 (Extended L1 & L2 GPS RTK Observables). | |
| std::string | print_MT1005 (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) |
| Prints message type 1005 (Stationary Antenna Reference Point). | |
| int32_t | read_MT1005 (const std::string &message, uint32_t &ref_id, double &ecef_x, double &ecef_y, double &ecef_z, bool &gps, bool &glonass, bool &galileo) |
| Verifies and reads messages of type 1005 (Stationary Antenna Reference Point). Returns 1 if anything goes wrong, 0 otherwise. | |
| 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) |
| Prints message type 1006 (Stationary Antenna Reference Point, with Height Information). | |
| std::string | print_MT1005_test () |
| For testing purposes. | |
| std::string | print_MT1008 (uint32_t ref_id, const std::string &antenna_descriptor, uint32_t antenna_setup_id, const std::string &antenna_serial_number) |
| Prints message type 1008 (Antenna Descriptor & Serial Number). | |
| std::string | print_MT1009 (const Glonass_Gnav_Ephemeris &glonass_gnav_eph, double obs_time, const std::map< int32_t, Gnss_Synchro > &observables, uint16_t station_id) |
| Prints L1-Only GLONASS RTK Observables. | |
| std::string | print_MT1010 (const Glonass_Gnav_Ephemeris &glonass_gnav_eph, double obs_time, const std::map< int32_t, Gnss_Synchro > &observables, uint16_t station_id) |
| Prints Extended L1-Only GLONASS RTK Observables. | |
| std::string | print_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, uint16_t station_id) |
| Prints L1&L2 GLONASS RTK Observables. | |
| std::string | print_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, uint16_t station_id) |
| Prints Extended L1&L2 GLONASS RTK Observables. | |
| std::string | print_MT1019 (const Gps_Ephemeris &gps_eph) |
| Prints message type 1019 (GPS Ephemeris), should be broadcast in the event that the IODC does not match the IODE, and every 2 minutes. | |
| int32_t | read_MT1019 (const std::string &message, Gps_Ephemeris &gps_eph) const |
| Verifies and reads messages of type 1019 (GPS Ephemeris). Returns 1 if anything goes wrong, 0 otherwise. | |
| std::string | print_MT1020 (const Glonass_Gnav_Ephemeris &glonass_gnav_eph, const Glonass_Gnav_Utc_Model &glonass_gnav_utc_model) |
| Prints message type 1020 (GLONASS Ephemeris). | |
| int32_t | read_MT1020 (const std::string &message, Glonass_Gnav_Ephemeris &glonass_gnav_eph, Glonass_Gnav_Utc_Model &glonass_gnav_utc_model) const |
| Verifies and reads messages of type 1020 (GLONASS Ephemeris). | |
| std::string | print_MT1029 (uint32_t ref_id, const Gps_Ephemeris &gps_eph, double obs_time, const std::string &message) |
| Prints message type 1029 (Unicode Text String). | |
| std::string | print_MT1045 (const Galileo_Ephemeris &gal_eph) |
| Prints message type 1045 (Galileo Ephemeris), should be broadcast every 2 minutes. | |
| int32_t | read_MT1045 (const std::string &message, Galileo_Ephemeris &gal_eph) const |
| Verifies and reads messages of type 1045 (Galileo Ephemeris). Returns 1 if anything goes wrong, 0 otherwise. | |
| std::string | print_MSM_1 (const Gps_Ephemeris &gps_eph, const Gps_CNAV_Ephemeris &gps_cnav_eph, const Galileo_Ephemeris &gal_eph, const Glonass_Gnav_Ephemeris &glo_gnav_eph, double obs_time, const std::map< int32_t, Gnss_Synchro > &observables, uint32_t ref_id, uint32_t clock_steering_indicator, uint32_t external_clock_indicator, int32_t smooth_int, bool divergence_free, bool more_messages) |
| Prints messages of type MSM1 (Compact GNSS observables). | |
| std::string | print_MSM_2 (const Gps_Ephemeris &gps_eph, const Gps_CNAV_Ephemeris &gps_cnav_eph, const Galileo_Ephemeris &gal_eph, const Glonass_Gnav_Ephemeris &glo_gnav_eph, double obs_time, const std::map< int32_t, Gnss_Synchro > &observables, uint32_t ref_id, uint32_t clock_steering_indicator, uint32_t external_clock_indicator, int32_t smooth_int, bool divergence_free, bool more_messages) |
| Prints messages of type MSM2 (Compact GNSS phaseranges). | |
| std::string | print_MSM_3 (const Gps_Ephemeris &gps_eph, const Gps_CNAV_Ephemeris &gps_cnav_eph, const Galileo_Ephemeris &gal_eph, const Glonass_Gnav_Ephemeris &glo_gnav_eph, double obs_time, const std::map< int32_t, Gnss_Synchro > &observables, uint32_t ref_id, uint32_t clock_steering_indicator, uint32_t external_clock_indicator, int32_t smooth_int, bool divergence_free, bool more_messages) |
| Prints messages of type MSM3 (Compact GNSS pseudoranges and phaseranges). | |
| std::string | print_MSM_4 (const Gps_Ephemeris &gps_eph, const Gps_CNAV_Ephemeris &gps_cnav_eph, const Galileo_Ephemeris &gal_eph, const Glonass_Gnav_Ephemeris &glo_gnav_eph, double obs_time, const std::map< int32_t, Gnss_Synchro > &observables, uint32_t ref_id, uint32_t clock_steering_indicator, uint32_t external_clock_indicator, int32_t smooth_int, bool divergence_free, bool more_messages) |
| Prints messages of type MSM4 (Full GNSS pseudoranges and phaseranges plus CNR). | |
| std::string | print_MSM_5 (const Gps_Ephemeris &gps_eph, const Gps_CNAV_Ephemeris &gps_cnav_eph, const Galileo_Ephemeris &gal_eph, const Glonass_Gnav_Ephemeris &glo_gnav_eph, double obs_time, const std::map< int32_t, Gnss_Synchro > &observables, uint32_t ref_id, uint32_t clock_steering_indicator, uint32_t external_clock_indicator, int32_t smooth_int, bool divergence_free, bool more_messages) |
| Prints messages of type MSM5 (Full GNSS pseudoranges, phaseranges, phaserange rate and CNR). | |
| std::string | print_MSM_6 (const Gps_Ephemeris &gps_eph, const Gps_CNAV_Ephemeris &gps_cnav_eph, const Galileo_Ephemeris &gal_eph, const Glonass_Gnav_Ephemeris &glo_gnav_eph, double obs_time, const std::map< int32_t, Gnss_Synchro > &observables, uint32_t ref_id, uint32_t clock_steering_indicator, uint32_t external_clock_indicator, int32_t smooth_int, bool divergence_free, bool more_messages) |
| Prints messages of type MSM6 (Full GNSS pseudoranges and phaseranges plus CNR, high resolution). | |
| std::string | print_MSM_7 (const Gps_Ephemeris &gps_eph, const Gps_CNAV_Ephemeris &gps_cnav_eph, const Galileo_Ephemeris &gal_eph, const Glonass_Gnav_Ephemeris &glo_gnav_eph, double obs_time, const std::map< int32_t, Gnss_Synchro > &observables, uint32_t ref_id, uint32_t clock_steering_indicator, uint32_t external_clock_indicator, int32_t smooth_int, bool divergence_free, bool more_messages) |
| Prints messages of type MSM7 (Full GNSS pseudoranges, phaseranges, phaserange rate and CNR, high resolution). | |
| std::vector< std::string > | print_IGM01 (const Galileo_HAS_data &has_data) |
| Prints messages of type IGM01 (SSR Orbit Correction). | |
| std::vector< std::string > | print_IGM02 (const Galileo_HAS_data &has_data) |
| Prints messages of type IGM02 (SSR Clock Correction). | |
| std::vector< std::string > | print_IGM03 (const Galileo_HAS_data &has_data) |
| Prints messages of type IGM03 (SSR Combined Orbit and Clock Correction). | |
| std::vector< std::string > | print_IGM05 (const Galileo_HAS_data &has_data) |
| Prints messages of type IGM05 (SSR Bias Correction). | |
| 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 Glonass_Gnav_Ephemeris &eph, double obs_time, const Gnss_Synchro &gnss_synchro) |
| Locks time period in which GLONASS signals have been continually tracked. | |
| 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. | |
| 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. | |
| 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. | |
| 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 | 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. | |
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: 1001, 1002, 1003, 1004, 1005, 1006, 1008, 1019, 1020, 1029, 1045
Decoding of the following Message Types: 1019, 1045
Generation of the following Multiple Signal Messages: MSM1 (message types 1071, 1091) MSM2 (message types 1072, 1092) MSM3 (message types 1073, 1093) MSM4 (message types 1074, 1094) MSM5 (message types 1075, 1095) MSM6 (message types 1076, 1096) MSM7 (message types 1077, 1097)
RTCM 3 message format (size in bits): +-------—+-----—+--------—+-----------------—+-------—+ | preamble | 000000 | length | data message | parity | +-------—+-----—+--------—+-----------------—+-------—+ |<– 8 --->|<- 6 -->|<– 10 --->|<— length x 8 --->|<– 24 -->| +-------—+-----—+--------—+-----------------—+-------—+
(C) Carles Fernandez-Prades, 2015. cfernandez(at)cttc.es
|
explicit |
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.
References Rtcm().
Referenced by Rtcm().
| std::string Rtcm::bin_to_binary_data | ( | const std::string & | s | ) | const |
Returns a string of binary data from a string of binary symbols.
| double Rtcm::bin_to_double | ( | const std::string & | s | ) | const |
Returns double from a string of binary symbols.
| std::string Rtcm::bin_to_hex | ( | const std::string & | s | ) | const |
Returns a string of hexadecimal symbols from a string of binary symbols.
| uint32_t Rtcm::bin_to_uint | ( | const std::string & | s | ) | const |
Returns an uint32_t from a string of binary symbols.
| std::string Rtcm::binary_data_to_bin | ( | const std::string & | s | ) | const |
Returns a string of binary symbols from a string of binary data.
| bool Rtcm::check_CRC | ( | const std::string & | message | ) | const |
Checks that the CRC of a RTCM package is correct.
| std::string Rtcm::hex_to_bin | ( | const std::string & | s | ) | const |
Returns a string of binary symbols from a string of hexadecimal symbols.
| int64_t Rtcm::hex_to_int | ( | const std::string & | s | ) | const |
Returns a int64_t from a string of hexadecimal symbols.
| uint64_t Rtcm::hex_to_uint | ( | const std::string & | s | ) | const |
Returns an uint64_t from a string of hexadecimal symbols.
| bool Rtcm::is_server_running | ( | ) | const |
Returns true if the server is running, false otherwise.
| uint32_t Rtcm::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 Rtcm::lock_time | ( | const Glonass_Gnav_Ephemeris & | eph, |
| double | obs_time, | ||
| const Gnss_Synchro & | gnss_synchro ) |
Locks time period in which GLONASS signals have been continually tracked.
| eph | GLONASS GNAV Broadcast Ephemeris |
| obs_time | Time of observation at the moment of printing |
| observables | Set of observables as defined by the platform |
| uint32_t Rtcm::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 Rtcm::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.
| std::vector< std::string > Rtcm::print_IGM01 | ( | const Galileo_HAS_data & | has_data | ) |
Prints messages of type IGM01 (SSR Orbit Correction).
| std::vector< std::string > Rtcm::print_IGM02 | ( | const Galileo_HAS_data & | has_data | ) |
Prints messages of type IGM02 (SSR Clock Correction).
| std::vector< std::string > Rtcm::print_IGM03 | ( | const Galileo_HAS_data & | has_data | ) |
Prints messages of type IGM03 (SSR Combined Orbit and Clock Correction).
| std::vector< std::string > Rtcm::print_IGM05 | ( | const Galileo_HAS_data & | has_data | ) |
Prints messages of type IGM05 (SSR Bias Correction).
| std::string Rtcm::print_MSM_1 | ( | const Gps_Ephemeris & | gps_eph, |
| const Gps_CNAV_Ephemeris & | gps_cnav_eph, | ||
| const Galileo_Ephemeris & | gal_eph, | ||
| const Glonass_Gnav_Ephemeris & | glo_gnav_eph, | ||
| double | obs_time, | ||
| const std::map< int32_t, Gnss_Synchro > & | observables, | ||
| uint32_t | ref_id, | ||
| uint32_t | clock_steering_indicator, | ||
| uint32_t | external_clock_indicator, | ||
| int32_t | smooth_int, | ||
| bool | divergence_free, | ||
| bool | more_messages ) |
Prints messages of type MSM1 (Compact GNSS observables).
| std::string Rtcm::print_MSM_2 | ( | const Gps_Ephemeris & | gps_eph, |
| const Gps_CNAV_Ephemeris & | gps_cnav_eph, | ||
| const Galileo_Ephemeris & | gal_eph, | ||
| const Glonass_Gnav_Ephemeris & | glo_gnav_eph, | ||
| double | obs_time, | ||
| const std::map< int32_t, Gnss_Synchro > & | observables, | ||
| uint32_t | ref_id, | ||
| uint32_t | clock_steering_indicator, | ||
| uint32_t | external_clock_indicator, | ||
| int32_t | smooth_int, | ||
| bool | divergence_free, | ||
| bool | more_messages ) |
Prints messages of type MSM2 (Compact GNSS phaseranges).
| std::string Rtcm::print_MSM_3 | ( | const Gps_Ephemeris & | gps_eph, |
| const Gps_CNAV_Ephemeris & | gps_cnav_eph, | ||
| const Galileo_Ephemeris & | gal_eph, | ||
| const Glonass_Gnav_Ephemeris & | glo_gnav_eph, | ||
| double | obs_time, | ||
| const std::map< int32_t, Gnss_Synchro > & | observables, | ||
| uint32_t | ref_id, | ||
| uint32_t | clock_steering_indicator, | ||
| uint32_t | external_clock_indicator, | ||
| int32_t | smooth_int, | ||
| bool | divergence_free, | ||
| bool | more_messages ) |
Prints messages of type MSM3 (Compact GNSS pseudoranges and phaseranges).
| std::string Rtcm::print_MSM_4 | ( | const Gps_Ephemeris & | gps_eph, |
| const Gps_CNAV_Ephemeris & | gps_cnav_eph, | ||
| const Galileo_Ephemeris & | gal_eph, | ||
| const Glonass_Gnav_Ephemeris & | glo_gnav_eph, | ||
| double | obs_time, | ||
| const std::map< int32_t, Gnss_Synchro > & | observables, | ||
| uint32_t | ref_id, | ||
| uint32_t | clock_steering_indicator, | ||
| uint32_t | external_clock_indicator, | ||
| int32_t | smooth_int, | ||
| bool | divergence_free, | ||
| bool | more_messages ) |
Prints messages of type MSM4 (Full GNSS pseudoranges and phaseranges plus CNR).
| std::string Rtcm::print_MSM_5 | ( | const Gps_Ephemeris & | gps_eph, |
| const Gps_CNAV_Ephemeris & | gps_cnav_eph, | ||
| const Galileo_Ephemeris & | gal_eph, | ||
| const Glonass_Gnav_Ephemeris & | glo_gnav_eph, | ||
| double | obs_time, | ||
| const std::map< int32_t, Gnss_Synchro > & | observables, | ||
| uint32_t | ref_id, | ||
| uint32_t | clock_steering_indicator, | ||
| uint32_t | external_clock_indicator, | ||
| int32_t | smooth_int, | ||
| bool | divergence_free, | ||
| bool | more_messages ) |
Prints messages of type MSM5 (Full GNSS pseudoranges, phaseranges, phaserange rate and CNR).
| std::string Rtcm::print_MSM_6 | ( | const Gps_Ephemeris & | gps_eph, |
| const Gps_CNAV_Ephemeris & | gps_cnav_eph, | ||
| const Galileo_Ephemeris & | gal_eph, | ||
| const Glonass_Gnav_Ephemeris & | glo_gnav_eph, | ||
| double | obs_time, | ||
| const std::map< int32_t, Gnss_Synchro > & | observables, | ||
| uint32_t | ref_id, | ||
| uint32_t | clock_steering_indicator, | ||
| uint32_t | external_clock_indicator, | ||
| int32_t | smooth_int, | ||
| bool | divergence_free, | ||
| bool | more_messages ) |
Prints messages of type MSM6 (Full GNSS pseudoranges and phaseranges plus CNR, high resolution).
| std::string Rtcm::print_MSM_7 | ( | const Gps_Ephemeris & | gps_eph, |
| const Gps_CNAV_Ephemeris & | gps_cnav_eph, | ||
| const Galileo_Ephemeris & | gal_eph, | ||
| const Glonass_Gnav_Ephemeris & | glo_gnav_eph, | ||
| double | obs_time, | ||
| const std::map< int32_t, Gnss_Synchro > & | observables, | ||
| uint32_t | ref_id, | ||
| uint32_t | clock_steering_indicator, | ||
| uint32_t | external_clock_indicator, | ||
| int32_t | smooth_int, | ||
| bool | divergence_free, | ||
| bool | more_messages ) |
Prints messages of type MSM7 (Full GNSS pseudoranges, phaseranges, phaserange rate and CNR, high resolution).
| std::string Rtcm::print_MT1001 | ( | const Gps_Ephemeris & | gps_eph, |
| double | obs_time, | ||
| const std::map< int32_t, Gnss_Synchro > & | observables, | ||
| uint16_t | station_id ) |
Prints message type 1001 (L1-Only GPS RTK Observables).
| std::string Rtcm::print_MT1002 | ( | const Gps_Ephemeris & | gps_eph, |
| double | obs_time, | ||
| const std::map< int32_t, Gnss_Synchro > & | observables, | ||
| uint16_t | station_id ) |
Prints message type 1002 (Extended L1-Only GPS RTK Observables).
| std::string Rtcm::print_MT1003 | ( | const Gps_Ephemeris & | ephL1, |
| const Gps_CNAV_Ephemeris & | ephL2, | ||
| double | obs_time, | ||
| const std::map< int32_t, Gnss_Synchro > & | observables, | ||
| uint16_t | station_id ) |
Prints message type 1003 (L1 & L2 GPS RTK Observables).
| std::string Rtcm::print_MT1004 | ( | const Gps_Ephemeris & | ephL1, |
| const Gps_CNAV_Ephemeris & | ephL2, | ||
| double | obs_time, | ||
| const std::map< int32_t, Gnss_Synchro > & | observables, | ||
| uint16_t | station_id ) |
Prints message type 1004 (Extended L1 & L2 GPS RTK Observables).
| std::string Rtcm::print_MT1005 | ( | 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 ) |
Prints message type 1005 (Stationary Antenna Reference Point).
| std::string Rtcm::print_MT1005_test | ( | ) |
For testing purposes.
| std::string Rtcm::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 ) |
Prints message type 1006 (Stationary Antenna Reference Point, with Height Information).
| std::string Rtcm::print_MT1008 | ( | uint32_t | ref_id, |
| const std::string & | antenna_descriptor, | ||
| uint32_t | antenna_setup_id, | ||
| const std::string & | antenna_serial_number ) |
Prints message type 1008 (Antenna Descriptor & Serial Number).
| std::string Rtcm::print_MT1009 | ( | const Glonass_Gnav_Ephemeris & | glonass_gnav_eph, |
| double | obs_time, | ||
| const std::map< int32_t, Gnss_Synchro > & | observables, | ||
| uint16_t | station_id ) |
Prints L1-Only GLONASS RTK Observables.
This GLONASS message type is not generally used or supported; type 1012 is to be preferred.
| glonass_gnav_eph | GLONASS GNAV Broadcast Ephemeris |
| obs_time | Time of observation at the moment of printing |
| observables | Set of observables as defined by the platform |
| std::string Rtcm::print_MT1010 | ( | const Glonass_Gnav_Ephemeris & | glonass_gnav_eph, |
| double | obs_time, | ||
| const std::map< int32_t, Gnss_Synchro > & | observables, | ||
| uint16_t | station_id ) |
Prints Extended L1-Only GLONASS RTK Observables.
This GLONASS message type is used when only L1 data is present and bandwidth is very tight, often 1012 is used in such cases.
| glonass_gnav_eph | GLONASS GNAV Broadcast Ephemeris |
| obs_time | Time of observation at the moment of printing |
| observables | Set of observables as defined by the platform |
| std::string Rtcm::print_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, | ||
| uint16_t | station_id ) |
Prints L1&L2 GLONASS RTK Observables.
This GLONASS message type is not generally used or supported; type 1012 is to be preferred
| glonass_gnav_eph | GLONASS GNAV Broadcast Ephemeris |
| obs_time | Time of observation at the moment of printing |
| observables | Set of observables as defined by the platform |
| std::string Rtcm::print_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, | ||
| uint16_t | station_id ) |
Prints Extended L1&L2 GLONASS RTK Observables.
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.
| glonass_gnav_eph | GLONASS GNAV Broadcast Ephemeris |
| obs_time | Time of observation at the moment of printing |
| observables | Set of observables as defined by the platform |
| std::string Rtcm::print_MT1019 | ( | const Gps_Ephemeris & | gps_eph | ) |
Prints message type 1019 (GPS Ephemeris), should be broadcast in the event that the IODC does not match the IODE, and every 2 minutes.
| std::string Rtcm::print_MT1020 | ( | const Glonass_Gnav_Ephemeris & | glonass_gnav_eph, |
| const Glonass_Gnav_Utc_Model & | glonass_gnav_utc_model ) |
Prints message type 1020 (GLONASS Ephemeris).
| glonass_gnav_eph | GLONASS GNAV Broadcast Ephemeris |
| glonass_gnav_utc_model | GLONASS GNAV Clock Information |
| std::string Rtcm::print_MT1029 | ( | uint32_t | ref_id, |
| const Gps_Ephemeris & | gps_eph, | ||
| double | obs_time, | ||
| const std::string & | message ) |
Prints message type 1029 (Unicode Text String).
| std::string Rtcm::print_MT1045 | ( | const Galileo_Ephemeris & | gal_eph | ) |
Prints message type 1045 (Galileo Ephemeris), should be broadcast every 2 minutes.
| int32_t Rtcm::read_MT1005 | ( | const std::string & | message, |
| uint32_t & | ref_id, | ||
| double & | ecef_x, | ||
| double & | ecef_y, | ||
| double & | ecef_z, | ||
| bool & | gps, | ||
| bool & | glonass, | ||
| bool & | galileo ) |
Verifies and reads messages of type 1005 (Stationary Antenna Reference Point). Returns 1 if anything goes wrong, 0 otherwise.
| int32_t Rtcm::read_MT1019 | ( | const std::string & | message, |
| Gps_Ephemeris & | gps_eph ) const |
Verifies and reads messages of type 1019 (GPS Ephemeris). Returns 1 if anything goes wrong, 0 otherwise.
| int32_t Rtcm::read_MT1020 | ( | const std::string & | message, |
| Glonass_Gnav_Ephemeris & | glonass_gnav_eph, | ||
| Glonass_Gnav_Utc_Model & | glonass_gnav_utc_model ) const |
Verifies and reads messages of type 1020 (GLONASS Ephemeris).
| message | Message to read as a string type |
| glonass_gnav_eph | GLONASS GNAV Broadcast Ephemeris |
| glonass_gnav_utc_model | GLONASS GNAV Clock Information |
| int32_t Rtcm::read_MT1045 | ( | const std::string & | message, |
| Galileo_Ephemeris & | gal_eph ) const |
Verifies and reads messages of type 1045 (Galileo Ephemeris). Returns 1 if anything goes wrong, 0 otherwise.
| void Rtcm::run_server | ( | ) |
Starts running the server.
| void Rtcm::send_message | ( | const std::string & | msg | ) |
Sends a message through the server to all connected clients.
| void Rtcm::stop_server | ( | ) |
Stops the server.