Changeset 10599 in ntrip for trunk/BNC/src/rinex


Ignore:
Timestamp:
Jan 31, 2025, 10:30:08 AM (2 months ago)
Author:
stuerze
Message:

ADDED: consideration of NAV type in all applications

Location:
trunk/BNC/src/rinex
Files:
3 edited

Legend:

Unmodified
Added
Removed
  • trunk/BNC/src/rinex/corrfile.cpp

    r8204 r10599  
    3535 * Created:    12-Feb-2012
    3636 *
    37  * Changes:   
     37 * Changes:
    3838 *
    3939 * -----------------------------------------------------------------------*/
     
    9898      while (it.hasNext()) {
    9999        const t_orbCorr& corr = it.next();
    100         _corrIODs[QString(corr._prn.toInternalString().c_str())] = corr._iod;
     100        QString corrPrn = QString(corr._prn.toInternalString().c_str());
     101        _corrIODs[corrPrn] = corr._iod;
    101102      }
    102103      emit newOrbCorrections(orbCorrList);
  • trunk/BNC/src/rinex/rnxnavfile.cpp

    r10587 r10599  
    303303
    304304    if (eph) {
    305       eph->setType(navType);
    306305      _ephs.push_back(eph);
    307306    }
     
    321320    while (itIOD.hasNext()) {
    322321      itIOD.next();
    323       QString prn = itIOD.key();
    324       unsigned int iod = itIOD.value();
     322      QString      corrPrn = itIOD.key();
     323      unsigned int corrIod = itIOD.value();
    325324      vector<t_eph*>::iterator it = _ephs.begin();
    326325      while (it != _ephs.end()) {
    327326        t_eph* eph = *it;
    328327        double dt = eph->TOC() - tt;
    329         if (dt < 8*3600.0 && QString(eph->prn().toInternalString().c_str()) == prn && eph->IOD() == iod) {
     328        QString      ephPrn = QString(eph->prn().toInternalString().c_str());
     329        unsigned int ephIod = eph->IOD();
     330        if (dt < 8*3600.0 &&
     331            ephPrn == corrPrn &&
     332            ephIod == corrIod) {
    330333          it = _ephs.erase(it);
    331334          return eph;
     
    343346      t_eph* eph = *it;
    344347      double dt = eph->TOC() - tt;
    345       if (dt < 2*3600.0) {
     348      char sys = eph->prn().system();
     349      int  num = eph->prn().number();
     350      int ssrNavType = t_corrSSR::getSsrNavTypeFlag(sys, num);
     351      if (dt < 2*3600.0 && eph->type() == ssrNavType) {
    346352        it = _ephs.erase(it);
    347353        return eph;
  • trunk/BNC/src/rinex/rnxobsfile.cpp

    r10561 r10599  
    12241224      line = _stream->readLine();
    12251225      t_prn prn; prn.set(line.left(3).toLatin1().data());
     1226      char sys = prn.system();
     1227      int num  = prn.number();
     1228      int flag = t_corrSSR::getSsrNavTypeFlag(sys, num);
     1229      prn.setFlag(flag);
    12261230      _currEpo.rnxSat[iSat].prn = prn;
    1227       char sys = prn.system();
    12281231      for (int iType = 0; iType < _header.nTypes(sys); iType++) {
    12291232        int pos = 3 + 16*iType;
     
    13091312        sys = 'G';
    13101313      }
    1311       int satNum; readInt(line, pos + 1, 2, satNum);
    1312       _currEpo.rnxSat[iSat].prn.set(sys, satNum);
     1314      int num; readInt(line, pos + 1, 2, num);
     1315      int flag = t_corrSSR::getSsrNavTypeFlag(sys, num);
     1316      t_prn prn;
     1317      prn.set(sys, num, flag);
     1318      _currEpo.rnxSat[iSat].prn = prn;
    13131319
    13141320      pos += 3;
     
    15931599                                 const t_rnxObsFile::t_rnxSat& rnxSat, t_satObs& obs) {
    15941600  obs._staID = rnxObsFile->markerName().toLatin1().constData();
     1601  obs._time  = epo->tt;
    15951602  obs._prn   = rnxSat.prn;
    1596   obs._time  = epo->tt;
    1597 
    1598   char sys   = rnxSat.prn.system();
     1603
     1604  char sys  = obs._prn.system();
     1605  int  num  = obs._prn.number();
     1606  int  flag = t_corrSSR::getSsrNavTypeFlag(sys, num);
     1607  obs._prn.setFlag(flag);
    15991608
    16001609  QChar addToL2;
Note: See TracChangeset for help on using the changeset viewer.