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

Last change on this file since 7048 was 6796, checked in by stuerze, 10 years ago

add an option to write only RINEX files if the respective SKL file is available

File size: 7.2 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#include "pppWidgets.h"
34
35class bncAboutDlg : public QDialog {
36 Q_OBJECT
37 public:
38 bncAboutDlg(QWidget* parent);
39 ~bncAboutDlg();
40};
41
42class bncFlowchartDlg : public QDialog {
43 Q_OBJECT
44
45 public:
46 bncFlowchartDlg(QWidget* parent);
47 ~bncFlowchartDlg();
48};
49
50class bncFigure;
51class bncFigureLate;
52class bncFigurePPP;
53class bncBytesCounter;
54class bncEphUploadCaster;
55class qtFileChooser;
56class bncMapWin;
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
71 private slots:
72 void slotWindowMessage(const QByteArray msg, bool showOnScreen);
73 void slotHelp();
74 void slotAbout();
75 void slotFlowchart();
76 void slotFontSel();
77 void slotSaveOptions();
78 void slotAddMountPoints();
79 void slotMapMountPoints();
80 void slotMapPPP();
81 void slotMapPPPClosed();
82 void slotStart();
83 void slotStop();
84 void slotNewMountPoints(QStringList* mountPoints);
85 void slotDeleteMountPoints();
86 void slotGetThreadsFinished();
87 void slotSelectionChanged();
88 void slotWhatsThis();
89 void slotAddCmbRow();
90 void slotDelCmbRow();
91 void slotAddUploadRow();
92 void slotDelUploadRow();
93 void slotSetUploadTrafo();
94 void slotReqcEditOption();
95 void slotPostProcessingFinished();
96 void slotPostProcessingProgress(int);
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 enableStartStop();
109
110 QMenu* _menuHlp;
111 QMenu* _menuFile;
112
113 QAction* _actHelp;
114 QAction* _actAbout;
115 QAction* _actFlowchart;
116 QAction* _actFontSel;
117 QAction* _actSaveOpt;
118 QAction* _actQuit;
119 QAction* _actMapMountPoints;
120 QAction* _actStart;
121 QAction* _actStop;
122 QAction* _actAddMountPoints;
123 QAction* _actDeleteMountPoints;
124 QAction* _actwhatsthis;
125 QAction* _actwhatsthismenu;
126
127 QLineEdit* _proxyHostLineEdit;
128 QLineEdit* _proxyPortLineEdit;
129 QLineEdit* _sslCaCertPathLineEdit;
130 QCheckBox* _ignoreSslErrorsCheckBox;
131 QLineEdit* _outFileLineEdit;
132 QLineEdit* _outPortLineEdit;
133 QLineEdit* _outUPortLineEdit;
134 QLineEdit* _outEphPortLineEdit;
135 QLineEdit* _corrPortLineEdit;
136 QLineEdit* _rnxPathLineEdit;
137 QLineEdit* _ephPathLineEdit;
138 QLineEdit* _corrPathLineEdit;
139 QLineEdit* _miscMountLineEdit;
140 QLineEdit* _miscPortLineEdit;
141
142 QComboBox* _reqcActionComboBox;
143 QPushButton* _reqcEditOptionButton;
144 qtFileChooser* _reqcObsFileChooser;
145 qtFileChooser* _reqcNavFileChooser;
146 QLineEdit* _reqcOutObsLineEdit;
147 QLineEdit* _reqcOutNavLineEdit;
148 QLineEdit* _reqcOutLogLineEdit;
149 QLineEdit* _reqcPlotDirLineEdit;
150 QLineEdit* _reqcSkyPlotSignals;
151 QCheckBox* _reqcLogSummaryOnly;
152
153 qtFileChooser* _sp3CompFileChooser;
154 QLineEdit* _sp3CompExclude;
155 QLineEdit* _sp3CompLogLineEdit;
156
157 QCheckBox* _rnxV3CheckBox;
158 QLineEdit* _rnxV2Priority;
159 QCheckBox* _ephV3CheckBox;
160 QLineEdit* _rnxSkelLineEdit;
161 QCheckBox* _rnxFileCheckBox;
162 QLineEdit* _rnxScrpLineEdit;
163 QLineEdit* _logFileLineEdit;
164 QLineEdit* _rawOutFileLineEdit;
165 QComboBox* _rnxIntrComboBox;
166 QComboBox* _ephIntrComboBox;
167 QComboBox* _corrIntrComboBox;
168 QSpinBox* _rnxSamplSpinBox;
169 QSpinBox* _binSamplSpinBox;
170 QCheckBox* _rnxAppendCheckBox;
171 QCheckBox* _autoStartCheckBox;
172 QCheckBox* _scanRTCMCheckBox;
173 QSpinBox* _waitTimeSpinBox;
174 QComboBox* _obsRateComboBox;
175 QSpinBox* _adviseFailSpinBox;
176 QSpinBox* _adviseRecoSpinBox;
177 QLineEdit* _adviseScriptLineEdit;
178 QComboBox* _perfIntrComboBox;
179 QTableWidget* _mountPointsTable;
180
181 QLineEdit* _serialPortNameLineEdit;
182 QLineEdit* _serialMountPointLineEdit;
183 QComboBox* _serialBaudRateComboBox;
184 QComboBox* _serialParityComboBox;
185 QComboBox* _serialDataBitsComboBox;
186 QComboBox* _serialStopBitsComboBox;
187 QComboBox* _serialFlowControlComboBox;
188 QLineEdit* _serialHeightNMEALineEdit;
189 QLineEdit* _serialFileNMEALineEdit;
190 QComboBox* _serialAutoNMEAComboBox;
191 QSpinBox* _serialManualNMEASamplingSpinBox;
192
193 QLineEdit* _LatLineEdit;
194 QLineEdit* _LonLineEdit;
195
196 QComboBox* _onTheFlyComboBox;
197
198 QTextEdit* _log;
199
200 QWidget* _canvas;
201 QTabWidget* _aogroup;
202
203 QTabWidget* _loggroup;
204 bncFigure* _bncFigure;
205 bncFigureLate* _bncFigureLate;
206 bncFigurePPP* _bncFigurePPP;
207
208 QTableWidget* _cmbTable;
209 QLineEdit* _cmbMaxresLineEdit;
210 QComboBox* _cmbMethodComboBox;
211 QSpinBox* _cmbSamplSpinBox;
212 QCheckBox* _cmbUseGlonass;
213
214 QTableWidget* _uploadTable;
215 QComboBox* _uploadIntrComboBox;
216 QSpinBox* _uploadSamplRtcmEphCorrSpinBox;
217 QSpinBox* _uploadSamplSp3SpinBox;
218 QSpinBox* _uploadSamplClkRnxSpinBox;
219 qtFileChooser* _uploadAntexFile;
220
221 QLineEdit* _uploadEphHostLineEdit;
222 QLineEdit* _uploadEphPortLineEdit;
223 QLineEdit* _uploadEphPasswordLineEdit;
224 QLineEdit* _uploadEphMountpointLineEdit;
225 QSpinBox* _uploadEphSampleSpinBox;
226 bncBytesCounter* _uploadEphBytesCounter;
227
228 bncCaster* _caster;
229 bncEphUploadCaster* _casterEph;
230
231 bool _runningRealTime;
232 bool _runningPPP;
233 bool _runningEdit;
234 bool _runningQC;
235 bool _runningSp3Comp;
236
237 bool running() {return _runningRealTime || _runningPPP || _runningEdit ||
238 _runningQC || _runningSp3Comp;}
239
240 bncMapWin* _mapWin;
241
242 QList<bncGetThread*> _threads;
243
244 t_pppWidgets _pppWidgets;
245};
246
247#ifdef GNSSCENTER_PLUGIN
248#include "plugininterface.h"
249class t_bncFactory : public QObject, public GnssCenter::t_pluginFactoryInterface {
250 Q_OBJECT
251 Q_INTERFACES(GnssCenter::t_pluginFactoryInterface)
252 public:
253 virtual QWidget* create() {return new bncWindow();}
254 virtual QString getName() const {return QString("BNC");}
255};
256#endif
257
258#endif
Note: See TracBrowser for help on using the repository browser.