source: ntrip/trunk/BNC/src/PPP/pppClient.h@ 5779

Last change on this file since 5779 was 5779, checked in by mervart, 10 years ago
File size: 2.3 KB
RevLine 
[5734]1#ifndef PPPCLIENT_H
2#define PPPCLIENT_H
[5682]3
4#include <sstream>
5#include <vector>
[5740]6#include "ppp.h"
7#include "ephemeris.h"
8#include "options.h"
[5682]9
[5740]10class bncAntex;
11
[5682]12namespace BNC {
13
14class t_ephPool;
15class t_obsPool;
16class t_satObs;
17class t_station;
18class t_filter;
19
[5734]20class t_pppClient {
[5682]21 public:
[5761]22 t_pppClient(const t_options* opt);
[5734]23 ~t_pppClient();
[5761]24
[5772]25 void putEphemeris(const t_eph* eph);
[5779]26 void putOrbCorrections(const std::vector<t_orbCorr*>& corr);
27 void putClkCorrections(const std::vector<t_clkCorr*>& corr);
28 void putBiases(const std::vector<t_satBiases*>& biases);
[5778]29 void processEpoch(const std::vector<t_pppSatObs*>& pppSatObs, t_output* output);
[5761]30
[5682]31 const t_ephPool* ephPool() const {return _ephPool;}
32 const t_obsPool* obsPool() const {return _obsPool;}
[5740]33 const bncAntex* antex() const {return _antex;}
[5682]34 const t_station* staRover() const {return _staRover;}
[5761]35 double offGG() const {return _offGG;}
36
37 std::ostringstream& log() {return *_log;}
38 const t_options* opt() const {return _opt;}
39
[5740]40 static void bancroft(const Matrix& BBpass, ColumnVector& pos);
[5682]41
[5758]42 static t_pppClient* instance();
43
[5682]44 private:
[5744]45 void initOutput(t_output* output);
[5740]46 void finish(t_irc irc);
[5682]47 void clearObs();
[5778]48 t_irc prepareObs(const std::vector<t_pppSatObs*>& pppSatObs,
[5772]49 std::vector<t_satObs*>& obsVector, bncTime& epoTime);
[5740]50 t_irc cmpModel(t_station* station, const ColumnVector& xyzc,
[5772]51 std::vector<t_satObs*>& obsVector);
52 t_irc cmpBancroft(const bncTime& epoTime, std::vector<t_satObs*>& obsVector,
53 ColumnVector& xyzc, bool print);
[5682]54 double cmpOffGG(std::vector<t_satObs*>& obsVector);
55
[5744]56 t_output* _output;
[5682]57 t_ephPool* _ephPool;
58 t_obsPool* _obsPool;
[5740]59 bncTime _epoTimeRover;
[5682]60 t_station* _staRover;
[5740]61 bncAntex* _antex;
[5682]62 t_filter* _filter;
63 double _offGG;
64 std::vector<t_satObs*> _obsRover;
[5761]65 std::ostringstream* _log;
66 t_options* _opt;
[5682]67};
68
69}; // namespace BNC
70
[5758]71#define PPP_CLIENT (BNC::t_pppClient::instance())
[5761]72#define LOG (BNC::t_pppClient::instance()->log())
73#define OPT (BNC::t_pppClient::instance()->opt())
[5682]74
75#endif
Note: See TracBrowser for help on using the repository browser.