public class RinexNavigationRecord extends Object implements IAvailability
| Constructor and Description |
|---|
RinexNavigationRecord(int prn)
Initializes a new instance.
|
| Modifier and Type | Method and Description |
|---|---|
Platform |
createSatellite()
Creates a GPS satellite for this RINEX record.
|
Platform |
createSatellite(BehaviorBeyondAvailability evaluationBehavior)
Creates a GPS satellite for this RINEX record.
|
RinexNavigationEphemeris[] |
getAllEphemerisData()
Retrieves the
RinexNavigationEphemeris defining all the characteristics of this satellite. |
IGpsElements[] |
getAllGpsElementsFromEphemerisData()
Retrieves the
IGpsElements defining the orbit of this satellite. |
TimeIntervalCollection |
getAvailabilityIntervals()
Gets a
TimeIntervalCollection over which data is available. |
TimeIntervalCollection |
getAvailabilityIntervals(TimeIntervalCollection consideredIntervals)
Gets the intervals over which data is available.
|
RinexNavigationEphemeris |
getDataFromMostRecentEphemeris(GlobalPositioningSystemDate date)
Retrieves the
RinexNavigationEphemeris defining all characteristics of this satellite
which represent the most recent ephemeris prior to date, compared to TransmissionTime (get). |
IGpsElements |
getElementsFromMostRecentEphemeris(GlobalPositioningSystemDate date)
Retrieves the
IGpsElements defining the orbit of this satellite
which represent the most recent ephemeris prior to date. |
int |
getNumberOfEphemerides()
Gets the number of ephemerides in this record for this
PseudoRandomNumber (get). |
int |
getPseudoRandomNumber()
Gets the Pseudo Random Number (PRN).
|
boolean |
isAvailable(JulianDate date)
Determines if valid data is available for the given
JulianDate. |
void |
readEphemerisBlock(String[] ephemerisBlock)
Reads a record from a stream.
|
public RinexNavigationRecord(int prn)
prn - The pseudo-random number (PRN) of satellite associated with this record.public TimeIntervalCollection getAvailabilityIntervals(TimeIntervalCollection consideredIntervals)
getAvailabilityIntervals in interface IAvailabilityconsideredIntervals - The intervals over which availability information is needed. Note that the returned availability
intervals may indicate availability outside of these intervals of consideration.public final boolean isAvailable(@Nonnull JulianDate date)
JulianDate.isAvailable in interface IAvailabilitydate - The date for which to check availability.true if valid data is available for this date; otherwise false.@Nonnull public final TimeIntervalCollection getAvailabilityIntervals()
TimeIntervalCollection over which data is available.
If the availability interval is infinite, this returns
Infinite (get).
It is recommended that you call RinexNavigationRecord.isAvailable(agi.foundation.time.JulianDate) to determine availability instead of
calling this method and checking for yourself.
public final void readEphemerisBlock(@Nonnull String[] ephemerisBlock)
ephemerisBlock - The block of eight lines representing the ephemeris for a
single GPS PRN.ArgumentNullException - Thrown when ephemerisBlock is null.ArgumentException - Thrown when the length of the ephemerisBlock is less than 8.IllegalStateException - Thrown when the ephemerisBlock has an invalid pseudo-random number (PRN)
in its first line.@Nonnull public final Platform createSatellite()
@Nonnull public final Platform createSatellite(@Nonnull BehaviorBeyondAvailability evaluationBehavior)
evaluationBehavior - Instructs the GpsRinexPropagator what to do outside of this record's availability.public final IGpsElements getElementsFromMostRecentEphemeris(@Nonnull GlobalPositioningSystemDate date)
IGpsElements defining the orbit of this satellite
which represent the most recent ephemeris prior to date.date - The date to consider.public final RinexNavigationEphemeris getDataFromMostRecentEphemeris(@Nonnull GlobalPositioningSystemDate date)
RinexNavigationEphemeris defining all characteristics of this satellite
which represent the most recent ephemeris prior to date, compared to TransmissionTime (get).
The ephemeris blocks are ordered according to the TransmissionTime (get)
within the current GPS week. The GpsWeek (get) parameter is not used in the comparison because that
week is referenced to the TimeOfEphemeris (get) and not the TransmissionTime (get).
While there is a GPS week parameter downlinked by GPS in Subframe 1 (word 3), it is not included in the RINEX format.
date - The date to consider.public final IGpsElements[] getAllGpsElementsFromEphemerisData()
IGpsElements defining the orbit of this satellite.
The array is sorted to be sequentially increasing
according to TransmissionTime (get).
public final RinexNavigationEphemeris[] getAllEphemerisData()
RinexNavigationEphemeris defining all the characteristics of this satellite.
The array is sorted to be sequentially increasing
according to TransmissionTimeGpsDate (get).
public final int getNumberOfEphemerides()
PseudoRandomNumber (get).public final int getPseudoRandomNumber()