source: ntrip/branches/BNC_2.12/src/upload/bncrtnetuploadcaster.h@ 8411

Last change on this file since 8411 was 8411, checked in by stuerze, 3 years ago

updated transformation parameters for ITRF2014 => DREF91 and ITRF2014 => ETRF2000

File size: 2.9 KB
Line 
1#ifndef BNCRTNETUPLOADCASTER_H
2#define BNCRTNETUPLOADCASTER_H
3
4#include <newmat.h>
5#include "bncuploadcaster.h"
6#include "bnctime.h"
7#include "ephemeris.h"
8extern "C" {
9#include "clock_orbit_rtcm.h"
10}
11
12class bncEphUser;
13class bncoutf;
14class bncClockRinex;
15class bncSP3;
16
17class bncRtnetUploadCaster : public bncUploadCaster {
18 Q_OBJECT
19 public:
20 bncRtnetUploadCaster(const QString& mountpoint,
21 const QString& outHost, int outPort,
22 const QString& password,
23 const QString& crdTrafo, bool CoM,
24 const QString& sp3FileName,
25 const QString& rnxFileName,
26 int PID, int SID, int IOD, int iRow);
27 void decodeRtnetStream(char* buffer, int bufLen);
28 protected:
29 virtual ~bncRtnetUploadCaster();
30 private:
31 void processSatellite(const t_eph* eph, int GPSweek,
32 double GPSweeks, const QString& prn,
33 const ColumnVector& rtnAPC,
34 double rtnClk,
35 const ColumnVector& rtnVel,
36 const ColumnVector& rtnCoM,
37 struct ClockOrbit::SatData* sd,
38 QString& outLine);
39 void crdTrafo(int GPSWeek, ColumnVector& xyz, double& dc);
40
41 int determineUpdateInd(double samplingRate);
42
43 QString _casterID;
44 bncEphUser* _ephUser;
45 QString _rtnetStreamBuffer;
46 QString _crdTrafo;
47 bool _CoM;
48 int _PID;
49 int _SID;
50 int _IOD;
51 int _samplRtcmClkCorr;
52 double _samplRtcmEphCorr;
53 double _dx;
54 double _dy;
55 double _dz;
56 double _dxr;
57 double _dyr;
58 double _dzr;
59 double _ox;
60 double _oy;
61 double _oz;
62 double _oxr;
63 double _oyr;
64 double _ozr;
65 double _sc;
66 double _scr;
67 double _t0;
68 bncClockRinex* _rnx;
69 bncSP3* _sp3;
70 QMap<QString, const t_eph*>* _usedEph;
71 // TODO: the following lines can be deleted if all parameters are updated regarding ITRF2014
72 double _dx8;
73 double _dy8;
74 double _dz8;
75 double _dxr8;
76 double _dyr8;
77 double _dzr8;
78 double _ox8;
79 double _oy8;
80 double _oz8;
81 double _oxr8;
82 double _oyr8;
83 double _ozr8;
84 double _sc8;
85 double _scr8;
86 double _t08;
87};
88
89struct phaseBiasesSat {
90 phaseBiasesSat() {
91 yawAngle = 0.0;
92 yawRate = 0.0;
93 }
94 double yawAngle;
95 double yawRate;
96};
97
98struct phaseBiasSignal {
99 phaseBiasSignal() {
100 bias = 0.0;
101 integerIndicator = 0;
102 wlIndicator = 0;
103 discontinuityCounter = 0;
104 }
105 QString type;
106 double bias;
107 unsigned int integerIndicator;
108 unsigned int wlIndicator;
109 unsigned int discontinuityCounter;
110};
111
112#endif
Note: See TracBrowser for help on using the repository browser.