RinexObsHeader.hpp
Go to the documentation of this file.
1 //==============================================================================
2 //
3 // This file is part of GNSSTk, the ARL:UT GNSS Toolkit.
4 //
5 // The GNSSTk is free software; you can redistribute it and/or modify
6 // it under the terms of the GNU Lesser General Public License as published
7 // by the Free Software Foundation; either version 3.0 of the License, or
8 // any later version.
9 //
10 // The GNSSTk is distributed in the hope that it will be useful,
11 // but WITHOUT ANY WARRANTY; without even the implied warranty of
12 // MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
13 // GNU Lesser General Public License for more details.
14 //
15 // You should have received a copy of the GNU Lesser General Public
16 // License along with GNSSTk; if not, write to the Free Software Foundation,
17 // Inc., 51 Franklin Street, Fifth Floor, Boston, MA 02110, USA
18 //
19 // This software was developed by Applied Research Laboratories at the
20 // University of Texas at Austin.
21 // Copyright 2004-2022, The Board of Regents of The University of Texas System
22 //
23 //==============================================================================
24 
25 //==============================================================================
26 //
27 // This software was developed by Applied Research Laboratories at the
28 // University of Texas at Austin, under contract to an agency or agencies
29 // within the U.S. Department of Defense. The U.S. Government retains all
30 // rights to use, duplicate, distribute, disclose, or release this software.
31 //
32 // Pursuant to DoD Directive 523024
33 //
34 // DISTRIBUTION STATEMENT A: This software has been approved for public
35 // release, distribution is unlimited.
36 //
37 //==============================================================================
38 
44 #ifndef GNSSTK_RINEXOBSHEADER_HPP
45 #define GNSSTK_RINEXOBSHEADER_HPP
46 
47 #include <vector>
48 #include <list>
49 #include <map>
50 #include <iostream>
51 #include <iomanip>
52 
53 #include "gnsstk_export.h"
54 #include "CommonTime.hpp"
55 #include "FFStream.hpp"
56 #include "RinexObsBase.hpp"
57 #include "Triple.hpp"
58 #include "RinexSatID.hpp"
59 #include "gnsstk_export.h"
60 
61 namespace gnsstk
62 {
64 
65 
67  struct RinexObsType
68  {
69  std::string type;
70  std::string description;
71  std::string units;
72  unsigned int depend;
73  RinexObsType() : type(std::string("UN")),description(std::string("Unknown or Invalid")),
74  units(std::string("")),depend(0) {}
75  RinexObsType(std::string t, std::string d, std::string u, unsigned int dep=0) :
76  type(t),description(d),units(u),depend(dep) {}
77  GNSSTK_EXPORT static const unsigned int C1depend;
78  GNSSTK_EXPORT static const unsigned int L1depend;
79  GNSSTK_EXPORT static const unsigned int L2depend;
80  GNSSTK_EXPORT static const unsigned int P1depend;
81  GNSSTK_EXPORT static const unsigned int P2depend;
82  GNSSTK_EXPORT static const unsigned int EPdepend;
83  GNSSTK_EXPORT static const unsigned int PSdepend;
84  };
85 
86 
87 // Guards are here since an identical struct is used in RinexObsHeader
88 // and Rinex3NavHeader
89 #ifndef GNSSTK_EXTRAWAVEFACT
90 #define GNSSTK_EXTRAWAVEFACT
91  struct ExtraWaveFact
93  {
95  std::vector<SatID> satList;
97  short wavelengthFactor[2];
98  };
99 #endif // GNSSTK_EXTRAWAVEFACT
100 
101 
108  {
109  public:
110 
113  : version(2.11), interval(0.0), receiverOffset(0), leapSeconds(0),
114  numSVs(0), valid(0), numObs(0)
115  {
116  clear();
117  }
118 
120  inline void clear()
121  {
122 // version = 2.11;
123  valid = 0;
124  commentList.clear();
126  extraWaveFactList.clear();
127  obsTypeList.clear();
128  numObsForSat.clear();
129  numObs = 0;
130  lastPRN.id = -1;
131  }
132 
134 
135  GNSSTK_EXPORT
136  static const std::string versionString;
137  GNSSTK_EXPORT
138  static const std::string runByString;
139  GNSSTK_EXPORT
140  static const std::string commentString;
141  GNSSTK_EXPORT
142  static const std::string markerNameString;
143  GNSSTK_EXPORT
144  static const std::string markerNumberString;
145  GNSSTK_EXPORT
146  static const std::string observerString;
147  GNSSTK_EXPORT
148  static const std::string receiverString;
149  GNSSTK_EXPORT
150  static const std::string antennaTypeString;
151  GNSSTK_EXPORT
152  static const std::string antennaPositionString;
153  GNSSTK_EXPORT
154  static const std::string antennaOffsetString;
155  GNSSTK_EXPORT
156  static const std::string waveFactString;
157  GNSSTK_EXPORT
158  static const std::string numObsString;
159  GNSSTK_EXPORT
160  static const std::string intervalString;
161  GNSSTK_EXPORT
162  static const std::string firstTimeString;
163  GNSSTK_EXPORT
164  static const std::string lastTimeString;
165  GNSSTK_EXPORT
166  static const std::string receiverOffsetString;
167  GNSSTK_EXPORT
168  static const std::string leapSecondsString;
169  GNSSTK_EXPORT
170  static const std::string numSatsString;
171  GNSSTK_EXPORT
172  static const std::string prnObsString;
173  GNSSTK_EXPORT
174  static const std::string endOfHeader;
175 
176 
179  {
180  versionValid = 0x01,
181  runByValid = 0x02,
182  commentValid = 0x04,
185  observerValid = 0x020,
186  receiverValid = 0x040,
190  waveFactValid = 0x0400,
191  obsTypeValid = 0x0800,
192  intervalValid = 0x01000,
193  firstTimeValid = 0x02000,
194  lastTimeValid = 0x04000,
196  leapSecondsValid = 0x0100000,
197  numSatsValid = 0x0200000,
198  prnObsValid = 0x0400000,
199 
200  endValid = 0x080000000,
201 
203  allValid20 = 0x080002FEB,
205  allValid21 = 0x080002FEB,
207  allValid211 = 0x080002BEB
208  };
209 
211 
212  GNSSTK_EXPORT static const RinexObsType UN;
213  GNSSTK_EXPORT static const RinexObsType L1;
214  GNSSTK_EXPORT static const RinexObsType L2;
215  GNSSTK_EXPORT static const RinexObsType C1;
216  GNSSTK_EXPORT static const RinexObsType C2;
217  GNSSTK_EXPORT static const RinexObsType P1;
218  GNSSTK_EXPORT static const RinexObsType P2;
219  GNSSTK_EXPORT static const RinexObsType D1;
220  GNSSTK_EXPORT static const RinexObsType D2;
221  GNSSTK_EXPORT static const RinexObsType S1;
222  GNSSTK_EXPORT static const RinexObsType S2;
223  GNSSTK_EXPORT static const RinexObsType T1;
224  GNSSTK_EXPORT static const RinexObsType T2;
225  GNSSTK_EXPORT static const RinexObsType C5;
226  GNSSTK_EXPORT static const RinexObsType L5;
227  GNSSTK_EXPORT static const RinexObsType D5;
228  GNSSTK_EXPORT static const RinexObsType S5;
229  // Galileo only
230  GNSSTK_EXPORT static const RinexObsType C6;
231  GNSSTK_EXPORT static const RinexObsType L6;
232  GNSSTK_EXPORT static const RinexObsType D6;
233  GNSSTK_EXPORT static const RinexObsType S6;
234  GNSSTK_EXPORT static const RinexObsType C7;
235  GNSSTK_EXPORT static const RinexObsType L7;
236  GNSSTK_EXPORT static const RinexObsType D7;
237  GNSSTK_EXPORT static const RinexObsType S7;
238  GNSSTK_EXPORT static const RinexObsType C8;
239  GNSSTK_EXPORT static const RinexObsType L8;
240  GNSSTK_EXPORT static const RinexObsType D8;
241  GNSSTK_EXPORT static const RinexObsType S8;
242 
244 
245  GNSSTK_EXPORT
246  static const std::vector<RinexObsType> StandardRinexObsTypes;
247  GNSSTK_EXPORT
248  static std::vector<RinexObsType> RegisteredRinexObsTypes;
249 
250 
251  double version;
252  std::string fileType;
253  //std::string system_str; ///< The string (for file i/o) giving the RINEX system
255  std::string fileProgram,
258  std::vector<std::string> commentList;
259  std::string markerName,
261  std::string observer,
263  std::string recNo,
266  std::string antNo,
270  short wavelengthFactor[2];
271  std::vector<ExtraWaveFact> extraWaveFactList;
272  std::vector<RinexObsType> obsTypeList;
273  double interval;
280  short numSVs;
281  std::map<SatID, std::vector<int> > numObsForSat;
282  unsigned long valid;
283  int numObs;
285 
287  virtual ~RinexObsHeader() {}
288 
289  // The next four lines is our common interface
291  virtual bool isHeader() const {return true;}
292 
298  virtual void dump(std::ostream& s) const;
299 
304  static RinexObsType convertObsType(const std::string& oneObs);
305 
310  static std::string convertObsType(const RinexObsType& oneObs);
311 
317  void ParseHeaderRecord(std::string& line);
318 
320  int NumberHeaderRecordsToBeWritten(void) const noexcept;
321 
328  void WriteHeaderRecords(FFStream& s) const;
329 
331  bool isValid() const { return ((valid & allValid20) == allValid20); }
332 
333  protected:
340  virtual void reallyPutRecord(FFStream& s) const;
341 
352  virtual void reallyGetRecord(FFStream& s);
353 
354  friend class RinexObsData;
355 
356  private:
359  std::string writeTime(const CommonTime& dt) const;
360 
365  CommonTime parseTime(const std::string& line) const;
366 
367  }; // end class RinexObsHeader
368 
370  inline bool operator==(const RinexObsType& x,
371  const RinexObsType& y) { return (x.type == y.type); }
372 
374  inline bool operator<(const RinexObsType& x,
375  const RinexObsType& y) { return (x.type < y.type); }
376 
378  inline std::ostream& operator<<(std::ostream& s,
379  const RinexObsType rot)
380  {
381  return s << "Type=" << rot.type
382  << ", Description=" << rot.description
383  << ", Units=" << rot.units;
384  }
385 
387  int RegisterExtendedRinexObsType(std::string t,
388  std::string d=std::string("(undefined)"),
389  std::string u=std::string("undefined"),
390  unsigned int dep=0);
391 
393  void DisplayStandardRinexObsTypes(std::ostream& s);
394 
396  void DisplayExtendedRinexObsTypes(std::ostream& s);
397 
399 
400 } // namespace
401 
402 #endif
gnsstk::ExtraWaveFact::wavelengthFactor
short wavelengthFactor[2]
vector of wavelength factor values
Definition: RinexObsHeader.hpp:97
gnsstk::RinexObsHeader::writeTime
std::string writeTime(const CommonTime &dt) const
Definition: RinexObsHeader.cpp:864
gnsstk::RinexObsHeader::leapSecondsString
static const GNSSTK_EXPORT std::string leapSecondsString
"LEAP SECONDS"
Definition: RinexObsHeader.hpp:168
gnsstk::RinexObsHeader::lastSystem
RinexSatID lastSystem
RINEX satellite system of LAST OBS timetag.
Definition: RinexObsHeader.hpp:277
gnsstk::RinexObsType::L1depend
static const GNSSTK_EXPORT unsigned int L1depend
Definition: RinexObsHeader.hpp:78
gnsstk::RinexObsHeader::lastPRN
RinexSatID lastPRN
used to save the current PRN while reading PRN/OBS continuation lines.
Definition: RinexObsHeader.hpp:284
gnsstk::operator==
bool operator==(const IonexData::IonexValType &x, const IonexData::IonexValType &y)
operator == for IonexData::IonexValType
Definition: IonexData.hpp:253
gnsstk::RinexObsHeader::D1
static const GNSSTK_EXPORT RinexObsType D1
Definition: RinexObsHeader.hpp:219
gnsstk::RinexObsHeader::wavelengthFactor
short wavelengthFactor[2]
default WAVELENGTH FACTORS
Definition: RinexObsHeader.hpp:270
gnsstk::RinexObsHeader::L1
static const GNSSTK_EXPORT RinexObsType L1
Definition: RinexObsHeader.hpp:213
gnsstk::RinexObsType::units
std::string units
10- char units (optional) e.g. "meters"
Definition: RinexObsHeader.hpp:71
gnsstk::RinexObsHeader::extraWaveFactList
std::vector< ExtraWaveFact > extraWaveFactList
extra (per PRN) WAVELENGTH FACTORS
Definition: RinexObsHeader.hpp:271
gnsstk::RinexObsHeader::T1
static const GNSSTK_EXPORT RinexObsType T1
Definition: RinexObsHeader.hpp:223
gnsstk::RinexObsHeader::version
double version
RINEX VERSION & TYPE.
Definition: RinexObsHeader.hpp:251
gnsstk::SatID::id
int id
Satellite identifier, e.g. PRN.
Definition: SatID.hpp:154
gnsstk::RinexObsHeader::RegisteredRinexObsTypes
static GNSSTK_EXPORT std::vector< RinexObsType > RegisteredRinexObsTypes
Definition: RinexObsHeader.hpp:248
gnsstk::RinexObsHeader::~RinexObsHeader
virtual ~RinexObsHeader()
Destructor.
Definition: RinexObsHeader.hpp:287
gnsstk::RinexObsHeader::C7
static const GNSSTK_EXPORT RinexObsType C7
Definition: RinexObsHeader.hpp:234
gnsstk::RinexObsHeader::L6
static const GNSSTK_EXPORT RinexObsType L6
Definition: RinexObsHeader.hpp:231
gnsstk::RinexObsHeader::NumberHeaderRecordsToBeWritten
int NumberHeaderRecordsToBeWritten(void) const noexcept
Compute the number of valid header records which WriteHeaderRecords() will write.
Definition: RinexObsHeader.cpp:186
gnsstk::RinexObsHeader::ParseHeaderRecord
void ParseHeaderRecord(std::string &line)
Definition: RinexObsHeader.cpp:518
gnsstk::RinexObsHeader::prnObsValid
@ prnObsValid
"PRN / # OF OBS" (optional)
Definition: RinexObsHeader.hpp:198
gnsstk::RinexObsHeader::S1
static const GNSSTK_EXPORT RinexObsType S1
Definition: RinexObsHeader.hpp:221
gnsstk::RinexObsHeader::markerName
std::string markerName
MARKER NAME.
Definition: RinexObsHeader.hpp:259
gnsstk::FFStream
Definition: FFStream.hpp:119
gnsstk::RinexObsHeader::system
RinexSatID system
The RINEX satellite system.
Definition: RinexObsHeader.hpp:254
gnsstk::RinexObsHeader::fileType
std::string fileType
RINEX FILETYPE (Observation Navigation etc)
Definition: RinexObsHeader.hpp:252
gnsstk::RinexObsType::depend
unsigned int depend
Definition: RinexObsHeader.hpp:72
gnsstk::RinexObsHeader::C5
static const GNSSTK_EXPORT RinexObsType C5
Definition: RinexObsHeader.hpp:225
gnsstk::RinexObsHeader::reallyGetRecord
virtual void reallyGetRecord(FFStream &s)
Definition: RinexObsHeader.cpp:753
gnsstk::RinexObsHeader::obsTypeList
std::vector< RinexObsType > obsTypeList
NUMBER & TYPES OF OBSERV.
Definition: RinexObsHeader.hpp:272
gnsstk::RinexObsHeader::leapSecondsValid
@ leapSecondsValid
"LEAP SECONDS" (optional)
Definition: RinexObsHeader.hpp:196
gnsstk::RinexObsHeader::antennaPosition
gnsstk::Triple antennaPosition
APPROXIMATE POSITION XYZ.
Definition: RinexObsHeader.hpp:268
gnsstk::RinexObsHeader::D6
static const GNSSTK_EXPORT RinexObsType D6
Definition: RinexObsHeader.hpp:232
gnsstk::RinexObsHeader::observerValid
@ observerValid
"OBSERVER / AGENCY"
Definition: RinexObsHeader.hpp:185
gnsstk::RinexObsHeader::numSVs
short numSVs
NUMBER OF SATELLITES in following map (optional)
Definition: RinexObsHeader.hpp:280
gnsstk::RinexObsHeader::leapSeconds
int leapSeconds
LEAP SECONDS (optional)
Definition: RinexObsHeader.hpp:279
gnsstk::DisplayStandardRinexObsTypes
void DisplayStandardRinexObsTypes(ostream &s)
Definition: RinexObsHeader.cpp:987
gnsstk::RinexObsHeader::T2
static const GNSSTK_EXPORT RinexObsType T2
Definition: RinexObsHeader.hpp:224
gnsstk::RinexObsType::EPdepend
static const GNSSTK_EXPORT unsigned int EPdepend
Definition: RinexObsHeader.hpp:82
gnsstk::RinexObsHeader::fileAgency
std::string fileAgency
Who ran the program.
Definition: RinexObsHeader.hpp:256
gnsstk::RinexObsHeader::allValid21
@ allValid21
This mask is for all required valid fields for RINEX 2.1.
Definition: RinexObsHeader.hpp:205
gnsstk::RinexObsHeader::RinexObsHeader
RinexObsHeader()
A Simple Constructor.
Definition: RinexObsHeader.hpp:112
gnsstk::RinexObsHeader::P1
static const GNSSTK_EXPORT RinexObsType P1
Definition: RinexObsHeader.hpp:217
gnsstk::RinexObsHeader::prnObsString
static const GNSSTK_EXPORT std::string prnObsString
"PRN / # OF OBS"
Definition: RinexObsHeader.hpp:172
gnsstk::RinexObsHeader::waveFactString
static const GNSSTK_EXPORT std::string waveFactString
"WAVELENGTH FACT L1/2"
Definition: RinexObsHeader.hpp:156
gnsstk::RinexObsHeader::markerNumber
std::string markerNumber
MARKER NUMBER (optional)
Definition: RinexObsHeader.hpp:260
gnsstk::RinexObsHeader::antennaOffsetString
static const GNSSTK_EXPORT std::string antennaOffsetString
"ANTENNA: DELTA H/E/N"
Definition: RinexObsHeader.hpp:154
gnsstk::RinexObsHeader::intervalString
static const GNSSTK_EXPORT std::string intervalString
"INTERVAL"
Definition: RinexObsHeader.hpp:160
gnsstk::RinexObsHeader::dump
virtual void dump(std::ostream &s) const
Definition: RinexObsHeader.cpp:877
gnsstk::Triple
Definition: Triple.hpp:68
gnsstk::RinexObsHeader::receiverString
static const GNSSTK_EXPORT std::string receiverString
"REC # / TYPE / VERS"
Definition: RinexObsHeader.hpp:148
gnsstk::RinexObsHeader::agency
std::string agency
OBSERVER'S AGENCY.
Definition: RinexObsHeader.hpp:262
gnsstk
For Sinex::InputHistory.
Definition: BasicFramework.cpp:50
gnsstk::RinexObsHeader::interval
double interval
INTERVAL (optional)
Definition: RinexObsHeader.hpp:273
gnsstk::RegisterExtendedRinexObsType
int RegisterExtendedRinexObsType(string t, string d, string u, unsigned int dep)
Definition: RinexObsHeader.cpp:969
gnsstk::RinexObsHeader::markerNameValid
@ markerNameValid
"MARKER NAME"
Definition: RinexObsHeader.hpp:183
gnsstk::ExtraWaveFact::satList
std::vector< SatID > satList
List of Sats with this wavelength factor.
Definition: RinexObsHeader.hpp:95
gnsstk::RinexObsHeader::C6
static const GNSSTK_EXPORT RinexObsType C6
Definition: RinexObsHeader.hpp:230
gnsstk::RinexObsHeader::commentString
static const GNSSTK_EXPORT std::string commentString
"COMMENT"
Definition: RinexObsHeader.hpp:140
gnsstk::RinexObsHeader::numSatsValid
@ numSatsValid
"# OF SATELLITES" (optional)
Definition: RinexObsHeader.hpp:197
gnsstk::RinexObsHeader::receiverOffset
int receiverOffset
RCV CLOCK OFFS APPL (optional)
Definition: RinexObsHeader.hpp:278
gnsstk::RinexObsType::RinexObsType
RinexObsType()
Definition: RinexObsHeader.hpp:73
y
page HOWTO subpage DoxygenGuide Documenting Your Code page DoxygenGuide Documenting Your Code todo Flesh out this document section doctips Tips for Documenting When defining make sure that the prototype is identical between the cpp and hpp including both the namespaces and the parameter names for you have std::string as the return type in the hpp file and string as the return type in the cpp Doxygen may get confused and autolink to the cpp version with no documentation If you don t use the same parameter names between the cpp and hpp that will also confuse Doxygen Don t put type information in return or param documentation It doesn t really add anything and will often cause Doxygen to complain and not produce the documentation< br > use note Do not put a comma after a param name unless you mean to document multiple parameters< br/> the output stream</code >< br/> y
Definition: DOCUMENTING.dox:15
gnsstk::RinexObsType::type
std::string type
2- char type e.g. L1, P2
Definition: RinexObsHeader.hpp:69
gnsstk::RinexObsHeader::recNo
std::string recNo
RECEIVER NUMBER.
Definition: RinexObsHeader.hpp:263
gnsstk::RinexObsHeader::antennaOffset
gnsstk::Triple antennaOffset
ANTENNA: DELTA H/E/N.
Definition: RinexObsHeader.hpp:269
gnsstk::RinexObsHeader::observerString
static const GNSSTK_EXPORT std::string observerString
"OBSERVER / AGENCY"
Definition: RinexObsHeader.hpp:146
gnsstk::RinexObsHeader::lastObs
CommonTime lastObs
TIME OF LAST OBS (optional)
Definition: RinexObsHeader.hpp:276
gnsstk::RinexObsHeader::markerNumberValid
@ markerNumberValid
"MARKER NUMBER" (optional)
Definition: RinexObsHeader.hpp:184
gnsstk::RinexObsHeader::antNo
std::string antNo
ANTENNA NUMBER.
Definition: RinexObsHeader.hpp:266
gnsstk::RinexObsHeader::isValid
bool isValid() const
Return boolean : is this a valid Rinex header?
Definition: RinexObsHeader.hpp:331
gnsstk::RinexObsHeader::lastTimeString
static const GNSSTK_EXPORT std::string lastTimeString
"TIME OF LAST OBS"
Definition: RinexObsHeader.hpp:164
gnsstk::DisplayExtendedRinexObsTypes
void DisplayExtendedRinexObsTypes(ostream &s)
Definition: RinexObsHeader.cpp:1002
gnsstk::RinexObsHeader::runByString
static const GNSSTK_EXPORT std::string runByString
"PGM / RUN BY / DATE"
Definition: RinexObsHeader.hpp:138
gnsstk::RinexObsType
RINEX Observation Types.
Definition: RinexObsHeader.hpp:67
gnsstk::RinexObsType::P1depend
static const GNSSTK_EXPORT unsigned int P1depend
Definition: RinexObsHeader.hpp:80
gnsstk::RinexObsHeader::observer
std::string observer
OBSERVER : who collected the data.
Definition: RinexObsHeader.hpp:261
gnsstk::operator<<
std::ostream & operator<<(std::ostream &s, const ObsEpoch &oe) noexcept
Definition: ObsEpochMap.cpp:54
gnsstk::RinexObsHeader::firstTimeString
static const GNSSTK_EXPORT std::string firstTimeString
"TIME OF FIRST OBS"
Definition: RinexObsHeader.hpp:162
gnsstk::CommonTime
Definition: CommonTime.hpp:84
gnsstk::RinexObsHeader::fileProgram
std::string fileProgram
The program used to generate this file.
Definition: RinexObsHeader.hpp:255
gnsstk::RinexObsHeader::receiverValid
@ receiverValid
"REC # / TYPE / VERS"
Definition: RinexObsHeader.hpp:186
gnsstk::RinexObsHeader::parseTime
CommonTime parseTime(const std::string &line) const
Definition: RinexObsHeader.cpp:850
gnsstk::RinexObsHeader::receiverOffsetString
static const GNSSTK_EXPORT std::string receiverOffsetString
"RCV CLOCK OFFS APPL"
Definition: RinexObsHeader.hpp:166
gnsstk::RinexObsHeader::S5
static const GNSSTK_EXPORT RinexObsType S5
Definition: RinexObsHeader.hpp:228
gnsstk::RinexObsHeader::obsTypeValid
@ obsTypeValid
"# / TYPES OF OBSERV"
Definition: RinexObsHeader.hpp:191
RinexObsBase.hpp
gnsstk::RinexObsHeader::waveFactValid
@ waveFactValid
"WAVELENGTH FACT L1/2"
Definition: RinexObsHeader.hpp:190
gnsstk::RinexObsHeader::L2
static const GNSSTK_EXPORT RinexObsType L2
Definition: RinexObsHeader.hpp:214
gnsstk::RinexObsHeader::antennaTypeValid
@ antennaTypeValid
"ANT # / TYPE"
Definition: RinexObsHeader.hpp:187
gnsstk::RinexObsHeader::convertObsType
static RinexObsType convertObsType(const std::string &oneObs)
Definition: RinexObsHeader.cpp:830
gnsstk::RinexObsHeader::antennaPositionString
static const GNSSTK_EXPORT std::string antennaPositionString
"APPROX POSITION XYZ"
Definition: RinexObsHeader.hpp:152
gnsstk::RinexObsBase
Definition: RinexObsBase.hpp:57
gnsstk::RinexObsHeader::D5
static const GNSSTK_EXPORT RinexObsType D5
Definition: RinexObsHeader.hpp:227
gnsstk::RinexObsHeader::date
std::string date
When the program was run.
Definition: RinexObsHeader.hpp:257
gnsstk::RinexObsHeader::markerNumberString
static const GNSSTK_EXPORT std::string markerNumberString
"MARKER NUMBER"
Definition: RinexObsHeader.hpp:144
gnsstk::RinexObsHeader::allValid20
@ allValid20
This mask is for all required valid fields for RINEX 2.0.
Definition: RinexObsHeader.hpp:203
gnsstk::RinexObsHeader::lastTimeValid
@ lastTimeValid
"TIME OF LAST OBS" (optional)
Definition: RinexObsHeader.hpp:194
gnsstk::RinexObsHeader::antennaTypeString
static const GNSSTK_EXPORT std::string antennaTypeString
"ANT # / TYPE"
Definition: RinexObsHeader.hpp:150
gnsstk::RinexObsHeader::versionString
static const GNSSTK_EXPORT std::string versionString
"RINEX VERSION / TYPE"
Definition: RinexObsHeader.hpp:136
gnsstk::operator<
bool operator<(const IonexData::IonexValType &x, const IonexData::IonexValType &y)
operator < for IonexData::IonexValType
Definition: IonexData.hpp:265
gnsstk::RinexObsHeader::valid
unsigned long valid
Bits set when individual header members are present and valid.
Definition: RinexObsHeader.hpp:282
gnsstk::RinexObsHeader::S7
static const GNSSTK_EXPORT RinexObsType S7
Definition: RinexObsHeader.hpp:237
gnsstk::RinexObsHeader::numObs
int numObs
used to save the number of obs on # / TYPES continuation lines.
Definition: RinexObsHeader.hpp:283
gnsstk::RinexObsHeader::P2
static const GNSSTK_EXPORT RinexObsType P2
Definition: RinexObsHeader.hpp:218
gnsstk::RinexObsType::C1depend
static const GNSSTK_EXPORT unsigned int C1depend
Definition: RinexObsHeader.hpp:77
gnsstk::RinexObsHeader::firstObs
CommonTime firstObs
TIME OF FIRST OBS.
Definition: RinexObsHeader.hpp:274
gnsstk::RinexObsHeader::intervalValid
@ intervalValid
"INTERVAL" (optional)
Definition: RinexObsHeader.hpp:192
gnsstk::RinexObsHeader::C8
static const GNSSTK_EXPORT RinexObsType C8
Definition: RinexObsHeader.hpp:238
gnsstk::RinexSatID
Definition: RinexSatID.hpp:63
gnsstk::RinexObsHeader::D8
static const GNSSTK_EXPORT RinexObsType D8
Definition: RinexObsHeader.hpp:240
gnsstk::RinexObsHeader::D2
static const GNSSTK_EXPORT RinexObsType D2
Definition: RinexObsHeader.hpp:220
gnsstk::RinexObsHeader::clear
void clear()
Clear (empty out) header.
Definition: RinexObsHeader.hpp:120
CommonTime.hpp
std
Definition: Angle.hpp:142
gnsstk::RinexObsHeader::endOfHeader
static const GNSSTK_EXPORT std::string endOfHeader
"END OF HEADER"
Definition: RinexObsHeader.hpp:174
gnsstk::RinexObsHeader::allValid211
@ allValid211
This mask is for all required valid fields for RINEX 2.11.
Definition: RinexObsHeader.hpp:207
gnsstk::RinexObsHeader::reallyPutRecord
virtual void reallyPutRecord(FFStream &s) const
Definition: RinexObsHeader.cpp:145
gnsstk::RinexObsType::L2depend
static const GNSSTK_EXPORT unsigned int L2depend
Definition: RinexObsHeader.hpp:79
Triple.hpp
gnsstk::RinexObsHeader::versionValid
@ versionValid
"RINEX VERSION / TYPE"
Definition: RinexObsHeader.hpp:180
gnsstk::RinexObsHeader::numObsForSat
std::map< SatID, std::vector< int > > numObsForSat
PRN / # OF OBS (optional)
Definition: RinexObsHeader.hpp:281
gnsstk::RinexObsHeader::recType
std::string recType
RECEIVER TYPE.
Definition: RinexObsHeader.hpp:264
gnsstk::RinexObsHeader::StandardRinexObsTypes
static const GNSSTK_EXPORT std::vector< RinexObsType > StandardRinexObsTypes
Definition: RinexObsHeader.hpp:246
gnsstk::RinexObsHeader::antType
std::string antType
ANTENNA TYPE.
Definition: RinexObsHeader.hpp:267
RinexSatID.hpp
FFStream.hpp
gnsstk::RinexObsHeader::numObsString
static const GNSSTK_EXPORT std::string numObsString
"# / TYPES OF OBSERV"
Definition: RinexObsHeader.hpp:158
gnsstk::RinexObsHeader::commentValid
@ commentValid
"COMMENT" (optional)
Definition: RinexObsHeader.hpp:182
gnsstk::RinexObsType::description
std::string description
20- char description (optional) e.g. "L1 pseudorange"
Definition: RinexObsHeader.hpp:70
gnsstk::RinexObsHeader::S2
static const GNSSTK_EXPORT RinexObsType S2
Definition: RinexObsHeader.hpp:222
gnsstk::RinexObsHeader
Definition: RinexObsHeader.hpp:107
gnsstk::RinexObsHeader::S6
static const GNSSTK_EXPORT RinexObsType S6
Definition: RinexObsHeader.hpp:233
gnsstk::RinexObsHeader::commentList
std::vector< std::string > commentList
Comments in header (optional)
Definition: RinexObsHeader.hpp:258
gnsstk::RinexObsHeader::C2
static const GNSSTK_EXPORT RinexObsType C2
Definition: RinexObsHeader.hpp:216
gnsstk::RinexObsHeader::S8
static const GNSSTK_EXPORT RinexObsType S8
Definition: RinexObsHeader.hpp:241
gnsstk::RinexObsHeader::antennaPositionValid
@ antennaPositionValid
"APPROX POSITION XYZ"
Definition: RinexObsHeader.hpp:188
gnsstk::RinexObsHeader::D7
static const GNSSTK_EXPORT RinexObsType D7
Definition: RinexObsHeader.hpp:236
gnsstk::RinexObsHeader::validBits
validBits
Validity bits for the RINEX Observation Header.
Definition: RinexObsHeader.hpp:178
gnsstk::RinexObsData
Definition: RinexObsData.hpp:68
gnsstk::RinexObsHeader::runByValid
@ runByValid
"PGM / RUN BY / DATE"
Definition: RinexObsHeader.hpp:181
gnsstk::RinexObsHeader::L8
static const GNSSTK_EXPORT RinexObsType L8
Definition: RinexObsHeader.hpp:239
gnsstk::RinexObsHeader::firstSystem
RinexSatID firstSystem
RINEX satellite system of FIRST OBS timetag.
Definition: RinexObsHeader.hpp:275
gnsstk::RinexObsHeader::antennaOffsetValid
@ antennaOffsetValid
"ANTENNA: DELTA H/E/N"
Definition: RinexObsHeader.hpp:189
gnsstk::RinexObsHeader::isHeader
virtual bool isHeader() const
RinexObsHeader is a "header" so this function always returns true.
Definition: RinexObsHeader.hpp:291
gnsstk::RinexObsHeader::UN
static const GNSSTK_EXPORT RinexObsType UN
Definition: RinexObsHeader.hpp:212
gnsstk::RinexObsType::PSdepend
static const GNSSTK_EXPORT unsigned int PSdepend
Definition: RinexObsHeader.hpp:83
gnsstk::RinexObsHeader::L5
static const GNSSTK_EXPORT RinexObsType L5
Definition: RinexObsHeader.hpp:226
gnsstk::RinexObsType::RinexObsType
RinexObsType(std::string t, std::string d, std::string u, unsigned int dep=0)
Definition: RinexObsHeader.hpp:75
gnsstk::RinexObsHeader::WriteHeaderRecords
void WriteHeaderRecords(FFStream &s) const
Definition: RinexObsHeader.cpp:217
gnsstk::RinexObsHeader::firstTimeValid
@ firstTimeValid
"TIME OF FIRST OBS"
Definition: RinexObsHeader.hpp:193
gnsstk::RinexObsType::P2depend
static const GNSSTK_EXPORT unsigned int P2depend
Definition: RinexObsHeader.hpp:81
gnsstk::RinexObsHeader::numSatsString
static const GNSSTK_EXPORT std::string numSatsString
"# OF SATELLITES"
Definition: RinexObsHeader.hpp:170
gnsstk::RinexObsHeader::C1
static const GNSSTK_EXPORT RinexObsType C1
Definition: RinexObsHeader.hpp:215
gnsstk::RinexObsHeader::receiverOffsetValid
@ receiverOffsetValid
"RCV CLOCK OFFS APPL" (optional)
Definition: RinexObsHeader.hpp:195
gnsstk::RinexObsHeader::recVers
std::string recVers
RECEIVER VERSION.
Definition: RinexObsHeader.hpp:265
gnsstk::RinexObsHeader::endValid
@ endValid
"END OF HEADER"
Definition: RinexObsHeader.hpp:200
gnsstk::RinexObsHeader::markerNameString
static const GNSSTK_EXPORT std::string markerNameString
"MARKER NAME"
Definition: RinexObsHeader.hpp:142
gnsstk::RinexObsHeader::L7
static const GNSSTK_EXPORT RinexObsType L7
Definition: RinexObsHeader.hpp:235


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