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

Last change on this file since 10239 was 10239, checked in by stuerze, 16 months ago

An option 'Wait for full clock epoch' is added to combination procedure

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