| Last change
 on this file since 8689 was             8401, checked in by stuerze, 7 years ago | 
        
          | 
minor changes to prevent a crash of the program
 | 
        
          | 
              
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.2 KB | 
      
      
| Line |  | 
|---|
| 1 | #ifndef EPHPOOL_H | 
|---|
| 2 | #define EPHPOOL_H | 
|---|
| 3 |  | 
|---|
| 4 | #include <deque> | 
|---|
| 5 | #include "pppInclude.h" | 
|---|
| 6 | #include "bnctime.h" | 
|---|
| 7 | #include "ephemeris.h" | 
|---|
| 8 |  | 
|---|
| 9 | namespace BNC_PPP { | 
|---|
| 10 |  | 
|---|
| 11 | class t_pppEphPool { | 
|---|
| 12 | public: | 
|---|
| 13 | t_pppEphPool(unsigned maxQueueSize = 3) { | 
|---|
| 14 | _maxQueueSize = maxQueueSize; | 
|---|
| 15 | } | 
|---|
| 16 | ~t_pppEphPool() {}; | 
|---|
| 17 |  | 
|---|
| 18 | void putEphemeris(t_eph* eph); | 
|---|
| 19 | void putOrbCorrection(t_orbCorr* corr); | 
|---|
| 20 | void putClkCorrection(t_clkCorr* corr); | 
|---|
| 21 |  | 
|---|
| 22 | t_irc getCrd(const t_prn& prn, const bncTime& tt, | 
|---|
| 23 | ColumnVector& xc, ColumnVector& vv) const; | 
|---|
| 24 |  | 
|---|
| 25 | int getChannel(const t_prn& prn) const; | 
|---|
| 26 |  | 
|---|
| 27 | std::deque<t_eph*>& ephs(t_prn prn) { | 
|---|
| 28 | return _satEphPool[prn]._ephs; | 
|---|
| 29 | } | 
|---|
| 30 |  | 
|---|
| 31 | private: | 
|---|
| 32 |  | 
|---|
| 33 | class t_satEphPool { | 
|---|
| 34 | public: | 
|---|
| 35 | t_satEphPool() {}; | 
|---|
| 36 | ~t_satEphPool() { | 
|---|
| 37 | if (_ephs.empty()) return; | 
|---|
| 38 | for (unsigned ii = 0; ii < _ephs.size(); ii++) { | 
|---|
| 39 | delete _ephs[ii]; | 
|---|
| 40 | } | 
|---|
| 41 | } | 
|---|
| 42 | void putEphemeris(unsigned maxQueueSize, t_eph* eph); | 
|---|
| 43 | void putOrbCorrection(t_orbCorr* corr); | 
|---|
| 44 | void putClkCorrection(t_clkCorr* corr); | 
|---|
| 45 | t_irc getCrd(const bncTime& tt, | 
|---|
| 46 | ColumnVector& xc, ColumnVector& vv) const; | 
|---|
| 47 | int getChannel() const; | 
|---|
| 48 | std::deque<t_eph*> _ephs; | 
|---|
| 49 | }; | 
|---|
| 50 |  | 
|---|
| 51 | t_satEphPool _satEphPool[t_prn::MAXPRN+1]; | 
|---|
| 52 | unsigned     _maxQueueSize; | 
|---|
| 53 | }; | 
|---|
| 54 |  | 
|---|
| 55 | } | 
|---|
| 56 |  | 
|---|
| 57 | #endif | 
|---|
       
      
  Note:
 See   
TracBrowser
 for help on using the repository browser.