ModeledPR.hpp

Go to the documentation of this file.
00001 #pragma ident "$Id: ModeledPR.hpp 1312 2008-07-24 18:15:26Z architest $"
00002 
00008 #ifndef MODELEDPR_HPP
00009 #define MODELEDPR_HPP
00010 
00011 //============================================================================
00012 //
00013 //  This file is part of GPSTk, the GPS Toolkit.
00014 //
00015 //  The GPSTk is free software; you can redistribute it and/or modify
00016 //  it under the terms of the GNU Lesser General Public License as published
00017 //  by the Free Software Foundation; either version 2.1 of the License, or
00018 //  any later version.
00019 //
00020 //  The GPSTk is distributed in the hope that it will be useful,
00021 //  but WITHOUT ANY WARRANTY; without even the implied warranty of
00022 //  MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE.  See the
00023 //  GNU Lesser General Public License for more details.
00024 //
00025 //  You should have received a copy of the GNU Lesser General Public
00026 //  License along with GPSTk; if not, write to the Free Software Foundation,
00027 //  Inc., 59 Temple Place, Suite 330, Boston, MA  02111-1307  USA
00028 //
00029 //  Dagoberto Salazar - gAGE ( http://www.gage.es ). 2006, 2007, 2008
00030 //
00031 //============================================================================
00032 
00033 
00034 
00035 #include "ModeledReferencePR.hpp"
00036 #include "Matrix.hpp"
00037 #include "Bancroft.hpp"
00038 #include "PRSolution.hpp"
00039 #include "DataStructures.hpp"
00040 
00041 
00042 namespace gpstk
00043 {
00046 
00121    class ModeledPR : public ModeledReferencePR
00122    {
00123    public:
00124 
00126       ModeledPR() : modelPrepared(false) {};
00127 
00128 
00147       ModeledPR( const Position& RxCoordinates,
00148                  IonoModelStore& dIonoModel,
00149                  TropModel& dTropoModel,
00150                  XvtStore<SatID>& dEphemeris,
00151                  const TypeID& dObservable,
00152                  bool usetgd = true );
00153 
00154 
00173       ModeledPR( const Position& RxCoordinates,
00174                  IonoModelStore& dIonoModel,
00175                  XvtStore<SatID>& dEphemeris,
00176                  const TypeID& dObservable,
00177                  bool usetgd = true );
00178 
00179 
00198       ModeledPR( const Position& RxCoordinates,
00199                  TropModel& dTropoModel,
00200                  XvtStore<SatID>& dEphemeris,
00201                  const TypeID& dObservable,
00202                  bool usetgd = true );
00203 
00204 
00222       ModeledPR( const Position& RxCoordinates,
00223                  XvtStore<SatID>& dEphemeris,
00224                  const TypeID& dObservable,
00225                  bool usetgd = true );
00226 
00227 
00244       ModeledPR( IonoModelStore& dIonoModel,
00245                  TropModel& dTropoModel,
00246                  XvtStore<SatID>& dEphemeris,
00247                  const TypeID& dObservable,
00248                  bool usetgd = true );
00249 
00250 
00266       ModeledPR( IonoModelStore& dIonoModel,
00267                  XvtStore<SatID>& dEphemeris,
00268                  const TypeID& dObservable,
00269                  bool usetgd = true );
00270 
00271 
00287       ModeledPR( TropModel& dTropoModel,
00288                  XvtStore<SatID>& dEphemeris,
00289                  const TypeID& dObservable,
00290                  bool usetgd = true );
00291 
00292 
00306       virtual int Prepare( const DayTime& Tr,
00307                            std::vector<SatID>& Satellite,
00308                            std::vector<double>& Pseudorange,
00309                            const XvtStore<SatID>& Eph );
00310 
00311 
00325       virtual int Prepare( const DayTime& Tr,
00326                            const Vector<SatID>& Satellite,
00327                            const Vector<double>& Pseudorange,
00328                            const XvtStore<SatID>& Eph );
00329 
00330 
00342       virtual int Prepare( const DayTime& time,
00343                            const satTypeValueMap& data );
00344 
00345 
00355       virtual int Prepare(const gnssSatTypeValue& gData)
00356       { return (Prepare(gData.header.epoch, gData.body)); };
00357 
00358 
00365       virtual int Prepare( const double& aRx,
00366                            const double& bRx,
00367                            const double& cRx,
00368                            Position::CoordinateSystem s=Position::Cartesian,
00369                            GeoidModel *geoid = NULL );
00370 
00371 
00378       virtual int Prepare(const Position& RxCoordinates);
00379 
00380 
00387       virtual satTypeValueMap& processModel( const DayTime& time,
00388                                              satTypeValueMap& gData )
00389          throw(Exception);
00390 
00391 
00393       bool getModelPrepared() const
00394       { return modelPrepared; };
00395 
00396 
00402       ModeledPR& setModelPrepared(const bool& prepare)
00403       { modelPrepared = prepare; return (*this); };
00404 
00405 
00407       virtual ~ModeledPR() {};
00408 
00409 
00410    protected:
00411 
00412 
00413       bool modelPrepared;
00414 
00415 
00416    }; // End of class 'ModeledPR'
00417 
00419 
00420 }  // End of namespace gpstk
00421 #endif   // MODELEDPR_HPP

Generated on Tue May 22 03:30:59 2012 for GPS ToolKit Software Library by  doxygen 1.3.9.1