D3DKMT_ESCAPE 구조체(d3dkmthk.h)
D3DKMT_ESCAPE 구조는 UMD(사용자 모드 디스플레이 드라이버) 또는 클라이언트 드라이버와 KMD(커널 모드 디스플레이 미니포트 드라이버) 간에 교환되는 정보를 설명합니다.
통사론
typedef struct _D3DKMT_ESCAPE {
[in] D3DKMT_HANDLE hAdapter;
[in] D3DKMT_HANDLE hDevice;
[in] D3DKMT_ESCAPETYPE Type;
[in] D3DDDI_ESCAPEFLAGS Flags;
[in/out] VOID *pPrivateDriverData;
[in] UINT PrivateDriverDataSize;
[in] D3DKMT_HANDLE hContext;
} D3DKMT_ESCAPE;
회원
[in] hAdapter
정보가 교환되는 그래픽 어댑터에 대한 핸들입니다.
[in] hDevice
교환할 정보가 특정 디바이스와 관련된 경우 선택적으로 지정된 디스플레이 디바이스에 대한 핸들입니다.
[in] Type
KMD와 정보를 교환하거나 커널 모드 구성 요소를 제어하도록 나타내는 D3DKMT_ESCAPETYPE 열거형 값입니다. 다음 표에서는 가능한 값을 보여줍니다.
값 | 의미 |
---|---|
D3DKMT_ESCAPE_DRIVERPRIVATE (0) | pPrivateDriverData 멤버는 KMD를 대상으로 합니다. 하드웨어 공급업체는 이스케이프 데이터의 형식을 정의합니다. |
D3DKMT_ESCAPE_VIDMM (1) | 사용하지 마세요. 테스트용으로만 사용할 수 있습니다. UMD/클라이언트 드라이버는 비디오 메모리 관리자(VidMm)를 제어합니다. pPrivateDriverData가 가리키는 버퍼는 다양한 유형의 VidMm제어를 지원하는 D3DKMT_VIDMM_ESCAPE 구조를 포함합니다. |
D3DKMT_ESCAPE_TDRDBGCTRL (2) | 사용하지 마세요. 테스트용으로만 사용할 수 있습니다. 이스케이프 작업을 통해 사용자는 운영 체제의 TDR(시간 제한 검색 및 복구) 프로세스의 동작을 제어할 수 있습니다. 이 기능은 기본적으로 사용하지 않도록 설정됩니다. 이 기능을 사용하려면 HKEY_LOCAL_MACHINE\SYSTEM\CurrentControlSet\Control\GraphicsDrivers 키에 저장된 TdrTestMode = TdrTestMode DWORD 레지스트리 값을 1로 설정해야 합니다. PrivateDriverDataSize 멤버가 sizeof(int)로 설정됩니다. pPrivateDriverData 멤버는 D3DKMT_TDRDBGCTRLTYPE 열거형 형식의 값을 가진 정수로 설정됩니다. |
D3DKMT_ESCAPE_VIDSCH (3) | 사용하지 마세요. 테스트용으로만 사용할 수 있습니다. UMD/클라이언트 드라이버는 GPU 스케줄러(Dxgkrnl일부)를 제어합니다. pPrivateDriverData를 버퍼가 선점 제어 및 스케줄러 일시 중단 또는 재개를 지원하는 D3DKMT_VIDSCH_ESCAPE 구조를 포함합니다. |
D3DKMT_ESCAPE_DEVICE (4) | 사용하지 마세요. 테스트용으로만 사용할 수 있습니다. UMD/클라이언트 드라이버는 디스플레이 디바이스를 제어합니다. pPrivateDriverData를 버퍼는 기본 할당에서 비디오 현재 원본을 가져올 수 있도록 지원하는 D3DKMT_DEVICE_ESCAPE 구조를 포함하도록. |
D3DKMT_ESCAPE_DMM (5) | 사용하지 마세요. 테스트용으로만 사용할 수 있습니다. UMD/클라이언트 드라이버는 디스플레이 모드 관리자를 제어합니다. pPrivateDriverData를 버퍼가 D3DKMT_DMM_ESCAPE 구조를 포함하도록 가리키는. |
D3DKMT_ESCAPE_DEBUG_SNAPSHOT (6) | 사용하지 마세요. 테스트용으로만 사용할 수 있습니다. UMD/클라이언트 드라이버는 디버그 스냅샷 버퍼를 검색합니다. pPrivateDriverData를 가리키는 버퍼는 D3DKMT_DEBUG_SNAPSHOT_ESCAPE 구조를 포함합니다. |
D3DKMT_ESCAPE_SETDRIVERUPDATESTATUS (7) | 사용하지 마세요. 테스트용으로만 사용할 수 있습니다. UMD/클라이언트 드라이버는 KMD 업데이트 상태를 설정합니다. |
D3DKMT_ESCAPE_DRT_TEST (8) | 사용하지 마세요. 테스트용으로만 사용할 수 있습니다. |
D3DKMT_ESCAPE_DIAGNOSTICS (9) | 사용하지 마세요. 테스트용으로만 사용할 수 있습니다. Windows 8부터 지원됩니다. |
D3DKMT_ESCAPE_OUTPUTDUPL_SNAPSHOT (10) | 사용하지 마세요. 테스트용으로만 사용할 수 있습니다. Windows 8부터 지원됩니다. |
D3DKMT_ESCAPE_OUTPUTDUPL_DIAGNOSTICS (11) | 사용하지 마세요. 테스트용으로만 사용할 수 있습니다. Windows 8부터 지원됩니다. |
D3DKMT_ESCAPE_BDD_PNP (12) | 사용하지 마세요. 테스트용으로만 사용할 수 있습니다. Windows 8부터 지원됩니다. |
D3DKMT_ESCAPE_BDD_FALLBACK (13) | 사용하지 마세요. 테스트용으로만 사용할 수 있습니다. Windows 8부터 지원됩니다. |
D3DKMT_ESCAPE_ACTIVATE_SPECIFIC_DIAG(14) | 사용하지 마세요. 테스트용으로만 사용할 수 있습니다. Windows 8부터 지원됩니다. |
D3DKMT_ESCAPE_MODES_PRUNED_OUT(15) | 사용하지 마세요. 테스트용으로만 사용할 수 있습니다. Windows 8부터 지원됩니다. |
D3DKMT_ESCAPE_WQHL_INFO(16) | 사용하지 마세요. 테스트용으로만 사용할 수 있습니다. Windows 8부터 지원됩니다. |
D3DKMT_ESCAPE_BRIGHTNESS(17) | 사용하지 마세요. 테스트용으로만 사용할 수 있습니다. Windows 8부터 지원됩니다. |
D3DKMT_ESCAPE_EDID_CACHE(18) | 사용하지 마세요. 테스트용으로만 사용할 수 있습니다. Windows 8부터 지원됩니다. |
D3DKMT_ESCAPE_GENERIC_ADAPTER_DIAG_INFO(19) | 사용하지 마세요. 테스트용으로만 사용할 수 있습니다. Windows 8부터 지원됩니다. |
D3DKMT_ESCAPE_MIRACAST_DISPLAY_REQUEST (20) | 사용하지 마세요. 테스트용으로만 사용할 수 있습니다. Windows 8.1 시작 지원. |
D3DKMT_ESCAPE_HISTORY_BUFFER_STATUS (21) | 사용하지 마세요. 테스트용으로만 사용할 수 있습니다. Windows 8.1 시작 지원. |
D3DKMT_ESCAPE_MIRACAST_ADAPTER_DIAG_INFO (23) | 사용하지 마세요. 테스트용으로만 사용할 수 있습니다. Windows 8.1 시작 지원. |
D3DKMT_ESCAPE_WIN32K_START(1024) | 사용하지 마세요. 테스트용으로만 사용할 수 있습니다. Windows 8부터 지원됩니다. |
D3DKMT_ESCAPE_WIN32K_HIP_DEVICE_INFO(1024) | 사용하지 마세요. 테스트용으로만 사용할 수 있습니다. Windows 8부터 지원됩니다. |
D3DKMT_ESCAPE_WIN32K_QUERY_CD_ROTATION_BLOCK (1025) | 사용하지 마세요. 테스트용으로만 사용할 수 있습니다. Windows 8부터 지원됩니다. |
D3DKMT_ESCAPE_WIN32K_DPI_INFO (1026) | 사용하지 마세요. 테스트용으로만 사용할 수 있습니다. Windows 8.1 시작 지원. |
D3DKMT_ESCAPE_WIN32K_PRESENTER_VIEW_INFO (1027) | 사용하지 마세요. 테스트용으로만 사용할 수 있습니다. Windows 8.1 시작 지원. |
D3DKMT_ESCAPE_WIN32K_SYSTEM_DPI (1028) | 사용하지 마세요. 테스트용으로만 사용할 수 있습니다. Windows 8.1 시작 지원. |
[in] Flags
비트 필드 플래그에서 정보를 공유하는 방법을 나타내는 D3DDDI_ESCAPEFLAGS 구조체입니다. UMD/클라이언트 드라이버는 HardwareAccess 비트 필드 플래그를 지정하여 OS가 DxgkDdiEscape 호출을 위해 KMD에 두 번째 수준의 동기화 수행해야 하는 방식으로 그래픽 하드웨어에 액세스해야 함을 나타냅니다.
가상화를 사용할 때 HardwareAccess 0으로 설정해야 합니다. 자세한 내용은 GPU 매개 변수화 참조하세요.
[in/out] pPrivateDriverData
UMD 또는 클라이언트 드라이버가 알려진 드라이버 이스케이프 구조를 포함하는 할당하는 버퍼에 대한 포인터입니다. 이 구조에는 드라이버가 KMD와 교환하거나 커널 모드 구성 요소를 제어하는 데 사용하는 정보가 포함됩니다. 다음 표에서는
형식 값 | pPrivateDriverData 버퍼의 콘텐츠 |
---|---|
D3DKMT_ESCAPE_DRIVERPRIVATE | 드라이버 관련. UMD/클라이언트 드라이버와 KMD 간에 긴밀한 결합이 없는 경우 버퍼를 사용할 수 없습니다. |
D3DKMT_ESCAPE_VIDMM | 사용하지 마세요. 테스트용으로만 사용할 수 있습니다. D3DKMT_VIDMM_ESCAPE 구조체입니다. |
D3DKMT_ESCAPE_TDRDBGCTRL | 사용하지 마세요. 테스트용으로만 사용할 수 있습니다. D3DKMT_TDRDBGCTRLTYPE 열거형 형식입니다. |
D3DKMT_ESCAPE_VIDSCH | 사용하지 마세요. 테스트용으로만 사용할 수 있습니다. D3DKMT_VIDSCH_ESCAPE 구조체입니다. |
D3DKMT_ESCAPE_DEVICE | 사용하지 마세요. 테스트용으로만 사용할 수 있습니다. D3DKMT_DEVICE_ESCAPE 구조체입니다. |
D3DKMT_ESCAPE_DMM | 사용하지 마세요. 테스트용으로만 사용할 수 있습니다. D3DKMT_DMM_ESCAPE 구조체입니다. |
D3DKMT_ESCAPE_DEBUG_SNAPSHOT | 사용하지 마세요. 테스트용으로만 사용할 수 있습니다. D3DKMT_DEBUG_SNAPSHOT_ESCAPE 구조체입니다. |
[in] PrivateDriverDataSize
pPrivateDriverData 가리키는
[in] hContext
교환할 정보가 특정 디바이스 컨텍스트와 관련된 경우 선택적으로 지정된 컨텍스트에 대한 핸들입니다. UMD/클라이언트 드라이버가 hContext NULL이 아닌 값으로 설정하는 경우 드라이버는 hDevice NULL이 아닌 값으로 설정해야 하며, hDevice 컨텍스트를 소유하는 디바이스에 해당해야 합니다.
요구 사항
요구 | 값 |
---|---|
지원되는 최소 클라이언트 | Windows Vista |
헤더 | d3dkmthk.h(D3dkmthk.h 포함) |