WUDF_INTERRUPT_ENABLE 콜백 함수(wudfinterrupt.h)
경고
UMDF 2는 UMDF의 최신 버전이며 UMDF 1을 대체합니다. 모든 새 UMDF 드라이버는 UMDF 2를 사용하여 작성해야 합니다. UMDF 1에는 새로운 기능이 추가되지 않으며 최신 버전의 Windows 10에서는 UMDF 1에 대한 지원이 제한되어 있습니다. 유니버설 Windows 드라이버는 UMDF 2를 사용해야 합니다. 자세한 내용은 UMDF시작하세요.
드라이버의 OnInterruptEnable 이벤트 콜백 함수는 지정된 하드웨어 인터럽트를 사용하도록 설정합니다.
통사론
WUDF_INTERRUPT_ENABLE WudfInterruptEnable;
HRESULT WudfInterruptEnable(
[in] IWDFInterrupt *Interrupt,
[in] IWDFDevice *AssociatedDevice
)
{...}
매개 변수
[in] Interrupt
IWDFInterrupt 인터페이스에 대한 포인터입니다.
[in] AssociatedDevice
드라이버가 CreateInterrupt호출하는 데 사용한 IWDFDevice 인터페이스에 대한 포인터입니다.
반환 값
콜백 함수는 작업이 성공하면 S_OK 반환해야 합니다. 그렇지 않으면 콜백이 Winerror.h에 정의된 오류 코드 중 하나를 반환해야 합니다.
발언
OnInterruptEnable 콜백 함수를 등록하려면 드라이버는 IWDFDevice::CreateInterrupt호출하기 전에 콜백 함수의 주소를 WUDF_INTERRUPT_CONFIG 구조에 배치해야 합니다.
프레임워크는 디바이스가 작동(D0) 상태가 될 때마다 드라이버의 OnInterruptEnable 콜백 함수를 호출합니다. 또한 드라이버는 IWDFInterrupt::Enable호출하여 프레임워크가 OnInterruptEnable 콜백 함수를 호출하도록 할 수 있습니다.
OnInterruptEnable 콜백 함수를 호출하기 전에 프레임워크는 사용자 모드 인터럽트 잠금을 획득합니다.
OnInterruptEnable 콜백 함수를 호출한 후 프레임워크는 드라이버의 OnD0EntryPostInterruptsEnabled 이벤트 콜백 함수를 호출합니다.
UMDF 드라이버에서 인터럽트 처리에 대한 자세한 내용은 하드웨어 액세스 및 인터럽트 처리 참조하세요.
예제
함수 형식은 다음과 같이 Wudfinterrupt.h선언됩니다.
typedef
__drv_functionClass(WUDF_INTERRUPT_ENABLE)
HRESULT
WUDF_INTERRUPT_ENABLE(
_In_
IWDFInterrupt* Interrupt,
_In_
IWDFDevice* AssociatedDevice
);
typedef WUDF_INTERRUPT_ENABLE *PFN_WUDF_INTERRUPT_ENABLE;
MyInterruptEnable명명된 OnInterruptEnable 콜백 함수를 정의하려면 먼저 다음과 같이 SDV 및 기타 확인 도구에 필요한 함수 선언을 제공해야 합니다.
WUDF_INTERRUPT_ENABLE MyInterruptEnable;
그런 다음 다음과 같이 콜백 함수를 구현합니다.
HRESULT
MyInterruptEnable (
IN IWDFInterrupt* pInterrupt,
IN IWDFDevice* pAssociatedDevice
)
{…}
요구 사항
요구 | 값 |
---|---|
지원 종료 | UMDF 2.0 이상에서는 사용할 수 없습니다. |
대상 플랫폼 | 바탕 화면 |
최소 UMDF 버전 | 1.11 |
헤더 | wudfinterrupt.h |