mirror of
https://github.com/clinton-hall/nzbToMedia.git
synced 2025-07-30 19:40:03 -07:00
Also updates: - importlib-metadata-0.7 - jaraco-windows - jaraco.classes-1.5 - jaraco.collections-1.6.0 - jaraco.functools-1.20 - jaraco.structures-1.1.2 - jaraco.text-1.10.1 - jaraco.ui-1.6 - more-itertools-4.3.0 - path.py-11.5.0 - six-1.12.0
37 lines
1 KiB
Python
37 lines
1 KiB
Python
import ctypes.wintypes
|
|
|
|
|
|
class SYSTEM_POWER_STATUS(ctypes.Structure):
|
|
_fields_ = (
|
|
('ac_line_status', ctypes.wintypes.BYTE),
|
|
('battery_flag', ctypes.wintypes.BYTE),
|
|
('battery_life_percent', ctypes.wintypes.BYTE),
|
|
('reserved', ctypes.wintypes.BYTE),
|
|
('battery_life_time', ctypes.wintypes.DWORD),
|
|
('battery_full_life_time', ctypes.wintypes.DWORD),
|
|
)
|
|
|
|
@property
|
|
def ac_line_status_string(self):
|
|
return {
|
|
0: 'offline', 1: 'online', 255: 'unknown'}[self.ac_line_status]
|
|
|
|
|
|
LPSYSTEM_POWER_STATUS = ctypes.POINTER(SYSTEM_POWER_STATUS)
|
|
GetSystemPowerStatus = ctypes.windll.kernel32.GetSystemPowerStatus
|
|
GetSystemPowerStatus.argtypes = LPSYSTEM_POWER_STATUS,
|
|
GetSystemPowerStatus.restype = ctypes.wintypes.BOOL
|
|
|
|
SetThreadExecutionState = ctypes.windll.kernel32.SetThreadExecutionState
|
|
SetThreadExecutionState.argtypes = [ctypes.c_uint]
|
|
SetThreadExecutionState.restype = ctypes.c_uint
|
|
|
|
|
|
class ES:
|
|
"""
|
|
Execution state constants
|
|
"""
|
|
continuous = 0x80000000
|
|
system_required = 1
|
|
display_required = 2
|
|
awaymode_required = 0x40
|