source: ntrip/trunk/BNC/bnctime.h@ 2917

Last change on this file since 2917 was 2917, checked in by mervart, 13 years ago
File size: 1.2 KB
RevLine 
[2123]1
2#ifndef BNCTIME_H
3#define BNCTIME_H
4
5#include <string>
6
7class bncTime {
8 public:
9 bncTime() {this->reset();}
10 bncTime(int gpsw, double gpssec);
11
12 bncTime& set(int gpsw, double gpssec);
[2251]13 bncTime& set(int year, int month, int day, int hour, int min, double sec);
14 bncTime& set(int year, int month, int day, double daysec);
[2123]15
16 unsigned int mjd() const;
17 double daysec() const;
18 unsigned int gpsw() const;
19 double gpssec() const;
[2566]20 void civil_date (unsigned int& year, unsigned int& month,
21 unsigned int& day) const;
[2177]22 void civil_time (unsigned int& hour, unsigned int& min,
23 double& sec) const;
[2809]24 bool valid() const {return _mjd != 0 || _sec != 0.0;}
[2917]25 bool operator==(const bncTime &time1) const;
[2809]26 bool operator!=(const bncTime &time1) const;
27 double operator-(const bncTime &time1) const;
28 bncTime operator-(double sec) const;
29 bncTime operator+(double sec) const;
[2123]30
31 std::string timestr(unsigned numdec = 3, char sep = ':') const;
[2566]32 std::string datestr(char sep = '-') const;
[2123]33
34 private:
35 bncTime& setmjd(double daysec, int mjd);
36 void reset() {_mjd = 0; _sec = 0;}
37
38 unsigned int _mjd;
39 double _sec;
40};
41
42#endif
43
Note: See TracBrowser for help on using the repository browser.