Abstract base class that defines the interface for searching for navigation data.
Definition at line 60 of file NavDataFactory.hpp.
#include <NavDataFactory.hpp>
Public Attributes | |
NavSignalSet | supportedSignals |
Protected Attributes | |
FactoryControl | factControl |
Configuration for the behavior of this factory. More... | |
NavValidityType | navValidity |
NavMessageTypeSet | procNavTypes |
|
inline |
Initialize navValidity to All and procNavTypes to all known message types.
Definition at line 65 of file NavDataFactory.hpp.
|
inlinevirtual |
Clean up.
Definition at line 71 of file NavDataFactory.hpp.
|
pure virtual |
Add a data source for this factory. This could be a file name, an IP address and port, or something else entirely, depending on the factory implementation. This method is declared here so that NavDataFactoryPtr objects can be set up without having to do any casting of pointers.
[in] | source | A string describing the source of data for the factory. |
Implemented in gnsstk::MultiFormatNavDataFactory, gnsstk::SP3NavDataFactory, TestFactory, TestFactory, and gnsstk::NavDataFactoryWithStoreFile.
|
inlinevirtual |
Add a NavMessageType to be processed to this factory. This should be used prior to loading data and as an alternate approach to setTypeFilter().
[in] | nmt | The NavMessageType to be processed on the next load. |
Reimplemented in gnsstk::MultiFormatNavDataFactory.
Definition at line 163 of file NavDataFactory.hpp.
|
inlinevirtual |
Remove all data from the factory.
Reimplemented in gnsstk::NavDataFactoryWithStore, and gnsstk::MultiFormatNavDataFactory.
Definition at line 216 of file NavDataFactory.hpp.
|
inlinevirtual |
Clear the type filters of each of this factory. This should be used prior to loading data, and prior to using addTypeFilter(), if that API is going to be used instead of setTypeFilter().
Reimplemented in gnsstk::MultiFormatNavDataFactory.
Definition at line 155 of file NavDataFactory.hpp.
|
inlinevirtual |
Print the contents of this factory in a human-readable format.
[in,out] | s | The stream to write the data to. |
[in] | dl | The level of detail the output should contain. |
Reimplemented in gnsstk::NavDataFactoryWithStore, and gnsstk::MultiFormatNavDataFactory.
Definition at line 181 of file NavDataFactory.hpp.
|
inlinevirtual |
Remove all data from the factory in the time span [fromTime,toTime).
[in] | fromTime | The earliest time to be removed. |
[in] | toTime | The earliest time that will NOT be removed. |
Reimplemented in gnsstk::NavDataFactoryWithStore, and gnsstk::MultiFormatNavDataFactory.
Definition at line 189 of file NavDataFactory.hpp.
|
inlinevirtual |
Remove data for a specific satellite signal from the factory in the time span [fromTime,toTime).
[in] | fromTime | The earliest time to be removed. |
[in] | toTime | The earliest time that will NOT be removed. |
[in] | satID | The complete signal specification for the data to be removed (subject satellite, transmit satellite, system, carrier, code, nav). |
Reimplemented in gnsstk::NavDataFactoryWithStore, and gnsstk::MultiFormatNavDataFactory.
Definition at line 200 of file NavDataFactory.hpp.
|
inlinevirtual |
Remove data for all satellites matching a specific signal from the factory in the time span [fromTime,toTime).
[in] | fromTime | The earliest time to be removed. |
[in] | toTime | The earliest time that will NOT be removed. |
[in] | signal | The signal for the data to be removed (system, carrier, code, nav). |
Reimplemented in gnsstk::NavDataFactoryWithStore, and gnsstk::MultiFormatNavDataFactory.
Definition at line 211 of file NavDataFactory.hpp.
|
pure virtual |
Search the store as defined by each child class of NavDataFactory to find the navigation message that meets the specified criteria.
[in] | nmid | Specify the message type, satellite and codes to match. |
[in] | when | The time of interest to search for data. |
[in] | xmitHealth | The desired health status of the transmitting satellite. |
[out] | navOut | The resulting navigation message. |
[in] | valid | Specify whether to search only for valid or invalid messages, or both. |
[in] | order | Specify whether to search by receiver behavior or by nearest to when in time. |
Implemented in gnsstk::NavDataFactoryWithStore, gnsstk::SP3NavDataFactory, and gnsstk::MultiFormatNavDataFactory.
|
pure virtual |
Obtain a set of satellites+message types for which we have data in the given time span.
[in] | fromTime | The earliest time for which any messages should be available. |
[in] | toTime | The earliest time for which any messages should be NOT available. |
Implemented in gnsstk::NavDataFactoryWithStore, and gnsstk::MultiFormatNavDataFactory.
|
pure virtual |
Obtain a set of satellites for which we have data in the given time span.
[in] | fromTime | The earliest time for which any messages should be available. |
[in] | toTime | The earliest time for which any messages should be NOT available. |
Implemented in gnsstk::NavDataFactoryWithStore, and gnsstk::MultiFormatNavDataFactory.
|
pure virtual |
Obtain a set of satellites for which we have data of a specific message type in the given time span.
[in] | nmt | The navigation message type you're looking for. |
[in] | fromTime | The earliest time for which any messages should be available. |
[in] | toTime | The earliest time for which any messages should be NOT available. |
Implemented in gnsstk::NavDataFactoryWithStore, and gnsstk::MultiFormatNavDataFactory.
|
virtual |
Returns the fully-qualified class name. Used for debugging.
Definition at line 117 of file NavDataFactory.cpp.
|
pure virtual |
Return a comma-separated list of formats supported by this factory.
Implemented in gnsstk::MultiFormatNavDataFactory, gnsstk::SP3NavDataFactory, TestFactory, gnsstk::RinexNavDataFactory, gnsstk::SEMNavDataFactory, gnsstk::YumaNavDataFactory, and TestFactory.
|
inlinevirtual |
Determine the latest time for which this object can successfully determine the Xvt for any object.
Reimplemented in gnsstk::NavDataFactoryWithStore, and gnsstk::MultiFormatNavDataFactory.
Definition at line 230 of file NavDataFactory.hpp.
std::set< SatID > gnsstk::NavDataFactory::getIndexSet | ( | const CommonTime & | fromTime, |
const CommonTime & | toTime | ||
) | const |
Similar to getAvailableSats() except it only returns the basic subject satellite ID, making no further distinction between codes.
[in] | fromTime | The earliest time for which any messages should be available. |
[in] | toTime | The earliest time for which any messages should be NOT available. |
Definition at line 88 of file NavDataFactory.cpp.
std::set< SatID > gnsstk::NavDataFactory::getIndexSet | ( | NavMessageType | nmt, |
const CommonTime & | fromTime, | ||
const CommonTime & | toTime | ||
) | const |
Similar to getAvailableSats() except it only returns the basic subject satellite ID, making no further distinction between codes.
[in] | nmt | The navigation message type you're looking for. |
[in] | fromTime | The earliest time for which any messages should be available. |
[in] | toTime | The earliest time for which any messages should be NOT available. |
Definition at line 102 of file NavDataFactory.cpp.
|
inlinevirtual |
Determine the earliest time for which this object can successfully determine the Xvt for any object.
Reimplemented in gnsstk::NavDataFactoryWithStore, and gnsstk::MultiFormatNavDataFactory.
Definition at line 223 of file NavDataFactory.hpp.
|
pure virtual |
Get the offset, in seconds, to apply to times when converting them from fromSys to toSys.
[in] | fromSys | The time system to convert from. |
[in] | toSys | The time system to convert to. |
[in] | when | The time being converted, usually in the time system appropriate for a given nav message source. The details of what time system this should be in and any other restrictions will be documented in each leaf class, e.g. GPSLNavTimeOffset. |
[out] | offset | The offset when converting fromSys->toSys where when(toSys)=when(fromSys)-offset. |
[in] | xmitHealth | The desired health status of the transmitting satellite. |
[in] | valid | Specify whether to search only for valid or invalid messages, or both. |
Implemented in gnsstk::NavDataFactoryWithStore, and gnsstk::MultiFormatNavDataFactory.
|
inline |
Return the set of NavMessageType that would be processed on the next load.
Definition at line 148 of file NavDataFactory.hpp.
|
virtual |
Determine if a given message/satellite/signal is available in the factory.
[in] | nmid | The message/satellite/signal to search for. |
[in] | fromTime | The earliest time for which a matching message should be available. |
[in] | toTime | The latest time for which a matching message should be available. |
Reimplemented in gnsstk::MultiFormatNavDataFactory.
Definition at line 49 of file NavDataFactory.cpp.
|
inlinevirtual |
Determine if a given satellite/signal is available in the factory.
[in] | nmt | The navigation message type of interest. |
[in] | satID | The satellite/signal to search for. |
[in] | fromTime | The earliest time for which a matching message should be available. |
[in] | toTime | The latest time for which a matching message should be available. |
Definition at line 359 of file NavDataFactory.hpp.
|
inlinevirtual |
Set the configuration parameters for this and any child NavDataFactory or PNBNavDataFactory objects.
[in] | ctrl | The configuration for the factory/factories. |
Reimplemented in gnsstk::MultiFormatNavDataFactory.
Definition at line 372 of file NavDataFactory.hpp.
|
inlinevirtual |
Indicate what nav message types the factories should be loading. This should be called before the factories acquire any data.
[in] | nmts | The set of nav message types to be processed by the factories. |
Reimplemented in gnsstk::MultiFormatNavDataFactory.
Definition at line 139 of file NavDataFactory.hpp.
|
inlinevirtual |
Set the factory's handling of valid and invalid navigation data. This should be called before any find() calls.
[in] | nvt | The new nav data loading filter method. |
Reimplemented in gnsstk::MultiFormatNavDataFactory.
Definition at line 124 of file NavDataFactory.hpp.
|
protected |
Configuration for the behavior of this factory.
Definition at line 383 of file NavDataFactory.hpp.
|
protected |
Determines how the factory should load nav data from the store.
Definition at line 390 of file NavDataFactory.hpp.
|
protected |
Determines which types of navigation message data the factory should be processing.
Definition at line 394 of file NavDataFactory.hpp.
NavSignalSet gnsstk::NavDataFactory::supportedSignals |
Define which signals this factory supports. This will be empty by default, which means that NavLibrary would not use this factory, so it is up to the derived classes to fill out the signals as appropriate.
Definition at line 379 of file NavDataFactory.hpp.