Earth Observation Mission CFI Software Lib Software User Manual |
00001 //-------------------------------------------------------- 00002 // Earth Observation Mission CFI Software. Version 4.18 00003 //-------------------------------------------------------- 00004 00005 //-------------------------------------------------------------------- 00006 // CVS Info: $Id: StateVector.h,v 1.14 2014-02-20 20:02:29 cavm Exp $ 00007 //-------------------------------------------------------------------- 00008 00009 #ifndef _EECFI_STATEVECTOR_H 00010 #define _EECFI_STATEVECTOR_H 00011 00012 00013 //--INCLUDE----------------------------------------------------------- 00014 #include "LibData.h" 00015 #include "CfiClass.h" 00016 #include "CfiError.h" 00017 #include "EETime.h" 00018 #include "Coord.h" 00019 #include "ModelId.h" 00020 00021 //--NAMESPACES-------------------------------------------------------- 00022 00023 namespace EECFI 00024 { 00025 00029 class XL_DECL StateVector: public CfiClass 00030 { 00031 public: 00032 00033 Time time; 00034 Coord coord; 00035 00037 StateVector() {}; 00038 00040 StateVector(const Time &time, const Coord &coord); 00041 00043 ~StateVector() NOEXCEPT {}; 00044 00055 StateVector change( const ModelId &modelId, long deriv, long newCS) const; 00056 00060 void setSun( const ModelId &modelId, Time &time) ; 00061 00065 void setMoon( const ModelId &modelId, Time &time) ; 00066 00070 void setPlanet( const ModelId &modelId, Time &time, long planet) ; 00071 00081 void getPositionOnOrbit( const ModelId &modelId, 00082 long angleType, long deriv, 00083 double &angle, 00084 double &angleRate, 00085 double &angleRateRate) const; 00086 protected: 00087 00088 private: 00089 00090 }; 00091 00092 } // closing namespace 00093 00094 #endif