diff --git a/include/gnss_utils/gnss_utils.h b/include/gnss_utils/gnss_utils.h index 1ffa2afcb73bab06de6d40f5bd2c22d252cebd89..a7714735bd61f66c23240896b476390848b3c004 100644 --- a/include/gnss_utils/gnss_utils.h +++ b/include/gnss_utils/gnss_utils.h @@ -163,15 +163,15 @@ struct Options const Options default_options = { - EPHOPT_BRDC, // satellite ephemeris option: EPHOPT_BRDC(0):broadcast ephemeris, EPHOPT_PREC(1): precise ephemeris, EPHOPT_SBAS(2): broadcast + SBAS, EPHOPT_SSRAPC(3): broadcast + SSR_APC, EPHOPT_SSRCOM(4): broadcast + SSR_COM, EPHOPT_LEX(5): QZSS LEX ephemeris - IONOOPT_BRDC, // ionosphere option: IONOOPT_OFF(0):correction off, IONOOPT_BRDC(1):broadcast mode, IONOOPT_SBAS(2):SBAS model, IONOOPT_IFLC(3):L1/L2 or L1/L5, IONOOPT_EST(4):estimation, IONOOPT_TEC(5):IONEX TEC model, IONOOPT_QZS(6):QZSS broadcast, IONOOPT_LEX(7):QZSS LEX ionosphere, IONOOPT_STEC(8):SLANT TEC mode - TROPOPT_SAAS, // troposphere option: TROPOPT_OFF(0):correction off, TROPOPT_SAAS(1):Saastamoinen model, TROPOPT_SBAS(2):SBAS model, TROPOPT_EST(3):troposphere option: ZTD estimation, TROPOPT_ESTG(4):ZTD+grad estimation, TROPOPT_ZTD(5):ZTD correction,6:ZTD+grad correction - SBSOPT_LCORR+SBSOPT_FCORR+SBSOPT_ICORR+SBSOPT_RANGE, // SBAS correction options (can be added): SBSOPT_LCORR(1): long term correction, SBSOPT_FCORR(2): fast correction, SBSOPT_ICORR(4): ionosphere correction, SBSOPT_RANGE(8): ranging - false, // RAIM enabled - D2R*30.0, // min elevation (degrees) - 0, // maxgdop: reject threshold of gdop + EPHOPT_BRDC, // satellite ephemeris option: EPHOPT_BRDC(0):broadcast ephemeris, EPHOPT_PREC(1): precise ephemeris, EPHOPT_SBAS(2): broadcast + SBAS, EPHOPT_SSRAPC(3): broadcast + SSR_APC, EPHOPT_SSRCOM(4): broadcast + SSR_COM, EPHOPT_LEX(5): QZSS LEX ephemeris + IONOOPT_BRDC, // ionosphere option: IONOOPT_OFF(0):correction off, IONOOPT_BRDC(1):broadcast mode, IONOOPT_SBAS(2):SBAS model, IONOOPT_IFLC(3):L1/L2 or L1/L5, IONOOPT_EST(4):estimation, IONOOPT_TEC(5):IONEX TEC model, IONOOPT_QZS(6):QZSS broadcast, IONOOPT_LEX(7):QZSS LEX ionosphere, IONOOPT_STEC(8):SLANT TEC mode + TROPOPT_SAAS, // troposphere option: TROPOPT_OFF(0):correction off, TROPOPT_SAAS(1):Saastamoinen model, TROPOPT_SBAS(2):SBAS model, TROPOPT_EST(3):troposphere option: ZTD estimation, TROPOPT_ESTG(4):ZTD+grad estimation, TROPOPT_ZTD(5):ZTD correction,6:ZTD+grad correction + 0, // SBAS correction options (can be added): SBSOPT_LCORR(1): long term correction, SBSOPT_FCORR(2): fast correction, SBSOPT_ICORR(4): ionosphere correction, SBSOPT_RANGE(8): ranging + true, // RAIM enabled + D2R*15.0, // min elevation (degrees) + 30.0, // maxgdop: reject threshold of gdop true, false, true, true, false, false, false, false, //GPS,SBS,GLO,GAL,QZS,CMP,IRN,LEO; // constellations used - {0} // TDCP options + {0} // TDCP options }; // forward declarations diff --git a/include/gnss_utils/utils/rcv_position.h b/include/gnss_utils/utils/rcv_position.h index 962d0bafacfede4e1f1398991a47bf896ce597ab..c72676642d09884073821b7968db7f0a1a7cc8b4 100644 --- a/include/gnss_utils/utils/rcv_position.h +++ b/include/gnss_utils/utils/rcv_position.h @@ -20,7 +20,8 @@ namespace GnssUtils { -ComputePosOutput computePos(const Observations& _observations, const Navigation& _navigation, const Options& _prcopt); +ComputePosOutput computePos(const Observations& _observations, const Navigation& _navigation, const Options& _opt); +ComputePosOutput computePos(const Observations& _observations, const Navigation& _navigation, const prcopt_t& _prcopt); // ComputePosOutput computePosOwn(const Observations & _observations, // Navigation & _navigation, diff --git a/src/utils/rcv_position.cpp b/src/utils/rcv_position.cpp index 4e3501e1824d8021d553ce0e436f30fe294a2d42..73c42e77d4108b99c5e34bc5cfabebd96b128e44 100644 --- a/src/utils/rcv_position.cpp +++ b/src/utils/rcv_position.cpp @@ -15,12 +15,19 @@ ComputePosOutput computePos(const GnssUtils::Observations& _observations, const GnssUtils::Navigation& _navigation, const Options& _opt) { - // Define error msg - char msg[128] = ""; - // Convert options to rtklib prcopt_t prcopt = _opt.getPrcopt(); + return computePos(_observations, _navigation, prcopt); +} + +ComputePosOutput computePos(const GnssUtils::Observations& _observations, + const GnssUtils::Navigation& _navigation, + const prcopt_t& _prcopt) +{ + // Define error msg + char msg[128] = ""; + // output data GnssUtils::ComputePosOutput output; sol_t sol; @@ -32,7 +39,7 @@ ComputePosOutput computePos(const GnssUtils::Observations& _observations, output.pos_stat = pntpos(_observations.data(), _observations.size(), &(_navigation.getNavigation()), - &prcopt, + &_prcopt, &sol, sat_elevations.data(), sats_status,