Changeset 8790 in ntrip for trunk/BNC


Ignore:
Timestamp:
Aug 13, 2019, 3:24:58 PM (5 years ago)
Author:
stuerze
Message:

some updates regarding IRNSS RTCM data decoding

Location:
trunk/BNC/src
Files:
3 edited

Legend:

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

    r8782 r8790  
    815815      type == t_eph::SBAS||
    816816      type == t_eph::QZSS) {
    817 
    818817    if ((index >= 0) && (index <= 6)) {
    819818      if (index == 3) {
    820         return ceil(10.0 * pow(2.0, (double(index) / 2.0) + 1.0)) / 10.0;
     819        return  ceil(10.0 * pow(2.0, (double(index) / 2.0) + 1.0)) / 10.0;
    821820      }
    822821      else {
     
    831830    }
    832831  }
    833 
    834   if (type == t_eph::Galileo) {
     832  else if (type == t_eph::Galileo) {
    835833
    836834    if ((index >= 0) && (index <= 49)) {
     
    848846    else {
    849847      return -1.0;
     848    }
     849  }
     850  else if (type == t_eph::IRNSS) {
     851    if ((index >= 0) && (index <= 6)) {
     852      if      (index == 1) {
     853        return 2.8;
     854      }
     855      else if (index == 3) {
     856        return 5.7;
     857      }
     858      else if (index == 5) {
     859        return 11.3;
     860      }
     861      else {
     862        return pow(2, 1 + index / 2);
     863      }
     864    }
     865    else if ((index > 6) && (index <= 15)) {
     866      return pow(2, index - 1);
    850867    }
    851868  }
  • trunk/BNC/src/ephemeris.cpp

    r8698 r8790  
    439439    .arg(_OMEGADOT, 19, 'e', 12);
    440440
    441   if (type() == t_eph::IRNSS) {
    442     out << QString(fmt)
    443       .arg(_IDOT,    19, 'e', 12)
    444       .arg("",       19, QChar(' '))
    445       .arg(_TOEweek, 19, 'e', 12)
    446       .arg("",       19, QChar(' '));
    447   }
    448   else {
    449441    out << QString(fmt)
    450442      .arg(_IDOT,    19, 'e', 12)
     
    452444      .arg(_TOEweek, 19, 'e', 12)
    453445      .arg(_L2PFlag, 19, 'e', 12);
    454   }
    455446
    456447  if (type() == t_eph::IRNSS) {
     
    459450      .arg(_health, 19, 'e', 12)
    460451      .arg(_TGD,    19, 'e', 12)
    461       .arg("",       19, QChar(' '));
     452      .arg(0.0,     19, 'e', 12);
    462453  }
    463454  else {
     
    473464    tot = 0.0;
    474465  }
    475   if (type() == t_eph::IRNSS) {
    476     out << QString(fmt)
    477       .arg(tot,          19, 'e', 12)
    478       .arg("",           19, QChar(' '))
    479       .arg("",           19, QChar(' '))
    480       .arg("",           19, QChar(' '));
    481   }
    482   else {
    483     out << QString(fmt)
     466  out << QString(fmt)
    484467      .arg(tot,          19, 'e', 12)
    485468      .arg(_fitInterval, 19, 'e', 12)
    486469      .arg("",           19, QChar(' '))
    487470      .arg("",           19, QChar(' '));
    488   }
    489471
    490472  return rnxStr;
  • trunk/BNC/src/ephemeris.h

    r8495 r8790  
    134134  double  _L2Codes;         // Codes on L2 channel  (not valid for IRNSS)
    135135  double  _TOEweek;
    136   double  _L2PFlag;         // L2 P data flag (not valid for IRNSS)
     136  double  _L2PFlag;         // L2 P data flag (not valid for IRNSS and QZSS)
    137137
    138138  mutable double  _ura;     // SV accuracy
     
    141141  double  _IODC;            // (not valid for IRNSS)
    142142
    143   double  _TOT;             // Transmisstion time
     143  double  _TOT;             // Transmission time
    144144  double  _fitInterval;     // Fit interval (not valid for IRNSS)
    145145};
Note: See TracChangeset for help on using the changeset viewer.