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

Last change on this file since 8989 was 8989, checked in by stuerze, 4 years ago

minor changes

File size: 2.6 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#ifdef USE_SSR_RTCM
10#include "../RTCM3/clock_and_orbit/clock_orbit_rtcm.h"
11#elif USE_SSR_IGS
12#include "../RTCM3/clock_and_orbit/clock_orbit_igs.h"
13#endif
14}
15
16class bncEphUser;
17class bncoutf;
18class bncClockRinex;
19class bncSP3;
20
21class bncRtnetUploadCaster : public bncUploadCaster {
22 Q_OBJECT
23 public:
24 bncRtnetUploadCaster(const QString& mountpoint,
25 const QString& outHost, int outPort,
26 const QString& password,
27 const QString& crdTrafo, bool CoM,
28 const QString& sp3FileName,
29 const QString& rnxFileName,
30 int PID, int SID, int IOD, int iRow);
31 void decodeRtnetStream(char* buffer, int bufLen);
32 protected:
33 virtual ~bncRtnetUploadCaster();
34 private:
35 t_irc processSatellite(const t_eph* eph, int GPSweek,
36 double GPSweeks, const QString& prn,
37 const ColumnVector& rtnAPC,
38 double ura,
39 const ColumnVector& rtnClk,
40 const ColumnVector& rtnVel,
41 const ColumnVector& rtnCoM,
42 const ColumnVector& rtnClkSig,
43 struct ClockOrbit::SatData* sd,
44 QString& outLine);
45 void crdTrafo(int GPSWeek, ColumnVector& xyz, double& dc);
46
47 int determineUpdateInd(double samplingRate);
48
49 QString _casterID;
50 bncEphUser* _ephUser;
51 QString _rtnetStreamBuffer;
52 QString _crdTrafo;
53 bool _CoM;
54 int _PID;
55 int _SID;
56 int _IOD;
57 int _samplRtcmClkCorr;
58 double _samplRtcmEphCorr;
59 double _dx;
60 double _dy;
61 double _dz;
62 double _dxr;
63 double _dyr;
64 double _dzr;
65 double _ox;
66 double _oy;
67 double _oz;
68 double _oxr;
69 double _oyr;
70 double _ozr;
71 double _sc;
72 double _scr;
73 double _t0;
74 bncClockRinex* _rnx;
75 bncSP3* _sp3;
76 QMap<QString, const t_eph*>* _usedEph;
77};
78
79struct phaseBiasesSat {
80 phaseBiasesSat() {
81 yawAngle = 0.0;
82 yawRate = 0.0;
83 }
84 double yawAngle;
85 double yawRate;
86};
87
88struct phaseBiasSignal {
89 phaseBiasSignal() {
90 bias = 0.0;
91 integerIndicator = 0;
92 wlIndicator = 0;
93 discontinuityCounter = 0;
94 }
95 QString type;
96 double bias;
97 unsigned int integerIndicator;
98 unsigned int wlIndicator;
99 unsigned int discontinuityCounter;
100};
101
102#endif
Note: See TracBrowser for help on using the repository browser.