KSDEVICE_THERMAL_DISPATCH 结构 (ks.h)

API 调用中的微型端口驱动程序使用 KSDEVICE_THERMAL_DISPATCH 结构来注册热通知回调。 此结构包含主动和被动冷却接口的回调函数指针。

语法

typedef struct _KSDEVICE_THERMAL_DISPATCH {
  PFNKSDEVICETHERMALACTIVECOOLING  ActiveCooling;
  PFNKSDEVICETHERMALPASSIVECOOLING PassiveCooling;
} KSDEVICE_THERMAL_DISPATCH, *PKSDEVICE_THERMAL_DISPATCH;

成员

ActiveCooling

活动热回调通知。

例程定义如下:

_IRQL_requires_max_(PASSIVE_LEVEL)
typedef
void
(*PFNKSDEVICETHERMALACTIVECOOLING)(
    _In_  PKSDEVICE KsDevice,
    _In_  BOOLEAN Engaged,
    _Out_ KSDEVICE_THERMAL_STATE* DeviceThermalState
);

KsDevice

[in]表示 由 KS 管理的设备的 KSDEVICE 对象。

经营

[in]指示是启用还是脱离主动冷却。 如果 为 TRUE,驱动程序必须启用主动冷却 (例如,通过打开风扇) 。 如果 为 FALSE,则驱动程序必须脱离主动冷却 (,例如,关闭风扇) 。

DeviceThermalState

[out]返回值:Avstream 确定的热状态。 如果状态发生更改,管道将收到更改通知。 管道通知任何已注册热通知的应用。

PassiveCooling

被动热回调通知。

例程定义如下:

_IRQL_requires_max_(PASSIVE_LEVEL)
typedef
void
(*PFNKSDEVICETHERMALPASSIVECOOLING)(
    _In_  PKSDEVICE KsDevice,
    _In_  ULONG Percentage,
    _Out_ KSDEVICE_THERMAL_STATE* DeviceThermalState
);

KsDevice

[in]表示 由 KS 管理的设备的 KSDEVICE 对象。

百分比

[in]允许设备运行的完整性能百分比。 参数值为 100 表示设备没有冷却限制,并且可以以完全性能级别运行。 参数值为零表示设备必须在最低热级别下运行。 介于 0 和 100 之间的参数值指示必须限制设备性能的程度,以减少热量的产生。 此参数值是设备不得超过的阈值。

DeviceThermalState

[out]返回值:Avstream 确定的热状态。 如果状态发生更改,管道将收到更改通知。 管道通知任何已注册热通知的应用。

要求

要求
Header ks.h (包括 Ks.h)