]>
Commit | Line | Data |
---|---|---|
5e7ed085 FG |
1 | #[link(name = "windows")] |
2 | extern "system" { | |
04454e1e | 3 | #[doc = "*Required features: `\"Win32_Graphics_DXCore\"`*"] |
5e7ed085 FG |
4 | pub fn DXCoreCreateAdapterFactory(riid: *const ::windows_sys::core::GUID, ppvfactory: *mut *mut ::core::ffi::c_void) -> ::windows_sys::core::HRESULT; |
5 | } | |
6 | pub const DXCORE_ADAPTER_ATTRIBUTE_D3D11_GRAPHICS: ::windows_sys::core::GUID = ::windows_sys::core::GUID { data1: 2353497707, data2: 30083, data3: 17677, data4: [240, 240, 107, 173, 168, 149, 175, 75] }; | |
7 | pub const DXCORE_ADAPTER_ATTRIBUTE_D3D12_CORE_COMPUTE: ::windows_sys::core::GUID = ::windows_sys::core::GUID { data1: 613296128, data2: 42899, data3: 18212, data4: [171, 170, 35, 166, 222, 27, 224, 144] }; | |
8 | pub const DXCORE_ADAPTER_ATTRIBUTE_D3D12_GRAPHICS: ::windows_sys::core::GUID = ::windows_sys::core::GUID { data1: 211734093, data2: 12142, data3: 20225, data4: [140, 150, 232, 158, 51, 27, 71, 177] }; | |
9 | #[repr(C)] | |
04454e1e | 10 | #[doc = "*Required features: `\"Win32_Graphics_DXCore\"`*"] |
5e7ed085 FG |
11 | pub struct DXCoreAdapterMemoryBudget { |
12 | pub budget: u64, | |
13 | pub currentUsage: u64, | |
14 | pub availableForReservation: u64, | |
15 | pub currentReservation: u64, | |
16 | } | |
17 | impl ::core::marker::Copy for DXCoreAdapterMemoryBudget {} | |
18 | impl ::core::clone::Clone for DXCoreAdapterMemoryBudget { | |
19 | fn clone(&self) -> Self { | |
20 | *self | |
21 | } | |
22 | } | |
23 | #[repr(C)] | |
04454e1e | 24 | #[doc = "*Required features: `\"Win32_Graphics_DXCore\"`*"] |
5e7ed085 FG |
25 | pub struct DXCoreAdapterMemoryBudgetNodeSegmentGroup { |
26 | pub nodeIndex: u32, | |
27 | pub segmentGroup: DXCoreSegmentGroup, | |
28 | } | |
29 | impl ::core::marker::Copy for DXCoreAdapterMemoryBudgetNodeSegmentGroup {} | |
30 | impl ::core::clone::Clone for DXCoreAdapterMemoryBudgetNodeSegmentGroup { | |
31 | fn clone(&self) -> Self { | |
32 | *self | |
33 | } | |
34 | } | |
04454e1e | 35 | #[doc = "*Required features: `\"Win32_Graphics_DXCore\"`*"] |
5e7ed085 | 36 | pub type DXCoreAdapterPreference = u32; |
04454e1e | 37 | #[doc = "*Required features: `\"Win32_Graphics_DXCore\"`*"] |
5e7ed085 | 38 | pub const Hardware: DXCoreAdapterPreference = 0u32; |
04454e1e | 39 | #[doc = "*Required features: `\"Win32_Graphics_DXCore\"`*"] |
5e7ed085 | 40 | pub const MinimumPower: DXCoreAdapterPreference = 1u32; |
04454e1e | 41 | #[doc = "*Required features: `\"Win32_Graphics_DXCore\"`*"] |
5e7ed085 | 42 | pub const HighPerformance: DXCoreAdapterPreference = 2u32; |
04454e1e | 43 | #[doc = "*Required features: `\"Win32_Graphics_DXCore\"`*"] |
5e7ed085 | 44 | pub type DXCoreAdapterProperty = u32; |
04454e1e | 45 | #[doc = "*Required features: `\"Win32_Graphics_DXCore\"`*"] |
5e7ed085 | 46 | pub const InstanceLuid: DXCoreAdapterProperty = 0u32; |
04454e1e | 47 | #[doc = "*Required features: `\"Win32_Graphics_DXCore\"`*"] |
5e7ed085 | 48 | pub const DriverVersion: DXCoreAdapterProperty = 1u32; |
04454e1e | 49 | #[doc = "*Required features: `\"Win32_Graphics_DXCore\"`*"] |
5e7ed085 | 50 | pub const DriverDescription: DXCoreAdapterProperty = 2u32; |
04454e1e | 51 | #[doc = "*Required features: `\"Win32_Graphics_DXCore\"`*"] |
5e7ed085 | 52 | pub const HardwareID: DXCoreAdapterProperty = 3u32; |
04454e1e | 53 | #[doc = "*Required features: `\"Win32_Graphics_DXCore\"`*"] |
5e7ed085 | 54 | pub const KmdModelVersion: DXCoreAdapterProperty = 4u32; |
04454e1e | 55 | #[doc = "*Required features: `\"Win32_Graphics_DXCore\"`*"] |
5e7ed085 | 56 | pub const ComputePreemptionGranularity: DXCoreAdapterProperty = 5u32; |
04454e1e | 57 | #[doc = "*Required features: `\"Win32_Graphics_DXCore\"`*"] |
5e7ed085 | 58 | pub const GraphicsPreemptionGranularity: DXCoreAdapterProperty = 6u32; |
04454e1e | 59 | #[doc = "*Required features: `\"Win32_Graphics_DXCore\"`*"] |
5e7ed085 | 60 | pub const DedicatedAdapterMemory: DXCoreAdapterProperty = 7u32; |
04454e1e | 61 | #[doc = "*Required features: `\"Win32_Graphics_DXCore\"`*"] |
5e7ed085 | 62 | pub const DedicatedSystemMemory: DXCoreAdapterProperty = 8u32; |
04454e1e | 63 | #[doc = "*Required features: `\"Win32_Graphics_DXCore\"`*"] |
5e7ed085 | 64 | pub const SharedSystemMemory: DXCoreAdapterProperty = 9u32; |
04454e1e | 65 | #[doc = "*Required features: `\"Win32_Graphics_DXCore\"`*"] |
5e7ed085 | 66 | pub const AcgCompatible: DXCoreAdapterProperty = 10u32; |
04454e1e | 67 | #[doc = "*Required features: `\"Win32_Graphics_DXCore\"`*"] |
5e7ed085 | 68 | pub const IsHardware: DXCoreAdapterProperty = 11u32; |
04454e1e | 69 | #[doc = "*Required features: `\"Win32_Graphics_DXCore\"`*"] |
5e7ed085 | 70 | pub const IsIntegrated: DXCoreAdapterProperty = 12u32; |
04454e1e | 71 | #[doc = "*Required features: `\"Win32_Graphics_DXCore\"`*"] |
5e7ed085 | 72 | pub const IsDetachable: DXCoreAdapterProperty = 13u32; |
04454e1e | 73 | #[doc = "*Required features: `\"Win32_Graphics_DXCore\"`*"] |
5e7ed085 | 74 | pub const HardwareIDParts: DXCoreAdapterProperty = 14u32; |
04454e1e | 75 | #[doc = "*Required features: `\"Win32_Graphics_DXCore\"`*"] |
5e7ed085 | 76 | pub type DXCoreAdapterState = u32; |
04454e1e | 77 | #[doc = "*Required features: `\"Win32_Graphics_DXCore\"`*"] |
5e7ed085 | 78 | pub const IsDriverUpdateInProgress: DXCoreAdapterState = 0u32; |
04454e1e | 79 | #[doc = "*Required features: `\"Win32_Graphics_DXCore\"`*"] |
5e7ed085 FG |
80 | pub const AdapterMemoryBudget: DXCoreAdapterState = 1u32; |
81 | #[repr(C)] | |
04454e1e | 82 | #[doc = "*Required features: `\"Win32_Graphics_DXCore\"`*"] |
5e7ed085 FG |
83 | pub struct DXCoreHardwareID { |
84 | pub vendorID: u32, | |
85 | pub deviceID: u32, | |
86 | pub subSysID: u32, | |
87 | pub revision: u32, | |
88 | } | |
89 | impl ::core::marker::Copy for DXCoreHardwareID {} | |
90 | impl ::core::clone::Clone for DXCoreHardwareID { | |
91 | fn clone(&self) -> Self { | |
92 | *self | |
93 | } | |
94 | } | |
95 | #[repr(C)] | |
04454e1e | 96 | #[doc = "*Required features: `\"Win32_Graphics_DXCore\"`*"] |
5e7ed085 FG |
97 | pub struct DXCoreHardwareIDParts { |
98 | pub vendorID: u32, | |
99 | pub deviceID: u32, | |
100 | pub subSystemID: u32, | |
101 | pub subVendorID: u32, | |
102 | pub revisionID: u32, | |
103 | } | |
104 | impl ::core::marker::Copy for DXCoreHardwareIDParts {} | |
105 | impl ::core::clone::Clone for DXCoreHardwareIDParts { | |
106 | fn clone(&self) -> Self { | |
107 | *self | |
108 | } | |
109 | } | |
04454e1e | 110 | #[doc = "*Required features: `\"Win32_Graphics_DXCore\"`*"] |
5e7ed085 | 111 | pub type DXCoreNotificationType = u32; |
04454e1e | 112 | #[doc = "*Required features: `\"Win32_Graphics_DXCore\"`*"] |
5e7ed085 | 113 | pub const AdapterListStale: DXCoreNotificationType = 0u32; |
04454e1e | 114 | #[doc = "*Required features: `\"Win32_Graphics_DXCore\"`*"] |
5e7ed085 | 115 | pub const AdapterNoLongerValid: DXCoreNotificationType = 1u32; |
04454e1e | 116 | #[doc = "*Required features: `\"Win32_Graphics_DXCore\"`*"] |
5e7ed085 | 117 | pub const AdapterBudgetChange: DXCoreNotificationType = 2u32; |
04454e1e | 118 | #[doc = "*Required features: `\"Win32_Graphics_DXCore\"`*"] |
5e7ed085 | 119 | pub const AdapterHardwareContentProtectionTeardown: DXCoreNotificationType = 3u32; |
04454e1e | 120 | #[doc = "*Required features: `\"Win32_Graphics_DXCore\"`*"] |
5e7ed085 | 121 | pub type DXCoreSegmentGroup = u32; |
04454e1e | 122 | #[doc = "*Required features: `\"Win32_Graphics_DXCore\"`*"] |
5e7ed085 | 123 | pub const Local: DXCoreSegmentGroup = 0u32; |
04454e1e | 124 | #[doc = "*Required features: `\"Win32_Graphics_DXCore\"`*"] |
5e7ed085 FG |
125 | pub const NonLocal: DXCoreSegmentGroup = 1u32; |
126 | pub type IDXCoreAdapter = *mut ::core::ffi::c_void; | |
127 | pub type IDXCoreAdapterFactory = *mut ::core::ffi::c_void; | |
128 | pub type IDXCoreAdapterList = *mut ::core::ffi::c_void; | |
04454e1e | 129 | #[doc = "*Required features: `\"Win32_Graphics_DXCore\"`*"] |
5e7ed085 | 130 | pub type PFN_DXCORE_NOTIFICATION_CALLBACK = ::core::option::Option<unsafe extern "system" fn(notificationtype: DXCoreNotificationType, object: ::windows_sys::core::IUnknown, context: *const ::core::ffi::c_void)>; |
04454e1e | 131 | #[doc = "*Required features: `\"Win32_Graphics_DXCore\"`*"] |
5e7ed085 | 132 | pub const _FACDXCORE: u32 = 2176u32; |