1 | #ifndef OPTIONS_H
|
---|
2 | #define OPTIONS_H
|
---|
3 |
|
---|
4 | #include <string>
|
---|
5 | #include <vector>
|
---|
6 | #include <newmat.h>
|
---|
7 | #include "pppInclude.h"
|
---|
8 |
|
---|
9 | namespace BNC_PPP {
|
---|
10 |
|
---|
11 | class t_pppOptions {
|
---|
12 | public:
|
---|
13 | enum iono_type {est,PPP_RTK};
|
---|
14 | t_pppOptions();
|
---|
15 | ~t_pppOptions();
|
---|
16 |
|
---|
17 | std::vector<char> systems() const;
|
---|
18 | const std::vector<t_lc::type>& LCs(char system) const;
|
---|
19 | const std::vector<char>& frqBands(char system) const;
|
---|
20 | std::vector<t_lc::type> ambLCs(char system) const;
|
---|
21 | std::vector<t_lc::type> codeLCs(char system) const;
|
---|
22 | std::vector<t_lc::type> ionoLCs(char system) const;
|
---|
23 | bool useSystem(char system) const {return LCs(system).size() > 0;}
|
---|
24 | bool useOrbClkCorr() const;
|
---|
25 | bool estTrp() const {return _aprSigTrp > 0.0 || _noiseTrp > 0.0;}
|
---|
26 | bool xyzAprRoverSet() const {
|
---|
27 | return (_xyzAprRover[0] != 0.0 || _xyzAprRover[1] != 0.0 || _xyzAprRover[2] != 0.0);
|
---|
28 | }
|
---|
29 |
|
---|
30 | iono_type _ionoModelType;
|
---|
31 | bool _realTime;
|
---|
32 | std::string _crdFile;
|
---|
33 | std::string _corrMount;
|
---|
34 | std::string _ionoMount;
|
---|
35 | bool _isAPC;
|
---|
36 | std::string _rinexObs;
|
---|
37 | std::string _rinexNav;
|
---|
38 | std::string _corrFile;
|
---|
39 | std::string _ionoFile;
|
---|
40 | double _corrWaitTime;
|
---|
41 | std::string _roverName;
|
---|
42 | ColumnVector _xyzAprRover;
|
---|
43 | ColumnVector _neuEccRover;
|
---|
44 | std::string _recNameRover;
|
---|
45 | std::string _antNameRover;
|
---|
46 | std::string _antexFileName;
|
---|
47 | std::string _blqFileName;
|
---|
48 | double _sigmaC1;
|
---|
49 | double _sigmaL1;
|
---|
50 | double _sigmaGIM;
|
---|
51 | double _maxResC1;
|
---|
52 | double _maxResL1;
|
---|
53 | double _maxResGIM;
|
---|
54 | bool _eleWgtCode;
|
---|
55 | bool _eleWgtPhase;
|
---|
56 | double _minEle;
|
---|
57 | int _minObs;
|
---|
58 | ColumnVector _aprSigCrd;
|
---|
59 | double _aprSigClk;
|
---|
60 | double _aprSigClkOff;
|
---|
61 | double _aprSigTrp;
|
---|
62 | double _aprSigIon;
|
---|
63 | double _aprSigAmb;
|
---|
64 | double _aprSigCodeBias;
|
---|
65 | double _aprSigPhaseBias;
|
---|
66 | ColumnVector _noiseCrd;
|
---|
67 | double _noiseTrp;
|
---|
68 | double _noiseIon;
|
---|
69 | double _noiseCodeBias;
|
---|
70 | double _noisePhaseBias;
|
---|
71 | int _nmeaPort;
|
---|
72 | std::string _signalPriorities;
|
---|
73 | double _seedingTime;
|
---|
74 | std::vector<t_lc::type> _LCsGPS;
|
---|
75 | std::vector<t_lc::type> _LCsGLONASS;
|
---|
76 | std::vector<t_lc::type> _LCsGalileo;
|
---|
77 | std::vector<t_lc::type> _LCsBDS;
|
---|
78 | std::vector<char> _frqBandsGPS;
|
---|
79 | std::vector<char> _frqBandsGLONASS;
|
---|
80 | std::vector<char> _frqBandsGalileo;
|
---|
81 | std::vector<char> _frqBandsBDS;
|
---|
82 | bool _pseudoObsIono;
|
---|
83 | bool _refSatRequired;
|
---|
84 | };
|
---|
85 |
|
---|
86 | }
|
---|
87 |
|
---|
88 | #endif
|
---|