DXGKDDI_PRESENTDISPLAYONLY 콜백 함수(d3dkmddi.h)

KMDOD(커널 모드 디스플레이 전용 드라이버)의 디스플레이 디바이스에 화면 이미지를 표시합니다.

구문

DXGKDDI_PRESENTDISPLAYONLY DxgkddiPresentdisplayonly;

NTSTATUS DxgkddiPresentdisplayonly(
  IN_CONST_HANDLE hAdapter,
  IN_CONST_PDXGKARG_PRESENT_DISPLAYONLY pPresentDisplayOnly
)
{...}

매개 변수

hAdapter

디스플레이 어댑터의 디바이스 컨텍스트에 대한 핸들입니다. KMDOD의 DxgkDdiAddDevice 함수는 이전에 MiniportDeviceContext 매개 변수에서 이 핸들을 반환했습니다.

pPresentDisplayOnly

현재 작업에 대한 정보를 포함하는 DXGKARG_PRESENT_DISPLAYONLY 구조체에 대한 포인터입니다.

반환 값

다음 값 중 하나를 반환합니다.

반환 코드 설명
STATUS_SUCCESS 현재 작업이 성공적으로 완료되었습니다.
STATUS_PENDING 현재 작업을 완료하기 위해 소프트웨어 또는 하드웨어 큐로 전송되었습니다.
이 경우 KMDOD는 인터럽트 및 DPC(지연 프로시저 호출)를 사용하여 현재 작업의 진행률을 보고해야 합니다. 그렇지 않으면 운영 체제는 TDR(시간 제한 검색 및 복구) 프로세스를 사용합니다. 이 프로세스는 오류를 보고하고 KMDOD가 자체적으로 다시 초기화하고 GPU를 다시 설정해야 합니다.
이 상태 코드는 비고에 설명된 대로 동기 모드로 반환되어서는 안 됩니다.

 

드라이버는 Ntstatus.h에 정의된 다른 오류 상태 코드를 반환하여 현재 작업에서 발생한 문제를 나타낼 수도 있습니다.

설명

KMDOD는 더티 사각형을 복사하기 전에 모든 화면 간 이동을 완료해야 합니다. 또한 KMDOD는 다른 이동/복사 작업을 시작하기 전에 각 이동/복사 작업을 완료해야 합니다.

운영 체제는 두 가지 KMDOD 현재 작업 모드인 동기 및 비동기를 지원합니다. 하드웨어 및 드라이버 구현에 따라 KMDOD는 언제든지 모드를 사용하거나 모드 간에 전환할 수 있습니다.

운영 체제는 이 함수가 스레딩 및 동기화 0 수준에 정의된 대로 0 수준 동기화 모드를 따르도록 보장합니다.

요구 사항

요구 사항
지원되는 최소 클라이언트 Windows 8
지원되는 최소 서버 Windows Server 2012
대상 플랫폼 데스크톱
머리글 d3dkmddi.h
IRQL PASSIVE_LEVEL

추가 정보

DXGKARGCB_NOTIFY_INTERRUPT_DATA

DXGKARG_PRESENT_DISPLAYONLY

DxgkCbNotifyDpc

DxgkCbNotifyInterrupt

DxgkCbPresentDisplayOnlyProgress

DxgkCbQueueDpc

DxgkDdiAddDevice