0.3.0
Loading...
Searching...
No Matches
NAV::Orbit Class Referenceabstract

Abstract satellite orbit information. More...

Classes

struct  Pos
 Satellite Position. More...
 
struct  PosVel
 Satellite Position and Velocity. More...
 
struct  PosVelAccel
 Satellite Position, Velocity and Acceleration. More...
 

Public Member Functions

Pos calcSatellitePos (const InsTime &transTime) const
 Calculates position of the satellite at transmission time.
 
virtual double calcSatellitePositionVariance () const =0
 Calculates the Variance of the satellite position in [m^2].
 
PosVel calcSatellitePosVel (const InsTime &transTime) const
 Calculates position and velocity of the satellite at transmission time.
 
PosVelAccel calcSatellitePosVelAccel (const InsTime &transTime) const
 Calculates position, velocity and acceleration of the satellite at transmission time.
 
Orbitoperator= (const Orbit &)=delete
 Copy assignment operator.
 
Orbitoperator= (Orbit &&)=delete
 Move assignment operator.
 
 Orbit ()=default
 Default Constructor.
 
 Orbit (const Orbit &)=default
 Copy constructor.
 
 Orbit (Orbit &&)=default
 Move constructor.
 
virtual ~Orbit ()=default
 Destructor.
 

Protected Types

enum  Calc : uint8_t {
  Calc_None ,
  Calc_Position ,
  Calc_Velocity ,
  Calc_Acceleration
}
 Calculation flags. More...
 

Protected Member Functions

virtual PosVelAccel calcSatelliteData (const InsTime &transTime, Calc calc) const =0
 Calculates position, velocity and acceleration of the satellite at transmission time.
 

Friends

Orbit::Calc operator& (Orbit::Calc lhs, Orbit::Calc rhs)
 Allows construction of Calc objects.
 
Orbit::Calc operator| (Orbit::Calc lhs, Orbit::Calc rhs)
 Allows construction of Calc objects.
 

Detailed Description

Abstract satellite orbit information.

Member Enumeration Documentation

◆ Calc

enum NAV::Orbit::Calc : uint8_t
protected

Calculation flags.

Enumerator
Calc_None 

None.

Calc_Position 

Position calculation flag.

Calc_Velocity 

Velocity calculation flag.

Calc_Acceleration 

Acceleration calculation flag.

Member Function Documentation

◆ calcSatelliteData()

virtual PosVelAccel NAV::Orbit::calcSatelliteData ( const InsTime & transTime,
Calc calc ) const
nodiscardprotectedpure virtual

Calculates position, velocity and acceleration of the satellite at transmission time.

Parameters
[in]transTimeTransmit time to calculate the satellite data for
[in]calcFlags which determine what should be calculated and returned

Implemented in NAV::BDSEphemeris, NAV::GalileoEphemeris, NAV::GLONASSEphemeris, NAV::GPSEphemeris, NAV::IRNSSEphemeris, and NAV::QZSSEphemeris.

◆ calcSatellitePos()

Pos NAV::Orbit::calcSatellitePos ( const InsTime & transTime) const
nodiscard

Calculates position of the satellite at transmission time.

Parameters
[in]transTimeTransmit time to calculate the satellite position for

◆ calcSatellitePositionVariance()

virtual double NAV::Orbit::calcSatellitePositionVariance ( ) const
nodiscardpure virtual

Calculates the Variance of the satellite position in [m^2].

Implemented in NAV::BDSEphemeris, NAV::GalileoEphemeris, NAV::GLONASSEphemeris, NAV::GPSEphemeris, NAV::IRNSSEphemeris, and NAV::QZSSEphemeris.

◆ calcSatellitePosVel()

PosVel NAV::Orbit::calcSatellitePosVel ( const InsTime & transTime) const
nodiscard

Calculates position and velocity of the satellite at transmission time.

Parameters
[in]transTimeTransmit time to calculate the satellite position and velocity for

◆ calcSatellitePosVelAccel()

PosVelAccel NAV::Orbit::calcSatellitePosVelAccel ( const InsTime & transTime) const
nodiscard

Calculates position, velocity and acceleration of the satellite at transmission time.

Parameters
[in]transTimeTransmit time to calculate the satellite position, velocity and acceleration for

Friends And Related Symbol Documentation

◆ operator&

Orbit::Calc operator& ( Orbit::Calc lhs,
Orbit::Calc rhs )
friend

Allows construction of Calc objects.

Parameters
[in]lhsLeft-hand side enum value.
[in]rhsRight-hand side enum value.
Returns
The binary ANDed value.

◆ operator|

Orbit::Calc operator| ( Orbit::Calc lhs,
Orbit::Calc rhs )
friend

Allows construction of Calc objects.

Parameters
[in]lhsLeft-hand side enum value.
[in]rhsRight-hand side enum value.
Returns
The binary ORed value.

The documentation for this class was generated from the following file: