![]() |
Earth Observation Mission CFI Software Pointing Software User Manual |
![]() |
00001 //-------------------------------------------------------- 00002 // Earth Observation Mission CFI Software. Version 4.22 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 00044 Attitude(const TimeCorrelation& timeId, const SatNomTransId& satNomTrId, const SatTransId& satTrId, const InstrTransId& instTrId); 00045 00047 virtual ~Attitude() EXCEPT; 00048 00050 void setTransformations(const TimeCorrelation& timeId, const SatNomTransId& satNomTrId, const SatTransId& satTrId, const InstrTransId& instTrId); 00051 00056 void compute(const ModelId& modelId, const StateVector& stateVector, long targetFrame); 00057 00059 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]); 00060 00062 AttRec getAttitudeData(long dataType, 00063 long sourceRefType, 00064 long sourceRef) const; 00065 00067 AttitudeData getData() const; 00068 00070 void setData(const AttitudeData& attitudeData); 00071 00073 Coord changeFrame(const SatId& satId, const ModelId& modelId, long modeFlag, long frameFlagIn, long frameIdIn, long frameFlagOut, long frameIdOut, const StateVector& satStateVec, const Coord& statVecIn); 00075 Attitude const& operator=(Attitude const& att); 00076 00078 SatId satId() const; 00079 00080 protected: 00082 void eraseObject(); // AN-872 00083 00085 GenericId* getId() const; 00086 00087 private: 00088 ModelId modelId; 00089 TimeCorrelation timeId; 00090 SatNomTransId satNomTrId; 00091 SatTransId satTrId; 00092 InstrTransId instrTrId; 00093 }; 00094 00095 } // namespace EECFI 00096 00097 #endif