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

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