00001 #pragma ident "$Id: ComputeTropModel.hpp 1315 2008-07-25 18:35:21Z architest $"
00002
00009 #ifndef COMPUTETROPMODEL_HPP
00010 #define COMPUTETROPMODEL_HPP
00011
00012
00013
00014
00015
00016
00017
00018
00019
00020
00021
00022
00023
00024
00025
00026
00027
00028
00029
00030
00031
00032
00033
00034
00035
00036 #include "ProcessingClass.hpp"
00037 #include "TropModel.hpp"
00038
00039
00040 namespace gpstk
00041 {
00042
00045
00097 class ComputeTropModel : public ProcessingClass
00098 {
00099 public:
00100
00102 ComputeTropModel()
00103 : pTropModel(NULL)
00104 { setIndex(); };
00105
00106
00116 ComputeTropModel(TropModel& tropoModel)
00117 { pTropModel = &tropoModel; setIndex(); };
00118
00119
00126 virtual satTypeValueMap& Process( const DayTime& time,
00127 satTypeValueMap& gData )
00128 throw(ProcessingException);
00129
00130
00136 virtual gnssSatTypeValue& Process(gnssSatTypeValue& gData)
00137 throw(ProcessingException)
00138 { Process(gData.header.epoch, gData.body); return gData; };
00139
00140
00146 virtual gnssRinex& Process(gnssRinex& gData)
00147 throw(ProcessingException)
00148 { Process(gData.header.epoch, gData.body); return gData; };
00149
00150
00153 virtual TropModel *getTropModel() const
00154 { return pTropModel; };
00155
00156
00162 virtual ComputeTropModel& setTropModel(TropModel& tropoModel)
00163 { pTropModel = &tropoModel; return (*this); };
00164
00165
00167 virtual int getIndex(void) const;
00168
00169
00171 virtual std::string getClassName(void) const;
00172
00173
00175 virtual ~ComputeTropModel() {};
00176
00177
00178 private:
00179
00180
00183 TropModel *pTropModel;
00184
00185
00187 static int classIndex;
00188
00189
00191 int index;
00192
00193
00195 void setIndex(void)
00196 { index = classIndex++; };
00197
00198
00199 };
00200
00202
00203 }
00204 #endif // COMPUTETROPMODEL_HPP