Ephemeris information for a single satellite. This class encapsulates the ephemeris navigation message (subframes 1-3) and provides functions to decode the as-broadcast ephemerides.
Definition at line 86 of file EngEphemeris.hpp.
#include <EngEphemeris.hpp>
Public Member Functions | |
bool | addIncompleteSF1Thru3 (const uint32_t sf1[8], const uint32_t sf2[8], const uint32_t sf3[8], const long sf1TransmitSOW, const int gpsWeek, const short PRN, const short track) |
bool | addSubframe (const uint32_t subframe[10], const int gpsWeek, const short PRN, const short track) |
bool | addSubframeNoParity (const uint32_t subframe[10], const int gpsWeek, const short PRN, const short track) |
void | dump (std::ostream &s=std::cout) const |
void | dumpTerse (std::ostream &s=std::cout) const |
EngEphemeris () noexcept | |
Default constructor. More... | |
double | getA () const |
short | getAccFlag () const |
double | getAccuracy () const |
double | getAf0 () const |
double | getAf1 () const |
double | getAf2 () const |
double | getAhalf () const |
long | getAODO () const |
short | getASAlert (short subframe) const |
double | getCic () const |
double | getCis () const |
BrcClockCorrection | getClock () const |
short | getCodeFlags () const |
double | getCrc () const |
double | getCrs () const |
double | getCuc () const |
double | getCus () const |
double | getDn () const |
double | getEcc () const |
CommonTime | getEphemerisEpoch () const |
CommonTime | getEpochTime () const |
short | getFitInt () const |
short | getFitInterval () const |
short | getFullWeek () const |
short | getHealth () const |
double | getHOWTime (short subframe) const |
double | getI0 () const |
double | getIDot () const |
short | getIODC () const |
short | getIODE () const |
short | getL2Pdata () const |
double | getM0 () const |
double | getOmega0 () const |
double | getOmegaDot () const |
BrcKeplerOrbit | getOrbit () const |
short | getPRNID () const |
std::string | getSatSys () const noexcept |
double | getTgd () const |
CommonTime | getTimestamp () const noexcept |
used for template functions More... | |
unsigned | getTLMMessage (short subframe) const |
unsigned char | getTLMPreamble () const noexcept |
Return 0x8b, the upper 5 bits of the 22-bit TLM word. More... | |
double | getToc () const |
double | getToe () const |
long | getTot () const |
short | getTracker () const |
CommonTime | getTransmitTime () const |
double | getW () const |
bool | isData (short subframe) const |
bool | isDataSet () const |
bool | isValid () const noexcept |
EngEphemeris & | loadData (const std::string satSysArg, const unsigned short tlm[3], const long how[3], const short asalert[3], const short Tracker, const short prn, const short fullweek, const short cflags, const short acc, const short svhealth, const short iodc, const short l2pdata, const long Aodo, const double tgd, const double toc, const double Af2, const double Af1, const double Af0, const short iode, const double crs, const double Dn, const double m0, const double cuc, const double Ecc, const double cus, const double ahalf, const double toe, const short fitInt, const double cic, const double Omega0, const double cis, const double I0, const double crc, const double W, const double OmegaDot, const double IDot) |
bool | operator!= (const EngEphemeris &right) const noexcept |
bool | operator== (const EngEphemeris &right) const noexcept |
void | setAccuracy (double acc) |
void | setFIC (const bool arg) |
EngEphemeris & | setSF1 (unsigned tlm, double how, short asalert, short fullweek, short cflags, short acc, short svhealth, short iodc, short l2pdata, double tgd, double toc, double Af2, double Af1, double Af0, short Tracker, short prn) |
EngEphemeris & | setSF2 (unsigned tlm, double how, short asalert, short iode, double crs, double Dn, double m0, double cuc, double Ecc, double cus, double ahalf, double toe, short fitInt) |
EngEphemeris & | setSF3 (unsigned tlm, double how, short asalert, double cic, double Omega0, double cis, double I0, double crc, double W, double OmegaDot, double IDot) |
double | svClockBias (const CommonTime &t) const |
double | svClockDrift (const CommonTime &t) const |
double | svRelativity (const CommonTime &t) const |
Xvt | svXvt (const CommonTime &t) const |
bool | unifiedConvert (const int gpsWeek, const short PRN, const short track) |
virtual | ~EngEphemeris () |
Destructor. More... | |
![]() | |
EngNav () noexcept | |
default constructor More... | |
virtual | ~EngNav () |
destructor More... | |
Static Public Member Functions | |
static short | getFitInterval (short iodc, short fiti) |
![]() | |
static bool | checkParity (const std::vector< uint32_t > &v, bool knownUpright=true) |
static bool | checkParity (const uint32_t input[10], bool knownUpright=true) |
static uint32_t | computeParity (uint32_t sfword, uint32_t psfword, bool knownUpright=true) |
static bool | convert10bit (int gpsWeek, double *out) noexcept |
static bool | convert8bit (int gpsWeek, double *out) noexcept |
static short | convertXBit (short fullGPSWeek, short incompleteGPSWeek, BitConvertType type) |
static void | dump (std::ostream &s=std::cout) |
static uint32_t | fixParity (uint32_t sfword, uint32_t psfword, bool nib, bool knownUpright=true) |
static uint32_t | getd29 (uint32_t sfword) |
Get bit 29 from the given subframe word. More... | |
static uint32_t | getd30 (uint32_t sfword) |
static unsigned long | getHOWTime (uint32_t word2) |
Get the HOW time from the provided HOW. More... | |
static bool | getNMCTValidity (const uint32_t sf2[10], unsigned howWeek, NMCTMeta &meta) |
static bool | getNMCTValidity (const uint32_t sf2[10], unsigned howWeek, uint32_t &aodo, CommonTime &tnmct, CommonTime &toe, CommonTime &tot) |
static short | getSFID (uint32_t word2) |
Get the subframe ID from the provided HOW. More... | |
static short | getSubframePattern (const long input[10]) noexcept |
static short | getSubframePattern (const uint32_t input[10]) noexcept |
static unsigned long | getTOW (uint32_t word2) |
Get the TOW count from the provided HOW. More... | |
static bool | sfpage2svid (short subframe, short page, short &svpgid) noexcept |
static bool | subframeConvert (const long input[10], int gpsWeek, double output[60]) noexcept |
static bool | subframeConvert (const uint32_t input[10], short gpsWeek, double output[60]) noexcept |
static bool | subframeParity (const long input[10]) |
This is the old routine only left around for compatibility. More... | |
static bool | sv2page (short svpgid, short &subframe, short &page) noexcept |
static bool | zcount2page (unsigned long zcount, short &subframe, short &page) noexcept |
Public Attributes | |
bool | haveSubframe [3] |
bool | isFIC |
uint32_t | subframeStore [3][10] |
Ephemeris overhead information | |
unsigned short | tlm_message [3] |
std::string | satSys |
short | PRNID |
short | tracker |
long | HOWtime [3] |
short | ASalert [3] |
short | weeknum |
short | codeflags |
short | health |
short | L2Pdata |
short | IODC |
short | IODE |
long | AODO |
short | fitint |
double | Tgd |
short | accFlagTmp |
BrcClockCorrection | bcClock |
Clock information. More... | |
BrcKeplerOrbit | orbit |
Orbit parameters. More... | |
std::ostream & | operator<< (std::ostream &s, const EngEphemeris &eph) |
Additional Inherited Members | |
![]() | |
enum | BitConvertType { BITS8 = 0, BITS10 = 1 } |
This enumeration is used by the convertXBit() method. More... | |
|
noexcept |
Default constructor.
Definition at line 62 of file EngEphemeris.cpp.
|
inlinevirtual |
Destructor.
Definition at line 94 of file EngEphemeris.hpp.
bool gnsstk::EngEphemeris::addIncompleteSF1Thru3 | ( | const uint32_t | sf1[8], |
const uint32_t | sf2[8], | ||
const uint32_t | sf3[8], | ||
const long | sf1TransmitSOW, | ||
const int | gpsWeek, | ||
const short | PRN, | ||
const short | track | ||
) |
Store a subframe in this object. This method is provided in order to provide a path to a EngEphemeris object for cases where a receiver only provides words 3-10 of subframes 1-3.
sf1 | words 3-10 of navigation subframe1 stored in the 30 least-significant bits of each array index. |
sf2 | words 3-10 of navigation subframe 2 |
sf3 | words 3-10 of navigation subframe 3 |
sf1TransmitSOW | time (in GPS seconds of week) corresponding to leading edge of first bit of subframe 1 |
gpsWeek | full GPS week number. |
PRN | PRN ID of source satellite. |
track | tracker number (typically receiver channel number). |
Definition at line 201 of file EngEphemeris.cpp.
bool gnsstk::EngEphemeris::addSubframe | ( | const uint32_t | subframe[10], |
const int | gpsWeek, | ||
const short | PRN, | ||
const short | track | ||
) |
Store a subframe in this object.
subframe | ten word navigation subframe stored in the 30 least-significant bits of each array index. |
gpsWeek | full GPS week number. |
PRN | PRN ID of source satellite. |
track | tracking number (typically receiver channel number). |
InvalidParameter | if subframe is valid but not subframe 1-3. |
Historically, EngEphemeris allowed calling programs to add data one subframe at a time. This functionality does not exist in KeplerOrbit and BroadcastClockCorrection. Therefore, EngEphemeris must handle the subframe collection overhead before calling BrcKeplerOrbit.loadData() and BrcClockCorrection.loadData().
Note: Historically, the gpsWeek in the calling parameters to addSubframe is the full week number associated with the TRANSMIT time (not the epoch times).
Definition at line 146 of file EngEphemeris.cpp.
bool gnsstk::EngEphemeris::addSubframeNoParity | ( | const uint32_t | subframe[10], |
const int | gpsWeek, | ||
const short | PRN, | ||
const short | track | ||
) |
Store a subframe in this object. This method is provided in order to allow construction of an EngEphemeris object for cases where a receiver only provides the 24 msb of each word and strips the parity.
subframe | ten word navigation subframe (minus the six parity bits) stored in the 24 least-significant bits of each array index. |
gpsWeek | full GPS week number. |
PRN | PRN ID of source satellite. |
track | tracking number (typically receiver channel number). |
InvalidParameter | if subframe is valid but not subframe 1-3. |
Definition at line 181 of file EngEphemeris.cpp.
void gnsstk::EngEphemeris::dump | ( | std::ostream & | s = std::cout | ) | const |
Output the contents of this ephemeris to the given stream.
InvalidRequest |
Definition at line 1438 of file EngEphemeris.cpp.
void gnsstk::EngEphemeris::dumpTerse | ( | std::ostream & | s = std::cout | ) | const |
InvalidRequest |
Definition at line 1398 of file EngEphemeris.cpp.
double gnsstk::EngEphemeris::getA | ( | ) | const |
This function returns the value of the semi-major axis in meters.
InvalidRequest |
Definition at line 915 of file EngEphemeris.cpp.
short gnsstk::EngEphemeris::getAccFlag | ( | ) | const |
This function returns the flag based on the SV accuracy flag as it appears in the nav message.
InvalidRequest |
Definition at line 695 of file EngEphemeris.cpp.
double gnsstk::EngEphemeris::getAccuracy | ( | ) | const |
This function returns the value of the SV accuracy (m) computed from the accuracy flag in the nav message, or as set by the setAccuracy() method.
InvalidRequest |
Definition at line 685 of file EngEphemeris.cpp.
double gnsstk::EngEphemeris::getAf0 | ( | ) | const |
This function returns the SV clock error in seconds.
InvalidRequest |
Definition at line 765 of file EngEphemeris.cpp.
double gnsstk::EngEphemeris::getAf1 | ( | ) | const |
This function returns the SV clock drift in seconds/seconds.
InvalidRequest |
Definition at line 775 of file EngEphemeris.cpp.
double gnsstk::EngEphemeris::getAf2 | ( | ) | const |
This function returns the SV clock rate of change of the drift in seconds/(seconds*seconds).
InvalidRequest |
Definition at line 785 of file EngEphemeris.cpp.
double gnsstk::EngEphemeris::getAhalf | ( | ) | const |
This function returns the value of the square root of the semi-major axis in square root of meters.
InvalidRequest |
Definition at line 905 of file EngEphemeris.cpp.
long gnsstk::EngEphemeris::getAODO | ( | ) | const |
This function return the AODO for the ephemeris.
InvalidRequest |
Definition at line 745 of file EngEphemeris.cpp.
short gnsstk::EngEphemeris::getASAlert | ( | short | subframe | ) | const |
This function returns the A-S alert flag for either subframe 1 or 2 or 3.
InvalidRequest |
Definition at line 654 of file EngEphemeris.cpp.
double gnsstk::EngEphemeris::getCic | ( | ) | const |
This function returns the value of the cosine inclination harmonic perturbation in radians.
InvalidRequest |
Definition at line 855 of file EngEphemeris.cpp.
double gnsstk::EngEphemeris::getCis | ( | ) | const |
This function returns the value of the sine inclination harmonic perturbation in radians.
InvalidRequest |
Definition at line 825 of file EngEphemeris.cpp.
BrcClockCorrection gnsstk::EngEphemeris::getClock | ( | ) | const |
InvalidRequest |
Definition at line 608 of file EngEphemeris.cpp.
short gnsstk::EngEphemeris::getCodeFlags | ( | ) | const |
This function returns the values of the L2 codes.
InvalidRequest |
Definition at line 675 of file EngEphemeris.cpp.
double gnsstk::EngEphemeris::getCrc | ( | ) | const |
This function returns the value of the cosine radius harmonic perturbation in meters.
InvalidRequest |
Definition at line 835 of file EngEphemeris.cpp.
double gnsstk::EngEphemeris::getCrs | ( | ) | const |
This function returns the value of the sine radius harmonic perturbation in meters.
InvalidRequest |
Definition at line 815 of file EngEphemeris.cpp.
double gnsstk::EngEphemeris::getCuc | ( | ) | const |
This function returns the value of the cosine latitude harmonic perturbation in radians.
InvalidRequest |
Definition at line 845 of file EngEphemeris.cpp.
double gnsstk::EngEphemeris::getCus | ( | ) | const |
This function returns the value of the sine latitude harmonic perturbation in radians.
InvalidRequest |
Definition at line 805 of file EngEphemeris.cpp.
double gnsstk::EngEphemeris::getDn | ( | ) | const |
This function returns the value of the correction to the mean motion in radians/second.
InvalidRequest |
Definition at line 885 of file EngEphemeris.cpp.
double gnsstk::EngEphemeris::getEcc | ( | ) | const |
This function returns the value of the eccentricity.
InvalidRequest |
Definition at line 895 of file EngEphemeris.cpp.
CommonTime gnsstk::EngEphemeris::getEphemerisEpoch | ( | ) | const |
Extracts the epoch time from this ephemeris, correcting for half weeks and HOW time
InvalidRequest |
Definition at line 593 of file EngEphemeris.cpp.
CommonTime gnsstk::EngEphemeris::getEpochTime | ( | ) | const |
Extracts the epoch time (time of clock) from this ephemeris, correcting for half weeks and HOW time
InvalidRequest |
Definition at line 588 of file EngEphemeris.cpp.
short gnsstk::EngEphemeris::getFitInt | ( | ) | const |
This function returns the value of the fit interval flag.
InvalidRequest |
Definition at line 975 of file EngEphemeris.cpp.
short gnsstk::EngEphemeris::getFitInterval | ( | ) | const |
This computes and returns the fit interval for the satellite ephemeris from the IODC and the fit interval flag. This fit interval is (typically) centered around the Toe (time of ephemeris) for the ephemeris. See IS-GPS-200 section 20.3.4.4, Table 20-XIA and section 20.3.3.4.3.1 for more information.
InvalidRequest | if data is missing. |
Definition at line 428 of file EngEphemeris.cpp.
|
static |
Static version of the above.
iodc | the IODC of the ephemeris. |
fiti | the fit interval flag of same ephemeris. |
InvalidRequest | if data is missing. |
This is for Block II/IIA Need update for Block IIR and IIF
Definition at line 437 of file EngEphemeris.cpp.
short gnsstk::EngEphemeris::getFullWeek | ( | ) | const |
This function returns the GPS week number contained in subframe 1. this is the full GPS week (ie > 10 bits).
InvalidRequest |
Definition at line 665 of file EngEphemeris.cpp.
short gnsstk::EngEphemeris::getHealth | ( | ) | const |
This function returns the value of the SV health flag.
InvalidRequest |
Definition at line 705 of file EngEphemeris.cpp.
double gnsstk::EngEphemeris::getHOWTime | ( | short | subframe | ) | const |
This function returns the time of the HOW in subframe 1 or 2 or 3 in seconds of week.
InvalidRequest |
Definition at line 639 of file EngEphemeris.cpp.
double gnsstk::EngEphemeris::getI0 | ( | ) | const |
This function returns the value of the inclination in radians.
InvalidRequest |
Definition at line 935 of file EngEphemeris.cpp.
double gnsstk::EngEphemeris::getIDot | ( | ) | const |
This function returns the value of the rate of the inclination in radians/second.
InvalidRequest |
Definition at line 965 of file EngEphemeris.cpp.
short gnsstk::EngEphemeris::getIODC | ( | ) | const |
This function returns the IODC for the given PRN.
InvalidRequest |
Definition at line 725 of file EngEphemeris.cpp.
short gnsstk::EngEphemeris::getIODE | ( | ) | const |
This function return the IODE for the ephemeris.
InvalidRequest |
Definition at line 735 of file EngEphemeris.cpp.
short gnsstk::EngEphemeris::getL2Pdata | ( | ) | const |
This function returns the value of the L2 P-code data flag.
InvalidRequest |
Definition at line 715 of file EngEphemeris.cpp.
double gnsstk::EngEphemeris::getM0 | ( | ) | const |
This function returns the value of the mean anomaly in radians.
InvalidRequest |
Definition at line 875 of file EngEphemeris.cpp.
double gnsstk::EngEphemeris::getOmega0 | ( | ) | const |
This function returns the value of the right ascension of the ascending node in radians.
InvalidRequest |
Definition at line 925 of file EngEphemeris.cpp.
double gnsstk::EngEphemeris::getOmegaDot | ( | ) | const |
This function returns the value of the rate of the right ascension of the ascending node in radians/second.
InvalidRequest |
Definition at line 955 of file EngEphemeris.cpp.
BrcKeplerOrbit gnsstk::EngEphemeris::getOrbit | ( | ) | const |
InvalidRequest |
Definition at line 598 of file EngEphemeris.cpp.
short gnsstk::EngEphemeris::getPRNID | ( | ) | const |
This function returns the PRN ID of the SV.
InvalidRequest |
Definition at line 619 of file EngEphemeris.cpp.
|
inlinenoexcept |
This functions returns the GNSS type (satellite system code)
Definition at line 270 of file EngEphemeris.hpp.
double gnsstk::EngEphemeris::getTgd | ( | ) | const |
This function returns the value of the group delay differential in seconds.
InvalidRequest |
Definition at line 795 of file EngEphemeris.cpp.
|
inlinenoexcept |
used for template functions
Definition at line 265 of file EngEphemeris.hpp.
unsigned gnsstk::EngEphemeris::getTLMMessage | ( | short | subframe | ) | const |
Return the lower 16 bits of the TLM word for the given subframe.
InvalidRequest |
Definition at line 557 of file EngEphemeris.cpp.
|
inlinenoexcept |
Return 0x8b, the upper 5 bits of the 22-bit TLM word.
Definition at line 238 of file EngEphemeris.hpp.
double gnsstk::EngEphemeris::getToc | ( | ) | const |
This function returns the clock epoch in GPS seconds of week.
InvalidRequest |
Definition at line 755 of file EngEphemeris.cpp.
double gnsstk::EngEphemeris::getToe | ( | ) | const |
This function returns the value of the time of ephemeris in GPS seconds of week.
InvalidRequest |
Definition at line 865 of file EngEphemeris.cpp.
long gnsstk::EngEphemeris::getTot | ( | ) | const |
This function returns the value of the ephemeris key that is used to sort the ephemerides when they are stored in the bcetable.
This function returnst the value of the Time of Transmit. Basically just the earliest of the HOWs.
InvalidRequest |
Definition at line 985 of file EngEphemeris.cpp.
short gnsstk::EngEphemeris::getTracker | ( | ) | const |
This function returns the tracker number.
InvalidRequest |
Definition at line 629 of file EngEphemeris.cpp.
CommonTime gnsstk::EngEphemeris::getTransmitTime | ( | ) | const |
Extracts the transmit time from the ephemeris using the Tot
InvalidRequest |
Definition at line 568 of file EngEphemeris.cpp.
double gnsstk::EngEphemeris::getW | ( | ) | const |
This function returns the value of the argument of perigee in radians.
InvalidRequest |
Definition at line 945 of file EngEphemeris.cpp.
bool gnsstk::EngEphemeris::isData | ( | short | subframe | ) | const |
Query presence of subframe in this object.
subframe | subframe ID (1-3) to check. |
InvalidParameter | if subframe is not a valid ephemeris subframe number. |
Definition at line 396 of file EngEphemeris.cpp.
bool gnsstk::EngEphemeris::isDataSet | ( | ) | const |
Return whether the ephemeris contains a complete data set, i.e. whether the ephemeris contains subframes 1-3 with matching IODC and IODE values.
Definition at line 408 of file EngEphemeris.cpp.
|
noexcept |
Checks all quantities (present or not) to determine whether they fall within the effective range as described in the IS-GPS-200.
Definition at line 377 of file EngEphemeris.cpp.
EngEphemeris & gnsstk::EngEphemeris::loadData | ( | const std::string | satSysArg, |
const unsigned short | tlm[3], | ||
const long | how[3], | ||
const short | asalert[3], | ||
const short | Tracker, | ||
const short | prn, | ||
const short | fullweek, | ||
const short | cflags, | ||
const short | acc, | ||
const short | svhealth, | ||
const short | iodc, | ||
const short | l2pdata, | ||
const long | Aodo, | ||
const double | tgd, | ||
const double | toc, | ||
const double | Af2, | ||
const double | Af1, | ||
const double | Af0, | ||
const short | iode, | ||
const double | crs, | ||
const double | Dn, | ||
const double | m0, | ||
const double | cuc, | ||
const double | Ecc, | ||
const double | cus, | ||
const double | ahalf, | ||
const double | toe, | ||
const short | fitInt, | ||
const double | cic, | ||
const double | Omega0, | ||
const double | cis, | ||
const double | I0, | ||
const double | crc, | ||
const double | W, | ||
const double | OmegaDot, | ||
const double | IDot | ||
) |
Set the values contained in SubFrame 1,2 and 3.
Values contained in SubFrame 1.
tlm | the new value for the TLM word |
how | the new value for the HOW |
asalert | the new value for the A-S alert flag |
fullweek | the new value for the full GPS week |
cflags | the nve values for the L2 code flags |
acc | the new value for the SV accuracy flag |
svhealth | the new value for the SV health |
iodc | the new value for the IODC |
l2pdata | the new value for the L2 P-code data flag |
tgd | the new value for the Tgd |
toc | the new value for the clock epoch |
Af2 | the new value for Af2 |
Af1 | the new value for Af1 |
Af0 | the new value for Af0 |
Tracker | the new value of the tracker number |
prn | the new value of the PRN ID |
Values contained in SubFrame 2.
tlm | the new value for the TLM word |
how | the new value for the HOW |
asalert | the new falue for the A-S alert flag |
iode | the new value for the IODE |
crs | the new value for the Crs |
m0 | the new value for M0 |
Dn | the new value for Dn |
cuc | the new value for the Cuc |
Ecc | the new value for the Ecc |
cus | the new value for the Cus |
ahalf | the new value for Ahalf |
toe | the new value for the Toe |
fitInt | the new value for the fit interval flag |
Values contained in SubFrame 3.
tlm | the new value for the TLM word |
how | the new value for the HOW |
asalert | the new falue for the A-S alert flag |
cic | the new value for the Cic |
Omega0 | the enw value for Omega0 |
cis | the new value for the Cis |
I0 | the new value for I0 |
crc | the new value for the Crc |
W | the new value for W |
OmegaDot | the new value for OmegaDot |
IDot | the new value for IDot |
InvalidRequest |
Definition at line 1019 of file EngEphemeris.cpp.
|
inlinenoexcept |
Definition at line 97 of file EngEphemeris.hpp.
|
noexcept |
Definition at line 101 of file EngEphemeris.cpp.
void gnsstk::EngEphemeris::setAccuracy | ( | double | acc | ) |
Set the value of the SV accuracy (in meters). This is the only "set" method and is provided so that one can set the SV accuracy directly and thereby override the conversion of the SV accuracy flag to meters. This is usually used when entering data from some source other than an SV nav message.
acc | the new value of SV accuracy in meters. |
InvalidParameter | if the given accuracy value is invalid. |
Definition at line 417 of file EngEphemeris.cpp.
void gnsstk::EngEphemeris::setFIC | ( | const bool | arg | ) |
Definition at line 1334 of file EngEphemeris.cpp.
EngEphemeris & gnsstk::EngEphemeris::setSF1 | ( | unsigned | tlm, |
double | how, | ||
short | asalert, | ||
short | fullweek, | ||
short | cflags, | ||
short | acc, | ||
short | svhealth, | ||
short | iodc, | ||
short | l2pdata, | ||
double | tgd, | ||
double | toc, | ||
double | Af2, | ||
double | Af1, | ||
double | Af0, | ||
short | Tracker, | ||
short | prn | ||
) |
Definition at line 1108 of file EngEphemeris.cpp.
EngEphemeris & gnsstk::EngEphemeris::setSF2 | ( | unsigned | tlm, |
double | how, | ||
short | asalert, | ||
short | iode, | ||
double | crs, | ||
double | Dn, | ||
double | m0, | ||
double | cuc, | ||
double | Ecc, | ||
double | cus, | ||
double | ahalf, | ||
double | toe, | ||
short | fitInt | ||
) |
Definition at line 1161 of file EngEphemeris.cpp.
EngEphemeris & gnsstk::EngEphemeris::setSF3 | ( | unsigned | tlm, |
double | how, | ||
short | asalert, | ||
double | cic, | ||
double | Omega0, | ||
double | cis, | ||
double | I0, | ||
double | crc, | ||
double | W, | ||
double | OmegaDot, | ||
double | IDot | ||
) |
Definition at line 1247 of file EngEphemeris.cpp.
double gnsstk::EngEphemeris::svClockBias | ( | const CommonTime & | t | ) | const |
Compute the satellite clock bias (sec) at the given time
InvalidRequest | if a required subframe has not been stored. |
Definition at line 547 of file EngEphemeris.cpp.
double gnsstk::EngEphemeris::svClockDrift | ( | const CommonTime & | t | ) | const |
Compute the satellite clock drift (sec/sec) at the given time
InvalidRequest | if a required subframe has not been stored. |
Definition at line 552 of file EngEphemeris.cpp.
double gnsstk::EngEphemeris::svRelativity | ( | const CommonTime & | t | ) | const |
Compute satellite relativity correction (sec) at the given time
InvalidRequest | if a required subframe has not been stored. |
Definition at line 542 of file EngEphemeris.cpp.
Xvt gnsstk::EngEphemeris::svXvt | ( | const CommonTime & | t | ) | const |
Compute satellite position & velocity at the given time using this ephemeris.
InvalidRequest | if a required subframe has not been stored. |
Definition at line 525 of file EngEphemeris.cpp.
Each of the addSubframe( ) methods eventually calls unifiedConvert( ) in order to crack the raw subframe data into engineering units and load the orbit and clock objects.
Definition at line 254 of file EngEphemeris.cpp.
|
friend |
short gnsstk::EngEphemeris::accFlagTmp |
Definition at line 653 of file EngEphemeris.hpp.
long gnsstk::EngEphemeris::AODO |
Age of Data Offset for NMCT
Definition at line 647 of file EngEphemeris.hpp.
short gnsstk::EngEphemeris::ASalert[3] |
A-S and "alert" flags for each subframe. 2 bit quantity with alert flag the high order bit and the A-S flag low order bit
Definition at line 636 of file EngEphemeris.hpp.
BrcClockCorrection gnsstk::EngEphemeris::bcClock |
Clock information.
Definition at line 663 of file EngEphemeris.hpp.
short gnsstk::EngEphemeris::codeflags |
L2 codes
Definition at line 642 of file EngEphemeris.hpp.
short gnsstk::EngEphemeris::fitint |
Fit interval flag
Definition at line 648 of file EngEphemeris.hpp.
bool gnsstk::EngEphemeris::haveSubframe[3] |
flags indicating presence of a subframe
Definition at line 620 of file EngEphemeris.hpp.
short gnsstk::EngEphemeris::health |
SV health
Definition at line 643 of file EngEphemeris.hpp.
long gnsstk::EngEphemeris::HOWtime[3] |
Time of subframe 1-3 (sec of week)
Definition at line 635 of file EngEphemeris.hpp.
short gnsstk::EngEphemeris::IODC |
Index of data-clock
Definition at line 645 of file EngEphemeris.hpp.
short gnsstk::EngEphemeris::IODE |
Index of data-eph
Definition at line 646 of file EngEphemeris.hpp.
bool gnsstk::EngEphemeris::isFIC |
Definition at line 627 of file EngEphemeris.hpp.
short gnsstk::EngEphemeris::L2Pdata |
L2 P data flag
Definition at line 644 of file EngEphemeris.hpp.
BrcKeplerOrbit gnsstk::EngEphemeris::orbit |
Orbit parameters.
Definition at line 666 of file EngEphemeris.hpp.
short gnsstk::EngEphemeris::PRNID |
SV PRN ID
Definition at line 633 of file EngEphemeris.hpp.
std::string gnsstk::EngEphemeris::satSys |
GNSS (satellite system)
Definition at line 632 of file EngEphemeris.hpp.
uint32_t gnsstk::EngEphemeris::subframeStore[3][10] |
Definition at line 625 of file EngEphemeris.hpp.
double gnsstk::EngEphemeris::Tgd |
L1 and L2 correction term
Definition at line 649 of file EngEphemeris.hpp.
unsigned short gnsstk::EngEphemeris::tlm_message[3] |
Definition at line 631 of file EngEphemeris.hpp.
short gnsstk::EngEphemeris::tracker |
Tracker number
Definition at line 634 of file EngEphemeris.hpp.
short gnsstk::EngEphemeris::weeknum |
GPS full week number that corresponds to the HOWtime of SF1
Definition at line 640 of file EngEphemeris.hpp.