17 enum class TimeZoneType :
int {
36 DateManager& operator=(DateManager
const&);
37 DateManager(DateManager
const&);
43 DateManager& operator=(DateManager
const&);
44 DateManager(DateManager
const&);
51 virtual ~DateManager() =
default;
53 virtual ~DateManager() ;
56 virtual int64 _getUnixTime();
65 MCNAPI
void _sendScheduledCallbacks();
67 MCNAPI ::tm getDateTime(::DateManager::TimeZoneType returnType)
const;
69 MCNAPI int64 getTime()
const;
71 MCNAPI
bool isBetweenDates(::std::string
const& start, ::std::string
const& end)
const;
73 MCNAPI
bool isInFuture(::std::string
const& strTime)
const;
75 MCNAPI
bool isInPast(::std::string
const& strTime)
const;
79 MCNAPI
void setTime(int64 time);
83 MCNAPI ::std::string
toString(::DateManager::TimeZoneType outputType, ::std::string
const& format)
const;
85 MCNAPI ::std::string
toString_DateTime(::DateManager::TimeZoneType outputType)
const;
92 MCNAPI
static int _parseTime(
char const* str, uint64 len, uint* hours, uint* minutes, uint* seconds);
95 _parseTimeZone(
char const* str, uint64 len, ::DateManager::TimeZoneType* type,
int* hours,
int* minutes);
98 MCNAPI
static double daysUntilDate(int64 now, int64 time);
107 MCNAPI static ::Bedrock::Result<int64>
parseImfFixdate(::std::string
const& dateHeader);
110 ::std::string
const& strTime,
112 ::DateManager::TimeZoneType* resultType,
113 int* resultTimeZoneMinutes
117 MCNAPI static ::tm
toDateTime(::std::string
const& strTime);
120 MCNAPI static ::tm
toDateTime(int64 time, ::DateManager::TimeZoneType returnType);
123 ::std::string
const& strTime,
125 ::DateManager::TimeZoneType* resultType,
126 int* resultTimeZoneMinutes
131 MCNAPI
static int64
toEpochTime(::tm
const* dateTime, ::DateManager::TimeZoneType inputType);
133 MCNAPI static ::std::string
134 toString(::tm
const& time, ::std::string
const& format, ::std::optional<::std::locale>
const& locale);
138 ::DateManager::TimeZoneType outputType,
139 ::std::string
const& format,
140 ::std::optional<::std::locale>
const& locale
144 MCNAPI static ::std::string toString_Date(::tm
const& time);
147 MCNAPI static ::std::string
toString_DateTime(::tm
const& time, ::DateManager::TimeZoneType outputType);
149 MCNAPI static ::std::string
toString_DateTime(int64
const& time, ::DateManager::TimeZoneType outputType);
156 MCNAPI
void* $ctor();
170 MCNAPI int64 $_getUnixTime();
static MCAPI ::std::string toString(int64 const &time, ::DateManager::TimeZoneType outputType, ::std::string const &format, ::std::optional<::std::locale > const &locale)