00001 #pragma ident "$Id: SatOrbitStore.hpp 2457 2010-08-18 14:20:12Z coandrei $"
00002
00008 #ifndef GPSTK_SATORBITSTORE_HPP
00009 #define GPSTK_SATORBITSTORE_HPP
00010
00011
00012
00013
00014
00015
00016
00017
00018
00019
00020
00021
00022
00023
00024
00025
00026
00027
00028
00029
00030
00031
00032
00033
00034 #include "SatID.hpp"
00035 #include "PvtStore.hpp"
00036
00037 namespace gpstk
00038 {
00039
00040
00041
00042
00043
00044
00045
00046
00047
00048
00049
00050 class SatOrbitStore
00051 {
00052 public:
00054 typedef std::map<SatID, PvtStore> SvEphMap;
00055
00056
00057 SatOrbitStore() : orbit("LEO")
00058 {}
00059
00061 ~SatOrbitStore()
00062 { pe.clear(); }
00063
00064
00066 void loadSP3File(const std::string& filename)
00067 throw(FileMissingException);
00068
00069
00071 void writeSP3File(const std::string& filename,
00072 bool sp3c = false);
00073
00075 void loadGNV1BFile(const std::string& filename);
00076
00077
00082 PvtStore::Pvt getPvt(const SatID sat,
00083 const DayTime& t,
00084 bool j2k = false )
00085 throw(InvalidRequest) ;
00086
00087
00089 PvtStore::EpochList epochList(const SatID sat);
00090
00091
00093 static void compareOrbit();
00094
00096 void keepOnly(const SatID sat);
00097
00099 void deleteOnly(const SatID sat);
00100
00102 void test();
00103
00104 protected:
00105
00106 SvEphMap pe;
00107
00108 std::string agency;
00109 std::string orbit;
00110
00111 };
00112
00113 }
00114
00115
00116 #endif // GPSTK_SATORBITSTORE_HPP
00117
00118
00119