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

Last change on this file since 10805 was 10791, checked in by mervart, 6 months ago

BNC Multifrequency and PPPAR Client (initial version)

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