Earth Observation Mission CFI Software Lib Software User Manual |
00001 //-------------------------------------------------------------------- 00002 // CVS Info: $Id: StateVector.h,v 1.7 2010/07/09 10:29:02 expcfi Exp $ 00003 //-------------------------------------------------------------------- 00004 00005 #ifndef _EECFI_STATEVECTOR_H 00006 #define _EECFI_STATEVECTOR_H 00007 00008 00009 //--INCLUDE----------------------------------------------------------- 00010 #include "LibData.h" 00011 #include "CfiClass.h" 00012 #include "CfiError.h" 00013 #include "EETime.h" 00014 #include "Coord.h" 00015 #include "ModelId.h" 00016 00017 //--NAMESPACES-------------------------------------------------------- 00018 using namespace std; 00019 00020 namespace EECFI 00021 { 00022 00026 class StateVector: public CfiClass 00027 { 00028 public: 00029 00030 Time time; 00031 Coord coord; 00032 00034 StateVector() {}; 00035 00037 StateVector(Time &time, Coord &coord); 00038 00040 ~StateVector() {}; 00041 00052 StateVector change( const ModelId &modelId, long deriv, long newCS) throw (CfiError); 00053 00057 void setSun( const ModelId &modelId, Time &time) throw (CfiError); 00058 00062 void setMoon( const ModelId &modelId, Time &time) throw (CfiError); 00063 00067 void setPlanet( const ModelId &modelId, Time &time, long planet) throw (CfiError); 00068 00073 void getPositionOnOrbit( const ModelId &modelId, 00074 long angleType, long deriv, 00075 double &angle, 00076 double &angleRate, 00077 double &angleRateRate) throw (CfiError); 00078 protected: 00079 00080 private: 00081 00082 }; 00083 00084 } // closing namespace 00085 00086 #endif