source: ntrip/trunk/BNC/src/RTCM/RTCM2_2021.h@ 4544

Last change on this file since 4544 was 1269, checked in by zdenek, 16 years ago

* empty log message *

File size: 1.8 KB
Line 
1#include <iostream>
2#include <map>
3#include "RTCM2.h"
4
5namespace rtcm2 {
6
7class RTCM2_2021 {
8
9 public:
10
11 RTCM2_2021(); // Constructor
12
13 void extract(const RTCM2packet& P); // Packet handler
14 void clear(); // Initialization
15 bool valid() const { return valid_; } // Check for complete obs block
16
17 double resolvedPhase_L1(int i) const; // L1 & L2 carrier phase of i-th sat
18 double resolvedPhase_L2(int i) const; // with resolved 2^24 cy ambiguity
19 // (based on rng_C1)
20
21 public:
22
23 struct HiResCorr {
24
25 HiResCorr();
26 void reset();
27
28 unsigned PRN;
29 double tt;
30 double phase1;
31 double phase2;
32 unsigned lock1;
33 unsigned lock2;
34 bool slip1;
35 bool slip2;
36 unsigned IODp1;
37 unsigned IODp2;
38
39 double range1;
40 double range2;
41 double drange1;
42 double drange2;
43 bool Pind1;
44 bool Pind2;
45 unsigned IODr1;
46 unsigned IODr2;
47
48 friend std::ostream& operator << (std::ostream& out, const HiResCorr& cc);
49 };
50
51 double hoursec() const { return tt_; }
52 std::map<unsigned, const HiResCorr*> data;
53
54 typedef std::map<unsigned, const HiResCorr*>::const_iterator c_data_iterator;
55 typedef std::map<unsigned, const HiResCorr*>::iterator data_iterator;
56
57 private:
58 const HiResCorr* find (unsigned PRN);
59 HiResCorr* find_i(unsigned PRN);
60
61 std::map<unsigned, HiResCorr> data_i_;
62 double tt_;
63 bool valid_;
64};
65
66class RTCM2_22 {
67 public:
68 RTCM2_22() {
69 validMsg = false;
70 }
71
72 void extract(const RTCM2packet& P);
73
74 bool validMsg;
75 double dL1[3];
76 double dL2[3];
77};
78
79}; // end of namespace rtcm2
80
81
Note: See TracBrowser for help on using the repository browser.