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 포함) |