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

Abstract satellite orbit information. More...

Data Structures

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.

Definition at line 24 of file Orbit.hpp.

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.

Definition at line 74 of file Orbit.hpp.

Constructor & Destructor Documentation

◆ Orbit() [1/3]

NAV::Orbit::Orbit ( )
default

Default Constructor.

◆ ~Orbit()

virtual NAV::Orbit::~Orbit ( )
virtualdefault

Destructor.

◆ Orbit() [2/3]

NAV::Orbit::Orbit ( const Orbit & )
default

Copy constructor.

◆ Orbit() [3/3]

NAV::Orbit::Orbit ( Orbit && )
default

Move constructor.

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()

Orbit::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

Definition at line 13 of file Orbit.cpp.

◆ 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()

Orbit::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

Definition at line 19 of file Orbit.cpp.

◆ calcSatellitePosVelAccel()

Orbit::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

Definition at line 25 of file Orbit.cpp.

◆ operator=() [1/2]

Orbit & NAV::Orbit::operator= ( const Orbit & )
delete

Copy assignment operator.

◆ operator=() [2/2]

Orbit & NAV::Orbit::operator= ( Orbit && )
delete

Move assignment operator.

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.

Definition at line 103 of file Orbit.hpp.

◆ 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.

Definition at line 97 of file Orbit.hpp.


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