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

Last change on this file since 5971 was 5971, checked in by mervart, 8 years ago
File size: 6.8 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
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 QComboBox* _reqcSkyPlotSystems;
151
152 QCheckBox* _rnxV3CheckBox;
153 QCheckBox* _ephV3CheckBox;
154 QLineEdit* _rnxSkelLineEdit;
155 QLineEdit* _rnxScrpLineEdit;
156 QLineEdit* _logFileLineEdit;
157 QLineEdit* _rawOutFileLineEdit;
158 QComboBox* _rnxIntrComboBox;
159 QComboBox* _ephIntrComboBox;
160 QComboBox* _corrIntrComboBox;
161 QSpinBox* _rnxSamplSpinBox;
162 QSpinBox* _binSamplSpinBox;
163 QCheckBox* _rnxAppendCheckBox;
164 QCheckBox* _autoStartCheckBox;
165 QCheckBox* _scanRTCMCheckBox;
166 QSpinBox* _waitTimeSpinBox;
167 QSpinBox* _corrTimeSpinBox;
168 QComboBox* _obsRateComboBox;
169 QSpinBox* _adviseFailSpinBox;
170 QSpinBox* _adviseRecoSpinBox;
171 QLineEdit* _adviseScriptLineEdit;
172 QComboBox* _perfIntrComboBox;
173 QTableWidget* _mountPointsTable;
174
175 QLineEdit* _serialPortNameLineEdit;
176 QLineEdit* _serialMountPointLineEdit;
177 QComboBox* _serialBaudRateComboBox;
178 QComboBox* _serialParityComboBox;
179 QComboBox* _serialDataBitsComboBox;
180 QComboBox* _serialStopBitsComboBox;
181 QComboBox* _serialFlowControlComboBox;
182 QLineEdit* _serialHeightNMEALineEdit;
183 QLineEdit* _serialFileNMEALineEdit;
184 QComboBox* _serialAutoNMEAComboBox;
185
186 QLineEdit* _LatLineEdit;
187 QLineEdit* _LonLineEdit;
188
189 QComboBox* _onTheFlyComboBox;
190
191 QTextEdit* _log;
192
193 QWidget* _canvas;
194 QTabWidget* _aogroup;
195
196 QTabWidget* _loggroup;
197 bncFigure* _bncFigure;
198 bncFigureLate* _bncFigureLate;
199 bncFigurePPP* _bncFigurePPP;
200
201 QTableWidget* _cmbTable;
202 QLineEdit* _cmbMaxresLineEdit;
203 QComboBox* _cmbMethodComboBox;
204 QSpinBox* _cmbSamplSpinBox;
205
206 QTableWidget* _uploadTable;
207 QComboBox* _uploadIntrComboBox;
208 QSpinBox* _uploadSamplRtcmEphCorrSpinBox;
209 QSpinBox* _uploadSamplSp3SpinBox;
210 QSpinBox* _uploadSamplClkRnxSpinBox;
211
212 QLineEdit* _uploadEphHostLineEdit;
213 QLineEdit* _uploadEphPortLineEdit;
214 QLineEdit* _uploadEphPasswordLineEdit;
215 QLineEdit* _uploadEphMountpointLineEdit;
216 QSpinBox* _uploadEphSampleSpinBox;
217 bncBytesCounter* _uploadEphBytesCounter;
218
219 bncCaster* _caster;
220 bncEphUploadCaster* _casterEph;
221
222 bool _runningRealTime;
223 bool _runningPPP;
224 bool _runningEdit;
225 bool _runningQC;
226
227 bool running() {return _runningRealTime || _runningPPP || _runningEdit || _runningQC;}
228
229 bncMapWin* _mapWin;
230
231 QList<bncGetThread*> _threads;
232
233 t_pppWidgets _pppWidgets;
234};
235
236#ifdef GNSSCENTER_PLUGIN
237#include "plugininterface.h"
238class t_bncFactory : public QObject, public GnssCenter::t_pluginFactoryInterface {
239 Q_OBJECT
240 Q_INTERFACES(GnssCenter::t_pluginFactoryInterface)
241 public:
242 virtual QWidget* create() {return new bncWindow();}
243 virtual QString getName() const {return QString("BNC");}
244};
245#endif
246
247#endif
Note: See TracBrowser for help on using the repository browser.