modelobsfixedstation.hpp

来自「一个gps小工具包」· HPP 代码 · 共 486 行 · 第 1/2 页

HPP
486
字号
         /** Returns a gnnsRinex object, adding the new data generated when          *  calling a modeling object.          *          * @param gData    Data object holding the data.          */      virtual gnssRinex& Process(gnssRinex& gData)         throw(Exception)      { Process(gData.header.epoch, gData.body); return gData; };         /// Method to get satellite elevation cut-off angle. By default, it         /// is set to 10 degrees.      virtual double getMinElev() const      { return minElev; };         /// Method to set satellite elevation cut-off angle. By default, it         /// is set to 10 degrees.      virtual ModelObsFixedStation& setMinElev(double newElevation)      { minElev = newElevation; return (*this); };         /// Method to set if instrumental delays (TGD) will be used or not         /// in the modeling (it is set to true by default).      virtual ModelObsFixedStation& setTGD(bool use)      { useTGD = use; return (*this); };         /// Method to get a pointer to the default ionospheric model.      virtual IonoModelStore* getDefaultIonoModel() const      { return pDefaultIonoModel; };         /// Method to set a NULL ionospheric model.      virtual ModelObsFixedStation& setNULLIonoModel()      { pDefaultIonoModel = NULL; return (*this); };         /** Method to set the default ionospheric model.          * @param dIonoModel    Ionospheric model to be used by default.          */      virtual ModelObsFixedStation& setDefaultIonoModel(                                                IonoModelStore& dIonoModel)      { pDefaultIonoModel = &dIonoModel; return (*this); };         /// Method to get a pointer to the default tropospheric model.      virtual TropModel* getDefaultTropoModel() const      { return pDefaultTropoModel; };         /// Method to set a NULL tropospheric model.      virtual ModelObsFixedStation& setNULLTropoModel()      { pDefaultTropoModel = NULL; return (*this); };         /** Method to set the default tropospheric model.          * @param dTropoModel    Tropospheric model to be used by default.          */      virtual ModelObsFixedStation& setDefaultTropoModel(                                                TropModel& dTropoModel)      { pDefaultTropoModel = &dTropoModel; return (*this); };         /// Method to get the default observable being used with GNSS         /// data structures.      virtual TypeID getDefaultObservable() const      { return defaultObservable; };         /** Method to set the default observable to be used when fed with          *  GNSS data structures.          * @param type      TypeID object to be used by default          */      virtual ModelObsFixedStation& setDefaultObservable(const TypeID& type)      { defaultObservable = type; return (*this); };         /// Method to get a pointer to the default XvtStore<SatID> to be used         /// with GNSS data structures.      virtual XvtStore<SatID>* getDefaultEphemeris() const      { return pDefaultEphemeris; };         /** Method to set the default XvtStore<SatID> to be used with GNSS          *  data structures.          *          * @param ephem     XvtStore<SatID> object to be used by default          */      virtual ModelObsFixedStation& setDefaultEphemeris(XvtStore<SatID>& ephem)      { pDefaultEphemeris = &ephem; return (*this); };         /// Either estimated or "a priori" position of receiver      Position rxPos;         /// Returns an index identifying this object.      virtual int getIndex(void) const;         /// Returns a string identifying this object.      virtual std::string getClassName(void) const;         /** Sets the index to a given arbitrary value. Use with caution.          *          * @param newindex      New integer index to be assigned to          *                      current object.          */      ModelObsFixedStation& setIndex(const int newindex)      { index = newindex; return (*this); };         /// Destructor.      virtual ~ModelObsFixedStation() {};   protected:         /** Compute the modeled pseudoranges, given satellite ID's,          *  pseudoranges and other data.          *          * @param Tr            Measured time of reception of the data.          * @param Satellite     Vector of satellites.          * @param Pseudorange   Vector of raw pseudoranges (parallel to          *                      satellite), in meters.          * @param Eph           EphemerisStore to be used.          * @param pTropModel    Pointer to tropospheric model to be used.          *                      By default points to NULL.          * @param pIonoModel    Pointer to ionospheric model to be used.          *                      By default points to NULL.          *          * @return          *  Number of satellites with valid data          *          * @sa TropModel.hpp, IonoModelStore.hpp.          */      int Compute( const DayTime& Tr,                   Vector<SatID>& Satellite,                   Vector<double>& Pseudorange,                   const XvtStore<SatID>& Eph,                   TropModel *pTropModel = NULL,                   IonoModelStore *pIonoModel = NULL )         throw(Exception);         /// The elevation cut-off angle for accepted satellites.         /// By default it is set to 10 degrees.      double minElev;         /// Boolean variable indicating if SV instrumental delays (TGD) will         /// be included  in results. It is true by default.      bool useTGD;         /// Pointer to default ionospheric model.      IonoModelStore *pDefaultIonoModel;         /// Pointer to default tropospheric model.      TropModel *pDefaultTropoModel;         /// Default observable to be used when fed with GNSS data structures.      TypeID defaultObservable;         /// Pointer to default XvtStore<SatID> object when working with GNSS         /// data structures.      XvtStore<SatID>* pDefaultEphemeris;         /// Initialization method      virtual void InitializeValues()         throw(Exception)      { setInitialRxPosition(); };         /** Method to set the initial (a priori) position of receiver.          * @return          *  0 if OK          *  -1 if problems arose          */      virtual int setInitialRxPosition( const double& aRx,                                        const double& bRx,                                        const double& cRx,                            Position::CoordinateSystem s = Position::Cartesian,                                        GeoidModel *geoid = NULL )         throw(GeometryException);         /// Method to set the initial (a priori) position of receiver.      virtual int setInitialRxPosition(const Position& RxCoordinates)         throw(GeometryException);         /// Method to set the initial (a priori) position of receiver.      virtual int setInitialRxPosition()         throw(GeometryException);         /// Method to get the tropospheric corrections.      virtual double getTropoCorrections( TropModel *pTropModel,                                          double elevation )         throw();         /// Method to get the ionospheric corrections.      virtual double getIonoCorrections( IonoModelStore *pIonoModel,                                         DayTime Tr,                                         Geodetic rxGeo,                                         double elevation,                                         double azimuth )         throw();         /// Method to get TGD corrections.      virtual double getTGDCorrections( DayTime Tr,                                        const XvtStore<SatID>& Eph,                                        SatID sat )         throw();   private:         /// Initial index assigned to this class.      static int classIndex;         /// Index belonging to this object.      int index;         /// Sets the index and increment classIndex.      void setIndex(void)      { index = classIndex++; };   }; // class ModelObsFixedStation      //@}} // namespace#endif // MODELOBSFIXEDSTATION_HPP

⌨️ 快捷键说明

复制代码Ctrl + C
搜索代码Ctrl + F
全屏模式F11
增大字号Ctrl + =
减小字号Ctrl + -
显示快捷键?