advapi32: Make rpcrt4 a delayed import to work around circular dependencies with...
[wine/testsucceed.git] / dlls / kernel32 / powermgnt.c
blob8d410446de15fff34726d637b8ce4214316d35e6
1 /*
2 * Copyright 1995 Thomas Sandford (tdgsandf@prds-grn.demon.co.uk)
3 * Copyright 2003 Dimitrie O. Paun
5 * This library is free software; you can redistribute it and/or
6 * modify it under the terms of the GNU Lesser General Public
7 * License as published by the Free Software Foundation; either
8 * version 2.1 of the License, or (at your option) any later version.
10 * This library is distributed in the hope that it will be useful,
11 * but WITHOUT ANY WARRANTY; without even the implied warranty of
12 * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU
13 * Lesser General Public License for more details.
15 * You should have received a copy of the GNU Lesser General Public
16 * License along with this library; if not, write to the Free Software
17 * Foundation, Inc., 51 Franklin St, Fifth Floor, Boston, MA 02110-1301, USA
20 #include <stdarg.h>
22 #include "windef.h"
23 #include "winbase.h"
24 #include "wine/debug.h"
26 WINE_DEFAULT_DEBUG_CHANNEL(powermgnt);
28 /******************************************************************************
29 * GetDevicePowerState (KERNEL32.@)
31 BOOL WINAPI GetDevicePowerState(HANDLE hDevice, BOOL* pfOn)
33 WARN("(hDevice %p pfOn %p): stub\n", hDevice, pfOn);
34 return TRUE; /* no information */
37 /***********************************************************************
38 * GetSystemPowerStatus (KERNEL32.@)
40 BOOL WINAPI GetSystemPowerStatus(LPSYSTEM_POWER_STATUS ps)
42 WARN("(%p): stub, harmless.\n", ps);
44 if (ps)
46 ps->ACLineStatus = 255;
47 ps->BatteryFlag = 255;
48 ps->BatteryLifePercent = 255;
49 ps->Reserved1 = 0;
50 ps->BatteryLifeTime = ~0u;
51 ps->BatteryFullLifeTime = ~0u;
52 return TRUE;
54 return FALSE;
57 /***********************************************************************
58 * IsSystemResumeAutomatic (KERNEL32.@)
60 BOOL WINAPI IsSystemResumeAutomatic(void)
62 WARN("(): stub, harmless.\n");
63 return FALSE;
66 /***********************************************************************
67 * RequestWakeupLatency (KERNEL32.@)
69 BOOL WINAPI RequestWakeupLatency(LATENCY_TIME latency)
71 WARN("(): stub, harmless.\n");
72 return TRUE;
75 /***********************************************************************
76 * SetSystemPowerState (KERNEL32.@)
78 BOOL WINAPI SetSystemPowerState(BOOL suspend_or_hibernate,
79 BOOL force_flag)
81 WARN("(): stub, harmless.\n");
82 /* suspend_or_hibernate flag: w95 does not support
83 this feature anyway */
85 for ( ;0; )
87 if ( force_flag )
90 else
94 return TRUE;
97 /***********************************************************************
98 * SetThreadExecutionState (KERNEL32.@)
100 * Informs the system that activity is taking place for
101 * power management purposes.
103 EXECUTION_STATE WINAPI SetThreadExecutionState(EXECUTION_STATE flags)
105 static EXECUTION_STATE current =
106 ES_SYSTEM_REQUIRED | ES_DISPLAY_REQUIRED | ES_USER_PRESENT;
107 EXECUTION_STATE old = current;
109 WARN("(0x%x): stub, harmless.\n", flags);
111 if (!(current & ES_CONTINUOUS) || (flags & ES_CONTINUOUS))
112 current = flags;
113 return old;