00001 #pragma ident "$Id: YumaData.hpp 2467 2010-09-14 15:42:49Z snelsen $"
00002
00003
00004
00005
00006
00007
00008
00009
00010
00011
00012
00013
00014
00015
00016
00017
00018
00019
00020
00021
00022
00023
00024
00030 #ifndef YUMADATA_HPP
00031 #define YUMADATA_HPP
00032
00033 #include <vector>
00034 #include <list>
00035 #include <map>
00036
00037 #include "FFStream.hpp"
00038 #include "AlmOrbit.hpp"
00039 #include "YumaBase.hpp"
00040 #include "YumaHeader.hpp"
00041 #include "StringUtils.hpp"
00042
00043 namespace gpstk
00044 {
00047
00055 class YumaData : public YumaBase
00056 {
00057 public:
00059 YumaData() {}
00060
00062 virtual ~YumaData() {}
00063
00068 static short nearFullWeek;
00069
00070 static const std::string sID;
00071 static const std::string sHlth;
00072 static const std::string sEcc;
00073 static const std::string sTOA;
00074 static const std::string sOrbI;
00075 static const std::string sRRA;
00076 static const std::string sSqrA;
00077 static const std::string sRtAs;
00078 static const std::string sArgP;
00079 static const std::string sMnAn;
00080 static const std::string sAf0;
00081 static const std::string sAf1;
00082 static const std::string sweek;
00083
00084
00085 short PRN;
00086 short week;
00087 short SV_health;
00088 double ecc;
00089 long Toa;
00090 double i_offset;
00091 double OMEGAdot;
00092 double Ahalf;
00093 double OMEGA0;
00094 double w;
00095 double M0;
00096 double AF0;
00097 double AF1;
00098 long xmit_time;
00099
00100
00106 virtual void dump(std::ostream& s) const;
00107
00109 virtual bool isData() const {return true;}
00110
00115 operator AlmOrbit() const;
00116
00117
00118
00119 protected:
00123 void reallyPutRecord(FFStream& s) const
00124 throw(std::exception, FFStreamError,
00125 gpstk::StringUtils::StringException);
00126
00137 virtual void reallyGetRecord(FFStream& s)
00138 throw(std::exception, FFStreamError,
00139 gpstk::StringUtils::StringException);
00140
00141 std::string lineParser(const std::string& line, const std::string& s)
00142 const throw(FFStreamError);
00143
00144 };
00145
00147
00148 }
00149
00150 #endif