PFND3DDDI_DESTROYCONTEXTCB 콜백 함수(d3dumddi.h)
pfnDestroyContextCb 함수는 pfnCreateContextCb 함수를 호출하여 만든 컨텍스트를 삭제합니다.
구문
PFND3DDDI_DESTROYCONTEXTCB Pfnd3dddiDestroycontextcb;
HRESULT Pfnd3dddiDestroycontextcb(
HANDLE hDevice,
const D3DDDICB_DESTROYCONTEXT *unnamedParam2
)
{...}
매개 변수
hDevice
디스플레이 디바이스(즉, 그래픽 컨텍스트)에 대한 핸들입니다.
unnamedParam2
pData [in]
삭제할 컨텍스트에 대한 핸들을 포함하는 D3DDDICB_DESTROYCONTEXT 구조체에 대한 포인터입니다.
반환 값
pfnDestroyContextCb 는 다음 값 중 하나를 반환합니다.
반환 코드 | 설명 |
---|---|
S_OK | 컨텍스트가 성공적으로 제거되었습니다. |
E_INVALIDARG | 매개 변수의 유효성이 검사되었고 잘못된 것으로 확인되었습니다. |
이 함수는 다른 HRESULT 값을 반환할 수도 있습니다.
설명
지정된 컨텍스트가 현재 큐에 대기 중인 작업을 완료하지 않은 경우 pfnDestroyContextCb 함수는 컨텍스트가 작업을 완료한 다음 반환될 때까지 차단합니다.
pfnDestroyContextCb 는 삭제할 컨텍스트가 현재 동기화 개체를 소유하는 경우 오류를 반환합니다.
Direct3D 버전 11 참고: 드라이버가 pfnDestroyContextCb를 호출하는 방법에 대한 자세한 내용은 Direct3D 10의 변경 내용을 참조하세요.
다음 코드 예제에서는 디스플레이 디바이스의 기본 컨텍스트를 삭제하는 방법을 보여 있습니다.
if (m_d3dCallbacks.pfnDestroyContextCb) {
D3DDDICB_DESTROYCONTEXT DestroyContext;
DestroyContext.hContext = m_sContexts[MULTI_ENGINE_NODE_3D].hContext;
m_d3dCallbacks.pfnDestroyContextCb(m_hD3D, &DestroyContext);
m_sContexts[MULTI_ENGINE_NODE_3D].hContext = NULL;
}
요구 사항
요구 사항 | 값 |
---|---|
지원되는 최소 클라이언트 | Windows Vista 이상 버전의 Windows 운영 체제에서 사용할 수 있습니다. |
대상 플랫폼 | 데스크톱 |
머리글 | d3dumddi.h(D3dumddi.h 포함) |