Skip to content

Latest commit

 

History

History
80 lines (66 loc) · 1.91 KB

testpower.c

File metadata and controls

80 lines (66 loc) · 1.91 KB
 
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
/*
Copyright (C) 1997-2013 Sam Lantinga <slouken@libsdl.org>
This software is provided 'as-is', without any express or implied
warranty. In no event will the authors be held liable for any damages
arising from the use of this software.
Permission is granted to anyone to use this software for any purpose,
including commercial applications, and to alter it and redistribute it
freely.
*/
/* Simple test of power subsystem. */
#include <stdio.h>
#include "SDL.h"
static void
report_power(void)
{
int seconds, percent;
const SDL_PowerState state = SDL_GetPowerInfo(&seconds, &percent);
char *statestr = NULL;
Aug 15, 2013
Aug 15, 2013
24
SDL_Log("SDL-reported power info...\n");
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
switch (state) {
case SDL_POWERSTATE_UNKNOWN:
statestr = "Unknown";
break;
case SDL_POWERSTATE_ON_BATTERY:
statestr = "On battery";
break;
case SDL_POWERSTATE_NO_BATTERY:
statestr = "No battery";
break;
case SDL_POWERSTATE_CHARGING:
statestr = "Charging";
break;
case SDL_POWERSTATE_CHARGED:
statestr = "Charged";
break;
default:
statestr = "!!API ERROR!!";
break;
}
Aug 15, 2013
Aug 15, 2013
46
SDL_Log("State: %s\n", statestr);
47
48
if (percent == -1) {
Aug 15, 2013
Aug 15, 2013
49
SDL_Log("Percent left: unknown\n");
Aug 15, 2013
Aug 15, 2013
51
SDL_Log("Percent left: %d%%\n", percent);
52
53
54
}
if (seconds == -1) {
Aug 15, 2013
Aug 15, 2013
55
SDL_Log("Time left: unknown\n");
Aug 15, 2013
Aug 15, 2013
57
SDL_Log("Time left: %d minutes, %d seconds\n", (int) (seconds / 60),
58
59
60
61
62
63
64
65
(int) (seconds % 60));
}
}
int
main(int argc, char *argv[])
{
Aug 15, 2013
Aug 15, 2013
66
67
68
/* Enable standard application logging */
SDL_LogSetPriority(SDL_LOG_CATEGORY_APPLICATION, SDL_LOG_PRIORITY_INFO);
69
if (SDL_Init(0) == -1) {
Aug 15, 2013
Aug 15, 2013
70
SDL_LogError(SDL_LOG_CATEGORY_APPLICATION, "SDL_Init() failed: %s\n", SDL_GetError());
71
72
73
74
75
76
77
78
79
80
return 1;
}
report_power();
SDL_Quit();
return 0;
}
/* end of testpower.c ... */