![]() |
Earth Observation Mission CFI Software Orbit Software User Manual |
![]() |
00001 //-------------------------------------------------------------------- 00002 // CVS Info: $Id: OrbitFunc.h,v 1.6 2009/04/13 13:39:36 expcfi Exp $ 00003 //-------------------------------------------------------------------- 00004 00005 #ifndef _ORBITFUNC_H 00006 #define _ORBITFUNC_H 00007 00008 //--INCLUDE----------------------------------------------------------- 00009 #include "OrbitData.h" 00010 #include "CfiError.h" 00011 #include "CfiClass.h" 00012 #include "TimeCorrelation.h" 00013 #include "SatId.h" 00014 #include "ModelId.h" 00015 00016 //--NAMESPACES-------------------------------------------------------- 00017 using namespace std; 00018 00019 namespace EECFI 00020 { 00021 00025 class OrbitFunc: public CfiClass 00026 { 00027 public: 00029 OrbitFunc(); 00030 00032 ~OrbitFunc(); 00033 00035 static string genOef( string oef, string osf, string pof, string fileClass, 00036 long versionNumber, string fhSystem ) throw (CfiError); 00037 00039 static string genOsf( const SatId &satId, const ModelId &modelId, const TimeCorrelation &timeCor, long absOrbitNum, 00040 long cycleNumber, long phaseNumber, long repeatCycle, 00041 long cycleLength, double anxLong, long driftMode, 00042 double inclination, double mlstDrift, double mlst, 00043 double date, string outputDir, string outputFileName, 00044 string fileClass, long versionNumber, string fhSystem ) throw (CfiError); 00045 00047 static string genOsfAppendOrbitChange( const SatId &satId, const ModelId &modelId, 00048 const TimeCorrelation &timeCor, 00049 string inputFilename, long absOrbitNum, 00050 long repeatCycle, long cycleLength, double anxLong, 00051 long driftMode, double inclination, double mlstDrift, double mlst, 00052 long phaseIncrement, string outputDir, string outputFileName, 00053 string fileClass, long versionNumber, string fhSystem ) throw (CfiError); 00054 00056 static string genOsfChangeRepeatCycle( const SatId &satId, const ModelId &modelId, 00057 const TimeCorrelation &timeCor, 00058 string inputFileName, long absOrbitNum, long searchDirection, 00059 long repeatCycle, long cycleLength, double anxLong, 00060 long driftMode, double inclination, double mlstDrift, 00061 long phaseIncrement, string outputDir, string outputFileName, 00062 string fileClass, long versionNumber, string fhSystem ) throw (CfiError); 00063 00065 static string genOsfAddDriftCycle( const SatId &satId, const ModelId &modelId, 00066 const TimeCorrelation &timeCor, 00067 string inputFileName, long driftStartOrbit, long driftStopOrbit, 00068 double driftStopAnxLong, double maxAltitudeChange, 00069 long phaseIncStart, long phaseIncStop, 00070 string outputDir, string outputFileName, 00071 string fileClass, long versionNumber, string fhSystem) throw (CfiError); 00072 00074 static string genPof( const SatId &satId, const ModelId &modelId, 00075 const TimeCorrelation &timeCor, long timeRef, 00076 long timeInit, double startTime, double stopTime, 00077 long startOrbit, long stopOrbit, double osvLocation, 00078 long refFiletype, string referenceFile, 00079 string preciseConfFile, 00080 long pofFileType, 00081 string outputDir, string outputFileName, 00082 string fileClass, long versionNumber, string fhSystem ) throw (CfiError); 00083 00085 static string genRof( const SatId &satId, const ModelId &modelId, 00086 const TimeCorrelation &timeCor, long timeRef, 00087 long timeInit, double startTime, double stopTime, 00088 long startOrbit, long stopOrbit, 00089 double osvInterval, long osvPrecise, 00090 long refFiletype, string referenceFile, 00091 string preciseConfFile, 00092 long rofFileType, 00093 string outputDir, string outputFileName, 00094 string fileClass, long versionNumber, string fhSystem ) throw (CfiError); 00095 00097 static string genRofPrototype( const SatId &satId, const ModelId &modelId, 00098 const TimeCorrelation &timeCor, 00099 long timeRef, long propagModel, 00100 double time0, long orbit0, long timeInitMode, 00101 double startTime, long startOrbit, 00102 double stopTime, long stopOrbit, long driftMode, 00103 double ascmlstDrift, double inclination, 00104 long repRef, long cycRef, double rLong, double ascmlst, 00105 double osvInterval, long rofFileType, 00106 string outputDir, string outputFileName, 00107 string fileClass, long versionNumber, string fhSystem ) throw (CfiError); 00108 00110 static string genDnf( const SatId &satId, const ModelId &modelId, 00111 const TimeCorrelation &timeCor, long timeRef, 00112 long timeInit, double startTime, double stopTime, 00113 long startOrbit, long stopOrbit, 00114 double osvInterval, long osvPrecise, 00115 long refFiletype, string referenceFile, 00116 long dnfFileType, 00117 string preciseConfFile, 00118 string ctrlFile, 00119 string outputDir, string outputFileName, 00120 string fileClass, long versionNumber, string fhSystem ) throw (CfiError); 00121 00123 static string genTle( const SatId &satId, long fitMode, const TimeCorrelation &timeCor, 00124 long timeRef, long timeMode, double startTime, double stopTime, 00125 long startOrbit, long stopOrbit, 00126 string referenceFile, string outputFileName ) throw (CfiError); 00127 00129 static vector<double> checkOsf( const SatId &satId, const ModelId &modelId, 00130 const TimeCorrelation &timeCor, 00131 string osfFile, long transitionNumber, 00132 vector<double> threshold) throw (CfiError); 00133 00135 static vector< pair<double,double> > checkOef( const SatId &satId, const ModelId &modelId, 00136 const TimeCorrelation &timeCor, long timeRef, 00137 long timeMode, double startTime, double stopTime, 00138 long startOrbit, long stopOrbit, string oefFile, 00139 const vector<double> threshold) throw (CfiError); 00140 00141 protected: 00142 00143 00144 private: 00145 }; 00146 00147 } // closing namespace 00148 00149 #endif