source: ntrip/trunk/BNC/pppopt.cpp@ 3633

Last change on this file since 3633 was 3633, checked in by mervart, 12 years ago
File size: 3.8 KB
Line 
1// Part of BNC, a utility for retrieving decoding and
2// converting GNSS data streams from NTRIP broadcasters.
3//
4// Copyright (C) 2007
5// German Federal Agency for Cartography and Geodesy (BKG)
6// http://www.bkg.bund.de
7// Czech Technical University Prague, Department of Geodesy
8// http://www.fsv.cvut.cz
9//
10// Email: euref-ip@bkg.bund.de
11//
12// This program is free software; you can redistribute it and/or
13// modify it under the terms of the GNU General Public License
14// as published by the Free Software Foundation, version 2.
15//
16// This program is distributed in the hope that it will be useful,
17// but WITHOUT ANY WARRANTY; without even the implied warranty of
18// MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
19// GNU General Public License for more details.
20//
21// You should have received a copy of the GNU General Public License
22// along with this program; if not, write to the Free Software
23// Foundation, Inc., 59 Temple Place - Suite 330, Boston, MA 02111-1307, USA.
24
25/* -------------------------------------------------------------------------
26 * BKG NTRIP Client
27 * -------------------------------------------------------------------------
28 *
29 * Class: t_pppOpt
30 *
31 * Purpose: Options for Precise Point Positioning
32 *
33 * Author: L. Mervart
34 *
35 * Created: 22-Jan-2012
36 *
37 * Changes:
38 *
39 * -----------------------------------------------------------------------*/
40
41#include <iostream>
42#include "pppopt.h"
43#include "bncsettings.h"
44
45using namespace std;
46
47// Constructor
48////////////////////////////////////////////////////////////////////////////
49t_pppOpt::t_pppOpt() {
50 bncSettings settings;
51
52 sigmaCode = settingsToDouble("pppSigmaCode", 5.0);
53 sigmaPhase = settingsToDouble("pppSigmaPhase", 0.02);
54 sigCrd0 = settingsToDouble("pppSigCrd0", 100.0);
55 sigCrdP = settingsToDouble("pppSigCrdP", 100.0);
56 sigTrp0 = settingsToDouble("pppSigTrp0", 0.1);
57 sigTrpP = settingsToDouble("pppSigTrpP", 1e-6);
58 refCrd[0] = settingsToDouble("pppRefCrdX");
59 refCrd[1] = settingsToDouble("pppRefCrdY");
60 refCrd[2] = settingsToDouble("pppRefCrdZ");
61 antEccNEU[0] = settingsToDouble("pppRefdN");
62 antEccNEU[1] = settingsToDouble("pppRefdE");
63 antEccNEU[2] = settingsToDouble("pppRefdU");
64 maxSolGap = settingsToDouble("pppMaxSolGap");
65 quickStart = settingsToDouble("pppQuickStart"); if (!refCrdSet()) quickStart = 0.0;
66 corrSync = settingsToDouble("pppSync"); if (!pppMode) corrSync = 0.0;
67
68 pppCorrMount = settings.value("pppCorrMount").toString();
69 nmeaFile = settings.value("nmeaFile").toString();
70 antexFile = settings.value("pppAntex").toString();
71 antennaName = settings.value("pppAntenna").toString();
72
73 pppMode = settings.value("pppSPP").toString() == "PPP";
74 rnxAppend = settingsChecked("rnxAppend");
75 usePhase = settingsChecked("pppUsePhase");
76 estTropo = settingsChecked("pppEstTropo");
77 useGlonass = settingsChecked("pppGLONASS");
78 useGalileo = settingsChecked("pppGalileo");
79}
80
81// Destructor
82////////////////////////////////////////////////////////////////////////////
83t_pppOpt::~t_pppOpt() {
84}
85
86// Settings Value with Default
87////////////////////////////////////////////////////////////////////////////
88double t_pppOpt::settingsToDouble(const QByteArray& keyName,
89 double defaultValue) const {
90 bncSettings settings;
91 if (settings.value(keyName).toString().isEmpty()) {
92 return defaultValue;
93 }
94 else {
95 return settings.value(keyName).toDouble();
96 }
97}
98
99// Settings Checked
100////////////////////////////////////////////////////////////////////////////
101bool t_pppOpt::settingsChecked(const QByteArray& keyName) const {
102 bncSettings settings;
103 if (Qt::CheckState(settings.value(keyName).toInt()) == Qt::Checked) {
104 return true;
105 }
106 else {
107 return false;
108 }
109}
Note: See TracBrowser for help on using the repository browser.