다음을 통해 공유


PFND3DDDI_GETQUERYDATA 콜백 함수(d3dumddi.h)

GetQueryData 함수는 쿼리에 대한 정보를 검색합니다.

구문

PFND3DDDI_GETQUERYDATA Pfnd3dddiGetquerydata;

HRESULT Pfnd3dddiGetquerydata(
  HANDLE hDevice,
  const D3DDDIARG_GETQUERYDATA *unnamedParam2
)
{...}

매개 변수

hDevice

디스플레이 디바이스(그래픽 컨텍스트)에 대한 핸들입니다.

unnamedParam2

pData [in, out]

드라이버에서 검색되는 쿼리에 대한 정보를 포함하는 D3DDDIARG_GETQUERYDATA 구조체에 대한 포인터입니다.

반환 값

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

반환 코드 설명
S_OK 쿼리 작업이 완료되고 쿼리 결과를 사용할 수 있습니다.
S_FALSE GetQueryData가 성공적으로 반환되었습니다. 그러나 쿼리 작업이 완료되지 않았으므로 쿼리 결과를 사용할 수 없습니다.
E_OUTOFMEMORY GetQueryData가 완료하는 데 필요한 메모리를 할당할 수 없습니다.

설명

Microsoft Direct3D 런타임은 사용자 모드 표시 드라이버의 IssueQuery 함수를 호출한 후 언제든지 GetQueryData를 호출할 수 있습니다. 사용자 모드 표시 드라이버는 드라이버의 프라이빗 쿼리 구조에 저장된 값에 대해 현재 펜스 값을 검사 쿼리 문제가 완료되었는지 확인해야 합니다.

쿼리가 완료되면 드라이버는 S_OK 반환해야 합니다. 그렇지 않으면 드라이버가 S_FALSE 반환해야 합니다.

드라이버가 런타임 처리 다중 프로세서 최적화 를 지원하고 DDI 버전의 0x0000000B 이상을 노출하는 경우 런타임은 재진입 방식으로 GetQueryData 를 호출합니다. 드라이버는 드라이버의 OpenAdapter 함수 호출에서 D3D10DDIARG_OPENADAPTER 구조체의 DriverVersion 멤버에 DDI 버전 값을 반환합니다. 런타임이 GetQueryData 를 재진입 방식으로 호출하면 한 스레드가 GetQueryData 내에서 실행되는 반면 동일한 디스플레이 디바이스를 참조하는 다른 스레드는 다른 사용자 모드 표시 드라이버 함수 내에서 실행됩니다.

요구 사항

요구 사항
지원되는 최소 클라이언트 Windows Vista 이상 버전의 Windows 운영 체제에서 사용할 수 있습니다.
대상 플랫폼 데스크톱
머리글 d3dumddi.h(D3dumddi.h 포함)

추가 정보

D3DDDIARG_GETQUERYDATA

D3DDDI_DEVICEFUNCS

IssueQuery