#ifndef NITRO_RTC_API_H_ #define NITRO_RTC_API_H_ typedef enum RTCWeek { RTC_WEEK_SUNDAY = 0, RTC_WEEK_MONDAY, RTC_WEEK_TUESDAY, RTC_WEEK_WEDNESDAY, RTC_WEEK_THURSDAY, RTC_WEEK_FRIDAY, RTC_WEEK_SATURDAY, RTC_WEEK_MAX } RTCWeek; typedef enum RTCResult { RTC_RESULT_SUCCESS = 0, RTC_RESULT_BUSY, RTC_RESULT_ILLEGAL_PARAMETER, RTC_RESULT_SEND_ERROR, RTC_RESULT_INVALID_COMMAND, RTC_RESULT_ILLEGAL_STATUS, RTC_RESULT_FATAL_ERROR, RTC_RESULT_MAX } RTCResult; typedef struct RTCDate { u32 year; u32 month; u32 day; RTCWeek week; } RTCDate; typedef struct RTCTime { u32 hour; u32 minute; u32 second; } RTCTime; typedef void (*RTCCallback)(RTCResult result, void *arg); void RTC_Init(void); RTCResult RTC_GetDateTimeAsync(RTCDate *date, RTCTime *time, RTCCallback callback, void *arg); #endif //NITRO_RTC_API_H_