Public Member Functions | Static Public Member Functions | List of all members
gnsstk::YumaNavDataFactory Class Reference

Detailed Description

Factory class for loading Yuma nav data.

Note
While in theory Y code and P code LNav are supported, Yuma nav does not support the identification of the codes contained in the files. As such, this factory only "produces" L1 C/A tagged data for LNav.

Definition at line 54 of file YumaNavDataFactory.hpp.

#include <YumaNavDataFactory.hpp>

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

Public Member Functions

std::string getFactoryFormats () const override
 Return a comma-separated list of formats supported by this factory. More...
 
bool loadIntoMap (const std::string &filename, NavMessageMap &navMap, NavNearMessageMap &navNearMap, OffsetCvtMap &ofsMap) override
 
bool process (const std::string &filename, NavDataFactoryCallback &cb) override
 
 YumaNavDataFactory ()
 
virtual ~YumaNavDataFactory ()
 Clean up. More...
 
- Public Member Functions inherited from gnsstk::NavDataFactoryWithStoreFile
bool addDataSource (const std::string &source) override
 
 NavDataFactoryWithStoreFile ()
 
virtual ~NavDataFactoryWithStoreFile ()
 Clean up. More...
 
- Public Member Functions inherited from gnsstk::NavDataFactoryWithStore
bool addNavData (const NavDataPtr &nd)
 
bool addNavData (const NavDataPtr &nd, NavMessageMap &navMap, NavNearMessageMap &navNearMap, OffsetCvtMap &ofsMap)
 
void clear () override
 Remove all data from the internal store. More...
 
virtual size_t count (const NavMessageID &nmid) const
 
virtual size_t count (const SatID &satID, NavMessageType nmt=NavMessageType::Unknown) const
 
virtual size_t count (NavMessageType nmt) const
 
virtual size_t count (SatelliteSystem sys, NavMessageType nmt=NavMessageType::Unknown) const
 
void dump (std::ostream &s, DumpDetail dl) const override
 
void edit (const CommonTime &fromTime, const CommonTime &toTime) override
 
void edit (const CommonTime &fromTime, const CommonTime &toTime, const NavSatelliteID &satID) override
 
void edit (const CommonTime &fromTime, const CommonTime &toTime, const NavSignalID &signal) override
 
bool find (const NavMessageID &nmid, const CommonTime &when, NavDataPtr &navOut, SVHealth xmitHealth, NavValidityType valid, NavSearchOrder order) override
 
NavMessageIDSet getAvailableMsgs (const CommonTime &fromTime, const CommonTime &toTime) const override
 
NavSatelliteIDSet getAvailableSats (const CommonTime &fromTime, const CommonTime &toTime) const override
 
NavSatelliteIDSet getAvailableSats (NavMessageType nmt, const CommonTime &fromTime, const CommonTime &toTime) const override
 
CommonTime getFinalTime () const override
 
CommonTime getFirstTime (const SatID &sat) const
 
std::set< SatIDgetIndexSet (const CommonTime &fromTime, const CommonTime &toTime) const
 
std::set< SatIDgetIndexSet (NavMessageType nmt, const CommonTime &fromTime, const CommonTime &toTime) const
 
CommonTime getInitialTime () const override
 
CommonTime getLastTime (const SatID &sat) const
 
const NavMapgetNavMap (const NavMessageID &nmid) const
 
const NavMessageMapgetNavMessageMap () const
 Get read-only access to the nav data map (User priority). More...
 
const NavNearMessageMapgetNavNearMessageMap () const
 Get read-only access to the nav data map (Nearest priority). More...
 
bool getOffset (TimeSystem fromSys, TimeSystem toSys, const CommonTime &when, NavDataPtr &offset, SVHealth xmitHealth=SVHealth::Any, NavValidityType valid=NavValidityType::ValidOnly) override
 
const OffsetCvtMapgetTimeOffsetMap () const
 Get read-only access to the time offset map. More...
 
 NavDataFactoryWithStore ()
 Initialize internal data. More...
 
virtual size_t numSatellites () const
 Return the number of distinct signals including PRN, in the data. More...
 
virtual size_t numSignals () const
 Return the number of distinct signals (ignoring PRN) in the data. More...
 
virtual size_t size () const
 Return the number of nav messages in data. More...
 
virtual ~NavDataFactoryWithStore ()
 Clean up. More...
 
- Public Member Functions inherited from gnsstk::NavDataFactory
virtual void addTypeFilter (NavMessageType nmt)
 
virtual void clearTypeFilter ()
 
virtual std::string getClassName () const
 Returns the fully-qualified class name. Used for debugging. More...
 
std::set< SatIDgetIndexSet (const CommonTime &fromTime, const CommonTime &toTime) const
 
std::set< SatIDgetIndexSet (NavMessageType nmt, const CommonTime &fromTime, const CommonTime &toTime) const
 
NavMessageTypeSet getTypeFilter () const
 
virtual bool isPresent (const NavMessageID &nmid, const CommonTime &fromTime, const CommonTime &toTime)
 
virtual bool isTypePresent (NavMessageType nmt, const NavSatelliteID &satID, const CommonTime &fromTime, const CommonTime &toTime)
 
 NavDataFactory ()
 
virtual void setControl (const FactoryControl &ctrl)
 
virtual void setTypeFilter (const NavMessageTypeSet &nmts)
 
virtual void setValidityFilter (NavValidityType nvt)
 
virtual ~NavDataFactory ()
 Clean up. More...
 

Static Public Member Functions

static bool convertToHealth (const YumaData &navIn, NavDataPtr &healthOut)
 
static bool convertToOrbit (const YumaData &navIn, NavDataPtr &navOut)
 
static void fillNavData (const YumaData &navIn, NavDataPtr &navOut)
 

Additional Inherited Members

- Public Types inherited from gnsstk::NavDataFactoryWithStore
typedef std::map< TimeCvtKey, OffsetEpochMapOffsetCvtMap
 Map from the time system conversion pair to the conversion objects. More...
 
typedef std::map< CommonTime, OffsetMapOffsetEpochMap
 
typedef std::map< NavSatelliteID, NavDataPtrOffsetMap
 
- Public Attributes inherited from gnsstk::NavDataFactory
NavSignalSet supportedSignals
 
- Protected Member Functions inherited from gnsstk::NavDataFactoryWithStore
virtual bool findNearest (const NavMessageID &nmid, const CommonTime &when, NavDataPtr &navData, SVHealth xmitHealth, NavValidityType valid)
 
virtual bool findUser (const NavMessageID &nmid, const CommonTime &when, NavDataPtr &navData, SVHealth xmitHealth, NavValidityType valid)
 
bool matchHealth (NavData *ndp, SVHealth xmitHealth)
 
bool updateInitialFinal (const CommonTime &begin, const CommonTime &end)
 
bool validityCheck (const NavDataPtr &ndp, NavValidityType valid, SVHealth xmitHealth, const CommonTime &when)
 
bool validityCheck (const NavMap::iterator &ti, NavMap &nm, NavValidityType valid, SVHealth xmitHealth, const CommonTime &when)
 
- Protected Attributes inherited from gnsstk::NavDataFactoryWithStore
NavMessageMap data
 Internal storage of navigation data for User searches. More...
 
CommonTime finalTime
 Store the latest applicable orbit time here, by addNavData. More...
 
std::map< SatID, std::pair< CommonTime, CommonTime > > firstLastMap
 Map subject satellite ID to time stamp pair (oldest,newest). More...
 
CommonTime initialTime
 Store the earliest applicable orbit time here, by addNavData. More...
 
NavNearMessageMap nearestData
 Internal storage of navigation data for Nearest searches. More...
 
OffsetCvtMap offsetData
 
- Protected Attributes inherited from gnsstk::NavDataFactory
FactoryControl factControl
 Configuration for the behavior of this factory. More...
 
NavValidityType navValidity
 
NavMessageTypeSet procNavTypes
 

Constructor & Destructor Documentation

◆ YumaNavDataFactory()

gnsstk::YumaNavDataFactory::YumaNavDataFactory ( )

Fill supportedSignals.

Note
Only GPS nav is supported so only that will be added to supportedSignals.

Definition at line 51 of file YumaNavDataFactory.cpp.

◆ ~YumaNavDataFactory()

virtual gnsstk::YumaNavDataFactory::~YumaNavDataFactory ( )
inlinevirtual

Clean up.

Definition at line 64 of file YumaNavDataFactory.hpp.

Member Function Documentation

◆ convertToHealth()

bool gnsstk::YumaNavDataFactory::convertToHealth ( const YumaData navIn,
NavDataPtr healthOut 
)
static

Convert Yuma nav data to a system/code-appropriate NavHealthData object.

Parameters
[in]navInThe Yuma nav message data to convert.
[out]healthOutThe NavHealthData object to be added to the factory data map.
Returns
true if the conversion is valid, false if the input data is unsupported.

Definition at line 244 of file YumaNavDataFactory.cpp.

◆ convertToOrbit()

bool gnsstk::YumaNavDataFactory::convertToOrbit ( const YumaData navIn,
NavDataPtr navOut 
)
static

Convert Yuma nav data to a system/code-appropriate OrbitData object.

Parameters
[in]navInThe Yuma nav message data to convert.
[out]navOutThe OrbitData object to be added to the factory data map.
Returns
true if the conversion is valid, false if the input data is unsupported.

Definition at line 193 of file YumaNavDataFactory.cpp.

◆ fillNavData()

void gnsstk::YumaNavDataFactory::fillNavData ( const YumaData navIn,
NavDataPtr navOut 
)
static

Fill the high level (NavData and above) data for an object using information from a Yuma nav record.

Parameters
[in]navInThe Yuma nav message data to convert.
[in,out]navOutA NavDataPtr that has already been allocated for the appropriate leaf node class (e.g. GPSLNavEph, GPSLNavHealth, etc.)
Postcondition
If navIn contains valid, supported data, the timeStamp and signal data members will be filled in.

Definition at line 262 of file YumaNavDataFactory.cpp.

◆ getFactoryFormats()

std::string gnsstk::YumaNavDataFactory::getFactoryFormats ( ) const
overridevirtual

Return a comma-separated list of formats supported by this factory.

Implements gnsstk::NavDataFactory.

Definition at line 180 of file YumaNavDataFactory.cpp.

◆ loadIntoMap()

bool gnsstk::YumaNavDataFactory::loadIntoMap ( const std::string &  filename,
NavMessageMap navMap,
NavNearMessageMap navNearMap,
OffsetCvtMap ofsMap 
)
overridevirtual

Load Yuma nav data into a map.

Parameters
[in]filenameThe path of the file to load.
[out]navMapThe map to store the loaded data in.
[out]navNearMapThe map to store the loaded data in for use by "Nearest" (as opposed to "User") searches.
[out]ofsMapThe map to load TimeOffsetData into.
Returns
true on succes, false on failure.

Implements gnsstk::NavDataFactoryWithStoreFile.

Definition at line 61 of file YumaNavDataFactory.cpp.

◆ process()

bool gnsstk::YumaNavDataFactory::process ( const std::string &  filename,
NavDataFactoryCallback cb 
)
overridevirtual

Process the data in the specified file using a custom callback. Each message decoded by the factory class will be run through NavDataFactoryCallback::process(). It is expected that the user will derive a class from NavDataFactoryCallback, implement the details of the process method to suit their use case, and apply it here.

Parameters
[in]filenameThe path of the file to process.
[in]cbThe call back to use to process the data in the file.
Returns
true on success, false on failure.
Bug:
The use of gotdata is a kludge. It appears that the YumaStream implementation will read invalid data to the end of the file, and we need it to not do that.

Implements gnsstk::NavDataFactoryWithStoreFile.

Definition at line 70 of file YumaNavDataFactory.cpp.


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


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