PebbleOS
Loading...
Searching...
No Matches
Data Structures | Macros | Typedefs | Functions
wakeup.h File Reference
#include <stdbool.h>
#include <stdint.h>
#include <pbl/services/new_timer/new_timer.h>

Data Structures

struct  WakeupInfo
 Wakeup event passed to the app it launches. More...
 

Macros

#define WAKEUP_EVENT_WINDOW   60
 Time reserved around each event, in seconds, in which no other event can be scheduled.
 
#define MAX_WAKEUP_EVENTS_PER_APP   8
 Maximum number of events per app.
 
#define WAKEUP_CATCHUP_WINDOW   (WAKEUP_EVENT_WINDOW / 2)
 Reduced gap, in seconds, between events caught up after a time change or after the service was disabled (e.g.
 

Typedefs

typedef int32_t WakeupId
 WakeupId is an identifier for a wakeup event.
 

Functions

void wakeup_init (void)
 Initialize the service.
 
void wakeup_enable (bool enabled)
 Enable or disable the service.
 
TimerID wakeup_get_current (void)
 Get the timer used to schedule events, for tests.
 
WakeupId wakeup_get_next_scheduled (void)
 Get the next scheduled event, for tests.
 
void wakeup_migrate_timezone (int utc_diff)
 Convert events scheduled in local time to UTC after the timezone was set.
 
void wakeup_handle_significant_clock_change (void)
 Handle a significant time change (over 15 s, timezone or DST).
 
void wakeup_handle_clock_change (void)
 Handle any time change, including small RTC calibrations.