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

Last change on this file since 5861 was 5861, checked in by mervart, 10 years ago
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 "PPP/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
58namespace BNC_PPP {
59class t_pppMain;
60}
61
62class bncWindow : public QMainWindow {
63 Q_OBJECT
64
65 public:
66 bncWindow();
67 ~bncWindow();
68 void CreateMenu();
69 void AddToolbar();
70
71 public slots:
72 void slotMountPointsRead(QList<bncGetThread*>);
73 void slotBncTextChanged();
74 void slotPostProgress(int);
75
76 private slots:
77 void slotWindowMessage(const QByteArray msg, bool showOnScreen);
78 void slotHelp();
79 void slotAbout();
80 void slotFlowchart();
81 void slotFontSel();
82 void slotSaveOptions();
83 void slotAddMountPoints();
84 void slotMapMountPoints();
85 void slotMapPPP();
86 void slotMapPPPClosed();
87 void slotStart();
88 void slotFinishedPostProcessingPPP();
89 void slotFinishedPostProcessingReqc();
90 void slotStop();
91 void slotNewMountPoints(QStringList* mountPoints);
92 void slotDeleteMountPoints();
93 void slotGetThreadsFinished();
94 void slotSelectionChanged();
95 void slotWhatsThis();
96 void slotAddCmbRow();
97 void slotDelCmbRow();
98 void slotAddUploadRow();
99 void slotDelUploadRow();
100 void slotSetUploadTrafo();
101 void slotReqcEditOption();
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 enableWidget(bool enable, QWidget* widget);
112 void startRealTime();
113 void startPostProcessingReqc();
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* _mapWinDotSizeLineEdit;
136 QLineEdit* _sslCaCertPathLineEdit;
137 QCheckBox* _ignoreSslErrorsCheckBox;
138 QLineEdit* _outFileLineEdit;
139 QLineEdit* _outPortLineEdit;
140 QLineEdit* _outUPortLineEdit;
141 QLineEdit* _outEphPortLineEdit;
142 QLineEdit* _corrPortLineEdit;
143 QLineEdit* _rnxPathLineEdit;
144 QLineEdit* _ephPathLineEdit;
145 QLineEdit* _corrPathLineEdit;
146 QLineEdit* _miscMountLineEdit;
147 QLineEdit* _miscPortLineEdit;
148
149 QComboBox* _reqcActionComboBox;
150 QPushButton* _reqcEditOptionButton;
151 qtFileChooser* _reqcObsFileChooser;
152 qtFileChooser* _reqcNavFileChooser;
153 QLineEdit* _reqcOutObsLineEdit;
154 QLineEdit* _reqcOutNavLineEdit;
155 QLineEdit* _reqcOutLogLineEdit;
156 QLineEdit* _reqcPlotDirLineEdit;
157 QComboBox* _reqcSkyPlotSystems;
158
159 QCheckBox* _rnxV3CheckBox;
160 QCheckBox* _ephV3CheckBox;
161 QLineEdit* _rnxSkelLineEdit;
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 QSpinBox* _corrTimeSpinBox;
175 QComboBox* _obsRateComboBox;
176 QSpinBox* _adviseFailSpinBox;
177 QSpinBox* _adviseRecoSpinBox;
178 QLineEdit* _adviseScriptLineEdit;
179 QComboBox* _perfIntrComboBox;
180 QTableWidget* _mountPointsTable;
181
182 QLineEdit* _serialPortNameLineEdit;
183 QLineEdit* _serialMountPointLineEdit;
184 QComboBox* _serialBaudRateComboBox;
185 QComboBox* _serialParityComboBox;
186 QComboBox* _serialDataBitsComboBox;
187 QComboBox* _serialStopBitsComboBox;
188 QComboBox* _serialFlowControlComboBox;
189 QLineEdit* _serialHeightNMEALineEdit;
190 QLineEdit* _serialFileNMEALineEdit;
191 QComboBox* _serialAutoNMEAComboBox;
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
213 QTableWidget* _uploadTable;
214 QComboBox* _uploadIntrComboBox;
215 QSpinBox* _uploadSamplRtcmEphCorrSpinBox;
216 QSpinBox* _uploadSamplSp3SpinBox;
217 QSpinBox* _uploadSamplClkRnxSpinBox;
218
219 QLineEdit* _uploadEphHostLineEdit;
220 QLineEdit* _uploadEphPortLineEdit;
221 QLineEdit* _uploadEphPasswordLineEdit;
222 QLineEdit* _uploadEphMountpointLineEdit;
223 QSpinBox* _uploadEphSampleSpinBox;
224 bncBytesCounter* _uploadEphBytesCounter;
225
226 bncCaster* _caster;
227 bncEphUploadCaster* _casterEph;
228
229 bool _realTimeRunning;
230 bool _runningRealTime;
231 bool _runningPostProcessingReqc;
232
233 QPushButton* _mapWinButton;
234 QRadioButton* _gmRadioButton;
235 QCheckBox* _pppPlotCoordinates;
236 QRadioButton* _osmRadioButton;
237 QComboBox* _mapWinDotColorComboBox;
238 QSlider* _mapSpeedSlider;
239 bncMapWin* _mapWin;
240
241 QList<bncGetThread*> _threads;
242
243 t_pppWidgets _pppWidgets;
244 BNC_PPP::t_pppMain* _pppMain;
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.