The hifitime Epoch struct supports different timescales but the decoder often initialises them with the wrong types.
For reference here is how each type of RINEX file should set the timescale:
- clocks -> UTC
- meteo -> UTC
- observation
- use the value from the
TIME OF FIRST OBS header line
- mandatory header for RINEX 3+, but in RINEX 2 it is only requires for mixed GPS/GLONASS files
- so if not present default to GPS for pure GPS file, and GLO for pure GLONASS file
- navigation (EOP/EPH/STO/ION) records
- for RINEX 3+ the value is whatever constellation the satellite is in, so for each record look at the satellite ID, and use that
- e.g. if the satellite ID is
G01 use GPS timescale, E01 use Galileo etc
- for RINEX 2 the value is the constellation type of the file (since RINEX 2 uses a different file for GPS or GLONASS)
The hifitime
Epochstruct supports different timescales but the decoder often initialises them with the wrong types.For reference here is how each type of RINEX file should set the timescale:
TIME OF FIRST OBSheader lineG01use GPS timescale,E01use Galileo etc