summaryrefslogtreecommitdiffstats
path: root/third_party/rust/winapi/src/shared/d3dkmdt.rs
diff options
context:
space:
mode:
Diffstat (limited to 'third_party/rust/winapi/src/shared/d3dkmdt.rs')
-rw-r--r--third_party/rust/winapi/src/shared/d3dkmdt.rs45
1 files changed, 45 insertions, 0 deletions
diff --git a/third_party/rust/winapi/src/shared/d3dkmdt.rs b/third_party/rust/winapi/src/shared/d3dkmdt.rs
new file mode 100644
index 0000000000..89d574f12f
--- /dev/null
+++ b/third_party/rust/winapi/src/shared/d3dkmdt.rs
@@ -0,0 +1,45 @@
+// Licensed under the Apache License, Version 2.0
+// <LICENSE-APACHE or http://www.apache.org/licenses/LICENSE-2.0> or the MIT license
+// <LICENSE-MIT or http://opensource.org/licenses/MIT>, at your option.
+// All files in the project carrying such notice may not be copied, modified, or distributed
+// except according to those terms.
+//! Longhorn Display Driver Model (LDDM) kernel mode data type definitions
+use shared::basetsd::UINT32;
+use shared::minwindef::UINT;
+use shared::ntdef::{BOOLEAN, WCHAR};
+//1932
+pub const DXGK_MAX_METADATA_NAME_LENGTH: usize = 32;
+ENUM!{enum DXGK_ENGINE_TYPE {
+ DXGK_ENGINE_TYPE_OTHER,
+ DXGK_ENGINE_TYPE_3D,
+ DXGK_ENGINE_TYPE_VIDEO_DECODE,
+ DXGK_ENGINE_TYPE_VIDEO_ENCODE,
+ DXGK_ENGINE_TYPE_VIDEO_PROCESSING,
+ DXGK_ENGINE_TYPE_SCENE_ASSEMBLY,
+ DXGK_ENGINE_TYPE_COPY,
+ DXGK_ENGINE_TYPE_OVERLAY,
+ DXGK_ENGINE_TYPE_CRYPTO,
+ DXGK_ENGINE_TYPE_MAX,
+}}
+STRUCT!{#[repr(packed)] struct DXGK_NODEMETADATA_FLAGS {
+ Value: UINT32,
+}}
+BITFIELD!{DXGK_NODEMETADATA_FLAGS Value: UINT32 [
+ ContextSchedulingSupported set_ContextSchedulingSupported[0..1],
+ RingBufferFenceRelease set_RingBufferFenceRelease[1..2],
+ SupportTrackedWorkload set_SupportTrackedWorkload[2..3],
+ Reserved set_Reserved[3..16],
+ MaxInFlightHwQueueBuffers set_MaxInFlightHwQueueBuffers[16..32],
+]}
+STRUCT!{#[repr(packed)] struct DXGK_NODEMETADATA {
+ EngineType: DXGK_ENGINE_TYPE,
+ FriendlyName: [WCHAR; DXGK_MAX_METADATA_NAME_LENGTH],
+ Flags: DXGK_NODEMETADATA_FLAGS,
+ GpuMmuSupported: BOOLEAN,
+ IoMmuSupported: BOOLEAN,
+}}
+//2100
+STRUCT!{#[repr(packed)] struct D3DKMT_NODEMETADATA {
+ NodeOrdinalAndAdapterIndex: UINT,
+ NodeData: DXGK_NODEMETADATA,
+}}