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

Last change on this file was 10420, checked in by stuerze, 2 weeks ago
File size: 7.6 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* _serialNMEASamplingSpinBox;
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 QCheckBox* _cmbGpsCheckBox;
224 QCheckBox* _cmbGloCheckBox;
225 QCheckBox* _cmbGalCheckBox;
226 QCheckBox* _cmbBdsCheckBox;
227 QCheckBox* _cmbQzssCheckBox;
228 QCheckBox* _cmbSbasCheckBox;
229 QCheckBox* _cmbIrnssCheckBox;
230 qtFileChooser* _cmbBsxFile;
231
232 QTableWidget* _uploadTable;
233 QComboBox* _uploadIntrComboBox;
234 QSpinBox* _uploadSamplRtcmEphCorrSpinBox;
235 QComboBox* _uploadSamplSp3ComboBox;
236 QSpinBox* _uploadSamplClkRnxSpinBox;
237 QSpinBox* _uploadSamplBiaSnxSpinBox;
238 qtFileChooser* _uploadAntexFile;
239
240 QTableWidget* _uploadEphTable;
241 QSpinBox* _uploadSamplRtcmEphSpinBox;
242
243 bncCaster* _caster;
244 bncEphUploadCaster* _casterEph;
245
246 bool _runningRealTime;
247 bool _runningPPP;
248 bool _runningEdit;
249 bool _runningQC;
250 bool _runningSp3Comp;
251
252 bool running() {return _runningRealTime || _runningPPP || _runningEdit ||
253 _runningQC || _runningSp3Comp;}
254
255 bncMapWin* _mapWin;
256
257 QList<bncGetThread*> _threads;
258
259 t_pppWidgets _pppWidgets;
260};
261
262#ifdef GNSSCENTER_PLUGIN
263#include "plugininterface.h"
264class t_bncFactory : public QObject, public GnssCenter::t_pluginFactoryInterface {
265 Q_OBJECT
266 Q_INTERFACES(GnssCenter::t_pluginFactoryInterface)
267 public:
268 virtual QWidget* create() {return new bncWindow();}
269 virtual QString getName() const {return QString("BNC");}
270};
271#endif
272
273#endif
Note: See TracBrowser for help on using the repository browser.