![]() |
Earth Observation Mission CFI Software Pointing Software User Manual |
![]() |
00001 //-------------------------------------------------------------------- 00002 // CVS Info: $Id: InstrTransId.h,v 1.7 2009/04/13 13:46:50 expcfi Exp $ 00003 //-------------------------------------------------------------------- 00004 00005 #ifndef _INSTRTRANSID_H 00006 #define _INSTRTRANSID_H 00007 00008 //--INCLUDE----------------------------------------------------------- 00009 #include <vector> 00010 #include <string> 00011 00012 #include "DataHandlingData.h" 00013 #include "PointingData.h" 00014 #include "CfiError.h" 00015 #include "CfiId.h" 00016 #include "TimeCorrelation.h" 00017 #include "SatId.h" 00018 00019 //--NAMESPACES-------------------------------------------------------- 00020 using namespace std; 00021 00022 namespace EECFI 00023 { 00024 00028 class InstrTransId: public CfiId 00029 { 00030 friend class Attitude; 00031 friend class DRSVis; 00032 00033 public: 00034 00036 InstrTransId(); 00037 00039 ~InstrTransId() throw (CfiError); 00040 00042 void init( const double angle[3], const double offsets[3] ) throw (CfiError); 00043 00045 void init( const double matrix[3][3], const double offsets[3] ) throw (CfiError); 00046 00048 void init( long angleType, const vector<long> &harmTypePitch, const vector<long> &harmTypeRoll, 00049 const vector<long> &harmTypeYaw, const vector<double> &harmCoeffPitch, 00050 const vector<double> &harmCoeffRoll, const vector<double> &harmCoeffYaw, 00051 double offsets[3] ) throw (CfiError); 00052 00054 void init( const TimeCorrelation &timeId, const vector<string> &files, 00055 long timeInitMode, long timeRef, double time0, double time1 ) throw (CfiError); 00056 00058 MatrixModel getMatrix() const throw (CfiError); 00059 00061 void setMatrix( const MatrixModel &matrixModel ) throw (CfiError); 00062 00064 AngleModel getAngles() const throw (CfiError); 00065 00067 void setAngles( const AngleModel &angleModel ) throw (CfiError); 00068 00070 HarmonicModel getHarmonic() const throw (CfiError); 00071 00073 void setHarmonic( const HarmonicModel &harmModel ) throw (CfiError); 00074 00076 AttFileModel getFile() const throw (CfiError); 00077 00079 void setFile( const AttFileModel &fileModel ) throw (CfiError); 00080 00082 void getOffset( double offset[3] ) const throw (CfiError); 00083 00085 void setOffset( const double offset[3] ) throw (CfiError); 00086 00088 void setAzElDefinition( const AzElDefinition &azElDef ) throw (CfiError); 00089 00091 SatId satId() const; 00092 00093 protected: 00094 00096 GenericId* getId(); // this is the xo_orbit_id variable 00097 00099 void eraseObject() throw (CfiError); 00100 00101 private: 00102 00103 TimeCorrelation timeId; 00104 }; 00105 00106 } // closing namespace 00107 00108 #endif