From 5d70034b19213c0c54a77be7285da4c6a840ff42 Mon Sep 17 00:00:00 2001 From: Zifeng Date: Tue, 3 Dec 2024 01:38:01 +0800 Subject: [PATCH] Add: OS_Vita::get_subsecond_unix_time() Implement OS_Vita::get_subsecond_unix_time() for Time.get_unix_time_from_system() --- platform/vita/os_vita.cpp | 8 ++++++++ platform/vita/os_vita.h | 1 + 2 files changed, 9 insertions(+) diff --git a/platform/vita/os_vita.cpp b/platform/vita/os_vita.cpp index c01da12e82b4..fac274f266ce 100644 --- a/platform/vita/os_vita.cpp +++ b/platform/vita/os_vita.cpp @@ -673,6 +673,14 @@ uint64_t OS_Vita::get_system_time_msecs() const { return longtime; } +double OS_Vita::get_subsecond_unix_time() const { + uint64_t unixTime; + SceDateTime sceDateTimeUtc; + sceRtcGetCurrentClockUtc(&sceDateTimeUtc); + sceRtcConvertDateTimeToTime64_t(&sceDateTimeUtc, &unixTime); + return (double)unixTime + (double(sceDateTimeUtc.microsecond) / 1000000.0); +} + void OS_Vita::delay_usec(uint32_t p_usec) const { sceKernelDelayThread(p_usec); } diff --git a/platform/vita/os_vita.h b/platform/vita/os_vita.h index 1115f7c73a10..7dfce943b292 100644 --- a/platform/vita/os_vita.h +++ b/platform/vita/os_vita.h @@ -159,6 +159,7 @@ class OS_Vita : public OS { virtual uint64_t get_unix_time() const; virtual uint64_t get_system_time_secs() const; virtual uint64_t get_system_time_msecs() const; + virtual double get_subsecond_unix_time() const; virtual void delay_usec(uint32_t p_usec) const; virtual uint64_t get_ticks_usec() const; virtual String get_stdin_string();