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

Last change on this file since 11096 was 11087, checked in by stuerze, 11 days ago

Bias check is added in ssrQC, refernce signals are configurable now

File size: 7.9 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://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 <QDialog>
29#include <QList>
30#include <QMainWindow>
31#include <QTextEdit>
32#include <QWhatsThis>
33
34#include "bncgetthread.h"
35#include "bnccaster.h"
36#include "pppWidgets.h"
37
38class bncAboutDlg : public QDialog {
39 Q_OBJECT
40public:
41 bncAboutDlg(QWidget* parent);
42 ~bncAboutDlg();
43};
44
45class bncFlowchartDlg : public QDialog {
46 Q_OBJECT
47
48public:
49 bncFlowchartDlg(QWidget* parent);
50 ~bncFlowchartDlg();
51};
52
53class bncFigure;
54class bncFigureLate;
55class bncFigurePPP;
56class bncBytesCounter;
57class bncEphUploadCaster;
58class qtFileChooser;
59class bncMapWin;
60
61class bncWindow : public QMainWindow {
62 Q_OBJECT
63
64public:
65 bncWindow();
66 ~bncWindow();
67 void CreateMenu();
68 void AddToolbar();
69
70
71public slots:
72 void slotMountPointsRead(QList<bncGetThread*>);
73 void slotBncTextChanged();
74
75private slots:
76 void slotWindowMessage(const QByteArray msg, bool showOnScreen);
77 void slotHelp();
78 void slotAbout();
79 void slotFlowchart();
80 void slotFontSel();
81 void slotSaveOptions();
82 void slotAddMountPoints();
83 void slotMapMountPoints();
84 void slotMapPPP();
85 void slotMapPPPClosed();
86 void slotStart();
87 void slotStop();
88 void slotNewMountPoints(QStringList* mountPoints);
89 void slotDeleteMountPoints();
90 void slotGetThreadsFinished();
91 void slotSelectionChanged();
92 void slotWhatsThis();
93 void slotAddCmbRow();
94 void slotDelCmbRow();
95 void slotAddUploadRow();
96 void slotDelUploadRow();
97 void slotAddUploadEphRow();
98 void slotDelUploadEphRow();
99 void slotAddUploadRawRow();
100 void slotDelUploadRawRow();
101 void slotSetUploadTrafo();
102 void slotReqcEditOption();
103 void slotPostProcessingFinished();
104 void slotPostProcessingProgress(int);
105
106protected:
107 virtual void closeEvent(QCloseEvent*);
108
109private:
110
111 void saveOptions();
112 void populateMountPointsTable();
113 void populateCmbTable();
114 void populateUploadTable();
115 void populateUploadEphTable();
116 void populateUploadRawTable();
117 void enableWidget(bool enable, QWidget* widget);
118 void startRealTime();
119 void enableStartStop();
120
121 QMenu* _menuHlp;
122 QMenu* _menuFile;
123
124 QAction* _actHelp;
125 QAction* _actAbout;
126 QAction* _actFlowchart;
127 QAction* _actFontSel;
128 QAction* _actSaveOpt;
129 QAction* _actQuit;
130 QAction* _actMapMountPoints;
131 QAction* _actStart;
132 QAction* _actStop;
133 QAction* _actAddMountPoints;
134 QAction* _actDeleteMountPoints;
135 QAction* _actwhatsthis;
136 QAction* _actwhatsthismenu;
137
138 QLineEdit* _proxyHostLineEdit;
139 QLineEdit* _proxyPortLineEdit;
140 QLineEdit* _sslCaCertPathLineEdit;
141 QLineEdit* _sslClientCertPathLineEdit;
142 QCheckBox* _sslIgnoreErrorsCheckBox;
143 QLineEdit* _outFileLineEdit;
144 QLineEdit* _outPortLineEdit;
145 QLineEdit* _outUPortLineEdit;
146 QCheckBox* _outLockTimeCheckBox;
147 QLineEdit* _ephOutPortLineEdit;
148 QLineEdit* _corrPortLineEdit;
149 QLineEdit* _rnxPathLineEdit;
150 QLineEdit* _rnxSkelPathLineEdit;
151 QLineEdit* _ephPathLineEdit;
152 QLineEdit* _corrPathLineEdit;
153 QLineEdit* _ssrQcPathLineEdit;
154 QLineEdit* _ssrQcStreamsLineEdit;
155 QLineEdit* _ssrQcRefLineEdit;
156 qtFileChooser* _ssrQcBiasFileChooser;
157 QLineEdit* _miscMountLineEdit;
158 QLineEdit* _miscPortLineEdit;
159
160 QComboBox* _reqcActionComboBox;
161 QPushButton* _reqcEditOptionButton;
162 qtFileChooser* _reqcObsFileChooser;
163 qtFileChooser* _reqcNavFileChooser;
164 QLineEdit* _reqcOutObsLineEdit;
165 QLineEdit* _reqcOutNavLineEdit;
166 QLineEdit* _reqcOutLogLineEdit;
167 QLineEdit* _reqcPlotDirLineEdit;
168 QLineEdit* _reqcSkyPlotSignals;
169 QCheckBox* _reqcLogSummaryOnly;
170 QSpinBox* _reqcMinEle;
171
172 qtFileChooser* _sp3CompFileChooser;
173 QLineEdit* _sp3CompExclude;
174 QLineEdit* _sp3CompLogLineEdit;
175 QCheckBox* _sp3CompSummaryOnly;
176
177 QComboBox* _rnxVersComboBox;
178 QLineEdit* _rnxV2Priority;
179 QComboBox* _ephVersComboBox;
180 //QCheckBox* _ephFilePerStation;
181 QCheckBox* _rnxFileCheckBox;
182 QLineEdit* _rnxScrpLineEdit;
183 QLineEdit* _logFileLineEdit;
184 QLineEdit* _rawOutFileLineEdit;
185 QComboBox* _rnxIntrComboBox;
186 QComboBox* _ephIntrComboBox;
187 QComboBox* _corrIntrComboBox;
188 QComboBox* _ssrQcIntrComboBox;
189 QComboBox* _rnxSamplComboBox;
190 QComboBox* _rnxSkelExtComboBox;
191 QComboBox* _outSamplComboBox;
192 QCheckBox* _rnxAppendCheckBox;
193 QCheckBox* _autoStartCheckBox;
194 QCheckBox* _miscScanRTCMCheckBox;
195 QSpinBox* _outWaitSpinBox;
196 QComboBox* _adviseObsRateComboBox;
197 QSpinBox* _adviseFailSpinBox;
198 QSpinBox* _adviseRecoSpinBox;
199 QLineEdit* _adviseScriptLineEdit;
200 QComboBox* _miscIntrComboBox;
201 QTableWidget* _mountPointsTable;
202
203 QLineEdit* _serialPortNameLineEdit;
204 QLineEdit* _serialMountPointLineEdit;
205 QComboBox* _serialBaudRateComboBox;
206 QComboBox* _serialParityComboBox;
207 QComboBox* _serialDataBitsComboBox;
208 QComboBox* _serialStopBitsComboBox;
209 QComboBox* _serialFlowControlComboBox;
210 QLineEdit* _serialHeightNMEALineEdit;
211 QLineEdit* _serialFileNMEALineEdit;
212 QComboBox* _serialAutoNMEAComboBox;
213 QSpinBox* _serialNMEASamplingSpinBox;
214
215 QLineEdit* _LatLineEdit;
216 QLineEdit* _LonLineEdit;
217
218 QComboBox* _onTheFlyComboBox;
219
220 QTextEdit* _log;
221
222 QWidget* _canvas;
223 QTabWidget* _aogroup;
224
225 QTabWidget* _loggroup;
226 bncFigure* _bncFigure;
227 bncFigureLate* _bncFigureLate;
228 bncFigurePPP* _bncFigurePPP;
229
230 QTableWidget* _cmbTable;
231 QLineEdit* _cmbMaxresLineEdit;
232 QLineEdit* _cmbMaxdisplacementLineEdit;
233 QComboBox* _cmbMethodComboBox;
234 QComboBox* _cmbSamplComboBox;
235 QLineEdit* _cmbLogPath;
236 QCheckBox* _cmbGpsCheckBox;
237 QCheckBox* _cmbGloCheckBox;
238 QCheckBox* _cmbGalCheckBox;
239 QCheckBox* _cmbBdsCheckBox;
240 QCheckBox* _cmbQzssCheckBox;
241 QCheckBox* _cmbSbasCheckBox;
242 QCheckBox* _cmbNavicCheckBox;
243 qtFileChooser* _cmbBsxFile;
244 QLineEdit* _cmbRefSigLineEdit;
245
246 QTableWidget* _uploadTable;
247 QComboBox* _uploadIntrComboBox;
248 QComboBox* _uploadSamplRtcmEphCorrComboBox;
249 QComboBox* _uploadSamplSp3ComboBox;
250 QSpinBox* _uploadSamplClkRnxSpinBox;
251 QSpinBox* _uploadSamplBiaSnxSpinBox;
252 qtFileChooser* _uploadAntexFile;
253
254 QTableWidget* _uploadEphTable;
255 QSpinBox* _uploadSamplRtcmEphSpinBox;
256
257 QTableWidget* _uploadRawTable;
258
259 bncCaster* _caster;
260 bncEphUploadCaster* _casterEph;
261
262 bool _runningRealTime;
263 bool _runningPPP;
264 bool _runningEdit;
265 bool _runningQC;
266 bool _runningSp3Comp;
267
268 bool running() {
269 return _runningRealTime || _runningPPP || _runningEdit ||
270 _runningQC || _runningSp3Comp;
271 }
272
273 bncMapWin* _mapWin;
274
275 QList<bncGetThread*> _threads;
276
277 t_pppWidgets _pppWidgets;
278};
279
280#ifdef GNSSCENTER_PLUGIN
281#include "plugininterface.h"
282class t_bncFactory : public QObject, public GnssCenter::t_pluginFactoryInterface {
283 Q_OBJECT
284 Q_INTERFACES(GnssCenter::t_pluginFactoryInterface)
285public:
286 virtual QWidget* create() { return new bncWindow(); }
287 virtual QString getName() const { return QString("BNC"); }
288};
289#endif
290
291#endif
Note: See TracBrowser for help on using the repository browser.