summaryrefslogtreecommitdiffstats
path: root/vendor/windows-sys/src/Windows/Win32/System/Power
diff options
context:
space:
mode:
authorDaniel Baumann <daniel.baumann@progress-linux.org>2024-04-17 12:02:58 +0000
committerDaniel Baumann <daniel.baumann@progress-linux.org>2024-04-17 12:02:58 +0000
commit698f8c2f01ea549d77d7dc3338a12e04c11057b9 (patch)
tree173a775858bd501c378080a10dca74132f05bc50 /vendor/windows-sys/src/Windows/Win32/System/Power
parentInitial commit. (diff)
downloadrustc-698f8c2f01ea549d77d7dc3338a12e04c11057b9.tar.xz
rustc-698f8c2f01ea549d77d7dc3338a12e04c11057b9.zip
Adding upstream version 1.64.0+dfsg1.upstream/1.64.0+dfsg1
Signed-off-by: Daniel Baumann <daniel.baumann@progress-linux.org>
Diffstat (limited to 'vendor/windows-sys/src/Windows/Win32/System/Power')
-rw-r--r--vendor/windows-sys/src/Windows/Win32/System/Power/mod.rs1784
1 files changed, 1784 insertions, 0 deletions
diff --git a/vendor/windows-sys/src/Windows/Win32/System/Power/mod.rs b/vendor/windows-sys/src/Windows/Win32/System/Power/mod.rs
new file mode 100644
index 000000000..1f3c38e3d
--- /dev/null
+++ b/vendor/windows-sys/src/Windows/Win32/System/Power/mod.rs
@@ -0,0 +1,1784 @@
+#[link(name = "windows")]
+extern "system" {
+ #[doc = "*Required features: `\"Win32_System_Power\"`*"]
+ pub fn CallNtPowerInformation(informationlevel: POWER_INFORMATION_LEVEL, inputbuffer: *const ::core::ffi::c_void, inputbufferlength: u32, outputbuffer: *mut ::core::ffi::c_void, outputbufferlength: u32) -> i32;
+ #[doc = "*Required features: `\"Win32_System_Power\"`, `\"Win32_Foundation\"`*"]
+ #[cfg(feature = "Win32_Foundation")]
+ pub fn CanUserWritePwrScheme() -> super::super::Foundation::BOOLEAN;
+ #[doc = "*Required features: `\"Win32_System_Power\"`, `\"Win32_Foundation\"`*"]
+ #[cfg(feature = "Win32_Foundation")]
+ pub fn DeletePwrScheme(uiid: u32) -> super::super::Foundation::BOOLEAN;
+ #[doc = "*Required features: `\"Win32_System_Power\"`, `\"Win32_Foundation\"`*"]
+ #[cfg(feature = "Win32_Foundation")]
+ pub fn DevicePowerClose() -> super::super::Foundation::BOOLEAN;
+ #[doc = "*Required features: `\"Win32_System_Power\"`, `\"Win32_Foundation\"`*"]
+ #[cfg(feature = "Win32_Foundation")]
+ pub fn DevicePowerEnumDevices(queryindex: u32, queryinterpretationflags: u32, queryflags: u32, preturnbuffer: *mut u8, pbuffersize: *mut u32) -> super::super::Foundation::BOOLEAN;
+ #[doc = "*Required features: `\"Win32_System_Power\"`, `\"Win32_Foundation\"`*"]
+ #[cfg(feature = "Win32_Foundation")]
+ pub fn DevicePowerOpen(debugmask: u32) -> super::super::Foundation::BOOLEAN;
+ #[doc = "*Required features: `\"Win32_System_Power\"`*"]
+ pub fn DevicePowerSetDeviceState(devicedescription: ::windows_sys::core::PCWSTR, setflags: u32, setdata: *const ::core::ffi::c_void) -> u32;
+ #[doc = "*Required features: `\"Win32_System_Power\"`, `\"Win32_Foundation\"`*"]
+ #[cfg(feature = "Win32_Foundation")]
+ pub fn EnumPwrSchemes(lpfn: PWRSCHEMESENUMPROC, lparam: super::super::Foundation::LPARAM) -> super::super::Foundation::BOOLEAN;
+ #[doc = "*Required features: `\"Win32_System_Power\"`, `\"Win32_Foundation\"`*"]
+ #[cfg(feature = "Win32_Foundation")]
+ pub fn GetActivePwrScheme(puiid: *mut u32) -> super::super::Foundation::BOOLEAN;
+ #[doc = "*Required features: `\"Win32_System_Power\"`, `\"Win32_Foundation\"`*"]
+ #[cfg(feature = "Win32_Foundation")]
+ pub fn GetCurrentPowerPolicies(pglobalpowerpolicy: *mut GLOBAL_POWER_POLICY, ppowerpolicy: *mut POWER_POLICY) -> super::super::Foundation::BOOLEAN;
+ #[doc = "*Required features: `\"Win32_System_Power\"`, `\"Win32_Foundation\"`*"]
+ #[cfg(feature = "Win32_Foundation")]
+ pub fn GetDevicePowerState(hdevice: super::super::Foundation::HANDLE, pfon: *mut super::super::Foundation::BOOL) -> super::super::Foundation::BOOL;
+ #[doc = "*Required features: `\"Win32_System_Power\"`, `\"Win32_Foundation\"`*"]
+ #[cfg(feature = "Win32_Foundation")]
+ pub fn GetPwrCapabilities(lpspc: *mut SYSTEM_POWER_CAPABILITIES) -> super::super::Foundation::BOOLEAN;
+ #[doc = "*Required features: `\"Win32_System_Power\"`, `\"Win32_Foundation\"`*"]
+ #[cfg(feature = "Win32_Foundation")]
+ pub fn GetPwrDiskSpindownRange(puimax: *mut u32, puimin: *mut u32) -> super::super::Foundation::BOOLEAN;
+ #[doc = "*Required features: `\"Win32_System_Power\"`, `\"Win32_Foundation\"`*"]
+ #[cfg(feature = "Win32_Foundation")]
+ pub fn GetSystemPowerStatus(lpsystempowerstatus: *mut SYSTEM_POWER_STATUS) -> super::super::Foundation::BOOL;
+ #[doc = "*Required features: `\"Win32_System_Power\"`, `\"Win32_Foundation\"`*"]
+ #[cfg(feature = "Win32_Foundation")]
+ pub fn IsAdminOverrideActive(papp: *const ADMINISTRATOR_POWER_POLICY) -> super::super::Foundation::BOOLEAN;
+ #[doc = "*Required features: `\"Win32_System_Power\"`, `\"Win32_Foundation\"`*"]
+ #[cfg(feature = "Win32_Foundation")]
+ pub fn IsPwrHibernateAllowed() -> super::super::Foundation::BOOLEAN;
+ #[doc = "*Required features: `\"Win32_System_Power\"`, `\"Win32_Foundation\"`*"]
+ #[cfg(feature = "Win32_Foundation")]
+ pub fn IsPwrShutdownAllowed() -> super::super::Foundation::BOOLEAN;
+ #[doc = "*Required features: `\"Win32_System_Power\"`, `\"Win32_Foundation\"`*"]
+ #[cfg(feature = "Win32_Foundation")]
+ pub fn IsPwrSuspendAllowed() -> super::super::Foundation::BOOLEAN;
+ #[doc = "*Required features: `\"Win32_System_Power\"`, `\"Win32_Foundation\"`*"]
+ #[cfg(feature = "Win32_Foundation")]
+ pub fn IsSystemResumeAutomatic() -> super::super::Foundation::BOOL;
+ #[doc = "*Required features: `\"Win32_System_Power\"`*"]
+ pub fn PowerCanRestoreIndividualDefaultPowerScheme(schemeguid: *const ::windows_sys::core::GUID) -> u32;
+ #[doc = "*Required features: `\"Win32_System_Power\"`, `\"Win32_Foundation\"`*"]
+ #[cfg(feature = "Win32_Foundation")]
+ pub fn PowerClearRequest(powerrequest: super::super::Foundation::HANDLE, requesttype: POWER_REQUEST_TYPE) -> super::super::Foundation::BOOL;
+ #[doc = "*Required features: `\"Win32_System_Power\"`, `\"Win32_System_Registry\"`*"]
+ #[cfg(feature = "Win32_System_Registry")]
+ pub fn PowerCreatePossibleSetting(rootsystempowerkey: super::Registry::HKEY, subgroupofpowersettingsguid: *const ::windows_sys::core::GUID, powersettingguid: *const ::windows_sys::core::GUID, possiblesettingindex: u32) -> u32;
+ #[doc = "*Required features: `\"Win32_System_Power\"`, `\"Win32_Foundation\"`, `\"Win32_System_Threading\"`*"]
+ #[cfg(all(feature = "Win32_Foundation", feature = "Win32_System_Threading"))]
+ pub fn PowerCreateRequest(context: *const super::Threading::REASON_CONTEXT) -> super::super::Foundation::HANDLE;
+ #[doc = "*Required features: `\"Win32_System_Power\"`, `\"Win32_System_Registry\"`*"]
+ #[cfg(feature = "Win32_System_Registry")]
+ pub fn PowerCreateSetting(rootsystempowerkey: super::Registry::HKEY, subgroupofpowersettingsguid: *const ::windows_sys::core::GUID, powersettingguid: *const ::windows_sys::core::GUID) -> u32;
+ #[doc = "*Required features: `\"Win32_System_Power\"`, `\"Win32_System_Registry\"`*"]
+ #[cfg(feature = "Win32_System_Registry")]
+ pub fn PowerDeleteScheme(rootpowerkey: super::Registry::HKEY, schemeguid: *const ::windows_sys::core::GUID) -> u32;
+ #[doc = "*Required features: `\"Win32_System_Power\"`*"]
+ pub fn PowerDeterminePlatformRole() -> POWER_PLATFORM_ROLE;
+ #[doc = "*Required features: `\"Win32_System_Power\"`*"]
+ pub fn PowerDeterminePlatformRoleEx(version: POWER_PLATFORM_ROLE_VERSION) -> POWER_PLATFORM_ROLE;
+ #[doc = "*Required features: `\"Win32_System_Power\"`, `\"Win32_System_Registry\"`*"]
+ #[cfg(feature = "Win32_System_Registry")]
+ pub fn PowerDuplicateScheme(rootpowerkey: super::Registry::HKEY, sourceschemeguid: *const ::windows_sys::core::GUID, destinationschemeguid: *mut *mut ::windows_sys::core::GUID) -> u32;
+ #[doc = "*Required features: `\"Win32_System_Power\"`, `\"Win32_System_Registry\"`*"]
+ #[cfg(feature = "Win32_System_Registry")]
+ pub fn PowerEnumerate(rootpowerkey: super::Registry::HKEY, schemeguid: *const ::windows_sys::core::GUID, subgroupofpowersettingsguid: *const ::windows_sys::core::GUID, accessflags: POWER_DATA_ACCESSOR, index: u32, buffer: *mut u8, buffersize: *mut u32) -> u32;
+ #[doc = "*Required features: `\"Win32_System_Power\"`, `\"Win32_System_Registry\"`*"]
+ #[cfg(feature = "Win32_System_Registry")]
+ pub fn PowerGetActiveScheme(userrootpowerkey: super::Registry::HKEY, activepolicyguid: *mut *mut ::windows_sys::core::GUID) -> u32;
+ #[doc = "*Required features: `\"Win32_System_Power\"`, `\"Win32_System_Registry\"`*"]
+ #[cfg(feature = "Win32_System_Registry")]
+ pub fn PowerImportPowerScheme(rootpowerkey: super::Registry::HKEY, importfilenamepath: ::windows_sys::core::PCWSTR, destinationschemeguid: *mut *mut ::windows_sys::core::GUID) -> u32;
+ #[doc = "*Required features: `\"Win32_System_Power\"`, `\"Win32_Foundation\"`*"]
+ #[cfg(feature = "Win32_Foundation")]
+ pub fn PowerIsSettingRangeDefined(subkeyguid: *const ::windows_sys::core::GUID, settingguid: *const ::windows_sys::core::GUID) -> super::super::Foundation::BOOLEAN;
+ #[doc = "*Required features: `\"Win32_System_Power\"`, `\"Win32_Foundation\"`, `\"Win32_System_Registry\"`*"]
+ #[cfg(all(feature = "Win32_Foundation", feature = "Win32_System_Registry"))]
+ pub fn PowerOpenSystemPowerKey(phsystempowerkey: *mut super::Registry::HKEY, access: u32, openexisting: super::super::Foundation::BOOL) -> u32;
+ #[doc = "*Required features: `\"Win32_System_Power\"`, `\"Win32_Foundation\"`, `\"Win32_System_Registry\"`*"]
+ #[cfg(all(feature = "Win32_Foundation", feature = "Win32_System_Registry"))]
+ pub fn PowerOpenUserPowerKey(phuserpowerkey: *mut super::Registry::HKEY, access: u32, openexisting: super::super::Foundation::BOOL) -> u32;
+ #[doc = "*Required features: `\"Win32_System_Power\"`, `\"Win32_System_Registry\"`*"]
+ #[cfg(feature = "Win32_System_Registry")]
+ pub fn PowerReadACDefaultIndex(rootpowerkey: super::Registry::HKEY, schemepersonalityguid: *const ::windows_sys::core::GUID, subgroupofpowersettingsguid: *const ::windows_sys::core::GUID, powersettingguid: *const ::windows_sys::core::GUID, acdefaultindex: *mut u32) -> u32;
+ #[doc = "*Required features: `\"Win32_System_Power\"`, `\"Win32_System_Registry\"`*"]
+ #[cfg(feature = "Win32_System_Registry")]
+ pub fn PowerReadACValue(rootpowerkey: super::Registry::HKEY, schemeguid: *const ::windows_sys::core::GUID, subgroupofpowersettingsguid: *const ::windows_sys::core::GUID, powersettingguid: *const ::windows_sys::core::GUID, r#type: *mut u32, buffer: *mut u8, buffersize: *mut u32) -> u32;
+ #[doc = "*Required features: `\"Win32_System_Power\"`, `\"Win32_System_Registry\"`*"]
+ #[cfg(feature = "Win32_System_Registry")]
+ pub fn PowerReadACValueIndex(rootpowerkey: super::Registry::HKEY, schemeguid: *const ::windows_sys::core::GUID, subgroupofpowersettingsguid: *const ::windows_sys::core::GUID, powersettingguid: *const ::windows_sys::core::GUID, acvalueindex: *mut u32) -> u32;
+ #[doc = "*Required features: `\"Win32_System_Power\"`, `\"Win32_System_Registry\"`*"]
+ #[cfg(feature = "Win32_System_Registry")]
+ pub fn PowerReadDCDefaultIndex(rootpowerkey: super::Registry::HKEY, schemepersonalityguid: *const ::windows_sys::core::GUID, subgroupofpowersettingsguid: *const ::windows_sys::core::GUID, powersettingguid: *const ::windows_sys::core::GUID, dcdefaultindex: *mut u32) -> u32;
+ #[doc = "*Required features: `\"Win32_System_Power\"`, `\"Win32_System_Registry\"`*"]
+ #[cfg(feature = "Win32_System_Registry")]
+ pub fn PowerReadDCValue(rootpowerkey: super::Registry::HKEY, schemeguid: *const ::windows_sys::core::GUID, subgroupofpowersettingsguid: *const ::windows_sys::core::GUID, powersettingguid: *const ::windows_sys::core::GUID, r#type: *mut u32, buffer: *mut u8, buffersize: *mut u32) -> u32;
+ #[doc = "*Required features: `\"Win32_System_Power\"`, `\"Win32_System_Registry\"`*"]
+ #[cfg(feature = "Win32_System_Registry")]
+ pub fn PowerReadDCValueIndex(rootpowerkey: super::Registry::HKEY, schemeguid: *const ::windows_sys::core::GUID, subgroupofpowersettingsguid: *const ::windows_sys::core::GUID, powersettingguid: *const ::windows_sys::core::GUID, dcvalueindex: *mut u32) -> u32;
+ #[doc = "*Required features: `\"Win32_System_Power\"`, `\"Win32_System_Registry\"`*"]
+ #[cfg(feature = "Win32_System_Registry")]
+ pub fn PowerReadDescription(rootpowerkey: super::Registry::HKEY, schemeguid: *const ::windows_sys::core::GUID, subgroupofpowersettingsguid: *const ::windows_sys::core::GUID, powersettingguid: *const ::windows_sys::core::GUID, buffer: *mut u8, buffersize: *mut u32) -> u32;
+ #[doc = "*Required features: `\"Win32_System_Power\"`, `\"Win32_System_Registry\"`*"]
+ #[cfg(feature = "Win32_System_Registry")]
+ pub fn PowerReadFriendlyName(rootpowerkey: super::Registry::HKEY, schemeguid: *const ::windows_sys::core::GUID, subgroupofpowersettingsguid: *const ::windows_sys::core::GUID, powersettingguid: *const ::windows_sys::core::GUID, buffer: *mut u8, buffersize: *mut u32) -> u32;
+ #[doc = "*Required features: `\"Win32_System_Power\"`, `\"Win32_System_Registry\"`*"]
+ #[cfg(feature = "Win32_System_Registry")]
+ pub fn PowerReadIconResourceSpecifier(rootpowerkey: super::Registry::HKEY, schemeguid: *const ::windows_sys::core::GUID, subgroupofpowersettingsguid: *const ::windows_sys::core::GUID, powersettingguid: *const ::windows_sys::core::GUID, buffer: *mut u8, buffersize: *mut u32) -> u32;
+ #[doc = "*Required features: `\"Win32_System_Power\"`, `\"Win32_System_Registry\"`*"]
+ #[cfg(feature = "Win32_System_Registry")]
+ pub fn PowerReadPossibleDescription(rootpowerkey: super::Registry::HKEY, subgroupofpowersettingsguid: *const ::windows_sys::core::GUID, powersettingguid: *const ::windows_sys::core::GUID, possiblesettingindex: u32, buffer: *mut u8, buffersize: *mut u32) -> u32;
+ #[doc = "*Required features: `\"Win32_System_Power\"`, `\"Win32_System_Registry\"`*"]
+ #[cfg(feature = "Win32_System_Registry")]
+ pub fn PowerReadPossibleFriendlyName(rootpowerkey: super::Registry::HKEY, subgroupofpowersettingsguid: *const ::windows_sys::core::GUID, powersettingguid: *const ::windows_sys::core::GUID, possiblesettingindex: u32, buffer: *mut u8, buffersize: *mut u32) -> u32;
+ #[doc = "*Required features: `\"Win32_System_Power\"`, `\"Win32_System_Registry\"`*"]
+ #[cfg(feature = "Win32_System_Registry")]
+ pub fn PowerReadPossibleValue(rootpowerkey: super::Registry::HKEY, subgroupofpowersettingsguid: *const ::windows_sys::core::GUID, powersettingguid: *const ::windows_sys::core::GUID, r#type: *mut u32, possiblesettingindex: u32, buffer: *mut u8, buffersize: *mut u32) -> u32;
+ #[doc = "*Required features: `\"Win32_System_Power\"`*"]
+ pub fn PowerReadSettingAttributes(subgroupguid: *const ::windows_sys::core::GUID, powersettingguid: *const ::windows_sys::core::GUID) -> u32;
+ #[doc = "*Required features: `\"Win32_System_Power\"`, `\"Win32_System_Registry\"`*"]
+ #[cfg(feature = "Win32_System_Registry")]
+ pub fn PowerReadValueIncrement(rootpowerkey: super::Registry::HKEY, subgroupofpowersettingsguid: *const ::windows_sys::core::GUID, powersettingguid: *const ::windows_sys::core::GUID, valueincrement: *mut u32) -> u32;
+ #[doc = "*Required features: `\"Win32_System_Power\"`, `\"Win32_System_Registry\"`*"]
+ #[cfg(feature = "Win32_System_Registry")]
+ pub fn PowerReadValueMax(rootpowerkey: super::Registry::HKEY, subgroupofpowersettingsguid: *const ::windows_sys::core::GUID, powersettingguid: *const ::windows_sys::core::GUID, valuemaximum: *mut u32) -> u32;
+ #[doc = "*Required features: `\"Win32_System_Power\"`, `\"Win32_System_Registry\"`*"]
+ #[cfg(feature = "Win32_System_Registry")]
+ pub fn PowerReadValueMin(rootpowerkey: super::Registry::HKEY, subgroupofpowersettingsguid: *const ::windows_sys::core::GUID, powersettingguid: *const ::windows_sys::core::GUID, valueminimum: *mut u32) -> u32;
+ #[doc = "*Required features: `\"Win32_System_Power\"`, `\"Win32_System_Registry\"`*"]
+ #[cfg(feature = "Win32_System_Registry")]
+ pub fn PowerReadValueUnitsSpecifier(rootpowerkey: super::Registry::HKEY, subgroupofpowersettingsguid: *const ::windows_sys::core::GUID, powersettingguid: *const ::windows_sys::core::GUID, buffer: *mut u8, buffersize: *mut u32) -> u32;
+ #[doc = "*Required features: `\"Win32_System_Power\"`*"]
+ pub fn PowerRegisterForEffectivePowerModeNotifications(version: u32, callback: EFFECTIVE_POWER_MODE_CALLBACK, context: *const ::core::ffi::c_void, registrationhandle: *mut *mut ::core::ffi::c_void) -> ::windows_sys::core::HRESULT;
+ #[doc = "*Required features: `\"Win32_System_Power\"`, `\"Win32_Foundation\"`*"]
+ #[cfg(feature = "Win32_Foundation")]
+ pub fn PowerRegisterSuspendResumeNotification(flags: u32, recipient: super::super::Foundation::HANDLE, registrationhandle: *mut *mut ::core::ffi::c_void) -> u32;
+ #[doc = "*Required features: `\"Win32_System_Power\"`*"]
+ pub fn PowerRemovePowerSetting(powersettingsubkeyguid: *const ::windows_sys::core::GUID, powersettingguid: *const ::windows_sys::core::GUID) -> u32;
+ #[doc = "*Required features: `\"Win32_System_Power\"`*"]
+ pub fn PowerReplaceDefaultPowerSchemes() -> u32;
+ #[doc = "*Required features: `\"Win32_System_Power\"`*"]
+ pub fn PowerReportThermalEvent(event: *const THERMAL_EVENT) -> u32;
+ #[doc = "*Required features: `\"Win32_System_Power\"`*"]
+ pub fn PowerRestoreDefaultPowerSchemes() -> u32;
+ #[doc = "*Required features: `\"Win32_System_Power\"`*"]
+ pub fn PowerRestoreIndividualDefaultPowerScheme(schemeguid: *const ::windows_sys::core::GUID) -> u32;
+ #[doc = "*Required features: `\"Win32_System_Power\"`, `\"Win32_System_Registry\"`*"]
+ #[cfg(feature = "Win32_System_Registry")]
+ pub fn PowerSetActiveScheme(userrootpowerkey: super::Registry::HKEY, schemeguid: *const ::windows_sys::core::GUID) -> u32;
+ #[doc = "*Required features: `\"Win32_System_Power\"`, `\"Win32_Foundation\"`*"]
+ #[cfg(feature = "Win32_Foundation")]
+ pub fn PowerSetRequest(powerrequest: super::super::Foundation::HANDLE, requesttype: POWER_REQUEST_TYPE) -> super::super::Foundation::BOOL;
+ #[doc = "*Required features: `\"Win32_System_Power\"`*"]
+ pub fn PowerSettingAccessCheck(accessflags: POWER_DATA_ACCESSOR, powerguid: *const ::windows_sys::core::GUID) -> u32;
+ #[doc = "*Required features: `\"Win32_System_Power\"`, `\"Win32_System_Registry\"`*"]
+ #[cfg(feature = "Win32_System_Registry")]
+ pub fn PowerSettingAccessCheckEx(accessflags: POWER_DATA_ACCESSOR, powerguid: *const ::windows_sys::core::GUID, accesstype: super::Registry::REG_SAM_FLAGS) -> u32;
+ #[doc = "*Required features: `\"Win32_System_Power\"`, `\"Win32_Foundation\"`*"]
+ #[cfg(feature = "Win32_Foundation")]
+ pub fn PowerSettingRegisterNotification(settingguid: *const ::windows_sys::core::GUID, flags: POWER_SETTING_REGISTER_NOTIFICATION_FLAGS, recipient: super::super::Foundation::HANDLE, registrationhandle: *mut *mut ::core::ffi::c_void) -> u32;
+ #[doc = "*Required features: `\"Win32_System_Power\"`*"]
+ pub fn PowerSettingUnregisterNotification(registrationhandle: HPOWERNOTIFY) -> u32;
+ #[doc = "*Required features: `\"Win32_System_Power\"`*"]
+ pub fn PowerUnregisterFromEffectivePowerModeNotifications(registrationhandle: *const ::core::ffi::c_void) -> ::windows_sys::core::HRESULT;
+ #[doc = "*Required features: `\"Win32_System_Power\"`*"]
+ pub fn PowerUnregisterSuspendResumeNotification(registrationhandle: HPOWERNOTIFY) -> u32;
+ #[doc = "*Required features: `\"Win32_System_Power\"`, `\"Win32_System_Registry\"`*"]
+ #[cfg(feature = "Win32_System_Registry")]
+ pub fn PowerWriteACDefaultIndex(rootsystempowerkey: super::Registry::HKEY, schemepersonalityguid: *const ::windows_sys::core::GUID, subgroupofpowersettingsguid: *const ::windows_sys::core::GUID, powersettingguid: *const ::windows_sys::core::GUID, defaultacindex: u32) -> u32;
+ #[doc = "*Required features: `\"Win32_System_Power\"`, `\"Win32_System_Registry\"`*"]
+ #[cfg(feature = "Win32_System_Registry")]
+ pub fn PowerWriteACValueIndex(rootpowerkey: super::Registry::HKEY, schemeguid: *const ::windows_sys::core::GUID, subgroupofpowersettingsguid: *const ::windows_sys::core::GUID, powersettingguid: *const ::windows_sys::core::GUID, acvalueindex: u32) -> u32;
+ #[doc = "*Required features: `\"Win32_System_Power\"`, `\"Win32_System_Registry\"`*"]
+ #[cfg(feature = "Win32_System_Registry")]
+ pub fn PowerWriteDCDefaultIndex(rootsystempowerkey: super::Registry::HKEY, schemepersonalityguid: *const ::windows_sys::core::GUID, subgroupofpowersettingsguid: *const ::windows_sys::core::GUID, powersettingguid: *const ::windows_sys::core::GUID, defaultdcindex: u32) -> u32;
+ #[doc = "*Required features: `\"Win32_System_Power\"`, `\"Win32_System_Registry\"`*"]
+ #[cfg(feature = "Win32_System_Registry")]
+ pub fn PowerWriteDCValueIndex(rootpowerkey: super::Registry::HKEY, schemeguid: *const ::windows_sys::core::GUID, subgroupofpowersettingsguid: *const ::windows_sys::core::GUID, powersettingguid: *const ::windows_sys::core::GUID, dcvalueindex: u32) -> u32;
+ #[doc = "*Required features: `\"Win32_System_Power\"`, `\"Win32_System_Registry\"`*"]
+ #[cfg(feature = "Win32_System_Registry")]
+ pub fn PowerWriteDescription(rootpowerkey: super::Registry::HKEY, schemeguid: *const ::windows_sys::core::GUID, subgroupofpowersettingsguid: *const ::windows_sys::core::GUID, powersettingguid: *const ::windows_sys::core::GUID, buffer: *const u8, buffersize: u32) -> u32;
+ #[doc = "*Required features: `\"Win32_System_Power\"`, `\"Win32_System_Registry\"`*"]
+ #[cfg(feature = "Win32_System_Registry")]
+ pub fn PowerWriteFriendlyName(rootpowerkey: super::Registry::HKEY, schemeguid: *const ::windows_sys::core::GUID, subgroupofpowersettingsguid: *const ::windows_sys::core::GUID, powersettingguid: *const ::windows_sys::core::GUID, buffer: *const u8, buffersize: u32) -> u32;
+ #[doc = "*Required features: `\"Win32_System_Power\"`, `\"Win32_System_Registry\"`*"]
+ #[cfg(feature = "Win32_System_Registry")]
+ pub fn PowerWriteIconResourceSpecifier(rootpowerkey: super::Registry::HKEY, schemeguid: *const ::windows_sys::core::GUID, subgroupofpowersettingsguid: *const ::windows_sys::core::GUID, powersettingguid: *const ::windows_sys::core::GUID, buffer: *const u8, buffersize: u32) -> u32;
+ #[doc = "*Required features: `\"Win32_System_Power\"`, `\"Win32_System_Registry\"`*"]
+ #[cfg(feature = "Win32_System_Registry")]
+ pub fn PowerWritePossibleDescription(rootpowerkey: super::Registry::HKEY, subgroupofpowersettingsguid: *const ::windows_sys::core::GUID, powersettingguid: *const ::windows_sys::core::GUID, possiblesettingindex: u32, buffer: *const u8, buffersize: u32) -> u32;
+ #[doc = "*Required features: `\"Win32_System_Power\"`, `\"Win32_System_Registry\"`*"]
+ #[cfg(feature = "Win32_System_Registry")]
+ pub fn PowerWritePossibleFriendlyName(rootpowerkey: super::Registry::HKEY, subgroupofpowersettingsguid: *const ::windows_sys::core::GUID, powersettingguid: *const ::windows_sys::core::GUID, possiblesettingindex: u32, buffer: *const u8, buffersize: u32) -> u32;
+ #[doc = "*Required features: `\"Win32_System_Power\"`, `\"Win32_System_Registry\"`*"]
+ #[cfg(feature = "Win32_System_Registry")]
+ pub fn PowerWritePossibleValue(rootpowerkey: super::Registry::HKEY, subgroupofpowersettingsguid: *const ::windows_sys::core::GUID, powersettingguid: *const ::windows_sys::core::GUID, r#type: u32, possiblesettingindex: u32, buffer: *const u8, buffersize: u32) -> u32;
+ #[doc = "*Required features: `\"Win32_System_Power\"`*"]
+ pub fn PowerWriteSettingAttributes(subgroupguid: *const ::windows_sys::core::GUID, powersettingguid: *const ::windows_sys::core::GUID, attributes: u32) -> u32;
+ #[doc = "*Required features: `\"Win32_System_Power\"`, `\"Win32_System_Registry\"`*"]
+ #[cfg(feature = "Win32_System_Registry")]
+ pub fn PowerWriteValueIncrement(rootpowerkey: super::Registry::HKEY, subgroupofpowersettingsguid: *const ::windows_sys::core::GUID, powersettingguid: *const ::windows_sys::core::GUID, valueincrement: u32) -> u32;
+ #[doc = "*Required features: `\"Win32_System_Power\"`, `\"Win32_System_Registry\"`*"]
+ #[cfg(feature = "Win32_System_Registry")]
+ pub fn PowerWriteValueMax(rootpowerkey: super::Registry::HKEY, subgroupofpowersettingsguid: *const ::windows_sys::core::GUID, powersettingguid: *const ::windows_sys::core::GUID, valuemaximum: u32) -> u32;
+ #[doc = "*Required features: `\"Win32_System_Power\"`, `\"Win32_System_Registry\"`*"]
+ #[cfg(feature = "Win32_System_Registry")]
+ pub fn PowerWriteValueMin(rootpowerkey: super::Registry::HKEY, subgroupofpowersettingsguid: *const ::windows_sys::core::GUID, powersettingguid: *const ::windows_sys::core::GUID, valueminimum: u32) -> u32;
+ #[doc = "*Required features: `\"Win32_System_Power\"`, `\"Win32_System_Registry\"`*"]
+ #[cfg(feature = "Win32_System_Registry")]
+ pub fn PowerWriteValueUnitsSpecifier(rootpowerkey: super::Registry::HKEY, subgroupofpowersettingsguid: *const ::windows_sys::core::GUID, powersettingguid: *const ::windows_sys::core::GUID, buffer: *const u8, buffersize: u32) -> u32;
+ #[doc = "*Required features: `\"Win32_System_Power\"`, `\"Win32_Foundation\"`*"]
+ #[cfg(feature = "Win32_Foundation")]
+ pub fn ReadGlobalPwrPolicy(pglobalpowerpolicy: *const GLOBAL_POWER_POLICY) -> super::super::Foundation::BOOLEAN;
+ #[doc = "*Required features: `\"Win32_System_Power\"`, `\"Win32_Foundation\"`*"]
+ #[cfg(feature = "Win32_Foundation")]
+ pub fn ReadProcessorPwrScheme(uiid: u32, pmachineprocessorpowerpolicy: *mut MACHINE_PROCESSOR_POWER_POLICY) -> super::super::Foundation::BOOLEAN;
+ #[doc = "*Required features: `\"Win32_System_Power\"`, `\"Win32_Foundation\"`*"]
+ #[cfg(feature = "Win32_Foundation")]
+ pub fn ReadPwrScheme(uiid: u32, ppowerpolicy: *mut POWER_POLICY) -> super::super::Foundation::BOOLEAN;
+ #[doc = "*Required features: `\"Win32_System_Power\"`, `\"Win32_Foundation\"`*"]
+ #[cfg(feature = "Win32_Foundation")]
+ pub fn RegisterPowerSettingNotification(hrecipient: super::super::Foundation::HANDLE, powersettingguid: *const ::windows_sys::core::GUID, flags: u32) -> HPOWERNOTIFY;
+ #[doc = "*Required features: `\"Win32_System_Power\"`, `\"Win32_Foundation\"`*"]
+ #[cfg(feature = "Win32_Foundation")]
+ pub fn RegisterSuspendResumeNotification(hrecipient: super::super::Foundation::HANDLE, flags: u32) -> HPOWERNOTIFY;
+ #[doc = "*Required features: `\"Win32_System_Power\"`, `\"Win32_Foundation\"`*"]
+ #[cfg(feature = "Win32_Foundation")]
+ pub fn RequestWakeupLatency(latency: LATENCY_TIME) -> super::super::Foundation::BOOL;
+ #[doc = "*Required features: `\"Win32_System_Power\"`, `\"Win32_Foundation\"`*"]
+ #[cfg(feature = "Win32_Foundation")]
+ pub fn SetActivePwrScheme(uiid: u32, pglobalpowerpolicy: *const GLOBAL_POWER_POLICY, ppowerpolicy: *const POWER_POLICY) -> super::super::Foundation::BOOLEAN;
+ #[doc = "*Required features: `\"Win32_System_Power\"`, `\"Win32_Foundation\"`*"]
+ #[cfg(feature = "Win32_Foundation")]
+ pub fn SetSuspendState(bhibernate: super::super::Foundation::BOOLEAN, bforce: super::super::Foundation::BOOLEAN, bwakeupeventsdisabled: super::super::Foundation::BOOLEAN) -> super::super::Foundation::BOOLEAN;
+ #[doc = "*Required features: `\"Win32_System_Power\"`, `\"Win32_Foundation\"`*"]
+ #[cfg(feature = "Win32_Foundation")]
+ pub fn SetSystemPowerState(fsuspend: super::super::Foundation::BOOL, fforce: super::super::Foundation::BOOL) -> super::super::Foundation::BOOL;
+ #[doc = "*Required features: `\"Win32_System_Power\"`*"]
+ pub fn SetThreadExecutionState(esflags: EXECUTION_STATE) -> EXECUTION_STATE;
+ #[doc = "*Required features: `\"Win32_System_Power\"`, `\"Win32_Foundation\"`*"]
+ #[cfg(feature = "Win32_Foundation")]
+ pub fn UnregisterPowerSettingNotification(handle: HPOWERNOTIFY) -> super::super::Foundation::BOOL;
+ #[doc = "*Required features: `\"Win32_System_Power\"`, `\"Win32_Foundation\"`*"]
+ #[cfg(feature = "Win32_Foundation")]
+ pub fn UnregisterSuspendResumeNotification(handle: HPOWERNOTIFY) -> super::super::Foundation::BOOL;
+ #[doc = "*Required features: `\"Win32_System_Power\"`, `\"Win32_Foundation\"`*"]
+ #[cfg(feature = "Win32_Foundation")]
+ pub fn ValidatePowerPolicies(pglobalpowerpolicy: *mut GLOBAL_POWER_POLICY, ppowerpolicy: *mut POWER_POLICY) -> super::super::Foundation::BOOLEAN;
+ #[doc = "*Required features: `\"Win32_System_Power\"`, `\"Win32_Foundation\"`*"]
+ #[cfg(feature = "Win32_Foundation")]
+ pub fn WriteGlobalPwrPolicy(pglobalpowerpolicy: *const GLOBAL_POWER_POLICY) -> super::super::Foundation::BOOLEAN;
+ #[doc = "*Required features: `\"Win32_System_Power\"`, `\"Win32_Foundation\"`*"]
+ #[cfg(feature = "Win32_Foundation")]
+ pub fn WriteProcessorPwrScheme(uiid: u32, pmachineprocessorpowerpolicy: *const MACHINE_PROCESSOR_POWER_POLICY) -> super::super::Foundation::BOOLEAN;
+ #[doc = "*Required features: `\"Win32_System_Power\"`, `\"Win32_Foundation\"`*"]
+ #[cfg(feature = "Win32_Foundation")]
+ pub fn WritePwrScheme(puiid: *const u32, lpszschemename: ::windows_sys::core::PCWSTR, lpszdescription: ::windows_sys::core::PCWSTR, lpscheme: *const POWER_POLICY) -> super::super::Foundation::BOOLEAN;
+}
+#[repr(C)]
+#[doc = "*Required features: `\"Win32_System_Power\"`*"]
+pub struct ACPI_REAL_TIME {
+ pub Year: u16,
+ pub Month: u8,
+ pub Day: u8,
+ pub Hour: u8,
+ pub Minute: u8,
+ pub Second: u8,
+ pub Valid: u8,
+ pub Milliseconds: u16,
+ pub TimeZone: i16,
+ pub DayLight: u8,
+ pub Reserved1: [u8; 3],
+}
+impl ::core::marker::Copy for ACPI_REAL_TIME {}
+impl ::core::clone::Clone for ACPI_REAL_TIME {
+ fn clone(&self) -> Self {
+ *self
+ }
+}
+#[doc = "*Required features: `\"Win32_System_Power\"`*"]
+pub const ACPI_TIME_ADJUST_DAYLIGHT: u32 = 1u32;
+#[doc = "*Required features: `\"Win32_System_Power\"`*"]
+pub const ACPI_TIME_IN_DAYLIGHT: u32 = 2u32;
+#[doc = "*Required features: `\"Win32_System_Power\"`*"]
+pub const ACPI_TIME_ZONE_UNKNOWN: u32 = 2047u32;
+#[doc = "*Required features: `\"Win32_System_Power\"`*"]
+pub const ACTIVE_COOLING: u32 = 0u32;
+#[repr(C)]
+#[doc = "*Required features: `\"Win32_System_Power\"`*"]
+pub struct ADMINISTRATOR_POWER_POLICY {
+ pub MinSleep: SYSTEM_POWER_STATE,
+ pub MaxSleep: SYSTEM_POWER_STATE,
+ pub MinVideoTimeout: u32,
+ pub MaxVideoTimeout: u32,
+ pub MinSpindownTimeout: u32,
+ pub MaxSpindownTimeout: u32,
+}
+impl ::core::marker::Copy for ADMINISTRATOR_POWER_POLICY {}
+impl ::core::clone::Clone for ADMINISTRATOR_POWER_POLICY {
+ fn clone(&self) -> Self {
+ *self
+ }
+}
+#[doc = "*Required features: `\"Win32_System_Power\"`*"]
+pub const BATTERY_CAPACITY_RELATIVE: u32 = 1073741824u32;
+#[repr(C)]
+#[doc = "*Required features: `\"Win32_System_Power\"`*"]
+pub struct BATTERY_CHARGER_STATUS {
+ pub Type: BATTERY_CHARGING_SOURCE_TYPE,
+ pub VaData: [u32; 1],
+}
+impl ::core::marker::Copy for BATTERY_CHARGER_STATUS {}
+impl ::core::clone::Clone for BATTERY_CHARGER_STATUS {
+ fn clone(&self) -> Self {
+ *self
+ }
+}
+#[doc = "*Required features: `\"Win32_System_Power\"`*"]
+pub const BATTERY_CHARGING: u32 = 4u32;
+#[repr(C)]
+#[doc = "*Required features: `\"Win32_System_Power\"`*"]
+pub struct BATTERY_CHARGING_SOURCE {
+ pub Type: BATTERY_CHARGING_SOURCE_TYPE,
+ pub MaxCurrent: u32,
+}
+impl ::core::marker::Copy for BATTERY_CHARGING_SOURCE {}
+impl ::core::clone::Clone for BATTERY_CHARGING_SOURCE {
+ fn clone(&self) -> Self {
+ *self
+ }
+}
+#[repr(C)]
+#[doc = "*Required features: `\"Win32_System_Power\"`, `\"Win32_Foundation\"`*"]
+#[cfg(feature = "Win32_Foundation")]
+pub struct BATTERY_CHARGING_SOURCE_INFORMATION {
+ pub Type: BATTERY_CHARGING_SOURCE_TYPE,
+ pub SourceOnline: super::super::Foundation::BOOLEAN,
+}
+#[cfg(feature = "Win32_Foundation")]
+impl ::core::marker::Copy for BATTERY_CHARGING_SOURCE_INFORMATION {}
+#[cfg(feature = "Win32_Foundation")]
+impl ::core::clone::Clone for BATTERY_CHARGING_SOURCE_INFORMATION {
+ fn clone(&self) -> Self {
+ *self
+ }
+}
+#[doc = "*Required features: `\"Win32_System_Power\"`*"]
+pub type BATTERY_CHARGING_SOURCE_TYPE = i32;
+#[doc = "*Required features: `\"Win32_System_Power\"`*"]
+pub const BatteryChargingSourceType_AC: BATTERY_CHARGING_SOURCE_TYPE = 1i32;
+#[doc = "*Required features: `\"Win32_System_Power\"`*"]
+pub const BatteryChargingSourceType_USB: BATTERY_CHARGING_SOURCE_TYPE = 2i32;
+#[doc = "*Required features: `\"Win32_System_Power\"`*"]
+pub const BatteryChargingSourceType_Wireless: BATTERY_CHARGING_SOURCE_TYPE = 3i32;
+#[doc = "*Required features: `\"Win32_System_Power\"`*"]
+pub const BatteryChargingSourceType_Max: BATTERY_CHARGING_SOURCE_TYPE = 4i32;
+#[doc = "*Required features: `\"Win32_System_Power\"`*"]
+pub const BATTERY_CLASS_MAJOR_VERSION: u32 = 1u32;
+#[doc = "*Required features: `\"Win32_System_Power\"`*"]
+pub const BATTERY_CLASS_MINOR_VERSION: u32 = 0u32;
+#[doc = "*Required features: `\"Win32_System_Power\"`*"]
+pub const BATTERY_CLASS_MINOR_VERSION_1: u32 = 1u32;
+#[doc = "*Required features: `\"Win32_System_Power\"`*"]
+pub const BATTERY_CRITICAL: u32 = 8u32;
+pub const BATTERY_CYCLE_COUNT_WMI_GUID: ::windows_sys::core::GUID = ::windows_sys::core::GUID { data1: 4019772196, data2: 20, data3: 19493, data4: [165, 11, 199, 36, 174, 92, 211, 113] };
+#[doc = "*Required features: `\"Win32_System_Power\"`*"]
+pub const BATTERY_DISCHARGING: u32 = 2u32;
+pub const BATTERY_FULL_CHARGED_CAPACITY_WMI_GUID: ::windows_sys::core::GUID = ::windows_sys::core::GUID { data1: 1085539685, data2: 38647, data3: 17461, data4: [134, 148, 151, 224, 228, 57, 89, 5] };
+#[repr(C)]
+#[doc = "*Required features: `\"Win32_System_Power\"`*"]
+pub struct BATTERY_INFORMATION {
+ pub Capabilities: u32,
+ pub Technology: u8,
+ pub Reserved: [u8; 3],
+ pub Chemistry: [u8; 4],
+ pub DesignedCapacity: u32,
+ pub FullChargedCapacity: u32,
+ pub DefaultAlert1: u32,
+ pub DefaultAlert2: u32,
+ pub CriticalBias: u32,
+ pub CycleCount: u32,
+}
+impl ::core::marker::Copy for BATTERY_INFORMATION {}
+impl ::core::clone::Clone for BATTERY_INFORMATION {
+ fn clone(&self) -> Self {
+ *self
+ }
+}
+#[doc = "*Required features: `\"Win32_System_Power\"`*"]
+pub const BATTERY_IS_SHORT_TERM: u32 = 536870912u32;
+#[repr(C)]
+#[doc = "*Required features: `\"Win32_System_Power\"`*"]
+pub struct BATTERY_MANUFACTURE_DATE {
+ pub Day: u8,
+ pub Month: u8,
+ pub Year: u16,
+}
+impl ::core::marker::Copy for BATTERY_MANUFACTURE_DATE {}
+impl ::core::clone::Clone for BATTERY_MANUFACTURE_DATE {
+ fn clone(&self) -> Self {
+ *self
+ }
+}
+#[doc = "*Required features: `\"Win32_System_Power\"`*"]
+pub const BATTERY_MINIPORT_UPDATE_DATA_VER_1: u32 = 1u32;
+#[doc = "*Required features: `\"Win32_System_Power\"`*"]
+pub const BATTERY_MINIPORT_UPDATE_DATA_VER_2: u32 = 2u32;
+#[doc = "*Required features: `\"Win32_System_Power\"`*"]
+pub const BATTERY_POWER_ON_LINE: u32 = 1u32;
+#[repr(C)]
+#[doc = "*Required features: `\"Win32_System_Power\"`*"]
+pub struct BATTERY_QUERY_INFORMATION {
+ pub BatteryTag: u32,
+ pub InformationLevel: BATTERY_QUERY_INFORMATION_LEVEL,
+ pub AtRate: u32,
+}
+impl ::core::marker::Copy for BATTERY_QUERY_INFORMATION {}
+impl ::core::clone::Clone for BATTERY_QUERY_INFORMATION {
+ fn clone(&self) -> Self {
+ *self
+ }
+}
+#[doc = "*Required features: `\"Win32_System_Power\"`*"]
+pub type BATTERY_QUERY_INFORMATION_LEVEL = i32;
+#[doc = "*Required features: `\"Win32_System_Power\"`*"]
+pub const BatteryInformation: BATTERY_QUERY_INFORMATION_LEVEL = 0i32;
+#[doc = "*Required features: `\"Win32_System_Power\"`*"]
+pub const BatteryGranularityInformation: BATTERY_QUERY_INFORMATION_LEVEL = 1i32;
+#[doc = "*Required features: `\"Win32_System_Power\"`*"]
+pub const BatteryTemperature: BATTERY_QUERY_INFORMATION_LEVEL = 2i32;
+#[doc = "*Required features: `\"Win32_System_Power\"`*"]
+pub const BatteryEstimatedTime: BATTERY_QUERY_INFORMATION_LEVEL = 3i32;
+#[doc = "*Required features: `\"Win32_System_Power\"`*"]
+pub const BatteryDeviceName: BATTERY_QUERY_INFORMATION_LEVEL = 4i32;
+#[doc = "*Required features: `\"Win32_System_Power\"`*"]
+pub const BatteryManufactureDate: BATTERY_QUERY_INFORMATION_LEVEL = 5i32;
+#[doc = "*Required features: `\"Win32_System_Power\"`*"]
+pub const BatteryManufactureName: BATTERY_QUERY_INFORMATION_LEVEL = 6i32;
+#[doc = "*Required features: `\"Win32_System_Power\"`*"]
+pub const BatteryUniqueID: BATTERY_QUERY_INFORMATION_LEVEL = 7i32;
+#[doc = "*Required features: `\"Win32_System_Power\"`*"]
+pub const BatterySerialNumber: BATTERY_QUERY_INFORMATION_LEVEL = 8i32;
+#[repr(C)]
+#[doc = "*Required features: `\"Win32_System_Power\"`*"]
+pub struct BATTERY_REPORTING_SCALE {
+ pub Granularity: u32,
+ pub Capacity: u32,
+}
+impl ::core::marker::Copy for BATTERY_REPORTING_SCALE {}
+impl ::core::clone::Clone for BATTERY_REPORTING_SCALE {
+ fn clone(&self) -> Self {
+ *self
+ }
+}
+pub const BATTERY_RUNTIME_WMI_GUID: ::windows_sys::core::GUID = ::windows_sys::core::GUID { data1: 1398421351, data2: 6850, data3: 18876, data4: [160, 119, 63, 122, 2, 228, 10, 236] };
+#[doc = "*Required features: `\"Win32_System_Power\"`*"]
+pub const BATTERY_SEALED: u32 = 268435456u32;
+#[doc = "*Required features: `\"Win32_System_Power\"`*"]
+pub const BATTERY_SET_CHARGER_ID_SUPPORTED: u32 = 8u32;
+#[doc = "*Required features: `\"Win32_System_Power\"`*"]
+pub const BATTERY_SET_CHARGE_SUPPORTED: u32 = 1u32;
+#[doc = "*Required features: `\"Win32_System_Power\"`*"]
+pub const BATTERY_SET_CHARGINGSOURCE_SUPPORTED: u32 = 4u32;
+#[doc = "*Required features: `\"Win32_System_Power\"`*"]
+pub const BATTERY_SET_DISCHARGE_SUPPORTED: u32 = 2u32;
+#[repr(C)]
+#[doc = "*Required features: `\"Win32_System_Power\"`*"]
+pub struct BATTERY_SET_INFORMATION {
+ pub BatteryTag: u32,
+ pub InformationLevel: BATTERY_SET_INFORMATION_LEVEL,
+ pub Buffer: [u8; 1],
+}
+impl ::core::marker::Copy for BATTERY_SET_INFORMATION {}
+impl ::core::clone::Clone for BATTERY_SET_INFORMATION {
+ fn clone(&self) -> Self {
+ *self
+ }
+}
+#[doc = "*Required features: `\"Win32_System_Power\"`*"]
+pub type BATTERY_SET_INFORMATION_LEVEL = i32;
+#[doc = "*Required features: `\"Win32_System_Power\"`*"]
+pub const BatteryCriticalBias: BATTERY_SET_INFORMATION_LEVEL = 0i32;
+#[doc = "*Required features: `\"Win32_System_Power\"`*"]
+pub const BatteryCharge: BATTERY_SET_INFORMATION_LEVEL = 1i32;
+#[doc = "*Required features: `\"Win32_System_Power\"`*"]
+pub const BatteryDischarge: BATTERY_SET_INFORMATION_LEVEL = 2i32;
+#[doc = "*Required features: `\"Win32_System_Power\"`*"]
+pub const BatteryChargingSource: BATTERY_SET_INFORMATION_LEVEL = 3i32;
+#[doc = "*Required features: `\"Win32_System_Power\"`*"]
+pub const BatteryChargerId: BATTERY_SET_INFORMATION_LEVEL = 4i32;
+#[doc = "*Required features: `\"Win32_System_Power\"`*"]
+pub const BatteryChargerStatus: BATTERY_SET_INFORMATION_LEVEL = 5i32;
+pub const BATTERY_STATIC_DATA_WMI_GUID: ::windows_sys::core::GUID = ::windows_sys::core::GUID { data1: 98690147, data2: 58594, data3: 20137, data4: [128, 203, 155, 212, 179, 202, 6, 85] };
+#[repr(C)]
+#[doc = "*Required features: `\"Win32_System_Power\"`*"]
+pub struct BATTERY_STATUS {
+ pub PowerState: u32,
+ pub Capacity: u32,
+ pub Voltage: u32,
+ pub Rate: i32,
+}
+impl ::core::marker::Copy for BATTERY_STATUS {}
+impl ::core::clone::Clone for BATTERY_STATUS {
+ fn clone(&self) -> Self {
+ *self
+ }
+}
+pub const BATTERY_STATUS_CHANGE_WMI_GUID: ::windows_sys::core::GUID = ::windows_sys::core::GUID { data1: 3453984963, data2: 31835, data3: 20035, data4: [160, 52, 5, 159, 165, 184, 67, 100] };
+pub const BATTERY_STATUS_WMI_GUID: ::windows_sys::core::GUID = ::windows_sys::core::GUID { data1: 4232474833, data2: 60351, data3: 16750, data4: [135, 206, 55, 74, 78, 188, 17, 26] };
+#[doc = "*Required features: `\"Win32_System_Power\"`*"]
+pub const BATTERY_SYSTEM_BATTERY: u32 = 2147483648u32;
+pub const BATTERY_TAG_CHANGE_WMI_GUID: ::windows_sys::core::GUID = ::windows_sys::core::GUID { data1: 1579118105, data2: 34694, data3: 19747, data4: [148, 252, 158, 116, 107, 213, 216, 136] };
+#[doc = "*Required features: `\"Win32_System_Power\"`*"]
+pub const BATTERY_TAG_INVALID: u32 = 0u32;
+pub const BATTERY_TEMPERATURE_WMI_GUID: ::windows_sys::core::GUID = ::windows_sys::core::GUID { data1: 441622861, data2: 44494, data3: 19012, data4: [154, 62, 200, 216, 241, 95, 242, 194] };
+#[doc = "*Required features: `\"Win32_System_Power\"`*"]
+pub const BATTERY_UNKNOWN_CAPACITY: u32 = 4294967295u32;
+#[doc = "*Required features: `\"Win32_System_Power\"`*"]
+pub const BATTERY_UNKNOWN_CURRENT: u32 = 4294967295u32;
+#[doc = "*Required features: `\"Win32_System_Power\"`*"]
+pub const BATTERY_UNKNOWN_RATE: u32 = 2147483648u32;
+#[doc = "*Required features: `\"Win32_System_Power\"`*"]
+pub const BATTERY_UNKNOWN_TIME: u32 = 4294967295u32;
+#[doc = "*Required features: `\"Win32_System_Power\"`*"]
+pub const BATTERY_UNKNOWN_VOLTAGE: u32 = 4294967295u32;
+#[repr(C)]
+#[doc = "*Required features: `\"Win32_System_Power\"`*"]
+pub struct BATTERY_USB_CHARGER_STATUS {
+ pub Type: BATTERY_CHARGING_SOURCE_TYPE,
+ pub Reserved: u32,
+ pub Flags: u32,
+ pub MaxCurrent: u32,
+ pub Voltage: u32,
+ pub PortType: USB_CHARGER_PORT,
+ pub PortId: u64,
+ pub PowerSourceInformation: *mut ::core::ffi::c_void,
+ pub OemCharger: ::windows_sys::core::GUID,
+}
+impl ::core::marker::Copy for BATTERY_USB_CHARGER_STATUS {}
+impl ::core::clone::Clone for BATTERY_USB_CHARGER_STATUS {
+ fn clone(&self) -> Self {
+ *self
+ }
+}
+#[doc = "*Required features: `\"Win32_System_Power\"`*"]
+pub const BATTERY_USB_CHARGER_STATUS_FN_DEFAULT_USB: u32 = 1u32;
+#[doc = "*Required features: `\"Win32_System_Power\"`*"]
+pub const BATTERY_USB_CHARGER_STATUS_UCM_PD: u32 = 2u32;
+#[repr(C)]
+#[doc = "*Required features: `\"Win32_System_Power\"`*"]
+pub struct BATTERY_WAIT_STATUS {
+ pub BatteryTag: u32,
+ pub Timeout: u32,
+ pub PowerState: u32,
+ pub LowCapacity: u32,
+ pub HighCapacity: u32,
+}
+impl ::core::marker::Copy for BATTERY_WAIT_STATUS {}
+impl ::core::clone::Clone for BATTERY_WAIT_STATUS {
+ fn clone(&self) -> Self {
+ *self
+ }
+}
+#[repr(C)]
+#[doc = "*Required features: `\"Win32_System_Power\"`*"]
+pub struct CM_POWER_DATA {
+ pub PD_Size: u32,
+ pub PD_MostRecentPowerState: DEVICE_POWER_STATE,
+ pub PD_Capabilities: u32,
+ pub PD_D1Latency: u32,
+ pub PD_D2Latency: u32,
+ pub PD_D3Latency: u32,
+ pub PD_PowerStateMapping: [DEVICE_POWER_STATE; 7],
+ pub PD_DeepestSystemWake: SYSTEM_POWER_STATE,
+}
+impl ::core::marker::Copy for CM_POWER_DATA {}
+impl ::core::clone::Clone for CM_POWER_DATA {
+ fn clone(&self) -> Self {
+ *self
+ }
+}
+#[doc = "*Required features: `\"Win32_System_Power\"`*"]
+pub const DEVICEPOWER_AND_OPERATION: u32 = 1073741824u32;
+#[doc = "*Required features: `\"Win32_System_Power\"`*"]
+pub const DEVICEPOWER_CLEAR_WAKEENABLED: u32 = 2u32;
+#[doc = "*Required features: `\"Win32_System_Power\"`*"]
+pub const DEVICEPOWER_FILTER_DEVICES_PRESENT: u32 = 536870912u32;
+#[doc = "*Required features: `\"Win32_System_Power\"`*"]
+pub const DEVICEPOWER_FILTER_HARDWARE: u32 = 268435456u32;
+#[doc = "*Required features: `\"Win32_System_Power\"`*"]
+pub const DEVICEPOWER_FILTER_ON_NAME: u32 = 33554432u32;
+#[doc = "*Required features: `\"Win32_System_Power\"`*"]
+pub const DEVICEPOWER_FILTER_WAKEENABLED: u32 = 134217728u32;
+#[doc = "*Required features: `\"Win32_System_Power\"`*"]
+pub const DEVICEPOWER_FILTER_WAKEPROGRAMMABLE: u32 = 67108864u32;
+#[doc = "*Required features: `\"Win32_System_Power\"`*"]
+pub const DEVICEPOWER_HARDWAREID: u32 = 2147483648u32;
+#[doc = "*Required features: `\"Win32_System_Power\"`*"]
+pub const DEVICEPOWER_SET_WAKEENABLED: u32 = 1u32;
+#[repr(C)]
+#[doc = "*Required features: `\"Win32_System_Power\"`*"]
+pub struct DEVICE_NOTIFY_SUBSCRIBE_PARAMETERS {
+ pub Callback: PDEVICE_NOTIFY_CALLBACK_ROUTINE,
+ pub Context: *mut ::core::ffi::c_void,
+}
+impl ::core::marker::Copy for DEVICE_NOTIFY_SUBSCRIBE_PARAMETERS {}
+impl ::core::clone::Clone for DEVICE_NOTIFY_SUBSCRIBE_PARAMETERS {
+ fn clone(&self) -> Self {
+ *self
+ }
+}
+#[doc = "*Required features: `\"Win32_System_Power\"`*"]
+pub type DEVICE_POWER_STATE = i32;
+#[doc = "*Required features: `\"Win32_System_Power\"`*"]
+pub const PowerDeviceUnspecified: DEVICE_POWER_STATE = 0i32;
+#[doc = "*Required features: `\"Win32_System_Power\"`*"]
+pub const PowerDeviceD0: DEVICE_POWER_STATE = 1i32;
+#[doc = "*Required features: `\"Win32_System_Power\"`*"]
+pub const PowerDeviceD1: DEVICE_POWER_STATE = 2i32;
+#[doc = "*Required features: `\"Win32_System_Power\"`*"]
+pub const PowerDeviceD2: DEVICE_POWER_STATE = 3i32;
+#[doc = "*Required features: `\"Win32_System_Power\"`*"]
+pub const PowerDeviceD3: DEVICE_POWER_STATE = 4i32;
+#[doc = "*Required features: `\"Win32_System_Power\"`*"]
+pub const PowerDeviceMaximum: DEVICE_POWER_STATE = 5i32;
+#[doc = "*Required features: `\"Win32_System_Power\"`*"]
+pub type EFFECTIVE_POWER_MODE = i32;
+#[doc = "*Required features: `\"Win32_System_Power\"`*"]
+pub const EffectivePowerModeBatterySaver: EFFECTIVE_POWER_MODE = 0i32;
+#[doc = "*Required features: `\"Win32_System_Power\"`*"]
+pub const EffectivePowerModeBetterBattery: EFFECTIVE_POWER_MODE = 1i32;
+#[doc = "*Required features: `\"Win32_System_Power\"`*"]
+pub const EffectivePowerModeBalanced: EFFECTIVE_POWER_MODE = 2i32;
+#[doc = "*Required features: `\"Win32_System_Power\"`*"]
+pub const EffectivePowerModeHighPerformance: EFFECTIVE_POWER_MODE = 3i32;
+#[doc = "*Required features: `\"Win32_System_Power\"`*"]
+pub const EffectivePowerModeMaxPerformance: EFFECTIVE_POWER_MODE = 4i32;
+#[doc = "*Required features: `\"Win32_System_Power\"`*"]
+pub const EffectivePowerModeGameMode: EFFECTIVE_POWER_MODE = 5i32;
+#[doc = "*Required features: `\"Win32_System_Power\"`*"]
+pub const EffectivePowerModeMixedReality: EFFECTIVE_POWER_MODE = 6i32;
+#[doc = "*Required features: `\"Win32_System_Power\"`*"]
+pub type EFFECTIVE_POWER_MODE_CALLBACK = ::core::option::Option<unsafe extern "system" fn(mode: EFFECTIVE_POWER_MODE, context: *const ::core::ffi::c_void)>;
+#[doc = "*Required features: `\"Win32_System_Power\"`*"]
+pub const EFFECTIVE_POWER_MODE_V1: u32 = 1u32;
+#[doc = "*Required features: `\"Win32_System_Power\"`*"]
+pub const EFFECTIVE_POWER_MODE_V2: u32 = 2u32;
+#[repr(C)]
+#[doc = "*Required features: `\"Win32_System_Power\"`*"]
+pub struct EMI_CHANNEL_MEASUREMENT_DATA {
+ pub AbsoluteEnergy: u64,
+ pub AbsoluteTime: u64,
+}
+impl ::core::marker::Copy for EMI_CHANNEL_MEASUREMENT_DATA {}
+impl ::core::clone::Clone for EMI_CHANNEL_MEASUREMENT_DATA {
+ fn clone(&self) -> Self {
+ *self
+ }
+}
+#[repr(C)]
+#[doc = "*Required features: `\"Win32_System_Power\"`*"]
+pub struct EMI_CHANNEL_V2 {
+ pub MeasurementUnit: EMI_MEASUREMENT_UNIT,
+ pub ChannelNameSize: u16,
+ pub ChannelName: [u16; 1],
+}
+impl ::core::marker::Copy for EMI_CHANNEL_V2 {}
+impl ::core::clone::Clone for EMI_CHANNEL_V2 {
+ fn clone(&self) -> Self {
+ *self
+ }
+}
+#[repr(C)]
+#[doc = "*Required features: `\"Win32_System_Power\"`*"]
+pub struct EMI_MEASUREMENT_DATA_V2 {
+ pub ChannelData: [EMI_CHANNEL_MEASUREMENT_DATA; 1],
+}
+impl ::core::marker::Copy for EMI_MEASUREMENT_DATA_V2 {}
+impl ::core::clone::Clone for EMI_MEASUREMENT_DATA_V2 {
+ fn clone(&self) -> Self {
+ *self
+ }
+}
+#[doc = "*Required features: `\"Win32_System_Power\"`*"]
+pub type EMI_MEASUREMENT_UNIT = i32;
+#[doc = "*Required features: `\"Win32_System_Power\"`*"]
+pub const EmiMeasurementUnitPicowattHours: EMI_MEASUREMENT_UNIT = 0i32;
+#[repr(C)]
+#[doc = "*Required features: `\"Win32_System_Power\"`*"]
+pub struct EMI_METADATA_SIZE {
+ pub MetadataSize: u32,
+}
+impl ::core::marker::Copy for EMI_METADATA_SIZE {}
+impl ::core::clone::Clone for EMI_METADATA_SIZE {
+ fn clone(&self) -> Self {
+ *self
+ }
+}
+#[repr(C)]
+#[doc = "*Required features: `\"Win32_System_Power\"`*"]
+pub struct EMI_METADATA_V1 {
+ pub MeasurementUnit: EMI_MEASUREMENT_UNIT,
+ pub HardwareOEM: [u16; 16],
+ pub HardwareModel: [u16; 16],
+ pub HardwareRevision: u16,
+ pub MeteredHardwareNameSize: u16,
+ pub MeteredHardwareName: [u16; 1],
+}
+impl ::core::marker::Copy for EMI_METADATA_V1 {}
+impl ::core::clone::Clone for EMI_METADATA_V1 {
+ fn clone(&self) -> Self {
+ *self
+ }
+}
+#[repr(C)]
+#[doc = "*Required features: `\"Win32_System_Power\"`*"]
+pub struct EMI_METADATA_V2 {
+ pub HardwareOEM: [u16; 16],
+ pub HardwareModel: [u16; 16],
+ pub HardwareRevision: u16,
+ pub ChannelCount: u16,
+ pub Channels: [EMI_CHANNEL_V2; 1],
+}
+impl ::core::marker::Copy for EMI_METADATA_V2 {}
+impl ::core::clone::Clone for EMI_METADATA_V2 {
+ fn clone(&self) -> Self {
+ *self
+ }
+}
+#[doc = "*Required features: `\"Win32_System_Power\"`*"]
+pub const EMI_NAME_MAX: u32 = 16u32;
+#[repr(C)]
+#[doc = "*Required features: `\"Win32_System_Power\"`*"]
+pub struct EMI_VERSION {
+ pub EmiVersion: u16,
+}
+impl ::core::marker::Copy for EMI_VERSION {}
+impl ::core::clone::Clone for EMI_VERSION {
+ fn clone(&self) -> Self {
+ *self
+ }
+}
+#[doc = "*Required features: `\"Win32_System_Power\"`*"]
+pub const EMI_VERSION_V1: u32 = 1u32;
+#[doc = "*Required features: `\"Win32_System_Power\"`*"]
+pub const EMI_VERSION_V2: u32 = 2u32;
+#[doc = "*Required features: `\"Win32_System_Power\"`*"]
+pub type EXECUTION_STATE = u32;
+#[doc = "*Required features: `\"Win32_System_Power\"`*"]
+pub const ES_AWAYMODE_REQUIRED: EXECUTION_STATE = 64u32;
+#[doc = "*Required features: `\"Win32_System_Power\"`*"]
+pub const ES_CONTINUOUS: EXECUTION_STATE = 2147483648u32;
+#[doc = "*Required features: `\"Win32_System_Power\"`*"]
+pub const ES_DISPLAY_REQUIRED: EXECUTION_STATE = 2u32;
+#[doc = "*Required features: `\"Win32_System_Power\"`*"]
+pub const ES_SYSTEM_REQUIRED: EXECUTION_STATE = 1u32;
+#[doc = "*Required features: `\"Win32_System_Power\"`*"]
+pub const ES_USER_PRESENT: EXECUTION_STATE = 4u32;
+#[doc = "*Required features: `\"Win32_System_Power\"`*"]
+pub const EnableMultiBatteryDisplay: u32 = 2u32;
+#[doc = "*Required features: `\"Win32_System_Power\"`*"]
+pub const EnablePasswordLogon: u32 = 4u32;
+#[doc = "*Required features: `\"Win32_System_Power\"`*"]
+pub const EnableSysTrayBatteryMeter: u32 = 1u32;
+#[doc = "*Required features: `\"Win32_System_Power\"`*"]
+pub const EnableVideoDimDisplay: u32 = 16u32;
+#[doc = "*Required features: `\"Win32_System_Power\"`*"]
+pub const EnableWakeOnRing: u32 = 8u32;
+#[repr(C)]
+#[doc = "*Required features: `\"Win32_System_Power\"`*"]
+pub struct GLOBAL_MACHINE_POWER_POLICY {
+ pub Revision: u32,
+ pub LidOpenWakeAc: SYSTEM_POWER_STATE,
+ pub LidOpenWakeDc: SYSTEM_POWER_STATE,
+ pub BroadcastCapacityResolution: u32,
+}
+impl ::core::marker::Copy for GLOBAL_MACHINE_POWER_POLICY {}
+impl ::core::clone::Clone for GLOBAL_MACHINE_POWER_POLICY {
+ fn clone(&self) -> Self {
+ *self
+ }
+}
+#[repr(C)]
+#[doc = "*Required features: `\"Win32_System_Power\"`, `\"Win32_Foundation\"`*"]
+#[cfg(feature = "Win32_Foundation")]
+pub struct GLOBAL_POWER_POLICY {
+ pub user: GLOBAL_USER_POWER_POLICY,
+ pub mach: GLOBAL_MACHINE_POWER_POLICY,
+}
+#[cfg(feature = "Win32_Foundation")]
+impl ::core::marker::Copy for GLOBAL_POWER_POLICY {}
+#[cfg(feature = "Win32_Foundation")]
+impl ::core::clone::Clone for GLOBAL_POWER_POLICY {
+ fn clone(&self) -> Self {
+ *self
+ }
+}
+#[repr(C)]
+#[doc = "*Required features: `\"Win32_System_Power\"`, `\"Win32_Foundation\"`*"]
+#[cfg(feature = "Win32_Foundation")]
+pub struct GLOBAL_USER_POWER_POLICY {
+ pub Revision: u32,
+ pub PowerButtonAc: POWER_ACTION_POLICY,
+ pub PowerButtonDc: POWER_ACTION_POLICY,
+ pub SleepButtonAc: POWER_ACTION_POLICY,
+ pub SleepButtonDc: POWER_ACTION_POLICY,
+ pub LidCloseAc: POWER_ACTION_POLICY,
+ pub LidCloseDc: POWER_ACTION_POLICY,
+ pub DischargePolicy: [SYSTEM_POWER_LEVEL; 4],
+ pub GlobalFlags: u32,
+}
+#[cfg(feature = "Win32_Foundation")]
+impl ::core::marker::Copy for GLOBAL_USER_POWER_POLICY {}
+#[cfg(feature = "Win32_Foundation")]
+impl ::core::clone::Clone for GLOBAL_USER_POWER_POLICY {
+ fn clone(&self) -> Self {
+ *self
+ }
+}
+pub const GUID_CLASS_INPUT: ::windows_sys::core::GUID = ::windows_sys::core::GUID { data1: 1293833650, data2: 61807, data3: 4559, data4: [136, 203, 0, 17, 17, 0, 0, 48] };
+pub const GUID_DEVICE_ACPI_TIME: ::windows_sys::core::GUID = ::windows_sys::core::GUID { data1: 2549718006, data2: 17559, data3: 20248, data4: [187, 34, 75, 159, 178, 251, 239, 156] };
+pub const GUID_DEVICE_APPLICATIONLAUNCH_BUTTON: ::windows_sys::core::GUID = ::windows_sys::core::GUID { data1: 1654085870, data2: 39022, data3: 19870, data4: [142, 71, 222, 39, 248, 171, 5, 77] };
+pub const GUID_DEVICE_BATTERY: ::windows_sys::core::GUID = ::windows_sys::core::GUID { data1: 1919098452, data2: 30884, data3: 4560, data4: [188, 247, 0, 170, 0, 183, 179, 42] };
+pub const GUID_DEVICE_ENERGY_METER: ::windows_sys::core::GUID = ::windows_sys::core::GUID { data1: 1170047812, data2: 32470, data3: 18895, data4: [164, 64, 194, 118, 201, 51, 176, 83] };
+pub const GUID_DEVICE_FAN: ::windows_sys::core::GUID = ::windows_sys::core::GUID { data1: 99406141, data2: 33242, data3: 18986, data4: [138, 76, 82, 79, 35, 221, 77, 201] };
+pub const GUID_DEVICE_LID: ::windows_sys::core::GUID = ::windows_sys::core::GUID { data1: 1257913682, data2: 29863, data3: 4560, data4: [190, 94, 0, 160, 201, 6, 40, 87] };
+pub const GUID_DEVICE_MEMORY: ::windows_sys::core::GUID = ::windows_sys::core::GUID { data1: 1070657597, data2: 37600, data3: 17915, data4: [183, 92, 94, 216, 255, 176, 16, 33] };
+pub const GUID_DEVICE_MESSAGE_INDICATOR: ::windows_sys::core::GUID = ::windows_sys::core::GUID { data1: 3444089701, data2: 64148, data3: 19682, data4: [162, 50, 161, 183, 100, 229, 216, 180] };
+pub const GUID_DEVICE_PROCESSOR: ::windows_sys::core::GUID = ::windows_sys::core::GUID { data1: 2549799696, data2: 20019, data3: 16558, data4: [53, 156, 139, 239, 2, 157, 189, 208] };
+pub const GUID_DEVICE_SYS_BUTTON: ::windows_sys::core::GUID = ::windows_sys::core::GUID { data1: 1257913683, data2: 29863, data3: 4560, data4: [190, 94, 0, 160, 201, 6, 40, 87] };
+pub const GUID_DEVICE_THERMAL_ZONE: ::windows_sys::core::GUID = ::windows_sys::core::GUID { data1: 1257913681, data2: 29863, data3: 4560, data4: [190, 94, 0, 160, 201, 6, 40, 87] };
+pub const GUID_DEVINTERFACE_THERMAL_COOLING: ::windows_sys::core::GUID = ::windows_sys::core::GUID { data1: 3689166653, data2: 15489, data3: 16587, data4: [172, 228, 224, 229, 208, 95, 12, 159] };
+pub const GUID_DEVINTERFACE_THERMAL_MANAGER: ::windows_sys::core::GUID = ::windows_sys::core::GUID { data1: 2457780371, data2: 27044, data3: 19392, data4: [189, 2, 113, 22, 100, 113, 68, 99] };
+pub type HPOWERNOTIFY = isize;
+#[doc = "*Required features: `\"Win32_System_Power\"`*"]
+pub const IOCTL_ACPI_GET_REAL_TIME: u32 = 2703888u32;
+#[doc = "*Required features: `\"Win32_System_Power\"`*"]
+pub const IOCTL_ACPI_SET_REAL_TIME: u32 = 2720276u32;
+#[doc = "*Required features: `\"Win32_System_Power\"`*"]
+pub const IOCTL_BATTERY_CHARGING_SOURCE_CHANGE: u32 = 2703440u32;
+#[doc = "*Required features: `\"Win32_System_Power\"`*"]
+pub const IOCTL_BATTERY_QUERY_INFORMATION: u32 = 2703428u32;
+#[doc = "*Required features: `\"Win32_System_Power\"`*"]
+pub const IOCTL_BATTERY_QUERY_STATUS: u32 = 2703436u32;
+#[doc = "*Required features: `\"Win32_System_Power\"`*"]
+pub const IOCTL_BATTERY_QUERY_TAG: u32 = 2703424u32;
+#[doc = "*Required features: `\"Win32_System_Power\"`*"]
+pub const IOCTL_BATTERY_SET_INFORMATION: u32 = 2719816u32;
+#[doc = "*Required features: `\"Win32_System_Power\"`*"]
+pub const IOCTL_EMI_GET_MEASUREMENT: u32 = 2244620u32;
+#[doc = "*Required features: `\"Win32_System_Power\"`*"]
+pub const IOCTL_EMI_GET_METADATA: u32 = 2244616u32;
+#[doc = "*Required features: `\"Win32_System_Power\"`*"]
+pub const IOCTL_EMI_GET_METADATA_SIZE: u32 = 2244612u32;
+#[doc = "*Required features: `\"Win32_System_Power\"`*"]
+pub const IOCTL_EMI_GET_VERSION: u32 = 2244608u32;
+#[doc = "*Required features: `\"Win32_System_Power\"`*"]
+pub const IOCTL_GET_PROCESSOR_OBJ_INFO: u32 = 2703744u32;
+#[doc = "*Required features: `\"Win32_System_Power\"`*"]
+pub const IOCTL_GET_SYS_BUTTON_CAPS: u32 = 2703680u32;
+#[doc = "*Required features: `\"Win32_System_Power\"`*"]
+pub const IOCTL_GET_SYS_BUTTON_EVENT: u32 = 2703684u32;
+#[doc = "*Required features: `\"Win32_System_Power\"`*"]
+pub const IOCTL_GET_WAKE_ALARM_POLICY: u32 = 2736652u32;
+#[doc = "*Required features: `\"Win32_System_Power\"`*"]
+pub const IOCTL_GET_WAKE_ALARM_SYSTEM_POWERSTATE: u32 = 2703896u32;
+#[doc = "*Required features: `\"Win32_System_Power\"`*"]
+pub const IOCTL_GET_WAKE_ALARM_VALUE: u32 = 2736648u32;
+#[doc = "*Required features: `\"Win32_System_Power\"`*"]
+pub const IOCTL_NOTIFY_SWITCH_EVENT: u32 = 2703616u32;
+#[doc = "*Required features: `\"Win32_System_Power\"`*"]
+pub const IOCTL_QUERY_LID: u32 = 2703552u32;
+#[doc = "*Required features: `\"Win32_System_Power\"`*"]
+pub const IOCTL_RUN_ACTIVE_COOLING_METHOD: u32 = 2719880u32;
+#[doc = "*Required features: `\"Win32_System_Power\"`*"]
+pub const IOCTL_SET_SYS_MESSAGE_INDICATOR: u32 = 2720192u32;
+#[doc = "*Required features: `\"Win32_System_Power\"`*"]
+pub const IOCTL_SET_WAKE_ALARM_POLICY: u32 = 2720260u32;
+#[doc = "*Required features: `\"Win32_System_Power\"`*"]
+pub const IOCTL_SET_WAKE_ALARM_VALUE: u32 = 2720256u32;
+#[doc = "*Required features: `\"Win32_System_Power\"`*"]
+pub const IOCTL_THERMAL_QUERY_INFORMATION: u32 = 2703488u32;
+#[doc = "*Required features: `\"Win32_System_Power\"`*"]
+pub const IOCTL_THERMAL_READ_POLICY: u32 = 2703508u32;
+#[doc = "*Required features: `\"Win32_System_Power\"`*"]
+pub const IOCTL_THERMAL_READ_TEMPERATURE: u32 = 2703504u32;
+#[doc = "*Required features: `\"Win32_System_Power\"`*"]
+pub const IOCTL_THERMAL_SET_COOLING_POLICY: u32 = 2719876u32;
+#[doc = "*Required features: `\"Win32_System_Power\"`*"]
+pub const IOCTL_THERMAL_SET_PASSIVE_LIMIT: u32 = 2719884u32;
+#[doc = "*Required features: `\"Win32_System_Power\"`*"]
+pub type LATENCY_TIME = i32;
+#[doc = "*Required features: `\"Win32_System_Power\"`*"]
+pub const LT_DONT_CARE: LATENCY_TIME = 0i32;
+#[doc = "*Required features: `\"Win32_System_Power\"`*"]
+pub const LT_LOWEST_LATENCY: LATENCY_TIME = 1i32;
+#[repr(C)]
+#[doc = "*Required features: `\"Win32_System_Power\"`*"]
+pub struct MACHINE_POWER_POLICY {
+ pub Revision: u32,
+ pub MinSleepAc: SYSTEM_POWER_STATE,
+ pub MinSleepDc: SYSTEM_POWER_STATE,
+ pub ReducedLatencySleepAc: SYSTEM_POWER_STATE,
+ pub ReducedLatencySleepDc: SYSTEM_POWER_STATE,
+ pub DozeTimeoutAc: u32,
+ pub DozeTimeoutDc: u32,
+ pub DozeS4TimeoutAc: u32,
+ pub DozeS4TimeoutDc: u32,
+ pub MinThrottleAc: u8,
+ pub MinThrottleDc: u8,
+ pub pad1: [u8; 2],
+ pub OverThrottledAc: POWER_ACTION_POLICY,
+ pub OverThrottledDc: POWER_ACTION_POLICY,
+}
+impl ::core::marker::Copy for MACHINE_POWER_POLICY {}
+impl ::core::clone::Clone for MACHINE_POWER_POLICY {
+ fn clone(&self) -> Self {
+ *self
+ }
+}
+#[repr(C)]
+#[doc = "*Required features: `\"Win32_System_Power\"`*"]
+pub struct MACHINE_PROCESSOR_POWER_POLICY {
+ pub Revision: u32,
+ pub ProcessorPolicyAc: PROCESSOR_POWER_POLICY,
+ pub ProcessorPolicyDc: PROCESSOR_POWER_POLICY,
+}
+impl ::core::marker::Copy for MACHINE_PROCESSOR_POWER_POLICY {}
+impl ::core::clone::Clone for MACHINE_PROCESSOR_POWER_POLICY {
+ fn clone(&self) -> Self {
+ *self
+ }
+}
+#[doc = "*Required features: `\"Win32_System_Power\"`*"]
+pub const MAX_ACTIVE_COOLING_LEVELS: u32 = 10u32;
+#[doc = "*Required features: `\"Win32_System_Power\"`*"]
+pub const MAX_BATTERY_STRING_SIZE: u32 = 128u32;
+#[doc = "*Required features: `\"Win32_System_Power\"`*"]
+pub const PASSIVE_COOLING: u32 = 1u32;
+#[doc = "*Required features: `\"Win32_System_Power\"`*"]
+pub const PDCAP_S0_SUPPORTED: u32 = 65536u32;
+#[doc = "*Required features: `\"Win32_System_Power\"`*"]
+pub const PDCAP_S1_SUPPORTED: u32 = 131072u32;
+#[doc = "*Required features: `\"Win32_System_Power\"`*"]
+pub const PDCAP_S2_SUPPORTED: u32 = 262144u32;
+#[doc = "*Required features: `\"Win32_System_Power\"`*"]
+pub const PDCAP_S3_SUPPORTED: u32 = 524288u32;
+#[doc = "*Required features: `\"Win32_System_Power\"`*"]
+pub const PDCAP_S4_SUPPORTED: u32 = 16777216u32;
+#[doc = "*Required features: `\"Win32_System_Power\"`*"]
+pub const PDCAP_S5_SUPPORTED: u32 = 33554432u32;
+#[doc = "*Required features: `\"Win32_System_Power\"`*"]
+pub const PDCAP_WAKE_FROM_S0_SUPPORTED: u32 = 1048576u32;
+#[doc = "*Required features: `\"Win32_System_Power\"`*"]
+pub const PDCAP_WAKE_FROM_S1_SUPPORTED: u32 = 2097152u32;
+#[doc = "*Required features: `\"Win32_System_Power\"`*"]
+pub const PDCAP_WAKE_FROM_S2_SUPPORTED: u32 = 4194304u32;
+#[doc = "*Required features: `\"Win32_System_Power\"`*"]
+pub const PDCAP_WAKE_FROM_S3_SUPPORTED: u32 = 8388608u32;
+#[doc = "*Required features: `\"Win32_System_Power\"`*"]
+pub type PDEVICE_NOTIFY_CALLBACK_ROUTINE = ::core::option::Option<unsafe extern "system" fn(context: *const ::core::ffi::c_void, r#type: u32, setting: *const ::core::ffi::c_void) -> u32>;
+#[repr(C)]
+#[doc = "*Required features: `\"Win32_System_Power\"`*"]
+pub struct POWERBROADCAST_SETTING {
+ pub PowerSetting: ::windows_sys::core::GUID,
+ pub DataLength: u32,
+ pub Data: [u8; 1],
+}
+impl ::core::marker::Copy for POWERBROADCAST_SETTING {}
+impl ::core::clone::Clone for POWERBROADCAST_SETTING {
+ fn clone(&self) -> Self {
+ *self
+ }
+}
+#[doc = "*Required features: `\"Win32_System_Power\"`*"]
+pub type POWER_ACTION = i32;
+#[doc = "*Required features: `\"Win32_System_Power\"`*"]
+pub const PowerActionNone: POWER_ACTION = 0i32;
+#[doc = "*Required features: `\"Win32_System_Power\"`*"]
+pub const PowerActionReserved: POWER_ACTION = 1i32;
+#[doc = "*Required features: `\"Win32_System_Power\"`*"]
+pub const PowerActionSleep: POWER_ACTION = 2i32;
+#[doc = "*Required features: `\"Win32_System_Power\"`*"]
+pub const PowerActionHibernate: POWER_ACTION = 3i32;
+#[doc = "*Required features: `\"Win32_System_Power\"`*"]
+pub const PowerActionShutdown: POWER_ACTION = 4i32;
+#[doc = "*Required features: `\"Win32_System_Power\"`*"]
+pub const PowerActionShutdownReset: POWER_ACTION = 5i32;
+#[doc = "*Required features: `\"Win32_System_Power\"`*"]
+pub const PowerActionShutdownOff: POWER_ACTION = 6i32;
+#[doc = "*Required features: `\"Win32_System_Power\"`*"]
+pub const PowerActionWarmEject: POWER_ACTION = 7i32;
+#[doc = "*Required features: `\"Win32_System_Power\"`*"]
+pub const PowerActionDisplayOff: POWER_ACTION = 8i32;
+#[repr(C)]
+#[doc = "*Required features: `\"Win32_System_Power\"`*"]
+pub struct POWER_ACTION_POLICY {
+ pub Action: POWER_ACTION,
+ pub Flags: u32,
+ pub EventCode: POWER_ACTION_POLICY_EVENT_CODE,
+}
+impl ::core::marker::Copy for POWER_ACTION_POLICY {}
+impl ::core::clone::Clone for POWER_ACTION_POLICY {
+ fn clone(&self) -> Self {
+ *self
+ }
+}
+#[doc = "*Required features: `\"Win32_System_Power\"`*"]
+pub type POWER_ACTION_POLICY_EVENT_CODE = u32;
+#[doc = "*Required features: `\"Win32_System_Power\"`*"]
+pub const POWER_FORCE_TRIGGER_RESET: POWER_ACTION_POLICY_EVENT_CODE = 2147483648u32;
+#[doc = "*Required features: `\"Win32_System_Power\"`*"]
+pub const POWER_LEVEL_USER_NOTIFY_EXEC: POWER_ACTION_POLICY_EVENT_CODE = 4u32;
+#[doc = "*Required features: `\"Win32_System_Power\"`*"]
+pub const POWER_LEVEL_USER_NOTIFY_SOUND: POWER_ACTION_POLICY_EVENT_CODE = 2u32;
+#[doc = "*Required features: `\"Win32_System_Power\"`*"]
+pub const POWER_LEVEL_USER_NOTIFY_TEXT: POWER_ACTION_POLICY_EVENT_CODE = 1u32;
+#[doc = "*Required features: `\"Win32_System_Power\"`*"]
+pub const POWER_USER_NOTIFY_BUTTON: POWER_ACTION_POLICY_EVENT_CODE = 8u32;
+#[doc = "*Required features: `\"Win32_System_Power\"`*"]
+pub const POWER_USER_NOTIFY_SHUTDOWN: POWER_ACTION_POLICY_EVENT_CODE = 16u32;
+#[doc = "*Required features: `\"Win32_System_Power\"`*"]
+pub const POWER_ATTRIBUTE_HIDE: u32 = 1u32;
+#[doc = "*Required features: `\"Win32_System_Power\"`*"]
+pub const POWER_ATTRIBUTE_SHOW_AOAC: u32 = 2u32;
+#[doc = "*Required features: `\"Win32_System_Power\"`*"]
+pub type POWER_DATA_ACCESSOR = i32;
+#[doc = "*Required features: `\"Win32_System_Power\"`*"]
+pub const ACCESS_AC_POWER_SETTING_INDEX: POWER_DATA_ACCESSOR = 0i32;
+#[doc = "*Required features: `\"Win32_System_Power\"`*"]
+pub const ACCESS_DC_POWER_SETTING_INDEX: POWER_DATA_ACCESSOR = 1i32;
+#[doc = "*Required features: `\"Win32_System_Power\"`*"]
+pub const ACCESS_FRIENDLY_NAME: POWER_DATA_ACCESSOR = 2i32;
+#[doc = "*Required features: `\"Win32_System_Power\"`*"]
+pub const ACCESS_DESCRIPTION: POWER_DATA_ACCESSOR = 3i32;
+#[doc = "*Required features: `\"Win32_System_Power\"`*"]
+pub const ACCESS_POSSIBLE_POWER_SETTING: POWER_DATA_ACCESSOR = 4i32;
+#[doc = "*Required features: `\"Win32_System_Power\"`*"]
+pub const ACCESS_POSSIBLE_POWER_SETTING_FRIENDLY_NAME: POWER_DATA_ACCESSOR = 5i32;
+#[doc = "*Required features: `\"Win32_System_Power\"`*"]
+pub const ACCESS_POSSIBLE_POWER_SETTING_DESCRIPTION: POWER_DATA_ACCESSOR = 6i32;
+#[doc = "*Required features: `\"Win32_System_Power\"`*"]
+pub const ACCESS_DEFAULT_AC_POWER_SETTING: POWER_DATA_ACCESSOR = 7i32;
+#[doc = "*Required features: `\"Win32_System_Power\"`*"]
+pub const ACCESS_DEFAULT_DC_POWER_SETTING: POWER_DATA_ACCESSOR = 8i32;
+#[doc = "*Required features: `\"Win32_System_Power\"`*"]
+pub const ACCESS_POSSIBLE_VALUE_MIN: POWER_DATA_ACCESSOR = 9i32;
+#[doc = "*Required features: `\"Win32_System_Power\"`*"]
+pub const ACCESS_POSSIBLE_VALUE_MAX: POWER_DATA_ACCESSOR = 10i32;
+#[doc = "*Required features: `\"Win32_System_Power\"`*"]
+pub const ACCESS_POSSIBLE_VALUE_INCREMENT: POWER_DATA_ACCESSOR = 11i32;
+#[doc = "*Required features: `\"Win32_System_Power\"`*"]
+pub const ACCESS_POSSIBLE_VALUE_UNITS: POWER_DATA_ACCESSOR = 12i32;
+#[doc = "*Required features: `\"Win32_System_Power\"`*"]
+pub const ACCESS_ICON_RESOURCE: POWER_DATA_ACCESSOR = 13i32;
+#[doc = "*Required features: `\"Win32_System_Power\"`*"]
+pub const ACCESS_DEFAULT_SECURITY_DESCRIPTOR: POWER_DATA_ACCESSOR = 14i32;
+#[doc = "*Required features: `\"Win32_System_Power\"`*"]
+pub const ACCESS_ATTRIBUTES: POWER_DATA_ACCESSOR = 15i32;
+#[doc = "*Required features: `\"Win32_System_Power\"`*"]
+pub const ACCESS_SCHEME: POWER_DATA_ACCESSOR = 16i32;
+#[doc = "*Required features: `\"Win32_System_Power\"`*"]
+pub const ACCESS_SUBGROUP: POWER_DATA_ACCESSOR = 17i32;
+#[doc = "*Required features: `\"Win32_System_Power\"`*"]
+pub const ACCESS_INDIVIDUAL_SETTING: POWER_DATA_ACCESSOR = 18i32;
+#[doc = "*Required features: `\"Win32_System_Power\"`*"]
+pub const ACCESS_ACTIVE_SCHEME: POWER_DATA_ACCESSOR = 19i32;
+#[doc = "*Required features: `\"Win32_System_Power\"`*"]
+pub const ACCESS_CREATE_SCHEME: POWER_DATA_ACCESSOR = 20i32;
+#[doc = "*Required features: `\"Win32_System_Power\"`*"]
+pub const ACCESS_AC_POWER_SETTING_MAX: POWER_DATA_ACCESSOR = 21i32;
+#[doc = "*Required features: `\"Win32_System_Power\"`*"]
+pub const ACCESS_DC_POWER_SETTING_MAX: POWER_DATA_ACCESSOR = 22i32;
+#[doc = "*Required features: `\"Win32_System_Power\"`*"]
+pub const ACCESS_AC_POWER_SETTING_MIN: POWER_DATA_ACCESSOR = 23i32;
+#[doc = "*Required features: `\"Win32_System_Power\"`*"]
+pub const ACCESS_DC_POWER_SETTING_MIN: POWER_DATA_ACCESSOR = 24i32;
+#[doc = "*Required features: `\"Win32_System_Power\"`*"]
+pub const ACCESS_PROFILE: POWER_DATA_ACCESSOR = 25i32;
+#[doc = "*Required features: `\"Win32_System_Power\"`*"]
+pub const ACCESS_OVERLAY_SCHEME: POWER_DATA_ACCESSOR = 26i32;
+#[doc = "*Required features: `\"Win32_System_Power\"`*"]
+pub const ACCESS_ACTIVE_OVERLAY_SCHEME: POWER_DATA_ACCESSOR = 27i32;
+#[doc = "*Required features: `\"Win32_System_Power\"`*"]
+pub type POWER_INFORMATION_LEVEL = i32;
+#[doc = "*Required features: `\"Win32_System_Power\"`*"]
+pub const SystemPowerPolicyAc: POWER_INFORMATION_LEVEL = 0i32;
+#[doc = "*Required features: `\"Win32_System_Power\"`*"]
+pub const SystemPowerPolicyDc: POWER_INFORMATION_LEVEL = 1i32;
+#[doc = "*Required features: `\"Win32_System_Power\"`*"]
+pub const VerifySystemPolicyAc: POWER_INFORMATION_LEVEL = 2i32;
+#[doc = "*Required features: `\"Win32_System_Power\"`*"]
+pub const VerifySystemPolicyDc: POWER_INFORMATION_LEVEL = 3i32;
+#[doc = "*Required features: `\"Win32_System_Power\"`*"]
+pub const SystemPowerCapabilities: POWER_INFORMATION_LEVEL = 4i32;
+#[doc = "*Required features: `\"Win32_System_Power\"`*"]
+pub const SystemBatteryState: POWER_INFORMATION_LEVEL = 5i32;
+#[doc = "*Required features: `\"Win32_System_Power\"`*"]
+pub const SystemPowerStateHandler: POWER_INFORMATION_LEVEL = 6i32;
+#[doc = "*Required features: `\"Win32_System_Power\"`*"]
+pub const ProcessorStateHandler: POWER_INFORMATION_LEVEL = 7i32;
+#[doc = "*Required features: `\"Win32_System_Power\"`*"]
+pub const SystemPowerPolicyCurrent: POWER_INFORMATION_LEVEL = 8i32;
+#[doc = "*Required features: `\"Win32_System_Power\"`*"]
+pub const AdministratorPowerPolicy: POWER_INFORMATION_LEVEL = 9i32;
+#[doc = "*Required features: `\"Win32_System_Power\"`*"]
+pub const SystemReserveHiberFile: POWER_INFORMATION_LEVEL = 10i32;
+#[doc = "*Required features: `\"Win32_System_Power\"`*"]
+pub const ProcessorInformation: POWER_INFORMATION_LEVEL = 11i32;
+#[doc = "*Required features: `\"Win32_System_Power\"`*"]
+pub const SystemPowerInformation: POWER_INFORMATION_LEVEL = 12i32;
+#[doc = "*Required features: `\"Win32_System_Power\"`*"]
+pub const ProcessorStateHandler2: POWER_INFORMATION_LEVEL = 13i32;
+#[doc = "*Required features: `\"Win32_System_Power\"`*"]
+pub const LastWakeTime: POWER_INFORMATION_LEVEL = 14i32;
+#[doc = "*Required features: `\"Win32_System_Power\"`*"]
+pub const LastSleepTime: POWER_INFORMATION_LEVEL = 15i32;
+#[doc = "*Required features: `\"Win32_System_Power\"`*"]
+pub const SystemExecutionState: POWER_INFORMATION_LEVEL = 16i32;
+#[doc = "*Required features: `\"Win32_System_Power\"`*"]
+pub const SystemPowerStateNotifyHandler: POWER_INFORMATION_LEVEL = 17i32;
+#[doc = "*Required features: `\"Win32_System_Power\"`*"]
+pub const ProcessorPowerPolicyAc: POWER_INFORMATION_LEVEL = 18i32;
+#[doc = "*Required features: `\"Win32_System_Power\"`*"]
+pub const ProcessorPowerPolicyDc: POWER_INFORMATION_LEVEL = 19i32;
+#[doc = "*Required features: `\"Win32_System_Power\"`*"]
+pub const VerifyProcessorPowerPolicyAc: POWER_INFORMATION_LEVEL = 20i32;
+#[doc = "*Required features: `\"Win32_System_Power\"`*"]
+pub const VerifyProcessorPowerPolicyDc: POWER_INFORMATION_LEVEL = 21i32;
+#[doc = "*Required features: `\"Win32_System_Power\"`*"]
+pub const ProcessorPowerPolicyCurrent: POWER_INFORMATION_LEVEL = 22i32;
+#[doc = "*Required features: `\"Win32_System_Power\"`*"]
+pub const SystemPowerStateLogging: POWER_INFORMATION_LEVEL = 23i32;
+#[doc = "*Required features: `\"Win32_System_Power\"`*"]
+pub const SystemPowerLoggingEntry: POWER_INFORMATION_LEVEL = 24i32;
+#[doc = "*Required features: `\"Win32_System_Power\"`*"]
+pub const SetPowerSettingValue: POWER_INFORMATION_LEVEL = 25i32;
+#[doc = "*Required features: `\"Win32_System_Power\"`*"]
+pub const NotifyUserPowerSetting: POWER_INFORMATION_LEVEL = 26i32;
+#[doc = "*Required features: `\"Win32_System_Power\"`*"]
+pub const PowerInformationLevelUnused0: POWER_INFORMATION_LEVEL = 27i32;
+#[doc = "*Required features: `\"Win32_System_Power\"`*"]
+pub const SystemMonitorHiberBootPowerOff: POWER_INFORMATION_LEVEL = 28i32;
+#[doc = "*Required features: `\"Win32_System_Power\"`*"]
+pub const SystemVideoState: POWER_INFORMATION_LEVEL = 29i32;
+#[doc = "*Required features: `\"Win32_System_Power\"`*"]
+pub const TraceApplicationPowerMessage: POWER_INFORMATION_LEVEL = 30i32;
+#[doc = "*Required features: `\"Win32_System_Power\"`*"]
+pub const TraceApplicationPowerMessageEnd: POWER_INFORMATION_LEVEL = 31i32;
+#[doc = "*Required features: `\"Win32_System_Power\"`*"]
+pub const ProcessorPerfStates: POWER_INFORMATION_LEVEL = 32i32;
+#[doc = "*Required features: `\"Win32_System_Power\"`*"]
+pub const ProcessorIdleStates: POWER_INFORMATION_LEVEL = 33i32;
+#[doc = "*Required features: `\"Win32_System_Power\"`*"]
+pub const ProcessorCap: POWER_INFORMATION_LEVEL = 34i32;
+#[doc = "*Required features: `\"Win32_System_Power\"`*"]
+pub const SystemWakeSource: POWER_INFORMATION_LEVEL = 35i32;
+#[doc = "*Required features: `\"Win32_System_Power\"`*"]
+pub const SystemHiberFileInformation: POWER_INFORMATION_LEVEL = 36i32;
+#[doc = "*Required features: `\"Win32_System_Power\"`*"]
+pub const TraceServicePowerMessage: POWER_INFORMATION_LEVEL = 37i32;
+#[doc = "*Required features: `\"Win32_System_Power\"`*"]
+pub const ProcessorLoad: POWER_INFORMATION_LEVEL = 38i32;
+#[doc = "*Required features: `\"Win32_System_Power\"`*"]
+pub const PowerShutdownNotification: POWER_INFORMATION_LEVEL = 39i32;
+#[doc = "*Required features: `\"Win32_System_Power\"`*"]
+pub const MonitorCapabilities: POWER_INFORMATION_LEVEL = 40i32;
+#[doc = "*Required features: `\"Win32_System_Power\"`*"]
+pub const SessionPowerInit: POWER_INFORMATION_LEVEL = 41i32;
+#[doc = "*Required features: `\"Win32_System_Power\"`*"]
+pub const SessionDisplayState: POWER_INFORMATION_LEVEL = 42i32;
+#[doc = "*Required features: `\"Win32_System_Power\"`*"]
+pub const PowerRequestCreate: POWER_INFORMATION_LEVEL = 43i32;
+#[doc = "*Required features: `\"Win32_System_Power\"`*"]
+pub const PowerRequestAction: POWER_INFORMATION_LEVEL = 44i32;
+#[doc = "*Required features: `\"Win32_System_Power\"`*"]
+pub const GetPowerRequestList: POWER_INFORMATION_LEVEL = 45i32;
+#[doc = "*Required features: `\"Win32_System_Power\"`*"]
+pub const ProcessorInformationEx: POWER_INFORMATION_LEVEL = 46i32;
+#[doc = "*Required features: `\"Win32_System_Power\"`*"]
+pub const NotifyUserModeLegacyPowerEvent: POWER_INFORMATION_LEVEL = 47i32;
+#[doc = "*Required features: `\"Win32_System_Power\"`*"]
+pub const GroupPark: POWER_INFORMATION_LEVEL = 48i32;
+#[doc = "*Required features: `\"Win32_System_Power\"`*"]
+pub const ProcessorIdleDomains: POWER_INFORMATION_LEVEL = 49i32;
+#[doc = "*Required features: `\"Win32_System_Power\"`*"]
+pub const WakeTimerList: POWER_INFORMATION_LEVEL = 50i32;
+#[doc = "*Required features: `\"Win32_System_Power\"`*"]
+pub const SystemHiberFileSize: POWER_INFORMATION_LEVEL = 51i32;
+#[doc = "*Required features: `\"Win32_System_Power\"`*"]
+pub const ProcessorIdleStatesHv: POWER_INFORMATION_LEVEL = 52i32;
+#[doc = "*Required features: `\"Win32_System_Power\"`*"]
+pub const ProcessorPerfStatesHv: POWER_INFORMATION_LEVEL = 53i32;
+#[doc = "*Required features: `\"Win32_System_Power\"`*"]
+pub const ProcessorPerfCapHv: POWER_INFORMATION_LEVEL = 54i32;
+#[doc = "*Required features: `\"Win32_System_Power\"`*"]
+pub const ProcessorSetIdle: POWER_INFORMATION_LEVEL = 55i32;
+#[doc = "*Required features: `\"Win32_System_Power\"`*"]
+pub const LogicalProcessorIdling: POWER_INFORMATION_LEVEL = 56i32;
+#[doc = "*Required features: `\"Win32_System_Power\"`*"]
+pub const UserPresence: POWER_INFORMATION_LEVEL = 57i32;
+#[doc = "*Required features: `\"Win32_System_Power\"`*"]
+pub const PowerSettingNotificationName: POWER_INFORMATION_LEVEL = 58i32;
+#[doc = "*Required features: `\"Win32_System_Power\"`*"]
+pub const GetPowerSettingValue: POWER_INFORMATION_LEVEL = 59i32;
+#[doc = "*Required features: `\"Win32_System_Power\"`*"]
+pub const IdleResiliency: POWER_INFORMATION_LEVEL = 60i32;
+#[doc = "*Required features: `\"Win32_System_Power\"`*"]
+pub const SessionRITState: POWER_INFORMATION_LEVEL = 61i32;
+#[doc = "*Required features: `\"Win32_System_Power\"`*"]
+pub const SessionConnectNotification: POWER_INFORMATION_LEVEL = 62i32;
+#[doc = "*Required features: `\"Win32_System_Power\"`*"]
+pub const SessionPowerCleanup: POWER_INFORMATION_LEVEL = 63i32;
+#[doc = "*Required features: `\"Win32_System_Power\"`*"]
+pub const SessionLockState: POWER_INFORMATION_LEVEL = 64i32;
+#[doc = "*Required features: `\"Win32_System_Power\"`*"]
+pub const SystemHiberbootState: POWER_INFORMATION_LEVEL = 65i32;
+#[doc = "*Required features: `\"Win32_System_Power\"`*"]
+pub const PlatformInformation: POWER_INFORMATION_LEVEL = 66i32;
+#[doc = "*Required features: `\"Win32_System_Power\"`*"]
+pub const PdcInvocation: POWER_INFORMATION_LEVEL = 67i32;
+#[doc = "*Required features: `\"Win32_System_Power\"`*"]
+pub const MonitorInvocation: POWER_INFORMATION_LEVEL = 68i32;
+#[doc = "*Required features: `\"Win32_System_Power\"`*"]
+pub const FirmwareTableInformationRegistered: POWER_INFORMATION_LEVEL = 69i32;
+#[doc = "*Required features: `\"Win32_System_Power\"`*"]
+pub const SetShutdownSelectedTime: POWER_INFORMATION_LEVEL = 70i32;
+#[doc = "*Required features: `\"Win32_System_Power\"`*"]
+pub const SuspendResumeInvocation: POWER_INFORMATION_LEVEL = 71i32;
+#[doc = "*Required features: `\"Win32_System_Power\"`*"]
+pub const PlmPowerRequestCreate: POWER_INFORMATION_LEVEL = 72i32;
+#[doc = "*Required features: `\"Win32_System_Power\"`*"]
+pub const ScreenOff: POWER_INFORMATION_LEVEL = 73i32;
+#[doc = "*Required features: `\"Win32_System_Power\"`*"]
+pub const CsDeviceNotification: POWER_INFORMATION_LEVEL = 74i32;
+#[doc = "*Required features: `\"Win32_System_Power\"`*"]
+pub const PlatformRole: POWER_INFORMATION_LEVEL = 75i32;
+#[doc = "*Required features: `\"Win32_System_Power\"`*"]
+pub const LastResumePerformance: POWER_INFORMATION_LEVEL = 76i32;
+#[doc = "*Required features: `\"Win32_System_Power\"`*"]
+pub const DisplayBurst: POWER_INFORMATION_LEVEL = 77i32;
+#[doc = "*Required features: `\"Win32_System_Power\"`*"]
+pub const ExitLatencySamplingPercentage: POWER_INFORMATION_LEVEL = 78i32;
+#[doc = "*Required features: `\"Win32_System_Power\"`*"]
+pub const RegisterSpmPowerSettings: POWER_INFORMATION_LEVEL = 79i32;
+#[doc = "*Required features: `\"Win32_System_Power\"`*"]
+pub const PlatformIdleStates: POWER_INFORMATION_LEVEL = 80i32;
+#[doc = "*Required features: `\"Win32_System_Power\"`*"]
+pub const ProcessorIdleVeto: POWER_INFORMATION_LEVEL = 81i32;
+#[doc = "*Required features: `\"Win32_System_Power\"`*"]
+pub const PlatformIdleVeto: POWER_INFORMATION_LEVEL = 82i32;
+#[doc = "*Required features: `\"Win32_System_Power\"`*"]
+pub const SystemBatteryStatePrecise: POWER_INFORMATION_LEVEL = 83i32;
+#[doc = "*Required features: `\"Win32_System_Power\"`*"]
+pub const ThermalEvent: POWER_INFORMATION_LEVEL = 84i32;
+#[doc = "*Required features: `\"Win32_System_Power\"`*"]
+pub const PowerRequestActionInternal: POWER_INFORMATION_LEVEL = 85i32;
+#[doc = "*Required features: `\"Win32_System_Power\"`*"]
+pub const BatteryDeviceState: POWER_INFORMATION_LEVEL = 86i32;
+#[doc = "*Required features: `\"Win32_System_Power\"`*"]
+pub const PowerInformationInternal: POWER_INFORMATION_LEVEL = 87i32;
+#[doc = "*Required features: `\"Win32_System_Power\"`*"]
+pub const ThermalStandby: POWER_INFORMATION_LEVEL = 88i32;
+#[doc = "*Required features: `\"Win32_System_Power\"`*"]
+pub const SystemHiberFileType: POWER_INFORMATION_LEVEL = 89i32;
+#[doc = "*Required features: `\"Win32_System_Power\"`*"]
+pub const PhysicalPowerButtonPress: POWER_INFORMATION_LEVEL = 90i32;
+#[doc = "*Required features: `\"Win32_System_Power\"`*"]
+pub const QueryPotentialDripsConstraint: POWER_INFORMATION_LEVEL = 91i32;
+#[doc = "*Required features: `\"Win32_System_Power\"`*"]
+pub const EnergyTrackerCreate: POWER_INFORMATION_LEVEL = 92i32;
+#[doc = "*Required features: `\"Win32_System_Power\"`*"]
+pub const EnergyTrackerQuery: POWER_INFORMATION_LEVEL = 93i32;
+#[doc = "*Required features: `\"Win32_System_Power\"`*"]
+pub const UpdateBlackBoxRecorder: POWER_INFORMATION_LEVEL = 94i32;
+#[doc = "*Required features: `\"Win32_System_Power\"`*"]
+pub const SessionAllowExternalDmaDevices: POWER_INFORMATION_LEVEL = 95i32;
+#[doc = "*Required features: `\"Win32_System_Power\"`*"]
+pub const SendSuspendResumeNotification: POWER_INFORMATION_LEVEL = 96i32;
+#[doc = "*Required features: `\"Win32_System_Power\"`*"]
+pub const PowerInformationLevelMaximum: POWER_INFORMATION_LEVEL = 97i32;
+#[doc = "*Required features: `\"Win32_System_Power\"`*"]
+pub type POWER_PLATFORM_ROLE = i32;
+#[doc = "*Required features: `\"Win32_System_Power\"`*"]
+pub const PlatformRoleUnspecified: POWER_PLATFORM_ROLE = 0i32;
+#[doc = "*Required features: `\"Win32_System_Power\"`*"]
+pub const PlatformRoleDesktop: POWER_PLATFORM_ROLE = 1i32;
+#[doc = "*Required features: `\"Win32_System_Power\"`*"]
+pub const PlatformRoleMobile: POWER_PLATFORM_ROLE = 2i32;
+#[doc = "*Required features: `\"Win32_System_Power\"`*"]
+pub const PlatformRoleWorkstation: POWER_PLATFORM_ROLE = 3i32;
+#[doc = "*Required features: `\"Win32_System_Power\"`*"]
+pub const PlatformRoleEnterpriseServer: POWER_PLATFORM_ROLE = 4i32;
+#[doc = "*Required features: `\"Win32_System_Power\"`*"]
+pub const PlatformRoleSOHOServer: POWER_PLATFORM_ROLE = 5i32;
+#[doc = "*Required features: `\"Win32_System_Power\"`*"]
+pub const PlatformRoleAppliancePC: POWER_PLATFORM_ROLE = 6i32;
+#[doc = "*Required features: `\"Win32_System_Power\"`*"]
+pub const PlatformRolePerformanceServer: POWER_PLATFORM_ROLE = 7i32;
+#[doc = "*Required features: `\"Win32_System_Power\"`*"]
+pub const PlatformRoleSlate: POWER_PLATFORM_ROLE = 8i32;
+#[doc = "*Required features: `\"Win32_System_Power\"`*"]
+pub const PlatformRoleMaximum: POWER_PLATFORM_ROLE = 9i32;
+#[doc = "*Required features: `\"Win32_System_Power\"`*"]
+pub type POWER_PLATFORM_ROLE_VERSION = u32;
+#[doc = "*Required features: `\"Win32_System_Power\"`*"]
+pub const POWER_PLATFORM_ROLE_V1: POWER_PLATFORM_ROLE_VERSION = 1u32;
+#[doc = "*Required features: `\"Win32_System_Power\"`*"]
+pub const POWER_PLATFORM_ROLE_V2: POWER_PLATFORM_ROLE_VERSION = 2u32;
+#[repr(C)]
+#[doc = "*Required features: `\"Win32_System_Power\"`, `\"Win32_Foundation\"`*"]
+#[cfg(feature = "Win32_Foundation")]
+pub struct POWER_POLICY {
+ pub user: USER_POWER_POLICY,
+ pub mach: MACHINE_POWER_POLICY,
+}
+#[cfg(feature = "Win32_Foundation")]
+impl ::core::marker::Copy for POWER_POLICY {}
+#[cfg(feature = "Win32_Foundation")]
+impl ::core::clone::Clone for POWER_POLICY {
+ fn clone(&self) -> Self {
+ *self
+ }
+}
+#[doc = "*Required features: `\"Win32_System_Power\"`*"]
+pub type POWER_REQUEST_TYPE = i32;
+#[doc = "*Required features: `\"Win32_System_Power\"`*"]
+pub const PowerRequestDisplayRequired: POWER_REQUEST_TYPE = 0i32;
+#[doc = "*Required features: `\"Win32_System_Power\"`*"]
+pub const PowerRequestSystemRequired: POWER_REQUEST_TYPE = 1i32;
+#[doc = "*Required features: `\"Win32_System_Power\"`*"]
+pub const PowerRequestAwayModeRequired: POWER_REQUEST_TYPE = 2i32;
+#[doc = "*Required features: `\"Win32_System_Power\"`*"]
+pub const PowerRequestExecutionRequired: POWER_REQUEST_TYPE = 3i32;
+#[doc = "*Required features: `\"Win32_System_Power\"`*"]
+pub type POWER_SETTING_REGISTER_NOTIFICATION_FLAGS = u32;
+#[doc = "*Required features: `\"Win32_System_Power\"`*"]
+pub const DEVICE_NOTIFY_SERVICE_HANDLE: POWER_SETTING_REGISTER_NOTIFICATION_FLAGS = 1u32;
+#[doc = "*Required features: `\"Win32_System_Power\"`*"]
+pub const DEVICE_NOTIFY_CALLBACK: POWER_SETTING_REGISTER_NOTIFICATION_FLAGS = 2u32;
+#[doc = "*Required features: `\"Win32_System_Power\"`*"]
+pub const DEVICE_NOTIFY_WINDOW_HANDLE: POWER_SETTING_REGISTER_NOTIFICATION_FLAGS = 0u32;
+#[doc = "*Required features: `\"Win32_System_Power\"`, `\"Win32_Devices_Properties\"`*"]
+#[cfg(feature = "Win32_Devices_Properties")]
+pub const PROCESSOR_NUMBER_PKEY: super::super::Devices::Properties::DEVPROPKEY = super::super::Devices::Properties::DEVPROPKEY { fmtid: ::windows_sys::core::GUID { data1: 1462028317, data2: 54703, data3: 19487, data4: [161, 3, 160, 110, 40, 242, 4, 198] }, pid: 1u32 };
+#[repr(C)]
+#[doc = "*Required features: `\"Win32_System_Power\"`*"]
+pub struct PROCESSOR_OBJECT_INFO {
+ pub PhysicalID: u32,
+ pub PBlkAddress: u32,
+ pub PBlkLength: u8,
+}
+impl ::core::marker::Copy for PROCESSOR_OBJECT_INFO {}
+impl ::core::clone::Clone for PROCESSOR_OBJECT_INFO {
+ fn clone(&self) -> Self {
+ *self
+ }
+}
+#[repr(C)]
+#[doc = "*Required features: `\"Win32_System_Power\"`*"]
+pub struct PROCESSOR_OBJECT_INFO_EX {
+ pub PhysicalID: u32,
+ pub PBlkAddress: u32,
+ pub PBlkLength: u8,
+ pub InitialApicId: u32,
+}
+impl ::core::marker::Copy for PROCESSOR_OBJECT_INFO_EX {}
+impl ::core::clone::Clone for PROCESSOR_OBJECT_INFO_EX {
+ fn clone(&self) -> Self {
+ *self
+ }
+}
+#[repr(C)]
+#[doc = "*Required features: `\"Win32_System_Power\"`*"]
+pub struct PROCESSOR_POWER_POLICY {
+ pub Revision: u32,
+ pub DynamicThrottle: u8,
+ pub Spare: [u8; 3],
+ pub _bitfield: u32,
+ pub PolicyCount: u32,
+ pub Policy: [PROCESSOR_POWER_POLICY_INFO; 3],
+}
+impl ::core::marker::Copy for PROCESSOR_POWER_POLICY {}
+impl ::core::clone::Clone for PROCESSOR_POWER_POLICY {
+ fn clone(&self) -> Self {
+ *self
+ }
+}
+#[repr(C)]
+#[doc = "*Required features: `\"Win32_System_Power\"`*"]
+pub struct PROCESSOR_POWER_POLICY_INFO {
+ pub TimeCheck: u32,
+ pub DemoteLimit: u32,
+ pub PromoteLimit: u32,
+ pub DemotePercent: u8,
+ pub PromotePercent: u8,
+ pub Spare: [u8; 2],
+ pub _bitfield: u32,
+}
+impl ::core::marker::Copy for PROCESSOR_POWER_POLICY_INFO {}
+impl ::core::clone::Clone for PROCESSOR_POWER_POLICY_INFO {
+ fn clone(&self) -> Self {
+ *self
+ }
+}
+#[doc = "*Required features: `\"Win32_System_Power\"`, `\"Win32_Foundation\"`*"]
+#[cfg(feature = "Win32_Foundation")]
+pub type PWRSCHEMESENUMPROC = ::core::option::Option<unsafe extern "system" fn(index: u32, namesize: u32, name: ::windows_sys::core::PCWSTR, descriptionsize: u32, description: ::windows_sys::core::PCWSTR, policy: *const POWER_POLICY, context: super::super::Foundation::LPARAM) -> super::super::Foundation::BOOLEAN>;
+#[doc = "*Required features: `\"Win32_System_Power\"`, `\"Win32_Foundation\"`*"]
+#[cfg(feature = "Win32_Foundation")]
+pub type PWRSCHEMESENUMPROC_V1 = ::core::option::Option<unsafe extern "system" fn(index: u32, namesize: u32, name: *const i8, descriptionsize: u32, description: *const i8, policy: *const POWER_POLICY, context: super::super::Foundation::LPARAM) -> super::super::Foundation::BOOLEAN>;
+#[repr(C)]
+#[doc = "*Required features: `\"Win32_System_Power\"`*"]
+pub struct SET_POWER_SETTING_VALUE {
+ pub Version: u32,
+ pub Guid: ::windows_sys::core::GUID,
+ pub PowerCondition: SYSTEM_POWER_CONDITION,
+ pub DataLength: u32,
+ pub Data: [u8; 1],
+}
+impl ::core::marker::Copy for SET_POWER_SETTING_VALUE {}
+impl ::core::clone::Clone for SET_POWER_SETTING_VALUE {
+ fn clone(&self) -> Self {
+ *self
+ }
+}
+#[repr(C)]
+#[doc = "*Required features: `\"Win32_System_Power\"`, `\"Win32_Foundation\"`*"]
+#[cfg(feature = "Win32_Foundation")]
+pub struct SYSTEM_BATTERY_STATE {
+ pub AcOnLine: super::super::Foundation::BOOLEAN,
+ pub BatteryPresent: super::super::Foundation::BOOLEAN,
+ pub Charging: super::super::Foundation::BOOLEAN,
+ pub Discharging: super::super::Foundation::BOOLEAN,
+ pub Spare1: [super::super::Foundation::BOOLEAN; 3],
+ pub Tag: u8,
+ pub MaxCapacity: u32,
+ pub RemainingCapacity: u32,
+ pub Rate: u32,
+ pub EstimatedTime: u32,
+ pub DefaultAlert1: u32,
+ pub DefaultAlert2: u32,
+}
+#[cfg(feature = "Win32_Foundation")]
+impl ::core::marker::Copy for SYSTEM_BATTERY_STATE {}
+#[cfg(feature = "Win32_Foundation")]
+impl ::core::clone::Clone for SYSTEM_BATTERY_STATE {
+ fn clone(&self) -> Self {
+ *self
+ }
+}
+#[repr(C)]
+#[doc = "*Required features: `\"Win32_System_Power\"`, `\"Win32_Foundation\"`*"]
+#[cfg(feature = "Win32_Foundation")]
+pub struct SYSTEM_POWER_CAPABILITIES {
+ pub PowerButtonPresent: super::super::Foundation::BOOLEAN,
+ pub SleepButtonPresent: super::super::Foundation::BOOLEAN,
+ pub LidPresent: super::super::Foundation::BOOLEAN,
+ pub SystemS1: super::super::Foundation::BOOLEAN,
+ pub SystemS2: super::super::Foundation::BOOLEAN,
+ pub SystemS3: super::super::Foundation::BOOLEAN,
+ pub SystemS4: super::super::Foundation::BOOLEAN,
+ pub SystemS5: super::super::Foundation::BOOLEAN,
+ pub HiberFilePresent: super::super::Foundation::BOOLEAN,
+ pub FullWake: super::super::Foundation::BOOLEAN,
+ pub VideoDimPresent: super::super::Foundation::BOOLEAN,
+ pub ApmPresent: super::super::Foundation::BOOLEAN,
+ pub UpsPresent: super::super::Foundation::BOOLEAN,
+ pub ThermalControl: super::super::Foundation::BOOLEAN,
+ pub ProcessorThrottle: super::super::Foundation::BOOLEAN,
+ pub ProcessorMinThrottle: u8,
+ pub ProcessorMaxThrottle: u8,
+ pub FastSystemS4: super::super::Foundation::BOOLEAN,
+ pub Hiberboot: super::super::Foundation::BOOLEAN,
+ pub WakeAlarmPresent: super::super::Foundation::BOOLEAN,
+ pub AoAc: super::super::Foundation::BOOLEAN,
+ pub DiskSpinDown: super::super::Foundation::BOOLEAN,
+ pub HiberFileType: u8,
+ pub AoAcConnectivitySupported: super::super::Foundation::BOOLEAN,
+ pub spare3: [u8; 6],
+ pub SystemBatteriesPresent: super::super::Foundation::BOOLEAN,
+ pub BatteriesAreShortTerm: super::super::Foundation::BOOLEAN,
+ pub BatteryScale: [BATTERY_REPORTING_SCALE; 3],
+ pub AcOnLineWake: SYSTEM_POWER_STATE,
+ pub SoftLidWake: SYSTEM_POWER_STATE,
+ pub RtcWake: SYSTEM_POWER_STATE,
+ pub MinDeviceWakeState: SYSTEM_POWER_STATE,
+ pub DefaultLowLatencyWake: SYSTEM_POWER_STATE,
+}
+#[cfg(feature = "Win32_Foundation")]
+impl ::core::marker::Copy for SYSTEM_POWER_CAPABILITIES {}
+#[cfg(feature = "Win32_Foundation")]
+impl ::core::clone::Clone for SYSTEM_POWER_CAPABILITIES {
+ fn clone(&self) -> Self {
+ *self
+ }
+}
+#[doc = "*Required features: `\"Win32_System_Power\"`*"]
+pub type SYSTEM_POWER_CONDITION = i32;
+#[doc = "*Required features: `\"Win32_System_Power\"`*"]
+pub const PoAc: SYSTEM_POWER_CONDITION = 0i32;
+#[doc = "*Required features: `\"Win32_System_Power\"`*"]
+pub const PoDc: SYSTEM_POWER_CONDITION = 1i32;
+#[doc = "*Required features: `\"Win32_System_Power\"`*"]
+pub const PoHot: SYSTEM_POWER_CONDITION = 2i32;
+#[doc = "*Required features: `\"Win32_System_Power\"`*"]
+pub const PoConditionMaximum: SYSTEM_POWER_CONDITION = 3i32;
+#[repr(C)]
+#[doc = "*Required features: `\"Win32_System_Power\"`, `\"Win32_Foundation\"`*"]
+#[cfg(feature = "Win32_Foundation")]
+pub struct SYSTEM_POWER_LEVEL {
+ pub Enable: super::super::Foundation::BOOLEAN,
+ pub Spare: [u8; 3],
+ pub BatteryLevel: u32,
+ pub PowerPolicy: POWER_ACTION_POLICY,
+ pub MinSystemState: SYSTEM_POWER_STATE,
+}
+#[cfg(feature = "Win32_Foundation")]
+impl ::core::marker::Copy for SYSTEM_POWER_LEVEL {}
+#[cfg(feature = "Win32_Foundation")]
+impl ::core::clone::Clone for SYSTEM_POWER_LEVEL {
+ fn clone(&self) -> Self {
+ *self
+ }
+}
+#[repr(C)]
+#[doc = "*Required features: `\"Win32_System_Power\"`, `\"Win32_Foundation\"`*"]
+#[cfg(feature = "Win32_Foundation")]
+pub struct SYSTEM_POWER_POLICY {
+ pub Revision: u32,
+ pub PowerButton: POWER_ACTION_POLICY,
+ pub SleepButton: POWER_ACTION_POLICY,
+ pub LidClose: POWER_ACTION_POLICY,
+ pub LidOpenWake: SYSTEM_POWER_STATE,
+ pub Reserved: u32,
+ pub Idle: POWER_ACTION_POLICY,
+ pub IdleTimeout: u32,
+ pub IdleSensitivity: u8,
+ pub DynamicThrottle: u8,
+ pub Spare2: [u8; 2],
+ pub MinSleep: SYSTEM_POWER_STATE,
+ pub MaxSleep: SYSTEM_POWER_STATE,
+ pub ReducedLatencySleep: SYSTEM_POWER_STATE,
+ pub WinLogonFlags: u32,
+ pub Spare3: u32,
+ pub DozeS4Timeout: u32,
+ pub BroadcastCapacityResolution: u32,
+ pub DischargePolicy: [SYSTEM_POWER_LEVEL; 4],
+ pub VideoTimeout: u32,
+ pub VideoDimDisplay: super::super::Foundation::BOOLEAN,
+ pub VideoReserved: [u32; 3],
+ pub SpindownTimeout: u32,
+ pub OptimizeForPower: super::super::Foundation::BOOLEAN,
+ pub FanThrottleTolerance: u8,
+ pub ForcedThrottle: u8,
+ pub MinThrottle: u8,
+ pub OverThrottled: POWER_ACTION_POLICY,
+}
+#[cfg(feature = "Win32_Foundation")]
+impl ::core::marker::Copy for SYSTEM_POWER_POLICY {}
+#[cfg(feature = "Win32_Foundation")]
+impl ::core::clone::Clone for SYSTEM_POWER_POLICY {
+ fn clone(&self) -> Self {
+ *self
+ }
+}
+#[doc = "*Required features: `\"Win32_System_Power\"`*"]
+pub type SYSTEM_POWER_STATE = i32;
+#[doc = "*Required features: `\"Win32_System_Power\"`*"]
+pub const PowerSystemUnspecified: SYSTEM_POWER_STATE = 0i32;
+#[doc = "*Required features: `\"Win32_System_Power\"`*"]
+pub const PowerSystemWorking: SYSTEM_POWER_STATE = 1i32;
+#[doc = "*Required features: `\"Win32_System_Power\"`*"]
+pub const PowerSystemSleeping1: SYSTEM_POWER_STATE = 2i32;
+#[doc = "*Required features: `\"Win32_System_Power\"`*"]
+pub const PowerSystemSleeping2: SYSTEM_POWER_STATE = 3i32;
+#[doc = "*Required features: `\"Win32_System_Power\"`*"]
+pub const PowerSystemSleeping3: SYSTEM_POWER_STATE = 4i32;
+#[doc = "*Required features: `\"Win32_System_Power\"`*"]
+pub const PowerSystemHibernate: SYSTEM_POWER_STATE = 5i32;
+#[doc = "*Required features: `\"Win32_System_Power\"`*"]
+pub const PowerSystemShutdown: SYSTEM_POWER_STATE = 6i32;
+#[doc = "*Required features: `\"Win32_System_Power\"`*"]
+pub const PowerSystemMaximum: SYSTEM_POWER_STATE = 7i32;
+#[repr(C)]
+#[doc = "*Required features: `\"Win32_System_Power\"`*"]
+pub struct SYSTEM_POWER_STATUS {
+ pub ACLineStatus: u8,
+ pub BatteryFlag: u8,
+ pub BatteryLifePercent: u8,
+ pub SystemStatusFlag: u8,
+ pub BatteryLifeTime: u32,
+ pub BatteryFullLifeTime: u32,
+}
+impl ::core::marker::Copy for SYSTEM_POWER_STATUS {}
+impl ::core::clone::Clone for SYSTEM_POWER_STATUS {
+ fn clone(&self) -> Self {
+ *self
+ }
+}
+#[doc = "*Required features: `\"Win32_System_Power\"`*"]
+pub const SYS_BUTTON_LID: u32 = 4u32;
+#[doc = "*Required features: `\"Win32_System_Power\"`*"]
+pub const SYS_BUTTON_LID_CHANGED: u32 = 524288u32;
+#[doc = "*Required features: `\"Win32_System_Power\"`*"]
+pub const SYS_BUTTON_LID_CLOSED: u32 = 131072u32;
+#[doc = "*Required features: `\"Win32_System_Power\"`*"]
+pub const SYS_BUTTON_LID_INITIAL: u32 = 262144u32;
+#[doc = "*Required features: `\"Win32_System_Power\"`*"]
+pub const SYS_BUTTON_LID_OPEN: u32 = 65536u32;
+#[doc = "*Required features: `\"Win32_System_Power\"`*"]
+pub const SYS_BUTTON_LID_STATE_MASK: u32 = 196608u32;
+#[doc = "*Required features: `\"Win32_System_Power\"`*"]
+pub const SYS_BUTTON_POWER: u32 = 1u32;
+#[doc = "*Required features: `\"Win32_System_Power\"`*"]
+pub const SYS_BUTTON_SLEEP: u32 = 2u32;
+#[doc = "*Required features: `\"Win32_System_Power\"`*"]
+pub const SYS_BUTTON_WAKE: u32 = 2147483648u32;
+#[doc = "*Required features: `\"Win32_System_Power\"`*"]
+pub const THERMAL_COOLING_INTERFACE_VERSION: u32 = 1u32;
+#[doc = "*Required features: `\"Win32_System_Power\"`*"]
+pub const THERMAL_DEVICE_INTERFACE_VERSION: u32 = 1u32;
+#[repr(C)]
+#[doc = "*Required features: `\"Win32_System_Power\"`*"]
+pub struct THERMAL_EVENT {
+ pub Version: u32,
+ pub Size: u32,
+ pub Type: u32,
+ pub Temperature: u32,
+ pub TripPointTemperature: u32,
+ pub Initiator: ::windows_sys::core::PWSTR,
+}
+impl ::core::marker::Copy for THERMAL_EVENT {}
+impl ::core::clone::Clone for THERMAL_EVENT {
+ fn clone(&self) -> Self {
+ *self
+ }
+}
+#[doc = "*Required features: `\"Win32_System_Power\"`*"]
+pub const THERMAL_EVENT_VERSION: u32 = 1u32;
+#[repr(C)]
+#[doc = "*Required features: `\"Win32_System_Power\"`*"]
+pub struct THERMAL_INFORMATION {
+ pub ThermalStamp: u32,
+ pub ThermalConstant1: u32,
+ pub ThermalConstant2: u32,
+ pub Processors: usize,
+ pub SamplingPeriod: u32,
+ pub CurrentTemperature: u32,
+ pub PassiveTripPoint: u32,
+ pub CriticalTripPoint: u32,
+ pub ActiveTripPointCount: u8,
+ pub ActiveTripPoint: [u32; 10],
+}
+impl ::core::marker::Copy for THERMAL_INFORMATION {}
+impl ::core::clone::Clone for THERMAL_INFORMATION {
+ fn clone(&self) -> Self {
+ *self
+ }
+}
+#[repr(C)]
+#[doc = "*Required features: `\"Win32_System_Power\"`, `\"Win32_Foundation\"`*"]
+#[cfg(feature = "Win32_Foundation")]
+pub struct THERMAL_POLICY {
+ pub Version: u32,
+ pub WaitForUpdate: super::super::Foundation::BOOLEAN,
+ pub Hibernate: super::super::Foundation::BOOLEAN,
+ pub Critical: super::super::Foundation::BOOLEAN,
+ pub ThermalStandby: super::super::Foundation::BOOLEAN,
+ pub ActivationReasons: u32,
+ pub PassiveLimit: u32,
+ pub ActiveLevel: u32,
+ pub OverThrottled: super::super::Foundation::BOOLEAN,
+}
+#[cfg(feature = "Win32_Foundation")]
+impl ::core::marker::Copy for THERMAL_POLICY {}
+#[cfg(feature = "Win32_Foundation")]
+impl ::core::clone::Clone for THERMAL_POLICY {
+ fn clone(&self) -> Self {
+ *self
+ }
+}
+#[doc = "*Required features: `\"Win32_System_Power\"`*"]
+pub const THERMAL_POLICY_VERSION_1: u32 = 1u32;
+#[doc = "*Required features: `\"Win32_System_Power\"`*"]
+pub const THERMAL_POLICY_VERSION_2: u32 = 2u32;
+#[repr(C)]
+#[doc = "*Required features: `\"Win32_System_Power\"`*"]
+pub struct THERMAL_WAIT_READ {
+ pub Timeout: u32,
+ pub LowTemperature: u32,
+ pub HighTemperature: u32,
+}
+impl ::core::marker::Copy for THERMAL_WAIT_READ {}
+impl ::core::clone::Clone for THERMAL_WAIT_READ {
+ fn clone(&self) -> Self {
+ *self
+ }
+}
+#[doc = "*Required features: `\"Win32_System_Power\"`*"]
+pub const TZ_ACTIVATION_REASON_CURRENT: u32 = 2u32;
+#[doc = "*Required features: `\"Win32_System_Power\"`*"]
+pub const TZ_ACTIVATION_REASON_THERMAL: u32 = 1u32;
+#[doc = "*Required features: `\"Win32_System_Power\"`*"]
+pub const UNKNOWN_CAPACITY: u32 = 4294967295u32;
+#[doc = "*Required features: `\"Win32_System_Power\"`*"]
+pub const UNKNOWN_CURRENT: u32 = 4294967295u32;
+#[doc = "*Required features: `\"Win32_System_Power\"`*"]
+pub const UNKNOWN_RATE: u32 = 2147483648u32;
+#[doc = "*Required features: `\"Win32_System_Power\"`*"]
+pub const UNKNOWN_VOLTAGE: u32 = 4294967295u32;
+#[doc = "*Required features: `\"Win32_System_Power\"`*"]
+pub type USB_CHARGER_PORT = i32;
+#[doc = "*Required features: `\"Win32_System_Power\"`*"]
+pub const UsbChargerPort_Legacy: USB_CHARGER_PORT = 0i32;
+#[doc = "*Required features: `\"Win32_System_Power\"`*"]
+pub const UsbChargerPort_TypeC: USB_CHARGER_PORT = 1i32;
+#[doc = "*Required features: `\"Win32_System_Power\"`*"]
+pub const UsbChargerPort_Max: USB_CHARGER_PORT = 2i32;
+#[repr(C)]
+#[doc = "*Required features: `\"Win32_System_Power\"`, `\"Win32_Foundation\"`*"]
+#[cfg(feature = "Win32_Foundation")]
+pub struct USER_POWER_POLICY {
+ pub Revision: u32,
+ pub IdleAc: POWER_ACTION_POLICY,
+ pub IdleDc: POWER_ACTION_POLICY,
+ pub IdleTimeoutAc: u32,
+ pub IdleTimeoutDc: u32,
+ pub IdleSensitivityAc: u8,
+ pub IdleSensitivityDc: u8,
+ pub ThrottlePolicyAc: u8,
+ pub ThrottlePolicyDc: u8,
+ pub MaxSleepAc: SYSTEM_POWER_STATE,
+ pub MaxSleepDc: SYSTEM_POWER_STATE,
+ pub Reserved: [u32; 2],
+ pub VideoTimeoutAc: u32,
+ pub VideoTimeoutDc: u32,
+ pub SpindownTimeoutAc: u32,
+ pub SpindownTimeoutDc: u32,
+ pub OptimizeForPowerAc: super::super::Foundation::BOOLEAN,
+ pub OptimizeForPowerDc: super::super::Foundation::BOOLEAN,
+ pub FanThrottleToleranceAc: u8,
+ pub FanThrottleToleranceDc: u8,
+ pub ForcedThrottleAc: u8,
+ pub ForcedThrottleDc: u8,
+}
+#[cfg(feature = "Win32_Foundation")]
+impl ::core::marker::Copy for USER_POWER_POLICY {}
+#[cfg(feature = "Win32_Foundation")]
+impl ::core::clone::Clone for USER_POWER_POLICY {
+ fn clone(&self) -> Self {
+ *self
+ }
+}
+#[repr(C)]
+#[doc = "*Required features: `\"Win32_System_Power\"`*"]
+pub struct WAKE_ALARM_INFORMATION {
+ pub TimerIdentifier: u32,
+ pub Timeout: u32,
+}
+impl ::core::marker::Copy for WAKE_ALARM_INFORMATION {}
+impl ::core::clone::Clone for WAKE_ALARM_INFORMATION {
+ fn clone(&self) -> Self {
+ *self
+ }
+}