diff --git a/frontend/drivers/platform_android.c b/frontend/drivers/platform_android.c index 0936e6a639..113d36a0bf 100644 --- a/frontend/drivers/platform_android.c +++ b/frontend/drivers/platform_android.c @@ -869,5 +869,6 @@ const frontend_ctx_driver_t frontend_ctx_android = { NULL, /* get_os */ frontend_android_get_rating, /* get_rating */ NULL, /* load_content */ + NULL, /* get_powerstate */ "android", }; diff --git a/frontend/drivers/platform_apple.c b/frontend/drivers/platform_apple.c index d58d33010b..20ff00aca6 100644 --- a/frontend/drivers/platform_apple.c +++ b/frontend/drivers/platform_apple.c @@ -312,5 +312,6 @@ const frontend_ctx_driver_t frontend_ctx_apple = { frontend_apple_get_os, /* get_os */ frontend_apple_get_rating, /* get_rating */ frontend_apple_load_content, /* load_content */ + NULL, /* get_powerstate */ "apple", }; diff --git a/frontend/drivers/platform_ctr.c b/frontend/drivers/platform_ctr.c index e5aea45e7f..fc22163b74 100644 --- a/frontend/drivers/platform_ctr.c +++ b/frontend/drivers/platform_ctr.c @@ -199,5 +199,6 @@ const frontend_ctx_driver_t frontend_ctx_ctr = { NULL, /* get_os */ frontend_ctr_get_rating, /* get_rating */ NULL, /* load_content */ + NULL, /* get_powerstate */ "ctr", }; diff --git a/frontend/drivers/platform_gx.c b/frontend/drivers/platform_gx.c index a3a5da4f1d..80b7f0796f 100644 --- a/frontend/drivers/platform_gx.c +++ b/frontend/drivers/platform_gx.c @@ -389,5 +389,6 @@ const frontend_ctx_driver_t frontend_ctx_gx = { NULL, /* get_os */ frontend_gx_get_rating, /* get_rating */ NULL, /* load_content */ + NULL, /* get_powerstate */ "gx", }; diff --git a/frontend/drivers/platform_null.c b/frontend/drivers/platform_null.c index 07368acebc..e0ffcb4ba8 100644 --- a/frontend/drivers/platform_null.c +++ b/frontend/drivers/platform_null.c @@ -34,5 +34,6 @@ const frontend_ctx_driver_t frontend_ctx_null = { NULL, /* get_os */ NULL, /* get_rating */ NULL, /* load_content */ + NULL, /* get_powerstate */ "null", }; diff --git a/frontend/drivers/platform_ps3.c b/frontend/drivers/platform_ps3.c index 3e439031fc..3d6f6da3fa 100644 --- a/frontend/drivers/platform_ps3.c +++ b/frontend/drivers/platform_ps3.c @@ -452,5 +452,6 @@ const frontend_ctx_driver_t frontend_ctx_ps3 = { NULL, /* get_os */ frontend_ps3_get_rating, /* get_rating */ NULL, /* load_content */ + NULL, /* get_powerstate */ "ps3", }; diff --git a/frontend/drivers/platform_psp.c b/frontend/drivers/platform_psp.c index 35d3469e54..4937ac1c5a 100644 --- a/frontend/drivers/platform_psp.c +++ b/frontend/drivers/platform_psp.c @@ -249,5 +249,6 @@ const frontend_ctx_driver_t frontend_ctx_psp = { NULL, /* get_os */ frontend_psp_get_rating, /* get_rating */ NULL, /* load_content */ + NULL, /* get_powerstate */ "psp", }; diff --git a/frontend/drivers/platform_qnx.c b/frontend/drivers/platform_qnx.c index 02b56d68d2..e45305c6c7 100644 --- a/frontend/drivers/platform_qnx.c +++ b/frontend/drivers/platform_qnx.c @@ -72,5 +72,6 @@ const frontend_ctx_driver_t frontend_ctx_qnx = { NULL, /* get_os */ frontend_qnx_get_rating, /* get_rating */ NULL, /* load_content */ + NULL, /* get_powerstate */ "qnx", }; diff --git a/frontend/drivers/platform_win32.c b/frontend/drivers/platform_win32.c index 862cc3498e..2cc493170a 100644 --- a/frontend/drivers/platform_win32.c +++ b/frontend/drivers/platform_win32.c @@ -138,5 +138,6 @@ const frontend_ctx_driver_t frontend_ctx_win32 = { frontend_win32_get_os, /* get_os */ NULL, /* get_rating */ NULL, /* load_content */ + NULL, /* get_powerstate */ "win32", }; diff --git a/frontend/drivers/platform_xdk.c b/frontend/drivers/platform_xdk.c index e8ecd06e8e..1797443364 100644 --- a/frontend/drivers/platform_xdk.c +++ b/frontend/drivers/platform_xdk.c @@ -380,5 +380,6 @@ const frontend_ctx_driver_t frontend_ctx_xdk = { NULL, /* get_os */ frontend_xdk_get_rating, /* get_rating */ NULL, /* load_content */ + NULL, /* get_powerstate */ "xdk", }; diff --git a/frontend/frontend_driver.h b/frontend/frontend_driver.h index 96e7f6a5dc..2d6a43325d 100644 --- a/frontend/frontend_driver.h +++ b/frontend/frontend_driver.h @@ -28,6 +28,15 @@ extern "C" { #endif +enum frontend_powerstate +{ + FRONTEND_POWERSTATE_NONE = 0, + FRONTEND_POWERSTATE_NO_SOURCE, + FRONTEND_POWERSTATE_CHARGING, + FRONTEND_POWERSTATE_CHARGED, + FRONTEND_POWERSTATE_ON_POWER_SOURCE, +}; + typedef void (*environment_get_t)(int *argc, char *argv[], void *args, void *params_data); typedef void (*process_args_t)(int *argc, char *argv[]); @@ -47,6 +56,7 @@ typedef struct frontend_ctx_driver void (*get_os)(char *, size_t, int *major, int *minor); int (*get_rating)(void); void (*content_loaded)(void); + enum frontend_powerstate (*get_powerstate)(int *seconds, int *percent); const char *ident;