| Earth Observation Mission CFI Software Pointing Software User Manual |

Public Member Functions | Protected Member Functions

# EECFI::SatTransId Class Reference

Class for storing the Satellite Attitude configuration parameters. More...

Inheritance diagram for EECFI::SatTransId:

List of all members.

## Public Member Functions
| SatTransId ()
| Empty Class constructor.
| ~SatTransId () throw (CfiError)
| Class destructor.
void | init (const double angle[3]) throw (CfiError)
| Initialise using angles.
void | init (const double matrix[3][3]) throw (CfiError)
| Initialise using matrix.
void | init (long angleType, const vector< long > &harmTypePitch, const vector< long > &harmTypeRoll, const vector< long > &harmTypeYaw, const vector< double > &harmCoeffPitch, const vector< double > &harmCoeffRoll, const vector< double > &harmCoeffYaw) throw (CfiError)
| Initialise satellite orbital to satellite nominal attitude mispointing angles for a given satellite with harmonics.
void | init (long inertialFrame, const vector< AttRec > &quaternions, double matrix[3][3]) throw (CfiError)
| Initialise using quaternions plus matrix.
void | init (long inertialFrame, const vector< AttRec > &quaternions, double angles[3]) throw (CfiError)
| Initialise using quaternions plus angles.
void | init (const TimeCorrelation &timeId, const vector< string > &files, string &auxiliaryFile, long timeInitMode, long timeRef, double time0, double time1) throw (CfiError)
| Initialise satellite attitude angles for a given satellite reading values from the attitude files.
MatrixModel | getMatrix () const throw (CfiError)
| Get matrix model.
void | setMatrix (const MatrixModel &matrixModel) throw (CfiError)
| Change matrix model.
AngleModel | getAngles () const throw (CfiError)
| Get angles model.
void | setAngles (const AngleModel &angleModel) throw (CfiError)
| Change angles model.
HarmonicModel | getHarmonic () const throw (CfiError)
| Get harmonic parameters of object.
void | setHarmonic (const HarmonicModel &harmModel) throw (CfiError)
| Change harmonic parameters of the object.
SatAttFileModel | getFile () const throw (CfiError)
| Get file data of object.
void | setFile (const SatAttFileModel &fileModel) throw (CfiError)
| Change initialisation file data of the object.
QuatPlusMatrixModel | getQuatPlusMatrix () const throw (CfiError)
| Get quaternions plus matrix model.
void | setQuatPlusMatrix (const QuatPlusMatrixModel &quatPlusMatrixModel) throw (CfiError)
| Change quaternions plus matrix model.
QuatPlusAnglesModel | getQuatPlusAngles () const throw (CfiError)
| Get quaternions plus angles model.
void | setQuatPlusAngles (const QuatPlusAnglesModel &quatPlusAnglesModel) throw (CfiError)
| Change quaternions plus angles model.
void | setAzElDefinition (const AzElDefinition &azElDef) throw (CfiError)
| Set azimuth/elevation definition.
SatId | satId () const
| Return satellite id.
## Protected Member Functions
GenericId * | getId ()
| Get the id.
void | eraseObject () throw (CfiError)
| Erase object and free memory.

## Detailed Description

Class for storing the Satellite Attitude configuration parameters.

## Constructor & Destructor Documentation

EECFI::SatTransId::SatTransId | ( |  | ) |

Empty Class constructor.

EECFI::SatTransId::~SatTransId | ( |  | ) | throw (CfiError)

Class destructor.

References eraseObject().

## Member Function Documentation

void EECFI::SatTransId::eraseObject | ( |  | ) | throw (CfiError)`[protected]`

Erase object and free memory.

References EECFI::CfiId::status(), EECFI::CfiId::subtractInstance(), and EECFI::CfiClass::throwWarn.

Referenced by ~SatTransId().

AngleModel EECFI::SatTransId::getAngles | ( |  | ) | const throw (CfiError)

Get angles model.

Returns:
  Angle model data.

References EECFI::CfiError::addMsg(), EECFI::AngleModel::angles, and EECFI::CfiClass::throwWarn.

SatAttFileModel EECFI::SatTransId::getFile | ( |  | ) | const throw (CfiError)

Get file data of object.

Returns:
  File model data.

References EECFI::StarTrackerAux::aberrCorrection, EECFI::CfiError::addMsg(), EECFI::SatAttFileModel::attData, EECFI::SatAttFileModel::auxData, EECFI::SatAttFileModel::dataType, EECFI::SatAttFileModel::fileModel, EECFI::SatAttFileModel::inertialFrame, EECFI::SatAttFileModel::maxGap, EECFI::StarTrackerAux::starTrId, EECFI::StarTrackerAux::strAttRot, EECFI::CfiClass::throwWarn, EECFI::SatAttFileModel::tmData, EECFI::SatAttFileModel::valTime0, and EECFI::SatAttFileModel::valTime1.

HarmonicModel EECFI::SatTransId::getHarmonic | ( |  | ) | const throw (CfiError)

Get harmonic parameters of object.

Returns:
  Harmonic model data.

References EECFI::CfiError::addMsg(), EECFI::HarmonicModel::angleType, EECFI::HarmonicData::harmonicCoeffPitch, EECFI::HarmonicData::harmonicCoeffRoll, EECFI::HarmonicData::harmonicCoeffYaw, EECFI::HarmonicModel::harmonicData, EECFI::HarmonicData::harmonicTypePitch, EECFI::HarmonicData::harmonicTypeRoll, EECFI::HarmonicData::harmonicTypeYaw, and EECFI::CfiClass::throwWarn.

GenericId * EECFI::SatTransId::getId | ( |  | ) | `[protected]`

Get the id.

Returns:
  Pointer to xp_sat_trans_id.

MatrixModel EECFI::SatTransId::getMatrix | ( |  | ) | const throw (CfiError)

Get matrix model.

Returns:
  Matrix model data.

References EECFI::CfiError::addMsg(), EECFI::MatrixModel::attMatrix, and EECFI::CfiClass::throwWarn.

QuatPlusAnglesModel EECFI::SatTransId::getQuatPlusAngles | ( |  | ) | const throw (CfiError)

Get quaternions plus angles model.

Returns:
  Quaternion plus angles model data.

References EECFI::CfiError::addMsg(), EECFI::QuatPlusAnglesModel::angles, EECFI::QuatPlusAnglesModel::inertialFrame, EECFI::QuatPlusAnglesModel::quat, and EECFI::CfiClass::throwWarn.

QuatPlusMatrixModel EECFI::SatTransId::getQuatPlusMatrix | ( |  | ) | const throw (CfiError)

Get quaternions plus matrix model.

Returns:
  Quaternion plus matrix model data.

References EECFI::CfiError::addMsg(), EECFI::QuatPlusMatrixModel::inertialFrame, EECFI::QuatPlusMatrixModel::quat, EECFI::QuatPlusMatrixModel::rotMatrix, and EECFI::CfiClass::throwWarn.

void EECFI::SatTransId::init | ( | const double | matrix[3][3] | ) | throw (CfiError)

Initialise using matrix.

Parameters:

  | matrix | Rotation matrix.

void EECFI::SatTransId::init | ( | long | inertialFrame,
|  | const vector< AttRec > & | quaternions,
|  | double | matrix[3][3] |
| ) |  |  | throw (CfiError)

Initialise using quaternions plus matrix.

Parameters:

  | inertialFrame | Inertial frame (CoordinateSystemsEnum).
  | quaternions | Quaternions that give the rotation from the inertial reference frame to the frame based on the satellite.
  | matrix | Rotation matrix from the frame based on the satellite to the satellite frame.

void EECFI::SatTransId::init | ( | long | inertialFrame,
|  | const vector< AttRec > & | quaternions,
|  | double | angles[3] |
| ) |  |  | throw (CfiError)

Initialise using quaternions plus angles.

Parameters:

  | inertialFrame | Inertial frame (CoordinateSystemsEnum).
  | quaternions | Quaternions that give the rotation from the inertial reference frame to the frame based on the satellite.
  | angles | Angles that define the rotation from the frame based on the satellite to the satellite frame.

void EECFI::SatTransId::init | ( | const double | angle[3] | ) | throw (CfiError)

Initialise using angles.

Parameters:

  | angle | Rotation angles. [0]: Pitch mispointing angle (Satellite Nominal Attitude Frame) [deg]. Allowed range: If no better value, assume 0.0. [1]: Roll mispointing angle (Satellite Nominal Attitude Frame) [deg]. Allowed range: If no better value, assume 0.0. [2]: Yaw mispointing angle (Satellite Nominal Attitude Frame) [deg]. Allowed range: If no better value, assume 0.0. .

void EECFI::SatTransId::init | ( | const TimeCorrelation & | timeId,
|  | const vector< string > & | files,
|  | string & | auxiliaryFile,
|  | long | timeInitMode,
|  | long | timeRef,
|  | double | time0,
|  | double | time1 |
| ) |  |  | throw (CfiError)

Initialise satellite attitude angles for a given satellite reading values from the attitude files.

In order to read files, this method internally uses Data Handling functions. Please refer to [D_H_SUM] for further details.

Parameters:

  | timeId | Time correlations.
  | files | Filenames of the reference data files. In case multiple files are used, the files should be time ordered. The supported Attitude File formats are the Generic Attitude File (described in [DAT_SUM]) and Star Tracker files. If multiple files are used, Generic Attitude Files and Star Tracker files cannot be given to the function as part of the same list. When using Star-Tracker files, the function assumes that all the input files belong to the same Star-Tracker. As a consequence of this assumption only the Star-Tracker identifier of the first file provided in the list is read. Note that the Star-Tracker identification number should be either 1, 2 or 3 (no internal check is performed).
  | auxiliaryFile | Auxiliary file with StarTracker misalignment matrices.
  | timeInitMode | Flag for selecting the time range of the initialisation (XPCFI_SEL_TIME/XPCFI_SEL_FILE).
  | timeRef | Time reference (TimeRefPointingEnum).
  | time0 | Start of the time range [Decimal days (Processing format)].
  | time1 | Stop of the time range [Decimal days (Processing format)].

void EECFI::SatTransId::init | ( | long | angleType,
|  | const vector< long > & | harmTypePitch,
|  | const vector< long > & | harmTypeRoll,
|  | const vector< long > & | harmTypeYaw,
|  | const vector< double > & | harmCoefPitch,
|  | const vector< double > & | harmCoefRoll,
|  | const vector< double > & | harmCoefYaw |
| ) |  |  | throw (CfiError)

Initialise satellite orbital to satellite nominal attitude mispointing angles for a given satellite with harmonics.

The Attitude::compute and Attitude::changeFrame functions will then compute the values as follows:

Parameters:

  | angleType | Type of angle (given by PointingAngleTypeEnum).
  | harmTypePitch | Type of coefficients: 0= for the bias parameter <0 for the sinus coefficients (-n means that corresponds to the sinus coefficient of order n) >0 for the cosinus coefficients (-n means that corresponds to the cosinus coefficient of order n) .
  | harmTypeRoll | Type of coefficients (bias, sinus, cosinus, see documentation).
  | harmTypeYaw | Type of coefficients (bias, sinus, cosinus, see documentation).
  | harmCoefPitch | Bias, sinus and cosinus coefficients for the pitch angle.
  | harmCoefRoll | Bias, sinus and cosinus coefficients for the roll angle.
  | harmCoefYaw | Bias, sinus and cosinus coefficients for the yaw angle.

References EECFI::CfiError::addMsg().

SatId EECFI::SatTransId::satId | ( |  | ) | const

Return satellite id.

Returns:
  Satellite id.

void EECFI::SatTransId::setAngles | ( | const AngleModel & | angleModel | ) | throw (CfiError)

Change angles model.

Parameters:

  | angleModel | Angle model data.

References EECFI::CfiError::addMsg().

void EECFI::SatTransId::setAzElDefinition | ( | const AzElDefinition & | azElDef | ) | throw (CfiError)

Set azimuth/elevation definition.

Parameters:

  | azElDef | Definition of azimuth and elevation.

void EECFI::SatTransId::setFile | ( | const SatAttFileModel & | fileModel | ) | throw (CfiError)

Change initialisation file data of the object.

Parameters:

  | fileModel | File model data.

References EECFI::CfiError::addMsg().

void EECFI::SatTransId::setHarmonic | ( | const HarmonicModel & | harmonicModel | ) | throw (CfiError)

Change harmonic parameters of the object.

Parameters:

  | harmonicModel | Harmonic model data.

References EECFI::CfiError::addMsg().

void EECFI::SatTransId::setMatrix | ( | const MatrixModel & | matrixModel | ) | throw (CfiError)

Change matrix model.

Parameters:

  | matrixModel | Matrix model data.

References EECFI::CfiError::addMsg().

void EECFI::SatTransId::setQuatPlusAngles | ( | const QuatPlusAnglesModel & | quatPlusAng | ) | throw (CfiError)

Change quaternions plus angles model.

Parameters:

  | quatPlusAng | Quaternion plus angles model data.

References EECFI::CfiError::addMsg().

void EECFI::SatTransId::setQuatPlusMatrix | ( | const QuatPlusMatrixModel & | quatPlusMat | ) | throw (CfiError)

Change quaternions plus matrix model.

Parameters:

  | quatPlusMat | Quaternion plus matrix model data.

References EECFI::CfiError::addMsg().