Changeset 8188 in ntrip for branches/BNC_2.12/src


Ignore:
Timestamp:
Nov 27, 2017, 11:50:29 AM (6 years ago)
Author:
stuerze
Message:

health status check is added

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

Legend:

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

    r8170 r8188  
    185185    return;
    186186  }
     187 
     188  // Check health status
     189  // -------------------
     190  if (eph->isUnhealthy()) {
     191    eph->setCheckState(t_eph::bad);
     192    return;
     193  }
    187194
    188195  // Simple Check - check satellite radial distance
  • branches/BNC_2.12/src/ephemeris.cpp

    r8167 r8188  
    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
  • branches/BNC_2.12/src/ephemeris.h

    r8184 r8188  
    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
     
    191193  virtual QString toString(double version) const;
    192194  virtual unsigned int  IOD() const;
     195  virtual unsigned int isUnhealthy() const;
    193196  virtual int slotNum() const {return int(_frequency_number);}
    194197
     
    282285  virtual e_type type() const {return t_eph::Galileo;}
    283286  virtual unsigned int  IOD() const { return static_cast<unsigned long>(_IODnav); }
     287  virtual unsigned int  isUnhealthy() const;
    284288
    285289 private:
     
    360364  virtual e_type  type() const {return t_eph::SBAS;}
    361365  virtual unsigned int IOD() const;
     366  virtual unsigned int  isUnhealthy() const { return static_cast<unsigned int>(_health); } 
    362367  virtual QString toString(double version) const;
    363368
     
    426431  virtual e_type  type() const {return t_eph::BDS;}
    427432  virtual unsigned int IOD() const;
     433  virtual unsigned int  isUnhealthy() const { return static_cast<unsigned int>(_SatH1); }
    428434  virtual QString toString(double version) const;
    429435
Note: See TracChangeset for help on using the changeset viewer.