DEIMOS
Earth Observation Mission CFI Software
DataHandling Software User Manual
ESA

EECFI::AttFile Class Reference

Class for reading/writing attitude generic files. More...

Inheritance diagram for EECFI::AttFile:
EECFI::EEFile EECFI::CfiClass

List of all members.

Public Member Functions

 AttFile ()
 Default constructor.
 AttFile (const std::string &fileNam)
 Constructor with file name.
 AttFile (const AttFile &other)
 ~AttFile () NOEXCEPT
 Destructor.
AttFileoperator= (const AttFile &other)
void read ()
 Read the whole data block and store it in object.
void write (const FixedHeader &fixedHead, const std::vector< AttRec > &attRecords, const long srcRef, const long datTyp, const double maximumGap, const long satReference)
 Write attitude file with name given in constructor.
void write (const std::string &fileNam, const FixedHeader &fixedHead, const std::vector< AttRec > &attRecords, const long srcRef, const long datTyp, const double maximumGap, const long satReference)
 Write attitude file with a new name.
void decimate (double decimationDeltaTime, AttFile &attOut) const
 Decimate the list of attitude records according to input delta time.
long xsltAdd () const
 Add xslt reference with default stylesheet.

Public Attributes

std::vector< AttRecattRec
 Vector of attitude data.
long sourceRef
 Initial reference frame: inertial reference frame.
long dataType
 Angles or quaternions (AttitudeDataTypeEnum).
double maxGap
 Maximum time gap between two consecutive records.
long satRef
 Target reference frame.

Detailed Description

Class for reading/writing attitude generic files.


Constructor & Destructor Documentation

EECFI::AttFile::AttFile (  ) 

Default constructor.

EECFI::AttFile::AttFile ( const std::string &  fileNam  )  [explicit]

Constructor with file name.

EECFI::AttFile::AttFile ( const AttFile other  ) 

Copy constructor.

Parameters:
other The AttFile to copy from
EECFI::AttFile::~AttFile (  ) 

Destructor.


Member Function Documentation

void EECFI::AttFile::decimate ( double  decimationDeltaTime,
AttFile attOut 
) const

Decimate the list of attitude records according to input delta time.

Being t0 the time of the 1st attitude record of input list (calling object) and D the decimationDeltaTime, the attitude records from the input list that will be included in the output list will be those closer to every time t=t0+k*D (k=1,2...n). Important: the fixed header of calling object must have been read.

Parameters:
decimationDeltaTime Number of seconds used for decimation.
attOut Output Attitude File with the decimated list and corresponding Fixed header.

References EECFI::CfiError::addMsg(), attRec, dataType, EECFI::EEFile::fixedHeader, maxGap, satRef, sourceRef, EECFI::CfiClass::throwWarn, EECFI::FixedHeader::valStartDate, EECFI::FixedHeader::valStopDate, and EECFI::FixedHeader::version.

AttFile & EECFI::AttFile::operator= ( const AttFile other  ) 

Copy assigment operator.

Parameters:
other The AttFile to copy/assign from

References attRec, dataType, maxGap, satRef, and sourceRef.

void EECFI::AttFile::read (  ) 

Read the whole data block and store it in object.

References attRec, dataType, EECFI::EEFile::fileName, maxGap, satRef, sourceRef, and EECFI::CfiClass::throwWarn.

void EECFI::AttFile::write ( const std::string &  fileNam,
const FixedHeader fixedHead,
const std::vector< AttRec > &  attRecords,
const long  srcRef,
const long  datTyp,
const double  maximumGap,
const long  satReference 
)

Write attitude file with a new name.

Note about output format: the number of decimal digits written to file depends on the type of data:

  • If angles are used, 6 decimal digits are written.
  • If quaternions are used, 9 decimal digits are written.

It is done this way because having 9 decimal digits in quaternions reduces pointing error significantly .

void EECFI::AttFile::write ( const FixedHeader fixedHead,
const std::vector< AttRec > &  attRecords,
const long  srcRef,
const long  datTyp,
const double  maximumGap,
const long  satReference 
)

Write attitude file with name given in constructor.

Note about output format: the number of decimal digits written to file depends on the type of data:

  • If angles are used, 6 decimal digits are written.
  • If quaternions are used, 9 decimal digits are written.

It is done this way because having 9 decimal digits in quaternions reduces pointing error significantly .

long EECFI::AttFile::xsltAdd (  )  const

Add xslt reference with default stylesheet.

References EECFI::EEFile::fileName.


Member Data Documentation

Vector of attitude data.

Referenced by decimate(), operator=(), and read().

Angles or quaternions (AttitudeDataTypeEnum).

Referenced by decimate(), operator=(), and read().

Maximum time gap between two consecutive records.

Referenced by decimate(), operator=(), and read().

Target reference frame.

Referenced by decimate(), operator=(), and read().

Initial reference frame: inertial reference frame.

Referenced by decimate(), operator=(), and read().


Generated on Thu Jun 23 2022 18:11:49 for by doxygen 1.7.1