![]() |
Earth Observation Mission CFI Software Pointing Software User Manual |
![]() |
00001 //-------------------------------------------------------- 00002 // Earth Observation Mission CFI Software. Version 4.25 00003 //-------------------------------------------------------- 00004 00005 //-------------------------------------------------------------------- 00006 // CVS Info: $Id: Attitude.h,v 1.13 2014-02-20 20:02:33 cavm Exp $ 00007 //-------------------------------------------------------------------- 00008 00009 #ifndef ATTITUDEID_H 00010 #define ATTITUDEID_H 00011 00012 //--INCLUDE----------------------------------------------------------- 00013 #include <AttFile.h> 00014 #include <AttitudeDef.h> 00015 #include <CfiError.h> 00016 #include <CfiId.h> 00017 #include <InstrTransId.h> 00018 #include <ModelId.h> 00019 #include <OrbitId.h> 00020 #include <PointingData.h> 00021 #include <SatId.h> 00022 #include <SatNomTransId.h> 00023 #include <SatTransId.h> 00024 #include <TimeCorrelation.h> 00025 #include <string> 00026 #include <vector> 00027 00028 //--NAMESPACES-------------------------------------------------------- 00029 00030 namespace EECFI 00031 { 00035 class XP_DECL Attitude : public CfiId 00036 { 00037 friend class Target; 00038 00039 public: 00041 Attitude(); 00042 00045 Attitude(const Attitude& other); 00046 00048 Attitude(const TimeCorrelation& timeId, const SatNomTransId& satNomTrId, const SatTransId& satTrId, const InstrTransId& instTrId); 00049 00051 virtual ~Attitude() EXCEPT; 00052 00054 void setTransformations(const TimeCorrelation& timeId, const SatNomTransId& satNomTrId, const SatTransId& satTrId, const InstrTransId& instTrId); 00055 00060 void compute(const ModelId& modelId, const StateVector& stateVector, long targetFrame); 00061 00063 void userSet(const ModelId& modelId, const StateVector& stateVector, long targetFrame, const double matrix[3][3], const double matrixRate[3][3], const double matrixRateRate[3][3], const double offset[3]); 00064 00066 AttRec getAttitudeData(long dataType, 00067 long sourceRefType, 00068 long sourceRef) const; 00069 00071 AttitudeData getData() const; 00072 00074 void setData(const AttitudeData& attitudeData); 00075 00077 Coord changeFrame(const SatId& satId, const ModelId& modelId, long modeFlag, long frameFlagIn, long frameIdIn, long frameFlagOut, long frameIdOut, const StateVector& satStateVec, const Coord& statVecIn); 00078 00081 Attitude& operator=(const Attitude& other); 00082 00084 SatId satId() const; 00085 00086 protected: 00088 void eraseObject(); // AN-872 00089 00090 private: 00091 ModelId modelId; 00092 TimeCorrelation timeId; 00093 SatNomTransId satNomTrId; 00094 SatTransId satTrId; 00095 InstrTransId instrTrId; 00096 }; 00097 00098 } // namespace EECFI 00099 00100 #endif