Changeset 8926 in ntrip


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

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

Location:
branches/BNC_2.12/src
Files:
2 edited

Legend:

Unmodified
Added
Removed
  • branches/BNC_2.12/src/ephemeris.cpp

    r8804 r8926  
    304304        return;
    305305      }
    306       readDbl(line, pos[1], fieldLen, _fitInterval); // _fitInterval optional
     306      // fitInterval is not valid for IRNSS
     307      if (type() != t_eph::IRNSS) {
     308        // Rinex 3.04:
     309        double fitIntervalRnx;
     310        readDbl(line, pos[1], fieldLen, fitIntervalRnx);
     311        if        (type() == t_eph::GPS) {  // specified as time period for GPS
     312          _fitInterval = fitIntervalRnx;
     313        } else if (type() == t_eph::QZSS) { // specified as flag for QZSS
     314          _fitInterval = fitIntervalFromFlag(fitIntervalRnx, _IODC, t_eph::QZSS);
     315        }
     316      }
    307317    }
    308318  }
     
    473483    tot = 0.0;
    474484  }
    475   if (type() == t_eph::IRNSS) {
     485  // fitInterval
     486  if (type() == t_eph::IRNSS) {           // not valid for IRNSS
    476487    out << QString(fmt)
    477488      .arg(tot,          19, 'e', 12)
     
    481492  }
    482493  else {
     494    // Rinex 3.04:
     495    double fitIntervalRnx = _fitInterval; // specified as time period in hours for GPS
     496    if (type() == t_eph::QZSS) {          // specified as flag for QZSS
     497      (_fitInterval == 2.0) ? fitIntervalRnx = 0.0 : fitIntervalRnx = 1.0;
     498    }
    483499    out << QString(fmt)
    484       .arg(tot,          19, 'e', 12)
    485       .arg(_fitInterval, 19, 'e', 12)
    486       .arg("",           19, QChar(' '))
    487       .arg("",           19, QChar(' '));
     500      .arg(tot,            19, 'e', 12)
     501      .arg(fitIntervalRnx, 19, 'e', 12)
     502      .arg("",             19, QChar(' '))
     503      .arg("",             19, QChar(' '));
    488504  }
    489505
  • branches/BNC_2.12/src/ephemeris.h

    r8804 r8926  
    143143
    144144  double  _TOT;             // Transmission time
    145   double  _fitInterval;     // Fit interval (not valid for IRNSS)
     145  double  _fitInterval;     // Fit interval in hours (not valid for IRNSS)
    146146
    147147};
Note: See TracChangeset for help on using the changeset viewer.