PowrProf.POWER_INFORMATION_LEVEL (JNA API)
Description: declaration: package: com.sun.jna.platform.win32, interface: PowrProf, interface: POWER_INFORMATION_LEVEL

Package com.sun.jna.platform.win32

# Interface PowrProf.POWER_INFORMATION_LEVEL

Enclosing interface:
  PowrProf

public static interface PowrProf.POWER_INFORMATION_LEVEL
Enum which indicates the power information level requested from `PowrProf.CallNtPowerInformation(int, com.sun.jna.Pointer, int, com.sun.jna.Pointer, int)`. This value indicates the specific power information to be set or retrieved.

- ## Field Summary

  Fields
  Modifier and Type
  Field
  Description
  `static final int`
  `LastSleepTime`
  The `lpInBuffer` parameter must be `NULL`; otherwise, the function returns `WinError.ERROR_INVALID_PARAMETER`.
  `static final int`
  `LastWakeTime`
  The `lpInBuffer` parameter must be `NULL`; otherwise, the function returns `WinError.ERROR_INVALID_PARAMETER`.
  `static final int`
  `ProcessorInformation`
  The `lpInBuffer` parameter must be `NULL`; otherwise, the function returns `WinError.ERROR_INVALID_PARAMETER`.
  `static final int`
  `SystemBatteryState`
  The `lpInBuffer` parameter must be `NULL`; otherwise, the function returns `WinError.ERROR_INVALID_PARAMETER`.
  `static final int`
  `SystemExecutionState`
  The `lpInBuffer` parameter must be `NULL` otherwise, the function returns `WinError.ERROR_INVALID_PARAMETER`.
  `static final int`
  `SystemPowerCapabilities`
  The `lpInBuffer` parameter must be `NULL`; otherwise, the function returns `WinError.ERROR_INVALID_PARAMETER`.
  `static final int`
  `SystemPowerInformation`
  The `lpInBuffer` parameter must be `NULL`; otherwise, the function returns `WinError.ERROR_INVALID_PARAMETER`.
  `static final int`
  `SystemPowerPolicyAc`
  If `lpInBuffer` is not `NULL`, the function applies the `WinNT.SYSTEM_POWER_POLICY` values passed in `lpInBuffer` to the current system power policy used while the system is running on AC (utility) power.
  `static final int`
  `SystemPowerPolicyCurrent`
  The `lpInBuffer` parameter must be `NULL`; otherwise, the function returns `WinError.ERROR_INVALID_PARAMETER`.
  `static final int`
  `SystemPowerPolicyDc`
  If `lpInBuffer` is not `NULL`, the function applies the `WinNT.SYSTEM_POWER_POLICY` values passed in `lpInBuffer` to the current system power policy used while the system is running on battery power.
  `static final int`
  `SystemReserveHiberFile`
  If `lpInBuffer` is not `NULL` and the current user has sufficient privileges, the function commits or decommits the storage required to hold the hibernation image on the boot volume.

- ## Field Details

  - ### LastSleepTime

    static final int LastSleepTime
    The `lpInBuffer` parameter must be `NULL`; otherwise, the function returns `WinError.ERROR_INVALID_PARAMETER`.

    The `lpOutputBuffer` buffer receives a `WinDef.ULONGLONG` that specifies the interrupt-time count, in 100-nanosecond units, at the last system sleep time.

    See Also:
      - Constant Field Values

  - ### LastWakeTime

    static final int LastWakeTime
    The `lpInBuffer` parameter must be `NULL`; otherwise, the function returns `WinError.ERROR_INVALID_PARAMETER`.

    The `lpOutputBuffer` buffer receives a `WinDef.ULONGLONG` that specifies the interrupt-time count, in 100-nanosecond units, at the last system wake time.

    See Also:
      - Constant Field Values

  - ### ProcessorInformation

    static final int ProcessorInformation
    The `lpInBuffer` parameter must be `NULL`; otherwise, the function returns `WinError.ERROR_INVALID_PARAMETER`.

    The `lpOutputBuffer` buffer receives one `WinNT.PROCESSOR_POWER_INFORMATION` structure for each processor that is installed on the system. Use the `Kernel32.GetSystemInfo(com.sun.jna.platform.win32.WinBase.SYSTEM_INFO)` function to retrieve the number of processors, which will be the number of logical processors on the current Processor Group.

    See Also:
      - Constant Field Values

  - ### SystemBatteryState

    static final int SystemBatteryState
    The `lpInBuffer` parameter must be `NULL`; otherwise, the function returns `WinError.ERROR_INVALID_PARAMETER`.

    The `lpOutputBuffer` buffer receives a `WinNT.SYSTEM_BATTERY_STATE` structure containing information about the current system battery.

    See Also:
      - Constant Field Values

  - ### SystemExecutionState

    static final int SystemExecutionState
    The `lpInBuffer` parameter must be `NULL` otherwise, the function returns `WinError.ERROR_INVALID_PARAMETER`.

    The `lpOutputBuffer` buffer receives a `WinDef.ULONG` value containing the system execution state buffer. This value may contain any combination of the following values: `WinBase.ES_SYSTEM_REQUIRED`, `WinBase.ES_DISPLAY_REQUIRED`, or `WinBase.ES_USER_PRESENT`. For more information, see the `Kernel32.SetThreadExecutionState(int)` function.

    See Also:
      - Constant Field Values

  - ### SystemPowerCapabilities

    static final int SystemPowerCapabilities
    The `lpInBuffer` parameter must be `NULL`; otherwise, the function returns `WinError.ERROR_INVALID_PARAMETER`.

    The `lpOutputBuffer` buffer receives a `WinNT.SYSTEM_POWER_CAPABILITIES` structure containing the current system power capabilities.

    This information represents the currently supported power capabilities. It may change as drivers are installed in the system. For example, installation of legacy device drivers that do not support power management disables all system sleep states.

    See Also:
      - Constant Field Values

  - ### SystemPowerInformation

    static final int SystemPowerInformation
    The `lpInBuffer` parameter must be `NULL`; otherwise, the function returns `WinError.ERROR_INVALID_PARAMETER`.

    The `lpOutputBuffer` buffer receives a `WinNT.SYSTEM_POWER_INFORMATION` structure.

    Applications can use this level to retrieve information about the idleness of the system.

    See Also:
      - Constant Field Values

  - ### SystemPowerPolicyAc

    static final int SystemPowerPolicyAc
    If `lpInBuffer` is not `NULL`, the function applies the `WinNT.SYSTEM_POWER_POLICY` values passed in `lpInBuffer` to the current system power policy used while the system is running on AC (utility) power.

    The `lpOutputBuffer` buffer receives a `WinNT.SYSTEM_POWER_POLICY` structure containing the current system power policy used while the system is running on AC (utility) power.

    See Also:
      - Constant Field Values

  - ### SystemPowerPolicyCurrent

    static final int SystemPowerPolicyCurrent
    The `lpInBuffer` parameter must be `NULL`; otherwise, the function returns `WinError.ERROR_INVALID_PARAMETER`.

    The `lpOutputBuffer` buffer receives a `WinNT.SYSTEM_POWER_POLICY` structure containing the current system power policy used while the system is running on AC (utility) power.

    See Also:
      - Constant Field Values

  - ### SystemPowerPolicyDc

    static final int SystemPowerPolicyDc
    If `lpInBuffer` is not `NULL`, the function applies the `WinNT.SYSTEM_POWER_POLICY` values passed in `lpInBuffer` to the current system power policy used while the system is running on battery power.

    The `lpOutputBuffer` buffer receives a `WinNT.SYSTEM_POWER_POLICY` structure containing the current system power policy used while the system is running on battery power.

    See Also:
      - Constant Field Values

  - ### SystemReserveHiberFile

    static final int SystemReserveHiberFile
    If `lpInBuffer` is not `NULL` and the current user has sufficient privileges, the function commits or decommits the storage required to hold the hibernation image on the boot volume.

    The lpInBuffer parameter must point to a `BOOLEAN` value indicating the desired request. If the value is `TRUE`, the hibernation file is reserved; if the value is `FALSE`, the hibernation file is removed.

    See Also:
      - Constant Field Values