00001
00002
00003
00004
00005
00006
00007
00008 #ifndef TIMESTAMP_H
00009 #define TIMESTAMP_H
00010
00011
00012
00013 #include <ostream>
00014 #include <string>
00015
00016 #include "AnnotatorCommApi.h"
00017
00018 using namespace std;
00019
00020
00021
00022 namespace annotatorcomm
00023 {
00024
00028 class ANNCOMM_API Timestamp
00029 {
00030 public:
00036 virtual int getYear() const = 0;
00037
00043 virtual int getDayOfYear() const = 0;
00044
00050 virtual int getSecondOfDay() const = 0;
00051
00057 virtual int getHourOfDay() const;
00058
00064 virtual int getMinuteOfHour() const;
00065
00071 virtual int getSecondOfMinute() const;
00072
00078 virtual long getMicrosecond() const = 0;
00079
00085 virtual string getFormattedTime() const;
00086
00092 virtual string getExtendedFormatTime() const;
00093
00100 virtual bool operator==(Timestamp & other) const;
00101
00108 virtual bool operator<(Timestamp & other) const;
00109
00116 virtual bool operator>(Timestamp & other) const;
00117 };
00118
00126 ANNCOMM_API ostream& operator<<(ostream& out, const Timestamp & timestamp);
00127
00128 }
00129
00130
00131
00132 #endif