source: ntrip/trunk/BNC/src/PPP/ppp.h@ 5749

Last change on this file since 5749 was 5749, checked in by mervart, 10 years ago
File size: 3.3 KB
RevLine 
[5678]1#ifndef PPP_H
2#define PPP_H
3
4#include <string>
[5747]5#include <vector>
[5742]6
7#include "bncconst.h"
[5708]8#include "bnctime.h"
[5742]9#include "t_prn.h"
[5678]10
11namespace BNC {
12
13enum e_pppMode {
14 mode_PPP_DF,
15 mode_SPP_DF,
16 mode_PPP_SF,
17 mode_SPP_SF,
18};
19
[5743]20class t_output {
[5678]21 public:
22 bncTime _epoTime;
23 double _xyzRover[3];
24 double _covMatrix[6];
25 int _numSat;
26 double _pDop;
27 std::string _log;
28 bool _error;
29};
30
[5742]31class t_obs {
[5678]32 public:
33 std::string _rnxType2ch;
34 double _code;
35 bool _codeValid;
36 double _phase;
37 bool _phaseValid;
38 double _doppler;
39 bool _dopplerValid;
40 double _snr;
41 bool _snrValid;
42 bool _slip;
43 int _slipCounter;
[5742]44 int _biasJumpCounter;
[5678]45};
46
[5744]47class t_pppSatObs {
[5678]48 public:
[5742]49 t_prn _prn;
50 bncTime _time;
51 std::vector<t_obs> _obs;
[5678]52};
53
[5742]54class t_orbCorr {
[5678]55 public:
[5749]56 t_prn prn() const {return _prn;}
57 unsigned short IOD() const {return _iod;}
[5742]58 t_prn _prn;
[5678]59 unsigned short _iod;
60 bncTime _time;
61 char _system;
62 double _xr[3];
63 double _dotXr[3];
64};
65
[5742]66class t_clkCorr {
[5678]67 public:
[5749]68 t_prn prn() const {return _prn;}
69 unsigned short IOD() const {return _iod;}
[5742]70 t_prn _prn;
[5678]71 unsigned short _iod;
72 bncTime _time;
73 double _dClk;
74 double _dotDClk;
75 double _dotDotDClk;
76 double _clkPartial;
77};
78
[5742]79class t_bias {
[5678]80 public:
81 std::string _rnxType3ch;
82 double _value;
83};
84
[5742]85class t_satBiases {
[5678]86 public:
[5742]87 t_prn _prn;
88 bncTime _time;
89 int _nx;
90 int _jumpCount;
91 std::vector<t_bias> _biases;
[5678]92};
93
94enum e_tropoModel{tropoModel_NO, tropoModel_SAAST, tropoModel_MARINI,
95 tropoModel_HOPF, tropoModel_UNB3M};
96
97enum e_tropoMF{tropoMF_INTRINSIC, tropoMF_COSZ, tropoMF_NIELL_DRY,
98 tropoMF_NIELL_WET, tropoMF_HOPF, tropoMF_GMF_DRY,
99 tropoMF_GMF_WET, tropoMF_GMF_COMB};
100
101class t_frequency {
102 public:
103 enum type {dummy = 0, G1, G2, R1, R2, maxFr};
104
105 static std::string toString(type tt) {
106 if (tt == G1) return "G1";
107 else if (tt == G2) return "G2";
108 else if (tt == R1) return "R1";
109 else if (tt == R2) return "R2";
110 return std::string();
111 }
112};
113
114class t_lc {
115 public:
116 enum type {dummy = 0, l1, l2, c1, c2, lIF, cIF, MW, CL, maxLc};
117
118 static bool need2ndFreq(type tt) {
119 if (tt == l2 || tt == c2 || tt == lIF || tt == cIF || tt == MW) return true;
120 return false;
121 }
122
123 static bool includesPhase(type tt) {
124 if (tt == l1 || tt == l2 || tt == lIF || tt == MW || tt == CL) return true;
125 return false;
126 }
127
128 static bool includesCode(type tt) {
129 if (tt == c1 || tt == c2 || tt == cIF || tt == MW || tt == CL) return true;
130 return false;
131 }
132
133 static std::string toString(type tt) {
134 if (tt == l1) return "l1";
135 else if (tt == l2) return "l2";
136 else if (tt == c1) return "c1";
137 else if (tt == c2) return "c2";
138 else if (tt == lIF) return "lIF";
139 else if (tt == cIF) return "cIF";
140 else if (tt == MW) return "MW";
141 else if (tt == CL) return "CL";
142 return std::string();
143 }
144};
145
146} // namespace BNC
147
148#endif
Note: See TracBrowser for help on using the repository browser.