11 #include "utils/IArchivable.h" 12 #include "utils/TimeFormat.h" 13 #include "utils/XTimeUtils.h" 17 #include "PlatformDefs.h" 42 void SetDateTimeSpan(
int day,
int hour,
int minute,
int second);
43 void SetFromPeriod(
const std::string &period);
44 void SetFromTimeString(
const std::string& time);
48 int GetMinutes()
const;
49 int GetSeconds()
const;
50 int GetSecondsTotal()
const;
73 CDateTime(
int year,
int month,
int day,
int hour,
int minute,
int second);
77 static int MonthStringToMonthNum(
const std::string& month);
79 static CDateTime FromDBDateTime(
const std::string &dateTime);
80 static CDateTime FromDateString(
const std::string &date);
81 static CDateTime FromDBDate(
const std::string &date);
82 static CDateTime FromDBTime(
const std::string &time);
83 static CDateTime FromW3CDate(
const std::string &date);
84 static CDateTime FromW3CDateTime(
const std::string &date,
bool ignoreTimezone =
false);
86 static CDateTime FromUTCDateTime(
const time_t &dateTime);
87 static CDateTime FromRFC1123DateTime(
const std::string &dateTime);
91 const CDateTime& operator =(
const time_t& right);
92 const CDateTime& operator =(
const tm& right);
94 bool operator >(
const CDateTime& right)
const;
95 bool operator >=(
const CDateTime& right)
const;
96 bool operator <(
const CDateTime& right)
const;
97 bool operator <=(
const CDateTime& right)
const;
98 bool operator ==(
const CDateTime& right)
const;
99 bool operator !=(
const CDateTime& right)
const;
115 bool operator >(
const time_t& right)
const;
116 bool operator >=(
const time_t& right)
const;
117 bool operator <(
const time_t& right)
const;
118 bool operator <=(
const time_t& right)
const;
119 bool operator ==(
const time_t& right)
const;
120 bool operator !=(
const time_t& right)
const;
122 bool operator >(
const tm& right)
const;
123 bool operator >=(
const tm& right)
const;
124 bool operator <(
const tm& right)
const;
125 bool operator <=(
const tm& right)
const;
126 bool operator ==(
const tm& right)
const;
127 bool operator !=(
const tm& right)
const;
139 void Archive(
CArchive& ar)
override;
144 int GetMonth()
const;
147 int GetMinute()
const;
148 int GetSecond()
const;
149 int GetDayOfWeek()
const;
150 int GetMinuteOfDay()
const;
152 bool SetDateTime(
int year,
int month,
int day,
int hour,
int minute,
int second);
153 bool SetDate(
int year,
int month,
int day);
154 bool SetTime(
int hour,
int minute,
int second);
156 bool SetFromDateString(
const std::string &date);
157 bool SetFromDBDate(
const std::string &date);
158 bool SetFromDBTime(
const std::string &time);
159 bool SetFromW3CDate(
const std::string &date);
160 bool SetFromW3CDateTime(
const std::string &date,
bool ignoreTimezone =
false);
161 bool SetFromUTCDateTime(
const CDateTime &dateTime);
162 bool SetFromUTCDateTime(
const time_t &dateTime);
163 bool SetFromRFC1123DateTime(
const std::string &dateTime);
168 bool SetFromDBDateTime(
const std::string &dateTime);
171 void GetAsTime(time_t& time)
const;
172 void GetAsTm(tm& time)
const;
175 enum class ReturnFormat : bool
182 std::string GetAsSaveString()
const;
183 std::string GetAsDBDateTime()
const;
184 std::string GetAsDBDate()
const;
185 std::string GetAsDBTime()
const;
186 std::string GetAsLocalizedDate(
bool longDate=
false)
const;
187 std::string GetAsLocalizedDate(
const std::string &strFormat)
const;
188 std::string GetAsLocalizedDate(
const std::string& strFormat, ReturnFormat returnFormat)
const;
189 std::string GetAsLocalizedTime(
const std::string &format,
bool withSeconds=
true)
const;
190 std::string GetAsLocalizedDateTime(
bool longDate=
false,
bool withSeconds=
true)
const;
191 std::string GetAsLocalizedTime(TIME_FORMAT format,
bool withSeconds =
false)
const;
192 std::string GetAsRFC1123DateTime()
const;
193 std::string GetAsW3CDate()
const;
194 std::string GetAsW3CDateTime(
bool asUtc =
false)
const;
196 void SetValid(
bool yesNo);
197 bool IsValid()
const;
199 static void ResetTimezoneBias(
void);
Definition: XTimeUtils.h:30
DateTime class, which uses FileTime as it's base.
Definition: XBDateTime.h:63
Definition: XBDateTime.h:21
Definition: XTimeUtils.h:58
Definition: PlatformDefs.h:72
Definition: IArchivable.h:13