структура D3DKMT_ESCAPE (d3dkmthk.h)
Структура D3DKMT_ESCAPE описывает сведения, которыми обменивается с драйвером мини-порта дисплея.
Синтаксис
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
Значение типа D3DKMT_ESCAPETYPE, указывающее либо на обмен информацией с драйвером мини-порта дисплея, либо на управление компонентами режима ядра. В следующей таблице приводятся возможные значения.
Значение | Значение |
---|---|
D3DKMT_ESCAPE_DRIVERPRIVATE (0) | Элемент pPrivateDriverData предназначен для драйвера мини-порта дисплея. Поставщик оборудования определяет формат escape-данных. |
D3DKMT_ESCAPE_VIDMM (1) | Не используйте. Только для тестирования. OpenGL ICD управляет диспетчером видеопамять (который является частью Dxgkrnl.sys). Буфер, на который указывает pPrivateDriverData, содержит D3DKMT_VIDMM_ESCAPE структуру, которая поддерживает различные типы управления диспетчером видеопамяти. |
D3DKMT_ESCAPE_TDRDBGCTRL (2) | Не используйте. Только для тестирования. Escape-операция позволяет пользователю управлять поведением процесса обнаружения и восстановления времени ожидания (TDR) операционной системы. Эта функция отключена по умолчанию. Чтобы включить эту функцию, значение реестра DWORD TdrTestMode = TdrTestMode, которое хранится в разделе HKEY_LOCAL_MACHINE\SYSTEM\CurrentControlSet\Control\GraphicsDrivers, должно иметь значение 1. Член PrivateDriverDataSize имеет значение sizeof(int). Элементу pPrivateDriverData присваивается целое число со значением из типа перечисления D3DKMT_TDRDBGCTRLTYPE . |
D3DKMT_ESCAPE_VIDSCH (3) | Не используйте. Только для тестирования. OpenGL ICD управляет планировщиком графического процессора (GPU), который является частью Dxgkrnl.sys). Буфер, на который указывает pPrivateDriverData, содержит D3DKMT_VIDSCH_ESCAPE структуру, которая поддерживает управление вытеснением и приостановку или возобновление работы планировщика. |
D3DKMT_ESCAPE_DEVICE (4) | Не используйте. Только для тестирования. OpenGL ICD управляет устройством отображения. Буфер, на который указывает pPrivateDriverData, содержит D3DKMT_DEVICE_ESCAPE структуру, которая поддерживает получение источника видео из основного выделения. |
D3DKMT_ESCAPE_DMM (5) | Не используйте. Только для тестирования. OpenGL ICD управляет диспетчером режима отображения. Буфер, на который указывает pPrivateDriverData, содержит структуру D3DKMT_DMM_ESCAPE . |
D3DKMT_ESCAPE_DEBUG_SNAPSHOT (6) | Не используйте. Только для тестирования. OpenGL ICD извлекает буфер snapshot отладки. Буфер, на который указывает pPrivateDriverData, содержит D3DKMT_DEBUG_SNAPSHOT_ESCAPE структуру. |
D3DKMT_ESCAPE_SETDRIVERUPDATESTATUS (7) | Не используйте. Только для тестирования. OpenGL ICD задает состояние обновления драйвера минипорта для отображения. |
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 , показывающая в флагах битовых полей способ совместного использования информации. В OpenGL ICD следует указать флаг битового поля HardwareAccess , чтобы указать, что драйвер мини-порта дисплея должен получить доступ к графическому оборудованию таким образом, чтобы операционная система выполнила второй уровень синхронизации с драйвером мини-порта дисплея для вызова DxgkDdiEscape .
[in/out] pPrivateDriverData
Указатель на буфер, выделенный OpenGL ICD, который содержит сведения, которые OpenGL ICD либо обменивается с драйвером мини-порта дисплея, либо использует для управления компонентами режима ядра. В следующей таблице описывается содержимое буфера, на который указывает pPrivateDriverData , в зависимости от значения Type.
Значение элемента Type | Содержимое буфера pPrivateDriverData |
---|---|
D3DKMT_ESCAPE_DRIVERPRIVATE | Для конкретного драйвера. Буфер нельзя использовать, если между OpenGL ICD и драйвером минипорта дисплея не существует тесной связи. |
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 . OpenGL ICD должен указывать размер буфера при вызове функции D3DKMTEscape .
[in] hContext
Дескриптор контекста, который при необходимости указывается, если сведения для обмена относятся к конкретному контексту устройства. Если OpenGL ICD задает для hContext значение, отличное от NULL, в ICD также должно быть задано значение hDevice , отличное от NULL, а hDevice должно соответствовать устройству, которому принадлежит контекст.
Комментарии
В целях тестирования OpenGL ICD может передать указатель на структуру D3DKMT_ESCAPE в вызове функции D3DKMTEscape для управления диспетчером видеопамяти и планировщиком GPU (которые являются частью Dxgkrnl.sys) и поведением процесса TDR операционной системы.
Требования
Требование | Значение |
---|---|
Минимальная версия клиента | Windows Vista |
Верхняя часть | d3dkmthk.h (включая D3dkmthk.h) |
См. также раздел
Обратная связь
https://aka.ms/ContentUserFeedback.
Ожидается в ближайшее время: в течение 2024 года мы постепенно откажемся от GitHub Issues как механизма обратной связи для контента и заменим его новой системой обратной связи. Дополнительные сведения см. в разделеОтправить и просмотреть отзыв по