1 | #ifndef PPPRUN_H
|
---|
2 | #define PPPRUN_H
|
---|
3 |
|
---|
4 | #include <deque>
|
---|
5 | #include <vector>
|
---|
6 | #include <QtCore>
|
---|
7 |
|
---|
8 | #include "satObs.h"
|
---|
9 | #include "pppOptions.h"
|
---|
10 | #include "pppClient.h"
|
---|
11 |
|
---|
12 | class t_rnxObsFile;
|
---|
13 | class t_rnxNavFile;
|
---|
14 | class t_corrFile;
|
---|
15 | class bncoutf;
|
---|
16 | class bncSinexTro;
|
---|
17 |
|
---|
18 | namespace BNC_PPP {
|
---|
19 |
|
---|
20 | class t_pppRun : public QObject {
|
---|
21 | Q_OBJECT
|
---|
22 | public:
|
---|
23 | t_pppRun(const t_pppOptions* opt);
|
---|
24 | ~t_pppRun();
|
---|
25 |
|
---|
26 | void processFiles();
|
---|
27 |
|
---|
28 | static QString nmeaString(char strType, const t_output& output);
|
---|
29 |
|
---|
30 | signals:
|
---|
31 | void newMessage(QByteArray msg, bool showOnScreen);
|
---|
32 | void newPosition(QByteArray staID, bncTime time, QVector<double> xx);
|
---|
33 | void newNMEAstr(QByteArray staID, QByteArray str);
|
---|
34 | void progressRnxPPP(int);
|
---|
35 | void finishedRnxPPP();
|
---|
36 |
|
---|
37 | public slots:
|
---|
38 | void slotNewGPSEph(t_ephGPS);
|
---|
39 | void slotNewGlonassEph(t_ephGlo);
|
---|
40 | void slotNewGalileoEph(t_ephGal);
|
---|
41 | void slotNewBDSEph(t_ephBDS);
|
---|
42 | void slotNewOrbCorrections(QList<t_orbCorr> orbCorr);
|
---|
43 | void slotNewClkCorrections(QList<t_clkCorr> clkCorr);
|
---|
44 | void slotNewCodeBiases(QList<t_satCodeBias> codeBiases);
|
---|
45 | void slotNewObs(QByteArray staID, QList<t_satObs> obsList);
|
---|
46 | void slotSetSpeed(int speed);
|
---|
47 | void slotSetStopFlag();
|
---|
48 |
|
---|
49 | private:
|
---|
50 | class t_epoData {
|
---|
51 | public:
|
---|
52 | t_epoData() {}
|
---|
53 | ~t_epoData() {
|
---|
54 | for (unsigned ii = 0; ii < _satObs.size(); ii++) {
|
---|
55 | delete _satObs[ii];
|
---|
56 | }
|
---|
57 | }
|
---|
58 | bncTime _time;
|
---|
59 | std::vector<t_satObs*> _satObs;
|
---|
60 | };
|
---|
61 |
|
---|
62 | bool waitForCorr(const bncTime& epoTime) const;
|
---|
63 |
|
---|
64 | QMutex _mutex;
|
---|
65 | const t_pppOptions* _opt;
|
---|
66 | t_pppClient* _pppClient;
|
---|
67 | std::deque<t_epoData*> _epoData;
|
---|
68 | bncTime _lastClkCorrTime;
|
---|
69 | t_rnxObsFile* _rnxObsFile;
|
---|
70 | t_rnxNavFile* _rnxNavFile;
|
---|
71 | t_corrFile* _corrFile;
|
---|
72 | int _speed;
|
---|
73 | bool _stopFlag;
|
---|
74 | bncoutf* _logFile;
|
---|
75 | bncoutf* _nmeaFile;
|
---|
76 | bncSinexTro* _snxtroFile;
|
---|
77 | };
|
---|
78 |
|
---|
79 | }
|
---|
80 |
|
---|
81 | #endif
|
---|