Changeset 8187 in ntrip


Ignore:
Timestamp:
Nov 27, 2017, 11:49:37 AM (7 years ago)
Author:
stuerze
Message:

health status check is added

Location:
trunk/BNC/src
Files:
3 edited

Legend:

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

    r8169 r8187  
    186186  }
    187187
     188  // Check health status
     189  // -------------------
     190  if (eph->isUnhealthy()) {
     191    eph->setCheckState(t_eph::bad);
     192    return;
     193  }
     194
    188195  // Simple Check - check satellite radial distance
    189196  // ----------------------------------------------
  • trunk/BNC/src/ephemeris.cpp

    r8168 r8187  
    725725}
    726726
     727// Health status of Glonass Ephemeris (virtual)
     728////////////////////////////////////////////////////////////////////////////
     729unsigned int t_ephGlo::isUnhealthy() const {
     730  if      (_health == 0 && _almanac_health == 0) {
     731    return 1;
     732  }
     733  else if (_health == 1 && _almanac_health == 0) {
     734    return 1;
     735  }
     736  else if (_health == 1 && _almanac_health == 1) {
     737    return 1;
     738  }
     739
     740  return 0;
     741}
     742
    727743// Constructor
    728744//////////////////////////////////////////////////////////////////////////////
     
    961977
    962978  return success;
     979}
     980
     981// Health status of Galileo Ephemeris (virtual)
     982////////////////////////////////////////////////////////////////////////////
     983unsigned int t_ephGal::isUnhealthy() const {
     984  if (_E5aHS && _E5bHS && _E1_bHS) {
     985    return 1;
     986  }
     987  return 0;
    963988}
    964989
  • trunk/BNC/src/ephemeris.h

    r8182 r8187  
    2626  virtual QString toString(double version) const = 0;
    2727  virtual unsigned int IOD() const = 0;
     28  virtual unsigned int isUnhealthy() const = 0;
    2829  virtual int     slotNum() const {return 0;}
    2930  bncTime TOC() const {return _TOC;}
     
    100101  virtual QString toString(double version) const;
    101102  virtual unsigned int  IOD() const { return static_cast<unsigned int>(_IODE); }
     103  virtual unsigned int  isUnhealthy() const { return static_cast<unsigned int>(_health); }
    102104  double TGD() const {return _TGD;} // Timing Group Delay (P1-P2 DCB)
    103105
     
    190192  virtual QString toString(double version) const;
    191193  virtual unsigned int  IOD() const;
     194  virtual unsigned int isUnhealthy() const;
    192195  virtual int slotNum() const {return int(_frequency_number);}
    193196
     
    281284  virtual e_type type() const {return t_eph::Galileo;}
    282285  virtual unsigned int  IOD() const { return static_cast<unsigned long>(_IODnav); }
     286  virtual unsigned int  isUnhealthy() const;
    283287
    284288 private:
     
    359363  virtual e_type  type() const {return t_eph::SBAS;}
    360364  virtual unsigned int IOD() const;
     365  virtual unsigned int  isUnhealthy() const { return static_cast<unsigned int>(_health); }
    361366  virtual QString toString(double version) const;
    362367
     
    425430  virtual e_type  type() const {return t_eph::BDS;}
    426431  virtual unsigned int IOD() const;
     432  virtual unsigned int  isUnhealthy() const { return static_cast<unsigned int>(_SatH1); }
    427433  virtual QString toString(double version) const;
    428434
Note: See TracChangeset for help on using the changeset viewer.