19 return static_cast<uint64_t
>(esp_timer_get_time() / 1000LL);
25 return r ?
static_cast<int64_t
>(r->getTimestamp()) : 0;
31 return r ? r->isTimeSet() :
false;
37 return r ? r->getTimezoneOffset() : 0;
45 std::time_t ts =
static_cast<std::time_t
>(r->getTimestamp());
47 std::tm* local = std::localtime(&ts);
48 if (local) tm = *local;
49 out->
year =
static_cast<uint16_t
>(tm.tm_year + 1900);
50 out->
month =
static_cast<uint8_t
>(tm.tm_mon + 1);
51 out->
day =
static_cast<uint8_t
>(tm.tm_mday);
52 out->
hour =
static_cast<uint8_t
>(tm.tm_hour);
53 out->
minute =
static_cast<uint8_t
>(tm.tm_min);
54 out->
second =
static_cast<uint8_t
>(tm.tm_sec);
55 out->
weekday =
static_cast<uint8_t
>(tm.tm_wday);
int host_local_time(struct host_tm *out)
Fill out with the current local time broken into fields.
bool host_is_time_set(void)
True when the RTC has been synchronised at least once.
uint64_t host_uptime_ms(void)
Monotonic milliseconds since boot.
int64_t host_unix_time(void)
Current Unix timestamp in seconds, or 0 if RTC not set.
int32_t host_timezone_offset(void)
Configured timezone offset from UTC in seconds.
CDC Badge OS plugin host API - canonical C ABI contract.
#define HOST_ERR_INVALID_ARG
#define HOST_ERR_NOT_FOUND
IRtc * getRtcInstance()
Returns the singleton RTC service instance.
IRtc * getRtcInstance()
Returns the singleton RTC service instance.