source: ntrip/trunk/BNC/src/bncwindow.h@ 5230

Last change on this file since 5230 was 5225, checked in by mervart, 11 years ago
File size: 9.0 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#ifndef BNCWINDOW_H
26#define BNCWINDOW_H
27
28#include <QtGui>
29#include <QWhatsThis>
30
31#include "bncgetthread.h"
32#include "bnccaster.h"
33
34class bncAboutDlg : public QDialog {
35 Q_OBJECT
36 public:
37 bncAboutDlg(QWidget* parent);
38 ~bncAboutDlg();
39};
40
41class bncFlowchartDlg : public QDialog {
42 Q_OBJECT
43
44 public:
45 bncFlowchartDlg(QWidget* parent);
46 ~bncFlowchartDlg();
47};
48
49class bncFigure;
50class bncFigureLate;
51class bncFigurePPP;
52class bncBytesCounter;
53class bncEphUploadCaster;
54class qtFileChooser;
55class bncMapWin;
56class t_postProcessing;
57
58class bncWindow : public QMainWindow {
59 Q_OBJECT
60
61 public:
62 bncWindow();
63 ~bncWindow();
64 void CreateMenu();
65 void AddToolbar();
66
67 public slots:
68 void slotMountPointsRead(QList<bncGetThread*>);
69 void slotBncTextChanged();
70 void slotPostProgress(int);
71
72 private slots:
73 void slotWindowMessage(const QByteArray msg, bool showOnScreen);
74 void slotHelp();
75 void slotAbout();
76 void slotFlowchart();
77 void slotFontSel();
78 void slotSaveOptions();
79 void slotAddMountPoints();
80 void slotMapMountPoints();
81 void slotMapPPP();
82 void slotStart();
83 void slotFinishedPostProcessingPPP();
84 void slotFinishedPostProcessingReqc();
85 void slotStop();
86 void slotNewMountPoints(QStringList* mountPoints);
87 void slotDeleteMountPoints();
88 void slotGetThreadsFinished();
89 void slotSelectionChanged();
90 void slotWhatsThis();
91 void slotAddCmbRow();
92 void slotDelCmbRow();
93 void slotAddUploadRow();
94 void slotDelUploadRow();
95 void slotSetUploadTrafo();
96 void slotReqcEditOption();
97
98 protected:
99 virtual void closeEvent(QCloseEvent *);
100
101 private:
102 void saveOptions();
103 void populateMountPointsTable();
104 void populateCmbTable();
105 void populateUploadTable();
106 void enableWidget(bool enable, QWidget* widget);
107 void startRealTime();
108 void startPostProcessingPPP();
109 void startPostProcessingReqc();
110 void enableStartStop();
111
112 QMenu* _menuHlp;
113 QMenu* _menuFile;
114
115 QAction* _actHelp;
116 QAction* _actAbout;
117 QAction* _actFlowchart;
118 QAction* _actFontSel;
119 QAction* _actSaveOpt;
120 QAction* _actQuit;
121 QAction* _actMapMountPoints;
122 QAction* _actStart;
123 QAction* _actStop;
124 QAction* _actAddMountPoints;
125 QAction* _actDeleteMountPoints;
126 QAction* _actwhatsthis;
127 QAction* _actwhatsthismenu;
128
129 QLineEdit* _proxyHostLineEdit;
130 QLineEdit* _proxyPortLineEdit;
131 QLineEdit* _sslCaCertPathLineEdit;
132 QCheckBox* _ignoreSslErrorsCheckBox;
133 QLineEdit* _outFileLineEdit;
134 QLineEdit* _outPortLineEdit;
135 QLineEdit* _outUPortLineEdit;
136 QLineEdit* _outEphPortLineEdit;
137 QLineEdit* _corrPortLineEdit;
138 QLineEdit* _rnxPathLineEdit;
139 QLineEdit* _ephPathLineEdit;
140 QLineEdit* _corrPathLineEdit;
141 QLineEdit* _miscMountLineEdit;
142 QLineEdit* _pppMountLineEdit;
143 QLineEdit* _pppCorrMountLineEdit;
144 QLineEdit* _pppNMEALineEdit;
145 QLineEdit* _pppNMEAPortLineEdit;
146 QLineEdit* _pppSigCLineEdit;
147 QLineEdit* _pppSigPLineEdit;
148 QLineEdit* _pppSigCrd0;
149 QLineEdit* _pppSigCrdP;
150 QLineEdit* _pppSigTrp0;
151 QLineEdit* _pppSigTrpP;
152 QLineEdit* _pppSync;
153 QLineEdit* _pppAverageLineEdit;
154 QLineEdit* _pppQuickStartLineEdit;
155 QLineEdit* _pppMaxSolGapLineEdit;
156 QLineEdit* _pppAudioResponseLineEdit;
157 QLineEdit* _pppRefCrdXLineEdit;
158 QLineEdit* _pppRefCrdYLineEdit;
159 QLineEdit* _pppRefCrdZLineEdit;
160 QLineEdit* _pppRefdNLineEdit;
161 QLineEdit* _pppRefdELineEdit;
162 QLineEdit* _pppRefdULineEdit;
163 QCheckBox* _pppPlotCoordinates;
164 QCheckBox* _pppUsePhaseCheckBox;
165 QCheckBox* _pppEstTropoCheckBox;
166 QCheckBox* _pppGLONASSCheckBox;
167 QCheckBox* _pppGalileoCheckBox;
168 QLineEdit* _pppAntennaLineEdit;
169 qtFileChooser* _pppAntexFileChooser;
170
171 qtFileChooser* _postObsFileChooser;
172 qtFileChooser* _postNavFileChooser;
173 qtFileChooser* _postCorrFileChooser;
174 QLineEdit* _postOutLineEdit;
175
176 QComboBox* _reqcActionComboBox;
177 QPushButton* _reqcEditOptionButton;
178 qtFileChooser* _reqcObsFileChooser;
179 qtFileChooser* _reqcNavFileChooser;
180 QLineEdit* _reqcOutObsLineEdit;
181 QLineEdit* _reqcOutNavLineEdit;
182 QLineEdit* _reqcOutLogLineEdit;
183 QLineEdit* _reqcPlotDirLineEdit;
184 QComboBox* _reqcSkyPlotSystems;
185
186 QCheckBox* _rnxV3CheckBox;
187 QCheckBox* _ephV3CheckBox;
188 QLineEdit* _rnxSkelLineEdit;
189 QLineEdit* _rnxScrpLineEdit;
190 QLineEdit* _logFileLineEdit;
191 QLineEdit* _rawOutFileLineEdit;
192 QComboBox* _pppSPPComboBox;
193 QComboBox* _rnxIntrComboBox;
194 QComboBox* _ephIntrComboBox;
195 QComboBox* _corrIntrComboBox;
196 QSpinBox* _rnxSamplSpinBox;
197 QSpinBox* _binSamplSpinBox;
198 QCheckBox* _rnxAppendCheckBox;
199 QCheckBox* _autoStartCheckBox;
200 QCheckBox* _scanRTCMCheckBox;
201 QSpinBox* _waitTimeSpinBox;
202 QSpinBox* _corrTimeSpinBox;
203 QComboBox* _obsRateComboBox;
204 QSpinBox* _adviseFailSpinBox;
205 QSpinBox* _adviseRecoSpinBox;
206 QLineEdit* _adviseScriptLineEdit;
207 QComboBox* _perfIntrComboBox;
208 QTableWidget* _mountPointsTable;
209
210 QLineEdit* _serialPortNameLineEdit;
211 QLineEdit* _serialMountPointLineEdit;
212 QComboBox* _serialBaudRateComboBox;
213 QComboBox* _serialParityComboBox;
214 QComboBox* _serialDataBitsComboBox;
215 QComboBox* _serialStopBitsComboBox;
216 QComboBox* _serialFlowControlComboBox;
217 QLineEdit* _serialHeightNMEALineEdit;
218 QLineEdit* _serialFileNMEALineEdit;
219 QComboBox* _serialAutoNMEAComboBox;
220
221 QLineEdit* _LatLineEdit;
222 QLineEdit* _LonLineEdit;
223
224 QComboBox* _onTheFlyComboBox;
225
226 QTextEdit* _log;
227
228 QWidget* _canvas;
229 QTabWidget* _aogroup;
230
231 QTabWidget* _loggroup;
232 bncFigure* _bncFigure;
233 bncFigureLate* _bncFigureLate;
234 bncFigurePPP* _bncFigurePPP;
235
236 QTableWidget* _cmbTable;
237 QLineEdit* _cmbMaxresLineEdit;
238 QComboBox* _cmbMethodComboBox;
239 QSpinBox* _cmbSamplSpinBox;
240
241 QTableWidget* _uploadTable;
242 QComboBox* _uploadIntrComboBox;
243 QSpinBox* _uploadSamplRtcmEphCorrSpinBox;
244 QSpinBox* _uploadSamplSp3SpinBox;
245 QSpinBox* _uploadSamplClkRnxSpinBox;
246
247 QLineEdit* _uploadEphHostLineEdit;
248 QLineEdit* _uploadEphPortLineEdit;
249 QLineEdit* _uploadEphPasswordLineEdit;
250 QLineEdit* _uploadEphMountpointLineEdit;
251 QSpinBox* _uploadEphSampleSpinBox;
252 bncBytesCounter* _uploadEphBytesCounter;
253
254 bncCaster* _caster;
255
256 bncEphUploadCaster* _casterEph;
257
258 bool _realTimeRunning;
259 bool _runningRealTime;
260 bool _runningPostProcessingPPP;
261 bool _runningPostProcessingReqc;
262 t_postProcessing* _postProcessing;
263
264 QPushButton* _mapWinButton;
265 QRadioButton* _gmRadioButton;
266 QRadioButton* _osmRadioButton;
267 QCheckBox* _mapWinTraceCheckBox;
268 QSlider* _mapSpeedSlider;
269 bncMapWin* _mapWin;
270 QList<bncGetThread*> _threads;
271
272#ifdef RTROVER_INTERFACE
273 QComboBox* _rtroverModeComboBox;
274 QLineEdit* _rtroverRoverMountLineEdit;
275 QLineEdit* _rtroverCorrMountLineEdit;
276 QLineEdit* _rtroverBaseMountLineEdit;
277 QLineEdit* _rtroverRoverRefCrdXLineEdit;
278 QLineEdit* _rtroverRoverRefCrdYLineEdit;
279 QLineEdit* _rtroverRoverRefCrdZLineEdit;
280 QLineEdit* _rtroverBaseRefCrdXLineEdit;
281 QLineEdit* _rtroverBaseRefCrdYLineEdit;
282 QLineEdit* _rtroverBaseCrdZLineEdit;
283 QLineEdit* _rtroverRoverDNLineEdit;
284 QLineEdit* _rtroverRoverDELineEdit;
285 QLineEdit* _rtroverRoverDULineEdit;
286 QLineEdit* _rtroverBaseDNLineEdit;
287 QLineEdit* _rtroverBaseDELineEdit;
288 QLineEdit* _rtroverBaseDULineEdit;
289 QLineEdit* _rtroverRoverAntennaLineEdit;
290 QLineEdit* _rtroverBaseAntennaLineEdit;
291 qtFileChooser* _rtroverAntexFileChooser;
292 QLineEdit* _rtroverOutputLineEdit;
293#endif
294};
295
296#ifdef GNSSCENTER_PLUGIN
297#include "plugininterface.h"
298class t_bncFactory : public QObject, public GnssCenter::t_pluginFactoryInterface {
299 Q_OBJECT
300 Q_INTERFACES(GnssCenter::t_pluginFactoryInterface)
301 public:
302 virtual QWidget* create() {return new bncWindow();}
303 virtual QString getName() const {return QString("BNC");}
304};
305#endif
306
307#endif
Note: See TracBrowser for help on using the repository browser.