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

Last change on this file since 7971 was 7889, checked in by stuerze, 9 years ago

BNC's ephemeris upload is extended to allows an upload of more than one stream and to choose a single satellite system

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 slotAddUploadEphRow();
94 void slotDelUploadEphRow();
95 void slotSetUploadTrafo();
96 void slotReqcEditOption();
97 void slotPostProcessingFinished();
98 void slotPostProcessingProgress(int);
99
100 protected:
101 virtual void closeEvent(QCloseEvent *);
102
103 private:
104 void saveOptions();
105 void populateMountPointsTable();
106 void populateCmbTable();
107 void populateUploadTable();
108 void populateUploadEphTable();
109 void enableWidget(bool enable, QWidget* widget);
110 void startRealTime();
111 void enableStartStop();
112
113 QMenu* _menuHlp;
114 QMenu* _menuFile;
115
116 QAction* _actHelp;
117 QAction* _actAbout;
118 QAction* _actFlowchart;
119 QAction* _actFontSel;
120 QAction* _actSaveOpt;
121 QAction* _actQuit;
122 QAction* _actMapMountPoints;
123 QAction* _actStart;
124 QAction* _actStop;
125 QAction* _actAddMountPoints;
126 QAction* _actDeleteMountPoints;
127 QAction* _actwhatsthis;
128 QAction* _actwhatsthismenu;
129
130 QLineEdit* _proxyHostLineEdit;
131 QLineEdit* _proxyPortLineEdit;
132 QLineEdit* _sslCaCertPathLineEdit;
133 QCheckBox* _sslIgnoreErrorsCheckBox;
134 QLineEdit* _outFileLineEdit;
135 QLineEdit* _outPortLineEdit;
136 QLineEdit* _outUPortLineEdit;
137 QLineEdit* _ephOutPortLineEdit;
138 QLineEdit* _corrPortLineEdit;
139 QLineEdit* _rnxPathLineEdit;
140 QLineEdit* _ephPathLineEdit;
141 QLineEdit* _corrPathLineEdit;
142 QLineEdit* _miscMountLineEdit;
143 QLineEdit* _miscPortLineEdit;
144
145 QComboBox* _reqcActionComboBox;
146 QPushButton* _reqcEditOptionButton;
147 qtFileChooser* _reqcObsFileChooser;
148 qtFileChooser* _reqcNavFileChooser;
149 QLineEdit* _reqcOutObsLineEdit;
150 QLineEdit* _reqcOutNavLineEdit;
151 QLineEdit* _reqcOutLogLineEdit;
152 QLineEdit* _reqcPlotDirLineEdit;
153 QLineEdit* _reqcSkyPlotSignals;
154 QCheckBox* _reqcLogSummaryOnly;
155
156 qtFileChooser* _sp3CompFileChooser;
157 QLineEdit* _sp3CompExclude;
158 QLineEdit* _sp3CompLogLineEdit;
159
160 QCheckBox* _rnxV3CheckBox;
161 QLineEdit* _rnxV2Priority;
162 QCheckBox* _ephV3CheckBox;
163 QCheckBox* _ephV3filenameCheckBox;
164 QLineEdit* _rnxSkelLineEdit;
165 QCheckBox* _rnxFileCheckBox;
166 QCheckBox* _rnxV3filenameCheckBox;
167 QLineEdit* _rnxScrpLineEdit;
168 QLineEdit* _logFileLineEdit;
169 QLineEdit* _rawOutFileLineEdit;
170 QComboBox* _rnxIntrComboBox;
171 QComboBox* _ephIntrComboBox;
172 QComboBox* _corrIntrComboBox;
173 QSpinBox* _rnxSamplSpinBox;
174 QSpinBox* _outSamplSpinBox;
175 QCheckBox* _rnxAppendCheckBox;
176 QCheckBox* _autoStartCheckBox;
177 QCheckBox* _miscScanRTCMCheckBox;
178 QSpinBox* _outWaitSpinBox;
179 QComboBox* _adviseObsRateComboBox;
180 QSpinBox* _adviseFailSpinBox;
181 QSpinBox* _adviseRecoSpinBox;
182 QLineEdit* _adviseScriptLineEdit;
183 QComboBox* _miscIntrComboBox;
184 QTableWidget* _mountPointsTable;
185
186 QLineEdit* _serialPortNameLineEdit;
187 QLineEdit* _serialMountPointLineEdit;
188 QComboBox* _serialBaudRateComboBox;
189 QComboBox* _serialParityComboBox;
190 QComboBox* _serialDataBitsComboBox;
191 QComboBox* _serialStopBitsComboBox;
192 QComboBox* _serialFlowControlComboBox;
193 QLineEdit* _serialHeightNMEALineEdit;
194 QLineEdit* _serialFileNMEALineEdit;
195 QComboBox* _serialAutoNMEAComboBox;
196 QSpinBox* _serialManualNMEASamplingSpinBox;
197
198 QLineEdit* _LatLineEdit;
199 QLineEdit* _LonLineEdit;
200
201 QComboBox* _onTheFlyComboBox;
202
203 QTextEdit* _log;
204
205 QWidget* _canvas;
206 QTabWidget* _aogroup;
207
208 QTabWidget* _loggroup;
209 bncFigure* _bncFigure;
210 bncFigureLate* _bncFigureLate;
211 bncFigurePPP* _bncFigurePPP;
212
213 QTableWidget* _cmbTable;
214 QLineEdit* _cmbMaxresLineEdit;
215 QComboBox* _cmbMethodComboBox;
216 QSpinBox* _cmbSamplSpinBox;
217 QCheckBox* _cmbUseGlonass;
218
219 QTableWidget* _uploadTable;
220 QComboBox* _uploadIntrComboBox;
221 QSpinBox* _uploadSamplRtcmEphCorrSpinBox;
222 QSpinBox* _uploadSamplSp3SpinBox;
223 QSpinBox* _uploadSamplClkRnxSpinBox;
224 qtFileChooser* _uploadAntexFile;
225
226 QTableWidget* _uploadEphTable;
227 QSpinBox* _uploadSamplRtcmEphSpinBox;
228
229 bncCaster* _caster;
230 bncEphUploadCaster* _casterEph;
231
232 bool _runningRealTime;
233 bool _runningPPP;
234 bool _runningEdit;
235 bool _runningQC;
236 bool _runningSp3Comp;
237
238 bool running() {return _runningRealTime || _runningPPP || _runningEdit ||
239 _runningQC || _runningSp3Comp;}
240
241 bncMapWin* _mapWin;
242
243 QList<bncGetThread*> _threads;
244
245 t_pppWidgets _pppWidgets;
246};
247
248#ifdef GNSSCENTER_PLUGIN
249#include "plugininterface.h"
250class t_bncFactory : public QObject, public GnssCenter::t_pluginFactoryInterface {
251 Q_OBJECT
252 Q_INTERFACES(GnssCenter::t_pluginFactoryInterface)
253 public:
254 virtual QWidget* create() {return new bncWindow();}
255 virtual QString getName() const {return QString("BNC");}
256};
257#endif
258
259#endif
Note: See TracBrowser for help on using the repository browser.