Timestamp.h

00001 /*-----------------------------------------------------------------------------
00002  * TimeStamp declaration
00003  * Ionetrics 2006
00004  * John Williams
00005  * Timestamp.h
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 /* TIMESTAMP_H */

Generated on Tue Aug 1 11:14:11 2006 for libAnnotatorComm by  doxygen 1.4.7