33#include "../System/cl_platform.h"
155 void throw_if_invalid_date(
int year,
int month,
int day,
int hour,
int minute,
int seconds,
int nanoseconds)
const;
156 void throw_if_null()
const;
158 int get_day_number()
const;
159 void set_date_from_daynumber(
int g);
165 unsigned char minute;
166 unsigned char seconds;
167 unsigned int nanoseconds;
170 static const int64_t ticks_from_1601_to_1900;
Date/Time class.
Definition: datetime.h:42
static int get_days_in_month(int month, int year)
Returns the number of days in the given month.
bool operator==(const DateTime &other) const
unsigned char get_hour() const
bool operator>(const DateTime &other) const
void set_minutes(int minutes)
bool operator<(const DateTime &other) const
void set_seconds(int seconds)
unsigned char get_seconds() const
std::string to_short_date_string() const
yyyy-mm-dd
static DateTime get_utc_time_from_ticks(int64_t ticks)
Converts a time tick value (number of 100-nanosecond intervals since January 1, 1601 UTC) to a date t...
std::string to_string() const
Mon Feb 3 12:32:54 2008.
static DateTime get_current_utc_time()
Get current system time in UTC.
bool operator!=(const DateTime &other) const
unsigned char get_week() const
Returns the ISO 8601 week number of the date.
void set_timezone(TimeZone timezone)
int get_difference_in_days(const DateTime &other) const
Returns the difference in days between two dates. This function is only accurate for the next few mil...
void set_month(int month)
DateTime & add_months(int months)
bool operator<=(const DateTime &other) const
DateTime(int year, int month, int day, int hour=0, int minute=0, int seconds=0, int nanoseconds=0, TimeZone timezone=utc_timezone)
DateTime & add_days(int days)
std::string to_long_time_string() const
hh:mm:ss
unsigned char get_month() const
Returns the month number in range 1-12.
int64_t to_ticks() const
Converts the date to the number of 100-nanosecond intervals since January 1, 1601 UTC.
unsigned char get_minutes() const
unsigned short get_year() const
TimeZone
Definition: datetime.h:45
@ utc_timezone
Definition: datetime.h:47
@ local_timezone
Definition: datetime.h:46
std::string to_long_date_string() const
Mon Mar 3 2007.
static DateTime from_short_date_string(const std::string &value)
DateTime()
Constructs a date/time object.
static DateTime get_current_local_time()
Get current system time in local time zone.
void set_date(int year, int month, int day, int hour=0, int minute=0, int seconds=0, int nanoseconds=0, TimeZone timezone=utc_timezone)
unsigned char get_day() const
DateTime to_local() const
DateTime & add_years(int years)
TimeZone get_timezone() const
unsigned int get_nanoseconds() const
void set_nanoseconds(int nanoseconds)
std::string to_short_datetime_string() const
yyyy-mm-dd hh:mm:ss
unsigned int get_day_of_week() const
Get the day of the week.
bool operator>=(const DateTime &other) const
std::string to_short_time_string() const
hh:mm
static DateTime get_local_time_from_ticks(int64_t ticks)
Converts a time tick value (number of 100-nanosecond intervals since January 1, 1601 UTC) to a date t...