source: ntrip/trunk/BNC/src/PPP/pppObsPool.h@ 11042

Last change on this file since 11042 was 11041, checked in by stuerze, 6 days ago

updates regarding RTCM-SSR

  • Property svn:keywords set to Author Date Id Rev URL;svn:eol-style=native
  • Property svn:mime-type set to text/plain
File size: 2.0 KB
Line 
1#ifndef OBSPOOL_H
2#define OBSPOOL_H
3
4#include <vector>
5#include <deque>
6#include <iostream>
7#include "pppSatObs.h"
8#include "bnctime.h"
9
10namespace BNC_PPP {
11
12class t_pppObsPool {
13 public:
14
15 class t_epoch {
16 public:
17 t_epoch(const bncTime& epoTime, std::vector<t_pppSatObs*>& obsVector,
18 bool pseudoObsIono);
19 ~t_epoch();
20 std::vector<t_pppSatObs*>& obsVector() {return _obsVector;}
21 const std::vector<t_pppSatObs*>& obsVector() const {return _obsVector;}
22 const bncTime& epoTime() const {return _epoTime;}
23 bool pseudoObsIono() const {return _pseudoObsIono;}
24 private:
25 bncTime _epoTime;
26 bool _pseudoObsIono;
27 std::vector<t_pppSatObs*> _obsVector;
28 };
29
30 t_pppObsPool();
31 ~t_pppObsPool();
32 void putCodeBias(t_satCodeBias* satCodeBias);
33 void putPhaseBias(t_satPhaseBias* satPhaseBias);
34 void putSatAntenna(t_satAntenna* satAntenna);
35 void putTec(t_vTec* _vTec);
36 void putMetaData(t_metaData* metaData);
37 void clearCodeBiases(char sys);
38 void clearPhaseBiases(char sys);
39
40 void putEpoch(const bncTime& epoTime, std::vector<t_pppSatObs*>& obsVector,
41 bool pseudoObsIono);
42
43 const t_satCodeBias* satCodeBias(const t_prn& prn) const {
44 return _satCodeBiases[prn.toInt()];
45 }
46 const t_satPhaseBias* satPhaseBias(const t_prn& prn) const {
47 return _satPhaseBiases[prn.toInt()];
48 }
49 const t_satAntenna* satAntenna(const t_prn& prn) const {
50 return _satAntennas[prn.toInt()];
51 }
52 const t_vTec* vTec() const {return _vTec;}
53 const t_metaData* metaData() const {return _metaData;}
54
55 t_epoch* lastEpoch() {
56 if (_epochs.size()) {
57 return _epochs.back();
58 }
59 else {
60 return 0;
61 }
62 }
63
64 private:
65 t_satCodeBias* _satCodeBiases[t_prn::MAXPRN+1];
66 t_satPhaseBias* _satPhaseBiases[t_prn::MAXPRN+1];
67 t_satAntenna* _satAntennas[t_prn::MAXPRN+1];
68 t_vTec* _vTec;
69 t_metaData* _metaData;
70 std::deque<t_epoch*> _epochs;
71};
72
73}
74
75#endif
Note: See TracBrowser for help on using the repository browser.