00001
00002
00003
00004
00005
00006
00007
00008
00009
00010
00011
00012
00013
00014
00015
00016
00017
00018
00019
00020
00021
00022
00023
00024
00025
00026
00027
00028 #ifndef _LOG4TANGO_TIMESTAMP_H
00029 #define _LOG4TANGO_TIMESTAMP_H
00030
00031 #include <log4tango/Portability.hh>
00032
00033 namespace log4tango {
00034
00035
00036
00037
00038 class LOG4TANGO_EXPORT TimeStamp
00039 {
00040 public:
00044 TimeStamp();
00045
00049 inline TimeStamp (const TimeStamp& t)
00050 : _seconds(t._seconds), _micro_seconds(t._micro_seconds)
00051 {
00052
00053 };
00054
00059 inline TimeStamp(unsigned int seconds, unsigned int microseconds = 0)
00060 : _seconds(seconds), _micro_seconds(microseconds)
00061 {
00062
00063 };
00064
00068 inline int get_seconds (void) const {
00069 return _seconds;
00070 };
00071
00076 inline int get_milliseconds (void) const {
00077 return _micro_seconds / 1000;
00078 };
00079
00085 inline int get_microseconds (void) const {
00086 return _micro_seconds;
00087 };
00088
00093 static inline const TimeStamp& get_start_time (void) {
00094 return _start_stamp;
00095 };
00096
00100 inline void operator= (const TimeStamp& t) {
00101 _seconds = t._seconds;
00102 _micro_seconds = t._micro_seconds;
00103 };
00104
00105 protected:
00106 static TimeStamp _start_stamp;
00107 int _seconds;
00108 int _micro_seconds;
00109 };
00110
00111 }
00112
00113 #endif // _LOG4TANGO_TIMESTAMP_H
00114