DEIMOS
Earth Observation Mission CFI Software
Orbit Software User Manual
ESA

EECFI::ANXTime Class Reference

This class contains a time instant given as an absolute orbit number plus the time elapsed since the ANX. More...

Inheritance diagram for EECFI::ANXTime:
EECFI::CfiClass EECFI::OrbitExtra

List of all members.

Public Member Functions

 ANXTime ()
 Class constructor.
 ANXTime (long orbitIn, long secondsIn, long microsecIn)
 Class constructor with AXN time.
 ANXTime (const OrbitId &orbitId, long orbitIn, long secondsIn, long microsecIn)
 Class constructor with ANX time and Orbit id.
 ANXTime (const ANXTime &other)
 ~ANXTime () NOEXCEPT
 Class destructor.
double orbitToTime (long timeRef) const
 Compute the time for a given orbit and time after the ANX.
void timeToOrbit (long timeRef, double time)
 Get the absolute orbit number and the time after the ANX for a given time.
void setBOM ()
 Set time to Beggining of mission (BOM).
void setEOM ()
 Set time to End of mission (EOM).
OrbitalInfo getOrbitInfo () const
 Returns orbital information for the orbit of the object.
void orbitInfoConfigure (long item, long option) const
 Method that can be used to activate/deactivate the computation of several parameters in call to ANXTime::getOrbitInfo.
void adjustWithNodalPeriod ()
 Correct ANX time taking into account the orbit duration.
ANXTime operator+ (double time)
 Operator + (add a time).
ANXTime operator- (double time)
 Operator - (subtract a time).
double operator- (const ANXTime &t) const
 Substract two ANXTime objects and returns the number of seconds between them.
bool operator> (const ANXTime &t) const
 Operator > .
bool operator< (const ANXTime &t) const
 Operator < .
bool operator>= (const ANXTime &t) const
 Operator >= .
bool operator<= (const ANXTime &t) const
 Operator <= .
bool operator== (const ANXTime &t) const
 Operator ==.
bool operator!= (const ANXTime &t) const
 Operator != .
ANXTimeoperator= (const ANXTime &other)

Public Attributes

long orbit
 Absolute orbit number.
long seconds
 Seconds since the ANX.
long microseconds
 Microseconds.

Detailed Description

This class contains a time instant given as an absolute orbit number plus the time elapsed since the ANX.


Constructor & Destructor Documentation

EECFI::ANXTime::ANXTime (  ) 

Class constructor.

EECFI::ANXTime::ANXTime ( long  orbitIn,
long  secondsIn,
long  microsecIn 
)

Class constructor with AXN time.

EECFI::ANXTime::ANXTime ( const OrbitId orbitId,
long  orbitIn,
long  secondsIn,
long  microsecIn 
)

Class constructor with ANX time and Orbit id.

EECFI::ANXTime::ANXTime ( const ANXTime other  ) 

Copy constructor.

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

Class destructor.


Member Function Documentation

void EECFI::ANXTime::adjustWithNodalPeriod (  ) 

Correct ANX time taking into account the orbit duration.

References EECFI::CfiError::addMsg(), getOrbitInfo(), microseconds, EECFI::OrbitalInfo::nodalPeriod, orbit, and seconds.

Referenced by operator-(), operator<(), operator==(), and operator>().

bool EECFI::ANXTime::operator!= ( const ANXTime at  )  const

Operator != .

Parameters:
at ANXTime object we want to compare with.
Returns:
Result of comparison.

References EECFI::CfiError::addMsg().

ANXTime EECFI::ANXTime::operator+ ( double  time  ) 

Operator + (add a time).

Parameters:
time Seconds to be added to the ANXTime object.
Returns:
Resulting ANX time.

References microseconds, and seconds.

ANXTime EECFI::ANXTime::operator- ( double  time  ) 

Operator - (subtract a time).

Parameters:
time Seconds to be substracted from the ANXTime object.
Returns:
Resulting ANX time.

References microseconds, and seconds.

double EECFI::ANXTime::operator- ( const ANXTime at  )  const

Substract two ANXTime objects and returns the number of seconds between them.

Parameters:
at ANXTime object we want to substract to the object.
Returns:
Time difference in seconds.

References EECFI::CfiError::addMsg(), adjustWithNodalPeriod(), getOrbitInfo(), microseconds, EECFI::OrbitalInfo::nodalPeriod, orbit, and seconds.

bool EECFI::ANXTime::operator< ( const ANXTime at  )  const

Operator < .

Parameters:
at ANXTime object we want to compare with.
Returns:
Result of comparison.

References EECFI::CfiError::addMsg(), adjustWithNodalPeriod(), microseconds, orbit, and seconds.

bool EECFI::ANXTime::operator<= ( const ANXTime at  )  const

Operator <= .

Parameters:
at ANXTime object we want to compare with.
Returns:
Result of comparison.

References EECFI::CfiError::addMsg().

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

Copy assigment operator.

Parameters:
other The ANXTime to copy/assign from

References microseconds, orbit, and seconds.

bool EECFI::ANXTime::operator== ( const ANXTime at  )  const

Operator ==.

Parameters:
at ANXTime object we want to compare with.
Returns:
Result of comparison.

References EECFI::CfiError::addMsg(), adjustWithNodalPeriod(), microseconds, orbit, and seconds.

bool EECFI::ANXTime::operator> ( const ANXTime at  )  const

Operator > .

Parameters:
at ANXTime object we want to compare with.
Returns:
Result of comparison.

References EECFI::CfiError::addMsg(), adjustWithNodalPeriod(), microseconds, orbit, and seconds.

bool EECFI::ANXTime::operator>= ( const ANXTime at  )  const

Operator >= .

Parameters:
at ANXTime object we want to compare with.
Returns:
Result of comparison.

References EECFI::CfiError::addMsg().

void EECFI::ANXTime::orbitInfoConfigure ( long  item,
long  option 
) const

Method that can be used to activate/deactivate the computation of several parameters in call to ANXTime::getOrbitInfo.

Some parameters computed by ANXTime::getOrbitInfo require a significant computation time, so their computation is disabled by default and must be activated with orbitInfoConfigure method. The parameters that can be activated currently are the following ones:

  • Spacecraft midnight (SMX)
Parameters:
item Orbit info item to be activated/deactivated (OrbitInfoItemsEnum).
option Activate/deactivate item computation (OrbitInfoFlagEnum).

References EECFI::CfiClass::throwWarn.

double EECFI::ANXTime::orbitToTime ( long  timeRef  )  const

Compute the time for a given orbit and time after the ANX.

Parameters:
timeRef Time reference (TimeRefOrbitEnum).
Returns:
Time (decimal days, processing format).

References EECFI::CfiError::addMsg(), microseconds, orbit, seconds, and EECFI::CfiClass::throwWarn.

void EECFI::ANXTime::setBOM (  ) 

Set time to Beggining of mission (BOM).

void EECFI::ANXTime::setEOM (  ) 

Set time to End of mission (EOM).

void EECFI::ANXTime::timeToOrbit ( long  timeRef,
double  time 
)

Get the absolute orbit number and the time after the ANX for a given time.

Results are stored in the object.
COMPATIBILITY NOTE: This function returns its output compliant with the definition of [EO_OPS] and [MCD], and therefore with respect to an ANX respect to ToD/EF. The calculation of orbit parameters (time from ANX and orbit number) with respect other frame of reference (e.g. J2000) is not supported.

Parameters:
timeRef Time reference (TimeRefOrbitEnum).
time Time (decimal days, processing format).

References EECFI::CfiError::addMsg(), microseconds, orbit, seconds, and EECFI::CfiClass::throwWarn.


Member Data Documentation


Generated on Mon Dec 11 2023 13:28:27 for by doxygen 1.7.1