KSDEVICE_THERMAL_DISPATCH 구조체(ks.h)
KSDEVICE_THERMAL_DISPATCH 구조는 API 호출의 미니포트 드라이버에서 열 알림 콜백을 등록하는 데 사용됩니다. 이 구조체에는 활성 및 수동 냉각 인터페이스에 대한 콜백 함수 포인터가 포함되어 있습니다.
구문
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이면 디바이스가 가장 낮은 열 수준에서 작동해야 했음을 나타냅니다. 0에서 100 사이의 매개 변수 값은 열 생성을 줄이기 위해 디바이스의 성능을 제한해야 하는 정도를 나타냅니다. 이 매개 변수 값은 디바이스가 초과해서는 안 되는 임계값입니다.
DeviceThermalState
[out] 반환 값: Avstream으로 결정된 열 상태입니다. 상태가 변경되면 파이프라인에 변경 알림이 표시됩니다. 파이프라인은 열 알림에 등록된 모든 앱에 알림합니다.
요구 사항
요구 사항 | 값 |
---|---|
헤더 | ks.h(Ks.h 포함) |