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

Last change on this file since 9158 was 9158, checked in by stuerze, 4 months ago

the default RINEX version in BNC is changed from version 2 to verision 3

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 <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    QCheckBox* _sslIgnoreErrorsCheckBox;
137    QLineEdit* _outFileLineEdit;
138    QLineEdit* _outPortLineEdit;
139    QLineEdit* _outUPortLineEdit;
140    QCheckBox* _outLockTimeCheckBox;
141    QLineEdit* _ephOutPortLineEdit;
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    QLineEdit*     _reqcSkyPlotSignals;
158    QCheckBox*     _reqcLogSummaryOnly;
159
160    qtFileChooser* _sp3CompFileChooser;
161    QLineEdit*     _sp3CompExclude;
162    QLineEdit*     _sp3CompLogLineEdit;
163
164    QCheckBox* _rnxV2CheckBox;
165    QLineEdit* _rnxV2Priority;
166    QCheckBox* _ephV2CheckBox;
167    QLineEdit* _rnxSkelLineEdit;
168    QCheckBox* _rnxFileCheckBox;
169    QLineEdit* _rnxScrpLineEdit;
170    QLineEdit* _logFileLineEdit;
171    QLineEdit* _rawOutFileLineEdit;
172    QComboBox* _rnxIntrComboBox;
173    QComboBox* _ephIntrComboBox;
174    QComboBox* _corrIntrComboBox;
175    QComboBox*  _rnxSamplComboBox;
176    QComboBox*  _outSamplComboBox;
177    QCheckBox* _rnxAppendCheckBox;
178    QCheckBox* _autoStartCheckBox;
179    QCheckBox* _miscScanRTCMCheckBox;
180    QSpinBox*  _outWaitSpinBox;
181    QComboBox* _adviseObsRateComboBox;
182    QSpinBox*  _adviseFailSpinBox;
183    QSpinBox*  _adviseRecoSpinBox;
184    QLineEdit* _adviseScriptLineEdit;
185    QComboBox* _miscIntrComboBox;
186    QTableWidget* _mountPointsTable;
187
188    QLineEdit* _serialPortNameLineEdit;
189    QLineEdit* _serialMountPointLineEdit;
190    QComboBox* _serialBaudRateComboBox;
191    QComboBox* _serialParityComboBox;
192    QComboBox* _serialDataBitsComboBox;
193    QComboBox* _serialStopBitsComboBox;
194    QComboBox* _serialFlowControlComboBox;
195    QLineEdit* _serialHeightNMEALineEdit;
196    QLineEdit* _serialFileNMEALineEdit;
197    QComboBox* _serialAutoNMEAComboBox;
198    QSpinBox*  _serialManualNMEASamplingSpinBox;
199
200    QLineEdit*   _LatLineEdit;
201    QLineEdit*   _LonLineEdit;
202
203    QComboBox*  _onTheFlyComboBox;
204
205    QTextEdit*  _log;
206
207    QWidget*    _canvas;
208    QTabWidget* _aogroup;
209
210    QTabWidget* _loggroup;
211    bncFigure*  _bncFigure;
212    bncFigureLate*  _bncFigureLate;
213    bncFigurePPP*   _bncFigurePPP;
214
215    QTableWidget*  _cmbTable;
216    QLineEdit*     _cmbMaxresLineEdit;
217    QComboBox*     _cmbMethodComboBox;
218    QSpinBox*      _cmbSamplSpinBox;
219    QCheckBox*     _cmbUseGlonass;
220
221    QTableWidget*  _uploadTable;
222    QComboBox*     _uploadIntrComboBox;
223    QSpinBox*      _uploadSamplRtcmEphCorrSpinBox;
224    QSpinBox*      _uploadSamplSp3SpinBox;
225    QSpinBox*      _uploadSamplClkRnxSpinBox;
226    qtFileChooser* _uploadAntexFile;
227
228    QTableWidget*  _uploadEphTable;
229    QSpinBox*      _uploadSamplRtcmEphSpinBox;
230
231    bncCaster*          _caster;
232    bncEphUploadCaster* _casterEph;
233
234    bool _runningRealTime;
235    bool _runningPPP;
236    bool _runningEdit;
237    bool _runningQC;
238    bool _runningSp3Comp;
239
240    bool running() {return _runningRealTime || _runningPPP || _runningEdit ||
241                    _runningQC || _runningSp3Comp;}
242
243    bncMapWin*           _mapWin;
244
245    QList<bncGetThread*> _threads;
246
247    t_pppWidgets         _pppWidgets;
248};
249
250#ifdef GNSSCENTER_PLUGIN
251#include "plugininterface.h"
252class t_bncFactory : public QObject, public GnssCenter::t_pluginFactoryInterface {
253 Q_OBJECT
254 Q_INTERFACES(GnssCenter::t_pluginFactoryInterface)
255 public:
256  virtual QWidget* create() {return new bncWindow();}
257  virtual QString getName() const {return QString("BNC");}
258};
259#endif
260
261#endif
Note: See TracBrowser for help on using the repository browser.