source: ntrip/trunk/BNC/src/upload/bncrtnetuploadcaster.h@ 9512

Last change on this file since 9512 was 9512, checked in by stuerze, 10 months ago

revert changes

File size: 2.9 KB
Line 
1#ifndef BNCRTNETUPLOADCASTER_H
2#define BNCRTNETUPLOADCASTER_H
3
4#include <newmat.h>
5#include <iostream>
6#include "bncuploadcaster.h"
7#include "bnctime.h"
8#include "ephemeris.h"
9#include "../RTCM3/clock_and_orbit/clock_orbit_rtcm.h"
10#include "../RTCM3/clock_and_orbit/clock_orbit_igs.h"
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& ntripVersion, const QString& userName,
23 const QString& password,
24 const QString& crdTrafo, const QString& ssrFormat,
25 bool CoM,
26 const QString& sp3FileName,
27 const QString& rnxFileName,
28 int PID, int SID, int IOD, int iRow);
29 void decodeRtnetStream(char* buffer, int bufLen);
30 protected:
31 virtual ~bncRtnetUploadCaster();
32 private:
33 t_irc processSatellite(const t_eph* eph, int GPSweek,
34 double GPSweeks, const QString& prn,
35 const ColumnVector& rtnAPC,
36 double ura,
37 const ColumnVector& rtnClk,
38 const ColumnVector& rtnVel,
39 const ColumnVector& rtnCoM,
40 const ColumnVector& rtnClkSig,
41 struct SsrCorr::ClockOrbit::SatData* sd,
42 QString& outLine);
43
44 bool corrIsOutOfRange(struct SsrCorr::ClockOrbit::SatData* sd);
45
46 void crdTrafo(int GPSWeek, ColumnVector& xyz, double& dc);
47
48 int determineUpdateInd(double samplingRate);
49
50 QString _casterID;
51 bncEphUser* _ephUser;
52 QString _rtnetStreamBuffer;
53 QString _crdTrafo;
54 SsrCorr* _ssrCorr;
55 QString _ssrFormat;
56 bool _CoM;
57 bool _phaseBiasInformationDecoded;
58 int _PID;
59 int _SID;
60 int _IOD;
61 int _samplRtcmClkCorr;
62 double _samplRtcmEphCorr;
63 double _dx;
64 double _dy;
65 double _dz;
66 double _dxr;
67 double _dyr;
68 double _dzr;
69 double _ox;
70 double _oy;
71 double _oz;
72 double _oxr;
73 double _oyr;
74 double _ozr;
75 double _sc;
76 double _scr;
77 double _t0;
78 bncClockRinex* _rnx;
79 bncSP3* _sp3;
80 QMap<QString, const t_eph*>* _usedEph;
81};
82
83struct phaseBiasesSat {
84 phaseBiasesSat() {
85 yawAngle = 0.0;
86 yawRate = 0.0;
87 }
88 double yawAngle;
89 double yawRate;
90};
91
92struct phaseBiasSignal {
93 phaseBiasSignal() {
94 bias = 0.0;
95 integerIndicator = 0;
96 wlIndicator = 0;
97 discontinuityCounter = 0;
98 }
99 QString type;
100 double bias;
101 unsigned int integerIndicator;
102 unsigned int wlIndicator;
103 unsigned int discontinuityCounter;
104};
105
106#endif
Note: See TracBrowser for help on using the repository browser.