87 m_timestamp(-int64_t(24 * 60 * 60) * int64_t(400 * 365 + 97) * int64_t(
Second)) {}
90 DateTime(
int year,
int month,
int day,
int hour = 0,
int minute = 0,
int second = 0,
int microsecond = 0);
93 void GetDateParts(
int *year,
int *month,
int *day)
const;
94 void GetTimeParts(
int *hour,
int *minute,
int *second,
int *microsecond =
nullptr)
const;
108 return DateTime(a.m_timestamp + b.m_delta);
112 return DateTime(a.m_timestamp - b.m_delta);
118 m_timestamp += x.m_delta;
123 m_timestamp -= x.m_delta;
138 m_timestamp(tstamp) {}
DateTime & operator+=(const TimeDelta &x)
Definition DateTime.h:116
DateTime & operator-=(const TimeDelta &x)
Definition DateTime.h:121
friend bool operator==(const DateTime &a, const DateTime &b)
Definition DateTime.h:129
std::string ToTimeString() const
Definition DateTime.cpp:194
friend DateTime operator+(const TimeDelta &a, const DateTime &b)
Definition DateTime.h:114
friend bool operator!=(const DateTime &a, const DateTime &b)
Definition DateTime.h:130
friend DateTime operator+(const DateTime &a, const TimeDelta &b)
Definition DateTime.h:106
friend DateTime operator-(const DateTime &a, const TimeDelta &b)
Definition DateTime.h:110
std::string ToStringISO8601() const
Definition DateTime.cpp:203
friend bool operator>=(const DateTime &a, const DateTime &b)
Definition DateTime.h:132
int64_t GetTimestamp() const
Definition DateTime.h:134
DateTime()
Definition DateTime.h:86
std::string ToDateTimeString() const
Definition DateTime.h:99
void GetDateParts(int *year, int *month, int *day) const
Definition DateTime.cpp:96
friend bool operator<(const DateTime &a, const DateTime &b)
Definition DateTime.h:127
void GetTimeParts(int *hour, int *minute, int *second, int *microsecond=nullptr) const
Definition DateTime.cpp:149
double ToGameTime() const
Definition DateTime.cpp:174
friend bool operator<=(const DateTime &a, const DateTime &b)
Definition DateTime.h:128
friend TimeDelta operator-(const DateTime &a, const DateTime &b)
Definition DateTime.h:102
friend bool operator>(const DateTime &a, const DateTime &b)
Definition DateTime.h:131
std::string ToDateString() const
Definition DateTime.cpp:185
friend TimeDelta operator-(const TimeDelta &a, const TimeDelta &b)
Definition DateTime.h:71
int64_t GetTotalDays() const
Definition DateTime.h:52
int64_t GetTotalWeeks() const
Definition DateTime.h:51
int64_t GetTotalHours() const
Definition DateTime.h:53
int64_t GetTotalMicroseconds() const
Definition DateTime.h:57
friend DateTime operator+(const DateTime &a, const TimeDelta &b)
TimeDelta & operator+=(const TimeDelta &x)
Definition DateTime.h:59
friend DateTime operator-(const DateTime &a, const TimeDelta &b)
friend TimeDelta operator+(const TimeDelta &a, const TimeDelta &b)
Definition DateTime.h:70
friend TimeDelta operator*(int64_t x, const TimeDelta &t)
Definition DateTime.h:72
friend int64_t operator/(const TimeDelta &a, const TimeDelta &b)
Definition DateTime.h:74
TimeDelta(int64_t t, TimeUnit unit=Second)
Definition DateTime.h:48
friend TimeDelta operator/(const TimeDelta &t, int64_t x)
Definition DateTime.h:73
TimeDelta & operator-=(const TimeDelta &x)
Definition DateTime.h:64
int64_t GetTotalSeconds() const
Definition DateTime.h:55
TimeDelta()
Definition DateTime.h:46
int64_t GetTotalMinutes() const
Definition DateTime.h:54
int64_t GetTotalMilliseconds() const
Definition DateTime.h:56
TimeUnit
Definition DateTime.h:31
@ Second
Definition DateTime.h:34
@ Millisecond
Definition DateTime.h:33
@ Minute
Definition DateTime.h:35
@ Microsecond
Definition DateTime.h:32
@ Hour
Definition DateTime.h:36
@ Week
Definition DateTime.h:38
@ Day
Definition DateTime.h:37