source: ntrip/trunk/BNC/src/pppRun.h@ 6074

Last change on this file since 6074 was 6046, checked in by mervart, 10 years ago
File size: 1.8 KB
Line 
1#ifndef PPPRUN_H
2#define PPPRUN_H
3
4#include <deque>
5#include <vector>
6#include <QtCore>
7
8#include "GPSDecoder.h"
9#include "pppOptions.h"
10#include "pppClient.h"
11
12class t_rnxObsFile;
13class t_rnxNavFile;
14class t_corrFile;
15class bncoutf;
16
17namespace BNC_PPP {
18
19class t_pppRun : public QObject {
20 Q_OBJECT
21 public:
22 t_pppRun(const t_pppOptions* opt);
23 ~t_pppRun();
24
25 void processFiles();
26
27 static QString nmeaString(char strType, const t_output& output);
28
29 signals:
30 void newMessage(QByteArray msg, bool showOnScreen);
31 void newPosition(QByteArray staID, bncTime time, QVector<double> xx);
32 void newNMEAstr(QByteArray staID, QByteArray str);
33 void progressRnxPPP(int);
34 void finishedRnxPPP();
35
36 public slots:
37 void slotNewEphGPS(gpsephemeris gpseph);
38 void slotNewEphGlonass(glonassephemeris gloeph);
39 void slotNewEphGalileo(galileoephemeris galeph);
40 void slotNewCorrections(QStringList corrList);
41 void slotNewObs(QByteArray staID, QList<t_obs> obsList);
42 void slotSetSpeed(int speed);
43 void slotSetStopFlag();
44
45 private:
46 class t_epoData {
47 public:
48 t_epoData() {}
49 ~t_epoData() {
50 for (unsigned ii = 0; ii < _satObs.size(); ii++) {
51 delete _satObs[ii];
52 }
53 }
54 bncTime _time;
55 std::vector<t_satObs*> _satObs;
56 };
57
58 bool waitForCorr(const bncTime& epoTime) const;
59
60 QMutex _mutex;
61 const t_pppOptions* _opt;
62 t_pppClient* _pppClient;
63 std::deque<t_epoData*> _epoData;
64 int _lastOrbCorrIOD[t_prn::MAXPRN+1];
65 double _lastClkCorrValue[t_prn::MAXPRN+1];
66 bncTime _lastClkCorrTime;
67 t_rnxObsFile* _rnxObsFile;
68 t_rnxNavFile* _rnxNavFile;
69 t_corrFile* _corrFile;
70 int _speed;
71 bool _stopFlag;
72 bncoutf* _logFile;
73 bncoutf* _nmeaFile;
74};
75
76}
77
78#endif
Note: See TracBrowser for help on using the repository browser.