SDL  2.0
testpower.c File Reference
#include <stdio.h>
#include "SDL.h"
+ Include dependency graph for testpower.c:

Go to the source code of this file.

Functions

static void report_power (void)
int main (int argc, char *argv[])

Function Documentation

int main ( int  argc,
char *  argv[] 
)

Definition at line 64 of file testpower.c.

References report_power(), SDL_GetError, SDL_Init, SDL_LOG_CATEGORY_APPLICATION, SDL_LOG_PRIORITY_INFO, SDL_LogError, SDL_LogSetPriority, and SDL_Quit.

{
/* Enable standard application logging */
if (SDL_Init(0) == -1) {
SDL_LogError(SDL_LOG_CATEGORY_APPLICATION, "SDL_Init() failed: %s\n", SDL_GetError());
return 1;
}
return 0;
}
static void report_power ( void  )
static

Definition at line 18 of file testpower.c.

References NULL, SDL_GetPowerInfo, SDL_Log, SDL_POWERSTATE_CHARGED, SDL_POWERSTATE_CHARGING, SDL_POWERSTATE_NO_BATTERY, SDL_POWERSTATE_ON_BATTERY, SDL_POWERSTATE_UNKNOWN, and state.

Referenced by main().

{
int seconds, percent;
const SDL_PowerState state = SDL_GetPowerInfo(&seconds, &percent);
char *statestr = NULL;
SDL_Log("SDL-reported power info...\n");
switch (state) {
statestr = "Unknown";
break;
statestr = "On battery";
break;
statestr = "No battery";
break;
statestr = "Charging";
break;
statestr = "Charged";
break;
default:
statestr = "!!API ERROR!!";
break;
}
SDL_Log("State: %s\n", statestr);
if (percent == -1) {
SDL_Log("Percent left: unknown\n");
} else {
SDL_Log("Percent left: %d%%\n", percent);
}
if (seconds == -1) {
SDL_Log("Time left: unknown\n");
} else {
SDL_Log("Time left: %d minutes, %d seconds\n", (int) (seconds / 60),
(int) (seconds % 60));
}
}