Public Member Functions | Static Public Member Functions | Public Attributes | Protected Attributes | List of all members
gnsstk::InterSigCorr Class Reference

Detailed Description

Class representing SV-based inter-signal bias correction information.

Note
All ObsIDs added to refOids or validOids should change the "type" field to "Unknown", and all derived classes that override the getISC methods should also make copies of the input ObsID parameters and set the type to unknown in order to consistently match.

Definition at line 106 of file InterSigCorr.hpp.

#include <InterSigCorr.hpp>

Inheritance diagram for gnsstk::InterSigCorr:
Inheritance graph
[legend]

Public Member Functions

std::list< std::string > compare (const NavDataPtr &right) const override
 
void dump (std::ostream &s, DumpDetail dl) const override
 
virtual void dumpCorrections (std::ostream &s) const
 
virtual bool getISC (const ObsID &oid, double &corrOut) const
 
virtual bool getISC (const ObsID &oid1, const ObsID &oid2, double &corrOut) const
 
 InterSigCorr ()
 Set message type to ISC. More...
 
bool isSameData (const NavDataPtr &right) const override
 
- Public Member Functions inherited from gnsstk::NavData
virtual NavDataPtr clone () const =0
 Create a deep copy of this object, whatever it truly is. More...
 
virtual std::string getClassName () const
 
std::string getDumpTime (DumpDetail dl, const CommonTime &t) const
 
std::string getDumpTimeHdr (DumpDetail dl) const
 
virtual CommonTime getNearTime () const
 
std::string getSignalString () const
 
bool getSVN (const SatID &sat, const gnsstk::CommonTime &when, std::string &svn) const
 
virtual CommonTime getUserTime () const
 
 NavData ()
 Initialize internal data fields. More...
 
virtual bool validate () const =0
 

Static Public Member Functions

static double getGPSISC (const PackedNavBitsPtr &navIn, unsigned startBit)
 
- Static Public Member Functions inherited from gnsstk::NavData
static gnsstk::SatMetaDataStoregetSatMetaDataStore ()
 Accessor for python. More...
 
static void setSatMetaDataStore (gnsstk::SatMetaDataStore *smds)
 Accessor for python. More...
 

Public Attributes

double isc
 
std::string iscLabel
 
- Public Attributes inherited from gnsstk::NavData
NavMessageID signal
 Source signal identification for this navigation message data. More...
 
CommonTime timeStamp
 
std::string weekFmt
 

Protected Attributes

std::set< ObsIDrefOids
 
std::set< ObsIDvalidOids
 
- Protected Attributes inherited from gnsstk::NavData
double msgLenSec
 

Additional Inherited Members

- Static Public Attributes inherited from gnsstk::NavData
static const GNSSTK_EXPORT std::string dumpTimeFmt
 Time format used for the dump method (Full). More...
 
static const GNSSTK_EXPORT std::string dumpTimeFmtBrief
 Time format used for the dump method (Brief). More...
 
static GNSSTK_EXPORT gnsstk::SatMetaDataStoresatMetaDataStore = nullptr
 Set this to a valid store to get PRN->SVN translations in dump(). More...
 

Constructor & Destructor Documentation

◆ InterSigCorr()

gnsstk::InterSigCorr::InterSigCorr ( )

Set message type to ISC.

Definition at line 49 of file InterSigCorr.cpp.

Member Function Documentation

◆ compare()

std::list<std::string> gnsstk::InterSigCorr::compare ( const NavDataPtr right) const
inlineoverridevirtual

Compare two NavData descendent objects. Any differences are summarized and returned as a list of readable text.

Parameters
[in]rightThe data to compare against.
Returns
a text list of mismatched data.
Note
We use shared_ptr to allow for casting without risking memory leaks.

Reimplemented from gnsstk::NavData.

Definition at line 162 of file InterSigCorr.hpp.

◆ dump()

void gnsstk::InterSigCorr::dump ( std::ostream &  s,
DumpDetail  dl 
) const
overridevirtual

Print the contents of this object in a human-readable format.

Parameters
[in,out]sThe stream to write the data to.
[in]dlThe level of detail the output should contain.

Reimplemented from gnsstk::NavData.

Definition at line 58 of file InterSigCorr.cpp.

◆ dumpCorrections()

void gnsstk::InterSigCorr::dumpCorrections ( std::ostream &  s) const
virtual

Print the actual corrections provided by this object in a human-readable format. Typically called by dump().

Parameters
[in,out]sThe stream to write the data to.

Reimplemented in gnsstk::BDSD1NavISC, gnsstk::BDSD2NavISC, gnsstk::GalFNavISC, gnsstk::GalINavISC, gnsstk::GPSCNav2ISC, and gnsstk::GPSCNavISC.

Definition at line 94 of file InterSigCorr.cpp.

◆ getGPSISC()

double gnsstk::InterSigCorr::getGPSISC ( const PackedNavBitsPtr navIn,
unsigned  startBit 
)
static

Decode a GPS ISC/Tgd value, setting the result to NaN if the bits match the pattern b1_0000_0000_0000, which indicates not available.

Note
Value is expected to be 13 bits with a scale factor of 2^-35.
Parameters
[in]navInThe PackedNavBits data to process.
[in]startBitThe first bit in navIn containing the Tgd/ISC.
Returns
The ISC value, which may be NaN.

Definition at line 143 of file InterSigCorr.cpp.

◆ getISC() [1/2]

bool gnsstk::InterSigCorr::getISC ( const ObsID oid,
double &  corrOut 
) const
virtual

Get inter-signal corrections for the single-frequency user.

Parameters
[in]oidThe carrier band and tracking code of the signal to get the correction for.
[out]corrOutThe correction in seconds for the given band/code.
Returns
true If band/code are valid for this object and corrOut was set according to available data.

Reimplemented in gnsstk::BDSD1NavISC, gnsstk::BDSD2NavISC, gnsstk::GalFNavISC, gnsstk::GalINavISC, gnsstk::GLOFNavISC, gnsstk::GPSCNav2ISC, and gnsstk::GPSCNavISC.

Definition at line 107 of file InterSigCorr.cpp.

◆ getISC() [2/2]

bool gnsstk::InterSigCorr::getISC ( const ObsID oid1,
const ObsID oid2,
double &  corrOut 
) const
virtual

Get inter-signal corrections for the dual-frequency user.

Parameters
[in]oid1The carrier band/tracking code of the primary signal that was used to create a dual-frequency, iono-free combined pseudorange.
[in]oid2The carrier band/tracking code of the secondary signal to get the correction for.
[out]corrOutThe correction in seconds for the given band/code pair.
Returns
true If bands/codes are valid for this object and corrOut was set according to available data.

Reimplemented in gnsstk::GalFNavISC, gnsstk::GalINavISC, gnsstk::BDSD1NavISC, gnsstk::BDSD2NavISC, gnsstk::GLOFNavISC, gnsstk::GPSCNav2ISC, and gnsstk::GPSCNavISC.

Definition at line 134 of file InterSigCorr.cpp.

◆ isSameData()

bool gnsstk::InterSigCorr::isSameData ( const NavDataPtr right) const
inlineoverridevirtual

Returns true if this two objects are

  1. same concrete type, and
  2. same data contents. This is intended as a "data uniqueness test" to allow detection of successive transmissions of same data and avoid duplicate storage. The exact rules for uniqueness will vary by descendent class.
    Note
    We use shared_ptr to allow for casting without risking memory leaks.

Reimplemented from gnsstk::NavData.

Definition at line 156 of file InterSigCorr.hpp.

Member Data Documentation

◆ isc

double gnsstk::InterSigCorr::isc

The inter-signal correction value from the navigation data (sometimes known as TGD or BGD).

Definition at line 171 of file InterSigCorr.hpp.

◆ iscLabel

std::string gnsstk::InterSigCorr::iscLabel

Label for the ISC value when dumping. May be changed by derived classes. Length should be less than 20 characters.

Definition at line 176 of file InterSigCorr.hpp.

◆ refOids

std::set<ObsID> gnsstk::InterSigCorr::refOids
protected

The reference signals to which this ISC applies. These must be all on the same band, though there are no explicit sanity checks for this.

Definition at line 182 of file InterSigCorr.hpp.

◆ validOids

std::set<ObsID> gnsstk::InterSigCorr::validOids
protected

The set of band/code combinations to which this ISC can be referenced.

Definition at line 185 of file InterSigCorr.hpp.


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


gnsstk
Author(s):
autogenerated on Wed Oct 25 2023 02:40:45