Changeset 8927 in ntrip for trunk


Ignore:
Timestamp:
Apr 30, 2020, 8:47:35 AM (4 years ago)
Author:
stuerze
Message:

bug fixed: RINEX 3.04 QZSS fit interval is specified as flag

File:
1 edited

Legend:

Unmodified
Added
Removed
  • trunk/BNC/src/ephemeris.cpp

    r8925 r8927  
    295295      }
    296296    }
    297 
    298297    else if ( iLine == 7 ) {
    299298      if ( readDbl(line, pos[0], fieldLen, _TOT) ) {
     
    301300        return;
    302301      }
    303       // Rinex 3.04: fitInterval is specified as time period for GPS,
    304       //             as flag for QZSS and not valid for IRNSS
    305       double fitIntervalRnx;
    306       readDbl(line, pos[1], fieldLen, fitIntervalRnx);
    307       if (type() == t_eph::QZSS) {
    308         _fitInterval = fitIntervalFromFlag(fitIntervalRnx, _IODC, t_eph::QZSS);
     302      // fitInterval is not valid for IRNSS
     303      if (type() != t_eph::IRNSS) {
     304        // Rinex 3.04:
     305        double fitIntervalRnx;
     306        readDbl(line, pos[1], fieldLen, fitIntervalRnx);
     307        if        (type() == t_eph::GPS) {  // specified as time period for GPS
     308          _fitInterval = fitIntervalRnx;
     309        } else if (type() == t_eph::QZSS) { // specified as flag for QZSS
     310          _fitInterval = fitIntervalFromFlag(fitIntervalRnx, _IODC, t_eph::QZSS);
     311        }
    309312      }
    310313    }
     
    476479    tot = 0.0;
    477480  }
    478   if (type() == t_eph::IRNSS) {
     481  // fitInterval
     482  if (type() == t_eph::IRNSS) {           // not valid for IRNSS
    479483    out << QString(fmt)
    480484      .arg(tot,          19, 'e', 12)
     
    484488  }
    485489  else {
    486     // Rinex 3.04: fitInterval is specified as flag for QZSS
    487     //             but as time period for GPS
    488     double fitIntervalRnx = _fitInterval; // GPS
    489     if (type() == t_eph::QZSS) {
     490    // Rinex 3.04:
     491    double fitIntervalRnx = _fitInterval; // specified as time period in hours for GPS
     492    if (type() == t_eph::QZSS) {          // specified as flag for QZSS
    490493      (_fitInterval == 2.0) ? fitIntervalRnx = 0.0 : fitIntervalRnx = 1.0;
    491494    }
Note: See TracChangeset for help on using the changeset viewer.