1#[repr(C)]
4#[derive(Copy, Clone, Debug, Default, Eq, Hash, Ord, PartialEq, PartialOrd)]
5pub struct __BindgenBitfieldUnit<Storage> {
6 storage: Storage,
7}
8impl<Storage> __BindgenBitfieldUnit<Storage> {
9 #[inline]
10 pub const fn new(storage: Storage) -> Self {
11 Self { storage }
12 }
13}
14impl<Storage> __BindgenBitfieldUnit<Storage>
15where
16 Storage: AsRef<[u8]> + AsMut<[u8]>,
17{
18 #[inline]
19 pub fn get_bit(&self, index: usize) -> bool {
20 debug_assert!(index / 8 < self.storage.as_ref().len());
21 let byte_index = index / 8;
22 let byte = self.storage.as_ref()[byte_index];
23 let bit_index = if cfg!(target_endian = "big") {
24 7 - (index % 8)
25 } else {
26 index % 8
27 };
28 let mask = 1 << bit_index;
29 byte & mask == mask
30 }
31 #[inline]
32 pub fn set_bit(&mut self, index: usize, val: bool) {
33 debug_assert!(index / 8 < self.storage.as_ref().len());
34 let byte_index = index / 8;
35 let byte = &mut self.storage.as_mut()[byte_index];
36 let bit_index = if cfg!(target_endian = "big") {
37 7 - (index % 8)
38 } else {
39 index % 8
40 };
41 let mask = 1 << bit_index;
42 if val {
43 *byte |= mask;
44 } else {
45 *byte &= !mask;
46 }
47 }
48 #[inline]
49 pub fn get(&self, bit_offset: usize, bit_width: u8) -> u64 {
50 debug_assert!(bit_width <= 64);
51 debug_assert!(bit_offset / 8 < self.storage.as_ref().len());
52 debug_assert!(
53 (bit_offset + (bit_width as usize)) / 8
54 <= self.storage.as_ref().len()
55 );
56 let mut val = 0;
57 for i in 0..(bit_width as usize) {
58 if self.get_bit(i + bit_offset) {
59 let index = if cfg!(target_endian = "big") {
60 bit_width as usize - 1 - i
61 } else {
62 i
63 };
64 val |= 1 << index;
65 }
66 }
67 val
68 }
69 #[inline]
70 pub fn set(&mut self, bit_offset: usize, bit_width: u8, val: u64) {
71 debug_assert!(bit_width <= 64);
72 debug_assert!(bit_offset / 8 < self.storage.as_ref().len());
73 debug_assert!(
74 (bit_offset + (bit_width as usize)) / 8
75 <= self.storage.as_ref().len()
76 );
77 for i in 0..(bit_width as usize) {
78 let mask = 1 << i;
79 let val_bit_is_set = val & mask == mask;
80 let index = if cfg!(target_endian = "big") {
81 bit_width as usize - 1 - i
82 } else {
83 i
84 };
85 self.set_bit(index + bit_offset, val_bit_is_set);
86 }
87 }
88}
89pub const FACILITY_DXGI: u32 = 2170;
90pub const FACILITY_DXGI_DDI: u32 = 2171;
91pub const DXGI_STANDARD_MULTISAMPLE_QUALITY_PATTERN: u32 = 4294967295;
92pub const DXGI_CENTER_MULTISAMPLE_QUALITY_PATTERN: u32 = 4294967294;
93pub const DXGI_FORMAT_DEFINED: u32 = 1;
94pub const D3D12_16BIT_INDEX_STRIP_CUT_VALUE: u32 = 65535;
95pub const D3D12_32BIT_INDEX_STRIP_CUT_VALUE: u32 = 4294967295;
96pub const D3D12_8BIT_INDEX_STRIP_CUT_VALUE: u32 = 255;
97pub const D3D12_APPEND_ALIGNED_ELEMENT: u32 = 4294967295;
98pub const D3D12_ARRAY_AXIS_ADDRESS_RANGE_BIT_COUNT: u32 = 9;
99pub const D3D12_CLIP_OR_CULL_DISTANCE_COUNT: u32 = 8;
100pub const D3D12_CLIP_OR_CULL_DISTANCE_ELEMENT_COUNT: u32 = 2;
101pub const D3D12_COMMONSHADER_CONSTANT_BUFFER_API_SLOT_COUNT: u32 = 14;
102pub const D3D12_COMMONSHADER_CONSTANT_BUFFER_COMPONENTS: u32 = 4;
103pub const D3D12_COMMONSHADER_CONSTANT_BUFFER_COMPONENT_BIT_COUNT: u32 = 32;
104pub const D3D12_COMMONSHADER_CONSTANT_BUFFER_HW_SLOT_COUNT: u32 = 15;
105pub const D3D12_COMMONSHADER_CONSTANT_BUFFER_PARTIAL_UPDATE_EXTENTS_BYTE_ALIGNMENT : u32 = 16 ;
106pub const D3D12_COMMONSHADER_CONSTANT_BUFFER_REGISTER_COMPONENTS: u32 = 4;
107pub const D3D12_COMMONSHADER_CONSTANT_BUFFER_REGISTER_COUNT: u32 = 15;
108pub const D3D12_COMMONSHADER_CONSTANT_BUFFER_REGISTER_READS_PER_INST: u32 = 1;
109pub const D3D12_COMMONSHADER_CONSTANT_BUFFER_REGISTER_READ_PORTS: u32 = 1;
110pub const D3D12_COMMONSHADER_FLOWCONTROL_NESTING_LIMIT: u32 = 64;
111pub const D3D12_COMMONSHADER_IMMEDIATE_CONSTANT_BUFFER_REGISTER_COMPONENTS:
112 u32 = 4;
113pub const D3D12_COMMONSHADER_IMMEDIATE_CONSTANT_BUFFER_REGISTER_COUNT: u32 = 1;
114pub const D3D12_COMMONSHADER_IMMEDIATE_CONSTANT_BUFFER_REGISTER_READS_PER_INST : u32 = 1 ;
115pub const D3D12_COMMONSHADER_IMMEDIATE_CONSTANT_BUFFER_REGISTER_READ_PORTS:
116 u32 = 1;
117pub const D3D12_COMMONSHADER_IMMEDIATE_VALUE_COMPONENT_BIT_COUNT: u32 = 32;
118pub const D3D12_COMMONSHADER_INPUT_RESOURCE_REGISTER_COMPONENTS: u32 = 1;
119pub const D3D12_COMMONSHADER_INPUT_RESOURCE_REGISTER_COUNT: u32 = 128;
120pub const D3D12_COMMONSHADER_INPUT_RESOURCE_REGISTER_READS_PER_INST: u32 = 1;
121pub const D3D12_COMMONSHADER_INPUT_RESOURCE_REGISTER_READ_PORTS: u32 = 1;
122pub const D3D12_COMMONSHADER_INPUT_RESOURCE_SLOT_COUNT: u32 = 128;
123pub const D3D12_COMMONSHADER_SAMPLER_REGISTER_COMPONENTS: u32 = 1;
124pub const D3D12_COMMONSHADER_SAMPLER_REGISTER_COUNT: u32 = 16;
125pub const D3D12_COMMONSHADER_SAMPLER_REGISTER_READS_PER_INST: u32 = 1;
126pub const D3D12_COMMONSHADER_SAMPLER_REGISTER_READ_PORTS: u32 = 1;
127pub const D3D12_COMMONSHADER_SAMPLER_SLOT_COUNT: u32 = 16;
128pub const D3D12_COMMONSHADER_SUBROUTINE_NESTING_LIMIT: u32 = 32;
129pub const D3D12_COMMONSHADER_TEMP_REGISTER_COMPONENTS: u32 = 4;
130pub const D3D12_COMMONSHADER_TEMP_REGISTER_COMPONENT_BIT_COUNT: u32 = 32;
131pub const D3D12_COMMONSHADER_TEMP_REGISTER_COUNT: u32 = 4096;
132pub const D3D12_COMMONSHADER_TEMP_REGISTER_READS_PER_INST: u32 = 3;
133pub const D3D12_COMMONSHADER_TEMP_REGISTER_READ_PORTS: u32 = 3;
134pub const D3D12_COMMONSHADER_TEXCOORD_RANGE_REDUCTION_MAX: u32 = 10;
135pub const D3D12_COMMONSHADER_TEXCOORD_RANGE_REDUCTION_MIN: i32 = -10;
136pub const D3D12_COMMONSHADER_TEXEL_OFFSET_MAX_NEGATIVE: i32 = -8;
137pub const D3D12_COMMONSHADER_TEXEL_OFFSET_MAX_POSITIVE: u32 = 7;
138pub const D3D12_CONSTANT_BUFFER_DATA_PLACEMENT_ALIGNMENT: u32 = 256;
139pub const D3D12_CS_4_X_BUCKET00_MAX_BYTES_TGSM_WRITABLE_PER_THREAD: u32 = 256;
140pub const D3D12_CS_4_X_BUCKET00_MAX_NUM_THREADS_PER_GROUP: u32 = 64;
141pub const D3D12_CS_4_X_BUCKET01_MAX_BYTES_TGSM_WRITABLE_PER_THREAD: u32 = 240;
142pub const D3D12_CS_4_X_BUCKET01_MAX_NUM_THREADS_PER_GROUP: u32 = 68;
143pub const D3D12_CS_4_X_BUCKET02_MAX_BYTES_TGSM_WRITABLE_PER_THREAD: u32 = 224;
144pub const D3D12_CS_4_X_BUCKET02_MAX_NUM_THREADS_PER_GROUP: u32 = 72;
145pub const D3D12_CS_4_X_BUCKET03_MAX_BYTES_TGSM_WRITABLE_PER_THREAD: u32 = 208;
146pub const D3D12_CS_4_X_BUCKET03_MAX_NUM_THREADS_PER_GROUP: u32 = 76;
147pub const D3D12_CS_4_X_BUCKET04_MAX_BYTES_TGSM_WRITABLE_PER_THREAD: u32 = 192;
148pub const D3D12_CS_4_X_BUCKET04_MAX_NUM_THREADS_PER_GROUP: u32 = 84;
149pub const D3D12_CS_4_X_BUCKET05_MAX_BYTES_TGSM_WRITABLE_PER_THREAD: u32 = 176;
150pub const D3D12_CS_4_X_BUCKET05_MAX_NUM_THREADS_PER_GROUP: u32 = 92;
151pub const D3D12_CS_4_X_BUCKET06_MAX_BYTES_TGSM_WRITABLE_PER_THREAD: u32 = 160;
152pub const D3D12_CS_4_X_BUCKET06_MAX_NUM_THREADS_PER_GROUP: u32 = 100;
153pub const D3D12_CS_4_X_BUCKET07_MAX_BYTES_TGSM_WRITABLE_PER_THREAD: u32 = 144;
154pub const D3D12_CS_4_X_BUCKET07_MAX_NUM_THREADS_PER_GROUP: u32 = 112;
155pub const D3D12_CS_4_X_BUCKET08_MAX_BYTES_TGSM_WRITABLE_PER_THREAD: u32 = 128;
156pub const D3D12_CS_4_X_BUCKET08_MAX_NUM_THREADS_PER_GROUP: u32 = 128;
157pub const D3D12_CS_4_X_BUCKET09_MAX_BYTES_TGSM_WRITABLE_PER_THREAD: u32 = 112;
158pub const D3D12_CS_4_X_BUCKET09_MAX_NUM_THREADS_PER_GROUP: u32 = 144;
159pub const D3D12_CS_4_X_BUCKET10_MAX_BYTES_TGSM_WRITABLE_PER_THREAD: u32 = 96;
160pub const D3D12_CS_4_X_BUCKET10_MAX_NUM_THREADS_PER_GROUP: u32 = 168;
161pub const D3D12_CS_4_X_BUCKET11_MAX_BYTES_TGSM_WRITABLE_PER_THREAD: u32 = 80;
162pub const D3D12_CS_4_X_BUCKET11_MAX_NUM_THREADS_PER_GROUP: u32 = 204;
163pub const D3D12_CS_4_X_BUCKET12_MAX_BYTES_TGSM_WRITABLE_PER_THREAD: u32 = 64;
164pub const D3D12_CS_4_X_BUCKET12_MAX_NUM_THREADS_PER_GROUP: u32 = 256;
165pub const D3D12_CS_4_X_BUCKET13_MAX_BYTES_TGSM_WRITABLE_PER_THREAD: u32 = 48;
166pub const D3D12_CS_4_X_BUCKET13_MAX_NUM_THREADS_PER_GROUP: u32 = 340;
167pub const D3D12_CS_4_X_BUCKET14_MAX_BYTES_TGSM_WRITABLE_PER_THREAD: u32 = 32;
168pub const D3D12_CS_4_X_BUCKET14_MAX_NUM_THREADS_PER_GROUP: u32 = 512;
169pub const D3D12_CS_4_X_BUCKET15_MAX_BYTES_TGSM_WRITABLE_PER_THREAD: u32 = 16;
170pub const D3D12_CS_4_X_BUCKET15_MAX_NUM_THREADS_PER_GROUP: u32 = 768;
171pub const D3D12_CS_4_X_DISPATCH_MAX_THREAD_GROUPS_IN_Z_DIMENSION: u32 = 1;
172pub const D3D12_CS_4_X_RAW_UAV_BYTE_ALIGNMENT: u32 = 256;
173pub const D3D12_CS_4_X_THREAD_GROUP_MAX_THREADS_PER_GROUP: u32 = 768;
174pub const D3D12_CS_4_X_THREAD_GROUP_MAX_X: u32 = 768;
175pub const D3D12_CS_4_X_THREAD_GROUP_MAX_Y: u32 = 768;
176pub const D3D12_CS_4_X_UAV_REGISTER_COUNT: u32 = 1;
177pub const D3D12_CS_DISPATCH_MAX_THREAD_GROUPS_PER_DIMENSION: u32 = 65535;
178pub const D3D12_CS_TGSM_REGISTER_COUNT: u32 = 8192;
179pub const D3D12_CS_TGSM_REGISTER_READS_PER_INST: u32 = 1;
180pub const D3D12_CS_TGSM_RESOURCE_REGISTER_COMPONENTS: u32 = 1;
181pub const D3D12_CS_TGSM_RESOURCE_REGISTER_READ_PORTS: u32 = 1;
182pub const D3D12_CS_THREADGROUPID_REGISTER_COMPONENTS: u32 = 3;
183pub const D3D12_CS_THREADGROUPID_REGISTER_COUNT: u32 = 1;
184pub const D3D12_CS_THREADIDINGROUPFLATTENED_REGISTER_COMPONENTS: u32 = 1;
185pub const D3D12_CS_THREADIDINGROUPFLATTENED_REGISTER_COUNT: u32 = 1;
186pub const D3D12_CS_THREADIDINGROUP_REGISTER_COMPONENTS: u32 = 3;
187pub const D3D12_CS_THREADIDINGROUP_REGISTER_COUNT: u32 = 1;
188pub const D3D12_CS_THREADID_REGISTER_COMPONENTS: u32 = 3;
189pub const D3D12_CS_THREADID_REGISTER_COUNT: u32 = 1;
190pub const D3D12_CS_THREAD_GROUP_MAX_THREADS_PER_GROUP: u32 = 1024;
191pub const D3D12_CS_THREAD_GROUP_MAX_X: u32 = 1024;
192pub const D3D12_CS_THREAD_GROUP_MAX_Y: u32 = 1024;
193pub const D3D12_CS_THREAD_GROUP_MAX_Z: u32 = 64;
194pub const D3D12_CS_THREAD_GROUP_MIN_X: u32 = 1;
195pub const D3D12_CS_THREAD_GROUP_MIN_Y: u32 = 1;
196pub const D3D12_CS_THREAD_GROUP_MIN_Z: u32 = 1;
197pub const D3D12_CS_THREAD_LOCAL_TEMP_REGISTER_POOL: u32 = 16384;
198pub const D3D12_DEFAULT_BLEND_FACTOR_ALPHA: f64 = 1.0;
199pub const D3D12_DEFAULT_BLEND_FACTOR_BLUE: f64 = 1.0;
200pub const D3D12_DEFAULT_BLEND_FACTOR_GREEN: f64 = 1.0;
201pub const D3D12_DEFAULT_BLEND_FACTOR_RED: f64 = 1.0;
202pub const D3D12_DEFAULT_BORDER_COLOR_COMPONENT: f64 = 0.0;
203pub const D3D12_DEFAULT_DEPTH_BIAS: u32 = 0;
204pub const D3D12_DEFAULT_DEPTH_BIAS_CLAMP: f64 = 0.0;
205pub const D3D12_DEFAULT_MAX_ANISOTROPY: u32 = 16;
206pub const D3D12_DEFAULT_MIP_LOD_BIAS: f64 = 0.0;
207pub const D3D12_DEFAULT_MSAA_RESOURCE_PLACEMENT_ALIGNMENT: u32 = 4194304;
208pub const D3D12_DEFAULT_RENDER_TARGET_ARRAY_INDEX: u32 = 0;
209pub const D3D12_DEFAULT_RESOURCE_PLACEMENT_ALIGNMENT: u32 = 65536;
210pub const D3D12_DEFAULT_SAMPLE_MASK: u32 = 4294967295;
211pub const D3D12_DEFAULT_SCISSOR_ENDX: u32 = 0;
212pub const D3D12_DEFAULT_SCISSOR_ENDY: u32 = 0;
213pub const D3D12_DEFAULT_SCISSOR_STARTX: u32 = 0;
214pub const D3D12_DEFAULT_SCISSOR_STARTY: u32 = 0;
215pub const D3D12_DEFAULT_SLOPE_SCALED_DEPTH_BIAS: f64 = 0.0;
216pub const D3D12_DEFAULT_STENCIL_READ_MASK: u32 = 255;
217pub const D3D12_DEFAULT_STENCIL_REFERENCE: u32 = 0;
218pub const D3D12_DEFAULT_STENCIL_WRITE_MASK: u32 = 255;
219pub const D3D12_DEFAULT_VIEWPORT_AND_SCISSORRECT_INDEX: u32 = 0;
220pub const D3D12_DEFAULT_VIEWPORT_HEIGHT: u32 = 0;
221pub const D3D12_DEFAULT_VIEWPORT_MAX_DEPTH: f64 = 0.0;
222pub const D3D12_DEFAULT_VIEWPORT_MIN_DEPTH: f64 = 0.0;
223pub const D3D12_DEFAULT_VIEWPORT_TOPLEFTX: u32 = 0;
224pub const D3D12_DEFAULT_VIEWPORT_TOPLEFTY: u32 = 0;
225pub const D3D12_DEFAULT_VIEWPORT_WIDTH: u32 = 0;
226pub const D3D12_DESCRIPTOR_RANGE_OFFSET_APPEND: u32 = 4294967295;
227pub const D3D12_DRIVER_RESERVED_REGISTER_SPACE_VALUES_END: u32 = 4294967287;
228pub const D3D12_DRIVER_RESERVED_REGISTER_SPACE_VALUES_START: u32 = 4294967280;
229pub const D3D12_DS_INPUT_CONTROL_POINTS_MAX_TOTAL_SCALARS: u32 = 3968;
230pub const D3D12_DS_INPUT_CONTROL_POINT_REGISTER_COMPONENTS: u32 = 4;
231pub const D3D12_DS_INPUT_CONTROL_POINT_REGISTER_COMPONENT_BIT_COUNT: u32 = 32;
232pub const D3D12_DS_INPUT_CONTROL_POINT_REGISTER_COUNT: u32 = 32;
233pub const D3D12_DS_INPUT_CONTROL_POINT_REGISTER_READS_PER_INST: u32 = 2;
234pub const D3D12_DS_INPUT_CONTROL_POINT_REGISTER_READ_PORTS: u32 = 1;
235pub const D3D12_DS_INPUT_DOMAIN_POINT_REGISTER_COMPONENTS: u32 = 3;
236pub const D3D12_DS_INPUT_DOMAIN_POINT_REGISTER_COMPONENT_BIT_COUNT: u32 = 32;
237pub const D3D12_DS_INPUT_DOMAIN_POINT_REGISTER_COUNT: u32 = 1;
238pub const D3D12_DS_INPUT_DOMAIN_POINT_REGISTER_READS_PER_INST: u32 = 2;
239pub const D3D12_DS_INPUT_DOMAIN_POINT_REGISTER_READ_PORTS: u32 = 1;
240pub const D3D12_DS_INPUT_PATCH_CONSTANT_REGISTER_COMPONENTS: u32 = 4;
241pub const D3D12_DS_INPUT_PATCH_CONSTANT_REGISTER_COMPONENT_BIT_COUNT: u32 = 32;
242pub const D3D12_DS_INPUT_PATCH_CONSTANT_REGISTER_COUNT: u32 = 32;
243pub const D3D12_DS_INPUT_PATCH_CONSTANT_REGISTER_READS_PER_INST: u32 = 2;
244pub const D3D12_DS_INPUT_PATCH_CONSTANT_REGISTER_READ_PORTS: u32 = 1;
245pub const D3D12_DS_INPUT_PRIMITIVE_ID_REGISTER_COMPONENTS: u32 = 1;
246pub const D3D12_DS_INPUT_PRIMITIVE_ID_REGISTER_COMPONENT_BIT_COUNT: u32 = 32;
247pub const D3D12_DS_INPUT_PRIMITIVE_ID_REGISTER_COUNT: u32 = 1;
248pub const D3D12_DS_INPUT_PRIMITIVE_ID_REGISTER_READS_PER_INST: u32 = 2;
249pub const D3D12_DS_INPUT_PRIMITIVE_ID_REGISTER_READ_PORTS: u32 = 1;
250pub const D3D12_DS_OUTPUT_REGISTER_COMPONENTS: u32 = 4;
251pub const D3D12_DS_OUTPUT_REGISTER_COMPONENT_BIT_COUNT: u32 = 32;
252pub const D3D12_DS_OUTPUT_REGISTER_COUNT: u32 = 32;
253pub const D3D12_FLOAT16_FUSED_TOLERANCE_IN_ULP: f64 = 0.6;
254pub const D3D12_FLOAT32_TO_INTEGER_TOLERANCE_IN_ULP: f64 = 0.6;
255pub const D3D12_FLOAT_TO_SRGB_EXPONENT_DENOMINATOR: f64 = 2.4;
256pub const D3D12_FLOAT_TO_SRGB_EXPONENT_NUMERATOR: f64 = 1.0;
257pub const D3D12_FLOAT_TO_SRGB_OFFSET: f64 = 0.055;
258pub const D3D12_FLOAT_TO_SRGB_SCALE_1: f64 = 12.92;
259pub const D3D12_FLOAT_TO_SRGB_SCALE_2: f64 = 1.055;
260pub const D3D12_FLOAT_TO_SRGB_THRESHOLD: f64 = 0.0031308;
261pub const D3D12_FTOI_INSTRUCTION_MAX_INPUT: f64 = 2147483647.999;
262pub const D3D12_FTOI_INSTRUCTION_MIN_INPUT: f64 = -2147483648.999;
263pub const D3D12_FTOU_INSTRUCTION_MAX_INPUT: f64 = 4294967295.999;
264pub const D3D12_FTOU_INSTRUCTION_MIN_INPUT: f64 = 0.0;
265pub const D3D12_GS_INPUT_INSTANCE_ID_READS_PER_INST: u32 = 2;
266pub const D3D12_GS_INPUT_INSTANCE_ID_READ_PORTS: u32 = 1;
267pub const D3D12_GS_INPUT_INSTANCE_ID_REGISTER_COMPONENTS: u32 = 1;
268pub const D3D12_GS_INPUT_INSTANCE_ID_REGISTER_COMPONENT_BIT_COUNT: u32 = 32;
269pub const D3D12_GS_INPUT_INSTANCE_ID_REGISTER_COUNT: u32 = 1;
270pub const D3D12_GS_INPUT_PRIM_CONST_REGISTER_COMPONENTS: u32 = 1;
271pub const D3D12_GS_INPUT_PRIM_CONST_REGISTER_COMPONENT_BIT_COUNT: u32 = 32;
272pub const D3D12_GS_INPUT_PRIM_CONST_REGISTER_COUNT: u32 = 1;
273pub const D3D12_GS_INPUT_PRIM_CONST_REGISTER_READS_PER_INST: u32 = 2;
274pub const D3D12_GS_INPUT_PRIM_CONST_REGISTER_READ_PORTS: u32 = 1;
275pub const D3D12_GS_INPUT_REGISTER_COMPONENTS: u32 = 4;
276pub const D3D12_GS_INPUT_REGISTER_COMPONENT_BIT_COUNT: u32 = 32;
277pub const D3D12_GS_INPUT_REGISTER_COUNT: u32 = 32;
278pub const D3D12_GS_INPUT_REGISTER_READS_PER_INST: u32 = 2;
279pub const D3D12_GS_INPUT_REGISTER_READ_PORTS: u32 = 1;
280pub const D3D12_GS_INPUT_REGISTER_VERTICES: u32 = 32;
281pub const D3D12_GS_MAX_INSTANCE_COUNT: u32 = 32;
282pub const D3D12_GS_MAX_OUTPUT_VERTEX_COUNT_ACROSS_INSTANCES: u32 = 1024;
283pub const D3D12_GS_OUTPUT_ELEMENTS: u32 = 32;
284pub const D3D12_GS_OUTPUT_REGISTER_COMPONENTS: u32 = 4;
285pub const D3D12_GS_OUTPUT_REGISTER_COMPONENT_BIT_COUNT: u32 = 32;
286pub const D3D12_GS_OUTPUT_REGISTER_COUNT: u32 = 32;
287pub const D3D12_HS_CONTROL_POINT_PHASE_INPUT_REGISTER_COUNT: u32 = 32;
288pub const D3D12_HS_CONTROL_POINT_PHASE_OUTPUT_REGISTER_COUNT: u32 = 32;
289pub const D3D12_HS_CONTROL_POINT_REGISTER_COMPONENTS: u32 = 4;
290pub const D3D12_HS_CONTROL_POINT_REGISTER_COMPONENT_BIT_COUNT: u32 = 32;
291pub const D3D12_HS_CONTROL_POINT_REGISTER_READS_PER_INST: u32 = 2;
292pub const D3D12_HS_CONTROL_POINT_REGISTER_READ_PORTS: u32 = 1;
293pub const D3D12_HS_FORK_PHASE_INSTANCE_COUNT_UPPER_BOUND: u32 = 4294967295;
294pub const D3D12_HS_INPUT_FORK_INSTANCE_ID_REGISTER_COMPONENTS: u32 = 1;
295pub const D3D12_HS_INPUT_FORK_INSTANCE_ID_REGISTER_COMPONENT_BIT_COUNT: u32 =
296 32;
297pub const D3D12_HS_INPUT_FORK_INSTANCE_ID_REGISTER_COUNT: u32 = 1;
298pub const D3D12_HS_INPUT_FORK_INSTANCE_ID_REGISTER_READS_PER_INST: u32 = 2;
299pub const D3D12_HS_INPUT_FORK_INSTANCE_ID_REGISTER_READ_PORTS: u32 = 1;
300pub const D3D12_HS_INPUT_JOIN_INSTANCE_ID_REGISTER_COMPONENTS: u32 = 1;
301pub const D3D12_HS_INPUT_JOIN_INSTANCE_ID_REGISTER_COMPONENT_BIT_COUNT: u32 =
302 32;
303pub const D3D12_HS_INPUT_JOIN_INSTANCE_ID_REGISTER_COUNT: u32 = 1;
304pub const D3D12_HS_INPUT_JOIN_INSTANCE_ID_REGISTER_READS_PER_INST: u32 = 2;
305pub const D3D12_HS_INPUT_JOIN_INSTANCE_ID_REGISTER_READ_PORTS: u32 = 1;
306pub const D3D12_HS_INPUT_PRIMITIVE_ID_REGISTER_COMPONENTS: u32 = 1;
307pub const D3D12_HS_INPUT_PRIMITIVE_ID_REGISTER_COMPONENT_BIT_COUNT: u32 = 32;
308pub const D3D12_HS_INPUT_PRIMITIVE_ID_REGISTER_COUNT: u32 = 1;
309pub const D3D12_HS_INPUT_PRIMITIVE_ID_REGISTER_READS_PER_INST: u32 = 2;
310pub const D3D12_HS_INPUT_PRIMITIVE_ID_REGISTER_READ_PORTS: u32 = 1;
311pub const D3D12_HS_JOIN_PHASE_INSTANCE_COUNT_UPPER_BOUND: u32 = 4294967295;
312pub const D3D12_HS_MAXTESSFACTOR_LOWER_BOUND: f64 = 1.0;
313pub const D3D12_HS_MAXTESSFACTOR_UPPER_BOUND: f64 = 64.0;
314pub const D3D12_HS_OUTPUT_CONTROL_POINTS_MAX_TOTAL_SCALARS: u32 = 3968;
315pub const D3D12_HS_OUTPUT_CONTROL_POINT_ID_REGISTER_COMPONENTS: u32 = 1;
316pub const D3D12_HS_OUTPUT_CONTROL_POINT_ID_REGISTER_COMPONENT_BIT_COUNT: u32 =
317 32;
318pub const D3D12_HS_OUTPUT_CONTROL_POINT_ID_REGISTER_COUNT: u32 = 1;
319pub const D3D12_HS_OUTPUT_CONTROL_POINT_ID_REGISTER_READS_PER_INST: u32 = 2;
320pub const D3D12_HS_OUTPUT_CONTROL_POINT_ID_REGISTER_READ_PORTS: u32 = 1;
321pub const D3D12_HS_OUTPUT_PATCH_CONSTANT_REGISTER_COMPONENTS: u32 = 4;
322pub const D3D12_HS_OUTPUT_PATCH_CONSTANT_REGISTER_COMPONENT_BIT_COUNT: u32 = 32;
323pub const D3D12_HS_OUTPUT_PATCH_CONSTANT_REGISTER_COUNT: u32 = 32;
324pub const D3D12_HS_OUTPUT_PATCH_CONSTANT_REGISTER_READS_PER_INST: u32 = 2;
325pub const D3D12_HS_OUTPUT_PATCH_CONSTANT_REGISTER_READ_PORTS: u32 = 1;
326pub const D3D12_HS_OUTPUT_PATCH_CONSTANT_REGISTER_SCALAR_COMPONENTS: u32 = 128;
327pub const D3D12_IA_DEFAULT_INDEX_BUFFER_OFFSET_IN_BYTES: u32 = 0;
328pub const D3D12_IA_DEFAULT_PRIMITIVE_TOPOLOGY: u32 = 0;
329pub const D3D12_IA_DEFAULT_VERTEX_BUFFER_OFFSET_IN_BYTES: u32 = 0;
330pub const D3D12_IA_INDEX_INPUT_RESOURCE_SLOT_COUNT: u32 = 1;
331pub const D3D12_IA_INSTANCE_ID_BIT_COUNT: u32 = 32;
332pub const D3D12_IA_INTEGER_ARITHMETIC_BIT_COUNT: u32 = 32;
333pub const D3D12_IA_PATCH_MAX_CONTROL_POINT_COUNT: u32 = 32;
334pub const D3D12_IA_PRIMITIVE_ID_BIT_COUNT: u32 = 32;
335pub const D3D12_IA_VERTEX_ID_BIT_COUNT: u32 = 32;
336pub const D3D12_IA_VERTEX_INPUT_RESOURCE_SLOT_COUNT: u32 = 32;
337pub const D3D12_IA_VERTEX_INPUT_STRUCTURE_ELEMENTS_COMPONENTS: u32 = 128;
338pub const D3D12_IA_VERTEX_INPUT_STRUCTURE_ELEMENT_COUNT: u32 = 32;
339pub const D3D12_INTEGER_DIVIDE_BY_ZERO_QUOTIENT: u32 = 4294967295;
340pub const D3D12_INTEGER_DIVIDE_BY_ZERO_REMAINDER: u32 = 4294967295;
341pub const D3D12_KEEP_RENDER_TARGETS_AND_DEPTH_STENCIL: u32 = 4294967295;
342pub const D3D12_KEEP_UNORDERED_ACCESS_VIEWS: u32 = 4294967295;
343pub const D3D12_LINEAR_GAMMA: f64 = 1.0;
344pub const D3D12_MAJOR_VERSION: u32 = 12;
345pub const D3D12_MAX_BORDER_COLOR_COMPONENT: f64 = 1.0;
346pub const D3D12_MAX_DEPTH: f64 = 1.0;
347pub const D3D12_MAX_LIVE_STATIC_SAMPLERS: u32 = 2032;
348pub const D3D12_MAX_MAXANISOTROPY: u32 = 16;
349pub const D3D12_MAX_MULTISAMPLE_SAMPLE_COUNT: u32 = 32;
350pub const D3D12_MAX_ROOT_COST: u32 = 64;
351pub const D3D12_MAX_SHADER_VISIBLE_DESCRIPTOR_HEAP_SIZE_TIER_1: u32 = 1000000;
352pub const D3D12_MAX_SHADER_VISIBLE_DESCRIPTOR_HEAP_SIZE_TIER_2: u32 = 1000000;
353pub const D3D12_MAX_SHADER_VISIBLE_SAMPLER_HEAP_SIZE: u32 = 2048;
354pub const D3D12_MAX_TEXTURE_DIMENSION_2_TO_EXP: u32 = 17;
355pub const D3D12_MAX_VIEW_INSTANCE_COUNT: u32 = 4;
356pub const D3D12_MINOR_VERSION: u32 = 0;
357pub const D3D12_MIN_BORDER_COLOR_COMPONENT: f64 = 0.0;
358pub const D3D12_MIN_DEPTH: f64 = 0.0;
359pub const D3D12_MIN_MAXANISOTROPY: u32 = 0;
360pub const D3D12_MIP_LOD_BIAS_MAX: f64 = 15.99;
361pub const D3D12_MIP_LOD_BIAS_MIN: f64 = -16.0;
362pub const D3D12_MIP_LOD_FRACTIONAL_BIT_COUNT: u32 = 8;
363pub const D3D12_MIP_LOD_RANGE_BIT_COUNT: u32 = 8;
364pub const D3D12_MULTISAMPLE_ANTIALIAS_LINE_WIDTH: f64 = 1.4;
365pub const D3D12_NONSAMPLE_FETCH_OUT_OF_RANGE_ACCESS_RESULT: u32 = 0;
366pub const D3D12_OS_RESERVED_REGISTER_SPACE_VALUES_END: u32 = 4294967295;
367pub const D3D12_OS_RESERVED_REGISTER_SPACE_VALUES_START: u32 = 4294967288;
368pub const D3D12_PACKED_TILE: u32 = 4294967295;
369pub const D3D12_PIXEL_ADDRESS_RANGE_BIT_COUNT: u32 = 15;
370pub const D3D12_PREVIEW_SDK_VERSION: u32 = 700;
371pub const D3D12_PRE_SCISSOR_PIXEL_ADDRESS_RANGE_BIT_COUNT: u32 = 16;
372pub const D3D12_PS_CS_UAV_REGISTER_COMPONENTS: u32 = 1;
373pub const D3D12_PS_CS_UAV_REGISTER_COUNT: u32 = 8;
374pub const D3D12_PS_CS_UAV_REGISTER_READS_PER_INST: u32 = 1;
375pub const D3D12_PS_CS_UAV_REGISTER_READ_PORTS: u32 = 1;
376pub const D3D12_PS_FRONTFACING_DEFAULT_VALUE: u32 = 4294967295;
377pub const D3D12_PS_FRONTFACING_FALSE_VALUE: u32 = 0;
378pub const D3D12_PS_FRONTFACING_TRUE_VALUE: u32 = 4294967295;
379pub const D3D12_PS_INPUT_REGISTER_COMPONENTS: u32 = 4;
380pub const D3D12_PS_INPUT_REGISTER_COMPONENT_BIT_COUNT: u32 = 32;
381pub const D3D12_PS_INPUT_REGISTER_COUNT: u32 = 32;
382pub const D3D12_PS_INPUT_REGISTER_READS_PER_INST: u32 = 2;
383pub const D3D12_PS_INPUT_REGISTER_READ_PORTS: u32 = 1;
384pub const D3D12_PS_LEGACY_PIXEL_CENTER_FRACTIONAL_COMPONENT: f64 = 0.0;
385pub const D3D12_PS_OUTPUT_DEPTH_REGISTER_COMPONENTS: u32 = 1;
386pub const D3D12_PS_OUTPUT_DEPTH_REGISTER_COMPONENT_BIT_COUNT: u32 = 32;
387pub const D3D12_PS_OUTPUT_DEPTH_REGISTER_COUNT: u32 = 1;
388pub const D3D12_PS_OUTPUT_MASK_REGISTER_COMPONENTS: u32 = 1;
389pub const D3D12_PS_OUTPUT_MASK_REGISTER_COMPONENT_BIT_COUNT: u32 = 32;
390pub const D3D12_PS_OUTPUT_MASK_REGISTER_COUNT: u32 = 1;
391pub const D3D12_PS_OUTPUT_REGISTER_COMPONENTS: u32 = 4;
392pub const D3D12_PS_OUTPUT_REGISTER_COMPONENT_BIT_COUNT: u32 = 32;
393pub const D3D12_PS_OUTPUT_REGISTER_COUNT: u32 = 8;
394pub const D3D12_PS_PIXEL_CENTER_FRACTIONAL_COMPONENT: f64 = 0.5;
395pub const D3D12_RAW_UAV_SRV_BYTE_ALIGNMENT: u32 = 16;
396pub const D3D12_RAYTRACING_AABB_BYTE_ALIGNMENT: u32 = 8;
397pub const D3D12_RAYTRACING_ACCELERATION_STRUCTURE_BYTE_ALIGNMENT: u32 = 256;
398pub const D3D12_RAYTRACING_INSTANCE_DESCS_BYTE_ALIGNMENT: u32 = 16;
399pub const D3D12_RAYTRACING_MAX_ATTRIBUTE_SIZE_IN_BYTES: u32 = 32;
400pub const D3D12_RAYTRACING_MAX_DECLARABLE_TRACE_RECURSION_DEPTH: u32 = 31;
401pub const D3D12_RAYTRACING_MAX_GEOMETRIES_PER_BOTTOM_LEVEL_ACCELERATION_STRUCTURE : u32 = 16777216 ;
402pub const D3D12_RAYTRACING_MAX_INSTANCES_PER_TOP_LEVEL_ACCELERATION_STRUCTURE : u32 = 16777216 ;
403pub const D3D12_RAYTRACING_MAX_PRIMITIVES_PER_BOTTOM_LEVEL_ACCELERATION_STRUCTURE : u32 = 536870912 ;
404pub const D3D12_RAYTRACING_MAX_RAY_GENERATION_SHADER_THREADS: u32 = 1073741824;
405pub const D3D12_RAYTRACING_MAX_SHADER_RECORD_STRIDE: u32 = 4096;
406pub const D3D12_RAYTRACING_SHADER_RECORD_BYTE_ALIGNMENT: u32 = 32;
407pub const D3D12_RAYTRACING_SHADER_TABLE_BYTE_ALIGNMENT: u32 = 64;
408pub const D3D12_RAYTRACING_TRANSFORM3X4_BYTE_ALIGNMENT: u32 = 16;
409pub const D3D12_REQ_BLEND_OBJECT_COUNT_PER_DEVICE: u32 = 4096;
410pub const D3D12_REQ_BUFFER_RESOURCE_TEXEL_COUNT_2_TO_EXP: u32 = 27;
411pub const D3D12_REQ_CONSTANT_BUFFER_ELEMENT_COUNT: u32 = 4096;
412pub const D3D12_REQ_DEPTH_STENCIL_OBJECT_COUNT_PER_DEVICE: u32 = 4096;
413pub const D3D12_REQ_DRAWINDEXED_INDEX_COUNT_2_TO_EXP: u32 = 32;
414pub const D3D12_REQ_DRAW_VERTEX_COUNT_2_TO_EXP: u32 = 32;
415pub const D3D12_REQ_FILTERING_HW_ADDRESSABLE_RESOURCE_DIMENSION: u32 = 16384;
416pub const D3D12_REQ_GS_INVOCATION_32BIT_OUTPUT_COMPONENT_LIMIT: u32 = 1024;
417pub const D3D12_REQ_IMMEDIATE_CONSTANT_BUFFER_ELEMENT_COUNT: u32 = 4096;
418pub const D3D12_REQ_MAXANISOTROPY: u32 = 16;
419pub const D3D12_REQ_MIP_LEVELS: u32 = 15;
420pub const D3D12_REQ_MULTI_ELEMENT_STRUCTURE_SIZE_IN_BYTES: u32 = 2048;
421pub const D3D12_REQ_RASTERIZER_OBJECT_COUNT_PER_DEVICE: u32 = 4096;
422pub const D3D12_REQ_RENDER_TO_BUFFER_WINDOW_WIDTH: u32 = 16384;
423pub const D3D12_REQ_RESOURCE_SIZE_IN_MEGABYTES_EXPRESSION_A_TERM: u32 = 128;
424pub const D3D12_REQ_RESOURCE_SIZE_IN_MEGABYTES_EXPRESSION_B_TERM: f64 = 0.25;
425pub const D3D12_REQ_RESOURCE_SIZE_IN_MEGABYTES_EXPRESSION_C_TERM: u32 = 2048;
426pub const D3D12_REQ_RESOURCE_VIEW_COUNT_PER_DEVICE_2_TO_EXP: u32 = 20;
427pub const D3D12_REQ_SAMPLER_OBJECT_COUNT_PER_DEVICE: u32 = 4096;
428pub const D3D12_REQ_SUBRESOURCES: u32 = 30720;
429pub const D3D12_REQ_TEXTURE1D_ARRAY_AXIS_DIMENSION: u32 = 2048;
430pub const D3D12_REQ_TEXTURE1D_U_DIMENSION: u32 = 16384;
431pub const D3D12_REQ_TEXTURE2D_ARRAY_AXIS_DIMENSION: u32 = 2048;
432pub const D3D12_REQ_TEXTURE2D_U_OR_V_DIMENSION: u32 = 16384;
433pub const D3D12_REQ_TEXTURE3D_U_V_OR_W_DIMENSION: u32 = 2048;
434pub const D3D12_REQ_TEXTURECUBE_DIMENSION: u32 = 16384;
435pub const D3D12_RESINFO_INSTRUCTION_MISSING_COMPONENT_RETVAL: u32 = 0;
436pub const D3D12_RESOURCE_BARRIER_ALL_SUBRESOURCES: u32 = 4294967295;
437pub const D3D12_RS_SET_SHADING_RATE_COMBINER_COUNT: u32 = 2;
438pub const D3D12_SDK_VERSION: u32 = 600;
439pub const D3D12_SHADER_IDENTIFIER_SIZE_IN_BYTES: u32 = 32;
440pub const D3D12_SHADER_MAJOR_VERSION: u32 = 5;
441pub const D3D12_SHADER_MAX_INSTANCES: u32 = 65535;
442pub const D3D12_SHADER_MAX_INTERFACES: u32 = 253;
443pub const D3D12_SHADER_MAX_INTERFACE_CALL_SITES: u32 = 4096;
444pub const D3D12_SHADER_MAX_TYPES: u32 = 65535;
445pub const D3D12_SHADER_MINOR_VERSION: u32 = 1;
446pub const D3D12_SHIFT_INSTRUCTION_PAD_VALUE: u32 = 0;
447pub const D3D12_SHIFT_INSTRUCTION_SHIFT_VALUE_BIT_COUNT: u32 = 5;
448pub const D3D12_SIMULTANEOUS_RENDER_TARGET_COUNT: u32 = 8;
449pub const D3D12_SMALL_MSAA_RESOURCE_PLACEMENT_ALIGNMENT: u32 = 65536;
450pub const D3D12_SMALL_RESOURCE_PLACEMENT_ALIGNMENT: u32 = 4096;
451pub const D3D12_SO_BUFFER_MAX_STRIDE_IN_BYTES: u32 = 2048;
452pub const D3D12_SO_BUFFER_MAX_WRITE_WINDOW_IN_BYTES: u32 = 512;
453pub const D3D12_SO_BUFFER_SLOT_COUNT: u32 = 4;
454pub const D3D12_SO_DDI_REGISTER_INDEX_DENOTING_GAP: u32 = 4294967295;
455pub const D3D12_SO_NO_RASTERIZED_STREAM: u32 = 4294967295;
456pub const D3D12_SO_OUTPUT_COMPONENT_COUNT: u32 = 128;
457pub const D3D12_SO_STREAM_COUNT: u32 = 4;
458pub const D3D12_SPEC_DATE_DAY: u32 = 14;
459pub const D3D12_SPEC_DATE_MONTH: u32 = 11;
460pub const D3D12_SPEC_DATE_YEAR: u32 = 2014;
461pub const D3D12_SPEC_VERSION: f64 = 1.16;
462pub const D3D12_SRGB_GAMMA: f64 = 2.2;
463pub const D3D12_SRGB_TO_FLOAT_DENOMINATOR_1: f64 = 12.92;
464pub const D3D12_SRGB_TO_FLOAT_DENOMINATOR_2: f64 = 1.055;
465pub const D3D12_SRGB_TO_FLOAT_EXPONENT: f64 = 2.4;
466pub const D3D12_SRGB_TO_FLOAT_OFFSET: f64 = 0.055;
467pub const D3D12_SRGB_TO_FLOAT_THRESHOLD: f64 = 0.04045;
468pub const D3D12_SRGB_TO_FLOAT_TOLERANCE_IN_ULP: f64 = 0.5;
469pub const D3D12_STANDARD_COMPONENT_BIT_COUNT: u32 = 32;
470pub const D3D12_STANDARD_COMPONENT_BIT_COUNT_DOUBLED: u32 = 64;
471pub const D3D12_STANDARD_MAXIMUM_ELEMENT_ALIGNMENT_BYTE_MULTIPLE: u32 = 4;
472pub const D3D12_STANDARD_PIXEL_COMPONENT_COUNT: u32 = 128;
473pub const D3D12_STANDARD_PIXEL_ELEMENT_COUNT: u32 = 32;
474pub const D3D12_STANDARD_VECTOR_SIZE: u32 = 4;
475pub const D3D12_STANDARD_VERTEX_ELEMENT_COUNT: u32 = 32;
476pub const D3D12_STANDARD_VERTEX_TOTAL_COMPONENT_COUNT: u32 = 64;
477pub const D3D12_SUBPIXEL_FRACTIONAL_BIT_COUNT: u32 = 8;
478pub const D3D12_SUBTEXEL_FRACTIONAL_BIT_COUNT: u32 = 8;
479pub const D3D12_SYSTEM_RESERVED_REGISTER_SPACE_VALUES_END: u32 = 4294967295;
480pub const D3D12_SYSTEM_RESERVED_REGISTER_SPACE_VALUES_START: u32 = 4294967280;
481pub const D3D12_TESSELLATOR_MAX_EVEN_TESSELLATION_FACTOR: u32 = 64;
482pub const D3D12_TESSELLATOR_MAX_ISOLINE_DENSITY_TESSELLATION_FACTOR: u32 = 64;
483pub const D3D12_TESSELLATOR_MAX_ODD_TESSELLATION_FACTOR: u32 = 63;
484pub const D3D12_TESSELLATOR_MAX_TESSELLATION_FACTOR: u32 = 64;
485pub const D3D12_TESSELLATOR_MIN_EVEN_TESSELLATION_FACTOR: u32 = 2;
486pub const D3D12_TESSELLATOR_MIN_ISOLINE_DENSITY_TESSELLATION_FACTOR: u32 = 1;
487pub const D3D12_TESSELLATOR_MIN_ODD_TESSELLATION_FACTOR: u32 = 1;
488pub const D3D12_TEXEL_ADDRESS_RANGE_BIT_COUNT: u32 = 16;
489pub const D3D12_TEXTURE_DATA_PITCH_ALIGNMENT: u32 = 256;
490pub const D3D12_TEXTURE_DATA_PLACEMENT_ALIGNMENT: u32 = 512;
491pub const D3D12_TILED_RESOURCE_TILE_SIZE_IN_BYTES: u32 = 65536;
492pub const D3D12_TRACKED_WORKLOAD_MAX_INSTANCES: u32 = 32;
493pub const D3D12_UAV_COUNTER_PLACEMENT_ALIGNMENT: u32 = 4096;
494pub const D3D12_UAV_SLOT_COUNT: u32 = 64;
495pub const D3D12_UNBOUND_MEMORY_ACCESS_RESULT: u32 = 0;
496pub const D3D12_VIDEO_DECODE_MAX_ARGUMENTS: u32 = 10;
497pub const D3D12_VIDEO_DECODE_MAX_HISTOGRAM_COMPONENTS: u32 = 4;
498pub const D3D12_VIDEO_DECODE_MIN_BITSTREAM_OFFSET_ALIGNMENT: u32 = 256;
499pub const D3D12_VIDEO_DECODE_MIN_HISTOGRAM_OFFSET_ALIGNMENT: u32 = 256;
500pub const D3D12_VIDEO_DECODE_STATUS_MACROBLOCKS_AFFECTED_UNKNOWN: u32 =
501 4294967295;
502pub const D3D12_VIDEO_PROCESS_MAX_FILTERS: u32 = 32;
503pub const D3D12_VIDEO_PROCESS_STEREO_VIEWS: u32 = 2;
504pub const D3D12_VIEWPORT_AND_SCISSORRECT_MAX_INDEX: u32 = 15;
505pub const D3D12_VIEWPORT_AND_SCISSORRECT_OBJECT_COUNT_PER_PIPELINE: u32 = 16;
506pub const D3D12_VIEWPORT_BOUNDS_MAX: u32 = 32767;
507pub const D3D12_VIEWPORT_BOUNDS_MIN: i32 = -32768;
508pub const D3D12_VS_INPUT_REGISTER_COMPONENTS: u32 = 4;
509pub const D3D12_VS_INPUT_REGISTER_COMPONENT_BIT_COUNT: u32 = 32;
510pub const D3D12_VS_INPUT_REGISTER_COUNT: u32 = 32;
511pub const D3D12_VS_INPUT_REGISTER_READS_PER_INST: u32 = 2;
512pub const D3D12_VS_INPUT_REGISTER_READ_PORTS: u32 = 1;
513pub const D3D12_VS_OUTPUT_REGISTER_COMPONENTS: u32 = 4;
514pub const D3D12_VS_OUTPUT_REGISTER_COMPONENT_BIT_COUNT: u32 = 32;
515pub const D3D12_VS_OUTPUT_REGISTER_COUNT: u32 = 32;
516pub const D3D12_WHQL_CONTEXT_COUNT_FOR_RESOURCE_LIMIT: u32 = 10;
517pub const D3D12_WHQL_DRAWINDEXED_INDEX_COUNT_2_TO_EXP: u32 = 25;
518pub const D3D12_WHQL_DRAW_VERTEX_COUNT_2_TO_EXP: u32 = 25;
519pub const D3D12_SHADER_COMPONENT_MAPPING_MASK: u32 = 7;
520pub const D3D12_SHADER_COMPONENT_MAPPING_SHIFT: u32 = 3;
521pub const D3D12_SHADER_COMPONENT_MAPPING_ALWAYS_SET_BIT_AVOIDING_ZEROMEM_MISTAKES : u32 = 4096 ;
522pub const D3D12_FILTER_REDUCTION_TYPE_MASK: u32 = 3;
523pub const D3D12_FILTER_REDUCTION_TYPE_SHIFT: u32 = 7;
524pub const D3D12_FILTER_TYPE_MASK: u32 = 3;
525pub const D3D12_MIN_FILTER_SHIFT: u32 = 4;
526pub const D3D12_MAG_FILTER_SHIFT: u32 = 2;
527pub const D3D12_MIP_FILTER_SHIFT: u32 = 0;
528pub const D3D12_ANISOTROPIC_FILTERING_BIT: u32 = 64;
529pub const D3D12_INFO_QUEUE_DEFAULT_MESSAGE_COUNT_LIMIT: u32 = 1024;
530pub const D3D12_SHADING_RATE_X_AXIS_SHIFT: u32 = 2;
531pub const D3D12_SHADING_RATE_VALID_MASK: u32 = 3;
532pub const _FACDXGI: u32 = 2170;
533pub const DXGI_CPU_ACCESS_NONE: u32 = 0;
534pub const DXGI_CPU_ACCESS_DYNAMIC: u32 = 1;
535pub const DXGI_CPU_ACCESS_READ_WRITE: u32 = 2;
536pub const DXGI_CPU_ACCESS_SCRATCH: u32 = 3;
537pub const DXGI_CPU_ACCESS_FIELD: u32 = 15;
538pub const DXGI_USAGE_SHADER_INPUT: u32 = 16;
539pub const DXGI_USAGE_RENDER_TARGET_OUTPUT: u32 = 32;
540pub const DXGI_USAGE_BACK_BUFFER: u32 = 64;
541pub const DXGI_USAGE_SHARED: u32 = 128;
542pub const DXGI_USAGE_READ_ONLY: u32 = 256;
543pub const DXGI_USAGE_DISCARD_ON_PRESENT: u32 = 512;
544pub const DXGI_USAGE_UNORDERED_ACCESS: u32 = 1024;
545pub const DXGI_RESOURCE_PRIORITY_MINIMUM: u32 = 671088640;
546pub const DXGI_RESOURCE_PRIORITY_LOW: u32 = 1342177280;
547pub const DXGI_RESOURCE_PRIORITY_NORMAL: u32 = 2013265920;
548pub const DXGI_RESOURCE_PRIORITY_HIGH: u32 = 2684354560;
549pub const DXGI_RESOURCE_PRIORITY_MAXIMUM: u32 = 3355443200;
550pub const DXGI_MAP_READ: u32 = 1;
551pub const DXGI_MAP_WRITE: u32 = 2;
552pub const DXGI_MAP_DISCARD: u32 = 4;
553pub const DXGI_ENUM_MODES_INTERLACED: u32 = 1;
554pub const DXGI_ENUM_MODES_SCALING: u32 = 2;
555pub const DXGI_MAX_SWAP_CHAIN_BUFFERS: u32 = 16;
556pub const DXGI_PRESENT_TEST: u32 = 1;
557pub const DXGI_PRESENT_DO_NOT_SEQUENCE: u32 = 2;
558pub const DXGI_PRESENT_RESTART: u32 = 4;
559pub const DXGI_PRESENT_DO_NOT_WAIT: u32 = 8;
560pub const DXGI_PRESENT_STEREO_PREFER_RIGHT: u32 = 16;
561pub const DXGI_PRESENT_STEREO_TEMPORARY_MONO: u32 = 32;
562pub const DXGI_PRESENT_RESTRICT_TO_OUTPUT: u32 = 64;
563pub const DXGI_PRESENT_USE_DURATION: u32 = 256;
564pub const DXGI_PRESENT_ALLOW_TEARING: u32 = 512;
565pub const DXGI_MWA_NO_WINDOW_CHANGES: u32 = 1;
566pub const DXGI_MWA_NO_ALT_ENTER: u32 = 2;
567pub const DXGI_MWA_NO_PRINT_SCREEN: u32 = 4;
568pub const DXGI_MWA_VALID: u32 = 7;
569pub const DXGI_ENUM_MODES_STEREO: u32 = 4;
570pub const DXGI_ENUM_MODES_DISABLED_STEREO: u32 = 8;
571pub const DXGI_SHARED_RESOURCE_READ: u32 = 2147483648;
572pub const DXGI_SHARED_RESOURCE_WRITE: u32 = 1;
573pub const DXGI_CREATE_FACTORY_DEBUG: u32 = 1;
574pub type wchar_t = ::std::os::raw::c_ushort;
575pub type ULONG = ::std::os::raw::c_ulong;
576pub type DWORD = ::std::os::raw::c_ulong;
577pub type BOOL = ::std::os::raw::c_int;
578pub type BYTE = ::std::os::raw::c_uchar;
579pub type WORD = ::std::os::raw::c_ushort;
580pub type FLOAT = f32;
581pub type LPBYTE = *mut BYTE;
582pub type LPDWORD = *mut DWORD;
583pub type LPVOID = *mut ::std::os::raw::c_void;
584pub type LPCVOID = *const ::std::os::raw::c_void;
585pub type INT = ::std::os::raw::c_int;
586pub type UINT = ::std::os::raw::c_uint;
587pub type INT8 = ::std::os::raw::c_schar;
588pub type UINT8 = ::std::os::raw::c_uchar;
589pub type UINT16 = ::std::os::raw::c_ushort;
590pub type UINT32 = ::std::os::raw::c_uint;
591pub type UINT64 = ::std::os::raw::c_ulonglong;
592pub type LONG_PTR = ::std::os::raw::c_longlong;
593pub type ULONG_PTR = ::std::os::raw::c_ulonglong;
594pub type SIZE_T = ULONG_PTR;
595pub type PVOID = *mut ::std::os::raw::c_void;
596pub type CHAR = ::std::os::raw::c_char;
597pub type LONG = ::std::os::raw::c_long;
598pub type WCHAR = wchar_t;
599pub type LPWSTR = *mut WCHAR;
600pub type PWSTR = *mut WCHAR;
601pub type LPCWSTR = *const WCHAR;
602pub type LPSTR = *mut CHAR;
603pub type LPCSTR = *const CHAR;
604pub type HANDLE = *mut ::std::os::raw::c_void;
605pub type HRESULT = ::std::os::raw::c_long;
606pub type LCID = DWORD;
607pub type LANGID = WORD;
608pub type LONGLONG = ::std::os::raw::c_longlong;
609#[repr(C)]
610#[derive(Copy, Clone)]
611pub union _LARGE_INTEGER {
612 pub __bindgen_anon_1: _LARGE_INTEGER__bindgen_ty_1,
613 pub u: _LARGE_INTEGER__bindgen_ty_2,
614 pub QuadPart: LONGLONG,
615}
616#[repr(C)]
617#[derive(Debug, Default, Copy, Clone, Hash, PartialOrd, Ord, PartialEq, Eq)]
618pub struct _LARGE_INTEGER__bindgen_ty_1 {
619 pub LowPart: DWORD,
620 pub HighPart: LONG,
621}
622#[repr(C)]
623#[derive(Debug, Default, Copy, Clone, Hash, PartialOrd, Ord, PartialEq, Eq)]
624pub struct _LARGE_INTEGER__bindgen_ty_2 {
625 pub LowPart: DWORD,
626 pub HighPart: LONG,
627}
628impl Default for _LARGE_INTEGER {
629 fn default() -> Self {
630 let mut s = ::std::mem::MaybeUninit::<Self>::uninit();
631 unsafe {
632 ::std::ptr::write_bytes(s.as_mut_ptr(), 0, 1);
633 s.assume_init()
634 }
635 }
636}
637impl ::std::fmt::Debug for _LARGE_INTEGER {
638 fn fmt(&self, f: &mut ::std::fmt::Formatter<'_>) -> ::std::fmt::Result {
639 write!(f, "_LARGE_INTEGER {{ union }}")
640 }
641}
642pub type LARGE_INTEGER = _LARGE_INTEGER;
643#[repr(C)]
644#[derive(Debug, Default, Copy, Clone, Hash, PartialOrd, Ord, PartialEq, Eq)]
645pub struct _LUID {
646 pub LowPart: DWORD,
647 pub HighPart: LONG,
648}
649pub type LUID = _LUID;
650pub type BOOLEAN = BYTE;
651#[repr(C)]
652#[derive(Debug, Default, Copy, Clone, Hash, PartialOrd, Ord, PartialEq, Eq)]
653pub struct _GUID {
654 pub Data1: ::std::os::raw::c_ulong,
655 pub Data2: ::std::os::raw::c_ushort,
656 pub Data3: ::std::os::raw::c_ushort,
657 pub Data4: [::std::os::raw::c_uchar; 8usize],
658}
659pub type GUID = _GUID;
660pub type IID = GUID;
661pub type LPARAM = LONG_PTR;
662#[repr(C)]
663#[derive(Debug, Default, Copy, Clone, Hash, PartialOrd, Ord, PartialEq, Eq)]
664pub struct HMETAFILE__ {
665 pub unused: ::std::os::raw::c_int,
666}
667pub type HMETAFILE = *mut HMETAFILE__;
668#[repr(C)]
669#[derive(Debug, Default, Copy, Clone, Hash, PartialOrd, Ord, PartialEq, Eq)]
670pub struct HINSTANCE__ {
671 pub unused: ::std::os::raw::c_int,
672}
673pub type HINSTANCE = *mut HINSTANCE__;
674pub type HMODULE = HINSTANCE;
675#[repr(C)]
676#[derive(Debug, Default, Copy, Clone, Hash, PartialOrd, Ord, PartialEq, Eq)]
677pub struct HWINSTA__ {
678 pub unused: ::std::os::raw::c_int,
679}
680pub type HWINSTA = *mut HWINSTA__;
681#[repr(C)]
682#[derive(Debug, Default, Copy, Clone, Hash, PartialOrd, Ord, PartialEq, Eq)]
683pub struct HWND__ {
684 pub unused: ::std::os::raw::c_int,
685}
686pub type HWND = *mut HWND__;
687pub type HGDIOBJ = *mut ::std::os::raw::c_void;
688#[repr(C)]
689#[derive(Debug, Default, Copy, Clone, Hash, PartialOrd, Ord, PartialEq, Eq)]
690pub struct HDC__ {
691 pub unused: ::std::os::raw::c_int,
692}
693pub type HDC = *mut HDC__;
694#[repr(C)]
695#[derive(Debug, Default, Copy, Clone, Hash, PartialOrd, Ord, PartialEq, Eq)]
696pub struct HDESK__ {
697 pub unused: ::std::os::raw::c_int,
698}
699pub type HDESK = *mut HDESK__;
700#[repr(C)]
701#[derive(Debug, Default, Copy, Clone, Hash, PartialOrd, Ord, PartialEq, Eq)]
702pub struct HENHMETAFILE__ {
703 pub unused: ::std::os::raw::c_int,
704}
705pub type HENHMETAFILE = *mut HENHMETAFILE__;
706#[repr(C)]
707#[derive(Debug, Default, Copy, Clone, Hash, PartialOrd, Ord, PartialEq, Eq)]
708pub struct HMONITOR__ {
709 pub unused: ::std::os::raw::c_int,
710}
711pub type HMONITOR = *mut HMONITOR__;
712#[repr(C)]
713#[derive(Debug, Default, Copy, Clone, Hash, PartialOrd, Ord, PartialEq, Eq)]
714pub struct tagRECT {
715 pub left: LONG,
716 pub top: LONG,
717 pub right: LONG,
718 pub bottom: LONG,
719}
720pub type RECT = tagRECT;
721pub type LPRECT = *mut tagRECT;
722pub type LPCRECT = *const RECT;
723#[repr(C)]
724#[derive(Debug, Default, Copy, Clone, Hash, PartialOrd, Ord, PartialEq, Eq)]
725pub struct tagPOINT {
726 pub x: LONG,
727 pub y: LONG,
728}
729pub type POINT = tagPOINT;
730#[repr(C)]
731#[derive(Debug, Default, Copy, Clone, Hash, PartialOrd, Ord, PartialEq, Eq)]
732pub struct _POINTL {
733 pub x: LONG,
734 pub y: LONG,
735}
736pub type POINTL = _POINTL;
737#[repr(C)]
738#[derive(Debug, Copy, Clone, Hash, PartialOrd, Ord, PartialEq, Eq)]
739pub struct _SECURITY_ATTRIBUTES {
740 pub nLength: DWORD,
741 pub lpSecurityDescriptor: LPVOID,
742 pub bInheritHandle: BOOL,
743}
744impl Default for _SECURITY_ATTRIBUTES {
745 fn default() -> Self {
746 let mut s = ::std::mem::MaybeUninit::<Self>::uninit();
747 unsafe {
748 ::std::ptr::write_bytes(s.as_mut_ptr(), 0, 1);
749 s.assume_init()
750 }
751 }
752}
753pub type SECURITY_ATTRIBUTES = _SECURITY_ATTRIBUTES;
754pub type LPSECURITY_ATTRIBUTES = *mut _SECURITY_ATTRIBUTES;
755#[repr(C)]
756#[derive(Debug, Default, Copy, Clone, Hash, PartialOrd, Ord, PartialEq, Eq)]
757pub struct _SYSTEMTIME {
758 pub wYear: WORD,
759 pub wMonth: WORD,
760 pub wDayOfWeek: WORD,
761 pub wDay: WORD,
762 pub wHour: WORD,
763 pub wMinute: WORD,
764 pub wSecond: WORD,
765 pub wMilliseconds: WORD,
766}
767pub type SYSTEMTIME = _SYSTEMTIME;
768extern "C" {
769 pub fn CloseHandle(hObject: HANDLE) -> BOOL;
770}
771extern "C" {
772 pub fn WaitForSingleObject(hHandle: HANDLE, dwMilliseconds: DWORD)
773 -> DWORD;
774}
775extern "C" {
776 pub fn CreateEventW(
777 lpEventAttributes: LPSECURITY_ATTRIBUTES,
778 bManualReset: BOOL,
779 bInitialState: BOOL,
780 lpName: LPCWSTR,
781 ) -> HANDLE;
782}
783extern "C" {
784 pub fn EnumSystemFirmwareTables(
785 FirmwareTableProviderSignature: DWORD,
786 pFirmwareTableEnumBuffer: PVOID,
787 BufferSize: DWORD,
788 ) -> UINT;
789}
790pub type ENUMRESLANGPROCA = ::std::option::Option<
791 unsafe extern "C" fn(
792 hModule: HMODULE,
793 lpType: LPCSTR,
794 lpName: LPCSTR,
795 wLanguage: WORD,
796 lParam: LONG_PTR,
797 ) -> BOOL,
798>;
799pub type ENUMRESLANGPROCW = ::std::option::Option<
800 unsafe extern "C" fn(
801 hModule: HMODULE,
802 lpType: LPCWSTR,
803 lpName: LPCWSTR,
804 wLanguage: WORD,
805 lParam: LONG_PTR,
806 ) -> BOOL,
807>;
808pub type ENUMRESNAMEPROCA = ::std::option::Option<
809 unsafe extern "C" fn(
810 hModule: HMODULE,
811 lpType: LPCSTR,
812 lpName: LPSTR,
813 lParam: LONG_PTR,
814 ) -> BOOL,
815>;
816pub type ENUMRESNAMEPROCW = ::std::option::Option<
817 unsafe extern "C" fn(
818 hModule: HMODULE,
819 lpType: LPCWSTR,
820 lpName: LPWSTR,
821 lParam: LONG_PTR,
822 ) -> BOOL,
823>;
824pub type ENUMRESTYPEPROCA = ::std::option::Option<
825 unsafe extern "C" fn(
826 hModule: HMODULE,
827 lpType: LPSTR,
828 lParam: LONG_PTR,
829 ) -> BOOL,
830>;
831pub type ENUMRESTYPEPROCW = ::std::option::Option<
832 unsafe extern "C" fn(
833 hModule: HMODULE,
834 lpType: LPWSTR,
835 lParam: LONG_PTR,
836 ) -> BOOL,
837>;
838extern "C" {
839 pub fn EnumResourceLanguagesExA(
840 hModule: HMODULE,
841 lpType: LPCSTR,
842 lpName: LPCSTR,
843 lpEnumFunc: ENUMRESLANGPROCA,
844 lParam: LONG_PTR,
845 dwFlags: DWORD,
846 LangId: LANGID,
847 ) -> BOOL;
848}
849extern "C" {
850 pub fn EnumResourceLanguagesExW(
851 hModule: HMODULE,
852 lpType: LPCWSTR,
853 lpName: LPCWSTR,
854 lpEnumFunc: ENUMRESLANGPROCW,
855 lParam: LONG_PTR,
856 dwFlags: DWORD,
857 LangId: LANGID,
858 ) -> BOOL;
859}
860extern "C" {
861 pub fn EnumResourceNamesExA(
862 hModule: HMODULE,
863 lpType: LPCSTR,
864 lpEnumFunc: ENUMRESNAMEPROCA,
865 lParam: LONG_PTR,
866 dwFlags: DWORD,
867 LangId: LANGID,
868 ) -> BOOL;
869}
870extern "C" {
871 pub fn EnumResourceNamesExW(
872 hModule: HMODULE,
873 lpType: LPCWSTR,
874 lpEnumFunc: ENUMRESNAMEPROCW,
875 lParam: LONG_PTR,
876 dwFlags: DWORD,
877 LangId: LANGID,
878 ) -> BOOL;
879}
880extern "C" {
881 pub fn EnumResourceTypesExA(
882 hModule: HMODULE,
883 lpEnumFunc: ENUMRESTYPEPROCA,
884 lParam: LONG_PTR,
885 dwFlags: DWORD,
886 LangId: LANGID,
887 ) -> BOOL;
888}
889extern "C" {
890 pub fn EnumResourceTypesExW(
891 hModule: HMODULE,
892 lpEnumFunc: ENUMRESTYPEPROCW,
893 lParam: LONG_PTR,
894 dwFlags: DWORD,
895 LangId: LANGID,
896 ) -> BOOL;
897}
898extern "C" {
899 pub fn EnumResourceNamesW(
900 hModule: HMODULE,
901 lpType: LPCWSTR,
902 lpEnumFunc: ENUMRESNAMEPROCW,
903 lParam: LONG_PTR,
904 ) -> BOOL;
905}
906extern "C" {
907 pub fn EnumResourceNamesA(
908 hModule: HMODULE,
909 lpType: LPCSTR,
910 lpEnumFunc: ENUMRESNAMEPROCA,
911 lParam: LONG_PTR,
912 ) -> BOOL;
913}
914extern "C" {
915 pub fn EnumResourceTypesA(
916 hModule: HMODULE,
917 lpEnumFunc: ENUMRESTYPEPROCA,
918 lParam: LONG_PTR,
919 ) -> BOOL;
920}
921extern "C" {
922 pub fn EnumResourceTypesW(
923 hModule: HMODULE,
924 lpEnumFunc: ENUMRESTYPEPROCW,
925 lParam: LONG_PTR,
926 ) -> BOOL;
927}
928extern "C" {
929 pub fn EnumResourceLanguagesA(
930 hModule: HMODULE,
931 lpType: LPCSTR,
932 lpName: LPCSTR,
933 lpEnumFunc: ENUMRESLANGPROCA,
934 lParam: LONG_PTR,
935 ) -> BOOL;
936}
937extern "C" {
938 pub fn EnumResourceLanguagesW(
939 hModule: HMODULE,
940 lpType: LPCWSTR,
941 lpName: LPCWSTR,
942 lpEnumFunc: ENUMRESLANGPROCW,
943 lParam: LONG_PTR,
944 ) -> BOOL;
945}
946#[repr(C)]
947#[derive(Debug, Copy, Clone, Hash, PartialOrd, Ord, PartialEq, Eq)]
948pub struct _TIME_DYNAMIC_ZONE_INFORMATION {
949 pub Bias: LONG,
950 pub StandardName: [WCHAR; 32usize],
951 pub StandardDate: SYSTEMTIME,
952 pub StandardBias: LONG,
953 pub DaylightName: [WCHAR; 32usize],
954 pub DaylightDate: SYSTEMTIME,
955 pub DaylightBias: LONG,
956 pub TimeZoneKeyName: [WCHAR; 128usize],
957 pub DynamicDaylightTimeDisabled: BOOLEAN,
958}
959impl Default for _TIME_DYNAMIC_ZONE_INFORMATION {
960 fn default() -> Self {
961 let mut s = ::std::mem::MaybeUninit::<Self>::uninit();
962 unsafe {
963 ::std::ptr::write_bytes(s.as_mut_ptr(), 0, 1);
964 s.assume_init()
965 }
966 }
967}
968pub type PDYNAMIC_TIME_ZONE_INFORMATION = *mut _TIME_DYNAMIC_ZONE_INFORMATION;
969extern "C" {
970 pub fn EnumDynamicTimeZoneInformation(
971 dwIndex: DWORD,
972 lpTimeZoneInformation: PDYNAMIC_TIME_ZONE_INFORMATION,
973 ) -> DWORD;
974}
975#[repr(C)]
976#[derive(Debug, Copy, Clone, Hash, PartialOrd, Ord, PartialEq, Eq)]
977pub struct tagHANDLETABLE {
978 pub objectHandle: [HGDIOBJ; 1usize],
979}
980impl Default for tagHANDLETABLE {
981 fn default() -> Self {
982 let mut s = ::std::mem::MaybeUninit::<Self>::uninit();
983 unsafe {
984 ::std::ptr::write_bytes(s.as_mut_ptr(), 0, 1);
985 s.assume_init()
986 }
987 }
988}
989pub type HANDLETABLE = tagHANDLETABLE;
990#[repr(C)]
991#[derive(Debug, Default, Copy, Clone, Hash, PartialOrd, Ord, PartialEq, Eq)]
992pub struct tagMETARECORD {
993 pub rdSize: DWORD,
994 pub rdFunction: WORD,
995 pub rdParm: [WORD; 1usize],
996}
997pub type METARECORD = tagMETARECORD;
998#[repr(C)]
999#[derive(Debug, Default, Copy, Clone, Hash, PartialOrd, Ord, PartialEq, Eq)]
1000pub struct tagENHMETARECORD {
1001 pub iType: DWORD,
1002 pub nSize: DWORD,
1003 pub dParm: [DWORD; 1usize],
1004}
1005pub type ENHMETARECORD = tagENHMETARECORD;
1006#[repr(C)]
1007#[derive(Debug, Default, Copy, Clone, Hash, PartialOrd, Ord, PartialEq, Eq)]
1008pub struct tagTEXTMETRICA {
1009 pub tmHeight: LONG,
1010 pub tmAscent: LONG,
1011 pub tmDescent: LONG,
1012 pub tmInternalLeading: LONG,
1013 pub tmExternalLeading: LONG,
1014 pub tmAveCharWidth: LONG,
1015 pub tmMaxCharWidth: LONG,
1016 pub tmWeight: LONG,
1017 pub tmOverhang: LONG,
1018 pub tmDigitizedAspectX: LONG,
1019 pub tmDigitizedAspectY: LONG,
1020 pub tmFirstChar: BYTE,
1021 pub tmLastChar: BYTE,
1022 pub tmDefaultChar: BYTE,
1023 pub tmBreakChar: BYTE,
1024 pub tmItalic: BYTE,
1025 pub tmUnderlined: BYTE,
1026 pub tmStruckOut: BYTE,
1027 pub tmPitchAndFamily: BYTE,
1028 pub tmCharSet: BYTE,
1029}
1030pub type TEXTMETRICA = tagTEXTMETRICA;
1031#[repr(C)]
1032#[derive(Debug, Default, Copy, Clone, Hash, PartialOrd, Ord, PartialEq, Eq)]
1033pub struct tagTEXTMETRICW {
1034 pub tmHeight: LONG,
1035 pub tmAscent: LONG,
1036 pub tmDescent: LONG,
1037 pub tmInternalLeading: LONG,
1038 pub tmExternalLeading: LONG,
1039 pub tmAveCharWidth: LONG,
1040 pub tmMaxCharWidth: LONG,
1041 pub tmWeight: LONG,
1042 pub tmOverhang: LONG,
1043 pub tmDigitizedAspectX: LONG,
1044 pub tmDigitizedAspectY: LONG,
1045 pub tmFirstChar: WCHAR,
1046 pub tmLastChar: WCHAR,
1047 pub tmDefaultChar: WCHAR,
1048 pub tmBreakChar: WCHAR,
1049 pub tmItalic: BYTE,
1050 pub tmUnderlined: BYTE,
1051 pub tmStruckOut: BYTE,
1052 pub tmPitchAndFamily: BYTE,
1053 pub tmCharSet: BYTE,
1054}
1055pub type TEXTMETRICW = tagTEXTMETRICW;
1056#[repr(C)]
1057#[derive(Debug, Default, Copy, Clone, Hash, PartialOrd, Ord, PartialEq, Eq)]
1058pub struct tagLOGFONTA {
1059 pub lfHeight: LONG,
1060 pub lfWidth: LONG,
1061 pub lfEscapement: LONG,
1062 pub lfOrientation: LONG,
1063 pub lfWeight: LONG,
1064 pub lfItalic: BYTE,
1065 pub lfUnderline: BYTE,
1066 pub lfStrikeOut: BYTE,
1067 pub lfCharSet: BYTE,
1068 pub lfOutPrecision: BYTE,
1069 pub lfClipPrecision: BYTE,
1070 pub lfQuality: BYTE,
1071 pub lfPitchAndFamily: BYTE,
1072 pub lfFaceName: [CHAR; 32usize],
1073}
1074pub type LOGFONTA = tagLOGFONTA;
1075pub type LPLOGFONTA = *mut tagLOGFONTA;
1076#[repr(C)]
1077#[derive(Debug, Default, Copy, Clone, Hash, PartialOrd, Ord, PartialEq, Eq)]
1078pub struct tagLOGFONTW {
1079 pub lfHeight: LONG,
1080 pub lfWidth: LONG,
1081 pub lfEscapement: LONG,
1082 pub lfOrientation: LONG,
1083 pub lfWeight: LONG,
1084 pub lfItalic: BYTE,
1085 pub lfUnderline: BYTE,
1086 pub lfStrikeOut: BYTE,
1087 pub lfCharSet: BYTE,
1088 pub lfOutPrecision: BYTE,
1089 pub lfClipPrecision: BYTE,
1090 pub lfQuality: BYTE,
1091 pub lfPitchAndFamily: BYTE,
1092 pub lfFaceName: [WCHAR; 32usize],
1093}
1094pub type LOGFONTW = tagLOGFONTW;
1095pub type LPLOGFONTW = *mut tagLOGFONTW;
1096#[repr(C)]
1097#[derive(Copy, Clone)]
1098pub struct _devicemodeA {
1099 pub dmDeviceName: [BYTE; 32usize],
1100 pub dmSpecVersion: WORD,
1101 pub dmDriverVersion: WORD,
1102 pub dmSize: WORD,
1103 pub dmDriverExtra: WORD,
1104 pub dmFields: DWORD,
1105 pub __bindgen_anon_1: _devicemodeA__bindgen_ty_1,
1106 pub dmColor: ::std::os::raw::c_short,
1107 pub dmDuplex: ::std::os::raw::c_short,
1108 pub dmYResolution: ::std::os::raw::c_short,
1109 pub dmTTOption: ::std::os::raw::c_short,
1110 pub dmCollate: ::std::os::raw::c_short,
1111 pub dmFormName: [BYTE; 32usize],
1112 pub dmLogPixels: WORD,
1113 pub dmBitsPerPel: DWORD,
1114 pub dmPelsWidth: DWORD,
1115 pub dmPelsHeight: DWORD,
1116 pub __bindgen_anon_2: _devicemodeA__bindgen_ty_2,
1117 pub dmDisplayFrequency: DWORD,
1118 pub dmICMMethod: DWORD,
1119 pub dmICMIntent: DWORD,
1120 pub dmMediaType: DWORD,
1121 pub dmDitherType: DWORD,
1122 pub dmReserved1: DWORD,
1123 pub dmReserved2: DWORD,
1124 pub dmPanningWidth: DWORD,
1125 pub dmPanningHeight: DWORD,
1126}
1127#[repr(C)]
1128#[derive(Copy, Clone)]
1129pub union _devicemodeA__bindgen_ty_1 {
1130 pub __bindgen_anon_1: _devicemodeA__bindgen_ty_1__bindgen_ty_1,
1131 pub __bindgen_anon_2: _devicemodeA__bindgen_ty_1__bindgen_ty_2,
1132}
1133#[repr(C)]
1134#[derive(Debug, Default, Copy, Clone, Hash, PartialOrd, Ord, PartialEq, Eq)]
1135pub struct _devicemodeA__bindgen_ty_1__bindgen_ty_1 {
1136 pub dmOrientation: ::std::os::raw::c_short,
1137 pub dmPaperSize: ::std::os::raw::c_short,
1138 pub dmPaperLength: ::std::os::raw::c_short,
1139 pub dmPaperWidth: ::std::os::raw::c_short,
1140 pub dmScale: ::std::os::raw::c_short,
1141 pub dmCopies: ::std::os::raw::c_short,
1142 pub dmDefaultSource: ::std::os::raw::c_short,
1143 pub dmPrintQuality: ::std::os::raw::c_short,
1144}
1145#[repr(C)]
1146#[derive(Debug, Default, Copy, Clone, Hash, PartialOrd, Ord, PartialEq, Eq)]
1147pub struct _devicemodeA__bindgen_ty_1__bindgen_ty_2 {
1148 pub dmPosition: POINTL,
1149 pub dmDisplayOrientation: DWORD,
1150 pub dmDisplayFixedOutput: DWORD,
1151}
1152impl Default for _devicemodeA__bindgen_ty_1 {
1153 fn default() -> Self {
1154 let mut s = ::std::mem::MaybeUninit::<Self>::uninit();
1155 unsafe {
1156 ::std::ptr::write_bytes(s.as_mut_ptr(), 0, 1);
1157 s.assume_init()
1158 }
1159 }
1160}
1161impl ::std::fmt::Debug for _devicemodeA__bindgen_ty_1 {
1162 fn fmt(&self, f: &mut ::std::fmt::Formatter<'_>) -> ::std::fmt::Result {
1163 write!(f, "_devicemodeA__bindgen_ty_1 {{ union }}")
1164 }
1165}
1166#[repr(C)]
1167#[derive(Copy, Clone)]
1168pub union _devicemodeA__bindgen_ty_2 {
1169 pub dmDisplayFlags: DWORD,
1170 pub dmNup: DWORD,
1171}
1172impl Default for _devicemodeA__bindgen_ty_2 {
1173 fn default() -> Self {
1174 let mut s = ::std::mem::MaybeUninit::<Self>::uninit();
1175 unsafe {
1176 ::std::ptr::write_bytes(s.as_mut_ptr(), 0, 1);
1177 s.assume_init()
1178 }
1179 }
1180}
1181impl ::std::fmt::Debug for _devicemodeA__bindgen_ty_2 {
1182 fn fmt(&self, f: &mut ::std::fmt::Formatter<'_>) -> ::std::fmt::Result {
1183 write!(f, "_devicemodeA__bindgen_ty_2 {{ union }}")
1184 }
1185}
1186impl Default for _devicemodeA {
1187 fn default() -> Self {
1188 let mut s = ::std::mem::MaybeUninit::<Self>::uninit();
1189 unsafe {
1190 ::std::ptr::write_bytes(s.as_mut_ptr(), 0, 1);
1191 s.assume_init()
1192 }
1193 }
1194}
1195impl ::std::fmt::Debug for _devicemodeA {
1196 fn fmt(&self, f: &mut ::std::fmt::Formatter<'_>) -> ::std::fmt::Result {
1197 write ! (f , "_devicemodeA {{ dmDeviceName: {:?}, dmSpecVersion: {:?}, dmDriverVersion: {:?}, dmSize: {:?}, dmDriverExtra: {:?}, dmFields: {:?}, __bindgen_anon_1: {:?}, dmColor: {:?}, dmDuplex: {:?}, dmYResolution: {:?}, dmTTOption: {:?}, dmCollate: {:?}, dmFormName: {:?}, dmLogPixels: {:?}, dmBitsPerPel: {:?}, dmPelsWidth: {:?}, dmPelsHeight: {:?}, __bindgen_anon_2: {:?}, dmDisplayFrequency: {:?}, dmICMMethod: {:?}, dmICMIntent: {:?}, dmMediaType: {:?}, dmDitherType: {:?}, dmReserved1: {:?}, dmReserved2: {:?}, dmPanningWidth: {:?}, dmPanningHeight: {:?} }}" , self . dmDeviceName , self . dmSpecVersion , self . dmDriverVersion , self . dmSize , self . dmDriverExtra , self . dmFields , self . __bindgen_anon_1 , self . dmColor , self . dmDuplex , self . dmYResolution , self . dmTTOption , self . dmCollate , self . dmFormName , self . dmLogPixels , self . dmBitsPerPel , self . dmPelsWidth , self . dmPelsHeight , self . __bindgen_anon_2 , self . dmDisplayFrequency , self . dmICMMethod , self . dmICMIntent , self . dmMediaType , self . dmDitherType , self . dmReserved1 , self . dmReserved2 , self . dmPanningWidth , self . dmPanningHeight)
1198 }
1199}
1200pub type DEVMODEA = _devicemodeA;
1201#[repr(C)]
1202#[derive(Copy, Clone)]
1203pub struct _devicemodeW {
1204 pub dmDeviceName: [WCHAR; 32usize],
1205 pub dmSpecVersion: WORD,
1206 pub dmDriverVersion: WORD,
1207 pub dmSize: WORD,
1208 pub dmDriverExtra: WORD,
1209 pub dmFields: DWORD,
1210 pub __bindgen_anon_1: _devicemodeW__bindgen_ty_1,
1211 pub dmColor: ::std::os::raw::c_short,
1212 pub dmDuplex: ::std::os::raw::c_short,
1213 pub dmYResolution: ::std::os::raw::c_short,
1214 pub dmTTOption: ::std::os::raw::c_short,
1215 pub dmCollate: ::std::os::raw::c_short,
1216 pub dmFormName: [WCHAR; 32usize],
1217 pub dmLogPixels: WORD,
1218 pub dmBitsPerPel: DWORD,
1219 pub dmPelsWidth: DWORD,
1220 pub dmPelsHeight: DWORD,
1221 pub __bindgen_anon_2: _devicemodeW__bindgen_ty_2,
1222 pub dmDisplayFrequency: DWORD,
1223 pub dmICMMethod: DWORD,
1224 pub dmICMIntent: DWORD,
1225 pub dmMediaType: DWORD,
1226 pub dmDitherType: DWORD,
1227 pub dmReserved1: DWORD,
1228 pub dmReserved2: DWORD,
1229 pub dmPanningWidth: DWORD,
1230 pub dmPanningHeight: DWORD,
1231}
1232#[repr(C)]
1233#[derive(Copy, Clone)]
1234pub union _devicemodeW__bindgen_ty_1 {
1235 pub __bindgen_anon_1: _devicemodeW__bindgen_ty_1__bindgen_ty_1,
1236 pub __bindgen_anon_2: _devicemodeW__bindgen_ty_1__bindgen_ty_2,
1237}
1238#[repr(C)]
1239#[derive(Debug, Default, Copy, Clone, Hash, PartialOrd, Ord, PartialEq, Eq)]
1240pub struct _devicemodeW__bindgen_ty_1__bindgen_ty_1 {
1241 pub dmOrientation: ::std::os::raw::c_short,
1242 pub dmPaperSize: ::std::os::raw::c_short,
1243 pub dmPaperLength: ::std::os::raw::c_short,
1244 pub dmPaperWidth: ::std::os::raw::c_short,
1245 pub dmScale: ::std::os::raw::c_short,
1246 pub dmCopies: ::std::os::raw::c_short,
1247 pub dmDefaultSource: ::std::os::raw::c_short,
1248 pub dmPrintQuality: ::std::os::raw::c_short,
1249}
1250#[repr(C)]
1251#[derive(Debug, Default, Copy, Clone, Hash, PartialOrd, Ord, PartialEq, Eq)]
1252pub struct _devicemodeW__bindgen_ty_1__bindgen_ty_2 {
1253 pub dmPosition: POINTL,
1254 pub dmDisplayOrientation: DWORD,
1255 pub dmDisplayFixedOutput: DWORD,
1256}
1257impl Default for _devicemodeW__bindgen_ty_1 {
1258 fn default() -> Self {
1259 let mut s = ::std::mem::MaybeUninit::<Self>::uninit();
1260 unsafe {
1261 ::std::ptr::write_bytes(s.as_mut_ptr(), 0, 1);
1262 s.assume_init()
1263 }
1264 }
1265}
1266impl ::std::fmt::Debug for _devicemodeW__bindgen_ty_1 {
1267 fn fmt(&self, f: &mut ::std::fmt::Formatter<'_>) -> ::std::fmt::Result {
1268 write!(f, "_devicemodeW__bindgen_ty_1 {{ union }}")
1269 }
1270}
1271#[repr(C)]
1272#[derive(Copy, Clone)]
1273pub union _devicemodeW__bindgen_ty_2 {
1274 pub dmDisplayFlags: DWORD,
1275 pub dmNup: DWORD,
1276}
1277impl Default for _devicemodeW__bindgen_ty_2 {
1278 fn default() -> Self {
1279 let mut s = ::std::mem::MaybeUninit::<Self>::uninit();
1280 unsafe {
1281 ::std::ptr::write_bytes(s.as_mut_ptr(), 0, 1);
1282 s.assume_init()
1283 }
1284 }
1285}
1286impl ::std::fmt::Debug for _devicemodeW__bindgen_ty_2 {
1287 fn fmt(&self, f: &mut ::std::fmt::Formatter<'_>) -> ::std::fmt::Result {
1288 write!(f, "_devicemodeW__bindgen_ty_2 {{ union }}")
1289 }
1290}
1291impl Default for _devicemodeW {
1292 fn default() -> Self {
1293 let mut s = ::std::mem::MaybeUninit::<Self>::uninit();
1294 unsafe {
1295 ::std::ptr::write_bytes(s.as_mut_ptr(), 0, 1);
1296 s.assume_init()
1297 }
1298 }
1299}
1300impl ::std::fmt::Debug for _devicemodeW {
1301 fn fmt(&self, f: &mut ::std::fmt::Formatter<'_>) -> ::std::fmt::Result {
1302 write ! (f , "_devicemodeW {{ dmDeviceName: {:?}, dmSpecVersion: {:?}, dmDriverVersion: {:?}, dmSize: {:?}, dmDriverExtra: {:?}, dmFields: {:?}, __bindgen_anon_1: {:?}, dmColor: {:?}, dmDuplex: {:?}, dmYResolution: {:?}, dmTTOption: {:?}, dmCollate: {:?}, dmFormName: {:?}, dmLogPixels: {:?}, dmBitsPerPel: {:?}, dmPelsWidth: {:?}, dmPelsHeight: {:?}, __bindgen_anon_2: {:?}, dmDisplayFrequency: {:?}, dmICMMethod: {:?}, dmICMIntent: {:?}, dmMediaType: {:?}, dmDitherType: {:?}, dmReserved1: {:?}, dmReserved2: {:?}, dmPanningWidth: {:?}, dmPanningHeight: {:?} }}" , self . dmDeviceName , self . dmSpecVersion , self . dmDriverVersion , self . dmSize , self . dmDriverExtra , self . dmFields , self . __bindgen_anon_1 , self . dmColor , self . dmDuplex , self . dmYResolution , self . dmTTOption , self . dmCollate , self . dmFormName , self . dmLogPixels , self . dmBitsPerPel , self . dmPelsWidth , self . dmPelsHeight , self . __bindgen_anon_2 , self . dmDisplayFrequency , self . dmICMMethod , self . dmICMIntent , self . dmMediaType , self . dmDitherType , self . dmReserved1 , self . dmReserved2 , self . dmPanningWidth , self . dmPanningHeight)
1303 }
1304}
1305pub type DEVMODEW = _devicemodeW;
1306#[repr(C)]
1307#[derive(Debug, Copy, Clone, Hash, PartialOrd, Ord, PartialEq, Eq)]
1308pub struct _DISPLAY_DEVICEA {
1309 pub cb: DWORD,
1310 pub DeviceName: [CHAR; 32usize],
1311 pub DeviceString: [CHAR; 128usize],
1312 pub StateFlags: DWORD,
1313 pub DeviceID: [CHAR; 128usize],
1314 pub DeviceKey: [CHAR; 128usize],
1315}
1316impl Default for _DISPLAY_DEVICEA {
1317 fn default() -> Self {
1318 let mut s = ::std::mem::MaybeUninit::<Self>::uninit();
1319 unsafe {
1320 ::std::ptr::write_bytes(s.as_mut_ptr(), 0, 1);
1321 s.assume_init()
1322 }
1323 }
1324}
1325pub type PDISPLAY_DEVICEA = *mut _DISPLAY_DEVICEA;
1326#[repr(C)]
1327#[derive(Debug, Copy, Clone, Hash, PartialOrd, Ord, PartialEq, Eq)]
1328pub struct _DISPLAY_DEVICEW {
1329 pub cb: DWORD,
1330 pub DeviceName: [WCHAR; 32usize],
1331 pub DeviceString: [WCHAR; 128usize],
1332 pub StateFlags: DWORD,
1333 pub DeviceID: [WCHAR; 128usize],
1334 pub DeviceKey: [WCHAR; 128usize],
1335}
1336impl Default for _DISPLAY_DEVICEW {
1337 fn default() -> Self {
1338 let mut s = ::std::mem::MaybeUninit::<Self>::uninit();
1339 unsafe {
1340 ::std::ptr::write_bytes(s.as_mut_ptr(), 0, 1);
1341 s.assume_init()
1342 }
1343 }
1344}
1345pub type PDISPLAY_DEVICEW = *mut _DISPLAY_DEVICEW;
1346pub type OLDFONTENUMPROCA = ::std::option::Option<
1347 unsafe extern "C" fn(
1348 arg1: *const LOGFONTA,
1349 arg2: *const TEXTMETRICA,
1350 arg3: DWORD,
1351 arg4: LPARAM,
1352 ) -> ::std::os::raw::c_int,
1353>;
1354pub type OLDFONTENUMPROCW = ::std::option::Option<
1355 unsafe extern "C" fn(
1356 arg1: *const LOGFONTW,
1357 arg2: *const TEXTMETRICW,
1358 arg3: DWORD,
1359 arg4: LPARAM,
1360 ) -> ::std::os::raw::c_int,
1361>;
1362pub type FONTENUMPROCA = OLDFONTENUMPROCA;
1363pub type FONTENUMPROCW = OLDFONTENUMPROCW;
1364pub type GOBJENUMPROC = ::std::option::Option<
1365 unsafe extern "C" fn(arg1: LPVOID, arg2: LPARAM) -> ::std::os::raw::c_int,
1366>;
1367extern "C" {
1368 pub fn EnumFontFamiliesExA(
1369 hdc: HDC,
1370 lpLogfont: LPLOGFONTA,
1371 lpProc: FONTENUMPROCA,
1372 lParam: LPARAM,
1373 dwFlags: DWORD,
1374 ) -> ::std::os::raw::c_int;
1375}
1376extern "C" {
1377 pub fn EnumFontFamiliesExW(
1378 hdc: HDC,
1379 lpLogfont: LPLOGFONTW,
1380 lpProc: FONTENUMPROCW,
1381 lParam: LPARAM,
1382 dwFlags: DWORD,
1383 ) -> ::std::os::raw::c_int;
1384}
1385extern "C" {
1386 pub fn EnumFontFamiliesA(
1387 hdc: HDC,
1388 lpLogfont: LPCSTR,
1389 lpProc: FONTENUMPROCA,
1390 lParam: LPARAM,
1391 ) -> ::std::os::raw::c_int;
1392}
1393extern "C" {
1394 pub fn EnumFontFamiliesW(
1395 hdc: HDC,
1396 lpLogfont: LPCWSTR,
1397 lpProc: FONTENUMPROCW,
1398 lParam: LPARAM,
1399 ) -> ::std::os::raw::c_int;
1400}
1401extern "C" {
1402 pub fn EnumFontsA(
1403 hdc: HDC,
1404 lpLogfont: LPCSTR,
1405 lpProc: FONTENUMPROCA,
1406 lParam: LPARAM,
1407 ) -> ::std::os::raw::c_int;
1408}
1409extern "C" {
1410 pub fn EnumFontsW(
1411 hdc: HDC,
1412 lpLogfont: LPCWSTR,
1413 lpProc: FONTENUMPROCW,
1414 lParam: LPARAM,
1415 ) -> ::std::os::raw::c_int;
1416}
1417extern "C" {
1418 pub fn EnumObjects(
1419 hdc: HDC,
1420 nType: ::std::os::raw::c_int,
1421 lpFunc: GOBJENUMPROC,
1422 lParam: LPARAM,
1423 ) -> ::std::os::raw::c_int;
1424}
1425pub type MFENUMPROC = ::std::option::Option<
1426 unsafe extern "C" fn(
1427 hdc: HDC,
1428 lpht: *mut HANDLETABLE,
1429 lpMR: *mut METARECORD,
1430 nObj: ::std::os::raw::c_int,
1431 param: LPARAM,
1432 ) -> ::std::os::raw::c_int,
1433>;
1434extern "C" {
1435 pub fn EnumMetaFile(
1436 hdc: HDC,
1437 hmf: HMETAFILE,
1438 proc_: MFENUMPROC,
1439 param: LPARAM,
1440 ) -> BOOL;
1441}
1442pub type ENHMFENUMPROC = ::std::option::Option<
1443 unsafe extern "C" fn(
1444 hdc: HDC,
1445 lpht: *mut HANDLETABLE,
1446 lpmr: *const ENHMETARECORD,
1447 nHandles: ::std::os::raw::c_int,
1448 data: LPARAM,
1449 ) -> ::std::os::raw::c_int,
1450>;
1451extern "C" {
1452 pub fn EnumEnhMetaFile(
1453 hdc: HDC,
1454 hmf: HENHMETAFILE,
1455 proc_: ENHMFENUMPROC,
1456 param: LPVOID,
1457 lpRect: *const RECT,
1458 ) -> BOOL;
1459}
1460pub type ICMENUMPROCA = ::std::option::Option<
1461 unsafe extern "C" fn(arg1: LPSTR, arg2: LPARAM) -> ::std::os::raw::c_int,
1462>;
1463pub type ICMENUMPROCW = ::std::option::Option<
1464 unsafe extern "C" fn(arg1: LPWSTR, arg2: LPARAM) -> ::std::os::raw::c_int,
1465>;
1466extern "C" {
1467 pub fn EnumICMProfilesA(
1468 hdc: HDC,
1469 proc_: ICMENUMPROCA,
1470 param: LPARAM,
1471 ) -> ::std::os::raw::c_int;
1472}
1473extern "C" {
1474 pub fn EnumICMProfilesW(
1475 hdc: HDC,
1476 proc_: ICMENUMPROCW,
1477 param: LPARAM,
1478 ) -> ::std::os::raw::c_int;
1479}
1480pub type WNDENUMPROC = ::std::option::Option<
1481 unsafe extern "C" fn(arg1: HWND, arg2: LPARAM) -> BOOL,
1482>;
1483pub type PROPENUMPROCA = ::std::option::Option<
1484 unsafe extern "C" fn(arg1: HWND, arg2: LPCSTR, arg3: HANDLE) -> BOOL,
1485>;
1486pub type PROPENUMPROCW = ::std::option::Option<
1487 unsafe extern "C" fn(arg1: HWND, arg2: LPCWSTR, arg3: HANDLE) -> BOOL,
1488>;
1489pub type PROPENUMPROCEXA = ::std::option::Option<
1490 unsafe extern "C" fn(
1491 arg1: HWND,
1492 arg2: LPSTR,
1493 arg3: HANDLE,
1494 arg4: ULONG_PTR,
1495 ) -> BOOL,
1496>;
1497pub type PROPENUMPROCEXW = ::std::option::Option<
1498 unsafe extern "C" fn(
1499 arg1: HWND,
1500 arg2: LPWSTR,
1501 arg3: HANDLE,
1502 arg4: ULONG_PTR,
1503 ) -> BOOL,
1504>;
1505pub type NAMEENUMPROCA = ::std::option::Option<
1506 unsafe extern "C" fn(arg1: LPSTR, arg2: LPARAM) -> BOOL,
1507>;
1508pub type NAMEENUMPROCW = ::std::option::Option<
1509 unsafe extern "C" fn(arg1: LPWSTR, arg2: LPARAM) -> BOOL,
1510>;
1511pub type WINSTAENUMPROCA = NAMEENUMPROCA;
1512pub type DESKTOPENUMPROCA = NAMEENUMPROCA;
1513pub type WINSTAENUMPROCW = NAMEENUMPROCW;
1514pub type DESKTOPENUMPROCW = NAMEENUMPROCW;
1515extern "C" {
1516 pub fn EnumDesktopsA(
1517 hwinsta: HWINSTA,
1518 lpEnumFunc: DESKTOPENUMPROCA,
1519 lParam: LPARAM,
1520 ) -> BOOL;
1521}
1522extern "C" {
1523 pub fn EnumDesktopsW(
1524 hwinsta: HWINSTA,
1525 lpEnumFunc: DESKTOPENUMPROCW,
1526 lParam: LPARAM,
1527 ) -> BOOL;
1528}
1529extern "C" {
1530 pub fn EnumDesktopWindows(
1531 hDesktop: HDESK,
1532 lpfn: WNDENUMPROC,
1533 lParam: LPARAM,
1534 ) -> BOOL;
1535}
1536extern "C" {
1537 pub fn EnumWindowStationsA(
1538 lpEnumFunc: WINSTAENUMPROCA,
1539 lParam: LPARAM,
1540 ) -> BOOL;
1541}
1542extern "C" {
1543 pub fn EnumWindowStationsW(
1544 lpEnumFunc: WINSTAENUMPROCW,
1545 lParam: LPARAM,
1546 ) -> BOOL;
1547}
1548extern "C" {
1549 pub fn EnumClipboardFormats(format: UINT) -> UINT;
1550}
1551extern "C" {
1552 pub fn EnumPropsExA(
1553 hWnd: HWND,
1554 lpEnumFunc: PROPENUMPROCEXA,
1555 lParam: LPARAM,
1556 ) -> ::std::os::raw::c_int;
1557}
1558extern "C" {
1559 pub fn EnumPropsExW(
1560 hWnd: HWND,
1561 lpEnumFunc: PROPENUMPROCEXW,
1562 lParam: LPARAM,
1563 ) -> ::std::os::raw::c_int;
1564}
1565extern "C" {
1566 pub fn EnumPropsA(
1567 hWnd: HWND,
1568 lpEnumFunc: PROPENUMPROCA,
1569 ) -> ::std::os::raw::c_int;
1570}
1571extern "C" {
1572 pub fn EnumPropsW(
1573 hWnd: HWND,
1574 lpEnumFunc: PROPENUMPROCW,
1575 ) -> ::std::os::raw::c_int;
1576}
1577extern "C" {
1578 pub fn EnumChildWindows(
1579 hWndParent: HWND,
1580 lpEnumFunc: WNDENUMPROC,
1581 lParam: LPARAM,
1582 ) -> BOOL;
1583}
1584extern "C" {
1585 pub fn EnumWindows(lpEnumFunc: WNDENUMPROC, lParam: LPARAM) -> BOOL;
1586}
1587extern "C" {
1588 pub fn EnumThreadWindows(
1589 dwThreadId: DWORD,
1590 lpfn: WNDENUMPROC,
1591 lParam: LPARAM,
1592 ) -> BOOL;
1593}
1594extern "C" {
1595 pub fn EnumDisplaySettingsA(
1596 lpszDeviceName: LPCSTR,
1597 iModeNum: DWORD,
1598 lpDevMode: *mut DEVMODEA,
1599 ) -> BOOL;
1600}
1601extern "C" {
1602 pub fn EnumDisplaySettingsW(
1603 lpszDeviceName: LPCWSTR,
1604 iModeNum: DWORD,
1605 lpDevMode: *mut DEVMODEW,
1606 ) -> BOOL;
1607}
1608extern "C" {
1609 pub fn EnumDisplaySettingsExA(
1610 lpszDeviceName: LPCSTR,
1611 iModeNum: DWORD,
1612 lpDevMode: *mut DEVMODEA,
1613 dwFlags: DWORD,
1614 ) -> BOOL;
1615}
1616extern "C" {
1617 pub fn EnumDisplaySettingsExW(
1618 lpszDeviceName: LPCWSTR,
1619 iModeNum: DWORD,
1620 lpDevMode: *mut DEVMODEW,
1621 dwFlags: DWORD,
1622 ) -> BOOL;
1623}
1624extern "C" {
1625 pub fn EnumDisplayDevicesA(
1626 lpDevice: LPCSTR,
1627 iDevNum: DWORD,
1628 lpDisplayDevice: PDISPLAY_DEVICEA,
1629 dwFlags: DWORD,
1630 ) -> BOOL;
1631}
1632extern "C" {
1633 pub fn EnumDisplayDevicesW(
1634 lpDevice: LPCWSTR,
1635 iDevNum: DWORD,
1636 lpDisplayDevice: PDISPLAY_DEVICEW,
1637 dwFlags: DWORD,
1638 ) -> BOOL;
1639}
1640pub type MONITORENUMPROC = ::std::option::Option<
1641 unsafe extern "C" fn(
1642 arg1: HMONITOR,
1643 arg2: HDC,
1644 arg3: LPRECT,
1645 arg4: LPARAM,
1646 ) -> BOOL,
1647>;
1648extern "C" {
1649 pub fn EnumDisplayMonitors(
1650 hdc: HDC,
1651 lprcClip: LPCRECT,
1652 lpfnEnum: MONITORENUMPROC,
1653 dwData: LPARAM,
1654 ) -> BOOL;
1655}
1656pub type LGRPID = DWORD;
1657pub type CALTYPE = DWORD;
1658pub type CALID = DWORD;
1659pub type GEOCLASS = DWORD;
1660pub type GEOID = LONG;
1661pub type LOCALE_ENUMPROCA =
1662 ::std::option::Option<unsafe extern "C" fn(arg1: LPSTR) -> BOOL>;
1663pub type LOCALE_ENUMPROCW =
1664 ::std::option::Option<unsafe extern "C" fn(arg1: LPWSTR) -> BOOL>;
1665pub type LANGUAGEGROUP_ENUMPROCA = ::std::option::Option<
1666 unsafe extern "C" fn(
1667 arg1: LGRPID,
1668 arg2: LPSTR,
1669 arg3: LPSTR,
1670 arg4: DWORD,
1671 arg5: LONG_PTR,
1672 ) -> BOOL,
1673>;
1674pub type LANGGROUPLOCALE_ENUMPROCA = ::std::option::Option<
1675 unsafe extern "C" fn(
1676 arg1: LGRPID,
1677 arg2: LCID,
1678 arg3: LPSTR,
1679 arg4: LONG_PTR,
1680 ) -> BOOL,
1681>;
1682pub type UILANGUAGE_ENUMPROCA = ::std::option::Option<
1683 unsafe extern "C" fn(arg1: LPSTR, arg2: LONG_PTR) -> BOOL,
1684>;
1685pub type CODEPAGE_ENUMPROCA =
1686 ::std::option::Option<unsafe extern "C" fn(arg1: LPSTR) -> BOOL>;
1687pub type DATEFMT_ENUMPROCA =
1688 ::std::option::Option<unsafe extern "C" fn(arg1: LPSTR) -> BOOL>;
1689pub type DATEFMT_ENUMPROCEXA = ::std::option::Option<
1690 unsafe extern "C" fn(arg1: LPSTR, arg2: CALID) -> BOOL,
1691>;
1692pub type TIMEFMT_ENUMPROCA =
1693 ::std::option::Option<unsafe extern "C" fn(arg1: LPSTR) -> BOOL>;
1694pub type CALINFO_ENUMPROCA =
1695 ::std::option::Option<unsafe extern "C" fn(arg1: LPSTR) -> BOOL>;
1696pub type CALINFO_ENUMPROCEXA = ::std::option::Option<
1697 unsafe extern "C" fn(arg1: LPSTR, arg2: CALID) -> BOOL,
1698>;
1699pub type LANGUAGEGROUP_ENUMPROCW = ::std::option::Option<
1700 unsafe extern "C" fn(
1701 arg1: LGRPID,
1702 arg2: LPWSTR,
1703 arg3: LPWSTR,
1704 arg4: DWORD,
1705 arg5: LONG_PTR,
1706 ) -> BOOL,
1707>;
1708pub type LANGGROUPLOCALE_ENUMPROCW = ::std::option::Option<
1709 unsafe extern "C" fn(
1710 arg1: LGRPID,
1711 arg2: LCID,
1712 arg3: LPWSTR,
1713 arg4: LONG_PTR,
1714 ) -> BOOL,
1715>;
1716pub type UILANGUAGE_ENUMPROCW = ::std::option::Option<
1717 unsafe extern "C" fn(arg1: LPWSTR, arg2: LONG_PTR) -> BOOL,
1718>;
1719pub type CODEPAGE_ENUMPROCW =
1720 ::std::option::Option<unsafe extern "C" fn(arg1: LPWSTR) -> BOOL>;
1721pub type DATEFMT_ENUMPROCW =
1722 ::std::option::Option<unsafe extern "C" fn(arg1: LPWSTR) -> BOOL>;
1723pub type DATEFMT_ENUMPROCEXW = ::std::option::Option<
1724 unsafe extern "C" fn(arg1: LPWSTR, arg2: CALID) -> BOOL,
1725>;
1726pub type TIMEFMT_ENUMPROCW =
1727 ::std::option::Option<unsafe extern "C" fn(arg1: LPWSTR) -> BOOL>;
1728pub type CALINFO_ENUMPROCW =
1729 ::std::option::Option<unsafe extern "C" fn(arg1: LPWSTR) -> BOOL>;
1730pub type CALINFO_ENUMPROCEXW = ::std::option::Option<
1731 unsafe extern "C" fn(arg1: LPWSTR, arg2: CALID) -> BOOL,
1732>;
1733pub type GEO_ENUMPROC =
1734 ::std::option::Option<unsafe extern "C" fn(arg1: GEOID) -> BOOL>;
1735pub type GEO_ENUMNAMEPROC = ::std::option::Option<
1736 unsafe extern "C" fn(arg1: PWSTR, arg2: LPARAM) -> BOOL,
1737>;
1738extern "C" {
1739 pub fn EnumCalendarInfoA(
1740 lpCalInfoEnumProc: CALINFO_ENUMPROCA,
1741 Locale: LCID,
1742 Calendar: CALID,
1743 CalType: CALTYPE,
1744 ) -> BOOL;
1745}
1746extern "C" {
1747 pub fn EnumCalendarInfoW(
1748 lpCalInfoEnumProc: CALINFO_ENUMPROCW,
1749 Locale: LCID,
1750 Calendar: CALID,
1751 CalType: CALTYPE,
1752 ) -> BOOL;
1753}
1754extern "C" {
1755 pub fn EnumCalendarInfoExA(
1756 lpCalInfoEnumProcEx: CALINFO_ENUMPROCEXA,
1757 Locale: LCID,
1758 Calendar: CALID,
1759 CalType: CALTYPE,
1760 ) -> BOOL;
1761}
1762extern "C" {
1763 pub fn EnumCalendarInfoExW(
1764 lpCalInfoEnumProcEx: CALINFO_ENUMPROCEXW,
1765 Locale: LCID,
1766 Calendar: CALID,
1767 CalType: CALTYPE,
1768 ) -> BOOL;
1769}
1770extern "C" {
1771 pub fn EnumTimeFormatsA(
1772 lpTimeFmtEnumProc: TIMEFMT_ENUMPROCA,
1773 Locale: LCID,
1774 dwFlags: DWORD,
1775 ) -> BOOL;
1776}
1777extern "C" {
1778 pub fn EnumTimeFormatsW(
1779 lpTimeFmtEnumProc: TIMEFMT_ENUMPROCW,
1780 Locale: LCID,
1781 dwFlags: DWORD,
1782 ) -> BOOL;
1783}
1784extern "C" {
1785 pub fn EnumDateFormatsA(
1786 lpDateFmtEnumProc: DATEFMT_ENUMPROCA,
1787 Locale: LCID,
1788 dwFlags: DWORD,
1789 ) -> BOOL;
1790}
1791extern "C" {
1792 pub fn EnumDateFormatsW(
1793 lpDateFmtEnumProc: DATEFMT_ENUMPROCW,
1794 Locale: LCID,
1795 dwFlags: DWORD,
1796 ) -> BOOL;
1797}
1798extern "C" {
1799 pub fn EnumDateFormatsExA(
1800 lpDateFmtEnumProcEx: DATEFMT_ENUMPROCEXA,
1801 Locale: LCID,
1802 dwFlags: DWORD,
1803 ) -> BOOL;
1804}
1805extern "C" {
1806 pub fn EnumDateFormatsExW(
1807 lpDateFmtEnumProcEx: DATEFMT_ENUMPROCEXW,
1808 Locale: LCID,
1809 dwFlags: DWORD,
1810 ) -> BOOL;
1811}
1812extern "C" {
1813 pub fn EnumSystemGeoID(
1814 GeoClass: GEOCLASS,
1815 ParentGeoId: GEOID,
1816 lpGeoEnumProc: GEO_ENUMPROC,
1817 ) -> BOOL;
1818}
1819extern "C" {
1820 pub fn EnumSystemGeoNames(
1821 geoClass: GEOCLASS,
1822 geoEnumProc: GEO_ENUMNAMEPROC,
1823 data: LPARAM,
1824 ) -> BOOL;
1825}
1826extern "C" {
1827 pub fn EnumSystemLocalesA(
1828 lpLocaleEnumProc: LOCALE_ENUMPROCA,
1829 dwFlags: DWORD,
1830 ) -> BOOL;
1831}
1832extern "C" {
1833 pub fn EnumSystemLocalesW(
1834 lpLocaleEnumProc: LOCALE_ENUMPROCW,
1835 dwFlags: DWORD,
1836 ) -> BOOL;
1837}
1838extern "C" {
1839 pub fn EnumSystemLanguageGroupsA(
1840 lpLanguageGroupEnumProc: LANGUAGEGROUP_ENUMPROCA,
1841 dwFlags: DWORD,
1842 lParam: LONG_PTR,
1843 ) -> BOOL;
1844}
1845extern "C" {
1846 pub fn EnumSystemLanguageGroupsW(
1847 lpLanguageGroupEnumProc: LANGUAGEGROUP_ENUMPROCW,
1848 dwFlags: DWORD,
1849 lParam: LONG_PTR,
1850 ) -> BOOL;
1851}
1852extern "C" {
1853 pub fn EnumLanguageGroupLocalesA(
1854 lpLangGroupLocaleEnumProc: LANGGROUPLOCALE_ENUMPROCA,
1855 LanguageGroup: LGRPID,
1856 dwFlags: DWORD,
1857 lParam: LONG_PTR,
1858 ) -> BOOL;
1859}
1860extern "C" {
1861 pub fn EnumLanguageGroupLocalesW(
1862 lpLangGroupLocaleEnumProc: LANGGROUPLOCALE_ENUMPROCW,
1863 LanguageGroup: LGRPID,
1864 dwFlags: DWORD,
1865 lParam: LONG_PTR,
1866 ) -> BOOL;
1867}
1868extern "C" {
1869 pub fn EnumUILanguagesA(
1870 lpUILanguageEnumProc: UILANGUAGE_ENUMPROCA,
1871 dwFlags: DWORD,
1872 lParam: LONG_PTR,
1873 ) -> BOOL;
1874}
1875extern "C" {
1876 pub fn EnumUILanguagesW(
1877 lpUILanguageEnumProc: UILANGUAGE_ENUMPROCW,
1878 dwFlags: DWORD,
1879 lParam: LONG_PTR,
1880 ) -> BOOL;
1881}
1882extern "C" {
1883 pub fn EnumSystemCodePagesA(
1884 lpCodePageEnumProc: CODEPAGE_ENUMPROCA,
1885 dwFlags: DWORD,
1886 ) -> BOOL;
1887}
1888extern "C" {
1889 pub fn EnumSystemCodePagesW(
1890 lpCodePageEnumProc: CODEPAGE_ENUMPROCW,
1891 dwFlags: DWORD,
1892 ) -> BOOL;
1893}
1894pub type CALINFO_ENUMPROCEXEX = ::std::option::Option<
1895 unsafe extern "C" fn(
1896 arg1: LPWSTR,
1897 arg2: CALID,
1898 arg3: LPWSTR,
1899 arg4: LPARAM,
1900 ) -> BOOL,
1901>;
1902extern "C" {
1903 pub fn EnumCalendarInfoExEx(
1904 pCalInfoEnumProcExEx: CALINFO_ENUMPROCEXEX,
1905 lpLocaleName: LPCWSTR,
1906 Calendar: CALID,
1907 lpReserved: LPCWSTR,
1908 CalType: CALTYPE,
1909 lParam: LPARAM,
1910 ) -> BOOL;
1911}
1912pub type DATEFMT_ENUMPROCEXEX = ::std::option::Option<
1913 unsafe extern "C" fn(arg1: LPWSTR, arg2: CALID, arg3: LPARAM) -> BOOL,
1914>;
1915extern "C" {
1916 pub fn EnumDateFormatsExEx(
1917 lpDateFmtEnumProcExEx: DATEFMT_ENUMPROCEXEX,
1918 lpLocaleName: LPCWSTR,
1919 dwFlags: DWORD,
1920 lParam: LPARAM,
1921 ) -> BOOL;
1922}
1923pub type TIMEFMT_ENUMPROCEX = ::std::option::Option<
1924 unsafe extern "C" fn(arg1: LPWSTR, arg2: LPARAM) -> BOOL,
1925>;
1926extern "C" {
1927 pub fn EnumTimeFormatsEx(
1928 lpTimeFmtEnumProcEx: TIMEFMT_ENUMPROCEX,
1929 lpLocaleName: LPCWSTR,
1930 dwFlags: DWORD,
1931 lParam: LPARAM,
1932 ) -> BOOL;
1933}
1934pub type LOCALE_ENUMPROCEX = ::std::option::Option<
1935 unsafe extern "C" fn(arg1: LPWSTR, arg2: DWORD, arg3: LPARAM) -> BOOL,
1936>;
1937extern "C" {
1938 pub fn EnumSystemLocalesEx(
1939 lpLocaleEnumProcEx: LOCALE_ENUMPROCEX,
1940 dwFlags: DWORD,
1941 lParam: LPARAM,
1942 lpReserved: LPVOID,
1943 ) -> BOOL;
1944}
1945pub type UUID = GUID;
1946extern "C" {
1947 pub fn EnumPrintersA(
1948 Flags: DWORD,
1949 Name: LPSTR,
1950 Level: DWORD,
1951 pPrinterEnum: LPBYTE,
1952 cbBuf: DWORD,
1953 pcbNeeded: LPDWORD,
1954 pcReturned: LPDWORD,
1955 ) -> BOOL;
1956}
1957extern "C" {
1958 pub fn EnumPrintersW(
1959 Flags: DWORD,
1960 Name: LPWSTR,
1961 Level: DWORD,
1962 pPrinterEnum: LPBYTE,
1963 cbBuf: DWORD,
1964 pcbNeeded: LPDWORD,
1965 pcReturned: LPDWORD,
1966 ) -> BOOL;
1967}
1968extern "C" {
1969 pub fn EnumJobsA(
1970 hPrinter: HANDLE,
1971 FirstJob: DWORD,
1972 NoJobs: DWORD,
1973 Level: DWORD,
1974 pJob: LPBYTE,
1975 cbBuf: DWORD,
1976 pcbNeeded: LPDWORD,
1977 pcReturned: LPDWORD,
1978 ) -> BOOL;
1979}
1980extern "C" {
1981 pub fn EnumJobsW(
1982 hPrinter: HANDLE,
1983 FirstJob: DWORD,
1984 NoJobs: DWORD,
1985 Level: DWORD,
1986 pJob: LPBYTE,
1987 cbBuf: DWORD,
1988 pcbNeeded: LPDWORD,
1989 pcReturned: LPDWORD,
1990 ) -> BOOL;
1991}
1992extern "C" {
1993 pub fn EnumPrinterDriversA(
1994 pName: LPSTR,
1995 pEnvironment: LPSTR,
1996 Level: DWORD,
1997 pDriverInfo: LPBYTE,
1998 cbBuf: DWORD,
1999 pcbNeeded: LPDWORD,
2000 pcReturned: LPDWORD,
2001 ) -> BOOL;
2002}
2003extern "C" {
2004 pub fn EnumPrinterDriversW(
2005 pName: LPWSTR,
2006 pEnvironment: LPWSTR,
2007 Level: DWORD,
2008 pDriverInfo: LPBYTE,
2009 cbBuf: DWORD,
2010 pcbNeeded: LPDWORD,
2011 pcReturned: LPDWORD,
2012 ) -> BOOL;
2013}
2014extern "C" {
2015 pub fn EnumPrintProcessorsA(
2016 pName: LPSTR,
2017 pEnvironment: LPSTR,
2018 Level: DWORD,
2019 pPrintProcessorInfo: LPBYTE,
2020 cbBuf: DWORD,
2021 pcbNeeded: LPDWORD,
2022 pcReturned: LPDWORD,
2023 ) -> BOOL;
2024}
2025extern "C" {
2026 pub fn EnumPrintProcessorsW(
2027 pName: LPWSTR,
2028 pEnvironment: LPWSTR,
2029 Level: DWORD,
2030 pPrintProcessorInfo: LPBYTE,
2031 cbBuf: DWORD,
2032 pcbNeeded: LPDWORD,
2033 pcReturned: LPDWORD,
2034 ) -> BOOL;
2035}
2036extern "C" {
2037 pub fn EnumPrintProcessorDatatypesA(
2038 pName: LPSTR,
2039 pPrintProcessorName: LPSTR,
2040 Level: DWORD,
2041 pDatatypes: LPBYTE,
2042 cbBuf: DWORD,
2043 pcbNeeded: LPDWORD,
2044 pcReturned: LPDWORD,
2045 ) -> BOOL;
2046}
2047extern "C" {
2048 pub fn EnumPrintProcessorDatatypesW(
2049 pName: LPWSTR,
2050 pPrintProcessorName: LPWSTR,
2051 Level: DWORD,
2052 pDatatypes: LPBYTE,
2053 cbBuf: DWORD,
2054 pcbNeeded: LPDWORD,
2055 pcReturned: LPDWORD,
2056 ) -> BOOL;
2057}
2058extern "C" {
2059 pub fn EnumPrinterDataA(
2060 hPrinter: HANDLE,
2061 dwIndex: DWORD,
2062 pValueName: LPSTR,
2063 cbValueName: DWORD,
2064 pcbValueName: LPDWORD,
2065 pType: LPDWORD,
2066 pData: LPBYTE,
2067 cbData: DWORD,
2068 pcbData: LPDWORD,
2069 ) -> DWORD;
2070}
2071extern "C" {
2072 pub fn EnumPrinterDataW(
2073 hPrinter: HANDLE,
2074 dwIndex: DWORD,
2075 pValueName: LPWSTR,
2076 cbValueName: DWORD,
2077 pcbValueName: LPDWORD,
2078 pType: LPDWORD,
2079 pData: LPBYTE,
2080 cbData: DWORD,
2081 pcbData: LPDWORD,
2082 ) -> DWORD;
2083}
2084extern "C" {
2085 pub fn EnumPrinterDataExA(
2086 hPrinter: HANDLE,
2087 pKeyName: LPCSTR,
2088 pEnumValues: LPBYTE,
2089 cbEnumValues: DWORD,
2090 pcbEnumValues: LPDWORD,
2091 pnEnumValues: LPDWORD,
2092 ) -> DWORD;
2093}
2094extern "C" {
2095 pub fn EnumPrinterDataExW(
2096 hPrinter: HANDLE,
2097 pKeyName: LPCWSTR,
2098 pEnumValues: LPBYTE,
2099 cbEnumValues: DWORD,
2100 pcbEnumValues: LPDWORD,
2101 pnEnumValues: LPDWORD,
2102 ) -> DWORD;
2103}
2104extern "C" {
2105 pub fn EnumPrinterKeyA(
2106 hPrinter: HANDLE,
2107 pKeyName: LPCSTR,
2108 pSubkey: LPSTR,
2109 cbSubkey: DWORD,
2110 pcbSubkey: LPDWORD,
2111 ) -> DWORD;
2112}
2113extern "C" {
2114 pub fn EnumPrinterKeyW(
2115 hPrinter: HANDLE,
2116 pKeyName: LPCWSTR,
2117 pSubkey: LPWSTR,
2118 cbSubkey: DWORD,
2119 pcbSubkey: LPDWORD,
2120 ) -> DWORD;
2121}
2122extern "C" {
2123 pub fn EnumFormsA(
2124 hPrinter: HANDLE,
2125 Level: DWORD,
2126 pForm: LPBYTE,
2127 cbBuf: DWORD,
2128 pcbNeeded: LPDWORD,
2129 pcReturned: LPDWORD,
2130 ) -> BOOL;
2131}
2132extern "C" {
2133 pub fn EnumFormsW(
2134 hPrinter: HANDLE,
2135 Level: DWORD,
2136 pForm: LPBYTE,
2137 cbBuf: DWORD,
2138 pcbNeeded: LPDWORD,
2139 pcReturned: LPDWORD,
2140 ) -> BOOL;
2141}
2142extern "C" {
2143 pub fn EnumMonitorsA(
2144 pName: LPSTR,
2145 Level: DWORD,
2146 pMonitor: LPBYTE,
2147 cbBuf: DWORD,
2148 pcbNeeded: LPDWORD,
2149 pcReturned: LPDWORD,
2150 ) -> BOOL;
2151}
2152extern "C" {
2153 pub fn EnumMonitorsW(
2154 pName: LPWSTR,
2155 Level: DWORD,
2156 pMonitor: LPBYTE,
2157 cbBuf: DWORD,
2158 pcbNeeded: LPDWORD,
2159 pcReturned: LPDWORD,
2160 ) -> BOOL;
2161}
2162extern "C" {
2163 pub fn EnumPortsA(
2164 pName: LPSTR,
2165 Level: DWORD,
2166 pPort: LPBYTE,
2167 cbBuf: DWORD,
2168 pcbNeeded: LPDWORD,
2169 pcReturned: LPDWORD,
2170 ) -> BOOL;
2171}
2172extern "C" {
2173 pub fn EnumPortsW(
2174 pName: LPWSTR,
2175 Level: DWORD,
2176 pPort: LPBYTE,
2177 cbBuf: DWORD,
2178 pcbNeeded: LPDWORD,
2179 pcReturned: LPDWORD,
2180 ) -> BOOL;
2181}
2182pub const EPrintPropertyType_kPropertyTypeString: EPrintPropertyType = 1;
2183pub const EPrintPropertyType_kPropertyTypeInt32: EPrintPropertyType = 2;
2184pub const EPrintPropertyType_kPropertyTypeInt64: EPrintPropertyType = 3;
2185pub const EPrintPropertyType_kPropertyTypeByte: EPrintPropertyType = 4;
2186pub const EPrintPropertyType_kPropertyTypeTime: EPrintPropertyType = 5;
2187pub const EPrintPropertyType_kPropertyTypeDevMode: EPrintPropertyType = 6;
2188pub const EPrintPropertyType_kPropertyTypeSD: EPrintPropertyType = 7;
2189pub const EPrintPropertyType_kPropertyTypeNotificationReply:
2190 EPrintPropertyType = 8;
2191pub const EPrintPropertyType_kPropertyTypeNotificationOptions:
2192 EPrintPropertyType = 9;
2193pub const EPrintPropertyType_kPropertyTypeBuffer: EPrintPropertyType = 10;
2194pub type EPrintPropertyType = ::std::os::raw::c_int;
2195#[repr(C)]
2196#[derive(Copy, Clone)]
2197pub struct PrintPropertyValue {
2198 pub ePropertyType: EPrintPropertyType,
2199 pub value: PrintPropertyValue__bindgen_ty_1,
2200}
2201#[repr(C)]
2202#[derive(Copy, Clone)]
2203pub union PrintPropertyValue__bindgen_ty_1 {
2204 pub propertyByte: BYTE,
2205 pub propertyString: PWSTR,
2206 pub propertyInt32: LONG,
2207 pub propertyInt64: LONGLONG,
2208 pub propertyBlob: PrintPropertyValue__bindgen_ty_1__bindgen_ty_1,
2209}
2210#[repr(C)]
2211#[derive(Debug, Copy, Clone, Hash, PartialOrd, Ord, PartialEq, Eq)]
2212pub struct PrintPropertyValue__bindgen_ty_1__bindgen_ty_1 {
2213 pub cbBuf: DWORD,
2214 pub pBuf: LPVOID,
2215}
2216impl Default for PrintPropertyValue__bindgen_ty_1__bindgen_ty_1 {
2217 fn default() -> Self {
2218 let mut s = ::std::mem::MaybeUninit::<Self>::uninit();
2219 unsafe {
2220 ::std::ptr::write_bytes(s.as_mut_ptr(), 0, 1);
2221 s.assume_init()
2222 }
2223 }
2224}
2225impl Default for PrintPropertyValue__bindgen_ty_1 {
2226 fn default() -> Self {
2227 let mut s = ::std::mem::MaybeUninit::<Self>::uninit();
2228 unsafe {
2229 ::std::ptr::write_bytes(s.as_mut_ptr(), 0, 1);
2230 s.assume_init()
2231 }
2232 }
2233}
2234impl ::std::fmt::Debug for PrintPropertyValue__bindgen_ty_1 {
2235 fn fmt(&self, f: &mut ::std::fmt::Formatter<'_>) -> ::std::fmt::Result {
2236 write!(f, "PrintPropertyValue__bindgen_ty_1 {{ union }}")
2237 }
2238}
2239impl Default for PrintPropertyValue {
2240 fn default() -> Self {
2241 let mut s = ::std::mem::MaybeUninit::<Self>::uninit();
2242 unsafe {
2243 ::std::ptr::write_bytes(s.as_mut_ptr(), 0, 1);
2244 s.assume_init()
2245 }
2246 }
2247}
2248impl ::std::fmt::Debug for PrintPropertyValue {
2249 fn fmt(&self, f: &mut ::std::fmt::Formatter<'_>) -> ::std::fmt::Result {
2250 write!(
2251 f,
2252 "PrintPropertyValue {{ ePropertyType: {:?}, value: {:?} }}",
2253 self.ePropertyType, self.value
2254 )
2255 }
2256}
2257#[repr(C)]
2258#[derive(Copy, Clone)]
2259pub struct PrintNamedProperty {
2260 pub propertyName: *mut WCHAR,
2261 pub propertyValue: PrintPropertyValue,
2262}
2263impl Default for PrintNamedProperty {
2264 fn default() -> Self {
2265 let mut s = ::std::mem::MaybeUninit::<Self>::uninit();
2266 unsafe {
2267 ::std::ptr::write_bytes(s.as_mut_ptr(), 0, 1);
2268 s.assume_init()
2269 }
2270 }
2271}
2272impl ::std::fmt::Debug for PrintNamedProperty {
2273 fn fmt(&self, f: &mut ::std::fmt::Formatter<'_>) -> ::std::fmt::Result {
2274 write!(
2275 f,
2276 "PrintNamedProperty {{ propertyName: {:?}, propertyValue: {:?} }}",
2277 self.propertyName, self.propertyValue
2278 )
2279 }
2280}
2281extern "C" {
2282 pub fn EnumJobNamedProperties(
2283 hPrinter: HANDLE,
2284 JobId: DWORD,
2285 pcProperties: *mut DWORD,
2286 ppProperties: *mut *mut PrintNamedProperty,
2287 ) -> DWORD;
2288}
2289extern "C" {
2290 pub static IID_IUnknown: IID;
2291}
2292#[repr(C)]
2293#[derive(Debug, Default, Copy, Clone, Hash, PartialOrd, Ord, PartialEq, Eq)]
2294pub struct IUnknownVtbl {
2295 pub QueryInterface: ::std::option::Option<
2296 unsafe extern "C" fn(
2297 This: *mut IUnknown,
2298 riid: *const IID,
2299 ppvObject: *mut *mut ::std::os::raw::c_void,
2300 ) -> HRESULT,
2301 >,
2302 pub AddRef: ::std::option::Option<
2303 unsafe extern "C" fn(This: *mut IUnknown) -> ULONG,
2304 >,
2305 pub Release: ::std::option::Option<
2306 unsafe extern "C" fn(This: *mut IUnknown) -> ULONG,
2307 >,
2308}
2309#[repr(C)]
2310#[derive(Debug, Copy, Clone, Hash, PartialOrd, Ord, PartialEq, Eq)]
2311pub struct IUnknown {
2312 pub lpVtbl: *mut IUnknownVtbl,
2313}
2314impl Default for IUnknown {
2315 fn default() -> Self {
2316 let mut s = ::std::mem::MaybeUninit::<Self>::uninit();
2317 unsafe {
2318 ::std::ptr::write_bytes(s.as_mut_ptr(), 0, 1);
2319 s.assume_init()
2320 }
2321 }
2322}
2323extern "C" {
2324 pub static IID_AsyncIUnknown: IID;
2325}
2326extern "C" {
2327 pub static IID_IClassFactory: IID;
2328}
2329extern "C" {
2330 pub static IID_IMarshal: IID;
2331}
2332extern "C" {
2333 pub static IID_INoMarshal: IID;
2334}
2335extern "C" {
2336 pub static IID_IAgileObject: IID;
2337}
2338extern "C" {
2339 pub static IID_IActivationFilter: IID;
2340}
2341extern "C" {
2342 pub static IID_IMarshal2: IID;
2343}
2344extern "C" {
2345 pub static IID_IMalloc: IID;
2346}
2347extern "C" {
2348 pub static IID_IStdMarshalInfo: IID;
2349}
2350extern "C" {
2351 pub static IID_IExternalConnection: IID;
2352}
2353extern "C" {
2354 pub static IID_IMultiQI: IID;
2355}
2356extern "C" {
2357 pub static IID_AsyncIMultiQI: IID;
2358}
2359extern "C" {
2360 pub static IID_IInternalUnknown: IID;
2361}
2362extern "C" {
2363 pub static IID_IEnumUnknown: IID;
2364}
2365extern "C" {
2366 pub static IID_IEnumString: IID;
2367}
2368extern "C" {
2369 pub static IID_ISequentialStream: IID;
2370}
2371extern "C" {
2372 pub static IID_IStream: IID;
2373}
2374extern "C" {
2375 pub static IID_IRpcChannelBuffer: IID;
2376}
2377extern "C" {
2378 pub static IID_IRpcChannelBuffer2: IID;
2379}
2380extern "C" {
2381 pub static IID_IAsyncRpcChannelBuffer: IID;
2382}
2383extern "C" {
2384 pub static IID_IRpcChannelBuffer3: IID;
2385}
2386extern "C" {
2387 pub static IID_IRpcSyntaxNegotiate: IID;
2388}
2389extern "C" {
2390 pub static IID_IRpcProxyBuffer: IID;
2391}
2392extern "C" {
2393 pub static IID_IRpcStubBuffer: IID;
2394}
2395extern "C" {
2396 pub static IID_IPSFactoryBuffer: IID;
2397}
2398extern "C" {
2399 pub static IID_IChannelHook: IID;
2400}
2401extern "C" {
2402 pub static IID_IClientSecurity: IID;
2403}
2404extern "C" {
2405 pub static IID_IServerSecurity: IID;
2406}
2407extern "C" {
2408 pub static IID_IRpcOptions: IID;
2409}
2410extern "C" {
2411 pub static IID_IGlobalOptions: IID;
2412}
2413extern "C" {
2414 pub static IID_ISurrogate: IID;
2415}
2416extern "C" {
2417 pub static IID_IGlobalInterfaceTable: IID;
2418}
2419extern "C" {
2420 pub static IID_ISynchronize: IID;
2421}
2422extern "C" {
2423 pub static IID_ISynchronizeHandle: IID;
2424}
2425extern "C" {
2426 pub static IID_ISynchronizeEvent: IID;
2427}
2428extern "C" {
2429 pub static IID_ISynchronizeContainer: IID;
2430}
2431extern "C" {
2432 pub static IID_ISynchronizeMutex: IID;
2433}
2434extern "C" {
2435 pub static IID_ICancelMethodCalls: IID;
2436}
2437extern "C" {
2438 pub static IID_IAsyncManager: IID;
2439}
2440extern "C" {
2441 pub static IID_ICallFactory: IID;
2442}
2443extern "C" {
2444 pub static IID_IRpcHelper: IID;
2445}
2446extern "C" {
2447 pub static IID_IReleaseMarshalBuffers: IID;
2448}
2449extern "C" {
2450 pub static IID_IWaitMultiple: IID;
2451}
2452extern "C" {
2453 pub static IID_IAddrTrackingControl: IID;
2454}
2455extern "C" {
2456 pub static IID_IAddrExclusionControl: IID;
2457}
2458extern "C" {
2459 pub static IID_IPipeByte: IID;
2460}
2461extern "C" {
2462 pub static IID_AsyncIPipeByte: IID;
2463}
2464extern "C" {
2465 pub static IID_IPipeLong: IID;
2466}
2467extern "C" {
2468 pub static IID_AsyncIPipeLong: IID;
2469}
2470extern "C" {
2471 pub static IID_IPipeDouble: IID;
2472}
2473extern "C" {
2474 pub static IID_AsyncIPipeDouble: IID;
2475}
2476extern "C" {
2477 pub static IID_IComThreadingInfo: IID;
2478}
2479extern "C" {
2480 pub static IID_IProcessInitControl: IID;
2481}
2482extern "C" {
2483 pub static IID_IFastRundown: IID;
2484}
2485extern "C" {
2486 pub static IID_IMarshalingStream: IID;
2487}
2488extern "C" {
2489 pub static IID_IAgileReference: IID;
2490}
2491extern "C" {
2492 pub static IID_ICallbackWithNoReentrancyToApplicationSTA: GUID;
2493}
2494extern "C" {
2495 pub static IID_IMachineGlobalObjectTable: IID;
2496}
2497extern "C" {
2498 pub static IID_IRpcChannel: IID;
2499}
2500extern "C" {
2501 pub static IID_IRpcStub: IID;
2502}
2503extern "C" {
2504 pub static IID_IStubManager: IID;
2505}
2506extern "C" {
2507 pub static IID_IRpcProxy: IID;
2508}
2509extern "C" {
2510 pub static IID_IProxyManager: IID;
2511}
2512extern "C" {
2513 pub static IID_IPSFactory: IID;
2514}
2515extern "C" {
2516 pub static IID_IInternalMoniker: IID;
2517}
2518extern "C" {
2519 pub static IID_IDfReserved1: IID;
2520}
2521extern "C" {
2522 pub static IID_IDfReserved2: IID;
2523}
2524extern "C" {
2525 pub static IID_IDfReserved3: IID;
2526}
2527extern "C" {
2528 pub static IID_IStub: IID;
2529}
2530extern "C" {
2531 pub static IID_IProxy: IID;
2532}
2533extern "C" {
2534 pub static IID_IEnumGeneric: IID;
2535}
2536extern "C" {
2537 pub static IID_IEnumHolder: IID;
2538}
2539extern "C" {
2540 pub static IID_IEnumCallback: IID;
2541}
2542extern "C" {
2543 pub static IID_IOleManager: IID;
2544}
2545extern "C" {
2546 pub static IID_IOlePresObj: IID;
2547}
2548extern "C" {
2549 pub static IID_IDebug: IID;
2550}
2551extern "C" {
2552 pub static IID_IDebugStream: IID;
2553}
2554extern "C" {
2555 pub static IID_IMallocSpy: IID;
2556}
2557extern "C" {
2558 pub static IID_IBindCtx: IID;
2559}
2560extern "C" {
2561 pub static IID_IEnumMoniker: IID;
2562}
2563extern "C" {
2564 pub static IID_IRunnableObject: IID;
2565}
2566extern "C" {
2567 pub static IID_IRunningObjectTable: IID;
2568}
2569extern "C" {
2570 pub static IID_IPersist: IID;
2571}
2572extern "C" {
2573 pub static IID_IPersistStream: IID;
2574}
2575extern "C" {
2576 pub static IID_IMoniker: IID;
2577}
2578extern "C" {
2579 pub static IID_IROTData: IID;
2580}
2581extern "C" {
2582 pub static IID_IEnumSTATSTG: IID;
2583}
2584extern "C" {
2585 pub static IID_IStorage: IID;
2586}
2587extern "C" {
2588 pub static IID_IPersistFile: IID;
2589}
2590extern "C" {
2591 pub static IID_IPersistStorage: IID;
2592}
2593extern "C" {
2594 pub static IID_ILockBytes: IID;
2595}
2596extern "C" {
2597 pub static IID_IEnumFORMATETC: IID;
2598}
2599extern "C" {
2600 pub static IID_IEnumSTATDATA: IID;
2601}
2602extern "C" {
2603 pub static IID_IRootStorage: IID;
2604}
2605extern "C" {
2606 pub static IID_IAdviseSink: IID;
2607}
2608extern "C" {
2609 pub static IID_AsyncIAdviseSink: IID;
2610}
2611extern "C" {
2612 pub static IID_IAdviseSink2: IID;
2613}
2614extern "C" {
2615 pub static IID_AsyncIAdviseSink2: IID;
2616}
2617extern "C" {
2618 pub static IID_IDataObject: IID;
2619}
2620extern "C" {
2621 pub static IID_IDataAdviseHolder: IID;
2622}
2623extern "C" {
2624 pub static IID_IMessageFilter: IID;
2625}
2626extern "C" {
2627 pub static IID_IClassActivator: IID;
2628}
2629extern "C" {
2630 pub static IID_IFillLockBytes: IID;
2631}
2632extern "C" {
2633 pub static IID_IProgressNotify: IID;
2634}
2635extern "C" {
2636 pub static IID_ILayoutStorage: IID;
2637}
2638extern "C" {
2639 pub static IID_IBlockingLock: IID;
2640}
2641extern "C" {
2642 pub static IID_ITimeAndNoticeControl: IID;
2643}
2644extern "C" {
2645 pub static IID_IOplockStorage: IID;
2646}
2647extern "C" {
2648 pub static IID_IDirectWriterLock: IID;
2649}
2650extern "C" {
2651 pub static IID_IUrlMon: IID;
2652}
2653extern "C" {
2654 pub static IID_IForegroundTransfer: IID;
2655}
2656extern "C" {
2657 pub static IID_IThumbnailExtractor: IID;
2658}
2659extern "C" {
2660 pub static IID_IDummyHICONIncluder: IID;
2661}
2662extern "C" {
2663 pub static IID_IProcessLock: IID;
2664}
2665extern "C" {
2666 pub static IID_ISurrogateService: IID;
2667}
2668extern "C" {
2669 pub static IID_IInitializeSpy: IID;
2670}
2671extern "C" {
2672 pub static IID_IApartmentShutdown: IID;
2673}
2674extern "C" {
2675 pub static IID_ICreateTypeInfo: IID;
2676}
2677extern "C" {
2678 pub static IID_ICreateTypeInfo2: IID;
2679}
2680extern "C" {
2681 pub static IID_ICreateTypeLib: IID;
2682}
2683extern "C" {
2684 pub static IID_ICreateTypeLib2: IID;
2685}
2686extern "C" {
2687 pub static IID_IDispatch: IID;
2688}
2689extern "C" {
2690 pub static IID_IEnumVARIANT: IID;
2691}
2692extern "C" {
2693 pub static IID_ITypeComp: IID;
2694}
2695extern "C" {
2696 pub static IID_ITypeInfo: IID;
2697}
2698extern "C" {
2699 pub static IID_ITypeInfo2: IID;
2700}
2701extern "C" {
2702 pub static IID_ITypeLib: IID;
2703}
2704extern "C" {
2705 pub static IID_ITypeLib2: IID;
2706}
2707extern "C" {
2708 pub static IID_ITypeChangeEvents: IID;
2709}
2710extern "C" {
2711 pub static IID_IErrorInfo: IID;
2712}
2713extern "C" {
2714 pub static IID_ICreateErrorInfo: IID;
2715}
2716extern "C" {
2717 pub static IID_ISupportErrorInfo: IID;
2718}
2719extern "C" {
2720 pub static IID_ITypeFactory: IID;
2721}
2722extern "C" {
2723 pub static IID_ITypeMarshal: IID;
2724}
2725extern "C" {
2726 pub static IID_IRecordInfo: IID;
2727}
2728extern "C" {
2729 pub static IID_IErrorLog: IID;
2730}
2731extern "C" {
2732 pub static IID_IPropertyBag: IID;
2733}
2734extern "C" {
2735 pub static IID_ITypeLibRegistrationReader: IID;
2736}
2737extern "C" {
2738 pub static IID_ITypeLibRegistration: IID;
2739}
2740extern "C" {
2741 pub static IID_IPropertyStorage: IID;
2742}
2743extern "C" {
2744 pub static IID_IPropertySetStorage: IID;
2745}
2746extern "C" {
2747 pub static IID_IEnumSTATPROPSTG: IID;
2748}
2749extern "C" {
2750 pub static IID_IEnumSTATPROPSETSTG: IID;
2751}
2752extern "C" {
2753 pub static IID_IOleAdviseHolder: IID;
2754}
2755extern "C" {
2756 pub static IID_IOleCache: IID;
2757}
2758extern "C" {
2759 pub static IID_IOleCache2: IID;
2760}
2761extern "C" {
2762 pub static IID_IOleCacheControl: IID;
2763}
2764extern "C" {
2765 pub static IID_IParseDisplayName: IID;
2766}
2767extern "C" {
2768 pub static IID_IOleContainer: IID;
2769}
2770extern "C" {
2771 pub static IID_IOleClientSite: IID;
2772}
2773extern "C" {
2774 pub static IID_IOleObject: IID;
2775}
2776extern "C" {
2777 pub static IID_IOleWindow: IID;
2778}
2779extern "C" {
2780 pub static IID_IOleLink: IID;
2781}
2782extern "C" {
2783 pub static IID_IOleItemContainer: IID;
2784}
2785extern "C" {
2786 pub static IID_IOleInPlaceUIWindow: IID;
2787}
2788extern "C" {
2789 pub static IID_IOleInPlaceActiveObject: IID;
2790}
2791extern "C" {
2792 pub static IID_IOleInPlaceFrame: IID;
2793}
2794extern "C" {
2795 pub static IID_IOleInPlaceObject: IID;
2796}
2797extern "C" {
2798 pub static IID_IOleInPlaceSite: IID;
2799}
2800extern "C" {
2801 pub static IID_IContinue: IID;
2802}
2803extern "C" {
2804 pub static IID_IViewObject: IID;
2805}
2806extern "C" {
2807 pub static IID_IViewObject2: IID;
2808}
2809extern "C" {
2810 pub static IID_IDropSource: IID;
2811}
2812extern "C" {
2813 pub static IID_IDropTarget: IID;
2814}
2815extern "C" {
2816 pub static IID_IDropSourceNotify: IID;
2817}
2818extern "C" {
2819 pub static IID_IEnterpriseDropTarget: IID;
2820}
2821extern "C" {
2822 pub static IID_IEnumOLEVERB: IID;
2823}
2824extern "C" {
2825 pub static IID_IServiceProvider: IID;
2826}
2827extern "C" {
2828 pub static IID_IXMLDOMImplementation: IID;
2829}
2830extern "C" {
2831 pub static IID_IXMLDOMNode: IID;
2832}
2833extern "C" {
2834 pub static IID_IXMLDOMDocumentFragment: IID;
2835}
2836extern "C" {
2837 pub static IID_IXMLDOMDocument: IID;
2838}
2839extern "C" {
2840 pub static IID_IXMLDOMNodeList: IID;
2841}
2842extern "C" {
2843 pub static IID_IXMLDOMNamedNodeMap: IID;
2844}
2845extern "C" {
2846 pub static IID_IXMLDOMCharacterData: IID;
2847}
2848extern "C" {
2849 pub static IID_IXMLDOMAttribute: IID;
2850}
2851extern "C" {
2852 pub static IID_IXMLDOMElement: IID;
2853}
2854extern "C" {
2855 pub static IID_IXMLDOMText: IID;
2856}
2857extern "C" {
2858 pub static IID_IXMLDOMComment: IID;
2859}
2860extern "C" {
2861 pub static IID_IXMLDOMProcessingInstruction: IID;
2862}
2863extern "C" {
2864 pub static IID_IXMLDOMCDATASection: IID;
2865}
2866extern "C" {
2867 pub static IID_IXMLDOMDocumentType: IID;
2868}
2869extern "C" {
2870 pub static IID_IXMLDOMNotation: IID;
2871}
2872extern "C" {
2873 pub static IID_IXMLDOMEntity: IID;
2874}
2875extern "C" {
2876 pub static IID_IXMLDOMEntityReference: IID;
2877}
2878extern "C" {
2879 pub static IID_IXMLDOMParseError: IID;
2880}
2881extern "C" {
2882 pub static IID_IXTLRuntime: IID;
2883}
2884extern "C" {
2885 pub static DIID_XMLDOMDocumentEvents: IID;
2886}
2887extern "C" {
2888 pub static IID_IXMLHttpRequest: IID;
2889}
2890extern "C" {
2891 pub static IID_IXMLDSOControl: IID;
2892}
2893extern "C" {
2894 pub static IID_IXMLElementCollection: IID;
2895}
2896extern "C" {
2897 pub static IID_IXMLDocument: IID;
2898}
2899extern "C" {
2900 pub static IID_IXMLDocument2: IID;
2901}
2902extern "C" {
2903 pub static IID_IXMLElement: IID;
2904}
2905extern "C" {
2906 pub static IID_IXMLElement2: IID;
2907}
2908extern "C" {
2909 pub static IID_IXMLAttribute: IID;
2910}
2911extern "C" {
2912 pub static IID_IXMLError: IID;
2913}
2914extern "C" {
2915 pub static IID_IAsyncMoniker: IID;
2916}
2917extern "C" {
2918 pub static IID_IAsyncBindCtx: IID;
2919}
2920extern "C" {
2921 pub static IID_IPersistMoniker: IID;
2922}
2923extern "C" {
2924 pub static IID_IMonikerProp: IID;
2925}
2926extern "C" {
2927 pub static IID_IBindProtocol: IID;
2928}
2929extern "C" {
2930 pub static IID_IBinding: IID;
2931}
2932extern "C" {
2933 pub static IID_IBindStatusCallback: IID;
2934}
2935extern "C" {
2936 pub static IID_IBindStatusCallbackEx: IID;
2937}
2938extern "C" {
2939 pub static IID_IAuthenticate: IID;
2940}
2941extern "C" {
2942 pub static IID_IAuthenticateEx: IID;
2943}
2944extern "C" {
2945 pub static IID_IHttpNegotiate: IID;
2946}
2947extern "C" {
2948 pub static IID_IHttpNegotiate2: IID;
2949}
2950extern "C" {
2951 pub static IID_IHttpNegotiate3: IID;
2952}
2953extern "C" {
2954 pub static IID_IWinInetFileStream: IID;
2955}
2956extern "C" {
2957 pub static IID_IWindowForBindingUI: IID;
2958}
2959extern "C" {
2960 pub static IID_ICodeInstall: IID;
2961}
2962extern "C" {
2963 pub static IID_IUri: IID;
2964}
2965extern "C" {
2966 pub static IID_IUriContainer: IID;
2967}
2968extern "C" {
2969 pub static IID_IUriBuilder: IID;
2970}
2971extern "C" {
2972 pub static IID_IUriBuilderFactory: IID;
2973}
2974extern "C" {
2975 pub static IID_IWinInetInfo: IID;
2976}
2977extern "C" {
2978 pub static IID_IHttpSecurity: IID;
2979}
2980extern "C" {
2981 pub static IID_IWinInetHttpInfo: IID;
2982}
2983extern "C" {
2984 pub static IID_IWinInetHttpTimeouts: IID;
2985}
2986extern "C" {
2987 pub static IID_IWinInetCacheHints: IID;
2988}
2989extern "C" {
2990 pub static IID_IWinInetCacheHints2: IID;
2991}
2992extern "C" {
2993 pub static IID_IBindHost: IID;
2994}
2995extern "C" {
2996 pub static IID_IInternet: IID;
2997}
2998extern "C" {
2999 pub static IID_IInternetBindInfo: IID;
3000}
3001extern "C" {
3002 pub static IID_IInternetBindInfoEx: IID;
3003}
3004extern "C" {
3005 pub static IID_IInternetProtocolRoot: IID;
3006}
3007extern "C" {
3008 pub static IID_IInternetProtocol: IID;
3009}
3010extern "C" {
3011 pub static IID_IInternetProtocolEx: IID;
3012}
3013extern "C" {
3014 pub static IID_IInternetProtocolSink: IID;
3015}
3016extern "C" {
3017 pub static IID_IInternetProtocolSinkStackable: IID;
3018}
3019extern "C" {
3020 pub static IID_IInternetSession: IID;
3021}
3022extern "C" {
3023 pub static IID_IInternetThreadSwitch: IID;
3024}
3025extern "C" {
3026 pub static IID_IInternetPriority: IID;
3027}
3028extern "C" {
3029 pub static IID_IInternetProtocolInfo: IID;
3030}
3031extern "C" {
3032 pub static IID_IInternetSecurityMgrSite: IID;
3033}
3034extern "C" {
3035 pub static IID_IInternetSecurityManager: IID;
3036}
3037extern "C" {
3038 pub static IID_IInternetSecurityManagerEx: IID;
3039}
3040extern "C" {
3041 pub static IID_IInternetSecurityManagerEx2: IID;
3042}
3043extern "C" {
3044 pub static IID_IZoneIdentifier: IID;
3045}
3046extern "C" {
3047 pub static IID_IZoneIdentifier2: IID;
3048}
3049extern "C" {
3050 pub static IID_IInternetHostSecurityManager: IID;
3051}
3052extern "C" {
3053 pub static IID_IInternetZoneManager: IID;
3054}
3055extern "C" {
3056 pub static IID_IInternetZoneManagerEx: IID;
3057}
3058extern "C" {
3059 pub static IID_IInternetZoneManagerEx2: IID;
3060}
3061extern "C" {
3062 pub static IID_ISoftDistExt: IID;
3063}
3064extern "C" {
3065 pub static IID_ICatalogFileInfo: IID;
3066}
3067extern "C" {
3068 pub static IID_IDataFilter: IID;
3069}
3070extern "C" {
3071 pub static IID_IEncodingFilterFactory: IID;
3072}
3073extern "C" {
3074 pub static IID_IWrappedProtocol: IID;
3075}
3076extern "C" {
3077 pub static IID_IGetBindHandle: IID;
3078}
3079extern "C" {
3080 pub static IID_IBindCallbackRedirect: IID;
3081}
3082extern "C" {
3083 pub static IID_IBindHttpSecurity: IID;
3084}
3085extern "C" {
3086 pub static IID_StdOle: IID;
3087}
3088extern "C" {
3089 pub static IID_IPrintDialogCallback: GUID;
3090}
3091extern "C" {
3092 pub static IID_IPrintDialogServices: GUID;
3093}
3094#[repr(C)]
3095#[derive(Debug, Default, Copy, Clone, Hash, PartialOrd, Ord, PartialEq, Eq)]
3096pub struct SC_HANDLE__ {
3097 pub unused: ::std::os::raw::c_int,
3098}
3099pub type SC_HANDLE = *mut SC_HANDLE__;
3100pub const _SC_ENUM_TYPE_SC_ENUM_PROCESS_INFO: _SC_ENUM_TYPE = 0;
3101pub type _SC_ENUM_TYPE = ::std::os::raw::c_int;
3102pub use self::_SC_ENUM_TYPE as SC_ENUM_TYPE;
3103#[repr(C)]
3104#[derive(Debug, Default, Copy, Clone, Hash, PartialOrd, Ord, PartialEq, Eq)]
3105pub struct _SERVICE_STATUS {
3106 pub dwServiceType: DWORD,
3107 pub dwCurrentState: DWORD,
3108 pub dwControlsAccepted: DWORD,
3109 pub dwWin32ExitCode: DWORD,
3110 pub dwServiceSpecificExitCode: DWORD,
3111 pub dwCheckPoint: DWORD,
3112 pub dwWaitHint: DWORD,
3113}
3114pub type SERVICE_STATUS = _SERVICE_STATUS;
3115#[repr(C)]
3116#[derive(Debug, Copy, Clone, Hash, PartialOrd, Ord, PartialEq, Eq)]
3117pub struct _ENUM_SERVICE_STATUSA {
3118 pub lpServiceName: LPSTR,
3119 pub lpDisplayName: LPSTR,
3120 pub ServiceStatus: SERVICE_STATUS,
3121}
3122impl Default for _ENUM_SERVICE_STATUSA {
3123 fn default() -> Self {
3124 let mut s = ::std::mem::MaybeUninit::<Self>::uninit();
3125 unsafe {
3126 ::std::ptr::write_bytes(s.as_mut_ptr(), 0, 1);
3127 s.assume_init()
3128 }
3129 }
3130}
3131pub type LPENUM_SERVICE_STATUSA = *mut _ENUM_SERVICE_STATUSA;
3132#[repr(C)]
3133#[derive(Debug, Copy, Clone, Hash, PartialOrd, Ord, PartialEq, Eq)]
3134pub struct _ENUM_SERVICE_STATUSW {
3135 pub lpServiceName: LPWSTR,
3136 pub lpDisplayName: LPWSTR,
3137 pub ServiceStatus: SERVICE_STATUS,
3138}
3139impl Default for _ENUM_SERVICE_STATUSW {
3140 fn default() -> Self {
3141 let mut s = ::std::mem::MaybeUninit::<Self>::uninit();
3142 unsafe {
3143 ::std::ptr::write_bytes(s.as_mut_ptr(), 0, 1);
3144 s.assume_init()
3145 }
3146 }
3147}
3148pub type LPENUM_SERVICE_STATUSW = *mut _ENUM_SERVICE_STATUSW;
3149extern "C" {
3150 pub fn EnumDependentServicesA(
3151 hService: SC_HANDLE,
3152 dwServiceState: DWORD,
3153 lpServices: LPENUM_SERVICE_STATUSA,
3154 cbBufSize: DWORD,
3155 pcbBytesNeeded: LPDWORD,
3156 lpServicesReturned: LPDWORD,
3157 ) -> BOOL;
3158}
3159extern "C" {
3160 pub fn EnumDependentServicesW(
3161 hService: SC_HANDLE,
3162 dwServiceState: DWORD,
3163 lpServices: LPENUM_SERVICE_STATUSW,
3164 cbBufSize: DWORD,
3165 pcbBytesNeeded: LPDWORD,
3166 lpServicesReturned: LPDWORD,
3167 ) -> BOOL;
3168}
3169extern "C" {
3170 pub fn EnumServicesStatusA(
3171 hSCManager: SC_HANDLE,
3172 dwServiceType: DWORD,
3173 dwServiceState: DWORD,
3174 lpServices: LPENUM_SERVICE_STATUSA,
3175 cbBufSize: DWORD,
3176 pcbBytesNeeded: LPDWORD,
3177 lpServicesReturned: LPDWORD,
3178 lpResumeHandle: LPDWORD,
3179 ) -> BOOL;
3180}
3181extern "C" {
3182 pub fn EnumServicesStatusW(
3183 hSCManager: SC_HANDLE,
3184 dwServiceType: DWORD,
3185 dwServiceState: DWORD,
3186 lpServices: LPENUM_SERVICE_STATUSW,
3187 cbBufSize: DWORD,
3188 pcbBytesNeeded: LPDWORD,
3189 lpServicesReturned: LPDWORD,
3190 lpResumeHandle: LPDWORD,
3191 ) -> BOOL;
3192}
3193extern "C" {
3194 pub fn EnumServicesStatusExA(
3195 hSCManager: SC_HANDLE,
3196 InfoLevel: SC_ENUM_TYPE,
3197 dwServiceType: DWORD,
3198 dwServiceState: DWORD,
3199 lpServices: LPBYTE,
3200 cbBufSize: DWORD,
3201 pcbBytesNeeded: LPDWORD,
3202 lpServicesReturned: LPDWORD,
3203 lpResumeHandle: LPDWORD,
3204 pszGroupName: LPCSTR,
3205 ) -> BOOL;
3206}
3207extern "C" {
3208 pub fn EnumServicesStatusExW(
3209 hSCManager: SC_HANDLE,
3210 InfoLevel: SC_ENUM_TYPE,
3211 dwServiceType: DWORD,
3212 dwServiceState: DWORD,
3213 lpServices: LPBYTE,
3214 cbBufSize: DWORD,
3215 pcbBytesNeeded: LPDWORD,
3216 lpServicesReturned: LPDWORD,
3217 lpResumeHandle: LPDWORD,
3218 pszGroupName: LPCWSTR,
3219 ) -> BOOL;
3220}
3221extern "C" {
3222 pub static IID_IEnumConnections: IID;
3223}
3224extern "C" {
3225 pub static IID_IConnectionPoint: IID;
3226}
3227extern "C" {
3228 pub static IID_IEnumConnectionPoints: IID;
3229}
3230extern "C" {
3231 pub static IID_IConnectionPointContainer: IID;
3232}
3233extern "C" {
3234 pub static IID_IClassFactory2: IID;
3235}
3236extern "C" {
3237 pub static IID_IProvideClassInfo: IID;
3238}
3239extern "C" {
3240 pub static IID_IProvideClassInfo2: IID;
3241}
3242extern "C" {
3243 pub static IID_IProvideMultipleClassInfo: IID;
3244}
3245extern "C" {
3246 pub static IID_IOleControl: IID;
3247}
3248extern "C" {
3249 pub static IID_IOleControlSite: IID;
3250}
3251extern "C" {
3252 pub static IID_IPropertyPage: IID;
3253}
3254extern "C" {
3255 pub static IID_IPropertyPage2: IID;
3256}
3257extern "C" {
3258 pub static IID_IPropertyPageSite: IID;
3259}
3260extern "C" {
3261 pub static IID_IPropertyNotifySink: IID;
3262}
3263extern "C" {
3264 pub static IID_ISpecifyPropertyPages: IID;
3265}
3266extern "C" {
3267 pub static IID_IPersistMemory: IID;
3268}
3269extern "C" {
3270 pub static IID_IPersistStreamInit: IID;
3271}
3272extern "C" {
3273 pub static IID_IPersistPropertyBag: IID;
3274}
3275extern "C" {
3276 pub static IID_ISimpleFrameSite: IID;
3277}
3278extern "C" {
3279 pub static IID_IFont: IID;
3280}
3281extern "C" {
3282 pub static IID_IPicture: IID;
3283}
3284extern "C" {
3285 pub static IID_IPicture2: IID;
3286}
3287extern "C" {
3288 pub static IID_IFontEventsDisp: IID;
3289}
3290extern "C" {
3291 pub static IID_IFontDisp: IID;
3292}
3293extern "C" {
3294 pub static IID_IPictureDisp: IID;
3295}
3296extern "C" {
3297 pub static IID_IOleInPlaceObjectWindowless: IID;
3298}
3299extern "C" {
3300 pub static IID_IOleInPlaceSiteEx: IID;
3301}
3302extern "C" {
3303 pub static IID_IOleInPlaceSiteWindowless: IID;
3304}
3305extern "C" {
3306 pub static IID_IViewObjectEx: IID;
3307}
3308extern "C" {
3309 pub static IID_IOleUndoUnit: IID;
3310}
3311extern "C" {
3312 pub static IID_IOleParentUndoUnit: IID;
3313}
3314extern "C" {
3315 pub static IID_IEnumOleUndoUnits: IID;
3316}
3317extern "C" {
3318 pub static IID_IOleUndoManager: IID;
3319}
3320extern "C" {
3321 pub static IID_IPointerInactive: IID;
3322}
3323extern "C" {
3324 pub static IID_IObjectWithSite: IID;
3325}
3326extern "C" {
3327 pub static IID_IPerPropertyBrowsing: IID;
3328}
3329extern "C" {
3330 pub static IID_IPropertyBag2: IID;
3331}
3332extern "C" {
3333 pub static IID_IPersistPropertyBag2: IID;
3334}
3335extern "C" {
3336 pub static IID_IAdviseSinkEx: IID;
3337}
3338extern "C" {
3339 pub static IID_IQuickActivate: IID;
3340}
3341#[repr(C)]
3342#[derive(Debug, Default, Copy, Clone, Hash, PartialOrd, Ord, PartialEq, Eq)]
3343pub struct DXGI_RATIONAL {
3344 pub Numerator: UINT,
3345 pub Denominator: UINT,
3346}
3347#[repr(C)]
3348#[derive(Debug, Default, Copy, Clone, Hash, PartialOrd, Ord, PartialEq, Eq)]
3349pub struct DXGI_SAMPLE_DESC {
3350 pub Count: UINT,
3351 pub Quality: UINT,
3352}
3353pub const DXGI_COLOR_SPACE_TYPE_DXGI_COLOR_SPACE_RGB_FULL_G22_NONE_P709:
3354 DXGI_COLOR_SPACE_TYPE = 0;
3355pub const DXGI_COLOR_SPACE_TYPE_DXGI_COLOR_SPACE_RGB_FULL_G10_NONE_P709:
3356 DXGI_COLOR_SPACE_TYPE = 1;
3357pub const DXGI_COLOR_SPACE_TYPE_DXGI_COLOR_SPACE_RGB_STUDIO_G22_NONE_P709:
3358 DXGI_COLOR_SPACE_TYPE = 2;
3359pub const DXGI_COLOR_SPACE_TYPE_DXGI_COLOR_SPACE_RGB_STUDIO_G22_NONE_P2020:
3360 DXGI_COLOR_SPACE_TYPE = 3;
3361pub const DXGI_COLOR_SPACE_TYPE_DXGI_COLOR_SPACE_RESERVED:
3362 DXGI_COLOR_SPACE_TYPE = 4;
3363pub const DXGI_COLOR_SPACE_TYPE_DXGI_COLOR_SPACE_YCBCR_FULL_G22_NONE_P709_X601 : DXGI_COLOR_SPACE_TYPE = 5 ;
3364pub const DXGI_COLOR_SPACE_TYPE_DXGI_COLOR_SPACE_YCBCR_STUDIO_G22_LEFT_P601:
3365 DXGI_COLOR_SPACE_TYPE = 6;
3366pub const DXGI_COLOR_SPACE_TYPE_DXGI_COLOR_SPACE_YCBCR_FULL_G22_LEFT_P601:
3367 DXGI_COLOR_SPACE_TYPE = 7;
3368pub const DXGI_COLOR_SPACE_TYPE_DXGI_COLOR_SPACE_YCBCR_STUDIO_G22_LEFT_P709:
3369 DXGI_COLOR_SPACE_TYPE = 8;
3370pub const DXGI_COLOR_SPACE_TYPE_DXGI_COLOR_SPACE_YCBCR_FULL_G22_LEFT_P709:
3371 DXGI_COLOR_SPACE_TYPE = 9;
3372pub const DXGI_COLOR_SPACE_TYPE_DXGI_COLOR_SPACE_YCBCR_STUDIO_G22_LEFT_P2020:
3373 DXGI_COLOR_SPACE_TYPE = 10;
3374pub const DXGI_COLOR_SPACE_TYPE_DXGI_COLOR_SPACE_YCBCR_FULL_G22_LEFT_P2020:
3375 DXGI_COLOR_SPACE_TYPE = 11;
3376pub const DXGI_COLOR_SPACE_TYPE_DXGI_COLOR_SPACE_RGB_FULL_G2084_NONE_P2020:
3377 DXGI_COLOR_SPACE_TYPE = 12;
3378pub const DXGI_COLOR_SPACE_TYPE_DXGI_COLOR_SPACE_YCBCR_STUDIO_G2084_LEFT_P2020 : DXGI_COLOR_SPACE_TYPE = 13 ;
3379pub const DXGI_COLOR_SPACE_TYPE_DXGI_COLOR_SPACE_RGB_STUDIO_G2084_NONE_P2020:
3380 DXGI_COLOR_SPACE_TYPE = 14;
3381pub const DXGI_COLOR_SPACE_TYPE_DXGI_COLOR_SPACE_YCBCR_STUDIO_G22_TOPLEFT_P2020 : DXGI_COLOR_SPACE_TYPE = 15 ;
3382pub const DXGI_COLOR_SPACE_TYPE_DXGI_COLOR_SPACE_YCBCR_STUDIO_G2084_TOPLEFT_P2020 : DXGI_COLOR_SPACE_TYPE = 16 ;
3383pub const DXGI_COLOR_SPACE_TYPE_DXGI_COLOR_SPACE_RGB_FULL_G22_NONE_P2020:
3384 DXGI_COLOR_SPACE_TYPE = 17;
3385pub const DXGI_COLOR_SPACE_TYPE_DXGI_COLOR_SPACE_YCBCR_STUDIO_GHLG_TOPLEFT_P2020 : DXGI_COLOR_SPACE_TYPE = 18 ;
3386pub const DXGI_COLOR_SPACE_TYPE_DXGI_COLOR_SPACE_YCBCR_FULL_GHLG_TOPLEFT_P2020 : DXGI_COLOR_SPACE_TYPE = 19 ;
3387pub const DXGI_COLOR_SPACE_TYPE_DXGI_COLOR_SPACE_RGB_STUDIO_G24_NONE_P709:
3388 DXGI_COLOR_SPACE_TYPE = 20;
3389pub const DXGI_COLOR_SPACE_TYPE_DXGI_COLOR_SPACE_RGB_STUDIO_G24_NONE_P2020:
3390 DXGI_COLOR_SPACE_TYPE = 21;
3391pub const DXGI_COLOR_SPACE_TYPE_DXGI_COLOR_SPACE_YCBCR_STUDIO_G24_LEFT_P709:
3392 DXGI_COLOR_SPACE_TYPE = 22;
3393pub const DXGI_COLOR_SPACE_TYPE_DXGI_COLOR_SPACE_YCBCR_STUDIO_G24_LEFT_P2020:
3394 DXGI_COLOR_SPACE_TYPE = 23;
3395pub const DXGI_COLOR_SPACE_TYPE_DXGI_COLOR_SPACE_YCBCR_STUDIO_G24_TOPLEFT_P2020 : DXGI_COLOR_SPACE_TYPE = 24 ;
3396pub const DXGI_COLOR_SPACE_TYPE_DXGI_COLOR_SPACE_CUSTOM: DXGI_COLOR_SPACE_TYPE =
3397 -1;
3398pub type DXGI_COLOR_SPACE_TYPE = ::std::os::raw::c_int;
3399pub const DXGI_FORMAT_DXGI_FORMAT_UNKNOWN: DXGI_FORMAT = 0;
3400pub const DXGI_FORMAT_DXGI_FORMAT_R32G32B32A32_TYPELESS: DXGI_FORMAT = 1;
3401pub const DXGI_FORMAT_DXGI_FORMAT_R32G32B32A32_FLOAT: DXGI_FORMAT = 2;
3402pub const DXGI_FORMAT_DXGI_FORMAT_R32G32B32A32_UINT: DXGI_FORMAT = 3;
3403pub const DXGI_FORMAT_DXGI_FORMAT_R32G32B32A32_SINT: DXGI_FORMAT = 4;
3404pub const DXGI_FORMAT_DXGI_FORMAT_R32G32B32_TYPELESS: DXGI_FORMAT = 5;
3405pub const DXGI_FORMAT_DXGI_FORMAT_R32G32B32_FLOAT: DXGI_FORMAT = 6;
3406pub const DXGI_FORMAT_DXGI_FORMAT_R32G32B32_UINT: DXGI_FORMAT = 7;
3407pub const DXGI_FORMAT_DXGI_FORMAT_R32G32B32_SINT: DXGI_FORMAT = 8;
3408pub const DXGI_FORMAT_DXGI_FORMAT_R16G16B16A16_TYPELESS: DXGI_FORMAT = 9;
3409pub const DXGI_FORMAT_DXGI_FORMAT_R16G16B16A16_FLOAT: DXGI_FORMAT = 10;
3410pub const DXGI_FORMAT_DXGI_FORMAT_R16G16B16A16_UNORM: DXGI_FORMAT = 11;
3411pub const DXGI_FORMAT_DXGI_FORMAT_R16G16B16A16_UINT: DXGI_FORMAT = 12;
3412pub const DXGI_FORMAT_DXGI_FORMAT_R16G16B16A16_SNORM: DXGI_FORMAT = 13;
3413pub const DXGI_FORMAT_DXGI_FORMAT_R16G16B16A16_SINT: DXGI_FORMAT = 14;
3414pub const DXGI_FORMAT_DXGI_FORMAT_R32G32_TYPELESS: DXGI_FORMAT = 15;
3415pub const DXGI_FORMAT_DXGI_FORMAT_R32G32_FLOAT: DXGI_FORMAT = 16;
3416pub const DXGI_FORMAT_DXGI_FORMAT_R32G32_UINT: DXGI_FORMAT = 17;
3417pub const DXGI_FORMAT_DXGI_FORMAT_R32G32_SINT: DXGI_FORMAT = 18;
3418pub const DXGI_FORMAT_DXGI_FORMAT_R32G8X24_TYPELESS: DXGI_FORMAT = 19;
3419pub const DXGI_FORMAT_DXGI_FORMAT_D32_FLOAT_S8X24_UINT: DXGI_FORMAT = 20;
3420pub const DXGI_FORMAT_DXGI_FORMAT_R32_FLOAT_X8X24_TYPELESS: DXGI_FORMAT = 21;
3421pub const DXGI_FORMAT_DXGI_FORMAT_X32_TYPELESS_G8X24_UINT: DXGI_FORMAT = 22;
3422pub const DXGI_FORMAT_DXGI_FORMAT_R10G10B10A2_TYPELESS: DXGI_FORMAT = 23;
3423pub const DXGI_FORMAT_DXGI_FORMAT_R10G10B10A2_UNORM: DXGI_FORMAT = 24;
3424pub const DXGI_FORMAT_DXGI_FORMAT_R10G10B10A2_UINT: DXGI_FORMAT = 25;
3425pub const DXGI_FORMAT_DXGI_FORMAT_R11G11B10_FLOAT: DXGI_FORMAT = 26;
3426pub const DXGI_FORMAT_DXGI_FORMAT_R8G8B8A8_TYPELESS: DXGI_FORMAT = 27;
3427pub const DXGI_FORMAT_DXGI_FORMAT_R8G8B8A8_UNORM: DXGI_FORMAT = 28;
3428pub const DXGI_FORMAT_DXGI_FORMAT_R8G8B8A8_UNORM_SRGB: DXGI_FORMAT = 29;
3429pub const DXGI_FORMAT_DXGI_FORMAT_R8G8B8A8_UINT: DXGI_FORMAT = 30;
3430pub const DXGI_FORMAT_DXGI_FORMAT_R8G8B8A8_SNORM: DXGI_FORMAT = 31;
3431pub const DXGI_FORMAT_DXGI_FORMAT_R8G8B8A8_SINT: DXGI_FORMAT = 32;
3432pub const DXGI_FORMAT_DXGI_FORMAT_R16G16_TYPELESS: DXGI_FORMAT = 33;
3433pub const DXGI_FORMAT_DXGI_FORMAT_R16G16_FLOAT: DXGI_FORMAT = 34;
3434pub const DXGI_FORMAT_DXGI_FORMAT_R16G16_UNORM: DXGI_FORMAT = 35;
3435pub const DXGI_FORMAT_DXGI_FORMAT_R16G16_UINT: DXGI_FORMAT = 36;
3436pub const DXGI_FORMAT_DXGI_FORMAT_R16G16_SNORM: DXGI_FORMAT = 37;
3437pub const DXGI_FORMAT_DXGI_FORMAT_R16G16_SINT: DXGI_FORMAT = 38;
3438pub const DXGI_FORMAT_DXGI_FORMAT_R32_TYPELESS: DXGI_FORMAT = 39;
3439pub const DXGI_FORMAT_DXGI_FORMAT_D32_FLOAT: DXGI_FORMAT = 40;
3440pub const DXGI_FORMAT_DXGI_FORMAT_R32_FLOAT: DXGI_FORMAT = 41;
3441pub const DXGI_FORMAT_DXGI_FORMAT_R32_UINT: DXGI_FORMAT = 42;
3442pub const DXGI_FORMAT_DXGI_FORMAT_R32_SINT: DXGI_FORMAT = 43;
3443pub const DXGI_FORMAT_DXGI_FORMAT_R24G8_TYPELESS: DXGI_FORMAT = 44;
3444pub const DXGI_FORMAT_DXGI_FORMAT_D24_UNORM_S8_UINT: DXGI_FORMAT = 45;
3445pub const DXGI_FORMAT_DXGI_FORMAT_R24_UNORM_X8_TYPELESS: DXGI_FORMAT = 46;
3446pub const DXGI_FORMAT_DXGI_FORMAT_X24_TYPELESS_G8_UINT: DXGI_FORMAT = 47;
3447pub const DXGI_FORMAT_DXGI_FORMAT_R8G8_TYPELESS: DXGI_FORMAT = 48;
3448pub const DXGI_FORMAT_DXGI_FORMAT_R8G8_UNORM: DXGI_FORMAT = 49;
3449pub const DXGI_FORMAT_DXGI_FORMAT_R8G8_UINT: DXGI_FORMAT = 50;
3450pub const DXGI_FORMAT_DXGI_FORMAT_R8G8_SNORM: DXGI_FORMAT = 51;
3451pub const DXGI_FORMAT_DXGI_FORMAT_R8G8_SINT: DXGI_FORMAT = 52;
3452pub const DXGI_FORMAT_DXGI_FORMAT_R16_TYPELESS: DXGI_FORMAT = 53;
3453pub const DXGI_FORMAT_DXGI_FORMAT_R16_FLOAT: DXGI_FORMAT = 54;
3454pub const DXGI_FORMAT_DXGI_FORMAT_D16_UNORM: DXGI_FORMAT = 55;
3455pub const DXGI_FORMAT_DXGI_FORMAT_R16_UNORM: DXGI_FORMAT = 56;
3456pub const DXGI_FORMAT_DXGI_FORMAT_R16_UINT: DXGI_FORMAT = 57;
3457pub const DXGI_FORMAT_DXGI_FORMAT_R16_SNORM: DXGI_FORMAT = 58;
3458pub const DXGI_FORMAT_DXGI_FORMAT_R16_SINT: DXGI_FORMAT = 59;
3459pub const DXGI_FORMAT_DXGI_FORMAT_R8_TYPELESS: DXGI_FORMAT = 60;
3460pub const DXGI_FORMAT_DXGI_FORMAT_R8_UNORM: DXGI_FORMAT = 61;
3461pub const DXGI_FORMAT_DXGI_FORMAT_R8_UINT: DXGI_FORMAT = 62;
3462pub const DXGI_FORMAT_DXGI_FORMAT_R8_SNORM: DXGI_FORMAT = 63;
3463pub const DXGI_FORMAT_DXGI_FORMAT_R8_SINT: DXGI_FORMAT = 64;
3464pub const DXGI_FORMAT_DXGI_FORMAT_A8_UNORM: DXGI_FORMAT = 65;
3465pub const DXGI_FORMAT_DXGI_FORMAT_R1_UNORM: DXGI_FORMAT = 66;
3466pub const DXGI_FORMAT_DXGI_FORMAT_R9G9B9E5_SHAREDEXP: DXGI_FORMAT = 67;
3467pub const DXGI_FORMAT_DXGI_FORMAT_R8G8_B8G8_UNORM: DXGI_FORMAT = 68;
3468pub const DXGI_FORMAT_DXGI_FORMAT_G8R8_G8B8_UNORM: DXGI_FORMAT = 69;
3469pub const DXGI_FORMAT_DXGI_FORMAT_BC1_TYPELESS: DXGI_FORMAT = 70;
3470pub const DXGI_FORMAT_DXGI_FORMAT_BC1_UNORM: DXGI_FORMAT = 71;
3471pub const DXGI_FORMAT_DXGI_FORMAT_BC1_UNORM_SRGB: DXGI_FORMAT = 72;
3472pub const DXGI_FORMAT_DXGI_FORMAT_BC2_TYPELESS: DXGI_FORMAT = 73;
3473pub const DXGI_FORMAT_DXGI_FORMAT_BC2_UNORM: DXGI_FORMAT = 74;
3474pub const DXGI_FORMAT_DXGI_FORMAT_BC2_UNORM_SRGB: DXGI_FORMAT = 75;
3475pub const DXGI_FORMAT_DXGI_FORMAT_BC3_TYPELESS: DXGI_FORMAT = 76;
3476pub const DXGI_FORMAT_DXGI_FORMAT_BC3_UNORM: DXGI_FORMAT = 77;
3477pub const DXGI_FORMAT_DXGI_FORMAT_BC3_UNORM_SRGB: DXGI_FORMAT = 78;
3478pub const DXGI_FORMAT_DXGI_FORMAT_BC4_TYPELESS: DXGI_FORMAT = 79;
3479pub const DXGI_FORMAT_DXGI_FORMAT_BC4_UNORM: DXGI_FORMAT = 80;
3480pub const DXGI_FORMAT_DXGI_FORMAT_BC4_SNORM: DXGI_FORMAT = 81;
3481pub const DXGI_FORMAT_DXGI_FORMAT_BC5_TYPELESS: DXGI_FORMAT = 82;
3482pub const DXGI_FORMAT_DXGI_FORMAT_BC5_UNORM: DXGI_FORMAT = 83;
3483pub const DXGI_FORMAT_DXGI_FORMAT_BC5_SNORM: DXGI_FORMAT = 84;
3484pub const DXGI_FORMAT_DXGI_FORMAT_B5G6R5_UNORM: DXGI_FORMAT = 85;
3485pub const DXGI_FORMAT_DXGI_FORMAT_B5G5R5A1_UNORM: DXGI_FORMAT = 86;
3486pub const DXGI_FORMAT_DXGI_FORMAT_B8G8R8A8_UNORM: DXGI_FORMAT = 87;
3487pub const DXGI_FORMAT_DXGI_FORMAT_B8G8R8X8_UNORM: DXGI_FORMAT = 88;
3488pub const DXGI_FORMAT_DXGI_FORMAT_R10G10B10_XR_BIAS_A2_UNORM: DXGI_FORMAT = 89;
3489pub const DXGI_FORMAT_DXGI_FORMAT_B8G8R8A8_TYPELESS: DXGI_FORMAT = 90;
3490pub const DXGI_FORMAT_DXGI_FORMAT_B8G8R8A8_UNORM_SRGB: DXGI_FORMAT = 91;
3491pub const DXGI_FORMAT_DXGI_FORMAT_B8G8R8X8_TYPELESS: DXGI_FORMAT = 92;
3492pub const DXGI_FORMAT_DXGI_FORMAT_B8G8R8X8_UNORM_SRGB: DXGI_FORMAT = 93;
3493pub const DXGI_FORMAT_DXGI_FORMAT_BC6H_TYPELESS: DXGI_FORMAT = 94;
3494pub const DXGI_FORMAT_DXGI_FORMAT_BC6H_UF16: DXGI_FORMAT = 95;
3495pub const DXGI_FORMAT_DXGI_FORMAT_BC6H_SF16: DXGI_FORMAT = 96;
3496pub const DXGI_FORMAT_DXGI_FORMAT_BC7_TYPELESS: DXGI_FORMAT = 97;
3497pub const DXGI_FORMAT_DXGI_FORMAT_BC7_UNORM: DXGI_FORMAT = 98;
3498pub const DXGI_FORMAT_DXGI_FORMAT_BC7_UNORM_SRGB: DXGI_FORMAT = 99;
3499pub const DXGI_FORMAT_DXGI_FORMAT_AYUV: DXGI_FORMAT = 100;
3500pub const DXGI_FORMAT_DXGI_FORMAT_Y410: DXGI_FORMAT = 101;
3501pub const DXGI_FORMAT_DXGI_FORMAT_Y416: DXGI_FORMAT = 102;
3502pub const DXGI_FORMAT_DXGI_FORMAT_NV12: DXGI_FORMAT = 103;
3503pub const DXGI_FORMAT_DXGI_FORMAT_P010: DXGI_FORMAT = 104;
3504pub const DXGI_FORMAT_DXGI_FORMAT_P016: DXGI_FORMAT = 105;
3505pub const DXGI_FORMAT_DXGI_FORMAT_420_OPAQUE: DXGI_FORMAT = 106;
3506pub const DXGI_FORMAT_DXGI_FORMAT_YUY2: DXGI_FORMAT = 107;
3507pub const DXGI_FORMAT_DXGI_FORMAT_Y210: DXGI_FORMAT = 108;
3508pub const DXGI_FORMAT_DXGI_FORMAT_Y216: DXGI_FORMAT = 109;
3509pub const DXGI_FORMAT_DXGI_FORMAT_NV11: DXGI_FORMAT = 110;
3510pub const DXGI_FORMAT_DXGI_FORMAT_AI44: DXGI_FORMAT = 111;
3511pub const DXGI_FORMAT_DXGI_FORMAT_IA44: DXGI_FORMAT = 112;
3512pub const DXGI_FORMAT_DXGI_FORMAT_P8: DXGI_FORMAT = 113;
3513pub const DXGI_FORMAT_DXGI_FORMAT_A8P8: DXGI_FORMAT = 114;
3514pub const DXGI_FORMAT_DXGI_FORMAT_B4G4R4A4_UNORM: DXGI_FORMAT = 115;
3515pub const DXGI_FORMAT_DXGI_FORMAT_P208: DXGI_FORMAT = 130;
3516pub const DXGI_FORMAT_DXGI_FORMAT_V208: DXGI_FORMAT = 131;
3517pub const DXGI_FORMAT_DXGI_FORMAT_V408: DXGI_FORMAT = 132;
3518pub const DXGI_FORMAT_DXGI_FORMAT_SAMPLER_FEEDBACK_MIN_MIP_OPAQUE: DXGI_FORMAT =
3519 189;
3520pub const DXGI_FORMAT_DXGI_FORMAT_SAMPLER_FEEDBACK_MIP_REGION_USED_OPAQUE:
3521 DXGI_FORMAT = 190;
3522pub const DXGI_FORMAT_DXGI_FORMAT_FORCE_UINT: DXGI_FORMAT = -1;
3523pub type DXGI_FORMAT = ::std::os::raw::c_int;
3524pub const D3D_FEATURE_LEVEL_D3D_FEATURE_LEVEL_1_0_CORE: D3D_FEATURE_LEVEL =
3525 4096;
3526pub const D3D_FEATURE_LEVEL_D3D_FEATURE_LEVEL_9_1: D3D_FEATURE_LEVEL = 37120;
3527pub const D3D_FEATURE_LEVEL_D3D_FEATURE_LEVEL_9_2: D3D_FEATURE_LEVEL = 37376;
3528pub const D3D_FEATURE_LEVEL_D3D_FEATURE_LEVEL_9_3: D3D_FEATURE_LEVEL = 37632;
3529pub const D3D_FEATURE_LEVEL_D3D_FEATURE_LEVEL_10_0: D3D_FEATURE_LEVEL = 40960;
3530pub const D3D_FEATURE_LEVEL_D3D_FEATURE_LEVEL_10_1: D3D_FEATURE_LEVEL = 41216;
3531pub const D3D_FEATURE_LEVEL_D3D_FEATURE_LEVEL_11_0: D3D_FEATURE_LEVEL = 45056;
3532pub const D3D_FEATURE_LEVEL_D3D_FEATURE_LEVEL_11_1: D3D_FEATURE_LEVEL = 45312;
3533pub const D3D_FEATURE_LEVEL_D3D_FEATURE_LEVEL_12_0: D3D_FEATURE_LEVEL = 49152;
3534pub const D3D_FEATURE_LEVEL_D3D_FEATURE_LEVEL_12_1: D3D_FEATURE_LEVEL = 49408;
3535pub const D3D_FEATURE_LEVEL_D3D_FEATURE_LEVEL_12_2: D3D_FEATURE_LEVEL = 49664;
3536pub type D3D_FEATURE_LEVEL = ::std::os::raw::c_int;
3537pub const D3D_PRIMITIVE_TOPOLOGY_D3D_PRIMITIVE_TOPOLOGY_UNDEFINED:
3538 D3D_PRIMITIVE_TOPOLOGY = 0;
3539pub const D3D_PRIMITIVE_TOPOLOGY_D3D_PRIMITIVE_TOPOLOGY_POINTLIST:
3540 D3D_PRIMITIVE_TOPOLOGY = 1;
3541pub const D3D_PRIMITIVE_TOPOLOGY_D3D_PRIMITIVE_TOPOLOGY_LINELIST:
3542 D3D_PRIMITIVE_TOPOLOGY = 2;
3543pub const D3D_PRIMITIVE_TOPOLOGY_D3D_PRIMITIVE_TOPOLOGY_LINESTRIP:
3544 D3D_PRIMITIVE_TOPOLOGY = 3;
3545pub const D3D_PRIMITIVE_TOPOLOGY_D3D_PRIMITIVE_TOPOLOGY_TRIANGLELIST:
3546 D3D_PRIMITIVE_TOPOLOGY = 4;
3547pub const D3D_PRIMITIVE_TOPOLOGY_D3D_PRIMITIVE_TOPOLOGY_TRIANGLESTRIP:
3548 D3D_PRIMITIVE_TOPOLOGY = 5;
3549pub const D3D_PRIMITIVE_TOPOLOGY_D3D_PRIMITIVE_TOPOLOGY_LINELIST_ADJ:
3550 D3D_PRIMITIVE_TOPOLOGY = 10;
3551pub const D3D_PRIMITIVE_TOPOLOGY_D3D_PRIMITIVE_TOPOLOGY_LINESTRIP_ADJ:
3552 D3D_PRIMITIVE_TOPOLOGY = 11;
3553pub const D3D_PRIMITIVE_TOPOLOGY_D3D_PRIMITIVE_TOPOLOGY_TRIANGLELIST_ADJ:
3554 D3D_PRIMITIVE_TOPOLOGY = 12;
3555pub const D3D_PRIMITIVE_TOPOLOGY_D3D_PRIMITIVE_TOPOLOGY_TRIANGLESTRIP_ADJ:
3556 D3D_PRIMITIVE_TOPOLOGY = 13;
3557pub const D3D_PRIMITIVE_TOPOLOGY_D3D_PRIMITIVE_TOPOLOGY_1_CONTROL_POINT_PATCHLIST : D3D_PRIMITIVE_TOPOLOGY = 33 ;
3558pub const D3D_PRIMITIVE_TOPOLOGY_D3D_PRIMITIVE_TOPOLOGY_2_CONTROL_POINT_PATCHLIST : D3D_PRIMITIVE_TOPOLOGY = 34 ;
3559pub const D3D_PRIMITIVE_TOPOLOGY_D3D_PRIMITIVE_TOPOLOGY_3_CONTROL_POINT_PATCHLIST : D3D_PRIMITIVE_TOPOLOGY = 35 ;
3560pub const D3D_PRIMITIVE_TOPOLOGY_D3D_PRIMITIVE_TOPOLOGY_4_CONTROL_POINT_PATCHLIST : D3D_PRIMITIVE_TOPOLOGY = 36 ;
3561pub const D3D_PRIMITIVE_TOPOLOGY_D3D_PRIMITIVE_TOPOLOGY_5_CONTROL_POINT_PATCHLIST : D3D_PRIMITIVE_TOPOLOGY = 37 ;
3562pub const D3D_PRIMITIVE_TOPOLOGY_D3D_PRIMITIVE_TOPOLOGY_6_CONTROL_POINT_PATCHLIST : D3D_PRIMITIVE_TOPOLOGY = 38 ;
3563pub const D3D_PRIMITIVE_TOPOLOGY_D3D_PRIMITIVE_TOPOLOGY_7_CONTROL_POINT_PATCHLIST : D3D_PRIMITIVE_TOPOLOGY = 39 ;
3564pub const D3D_PRIMITIVE_TOPOLOGY_D3D_PRIMITIVE_TOPOLOGY_8_CONTROL_POINT_PATCHLIST : D3D_PRIMITIVE_TOPOLOGY = 40 ;
3565pub const D3D_PRIMITIVE_TOPOLOGY_D3D_PRIMITIVE_TOPOLOGY_9_CONTROL_POINT_PATCHLIST : D3D_PRIMITIVE_TOPOLOGY = 41 ;
3566pub const D3D_PRIMITIVE_TOPOLOGY_D3D_PRIMITIVE_TOPOLOGY_10_CONTROL_POINT_PATCHLIST : D3D_PRIMITIVE_TOPOLOGY = 42 ;
3567pub const D3D_PRIMITIVE_TOPOLOGY_D3D_PRIMITIVE_TOPOLOGY_11_CONTROL_POINT_PATCHLIST : D3D_PRIMITIVE_TOPOLOGY = 43 ;
3568pub const D3D_PRIMITIVE_TOPOLOGY_D3D_PRIMITIVE_TOPOLOGY_12_CONTROL_POINT_PATCHLIST : D3D_PRIMITIVE_TOPOLOGY = 44 ;
3569pub const D3D_PRIMITIVE_TOPOLOGY_D3D_PRIMITIVE_TOPOLOGY_13_CONTROL_POINT_PATCHLIST : D3D_PRIMITIVE_TOPOLOGY = 45 ;
3570pub const D3D_PRIMITIVE_TOPOLOGY_D3D_PRIMITIVE_TOPOLOGY_14_CONTROL_POINT_PATCHLIST : D3D_PRIMITIVE_TOPOLOGY = 46 ;
3571pub const D3D_PRIMITIVE_TOPOLOGY_D3D_PRIMITIVE_TOPOLOGY_15_CONTROL_POINT_PATCHLIST : D3D_PRIMITIVE_TOPOLOGY = 47 ;
3572pub const D3D_PRIMITIVE_TOPOLOGY_D3D_PRIMITIVE_TOPOLOGY_16_CONTROL_POINT_PATCHLIST : D3D_PRIMITIVE_TOPOLOGY = 48 ;
3573pub const D3D_PRIMITIVE_TOPOLOGY_D3D_PRIMITIVE_TOPOLOGY_17_CONTROL_POINT_PATCHLIST : D3D_PRIMITIVE_TOPOLOGY = 49 ;
3574pub const D3D_PRIMITIVE_TOPOLOGY_D3D_PRIMITIVE_TOPOLOGY_18_CONTROL_POINT_PATCHLIST : D3D_PRIMITIVE_TOPOLOGY = 50 ;
3575pub const D3D_PRIMITIVE_TOPOLOGY_D3D_PRIMITIVE_TOPOLOGY_19_CONTROL_POINT_PATCHLIST : D3D_PRIMITIVE_TOPOLOGY = 51 ;
3576pub const D3D_PRIMITIVE_TOPOLOGY_D3D_PRIMITIVE_TOPOLOGY_20_CONTROL_POINT_PATCHLIST : D3D_PRIMITIVE_TOPOLOGY = 52 ;
3577pub const D3D_PRIMITIVE_TOPOLOGY_D3D_PRIMITIVE_TOPOLOGY_21_CONTROL_POINT_PATCHLIST : D3D_PRIMITIVE_TOPOLOGY = 53 ;
3578pub const D3D_PRIMITIVE_TOPOLOGY_D3D_PRIMITIVE_TOPOLOGY_22_CONTROL_POINT_PATCHLIST : D3D_PRIMITIVE_TOPOLOGY = 54 ;
3579pub const D3D_PRIMITIVE_TOPOLOGY_D3D_PRIMITIVE_TOPOLOGY_23_CONTROL_POINT_PATCHLIST : D3D_PRIMITIVE_TOPOLOGY = 55 ;
3580pub const D3D_PRIMITIVE_TOPOLOGY_D3D_PRIMITIVE_TOPOLOGY_24_CONTROL_POINT_PATCHLIST : D3D_PRIMITIVE_TOPOLOGY = 56 ;
3581pub const D3D_PRIMITIVE_TOPOLOGY_D3D_PRIMITIVE_TOPOLOGY_25_CONTROL_POINT_PATCHLIST : D3D_PRIMITIVE_TOPOLOGY = 57 ;
3582pub const D3D_PRIMITIVE_TOPOLOGY_D3D_PRIMITIVE_TOPOLOGY_26_CONTROL_POINT_PATCHLIST : D3D_PRIMITIVE_TOPOLOGY = 58 ;
3583pub const D3D_PRIMITIVE_TOPOLOGY_D3D_PRIMITIVE_TOPOLOGY_27_CONTROL_POINT_PATCHLIST : D3D_PRIMITIVE_TOPOLOGY = 59 ;
3584pub const D3D_PRIMITIVE_TOPOLOGY_D3D_PRIMITIVE_TOPOLOGY_28_CONTROL_POINT_PATCHLIST : D3D_PRIMITIVE_TOPOLOGY = 60 ;
3585pub const D3D_PRIMITIVE_TOPOLOGY_D3D_PRIMITIVE_TOPOLOGY_29_CONTROL_POINT_PATCHLIST : D3D_PRIMITIVE_TOPOLOGY = 61 ;
3586pub const D3D_PRIMITIVE_TOPOLOGY_D3D_PRIMITIVE_TOPOLOGY_30_CONTROL_POINT_PATCHLIST : D3D_PRIMITIVE_TOPOLOGY = 62 ;
3587pub const D3D_PRIMITIVE_TOPOLOGY_D3D_PRIMITIVE_TOPOLOGY_31_CONTROL_POINT_PATCHLIST : D3D_PRIMITIVE_TOPOLOGY = 63 ;
3588pub const D3D_PRIMITIVE_TOPOLOGY_D3D_PRIMITIVE_TOPOLOGY_32_CONTROL_POINT_PATCHLIST : D3D_PRIMITIVE_TOPOLOGY = 64 ;
3589pub const D3D_PRIMITIVE_TOPOLOGY_D3D10_PRIMITIVE_TOPOLOGY_UNDEFINED:
3590 D3D_PRIMITIVE_TOPOLOGY = 0;
3591pub const D3D_PRIMITIVE_TOPOLOGY_D3D10_PRIMITIVE_TOPOLOGY_POINTLIST:
3592 D3D_PRIMITIVE_TOPOLOGY = 1;
3593pub const D3D_PRIMITIVE_TOPOLOGY_D3D10_PRIMITIVE_TOPOLOGY_LINELIST:
3594 D3D_PRIMITIVE_TOPOLOGY = 2;
3595pub const D3D_PRIMITIVE_TOPOLOGY_D3D10_PRIMITIVE_TOPOLOGY_LINESTRIP:
3596 D3D_PRIMITIVE_TOPOLOGY = 3;
3597pub const D3D_PRIMITIVE_TOPOLOGY_D3D10_PRIMITIVE_TOPOLOGY_TRIANGLELIST:
3598 D3D_PRIMITIVE_TOPOLOGY = 4;
3599pub const D3D_PRIMITIVE_TOPOLOGY_D3D10_PRIMITIVE_TOPOLOGY_TRIANGLESTRIP:
3600 D3D_PRIMITIVE_TOPOLOGY = 5;
3601pub const D3D_PRIMITIVE_TOPOLOGY_D3D10_PRIMITIVE_TOPOLOGY_LINELIST_ADJ:
3602 D3D_PRIMITIVE_TOPOLOGY = 10;
3603pub const D3D_PRIMITIVE_TOPOLOGY_D3D10_PRIMITIVE_TOPOLOGY_LINESTRIP_ADJ:
3604 D3D_PRIMITIVE_TOPOLOGY = 11;
3605pub const D3D_PRIMITIVE_TOPOLOGY_D3D10_PRIMITIVE_TOPOLOGY_TRIANGLELIST_ADJ:
3606 D3D_PRIMITIVE_TOPOLOGY = 12;
3607pub const D3D_PRIMITIVE_TOPOLOGY_D3D10_PRIMITIVE_TOPOLOGY_TRIANGLESTRIP_ADJ:
3608 D3D_PRIMITIVE_TOPOLOGY = 13;
3609pub const D3D_PRIMITIVE_TOPOLOGY_D3D11_PRIMITIVE_TOPOLOGY_UNDEFINED:
3610 D3D_PRIMITIVE_TOPOLOGY = 0;
3611pub const D3D_PRIMITIVE_TOPOLOGY_D3D11_PRIMITIVE_TOPOLOGY_POINTLIST:
3612 D3D_PRIMITIVE_TOPOLOGY = 1;
3613pub const D3D_PRIMITIVE_TOPOLOGY_D3D11_PRIMITIVE_TOPOLOGY_LINELIST:
3614 D3D_PRIMITIVE_TOPOLOGY = 2;
3615pub const D3D_PRIMITIVE_TOPOLOGY_D3D11_PRIMITIVE_TOPOLOGY_LINESTRIP:
3616 D3D_PRIMITIVE_TOPOLOGY = 3;
3617pub const D3D_PRIMITIVE_TOPOLOGY_D3D11_PRIMITIVE_TOPOLOGY_TRIANGLELIST:
3618 D3D_PRIMITIVE_TOPOLOGY = 4;
3619pub const D3D_PRIMITIVE_TOPOLOGY_D3D11_PRIMITIVE_TOPOLOGY_TRIANGLESTRIP:
3620 D3D_PRIMITIVE_TOPOLOGY = 5;
3621pub const D3D_PRIMITIVE_TOPOLOGY_D3D11_PRIMITIVE_TOPOLOGY_LINELIST_ADJ:
3622 D3D_PRIMITIVE_TOPOLOGY = 10;
3623pub const D3D_PRIMITIVE_TOPOLOGY_D3D11_PRIMITIVE_TOPOLOGY_LINESTRIP_ADJ:
3624 D3D_PRIMITIVE_TOPOLOGY = 11;
3625pub const D3D_PRIMITIVE_TOPOLOGY_D3D11_PRIMITIVE_TOPOLOGY_TRIANGLELIST_ADJ:
3626 D3D_PRIMITIVE_TOPOLOGY = 12;
3627pub const D3D_PRIMITIVE_TOPOLOGY_D3D11_PRIMITIVE_TOPOLOGY_TRIANGLESTRIP_ADJ:
3628 D3D_PRIMITIVE_TOPOLOGY = 13;
3629pub const D3D_PRIMITIVE_TOPOLOGY_D3D11_PRIMITIVE_TOPOLOGY_1_CONTROL_POINT_PATCHLIST : D3D_PRIMITIVE_TOPOLOGY = 33 ;
3630pub const D3D_PRIMITIVE_TOPOLOGY_D3D11_PRIMITIVE_TOPOLOGY_2_CONTROL_POINT_PATCHLIST : D3D_PRIMITIVE_TOPOLOGY = 34 ;
3631pub const D3D_PRIMITIVE_TOPOLOGY_D3D11_PRIMITIVE_TOPOLOGY_3_CONTROL_POINT_PATCHLIST : D3D_PRIMITIVE_TOPOLOGY = 35 ;
3632pub const D3D_PRIMITIVE_TOPOLOGY_D3D11_PRIMITIVE_TOPOLOGY_4_CONTROL_POINT_PATCHLIST : D3D_PRIMITIVE_TOPOLOGY = 36 ;
3633pub const D3D_PRIMITIVE_TOPOLOGY_D3D11_PRIMITIVE_TOPOLOGY_5_CONTROL_POINT_PATCHLIST : D3D_PRIMITIVE_TOPOLOGY = 37 ;
3634pub const D3D_PRIMITIVE_TOPOLOGY_D3D11_PRIMITIVE_TOPOLOGY_6_CONTROL_POINT_PATCHLIST : D3D_PRIMITIVE_TOPOLOGY = 38 ;
3635pub const D3D_PRIMITIVE_TOPOLOGY_D3D11_PRIMITIVE_TOPOLOGY_7_CONTROL_POINT_PATCHLIST : D3D_PRIMITIVE_TOPOLOGY = 39 ;
3636pub const D3D_PRIMITIVE_TOPOLOGY_D3D11_PRIMITIVE_TOPOLOGY_8_CONTROL_POINT_PATCHLIST : D3D_PRIMITIVE_TOPOLOGY = 40 ;
3637pub const D3D_PRIMITIVE_TOPOLOGY_D3D11_PRIMITIVE_TOPOLOGY_9_CONTROL_POINT_PATCHLIST : D3D_PRIMITIVE_TOPOLOGY = 41 ;
3638pub const D3D_PRIMITIVE_TOPOLOGY_D3D11_PRIMITIVE_TOPOLOGY_10_CONTROL_POINT_PATCHLIST : D3D_PRIMITIVE_TOPOLOGY = 42 ;
3639pub const D3D_PRIMITIVE_TOPOLOGY_D3D11_PRIMITIVE_TOPOLOGY_11_CONTROL_POINT_PATCHLIST : D3D_PRIMITIVE_TOPOLOGY = 43 ;
3640pub const D3D_PRIMITIVE_TOPOLOGY_D3D11_PRIMITIVE_TOPOLOGY_12_CONTROL_POINT_PATCHLIST : D3D_PRIMITIVE_TOPOLOGY = 44 ;
3641pub const D3D_PRIMITIVE_TOPOLOGY_D3D11_PRIMITIVE_TOPOLOGY_13_CONTROL_POINT_PATCHLIST : D3D_PRIMITIVE_TOPOLOGY = 45 ;
3642pub const D3D_PRIMITIVE_TOPOLOGY_D3D11_PRIMITIVE_TOPOLOGY_14_CONTROL_POINT_PATCHLIST : D3D_PRIMITIVE_TOPOLOGY = 46 ;
3643pub const D3D_PRIMITIVE_TOPOLOGY_D3D11_PRIMITIVE_TOPOLOGY_15_CONTROL_POINT_PATCHLIST : D3D_PRIMITIVE_TOPOLOGY = 47 ;
3644pub const D3D_PRIMITIVE_TOPOLOGY_D3D11_PRIMITIVE_TOPOLOGY_16_CONTROL_POINT_PATCHLIST : D3D_PRIMITIVE_TOPOLOGY = 48 ;
3645pub const D3D_PRIMITIVE_TOPOLOGY_D3D11_PRIMITIVE_TOPOLOGY_17_CONTROL_POINT_PATCHLIST : D3D_PRIMITIVE_TOPOLOGY = 49 ;
3646pub const D3D_PRIMITIVE_TOPOLOGY_D3D11_PRIMITIVE_TOPOLOGY_18_CONTROL_POINT_PATCHLIST : D3D_PRIMITIVE_TOPOLOGY = 50 ;
3647pub const D3D_PRIMITIVE_TOPOLOGY_D3D11_PRIMITIVE_TOPOLOGY_19_CONTROL_POINT_PATCHLIST : D3D_PRIMITIVE_TOPOLOGY = 51 ;
3648pub const D3D_PRIMITIVE_TOPOLOGY_D3D11_PRIMITIVE_TOPOLOGY_20_CONTROL_POINT_PATCHLIST : D3D_PRIMITIVE_TOPOLOGY = 52 ;
3649pub const D3D_PRIMITIVE_TOPOLOGY_D3D11_PRIMITIVE_TOPOLOGY_21_CONTROL_POINT_PATCHLIST : D3D_PRIMITIVE_TOPOLOGY = 53 ;
3650pub const D3D_PRIMITIVE_TOPOLOGY_D3D11_PRIMITIVE_TOPOLOGY_22_CONTROL_POINT_PATCHLIST : D3D_PRIMITIVE_TOPOLOGY = 54 ;
3651pub const D3D_PRIMITIVE_TOPOLOGY_D3D11_PRIMITIVE_TOPOLOGY_23_CONTROL_POINT_PATCHLIST : D3D_PRIMITIVE_TOPOLOGY = 55 ;
3652pub const D3D_PRIMITIVE_TOPOLOGY_D3D11_PRIMITIVE_TOPOLOGY_24_CONTROL_POINT_PATCHLIST : D3D_PRIMITIVE_TOPOLOGY = 56 ;
3653pub const D3D_PRIMITIVE_TOPOLOGY_D3D11_PRIMITIVE_TOPOLOGY_25_CONTROL_POINT_PATCHLIST : D3D_PRIMITIVE_TOPOLOGY = 57 ;
3654pub const D3D_PRIMITIVE_TOPOLOGY_D3D11_PRIMITIVE_TOPOLOGY_26_CONTROL_POINT_PATCHLIST : D3D_PRIMITIVE_TOPOLOGY = 58 ;
3655pub const D3D_PRIMITIVE_TOPOLOGY_D3D11_PRIMITIVE_TOPOLOGY_27_CONTROL_POINT_PATCHLIST : D3D_PRIMITIVE_TOPOLOGY = 59 ;
3656pub const D3D_PRIMITIVE_TOPOLOGY_D3D11_PRIMITIVE_TOPOLOGY_28_CONTROL_POINT_PATCHLIST : D3D_PRIMITIVE_TOPOLOGY = 60 ;
3657pub const D3D_PRIMITIVE_TOPOLOGY_D3D11_PRIMITIVE_TOPOLOGY_29_CONTROL_POINT_PATCHLIST : D3D_PRIMITIVE_TOPOLOGY = 61 ;
3658pub const D3D_PRIMITIVE_TOPOLOGY_D3D11_PRIMITIVE_TOPOLOGY_30_CONTROL_POINT_PATCHLIST : D3D_PRIMITIVE_TOPOLOGY = 62 ;
3659pub const D3D_PRIMITIVE_TOPOLOGY_D3D11_PRIMITIVE_TOPOLOGY_31_CONTROL_POINT_PATCHLIST : D3D_PRIMITIVE_TOPOLOGY = 63 ;
3660pub const D3D_PRIMITIVE_TOPOLOGY_D3D11_PRIMITIVE_TOPOLOGY_32_CONTROL_POINT_PATCHLIST : D3D_PRIMITIVE_TOPOLOGY = 64 ;
3661pub type D3D_PRIMITIVE_TOPOLOGY = ::std::os::raw::c_int;
3662pub const D3D_PRIMITIVE_D3D_PRIMITIVE_UNDEFINED: D3D_PRIMITIVE = 0;
3663pub const D3D_PRIMITIVE_D3D_PRIMITIVE_POINT: D3D_PRIMITIVE = 1;
3664pub const D3D_PRIMITIVE_D3D_PRIMITIVE_LINE: D3D_PRIMITIVE = 2;
3665pub const D3D_PRIMITIVE_D3D_PRIMITIVE_TRIANGLE: D3D_PRIMITIVE = 3;
3666pub const D3D_PRIMITIVE_D3D_PRIMITIVE_LINE_ADJ: D3D_PRIMITIVE = 6;
3667pub const D3D_PRIMITIVE_D3D_PRIMITIVE_TRIANGLE_ADJ: D3D_PRIMITIVE = 7;
3668pub const D3D_PRIMITIVE_D3D_PRIMITIVE_1_CONTROL_POINT_PATCH: D3D_PRIMITIVE = 8;
3669pub const D3D_PRIMITIVE_D3D_PRIMITIVE_2_CONTROL_POINT_PATCH: D3D_PRIMITIVE = 9;
3670pub const D3D_PRIMITIVE_D3D_PRIMITIVE_3_CONTROL_POINT_PATCH: D3D_PRIMITIVE = 10;
3671pub const D3D_PRIMITIVE_D3D_PRIMITIVE_4_CONTROL_POINT_PATCH: D3D_PRIMITIVE = 11;
3672pub const D3D_PRIMITIVE_D3D_PRIMITIVE_5_CONTROL_POINT_PATCH: D3D_PRIMITIVE = 12;
3673pub const D3D_PRIMITIVE_D3D_PRIMITIVE_6_CONTROL_POINT_PATCH: D3D_PRIMITIVE = 13;
3674pub const D3D_PRIMITIVE_D3D_PRIMITIVE_7_CONTROL_POINT_PATCH: D3D_PRIMITIVE = 14;
3675pub const D3D_PRIMITIVE_D3D_PRIMITIVE_8_CONTROL_POINT_PATCH: D3D_PRIMITIVE = 15;
3676pub const D3D_PRIMITIVE_D3D_PRIMITIVE_9_CONTROL_POINT_PATCH: D3D_PRIMITIVE = 16;
3677pub const D3D_PRIMITIVE_D3D_PRIMITIVE_10_CONTROL_POINT_PATCH: D3D_PRIMITIVE =
3678 17;
3679pub const D3D_PRIMITIVE_D3D_PRIMITIVE_11_CONTROL_POINT_PATCH: D3D_PRIMITIVE =
3680 18;
3681pub const D3D_PRIMITIVE_D3D_PRIMITIVE_12_CONTROL_POINT_PATCH: D3D_PRIMITIVE =
3682 19;
3683pub const D3D_PRIMITIVE_D3D_PRIMITIVE_13_CONTROL_POINT_PATCH: D3D_PRIMITIVE =
3684 20;
3685pub const D3D_PRIMITIVE_D3D_PRIMITIVE_14_CONTROL_POINT_PATCH: D3D_PRIMITIVE =
3686 21;
3687pub const D3D_PRIMITIVE_D3D_PRIMITIVE_15_CONTROL_POINT_PATCH: D3D_PRIMITIVE =
3688 22;
3689pub const D3D_PRIMITIVE_D3D_PRIMITIVE_16_CONTROL_POINT_PATCH: D3D_PRIMITIVE =
3690 23;
3691pub const D3D_PRIMITIVE_D3D_PRIMITIVE_17_CONTROL_POINT_PATCH: D3D_PRIMITIVE =
3692 24;
3693pub const D3D_PRIMITIVE_D3D_PRIMITIVE_18_CONTROL_POINT_PATCH: D3D_PRIMITIVE =
3694 25;
3695pub const D3D_PRIMITIVE_D3D_PRIMITIVE_19_CONTROL_POINT_PATCH: D3D_PRIMITIVE =
3696 26;
3697pub const D3D_PRIMITIVE_D3D_PRIMITIVE_20_CONTROL_POINT_PATCH: D3D_PRIMITIVE =
3698 27;
3699pub const D3D_PRIMITIVE_D3D_PRIMITIVE_21_CONTROL_POINT_PATCH: D3D_PRIMITIVE =
3700 28;
3701pub const D3D_PRIMITIVE_D3D_PRIMITIVE_22_CONTROL_POINT_PATCH: D3D_PRIMITIVE =
3702 29;
3703pub const D3D_PRIMITIVE_D3D_PRIMITIVE_23_CONTROL_POINT_PATCH: D3D_PRIMITIVE =
3704 30;
3705pub const D3D_PRIMITIVE_D3D_PRIMITIVE_24_CONTROL_POINT_PATCH: D3D_PRIMITIVE =
3706 31;
3707pub const D3D_PRIMITIVE_D3D_PRIMITIVE_25_CONTROL_POINT_PATCH: D3D_PRIMITIVE =
3708 32;
3709pub const D3D_PRIMITIVE_D3D_PRIMITIVE_26_CONTROL_POINT_PATCH: D3D_PRIMITIVE =
3710 33;
3711pub const D3D_PRIMITIVE_D3D_PRIMITIVE_27_CONTROL_POINT_PATCH: D3D_PRIMITIVE =
3712 34;
3713pub const D3D_PRIMITIVE_D3D_PRIMITIVE_28_CONTROL_POINT_PATCH: D3D_PRIMITIVE =
3714 35;
3715pub const D3D_PRIMITIVE_D3D_PRIMITIVE_29_CONTROL_POINT_PATCH: D3D_PRIMITIVE =
3716 36;
3717pub const D3D_PRIMITIVE_D3D_PRIMITIVE_30_CONTROL_POINT_PATCH: D3D_PRIMITIVE =
3718 37;
3719pub const D3D_PRIMITIVE_D3D_PRIMITIVE_31_CONTROL_POINT_PATCH: D3D_PRIMITIVE =
3720 38;
3721pub const D3D_PRIMITIVE_D3D_PRIMITIVE_32_CONTROL_POINT_PATCH: D3D_PRIMITIVE =
3722 39;
3723pub const D3D_PRIMITIVE_D3D10_PRIMITIVE_UNDEFINED: D3D_PRIMITIVE = 0;
3724pub const D3D_PRIMITIVE_D3D10_PRIMITIVE_POINT: D3D_PRIMITIVE = 1;
3725pub const D3D_PRIMITIVE_D3D10_PRIMITIVE_LINE: D3D_PRIMITIVE = 2;
3726pub const D3D_PRIMITIVE_D3D10_PRIMITIVE_TRIANGLE: D3D_PRIMITIVE = 3;
3727pub const D3D_PRIMITIVE_D3D10_PRIMITIVE_LINE_ADJ: D3D_PRIMITIVE = 6;
3728pub const D3D_PRIMITIVE_D3D10_PRIMITIVE_TRIANGLE_ADJ: D3D_PRIMITIVE = 7;
3729pub const D3D_PRIMITIVE_D3D11_PRIMITIVE_UNDEFINED: D3D_PRIMITIVE = 0;
3730pub const D3D_PRIMITIVE_D3D11_PRIMITIVE_POINT: D3D_PRIMITIVE = 1;
3731pub const D3D_PRIMITIVE_D3D11_PRIMITIVE_LINE: D3D_PRIMITIVE = 2;
3732pub const D3D_PRIMITIVE_D3D11_PRIMITIVE_TRIANGLE: D3D_PRIMITIVE = 3;
3733pub const D3D_PRIMITIVE_D3D11_PRIMITIVE_LINE_ADJ: D3D_PRIMITIVE = 6;
3734pub const D3D_PRIMITIVE_D3D11_PRIMITIVE_TRIANGLE_ADJ: D3D_PRIMITIVE = 7;
3735pub const D3D_PRIMITIVE_D3D11_PRIMITIVE_1_CONTROL_POINT_PATCH: D3D_PRIMITIVE =
3736 8;
3737pub const D3D_PRIMITIVE_D3D11_PRIMITIVE_2_CONTROL_POINT_PATCH: D3D_PRIMITIVE =
3738 9;
3739pub const D3D_PRIMITIVE_D3D11_PRIMITIVE_3_CONTROL_POINT_PATCH: D3D_PRIMITIVE =
3740 10;
3741pub const D3D_PRIMITIVE_D3D11_PRIMITIVE_4_CONTROL_POINT_PATCH: D3D_PRIMITIVE =
3742 11;
3743pub const D3D_PRIMITIVE_D3D11_PRIMITIVE_5_CONTROL_POINT_PATCH: D3D_PRIMITIVE =
3744 12;
3745pub const D3D_PRIMITIVE_D3D11_PRIMITIVE_6_CONTROL_POINT_PATCH: D3D_PRIMITIVE =
3746 13;
3747pub const D3D_PRIMITIVE_D3D11_PRIMITIVE_7_CONTROL_POINT_PATCH: D3D_PRIMITIVE =
3748 14;
3749pub const D3D_PRIMITIVE_D3D11_PRIMITIVE_8_CONTROL_POINT_PATCH: D3D_PRIMITIVE =
3750 15;
3751pub const D3D_PRIMITIVE_D3D11_PRIMITIVE_9_CONTROL_POINT_PATCH: D3D_PRIMITIVE =
3752 16;
3753pub const D3D_PRIMITIVE_D3D11_PRIMITIVE_10_CONTROL_POINT_PATCH: D3D_PRIMITIVE =
3754 17;
3755pub const D3D_PRIMITIVE_D3D11_PRIMITIVE_11_CONTROL_POINT_PATCH: D3D_PRIMITIVE =
3756 18;
3757pub const D3D_PRIMITIVE_D3D11_PRIMITIVE_12_CONTROL_POINT_PATCH: D3D_PRIMITIVE =
3758 19;
3759pub const D3D_PRIMITIVE_D3D11_PRIMITIVE_13_CONTROL_POINT_PATCH: D3D_PRIMITIVE =
3760 20;
3761pub const D3D_PRIMITIVE_D3D11_PRIMITIVE_14_CONTROL_POINT_PATCH: D3D_PRIMITIVE =
3762 21;
3763pub const D3D_PRIMITIVE_D3D11_PRIMITIVE_15_CONTROL_POINT_PATCH: D3D_PRIMITIVE =
3764 22;
3765pub const D3D_PRIMITIVE_D3D11_PRIMITIVE_16_CONTROL_POINT_PATCH: D3D_PRIMITIVE =
3766 23;
3767pub const D3D_PRIMITIVE_D3D11_PRIMITIVE_17_CONTROL_POINT_PATCH: D3D_PRIMITIVE =
3768 24;
3769pub const D3D_PRIMITIVE_D3D11_PRIMITIVE_18_CONTROL_POINT_PATCH: D3D_PRIMITIVE =
3770 25;
3771pub const D3D_PRIMITIVE_D3D11_PRIMITIVE_19_CONTROL_POINT_PATCH: D3D_PRIMITIVE =
3772 26;
3773pub const D3D_PRIMITIVE_D3D11_PRIMITIVE_20_CONTROL_POINT_PATCH: D3D_PRIMITIVE =
3774 27;
3775pub const D3D_PRIMITIVE_D3D11_PRIMITIVE_21_CONTROL_POINT_PATCH: D3D_PRIMITIVE =
3776 28;
3777pub const D3D_PRIMITIVE_D3D11_PRIMITIVE_22_CONTROL_POINT_PATCH: D3D_PRIMITIVE =
3778 29;
3779pub const D3D_PRIMITIVE_D3D11_PRIMITIVE_23_CONTROL_POINT_PATCH: D3D_PRIMITIVE =
3780 30;
3781pub const D3D_PRIMITIVE_D3D11_PRIMITIVE_24_CONTROL_POINT_PATCH: D3D_PRIMITIVE =
3782 31;
3783pub const D3D_PRIMITIVE_D3D11_PRIMITIVE_25_CONTROL_POINT_PATCH: D3D_PRIMITIVE =
3784 32;
3785pub const D3D_PRIMITIVE_D3D11_PRIMITIVE_26_CONTROL_POINT_PATCH: D3D_PRIMITIVE =
3786 33;
3787pub const D3D_PRIMITIVE_D3D11_PRIMITIVE_27_CONTROL_POINT_PATCH: D3D_PRIMITIVE =
3788 34;
3789pub const D3D_PRIMITIVE_D3D11_PRIMITIVE_28_CONTROL_POINT_PATCH: D3D_PRIMITIVE =
3790 35;
3791pub const D3D_PRIMITIVE_D3D11_PRIMITIVE_29_CONTROL_POINT_PATCH: D3D_PRIMITIVE =
3792 36;
3793pub const D3D_PRIMITIVE_D3D11_PRIMITIVE_30_CONTROL_POINT_PATCH: D3D_PRIMITIVE =
3794 37;
3795pub const D3D_PRIMITIVE_D3D11_PRIMITIVE_31_CONTROL_POINT_PATCH: D3D_PRIMITIVE =
3796 38;
3797pub const D3D_PRIMITIVE_D3D11_PRIMITIVE_32_CONTROL_POINT_PATCH: D3D_PRIMITIVE =
3798 39;
3799pub type D3D_PRIMITIVE = ::std::os::raw::c_int;
3800extern "C" {
3801 pub static IID_ID3D10Blob: GUID;
3802}
3803#[repr(C)]
3804#[derive(Debug, Default, Copy, Clone, Hash, PartialOrd, Ord, PartialEq, Eq)]
3805pub struct ID3D10BlobVtbl {
3806 pub QueryInterface: ::std::option::Option<
3807 unsafe extern "C" fn(
3808 This: *mut ID3D10Blob,
3809 riid: *const IID,
3810 ppvObject: *mut *mut ::std::os::raw::c_void,
3811 ) -> HRESULT,
3812 >,
3813 pub AddRef: ::std::option::Option<
3814 unsafe extern "C" fn(This: *mut ID3D10Blob) -> ULONG,
3815 >,
3816 pub Release: ::std::option::Option<
3817 unsafe extern "C" fn(This: *mut ID3D10Blob) -> ULONG,
3818 >,
3819 pub GetBufferPointer: ::std::option::Option<
3820 unsafe extern "C" fn(This: *mut ID3D10Blob) -> LPVOID,
3821 >,
3822 pub GetBufferSize: ::std::option::Option<
3823 unsafe extern "C" fn(This: *mut ID3D10Blob) -> SIZE_T,
3824 >,
3825}
3826#[repr(C)]
3827#[derive(Debug, Copy, Clone, Hash, PartialOrd, Ord, PartialEq, Eq)]
3828pub struct ID3D10Blob {
3829 pub lpVtbl: *mut ID3D10BlobVtbl,
3830}
3831impl Default for ID3D10Blob {
3832 fn default() -> Self {
3833 let mut s = ::std::mem::MaybeUninit::<Self>::uninit();
3834 unsafe {
3835 ::std::ptr::write_bytes(s.as_mut_ptr(), 0, 1);
3836 s.assume_init()
3837 }
3838 }
3839}
3840pub type ID3DBlob = ID3D10Blob;
3841extern "C" {
3842 pub static IID_ID3DDestructionNotifier: IID;
3843}
3844extern "C" {
3845 pub static WKPDID_D3DDebugObjectName: GUID;
3846}
3847extern "C" {
3848 pub static WKPDID_D3DDebugObjectNameW: GUID;
3849}
3850extern "C" {
3851 pub static WKPDID_CommentStringW: GUID;
3852}
3853extern "C" {
3854 pub static WKPDID_D3D12UniqueObjectId: GUID;
3855}
3856pub type D3D12_GPU_VIRTUAL_ADDRESS = UINT64;
3857pub const D3D12_COMMAND_LIST_TYPE_D3D12_COMMAND_LIST_TYPE_DIRECT:
3858 D3D12_COMMAND_LIST_TYPE = 0;
3859pub const D3D12_COMMAND_LIST_TYPE_D3D12_COMMAND_LIST_TYPE_BUNDLE:
3860 D3D12_COMMAND_LIST_TYPE = 1;
3861pub const D3D12_COMMAND_LIST_TYPE_D3D12_COMMAND_LIST_TYPE_COMPUTE:
3862 D3D12_COMMAND_LIST_TYPE = 2;
3863pub const D3D12_COMMAND_LIST_TYPE_D3D12_COMMAND_LIST_TYPE_COPY:
3864 D3D12_COMMAND_LIST_TYPE = 3;
3865pub const D3D12_COMMAND_LIST_TYPE_D3D12_COMMAND_LIST_TYPE_VIDEO_DECODE:
3866 D3D12_COMMAND_LIST_TYPE = 4;
3867pub const D3D12_COMMAND_LIST_TYPE_D3D12_COMMAND_LIST_TYPE_VIDEO_PROCESS:
3868 D3D12_COMMAND_LIST_TYPE = 5;
3869pub const D3D12_COMMAND_LIST_TYPE_D3D12_COMMAND_LIST_TYPE_VIDEO_ENCODE:
3870 D3D12_COMMAND_LIST_TYPE = 6;
3871pub type D3D12_COMMAND_LIST_TYPE = ::std::os::raw::c_int;
3872pub const D3D12_COMMAND_QUEUE_FLAGS_D3D12_COMMAND_QUEUE_FLAG_NONE:
3873 D3D12_COMMAND_QUEUE_FLAGS = 0;
3874pub const D3D12_COMMAND_QUEUE_FLAGS_D3D12_COMMAND_QUEUE_FLAG_DISABLE_GPU_TIMEOUT : D3D12_COMMAND_QUEUE_FLAGS = 1 ;
3875pub type D3D12_COMMAND_QUEUE_FLAGS = ::std::os::raw::c_int;
3876pub const D3D12_COMMAND_QUEUE_PRIORITY_D3D12_COMMAND_QUEUE_PRIORITY_NORMAL:
3877 D3D12_COMMAND_QUEUE_PRIORITY = 0;
3878pub const D3D12_COMMAND_QUEUE_PRIORITY_D3D12_COMMAND_QUEUE_PRIORITY_HIGH:
3879 D3D12_COMMAND_QUEUE_PRIORITY = 100;
3880pub const D3D12_COMMAND_QUEUE_PRIORITY_D3D12_COMMAND_QUEUE_PRIORITY_GLOBAL_REALTIME : D3D12_COMMAND_QUEUE_PRIORITY = 10000 ;
3881pub type D3D12_COMMAND_QUEUE_PRIORITY = ::std::os::raw::c_int;
3882#[repr(C)]
3883#[derive(Debug, Copy, Clone, Hash, PartialOrd, Ord, PartialEq, Eq)]
3884pub struct D3D12_COMMAND_QUEUE_DESC {
3885 pub Type: D3D12_COMMAND_LIST_TYPE,
3886 pub Priority: INT,
3887 pub Flags: D3D12_COMMAND_QUEUE_FLAGS,
3888 pub NodeMask: UINT,
3889}
3890impl Default for D3D12_COMMAND_QUEUE_DESC {
3891 fn default() -> Self {
3892 let mut s = ::std::mem::MaybeUninit::<Self>::uninit();
3893 unsafe {
3894 ::std::ptr::write_bytes(s.as_mut_ptr(), 0, 1);
3895 s.assume_init()
3896 }
3897 }
3898}
3899pub const D3D12_PRIMITIVE_TOPOLOGY_TYPE_D3D12_PRIMITIVE_TOPOLOGY_TYPE_UNDEFINED : D3D12_PRIMITIVE_TOPOLOGY_TYPE = 0 ;
3900pub const D3D12_PRIMITIVE_TOPOLOGY_TYPE_D3D12_PRIMITIVE_TOPOLOGY_TYPE_POINT:
3901 D3D12_PRIMITIVE_TOPOLOGY_TYPE = 1;
3902pub const D3D12_PRIMITIVE_TOPOLOGY_TYPE_D3D12_PRIMITIVE_TOPOLOGY_TYPE_LINE:
3903 D3D12_PRIMITIVE_TOPOLOGY_TYPE = 2;
3904pub const D3D12_PRIMITIVE_TOPOLOGY_TYPE_D3D12_PRIMITIVE_TOPOLOGY_TYPE_TRIANGLE : D3D12_PRIMITIVE_TOPOLOGY_TYPE = 3 ;
3905pub const D3D12_PRIMITIVE_TOPOLOGY_TYPE_D3D12_PRIMITIVE_TOPOLOGY_TYPE_PATCH:
3906 D3D12_PRIMITIVE_TOPOLOGY_TYPE = 4;
3907pub type D3D12_PRIMITIVE_TOPOLOGY_TYPE = ::std::os::raw::c_int;
3908pub const D3D12_INPUT_CLASSIFICATION_D3D12_INPUT_CLASSIFICATION_PER_VERTEX_DATA : D3D12_INPUT_CLASSIFICATION = 0 ;
3909pub const D3D12_INPUT_CLASSIFICATION_D3D12_INPUT_CLASSIFICATION_PER_INSTANCE_DATA : D3D12_INPUT_CLASSIFICATION = 1 ;
3910pub type D3D12_INPUT_CLASSIFICATION = ::std::os::raw::c_int;
3911#[repr(C)]
3912#[derive(Debug, Copy, Clone, Hash, PartialOrd, Ord, PartialEq, Eq)]
3913pub struct D3D12_INPUT_ELEMENT_DESC {
3914 pub SemanticName: LPCSTR,
3915 pub SemanticIndex: UINT,
3916 pub Format: DXGI_FORMAT,
3917 pub InputSlot: UINT,
3918 pub AlignedByteOffset: UINT,
3919 pub InputSlotClass: D3D12_INPUT_CLASSIFICATION,
3920 pub InstanceDataStepRate: UINT,
3921}
3922impl Default for D3D12_INPUT_ELEMENT_DESC {
3923 fn default() -> Self {
3924 let mut s = ::std::mem::MaybeUninit::<Self>::uninit();
3925 unsafe {
3926 ::std::ptr::write_bytes(s.as_mut_ptr(), 0, 1);
3927 s.assume_init()
3928 }
3929 }
3930}
3931pub const D3D12_FILL_MODE_D3D12_FILL_MODE_WIREFRAME: D3D12_FILL_MODE = 2;
3932pub const D3D12_FILL_MODE_D3D12_FILL_MODE_SOLID: D3D12_FILL_MODE = 3;
3933pub type D3D12_FILL_MODE = ::std::os::raw::c_int;
3934pub use self::D3D_PRIMITIVE as D3D12_PRIMITIVE;
3935pub use self::D3D_PRIMITIVE_TOPOLOGY as D3D12_PRIMITIVE_TOPOLOGY;
3936pub const D3D12_CULL_MODE_D3D12_CULL_MODE_NONE: D3D12_CULL_MODE = 1;
3937pub const D3D12_CULL_MODE_D3D12_CULL_MODE_FRONT: D3D12_CULL_MODE = 2;
3938pub const D3D12_CULL_MODE_D3D12_CULL_MODE_BACK: D3D12_CULL_MODE = 3;
3939pub type D3D12_CULL_MODE = ::std::os::raw::c_int;
3940#[repr(C)]
3941#[derive(Debug, Copy, Clone, Hash, PartialOrd, Ord, PartialEq, Eq)]
3942pub struct D3D12_SO_DECLARATION_ENTRY {
3943 pub Stream: UINT,
3944 pub SemanticName: LPCSTR,
3945 pub SemanticIndex: UINT,
3946 pub StartComponent: BYTE,
3947 pub ComponentCount: BYTE,
3948 pub OutputSlot: BYTE,
3949}
3950impl Default for D3D12_SO_DECLARATION_ENTRY {
3951 fn default() -> Self {
3952 let mut s = ::std::mem::MaybeUninit::<Self>::uninit();
3953 unsafe {
3954 ::std::ptr::write_bytes(s.as_mut_ptr(), 0, 1);
3955 s.assume_init()
3956 }
3957 }
3958}
3959#[repr(C)]
3960#[derive(Debug, Default, Copy, Clone, PartialOrd, PartialEq)]
3961pub struct D3D12_VIEWPORT {
3962 pub TopLeftX: FLOAT,
3963 pub TopLeftY: FLOAT,
3964 pub Width: FLOAT,
3965 pub Height: FLOAT,
3966 pub MinDepth: FLOAT,
3967 pub MaxDepth: FLOAT,
3968}
3969pub type D3D12_RECT = RECT;
3970#[repr(C)]
3971#[derive(Debug, Default, Copy, Clone, Hash, PartialOrd, Ord, PartialEq, Eq)]
3972pub struct D3D12_BOX {
3973 pub left: UINT,
3974 pub top: UINT,
3975 pub front: UINT,
3976 pub right: UINT,
3977 pub bottom: UINT,
3978 pub back: UINT,
3979}
3980pub const D3D12_COMPARISON_FUNC_D3D12_COMPARISON_FUNC_NEVER:
3981 D3D12_COMPARISON_FUNC = 1;
3982pub const D3D12_COMPARISON_FUNC_D3D12_COMPARISON_FUNC_LESS:
3983 D3D12_COMPARISON_FUNC = 2;
3984pub const D3D12_COMPARISON_FUNC_D3D12_COMPARISON_FUNC_EQUAL:
3985 D3D12_COMPARISON_FUNC = 3;
3986pub const D3D12_COMPARISON_FUNC_D3D12_COMPARISON_FUNC_LESS_EQUAL:
3987 D3D12_COMPARISON_FUNC = 4;
3988pub const D3D12_COMPARISON_FUNC_D3D12_COMPARISON_FUNC_GREATER:
3989 D3D12_COMPARISON_FUNC = 5;
3990pub const D3D12_COMPARISON_FUNC_D3D12_COMPARISON_FUNC_NOT_EQUAL:
3991 D3D12_COMPARISON_FUNC = 6;
3992pub const D3D12_COMPARISON_FUNC_D3D12_COMPARISON_FUNC_GREATER_EQUAL:
3993 D3D12_COMPARISON_FUNC = 7;
3994pub const D3D12_COMPARISON_FUNC_D3D12_COMPARISON_FUNC_ALWAYS:
3995 D3D12_COMPARISON_FUNC = 8;
3996pub type D3D12_COMPARISON_FUNC = ::std::os::raw::c_int;
3997pub const D3D12_DEPTH_WRITE_MASK_D3D12_DEPTH_WRITE_MASK_ZERO:
3998 D3D12_DEPTH_WRITE_MASK = 0;
3999pub const D3D12_DEPTH_WRITE_MASK_D3D12_DEPTH_WRITE_MASK_ALL:
4000 D3D12_DEPTH_WRITE_MASK = 1;
4001pub type D3D12_DEPTH_WRITE_MASK = ::std::os::raw::c_int;
4002pub const D3D12_STENCIL_OP_D3D12_STENCIL_OP_KEEP: D3D12_STENCIL_OP = 1;
4003pub const D3D12_STENCIL_OP_D3D12_STENCIL_OP_ZERO: D3D12_STENCIL_OP = 2;
4004pub const D3D12_STENCIL_OP_D3D12_STENCIL_OP_REPLACE: D3D12_STENCIL_OP = 3;
4005pub const D3D12_STENCIL_OP_D3D12_STENCIL_OP_INCR_SAT: D3D12_STENCIL_OP = 4;
4006pub const D3D12_STENCIL_OP_D3D12_STENCIL_OP_DECR_SAT: D3D12_STENCIL_OP = 5;
4007pub const D3D12_STENCIL_OP_D3D12_STENCIL_OP_INVERT: D3D12_STENCIL_OP = 6;
4008pub const D3D12_STENCIL_OP_D3D12_STENCIL_OP_INCR: D3D12_STENCIL_OP = 7;
4009pub const D3D12_STENCIL_OP_D3D12_STENCIL_OP_DECR: D3D12_STENCIL_OP = 8;
4010pub type D3D12_STENCIL_OP = ::std::os::raw::c_int;
4011#[repr(C)]
4012#[derive(Debug, Copy, Clone, Hash, PartialOrd, Ord, PartialEq, Eq)]
4013pub struct D3D12_DEPTH_STENCILOP_DESC {
4014 pub StencilFailOp: D3D12_STENCIL_OP,
4015 pub StencilDepthFailOp: D3D12_STENCIL_OP,
4016 pub StencilPassOp: D3D12_STENCIL_OP,
4017 pub StencilFunc: D3D12_COMPARISON_FUNC,
4018}
4019impl Default for D3D12_DEPTH_STENCILOP_DESC {
4020 fn default() -> Self {
4021 let mut s = ::std::mem::MaybeUninit::<Self>::uninit();
4022 unsafe {
4023 ::std::ptr::write_bytes(s.as_mut_ptr(), 0, 1);
4024 s.assume_init()
4025 }
4026 }
4027}
4028#[repr(C)]
4029#[derive(Debug, Copy, Clone, Hash, PartialOrd, Ord, PartialEq, Eq)]
4030pub struct D3D12_DEPTH_STENCIL_DESC {
4031 pub DepthEnable: BOOL,
4032 pub DepthWriteMask: D3D12_DEPTH_WRITE_MASK,
4033 pub DepthFunc: D3D12_COMPARISON_FUNC,
4034 pub StencilEnable: BOOL,
4035 pub StencilReadMask: UINT8,
4036 pub StencilWriteMask: UINT8,
4037 pub FrontFace: D3D12_DEPTH_STENCILOP_DESC,
4038 pub BackFace: D3D12_DEPTH_STENCILOP_DESC,
4039}
4040impl Default for D3D12_DEPTH_STENCIL_DESC {
4041 fn default() -> Self {
4042 let mut s = ::std::mem::MaybeUninit::<Self>::uninit();
4043 unsafe {
4044 ::std::ptr::write_bytes(s.as_mut_ptr(), 0, 1);
4045 s.assume_init()
4046 }
4047 }
4048}
4049#[repr(C)]
4050#[derive(Debug, Copy, Clone, Hash, PartialOrd, Ord, PartialEq, Eq)]
4051pub struct D3D12_DEPTH_STENCIL_DESC1 {
4052 pub DepthEnable: BOOL,
4053 pub DepthWriteMask: D3D12_DEPTH_WRITE_MASK,
4054 pub DepthFunc: D3D12_COMPARISON_FUNC,
4055 pub StencilEnable: BOOL,
4056 pub StencilReadMask: UINT8,
4057 pub StencilWriteMask: UINT8,
4058 pub FrontFace: D3D12_DEPTH_STENCILOP_DESC,
4059 pub BackFace: D3D12_DEPTH_STENCILOP_DESC,
4060 pub DepthBoundsTestEnable: BOOL,
4061}
4062impl Default for D3D12_DEPTH_STENCIL_DESC1 {
4063 fn default() -> Self {
4064 let mut s = ::std::mem::MaybeUninit::<Self>::uninit();
4065 unsafe {
4066 ::std::ptr::write_bytes(s.as_mut_ptr(), 0, 1);
4067 s.assume_init()
4068 }
4069 }
4070}
4071pub const D3D12_BLEND_D3D12_BLEND_ZERO: D3D12_BLEND = 1;
4072pub const D3D12_BLEND_D3D12_BLEND_ONE: D3D12_BLEND = 2;
4073pub const D3D12_BLEND_D3D12_BLEND_SRC_COLOR: D3D12_BLEND = 3;
4074pub const D3D12_BLEND_D3D12_BLEND_INV_SRC_COLOR: D3D12_BLEND = 4;
4075pub const D3D12_BLEND_D3D12_BLEND_SRC_ALPHA: D3D12_BLEND = 5;
4076pub const D3D12_BLEND_D3D12_BLEND_INV_SRC_ALPHA: D3D12_BLEND = 6;
4077pub const D3D12_BLEND_D3D12_BLEND_DEST_ALPHA: D3D12_BLEND = 7;
4078pub const D3D12_BLEND_D3D12_BLEND_INV_DEST_ALPHA: D3D12_BLEND = 8;
4079pub const D3D12_BLEND_D3D12_BLEND_DEST_COLOR: D3D12_BLEND = 9;
4080pub const D3D12_BLEND_D3D12_BLEND_INV_DEST_COLOR: D3D12_BLEND = 10;
4081pub const D3D12_BLEND_D3D12_BLEND_SRC_ALPHA_SAT: D3D12_BLEND = 11;
4082pub const D3D12_BLEND_D3D12_BLEND_BLEND_FACTOR: D3D12_BLEND = 14;
4083pub const D3D12_BLEND_D3D12_BLEND_INV_BLEND_FACTOR: D3D12_BLEND = 15;
4084pub const D3D12_BLEND_D3D12_BLEND_SRC1_COLOR: D3D12_BLEND = 16;
4085pub const D3D12_BLEND_D3D12_BLEND_INV_SRC1_COLOR: D3D12_BLEND = 17;
4086pub const D3D12_BLEND_D3D12_BLEND_SRC1_ALPHA: D3D12_BLEND = 18;
4087pub const D3D12_BLEND_D3D12_BLEND_INV_SRC1_ALPHA: D3D12_BLEND = 19;
4088pub type D3D12_BLEND = ::std::os::raw::c_int;
4089pub const D3D12_BLEND_OP_D3D12_BLEND_OP_ADD: D3D12_BLEND_OP = 1;
4090pub const D3D12_BLEND_OP_D3D12_BLEND_OP_SUBTRACT: D3D12_BLEND_OP = 2;
4091pub const D3D12_BLEND_OP_D3D12_BLEND_OP_REV_SUBTRACT: D3D12_BLEND_OP = 3;
4092pub const D3D12_BLEND_OP_D3D12_BLEND_OP_MIN: D3D12_BLEND_OP = 4;
4093pub const D3D12_BLEND_OP_D3D12_BLEND_OP_MAX: D3D12_BLEND_OP = 5;
4094pub type D3D12_BLEND_OP = ::std::os::raw::c_int;
4095pub const D3D12_COLOR_WRITE_ENABLE_D3D12_COLOR_WRITE_ENABLE_RED:
4096 D3D12_COLOR_WRITE_ENABLE = 1;
4097pub const D3D12_COLOR_WRITE_ENABLE_D3D12_COLOR_WRITE_ENABLE_GREEN:
4098 D3D12_COLOR_WRITE_ENABLE = 2;
4099pub const D3D12_COLOR_WRITE_ENABLE_D3D12_COLOR_WRITE_ENABLE_BLUE:
4100 D3D12_COLOR_WRITE_ENABLE = 4;
4101pub const D3D12_COLOR_WRITE_ENABLE_D3D12_COLOR_WRITE_ENABLE_ALPHA:
4102 D3D12_COLOR_WRITE_ENABLE = 8;
4103pub const D3D12_COLOR_WRITE_ENABLE_D3D12_COLOR_WRITE_ENABLE_ALL:
4104 D3D12_COLOR_WRITE_ENABLE = 15;
4105pub type D3D12_COLOR_WRITE_ENABLE = ::std::os::raw::c_int;
4106pub const D3D12_LOGIC_OP_D3D12_LOGIC_OP_CLEAR: D3D12_LOGIC_OP = 0;
4107pub const D3D12_LOGIC_OP_D3D12_LOGIC_OP_SET: D3D12_LOGIC_OP = 1;
4108pub const D3D12_LOGIC_OP_D3D12_LOGIC_OP_COPY: D3D12_LOGIC_OP = 2;
4109pub const D3D12_LOGIC_OP_D3D12_LOGIC_OP_COPY_INVERTED: D3D12_LOGIC_OP = 3;
4110pub const D3D12_LOGIC_OP_D3D12_LOGIC_OP_NOOP: D3D12_LOGIC_OP = 4;
4111pub const D3D12_LOGIC_OP_D3D12_LOGIC_OP_INVERT: D3D12_LOGIC_OP = 5;
4112pub const D3D12_LOGIC_OP_D3D12_LOGIC_OP_AND: D3D12_LOGIC_OP = 6;
4113pub const D3D12_LOGIC_OP_D3D12_LOGIC_OP_NAND: D3D12_LOGIC_OP = 7;
4114pub const D3D12_LOGIC_OP_D3D12_LOGIC_OP_OR: D3D12_LOGIC_OP = 8;
4115pub const D3D12_LOGIC_OP_D3D12_LOGIC_OP_NOR: D3D12_LOGIC_OP = 9;
4116pub const D3D12_LOGIC_OP_D3D12_LOGIC_OP_XOR: D3D12_LOGIC_OP = 10;
4117pub const D3D12_LOGIC_OP_D3D12_LOGIC_OP_EQUIV: D3D12_LOGIC_OP = 11;
4118pub const D3D12_LOGIC_OP_D3D12_LOGIC_OP_AND_REVERSE: D3D12_LOGIC_OP = 12;
4119pub const D3D12_LOGIC_OP_D3D12_LOGIC_OP_AND_INVERTED: D3D12_LOGIC_OP = 13;
4120pub const D3D12_LOGIC_OP_D3D12_LOGIC_OP_OR_REVERSE: D3D12_LOGIC_OP = 14;
4121pub const D3D12_LOGIC_OP_D3D12_LOGIC_OP_OR_INVERTED: D3D12_LOGIC_OP = 15;
4122pub type D3D12_LOGIC_OP = ::std::os::raw::c_int;
4123#[repr(C)]
4124#[derive(Debug, Copy, Clone, Hash, PartialOrd, Ord, PartialEq, Eq)]
4125pub struct D3D12_RENDER_TARGET_BLEND_DESC {
4126 pub BlendEnable: BOOL,
4127 pub LogicOpEnable: BOOL,
4128 pub SrcBlend: D3D12_BLEND,
4129 pub DestBlend: D3D12_BLEND,
4130 pub BlendOp: D3D12_BLEND_OP,
4131 pub SrcBlendAlpha: D3D12_BLEND,
4132 pub DestBlendAlpha: D3D12_BLEND,
4133 pub BlendOpAlpha: D3D12_BLEND_OP,
4134 pub LogicOp: D3D12_LOGIC_OP,
4135 pub RenderTargetWriteMask: UINT8,
4136}
4137impl Default for D3D12_RENDER_TARGET_BLEND_DESC {
4138 fn default() -> Self {
4139 let mut s = ::std::mem::MaybeUninit::<Self>::uninit();
4140 unsafe {
4141 ::std::ptr::write_bytes(s.as_mut_ptr(), 0, 1);
4142 s.assume_init()
4143 }
4144 }
4145}
4146#[repr(C)]
4147#[derive(Debug, Copy, Clone, Hash, PartialOrd, Ord, PartialEq, Eq)]
4148pub struct D3D12_BLEND_DESC {
4149 pub AlphaToCoverageEnable: BOOL,
4150 pub IndependentBlendEnable: BOOL,
4151 pub RenderTarget: [D3D12_RENDER_TARGET_BLEND_DESC; 8usize],
4152}
4153impl Default for D3D12_BLEND_DESC {
4154 fn default() -> Self {
4155 let mut s = ::std::mem::MaybeUninit::<Self>::uninit();
4156 unsafe {
4157 ::std::ptr::write_bytes(s.as_mut_ptr(), 0, 1);
4158 s.assume_init()
4159 }
4160 }
4161}
4162pub const D3D12_CONSERVATIVE_RASTERIZATION_MODE_D3D12_CONSERVATIVE_RASTERIZATION_MODE_OFF : D3D12_CONSERVATIVE_RASTERIZATION_MODE = 0 ;
4163pub const D3D12_CONSERVATIVE_RASTERIZATION_MODE_D3D12_CONSERVATIVE_RASTERIZATION_MODE_ON : D3D12_CONSERVATIVE_RASTERIZATION_MODE = 1 ;
4164pub type D3D12_CONSERVATIVE_RASTERIZATION_MODE = ::std::os::raw::c_int;
4165#[repr(C)]
4166#[derive(Debug, Copy, Clone, PartialOrd, PartialEq)]
4167pub struct D3D12_RASTERIZER_DESC {
4168 pub FillMode: D3D12_FILL_MODE,
4169 pub CullMode: D3D12_CULL_MODE,
4170 pub FrontCounterClockwise: BOOL,
4171 pub DepthBias: INT,
4172 pub DepthBiasClamp: FLOAT,
4173 pub SlopeScaledDepthBias: FLOAT,
4174 pub DepthClipEnable: BOOL,
4175 pub MultisampleEnable: BOOL,
4176 pub AntialiasedLineEnable: BOOL,
4177 pub ForcedSampleCount: UINT,
4178 pub ConservativeRaster: D3D12_CONSERVATIVE_RASTERIZATION_MODE,
4179}
4180impl Default for D3D12_RASTERIZER_DESC {
4181 fn default() -> Self {
4182 let mut s = ::std::mem::MaybeUninit::<Self>::uninit();
4183 unsafe {
4184 ::std::ptr::write_bytes(s.as_mut_ptr(), 0, 1);
4185 s.assume_init()
4186 }
4187 }
4188}
4189extern "C" {
4190 pub static IID_ID3D12Object: IID;
4191}
4192#[repr(C)]
4193#[derive(Debug, Default, Copy, Clone, Hash, PartialOrd, Ord, PartialEq, Eq)]
4194pub struct ID3D12ObjectVtbl {
4195 pub QueryInterface: ::std::option::Option<
4196 unsafe extern "C" fn(
4197 This: *mut ID3D12Object,
4198 riid: *const IID,
4199 ppvObject: *mut *mut ::std::os::raw::c_void,
4200 ) -> HRESULT,
4201 >,
4202 pub AddRef: ::std::option::Option<
4203 unsafe extern "C" fn(This: *mut ID3D12Object) -> ULONG,
4204 >,
4205 pub Release: ::std::option::Option<
4206 unsafe extern "C" fn(This: *mut ID3D12Object) -> ULONG,
4207 >,
4208 pub GetPrivateData: ::std::option::Option<
4209 unsafe extern "C" fn(
4210 This: *mut ID3D12Object,
4211 guid: *const GUID,
4212 pDataSize: *mut UINT,
4213 pData: *mut ::std::os::raw::c_void,
4214 ) -> HRESULT,
4215 >,
4216 pub SetPrivateData: ::std::option::Option<
4217 unsafe extern "C" fn(
4218 This: *mut ID3D12Object,
4219 guid: *const GUID,
4220 DataSize: UINT,
4221 pData: *const ::std::os::raw::c_void,
4222 ) -> HRESULT,
4223 >,
4224 pub SetPrivateDataInterface: ::std::option::Option<
4225 unsafe extern "C" fn(
4226 This: *mut ID3D12Object,
4227 guid: *const GUID,
4228 pData: *const IUnknown,
4229 ) -> HRESULT,
4230 >,
4231 pub SetName: ::std::option::Option<
4232 unsafe extern "C" fn(This: *mut ID3D12Object, Name: LPCWSTR) -> HRESULT,
4233 >,
4234}
4235#[repr(C)]
4236#[derive(Debug, Copy, Clone, Hash, PartialOrd, Ord, PartialEq, Eq)]
4237pub struct ID3D12Object {
4238 pub lpVtbl: *mut ID3D12ObjectVtbl,
4239}
4240impl Default for ID3D12Object {
4241 fn default() -> Self {
4242 let mut s = ::std::mem::MaybeUninit::<Self>::uninit();
4243 unsafe {
4244 ::std::ptr::write_bytes(s.as_mut_ptr(), 0, 1);
4245 s.assume_init()
4246 }
4247 }
4248}
4249extern "C" {
4250 pub static IID_ID3D12DeviceChild: IID;
4251}
4252#[repr(C)]
4253#[derive(Debug, Default, Copy, Clone, Hash, PartialOrd, Ord, PartialEq, Eq)]
4254pub struct ID3D12DeviceChildVtbl {
4255 pub QueryInterface: ::std::option::Option<
4256 unsafe extern "C" fn(
4257 This: *mut ID3D12DeviceChild,
4258 riid: *const IID,
4259 ppvObject: *mut *mut ::std::os::raw::c_void,
4260 ) -> HRESULT,
4261 >,
4262 pub AddRef: ::std::option::Option<
4263 unsafe extern "C" fn(This: *mut ID3D12DeviceChild) -> ULONG,
4264 >,
4265 pub Release: ::std::option::Option<
4266 unsafe extern "C" fn(This: *mut ID3D12DeviceChild) -> ULONG,
4267 >,
4268 pub GetPrivateData: ::std::option::Option<
4269 unsafe extern "C" fn(
4270 This: *mut ID3D12DeviceChild,
4271 guid: *const GUID,
4272 pDataSize: *mut UINT,
4273 pData: *mut ::std::os::raw::c_void,
4274 ) -> HRESULT,
4275 >,
4276 pub SetPrivateData: ::std::option::Option<
4277 unsafe extern "C" fn(
4278 This: *mut ID3D12DeviceChild,
4279 guid: *const GUID,
4280 DataSize: UINT,
4281 pData: *const ::std::os::raw::c_void,
4282 ) -> HRESULT,
4283 >,
4284 pub SetPrivateDataInterface: ::std::option::Option<
4285 unsafe extern "C" fn(
4286 This: *mut ID3D12DeviceChild,
4287 guid: *const GUID,
4288 pData: *const IUnknown,
4289 ) -> HRESULT,
4290 >,
4291 pub SetName: ::std::option::Option<
4292 unsafe extern "C" fn(
4293 This: *mut ID3D12DeviceChild,
4294 Name: LPCWSTR,
4295 ) -> HRESULT,
4296 >,
4297 pub GetDevice: ::std::option::Option<
4298 unsafe extern "C" fn(
4299 This: *mut ID3D12DeviceChild,
4300 riid: *const IID,
4301 ppvDevice: *mut *mut ::std::os::raw::c_void,
4302 ) -> HRESULT,
4303 >,
4304}
4305#[repr(C)]
4306#[derive(Debug, Copy, Clone, Hash, PartialOrd, Ord, PartialEq, Eq)]
4307pub struct ID3D12DeviceChild {
4308 pub lpVtbl: *mut ID3D12DeviceChildVtbl,
4309}
4310impl Default for ID3D12DeviceChild {
4311 fn default() -> Self {
4312 let mut s = ::std::mem::MaybeUninit::<Self>::uninit();
4313 unsafe {
4314 ::std::ptr::write_bytes(s.as_mut_ptr(), 0, 1);
4315 s.assume_init()
4316 }
4317 }
4318}
4319extern "C" {
4320 pub static IID_ID3D12RootSignature: IID;
4321}
4322#[repr(C)]
4323#[derive(Debug, Default, Copy, Clone, Hash, PartialOrd, Ord, PartialEq, Eq)]
4324pub struct ID3D12RootSignatureVtbl {
4325 pub QueryInterface: ::std::option::Option<
4326 unsafe extern "C" fn(
4327 This: *mut ID3D12RootSignature,
4328 riid: *const IID,
4329 ppvObject: *mut *mut ::std::os::raw::c_void,
4330 ) -> HRESULT,
4331 >,
4332 pub AddRef: ::std::option::Option<
4333 unsafe extern "C" fn(This: *mut ID3D12RootSignature) -> ULONG,
4334 >,
4335 pub Release: ::std::option::Option<
4336 unsafe extern "C" fn(This: *mut ID3D12RootSignature) -> ULONG,
4337 >,
4338 pub GetPrivateData: ::std::option::Option<
4339 unsafe extern "C" fn(
4340 This: *mut ID3D12RootSignature,
4341 guid: *const GUID,
4342 pDataSize: *mut UINT,
4343 pData: *mut ::std::os::raw::c_void,
4344 ) -> HRESULT,
4345 >,
4346 pub SetPrivateData: ::std::option::Option<
4347 unsafe extern "C" fn(
4348 This: *mut ID3D12RootSignature,
4349 guid: *const GUID,
4350 DataSize: UINT,
4351 pData: *const ::std::os::raw::c_void,
4352 ) -> HRESULT,
4353 >,
4354 pub SetPrivateDataInterface: ::std::option::Option<
4355 unsafe extern "C" fn(
4356 This: *mut ID3D12RootSignature,
4357 guid: *const GUID,
4358 pData: *const IUnknown,
4359 ) -> HRESULT,
4360 >,
4361 pub SetName: ::std::option::Option<
4362 unsafe extern "C" fn(
4363 This: *mut ID3D12RootSignature,
4364 Name: LPCWSTR,
4365 ) -> HRESULT,
4366 >,
4367 pub GetDevice: ::std::option::Option<
4368 unsafe extern "C" fn(
4369 This: *mut ID3D12RootSignature,
4370 riid: *const IID,
4371 ppvDevice: *mut *mut ::std::os::raw::c_void,
4372 ) -> HRESULT,
4373 >,
4374}
4375#[repr(C)]
4376#[derive(Debug, Copy, Clone, Hash, PartialOrd, Ord, PartialEq, Eq)]
4377pub struct ID3D12RootSignature {
4378 pub lpVtbl: *mut ID3D12RootSignatureVtbl,
4379}
4380impl Default for ID3D12RootSignature {
4381 fn default() -> Self {
4382 let mut s = ::std::mem::MaybeUninit::<Self>::uninit();
4383 unsafe {
4384 ::std::ptr::write_bytes(s.as_mut_ptr(), 0, 1);
4385 s.assume_init()
4386 }
4387 }
4388}
4389#[repr(C)]
4390#[derive(Debug, Copy, Clone, Hash, PartialOrd, Ord, PartialEq, Eq)]
4391pub struct D3D12_SHADER_BYTECODE {
4392 pub pShaderBytecode: *const ::std::os::raw::c_void,
4393 pub BytecodeLength: SIZE_T,
4394}
4395impl Default for D3D12_SHADER_BYTECODE {
4396 fn default() -> Self {
4397 let mut s = ::std::mem::MaybeUninit::<Self>::uninit();
4398 unsafe {
4399 ::std::ptr::write_bytes(s.as_mut_ptr(), 0, 1);
4400 s.assume_init()
4401 }
4402 }
4403}
4404#[repr(C)]
4405#[derive(Debug, Copy, Clone, Hash, PartialOrd, Ord, PartialEq, Eq)]
4406pub struct D3D12_STREAM_OUTPUT_DESC {
4407 pub pSODeclaration: *const D3D12_SO_DECLARATION_ENTRY,
4408 pub NumEntries: UINT,
4409 pub pBufferStrides: *const UINT,
4410 pub NumStrides: UINT,
4411 pub RasterizedStream: UINT,
4412}
4413impl Default for D3D12_STREAM_OUTPUT_DESC {
4414 fn default() -> Self {
4415 let mut s = ::std::mem::MaybeUninit::<Self>::uninit();
4416 unsafe {
4417 ::std::ptr::write_bytes(s.as_mut_ptr(), 0, 1);
4418 s.assume_init()
4419 }
4420 }
4421}
4422#[repr(C)]
4423#[derive(Debug, Copy, Clone, Hash, PartialOrd, Ord, PartialEq, Eq)]
4424pub struct D3D12_INPUT_LAYOUT_DESC {
4425 pub pInputElementDescs: *const D3D12_INPUT_ELEMENT_DESC,
4426 pub NumElements: UINT,
4427}
4428impl Default for D3D12_INPUT_LAYOUT_DESC {
4429 fn default() -> Self {
4430 let mut s = ::std::mem::MaybeUninit::<Self>::uninit();
4431 unsafe {
4432 ::std::ptr::write_bytes(s.as_mut_ptr(), 0, 1);
4433 s.assume_init()
4434 }
4435 }
4436}
4437pub const D3D12_INDEX_BUFFER_STRIP_CUT_VALUE_D3D12_INDEX_BUFFER_STRIP_CUT_VALUE_DISABLED : D3D12_INDEX_BUFFER_STRIP_CUT_VALUE = 0 ;
4438pub const D3D12_INDEX_BUFFER_STRIP_CUT_VALUE_D3D12_INDEX_BUFFER_STRIP_CUT_VALUE_0xFFFF : D3D12_INDEX_BUFFER_STRIP_CUT_VALUE = 1 ;
4439pub const D3D12_INDEX_BUFFER_STRIP_CUT_VALUE_D3D12_INDEX_BUFFER_STRIP_CUT_VALUE_0xFFFFFFFF : D3D12_INDEX_BUFFER_STRIP_CUT_VALUE = 2 ;
4440pub type D3D12_INDEX_BUFFER_STRIP_CUT_VALUE = ::std::os::raw::c_int;
4441#[repr(C)]
4442#[derive(Debug, Copy, Clone, Hash, PartialOrd, Ord, PartialEq, Eq)]
4443pub struct D3D12_CACHED_PIPELINE_STATE {
4444 pub pCachedBlob: *const ::std::os::raw::c_void,
4445 pub CachedBlobSizeInBytes: SIZE_T,
4446}
4447impl Default for D3D12_CACHED_PIPELINE_STATE {
4448 fn default() -> Self {
4449 let mut s = ::std::mem::MaybeUninit::<Self>::uninit();
4450 unsafe {
4451 ::std::ptr::write_bytes(s.as_mut_ptr(), 0, 1);
4452 s.assume_init()
4453 }
4454 }
4455}
4456pub const D3D12_PIPELINE_STATE_FLAGS_D3D12_PIPELINE_STATE_FLAG_NONE:
4457 D3D12_PIPELINE_STATE_FLAGS = 0;
4458pub const D3D12_PIPELINE_STATE_FLAGS_D3D12_PIPELINE_STATE_FLAG_TOOL_DEBUG:
4459 D3D12_PIPELINE_STATE_FLAGS = 1;
4460pub type D3D12_PIPELINE_STATE_FLAGS = ::std::os::raw::c_int;
4461#[repr(C)]
4462#[derive(Debug, Copy, Clone, PartialOrd, PartialEq)]
4463pub struct D3D12_GRAPHICS_PIPELINE_STATE_DESC {
4464 pub pRootSignature: *mut ID3D12RootSignature,
4465 pub VS: D3D12_SHADER_BYTECODE,
4466 pub PS: D3D12_SHADER_BYTECODE,
4467 pub DS: D3D12_SHADER_BYTECODE,
4468 pub HS: D3D12_SHADER_BYTECODE,
4469 pub GS: D3D12_SHADER_BYTECODE,
4470 pub StreamOutput: D3D12_STREAM_OUTPUT_DESC,
4471 pub BlendState: D3D12_BLEND_DESC,
4472 pub SampleMask: UINT,
4473 pub RasterizerState: D3D12_RASTERIZER_DESC,
4474 pub DepthStencilState: D3D12_DEPTH_STENCIL_DESC,
4475 pub InputLayout: D3D12_INPUT_LAYOUT_DESC,
4476 pub IBStripCutValue: D3D12_INDEX_BUFFER_STRIP_CUT_VALUE,
4477 pub PrimitiveTopologyType: D3D12_PRIMITIVE_TOPOLOGY_TYPE,
4478 pub NumRenderTargets: UINT,
4479 pub RTVFormats: [DXGI_FORMAT; 8usize],
4480 pub DSVFormat: DXGI_FORMAT,
4481 pub SampleDesc: DXGI_SAMPLE_DESC,
4482 pub NodeMask: UINT,
4483 pub CachedPSO: D3D12_CACHED_PIPELINE_STATE,
4484 pub Flags: D3D12_PIPELINE_STATE_FLAGS,
4485}
4486impl Default for D3D12_GRAPHICS_PIPELINE_STATE_DESC {
4487 fn default() -> Self {
4488 let mut s = ::std::mem::MaybeUninit::<Self>::uninit();
4489 unsafe {
4490 ::std::ptr::write_bytes(s.as_mut_ptr(), 0, 1);
4491 s.assume_init()
4492 }
4493 }
4494}
4495#[repr(C)]
4496#[derive(Debug, Copy, Clone, Hash, PartialOrd, Ord, PartialEq, Eq)]
4497pub struct D3D12_COMPUTE_PIPELINE_STATE_DESC {
4498 pub pRootSignature: *mut ID3D12RootSignature,
4499 pub CS: D3D12_SHADER_BYTECODE,
4500 pub NodeMask: UINT,
4501 pub CachedPSO: D3D12_CACHED_PIPELINE_STATE,
4502 pub Flags: D3D12_PIPELINE_STATE_FLAGS,
4503}
4504impl Default for D3D12_COMPUTE_PIPELINE_STATE_DESC {
4505 fn default() -> Self {
4506 let mut s = ::std::mem::MaybeUninit::<Self>::uninit();
4507 unsafe {
4508 ::std::ptr::write_bytes(s.as_mut_ptr(), 0, 1);
4509 s.assume_init()
4510 }
4511 }
4512}
4513#[repr(C)]
4514#[derive(Debug, Copy, Clone, Hash, PartialOrd, Ord, PartialEq, Eq)]
4515pub struct D3D12_RT_FORMAT_ARRAY {
4516 pub RTFormats: [DXGI_FORMAT; 8usize],
4517 pub NumRenderTargets: UINT,
4518}
4519impl Default for D3D12_RT_FORMAT_ARRAY {
4520 fn default() -> Self {
4521 let mut s = ::std::mem::MaybeUninit::<Self>::uninit();
4522 unsafe {
4523 ::std::ptr::write_bytes(s.as_mut_ptr(), 0, 1);
4524 s.assume_init()
4525 }
4526 }
4527}
4528#[repr(C)]
4529#[derive(Debug, Copy, Clone, Hash, PartialOrd, Ord, PartialEq, Eq)]
4530pub struct D3D12_PIPELINE_STATE_STREAM_DESC {
4531 pub SizeInBytes: SIZE_T,
4532 pub pPipelineStateSubobjectStream: *mut ::std::os::raw::c_void,
4533}
4534impl Default for D3D12_PIPELINE_STATE_STREAM_DESC {
4535 fn default() -> Self {
4536 let mut s = ::std::mem::MaybeUninit::<Self>::uninit();
4537 unsafe {
4538 ::std::ptr::write_bytes(s.as_mut_ptr(), 0, 1);
4539 s.assume_init()
4540 }
4541 }
4542}
4543pub const D3D12_PIPELINE_STATE_SUBOBJECT_TYPE_D3D12_PIPELINE_STATE_SUBOBJECT_TYPE_ROOT_SIGNATURE : D3D12_PIPELINE_STATE_SUBOBJECT_TYPE = 0 ;
4544pub const D3D12_PIPELINE_STATE_SUBOBJECT_TYPE_D3D12_PIPELINE_STATE_SUBOBJECT_TYPE_VS : D3D12_PIPELINE_STATE_SUBOBJECT_TYPE = 1 ;
4545pub const D3D12_PIPELINE_STATE_SUBOBJECT_TYPE_D3D12_PIPELINE_STATE_SUBOBJECT_TYPE_PS : D3D12_PIPELINE_STATE_SUBOBJECT_TYPE = 2 ;
4546pub const D3D12_PIPELINE_STATE_SUBOBJECT_TYPE_D3D12_PIPELINE_STATE_SUBOBJECT_TYPE_DS : D3D12_PIPELINE_STATE_SUBOBJECT_TYPE = 3 ;
4547pub const D3D12_PIPELINE_STATE_SUBOBJECT_TYPE_D3D12_PIPELINE_STATE_SUBOBJECT_TYPE_HS : D3D12_PIPELINE_STATE_SUBOBJECT_TYPE = 4 ;
4548pub const D3D12_PIPELINE_STATE_SUBOBJECT_TYPE_D3D12_PIPELINE_STATE_SUBOBJECT_TYPE_GS : D3D12_PIPELINE_STATE_SUBOBJECT_TYPE = 5 ;
4549pub const D3D12_PIPELINE_STATE_SUBOBJECT_TYPE_D3D12_PIPELINE_STATE_SUBOBJECT_TYPE_CS : D3D12_PIPELINE_STATE_SUBOBJECT_TYPE = 6 ;
4550pub const D3D12_PIPELINE_STATE_SUBOBJECT_TYPE_D3D12_PIPELINE_STATE_SUBOBJECT_TYPE_STREAM_OUTPUT : D3D12_PIPELINE_STATE_SUBOBJECT_TYPE = 7 ;
4551pub const D3D12_PIPELINE_STATE_SUBOBJECT_TYPE_D3D12_PIPELINE_STATE_SUBOBJECT_TYPE_BLEND : D3D12_PIPELINE_STATE_SUBOBJECT_TYPE = 8 ;
4552pub const D3D12_PIPELINE_STATE_SUBOBJECT_TYPE_D3D12_PIPELINE_STATE_SUBOBJECT_TYPE_SAMPLE_MASK : D3D12_PIPELINE_STATE_SUBOBJECT_TYPE = 9 ;
4553pub const D3D12_PIPELINE_STATE_SUBOBJECT_TYPE_D3D12_PIPELINE_STATE_SUBOBJECT_TYPE_RASTERIZER : D3D12_PIPELINE_STATE_SUBOBJECT_TYPE = 10 ;
4554pub const D3D12_PIPELINE_STATE_SUBOBJECT_TYPE_D3D12_PIPELINE_STATE_SUBOBJECT_TYPE_DEPTH_STENCIL : D3D12_PIPELINE_STATE_SUBOBJECT_TYPE = 11 ;
4555pub const D3D12_PIPELINE_STATE_SUBOBJECT_TYPE_D3D12_PIPELINE_STATE_SUBOBJECT_TYPE_INPUT_LAYOUT : D3D12_PIPELINE_STATE_SUBOBJECT_TYPE = 12 ;
4556pub const D3D12_PIPELINE_STATE_SUBOBJECT_TYPE_D3D12_PIPELINE_STATE_SUBOBJECT_TYPE_IB_STRIP_CUT_VALUE : D3D12_PIPELINE_STATE_SUBOBJECT_TYPE = 13 ;
4557pub const D3D12_PIPELINE_STATE_SUBOBJECT_TYPE_D3D12_PIPELINE_STATE_SUBOBJECT_TYPE_PRIMITIVE_TOPOLOGY : D3D12_PIPELINE_STATE_SUBOBJECT_TYPE = 14 ;
4558pub const D3D12_PIPELINE_STATE_SUBOBJECT_TYPE_D3D12_PIPELINE_STATE_SUBOBJECT_TYPE_RENDER_TARGET_FORMATS : D3D12_PIPELINE_STATE_SUBOBJECT_TYPE = 15 ;
4559pub const D3D12_PIPELINE_STATE_SUBOBJECT_TYPE_D3D12_PIPELINE_STATE_SUBOBJECT_TYPE_DEPTH_STENCIL_FORMAT : D3D12_PIPELINE_STATE_SUBOBJECT_TYPE = 16 ;
4560pub const D3D12_PIPELINE_STATE_SUBOBJECT_TYPE_D3D12_PIPELINE_STATE_SUBOBJECT_TYPE_SAMPLE_DESC : D3D12_PIPELINE_STATE_SUBOBJECT_TYPE = 17 ;
4561pub const D3D12_PIPELINE_STATE_SUBOBJECT_TYPE_D3D12_PIPELINE_STATE_SUBOBJECT_TYPE_NODE_MASK : D3D12_PIPELINE_STATE_SUBOBJECT_TYPE = 18 ;
4562pub const D3D12_PIPELINE_STATE_SUBOBJECT_TYPE_D3D12_PIPELINE_STATE_SUBOBJECT_TYPE_CACHED_PSO : D3D12_PIPELINE_STATE_SUBOBJECT_TYPE = 19 ;
4563pub const D3D12_PIPELINE_STATE_SUBOBJECT_TYPE_D3D12_PIPELINE_STATE_SUBOBJECT_TYPE_FLAGS : D3D12_PIPELINE_STATE_SUBOBJECT_TYPE = 20 ;
4564pub const D3D12_PIPELINE_STATE_SUBOBJECT_TYPE_D3D12_PIPELINE_STATE_SUBOBJECT_TYPE_DEPTH_STENCIL1 : D3D12_PIPELINE_STATE_SUBOBJECT_TYPE = 21 ;
4565pub const D3D12_PIPELINE_STATE_SUBOBJECT_TYPE_D3D12_PIPELINE_STATE_SUBOBJECT_TYPE_VIEW_INSTANCING : D3D12_PIPELINE_STATE_SUBOBJECT_TYPE = 22 ;
4566pub const D3D12_PIPELINE_STATE_SUBOBJECT_TYPE_D3D12_PIPELINE_STATE_SUBOBJECT_TYPE_AS : D3D12_PIPELINE_STATE_SUBOBJECT_TYPE = 24 ;
4567pub const D3D12_PIPELINE_STATE_SUBOBJECT_TYPE_D3D12_PIPELINE_STATE_SUBOBJECT_TYPE_MS : D3D12_PIPELINE_STATE_SUBOBJECT_TYPE = 25 ;
4568pub const D3D12_PIPELINE_STATE_SUBOBJECT_TYPE_D3D12_PIPELINE_STATE_SUBOBJECT_TYPE_MAX_VALID : D3D12_PIPELINE_STATE_SUBOBJECT_TYPE = 26 ;
4569pub type D3D12_PIPELINE_STATE_SUBOBJECT_TYPE = ::std::os::raw::c_int;
4570pub const D3D12_FEATURE_D3D12_FEATURE_D3D12_OPTIONS: D3D12_FEATURE = 0;
4571pub const D3D12_FEATURE_D3D12_FEATURE_ARCHITECTURE: D3D12_FEATURE = 1;
4572pub const D3D12_FEATURE_D3D12_FEATURE_FEATURE_LEVELS: D3D12_FEATURE = 2;
4573pub const D3D12_FEATURE_D3D12_FEATURE_FORMAT_SUPPORT: D3D12_FEATURE = 3;
4574pub const D3D12_FEATURE_D3D12_FEATURE_MULTISAMPLE_QUALITY_LEVELS:
4575 D3D12_FEATURE = 4;
4576pub const D3D12_FEATURE_D3D12_FEATURE_FORMAT_INFO: D3D12_FEATURE = 5;
4577pub const D3D12_FEATURE_D3D12_FEATURE_GPU_VIRTUAL_ADDRESS_SUPPORT:
4578 D3D12_FEATURE = 6;
4579pub const D3D12_FEATURE_D3D12_FEATURE_SHADER_MODEL: D3D12_FEATURE = 7;
4580pub const D3D12_FEATURE_D3D12_FEATURE_D3D12_OPTIONS1: D3D12_FEATURE = 8;
4581pub const D3D12_FEATURE_D3D12_FEATURE_PROTECTED_RESOURCE_SESSION_SUPPORT:
4582 D3D12_FEATURE = 10;
4583pub const D3D12_FEATURE_D3D12_FEATURE_ROOT_SIGNATURE: D3D12_FEATURE = 12;
4584pub const D3D12_FEATURE_D3D12_FEATURE_ARCHITECTURE1: D3D12_FEATURE = 16;
4585pub const D3D12_FEATURE_D3D12_FEATURE_D3D12_OPTIONS2: D3D12_FEATURE = 18;
4586pub const D3D12_FEATURE_D3D12_FEATURE_SHADER_CACHE: D3D12_FEATURE = 19;
4587pub const D3D12_FEATURE_D3D12_FEATURE_COMMAND_QUEUE_PRIORITY: D3D12_FEATURE =
4588 20;
4589pub const D3D12_FEATURE_D3D12_FEATURE_D3D12_OPTIONS3: D3D12_FEATURE = 21;
4590pub const D3D12_FEATURE_D3D12_FEATURE_EXISTING_HEAPS: D3D12_FEATURE = 22;
4591pub const D3D12_FEATURE_D3D12_FEATURE_D3D12_OPTIONS4: D3D12_FEATURE = 23;
4592pub const D3D12_FEATURE_D3D12_FEATURE_SERIALIZATION: D3D12_FEATURE = 24;
4593pub const D3D12_FEATURE_D3D12_FEATURE_CROSS_NODE: D3D12_FEATURE = 25;
4594pub const D3D12_FEATURE_D3D12_FEATURE_D3D12_OPTIONS5: D3D12_FEATURE = 27;
4595pub const D3D12_FEATURE_D3D12_FEATURE_DISPLAYABLE: D3D12_FEATURE = 28;
4596pub const D3D12_FEATURE_D3D12_FEATURE_D3D12_OPTIONS6: D3D12_FEATURE = 30;
4597pub const D3D12_FEATURE_D3D12_FEATURE_QUERY_META_COMMAND: D3D12_FEATURE = 31;
4598pub const D3D12_FEATURE_D3D12_FEATURE_D3D12_OPTIONS7: D3D12_FEATURE = 32;
4599pub const D3D12_FEATURE_D3D12_FEATURE_PROTECTED_RESOURCE_SESSION_TYPE_COUNT:
4600 D3D12_FEATURE = 33;
4601pub const D3D12_FEATURE_D3D12_FEATURE_PROTECTED_RESOURCE_SESSION_TYPES:
4602 D3D12_FEATURE = 34;
4603pub const D3D12_FEATURE_D3D12_FEATURE_D3D12_OPTIONS8: D3D12_FEATURE = 36;
4604pub const D3D12_FEATURE_D3D12_FEATURE_D3D12_OPTIONS9: D3D12_FEATURE = 37;
4605pub const D3D12_FEATURE_D3D12_FEATURE_D3D12_OPTIONS10: D3D12_FEATURE = 39;
4606pub const D3D12_FEATURE_D3D12_FEATURE_D3D12_OPTIONS11: D3D12_FEATURE = 40;
4607pub const D3D12_FEATURE_D3D12_FEATURE_D3D12_OPTIONS12: D3D12_FEATURE = 41;
4608pub type D3D12_FEATURE = ::std::os::raw::c_int;
4609pub const D3D12_SHADER_MIN_PRECISION_SUPPORT_D3D12_SHADER_MIN_PRECISION_SUPPORT_NONE : D3D12_SHADER_MIN_PRECISION_SUPPORT = 0 ;
4610pub const D3D12_SHADER_MIN_PRECISION_SUPPORT_D3D12_SHADER_MIN_PRECISION_SUPPORT_10_BIT : D3D12_SHADER_MIN_PRECISION_SUPPORT = 1 ;
4611pub const D3D12_SHADER_MIN_PRECISION_SUPPORT_D3D12_SHADER_MIN_PRECISION_SUPPORT_16_BIT : D3D12_SHADER_MIN_PRECISION_SUPPORT = 2 ;
4612pub type D3D12_SHADER_MIN_PRECISION_SUPPORT = ::std::os::raw::c_int;
4613pub const D3D12_TILED_RESOURCES_TIER_D3D12_TILED_RESOURCES_TIER_NOT_SUPPORTED : D3D12_TILED_RESOURCES_TIER = 0 ;
4614pub const D3D12_TILED_RESOURCES_TIER_D3D12_TILED_RESOURCES_TIER_1:
4615 D3D12_TILED_RESOURCES_TIER = 1;
4616pub const D3D12_TILED_RESOURCES_TIER_D3D12_TILED_RESOURCES_TIER_2:
4617 D3D12_TILED_RESOURCES_TIER = 2;
4618pub const D3D12_TILED_RESOURCES_TIER_D3D12_TILED_RESOURCES_TIER_3:
4619 D3D12_TILED_RESOURCES_TIER = 3;
4620pub const D3D12_TILED_RESOURCES_TIER_D3D12_TILED_RESOURCES_TIER_4:
4621 D3D12_TILED_RESOURCES_TIER = 4;
4622pub type D3D12_TILED_RESOURCES_TIER = ::std::os::raw::c_int;
4623pub const D3D12_RESOURCE_BINDING_TIER_D3D12_RESOURCE_BINDING_TIER_1:
4624 D3D12_RESOURCE_BINDING_TIER = 1;
4625pub const D3D12_RESOURCE_BINDING_TIER_D3D12_RESOURCE_BINDING_TIER_2:
4626 D3D12_RESOURCE_BINDING_TIER = 2;
4627pub const D3D12_RESOURCE_BINDING_TIER_D3D12_RESOURCE_BINDING_TIER_3:
4628 D3D12_RESOURCE_BINDING_TIER = 3;
4629pub type D3D12_RESOURCE_BINDING_TIER = ::std::os::raw::c_int;
4630pub const D3D12_CONSERVATIVE_RASTERIZATION_TIER_D3D12_CONSERVATIVE_RASTERIZATION_TIER_NOT_SUPPORTED : D3D12_CONSERVATIVE_RASTERIZATION_TIER = 0 ;
4631pub const D3D12_CONSERVATIVE_RASTERIZATION_TIER_D3D12_CONSERVATIVE_RASTERIZATION_TIER_1 : D3D12_CONSERVATIVE_RASTERIZATION_TIER = 1 ;
4632pub const D3D12_CONSERVATIVE_RASTERIZATION_TIER_D3D12_CONSERVATIVE_RASTERIZATION_TIER_2 : D3D12_CONSERVATIVE_RASTERIZATION_TIER = 2 ;
4633pub const D3D12_CONSERVATIVE_RASTERIZATION_TIER_D3D12_CONSERVATIVE_RASTERIZATION_TIER_3 : D3D12_CONSERVATIVE_RASTERIZATION_TIER = 3 ;
4634pub type D3D12_CONSERVATIVE_RASTERIZATION_TIER = ::std::os::raw::c_int;
4635pub const D3D12_FORMAT_SUPPORT1_D3D12_FORMAT_SUPPORT1_NONE:
4636 D3D12_FORMAT_SUPPORT1 = 0;
4637pub const D3D12_FORMAT_SUPPORT1_D3D12_FORMAT_SUPPORT1_BUFFER:
4638 D3D12_FORMAT_SUPPORT1 = 1;
4639pub const D3D12_FORMAT_SUPPORT1_D3D12_FORMAT_SUPPORT1_IA_VERTEX_BUFFER:
4640 D3D12_FORMAT_SUPPORT1 = 2;
4641pub const D3D12_FORMAT_SUPPORT1_D3D12_FORMAT_SUPPORT1_IA_INDEX_BUFFER:
4642 D3D12_FORMAT_SUPPORT1 = 4;
4643pub const D3D12_FORMAT_SUPPORT1_D3D12_FORMAT_SUPPORT1_SO_BUFFER:
4644 D3D12_FORMAT_SUPPORT1 = 8;
4645pub const D3D12_FORMAT_SUPPORT1_D3D12_FORMAT_SUPPORT1_TEXTURE1D:
4646 D3D12_FORMAT_SUPPORT1 = 16;
4647pub const D3D12_FORMAT_SUPPORT1_D3D12_FORMAT_SUPPORT1_TEXTURE2D:
4648 D3D12_FORMAT_SUPPORT1 = 32;
4649pub const D3D12_FORMAT_SUPPORT1_D3D12_FORMAT_SUPPORT1_TEXTURE3D:
4650 D3D12_FORMAT_SUPPORT1 = 64;
4651pub const D3D12_FORMAT_SUPPORT1_D3D12_FORMAT_SUPPORT1_TEXTURECUBE:
4652 D3D12_FORMAT_SUPPORT1 = 128;
4653pub const D3D12_FORMAT_SUPPORT1_D3D12_FORMAT_SUPPORT1_SHADER_LOAD:
4654 D3D12_FORMAT_SUPPORT1 = 256;
4655pub const D3D12_FORMAT_SUPPORT1_D3D12_FORMAT_SUPPORT1_SHADER_SAMPLE:
4656 D3D12_FORMAT_SUPPORT1 = 512;
4657pub const D3D12_FORMAT_SUPPORT1_D3D12_FORMAT_SUPPORT1_SHADER_SAMPLE_COMPARISON : D3D12_FORMAT_SUPPORT1 = 1024 ;
4658pub const D3D12_FORMAT_SUPPORT1_D3D12_FORMAT_SUPPORT1_SHADER_SAMPLE_MONO_TEXT : D3D12_FORMAT_SUPPORT1 = 2048 ;
4659pub const D3D12_FORMAT_SUPPORT1_D3D12_FORMAT_SUPPORT1_MIP:
4660 D3D12_FORMAT_SUPPORT1 = 4096;
4661pub const D3D12_FORMAT_SUPPORT1_D3D12_FORMAT_SUPPORT1_RENDER_TARGET:
4662 D3D12_FORMAT_SUPPORT1 = 16384;
4663pub const D3D12_FORMAT_SUPPORT1_D3D12_FORMAT_SUPPORT1_BLENDABLE:
4664 D3D12_FORMAT_SUPPORT1 = 32768;
4665pub const D3D12_FORMAT_SUPPORT1_D3D12_FORMAT_SUPPORT1_DEPTH_STENCIL:
4666 D3D12_FORMAT_SUPPORT1 = 65536;
4667pub const D3D12_FORMAT_SUPPORT1_D3D12_FORMAT_SUPPORT1_MULTISAMPLE_RESOLVE:
4668 D3D12_FORMAT_SUPPORT1 = 262144;
4669pub const D3D12_FORMAT_SUPPORT1_D3D12_FORMAT_SUPPORT1_DISPLAY:
4670 D3D12_FORMAT_SUPPORT1 = 524288;
4671pub const D3D12_FORMAT_SUPPORT1_D3D12_FORMAT_SUPPORT1_CAST_WITHIN_BIT_LAYOUT:
4672 D3D12_FORMAT_SUPPORT1 = 1048576;
4673pub const D3D12_FORMAT_SUPPORT1_D3D12_FORMAT_SUPPORT1_MULTISAMPLE_RENDERTARGET : D3D12_FORMAT_SUPPORT1 = 2097152 ;
4674pub const D3D12_FORMAT_SUPPORT1_D3D12_FORMAT_SUPPORT1_MULTISAMPLE_LOAD:
4675 D3D12_FORMAT_SUPPORT1 = 4194304;
4676pub const D3D12_FORMAT_SUPPORT1_D3D12_FORMAT_SUPPORT1_SHADER_GATHER:
4677 D3D12_FORMAT_SUPPORT1 = 8388608;
4678pub const D3D12_FORMAT_SUPPORT1_D3D12_FORMAT_SUPPORT1_BACK_BUFFER_CAST:
4679 D3D12_FORMAT_SUPPORT1 = 16777216;
4680pub const D3D12_FORMAT_SUPPORT1_D3D12_FORMAT_SUPPORT1_TYPED_UNORDERED_ACCESS_VIEW : D3D12_FORMAT_SUPPORT1 = 33554432 ;
4681pub const D3D12_FORMAT_SUPPORT1_D3D12_FORMAT_SUPPORT1_SHADER_GATHER_COMPARISON : D3D12_FORMAT_SUPPORT1 = 67108864 ;
4682pub const D3D12_FORMAT_SUPPORT1_D3D12_FORMAT_SUPPORT1_DECODER_OUTPUT:
4683 D3D12_FORMAT_SUPPORT1 = 134217728;
4684pub const D3D12_FORMAT_SUPPORT1_D3D12_FORMAT_SUPPORT1_VIDEO_PROCESSOR_OUTPUT:
4685 D3D12_FORMAT_SUPPORT1 = 268435456;
4686pub const D3D12_FORMAT_SUPPORT1_D3D12_FORMAT_SUPPORT1_VIDEO_PROCESSOR_INPUT:
4687 D3D12_FORMAT_SUPPORT1 = 536870912;
4688pub const D3D12_FORMAT_SUPPORT1_D3D12_FORMAT_SUPPORT1_VIDEO_ENCODER:
4689 D3D12_FORMAT_SUPPORT1 = 1073741824;
4690pub type D3D12_FORMAT_SUPPORT1 = ::std::os::raw::c_int;
4691pub const D3D12_FORMAT_SUPPORT2_D3D12_FORMAT_SUPPORT2_NONE:
4692 D3D12_FORMAT_SUPPORT2 = 0;
4693pub const D3D12_FORMAT_SUPPORT2_D3D12_FORMAT_SUPPORT2_UAV_ATOMIC_ADD:
4694 D3D12_FORMAT_SUPPORT2 = 1;
4695pub const D3D12_FORMAT_SUPPORT2_D3D12_FORMAT_SUPPORT2_UAV_ATOMIC_BITWISE_OPS:
4696 D3D12_FORMAT_SUPPORT2 = 2;
4697pub const D3D12_FORMAT_SUPPORT2_D3D12_FORMAT_SUPPORT2_UAV_ATOMIC_COMPARE_STORE_OR_COMPARE_EXCHANGE : D3D12_FORMAT_SUPPORT2 = 4 ;
4698pub const D3D12_FORMAT_SUPPORT2_D3D12_FORMAT_SUPPORT2_UAV_ATOMIC_EXCHANGE:
4699 D3D12_FORMAT_SUPPORT2 = 8;
4700pub const D3D12_FORMAT_SUPPORT2_D3D12_FORMAT_SUPPORT2_UAV_ATOMIC_SIGNED_MIN_OR_MAX : D3D12_FORMAT_SUPPORT2 = 16 ;
4701pub const D3D12_FORMAT_SUPPORT2_D3D12_FORMAT_SUPPORT2_UAV_ATOMIC_UNSIGNED_MIN_OR_MAX : D3D12_FORMAT_SUPPORT2 = 32 ;
4702pub const D3D12_FORMAT_SUPPORT2_D3D12_FORMAT_SUPPORT2_UAV_TYPED_LOAD:
4703 D3D12_FORMAT_SUPPORT2 = 64;
4704pub const D3D12_FORMAT_SUPPORT2_D3D12_FORMAT_SUPPORT2_UAV_TYPED_STORE:
4705 D3D12_FORMAT_SUPPORT2 = 128;
4706pub const D3D12_FORMAT_SUPPORT2_D3D12_FORMAT_SUPPORT2_OUTPUT_MERGER_LOGIC_OP:
4707 D3D12_FORMAT_SUPPORT2 = 256;
4708pub const D3D12_FORMAT_SUPPORT2_D3D12_FORMAT_SUPPORT2_TILED:
4709 D3D12_FORMAT_SUPPORT2 = 512;
4710pub const D3D12_FORMAT_SUPPORT2_D3D12_FORMAT_SUPPORT2_MULTIPLANE_OVERLAY:
4711 D3D12_FORMAT_SUPPORT2 = 16384;
4712pub const D3D12_FORMAT_SUPPORT2_D3D12_FORMAT_SUPPORT2_SAMPLER_FEEDBACK:
4713 D3D12_FORMAT_SUPPORT2 = 32768;
4714pub type D3D12_FORMAT_SUPPORT2 = ::std::os::raw::c_int;
4715pub const D3D12_MULTISAMPLE_QUALITY_LEVEL_FLAGS_D3D12_MULTISAMPLE_QUALITY_LEVELS_FLAG_NONE : D3D12_MULTISAMPLE_QUALITY_LEVEL_FLAGS = 0 ;
4716pub const D3D12_MULTISAMPLE_QUALITY_LEVEL_FLAGS_D3D12_MULTISAMPLE_QUALITY_LEVELS_FLAG_TILED_RESOURCE : D3D12_MULTISAMPLE_QUALITY_LEVEL_FLAGS = 1 ;
4717pub type D3D12_MULTISAMPLE_QUALITY_LEVEL_FLAGS = ::std::os::raw::c_int;
4718pub const D3D12_CROSS_NODE_SHARING_TIER_D3D12_CROSS_NODE_SHARING_TIER_NOT_SUPPORTED : D3D12_CROSS_NODE_SHARING_TIER = 0 ;
4719pub const D3D12_CROSS_NODE_SHARING_TIER_D3D12_CROSS_NODE_SHARING_TIER_1_EMULATED : D3D12_CROSS_NODE_SHARING_TIER = 1 ;
4720pub const D3D12_CROSS_NODE_SHARING_TIER_D3D12_CROSS_NODE_SHARING_TIER_1:
4721 D3D12_CROSS_NODE_SHARING_TIER = 2;
4722pub const D3D12_CROSS_NODE_SHARING_TIER_D3D12_CROSS_NODE_SHARING_TIER_2:
4723 D3D12_CROSS_NODE_SHARING_TIER = 3;
4724pub const D3D12_CROSS_NODE_SHARING_TIER_D3D12_CROSS_NODE_SHARING_TIER_3:
4725 D3D12_CROSS_NODE_SHARING_TIER = 4;
4726pub type D3D12_CROSS_NODE_SHARING_TIER = ::std::os::raw::c_int;
4727pub const D3D12_RESOURCE_HEAP_TIER_D3D12_RESOURCE_HEAP_TIER_1:
4728 D3D12_RESOURCE_HEAP_TIER = 1;
4729pub const D3D12_RESOURCE_HEAP_TIER_D3D12_RESOURCE_HEAP_TIER_2:
4730 D3D12_RESOURCE_HEAP_TIER = 2;
4731pub type D3D12_RESOURCE_HEAP_TIER = ::std::os::raw::c_int;
4732pub const D3D12_PROGRAMMABLE_SAMPLE_POSITIONS_TIER_D3D12_PROGRAMMABLE_SAMPLE_POSITIONS_TIER_NOT_SUPPORTED : D3D12_PROGRAMMABLE_SAMPLE_POSITIONS_TIER = 0 ;
4733pub const D3D12_PROGRAMMABLE_SAMPLE_POSITIONS_TIER_D3D12_PROGRAMMABLE_SAMPLE_POSITIONS_TIER_1 : D3D12_PROGRAMMABLE_SAMPLE_POSITIONS_TIER = 1 ;
4734pub const D3D12_PROGRAMMABLE_SAMPLE_POSITIONS_TIER_D3D12_PROGRAMMABLE_SAMPLE_POSITIONS_TIER_2 : D3D12_PROGRAMMABLE_SAMPLE_POSITIONS_TIER = 2 ;
4735pub type D3D12_PROGRAMMABLE_SAMPLE_POSITIONS_TIER = ::std::os::raw::c_int;
4736pub const D3D12_VIEW_INSTANCING_TIER_D3D12_VIEW_INSTANCING_TIER_NOT_SUPPORTED : D3D12_VIEW_INSTANCING_TIER = 0 ;
4737pub const D3D12_VIEW_INSTANCING_TIER_D3D12_VIEW_INSTANCING_TIER_1:
4738 D3D12_VIEW_INSTANCING_TIER = 1;
4739pub const D3D12_VIEW_INSTANCING_TIER_D3D12_VIEW_INSTANCING_TIER_2:
4740 D3D12_VIEW_INSTANCING_TIER = 2;
4741pub const D3D12_VIEW_INSTANCING_TIER_D3D12_VIEW_INSTANCING_TIER_3:
4742 D3D12_VIEW_INSTANCING_TIER = 3;
4743pub type D3D12_VIEW_INSTANCING_TIER = ::std::os::raw::c_int;
4744#[repr(C)]
4745#[derive(Debug, Copy, Clone, Hash, PartialOrd, Ord, PartialEq, Eq)]
4746pub struct D3D12_FEATURE_DATA_D3D12_OPTIONS {
4747 pub DoublePrecisionFloatShaderOps: BOOL,
4748 pub OutputMergerLogicOp: BOOL,
4749 pub MinPrecisionSupport: D3D12_SHADER_MIN_PRECISION_SUPPORT,
4750 pub TiledResourcesTier: D3D12_TILED_RESOURCES_TIER,
4751 pub ResourceBindingTier: D3D12_RESOURCE_BINDING_TIER,
4752 pub PSSpecifiedStencilRefSupported: BOOL,
4753 pub TypedUAVLoadAdditionalFormats: BOOL,
4754 pub ROVsSupported: BOOL,
4755 pub ConservativeRasterizationTier: D3D12_CONSERVATIVE_RASTERIZATION_TIER,
4756 pub MaxGPUVirtualAddressBitsPerResource: UINT,
4757 pub StandardSwizzle64KBSupported: BOOL,
4758 pub CrossNodeSharingTier: D3D12_CROSS_NODE_SHARING_TIER,
4759 pub CrossAdapterRowMajorTextureSupported: BOOL,
4760 pub VPAndRTArrayIndexFromAnyShaderFeedingRasterizerSupportedWithoutGSEmulation:
4761 BOOL,
4762 pub ResourceHeapTier: D3D12_RESOURCE_HEAP_TIER,
4763}
4764impl Default for D3D12_FEATURE_DATA_D3D12_OPTIONS {
4765 fn default() -> Self {
4766 let mut s = ::std::mem::MaybeUninit::<Self>::uninit();
4767 unsafe {
4768 ::std::ptr::write_bytes(s.as_mut_ptr(), 0, 1);
4769 s.assume_init()
4770 }
4771 }
4772}
4773#[repr(C)]
4774#[derive(Debug, Default, Copy, Clone, Hash, PartialOrd, Ord, PartialEq, Eq)]
4775pub struct D3D12_FEATURE_DATA_D3D12_OPTIONS1 {
4776 pub WaveOps: BOOL,
4777 pub WaveLaneCountMin: UINT,
4778 pub WaveLaneCountMax: UINT,
4779 pub TotalLaneCount: UINT,
4780 pub ExpandedComputeResourceStates: BOOL,
4781 pub Int64ShaderOps: BOOL,
4782}
4783#[repr(C)]
4784#[derive(Debug, Copy, Clone, Hash, PartialOrd, Ord, PartialEq, Eq)]
4785pub struct D3D12_FEATURE_DATA_D3D12_OPTIONS2 {
4786 pub DepthBoundsTestSupported: BOOL,
4787 pub ProgrammableSamplePositionsTier:
4788 D3D12_PROGRAMMABLE_SAMPLE_POSITIONS_TIER,
4789}
4790impl Default for D3D12_FEATURE_DATA_D3D12_OPTIONS2 {
4791 fn default() -> Self {
4792 let mut s = ::std::mem::MaybeUninit::<Self>::uninit();
4793 unsafe {
4794 ::std::ptr::write_bytes(s.as_mut_ptr(), 0, 1);
4795 s.assume_init()
4796 }
4797 }
4798}
4799pub const D3D_ROOT_SIGNATURE_VERSION_D3D_ROOT_SIGNATURE_VERSION_1:
4800 D3D_ROOT_SIGNATURE_VERSION = 1;
4801pub const D3D_ROOT_SIGNATURE_VERSION_D3D_ROOT_SIGNATURE_VERSION_1_0:
4802 D3D_ROOT_SIGNATURE_VERSION = 1;
4803pub const D3D_ROOT_SIGNATURE_VERSION_D3D_ROOT_SIGNATURE_VERSION_1_1:
4804 D3D_ROOT_SIGNATURE_VERSION = 2;
4805pub type D3D_ROOT_SIGNATURE_VERSION = ::std::os::raw::c_int;
4806#[repr(C)]
4807#[derive(Debug, Copy, Clone, Hash, PartialOrd, Ord, PartialEq, Eq)]
4808pub struct D3D12_FEATURE_DATA_ROOT_SIGNATURE {
4809 pub HighestVersion: D3D_ROOT_SIGNATURE_VERSION,
4810}
4811impl Default for D3D12_FEATURE_DATA_ROOT_SIGNATURE {
4812 fn default() -> Self {
4813 let mut s = ::std::mem::MaybeUninit::<Self>::uninit();
4814 unsafe {
4815 ::std::ptr::write_bytes(s.as_mut_ptr(), 0, 1);
4816 s.assume_init()
4817 }
4818 }
4819}
4820#[repr(C)]
4821#[derive(Debug, Default, Copy, Clone, Hash, PartialOrd, Ord, PartialEq, Eq)]
4822pub struct D3D12_FEATURE_DATA_ARCHITECTURE {
4823 pub NodeIndex: UINT,
4824 pub TileBasedRenderer: BOOL,
4825 pub UMA: BOOL,
4826 pub CacheCoherentUMA: BOOL,
4827}
4828#[repr(C)]
4829#[derive(Debug, Default, Copy, Clone, Hash, PartialOrd, Ord, PartialEq, Eq)]
4830pub struct D3D12_FEATURE_DATA_ARCHITECTURE1 {
4831 pub NodeIndex: UINT,
4832 pub TileBasedRenderer: BOOL,
4833 pub UMA: BOOL,
4834 pub CacheCoherentUMA: BOOL,
4835 pub IsolatedMMU: BOOL,
4836}
4837#[repr(C)]
4838#[derive(Debug, Copy, Clone, Hash, PartialOrd, Ord, PartialEq, Eq)]
4839pub struct D3D12_FEATURE_DATA_FEATURE_LEVELS {
4840 pub NumFeatureLevels: UINT,
4841 pub pFeatureLevelsRequested: *const D3D_FEATURE_LEVEL,
4842 pub MaxSupportedFeatureLevel: D3D_FEATURE_LEVEL,
4843}
4844impl Default for D3D12_FEATURE_DATA_FEATURE_LEVELS {
4845 fn default() -> Self {
4846 let mut s = ::std::mem::MaybeUninit::<Self>::uninit();
4847 unsafe {
4848 ::std::ptr::write_bytes(s.as_mut_ptr(), 0, 1);
4849 s.assume_init()
4850 }
4851 }
4852}
4853pub const D3D_SHADER_MODEL_D3D_SHADER_MODEL_5_1: D3D_SHADER_MODEL = 81;
4854pub const D3D_SHADER_MODEL_D3D_SHADER_MODEL_6_0: D3D_SHADER_MODEL = 96;
4855pub const D3D_SHADER_MODEL_D3D_SHADER_MODEL_6_1: D3D_SHADER_MODEL = 97;
4856pub const D3D_SHADER_MODEL_D3D_SHADER_MODEL_6_2: D3D_SHADER_MODEL = 98;
4857pub const D3D_SHADER_MODEL_D3D_SHADER_MODEL_6_3: D3D_SHADER_MODEL = 99;
4858pub const D3D_SHADER_MODEL_D3D_SHADER_MODEL_6_4: D3D_SHADER_MODEL = 100;
4859pub const D3D_SHADER_MODEL_D3D_SHADER_MODEL_6_5: D3D_SHADER_MODEL = 101;
4860pub const D3D_SHADER_MODEL_D3D_SHADER_MODEL_6_6: D3D_SHADER_MODEL = 102;
4861pub const D3D_SHADER_MODEL_D3D_SHADER_MODEL_6_7: D3D_SHADER_MODEL = 103;
4862pub const D3D_SHADER_MODEL_D3D_HIGHEST_SHADER_MODEL: D3D_SHADER_MODEL = 103;
4863pub type D3D_SHADER_MODEL = ::std::os::raw::c_int;
4864#[repr(C)]
4865#[derive(Debug, Copy, Clone, Hash, PartialOrd, Ord, PartialEq, Eq)]
4866pub struct D3D12_FEATURE_DATA_SHADER_MODEL {
4867 pub HighestShaderModel: D3D_SHADER_MODEL,
4868}
4869impl Default for D3D12_FEATURE_DATA_SHADER_MODEL {
4870 fn default() -> Self {
4871 let mut s = ::std::mem::MaybeUninit::<Self>::uninit();
4872 unsafe {
4873 ::std::ptr::write_bytes(s.as_mut_ptr(), 0, 1);
4874 s.assume_init()
4875 }
4876 }
4877}
4878#[repr(C)]
4879#[derive(Debug, Copy, Clone, Hash, PartialOrd, Ord, PartialEq, Eq)]
4880pub struct D3D12_FEATURE_DATA_FORMAT_SUPPORT {
4881 pub Format: DXGI_FORMAT,
4882 pub Support1: D3D12_FORMAT_SUPPORT1,
4883 pub Support2: D3D12_FORMAT_SUPPORT2,
4884}
4885impl Default for D3D12_FEATURE_DATA_FORMAT_SUPPORT {
4886 fn default() -> Self {
4887 let mut s = ::std::mem::MaybeUninit::<Self>::uninit();
4888 unsafe {
4889 ::std::ptr::write_bytes(s.as_mut_ptr(), 0, 1);
4890 s.assume_init()
4891 }
4892 }
4893}
4894#[repr(C)]
4895#[derive(Debug, Copy, Clone, Hash, PartialOrd, Ord, PartialEq, Eq)]
4896pub struct D3D12_FEATURE_DATA_MULTISAMPLE_QUALITY_LEVELS {
4897 pub Format: DXGI_FORMAT,
4898 pub SampleCount: UINT,
4899 pub Flags: D3D12_MULTISAMPLE_QUALITY_LEVEL_FLAGS,
4900 pub NumQualityLevels: UINT,
4901}
4902impl Default for D3D12_FEATURE_DATA_MULTISAMPLE_QUALITY_LEVELS {
4903 fn default() -> Self {
4904 let mut s = ::std::mem::MaybeUninit::<Self>::uninit();
4905 unsafe {
4906 ::std::ptr::write_bytes(s.as_mut_ptr(), 0, 1);
4907 s.assume_init()
4908 }
4909 }
4910}
4911#[repr(C)]
4912#[derive(Debug, Copy, Clone, Hash, PartialOrd, Ord, PartialEq, Eq)]
4913pub struct D3D12_FEATURE_DATA_FORMAT_INFO {
4914 pub Format: DXGI_FORMAT,
4915 pub PlaneCount: UINT8,
4916}
4917impl Default for D3D12_FEATURE_DATA_FORMAT_INFO {
4918 fn default() -> Self {
4919 let mut s = ::std::mem::MaybeUninit::<Self>::uninit();
4920 unsafe {
4921 ::std::ptr::write_bytes(s.as_mut_ptr(), 0, 1);
4922 s.assume_init()
4923 }
4924 }
4925}
4926#[repr(C)]
4927#[derive(Debug, Default, Copy, Clone, Hash, PartialOrd, Ord, PartialEq, Eq)]
4928pub struct D3D12_FEATURE_DATA_GPU_VIRTUAL_ADDRESS_SUPPORT {
4929 pub MaxGPUVirtualAddressBitsPerResource: UINT,
4930 pub MaxGPUVirtualAddressBitsPerProcess: UINT,
4931}
4932pub const D3D12_SHADER_CACHE_SUPPORT_FLAGS_D3D12_SHADER_CACHE_SUPPORT_NONE:
4933 D3D12_SHADER_CACHE_SUPPORT_FLAGS = 0;
4934pub const D3D12_SHADER_CACHE_SUPPORT_FLAGS_D3D12_SHADER_CACHE_SUPPORT_SINGLE_PSO : D3D12_SHADER_CACHE_SUPPORT_FLAGS = 1 ;
4935pub const D3D12_SHADER_CACHE_SUPPORT_FLAGS_D3D12_SHADER_CACHE_SUPPORT_LIBRARY : D3D12_SHADER_CACHE_SUPPORT_FLAGS = 2 ;
4936pub const D3D12_SHADER_CACHE_SUPPORT_FLAGS_D3D12_SHADER_CACHE_SUPPORT_AUTOMATIC_INPROC_CACHE : D3D12_SHADER_CACHE_SUPPORT_FLAGS = 4 ;
4937pub const D3D12_SHADER_CACHE_SUPPORT_FLAGS_D3D12_SHADER_CACHE_SUPPORT_AUTOMATIC_DISK_CACHE : D3D12_SHADER_CACHE_SUPPORT_FLAGS = 8 ;
4938pub const D3D12_SHADER_CACHE_SUPPORT_FLAGS_D3D12_SHADER_CACHE_SUPPORT_DRIVER_MANAGED_CACHE : D3D12_SHADER_CACHE_SUPPORT_FLAGS = 16 ;
4939pub const D3D12_SHADER_CACHE_SUPPORT_FLAGS_D3D12_SHADER_CACHE_SUPPORT_SHADER_CONTROL_CLEAR : D3D12_SHADER_CACHE_SUPPORT_FLAGS = 32 ;
4940pub const D3D12_SHADER_CACHE_SUPPORT_FLAGS_D3D12_SHADER_CACHE_SUPPORT_SHADER_SESSION_DELETE : D3D12_SHADER_CACHE_SUPPORT_FLAGS = 64 ;
4941pub type D3D12_SHADER_CACHE_SUPPORT_FLAGS = ::std::os::raw::c_int;
4942#[repr(C)]
4943#[derive(Debug, Copy, Clone, Hash, PartialOrd, Ord, PartialEq, Eq)]
4944pub struct D3D12_FEATURE_DATA_SHADER_CACHE {
4945 pub SupportFlags: D3D12_SHADER_CACHE_SUPPORT_FLAGS,
4946}
4947impl Default for D3D12_FEATURE_DATA_SHADER_CACHE {
4948 fn default() -> Self {
4949 let mut s = ::std::mem::MaybeUninit::<Self>::uninit();
4950 unsafe {
4951 ::std::ptr::write_bytes(s.as_mut_ptr(), 0, 1);
4952 s.assume_init()
4953 }
4954 }
4955}
4956#[repr(C)]
4957#[derive(Debug, Copy, Clone, Hash, PartialOrd, Ord, PartialEq, Eq)]
4958pub struct D3D12_FEATURE_DATA_COMMAND_QUEUE_PRIORITY {
4959 pub CommandListType: D3D12_COMMAND_LIST_TYPE,
4960 pub Priority: UINT,
4961 pub PriorityForTypeIsSupported: BOOL,
4962}
4963impl Default for D3D12_FEATURE_DATA_COMMAND_QUEUE_PRIORITY {
4964 fn default() -> Self {
4965 let mut s = ::std::mem::MaybeUninit::<Self>::uninit();
4966 unsafe {
4967 ::std::ptr::write_bytes(s.as_mut_ptr(), 0, 1);
4968 s.assume_init()
4969 }
4970 }
4971}
4972pub const D3D12_COMMAND_LIST_SUPPORT_FLAGS_D3D12_COMMAND_LIST_SUPPORT_FLAG_NONE : D3D12_COMMAND_LIST_SUPPORT_FLAGS = 0 ;
4973pub const D3D12_COMMAND_LIST_SUPPORT_FLAGS_D3D12_COMMAND_LIST_SUPPORT_FLAG_DIRECT : D3D12_COMMAND_LIST_SUPPORT_FLAGS = 1 ;
4974pub const D3D12_COMMAND_LIST_SUPPORT_FLAGS_D3D12_COMMAND_LIST_SUPPORT_FLAG_BUNDLE : D3D12_COMMAND_LIST_SUPPORT_FLAGS = 2 ;
4975pub const D3D12_COMMAND_LIST_SUPPORT_FLAGS_D3D12_COMMAND_LIST_SUPPORT_FLAG_COMPUTE : D3D12_COMMAND_LIST_SUPPORT_FLAGS = 4 ;
4976pub const D3D12_COMMAND_LIST_SUPPORT_FLAGS_D3D12_COMMAND_LIST_SUPPORT_FLAG_COPY : D3D12_COMMAND_LIST_SUPPORT_FLAGS = 8 ;
4977pub const D3D12_COMMAND_LIST_SUPPORT_FLAGS_D3D12_COMMAND_LIST_SUPPORT_FLAG_VIDEO_DECODE : D3D12_COMMAND_LIST_SUPPORT_FLAGS = 16 ;
4978pub const D3D12_COMMAND_LIST_SUPPORT_FLAGS_D3D12_COMMAND_LIST_SUPPORT_FLAG_VIDEO_PROCESS : D3D12_COMMAND_LIST_SUPPORT_FLAGS = 32 ;
4979pub const D3D12_COMMAND_LIST_SUPPORT_FLAGS_D3D12_COMMAND_LIST_SUPPORT_FLAG_VIDEO_ENCODE : D3D12_COMMAND_LIST_SUPPORT_FLAGS = 64 ;
4980pub type D3D12_COMMAND_LIST_SUPPORT_FLAGS = ::std::os::raw::c_int;
4981#[repr(C)]
4982#[derive(Debug, Copy, Clone, Hash, PartialOrd, Ord, PartialEq, Eq)]
4983pub struct D3D12_FEATURE_DATA_D3D12_OPTIONS3 {
4984 pub CopyQueueTimestampQueriesSupported: BOOL,
4985 pub CastingFullyTypedFormatSupported: BOOL,
4986 pub WriteBufferImmediateSupportFlags: D3D12_COMMAND_LIST_SUPPORT_FLAGS,
4987 pub ViewInstancingTier: D3D12_VIEW_INSTANCING_TIER,
4988 pub BarycentricsSupported: BOOL,
4989}
4990impl Default for D3D12_FEATURE_DATA_D3D12_OPTIONS3 {
4991 fn default() -> Self {
4992 let mut s = ::std::mem::MaybeUninit::<Self>::uninit();
4993 unsafe {
4994 ::std::ptr::write_bytes(s.as_mut_ptr(), 0, 1);
4995 s.assume_init()
4996 }
4997 }
4998}
4999#[repr(C)]
5000#[derive(Debug, Default, Copy, Clone, Hash, PartialOrd, Ord, PartialEq, Eq)]
5001pub struct D3D12_FEATURE_DATA_EXISTING_HEAPS {
5002 pub Supported: BOOL,
5003}
5004pub const D3D12_SHARED_RESOURCE_COMPATIBILITY_TIER_D3D12_SHARED_RESOURCE_COMPATIBILITY_TIER_0 : D3D12_SHARED_RESOURCE_COMPATIBILITY_TIER = 0 ;
5005pub const D3D12_SHARED_RESOURCE_COMPATIBILITY_TIER_D3D12_SHARED_RESOURCE_COMPATIBILITY_TIER_1 : D3D12_SHARED_RESOURCE_COMPATIBILITY_TIER = 1 ;
5006pub const D3D12_SHARED_RESOURCE_COMPATIBILITY_TIER_D3D12_SHARED_RESOURCE_COMPATIBILITY_TIER_2 : D3D12_SHARED_RESOURCE_COMPATIBILITY_TIER = 2 ;
5007pub type D3D12_SHARED_RESOURCE_COMPATIBILITY_TIER = ::std::os::raw::c_int;
5008#[repr(C)]
5009#[derive(Debug, Copy, Clone, Hash, PartialOrd, Ord, PartialEq, Eq)]
5010pub struct D3D12_FEATURE_DATA_DISPLAYABLE {
5011 pub DisplayableTexture: BOOL,
5012 pub SharedResourceCompatibilityTier:
5013 D3D12_SHARED_RESOURCE_COMPATIBILITY_TIER,
5014}
5015impl Default for D3D12_FEATURE_DATA_DISPLAYABLE {
5016 fn default() -> Self {
5017 let mut s = ::std::mem::MaybeUninit::<Self>::uninit();
5018 unsafe {
5019 ::std::ptr::write_bytes(s.as_mut_ptr(), 0, 1);
5020 s.assume_init()
5021 }
5022 }
5023}
5024#[repr(C)]
5025#[derive(Debug, Copy, Clone, Hash, PartialOrd, Ord, PartialEq, Eq)]
5026pub struct D3D12_FEATURE_DATA_D3D12_OPTIONS4 {
5027 pub MSAA64KBAlignedTextureSupported: BOOL,
5028 pub SharedResourceCompatibilityTier:
5029 D3D12_SHARED_RESOURCE_COMPATIBILITY_TIER,
5030 pub Native16BitShaderOpsSupported: BOOL,
5031}
5032impl Default for D3D12_FEATURE_DATA_D3D12_OPTIONS4 {
5033 fn default() -> Self {
5034 let mut s = ::std::mem::MaybeUninit::<Self>::uninit();
5035 unsafe {
5036 ::std::ptr::write_bytes(s.as_mut_ptr(), 0, 1);
5037 s.assume_init()
5038 }
5039 }
5040}
5041pub const D3D12_HEAP_SERIALIZATION_TIER_D3D12_HEAP_SERIALIZATION_TIER_0:
5042 D3D12_HEAP_SERIALIZATION_TIER = 0;
5043pub const D3D12_HEAP_SERIALIZATION_TIER_D3D12_HEAP_SERIALIZATION_TIER_10:
5044 D3D12_HEAP_SERIALIZATION_TIER = 10;
5045pub type D3D12_HEAP_SERIALIZATION_TIER = ::std::os::raw::c_int;
5046#[repr(C)]
5047#[derive(Debug, Copy, Clone, Hash, PartialOrd, Ord, PartialEq, Eq)]
5048pub struct D3D12_FEATURE_DATA_SERIALIZATION {
5049 pub NodeIndex: UINT,
5050 pub HeapSerializationTier: D3D12_HEAP_SERIALIZATION_TIER,
5051}
5052impl Default for D3D12_FEATURE_DATA_SERIALIZATION {
5053 fn default() -> Self {
5054 let mut s = ::std::mem::MaybeUninit::<Self>::uninit();
5055 unsafe {
5056 ::std::ptr::write_bytes(s.as_mut_ptr(), 0, 1);
5057 s.assume_init()
5058 }
5059 }
5060}
5061#[repr(C)]
5062#[derive(Debug, Copy, Clone, Hash, PartialOrd, Ord, PartialEq, Eq)]
5063pub struct D3D12_FEATURE_DATA_CROSS_NODE {
5064 pub SharingTier: D3D12_CROSS_NODE_SHARING_TIER,
5065 pub AtomicShaderInstructions: BOOL,
5066}
5067impl Default for D3D12_FEATURE_DATA_CROSS_NODE {
5068 fn default() -> Self {
5069 let mut s = ::std::mem::MaybeUninit::<Self>::uninit();
5070 unsafe {
5071 ::std::ptr::write_bytes(s.as_mut_ptr(), 0, 1);
5072 s.assume_init()
5073 }
5074 }
5075}
5076pub const D3D12_RENDER_PASS_TIER_D3D12_RENDER_PASS_TIER_0:
5077 D3D12_RENDER_PASS_TIER = 0;
5078pub const D3D12_RENDER_PASS_TIER_D3D12_RENDER_PASS_TIER_1:
5079 D3D12_RENDER_PASS_TIER = 1;
5080pub const D3D12_RENDER_PASS_TIER_D3D12_RENDER_PASS_TIER_2:
5081 D3D12_RENDER_PASS_TIER = 2;
5082pub type D3D12_RENDER_PASS_TIER = ::std::os::raw::c_int;
5083pub const D3D12_RAYTRACING_TIER_D3D12_RAYTRACING_TIER_NOT_SUPPORTED:
5084 D3D12_RAYTRACING_TIER = 0;
5085pub const D3D12_RAYTRACING_TIER_D3D12_RAYTRACING_TIER_1_0:
5086 D3D12_RAYTRACING_TIER = 10;
5087pub const D3D12_RAYTRACING_TIER_D3D12_RAYTRACING_TIER_1_1:
5088 D3D12_RAYTRACING_TIER = 11;
5089pub type D3D12_RAYTRACING_TIER = ::std::os::raw::c_int;
5090#[repr(C)]
5091#[derive(Debug, Copy, Clone, Hash, PartialOrd, Ord, PartialEq, Eq)]
5092pub struct D3D12_FEATURE_DATA_D3D12_OPTIONS5 {
5093 pub SRVOnlyTiledResourceTier3: BOOL,
5094 pub RenderPassesTier: D3D12_RENDER_PASS_TIER,
5095 pub RaytracingTier: D3D12_RAYTRACING_TIER,
5096}
5097impl Default for D3D12_FEATURE_DATA_D3D12_OPTIONS5 {
5098 fn default() -> Self {
5099 let mut s = ::std::mem::MaybeUninit::<Self>::uninit();
5100 unsafe {
5101 ::std::ptr::write_bytes(s.as_mut_ptr(), 0, 1);
5102 s.assume_init()
5103 }
5104 }
5105}
5106pub const D3D12_VARIABLE_SHADING_RATE_TIER_D3D12_VARIABLE_SHADING_RATE_TIER_NOT_SUPPORTED : D3D12_VARIABLE_SHADING_RATE_TIER = 0 ;
5107pub const D3D12_VARIABLE_SHADING_RATE_TIER_D3D12_VARIABLE_SHADING_RATE_TIER_1 : D3D12_VARIABLE_SHADING_RATE_TIER = 1 ;
5108pub const D3D12_VARIABLE_SHADING_RATE_TIER_D3D12_VARIABLE_SHADING_RATE_TIER_2 : D3D12_VARIABLE_SHADING_RATE_TIER = 2 ;
5109pub type D3D12_VARIABLE_SHADING_RATE_TIER = ::std::os::raw::c_int;
5110#[repr(C)]
5111#[derive(Debug, Copy, Clone, Hash, PartialOrd, Ord, PartialEq, Eq)]
5112pub struct D3D12_FEATURE_DATA_D3D12_OPTIONS6 {
5113 pub AdditionalShadingRatesSupported: BOOL,
5114 pub PerPrimitiveShadingRateSupportedWithViewportIndexing: BOOL,
5115 pub VariableShadingRateTier: D3D12_VARIABLE_SHADING_RATE_TIER,
5116 pub ShadingRateImageTileSize: UINT,
5117 pub BackgroundProcessingSupported: BOOL,
5118}
5119impl Default for D3D12_FEATURE_DATA_D3D12_OPTIONS6 {
5120 fn default() -> Self {
5121 let mut s = ::std::mem::MaybeUninit::<Self>::uninit();
5122 unsafe {
5123 ::std::ptr::write_bytes(s.as_mut_ptr(), 0, 1);
5124 s.assume_init()
5125 }
5126 }
5127}
5128pub const D3D12_MESH_SHADER_TIER_D3D12_MESH_SHADER_TIER_NOT_SUPPORTED:
5129 D3D12_MESH_SHADER_TIER = 0;
5130pub const D3D12_MESH_SHADER_TIER_D3D12_MESH_SHADER_TIER_1:
5131 D3D12_MESH_SHADER_TIER = 10;
5132pub type D3D12_MESH_SHADER_TIER = ::std::os::raw::c_int;
5133pub const D3D12_SAMPLER_FEEDBACK_TIER_D3D12_SAMPLER_FEEDBACK_TIER_NOT_SUPPORTED : D3D12_SAMPLER_FEEDBACK_TIER = 0 ;
5134pub const D3D12_SAMPLER_FEEDBACK_TIER_D3D12_SAMPLER_FEEDBACK_TIER_0_9:
5135 D3D12_SAMPLER_FEEDBACK_TIER = 90;
5136pub const D3D12_SAMPLER_FEEDBACK_TIER_D3D12_SAMPLER_FEEDBACK_TIER_1_0:
5137 D3D12_SAMPLER_FEEDBACK_TIER = 100;
5138pub type D3D12_SAMPLER_FEEDBACK_TIER = ::std::os::raw::c_int;
5139#[repr(C)]
5140#[derive(Debug, Copy, Clone, Hash, PartialOrd, Ord, PartialEq, Eq)]
5141pub struct D3D12_FEATURE_DATA_D3D12_OPTIONS7 {
5142 pub MeshShaderTier: D3D12_MESH_SHADER_TIER,
5143 pub SamplerFeedbackTier: D3D12_SAMPLER_FEEDBACK_TIER,
5144}
5145impl Default for D3D12_FEATURE_DATA_D3D12_OPTIONS7 {
5146 fn default() -> Self {
5147 let mut s = ::std::mem::MaybeUninit::<Self>::uninit();
5148 unsafe {
5149 ::std::ptr::write_bytes(s.as_mut_ptr(), 0, 1);
5150 s.assume_init()
5151 }
5152 }
5153}
5154#[repr(C)]
5155#[derive(Debug, Copy, Clone, Hash, PartialOrd, Ord, PartialEq, Eq)]
5156pub struct D3D12_FEATURE_DATA_QUERY_META_COMMAND {
5157 pub CommandId: GUID,
5158 pub NodeMask: UINT,
5159 pub pQueryInputData: *const ::std::os::raw::c_void,
5160 pub QueryInputDataSizeInBytes: SIZE_T,
5161 pub pQueryOutputData: *mut ::std::os::raw::c_void,
5162 pub QueryOutputDataSizeInBytes: SIZE_T,
5163}
5164impl Default for D3D12_FEATURE_DATA_QUERY_META_COMMAND {
5165 fn default() -> Self {
5166 let mut s = ::std::mem::MaybeUninit::<Self>::uninit();
5167 unsafe {
5168 ::std::ptr::write_bytes(s.as_mut_ptr(), 0, 1);
5169 s.assume_init()
5170 }
5171 }
5172}
5173#[repr(C)]
5174#[derive(Debug, Default, Copy, Clone, Hash, PartialOrd, Ord, PartialEq, Eq)]
5175pub struct D3D12_FEATURE_DATA_D3D12_OPTIONS8 {
5176 pub UnalignedBlockTexturesSupported: BOOL,
5177}
5178pub const D3D12_WAVE_MMA_TIER_D3D12_WAVE_MMA_TIER_NOT_SUPPORTED:
5179 D3D12_WAVE_MMA_TIER = 0;
5180pub const D3D12_WAVE_MMA_TIER_D3D12_WAVE_MMA_TIER_1_0: D3D12_WAVE_MMA_TIER = 10;
5181pub type D3D12_WAVE_MMA_TIER = ::std::os::raw::c_int;
5182#[repr(C)]
5183#[derive(Debug, Copy, Clone, Hash, PartialOrd, Ord, PartialEq, Eq)]
5184pub struct D3D12_FEATURE_DATA_D3D12_OPTIONS9 {
5185 pub MeshShaderPipelineStatsSupported: BOOL,
5186 pub MeshShaderSupportsFullRangeRenderTargetArrayIndex: BOOL,
5187 pub AtomicInt64OnTypedResourceSupported: BOOL,
5188 pub AtomicInt64OnGroupSharedSupported: BOOL,
5189 pub DerivativesInMeshAndAmplificationShadersSupported: BOOL,
5190 pub WaveMMATier: D3D12_WAVE_MMA_TIER,
5191}
5192impl Default for D3D12_FEATURE_DATA_D3D12_OPTIONS9 {
5193 fn default() -> Self {
5194 let mut s = ::std::mem::MaybeUninit::<Self>::uninit();
5195 unsafe {
5196 ::std::ptr::write_bytes(s.as_mut_ptr(), 0, 1);
5197 s.assume_init()
5198 }
5199 }
5200}
5201#[repr(C)]
5202#[derive(Debug, Default, Copy, Clone, Hash, PartialOrd, Ord, PartialEq, Eq)]
5203pub struct D3D12_FEATURE_DATA_D3D12_OPTIONS10 {
5204 pub VariableRateShadingSumCombinerSupported: BOOL,
5205 pub MeshShaderPerPrimitiveShadingRateSupported: BOOL,
5206}
5207#[repr(C)]
5208#[derive(Debug, Default, Copy, Clone, Hash, PartialOrd, Ord, PartialEq, Eq)]
5209pub struct D3D12_FEATURE_DATA_D3D12_OPTIONS11 {
5210 pub AtomicInt64OnDescriptorHeapResourceSupported: BOOL,
5211}
5212pub const D3D12_TRI_STATE_D3D12_TRI_STATE_UNKNOWN: D3D12_TRI_STATE = -1;
5213pub const D3D12_TRI_STATE_D3D12_TRI_STATE_FALSE: D3D12_TRI_STATE = 0;
5214pub const D3D12_TRI_STATE_D3D12_TRI_STATE_TRUE: D3D12_TRI_STATE = 1;
5215pub type D3D12_TRI_STATE = ::std::os::raw::c_int;
5216#[repr(C)]
5217#[derive(Debug, Copy, Clone, Hash, PartialOrd, Ord, PartialEq, Eq)]
5218pub struct D3D12_FEATURE_DATA_D3D12_OPTIONS12 {
5219 pub MSPrimitivesPipelineStatisticIncludesCulledPrimitives: D3D12_TRI_STATE,
5220 pub EnhancedBarriersSupported: BOOL,
5221 pub RelaxedFormatCastingSupported: BOOL,
5222}
5223impl Default for D3D12_FEATURE_DATA_D3D12_OPTIONS12 {
5224 fn default() -> Self {
5225 let mut s = ::std::mem::MaybeUninit::<Self>::uninit();
5226 unsafe {
5227 ::std::ptr::write_bytes(s.as_mut_ptr(), 0, 1);
5228 s.assume_init()
5229 }
5230 }
5231}
5232#[repr(C)]
5233#[derive(Debug, Default, Copy, Clone, Hash, PartialOrd, Ord, PartialEq, Eq)]
5234pub struct D3D12_RESOURCE_ALLOCATION_INFO {
5235 pub SizeInBytes: UINT64,
5236 pub Alignment: UINT64,
5237}
5238#[repr(C)]
5239#[derive(Debug, Default, Copy, Clone, Hash, PartialOrd, Ord, PartialEq, Eq)]
5240pub struct D3D12_RESOURCE_ALLOCATION_INFO1 {
5241 pub Offset: UINT64,
5242 pub Alignment: UINT64,
5243 pub SizeInBytes: UINT64,
5244}
5245pub const D3D12_HEAP_TYPE_D3D12_HEAP_TYPE_DEFAULT: D3D12_HEAP_TYPE = 1;
5246pub const D3D12_HEAP_TYPE_D3D12_HEAP_TYPE_UPLOAD: D3D12_HEAP_TYPE = 2;
5247pub const D3D12_HEAP_TYPE_D3D12_HEAP_TYPE_READBACK: D3D12_HEAP_TYPE = 3;
5248pub const D3D12_HEAP_TYPE_D3D12_HEAP_TYPE_CUSTOM: D3D12_HEAP_TYPE = 4;
5249pub type D3D12_HEAP_TYPE = ::std::os::raw::c_int;
5250pub const D3D12_CPU_PAGE_PROPERTY_D3D12_CPU_PAGE_PROPERTY_UNKNOWN:
5251 D3D12_CPU_PAGE_PROPERTY = 0;
5252pub const D3D12_CPU_PAGE_PROPERTY_D3D12_CPU_PAGE_PROPERTY_NOT_AVAILABLE:
5253 D3D12_CPU_PAGE_PROPERTY = 1;
5254pub const D3D12_CPU_PAGE_PROPERTY_D3D12_CPU_PAGE_PROPERTY_WRITE_COMBINE:
5255 D3D12_CPU_PAGE_PROPERTY = 2;
5256pub const D3D12_CPU_PAGE_PROPERTY_D3D12_CPU_PAGE_PROPERTY_WRITE_BACK:
5257 D3D12_CPU_PAGE_PROPERTY = 3;
5258pub type D3D12_CPU_PAGE_PROPERTY = ::std::os::raw::c_int;
5259pub const D3D12_MEMORY_POOL_D3D12_MEMORY_POOL_UNKNOWN: D3D12_MEMORY_POOL = 0;
5260pub const D3D12_MEMORY_POOL_D3D12_MEMORY_POOL_L0: D3D12_MEMORY_POOL = 1;
5261pub const D3D12_MEMORY_POOL_D3D12_MEMORY_POOL_L1: D3D12_MEMORY_POOL = 2;
5262pub type D3D12_MEMORY_POOL = ::std::os::raw::c_int;
5263#[repr(C)]
5264#[derive(Debug, Copy, Clone, Hash, PartialOrd, Ord, PartialEq, Eq)]
5265pub struct D3D12_HEAP_PROPERTIES {
5266 pub Type: D3D12_HEAP_TYPE,
5267 pub CPUPageProperty: D3D12_CPU_PAGE_PROPERTY,
5268 pub MemoryPoolPreference: D3D12_MEMORY_POOL,
5269 pub CreationNodeMask: UINT,
5270 pub VisibleNodeMask: UINT,
5271}
5272impl Default for D3D12_HEAP_PROPERTIES {
5273 fn default() -> Self {
5274 let mut s = ::std::mem::MaybeUninit::<Self>::uninit();
5275 unsafe {
5276 ::std::ptr::write_bytes(s.as_mut_ptr(), 0, 1);
5277 s.assume_init()
5278 }
5279 }
5280}
5281pub const D3D12_HEAP_FLAGS_D3D12_HEAP_FLAG_NONE: D3D12_HEAP_FLAGS = 0;
5282pub const D3D12_HEAP_FLAGS_D3D12_HEAP_FLAG_SHARED: D3D12_HEAP_FLAGS = 1;
5283pub const D3D12_HEAP_FLAGS_D3D12_HEAP_FLAG_DENY_BUFFERS: D3D12_HEAP_FLAGS = 4;
5284pub const D3D12_HEAP_FLAGS_D3D12_HEAP_FLAG_ALLOW_DISPLAY: D3D12_HEAP_FLAGS = 8;
5285pub const D3D12_HEAP_FLAGS_D3D12_HEAP_FLAG_SHARED_CROSS_ADAPTER:
5286 D3D12_HEAP_FLAGS = 32;
5287pub const D3D12_HEAP_FLAGS_D3D12_HEAP_FLAG_DENY_RT_DS_TEXTURES:
5288 D3D12_HEAP_FLAGS = 64;
5289pub const D3D12_HEAP_FLAGS_D3D12_HEAP_FLAG_DENY_NON_RT_DS_TEXTURES:
5290 D3D12_HEAP_FLAGS = 128;
5291pub const D3D12_HEAP_FLAGS_D3D12_HEAP_FLAG_HARDWARE_PROTECTED:
5292 D3D12_HEAP_FLAGS = 256;
5293pub const D3D12_HEAP_FLAGS_D3D12_HEAP_FLAG_ALLOW_WRITE_WATCH: D3D12_HEAP_FLAGS =
5294 512;
5295pub const D3D12_HEAP_FLAGS_D3D12_HEAP_FLAG_ALLOW_SHADER_ATOMICS:
5296 D3D12_HEAP_FLAGS = 1024;
5297pub const D3D12_HEAP_FLAGS_D3D12_HEAP_FLAG_CREATE_NOT_RESIDENT:
5298 D3D12_HEAP_FLAGS = 2048;
5299pub const D3D12_HEAP_FLAGS_D3D12_HEAP_FLAG_CREATE_NOT_ZEROED: D3D12_HEAP_FLAGS =
5300 4096;
5301pub const D3D12_HEAP_FLAGS_D3D12_HEAP_FLAG_ALLOW_ALL_BUFFERS_AND_TEXTURES:
5302 D3D12_HEAP_FLAGS = 0;
5303pub const D3D12_HEAP_FLAGS_D3D12_HEAP_FLAG_ALLOW_ONLY_BUFFERS:
5304 D3D12_HEAP_FLAGS = 192;
5305pub const D3D12_HEAP_FLAGS_D3D12_HEAP_FLAG_ALLOW_ONLY_NON_RT_DS_TEXTURES:
5306 D3D12_HEAP_FLAGS = 68;
5307pub const D3D12_HEAP_FLAGS_D3D12_HEAP_FLAG_ALLOW_ONLY_RT_DS_TEXTURES:
5308 D3D12_HEAP_FLAGS = 132;
5309pub type D3D12_HEAP_FLAGS = ::std::os::raw::c_int;
5310#[repr(C)]
5311#[derive(Debug, Copy, Clone, Hash, PartialOrd, Ord, PartialEq, Eq)]
5312pub struct D3D12_HEAP_DESC {
5313 pub SizeInBytes: UINT64,
5314 pub Properties: D3D12_HEAP_PROPERTIES,
5315 pub Alignment: UINT64,
5316 pub Flags: D3D12_HEAP_FLAGS,
5317}
5318impl Default for D3D12_HEAP_DESC {
5319 fn default() -> Self {
5320 let mut s = ::std::mem::MaybeUninit::<Self>::uninit();
5321 unsafe {
5322 ::std::ptr::write_bytes(s.as_mut_ptr(), 0, 1);
5323 s.assume_init()
5324 }
5325 }
5326}
5327pub const D3D12_RESOURCE_DIMENSION_D3D12_RESOURCE_DIMENSION_UNKNOWN:
5328 D3D12_RESOURCE_DIMENSION = 0;
5329pub const D3D12_RESOURCE_DIMENSION_D3D12_RESOURCE_DIMENSION_BUFFER:
5330 D3D12_RESOURCE_DIMENSION = 1;
5331pub const D3D12_RESOURCE_DIMENSION_D3D12_RESOURCE_DIMENSION_TEXTURE1D:
5332 D3D12_RESOURCE_DIMENSION = 2;
5333pub const D3D12_RESOURCE_DIMENSION_D3D12_RESOURCE_DIMENSION_TEXTURE2D:
5334 D3D12_RESOURCE_DIMENSION = 3;
5335pub const D3D12_RESOURCE_DIMENSION_D3D12_RESOURCE_DIMENSION_TEXTURE3D:
5336 D3D12_RESOURCE_DIMENSION = 4;
5337pub type D3D12_RESOURCE_DIMENSION = ::std::os::raw::c_int;
5338pub const D3D12_TEXTURE_LAYOUT_D3D12_TEXTURE_LAYOUT_UNKNOWN:
5339 D3D12_TEXTURE_LAYOUT = 0;
5340pub const D3D12_TEXTURE_LAYOUT_D3D12_TEXTURE_LAYOUT_ROW_MAJOR:
5341 D3D12_TEXTURE_LAYOUT = 1;
5342pub const D3D12_TEXTURE_LAYOUT_D3D12_TEXTURE_LAYOUT_64KB_UNDEFINED_SWIZZLE:
5343 D3D12_TEXTURE_LAYOUT = 2;
5344pub const D3D12_TEXTURE_LAYOUT_D3D12_TEXTURE_LAYOUT_64KB_STANDARD_SWIZZLE:
5345 D3D12_TEXTURE_LAYOUT = 3;
5346pub type D3D12_TEXTURE_LAYOUT = ::std::os::raw::c_int;
5347pub const D3D12_RESOURCE_FLAGS_D3D12_RESOURCE_FLAG_NONE: D3D12_RESOURCE_FLAGS =
5348 0;
5349pub const D3D12_RESOURCE_FLAGS_D3D12_RESOURCE_FLAG_ALLOW_RENDER_TARGET:
5350 D3D12_RESOURCE_FLAGS = 1;
5351pub const D3D12_RESOURCE_FLAGS_D3D12_RESOURCE_FLAG_ALLOW_DEPTH_STENCIL:
5352 D3D12_RESOURCE_FLAGS = 2;
5353pub const D3D12_RESOURCE_FLAGS_D3D12_RESOURCE_FLAG_ALLOW_UNORDERED_ACCESS:
5354 D3D12_RESOURCE_FLAGS = 4;
5355pub const D3D12_RESOURCE_FLAGS_D3D12_RESOURCE_FLAG_DENY_SHADER_RESOURCE:
5356 D3D12_RESOURCE_FLAGS = 8;
5357pub const D3D12_RESOURCE_FLAGS_D3D12_RESOURCE_FLAG_ALLOW_CROSS_ADAPTER:
5358 D3D12_RESOURCE_FLAGS = 16;
5359pub const D3D12_RESOURCE_FLAGS_D3D12_RESOURCE_FLAG_ALLOW_SIMULTANEOUS_ACCESS:
5360 D3D12_RESOURCE_FLAGS = 32;
5361pub const D3D12_RESOURCE_FLAGS_D3D12_RESOURCE_FLAG_VIDEO_DECODE_REFERENCE_ONLY : D3D12_RESOURCE_FLAGS = 64 ;
5362pub const D3D12_RESOURCE_FLAGS_D3D12_RESOURCE_FLAG_VIDEO_ENCODE_REFERENCE_ONLY : D3D12_RESOURCE_FLAGS = 128 ;
5363pub const D3D12_RESOURCE_FLAGS_D3D12_RESOURCE_FLAG_RAYTRACING_ACCELERATION_STRUCTURE : D3D12_RESOURCE_FLAGS = 256 ;
5364pub type D3D12_RESOURCE_FLAGS = ::std::os::raw::c_int;
5365#[repr(C)]
5366#[derive(Debug, Default, Copy, Clone, Hash, PartialOrd, Ord, PartialEq, Eq)]
5367pub struct D3D12_MIP_REGION {
5368 pub Width: UINT,
5369 pub Height: UINT,
5370 pub Depth: UINT,
5371}
5372#[repr(C)]
5373#[derive(Debug, Copy, Clone, Hash, PartialOrd, Ord, PartialEq, Eq)]
5374pub struct D3D12_RESOURCE_DESC {
5375 pub Dimension: D3D12_RESOURCE_DIMENSION,
5376 pub Alignment: UINT64,
5377 pub Width: UINT64,
5378 pub Height: UINT,
5379 pub DepthOrArraySize: UINT16,
5380 pub MipLevels: UINT16,
5381 pub Format: DXGI_FORMAT,
5382 pub SampleDesc: DXGI_SAMPLE_DESC,
5383 pub Layout: D3D12_TEXTURE_LAYOUT,
5384 pub Flags: D3D12_RESOURCE_FLAGS,
5385}
5386impl Default for D3D12_RESOURCE_DESC {
5387 fn default() -> Self {
5388 let mut s = ::std::mem::MaybeUninit::<Self>::uninit();
5389 unsafe {
5390 ::std::ptr::write_bytes(s.as_mut_ptr(), 0, 1);
5391 s.assume_init()
5392 }
5393 }
5394}
5395#[repr(C)]
5396#[derive(Debug, Copy, Clone, Hash, PartialOrd, Ord, PartialEq, Eq)]
5397pub struct D3D12_RESOURCE_DESC1 {
5398 pub Dimension: D3D12_RESOURCE_DIMENSION,
5399 pub Alignment: UINT64,
5400 pub Width: UINT64,
5401 pub Height: UINT,
5402 pub DepthOrArraySize: UINT16,
5403 pub MipLevels: UINT16,
5404 pub Format: DXGI_FORMAT,
5405 pub SampleDesc: DXGI_SAMPLE_DESC,
5406 pub Layout: D3D12_TEXTURE_LAYOUT,
5407 pub Flags: D3D12_RESOURCE_FLAGS,
5408 pub SamplerFeedbackMipRegion: D3D12_MIP_REGION,
5409}
5410impl Default for D3D12_RESOURCE_DESC1 {
5411 fn default() -> Self {
5412 let mut s = ::std::mem::MaybeUninit::<Self>::uninit();
5413 unsafe {
5414 ::std::ptr::write_bytes(s.as_mut_ptr(), 0, 1);
5415 s.assume_init()
5416 }
5417 }
5418}
5419#[repr(C)]
5420#[derive(Debug, Default, Copy, Clone, PartialOrd, PartialEq)]
5421pub struct D3D12_DEPTH_STENCIL_VALUE {
5422 pub Depth: FLOAT,
5423 pub Stencil: UINT8,
5424}
5425#[repr(C)]
5426#[derive(Copy, Clone)]
5427pub struct D3D12_CLEAR_VALUE {
5428 pub Format: DXGI_FORMAT,
5429 pub __bindgen_anon_1: D3D12_CLEAR_VALUE__bindgen_ty_1,
5430}
5431#[repr(C)]
5432#[derive(Copy, Clone)]
5433pub union D3D12_CLEAR_VALUE__bindgen_ty_1 {
5434 pub Color: [FLOAT; 4usize],
5435 pub DepthStencil: D3D12_DEPTH_STENCIL_VALUE,
5436}
5437impl Default for D3D12_CLEAR_VALUE__bindgen_ty_1 {
5438 fn default() -> Self {
5439 let mut s = ::std::mem::MaybeUninit::<Self>::uninit();
5440 unsafe {
5441 ::std::ptr::write_bytes(s.as_mut_ptr(), 0, 1);
5442 s.assume_init()
5443 }
5444 }
5445}
5446impl ::std::fmt::Debug for D3D12_CLEAR_VALUE__bindgen_ty_1 {
5447 fn fmt(&self, f: &mut ::std::fmt::Formatter<'_>) -> ::std::fmt::Result {
5448 write!(f, "D3D12_CLEAR_VALUE__bindgen_ty_1 {{ union }}")
5449 }
5450}
5451impl Default for D3D12_CLEAR_VALUE {
5452 fn default() -> Self {
5453 let mut s = ::std::mem::MaybeUninit::<Self>::uninit();
5454 unsafe {
5455 ::std::ptr::write_bytes(s.as_mut_ptr(), 0, 1);
5456 s.assume_init()
5457 }
5458 }
5459}
5460impl ::std::fmt::Debug for D3D12_CLEAR_VALUE {
5461 fn fmt(&self, f: &mut ::std::fmt::Formatter<'_>) -> ::std::fmt::Result {
5462 write!(
5463 f,
5464 "D3D12_CLEAR_VALUE {{ Format: {:?}, __bindgen_anon_1: {:?} }}",
5465 self.Format, self.__bindgen_anon_1
5466 )
5467 }
5468}
5469#[repr(C)]
5470#[derive(Debug, Default, Copy, Clone, Hash, PartialOrd, Ord, PartialEq, Eq)]
5471pub struct D3D12_RANGE {
5472 pub Begin: SIZE_T,
5473 pub End: SIZE_T,
5474}
5475#[repr(C)]
5476#[derive(Debug, Default, Copy, Clone, Hash, PartialOrd, Ord, PartialEq, Eq)]
5477pub struct D3D12_RANGE_UINT64 {
5478 pub Begin: UINT64,
5479 pub End: UINT64,
5480}
5481#[repr(C)]
5482#[derive(Debug, Default, Copy, Clone, Hash, PartialOrd, Ord, PartialEq, Eq)]
5483pub struct D3D12_SUBRESOURCE_RANGE_UINT64 {
5484 pub Subresource: UINT,
5485 pub Range: D3D12_RANGE_UINT64,
5486}
5487#[repr(C)]
5488#[derive(Debug, Default, Copy, Clone, Hash, PartialOrd, Ord, PartialEq, Eq)]
5489pub struct D3D12_SUBRESOURCE_INFO {
5490 pub Offset: UINT64,
5491 pub RowPitch: UINT,
5492 pub DepthPitch: UINT,
5493}
5494#[repr(C)]
5495#[derive(Debug, Default, Copy, Clone, Hash, PartialOrd, Ord, PartialEq, Eq)]
5496pub struct D3D12_TILED_RESOURCE_COORDINATE {
5497 pub X: UINT,
5498 pub Y: UINT,
5499 pub Z: UINT,
5500 pub Subresource: UINT,
5501}
5502#[repr(C)]
5503#[derive(Debug, Default, Copy, Clone, Hash, PartialOrd, Ord, PartialEq, Eq)]
5504pub struct D3D12_TILE_REGION_SIZE {
5505 pub NumTiles: UINT,
5506 pub UseBox: BOOL,
5507 pub Width: UINT,
5508 pub Height: UINT16,
5509 pub Depth: UINT16,
5510}
5511pub const D3D12_TILE_RANGE_FLAGS_D3D12_TILE_RANGE_FLAG_NONE:
5512 D3D12_TILE_RANGE_FLAGS = 0;
5513pub const D3D12_TILE_RANGE_FLAGS_D3D12_TILE_RANGE_FLAG_NULL:
5514 D3D12_TILE_RANGE_FLAGS = 1;
5515pub const D3D12_TILE_RANGE_FLAGS_D3D12_TILE_RANGE_FLAG_SKIP:
5516 D3D12_TILE_RANGE_FLAGS = 2;
5517pub const D3D12_TILE_RANGE_FLAGS_D3D12_TILE_RANGE_FLAG_REUSE_SINGLE_TILE:
5518 D3D12_TILE_RANGE_FLAGS = 4;
5519pub type D3D12_TILE_RANGE_FLAGS = ::std::os::raw::c_int;
5520#[repr(C)]
5521#[derive(Debug, Default, Copy, Clone, Hash, PartialOrd, Ord, PartialEq, Eq)]
5522pub struct D3D12_SUBRESOURCE_TILING {
5523 pub WidthInTiles: UINT,
5524 pub HeightInTiles: UINT16,
5525 pub DepthInTiles: UINT16,
5526 pub StartTileIndexInOverallResource: UINT,
5527}
5528#[repr(C)]
5529#[derive(Debug, Default, Copy, Clone, Hash, PartialOrd, Ord, PartialEq, Eq)]
5530pub struct D3D12_TILE_SHAPE {
5531 pub WidthInTexels: UINT,
5532 pub HeightInTexels: UINT,
5533 pub DepthInTexels: UINT,
5534}
5535#[repr(C)]
5536#[derive(Debug, Default, Copy, Clone, Hash, PartialOrd, Ord, PartialEq, Eq)]
5537pub struct D3D12_PACKED_MIP_INFO {
5538 pub NumStandardMips: UINT8,
5539 pub NumPackedMips: UINT8,
5540 pub NumTilesForPackedMips: UINT,
5541 pub StartTileIndexInOverallResource: UINT,
5542}
5543pub const D3D12_TILE_MAPPING_FLAGS_D3D12_TILE_MAPPING_FLAG_NONE:
5544 D3D12_TILE_MAPPING_FLAGS = 0;
5545pub const D3D12_TILE_MAPPING_FLAGS_D3D12_TILE_MAPPING_FLAG_NO_HAZARD:
5546 D3D12_TILE_MAPPING_FLAGS = 1;
5547pub type D3D12_TILE_MAPPING_FLAGS = ::std::os::raw::c_int;
5548pub const D3D12_TILE_COPY_FLAGS_D3D12_TILE_COPY_FLAG_NONE:
5549 D3D12_TILE_COPY_FLAGS = 0;
5550pub const D3D12_TILE_COPY_FLAGS_D3D12_TILE_COPY_FLAG_NO_HAZARD:
5551 D3D12_TILE_COPY_FLAGS = 1;
5552pub const D3D12_TILE_COPY_FLAGS_D3D12_TILE_COPY_FLAG_LINEAR_BUFFER_TO_SWIZZLED_TILED_RESOURCE : D3D12_TILE_COPY_FLAGS = 2 ;
5553pub const D3D12_TILE_COPY_FLAGS_D3D12_TILE_COPY_FLAG_SWIZZLED_TILED_RESOURCE_TO_LINEAR_BUFFER : D3D12_TILE_COPY_FLAGS = 4 ;
5554pub type D3D12_TILE_COPY_FLAGS = ::std::os::raw::c_int;
5555pub const D3D12_RESOURCE_STATES_D3D12_RESOURCE_STATE_COMMON:
5556 D3D12_RESOURCE_STATES = 0;
5557pub const D3D12_RESOURCE_STATES_D3D12_RESOURCE_STATE_VERTEX_AND_CONSTANT_BUFFER : D3D12_RESOURCE_STATES = 1 ;
5558pub const D3D12_RESOURCE_STATES_D3D12_RESOURCE_STATE_INDEX_BUFFER:
5559 D3D12_RESOURCE_STATES = 2;
5560pub const D3D12_RESOURCE_STATES_D3D12_RESOURCE_STATE_RENDER_TARGET:
5561 D3D12_RESOURCE_STATES = 4;
5562pub const D3D12_RESOURCE_STATES_D3D12_RESOURCE_STATE_UNORDERED_ACCESS:
5563 D3D12_RESOURCE_STATES = 8;
5564pub const D3D12_RESOURCE_STATES_D3D12_RESOURCE_STATE_DEPTH_WRITE:
5565 D3D12_RESOURCE_STATES = 16;
5566pub const D3D12_RESOURCE_STATES_D3D12_RESOURCE_STATE_DEPTH_READ:
5567 D3D12_RESOURCE_STATES = 32;
5568pub const D3D12_RESOURCE_STATES_D3D12_RESOURCE_STATE_NON_PIXEL_SHADER_RESOURCE : D3D12_RESOURCE_STATES = 64 ;
5569pub const D3D12_RESOURCE_STATES_D3D12_RESOURCE_STATE_PIXEL_SHADER_RESOURCE:
5570 D3D12_RESOURCE_STATES = 128;
5571pub const D3D12_RESOURCE_STATES_D3D12_RESOURCE_STATE_STREAM_OUT:
5572 D3D12_RESOURCE_STATES = 256;
5573pub const D3D12_RESOURCE_STATES_D3D12_RESOURCE_STATE_INDIRECT_ARGUMENT:
5574 D3D12_RESOURCE_STATES = 512;
5575pub const D3D12_RESOURCE_STATES_D3D12_RESOURCE_STATE_COPY_DEST:
5576 D3D12_RESOURCE_STATES = 1024;
5577pub const D3D12_RESOURCE_STATES_D3D12_RESOURCE_STATE_COPY_SOURCE:
5578 D3D12_RESOURCE_STATES = 2048;
5579pub const D3D12_RESOURCE_STATES_D3D12_RESOURCE_STATE_RESOLVE_DEST:
5580 D3D12_RESOURCE_STATES = 4096;
5581pub const D3D12_RESOURCE_STATES_D3D12_RESOURCE_STATE_RESOLVE_SOURCE:
5582 D3D12_RESOURCE_STATES = 8192;
5583pub const D3D12_RESOURCE_STATES_D3D12_RESOURCE_STATE_RAYTRACING_ACCELERATION_STRUCTURE : D3D12_RESOURCE_STATES = 4194304 ;
5584pub const D3D12_RESOURCE_STATES_D3D12_RESOURCE_STATE_SHADING_RATE_SOURCE:
5585 D3D12_RESOURCE_STATES = 16777216;
5586pub const D3D12_RESOURCE_STATES_D3D12_RESOURCE_STATE_GENERIC_READ:
5587 D3D12_RESOURCE_STATES = 2755;
5588pub const D3D12_RESOURCE_STATES_D3D12_RESOURCE_STATE_ALL_SHADER_RESOURCE:
5589 D3D12_RESOURCE_STATES = 192;
5590pub const D3D12_RESOURCE_STATES_D3D12_RESOURCE_STATE_PRESENT:
5591 D3D12_RESOURCE_STATES = 0;
5592pub const D3D12_RESOURCE_STATES_D3D12_RESOURCE_STATE_PREDICATION:
5593 D3D12_RESOURCE_STATES = 512;
5594pub const D3D12_RESOURCE_STATES_D3D12_RESOURCE_STATE_VIDEO_DECODE_READ:
5595 D3D12_RESOURCE_STATES = 65536;
5596pub const D3D12_RESOURCE_STATES_D3D12_RESOURCE_STATE_VIDEO_DECODE_WRITE:
5597 D3D12_RESOURCE_STATES = 131072;
5598pub const D3D12_RESOURCE_STATES_D3D12_RESOURCE_STATE_VIDEO_PROCESS_READ:
5599 D3D12_RESOURCE_STATES = 262144;
5600pub const D3D12_RESOURCE_STATES_D3D12_RESOURCE_STATE_VIDEO_PROCESS_WRITE:
5601 D3D12_RESOURCE_STATES = 524288;
5602pub const D3D12_RESOURCE_STATES_D3D12_RESOURCE_STATE_VIDEO_ENCODE_READ:
5603 D3D12_RESOURCE_STATES = 2097152;
5604pub const D3D12_RESOURCE_STATES_D3D12_RESOURCE_STATE_VIDEO_ENCODE_WRITE:
5605 D3D12_RESOURCE_STATES = 8388608;
5606pub type D3D12_RESOURCE_STATES = ::std::os::raw::c_int;
5607pub const D3D12_RESOURCE_BARRIER_TYPE_D3D12_RESOURCE_BARRIER_TYPE_TRANSITION:
5608 D3D12_RESOURCE_BARRIER_TYPE = 0;
5609pub const D3D12_RESOURCE_BARRIER_TYPE_D3D12_RESOURCE_BARRIER_TYPE_ALIASING:
5610 D3D12_RESOURCE_BARRIER_TYPE = 1;
5611pub const D3D12_RESOURCE_BARRIER_TYPE_D3D12_RESOURCE_BARRIER_TYPE_UAV:
5612 D3D12_RESOURCE_BARRIER_TYPE = 2;
5613pub type D3D12_RESOURCE_BARRIER_TYPE = ::std::os::raw::c_int;
5614#[repr(C)]
5615#[derive(Debug, Copy, Clone, Hash, PartialOrd, Ord, PartialEq, Eq)]
5616pub struct D3D12_RESOURCE_TRANSITION_BARRIER {
5617 pub pResource: *mut ID3D12Resource,
5618 pub Subresource: UINT,
5619 pub StateBefore: D3D12_RESOURCE_STATES,
5620 pub StateAfter: D3D12_RESOURCE_STATES,
5621}
5622impl Default for D3D12_RESOURCE_TRANSITION_BARRIER {
5623 fn default() -> Self {
5624 let mut s = ::std::mem::MaybeUninit::<Self>::uninit();
5625 unsafe {
5626 ::std::ptr::write_bytes(s.as_mut_ptr(), 0, 1);
5627 s.assume_init()
5628 }
5629 }
5630}
5631#[repr(C)]
5632#[derive(Debug, Copy, Clone, Hash, PartialOrd, Ord, PartialEq, Eq)]
5633pub struct D3D12_RESOURCE_ALIASING_BARRIER {
5634 pub pResourceBefore: *mut ID3D12Resource,
5635 pub pResourceAfter: *mut ID3D12Resource,
5636}
5637impl Default for D3D12_RESOURCE_ALIASING_BARRIER {
5638 fn default() -> Self {
5639 let mut s = ::std::mem::MaybeUninit::<Self>::uninit();
5640 unsafe {
5641 ::std::ptr::write_bytes(s.as_mut_ptr(), 0, 1);
5642 s.assume_init()
5643 }
5644 }
5645}
5646#[repr(C)]
5647#[derive(Debug, Copy, Clone, Hash, PartialOrd, Ord, PartialEq, Eq)]
5648pub struct D3D12_RESOURCE_UAV_BARRIER {
5649 pub pResource: *mut ID3D12Resource,
5650}
5651impl Default for D3D12_RESOURCE_UAV_BARRIER {
5652 fn default() -> Self {
5653 let mut s = ::std::mem::MaybeUninit::<Self>::uninit();
5654 unsafe {
5655 ::std::ptr::write_bytes(s.as_mut_ptr(), 0, 1);
5656 s.assume_init()
5657 }
5658 }
5659}
5660pub const D3D12_RESOURCE_BARRIER_FLAGS_D3D12_RESOURCE_BARRIER_FLAG_NONE:
5661 D3D12_RESOURCE_BARRIER_FLAGS = 0;
5662pub const D3D12_RESOURCE_BARRIER_FLAGS_D3D12_RESOURCE_BARRIER_FLAG_BEGIN_ONLY : D3D12_RESOURCE_BARRIER_FLAGS = 1 ;
5663pub const D3D12_RESOURCE_BARRIER_FLAGS_D3D12_RESOURCE_BARRIER_FLAG_END_ONLY:
5664 D3D12_RESOURCE_BARRIER_FLAGS = 2;
5665pub type D3D12_RESOURCE_BARRIER_FLAGS = ::std::os::raw::c_int;
5666#[repr(C)]
5667#[derive(Copy, Clone)]
5668pub struct D3D12_RESOURCE_BARRIER {
5669 pub Type: D3D12_RESOURCE_BARRIER_TYPE,
5670 pub Flags: D3D12_RESOURCE_BARRIER_FLAGS,
5671 pub __bindgen_anon_1: D3D12_RESOURCE_BARRIER__bindgen_ty_1,
5672}
5673#[repr(C)]
5674#[derive(Copy, Clone)]
5675pub union D3D12_RESOURCE_BARRIER__bindgen_ty_1 {
5676 pub Transition: D3D12_RESOURCE_TRANSITION_BARRIER,
5677 pub Aliasing: D3D12_RESOURCE_ALIASING_BARRIER,
5678 pub UAV: D3D12_RESOURCE_UAV_BARRIER,
5679}
5680impl Default for D3D12_RESOURCE_BARRIER__bindgen_ty_1 {
5681 fn default() -> Self {
5682 let mut s = ::std::mem::MaybeUninit::<Self>::uninit();
5683 unsafe {
5684 ::std::ptr::write_bytes(s.as_mut_ptr(), 0, 1);
5685 s.assume_init()
5686 }
5687 }
5688}
5689impl ::std::fmt::Debug for D3D12_RESOURCE_BARRIER__bindgen_ty_1 {
5690 fn fmt(&self, f: &mut ::std::fmt::Formatter<'_>) -> ::std::fmt::Result {
5691 write!(f, "D3D12_RESOURCE_BARRIER__bindgen_ty_1 {{ union }}")
5692 }
5693}
5694impl Default for D3D12_RESOURCE_BARRIER {
5695 fn default() -> Self {
5696 let mut s = ::std::mem::MaybeUninit::<Self>::uninit();
5697 unsafe {
5698 ::std::ptr::write_bytes(s.as_mut_ptr(), 0, 1);
5699 s.assume_init()
5700 }
5701 }
5702}
5703impl ::std::fmt::Debug for D3D12_RESOURCE_BARRIER {
5704 fn fmt(&self, f: &mut ::std::fmt::Formatter<'_>) -> ::std::fmt::Result {
5705 write ! (f , "D3D12_RESOURCE_BARRIER {{ Type: {:?}, Flags: {:?}, __bindgen_anon_1: {:?} }}" , self . Type , self . Flags , self . __bindgen_anon_1)
5706 }
5707}
5708#[repr(C)]
5709#[derive(Debug, Copy, Clone, Hash, PartialOrd, Ord, PartialEq, Eq)]
5710pub struct D3D12_SUBRESOURCE_FOOTPRINT {
5711 pub Format: DXGI_FORMAT,
5712 pub Width: UINT,
5713 pub Height: UINT,
5714 pub Depth: UINT,
5715 pub RowPitch: UINT,
5716}
5717impl Default for D3D12_SUBRESOURCE_FOOTPRINT {
5718 fn default() -> Self {
5719 let mut s = ::std::mem::MaybeUninit::<Self>::uninit();
5720 unsafe {
5721 ::std::ptr::write_bytes(s.as_mut_ptr(), 0, 1);
5722 s.assume_init()
5723 }
5724 }
5725}
5726#[repr(C)]
5727#[derive(Debug, Copy, Clone, Hash, PartialOrd, Ord, PartialEq, Eq)]
5728pub struct D3D12_PLACED_SUBRESOURCE_FOOTPRINT {
5729 pub Offset: UINT64,
5730 pub Footprint: D3D12_SUBRESOURCE_FOOTPRINT,
5731}
5732impl Default for D3D12_PLACED_SUBRESOURCE_FOOTPRINT {
5733 fn default() -> Self {
5734 let mut s = ::std::mem::MaybeUninit::<Self>::uninit();
5735 unsafe {
5736 ::std::ptr::write_bytes(s.as_mut_ptr(), 0, 1);
5737 s.assume_init()
5738 }
5739 }
5740}
5741pub const D3D12_TEXTURE_COPY_TYPE_D3D12_TEXTURE_COPY_TYPE_SUBRESOURCE_INDEX:
5742 D3D12_TEXTURE_COPY_TYPE = 0;
5743pub const D3D12_TEXTURE_COPY_TYPE_D3D12_TEXTURE_COPY_TYPE_PLACED_FOOTPRINT:
5744 D3D12_TEXTURE_COPY_TYPE = 1;
5745pub type D3D12_TEXTURE_COPY_TYPE = ::std::os::raw::c_int;
5746#[repr(C)]
5747#[derive(Copy, Clone)]
5748pub struct D3D12_TEXTURE_COPY_LOCATION {
5749 pub pResource: *mut ID3D12Resource,
5750 pub Type: D3D12_TEXTURE_COPY_TYPE,
5751 pub __bindgen_anon_1: D3D12_TEXTURE_COPY_LOCATION__bindgen_ty_1,
5752}
5753#[repr(C)]
5754#[derive(Copy, Clone)]
5755pub union D3D12_TEXTURE_COPY_LOCATION__bindgen_ty_1 {
5756 pub PlacedFootprint: D3D12_PLACED_SUBRESOURCE_FOOTPRINT,
5757 pub SubresourceIndex: UINT,
5758}
5759impl Default for D3D12_TEXTURE_COPY_LOCATION__bindgen_ty_1 {
5760 fn default() -> Self {
5761 let mut s = ::std::mem::MaybeUninit::<Self>::uninit();
5762 unsafe {
5763 ::std::ptr::write_bytes(s.as_mut_ptr(), 0, 1);
5764 s.assume_init()
5765 }
5766 }
5767}
5768impl ::std::fmt::Debug for D3D12_TEXTURE_COPY_LOCATION__bindgen_ty_1 {
5769 fn fmt(&self, f: &mut ::std::fmt::Formatter<'_>) -> ::std::fmt::Result {
5770 write!(f, "D3D12_TEXTURE_COPY_LOCATION__bindgen_ty_1 {{ union }}")
5771 }
5772}
5773impl Default for D3D12_TEXTURE_COPY_LOCATION {
5774 fn default() -> Self {
5775 let mut s = ::std::mem::MaybeUninit::<Self>::uninit();
5776 unsafe {
5777 ::std::ptr::write_bytes(s.as_mut_ptr(), 0, 1);
5778 s.assume_init()
5779 }
5780 }
5781}
5782impl ::std::fmt::Debug for D3D12_TEXTURE_COPY_LOCATION {
5783 fn fmt(&self, f: &mut ::std::fmt::Formatter<'_>) -> ::std::fmt::Result {
5784 write ! (f , "D3D12_TEXTURE_COPY_LOCATION {{ pResource: {:?}, Type: {:?}, __bindgen_anon_1: {:?} }}" , self . pResource , self . Type , self . __bindgen_anon_1)
5785 }
5786}
5787pub const D3D12_RESOLVE_MODE_D3D12_RESOLVE_MODE_DECOMPRESS: D3D12_RESOLVE_MODE =
5788 0;
5789pub const D3D12_RESOLVE_MODE_D3D12_RESOLVE_MODE_MIN: D3D12_RESOLVE_MODE = 1;
5790pub const D3D12_RESOLVE_MODE_D3D12_RESOLVE_MODE_MAX: D3D12_RESOLVE_MODE = 2;
5791pub const D3D12_RESOLVE_MODE_D3D12_RESOLVE_MODE_AVERAGE: D3D12_RESOLVE_MODE = 3;
5792pub const D3D12_RESOLVE_MODE_D3D12_RESOLVE_MODE_ENCODE_SAMPLER_FEEDBACK:
5793 D3D12_RESOLVE_MODE = 4;
5794pub const D3D12_RESOLVE_MODE_D3D12_RESOLVE_MODE_DECODE_SAMPLER_FEEDBACK:
5795 D3D12_RESOLVE_MODE = 5;
5796pub type D3D12_RESOLVE_MODE = ::std::os::raw::c_int;
5797#[repr(C)]
5798#[derive(Debug, Default, Copy, Clone, Hash, PartialOrd, Ord, PartialEq, Eq)]
5799pub struct D3D12_SAMPLE_POSITION {
5800 pub X: INT8,
5801 pub Y: INT8,
5802}
5803#[repr(C)]
5804#[derive(Debug, Default, Copy, Clone, Hash, PartialOrd, Ord, PartialEq, Eq)]
5805pub struct D3D12_VIEW_INSTANCE_LOCATION {
5806 pub ViewportArrayIndex: UINT,
5807 pub RenderTargetArrayIndex: UINT,
5808}
5809pub const D3D12_VIEW_INSTANCING_FLAGS_D3D12_VIEW_INSTANCING_FLAG_NONE:
5810 D3D12_VIEW_INSTANCING_FLAGS = 0;
5811pub const D3D12_VIEW_INSTANCING_FLAGS_D3D12_VIEW_INSTANCING_FLAG_ENABLE_VIEW_INSTANCE_MASKING : D3D12_VIEW_INSTANCING_FLAGS = 1 ;
5812pub type D3D12_VIEW_INSTANCING_FLAGS = ::std::os::raw::c_int;
5813#[repr(C)]
5814#[derive(Debug, Copy, Clone, Hash, PartialOrd, Ord, PartialEq, Eq)]
5815pub struct D3D12_VIEW_INSTANCING_DESC {
5816 pub ViewInstanceCount: UINT,
5817 pub pViewInstanceLocations: *const D3D12_VIEW_INSTANCE_LOCATION,
5818 pub Flags: D3D12_VIEW_INSTANCING_FLAGS,
5819}
5820impl Default for D3D12_VIEW_INSTANCING_DESC {
5821 fn default() -> Self {
5822 let mut s = ::std::mem::MaybeUninit::<Self>::uninit();
5823 unsafe {
5824 ::std::ptr::write_bytes(s.as_mut_ptr(), 0, 1);
5825 s.assume_init()
5826 }
5827 }
5828}
5829pub const D3D12_SHADER_COMPONENT_MAPPING_D3D12_SHADER_COMPONENT_MAPPING_FROM_MEMORY_COMPONENT_0 : D3D12_SHADER_COMPONENT_MAPPING = 0 ;
5830pub const D3D12_SHADER_COMPONENT_MAPPING_D3D12_SHADER_COMPONENT_MAPPING_FROM_MEMORY_COMPONENT_1 : D3D12_SHADER_COMPONENT_MAPPING = 1 ;
5831pub const D3D12_SHADER_COMPONENT_MAPPING_D3D12_SHADER_COMPONENT_MAPPING_FROM_MEMORY_COMPONENT_2 : D3D12_SHADER_COMPONENT_MAPPING = 2 ;
5832pub const D3D12_SHADER_COMPONENT_MAPPING_D3D12_SHADER_COMPONENT_MAPPING_FROM_MEMORY_COMPONENT_3 : D3D12_SHADER_COMPONENT_MAPPING = 3 ;
5833pub const D3D12_SHADER_COMPONENT_MAPPING_D3D12_SHADER_COMPONENT_MAPPING_FORCE_VALUE_0 : D3D12_SHADER_COMPONENT_MAPPING = 4 ;
5834pub const D3D12_SHADER_COMPONENT_MAPPING_D3D12_SHADER_COMPONENT_MAPPING_FORCE_VALUE_1 : D3D12_SHADER_COMPONENT_MAPPING = 5 ;
5835pub type D3D12_SHADER_COMPONENT_MAPPING = ::std::os::raw::c_int;
5836pub const D3D12_BUFFER_SRV_FLAGS_D3D12_BUFFER_SRV_FLAG_NONE:
5837 D3D12_BUFFER_SRV_FLAGS = 0;
5838pub const D3D12_BUFFER_SRV_FLAGS_D3D12_BUFFER_SRV_FLAG_RAW:
5839 D3D12_BUFFER_SRV_FLAGS = 1;
5840pub type D3D12_BUFFER_SRV_FLAGS = ::std::os::raw::c_int;
5841#[repr(C)]
5842#[derive(Debug, Copy, Clone, Hash, PartialOrd, Ord, PartialEq, Eq)]
5843pub struct D3D12_BUFFER_SRV {
5844 pub FirstElement: UINT64,
5845 pub NumElements: UINT,
5846 pub StructureByteStride: UINT,
5847 pub Flags: D3D12_BUFFER_SRV_FLAGS,
5848}
5849impl Default for D3D12_BUFFER_SRV {
5850 fn default() -> Self {
5851 let mut s = ::std::mem::MaybeUninit::<Self>::uninit();
5852 unsafe {
5853 ::std::ptr::write_bytes(s.as_mut_ptr(), 0, 1);
5854 s.assume_init()
5855 }
5856 }
5857}
5858#[repr(C)]
5859#[derive(Debug, Default, Copy, Clone, PartialOrd, PartialEq)]
5860pub struct D3D12_TEX1D_SRV {
5861 pub MostDetailedMip: UINT,
5862 pub MipLevels: UINT,
5863 pub ResourceMinLODClamp: FLOAT,
5864}
5865#[repr(C)]
5866#[derive(Debug, Default, Copy, Clone, PartialOrd, PartialEq)]
5867pub struct D3D12_TEX1D_ARRAY_SRV {
5868 pub MostDetailedMip: UINT,
5869 pub MipLevels: UINT,
5870 pub FirstArraySlice: UINT,
5871 pub ArraySize: UINT,
5872 pub ResourceMinLODClamp: FLOAT,
5873}
5874#[repr(C)]
5875#[derive(Debug, Default, Copy, Clone, PartialOrd, PartialEq)]
5876pub struct D3D12_TEX2D_SRV {
5877 pub MostDetailedMip: UINT,
5878 pub MipLevels: UINT,
5879 pub PlaneSlice: UINT,
5880 pub ResourceMinLODClamp: FLOAT,
5881}
5882#[repr(C)]
5883#[derive(Debug, Default, Copy, Clone, PartialOrd, PartialEq)]
5884pub struct D3D12_TEX2D_ARRAY_SRV {
5885 pub MostDetailedMip: UINT,
5886 pub MipLevels: UINT,
5887 pub FirstArraySlice: UINT,
5888 pub ArraySize: UINT,
5889 pub PlaneSlice: UINT,
5890 pub ResourceMinLODClamp: FLOAT,
5891}
5892#[repr(C)]
5893#[derive(Debug, Default, Copy, Clone, PartialOrd, PartialEq)]
5894pub struct D3D12_TEX3D_SRV {
5895 pub MostDetailedMip: UINT,
5896 pub MipLevels: UINT,
5897 pub ResourceMinLODClamp: FLOAT,
5898}
5899#[repr(C)]
5900#[derive(Debug, Default, Copy, Clone, PartialOrd, PartialEq)]
5901pub struct D3D12_TEXCUBE_SRV {
5902 pub MostDetailedMip: UINT,
5903 pub MipLevels: UINT,
5904 pub ResourceMinLODClamp: FLOAT,
5905}
5906#[repr(C)]
5907#[derive(Debug, Default, Copy, Clone, PartialOrd, PartialEq)]
5908pub struct D3D12_TEXCUBE_ARRAY_SRV {
5909 pub MostDetailedMip: UINT,
5910 pub MipLevels: UINT,
5911 pub First2DArrayFace: UINT,
5912 pub NumCubes: UINT,
5913 pub ResourceMinLODClamp: FLOAT,
5914}
5915#[repr(C)]
5916#[derive(Debug, Default, Copy, Clone, Hash, PartialOrd, Ord, PartialEq, Eq)]
5917pub struct D3D12_TEX2DMS_SRV {
5918 pub UnusedField_NothingToDefine: UINT,
5919}
5920#[repr(C)]
5921#[derive(Debug, Default, Copy, Clone, Hash, PartialOrd, Ord, PartialEq, Eq)]
5922pub struct D3D12_TEX2DMS_ARRAY_SRV {
5923 pub FirstArraySlice: UINT,
5924 pub ArraySize: UINT,
5925}
5926#[repr(C)]
5927#[derive(Debug, Default, Copy, Clone, Hash, PartialOrd, Ord, PartialEq, Eq)]
5928pub struct D3D12_RAYTRACING_ACCELERATION_STRUCTURE_SRV {
5929 pub Location: D3D12_GPU_VIRTUAL_ADDRESS,
5930}
5931pub const D3D12_SRV_DIMENSION_D3D12_SRV_DIMENSION_UNKNOWN: D3D12_SRV_DIMENSION =
5932 0;
5933pub const D3D12_SRV_DIMENSION_D3D12_SRV_DIMENSION_BUFFER: D3D12_SRV_DIMENSION =
5934 1;
5935pub const D3D12_SRV_DIMENSION_D3D12_SRV_DIMENSION_TEXTURE1D:
5936 D3D12_SRV_DIMENSION = 2;
5937pub const D3D12_SRV_DIMENSION_D3D12_SRV_DIMENSION_TEXTURE1DARRAY:
5938 D3D12_SRV_DIMENSION = 3;
5939pub const D3D12_SRV_DIMENSION_D3D12_SRV_DIMENSION_TEXTURE2D:
5940 D3D12_SRV_DIMENSION = 4;
5941pub const D3D12_SRV_DIMENSION_D3D12_SRV_DIMENSION_TEXTURE2DARRAY:
5942 D3D12_SRV_DIMENSION = 5;
5943pub const D3D12_SRV_DIMENSION_D3D12_SRV_DIMENSION_TEXTURE2DMS:
5944 D3D12_SRV_DIMENSION = 6;
5945pub const D3D12_SRV_DIMENSION_D3D12_SRV_DIMENSION_TEXTURE2DMSARRAY:
5946 D3D12_SRV_DIMENSION = 7;
5947pub const D3D12_SRV_DIMENSION_D3D12_SRV_DIMENSION_TEXTURE3D:
5948 D3D12_SRV_DIMENSION = 8;
5949pub const D3D12_SRV_DIMENSION_D3D12_SRV_DIMENSION_TEXTURECUBE:
5950 D3D12_SRV_DIMENSION = 9;
5951pub const D3D12_SRV_DIMENSION_D3D12_SRV_DIMENSION_TEXTURECUBEARRAY:
5952 D3D12_SRV_DIMENSION = 10;
5953pub const D3D12_SRV_DIMENSION_D3D12_SRV_DIMENSION_RAYTRACING_ACCELERATION_STRUCTURE : D3D12_SRV_DIMENSION = 11 ;
5954pub type D3D12_SRV_DIMENSION = ::std::os::raw::c_int;
5955#[repr(C)]
5956#[derive(Copy, Clone)]
5957pub struct D3D12_SHADER_RESOURCE_VIEW_DESC {
5958 pub Format: DXGI_FORMAT,
5959 pub ViewDimension: D3D12_SRV_DIMENSION,
5960 pub Shader4ComponentMapping: UINT,
5961 pub __bindgen_anon_1: D3D12_SHADER_RESOURCE_VIEW_DESC__bindgen_ty_1,
5962}
5963#[repr(C)]
5964#[derive(Copy, Clone)]
5965pub union D3D12_SHADER_RESOURCE_VIEW_DESC__bindgen_ty_1 {
5966 pub Buffer: D3D12_BUFFER_SRV,
5967 pub Texture1D: D3D12_TEX1D_SRV,
5968 pub Texture1DArray: D3D12_TEX1D_ARRAY_SRV,
5969 pub Texture2D: D3D12_TEX2D_SRV,
5970 pub Texture2DArray: D3D12_TEX2D_ARRAY_SRV,
5971 pub Texture2DMS: D3D12_TEX2DMS_SRV,
5972 pub Texture2DMSArray: D3D12_TEX2DMS_ARRAY_SRV,
5973 pub Texture3D: D3D12_TEX3D_SRV,
5974 pub TextureCube: D3D12_TEXCUBE_SRV,
5975 pub TextureCubeArray: D3D12_TEXCUBE_ARRAY_SRV,
5976 pub RaytracingAccelerationStructure:
5977 D3D12_RAYTRACING_ACCELERATION_STRUCTURE_SRV,
5978}
5979impl Default for D3D12_SHADER_RESOURCE_VIEW_DESC__bindgen_ty_1 {
5980 fn default() -> Self {
5981 let mut s = ::std::mem::MaybeUninit::<Self>::uninit();
5982 unsafe {
5983 ::std::ptr::write_bytes(s.as_mut_ptr(), 0, 1);
5984 s.assume_init()
5985 }
5986 }
5987}
5988impl ::std::fmt::Debug for D3D12_SHADER_RESOURCE_VIEW_DESC__bindgen_ty_1 {
5989 fn fmt(&self, f: &mut ::std::fmt::Formatter<'_>) -> ::std::fmt::Result {
5990 write!(
5991 f,
5992 "D3D12_SHADER_RESOURCE_VIEW_DESC__bindgen_ty_1 {{ union }}"
5993 )
5994 }
5995}
5996impl Default for D3D12_SHADER_RESOURCE_VIEW_DESC {
5997 fn default() -> Self {
5998 let mut s = ::std::mem::MaybeUninit::<Self>::uninit();
5999 unsafe {
6000 ::std::ptr::write_bytes(s.as_mut_ptr(), 0, 1);
6001 s.assume_init()
6002 }
6003 }
6004}
6005impl ::std::fmt::Debug for D3D12_SHADER_RESOURCE_VIEW_DESC {
6006 fn fmt(&self, f: &mut ::std::fmt::Formatter<'_>) -> ::std::fmt::Result {
6007 write ! (f , "D3D12_SHADER_RESOURCE_VIEW_DESC {{ Format: {:?}, ViewDimension: {:?}, Shader4ComponentMapping: {:?}, __bindgen_anon_1: {:?} }}" , self . Format , self . ViewDimension , self . Shader4ComponentMapping , self . __bindgen_anon_1)
6008 }
6009}
6010#[repr(C)]
6011#[derive(Debug, Default, Copy, Clone, Hash, PartialOrd, Ord, PartialEq, Eq)]
6012pub struct D3D12_CONSTANT_BUFFER_VIEW_DESC {
6013 pub BufferLocation: D3D12_GPU_VIRTUAL_ADDRESS,
6014 pub SizeInBytes: UINT,
6015}
6016pub const D3D12_FILTER_D3D12_FILTER_MIN_MAG_MIP_POINT: D3D12_FILTER = 0;
6017pub const D3D12_FILTER_D3D12_FILTER_MIN_MAG_POINT_MIP_LINEAR: D3D12_FILTER = 1;
6018pub const D3D12_FILTER_D3D12_FILTER_MIN_POINT_MAG_LINEAR_MIP_POINT:
6019 D3D12_FILTER = 4;
6020pub const D3D12_FILTER_D3D12_FILTER_MIN_POINT_MAG_MIP_LINEAR: D3D12_FILTER = 5;
6021pub const D3D12_FILTER_D3D12_FILTER_MIN_LINEAR_MAG_MIP_POINT: D3D12_FILTER = 16;
6022pub const D3D12_FILTER_D3D12_FILTER_MIN_LINEAR_MAG_POINT_MIP_LINEAR:
6023 D3D12_FILTER = 17;
6024pub const D3D12_FILTER_D3D12_FILTER_MIN_MAG_LINEAR_MIP_POINT: D3D12_FILTER = 20;
6025pub const D3D12_FILTER_D3D12_FILTER_MIN_MAG_MIP_LINEAR: D3D12_FILTER = 21;
6026pub const D3D12_FILTER_D3D12_FILTER_ANISOTROPIC: D3D12_FILTER = 85;
6027pub const D3D12_FILTER_D3D12_FILTER_COMPARISON_MIN_MAG_MIP_POINT: D3D12_FILTER =
6028 128;
6029pub const D3D12_FILTER_D3D12_FILTER_COMPARISON_MIN_MAG_POINT_MIP_LINEAR:
6030 D3D12_FILTER = 129;
6031pub const D3D12_FILTER_D3D12_FILTER_COMPARISON_MIN_POINT_MAG_LINEAR_MIP_POINT : D3D12_FILTER = 132 ;
6032pub const D3D12_FILTER_D3D12_FILTER_COMPARISON_MIN_POINT_MAG_MIP_LINEAR:
6033 D3D12_FILTER = 133;
6034pub const D3D12_FILTER_D3D12_FILTER_COMPARISON_MIN_LINEAR_MAG_MIP_POINT:
6035 D3D12_FILTER = 144;
6036pub const D3D12_FILTER_D3D12_FILTER_COMPARISON_MIN_LINEAR_MAG_POINT_MIP_LINEAR : D3D12_FILTER = 145 ;
6037pub const D3D12_FILTER_D3D12_FILTER_COMPARISON_MIN_MAG_LINEAR_MIP_POINT:
6038 D3D12_FILTER = 148;
6039pub const D3D12_FILTER_D3D12_FILTER_COMPARISON_MIN_MAG_MIP_LINEAR:
6040 D3D12_FILTER = 149;
6041pub const D3D12_FILTER_D3D12_FILTER_COMPARISON_ANISOTROPIC: D3D12_FILTER = 213;
6042pub const D3D12_FILTER_D3D12_FILTER_MINIMUM_MIN_MAG_MIP_POINT: D3D12_FILTER =
6043 256;
6044pub const D3D12_FILTER_D3D12_FILTER_MINIMUM_MIN_MAG_POINT_MIP_LINEAR:
6045 D3D12_FILTER = 257;
6046pub const D3D12_FILTER_D3D12_FILTER_MINIMUM_MIN_POINT_MAG_LINEAR_MIP_POINT:
6047 D3D12_FILTER = 260;
6048pub const D3D12_FILTER_D3D12_FILTER_MINIMUM_MIN_POINT_MAG_MIP_LINEAR:
6049 D3D12_FILTER = 261;
6050pub const D3D12_FILTER_D3D12_FILTER_MINIMUM_MIN_LINEAR_MAG_MIP_POINT:
6051 D3D12_FILTER = 272;
6052pub const D3D12_FILTER_D3D12_FILTER_MINIMUM_MIN_LINEAR_MAG_POINT_MIP_LINEAR:
6053 D3D12_FILTER = 273;
6054pub const D3D12_FILTER_D3D12_FILTER_MINIMUM_MIN_MAG_LINEAR_MIP_POINT:
6055 D3D12_FILTER = 276;
6056pub const D3D12_FILTER_D3D12_FILTER_MINIMUM_MIN_MAG_MIP_LINEAR: D3D12_FILTER =
6057 277;
6058pub const D3D12_FILTER_D3D12_FILTER_MINIMUM_ANISOTROPIC: D3D12_FILTER = 341;
6059pub const D3D12_FILTER_D3D12_FILTER_MAXIMUM_MIN_MAG_MIP_POINT: D3D12_FILTER =
6060 384;
6061pub const D3D12_FILTER_D3D12_FILTER_MAXIMUM_MIN_MAG_POINT_MIP_LINEAR:
6062 D3D12_FILTER = 385;
6063pub const D3D12_FILTER_D3D12_FILTER_MAXIMUM_MIN_POINT_MAG_LINEAR_MIP_POINT:
6064 D3D12_FILTER = 388;
6065pub const D3D12_FILTER_D3D12_FILTER_MAXIMUM_MIN_POINT_MAG_MIP_LINEAR:
6066 D3D12_FILTER = 389;
6067pub const D3D12_FILTER_D3D12_FILTER_MAXIMUM_MIN_LINEAR_MAG_MIP_POINT:
6068 D3D12_FILTER = 400;
6069pub const D3D12_FILTER_D3D12_FILTER_MAXIMUM_MIN_LINEAR_MAG_POINT_MIP_LINEAR:
6070 D3D12_FILTER = 401;
6071pub const D3D12_FILTER_D3D12_FILTER_MAXIMUM_MIN_MAG_LINEAR_MIP_POINT:
6072 D3D12_FILTER = 404;
6073pub const D3D12_FILTER_D3D12_FILTER_MAXIMUM_MIN_MAG_MIP_LINEAR: D3D12_FILTER =
6074 405;
6075pub const D3D12_FILTER_D3D12_FILTER_MAXIMUM_ANISOTROPIC: D3D12_FILTER = 469;
6076pub type D3D12_FILTER = ::std::os::raw::c_int;
6077pub const D3D12_FILTER_TYPE_D3D12_FILTER_TYPE_POINT: D3D12_FILTER_TYPE = 0;
6078pub const D3D12_FILTER_TYPE_D3D12_FILTER_TYPE_LINEAR: D3D12_FILTER_TYPE = 1;
6079pub type D3D12_FILTER_TYPE = ::std::os::raw::c_int;
6080pub const D3D12_FILTER_REDUCTION_TYPE_D3D12_FILTER_REDUCTION_TYPE_STANDARD:
6081 D3D12_FILTER_REDUCTION_TYPE = 0;
6082pub const D3D12_FILTER_REDUCTION_TYPE_D3D12_FILTER_REDUCTION_TYPE_COMPARISON:
6083 D3D12_FILTER_REDUCTION_TYPE = 1;
6084pub const D3D12_FILTER_REDUCTION_TYPE_D3D12_FILTER_REDUCTION_TYPE_MINIMUM:
6085 D3D12_FILTER_REDUCTION_TYPE = 2;
6086pub const D3D12_FILTER_REDUCTION_TYPE_D3D12_FILTER_REDUCTION_TYPE_MAXIMUM:
6087 D3D12_FILTER_REDUCTION_TYPE = 3;
6088pub type D3D12_FILTER_REDUCTION_TYPE = ::std::os::raw::c_int;
6089pub const D3D12_TEXTURE_ADDRESS_MODE_D3D12_TEXTURE_ADDRESS_MODE_WRAP:
6090 D3D12_TEXTURE_ADDRESS_MODE = 1;
6091pub const D3D12_TEXTURE_ADDRESS_MODE_D3D12_TEXTURE_ADDRESS_MODE_MIRROR:
6092 D3D12_TEXTURE_ADDRESS_MODE = 2;
6093pub const D3D12_TEXTURE_ADDRESS_MODE_D3D12_TEXTURE_ADDRESS_MODE_CLAMP:
6094 D3D12_TEXTURE_ADDRESS_MODE = 3;
6095pub const D3D12_TEXTURE_ADDRESS_MODE_D3D12_TEXTURE_ADDRESS_MODE_BORDER:
6096 D3D12_TEXTURE_ADDRESS_MODE = 4;
6097pub const D3D12_TEXTURE_ADDRESS_MODE_D3D12_TEXTURE_ADDRESS_MODE_MIRROR_ONCE:
6098 D3D12_TEXTURE_ADDRESS_MODE = 5;
6099pub type D3D12_TEXTURE_ADDRESS_MODE = ::std::os::raw::c_int;
6100#[repr(C)]
6101#[derive(Debug, Copy, Clone, PartialOrd, PartialEq)]
6102pub struct D3D12_SAMPLER_DESC {
6103 pub Filter: D3D12_FILTER,
6104 pub AddressU: D3D12_TEXTURE_ADDRESS_MODE,
6105 pub AddressV: D3D12_TEXTURE_ADDRESS_MODE,
6106 pub AddressW: D3D12_TEXTURE_ADDRESS_MODE,
6107 pub MipLODBias: FLOAT,
6108 pub MaxAnisotropy: UINT,
6109 pub ComparisonFunc: D3D12_COMPARISON_FUNC,
6110 pub BorderColor: [FLOAT; 4usize],
6111 pub MinLOD: FLOAT,
6112 pub MaxLOD: FLOAT,
6113}
6114impl Default for D3D12_SAMPLER_DESC {
6115 fn default() -> Self {
6116 let mut s = ::std::mem::MaybeUninit::<Self>::uninit();
6117 unsafe {
6118 ::std::ptr::write_bytes(s.as_mut_ptr(), 0, 1);
6119 s.assume_init()
6120 }
6121 }
6122}
6123pub const D3D12_BUFFER_UAV_FLAGS_D3D12_BUFFER_UAV_FLAG_NONE:
6124 D3D12_BUFFER_UAV_FLAGS = 0;
6125pub const D3D12_BUFFER_UAV_FLAGS_D3D12_BUFFER_UAV_FLAG_RAW:
6126 D3D12_BUFFER_UAV_FLAGS = 1;
6127pub type D3D12_BUFFER_UAV_FLAGS = ::std::os::raw::c_int;
6128#[repr(C)]
6129#[derive(Debug, Copy, Clone, Hash, PartialOrd, Ord, PartialEq, Eq)]
6130pub struct D3D12_BUFFER_UAV {
6131 pub FirstElement: UINT64,
6132 pub NumElements: UINT,
6133 pub StructureByteStride: UINT,
6134 pub CounterOffsetInBytes: UINT64,
6135 pub Flags: D3D12_BUFFER_UAV_FLAGS,
6136}
6137impl Default for D3D12_BUFFER_UAV {
6138 fn default() -> Self {
6139 let mut s = ::std::mem::MaybeUninit::<Self>::uninit();
6140 unsafe {
6141 ::std::ptr::write_bytes(s.as_mut_ptr(), 0, 1);
6142 s.assume_init()
6143 }
6144 }
6145}
6146#[repr(C)]
6147#[derive(Debug, Default, Copy, Clone, Hash, PartialOrd, Ord, PartialEq, Eq)]
6148pub struct D3D12_TEX1D_UAV {
6149 pub MipSlice: UINT,
6150}
6151#[repr(C)]
6152#[derive(Debug, Default, Copy, Clone, Hash, PartialOrd, Ord, PartialEq, Eq)]
6153pub struct D3D12_TEX1D_ARRAY_UAV {
6154 pub MipSlice: UINT,
6155 pub FirstArraySlice: UINT,
6156 pub ArraySize: UINT,
6157}
6158#[repr(C)]
6159#[derive(Debug, Default, Copy, Clone, Hash, PartialOrd, Ord, PartialEq, Eq)]
6160pub struct D3D12_TEX2D_UAV {
6161 pub MipSlice: UINT,
6162 pub PlaneSlice: UINT,
6163}
6164#[repr(C)]
6165#[derive(Debug, Default, Copy, Clone, Hash, PartialOrd, Ord, PartialEq, Eq)]
6166pub struct D3D12_TEX2D_ARRAY_UAV {
6167 pub MipSlice: UINT,
6168 pub FirstArraySlice: UINT,
6169 pub ArraySize: UINT,
6170 pub PlaneSlice: UINT,
6171}
6172#[repr(C)]
6173#[derive(Debug, Default, Copy, Clone, Hash, PartialOrd, Ord, PartialEq, Eq)]
6174pub struct D3D12_TEX3D_UAV {
6175 pub MipSlice: UINT,
6176 pub FirstWSlice: UINT,
6177 pub WSize: UINT,
6178}
6179pub const D3D12_UAV_DIMENSION_D3D12_UAV_DIMENSION_UNKNOWN: D3D12_UAV_DIMENSION =
6180 0;
6181pub const D3D12_UAV_DIMENSION_D3D12_UAV_DIMENSION_BUFFER: D3D12_UAV_DIMENSION =
6182 1;
6183pub const D3D12_UAV_DIMENSION_D3D12_UAV_DIMENSION_TEXTURE1D:
6184 D3D12_UAV_DIMENSION = 2;
6185pub const D3D12_UAV_DIMENSION_D3D12_UAV_DIMENSION_TEXTURE1DARRAY:
6186 D3D12_UAV_DIMENSION = 3;
6187pub const D3D12_UAV_DIMENSION_D3D12_UAV_DIMENSION_TEXTURE2D:
6188 D3D12_UAV_DIMENSION = 4;
6189pub const D3D12_UAV_DIMENSION_D3D12_UAV_DIMENSION_TEXTURE2DARRAY:
6190 D3D12_UAV_DIMENSION = 5;
6191pub const D3D12_UAV_DIMENSION_D3D12_UAV_DIMENSION_TEXTURE3D:
6192 D3D12_UAV_DIMENSION = 8;
6193pub type D3D12_UAV_DIMENSION = ::std::os::raw::c_int;
6194#[repr(C)]
6195#[derive(Copy, Clone)]
6196pub struct D3D12_UNORDERED_ACCESS_VIEW_DESC {
6197 pub Format: DXGI_FORMAT,
6198 pub ViewDimension: D3D12_UAV_DIMENSION,
6199 pub __bindgen_anon_1: D3D12_UNORDERED_ACCESS_VIEW_DESC__bindgen_ty_1,
6200}
6201#[repr(C)]
6202#[derive(Copy, Clone)]
6203pub union D3D12_UNORDERED_ACCESS_VIEW_DESC__bindgen_ty_1 {
6204 pub Buffer: D3D12_BUFFER_UAV,
6205 pub Texture1D: D3D12_TEX1D_UAV,
6206 pub Texture1DArray: D3D12_TEX1D_ARRAY_UAV,
6207 pub Texture2D: D3D12_TEX2D_UAV,
6208 pub Texture2DArray: D3D12_TEX2D_ARRAY_UAV,
6209 pub Texture3D: D3D12_TEX3D_UAV,
6210}
6211impl Default for D3D12_UNORDERED_ACCESS_VIEW_DESC__bindgen_ty_1 {
6212 fn default() -> Self {
6213 let mut s = ::std::mem::MaybeUninit::<Self>::uninit();
6214 unsafe {
6215 ::std::ptr::write_bytes(s.as_mut_ptr(), 0, 1);
6216 s.assume_init()
6217 }
6218 }
6219}
6220impl ::std::fmt::Debug for D3D12_UNORDERED_ACCESS_VIEW_DESC__bindgen_ty_1 {
6221 fn fmt(&self, f: &mut ::std::fmt::Formatter<'_>) -> ::std::fmt::Result {
6222 write!(
6223 f,
6224 "D3D12_UNORDERED_ACCESS_VIEW_DESC__bindgen_ty_1 {{ union }}"
6225 )
6226 }
6227}
6228impl Default for D3D12_UNORDERED_ACCESS_VIEW_DESC {
6229 fn default() -> Self {
6230 let mut s = ::std::mem::MaybeUninit::<Self>::uninit();
6231 unsafe {
6232 ::std::ptr::write_bytes(s.as_mut_ptr(), 0, 1);
6233 s.assume_init()
6234 }
6235 }
6236}
6237impl ::std::fmt::Debug for D3D12_UNORDERED_ACCESS_VIEW_DESC {
6238 fn fmt(&self, f: &mut ::std::fmt::Formatter<'_>) -> ::std::fmt::Result {
6239 write ! (f , "D3D12_UNORDERED_ACCESS_VIEW_DESC {{ Format: {:?}, ViewDimension: {:?}, __bindgen_anon_1: {:?} }}" , self . Format , self . ViewDimension , self . __bindgen_anon_1)
6240 }
6241}
6242#[repr(C)]
6243#[derive(Debug, Default, Copy, Clone, Hash, PartialOrd, Ord, PartialEq, Eq)]
6244pub struct D3D12_BUFFER_RTV {
6245 pub FirstElement: UINT64,
6246 pub NumElements: UINT,
6247}
6248#[repr(C)]
6249#[derive(Debug, Default, Copy, Clone, Hash, PartialOrd, Ord, PartialEq, Eq)]
6250pub struct D3D12_TEX1D_RTV {
6251 pub MipSlice: UINT,
6252}
6253#[repr(C)]
6254#[derive(Debug, Default, Copy, Clone, Hash, PartialOrd, Ord, PartialEq, Eq)]
6255pub struct D3D12_TEX1D_ARRAY_RTV {
6256 pub MipSlice: UINT,
6257 pub FirstArraySlice: UINT,
6258 pub ArraySize: UINT,
6259}
6260#[repr(C)]
6261#[derive(Debug, Default, Copy, Clone, Hash, PartialOrd, Ord, PartialEq, Eq)]
6262pub struct D3D12_TEX2D_RTV {
6263 pub MipSlice: UINT,
6264 pub PlaneSlice: UINT,
6265}
6266#[repr(C)]
6267#[derive(Debug, Default, Copy, Clone, Hash, PartialOrd, Ord, PartialEq, Eq)]
6268pub struct D3D12_TEX2DMS_RTV {
6269 pub UnusedField_NothingToDefine: UINT,
6270}
6271#[repr(C)]
6272#[derive(Debug, Default, Copy, Clone, Hash, PartialOrd, Ord, PartialEq, Eq)]
6273pub struct D3D12_TEX2D_ARRAY_RTV {
6274 pub MipSlice: UINT,
6275 pub FirstArraySlice: UINT,
6276 pub ArraySize: UINT,
6277 pub PlaneSlice: UINT,
6278}
6279#[repr(C)]
6280#[derive(Debug, Default, Copy, Clone, Hash, PartialOrd, Ord, PartialEq, Eq)]
6281pub struct D3D12_TEX2DMS_ARRAY_RTV {
6282 pub FirstArraySlice: UINT,
6283 pub ArraySize: UINT,
6284}
6285#[repr(C)]
6286#[derive(Debug, Default, Copy, Clone, Hash, PartialOrd, Ord, PartialEq, Eq)]
6287pub struct D3D12_TEX3D_RTV {
6288 pub MipSlice: UINT,
6289 pub FirstWSlice: UINT,
6290 pub WSize: UINT,
6291}
6292pub const D3D12_RTV_DIMENSION_D3D12_RTV_DIMENSION_UNKNOWN: D3D12_RTV_DIMENSION =
6293 0;
6294pub const D3D12_RTV_DIMENSION_D3D12_RTV_DIMENSION_BUFFER: D3D12_RTV_DIMENSION =
6295 1;
6296pub const D3D12_RTV_DIMENSION_D3D12_RTV_DIMENSION_TEXTURE1D:
6297 D3D12_RTV_DIMENSION = 2;
6298pub const D3D12_RTV_DIMENSION_D3D12_RTV_DIMENSION_TEXTURE1DARRAY:
6299 D3D12_RTV_DIMENSION = 3;
6300pub const D3D12_RTV_DIMENSION_D3D12_RTV_DIMENSION_TEXTURE2D:
6301 D3D12_RTV_DIMENSION = 4;
6302pub const D3D12_RTV_DIMENSION_D3D12_RTV_DIMENSION_TEXTURE2DARRAY:
6303 D3D12_RTV_DIMENSION = 5;
6304pub const D3D12_RTV_DIMENSION_D3D12_RTV_DIMENSION_TEXTURE2DMS:
6305 D3D12_RTV_DIMENSION = 6;
6306pub const D3D12_RTV_DIMENSION_D3D12_RTV_DIMENSION_TEXTURE2DMSARRAY:
6307 D3D12_RTV_DIMENSION = 7;
6308pub const D3D12_RTV_DIMENSION_D3D12_RTV_DIMENSION_TEXTURE3D:
6309 D3D12_RTV_DIMENSION = 8;
6310pub type D3D12_RTV_DIMENSION = ::std::os::raw::c_int;
6311#[repr(C)]
6312#[derive(Copy, Clone)]
6313pub struct D3D12_RENDER_TARGET_VIEW_DESC {
6314 pub Format: DXGI_FORMAT,
6315 pub ViewDimension: D3D12_RTV_DIMENSION,
6316 pub __bindgen_anon_1: D3D12_RENDER_TARGET_VIEW_DESC__bindgen_ty_1,
6317}
6318#[repr(C)]
6319#[derive(Copy, Clone)]
6320pub union D3D12_RENDER_TARGET_VIEW_DESC__bindgen_ty_1 {
6321 pub Buffer: D3D12_BUFFER_RTV,
6322 pub Texture1D: D3D12_TEX1D_RTV,
6323 pub Texture1DArray: D3D12_TEX1D_ARRAY_RTV,
6324 pub Texture2D: D3D12_TEX2D_RTV,
6325 pub Texture2DArray: D3D12_TEX2D_ARRAY_RTV,
6326 pub Texture2DMS: D3D12_TEX2DMS_RTV,
6327 pub Texture2DMSArray: D3D12_TEX2DMS_ARRAY_RTV,
6328 pub Texture3D: D3D12_TEX3D_RTV,
6329}
6330impl Default for D3D12_RENDER_TARGET_VIEW_DESC__bindgen_ty_1 {
6331 fn default() -> Self {
6332 let mut s = ::std::mem::MaybeUninit::<Self>::uninit();
6333 unsafe {
6334 ::std::ptr::write_bytes(s.as_mut_ptr(), 0, 1);
6335 s.assume_init()
6336 }
6337 }
6338}
6339impl ::std::fmt::Debug for D3D12_RENDER_TARGET_VIEW_DESC__bindgen_ty_1 {
6340 fn fmt(&self, f: &mut ::std::fmt::Formatter<'_>) -> ::std::fmt::Result {
6341 write!(f, "D3D12_RENDER_TARGET_VIEW_DESC__bindgen_ty_1 {{ union }}")
6342 }
6343}
6344impl Default for D3D12_RENDER_TARGET_VIEW_DESC {
6345 fn default() -> Self {
6346 let mut s = ::std::mem::MaybeUninit::<Self>::uninit();
6347 unsafe {
6348 ::std::ptr::write_bytes(s.as_mut_ptr(), 0, 1);
6349 s.assume_init()
6350 }
6351 }
6352}
6353impl ::std::fmt::Debug for D3D12_RENDER_TARGET_VIEW_DESC {
6354 fn fmt(&self, f: &mut ::std::fmt::Formatter<'_>) -> ::std::fmt::Result {
6355 write ! (f , "D3D12_RENDER_TARGET_VIEW_DESC {{ Format: {:?}, ViewDimension: {:?}, __bindgen_anon_1: {:?} }}" , self . Format , self . ViewDimension , self . __bindgen_anon_1)
6356 }
6357}
6358#[repr(C)]
6359#[derive(Debug, Default, Copy, Clone, Hash, PartialOrd, Ord, PartialEq, Eq)]
6360pub struct D3D12_TEX1D_DSV {
6361 pub MipSlice: UINT,
6362}
6363#[repr(C)]
6364#[derive(Debug, Default, Copy, Clone, Hash, PartialOrd, Ord, PartialEq, Eq)]
6365pub struct D3D12_TEX1D_ARRAY_DSV {
6366 pub MipSlice: UINT,
6367 pub FirstArraySlice: UINT,
6368 pub ArraySize: UINT,
6369}
6370#[repr(C)]
6371#[derive(Debug, Default, Copy, Clone, Hash, PartialOrd, Ord, PartialEq, Eq)]
6372pub struct D3D12_TEX2D_DSV {
6373 pub MipSlice: UINT,
6374}
6375#[repr(C)]
6376#[derive(Debug, Default, Copy, Clone, Hash, PartialOrd, Ord, PartialEq, Eq)]
6377pub struct D3D12_TEX2D_ARRAY_DSV {
6378 pub MipSlice: UINT,
6379 pub FirstArraySlice: UINT,
6380 pub ArraySize: UINT,
6381}
6382#[repr(C)]
6383#[derive(Debug, Default, Copy, Clone, Hash, PartialOrd, Ord, PartialEq, Eq)]
6384pub struct D3D12_TEX2DMS_DSV {
6385 pub UnusedField_NothingToDefine: UINT,
6386}
6387#[repr(C)]
6388#[derive(Debug, Default, Copy, Clone, Hash, PartialOrd, Ord, PartialEq, Eq)]
6389pub struct D3D12_TEX2DMS_ARRAY_DSV {
6390 pub FirstArraySlice: UINT,
6391 pub ArraySize: UINT,
6392}
6393pub const D3D12_DSV_FLAGS_D3D12_DSV_FLAG_NONE: D3D12_DSV_FLAGS = 0;
6394pub const D3D12_DSV_FLAGS_D3D12_DSV_FLAG_READ_ONLY_DEPTH: D3D12_DSV_FLAGS = 1;
6395pub const D3D12_DSV_FLAGS_D3D12_DSV_FLAG_READ_ONLY_STENCIL: D3D12_DSV_FLAGS = 2;
6396pub type D3D12_DSV_FLAGS = ::std::os::raw::c_int;
6397pub const D3D12_DSV_DIMENSION_D3D12_DSV_DIMENSION_UNKNOWN: D3D12_DSV_DIMENSION =
6398 0;
6399pub const D3D12_DSV_DIMENSION_D3D12_DSV_DIMENSION_TEXTURE1D:
6400 D3D12_DSV_DIMENSION = 1;
6401pub const D3D12_DSV_DIMENSION_D3D12_DSV_DIMENSION_TEXTURE1DARRAY:
6402 D3D12_DSV_DIMENSION = 2;
6403pub const D3D12_DSV_DIMENSION_D3D12_DSV_DIMENSION_TEXTURE2D:
6404 D3D12_DSV_DIMENSION = 3;
6405pub const D3D12_DSV_DIMENSION_D3D12_DSV_DIMENSION_TEXTURE2DARRAY:
6406 D3D12_DSV_DIMENSION = 4;
6407pub const D3D12_DSV_DIMENSION_D3D12_DSV_DIMENSION_TEXTURE2DMS:
6408 D3D12_DSV_DIMENSION = 5;
6409pub const D3D12_DSV_DIMENSION_D3D12_DSV_DIMENSION_TEXTURE2DMSARRAY:
6410 D3D12_DSV_DIMENSION = 6;
6411pub type D3D12_DSV_DIMENSION = ::std::os::raw::c_int;
6412#[repr(C)]
6413#[derive(Copy, Clone)]
6414pub struct D3D12_DEPTH_STENCIL_VIEW_DESC {
6415 pub Format: DXGI_FORMAT,
6416 pub ViewDimension: D3D12_DSV_DIMENSION,
6417 pub Flags: D3D12_DSV_FLAGS,
6418 pub __bindgen_anon_1: D3D12_DEPTH_STENCIL_VIEW_DESC__bindgen_ty_1,
6419}
6420#[repr(C)]
6421#[derive(Copy, Clone)]
6422pub union D3D12_DEPTH_STENCIL_VIEW_DESC__bindgen_ty_1 {
6423 pub Texture1D: D3D12_TEX1D_DSV,
6424 pub Texture1DArray: D3D12_TEX1D_ARRAY_DSV,
6425 pub Texture2D: D3D12_TEX2D_DSV,
6426 pub Texture2DArray: D3D12_TEX2D_ARRAY_DSV,
6427 pub Texture2DMS: D3D12_TEX2DMS_DSV,
6428 pub Texture2DMSArray: D3D12_TEX2DMS_ARRAY_DSV,
6429}
6430impl Default for D3D12_DEPTH_STENCIL_VIEW_DESC__bindgen_ty_1 {
6431 fn default() -> Self {
6432 let mut s = ::std::mem::MaybeUninit::<Self>::uninit();
6433 unsafe {
6434 ::std::ptr::write_bytes(s.as_mut_ptr(), 0, 1);
6435 s.assume_init()
6436 }
6437 }
6438}
6439impl ::std::fmt::Debug for D3D12_DEPTH_STENCIL_VIEW_DESC__bindgen_ty_1 {
6440 fn fmt(&self, f: &mut ::std::fmt::Formatter<'_>) -> ::std::fmt::Result {
6441 write!(f, "D3D12_DEPTH_STENCIL_VIEW_DESC__bindgen_ty_1 {{ union }}")
6442 }
6443}
6444impl Default for D3D12_DEPTH_STENCIL_VIEW_DESC {
6445 fn default() -> Self {
6446 let mut s = ::std::mem::MaybeUninit::<Self>::uninit();
6447 unsafe {
6448 ::std::ptr::write_bytes(s.as_mut_ptr(), 0, 1);
6449 s.assume_init()
6450 }
6451 }
6452}
6453impl ::std::fmt::Debug for D3D12_DEPTH_STENCIL_VIEW_DESC {
6454 fn fmt(&self, f: &mut ::std::fmt::Formatter<'_>) -> ::std::fmt::Result {
6455 write ! (f , "D3D12_DEPTH_STENCIL_VIEW_DESC {{ Format: {:?}, ViewDimension: {:?}, Flags: {:?}, __bindgen_anon_1: {:?} }}" , self . Format , self . ViewDimension , self . Flags , self . __bindgen_anon_1)
6456 }
6457}
6458pub const D3D12_CLEAR_FLAGS_D3D12_CLEAR_FLAG_DEPTH: D3D12_CLEAR_FLAGS = 1;
6459pub const D3D12_CLEAR_FLAGS_D3D12_CLEAR_FLAG_STENCIL: D3D12_CLEAR_FLAGS = 2;
6460pub type D3D12_CLEAR_FLAGS = ::std::os::raw::c_int;
6461pub const D3D12_FENCE_FLAGS_D3D12_FENCE_FLAG_NONE: D3D12_FENCE_FLAGS = 0;
6462pub const D3D12_FENCE_FLAGS_D3D12_FENCE_FLAG_SHARED: D3D12_FENCE_FLAGS = 1;
6463pub const D3D12_FENCE_FLAGS_D3D12_FENCE_FLAG_SHARED_CROSS_ADAPTER:
6464 D3D12_FENCE_FLAGS = 2;
6465pub const D3D12_FENCE_FLAGS_D3D12_FENCE_FLAG_NON_MONITORED: D3D12_FENCE_FLAGS =
6466 4;
6467pub type D3D12_FENCE_FLAGS = ::std::os::raw::c_int;
6468pub const D3D12_DESCRIPTOR_HEAP_TYPE_D3D12_DESCRIPTOR_HEAP_TYPE_CBV_SRV_UAV:
6469 D3D12_DESCRIPTOR_HEAP_TYPE = 0;
6470pub const D3D12_DESCRIPTOR_HEAP_TYPE_D3D12_DESCRIPTOR_HEAP_TYPE_SAMPLER:
6471 D3D12_DESCRIPTOR_HEAP_TYPE = 1;
6472pub const D3D12_DESCRIPTOR_HEAP_TYPE_D3D12_DESCRIPTOR_HEAP_TYPE_RTV:
6473 D3D12_DESCRIPTOR_HEAP_TYPE = 2;
6474pub const D3D12_DESCRIPTOR_HEAP_TYPE_D3D12_DESCRIPTOR_HEAP_TYPE_DSV:
6475 D3D12_DESCRIPTOR_HEAP_TYPE = 3;
6476pub const D3D12_DESCRIPTOR_HEAP_TYPE_D3D12_DESCRIPTOR_HEAP_TYPE_NUM_TYPES:
6477 D3D12_DESCRIPTOR_HEAP_TYPE = 4;
6478pub type D3D12_DESCRIPTOR_HEAP_TYPE = ::std::os::raw::c_int;
6479pub const D3D12_DESCRIPTOR_HEAP_FLAGS_D3D12_DESCRIPTOR_HEAP_FLAG_NONE:
6480 D3D12_DESCRIPTOR_HEAP_FLAGS = 0;
6481pub const D3D12_DESCRIPTOR_HEAP_FLAGS_D3D12_DESCRIPTOR_HEAP_FLAG_SHADER_VISIBLE : D3D12_DESCRIPTOR_HEAP_FLAGS = 1 ;
6482pub type D3D12_DESCRIPTOR_HEAP_FLAGS = ::std::os::raw::c_int;
6483#[repr(C)]
6484#[derive(Debug, Copy, Clone, Hash, PartialOrd, Ord, PartialEq, Eq)]
6485pub struct D3D12_DESCRIPTOR_HEAP_DESC {
6486 pub Type: D3D12_DESCRIPTOR_HEAP_TYPE,
6487 pub NumDescriptors: UINT,
6488 pub Flags: D3D12_DESCRIPTOR_HEAP_FLAGS,
6489 pub NodeMask: UINT,
6490}
6491impl Default for D3D12_DESCRIPTOR_HEAP_DESC {
6492 fn default() -> Self {
6493 let mut s = ::std::mem::MaybeUninit::<Self>::uninit();
6494 unsafe {
6495 ::std::ptr::write_bytes(s.as_mut_ptr(), 0, 1);
6496 s.assume_init()
6497 }
6498 }
6499}
6500pub const D3D12_DESCRIPTOR_RANGE_TYPE_D3D12_DESCRIPTOR_RANGE_TYPE_SRV:
6501 D3D12_DESCRIPTOR_RANGE_TYPE = 0;
6502pub const D3D12_DESCRIPTOR_RANGE_TYPE_D3D12_DESCRIPTOR_RANGE_TYPE_UAV:
6503 D3D12_DESCRIPTOR_RANGE_TYPE = 1;
6504pub const D3D12_DESCRIPTOR_RANGE_TYPE_D3D12_DESCRIPTOR_RANGE_TYPE_CBV:
6505 D3D12_DESCRIPTOR_RANGE_TYPE = 2;
6506pub const D3D12_DESCRIPTOR_RANGE_TYPE_D3D12_DESCRIPTOR_RANGE_TYPE_SAMPLER:
6507 D3D12_DESCRIPTOR_RANGE_TYPE = 3;
6508pub type D3D12_DESCRIPTOR_RANGE_TYPE = ::std::os::raw::c_int;
6509#[repr(C)]
6510#[derive(Debug, Copy, Clone, Hash, PartialOrd, Ord, PartialEq, Eq)]
6511pub struct D3D12_DESCRIPTOR_RANGE {
6512 pub RangeType: D3D12_DESCRIPTOR_RANGE_TYPE,
6513 pub NumDescriptors: UINT,
6514 pub BaseShaderRegister: UINT,
6515 pub RegisterSpace: UINT,
6516 pub OffsetInDescriptorsFromTableStart: UINT,
6517}
6518impl Default for D3D12_DESCRIPTOR_RANGE {
6519 fn default() -> Self {
6520 let mut s = ::std::mem::MaybeUninit::<Self>::uninit();
6521 unsafe {
6522 ::std::ptr::write_bytes(s.as_mut_ptr(), 0, 1);
6523 s.assume_init()
6524 }
6525 }
6526}
6527#[repr(C)]
6528#[derive(Debug, Copy, Clone, Hash, PartialOrd, Ord, PartialEq, Eq)]
6529pub struct D3D12_ROOT_DESCRIPTOR_TABLE {
6530 pub NumDescriptorRanges: UINT,
6531 pub pDescriptorRanges: *const D3D12_DESCRIPTOR_RANGE,
6532}
6533impl Default for D3D12_ROOT_DESCRIPTOR_TABLE {
6534 fn default() -> Self {
6535 let mut s = ::std::mem::MaybeUninit::<Self>::uninit();
6536 unsafe {
6537 ::std::ptr::write_bytes(s.as_mut_ptr(), 0, 1);
6538 s.assume_init()
6539 }
6540 }
6541}
6542#[repr(C)]
6543#[derive(Debug, Default, Copy, Clone, Hash, PartialOrd, Ord, PartialEq, Eq)]
6544pub struct D3D12_ROOT_CONSTANTS {
6545 pub ShaderRegister: UINT,
6546 pub RegisterSpace: UINT,
6547 pub Num32BitValues: UINT,
6548}
6549#[repr(C)]
6550#[derive(Debug, Default, Copy, Clone, Hash, PartialOrd, Ord, PartialEq, Eq)]
6551pub struct D3D12_ROOT_DESCRIPTOR {
6552 pub ShaderRegister: UINT,
6553 pub RegisterSpace: UINT,
6554}
6555pub const D3D12_SHADER_VISIBILITY_D3D12_SHADER_VISIBILITY_ALL:
6556 D3D12_SHADER_VISIBILITY = 0;
6557pub const D3D12_SHADER_VISIBILITY_D3D12_SHADER_VISIBILITY_VERTEX:
6558 D3D12_SHADER_VISIBILITY = 1;
6559pub const D3D12_SHADER_VISIBILITY_D3D12_SHADER_VISIBILITY_HULL:
6560 D3D12_SHADER_VISIBILITY = 2;
6561pub const D3D12_SHADER_VISIBILITY_D3D12_SHADER_VISIBILITY_DOMAIN:
6562 D3D12_SHADER_VISIBILITY = 3;
6563pub const D3D12_SHADER_VISIBILITY_D3D12_SHADER_VISIBILITY_GEOMETRY:
6564 D3D12_SHADER_VISIBILITY = 4;
6565pub const D3D12_SHADER_VISIBILITY_D3D12_SHADER_VISIBILITY_PIXEL:
6566 D3D12_SHADER_VISIBILITY = 5;
6567pub const D3D12_SHADER_VISIBILITY_D3D12_SHADER_VISIBILITY_AMPLIFICATION:
6568 D3D12_SHADER_VISIBILITY = 6;
6569pub const D3D12_SHADER_VISIBILITY_D3D12_SHADER_VISIBILITY_MESH:
6570 D3D12_SHADER_VISIBILITY = 7;
6571pub type D3D12_SHADER_VISIBILITY = ::std::os::raw::c_int;
6572pub const D3D12_ROOT_PARAMETER_TYPE_D3D12_ROOT_PARAMETER_TYPE_DESCRIPTOR_TABLE : D3D12_ROOT_PARAMETER_TYPE = 0 ;
6573pub const D3D12_ROOT_PARAMETER_TYPE_D3D12_ROOT_PARAMETER_TYPE_32BIT_CONSTANTS : D3D12_ROOT_PARAMETER_TYPE = 1 ;
6574pub const D3D12_ROOT_PARAMETER_TYPE_D3D12_ROOT_PARAMETER_TYPE_CBV:
6575 D3D12_ROOT_PARAMETER_TYPE = 2;
6576pub const D3D12_ROOT_PARAMETER_TYPE_D3D12_ROOT_PARAMETER_TYPE_SRV:
6577 D3D12_ROOT_PARAMETER_TYPE = 3;
6578pub const D3D12_ROOT_PARAMETER_TYPE_D3D12_ROOT_PARAMETER_TYPE_UAV:
6579 D3D12_ROOT_PARAMETER_TYPE = 4;
6580pub type D3D12_ROOT_PARAMETER_TYPE = ::std::os::raw::c_int;
6581#[repr(C)]
6582#[derive(Copy, Clone)]
6583pub struct D3D12_ROOT_PARAMETER {
6584 pub ParameterType: D3D12_ROOT_PARAMETER_TYPE,
6585 pub __bindgen_anon_1: D3D12_ROOT_PARAMETER__bindgen_ty_1,
6586 pub ShaderVisibility: D3D12_SHADER_VISIBILITY,
6587}
6588#[repr(C)]
6589#[derive(Copy, Clone)]
6590pub union D3D12_ROOT_PARAMETER__bindgen_ty_1 {
6591 pub DescriptorTable: D3D12_ROOT_DESCRIPTOR_TABLE,
6592 pub Constants: D3D12_ROOT_CONSTANTS,
6593 pub Descriptor: D3D12_ROOT_DESCRIPTOR,
6594}
6595impl Default for D3D12_ROOT_PARAMETER__bindgen_ty_1 {
6596 fn default() -> Self {
6597 let mut s = ::std::mem::MaybeUninit::<Self>::uninit();
6598 unsafe {
6599 ::std::ptr::write_bytes(s.as_mut_ptr(), 0, 1);
6600 s.assume_init()
6601 }
6602 }
6603}
6604impl ::std::fmt::Debug for D3D12_ROOT_PARAMETER__bindgen_ty_1 {
6605 fn fmt(&self, f: &mut ::std::fmt::Formatter<'_>) -> ::std::fmt::Result {
6606 write!(f, "D3D12_ROOT_PARAMETER__bindgen_ty_1 {{ union }}")
6607 }
6608}
6609impl Default for D3D12_ROOT_PARAMETER {
6610 fn default() -> Self {
6611 let mut s = ::std::mem::MaybeUninit::<Self>::uninit();
6612 unsafe {
6613 ::std::ptr::write_bytes(s.as_mut_ptr(), 0, 1);
6614 s.assume_init()
6615 }
6616 }
6617}
6618impl ::std::fmt::Debug for D3D12_ROOT_PARAMETER {
6619 fn fmt(&self, f: &mut ::std::fmt::Formatter<'_>) -> ::std::fmt::Result {
6620 write ! (f , "D3D12_ROOT_PARAMETER {{ ParameterType: {:?}, __bindgen_anon_1: {:?}, ShaderVisibility: {:?} }}" , self . ParameterType , self . __bindgen_anon_1 , self . ShaderVisibility)
6621 }
6622}
6623pub const D3D12_ROOT_SIGNATURE_FLAGS_D3D12_ROOT_SIGNATURE_FLAG_NONE:
6624 D3D12_ROOT_SIGNATURE_FLAGS = 0;
6625pub const D3D12_ROOT_SIGNATURE_FLAGS_D3D12_ROOT_SIGNATURE_FLAG_ALLOW_INPUT_ASSEMBLER_INPUT_LAYOUT : D3D12_ROOT_SIGNATURE_FLAGS = 1 ;
6626pub const D3D12_ROOT_SIGNATURE_FLAGS_D3D12_ROOT_SIGNATURE_FLAG_DENY_VERTEX_SHADER_ROOT_ACCESS : D3D12_ROOT_SIGNATURE_FLAGS = 2 ;
6627pub const D3D12_ROOT_SIGNATURE_FLAGS_D3D12_ROOT_SIGNATURE_FLAG_DENY_HULL_SHADER_ROOT_ACCESS : D3D12_ROOT_SIGNATURE_FLAGS = 4 ;
6628pub const D3D12_ROOT_SIGNATURE_FLAGS_D3D12_ROOT_SIGNATURE_FLAG_DENY_DOMAIN_SHADER_ROOT_ACCESS : D3D12_ROOT_SIGNATURE_FLAGS = 8 ;
6629pub const D3D12_ROOT_SIGNATURE_FLAGS_D3D12_ROOT_SIGNATURE_FLAG_DENY_GEOMETRY_SHADER_ROOT_ACCESS : D3D12_ROOT_SIGNATURE_FLAGS = 16 ;
6630pub const D3D12_ROOT_SIGNATURE_FLAGS_D3D12_ROOT_SIGNATURE_FLAG_DENY_PIXEL_SHADER_ROOT_ACCESS : D3D12_ROOT_SIGNATURE_FLAGS = 32 ;
6631pub const D3D12_ROOT_SIGNATURE_FLAGS_D3D12_ROOT_SIGNATURE_FLAG_ALLOW_STREAM_OUTPUT : D3D12_ROOT_SIGNATURE_FLAGS = 64 ;
6632pub const D3D12_ROOT_SIGNATURE_FLAGS_D3D12_ROOT_SIGNATURE_FLAG_LOCAL_ROOT_SIGNATURE : D3D12_ROOT_SIGNATURE_FLAGS = 128 ;
6633pub const D3D12_ROOT_SIGNATURE_FLAGS_D3D12_ROOT_SIGNATURE_FLAG_DENY_AMPLIFICATION_SHADER_ROOT_ACCESS : D3D12_ROOT_SIGNATURE_FLAGS = 256 ;
6634pub const D3D12_ROOT_SIGNATURE_FLAGS_D3D12_ROOT_SIGNATURE_FLAG_DENY_MESH_SHADER_ROOT_ACCESS : D3D12_ROOT_SIGNATURE_FLAGS = 512 ;
6635pub const D3D12_ROOT_SIGNATURE_FLAGS_D3D12_ROOT_SIGNATURE_FLAG_CBV_SRV_UAV_HEAP_DIRECTLY_INDEXED : D3D12_ROOT_SIGNATURE_FLAGS = 1024 ;
6636pub const D3D12_ROOT_SIGNATURE_FLAGS_D3D12_ROOT_SIGNATURE_FLAG_SAMPLER_HEAP_DIRECTLY_INDEXED : D3D12_ROOT_SIGNATURE_FLAGS = 2048 ;
6637pub type D3D12_ROOT_SIGNATURE_FLAGS = ::std::os::raw::c_int;
6638pub const D3D12_STATIC_BORDER_COLOR_D3D12_STATIC_BORDER_COLOR_TRANSPARENT_BLACK : D3D12_STATIC_BORDER_COLOR = 0 ;
6639pub const D3D12_STATIC_BORDER_COLOR_D3D12_STATIC_BORDER_COLOR_OPAQUE_BLACK:
6640 D3D12_STATIC_BORDER_COLOR = 1;
6641pub const D3D12_STATIC_BORDER_COLOR_D3D12_STATIC_BORDER_COLOR_OPAQUE_WHITE:
6642 D3D12_STATIC_BORDER_COLOR = 2;
6643pub type D3D12_STATIC_BORDER_COLOR = ::std::os::raw::c_int;
6644#[repr(C)]
6645#[derive(Debug, Copy, Clone, PartialOrd, PartialEq)]
6646pub struct D3D12_STATIC_SAMPLER_DESC {
6647 pub Filter: D3D12_FILTER,
6648 pub AddressU: D3D12_TEXTURE_ADDRESS_MODE,
6649 pub AddressV: D3D12_TEXTURE_ADDRESS_MODE,
6650 pub AddressW: D3D12_TEXTURE_ADDRESS_MODE,
6651 pub MipLODBias: FLOAT,
6652 pub MaxAnisotropy: UINT,
6653 pub ComparisonFunc: D3D12_COMPARISON_FUNC,
6654 pub BorderColor: D3D12_STATIC_BORDER_COLOR,
6655 pub MinLOD: FLOAT,
6656 pub MaxLOD: FLOAT,
6657 pub ShaderRegister: UINT,
6658 pub RegisterSpace: UINT,
6659 pub ShaderVisibility: D3D12_SHADER_VISIBILITY,
6660}
6661impl Default for D3D12_STATIC_SAMPLER_DESC {
6662 fn default() -> Self {
6663 let mut s = ::std::mem::MaybeUninit::<Self>::uninit();
6664 unsafe {
6665 ::std::ptr::write_bytes(s.as_mut_ptr(), 0, 1);
6666 s.assume_init()
6667 }
6668 }
6669}
6670#[repr(C)]
6671#[derive(Debug, Copy, Clone, Hash, PartialOrd, Ord, PartialEq, Eq)]
6672pub struct D3D12_ROOT_SIGNATURE_DESC {
6673 pub NumParameters: UINT,
6674 pub pParameters: *const D3D12_ROOT_PARAMETER,
6675 pub NumStaticSamplers: UINT,
6676 pub pStaticSamplers: *const D3D12_STATIC_SAMPLER_DESC,
6677 pub Flags: D3D12_ROOT_SIGNATURE_FLAGS,
6678}
6679impl Default for D3D12_ROOT_SIGNATURE_DESC {
6680 fn default() -> Self {
6681 let mut s = ::std::mem::MaybeUninit::<Self>::uninit();
6682 unsafe {
6683 ::std::ptr::write_bytes(s.as_mut_ptr(), 0, 1);
6684 s.assume_init()
6685 }
6686 }
6687}
6688pub const D3D12_DESCRIPTOR_RANGE_FLAGS_D3D12_DESCRIPTOR_RANGE_FLAG_NONE:
6689 D3D12_DESCRIPTOR_RANGE_FLAGS = 0;
6690pub const D3D12_DESCRIPTOR_RANGE_FLAGS_D3D12_DESCRIPTOR_RANGE_FLAG_DESCRIPTORS_VOLATILE : D3D12_DESCRIPTOR_RANGE_FLAGS = 1 ;
6691pub const D3D12_DESCRIPTOR_RANGE_FLAGS_D3D12_DESCRIPTOR_RANGE_FLAG_DATA_VOLATILE : D3D12_DESCRIPTOR_RANGE_FLAGS = 2 ;
6692pub const D3D12_DESCRIPTOR_RANGE_FLAGS_D3D12_DESCRIPTOR_RANGE_FLAG_DATA_STATIC_WHILE_SET_AT_EXECUTE : D3D12_DESCRIPTOR_RANGE_FLAGS = 4 ;
6693pub const D3D12_DESCRIPTOR_RANGE_FLAGS_D3D12_DESCRIPTOR_RANGE_FLAG_DATA_STATIC : D3D12_DESCRIPTOR_RANGE_FLAGS = 8 ;
6694pub const D3D12_DESCRIPTOR_RANGE_FLAGS_D3D12_DESCRIPTOR_RANGE_FLAG_DESCRIPTORS_STATIC_KEEPING_BUFFER_BOUNDS_CHECKS : D3D12_DESCRIPTOR_RANGE_FLAGS = 65536 ;
6695pub type D3D12_DESCRIPTOR_RANGE_FLAGS = ::std::os::raw::c_int;
6696#[repr(C)]
6697#[derive(Debug, Copy, Clone, Hash, PartialOrd, Ord, PartialEq, Eq)]
6698pub struct D3D12_DESCRIPTOR_RANGE1 {
6699 pub RangeType: D3D12_DESCRIPTOR_RANGE_TYPE,
6700 pub NumDescriptors: UINT,
6701 pub BaseShaderRegister: UINT,
6702 pub RegisterSpace: UINT,
6703 pub Flags: D3D12_DESCRIPTOR_RANGE_FLAGS,
6704 pub OffsetInDescriptorsFromTableStart: UINT,
6705}
6706impl Default for D3D12_DESCRIPTOR_RANGE1 {
6707 fn default() -> Self {
6708 let mut s = ::std::mem::MaybeUninit::<Self>::uninit();
6709 unsafe {
6710 ::std::ptr::write_bytes(s.as_mut_ptr(), 0, 1);
6711 s.assume_init()
6712 }
6713 }
6714}
6715#[repr(C)]
6716#[derive(Debug, Copy, Clone, Hash, PartialOrd, Ord, PartialEq, Eq)]
6717pub struct D3D12_ROOT_DESCRIPTOR_TABLE1 {
6718 pub NumDescriptorRanges: UINT,
6719 pub pDescriptorRanges: *const D3D12_DESCRIPTOR_RANGE1,
6720}
6721impl Default for D3D12_ROOT_DESCRIPTOR_TABLE1 {
6722 fn default() -> Self {
6723 let mut s = ::std::mem::MaybeUninit::<Self>::uninit();
6724 unsafe {
6725 ::std::ptr::write_bytes(s.as_mut_ptr(), 0, 1);
6726 s.assume_init()
6727 }
6728 }
6729}
6730pub const D3D12_ROOT_DESCRIPTOR_FLAGS_D3D12_ROOT_DESCRIPTOR_FLAG_NONE:
6731 D3D12_ROOT_DESCRIPTOR_FLAGS = 0;
6732pub const D3D12_ROOT_DESCRIPTOR_FLAGS_D3D12_ROOT_DESCRIPTOR_FLAG_DATA_VOLATILE : D3D12_ROOT_DESCRIPTOR_FLAGS = 2 ;
6733pub const D3D12_ROOT_DESCRIPTOR_FLAGS_D3D12_ROOT_DESCRIPTOR_FLAG_DATA_STATIC_WHILE_SET_AT_EXECUTE : D3D12_ROOT_DESCRIPTOR_FLAGS = 4 ;
6734pub const D3D12_ROOT_DESCRIPTOR_FLAGS_D3D12_ROOT_DESCRIPTOR_FLAG_DATA_STATIC:
6735 D3D12_ROOT_DESCRIPTOR_FLAGS = 8;
6736pub type D3D12_ROOT_DESCRIPTOR_FLAGS = ::std::os::raw::c_int;
6737#[repr(C)]
6738#[derive(Debug, Copy, Clone, Hash, PartialOrd, Ord, PartialEq, Eq)]
6739pub struct D3D12_ROOT_DESCRIPTOR1 {
6740 pub ShaderRegister: UINT,
6741 pub RegisterSpace: UINT,
6742 pub Flags: D3D12_ROOT_DESCRIPTOR_FLAGS,
6743}
6744impl Default for D3D12_ROOT_DESCRIPTOR1 {
6745 fn default() -> Self {
6746 let mut s = ::std::mem::MaybeUninit::<Self>::uninit();
6747 unsafe {
6748 ::std::ptr::write_bytes(s.as_mut_ptr(), 0, 1);
6749 s.assume_init()
6750 }
6751 }
6752}
6753#[repr(C)]
6754#[derive(Copy, Clone)]
6755pub struct D3D12_ROOT_PARAMETER1 {
6756 pub ParameterType: D3D12_ROOT_PARAMETER_TYPE,
6757 pub __bindgen_anon_1: D3D12_ROOT_PARAMETER1__bindgen_ty_1,
6758 pub ShaderVisibility: D3D12_SHADER_VISIBILITY,
6759}
6760#[repr(C)]
6761#[derive(Copy, Clone)]
6762pub union D3D12_ROOT_PARAMETER1__bindgen_ty_1 {
6763 pub DescriptorTable: D3D12_ROOT_DESCRIPTOR_TABLE1,
6764 pub Constants: D3D12_ROOT_CONSTANTS,
6765 pub Descriptor: D3D12_ROOT_DESCRIPTOR1,
6766}
6767impl Default for D3D12_ROOT_PARAMETER1__bindgen_ty_1 {
6768 fn default() -> Self {
6769 let mut s = ::std::mem::MaybeUninit::<Self>::uninit();
6770 unsafe {
6771 ::std::ptr::write_bytes(s.as_mut_ptr(), 0, 1);
6772 s.assume_init()
6773 }
6774 }
6775}
6776impl ::std::fmt::Debug for D3D12_ROOT_PARAMETER1__bindgen_ty_1 {
6777 fn fmt(&self, f: &mut ::std::fmt::Formatter<'_>) -> ::std::fmt::Result {
6778 write!(f, "D3D12_ROOT_PARAMETER1__bindgen_ty_1 {{ union }}")
6779 }
6780}
6781impl Default for D3D12_ROOT_PARAMETER1 {
6782 fn default() -> Self {
6783 let mut s = ::std::mem::MaybeUninit::<Self>::uninit();
6784 unsafe {
6785 ::std::ptr::write_bytes(s.as_mut_ptr(), 0, 1);
6786 s.assume_init()
6787 }
6788 }
6789}
6790impl ::std::fmt::Debug for D3D12_ROOT_PARAMETER1 {
6791 fn fmt(&self, f: &mut ::std::fmt::Formatter<'_>) -> ::std::fmt::Result {
6792 write ! (f , "D3D12_ROOT_PARAMETER1 {{ ParameterType: {:?}, __bindgen_anon_1: {:?}, ShaderVisibility: {:?} }}" , self . ParameterType , self . __bindgen_anon_1 , self . ShaderVisibility)
6793 }
6794}
6795#[repr(C)]
6796#[derive(Debug, Copy, Clone, Hash, PartialOrd, Ord, PartialEq, Eq)]
6797pub struct D3D12_ROOT_SIGNATURE_DESC1 {
6798 pub NumParameters: UINT,
6799 pub pParameters: *const D3D12_ROOT_PARAMETER1,
6800 pub NumStaticSamplers: UINT,
6801 pub pStaticSamplers: *const D3D12_STATIC_SAMPLER_DESC,
6802 pub Flags: D3D12_ROOT_SIGNATURE_FLAGS,
6803}
6804impl Default for D3D12_ROOT_SIGNATURE_DESC1 {
6805 fn default() -> Self {
6806 let mut s = ::std::mem::MaybeUninit::<Self>::uninit();
6807 unsafe {
6808 ::std::ptr::write_bytes(s.as_mut_ptr(), 0, 1);
6809 s.assume_init()
6810 }
6811 }
6812}
6813#[repr(C)]
6814#[derive(Copy, Clone)]
6815pub struct D3D12_VERSIONED_ROOT_SIGNATURE_DESC {
6816 pub Version: D3D_ROOT_SIGNATURE_VERSION,
6817 pub __bindgen_anon_1: D3D12_VERSIONED_ROOT_SIGNATURE_DESC__bindgen_ty_1,
6818}
6819#[repr(C)]
6820#[derive(Copy, Clone)]
6821pub union D3D12_VERSIONED_ROOT_SIGNATURE_DESC__bindgen_ty_1 {
6822 pub Desc_1_0: D3D12_ROOT_SIGNATURE_DESC,
6823 pub Desc_1_1: D3D12_ROOT_SIGNATURE_DESC1,
6824}
6825impl Default for D3D12_VERSIONED_ROOT_SIGNATURE_DESC__bindgen_ty_1 {
6826 fn default() -> Self {
6827 let mut s = ::std::mem::MaybeUninit::<Self>::uninit();
6828 unsafe {
6829 ::std::ptr::write_bytes(s.as_mut_ptr(), 0, 1);
6830 s.assume_init()
6831 }
6832 }
6833}
6834impl ::std::fmt::Debug for D3D12_VERSIONED_ROOT_SIGNATURE_DESC__bindgen_ty_1 {
6835 fn fmt(&self, f: &mut ::std::fmt::Formatter<'_>) -> ::std::fmt::Result {
6836 write!(
6837 f,
6838 "D3D12_VERSIONED_ROOT_SIGNATURE_DESC__bindgen_ty_1 {{ union }}"
6839 )
6840 }
6841}
6842impl Default for D3D12_VERSIONED_ROOT_SIGNATURE_DESC {
6843 fn default() -> Self {
6844 let mut s = ::std::mem::MaybeUninit::<Self>::uninit();
6845 unsafe {
6846 ::std::ptr::write_bytes(s.as_mut_ptr(), 0, 1);
6847 s.assume_init()
6848 }
6849 }
6850}
6851impl ::std::fmt::Debug for D3D12_VERSIONED_ROOT_SIGNATURE_DESC {
6852 fn fmt(&self, f: &mut ::std::fmt::Formatter<'_>) -> ::std::fmt::Result {
6853 write ! (f , "D3D12_VERSIONED_ROOT_SIGNATURE_DESC {{ Version: {:?}, __bindgen_anon_1: {:?} }}" , self . Version , self . __bindgen_anon_1)
6854 }
6855}
6856extern "C" {
6857 pub static IID_ID3D12RootSignatureDeserializer: IID;
6858}
6859#[repr(C)]
6860#[derive(Debug, Default, Copy, Clone, Hash, PartialOrd, Ord, PartialEq, Eq)]
6861pub struct ID3D12RootSignatureDeserializerVtbl {
6862 pub QueryInterface: ::std::option::Option<
6863 unsafe extern "C" fn(
6864 This: *mut ID3D12RootSignatureDeserializer,
6865 riid: *const IID,
6866 ppvObject: *mut *mut ::std::os::raw::c_void,
6867 ) -> HRESULT,
6868 >,
6869 pub AddRef: ::std::option::Option<
6870 unsafe extern "C" fn(
6871 This: *mut ID3D12RootSignatureDeserializer,
6872 ) -> ULONG,
6873 >,
6874 pub Release: ::std::option::Option<
6875 unsafe extern "C" fn(
6876 This: *mut ID3D12RootSignatureDeserializer,
6877 ) -> ULONG,
6878 >,
6879 pub GetRootSignatureDesc: ::std::option::Option<
6880 unsafe extern "C" fn(
6881 This: *mut ID3D12RootSignatureDeserializer,
6882 ) -> *const D3D12_ROOT_SIGNATURE_DESC,
6883 >,
6884}
6885#[repr(C)]
6886#[derive(Debug, Copy, Clone, Hash, PartialOrd, Ord, PartialEq, Eq)]
6887pub struct ID3D12RootSignatureDeserializer {
6888 pub lpVtbl: *mut ID3D12RootSignatureDeserializerVtbl,
6889}
6890impl Default for ID3D12RootSignatureDeserializer {
6891 fn default() -> Self {
6892 let mut s = ::std::mem::MaybeUninit::<Self>::uninit();
6893 unsafe {
6894 ::std::ptr::write_bytes(s.as_mut_ptr(), 0, 1);
6895 s.assume_init()
6896 }
6897 }
6898}
6899extern "C" {
6900 pub static IID_ID3D12VersionedRootSignatureDeserializer: IID;
6901}
6902#[repr(C)]
6903#[derive(Debug, Default, Copy, Clone, Hash, PartialOrd, Ord, PartialEq, Eq)]
6904pub struct ID3D12VersionedRootSignatureDeserializerVtbl {
6905 pub QueryInterface: ::std::option::Option<
6906 unsafe extern "C" fn(
6907 This: *mut ID3D12VersionedRootSignatureDeserializer,
6908 riid: *const IID,
6909 ppvObject: *mut *mut ::std::os::raw::c_void,
6910 ) -> HRESULT,
6911 >,
6912 pub AddRef: ::std::option::Option<
6913 unsafe extern "C" fn(
6914 This: *mut ID3D12VersionedRootSignatureDeserializer,
6915 ) -> ULONG,
6916 >,
6917 pub Release: ::std::option::Option<
6918 unsafe extern "C" fn(
6919 This: *mut ID3D12VersionedRootSignatureDeserializer,
6920 ) -> ULONG,
6921 >,
6922 pub GetRootSignatureDescAtVersion: ::std::option::Option<
6923 unsafe extern "C" fn(
6924 This: *mut ID3D12VersionedRootSignatureDeserializer,
6925 convertToVersion: D3D_ROOT_SIGNATURE_VERSION,
6926 ppDesc: *mut *const D3D12_VERSIONED_ROOT_SIGNATURE_DESC,
6927 ) -> HRESULT,
6928 >,
6929 pub GetUnconvertedRootSignatureDesc: ::std::option::Option<
6930 unsafe extern "C" fn(
6931 This: *mut ID3D12VersionedRootSignatureDeserializer,
6932 )
6933 -> *const D3D12_VERSIONED_ROOT_SIGNATURE_DESC,
6934 >,
6935}
6936#[repr(C)]
6937#[derive(Debug, Copy, Clone, Hash, PartialOrd, Ord, PartialEq, Eq)]
6938pub struct ID3D12VersionedRootSignatureDeserializer {
6939 pub lpVtbl: *mut ID3D12VersionedRootSignatureDeserializerVtbl,
6940}
6941impl Default for ID3D12VersionedRootSignatureDeserializer {
6942 fn default() -> Self {
6943 let mut s = ::std::mem::MaybeUninit::<Self>::uninit();
6944 unsafe {
6945 ::std::ptr::write_bytes(s.as_mut_ptr(), 0, 1);
6946 s.assume_init()
6947 }
6948 }
6949}
6950pub type PFN_D3D12_SERIALIZE_ROOT_SIGNATURE = ::std::option::Option<
6951 unsafe extern "C" fn(
6952 pRootSignature: *const D3D12_ROOT_SIGNATURE_DESC,
6953 Version: D3D_ROOT_SIGNATURE_VERSION,
6954 ppBlob: *mut *mut ID3DBlob,
6955 ppErrorBlob: *mut *mut ID3DBlob,
6956 ) -> HRESULT,
6957>;
6958extern "C" {
6959 pub fn D3D12SerializeRootSignature(
6960 pRootSignature: *const D3D12_ROOT_SIGNATURE_DESC,
6961 Version: D3D_ROOT_SIGNATURE_VERSION,
6962 ppBlob: *mut *mut ID3DBlob,
6963 ppErrorBlob: *mut *mut ID3DBlob,
6964 ) -> HRESULT;
6965}
6966pub type PFN_D3D12_CREATE_ROOT_SIGNATURE_DESERIALIZER = ::std::option::Option<
6967 unsafe extern "C" fn(
6968 pSrcData: LPCVOID,
6969 SrcDataSizeInBytes: SIZE_T,
6970 pRootSignatureDeserializerInterface: *const IID,
6971 ppRootSignatureDeserializer: *mut *mut ::std::os::raw::c_void,
6972 ) -> HRESULT,
6973>;
6974extern "C" {
6975 pub fn D3D12CreateRootSignatureDeserializer(
6976 pSrcData: LPCVOID,
6977 SrcDataSizeInBytes: SIZE_T,
6978 pRootSignatureDeserializerInterface: *const IID,
6979 ppRootSignatureDeserializer: *mut *mut ::std::os::raw::c_void,
6980 ) -> HRESULT;
6981}
6982pub type PFN_D3D12_SERIALIZE_VERSIONED_ROOT_SIGNATURE = ::std::option::Option<
6983 unsafe extern "C" fn(
6984 pRootSignature: *const D3D12_VERSIONED_ROOT_SIGNATURE_DESC,
6985 ppBlob: *mut *mut ID3DBlob,
6986 ppErrorBlob: *mut *mut ID3DBlob,
6987 ) -> HRESULT,
6988>;
6989extern "C" {
6990 pub fn D3D12SerializeVersionedRootSignature(
6991 pRootSignature: *const D3D12_VERSIONED_ROOT_SIGNATURE_DESC,
6992 ppBlob: *mut *mut ID3DBlob,
6993 ppErrorBlob: *mut *mut ID3DBlob,
6994 ) -> HRESULT;
6995}
6996pub type PFN_D3D12_CREATE_VERSIONED_ROOT_SIGNATURE_DESERIALIZER =
6997 ::std::option::Option<
6998 unsafe extern "C" fn(
6999 pSrcData: LPCVOID,
7000 SrcDataSizeInBytes: SIZE_T,
7001 pRootSignatureDeserializerInterface: *const IID,
7002 ppRootSignatureDeserializer: *mut *mut ::std::os::raw::c_void,
7003 ) -> HRESULT,
7004 >;
7005extern "C" {
7006 pub fn D3D12CreateVersionedRootSignatureDeserializer(
7007 pSrcData: LPCVOID,
7008 SrcDataSizeInBytes: SIZE_T,
7009 pRootSignatureDeserializerInterface: *const IID,
7010 ppRootSignatureDeserializer: *mut *mut ::std::os::raw::c_void,
7011 ) -> HRESULT;
7012}
7013#[repr(C)]
7014#[derive(Debug, Default, Copy, Clone, Hash, PartialOrd, Ord, PartialEq, Eq)]
7015pub struct D3D12_CPU_DESCRIPTOR_HANDLE {
7016 pub ptr: SIZE_T,
7017}
7018#[repr(C)]
7019#[derive(Debug, Default, Copy, Clone, Hash, PartialOrd, Ord, PartialEq, Eq)]
7020pub struct D3D12_GPU_DESCRIPTOR_HANDLE {
7021 pub ptr: UINT64,
7022}
7023#[repr(C)]
7024#[derive(Debug, Copy, Clone, Hash, PartialOrd, Ord, PartialEq, Eq)]
7025pub struct D3D12_DISCARD_REGION {
7026 pub NumRects: UINT,
7027 pub pRects: *const D3D12_RECT,
7028 pub FirstSubresource: UINT,
7029 pub NumSubresources: UINT,
7030}
7031impl Default for D3D12_DISCARD_REGION {
7032 fn default() -> Self {
7033 let mut s = ::std::mem::MaybeUninit::<Self>::uninit();
7034 unsafe {
7035 ::std::ptr::write_bytes(s.as_mut_ptr(), 0, 1);
7036 s.assume_init()
7037 }
7038 }
7039}
7040pub const D3D12_QUERY_HEAP_TYPE_D3D12_QUERY_HEAP_TYPE_OCCLUSION:
7041 D3D12_QUERY_HEAP_TYPE = 0;
7042pub const D3D12_QUERY_HEAP_TYPE_D3D12_QUERY_HEAP_TYPE_TIMESTAMP:
7043 D3D12_QUERY_HEAP_TYPE = 1;
7044pub const D3D12_QUERY_HEAP_TYPE_D3D12_QUERY_HEAP_TYPE_PIPELINE_STATISTICS:
7045 D3D12_QUERY_HEAP_TYPE = 2;
7046pub const D3D12_QUERY_HEAP_TYPE_D3D12_QUERY_HEAP_TYPE_SO_STATISTICS:
7047 D3D12_QUERY_HEAP_TYPE = 3;
7048pub const D3D12_QUERY_HEAP_TYPE_D3D12_QUERY_HEAP_TYPE_VIDEO_DECODE_STATISTICS : D3D12_QUERY_HEAP_TYPE = 4 ;
7049pub const D3D12_QUERY_HEAP_TYPE_D3D12_QUERY_HEAP_TYPE_COPY_QUEUE_TIMESTAMP:
7050 D3D12_QUERY_HEAP_TYPE = 5;
7051pub const D3D12_QUERY_HEAP_TYPE_D3D12_QUERY_HEAP_TYPE_PIPELINE_STATISTICS1:
7052 D3D12_QUERY_HEAP_TYPE = 7;
7053pub type D3D12_QUERY_HEAP_TYPE = ::std::os::raw::c_int;
7054#[repr(C)]
7055#[derive(Debug, Copy, Clone, Hash, PartialOrd, Ord, PartialEq, Eq)]
7056pub struct D3D12_QUERY_HEAP_DESC {
7057 pub Type: D3D12_QUERY_HEAP_TYPE,
7058 pub Count: UINT,
7059 pub NodeMask: UINT,
7060}
7061impl Default for D3D12_QUERY_HEAP_DESC {
7062 fn default() -> Self {
7063 let mut s = ::std::mem::MaybeUninit::<Self>::uninit();
7064 unsafe {
7065 ::std::ptr::write_bytes(s.as_mut_ptr(), 0, 1);
7066 s.assume_init()
7067 }
7068 }
7069}
7070pub const D3D12_QUERY_TYPE_D3D12_QUERY_TYPE_OCCLUSION: D3D12_QUERY_TYPE = 0;
7071pub const D3D12_QUERY_TYPE_D3D12_QUERY_TYPE_BINARY_OCCLUSION: D3D12_QUERY_TYPE =
7072 1;
7073pub const D3D12_QUERY_TYPE_D3D12_QUERY_TYPE_TIMESTAMP: D3D12_QUERY_TYPE = 2;
7074pub const D3D12_QUERY_TYPE_D3D12_QUERY_TYPE_PIPELINE_STATISTICS:
7075 D3D12_QUERY_TYPE = 3;
7076pub const D3D12_QUERY_TYPE_D3D12_QUERY_TYPE_SO_STATISTICS_STREAM0:
7077 D3D12_QUERY_TYPE = 4;
7078pub const D3D12_QUERY_TYPE_D3D12_QUERY_TYPE_SO_STATISTICS_STREAM1:
7079 D3D12_QUERY_TYPE = 5;
7080pub const D3D12_QUERY_TYPE_D3D12_QUERY_TYPE_SO_STATISTICS_STREAM2:
7081 D3D12_QUERY_TYPE = 6;
7082pub const D3D12_QUERY_TYPE_D3D12_QUERY_TYPE_SO_STATISTICS_STREAM3:
7083 D3D12_QUERY_TYPE = 7;
7084pub const D3D12_QUERY_TYPE_D3D12_QUERY_TYPE_VIDEO_DECODE_STATISTICS:
7085 D3D12_QUERY_TYPE = 8;
7086pub const D3D12_QUERY_TYPE_D3D12_QUERY_TYPE_PIPELINE_STATISTICS1:
7087 D3D12_QUERY_TYPE = 10;
7088pub type D3D12_QUERY_TYPE = ::std::os::raw::c_int;
7089pub const D3D12_PREDICATION_OP_D3D12_PREDICATION_OP_EQUAL_ZERO:
7090 D3D12_PREDICATION_OP = 0;
7091pub const D3D12_PREDICATION_OP_D3D12_PREDICATION_OP_NOT_EQUAL_ZERO:
7092 D3D12_PREDICATION_OP = 1;
7093pub type D3D12_PREDICATION_OP = ::std::os::raw::c_int;
7094#[repr(C)]
7095#[derive(Debug, Default, Copy, Clone, Hash, PartialOrd, Ord, PartialEq, Eq)]
7096pub struct D3D12_QUERY_DATA_PIPELINE_STATISTICS {
7097 pub IAVertices: UINT64,
7098 pub IAPrimitives: UINT64,
7099 pub VSInvocations: UINT64,
7100 pub GSInvocations: UINT64,
7101 pub GSPrimitives: UINT64,
7102 pub CInvocations: UINT64,
7103 pub CPrimitives: UINT64,
7104 pub PSInvocations: UINT64,
7105 pub HSInvocations: UINT64,
7106 pub DSInvocations: UINT64,
7107 pub CSInvocations: UINT64,
7108}
7109#[repr(C)]
7110#[derive(Debug, Default, Copy, Clone, Hash, PartialOrd, Ord, PartialEq, Eq)]
7111pub struct D3D12_QUERY_DATA_PIPELINE_STATISTICS1 {
7112 pub IAVertices: UINT64,
7113 pub IAPrimitives: UINT64,
7114 pub VSInvocations: UINT64,
7115 pub GSInvocations: UINT64,
7116 pub GSPrimitives: UINT64,
7117 pub CInvocations: UINT64,
7118 pub CPrimitives: UINT64,
7119 pub PSInvocations: UINT64,
7120 pub HSInvocations: UINT64,
7121 pub DSInvocations: UINT64,
7122 pub CSInvocations: UINT64,
7123 pub ASInvocations: UINT64,
7124 pub MSInvocations: UINT64,
7125 pub MSPrimitives: UINT64,
7126}
7127#[repr(C)]
7128#[derive(Debug, Default, Copy, Clone, Hash, PartialOrd, Ord, PartialEq, Eq)]
7129pub struct D3D12_QUERY_DATA_SO_STATISTICS {
7130 pub NumPrimitivesWritten: UINT64,
7131 pub PrimitivesStorageNeeded: UINT64,
7132}
7133#[repr(C)]
7134#[derive(Debug, Default, Copy, Clone, Hash, PartialOrd, Ord, PartialEq, Eq)]
7135pub struct D3D12_STREAM_OUTPUT_BUFFER_VIEW {
7136 pub BufferLocation: D3D12_GPU_VIRTUAL_ADDRESS,
7137 pub SizeInBytes: UINT64,
7138 pub BufferFilledSizeLocation: D3D12_GPU_VIRTUAL_ADDRESS,
7139}
7140#[repr(C)]
7141#[derive(Debug, Default, Copy, Clone, Hash, PartialOrd, Ord, PartialEq, Eq)]
7142pub struct D3D12_DRAW_ARGUMENTS {
7143 pub VertexCountPerInstance: UINT,
7144 pub InstanceCount: UINT,
7145 pub StartVertexLocation: UINT,
7146 pub StartInstanceLocation: UINT,
7147}
7148#[repr(C)]
7149#[derive(Debug, Default, Copy, Clone, Hash, PartialOrd, Ord, PartialEq, Eq)]
7150pub struct D3D12_DRAW_INDEXED_ARGUMENTS {
7151 pub IndexCountPerInstance: UINT,
7152 pub InstanceCount: UINT,
7153 pub StartIndexLocation: UINT,
7154 pub BaseVertexLocation: INT,
7155 pub StartInstanceLocation: UINT,
7156}
7157#[repr(C)]
7158#[derive(Debug, Default, Copy, Clone, Hash, PartialOrd, Ord, PartialEq, Eq)]
7159pub struct D3D12_DISPATCH_ARGUMENTS {
7160 pub ThreadGroupCountX: UINT,
7161 pub ThreadGroupCountY: UINT,
7162 pub ThreadGroupCountZ: UINT,
7163}
7164#[repr(C)]
7165#[derive(Debug, Default, Copy, Clone, Hash, PartialOrd, Ord, PartialEq, Eq)]
7166pub struct D3D12_VERTEX_BUFFER_VIEW {
7167 pub BufferLocation: D3D12_GPU_VIRTUAL_ADDRESS,
7168 pub SizeInBytes: UINT,
7169 pub StrideInBytes: UINT,
7170}
7171#[repr(C)]
7172#[derive(Debug, Copy, Clone, Hash, PartialOrd, Ord, PartialEq, Eq)]
7173pub struct D3D12_INDEX_BUFFER_VIEW {
7174 pub BufferLocation: D3D12_GPU_VIRTUAL_ADDRESS,
7175 pub SizeInBytes: UINT,
7176 pub Format: DXGI_FORMAT,
7177}
7178impl Default for D3D12_INDEX_BUFFER_VIEW {
7179 fn default() -> Self {
7180 let mut s = ::std::mem::MaybeUninit::<Self>::uninit();
7181 unsafe {
7182 ::std::ptr::write_bytes(s.as_mut_ptr(), 0, 1);
7183 s.assume_init()
7184 }
7185 }
7186}
7187pub const D3D12_INDIRECT_ARGUMENT_TYPE_D3D12_INDIRECT_ARGUMENT_TYPE_DRAW:
7188 D3D12_INDIRECT_ARGUMENT_TYPE = 0;
7189pub const D3D12_INDIRECT_ARGUMENT_TYPE_D3D12_INDIRECT_ARGUMENT_TYPE_DRAW_INDEXED : D3D12_INDIRECT_ARGUMENT_TYPE = 1 ;
7190pub const D3D12_INDIRECT_ARGUMENT_TYPE_D3D12_INDIRECT_ARGUMENT_TYPE_DISPATCH:
7191 D3D12_INDIRECT_ARGUMENT_TYPE = 2;
7192pub const D3D12_INDIRECT_ARGUMENT_TYPE_D3D12_INDIRECT_ARGUMENT_TYPE_VERTEX_BUFFER_VIEW : D3D12_INDIRECT_ARGUMENT_TYPE = 3 ;
7193pub const D3D12_INDIRECT_ARGUMENT_TYPE_D3D12_INDIRECT_ARGUMENT_TYPE_INDEX_BUFFER_VIEW : D3D12_INDIRECT_ARGUMENT_TYPE = 4 ;
7194pub const D3D12_INDIRECT_ARGUMENT_TYPE_D3D12_INDIRECT_ARGUMENT_TYPE_CONSTANT:
7195 D3D12_INDIRECT_ARGUMENT_TYPE = 5;
7196pub const D3D12_INDIRECT_ARGUMENT_TYPE_D3D12_INDIRECT_ARGUMENT_TYPE_CONSTANT_BUFFER_VIEW : D3D12_INDIRECT_ARGUMENT_TYPE = 6 ;
7197pub const D3D12_INDIRECT_ARGUMENT_TYPE_D3D12_INDIRECT_ARGUMENT_TYPE_SHADER_RESOURCE_VIEW : D3D12_INDIRECT_ARGUMENT_TYPE = 7 ;
7198pub const D3D12_INDIRECT_ARGUMENT_TYPE_D3D12_INDIRECT_ARGUMENT_TYPE_UNORDERED_ACCESS_VIEW : D3D12_INDIRECT_ARGUMENT_TYPE = 8 ;
7199pub const D3D12_INDIRECT_ARGUMENT_TYPE_D3D12_INDIRECT_ARGUMENT_TYPE_DISPATCH_RAYS : D3D12_INDIRECT_ARGUMENT_TYPE = 9 ;
7200pub const D3D12_INDIRECT_ARGUMENT_TYPE_D3D12_INDIRECT_ARGUMENT_TYPE_DISPATCH_MESH : D3D12_INDIRECT_ARGUMENT_TYPE = 10 ;
7201pub type D3D12_INDIRECT_ARGUMENT_TYPE = ::std::os::raw::c_int;
7202#[repr(C)]
7203#[derive(Copy, Clone)]
7204pub struct D3D12_INDIRECT_ARGUMENT_DESC {
7205 pub Type: D3D12_INDIRECT_ARGUMENT_TYPE,
7206 pub __bindgen_anon_1: D3D12_INDIRECT_ARGUMENT_DESC__bindgen_ty_1,
7207}
7208#[repr(C)]
7209#[derive(Copy, Clone)]
7210pub union D3D12_INDIRECT_ARGUMENT_DESC__bindgen_ty_1 {
7211 pub VertexBuffer: D3D12_INDIRECT_ARGUMENT_DESC__bindgen_ty_1__bindgen_ty_1,
7212 pub Constant: D3D12_INDIRECT_ARGUMENT_DESC__bindgen_ty_1__bindgen_ty_2,
7213 pub ConstantBufferView:
7214 D3D12_INDIRECT_ARGUMENT_DESC__bindgen_ty_1__bindgen_ty_3,
7215 pub ShaderResourceView:
7216 D3D12_INDIRECT_ARGUMENT_DESC__bindgen_ty_1__bindgen_ty_4,
7217 pub UnorderedAccessView:
7218 D3D12_INDIRECT_ARGUMENT_DESC__bindgen_ty_1__bindgen_ty_5,
7219}
7220#[repr(C)]
7221#[derive(Debug, Default, Copy, Clone, Hash, PartialOrd, Ord, PartialEq, Eq)]
7222pub struct D3D12_INDIRECT_ARGUMENT_DESC__bindgen_ty_1__bindgen_ty_1 {
7223 pub Slot: UINT,
7224}
7225#[repr(C)]
7226#[derive(Debug, Default, Copy, Clone, Hash, PartialOrd, Ord, PartialEq, Eq)]
7227pub struct D3D12_INDIRECT_ARGUMENT_DESC__bindgen_ty_1__bindgen_ty_2 {
7228 pub RootParameterIndex: UINT,
7229 pub DestOffsetIn32BitValues: UINT,
7230 pub Num32BitValuesToSet: UINT,
7231}
7232#[repr(C)]
7233#[derive(Debug, Default, Copy, Clone, Hash, PartialOrd, Ord, PartialEq, Eq)]
7234pub struct D3D12_INDIRECT_ARGUMENT_DESC__bindgen_ty_1__bindgen_ty_3 {
7235 pub RootParameterIndex: UINT,
7236}
7237#[repr(C)]
7238#[derive(Debug, Default, Copy, Clone, Hash, PartialOrd, Ord, PartialEq, Eq)]
7239pub struct D3D12_INDIRECT_ARGUMENT_DESC__bindgen_ty_1__bindgen_ty_4 {
7240 pub RootParameterIndex: UINT,
7241}
7242#[repr(C)]
7243#[derive(Debug, Default, Copy, Clone, Hash, PartialOrd, Ord, PartialEq, Eq)]
7244pub struct D3D12_INDIRECT_ARGUMENT_DESC__bindgen_ty_1__bindgen_ty_5 {
7245 pub RootParameterIndex: UINT,
7246}
7247impl Default for D3D12_INDIRECT_ARGUMENT_DESC__bindgen_ty_1 {
7248 fn default() -> Self {
7249 let mut s = ::std::mem::MaybeUninit::<Self>::uninit();
7250 unsafe {
7251 ::std::ptr::write_bytes(s.as_mut_ptr(), 0, 1);
7252 s.assume_init()
7253 }
7254 }
7255}
7256impl ::std::fmt::Debug for D3D12_INDIRECT_ARGUMENT_DESC__bindgen_ty_1 {
7257 fn fmt(&self, f: &mut ::std::fmt::Formatter<'_>) -> ::std::fmt::Result {
7258 write!(f, "D3D12_INDIRECT_ARGUMENT_DESC__bindgen_ty_1 {{ union }}")
7259 }
7260}
7261impl Default for D3D12_INDIRECT_ARGUMENT_DESC {
7262 fn default() -> Self {
7263 let mut s = ::std::mem::MaybeUninit::<Self>::uninit();
7264 unsafe {
7265 ::std::ptr::write_bytes(s.as_mut_ptr(), 0, 1);
7266 s.assume_init()
7267 }
7268 }
7269}
7270impl ::std::fmt::Debug for D3D12_INDIRECT_ARGUMENT_DESC {
7271 fn fmt(&self, f: &mut ::std::fmt::Formatter<'_>) -> ::std::fmt::Result {
7272 write ! (f , "D3D12_INDIRECT_ARGUMENT_DESC {{ Type: {:?}, __bindgen_anon_1: {:?} }}" , self . Type , self . __bindgen_anon_1)
7273 }
7274}
7275#[repr(C)]
7276#[derive(Debug, Copy, Clone, Hash, PartialOrd, Ord, PartialEq, Eq)]
7277pub struct D3D12_COMMAND_SIGNATURE_DESC {
7278 pub ByteStride: UINT,
7279 pub NumArgumentDescs: UINT,
7280 pub pArgumentDescs: *const D3D12_INDIRECT_ARGUMENT_DESC,
7281 pub NodeMask: UINT,
7282}
7283impl Default for D3D12_COMMAND_SIGNATURE_DESC {
7284 fn default() -> Self {
7285 let mut s = ::std::mem::MaybeUninit::<Self>::uninit();
7286 unsafe {
7287 ::std::ptr::write_bytes(s.as_mut_ptr(), 0, 1);
7288 s.assume_init()
7289 }
7290 }
7291}
7292extern "C" {
7293 pub static IID_ID3D12Pageable: IID;
7294}
7295#[repr(C)]
7296#[derive(Debug, Default, Copy, Clone, Hash, PartialOrd, Ord, PartialEq, Eq)]
7297pub struct ID3D12PageableVtbl {
7298 pub QueryInterface: ::std::option::Option<
7299 unsafe extern "C" fn(
7300 This: *mut ID3D12Pageable,
7301 riid: *const IID,
7302 ppvObject: *mut *mut ::std::os::raw::c_void,
7303 ) -> HRESULT,
7304 >,
7305 pub AddRef: ::std::option::Option<
7306 unsafe extern "C" fn(This: *mut ID3D12Pageable) -> ULONG,
7307 >,
7308 pub Release: ::std::option::Option<
7309 unsafe extern "C" fn(This: *mut ID3D12Pageable) -> ULONG,
7310 >,
7311 pub GetPrivateData: ::std::option::Option<
7312 unsafe extern "C" fn(
7313 This: *mut ID3D12Pageable,
7314 guid: *const GUID,
7315 pDataSize: *mut UINT,
7316 pData: *mut ::std::os::raw::c_void,
7317 ) -> HRESULT,
7318 >,
7319 pub SetPrivateData: ::std::option::Option<
7320 unsafe extern "C" fn(
7321 This: *mut ID3D12Pageable,
7322 guid: *const GUID,
7323 DataSize: UINT,
7324 pData: *const ::std::os::raw::c_void,
7325 ) -> HRESULT,
7326 >,
7327 pub SetPrivateDataInterface: ::std::option::Option<
7328 unsafe extern "C" fn(
7329 This: *mut ID3D12Pageable,
7330 guid: *const GUID,
7331 pData: *const IUnknown,
7332 ) -> HRESULT,
7333 >,
7334 pub SetName: ::std::option::Option<
7335 unsafe extern "C" fn(
7336 This: *mut ID3D12Pageable,
7337 Name: LPCWSTR,
7338 ) -> HRESULT,
7339 >,
7340 pub GetDevice: ::std::option::Option<
7341 unsafe extern "C" fn(
7342 This: *mut ID3D12Pageable,
7343 riid: *const IID,
7344 ppvDevice: *mut *mut ::std::os::raw::c_void,
7345 ) -> HRESULT,
7346 >,
7347}
7348#[repr(C)]
7349#[derive(Debug, Copy, Clone, Hash, PartialOrd, Ord, PartialEq, Eq)]
7350pub struct ID3D12Pageable {
7351 pub lpVtbl: *mut ID3D12PageableVtbl,
7352}
7353impl Default for ID3D12Pageable {
7354 fn default() -> Self {
7355 let mut s = ::std::mem::MaybeUninit::<Self>::uninit();
7356 unsafe {
7357 ::std::ptr::write_bytes(s.as_mut_ptr(), 0, 1);
7358 s.assume_init()
7359 }
7360 }
7361}
7362extern "C" {
7363 pub static IID_ID3D12Heap: IID;
7364}
7365#[repr(C)]
7366#[derive(Debug, Default, Copy, Clone, Hash, PartialOrd, Ord, PartialEq, Eq)]
7367pub struct ID3D12HeapVtbl {
7368 pub QueryInterface: ::std::option::Option<
7369 unsafe extern "C" fn(
7370 This: *mut ID3D12Heap,
7371 riid: *const IID,
7372 ppvObject: *mut *mut ::std::os::raw::c_void,
7373 ) -> HRESULT,
7374 >,
7375 pub AddRef: ::std::option::Option<
7376 unsafe extern "C" fn(This: *mut ID3D12Heap) -> ULONG,
7377 >,
7378 pub Release: ::std::option::Option<
7379 unsafe extern "C" fn(This: *mut ID3D12Heap) -> ULONG,
7380 >,
7381 pub GetPrivateData: ::std::option::Option<
7382 unsafe extern "C" fn(
7383 This: *mut ID3D12Heap,
7384 guid: *const GUID,
7385 pDataSize: *mut UINT,
7386 pData: *mut ::std::os::raw::c_void,
7387 ) -> HRESULT,
7388 >,
7389 pub SetPrivateData: ::std::option::Option<
7390 unsafe extern "C" fn(
7391 This: *mut ID3D12Heap,
7392 guid: *const GUID,
7393 DataSize: UINT,
7394 pData: *const ::std::os::raw::c_void,
7395 ) -> HRESULT,
7396 >,
7397 pub SetPrivateDataInterface: ::std::option::Option<
7398 unsafe extern "C" fn(
7399 This: *mut ID3D12Heap,
7400 guid: *const GUID,
7401 pData: *const IUnknown,
7402 ) -> HRESULT,
7403 >,
7404 pub SetName: ::std::option::Option<
7405 unsafe extern "C" fn(This: *mut ID3D12Heap, Name: LPCWSTR) -> HRESULT,
7406 >,
7407 pub GetDevice: ::std::option::Option<
7408 unsafe extern "C" fn(
7409 This: *mut ID3D12Heap,
7410 riid: *const IID,
7411 ppvDevice: *mut *mut ::std::os::raw::c_void,
7412 ) -> HRESULT,
7413 >,
7414 pub GetDesc: ::std::option::Option<
7415 unsafe extern "C" fn(
7416 This: *mut ID3D12Heap,
7417 RetVal: *mut D3D12_HEAP_DESC,
7418 ) -> *mut D3D12_HEAP_DESC,
7419 >,
7420}
7421#[repr(C)]
7422#[derive(Debug, Copy, Clone, Hash, PartialOrd, Ord, PartialEq, Eq)]
7423pub struct ID3D12Heap {
7424 pub lpVtbl: *mut ID3D12HeapVtbl,
7425}
7426impl Default for ID3D12Heap {
7427 fn default() -> Self {
7428 let mut s = ::std::mem::MaybeUninit::<Self>::uninit();
7429 unsafe {
7430 ::std::ptr::write_bytes(s.as_mut_ptr(), 0, 1);
7431 s.assume_init()
7432 }
7433 }
7434}
7435extern "C" {
7436 pub static IID_ID3D12Resource: IID;
7437}
7438#[repr(C)]
7439#[derive(Debug, Default, Copy, Clone, Hash, PartialOrd, Ord, PartialEq, Eq)]
7440pub struct ID3D12ResourceVtbl {
7441 pub QueryInterface: ::std::option::Option<
7442 unsafe extern "C" fn(
7443 This: *mut ID3D12Resource,
7444 riid: *const IID,
7445 ppvObject: *mut *mut ::std::os::raw::c_void,
7446 ) -> HRESULT,
7447 >,
7448 pub AddRef: ::std::option::Option<
7449 unsafe extern "C" fn(This: *mut ID3D12Resource) -> ULONG,
7450 >,
7451 pub Release: ::std::option::Option<
7452 unsafe extern "C" fn(This: *mut ID3D12Resource) -> ULONG,
7453 >,
7454 pub GetPrivateData: ::std::option::Option<
7455 unsafe extern "C" fn(
7456 This: *mut ID3D12Resource,
7457 guid: *const GUID,
7458 pDataSize: *mut UINT,
7459 pData: *mut ::std::os::raw::c_void,
7460 ) -> HRESULT,
7461 >,
7462 pub SetPrivateData: ::std::option::Option<
7463 unsafe extern "C" fn(
7464 This: *mut ID3D12Resource,
7465 guid: *const GUID,
7466 DataSize: UINT,
7467 pData: *const ::std::os::raw::c_void,
7468 ) -> HRESULT,
7469 >,
7470 pub SetPrivateDataInterface: ::std::option::Option<
7471 unsafe extern "C" fn(
7472 This: *mut ID3D12Resource,
7473 guid: *const GUID,
7474 pData: *const IUnknown,
7475 ) -> HRESULT,
7476 >,
7477 pub SetName: ::std::option::Option<
7478 unsafe extern "C" fn(
7479 This: *mut ID3D12Resource,
7480 Name: LPCWSTR,
7481 ) -> HRESULT,
7482 >,
7483 pub GetDevice: ::std::option::Option<
7484 unsafe extern "C" fn(
7485 This: *mut ID3D12Resource,
7486 riid: *const IID,
7487 ppvDevice: *mut *mut ::std::os::raw::c_void,
7488 ) -> HRESULT,
7489 >,
7490 pub Map: ::std::option::Option<
7491 unsafe extern "C" fn(
7492 This: *mut ID3D12Resource,
7493 Subresource: UINT,
7494 pReadRange: *const D3D12_RANGE,
7495 ppData: *mut *mut ::std::os::raw::c_void,
7496 ) -> HRESULT,
7497 >,
7498 pub Unmap: ::std::option::Option<
7499 unsafe extern "C" fn(
7500 This: *mut ID3D12Resource,
7501 Subresource: UINT,
7502 pWrittenRange: *const D3D12_RANGE,
7503 ),
7504 >,
7505 pub GetDesc: ::std::option::Option<
7506 unsafe extern "C" fn(
7507 This: *mut ID3D12Resource,
7508 RetVal: *mut D3D12_RESOURCE_DESC,
7509 ) -> *mut D3D12_RESOURCE_DESC,
7510 >,
7511 pub GetGPUVirtualAddress: ::std::option::Option<
7512 unsafe extern "C" fn(
7513 This: *mut ID3D12Resource,
7514 ) -> D3D12_GPU_VIRTUAL_ADDRESS,
7515 >,
7516 pub WriteToSubresource: ::std::option::Option<
7517 unsafe extern "C" fn(
7518 This: *mut ID3D12Resource,
7519 DstSubresource: UINT,
7520 pDstBox: *const D3D12_BOX,
7521 pSrcData: *const ::std::os::raw::c_void,
7522 SrcRowPitch: UINT,
7523 SrcDepthPitch: UINT,
7524 ) -> HRESULT,
7525 >,
7526 pub ReadFromSubresource: ::std::option::Option<
7527 unsafe extern "C" fn(
7528 This: *mut ID3D12Resource,
7529 pDstData: *mut ::std::os::raw::c_void,
7530 DstRowPitch: UINT,
7531 DstDepthPitch: UINT,
7532 SrcSubresource: UINT,
7533 pSrcBox: *const D3D12_BOX,
7534 ) -> HRESULT,
7535 >,
7536 pub GetHeapProperties: ::std::option::Option<
7537 unsafe extern "C" fn(
7538 This: *mut ID3D12Resource,
7539 pHeapProperties: *mut D3D12_HEAP_PROPERTIES,
7540 pHeapFlags: *mut D3D12_HEAP_FLAGS,
7541 ) -> HRESULT,
7542 >,
7543}
7544#[repr(C)]
7545#[derive(Debug, Copy, Clone, Hash, PartialOrd, Ord, PartialEq, Eq)]
7546pub struct ID3D12Resource {
7547 pub lpVtbl: *mut ID3D12ResourceVtbl,
7548}
7549impl Default for ID3D12Resource {
7550 fn default() -> Self {
7551 let mut s = ::std::mem::MaybeUninit::<Self>::uninit();
7552 unsafe {
7553 ::std::ptr::write_bytes(s.as_mut_ptr(), 0, 1);
7554 s.assume_init()
7555 }
7556 }
7557}
7558extern "C" {
7559 pub static IID_ID3D12CommandAllocator: IID;
7560}
7561#[repr(C)]
7562#[derive(Debug, Default, Copy, Clone, Hash, PartialOrd, Ord, PartialEq, Eq)]
7563pub struct ID3D12CommandAllocatorVtbl {
7564 pub QueryInterface: ::std::option::Option<
7565 unsafe extern "C" fn(
7566 This: *mut ID3D12CommandAllocator,
7567 riid: *const IID,
7568 ppvObject: *mut *mut ::std::os::raw::c_void,
7569 ) -> HRESULT,
7570 >,
7571 pub AddRef: ::std::option::Option<
7572 unsafe extern "C" fn(This: *mut ID3D12CommandAllocator) -> ULONG,
7573 >,
7574 pub Release: ::std::option::Option<
7575 unsafe extern "C" fn(This: *mut ID3D12CommandAllocator) -> ULONG,
7576 >,
7577 pub GetPrivateData: ::std::option::Option<
7578 unsafe extern "C" fn(
7579 This: *mut ID3D12CommandAllocator,
7580 guid: *const GUID,
7581 pDataSize: *mut UINT,
7582 pData: *mut ::std::os::raw::c_void,
7583 ) -> HRESULT,
7584 >,
7585 pub SetPrivateData: ::std::option::Option<
7586 unsafe extern "C" fn(
7587 This: *mut ID3D12CommandAllocator,
7588 guid: *const GUID,
7589 DataSize: UINT,
7590 pData: *const ::std::os::raw::c_void,
7591 ) -> HRESULT,
7592 >,
7593 pub SetPrivateDataInterface: ::std::option::Option<
7594 unsafe extern "C" fn(
7595 This: *mut ID3D12CommandAllocator,
7596 guid: *const GUID,
7597 pData: *const IUnknown,
7598 ) -> HRESULT,
7599 >,
7600 pub SetName: ::std::option::Option<
7601 unsafe extern "C" fn(
7602 This: *mut ID3D12CommandAllocator,
7603 Name: LPCWSTR,
7604 ) -> HRESULT,
7605 >,
7606 pub GetDevice: ::std::option::Option<
7607 unsafe extern "C" fn(
7608 This: *mut ID3D12CommandAllocator,
7609 riid: *const IID,
7610 ppvDevice: *mut *mut ::std::os::raw::c_void,
7611 ) -> HRESULT,
7612 >,
7613 pub Reset: ::std::option::Option<
7614 unsafe extern "C" fn(This: *mut ID3D12CommandAllocator) -> HRESULT,
7615 >,
7616}
7617#[repr(C)]
7618#[derive(Debug, Copy, Clone, Hash, PartialOrd, Ord, PartialEq, Eq)]
7619pub struct ID3D12CommandAllocator {
7620 pub lpVtbl: *mut ID3D12CommandAllocatorVtbl,
7621}
7622impl Default for ID3D12CommandAllocator {
7623 fn default() -> Self {
7624 let mut s = ::std::mem::MaybeUninit::<Self>::uninit();
7625 unsafe {
7626 ::std::ptr::write_bytes(s.as_mut_ptr(), 0, 1);
7627 s.assume_init()
7628 }
7629 }
7630}
7631extern "C" {
7632 pub static IID_ID3D12Fence: IID;
7633}
7634#[repr(C)]
7635#[derive(Debug, Default, Copy, Clone, Hash, PartialOrd, Ord, PartialEq, Eq)]
7636pub struct ID3D12FenceVtbl {
7637 pub QueryInterface: ::std::option::Option<
7638 unsafe extern "C" fn(
7639 This: *mut ID3D12Fence,
7640 riid: *const IID,
7641 ppvObject: *mut *mut ::std::os::raw::c_void,
7642 ) -> HRESULT,
7643 >,
7644 pub AddRef: ::std::option::Option<
7645 unsafe extern "C" fn(This: *mut ID3D12Fence) -> ULONG,
7646 >,
7647 pub Release: ::std::option::Option<
7648 unsafe extern "C" fn(This: *mut ID3D12Fence) -> ULONG,
7649 >,
7650 pub GetPrivateData: ::std::option::Option<
7651 unsafe extern "C" fn(
7652 This: *mut ID3D12Fence,
7653 guid: *const GUID,
7654 pDataSize: *mut UINT,
7655 pData: *mut ::std::os::raw::c_void,
7656 ) -> HRESULT,
7657 >,
7658 pub SetPrivateData: ::std::option::Option<
7659 unsafe extern "C" fn(
7660 This: *mut ID3D12Fence,
7661 guid: *const GUID,
7662 DataSize: UINT,
7663 pData: *const ::std::os::raw::c_void,
7664 ) -> HRESULT,
7665 >,
7666 pub SetPrivateDataInterface: ::std::option::Option<
7667 unsafe extern "C" fn(
7668 This: *mut ID3D12Fence,
7669 guid: *const GUID,
7670 pData: *const IUnknown,
7671 ) -> HRESULT,
7672 >,
7673 pub SetName: ::std::option::Option<
7674 unsafe extern "C" fn(This: *mut ID3D12Fence, Name: LPCWSTR) -> HRESULT,
7675 >,
7676 pub GetDevice: ::std::option::Option<
7677 unsafe extern "C" fn(
7678 This: *mut ID3D12Fence,
7679 riid: *const IID,
7680 ppvDevice: *mut *mut ::std::os::raw::c_void,
7681 ) -> HRESULT,
7682 >,
7683 pub GetCompletedValue: ::std::option::Option<
7684 unsafe extern "C" fn(This: *mut ID3D12Fence) -> UINT64,
7685 >,
7686 pub SetEventOnCompletion: ::std::option::Option<
7687 unsafe extern "C" fn(
7688 This: *mut ID3D12Fence,
7689 Value: UINT64,
7690 hEvent: HANDLE,
7691 ) -> HRESULT,
7692 >,
7693 pub Signal: ::std::option::Option<
7694 unsafe extern "C" fn(This: *mut ID3D12Fence, Value: UINT64) -> HRESULT,
7695 >,
7696}
7697#[repr(C)]
7698#[derive(Debug, Copy, Clone, Hash, PartialOrd, Ord, PartialEq, Eq)]
7699pub struct ID3D12Fence {
7700 pub lpVtbl: *mut ID3D12FenceVtbl,
7701}
7702impl Default for ID3D12Fence {
7703 fn default() -> Self {
7704 let mut s = ::std::mem::MaybeUninit::<Self>::uninit();
7705 unsafe {
7706 ::std::ptr::write_bytes(s.as_mut_ptr(), 0, 1);
7707 s.assume_init()
7708 }
7709 }
7710}
7711extern "C" {
7712 pub static IID_ID3D12Fence1: IID;
7713}
7714#[repr(C)]
7715#[derive(Debug, Default, Copy, Clone, Hash, PartialOrd, Ord, PartialEq, Eq)]
7716pub struct ID3D12Fence1Vtbl {
7717 pub QueryInterface: ::std::option::Option<
7718 unsafe extern "C" fn(
7719 This: *mut ID3D12Fence1,
7720 riid: *const IID,
7721 ppvObject: *mut *mut ::std::os::raw::c_void,
7722 ) -> HRESULT,
7723 >,
7724 pub AddRef: ::std::option::Option<
7725 unsafe extern "C" fn(This: *mut ID3D12Fence1) -> ULONG,
7726 >,
7727 pub Release: ::std::option::Option<
7728 unsafe extern "C" fn(This: *mut ID3D12Fence1) -> ULONG,
7729 >,
7730 pub GetPrivateData: ::std::option::Option<
7731 unsafe extern "C" fn(
7732 This: *mut ID3D12Fence1,
7733 guid: *const GUID,
7734 pDataSize: *mut UINT,
7735 pData: *mut ::std::os::raw::c_void,
7736 ) -> HRESULT,
7737 >,
7738 pub SetPrivateData: ::std::option::Option<
7739 unsafe extern "C" fn(
7740 This: *mut ID3D12Fence1,
7741 guid: *const GUID,
7742 DataSize: UINT,
7743 pData: *const ::std::os::raw::c_void,
7744 ) -> HRESULT,
7745 >,
7746 pub SetPrivateDataInterface: ::std::option::Option<
7747 unsafe extern "C" fn(
7748 This: *mut ID3D12Fence1,
7749 guid: *const GUID,
7750 pData: *const IUnknown,
7751 ) -> HRESULT,
7752 >,
7753 pub SetName: ::std::option::Option<
7754 unsafe extern "C" fn(This: *mut ID3D12Fence1, Name: LPCWSTR) -> HRESULT,
7755 >,
7756 pub GetDevice: ::std::option::Option<
7757 unsafe extern "C" fn(
7758 This: *mut ID3D12Fence1,
7759 riid: *const IID,
7760 ppvDevice: *mut *mut ::std::os::raw::c_void,
7761 ) -> HRESULT,
7762 >,
7763 pub GetCompletedValue: ::std::option::Option<
7764 unsafe extern "C" fn(This: *mut ID3D12Fence1) -> UINT64,
7765 >,
7766 pub SetEventOnCompletion: ::std::option::Option<
7767 unsafe extern "C" fn(
7768 This: *mut ID3D12Fence1,
7769 Value: UINT64,
7770 hEvent: HANDLE,
7771 ) -> HRESULT,
7772 >,
7773 pub Signal: ::std::option::Option<
7774 unsafe extern "C" fn(This: *mut ID3D12Fence1, Value: UINT64) -> HRESULT,
7775 >,
7776 pub GetCreationFlags: ::std::option::Option<
7777 unsafe extern "C" fn(This: *mut ID3D12Fence1) -> D3D12_FENCE_FLAGS,
7778 >,
7779}
7780#[repr(C)]
7781#[derive(Debug, Copy, Clone, Hash, PartialOrd, Ord, PartialEq, Eq)]
7782pub struct ID3D12Fence1 {
7783 pub lpVtbl: *mut ID3D12Fence1Vtbl,
7784}
7785impl Default for ID3D12Fence1 {
7786 fn default() -> Self {
7787 let mut s = ::std::mem::MaybeUninit::<Self>::uninit();
7788 unsafe {
7789 ::std::ptr::write_bytes(s.as_mut_ptr(), 0, 1);
7790 s.assume_init()
7791 }
7792 }
7793}
7794extern "C" {
7795 pub static IID_ID3D12PipelineState: IID;
7796}
7797#[repr(C)]
7798#[derive(Debug, Default, Copy, Clone, Hash, PartialOrd, Ord, PartialEq, Eq)]
7799pub struct ID3D12PipelineStateVtbl {
7800 pub QueryInterface: ::std::option::Option<
7801 unsafe extern "C" fn(
7802 This: *mut ID3D12PipelineState,
7803 riid: *const IID,
7804 ppvObject: *mut *mut ::std::os::raw::c_void,
7805 ) -> HRESULT,
7806 >,
7807 pub AddRef: ::std::option::Option<
7808 unsafe extern "C" fn(This: *mut ID3D12PipelineState) -> ULONG,
7809 >,
7810 pub Release: ::std::option::Option<
7811 unsafe extern "C" fn(This: *mut ID3D12PipelineState) -> ULONG,
7812 >,
7813 pub GetPrivateData: ::std::option::Option<
7814 unsafe extern "C" fn(
7815 This: *mut ID3D12PipelineState,
7816 guid: *const GUID,
7817 pDataSize: *mut UINT,
7818 pData: *mut ::std::os::raw::c_void,
7819 ) -> HRESULT,
7820 >,
7821 pub SetPrivateData: ::std::option::Option<
7822 unsafe extern "C" fn(
7823 This: *mut ID3D12PipelineState,
7824 guid: *const GUID,
7825 DataSize: UINT,
7826 pData: *const ::std::os::raw::c_void,
7827 ) -> HRESULT,
7828 >,
7829 pub SetPrivateDataInterface: ::std::option::Option<
7830 unsafe extern "C" fn(
7831 This: *mut ID3D12PipelineState,
7832 guid: *const GUID,
7833 pData: *const IUnknown,
7834 ) -> HRESULT,
7835 >,
7836 pub SetName: ::std::option::Option<
7837 unsafe extern "C" fn(
7838 This: *mut ID3D12PipelineState,
7839 Name: LPCWSTR,
7840 ) -> HRESULT,
7841 >,
7842 pub GetDevice: ::std::option::Option<
7843 unsafe extern "C" fn(
7844 This: *mut ID3D12PipelineState,
7845 riid: *const IID,
7846 ppvDevice: *mut *mut ::std::os::raw::c_void,
7847 ) -> HRESULT,
7848 >,
7849 pub GetCachedBlob: ::std::option::Option<
7850 unsafe extern "C" fn(
7851 This: *mut ID3D12PipelineState,
7852 ppBlob: *mut *mut ID3DBlob,
7853 ) -> HRESULT,
7854 >,
7855}
7856#[repr(C)]
7857#[derive(Debug, Copy, Clone, Hash, PartialOrd, Ord, PartialEq, Eq)]
7858pub struct ID3D12PipelineState {
7859 pub lpVtbl: *mut ID3D12PipelineStateVtbl,
7860}
7861impl Default for ID3D12PipelineState {
7862 fn default() -> Self {
7863 let mut s = ::std::mem::MaybeUninit::<Self>::uninit();
7864 unsafe {
7865 ::std::ptr::write_bytes(s.as_mut_ptr(), 0, 1);
7866 s.assume_init()
7867 }
7868 }
7869}
7870extern "C" {
7871 pub static IID_ID3D12DescriptorHeap: IID;
7872}
7873#[repr(C)]
7874#[derive(Debug, Default, Copy, Clone, Hash, PartialOrd, Ord, PartialEq, Eq)]
7875pub struct ID3D12DescriptorHeapVtbl {
7876 pub QueryInterface: ::std::option::Option<
7877 unsafe extern "C" fn(
7878 This: *mut ID3D12DescriptorHeap,
7879 riid: *const IID,
7880 ppvObject: *mut *mut ::std::os::raw::c_void,
7881 ) -> HRESULT,
7882 >,
7883 pub AddRef: ::std::option::Option<
7884 unsafe extern "C" fn(This: *mut ID3D12DescriptorHeap) -> ULONG,
7885 >,
7886 pub Release: ::std::option::Option<
7887 unsafe extern "C" fn(This: *mut ID3D12DescriptorHeap) -> ULONG,
7888 >,
7889 pub GetPrivateData: ::std::option::Option<
7890 unsafe extern "C" fn(
7891 This: *mut ID3D12DescriptorHeap,
7892 guid: *const GUID,
7893 pDataSize: *mut UINT,
7894 pData: *mut ::std::os::raw::c_void,
7895 ) -> HRESULT,
7896 >,
7897 pub SetPrivateData: ::std::option::Option<
7898 unsafe extern "C" fn(
7899 This: *mut ID3D12DescriptorHeap,
7900 guid: *const GUID,
7901 DataSize: UINT,
7902 pData: *const ::std::os::raw::c_void,
7903 ) -> HRESULT,
7904 >,
7905 pub SetPrivateDataInterface: ::std::option::Option<
7906 unsafe extern "C" fn(
7907 This: *mut ID3D12DescriptorHeap,
7908 guid: *const GUID,
7909 pData: *const IUnknown,
7910 ) -> HRESULT,
7911 >,
7912 pub SetName: ::std::option::Option<
7913 unsafe extern "C" fn(
7914 This: *mut ID3D12DescriptorHeap,
7915 Name: LPCWSTR,
7916 ) -> HRESULT,
7917 >,
7918 pub GetDevice: ::std::option::Option<
7919 unsafe extern "C" fn(
7920 This: *mut ID3D12DescriptorHeap,
7921 riid: *const IID,
7922 ppvDevice: *mut *mut ::std::os::raw::c_void,
7923 ) -> HRESULT,
7924 >,
7925 pub GetDesc: ::std::option::Option<
7926 unsafe extern "C" fn(
7927 This: *mut ID3D12DescriptorHeap,
7928 RetVal: *mut D3D12_DESCRIPTOR_HEAP_DESC,
7929 ) -> *mut D3D12_DESCRIPTOR_HEAP_DESC,
7930 >,
7931 pub GetCPUDescriptorHandleForHeapStart: ::std::option::Option<
7932 unsafe extern "C" fn(
7933 This: *mut ID3D12DescriptorHeap,
7934 RetVal: *mut D3D12_CPU_DESCRIPTOR_HANDLE,
7935 ) -> *mut D3D12_CPU_DESCRIPTOR_HANDLE,
7936 >,
7937 pub GetGPUDescriptorHandleForHeapStart: ::std::option::Option<
7938 unsafe extern "C" fn(
7939 This: *mut ID3D12DescriptorHeap,
7940 RetVal: *mut D3D12_GPU_DESCRIPTOR_HANDLE,
7941 ) -> *mut D3D12_GPU_DESCRIPTOR_HANDLE,
7942 >,
7943}
7944#[repr(C)]
7945#[derive(Debug, Copy, Clone, Hash, PartialOrd, Ord, PartialEq, Eq)]
7946pub struct ID3D12DescriptorHeap {
7947 pub lpVtbl: *mut ID3D12DescriptorHeapVtbl,
7948}
7949impl Default for ID3D12DescriptorHeap {
7950 fn default() -> Self {
7951 let mut s = ::std::mem::MaybeUninit::<Self>::uninit();
7952 unsafe {
7953 ::std::ptr::write_bytes(s.as_mut_ptr(), 0, 1);
7954 s.assume_init()
7955 }
7956 }
7957}
7958extern "C" {
7959 pub static IID_ID3D12QueryHeap: IID;
7960}
7961#[repr(C)]
7962#[derive(Debug, Default, Copy, Clone, Hash, PartialOrd, Ord, PartialEq, Eq)]
7963pub struct ID3D12QueryHeapVtbl {
7964 pub QueryInterface: ::std::option::Option<
7965 unsafe extern "C" fn(
7966 This: *mut ID3D12QueryHeap,
7967 riid: *const IID,
7968 ppvObject: *mut *mut ::std::os::raw::c_void,
7969 ) -> HRESULT,
7970 >,
7971 pub AddRef: ::std::option::Option<
7972 unsafe extern "C" fn(This: *mut ID3D12QueryHeap) -> ULONG,
7973 >,
7974 pub Release: ::std::option::Option<
7975 unsafe extern "C" fn(This: *mut ID3D12QueryHeap) -> ULONG,
7976 >,
7977 pub GetPrivateData: ::std::option::Option<
7978 unsafe extern "C" fn(
7979 This: *mut ID3D12QueryHeap,
7980 guid: *const GUID,
7981 pDataSize: *mut UINT,
7982 pData: *mut ::std::os::raw::c_void,
7983 ) -> HRESULT,
7984 >,
7985 pub SetPrivateData: ::std::option::Option<
7986 unsafe extern "C" fn(
7987 This: *mut ID3D12QueryHeap,
7988 guid: *const GUID,
7989 DataSize: UINT,
7990 pData: *const ::std::os::raw::c_void,
7991 ) -> HRESULT,
7992 >,
7993 pub SetPrivateDataInterface: ::std::option::Option<
7994 unsafe extern "C" fn(
7995 This: *mut ID3D12QueryHeap,
7996 guid: *const GUID,
7997 pData: *const IUnknown,
7998 ) -> HRESULT,
7999 >,
8000 pub SetName: ::std::option::Option<
8001 unsafe extern "C" fn(
8002 This: *mut ID3D12QueryHeap,
8003 Name: LPCWSTR,
8004 ) -> HRESULT,
8005 >,
8006 pub GetDevice: ::std::option::Option<
8007 unsafe extern "C" fn(
8008 This: *mut ID3D12QueryHeap,
8009 riid: *const IID,
8010 ppvDevice: *mut *mut ::std::os::raw::c_void,
8011 ) -> HRESULT,
8012 >,
8013}
8014#[repr(C)]
8015#[derive(Debug, Copy, Clone, Hash, PartialOrd, Ord, PartialEq, Eq)]
8016pub struct ID3D12QueryHeap {
8017 pub lpVtbl: *mut ID3D12QueryHeapVtbl,
8018}
8019impl Default for ID3D12QueryHeap {
8020 fn default() -> Self {
8021 let mut s = ::std::mem::MaybeUninit::<Self>::uninit();
8022 unsafe {
8023 ::std::ptr::write_bytes(s.as_mut_ptr(), 0, 1);
8024 s.assume_init()
8025 }
8026 }
8027}
8028extern "C" {
8029 pub static IID_ID3D12CommandSignature: IID;
8030}
8031#[repr(C)]
8032#[derive(Debug, Default, Copy, Clone, Hash, PartialOrd, Ord, PartialEq, Eq)]
8033pub struct ID3D12CommandSignatureVtbl {
8034 pub QueryInterface: ::std::option::Option<
8035 unsafe extern "C" fn(
8036 This: *mut ID3D12CommandSignature,
8037 riid: *const IID,
8038 ppvObject: *mut *mut ::std::os::raw::c_void,
8039 ) -> HRESULT,
8040 >,
8041 pub AddRef: ::std::option::Option<
8042 unsafe extern "C" fn(This: *mut ID3D12CommandSignature) -> ULONG,
8043 >,
8044 pub Release: ::std::option::Option<
8045 unsafe extern "C" fn(This: *mut ID3D12CommandSignature) -> ULONG,
8046 >,
8047 pub GetPrivateData: ::std::option::Option<
8048 unsafe extern "C" fn(
8049 This: *mut ID3D12CommandSignature,
8050 guid: *const GUID,
8051 pDataSize: *mut UINT,
8052 pData: *mut ::std::os::raw::c_void,
8053 ) -> HRESULT,
8054 >,
8055 pub SetPrivateData: ::std::option::Option<
8056 unsafe extern "C" fn(
8057 This: *mut ID3D12CommandSignature,
8058 guid: *const GUID,
8059 DataSize: UINT,
8060 pData: *const ::std::os::raw::c_void,
8061 ) -> HRESULT,
8062 >,
8063 pub SetPrivateDataInterface: ::std::option::Option<
8064 unsafe extern "C" fn(
8065 This: *mut ID3D12CommandSignature,
8066 guid: *const GUID,
8067 pData: *const IUnknown,
8068 ) -> HRESULT,
8069 >,
8070 pub SetName: ::std::option::Option<
8071 unsafe extern "C" fn(
8072 This: *mut ID3D12CommandSignature,
8073 Name: LPCWSTR,
8074 ) -> HRESULT,
8075 >,
8076 pub GetDevice: ::std::option::Option<
8077 unsafe extern "C" fn(
8078 This: *mut ID3D12CommandSignature,
8079 riid: *const IID,
8080 ppvDevice: *mut *mut ::std::os::raw::c_void,
8081 ) -> HRESULT,
8082 >,
8083}
8084#[repr(C)]
8085#[derive(Debug, Copy, Clone, Hash, PartialOrd, Ord, PartialEq, Eq)]
8086pub struct ID3D12CommandSignature {
8087 pub lpVtbl: *mut ID3D12CommandSignatureVtbl,
8088}
8089impl Default for ID3D12CommandSignature {
8090 fn default() -> Self {
8091 let mut s = ::std::mem::MaybeUninit::<Self>::uninit();
8092 unsafe {
8093 ::std::ptr::write_bytes(s.as_mut_ptr(), 0, 1);
8094 s.assume_init()
8095 }
8096 }
8097}
8098extern "C" {
8099 pub static IID_ID3D12CommandList: IID;
8100}
8101#[repr(C)]
8102#[derive(Debug, Default, Copy, Clone, Hash, PartialOrd, Ord, PartialEq, Eq)]
8103pub struct ID3D12CommandListVtbl {
8104 pub QueryInterface: ::std::option::Option<
8105 unsafe extern "C" fn(
8106 This: *mut ID3D12CommandList,
8107 riid: *const IID,
8108 ppvObject: *mut *mut ::std::os::raw::c_void,
8109 ) -> HRESULT,
8110 >,
8111 pub AddRef: ::std::option::Option<
8112 unsafe extern "C" fn(This: *mut ID3D12CommandList) -> ULONG,
8113 >,
8114 pub Release: ::std::option::Option<
8115 unsafe extern "C" fn(This: *mut ID3D12CommandList) -> ULONG,
8116 >,
8117 pub GetPrivateData: ::std::option::Option<
8118 unsafe extern "C" fn(
8119 This: *mut ID3D12CommandList,
8120 guid: *const GUID,
8121 pDataSize: *mut UINT,
8122 pData: *mut ::std::os::raw::c_void,
8123 ) -> HRESULT,
8124 >,
8125 pub SetPrivateData: ::std::option::Option<
8126 unsafe extern "C" fn(
8127 This: *mut ID3D12CommandList,
8128 guid: *const GUID,
8129 DataSize: UINT,
8130 pData: *const ::std::os::raw::c_void,
8131 ) -> HRESULT,
8132 >,
8133 pub SetPrivateDataInterface: ::std::option::Option<
8134 unsafe extern "C" fn(
8135 This: *mut ID3D12CommandList,
8136 guid: *const GUID,
8137 pData: *const IUnknown,
8138 ) -> HRESULT,
8139 >,
8140 pub SetName: ::std::option::Option<
8141 unsafe extern "C" fn(
8142 This: *mut ID3D12CommandList,
8143 Name: LPCWSTR,
8144 ) -> HRESULT,
8145 >,
8146 pub GetDevice: ::std::option::Option<
8147 unsafe extern "C" fn(
8148 This: *mut ID3D12CommandList,
8149 riid: *const IID,
8150 ppvDevice: *mut *mut ::std::os::raw::c_void,
8151 ) -> HRESULT,
8152 >,
8153 pub GetType: ::std::option::Option<
8154 unsafe extern "C" fn(
8155 This: *mut ID3D12CommandList,
8156 ) -> D3D12_COMMAND_LIST_TYPE,
8157 >,
8158}
8159#[repr(C)]
8160#[derive(Debug, Copy, Clone, Hash, PartialOrd, Ord, PartialEq, Eq)]
8161pub struct ID3D12CommandList {
8162 pub lpVtbl: *mut ID3D12CommandListVtbl,
8163}
8164impl Default for ID3D12CommandList {
8165 fn default() -> Self {
8166 let mut s = ::std::mem::MaybeUninit::<Self>::uninit();
8167 unsafe {
8168 ::std::ptr::write_bytes(s.as_mut_ptr(), 0, 1);
8169 s.assume_init()
8170 }
8171 }
8172}
8173extern "C" {
8174 pub static IID_ID3D12GraphicsCommandList: IID;
8175}
8176#[repr(C)]
8177#[derive(Debug, Default, Copy, Clone, Hash, PartialOrd, Ord, PartialEq, Eq)]
8178pub struct ID3D12GraphicsCommandListVtbl {
8179 pub QueryInterface: ::std::option::Option<
8180 unsafe extern "C" fn(
8181 This: *mut ID3D12GraphicsCommandList,
8182 riid: *const IID,
8183 ppvObject: *mut *mut ::std::os::raw::c_void,
8184 ) -> HRESULT,
8185 >,
8186 pub AddRef: ::std::option::Option<
8187 unsafe extern "C" fn(This: *mut ID3D12GraphicsCommandList) -> ULONG,
8188 >,
8189 pub Release: ::std::option::Option<
8190 unsafe extern "C" fn(This: *mut ID3D12GraphicsCommandList) -> ULONG,
8191 >,
8192 pub GetPrivateData: ::std::option::Option<
8193 unsafe extern "C" fn(
8194 This: *mut ID3D12GraphicsCommandList,
8195 guid: *const GUID,
8196 pDataSize: *mut UINT,
8197 pData: *mut ::std::os::raw::c_void,
8198 ) -> HRESULT,
8199 >,
8200 pub SetPrivateData: ::std::option::Option<
8201 unsafe extern "C" fn(
8202 This: *mut ID3D12GraphicsCommandList,
8203 guid: *const GUID,
8204 DataSize: UINT,
8205 pData: *const ::std::os::raw::c_void,
8206 ) -> HRESULT,
8207 >,
8208 pub SetPrivateDataInterface: ::std::option::Option<
8209 unsafe extern "C" fn(
8210 This: *mut ID3D12GraphicsCommandList,
8211 guid: *const GUID,
8212 pData: *const IUnknown,
8213 ) -> HRESULT,
8214 >,
8215 pub SetName: ::std::option::Option<
8216 unsafe extern "C" fn(
8217 This: *mut ID3D12GraphicsCommandList,
8218 Name: LPCWSTR,
8219 ) -> HRESULT,
8220 >,
8221 pub GetDevice: ::std::option::Option<
8222 unsafe extern "C" fn(
8223 This: *mut ID3D12GraphicsCommandList,
8224 riid: *const IID,
8225 ppvDevice: *mut *mut ::std::os::raw::c_void,
8226 ) -> HRESULT,
8227 >,
8228 pub GetType: ::std::option::Option<
8229 unsafe extern "C" fn(
8230 This: *mut ID3D12GraphicsCommandList,
8231 ) -> D3D12_COMMAND_LIST_TYPE,
8232 >,
8233 pub Close: ::std::option::Option<
8234 unsafe extern "C" fn(This: *mut ID3D12GraphicsCommandList) -> HRESULT,
8235 >,
8236 pub Reset: ::std::option::Option<
8237 unsafe extern "C" fn(
8238 This: *mut ID3D12GraphicsCommandList,
8239 pAllocator: *mut ID3D12CommandAllocator,
8240 pInitialState: *mut ID3D12PipelineState,
8241 ) -> HRESULT,
8242 >,
8243 pub ClearState: ::std::option::Option<
8244 unsafe extern "C" fn(
8245 This: *mut ID3D12GraphicsCommandList,
8246 pPipelineState: *mut ID3D12PipelineState,
8247 ),
8248 >,
8249 pub DrawInstanced: ::std::option::Option<
8250 unsafe extern "C" fn(
8251 This: *mut ID3D12GraphicsCommandList,
8252 VertexCountPerInstance: UINT,
8253 InstanceCount: UINT,
8254 StartVertexLocation: UINT,
8255 StartInstanceLocation: UINT,
8256 ),
8257 >,
8258 pub DrawIndexedInstanced: ::std::option::Option<
8259 unsafe extern "C" fn(
8260 This: *mut ID3D12GraphicsCommandList,
8261 IndexCountPerInstance: UINT,
8262 InstanceCount: UINT,
8263 StartIndexLocation: UINT,
8264 BaseVertexLocation: INT,
8265 StartInstanceLocation: UINT,
8266 ),
8267 >,
8268 pub Dispatch: ::std::option::Option<
8269 unsafe extern "C" fn(
8270 This: *mut ID3D12GraphicsCommandList,
8271 ThreadGroupCountX: UINT,
8272 ThreadGroupCountY: UINT,
8273 ThreadGroupCountZ: UINT,
8274 ),
8275 >,
8276 pub CopyBufferRegion: ::std::option::Option<
8277 unsafe extern "C" fn(
8278 This: *mut ID3D12GraphicsCommandList,
8279 pDstBuffer: *mut ID3D12Resource,
8280 DstOffset: UINT64,
8281 pSrcBuffer: *mut ID3D12Resource,
8282 SrcOffset: UINT64,
8283 NumBytes: UINT64,
8284 ),
8285 >,
8286 pub CopyTextureRegion: ::std::option::Option<
8287 unsafe extern "C" fn(
8288 This: *mut ID3D12GraphicsCommandList,
8289 pDst: *const D3D12_TEXTURE_COPY_LOCATION,
8290 DstX: UINT,
8291 DstY: UINT,
8292 DstZ: UINT,
8293 pSrc: *const D3D12_TEXTURE_COPY_LOCATION,
8294 pSrcBox: *const D3D12_BOX,
8295 ),
8296 >,
8297 pub CopyResource: ::std::option::Option<
8298 unsafe extern "C" fn(
8299 This: *mut ID3D12GraphicsCommandList,
8300 pDstResource: *mut ID3D12Resource,
8301 pSrcResource: *mut ID3D12Resource,
8302 ),
8303 >,
8304 pub CopyTiles: ::std::option::Option<
8305 unsafe extern "C" fn(
8306 This: *mut ID3D12GraphicsCommandList,
8307 pTiledResource: *mut ID3D12Resource,
8308 pTileRegionStartCoordinate: *const D3D12_TILED_RESOURCE_COORDINATE,
8309 pTileRegionSize: *const D3D12_TILE_REGION_SIZE,
8310 pBuffer: *mut ID3D12Resource,
8311 BufferStartOffsetInBytes: UINT64,
8312 Flags: D3D12_TILE_COPY_FLAGS,
8313 ),
8314 >,
8315 pub ResolveSubresource: ::std::option::Option<
8316 unsafe extern "C" fn(
8317 This: *mut ID3D12GraphicsCommandList,
8318 pDstResource: *mut ID3D12Resource,
8319 DstSubresource: UINT,
8320 pSrcResource: *mut ID3D12Resource,
8321 SrcSubresource: UINT,
8322 Format: DXGI_FORMAT,
8323 ),
8324 >,
8325 pub IASetPrimitiveTopology: ::std::option::Option<
8326 unsafe extern "C" fn(
8327 This: *mut ID3D12GraphicsCommandList,
8328 PrimitiveTopology: D3D12_PRIMITIVE_TOPOLOGY,
8329 ),
8330 >,
8331 pub RSSetViewports: ::std::option::Option<
8332 unsafe extern "C" fn(
8333 This: *mut ID3D12GraphicsCommandList,
8334 NumViewports: UINT,
8335 pViewports: *const D3D12_VIEWPORT,
8336 ),
8337 >,
8338 pub RSSetScissorRects: ::std::option::Option<
8339 unsafe extern "C" fn(
8340 This: *mut ID3D12GraphicsCommandList,
8341 NumRects: UINT,
8342 pRects: *const D3D12_RECT,
8343 ),
8344 >,
8345 pub OMSetBlendFactor: ::std::option::Option<
8346 unsafe extern "C" fn(
8347 This: *mut ID3D12GraphicsCommandList,
8348 BlendFactor: *const FLOAT,
8349 ),
8350 >,
8351 pub OMSetStencilRef: ::std::option::Option<
8352 unsafe extern "C" fn(
8353 This: *mut ID3D12GraphicsCommandList,
8354 StencilRef: UINT,
8355 ),
8356 >,
8357 pub SetPipelineState: ::std::option::Option<
8358 unsafe extern "C" fn(
8359 This: *mut ID3D12GraphicsCommandList,
8360 pPipelineState: *mut ID3D12PipelineState,
8361 ),
8362 >,
8363 pub ResourceBarrier: ::std::option::Option<
8364 unsafe extern "C" fn(
8365 This: *mut ID3D12GraphicsCommandList,
8366 NumBarriers: UINT,
8367 pBarriers: *const D3D12_RESOURCE_BARRIER,
8368 ),
8369 >,
8370 pub ExecuteBundle: ::std::option::Option<
8371 unsafe extern "C" fn(
8372 This: *mut ID3D12GraphicsCommandList,
8373 pCommandList: *mut ID3D12GraphicsCommandList,
8374 ),
8375 >,
8376 pub SetDescriptorHeaps: ::std::option::Option<
8377 unsafe extern "C" fn(
8378 This: *mut ID3D12GraphicsCommandList,
8379 NumDescriptorHeaps: UINT,
8380 ppDescriptorHeaps: *const *mut ID3D12DescriptorHeap,
8381 ),
8382 >,
8383 pub SetComputeRootSignature: ::std::option::Option<
8384 unsafe extern "C" fn(
8385 This: *mut ID3D12GraphicsCommandList,
8386 pRootSignature: *mut ID3D12RootSignature,
8387 ),
8388 >,
8389 pub SetGraphicsRootSignature: ::std::option::Option<
8390 unsafe extern "C" fn(
8391 This: *mut ID3D12GraphicsCommandList,
8392 pRootSignature: *mut ID3D12RootSignature,
8393 ),
8394 >,
8395 pub SetComputeRootDescriptorTable: ::std::option::Option<
8396 unsafe extern "C" fn(
8397 This: *mut ID3D12GraphicsCommandList,
8398 RootParameterIndex: UINT,
8399 BaseDescriptor: D3D12_GPU_DESCRIPTOR_HANDLE,
8400 ),
8401 >,
8402 pub SetGraphicsRootDescriptorTable: ::std::option::Option<
8403 unsafe extern "C" fn(
8404 This: *mut ID3D12GraphicsCommandList,
8405 RootParameterIndex: UINT,
8406 BaseDescriptor: D3D12_GPU_DESCRIPTOR_HANDLE,
8407 ),
8408 >,
8409 pub SetComputeRoot32BitConstant: ::std::option::Option<
8410 unsafe extern "C" fn(
8411 This: *mut ID3D12GraphicsCommandList,
8412 RootParameterIndex: UINT,
8413 SrcData: UINT,
8414 DestOffsetIn32BitValues: UINT,
8415 ),
8416 >,
8417 pub SetGraphicsRoot32BitConstant: ::std::option::Option<
8418 unsafe extern "C" fn(
8419 This: *mut ID3D12GraphicsCommandList,
8420 RootParameterIndex: UINT,
8421 SrcData: UINT,
8422 DestOffsetIn32BitValues: UINT,
8423 ),
8424 >,
8425 pub SetComputeRoot32BitConstants: ::std::option::Option<
8426 unsafe extern "C" fn(
8427 This: *mut ID3D12GraphicsCommandList,
8428 RootParameterIndex: UINT,
8429 Num32BitValuesToSet: UINT,
8430 pSrcData: *const ::std::os::raw::c_void,
8431 DestOffsetIn32BitValues: UINT,
8432 ),
8433 >,
8434 pub SetGraphicsRoot32BitConstants: ::std::option::Option<
8435 unsafe extern "C" fn(
8436 This: *mut ID3D12GraphicsCommandList,
8437 RootParameterIndex: UINT,
8438 Num32BitValuesToSet: UINT,
8439 pSrcData: *const ::std::os::raw::c_void,
8440 DestOffsetIn32BitValues: UINT,
8441 ),
8442 >,
8443 pub SetComputeRootConstantBufferView: ::std::option::Option<
8444 unsafe extern "C" fn(
8445 This: *mut ID3D12GraphicsCommandList,
8446 RootParameterIndex: UINT,
8447 BufferLocation: D3D12_GPU_VIRTUAL_ADDRESS,
8448 ),
8449 >,
8450 pub SetGraphicsRootConstantBufferView: ::std::option::Option<
8451 unsafe extern "C" fn(
8452 This: *mut ID3D12GraphicsCommandList,
8453 RootParameterIndex: UINT,
8454 BufferLocation: D3D12_GPU_VIRTUAL_ADDRESS,
8455 ),
8456 >,
8457 pub SetComputeRootShaderResourceView: ::std::option::Option<
8458 unsafe extern "C" fn(
8459 This: *mut ID3D12GraphicsCommandList,
8460 RootParameterIndex: UINT,
8461 BufferLocation: D3D12_GPU_VIRTUAL_ADDRESS,
8462 ),
8463 >,
8464 pub SetGraphicsRootShaderResourceView: ::std::option::Option<
8465 unsafe extern "C" fn(
8466 This: *mut ID3D12GraphicsCommandList,
8467 RootParameterIndex: UINT,
8468 BufferLocation: D3D12_GPU_VIRTUAL_ADDRESS,
8469 ),
8470 >,
8471 pub SetComputeRootUnorderedAccessView: ::std::option::Option<
8472 unsafe extern "C" fn(
8473 This: *mut ID3D12GraphicsCommandList,
8474 RootParameterIndex: UINT,
8475 BufferLocation: D3D12_GPU_VIRTUAL_ADDRESS,
8476 ),
8477 >,
8478 pub SetGraphicsRootUnorderedAccessView: ::std::option::Option<
8479 unsafe extern "C" fn(
8480 This: *mut ID3D12GraphicsCommandList,
8481 RootParameterIndex: UINT,
8482 BufferLocation: D3D12_GPU_VIRTUAL_ADDRESS,
8483 ),
8484 >,
8485 pub IASetIndexBuffer: ::std::option::Option<
8486 unsafe extern "C" fn(
8487 This: *mut ID3D12GraphicsCommandList,
8488 pView: *const D3D12_INDEX_BUFFER_VIEW,
8489 ),
8490 >,
8491 pub IASetVertexBuffers: ::std::option::Option<
8492 unsafe extern "C" fn(
8493 This: *mut ID3D12GraphicsCommandList,
8494 StartSlot: UINT,
8495 NumViews: UINT,
8496 pViews: *const D3D12_VERTEX_BUFFER_VIEW,
8497 ),
8498 >,
8499 pub SOSetTargets: ::std::option::Option<
8500 unsafe extern "C" fn(
8501 This: *mut ID3D12GraphicsCommandList,
8502 StartSlot: UINT,
8503 NumViews: UINT,
8504 pViews: *const D3D12_STREAM_OUTPUT_BUFFER_VIEW,
8505 ),
8506 >,
8507 pub OMSetRenderTargets: ::std::option::Option<
8508 unsafe extern "C" fn(
8509 This: *mut ID3D12GraphicsCommandList,
8510 NumRenderTargetDescriptors: UINT,
8511 pRenderTargetDescriptors: *const D3D12_CPU_DESCRIPTOR_HANDLE,
8512 RTsSingleHandleToDescriptorRange: BOOL,
8513 pDepthStencilDescriptor: *const D3D12_CPU_DESCRIPTOR_HANDLE,
8514 ),
8515 >,
8516 pub ClearDepthStencilView: ::std::option::Option<
8517 unsafe extern "C" fn(
8518 This: *mut ID3D12GraphicsCommandList,
8519 DepthStencilView: D3D12_CPU_DESCRIPTOR_HANDLE,
8520 ClearFlags: D3D12_CLEAR_FLAGS,
8521 Depth: FLOAT,
8522 Stencil: UINT8,
8523 NumRects: UINT,
8524 pRects: *const D3D12_RECT,
8525 ),
8526 >,
8527 pub ClearRenderTargetView: ::std::option::Option<
8528 unsafe extern "C" fn(
8529 This: *mut ID3D12GraphicsCommandList,
8530 RenderTargetView: D3D12_CPU_DESCRIPTOR_HANDLE,
8531 ColorRGBA: *const FLOAT,
8532 NumRects: UINT,
8533 pRects: *const D3D12_RECT,
8534 ),
8535 >,
8536 pub ClearUnorderedAccessViewUint: ::std::option::Option<
8537 unsafe extern "C" fn(
8538 This: *mut ID3D12GraphicsCommandList,
8539 ViewGPUHandleInCurrentHeap: D3D12_GPU_DESCRIPTOR_HANDLE,
8540 ViewCPUHandle: D3D12_CPU_DESCRIPTOR_HANDLE,
8541 pResource: *mut ID3D12Resource,
8542 Values: *const UINT,
8543 NumRects: UINT,
8544 pRects: *const D3D12_RECT,
8545 ),
8546 >,
8547 pub ClearUnorderedAccessViewFloat: ::std::option::Option<
8548 unsafe extern "C" fn(
8549 This: *mut ID3D12GraphicsCommandList,
8550 ViewGPUHandleInCurrentHeap: D3D12_GPU_DESCRIPTOR_HANDLE,
8551 ViewCPUHandle: D3D12_CPU_DESCRIPTOR_HANDLE,
8552 pResource: *mut ID3D12Resource,
8553 Values: *const FLOAT,
8554 NumRects: UINT,
8555 pRects: *const D3D12_RECT,
8556 ),
8557 >,
8558 pub DiscardResource: ::std::option::Option<
8559 unsafe extern "C" fn(
8560 This: *mut ID3D12GraphicsCommandList,
8561 pResource: *mut ID3D12Resource,
8562 pRegion: *const D3D12_DISCARD_REGION,
8563 ),
8564 >,
8565 pub BeginQuery: ::std::option::Option<
8566 unsafe extern "C" fn(
8567 This: *mut ID3D12GraphicsCommandList,
8568 pQueryHeap: *mut ID3D12QueryHeap,
8569 Type: D3D12_QUERY_TYPE,
8570 Index: UINT,
8571 ),
8572 >,
8573 pub EndQuery: ::std::option::Option<
8574 unsafe extern "C" fn(
8575 This: *mut ID3D12GraphicsCommandList,
8576 pQueryHeap: *mut ID3D12QueryHeap,
8577 Type: D3D12_QUERY_TYPE,
8578 Index: UINT,
8579 ),
8580 >,
8581 pub ResolveQueryData: ::std::option::Option<
8582 unsafe extern "C" fn(
8583 This: *mut ID3D12GraphicsCommandList,
8584 pQueryHeap: *mut ID3D12QueryHeap,
8585 Type: D3D12_QUERY_TYPE,
8586 StartIndex: UINT,
8587 NumQueries: UINT,
8588 pDestinationBuffer: *mut ID3D12Resource,
8589 AlignedDestinationBufferOffset: UINT64,
8590 ),
8591 >,
8592 pub SetPredication: ::std::option::Option<
8593 unsafe extern "C" fn(
8594 This: *mut ID3D12GraphicsCommandList,
8595 pBuffer: *mut ID3D12Resource,
8596 AlignedBufferOffset: UINT64,
8597 Operation: D3D12_PREDICATION_OP,
8598 ),
8599 >,
8600 pub SetMarker: ::std::option::Option<
8601 unsafe extern "C" fn(
8602 This: *mut ID3D12GraphicsCommandList,
8603 Metadata: UINT,
8604 pData: *const ::std::os::raw::c_void,
8605 Size: UINT,
8606 ),
8607 >,
8608 pub BeginEvent: ::std::option::Option<
8609 unsafe extern "C" fn(
8610 This: *mut ID3D12GraphicsCommandList,
8611 Metadata: UINT,
8612 pData: *const ::std::os::raw::c_void,
8613 Size: UINT,
8614 ),
8615 >,
8616 pub EndEvent: ::std::option::Option<
8617 unsafe extern "C" fn(This: *mut ID3D12GraphicsCommandList),
8618 >,
8619 pub ExecuteIndirect: ::std::option::Option<
8620 unsafe extern "C" fn(
8621 This: *mut ID3D12GraphicsCommandList,
8622 pCommandSignature: *mut ID3D12CommandSignature,
8623 MaxCommandCount: UINT,
8624 pArgumentBuffer: *mut ID3D12Resource,
8625 ArgumentBufferOffset: UINT64,
8626 pCountBuffer: *mut ID3D12Resource,
8627 CountBufferOffset: UINT64,
8628 ),
8629 >,
8630}
8631#[repr(C)]
8632#[derive(Debug, Copy, Clone, Hash, PartialOrd, Ord, PartialEq, Eq)]
8633pub struct ID3D12GraphicsCommandList {
8634 pub lpVtbl: *mut ID3D12GraphicsCommandListVtbl,
8635}
8636impl Default for ID3D12GraphicsCommandList {
8637 fn default() -> Self {
8638 let mut s = ::std::mem::MaybeUninit::<Self>::uninit();
8639 unsafe {
8640 ::std::ptr::write_bytes(s.as_mut_ptr(), 0, 1);
8641 s.assume_init()
8642 }
8643 }
8644}
8645extern "C" {
8646 pub static IID_ID3D12GraphicsCommandList1: IID;
8647}
8648#[repr(C)]
8649#[derive(Debug, Default, Copy, Clone, Hash, PartialOrd, Ord, PartialEq, Eq)]
8650pub struct ID3D12GraphicsCommandList1Vtbl {
8651 pub QueryInterface: ::std::option::Option<
8652 unsafe extern "C" fn(
8653 This: *mut ID3D12GraphicsCommandList1,
8654 riid: *const IID,
8655 ppvObject: *mut *mut ::std::os::raw::c_void,
8656 ) -> HRESULT,
8657 >,
8658 pub AddRef: ::std::option::Option<
8659 unsafe extern "C" fn(This: *mut ID3D12GraphicsCommandList1) -> ULONG,
8660 >,
8661 pub Release: ::std::option::Option<
8662 unsafe extern "C" fn(This: *mut ID3D12GraphicsCommandList1) -> ULONG,
8663 >,
8664 pub GetPrivateData: ::std::option::Option<
8665 unsafe extern "C" fn(
8666 This: *mut ID3D12GraphicsCommandList1,
8667 guid: *const GUID,
8668 pDataSize: *mut UINT,
8669 pData: *mut ::std::os::raw::c_void,
8670 ) -> HRESULT,
8671 >,
8672 pub SetPrivateData: ::std::option::Option<
8673 unsafe extern "C" fn(
8674 This: *mut ID3D12GraphicsCommandList1,
8675 guid: *const GUID,
8676 DataSize: UINT,
8677 pData: *const ::std::os::raw::c_void,
8678 ) -> HRESULT,
8679 >,
8680 pub SetPrivateDataInterface: ::std::option::Option<
8681 unsafe extern "C" fn(
8682 This: *mut ID3D12GraphicsCommandList1,
8683 guid: *const GUID,
8684 pData: *const IUnknown,
8685 ) -> HRESULT,
8686 >,
8687 pub SetName: ::std::option::Option<
8688 unsafe extern "C" fn(
8689 This: *mut ID3D12GraphicsCommandList1,
8690 Name: LPCWSTR,
8691 ) -> HRESULT,
8692 >,
8693 pub GetDevice: ::std::option::Option<
8694 unsafe extern "C" fn(
8695 This: *mut ID3D12GraphicsCommandList1,
8696 riid: *const IID,
8697 ppvDevice: *mut *mut ::std::os::raw::c_void,
8698 ) -> HRESULT,
8699 >,
8700 pub GetType: ::std::option::Option<
8701 unsafe extern "C" fn(
8702 This: *mut ID3D12GraphicsCommandList1,
8703 ) -> D3D12_COMMAND_LIST_TYPE,
8704 >,
8705 pub Close: ::std::option::Option<
8706 unsafe extern "C" fn(This: *mut ID3D12GraphicsCommandList1) -> HRESULT,
8707 >,
8708 pub Reset: ::std::option::Option<
8709 unsafe extern "C" fn(
8710 This: *mut ID3D12GraphicsCommandList1,
8711 pAllocator: *mut ID3D12CommandAllocator,
8712 pInitialState: *mut ID3D12PipelineState,
8713 ) -> HRESULT,
8714 >,
8715 pub ClearState: ::std::option::Option<
8716 unsafe extern "C" fn(
8717 This: *mut ID3D12GraphicsCommandList1,
8718 pPipelineState: *mut ID3D12PipelineState,
8719 ),
8720 >,
8721 pub DrawInstanced: ::std::option::Option<
8722 unsafe extern "C" fn(
8723 This: *mut ID3D12GraphicsCommandList1,
8724 VertexCountPerInstance: UINT,
8725 InstanceCount: UINT,
8726 StartVertexLocation: UINT,
8727 StartInstanceLocation: UINT,
8728 ),
8729 >,
8730 pub DrawIndexedInstanced: ::std::option::Option<
8731 unsafe extern "C" fn(
8732 This: *mut ID3D12GraphicsCommandList1,
8733 IndexCountPerInstance: UINT,
8734 InstanceCount: UINT,
8735 StartIndexLocation: UINT,
8736 BaseVertexLocation: INT,
8737 StartInstanceLocation: UINT,
8738 ),
8739 >,
8740 pub Dispatch: ::std::option::Option<
8741 unsafe extern "C" fn(
8742 This: *mut ID3D12GraphicsCommandList1,
8743 ThreadGroupCountX: UINT,
8744 ThreadGroupCountY: UINT,
8745 ThreadGroupCountZ: UINT,
8746 ),
8747 >,
8748 pub CopyBufferRegion: ::std::option::Option<
8749 unsafe extern "C" fn(
8750 This: *mut ID3D12GraphicsCommandList1,
8751 pDstBuffer: *mut ID3D12Resource,
8752 DstOffset: UINT64,
8753 pSrcBuffer: *mut ID3D12Resource,
8754 SrcOffset: UINT64,
8755 NumBytes: UINT64,
8756 ),
8757 >,
8758 pub CopyTextureRegion: ::std::option::Option<
8759 unsafe extern "C" fn(
8760 This: *mut ID3D12GraphicsCommandList1,
8761 pDst: *const D3D12_TEXTURE_COPY_LOCATION,
8762 DstX: UINT,
8763 DstY: UINT,
8764 DstZ: UINT,
8765 pSrc: *const D3D12_TEXTURE_COPY_LOCATION,
8766 pSrcBox: *const D3D12_BOX,
8767 ),
8768 >,
8769 pub CopyResource: ::std::option::Option<
8770 unsafe extern "C" fn(
8771 This: *mut ID3D12GraphicsCommandList1,
8772 pDstResource: *mut ID3D12Resource,
8773 pSrcResource: *mut ID3D12Resource,
8774 ),
8775 >,
8776 pub CopyTiles: ::std::option::Option<
8777 unsafe extern "C" fn(
8778 This: *mut ID3D12GraphicsCommandList1,
8779 pTiledResource: *mut ID3D12Resource,
8780 pTileRegionStartCoordinate: *const D3D12_TILED_RESOURCE_COORDINATE,
8781 pTileRegionSize: *const D3D12_TILE_REGION_SIZE,
8782 pBuffer: *mut ID3D12Resource,
8783 BufferStartOffsetInBytes: UINT64,
8784 Flags: D3D12_TILE_COPY_FLAGS,
8785 ),
8786 >,
8787 pub ResolveSubresource: ::std::option::Option<
8788 unsafe extern "C" fn(
8789 This: *mut ID3D12GraphicsCommandList1,
8790 pDstResource: *mut ID3D12Resource,
8791 DstSubresource: UINT,
8792 pSrcResource: *mut ID3D12Resource,
8793 SrcSubresource: UINT,
8794 Format: DXGI_FORMAT,
8795 ),
8796 >,
8797 pub IASetPrimitiveTopology: ::std::option::Option<
8798 unsafe extern "C" fn(
8799 This: *mut ID3D12GraphicsCommandList1,
8800 PrimitiveTopology: D3D12_PRIMITIVE_TOPOLOGY,
8801 ),
8802 >,
8803 pub RSSetViewports: ::std::option::Option<
8804 unsafe extern "C" fn(
8805 This: *mut ID3D12GraphicsCommandList1,
8806 NumViewports: UINT,
8807 pViewports: *const D3D12_VIEWPORT,
8808 ),
8809 >,
8810 pub RSSetScissorRects: ::std::option::Option<
8811 unsafe extern "C" fn(
8812 This: *mut ID3D12GraphicsCommandList1,
8813 NumRects: UINT,
8814 pRects: *const D3D12_RECT,
8815 ),
8816 >,
8817 pub OMSetBlendFactor: ::std::option::Option<
8818 unsafe extern "C" fn(
8819 This: *mut ID3D12GraphicsCommandList1,
8820 BlendFactor: *const FLOAT,
8821 ),
8822 >,
8823 pub OMSetStencilRef: ::std::option::Option<
8824 unsafe extern "C" fn(
8825 This: *mut ID3D12GraphicsCommandList1,
8826 StencilRef: UINT,
8827 ),
8828 >,
8829 pub SetPipelineState: ::std::option::Option<
8830 unsafe extern "C" fn(
8831 This: *mut ID3D12GraphicsCommandList1,
8832 pPipelineState: *mut ID3D12PipelineState,
8833 ),
8834 >,
8835 pub ResourceBarrier: ::std::option::Option<
8836 unsafe extern "C" fn(
8837 This: *mut ID3D12GraphicsCommandList1,
8838 NumBarriers: UINT,
8839 pBarriers: *const D3D12_RESOURCE_BARRIER,
8840 ),
8841 >,
8842 pub ExecuteBundle: ::std::option::Option<
8843 unsafe extern "C" fn(
8844 This: *mut ID3D12GraphicsCommandList1,
8845 pCommandList: *mut ID3D12GraphicsCommandList,
8846 ),
8847 >,
8848 pub SetDescriptorHeaps: ::std::option::Option<
8849 unsafe extern "C" fn(
8850 This: *mut ID3D12GraphicsCommandList1,
8851 NumDescriptorHeaps: UINT,
8852 ppDescriptorHeaps: *const *mut ID3D12DescriptorHeap,
8853 ),
8854 >,
8855 pub SetComputeRootSignature: ::std::option::Option<
8856 unsafe extern "C" fn(
8857 This: *mut ID3D12GraphicsCommandList1,
8858 pRootSignature: *mut ID3D12RootSignature,
8859 ),
8860 >,
8861 pub SetGraphicsRootSignature: ::std::option::Option<
8862 unsafe extern "C" fn(
8863 This: *mut ID3D12GraphicsCommandList1,
8864 pRootSignature: *mut ID3D12RootSignature,
8865 ),
8866 >,
8867 pub SetComputeRootDescriptorTable: ::std::option::Option<
8868 unsafe extern "C" fn(
8869 This: *mut ID3D12GraphicsCommandList1,
8870 RootParameterIndex: UINT,
8871 BaseDescriptor: D3D12_GPU_DESCRIPTOR_HANDLE,
8872 ),
8873 >,
8874 pub SetGraphicsRootDescriptorTable: ::std::option::Option<
8875 unsafe extern "C" fn(
8876 This: *mut ID3D12GraphicsCommandList1,
8877 RootParameterIndex: UINT,
8878 BaseDescriptor: D3D12_GPU_DESCRIPTOR_HANDLE,
8879 ),
8880 >,
8881 pub SetComputeRoot32BitConstant: ::std::option::Option<
8882 unsafe extern "C" fn(
8883 This: *mut ID3D12GraphicsCommandList1,
8884 RootParameterIndex: UINT,
8885 SrcData: UINT,
8886 DestOffsetIn32BitValues: UINT,
8887 ),
8888 >,
8889 pub SetGraphicsRoot32BitConstant: ::std::option::Option<
8890 unsafe extern "C" fn(
8891 This: *mut ID3D12GraphicsCommandList1,
8892 RootParameterIndex: UINT,
8893 SrcData: UINT,
8894 DestOffsetIn32BitValues: UINT,
8895 ),
8896 >,
8897 pub SetComputeRoot32BitConstants: ::std::option::Option<
8898 unsafe extern "C" fn(
8899 This: *mut ID3D12GraphicsCommandList1,
8900 RootParameterIndex: UINT,
8901 Num32BitValuesToSet: UINT,
8902 pSrcData: *const ::std::os::raw::c_void,
8903 DestOffsetIn32BitValues: UINT,
8904 ),
8905 >,
8906 pub SetGraphicsRoot32BitConstants: ::std::option::Option<
8907 unsafe extern "C" fn(
8908 This: *mut ID3D12GraphicsCommandList1,
8909 RootParameterIndex: UINT,
8910 Num32BitValuesToSet: UINT,
8911 pSrcData: *const ::std::os::raw::c_void,
8912 DestOffsetIn32BitValues: UINT,
8913 ),
8914 >,
8915 pub SetComputeRootConstantBufferView: ::std::option::Option<
8916 unsafe extern "C" fn(
8917 This: *mut ID3D12GraphicsCommandList1,
8918 RootParameterIndex: UINT,
8919 BufferLocation: D3D12_GPU_VIRTUAL_ADDRESS,
8920 ),
8921 >,
8922 pub SetGraphicsRootConstantBufferView: ::std::option::Option<
8923 unsafe extern "C" fn(
8924 This: *mut ID3D12GraphicsCommandList1,
8925 RootParameterIndex: UINT,
8926 BufferLocation: D3D12_GPU_VIRTUAL_ADDRESS,
8927 ),
8928 >,
8929 pub SetComputeRootShaderResourceView: ::std::option::Option<
8930 unsafe extern "C" fn(
8931 This: *mut ID3D12GraphicsCommandList1,
8932 RootParameterIndex: UINT,
8933 BufferLocation: D3D12_GPU_VIRTUAL_ADDRESS,
8934 ),
8935 >,
8936 pub SetGraphicsRootShaderResourceView: ::std::option::Option<
8937 unsafe extern "C" fn(
8938 This: *mut ID3D12GraphicsCommandList1,
8939 RootParameterIndex: UINT,
8940 BufferLocation: D3D12_GPU_VIRTUAL_ADDRESS,
8941 ),
8942 >,
8943 pub SetComputeRootUnorderedAccessView: ::std::option::Option<
8944 unsafe extern "C" fn(
8945 This: *mut ID3D12GraphicsCommandList1,
8946 RootParameterIndex: UINT,
8947 BufferLocation: D3D12_GPU_VIRTUAL_ADDRESS,
8948 ),
8949 >,
8950 pub SetGraphicsRootUnorderedAccessView: ::std::option::Option<
8951 unsafe extern "C" fn(
8952 This: *mut ID3D12GraphicsCommandList1,
8953 RootParameterIndex: UINT,
8954 BufferLocation: D3D12_GPU_VIRTUAL_ADDRESS,
8955 ),
8956 >,
8957 pub IASetIndexBuffer: ::std::option::Option<
8958 unsafe extern "C" fn(
8959 This: *mut ID3D12GraphicsCommandList1,
8960 pView: *const D3D12_INDEX_BUFFER_VIEW,
8961 ),
8962 >,
8963 pub IASetVertexBuffers: ::std::option::Option<
8964 unsafe extern "C" fn(
8965 This: *mut ID3D12GraphicsCommandList1,
8966 StartSlot: UINT,
8967 NumViews: UINT,
8968 pViews: *const D3D12_VERTEX_BUFFER_VIEW,
8969 ),
8970 >,
8971 pub SOSetTargets: ::std::option::Option<
8972 unsafe extern "C" fn(
8973 This: *mut ID3D12GraphicsCommandList1,
8974 StartSlot: UINT,
8975 NumViews: UINT,
8976 pViews: *const D3D12_STREAM_OUTPUT_BUFFER_VIEW,
8977 ),
8978 >,
8979 pub OMSetRenderTargets: ::std::option::Option<
8980 unsafe extern "C" fn(
8981 This: *mut ID3D12GraphicsCommandList1,
8982 NumRenderTargetDescriptors: UINT,
8983 pRenderTargetDescriptors: *const D3D12_CPU_DESCRIPTOR_HANDLE,
8984 RTsSingleHandleToDescriptorRange: BOOL,
8985 pDepthStencilDescriptor: *const D3D12_CPU_DESCRIPTOR_HANDLE,
8986 ),
8987 >,
8988 pub ClearDepthStencilView: ::std::option::Option<
8989 unsafe extern "C" fn(
8990 This: *mut ID3D12GraphicsCommandList1,
8991 DepthStencilView: D3D12_CPU_DESCRIPTOR_HANDLE,
8992 ClearFlags: D3D12_CLEAR_FLAGS,
8993 Depth: FLOAT,
8994 Stencil: UINT8,
8995 NumRects: UINT,
8996 pRects: *const D3D12_RECT,
8997 ),
8998 >,
8999 pub ClearRenderTargetView: ::std::option::Option<
9000 unsafe extern "C" fn(
9001 This: *mut ID3D12GraphicsCommandList1,
9002 RenderTargetView: D3D12_CPU_DESCRIPTOR_HANDLE,
9003 ColorRGBA: *const FLOAT,
9004 NumRects: UINT,
9005 pRects: *const D3D12_RECT,
9006 ),
9007 >,
9008 pub ClearUnorderedAccessViewUint: ::std::option::Option<
9009 unsafe extern "C" fn(
9010 This: *mut ID3D12GraphicsCommandList1,
9011 ViewGPUHandleInCurrentHeap: D3D12_GPU_DESCRIPTOR_HANDLE,
9012 ViewCPUHandle: D3D12_CPU_DESCRIPTOR_HANDLE,
9013 pResource: *mut ID3D12Resource,
9014 Values: *const UINT,
9015 NumRects: UINT,
9016 pRects: *const D3D12_RECT,
9017 ),
9018 >,
9019 pub ClearUnorderedAccessViewFloat: ::std::option::Option<
9020 unsafe extern "C" fn(
9021 This: *mut ID3D12GraphicsCommandList1,
9022 ViewGPUHandleInCurrentHeap: D3D12_GPU_DESCRIPTOR_HANDLE,
9023 ViewCPUHandle: D3D12_CPU_DESCRIPTOR_HANDLE,
9024 pResource: *mut ID3D12Resource,
9025 Values: *const FLOAT,
9026 NumRects: UINT,
9027 pRects: *const D3D12_RECT,
9028 ),
9029 >,
9030 pub DiscardResource: ::std::option::Option<
9031 unsafe extern "C" fn(
9032 This: *mut ID3D12GraphicsCommandList1,
9033 pResource: *mut ID3D12Resource,
9034 pRegion: *const D3D12_DISCARD_REGION,
9035 ),
9036 >,
9037 pub BeginQuery: ::std::option::Option<
9038 unsafe extern "C" fn(
9039 This: *mut ID3D12GraphicsCommandList1,
9040 pQueryHeap: *mut ID3D12QueryHeap,
9041 Type: D3D12_QUERY_TYPE,
9042 Index: UINT,
9043 ),
9044 >,
9045 pub EndQuery: ::std::option::Option<
9046 unsafe extern "C" fn(
9047 This: *mut ID3D12GraphicsCommandList1,
9048 pQueryHeap: *mut ID3D12QueryHeap,
9049 Type: D3D12_QUERY_TYPE,
9050 Index: UINT,
9051 ),
9052 >,
9053 pub ResolveQueryData: ::std::option::Option<
9054 unsafe extern "C" fn(
9055 This: *mut ID3D12GraphicsCommandList1,
9056 pQueryHeap: *mut ID3D12QueryHeap,
9057 Type: D3D12_QUERY_TYPE,
9058 StartIndex: UINT,
9059 NumQueries: UINT,
9060 pDestinationBuffer: *mut ID3D12Resource,
9061 AlignedDestinationBufferOffset: UINT64,
9062 ),
9063 >,
9064 pub SetPredication: ::std::option::Option<
9065 unsafe extern "C" fn(
9066 This: *mut ID3D12GraphicsCommandList1,
9067 pBuffer: *mut ID3D12Resource,
9068 AlignedBufferOffset: UINT64,
9069 Operation: D3D12_PREDICATION_OP,
9070 ),
9071 >,
9072 pub SetMarker: ::std::option::Option<
9073 unsafe extern "C" fn(
9074 This: *mut ID3D12GraphicsCommandList1,
9075 Metadata: UINT,
9076 pData: *const ::std::os::raw::c_void,
9077 Size: UINT,
9078 ),
9079 >,
9080 pub BeginEvent: ::std::option::Option<
9081 unsafe extern "C" fn(
9082 This: *mut ID3D12GraphicsCommandList1,
9083 Metadata: UINT,
9084 pData: *const ::std::os::raw::c_void,
9085 Size: UINT,
9086 ),
9087 >,
9088 pub EndEvent: ::std::option::Option<
9089 unsafe extern "C" fn(This: *mut ID3D12GraphicsCommandList1),
9090 >,
9091 pub ExecuteIndirect: ::std::option::Option<
9092 unsafe extern "C" fn(
9093 This: *mut ID3D12GraphicsCommandList1,
9094 pCommandSignature: *mut ID3D12CommandSignature,
9095 MaxCommandCount: UINT,
9096 pArgumentBuffer: *mut ID3D12Resource,
9097 ArgumentBufferOffset: UINT64,
9098 pCountBuffer: *mut ID3D12Resource,
9099 CountBufferOffset: UINT64,
9100 ),
9101 >,
9102 pub AtomicCopyBufferUINT: ::std::option::Option<
9103 unsafe extern "C" fn(
9104 This: *mut ID3D12GraphicsCommandList1,
9105 pDstBuffer: *mut ID3D12Resource,
9106 DstOffset: UINT64,
9107 pSrcBuffer: *mut ID3D12Resource,
9108 SrcOffset: UINT64,
9109 Dependencies: UINT,
9110 ppDependentResources: *const *mut ID3D12Resource,
9111 pDependentSubresourceRanges: *const D3D12_SUBRESOURCE_RANGE_UINT64,
9112 ),
9113 >,
9114 pub AtomicCopyBufferUINT64: ::std::option::Option<
9115 unsafe extern "C" fn(
9116 This: *mut ID3D12GraphicsCommandList1,
9117 pDstBuffer: *mut ID3D12Resource,
9118 DstOffset: UINT64,
9119 pSrcBuffer: *mut ID3D12Resource,
9120 SrcOffset: UINT64,
9121 Dependencies: UINT,
9122 ppDependentResources: *const *mut ID3D12Resource,
9123 pDependentSubresourceRanges: *const D3D12_SUBRESOURCE_RANGE_UINT64,
9124 ),
9125 >,
9126 pub OMSetDepthBounds: ::std::option::Option<
9127 unsafe extern "C" fn(
9128 This: *mut ID3D12GraphicsCommandList1,
9129 Min: FLOAT,
9130 Max: FLOAT,
9131 ),
9132 >,
9133 pub SetSamplePositions: ::std::option::Option<
9134 unsafe extern "C" fn(
9135 This: *mut ID3D12GraphicsCommandList1,
9136 NumSamplesPerPixel: UINT,
9137 NumPixels: UINT,
9138 pSamplePositions: *mut D3D12_SAMPLE_POSITION,
9139 ),
9140 >,
9141 pub ResolveSubresourceRegion: ::std::option::Option<
9142 unsafe extern "C" fn(
9143 This: *mut ID3D12GraphicsCommandList1,
9144 pDstResource: *mut ID3D12Resource,
9145 DstSubresource: UINT,
9146 DstX: UINT,
9147 DstY: UINT,
9148 pSrcResource: *mut ID3D12Resource,
9149 SrcSubresource: UINT,
9150 pSrcRect: *mut D3D12_RECT,
9151 Format: DXGI_FORMAT,
9152 ResolveMode: D3D12_RESOLVE_MODE,
9153 ),
9154 >,
9155 pub SetViewInstanceMask: ::std::option::Option<
9156 unsafe extern "C" fn(This: *mut ID3D12GraphicsCommandList1, Mask: UINT),
9157 >,
9158}
9159#[repr(C)]
9160#[derive(Debug, Copy, Clone, Hash, PartialOrd, Ord, PartialEq, Eq)]
9161pub struct ID3D12GraphicsCommandList1 {
9162 pub lpVtbl: *mut ID3D12GraphicsCommandList1Vtbl,
9163}
9164impl Default for ID3D12GraphicsCommandList1 {
9165 fn default() -> Self {
9166 let mut s = ::std::mem::MaybeUninit::<Self>::uninit();
9167 unsafe {
9168 ::std::ptr::write_bytes(s.as_mut_ptr(), 0, 1);
9169 s.assume_init()
9170 }
9171 }
9172}
9173#[repr(C)]
9174#[derive(Debug, Default, Copy, Clone, Hash, PartialOrd, Ord, PartialEq, Eq)]
9175pub struct D3D12_WRITEBUFFERIMMEDIATE_PARAMETER {
9176 pub Dest: D3D12_GPU_VIRTUAL_ADDRESS,
9177 pub Value: UINT32,
9178}
9179pub const D3D12_WRITEBUFFERIMMEDIATE_MODE_D3D12_WRITEBUFFERIMMEDIATE_MODE_DEFAULT : D3D12_WRITEBUFFERIMMEDIATE_MODE = 0 ;
9180pub const D3D12_WRITEBUFFERIMMEDIATE_MODE_D3D12_WRITEBUFFERIMMEDIATE_MODE_MARKER_IN : D3D12_WRITEBUFFERIMMEDIATE_MODE = 1 ;
9181pub const D3D12_WRITEBUFFERIMMEDIATE_MODE_D3D12_WRITEBUFFERIMMEDIATE_MODE_MARKER_OUT : D3D12_WRITEBUFFERIMMEDIATE_MODE = 2 ;
9182pub type D3D12_WRITEBUFFERIMMEDIATE_MODE = ::std::os::raw::c_int;
9183extern "C" {
9184 pub static IID_ID3D12GraphicsCommandList2: IID;
9185}
9186#[repr(C)]
9187#[derive(Debug, Default, Copy, Clone, Hash, PartialOrd, Ord, PartialEq, Eq)]
9188pub struct ID3D12GraphicsCommandList2Vtbl {
9189 pub QueryInterface: ::std::option::Option<
9190 unsafe extern "C" fn(
9191 This: *mut ID3D12GraphicsCommandList2,
9192 riid: *const IID,
9193 ppvObject: *mut *mut ::std::os::raw::c_void,
9194 ) -> HRESULT,
9195 >,
9196 pub AddRef: ::std::option::Option<
9197 unsafe extern "C" fn(This: *mut ID3D12GraphicsCommandList2) -> ULONG,
9198 >,
9199 pub Release: ::std::option::Option<
9200 unsafe extern "C" fn(This: *mut ID3D12GraphicsCommandList2) -> ULONG,
9201 >,
9202 pub GetPrivateData: ::std::option::Option<
9203 unsafe extern "C" fn(
9204 This: *mut ID3D12GraphicsCommandList2,
9205 guid: *const GUID,
9206 pDataSize: *mut UINT,
9207 pData: *mut ::std::os::raw::c_void,
9208 ) -> HRESULT,
9209 >,
9210 pub SetPrivateData: ::std::option::Option<
9211 unsafe extern "C" fn(
9212 This: *mut ID3D12GraphicsCommandList2,
9213 guid: *const GUID,
9214 DataSize: UINT,
9215 pData: *const ::std::os::raw::c_void,
9216 ) -> HRESULT,
9217 >,
9218 pub SetPrivateDataInterface: ::std::option::Option<
9219 unsafe extern "C" fn(
9220 This: *mut ID3D12GraphicsCommandList2,
9221 guid: *const GUID,
9222 pData: *const IUnknown,
9223 ) -> HRESULT,
9224 >,
9225 pub SetName: ::std::option::Option<
9226 unsafe extern "C" fn(
9227 This: *mut ID3D12GraphicsCommandList2,
9228 Name: LPCWSTR,
9229 ) -> HRESULT,
9230 >,
9231 pub GetDevice: ::std::option::Option<
9232 unsafe extern "C" fn(
9233 This: *mut ID3D12GraphicsCommandList2,
9234 riid: *const IID,
9235 ppvDevice: *mut *mut ::std::os::raw::c_void,
9236 ) -> HRESULT,
9237 >,
9238 pub GetType: ::std::option::Option<
9239 unsafe extern "C" fn(
9240 This: *mut ID3D12GraphicsCommandList2,
9241 ) -> D3D12_COMMAND_LIST_TYPE,
9242 >,
9243 pub Close: ::std::option::Option<
9244 unsafe extern "C" fn(This: *mut ID3D12GraphicsCommandList2) -> HRESULT,
9245 >,
9246 pub Reset: ::std::option::Option<
9247 unsafe extern "C" fn(
9248 This: *mut ID3D12GraphicsCommandList2,
9249 pAllocator: *mut ID3D12CommandAllocator,
9250 pInitialState: *mut ID3D12PipelineState,
9251 ) -> HRESULT,
9252 >,
9253 pub ClearState: ::std::option::Option<
9254 unsafe extern "C" fn(
9255 This: *mut ID3D12GraphicsCommandList2,
9256 pPipelineState: *mut ID3D12PipelineState,
9257 ),
9258 >,
9259 pub DrawInstanced: ::std::option::Option<
9260 unsafe extern "C" fn(
9261 This: *mut ID3D12GraphicsCommandList2,
9262 VertexCountPerInstance: UINT,
9263 InstanceCount: UINT,
9264 StartVertexLocation: UINT,
9265 StartInstanceLocation: UINT,
9266 ),
9267 >,
9268 pub DrawIndexedInstanced: ::std::option::Option<
9269 unsafe extern "C" fn(
9270 This: *mut ID3D12GraphicsCommandList2,
9271 IndexCountPerInstance: UINT,
9272 InstanceCount: UINT,
9273 StartIndexLocation: UINT,
9274 BaseVertexLocation: INT,
9275 StartInstanceLocation: UINT,
9276 ),
9277 >,
9278 pub Dispatch: ::std::option::Option<
9279 unsafe extern "C" fn(
9280 This: *mut ID3D12GraphicsCommandList2,
9281 ThreadGroupCountX: UINT,
9282 ThreadGroupCountY: UINT,
9283 ThreadGroupCountZ: UINT,
9284 ),
9285 >,
9286 pub CopyBufferRegion: ::std::option::Option<
9287 unsafe extern "C" fn(
9288 This: *mut ID3D12GraphicsCommandList2,
9289 pDstBuffer: *mut ID3D12Resource,
9290 DstOffset: UINT64,
9291 pSrcBuffer: *mut ID3D12Resource,
9292 SrcOffset: UINT64,
9293 NumBytes: UINT64,
9294 ),
9295 >,
9296 pub CopyTextureRegion: ::std::option::Option<
9297 unsafe extern "C" fn(
9298 This: *mut ID3D12GraphicsCommandList2,
9299 pDst: *const D3D12_TEXTURE_COPY_LOCATION,
9300 DstX: UINT,
9301 DstY: UINT,
9302 DstZ: UINT,
9303 pSrc: *const D3D12_TEXTURE_COPY_LOCATION,
9304 pSrcBox: *const D3D12_BOX,
9305 ),
9306 >,
9307 pub CopyResource: ::std::option::Option<
9308 unsafe extern "C" fn(
9309 This: *mut ID3D12GraphicsCommandList2,
9310 pDstResource: *mut ID3D12Resource,
9311 pSrcResource: *mut ID3D12Resource,
9312 ),
9313 >,
9314 pub CopyTiles: ::std::option::Option<
9315 unsafe extern "C" fn(
9316 This: *mut ID3D12GraphicsCommandList2,
9317 pTiledResource: *mut ID3D12Resource,
9318 pTileRegionStartCoordinate: *const D3D12_TILED_RESOURCE_COORDINATE,
9319 pTileRegionSize: *const D3D12_TILE_REGION_SIZE,
9320 pBuffer: *mut ID3D12Resource,
9321 BufferStartOffsetInBytes: UINT64,
9322 Flags: D3D12_TILE_COPY_FLAGS,
9323 ),
9324 >,
9325 pub ResolveSubresource: ::std::option::Option<
9326 unsafe extern "C" fn(
9327 This: *mut ID3D12GraphicsCommandList2,
9328 pDstResource: *mut ID3D12Resource,
9329 DstSubresource: UINT,
9330 pSrcResource: *mut ID3D12Resource,
9331 SrcSubresource: UINT,
9332 Format: DXGI_FORMAT,
9333 ),
9334 >,
9335 pub IASetPrimitiveTopology: ::std::option::Option<
9336 unsafe extern "C" fn(
9337 This: *mut ID3D12GraphicsCommandList2,
9338 PrimitiveTopology: D3D12_PRIMITIVE_TOPOLOGY,
9339 ),
9340 >,
9341 pub RSSetViewports: ::std::option::Option<
9342 unsafe extern "C" fn(
9343 This: *mut ID3D12GraphicsCommandList2,
9344 NumViewports: UINT,
9345 pViewports: *const D3D12_VIEWPORT,
9346 ),
9347 >,
9348 pub RSSetScissorRects: ::std::option::Option<
9349 unsafe extern "C" fn(
9350 This: *mut ID3D12GraphicsCommandList2,
9351 NumRects: UINT,
9352 pRects: *const D3D12_RECT,
9353 ),
9354 >,
9355 pub OMSetBlendFactor: ::std::option::Option<
9356 unsafe extern "C" fn(
9357 This: *mut ID3D12GraphicsCommandList2,
9358 BlendFactor: *const FLOAT,
9359 ),
9360 >,
9361 pub OMSetStencilRef: ::std::option::Option<
9362 unsafe extern "C" fn(
9363 This: *mut ID3D12GraphicsCommandList2,
9364 StencilRef: UINT,
9365 ),
9366 >,
9367 pub SetPipelineState: ::std::option::Option<
9368 unsafe extern "C" fn(
9369 This: *mut ID3D12GraphicsCommandList2,
9370 pPipelineState: *mut ID3D12PipelineState,
9371 ),
9372 >,
9373 pub ResourceBarrier: ::std::option::Option<
9374 unsafe extern "C" fn(
9375 This: *mut ID3D12GraphicsCommandList2,
9376 NumBarriers: UINT,
9377 pBarriers: *const D3D12_RESOURCE_BARRIER,
9378 ),
9379 >,
9380 pub ExecuteBundle: ::std::option::Option<
9381 unsafe extern "C" fn(
9382 This: *mut ID3D12GraphicsCommandList2,
9383 pCommandList: *mut ID3D12GraphicsCommandList,
9384 ),
9385 >,
9386 pub SetDescriptorHeaps: ::std::option::Option<
9387 unsafe extern "C" fn(
9388 This: *mut ID3D12GraphicsCommandList2,
9389 NumDescriptorHeaps: UINT,
9390 ppDescriptorHeaps: *const *mut ID3D12DescriptorHeap,
9391 ),
9392 >,
9393 pub SetComputeRootSignature: ::std::option::Option<
9394 unsafe extern "C" fn(
9395 This: *mut ID3D12GraphicsCommandList2,
9396 pRootSignature: *mut ID3D12RootSignature,
9397 ),
9398 >,
9399 pub SetGraphicsRootSignature: ::std::option::Option<
9400 unsafe extern "C" fn(
9401 This: *mut ID3D12GraphicsCommandList2,
9402 pRootSignature: *mut ID3D12RootSignature,
9403 ),
9404 >,
9405 pub SetComputeRootDescriptorTable: ::std::option::Option<
9406 unsafe extern "C" fn(
9407 This: *mut ID3D12GraphicsCommandList2,
9408 RootParameterIndex: UINT,
9409 BaseDescriptor: D3D12_GPU_DESCRIPTOR_HANDLE,
9410 ),
9411 >,
9412 pub SetGraphicsRootDescriptorTable: ::std::option::Option<
9413 unsafe extern "C" fn(
9414 This: *mut ID3D12GraphicsCommandList2,
9415 RootParameterIndex: UINT,
9416 BaseDescriptor: D3D12_GPU_DESCRIPTOR_HANDLE,
9417 ),
9418 >,
9419 pub SetComputeRoot32BitConstant: ::std::option::Option<
9420 unsafe extern "C" fn(
9421 This: *mut ID3D12GraphicsCommandList2,
9422 RootParameterIndex: UINT,
9423 SrcData: UINT,
9424 DestOffsetIn32BitValues: UINT,
9425 ),
9426 >,
9427 pub SetGraphicsRoot32BitConstant: ::std::option::Option<
9428 unsafe extern "C" fn(
9429 This: *mut ID3D12GraphicsCommandList2,
9430 RootParameterIndex: UINT,
9431 SrcData: UINT,
9432 DestOffsetIn32BitValues: UINT,
9433 ),
9434 >,
9435 pub SetComputeRoot32BitConstants: ::std::option::Option<
9436 unsafe extern "C" fn(
9437 This: *mut ID3D12GraphicsCommandList2,
9438 RootParameterIndex: UINT,
9439 Num32BitValuesToSet: UINT,
9440 pSrcData: *const ::std::os::raw::c_void,
9441 DestOffsetIn32BitValues: UINT,
9442 ),
9443 >,
9444 pub SetGraphicsRoot32BitConstants: ::std::option::Option<
9445 unsafe extern "C" fn(
9446 This: *mut ID3D12GraphicsCommandList2,
9447 RootParameterIndex: UINT,
9448 Num32BitValuesToSet: UINT,
9449 pSrcData: *const ::std::os::raw::c_void,
9450 DestOffsetIn32BitValues: UINT,
9451 ),
9452 >,
9453 pub SetComputeRootConstantBufferView: ::std::option::Option<
9454 unsafe extern "C" fn(
9455 This: *mut ID3D12GraphicsCommandList2,
9456 RootParameterIndex: UINT,
9457 BufferLocation: D3D12_GPU_VIRTUAL_ADDRESS,
9458 ),
9459 >,
9460 pub SetGraphicsRootConstantBufferView: ::std::option::Option<
9461 unsafe extern "C" fn(
9462 This: *mut ID3D12GraphicsCommandList2,
9463 RootParameterIndex: UINT,
9464 BufferLocation: D3D12_GPU_VIRTUAL_ADDRESS,
9465 ),
9466 >,
9467 pub SetComputeRootShaderResourceView: ::std::option::Option<
9468 unsafe extern "C" fn(
9469 This: *mut ID3D12GraphicsCommandList2,
9470 RootParameterIndex: UINT,
9471 BufferLocation: D3D12_GPU_VIRTUAL_ADDRESS,
9472 ),
9473 >,
9474 pub SetGraphicsRootShaderResourceView: ::std::option::Option<
9475 unsafe extern "C" fn(
9476 This: *mut ID3D12GraphicsCommandList2,
9477 RootParameterIndex: UINT,
9478 BufferLocation: D3D12_GPU_VIRTUAL_ADDRESS,
9479 ),
9480 >,
9481 pub SetComputeRootUnorderedAccessView: ::std::option::Option<
9482 unsafe extern "C" fn(
9483 This: *mut ID3D12GraphicsCommandList2,
9484 RootParameterIndex: UINT,
9485 BufferLocation: D3D12_GPU_VIRTUAL_ADDRESS,
9486 ),
9487 >,
9488 pub SetGraphicsRootUnorderedAccessView: ::std::option::Option<
9489 unsafe extern "C" fn(
9490 This: *mut ID3D12GraphicsCommandList2,
9491 RootParameterIndex: UINT,
9492 BufferLocation: D3D12_GPU_VIRTUAL_ADDRESS,
9493 ),
9494 >,
9495 pub IASetIndexBuffer: ::std::option::Option<
9496 unsafe extern "C" fn(
9497 This: *mut ID3D12GraphicsCommandList2,
9498 pView: *const D3D12_INDEX_BUFFER_VIEW,
9499 ),
9500 >,
9501 pub IASetVertexBuffers: ::std::option::Option<
9502 unsafe extern "C" fn(
9503 This: *mut ID3D12GraphicsCommandList2,
9504 StartSlot: UINT,
9505 NumViews: UINT,
9506 pViews: *const D3D12_VERTEX_BUFFER_VIEW,
9507 ),
9508 >,
9509 pub SOSetTargets: ::std::option::Option<
9510 unsafe extern "C" fn(
9511 This: *mut ID3D12GraphicsCommandList2,
9512 StartSlot: UINT,
9513 NumViews: UINT,
9514 pViews: *const D3D12_STREAM_OUTPUT_BUFFER_VIEW,
9515 ),
9516 >,
9517 pub OMSetRenderTargets: ::std::option::Option<
9518 unsafe extern "C" fn(
9519 This: *mut ID3D12GraphicsCommandList2,
9520 NumRenderTargetDescriptors: UINT,
9521 pRenderTargetDescriptors: *const D3D12_CPU_DESCRIPTOR_HANDLE,
9522 RTsSingleHandleToDescriptorRange: BOOL,
9523 pDepthStencilDescriptor: *const D3D12_CPU_DESCRIPTOR_HANDLE,
9524 ),
9525 >,
9526 pub ClearDepthStencilView: ::std::option::Option<
9527 unsafe extern "C" fn(
9528 This: *mut ID3D12GraphicsCommandList2,
9529 DepthStencilView: D3D12_CPU_DESCRIPTOR_HANDLE,
9530 ClearFlags: D3D12_CLEAR_FLAGS,
9531 Depth: FLOAT,
9532 Stencil: UINT8,
9533 NumRects: UINT,
9534 pRects: *const D3D12_RECT,
9535 ),
9536 >,
9537 pub ClearRenderTargetView: ::std::option::Option<
9538 unsafe extern "C" fn(
9539 This: *mut ID3D12GraphicsCommandList2,
9540 RenderTargetView: D3D12_CPU_DESCRIPTOR_HANDLE,
9541 ColorRGBA: *const FLOAT,
9542 NumRects: UINT,
9543 pRects: *const D3D12_RECT,
9544 ),
9545 >,
9546 pub ClearUnorderedAccessViewUint: ::std::option::Option<
9547 unsafe extern "C" fn(
9548 This: *mut ID3D12GraphicsCommandList2,
9549 ViewGPUHandleInCurrentHeap: D3D12_GPU_DESCRIPTOR_HANDLE,
9550 ViewCPUHandle: D3D12_CPU_DESCRIPTOR_HANDLE,
9551 pResource: *mut ID3D12Resource,
9552 Values: *const UINT,
9553 NumRects: UINT,
9554 pRects: *const D3D12_RECT,
9555 ),
9556 >,
9557 pub ClearUnorderedAccessViewFloat: ::std::option::Option<
9558 unsafe extern "C" fn(
9559 This: *mut ID3D12GraphicsCommandList2,
9560 ViewGPUHandleInCurrentHeap: D3D12_GPU_DESCRIPTOR_HANDLE,
9561 ViewCPUHandle: D3D12_CPU_DESCRIPTOR_HANDLE,
9562 pResource: *mut ID3D12Resource,
9563 Values: *const FLOAT,
9564 NumRects: UINT,
9565 pRects: *const D3D12_RECT,
9566 ),
9567 >,
9568 pub DiscardResource: ::std::option::Option<
9569 unsafe extern "C" fn(
9570 This: *mut ID3D12GraphicsCommandList2,
9571 pResource: *mut ID3D12Resource,
9572 pRegion: *const D3D12_DISCARD_REGION,
9573 ),
9574 >,
9575 pub BeginQuery: ::std::option::Option<
9576 unsafe extern "C" fn(
9577 This: *mut ID3D12GraphicsCommandList2,
9578 pQueryHeap: *mut ID3D12QueryHeap,
9579 Type: D3D12_QUERY_TYPE,
9580 Index: UINT,
9581 ),
9582 >,
9583 pub EndQuery: ::std::option::Option<
9584 unsafe extern "C" fn(
9585 This: *mut ID3D12GraphicsCommandList2,
9586 pQueryHeap: *mut ID3D12QueryHeap,
9587 Type: D3D12_QUERY_TYPE,
9588 Index: UINT,
9589 ),
9590 >,
9591 pub ResolveQueryData: ::std::option::Option<
9592 unsafe extern "C" fn(
9593 This: *mut ID3D12GraphicsCommandList2,
9594 pQueryHeap: *mut ID3D12QueryHeap,
9595 Type: D3D12_QUERY_TYPE,
9596 StartIndex: UINT,
9597 NumQueries: UINT,
9598 pDestinationBuffer: *mut ID3D12Resource,
9599 AlignedDestinationBufferOffset: UINT64,
9600 ),
9601 >,
9602 pub SetPredication: ::std::option::Option<
9603 unsafe extern "C" fn(
9604 This: *mut ID3D12GraphicsCommandList2,
9605 pBuffer: *mut ID3D12Resource,
9606 AlignedBufferOffset: UINT64,
9607 Operation: D3D12_PREDICATION_OP,
9608 ),
9609 >,
9610 pub SetMarker: ::std::option::Option<
9611 unsafe extern "C" fn(
9612 This: *mut ID3D12GraphicsCommandList2,
9613 Metadata: UINT,
9614 pData: *const ::std::os::raw::c_void,
9615 Size: UINT,
9616 ),
9617 >,
9618 pub BeginEvent: ::std::option::Option<
9619 unsafe extern "C" fn(
9620 This: *mut ID3D12GraphicsCommandList2,
9621 Metadata: UINT,
9622 pData: *const ::std::os::raw::c_void,
9623 Size: UINT,
9624 ),
9625 >,
9626 pub EndEvent: ::std::option::Option<
9627 unsafe extern "C" fn(This: *mut ID3D12GraphicsCommandList2),
9628 >,
9629 pub ExecuteIndirect: ::std::option::Option<
9630 unsafe extern "C" fn(
9631 This: *mut ID3D12GraphicsCommandList2,
9632 pCommandSignature: *mut ID3D12CommandSignature,
9633 MaxCommandCount: UINT,
9634 pArgumentBuffer: *mut ID3D12Resource,
9635 ArgumentBufferOffset: UINT64,
9636 pCountBuffer: *mut ID3D12Resource,
9637 CountBufferOffset: UINT64,
9638 ),
9639 >,
9640 pub AtomicCopyBufferUINT: ::std::option::Option<
9641 unsafe extern "C" fn(
9642 This: *mut ID3D12GraphicsCommandList2,
9643 pDstBuffer: *mut ID3D12Resource,
9644 DstOffset: UINT64,
9645 pSrcBuffer: *mut ID3D12Resource,
9646 SrcOffset: UINT64,
9647 Dependencies: UINT,
9648 ppDependentResources: *const *mut ID3D12Resource,
9649 pDependentSubresourceRanges: *const D3D12_SUBRESOURCE_RANGE_UINT64,
9650 ),
9651 >,
9652 pub AtomicCopyBufferUINT64: ::std::option::Option<
9653 unsafe extern "C" fn(
9654 This: *mut ID3D12GraphicsCommandList2,
9655 pDstBuffer: *mut ID3D12Resource,
9656 DstOffset: UINT64,
9657 pSrcBuffer: *mut ID3D12Resource,
9658 SrcOffset: UINT64,
9659 Dependencies: UINT,
9660 ppDependentResources: *const *mut ID3D12Resource,
9661 pDependentSubresourceRanges: *const D3D12_SUBRESOURCE_RANGE_UINT64,
9662 ),
9663 >,
9664 pub OMSetDepthBounds: ::std::option::Option<
9665 unsafe extern "C" fn(
9666 This: *mut ID3D12GraphicsCommandList2,
9667 Min: FLOAT,
9668 Max: FLOAT,
9669 ),
9670 >,
9671 pub SetSamplePositions: ::std::option::Option<
9672 unsafe extern "C" fn(
9673 This: *mut ID3D12GraphicsCommandList2,
9674 NumSamplesPerPixel: UINT,
9675 NumPixels: UINT,
9676 pSamplePositions: *mut D3D12_SAMPLE_POSITION,
9677 ),
9678 >,
9679 pub ResolveSubresourceRegion: ::std::option::Option<
9680 unsafe extern "C" fn(
9681 This: *mut ID3D12GraphicsCommandList2,
9682 pDstResource: *mut ID3D12Resource,
9683 DstSubresource: UINT,
9684 DstX: UINT,
9685 DstY: UINT,
9686 pSrcResource: *mut ID3D12Resource,
9687 SrcSubresource: UINT,
9688 pSrcRect: *mut D3D12_RECT,
9689 Format: DXGI_FORMAT,
9690 ResolveMode: D3D12_RESOLVE_MODE,
9691 ),
9692 >,
9693 pub SetViewInstanceMask: ::std::option::Option<
9694 unsafe extern "C" fn(This: *mut ID3D12GraphicsCommandList2, Mask: UINT),
9695 >,
9696 pub WriteBufferImmediate: ::std::option::Option<
9697 unsafe extern "C" fn(
9698 This: *mut ID3D12GraphicsCommandList2,
9699 Count: UINT,
9700 pParams: *const D3D12_WRITEBUFFERIMMEDIATE_PARAMETER,
9701 pModes: *const D3D12_WRITEBUFFERIMMEDIATE_MODE,
9702 ),
9703 >,
9704}
9705#[repr(C)]
9706#[derive(Debug, Copy, Clone, Hash, PartialOrd, Ord, PartialEq, Eq)]
9707pub struct ID3D12GraphicsCommandList2 {
9708 pub lpVtbl: *mut ID3D12GraphicsCommandList2Vtbl,
9709}
9710impl Default for ID3D12GraphicsCommandList2 {
9711 fn default() -> Self {
9712 let mut s = ::std::mem::MaybeUninit::<Self>::uninit();
9713 unsafe {
9714 ::std::ptr::write_bytes(s.as_mut_ptr(), 0, 1);
9715 s.assume_init()
9716 }
9717 }
9718}
9719extern "C" {
9720 pub static IID_ID3D12CommandQueue: IID;
9721}
9722#[repr(C)]
9723#[derive(Debug, Default, Copy, Clone, Hash, PartialOrd, Ord, PartialEq, Eq)]
9724pub struct ID3D12CommandQueueVtbl { pub QueryInterface : :: std :: option :: Option < unsafe extern "C" fn (This : * mut ID3D12CommandQueue , riid : * const IID , ppvObject : * mut * mut :: std :: os :: raw :: c_void) -> HRESULT > , pub AddRef : :: std :: option :: Option < unsafe extern "C" fn (This : * mut ID3D12CommandQueue) -> ULONG > , pub Release : :: std :: option :: Option < unsafe extern "C" fn (This : * mut ID3D12CommandQueue) -> ULONG > , pub GetPrivateData : :: std :: option :: Option < unsafe extern "C" fn (This : * mut ID3D12CommandQueue , guid : * const GUID , pDataSize : * mut UINT , pData : * mut :: std :: os :: raw :: c_void) -> HRESULT > , pub SetPrivateData : :: std :: option :: Option < unsafe extern "C" fn (This : * mut ID3D12CommandQueue , guid : * const GUID , DataSize : UINT , pData : * const :: std :: os :: raw :: c_void) -> HRESULT > , pub SetPrivateDataInterface : :: std :: option :: Option < unsafe extern "C" fn (This : * mut ID3D12CommandQueue , guid : * const GUID , pData : * const IUnknown) -> HRESULT > , pub SetName : :: std :: option :: Option < unsafe extern "C" fn (This : * mut ID3D12CommandQueue , Name : LPCWSTR) -> HRESULT > , pub GetDevice : :: std :: option :: Option < unsafe extern "C" fn (This : * mut ID3D12CommandQueue , riid : * const IID , ppvDevice : * mut * mut :: std :: os :: raw :: c_void) -> HRESULT > , pub UpdateTileMappings : :: std :: option :: Option < unsafe extern "C" fn (This : * mut ID3D12CommandQueue , pResource : * mut ID3D12Resource , NumResourceRegions : UINT , pResourceRegionStartCoordinates : * const D3D12_TILED_RESOURCE_COORDINATE , pResourceRegionSizes : * const D3D12_TILE_REGION_SIZE , pHeap : * mut ID3D12Heap , NumRanges : UINT , pRangeFlags : * const D3D12_TILE_RANGE_FLAGS , pHeapRangeStartOffsets : * const UINT , pRangeTileCounts : * const UINT , Flags : D3D12_TILE_MAPPING_FLAGS) > , pub CopyTileMappings : :: std :: option :: Option < unsafe extern "C" fn (This : * mut ID3D12CommandQueue , pDstResource : * mut ID3D12Resource , pDstRegionStartCoordinate : * const D3D12_TILED_RESOURCE_COORDINATE , pSrcResource : * mut ID3D12Resource , pSrcRegionStartCoordinate : * const D3D12_TILED_RESOURCE_COORDINATE , pRegionSize : * const D3D12_TILE_REGION_SIZE , Flags : D3D12_TILE_MAPPING_FLAGS) > , pub ExecuteCommandLists : :: std :: option :: Option < unsafe extern "C" fn (This : * mut ID3D12CommandQueue , NumCommandLists : UINT , ppCommandLists : * const * mut ID3D12CommandList) > , pub SetMarker : :: std :: option :: Option < unsafe extern "C" fn (This : * mut ID3D12CommandQueue , Metadata : UINT , pData : * const :: std :: os :: raw :: c_void , Size : UINT) > , pub BeginEvent : :: std :: option :: Option < unsafe extern "C" fn (This : * mut ID3D12CommandQueue , Metadata : UINT , pData : * const :: std :: os :: raw :: c_void , Size : UINT) > , pub EndEvent : :: std :: option :: Option < unsafe extern "C" fn (This : * mut ID3D12CommandQueue) > , pub Signal : :: std :: option :: Option < unsafe extern "C" fn (This : * mut ID3D12CommandQueue , pFence : * mut ID3D12Fence , Value : UINT64) -> HRESULT > , pub Wait : :: std :: option :: Option < unsafe extern "C" fn (This : * mut ID3D12CommandQueue , pFence : * mut ID3D12Fence , Value : UINT64) -> HRESULT > , pub GetTimestampFrequency : :: std :: option :: Option < unsafe extern "C" fn (This : * mut ID3D12CommandQueue , pFrequency : * mut UINT64) -> HRESULT > , pub GetClockCalibration : :: std :: option :: Option < unsafe extern "C" fn (This : * mut ID3D12CommandQueue , pGpuTimestamp : * mut UINT64 , pCpuTimestamp : * mut UINT64) -> HRESULT > , pub GetDesc : :: std :: option :: Option < unsafe extern "C" fn (This : * mut ID3D12CommandQueue , RetVal : * mut D3D12_COMMAND_QUEUE_DESC) -> * mut D3D12_COMMAND_QUEUE_DESC > , }
9725#[repr(C)]
9726#[derive(Debug, Copy, Clone, Hash, PartialOrd, Ord, PartialEq, Eq)]
9727pub struct ID3D12CommandQueue {
9728 pub lpVtbl: *mut ID3D12CommandQueueVtbl,
9729}
9730impl Default for ID3D12CommandQueue {
9731 fn default() -> Self {
9732 let mut s = ::std::mem::MaybeUninit::<Self>::uninit();
9733 unsafe {
9734 ::std::ptr::write_bytes(s.as_mut_ptr(), 0, 1);
9735 s.assume_init()
9736 }
9737 }
9738}
9739extern "C" {
9740 pub static IID_ID3D12Device: IID;
9741}
9742#[repr(C)]
9743#[derive(Debug, Default, Copy, Clone, Hash, PartialOrd, Ord, PartialEq, Eq)]
9744pub struct ID3D12DeviceVtbl {
9745 pub QueryInterface: ::std::option::Option<
9746 unsafe extern "C" fn(
9747 This: *mut ID3D12Device,
9748 riid: *const IID,
9749 ppvObject: *mut *mut ::std::os::raw::c_void,
9750 ) -> HRESULT,
9751 >,
9752 pub AddRef: ::std::option::Option<
9753 unsafe extern "C" fn(This: *mut ID3D12Device) -> ULONG,
9754 >,
9755 pub Release: ::std::option::Option<
9756 unsafe extern "C" fn(This: *mut ID3D12Device) -> ULONG,
9757 >,
9758 pub GetPrivateData: ::std::option::Option<
9759 unsafe extern "C" fn(
9760 This: *mut ID3D12Device,
9761 guid: *const GUID,
9762 pDataSize: *mut UINT,
9763 pData: *mut ::std::os::raw::c_void,
9764 ) -> HRESULT,
9765 >,
9766 pub SetPrivateData: ::std::option::Option<
9767 unsafe extern "C" fn(
9768 This: *mut ID3D12Device,
9769 guid: *const GUID,
9770 DataSize: UINT,
9771 pData: *const ::std::os::raw::c_void,
9772 ) -> HRESULT,
9773 >,
9774 pub SetPrivateDataInterface: ::std::option::Option<
9775 unsafe extern "C" fn(
9776 This: *mut ID3D12Device,
9777 guid: *const GUID,
9778 pData: *const IUnknown,
9779 ) -> HRESULT,
9780 >,
9781 pub SetName: ::std::option::Option<
9782 unsafe extern "C" fn(This: *mut ID3D12Device, Name: LPCWSTR) -> HRESULT,
9783 >,
9784 pub GetNodeCount: ::std::option::Option<
9785 unsafe extern "C" fn(This: *mut ID3D12Device) -> UINT,
9786 >,
9787 pub CreateCommandQueue: ::std::option::Option<
9788 unsafe extern "C" fn(
9789 This: *mut ID3D12Device,
9790 pDesc: *const D3D12_COMMAND_QUEUE_DESC,
9791 riid: *const IID,
9792 ppCommandQueue: *mut *mut ::std::os::raw::c_void,
9793 ) -> HRESULT,
9794 >,
9795 pub CreateCommandAllocator: ::std::option::Option<
9796 unsafe extern "C" fn(
9797 This: *mut ID3D12Device,
9798 type_: D3D12_COMMAND_LIST_TYPE,
9799 riid: *const IID,
9800 ppCommandAllocator: *mut *mut ::std::os::raw::c_void,
9801 ) -> HRESULT,
9802 >,
9803 pub CreateGraphicsPipelineState: ::std::option::Option<
9804 unsafe extern "C" fn(
9805 This: *mut ID3D12Device,
9806 pDesc: *const D3D12_GRAPHICS_PIPELINE_STATE_DESC,
9807 riid: *const IID,
9808 ppPipelineState: *mut *mut ::std::os::raw::c_void,
9809 ) -> HRESULT,
9810 >,
9811 pub CreateComputePipelineState: ::std::option::Option<
9812 unsafe extern "C" fn(
9813 This: *mut ID3D12Device,
9814 pDesc: *const D3D12_COMPUTE_PIPELINE_STATE_DESC,
9815 riid: *const IID,
9816 ppPipelineState: *mut *mut ::std::os::raw::c_void,
9817 ) -> HRESULT,
9818 >,
9819 pub CreateCommandList: ::std::option::Option<
9820 unsafe extern "C" fn(
9821 This: *mut ID3D12Device,
9822 nodeMask: UINT,
9823 type_: D3D12_COMMAND_LIST_TYPE,
9824 pCommandAllocator: *mut ID3D12CommandAllocator,
9825 pInitialState: *mut ID3D12PipelineState,
9826 riid: *const IID,
9827 ppCommandList: *mut *mut ::std::os::raw::c_void,
9828 ) -> HRESULT,
9829 >,
9830 pub CheckFeatureSupport: ::std::option::Option<
9831 unsafe extern "C" fn(
9832 This: *mut ID3D12Device,
9833 Feature: D3D12_FEATURE,
9834 pFeatureSupportData: *mut ::std::os::raw::c_void,
9835 FeatureSupportDataSize: UINT,
9836 ) -> HRESULT,
9837 >,
9838 pub CreateDescriptorHeap: ::std::option::Option<
9839 unsafe extern "C" fn(
9840 This: *mut ID3D12Device,
9841 pDescriptorHeapDesc: *const D3D12_DESCRIPTOR_HEAP_DESC,
9842 riid: *const IID,
9843 ppvHeap: *mut *mut ::std::os::raw::c_void,
9844 ) -> HRESULT,
9845 >,
9846 pub GetDescriptorHandleIncrementSize: ::std::option::Option<
9847 unsafe extern "C" fn(
9848 This: *mut ID3D12Device,
9849 DescriptorHeapType: D3D12_DESCRIPTOR_HEAP_TYPE,
9850 ) -> UINT,
9851 >,
9852 pub CreateRootSignature: ::std::option::Option<
9853 unsafe extern "C" fn(
9854 This: *mut ID3D12Device,
9855 nodeMask: UINT,
9856 pBlobWithRootSignature: *const ::std::os::raw::c_void,
9857 blobLengthInBytes: SIZE_T,
9858 riid: *const IID,
9859 ppvRootSignature: *mut *mut ::std::os::raw::c_void,
9860 ) -> HRESULT,
9861 >,
9862 pub CreateConstantBufferView: ::std::option::Option<
9863 unsafe extern "C" fn(
9864 This: *mut ID3D12Device,
9865 pDesc: *const D3D12_CONSTANT_BUFFER_VIEW_DESC,
9866 DestDescriptor: D3D12_CPU_DESCRIPTOR_HANDLE,
9867 ),
9868 >,
9869 pub CreateShaderResourceView: ::std::option::Option<
9870 unsafe extern "C" fn(
9871 This: *mut ID3D12Device,
9872 pResource: *mut ID3D12Resource,
9873 pDesc: *const D3D12_SHADER_RESOURCE_VIEW_DESC,
9874 DestDescriptor: D3D12_CPU_DESCRIPTOR_HANDLE,
9875 ),
9876 >,
9877 pub CreateUnorderedAccessView: ::std::option::Option<
9878 unsafe extern "C" fn(
9879 This: *mut ID3D12Device,
9880 pResource: *mut ID3D12Resource,
9881 pCounterResource: *mut ID3D12Resource,
9882 pDesc: *const D3D12_UNORDERED_ACCESS_VIEW_DESC,
9883 DestDescriptor: D3D12_CPU_DESCRIPTOR_HANDLE,
9884 ),
9885 >,
9886 pub CreateRenderTargetView: ::std::option::Option<
9887 unsafe extern "C" fn(
9888 This: *mut ID3D12Device,
9889 pResource: *mut ID3D12Resource,
9890 pDesc: *const D3D12_RENDER_TARGET_VIEW_DESC,
9891 DestDescriptor: D3D12_CPU_DESCRIPTOR_HANDLE,
9892 ),
9893 >,
9894 pub CreateDepthStencilView: ::std::option::Option<
9895 unsafe extern "C" fn(
9896 This: *mut ID3D12Device,
9897 pResource: *mut ID3D12Resource,
9898 pDesc: *const D3D12_DEPTH_STENCIL_VIEW_DESC,
9899 DestDescriptor: D3D12_CPU_DESCRIPTOR_HANDLE,
9900 ),
9901 >,
9902 pub CreateSampler: ::std::option::Option<
9903 unsafe extern "C" fn(
9904 This: *mut ID3D12Device,
9905 pDesc: *const D3D12_SAMPLER_DESC,
9906 DestDescriptor: D3D12_CPU_DESCRIPTOR_HANDLE,
9907 ),
9908 >,
9909 pub CopyDescriptors: ::std::option::Option<
9910 unsafe extern "C" fn(
9911 This: *mut ID3D12Device,
9912 NumDestDescriptorRanges: UINT,
9913 pDestDescriptorRangeStarts: *const D3D12_CPU_DESCRIPTOR_HANDLE,
9914 pDestDescriptorRangeSizes: *const UINT,
9915 NumSrcDescriptorRanges: UINT,
9916 pSrcDescriptorRangeStarts: *const D3D12_CPU_DESCRIPTOR_HANDLE,
9917 pSrcDescriptorRangeSizes: *const UINT,
9918 DescriptorHeapsType: D3D12_DESCRIPTOR_HEAP_TYPE,
9919 ),
9920 >,
9921 pub CopyDescriptorsSimple: ::std::option::Option<
9922 unsafe extern "C" fn(
9923 This: *mut ID3D12Device,
9924 NumDescriptors: UINT,
9925 DestDescriptorRangeStart: D3D12_CPU_DESCRIPTOR_HANDLE,
9926 SrcDescriptorRangeStart: D3D12_CPU_DESCRIPTOR_HANDLE,
9927 DescriptorHeapsType: D3D12_DESCRIPTOR_HEAP_TYPE,
9928 ),
9929 >,
9930 pub GetResourceAllocationInfo: ::std::option::Option<
9931 unsafe extern "C" fn(
9932 This: *mut ID3D12Device,
9933 RetVal: *mut D3D12_RESOURCE_ALLOCATION_INFO,
9934 visibleMask: UINT,
9935 numResourceDescs: UINT,
9936 pResourceDescs: *const D3D12_RESOURCE_DESC,
9937 ) -> *mut D3D12_RESOURCE_ALLOCATION_INFO,
9938 >,
9939 pub GetCustomHeapProperties: ::std::option::Option<
9940 unsafe extern "C" fn(
9941 This: *mut ID3D12Device,
9942 RetVal: *mut D3D12_HEAP_PROPERTIES,
9943 nodeMask: UINT,
9944 heapType: D3D12_HEAP_TYPE,
9945 ) -> *mut D3D12_HEAP_PROPERTIES,
9946 >,
9947 pub CreateCommittedResource: ::std::option::Option<
9948 unsafe extern "C" fn(
9949 This: *mut ID3D12Device,
9950 pHeapProperties: *const D3D12_HEAP_PROPERTIES,
9951 HeapFlags: D3D12_HEAP_FLAGS,
9952 pDesc: *const D3D12_RESOURCE_DESC,
9953 InitialResourceState: D3D12_RESOURCE_STATES,
9954 pOptimizedClearValue: *const D3D12_CLEAR_VALUE,
9955 riidResource: *const IID,
9956 ppvResource: *mut *mut ::std::os::raw::c_void,
9957 ) -> HRESULT,
9958 >,
9959 pub CreateHeap: ::std::option::Option<
9960 unsafe extern "C" fn(
9961 This: *mut ID3D12Device,
9962 pDesc: *const D3D12_HEAP_DESC,
9963 riid: *const IID,
9964 ppvHeap: *mut *mut ::std::os::raw::c_void,
9965 ) -> HRESULT,
9966 >,
9967 pub CreatePlacedResource: ::std::option::Option<
9968 unsafe extern "C" fn(
9969 This: *mut ID3D12Device,
9970 pHeap: *mut ID3D12Heap,
9971 HeapOffset: UINT64,
9972 pDesc: *const D3D12_RESOURCE_DESC,
9973 InitialState: D3D12_RESOURCE_STATES,
9974 pOptimizedClearValue: *const D3D12_CLEAR_VALUE,
9975 riid: *const IID,
9976 ppvResource: *mut *mut ::std::os::raw::c_void,
9977 ) -> HRESULT,
9978 >,
9979 pub CreateReservedResource: ::std::option::Option<
9980 unsafe extern "C" fn(
9981 This: *mut ID3D12Device,
9982 pDesc: *const D3D12_RESOURCE_DESC,
9983 InitialState: D3D12_RESOURCE_STATES,
9984 pOptimizedClearValue: *const D3D12_CLEAR_VALUE,
9985 riid: *const IID,
9986 ppvResource: *mut *mut ::std::os::raw::c_void,
9987 ) -> HRESULT,
9988 >,
9989 pub CreateSharedHandle: ::std::option::Option<
9990 unsafe extern "C" fn(
9991 This: *mut ID3D12Device,
9992 pObject: *mut ID3D12DeviceChild,
9993 pAttributes: *const SECURITY_ATTRIBUTES,
9994 Access: DWORD,
9995 Name: LPCWSTR,
9996 pHandle: *mut HANDLE,
9997 ) -> HRESULT,
9998 >,
9999 pub OpenSharedHandle: ::std::option::Option<
10000 unsafe extern "C" fn(
10001 This: *mut ID3D12Device,
10002 NTHandle: HANDLE,
10003 riid: *const IID,
10004 ppvObj: *mut *mut ::std::os::raw::c_void,
10005 ) -> HRESULT,
10006 >,
10007 pub OpenSharedHandleByName: ::std::option::Option<
10008 unsafe extern "C" fn(
10009 This: *mut ID3D12Device,
10010 Name: LPCWSTR,
10011 Access: DWORD,
10012 pNTHandle: *mut HANDLE,
10013 ) -> HRESULT,
10014 >,
10015 pub MakeResident: ::std::option::Option<
10016 unsafe extern "C" fn(
10017 This: *mut ID3D12Device,
10018 NumObjects: UINT,
10019 ppObjects: *const *mut ID3D12Pageable,
10020 ) -> HRESULT,
10021 >,
10022 pub Evict: ::std::option::Option<
10023 unsafe extern "C" fn(
10024 This: *mut ID3D12Device,
10025 NumObjects: UINT,
10026 ppObjects: *const *mut ID3D12Pageable,
10027 ) -> HRESULT,
10028 >,
10029 pub CreateFence: ::std::option::Option<
10030 unsafe extern "C" fn(
10031 This: *mut ID3D12Device,
10032 InitialValue: UINT64,
10033 Flags: D3D12_FENCE_FLAGS,
10034 riid: *const IID,
10035 ppFence: *mut *mut ::std::os::raw::c_void,
10036 ) -> HRESULT,
10037 >,
10038 pub GetDeviceRemovedReason: ::std::option::Option<
10039 unsafe extern "C" fn(This: *mut ID3D12Device) -> HRESULT,
10040 >,
10041 pub GetCopyableFootprints: ::std::option::Option<
10042 unsafe extern "C" fn(
10043 This: *mut ID3D12Device,
10044 pResourceDesc: *const D3D12_RESOURCE_DESC,
10045 FirstSubresource: UINT,
10046 NumSubresources: UINT,
10047 BaseOffset: UINT64,
10048 pLayouts: *mut D3D12_PLACED_SUBRESOURCE_FOOTPRINT,
10049 pNumRows: *mut UINT,
10050 pRowSizeInBytes: *mut UINT64,
10051 pTotalBytes: *mut UINT64,
10052 ),
10053 >,
10054 pub CreateQueryHeap: ::std::option::Option<
10055 unsafe extern "C" fn(
10056 This: *mut ID3D12Device,
10057 pDesc: *const D3D12_QUERY_HEAP_DESC,
10058 riid: *const IID,
10059 ppvHeap: *mut *mut ::std::os::raw::c_void,
10060 ) -> HRESULT,
10061 >,
10062 pub SetStablePowerState: ::std::option::Option<
10063 unsafe extern "C" fn(This: *mut ID3D12Device, Enable: BOOL) -> HRESULT,
10064 >,
10065 pub CreateCommandSignature: ::std::option::Option<
10066 unsafe extern "C" fn(
10067 This: *mut ID3D12Device,
10068 pDesc: *const D3D12_COMMAND_SIGNATURE_DESC,
10069 pRootSignature: *mut ID3D12RootSignature,
10070 riid: *const IID,
10071 ppvCommandSignature: *mut *mut ::std::os::raw::c_void,
10072 ) -> HRESULT,
10073 >,
10074 pub GetResourceTiling: ::std::option::Option<
10075 unsafe extern "C" fn(
10076 This: *mut ID3D12Device,
10077 pTiledResource: *mut ID3D12Resource,
10078 pNumTilesForEntireResource: *mut UINT,
10079 pPackedMipDesc: *mut D3D12_PACKED_MIP_INFO,
10080 pStandardTileShapeForNonPackedMips: *mut D3D12_TILE_SHAPE,
10081 pNumSubresourceTilings: *mut UINT,
10082 FirstSubresourceTilingToGet: UINT,
10083 pSubresourceTilingsForNonPackedMips: *mut D3D12_SUBRESOURCE_TILING,
10084 ),
10085 >,
10086 pub GetAdapterLuid: ::std::option::Option<
10087 unsafe extern "C" fn(
10088 This: *mut ID3D12Device,
10089 RetVal: *mut LUID,
10090 ) -> *mut LUID,
10091 >,
10092}
10093#[repr(C)]
10094#[derive(Debug, Copy, Clone, Hash, PartialOrd, Ord, PartialEq, Eq)]
10095pub struct ID3D12Device {
10096 pub lpVtbl: *mut ID3D12DeviceVtbl,
10097}
10098impl Default for ID3D12Device {
10099 fn default() -> Self {
10100 let mut s = ::std::mem::MaybeUninit::<Self>::uninit();
10101 unsafe {
10102 ::std::ptr::write_bytes(s.as_mut_ptr(), 0, 1);
10103 s.assume_init()
10104 }
10105 }
10106}
10107extern "C" {
10108 pub static IID_ID3D12PipelineLibrary: IID;
10109}
10110#[repr(C)]
10111#[derive(Debug, Default, Copy, Clone, Hash, PartialOrd, Ord, PartialEq, Eq)]
10112pub struct ID3D12PipelineLibraryVtbl {
10113 pub QueryInterface: ::std::option::Option<
10114 unsafe extern "C" fn(
10115 This: *mut ID3D12PipelineLibrary,
10116 riid: *const IID,
10117 ppvObject: *mut *mut ::std::os::raw::c_void,
10118 ) -> HRESULT,
10119 >,
10120 pub AddRef: ::std::option::Option<
10121 unsafe extern "C" fn(This: *mut ID3D12PipelineLibrary) -> ULONG,
10122 >,
10123 pub Release: ::std::option::Option<
10124 unsafe extern "C" fn(This: *mut ID3D12PipelineLibrary) -> ULONG,
10125 >,
10126 pub GetPrivateData: ::std::option::Option<
10127 unsafe extern "C" fn(
10128 This: *mut ID3D12PipelineLibrary,
10129 guid: *const GUID,
10130 pDataSize: *mut UINT,
10131 pData: *mut ::std::os::raw::c_void,
10132 ) -> HRESULT,
10133 >,
10134 pub SetPrivateData: ::std::option::Option<
10135 unsafe extern "C" fn(
10136 This: *mut ID3D12PipelineLibrary,
10137 guid: *const GUID,
10138 DataSize: UINT,
10139 pData: *const ::std::os::raw::c_void,
10140 ) -> HRESULT,
10141 >,
10142 pub SetPrivateDataInterface: ::std::option::Option<
10143 unsafe extern "C" fn(
10144 This: *mut ID3D12PipelineLibrary,
10145 guid: *const GUID,
10146 pData: *const IUnknown,
10147 ) -> HRESULT,
10148 >,
10149 pub SetName: ::std::option::Option<
10150 unsafe extern "C" fn(
10151 This: *mut ID3D12PipelineLibrary,
10152 Name: LPCWSTR,
10153 ) -> HRESULT,
10154 >,
10155 pub GetDevice: ::std::option::Option<
10156 unsafe extern "C" fn(
10157 This: *mut ID3D12PipelineLibrary,
10158 riid: *const IID,
10159 ppvDevice: *mut *mut ::std::os::raw::c_void,
10160 ) -> HRESULT,
10161 >,
10162 pub StorePipeline: ::std::option::Option<
10163 unsafe extern "C" fn(
10164 This: *mut ID3D12PipelineLibrary,
10165 pName: LPCWSTR,
10166 pPipeline: *mut ID3D12PipelineState,
10167 ) -> HRESULT,
10168 >,
10169 pub LoadGraphicsPipeline: ::std::option::Option<
10170 unsafe extern "C" fn(
10171 This: *mut ID3D12PipelineLibrary,
10172 pName: LPCWSTR,
10173 pDesc: *const D3D12_GRAPHICS_PIPELINE_STATE_DESC,
10174 riid: *const IID,
10175 ppPipelineState: *mut *mut ::std::os::raw::c_void,
10176 ) -> HRESULT,
10177 >,
10178 pub LoadComputePipeline: ::std::option::Option<
10179 unsafe extern "C" fn(
10180 This: *mut ID3D12PipelineLibrary,
10181 pName: LPCWSTR,
10182 pDesc: *const D3D12_COMPUTE_PIPELINE_STATE_DESC,
10183 riid: *const IID,
10184 ppPipelineState: *mut *mut ::std::os::raw::c_void,
10185 ) -> HRESULT,
10186 >,
10187 pub GetSerializedSize: ::std::option::Option<
10188 unsafe extern "C" fn(This: *mut ID3D12PipelineLibrary) -> SIZE_T,
10189 >,
10190 pub Serialize: ::std::option::Option<
10191 unsafe extern "C" fn(
10192 This: *mut ID3D12PipelineLibrary,
10193 pData: *mut ::std::os::raw::c_void,
10194 DataSizeInBytes: SIZE_T,
10195 ) -> HRESULT,
10196 >,
10197}
10198#[repr(C)]
10199#[derive(Debug, Copy, Clone, Hash, PartialOrd, Ord, PartialEq, Eq)]
10200pub struct ID3D12PipelineLibrary {
10201 pub lpVtbl: *mut ID3D12PipelineLibraryVtbl,
10202}
10203impl Default for ID3D12PipelineLibrary {
10204 fn default() -> Self {
10205 let mut s = ::std::mem::MaybeUninit::<Self>::uninit();
10206 unsafe {
10207 ::std::ptr::write_bytes(s.as_mut_ptr(), 0, 1);
10208 s.assume_init()
10209 }
10210 }
10211}
10212extern "C" {
10213 pub static IID_ID3D12PipelineLibrary1: IID;
10214}
10215#[repr(C)]
10216#[derive(Debug, Default, Copy, Clone, Hash, PartialOrd, Ord, PartialEq, Eq)]
10217pub struct ID3D12PipelineLibrary1Vtbl {
10218 pub QueryInterface: ::std::option::Option<
10219 unsafe extern "C" fn(
10220 This: *mut ID3D12PipelineLibrary1,
10221 riid: *const IID,
10222 ppvObject: *mut *mut ::std::os::raw::c_void,
10223 ) -> HRESULT,
10224 >,
10225 pub AddRef: ::std::option::Option<
10226 unsafe extern "C" fn(This: *mut ID3D12PipelineLibrary1) -> ULONG,
10227 >,
10228 pub Release: ::std::option::Option<
10229 unsafe extern "C" fn(This: *mut ID3D12PipelineLibrary1) -> ULONG,
10230 >,
10231 pub GetPrivateData: ::std::option::Option<
10232 unsafe extern "C" fn(
10233 This: *mut ID3D12PipelineLibrary1,
10234 guid: *const GUID,
10235 pDataSize: *mut UINT,
10236 pData: *mut ::std::os::raw::c_void,
10237 ) -> HRESULT,
10238 >,
10239 pub SetPrivateData: ::std::option::Option<
10240 unsafe extern "C" fn(
10241 This: *mut ID3D12PipelineLibrary1,
10242 guid: *const GUID,
10243 DataSize: UINT,
10244 pData: *const ::std::os::raw::c_void,
10245 ) -> HRESULT,
10246 >,
10247 pub SetPrivateDataInterface: ::std::option::Option<
10248 unsafe extern "C" fn(
10249 This: *mut ID3D12PipelineLibrary1,
10250 guid: *const GUID,
10251 pData: *const IUnknown,
10252 ) -> HRESULT,
10253 >,
10254 pub SetName: ::std::option::Option<
10255 unsafe extern "C" fn(
10256 This: *mut ID3D12PipelineLibrary1,
10257 Name: LPCWSTR,
10258 ) -> HRESULT,
10259 >,
10260 pub GetDevice: ::std::option::Option<
10261 unsafe extern "C" fn(
10262 This: *mut ID3D12PipelineLibrary1,
10263 riid: *const IID,
10264 ppvDevice: *mut *mut ::std::os::raw::c_void,
10265 ) -> HRESULT,
10266 >,
10267 pub StorePipeline: ::std::option::Option<
10268 unsafe extern "C" fn(
10269 This: *mut ID3D12PipelineLibrary1,
10270 pName: LPCWSTR,
10271 pPipeline: *mut ID3D12PipelineState,
10272 ) -> HRESULT,
10273 >,
10274 pub LoadGraphicsPipeline: ::std::option::Option<
10275 unsafe extern "C" fn(
10276 This: *mut ID3D12PipelineLibrary1,
10277 pName: LPCWSTR,
10278 pDesc: *const D3D12_GRAPHICS_PIPELINE_STATE_DESC,
10279 riid: *const IID,
10280 ppPipelineState: *mut *mut ::std::os::raw::c_void,
10281 ) -> HRESULT,
10282 >,
10283 pub LoadComputePipeline: ::std::option::Option<
10284 unsafe extern "C" fn(
10285 This: *mut ID3D12PipelineLibrary1,
10286 pName: LPCWSTR,
10287 pDesc: *const D3D12_COMPUTE_PIPELINE_STATE_DESC,
10288 riid: *const IID,
10289 ppPipelineState: *mut *mut ::std::os::raw::c_void,
10290 ) -> HRESULT,
10291 >,
10292 pub GetSerializedSize: ::std::option::Option<
10293 unsafe extern "C" fn(This: *mut ID3D12PipelineLibrary1) -> SIZE_T,
10294 >,
10295 pub Serialize: ::std::option::Option<
10296 unsafe extern "C" fn(
10297 This: *mut ID3D12PipelineLibrary1,
10298 pData: *mut ::std::os::raw::c_void,
10299 DataSizeInBytes: SIZE_T,
10300 ) -> HRESULT,
10301 >,
10302 pub LoadPipeline: ::std::option::Option<
10303 unsafe extern "C" fn(
10304 This: *mut ID3D12PipelineLibrary1,
10305 pName: LPCWSTR,
10306 pDesc: *const D3D12_PIPELINE_STATE_STREAM_DESC,
10307 riid: *const IID,
10308 ppPipelineState: *mut *mut ::std::os::raw::c_void,
10309 ) -> HRESULT,
10310 >,
10311}
10312#[repr(C)]
10313#[derive(Debug, Copy, Clone, Hash, PartialOrd, Ord, PartialEq, Eq)]
10314pub struct ID3D12PipelineLibrary1 {
10315 pub lpVtbl: *mut ID3D12PipelineLibrary1Vtbl,
10316}
10317impl Default for ID3D12PipelineLibrary1 {
10318 fn default() -> Self {
10319 let mut s = ::std::mem::MaybeUninit::<Self>::uninit();
10320 unsafe {
10321 ::std::ptr::write_bytes(s.as_mut_ptr(), 0, 1);
10322 s.assume_init()
10323 }
10324 }
10325}
10326pub const D3D12_MULTIPLE_FENCE_WAIT_FLAGS_D3D12_MULTIPLE_FENCE_WAIT_FLAG_NONE : D3D12_MULTIPLE_FENCE_WAIT_FLAGS = 0 ;
10327pub const D3D12_MULTIPLE_FENCE_WAIT_FLAGS_D3D12_MULTIPLE_FENCE_WAIT_FLAG_ANY:
10328 D3D12_MULTIPLE_FENCE_WAIT_FLAGS = 1;
10329pub const D3D12_MULTIPLE_FENCE_WAIT_FLAGS_D3D12_MULTIPLE_FENCE_WAIT_FLAG_ALL:
10330 D3D12_MULTIPLE_FENCE_WAIT_FLAGS = 0;
10331pub type D3D12_MULTIPLE_FENCE_WAIT_FLAGS = ::std::os::raw::c_int;
10332pub const D3D12_RESIDENCY_PRIORITY_D3D12_RESIDENCY_PRIORITY_MINIMUM:
10333 D3D12_RESIDENCY_PRIORITY = 671088640;
10334pub const D3D12_RESIDENCY_PRIORITY_D3D12_RESIDENCY_PRIORITY_LOW:
10335 D3D12_RESIDENCY_PRIORITY = 1342177280;
10336pub const D3D12_RESIDENCY_PRIORITY_D3D12_RESIDENCY_PRIORITY_NORMAL:
10337 D3D12_RESIDENCY_PRIORITY = 2013265920;
10338pub const D3D12_RESIDENCY_PRIORITY_D3D12_RESIDENCY_PRIORITY_HIGH:
10339 D3D12_RESIDENCY_PRIORITY = -1610547200;
10340pub const D3D12_RESIDENCY_PRIORITY_D3D12_RESIDENCY_PRIORITY_MAXIMUM:
10341 D3D12_RESIDENCY_PRIORITY = -939524096;
10342pub type D3D12_RESIDENCY_PRIORITY = ::std::os::raw::c_int;
10343extern "C" {
10344 pub static IID_ID3D12Device1: IID;
10345}
10346#[repr(C)]
10347#[derive(Debug, Default, Copy, Clone, Hash, PartialOrd, Ord, PartialEq, Eq)]
10348pub struct ID3D12Device1Vtbl {
10349 pub QueryInterface: ::std::option::Option<
10350 unsafe extern "C" fn(
10351 This: *mut ID3D12Device1,
10352 riid: *const IID,
10353 ppvObject: *mut *mut ::std::os::raw::c_void,
10354 ) -> HRESULT,
10355 >,
10356 pub AddRef: ::std::option::Option<
10357 unsafe extern "C" fn(This: *mut ID3D12Device1) -> ULONG,
10358 >,
10359 pub Release: ::std::option::Option<
10360 unsafe extern "C" fn(This: *mut ID3D12Device1) -> ULONG,
10361 >,
10362 pub GetPrivateData: ::std::option::Option<
10363 unsafe extern "C" fn(
10364 This: *mut ID3D12Device1,
10365 guid: *const GUID,
10366 pDataSize: *mut UINT,
10367 pData: *mut ::std::os::raw::c_void,
10368 ) -> HRESULT,
10369 >,
10370 pub SetPrivateData: ::std::option::Option<
10371 unsafe extern "C" fn(
10372 This: *mut ID3D12Device1,
10373 guid: *const GUID,
10374 DataSize: UINT,
10375 pData: *const ::std::os::raw::c_void,
10376 ) -> HRESULT,
10377 >,
10378 pub SetPrivateDataInterface: ::std::option::Option<
10379 unsafe extern "C" fn(
10380 This: *mut ID3D12Device1,
10381 guid: *const GUID,
10382 pData: *const IUnknown,
10383 ) -> HRESULT,
10384 >,
10385 pub SetName: ::std::option::Option<
10386 unsafe extern "C" fn(
10387 This: *mut ID3D12Device1,
10388 Name: LPCWSTR,
10389 ) -> HRESULT,
10390 >,
10391 pub GetNodeCount: ::std::option::Option<
10392 unsafe extern "C" fn(This: *mut ID3D12Device1) -> UINT,
10393 >,
10394 pub CreateCommandQueue: ::std::option::Option<
10395 unsafe extern "C" fn(
10396 This: *mut ID3D12Device1,
10397 pDesc: *const D3D12_COMMAND_QUEUE_DESC,
10398 riid: *const IID,
10399 ppCommandQueue: *mut *mut ::std::os::raw::c_void,
10400 ) -> HRESULT,
10401 >,
10402 pub CreateCommandAllocator: ::std::option::Option<
10403 unsafe extern "C" fn(
10404 This: *mut ID3D12Device1,
10405 type_: D3D12_COMMAND_LIST_TYPE,
10406 riid: *const IID,
10407 ppCommandAllocator: *mut *mut ::std::os::raw::c_void,
10408 ) -> HRESULT,
10409 >,
10410 pub CreateGraphicsPipelineState: ::std::option::Option<
10411 unsafe extern "C" fn(
10412 This: *mut ID3D12Device1,
10413 pDesc: *const D3D12_GRAPHICS_PIPELINE_STATE_DESC,
10414 riid: *const IID,
10415 ppPipelineState: *mut *mut ::std::os::raw::c_void,
10416 ) -> HRESULT,
10417 >,
10418 pub CreateComputePipelineState: ::std::option::Option<
10419 unsafe extern "C" fn(
10420 This: *mut ID3D12Device1,
10421 pDesc: *const D3D12_COMPUTE_PIPELINE_STATE_DESC,
10422 riid: *const IID,
10423 ppPipelineState: *mut *mut ::std::os::raw::c_void,
10424 ) -> HRESULT,
10425 >,
10426 pub CreateCommandList: ::std::option::Option<
10427 unsafe extern "C" fn(
10428 This: *mut ID3D12Device1,
10429 nodeMask: UINT,
10430 type_: D3D12_COMMAND_LIST_TYPE,
10431 pCommandAllocator: *mut ID3D12CommandAllocator,
10432 pInitialState: *mut ID3D12PipelineState,
10433 riid: *const IID,
10434 ppCommandList: *mut *mut ::std::os::raw::c_void,
10435 ) -> HRESULT,
10436 >,
10437 pub CheckFeatureSupport: ::std::option::Option<
10438 unsafe extern "C" fn(
10439 This: *mut ID3D12Device1,
10440 Feature: D3D12_FEATURE,
10441 pFeatureSupportData: *mut ::std::os::raw::c_void,
10442 FeatureSupportDataSize: UINT,
10443 ) -> HRESULT,
10444 >,
10445 pub CreateDescriptorHeap: ::std::option::Option<
10446 unsafe extern "C" fn(
10447 This: *mut ID3D12Device1,
10448 pDescriptorHeapDesc: *const D3D12_DESCRIPTOR_HEAP_DESC,
10449 riid: *const IID,
10450 ppvHeap: *mut *mut ::std::os::raw::c_void,
10451 ) -> HRESULT,
10452 >,
10453 pub GetDescriptorHandleIncrementSize: ::std::option::Option<
10454 unsafe extern "C" fn(
10455 This: *mut ID3D12Device1,
10456 DescriptorHeapType: D3D12_DESCRIPTOR_HEAP_TYPE,
10457 ) -> UINT,
10458 >,
10459 pub CreateRootSignature: ::std::option::Option<
10460 unsafe extern "C" fn(
10461 This: *mut ID3D12Device1,
10462 nodeMask: UINT,
10463 pBlobWithRootSignature: *const ::std::os::raw::c_void,
10464 blobLengthInBytes: SIZE_T,
10465 riid: *const IID,
10466 ppvRootSignature: *mut *mut ::std::os::raw::c_void,
10467 ) -> HRESULT,
10468 >,
10469 pub CreateConstantBufferView: ::std::option::Option<
10470 unsafe extern "C" fn(
10471 This: *mut ID3D12Device1,
10472 pDesc: *const D3D12_CONSTANT_BUFFER_VIEW_DESC,
10473 DestDescriptor: D3D12_CPU_DESCRIPTOR_HANDLE,
10474 ),
10475 >,
10476 pub CreateShaderResourceView: ::std::option::Option<
10477 unsafe extern "C" fn(
10478 This: *mut ID3D12Device1,
10479 pResource: *mut ID3D12Resource,
10480 pDesc: *const D3D12_SHADER_RESOURCE_VIEW_DESC,
10481 DestDescriptor: D3D12_CPU_DESCRIPTOR_HANDLE,
10482 ),
10483 >,
10484 pub CreateUnorderedAccessView: ::std::option::Option<
10485 unsafe extern "C" fn(
10486 This: *mut ID3D12Device1,
10487 pResource: *mut ID3D12Resource,
10488 pCounterResource: *mut ID3D12Resource,
10489 pDesc: *const D3D12_UNORDERED_ACCESS_VIEW_DESC,
10490 DestDescriptor: D3D12_CPU_DESCRIPTOR_HANDLE,
10491 ),
10492 >,
10493 pub CreateRenderTargetView: ::std::option::Option<
10494 unsafe extern "C" fn(
10495 This: *mut ID3D12Device1,
10496 pResource: *mut ID3D12Resource,
10497 pDesc: *const D3D12_RENDER_TARGET_VIEW_DESC,
10498 DestDescriptor: D3D12_CPU_DESCRIPTOR_HANDLE,
10499 ),
10500 >,
10501 pub CreateDepthStencilView: ::std::option::Option<
10502 unsafe extern "C" fn(
10503 This: *mut ID3D12Device1,
10504 pResource: *mut ID3D12Resource,
10505 pDesc: *const D3D12_DEPTH_STENCIL_VIEW_DESC,
10506 DestDescriptor: D3D12_CPU_DESCRIPTOR_HANDLE,
10507 ),
10508 >,
10509 pub CreateSampler: ::std::option::Option<
10510 unsafe extern "C" fn(
10511 This: *mut ID3D12Device1,
10512 pDesc: *const D3D12_SAMPLER_DESC,
10513 DestDescriptor: D3D12_CPU_DESCRIPTOR_HANDLE,
10514 ),
10515 >,
10516 pub CopyDescriptors: ::std::option::Option<
10517 unsafe extern "C" fn(
10518 This: *mut ID3D12Device1,
10519 NumDestDescriptorRanges: UINT,
10520 pDestDescriptorRangeStarts: *const D3D12_CPU_DESCRIPTOR_HANDLE,
10521 pDestDescriptorRangeSizes: *const UINT,
10522 NumSrcDescriptorRanges: UINT,
10523 pSrcDescriptorRangeStarts: *const D3D12_CPU_DESCRIPTOR_HANDLE,
10524 pSrcDescriptorRangeSizes: *const UINT,
10525 DescriptorHeapsType: D3D12_DESCRIPTOR_HEAP_TYPE,
10526 ),
10527 >,
10528 pub CopyDescriptorsSimple: ::std::option::Option<
10529 unsafe extern "C" fn(
10530 This: *mut ID3D12Device1,
10531 NumDescriptors: UINT,
10532 DestDescriptorRangeStart: D3D12_CPU_DESCRIPTOR_HANDLE,
10533 SrcDescriptorRangeStart: D3D12_CPU_DESCRIPTOR_HANDLE,
10534 DescriptorHeapsType: D3D12_DESCRIPTOR_HEAP_TYPE,
10535 ),
10536 >,
10537 pub GetResourceAllocationInfo: ::std::option::Option<
10538 unsafe extern "C" fn(
10539 This: *mut ID3D12Device1,
10540 RetVal: *mut D3D12_RESOURCE_ALLOCATION_INFO,
10541 visibleMask: UINT,
10542 numResourceDescs: UINT,
10543 pResourceDescs: *const D3D12_RESOURCE_DESC,
10544 ) -> *mut D3D12_RESOURCE_ALLOCATION_INFO,
10545 >,
10546 pub GetCustomHeapProperties: ::std::option::Option<
10547 unsafe extern "C" fn(
10548 This: *mut ID3D12Device1,
10549 RetVal: *mut D3D12_HEAP_PROPERTIES,
10550 nodeMask: UINT,
10551 heapType: D3D12_HEAP_TYPE,
10552 ) -> *mut D3D12_HEAP_PROPERTIES,
10553 >,
10554 pub CreateCommittedResource: ::std::option::Option<
10555 unsafe extern "C" fn(
10556 This: *mut ID3D12Device1,
10557 pHeapProperties: *const D3D12_HEAP_PROPERTIES,
10558 HeapFlags: D3D12_HEAP_FLAGS,
10559 pDesc: *const D3D12_RESOURCE_DESC,
10560 InitialResourceState: D3D12_RESOURCE_STATES,
10561 pOptimizedClearValue: *const D3D12_CLEAR_VALUE,
10562 riidResource: *const IID,
10563 ppvResource: *mut *mut ::std::os::raw::c_void,
10564 ) -> HRESULT,
10565 >,
10566 pub CreateHeap: ::std::option::Option<
10567 unsafe extern "C" fn(
10568 This: *mut ID3D12Device1,
10569 pDesc: *const D3D12_HEAP_DESC,
10570 riid: *const IID,
10571 ppvHeap: *mut *mut ::std::os::raw::c_void,
10572 ) -> HRESULT,
10573 >,
10574 pub CreatePlacedResource: ::std::option::Option<
10575 unsafe extern "C" fn(
10576 This: *mut ID3D12Device1,
10577 pHeap: *mut ID3D12Heap,
10578 HeapOffset: UINT64,
10579 pDesc: *const D3D12_RESOURCE_DESC,
10580 InitialState: D3D12_RESOURCE_STATES,
10581 pOptimizedClearValue: *const D3D12_CLEAR_VALUE,
10582 riid: *const IID,
10583 ppvResource: *mut *mut ::std::os::raw::c_void,
10584 ) -> HRESULT,
10585 >,
10586 pub CreateReservedResource: ::std::option::Option<
10587 unsafe extern "C" fn(
10588 This: *mut ID3D12Device1,
10589 pDesc: *const D3D12_RESOURCE_DESC,
10590 InitialState: D3D12_RESOURCE_STATES,
10591 pOptimizedClearValue: *const D3D12_CLEAR_VALUE,
10592 riid: *const IID,
10593 ppvResource: *mut *mut ::std::os::raw::c_void,
10594 ) -> HRESULT,
10595 >,
10596 pub CreateSharedHandle: ::std::option::Option<
10597 unsafe extern "C" fn(
10598 This: *mut ID3D12Device1,
10599 pObject: *mut ID3D12DeviceChild,
10600 pAttributes: *const SECURITY_ATTRIBUTES,
10601 Access: DWORD,
10602 Name: LPCWSTR,
10603 pHandle: *mut HANDLE,
10604 ) -> HRESULT,
10605 >,
10606 pub OpenSharedHandle: ::std::option::Option<
10607 unsafe extern "C" fn(
10608 This: *mut ID3D12Device1,
10609 NTHandle: HANDLE,
10610 riid: *const IID,
10611 ppvObj: *mut *mut ::std::os::raw::c_void,
10612 ) -> HRESULT,
10613 >,
10614 pub OpenSharedHandleByName: ::std::option::Option<
10615 unsafe extern "C" fn(
10616 This: *mut ID3D12Device1,
10617 Name: LPCWSTR,
10618 Access: DWORD,
10619 pNTHandle: *mut HANDLE,
10620 ) -> HRESULT,
10621 >,
10622 pub MakeResident: ::std::option::Option<
10623 unsafe extern "C" fn(
10624 This: *mut ID3D12Device1,
10625 NumObjects: UINT,
10626 ppObjects: *const *mut ID3D12Pageable,
10627 ) -> HRESULT,
10628 >,
10629 pub Evict: ::std::option::Option<
10630 unsafe extern "C" fn(
10631 This: *mut ID3D12Device1,
10632 NumObjects: UINT,
10633 ppObjects: *const *mut ID3D12Pageable,
10634 ) -> HRESULT,
10635 >,
10636 pub CreateFence: ::std::option::Option<
10637 unsafe extern "C" fn(
10638 This: *mut ID3D12Device1,
10639 InitialValue: UINT64,
10640 Flags: D3D12_FENCE_FLAGS,
10641 riid: *const IID,
10642 ppFence: *mut *mut ::std::os::raw::c_void,
10643 ) -> HRESULT,
10644 >,
10645 pub GetDeviceRemovedReason: ::std::option::Option<
10646 unsafe extern "C" fn(This: *mut ID3D12Device1) -> HRESULT,
10647 >,
10648 pub GetCopyableFootprints: ::std::option::Option<
10649 unsafe extern "C" fn(
10650 This: *mut ID3D12Device1,
10651 pResourceDesc: *const D3D12_RESOURCE_DESC,
10652 FirstSubresource: UINT,
10653 NumSubresources: UINT,
10654 BaseOffset: UINT64,
10655 pLayouts: *mut D3D12_PLACED_SUBRESOURCE_FOOTPRINT,
10656 pNumRows: *mut UINT,
10657 pRowSizeInBytes: *mut UINT64,
10658 pTotalBytes: *mut UINT64,
10659 ),
10660 >,
10661 pub CreateQueryHeap: ::std::option::Option<
10662 unsafe extern "C" fn(
10663 This: *mut ID3D12Device1,
10664 pDesc: *const D3D12_QUERY_HEAP_DESC,
10665 riid: *const IID,
10666 ppvHeap: *mut *mut ::std::os::raw::c_void,
10667 ) -> HRESULT,
10668 >,
10669 pub SetStablePowerState: ::std::option::Option<
10670 unsafe extern "C" fn(This: *mut ID3D12Device1, Enable: BOOL) -> HRESULT,
10671 >,
10672 pub CreateCommandSignature: ::std::option::Option<
10673 unsafe extern "C" fn(
10674 This: *mut ID3D12Device1,
10675 pDesc: *const D3D12_COMMAND_SIGNATURE_DESC,
10676 pRootSignature: *mut ID3D12RootSignature,
10677 riid: *const IID,
10678 ppvCommandSignature: *mut *mut ::std::os::raw::c_void,
10679 ) -> HRESULT,
10680 >,
10681 pub GetResourceTiling: ::std::option::Option<
10682 unsafe extern "C" fn(
10683 This: *mut ID3D12Device1,
10684 pTiledResource: *mut ID3D12Resource,
10685 pNumTilesForEntireResource: *mut UINT,
10686 pPackedMipDesc: *mut D3D12_PACKED_MIP_INFO,
10687 pStandardTileShapeForNonPackedMips: *mut D3D12_TILE_SHAPE,
10688 pNumSubresourceTilings: *mut UINT,
10689 FirstSubresourceTilingToGet: UINT,
10690 pSubresourceTilingsForNonPackedMips: *mut D3D12_SUBRESOURCE_TILING,
10691 ),
10692 >,
10693 pub GetAdapterLuid: ::std::option::Option<
10694 unsafe extern "C" fn(
10695 This: *mut ID3D12Device1,
10696 RetVal: *mut LUID,
10697 ) -> *mut LUID,
10698 >,
10699 pub CreatePipelineLibrary: ::std::option::Option<
10700 unsafe extern "C" fn(
10701 This: *mut ID3D12Device1,
10702 pLibraryBlob: *const ::std::os::raw::c_void,
10703 BlobLength: SIZE_T,
10704 riid: *const IID,
10705 ppPipelineLibrary: *mut *mut ::std::os::raw::c_void,
10706 ) -> HRESULT,
10707 >,
10708 pub SetEventOnMultipleFenceCompletion: ::std::option::Option<
10709 unsafe extern "C" fn(
10710 This: *mut ID3D12Device1,
10711 ppFences: *const *mut ID3D12Fence,
10712 pFenceValues: *const UINT64,
10713 NumFences: UINT,
10714 Flags: D3D12_MULTIPLE_FENCE_WAIT_FLAGS,
10715 hEvent: HANDLE,
10716 ) -> HRESULT,
10717 >,
10718 pub SetResidencyPriority: ::std::option::Option<
10719 unsafe extern "C" fn(
10720 This: *mut ID3D12Device1,
10721 NumObjects: UINT,
10722 ppObjects: *const *mut ID3D12Pageable,
10723 pPriorities: *const D3D12_RESIDENCY_PRIORITY,
10724 ) -> HRESULT,
10725 >,
10726}
10727#[repr(C)]
10728#[derive(Debug, Copy, Clone, Hash, PartialOrd, Ord, PartialEq, Eq)]
10729pub struct ID3D12Device1 {
10730 pub lpVtbl: *mut ID3D12Device1Vtbl,
10731}
10732impl Default for ID3D12Device1 {
10733 fn default() -> Self {
10734 let mut s = ::std::mem::MaybeUninit::<Self>::uninit();
10735 unsafe {
10736 ::std::ptr::write_bytes(s.as_mut_ptr(), 0, 1);
10737 s.assume_init()
10738 }
10739 }
10740}
10741extern "C" {
10742 pub static IID_ID3D12Device2: IID;
10743}
10744#[repr(C)]
10745#[derive(Debug, Default, Copy, Clone, Hash, PartialOrd, Ord, PartialEq, Eq)]
10746pub struct ID3D12Device2Vtbl {
10747 pub QueryInterface: ::std::option::Option<
10748 unsafe extern "C" fn(
10749 This: *mut ID3D12Device2,
10750 riid: *const IID,
10751 ppvObject: *mut *mut ::std::os::raw::c_void,
10752 ) -> HRESULT,
10753 >,
10754 pub AddRef: ::std::option::Option<
10755 unsafe extern "C" fn(This: *mut ID3D12Device2) -> ULONG,
10756 >,
10757 pub Release: ::std::option::Option<
10758 unsafe extern "C" fn(This: *mut ID3D12Device2) -> ULONG,
10759 >,
10760 pub GetPrivateData: ::std::option::Option<
10761 unsafe extern "C" fn(
10762 This: *mut ID3D12Device2,
10763 guid: *const GUID,
10764 pDataSize: *mut UINT,
10765 pData: *mut ::std::os::raw::c_void,
10766 ) -> HRESULT,
10767 >,
10768 pub SetPrivateData: ::std::option::Option<
10769 unsafe extern "C" fn(
10770 This: *mut ID3D12Device2,
10771 guid: *const GUID,
10772 DataSize: UINT,
10773 pData: *const ::std::os::raw::c_void,
10774 ) -> HRESULT,
10775 >,
10776 pub SetPrivateDataInterface: ::std::option::Option<
10777 unsafe extern "C" fn(
10778 This: *mut ID3D12Device2,
10779 guid: *const GUID,
10780 pData: *const IUnknown,
10781 ) -> HRESULT,
10782 >,
10783 pub SetName: ::std::option::Option<
10784 unsafe extern "C" fn(
10785 This: *mut ID3D12Device2,
10786 Name: LPCWSTR,
10787 ) -> HRESULT,
10788 >,
10789 pub GetNodeCount: ::std::option::Option<
10790 unsafe extern "C" fn(This: *mut ID3D12Device2) -> UINT,
10791 >,
10792 pub CreateCommandQueue: ::std::option::Option<
10793 unsafe extern "C" fn(
10794 This: *mut ID3D12Device2,
10795 pDesc: *const D3D12_COMMAND_QUEUE_DESC,
10796 riid: *const IID,
10797 ppCommandQueue: *mut *mut ::std::os::raw::c_void,
10798 ) -> HRESULT,
10799 >,
10800 pub CreateCommandAllocator: ::std::option::Option<
10801 unsafe extern "C" fn(
10802 This: *mut ID3D12Device2,
10803 type_: D3D12_COMMAND_LIST_TYPE,
10804 riid: *const IID,
10805 ppCommandAllocator: *mut *mut ::std::os::raw::c_void,
10806 ) -> HRESULT,
10807 >,
10808 pub CreateGraphicsPipelineState: ::std::option::Option<
10809 unsafe extern "C" fn(
10810 This: *mut ID3D12Device2,
10811 pDesc: *const D3D12_GRAPHICS_PIPELINE_STATE_DESC,
10812 riid: *const IID,
10813 ppPipelineState: *mut *mut ::std::os::raw::c_void,
10814 ) -> HRESULT,
10815 >,
10816 pub CreateComputePipelineState: ::std::option::Option<
10817 unsafe extern "C" fn(
10818 This: *mut ID3D12Device2,
10819 pDesc: *const D3D12_COMPUTE_PIPELINE_STATE_DESC,
10820 riid: *const IID,
10821 ppPipelineState: *mut *mut ::std::os::raw::c_void,
10822 ) -> HRESULT,
10823 >,
10824 pub CreateCommandList: ::std::option::Option<
10825 unsafe extern "C" fn(
10826 This: *mut ID3D12Device2,
10827 nodeMask: UINT,
10828 type_: D3D12_COMMAND_LIST_TYPE,
10829 pCommandAllocator: *mut ID3D12CommandAllocator,
10830 pInitialState: *mut ID3D12PipelineState,
10831 riid: *const IID,
10832 ppCommandList: *mut *mut ::std::os::raw::c_void,
10833 ) -> HRESULT,
10834 >,
10835 pub CheckFeatureSupport: ::std::option::Option<
10836 unsafe extern "C" fn(
10837 This: *mut ID3D12Device2,
10838 Feature: D3D12_FEATURE,
10839 pFeatureSupportData: *mut ::std::os::raw::c_void,
10840 FeatureSupportDataSize: UINT,
10841 ) -> HRESULT,
10842 >,
10843 pub CreateDescriptorHeap: ::std::option::Option<
10844 unsafe extern "C" fn(
10845 This: *mut ID3D12Device2,
10846 pDescriptorHeapDesc: *const D3D12_DESCRIPTOR_HEAP_DESC,
10847 riid: *const IID,
10848 ppvHeap: *mut *mut ::std::os::raw::c_void,
10849 ) -> HRESULT,
10850 >,
10851 pub GetDescriptorHandleIncrementSize: ::std::option::Option<
10852 unsafe extern "C" fn(
10853 This: *mut ID3D12Device2,
10854 DescriptorHeapType: D3D12_DESCRIPTOR_HEAP_TYPE,
10855 ) -> UINT,
10856 >,
10857 pub CreateRootSignature: ::std::option::Option<
10858 unsafe extern "C" fn(
10859 This: *mut ID3D12Device2,
10860 nodeMask: UINT,
10861 pBlobWithRootSignature: *const ::std::os::raw::c_void,
10862 blobLengthInBytes: SIZE_T,
10863 riid: *const IID,
10864 ppvRootSignature: *mut *mut ::std::os::raw::c_void,
10865 ) -> HRESULT,
10866 >,
10867 pub CreateConstantBufferView: ::std::option::Option<
10868 unsafe extern "C" fn(
10869 This: *mut ID3D12Device2,
10870 pDesc: *const D3D12_CONSTANT_BUFFER_VIEW_DESC,
10871 DestDescriptor: D3D12_CPU_DESCRIPTOR_HANDLE,
10872 ),
10873 >,
10874 pub CreateShaderResourceView: ::std::option::Option<
10875 unsafe extern "C" fn(
10876 This: *mut ID3D12Device2,
10877 pResource: *mut ID3D12Resource,
10878 pDesc: *const D3D12_SHADER_RESOURCE_VIEW_DESC,
10879 DestDescriptor: D3D12_CPU_DESCRIPTOR_HANDLE,
10880 ),
10881 >,
10882 pub CreateUnorderedAccessView: ::std::option::Option<
10883 unsafe extern "C" fn(
10884 This: *mut ID3D12Device2,
10885 pResource: *mut ID3D12Resource,
10886 pCounterResource: *mut ID3D12Resource,
10887 pDesc: *const D3D12_UNORDERED_ACCESS_VIEW_DESC,
10888 DestDescriptor: D3D12_CPU_DESCRIPTOR_HANDLE,
10889 ),
10890 >,
10891 pub CreateRenderTargetView: ::std::option::Option<
10892 unsafe extern "C" fn(
10893 This: *mut ID3D12Device2,
10894 pResource: *mut ID3D12Resource,
10895 pDesc: *const D3D12_RENDER_TARGET_VIEW_DESC,
10896 DestDescriptor: D3D12_CPU_DESCRIPTOR_HANDLE,
10897 ),
10898 >,
10899 pub CreateDepthStencilView: ::std::option::Option<
10900 unsafe extern "C" fn(
10901 This: *mut ID3D12Device2,
10902 pResource: *mut ID3D12Resource,
10903 pDesc: *const D3D12_DEPTH_STENCIL_VIEW_DESC,
10904 DestDescriptor: D3D12_CPU_DESCRIPTOR_HANDLE,
10905 ),
10906 >,
10907 pub CreateSampler: ::std::option::Option<
10908 unsafe extern "C" fn(
10909 This: *mut ID3D12Device2,
10910 pDesc: *const D3D12_SAMPLER_DESC,
10911 DestDescriptor: D3D12_CPU_DESCRIPTOR_HANDLE,
10912 ),
10913 >,
10914 pub CopyDescriptors: ::std::option::Option<
10915 unsafe extern "C" fn(
10916 This: *mut ID3D12Device2,
10917 NumDestDescriptorRanges: UINT,
10918 pDestDescriptorRangeStarts: *const D3D12_CPU_DESCRIPTOR_HANDLE,
10919 pDestDescriptorRangeSizes: *const UINT,
10920 NumSrcDescriptorRanges: UINT,
10921 pSrcDescriptorRangeStarts: *const D3D12_CPU_DESCRIPTOR_HANDLE,
10922 pSrcDescriptorRangeSizes: *const UINT,
10923 DescriptorHeapsType: D3D12_DESCRIPTOR_HEAP_TYPE,
10924 ),
10925 >,
10926 pub CopyDescriptorsSimple: ::std::option::Option<
10927 unsafe extern "C" fn(
10928 This: *mut ID3D12Device2,
10929 NumDescriptors: UINT,
10930 DestDescriptorRangeStart: D3D12_CPU_DESCRIPTOR_HANDLE,
10931 SrcDescriptorRangeStart: D3D12_CPU_DESCRIPTOR_HANDLE,
10932 DescriptorHeapsType: D3D12_DESCRIPTOR_HEAP_TYPE,
10933 ),
10934 >,
10935 pub GetResourceAllocationInfo: ::std::option::Option<
10936 unsafe extern "C" fn(
10937 This: *mut ID3D12Device2,
10938 RetVal: *mut D3D12_RESOURCE_ALLOCATION_INFO,
10939 visibleMask: UINT,
10940 numResourceDescs: UINT,
10941 pResourceDescs: *const D3D12_RESOURCE_DESC,
10942 ) -> *mut D3D12_RESOURCE_ALLOCATION_INFO,
10943 >,
10944 pub GetCustomHeapProperties: ::std::option::Option<
10945 unsafe extern "C" fn(
10946 This: *mut ID3D12Device2,
10947 RetVal: *mut D3D12_HEAP_PROPERTIES,
10948 nodeMask: UINT,
10949 heapType: D3D12_HEAP_TYPE,
10950 ) -> *mut D3D12_HEAP_PROPERTIES,
10951 >,
10952 pub CreateCommittedResource: ::std::option::Option<
10953 unsafe extern "C" fn(
10954 This: *mut ID3D12Device2,
10955 pHeapProperties: *const D3D12_HEAP_PROPERTIES,
10956 HeapFlags: D3D12_HEAP_FLAGS,
10957 pDesc: *const D3D12_RESOURCE_DESC,
10958 InitialResourceState: D3D12_RESOURCE_STATES,
10959 pOptimizedClearValue: *const D3D12_CLEAR_VALUE,
10960 riidResource: *const IID,
10961 ppvResource: *mut *mut ::std::os::raw::c_void,
10962 ) -> HRESULT,
10963 >,
10964 pub CreateHeap: ::std::option::Option<
10965 unsafe extern "C" fn(
10966 This: *mut ID3D12Device2,
10967 pDesc: *const D3D12_HEAP_DESC,
10968 riid: *const IID,
10969 ppvHeap: *mut *mut ::std::os::raw::c_void,
10970 ) -> HRESULT,
10971 >,
10972 pub CreatePlacedResource: ::std::option::Option<
10973 unsafe extern "C" fn(
10974 This: *mut ID3D12Device2,
10975 pHeap: *mut ID3D12Heap,
10976 HeapOffset: UINT64,
10977 pDesc: *const D3D12_RESOURCE_DESC,
10978 InitialState: D3D12_RESOURCE_STATES,
10979 pOptimizedClearValue: *const D3D12_CLEAR_VALUE,
10980 riid: *const IID,
10981 ppvResource: *mut *mut ::std::os::raw::c_void,
10982 ) -> HRESULT,
10983 >,
10984 pub CreateReservedResource: ::std::option::Option<
10985 unsafe extern "C" fn(
10986 This: *mut ID3D12Device2,
10987 pDesc: *const D3D12_RESOURCE_DESC,
10988 InitialState: D3D12_RESOURCE_STATES,
10989 pOptimizedClearValue: *const D3D12_CLEAR_VALUE,
10990 riid: *const IID,
10991 ppvResource: *mut *mut ::std::os::raw::c_void,
10992 ) -> HRESULT,
10993 >,
10994 pub CreateSharedHandle: ::std::option::Option<
10995 unsafe extern "C" fn(
10996 This: *mut ID3D12Device2,
10997 pObject: *mut ID3D12DeviceChild,
10998 pAttributes: *const SECURITY_ATTRIBUTES,
10999 Access: DWORD,
11000 Name: LPCWSTR,
11001 pHandle: *mut HANDLE,
11002 ) -> HRESULT,
11003 >,
11004 pub OpenSharedHandle: ::std::option::Option<
11005 unsafe extern "C" fn(
11006 This: *mut ID3D12Device2,
11007 NTHandle: HANDLE,
11008 riid: *const IID,
11009 ppvObj: *mut *mut ::std::os::raw::c_void,
11010 ) -> HRESULT,
11011 >,
11012 pub OpenSharedHandleByName: ::std::option::Option<
11013 unsafe extern "C" fn(
11014 This: *mut ID3D12Device2,
11015 Name: LPCWSTR,
11016 Access: DWORD,
11017 pNTHandle: *mut HANDLE,
11018 ) -> HRESULT,
11019 >,
11020 pub MakeResident: ::std::option::Option<
11021 unsafe extern "C" fn(
11022 This: *mut ID3D12Device2,
11023 NumObjects: UINT,
11024 ppObjects: *const *mut ID3D12Pageable,
11025 ) -> HRESULT,
11026 >,
11027 pub Evict: ::std::option::Option<
11028 unsafe extern "C" fn(
11029 This: *mut ID3D12Device2,
11030 NumObjects: UINT,
11031 ppObjects: *const *mut ID3D12Pageable,
11032 ) -> HRESULT,
11033 >,
11034 pub CreateFence: ::std::option::Option<
11035 unsafe extern "C" fn(
11036 This: *mut ID3D12Device2,
11037 InitialValue: UINT64,
11038 Flags: D3D12_FENCE_FLAGS,
11039 riid: *const IID,
11040 ppFence: *mut *mut ::std::os::raw::c_void,
11041 ) -> HRESULT,
11042 >,
11043 pub GetDeviceRemovedReason: ::std::option::Option<
11044 unsafe extern "C" fn(This: *mut ID3D12Device2) -> HRESULT,
11045 >,
11046 pub GetCopyableFootprints: ::std::option::Option<
11047 unsafe extern "C" fn(
11048 This: *mut ID3D12Device2,
11049 pResourceDesc: *const D3D12_RESOURCE_DESC,
11050 FirstSubresource: UINT,
11051 NumSubresources: UINT,
11052 BaseOffset: UINT64,
11053 pLayouts: *mut D3D12_PLACED_SUBRESOURCE_FOOTPRINT,
11054 pNumRows: *mut UINT,
11055 pRowSizeInBytes: *mut UINT64,
11056 pTotalBytes: *mut UINT64,
11057 ),
11058 >,
11059 pub CreateQueryHeap: ::std::option::Option<
11060 unsafe extern "C" fn(
11061 This: *mut ID3D12Device2,
11062 pDesc: *const D3D12_QUERY_HEAP_DESC,
11063 riid: *const IID,
11064 ppvHeap: *mut *mut ::std::os::raw::c_void,
11065 ) -> HRESULT,
11066 >,
11067 pub SetStablePowerState: ::std::option::Option<
11068 unsafe extern "C" fn(This: *mut ID3D12Device2, Enable: BOOL) -> HRESULT,
11069 >,
11070 pub CreateCommandSignature: ::std::option::Option<
11071 unsafe extern "C" fn(
11072 This: *mut ID3D12Device2,
11073 pDesc: *const D3D12_COMMAND_SIGNATURE_DESC,
11074 pRootSignature: *mut ID3D12RootSignature,
11075 riid: *const IID,
11076 ppvCommandSignature: *mut *mut ::std::os::raw::c_void,
11077 ) -> HRESULT,
11078 >,
11079 pub GetResourceTiling: ::std::option::Option<
11080 unsafe extern "C" fn(
11081 This: *mut ID3D12Device2,
11082 pTiledResource: *mut ID3D12Resource,
11083 pNumTilesForEntireResource: *mut UINT,
11084 pPackedMipDesc: *mut D3D12_PACKED_MIP_INFO,
11085 pStandardTileShapeForNonPackedMips: *mut D3D12_TILE_SHAPE,
11086 pNumSubresourceTilings: *mut UINT,
11087 FirstSubresourceTilingToGet: UINT,
11088 pSubresourceTilingsForNonPackedMips: *mut D3D12_SUBRESOURCE_TILING,
11089 ),
11090 >,
11091 pub GetAdapterLuid: ::std::option::Option<
11092 unsafe extern "C" fn(
11093 This: *mut ID3D12Device2,
11094 RetVal: *mut LUID,
11095 ) -> *mut LUID,
11096 >,
11097 pub CreatePipelineLibrary: ::std::option::Option<
11098 unsafe extern "C" fn(
11099 This: *mut ID3D12Device2,
11100 pLibraryBlob: *const ::std::os::raw::c_void,
11101 BlobLength: SIZE_T,
11102 riid: *const IID,
11103 ppPipelineLibrary: *mut *mut ::std::os::raw::c_void,
11104 ) -> HRESULT,
11105 >,
11106 pub SetEventOnMultipleFenceCompletion: ::std::option::Option<
11107 unsafe extern "C" fn(
11108 This: *mut ID3D12Device2,
11109 ppFences: *const *mut ID3D12Fence,
11110 pFenceValues: *const UINT64,
11111 NumFences: UINT,
11112 Flags: D3D12_MULTIPLE_FENCE_WAIT_FLAGS,
11113 hEvent: HANDLE,
11114 ) -> HRESULT,
11115 >,
11116 pub SetResidencyPriority: ::std::option::Option<
11117 unsafe extern "C" fn(
11118 This: *mut ID3D12Device2,
11119 NumObjects: UINT,
11120 ppObjects: *const *mut ID3D12Pageable,
11121 pPriorities: *const D3D12_RESIDENCY_PRIORITY,
11122 ) -> HRESULT,
11123 >,
11124 pub CreatePipelineState: ::std::option::Option<
11125 unsafe extern "C" fn(
11126 This: *mut ID3D12Device2,
11127 pDesc: *const D3D12_PIPELINE_STATE_STREAM_DESC,
11128 riid: *const IID,
11129 ppPipelineState: *mut *mut ::std::os::raw::c_void,
11130 ) -> HRESULT,
11131 >,
11132}
11133#[repr(C)]
11134#[derive(Debug, Copy, Clone, Hash, PartialOrd, Ord, PartialEq, Eq)]
11135pub struct ID3D12Device2 {
11136 pub lpVtbl: *mut ID3D12Device2Vtbl,
11137}
11138impl Default for ID3D12Device2 {
11139 fn default() -> Self {
11140 let mut s = ::std::mem::MaybeUninit::<Self>::uninit();
11141 unsafe {
11142 ::std::ptr::write_bytes(s.as_mut_ptr(), 0, 1);
11143 s.assume_init()
11144 }
11145 }
11146}
11147pub const D3D12_RESIDENCY_FLAGS_D3D12_RESIDENCY_FLAG_NONE:
11148 D3D12_RESIDENCY_FLAGS = 0;
11149pub const D3D12_RESIDENCY_FLAGS_D3D12_RESIDENCY_FLAG_DENY_OVERBUDGET:
11150 D3D12_RESIDENCY_FLAGS = 1;
11151pub type D3D12_RESIDENCY_FLAGS = ::std::os::raw::c_int;
11152extern "C" {
11153 pub static IID_ID3D12Device3: IID;
11154}
11155#[repr(C)]
11156#[derive(Debug, Default, Copy, Clone, Hash, PartialOrd, Ord, PartialEq, Eq)]
11157pub struct ID3D12Device3Vtbl {
11158 pub QueryInterface: ::std::option::Option<
11159 unsafe extern "C" fn(
11160 This: *mut ID3D12Device3,
11161 riid: *const IID,
11162 ppvObject: *mut *mut ::std::os::raw::c_void,
11163 ) -> HRESULT,
11164 >,
11165 pub AddRef: ::std::option::Option<
11166 unsafe extern "C" fn(This: *mut ID3D12Device3) -> ULONG,
11167 >,
11168 pub Release: ::std::option::Option<
11169 unsafe extern "C" fn(This: *mut ID3D12Device3) -> ULONG,
11170 >,
11171 pub GetPrivateData: ::std::option::Option<
11172 unsafe extern "C" fn(
11173 This: *mut ID3D12Device3,
11174 guid: *const GUID,
11175 pDataSize: *mut UINT,
11176 pData: *mut ::std::os::raw::c_void,
11177 ) -> HRESULT,
11178 >,
11179 pub SetPrivateData: ::std::option::Option<
11180 unsafe extern "C" fn(
11181 This: *mut ID3D12Device3,
11182 guid: *const GUID,
11183 DataSize: UINT,
11184 pData: *const ::std::os::raw::c_void,
11185 ) -> HRESULT,
11186 >,
11187 pub SetPrivateDataInterface: ::std::option::Option<
11188 unsafe extern "C" fn(
11189 This: *mut ID3D12Device3,
11190 guid: *const GUID,
11191 pData: *const IUnknown,
11192 ) -> HRESULT,
11193 >,
11194 pub SetName: ::std::option::Option<
11195 unsafe extern "C" fn(
11196 This: *mut ID3D12Device3,
11197 Name: LPCWSTR,
11198 ) -> HRESULT,
11199 >,
11200 pub GetNodeCount: ::std::option::Option<
11201 unsafe extern "C" fn(This: *mut ID3D12Device3) -> UINT,
11202 >,
11203 pub CreateCommandQueue: ::std::option::Option<
11204 unsafe extern "C" fn(
11205 This: *mut ID3D12Device3,
11206 pDesc: *const D3D12_COMMAND_QUEUE_DESC,
11207 riid: *const IID,
11208 ppCommandQueue: *mut *mut ::std::os::raw::c_void,
11209 ) -> HRESULT,
11210 >,
11211 pub CreateCommandAllocator: ::std::option::Option<
11212 unsafe extern "C" fn(
11213 This: *mut ID3D12Device3,
11214 type_: D3D12_COMMAND_LIST_TYPE,
11215 riid: *const IID,
11216 ppCommandAllocator: *mut *mut ::std::os::raw::c_void,
11217 ) -> HRESULT,
11218 >,
11219 pub CreateGraphicsPipelineState: ::std::option::Option<
11220 unsafe extern "C" fn(
11221 This: *mut ID3D12Device3,
11222 pDesc: *const D3D12_GRAPHICS_PIPELINE_STATE_DESC,
11223 riid: *const IID,
11224 ppPipelineState: *mut *mut ::std::os::raw::c_void,
11225 ) -> HRESULT,
11226 >,
11227 pub CreateComputePipelineState: ::std::option::Option<
11228 unsafe extern "C" fn(
11229 This: *mut ID3D12Device3,
11230 pDesc: *const D3D12_COMPUTE_PIPELINE_STATE_DESC,
11231 riid: *const IID,
11232 ppPipelineState: *mut *mut ::std::os::raw::c_void,
11233 ) -> HRESULT,
11234 >,
11235 pub CreateCommandList: ::std::option::Option<
11236 unsafe extern "C" fn(
11237 This: *mut ID3D12Device3,
11238 nodeMask: UINT,
11239 type_: D3D12_COMMAND_LIST_TYPE,
11240 pCommandAllocator: *mut ID3D12CommandAllocator,
11241 pInitialState: *mut ID3D12PipelineState,
11242 riid: *const IID,
11243 ppCommandList: *mut *mut ::std::os::raw::c_void,
11244 ) -> HRESULT,
11245 >,
11246 pub CheckFeatureSupport: ::std::option::Option<
11247 unsafe extern "C" fn(
11248 This: *mut ID3D12Device3,
11249 Feature: D3D12_FEATURE,
11250 pFeatureSupportData: *mut ::std::os::raw::c_void,
11251 FeatureSupportDataSize: UINT,
11252 ) -> HRESULT,
11253 >,
11254 pub CreateDescriptorHeap: ::std::option::Option<
11255 unsafe extern "C" fn(
11256 This: *mut ID3D12Device3,
11257 pDescriptorHeapDesc: *const D3D12_DESCRIPTOR_HEAP_DESC,
11258 riid: *const IID,
11259 ppvHeap: *mut *mut ::std::os::raw::c_void,
11260 ) -> HRESULT,
11261 >,
11262 pub GetDescriptorHandleIncrementSize: ::std::option::Option<
11263 unsafe extern "C" fn(
11264 This: *mut ID3D12Device3,
11265 DescriptorHeapType: D3D12_DESCRIPTOR_HEAP_TYPE,
11266 ) -> UINT,
11267 >,
11268 pub CreateRootSignature: ::std::option::Option<
11269 unsafe extern "C" fn(
11270 This: *mut ID3D12Device3,
11271 nodeMask: UINT,
11272 pBlobWithRootSignature: *const ::std::os::raw::c_void,
11273 blobLengthInBytes: SIZE_T,
11274 riid: *const IID,
11275 ppvRootSignature: *mut *mut ::std::os::raw::c_void,
11276 ) -> HRESULT,
11277 >,
11278 pub CreateConstantBufferView: ::std::option::Option<
11279 unsafe extern "C" fn(
11280 This: *mut ID3D12Device3,
11281 pDesc: *const D3D12_CONSTANT_BUFFER_VIEW_DESC,
11282 DestDescriptor: D3D12_CPU_DESCRIPTOR_HANDLE,
11283 ),
11284 >,
11285 pub CreateShaderResourceView: ::std::option::Option<
11286 unsafe extern "C" fn(
11287 This: *mut ID3D12Device3,
11288 pResource: *mut ID3D12Resource,
11289 pDesc: *const D3D12_SHADER_RESOURCE_VIEW_DESC,
11290 DestDescriptor: D3D12_CPU_DESCRIPTOR_HANDLE,
11291 ),
11292 >,
11293 pub CreateUnorderedAccessView: ::std::option::Option<
11294 unsafe extern "C" fn(
11295 This: *mut ID3D12Device3,
11296 pResource: *mut ID3D12Resource,
11297 pCounterResource: *mut ID3D12Resource,
11298 pDesc: *const D3D12_UNORDERED_ACCESS_VIEW_DESC,
11299 DestDescriptor: D3D12_CPU_DESCRIPTOR_HANDLE,
11300 ),
11301 >,
11302 pub CreateRenderTargetView: ::std::option::Option<
11303 unsafe extern "C" fn(
11304 This: *mut ID3D12Device3,
11305 pResource: *mut ID3D12Resource,
11306 pDesc: *const D3D12_RENDER_TARGET_VIEW_DESC,
11307 DestDescriptor: D3D12_CPU_DESCRIPTOR_HANDLE,
11308 ),
11309 >,
11310 pub CreateDepthStencilView: ::std::option::Option<
11311 unsafe extern "C" fn(
11312 This: *mut ID3D12Device3,
11313 pResource: *mut ID3D12Resource,
11314 pDesc: *const D3D12_DEPTH_STENCIL_VIEW_DESC,
11315 DestDescriptor: D3D12_CPU_DESCRIPTOR_HANDLE,
11316 ),
11317 >,
11318 pub CreateSampler: ::std::option::Option<
11319 unsafe extern "C" fn(
11320 This: *mut ID3D12Device3,
11321 pDesc: *const D3D12_SAMPLER_DESC,
11322 DestDescriptor: D3D12_CPU_DESCRIPTOR_HANDLE,
11323 ),
11324 >,
11325 pub CopyDescriptors: ::std::option::Option<
11326 unsafe extern "C" fn(
11327 This: *mut ID3D12Device3,
11328 NumDestDescriptorRanges: UINT,
11329 pDestDescriptorRangeStarts: *const D3D12_CPU_DESCRIPTOR_HANDLE,
11330 pDestDescriptorRangeSizes: *const UINT,
11331 NumSrcDescriptorRanges: UINT,
11332 pSrcDescriptorRangeStarts: *const D3D12_CPU_DESCRIPTOR_HANDLE,
11333 pSrcDescriptorRangeSizes: *const UINT,
11334 DescriptorHeapsType: D3D12_DESCRIPTOR_HEAP_TYPE,
11335 ),
11336 >,
11337 pub CopyDescriptorsSimple: ::std::option::Option<
11338 unsafe extern "C" fn(
11339 This: *mut ID3D12Device3,
11340 NumDescriptors: UINT,
11341 DestDescriptorRangeStart: D3D12_CPU_DESCRIPTOR_HANDLE,
11342 SrcDescriptorRangeStart: D3D12_CPU_DESCRIPTOR_HANDLE,
11343 DescriptorHeapsType: D3D12_DESCRIPTOR_HEAP_TYPE,
11344 ),
11345 >,
11346 pub GetResourceAllocationInfo: ::std::option::Option<
11347 unsafe extern "C" fn(
11348 This: *mut ID3D12Device3,
11349 RetVal: *mut D3D12_RESOURCE_ALLOCATION_INFO,
11350 visibleMask: UINT,
11351 numResourceDescs: UINT,
11352 pResourceDescs: *const D3D12_RESOURCE_DESC,
11353 ) -> *mut D3D12_RESOURCE_ALLOCATION_INFO,
11354 >,
11355 pub GetCustomHeapProperties: ::std::option::Option<
11356 unsafe extern "C" fn(
11357 This: *mut ID3D12Device3,
11358 RetVal: *mut D3D12_HEAP_PROPERTIES,
11359 nodeMask: UINT,
11360 heapType: D3D12_HEAP_TYPE,
11361 ) -> *mut D3D12_HEAP_PROPERTIES,
11362 >,
11363 pub CreateCommittedResource: ::std::option::Option<
11364 unsafe extern "C" fn(
11365 This: *mut ID3D12Device3,
11366 pHeapProperties: *const D3D12_HEAP_PROPERTIES,
11367 HeapFlags: D3D12_HEAP_FLAGS,
11368 pDesc: *const D3D12_RESOURCE_DESC,
11369 InitialResourceState: D3D12_RESOURCE_STATES,
11370 pOptimizedClearValue: *const D3D12_CLEAR_VALUE,
11371 riidResource: *const IID,
11372 ppvResource: *mut *mut ::std::os::raw::c_void,
11373 ) -> HRESULT,
11374 >,
11375 pub CreateHeap: ::std::option::Option<
11376 unsafe extern "C" fn(
11377 This: *mut ID3D12Device3,
11378 pDesc: *const D3D12_HEAP_DESC,
11379 riid: *const IID,
11380 ppvHeap: *mut *mut ::std::os::raw::c_void,
11381 ) -> HRESULT,
11382 >,
11383 pub CreatePlacedResource: ::std::option::Option<
11384 unsafe extern "C" fn(
11385 This: *mut ID3D12Device3,
11386 pHeap: *mut ID3D12Heap,
11387 HeapOffset: UINT64,
11388 pDesc: *const D3D12_RESOURCE_DESC,
11389 InitialState: D3D12_RESOURCE_STATES,
11390 pOptimizedClearValue: *const D3D12_CLEAR_VALUE,
11391 riid: *const IID,
11392 ppvResource: *mut *mut ::std::os::raw::c_void,
11393 ) -> HRESULT,
11394 >,
11395 pub CreateReservedResource: ::std::option::Option<
11396 unsafe extern "C" fn(
11397 This: *mut ID3D12Device3,
11398 pDesc: *const D3D12_RESOURCE_DESC,
11399 InitialState: D3D12_RESOURCE_STATES,
11400 pOptimizedClearValue: *const D3D12_CLEAR_VALUE,
11401 riid: *const IID,
11402 ppvResource: *mut *mut ::std::os::raw::c_void,
11403 ) -> HRESULT,
11404 >,
11405 pub CreateSharedHandle: ::std::option::Option<
11406 unsafe extern "C" fn(
11407 This: *mut ID3D12Device3,
11408 pObject: *mut ID3D12DeviceChild,
11409 pAttributes: *const SECURITY_ATTRIBUTES,
11410 Access: DWORD,
11411 Name: LPCWSTR,
11412 pHandle: *mut HANDLE,
11413 ) -> HRESULT,
11414 >,
11415 pub OpenSharedHandle: ::std::option::Option<
11416 unsafe extern "C" fn(
11417 This: *mut ID3D12Device3,
11418 NTHandle: HANDLE,
11419 riid: *const IID,
11420 ppvObj: *mut *mut ::std::os::raw::c_void,
11421 ) -> HRESULT,
11422 >,
11423 pub OpenSharedHandleByName: ::std::option::Option<
11424 unsafe extern "C" fn(
11425 This: *mut ID3D12Device3,
11426 Name: LPCWSTR,
11427 Access: DWORD,
11428 pNTHandle: *mut HANDLE,
11429 ) -> HRESULT,
11430 >,
11431 pub MakeResident: ::std::option::Option<
11432 unsafe extern "C" fn(
11433 This: *mut ID3D12Device3,
11434 NumObjects: UINT,
11435 ppObjects: *const *mut ID3D12Pageable,
11436 ) -> HRESULT,
11437 >,
11438 pub Evict: ::std::option::Option<
11439 unsafe extern "C" fn(
11440 This: *mut ID3D12Device3,
11441 NumObjects: UINT,
11442 ppObjects: *const *mut ID3D12Pageable,
11443 ) -> HRESULT,
11444 >,
11445 pub CreateFence: ::std::option::Option<
11446 unsafe extern "C" fn(
11447 This: *mut ID3D12Device3,
11448 InitialValue: UINT64,
11449 Flags: D3D12_FENCE_FLAGS,
11450 riid: *const IID,
11451 ppFence: *mut *mut ::std::os::raw::c_void,
11452 ) -> HRESULT,
11453 >,
11454 pub GetDeviceRemovedReason: ::std::option::Option<
11455 unsafe extern "C" fn(This: *mut ID3D12Device3) -> HRESULT,
11456 >,
11457 pub GetCopyableFootprints: ::std::option::Option<
11458 unsafe extern "C" fn(
11459 This: *mut ID3D12Device3,
11460 pResourceDesc: *const D3D12_RESOURCE_DESC,
11461 FirstSubresource: UINT,
11462 NumSubresources: UINT,
11463 BaseOffset: UINT64,
11464 pLayouts: *mut D3D12_PLACED_SUBRESOURCE_FOOTPRINT,
11465 pNumRows: *mut UINT,
11466 pRowSizeInBytes: *mut UINT64,
11467 pTotalBytes: *mut UINT64,
11468 ),
11469 >,
11470 pub CreateQueryHeap: ::std::option::Option<
11471 unsafe extern "C" fn(
11472 This: *mut ID3D12Device3,
11473 pDesc: *const D3D12_QUERY_HEAP_DESC,
11474 riid: *const IID,
11475 ppvHeap: *mut *mut ::std::os::raw::c_void,
11476 ) -> HRESULT,
11477 >,
11478 pub SetStablePowerState: ::std::option::Option<
11479 unsafe extern "C" fn(This: *mut ID3D12Device3, Enable: BOOL) -> HRESULT,
11480 >,
11481 pub CreateCommandSignature: ::std::option::Option<
11482 unsafe extern "C" fn(
11483 This: *mut ID3D12Device3,
11484 pDesc: *const D3D12_COMMAND_SIGNATURE_DESC,
11485 pRootSignature: *mut ID3D12RootSignature,
11486 riid: *const IID,
11487 ppvCommandSignature: *mut *mut ::std::os::raw::c_void,
11488 ) -> HRESULT,
11489 >,
11490 pub GetResourceTiling: ::std::option::Option<
11491 unsafe extern "C" fn(
11492 This: *mut ID3D12Device3,
11493 pTiledResource: *mut ID3D12Resource,
11494 pNumTilesForEntireResource: *mut UINT,
11495 pPackedMipDesc: *mut D3D12_PACKED_MIP_INFO,
11496 pStandardTileShapeForNonPackedMips: *mut D3D12_TILE_SHAPE,
11497 pNumSubresourceTilings: *mut UINT,
11498 FirstSubresourceTilingToGet: UINT,
11499 pSubresourceTilingsForNonPackedMips: *mut D3D12_SUBRESOURCE_TILING,
11500 ),
11501 >,
11502 pub GetAdapterLuid: ::std::option::Option<
11503 unsafe extern "C" fn(
11504 This: *mut ID3D12Device3,
11505 RetVal: *mut LUID,
11506 ) -> *mut LUID,
11507 >,
11508 pub CreatePipelineLibrary: ::std::option::Option<
11509 unsafe extern "C" fn(
11510 This: *mut ID3D12Device3,
11511 pLibraryBlob: *const ::std::os::raw::c_void,
11512 BlobLength: SIZE_T,
11513 riid: *const IID,
11514 ppPipelineLibrary: *mut *mut ::std::os::raw::c_void,
11515 ) -> HRESULT,
11516 >,
11517 pub SetEventOnMultipleFenceCompletion: ::std::option::Option<
11518 unsafe extern "C" fn(
11519 This: *mut ID3D12Device3,
11520 ppFences: *const *mut ID3D12Fence,
11521 pFenceValues: *const UINT64,
11522 NumFences: UINT,
11523 Flags: D3D12_MULTIPLE_FENCE_WAIT_FLAGS,
11524 hEvent: HANDLE,
11525 ) -> HRESULT,
11526 >,
11527 pub SetResidencyPriority: ::std::option::Option<
11528 unsafe extern "C" fn(
11529 This: *mut ID3D12Device3,
11530 NumObjects: UINT,
11531 ppObjects: *const *mut ID3D12Pageable,
11532 pPriorities: *const D3D12_RESIDENCY_PRIORITY,
11533 ) -> HRESULT,
11534 >,
11535 pub CreatePipelineState: ::std::option::Option<
11536 unsafe extern "C" fn(
11537 This: *mut ID3D12Device3,
11538 pDesc: *const D3D12_PIPELINE_STATE_STREAM_DESC,
11539 riid: *const IID,
11540 ppPipelineState: *mut *mut ::std::os::raw::c_void,
11541 ) -> HRESULT,
11542 >,
11543 pub OpenExistingHeapFromAddress: ::std::option::Option<
11544 unsafe extern "C" fn(
11545 This: *mut ID3D12Device3,
11546 pAddress: *const ::std::os::raw::c_void,
11547 riid: *const IID,
11548 ppvHeap: *mut *mut ::std::os::raw::c_void,
11549 ) -> HRESULT,
11550 >,
11551 pub OpenExistingHeapFromFileMapping: ::std::option::Option<
11552 unsafe extern "C" fn(
11553 This: *mut ID3D12Device3,
11554 hFileMapping: HANDLE,
11555 riid: *const IID,
11556 ppvHeap: *mut *mut ::std::os::raw::c_void,
11557 ) -> HRESULT,
11558 >,
11559 pub EnqueueMakeResident: ::std::option::Option<
11560 unsafe extern "C" fn(
11561 This: *mut ID3D12Device3,
11562 Flags: D3D12_RESIDENCY_FLAGS,
11563 NumObjects: UINT,
11564 ppObjects: *const *mut ID3D12Pageable,
11565 pFenceToSignal: *mut ID3D12Fence,
11566 FenceValueToSignal: UINT64,
11567 ) -> HRESULT,
11568 >,
11569}
11570#[repr(C)]
11571#[derive(Debug, Copy, Clone, Hash, PartialOrd, Ord, PartialEq, Eq)]
11572pub struct ID3D12Device3 {
11573 pub lpVtbl: *mut ID3D12Device3Vtbl,
11574}
11575impl Default for ID3D12Device3 {
11576 fn default() -> Self {
11577 let mut s = ::std::mem::MaybeUninit::<Self>::uninit();
11578 unsafe {
11579 ::std::ptr::write_bytes(s.as_mut_ptr(), 0, 1);
11580 s.assume_init()
11581 }
11582 }
11583}
11584pub const D3D12_COMMAND_LIST_FLAGS_D3D12_COMMAND_LIST_FLAG_NONE:
11585 D3D12_COMMAND_LIST_FLAGS = 0;
11586pub type D3D12_COMMAND_LIST_FLAGS = ::std::os::raw::c_int;
11587pub const D3D12_COMMAND_POOL_FLAGS_D3D12_COMMAND_POOL_FLAG_NONE:
11588 D3D12_COMMAND_POOL_FLAGS = 0;
11589pub type D3D12_COMMAND_POOL_FLAGS = ::std::os::raw::c_int;
11590pub const D3D12_COMMAND_RECORDER_FLAGS_D3D12_COMMAND_RECORDER_FLAG_NONE:
11591 D3D12_COMMAND_RECORDER_FLAGS = 0;
11592pub type D3D12_COMMAND_RECORDER_FLAGS = ::std::os::raw::c_int;
11593pub const D3D12_PROTECTED_SESSION_STATUS_D3D12_PROTECTED_SESSION_STATUS_OK:
11594 D3D12_PROTECTED_SESSION_STATUS = 0;
11595pub const D3D12_PROTECTED_SESSION_STATUS_D3D12_PROTECTED_SESSION_STATUS_INVALID : D3D12_PROTECTED_SESSION_STATUS = 1 ;
11596pub type D3D12_PROTECTED_SESSION_STATUS = ::std::os::raw::c_int;
11597extern "C" {
11598 pub static IID_ID3D12ProtectedSession: IID;
11599}
11600#[repr(C)]
11601#[derive(Debug, Default, Copy, Clone, Hash, PartialOrd, Ord, PartialEq, Eq)]
11602pub struct ID3D12ProtectedSessionVtbl {
11603 pub QueryInterface: ::std::option::Option<
11604 unsafe extern "C" fn(
11605 This: *mut ID3D12ProtectedSession,
11606 riid: *const IID,
11607 ppvObject: *mut *mut ::std::os::raw::c_void,
11608 ) -> HRESULT,
11609 >,
11610 pub AddRef: ::std::option::Option<
11611 unsafe extern "C" fn(This: *mut ID3D12ProtectedSession) -> ULONG,
11612 >,
11613 pub Release: ::std::option::Option<
11614 unsafe extern "C" fn(This: *mut ID3D12ProtectedSession) -> ULONG,
11615 >,
11616 pub GetPrivateData: ::std::option::Option<
11617 unsafe extern "C" fn(
11618 This: *mut ID3D12ProtectedSession,
11619 guid: *const GUID,
11620 pDataSize: *mut UINT,
11621 pData: *mut ::std::os::raw::c_void,
11622 ) -> HRESULT,
11623 >,
11624 pub SetPrivateData: ::std::option::Option<
11625 unsafe extern "C" fn(
11626 This: *mut ID3D12ProtectedSession,
11627 guid: *const GUID,
11628 DataSize: UINT,
11629 pData: *const ::std::os::raw::c_void,
11630 ) -> HRESULT,
11631 >,
11632 pub SetPrivateDataInterface: ::std::option::Option<
11633 unsafe extern "C" fn(
11634 This: *mut ID3D12ProtectedSession,
11635 guid: *const GUID,
11636 pData: *const IUnknown,
11637 ) -> HRESULT,
11638 >,
11639 pub SetName: ::std::option::Option<
11640 unsafe extern "C" fn(
11641 This: *mut ID3D12ProtectedSession,
11642 Name: LPCWSTR,
11643 ) -> HRESULT,
11644 >,
11645 pub GetDevice: ::std::option::Option<
11646 unsafe extern "C" fn(
11647 This: *mut ID3D12ProtectedSession,
11648 riid: *const IID,
11649 ppvDevice: *mut *mut ::std::os::raw::c_void,
11650 ) -> HRESULT,
11651 >,
11652 pub GetStatusFence: ::std::option::Option<
11653 unsafe extern "C" fn(
11654 This: *mut ID3D12ProtectedSession,
11655 riid: *const IID,
11656 ppFence: *mut *mut ::std::os::raw::c_void,
11657 ) -> HRESULT,
11658 >,
11659 pub GetSessionStatus: ::std::option::Option<
11660 unsafe extern "C" fn(
11661 This: *mut ID3D12ProtectedSession,
11662 ) -> D3D12_PROTECTED_SESSION_STATUS,
11663 >,
11664}
11665#[repr(C)]
11666#[derive(Debug, Copy, Clone, Hash, PartialOrd, Ord, PartialEq, Eq)]
11667pub struct ID3D12ProtectedSession {
11668 pub lpVtbl: *mut ID3D12ProtectedSessionVtbl,
11669}
11670impl Default for ID3D12ProtectedSession {
11671 fn default() -> Self {
11672 let mut s = ::std::mem::MaybeUninit::<Self>::uninit();
11673 unsafe {
11674 ::std::ptr::write_bytes(s.as_mut_ptr(), 0, 1);
11675 s.assume_init()
11676 }
11677 }
11678}
11679pub const D3D12_PROTECTED_RESOURCE_SESSION_SUPPORT_FLAGS_D3D12_PROTECTED_RESOURCE_SESSION_SUPPORT_FLAG_NONE : D3D12_PROTECTED_RESOURCE_SESSION_SUPPORT_FLAGS = 0 ;
11680pub const D3D12_PROTECTED_RESOURCE_SESSION_SUPPORT_FLAGS_D3D12_PROTECTED_RESOURCE_SESSION_SUPPORT_FLAG_SUPPORTED : D3D12_PROTECTED_RESOURCE_SESSION_SUPPORT_FLAGS = 1 ;
11681pub type D3D12_PROTECTED_RESOURCE_SESSION_SUPPORT_FLAGS = ::std::os::raw::c_int;
11682#[repr(C)]
11683#[derive(Debug, Copy, Clone, Hash, PartialOrd, Ord, PartialEq, Eq)]
11684pub struct D3D12_FEATURE_DATA_PROTECTED_RESOURCE_SESSION_SUPPORT {
11685 pub NodeIndex: UINT,
11686 pub Support: D3D12_PROTECTED_RESOURCE_SESSION_SUPPORT_FLAGS,
11687}
11688impl Default for D3D12_FEATURE_DATA_PROTECTED_RESOURCE_SESSION_SUPPORT {
11689 fn default() -> Self {
11690 let mut s = ::std::mem::MaybeUninit::<Self>::uninit();
11691 unsafe {
11692 ::std::ptr::write_bytes(s.as_mut_ptr(), 0, 1);
11693 s.assume_init()
11694 }
11695 }
11696}
11697pub const D3D12_PROTECTED_RESOURCE_SESSION_FLAGS_D3D12_PROTECTED_RESOURCE_SESSION_FLAG_NONE : D3D12_PROTECTED_RESOURCE_SESSION_FLAGS = 0 ;
11698pub type D3D12_PROTECTED_RESOURCE_SESSION_FLAGS = ::std::os::raw::c_int;
11699#[repr(C)]
11700#[derive(Debug, Copy, Clone, Hash, PartialOrd, Ord, PartialEq, Eq)]
11701pub struct D3D12_PROTECTED_RESOURCE_SESSION_DESC {
11702 pub NodeMask: UINT,
11703 pub Flags: D3D12_PROTECTED_RESOURCE_SESSION_FLAGS,
11704}
11705impl Default for D3D12_PROTECTED_RESOURCE_SESSION_DESC {
11706 fn default() -> Self {
11707 let mut s = ::std::mem::MaybeUninit::<Self>::uninit();
11708 unsafe {
11709 ::std::ptr::write_bytes(s.as_mut_ptr(), 0, 1);
11710 s.assume_init()
11711 }
11712 }
11713}
11714extern "C" {
11715 pub static IID_ID3D12ProtectedResourceSession: IID;
11716}
11717#[repr(C)]
11718#[derive(Debug, Default, Copy, Clone, Hash, PartialOrd, Ord, PartialEq, Eq)]
11719pub struct ID3D12ProtectedResourceSessionVtbl {
11720 pub QueryInterface: ::std::option::Option<
11721 unsafe extern "C" fn(
11722 This: *mut ID3D12ProtectedResourceSession,
11723 riid: *const IID,
11724 ppvObject: *mut *mut ::std::os::raw::c_void,
11725 ) -> HRESULT,
11726 >,
11727 pub AddRef: ::std::option::Option<
11728 unsafe extern "C" fn(
11729 This: *mut ID3D12ProtectedResourceSession,
11730 ) -> ULONG,
11731 >,
11732 pub Release: ::std::option::Option<
11733 unsafe extern "C" fn(
11734 This: *mut ID3D12ProtectedResourceSession,
11735 ) -> ULONG,
11736 >,
11737 pub GetPrivateData: ::std::option::Option<
11738 unsafe extern "C" fn(
11739 This: *mut ID3D12ProtectedResourceSession,
11740 guid: *const GUID,
11741 pDataSize: *mut UINT,
11742 pData: *mut ::std::os::raw::c_void,
11743 ) -> HRESULT,
11744 >,
11745 pub SetPrivateData: ::std::option::Option<
11746 unsafe extern "C" fn(
11747 This: *mut ID3D12ProtectedResourceSession,
11748 guid: *const GUID,
11749 DataSize: UINT,
11750 pData: *const ::std::os::raw::c_void,
11751 ) -> HRESULT,
11752 >,
11753 pub SetPrivateDataInterface: ::std::option::Option<
11754 unsafe extern "C" fn(
11755 This: *mut ID3D12ProtectedResourceSession,
11756 guid: *const GUID,
11757 pData: *const IUnknown,
11758 ) -> HRESULT,
11759 >,
11760 pub SetName: ::std::option::Option<
11761 unsafe extern "C" fn(
11762 This: *mut ID3D12ProtectedResourceSession,
11763 Name: LPCWSTR,
11764 ) -> HRESULT,
11765 >,
11766 pub GetDevice: ::std::option::Option<
11767 unsafe extern "C" fn(
11768 This: *mut ID3D12ProtectedResourceSession,
11769 riid: *const IID,
11770 ppvDevice: *mut *mut ::std::os::raw::c_void,
11771 ) -> HRESULT,
11772 >,
11773 pub GetStatusFence: ::std::option::Option<
11774 unsafe extern "C" fn(
11775 This: *mut ID3D12ProtectedResourceSession,
11776 riid: *const IID,
11777 ppFence: *mut *mut ::std::os::raw::c_void,
11778 ) -> HRESULT,
11779 >,
11780 pub GetSessionStatus: ::std::option::Option<
11781 unsafe extern "C" fn(
11782 This: *mut ID3D12ProtectedResourceSession,
11783 ) -> D3D12_PROTECTED_SESSION_STATUS,
11784 >,
11785 pub GetDesc: ::std::option::Option<
11786 unsafe extern "C" fn(
11787 This: *mut ID3D12ProtectedResourceSession,
11788 RetVal: *mut D3D12_PROTECTED_RESOURCE_SESSION_DESC,
11789 )
11790 -> *mut D3D12_PROTECTED_RESOURCE_SESSION_DESC,
11791 >,
11792}
11793#[repr(C)]
11794#[derive(Debug, Copy, Clone, Hash, PartialOrd, Ord, PartialEq, Eq)]
11795pub struct ID3D12ProtectedResourceSession {
11796 pub lpVtbl: *mut ID3D12ProtectedResourceSessionVtbl,
11797}
11798impl Default for ID3D12ProtectedResourceSession {
11799 fn default() -> Self {
11800 let mut s = ::std::mem::MaybeUninit::<Self>::uninit();
11801 unsafe {
11802 ::std::ptr::write_bytes(s.as_mut_ptr(), 0, 1);
11803 s.assume_init()
11804 }
11805 }
11806}
11807extern "C" {
11808 pub static IID_ID3D12Device4: IID;
11809}
11810#[repr(C)]
11811#[derive(Debug, Default, Copy, Clone, Hash, PartialOrd, Ord, PartialEq, Eq)]
11812pub struct ID3D12Device4Vtbl {
11813 pub QueryInterface: ::std::option::Option<
11814 unsafe extern "C" fn(
11815 This: *mut ID3D12Device4,
11816 riid: *const IID,
11817 ppvObject: *mut *mut ::std::os::raw::c_void,
11818 ) -> HRESULT,
11819 >,
11820 pub AddRef: ::std::option::Option<
11821 unsafe extern "C" fn(This: *mut ID3D12Device4) -> ULONG,
11822 >,
11823 pub Release: ::std::option::Option<
11824 unsafe extern "C" fn(This: *mut ID3D12Device4) -> ULONG,
11825 >,
11826 pub GetPrivateData: ::std::option::Option<
11827 unsafe extern "C" fn(
11828 This: *mut ID3D12Device4,
11829 guid: *const GUID,
11830 pDataSize: *mut UINT,
11831 pData: *mut ::std::os::raw::c_void,
11832 ) -> HRESULT,
11833 >,
11834 pub SetPrivateData: ::std::option::Option<
11835 unsafe extern "C" fn(
11836 This: *mut ID3D12Device4,
11837 guid: *const GUID,
11838 DataSize: UINT,
11839 pData: *const ::std::os::raw::c_void,
11840 ) -> HRESULT,
11841 >,
11842 pub SetPrivateDataInterface: ::std::option::Option<
11843 unsafe extern "C" fn(
11844 This: *mut ID3D12Device4,
11845 guid: *const GUID,
11846 pData: *const IUnknown,
11847 ) -> HRESULT,
11848 >,
11849 pub SetName: ::std::option::Option<
11850 unsafe extern "C" fn(
11851 This: *mut ID3D12Device4,
11852 Name: LPCWSTR,
11853 ) -> HRESULT,
11854 >,
11855 pub GetNodeCount: ::std::option::Option<
11856 unsafe extern "C" fn(This: *mut ID3D12Device4) -> UINT,
11857 >,
11858 pub CreateCommandQueue: ::std::option::Option<
11859 unsafe extern "C" fn(
11860 This: *mut ID3D12Device4,
11861 pDesc: *const D3D12_COMMAND_QUEUE_DESC,
11862 riid: *const IID,
11863 ppCommandQueue: *mut *mut ::std::os::raw::c_void,
11864 ) -> HRESULT,
11865 >,
11866 pub CreateCommandAllocator: ::std::option::Option<
11867 unsafe extern "C" fn(
11868 This: *mut ID3D12Device4,
11869 type_: D3D12_COMMAND_LIST_TYPE,
11870 riid: *const IID,
11871 ppCommandAllocator: *mut *mut ::std::os::raw::c_void,
11872 ) -> HRESULT,
11873 >,
11874 pub CreateGraphicsPipelineState: ::std::option::Option<
11875 unsafe extern "C" fn(
11876 This: *mut ID3D12Device4,
11877 pDesc: *const D3D12_GRAPHICS_PIPELINE_STATE_DESC,
11878 riid: *const IID,
11879 ppPipelineState: *mut *mut ::std::os::raw::c_void,
11880 ) -> HRESULT,
11881 >,
11882 pub CreateComputePipelineState: ::std::option::Option<
11883 unsafe extern "C" fn(
11884 This: *mut ID3D12Device4,
11885 pDesc: *const D3D12_COMPUTE_PIPELINE_STATE_DESC,
11886 riid: *const IID,
11887 ppPipelineState: *mut *mut ::std::os::raw::c_void,
11888 ) -> HRESULT,
11889 >,
11890 pub CreateCommandList: ::std::option::Option<
11891 unsafe extern "C" fn(
11892 This: *mut ID3D12Device4,
11893 nodeMask: UINT,
11894 type_: D3D12_COMMAND_LIST_TYPE,
11895 pCommandAllocator: *mut ID3D12CommandAllocator,
11896 pInitialState: *mut ID3D12PipelineState,
11897 riid: *const IID,
11898 ppCommandList: *mut *mut ::std::os::raw::c_void,
11899 ) -> HRESULT,
11900 >,
11901 pub CheckFeatureSupport: ::std::option::Option<
11902 unsafe extern "C" fn(
11903 This: *mut ID3D12Device4,
11904 Feature: D3D12_FEATURE,
11905 pFeatureSupportData: *mut ::std::os::raw::c_void,
11906 FeatureSupportDataSize: UINT,
11907 ) -> HRESULT,
11908 >,
11909 pub CreateDescriptorHeap: ::std::option::Option<
11910 unsafe extern "C" fn(
11911 This: *mut ID3D12Device4,
11912 pDescriptorHeapDesc: *const D3D12_DESCRIPTOR_HEAP_DESC,
11913 riid: *const IID,
11914 ppvHeap: *mut *mut ::std::os::raw::c_void,
11915 ) -> HRESULT,
11916 >,
11917 pub GetDescriptorHandleIncrementSize: ::std::option::Option<
11918 unsafe extern "C" fn(
11919 This: *mut ID3D12Device4,
11920 DescriptorHeapType: D3D12_DESCRIPTOR_HEAP_TYPE,
11921 ) -> UINT,
11922 >,
11923 pub CreateRootSignature: ::std::option::Option<
11924 unsafe extern "C" fn(
11925 This: *mut ID3D12Device4,
11926 nodeMask: UINT,
11927 pBlobWithRootSignature: *const ::std::os::raw::c_void,
11928 blobLengthInBytes: SIZE_T,
11929 riid: *const IID,
11930 ppvRootSignature: *mut *mut ::std::os::raw::c_void,
11931 ) -> HRESULT,
11932 >,
11933 pub CreateConstantBufferView: ::std::option::Option<
11934 unsafe extern "C" fn(
11935 This: *mut ID3D12Device4,
11936 pDesc: *const D3D12_CONSTANT_BUFFER_VIEW_DESC,
11937 DestDescriptor: D3D12_CPU_DESCRIPTOR_HANDLE,
11938 ),
11939 >,
11940 pub CreateShaderResourceView: ::std::option::Option<
11941 unsafe extern "C" fn(
11942 This: *mut ID3D12Device4,
11943 pResource: *mut ID3D12Resource,
11944 pDesc: *const D3D12_SHADER_RESOURCE_VIEW_DESC,
11945 DestDescriptor: D3D12_CPU_DESCRIPTOR_HANDLE,
11946 ),
11947 >,
11948 pub CreateUnorderedAccessView: ::std::option::Option<
11949 unsafe extern "C" fn(
11950 This: *mut ID3D12Device4,
11951 pResource: *mut ID3D12Resource,
11952 pCounterResource: *mut ID3D12Resource,
11953 pDesc: *const D3D12_UNORDERED_ACCESS_VIEW_DESC,
11954 DestDescriptor: D3D12_CPU_DESCRIPTOR_HANDLE,
11955 ),
11956 >,
11957 pub CreateRenderTargetView: ::std::option::Option<
11958 unsafe extern "C" fn(
11959 This: *mut ID3D12Device4,
11960 pResource: *mut ID3D12Resource,
11961 pDesc: *const D3D12_RENDER_TARGET_VIEW_DESC,
11962 DestDescriptor: D3D12_CPU_DESCRIPTOR_HANDLE,
11963 ),
11964 >,
11965 pub CreateDepthStencilView: ::std::option::Option<
11966 unsafe extern "C" fn(
11967 This: *mut ID3D12Device4,
11968 pResource: *mut ID3D12Resource,
11969 pDesc: *const D3D12_DEPTH_STENCIL_VIEW_DESC,
11970 DestDescriptor: D3D12_CPU_DESCRIPTOR_HANDLE,
11971 ),
11972 >,
11973 pub CreateSampler: ::std::option::Option<
11974 unsafe extern "C" fn(
11975 This: *mut ID3D12Device4,
11976 pDesc: *const D3D12_SAMPLER_DESC,
11977 DestDescriptor: D3D12_CPU_DESCRIPTOR_HANDLE,
11978 ),
11979 >,
11980 pub CopyDescriptors: ::std::option::Option<
11981 unsafe extern "C" fn(
11982 This: *mut ID3D12Device4,
11983 NumDestDescriptorRanges: UINT,
11984 pDestDescriptorRangeStarts: *const D3D12_CPU_DESCRIPTOR_HANDLE,
11985 pDestDescriptorRangeSizes: *const UINT,
11986 NumSrcDescriptorRanges: UINT,
11987 pSrcDescriptorRangeStarts: *const D3D12_CPU_DESCRIPTOR_HANDLE,
11988 pSrcDescriptorRangeSizes: *const UINT,
11989 DescriptorHeapsType: D3D12_DESCRIPTOR_HEAP_TYPE,
11990 ),
11991 >,
11992 pub CopyDescriptorsSimple: ::std::option::Option<
11993 unsafe extern "C" fn(
11994 This: *mut ID3D12Device4,
11995 NumDescriptors: UINT,
11996 DestDescriptorRangeStart: D3D12_CPU_DESCRIPTOR_HANDLE,
11997 SrcDescriptorRangeStart: D3D12_CPU_DESCRIPTOR_HANDLE,
11998 DescriptorHeapsType: D3D12_DESCRIPTOR_HEAP_TYPE,
11999 ),
12000 >,
12001 pub GetResourceAllocationInfo: ::std::option::Option<
12002 unsafe extern "C" fn(
12003 This: *mut ID3D12Device4,
12004 RetVal: *mut D3D12_RESOURCE_ALLOCATION_INFO,
12005 visibleMask: UINT,
12006 numResourceDescs: UINT,
12007 pResourceDescs: *const D3D12_RESOURCE_DESC,
12008 ) -> *mut D3D12_RESOURCE_ALLOCATION_INFO,
12009 >,
12010 pub GetCustomHeapProperties: ::std::option::Option<
12011 unsafe extern "C" fn(
12012 This: *mut ID3D12Device4,
12013 RetVal: *mut D3D12_HEAP_PROPERTIES,
12014 nodeMask: UINT,
12015 heapType: D3D12_HEAP_TYPE,
12016 ) -> *mut D3D12_HEAP_PROPERTIES,
12017 >,
12018 pub CreateCommittedResource: ::std::option::Option<
12019 unsafe extern "C" fn(
12020 This: *mut ID3D12Device4,
12021 pHeapProperties: *const D3D12_HEAP_PROPERTIES,
12022 HeapFlags: D3D12_HEAP_FLAGS,
12023 pDesc: *const D3D12_RESOURCE_DESC,
12024 InitialResourceState: D3D12_RESOURCE_STATES,
12025 pOptimizedClearValue: *const D3D12_CLEAR_VALUE,
12026 riidResource: *const IID,
12027 ppvResource: *mut *mut ::std::os::raw::c_void,
12028 ) -> HRESULT,
12029 >,
12030 pub CreateHeap: ::std::option::Option<
12031 unsafe extern "C" fn(
12032 This: *mut ID3D12Device4,
12033 pDesc: *const D3D12_HEAP_DESC,
12034 riid: *const IID,
12035 ppvHeap: *mut *mut ::std::os::raw::c_void,
12036 ) -> HRESULT,
12037 >,
12038 pub CreatePlacedResource: ::std::option::Option<
12039 unsafe extern "C" fn(
12040 This: *mut ID3D12Device4,
12041 pHeap: *mut ID3D12Heap,
12042 HeapOffset: UINT64,
12043 pDesc: *const D3D12_RESOURCE_DESC,
12044 InitialState: D3D12_RESOURCE_STATES,
12045 pOptimizedClearValue: *const D3D12_CLEAR_VALUE,
12046 riid: *const IID,
12047 ppvResource: *mut *mut ::std::os::raw::c_void,
12048 ) -> HRESULT,
12049 >,
12050 pub CreateReservedResource: ::std::option::Option<
12051 unsafe extern "C" fn(
12052 This: *mut ID3D12Device4,
12053 pDesc: *const D3D12_RESOURCE_DESC,
12054 InitialState: D3D12_RESOURCE_STATES,
12055 pOptimizedClearValue: *const D3D12_CLEAR_VALUE,
12056 riid: *const IID,
12057 ppvResource: *mut *mut ::std::os::raw::c_void,
12058 ) -> HRESULT,
12059 >,
12060 pub CreateSharedHandle: ::std::option::Option<
12061 unsafe extern "C" fn(
12062 This: *mut ID3D12Device4,
12063 pObject: *mut ID3D12DeviceChild,
12064 pAttributes: *const SECURITY_ATTRIBUTES,
12065 Access: DWORD,
12066 Name: LPCWSTR,
12067 pHandle: *mut HANDLE,
12068 ) -> HRESULT,
12069 >,
12070 pub OpenSharedHandle: ::std::option::Option<
12071 unsafe extern "C" fn(
12072 This: *mut ID3D12Device4,
12073 NTHandle: HANDLE,
12074 riid: *const IID,
12075 ppvObj: *mut *mut ::std::os::raw::c_void,
12076 ) -> HRESULT,
12077 >,
12078 pub OpenSharedHandleByName: ::std::option::Option<
12079 unsafe extern "C" fn(
12080 This: *mut ID3D12Device4,
12081 Name: LPCWSTR,
12082 Access: DWORD,
12083 pNTHandle: *mut HANDLE,
12084 ) -> HRESULT,
12085 >,
12086 pub MakeResident: ::std::option::Option<
12087 unsafe extern "C" fn(
12088 This: *mut ID3D12Device4,
12089 NumObjects: UINT,
12090 ppObjects: *const *mut ID3D12Pageable,
12091 ) -> HRESULT,
12092 >,
12093 pub Evict: ::std::option::Option<
12094 unsafe extern "C" fn(
12095 This: *mut ID3D12Device4,
12096 NumObjects: UINT,
12097 ppObjects: *const *mut ID3D12Pageable,
12098 ) -> HRESULT,
12099 >,
12100 pub CreateFence: ::std::option::Option<
12101 unsafe extern "C" fn(
12102 This: *mut ID3D12Device4,
12103 InitialValue: UINT64,
12104 Flags: D3D12_FENCE_FLAGS,
12105 riid: *const IID,
12106 ppFence: *mut *mut ::std::os::raw::c_void,
12107 ) -> HRESULT,
12108 >,
12109 pub GetDeviceRemovedReason: ::std::option::Option<
12110 unsafe extern "C" fn(This: *mut ID3D12Device4) -> HRESULT,
12111 >,
12112 pub GetCopyableFootprints: ::std::option::Option<
12113 unsafe extern "C" fn(
12114 This: *mut ID3D12Device4,
12115 pResourceDesc: *const D3D12_RESOURCE_DESC,
12116 FirstSubresource: UINT,
12117 NumSubresources: UINT,
12118 BaseOffset: UINT64,
12119 pLayouts: *mut D3D12_PLACED_SUBRESOURCE_FOOTPRINT,
12120 pNumRows: *mut UINT,
12121 pRowSizeInBytes: *mut UINT64,
12122 pTotalBytes: *mut UINT64,
12123 ),
12124 >,
12125 pub CreateQueryHeap: ::std::option::Option<
12126 unsafe extern "C" fn(
12127 This: *mut ID3D12Device4,
12128 pDesc: *const D3D12_QUERY_HEAP_DESC,
12129 riid: *const IID,
12130 ppvHeap: *mut *mut ::std::os::raw::c_void,
12131 ) -> HRESULT,
12132 >,
12133 pub SetStablePowerState: ::std::option::Option<
12134 unsafe extern "C" fn(This: *mut ID3D12Device4, Enable: BOOL) -> HRESULT,
12135 >,
12136 pub CreateCommandSignature: ::std::option::Option<
12137 unsafe extern "C" fn(
12138 This: *mut ID3D12Device4,
12139 pDesc: *const D3D12_COMMAND_SIGNATURE_DESC,
12140 pRootSignature: *mut ID3D12RootSignature,
12141 riid: *const IID,
12142 ppvCommandSignature: *mut *mut ::std::os::raw::c_void,
12143 ) -> HRESULT,
12144 >,
12145 pub GetResourceTiling: ::std::option::Option<
12146 unsafe extern "C" fn(
12147 This: *mut ID3D12Device4,
12148 pTiledResource: *mut ID3D12Resource,
12149 pNumTilesForEntireResource: *mut UINT,
12150 pPackedMipDesc: *mut D3D12_PACKED_MIP_INFO,
12151 pStandardTileShapeForNonPackedMips: *mut D3D12_TILE_SHAPE,
12152 pNumSubresourceTilings: *mut UINT,
12153 FirstSubresourceTilingToGet: UINT,
12154 pSubresourceTilingsForNonPackedMips: *mut D3D12_SUBRESOURCE_TILING,
12155 ),
12156 >,
12157 pub GetAdapterLuid: ::std::option::Option<
12158 unsafe extern "C" fn(
12159 This: *mut ID3D12Device4,
12160 RetVal: *mut LUID,
12161 ) -> *mut LUID,
12162 >,
12163 pub CreatePipelineLibrary: ::std::option::Option<
12164 unsafe extern "C" fn(
12165 This: *mut ID3D12Device4,
12166 pLibraryBlob: *const ::std::os::raw::c_void,
12167 BlobLength: SIZE_T,
12168 riid: *const IID,
12169 ppPipelineLibrary: *mut *mut ::std::os::raw::c_void,
12170 ) -> HRESULT,
12171 >,
12172 pub SetEventOnMultipleFenceCompletion: ::std::option::Option<
12173 unsafe extern "C" fn(
12174 This: *mut ID3D12Device4,
12175 ppFences: *const *mut ID3D12Fence,
12176 pFenceValues: *const UINT64,
12177 NumFences: UINT,
12178 Flags: D3D12_MULTIPLE_FENCE_WAIT_FLAGS,
12179 hEvent: HANDLE,
12180 ) -> HRESULT,
12181 >,
12182 pub SetResidencyPriority: ::std::option::Option<
12183 unsafe extern "C" fn(
12184 This: *mut ID3D12Device4,
12185 NumObjects: UINT,
12186 ppObjects: *const *mut ID3D12Pageable,
12187 pPriorities: *const D3D12_RESIDENCY_PRIORITY,
12188 ) -> HRESULT,
12189 >,
12190 pub CreatePipelineState: ::std::option::Option<
12191 unsafe extern "C" fn(
12192 This: *mut ID3D12Device4,
12193 pDesc: *const D3D12_PIPELINE_STATE_STREAM_DESC,
12194 riid: *const IID,
12195 ppPipelineState: *mut *mut ::std::os::raw::c_void,
12196 ) -> HRESULT,
12197 >,
12198 pub OpenExistingHeapFromAddress: ::std::option::Option<
12199 unsafe extern "C" fn(
12200 This: *mut ID3D12Device4,
12201 pAddress: *const ::std::os::raw::c_void,
12202 riid: *const IID,
12203 ppvHeap: *mut *mut ::std::os::raw::c_void,
12204 ) -> HRESULT,
12205 >,
12206 pub OpenExistingHeapFromFileMapping: ::std::option::Option<
12207 unsafe extern "C" fn(
12208 This: *mut ID3D12Device4,
12209 hFileMapping: HANDLE,
12210 riid: *const IID,
12211 ppvHeap: *mut *mut ::std::os::raw::c_void,
12212 ) -> HRESULT,
12213 >,
12214 pub EnqueueMakeResident: ::std::option::Option<
12215 unsafe extern "C" fn(
12216 This: *mut ID3D12Device4,
12217 Flags: D3D12_RESIDENCY_FLAGS,
12218 NumObjects: UINT,
12219 ppObjects: *const *mut ID3D12Pageable,
12220 pFenceToSignal: *mut ID3D12Fence,
12221 FenceValueToSignal: UINT64,
12222 ) -> HRESULT,
12223 >,
12224 pub CreateCommandList1: ::std::option::Option<
12225 unsafe extern "C" fn(
12226 This: *mut ID3D12Device4,
12227 nodeMask: UINT,
12228 type_: D3D12_COMMAND_LIST_TYPE,
12229 flags: D3D12_COMMAND_LIST_FLAGS,
12230 riid: *const IID,
12231 ppCommandList: *mut *mut ::std::os::raw::c_void,
12232 ) -> HRESULT,
12233 >,
12234 pub CreateProtectedResourceSession: ::std::option::Option<
12235 unsafe extern "C" fn(
12236 This: *mut ID3D12Device4,
12237 pDesc: *const D3D12_PROTECTED_RESOURCE_SESSION_DESC,
12238 riid: *const IID,
12239 ppSession: *mut *mut ::std::os::raw::c_void,
12240 ) -> HRESULT,
12241 >,
12242 pub CreateCommittedResource1: ::std::option::Option<
12243 unsafe extern "C" fn(
12244 This: *mut ID3D12Device4,
12245 pHeapProperties: *const D3D12_HEAP_PROPERTIES,
12246 HeapFlags: D3D12_HEAP_FLAGS,
12247 pDesc: *const D3D12_RESOURCE_DESC,
12248 InitialResourceState: D3D12_RESOURCE_STATES,
12249 pOptimizedClearValue: *const D3D12_CLEAR_VALUE,
12250 pProtectedSession: *mut ID3D12ProtectedResourceSession,
12251 riidResource: *const IID,
12252 ppvResource: *mut *mut ::std::os::raw::c_void,
12253 ) -> HRESULT,
12254 >,
12255 pub CreateHeap1: ::std::option::Option<
12256 unsafe extern "C" fn(
12257 This: *mut ID3D12Device4,
12258 pDesc: *const D3D12_HEAP_DESC,
12259 pProtectedSession: *mut ID3D12ProtectedResourceSession,
12260 riid: *const IID,
12261 ppvHeap: *mut *mut ::std::os::raw::c_void,
12262 ) -> HRESULT,
12263 >,
12264 pub CreateReservedResource1: ::std::option::Option<
12265 unsafe extern "C" fn(
12266 This: *mut ID3D12Device4,
12267 pDesc: *const D3D12_RESOURCE_DESC,
12268 InitialState: D3D12_RESOURCE_STATES,
12269 pOptimizedClearValue: *const D3D12_CLEAR_VALUE,
12270 pProtectedSession: *mut ID3D12ProtectedResourceSession,
12271 riid: *const IID,
12272 ppvResource: *mut *mut ::std::os::raw::c_void,
12273 ) -> HRESULT,
12274 >,
12275 pub GetResourceAllocationInfo1: ::std::option::Option<
12276 unsafe extern "C" fn(
12277 This: *mut ID3D12Device4,
12278 RetVal: *mut D3D12_RESOURCE_ALLOCATION_INFO,
12279 visibleMask: UINT,
12280 numResourceDescs: UINT,
12281 pResourceDescs: *const D3D12_RESOURCE_DESC,
12282 pResourceAllocationInfo1: *mut D3D12_RESOURCE_ALLOCATION_INFO1,
12283 ) -> *mut D3D12_RESOURCE_ALLOCATION_INFO,
12284 >,
12285}
12286#[repr(C)]
12287#[derive(Debug, Copy, Clone, Hash, PartialOrd, Ord, PartialEq, Eq)]
12288pub struct ID3D12Device4 {
12289 pub lpVtbl: *mut ID3D12Device4Vtbl,
12290}
12291impl Default for ID3D12Device4 {
12292 fn default() -> Self {
12293 let mut s = ::std::mem::MaybeUninit::<Self>::uninit();
12294 unsafe {
12295 ::std::ptr::write_bytes(s.as_mut_ptr(), 0, 1);
12296 s.assume_init()
12297 }
12298 }
12299}
12300pub const D3D12_LIFETIME_STATE_D3D12_LIFETIME_STATE_IN_USE:
12301 D3D12_LIFETIME_STATE = 0;
12302pub const D3D12_LIFETIME_STATE_D3D12_LIFETIME_STATE_NOT_IN_USE:
12303 D3D12_LIFETIME_STATE = 1;
12304pub type D3D12_LIFETIME_STATE = ::std::os::raw::c_int;
12305extern "C" {
12306 pub static IID_ID3D12LifetimeOwner: IID;
12307}
12308#[repr(C)]
12309#[derive(Debug, Default, Copy, Clone, Hash, PartialOrd, Ord, PartialEq, Eq)]
12310pub struct ID3D12LifetimeOwnerVtbl {
12311 pub QueryInterface: ::std::option::Option<
12312 unsafe extern "C" fn(
12313 This: *mut ID3D12LifetimeOwner,
12314 riid: *const IID,
12315 ppvObject: *mut *mut ::std::os::raw::c_void,
12316 ) -> HRESULT,
12317 >,
12318 pub AddRef: ::std::option::Option<
12319 unsafe extern "C" fn(This: *mut ID3D12LifetimeOwner) -> ULONG,
12320 >,
12321 pub Release: ::std::option::Option<
12322 unsafe extern "C" fn(This: *mut ID3D12LifetimeOwner) -> ULONG,
12323 >,
12324 pub LifetimeStateUpdated: ::std::option::Option<
12325 unsafe extern "C" fn(
12326 This: *mut ID3D12LifetimeOwner,
12327 NewState: D3D12_LIFETIME_STATE,
12328 ),
12329 >,
12330}
12331#[repr(C)]
12332#[derive(Debug, Copy, Clone, Hash, PartialOrd, Ord, PartialEq, Eq)]
12333pub struct ID3D12LifetimeOwner {
12334 pub lpVtbl: *mut ID3D12LifetimeOwnerVtbl,
12335}
12336impl Default for ID3D12LifetimeOwner {
12337 fn default() -> Self {
12338 let mut s = ::std::mem::MaybeUninit::<Self>::uninit();
12339 unsafe {
12340 ::std::ptr::write_bytes(s.as_mut_ptr(), 0, 1);
12341 s.assume_init()
12342 }
12343 }
12344}
12345extern "C" {
12346 pub static IID_ID3D12SwapChainAssistant: IID;
12347}
12348#[repr(C)]
12349#[derive(Debug, Default, Copy, Clone, Hash, PartialOrd, Ord, PartialEq, Eq)]
12350pub struct ID3D12SwapChainAssistantVtbl {
12351 pub QueryInterface: ::std::option::Option<
12352 unsafe extern "C" fn(
12353 This: *mut ID3D12SwapChainAssistant,
12354 riid: *const IID,
12355 ppvObject: *mut *mut ::std::os::raw::c_void,
12356 ) -> HRESULT,
12357 >,
12358 pub AddRef: ::std::option::Option<
12359 unsafe extern "C" fn(This: *mut ID3D12SwapChainAssistant) -> ULONG,
12360 >,
12361 pub Release: ::std::option::Option<
12362 unsafe extern "C" fn(This: *mut ID3D12SwapChainAssistant) -> ULONG,
12363 >,
12364 pub GetLUID: ::std::option::Option<
12365 unsafe extern "C" fn(
12366 This: *mut ID3D12SwapChainAssistant,
12367 RetVal: *mut LUID,
12368 ) -> *mut LUID,
12369 >,
12370 pub GetSwapChainObject: ::std::option::Option<
12371 unsafe extern "C" fn(
12372 This: *mut ID3D12SwapChainAssistant,
12373 riid: *const IID,
12374 ppv: *mut *mut ::std::os::raw::c_void,
12375 ) -> HRESULT,
12376 >,
12377 pub GetCurrentResourceAndCommandQueue: ::std::option::Option<
12378 unsafe extern "C" fn(
12379 This: *mut ID3D12SwapChainAssistant,
12380 riidResource: *const IID,
12381 ppvResource: *mut *mut ::std::os::raw::c_void,
12382 riidQueue: *const IID,
12383 ppvQueue: *mut *mut ::std::os::raw::c_void,
12384 ) -> HRESULT,
12385 >,
12386 pub InsertImplicitSync: ::std::option::Option<
12387 unsafe extern "C" fn(This: *mut ID3D12SwapChainAssistant) -> HRESULT,
12388 >,
12389}
12390#[repr(C)]
12391#[derive(Debug, Copy, Clone, Hash, PartialOrd, Ord, PartialEq, Eq)]
12392pub struct ID3D12SwapChainAssistant {
12393 pub lpVtbl: *mut ID3D12SwapChainAssistantVtbl,
12394}
12395impl Default for ID3D12SwapChainAssistant {
12396 fn default() -> Self {
12397 let mut s = ::std::mem::MaybeUninit::<Self>::uninit();
12398 unsafe {
12399 ::std::ptr::write_bytes(s.as_mut_ptr(), 0, 1);
12400 s.assume_init()
12401 }
12402 }
12403}
12404extern "C" {
12405 pub static IID_ID3D12LifetimeTracker: IID;
12406}
12407#[repr(C)]
12408#[derive(Debug, Default, Copy, Clone, Hash, PartialOrd, Ord, PartialEq, Eq)]
12409pub struct ID3D12LifetimeTrackerVtbl {
12410 pub QueryInterface: ::std::option::Option<
12411 unsafe extern "C" fn(
12412 This: *mut ID3D12LifetimeTracker,
12413 riid: *const IID,
12414 ppvObject: *mut *mut ::std::os::raw::c_void,
12415 ) -> HRESULT,
12416 >,
12417 pub AddRef: ::std::option::Option<
12418 unsafe extern "C" fn(This: *mut ID3D12LifetimeTracker) -> ULONG,
12419 >,
12420 pub Release: ::std::option::Option<
12421 unsafe extern "C" fn(This: *mut ID3D12LifetimeTracker) -> ULONG,
12422 >,
12423 pub GetPrivateData: ::std::option::Option<
12424 unsafe extern "C" fn(
12425 This: *mut ID3D12LifetimeTracker,
12426 guid: *const GUID,
12427 pDataSize: *mut UINT,
12428 pData: *mut ::std::os::raw::c_void,
12429 ) -> HRESULT,
12430 >,
12431 pub SetPrivateData: ::std::option::Option<
12432 unsafe extern "C" fn(
12433 This: *mut ID3D12LifetimeTracker,
12434 guid: *const GUID,
12435 DataSize: UINT,
12436 pData: *const ::std::os::raw::c_void,
12437 ) -> HRESULT,
12438 >,
12439 pub SetPrivateDataInterface: ::std::option::Option<
12440 unsafe extern "C" fn(
12441 This: *mut ID3D12LifetimeTracker,
12442 guid: *const GUID,
12443 pData: *const IUnknown,
12444 ) -> HRESULT,
12445 >,
12446 pub SetName: ::std::option::Option<
12447 unsafe extern "C" fn(
12448 This: *mut ID3D12LifetimeTracker,
12449 Name: LPCWSTR,
12450 ) -> HRESULT,
12451 >,
12452 pub GetDevice: ::std::option::Option<
12453 unsafe extern "C" fn(
12454 This: *mut ID3D12LifetimeTracker,
12455 riid: *const IID,
12456 ppvDevice: *mut *mut ::std::os::raw::c_void,
12457 ) -> HRESULT,
12458 >,
12459 pub DestroyOwnedObject: ::std::option::Option<
12460 unsafe extern "C" fn(
12461 This: *mut ID3D12LifetimeTracker,
12462 pObject: *mut ID3D12DeviceChild,
12463 ) -> HRESULT,
12464 >,
12465}
12466#[repr(C)]
12467#[derive(Debug, Copy, Clone, Hash, PartialOrd, Ord, PartialEq, Eq)]
12468pub struct ID3D12LifetimeTracker {
12469 pub lpVtbl: *mut ID3D12LifetimeTrackerVtbl,
12470}
12471impl Default for ID3D12LifetimeTracker {
12472 fn default() -> Self {
12473 let mut s = ::std::mem::MaybeUninit::<Self>::uninit();
12474 unsafe {
12475 ::std::ptr::write_bytes(s.as_mut_ptr(), 0, 1);
12476 s.assume_init()
12477 }
12478 }
12479}
12480pub const D3D12_META_COMMAND_PARAMETER_TYPE_D3D12_META_COMMAND_PARAMETER_TYPE_FLOAT : D3D12_META_COMMAND_PARAMETER_TYPE = 0 ;
12481pub const D3D12_META_COMMAND_PARAMETER_TYPE_D3D12_META_COMMAND_PARAMETER_TYPE_UINT64 : D3D12_META_COMMAND_PARAMETER_TYPE = 1 ;
12482pub const D3D12_META_COMMAND_PARAMETER_TYPE_D3D12_META_COMMAND_PARAMETER_TYPE_GPU_VIRTUAL_ADDRESS : D3D12_META_COMMAND_PARAMETER_TYPE = 2 ;
12483pub const D3D12_META_COMMAND_PARAMETER_TYPE_D3D12_META_COMMAND_PARAMETER_TYPE_CPU_DESCRIPTOR_HANDLE_HEAP_TYPE_CBV_SRV_UAV : D3D12_META_COMMAND_PARAMETER_TYPE = 3 ;
12484pub const D3D12_META_COMMAND_PARAMETER_TYPE_D3D12_META_COMMAND_PARAMETER_TYPE_GPU_DESCRIPTOR_HANDLE_HEAP_TYPE_CBV_SRV_UAV : D3D12_META_COMMAND_PARAMETER_TYPE = 4 ;
12485pub type D3D12_META_COMMAND_PARAMETER_TYPE = ::std::os::raw::c_int;
12486pub const D3D12_META_COMMAND_PARAMETER_FLAGS_D3D12_META_COMMAND_PARAMETER_FLAG_INPUT : D3D12_META_COMMAND_PARAMETER_FLAGS = 1 ;
12487pub const D3D12_META_COMMAND_PARAMETER_FLAGS_D3D12_META_COMMAND_PARAMETER_FLAG_OUTPUT : D3D12_META_COMMAND_PARAMETER_FLAGS = 2 ;
12488pub type D3D12_META_COMMAND_PARAMETER_FLAGS = ::std::os::raw::c_int;
12489pub const D3D12_META_COMMAND_PARAMETER_STAGE_D3D12_META_COMMAND_PARAMETER_STAGE_CREATION : D3D12_META_COMMAND_PARAMETER_STAGE = 0 ;
12490pub const D3D12_META_COMMAND_PARAMETER_STAGE_D3D12_META_COMMAND_PARAMETER_STAGE_INITIALIZATION : D3D12_META_COMMAND_PARAMETER_STAGE = 1 ;
12491pub const D3D12_META_COMMAND_PARAMETER_STAGE_D3D12_META_COMMAND_PARAMETER_STAGE_EXECUTION : D3D12_META_COMMAND_PARAMETER_STAGE = 2 ;
12492pub type D3D12_META_COMMAND_PARAMETER_STAGE = ::std::os::raw::c_int;
12493#[repr(C)]
12494#[derive(Debug, Copy, Clone, Hash, PartialOrd, Ord, PartialEq, Eq)]
12495pub struct D3D12_META_COMMAND_PARAMETER_DESC {
12496 pub Name: LPCWSTR,
12497 pub Type: D3D12_META_COMMAND_PARAMETER_TYPE,
12498 pub Flags: D3D12_META_COMMAND_PARAMETER_FLAGS,
12499 pub RequiredResourceState: D3D12_RESOURCE_STATES,
12500 pub StructureOffset: UINT,
12501}
12502impl Default for D3D12_META_COMMAND_PARAMETER_DESC {
12503 fn default() -> Self {
12504 let mut s = ::std::mem::MaybeUninit::<Self>::uninit();
12505 unsafe {
12506 ::std::ptr::write_bytes(s.as_mut_ptr(), 0, 1);
12507 s.assume_init()
12508 }
12509 }
12510}
12511pub const D3D12_GRAPHICS_STATES_D3D12_GRAPHICS_STATE_NONE:
12512 D3D12_GRAPHICS_STATES = 0;
12513pub const D3D12_GRAPHICS_STATES_D3D12_GRAPHICS_STATE_IA_VERTEX_BUFFERS:
12514 D3D12_GRAPHICS_STATES = 1;
12515pub const D3D12_GRAPHICS_STATES_D3D12_GRAPHICS_STATE_IA_INDEX_BUFFER:
12516 D3D12_GRAPHICS_STATES = 2;
12517pub const D3D12_GRAPHICS_STATES_D3D12_GRAPHICS_STATE_IA_PRIMITIVE_TOPOLOGY:
12518 D3D12_GRAPHICS_STATES = 4;
12519pub const D3D12_GRAPHICS_STATES_D3D12_GRAPHICS_STATE_DESCRIPTOR_HEAP:
12520 D3D12_GRAPHICS_STATES = 8;
12521pub const D3D12_GRAPHICS_STATES_D3D12_GRAPHICS_STATE_GRAPHICS_ROOT_SIGNATURE:
12522 D3D12_GRAPHICS_STATES = 16;
12523pub const D3D12_GRAPHICS_STATES_D3D12_GRAPHICS_STATE_COMPUTE_ROOT_SIGNATURE:
12524 D3D12_GRAPHICS_STATES = 32;
12525pub const D3D12_GRAPHICS_STATES_D3D12_GRAPHICS_STATE_RS_VIEWPORTS:
12526 D3D12_GRAPHICS_STATES = 64;
12527pub const D3D12_GRAPHICS_STATES_D3D12_GRAPHICS_STATE_RS_SCISSOR_RECTS:
12528 D3D12_GRAPHICS_STATES = 128;
12529pub const D3D12_GRAPHICS_STATES_D3D12_GRAPHICS_STATE_PREDICATION:
12530 D3D12_GRAPHICS_STATES = 256;
12531pub const D3D12_GRAPHICS_STATES_D3D12_GRAPHICS_STATE_OM_RENDER_TARGETS:
12532 D3D12_GRAPHICS_STATES = 512;
12533pub const D3D12_GRAPHICS_STATES_D3D12_GRAPHICS_STATE_OM_STENCIL_REF:
12534 D3D12_GRAPHICS_STATES = 1024;
12535pub const D3D12_GRAPHICS_STATES_D3D12_GRAPHICS_STATE_OM_BLEND_FACTOR:
12536 D3D12_GRAPHICS_STATES = 2048;
12537pub const D3D12_GRAPHICS_STATES_D3D12_GRAPHICS_STATE_PIPELINE_STATE:
12538 D3D12_GRAPHICS_STATES = 4096;
12539pub const D3D12_GRAPHICS_STATES_D3D12_GRAPHICS_STATE_SO_TARGETS:
12540 D3D12_GRAPHICS_STATES = 8192;
12541pub const D3D12_GRAPHICS_STATES_D3D12_GRAPHICS_STATE_OM_DEPTH_BOUNDS:
12542 D3D12_GRAPHICS_STATES = 16384;
12543pub const D3D12_GRAPHICS_STATES_D3D12_GRAPHICS_STATE_SAMPLE_POSITIONS:
12544 D3D12_GRAPHICS_STATES = 32768;
12545pub const D3D12_GRAPHICS_STATES_D3D12_GRAPHICS_STATE_VIEW_INSTANCE_MASK:
12546 D3D12_GRAPHICS_STATES = 65536;
12547pub type D3D12_GRAPHICS_STATES = ::std::os::raw::c_int;
12548#[repr(C)]
12549#[derive(Debug, Copy, Clone, Hash, PartialOrd, Ord, PartialEq, Eq)]
12550pub struct D3D12_META_COMMAND_DESC {
12551 pub Id: GUID,
12552 pub Name: LPCWSTR,
12553 pub InitializationDirtyState: D3D12_GRAPHICS_STATES,
12554 pub ExecutionDirtyState: D3D12_GRAPHICS_STATES,
12555}
12556impl Default for D3D12_META_COMMAND_DESC {
12557 fn default() -> Self {
12558 let mut s = ::std::mem::MaybeUninit::<Self>::uninit();
12559 unsafe {
12560 ::std::ptr::write_bytes(s.as_mut_ptr(), 0, 1);
12561 s.assume_init()
12562 }
12563 }
12564}
12565extern "C" {
12566 pub static IID_ID3D12StateObject: IID;
12567}
12568#[repr(C)]
12569#[derive(Debug, Default, Copy, Clone, Hash, PartialOrd, Ord, PartialEq, Eq)]
12570pub struct ID3D12StateObjectVtbl {
12571 pub QueryInterface: ::std::option::Option<
12572 unsafe extern "C" fn(
12573 This: *mut ID3D12StateObject,
12574 riid: *const IID,
12575 ppvObject: *mut *mut ::std::os::raw::c_void,
12576 ) -> HRESULT,
12577 >,
12578 pub AddRef: ::std::option::Option<
12579 unsafe extern "C" fn(This: *mut ID3D12StateObject) -> ULONG,
12580 >,
12581 pub Release: ::std::option::Option<
12582 unsafe extern "C" fn(This: *mut ID3D12StateObject) -> ULONG,
12583 >,
12584 pub GetPrivateData: ::std::option::Option<
12585 unsafe extern "C" fn(
12586 This: *mut ID3D12StateObject,
12587 guid: *const GUID,
12588 pDataSize: *mut UINT,
12589 pData: *mut ::std::os::raw::c_void,
12590 ) -> HRESULT,
12591 >,
12592 pub SetPrivateData: ::std::option::Option<
12593 unsafe extern "C" fn(
12594 This: *mut ID3D12StateObject,
12595 guid: *const GUID,
12596 DataSize: UINT,
12597 pData: *const ::std::os::raw::c_void,
12598 ) -> HRESULT,
12599 >,
12600 pub SetPrivateDataInterface: ::std::option::Option<
12601 unsafe extern "C" fn(
12602 This: *mut ID3D12StateObject,
12603 guid: *const GUID,
12604 pData: *const IUnknown,
12605 ) -> HRESULT,
12606 >,
12607 pub SetName: ::std::option::Option<
12608 unsafe extern "C" fn(
12609 This: *mut ID3D12StateObject,
12610 Name: LPCWSTR,
12611 ) -> HRESULT,
12612 >,
12613 pub GetDevice: ::std::option::Option<
12614 unsafe extern "C" fn(
12615 This: *mut ID3D12StateObject,
12616 riid: *const IID,
12617 ppvDevice: *mut *mut ::std::os::raw::c_void,
12618 ) -> HRESULT,
12619 >,
12620}
12621#[repr(C)]
12622#[derive(Debug, Copy, Clone, Hash, PartialOrd, Ord, PartialEq, Eq)]
12623pub struct ID3D12StateObject {
12624 pub lpVtbl: *mut ID3D12StateObjectVtbl,
12625}
12626impl Default for ID3D12StateObject {
12627 fn default() -> Self {
12628 let mut s = ::std::mem::MaybeUninit::<Self>::uninit();
12629 unsafe {
12630 ::std::ptr::write_bytes(s.as_mut_ptr(), 0, 1);
12631 s.assume_init()
12632 }
12633 }
12634}
12635extern "C" {
12636 pub static IID_ID3D12StateObjectProperties: IID;
12637}
12638#[repr(C)]
12639#[derive(Debug, Default, Copy, Clone, Hash, PartialOrd, Ord, PartialEq, Eq)]
12640pub struct ID3D12StateObjectPropertiesVtbl {
12641 pub QueryInterface: ::std::option::Option<
12642 unsafe extern "C" fn(
12643 This: *mut ID3D12StateObjectProperties,
12644 riid: *const IID,
12645 ppvObject: *mut *mut ::std::os::raw::c_void,
12646 ) -> HRESULT,
12647 >,
12648 pub AddRef: ::std::option::Option<
12649 unsafe extern "C" fn(This: *mut ID3D12StateObjectProperties) -> ULONG,
12650 >,
12651 pub Release: ::std::option::Option<
12652 unsafe extern "C" fn(This: *mut ID3D12StateObjectProperties) -> ULONG,
12653 >,
12654 pub GetShaderIdentifier: ::std::option::Option<
12655 unsafe extern "C" fn(
12656 This: *mut ID3D12StateObjectProperties,
12657 pExportName: LPCWSTR,
12658 ) -> *mut ::std::os::raw::c_void,
12659 >,
12660 pub GetShaderStackSize: ::std::option::Option<
12661 unsafe extern "C" fn(
12662 This: *mut ID3D12StateObjectProperties,
12663 pExportName: LPCWSTR,
12664 ) -> UINT64,
12665 >,
12666 pub GetPipelineStackSize: ::std::option::Option<
12667 unsafe extern "C" fn(This: *mut ID3D12StateObjectProperties) -> UINT64,
12668 >,
12669 pub SetPipelineStackSize: ::std::option::Option<
12670 unsafe extern "C" fn(
12671 This: *mut ID3D12StateObjectProperties,
12672 PipelineStackSizeInBytes: UINT64,
12673 ),
12674 >,
12675}
12676#[repr(C)]
12677#[derive(Debug, Copy, Clone, Hash, PartialOrd, Ord, PartialEq, Eq)]
12678pub struct ID3D12StateObjectProperties {
12679 pub lpVtbl: *mut ID3D12StateObjectPropertiesVtbl,
12680}
12681impl Default for ID3D12StateObjectProperties {
12682 fn default() -> Self {
12683 let mut s = ::std::mem::MaybeUninit::<Self>::uninit();
12684 unsafe {
12685 ::std::ptr::write_bytes(s.as_mut_ptr(), 0, 1);
12686 s.assume_init()
12687 }
12688 }
12689}
12690pub const D3D12_STATE_SUBOBJECT_TYPE_D3D12_STATE_SUBOBJECT_TYPE_STATE_OBJECT_CONFIG : D3D12_STATE_SUBOBJECT_TYPE = 0 ;
12691pub const D3D12_STATE_SUBOBJECT_TYPE_D3D12_STATE_SUBOBJECT_TYPE_GLOBAL_ROOT_SIGNATURE : D3D12_STATE_SUBOBJECT_TYPE = 1 ;
12692pub const D3D12_STATE_SUBOBJECT_TYPE_D3D12_STATE_SUBOBJECT_TYPE_LOCAL_ROOT_SIGNATURE : D3D12_STATE_SUBOBJECT_TYPE = 2 ;
12693pub const D3D12_STATE_SUBOBJECT_TYPE_D3D12_STATE_SUBOBJECT_TYPE_NODE_MASK:
12694 D3D12_STATE_SUBOBJECT_TYPE = 3;
12695pub const D3D12_STATE_SUBOBJECT_TYPE_D3D12_STATE_SUBOBJECT_TYPE_DXIL_LIBRARY:
12696 D3D12_STATE_SUBOBJECT_TYPE = 5;
12697pub const D3D12_STATE_SUBOBJECT_TYPE_D3D12_STATE_SUBOBJECT_TYPE_EXISTING_COLLECTION : D3D12_STATE_SUBOBJECT_TYPE = 6 ;
12698pub const D3D12_STATE_SUBOBJECT_TYPE_D3D12_STATE_SUBOBJECT_TYPE_SUBOBJECT_TO_EXPORTS_ASSOCIATION : D3D12_STATE_SUBOBJECT_TYPE = 7 ;
12699pub const D3D12_STATE_SUBOBJECT_TYPE_D3D12_STATE_SUBOBJECT_TYPE_DXIL_SUBOBJECT_TO_EXPORTS_ASSOCIATION : D3D12_STATE_SUBOBJECT_TYPE = 8 ;
12700pub const D3D12_STATE_SUBOBJECT_TYPE_D3D12_STATE_SUBOBJECT_TYPE_RAYTRACING_SHADER_CONFIG : D3D12_STATE_SUBOBJECT_TYPE = 9 ;
12701pub const D3D12_STATE_SUBOBJECT_TYPE_D3D12_STATE_SUBOBJECT_TYPE_RAYTRACING_PIPELINE_CONFIG : D3D12_STATE_SUBOBJECT_TYPE = 10 ;
12702pub const D3D12_STATE_SUBOBJECT_TYPE_D3D12_STATE_SUBOBJECT_TYPE_HIT_GROUP:
12703 D3D12_STATE_SUBOBJECT_TYPE = 11;
12704pub const D3D12_STATE_SUBOBJECT_TYPE_D3D12_STATE_SUBOBJECT_TYPE_RAYTRACING_PIPELINE_CONFIG1 : D3D12_STATE_SUBOBJECT_TYPE = 12 ;
12705pub const D3D12_STATE_SUBOBJECT_TYPE_D3D12_STATE_SUBOBJECT_TYPE_MAX_VALID:
12706 D3D12_STATE_SUBOBJECT_TYPE = 13;
12707pub type D3D12_STATE_SUBOBJECT_TYPE = ::std::os::raw::c_int;
12708#[repr(C)]
12709#[derive(Debug, Copy, Clone, Hash, PartialOrd, Ord, PartialEq, Eq)]
12710pub struct D3D12_STATE_SUBOBJECT {
12711 pub Type: D3D12_STATE_SUBOBJECT_TYPE,
12712 pub pDesc: *const ::std::os::raw::c_void,
12713}
12714impl Default for D3D12_STATE_SUBOBJECT {
12715 fn default() -> Self {
12716 let mut s = ::std::mem::MaybeUninit::<Self>::uninit();
12717 unsafe {
12718 ::std::ptr::write_bytes(s.as_mut_ptr(), 0, 1);
12719 s.assume_init()
12720 }
12721 }
12722}
12723pub const D3D12_STATE_OBJECT_FLAGS_D3D12_STATE_OBJECT_FLAG_NONE:
12724 D3D12_STATE_OBJECT_FLAGS = 0;
12725pub const D3D12_STATE_OBJECT_FLAGS_D3D12_STATE_OBJECT_FLAG_ALLOW_LOCAL_DEPENDENCIES_ON_EXTERNAL_DEFINITIONS : D3D12_STATE_OBJECT_FLAGS = 1 ;
12726pub const D3D12_STATE_OBJECT_FLAGS_D3D12_STATE_OBJECT_FLAG_ALLOW_EXTERNAL_DEPENDENCIES_ON_LOCAL_DEFINITIONS : D3D12_STATE_OBJECT_FLAGS = 2 ;
12727pub const D3D12_STATE_OBJECT_FLAGS_D3D12_STATE_OBJECT_FLAG_ALLOW_STATE_OBJECT_ADDITIONS : D3D12_STATE_OBJECT_FLAGS = 4 ;
12728pub type D3D12_STATE_OBJECT_FLAGS = ::std::os::raw::c_int;
12729#[repr(C)]
12730#[derive(Debug, Copy, Clone, Hash, PartialOrd, Ord, PartialEq, Eq)]
12731pub struct D3D12_STATE_OBJECT_CONFIG {
12732 pub Flags: D3D12_STATE_OBJECT_FLAGS,
12733}
12734impl Default for D3D12_STATE_OBJECT_CONFIG {
12735 fn default() -> Self {
12736 let mut s = ::std::mem::MaybeUninit::<Self>::uninit();
12737 unsafe {
12738 ::std::ptr::write_bytes(s.as_mut_ptr(), 0, 1);
12739 s.assume_init()
12740 }
12741 }
12742}
12743#[repr(C)]
12744#[derive(Debug, Copy, Clone, Hash, PartialOrd, Ord, PartialEq, Eq)]
12745pub struct D3D12_GLOBAL_ROOT_SIGNATURE {
12746 pub pGlobalRootSignature: *mut ID3D12RootSignature,
12747}
12748impl Default for D3D12_GLOBAL_ROOT_SIGNATURE {
12749 fn default() -> Self {
12750 let mut s = ::std::mem::MaybeUninit::<Self>::uninit();
12751 unsafe {
12752 ::std::ptr::write_bytes(s.as_mut_ptr(), 0, 1);
12753 s.assume_init()
12754 }
12755 }
12756}
12757#[repr(C)]
12758#[derive(Debug, Copy, Clone, Hash, PartialOrd, Ord, PartialEq, Eq)]
12759pub struct D3D12_LOCAL_ROOT_SIGNATURE {
12760 pub pLocalRootSignature: *mut ID3D12RootSignature,
12761}
12762impl Default for D3D12_LOCAL_ROOT_SIGNATURE {
12763 fn default() -> Self {
12764 let mut s = ::std::mem::MaybeUninit::<Self>::uninit();
12765 unsafe {
12766 ::std::ptr::write_bytes(s.as_mut_ptr(), 0, 1);
12767 s.assume_init()
12768 }
12769 }
12770}
12771#[repr(C)]
12772#[derive(Debug, Default, Copy, Clone, Hash, PartialOrd, Ord, PartialEq, Eq)]
12773pub struct D3D12_NODE_MASK {
12774 pub NodeMask: UINT,
12775}
12776pub const D3D12_EXPORT_FLAGS_D3D12_EXPORT_FLAG_NONE: D3D12_EXPORT_FLAGS = 0;
12777pub type D3D12_EXPORT_FLAGS = ::std::os::raw::c_int;
12778#[repr(C)]
12779#[derive(Debug, Copy, Clone, Hash, PartialOrd, Ord, PartialEq, Eq)]
12780pub struct D3D12_EXPORT_DESC {
12781 pub Name: LPCWSTR,
12782 pub ExportToRename: LPCWSTR,
12783 pub Flags: D3D12_EXPORT_FLAGS,
12784}
12785impl Default for D3D12_EXPORT_DESC {
12786 fn default() -> Self {
12787 let mut s = ::std::mem::MaybeUninit::<Self>::uninit();
12788 unsafe {
12789 ::std::ptr::write_bytes(s.as_mut_ptr(), 0, 1);
12790 s.assume_init()
12791 }
12792 }
12793}
12794#[repr(C)]
12795#[derive(Debug, Copy, Clone, Hash, PartialOrd, Ord, PartialEq, Eq)]
12796pub struct D3D12_DXIL_LIBRARY_DESC {
12797 pub DXILLibrary: D3D12_SHADER_BYTECODE,
12798 pub NumExports: UINT,
12799 pub pExports: *mut D3D12_EXPORT_DESC,
12800}
12801impl Default for D3D12_DXIL_LIBRARY_DESC {
12802 fn default() -> Self {
12803 let mut s = ::std::mem::MaybeUninit::<Self>::uninit();
12804 unsafe {
12805 ::std::ptr::write_bytes(s.as_mut_ptr(), 0, 1);
12806 s.assume_init()
12807 }
12808 }
12809}
12810#[repr(C)]
12811#[derive(Debug, Copy, Clone, Hash, PartialOrd, Ord, PartialEq, Eq)]
12812pub struct D3D12_EXISTING_COLLECTION_DESC {
12813 pub pExistingCollection: *mut ID3D12StateObject,
12814 pub NumExports: UINT,
12815 pub pExports: *mut D3D12_EXPORT_DESC,
12816}
12817impl Default for D3D12_EXISTING_COLLECTION_DESC {
12818 fn default() -> Self {
12819 let mut s = ::std::mem::MaybeUninit::<Self>::uninit();
12820 unsafe {
12821 ::std::ptr::write_bytes(s.as_mut_ptr(), 0, 1);
12822 s.assume_init()
12823 }
12824 }
12825}
12826#[repr(C)]
12827#[derive(Debug, Copy, Clone, Hash, PartialOrd, Ord, PartialEq, Eq)]
12828pub struct D3D12_SUBOBJECT_TO_EXPORTS_ASSOCIATION {
12829 pub pSubobjectToAssociate: *const D3D12_STATE_SUBOBJECT,
12830 pub NumExports: UINT,
12831 pub pExports: *mut LPCWSTR,
12832}
12833impl Default for D3D12_SUBOBJECT_TO_EXPORTS_ASSOCIATION {
12834 fn default() -> Self {
12835 let mut s = ::std::mem::MaybeUninit::<Self>::uninit();
12836 unsafe {
12837 ::std::ptr::write_bytes(s.as_mut_ptr(), 0, 1);
12838 s.assume_init()
12839 }
12840 }
12841}
12842#[repr(C)]
12843#[derive(Debug, Copy, Clone, Hash, PartialOrd, Ord, PartialEq, Eq)]
12844pub struct D3D12_DXIL_SUBOBJECT_TO_EXPORTS_ASSOCIATION {
12845 pub SubobjectToAssociate: LPCWSTR,
12846 pub NumExports: UINT,
12847 pub pExports: *mut LPCWSTR,
12848}
12849impl Default for D3D12_DXIL_SUBOBJECT_TO_EXPORTS_ASSOCIATION {
12850 fn default() -> Self {
12851 let mut s = ::std::mem::MaybeUninit::<Self>::uninit();
12852 unsafe {
12853 ::std::ptr::write_bytes(s.as_mut_ptr(), 0, 1);
12854 s.assume_init()
12855 }
12856 }
12857}
12858pub const D3D12_HIT_GROUP_TYPE_D3D12_HIT_GROUP_TYPE_TRIANGLES:
12859 D3D12_HIT_GROUP_TYPE = 0;
12860pub const D3D12_HIT_GROUP_TYPE_D3D12_HIT_GROUP_TYPE_PROCEDURAL_PRIMITIVE:
12861 D3D12_HIT_GROUP_TYPE = 1;
12862pub type D3D12_HIT_GROUP_TYPE = ::std::os::raw::c_int;
12863#[repr(C)]
12864#[derive(Debug, Copy, Clone, Hash, PartialOrd, Ord, PartialEq, Eq)]
12865pub struct D3D12_HIT_GROUP_DESC {
12866 pub HitGroupExport: LPCWSTR,
12867 pub Type: D3D12_HIT_GROUP_TYPE,
12868 pub AnyHitShaderImport: LPCWSTR,
12869 pub ClosestHitShaderImport: LPCWSTR,
12870 pub IntersectionShaderImport: LPCWSTR,
12871}
12872impl Default for D3D12_HIT_GROUP_DESC {
12873 fn default() -> Self {
12874 let mut s = ::std::mem::MaybeUninit::<Self>::uninit();
12875 unsafe {
12876 ::std::ptr::write_bytes(s.as_mut_ptr(), 0, 1);
12877 s.assume_init()
12878 }
12879 }
12880}
12881#[repr(C)]
12882#[derive(Debug, Default, Copy, Clone, Hash, PartialOrd, Ord, PartialEq, Eq)]
12883pub struct D3D12_RAYTRACING_SHADER_CONFIG {
12884 pub MaxPayloadSizeInBytes: UINT,
12885 pub MaxAttributeSizeInBytes: UINT,
12886}
12887#[repr(C)]
12888#[derive(Debug, Default, Copy, Clone, Hash, PartialOrd, Ord, PartialEq, Eq)]
12889pub struct D3D12_RAYTRACING_PIPELINE_CONFIG {
12890 pub MaxTraceRecursionDepth: UINT,
12891}
12892pub const D3D12_RAYTRACING_PIPELINE_FLAGS_D3D12_RAYTRACING_PIPELINE_FLAG_NONE : D3D12_RAYTRACING_PIPELINE_FLAGS = 0 ;
12893pub const D3D12_RAYTRACING_PIPELINE_FLAGS_D3D12_RAYTRACING_PIPELINE_FLAG_SKIP_TRIANGLES : D3D12_RAYTRACING_PIPELINE_FLAGS = 256 ;
12894pub const D3D12_RAYTRACING_PIPELINE_FLAGS_D3D12_RAYTRACING_PIPELINE_FLAG_SKIP_PROCEDURAL_PRIMITIVES : D3D12_RAYTRACING_PIPELINE_FLAGS = 512 ;
12895pub type D3D12_RAYTRACING_PIPELINE_FLAGS = ::std::os::raw::c_int;
12896#[repr(C)]
12897#[derive(Debug, Copy, Clone, Hash, PartialOrd, Ord, PartialEq, Eq)]
12898pub struct D3D12_RAYTRACING_PIPELINE_CONFIG1 {
12899 pub MaxTraceRecursionDepth: UINT,
12900 pub Flags: D3D12_RAYTRACING_PIPELINE_FLAGS,
12901}
12902impl Default for D3D12_RAYTRACING_PIPELINE_CONFIG1 {
12903 fn default() -> Self {
12904 let mut s = ::std::mem::MaybeUninit::<Self>::uninit();
12905 unsafe {
12906 ::std::ptr::write_bytes(s.as_mut_ptr(), 0, 1);
12907 s.assume_init()
12908 }
12909 }
12910}
12911pub const D3D12_STATE_OBJECT_TYPE_D3D12_STATE_OBJECT_TYPE_COLLECTION:
12912 D3D12_STATE_OBJECT_TYPE = 0;
12913pub const D3D12_STATE_OBJECT_TYPE_D3D12_STATE_OBJECT_TYPE_RAYTRACING_PIPELINE : D3D12_STATE_OBJECT_TYPE = 3 ;
12914pub type D3D12_STATE_OBJECT_TYPE = ::std::os::raw::c_int;
12915#[repr(C)]
12916#[derive(Debug, Copy, Clone, Hash, PartialOrd, Ord, PartialEq, Eq)]
12917pub struct D3D12_STATE_OBJECT_DESC {
12918 pub Type: D3D12_STATE_OBJECT_TYPE,
12919 pub NumSubobjects: UINT,
12920 pub pSubobjects: *const D3D12_STATE_SUBOBJECT,
12921}
12922impl Default for D3D12_STATE_OBJECT_DESC {
12923 fn default() -> Self {
12924 let mut s = ::std::mem::MaybeUninit::<Self>::uninit();
12925 unsafe {
12926 ::std::ptr::write_bytes(s.as_mut_ptr(), 0, 1);
12927 s.assume_init()
12928 }
12929 }
12930}
12931pub const D3D12_RAYTRACING_GEOMETRY_FLAGS_D3D12_RAYTRACING_GEOMETRY_FLAG_NONE : D3D12_RAYTRACING_GEOMETRY_FLAGS = 0 ;
12932pub const D3D12_RAYTRACING_GEOMETRY_FLAGS_D3D12_RAYTRACING_GEOMETRY_FLAG_OPAQUE : D3D12_RAYTRACING_GEOMETRY_FLAGS = 1 ;
12933pub const D3D12_RAYTRACING_GEOMETRY_FLAGS_D3D12_RAYTRACING_GEOMETRY_FLAG_NO_DUPLICATE_ANYHIT_INVOCATION : D3D12_RAYTRACING_GEOMETRY_FLAGS = 2 ;
12934pub type D3D12_RAYTRACING_GEOMETRY_FLAGS = ::std::os::raw::c_int;
12935pub const D3D12_RAYTRACING_GEOMETRY_TYPE_D3D12_RAYTRACING_GEOMETRY_TYPE_TRIANGLES : D3D12_RAYTRACING_GEOMETRY_TYPE = 0 ;
12936pub const D3D12_RAYTRACING_GEOMETRY_TYPE_D3D12_RAYTRACING_GEOMETRY_TYPE_PROCEDURAL_PRIMITIVE_AABBS : D3D12_RAYTRACING_GEOMETRY_TYPE = 1 ;
12937pub type D3D12_RAYTRACING_GEOMETRY_TYPE = ::std::os::raw::c_int;
12938pub const D3D12_RAYTRACING_INSTANCE_FLAGS_D3D12_RAYTRACING_INSTANCE_FLAG_NONE : D3D12_RAYTRACING_INSTANCE_FLAGS = 0 ;
12939pub const D3D12_RAYTRACING_INSTANCE_FLAGS_D3D12_RAYTRACING_INSTANCE_FLAG_TRIANGLE_CULL_DISABLE : D3D12_RAYTRACING_INSTANCE_FLAGS = 1 ;
12940pub const D3D12_RAYTRACING_INSTANCE_FLAGS_D3D12_RAYTRACING_INSTANCE_FLAG_TRIANGLE_FRONT_COUNTERCLOCKWISE : D3D12_RAYTRACING_INSTANCE_FLAGS = 2 ;
12941pub const D3D12_RAYTRACING_INSTANCE_FLAGS_D3D12_RAYTRACING_INSTANCE_FLAG_FORCE_OPAQUE : D3D12_RAYTRACING_INSTANCE_FLAGS = 4 ;
12942pub const D3D12_RAYTRACING_INSTANCE_FLAGS_D3D12_RAYTRACING_INSTANCE_FLAG_FORCE_NON_OPAQUE : D3D12_RAYTRACING_INSTANCE_FLAGS = 8 ;
12943pub type D3D12_RAYTRACING_INSTANCE_FLAGS = ::std::os::raw::c_int;
12944#[repr(C)]
12945#[derive(Debug, Default, Copy, Clone, Hash, PartialOrd, Ord, PartialEq, Eq)]
12946pub struct D3D12_GPU_VIRTUAL_ADDRESS_AND_STRIDE {
12947 pub StartAddress: D3D12_GPU_VIRTUAL_ADDRESS,
12948 pub StrideInBytes: UINT64,
12949}
12950#[repr(C)]
12951#[derive(Debug, Default, Copy, Clone, Hash, PartialOrd, Ord, PartialEq, Eq)]
12952pub struct D3D12_GPU_VIRTUAL_ADDRESS_RANGE {
12953 pub StartAddress: D3D12_GPU_VIRTUAL_ADDRESS,
12954 pub SizeInBytes: UINT64,
12955}
12956#[repr(C)]
12957#[derive(Debug, Default, Copy, Clone, Hash, PartialOrd, Ord, PartialEq, Eq)]
12958pub struct D3D12_GPU_VIRTUAL_ADDRESS_RANGE_AND_STRIDE {
12959 pub StartAddress: D3D12_GPU_VIRTUAL_ADDRESS,
12960 pub SizeInBytes: UINT64,
12961 pub StrideInBytes: UINT64,
12962}
12963#[repr(C)]
12964#[derive(Debug, Copy, Clone, Hash, PartialOrd, Ord, PartialEq, Eq)]
12965pub struct D3D12_RAYTRACING_GEOMETRY_TRIANGLES_DESC {
12966 pub Transform3x4: D3D12_GPU_VIRTUAL_ADDRESS,
12967 pub IndexFormat: DXGI_FORMAT,
12968 pub VertexFormat: DXGI_FORMAT,
12969 pub IndexCount: UINT,
12970 pub VertexCount: UINT,
12971 pub IndexBuffer: D3D12_GPU_VIRTUAL_ADDRESS,
12972 pub VertexBuffer: D3D12_GPU_VIRTUAL_ADDRESS_AND_STRIDE,
12973}
12974impl Default for D3D12_RAYTRACING_GEOMETRY_TRIANGLES_DESC {
12975 fn default() -> Self {
12976 let mut s = ::std::mem::MaybeUninit::<Self>::uninit();
12977 unsafe {
12978 ::std::ptr::write_bytes(s.as_mut_ptr(), 0, 1);
12979 s.assume_init()
12980 }
12981 }
12982}
12983#[repr(C)]
12984#[derive(Debug, Default, Copy, Clone, PartialOrd, PartialEq)]
12985pub struct D3D12_RAYTRACING_AABB {
12986 pub MinX: FLOAT,
12987 pub MinY: FLOAT,
12988 pub MinZ: FLOAT,
12989 pub MaxX: FLOAT,
12990 pub MaxY: FLOAT,
12991 pub MaxZ: FLOAT,
12992}
12993#[repr(C)]
12994#[derive(Debug, Default, Copy, Clone, Hash, PartialOrd, Ord, PartialEq, Eq)]
12995pub struct D3D12_RAYTRACING_GEOMETRY_AABBS_DESC {
12996 pub AABBCount: UINT64,
12997 pub AABBs: D3D12_GPU_VIRTUAL_ADDRESS_AND_STRIDE,
12998}
12999pub const D3D12_RAYTRACING_ACCELERATION_STRUCTURE_BUILD_FLAGS_D3D12_RAYTRACING_ACCELERATION_STRUCTURE_BUILD_FLAG_NONE : D3D12_RAYTRACING_ACCELERATION_STRUCTURE_BUILD_FLAGS = 0 ;
13000pub const D3D12_RAYTRACING_ACCELERATION_STRUCTURE_BUILD_FLAGS_D3D12_RAYTRACING_ACCELERATION_STRUCTURE_BUILD_FLAG_ALLOW_UPDATE : D3D12_RAYTRACING_ACCELERATION_STRUCTURE_BUILD_FLAGS = 1 ;
13001pub const D3D12_RAYTRACING_ACCELERATION_STRUCTURE_BUILD_FLAGS_D3D12_RAYTRACING_ACCELERATION_STRUCTURE_BUILD_FLAG_ALLOW_COMPACTION : D3D12_RAYTRACING_ACCELERATION_STRUCTURE_BUILD_FLAGS = 2 ;
13002pub const D3D12_RAYTRACING_ACCELERATION_STRUCTURE_BUILD_FLAGS_D3D12_RAYTRACING_ACCELERATION_STRUCTURE_BUILD_FLAG_PREFER_FAST_TRACE : D3D12_RAYTRACING_ACCELERATION_STRUCTURE_BUILD_FLAGS = 4 ;
13003pub const D3D12_RAYTRACING_ACCELERATION_STRUCTURE_BUILD_FLAGS_D3D12_RAYTRACING_ACCELERATION_STRUCTURE_BUILD_FLAG_PREFER_FAST_BUILD : D3D12_RAYTRACING_ACCELERATION_STRUCTURE_BUILD_FLAGS = 8 ;
13004pub const D3D12_RAYTRACING_ACCELERATION_STRUCTURE_BUILD_FLAGS_D3D12_RAYTRACING_ACCELERATION_STRUCTURE_BUILD_FLAG_MINIMIZE_MEMORY : D3D12_RAYTRACING_ACCELERATION_STRUCTURE_BUILD_FLAGS = 16 ;
13005pub const D3D12_RAYTRACING_ACCELERATION_STRUCTURE_BUILD_FLAGS_D3D12_RAYTRACING_ACCELERATION_STRUCTURE_BUILD_FLAG_PERFORM_UPDATE : D3D12_RAYTRACING_ACCELERATION_STRUCTURE_BUILD_FLAGS = 32 ;
13006pub type D3D12_RAYTRACING_ACCELERATION_STRUCTURE_BUILD_FLAGS =
13007 ::std::os::raw::c_int;
13008pub const D3D12_RAYTRACING_ACCELERATION_STRUCTURE_COPY_MODE_D3D12_RAYTRACING_ACCELERATION_STRUCTURE_COPY_MODE_CLONE : D3D12_RAYTRACING_ACCELERATION_STRUCTURE_COPY_MODE = 0 ;
13009pub const D3D12_RAYTRACING_ACCELERATION_STRUCTURE_COPY_MODE_D3D12_RAYTRACING_ACCELERATION_STRUCTURE_COPY_MODE_COMPACT : D3D12_RAYTRACING_ACCELERATION_STRUCTURE_COPY_MODE = 1 ;
13010pub const D3D12_RAYTRACING_ACCELERATION_STRUCTURE_COPY_MODE_D3D12_RAYTRACING_ACCELERATION_STRUCTURE_COPY_MODE_VISUALIZATION_DECODE_FOR_TOOLS : D3D12_RAYTRACING_ACCELERATION_STRUCTURE_COPY_MODE = 2 ;
13011pub const D3D12_RAYTRACING_ACCELERATION_STRUCTURE_COPY_MODE_D3D12_RAYTRACING_ACCELERATION_STRUCTURE_COPY_MODE_SERIALIZE : D3D12_RAYTRACING_ACCELERATION_STRUCTURE_COPY_MODE = 3 ;
13012pub const D3D12_RAYTRACING_ACCELERATION_STRUCTURE_COPY_MODE_D3D12_RAYTRACING_ACCELERATION_STRUCTURE_COPY_MODE_DESERIALIZE : D3D12_RAYTRACING_ACCELERATION_STRUCTURE_COPY_MODE = 4 ;
13013pub type D3D12_RAYTRACING_ACCELERATION_STRUCTURE_COPY_MODE =
13014 ::std::os::raw::c_int;
13015pub const D3D12_RAYTRACING_ACCELERATION_STRUCTURE_TYPE_D3D12_RAYTRACING_ACCELERATION_STRUCTURE_TYPE_TOP_LEVEL : D3D12_RAYTRACING_ACCELERATION_STRUCTURE_TYPE = 0 ;
13016pub const D3D12_RAYTRACING_ACCELERATION_STRUCTURE_TYPE_D3D12_RAYTRACING_ACCELERATION_STRUCTURE_TYPE_BOTTOM_LEVEL : D3D12_RAYTRACING_ACCELERATION_STRUCTURE_TYPE = 1 ;
13017pub type D3D12_RAYTRACING_ACCELERATION_STRUCTURE_TYPE = ::std::os::raw::c_int;
13018pub const D3D12_ELEMENTS_LAYOUT_D3D12_ELEMENTS_LAYOUT_ARRAY:
13019 D3D12_ELEMENTS_LAYOUT = 0;
13020pub const D3D12_ELEMENTS_LAYOUT_D3D12_ELEMENTS_LAYOUT_ARRAY_OF_POINTERS:
13021 D3D12_ELEMENTS_LAYOUT = 1;
13022pub type D3D12_ELEMENTS_LAYOUT = ::std::os::raw::c_int;
13023pub const D3D12_RAYTRACING_ACCELERATION_STRUCTURE_POSTBUILD_INFO_TYPE_D3D12_RAYTRACING_ACCELERATION_STRUCTURE_POSTBUILD_INFO_COMPACTED_SIZE : D3D12_RAYTRACING_ACCELERATION_STRUCTURE_POSTBUILD_INFO_TYPE = 0 ;
13024pub const D3D12_RAYTRACING_ACCELERATION_STRUCTURE_POSTBUILD_INFO_TYPE_D3D12_RAYTRACING_ACCELERATION_STRUCTURE_POSTBUILD_INFO_TOOLS_VISUALIZATION : D3D12_RAYTRACING_ACCELERATION_STRUCTURE_POSTBUILD_INFO_TYPE = 1 ;
13025pub const D3D12_RAYTRACING_ACCELERATION_STRUCTURE_POSTBUILD_INFO_TYPE_D3D12_RAYTRACING_ACCELERATION_STRUCTURE_POSTBUILD_INFO_SERIALIZATION : D3D12_RAYTRACING_ACCELERATION_STRUCTURE_POSTBUILD_INFO_TYPE = 2 ;
13026pub const D3D12_RAYTRACING_ACCELERATION_STRUCTURE_POSTBUILD_INFO_TYPE_D3D12_RAYTRACING_ACCELERATION_STRUCTURE_POSTBUILD_INFO_CURRENT_SIZE : D3D12_RAYTRACING_ACCELERATION_STRUCTURE_POSTBUILD_INFO_TYPE = 3 ;
13027pub type D3D12_RAYTRACING_ACCELERATION_STRUCTURE_POSTBUILD_INFO_TYPE =
13028 ::std::os::raw::c_int;
13029#[repr(C)]
13030#[derive(Debug, Copy, Clone, Hash, PartialOrd, Ord, PartialEq, Eq)]
13031pub struct D3D12_RAYTRACING_ACCELERATION_STRUCTURE_POSTBUILD_INFO_DESC {
13032 pub DestBuffer: D3D12_GPU_VIRTUAL_ADDRESS,
13033 pub InfoType: D3D12_RAYTRACING_ACCELERATION_STRUCTURE_POSTBUILD_INFO_TYPE,
13034}
13035impl Default for D3D12_RAYTRACING_ACCELERATION_STRUCTURE_POSTBUILD_INFO_DESC {
13036 fn default() -> Self {
13037 let mut s = ::std::mem::MaybeUninit::<Self>::uninit();
13038 unsafe {
13039 ::std::ptr::write_bytes(s.as_mut_ptr(), 0, 1);
13040 s.assume_init()
13041 }
13042 }
13043}
13044#[repr(C)]
13045#[derive(Debug, Default, Copy, Clone, Hash, PartialOrd, Ord, PartialEq, Eq)]
13046pub struct D3D12_RAYTRACING_ACCELERATION_STRUCTURE_POSTBUILD_INFO_COMPACTED_SIZE_DESC
13047{
13048 pub CompactedSizeInBytes: UINT64,
13049}
13050#[repr(C)]
13051#[derive(Debug, Default, Copy, Clone, Hash, PartialOrd, Ord, PartialEq, Eq)]
13052pub struct D3D12_RAYTRACING_ACCELERATION_STRUCTURE_POSTBUILD_INFO_TOOLS_VISUALIZATION_DESC
13053{
13054 pub DecodedSizeInBytes: UINT64,
13055}
13056#[repr(C)]
13057#[derive(Debug, Copy, Clone, Hash, PartialOrd, Ord, PartialEq, Eq)]
13058pub struct D3D12_BUILD_RAYTRACING_ACCELERATION_STRUCTURE_TOOLS_VISUALIZATION_HEADER
13059{
13060 pub Type: D3D12_RAYTRACING_ACCELERATION_STRUCTURE_TYPE,
13061 pub NumDescs: UINT,
13062}
13063impl Default
13064 for D3D12_BUILD_RAYTRACING_ACCELERATION_STRUCTURE_TOOLS_VISUALIZATION_HEADER
13065{
13066 fn default() -> Self {
13067 let mut s = ::std::mem::MaybeUninit::<Self>::uninit();
13068 unsafe {
13069 ::std::ptr::write_bytes(s.as_mut_ptr(), 0, 1);
13070 s.assume_init()
13071 }
13072 }
13073}
13074#[repr(C)]
13075#[derive(Debug, Default, Copy, Clone, Hash, PartialOrd, Ord, PartialEq, Eq)]
13076pub struct D3D12_RAYTRACING_ACCELERATION_STRUCTURE_POSTBUILD_INFO_SERIALIZATION_DESC
13077{
13078 pub SerializedSizeInBytes: UINT64,
13079 pub NumBottomLevelAccelerationStructurePointers: UINT64,
13080}
13081#[repr(C)]
13082#[derive(Debug, Default, Copy, Clone, Hash, PartialOrd, Ord, PartialEq, Eq)]
13083pub struct D3D12_SERIALIZED_DATA_DRIVER_MATCHING_IDENTIFIER {
13084 pub DriverOpaqueGUID: GUID,
13085 pub DriverOpaqueVersioningData: [BYTE; 16usize],
13086}
13087pub const D3D12_SERIALIZED_DATA_TYPE_D3D12_SERIALIZED_DATA_RAYTRACING_ACCELERATION_STRUCTURE : D3D12_SERIALIZED_DATA_TYPE = 0 ;
13088pub type D3D12_SERIALIZED_DATA_TYPE = ::std::os::raw::c_int;
13089pub const D3D12_DRIVER_MATCHING_IDENTIFIER_STATUS_D3D12_DRIVER_MATCHING_IDENTIFIER_COMPATIBLE_WITH_DEVICE : D3D12_DRIVER_MATCHING_IDENTIFIER_STATUS = 0 ;
13090pub const D3D12_DRIVER_MATCHING_IDENTIFIER_STATUS_D3D12_DRIVER_MATCHING_IDENTIFIER_UNSUPPORTED_TYPE : D3D12_DRIVER_MATCHING_IDENTIFIER_STATUS = 1 ;
13091pub const D3D12_DRIVER_MATCHING_IDENTIFIER_STATUS_D3D12_DRIVER_MATCHING_IDENTIFIER_UNRECOGNIZED : D3D12_DRIVER_MATCHING_IDENTIFIER_STATUS = 2 ;
13092pub const D3D12_DRIVER_MATCHING_IDENTIFIER_STATUS_D3D12_DRIVER_MATCHING_IDENTIFIER_INCOMPATIBLE_VERSION : D3D12_DRIVER_MATCHING_IDENTIFIER_STATUS = 3 ;
13093pub const D3D12_DRIVER_MATCHING_IDENTIFIER_STATUS_D3D12_DRIVER_MATCHING_IDENTIFIER_INCOMPATIBLE_TYPE : D3D12_DRIVER_MATCHING_IDENTIFIER_STATUS = 4 ;
13094pub type D3D12_DRIVER_MATCHING_IDENTIFIER_STATUS = ::std::os::raw::c_int;
13095#[repr(C)]
13096#[derive(Debug, Default, Copy, Clone, Hash, PartialOrd, Ord, PartialEq, Eq)]
13097pub struct D3D12_SERIALIZED_RAYTRACING_ACCELERATION_STRUCTURE_HEADER {
13098 pub DriverMatchingIdentifier:
13099 D3D12_SERIALIZED_DATA_DRIVER_MATCHING_IDENTIFIER,
13100 pub SerializedSizeInBytesIncludingHeader: UINT64,
13101 pub DeserializedSizeInBytes: UINT64,
13102 pub NumBottomLevelAccelerationStructurePointersAfterHeader: UINT64,
13103}
13104#[repr(C)]
13105#[derive(Debug, Default, Copy, Clone, Hash, PartialOrd, Ord, PartialEq, Eq)]
13106pub struct D3D12_RAYTRACING_ACCELERATION_STRUCTURE_POSTBUILD_INFO_CURRENT_SIZE_DESC
13107{
13108 pub CurrentSizeInBytes: UINT64,
13109}
13110#[repr(C)]
13111#[derive(Debug, Default, Copy, Clone, PartialOrd, PartialEq)]
13112pub struct D3D12_RAYTRACING_INSTANCE_DESC {
13113 pub Transform: [[FLOAT; 4usize]; 3usize],
13114 pub _bitfield_align_1: [u32; 0],
13115 pub _bitfield_1: __BindgenBitfieldUnit<[u8; 8usize]>,
13116 pub AccelerationStructure: D3D12_GPU_VIRTUAL_ADDRESS,
13117}
13118impl D3D12_RAYTRACING_INSTANCE_DESC {
13119 #[inline]
13120 pub fn InstanceID(&self) -> UINT {
13121 unsafe {
13122 ::std::mem::transmute(self._bitfield_1.get(0usize, 24u8) as u32)
13123 }
13124 }
13125 #[inline]
13126 pub fn set_InstanceID(&mut self, val: UINT) {
13127 unsafe {
13128 let val: u32 = ::std::mem::transmute(val);
13129 self._bitfield_1.set(0usize, 24u8, val as u64)
13130 }
13131 }
13132 #[inline]
13133 pub fn InstanceMask(&self) -> UINT {
13134 unsafe {
13135 ::std::mem::transmute(self._bitfield_1.get(24usize, 8u8) as u32)
13136 }
13137 }
13138 #[inline]
13139 pub fn set_InstanceMask(&mut self, val: UINT) {
13140 unsafe {
13141 let val: u32 = ::std::mem::transmute(val);
13142 self._bitfield_1.set(24usize, 8u8, val as u64)
13143 }
13144 }
13145 #[inline]
13146 pub fn InstanceContributionToHitGroupIndex(&self) -> UINT {
13147 unsafe {
13148 ::std::mem::transmute(self._bitfield_1.get(32usize, 24u8) as u32)
13149 }
13150 }
13151 #[inline]
13152 pub fn set_InstanceContributionToHitGroupIndex(&mut self, val: UINT) {
13153 unsafe {
13154 let val: u32 = ::std::mem::transmute(val);
13155 self._bitfield_1.set(32usize, 24u8, val as u64)
13156 }
13157 }
13158 #[inline]
13159 pub fn Flags(&self) -> UINT {
13160 unsafe {
13161 ::std::mem::transmute(self._bitfield_1.get(56usize, 8u8) as u32)
13162 }
13163 }
13164 #[inline]
13165 pub fn set_Flags(&mut self, val: UINT) {
13166 unsafe {
13167 let val: u32 = ::std::mem::transmute(val);
13168 self._bitfield_1.set(56usize, 8u8, val as u64)
13169 }
13170 }
13171 #[inline]
13172 pub fn new_bitfield_1(
13173 InstanceID: UINT,
13174 InstanceMask: UINT,
13175 InstanceContributionToHitGroupIndex: UINT,
13176 Flags: UINT,
13177 ) -> __BindgenBitfieldUnit<[u8; 8usize]> {
13178 let mut __bindgen_bitfield_unit: __BindgenBitfieldUnit<[u8; 8usize]> =
13179 Default::default();
13180 __bindgen_bitfield_unit.set(0usize, 24u8, {
13181 let InstanceID: u32 = unsafe { ::std::mem::transmute(InstanceID) };
13182 InstanceID as u64
13183 });
13184 __bindgen_bitfield_unit.set(24usize, 8u8, {
13185 let InstanceMask: u32 =
13186 unsafe { ::std::mem::transmute(InstanceMask) };
13187 InstanceMask as u64
13188 });
13189 __bindgen_bitfield_unit.set(32usize, 24u8, {
13190 let InstanceContributionToHitGroupIndex: u32 = unsafe {
13191 ::std::mem::transmute(InstanceContributionToHitGroupIndex)
13192 };
13193 InstanceContributionToHitGroupIndex as u64
13194 });
13195 __bindgen_bitfield_unit.set(56usize, 8u8, {
13196 let Flags: u32 = unsafe { ::std::mem::transmute(Flags) };
13197 Flags as u64
13198 });
13199 __bindgen_bitfield_unit
13200 }
13201}
13202#[repr(C)]
13203#[derive(Copy, Clone)]
13204pub struct D3D12_RAYTRACING_GEOMETRY_DESC {
13205 pub Type: D3D12_RAYTRACING_GEOMETRY_TYPE,
13206 pub Flags: D3D12_RAYTRACING_GEOMETRY_FLAGS,
13207 pub __bindgen_anon_1: D3D12_RAYTRACING_GEOMETRY_DESC__bindgen_ty_1,
13208}
13209#[repr(C)]
13210#[derive(Copy, Clone)]
13211pub union D3D12_RAYTRACING_GEOMETRY_DESC__bindgen_ty_1 {
13212 pub Triangles: D3D12_RAYTRACING_GEOMETRY_TRIANGLES_DESC,
13213 pub AABBs: D3D12_RAYTRACING_GEOMETRY_AABBS_DESC,
13214}
13215impl Default for D3D12_RAYTRACING_GEOMETRY_DESC__bindgen_ty_1 {
13216 fn default() -> Self {
13217 let mut s = ::std::mem::MaybeUninit::<Self>::uninit();
13218 unsafe {
13219 ::std::ptr::write_bytes(s.as_mut_ptr(), 0, 1);
13220 s.assume_init()
13221 }
13222 }
13223}
13224impl ::std::fmt::Debug for D3D12_RAYTRACING_GEOMETRY_DESC__bindgen_ty_1 {
13225 fn fmt(&self, f: &mut ::std::fmt::Formatter<'_>) -> ::std::fmt::Result {
13226 write!(
13227 f,
13228 "D3D12_RAYTRACING_GEOMETRY_DESC__bindgen_ty_1 {{ union }}"
13229 )
13230 }
13231}
13232impl Default for D3D12_RAYTRACING_GEOMETRY_DESC {
13233 fn default() -> Self {
13234 let mut s = ::std::mem::MaybeUninit::<Self>::uninit();
13235 unsafe {
13236 ::std::ptr::write_bytes(s.as_mut_ptr(), 0, 1);
13237 s.assume_init()
13238 }
13239 }
13240}
13241impl ::std::fmt::Debug for D3D12_RAYTRACING_GEOMETRY_DESC {
13242 fn fmt(&self, f: &mut ::std::fmt::Formatter<'_>) -> ::std::fmt::Result {
13243 write ! (f , "D3D12_RAYTRACING_GEOMETRY_DESC {{ Type: {:?}, Flags: {:?}, __bindgen_anon_1: {:?} }}" , self . Type , self . Flags , self . __bindgen_anon_1)
13244 }
13245}
13246#[repr(C)]
13247#[derive(Copy, Clone)]
13248pub struct D3D12_BUILD_RAYTRACING_ACCELERATION_STRUCTURE_INPUTS {
13249 pub Type: D3D12_RAYTRACING_ACCELERATION_STRUCTURE_TYPE,
13250 pub Flags: D3D12_RAYTRACING_ACCELERATION_STRUCTURE_BUILD_FLAGS,
13251 pub NumDescs: UINT,
13252 pub DescsLayout: D3D12_ELEMENTS_LAYOUT,
13253 pub __bindgen_anon_1:
13254 D3D12_BUILD_RAYTRACING_ACCELERATION_STRUCTURE_INPUTS__bindgen_ty_1,
13255}
13256#[repr(C)]
13257#[derive(Copy, Clone)]
13258pub union D3D12_BUILD_RAYTRACING_ACCELERATION_STRUCTURE_INPUTS__bindgen_ty_1 {
13259 pub InstanceDescs: D3D12_GPU_VIRTUAL_ADDRESS,
13260 pub pGeometryDescs: *const D3D12_RAYTRACING_GEOMETRY_DESC,
13261 pub ppGeometryDescs: *const *const D3D12_RAYTRACING_GEOMETRY_DESC,
13262}
13263impl Default
13264 for D3D12_BUILD_RAYTRACING_ACCELERATION_STRUCTURE_INPUTS__bindgen_ty_1
13265{
13266 fn default() -> Self {
13267 let mut s = ::std::mem::MaybeUninit::<Self>::uninit();
13268 unsafe {
13269 ::std::ptr::write_bytes(s.as_mut_ptr(), 0, 1);
13270 s.assume_init()
13271 }
13272 }
13273}
13274impl ::std::fmt::Debug
13275 for D3D12_BUILD_RAYTRACING_ACCELERATION_STRUCTURE_INPUTS__bindgen_ty_1
13276{
13277 fn fmt(&self, f: &mut ::std::fmt::Formatter<'_>) -> ::std::fmt::Result {
13278 write ! (f , "D3D12_BUILD_RAYTRACING_ACCELERATION_STRUCTURE_INPUTS__bindgen_ty_1 {{ union }}")
13279 }
13280}
13281impl Default for D3D12_BUILD_RAYTRACING_ACCELERATION_STRUCTURE_INPUTS {
13282 fn default() -> Self {
13283 let mut s = ::std::mem::MaybeUninit::<Self>::uninit();
13284 unsafe {
13285 ::std::ptr::write_bytes(s.as_mut_ptr(), 0, 1);
13286 s.assume_init()
13287 }
13288 }
13289}
13290impl ::std::fmt::Debug
13291 for D3D12_BUILD_RAYTRACING_ACCELERATION_STRUCTURE_INPUTS
13292{
13293 fn fmt(&self, f: &mut ::std::fmt::Formatter<'_>) -> ::std::fmt::Result {
13294 write ! (f , "D3D12_BUILD_RAYTRACING_ACCELERATION_STRUCTURE_INPUTS {{ Type: {:?}, Flags: {:?}, NumDescs: {:?}, DescsLayout: {:?}, __bindgen_anon_1: {:?} }}" , self . Type , self . Flags , self . NumDescs , self . DescsLayout , self . __bindgen_anon_1)
13295 }
13296}
13297#[repr(C)]
13298#[derive(Copy, Clone)]
13299pub struct D3D12_BUILD_RAYTRACING_ACCELERATION_STRUCTURE_DESC {
13300 pub DestAccelerationStructureData: D3D12_GPU_VIRTUAL_ADDRESS,
13301 pub Inputs: D3D12_BUILD_RAYTRACING_ACCELERATION_STRUCTURE_INPUTS,
13302 pub SourceAccelerationStructureData: D3D12_GPU_VIRTUAL_ADDRESS,
13303 pub ScratchAccelerationStructureData: D3D12_GPU_VIRTUAL_ADDRESS,
13304}
13305impl Default for D3D12_BUILD_RAYTRACING_ACCELERATION_STRUCTURE_DESC {
13306 fn default() -> Self {
13307 let mut s = ::std::mem::MaybeUninit::<Self>::uninit();
13308 unsafe {
13309 ::std::ptr::write_bytes(s.as_mut_ptr(), 0, 1);
13310 s.assume_init()
13311 }
13312 }
13313}
13314impl ::std::fmt::Debug for D3D12_BUILD_RAYTRACING_ACCELERATION_STRUCTURE_DESC {
13315 fn fmt(&self, f: &mut ::std::fmt::Formatter<'_>) -> ::std::fmt::Result {
13316 write ! (f , "D3D12_BUILD_RAYTRACING_ACCELERATION_STRUCTURE_DESC {{ DestAccelerationStructureData: {:?}, Inputs: {:?}, SourceAccelerationStructureData: {:?}, ScratchAccelerationStructureData: {:?} }}" , self . DestAccelerationStructureData , self . Inputs , self . SourceAccelerationStructureData , self . ScratchAccelerationStructureData)
13317 }
13318}
13319#[repr(C)]
13320#[derive(Debug, Default, Copy, Clone, Hash, PartialOrd, Ord, PartialEq, Eq)]
13321pub struct D3D12_RAYTRACING_ACCELERATION_STRUCTURE_PREBUILD_INFO {
13322 pub ResultDataMaxSizeInBytes: UINT64,
13323 pub ScratchDataSizeInBytes: UINT64,
13324 pub UpdateScratchDataSizeInBytes: UINT64,
13325}
13326pub const D3D12_RAY_FLAGS_D3D12_RAY_FLAG_NONE: D3D12_RAY_FLAGS = 0;
13327pub const D3D12_RAY_FLAGS_D3D12_RAY_FLAG_FORCE_OPAQUE: D3D12_RAY_FLAGS = 1;
13328pub const D3D12_RAY_FLAGS_D3D12_RAY_FLAG_FORCE_NON_OPAQUE: D3D12_RAY_FLAGS = 2;
13329pub const D3D12_RAY_FLAGS_D3D12_RAY_FLAG_ACCEPT_FIRST_HIT_AND_END_SEARCH:
13330 D3D12_RAY_FLAGS = 4;
13331pub const D3D12_RAY_FLAGS_D3D12_RAY_FLAG_SKIP_CLOSEST_HIT_SHADER:
13332 D3D12_RAY_FLAGS = 8;
13333pub const D3D12_RAY_FLAGS_D3D12_RAY_FLAG_CULL_BACK_FACING_TRIANGLES:
13334 D3D12_RAY_FLAGS = 16;
13335pub const D3D12_RAY_FLAGS_D3D12_RAY_FLAG_CULL_FRONT_FACING_TRIANGLES:
13336 D3D12_RAY_FLAGS = 32;
13337pub const D3D12_RAY_FLAGS_D3D12_RAY_FLAG_CULL_OPAQUE: D3D12_RAY_FLAGS = 64;
13338pub const D3D12_RAY_FLAGS_D3D12_RAY_FLAG_CULL_NON_OPAQUE: D3D12_RAY_FLAGS = 128;
13339pub const D3D12_RAY_FLAGS_D3D12_RAY_FLAG_SKIP_TRIANGLES: D3D12_RAY_FLAGS = 256;
13340pub const D3D12_RAY_FLAGS_D3D12_RAY_FLAG_SKIP_PROCEDURAL_PRIMITIVES:
13341 D3D12_RAY_FLAGS = 512;
13342pub type D3D12_RAY_FLAGS = ::std::os::raw::c_int;
13343pub const D3D12_HIT_KIND_D3D12_HIT_KIND_TRIANGLE_FRONT_FACE: D3D12_HIT_KIND =
13344 254;
13345pub const D3D12_HIT_KIND_D3D12_HIT_KIND_TRIANGLE_BACK_FACE: D3D12_HIT_KIND =
13346 255;
13347pub type D3D12_HIT_KIND = ::std::os::raw::c_int;
13348extern "C" {
13349 pub static IID_ID3D12Device5: IID;
13350}
13351#[repr(C)]
13352#[derive(Debug, Default, Copy, Clone, Hash, PartialOrd, Ord, PartialEq, Eq)]
13353pub struct ID3D12Device5Vtbl { pub QueryInterface : :: std :: option :: Option < unsafe extern "C" fn (This : * mut ID3D12Device5 , riid : * const IID , ppvObject : * mut * mut :: std :: os :: raw :: c_void) -> HRESULT > , pub AddRef : :: std :: option :: Option < unsafe extern "C" fn (This : * mut ID3D12Device5) -> ULONG > , pub Release : :: std :: option :: Option < unsafe extern "C" fn (This : * mut ID3D12Device5) -> ULONG > , pub GetPrivateData : :: std :: option :: Option < unsafe extern "C" fn (This : * mut ID3D12Device5 , guid : * const GUID , pDataSize : * mut UINT , pData : * mut :: std :: os :: raw :: c_void) -> HRESULT > , pub SetPrivateData : :: std :: option :: Option < unsafe extern "C" fn (This : * mut ID3D12Device5 , guid : * const GUID , DataSize : UINT , pData : * const :: std :: os :: raw :: c_void) -> HRESULT > , pub SetPrivateDataInterface : :: std :: option :: Option < unsafe extern "C" fn (This : * mut ID3D12Device5 , guid : * const GUID , pData : * const IUnknown) -> HRESULT > , pub SetName : :: std :: option :: Option < unsafe extern "C" fn (This : * mut ID3D12Device5 , Name : LPCWSTR) -> HRESULT > , pub GetNodeCount : :: std :: option :: Option < unsafe extern "C" fn (This : * mut ID3D12Device5) -> UINT > , pub CreateCommandQueue : :: std :: option :: Option < unsafe extern "C" fn (This : * mut ID3D12Device5 , pDesc : * const D3D12_COMMAND_QUEUE_DESC , riid : * const IID , ppCommandQueue : * mut * mut :: std :: os :: raw :: c_void) -> HRESULT > , pub CreateCommandAllocator : :: std :: option :: Option < unsafe extern "C" fn (This : * mut ID3D12Device5 , type_ : D3D12_COMMAND_LIST_TYPE , riid : * const IID , ppCommandAllocator : * mut * mut :: std :: os :: raw :: c_void) -> HRESULT > , pub CreateGraphicsPipelineState : :: std :: option :: Option < unsafe extern "C" fn (This : * mut ID3D12Device5 , pDesc : * const D3D12_GRAPHICS_PIPELINE_STATE_DESC , riid : * const IID , ppPipelineState : * mut * mut :: std :: os :: raw :: c_void) -> HRESULT > , pub CreateComputePipelineState : :: std :: option :: Option < unsafe extern "C" fn (This : * mut ID3D12Device5 , pDesc : * const D3D12_COMPUTE_PIPELINE_STATE_DESC , riid : * const IID , ppPipelineState : * mut * mut :: std :: os :: raw :: c_void) -> HRESULT > , pub CreateCommandList : :: std :: option :: Option < unsafe extern "C" fn (This : * mut ID3D12Device5 , nodeMask : UINT , type_ : D3D12_COMMAND_LIST_TYPE , pCommandAllocator : * mut ID3D12CommandAllocator , pInitialState : * mut ID3D12PipelineState , riid : * const IID , ppCommandList : * mut * mut :: std :: os :: raw :: c_void) -> HRESULT > , pub CheckFeatureSupport : :: std :: option :: Option < unsafe extern "C" fn (This : * mut ID3D12Device5 , Feature : D3D12_FEATURE , pFeatureSupportData : * mut :: std :: os :: raw :: c_void , FeatureSupportDataSize : UINT) -> HRESULT > , pub CreateDescriptorHeap : :: std :: option :: Option < unsafe extern "C" fn (This : * mut ID3D12Device5 , pDescriptorHeapDesc : * const D3D12_DESCRIPTOR_HEAP_DESC , riid : * const IID , ppvHeap : * mut * mut :: std :: os :: raw :: c_void) -> HRESULT > , pub GetDescriptorHandleIncrementSize : :: std :: option :: Option < unsafe extern "C" fn (This : * mut ID3D12Device5 , DescriptorHeapType : D3D12_DESCRIPTOR_HEAP_TYPE) -> UINT > , pub CreateRootSignature : :: std :: option :: Option < unsafe extern "C" fn (This : * mut ID3D12Device5 , nodeMask : UINT , pBlobWithRootSignature : * const :: std :: os :: raw :: c_void , blobLengthInBytes : SIZE_T , riid : * const IID , ppvRootSignature : * mut * mut :: std :: os :: raw :: c_void) -> HRESULT > , pub CreateConstantBufferView : :: std :: option :: Option < unsafe extern "C" fn (This : * mut ID3D12Device5 , pDesc : * const D3D12_CONSTANT_BUFFER_VIEW_DESC , DestDescriptor : D3D12_CPU_DESCRIPTOR_HANDLE) > , pub CreateShaderResourceView : :: std :: option :: Option < unsafe extern "C" fn (This : * mut ID3D12Device5 , pResource : * mut ID3D12Resource , pDesc : * const D3D12_SHADER_RESOURCE_VIEW_DESC , DestDescriptor : D3D12_CPU_DESCRIPTOR_HANDLE) > , pub CreateUnorderedAccessView : :: std :: option :: Option < unsafe extern "C" fn (This : * mut ID3D12Device5 , pResource : * mut ID3D12Resource , pCounterResource : * mut ID3D12Resource , pDesc : * const D3D12_UNORDERED_ACCESS_VIEW_DESC , DestDescriptor : D3D12_CPU_DESCRIPTOR_HANDLE) > , pub CreateRenderTargetView : :: std :: option :: Option < unsafe extern "C" fn (This : * mut ID3D12Device5 , pResource : * mut ID3D12Resource , pDesc : * const D3D12_RENDER_TARGET_VIEW_DESC , DestDescriptor : D3D12_CPU_DESCRIPTOR_HANDLE) > , pub CreateDepthStencilView : :: std :: option :: Option < unsafe extern "C" fn (This : * mut ID3D12Device5 , pResource : * mut ID3D12Resource , pDesc : * const D3D12_DEPTH_STENCIL_VIEW_DESC , DestDescriptor : D3D12_CPU_DESCRIPTOR_HANDLE) > , pub CreateSampler : :: std :: option :: Option < unsafe extern "C" fn (This : * mut ID3D12Device5 , pDesc : * const D3D12_SAMPLER_DESC , DestDescriptor : D3D12_CPU_DESCRIPTOR_HANDLE) > , pub CopyDescriptors : :: std :: option :: Option < unsafe extern "C" fn (This : * mut ID3D12Device5 , NumDestDescriptorRanges : UINT , pDestDescriptorRangeStarts : * const D3D12_CPU_DESCRIPTOR_HANDLE , pDestDescriptorRangeSizes : * const UINT , NumSrcDescriptorRanges : UINT , pSrcDescriptorRangeStarts : * const D3D12_CPU_DESCRIPTOR_HANDLE , pSrcDescriptorRangeSizes : * const UINT , DescriptorHeapsType : D3D12_DESCRIPTOR_HEAP_TYPE) > , pub CopyDescriptorsSimple : :: std :: option :: Option < unsafe extern "C" fn (This : * mut ID3D12Device5 , NumDescriptors : UINT , DestDescriptorRangeStart : D3D12_CPU_DESCRIPTOR_HANDLE , SrcDescriptorRangeStart : D3D12_CPU_DESCRIPTOR_HANDLE , DescriptorHeapsType : D3D12_DESCRIPTOR_HEAP_TYPE) > , pub GetResourceAllocationInfo : :: std :: option :: Option < unsafe extern "C" fn (This : * mut ID3D12Device5 , RetVal : * mut D3D12_RESOURCE_ALLOCATION_INFO , visibleMask : UINT , numResourceDescs : UINT , pResourceDescs : * const D3D12_RESOURCE_DESC) -> * mut D3D12_RESOURCE_ALLOCATION_INFO > , pub GetCustomHeapProperties : :: std :: option :: Option < unsafe extern "C" fn (This : * mut ID3D12Device5 , RetVal : * mut D3D12_HEAP_PROPERTIES , nodeMask : UINT , heapType : D3D12_HEAP_TYPE) -> * mut D3D12_HEAP_PROPERTIES > , pub CreateCommittedResource : :: std :: option :: Option < unsafe extern "C" fn (This : * mut ID3D12Device5 , pHeapProperties : * const D3D12_HEAP_PROPERTIES , HeapFlags : D3D12_HEAP_FLAGS , pDesc : * const D3D12_RESOURCE_DESC , InitialResourceState : D3D12_RESOURCE_STATES , pOptimizedClearValue : * const D3D12_CLEAR_VALUE , riidResource : * const IID , ppvResource : * mut * mut :: std :: os :: raw :: c_void) -> HRESULT > , pub CreateHeap : :: std :: option :: Option < unsafe extern "C" fn (This : * mut ID3D12Device5 , pDesc : * const D3D12_HEAP_DESC , riid : * const IID , ppvHeap : * mut * mut :: std :: os :: raw :: c_void) -> HRESULT > , pub CreatePlacedResource : :: std :: option :: Option < unsafe extern "C" fn (This : * mut ID3D12Device5 , pHeap : * mut ID3D12Heap , HeapOffset : UINT64 , pDesc : * const D3D12_RESOURCE_DESC , InitialState : D3D12_RESOURCE_STATES , pOptimizedClearValue : * const D3D12_CLEAR_VALUE , riid : * const IID , ppvResource : * mut * mut :: std :: os :: raw :: c_void) -> HRESULT > , pub CreateReservedResource : :: std :: option :: Option < unsafe extern "C" fn (This : * mut ID3D12Device5 , pDesc : * const D3D12_RESOURCE_DESC , InitialState : D3D12_RESOURCE_STATES , pOptimizedClearValue : * const D3D12_CLEAR_VALUE , riid : * const IID , ppvResource : * mut * mut :: std :: os :: raw :: c_void) -> HRESULT > , pub CreateSharedHandle : :: std :: option :: Option < unsafe extern "C" fn (This : * mut ID3D12Device5 , pObject : * mut ID3D12DeviceChild , pAttributes : * const SECURITY_ATTRIBUTES , Access : DWORD , Name : LPCWSTR , pHandle : * mut HANDLE) -> HRESULT > , pub OpenSharedHandle : :: std :: option :: Option < unsafe extern "C" fn (This : * mut ID3D12Device5 , NTHandle : HANDLE , riid : * const IID , ppvObj : * mut * mut :: std :: os :: raw :: c_void) -> HRESULT > , pub OpenSharedHandleByName : :: std :: option :: Option < unsafe extern "C" fn (This : * mut ID3D12Device5 , Name : LPCWSTR , Access : DWORD , pNTHandle : * mut HANDLE) -> HRESULT > , pub MakeResident : :: std :: option :: Option < unsafe extern "C" fn (This : * mut ID3D12Device5 , NumObjects : UINT , ppObjects : * const * mut ID3D12Pageable) -> HRESULT > , pub Evict : :: std :: option :: Option < unsafe extern "C" fn (This : * mut ID3D12Device5 , NumObjects : UINT , ppObjects : * const * mut ID3D12Pageable) -> HRESULT > , pub CreateFence : :: std :: option :: Option < unsafe extern "C" fn (This : * mut ID3D12Device5 , InitialValue : UINT64 , Flags : D3D12_FENCE_FLAGS , riid : * const IID , ppFence : * mut * mut :: std :: os :: raw :: c_void) -> HRESULT > , pub GetDeviceRemovedReason : :: std :: option :: Option < unsafe extern "C" fn (This : * mut ID3D12Device5) -> HRESULT > , pub GetCopyableFootprints : :: std :: option :: Option < unsafe extern "C" fn (This : * mut ID3D12Device5 , pResourceDesc : * const D3D12_RESOURCE_DESC , FirstSubresource : UINT , NumSubresources : UINT , BaseOffset : UINT64 , pLayouts : * mut D3D12_PLACED_SUBRESOURCE_FOOTPRINT , pNumRows : * mut UINT , pRowSizeInBytes : * mut UINT64 , pTotalBytes : * mut UINT64) > , pub CreateQueryHeap : :: std :: option :: Option < unsafe extern "C" fn (This : * mut ID3D12Device5 , pDesc : * const D3D12_QUERY_HEAP_DESC , riid : * const IID , ppvHeap : * mut * mut :: std :: os :: raw :: c_void) -> HRESULT > , pub SetStablePowerState : :: std :: option :: Option < unsafe extern "C" fn (This : * mut ID3D12Device5 , Enable : BOOL) -> HRESULT > , pub CreateCommandSignature : :: std :: option :: Option < unsafe extern "C" fn (This : * mut ID3D12Device5 , pDesc : * const D3D12_COMMAND_SIGNATURE_DESC , pRootSignature : * mut ID3D12RootSignature , riid : * const IID , ppvCommandSignature : * mut * mut :: std :: os :: raw :: c_void) -> HRESULT > , pub GetResourceTiling : :: std :: option :: Option < unsafe extern "C" fn (This : * mut ID3D12Device5 , pTiledResource : * mut ID3D12Resource , pNumTilesForEntireResource : * mut UINT , pPackedMipDesc : * mut D3D12_PACKED_MIP_INFO , pStandardTileShapeForNonPackedMips : * mut D3D12_TILE_SHAPE , pNumSubresourceTilings : * mut UINT , FirstSubresourceTilingToGet : UINT , pSubresourceTilingsForNonPackedMips : * mut D3D12_SUBRESOURCE_TILING) > , pub GetAdapterLuid : :: std :: option :: Option < unsafe extern "C" fn (This : * mut ID3D12Device5 , RetVal : * mut LUID) -> * mut LUID > , pub CreatePipelineLibrary : :: std :: option :: Option < unsafe extern "C" fn (This : * mut ID3D12Device5 , pLibraryBlob : * const :: std :: os :: raw :: c_void , BlobLength : SIZE_T , riid : * const IID , ppPipelineLibrary : * mut * mut :: std :: os :: raw :: c_void) -> HRESULT > , pub SetEventOnMultipleFenceCompletion : :: std :: option :: Option < unsafe extern "C" fn (This : * mut ID3D12Device5 , ppFences : * const * mut ID3D12Fence , pFenceValues : * const UINT64 , NumFences : UINT , Flags : D3D12_MULTIPLE_FENCE_WAIT_FLAGS , hEvent : HANDLE) -> HRESULT > , pub SetResidencyPriority : :: std :: option :: Option < unsafe extern "C" fn (This : * mut ID3D12Device5 , NumObjects : UINT , ppObjects : * const * mut ID3D12Pageable , pPriorities : * const D3D12_RESIDENCY_PRIORITY) -> HRESULT > , pub CreatePipelineState : :: std :: option :: Option < unsafe extern "C" fn (This : * mut ID3D12Device5 , pDesc : * const D3D12_PIPELINE_STATE_STREAM_DESC , riid : * const IID , ppPipelineState : * mut * mut :: std :: os :: raw :: c_void) -> HRESULT > , pub OpenExistingHeapFromAddress : :: std :: option :: Option < unsafe extern "C" fn (This : * mut ID3D12Device5 , pAddress : * const :: std :: os :: raw :: c_void , riid : * const IID , ppvHeap : * mut * mut :: std :: os :: raw :: c_void) -> HRESULT > , pub OpenExistingHeapFromFileMapping : :: std :: option :: Option < unsafe extern "C" fn (This : * mut ID3D12Device5 , hFileMapping : HANDLE , riid : * const IID , ppvHeap : * mut * mut :: std :: os :: raw :: c_void) -> HRESULT > , pub EnqueueMakeResident : :: std :: option :: Option < unsafe extern "C" fn (This : * mut ID3D12Device5 , Flags : D3D12_RESIDENCY_FLAGS , NumObjects : UINT , ppObjects : * const * mut ID3D12Pageable , pFenceToSignal : * mut ID3D12Fence , FenceValueToSignal : UINT64) -> HRESULT > , pub CreateCommandList1 : :: std :: option :: Option < unsafe extern "C" fn (This : * mut ID3D12Device5 , nodeMask : UINT , type_ : D3D12_COMMAND_LIST_TYPE , flags : D3D12_COMMAND_LIST_FLAGS , riid : * const IID , ppCommandList : * mut * mut :: std :: os :: raw :: c_void) -> HRESULT > , pub CreateProtectedResourceSession : :: std :: option :: Option < unsafe extern "C" fn (This : * mut ID3D12Device5 , pDesc : * const D3D12_PROTECTED_RESOURCE_SESSION_DESC , riid : * const IID , ppSession : * mut * mut :: std :: os :: raw :: c_void) -> HRESULT > , pub CreateCommittedResource1 : :: std :: option :: Option < unsafe extern "C" fn (This : * mut ID3D12Device5 , pHeapProperties : * const D3D12_HEAP_PROPERTIES , HeapFlags : D3D12_HEAP_FLAGS , pDesc : * const D3D12_RESOURCE_DESC , InitialResourceState : D3D12_RESOURCE_STATES , pOptimizedClearValue : * const D3D12_CLEAR_VALUE , pProtectedSession : * mut ID3D12ProtectedResourceSession , riidResource : * const IID , ppvResource : * mut * mut :: std :: os :: raw :: c_void) -> HRESULT > , pub CreateHeap1 : :: std :: option :: Option < unsafe extern "C" fn (This : * mut ID3D12Device5 , pDesc : * const D3D12_HEAP_DESC , pProtectedSession : * mut ID3D12ProtectedResourceSession , riid : * const IID , ppvHeap : * mut * mut :: std :: os :: raw :: c_void) -> HRESULT > , pub CreateReservedResource1 : :: std :: option :: Option < unsafe extern "C" fn (This : * mut ID3D12Device5 , pDesc : * const D3D12_RESOURCE_DESC , InitialState : D3D12_RESOURCE_STATES , pOptimizedClearValue : * const D3D12_CLEAR_VALUE , pProtectedSession : * mut ID3D12ProtectedResourceSession , riid : * const IID , ppvResource : * mut * mut :: std :: os :: raw :: c_void) -> HRESULT > , pub GetResourceAllocationInfo1 : :: std :: option :: Option < unsafe extern "C" fn (This : * mut ID3D12Device5 , RetVal : * mut D3D12_RESOURCE_ALLOCATION_INFO , visibleMask : UINT , numResourceDescs : UINT , pResourceDescs : * const D3D12_RESOURCE_DESC , pResourceAllocationInfo1 : * mut D3D12_RESOURCE_ALLOCATION_INFO1) -> * mut D3D12_RESOURCE_ALLOCATION_INFO > , pub CreateLifetimeTracker : :: std :: option :: Option < unsafe extern "C" fn (This : * mut ID3D12Device5 , pOwner : * mut ID3D12LifetimeOwner , riid : * const IID , ppvTracker : * mut * mut :: std :: os :: raw :: c_void) -> HRESULT > , pub RemoveDevice : :: std :: option :: Option < unsafe extern "C" fn (This : * mut ID3D12Device5) > , pub EnumerateMetaCommands : :: std :: option :: Option < unsafe extern "C" fn (This : * mut ID3D12Device5 , pNumMetaCommands : * mut UINT , pDescs : * mut D3D12_META_COMMAND_DESC) -> HRESULT > , pub EnumerateMetaCommandParameters : :: std :: option :: Option < unsafe extern "C" fn (This : * mut ID3D12Device5 , CommandId : * const GUID , Stage : D3D12_META_COMMAND_PARAMETER_STAGE , pTotalStructureSizeInBytes : * mut UINT , pParameterCount : * mut UINT , pParameterDescs : * mut D3D12_META_COMMAND_PARAMETER_DESC) -> HRESULT > , pub CreateMetaCommand : :: std :: option :: Option < unsafe extern "C" fn (This : * mut ID3D12Device5 , CommandId : * const GUID , NodeMask : UINT , pCreationParametersData : * const :: std :: os :: raw :: c_void , CreationParametersDataSizeInBytes : SIZE_T , riid : * const IID , ppMetaCommand : * mut * mut :: std :: os :: raw :: c_void) -> HRESULT > , pub CreateStateObject : :: std :: option :: Option < unsafe extern "C" fn (This : * mut ID3D12Device5 , pDesc : * const D3D12_STATE_OBJECT_DESC , riid : * const IID , ppStateObject : * mut * mut :: std :: os :: raw :: c_void) -> HRESULT > , pub GetRaytracingAccelerationStructurePrebuildInfo : :: std :: option :: Option < unsafe extern "C" fn (This : * mut ID3D12Device5 , pDesc : * const D3D12_BUILD_RAYTRACING_ACCELERATION_STRUCTURE_INPUTS , pInfo : * mut D3D12_RAYTRACING_ACCELERATION_STRUCTURE_PREBUILD_INFO) > , pub CheckDriverMatchingIdentifier : :: std :: option :: Option < unsafe extern "C" fn (This : * mut ID3D12Device5 , SerializedDataType : D3D12_SERIALIZED_DATA_TYPE , pIdentifierToCheck : * const D3D12_SERIALIZED_DATA_DRIVER_MATCHING_IDENTIFIER) -> D3D12_DRIVER_MATCHING_IDENTIFIER_STATUS > , }
13354#[repr(C)]
13355#[derive(Debug, Copy, Clone, Hash, PartialOrd, Ord, PartialEq, Eq)]
13356pub struct ID3D12Device5 {
13357 pub lpVtbl: *mut ID3D12Device5Vtbl,
13358}
13359impl Default for ID3D12Device5 {
13360 fn default() -> Self {
13361 let mut s = ::std::mem::MaybeUninit::<Self>::uninit();
13362 unsafe {
13363 ::std::ptr::write_bytes(s.as_mut_ptr(), 0, 1);
13364 s.assume_init()
13365 }
13366 }
13367}
13368pub const D3D12_AUTO_BREADCRUMB_OP_D3D12_AUTO_BREADCRUMB_OP_SETMARKER:
13369 D3D12_AUTO_BREADCRUMB_OP = 0;
13370pub const D3D12_AUTO_BREADCRUMB_OP_D3D12_AUTO_BREADCRUMB_OP_BEGINEVENT:
13371 D3D12_AUTO_BREADCRUMB_OP = 1;
13372pub const D3D12_AUTO_BREADCRUMB_OP_D3D12_AUTO_BREADCRUMB_OP_ENDEVENT:
13373 D3D12_AUTO_BREADCRUMB_OP = 2;
13374pub const D3D12_AUTO_BREADCRUMB_OP_D3D12_AUTO_BREADCRUMB_OP_DRAWINSTANCED:
13375 D3D12_AUTO_BREADCRUMB_OP = 3;
13376pub const D3D12_AUTO_BREADCRUMB_OP_D3D12_AUTO_BREADCRUMB_OP_DRAWINDEXEDINSTANCED : D3D12_AUTO_BREADCRUMB_OP = 4 ;
13377pub const D3D12_AUTO_BREADCRUMB_OP_D3D12_AUTO_BREADCRUMB_OP_EXECUTEINDIRECT:
13378 D3D12_AUTO_BREADCRUMB_OP = 5;
13379pub const D3D12_AUTO_BREADCRUMB_OP_D3D12_AUTO_BREADCRUMB_OP_DISPATCH:
13380 D3D12_AUTO_BREADCRUMB_OP = 6;
13381pub const D3D12_AUTO_BREADCRUMB_OP_D3D12_AUTO_BREADCRUMB_OP_COPYBUFFERREGION:
13382 D3D12_AUTO_BREADCRUMB_OP = 7;
13383pub const D3D12_AUTO_BREADCRUMB_OP_D3D12_AUTO_BREADCRUMB_OP_COPYTEXTUREREGION : D3D12_AUTO_BREADCRUMB_OP = 8 ;
13384pub const D3D12_AUTO_BREADCRUMB_OP_D3D12_AUTO_BREADCRUMB_OP_COPYRESOURCE:
13385 D3D12_AUTO_BREADCRUMB_OP = 9;
13386pub const D3D12_AUTO_BREADCRUMB_OP_D3D12_AUTO_BREADCRUMB_OP_COPYTILES:
13387 D3D12_AUTO_BREADCRUMB_OP = 10;
13388pub const D3D12_AUTO_BREADCRUMB_OP_D3D12_AUTO_BREADCRUMB_OP_RESOLVESUBRESOURCE : D3D12_AUTO_BREADCRUMB_OP = 11 ;
13389pub const D3D12_AUTO_BREADCRUMB_OP_D3D12_AUTO_BREADCRUMB_OP_CLEARRENDERTARGETVIEW : D3D12_AUTO_BREADCRUMB_OP = 12 ;
13390pub const D3D12_AUTO_BREADCRUMB_OP_D3D12_AUTO_BREADCRUMB_OP_CLEARUNORDEREDACCESSVIEW : D3D12_AUTO_BREADCRUMB_OP = 13 ;
13391pub const D3D12_AUTO_BREADCRUMB_OP_D3D12_AUTO_BREADCRUMB_OP_CLEARDEPTHSTENCILVIEW : D3D12_AUTO_BREADCRUMB_OP = 14 ;
13392pub const D3D12_AUTO_BREADCRUMB_OP_D3D12_AUTO_BREADCRUMB_OP_RESOURCEBARRIER:
13393 D3D12_AUTO_BREADCRUMB_OP = 15;
13394pub const D3D12_AUTO_BREADCRUMB_OP_D3D12_AUTO_BREADCRUMB_OP_EXECUTEBUNDLE:
13395 D3D12_AUTO_BREADCRUMB_OP = 16;
13396pub const D3D12_AUTO_BREADCRUMB_OP_D3D12_AUTO_BREADCRUMB_OP_PRESENT:
13397 D3D12_AUTO_BREADCRUMB_OP = 17;
13398pub const D3D12_AUTO_BREADCRUMB_OP_D3D12_AUTO_BREADCRUMB_OP_RESOLVEQUERYDATA:
13399 D3D12_AUTO_BREADCRUMB_OP = 18;
13400pub const D3D12_AUTO_BREADCRUMB_OP_D3D12_AUTO_BREADCRUMB_OP_BEGINSUBMISSION:
13401 D3D12_AUTO_BREADCRUMB_OP = 19;
13402pub const D3D12_AUTO_BREADCRUMB_OP_D3D12_AUTO_BREADCRUMB_OP_ENDSUBMISSION:
13403 D3D12_AUTO_BREADCRUMB_OP = 20;
13404pub const D3D12_AUTO_BREADCRUMB_OP_D3D12_AUTO_BREADCRUMB_OP_DECODEFRAME:
13405 D3D12_AUTO_BREADCRUMB_OP = 21;
13406pub const D3D12_AUTO_BREADCRUMB_OP_D3D12_AUTO_BREADCRUMB_OP_PROCESSFRAMES:
13407 D3D12_AUTO_BREADCRUMB_OP = 22;
13408pub const D3D12_AUTO_BREADCRUMB_OP_D3D12_AUTO_BREADCRUMB_OP_ATOMICCOPYBUFFERUINT : D3D12_AUTO_BREADCRUMB_OP = 23 ;
13409pub const D3D12_AUTO_BREADCRUMB_OP_D3D12_AUTO_BREADCRUMB_OP_ATOMICCOPYBUFFERUINT64 : D3D12_AUTO_BREADCRUMB_OP = 24 ;
13410pub const D3D12_AUTO_BREADCRUMB_OP_D3D12_AUTO_BREADCRUMB_OP_RESOLVESUBRESOURCEREGION : D3D12_AUTO_BREADCRUMB_OP = 25 ;
13411pub const D3D12_AUTO_BREADCRUMB_OP_D3D12_AUTO_BREADCRUMB_OP_WRITEBUFFERIMMEDIATE : D3D12_AUTO_BREADCRUMB_OP = 26 ;
13412pub const D3D12_AUTO_BREADCRUMB_OP_D3D12_AUTO_BREADCRUMB_OP_DECODEFRAME1:
13413 D3D12_AUTO_BREADCRUMB_OP = 27;
13414pub const D3D12_AUTO_BREADCRUMB_OP_D3D12_AUTO_BREADCRUMB_OP_SETPROTECTEDRESOURCESESSION : D3D12_AUTO_BREADCRUMB_OP = 28 ;
13415pub const D3D12_AUTO_BREADCRUMB_OP_D3D12_AUTO_BREADCRUMB_OP_DECODEFRAME2:
13416 D3D12_AUTO_BREADCRUMB_OP = 29;
13417pub const D3D12_AUTO_BREADCRUMB_OP_D3D12_AUTO_BREADCRUMB_OP_PROCESSFRAMES1:
13418 D3D12_AUTO_BREADCRUMB_OP = 30;
13419pub const D3D12_AUTO_BREADCRUMB_OP_D3D12_AUTO_BREADCRUMB_OP_BUILDRAYTRACINGACCELERATIONSTRUCTURE : D3D12_AUTO_BREADCRUMB_OP = 31 ;
13420pub const D3D12_AUTO_BREADCRUMB_OP_D3D12_AUTO_BREADCRUMB_OP_EMITRAYTRACINGACCELERATIONSTRUCTUREPOSTBUILDINFO : D3D12_AUTO_BREADCRUMB_OP = 32 ;
13421pub const D3D12_AUTO_BREADCRUMB_OP_D3D12_AUTO_BREADCRUMB_OP_COPYRAYTRACINGACCELERATIONSTRUCTURE : D3D12_AUTO_BREADCRUMB_OP = 33 ;
13422pub const D3D12_AUTO_BREADCRUMB_OP_D3D12_AUTO_BREADCRUMB_OP_DISPATCHRAYS:
13423 D3D12_AUTO_BREADCRUMB_OP = 34;
13424pub const D3D12_AUTO_BREADCRUMB_OP_D3D12_AUTO_BREADCRUMB_OP_INITIALIZEMETACOMMAND : D3D12_AUTO_BREADCRUMB_OP = 35 ;
13425pub const D3D12_AUTO_BREADCRUMB_OP_D3D12_AUTO_BREADCRUMB_OP_EXECUTEMETACOMMAND : D3D12_AUTO_BREADCRUMB_OP = 36 ;
13426pub const D3D12_AUTO_BREADCRUMB_OP_D3D12_AUTO_BREADCRUMB_OP_ESTIMATEMOTION:
13427 D3D12_AUTO_BREADCRUMB_OP = 37;
13428pub const D3D12_AUTO_BREADCRUMB_OP_D3D12_AUTO_BREADCRUMB_OP_RESOLVEMOTIONVECTORHEAP : D3D12_AUTO_BREADCRUMB_OP = 38 ;
13429pub const D3D12_AUTO_BREADCRUMB_OP_D3D12_AUTO_BREADCRUMB_OP_SETPIPELINESTATE1 : D3D12_AUTO_BREADCRUMB_OP = 39 ;
13430pub const D3D12_AUTO_BREADCRUMB_OP_D3D12_AUTO_BREADCRUMB_OP_INITIALIZEEXTENSIONCOMMAND : D3D12_AUTO_BREADCRUMB_OP = 40 ;
13431pub const D3D12_AUTO_BREADCRUMB_OP_D3D12_AUTO_BREADCRUMB_OP_EXECUTEEXTENSIONCOMMAND : D3D12_AUTO_BREADCRUMB_OP = 41 ;
13432pub const D3D12_AUTO_BREADCRUMB_OP_D3D12_AUTO_BREADCRUMB_OP_DISPATCHMESH:
13433 D3D12_AUTO_BREADCRUMB_OP = 42;
13434pub const D3D12_AUTO_BREADCRUMB_OP_D3D12_AUTO_BREADCRUMB_OP_ENCODEFRAME:
13435 D3D12_AUTO_BREADCRUMB_OP = 43;
13436pub const D3D12_AUTO_BREADCRUMB_OP_D3D12_AUTO_BREADCRUMB_OP_RESOLVEENCODEROUTPUTMETADATA : D3D12_AUTO_BREADCRUMB_OP = 44 ;
13437pub type D3D12_AUTO_BREADCRUMB_OP = ::std::os::raw::c_int;
13438#[repr(C)]
13439#[derive(Debug, Copy, Clone, Hash, PartialOrd, Ord, PartialEq, Eq)]
13440pub struct D3D12_AUTO_BREADCRUMB_NODE {
13441 pub pCommandListDebugNameA: *const ::std::os::raw::c_char,
13442 pub pCommandListDebugNameW: *const wchar_t,
13443 pub pCommandQueueDebugNameA: *const ::std::os::raw::c_char,
13444 pub pCommandQueueDebugNameW: *const wchar_t,
13445 pub pCommandList: *mut ID3D12GraphicsCommandList,
13446 pub pCommandQueue: *mut ID3D12CommandQueue,
13447 pub BreadcrumbCount: UINT32,
13448 pub pLastBreadcrumbValue: *const UINT32,
13449 pub pCommandHistory: *const D3D12_AUTO_BREADCRUMB_OP,
13450 pub pNext: *const D3D12_AUTO_BREADCRUMB_NODE,
13451}
13452impl Default for D3D12_AUTO_BREADCRUMB_NODE {
13453 fn default() -> Self {
13454 let mut s = ::std::mem::MaybeUninit::<Self>::uninit();
13455 unsafe {
13456 ::std::ptr::write_bytes(s.as_mut_ptr(), 0, 1);
13457 s.assume_init()
13458 }
13459 }
13460}
13461#[repr(C)]
13462#[derive(Debug, Copy, Clone, Hash, PartialOrd, Ord, PartialEq, Eq)]
13463pub struct D3D12_DRED_BREADCRUMB_CONTEXT {
13464 pub BreadcrumbIndex: UINT,
13465 pub pContextString: *const wchar_t,
13466}
13467impl Default for D3D12_DRED_BREADCRUMB_CONTEXT {
13468 fn default() -> Self {
13469 let mut s = ::std::mem::MaybeUninit::<Self>::uninit();
13470 unsafe {
13471 ::std::ptr::write_bytes(s.as_mut_ptr(), 0, 1);
13472 s.assume_init()
13473 }
13474 }
13475}
13476#[repr(C)]
13477#[derive(Debug, Copy, Clone, Hash, PartialOrd, Ord, PartialEq, Eq)]
13478pub struct D3D12_AUTO_BREADCRUMB_NODE1 {
13479 pub pCommandListDebugNameA: *const ::std::os::raw::c_char,
13480 pub pCommandListDebugNameW: *const wchar_t,
13481 pub pCommandQueueDebugNameA: *const ::std::os::raw::c_char,
13482 pub pCommandQueueDebugNameW: *const wchar_t,
13483 pub pCommandList: *mut ID3D12GraphicsCommandList,
13484 pub pCommandQueue: *mut ID3D12CommandQueue,
13485 pub BreadcrumbCount: UINT,
13486 pub pLastBreadcrumbValue: *const UINT,
13487 pub pCommandHistory: *const D3D12_AUTO_BREADCRUMB_OP,
13488 pub pNext: *const D3D12_AUTO_BREADCRUMB_NODE1,
13489 pub BreadcrumbContextsCount: UINT,
13490 pub pBreadcrumbContexts: *mut D3D12_DRED_BREADCRUMB_CONTEXT,
13491}
13492impl Default for D3D12_AUTO_BREADCRUMB_NODE1 {
13493 fn default() -> Self {
13494 let mut s = ::std::mem::MaybeUninit::<Self>::uninit();
13495 unsafe {
13496 ::std::ptr::write_bytes(s.as_mut_ptr(), 0, 1);
13497 s.assume_init()
13498 }
13499 }
13500}
13501pub const D3D12_DRED_VERSION_D3D12_DRED_VERSION_1_0: D3D12_DRED_VERSION = 1;
13502pub const D3D12_DRED_VERSION_D3D12_DRED_VERSION_1_1: D3D12_DRED_VERSION = 2;
13503pub const D3D12_DRED_VERSION_D3D12_DRED_VERSION_1_2: D3D12_DRED_VERSION = 3;
13504pub const D3D12_DRED_VERSION_D3D12_DRED_VERSION_1_3: D3D12_DRED_VERSION = 4;
13505pub type D3D12_DRED_VERSION = ::std::os::raw::c_int;
13506pub const D3D12_DRED_FLAGS_D3D12_DRED_FLAG_NONE: D3D12_DRED_FLAGS = 0;
13507pub const D3D12_DRED_FLAGS_D3D12_DRED_FLAG_FORCE_ENABLE: D3D12_DRED_FLAGS = 1;
13508pub const D3D12_DRED_FLAGS_D3D12_DRED_FLAG_DISABLE_AUTOBREADCRUMBS:
13509 D3D12_DRED_FLAGS = 2;
13510pub type D3D12_DRED_FLAGS = ::std::os::raw::c_int;
13511pub const D3D12_DRED_ENABLEMENT_D3D12_DRED_ENABLEMENT_SYSTEM_CONTROLLED:
13512 D3D12_DRED_ENABLEMENT = 0;
13513pub const D3D12_DRED_ENABLEMENT_D3D12_DRED_ENABLEMENT_FORCED_OFF:
13514 D3D12_DRED_ENABLEMENT = 1;
13515pub const D3D12_DRED_ENABLEMENT_D3D12_DRED_ENABLEMENT_FORCED_ON:
13516 D3D12_DRED_ENABLEMENT = 2;
13517pub type D3D12_DRED_ENABLEMENT = ::std::os::raw::c_int;
13518#[repr(C)]
13519#[derive(Debug, Copy, Clone, Hash, PartialOrd, Ord, PartialEq, Eq)]
13520pub struct D3D12_DEVICE_REMOVED_EXTENDED_DATA {
13521 pub Flags: D3D12_DRED_FLAGS,
13522 pub pHeadAutoBreadcrumbNode: *mut D3D12_AUTO_BREADCRUMB_NODE,
13523}
13524impl Default for D3D12_DEVICE_REMOVED_EXTENDED_DATA {
13525 fn default() -> Self {
13526 let mut s = ::std::mem::MaybeUninit::<Self>::uninit();
13527 unsafe {
13528 ::std::ptr::write_bytes(s.as_mut_ptr(), 0, 1);
13529 s.assume_init()
13530 }
13531 }
13532}
13533pub const D3D12_DRED_ALLOCATION_TYPE_D3D12_DRED_ALLOCATION_TYPE_COMMAND_QUEUE : D3D12_DRED_ALLOCATION_TYPE = 19 ;
13534pub const D3D12_DRED_ALLOCATION_TYPE_D3D12_DRED_ALLOCATION_TYPE_COMMAND_ALLOCATOR : D3D12_DRED_ALLOCATION_TYPE = 20 ;
13535pub const D3D12_DRED_ALLOCATION_TYPE_D3D12_DRED_ALLOCATION_TYPE_PIPELINE_STATE : D3D12_DRED_ALLOCATION_TYPE = 21 ;
13536pub const D3D12_DRED_ALLOCATION_TYPE_D3D12_DRED_ALLOCATION_TYPE_COMMAND_LIST:
13537 D3D12_DRED_ALLOCATION_TYPE = 22;
13538pub const D3D12_DRED_ALLOCATION_TYPE_D3D12_DRED_ALLOCATION_TYPE_FENCE:
13539 D3D12_DRED_ALLOCATION_TYPE = 23;
13540pub const D3D12_DRED_ALLOCATION_TYPE_D3D12_DRED_ALLOCATION_TYPE_DESCRIPTOR_HEAP : D3D12_DRED_ALLOCATION_TYPE = 24 ;
13541pub const D3D12_DRED_ALLOCATION_TYPE_D3D12_DRED_ALLOCATION_TYPE_HEAP:
13542 D3D12_DRED_ALLOCATION_TYPE = 25;
13543pub const D3D12_DRED_ALLOCATION_TYPE_D3D12_DRED_ALLOCATION_TYPE_QUERY_HEAP:
13544 D3D12_DRED_ALLOCATION_TYPE = 27;
13545pub const D3D12_DRED_ALLOCATION_TYPE_D3D12_DRED_ALLOCATION_TYPE_COMMAND_SIGNATURE : D3D12_DRED_ALLOCATION_TYPE = 28 ;
13546pub const D3D12_DRED_ALLOCATION_TYPE_D3D12_DRED_ALLOCATION_TYPE_PIPELINE_LIBRARY : D3D12_DRED_ALLOCATION_TYPE = 29 ;
13547pub const D3D12_DRED_ALLOCATION_TYPE_D3D12_DRED_ALLOCATION_TYPE_VIDEO_DECODER : D3D12_DRED_ALLOCATION_TYPE = 30 ;
13548pub const D3D12_DRED_ALLOCATION_TYPE_D3D12_DRED_ALLOCATION_TYPE_VIDEO_PROCESSOR : D3D12_DRED_ALLOCATION_TYPE = 32 ;
13549pub const D3D12_DRED_ALLOCATION_TYPE_D3D12_DRED_ALLOCATION_TYPE_RESOURCE:
13550 D3D12_DRED_ALLOCATION_TYPE = 34;
13551pub const D3D12_DRED_ALLOCATION_TYPE_D3D12_DRED_ALLOCATION_TYPE_PASS:
13552 D3D12_DRED_ALLOCATION_TYPE = 35;
13553pub const D3D12_DRED_ALLOCATION_TYPE_D3D12_DRED_ALLOCATION_TYPE_CRYPTOSESSION : D3D12_DRED_ALLOCATION_TYPE = 36 ;
13554pub const D3D12_DRED_ALLOCATION_TYPE_D3D12_DRED_ALLOCATION_TYPE_CRYPTOSESSIONPOLICY : D3D12_DRED_ALLOCATION_TYPE = 37 ;
13555pub const D3D12_DRED_ALLOCATION_TYPE_D3D12_DRED_ALLOCATION_TYPE_PROTECTEDRESOURCESESSION : D3D12_DRED_ALLOCATION_TYPE = 38 ;
13556pub const D3D12_DRED_ALLOCATION_TYPE_D3D12_DRED_ALLOCATION_TYPE_VIDEO_DECODER_HEAP : D3D12_DRED_ALLOCATION_TYPE = 39 ;
13557pub const D3D12_DRED_ALLOCATION_TYPE_D3D12_DRED_ALLOCATION_TYPE_COMMAND_POOL:
13558 D3D12_DRED_ALLOCATION_TYPE = 40;
13559pub const D3D12_DRED_ALLOCATION_TYPE_D3D12_DRED_ALLOCATION_TYPE_COMMAND_RECORDER : D3D12_DRED_ALLOCATION_TYPE = 41 ;
13560pub const D3D12_DRED_ALLOCATION_TYPE_D3D12_DRED_ALLOCATION_TYPE_STATE_OBJECT:
13561 D3D12_DRED_ALLOCATION_TYPE = 42;
13562pub const D3D12_DRED_ALLOCATION_TYPE_D3D12_DRED_ALLOCATION_TYPE_METACOMMAND:
13563 D3D12_DRED_ALLOCATION_TYPE = 43;
13564pub const D3D12_DRED_ALLOCATION_TYPE_D3D12_DRED_ALLOCATION_TYPE_SCHEDULINGGROUP : D3D12_DRED_ALLOCATION_TYPE = 44 ;
13565pub const D3D12_DRED_ALLOCATION_TYPE_D3D12_DRED_ALLOCATION_TYPE_VIDEO_MOTION_ESTIMATOR : D3D12_DRED_ALLOCATION_TYPE = 45 ;
13566pub const D3D12_DRED_ALLOCATION_TYPE_D3D12_DRED_ALLOCATION_TYPE_VIDEO_MOTION_VECTOR_HEAP : D3D12_DRED_ALLOCATION_TYPE = 46 ;
13567pub const D3D12_DRED_ALLOCATION_TYPE_D3D12_DRED_ALLOCATION_TYPE_VIDEO_EXTENSION_COMMAND : D3D12_DRED_ALLOCATION_TYPE = 47 ;
13568pub const D3D12_DRED_ALLOCATION_TYPE_D3D12_DRED_ALLOCATION_TYPE_VIDEO_ENCODER : D3D12_DRED_ALLOCATION_TYPE = 48 ;
13569pub const D3D12_DRED_ALLOCATION_TYPE_D3D12_DRED_ALLOCATION_TYPE_VIDEO_ENCODER_HEAP : D3D12_DRED_ALLOCATION_TYPE = 49 ;
13570pub const D3D12_DRED_ALLOCATION_TYPE_D3D12_DRED_ALLOCATION_TYPE_INVALID:
13571 D3D12_DRED_ALLOCATION_TYPE = -1;
13572pub type D3D12_DRED_ALLOCATION_TYPE = ::std::os::raw::c_int;
13573#[repr(C)]
13574#[derive(Debug, Copy, Clone, Hash, PartialOrd, Ord, PartialEq, Eq)]
13575pub struct D3D12_DRED_ALLOCATION_NODE {
13576 pub ObjectNameA: *const ::std::os::raw::c_char,
13577 pub ObjectNameW: *const wchar_t,
13578 pub AllocationType: D3D12_DRED_ALLOCATION_TYPE,
13579 pub pNext: *const D3D12_DRED_ALLOCATION_NODE,
13580}
13581impl Default for D3D12_DRED_ALLOCATION_NODE {
13582 fn default() -> Self {
13583 let mut s = ::std::mem::MaybeUninit::<Self>::uninit();
13584 unsafe {
13585 ::std::ptr::write_bytes(s.as_mut_ptr(), 0, 1);
13586 s.assume_init()
13587 }
13588 }
13589}
13590#[repr(C)]
13591#[derive(Debug, Copy, Clone, Hash, PartialOrd, Ord, PartialEq, Eq)]
13592pub struct D3D12_DRED_ALLOCATION_NODE1 {
13593 pub ObjectNameA: *const ::std::os::raw::c_char,
13594 pub ObjectNameW: *const wchar_t,
13595 pub AllocationType: D3D12_DRED_ALLOCATION_TYPE,
13596 pub pNext: *const D3D12_DRED_ALLOCATION_NODE1,
13597 pub pObject: *const IUnknown,
13598}
13599impl Default for D3D12_DRED_ALLOCATION_NODE1 {
13600 fn default() -> Self {
13601 let mut s = ::std::mem::MaybeUninit::<Self>::uninit();
13602 unsafe {
13603 ::std::ptr::write_bytes(s.as_mut_ptr(), 0, 1);
13604 s.assume_init()
13605 }
13606 }
13607}
13608#[repr(C)]
13609#[derive(Debug, Copy, Clone, Hash, PartialOrd, Ord, PartialEq, Eq)]
13610pub struct D3D12_DRED_AUTO_BREADCRUMBS_OUTPUT {
13611 pub pHeadAutoBreadcrumbNode: *const D3D12_AUTO_BREADCRUMB_NODE,
13612}
13613impl Default for D3D12_DRED_AUTO_BREADCRUMBS_OUTPUT {
13614 fn default() -> Self {
13615 let mut s = ::std::mem::MaybeUninit::<Self>::uninit();
13616 unsafe {
13617 ::std::ptr::write_bytes(s.as_mut_ptr(), 0, 1);
13618 s.assume_init()
13619 }
13620 }
13621}
13622#[repr(C)]
13623#[derive(Debug, Copy, Clone, Hash, PartialOrd, Ord, PartialEq, Eq)]
13624pub struct D3D12_DRED_AUTO_BREADCRUMBS_OUTPUT1 {
13625 pub pHeadAutoBreadcrumbNode: *const D3D12_AUTO_BREADCRUMB_NODE1,
13626}
13627impl Default for D3D12_DRED_AUTO_BREADCRUMBS_OUTPUT1 {
13628 fn default() -> Self {
13629 let mut s = ::std::mem::MaybeUninit::<Self>::uninit();
13630 unsafe {
13631 ::std::ptr::write_bytes(s.as_mut_ptr(), 0, 1);
13632 s.assume_init()
13633 }
13634 }
13635}
13636#[repr(C)]
13637#[derive(Debug, Copy, Clone, Hash, PartialOrd, Ord, PartialEq, Eq)]
13638pub struct D3D12_DRED_PAGE_FAULT_OUTPUT {
13639 pub PageFaultVA: D3D12_GPU_VIRTUAL_ADDRESS,
13640 pub pHeadExistingAllocationNode: *const D3D12_DRED_ALLOCATION_NODE,
13641 pub pHeadRecentFreedAllocationNode: *const D3D12_DRED_ALLOCATION_NODE,
13642}
13643impl Default for D3D12_DRED_PAGE_FAULT_OUTPUT {
13644 fn default() -> Self {
13645 let mut s = ::std::mem::MaybeUninit::<Self>::uninit();
13646 unsafe {
13647 ::std::ptr::write_bytes(s.as_mut_ptr(), 0, 1);
13648 s.assume_init()
13649 }
13650 }
13651}
13652#[repr(C)]
13653#[derive(Debug, Copy, Clone, Hash, PartialOrd, Ord, PartialEq, Eq)]
13654pub struct D3D12_DRED_PAGE_FAULT_OUTPUT1 {
13655 pub PageFaultVA: D3D12_GPU_VIRTUAL_ADDRESS,
13656 pub pHeadExistingAllocationNode: *const D3D12_DRED_ALLOCATION_NODE1,
13657 pub pHeadRecentFreedAllocationNode: *const D3D12_DRED_ALLOCATION_NODE1,
13658}
13659impl Default for D3D12_DRED_PAGE_FAULT_OUTPUT1 {
13660 fn default() -> Self {
13661 let mut s = ::std::mem::MaybeUninit::<Self>::uninit();
13662 unsafe {
13663 ::std::ptr::write_bytes(s.as_mut_ptr(), 0, 1);
13664 s.assume_init()
13665 }
13666 }
13667}
13668pub const D3D12_DRED_PAGE_FAULT_FLAGS_D3D12_DRED_PAGE_FAULT_FLAGS_NONE:
13669 D3D12_DRED_PAGE_FAULT_FLAGS = 0;
13670pub type D3D12_DRED_PAGE_FAULT_FLAGS = ::std::os::raw::c_int;
13671pub const D3D12_DRED_DEVICE_STATE_D3D12_DRED_DEVICE_STATE_UNKNOWN:
13672 D3D12_DRED_DEVICE_STATE = 0;
13673pub const D3D12_DRED_DEVICE_STATE_D3D12_DRED_DEVICE_STATE_HUNG:
13674 D3D12_DRED_DEVICE_STATE = 3;
13675pub const D3D12_DRED_DEVICE_STATE_D3D12_DRED_DEVICE_STATE_FAULT:
13676 D3D12_DRED_DEVICE_STATE = 6;
13677pub const D3D12_DRED_DEVICE_STATE_D3D12_DRED_DEVICE_STATE_PAGEFAULT:
13678 D3D12_DRED_DEVICE_STATE = 7;
13679pub type D3D12_DRED_DEVICE_STATE = ::std::os::raw::c_int;
13680#[repr(C)]
13681#[derive(Debug, Copy, Clone, Hash, PartialOrd, Ord, PartialEq, Eq)]
13682pub struct D3D12_DRED_PAGE_FAULT_OUTPUT2 {
13683 pub PageFaultVA: D3D12_GPU_VIRTUAL_ADDRESS,
13684 pub pHeadExistingAllocationNode: *const D3D12_DRED_ALLOCATION_NODE1,
13685 pub pHeadRecentFreedAllocationNode: *const D3D12_DRED_ALLOCATION_NODE1,
13686 pub PageFaultFlags: D3D12_DRED_PAGE_FAULT_FLAGS,
13687}
13688impl Default for D3D12_DRED_PAGE_FAULT_OUTPUT2 {
13689 fn default() -> Self {
13690 let mut s = ::std::mem::MaybeUninit::<Self>::uninit();
13691 unsafe {
13692 ::std::ptr::write_bytes(s.as_mut_ptr(), 0, 1);
13693 s.assume_init()
13694 }
13695 }
13696}
13697#[repr(C)]
13698#[derive(Debug, Copy, Clone, Hash, PartialOrd, Ord, PartialEq, Eq)]
13699pub struct D3D12_DEVICE_REMOVED_EXTENDED_DATA1 {
13700 pub DeviceRemovedReason: HRESULT,
13701 pub AutoBreadcrumbsOutput: D3D12_DRED_AUTO_BREADCRUMBS_OUTPUT,
13702 pub PageFaultOutput: D3D12_DRED_PAGE_FAULT_OUTPUT,
13703}
13704impl Default for D3D12_DEVICE_REMOVED_EXTENDED_DATA1 {
13705 fn default() -> Self {
13706 let mut s = ::std::mem::MaybeUninit::<Self>::uninit();
13707 unsafe {
13708 ::std::ptr::write_bytes(s.as_mut_ptr(), 0, 1);
13709 s.assume_init()
13710 }
13711 }
13712}
13713#[repr(C)]
13714#[derive(Debug, Copy, Clone, Hash, PartialOrd, Ord, PartialEq, Eq)]
13715pub struct D3D12_DEVICE_REMOVED_EXTENDED_DATA2 {
13716 pub DeviceRemovedReason: HRESULT,
13717 pub AutoBreadcrumbsOutput: D3D12_DRED_AUTO_BREADCRUMBS_OUTPUT1,
13718 pub PageFaultOutput: D3D12_DRED_PAGE_FAULT_OUTPUT1,
13719}
13720impl Default for D3D12_DEVICE_REMOVED_EXTENDED_DATA2 {
13721 fn default() -> Self {
13722 let mut s = ::std::mem::MaybeUninit::<Self>::uninit();
13723 unsafe {
13724 ::std::ptr::write_bytes(s.as_mut_ptr(), 0, 1);
13725 s.assume_init()
13726 }
13727 }
13728}
13729#[repr(C)]
13730#[derive(Debug, Copy, Clone, Hash, PartialOrd, Ord, PartialEq, Eq)]
13731pub struct D3D12_DEVICE_REMOVED_EXTENDED_DATA3 {
13732 pub DeviceRemovedReason: HRESULT,
13733 pub AutoBreadcrumbsOutput: D3D12_DRED_AUTO_BREADCRUMBS_OUTPUT1,
13734 pub PageFaultOutput: D3D12_DRED_PAGE_FAULT_OUTPUT2,
13735 pub DeviceState: D3D12_DRED_DEVICE_STATE,
13736}
13737impl Default for D3D12_DEVICE_REMOVED_EXTENDED_DATA3 {
13738 fn default() -> Self {
13739 let mut s = ::std::mem::MaybeUninit::<Self>::uninit();
13740 unsafe {
13741 ::std::ptr::write_bytes(s.as_mut_ptr(), 0, 1);
13742 s.assume_init()
13743 }
13744 }
13745}
13746#[repr(C)]
13747#[derive(Copy, Clone)]
13748pub struct D3D12_VERSIONED_DEVICE_REMOVED_EXTENDED_DATA {
13749 pub Version: D3D12_DRED_VERSION,
13750 pub __bindgen_anon_1:
13751 D3D12_VERSIONED_DEVICE_REMOVED_EXTENDED_DATA__bindgen_ty_1,
13752}
13753#[repr(C)]
13754#[derive(Copy, Clone)]
13755pub union D3D12_VERSIONED_DEVICE_REMOVED_EXTENDED_DATA__bindgen_ty_1 {
13756 pub Dred_1_0: D3D12_DEVICE_REMOVED_EXTENDED_DATA,
13757 pub Dred_1_1: D3D12_DEVICE_REMOVED_EXTENDED_DATA1,
13758 pub Dred_1_2: D3D12_DEVICE_REMOVED_EXTENDED_DATA2,
13759 pub Dred_1_3: D3D12_DEVICE_REMOVED_EXTENDED_DATA3,
13760}
13761impl Default for D3D12_VERSIONED_DEVICE_REMOVED_EXTENDED_DATA__bindgen_ty_1 {
13762 fn default() -> Self {
13763 let mut s = ::std::mem::MaybeUninit::<Self>::uninit();
13764 unsafe {
13765 ::std::ptr::write_bytes(s.as_mut_ptr(), 0, 1);
13766 s.assume_init()
13767 }
13768 }
13769}
13770impl ::std::fmt::Debug
13771 for D3D12_VERSIONED_DEVICE_REMOVED_EXTENDED_DATA__bindgen_ty_1
13772{
13773 fn fmt(&self, f: &mut ::std::fmt::Formatter<'_>) -> ::std::fmt::Result {
13774 write ! (f , "D3D12_VERSIONED_DEVICE_REMOVED_EXTENDED_DATA__bindgen_ty_1 {{ union }}")
13775 }
13776}
13777impl Default for D3D12_VERSIONED_DEVICE_REMOVED_EXTENDED_DATA {
13778 fn default() -> Self {
13779 let mut s = ::std::mem::MaybeUninit::<Self>::uninit();
13780 unsafe {
13781 ::std::ptr::write_bytes(s.as_mut_ptr(), 0, 1);
13782 s.assume_init()
13783 }
13784 }
13785}
13786impl ::std::fmt::Debug for D3D12_VERSIONED_DEVICE_REMOVED_EXTENDED_DATA {
13787 fn fmt(&self, f: &mut ::std::fmt::Formatter<'_>) -> ::std::fmt::Result {
13788 write ! (f , "D3D12_VERSIONED_DEVICE_REMOVED_EXTENDED_DATA {{ Version: {:?}, __bindgen_anon_1: {:?} }}" , self . Version , self . __bindgen_anon_1)
13789 }
13790}
13791extern "C" {
13792 pub static IID_ID3D12DeviceRemovedExtendedDataSettings: IID;
13793}
13794#[repr(C)]
13795#[derive(Debug, Default, Copy, Clone, Hash, PartialOrd, Ord, PartialEq, Eq)]
13796pub struct ID3D12DeviceRemovedExtendedDataSettingsVtbl {
13797 pub QueryInterface: ::std::option::Option<
13798 unsafe extern "C" fn(
13799 This: *mut ID3D12DeviceRemovedExtendedDataSettings,
13800 riid: *const IID,
13801 ppvObject: *mut *mut ::std::os::raw::c_void,
13802 ) -> HRESULT,
13803 >,
13804 pub AddRef: ::std::option::Option<
13805 unsafe extern "C" fn(
13806 This: *mut ID3D12DeviceRemovedExtendedDataSettings,
13807 ) -> ULONG,
13808 >,
13809 pub Release: ::std::option::Option<
13810 unsafe extern "C" fn(
13811 This: *mut ID3D12DeviceRemovedExtendedDataSettings,
13812 ) -> ULONG,
13813 >,
13814 pub SetAutoBreadcrumbsEnablement: ::std::option::Option<
13815 unsafe extern "C" fn(
13816 This: *mut ID3D12DeviceRemovedExtendedDataSettings,
13817 Enablement: D3D12_DRED_ENABLEMENT,
13818 ),
13819 >,
13820 pub SetPageFaultEnablement: ::std::option::Option<
13821 unsafe extern "C" fn(
13822 This: *mut ID3D12DeviceRemovedExtendedDataSettings,
13823 Enablement: D3D12_DRED_ENABLEMENT,
13824 ),
13825 >,
13826 pub SetWatsonDumpEnablement: ::std::option::Option<
13827 unsafe extern "C" fn(
13828 This: *mut ID3D12DeviceRemovedExtendedDataSettings,
13829 Enablement: D3D12_DRED_ENABLEMENT,
13830 ),
13831 >,
13832}
13833#[repr(C)]
13834#[derive(Debug, Copy, Clone, Hash, PartialOrd, Ord, PartialEq, Eq)]
13835pub struct ID3D12DeviceRemovedExtendedDataSettings {
13836 pub lpVtbl: *mut ID3D12DeviceRemovedExtendedDataSettingsVtbl,
13837}
13838impl Default for ID3D12DeviceRemovedExtendedDataSettings {
13839 fn default() -> Self {
13840 let mut s = ::std::mem::MaybeUninit::<Self>::uninit();
13841 unsafe {
13842 ::std::ptr::write_bytes(s.as_mut_ptr(), 0, 1);
13843 s.assume_init()
13844 }
13845 }
13846}
13847extern "C" {
13848 pub static IID_ID3D12DeviceRemovedExtendedDataSettings1: IID;
13849}
13850#[repr(C)]
13851#[derive(Debug, Default, Copy, Clone, Hash, PartialOrd, Ord, PartialEq, Eq)]
13852pub struct ID3D12DeviceRemovedExtendedDataSettings1Vtbl {
13853 pub QueryInterface: ::std::option::Option<
13854 unsafe extern "C" fn(
13855 This: *mut ID3D12DeviceRemovedExtendedDataSettings1,
13856 riid: *const IID,
13857 ppvObject: *mut *mut ::std::os::raw::c_void,
13858 ) -> HRESULT,
13859 >,
13860 pub AddRef: ::std::option::Option<
13861 unsafe extern "C" fn(
13862 This: *mut ID3D12DeviceRemovedExtendedDataSettings1,
13863 ) -> ULONG,
13864 >,
13865 pub Release: ::std::option::Option<
13866 unsafe extern "C" fn(
13867 This: *mut ID3D12DeviceRemovedExtendedDataSettings1,
13868 ) -> ULONG,
13869 >,
13870 pub SetAutoBreadcrumbsEnablement: ::std::option::Option<
13871 unsafe extern "C" fn(
13872 This: *mut ID3D12DeviceRemovedExtendedDataSettings1,
13873 Enablement: D3D12_DRED_ENABLEMENT,
13874 ),
13875 >,
13876 pub SetPageFaultEnablement: ::std::option::Option<
13877 unsafe extern "C" fn(
13878 This: *mut ID3D12DeviceRemovedExtendedDataSettings1,
13879 Enablement: D3D12_DRED_ENABLEMENT,
13880 ),
13881 >,
13882 pub SetWatsonDumpEnablement: ::std::option::Option<
13883 unsafe extern "C" fn(
13884 This: *mut ID3D12DeviceRemovedExtendedDataSettings1,
13885 Enablement: D3D12_DRED_ENABLEMENT,
13886 ),
13887 >,
13888 pub SetBreadcrumbContextEnablement: ::std::option::Option<
13889 unsafe extern "C" fn(
13890 This: *mut ID3D12DeviceRemovedExtendedDataSettings1,
13891 Enablement: D3D12_DRED_ENABLEMENT,
13892 ),
13893 >,
13894}
13895#[repr(C)]
13896#[derive(Debug, Copy, Clone, Hash, PartialOrd, Ord, PartialEq, Eq)]
13897pub struct ID3D12DeviceRemovedExtendedDataSettings1 {
13898 pub lpVtbl: *mut ID3D12DeviceRemovedExtendedDataSettings1Vtbl,
13899}
13900impl Default for ID3D12DeviceRemovedExtendedDataSettings1 {
13901 fn default() -> Self {
13902 let mut s = ::std::mem::MaybeUninit::<Self>::uninit();
13903 unsafe {
13904 ::std::ptr::write_bytes(s.as_mut_ptr(), 0, 1);
13905 s.assume_init()
13906 }
13907 }
13908}
13909extern "C" {
13910 pub static IID_ID3D12DeviceRemovedExtendedData: IID;
13911}
13912#[repr(C)]
13913#[derive(Debug, Default, Copy, Clone, Hash, PartialOrd, Ord, PartialEq, Eq)]
13914pub struct ID3D12DeviceRemovedExtendedDataVtbl {
13915 pub QueryInterface: ::std::option::Option<
13916 unsafe extern "C" fn(
13917 This: *mut ID3D12DeviceRemovedExtendedData,
13918 riid: *const IID,
13919 ppvObject: *mut *mut ::std::os::raw::c_void,
13920 ) -> HRESULT,
13921 >,
13922 pub AddRef: ::std::option::Option<
13923 unsafe extern "C" fn(
13924 This: *mut ID3D12DeviceRemovedExtendedData,
13925 ) -> ULONG,
13926 >,
13927 pub Release: ::std::option::Option<
13928 unsafe extern "C" fn(
13929 This: *mut ID3D12DeviceRemovedExtendedData,
13930 ) -> ULONG,
13931 >,
13932 pub GetAutoBreadcrumbsOutput: ::std::option::Option<
13933 unsafe extern "C" fn(
13934 This: *mut ID3D12DeviceRemovedExtendedData,
13935 pOutput: *mut D3D12_DRED_AUTO_BREADCRUMBS_OUTPUT,
13936 ) -> HRESULT,
13937 >,
13938 pub GetPageFaultAllocationOutput: ::std::option::Option<
13939 unsafe extern "C" fn(
13940 This: *mut ID3D12DeviceRemovedExtendedData,
13941 pOutput: *mut D3D12_DRED_PAGE_FAULT_OUTPUT,
13942 ) -> HRESULT,
13943 >,
13944}
13945#[repr(C)]
13946#[derive(Debug, Copy, Clone, Hash, PartialOrd, Ord, PartialEq, Eq)]
13947pub struct ID3D12DeviceRemovedExtendedData {
13948 pub lpVtbl: *mut ID3D12DeviceRemovedExtendedDataVtbl,
13949}
13950impl Default for ID3D12DeviceRemovedExtendedData {
13951 fn default() -> Self {
13952 let mut s = ::std::mem::MaybeUninit::<Self>::uninit();
13953 unsafe {
13954 ::std::ptr::write_bytes(s.as_mut_ptr(), 0, 1);
13955 s.assume_init()
13956 }
13957 }
13958}
13959extern "C" {
13960 pub static IID_ID3D12DeviceRemovedExtendedData1: IID;
13961}
13962#[repr(C)]
13963#[derive(Debug, Default, Copy, Clone, Hash, PartialOrd, Ord, PartialEq, Eq)]
13964pub struct ID3D12DeviceRemovedExtendedData1Vtbl {
13965 pub QueryInterface: ::std::option::Option<
13966 unsafe extern "C" fn(
13967 This: *mut ID3D12DeviceRemovedExtendedData1,
13968 riid: *const IID,
13969 ppvObject: *mut *mut ::std::os::raw::c_void,
13970 ) -> HRESULT,
13971 >,
13972 pub AddRef: ::std::option::Option<
13973 unsafe extern "C" fn(
13974 This: *mut ID3D12DeviceRemovedExtendedData1,
13975 ) -> ULONG,
13976 >,
13977 pub Release: ::std::option::Option<
13978 unsafe extern "C" fn(
13979 This: *mut ID3D12DeviceRemovedExtendedData1,
13980 ) -> ULONG,
13981 >,
13982 pub GetAutoBreadcrumbsOutput: ::std::option::Option<
13983 unsafe extern "C" fn(
13984 This: *mut ID3D12DeviceRemovedExtendedData1,
13985 pOutput: *mut D3D12_DRED_AUTO_BREADCRUMBS_OUTPUT,
13986 ) -> HRESULT,
13987 >,
13988 pub GetPageFaultAllocationOutput: ::std::option::Option<
13989 unsafe extern "C" fn(
13990 This: *mut ID3D12DeviceRemovedExtendedData1,
13991 pOutput: *mut D3D12_DRED_PAGE_FAULT_OUTPUT,
13992 ) -> HRESULT,
13993 >,
13994 pub GetAutoBreadcrumbsOutput1: ::std::option::Option<
13995 unsafe extern "C" fn(
13996 This: *mut ID3D12DeviceRemovedExtendedData1,
13997 pOutput: *mut D3D12_DRED_AUTO_BREADCRUMBS_OUTPUT1,
13998 ) -> HRESULT,
13999 >,
14000 pub GetPageFaultAllocationOutput1: ::std::option::Option<
14001 unsafe extern "C" fn(
14002 This: *mut ID3D12DeviceRemovedExtendedData1,
14003 pOutput: *mut D3D12_DRED_PAGE_FAULT_OUTPUT1,
14004 ) -> HRESULT,
14005 >,
14006}
14007#[repr(C)]
14008#[derive(Debug, Copy, Clone, Hash, PartialOrd, Ord, PartialEq, Eq)]
14009pub struct ID3D12DeviceRemovedExtendedData1 {
14010 pub lpVtbl: *mut ID3D12DeviceRemovedExtendedData1Vtbl,
14011}
14012impl Default for ID3D12DeviceRemovedExtendedData1 {
14013 fn default() -> Self {
14014 let mut s = ::std::mem::MaybeUninit::<Self>::uninit();
14015 unsafe {
14016 ::std::ptr::write_bytes(s.as_mut_ptr(), 0, 1);
14017 s.assume_init()
14018 }
14019 }
14020}
14021extern "C" {
14022 pub static IID_ID3D12DeviceRemovedExtendedData2: IID;
14023}
14024#[repr(C)]
14025#[derive(Debug, Default, Copy, Clone, Hash, PartialOrd, Ord, PartialEq, Eq)]
14026pub struct ID3D12DeviceRemovedExtendedData2Vtbl {
14027 pub QueryInterface: ::std::option::Option<
14028 unsafe extern "C" fn(
14029 This: *mut ID3D12DeviceRemovedExtendedData2,
14030 riid: *const IID,
14031 ppvObject: *mut *mut ::std::os::raw::c_void,
14032 ) -> HRESULT,
14033 >,
14034 pub AddRef: ::std::option::Option<
14035 unsafe extern "C" fn(
14036 This: *mut ID3D12DeviceRemovedExtendedData2,
14037 ) -> ULONG,
14038 >,
14039 pub Release: ::std::option::Option<
14040 unsafe extern "C" fn(
14041 This: *mut ID3D12DeviceRemovedExtendedData2,
14042 ) -> ULONG,
14043 >,
14044 pub GetAutoBreadcrumbsOutput: ::std::option::Option<
14045 unsafe extern "C" fn(
14046 This: *mut ID3D12DeviceRemovedExtendedData2,
14047 pOutput: *mut D3D12_DRED_AUTO_BREADCRUMBS_OUTPUT,
14048 ) -> HRESULT,
14049 >,
14050 pub GetPageFaultAllocationOutput: ::std::option::Option<
14051 unsafe extern "C" fn(
14052 This: *mut ID3D12DeviceRemovedExtendedData2,
14053 pOutput: *mut D3D12_DRED_PAGE_FAULT_OUTPUT,
14054 ) -> HRESULT,
14055 >,
14056 pub GetAutoBreadcrumbsOutput1: ::std::option::Option<
14057 unsafe extern "C" fn(
14058 This: *mut ID3D12DeviceRemovedExtendedData2,
14059 pOutput: *mut D3D12_DRED_AUTO_BREADCRUMBS_OUTPUT1,
14060 ) -> HRESULT,
14061 >,
14062 pub GetPageFaultAllocationOutput1: ::std::option::Option<
14063 unsafe extern "C" fn(
14064 This: *mut ID3D12DeviceRemovedExtendedData2,
14065 pOutput: *mut D3D12_DRED_PAGE_FAULT_OUTPUT1,
14066 ) -> HRESULT,
14067 >,
14068 pub GetPageFaultAllocationOutput2: ::std::option::Option<
14069 unsafe extern "C" fn(
14070 This: *mut ID3D12DeviceRemovedExtendedData2,
14071 pOutput: *mut D3D12_DRED_PAGE_FAULT_OUTPUT2,
14072 ) -> HRESULT,
14073 >,
14074 pub GetDeviceState: ::std::option::Option<
14075 unsafe extern "C" fn(
14076 This: *mut ID3D12DeviceRemovedExtendedData2,
14077 ) -> D3D12_DRED_DEVICE_STATE,
14078 >,
14079}
14080#[repr(C)]
14081#[derive(Debug, Copy, Clone, Hash, PartialOrd, Ord, PartialEq, Eq)]
14082pub struct ID3D12DeviceRemovedExtendedData2 {
14083 pub lpVtbl: *mut ID3D12DeviceRemovedExtendedData2Vtbl,
14084}
14085impl Default for ID3D12DeviceRemovedExtendedData2 {
14086 fn default() -> Self {
14087 let mut s = ::std::mem::MaybeUninit::<Self>::uninit();
14088 unsafe {
14089 ::std::ptr::write_bytes(s.as_mut_ptr(), 0, 1);
14090 s.assume_init()
14091 }
14092 }
14093}
14094pub const D3D12_BACKGROUND_PROCESSING_MODE_D3D12_BACKGROUND_PROCESSING_MODE_ALLOWED : D3D12_BACKGROUND_PROCESSING_MODE = 0 ;
14095pub const D3D12_BACKGROUND_PROCESSING_MODE_D3D12_BACKGROUND_PROCESSING_MODE_ALLOW_INTRUSIVE_MEASUREMENTS : D3D12_BACKGROUND_PROCESSING_MODE = 1 ;
14096pub const D3D12_BACKGROUND_PROCESSING_MODE_D3D12_BACKGROUND_PROCESSING_MODE_DISABLE_BACKGROUND_WORK : D3D12_BACKGROUND_PROCESSING_MODE = 2 ;
14097pub const D3D12_BACKGROUND_PROCESSING_MODE_D3D12_BACKGROUND_PROCESSING_MODE_DISABLE_PROFILING_BY_SYSTEM : D3D12_BACKGROUND_PROCESSING_MODE = 3 ;
14098pub type D3D12_BACKGROUND_PROCESSING_MODE = ::std::os::raw::c_int;
14099pub const D3D12_MEASUREMENTS_ACTION_D3D12_MEASUREMENTS_ACTION_KEEP_ALL:
14100 D3D12_MEASUREMENTS_ACTION = 0;
14101pub const D3D12_MEASUREMENTS_ACTION_D3D12_MEASUREMENTS_ACTION_COMMIT_RESULTS:
14102 D3D12_MEASUREMENTS_ACTION = 1;
14103pub const D3D12_MEASUREMENTS_ACTION_D3D12_MEASUREMENTS_ACTION_COMMIT_RESULTS_HIGH_PRIORITY : D3D12_MEASUREMENTS_ACTION = 2 ;
14104pub const D3D12_MEASUREMENTS_ACTION_D3D12_MEASUREMENTS_ACTION_DISCARD_PREVIOUS : D3D12_MEASUREMENTS_ACTION = 3 ;
14105pub type D3D12_MEASUREMENTS_ACTION = ::std::os::raw::c_int;
14106extern "C" {
14107 pub static IID_ID3D12Device6: IID;
14108}
14109#[repr(C)]
14110#[derive(Debug, Default, Copy, Clone, Hash, PartialOrd, Ord, PartialEq, Eq)]
14111pub struct ID3D12Device6Vtbl { pub QueryInterface : :: std :: option :: Option < unsafe extern "C" fn (This : * mut ID3D12Device6 , riid : * const IID , ppvObject : * mut * mut :: std :: os :: raw :: c_void) -> HRESULT > , pub AddRef : :: std :: option :: Option < unsafe extern "C" fn (This : * mut ID3D12Device6) -> ULONG > , pub Release : :: std :: option :: Option < unsafe extern "C" fn (This : * mut ID3D12Device6) -> ULONG > , pub GetPrivateData : :: std :: option :: Option < unsafe extern "C" fn (This : * mut ID3D12Device6 , guid : * const GUID , pDataSize : * mut UINT , pData : * mut :: std :: os :: raw :: c_void) -> HRESULT > , pub SetPrivateData : :: std :: option :: Option < unsafe extern "C" fn (This : * mut ID3D12Device6 , guid : * const GUID , DataSize : UINT , pData : * const :: std :: os :: raw :: c_void) -> HRESULT > , pub SetPrivateDataInterface : :: std :: option :: Option < unsafe extern "C" fn (This : * mut ID3D12Device6 , guid : * const GUID , pData : * const IUnknown) -> HRESULT > , pub SetName : :: std :: option :: Option < unsafe extern "C" fn (This : * mut ID3D12Device6 , Name : LPCWSTR) -> HRESULT > , pub GetNodeCount : :: std :: option :: Option < unsafe extern "C" fn (This : * mut ID3D12Device6) -> UINT > , pub CreateCommandQueue : :: std :: option :: Option < unsafe extern "C" fn (This : * mut ID3D12Device6 , pDesc : * const D3D12_COMMAND_QUEUE_DESC , riid : * const IID , ppCommandQueue : * mut * mut :: std :: os :: raw :: c_void) -> HRESULT > , pub CreateCommandAllocator : :: std :: option :: Option < unsafe extern "C" fn (This : * mut ID3D12Device6 , type_ : D3D12_COMMAND_LIST_TYPE , riid : * const IID , ppCommandAllocator : * mut * mut :: std :: os :: raw :: c_void) -> HRESULT > , pub CreateGraphicsPipelineState : :: std :: option :: Option < unsafe extern "C" fn (This : * mut ID3D12Device6 , pDesc : * const D3D12_GRAPHICS_PIPELINE_STATE_DESC , riid : * const IID , ppPipelineState : * mut * mut :: std :: os :: raw :: c_void) -> HRESULT > , pub CreateComputePipelineState : :: std :: option :: Option < unsafe extern "C" fn (This : * mut ID3D12Device6 , pDesc : * const D3D12_COMPUTE_PIPELINE_STATE_DESC , riid : * const IID , ppPipelineState : * mut * mut :: std :: os :: raw :: c_void) -> HRESULT > , pub CreateCommandList : :: std :: option :: Option < unsafe extern "C" fn (This : * mut ID3D12Device6 , nodeMask : UINT , type_ : D3D12_COMMAND_LIST_TYPE , pCommandAllocator : * mut ID3D12CommandAllocator , pInitialState : * mut ID3D12PipelineState , riid : * const IID , ppCommandList : * mut * mut :: std :: os :: raw :: c_void) -> HRESULT > , pub CheckFeatureSupport : :: std :: option :: Option < unsafe extern "C" fn (This : * mut ID3D12Device6 , Feature : D3D12_FEATURE , pFeatureSupportData : * mut :: std :: os :: raw :: c_void , FeatureSupportDataSize : UINT) -> HRESULT > , pub CreateDescriptorHeap : :: std :: option :: Option < unsafe extern "C" fn (This : * mut ID3D12Device6 , pDescriptorHeapDesc : * const D3D12_DESCRIPTOR_HEAP_DESC , riid : * const IID , ppvHeap : * mut * mut :: std :: os :: raw :: c_void) -> HRESULT > , pub GetDescriptorHandleIncrementSize : :: std :: option :: Option < unsafe extern "C" fn (This : * mut ID3D12Device6 , DescriptorHeapType : D3D12_DESCRIPTOR_HEAP_TYPE) -> UINT > , pub CreateRootSignature : :: std :: option :: Option < unsafe extern "C" fn (This : * mut ID3D12Device6 , nodeMask : UINT , pBlobWithRootSignature : * const :: std :: os :: raw :: c_void , blobLengthInBytes : SIZE_T , riid : * const IID , ppvRootSignature : * mut * mut :: std :: os :: raw :: c_void) -> HRESULT > , pub CreateConstantBufferView : :: std :: option :: Option < unsafe extern "C" fn (This : * mut ID3D12Device6 , pDesc : * const D3D12_CONSTANT_BUFFER_VIEW_DESC , DestDescriptor : D3D12_CPU_DESCRIPTOR_HANDLE) > , pub CreateShaderResourceView : :: std :: option :: Option < unsafe extern "C" fn (This : * mut ID3D12Device6 , pResource : * mut ID3D12Resource , pDesc : * const D3D12_SHADER_RESOURCE_VIEW_DESC , DestDescriptor : D3D12_CPU_DESCRIPTOR_HANDLE) > , pub CreateUnorderedAccessView : :: std :: option :: Option < unsafe extern "C" fn (This : * mut ID3D12Device6 , pResource : * mut ID3D12Resource , pCounterResource : * mut ID3D12Resource , pDesc : * const D3D12_UNORDERED_ACCESS_VIEW_DESC , DestDescriptor : D3D12_CPU_DESCRIPTOR_HANDLE) > , pub CreateRenderTargetView : :: std :: option :: Option < unsafe extern "C" fn (This : * mut ID3D12Device6 , pResource : * mut ID3D12Resource , pDesc : * const D3D12_RENDER_TARGET_VIEW_DESC , DestDescriptor : D3D12_CPU_DESCRIPTOR_HANDLE) > , pub CreateDepthStencilView : :: std :: option :: Option < unsafe extern "C" fn (This : * mut ID3D12Device6 , pResource : * mut ID3D12Resource , pDesc : * const D3D12_DEPTH_STENCIL_VIEW_DESC , DestDescriptor : D3D12_CPU_DESCRIPTOR_HANDLE) > , pub CreateSampler : :: std :: option :: Option < unsafe extern "C" fn (This : * mut ID3D12Device6 , pDesc : * const D3D12_SAMPLER_DESC , DestDescriptor : D3D12_CPU_DESCRIPTOR_HANDLE) > , pub CopyDescriptors : :: std :: option :: Option < unsafe extern "C" fn (This : * mut ID3D12Device6 , NumDestDescriptorRanges : UINT , pDestDescriptorRangeStarts : * const D3D12_CPU_DESCRIPTOR_HANDLE , pDestDescriptorRangeSizes : * const UINT , NumSrcDescriptorRanges : UINT , pSrcDescriptorRangeStarts : * const D3D12_CPU_DESCRIPTOR_HANDLE , pSrcDescriptorRangeSizes : * const UINT , DescriptorHeapsType : D3D12_DESCRIPTOR_HEAP_TYPE) > , pub CopyDescriptorsSimple : :: std :: option :: Option < unsafe extern "C" fn (This : * mut ID3D12Device6 , NumDescriptors : UINT , DestDescriptorRangeStart : D3D12_CPU_DESCRIPTOR_HANDLE , SrcDescriptorRangeStart : D3D12_CPU_DESCRIPTOR_HANDLE , DescriptorHeapsType : D3D12_DESCRIPTOR_HEAP_TYPE) > , pub GetResourceAllocationInfo : :: std :: option :: Option < unsafe extern "C" fn (This : * mut ID3D12Device6 , RetVal : * mut D3D12_RESOURCE_ALLOCATION_INFO , visibleMask : UINT , numResourceDescs : UINT , pResourceDescs : * const D3D12_RESOURCE_DESC) -> * mut D3D12_RESOURCE_ALLOCATION_INFO > , pub GetCustomHeapProperties : :: std :: option :: Option < unsafe extern "C" fn (This : * mut ID3D12Device6 , RetVal : * mut D3D12_HEAP_PROPERTIES , nodeMask : UINT , heapType : D3D12_HEAP_TYPE) -> * mut D3D12_HEAP_PROPERTIES > , pub CreateCommittedResource : :: std :: option :: Option < unsafe extern "C" fn (This : * mut ID3D12Device6 , pHeapProperties : * const D3D12_HEAP_PROPERTIES , HeapFlags : D3D12_HEAP_FLAGS , pDesc : * const D3D12_RESOURCE_DESC , InitialResourceState : D3D12_RESOURCE_STATES , pOptimizedClearValue : * const D3D12_CLEAR_VALUE , riidResource : * const IID , ppvResource : * mut * mut :: std :: os :: raw :: c_void) -> HRESULT > , pub CreateHeap : :: std :: option :: Option < unsafe extern "C" fn (This : * mut ID3D12Device6 , pDesc : * const D3D12_HEAP_DESC , riid : * const IID , ppvHeap : * mut * mut :: std :: os :: raw :: c_void) -> HRESULT > , pub CreatePlacedResource : :: std :: option :: Option < unsafe extern "C" fn (This : * mut ID3D12Device6 , pHeap : * mut ID3D12Heap , HeapOffset : UINT64 , pDesc : * const D3D12_RESOURCE_DESC , InitialState : D3D12_RESOURCE_STATES , pOptimizedClearValue : * const D3D12_CLEAR_VALUE , riid : * const IID , ppvResource : * mut * mut :: std :: os :: raw :: c_void) -> HRESULT > , pub CreateReservedResource : :: std :: option :: Option < unsafe extern "C" fn (This : * mut ID3D12Device6 , pDesc : * const D3D12_RESOURCE_DESC , InitialState : D3D12_RESOURCE_STATES , pOptimizedClearValue : * const D3D12_CLEAR_VALUE , riid : * const IID , ppvResource : * mut * mut :: std :: os :: raw :: c_void) -> HRESULT > , pub CreateSharedHandle : :: std :: option :: Option < unsafe extern "C" fn (This : * mut ID3D12Device6 , pObject : * mut ID3D12DeviceChild , pAttributes : * const SECURITY_ATTRIBUTES , Access : DWORD , Name : LPCWSTR , pHandle : * mut HANDLE) -> HRESULT > , pub OpenSharedHandle : :: std :: option :: Option < unsafe extern "C" fn (This : * mut ID3D12Device6 , NTHandle : HANDLE , riid : * const IID , ppvObj : * mut * mut :: std :: os :: raw :: c_void) -> HRESULT > , pub OpenSharedHandleByName : :: std :: option :: Option < unsafe extern "C" fn (This : * mut ID3D12Device6 , Name : LPCWSTR , Access : DWORD , pNTHandle : * mut HANDLE) -> HRESULT > , pub MakeResident : :: std :: option :: Option < unsafe extern "C" fn (This : * mut ID3D12Device6 , NumObjects : UINT , ppObjects : * const * mut ID3D12Pageable) -> HRESULT > , pub Evict : :: std :: option :: Option < unsafe extern "C" fn (This : * mut ID3D12Device6 , NumObjects : UINT , ppObjects : * const * mut ID3D12Pageable) -> HRESULT > , pub CreateFence : :: std :: option :: Option < unsafe extern "C" fn (This : * mut ID3D12Device6 , InitialValue : UINT64 , Flags : D3D12_FENCE_FLAGS , riid : * const IID , ppFence : * mut * mut :: std :: os :: raw :: c_void) -> HRESULT > , pub GetDeviceRemovedReason : :: std :: option :: Option < unsafe extern "C" fn (This : * mut ID3D12Device6) -> HRESULT > , pub GetCopyableFootprints : :: std :: option :: Option < unsafe extern "C" fn (This : * mut ID3D12Device6 , pResourceDesc : * const D3D12_RESOURCE_DESC , FirstSubresource : UINT , NumSubresources : UINT , BaseOffset : UINT64 , pLayouts : * mut D3D12_PLACED_SUBRESOURCE_FOOTPRINT , pNumRows : * mut UINT , pRowSizeInBytes : * mut UINT64 , pTotalBytes : * mut UINT64) > , pub CreateQueryHeap : :: std :: option :: Option < unsafe extern "C" fn (This : * mut ID3D12Device6 , pDesc : * const D3D12_QUERY_HEAP_DESC , riid : * const IID , ppvHeap : * mut * mut :: std :: os :: raw :: c_void) -> HRESULT > , pub SetStablePowerState : :: std :: option :: Option < unsafe extern "C" fn (This : * mut ID3D12Device6 , Enable : BOOL) -> HRESULT > , pub CreateCommandSignature : :: std :: option :: Option < unsafe extern "C" fn (This : * mut ID3D12Device6 , pDesc : * const D3D12_COMMAND_SIGNATURE_DESC , pRootSignature : * mut ID3D12RootSignature , riid : * const IID , ppvCommandSignature : * mut * mut :: std :: os :: raw :: c_void) -> HRESULT > , pub GetResourceTiling : :: std :: option :: Option < unsafe extern "C" fn (This : * mut ID3D12Device6 , pTiledResource : * mut ID3D12Resource , pNumTilesForEntireResource : * mut UINT , pPackedMipDesc : * mut D3D12_PACKED_MIP_INFO , pStandardTileShapeForNonPackedMips : * mut D3D12_TILE_SHAPE , pNumSubresourceTilings : * mut UINT , FirstSubresourceTilingToGet : UINT , pSubresourceTilingsForNonPackedMips : * mut D3D12_SUBRESOURCE_TILING) > , pub GetAdapterLuid : :: std :: option :: Option < unsafe extern "C" fn (This : * mut ID3D12Device6 , RetVal : * mut LUID) -> * mut LUID > , pub CreatePipelineLibrary : :: std :: option :: Option < unsafe extern "C" fn (This : * mut ID3D12Device6 , pLibraryBlob : * const :: std :: os :: raw :: c_void , BlobLength : SIZE_T , riid : * const IID , ppPipelineLibrary : * mut * mut :: std :: os :: raw :: c_void) -> HRESULT > , pub SetEventOnMultipleFenceCompletion : :: std :: option :: Option < unsafe extern "C" fn (This : * mut ID3D12Device6 , ppFences : * const * mut ID3D12Fence , pFenceValues : * const UINT64 , NumFences : UINT , Flags : D3D12_MULTIPLE_FENCE_WAIT_FLAGS , hEvent : HANDLE) -> HRESULT > , pub SetResidencyPriority : :: std :: option :: Option < unsafe extern "C" fn (This : * mut ID3D12Device6 , NumObjects : UINT , ppObjects : * const * mut ID3D12Pageable , pPriorities : * const D3D12_RESIDENCY_PRIORITY) -> HRESULT > , pub CreatePipelineState : :: std :: option :: Option < unsafe extern "C" fn (This : * mut ID3D12Device6 , pDesc : * const D3D12_PIPELINE_STATE_STREAM_DESC , riid : * const IID , ppPipelineState : * mut * mut :: std :: os :: raw :: c_void) -> HRESULT > , pub OpenExistingHeapFromAddress : :: std :: option :: Option < unsafe extern "C" fn (This : * mut ID3D12Device6 , pAddress : * const :: std :: os :: raw :: c_void , riid : * const IID , ppvHeap : * mut * mut :: std :: os :: raw :: c_void) -> HRESULT > , pub OpenExistingHeapFromFileMapping : :: std :: option :: Option < unsafe extern "C" fn (This : * mut ID3D12Device6 , hFileMapping : HANDLE , riid : * const IID , ppvHeap : * mut * mut :: std :: os :: raw :: c_void) -> HRESULT > , pub EnqueueMakeResident : :: std :: option :: Option < unsafe extern "C" fn (This : * mut ID3D12Device6 , Flags : D3D12_RESIDENCY_FLAGS , NumObjects : UINT , ppObjects : * const * mut ID3D12Pageable , pFenceToSignal : * mut ID3D12Fence , FenceValueToSignal : UINT64) -> HRESULT > , pub CreateCommandList1 : :: std :: option :: Option < unsafe extern "C" fn (This : * mut ID3D12Device6 , nodeMask : UINT , type_ : D3D12_COMMAND_LIST_TYPE , flags : D3D12_COMMAND_LIST_FLAGS , riid : * const IID , ppCommandList : * mut * mut :: std :: os :: raw :: c_void) -> HRESULT > , pub CreateProtectedResourceSession : :: std :: option :: Option < unsafe extern "C" fn (This : * mut ID3D12Device6 , pDesc : * const D3D12_PROTECTED_RESOURCE_SESSION_DESC , riid : * const IID , ppSession : * mut * mut :: std :: os :: raw :: c_void) -> HRESULT > , pub CreateCommittedResource1 : :: std :: option :: Option < unsafe extern "C" fn (This : * mut ID3D12Device6 , pHeapProperties : * const D3D12_HEAP_PROPERTIES , HeapFlags : D3D12_HEAP_FLAGS , pDesc : * const D3D12_RESOURCE_DESC , InitialResourceState : D3D12_RESOURCE_STATES , pOptimizedClearValue : * const D3D12_CLEAR_VALUE , pProtectedSession : * mut ID3D12ProtectedResourceSession , riidResource : * const IID , ppvResource : * mut * mut :: std :: os :: raw :: c_void) -> HRESULT > , pub CreateHeap1 : :: std :: option :: Option < unsafe extern "C" fn (This : * mut ID3D12Device6 , pDesc : * const D3D12_HEAP_DESC , pProtectedSession : * mut ID3D12ProtectedResourceSession , riid : * const IID , ppvHeap : * mut * mut :: std :: os :: raw :: c_void) -> HRESULT > , pub CreateReservedResource1 : :: std :: option :: Option < unsafe extern "C" fn (This : * mut ID3D12Device6 , pDesc : * const D3D12_RESOURCE_DESC , InitialState : D3D12_RESOURCE_STATES , pOptimizedClearValue : * const D3D12_CLEAR_VALUE , pProtectedSession : * mut ID3D12ProtectedResourceSession , riid : * const IID , ppvResource : * mut * mut :: std :: os :: raw :: c_void) -> HRESULT > , pub GetResourceAllocationInfo1 : :: std :: option :: Option < unsafe extern "C" fn (This : * mut ID3D12Device6 , RetVal : * mut D3D12_RESOURCE_ALLOCATION_INFO , visibleMask : UINT , numResourceDescs : UINT , pResourceDescs : * const D3D12_RESOURCE_DESC , pResourceAllocationInfo1 : * mut D3D12_RESOURCE_ALLOCATION_INFO1) -> * mut D3D12_RESOURCE_ALLOCATION_INFO > , pub CreateLifetimeTracker : :: std :: option :: Option < unsafe extern "C" fn (This : * mut ID3D12Device6 , pOwner : * mut ID3D12LifetimeOwner , riid : * const IID , ppvTracker : * mut * mut :: std :: os :: raw :: c_void) -> HRESULT > , pub RemoveDevice : :: std :: option :: Option < unsafe extern "C" fn (This : * mut ID3D12Device6) > , pub EnumerateMetaCommands : :: std :: option :: Option < unsafe extern "C" fn (This : * mut ID3D12Device6 , pNumMetaCommands : * mut UINT , pDescs : * mut D3D12_META_COMMAND_DESC) -> HRESULT > , pub EnumerateMetaCommandParameters : :: std :: option :: Option < unsafe extern "C" fn (This : * mut ID3D12Device6 , CommandId : * const GUID , Stage : D3D12_META_COMMAND_PARAMETER_STAGE , pTotalStructureSizeInBytes : * mut UINT , pParameterCount : * mut UINT , pParameterDescs : * mut D3D12_META_COMMAND_PARAMETER_DESC) -> HRESULT > , pub CreateMetaCommand : :: std :: option :: Option < unsafe extern "C" fn (This : * mut ID3D12Device6 , CommandId : * const GUID , NodeMask : UINT , pCreationParametersData : * const :: std :: os :: raw :: c_void , CreationParametersDataSizeInBytes : SIZE_T , riid : * const IID , ppMetaCommand : * mut * mut :: std :: os :: raw :: c_void) -> HRESULT > , pub CreateStateObject : :: std :: option :: Option < unsafe extern "C" fn (This : * mut ID3D12Device6 , pDesc : * const D3D12_STATE_OBJECT_DESC , riid : * const IID , ppStateObject : * mut * mut :: std :: os :: raw :: c_void) -> HRESULT > , pub GetRaytracingAccelerationStructurePrebuildInfo : :: std :: option :: Option < unsafe extern "C" fn (This : * mut ID3D12Device6 , pDesc : * const D3D12_BUILD_RAYTRACING_ACCELERATION_STRUCTURE_INPUTS , pInfo : * mut D3D12_RAYTRACING_ACCELERATION_STRUCTURE_PREBUILD_INFO) > , pub CheckDriverMatchingIdentifier : :: std :: option :: Option < unsafe extern "C" fn (This : * mut ID3D12Device6 , SerializedDataType : D3D12_SERIALIZED_DATA_TYPE , pIdentifierToCheck : * const D3D12_SERIALIZED_DATA_DRIVER_MATCHING_IDENTIFIER) -> D3D12_DRIVER_MATCHING_IDENTIFIER_STATUS > , pub SetBackgroundProcessingMode : :: std :: option :: Option < unsafe extern "C" fn (This : * mut ID3D12Device6 , Mode : D3D12_BACKGROUND_PROCESSING_MODE , MeasurementsAction : D3D12_MEASUREMENTS_ACTION , hEventToSignalUponCompletion : HANDLE , pbFurtherMeasurementsDesired : * mut BOOL) -> HRESULT > , }
14112#[repr(C)]
14113#[derive(Debug, Copy, Clone, Hash, PartialOrd, Ord, PartialEq, Eq)]
14114pub struct ID3D12Device6 {
14115 pub lpVtbl: *mut ID3D12Device6Vtbl,
14116}
14117impl Default for ID3D12Device6 {
14118 fn default() -> Self {
14119 let mut s = ::std::mem::MaybeUninit::<Self>::uninit();
14120 unsafe {
14121 ::std::ptr::write_bytes(s.as_mut_ptr(), 0, 1);
14122 s.assume_init()
14123 }
14124 }
14125}
14126extern "C" {
14127 pub static D3D12_PROTECTED_RESOURCES_SESSION_HARDWARE_PROTECTED: GUID;
14128}
14129#[repr(C)]
14130#[derive(Debug, Default, Copy, Clone, Hash, PartialOrd, Ord, PartialEq, Eq)]
14131pub struct D3D12_FEATURE_DATA_PROTECTED_RESOURCE_SESSION_TYPE_COUNT {
14132 pub NodeIndex: UINT,
14133 pub Count: UINT,
14134}
14135#[repr(C)]
14136#[derive(Debug, Copy, Clone, Hash, PartialOrd, Ord, PartialEq, Eq)]
14137pub struct D3D12_FEATURE_DATA_PROTECTED_RESOURCE_SESSION_TYPES {
14138 pub NodeIndex: UINT,
14139 pub Count: UINT,
14140 pub pTypes: *mut GUID,
14141}
14142impl Default for D3D12_FEATURE_DATA_PROTECTED_RESOURCE_SESSION_TYPES {
14143 fn default() -> Self {
14144 let mut s = ::std::mem::MaybeUninit::<Self>::uninit();
14145 unsafe {
14146 ::std::ptr::write_bytes(s.as_mut_ptr(), 0, 1);
14147 s.assume_init()
14148 }
14149 }
14150}
14151#[repr(C)]
14152#[derive(Debug, Copy, Clone, Hash, PartialOrd, Ord, PartialEq, Eq)]
14153pub struct D3D12_PROTECTED_RESOURCE_SESSION_DESC1 {
14154 pub NodeMask: UINT,
14155 pub Flags: D3D12_PROTECTED_RESOURCE_SESSION_FLAGS,
14156 pub ProtectionType: GUID,
14157}
14158impl Default for D3D12_PROTECTED_RESOURCE_SESSION_DESC1 {
14159 fn default() -> Self {
14160 let mut s = ::std::mem::MaybeUninit::<Self>::uninit();
14161 unsafe {
14162 ::std::ptr::write_bytes(s.as_mut_ptr(), 0, 1);
14163 s.assume_init()
14164 }
14165 }
14166}
14167extern "C" {
14168 pub static IID_ID3D12ProtectedResourceSession1: IID;
14169}
14170#[repr(C)]
14171#[derive(Debug, Default, Copy, Clone, Hash, PartialOrd, Ord, PartialEq, Eq)]
14172pub struct ID3D12ProtectedResourceSession1Vtbl {
14173 pub QueryInterface: ::std::option::Option<
14174 unsafe extern "C" fn(
14175 This: *mut ID3D12ProtectedResourceSession1,
14176 riid: *const IID,
14177 ppvObject: *mut *mut ::std::os::raw::c_void,
14178 ) -> HRESULT,
14179 >,
14180 pub AddRef: ::std::option::Option<
14181 unsafe extern "C" fn(
14182 This: *mut ID3D12ProtectedResourceSession1,
14183 ) -> ULONG,
14184 >,
14185 pub Release: ::std::option::Option<
14186 unsafe extern "C" fn(
14187 This: *mut ID3D12ProtectedResourceSession1,
14188 ) -> ULONG,
14189 >,
14190 pub GetPrivateData: ::std::option::Option<
14191 unsafe extern "C" fn(
14192 This: *mut ID3D12ProtectedResourceSession1,
14193 guid: *const GUID,
14194 pDataSize: *mut UINT,
14195 pData: *mut ::std::os::raw::c_void,
14196 ) -> HRESULT,
14197 >,
14198 pub SetPrivateData: ::std::option::Option<
14199 unsafe extern "C" fn(
14200 This: *mut ID3D12ProtectedResourceSession1,
14201 guid: *const GUID,
14202 DataSize: UINT,
14203 pData: *const ::std::os::raw::c_void,
14204 ) -> HRESULT,
14205 >,
14206 pub SetPrivateDataInterface: ::std::option::Option<
14207 unsafe extern "C" fn(
14208 This: *mut ID3D12ProtectedResourceSession1,
14209 guid: *const GUID,
14210 pData: *const IUnknown,
14211 ) -> HRESULT,
14212 >,
14213 pub SetName: ::std::option::Option<
14214 unsafe extern "C" fn(
14215 This: *mut ID3D12ProtectedResourceSession1,
14216 Name: LPCWSTR,
14217 ) -> HRESULT,
14218 >,
14219 pub GetDevice: ::std::option::Option<
14220 unsafe extern "C" fn(
14221 This: *mut ID3D12ProtectedResourceSession1,
14222 riid: *const IID,
14223 ppvDevice: *mut *mut ::std::os::raw::c_void,
14224 ) -> HRESULT,
14225 >,
14226 pub GetStatusFence: ::std::option::Option<
14227 unsafe extern "C" fn(
14228 This: *mut ID3D12ProtectedResourceSession1,
14229 riid: *const IID,
14230 ppFence: *mut *mut ::std::os::raw::c_void,
14231 ) -> HRESULT,
14232 >,
14233 pub GetSessionStatus: ::std::option::Option<
14234 unsafe extern "C" fn(
14235 This: *mut ID3D12ProtectedResourceSession1,
14236 ) -> D3D12_PROTECTED_SESSION_STATUS,
14237 >,
14238 pub GetDesc: ::std::option::Option<
14239 unsafe extern "C" fn(
14240 This: *mut ID3D12ProtectedResourceSession1,
14241 RetVal: *mut D3D12_PROTECTED_RESOURCE_SESSION_DESC,
14242 )
14243 -> *mut D3D12_PROTECTED_RESOURCE_SESSION_DESC,
14244 >,
14245 pub GetDesc1: ::std::option::Option<
14246 unsafe extern "C" fn(
14247 This: *mut ID3D12ProtectedResourceSession1,
14248 RetVal: *mut D3D12_PROTECTED_RESOURCE_SESSION_DESC1,
14249 )
14250 -> *mut D3D12_PROTECTED_RESOURCE_SESSION_DESC1,
14251 >,
14252}
14253#[repr(C)]
14254#[derive(Debug, Copy, Clone, Hash, PartialOrd, Ord, PartialEq, Eq)]
14255pub struct ID3D12ProtectedResourceSession1 {
14256 pub lpVtbl: *mut ID3D12ProtectedResourceSession1Vtbl,
14257}
14258impl Default for ID3D12ProtectedResourceSession1 {
14259 fn default() -> Self {
14260 let mut s = ::std::mem::MaybeUninit::<Self>::uninit();
14261 unsafe {
14262 ::std::ptr::write_bytes(s.as_mut_ptr(), 0, 1);
14263 s.assume_init()
14264 }
14265 }
14266}
14267extern "C" {
14268 pub static IID_ID3D12Device7: IID;
14269}
14270#[repr(C)]
14271#[derive(Debug, Default, Copy, Clone, Hash, PartialOrd, Ord, PartialEq, Eq)]
14272pub struct ID3D12Device7Vtbl { pub QueryInterface : :: std :: option :: Option < unsafe extern "C" fn (This : * mut ID3D12Device7 , riid : * const IID , ppvObject : * mut * mut :: std :: os :: raw :: c_void) -> HRESULT > , pub AddRef : :: std :: option :: Option < unsafe extern "C" fn (This : * mut ID3D12Device7) -> ULONG > , pub Release : :: std :: option :: Option < unsafe extern "C" fn (This : * mut ID3D12Device7) -> ULONG > , pub GetPrivateData : :: std :: option :: Option < unsafe extern "C" fn (This : * mut ID3D12Device7 , guid : * const GUID , pDataSize : * mut UINT , pData : * mut :: std :: os :: raw :: c_void) -> HRESULT > , pub SetPrivateData : :: std :: option :: Option < unsafe extern "C" fn (This : * mut ID3D12Device7 , guid : * const GUID , DataSize : UINT , pData : * const :: std :: os :: raw :: c_void) -> HRESULT > , pub SetPrivateDataInterface : :: std :: option :: Option < unsafe extern "C" fn (This : * mut ID3D12Device7 , guid : * const GUID , pData : * const IUnknown) -> HRESULT > , pub SetName : :: std :: option :: Option < unsafe extern "C" fn (This : * mut ID3D12Device7 , Name : LPCWSTR) -> HRESULT > , pub GetNodeCount : :: std :: option :: Option < unsafe extern "C" fn (This : * mut ID3D12Device7) -> UINT > , pub CreateCommandQueue : :: std :: option :: Option < unsafe extern "C" fn (This : * mut ID3D12Device7 , pDesc : * const D3D12_COMMAND_QUEUE_DESC , riid : * const IID , ppCommandQueue : * mut * mut :: std :: os :: raw :: c_void) -> HRESULT > , pub CreateCommandAllocator : :: std :: option :: Option < unsafe extern "C" fn (This : * mut ID3D12Device7 , type_ : D3D12_COMMAND_LIST_TYPE , riid : * const IID , ppCommandAllocator : * mut * mut :: std :: os :: raw :: c_void) -> HRESULT > , pub CreateGraphicsPipelineState : :: std :: option :: Option < unsafe extern "C" fn (This : * mut ID3D12Device7 , pDesc : * const D3D12_GRAPHICS_PIPELINE_STATE_DESC , riid : * const IID , ppPipelineState : * mut * mut :: std :: os :: raw :: c_void) -> HRESULT > , pub CreateComputePipelineState : :: std :: option :: Option < unsafe extern "C" fn (This : * mut ID3D12Device7 , pDesc : * const D3D12_COMPUTE_PIPELINE_STATE_DESC , riid : * const IID , ppPipelineState : * mut * mut :: std :: os :: raw :: c_void) -> HRESULT > , pub CreateCommandList : :: std :: option :: Option < unsafe extern "C" fn (This : * mut ID3D12Device7 , nodeMask : UINT , type_ : D3D12_COMMAND_LIST_TYPE , pCommandAllocator : * mut ID3D12CommandAllocator , pInitialState : * mut ID3D12PipelineState , riid : * const IID , ppCommandList : * mut * mut :: std :: os :: raw :: c_void) -> HRESULT > , pub CheckFeatureSupport : :: std :: option :: Option < unsafe extern "C" fn (This : * mut ID3D12Device7 , Feature : D3D12_FEATURE , pFeatureSupportData : * mut :: std :: os :: raw :: c_void , FeatureSupportDataSize : UINT) -> HRESULT > , pub CreateDescriptorHeap : :: std :: option :: Option < unsafe extern "C" fn (This : * mut ID3D12Device7 , pDescriptorHeapDesc : * const D3D12_DESCRIPTOR_HEAP_DESC , riid : * const IID , ppvHeap : * mut * mut :: std :: os :: raw :: c_void) -> HRESULT > , pub GetDescriptorHandleIncrementSize : :: std :: option :: Option < unsafe extern "C" fn (This : * mut ID3D12Device7 , DescriptorHeapType : D3D12_DESCRIPTOR_HEAP_TYPE) -> UINT > , pub CreateRootSignature : :: std :: option :: Option < unsafe extern "C" fn (This : * mut ID3D12Device7 , nodeMask : UINT , pBlobWithRootSignature : * const :: std :: os :: raw :: c_void , blobLengthInBytes : SIZE_T , riid : * const IID , ppvRootSignature : * mut * mut :: std :: os :: raw :: c_void) -> HRESULT > , pub CreateConstantBufferView : :: std :: option :: Option < unsafe extern "C" fn (This : * mut ID3D12Device7 , pDesc : * const D3D12_CONSTANT_BUFFER_VIEW_DESC , DestDescriptor : D3D12_CPU_DESCRIPTOR_HANDLE) > , pub CreateShaderResourceView : :: std :: option :: Option < unsafe extern "C" fn (This : * mut ID3D12Device7 , pResource : * mut ID3D12Resource , pDesc : * const D3D12_SHADER_RESOURCE_VIEW_DESC , DestDescriptor : D3D12_CPU_DESCRIPTOR_HANDLE) > , pub CreateUnorderedAccessView : :: std :: option :: Option < unsafe extern "C" fn (This : * mut ID3D12Device7 , pResource : * mut ID3D12Resource , pCounterResource : * mut ID3D12Resource , pDesc : * const D3D12_UNORDERED_ACCESS_VIEW_DESC , DestDescriptor : D3D12_CPU_DESCRIPTOR_HANDLE) > , pub CreateRenderTargetView : :: std :: option :: Option < unsafe extern "C" fn (This : * mut ID3D12Device7 , pResource : * mut ID3D12Resource , pDesc : * const D3D12_RENDER_TARGET_VIEW_DESC , DestDescriptor : D3D12_CPU_DESCRIPTOR_HANDLE) > , pub CreateDepthStencilView : :: std :: option :: Option < unsafe extern "C" fn (This : * mut ID3D12Device7 , pResource : * mut ID3D12Resource , pDesc : * const D3D12_DEPTH_STENCIL_VIEW_DESC , DestDescriptor : D3D12_CPU_DESCRIPTOR_HANDLE) > , pub CreateSampler : :: std :: option :: Option < unsafe extern "C" fn (This : * mut ID3D12Device7 , pDesc : * const D3D12_SAMPLER_DESC , DestDescriptor : D3D12_CPU_DESCRIPTOR_HANDLE) > , pub CopyDescriptors : :: std :: option :: Option < unsafe extern "C" fn (This : * mut ID3D12Device7 , NumDestDescriptorRanges : UINT , pDestDescriptorRangeStarts : * const D3D12_CPU_DESCRIPTOR_HANDLE , pDestDescriptorRangeSizes : * const UINT , NumSrcDescriptorRanges : UINT , pSrcDescriptorRangeStarts : * const D3D12_CPU_DESCRIPTOR_HANDLE , pSrcDescriptorRangeSizes : * const UINT , DescriptorHeapsType : D3D12_DESCRIPTOR_HEAP_TYPE) > , pub CopyDescriptorsSimple : :: std :: option :: Option < unsafe extern "C" fn (This : * mut ID3D12Device7 , NumDescriptors : UINT , DestDescriptorRangeStart : D3D12_CPU_DESCRIPTOR_HANDLE , SrcDescriptorRangeStart : D3D12_CPU_DESCRIPTOR_HANDLE , DescriptorHeapsType : D3D12_DESCRIPTOR_HEAP_TYPE) > , pub GetResourceAllocationInfo : :: std :: option :: Option < unsafe extern "C" fn (This : * mut ID3D12Device7 , RetVal : * mut D3D12_RESOURCE_ALLOCATION_INFO , visibleMask : UINT , numResourceDescs : UINT , pResourceDescs : * const D3D12_RESOURCE_DESC) -> * mut D3D12_RESOURCE_ALLOCATION_INFO > , pub GetCustomHeapProperties : :: std :: option :: Option < unsafe extern "C" fn (This : * mut ID3D12Device7 , RetVal : * mut D3D12_HEAP_PROPERTIES , nodeMask : UINT , heapType : D3D12_HEAP_TYPE) -> * mut D3D12_HEAP_PROPERTIES > , pub CreateCommittedResource : :: std :: option :: Option < unsafe extern "C" fn (This : * mut ID3D12Device7 , pHeapProperties : * const D3D12_HEAP_PROPERTIES , HeapFlags : D3D12_HEAP_FLAGS , pDesc : * const D3D12_RESOURCE_DESC , InitialResourceState : D3D12_RESOURCE_STATES , pOptimizedClearValue : * const D3D12_CLEAR_VALUE , riidResource : * const IID , ppvResource : * mut * mut :: std :: os :: raw :: c_void) -> HRESULT > , pub CreateHeap : :: std :: option :: Option < unsafe extern "C" fn (This : * mut ID3D12Device7 , pDesc : * const D3D12_HEAP_DESC , riid : * const IID , ppvHeap : * mut * mut :: std :: os :: raw :: c_void) -> HRESULT > , pub CreatePlacedResource : :: std :: option :: Option < unsafe extern "C" fn (This : * mut ID3D12Device7 , pHeap : * mut ID3D12Heap , HeapOffset : UINT64 , pDesc : * const D3D12_RESOURCE_DESC , InitialState : D3D12_RESOURCE_STATES , pOptimizedClearValue : * const D3D12_CLEAR_VALUE , riid : * const IID , ppvResource : * mut * mut :: std :: os :: raw :: c_void) -> HRESULT > , pub CreateReservedResource : :: std :: option :: Option < unsafe extern "C" fn (This : * mut ID3D12Device7 , pDesc : * const D3D12_RESOURCE_DESC , InitialState : D3D12_RESOURCE_STATES , pOptimizedClearValue : * const D3D12_CLEAR_VALUE , riid : * const IID , ppvResource : * mut * mut :: std :: os :: raw :: c_void) -> HRESULT > , pub CreateSharedHandle : :: std :: option :: Option < unsafe extern "C" fn (This : * mut ID3D12Device7 , pObject : * mut ID3D12DeviceChild , pAttributes : * const SECURITY_ATTRIBUTES , Access : DWORD , Name : LPCWSTR , pHandle : * mut HANDLE) -> HRESULT > , pub OpenSharedHandle : :: std :: option :: Option < unsafe extern "C" fn (This : * mut ID3D12Device7 , NTHandle : HANDLE , riid : * const IID , ppvObj : * mut * mut :: std :: os :: raw :: c_void) -> HRESULT > , pub OpenSharedHandleByName : :: std :: option :: Option < unsafe extern "C" fn (This : * mut ID3D12Device7 , Name : LPCWSTR , Access : DWORD , pNTHandle : * mut HANDLE) -> HRESULT > , pub MakeResident : :: std :: option :: Option < unsafe extern "C" fn (This : * mut ID3D12Device7 , NumObjects : UINT , ppObjects : * const * mut ID3D12Pageable) -> HRESULT > , pub Evict : :: std :: option :: Option < unsafe extern "C" fn (This : * mut ID3D12Device7 , NumObjects : UINT , ppObjects : * const * mut ID3D12Pageable) -> HRESULT > , pub CreateFence : :: std :: option :: Option < unsafe extern "C" fn (This : * mut ID3D12Device7 , InitialValue : UINT64 , Flags : D3D12_FENCE_FLAGS , riid : * const IID , ppFence : * mut * mut :: std :: os :: raw :: c_void) -> HRESULT > , pub GetDeviceRemovedReason : :: std :: option :: Option < unsafe extern "C" fn (This : * mut ID3D12Device7) -> HRESULT > , pub GetCopyableFootprints : :: std :: option :: Option < unsafe extern "C" fn (This : * mut ID3D12Device7 , pResourceDesc : * const D3D12_RESOURCE_DESC , FirstSubresource : UINT , NumSubresources : UINT , BaseOffset : UINT64 , pLayouts : * mut D3D12_PLACED_SUBRESOURCE_FOOTPRINT , pNumRows : * mut UINT , pRowSizeInBytes : * mut UINT64 , pTotalBytes : * mut UINT64) > , pub CreateQueryHeap : :: std :: option :: Option < unsafe extern "C" fn (This : * mut ID3D12Device7 , pDesc : * const D3D12_QUERY_HEAP_DESC , riid : * const IID , ppvHeap : * mut * mut :: std :: os :: raw :: c_void) -> HRESULT > , pub SetStablePowerState : :: std :: option :: Option < unsafe extern "C" fn (This : * mut ID3D12Device7 , Enable : BOOL) -> HRESULT > , pub CreateCommandSignature : :: std :: option :: Option < unsafe extern "C" fn (This : * mut ID3D12Device7 , pDesc : * const D3D12_COMMAND_SIGNATURE_DESC , pRootSignature : * mut ID3D12RootSignature , riid : * const IID , ppvCommandSignature : * mut * mut :: std :: os :: raw :: c_void) -> HRESULT > , pub GetResourceTiling : :: std :: option :: Option < unsafe extern "C" fn (This : * mut ID3D12Device7 , pTiledResource : * mut ID3D12Resource , pNumTilesForEntireResource : * mut UINT , pPackedMipDesc : * mut D3D12_PACKED_MIP_INFO , pStandardTileShapeForNonPackedMips : * mut D3D12_TILE_SHAPE , pNumSubresourceTilings : * mut UINT , FirstSubresourceTilingToGet : UINT , pSubresourceTilingsForNonPackedMips : * mut D3D12_SUBRESOURCE_TILING) > , pub GetAdapterLuid : :: std :: option :: Option < unsafe extern "C" fn (This : * mut ID3D12Device7 , RetVal : * mut LUID) -> * mut LUID > , pub CreatePipelineLibrary : :: std :: option :: Option < unsafe extern "C" fn (This : * mut ID3D12Device7 , pLibraryBlob : * const :: std :: os :: raw :: c_void , BlobLength : SIZE_T , riid : * const IID , ppPipelineLibrary : * mut * mut :: std :: os :: raw :: c_void) -> HRESULT > , pub SetEventOnMultipleFenceCompletion : :: std :: option :: Option < unsafe extern "C" fn (This : * mut ID3D12Device7 , ppFences : * const * mut ID3D12Fence , pFenceValues : * const UINT64 , NumFences : UINT , Flags : D3D12_MULTIPLE_FENCE_WAIT_FLAGS , hEvent : HANDLE) -> HRESULT > , pub SetResidencyPriority : :: std :: option :: Option < unsafe extern "C" fn (This : * mut ID3D12Device7 , NumObjects : UINT , ppObjects : * const * mut ID3D12Pageable , pPriorities : * const D3D12_RESIDENCY_PRIORITY) -> HRESULT > , pub CreatePipelineState : :: std :: option :: Option < unsafe extern "C" fn (This : * mut ID3D12Device7 , pDesc : * const D3D12_PIPELINE_STATE_STREAM_DESC , riid : * const IID , ppPipelineState : * mut * mut :: std :: os :: raw :: c_void) -> HRESULT > , pub OpenExistingHeapFromAddress : :: std :: option :: Option < unsafe extern "C" fn (This : * mut ID3D12Device7 , pAddress : * const :: std :: os :: raw :: c_void , riid : * const IID , ppvHeap : * mut * mut :: std :: os :: raw :: c_void) -> HRESULT > , pub OpenExistingHeapFromFileMapping : :: std :: option :: Option < unsafe extern "C" fn (This : * mut ID3D12Device7 , hFileMapping : HANDLE , riid : * const IID , ppvHeap : * mut * mut :: std :: os :: raw :: c_void) -> HRESULT > , pub EnqueueMakeResident : :: std :: option :: Option < unsafe extern "C" fn (This : * mut ID3D12Device7 , Flags : D3D12_RESIDENCY_FLAGS , NumObjects : UINT , ppObjects : * const * mut ID3D12Pageable , pFenceToSignal : * mut ID3D12Fence , FenceValueToSignal : UINT64) -> HRESULT > , pub CreateCommandList1 : :: std :: option :: Option < unsafe extern "C" fn (This : * mut ID3D12Device7 , nodeMask : UINT , type_ : D3D12_COMMAND_LIST_TYPE , flags : D3D12_COMMAND_LIST_FLAGS , riid : * const IID , ppCommandList : * mut * mut :: std :: os :: raw :: c_void) -> HRESULT > , pub CreateProtectedResourceSession : :: std :: option :: Option < unsafe extern "C" fn (This : * mut ID3D12Device7 , pDesc : * const D3D12_PROTECTED_RESOURCE_SESSION_DESC , riid : * const IID , ppSession : * mut * mut :: std :: os :: raw :: c_void) -> HRESULT > , pub CreateCommittedResource1 : :: std :: option :: Option < unsafe extern "C" fn (This : * mut ID3D12Device7 , pHeapProperties : * const D3D12_HEAP_PROPERTIES , HeapFlags : D3D12_HEAP_FLAGS , pDesc : * const D3D12_RESOURCE_DESC , InitialResourceState : D3D12_RESOURCE_STATES , pOptimizedClearValue : * const D3D12_CLEAR_VALUE , pProtectedSession : * mut ID3D12ProtectedResourceSession , riidResource : * const IID , ppvResource : * mut * mut :: std :: os :: raw :: c_void) -> HRESULT > , pub CreateHeap1 : :: std :: option :: Option < unsafe extern "C" fn (This : * mut ID3D12Device7 , pDesc : * const D3D12_HEAP_DESC , pProtectedSession : * mut ID3D12ProtectedResourceSession , riid : * const IID , ppvHeap : * mut * mut :: std :: os :: raw :: c_void) -> HRESULT > , pub CreateReservedResource1 : :: std :: option :: Option < unsafe extern "C" fn (This : * mut ID3D12Device7 , pDesc : * const D3D12_RESOURCE_DESC , InitialState : D3D12_RESOURCE_STATES , pOptimizedClearValue : * const D3D12_CLEAR_VALUE , pProtectedSession : * mut ID3D12ProtectedResourceSession , riid : * const IID , ppvResource : * mut * mut :: std :: os :: raw :: c_void) -> HRESULT > , pub GetResourceAllocationInfo1 : :: std :: option :: Option < unsafe extern "C" fn (This : * mut ID3D12Device7 , RetVal : * mut D3D12_RESOURCE_ALLOCATION_INFO , visibleMask : UINT , numResourceDescs : UINT , pResourceDescs : * const D3D12_RESOURCE_DESC , pResourceAllocationInfo1 : * mut D3D12_RESOURCE_ALLOCATION_INFO1) -> * mut D3D12_RESOURCE_ALLOCATION_INFO > , pub CreateLifetimeTracker : :: std :: option :: Option < unsafe extern "C" fn (This : * mut ID3D12Device7 , pOwner : * mut ID3D12LifetimeOwner , riid : * const IID , ppvTracker : * mut * mut :: std :: os :: raw :: c_void) -> HRESULT > , pub RemoveDevice : :: std :: option :: Option < unsafe extern "C" fn (This : * mut ID3D12Device7) > , pub EnumerateMetaCommands : :: std :: option :: Option < unsafe extern "C" fn (This : * mut ID3D12Device7 , pNumMetaCommands : * mut UINT , pDescs : * mut D3D12_META_COMMAND_DESC) -> HRESULT > , pub EnumerateMetaCommandParameters : :: std :: option :: Option < unsafe extern "C" fn (This : * mut ID3D12Device7 , CommandId : * const GUID , Stage : D3D12_META_COMMAND_PARAMETER_STAGE , pTotalStructureSizeInBytes : * mut UINT , pParameterCount : * mut UINT , pParameterDescs : * mut D3D12_META_COMMAND_PARAMETER_DESC) -> HRESULT > , pub CreateMetaCommand : :: std :: option :: Option < unsafe extern "C" fn (This : * mut ID3D12Device7 , CommandId : * const GUID , NodeMask : UINT , pCreationParametersData : * const :: std :: os :: raw :: c_void , CreationParametersDataSizeInBytes : SIZE_T , riid : * const IID , ppMetaCommand : * mut * mut :: std :: os :: raw :: c_void) -> HRESULT > , pub CreateStateObject : :: std :: option :: Option < unsafe extern "C" fn (This : * mut ID3D12Device7 , pDesc : * const D3D12_STATE_OBJECT_DESC , riid : * const IID , ppStateObject : * mut * mut :: std :: os :: raw :: c_void) -> HRESULT > , pub GetRaytracingAccelerationStructurePrebuildInfo : :: std :: option :: Option < unsafe extern "C" fn (This : * mut ID3D12Device7 , pDesc : * const D3D12_BUILD_RAYTRACING_ACCELERATION_STRUCTURE_INPUTS , pInfo : * mut D3D12_RAYTRACING_ACCELERATION_STRUCTURE_PREBUILD_INFO) > , pub CheckDriverMatchingIdentifier : :: std :: option :: Option < unsafe extern "C" fn (This : * mut ID3D12Device7 , SerializedDataType : D3D12_SERIALIZED_DATA_TYPE , pIdentifierToCheck : * const D3D12_SERIALIZED_DATA_DRIVER_MATCHING_IDENTIFIER) -> D3D12_DRIVER_MATCHING_IDENTIFIER_STATUS > , pub SetBackgroundProcessingMode : :: std :: option :: Option < unsafe extern "C" fn (This : * mut ID3D12Device7 , Mode : D3D12_BACKGROUND_PROCESSING_MODE , MeasurementsAction : D3D12_MEASUREMENTS_ACTION , hEventToSignalUponCompletion : HANDLE , pbFurtherMeasurementsDesired : * mut BOOL) -> HRESULT > , pub AddToStateObject : :: std :: option :: Option < unsafe extern "C" fn (This : * mut ID3D12Device7 , pAddition : * const D3D12_STATE_OBJECT_DESC , pStateObjectToGrowFrom : * mut ID3D12StateObject , riid : * const IID , ppNewStateObject : * mut * mut :: std :: os :: raw :: c_void) -> HRESULT > , pub CreateProtectedResourceSession1 : :: std :: option :: Option < unsafe extern "C" fn (This : * mut ID3D12Device7 , pDesc : * const D3D12_PROTECTED_RESOURCE_SESSION_DESC1 , riid : * const IID , ppSession : * mut * mut :: std :: os :: raw :: c_void) -> HRESULT > , }
14273#[repr(C)]
14274#[derive(Debug, Copy, Clone, Hash, PartialOrd, Ord, PartialEq, Eq)]
14275pub struct ID3D12Device7 {
14276 pub lpVtbl: *mut ID3D12Device7Vtbl,
14277}
14278impl Default for ID3D12Device7 {
14279 fn default() -> Self {
14280 let mut s = ::std::mem::MaybeUninit::<Self>::uninit();
14281 unsafe {
14282 ::std::ptr::write_bytes(s.as_mut_ptr(), 0, 1);
14283 s.assume_init()
14284 }
14285 }
14286}
14287extern "C" {
14288 pub static IID_ID3D12Device8: IID;
14289}
14290#[repr(C)]
14291#[derive(Debug, Default, Copy, Clone, Hash, PartialOrd, Ord, PartialEq, Eq)]
14292pub struct ID3D12Device8Vtbl { pub QueryInterface : :: std :: option :: Option < unsafe extern "C" fn (This : * mut ID3D12Device8 , riid : * const IID , ppvObject : * mut * mut :: std :: os :: raw :: c_void) -> HRESULT > , pub AddRef : :: std :: option :: Option < unsafe extern "C" fn (This : * mut ID3D12Device8) -> ULONG > , pub Release : :: std :: option :: Option < unsafe extern "C" fn (This : * mut ID3D12Device8) -> ULONG > , pub GetPrivateData : :: std :: option :: Option < unsafe extern "C" fn (This : * mut ID3D12Device8 , guid : * const GUID , pDataSize : * mut UINT , pData : * mut :: std :: os :: raw :: c_void) -> HRESULT > , pub SetPrivateData : :: std :: option :: Option < unsafe extern "C" fn (This : * mut ID3D12Device8 , guid : * const GUID , DataSize : UINT , pData : * const :: std :: os :: raw :: c_void) -> HRESULT > , pub SetPrivateDataInterface : :: std :: option :: Option < unsafe extern "C" fn (This : * mut ID3D12Device8 , guid : * const GUID , pData : * const IUnknown) -> HRESULT > , pub SetName : :: std :: option :: Option < unsafe extern "C" fn (This : * mut ID3D12Device8 , Name : LPCWSTR) -> HRESULT > , pub GetNodeCount : :: std :: option :: Option < unsafe extern "C" fn (This : * mut ID3D12Device8) -> UINT > , pub CreateCommandQueue : :: std :: option :: Option < unsafe extern "C" fn (This : * mut ID3D12Device8 , pDesc : * const D3D12_COMMAND_QUEUE_DESC , riid : * const IID , ppCommandQueue : * mut * mut :: std :: os :: raw :: c_void) -> HRESULT > , pub CreateCommandAllocator : :: std :: option :: Option < unsafe extern "C" fn (This : * mut ID3D12Device8 , type_ : D3D12_COMMAND_LIST_TYPE , riid : * const IID , ppCommandAllocator : * mut * mut :: std :: os :: raw :: c_void) -> HRESULT > , pub CreateGraphicsPipelineState : :: std :: option :: Option < unsafe extern "C" fn (This : * mut ID3D12Device8 , pDesc : * const D3D12_GRAPHICS_PIPELINE_STATE_DESC , riid : * const IID , ppPipelineState : * mut * mut :: std :: os :: raw :: c_void) -> HRESULT > , pub CreateComputePipelineState : :: std :: option :: Option < unsafe extern "C" fn (This : * mut ID3D12Device8 , pDesc : * const D3D12_COMPUTE_PIPELINE_STATE_DESC , riid : * const IID , ppPipelineState : * mut * mut :: std :: os :: raw :: c_void) -> HRESULT > , pub CreateCommandList : :: std :: option :: Option < unsafe extern "C" fn (This : * mut ID3D12Device8 , nodeMask : UINT , type_ : D3D12_COMMAND_LIST_TYPE , pCommandAllocator : * mut ID3D12CommandAllocator , pInitialState : * mut ID3D12PipelineState , riid : * const IID , ppCommandList : * mut * mut :: std :: os :: raw :: c_void) -> HRESULT > , pub CheckFeatureSupport : :: std :: option :: Option < unsafe extern "C" fn (This : * mut ID3D12Device8 , Feature : D3D12_FEATURE , pFeatureSupportData : * mut :: std :: os :: raw :: c_void , FeatureSupportDataSize : UINT) -> HRESULT > , pub CreateDescriptorHeap : :: std :: option :: Option < unsafe extern "C" fn (This : * mut ID3D12Device8 , pDescriptorHeapDesc : * const D3D12_DESCRIPTOR_HEAP_DESC , riid : * const IID , ppvHeap : * mut * mut :: std :: os :: raw :: c_void) -> HRESULT > , pub GetDescriptorHandleIncrementSize : :: std :: option :: Option < unsafe extern "C" fn (This : * mut ID3D12Device8 , DescriptorHeapType : D3D12_DESCRIPTOR_HEAP_TYPE) -> UINT > , pub CreateRootSignature : :: std :: option :: Option < unsafe extern "C" fn (This : * mut ID3D12Device8 , nodeMask : UINT , pBlobWithRootSignature : * const :: std :: os :: raw :: c_void , blobLengthInBytes : SIZE_T , riid : * const IID , ppvRootSignature : * mut * mut :: std :: os :: raw :: c_void) -> HRESULT > , pub CreateConstantBufferView : :: std :: option :: Option < unsafe extern "C" fn (This : * mut ID3D12Device8 , pDesc : * const D3D12_CONSTANT_BUFFER_VIEW_DESC , DestDescriptor : D3D12_CPU_DESCRIPTOR_HANDLE) > , pub CreateShaderResourceView : :: std :: option :: Option < unsafe extern "C" fn (This : * mut ID3D12Device8 , pResource : * mut ID3D12Resource , pDesc : * const D3D12_SHADER_RESOURCE_VIEW_DESC , DestDescriptor : D3D12_CPU_DESCRIPTOR_HANDLE) > , pub CreateUnorderedAccessView : :: std :: option :: Option < unsafe extern "C" fn (This : * mut ID3D12Device8 , pResource : * mut ID3D12Resource , pCounterResource : * mut ID3D12Resource , pDesc : * const D3D12_UNORDERED_ACCESS_VIEW_DESC , DestDescriptor : D3D12_CPU_DESCRIPTOR_HANDLE) > , pub CreateRenderTargetView : :: std :: option :: Option < unsafe extern "C" fn (This : * mut ID3D12Device8 , pResource : * mut ID3D12Resource , pDesc : * const D3D12_RENDER_TARGET_VIEW_DESC , DestDescriptor : D3D12_CPU_DESCRIPTOR_HANDLE) > , pub CreateDepthStencilView : :: std :: option :: Option < unsafe extern "C" fn (This : * mut ID3D12Device8 , pResource : * mut ID3D12Resource , pDesc : * const D3D12_DEPTH_STENCIL_VIEW_DESC , DestDescriptor : D3D12_CPU_DESCRIPTOR_HANDLE) > , pub CreateSampler : :: std :: option :: Option < unsafe extern "C" fn (This : * mut ID3D12Device8 , pDesc : * const D3D12_SAMPLER_DESC , DestDescriptor : D3D12_CPU_DESCRIPTOR_HANDLE) > , pub CopyDescriptors : :: std :: option :: Option < unsafe extern "C" fn (This : * mut ID3D12Device8 , NumDestDescriptorRanges : UINT , pDestDescriptorRangeStarts : * const D3D12_CPU_DESCRIPTOR_HANDLE , pDestDescriptorRangeSizes : * const UINT , NumSrcDescriptorRanges : UINT , pSrcDescriptorRangeStarts : * const D3D12_CPU_DESCRIPTOR_HANDLE , pSrcDescriptorRangeSizes : * const UINT , DescriptorHeapsType : D3D12_DESCRIPTOR_HEAP_TYPE) > , pub CopyDescriptorsSimple : :: std :: option :: Option < unsafe extern "C" fn (This : * mut ID3D12Device8 , NumDescriptors : UINT , DestDescriptorRangeStart : D3D12_CPU_DESCRIPTOR_HANDLE , SrcDescriptorRangeStart : D3D12_CPU_DESCRIPTOR_HANDLE , DescriptorHeapsType : D3D12_DESCRIPTOR_HEAP_TYPE) > , pub GetResourceAllocationInfo : :: std :: option :: Option < unsafe extern "C" fn (This : * mut ID3D12Device8 , RetVal : * mut D3D12_RESOURCE_ALLOCATION_INFO , visibleMask : UINT , numResourceDescs : UINT , pResourceDescs : * const D3D12_RESOURCE_DESC) -> * mut D3D12_RESOURCE_ALLOCATION_INFO > , pub GetCustomHeapProperties : :: std :: option :: Option < unsafe extern "C" fn (This : * mut ID3D12Device8 , RetVal : * mut D3D12_HEAP_PROPERTIES , nodeMask : UINT , heapType : D3D12_HEAP_TYPE) -> * mut D3D12_HEAP_PROPERTIES > , pub CreateCommittedResource : :: std :: option :: Option < unsafe extern "C" fn (This : * mut ID3D12Device8 , pHeapProperties : * const D3D12_HEAP_PROPERTIES , HeapFlags : D3D12_HEAP_FLAGS , pDesc : * const D3D12_RESOURCE_DESC , InitialResourceState : D3D12_RESOURCE_STATES , pOptimizedClearValue : * const D3D12_CLEAR_VALUE , riidResource : * const IID , ppvResource : * mut * mut :: std :: os :: raw :: c_void) -> HRESULT > , pub CreateHeap : :: std :: option :: Option < unsafe extern "C" fn (This : * mut ID3D12Device8 , pDesc : * const D3D12_HEAP_DESC , riid : * const IID , ppvHeap : * mut * mut :: std :: os :: raw :: c_void) -> HRESULT > , pub CreatePlacedResource : :: std :: option :: Option < unsafe extern "C" fn (This : * mut ID3D12Device8 , pHeap : * mut ID3D12Heap , HeapOffset : UINT64 , pDesc : * const D3D12_RESOURCE_DESC , InitialState : D3D12_RESOURCE_STATES , pOptimizedClearValue : * const D3D12_CLEAR_VALUE , riid : * const IID , ppvResource : * mut * mut :: std :: os :: raw :: c_void) -> HRESULT > , pub CreateReservedResource : :: std :: option :: Option < unsafe extern "C" fn (This : * mut ID3D12Device8 , pDesc : * const D3D12_RESOURCE_DESC , InitialState : D3D12_RESOURCE_STATES , pOptimizedClearValue : * const D3D12_CLEAR_VALUE , riid : * const IID , ppvResource : * mut * mut :: std :: os :: raw :: c_void) -> HRESULT > , pub CreateSharedHandle : :: std :: option :: Option < unsafe extern "C" fn (This : * mut ID3D12Device8 , pObject : * mut ID3D12DeviceChild , pAttributes : * const SECURITY_ATTRIBUTES , Access : DWORD , Name : LPCWSTR , pHandle : * mut HANDLE) -> HRESULT > , pub OpenSharedHandle : :: std :: option :: Option < unsafe extern "C" fn (This : * mut ID3D12Device8 , NTHandle : HANDLE , riid : * const IID , ppvObj : * mut * mut :: std :: os :: raw :: c_void) -> HRESULT > , pub OpenSharedHandleByName : :: std :: option :: Option < unsafe extern "C" fn (This : * mut ID3D12Device8 , Name : LPCWSTR , Access : DWORD , pNTHandle : * mut HANDLE) -> HRESULT > , pub MakeResident : :: std :: option :: Option < unsafe extern "C" fn (This : * mut ID3D12Device8 , NumObjects : UINT , ppObjects : * const * mut ID3D12Pageable) -> HRESULT > , pub Evict : :: std :: option :: Option < unsafe extern "C" fn (This : * mut ID3D12Device8 , NumObjects : UINT , ppObjects : * const * mut ID3D12Pageable) -> HRESULT > , pub CreateFence : :: std :: option :: Option < unsafe extern "C" fn (This : * mut ID3D12Device8 , InitialValue : UINT64 , Flags : D3D12_FENCE_FLAGS , riid : * const IID , ppFence : * mut * mut :: std :: os :: raw :: c_void) -> HRESULT > , pub GetDeviceRemovedReason : :: std :: option :: Option < unsafe extern "C" fn (This : * mut ID3D12Device8) -> HRESULT > , pub GetCopyableFootprints : :: std :: option :: Option < unsafe extern "C" fn (This : * mut ID3D12Device8 , pResourceDesc : * const D3D12_RESOURCE_DESC , FirstSubresource : UINT , NumSubresources : UINT , BaseOffset : UINT64 , pLayouts : * mut D3D12_PLACED_SUBRESOURCE_FOOTPRINT , pNumRows : * mut UINT , pRowSizeInBytes : * mut UINT64 , pTotalBytes : * mut UINT64) > , pub CreateQueryHeap : :: std :: option :: Option < unsafe extern "C" fn (This : * mut ID3D12Device8 , pDesc : * const D3D12_QUERY_HEAP_DESC , riid : * const IID , ppvHeap : * mut * mut :: std :: os :: raw :: c_void) -> HRESULT > , pub SetStablePowerState : :: std :: option :: Option < unsafe extern "C" fn (This : * mut ID3D12Device8 , Enable : BOOL) -> HRESULT > , pub CreateCommandSignature : :: std :: option :: Option < unsafe extern "C" fn (This : * mut ID3D12Device8 , pDesc : * const D3D12_COMMAND_SIGNATURE_DESC , pRootSignature : * mut ID3D12RootSignature , riid : * const IID , ppvCommandSignature : * mut * mut :: std :: os :: raw :: c_void) -> HRESULT > , pub GetResourceTiling : :: std :: option :: Option < unsafe extern "C" fn (This : * mut ID3D12Device8 , pTiledResource : * mut ID3D12Resource , pNumTilesForEntireResource : * mut UINT , pPackedMipDesc : * mut D3D12_PACKED_MIP_INFO , pStandardTileShapeForNonPackedMips : * mut D3D12_TILE_SHAPE , pNumSubresourceTilings : * mut UINT , FirstSubresourceTilingToGet : UINT , pSubresourceTilingsForNonPackedMips : * mut D3D12_SUBRESOURCE_TILING) > , pub GetAdapterLuid : :: std :: option :: Option < unsafe extern "C" fn (This : * mut ID3D12Device8 , RetVal : * mut LUID) -> * mut LUID > , pub CreatePipelineLibrary : :: std :: option :: Option < unsafe extern "C" fn (This : * mut ID3D12Device8 , pLibraryBlob : * const :: std :: os :: raw :: c_void , BlobLength : SIZE_T , riid : * const IID , ppPipelineLibrary : * mut * mut :: std :: os :: raw :: c_void) -> HRESULT > , pub SetEventOnMultipleFenceCompletion : :: std :: option :: Option < unsafe extern "C" fn (This : * mut ID3D12Device8 , ppFences : * const * mut ID3D12Fence , pFenceValues : * const UINT64 , NumFences : UINT , Flags : D3D12_MULTIPLE_FENCE_WAIT_FLAGS , hEvent : HANDLE) -> HRESULT > , pub SetResidencyPriority : :: std :: option :: Option < unsafe extern "C" fn (This : * mut ID3D12Device8 , NumObjects : UINT , ppObjects : * const * mut ID3D12Pageable , pPriorities : * const D3D12_RESIDENCY_PRIORITY) -> HRESULT > , pub CreatePipelineState : :: std :: option :: Option < unsafe extern "C" fn (This : * mut ID3D12Device8 , pDesc : * const D3D12_PIPELINE_STATE_STREAM_DESC , riid : * const IID , ppPipelineState : * mut * mut :: std :: os :: raw :: c_void) -> HRESULT > , pub OpenExistingHeapFromAddress : :: std :: option :: Option < unsafe extern "C" fn (This : * mut ID3D12Device8 , pAddress : * const :: std :: os :: raw :: c_void , riid : * const IID , ppvHeap : * mut * mut :: std :: os :: raw :: c_void) -> HRESULT > , pub OpenExistingHeapFromFileMapping : :: std :: option :: Option < unsafe extern "C" fn (This : * mut ID3D12Device8 , hFileMapping : HANDLE , riid : * const IID , ppvHeap : * mut * mut :: std :: os :: raw :: c_void) -> HRESULT > , pub EnqueueMakeResident : :: std :: option :: Option < unsafe extern "C" fn (This : * mut ID3D12Device8 , Flags : D3D12_RESIDENCY_FLAGS , NumObjects : UINT , ppObjects : * const * mut ID3D12Pageable , pFenceToSignal : * mut ID3D12Fence , FenceValueToSignal : UINT64) -> HRESULT > , pub CreateCommandList1 : :: std :: option :: Option < unsafe extern "C" fn (This : * mut ID3D12Device8 , nodeMask : UINT , type_ : D3D12_COMMAND_LIST_TYPE , flags : D3D12_COMMAND_LIST_FLAGS , riid : * const IID , ppCommandList : * mut * mut :: std :: os :: raw :: c_void) -> HRESULT > , pub CreateProtectedResourceSession : :: std :: option :: Option < unsafe extern "C" fn (This : * mut ID3D12Device8 , pDesc : * const D3D12_PROTECTED_RESOURCE_SESSION_DESC , riid : * const IID , ppSession : * mut * mut :: std :: os :: raw :: c_void) -> HRESULT > , pub CreateCommittedResource1 : :: std :: option :: Option < unsafe extern "C" fn (This : * mut ID3D12Device8 , pHeapProperties : * const D3D12_HEAP_PROPERTIES , HeapFlags : D3D12_HEAP_FLAGS , pDesc : * const D3D12_RESOURCE_DESC , InitialResourceState : D3D12_RESOURCE_STATES , pOptimizedClearValue : * const D3D12_CLEAR_VALUE , pProtectedSession : * mut ID3D12ProtectedResourceSession , riidResource : * const IID , ppvResource : * mut * mut :: std :: os :: raw :: c_void) -> HRESULT > , pub CreateHeap1 : :: std :: option :: Option < unsafe extern "C" fn (This : * mut ID3D12Device8 , pDesc : * const D3D12_HEAP_DESC , pProtectedSession : * mut ID3D12ProtectedResourceSession , riid : * const IID , ppvHeap : * mut * mut :: std :: os :: raw :: c_void) -> HRESULT > , pub CreateReservedResource1 : :: std :: option :: Option < unsafe extern "C" fn (This : * mut ID3D12Device8 , pDesc : * const D3D12_RESOURCE_DESC , InitialState : D3D12_RESOURCE_STATES , pOptimizedClearValue : * const D3D12_CLEAR_VALUE , pProtectedSession : * mut ID3D12ProtectedResourceSession , riid : * const IID , ppvResource : * mut * mut :: std :: os :: raw :: c_void) -> HRESULT > , pub GetResourceAllocationInfo1 : :: std :: option :: Option < unsafe extern "C" fn (This : * mut ID3D12Device8 , RetVal : * mut D3D12_RESOURCE_ALLOCATION_INFO , visibleMask : UINT , numResourceDescs : UINT , pResourceDescs : * const D3D12_RESOURCE_DESC , pResourceAllocationInfo1 : * mut D3D12_RESOURCE_ALLOCATION_INFO1) -> * mut D3D12_RESOURCE_ALLOCATION_INFO > , pub CreateLifetimeTracker : :: std :: option :: Option < unsafe extern "C" fn (This : * mut ID3D12Device8 , pOwner : * mut ID3D12LifetimeOwner , riid : * const IID , ppvTracker : * mut * mut :: std :: os :: raw :: c_void) -> HRESULT > , pub RemoveDevice : :: std :: option :: Option < unsafe extern "C" fn (This : * mut ID3D12Device8) > , pub EnumerateMetaCommands : :: std :: option :: Option < unsafe extern "C" fn (This : * mut ID3D12Device8 , pNumMetaCommands : * mut UINT , pDescs : * mut D3D12_META_COMMAND_DESC) -> HRESULT > , pub EnumerateMetaCommandParameters : :: std :: option :: Option < unsafe extern "C" fn (This : * mut ID3D12Device8 , CommandId : * const GUID , Stage : D3D12_META_COMMAND_PARAMETER_STAGE , pTotalStructureSizeInBytes : * mut UINT , pParameterCount : * mut UINT , pParameterDescs : * mut D3D12_META_COMMAND_PARAMETER_DESC) -> HRESULT > , pub CreateMetaCommand : :: std :: option :: Option < unsafe extern "C" fn (This : * mut ID3D12Device8 , CommandId : * const GUID , NodeMask : UINT , pCreationParametersData : * const :: std :: os :: raw :: c_void , CreationParametersDataSizeInBytes : SIZE_T , riid : * const IID , ppMetaCommand : * mut * mut :: std :: os :: raw :: c_void) -> HRESULT > , pub CreateStateObject : :: std :: option :: Option < unsafe extern "C" fn (This : * mut ID3D12Device8 , pDesc : * const D3D12_STATE_OBJECT_DESC , riid : * const IID , ppStateObject : * mut * mut :: std :: os :: raw :: c_void) -> HRESULT > , pub GetRaytracingAccelerationStructurePrebuildInfo : :: std :: option :: Option < unsafe extern "C" fn (This : * mut ID3D12Device8 , pDesc : * const D3D12_BUILD_RAYTRACING_ACCELERATION_STRUCTURE_INPUTS , pInfo : * mut D3D12_RAYTRACING_ACCELERATION_STRUCTURE_PREBUILD_INFO) > , pub CheckDriverMatchingIdentifier : :: std :: option :: Option < unsafe extern "C" fn (This : * mut ID3D12Device8 , SerializedDataType : D3D12_SERIALIZED_DATA_TYPE , pIdentifierToCheck : * const D3D12_SERIALIZED_DATA_DRIVER_MATCHING_IDENTIFIER) -> D3D12_DRIVER_MATCHING_IDENTIFIER_STATUS > , pub SetBackgroundProcessingMode : :: std :: option :: Option < unsafe extern "C" fn (This : * mut ID3D12Device8 , Mode : D3D12_BACKGROUND_PROCESSING_MODE , MeasurementsAction : D3D12_MEASUREMENTS_ACTION , hEventToSignalUponCompletion : HANDLE , pbFurtherMeasurementsDesired : * mut BOOL) -> HRESULT > , pub AddToStateObject : :: std :: option :: Option < unsafe extern "C" fn (This : * mut ID3D12Device8 , pAddition : * const D3D12_STATE_OBJECT_DESC , pStateObjectToGrowFrom : * mut ID3D12StateObject , riid : * const IID , ppNewStateObject : * mut * mut :: std :: os :: raw :: c_void) -> HRESULT > , pub CreateProtectedResourceSession1 : :: std :: option :: Option < unsafe extern "C" fn (This : * mut ID3D12Device8 , pDesc : * const D3D12_PROTECTED_RESOURCE_SESSION_DESC1 , riid : * const IID , ppSession : * mut * mut :: std :: os :: raw :: c_void) -> HRESULT > , pub GetResourceAllocationInfo2 : :: std :: option :: Option < unsafe extern "C" fn (This : * mut ID3D12Device8 , RetVal : * mut D3D12_RESOURCE_ALLOCATION_INFO , visibleMask : UINT , numResourceDescs : UINT , pResourceDescs : * const D3D12_RESOURCE_DESC1 , pResourceAllocationInfo1 : * mut D3D12_RESOURCE_ALLOCATION_INFO1) -> * mut D3D12_RESOURCE_ALLOCATION_INFO > , pub CreateCommittedResource2 : :: std :: option :: Option < unsafe extern "C" fn (This : * mut ID3D12Device8 , pHeapProperties : * const D3D12_HEAP_PROPERTIES , HeapFlags : D3D12_HEAP_FLAGS , pDesc : * const D3D12_RESOURCE_DESC1 , InitialResourceState : D3D12_RESOURCE_STATES , pOptimizedClearValue : * const D3D12_CLEAR_VALUE , pProtectedSession : * mut ID3D12ProtectedResourceSession , riidResource : * const IID , ppvResource : * mut * mut :: std :: os :: raw :: c_void) -> HRESULT > , pub CreatePlacedResource1 : :: std :: option :: Option < unsafe extern "C" fn (This : * mut ID3D12Device8 , pHeap : * mut ID3D12Heap , HeapOffset : UINT64 , pDesc : * const D3D12_RESOURCE_DESC1 , InitialState : D3D12_RESOURCE_STATES , pOptimizedClearValue : * const D3D12_CLEAR_VALUE , riid : * const IID , ppvResource : * mut * mut :: std :: os :: raw :: c_void) -> HRESULT > , pub CreateSamplerFeedbackUnorderedAccessView : :: std :: option :: Option < unsafe extern "C" fn (This : * mut ID3D12Device8 , pTargetedResource : * mut ID3D12Resource , pFeedbackResource : * mut ID3D12Resource , DestDescriptor : D3D12_CPU_DESCRIPTOR_HANDLE) > , pub GetCopyableFootprints1 : :: std :: option :: Option < unsafe extern "C" fn (This : * mut ID3D12Device8 , pResourceDesc : * const D3D12_RESOURCE_DESC1 , FirstSubresource : UINT , NumSubresources : UINT , BaseOffset : UINT64 , pLayouts : * mut D3D12_PLACED_SUBRESOURCE_FOOTPRINT , pNumRows : * mut UINT , pRowSizeInBytes : * mut UINT64 , pTotalBytes : * mut UINT64) > , }
14293#[repr(C)]
14294#[derive(Debug, Copy, Clone, Hash, PartialOrd, Ord, PartialEq, Eq)]
14295pub struct ID3D12Device8 {
14296 pub lpVtbl: *mut ID3D12Device8Vtbl,
14297}
14298impl Default for ID3D12Device8 {
14299 fn default() -> Self {
14300 let mut s = ::std::mem::MaybeUninit::<Self>::uninit();
14301 unsafe {
14302 ::std::ptr::write_bytes(s.as_mut_ptr(), 0, 1);
14303 s.assume_init()
14304 }
14305 }
14306}
14307extern "C" {
14308 pub static IID_ID3D12Resource1: IID;
14309}
14310#[repr(C)]
14311#[derive(Debug, Default, Copy, Clone, Hash, PartialOrd, Ord, PartialEq, Eq)]
14312pub struct ID3D12Resource1Vtbl {
14313 pub QueryInterface: ::std::option::Option<
14314 unsafe extern "C" fn(
14315 This: *mut ID3D12Resource1,
14316 riid: *const IID,
14317 ppvObject: *mut *mut ::std::os::raw::c_void,
14318 ) -> HRESULT,
14319 >,
14320 pub AddRef: ::std::option::Option<
14321 unsafe extern "C" fn(This: *mut ID3D12Resource1) -> ULONG,
14322 >,
14323 pub Release: ::std::option::Option<
14324 unsafe extern "C" fn(This: *mut ID3D12Resource1) -> ULONG,
14325 >,
14326 pub GetPrivateData: ::std::option::Option<
14327 unsafe extern "C" fn(
14328 This: *mut ID3D12Resource1,
14329 guid: *const GUID,
14330 pDataSize: *mut UINT,
14331 pData: *mut ::std::os::raw::c_void,
14332 ) -> HRESULT,
14333 >,
14334 pub SetPrivateData: ::std::option::Option<
14335 unsafe extern "C" fn(
14336 This: *mut ID3D12Resource1,
14337 guid: *const GUID,
14338 DataSize: UINT,
14339 pData: *const ::std::os::raw::c_void,
14340 ) -> HRESULT,
14341 >,
14342 pub SetPrivateDataInterface: ::std::option::Option<
14343 unsafe extern "C" fn(
14344 This: *mut ID3D12Resource1,
14345 guid: *const GUID,
14346 pData: *const IUnknown,
14347 ) -> HRESULT,
14348 >,
14349 pub SetName: ::std::option::Option<
14350 unsafe extern "C" fn(
14351 This: *mut ID3D12Resource1,
14352 Name: LPCWSTR,
14353 ) -> HRESULT,
14354 >,
14355 pub GetDevice: ::std::option::Option<
14356 unsafe extern "C" fn(
14357 This: *mut ID3D12Resource1,
14358 riid: *const IID,
14359 ppvDevice: *mut *mut ::std::os::raw::c_void,
14360 ) -> HRESULT,
14361 >,
14362 pub Map: ::std::option::Option<
14363 unsafe extern "C" fn(
14364 This: *mut ID3D12Resource1,
14365 Subresource: UINT,
14366 pReadRange: *const D3D12_RANGE,
14367 ppData: *mut *mut ::std::os::raw::c_void,
14368 ) -> HRESULT,
14369 >,
14370 pub Unmap: ::std::option::Option<
14371 unsafe extern "C" fn(
14372 This: *mut ID3D12Resource1,
14373 Subresource: UINT,
14374 pWrittenRange: *const D3D12_RANGE,
14375 ),
14376 >,
14377 pub GetDesc: ::std::option::Option<
14378 unsafe extern "C" fn(
14379 This: *mut ID3D12Resource1,
14380 RetVal: *mut D3D12_RESOURCE_DESC,
14381 ) -> *mut D3D12_RESOURCE_DESC,
14382 >,
14383 pub GetGPUVirtualAddress: ::std::option::Option<
14384 unsafe extern "C" fn(
14385 This: *mut ID3D12Resource1,
14386 ) -> D3D12_GPU_VIRTUAL_ADDRESS,
14387 >,
14388 pub WriteToSubresource: ::std::option::Option<
14389 unsafe extern "C" fn(
14390 This: *mut ID3D12Resource1,
14391 DstSubresource: UINT,
14392 pDstBox: *const D3D12_BOX,
14393 pSrcData: *const ::std::os::raw::c_void,
14394 SrcRowPitch: UINT,
14395 SrcDepthPitch: UINT,
14396 ) -> HRESULT,
14397 >,
14398 pub ReadFromSubresource: ::std::option::Option<
14399 unsafe extern "C" fn(
14400 This: *mut ID3D12Resource1,
14401 pDstData: *mut ::std::os::raw::c_void,
14402 DstRowPitch: UINT,
14403 DstDepthPitch: UINT,
14404 SrcSubresource: UINT,
14405 pSrcBox: *const D3D12_BOX,
14406 ) -> HRESULT,
14407 >,
14408 pub GetHeapProperties: ::std::option::Option<
14409 unsafe extern "C" fn(
14410 This: *mut ID3D12Resource1,
14411 pHeapProperties: *mut D3D12_HEAP_PROPERTIES,
14412 pHeapFlags: *mut D3D12_HEAP_FLAGS,
14413 ) -> HRESULT,
14414 >,
14415 pub GetProtectedResourceSession: ::std::option::Option<
14416 unsafe extern "C" fn(
14417 This: *mut ID3D12Resource1,
14418 riid: *const IID,
14419 ppProtectedSession: *mut *mut ::std::os::raw::c_void,
14420 ) -> HRESULT,
14421 >,
14422}
14423#[repr(C)]
14424#[derive(Debug, Copy, Clone, Hash, PartialOrd, Ord, PartialEq, Eq)]
14425pub struct ID3D12Resource1 {
14426 pub lpVtbl: *mut ID3D12Resource1Vtbl,
14427}
14428impl Default for ID3D12Resource1 {
14429 fn default() -> Self {
14430 let mut s = ::std::mem::MaybeUninit::<Self>::uninit();
14431 unsafe {
14432 ::std::ptr::write_bytes(s.as_mut_ptr(), 0, 1);
14433 s.assume_init()
14434 }
14435 }
14436}
14437extern "C" {
14438 pub static IID_ID3D12Resource2: IID;
14439}
14440#[repr(C)]
14441#[derive(Debug, Default, Copy, Clone, Hash, PartialOrd, Ord, PartialEq, Eq)]
14442pub struct ID3D12Resource2Vtbl {
14443 pub QueryInterface: ::std::option::Option<
14444 unsafe extern "C" fn(
14445 This: *mut ID3D12Resource2,
14446 riid: *const IID,
14447 ppvObject: *mut *mut ::std::os::raw::c_void,
14448 ) -> HRESULT,
14449 >,
14450 pub AddRef: ::std::option::Option<
14451 unsafe extern "C" fn(This: *mut ID3D12Resource2) -> ULONG,
14452 >,
14453 pub Release: ::std::option::Option<
14454 unsafe extern "C" fn(This: *mut ID3D12Resource2) -> ULONG,
14455 >,
14456 pub GetPrivateData: ::std::option::Option<
14457 unsafe extern "C" fn(
14458 This: *mut ID3D12Resource2,
14459 guid: *const GUID,
14460 pDataSize: *mut UINT,
14461 pData: *mut ::std::os::raw::c_void,
14462 ) -> HRESULT,
14463 >,
14464 pub SetPrivateData: ::std::option::Option<
14465 unsafe extern "C" fn(
14466 This: *mut ID3D12Resource2,
14467 guid: *const GUID,
14468 DataSize: UINT,
14469 pData: *const ::std::os::raw::c_void,
14470 ) -> HRESULT,
14471 >,
14472 pub SetPrivateDataInterface: ::std::option::Option<
14473 unsafe extern "C" fn(
14474 This: *mut ID3D12Resource2,
14475 guid: *const GUID,
14476 pData: *const IUnknown,
14477 ) -> HRESULT,
14478 >,
14479 pub SetName: ::std::option::Option<
14480 unsafe extern "C" fn(
14481 This: *mut ID3D12Resource2,
14482 Name: LPCWSTR,
14483 ) -> HRESULT,
14484 >,
14485 pub GetDevice: ::std::option::Option<
14486 unsafe extern "C" fn(
14487 This: *mut ID3D12Resource2,
14488 riid: *const IID,
14489 ppvDevice: *mut *mut ::std::os::raw::c_void,
14490 ) -> HRESULT,
14491 >,
14492 pub Map: ::std::option::Option<
14493 unsafe extern "C" fn(
14494 This: *mut ID3D12Resource2,
14495 Subresource: UINT,
14496 pReadRange: *const D3D12_RANGE,
14497 ppData: *mut *mut ::std::os::raw::c_void,
14498 ) -> HRESULT,
14499 >,
14500 pub Unmap: ::std::option::Option<
14501 unsafe extern "C" fn(
14502 This: *mut ID3D12Resource2,
14503 Subresource: UINT,
14504 pWrittenRange: *const D3D12_RANGE,
14505 ),
14506 >,
14507 pub GetDesc: ::std::option::Option<
14508 unsafe extern "C" fn(
14509 This: *mut ID3D12Resource2,
14510 RetVal: *mut D3D12_RESOURCE_DESC,
14511 ) -> *mut D3D12_RESOURCE_DESC,
14512 >,
14513 pub GetGPUVirtualAddress: ::std::option::Option<
14514 unsafe extern "C" fn(
14515 This: *mut ID3D12Resource2,
14516 ) -> D3D12_GPU_VIRTUAL_ADDRESS,
14517 >,
14518 pub WriteToSubresource: ::std::option::Option<
14519 unsafe extern "C" fn(
14520 This: *mut ID3D12Resource2,
14521 DstSubresource: UINT,
14522 pDstBox: *const D3D12_BOX,
14523 pSrcData: *const ::std::os::raw::c_void,
14524 SrcRowPitch: UINT,
14525 SrcDepthPitch: UINT,
14526 ) -> HRESULT,
14527 >,
14528 pub ReadFromSubresource: ::std::option::Option<
14529 unsafe extern "C" fn(
14530 This: *mut ID3D12Resource2,
14531 pDstData: *mut ::std::os::raw::c_void,
14532 DstRowPitch: UINT,
14533 DstDepthPitch: UINT,
14534 SrcSubresource: UINT,
14535 pSrcBox: *const D3D12_BOX,
14536 ) -> HRESULT,
14537 >,
14538 pub GetHeapProperties: ::std::option::Option<
14539 unsafe extern "C" fn(
14540 This: *mut ID3D12Resource2,
14541 pHeapProperties: *mut D3D12_HEAP_PROPERTIES,
14542 pHeapFlags: *mut D3D12_HEAP_FLAGS,
14543 ) -> HRESULT,
14544 >,
14545 pub GetProtectedResourceSession: ::std::option::Option<
14546 unsafe extern "C" fn(
14547 This: *mut ID3D12Resource2,
14548 riid: *const IID,
14549 ppProtectedSession: *mut *mut ::std::os::raw::c_void,
14550 ) -> HRESULT,
14551 >,
14552 pub GetDesc1: ::std::option::Option<
14553 unsafe extern "C" fn(
14554 This: *mut ID3D12Resource2,
14555 RetVal: *mut D3D12_RESOURCE_DESC1,
14556 ) -> *mut D3D12_RESOURCE_DESC1,
14557 >,
14558}
14559#[repr(C)]
14560#[derive(Debug, Copy, Clone, Hash, PartialOrd, Ord, PartialEq, Eq)]
14561pub struct ID3D12Resource2 {
14562 pub lpVtbl: *mut ID3D12Resource2Vtbl,
14563}
14564impl Default for ID3D12Resource2 {
14565 fn default() -> Self {
14566 let mut s = ::std::mem::MaybeUninit::<Self>::uninit();
14567 unsafe {
14568 ::std::ptr::write_bytes(s.as_mut_ptr(), 0, 1);
14569 s.assume_init()
14570 }
14571 }
14572}
14573extern "C" {
14574 pub static IID_ID3D12Heap1: IID;
14575}
14576#[repr(C)]
14577#[derive(Debug, Default, Copy, Clone, Hash, PartialOrd, Ord, PartialEq, Eq)]
14578pub struct ID3D12Heap1Vtbl {
14579 pub QueryInterface: ::std::option::Option<
14580 unsafe extern "C" fn(
14581 This: *mut ID3D12Heap1,
14582 riid: *const IID,
14583 ppvObject: *mut *mut ::std::os::raw::c_void,
14584 ) -> HRESULT,
14585 >,
14586 pub AddRef: ::std::option::Option<
14587 unsafe extern "C" fn(This: *mut ID3D12Heap1) -> ULONG,
14588 >,
14589 pub Release: ::std::option::Option<
14590 unsafe extern "C" fn(This: *mut ID3D12Heap1) -> ULONG,
14591 >,
14592 pub GetPrivateData: ::std::option::Option<
14593 unsafe extern "C" fn(
14594 This: *mut ID3D12Heap1,
14595 guid: *const GUID,
14596 pDataSize: *mut UINT,
14597 pData: *mut ::std::os::raw::c_void,
14598 ) -> HRESULT,
14599 >,
14600 pub SetPrivateData: ::std::option::Option<
14601 unsafe extern "C" fn(
14602 This: *mut ID3D12Heap1,
14603 guid: *const GUID,
14604 DataSize: UINT,
14605 pData: *const ::std::os::raw::c_void,
14606 ) -> HRESULT,
14607 >,
14608 pub SetPrivateDataInterface: ::std::option::Option<
14609 unsafe extern "C" fn(
14610 This: *mut ID3D12Heap1,
14611 guid: *const GUID,
14612 pData: *const IUnknown,
14613 ) -> HRESULT,
14614 >,
14615 pub SetName: ::std::option::Option<
14616 unsafe extern "C" fn(This: *mut ID3D12Heap1, Name: LPCWSTR) -> HRESULT,
14617 >,
14618 pub GetDevice: ::std::option::Option<
14619 unsafe extern "C" fn(
14620 This: *mut ID3D12Heap1,
14621 riid: *const IID,
14622 ppvDevice: *mut *mut ::std::os::raw::c_void,
14623 ) -> HRESULT,
14624 >,
14625 pub GetDesc: ::std::option::Option<
14626 unsafe extern "C" fn(
14627 This: *mut ID3D12Heap1,
14628 RetVal: *mut D3D12_HEAP_DESC,
14629 ) -> *mut D3D12_HEAP_DESC,
14630 >,
14631 pub GetProtectedResourceSession: ::std::option::Option<
14632 unsafe extern "C" fn(
14633 This: *mut ID3D12Heap1,
14634 riid: *const IID,
14635 ppProtectedSession: *mut *mut ::std::os::raw::c_void,
14636 ) -> HRESULT,
14637 >,
14638}
14639#[repr(C)]
14640#[derive(Debug, Copy, Clone, Hash, PartialOrd, Ord, PartialEq, Eq)]
14641pub struct ID3D12Heap1 {
14642 pub lpVtbl: *mut ID3D12Heap1Vtbl,
14643}
14644impl Default for ID3D12Heap1 {
14645 fn default() -> Self {
14646 let mut s = ::std::mem::MaybeUninit::<Self>::uninit();
14647 unsafe {
14648 ::std::ptr::write_bytes(s.as_mut_ptr(), 0, 1);
14649 s.assume_init()
14650 }
14651 }
14652}
14653extern "C" {
14654 pub static IID_ID3D12GraphicsCommandList3: IID;
14655}
14656#[repr(C)]
14657#[derive(Debug, Default, Copy, Clone, Hash, PartialOrd, Ord, PartialEq, Eq)]
14658pub struct ID3D12GraphicsCommandList3Vtbl {
14659 pub QueryInterface: ::std::option::Option<
14660 unsafe extern "C" fn(
14661 This: *mut ID3D12GraphicsCommandList3,
14662 riid: *const IID,
14663 ppvObject: *mut *mut ::std::os::raw::c_void,
14664 ) -> HRESULT,
14665 >,
14666 pub AddRef: ::std::option::Option<
14667 unsafe extern "C" fn(This: *mut ID3D12GraphicsCommandList3) -> ULONG,
14668 >,
14669 pub Release: ::std::option::Option<
14670 unsafe extern "C" fn(This: *mut ID3D12GraphicsCommandList3) -> ULONG,
14671 >,
14672 pub GetPrivateData: ::std::option::Option<
14673 unsafe extern "C" fn(
14674 This: *mut ID3D12GraphicsCommandList3,
14675 guid: *const GUID,
14676 pDataSize: *mut UINT,
14677 pData: *mut ::std::os::raw::c_void,
14678 ) -> HRESULT,
14679 >,
14680 pub SetPrivateData: ::std::option::Option<
14681 unsafe extern "C" fn(
14682 This: *mut ID3D12GraphicsCommandList3,
14683 guid: *const GUID,
14684 DataSize: UINT,
14685 pData: *const ::std::os::raw::c_void,
14686 ) -> HRESULT,
14687 >,
14688 pub SetPrivateDataInterface: ::std::option::Option<
14689 unsafe extern "C" fn(
14690 This: *mut ID3D12GraphicsCommandList3,
14691 guid: *const GUID,
14692 pData: *const IUnknown,
14693 ) -> HRESULT,
14694 >,
14695 pub SetName: ::std::option::Option<
14696 unsafe extern "C" fn(
14697 This: *mut ID3D12GraphicsCommandList3,
14698 Name: LPCWSTR,
14699 ) -> HRESULT,
14700 >,
14701 pub GetDevice: ::std::option::Option<
14702 unsafe extern "C" fn(
14703 This: *mut ID3D12GraphicsCommandList3,
14704 riid: *const IID,
14705 ppvDevice: *mut *mut ::std::os::raw::c_void,
14706 ) -> HRESULT,
14707 >,
14708 pub GetType: ::std::option::Option<
14709 unsafe extern "C" fn(
14710 This: *mut ID3D12GraphicsCommandList3,
14711 ) -> D3D12_COMMAND_LIST_TYPE,
14712 >,
14713 pub Close: ::std::option::Option<
14714 unsafe extern "C" fn(This: *mut ID3D12GraphicsCommandList3) -> HRESULT,
14715 >,
14716 pub Reset: ::std::option::Option<
14717 unsafe extern "C" fn(
14718 This: *mut ID3D12GraphicsCommandList3,
14719 pAllocator: *mut ID3D12CommandAllocator,
14720 pInitialState: *mut ID3D12PipelineState,
14721 ) -> HRESULT,
14722 >,
14723 pub ClearState: ::std::option::Option<
14724 unsafe extern "C" fn(
14725 This: *mut ID3D12GraphicsCommandList3,
14726 pPipelineState: *mut ID3D12PipelineState,
14727 ),
14728 >,
14729 pub DrawInstanced: ::std::option::Option<
14730 unsafe extern "C" fn(
14731 This: *mut ID3D12GraphicsCommandList3,
14732 VertexCountPerInstance: UINT,
14733 InstanceCount: UINT,
14734 StartVertexLocation: UINT,
14735 StartInstanceLocation: UINT,
14736 ),
14737 >,
14738 pub DrawIndexedInstanced: ::std::option::Option<
14739 unsafe extern "C" fn(
14740 This: *mut ID3D12GraphicsCommandList3,
14741 IndexCountPerInstance: UINT,
14742 InstanceCount: UINT,
14743 StartIndexLocation: UINT,
14744 BaseVertexLocation: INT,
14745 StartInstanceLocation: UINT,
14746 ),
14747 >,
14748 pub Dispatch: ::std::option::Option<
14749 unsafe extern "C" fn(
14750 This: *mut ID3D12GraphicsCommandList3,
14751 ThreadGroupCountX: UINT,
14752 ThreadGroupCountY: UINT,
14753 ThreadGroupCountZ: UINT,
14754 ),
14755 >,
14756 pub CopyBufferRegion: ::std::option::Option<
14757 unsafe extern "C" fn(
14758 This: *mut ID3D12GraphicsCommandList3,
14759 pDstBuffer: *mut ID3D12Resource,
14760 DstOffset: UINT64,
14761 pSrcBuffer: *mut ID3D12Resource,
14762 SrcOffset: UINT64,
14763 NumBytes: UINT64,
14764 ),
14765 >,
14766 pub CopyTextureRegion: ::std::option::Option<
14767 unsafe extern "C" fn(
14768 This: *mut ID3D12GraphicsCommandList3,
14769 pDst: *const D3D12_TEXTURE_COPY_LOCATION,
14770 DstX: UINT,
14771 DstY: UINT,
14772 DstZ: UINT,
14773 pSrc: *const D3D12_TEXTURE_COPY_LOCATION,
14774 pSrcBox: *const D3D12_BOX,
14775 ),
14776 >,
14777 pub CopyResource: ::std::option::Option<
14778 unsafe extern "C" fn(
14779 This: *mut ID3D12GraphicsCommandList3,
14780 pDstResource: *mut ID3D12Resource,
14781 pSrcResource: *mut ID3D12Resource,
14782 ),
14783 >,
14784 pub CopyTiles: ::std::option::Option<
14785 unsafe extern "C" fn(
14786 This: *mut ID3D12GraphicsCommandList3,
14787 pTiledResource: *mut ID3D12Resource,
14788 pTileRegionStartCoordinate: *const D3D12_TILED_RESOURCE_COORDINATE,
14789 pTileRegionSize: *const D3D12_TILE_REGION_SIZE,
14790 pBuffer: *mut ID3D12Resource,
14791 BufferStartOffsetInBytes: UINT64,
14792 Flags: D3D12_TILE_COPY_FLAGS,
14793 ),
14794 >,
14795 pub ResolveSubresource: ::std::option::Option<
14796 unsafe extern "C" fn(
14797 This: *mut ID3D12GraphicsCommandList3,
14798 pDstResource: *mut ID3D12Resource,
14799 DstSubresource: UINT,
14800 pSrcResource: *mut ID3D12Resource,
14801 SrcSubresource: UINT,
14802 Format: DXGI_FORMAT,
14803 ),
14804 >,
14805 pub IASetPrimitiveTopology: ::std::option::Option<
14806 unsafe extern "C" fn(
14807 This: *mut ID3D12GraphicsCommandList3,
14808 PrimitiveTopology: D3D12_PRIMITIVE_TOPOLOGY,
14809 ),
14810 >,
14811 pub RSSetViewports: ::std::option::Option<
14812 unsafe extern "C" fn(
14813 This: *mut ID3D12GraphicsCommandList3,
14814 NumViewports: UINT,
14815 pViewports: *const D3D12_VIEWPORT,
14816 ),
14817 >,
14818 pub RSSetScissorRects: ::std::option::Option<
14819 unsafe extern "C" fn(
14820 This: *mut ID3D12GraphicsCommandList3,
14821 NumRects: UINT,
14822 pRects: *const D3D12_RECT,
14823 ),
14824 >,
14825 pub OMSetBlendFactor: ::std::option::Option<
14826 unsafe extern "C" fn(
14827 This: *mut ID3D12GraphicsCommandList3,
14828 BlendFactor: *const FLOAT,
14829 ),
14830 >,
14831 pub OMSetStencilRef: ::std::option::Option<
14832 unsafe extern "C" fn(
14833 This: *mut ID3D12GraphicsCommandList3,
14834 StencilRef: UINT,
14835 ),
14836 >,
14837 pub SetPipelineState: ::std::option::Option<
14838 unsafe extern "C" fn(
14839 This: *mut ID3D12GraphicsCommandList3,
14840 pPipelineState: *mut ID3D12PipelineState,
14841 ),
14842 >,
14843 pub ResourceBarrier: ::std::option::Option<
14844 unsafe extern "C" fn(
14845 This: *mut ID3D12GraphicsCommandList3,
14846 NumBarriers: UINT,
14847 pBarriers: *const D3D12_RESOURCE_BARRIER,
14848 ),
14849 >,
14850 pub ExecuteBundle: ::std::option::Option<
14851 unsafe extern "C" fn(
14852 This: *mut ID3D12GraphicsCommandList3,
14853 pCommandList: *mut ID3D12GraphicsCommandList,
14854 ),
14855 >,
14856 pub SetDescriptorHeaps: ::std::option::Option<
14857 unsafe extern "C" fn(
14858 This: *mut ID3D12GraphicsCommandList3,
14859 NumDescriptorHeaps: UINT,
14860 ppDescriptorHeaps: *const *mut ID3D12DescriptorHeap,
14861 ),
14862 >,
14863 pub SetComputeRootSignature: ::std::option::Option<
14864 unsafe extern "C" fn(
14865 This: *mut ID3D12GraphicsCommandList3,
14866 pRootSignature: *mut ID3D12RootSignature,
14867 ),
14868 >,
14869 pub SetGraphicsRootSignature: ::std::option::Option<
14870 unsafe extern "C" fn(
14871 This: *mut ID3D12GraphicsCommandList3,
14872 pRootSignature: *mut ID3D12RootSignature,
14873 ),
14874 >,
14875 pub SetComputeRootDescriptorTable: ::std::option::Option<
14876 unsafe extern "C" fn(
14877 This: *mut ID3D12GraphicsCommandList3,
14878 RootParameterIndex: UINT,
14879 BaseDescriptor: D3D12_GPU_DESCRIPTOR_HANDLE,
14880 ),
14881 >,
14882 pub SetGraphicsRootDescriptorTable: ::std::option::Option<
14883 unsafe extern "C" fn(
14884 This: *mut ID3D12GraphicsCommandList3,
14885 RootParameterIndex: UINT,
14886 BaseDescriptor: D3D12_GPU_DESCRIPTOR_HANDLE,
14887 ),
14888 >,
14889 pub SetComputeRoot32BitConstant: ::std::option::Option<
14890 unsafe extern "C" fn(
14891 This: *mut ID3D12GraphicsCommandList3,
14892 RootParameterIndex: UINT,
14893 SrcData: UINT,
14894 DestOffsetIn32BitValues: UINT,
14895 ),
14896 >,
14897 pub SetGraphicsRoot32BitConstant: ::std::option::Option<
14898 unsafe extern "C" fn(
14899 This: *mut ID3D12GraphicsCommandList3,
14900 RootParameterIndex: UINT,
14901 SrcData: UINT,
14902 DestOffsetIn32BitValues: UINT,
14903 ),
14904 >,
14905 pub SetComputeRoot32BitConstants: ::std::option::Option<
14906 unsafe extern "C" fn(
14907 This: *mut ID3D12GraphicsCommandList3,
14908 RootParameterIndex: UINT,
14909 Num32BitValuesToSet: UINT,
14910 pSrcData: *const ::std::os::raw::c_void,
14911 DestOffsetIn32BitValues: UINT,
14912 ),
14913 >,
14914 pub SetGraphicsRoot32BitConstants: ::std::option::Option<
14915 unsafe extern "C" fn(
14916 This: *mut ID3D12GraphicsCommandList3,
14917 RootParameterIndex: UINT,
14918 Num32BitValuesToSet: UINT,
14919 pSrcData: *const ::std::os::raw::c_void,
14920 DestOffsetIn32BitValues: UINT,
14921 ),
14922 >,
14923 pub SetComputeRootConstantBufferView: ::std::option::Option<
14924 unsafe extern "C" fn(
14925 This: *mut ID3D12GraphicsCommandList3,
14926 RootParameterIndex: UINT,
14927 BufferLocation: D3D12_GPU_VIRTUAL_ADDRESS,
14928 ),
14929 >,
14930 pub SetGraphicsRootConstantBufferView: ::std::option::Option<
14931 unsafe extern "C" fn(
14932 This: *mut ID3D12GraphicsCommandList3,
14933 RootParameterIndex: UINT,
14934 BufferLocation: D3D12_GPU_VIRTUAL_ADDRESS,
14935 ),
14936 >,
14937 pub SetComputeRootShaderResourceView: ::std::option::Option<
14938 unsafe extern "C" fn(
14939 This: *mut ID3D12GraphicsCommandList3,
14940 RootParameterIndex: UINT,
14941 BufferLocation: D3D12_GPU_VIRTUAL_ADDRESS,
14942 ),
14943 >,
14944 pub SetGraphicsRootShaderResourceView: ::std::option::Option<
14945 unsafe extern "C" fn(
14946 This: *mut ID3D12GraphicsCommandList3,
14947 RootParameterIndex: UINT,
14948 BufferLocation: D3D12_GPU_VIRTUAL_ADDRESS,
14949 ),
14950 >,
14951 pub SetComputeRootUnorderedAccessView: ::std::option::Option<
14952 unsafe extern "C" fn(
14953 This: *mut ID3D12GraphicsCommandList3,
14954 RootParameterIndex: UINT,
14955 BufferLocation: D3D12_GPU_VIRTUAL_ADDRESS,
14956 ),
14957 >,
14958 pub SetGraphicsRootUnorderedAccessView: ::std::option::Option<
14959 unsafe extern "C" fn(
14960 This: *mut ID3D12GraphicsCommandList3,
14961 RootParameterIndex: UINT,
14962 BufferLocation: D3D12_GPU_VIRTUAL_ADDRESS,
14963 ),
14964 >,
14965 pub IASetIndexBuffer: ::std::option::Option<
14966 unsafe extern "C" fn(
14967 This: *mut ID3D12GraphicsCommandList3,
14968 pView: *const D3D12_INDEX_BUFFER_VIEW,
14969 ),
14970 >,
14971 pub IASetVertexBuffers: ::std::option::Option<
14972 unsafe extern "C" fn(
14973 This: *mut ID3D12GraphicsCommandList3,
14974 StartSlot: UINT,
14975 NumViews: UINT,
14976 pViews: *const D3D12_VERTEX_BUFFER_VIEW,
14977 ),
14978 >,
14979 pub SOSetTargets: ::std::option::Option<
14980 unsafe extern "C" fn(
14981 This: *mut ID3D12GraphicsCommandList3,
14982 StartSlot: UINT,
14983 NumViews: UINT,
14984 pViews: *const D3D12_STREAM_OUTPUT_BUFFER_VIEW,
14985 ),
14986 >,
14987 pub OMSetRenderTargets: ::std::option::Option<
14988 unsafe extern "C" fn(
14989 This: *mut ID3D12GraphicsCommandList3,
14990 NumRenderTargetDescriptors: UINT,
14991 pRenderTargetDescriptors: *const D3D12_CPU_DESCRIPTOR_HANDLE,
14992 RTsSingleHandleToDescriptorRange: BOOL,
14993 pDepthStencilDescriptor: *const D3D12_CPU_DESCRIPTOR_HANDLE,
14994 ),
14995 >,
14996 pub ClearDepthStencilView: ::std::option::Option<
14997 unsafe extern "C" fn(
14998 This: *mut ID3D12GraphicsCommandList3,
14999 DepthStencilView: D3D12_CPU_DESCRIPTOR_HANDLE,
15000 ClearFlags: D3D12_CLEAR_FLAGS,
15001 Depth: FLOAT,
15002 Stencil: UINT8,
15003 NumRects: UINT,
15004 pRects: *const D3D12_RECT,
15005 ),
15006 >,
15007 pub ClearRenderTargetView: ::std::option::Option<
15008 unsafe extern "C" fn(
15009 This: *mut ID3D12GraphicsCommandList3,
15010 RenderTargetView: D3D12_CPU_DESCRIPTOR_HANDLE,
15011 ColorRGBA: *const FLOAT,
15012 NumRects: UINT,
15013 pRects: *const D3D12_RECT,
15014 ),
15015 >,
15016 pub ClearUnorderedAccessViewUint: ::std::option::Option<
15017 unsafe extern "C" fn(
15018 This: *mut ID3D12GraphicsCommandList3,
15019 ViewGPUHandleInCurrentHeap: D3D12_GPU_DESCRIPTOR_HANDLE,
15020 ViewCPUHandle: D3D12_CPU_DESCRIPTOR_HANDLE,
15021 pResource: *mut ID3D12Resource,
15022 Values: *const UINT,
15023 NumRects: UINT,
15024 pRects: *const D3D12_RECT,
15025 ),
15026 >,
15027 pub ClearUnorderedAccessViewFloat: ::std::option::Option<
15028 unsafe extern "C" fn(
15029 This: *mut ID3D12GraphicsCommandList3,
15030 ViewGPUHandleInCurrentHeap: D3D12_GPU_DESCRIPTOR_HANDLE,
15031 ViewCPUHandle: D3D12_CPU_DESCRIPTOR_HANDLE,
15032 pResource: *mut ID3D12Resource,
15033 Values: *const FLOAT,
15034 NumRects: UINT,
15035 pRects: *const D3D12_RECT,
15036 ),
15037 >,
15038 pub DiscardResource: ::std::option::Option<
15039 unsafe extern "C" fn(
15040 This: *mut ID3D12GraphicsCommandList3,
15041 pResource: *mut ID3D12Resource,
15042 pRegion: *const D3D12_DISCARD_REGION,
15043 ),
15044 >,
15045 pub BeginQuery: ::std::option::Option<
15046 unsafe extern "C" fn(
15047 This: *mut ID3D12GraphicsCommandList3,
15048 pQueryHeap: *mut ID3D12QueryHeap,
15049 Type: D3D12_QUERY_TYPE,
15050 Index: UINT,
15051 ),
15052 >,
15053 pub EndQuery: ::std::option::Option<
15054 unsafe extern "C" fn(
15055 This: *mut ID3D12GraphicsCommandList3,
15056 pQueryHeap: *mut ID3D12QueryHeap,
15057 Type: D3D12_QUERY_TYPE,
15058 Index: UINT,
15059 ),
15060 >,
15061 pub ResolveQueryData: ::std::option::Option<
15062 unsafe extern "C" fn(
15063 This: *mut ID3D12GraphicsCommandList3,
15064 pQueryHeap: *mut ID3D12QueryHeap,
15065 Type: D3D12_QUERY_TYPE,
15066 StartIndex: UINT,
15067 NumQueries: UINT,
15068 pDestinationBuffer: *mut ID3D12Resource,
15069 AlignedDestinationBufferOffset: UINT64,
15070 ),
15071 >,
15072 pub SetPredication: ::std::option::Option<
15073 unsafe extern "C" fn(
15074 This: *mut ID3D12GraphicsCommandList3,
15075 pBuffer: *mut ID3D12Resource,
15076 AlignedBufferOffset: UINT64,
15077 Operation: D3D12_PREDICATION_OP,
15078 ),
15079 >,
15080 pub SetMarker: ::std::option::Option<
15081 unsafe extern "C" fn(
15082 This: *mut ID3D12GraphicsCommandList3,
15083 Metadata: UINT,
15084 pData: *const ::std::os::raw::c_void,
15085 Size: UINT,
15086 ),
15087 >,
15088 pub BeginEvent: ::std::option::Option<
15089 unsafe extern "C" fn(
15090 This: *mut ID3D12GraphicsCommandList3,
15091 Metadata: UINT,
15092 pData: *const ::std::os::raw::c_void,
15093 Size: UINT,
15094 ),
15095 >,
15096 pub EndEvent: ::std::option::Option<
15097 unsafe extern "C" fn(This: *mut ID3D12GraphicsCommandList3),
15098 >,
15099 pub ExecuteIndirect: ::std::option::Option<
15100 unsafe extern "C" fn(
15101 This: *mut ID3D12GraphicsCommandList3,
15102 pCommandSignature: *mut ID3D12CommandSignature,
15103 MaxCommandCount: UINT,
15104 pArgumentBuffer: *mut ID3D12Resource,
15105 ArgumentBufferOffset: UINT64,
15106 pCountBuffer: *mut ID3D12Resource,
15107 CountBufferOffset: UINT64,
15108 ),
15109 >,
15110 pub AtomicCopyBufferUINT: ::std::option::Option<
15111 unsafe extern "C" fn(
15112 This: *mut ID3D12GraphicsCommandList3,
15113 pDstBuffer: *mut ID3D12Resource,
15114 DstOffset: UINT64,
15115 pSrcBuffer: *mut ID3D12Resource,
15116 SrcOffset: UINT64,
15117 Dependencies: UINT,
15118 ppDependentResources: *const *mut ID3D12Resource,
15119 pDependentSubresourceRanges: *const D3D12_SUBRESOURCE_RANGE_UINT64,
15120 ),
15121 >,
15122 pub AtomicCopyBufferUINT64: ::std::option::Option<
15123 unsafe extern "C" fn(
15124 This: *mut ID3D12GraphicsCommandList3,
15125 pDstBuffer: *mut ID3D12Resource,
15126 DstOffset: UINT64,
15127 pSrcBuffer: *mut ID3D12Resource,
15128 SrcOffset: UINT64,
15129 Dependencies: UINT,
15130 ppDependentResources: *const *mut ID3D12Resource,
15131 pDependentSubresourceRanges: *const D3D12_SUBRESOURCE_RANGE_UINT64,
15132 ),
15133 >,
15134 pub OMSetDepthBounds: ::std::option::Option<
15135 unsafe extern "C" fn(
15136 This: *mut ID3D12GraphicsCommandList3,
15137 Min: FLOAT,
15138 Max: FLOAT,
15139 ),
15140 >,
15141 pub SetSamplePositions: ::std::option::Option<
15142 unsafe extern "C" fn(
15143 This: *mut ID3D12GraphicsCommandList3,
15144 NumSamplesPerPixel: UINT,
15145 NumPixels: UINT,
15146 pSamplePositions: *mut D3D12_SAMPLE_POSITION,
15147 ),
15148 >,
15149 pub ResolveSubresourceRegion: ::std::option::Option<
15150 unsafe extern "C" fn(
15151 This: *mut ID3D12GraphicsCommandList3,
15152 pDstResource: *mut ID3D12Resource,
15153 DstSubresource: UINT,
15154 DstX: UINT,
15155 DstY: UINT,
15156 pSrcResource: *mut ID3D12Resource,
15157 SrcSubresource: UINT,
15158 pSrcRect: *mut D3D12_RECT,
15159 Format: DXGI_FORMAT,
15160 ResolveMode: D3D12_RESOLVE_MODE,
15161 ),
15162 >,
15163 pub SetViewInstanceMask: ::std::option::Option<
15164 unsafe extern "C" fn(This: *mut ID3D12GraphicsCommandList3, Mask: UINT),
15165 >,
15166 pub WriteBufferImmediate: ::std::option::Option<
15167 unsafe extern "C" fn(
15168 This: *mut ID3D12GraphicsCommandList3,
15169 Count: UINT,
15170 pParams: *const D3D12_WRITEBUFFERIMMEDIATE_PARAMETER,
15171 pModes: *const D3D12_WRITEBUFFERIMMEDIATE_MODE,
15172 ),
15173 >,
15174 pub SetProtectedResourceSession: ::std::option::Option<
15175 unsafe extern "C" fn(
15176 This: *mut ID3D12GraphicsCommandList3,
15177 pProtectedResourceSession: *mut ID3D12ProtectedResourceSession,
15178 ),
15179 >,
15180}
15181#[repr(C)]
15182#[derive(Debug, Copy, Clone, Hash, PartialOrd, Ord, PartialEq, Eq)]
15183pub struct ID3D12GraphicsCommandList3 {
15184 pub lpVtbl: *mut ID3D12GraphicsCommandList3Vtbl,
15185}
15186impl Default for ID3D12GraphicsCommandList3 {
15187 fn default() -> Self {
15188 let mut s = ::std::mem::MaybeUninit::<Self>::uninit();
15189 unsafe {
15190 ::std::ptr::write_bytes(s.as_mut_ptr(), 0, 1);
15191 s.assume_init()
15192 }
15193 }
15194}
15195pub const D3D12_RENDER_PASS_BEGINNING_ACCESS_TYPE_D3D12_RENDER_PASS_BEGINNING_ACCESS_TYPE_DISCARD : D3D12_RENDER_PASS_BEGINNING_ACCESS_TYPE = 0 ;
15196pub const D3D12_RENDER_PASS_BEGINNING_ACCESS_TYPE_D3D12_RENDER_PASS_BEGINNING_ACCESS_TYPE_PRESERVE : D3D12_RENDER_PASS_BEGINNING_ACCESS_TYPE = 1 ;
15197pub const D3D12_RENDER_PASS_BEGINNING_ACCESS_TYPE_D3D12_RENDER_PASS_BEGINNING_ACCESS_TYPE_CLEAR : D3D12_RENDER_PASS_BEGINNING_ACCESS_TYPE = 2 ;
15198pub const D3D12_RENDER_PASS_BEGINNING_ACCESS_TYPE_D3D12_RENDER_PASS_BEGINNING_ACCESS_TYPE_NO_ACCESS : D3D12_RENDER_PASS_BEGINNING_ACCESS_TYPE = 3 ;
15199pub type D3D12_RENDER_PASS_BEGINNING_ACCESS_TYPE = ::std::os::raw::c_int;
15200#[repr(C)]
15201#[derive(Copy, Clone)]
15202pub struct D3D12_RENDER_PASS_BEGINNING_ACCESS_CLEAR_PARAMETERS {
15203 pub ClearValue: D3D12_CLEAR_VALUE,
15204}
15205impl Default for D3D12_RENDER_PASS_BEGINNING_ACCESS_CLEAR_PARAMETERS {
15206 fn default() -> Self {
15207 let mut s = ::std::mem::MaybeUninit::<Self>::uninit();
15208 unsafe {
15209 ::std::ptr::write_bytes(s.as_mut_ptr(), 0, 1);
15210 s.assume_init()
15211 }
15212 }
15213}
15214impl ::std::fmt::Debug for D3D12_RENDER_PASS_BEGINNING_ACCESS_CLEAR_PARAMETERS {
15215 fn fmt(&self, f: &mut ::std::fmt::Formatter<'_>) -> ::std::fmt::Result {
15216 write ! (f , "D3D12_RENDER_PASS_BEGINNING_ACCESS_CLEAR_PARAMETERS {{ ClearValue: {:?} }}" , self . ClearValue)
15217 }
15218}
15219#[repr(C)]
15220#[derive(Copy, Clone)]
15221pub struct D3D12_RENDER_PASS_BEGINNING_ACCESS {
15222 pub Type: D3D12_RENDER_PASS_BEGINNING_ACCESS_TYPE,
15223 pub __bindgen_anon_1: D3D12_RENDER_PASS_BEGINNING_ACCESS__bindgen_ty_1,
15224}
15225#[repr(C)]
15226#[derive(Copy, Clone)]
15227pub union D3D12_RENDER_PASS_BEGINNING_ACCESS__bindgen_ty_1 {
15228 pub Clear: D3D12_RENDER_PASS_BEGINNING_ACCESS_CLEAR_PARAMETERS,
15229}
15230impl Default for D3D12_RENDER_PASS_BEGINNING_ACCESS__bindgen_ty_1 {
15231 fn default() -> Self {
15232 let mut s = ::std::mem::MaybeUninit::<Self>::uninit();
15233 unsafe {
15234 ::std::ptr::write_bytes(s.as_mut_ptr(), 0, 1);
15235 s.assume_init()
15236 }
15237 }
15238}
15239impl ::std::fmt::Debug for D3D12_RENDER_PASS_BEGINNING_ACCESS__bindgen_ty_1 {
15240 fn fmt(&self, f: &mut ::std::fmt::Formatter<'_>) -> ::std::fmt::Result {
15241 write!(
15242 f,
15243 "D3D12_RENDER_PASS_BEGINNING_ACCESS__bindgen_ty_1 {{ union }}"
15244 )
15245 }
15246}
15247impl Default for D3D12_RENDER_PASS_BEGINNING_ACCESS {
15248 fn default() -> Self {
15249 let mut s = ::std::mem::MaybeUninit::<Self>::uninit();
15250 unsafe {
15251 ::std::ptr::write_bytes(s.as_mut_ptr(), 0, 1);
15252 s.assume_init()
15253 }
15254 }
15255}
15256impl ::std::fmt::Debug for D3D12_RENDER_PASS_BEGINNING_ACCESS {
15257 fn fmt(&self, f: &mut ::std::fmt::Formatter<'_>) -> ::std::fmt::Result {
15258 write ! (f , "D3D12_RENDER_PASS_BEGINNING_ACCESS {{ Type: {:?}, __bindgen_anon_1: {:?} }}" , self . Type , self . __bindgen_anon_1)
15259 }
15260}
15261pub const D3D12_RENDER_PASS_ENDING_ACCESS_TYPE_D3D12_RENDER_PASS_ENDING_ACCESS_TYPE_DISCARD : D3D12_RENDER_PASS_ENDING_ACCESS_TYPE = 0 ;
15262pub const D3D12_RENDER_PASS_ENDING_ACCESS_TYPE_D3D12_RENDER_PASS_ENDING_ACCESS_TYPE_PRESERVE : D3D12_RENDER_PASS_ENDING_ACCESS_TYPE = 1 ;
15263pub const D3D12_RENDER_PASS_ENDING_ACCESS_TYPE_D3D12_RENDER_PASS_ENDING_ACCESS_TYPE_RESOLVE : D3D12_RENDER_PASS_ENDING_ACCESS_TYPE = 2 ;
15264pub const D3D12_RENDER_PASS_ENDING_ACCESS_TYPE_D3D12_RENDER_PASS_ENDING_ACCESS_TYPE_NO_ACCESS : D3D12_RENDER_PASS_ENDING_ACCESS_TYPE = 3 ;
15265pub type D3D12_RENDER_PASS_ENDING_ACCESS_TYPE = ::std::os::raw::c_int;
15266#[repr(C)]
15267#[derive(Debug, Default, Copy, Clone, Hash, PartialOrd, Ord, PartialEq, Eq)]
15268pub struct D3D12_RENDER_PASS_ENDING_ACCESS_RESOLVE_SUBRESOURCE_PARAMETERS {
15269 pub SrcSubresource: UINT,
15270 pub DstSubresource: UINT,
15271 pub DstX: UINT,
15272 pub DstY: UINT,
15273 pub SrcRect: D3D12_RECT,
15274}
15275#[repr(C)]
15276#[derive(Debug, Copy, Clone, Hash, PartialOrd, Ord, PartialEq, Eq)]
15277pub struct D3D12_RENDER_PASS_ENDING_ACCESS_RESOLVE_PARAMETERS {
15278 pub pSrcResource: *mut ID3D12Resource,
15279 pub pDstResource: *mut ID3D12Resource,
15280 pub SubresourceCount: UINT,
15281 pub pSubresourceParameters:
15282 *const D3D12_RENDER_PASS_ENDING_ACCESS_RESOLVE_SUBRESOURCE_PARAMETERS,
15283 pub Format: DXGI_FORMAT,
15284 pub ResolveMode: D3D12_RESOLVE_MODE,
15285 pub PreserveResolveSource: BOOL,
15286}
15287impl Default for D3D12_RENDER_PASS_ENDING_ACCESS_RESOLVE_PARAMETERS {
15288 fn default() -> Self {
15289 let mut s = ::std::mem::MaybeUninit::<Self>::uninit();
15290 unsafe {
15291 ::std::ptr::write_bytes(s.as_mut_ptr(), 0, 1);
15292 s.assume_init()
15293 }
15294 }
15295}
15296#[repr(C)]
15297#[derive(Copy, Clone)]
15298pub struct D3D12_RENDER_PASS_ENDING_ACCESS {
15299 pub Type: D3D12_RENDER_PASS_ENDING_ACCESS_TYPE,
15300 pub __bindgen_anon_1: D3D12_RENDER_PASS_ENDING_ACCESS__bindgen_ty_1,
15301}
15302#[repr(C)]
15303#[derive(Copy, Clone)]
15304pub union D3D12_RENDER_PASS_ENDING_ACCESS__bindgen_ty_1 {
15305 pub Resolve: D3D12_RENDER_PASS_ENDING_ACCESS_RESOLVE_PARAMETERS,
15306}
15307impl Default for D3D12_RENDER_PASS_ENDING_ACCESS__bindgen_ty_1 {
15308 fn default() -> Self {
15309 let mut s = ::std::mem::MaybeUninit::<Self>::uninit();
15310 unsafe {
15311 ::std::ptr::write_bytes(s.as_mut_ptr(), 0, 1);
15312 s.assume_init()
15313 }
15314 }
15315}
15316impl ::std::fmt::Debug for D3D12_RENDER_PASS_ENDING_ACCESS__bindgen_ty_1 {
15317 fn fmt(&self, f: &mut ::std::fmt::Formatter<'_>) -> ::std::fmt::Result {
15318 write!(
15319 f,
15320 "D3D12_RENDER_PASS_ENDING_ACCESS__bindgen_ty_1 {{ union }}"
15321 )
15322 }
15323}
15324impl Default for D3D12_RENDER_PASS_ENDING_ACCESS {
15325 fn default() -> Self {
15326 let mut s = ::std::mem::MaybeUninit::<Self>::uninit();
15327 unsafe {
15328 ::std::ptr::write_bytes(s.as_mut_ptr(), 0, 1);
15329 s.assume_init()
15330 }
15331 }
15332}
15333impl ::std::fmt::Debug for D3D12_RENDER_PASS_ENDING_ACCESS {
15334 fn fmt(&self, f: &mut ::std::fmt::Formatter<'_>) -> ::std::fmt::Result {
15335 write ! (f , "D3D12_RENDER_PASS_ENDING_ACCESS {{ Type: {:?}, __bindgen_anon_1: {:?} }}" , self . Type , self . __bindgen_anon_1)
15336 }
15337}
15338#[repr(C)]
15339#[derive(Copy, Clone)]
15340pub struct D3D12_RENDER_PASS_RENDER_TARGET_DESC {
15341 pub cpuDescriptor: D3D12_CPU_DESCRIPTOR_HANDLE,
15342 pub BeginningAccess: D3D12_RENDER_PASS_BEGINNING_ACCESS,
15343 pub EndingAccess: D3D12_RENDER_PASS_ENDING_ACCESS,
15344}
15345impl Default for D3D12_RENDER_PASS_RENDER_TARGET_DESC {
15346 fn default() -> Self {
15347 let mut s = ::std::mem::MaybeUninit::<Self>::uninit();
15348 unsafe {
15349 ::std::ptr::write_bytes(s.as_mut_ptr(), 0, 1);
15350 s.assume_init()
15351 }
15352 }
15353}
15354impl ::std::fmt::Debug for D3D12_RENDER_PASS_RENDER_TARGET_DESC {
15355 fn fmt(&self, f: &mut ::std::fmt::Formatter<'_>) -> ::std::fmt::Result {
15356 write ! (f , "D3D12_RENDER_PASS_RENDER_TARGET_DESC {{ cpuDescriptor: {:?}, BeginningAccess: {:?}, EndingAccess: {:?} }}" , self . cpuDescriptor , self . BeginningAccess , self . EndingAccess)
15357 }
15358}
15359#[repr(C)]
15360#[derive(Copy, Clone)]
15361pub struct D3D12_RENDER_PASS_DEPTH_STENCIL_DESC {
15362 pub cpuDescriptor: D3D12_CPU_DESCRIPTOR_HANDLE,
15363 pub DepthBeginningAccess: D3D12_RENDER_PASS_BEGINNING_ACCESS,
15364 pub StencilBeginningAccess: D3D12_RENDER_PASS_BEGINNING_ACCESS,
15365 pub DepthEndingAccess: D3D12_RENDER_PASS_ENDING_ACCESS,
15366 pub StencilEndingAccess: D3D12_RENDER_PASS_ENDING_ACCESS,
15367}
15368impl Default for D3D12_RENDER_PASS_DEPTH_STENCIL_DESC {
15369 fn default() -> Self {
15370 let mut s = ::std::mem::MaybeUninit::<Self>::uninit();
15371 unsafe {
15372 ::std::ptr::write_bytes(s.as_mut_ptr(), 0, 1);
15373 s.assume_init()
15374 }
15375 }
15376}
15377impl ::std::fmt::Debug for D3D12_RENDER_PASS_DEPTH_STENCIL_DESC {
15378 fn fmt(&self, f: &mut ::std::fmt::Formatter<'_>) -> ::std::fmt::Result {
15379 write ! (f , "D3D12_RENDER_PASS_DEPTH_STENCIL_DESC {{ cpuDescriptor: {:?}, DepthBeginningAccess: {:?}, StencilBeginningAccess: {:?}, DepthEndingAccess: {:?}, StencilEndingAccess: {:?} }}" , self . cpuDescriptor , self . DepthBeginningAccess , self . StencilBeginningAccess , self . DepthEndingAccess , self . StencilEndingAccess)
15380 }
15381}
15382pub const D3D12_RENDER_PASS_FLAGS_D3D12_RENDER_PASS_FLAG_NONE:
15383 D3D12_RENDER_PASS_FLAGS = 0;
15384pub const D3D12_RENDER_PASS_FLAGS_D3D12_RENDER_PASS_FLAG_ALLOW_UAV_WRITES:
15385 D3D12_RENDER_PASS_FLAGS = 1;
15386pub const D3D12_RENDER_PASS_FLAGS_D3D12_RENDER_PASS_FLAG_SUSPENDING_PASS:
15387 D3D12_RENDER_PASS_FLAGS = 2;
15388pub const D3D12_RENDER_PASS_FLAGS_D3D12_RENDER_PASS_FLAG_RESUMING_PASS:
15389 D3D12_RENDER_PASS_FLAGS = 4;
15390pub type D3D12_RENDER_PASS_FLAGS = ::std::os::raw::c_int;
15391extern "C" {
15392 pub static IID_ID3D12MetaCommand: IID;
15393}
15394#[repr(C)]
15395#[derive(Debug, Default, Copy, Clone, Hash, PartialOrd, Ord, PartialEq, Eq)]
15396pub struct ID3D12MetaCommandVtbl {
15397 pub QueryInterface: ::std::option::Option<
15398 unsafe extern "C" fn(
15399 This: *mut ID3D12MetaCommand,
15400 riid: *const IID,
15401 ppvObject: *mut *mut ::std::os::raw::c_void,
15402 ) -> HRESULT,
15403 >,
15404 pub AddRef: ::std::option::Option<
15405 unsafe extern "C" fn(This: *mut ID3D12MetaCommand) -> ULONG,
15406 >,
15407 pub Release: ::std::option::Option<
15408 unsafe extern "C" fn(This: *mut ID3D12MetaCommand) -> ULONG,
15409 >,
15410 pub GetPrivateData: ::std::option::Option<
15411 unsafe extern "C" fn(
15412 This: *mut ID3D12MetaCommand,
15413 guid: *const GUID,
15414 pDataSize: *mut UINT,
15415 pData: *mut ::std::os::raw::c_void,
15416 ) -> HRESULT,
15417 >,
15418 pub SetPrivateData: ::std::option::Option<
15419 unsafe extern "C" fn(
15420 This: *mut ID3D12MetaCommand,
15421 guid: *const GUID,
15422 DataSize: UINT,
15423 pData: *const ::std::os::raw::c_void,
15424 ) -> HRESULT,
15425 >,
15426 pub SetPrivateDataInterface: ::std::option::Option<
15427 unsafe extern "C" fn(
15428 This: *mut ID3D12MetaCommand,
15429 guid: *const GUID,
15430 pData: *const IUnknown,
15431 ) -> HRESULT,
15432 >,
15433 pub SetName: ::std::option::Option<
15434 unsafe extern "C" fn(
15435 This: *mut ID3D12MetaCommand,
15436 Name: LPCWSTR,
15437 ) -> HRESULT,
15438 >,
15439 pub GetDevice: ::std::option::Option<
15440 unsafe extern "C" fn(
15441 This: *mut ID3D12MetaCommand,
15442 riid: *const IID,
15443 ppvDevice: *mut *mut ::std::os::raw::c_void,
15444 ) -> HRESULT,
15445 >,
15446 pub GetRequiredParameterResourceSize: ::std::option::Option<
15447 unsafe extern "C" fn(
15448 This: *mut ID3D12MetaCommand,
15449 Stage: D3D12_META_COMMAND_PARAMETER_STAGE,
15450 ParameterIndex: UINT,
15451 ) -> UINT64,
15452 >,
15453}
15454#[repr(C)]
15455#[derive(Debug, Copy, Clone, Hash, PartialOrd, Ord, PartialEq, Eq)]
15456pub struct ID3D12MetaCommand {
15457 pub lpVtbl: *mut ID3D12MetaCommandVtbl,
15458}
15459impl Default for ID3D12MetaCommand {
15460 fn default() -> Self {
15461 let mut s = ::std::mem::MaybeUninit::<Self>::uninit();
15462 unsafe {
15463 ::std::ptr::write_bytes(s.as_mut_ptr(), 0, 1);
15464 s.assume_init()
15465 }
15466 }
15467}
15468#[repr(C)]
15469#[derive(Debug, Default, Copy, Clone, Hash, PartialOrd, Ord, PartialEq, Eq)]
15470pub struct D3D12_DISPATCH_RAYS_DESC {
15471 pub RayGenerationShaderRecord: D3D12_GPU_VIRTUAL_ADDRESS_RANGE,
15472 pub MissShaderTable: D3D12_GPU_VIRTUAL_ADDRESS_RANGE_AND_STRIDE,
15473 pub HitGroupTable: D3D12_GPU_VIRTUAL_ADDRESS_RANGE_AND_STRIDE,
15474 pub CallableShaderTable: D3D12_GPU_VIRTUAL_ADDRESS_RANGE_AND_STRIDE,
15475 pub Width: UINT,
15476 pub Height: UINT,
15477 pub Depth: UINT,
15478}
15479extern "C" {
15480 pub static IID_ID3D12GraphicsCommandList4: IID;
15481}
15482#[repr(C)]
15483#[derive(Debug, Default, Copy, Clone, Hash, PartialOrd, Ord, PartialEq, Eq)]
15484pub struct ID3D12GraphicsCommandList4Vtbl { pub QueryInterface : :: std :: option :: Option < unsafe extern "C" fn (This : * mut ID3D12GraphicsCommandList4 , riid : * const IID , ppvObject : * mut * mut :: std :: os :: raw :: c_void) -> HRESULT > , pub AddRef : :: std :: option :: Option < unsafe extern "C" fn (This : * mut ID3D12GraphicsCommandList4) -> ULONG > , pub Release : :: std :: option :: Option < unsafe extern "C" fn (This : * mut ID3D12GraphicsCommandList4) -> ULONG > , pub GetPrivateData : :: std :: option :: Option < unsafe extern "C" fn (This : * mut ID3D12GraphicsCommandList4 , guid : * const GUID , pDataSize : * mut UINT , pData : * mut :: std :: os :: raw :: c_void) -> HRESULT > , pub SetPrivateData : :: std :: option :: Option < unsafe extern "C" fn (This : * mut ID3D12GraphicsCommandList4 , guid : * const GUID , DataSize : UINT , pData : * const :: std :: os :: raw :: c_void) -> HRESULT > , pub SetPrivateDataInterface : :: std :: option :: Option < unsafe extern "C" fn (This : * mut ID3D12GraphicsCommandList4 , guid : * const GUID , pData : * const IUnknown) -> HRESULT > , pub SetName : :: std :: option :: Option < unsafe extern "C" fn (This : * mut ID3D12GraphicsCommandList4 , Name : LPCWSTR) -> HRESULT > , pub GetDevice : :: std :: option :: Option < unsafe extern "C" fn (This : * mut ID3D12GraphicsCommandList4 , riid : * const IID , ppvDevice : * mut * mut :: std :: os :: raw :: c_void) -> HRESULT > , pub GetType : :: std :: option :: Option < unsafe extern "C" fn (This : * mut ID3D12GraphicsCommandList4) -> D3D12_COMMAND_LIST_TYPE > , pub Close : :: std :: option :: Option < unsafe extern "C" fn (This : * mut ID3D12GraphicsCommandList4) -> HRESULT > , pub Reset : :: std :: option :: Option < unsafe extern "C" fn (This : * mut ID3D12GraphicsCommandList4 , pAllocator : * mut ID3D12CommandAllocator , pInitialState : * mut ID3D12PipelineState) -> HRESULT > , pub ClearState : :: std :: option :: Option < unsafe extern "C" fn (This : * mut ID3D12GraphicsCommandList4 , pPipelineState : * mut ID3D12PipelineState) > , pub DrawInstanced : :: std :: option :: Option < unsafe extern "C" fn (This : * mut ID3D12GraphicsCommandList4 , VertexCountPerInstance : UINT , InstanceCount : UINT , StartVertexLocation : UINT , StartInstanceLocation : UINT) > , pub DrawIndexedInstanced : :: std :: option :: Option < unsafe extern "C" fn (This : * mut ID3D12GraphicsCommandList4 , IndexCountPerInstance : UINT , InstanceCount : UINT , StartIndexLocation : UINT , BaseVertexLocation : INT , StartInstanceLocation : UINT) > , pub Dispatch : :: std :: option :: Option < unsafe extern "C" fn (This : * mut ID3D12GraphicsCommandList4 , ThreadGroupCountX : UINT , ThreadGroupCountY : UINT , ThreadGroupCountZ : UINT) > , pub CopyBufferRegion : :: std :: option :: Option < unsafe extern "C" fn (This : * mut ID3D12GraphicsCommandList4 , pDstBuffer : * mut ID3D12Resource , DstOffset : UINT64 , pSrcBuffer : * mut ID3D12Resource , SrcOffset : UINT64 , NumBytes : UINT64) > , pub CopyTextureRegion : :: std :: option :: Option < unsafe extern "C" fn (This : * mut ID3D12GraphicsCommandList4 , pDst : * const D3D12_TEXTURE_COPY_LOCATION , DstX : UINT , DstY : UINT , DstZ : UINT , pSrc : * const D3D12_TEXTURE_COPY_LOCATION , pSrcBox : * const D3D12_BOX) > , pub CopyResource : :: std :: option :: Option < unsafe extern "C" fn (This : * mut ID3D12GraphicsCommandList4 , pDstResource : * mut ID3D12Resource , pSrcResource : * mut ID3D12Resource) > , pub CopyTiles : :: std :: option :: Option < unsafe extern "C" fn (This : * mut ID3D12GraphicsCommandList4 , pTiledResource : * mut ID3D12Resource , pTileRegionStartCoordinate : * const D3D12_TILED_RESOURCE_COORDINATE , pTileRegionSize : * const D3D12_TILE_REGION_SIZE , pBuffer : * mut ID3D12Resource , BufferStartOffsetInBytes : UINT64 , Flags : D3D12_TILE_COPY_FLAGS) > , pub ResolveSubresource : :: std :: option :: Option < unsafe extern "C" fn (This : * mut ID3D12GraphicsCommandList4 , pDstResource : * mut ID3D12Resource , DstSubresource : UINT , pSrcResource : * mut ID3D12Resource , SrcSubresource : UINT , Format : DXGI_FORMAT) > , pub IASetPrimitiveTopology : :: std :: option :: Option < unsafe extern "C" fn (This : * mut ID3D12GraphicsCommandList4 , PrimitiveTopology : D3D12_PRIMITIVE_TOPOLOGY) > , pub RSSetViewports : :: std :: option :: Option < unsafe extern "C" fn (This : * mut ID3D12GraphicsCommandList4 , NumViewports : UINT , pViewports : * const D3D12_VIEWPORT) > , pub RSSetScissorRects : :: std :: option :: Option < unsafe extern "C" fn (This : * mut ID3D12GraphicsCommandList4 , NumRects : UINT , pRects : * const D3D12_RECT) > , pub OMSetBlendFactor : :: std :: option :: Option < unsafe extern "C" fn (This : * mut ID3D12GraphicsCommandList4 , BlendFactor : * const FLOAT) > , pub OMSetStencilRef : :: std :: option :: Option < unsafe extern "C" fn (This : * mut ID3D12GraphicsCommandList4 , StencilRef : UINT) > , pub SetPipelineState : :: std :: option :: Option < unsafe extern "C" fn (This : * mut ID3D12GraphicsCommandList4 , pPipelineState : * mut ID3D12PipelineState) > , pub ResourceBarrier : :: std :: option :: Option < unsafe extern "C" fn (This : * mut ID3D12GraphicsCommandList4 , NumBarriers : UINT , pBarriers : * const D3D12_RESOURCE_BARRIER) > , pub ExecuteBundle : :: std :: option :: Option < unsafe extern "C" fn (This : * mut ID3D12GraphicsCommandList4 , pCommandList : * mut ID3D12GraphicsCommandList) > , pub SetDescriptorHeaps : :: std :: option :: Option < unsafe extern "C" fn (This : * mut ID3D12GraphicsCommandList4 , NumDescriptorHeaps : UINT , ppDescriptorHeaps : * const * mut ID3D12DescriptorHeap) > , pub SetComputeRootSignature : :: std :: option :: Option < unsafe extern "C" fn (This : * mut ID3D12GraphicsCommandList4 , pRootSignature : * mut ID3D12RootSignature) > , pub SetGraphicsRootSignature : :: std :: option :: Option < unsafe extern "C" fn (This : * mut ID3D12GraphicsCommandList4 , pRootSignature : * mut ID3D12RootSignature) > , pub SetComputeRootDescriptorTable : :: std :: option :: Option < unsafe extern "C" fn (This : * mut ID3D12GraphicsCommandList4 , RootParameterIndex : UINT , BaseDescriptor : D3D12_GPU_DESCRIPTOR_HANDLE) > , pub SetGraphicsRootDescriptorTable : :: std :: option :: Option < unsafe extern "C" fn (This : * mut ID3D12GraphicsCommandList4 , RootParameterIndex : UINT , BaseDescriptor : D3D12_GPU_DESCRIPTOR_HANDLE) > , pub SetComputeRoot32BitConstant : :: std :: option :: Option < unsafe extern "C" fn (This : * mut ID3D12GraphicsCommandList4 , RootParameterIndex : UINT , SrcData : UINT , DestOffsetIn32BitValues : UINT) > , pub SetGraphicsRoot32BitConstant : :: std :: option :: Option < unsafe extern "C" fn (This : * mut ID3D12GraphicsCommandList4 , RootParameterIndex : UINT , SrcData : UINT , DestOffsetIn32BitValues : UINT) > , pub SetComputeRoot32BitConstants : :: std :: option :: Option < unsafe extern "C" fn (This : * mut ID3D12GraphicsCommandList4 , RootParameterIndex : UINT , Num32BitValuesToSet : UINT , pSrcData : * const :: std :: os :: raw :: c_void , DestOffsetIn32BitValues : UINT) > , pub SetGraphicsRoot32BitConstants : :: std :: option :: Option < unsafe extern "C" fn (This : * mut ID3D12GraphicsCommandList4 , RootParameterIndex : UINT , Num32BitValuesToSet : UINT , pSrcData : * const :: std :: os :: raw :: c_void , DestOffsetIn32BitValues : UINT) > , pub SetComputeRootConstantBufferView : :: std :: option :: Option < unsafe extern "C" fn (This : * mut ID3D12GraphicsCommandList4 , RootParameterIndex : UINT , BufferLocation : D3D12_GPU_VIRTUAL_ADDRESS) > , pub SetGraphicsRootConstantBufferView : :: std :: option :: Option < unsafe extern "C" fn (This : * mut ID3D12GraphicsCommandList4 , RootParameterIndex : UINT , BufferLocation : D3D12_GPU_VIRTUAL_ADDRESS) > , pub SetComputeRootShaderResourceView : :: std :: option :: Option < unsafe extern "C" fn (This : * mut ID3D12GraphicsCommandList4 , RootParameterIndex : UINT , BufferLocation : D3D12_GPU_VIRTUAL_ADDRESS) > , pub SetGraphicsRootShaderResourceView : :: std :: option :: Option < unsafe extern "C" fn (This : * mut ID3D12GraphicsCommandList4 , RootParameterIndex : UINT , BufferLocation : D3D12_GPU_VIRTUAL_ADDRESS) > , pub SetComputeRootUnorderedAccessView : :: std :: option :: Option < unsafe extern "C" fn (This : * mut ID3D12GraphicsCommandList4 , RootParameterIndex : UINT , BufferLocation : D3D12_GPU_VIRTUAL_ADDRESS) > , pub SetGraphicsRootUnorderedAccessView : :: std :: option :: Option < unsafe extern "C" fn (This : * mut ID3D12GraphicsCommandList4 , RootParameterIndex : UINT , BufferLocation : D3D12_GPU_VIRTUAL_ADDRESS) > , pub IASetIndexBuffer : :: std :: option :: Option < unsafe extern "C" fn (This : * mut ID3D12GraphicsCommandList4 , pView : * const D3D12_INDEX_BUFFER_VIEW) > , pub IASetVertexBuffers : :: std :: option :: Option < unsafe extern "C" fn (This : * mut ID3D12GraphicsCommandList4 , StartSlot : UINT , NumViews : UINT , pViews : * const D3D12_VERTEX_BUFFER_VIEW) > , pub SOSetTargets : :: std :: option :: Option < unsafe extern "C" fn (This : * mut ID3D12GraphicsCommandList4 , StartSlot : UINT , NumViews : UINT , pViews : * const D3D12_STREAM_OUTPUT_BUFFER_VIEW) > , pub OMSetRenderTargets : :: std :: option :: Option < unsafe extern "C" fn (This : * mut ID3D12GraphicsCommandList4 , NumRenderTargetDescriptors : UINT , pRenderTargetDescriptors : * const D3D12_CPU_DESCRIPTOR_HANDLE , RTsSingleHandleToDescriptorRange : BOOL , pDepthStencilDescriptor : * const D3D12_CPU_DESCRIPTOR_HANDLE) > , pub ClearDepthStencilView : :: std :: option :: Option < unsafe extern "C" fn (This : * mut ID3D12GraphicsCommandList4 , DepthStencilView : D3D12_CPU_DESCRIPTOR_HANDLE , ClearFlags : D3D12_CLEAR_FLAGS , Depth : FLOAT , Stencil : UINT8 , NumRects : UINT , pRects : * const D3D12_RECT) > , pub ClearRenderTargetView : :: std :: option :: Option < unsafe extern "C" fn (This : * mut ID3D12GraphicsCommandList4 , RenderTargetView : D3D12_CPU_DESCRIPTOR_HANDLE , ColorRGBA : * const FLOAT , NumRects : UINT , pRects : * const D3D12_RECT) > , pub ClearUnorderedAccessViewUint : :: std :: option :: Option < unsafe extern "C" fn (This : * mut ID3D12GraphicsCommandList4 , ViewGPUHandleInCurrentHeap : D3D12_GPU_DESCRIPTOR_HANDLE , ViewCPUHandle : D3D12_CPU_DESCRIPTOR_HANDLE , pResource : * mut ID3D12Resource , Values : * const UINT , NumRects : UINT , pRects : * const D3D12_RECT) > , pub ClearUnorderedAccessViewFloat : :: std :: option :: Option < unsafe extern "C" fn (This : * mut ID3D12GraphicsCommandList4 , ViewGPUHandleInCurrentHeap : D3D12_GPU_DESCRIPTOR_HANDLE , ViewCPUHandle : D3D12_CPU_DESCRIPTOR_HANDLE , pResource : * mut ID3D12Resource , Values : * const FLOAT , NumRects : UINT , pRects : * const D3D12_RECT) > , pub DiscardResource : :: std :: option :: Option < unsafe extern "C" fn (This : * mut ID3D12GraphicsCommandList4 , pResource : * mut ID3D12Resource , pRegion : * const D3D12_DISCARD_REGION) > , pub BeginQuery : :: std :: option :: Option < unsafe extern "C" fn (This : * mut ID3D12GraphicsCommandList4 , pQueryHeap : * mut ID3D12QueryHeap , Type : D3D12_QUERY_TYPE , Index : UINT) > , pub EndQuery : :: std :: option :: Option < unsafe extern "C" fn (This : * mut ID3D12GraphicsCommandList4 , pQueryHeap : * mut ID3D12QueryHeap , Type : D3D12_QUERY_TYPE , Index : UINT) > , pub ResolveQueryData : :: std :: option :: Option < unsafe extern "C" fn (This : * mut ID3D12GraphicsCommandList4 , pQueryHeap : * mut ID3D12QueryHeap , Type : D3D12_QUERY_TYPE , StartIndex : UINT , NumQueries : UINT , pDestinationBuffer : * mut ID3D12Resource , AlignedDestinationBufferOffset : UINT64) > , pub SetPredication : :: std :: option :: Option < unsafe extern "C" fn (This : * mut ID3D12GraphicsCommandList4 , pBuffer : * mut ID3D12Resource , AlignedBufferOffset : UINT64 , Operation : D3D12_PREDICATION_OP) > , pub SetMarker : :: std :: option :: Option < unsafe extern "C" fn (This : * mut ID3D12GraphicsCommandList4 , Metadata : UINT , pData : * const :: std :: os :: raw :: c_void , Size : UINT) > , pub BeginEvent : :: std :: option :: Option < unsafe extern "C" fn (This : * mut ID3D12GraphicsCommandList4 , Metadata : UINT , pData : * const :: std :: os :: raw :: c_void , Size : UINT) > , pub EndEvent : :: std :: option :: Option < unsafe extern "C" fn (This : * mut ID3D12GraphicsCommandList4) > , pub ExecuteIndirect : :: std :: option :: Option < unsafe extern "C" fn (This : * mut ID3D12GraphicsCommandList4 , pCommandSignature : * mut ID3D12CommandSignature , MaxCommandCount : UINT , pArgumentBuffer : * mut ID3D12Resource , ArgumentBufferOffset : UINT64 , pCountBuffer : * mut ID3D12Resource , CountBufferOffset : UINT64) > , pub AtomicCopyBufferUINT : :: std :: option :: Option < unsafe extern "C" fn (This : * mut ID3D12GraphicsCommandList4 , pDstBuffer : * mut ID3D12Resource , DstOffset : UINT64 , pSrcBuffer : * mut ID3D12Resource , SrcOffset : UINT64 , Dependencies : UINT , ppDependentResources : * const * mut ID3D12Resource , pDependentSubresourceRanges : * const D3D12_SUBRESOURCE_RANGE_UINT64) > , pub AtomicCopyBufferUINT64 : :: std :: option :: Option < unsafe extern "C" fn (This : * mut ID3D12GraphicsCommandList4 , pDstBuffer : * mut ID3D12Resource , DstOffset : UINT64 , pSrcBuffer : * mut ID3D12Resource , SrcOffset : UINT64 , Dependencies : UINT , ppDependentResources : * const * mut ID3D12Resource , pDependentSubresourceRanges : * const D3D12_SUBRESOURCE_RANGE_UINT64) > , pub OMSetDepthBounds : :: std :: option :: Option < unsafe extern "C" fn (This : * mut ID3D12GraphicsCommandList4 , Min : FLOAT , Max : FLOAT) > , pub SetSamplePositions : :: std :: option :: Option < unsafe extern "C" fn (This : * mut ID3D12GraphicsCommandList4 , NumSamplesPerPixel : UINT , NumPixels : UINT , pSamplePositions : * mut D3D12_SAMPLE_POSITION) > , pub ResolveSubresourceRegion : :: std :: option :: Option < unsafe extern "C" fn (This : * mut ID3D12GraphicsCommandList4 , pDstResource : * mut ID3D12Resource , DstSubresource : UINT , DstX : UINT , DstY : UINT , pSrcResource : * mut ID3D12Resource , SrcSubresource : UINT , pSrcRect : * mut D3D12_RECT , Format : DXGI_FORMAT , ResolveMode : D3D12_RESOLVE_MODE) > , pub SetViewInstanceMask : :: std :: option :: Option < unsafe extern "C" fn (This : * mut ID3D12GraphicsCommandList4 , Mask : UINT) > , pub WriteBufferImmediate : :: std :: option :: Option < unsafe extern "C" fn (This : * mut ID3D12GraphicsCommandList4 , Count : UINT , pParams : * const D3D12_WRITEBUFFERIMMEDIATE_PARAMETER , pModes : * const D3D12_WRITEBUFFERIMMEDIATE_MODE) > , pub SetProtectedResourceSession : :: std :: option :: Option < unsafe extern "C" fn (This : * mut ID3D12GraphicsCommandList4 , pProtectedResourceSession : * mut ID3D12ProtectedResourceSession) > , pub BeginRenderPass : :: std :: option :: Option < unsafe extern "C" fn (This : * mut ID3D12GraphicsCommandList4 , NumRenderTargets : UINT , pRenderTargets : * const D3D12_RENDER_PASS_RENDER_TARGET_DESC , pDepthStencil : * const D3D12_RENDER_PASS_DEPTH_STENCIL_DESC , Flags : D3D12_RENDER_PASS_FLAGS) > , pub EndRenderPass : :: std :: option :: Option < unsafe extern "C" fn (This : * mut ID3D12GraphicsCommandList4) > , pub InitializeMetaCommand : :: std :: option :: Option < unsafe extern "C" fn (This : * mut ID3D12GraphicsCommandList4 , pMetaCommand : * mut ID3D12MetaCommand , pInitializationParametersData : * const :: std :: os :: raw :: c_void , InitializationParametersDataSizeInBytes : SIZE_T) > , pub ExecuteMetaCommand : :: std :: option :: Option < unsafe extern "C" fn (This : * mut ID3D12GraphicsCommandList4 , pMetaCommand : * mut ID3D12MetaCommand , pExecutionParametersData : * const :: std :: os :: raw :: c_void , ExecutionParametersDataSizeInBytes : SIZE_T) > , pub BuildRaytracingAccelerationStructure : :: std :: option :: Option < unsafe extern "C" fn (This : * mut ID3D12GraphicsCommandList4 , pDesc : * const D3D12_BUILD_RAYTRACING_ACCELERATION_STRUCTURE_DESC , NumPostbuildInfoDescs : UINT , pPostbuildInfoDescs : * const D3D12_RAYTRACING_ACCELERATION_STRUCTURE_POSTBUILD_INFO_DESC) > , pub EmitRaytracingAccelerationStructurePostbuildInfo : :: std :: option :: Option < unsafe extern "C" fn (This : * mut ID3D12GraphicsCommandList4 , pDesc : * const D3D12_RAYTRACING_ACCELERATION_STRUCTURE_POSTBUILD_INFO_DESC , NumSourceAccelerationStructures : UINT , pSourceAccelerationStructureData : * const D3D12_GPU_VIRTUAL_ADDRESS) > , pub CopyRaytracingAccelerationStructure : :: std :: option :: Option < unsafe extern "C" fn (This : * mut ID3D12GraphicsCommandList4 , DestAccelerationStructureData : D3D12_GPU_VIRTUAL_ADDRESS , SourceAccelerationStructureData : D3D12_GPU_VIRTUAL_ADDRESS , Mode : D3D12_RAYTRACING_ACCELERATION_STRUCTURE_COPY_MODE) > , pub SetPipelineState1 : :: std :: option :: Option < unsafe extern "C" fn (This : * mut ID3D12GraphicsCommandList4 , pStateObject : * mut ID3D12StateObject) > , pub DispatchRays : :: std :: option :: Option < unsafe extern "C" fn (This : * mut ID3D12GraphicsCommandList4 , pDesc : * const D3D12_DISPATCH_RAYS_DESC) > , }
15485#[repr(C)]
15486#[derive(Debug, Copy, Clone, Hash, PartialOrd, Ord, PartialEq, Eq)]
15487pub struct ID3D12GraphicsCommandList4 {
15488 pub lpVtbl: *mut ID3D12GraphicsCommandList4Vtbl,
15489}
15490impl Default for ID3D12GraphicsCommandList4 {
15491 fn default() -> Self {
15492 let mut s = ::std::mem::MaybeUninit::<Self>::uninit();
15493 unsafe {
15494 ::std::ptr::write_bytes(s.as_mut_ptr(), 0, 1);
15495 s.assume_init()
15496 }
15497 }
15498}
15499pub const D3D12_SHADER_CACHE_MODE_D3D12_SHADER_CACHE_MODE_MEMORY:
15500 D3D12_SHADER_CACHE_MODE = 0;
15501pub const D3D12_SHADER_CACHE_MODE_D3D12_SHADER_CACHE_MODE_DISK:
15502 D3D12_SHADER_CACHE_MODE = 1;
15503pub type D3D12_SHADER_CACHE_MODE = ::std::os::raw::c_int;
15504pub const D3D12_SHADER_CACHE_FLAGS_D3D12_SHADER_CACHE_FLAG_NONE:
15505 D3D12_SHADER_CACHE_FLAGS = 0;
15506pub const D3D12_SHADER_CACHE_FLAGS_D3D12_SHADER_CACHE_FLAG_DRIVER_VERSIONED:
15507 D3D12_SHADER_CACHE_FLAGS = 1;
15508pub const D3D12_SHADER_CACHE_FLAGS_D3D12_SHADER_CACHE_FLAG_USE_WORKING_DIR:
15509 D3D12_SHADER_CACHE_FLAGS = 2;
15510pub type D3D12_SHADER_CACHE_FLAGS = ::std::os::raw::c_int;
15511#[repr(C)]
15512#[derive(Debug, Copy, Clone, Hash, PartialOrd, Ord, PartialEq, Eq)]
15513pub struct D3D12_SHADER_CACHE_SESSION_DESC {
15514 pub Identifier: GUID,
15515 pub Mode: D3D12_SHADER_CACHE_MODE,
15516 pub Flags: D3D12_SHADER_CACHE_FLAGS,
15517 pub MaximumInMemoryCacheSizeBytes: UINT,
15518 pub MaximumInMemoryCacheEntries: UINT,
15519 pub MaximumValueFileSizeBytes: UINT,
15520 pub Version: UINT64,
15521}
15522impl Default for D3D12_SHADER_CACHE_SESSION_DESC {
15523 fn default() -> Self {
15524 let mut s = ::std::mem::MaybeUninit::<Self>::uninit();
15525 unsafe {
15526 ::std::ptr::write_bytes(s.as_mut_ptr(), 0, 1);
15527 s.assume_init()
15528 }
15529 }
15530}
15531pub const D3D12_BARRIER_LAYOUT_D3D12_BARRIER_LAYOUT_UNDEFINED:
15532 D3D12_BARRIER_LAYOUT = -1;
15533pub const D3D12_BARRIER_LAYOUT_D3D12_BARRIER_LAYOUT_COMMON:
15534 D3D12_BARRIER_LAYOUT = 0;
15535pub const D3D12_BARRIER_LAYOUT_D3D12_BARRIER_LAYOUT_PRESENT:
15536 D3D12_BARRIER_LAYOUT = 0;
15537pub const D3D12_BARRIER_LAYOUT_D3D12_BARRIER_LAYOUT_GENERIC_READ:
15538 D3D12_BARRIER_LAYOUT = 1;
15539pub const D3D12_BARRIER_LAYOUT_D3D12_BARRIER_LAYOUT_RENDER_TARGET:
15540 D3D12_BARRIER_LAYOUT = 2;
15541pub const D3D12_BARRIER_LAYOUT_D3D12_BARRIER_LAYOUT_UNORDERED_ACCESS:
15542 D3D12_BARRIER_LAYOUT = 3;
15543pub const D3D12_BARRIER_LAYOUT_D3D12_BARRIER_LAYOUT_DEPTH_STENCIL_WRITE:
15544 D3D12_BARRIER_LAYOUT = 4;
15545pub const D3D12_BARRIER_LAYOUT_D3D12_BARRIER_LAYOUT_DEPTH_STENCIL_READ:
15546 D3D12_BARRIER_LAYOUT = 5;
15547pub const D3D12_BARRIER_LAYOUT_D3D12_BARRIER_LAYOUT_SHADER_RESOURCE:
15548 D3D12_BARRIER_LAYOUT = 6;
15549pub const D3D12_BARRIER_LAYOUT_D3D12_BARRIER_LAYOUT_COPY_SOURCE:
15550 D3D12_BARRIER_LAYOUT = 7;
15551pub const D3D12_BARRIER_LAYOUT_D3D12_BARRIER_LAYOUT_COPY_DEST:
15552 D3D12_BARRIER_LAYOUT = 8;
15553pub const D3D12_BARRIER_LAYOUT_D3D12_BARRIER_LAYOUT_RESOLVE_SOURCE:
15554 D3D12_BARRIER_LAYOUT = 9;
15555pub const D3D12_BARRIER_LAYOUT_D3D12_BARRIER_LAYOUT_RESOLVE_DEST:
15556 D3D12_BARRIER_LAYOUT = 10;
15557pub const D3D12_BARRIER_LAYOUT_D3D12_BARRIER_LAYOUT_SHADING_RATE_SOURCE:
15558 D3D12_BARRIER_LAYOUT = 11;
15559pub const D3D12_BARRIER_LAYOUT_D3D12_BARRIER_LAYOUT_VIDEO_DECODE_READ:
15560 D3D12_BARRIER_LAYOUT = 12;
15561pub const D3D12_BARRIER_LAYOUT_D3D12_BARRIER_LAYOUT_VIDEO_DECODE_WRITE:
15562 D3D12_BARRIER_LAYOUT = 13;
15563pub const D3D12_BARRIER_LAYOUT_D3D12_BARRIER_LAYOUT_VIDEO_PROCESS_READ:
15564 D3D12_BARRIER_LAYOUT = 14;
15565pub const D3D12_BARRIER_LAYOUT_D3D12_BARRIER_LAYOUT_VIDEO_PROCESS_WRITE:
15566 D3D12_BARRIER_LAYOUT = 15;
15567pub const D3D12_BARRIER_LAYOUT_D3D12_BARRIER_LAYOUT_VIDEO_ENCODE_READ:
15568 D3D12_BARRIER_LAYOUT = 16;
15569pub const D3D12_BARRIER_LAYOUT_D3D12_BARRIER_LAYOUT_VIDEO_ENCODE_WRITE:
15570 D3D12_BARRIER_LAYOUT = 17;
15571pub const D3D12_BARRIER_LAYOUT_D3D12_BARRIER_LAYOUT_DIRECT_QUEUE_COMMON:
15572 D3D12_BARRIER_LAYOUT = 18;
15573pub const D3D12_BARRIER_LAYOUT_D3D12_BARRIER_LAYOUT_DIRECT_QUEUE_GENERIC_READ : D3D12_BARRIER_LAYOUT = 19 ;
15574pub const D3D12_BARRIER_LAYOUT_D3D12_BARRIER_LAYOUT_DIRECT_QUEUE_UNORDERED_ACCESS : D3D12_BARRIER_LAYOUT = 20 ;
15575pub const D3D12_BARRIER_LAYOUT_D3D12_BARRIER_LAYOUT_DIRECT_QUEUE_SHADER_RESOURCE : D3D12_BARRIER_LAYOUT = 21 ;
15576pub const D3D12_BARRIER_LAYOUT_D3D12_BARRIER_LAYOUT_DIRECT_QUEUE_COPY_SOURCE:
15577 D3D12_BARRIER_LAYOUT = 22;
15578pub const D3D12_BARRIER_LAYOUT_D3D12_BARRIER_LAYOUT_DIRECT_QUEUE_COPY_DEST:
15579 D3D12_BARRIER_LAYOUT = 23;
15580pub const D3D12_BARRIER_LAYOUT_D3D12_BARRIER_LAYOUT_COMPUTE_QUEUE_COMMON:
15581 D3D12_BARRIER_LAYOUT = 24;
15582pub const D3D12_BARRIER_LAYOUT_D3D12_BARRIER_LAYOUT_COMPUTE_QUEUE_GENERIC_READ : D3D12_BARRIER_LAYOUT = 25 ;
15583pub const D3D12_BARRIER_LAYOUT_D3D12_BARRIER_LAYOUT_COMPUTE_QUEUE_UNORDERED_ACCESS : D3D12_BARRIER_LAYOUT = 26 ;
15584pub const D3D12_BARRIER_LAYOUT_D3D12_BARRIER_LAYOUT_COMPUTE_QUEUE_SHADER_RESOURCE : D3D12_BARRIER_LAYOUT = 27 ;
15585pub const D3D12_BARRIER_LAYOUT_D3D12_BARRIER_LAYOUT_COMPUTE_QUEUE_COPY_SOURCE : D3D12_BARRIER_LAYOUT = 28 ;
15586pub const D3D12_BARRIER_LAYOUT_D3D12_BARRIER_LAYOUT_COMPUTE_QUEUE_COPY_DEST:
15587 D3D12_BARRIER_LAYOUT = 29;
15588pub const D3D12_BARRIER_LAYOUT_D3D12_BARRIER_LAYOUT_VIDEO_QUEUE_COMMON:
15589 D3D12_BARRIER_LAYOUT = 30;
15590pub type D3D12_BARRIER_LAYOUT = ::std::os::raw::c_int;
15591pub const D3D12_BARRIER_SYNC_D3D12_BARRIER_SYNC_NONE: D3D12_BARRIER_SYNC = 0;
15592pub const D3D12_BARRIER_SYNC_D3D12_BARRIER_SYNC_ALL: D3D12_BARRIER_SYNC = 1;
15593pub const D3D12_BARRIER_SYNC_D3D12_BARRIER_SYNC_DRAW: D3D12_BARRIER_SYNC = 2;
15594pub const D3D12_BARRIER_SYNC_D3D12_BARRIER_SYNC_INPUT_ASSEMBLER:
15595 D3D12_BARRIER_SYNC = 4;
15596pub const D3D12_BARRIER_SYNC_D3D12_BARRIER_SYNC_VERTEX_SHADING:
15597 D3D12_BARRIER_SYNC = 8;
15598pub const D3D12_BARRIER_SYNC_D3D12_BARRIER_SYNC_PIXEL_SHADING:
15599 D3D12_BARRIER_SYNC = 16;
15600pub const D3D12_BARRIER_SYNC_D3D12_BARRIER_SYNC_DEPTH_STENCIL:
15601 D3D12_BARRIER_SYNC = 32;
15602pub const D3D12_BARRIER_SYNC_D3D12_BARRIER_SYNC_RENDER_TARGET:
15603 D3D12_BARRIER_SYNC = 64;
15604pub const D3D12_BARRIER_SYNC_D3D12_BARRIER_SYNC_COMPUTE_SHADING:
15605 D3D12_BARRIER_SYNC = 128;
15606pub const D3D12_BARRIER_SYNC_D3D12_BARRIER_SYNC_RAYTRACING: D3D12_BARRIER_SYNC =
15607 256;
15608pub const D3D12_BARRIER_SYNC_D3D12_BARRIER_SYNC_COPY: D3D12_BARRIER_SYNC = 512;
15609pub const D3D12_BARRIER_SYNC_D3D12_BARRIER_SYNC_RESOLVE: D3D12_BARRIER_SYNC =
15610 1024;
15611pub const D3D12_BARRIER_SYNC_D3D12_BARRIER_SYNC_EXECUTE_INDIRECT:
15612 D3D12_BARRIER_SYNC = 2048;
15613pub const D3D12_BARRIER_SYNC_D3D12_BARRIER_SYNC_PREDICATION:
15614 D3D12_BARRIER_SYNC = 2048;
15615pub const D3D12_BARRIER_SYNC_D3D12_BARRIER_SYNC_ALL_SHADING:
15616 D3D12_BARRIER_SYNC = 4096;
15617pub const D3D12_BARRIER_SYNC_D3D12_BARRIER_SYNC_NON_PIXEL_SHADING:
15618 D3D12_BARRIER_SYNC = 8192;
15619pub const D3D12_BARRIER_SYNC_D3D12_BARRIER_SYNC_EMIT_RAYTRACING_ACCELERATION_STRUCTURE_POSTBUILD_INFO : D3D12_BARRIER_SYNC = 16384 ;
15620pub const D3D12_BARRIER_SYNC_D3D12_BARRIER_SYNC_VIDEO_DECODE:
15621 D3D12_BARRIER_SYNC = 1048576;
15622pub const D3D12_BARRIER_SYNC_D3D12_BARRIER_SYNC_VIDEO_PROCESS:
15623 D3D12_BARRIER_SYNC = 2097152;
15624pub const D3D12_BARRIER_SYNC_D3D12_BARRIER_SYNC_VIDEO_ENCODE:
15625 D3D12_BARRIER_SYNC = 4194304;
15626pub const D3D12_BARRIER_SYNC_D3D12_BARRIER_SYNC_BUILD_RAYTRACING_ACCELERATION_STRUCTURE : D3D12_BARRIER_SYNC = 8388608 ;
15627pub const D3D12_BARRIER_SYNC_D3D12_BARRIER_SYNC_COPY_RAYTRACING_ACCELERATION_STRUCTURE : D3D12_BARRIER_SYNC = 16777216 ;
15628pub const D3D12_BARRIER_SYNC_D3D12_BARRIER_SYNC_SPLIT: D3D12_BARRIER_SYNC =
15629 -2147483648;
15630pub type D3D12_BARRIER_SYNC = ::std::os::raw::c_int;
15631pub const D3D12_BARRIER_ACCESS_D3D12_BARRIER_ACCESS_COMMON:
15632 D3D12_BARRIER_ACCESS = 0;
15633pub const D3D12_BARRIER_ACCESS_D3D12_BARRIER_ACCESS_VERTEX_BUFFER:
15634 D3D12_BARRIER_ACCESS = 1;
15635pub const D3D12_BARRIER_ACCESS_D3D12_BARRIER_ACCESS_CONSTANT_BUFFER:
15636 D3D12_BARRIER_ACCESS = 2;
15637pub const D3D12_BARRIER_ACCESS_D3D12_BARRIER_ACCESS_INDEX_BUFFER:
15638 D3D12_BARRIER_ACCESS = 4;
15639pub const D3D12_BARRIER_ACCESS_D3D12_BARRIER_ACCESS_RENDER_TARGET:
15640 D3D12_BARRIER_ACCESS = 8;
15641pub const D3D12_BARRIER_ACCESS_D3D12_BARRIER_ACCESS_UNORDERED_ACCESS:
15642 D3D12_BARRIER_ACCESS = 16;
15643pub const D3D12_BARRIER_ACCESS_D3D12_BARRIER_ACCESS_DEPTH_STENCIL_WRITE:
15644 D3D12_BARRIER_ACCESS = 32;
15645pub const D3D12_BARRIER_ACCESS_D3D12_BARRIER_ACCESS_DEPTH_STENCIL_READ:
15646 D3D12_BARRIER_ACCESS = 64;
15647pub const D3D12_BARRIER_ACCESS_D3D12_BARRIER_ACCESS_SHADER_RESOURCE:
15648 D3D12_BARRIER_ACCESS = 128;
15649pub const D3D12_BARRIER_ACCESS_D3D12_BARRIER_ACCESS_STREAM_OUTPUT:
15650 D3D12_BARRIER_ACCESS = 256;
15651pub const D3D12_BARRIER_ACCESS_D3D12_BARRIER_ACCESS_INDIRECT_ARGUMENT:
15652 D3D12_BARRIER_ACCESS = 512;
15653pub const D3D12_BARRIER_ACCESS_D3D12_BARRIER_ACCESS_PREDICATION:
15654 D3D12_BARRIER_ACCESS = 512;
15655pub const D3D12_BARRIER_ACCESS_D3D12_BARRIER_ACCESS_COPY_DEST:
15656 D3D12_BARRIER_ACCESS = 1024;
15657pub const D3D12_BARRIER_ACCESS_D3D12_BARRIER_ACCESS_COPY_SOURCE:
15658 D3D12_BARRIER_ACCESS = 2048;
15659pub const D3D12_BARRIER_ACCESS_D3D12_BARRIER_ACCESS_RESOLVE_DEST:
15660 D3D12_BARRIER_ACCESS = 4096;
15661pub const D3D12_BARRIER_ACCESS_D3D12_BARRIER_ACCESS_RESOLVE_SOURCE:
15662 D3D12_BARRIER_ACCESS = 8192;
15663pub const D3D12_BARRIER_ACCESS_D3D12_BARRIER_ACCESS_RAYTRACING_ACCELERATION_STRUCTURE_READ : D3D12_BARRIER_ACCESS = 16384 ;
15664pub const D3D12_BARRIER_ACCESS_D3D12_BARRIER_ACCESS_RAYTRACING_ACCELERATION_STRUCTURE_WRITE : D3D12_BARRIER_ACCESS = 32768 ;
15665pub const D3D12_BARRIER_ACCESS_D3D12_BARRIER_ACCESS_SHADING_RATE_SOURCE:
15666 D3D12_BARRIER_ACCESS = 65536;
15667pub const D3D12_BARRIER_ACCESS_D3D12_BARRIER_ACCESS_VIDEO_DECODE_READ:
15668 D3D12_BARRIER_ACCESS = 131072;
15669pub const D3D12_BARRIER_ACCESS_D3D12_BARRIER_ACCESS_VIDEO_DECODE_WRITE:
15670 D3D12_BARRIER_ACCESS = 262144;
15671pub const D3D12_BARRIER_ACCESS_D3D12_BARRIER_ACCESS_VIDEO_PROCESS_READ:
15672 D3D12_BARRIER_ACCESS = 524288;
15673pub const D3D12_BARRIER_ACCESS_D3D12_BARRIER_ACCESS_VIDEO_PROCESS_WRITE:
15674 D3D12_BARRIER_ACCESS = 1048576;
15675pub const D3D12_BARRIER_ACCESS_D3D12_BARRIER_ACCESS_VIDEO_ENCODE_READ:
15676 D3D12_BARRIER_ACCESS = 2097152;
15677pub const D3D12_BARRIER_ACCESS_D3D12_BARRIER_ACCESS_VIDEO_ENCODE_WRITE:
15678 D3D12_BARRIER_ACCESS = 4194304;
15679pub const D3D12_BARRIER_ACCESS_D3D12_BARRIER_ACCESS_NO_ACCESS:
15680 D3D12_BARRIER_ACCESS = -2147483648;
15681pub type D3D12_BARRIER_ACCESS = ::std::os::raw::c_int;
15682pub const D3D12_BARRIER_TYPE_D3D12_BARRIER_TYPE_GLOBAL: D3D12_BARRIER_TYPE = 0;
15683pub const D3D12_BARRIER_TYPE_D3D12_BARRIER_TYPE_TEXTURE: D3D12_BARRIER_TYPE = 1;
15684pub const D3D12_BARRIER_TYPE_D3D12_BARRIER_TYPE_BUFFER: D3D12_BARRIER_TYPE = 2;
15685pub type D3D12_BARRIER_TYPE = ::std::os::raw::c_int;
15686pub const D3D12_TEXTURE_BARRIER_FLAGS_D3D12_TEXTURE_BARRIER_FLAG_NONE:
15687 D3D12_TEXTURE_BARRIER_FLAGS = 0;
15688pub const D3D12_TEXTURE_BARRIER_FLAGS_D3D12_TEXTURE_BARRIER_FLAG_DISCARD:
15689 D3D12_TEXTURE_BARRIER_FLAGS = 1;
15690pub type D3D12_TEXTURE_BARRIER_FLAGS = ::std::os::raw::c_int;
15691#[repr(C)]
15692#[derive(Debug, Default, Copy, Clone, Hash, PartialOrd, Ord, PartialEq, Eq)]
15693pub struct D3D12_BARRIER_SUBRESOURCE_RANGE {
15694 pub IndexOrFirstMipLevel: UINT,
15695 pub NumMipLevels: UINT,
15696 pub FirstArraySlice: UINT,
15697 pub NumArraySlices: UINT,
15698 pub FirstPlane: UINT,
15699 pub NumPlanes: UINT,
15700}
15701#[repr(C)]
15702#[derive(Debug, Copy, Clone, Hash, PartialOrd, Ord, PartialEq, Eq)]
15703pub struct D3D12_GLOBAL_BARRIER {
15704 pub SyncBefore: D3D12_BARRIER_SYNC,
15705 pub SyncAfter: D3D12_BARRIER_SYNC,
15706 pub AccessBefore: D3D12_BARRIER_ACCESS,
15707 pub AccessAfter: D3D12_BARRIER_ACCESS,
15708}
15709impl Default for D3D12_GLOBAL_BARRIER {
15710 fn default() -> Self {
15711 let mut s = ::std::mem::MaybeUninit::<Self>::uninit();
15712 unsafe {
15713 ::std::ptr::write_bytes(s.as_mut_ptr(), 0, 1);
15714 s.assume_init()
15715 }
15716 }
15717}
15718#[repr(C)]
15719#[derive(Debug, Copy, Clone, Hash, PartialOrd, Ord, PartialEq, Eq)]
15720pub struct D3D12_TEXTURE_BARRIER {
15721 pub SyncBefore: D3D12_BARRIER_SYNC,
15722 pub SyncAfter: D3D12_BARRIER_SYNC,
15723 pub AccessBefore: D3D12_BARRIER_ACCESS,
15724 pub AccessAfter: D3D12_BARRIER_ACCESS,
15725 pub LayoutBefore: D3D12_BARRIER_LAYOUT,
15726 pub LayoutAfter: D3D12_BARRIER_LAYOUT,
15727 pub pResource: *mut ID3D12Resource,
15728 pub Subresources: D3D12_BARRIER_SUBRESOURCE_RANGE,
15729 pub Flags: D3D12_TEXTURE_BARRIER_FLAGS,
15730}
15731impl Default for D3D12_TEXTURE_BARRIER {
15732 fn default() -> Self {
15733 let mut s = ::std::mem::MaybeUninit::<Self>::uninit();
15734 unsafe {
15735 ::std::ptr::write_bytes(s.as_mut_ptr(), 0, 1);
15736 s.assume_init()
15737 }
15738 }
15739}
15740#[repr(C)]
15741#[derive(Debug, Copy, Clone, Hash, PartialOrd, Ord, PartialEq, Eq)]
15742pub struct D3D12_BUFFER_BARRIER {
15743 pub SyncBefore: D3D12_BARRIER_SYNC,
15744 pub SyncAfter: D3D12_BARRIER_SYNC,
15745 pub AccessBefore: D3D12_BARRIER_ACCESS,
15746 pub AccessAfter: D3D12_BARRIER_ACCESS,
15747 pub pResource: *mut ID3D12Resource,
15748 pub Offset: UINT64,
15749 pub Size: UINT64,
15750}
15751impl Default for D3D12_BUFFER_BARRIER {
15752 fn default() -> Self {
15753 let mut s = ::std::mem::MaybeUninit::<Self>::uninit();
15754 unsafe {
15755 ::std::ptr::write_bytes(s.as_mut_ptr(), 0, 1);
15756 s.assume_init()
15757 }
15758 }
15759}
15760#[repr(C)]
15761#[derive(Debug, Copy, Clone, Hash, PartialOrd, Ord, PartialEq, Eq)]
15762pub struct D3D12_RESOURCE_STATE_BARRIER {
15763 pub State: D3D12_RESOURCE_STATES,
15764 pub pResource: *mut ID3D12Resource,
15765 pub Subresource: UINT,
15766 pub Sync: D3D12_BARRIER_SYNC,
15767 pub Access: D3D12_BARRIER_ACCESS,
15768 pub Layout: D3D12_BARRIER_LAYOUT,
15769}
15770impl Default for D3D12_RESOURCE_STATE_BARRIER {
15771 fn default() -> Self {
15772 let mut s = ::std::mem::MaybeUninit::<Self>::uninit();
15773 unsafe {
15774 ::std::ptr::write_bytes(s.as_mut_ptr(), 0, 1);
15775 s.assume_init()
15776 }
15777 }
15778}
15779#[repr(C)]
15780#[derive(Copy, Clone)]
15781pub struct D3D12_BARRIER_GROUP {
15782 pub Type: D3D12_BARRIER_TYPE,
15783 pub NumBarriers: UINT32,
15784 pub __bindgen_anon_1: D3D12_BARRIER_GROUP__bindgen_ty_1,
15785}
15786#[repr(C)]
15787#[derive(Copy, Clone)]
15788pub union D3D12_BARRIER_GROUP__bindgen_ty_1 {
15789 pub pGlobalBarriers: *const D3D12_GLOBAL_BARRIER,
15790 pub pTextureBarriers: *const D3D12_TEXTURE_BARRIER,
15791 pub pBufferBarriers: *const D3D12_BUFFER_BARRIER,
15792 pub pStateBarriers: *const D3D12_RESOURCE_STATE_BARRIER,
15793}
15794impl Default for D3D12_BARRIER_GROUP__bindgen_ty_1 {
15795 fn default() -> Self {
15796 let mut s = ::std::mem::MaybeUninit::<Self>::uninit();
15797 unsafe {
15798 ::std::ptr::write_bytes(s.as_mut_ptr(), 0, 1);
15799 s.assume_init()
15800 }
15801 }
15802}
15803impl ::std::fmt::Debug for D3D12_BARRIER_GROUP__bindgen_ty_1 {
15804 fn fmt(&self, f: &mut ::std::fmt::Formatter<'_>) -> ::std::fmt::Result {
15805 write!(f, "D3D12_BARRIER_GROUP__bindgen_ty_1 {{ union }}")
15806 }
15807}
15808impl Default for D3D12_BARRIER_GROUP {
15809 fn default() -> Self {
15810 let mut s = ::std::mem::MaybeUninit::<Self>::uninit();
15811 unsafe {
15812 ::std::ptr::write_bytes(s.as_mut_ptr(), 0, 1);
15813 s.assume_init()
15814 }
15815 }
15816}
15817impl ::std::fmt::Debug for D3D12_BARRIER_GROUP {
15818 fn fmt(&self, f: &mut ::std::fmt::Formatter<'_>) -> ::std::fmt::Result {
15819 write ! (f , "D3D12_BARRIER_GROUP {{ Type: {:?}, NumBarriers: {:?}, __bindgen_anon_1: {:?} }}" , self . Type , self . NumBarriers , self . __bindgen_anon_1)
15820 }
15821}
15822extern "C" {
15823 pub static IID_ID3D12ShaderCacheSession: IID;
15824}
15825#[repr(C)]
15826#[derive(Debug, Default, Copy, Clone, Hash, PartialOrd, Ord, PartialEq, Eq)]
15827pub struct ID3D12ShaderCacheSessionVtbl {
15828 pub QueryInterface: ::std::option::Option<
15829 unsafe extern "C" fn(
15830 This: *mut ID3D12ShaderCacheSession,
15831 riid: *const IID,
15832 ppvObject: *mut *mut ::std::os::raw::c_void,
15833 ) -> HRESULT,
15834 >,
15835 pub AddRef: ::std::option::Option<
15836 unsafe extern "C" fn(This: *mut ID3D12ShaderCacheSession) -> ULONG,
15837 >,
15838 pub Release: ::std::option::Option<
15839 unsafe extern "C" fn(This: *mut ID3D12ShaderCacheSession) -> ULONG,
15840 >,
15841 pub GetPrivateData: ::std::option::Option<
15842 unsafe extern "C" fn(
15843 This: *mut ID3D12ShaderCacheSession,
15844 guid: *const GUID,
15845 pDataSize: *mut UINT,
15846 pData: *mut ::std::os::raw::c_void,
15847 ) -> HRESULT,
15848 >,
15849 pub SetPrivateData: ::std::option::Option<
15850 unsafe extern "C" fn(
15851 This: *mut ID3D12ShaderCacheSession,
15852 guid: *const GUID,
15853 DataSize: UINT,
15854 pData: *const ::std::os::raw::c_void,
15855 ) -> HRESULT,
15856 >,
15857 pub SetPrivateDataInterface: ::std::option::Option<
15858 unsafe extern "C" fn(
15859 This: *mut ID3D12ShaderCacheSession,
15860 guid: *const GUID,
15861 pData: *const IUnknown,
15862 ) -> HRESULT,
15863 >,
15864 pub SetName: ::std::option::Option<
15865 unsafe extern "C" fn(
15866 This: *mut ID3D12ShaderCacheSession,
15867 Name: LPCWSTR,
15868 ) -> HRESULT,
15869 >,
15870 pub GetDevice: ::std::option::Option<
15871 unsafe extern "C" fn(
15872 This: *mut ID3D12ShaderCacheSession,
15873 riid: *const IID,
15874 ppvDevice: *mut *mut ::std::os::raw::c_void,
15875 ) -> HRESULT,
15876 >,
15877 pub FindValue: ::std::option::Option<
15878 unsafe extern "C" fn(
15879 This: *mut ID3D12ShaderCacheSession,
15880 pKey: *const ::std::os::raw::c_void,
15881 KeySize: UINT,
15882 pValue: *mut ::std::os::raw::c_void,
15883 pValueSize: *mut UINT,
15884 ) -> HRESULT,
15885 >,
15886 pub StoreValue: ::std::option::Option<
15887 unsafe extern "C" fn(
15888 This: *mut ID3D12ShaderCacheSession,
15889 pKey: *const ::std::os::raw::c_void,
15890 KeySize: UINT,
15891 pValue: *const ::std::os::raw::c_void,
15892 ValueSize: UINT,
15893 ) -> HRESULT,
15894 >,
15895 pub SetDeleteOnDestroy: ::std::option::Option<
15896 unsafe extern "C" fn(This: *mut ID3D12ShaderCacheSession),
15897 >,
15898 pub GetDesc: ::std::option::Option<
15899 unsafe extern "C" fn(
15900 This: *mut ID3D12ShaderCacheSession,
15901 RetVal: *mut D3D12_SHADER_CACHE_SESSION_DESC,
15902 ) -> *mut D3D12_SHADER_CACHE_SESSION_DESC,
15903 >,
15904}
15905#[repr(C)]
15906#[derive(Debug, Copy, Clone, Hash, PartialOrd, Ord, PartialEq, Eq)]
15907pub struct ID3D12ShaderCacheSession {
15908 pub lpVtbl: *mut ID3D12ShaderCacheSessionVtbl,
15909}
15910impl Default for ID3D12ShaderCacheSession {
15911 fn default() -> Self {
15912 let mut s = ::std::mem::MaybeUninit::<Self>::uninit();
15913 unsafe {
15914 ::std::ptr::write_bytes(s.as_mut_ptr(), 0, 1);
15915 s.assume_init()
15916 }
15917 }
15918}
15919pub const D3D12_SHADER_CACHE_KIND_FLAGS_D3D12_SHADER_CACHE_KIND_FLAG_IMPLICIT_D3D_CACHE_FOR_DRIVER : D3D12_SHADER_CACHE_KIND_FLAGS = 1 ;
15920pub const D3D12_SHADER_CACHE_KIND_FLAGS_D3D12_SHADER_CACHE_KIND_FLAG_IMPLICIT_D3D_CONVERSIONS : D3D12_SHADER_CACHE_KIND_FLAGS = 2 ;
15921pub const D3D12_SHADER_CACHE_KIND_FLAGS_D3D12_SHADER_CACHE_KIND_FLAG_IMPLICIT_DRIVER_MANAGED : D3D12_SHADER_CACHE_KIND_FLAGS = 4 ;
15922pub const D3D12_SHADER_CACHE_KIND_FLAGS_D3D12_SHADER_CACHE_KIND_FLAG_APPLICATION_MANAGED : D3D12_SHADER_CACHE_KIND_FLAGS = 8 ;
15923pub type D3D12_SHADER_CACHE_KIND_FLAGS = ::std::os::raw::c_int;
15924pub const D3D12_SHADER_CACHE_CONTROL_FLAGS_D3D12_SHADER_CACHE_CONTROL_FLAG_DISABLE : D3D12_SHADER_CACHE_CONTROL_FLAGS = 1 ;
15925pub const D3D12_SHADER_CACHE_CONTROL_FLAGS_D3D12_SHADER_CACHE_CONTROL_FLAG_ENABLE : D3D12_SHADER_CACHE_CONTROL_FLAGS = 2 ;
15926pub const D3D12_SHADER_CACHE_CONTROL_FLAGS_D3D12_SHADER_CACHE_CONTROL_FLAG_CLEAR : D3D12_SHADER_CACHE_CONTROL_FLAGS = 4 ;
15927pub type D3D12_SHADER_CACHE_CONTROL_FLAGS = ::std::os::raw::c_int;
15928extern "C" {
15929 pub static IID_ID3D12Device9: IID;
15930}
15931#[repr(C)]
15932#[derive(Debug, Default, Copy, Clone, Hash, PartialOrd, Ord, PartialEq, Eq)]
15933pub struct ID3D12Device9Vtbl { pub QueryInterface : :: std :: option :: Option < unsafe extern "C" fn (This : * mut ID3D12Device9 , riid : * const IID , ppvObject : * mut * mut :: std :: os :: raw :: c_void) -> HRESULT > , pub AddRef : :: std :: option :: Option < unsafe extern "C" fn (This : * mut ID3D12Device9) -> ULONG > , pub Release : :: std :: option :: Option < unsafe extern "C" fn (This : * mut ID3D12Device9) -> ULONG > , pub GetPrivateData : :: std :: option :: Option < unsafe extern "C" fn (This : * mut ID3D12Device9 , guid : * const GUID , pDataSize : * mut UINT , pData : * mut :: std :: os :: raw :: c_void) -> HRESULT > , pub SetPrivateData : :: std :: option :: Option < unsafe extern "C" fn (This : * mut ID3D12Device9 , guid : * const GUID , DataSize : UINT , pData : * const :: std :: os :: raw :: c_void) -> HRESULT > , pub SetPrivateDataInterface : :: std :: option :: Option < unsafe extern "C" fn (This : * mut ID3D12Device9 , guid : * const GUID , pData : * const IUnknown) -> HRESULT > , pub SetName : :: std :: option :: Option < unsafe extern "C" fn (This : * mut ID3D12Device9 , Name : LPCWSTR) -> HRESULT > , pub GetNodeCount : :: std :: option :: Option < unsafe extern "C" fn (This : * mut ID3D12Device9) -> UINT > , pub CreateCommandQueue : :: std :: option :: Option < unsafe extern "C" fn (This : * mut ID3D12Device9 , pDesc : * const D3D12_COMMAND_QUEUE_DESC , riid : * const IID , ppCommandQueue : * mut * mut :: std :: os :: raw :: c_void) -> HRESULT > , pub CreateCommandAllocator : :: std :: option :: Option < unsafe extern "C" fn (This : * mut ID3D12Device9 , type_ : D3D12_COMMAND_LIST_TYPE , riid : * const IID , ppCommandAllocator : * mut * mut :: std :: os :: raw :: c_void) -> HRESULT > , pub CreateGraphicsPipelineState : :: std :: option :: Option < unsafe extern "C" fn (This : * mut ID3D12Device9 , pDesc : * const D3D12_GRAPHICS_PIPELINE_STATE_DESC , riid : * const IID , ppPipelineState : * mut * mut :: std :: os :: raw :: c_void) -> HRESULT > , pub CreateComputePipelineState : :: std :: option :: Option < unsafe extern "C" fn (This : * mut ID3D12Device9 , pDesc : * const D3D12_COMPUTE_PIPELINE_STATE_DESC , riid : * const IID , ppPipelineState : * mut * mut :: std :: os :: raw :: c_void) -> HRESULT > , pub CreateCommandList : :: std :: option :: Option < unsafe extern "C" fn (This : * mut ID3D12Device9 , nodeMask : UINT , type_ : D3D12_COMMAND_LIST_TYPE , pCommandAllocator : * mut ID3D12CommandAllocator , pInitialState : * mut ID3D12PipelineState , riid : * const IID , ppCommandList : * mut * mut :: std :: os :: raw :: c_void) -> HRESULT > , pub CheckFeatureSupport : :: std :: option :: Option < unsafe extern "C" fn (This : * mut ID3D12Device9 , Feature : D3D12_FEATURE , pFeatureSupportData : * mut :: std :: os :: raw :: c_void , FeatureSupportDataSize : UINT) -> HRESULT > , pub CreateDescriptorHeap : :: std :: option :: Option < unsafe extern "C" fn (This : * mut ID3D12Device9 , pDescriptorHeapDesc : * const D3D12_DESCRIPTOR_HEAP_DESC , riid : * const IID , ppvHeap : * mut * mut :: std :: os :: raw :: c_void) -> HRESULT > , pub GetDescriptorHandleIncrementSize : :: std :: option :: Option < unsafe extern "C" fn (This : * mut ID3D12Device9 , DescriptorHeapType : D3D12_DESCRIPTOR_HEAP_TYPE) -> UINT > , pub CreateRootSignature : :: std :: option :: Option < unsafe extern "C" fn (This : * mut ID3D12Device9 , nodeMask : UINT , pBlobWithRootSignature : * const :: std :: os :: raw :: c_void , blobLengthInBytes : SIZE_T , riid : * const IID , ppvRootSignature : * mut * mut :: std :: os :: raw :: c_void) -> HRESULT > , pub CreateConstantBufferView : :: std :: option :: Option < unsafe extern "C" fn (This : * mut ID3D12Device9 , pDesc : * const D3D12_CONSTANT_BUFFER_VIEW_DESC , DestDescriptor : D3D12_CPU_DESCRIPTOR_HANDLE) > , pub CreateShaderResourceView : :: std :: option :: Option < unsafe extern "C" fn (This : * mut ID3D12Device9 , pResource : * mut ID3D12Resource , pDesc : * const D3D12_SHADER_RESOURCE_VIEW_DESC , DestDescriptor : D3D12_CPU_DESCRIPTOR_HANDLE) > , pub CreateUnorderedAccessView : :: std :: option :: Option < unsafe extern "C" fn (This : * mut ID3D12Device9 , pResource : * mut ID3D12Resource , pCounterResource : * mut ID3D12Resource , pDesc : * const D3D12_UNORDERED_ACCESS_VIEW_DESC , DestDescriptor : D3D12_CPU_DESCRIPTOR_HANDLE) > , pub CreateRenderTargetView : :: std :: option :: Option < unsafe extern "C" fn (This : * mut ID3D12Device9 , pResource : * mut ID3D12Resource , pDesc : * const D3D12_RENDER_TARGET_VIEW_DESC , DestDescriptor : D3D12_CPU_DESCRIPTOR_HANDLE) > , pub CreateDepthStencilView : :: std :: option :: Option < unsafe extern "C" fn (This : * mut ID3D12Device9 , pResource : * mut ID3D12Resource , pDesc : * const D3D12_DEPTH_STENCIL_VIEW_DESC , DestDescriptor : D3D12_CPU_DESCRIPTOR_HANDLE) > , pub CreateSampler : :: std :: option :: Option < unsafe extern "C" fn (This : * mut ID3D12Device9 , pDesc : * const D3D12_SAMPLER_DESC , DestDescriptor : D3D12_CPU_DESCRIPTOR_HANDLE) > , pub CopyDescriptors : :: std :: option :: Option < unsafe extern "C" fn (This : * mut ID3D12Device9 , NumDestDescriptorRanges : UINT , pDestDescriptorRangeStarts : * const D3D12_CPU_DESCRIPTOR_HANDLE , pDestDescriptorRangeSizes : * const UINT , NumSrcDescriptorRanges : UINT , pSrcDescriptorRangeStarts : * const D3D12_CPU_DESCRIPTOR_HANDLE , pSrcDescriptorRangeSizes : * const UINT , DescriptorHeapsType : D3D12_DESCRIPTOR_HEAP_TYPE) > , pub CopyDescriptorsSimple : :: std :: option :: Option < unsafe extern "C" fn (This : * mut ID3D12Device9 , NumDescriptors : UINT , DestDescriptorRangeStart : D3D12_CPU_DESCRIPTOR_HANDLE , SrcDescriptorRangeStart : D3D12_CPU_DESCRIPTOR_HANDLE , DescriptorHeapsType : D3D12_DESCRIPTOR_HEAP_TYPE) > , pub GetResourceAllocationInfo : :: std :: option :: Option < unsafe extern "C" fn (This : * mut ID3D12Device9 , RetVal : * mut D3D12_RESOURCE_ALLOCATION_INFO , visibleMask : UINT , numResourceDescs : UINT , pResourceDescs : * const D3D12_RESOURCE_DESC) -> * mut D3D12_RESOURCE_ALLOCATION_INFO > , pub GetCustomHeapProperties : :: std :: option :: Option < unsafe extern "C" fn (This : * mut ID3D12Device9 , RetVal : * mut D3D12_HEAP_PROPERTIES , nodeMask : UINT , heapType : D3D12_HEAP_TYPE) -> * mut D3D12_HEAP_PROPERTIES > , pub CreateCommittedResource : :: std :: option :: Option < unsafe extern "C" fn (This : * mut ID3D12Device9 , pHeapProperties : * const D3D12_HEAP_PROPERTIES , HeapFlags : D3D12_HEAP_FLAGS , pDesc : * const D3D12_RESOURCE_DESC , InitialResourceState : D3D12_RESOURCE_STATES , pOptimizedClearValue : * const D3D12_CLEAR_VALUE , riidResource : * const IID , ppvResource : * mut * mut :: std :: os :: raw :: c_void) -> HRESULT > , pub CreateHeap : :: std :: option :: Option < unsafe extern "C" fn (This : * mut ID3D12Device9 , pDesc : * const D3D12_HEAP_DESC , riid : * const IID , ppvHeap : * mut * mut :: std :: os :: raw :: c_void) -> HRESULT > , pub CreatePlacedResource : :: std :: option :: Option < unsafe extern "C" fn (This : * mut ID3D12Device9 , pHeap : * mut ID3D12Heap , HeapOffset : UINT64 , pDesc : * const D3D12_RESOURCE_DESC , InitialState : D3D12_RESOURCE_STATES , pOptimizedClearValue : * const D3D12_CLEAR_VALUE , riid : * const IID , ppvResource : * mut * mut :: std :: os :: raw :: c_void) -> HRESULT > , pub CreateReservedResource : :: std :: option :: Option < unsafe extern "C" fn (This : * mut ID3D12Device9 , pDesc : * const D3D12_RESOURCE_DESC , InitialState : D3D12_RESOURCE_STATES , pOptimizedClearValue : * const D3D12_CLEAR_VALUE , riid : * const IID , ppvResource : * mut * mut :: std :: os :: raw :: c_void) -> HRESULT > , pub CreateSharedHandle : :: std :: option :: Option < unsafe extern "C" fn (This : * mut ID3D12Device9 , pObject : * mut ID3D12DeviceChild , pAttributes : * const SECURITY_ATTRIBUTES , Access : DWORD , Name : LPCWSTR , pHandle : * mut HANDLE) -> HRESULT > , pub OpenSharedHandle : :: std :: option :: Option < unsafe extern "C" fn (This : * mut ID3D12Device9 , NTHandle : HANDLE , riid : * const IID , ppvObj : * mut * mut :: std :: os :: raw :: c_void) -> HRESULT > , pub OpenSharedHandleByName : :: std :: option :: Option < unsafe extern "C" fn (This : * mut ID3D12Device9 , Name : LPCWSTR , Access : DWORD , pNTHandle : * mut HANDLE) -> HRESULT > , pub MakeResident : :: std :: option :: Option < unsafe extern "C" fn (This : * mut ID3D12Device9 , NumObjects : UINT , ppObjects : * const * mut ID3D12Pageable) -> HRESULT > , pub Evict : :: std :: option :: Option < unsafe extern "C" fn (This : * mut ID3D12Device9 , NumObjects : UINT , ppObjects : * const * mut ID3D12Pageable) -> HRESULT > , pub CreateFence : :: std :: option :: Option < unsafe extern "C" fn (This : * mut ID3D12Device9 , InitialValue : UINT64 , Flags : D3D12_FENCE_FLAGS , riid : * const IID , ppFence : * mut * mut :: std :: os :: raw :: c_void) -> HRESULT > , pub GetDeviceRemovedReason : :: std :: option :: Option < unsafe extern "C" fn (This : * mut ID3D12Device9) -> HRESULT > , pub GetCopyableFootprints : :: std :: option :: Option < unsafe extern "C" fn (This : * mut ID3D12Device9 , pResourceDesc : * const D3D12_RESOURCE_DESC , FirstSubresource : UINT , NumSubresources : UINT , BaseOffset : UINT64 , pLayouts : * mut D3D12_PLACED_SUBRESOURCE_FOOTPRINT , pNumRows : * mut UINT , pRowSizeInBytes : * mut UINT64 , pTotalBytes : * mut UINT64) > , pub CreateQueryHeap : :: std :: option :: Option < unsafe extern "C" fn (This : * mut ID3D12Device9 , pDesc : * const D3D12_QUERY_HEAP_DESC , riid : * const IID , ppvHeap : * mut * mut :: std :: os :: raw :: c_void) -> HRESULT > , pub SetStablePowerState : :: std :: option :: Option < unsafe extern "C" fn (This : * mut ID3D12Device9 , Enable : BOOL) -> HRESULT > , pub CreateCommandSignature : :: std :: option :: Option < unsafe extern "C" fn (This : * mut ID3D12Device9 , pDesc : * const D3D12_COMMAND_SIGNATURE_DESC , pRootSignature : * mut ID3D12RootSignature , riid : * const IID , ppvCommandSignature : * mut * mut :: std :: os :: raw :: c_void) -> HRESULT > , pub GetResourceTiling : :: std :: option :: Option < unsafe extern "C" fn (This : * mut ID3D12Device9 , pTiledResource : * mut ID3D12Resource , pNumTilesForEntireResource : * mut UINT , pPackedMipDesc : * mut D3D12_PACKED_MIP_INFO , pStandardTileShapeForNonPackedMips : * mut D3D12_TILE_SHAPE , pNumSubresourceTilings : * mut UINT , FirstSubresourceTilingToGet : UINT , pSubresourceTilingsForNonPackedMips : * mut D3D12_SUBRESOURCE_TILING) > , pub GetAdapterLuid : :: std :: option :: Option < unsafe extern "C" fn (This : * mut ID3D12Device9 , RetVal : * mut LUID) -> * mut LUID > , pub CreatePipelineLibrary : :: std :: option :: Option < unsafe extern "C" fn (This : * mut ID3D12Device9 , pLibraryBlob : * const :: std :: os :: raw :: c_void , BlobLength : SIZE_T , riid : * const IID , ppPipelineLibrary : * mut * mut :: std :: os :: raw :: c_void) -> HRESULT > , pub SetEventOnMultipleFenceCompletion : :: std :: option :: Option < unsafe extern "C" fn (This : * mut ID3D12Device9 , ppFences : * const * mut ID3D12Fence , pFenceValues : * const UINT64 , NumFences : UINT , Flags : D3D12_MULTIPLE_FENCE_WAIT_FLAGS , hEvent : HANDLE) -> HRESULT > , pub SetResidencyPriority : :: std :: option :: Option < unsafe extern "C" fn (This : * mut ID3D12Device9 , NumObjects : UINT , ppObjects : * const * mut ID3D12Pageable , pPriorities : * const D3D12_RESIDENCY_PRIORITY) -> HRESULT > , pub CreatePipelineState : :: std :: option :: Option < unsafe extern "C" fn (This : * mut ID3D12Device9 , pDesc : * const D3D12_PIPELINE_STATE_STREAM_DESC , riid : * const IID , ppPipelineState : * mut * mut :: std :: os :: raw :: c_void) -> HRESULT > , pub OpenExistingHeapFromAddress : :: std :: option :: Option < unsafe extern "C" fn (This : * mut ID3D12Device9 , pAddress : * const :: std :: os :: raw :: c_void , riid : * const IID , ppvHeap : * mut * mut :: std :: os :: raw :: c_void) -> HRESULT > , pub OpenExistingHeapFromFileMapping : :: std :: option :: Option < unsafe extern "C" fn (This : * mut ID3D12Device9 , hFileMapping : HANDLE , riid : * const IID , ppvHeap : * mut * mut :: std :: os :: raw :: c_void) -> HRESULT > , pub EnqueueMakeResident : :: std :: option :: Option < unsafe extern "C" fn (This : * mut ID3D12Device9 , Flags : D3D12_RESIDENCY_FLAGS , NumObjects : UINT , ppObjects : * const * mut ID3D12Pageable , pFenceToSignal : * mut ID3D12Fence , FenceValueToSignal : UINT64) -> HRESULT > , pub CreateCommandList1 : :: std :: option :: Option < unsafe extern "C" fn (This : * mut ID3D12Device9 , nodeMask : UINT , type_ : D3D12_COMMAND_LIST_TYPE , flags : D3D12_COMMAND_LIST_FLAGS , riid : * const IID , ppCommandList : * mut * mut :: std :: os :: raw :: c_void) -> HRESULT > , pub CreateProtectedResourceSession : :: std :: option :: Option < unsafe extern "C" fn (This : * mut ID3D12Device9 , pDesc : * const D3D12_PROTECTED_RESOURCE_SESSION_DESC , riid : * const IID , ppSession : * mut * mut :: std :: os :: raw :: c_void) -> HRESULT > , pub CreateCommittedResource1 : :: std :: option :: Option < unsafe extern "C" fn (This : * mut ID3D12Device9 , pHeapProperties : * const D3D12_HEAP_PROPERTIES , HeapFlags : D3D12_HEAP_FLAGS , pDesc : * const D3D12_RESOURCE_DESC , InitialResourceState : D3D12_RESOURCE_STATES , pOptimizedClearValue : * const D3D12_CLEAR_VALUE , pProtectedSession : * mut ID3D12ProtectedResourceSession , riidResource : * const IID , ppvResource : * mut * mut :: std :: os :: raw :: c_void) -> HRESULT > , pub CreateHeap1 : :: std :: option :: Option < unsafe extern "C" fn (This : * mut ID3D12Device9 , pDesc : * const D3D12_HEAP_DESC , pProtectedSession : * mut ID3D12ProtectedResourceSession , riid : * const IID , ppvHeap : * mut * mut :: std :: os :: raw :: c_void) -> HRESULT > , pub CreateReservedResource1 : :: std :: option :: Option < unsafe extern "C" fn (This : * mut ID3D12Device9 , pDesc : * const D3D12_RESOURCE_DESC , InitialState : D3D12_RESOURCE_STATES , pOptimizedClearValue : * const D3D12_CLEAR_VALUE , pProtectedSession : * mut ID3D12ProtectedResourceSession , riid : * const IID , ppvResource : * mut * mut :: std :: os :: raw :: c_void) -> HRESULT > , pub GetResourceAllocationInfo1 : :: std :: option :: Option < unsafe extern "C" fn (This : * mut ID3D12Device9 , RetVal : * mut D3D12_RESOURCE_ALLOCATION_INFO , visibleMask : UINT , numResourceDescs : UINT , pResourceDescs : * const D3D12_RESOURCE_DESC , pResourceAllocationInfo1 : * mut D3D12_RESOURCE_ALLOCATION_INFO1) -> * mut D3D12_RESOURCE_ALLOCATION_INFO > , pub CreateLifetimeTracker : :: std :: option :: Option < unsafe extern "C" fn (This : * mut ID3D12Device9 , pOwner : * mut ID3D12LifetimeOwner , riid : * const IID , ppvTracker : * mut * mut :: std :: os :: raw :: c_void) -> HRESULT > , pub RemoveDevice : :: std :: option :: Option < unsafe extern "C" fn (This : * mut ID3D12Device9) > , pub EnumerateMetaCommands : :: std :: option :: Option < unsafe extern "C" fn (This : * mut ID3D12Device9 , pNumMetaCommands : * mut UINT , pDescs : * mut D3D12_META_COMMAND_DESC) -> HRESULT > , pub EnumerateMetaCommandParameters : :: std :: option :: Option < unsafe extern "C" fn (This : * mut ID3D12Device9 , CommandId : * const GUID , Stage : D3D12_META_COMMAND_PARAMETER_STAGE , pTotalStructureSizeInBytes : * mut UINT , pParameterCount : * mut UINT , pParameterDescs : * mut D3D12_META_COMMAND_PARAMETER_DESC) -> HRESULT > , pub CreateMetaCommand : :: std :: option :: Option < unsafe extern "C" fn (This : * mut ID3D12Device9 , CommandId : * const GUID , NodeMask : UINT , pCreationParametersData : * const :: std :: os :: raw :: c_void , CreationParametersDataSizeInBytes : SIZE_T , riid : * const IID , ppMetaCommand : * mut * mut :: std :: os :: raw :: c_void) -> HRESULT > , pub CreateStateObject : :: std :: option :: Option < unsafe extern "C" fn (This : * mut ID3D12Device9 , pDesc : * const D3D12_STATE_OBJECT_DESC , riid : * const IID , ppStateObject : * mut * mut :: std :: os :: raw :: c_void) -> HRESULT > , pub GetRaytracingAccelerationStructurePrebuildInfo : :: std :: option :: Option < unsafe extern "C" fn (This : * mut ID3D12Device9 , pDesc : * const D3D12_BUILD_RAYTRACING_ACCELERATION_STRUCTURE_INPUTS , pInfo : * mut D3D12_RAYTRACING_ACCELERATION_STRUCTURE_PREBUILD_INFO) > , pub CheckDriverMatchingIdentifier : :: std :: option :: Option < unsafe extern "C" fn (This : * mut ID3D12Device9 , SerializedDataType : D3D12_SERIALIZED_DATA_TYPE , pIdentifierToCheck : * const D3D12_SERIALIZED_DATA_DRIVER_MATCHING_IDENTIFIER) -> D3D12_DRIVER_MATCHING_IDENTIFIER_STATUS > , pub SetBackgroundProcessingMode : :: std :: option :: Option < unsafe extern "C" fn (This : * mut ID3D12Device9 , Mode : D3D12_BACKGROUND_PROCESSING_MODE , MeasurementsAction : D3D12_MEASUREMENTS_ACTION , hEventToSignalUponCompletion : HANDLE , pbFurtherMeasurementsDesired : * mut BOOL) -> HRESULT > , pub AddToStateObject : :: std :: option :: Option < unsafe extern "C" fn (This : * mut ID3D12Device9 , pAddition : * const D3D12_STATE_OBJECT_DESC , pStateObjectToGrowFrom : * mut ID3D12StateObject , riid : * const IID , ppNewStateObject : * mut * mut :: std :: os :: raw :: c_void) -> HRESULT > , pub CreateProtectedResourceSession1 : :: std :: option :: Option < unsafe extern "C" fn (This : * mut ID3D12Device9 , pDesc : * const D3D12_PROTECTED_RESOURCE_SESSION_DESC1 , riid : * const IID , ppSession : * mut * mut :: std :: os :: raw :: c_void) -> HRESULT > , pub GetResourceAllocationInfo2 : :: std :: option :: Option < unsafe extern "C" fn (This : * mut ID3D12Device9 , RetVal : * mut D3D12_RESOURCE_ALLOCATION_INFO , visibleMask : UINT , numResourceDescs : UINT , pResourceDescs : * const D3D12_RESOURCE_DESC1 , pResourceAllocationInfo1 : * mut D3D12_RESOURCE_ALLOCATION_INFO1) -> * mut D3D12_RESOURCE_ALLOCATION_INFO > , pub CreateCommittedResource2 : :: std :: option :: Option < unsafe extern "C" fn (This : * mut ID3D12Device9 , pHeapProperties : * const D3D12_HEAP_PROPERTIES , HeapFlags : D3D12_HEAP_FLAGS , pDesc : * const D3D12_RESOURCE_DESC1 , InitialResourceState : D3D12_RESOURCE_STATES , pOptimizedClearValue : * const D3D12_CLEAR_VALUE , pProtectedSession : * mut ID3D12ProtectedResourceSession , riidResource : * const IID , ppvResource : * mut * mut :: std :: os :: raw :: c_void) -> HRESULT > , pub CreatePlacedResource1 : :: std :: option :: Option < unsafe extern "C" fn (This : * mut ID3D12Device9 , pHeap : * mut ID3D12Heap , HeapOffset : UINT64 , pDesc : * const D3D12_RESOURCE_DESC1 , InitialState : D3D12_RESOURCE_STATES , pOptimizedClearValue : * const D3D12_CLEAR_VALUE , riid : * const IID , ppvResource : * mut * mut :: std :: os :: raw :: c_void) -> HRESULT > , pub CreateSamplerFeedbackUnorderedAccessView : :: std :: option :: Option < unsafe extern "C" fn (This : * mut ID3D12Device9 , pTargetedResource : * mut ID3D12Resource , pFeedbackResource : * mut ID3D12Resource , DestDescriptor : D3D12_CPU_DESCRIPTOR_HANDLE) > , pub GetCopyableFootprints1 : :: std :: option :: Option < unsafe extern "C" fn (This : * mut ID3D12Device9 , pResourceDesc : * const D3D12_RESOURCE_DESC1 , FirstSubresource : UINT , NumSubresources : UINT , BaseOffset : UINT64 , pLayouts : * mut D3D12_PLACED_SUBRESOURCE_FOOTPRINT , pNumRows : * mut UINT , pRowSizeInBytes : * mut UINT64 , pTotalBytes : * mut UINT64) > , pub CreateShaderCacheSession : :: std :: option :: Option < unsafe extern "C" fn (This : * mut ID3D12Device9 , pDesc : * const D3D12_SHADER_CACHE_SESSION_DESC , riid : * const IID , ppvSession : * mut * mut :: std :: os :: raw :: c_void) -> HRESULT > , pub ShaderCacheControl : :: std :: option :: Option < unsafe extern "C" fn (This : * mut ID3D12Device9 , Kinds : D3D12_SHADER_CACHE_KIND_FLAGS , Control : D3D12_SHADER_CACHE_CONTROL_FLAGS) -> HRESULT > , pub CreateCommandQueue1 : :: std :: option :: Option < unsafe extern "C" fn (This : * mut ID3D12Device9 , pDesc : * const D3D12_COMMAND_QUEUE_DESC , CreatorID : * const IID , riid : * const IID , ppCommandQueue : * mut * mut :: std :: os :: raw :: c_void) -> HRESULT > , }
15934#[repr(C)]
15935#[derive(Debug, Copy, Clone, Hash, PartialOrd, Ord, PartialEq, Eq)]
15936pub struct ID3D12Device9 {
15937 pub lpVtbl: *mut ID3D12Device9Vtbl,
15938}
15939impl Default for ID3D12Device9 {
15940 fn default() -> Self {
15941 let mut s = ::std::mem::MaybeUninit::<Self>::uninit();
15942 unsafe {
15943 ::std::ptr::write_bytes(s.as_mut_ptr(), 0, 1);
15944 s.assume_init()
15945 }
15946 }
15947}
15948extern "C" {
15949 pub static IID_ID3D12Device10: IID;
15950}
15951#[repr(C)]
15952#[derive(Debug, Default, Copy, Clone, Hash, PartialOrd, Ord, PartialEq, Eq)]
15953pub struct ID3D12Device10Vtbl { pub QueryInterface : :: std :: option :: Option < unsafe extern "C" fn (This : * mut ID3D12Device10 , riid : * const IID , ppvObject : * mut * mut :: std :: os :: raw :: c_void) -> HRESULT > , pub AddRef : :: std :: option :: Option < unsafe extern "C" fn (This : * mut ID3D12Device10) -> ULONG > , pub Release : :: std :: option :: Option < unsafe extern "C" fn (This : * mut ID3D12Device10) -> ULONG > , pub GetPrivateData : :: std :: option :: Option < unsafe extern "C" fn (This : * mut ID3D12Device10 , guid : * const GUID , pDataSize : * mut UINT , pData : * mut :: std :: os :: raw :: c_void) -> HRESULT > , pub SetPrivateData : :: std :: option :: Option < unsafe extern "C" fn (This : * mut ID3D12Device10 , guid : * const GUID , DataSize : UINT , pData : * const :: std :: os :: raw :: c_void) -> HRESULT > , pub SetPrivateDataInterface : :: std :: option :: Option < unsafe extern "C" fn (This : * mut ID3D12Device10 , guid : * const GUID , pData : * const IUnknown) -> HRESULT > , pub SetName : :: std :: option :: Option < unsafe extern "C" fn (This : * mut ID3D12Device10 , Name : LPCWSTR) -> HRESULT > , pub GetNodeCount : :: std :: option :: Option < unsafe extern "C" fn (This : * mut ID3D12Device10) -> UINT > , pub CreateCommandQueue : :: std :: option :: Option < unsafe extern "C" fn (This : * mut ID3D12Device10 , pDesc : * const D3D12_COMMAND_QUEUE_DESC , riid : * const IID , ppCommandQueue : * mut * mut :: std :: os :: raw :: c_void) -> HRESULT > , pub CreateCommandAllocator : :: std :: option :: Option < unsafe extern "C" fn (This : * mut ID3D12Device10 , type_ : D3D12_COMMAND_LIST_TYPE , riid : * const IID , ppCommandAllocator : * mut * mut :: std :: os :: raw :: c_void) -> HRESULT > , pub CreateGraphicsPipelineState : :: std :: option :: Option < unsafe extern "C" fn (This : * mut ID3D12Device10 , pDesc : * const D3D12_GRAPHICS_PIPELINE_STATE_DESC , riid : * const IID , ppPipelineState : * mut * mut :: std :: os :: raw :: c_void) -> HRESULT > , pub CreateComputePipelineState : :: std :: option :: Option < unsafe extern "C" fn (This : * mut ID3D12Device10 , pDesc : * const D3D12_COMPUTE_PIPELINE_STATE_DESC , riid : * const IID , ppPipelineState : * mut * mut :: std :: os :: raw :: c_void) -> HRESULT > , pub CreateCommandList : :: std :: option :: Option < unsafe extern "C" fn (This : * mut ID3D12Device10 , nodeMask : UINT , type_ : D3D12_COMMAND_LIST_TYPE , pCommandAllocator : * mut ID3D12CommandAllocator , pInitialState : * mut ID3D12PipelineState , riid : * const IID , ppCommandList : * mut * mut :: std :: os :: raw :: c_void) -> HRESULT > , pub CheckFeatureSupport : :: std :: option :: Option < unsafe extern "C" fn (This : * mut ID3D12Device10 , Feature : D3D12_FEATURE , pFeatureSupportData : * mut :: std :: os :: raw :: c_void , FeatureSupportDataSize : UINT) -> HRESULT > , pub CreateDescriptorHeap : :: std :: option :: Option < unsafe extern "C" fn (This : * mut ID3D12Device10 , pDescriptorHeapDesc : * const D3D12_DESCRIPTOR_HEAP_DESC , riid : * const IID , ppvHeap : * mut * mut :: std :: os :: raw :: c_void) -> HRESULT > , pub GetDescriptorHandleIncrementSize : :: std :: option :: Option < unsafe extern "C" fn (This : * mut ID3D12Device10 , DescriptorHeapType : D3D12_DESCRIPTOR_HEAP_TYPE) -> UINT > , pub CreateRootSignature : :: std :: option :: Option < unsafe extern "C" fn (This : * mut ID3D12Device10 , nodeMask : UINT , pBlobWithRootSignature : * const :: std :: os :: raw :: c_void , blobLengthInBytes : SIZE_T , riid : * const IID , ppvRootSignature : * mut * mut :: std :: os :: raw :: c_void) -> HRESULT > , pub CreateConstantBufferView : :: std :: option :: Option < unsafe extern "C" fn (This : * mut ID3D12Device10 , pDesc : * const D3D12_CONSTANT_BUFFER_VIEW_DESC , DestDescriptor : D3D12_CPU_DESCRIPTOR_HANDLE) > , pub CreateShaderResourceView : :: std :: option :: Option < unsafe extern "C" fn (This : * mut ID3D12Device10 , pResource : * mut ID3D12Resource , pDesc : * const D3D12_SHADER_RESOURCE_VIEW_DESC , DestDescriptor : D3D12_CPU_DESCRIPTOR_HANDLE) > , pub CreateUnorderedAccessView : :: std :: option :: Option < unsafe extern "C" fn (This : * mut ID3D12Device10 , pResource : * mut ID3D12Resource , pCounterResource : * mut ID3D12Resource , pDesc : * const D3D12_UNORDERED_ACCESS_VIEW_DESC , DestDescriptor : D3D12_CPU_DESCRIPTOR_HANDLE) > , pub CreateRenderTargetView : :: std :: option :: Option < unsafe extern "C" fn (This : * mut ID3D12Device10 , pResource : * mut ID3D12Resource , pDesc : * const D3D12_RENDER_TARGET_VIEW_DESC , DestDescriptor : D3D12_CPU_DESCRIPTOR_HANDLE) > , pub CreateDepthStencilView : :: std :: option :: Option < unsafe extern "C" fn (This : * mut ID3D12Device10 , pResource : * mut ID3D12Resource , pDesc : * const D3D12_DEPTH_STENCIL_VIEW_DESC , DestDescriptor : D3D12_CPU_DESCRIPTOR_HANDLE) > , pub CreateSampler : :: std :: option :: Option < unsafe extern "C" fn (This : * mut ID3D12Device10 , pDesc : * const D3D12_SAMPLER_DESC , DestDescriptor : D3D12_CPU_DESCRIPTOR_HANDLE) > , pub CopyDescriptors : :: std :: option :: Option < unsafe extern "C" fn (This : * mut ID3D12Device10 , NumDestDescriptorRanges : UINT , pDestDescriptorRangeStarts : * const D3D12_CPU_DESCRIPTOR_HANDLE , pDestDescriptorRangeSizes : * const UINT , NumSrcDescriptorRanges : UINT , pSrcDescriptorRangeStarts : * const D3D12_CPU_DESCRIPTOR_HANDLE , pSrcDescriptorRangeSizes : * const UINT , DescriptorHeapsType : D3D12_DESCRIPTOR_HEAP_TYPE) > , pub CopyDescriptorsSimple : :: std :: option :: Option < unsafe extern "C" fn (This : * mut ID3D12Device10 , NumDescriptors : UINT , DestDescriptorRangeStart : D3D12_CPU_DESCRIPTOR_HANDLE , SrcDescriptorRangeStart : D3D12_CPU_DESCRIPTOR_HANDLE , DescriptorHeapsType : D3D12_DESCRIPTOR_HEAP_TYPE) > , pub GetResourceAllocationInfo : :: std :: option :: Option < unsafe extern "C" fn (This : * mut ID3D12Device10 , RetVal : * mut D3D12_RESOURCE_ALLOCATION_INFO , visibleMask : UINT , numResourceDescs : UINT , pResourceDescs : * const D3D12_RESOURCE_DESC) -> * mut D3D12_RESOURCE_ALLOCATION_INFO > , pub GetCustomHeapProperties : :: std :: option :: Option < unsafe extern "C" fn (This : * mut ID3D12Device10 , RetVal : * mut D3D12_HEAP_PROPERTIES , nodeMask : UINT , heapType : D3D12_HEAP_TYPE) -> * mut D3D12_HEAP_PROPERTIES > , pub CreateCommittedResource : :: std :: option :: Option < unsafe extern "C" fn (This : * mut ID3D12Device10 , pHeapProperties : * const D3D12_HEAP_PROPERTIES , HeapFlags : D3D12_HEAP_FLAGS , pDesc : * const D3D12_RESOURCE_DESC , InitialResourceState : D3D12_RESOURCE_STATES , pOptimizedClearValue : * const D3D12_CLEAR_VALUE , riidResource : * const IID , ppvResource : * mut * mut :: std :: os :: raw :: c_void) -> HRESULT > , pub CreateHeap : :: std :: option :: Option < unsafe extern "C" fn (This : * mut ID3D12Device10 , pDesc : * const D3D12_HEAP_DESC , riid : * const IID , ppvHeap : * mut * mut :: std :: os :: raw :: c_void) -> HRESULT > , pub CreatePlacedResource : :: std :: option :: Option < unsafe extern "C" fn (This : * mut ID3D12Device10 , pHeap : * mut ID3D12Heap , HeapOffset : UINT64 , pDesc : * const D3D12_RESOURCE_DESC , InitialState : D3D12_RESOURCE_STATES , pOptimizedClearValue : * const D3D12_CLEAR_VALUE , riid : * const IID , ppvResource : * mut * mut :: std :: os :: raw :: c_void) -> HRESULT > , pub CreateReservedResource : :: std :: option :: Option < unsafe extern "C" fn (This : * mut ID3D12Device10 , pDesc : * const D3D12_RESOURCE_DESC , InitialState : D3D12_RESOURCE_STATES , pOptimizedClearValue : * const D3D12_CLEAR_VALUE , riid : * const IID , ppvResource : * mut * mut :: std :: os :: raw :: c_void) -> HRESULT > , pub CreateSharedHandle : :: std :: option :: Option < unsafe extern "C" fn (This : * mut ID3D12Device10 , pObject : * mut ID3D12DeviceChild , pAttributes : * const SECURITY_ATTRIBUTES , Access : DWORD , Name : LPCWSTR , pHandle : * mut HANDLE) -> HRESULT > , pub OpenSharedHandle : :: std :: option :: Option < unsafe extern "C" fn (This : * mut ID3D12Device10 , NTHandle : HANDLE , riid : * const IID , ppvObj : * mut * mut :: std :: os :: raw :: c_void) -> HRESULT > , pub OpenSharedHandleByName : :: std :: option :: Option < unsafe extern "C" fn (This : * mut ID3D12Device10 , Name : LPCWSTR , Access : DWORD , pNTHandle : * mut HANDLE) -> HRESULT > , pub MakeResident : :: std :: option :: Option < unsafe extern "C" fn (This : * mut ID3D12Device10 , NumObjects : UINT , ppObjects : * const * mut ID3D12Pageable) -> HRESULT > , pub Evict : :: std :: option :: Option < unsafe extern "C" fn (This : * mut ID3D12Device10 , NumObjects : UINT , ppObjects : * const * mut ID3D12Pageable) -> HRESULT > , pub CreateFence : :: std :: option :: Option < unsafe extern "C" fn (This : * mut ID3D12Device10 , InitialValue : UINT64 , Flags : D3D12_FENCE_FLAGS , riid : * const IID , ppFence : * mut * mut :: std :: os :: raw :: c_void) -> HRESULT > , pub GetDeviceRemovedReason : :: std :: option :: Option < unsafe extern "C" fn (This : * mut ID3D12Device10) -> HRESULT > , pub GetCopyableFootprints : :: std :: option :: Option < unsafe extern "C" fn (This : * mut ID3D12Device10 , pResourceDesc : * const D3D12_RESOURCE_DESC , FirstSubresource : UINT , NumSubresources : UINT , BaseOffset : UINT64 , pLayouts : * mut D3D12_PLACED_SUBRESOURCE_FOOTPRINT , pNumRows : * mut UINT , pRowSizeInBytes : * mut UINT64 , pTotalBytes : * mut UINT64) > , pub CreateQueryHeap : :: std :: option :: Option < unsafe extern "C" fn (This : * mut ID3D12Device10 , pDesc : * const D3D12_QUERY_HEAP_DESC , riid : * const IID , ppvHeap : * mut * mut :: std :: os :: raw :: c_void) -> HRESULT > , pub SetStablePowerState : :: std :: option :: Option < unsafe extern "C" fn (This : * mut ID3D12Device10 , Enable : BOOL) -> HRESULT > , pub CreateCommandSignature : :: std :: option :: Option < unsafe extern "C" fn (This : * mut ID3D12Device10 , pDesc : * const D3D12_COMMAND_SIGNATURE_DESC , pRootSignature : * mut ID3D12RootSignature , riid : * const IID , ppvCommandSignature : * mut * mut :: std :: os :: raw :: c_void) -> HRESULT > , pub GetResourceTiling : :: std :: option :: Option < unsafe extern "C" fn (This : * mut ID3D12Device10 , pTiledResource : * mut ID3D12Resource , pNumTilesForEntireResource : * mut UINT , pPackedMipDesc : * mut D3D12_PACKED_MIP_INFO , pStandardTileShapeForNonPackedMips : * mut D3D12_TILE_SHAPE , pNumSubresourceTilings : * mut UINT , FirstSubresourceTilingToGet : UINT , pSubresourceTilingsForNonPackedMips : * mut D3D12_SUBRESOURCE_TILING) > , pub GetAdapterLuid : :: std :: option :: Option < unsafe extern "C" fn (This : * mut ID3D12Device10 , RetVal : * mut LUID) -> * mut LUID > , pub CreatePipelineLibrary : :: std :: option :: Option < unsafe extern "C" fn (This : * mut ID3D12Device10 , pLibraryBlob : * const :: std :: os :: raw :: c_void , BlobLength : SIZE_T , riid : * const IID , ppPipelineLibrary : * mut * mut :: std :: os :: raw :: c_void) -> HRESULT > , pub SetEventOnMultipleFenceCompletion : :: std :: option :: Option < unsafe extern "C" fn (This : * mut ID3D12Device10 , ppFences : * const * mut ID3D12Fence , pFenceValues : * const UINT64 , NumFences : UINT , Flags : D3D12_MULTIPLE_FENCE_WAIT_FLAGS , hEvent : HANDLE) -> HRESULT > , pub SetResidencyPriority : :: std :: option :: Option < unsafe extern "C" fn (This : * mut ID3D12Device10 , NumObjects : UINT , ppObjects : * const * mut ID3D12Pageable , pPriorities : * const D3D12_RESIDENCY_PRIORITY) -> HRESULT > , pub CreatePipelineState : :: std :: option :: Option < unsafe extern "C" fn (This : * mut ID3D12Device10 , pDesc : * const D3D12_PIPELINE_STATE_STREAM_DESC , riid : * const IID , ppPipelineState : * mut * mut :: std :: os :: raw :: c_void) -> HRESULT > , pub OpenExistingHeapFromAddress : :: std :: option :: Option < unsafe extern "C" fn (This : * mut ID3D12Device10 , pAddress : * const :: std :: os :: raw :: c_void , riid : * const IID , ppvHeap : * mut * mut :: std :: os :: raw :: c_void) -> HRESULT > , pub OpenExistingHeapFromFileMapping : :: std :: option :: Option < unsafe extern "C" fn (This : * mut ID3D12Device10 , hFileMapping : HANDLE , riid : * const IID , ppvHeap : * mut * mut :: std :: os :: raw :: c_void) -> HRESULT > , pub EnqueueMakeResident : :: std :: option :: Option < unsafe extern "C" fn (This : * mut ID3D12Device10 , Flags : D3D12_RESIDENCY_FLAGS , NumObjects : UINT , ppObjects : * const * mut ID3D12Pageable , pFenceToSignal : * mut ID3D12Fence , FenceValueToSignal : UINT64) -> HRESULT > , pub CreateCommandList1 : :: std :: option :: Option < unsafe extern "C" fn (This : * mut ID3D12Device10 , nodeMask : UINT , type_ : D3D12_COMMAND_LIST_TYPE , flags : D3D12_COMMAND_LIST_FLAGS , riid : * const IID , ppCommandList : * mut * mut :: std :: os :: raw :: c_void) -> HRESULT > , pub CreateProtectedResourceSession : :: std :: option :: Option < unsafe extern "C" fn (This : * mut ID3D12Device10 , pDesc : * const D3D12_PROTECTED_RESOURCE_SESSION_DESC , riid : * const IID , ppSession : * mut * mut :: std :: os :: raw :: c_void) -> HRESULT > , pub CreateCommittedResource1 : :: std :: option :: Option < unsafe extern "C" fn (This : * mut ID3D12Device10 , pHeapProperties : * const D3D12_HEAP_PROPERTIES , HeapFlags : D3D12_HEAP_FLAGS , pDesc : * const D3D12_RESOURCE_DESC , InitialResourceState : D3D12_RESOURCE_STATES , pOptimizedClearValue : * const D3D12_CLEAR_VALUE , pProtectedSession : * mut ID3D12ProtectedResourceSession , riidResource : * const IID , ppvResource : * mut * mut :: std :: os :: raw :: c_void) -> HRESULT > , pub CreateHeap1 : :: std :: option :: Option < unsafe extern "C" fn (This : * mut ID3D12Device10 , pDesc : * const D3D12_HEAP_DESC , pProtectedSession : * mut ID3D12ProtectedResourceSession , riid : * const IID , ppvHeap : * mut * mut :: std :: os :: raw :: c_void) -> HRESULT > , pub CreateReservedResource1 : :: std :: option :: Option < unsafe extern "C" fn (This : * mut ID3D12Device10 , pDesc : * const D3D12_RESOURCE_DESC , InitialState : D3D12_RESOURCE_STATES , pOptimizedClearValue : * const D3D12_CLEAR_VALUE , pProtectedSession : * mut ID3D12ProtectedResourceSession , riid : * const IID , ppvResource : * mut * mut :: std :: os :: raw :: c_void) -> HRESULT > , pub GetResourceAllocationInfo1 : :: std :: option :: Option < unsafe extern "C" fn (This : * mut ID3D12Device10 , RetVal : * mut D3D12_RESOURCE_ALLOCATION_INFO , visibleMask : UINT , numResourceDescs : UINT , pResourceDescs : * const D3D12_RESOURCE_DESC , pResourceAllocationInfo1 : * mut D3D12_RESOURCE_ALLOCATION_INFO1) -> * mut D3D12_RESOURCE_ALLOCATION_INFO > , pub CreateLifetimeTracker : :: std :: option :: Option < unsafe extern "C" fn (This : * mut ID3D12Device10 , pOwner : * mut ID3D12LifetimeOwner , riid : * const IID , ppvTracker : * mut * mut :: std :: os :: raw :: c_void) -> HRESULT > , pub RemoveDevice : :: std :: option :: Option < unsafe extern "C" fn (This : * mut ID3D12Device10) > , pub EnumerateMetaCommands : :: std :: option :: Option < unsafe extern "C" fn (This : * mut ID3D12Device10 , pNumMetaCommands : * mut UINT , pDescs : * mut D3D12_META_COMMAND_DESC) -> HRESULT > , pub EnumerateMetaCommandParameters : :: std :: option :: Option < unsafe extern "C" fn (This : * mut ID3D12Device10 , CommandId : * const GUID , Stage : D3D12_META_COMMAND_PARAMETER_STAGE , pTotalStructureSizeInBytes : * mut UINT , pParameterCount : * mut UINT , pParameterDescs : * mut D3D12_META_COMMAND_PARAMETER_DESC) -> HRESULT > , pub CreateMetaCommand : :: std :: option :: Option < unsafe extern "C" fn (This : * mut ID3D12Device10 , CommandId : * const GUID , NodeMask : UINT , pCreationParametersData : * const :: std :: os :: raw :: c_void , CreationParametersDataSizeInBytes : SIZE_T , riid : * const IID , ppMetaCommand : * mut * mut :: std :: os :: raw :: c_void) -> HRESULT > , pub CreateStateObject : :: std :: option :: Option < unsafe extern "C" fn (This : * mut ID3D12Device10 , pDesc : * const D3D12_STATE_OBJECT_DESC , riid : * const IID , ppStateObject : * mut * mut :: std :: os :: raw :: c_void) -> HRESULT > , pub GetRaytracingAccelerationStructurePrebuildInfo : :: std :: option :: Option < unsafe extern "C" fn (This : * mut ID3D12Device10 , pDesc : * const D3D12_BUILD_RAYTRACING_ACCELERATION_STRUCTURE_INPUTS , pInfo : * mut D3D12_RAYTRACING_ACCELERATION_STRUCTURE_PREBUILD_INFO) > , pub CheckDriverMatchingIdentifier : :: std :: option :: Option < unsafe extern "C" fn (This : * mut ID3D12Device10 , SerializedDataType : D3D12_SERIALIZED_DATA_TYPE , pIdentifierToCheck : * const D3D12_SERIALIZED_DATA_DRIVER_MATCHING_IDENTIFIER) -> D3D12_DRIVER_MATCHING_IDENTIFIER_STATUS > , pub SetBackgroundProcessingMode : :: std :: option :: Option < unsafe extern "C" fn (This : * mut ID3D12Device10 , Mode : D3D12_BACKGROUND_PROCESSING_MODE , MeasurementsAction : D3D12_MEASUREMENTS_ACTION , hEventToSignalUponCompletion : HANDLE , pbFurtherMeasurementsDesired : * mut BOOL) -> HRESULT > , pub AddToStateObject : :: std :: option :: Option < unsafe extern "C" fn (This : * mut ID3D12Device10 , pAddition : * const D3D12_STATE_OBJECT_DESC , pStateObjectToGrowFrom : * mut ID3D12StateObject , riid : * const IID , ppNewStateObject : * mut * mut :: std :: os :: raw :: c_void) -> HRESULT > , pub CreateProtectedResourceSession1 : :: std :: option :: Option < unsafe extern "C" fn (This : * mut ID3D12Device10 , pDesc : * const D3D12_PROTECTED_RESOURCE_SESSION_DESC1 , riid : * const IID , ppSession : * mut * mut :: std :: os :: raw :: c_void) -> HRESULT > , pub GetResourceAllocationInfo2 : :: std :: option :: Option < unsafe extern "C" fn (This : * mut ID3D12Device10 , RetVal : * mut D3D12_RESOURCE_ALLOCATION_INFO , visibleMask : UINT , numResourceDescs : UINT , pResourceDescs : * const D3D12_RESOURCE_DESC1 , pResourceAllocationInfo1 : * mut D3D12_RESOURCE_ALLOCATION_INFO1) -> * mut D3D12_RESOURCE_ALLOCATION_INFO > , pub CreateCommittedResource2 : :: std :: option :: Option < unsafe extern "C" fn (This : * mut ID3D12Device10 , pHeapProperties : * const D3D12_HEAP_PROPERTIES , HeapFlags : D3D12_HEAP_FLAGS , pDesc : * const D3D12_RESOURCE_DESC1 , InitialResourceState : D3D12_RESOURCE_STATES , pOptimizedClearValue : * const D3D12_CLEAR_VALUE , pProtectedSession : * mut ID3D12ProtectedResourceSession , riidResource : * const IID , ppvResource : * mut * mut :: std :: os :: raw :: c_void) -> HRESULT > , pub CreatePlacedResource1 : :: std :: option :: Option < unsafe extern "C" fn (This : * mut ID3D12Device10 , pHeap : * mut ID3D12Heap , HeapOffset : UINT64 , pDesc : * const D3D12_RESOURCE_DESC1 , InitialState : D3D12_RESOURCE_STATES , pOptimizedClearValue : * const D3D12_CLEAR_VALUE , riid : * const IID , ppvResource : * mut * mut :: std :: os :: raw :: c_void) -> HRESULT > , pub CreateSamplerFeedbackUnorderedAccessView : :: std :: option :: Option < unsafe extern "C" fn (This : * mut ID3D12Device10 , pTargetedResource : * mut ID3D12Resource , pFeedbackResource : * mut ID3D12Resource , DestDescriptor : D3D12_CPU_DESCRIPTOR_HANDLE) > , pub GetCopyableFootprints1 : :: std :: option :: Option < unsafe extern "C" fn (This : * mut ID3D12Device10 , pResourceDesc : * const D3D12_RESOURCE_DESC1 , FirstSubresource : UINT , NumSubresources : UINT , BaseOffset : UINT64 , pLayouts : * mut D3D12_PLACED_SUBRESOURCE_FOOTPRINT , pNumRows : * mut UINT , pRowSizeInBytes : * mut UINT64 , pTotalBytes : * mut UINT64) > , pub CreateShaderCacheSession : :: std :: option :: Option < unsafe extern "C" fn (This : * mut ID3D12Device10 , pDesc : * const D3D12_SHADER_CACHE_SESSION_DESC , riid : * const IID , ppvSession : * mut * mut :: std :: os :: raw :: c_void) -> HRESULT > , pub ShaderCacheControl : :: std :: option :: Option < unsafe extern "C" fn (This : * mut ID3D12Device10 , Kinds : D3D12_SHADER_CACHE_KIND_FLAGS , Control : D3D12_SHADER_CACHE_CONTROL_FLAGS) -> HRESULT > , pub CreateCommandQueue1 : :: std :: option :: Option < unsafe extern "C" fn (This : * mut ID3D12Device10 , pDesc : * const D3D12_COMMAND_QUEUE_DESC , CreatorID : * const IID , riid : * const IID , ppCommandQueue : * mut * mut :: std :: os :: raw :: c_void) -> HRESULT > , pub CreateCommittedResource3 : :: std :: option :: Option < unsafe extern "C" fn (This : * mut ID3D12Device10 , pHeapProperties : * const D3D12_HEAP_PROPERTIES , HeapFlags : D3D12_HEAP_FLAGS , pDesc : * const D3D12_RESOURCE_DESC1 , InitialLayout : D3D12_BARRIER_LAYOUT , pOptimizedClearValue : * const D3D12_CLEAR_VALUE , pProtectedSession : * mut ID3D12ProtectedResourceSession , NumCastableFormats : UINT32 , pCastableFormats : * mut DXGI_FORMAT , riidResource : * const IID , ppvResource : * mut * mut :: std :: os :: raw :: c_void) -> HRESULT > , pub CreatePlacedResource2 : :: std :: option :: Option < unsafe extern "C" fn (This : * mut ID3D12Device10 , pHeap : * mut ID3D12Heap , HeapOffset : UINT64 , pDesc : * const D3D12_RESOURCE_DESC1 , InitialLayout : D3D12_BARRIER_LAYOUT , pOptimizedClearValue : * const D3D12_CLEAR_VALUE , NumCastableFormats : UINT32 , pCastableFormats : * mut DXGI_FORMAT , riid : * const IID , ppvResource : * mut * mut :: std :: os :: raw :: c_void) -> HRESULT > , pub CreateReservedResource2 : :: std :: option :: Option < unsafe extern "C" fn (This : * mut ID3D12Device10 , pDesc : * const D3D12_RESOURCE_DESC , InitialLayout : D3D12_BARRIER_LAYOUT , pOptimizedClearValue : * const D3D12_CLEAR_VALUE , pProtectedSession : * mut ID3D12ProtectedResourceSession , NumCastableFormats : UINT32 , pCastableFormats : * mut DXGI_FORMAT , riid : * const IID , ppvResource : * mut * mut :: std :: os :: raw :: c_void) -> HRESULT > , }
15954#[repr(C)]
15955#[derive(Debug, Copy, Clone, Hash, PartialOrd, Ord, PartialEq, Eq)]
15956pub struct ID3D12Device10 {
15957 pub lpVtbl: *mut ID3D12Device10Vtbl,
15958}
15959impl Default for ID3D12Device10 {
15960 fn default() -> Self {
15961 let mut s = ::std::mem::MaybeUninit::<Self>::uninit();
15962 unsafe {
15963 ::std::ptr::write_bytes(s.as_mut_ptr(), 0, 1);
15964 s.assume_init()
15965 }
15966 }
15967}
15968extern "C" {
15969 pub static IID_ID3D12VirtualizationGuestDevice: IID;
15970}
15971#[repr(C)]
15972#[derive(Debug, Default, Copy, Clone, Hash, PartialOrd, Ord, PartialEq, Eq)]
15973pub struct ID3D12VirtualizationGuestDeviceVtbl {
15974 pub QueryInterface: ::std::option::Option<
15975 unsafe extern "C" fn(
15976 This: *mut ID3D12VirtualizationGuestDevice,
15977 riid: *const IID,
15978 ppvObject: *mut *mut ::std::os::raw::c_void,
15979 ) -> HRESULT,
15980 >,
15981 pub AddRef: ::std::option::Option<
15982 unsafe extern "C" fn(
15983 This: *mut ID3D12VirtualizationGuestDevice,
15984 ) -> ULONG,
15985 >,
15986 pub Release: ::std::option::Option<
15987 unsafe extern "C" fn(
15988 This: *mut ID3D12VirtualizationGuestDevice,
15989 ) -> ULONG,
15990 >,
15991 pub ShareWithHost: ::std::option::Option<
15992 unsafe extern "C" fn(
15993 This: *mut ID3D12VirtualizationGuestDevice,
15994 pObject: *mut ID3D12DeviceChild,
15995 pHandle: *mut HANDLE,
15996 ) -> HRESULT,
15997 >,
15998 pub CreateFenceFd: ::std::option::Option<
15999 unsafe extern "C" fn(
16000 This: *mut ID3D12VirtualizationGuestDevice,
16001 pFence: *mut ID3D12Fence,
16002 FenceValue: UINT64,
16003 pFenceFd: *mut ::std::os::raw::c_int,
16004 ) -> HRESULT,
16005 >,
16006}
16007#[repr(C)]
16008#[derive(Debug, Copy, Clone, Hash, PartialOrd, Ord, PartialEq, Eq)]
16009pub struct ID3D12VirtualizationGuestDevice {
16010 pub lpVtbl: *mut ID3D12VirtualizationGuestDeviceVtbl,
16011}
16012impl Default for ID3D12VirtualizationGuestDevice {
16013 fn default() -> Self {
16014 let mut s = ::std::mem::MaybeUninit::<Self>::uninit();
16015 unsafe {
16016 ::std::ptr::write_bytes(s.as_mut_ptr(), 0, 1);
16017 s.assume_init()
16018 }
16019 }
16020}
16021extern "C" {
16022 pub static IID_ID3D12Tools: IID;
16023}
16024#[repr(C)]
16025#[derive(Debug, Default, Copy, Clone, Hash, PartialOrd, Ord, PartialEq, Eq)]
16026pub struct ID3D12ToolsVtbl {
16027 pub QueryInterface: ::std::option::Option<
16028 unsafe extern "C" fn(
16029 This: *mut ID3D12Tools,
16030 riid: *const IID,
16031 ppvObject: *mut *mut ::std::os::raw::c_void,
16032 ) -> HRESULT,
16033 >,
16034 pub AddRef: ::std::option::Option<
16035 unsafe extern "C" fn(This: *mut ID3D12Tools) -> ULONG,
16036 >,
16037 pub Release: ::std::option::Option<
16038 unsafe extern "C" fn(This: *mut ID3D12Tools) -> ULONG,
16039 >,
16040 pub EnableShaderInstrumentation: ::std::option::Option<
16041 unsafe extern "C" fn(This: *mut ID3D12Tools, bEnable: BOOL),
16042 >,
16043 pub ShaderInstrumentationEnabled: ::std::option::Option<
16044 unsafe extern "C" fn(This: *mut ID3D12Tools) -> BOOL,
16045 >,
16046}
16047#[repr(C)]
16048#[derive(Debug, Copy, Clone, Hash, PartialOrd, Ord, PartialEq, Eq)]
16049pub struct ID3D12Tools {
16050 pub lpVtbl: *mut ID3D12ToolsVtbl,
16051}
16052impl Default for ID3D12Tools {
16053 fn default() -> Self {
16054 let mut s = ::std::mem::MaybeUninit::<Self>::uninit();
16055 unsafe {
16056 ::std::ptr::write_bytes(s.as_mut_ptr(), 0, 1);
16057 s.assume_init()
16058 }
16059 }
16060}
16061#[repr(C)]
16062#[derive(Debug, Copy, Clone, Hash, PartialOrd, Ord, PartialEq, Eq)]
16063pub struct D3D12_SUBRESOURCE_DATA {
16064 pub pData: *const ::std::os::raw::c_void,
16065 pub RowPitch: LONG_PTR,
16066 pub SlicePitch: LONG_PTR,
16067}
16068impl Default for D3D12_SUBRESOURCE_DATA {
16069 fn default() -> Self {
16070 let mut s = ::std::mem::MaybeUninit::<Self>::uninit();
16071 unsafe {
16072 ::std::ptr::write_bytes(s.as_mut_ptr(), 0, 1);
16073 s.assume_init()
16074 }
16075 }
16076}
16077#[repr(C)]
16078#[derive(Debug, Copy, Clone, Hash, PartialOrd, Ord, PartialEq, Eq)]
16079pub struct D3D12_MEMCPY_DEST {
16080 pub pData: *mut ::std::os::raw::c_void,
16081 pub RowPitch: SIZE_T,
16082 pub SlicePitch: SIZE_T,
16083}
16084impl Default for D3D12_MEMCPY_DEST {
16085 fn default() -> Self {
16086 let mut s = ::std::mem::MaybeUninit::<Self>::uninit();
16087 unsafe {
16088 ::std::ptr::write_bytes(s.as_mut_ptr(), 0, 1);
16089 s.assume_init()
16090 }
16091 }
16092}
16093extern "C" {
16094 pub static IID_ID3D12Debug: IID;
16095}
16096#[repr(C)]
16097#[derive(Debug, Default, Copy, Clone, Hash, PartialOrd, Ord, PartialEq, Eq)]
16098pub struct ID3D12DebugVtbl {
16099 pub QueryInterface: ::std::option::Option<
16100 unsafe extern "C" fn(
16101 This: *mut ID3D12Debug,
16102 riid: *const IID,
16103 ppvObject: *mut *mut ::std::os::raw::c_void,
16104 ) -> HRESULT,
16105 >,
16106 pub AddRef: ::std::option::Option<
16107 unsafe extern "C" fn(This: *mut ID3D12Debug) -> ULONG,
16108 >,
16109 pub Release: ::std::option::Option<
16110 unsafe extern "C" fn(This: *mut ID3D12Debug) -> ULONG,
16111 >,
16112 pub EnableDebugLayer:
16113 ::std::option::Option<unsafe extern "C" fn(This: *mut ID3D12Debug)>,
16114}
16115#[repr(C)]
16116#[derive(Debug, Copy, Clone, Hash, PartialOrd, Ord, PartialEq, Eq)]
16117pub struct ID3D12Debug {
16118 pub lpVtbl: *mut ID3D12DebugVtbl,
16119}
16120impl Default for ID3D12Debug {
16121 fn default() -> Self {
16122 let mut s = ::std::mem::MaybeUninit::<Self>::uninit();
16123 unsafe {
16124 ::std::ptr::write_bytes(s.as_mut_ptr(), 0, 1);
16125 s.assume_init()
16126 }
16127 }
16128}
16129pub const D3D12_GPU_BASED_VALIDATION_FLAGS_D3D12_GPU_BASED_VALIDATION_FLAGS_NONE : D3D12_GPU_BASED_VALIDATION_FLAGS = 0 ;
16130pub const D3D12_GPU_BASED_VALIDATION_FLAGS_D3D12_GPU_BASED_VALIDATION_FLAGS_DISABLE_STATE_TRACKING : D3D12_GPU_BASED_VALIDATION_FLAGS = 1 ;
16131pub type D3D12_GPU_BASED_VALIDATION_FLAGS = ::std::os::raw::c_int;
16132extern "C" {
16133 pub static IID_ID3D12Debug1: IID;
16134}
16135#[repr(C)]
16136#[derive(Debug, Default, Copy, Clone, Hash, PartialOrd, Ord, PartialEq, Eq)]
16137pub struct ID3D12Debug1Vtbl {
16138 pub QueryInterface: ::std::option::Option<
16139 unsafe extern "C" fn(
16140 This: *mut ID3D12Debug1,
16141 riid: *const IID,
16142 ppvObject: *mut *mut ::std::os::raw::c_void,
16143 ) -> HRESULT,
16144 >,
16145 pub AddRef: ::std::option::Option<
16146 unsafe extern "C" fn(This: *mut ID3D12Debug1) -> ULONG,
16147 >,
16148 pub Release: ::std::option::Option<
16149 unsafe extern "C" fn(This: *mut ID3D12Debug1) -> ULONG,
16150 >,
16151 pub EnableDebugLayer:
16152 ::std::option::Option<unsafe extern "C" fn(This: *mut ID3D12Debug1)>,
16153 pub SetEnableGPUBasedValidation: ::std::option::Option<
16154 unsafe extern "C" fn(This: *mut ID3D12Debug1, Enable: BOOL),
16155 >,
16156 pub SetEnableSynchronizedCommandQueueValidation: ::std::option::Option<
16157 unsafe extern "C" fn(This: *mut ID3D12Debug1, Enable: BOOL),
16158 >,
16159}
16160#[repr(C)]
16161#[derive(Debug, Copy, Clone, Hash, PartialOrd, Ord, PartialEq, Eq)]
16162pub struct ID3D12Debug1 {
16163 pub lpVtbl: *mut ID3D12Debug1Vtbl,
16164}
16165impl Default for ID3D12Debug1 {
16166 fn default() -> Self {
16167 let mut s = ::std::mem::MaybeUninit::<Self>::uninit();
16168 unsafe {
16169 ::std::ptr::write_bytes(s.as_mut_ptr(), 0, 1);
16170 s.assume_init()
16171 }
16172 }
16173}
16174extern "C" {
16175 pub static IID_ID3D12Debug2: IID;
16176}
16177#[repr(C)]
16178#[derive(Debug, Default, Copy, Clone, Hash, PartialOrd, Ord, PartialEq, Eq)]
16179pub struct ID3D12Debug2Vtbl {
16180 pub QueryInterface: ::std::option::Option<
16181 unsafe extern "C" fn(
16182 This: *mut ID3D12Debug2,
16183 riid: *const IID,
16184 ppvObject: *mut *mut ::std::os::raw::c_void,
16185 ) -> HRESULT,
16186 >,
16187 pub AddRef: ::std::option::Option<
16188 unsafe extern "C" fn(This: *mut ID3D12Debug2) -> ULONG,
16189 >,
16190 pub Release: ::std::option::Option<
16191 unsafe extern "C" fn(This: *mut ID3D12Debug2) -> ULONG,
16192 >,
16193 pub SetGPUBasedValidationFlags: ::std::option::Option<
16194 unsafe extern "C" fn(
16195 This: *mut ID3D12Debug2,
16196 Flags: D3D12_GPU_BASED_VALIDATION_FLAGS,
16197 ),
16198 >,
16199}
16200#[repr(C)]
16201#[derive(Debug, Copy, Clone, Hash, PartialOrd, Ord, PartialEq, Eq)]
16202pub struct ID3D12Debug2 {
16203 pub lpVtbl: *mut ID3D12Debug2Vtbl,
16204}
16205impl Default for ID3D12Debug2 {
16206 fn default() -> Self {
16207 let mut s = ::std::mem::MaybeUninit::<Self>::uninit();
16208 unsafe {
16209 ::std::ptr::write_bytes(s.as_mut_ptr(), 0, 1);
16210 s.assume_init()
16211 }
16212 }
16213}
16214extern "C" {
16215 pub static IID_ID3D12Debug3: IID;
16216}
16217#[repr(C)]
16218#[derive(Debug, Default, Copy, Clone, Hash, PartialOrd, Ord, PartialEq, Eq)]
16219pub struct ID3D12Debug3Vtbl {
16220 pub QueryInterface: ::std::option::Option<
16221 unsafe extern "C" fn(
16222 This: *mut ID3D12Debug3,
16223 riid: *const IID,
16224 ppvObject: *mut *mut ::std::os::raw::c_void,
16225 ) -> HRESULT,
16226 >,
16227 pub AddRef: ::std::option::Option<
16228 unsafe extern "C" fn(This: *mut ID3D12Debug3) -> ULONG,
16229 >,
16230 pub Release: ::std::option::Option<
16231 unsafe extern "C" fn(This: *mut ID3D12Debug3) -> ULONG,
16232 >,
16233 pub EnableDebugLayer:
16234 ::std::option::Option<unsafe extern "C" fn(This: *mut ID3D12Debug3)>,
16235 pub SetEnableGPUBasedValidation: ::std::option::Option<
16236 unsafe extern "C" fn(This: *mut ID3D12Debug3, Enable: BOOL),
16237 >,
16238 pub SetEnableSynchronizedCommandQueueValidation: ::std::option::Option<
16239 unsafe extern "C" fn(This: *mut ID3D12Debug3, Enable: BOOL),
16240 >,
16241 pub SetGPUBasedValidationFlags: ::std::option::Option<
16242 unsafe extern "C" fn(
16243 This: *mut ID3D12Debug3,
16244 Flags: D3D12_GPU_BASED_VALIDATION_FLAGS,
16245 ),
16246 >,
16247}
16248#[repr(C)]
16249#[derive(Debug, Copy, Clone, Hash, PartialOrd, Ord, PartialEq, Eq)]
16250pub struct ID3D12Debug3 {
16251 pub lpVtbl: *mut ID3D12Debug3Vtbl,
16252}
16253impl Default for ID3D12Debug3 {
16254 fn default() -> Self {
16255 let mut s = ::std::mem::MaybeUninit::<Self>::uninit();
16256 unsafe {
16257 ::std::ptr::write_bytes(s.as_mut_ptr(), 0, 1);
16258 s.assume_init()
16259 }
16260 }
16261}
16262extern "C" {
16263 pub static IID_ID3D12Debug4: IID;
16264}
16265#[repr(C)]
16266#[derive(Debug, Default, Copy, Clone, Hash, PartialOrd, Ord, PartialEq, Eq)]
16267pub struct ID3D12Debug4Vtbl {
16268 pub QueryInterface: ::std::option::Option<
16269 unsafe extern "C" fn(
16270 This: *mut ID3D12Debug4,
16271 riid: *const IID,
16272 ppvObject: *mut *mut ::std::os::raw::c_void,
16273 ) -> HRESULT,
16274 >,
16275 pub AddRef: ::std::option::Option<
16276 unsafe extern "C" fn(This: *mut ID3D12Debug4) -> ULONG,
16277 >,
16278 pub Release: ::std::option::Option<
16279 unsafe extern "C" fn(This: *mut ID3D12Debug4) -> ULONG,
16280 >,
16281 pub EnableDebugLayer:
16282 ::std::option::Option<unsafe extern "C" fn(This: *mut ID3D12Debug4)>,
16283 pub SetEnableGPUBasedValidation: ::std::option::Option<
16284 unsafe extern "C" fn(This: *mut ID3D12Debug4, Enable: BOOL),
16285 >,
16286 pub SetEnableSynchronizedCommandQueueValidation: ::std::option::Option<
16287 unsafe extern "C" fn(This: *mut ID3D12Debug4, Enable: BOOL),
16288 >,
16289 pub SetGPUBasedValidationFlags: ::std::option::Option<
16290 unsafe extern "C" fn(
16291 This: *mut ID3D12Debug4,
16292 Flags: D3D12_GPU_BASED_VALIDATION_FLAGS,
16293 ),
16294 >,
16295 pub DisableDebugLayer:
16296 ::std::option::Option<unsafe extern "C" fn(This: *mut ID3D12Debug4)>,
16297}
16298#[repr(C)]
16299#[derive(Debug, Copy, Clone, Hash, PartialOrd, Ord, PartialEq, Eq)]
16300pub struct ID3D12Debug4 {
16301 pub lpVtbl: *mut ID3D12Debug4Vtbl,
16302}
16303impl Default for ID3D12Debug4 {
16304 fn default() -> Self {
16305 let mut s = ::std::mem::MaybeUninit::<Self>::uninit();
16306 unsafe {
16307 ::std::ptr::write_bytes(s.as_mut_ptr(), 0, 1);
16308 s.assume_init()
16309 }
16310 }
16311}
16312extern "C" {
16313 pub static IID_ID3D12Debug5: IID;
16314}
16315#[repr(C)]
16316#[derive(Debug, Default, Copy, Clone, Hash, PartialOrd, Ord, PartialEq, Eq)]
16317pub struct ID3D12Debug5Vtbl {
16318 pub QueryInterface: ::std::option::Option<
16319 unsafe extern "C" fn(
16320 This: *mut ID3D12Debug5,
16321 riid: *const IID,
16322 ppvObject: *mut *mut ::std::os::raw::c_void,
16323 ) -> HRESULT,
16324 >,
16325 pub AddRef: ::std::option::Option<
16326 unsafe extern "C" fn(This: *mut ID3D12Debug5) -> ULONG,
16327 >,
16328 pub Release: ::std::option::Option<
16329 unsafe extern "C" fn(This: *mut ID3D12Debug5) -> ULONG,
16330 >,
16331 pub EnableDebugLayer:
16332 ::std::option::Option<unsafe extern "C" fn(This: *mut ID3D12Debug5)>,
16333 pub SetEnableGPUBasedValidation: ::std::option::Option<
16334 unsafe extern "C" fn(This: *mut ID3D12Debug5, Enable: BOOL),
16335 >,
16336 pub SetEnableSynchronizedCommandQueueValidation: ::std::option::Option<
16337 unsafe extern "C" fn(This: *mut ID3D12Debug5, Enable: BOOL),
16338 >,
16339 pub SetGPUBasedValidationFlags: ::std::option::Option<
16340 unsafe extern "C" fn(
16341 This: *mut ID3D12Debug5,
16342 Flags: D3D12_GPU_BASED_VALIDATION_FLAGS,
16343 ),
16344 >,
16345 pub DisableDebugLayer:
16346 ::std::option::Option<unsafe extern "C" fn(This: *mut ID3D12Debug5)>,
16347 pub SetEnableAutoName: ::std::option::Option<
16348 unsafe extern "C" fn(This: *mut ID3D12Debug5, Enable: BOOL),
16349 >,
16350}
16351#[repr(C)]
16352#[derive(Debug, Copy, Clone, Hash, PartialOrd, Ord, PartialEq, Eq)]
16353pub struct ID3D12Debug5 {
16354 pub lpVtbl: *mut ID3D12Debug5Vtbl,
16355}
16356impl Default for ID3D12Debug5 {
16357 fn default() -> Self {
16358 let mut s = ::std::mem::MaybeUninit::<Self>::uninit();
16359 unsafe {
16360 ::std::ptr::write_bytes(s.as_mut_ptr(), 0, 1);
16361 s.assume_init()
16362 }
16363 }
16364}
16365extern "C" {
16366 pub static WKPDID_D3DAutoDebugObjectNameW: GUID;
16367}
16368pub const D3D12_RLDO_FLAGS_D3D12_RLDO_NONE: D3D12_RLDO_FLAGS = 0;
16369pub const D3D12_RLDO_FLAGS_D3D12_RLDO_SUMMARY: D3D12_RLDO_FLAGS = 1;
16370pub const D3D12_RLDO_FLAGS_D3D12_RLDO_DETAIL: D3D12_RLDO_FLAGS = 2;
16371pub const D3D12_RLDO_FLAGS_D3D12_RLDO_IGNORE_INTERNAL: D3D12_RLDO_FLAGS = 4;
16372pub type D3D12_RLDO_FLAGS = ::std::os::raw::c_int;
16373pub const D3D12_DEBUG_DEVICE_PARAMETER_TYPE_D3D12_DEBUG_DEVICE_PARAMETER_FEATURE_FLAGS : D3D12_DEBUG_DEVICE_PARAMETER_TYPE = 0 ;
16374pub const D3D12_DEBUG_DEVICE_PARAMETER_TYPE_D3D12_DEBUG_DEVICE_PARAMETER_GPU_BASED_VALIDATION_SETTINGS : D3D12_DEBUG_DEVICE_PARAMETER_TYPE = 1 ;
16375pub const D3D12_DEBUG_DEVICE_PARAMETER_TYPE_D3D12_DEBUG_DEVICE_PARAMETER_GPU_SLOWDOWN_PERFORMANCE_FACTOR : D3D12_DEBUG_DEVICE_PARAMETER_TYPE = 2 ;
16376pub type D3D12_DEBUG_DEVICE_PARAMETER_TYPE = ::std::os::raw::c_int;
16377pub const D3D12_DEBUG_FEATURE_D3D12_DEBUG_FEATURE_NONE: D3D12_DEBUG_FEATURE = 0;
16378pub const D3D12_DEBUG_FEATURE_D3D12_DEBUG_FEATURE_ALLOW_BEHAVIOR_CHANGING_DEBUG_AIDS : D3D12_DEBUG_FEATURE = 1 ;
16379pub const D3D12_DEBUG_FEATURE_D3D12_DEBUG_FEATURE_CONSERVATIVE_RESOURCE_STATE_TRACKING : D3D12_DEBUG_FEATURE = 2 ;
16380pub const D3D12_DEBUG_FEATURE_D3D12_DEBUG_FEATURE_DISABLE_VIRTUALIZED_BUNDLES_VALIDATION : D3D12_DEBUG_FEATURE = 4 ;
16381pub const D3D12_DEBUG_FEATURE_D3D12_DEBUG_FEATURE_EMULATE_WINDOWS7:
16382 D3D12_DEBUG_FEATURE = 8;
16383pub type D3D12_DEBUG_FEATURE = ::std::os::raw::c_int;
16384pub const D3D12_GPU_BASED_VALIDATION_SHADER_PATCH_MODE_D3D12_GPU_BASED_VALIDATION_SHADER_PATCH_MODE_NONE : D3D12_GPU_BASED_VALIDATION_SHADER_PATCH_MODE = 0 ;
16385pub const D3D12_GPU_BASED_VALIDATION_SHADER_PATCH_MODE_D3D12_GPU_BASED_VALIDATION_SHADER_PATCH_MODE_STATE_TRACKING_ONLY : D3D12_GPU_BASED_VALIDATION_SHADER_PATCH_MODE = 1 ;
16386pub const D3D12_GPU_BASED_VALIDATION_SHADER_PATCH_MODE_D3D12_GPU_BASED_VALIDATION_SHADER_PATCH_MODE_UNGUARDED_VALIDATION : D3D12_GPU_BASED_VALIDATION_SHADER_PATCH_MODE = 2 ;
16387pub const D3D12_GPU_BASED_VALIDATION_SHADER_PATCH_MODE_D3D12_GPU_BASED_VALIDATION_SHADER_PATCH_MODE_GUARDED_VALIDATION : D3D12_GPU_BASED_VALIDATION_SHADER_PATCH_MODE = 3 ;
16388pub const D3D12_GPU_BASED_VALIDATION_SHADER_PATCH_MODE_NUM_D3D12_GPU_BASED_VALIDATION_SHADER_PATCH_MODES : D3D12_GPU_BASED_VALIDATION_SHADER_PATCH_MODE = 4 ;
16389pub type D3D12_GPU_BASED_VALIDATION_SHADER_PATCH_MODE = ::std::os::raw::c_int;
16390pub const D3D12_GPU_BASED_VALIDATION_PIPELINE_STATE_CREATE_FLAGS_D3D12_GPU_BASED_VALIDATION_PIPELINE_STATE_CREATE_FLAG_NONE : D3D12_GPU_BASED_VALIDATION_PIPELINE_STATE_CREATE_FLAGS = 0 ;
16391pub const D3D12_GPU_BASED_VALIDATION_PIPELINE_STATE_CREATE_FLAGS_D3D12_GPU_BASED_VALIDATION_PIPELINE_STATE_CREATE_FLAG_FRONT_LOAD_CREATE_TRACKING_ONLY_SHADERS : D3D12_GPU_BASED_VALIDATION_PIPELINE_STATE_CREATE_FLAGS = 1 ;
16392pub const D3D12_GPU_BASED_VALIDATION_PIPELINE_STATE_CREATE_FLAGS_D3D12_GPU_BASED_VALIDATION_PIPELINE_STATE_CREATE_FLAG_FRONT_LOAD_CREATE_UNGUARDED_VALIDATION_SHADERS : D3D12_GPU_BASED_VALIDATION_PIPELINE_STATE_CREATE_FLAGS = 2 ;
16393pub const D3D12_GPU_BASED_VALIDATION_PIPELINE_STATE_CREATE_FLAGS_D3D12_GPU_BASED_VALIDATION_PIPELINE_STATE_CREATE_FLAG_FRONT_LOAD_CREATE_GUARDED_VALIDATION_SHADERS : D3D12_GPU_BASED_VALIDATION_PIPELINE_STATE_CREATE_FLAGS = 4 ;
16394pub const D3D12_GPU_BASED_VALIDATION_PIPELINE_STATE_CREATE_FLAGS_D3D12_GPU_BASED_VALIDATION_PIPELINE_STATE_CREATE_FLAGS_VALID_MASK : D3D12_GPU_BASED_VALIDATION_PIPELINE_STATE_CREATE_FLAGS = 7 ;
16395pub type D3D12_GPU_BASED_VALIDATION_PIPELINE_STATE_CREATE_FLAGS =
16396 ::std::os::raw::c_int;
16397#[repr(C)]
16398#[derive(Debug, Copy, Clone, Hash, PartialOrd, Ord, PartialEq, Eq)]
16399pub struct D3D12_DEBUG_DEVICE_GPU_BASED_VALIDATION_SETTINGS {
16400 pub MaxMessagesPerCommandList: UINT,
16401 pub DefaultShaderPatchMode: D3D12_GPU_BASED_VALIDATION_SHADER_PATCH_MODE,
16402 pub PipelineStateCreateFlags:
16403 D3D12_GPU_BASED_VALIDATION_PIPELINE_STATE_CREATE_FLAGS,
16404}
16405impl Default for D3D12_DEBUG_DEVICE_GPU_BASED_VALIDATION_SETTINGS {
16406 fn default() -> Self {
16407 let mut s = ::std::mem::MaybeUninit::<Self>::uninit();
16408 unsafe {
16409 ::std::ptr::write_bytes(s.as_mut_ptr(), 0, 1);
16410 s.assume_init()
16411 }
16412 }
16413}
16414#[repr(C)]
16415#[derive(Debug, Default, Copy, Clone, PartialOrd, PartialEq)]
16416pub struct D3D12_DEBUG_DEVICE_GPU_SLOWDOWN_PERFORMANCE_FACTOR {
16417 pub SlowdownFactor: FLOAT,
16418}
16419extern "C" {
16420 pub static IID_ID3D12DebugDevice1: IID;
16421}
16422#[repr(C)]
16423#[derive(Debug, Default, Copy, Clone, Hash, PartialOrd, Ord, PartialEq, Eq)]
16424pub struct ID3D12DebugDevice1Vtbl {
16425 pub QueryInterface: ::std::option::Option<
16426 unsafe extern "C" fn(
16427 This: *mut ID3D12DebugDevice1,
16428 riid: *const IID,
16429 ppvObject: *mut *mut ::std::os::raw::c_void,
16430 ) -> HRESULT,
16431 >,
16432 pub AddRef: ::std::option::Option<
16433 unsafe extern "C" fn(This: *mut ID3D12DebugDevice1) -> ULONG,
16434 >,
16435 pub Release: ::std::option::Option<
16436 unsafe extern "C" fn(This: *mut ID3D12DebugDevice1) -> ULONG,
16437 >,
16438 pub SetDebugParameter: ::std::option::Option<
16439 unsafe extern "C" fn(
16440 This: *mut ID3D12DebugDevice1,
16441 Type: D3D12_DEBUG_DEVICE_PARAMETER_TYPE,
16442 pData: *const ::std::os::raw::c_void,
16443 DataSize: UINT,
16444 ) -> HRESULT,
16445 >,
16446 pub GetDebugParameter: ::std::option::Option<
16447 unsafe extern "C" fn(
16448 This: *mut ID3D12DebugDevice1,
16449 Type: D3D12_DEBUG_DEVICE_PARAMETER_TYPE,
16450 pData: *mut ::std::os::raw::c_void,
16451 DataSize: UINT,
16452 ) -> HRESULT,
16453 >,
16454 pub ReportLiveDeviceObjects: ::std::option::Option<
16455 unsafe extern "C" fn(
16456 This: *mut ID3D12DebugDevice1,
16457 Flags: D3D12_RLDO_FLAGS,
16458 ) -> HRESULT,
16459 >,
16460}
16461#[repr(C)]
16462#[derive(Debug, Copy, Clone, Hash, PartialOrd, Ord, PartialEq, Eq)]
16463pub struct ID3D12DebugDevice1 {
16464 pub lpVtbl: *mut ID3D12DebugDevice1Vtbl,
16465}
16466impl Default for ID3D12DebugDevice1 {
16467 fn default() -> Self {
16468 let mut s = ::std::mem::MaybeUninit::<Self>::uninit();
16469 unsafe {
16470 ::std::ptr::write_bytes(s.as_mut_ptr(), 0, 1);
16471 s.assume_init()
16472 }
16473 }
16474}
16475extern "C" {
16476 pub static IID_ID3D12DebugDevice: IID;
16477}
16478#[repr(C)]
16479#[derive(Debug, Default, Copy, Clone, Hash, PartialOrd, Ord, PartialEq, Eq)]
16480pub struct ID3D12DebugDeviceVtbl {
16481 pub QueryInterface: ::std::option::Option<
16482 unsafe extern "C" fn(
16483 This: *mut ID3D12DebugDevice,
16484 riid: *const IID,
16485 ppvObject: *mut *mut ::std::os::raw::c_void,
16486 ) -> HRESULT,
16487 >,
16488 pub AddRef: ::std::option::Option<
16489 unsafe extern "C" fn(This: *mut ID3D12DebugDevice) -> ULONG,
16490 >,
16491 pub Release: ::std::option::Option<
16492 unsafe extern "C" fn(This: *mut ID3D12DebugDevice) -> ULONG,
16493 >,
16494 pub SetFeatureMask: ::std::option::Option<
16495 unsafe extern "C" fn(
16496 This: *mut ID3D12DebugDevice,
16497 Mask: D3D12_DEBUG_FEATURE,
16498 ) -> HRESULT,
16499 >,
16500 pub GetFeatureMask: ::std::option::Option<
16501 unsafe extern "C" fn(
16502 This: *mut ID3D12DebugDevice,
16503 ) -> D3D12_DEBUG_FEATURE,
16504 >,
16505 pub ReportLiveDeviceObjects: ::std::option::Option<
16506 unsafe extern "C" fn(
16507 This: *mut ID3D12DebugDevice,
16508 Flags: D3D12_RLDO_FLAGS,
16509 ) -> HRESULT,
16510 >,
16511}
16512#[repr(C)]
16513#[derive(Debug, Copy, Clone, Hash, PartialOrd, Ord, PartialEq, Eq)]
16514pub struct ID3D12DebugDevice {
16515 pub lpVtbl: *mut ID3D12DebugDeviceVtbl,
16516}
16517impl Default for ID3D12DebugDevice {
16518 fn default() -> Self {
16519 let mut s = ::std::mem::MaybeUninit::<Self>::uninit();
16520 unsafe {
16521 ::std::ptr::write_bytes(s.as_mut_ptr(), 0, 1);
16522 s.assume_init()
16523 }
16524 }
16525}
16526extern "C" {
16527 pub static IID_ID3D12DebugDevice2: IID;
16528}
16529#[repr(C)]
16530#[derive(Debug, Default, Copy, Clone, Hash, PartialOrd, Ord, PartialEq, Eq)]
16531pub struct ID3D12DebugDevice2Vtbl {
16532 pub QueryInterface: ::std::option::Option<
16533 unsafe extern "C" fn(
16534 This: *mut ID3D12DebugDevice2,
16535 riid: *const IID,
16536 ppvObject: *mut *mut ::std::os::raw::c_void,
16537 ) -> HRESULT,
16538 >,
16539 pub AddRef: ::std::option::Option<
16540 unsafe extern "C" fn(This: *mut ID3D12DebugDevice2) -> ULONG,
16541 >,
16542 pub Release: ::std::option::Option<
16543 unsafe extern "C" fn(This: *mut ID3D12DebugDevice2) -> ULONG,
16544 >,
16545 pub SetFeatureMask: ::std::option::Option<
16546 unsafe extern "C" fn(
16547 This: *mut ID3D12DebugDevice2,
16548 Mask: D3D12_DEBUG_FEATURE,
16549 ) -> HRESULT,
16550 >,
16551 pub GetFeatureMask: ::std::option::Option<
16552 unsafe extern "C" fn(
16553 This: *mut ID3D12DebugDevice2,
16554 ) -> D3D12_DEBUG_FEATURE,
16555 >,
16556 pub ReportLiveDeviceObjects: ::std::option::Option<
16557 unsafe extern "C" fn(
16558 This: *mut ID3D12DebugDevice2,
16559 Flags: D3D12_RLDO_FLAGS,
16560 ) -> HRESULT,
16561 >,
16562 pub SetDebugParameter: ::std::option::Option<
16563 unsafe extern "C" fn(
16564 This: *mut ID3D12DebugDevice2,
16565 Type: D3D12_DEBUG_DEVICE_PARAMETER_TYPE,
16566 pData: *const ::std::os::raw::c_void,
16567 DataSize: UINT,
16568 ) -> HRESULT,
16569 >,
16570 pub GetDebugParameter: ::std::option::Option<
16571 unsafe extern "C" fn(
16572 This: *mut ID3D12DebugDevice2,
16573 Type: D3D12_DEBUG_DEVICE_PARAMETER_TYPE,
16574 pData: *mut ::std::os::raw::c_void,
16575 DataSize: UINT,
16576 ) -> HRESULT,
16577 >,
16578}
16579#[repr(C)]
16580#[derive(Debug, Copy, Clone, Hash, PartialOrd, Ord, PartialEq, Eq)]
16581pub struct ID3D12DebugDevice2 {
16582 pub lpVtbl: *mut ID3D12DebugDevice2Vtbl,
16583}
16584impl Default for ID3D12DebugDevice2 {
16585 fn default() -> Self {
16586 let mut s = ::std::mem::MaybeUninit::<Self>::uninit();
16587 unsafe {
16588 ::std::ptr::write_bytes(s.as_mut_ptr(), 0, 1);
16589 s.assume_init()
16590 }
16591 }
16592}
16593extern "C" {
16594 pub static DXGI_DEBUG_D3D12: GUID;
16595}
16596extern "C" {
16597 pub static IID_ID3D12DebugCommandQueue: IID;
16598}
16599#[repr(C)]
16600#[derive(Debug, Default, Copy, Clone, Hash, PartialOrd, Ord, PartialEq, Eq)]
16601pub struct ID3D12DebugCommandQueueVtbl {
16602 pub QueryInterface: ::std::option::Option<
16603 unsafe extern "C" fn(
16604 This: *mut ID3D12DebugCommandQueue,
16605 riid: *const IID,
16606 ppvObject: *mut *mut ::std::os::raw::c_void,
16607 ) -> HRESULT,
16608 >,
16609 pub AddRef: ::std::option::Option<
16610 unsafe extern "C" fn(This: *mut ID3D12DebugCommandQueue) -> ULONG,
16611 >,
16612 pub Release: ::std::option::Option<
16613 unsafe extern "C" fn(This: *mut ID3D12DebugCommandQueue) -> ULONG,
16614 >,
16615 pub AssertResourceState: ::std::option::Option<
16616 unsafe extern "C" fn(
16617 This: *mut ID3D12DebugCommandQueue,
16618 pResource: *mut ID3D12Resource,
16619 Subresource: UINT,
16620 State: UINT,
16621 ) -> BOOL,
16622 >,
16623}
16624#[repr(C)]
16625#[derive(Debug, Copy, Clone, Hash, PartialOrd, Ord, PartialEq, Eq)]
16626pub struct ID3D12DebugCommandQueue {
16627 pub lpVtbl: *mut ID3D12DebugCommandQueueVtbl,
16628}
16629impl Default for ID3D12DebugCommandQueue {
16630 fn default() -> Self {
16631 let mut s = ::std::mem::MaybeUninit::<Self>::uninit();
16632 unsafe {
16633 ::std::ptr::write_bytes(s.as_mut_ptr(), 0, 1);
16634 s.assume_init()
16635 }
16636 }
16637}
16638pub const D3D12_DEBUG_COMMAND_LIST_PARAMETER_TYPE_D3D12_DEBUG_COMMAND_LIST_PARAMETER_GPU_BASED_VALIDATION_SETTINGS : D3D12_DEBUG_COMMAND_LIST_PARAMETER_TYPE = 0 ;
16639pub type D3D12_DEBUG_COMMAND_LIST_PARAMETER_TYPE = ::std::os::raw::c_int;
16640#[repr(C)]
16641#[derive(Debug, Copy, Clone, Hash, PartialOrd, Ord, PartialEq, Eq)]
16642pub struct D3D12_DEBUG_COMMAND_LIST_GPU_BASED_VALIDATION_SETTINGS {
16643 pub ShaderPatchMode: D3D12_GPU_BASED_VALIDATION_SHADER_PATCH_MODE,
16644}
16645impl Default for D3D12_DEBUG_COMMAND_LIST_GPU_BASED_VALIDATION_SETTINGS {
16646 fn default() -> Self {
16647 let mut s = ::std::mem::MaybeUninit::<Self>::uninit();
16648 unsafe {
16649 ::std::ptr::write_bytes(s.as_mut_ptr(), 0, 1);
16650 s.assume_init()
16651 }
16652 }
16653}
16654extern "C" {
16655 pub static IID_ID3D12DebugCommandList1: IID;
16656}
16657#[repr(C)]
16658#[derive(Debug, Default, Copy, Clone, Hash, PartialOrd, Ord, PartialEq, Eq)]
16659pub struct ID3D12DebugCommandList1Vtbl {
16660 pub QueryInterface: ::std::option::Option<
16661 unsafe extern "C" fn(
16662 This: *mut ID3D12DebugCommandList1,
16663 riid: *const IID,
16664 ppvObject: *mut *mut ::std::os::raw::c_void,
16665 ) -> HRESULT,
16666 >,
16667 pub AddRef: ::std::option::Option<
16668 unsafe extern "C" fn(This: *mut ID3D12DebugCommandList1) -> ULONG,
16669 >,
16670 pub Release: ::std::option::Option<
16671 unsafe extern "C" fn(This: *mut ID3D12DebugCommandList1) -> ULONG,
16672 >,
16673 pub AssertResourceState: ::std::option::Option<
16674 unsafe extern "C" fn(
16675 This: *mut ID3D12DebugCommandList1,
16676 pResource: *mut ID3D12Resource,
16677 Subresource: UINT,
16678 State: UINT,
16679 ) -> BOOL,
16680 >,
16681 pub SetDebugParameter: ::std::option::Option<
16682 unsafe extern "C" fn(
16683 This: *mut ID3D12DebugCommandList1,
16684 Type: D3D12_DEBUG_COMMAND_LIST_PARAMETER_TYPE,
16685 pData: *const ::std::os::raw::c_void,
16686 DataSize: UINT,
16687 ) -> HRESULT,
16688 >,
16689 pub GetDebugParameter: ::std::option::Option<
16690 unsafe extern "C" fn(
16691 This: *mut ID3D12DebugCommandList1,
16692 Type: D3D12_DEBUG_COMMAND_LIST_PARAMETER_TYPE,
16693 pData: *mut ::std::os::raw::c_void,
16694 DataSize: UINT,
16695 ) -> HRESULT,
16696 >,
16697}
16698#[repr(C)]
16699#[derive(Debug, Copy, Clone, Hash, PartialOrd, Ord, PartialEq, Eq)]
16700pub struct ID3D12DebugCommandList1 {
16701 pub lpVtbl: *mut ID3D12DebugCommandList1Vtbl,
16702}
16703impl Default for ID3D12DebugCommandList1 {
16704 fn default() -> Self {
16705 let mut s = ::std::mem::MaybeUninit::<Self>::uninit();
16706 unsafe {
16707 ::std::ptr::write_bytes(s.as_mut_ptr(), 0, 1);
16708 s.assume_init()
16709 }
16710 }
16711}
16712extern "C" {
16713 pub static IID_ID3D12DebugCommandList: IID;
16714}
16715#[repr(C)]
16716#[derive(Debug, Default, Copy, Clone, Hash, PartialOrd, Ord, PartialEq, Eq)]
16717pub struct ID3D12DebugCommandListVtbl {
16718 pub QueryInterface: ::std::option::Option<
16719 unsafe extern "C" fn(
16720 This: *mut ID3D12DebugCommandList,
16721 riid: *const IID,
16722 ppvObject: *mut *mut ::std::os::raw::c_void,
16723 ) -> HRESULT,
16724 >,
16725 pub AddRef: ::std::option::Option<
16726 unsafe extern "C" fn(This: *mut ID3D12DebugCommandList) -> ULONG,
16727 >,
16728 pub Release: ::std::option::Option<
16729 unsafe extern "C" fn(This: *mut ID3D12DebugCommandList) -> ULONG,
16730 >,
16731 pub AssertResourceState: ::std::option::Option<
16732 unsafe extern "C" fn(
16733 This: *mut ID3D12DebugCommandList,
16734 pResource: *mut ID3D12Resource,
16735 Subresource: UINT,
16736 State: UINT,
16737 ) -> BOOL,
16738 >,
16739 pub SetFeatureMask: ::std::option::Option<
16740 unsafe extern "C" fn(
16741 This: *mut ID3D12DebugCommandList,
16742 Mask: D3D12_DEBUG_FEATURE,
16743 ) -> HRESULT,
16744 >,
16745 pub GetFeatureMask: ::std::option::Option<
16746 unsafe extern "C" fn(
16747 This: *mut ID3D12DebugCommandList,
16748 ) -> D3D12_DEBUG_FEATURE,
16749 >,
16750}
16751#[repr(C)]
16752#[derive(Debug, Copy, Clone, Hash, PartialOrd, Ord, PartialEq, Eq)]
16753pub struct ID3D12DebugCommandList {
16754 pub lpVtbl: *mut ID3D12DebugCommandListVtbl,
16755}
16756impl Default for ID3D12DebugCommandList {
16757 fn default() -> Self {
16758 let mut s = ::std::mem::MaybeUninit::<Self>::uninit();
16759 unsafe {
16760 ::std::ptr::write_bytes(s.as_mut_ptr(), 0, 1);
16761 s.assume_init()
16762 }
16763 }
16764}
16765extern "C" {
16766 pub static IID_ID3D12DebugCommandList2: IID;
16767}
16768#[repr(C)]
16769#[derive(Debug, Default, Copy, Clone, Hash, PartialOrd, Ord, PartialEq, Eq)]
16770pub struct ID3D12DebugCommandList2Vtbl {
16771 pub QueryInterface: ::std::option::Option<
16772 unsafe extern "C" fn(
16773 This: *mut ID3D12DebugCommandList2,
16774 riid: *const IID,
16775 ppvObject: *mut *mut ::std::os::raw::c_void,
16776 ) -> HRESULT,
16777 >,
16778 pub AddRef: ::std::option::Option<
16779 unsafe extern "C" fn(This: *mut ID3D12DebugCommandList2) -> ULONG,
16780 >,
16781 pub Release: ::std::option::Option<
16782 unsafe extern "C" fn(This: *mut ID3D12DebugCommandList2) -> ULONG,
16783 >,
16784 pub AssertResourceState: ::std::option::Option<
16785 unsafe extern "C" fn(
16786 This: *mut ID3D12DebugCommandList2,
16787 pResource: *mut ID3D12Resource,
16788 Subresource: UINT,
16789 State: UINT,
16790 ) -> BOOL,
16791 >,
16792 pub SetFeatureMask: ::std::option::Option<
16793 unsafe extern "C" fn(
16794 This: *mut ID3D12DebugCommandList2,
16795 Mask: D3D12_DEBUG_FEATURE,
16796 ) -> HRESULT,
16797 >,
16798 pub GetFeatureMask: ::std::option::Option<
16799 unsafe extern "C" fn(
16800 This: *mut ID3D12DebugCommandList2,
16801 ) -> D3D12_DEBUG_FEATURE,
16802 >,
16803 pub SetDebugParameter: ::std::option::Option<
16804 unsafe extern "C" fn(
16805 This: *mut ID3D12DebugCommandList2,
16806 Type: D3D12_DEBUG_COMMAND_LIST_PARAMETER_TYPE,
16807 pData: *const ::std::os::raw::c_void,
16808 DataSize: UINT,
16809 ) -> HRESULT,
16810 >,
16811 pub GetDebugParameter: ::std::option::Option<
16812 unsafe extern "C" fn(
16813 This: *mut ID3D12DebugCommandList2,
16814 Type: D3D12_DEBUG_COMMAND_LIST_PARAMETER_TYPE,
16815 pData: *mut ::std::os::raw::c_void,
16816 DataSize: UINT,
16817 ) -> HRESULT,
16818 >,
16819}
16820#[repr(C)]
16821#[derive(Debug, Copy, Clone, Hash, PartialOrd, Ord, PartialEq, Eq)]
16822pub struct ID3D12DebugCommandList2 {
16823 pub lpVtbl: *mut ID3D12DebugCommandList2Vtbl,
16824}
16825impl Default for ID3D12DebugCommandList2 {
16826 fn default() -> Self {
16827 let mut s = ::std::mem::MaybeUninit::<Self>::uninit();
16828 unsafe {
16829 ::std::ptr::write_bytes(s.as_mut_ptr(), 0, 1);
16830 s.assume_init()
16831 }
16832 }
16833}
16834extern "C" {
16835 pub static IID_ID3D12SharingContract: IID;
16836}
16837#[repr(C)]
16838#[derive(Debug, Default, Copy, Clone, Hash, PartialOrd, Ord, PartialEq, Eq)]
16839pub struct ID3D12SharingContractVtbl {
16840 pub QueryInterface: ::std::option::Option<
16841 unsafe extern "C" fn(
16842 This: *mut ID3D12SharingContract,
16843 riid: *const IID,
16844 ppvObject: *mut *mut ::std::os::raw::c_void,
16845 ) -> HRESULT,
16846 >,
16847 pub AddRef: ::std::option::Option<
16848 unsafe extern "C" fn(This: *mut ID3D12SharingContract) -> ULONG,
16849 >,
16850 pub Release: ::std::option::Option<
16851 unsafe extern "C" fn(This: *mut ID3D12SharingContract) -> ULONG,
16852 >,
16853 pub Present: ::std::option::Option<
16854 unsafe extern "C" fn(
16855 This: *mut ID3D12SharingContract,
16856 pResource: *mut ID3D12Resource,
16857 Subresource: UINT,
16858 window: HWND,
16859 ),
16860 >,
16861 pub SharedFenceSignal: ::std::option::Option<
16862 unsafe extern "C" fn(
16863 This: *mut ID3D12SharingContract,
16864 pFence: *mut ID3D12Fence,
16865 FenceValue: UINT64,
16866 ),
16867 >,
16868 pub BeginCapturableWork: ::std::option::Option<
16869 unsafe extern "C" fn(
16870 This: *mut ID3D12SharingContract,
16871 guid: *const GUID,
16872 ),
16873 >,
16874 pub EndCapturableWork: ::std::option::Option<
16875 unsafe extern "C" fn(
16876 This: *mut ID3D12SharingContract,
16877 guid: *const GUID,
16878 ),
16879 >,
16880}
16881#[repr(C)]
16882#[derive(Debug, Copy, Clone, Hash, PartialOrd, Ord, PartialEq, Eq)]
16883pub struct ID3D12SharingContract {
16884 pub lpVtbl: *mut ID3D12SharingContractVtbl,
16885}
16886impl Default for ID3D12SharingContract {
16887 fn default() -> Self {
16888 let mut s = ::std::mem::MaybeUninit::<Self>::uninit();
16889 unsafe {
16890 ::std::ptr::write_bytes(s.as_mut_ptr(), 0, 1);
16891 s.assume_init()
16892 }
16893 }
16894}
16895pub const D3D12_MESSAGE_CATEGORY_D3D12_MESSAGE_CATEGORY_APPLICATION_DEFINED:
16896 D3D12_MESSAGE_CATEGORY = 0;
16897pub const D3D12_MESSAGE_CATEGORY_D3D12_MESSAGE_CATEGORY_MISCELLANEOUS:
16898 D3D12_MESSAGE_CATEGORY = 1;
16899pub const D3D12_MESSAGE_CATEGORY_D3D12_MESSAGE_CATEGORY_INITIALIZATION:
16900 D3D12_MESSAGE_CATEGORY = 2;
16901pub const D3D12_MESSAGE_CATEGORY_D3D12_MESSAGE_CATEGORY_CLEANUP:
16902 D3D12_MESSAGE_CATEGORY = 3;
16903pub const D3D12_MESSAGE_CATEGORY_D3D12_MESSAGE_CATEGORY_COMPILATION:
16904 D3D12_MESSAGE_CATEGORY = 4;
16905pub const D3D12_MESSAGE_CATEGORY_D3D12_MESSAGE_CATEGORY_STATE_CREATION:
16906 D3D12_MESSAGE_CATEGORY = 5;
16907pub const D3D12_MESSAGE_CATEGORY_D3D12_MESSAGE_CATEGORY_STATE_SETTING:
16908 D3D12_MESSAGE_CATEGORY = 6;
16909pub const D3D12_MESSAGE_CATEGORY_D3D12_MESSAGE_CATEGORY_STATE_GETTING:
16910 D3D12_MESSAGE_CATEGORY = 7;
16911pub const D3D12_MESSAGE_CATEGORY_D3D12_MESSAGE_CATEGORY_RESOURCE_MANIPULATION : D3D12_MESSAGE_CATEGORY = 8 ;
16912pub const D3D12_MESSAGE_CATEGORY_D3D12_MESSAGE_CATEGORY_EXECUTION:
16913 D3D12_MESSAGE_CATEGORY = 9;
16914pub const D3D12_MESSAGE_CATEGORY_D3D12_MESSAGE_CATEGORY_SHADER:
16915 D3D12_MESSAGE_CATEGORY = 10;
16916pub type D3D12_MESSAGE_CATEGORY = ::std::os::raw::c_int;
16917pub const D3D12_MESSAGE_SEVERITY_D3D12_MESSAGE_SEVERITY_CORRUPTION:
16918 D3D12_MESSAGE_SEVERITY = 0;
16919pub const D3D12_MESSAGE_SEVERITY_D3D12_MESSAGE_SEVERITY_ERROR:
16920 D3D12_MESSAGE_SEVERITY = 1;
16921pub const D3D12_MESSAGE_SEVERITY_D3D12_MESSAGE_SEVERITY_WARNING:
16922 D3D12_MESSAGE_SEVERITY = 2;
16923pub const D3D12_MESSAGE_SEVERITY_D3D12_MESSAGE_SEVERITY_INFO:
16924 D3D12_MESSAGE_SEVERITY = 3;
16925pub const D3D12_MESSAGE_SEVERITY_D3D12_MESSAGE_SEVERITY_MESSAGE:
16926 D3D12_MESSAGE_SEVERITY = 4;
16927pub type D3D12_MESSAGE_SEVERITY = ::std::os::raw::c_int;
16928pub const D3D12_MESSAGE_ID_D3D12_MESSAGE_ID_UNKNOWN: D3D12_MESSAGE_ID = 0;
16929pub const D3D12_MESSAGE_ID_D3D12_MESSAGE_ID_STRING_FROM_APPLICATION:
16930 D3D12_MESSAGE_ID = 1;
16931pub const D3D12_MESSAGE_ID_D3D12_MESSAGE_ID_CORRUPTED_THIS: D3D12_MESSAGE_ID =
16932 2;
16933pub const D3D12_MESSAGE_ID_D3D12_MESSAGE_ID_CORRUPTED_PARAMETER1:
16934 D3D12_MESSAGE_ID = 3;
16935pub const D3D12_MESSAGE_ID_D3D12_MESSAGE_ID_CORRUPTED_PARAMETER2:
16936 D3D12_MESSAGE_ID = 4;
16937pub const D3D12_MESSAGE_ID_D3D12_MESSAGE_ID_CORRUPTED_PARAMETER3:
16938 D3D12_MESSAGE_ID = 5;
16939pub const D3D12_MESSAGE_ID_D3D12_MESSAGE_ID_CORRUPTED_PARAMETER4:
16940 D3D12_MESSAGE_ID = 6;
16941pub const D3D12_MESSAGE_ID_D3D12_MESSAGE_ID_CORRUPTED_PARAMETER5:
16942 D3D12_MESSAGE_ID = 7;
16943pub const D3D12_MESSAGE_ID_D3D12_MESSAGE_ID_CORRUPTED_PARAMETER6:
16944 D3D12_MESSAGE_ID = 8;
16945pub const D3D12_MESSAGE_ID_D3D12_MESSAGE_ID_CORRUPTED_PARAMETER7:
16946 D3D12_MESSAGE_ID = 9;
16947pub const D3D12_MESSAGE_ID_D3D12_MESSAGE_ID_CORRUPTED_PARAMETER8:
16948 D3D12_MESSAGE_ID = 10;
16949pub const D3D12_MESSAGE_ID_D3D12_MESSAGE_ID_CORRUPTED_PARAMETER9:
16950 D3D12_MESSAGE_ID = 11;
16951pub const D3D12_MESSAGE_ID_D3D12_MESSAGE_ID_CORRUPTED_PARAMETER10:
16952 D3D12_MESSAGE_ID = 12;
16953pub const D3D12_MESSAGE_ID_D3D12_MESSAGE_ID_CORRUPTED_PARAMETER11:
16954 D3D12_MESSAGE_ID = 13;
16955pub const D3D12_MESSAGE_ID_D3D12_MESSAGE_ID_CORRUPTED_PARAMETER12:
16956 D3D12_MESSAGE_ID = 14;
16957pub const D3D12_MESSAGE_ID_D3D12_MESSAGE_ID_CORRUPTED_PARAMETER13:
16958 D3D12_MESSAGE_ID = 15;
16959pub const D3D12_MESSAGE_ID_D3D12_MESSAGE_ID_CORRUPTED_PARAMETER14:
16960 D3D12_MESSAGE_ID = 16;
16961pub const D3D12_MESSAGE_ID_D3D12_MESSAGE_ID_CORRUPTED_PARAMETER15:
16962 D3D12_MESSAGE_ID = 17;
16963pub const D3D12_MESSAGE_ID_D3D12_MESSAGE_ID_CORRUPTED_MULTITHREADING:
16964 D3D12_MESSAGE_ID = 18;
16965pub const D3D12_MESSAGE_ID_D3D12_MESSAGE_ID_MESSAGE_REPORTING_OUTOFMEMORY:
16966 D3D12_MESSAGE_ID = 19;
16967pub const D3D12_MESSAGE_ID_D3D12_MESSAGE_ID_GETPRIVATEDATA_MOREDATA:
16968 D3D12_MESSAGE_ID = 20;
16969pub const D3D12_MESSAGE_ID_D3D12_MESSAGE_ID_SETPRIVATEDATA_INVALIDFREEDATA:
16970 D3D12_MESSAGE_ID = 21;
16971pub const D3D12_MESSAGE_ID_D3D12_MESSAGE_ID_SETPRIVATEDATA_CHANGINGPARAMS:
16972 D3D12_MESSAGE_ID = 24;
16973pub const D3D12_MESSAGE_ID_D3D12_MESSAGE_ID_SETPRIVATEDATA_OUTOFMEMORY:
16974 D3D12_MESSAGE_ID = 25;
16975pub const D3D12_MESSAGE_ID_D3D12_MESSAGE_ID_CREATESHADERRESOURCEVIEW_UNRECOGNIZEDFORMAT : D3D12_MESSAGE_ID = 26 ;
16976pub const D3D12_MESSAGE_ID_D3D12_MESSAGE_ID_CREATESHADERRESOURCEVIEW_INVALIDDESC : D3D12_MESSAGE_ID = 27 ;
16977pub const D3D12_MESSAGE_ID_D3D12_MESSAGE_ID_CREATESHADERRESOURCEVIEW_INVALIDFORMAT : D3D12_MESSAGE_ID = 28 ;
16978pub const D3D12_MESSAGE_ID_D3D12_MESSAGE_ID_CREATESHADERRESOURCEVIEW_INVALIDVIDEOPLANESLICE : D3D12_MESSAGE_ID = 29 ;
16979pub const D3D12_MESSAGE_ID_D3D12_MESSAGE_ID_CREATESHADERRESOURCEVIEW_INVALIDPLANESLICE : D3D12_MESSAGE_ID = 30 ;
16980pub const D3D12_MESSAGE_ID_D3D12_MESSAGE_ID_CREATESHADERRESOURCEVIEW_INVALIDDIMENSIONS : D3D12_MESSAGE_ID = 31 ;
16981pub const D3D12_MESSAGE_ID_D3D12_MESSAGE_ID_CREATESHADERRESOURCEVIEW_INVALIDRESOURCE : D3D12_MESSAGE_ID = 32 ;
16982pub const D3D12_MESSAGE_ID_D3D12_MESSAGE_ID_CREATERENDERTARGETVIEW_UNRECOGNIZEDFORMAT : D3D12_MESSAGE_ID = 35 ;
16983pub const D3D12_MESSAGE_ID_D3D12_MESSAGE_ID_CREATERENDERTARGETVIEW_UNSUPPORTEDFORMAT : D3D12_MESSAGE_ID = 36 ;
16984pub const D3D12_MESSAGE_ID_D3D12_MESSAGE_ID_CREATERENDERTARGETVIEW_INVALIDDESC : D3D12_MESSAGE_ID = 37 ;
16985pub const D3D12_MESSAGE_ID_D3D12_MESSAGE_ID_CREATERENDERTARGETVIEW_INVALIDFORMAT : D3D12_MESSAGE_ID = 38 ;
16986pub const D3D12_MESSAGE_ID_D3D12_MESSAGE_ID_CREATERENDERTARGETVIEW_INVALIDVIDEOPLANESLICE : D3D12_MESSAGE_ID = 39 ;
16987pub const D3D12_MESSAGE_ID_D3D12_MESSAGE_ID_CREATERENDERTARGETVIEW_INVALIDPLANESLICE : D3D12_MESSAGE_ID = 40 ;
16988pub const D3D12_MESSAGE_ID_D3D12_MESSAGE_ID_CREATERENDERTARGETVIEW_INVALIDDIMENSIONS : D3D12_MESSAGE_ID = 41 ;
16989pub const D3D12_MESSAGE_ID_D3D12_MESSAGE_ID_CREATERENDERTARGETVIEW_INVALIDRESOURCE : D3D12_MESSAGE_ID = 42 ;
16990pub const D3D12_MESSAGE_ID_D3D12_MESSAGE_ID_CREATEDEPTHSTENCILVIEW_UNRECOGNIZEDFORMAT : D3D12_MESSAGE_ID = 45 ;
16991pub const D3D12_MESSAGE_ID_D3D12_MESSAGE_ID_CREATEDEPTHSTENCILVIEW_INVALIDDESC : D3D12_MESSAGE_ID = 46 ;
16992pub const D3D12_MESSAGE_ID_D3D12_MESSAGE_ID_CREATEDEPTHSTENCILVIEW_INVALIDFORMAT : D3D12_MESSAGE_ID = 47 ;
16993pub const D3D12_MESSAGE_ID_D3D12_MESSAGE_ID_CREATEDEPTHSTENCILVIEW_INVALIDDIMENSIONS : D3D12_MESSAGE_ID = 48 ;
16994pub const D3D12_MESSAGE_ID_D3D12_MESSAGE_ID_CREATEDEPTHSTENCILVIEW_INVALIDRESOURCE : D3D12_MESSAGE_ID = 49 ;
16995pub const D3D12_MESSAGE_ID_D3D12_MESSAGE_ID_CREATEINPUTLAYOUT_OUTOFMEMORY:
16996 D3D12_MESSAGE_ID = 52;
16997pub const D3D12_MESSAGE_ID_D3D12_MESSAGE_ID_CREATEINPUTLAYOUT_TOOMANYELEMENTS : D3D12_MESSAGE_ID = 53 ;
16998pub const D3D12_MESSAGE_ID_D3D12_MESSAGE_ID_CREATEINPUTLAYOUT_INVALIDFORMAT:
16999 D3D12_MESSAGE_ID = 54;
17000pub const D3D12_MESSAGE_ID_D3D12_MESSAGE_ID_CREATEINPUTLAYOUT_INCOMPATIBLEFORMAT : D3D12_MESSAGE_ID = 55 ;
17001pub const D3D12_MESSAGE_ID_D3D12_MESSAGE_ID_CREATEINPUTLAYOUT_INVALIDSLOT:
17002 D3D12_MESSAGE_ID = 56;
17003pub const D3D12_MESSAGE_ID_D3D12_MESSAGE_ID_CREATEINPUTLAYOUT_INVALIDINPUTSLOTCLASS : D3D12_MESSAGE_ID = 57 ;
17004pub const D3D12_MESSAGE_ID_D3D12_MESSAGE_ID_CREATEINPUTLAYOUT_STEPRATESLOTCLASSMISMATCH : D3D12_MESSAGE_ID = 58 ;
17005pub const D3D12_MESSAGE_ID_D3D12_MESSAGE_ID_CREATEINPUTLAYOUT_INVALIDSLOTCLASSCHANGE : D3D12_MESSAGE_ID = 59 ;
17006pub const D3D12_MESSAGE_ID_D3D12_MESSAGE_ID_CREATEINPUTLAYOUT_INVALIDSTEPRATECHANGE : D3D12_MESSAGE_ID = 60 ;
17007pub const D3D12_MESSAGE_ID_D3D12_MESSAGE_ID_CREATEINPUTLAYOUT_INVALIDALIGNMENT : D3D12_MESSAGE_ID = 61 ;
17008pub const D3D12_MESSAGE_ID_D3D12_MESSAGE_ID_CREATEINPUTLAYOUT_DUPLICATESEMANTIC : D3D12_MESSAGE_ID = 62 ;
17009pub const D3D12_MESSAGE_ID_D3D12_MESSAGE_ID_CREATEINPUTLAYOUT_UNPARSEABLEINPUTSIGNATURE : D3D12_MESSAGE_ID = 63 ;
17010pub const D3D12_MESSAGE_ID_D3D12_MESSAGE_ID_CREATEINPUTLAYOUT_NULLSEMANTIC:
17011 D3D12_MESSAGE_ID = 64;
17012pub const D3D12_MESSAGE_ID_D3D12_MESSAGE_ID_CREATEINPUTLAYOUT_MISSINGELEMENT:
17013 D3D12_MESSAGE_ID = 65;
17014pub const D3D12_MESSAGE_ID_D3D12_MESSAGE_ID_CREATEVERTEXSHADER_OUTOFMEMORY:
17015 D3D12_MESSAGE_ID = 66;
17016pub const D3D12_MESSAGE_ID_D3D12_MESSAGE_ID_CREATEVERTEXSHADER_INVALIDSHADERBYTECODE : D3D12_MESSAGE_ID = 67 ;
17017pub const D3D12_MESSAGE_ID_D3D12_MESSAGE_ID_CREATEVERTEXSHADER_INVALIDSHADERTYPE : D3D12_MESSAGE_ID = 68 ;
17018pub const D3D12_MESSAGE_ID_D3D12_MESSAGE_ID_CREATEGEOMETRYSHADER_OUTOFMEMORY:
17019 D3D12_MESSAGE_ID = 69;
17020pub const D3D12_MESSAGE_ID_D3D12_MESSAGE_ID_CREATEGEOMETRYSHADER_INVALIDSHADERBYTECODE : D3D12_MESSAGE_ID = 70 ;
17021pub const D3D12_MESSAGE_ID_D3D12_MESSAGE_ID_CREATEGEOMETRYSHADER_INVALIDSHADERTYPE : D3D12_MESSAGE_ID = 71 ;
17022pub const D3D12_MESSAGE_ID_D3D12_MESSAGE_ID_CREATEGEOMETRYSHADERWITHSTREAMOUTPUT_OUTOFMEMORY : D3D12_MESSAGE_ID = 72 ;
17023pub const D3D12_MESSAGE_ID_D3D12_MESSAGE_ID_CREATEGEOMETRYSHADERWITHSTREAMOUTPUT_INVALIDSHADERBYTECODE : D3D12_MESSAGE_ID = 73 ;
17024pub const D3D12_MESSAGE_ID_D3D12_MESSAGE_ID_CREATEGEOMETRYSHADERWITHSTREAMOUTPUT_INVALIDSHADERTYPE : D3D12_MESSAGE_ID = 74 ;
17025pub const D3D12_MESSAGE_ID_D3D12_MESSAGE_ID_CREATEGEOMETRYSHADERWITHSTREAMOUTPUT_INVALIDNUMENTRIES : D3D12_MESSAGE_ID = 75 ;
17026pub const D3D12_MESSAGE_ID_D3D12_MESSAGE_ID_CREATEGEOMETRYSHADERWITHSTREAMOUTPUT_OUTPUTSTREAMSTRIDEUNUSED : D3D12_MESSAGE_ID = 76 ;
17027pub const D3D12_MESSAGE_ID_D3D12_MESSAGE_ID_CREATEGEOMETRYSHADERWITHSTREAMOUTPUT_OUTPUTSLOT0EXPECTED : D3D12_MESSAGE_ID = 79 ;
17028pub const D3D12_MESSAGE_ID_D3D12_MESSAGE_ID_CREATEGEOMETRYSHADERWITHSTREAMOUTPUT_INVALIDOUTPUTSLOT : D3D12_MESSAGE_ID = 80 ;
17029pub const D3D12_MESSAGE_ID_D3D12_MESSAGE_ID_CREATEGEOMETRYSHADERWITHSTREAMOUTPUT_ONLYONEELEMENTPERSLOT : D3D12_MESSAGE_ID = 81 ;
17030pub const D3D12_MESSAGE_ID_D3D12_MESSAGE_ID_CREATEGEOMETRYSHADERWITHSTREAMOUTPUT_INVALIDCOMPONENTCOUNT : D3D12_MESSAGE_ID = 82 ;
17031pub const D3D12_MESSAGE_ID_D3D12_MESSAGE_ID_CREATEGEOMETRYSHADERWITHSTREAMOUTPUT_INVALIDSTARTCOMPONENTANDCOMPONENTCOUNT : D3D12_MESSAGE_ID = 83 ;
17032pub const D3D12_MESSAGE_ID_D3D12_MESSAGE_ID_CREATEGEOMETRYSHADERWITHSTREAMOUTPUT_INVALIDGAPDEFINITION : D3D12_MESSAGE_ID = 84 ;
17033pub const D3D12_MESSAGE_ID_D3D12_MESSAGE_ID_CREATEGEOMETRYSHADERWITHSTREAMOUTPUT_REPEATEDOUTPUT : D3D12_MESSAGE_ID = 85 ;
17034pub const D3D12_MESSAGE_ID_D3D12_MESSAGE_ID_CREATEGEOMETRYSHADERWITHSTREAMOUTPUT_INVALIDOUTPUTSTREAMSTRIDE : D3D12_MESSAGE_ID = 86 ;
17035pub const D3D12_MESSAGE_ID_D3D12_MESSAGE_ID_CREATEGEOMETRYSHADERWITHSTREAMOUTPUT_MISSINGSEMANTIC : D3D12_MESSAGE_ID = 87 ;
17036pub const D3D12_MESSAGE_ID_D3D12_MESSAGE_ID_CREATEGEOMETRYSHADERWITHSTREAMOUTPUT_MASKMISMATCH : D3D12_MESSAGE_ID = 88 ;
17037pub const D3D12_MESSAGE_ID_D3D12_MESSAGE_ID_CREATEGEOMETRYSHADERWITHSTREAMOUTPUT_CANTHAVEONLYGAPS : D3D12_MESSAGE_ID = 89 ;
17038pub const D3D12_MESSAGE_ID_D3D12_MESSAGE_ID_CREATEGEOMETRYSHADERWITHSTREAMOUTPUT_DECLTOOCOMPLEX : D3D12_MESSAGE_ID = 90 ;
17039pub const D3D12_MESSAGE_ID_D3D12_MESSAGE_ID_CREATEGEOMETRYSHADERWITHSTREAMOUTPUT_MISSINGOUTPUTSIGNATURE : D3D12_MESSAGE_ID = 91 ;
17040pub const D3D12_MESSAGE_ID_D3D12_MESSAGE_ID_CREATEPIXELSHADER_OUTOFMEMORY:
17041 D3D12_MESSAGE_ID = 92;
17042pub const D3D12_MESSAGE_ID_D3D12_MESSAGE_ID_CREATEPIXELSHADER_INVALIDSHADERBYTECODE : D3D12_MESSAGE_ID = 93 ;
17043pub const D3D12_MESSAGE_ID_D3D12_MESSAGE_ID_CREATEPIXELSHADER_INVALIDSHADERTYPE : D3D12_MESSAGE_ID = 94 ;
17044pub const D3D12_MESSAGE_ID_D3D12_MESSAGE_ID_CREATERASTERIZERSTATE_INVALIDFILLMODE : D3D12_MESSAGE_ID = 95 ;
17045pub const D3D12_MESSAGE_ID_D3D12_MESSAGE_ID_CREATERASTERIZERSTATE_INVALIDCULLMODE : D3D12_MESSAGE_ID = 96 ;
17046pub const D3D12_MESSAGE_ID_D3D12_MESSAGE_ID_CREATERASTERIZERSTATE_INVALIDDEPTHBIASCLAMP : D3D12_MESSAGE_ID = 97 ;
17047pub const D3D12_MESSAGE_ID_D3D12_MESSAGE_ID_CREATERASTERIZERSTATE_INVALIDSLOPESCALEDDEPTHBIAS : D3D12_MESSAGE_ID = 98 ;
17048pub const D3D12_MESSAGE_ID_D3D12_MESSAGE_ID_CREATEDEPTHSTENCILSTATE_INVALIDDEPTHWRITEMASK : D3D12_MESSAGE_ID = 100 ;
17049pub const D3D12_MESSAGE_ID_D3D12_MESSAGE_ID_CREATEDEPTHSTENCILSTATE_INVALIDDEPTHFUNC : D3D12_MESSAGE_ID = 101 ;
17050pub const D3D12_MESSAGE_ID_D3D12_MESSAGE_ID_CREATEDEPTHSTENCILSTATE_INVALIDFRONTFACESTENCILFAILOP : D3D12_MESSAGE_ID = 102 ;
17051pub const D3D12_MESSAGE_ID_D3D12_MESSAGE_ID_CREATEDEPTHSTENCILSTATE_INVALIDFRONTFACESTENCILZFAILOP : D3D12_MESSAGE_ID = 103 ;
17052pub const D3D12_MESSAGE_ID_D3D12_MESSAGE_ID_CREATEDEPTHSTENCILSTATE_INVALIDFRONTFACESTENCILPASSOP : D3D12_MESSAGE_ID = 104 ;
17053pub const D3D12_MESSAGE_ID_D3D12_MESSAGE_ID_CREATEDEPTHSTENCILSTATE_INVALIDFRONTFACESTENCILFUNC : D3D12_MESSAGE_ID = 105 ;
17054pub const D3D12_MESSAGE_ID_D3D12_MESSAGE_ID_CREATEDEPTHSTENCILSTATE_INVALIDBACKFACESTENCILFAILOP : D3D12_MESSAGE_ID = 106 ;
17055pub const D3D12_MESSAGE_ID_D3D12_MESSAGE_ID_CREATEDEPTHSTENCILSTATE_INVALIDBACKFACESTENCILZFAILOP : D3D12_MESSAGE_ID = 107 ;
17056pub const D3D12_MESSAGE_ID_D3D12_MESSAGE_ID_CREATEDEPTHSTENCILSTATE_INVALIDBACKFACESTENCILPASSOP : D3D12_MESSAGE_ID = 108 ;
17057pub const D3D12_MESSAGE_ID_D3D12_MESSAGE_ID_CREATEDEPTHSTENCILSTATE_INVALIDBACKFACESTENCILFUNC : D3D12_MESSAGE_ID = 109 ;
17058pub const D3D12_MESSAGE_ID_D3D12_MESSAGE_ID_CREATEBLENDSTATE_INVALIDSRCBLEND:
17059 D3D12_MESSAGE_ID = 111;
17060pub const D3D12_MESSAGE_ID_D3D12_MESSAGE_ID_CREATEBLENDSTATE_INVALIDDESTBLEND : D3D12_MESSAGE_ID = 112 ;
17061pub const D3D12_MESSAGE_ID_D3D12_MESSAGE_ID_CREATEBLENDSTATE_INVALIDBLENDOP:
17062 D3D12_MESSAGE_ID = 113;
17063pub const D3D12_MESSAGE_ID_D3D12_MESSAGE_ID_CREATEBLENDSTATE_INVALIDSRCBLENDALPHA : D3D12_MESSAGE_ID = 114 ;
17064pub const D3D12_MESSAGE_ID_D3D12_MESSAGE_ID_CREATEBLENDSTATE_INVALIDDESTBLENDALPHA : D3D12_MESSAGE_ID = 115 ;
17065pub const D3D12_MESSAGE_ID_D3D12_MESSAGE_ID_CREATEBLENDSTATE_INVALIDBLENDOPALPHA : D3D12_MESSAGE_ID = 116 ;
17066pub const D3D12_MESSAGE_ID_D3D12_MESSAGE_ID_CREATEBLENDSTATE_INVALIDRENDERTARGETWRITEMASK : D3D12_MESSAGE_ID = 117 ;
17067pub const D3D12_MESSAGE_ID_D3D12_MESSAGE_ID_CLEARDEPTHSTENCILVIEW_INVALID:
17068 D3D12_MESSAGE_ID = 135;
17069pub const D3D12_MESSAGE_ID_D3D12_MESSAGE_ID_COMMAND_LIST_DRAW_ROOT_SIGNATURE_NOT_SET : D3D12_MESSAGE_ID = 200 ;
17070pub const D3D12_MESSAGE_ID_D3D12_MESSAGE_ID_COMMAND_LIST_DRAW_ROOT_SIGNATURE_MISMATCH : D3D12_MESSAGE_ID = 201 ;
17071pub const D3D12_MESSAGE_ID_D3D12_MESSAGE_ID_COMMAND_LIST_DRAW_VERTEX_BUFFER_NOT_SET : D3D12_MESSAGE_ID = 202 ;
17072pub const D3D12_MESSAGE_ID_D3D12_MESSAGE_ID_COMMAND_LIST_DRAW_VERTEX_BUFFER_STRIDE_TOO_SMALL : D3D12_MESSAGE_ID = 209 ;
17073pub const D3D12_MESSAGE_ID_D3D12_MESSAGE_ID_COMMAND_LIST_DRAW_VERTEX_BUFFER_TOO_SMALL : D3D12_MESSAGE_ID = 210 ;
17074pub const D3D12_MESSAGE_ID_D3D12_MESSAGE_ID_COMMAND_LIST_DRAW_INDEX_BUFFER_NOT_SET : D3D12_MESSAGE_ID = 211 ;
17075pub const D3D12_MESSAGE_ID_D3D12_MESSAGE_ID_COMMAND_LIST_DRAW_INDEX_BUFFER_FORMAT_INVALID : D3D12_MESSAGE_ID = 212 ;
17076pub const D3D12_MESSAGE_ID_D3D12_MESSAGE_ID_COMMAND_LIST_DRAW_INDEX_BUFFER_TOO_SMALL : D3D12_MESSAGE_ID = 213 ;
17077pub const D3D12_MESSAGE_ID_D3D12_MESSAGE_ID_COMMAND_LIST_DRAW_INVALID_PRIMITIVETOPOLOGY : D3D12_MESSAGE_ID = 219 ;
17078pub const D3D12_MESSAGE_ID_D3D12_MESSAGE_ID_COMMAND_LIST_DRAW_VERTEX_STRIDE_UNALIGNED : D3D12_MESSAGE_ID = 221 ;
17079pub const D3D12_MESSAGE_ID_D3D12_MESSAGE_ID_COMMAND_LIST_DRAW_INDEX_OFFSET_UNALIGNED : D3D12_MESSAGE_ID = 222 ;
17080pub const D3D12_MESSAGE_ID_D3D12_MESSAGE_ID_DEVICE_REMOVAL_PROCESS_AT_FAULT:
17081 D3D12_MESSAGE_ID = 232;
17082pub const D3D12_MESSAGE_ID_D3D12_MESSAGE_ID_DEVICE_REMOVAL_PROCESS_POSSIBLY_AT_FAULT : D3D12_MESSAGE_ID = 233 ;
17083pub const D3D12_MESSAGE_ID_D3D12_MESSAGE_ID_DEVICE_REMOVAL_PROCESS_NOT_AT_FAULT : D3D12_MESSAGE_ID = 234 ;
17084pub const D3D12_MESSAGE_ID_D3D12_MESSAGE_ID_CREATEINPUTLAYOUT_TRAILING_DIGIT_IN_SEMANTIC : D3D12_MESSAGE_ID = 239 ;
17085pub const D3D12_MESSAGE_ID_D3D12_MESSAGE_ID_CREATEGEOMETRYSHADERWITHSTREAMOUTPUT_TRAILING_DIGIT_IN_SEMANTIC : D3D12_MESSAGE_ID = 240 ;
17086pub const D3D12_MESSAGE_ID_D3D12_MESSAGE_ID_CREATEINPUTLAYOUT_TYPE_MISMATCH:
17087 D3D12_MESSAGE_ID = 245;
17088pub const D3D12_MESSAGE_ID_D3D12_MESSAGE_ID_CREATEINPUTLAYOUT_EMPTY_LAYOUT:
17089 D3D12_MESSAGE_ID = 253;
17090pub const D3D12_MESSAGE_ID_D3D12_MESSAGE_ID_LIVE_OBJECT_SUMMARY:
17091 D3D12_MESSAGE_ID = 255;
17092pub const D3D12_MESSAGE_ID_D3D12_MESSAGE_ID_LIVE_DEVICE: D3D12_MESSAGE_ID = 274;
17093pub const D3D12_MESSAGE_ID_D3D12_MESSAGE_ID_LIVE_SWAPCHAIN: D3D12_MESSAGE_ID =
17094 275;
17095pub const D3D12_MESSAGE_ID_D3D12_MESSAGE_ID_CREATEDEPTHSTENCILVIEW_INVALIDFLAGS : D3D12_MESSAGE_ID = 276 ;
17096pub const D3D12_MESSAGE_ID_D3D12_MESSAGE_ID_CREATEVERTEXSHADER_INVALIDCLASSLINKAGE : D3D12_MESSAGE_ID = 277 ;
17097pub const D3D12_MESSAGE_ID_D3D12_MESSAGE_ID_CREATEGEOMETRYSHADER_INVALIDCLASSLINKAGE : D3D12_MESSAGE_ID = 278 ;
17098pub const D3D12_MESSAGE_ID_D3D12_MESSAGE_ID_CREATEGEOMETRYSHADERWITHSTREAMOUTPUT_INVALIDSTREAMTORASTERIZER : D3D12_MESSAGE_ID = 280 ;
17099pub const D3D12_MESSAGE_ID_D3D12_MESSAGE_ID_CREATEPIXELSHADER_INVALIDCLASSLINKAGE : D3D12_MESSAGE_ID = 283 ;
17100pub const D3D12_MESSAGE_ID_D3D12_MESSAGE_ID_CREATEGEOMETRYSHADERWITHSTREAMOUTPUT_INVALIDSTREAM : D3D12_MESSAGE_ID = 284 ;
17101pub const D3D12_MESSAGE_ID_D3D12_MESSAGE_ID_CREATEGEOMETRYSHADERWITHSTREAMOUTPUT_UNEXPECTEDENTRIES : D3D12_MESSAGE_ID = 285 ;
17102pub const D3D12_MESSAGE_ID_D3D12_MESSAGE_ID_CREATEGEOMETRYSHADERWITHSTREAMOUTPUT_UNEXPECTEDSTRIDES : D3D12_MESSAGE_ID = 286 ;
17103pub const D3D12_MESSAGE_ID_D3D12_MESSAGE_ID_CREATEGEOMETRYSHADERWITHSTREAMOUTPUT_INVALIDNUMSTRIDES : D3D12_MESSAGE_ID = 287 ;
17104pub const D3D12_MESSAGE_ID_D3D12_MESSAGE_ID_CREATEHULLSHADER_OUTOFMEMORY:
17105 D3D12_MESSAGE_ID = 289;
17106pub const D3D12_MESSAGE_ID_D3D12_MESSAGE_ID_CREATEHULLSHADER_INVALIDSHADERBYTECODE : D3D12_MESSAGE_ID = 290 ;
17107pub const D3D12_MESSAGE_ID_D3D12_MESSAGE_ID_CREATEHULLSHADER_INVALIDSHADERTYPE : D3D12_MESSAGE_ID = 291 ;
17108pub const D3D12_MESSAGE_ID_D3D12_MESSAGE_ID_CREATEHULLSHADER_INVALIDCLASSLINKAGE : D3D12_MESSAGE_ID = 292 ;
17109pub const D3D12_MESSAGE_ID_D3D12_MESSAGE_ID_CREATEDOMAINSHADER_OUTOFMEMORY:
17110 D3D12_MESSAGE_ID = 294;
17111pub const D3D12_MESSAGE_ID_D3D12_MESSAGE_ID_CREATEDOMAINSHADER_INVALIDSHADERBYTECODE : D3D12_MESSAGE_ID = 295 ;
17112pub const D3D12_MESSAGE_ID_D3D12_MESSAGE_ID_CREATEDOMAINSHADER_INVALIDSHADERTYPE : D3D12_MESSAGE_ID = 296 ;
17113pub const D3D12_MESSAGE_ID_D3D12_MESSAGE_ID_CREATEDOMAINSHADER_INVALIDCLASSLINKAGE : D3D12_MESSAGE_ID = 297 ;
17114pub const D3D12_MESSAGE_ID_D3D12_MESSAGE_ID_RESOURCE_UNMAP_NOTMAPPED:
17115 D3D12_MESSAGE_ID = 310;
17116pub const D3D12_MESSAGE_ID_D3D12_MESSAGE_ID_DEVICE_CHECKFEATURESUPPORT_MISMATCHED_DATA_SIZE : D3D12_MESSAGE_ID = 318 ;
17117pub const D3D12_MESSAGE_ID_D3D12_MESSAGE_ID_CREATECOMPUTESHADER_OUTOFMEMORY:
17118 D3D12_MESSAGE_ID = 321;
17119pub const D3D12_MESSAGE_ID_D3D12_MESSAGE_ID_CREATECOMPUTESHADER_INVALIDSHADERBYTECODE : D3D12_MESSAGE_ID = 322 ;
17120pub const D3D12_MESSAGE_ID_D3D12_MESSAGE_ID_CREATECOMPUTESHADER_INVALIDCLASSLINKAGE : D3D12_MESSAGE_ID = 323 ;
17121pub const D3D12_MESSAGE_ID_D3D12_MESSAGE_ID_DEVICE_CREATEVERTEXSHADER_DOUBLEFLOATOPSNOTSUPPORTED : D3D12_MESSAGE_ID = 331 ;
17122pub const D3D12_MESSAGE_ID_D3D12_MESSAGE_ID_DEVICE_CREATEHULLSHADER_DOUBLEFLOATOPSNOTSUPPORTED : D3D12_MESSAGE_ID = 332 ;
17123pub const D3D12_MESSAGE_ID_D3D12_MESSAGE_ID_DEVICE_CREATEDOMAINSHADER_DOUBLEFLOATOPSNOTSUPPORTED : D3D12_MESSAGE_ID = 333 ;
17124pub const D3D12_MESSAGE_ID_D3D12_MESSAGE_ID_DEVICE_CREATEGEOMETRYSHADER_DOUBLEFLOATOPSNOTSUPPORTED : D3D12_MESSAGE_ID = 334 ;
17125pub const D3D12_MESSAGE_ID_D3D12_MESSAGE_ID_DEVICE_CREATEGEOMETRYSHADERWITHSTREAMOUTPUT_DOUBLEFLOATOPSNOTSUPPORTED : D3D12_MESSAGE_ID = 335 ;
17126pub const D3D12_MESSAGE_ID_D3D12_MESSAGE_ID_DEVICE_CREATEPIXELSHADER_DOUBLEFLOATOPSNOTSUPPORTED : D3D12_MESSAGE_ID = 336 ;
17127pub const D3D12_MESSAGE_ID_D3D12_MESSAGE_ID_DEVICE_CREATECOMPUTESHADER_DOUBLEFLOATOPSNOTSUPPORTED : D3D12_MESSAGE_ID = 337 ;
17128pub const D3D12_MESSAGE_ID_D3D12_MESSAGE_ID_CREATEUNORDEREDACCESSVIEW_INVALIDRESOURCE : D3D12_MESSAGE_ID = 340 ;
17129pub const D3D12_MESSAGE_ID_D3D12_MESSAGE_ID_CREATEUNORDEREDACCESSVIEW_INVALIDDESC : D3D12_MESSAGE_ID = 341 ;
17130pub const D3D12_MESSAGE_ID_D3D12_MESSAGE_ID_CREATEUNORDEREDACCESSVIEW_INVALIDFORMAT : D3D12_MESSAGE_ID = 342 ;
17131pub const D3D12_MESSAGE_ID_D3D12_MESSAGE_ID_CREATEUNORDEREDACCESSVIEW_INVALIDVIDEOPLANESLICE : D3D12_MESSAGE_ID = 343 ;
17132pub const D3D12_MESSAGE_ID_D3D12_MESSAGE_ID_CREATEUNORDEREDACCESSVIEW_INVALIDPLANESLICE : D3D12_MESSAGE_ID = 344 ;
17133pub const D3D12_MESSAGE_ID_D3D12_MESSAGE_ID_CREATEUNORDEREDACCESSVIEW_INVALIDDIMENSIONS : D3D12_MESSAGE_ID = 345 ;
17134pub const D3D12_MESSAGE_ID_D3D12_MESSAGE_ID_CREATEUNORDEREDACCESSVIEW_UNRECOGNIZEDFORMAT : D3D12_MESSAGE_ID = 346 ;
17135pub const D3D12_MESSAGE_ID_D3D12_MESSAGE_ID_CREATEUNORDEREDACCESSVIEW_INVALIDFLAGS : D3D12_MESSAGE_ID = 354 ;
17136pub const D3D12_MESSAGE_ID_D3D12_MESSAGE_ID_CREATERASTERIZERSTATE_INVALIDFORCEDSAMPLECOUNT : D3D12_MESSAGE_ID = 401 ;
17137pub const D3D12_MESSAGE_ID_D3D12_MESSAGE_ID_CREATEBLENDSTATE_INVALIDLOGICOPS:
17138 D3D12_MESSAGE_ID = 403;
17139pub const D3D12_MESSAGE_ID_D3D12_MESSAGE_ID_DEVICE_CREATEVERTEXSHADER_DOUBLEEXTENSIONSNOTSUPPORTED : D3D12_MESSAGE_ID = 410 ;
17140pub const D3D12_MESSAGE_ID_D3D12_MESSAGE_ID_DEVICE_CREATEHULLSHADER_DOUBLEEXTENSIONSNOTSUPPORTED : D3D12_MESSAGE_ID = 412 ;
17141pub const D3D12_MESSAGE_ID_D3D12_MESSAGE_ID_DEVICE_CREATEDOMAINSHADER_DOUBLEEXTENSIONSNOTSUPPORTED : D3D12_MESSAGE_ID = 414 ;
17142pub const D3D12_MESSAGE_ID_D3D12_MESSAGE_ID_DEVICE_CREATEGEOMETRYSHADER_DOUBLEEXTENSIONSNOTSUPPORTED : D3D12_MESSAGE_ID = 416 ;
17143pub const D3D12_MESSAGE_ID_D3D12_MESSAGE_ID_DEVICE_CREATEGEOMETRYSHADERWITHSTREAMOUTPUT_DOUBLEEXTENSIONSNOTSUPPORTED : D3D12_MESSAGE_ID = 418 ;
17144pub const D3D12_MESSAGE_ID_D3D12_MESSAGE_ID_DEVICE_CREATEPIXELSHADER_DOUBLEEXTENSIONSNOTSUPPORTED : D3D12_MESSAGE_ID = 420 ;
17145pub const D3D12_MESSAGE_ID_D3D12_MESSAGE_ID_DEVICE_CREATECOMPUTESHADER_DOUBLEEXTENSIONSNOTSUPPORTED : D3D12_MESSAGE_ID = 422 ;
17146pub const D3D12_MESSAGE_ID_D3D12_MESSAGE_ID_DEVICE_CREATEVERTEXSHADER_UAVSNOTSUPPORTED : D3D12_MESSAGE_ID = 425 ;
17147pub const D3D12_MESSAGE_ID_D3D12_MESSAGE_ID_DEVICE_CREATEHULLSHADER_UAVSNOTSUPPORTED : D3D12_MESSAGE_ID = 426 ;
17148pub const D3D12_MESSAGE_ID_D3D12_MESSAGE_ID_DEVICE_CREATEDOMAINSHADER_UAVSNOTSUPPORTED : D3D12_MESSAGE_ID = 427 ;
17149pub const D3D12_MESSAGE_ID_D3D12_MESSAGE_ID_DEVICE_CREATEGEOMETRYSHADER_UAVSNOTSUPPORTED : D3D12_MESSAGE_ID = 428 ;
17150pub const D3D12_MESSAGE_ID_D3D12_MESSAGE_ID_DEVICE_CREATEGEOMETRYSHADERWITHSTREAMOUTPUT_UAVSNOTSUPPORTED : D3D12_MESSAGE_ID = 429 ;
17151pub const D3D12_MESSAGE_ID_D3D12_MESSAGE_ID_DEVICE_CREATEPIXELSHADER_UAVSNOTSUPPORTED : D3D12_MESSAGE_ID = 430 ;
17152pub const D3D12_MESSAGE_ID_D3D12_MESSAGE_ID_DEVICE_CREATECOMPUTESHADER_UAVSNOTSUPPORTED : D3D12_MESSAGE_ID = 431 ;
17153pub const D3D12_MESSAGE_ID_D3D12_MESSAGE_ID_DEVICE_CLEARVIEW_INVALIDSOURCERECT : D3D12_MESSAGE_ID = 447 ;
17154pub const D3D12_MESSAGE_ID_D3D12_MESSAGE_ID_DEVICE_CLEARVIEW_EMPTYRECT:
17155 D3D12_MESSAGE_ID = 448;
17156pub const D3D12_MESSAGE_ID_D3D12_MESSAGE_ID_UPDATETILEMAPPINGS_INVALID_PARAMETER : D3D12_MESSAGE_ID = 493 ;
17157pub const D3D12_MESSAGE_ID_D3D12_MESSAGE_ID_COPYTILEMAPPINGS_INVALID_PARAMETER : D3D12_MESSAGE_ID = 494 ;
17158pub const D3D12_MESSAGE_ID_D3D12_MESSAGE_ID_CREATEDEVICE_INVALIDARGS:
17159 D3D12_MESSAGE_ID = 506;
17160pub const D3D12_MESSAGE_ID_D3D12_MESSAGE_ID_CREATEDEVICE_WARNING:
17161 D3D12_MESSAGE_ID = 507;
17162pub const D3D12_MESSAGE_ID_D3D12_MESSAGE_ID_RESOURCE_BARRIER_INVALID_TYPE:
17163 D3D12_MESSAGE_ID = 519;
17164pub const D3D12_MESSAGE_ID_D3D12_MESSAGE_ID_RESOURCE_BARRIER_NULL_POINTER:
17165 D3D12_MESSAGE_ID = 520;
17166pub const D3D12_MESSAGE_ID_D3D12_MESSAGE_ID_RESOURCE_BARRIER_INVALID_SUBRESOURCE : D3D12_MESSAGE_ID = 521 ;
17167pub const D3D12_MESSAGE_ID_D3D12_MESSAGE_ID_RESOURCE_BARRIER_RESERVED_BITS:
17168 D3D12_MESSAGE_ID = 522;
17169pub const D3D12_MESSAGE_ID_D3D12_MESSAGE_ID_RESOURCE_BARRIER_MISSING_BIND_FLAGS : D3D12_MESSAGE_ID = 523 ;
17170pub const D3D12_MESSAGE_ID_D3D12_MESSAGE_ID_RESOURCE_BARRIER_MISMATCHING_MISC_FLAGS : D3D12_MESSAGE_ID = 524 ;
17171pub const D3D12_MESSAGE_ID_D3D12_MESSAGE_ID_RESOURCE_BARRIER_MATCHING_STATES:
17172 D3D12_MESSAGE_ID = 525;
17173pub const D3D12_MESSAGE_ID_D3D12_MESSAGE_ID_RESOURCE_BARRIER_INVALID_COMBINATION : D3D12_MESSAGE_ID = 526 ;
17174pub const D3D12_MESSAGE_ID_D3D12_MESSAGE_ID_RESOURCE_BARRIER_BEFORE_AFTER_MISMATCH : D3D12_MESSAGE_ID = 527 ;
17175pub const D3D12_MESSAGE_ID_D3D12_MESSAGE_ID_RESOURCE_BARRIER_INVALID_RESOURCE : D3D12_MESSAGE_ID = 528 ;
17176pub const D3D12_MESSAGE_ID_D3D12_MESSAGE_ID_RESOURCE_BARRIER_SAMPLE_COUNT:
17177 D3D12_MESSAGE_ID = 529;
17178pub const D3D12_MESSAGE_ID_D3D12_MESSAGE_ID_RESOURCE_BARRIER_INVALID_FLAGS:
17179 D3D12_MESSAGE_ID = 530;
17180pub const D3D12_MESSAGE_ID_D3D12_MESSAGE_ID_RESOURCE_BARRIER_INVALID_COMBINED_FLAGS : D3D12_MESSAGE_ID = 531 ;
17181pub const D3D12_MESSAGE_ID_D3D12_MESSAGE_ID_RESOURCE_BARRIER_INVALID_FLAGS_FOR_FORMAT : D3D12_MESSAGE_ID = 532 ;
17182pub const D3D12_MESSAGE_ID_D3D12_MESSAGE_ID_RESOURCE_BARRIER_INVALID_SPLIT_BARRIER : D3D12_MESSAGE_ID = 533 ;
17183pub const D3D12_MESSAGE_ID_D3D12_MESSAGE_ID_RESOURCE_BARRIER_UNMATCHED_END:
17184 D3D12_MESSAGE_ID = 534;
17185pub const D3D12_MESSAGE_ID_D3D12_MESSAGE_ID_RESOURCE_BARRIER_UNMATCHED_BEGIN:
17186 D3D12_MESSAGE_ID = 535;
17187pub const D3D12_MESSAGE_ID_D3D12_MESSAGE_ID_RESOURCE_BARRIER_INVALID_FLAG:
17188 D3D12_MESSAGE_ID = 536;
17189pub const D3D12_MESSAGE_ID_D3D12_MESSAGE_ID_RESOURCE_BARRIER_INVALID_COMMAND_LIST_TYPE : D3D12_MESSAGE_ID = 537 ;
17190pub const D3D12_MESSAGE_ID_D3D12_MESSAGE_ID_INVALID_SUBRESOURCE_STATE:
17191 D3D12_MESSAGE_ID = 538;
17192pub const D3D12_MESSAGE_ID_D3D12_MESSAGE_ID_COMMAND_ALLOCATOR_CONTENTION:
17193 D3D12_MESSAGE_ID = 540;
17194pub const D3D12_MESSAGE_ID_D3D12_MESSAGE_ID_COMMAND_ALLOCATOR_RESET:
17195 D3D12_MESSAGE_ID = 541;
17196pub const D3D12_MESSAGE_ID_D3D12_MESSAGE_ID_COMMAND_ALLOCATOR_RESET_BUNDLE:
17197 D3D12_MESSAGE_ID = 542;
17198pub const D3D12_MESSAGE_ID_D3D12_MESSAGE_ID_COMMAND_ALLOCATOR_CANNOT_RESET:
17199 D3D12_MESSAGE_ID = 543;
17200pub const D3D12_MESSAGE_ID_D3D12_MESSAGE_ID_COMMAND_LIST_OPEN:
17201 D3D12_MESSAGE_ID = 544;
17202pub const D3D12_MESSAGE_ID_D3D12_MESSAGE_ID_INVALID_BUNDLE_API:
17203 D3D12_MESSAGE_ID = 546;
17204pub const D3D12_MESSAGE_ID_D3D12_MESSAGE_ID_COMMAND_LIST_CLOSED:
17205 D3D12_MESSAGE_ID = 547;
17206pub const D3D12_MESSAGE_ID_D3D12_MESSAGE_ID_WRONG_COMMAND_ALLOCATOR_TYPE:
17207 D3D12_MESSAGE_ID = 549;
17208pub const D3D12_MESSAGE_ID_D3D12_MESSAGE_ID_COMMAND_ALLOCATOR_SYNC:
17209 D3D12_MESSAGE_ID = 552;
17210pub const D3D12_MESSAGE_ID_D3D12_MESSAGE_ID_COMMAND_LIST_SYNC:
17211 D3D12_MESSAGE_ID = 553;
17212pub const D3D12_MESSAGE_ID_D3D12_MESSAGE_ID_SET_DESCRIPTOR_HEAP_INVALID:
17213 D3D12_MESSAGE_ID = 554;
17214pub const D3D12_MESSAGE_ID_D3D12_MESSAGE_ID_CREATE_COMMANDQUEUE:
17215 D3D12_MESSAGE_ID = 557;
17216pub const D3D12_MESSAGE_ID_D3D12_MESSAGE_ID_CREATE_COMMANDALLOCATOR:
17217 D3D12_MESSAGE_ID = 558;
17218pub const D3D12_MESSAGE_ID_D3D12_MESSAGE_ID_CREATE_PIPELINESTATE:
17219 D3D12_MESSAGE_ID = 559;
17220pub const D3D12_MESSAGE_ID_D3D12_MESSAGE_ID_CREATE_COMMANDLIST12:
17221 D3D12_MESSAGE_ID = 560;
17222pub const D3D12_MESSAGE_ID_D3D12_MESSAGE_ID_CREATE_RESOURCE: D3D12_MESSAGE_ID =
17223 562;
17224pub const D3D12_MESSAGE_ID_D3D12_MESSAGE_ID_CREATE_DESCRIPTORHEAP:
17225 D3D12_MESSAGE_ID = 563;
17226pub const D3D12_MESSAGE_ID_D3D12_MESSAGE_ID_CREATE_ROOTSIGNATURE:
17227 D3D12_MESSAGE_ID = 564;
17228pub const D3D12_MESSAGE_ID_D3D12_MESSAGE_ID_CREATE_LIBRARY: D3D12_MESSAGE_ID =
17229 565;
17230pub const D3D12_MESSAGE_ID_D3D12_MESSAGE_ID_CREATE_HEAP: D3D12_MESSAGE_ID = 566;
17231pub const D3D12_MESSAGE_ID_D3D12_MESSAGE_ID_CREATE_MONITOREDFENCE:
17232 D3D12_MESSAGE_ID = 567;
17233pub const D3D12_MESSAGE_ID_D3D12_MESSAGE_ID_CREATE_QUERYHEAP: D3D12_MESSAGE_ID =
17234 568;
17235pub const D3D12_MESSAGE_ID_D3D12_MESSAGE_ID_CREATE_COMMANDSIGNATURE:
17236 D3D12_MESSAGE_ID = 569;
17237pub const D3D12_MESSAGE_ID_D3D12_MESSAGE_ID_LIVE_COMMANDQUEUE:
17238 D3D12_MESSAGE_ID = 570;
17239pub const D3D12_MESSAGE_ID_D3D12_MESSAGE_ID_LIVE_COMMANDALLOCATOR:
17240 D3D12_MESSAGE_ID = 571;
17241pub const D3D12_MESSAGE_ID_D3D12_MESSAGE_ID_LIVE_PIPELINESTATE:
17242 D3D12_MESSAGE_ID = 572;
17243pub const D3D12_MESSAGE_ID_D3D12_MESSAGE_ID_LIVE_COMMANDLIST12:
17244 D3D12_MESSAGE_ID = 573;
17245pub const D3D12_MESSAGE_ID_D3D12_MESSAGE_ID_LIVE_RESOURCE: D3D12_MESSAGE_ID =
17246 575;
17247pub const D3D12_MESSAGE_ID_D3D12_MESSAGE_ID_LIVE_DESCRIPTORHEAP:
17248 D3D12_MESSAGE_ID = 576;
17249pub const D3D12_MESSAGE_ID_D3D12_MESSAGE_ID_LIVE_ROOTSIGNATURE:
17250 D3D12_MESSAGE_ID = 577;
17251pub const D3D12_MESSAGE_ID_D3D12_MESSAGE_ID_LIVE_LIBRARY: D3D12_MESSAGE_ID =
17252 578;
17253pub const D3D12_MESSAGE_ID_D3D12_MESSAGE_ID_LIVE_HEAP: D3D12_MESSAGE_ID = 579;
17254pub const D3D12_MESSAGE_ID_D3D12_MESSAGE_ID_LIVE_MONITOREDFENCE:
17255 D3D12_MESSAGE_ID = 580;
17256pub const D3D12_MESSAGE_ID_D3D12_MESSAGE_ID_LIVE_QUERYHEAP: D3D12_MESSAGE_ID =
17257 581;
17258pub const D3D12_MESSAGE_ID_D3D12_MESSAGE_ID_LIVE_COMMANDSIGNATURE:
17259 D3D12_MESSAGE_ID = 582;
17260pub const D3D12_MESSAGE_ID_D3D12_MESSAGE_ID_DESTROY_COMMANDQUEUE:
17261 D3D12_MESSAGE_ID = 583;
17262pub const D3D12_MESSAGE_ID_D3D12_MESSAGE_ID_DESTROY_COMMANDALLOCATOR:
17263 D3D12_MESSAGE_ID = 584;
17264pub const D3D12_MESSAGE_ID_D3D12_MESSAGE_ID_DESTROY_PIPELINESTATE:
17265 D3D12_MESSAGE_ID = 585;
17266pub const D3D12_MESSAGE_ID_D3D12_MESSAGE_ID_DESTROY_COMMANDLIST12:
17267 D3D12_MESSAGE_ID = 586;
17268pub const D3D12_MESSAGE_ID_D3D12_MESSAGE_ID_DESTROY_RESOURCE: D3D12_MESSAGE_ID =
17269 588;
17270pub const D3D12_MESSAGE_ID_D3D12_MESSAGE_ID_DESTROY_DESCRIPTORHEAP:
17271 D3D12_MESSAGE_ID = 589;
17272pub const D3D12_MESSAGE_ID_D3D12_MESSAGE_ID_DESTROY_ROOTSIGNATURE:
17273 D3D12_MESSAGE_ID = 590;
17274pub const D3D12_MESSAGE_ID_D3D12_MESSAGE_ID_DESTROY_LIBRARY: D3D12_MESSAGE_ID =
17275 591;
17276pub const D3D12_MESSAGE_ID_D3D12_MESSAGE_ID_DESTROY_HEAP: D3D12_MESSAGE_ID =
17277 592;
17278pub const D3D12_MESSAGE_ID_D3D12_MESSAGE_ID_DESTROY_MONITOREDFENCE:
17279 D3D12_MESSAGE_ID = 593;
17280pub const D3D12_MESSAGE_ID_D3D12_MESSAGE_ID_DESTROY_QUERYHEAP:
17281 D3D12_MESSAGE_ID = 594;
17282pub const D3D12_MESSAGE_ID_D3D12_MESSAGE_ID_DESTROY_COMMANDSIGNATURE:
17283 D3D12_MESSAGE_ID = 595;
17284pub const D3D12_MESSAGE_ID_D3D12_MESSAGE_ID_CREATERESOURCE_INVALIDDIMENSIONS:
17285 D3D12_MESSAGE_ID = 597;
17286pub const D3D12_MESSAGE_ID_D3D12_MESSAGE_ID_CREATERESOURCE_INVALIDMISCFLAGS:
17287 D3D12_MESSAGE_ID = 599;
17288pub const D3D12_MESSAGE_ID_D3D12_MESSAGE_ID_CREATERESOURCE_INVALIDARG_RETURN:
17289 D3D12_MESSAGE_ID = 602;
17290pub const D3D12_MESSAGE_ID_D3D12_MESSAGE_ID_CREATERESOURCE_OUTOFMEMORY_RETURN : D3D12_MESSAGE_ID = 603 ;
17291pub const D3D12_MESSAGE_ID_D3D12_MESSAGE_ID_CREATERESOURCE_INVALIDDESC:
17292 D3D12_MESSAGE_ID = 604;
17293pub const D3D12_MESSAGE_ID_D3D12_MESSAGE_ID_POSSIBLY_INVALID_SUBRESOURCE_STATE : D3D12_MESSAGE_ID = 607 ;
17294pub const D3D12_MESSAGE_ID_D3D12_MESSAGE_ID_INVALID_USE_OF_NON_RESIDENT_RESOURCE : D3D12_MESSAGE_ID = 608 ;
17295pub const D3D12_MESSAGE_ID_D3D12_MESSAGE_ID_POSSIBLE_INVALID_USE_OF_NON_RESIDENT_RESOURCE : D3D12_MESSAGE_ID = 609 ;
17296pub const D3D12_MESSAGE_ID_D3D12_MESSAGE_ID_BUNDLE_PIPELINE_STATE_MISMATCH:
17297 D3D12_MESSAGE_ID = 610;
17298pub const D3D12_MESSAGE_ID_D3D12_MESSAGE_ID_PRIMITIVE_TOPOLOGY_MISMATCH_PIPELINE_STATE : D3D12_MESSAGE_ID = 611 ;
17299pub const D3D12_MESSAGE_ID_D3D12_MESSAGE_ID_RENDER_TARGET_FORMAT_MISMATCH_PIPELINE_STATE : D3D12_MESSAGE_ID = 613 ;
17300pub const D3D12_MESSAGE_ID_D3D12_MESSAGE_ID_RENDER_TARGET_SAMPLE_DESC_MISMATCH_PIPELINE_STATE : D3D12_MESSAGE_ID = 614 ;
17301pub const D3D12_MESSAGE_ID_D3D12_MESSAGE_ID_DEPTH_STENCIL_FORMAT_MISMATCH_PIPELINE_STATE : D3D12_MESSAGE_ID = 615 ;
17302pub const D3D12_MESSAGE_ID_D3D12_MESSAGE_ID_DEPTH_STENCIL_SAMPLE_DESC_MISMATCH_PIPELINE_STATE : D3D12_MESSAGE_ID = 616 ;
17303pub const D3D12_MESSAGE_ID_D3D12_MESSAGE_ID_CREATESHADER_INVALIDBYTECODE:
17304 D3D12_MESSAGE_ID = 622;
17305pub const D3D12_MESSAGE_ID_D3D12_MESSAGE_ID_CREATEHEAP_NULLDESC:
17306 D3D12_MESSAGE_ID = 623;
17307pub const D3D12_MESSAGE_ID_D3D12_MESSAGE_ID_CREATEHEAP_INVALIDSIZE:
17308 D3D12_MESSAGE_ID = 624;
17309pub const D3D12_MESSAGE_ID_D3D12_MESSAGE_ID_CREATEHEAP_UNRECOGNIZEDHEAPTYPE:
17310 D3D12_MESSAGE_ID = 625;
17311pub const D3D12_MESSAGE_ID_D3D12_MESSAGE_ID_CREATEHEAP_UNRECOGNIZEDCPUPAGEPROPERTIES : D3D12_MESSAGE_ID = 626 ;
17312pub const D3D12_MESSAGE_ID_D3D12_MESSAGE_ID_CREATEHEAP_UNRECOGNIZEDMEMORYPOOL : D3D12_MESSAGE_ID = 627 ;
17313pub const D3D12_MESSAGE_ID_D3D12_MESSAGE_ID_CREATEHEAP_INVALIDPROPERTIES:
17314 D3D12_MESSAGE_ID = 628;
17315pub const D3D12_MESSAGE_ID_D3D12_MESSAGE_ID_CREATEHEAP_INVALIDALIGNMENT:
17316 D3D12_MESSAGE_ID = 629;
17317pub const D3D12_MESSAGE_ID_D3D12_MESSAGE_ID_CREATEHEAP_UNRECOGNIZEDMISCFLAGS:
17318 D3D12_MESSAGE_ID = 630;
17319pub const D3D12_MESSAGE_ID_D3D12_MESSAGE_ID_CREATEHEAP_INVALIDMISCFLAGS:
17320 D3D12_MESSAGE_ID = 631;
17321pub const D3D12_MESSAGE_ID_D3D12_MESSAGE_ID_CREATEHEAP_INVALIDARG_RETURN:
17322 D3D12_MESSAGE_ID = 632;
17323pub const D3D12_MESSAGE_ID_D3D12_MESSAGE_ID_CREATEHEAP_OUTOFMEMORY_RETURN:
17324 D3D12_MESSAGE_ID = 633;
17325pub const D3D12_MESSAGE_ID_D3D12_MESSAGE_ID_CREATERESOURCEANDHEAP_NULLHEAPPROPERTIES : D3D12_MESSAGE_ID = 634 ;
17326pub const D3D12_MESSAGE_ID_D3D12_MESSAGE_ID_CREATERESOURCEANDHEAP_UNRECOGNIZEDHEAPTYPE : D3D12_MESSAGE_ID = 635 ;
17327pub const D3D12_MESSAGE_ID_D3D12_MESSAGE_ID_CREATERESOURCEANDHEAP_UNRECOGNIZEDCPUPAGEPROPERTIES : D3D12_MESSAGE_ID = 636 ;
17328pub const D3D12_MESSAGE_ID_D3D12_MESSAGE_ID_CREATERESOURCEANDHEAP_UNRECOGNIZEDMEMORYPOOL : D3D12_MESSAGE_ID = 637 ;
17329pub const D3D12_MESSAGE_ID_D3D12_MESSAGE_ID_CREATERESOURCEANDHEAP_INVALIDHEAPPROPERTIES : D3D12_MESSAGE_ID = 638 ;
17330pub const D3D12_MESSAGE_ID_D3D12_MESSAGE_ID_CREATERESOURCEANDHEAP_UNRECOGNIZEDHEAPMISCFLAGS : D3D12_MESSAGE_ID = 639 ;
17331pub const D3D12_MESSAGE_ID_D3D12_MESSAGE_ID_CREATERESOURCEANDHEAP_INVALIDHEAPMISCFLAGS : D3D12_MESSAGE_ID = 640 ;
17332pub const D3D12_MESSAGE_ID_D3D12_MESSAGE_ID_CREATERESOURCEANDHEAP_INVALIDARG_RETURN : D3D12_MESSAGE_ID = 641 ;
17333pub const D3D12_MESSAGE_ID_D3D12_MESSAGE_ID_CREATERESOURCEANDHEAP_OUTOFMEMORY_RETURN : D3D12_MESSAGE_ID = 642 ;
17334pub const D3D12_MESSAGE_ID_D3D12_MESSAGE_ID_GETCUSTOMHEAPPROPERTIES_UNRECOGNIZEDHEAPTYPE : D3D12_MESSAGE_ID = 643 ;
17335pub const D3D12_MESSAGE_ID_D3D12_MESSAGE_ID_GETCUSTOMHEAPPROPERTIES_INVALIDHEAPTYPE : D3D12_MESSAGE_ID = 644 ;
17336pub const D3D12_MESSAGE_ID_D3D12_MESSAGE_ID_CREATE_DESCRIPTOR_HEAP_INVALID_DESC : D3D12_MESSAGE_ID = 645 ;
17337pub const D3D12_MESSAGE_ID_D3D12_MESSAGE_ID_INVALID_DESCRIPTOR_HANDLE:
17338 D3D12_MESSAGE_ID = 646;
17339pub const D3D12_MESSAGE_ID_D3D12_MESSAGE_ID_CREATERASTERIZERSTATE_INVALID_CONSERVATIVERASTERMODE : D3D12_MESSAGE_ID = 647 ;
17340pub const D3D12_MESSAGE_ID_D3D12_MESSAGE_ID_CREATE_CONSTANT_BUFFER_VIEW_INVALID_RESOURCE : D3D12_MESSAGE_ID = 649 ;
17341pub const D3D12_MESSAGE_ID_D3D12_MESSAGE_ID_CREATE_CONSTANT_BUFFER_VIEW_INVALID_DESC : D3D12_MESSAGE_ID = 650 ;
17342pub const D3D12_MESSAGE_ID_D3D12_MESSAGE_ID_CREATE_UNORDEREDACCESS_VIEW_INVALID_COUNTER_USAGE : D3D12_MESSAGE_ID = 652 ;
17343pub const D3D12_MESSAGE_ID_D3D12_MESSAGE_ID_COPY_DESCRIPTORS_INVALID_RANGES:
17344 D3D12_MESSAGE_ID = 653;
17345pub const D3D12_MESSAGE_ID_D3D12_MESSAGE_ID_COPY_DESCRIPTORS_WRITE_ONLY_DESCRIPTOR : D3D12_MESSAGE_ID = 654 ;
17346pub const D3D12_MESSAGE_ID_D3D12_MESSAGE_ID_CREATEGRAPHICSPIPELINESTATE_RTV_FORMAT_NOT_UNKNOWN : D3D12_MESSAGE_ID = 655 ;
17347pub const D3D12_MESSAGE_ID_D3D12_MESSAGE_ID_CREATEGRAPHICSPIPELINESTATE_INVALID_RENDER_TARGET_COUNT : D3D12_MESSAGE_ID = 656 ;
17348pub const D3D12_MESSAGE_ID_D3D12_MESSAGE_ID_CREATEGRAPHICSPIPELINESTATE_VERTEX_SHADER_NOT_SET : D3D12_MESSAGE_ID = 657 ;
17349pub const D3D12_MESSAGE_ID_D3D12_MESSAGE_ID_CREATEGRAPHICSPIPELINESTATE_INPUTLAYOUT_NOT_SET : D3D12_MESSAGE_ID = 658 ;
17350pub const D3D12_MESSAGE_ID_D3D12_MESSAGE_ID_CREATEGRAPHICSPIPELINESTATE_SHADER_LINKAGE_HS_DS_SIGNATURE_MISMATCH : D3D12_MESSAGE_ID = 659 ;
17351pub const D3D12_MESSAGE_ID_D3D12_MESSAGE_ID_CREATEGRAPHICSPIPELINESTATE_SHADER_LINKAGE_REGISTERINDEX : D3D12_MESSAGE_ID = 660 ;
17352pub const D3D12_MESSAGE_ID_D3D12_MESSAGE_ID_CREATEGRAPHICSPIPELINESTATE_SHADER_LINKAGE_COMPONENTTYPE : D3D12_MESSAGE_ID = 661 ;
17353pub const D3D12_MESSAGE_ID_D3D12_MESSAGE_ID_CREATEGRAPHICSPIPELINESTATE_SHADER_LINKAGE_REGISTERMASK : D3D12_MESSAGE_ID = 662 ;
17354pub const D3D12_MESSAGE_ID_D3D12_MESSAGE_ID_CREATEGRAPHICSPIPELINESTATE_SHADER_LINKAGE_SYSTEMVALUE : D3D12_MESSAGE_ID = 663 ;
17355pub const D3D12_MESSAGE_ID_D3D12_MESSAGE_ID_CREATEGRAPHICSPIPELINESTATE_SHADER_LINKAGE_NEVERWRITTEN_ALWAYSREADS : D3D12_MESSAGE_ID = 664 ;
17356pub const D3D12_MESSAGE_ID_D3D12_MESSAGE_ID_CREATEGRAPHICSPIPELINESTATE_SHADER_LINKAGE_MINPRECISION : D3D12_MESSAGE_ID = 665 ;
17357pub const D3D12_MESSAGE_ID_D3D12_MESSAGE_ID_CREATEGRAPHICSPIPELINESTATE_SHADER_LINKAGE_SEMANTICNAME_NOT_FOUND : D3D12_MESSAGE_ID = 666 ;
17358pub const D3D12_MESSAGE_ID_D3D12_MESSAGE_ID_CREATEGRAPHICSPIPELINESTATE_HS_XOR_DS_MISMATCH : D3D12_MESSAGE_ID = 667 ;
17359pub const D3D12_MESSAGE_ID_D3D12_MESSAGE_ID_CREATEGRAPHICSPIPELINESTATE_HULL_SHADER_INPUT_TOPOLOGY_MISMATCH : D3D12_MESSAGE_ID = 668 ;
17360pub const D3D12_MESSAGE_ID_D3D12_MESSAGE_ID_CREATEGRAPHICSPIPELINESTATE_HS_DS_CONTROL_POINT_COUNT_MISMATCH : D3D12_MESSAGE_ID = 669 ;
17361pub const D3D12_MESSAGE_ID_D3D12_MESSAGE_ID_CREATEGRAPHICSPIPELINESTATE_HS_DS_TESSELLATOR_DOMAIN_MISMATCH : D3D12_MESSAGE_ID = 670 ;
17362pub const D3D12_MESSAGE_ID_D3D12_MESSAGE_ID_CREATEGRAPHICSPIPELINESTATE_INVALID_USE_OF_CENTER_MULTISAMPLE_PATTERN : D3D12_MESSAGE_ID = 671 ;
17363pub const D3D12_MESSAGE_ID_D3D12_MESSAGE_ID_CREATEGRAPHICSPIPELINESTATE_INVALID_USE_OF_FORCED_SAMPLE_COUNT : D3D12_MESSAGE_ID = 672 ;
17364pub const D3D12_MESSAGE_ID_D3D12_MESSAGE_ID_CREATEGRAPHICSPIPELINESTATE_INVALID_PRIMITIVETOPOLOGY : D3D12_MESSAGE_ID = 673 ;
17365pub const D3D12_MESSAGE_ID_D3D12_MESSAGE_ID_CREATEGRAPHICSPIPELINESTATE_INVALID_SYSTEMVALUE : D3D12_MESSAGE_ID = 674 ;
17366pub const D3D12_MESSAGE_ID_D3D12_MESSAGE_ID_CREATEGRAPHICSPIPELINESTATE_OM_DUAL_SOURCE_BLENDING_CAN_ONLY_HAVE_RENDER_TARGET_0 : D3D12_MESSAGE_ID = 675 ;
17367pub const D3D12_MESSAGE_ID_D3D12_MESSAGE_ID_CREATEGRAPHICSPIPELINESTATE_OM_RENDER_TARGET_DOES_NOT_SUPPORT_BLENDING : D3D12_MESSAGE_ID = 676 ;
17368pub const D3D12_MESSAGE_ID_D3D12_MESSAGE_ID_CREATEGRAPHICSPIPELINESTATE_PS_OUTPUT_TYPE_MISMATCH : D3D12_MESSAGE_ID = 677 ;
17369pub const D3D12_MESSAGE_ID_D3D12_MESSAGE_ID_CREATEGRAPHICSPIPELINESTATE_OM_RENDER_TARGET_DOES_NOT_SUPPORT_LOGIC_OPS : D3D12_MESSAGE_ID = 678 ;
17370pub const D3D12_MESSAGE_ID_D3D12_MESSAGE_ID_CREATEGRAPHICSPIPELINESTATE_RENDERTARGETVIEW_NOT_SET : D3D12_MESSAGE_ID = 679 ;
17371pub const D3D12_MESSAGE_ID_D3D12_MESSAGE_ID_CREATEGRAPHICSPIPELINESTATE_DEPTHSTENCILVIEW_NOT_SET : D3D12_MESSAGE_ID = 680 ;
17372pub const D3D12_MESSAGE_ID_D3D12_MESSAGE_ID_CREATEGRAPHICSPIPELINESTATE_GS_INPUT_PRIMITIVE_MISMATCH : D3D12_MESSAGE_ID = 681 ;
17373pub const D3D12_MESSAGE_ID_D3D12_MESSAGE_ID_CREATEGRAPHICSPIPELINESTATE_POSITION_NOT_PRESENT : D3D12_MESSAGE_ID = 682 ;
17374pub const D3D12_MESSAGE_ID_D3D12_MESSAGE_ID_CREATEGRAPHICSPIPELINESTATE_MISSING_ROOT_SIGNATURE_FLAGS : D3D12_MESSAGE_ID = 683 ;
17375pub const D3D12_MESSAGE_ID_D3D12_MESSAGE_ID_CREATEGRAPHICSPIPELINESTATE_INVALID_INDEX_BUFFER_PROPERTIES : D3D12_MESSAGE_ID = 684 ;
17376pub const D3D12_MESSAGE_ID_D3D12_MESSAGE_ID_CREATEGRAPHICSPIPELINESTATE_INVALID_SAMPLE_DESC : D3D12_MESSAGE_ID = 685 ;
17377pub const D3D12_MESSAGE_ID_D3D12_MESSAGE_ID_CREATEGRAPHICSPIPELINESTATE_HS_ROOT_SIGNATURE_MISMATCH : D3D12_MESSAGE_ID = 686 ;
17378pub const D3D12_MESSAGE_ID_D3D12_MESSAGE_ID_CREATEGRAPHICSPIPELINESTATE_DS_ROOT_SIGNATURE_MISMATCH : D3D12_MESSAGE_ID = 687 ;
17379pub const D3D12_MESSAGE_ID_D3D12_MESSAGE_ID_CREATEGRAPHICSPIPELINESTATE_VS_ROOT_SIGNATURE_MISMATCH : D3D12_MESSAGE_ID = 688 ;
17380pub const D3D12_MESSAGE_ID_D3D12_MESSAGE_ID_CREATEGRAPHICSPIPELINESTATE_GS_ROOT_SIGNATURE_MISMATCH : D3D12_MESSAGE_ID = 689 ;
17381pub const D3D12_MESSAGE_ID_D3D12_MESSAGE_ID_CREATEGRAPHICSPIPELINESTATE_PS_ROOT_SIGNATURE_MISMATCH : D3D12_MESSAGE_ID = 690 ;
17382pub const D3D12_MESSAGE_ID_D3D12_MESSAGE_ID_CREATEGRAPHICSPIPELINESTATE_MISSING_ROOT_SIGNATURE : D3D12_MESSAGE_ID = 691 ;
17383pub const D3D12_MESSAGE_ID_D3D12_MESSAGE_ID_EXECUTE_BUNDLE_OPEN_BUNDLE:
17384 D3D12_MESSAGE_ID = 692;
17385pub const D3D12_MESSAGE_ID_D3D12_MESSAGE_ID_EXECUTE_BUNDLE_DESCRIPTOR_HEAP_MISMATCH : D3D12_MESSAGE_ID = 693 ;
17386pub const D3D12_MESSAGE_ID_D3D12_MESSAGE_ID_EXECUTE_BUNDLE_TYPE:
17387 D3D12_MESSAGE_ID = 694;
17388pub const D3D12_MESSAGE_ID_D3D12_MESSAGE_ID_DRAW_EMPTY_SCISSOR_RECTANGLE:
17389 D3D12_MESSAGE_ID = 695;
17390pub const D3D12_MESSAGE_ID_D3D12_MESSAGE_ID_CREATE_ROOT_SIGNATURE_BLOB_NOT_FOUND : D3D12_MESSAGE_ID = 696 ;
17391pub const D3D12_MESSAGE_ID_D3D12_MESSAGE_ID_CREATE_ROOT_SIGNATURE_DESERIALIZE_FAILED : D3D12_MESSAGE_ID = 697 ;
17392pub const D3D12_MESSAGE_ID_D3D12_MESSAGE_ID_CREATE_ROOT_SIGNATURE_INVALID_CONFIGURATION : D3D12_MESSAGE_ID = 698 ;
17393pub const D3D12_MESSAGE_ID_D3D12_MESSAGE_ID_CREATE_ROOT_SIGNATURE_NOT_SUPPORTED_ON_DEVICE : D3D12_MESSAGE_ID = 699 ;
17394pub const D3D12_MESSAGE_ID_D3D12_MESSAGE_ID_CREATERESOURCEANDHEAP_NULLRESOURCEPROPERTIES : D3D12_MESSAGE_ID = 700 ;
17395pub const D3D12_MESSAGE_ID_D3D12_MESSAGE_ID_CREATERESOURCEANDHEAP_NULLHEAP:
17396 D3D12_MESSAGE_ID = 701;
17397pub const D3D12_MESSAGE_ID_D3D12_MESSAGE_ID_GETRESOURCEALLOCATIONINFO_INVALIDRDESCS : D3D12_MESSAGE_ID = 702 ;
17398pub const D3D12_MESSAGE_ID_D3D12_MESSAGE_ID_MAKERESIDENT_NULLOBJECTARRAY:
17399 D3D12_MESSAGE_ID = 703;
17400pub const D3D12_MESSAGE_ID_D3D12_MESSAGE_ID_EVICT_NULLOBJECTARRAY:
17401 D3D12_MESSAGE_ID = 705;
17402pub const D3D12_MESSAGE_ID_D3D12_MESSAGE_ID_SET_DESCRIPTOR_TABLE_INVALID:
17403 D3D12_MESSAGE_ID = 708;
17404pub const D3D12_MESSAGE_ID_D3D12_MESSAGE_ID_SET_ROOT_CONSTANT_INVALID:
17405 D3D12_MESSAGE_ID = 709;
17406pub const D3D12_MESSAGE_ID_D3D12_MESSAGE_ID_SET_ROOT_CONSTANT_BUFFER_VIEW_INVALID : D3D12_MESSAGE_ID = 710 ;
17407pub const D3D12_MESSAGE_ID_D3D12_MESSAGE_ID_SET_ROOT_SHADER_RESOURCE_VIEW_INVALID : D3D12_MESSAGE_ID = 711 ;
17408pub const D3D12_MESSAGE_ID_D3D12_MESSAGE_ID_SET_ROOT_UNORDERED_ACCESS_VIEW_INVALID : D3D12_MESSAGE_ID = 712 ;
17409pub const D3D12_MESSAGE_ID_D3D12_MESSAGE_ID_SET_VERTEX_BUFFERS_INVALID_DESC:
17410 D3D12_MESSAGE_ID = 713;
17411pub const D3D12_MESSAGE_ID_D3D12_MESSAGE_ID_SET_INDEX_BUFFER_INVALID_DESC:
17412 D3D12_MESSAGE_ID = 715;
17413pub const D3D12_MESSAGE_ID_D3D12_MESSAGE_ID_SET_STREAM_OUTPUT_BUFFERS_INVALID_DESC : D3D12_MESSAGE_ID = 717 ;
17414pub const D3D12_MESSAGE_ID_D3D12_MESSAGE_ID_CREATERESOURCE_UNRECOGNIZEDDIMENSIONALITY : D3D12_MESSAGE_ID = 718 ;
17415pub const D3D12_MESSAGE_ID_D3D12_MESSAGE_ID_CREATERESOURCE_UNRECOGNIZEDLAYOUT : D3D12_MESSAGE_ID = 719 ;
17416pub const D3D12_MESSAGE_ID_D3D12_MESSAGE_ID_CREATERESOURCE_INVALIDDIMENSIONALITY : D3D12_MESSAGE_ID = 720 ;
17417pub const D3D12_MESSAGE_ID_D3D12_MESSAGE_ID_CREATERESOURCE_INVALIDALIGNMENT:
17418 D3D12_MESSAGE_ID = 721;
17419pub const D3D12_MESSAGE_ID_D3D12_MESSAGE_ID_CREATERESOURCE_INVALIDMIPLEVELS:
17420 D3D12_MESSAGE_ID = 722;
17421pub const D3D12_MESSAGE_ID_D3D12_MESSAGE_ID_CREATERESOURCE_INVALIDSAMPLEDESC:
17422 D3D12_MESSAGE_ID = 723;
17423pub const D3D12_MESSAGE_ID_D3D12_MESSAGE_ID_CREATERESOURCE_INVALIDLAYOUT:
17424 D3D12_MESSAGE_ID = 724;
17425pub const D3D12_MESSAGE_ID_D3D12_MESSAGE_ID_SET_INDEX_BUFFER_INVALID:
17426 D3D12_MESSAGE_ID = 725;
17427pub const D3D12_MESSAGE_ID_D3D12_MESSAGE_ID_SET_VERTEX_BUFFERS_INVALID:
17428 D3D12_MESSAGE_ID = 726;
17429pub const D3D12_MESSAGE_ID_D3D12_MESSAGE_ID_SET_STREAM_OUTPUT_BUFFERS_INVALID : D3D12_MESSAGE_ID = 727 ;
17430pub const D3D12_MESSAGE_ID_D3D12_MESSAGE_ID_SET_RENDER_TARGETS_INVALID:
17431 D3D12_MESSAGE_ID = 728;
17432pub const D3D12_MESSAGE_ID_D3D12_MESSAGE_ID_CREATEQUERY_HEAP_INVALID_PARAMETERS : D3D12_MESSAGE_ID = 729 ;
17433pub const D3D12_MESSAGE_ID_D3D12_MESSAGE_ID_BEGIN_END_QUERY_INVALID_PARAMETERS : D3D12_MESSAGE_ID = 731 ;
17434pub const D3D12_MESSAGE_ID_D3D12_MESSAGE_ID_CLOSE_COMMAND_LIST_OPEN_QUERY:
17435 D3D12_MESSAGE_ID = 732;
17436pub const D3D12_MESSAGE_ID_D3D12_MESSAGE_ID_RESOLVE_QUERY_DATA_INVALID_PARAMETERS : D3D12_MESSAGE_ID = 733 ;
17437pub const D3D12_MESSAGE_ID_D3D12_MESSAGE_ID_SET_PREDICATION_INVALID_PARAMETERS : D3D12_MESSAGE_ID = 734 ;
17438pub const D3D12_MESSAGE_ID_D3D12_MESSAGE_ID_TIMESTAMPS_NOT_SUPPORTED:
17439 D3D12_MESSAGE_ID = 735;
17440pub const D3D12_MESSAGE_ID_D3D12_MESSAGE_ID_CREATERESOURCE_UNRECOGNIZEDFORMAT : D3D12_MESSAGE_ID = 737 ;
17441pub const D3D12_MESSAGE_ID_D3D12_MESSAGE_ID_CREATERESOURCE_INVALIDFORMAT:
17442 D3D12_MESSAGE_ID = 738;
17443pub const D3D12_MESSAGE_ID_D3D12_MESSAGE_ID_GETCOPYABLEFOOTPRINTS_INVALIDSUBRESOURCERANGE : D3D12_MESSAGE_ID = 739 ;
17444pub const D3D12_MESSAGE_ID_D3D12_MESSAGE_ID_GETCOPYABLEFOOTPRINTS_INVALIDBASEOFFSET : D3D12_MESSAGE_ID = 740 ;
17445pub const D3D12_MESSAGE_ID_D3D12_MESSAGE_ID_GETCOPYABLELAYOUT_INVALIDSUBRESOURCERANGE : D3D12_MESSAGE_ID = 739 ;
17446pub const D3D12_MESSAGE_ID_D3D12_MESSAGE_ID_GETCOPYABLELAYOUT_INVALIDBASEOFFSET : D3D12_MESSAGE_ID = 740 ;
17447pub const D3D12_MESSAGE_ID_D3D12_MESSAGE_ID_RESOURCE_BARRIER_INVALID_HEAP:
17448 D3D12_MESSAGE_ID = 741;
17449pub const D3D12_MESSAGE_ID_D3D12_MESSAGE_ID_CREATE_SAMPLER_INVALID:
17450 D3D12_MESSAGE_ID = 742;
17451pub const D3D12_MESSAGE_ID_D3D12_MESSAGE_ID_CREATECOMMANDSIGNATURE_INVALID:
17452 D3D12_MESSAGE_ID = 743;
17453pub const D3D12_MESSAGE_ID_D3D12_MESSAGE_ID_EXECUTE_INDIRECT_INVALID_PARAMETERS : D3D12_MESSAGE_ID = 744 ;
17454pub const D3D12_MESSAGE_ID_D3D12_MESSAGE_ID_GETGPUVIRTUALADDRESS_INVALID_RESOURCE_DIMENSION : D3D12_MESSAGE_ID = 745 ;
17455pub const D3D12_MESSAGE_ID_D3D12_MESSAGE_ID_CREATERESOURCE_INVALIDCLEARVALUE:
17456 D3D12_MESSAGE_ID = 815;
17457pub const D3D12_MESSAGE_ID_D3D12_MESSAGE_ID_CREATERESOURCE_UNRECOGNIZEDCLEARVALUEFORMAT : D3D12_MESSAGE_ID = 816 ;
17458pub const D3D12_MESSAGE_ID_D3D12_MESSAGE_ID_CREATERESOURCE_INVALIDCLEARVALUEFORMAT : D3D12_MESSAGE_ID = 817 ;
17459pub const D3D12_MESSAGE_ID_D3D12_MESSAGE_ID_CREATERESOURCE_CLEARVALUEDENORMFLUSH : D3D12_MESSAGE_ID = 818 ;
17460pub const D3D12_MESSAGE_ID_D3D12_MESSAGE_ID_CLEARRENDERTARGETVIEW_MISMATCHINGCLEARVALUE : D3D12_MESSAGE_ID = 820 ;
17461pub const D3D12_MESSAGE_ID_D3D12_MESSAGE_ID_CLEARDEPTHSTENCILVIEW_MISMATCHINGCLEARVALUE : D3D12_MESSAGE_ID = 821 ;
17462pub const D3D12_MESSAGE_ID_D3D12_MESSAGE_ID_MAP_INVALIDHEAP: D3D12_MESSAGE_ID =
17463 822;
17464pub const D3D12_MESSAGE_ID_D3D12_MESSAGE_ID_UNMAP_INVALIDHEAP:
17465 D3D12_MESSAGE_ID = 823;
17466pub const D3D12_MESSAGE_ID_D3D12_MESSAGE_ID_MAP_INVALIDRESOURCE:
17467 D3D12_MESSAGE_ID = 824;
17468pub const D3D12_MESSAGE_ID_D3D12_MESSAGE_ID_UNMAP_INVALIDRESOURCE:
17469 D3D12_MESSAGE_ID = 825;
17470pub const D3D12_MESSAGE_ID_D3D12_MESSAGE_ID_MAP_INVALIDSUBRESOURCE:
17471 D3D12_MESSAGE_ID = 826;
17472pub const D3D12_MESSAGE_ID_D3D12_MESSAGE_ID_UNMAP_INVALIDSUBRESOURCE:
17473 D3D12_MESSAGE_ID = 827;
17474pub const D3D12_MESSAGE_ID_D3D12_MESSAGE_ID_MAP_INVALIDRANGE: D3D12_MESSAGE_ID =
17475 828;
17476pub const D3D12_MESSAGE_ID_D3D12_MESSAGE_ID_UNMAP_INVALIDRANGE:
17477 D3D12_MESSAGE_ID = 829;
17478pub const D3D12_MESSAGE_ID_D3D12_MESSAGE_ID_MAP_INVALIDDATAPOINTER:
17479 D3D12_MESSAGE_ID = 832;
17480pub const D3D12_MESSAGE_ID_D3D12_MESSAGE_ID_MAP_INVALIDARG_RETURN:
17481 D3D12_MESSAGE_ID = 833;
17482pub const D3D12_MESSAGE_ID_D3D12_MESSAGE_ID_MAP_OUTOFMEMORY_RETURN:
17483 D3D12_MESSAGE_ID = 834;
17484pub const D3D12_MESSAGE_ID_D3D12_MESSAGE_ID_EXECUTECOMMANDLISTS_BUNDLENOTSUPPORTED : D3D12_MESSAGE_ID = 835 ;
17485pub const D3D12_MESSAGE_ID_D3D12_MESSAGE_ID_EXECUTECOMMANDLISTS_COMMANDLISTMISMATCH : D3D12_MESSAGE_ID = 836 ;
17486pub const D3D12_MESSAGE_ID_D3D12_MESSAGE_ID_EXECUTECOMMANDLISTS_OPENCOMMANDLIST : D3D12_MESSAGE_ID = 837 ;
17487pub const D3D12_MESSAGE_ID_D3D12_MESSAGE_ID_EXECUTECOMMANDLISTS_FAILEDCOMMANDLIST : D3D12_MESSAGE_ID = 838 ;
17488pub const D3D12_MESSAGE_ID_D3D12_MESSAGE_ID_COPYBUFFERREGION_NULLDST:
17489 D3D12_MESSAGE_ID = 839;
17490pub const D3D12_MESSAGE_ID_D3D12_MESSAGE_ID_COPYBUFFERREGION_INVALIDDSTRESOURCEDIMENSION : D3D12_MESSAGE_ID = 840 ;
17491pub const D3D12_MESSAGE_ID_D3D12_MESSAGE_ID_COPYBUFFERREGION_DSTRANGEOUTOFBOUNDS : D3D12_MESSAGE_ID = 841 ;
17492pub const D3D12_MESSAGE_ID_D3D12_MESSAGE_ID_COPYBUFFERREGION_NULLSRC:
17493 D3D12_MESSAGE_ID = 842;
17494pub const D3D12_MESSAGE_ID_D3D12_MESSAGE_ID_COPYBUFFERREGION_INVALIDSRCRESOURCEDIMENSION : D3D12_MESSAGE_ID = 843 ;
17495pub const D3D12_MESSAGE_ID_D3D12_MESSAGE_ID_COPYBUFFERREGION_SRCRANGEOUTOFBOUNDS : D3D12_MESSAGE_ID = 844 ;
17496pub const D3D12_MESSAGE_ID_D3D12_MESSAGE_ID_COPYBUFFERREGION_INVALIDCOPYFLAGS : D3D12_MESSAGE_ID = 845 ;
17497pub const D3D12_MESSAGE_ID_D3D12_MESSAGE_ID_COPYTEXTUREREGION_NULLDST:
17498 D3D12_MESSAGE_ID = 846;
17499pub const D3D12_MESSAGE_ID_D3D12_MESSAGE_ID_COPYTEXTUREREGION_UNRECOGNIZEDDSTTYPE : D3D12_MESSAGE_ID = 847 ;
17500pub const D3D12_MESSAGE_ID_D3D12_MESSAGE_ID_COPYTEXTUREREGION_INVALIDDSTRESOURCEDIMENSION : D3D12_MESSAGE_ID = 848 ;
17501pub const D3D12_MESSAGE_ID_D3D12_MESSAGE_ID_COPYTEXTUREREGION_INVALIDDSTRESOURCE : D3D12_MESSAGE_ID = 849 ;
17502pub const D3D12_MESSAGE_ID_D3D12_MESSAGE_ID_COPYTEXTUREREGION_INVALIDDSTSUBRESOURCE : D3D12_MESSAGE_ID = 850 ;
17503pub const D3D12_MESSAGE_ID_D3D12_MESSAGE_ID_COPYTEXTUREREGION_INVALIDDSTOFFSET : D3D12_MESSAGE_ID = 851 ;
17504pub const D3D12_MESSAGE_ID_D3D12_MESSAGE_ID_COPYTEXTUREREGION_UNRECOGNIZEDDSTFORMAT : D3D12_MESSAGE_ID = 852 ;
17505pub const D3D12_MESSAGE_ID_D3D12_MESSAGE_ID_COPYTEXTUREREGION_INVALIDDSTFORMAT : D3D12_MESSAGE_ID = 853 ;
17506pub const D3D12_MESSAGE_ID_D3D12_MESSAGE_ID_COPYTEXTUREREGION_INVALIDDSTDIMENSIONS : D3D12_MESSAGE_ID = 854 ;
17507pub const D3D12_MESSAGE_ID_D3D12_MESSAGE_ID_COPYTEXTUREREGION_INVALIDDSTROWPITCH : D3D12_MESSAGE_ID = 855 ;
17508pub const D3D12_MESSAGE_ID_D3D12_MESSAGE_ID_COPYTEXTUREREGION_INVALIDDSTPLACEMENT : D3D12_MESSAGE_ID = 856 ;
17509pub const D3D12_MESSAGE_ID_D3D12_MESSAGE_ID_COPYTEXTUREREGION_INVALIDDSTDSPLACEDFOOTPRINTFORMAT : D3D12_MESSAGE_ID = 857 ;
17510pub const D3D12_MESSAGE_ID_D3D12_MESSAGE_ID_COPYTEXTUREREGION_DSTREGIONOUTOFBOUNDS : D3D12_MESSAGE_ID = 858 ;
17511pub const D3D12_MESSAGE_ID_D3D12_MESSAGE_ID_COPYTEXTUREREGION_NULLSRC:
17512 D3D12_MESSAGE_ID = 859;
17513pub const D3D12_MESSAGE_ID_D3D12_MESSAGE_ID_COPYTEXTUREREGION_UNRECOGNIZEDSRCTYPE : D3D12_MESSAGE_ID = 860 ;
17514pub const D3D12_MESSAGE_ID_D3D12_MESSAGE_ID_COPYTEXTUREREGION_INVALIDSRCRESOURCEDIMENSION : D3D12_MESSAGE_ID = 861 ;
17515pub const D3D12_MESSAGE_ID_D3D12_MESSAGE_ID_COPYTEXTUREREGION_INVALIDSRCRESOURCE : D3D12_MESSAGE_ID = 862 ;
17516pub const D3D12_MESSAGE_ID_D3D12_MESSAGE_ID_COPYTEXTUREREGION_INVALIDSRCSUBRESOURCE : D3D12_MESSAGE_ID = 863 ;
17517pub const D3D12_MESSAGE_ID_D3D12_MESSAGE_ID_COPYTEXTUREREGION_INVALIDSRCOFFSET : D3D12_MESSAGE_ID = 864 ;
17518pub const D3D12_MESSAGE_ID_D3D12_MESSAGE_ID_COPYTEXTUREREGION_UNRECOGNIZEDSRCFORMAT : D3D12_MESSAGE_ID = 865 ;
17519pub const D3D12_MESSAGE_ID_D3D12_MESSAGE_ID_COPYTEXTUREREGION_INVALIDSRCFORMAT : D3D12_MESSAGE_ID = 866 ;
17520pub const D3D12_MESSAGE_ID_D3D12_MESSAGE_ID_COPYTEXTUREREGION_INVALIDSRCDIMENSIONS : D3D12_MESSAGE_ID = 867 ;
17521pub const D3D12_MESSAGE_ID_D3D12_MESSAGE_ID_COPYTEXTUREREGION_INVALIDSRCROWPITCH : D3D12_MESSAGE_ID = 868 ;
17522pub const D3D12_MESSAGE_ID_D3D12_MESSAGE_ID_COPYTEXTUREREGION_INVALIDSRCPLACEMENT : D3D12_MESSAGE_ID = 869 ;
17523pub const D3D12_MESSAGE_ID_D3D12_MESSAGE_ID_COPYTEXTUREREGION_INVALIDSRCDSPLACEDFOOTPRINTFORMAT : D3D12_MESSAGE_ID = 870 ;
17524pub const D3D12_MESSAGE_ID_D3D12_MESSAGE_ID_COPYTEXTUREREGION_SRCREGIONOUTOFBOUNDS : D3D12_MESSAGE_ID = 871 ;
17525pub const D3D12_MESSAGE_ID_D3D12_MESSAGE_ID_COPYTEXTUREREGION_INVALIDDSTCOORDINATES : D3D12_MESSAGE_ID = 872 ;
17526pub const D3D12_MESSAGE_ID_D3D12_MESSAGE_ID_COPYTEXTUREREGION_INVALIDSRCBOX:
17527 D3D12_MESSAGE_ID = 873;
17528pub const D3D12_MESSAGE_ID_D3D12_MESSAGE_ID_COPYTEXTUREREGION_FORMATMISMATCH:
17529 D3D12_MESSAGE_ID = 874;
17530pub const D3D12_MESSAGE_ID_D3D12_MESSAGE_ID_COPYTEXTUREREGION_EMPTYBOX:
17531 D3D12_MESSAGE_ID = 875;
17532pub const D3D12_MESSAGE_ID_D3D12_MESSAGE_ID_COPYTEXTUREREGION_INVALIDCOPYFLAGS : D3D12_MESSAGE_ID = 876 ;
17533pub const D3D12_MESSAGE_ID_D3D12_MESSAGE_ID_RESOLVESUBRESOURCE_INVALID_SUBRESOURCE_INDEX : D3D12_MESSAGE_ID = 877 ;
17534pub const D3D12_MESSAGE_ID_D3D12_MESSAGE_ID_RESOLVESUBRESOURCE_INVALID_FORMAT : D3D12_MESSAGE_ID = 878 ;
17535pub const D3D12_MESSAGE_ID_D3D12_MESSAGE_ID_RESOLVESUBRESOURCE_RESOURCE_MISMATCH : D3D12_MESSAGE_ID = 879 ;
17536pub const D3D12_MESSAGE_ID_D3D12_MESSAGE_ID_RESOLVESUBRESOURCE_INVALID_SAMPLE_COUNT : D3D12_MESSAGE_ID = 880 ;
17537pub const D3D12_MESSAGE_ID_D3D12_MESSAGE_ID_CREATECOMPUTEPIPELINESTATE_INVALID_SHADER : D3D12_MESSAGE_ID = 881 ;
17538pub const D3D12_MESSAGE_ID_D3D12_MESSAGE_ID_CREATECOMPUTEPIPELINESTATE_CS_ROOT_SIGNATURE_MISMATCH : D3D12_MESSAGE_ID = 882 ;
17539pub const D3D12_MESSAGE_ID_D3D12_MESSAGE_ID_CREATECOMPUTEPIPELINESTATE_MISSING_ROOT_SIGNATURE : D3D12_MESSAGE_ID = 883 ;
17540pub const D3D12_MESSAGE_ID_D3D12_MESSAGE_ID_CREATEPIPELINESTATE_INVALIDCACHEDBLOB : D3D12_MESSAGE_ID = 884 ;
17541pub const D3D12_MESSAGE_ID_D3D12_MESSAGE_ID_CREATEPIPELINESTATE_CACHEDBLOBADAPTERMISMATCH : D3D12_MESSAGE_ID = 885 ;
17542pub const D3D12_MESSAGE_ID_D3D12_MESSAGE_ID_CREATEPIPELINESTATE_CACHEDBLOBDRIVERVERSIONMISMATCH : D3D12_MESSAGE_ID = 886 ;
17543pub const D3D12_MESSAGE_ID_D3D12_MESSAGE_ID_CREATEPIPELINESTATE_CACHEDBLOBDESCMISMATCH : D3D12_MESSAGE_ID = 887 ;
17544pub const D3D12_MESSAGE_ID_D3D12_MESSAGE_ID_CREATEPIPELINESTATE_CACHEDBLOBIGNORED : D3D12_MESSAGE_ID = 888 ;
17545pub const D3D12_MESSAGE_ID_D3D12_MESSAGE_ID_WRITETOSUBRESOURCE_INVALIDHEAP:
17546 D3D12_MESSAGE_ID = 889;
17547pub const D3D12_MESSAGE_ID_D3D12_MESSAGE_ID_WRITETOSUBRESOURCE_INVALIDRESOURCE : D3D12_MESSAGE_ID = 890 ;
17548pub const D3D12_MESSAGE_ID_D3D12_MESSAGE_ID_WRITETOSUBRESOURCE_INVALIDBOX:
17549 D3D12_MESSAGE_ID = 891;
17550pub const D3D12_MESSAGE_ID_D3D12_MESSAGE_ID_WRITETOSUBRESOURCE_INVALIDSUBRESOURCE : D3D12_MESSAGE_ID = 892 ;
17551pub const D3D12_MESSAGE_ID_D3D12_MESSAGE_ID_WRITETOSUBRESOURCE_EMPTYBOX:
17552 D3D12_MESSAGE_ID = 893;
17553pub const D3D12_MESSAGE_ID_D3D12_MESSAGE_ID_READFROMSUBRESOURCE_INVALIDHEAP:
17554 D3D12_MESSAGE_ID = 894;
17555pub const D3D12_MESSAGE_ID_D3D12_MESSAGE_ID_READFROMSUBRESOURCE_INVALIDRESOURCE : D3D12_MESSAGE_ID = 895 ;
17556pub const D3D12_MESSAGE_ID_D3D12_MESSAGE_ID_READFROMSUBRESOURCE_INVALIDBOX:
17557 D3D12_MESSAGE_ID = 896;
17558pub const D3D12_MESSAGE_ID_D3D12_MESSAGE_ID_READFROMSUBRESOURCE_INVALIDSUBRESOURCE : D3D12_MESSAGE_ID = 897 ;
17559pub const D3D12_MESSAGE_ID_D3D12_MESSAGE_ID_READFROMSUBRESOURCE_EMPTYBOX:
17560 D3D12_MESSAGE_ID = 898;
17561pub const D3D12_MESSAGE_ID_D3D12_MESSAGE_ID_TOO_MANY_NODES_SPECIFIED:
17562 D3D12_MESSAGE_ID = 899;
17563pub const D3D12_MESSAGE_ID_D3D12_MESSAGE_ID_INVALID_NODE_INDEX:
17564 D3D12_MESSAGE_ID = 900;
17565pub const D3D12_MESSAGE_ID_D3D12_MESSAGE_ID_GETHEAPPROPERTIES_INVALIDRESOURCE : D3D12_MESSAGE_ID = 901 ;
17566pub const D3D12_MESSAGE_ID_D3D12_MESSAGE_ID_NODE_MASK_MISMATCH:
17567 D3D12_MESSAGE_ID = 902;
17568pub const D3D12_MESSAGE_ID_D3D12_MESSAGE_ID_COMMAND_LIST_OUTOFMEMORY:
17569 D3D12_MESSAGE_ID = 903;
17570pub const D3D12_MESSAGE_ID_D3D12_MESSAGE_ID_COMMAND_LIST_MULTIPLE_SWAPCHAIN_BUFFER_REFERENCES : D3D12_MESSAGE_ID = 904 ;
17571pub const D3D12_MESSAGE_ID_D3D12_MESSAGE_ID_COMMAND_LIST_TOO_MANY_SWAPCHAIN_REFERENCES : D3D12_MESSAGE_ID = 905 ;
17572pub const D3D12_MESSAGE_ID_D3D12_MESSAGE_ID_COMMAND_QUEUE_TOO_MANY_SWAPCHAIN_REFERENCES : D3D12_MESSAGE_ID = 906 ;
17573pub const D3D12_MESSAGE_ID_D3D12_MESSAGE_ID_EXECUTECOMMANDLISTS_WRONGSWAPCHAINBUFFERREFERENCE : D3D12_MESSAGE_ID = 907 ;
17574pub const D3D12_MESSAGE_ID_D3D12_MESSAGE_ID_COMMAND_LIST_SETRENDERTARGETS_INVALIDNUMRENDERTARGETS : D3D12_MESSAGE_ID = 908 ;
17575pub const D3D12_MESSAGE_ID_D3D12_MESSAGE_ID_CREATE_QUEUE_INVALID_TYPE:
17576 D3D12_MESSAGE_ID = 909;
17577pub const D3D12_MESSAGE_ID_D3D12_MESSAGE_ID_CREATE_QUEUE_INVALID_FLAGS:
17578 D3D12_MESSAGE_ID = 910;
17579pub const D3D12_MESSAGE_ID_D3D12_MESSAGE_ID_CREATESHAREDRESOURCE_INVALIDFLAGS : D3D12_MESSAGE_ID = 911 ;
17580pub const D3D12_MESSAGE_ID_D3D12_MESSAGE_ID_CREATESHAREDRESOURCE_INVALIDFORMAT : D3D12_MESSAGE_ID = 912 ;
17581pub const D3D12_MESSAGE_ID_D3D12_MESSAGE_ID_CREATESHAREDHEAP_INVALIDFLAGS:
17582 D3D12_MESSAGE_ID = 913;
17583pub const D3D12_MESSAGE_ID_D3D12_MESSAGE_ID_REFLECTSHAREDPROPERTIES_UNRECOGNIZEDPROPERTIES : D3D12_MESSAGE_ID = 914 ;
17584pub const D3D12_MESSAGE_ID_D3D12_MESSAGE_ID_REFLECTSHAREDPROPERTIES_INVALIDSIZE : D3D12_MESSAGE_ID = 915 ;
17585pub const D3D12_MESSAGE_ID_D3D12_MESSAGE_ID_REFLECTSHAREDPROPERTIES_INVALIDOBJECT : D3D12_MESSAGE_ID = 916 ;
17586pub const D3D12_MESSAGE_ID_D3D12_MESSAGE_ID_KEYEDMUTEX_INVALIDOBJECT:
17587 D3D12_MESSAGE_ID = 917;
17588pub const D3D12_MESSAGE_ID_D3D12_MESSAGE_ID_KEYEDMUTEX_INVALIDKEY:
17589 D3D12_MESSAGE_ID = 918;
17590pub const D3D12_MESSAGE_ID_D3D12_MESSAGE_ID_KEYEDMUTEX_WRONGSTATE:
17591 D3D12_MESSAGE_ID = 919;
17592pub const D3D12_MESSAGE_ID_D3D12_MESSAGE_ID_CREATE_QUEUE_INVALID_PRIORITY:
17593 D3D12_MESSAGE_ID = 920;
17594pub const D3D12_MESSAGE_ID_D3D12_MESSAGE_ID_OBJECT_DELETED_WHILE_STILL_IN_USE : D3D12_MESSAGE_ID = 921 ;
17595pub const D3D12_MESSAGE_ID_D3D12_MESSAGE_ID_CREATEPIPELINESTATE_INVALID_FLAGS : D3D12_MESSAGE_ID = 922 ;
17596pub const D3D12_MESSAGE_ID_D3D12_MESSAGE_ID_HEAP_ADDRESS_RANGE_HAS_NO_RESOURCE : D3D12_MESSAGE_ID = 923 ;
17597pub const D3D12_MESSAGE_ID_D3D12_MESSAGE_ID_COMMAND_LIST_DRAW_RENDER_TARGET_DELETED : D3D12_MESSAGE_ID = 924 ;
17598pub const D3D12_MESSAGE_ID_D3D12_MESSAGE_ID_CREATEGRAPHICSPIPELINESTATE_ALL_RENDER_TARGETS_HAVE_UNKNOWN_FORMAT : D3D12_MESSAGE_ID = 925 ;
17599pub const D3D12_MESSAGE_ID_D3D12_MESSAGE_ID_HEAP_ADDRESS_RANGE_INTERSECTS_MULTIPLE_BUFFERS : D3D12_MESSAGE_ID = 926 ;
17600pub const D3D12_MESSAGE_ID_D3D12_MESSAGE_ID_EXECUTECOMMANDLISTS_GPU_WRITTEN_READBACK_RESOURCE_MAPPED : D3D12_MESSAGE_ID = 927 ;
17601pub const D3D12_MESSAGE_ID_D3D12_MESSAGE_ID_UNMAP_RANGE_NOT_EMPTY:
17602 D3D12_MESSAGE_ID = 929;
17603pub const D3D12_MESSAGE_ID_D3D12_MESSAGE_ID_MAP_INVALID_NULLRANGE:
17604 D3D12_MESSAGE_ID = 930;
17605pub const D3D12_MESSAGE_ID_D3D12_MESSAGE_ID_UNMAP_INVALID_NULLRANGE:
17606 D3D12_MESSAGE_ID = 931;
17607pub const D3D12_MESSAGE_ID_D3D12_MESSAGE_ID_NO_GRAPHICS_API_SUPPORT:
17608 D3D12_MESSAGE_ID = 932;
17609pub const D3D12_MESSAGE_ID_D3D12_MESSAGE_ID_NO_COMPUTE_API_SUPPORT:
17610 D3D12_MESSAGE_ID = 933;
17611pub const D3D12_MESSAGE_ID_D3D12_MESSAGE_ID_RESOLVESUBRESOURCE_RESOURCE_FLAGS_NOT_SUPPORTED : D3D12_MESSAGE_ID = 934 ;
17612pub const D3D12_MESSAGE_ID_D3D12_MESSAGE_ID_GPU_BASED_VALIDATION_ROOT_ARGUMENT_UNINITIALIZED : D3D12_MESSAGE_ID = 935 ;
17613pub const D3D12_MESSAGE_ID_D3D12_MESSAGE_ID_GPU_BASED_VALIDATION_DESCRIPTOR_HEAP_INDEX_OUT_OF_BOUNDS : D3D12_MESSAGE_ID = 936 ;
17614pub const D3D12_MESSAGE_ID_D3D12_MESSAGE_ID_GPU_BASED_VALIDATION_DESCRIPTOR_TABLE_REGISTER_INDEX_OUT_OF_BOUNDS : D3D12_MESSAGE_ID = 937 ;
17615pub const D3D12_MESSAGE_ID_D3D12_MESSAGE_ID_GPU_BASED_VALIDATION_DESCRIPTOR_UNINITIALIZED : D3D12_MESSAGE_ID = 938 ;
17616pub const D3D12_MESSAGE_ID_D3D12_MESSAGE_ID_GPU_BASED_VALIDATION_DESCRIPTOR_TYPE_MISMATCH : D3D12_MESSAGE_ID = 939 ;
17617pub const D3D12_MESSAGE_ID_D3D12_MESSAGE_ID_GPU_BASED_VALIDATION_SRV_RESOURCE_DIMENSION_MISMATCH : D3D12_MESSAGE_ID = 940 ;
17618pub const D3D12_MESSAGE_ID_D3D12_MESSAGE_ID_GPU_BASED_VALIDATION_UAV_RESOURCE_DIMENSION_MISMATCH : D3D12_MESSAGE_ID = 941 ;
17619pub const D3D12_MESSAGE_ID_D3D12_MESSAGE_ID_GPU_BASED_VALIDATION_INCOMPATIBLE_RESOURCE_STATE : D3D12_MESSAGE_ID = 942 ;
17620pub const D3D12_MESSAGE_ID_D3D12_MESSAGE_ID_COPYRESOURCE_NULLDST:
17621 D3D12_MESSAGE_ID = 943;
17622pub const D3D12_MESSAGE_ID_D3D12_MESSAGE_ID_COPYRESOURCE_INVALIDDSTRESOURCE:
17623 D3D12_MESSAGE_ID = 944;
17624pub const D3D12_MESSAGE_ID_D3D12_MESSAGE_ID_COPYRESOURCE_NULLSRC:
17625 D3D12_MESSAGE_ID = 945;
17626pub const D3D12_MESSAGE_ID_D3D12_MESSAGE_ID_COPYRESOURCE_INVALIDSRCRESOURCE:
17627 D3D12_MESSAGE_ID = 946;
17628pub const D3D12_MESSAGE_ID_D3D12_MESSAGE_ID_RESOLVESUBRESOURCE_NULLDST:
17629 D3D12_MESSAGE_ID = 947;
17630pub const D3D12_MESSAGE_ID_D3D12_MESSAGE_ID_RESOLVESUBRESOURCE_INVALIDDSTRESOURCE : D3D12_MESSAGE_ID = 948 ;
17631pub const D3D12_MESSAGE_ID_D3D12_MESSAGE_ID_RESOLVESUBRESOURCE_NULLSRC:
17632 D3D12_MESSAGE_ID = 949;
17633pub const D3D12_MESSAGE_ID_D3D12_MESSAGE_ID_RESOLVESUBRESOURCE_INVALIDSRCRESOURCE : D3D12_MESSAGE_ID = 950 ;
17634pub const D3D12_MESSAGE_ID_D3D12_MESSAGE_ID_PIPELINE_STATE_TYPE_MISMATCH:
17635 D3D12_MESSAGE_ID = 951;
17636pub const D3D12_MESSAGE_ID_D3D12_MESSAGE_ID_COMMAND_LIST_DISPATCH_ROOT_SIGNATURE_NOT_SET : D3D12_MESSAGE_ID = 952 ;
17637pub const D3D12_MESSAGE_ID_D3D12_MESSAGE_ID_COMMAND_LIST_DISPATCH_ROOT_SIGNATURE_MISMATCH : D3D12_MESSAGE_ID = 953 ;
17638pub const D3D12_MESSAGE_ID_D3D12_MESSAGE_ID_RESOURCE_BARRIER_ZERO_BARRIERS:
17639 D3D12_MESSAGE_ID = 954;
17640pub const D3D12_MESSAGE_ID_D3D12_MESSAGE_ID_BEGIN_END_EVENT_MISMATCH:
17641 D3D12_MESSAGE_ID = 955;
17642pub const D3D12_MESSAGE_ID_D3D12_MESSAGE_ID_RESOURCE_BARRIER_POSSIBLE_BEFORE_AFTER_MISMATCH : D3D12_MESSAGE_ID = 956 ;
17643pub const D3D12_MESSAGE_ID_D3D12_MESSAGE_ID_RESOURCE_BARRIER_MISMATCHING_BEGIN_END : D3D12_MESSAGE_ID = 957 ;
17644pub const D3D12_MESSAGE_ID_D3D12_MESSAGE_ID_GPU_BASED_VALIDATION_INVALID_RESOURCE : D3D12_MESSAGE_ID = 958 ;
17645pub const D3D12_MESSAGE_ID_D3D12_MESSAGE_ID_USE_OF_ZERO_REFCOUNT_OBJECT:
17646 D3D12_MESSAGE_ID = 959;
17647pub const D3D12_MESSAGE_ID_D3D12_MESSAGE_ID_OBJECT_EVICTED_WHILE_STILL_IN_USE : D3D12_MESSAGE_ID = 960 ;
17648pub const D3D12_MESSAGE_ID_D3D12_MESSAGE_ID_GPU_BASED_VALIDATION_ROOT_DESCRIPTOR_ACCESS_OUT_OF_BOUNDS : D3D12_MESSAGE_ID = 961 ;
17649pub const D3D12_MESSAGE_ID_D3D12_MESSAGE_ID_CREATEPIPELINELIBRARY_INVALIDLIBRARYBLOB : D3D12_MESSAGE_ID = 962 ;
17650pub const D3D12_MESSAGE_ID_D3D12_MESSAGE_ID_CREATEPIPELINELIBRARY_DRIVERVERSIONMISMATCH : D3D12_MESSAGE_ID = 963 ;
17651pub const D3D12_MESSAGE_ID_D3D12_MESSAGE_ID_CREATEPIPELINELIBRARY_ADAPTERVERSIONMISMATCH : D3D12_MESSAGE_ID = 964 ;
17652pub const D3D12_MESSAGE_ID_D3D12_MESSAGE_ID_CREATEPIPELINELIBRARY_UNSUPPORTED : D3D12_MESSAGE_ID = 965 ;
17653pub const D3D12_MESSAGE_ID_D3D12_MESSAGE_ID_CREATE_PIPELINELIBRARY:
17654 D3D12_MESSAGE_ID = 966;
17655pub const D3D12_MESSAGE_ID_D3D12_MESSAGE_ID_LIVE_PIPELINELIBRARY:
17656 D3D12_MESSAGE_ID = 967;
17657pub const D3D12_MESSAGE_ID_D3D12_MESSAGE_ID_DESTROY_PIPELINELIBRARY:
17658 D3D12_MESSAGE_ID = 968;
17659pub const D3D12_MESSAGE_ID_D3D12_MESSAGE_ID_STOREPIPELINE_NONAME:
17660 D3D12_MESSAGE_ID = 969;
17661pub const D3D12_MESSAGE_ID_D3D12_MESSAGE_ID_STOREPIPELINE_DUPLICATENAME:
17662 D3D12_MESSAGE_ID = 970;
17663pub const D3D12_MESSAGE_ID_D3D12_MESSAGE_ID_LOADPIPELINE_NAMENOTFOUND:
17664 D3D12_MESSAGE_ID = 971;
17665pub const D3D12_MESSAGE_ID_D3D12_MESSAGE_ID_LOADPIPELINE_INVALIDDESC:
17666 D3D12_MESSAGE_ID = 972;
17667pub const D3D12_MESSAGE_ID_D3D12_MESSAGE_ID_PIPELINELIBRARY_SERIALIZE_NOTENOUGHMEMORY : D3D12_MESSAGE_ID = 973 ;
17668pub const D3D12_MESSAGE_ID_D3D12_MESSAGE_ID_CREATEGRAPHICSPIPELINESTATE_PS_OUTPUT_RT_OUTPUT_MISMATCH : D3D12_MESSAGE_ID = 974 ;
17669pub const D3D12_MESSAGE_ID_D3D12_MESSAGE_ID_SETEVENTONMULTIPLEFENCECOMPLETION_INVALIDFLAGS : D3D12_MESSAGE_ID = 975 ;
17670pub const D3D12_MESSAGE_ID_D3D12_MESSAGE_ID_CREATE_QUEUE_VIDEO_NOT_SUPPORTED:
17671 D3D12_MESSAGE_ID = 976;
17672pub const D3D12_MESSAGE_ID_D3D12_MESSAGE_ID_CREATE_COMMAND_ALLOCATOR_VIDEO_NOT_SUPPORTED : D3D12_MESSAGE_ID = 977 ;
17673pub const D3D12_MESSAGE_ID_D3D12_MESSAGE_ID_CREATEQUERY_HEAP_VIDEO_DECODE_STATISTICS_NOT_SUPPORTED : D3D12_MESSAGE_ID = 978 ;
17674pub const D3D12_MESSAGE_ID_D3D12_MESSAGE_ID_CREATE_VIDEODECODECOMMANDLIST:
17675 D3D12_MESSAGE_ID = 979;
17676pub const D3D12_MESSAGE_ID_D3D12_MESSAGE_ID_CREATE_VIDEODECODER:
17677 D3D12_MESSAGE_ID = 980;
17678pub const D3D12_MESSAGE_ID_D3D12_MESSAGE_ID_CREATE_VIDEODECODESTREAM:
17679 D3D12_MESSAGE_ID = 981;
17680pub const D3D12_MESSAGE_ID_D3D12_MESSAGE_ID_LIVE_VIDEODECODECOMMANDLIST:
17681 D3D12_MESSAGE_ID = 982;
17682pub const D3D12_MESSAGE_ID_D3D12_MESSAGE_ID_LIVE_VIDEODECODER:
17683 D3D12_MESSAGE_ID = 983;
17684pub const D3D12_MESSAGE_ID_D3D12_MESSAGE_ID_LIVE_VIDEODECODESTREAM:
17685 D3D12_MESSAGE_ID = 984;
17686pub const D3D12_MESSAGE_ID_D3D12_MESSAGE_ID_DESTROY_VIDEODECODECOMMANDLIST:
17687 D3D12_MESSAGE_ID = 985;
17688pub const D3D12_MESSAGE_ID_D3D12_MESSAGE_ID_DESTROY_VIDEODECODER:
17689 D3D12_MESSAGE_ID = 986;
17690pub const D3D12_MESSAGE_ID_D3D12_MESSAGE_ID_DESTROY_VIDEODECODESTREAM:
17691 D3D12_MESSAGE_ID = 987;
17692pub const D3D12_MESSAGE_ID_D3D12_MESSAGE_ID_DECODE_FRAME_INVALID_PARAMETERS:
17693 D3D12_MESSAGE_ID = 988;
17694pub const D3D12_MESSAGE_ID_D3D12_MESSAGE_ID_DEPRECATED_API: D3D12_MESSAGE_ID =
17695 989;
17696pub const D3D12_MESSAGE_ID_D3D12_MESSAGE_ID_RESOURCE_BARRIER_MISMATCHING_COMMAND_LIST_TYPE : D3D12_MESSAGE_ID = 990 ;
17697pub const D3D12_MESSAGE_ID_D3D12_MESSAGE_ID_COMMAND_LIST_DESCRIPTOR_TABLE_NOT_SET : D3D12_MESSAGE_ID = 991 ;
17698pub const D3D12_MESSAGE_ID_D3D12_MESSAGE_ID_COMMAND_LIST_ROOT_CONSTANT_BUFFER_VIEW_NOT_SET : D3D12_MESSAGE_ID = 992 ;
17699pub const D3D12_MESSAGE_ID_D3D12_MESSAGE_ID_COMMAND_LIST_ROOT_SHADER_RESOURCE_VIEW_NOT_SET : D3D12_MESSAGE_ID = 993 ;
17700pub const D3D12_MESSAGE_ID_D3D12_MESSAGE_ID_COMMAND_LIST_ROOT_UNORDERED_ACCESS_VIEW_NOT_SET : D3D12_MESSAGE_ID = 994 ;
17701pub const D3D12_MESSAGE_ID_D3D12_MESSAGE_ID_DISCARD_INVALID_SUBRESOURCE_RANGE : D3D12_MESSAGE_ID = 995 ;
17702pub const D3D12_MESSAGE_ID_D3D12_MESSAGE_ID_DISCARD_ONE_SUBRESOURCE_FOR_MIPS_WITH_RECTS : D3D12_MESSAGE_ID = 996 ;
17703pub const D3D12_MESSAGE_ID_D3D12_MESSAGE_ID_DISCARD_NO_RECTS_FOR_NON_TEXTURE2D : D3D12_MESSAGE_ID = 997 ;
17704pub const D3D12_MESSAGE_ID_D3D12_MESSAGE_ID_COPY_ON_SAME_SUBRESOURCE:
17705 D3D12_MESSAGE_ID = 998;
17706pub const D3D12_MESSAGE_ID_D3D12_MESSAGE_ID_SETRESIDENCYPRIORITY_INVALID_PAGEABLE : D3D12_MESSAGE_ID = 999 ;
17707pub const D3D12_MESSAGE_ID_D3D12_MESSAGE_ID_GPU_BASED_VALIDATION_UNSUPPORTED:
17708 D3D12_MESSAGE_ID = 1000;
17709pub const D3D12_MESSAGE_ID_D3D12_MESSAGE_ID_STATIC_DESCRIPTOR_INVALID_DESCRIPTOR_CHANGE : D3D12_MESSAGE_ID = 1001 ;
17710pub const D3D12_MESSAGE_ID_D3D12_MESSAGE_ID_DATA_STATIC_DESCRIPTOR_INVALID_DATA_CHANGE : D3D12_MESSAGE_ID = 1002 ;
17711pub const D3D12_MESSAGE_ID_D3D12_MESSAGE_ID_DATA_STATIC_WHILE_SET_AT_EXECUTE_DESCRIPTOR_INVALID_DATA_CHANGE : D3D12_MESSAGE_ID = 1003 ;
17712pub const D3D12_MESSAGE_ID_D3D12_MESSAGE_ID_EXECUTE_BUNDLE_STATIC_DESCRIPTOR_DATA_STATIC_NOT_SET : D3D12_MESSAGE_ID = 1004 ;
17713pub const D3D12_MESSAGE_ID_D3D12_MESSAGE_ID_GPU_BASED_VALIDATION_RESOURCE_ACCESS_OUT_OF_BOUNDS : D3D12_MESSAGE_ID = 1005 ;
17714pub const D3D12_MESSAGE_ID_D3D12_MESSAGE_ID_GPU_BASED_VALIDATION_SAMPLER_MODE_MISMATCH : D3D12_MESSAGE_ID = 1006 ;
17715pub const D3D12_MESSAGE_ID_D3D12_MESSAGE_ID_CREATE_FENCE_INVALID_FLAGS:
17716 D3D12_MESSAGE_ID = 1007;
17717pub const D3D12_MESSAGE_ID_D3D12_MESSAGE_ID_RESOURCE_BARRIER_DUPLICATE_SUBRESOURCE_TRANSITIONS : D3D12_MESSAGE_ID = 1008 ;
17718pub const D3D12_MESSAGE_ID_D3D12_MESSAGE_ID_SETRESIDENCYPRIORITY_INVALID_PRIORITY : D3D12_MESSAGE_ID = 1009 ;
17719pub const D3D12_MESSAGE_ID_D3D12_MESSAGE_ID_CREATE_DESCRIPTOR_HEAP_LARGE_NUM_DESCRIPTORS : D3D12_MESSAGE_ID = 1013 ;
17720pub const D3D12_MESSAGE_ID_D3D12_MESSAGE_ID_BEGIN_EVENT: D3D12_MESSAGE_ID =
17721 1014;
17722pub const D3D12_MESSAGE_ID_D3D12_MESSAGE_ID_END_EVENT: D3D12_MESSAGE_ID = 1015;
17723pub const D3D12_MESSAGE_ID_D3D12_MESSAGE_ID_CREATEDEVICE_DEBUG_LAYER_STARTUP_OPTIONS : D3D12_MESSAGE_ID = 1016 ;
17724pub const D3D12_MESSAGE_ID_D3D12_MESSAGE_ID_CREATEDEPTHSTENCILSTATE_DEPTHBOUNDSTEST_UNSUPPORTED : D3D12_MESSAGE_ID = 1017 ;
17725pub const D3D12_MESSAGE_ID_D3D12_MESSAGE_ID_CREATEPIPELINESTATE_DUPLICATE_SUBOBJECT : D3D12_MESSAGE_ID = 1018 ;
17726pub const D3D12_MESSAGE_ID_D3D12_MESSAGE_ID_CREATEPIPELINESTATE_UNKNOWN_SUBOBJECT : D3D12_MESSAGE_ID = 1019 ;
17727pub const D3D12_MESSAGE_ID_D3D12_MESSAGE_ID_CREATEPIPELINESTATE_ZERO_SIZE_STREAM : D3D12_MESSAGE_ID = 1020 ;
17728pub const D3D12_MESSAGE_ID_D3D12_MESSAGE_ID_CREATEPIPELINESTATE_INVALID_STREAM : D3D12_MESSAGE_ID = 1021 ;
17729pub const D3D12_MESSAGE_ID_D3D12_MESSAGE_ID_CREATEPIPELINESTATE_CANNOT_DEDUCE_TYPE : D3D12_MESSAGE_ID = 1022 ;
17730pub const D3D12_MESSAGE_ID_D3D12_MESSAGE_ID_COMMAND_LIST_STATIC_DESCRIPTOR_RESOURCE_DIMENSION_MISMATCH : D3D12_MESSAGE_ID = 1023 ;
17731pub const D3D12_MESSAGE_ID_D3D12_MESSAGE_ID_CREATE_COMMAND_QUEUE_INSUFFICIENT_PRIVILEGE_FOR_GLOBAL_REALTIME : D3D12_MESSAGE_ID = 1024 ;
17732pub const D3D12_MESSAGE_ID_D3D12_MESSAGE_ID_CREATE_COMMAND_QUEUE_INSUFFICIENT_HARDWARE_SUPPORT_FOR_GLOBAL_REALTIME : D3D12_MESSAGE_ID = 1025 ;
17733pub const D3D12_MESSAGE_ID_D3D12_MESSAGE_ID_ATOMICCOPYBUFFER_INVALID_ARCHITECTURE : D3D12_MESSAGE_ID = 1026 ;
17734pub const D3D12_MESSAGE_ID_D3D12_MESSAGE_ID_ATOMICCOPYBUFFER_NULL_DST:
17735 D3D12_MESSAGE_ID = 1027;
17736pub const D3D12_MESSAGE_ID_D3D12_MESSAGE_ID_ATOMICCOPYBUFFER_INVALID_DST_RESOURCE_DIMENSION : D3D12_MESSAGE_ID = 1028 ;
17737pub const D3D12_MESSAGE_ID_D3D12_MESSAGE_ID_ATOMICCOPYBUFFER_DST_RANGE_OUT_OF_BOUNDS : D3D12_MESSAGE_ID = 1029 ;
17738pub const D3D12_MESSAGE_ID_D3D12_MESSAGE_ID_ATOMICCOPYBUFFER_NULL_SRC:
17739 D3D12_MESSAGE_ID = 1030;
17740pub const D3D12_MESSAGE_ID_D3D12_MESSAGE_ID_ATOMICCOPYBUFFER_INVALID_SRC_RESOURCE_DIMENSION : D3D12_MESSAGE_ID = 1031 ;
17741pub const D3D12_MESSAGE_ID_D3D12_MESSAGE_ID_ATOMICCOPYBUFFER_SRC_RANGE_OUT_OF_BOUNDS : D3D12_MESSAGE_ID = 1032 ;
17742pub const D3D12_MESSAGE_ID_D3D12_MESSAGE_ID_ATOMICCOPYBUFFER_INVALID_OFFSET_ALIGNMENT : D3D12_MESSAGE_ID = 1033 ;
17743pub const D3D12_MESSAGE_ID_D3D12_MESSAGE_ID_ATOMICCOPYBUFFER_NULL_DEPENDENT_RESOURCES : D3D12_MESSAGE_ID = 1034 ;
17744pub const D3D12_MESSAGE_ID_D3D12_MESSAGE_ID_ATOMICCOPYBUFFER_NULL_DEPENDENT_SUBRESOURCE_RANGES : D3D12_MESSAGE_ID = 1035 ;
17745pub const D3D12_MESSAGE_ID_D3D12_MESSAGE_ID_ATOMICCOPYBUFFER_INVALID_DEPENDENT_RESOURCE : D3D12_MESSAGE_ID = 1036 ;
17746pub const D3D12_MESSAGE_ID_D3D12_MESSAGE_ID_ATOMICCOPYBUFFER_INVALID_DEPENDENT_SUBRESOURCE_RANGE : D3D12_MESSAGE_ID = 1037 ;
17747pub const D3D12_MESSAGE_ID_D3D12_MESSAGE_ID_ATOMICCOPYBUFFER_DEPENDENT_SUBRESOURCE_OUT_OF_BOUNDS : D3D12_MESSAGE_ID = 1038 ;
17748pub const D3D12_MESSAGE_ID_D3D12_MESSAGE_ID_ATOMICCOPYBUFFER_DEPENDENT_RANGE_OUT_OF_BOUNDS : D3D12_MESSAGE_ID = 1039 ;
17749pub const D3D12_MESSAGE_ID_D3D12_MESSAGE_ID_ATOMICCOPYBUFFER_ZERO_DEPENDENCIES : D3D12_MESSAGE_ID = 1040 ;
17750pub const D3D12_MESSAGE_ID_D3D12_MESSAGE_ID_DEVICE_CREATE_SHARED_HANDLE_INVALIDARG : D3D12_MESSAGE_ID = 1041 ;
17751pub const D3D12_MESSAGE_ID_D3D12_MESSAGE_ID_DESCRIPTOR_HANDLE_WITH_INVALID_RESOURCE : D3D12_MESSAGE_ID = 1042 ;
17752pub const D3D12_MESSAGE_ID_D3D12_MESSAGE_ID_SETDEPTHBOUNDS_INVALIDARGS:
17753 D3D12_MESSAGE_ID = 1043;
17754pub const D3D12_MESSAGE_ID_D3D12_MESSAGE_ID_GPU_BASED_VALIDATION_RESOURCE_STATE_IMPRECISE : D3D12_MESSAGE_ID = 1044 ;
17755pub const D3D12_MESSAGE_ID_D3D12_MESSAGE_ID_COMMAND_LIST_PIPELINE_STATE_NOT_SET : D3D12_MESSAGE_ID = 1045 ;
17756pub const D3D12_MESSAGE_ID_D3D12_MESSAGE_ID_CREATEGRAPHICSPIPELINESTATE_SHADER_MODEL_MISMATCH : D3D12_MESSAGE_ID = 1046 ;
17757pub const D3D12_MESSAGE_ID_D3D12_MESSAGE_ID_OBJECT_ACCESSED_WHILE_STILL_IN_USE : D3D12_MESSAGE_ID = 1047 ;
17758pub const D3D12_MESSAGE_ID_D3D12_MESSAGE_ID_PROGRAMMABLE_MSAA_UNSUPPORTED:
17759 D3D12_MESSAGE_ID = 1048;
17760pub const D3D12_MESSAGE_ID_D3D12_MESSAGE_ID_SETSAMPLEPOSITIONS_INVALIDARGS:
17761 D3D12_MESSAGE_ID = 1049;
17762pub const D3D12_MESSAGE_ID_D3D12_MESSAGE_ID_RESOLVESUBRESOURCEREGION_INVALID_RECT : D3D12_MESSAGE_ID = 1050 ;
17763pub const D3D12_MESSAGE_ID_D3D12_MESSAGE_ID_CREATE_VIDEODECODECOMMANDQUEUE:
17764 D3D12_MESSAGE_ID = 1051;
17765pub const D3D12_MESSAGE_ID_D3D12_MESSAGE_ID_CREATE_VIDEOPROCESSCOMMANDLIST:
17766 D3D12_MESSAGE_ID = 1052;
17767pub const D3D12_MESSAGE_ID_D3D12_MESSAGE_ID_CREATE_VIDEOPROCESSCOMMANDQUEUE:
17768 D3D12_MESSAGE_ID = 1053;
17769pub const D3D12_MESSAGE_ID_D3D12_MESSAGE_ID_LIVE_VIDEODECODECOMMANDQUEUE:
17770 D3D12_MESSAGE_ID = 1054;
17771pub const D3D12_MESSAGE_ID_D3D12_MESSAGE_ID_LIVE_VIDEOPROCESSCOMMANDLIST:
17772 D3D12_MESSAGE_ID = 1055;
17773pub const D3D12_MESSAGE_ID_D3D12_MESSAGE_ID_LIVE_VIDEOPROCESSCOMMANDQUEUE:
17774 D3D12_MESSAGE_ID = 1056;
17775pub const D3D12_MESSAGE_ID_D3D12_MESSAGE_ID_DESTROY_VIDEODECODECOMMANDQUEUE:
17776 D3D12_MESSAGE_ID = 1057;
17777pub const D3D12_MESSAGE_ID_D3D12_MESSAGE_ID_DESTROY_VIDEOPROCESSCOMMANDLIST:
17778 D3D12_MESSAGE_ID = 1058;
17779pub const D3D12_MESSAGE_ID_D3D12_MESSAGE_ID_DESTROY_VIDEOPROCESSCOMMANDQUEUE:
17780 D3D12_MESSAGE_ID = 1059;
17781pub const D3D12_MESSAGE_ID_D3D12_MESSAGE_ID_CREATE_VIDEOPROCESSOR:
17782 D3D12_MESSAGE_ID = 1060;
17783pub const D3D12_MESSAGE_ID_D3D12_MESSAGE_ID_CREATE_VIDEOPROCESSSTREAM:
17784 D3D12_MESSAGE_ID = 1061;
17785pub const D3D12_MESSAGE_ID_D3D12_MESSAGE_ID_LIVE_VIDEOPROCESSOR:
17786 D3D12_MESSAGE_ID = 1062;
17787pub const D3D12_MESSAGE_ID_D3D12_MESSAGE_ID_LIVE_VIDEOPROCESSSTREAM:
17788 D3D12_MESSAGE_ID = 1063;
17789pub const D3D12_MESSAGE_ID_D3D12_MESSAGE_ID_DESTROY_VIDEOPROCESSOR:
17790 D3D12_MESSAGE_ID = 1064;
17791pub const D3D12_MESSAGE_ID_D3D12_MESSAGE_ID_DESTROY_VIDEOPROCESSSTREAM:
17792 D3D12_MESSAGE_ID = 1065;
17793pub const D3D12_MESSAGE_ID_D3D12_MESSAGE_ID_PROCESS_FRAME_INVALID_PARAMETERS:
17794 D3D12_MESSAGE_ID = 1066;
17795pub const D3D12_MESSAGE_ID_D3D12_MESSAGE_ID_COPY_INVALIDLAYOUT:
17796 D3D12_MESSAGE_ID = 1067;
17797pub const D3D12_MESSAGE_ID_D3D12_MESSAGE_ID_CREATE_CRYPTO_SESSION:
17798 D3D12_MESSAGE_ID = 1068;
17799pub const D3D12_MESSAGE_ID_D3D12_MESSAGE_ID_CREATE_CRYPTO_SESSION_POLICY:
17800 D3D12_MESSAGE_ID = 1069;
17801pub const D3D12_MESSAGE_ID_D3D12_MESSAGE_ID_CREATE_PROTECTED_RESOURCE_SESSION : D3D12_MESSAGE_ID = 1070 ;
17802pub const D3D12_MESSAGE_ID_D3D12_MESSAGE_ID_LIVE_CRYPTO_SESSION:
17803 D3D12_MESSAGE_ID = 1071;
17804pub const D3D12_MESSAGE_ID_D3D12_MESSAGE_ID_LIVE_CRYPTO_SESSION_POLICY:
17805 D3D12_MESSAGE_ID = 1072;
17806pub const D3D12_MESSAGE_ID_D3D12_MESSAGE_ID_LIVE_PROTECTED_RESOURCE_SESSION:
17807 D3D12_MESSAGE_ID = 1073;
17808pub const D3D12_MESSAGE_ID_D3D12_MESSAGE_ID_DESTROY_CRYPTO_SESSION:
17809 D3D12_MESSAGE_ID = 1074;
17810pub const D3D12_MESSAGE_ID_D3D12_MESSAGE_ID_DESTROY_CRYPTO_SESSION_POLICY:
17811 D3D12_MESSAGE_ID = 1075;
17812pub const D3D12_MESSAGE_ID_D3D12_MESSAGE_ID_DESTROY_PROTECTED_RESOURCE_SESSION : D3D12_MESSAGE_ID = 1076 ;
17813pub const D3D12_MESSAGE_ID_D3D12_MESSAGE_ID_PROTECTED_RESOURCE_SESSION_UNSUPPORTED : D3D12_MESSAGE_ID = 1077 ;
17814pub const D3D12_MESSAGE_ID_D3D12_MESSAGE_ID_FENCE_INVALIDOPERATION:
17815 D3D12_MESSAGE_ID = 1078;
17816pub const D3D12_MESSAGE_ID_D3D12_MESSAGE_ID_CREATEQUERY_HEAP_COPY_QUEUE_TIMESTAMPS_NOT_SUPPORTED : D3D12_MESSAGE_ID = 1079 ;
17817pub const D3D12_MESSAGE_ID_D3D12_MESSAGE_ID_SAMPLEPOSITIONS_MISMATCH_DEFERRED : D3D12_MESSAGE_ID = 1080 ;
17818pub const D3D12_MESSAGE_ID_D3D12_MESSAGE_ID_SAMPLEPOSITIONS_MISMATCH_RECORDTIME_ASSUMEDFROMFIRSTUSE : D3D12_MESSAGE_ID = 1081 ;
17819pub const D3D12_MESSAGE_ID_D3D12_MESSAGE_ID_SAMPLEPOSITIONS_MISMATCH_RECORDTIME_ASSUMEDFROMCLEAR : D3D12_MESSAGE_ID = 1082 ;
17820pub const D3D12_MESSAGE_ID_D3D12_MESSAGE_ID_CREATE_VIDEODECODERHEAP:
17821 D3D12_MESSAGE_ID = 1083;
17822pub const D3D12_MESSAGE_ID_D3D12_MESSAGE_ID_LIVE_VIDEODECODERHEAP:
17823 D3D12_MESSAGE_ID = 1084;
17824pub const D3D12_MESSAGE_ID_D3D12_MESSAGE_ID_DESTROY_VIDEODECODERHEAP:
17825 D3D12_MESSAGE_ID = 1085;
17826pub const D3D12_MESSAGE_ID_D3D12_MESSAGE_ID_OPENEXISTINGHEAP_INVALIDARG_RETURN : D3D12_MESSAGE_ID = 1086 ;
17827pub const D3D12_MESSAGE_ID_D3D12_MESSAGE_ID_OPENEXISTINGHEAP_OUTOFMEMORY_RETURN : D3D12_MESSAGE_ID = 1087 ;
17828pub const D3D12_MESSAGE_ID_D3D12_MESSAGE_ID_OPENEXISTINGHEAP_INVALIDADDRESS:
17829 D3D12_MESSAGE_ID = 1088;
17830pub const D3D12_MESSAGE_ID_D3D12_MESSAGE_ID_OPENEXISTINGHEAP_INVALIDHANDLE:
17831 D3D12_MESSAGE_ID = 1089;
17832pub const D3D12_MESSAGE_ID_D3D12_MESSAGE_ID_WRITEBUFFERIMMEDIATE_INVALID_DEST : D3D12_MESSAGE_ID = 1090 ;
17833pub const D3D12_MESSAGE_ID_D3D12_MESSAGE_ID_WRITEBUFFERIMMEDIATE_INVALID_MODE : D3D12_MESSAGE_ID = 1091 ;
17834pub const D3D12_MESSAGE_ID_D3D12_MESSAGE_ID_WRITEBUFFERIMMEDIATE_INVALID_ALIGNMENT : D3D12_MESSAGE_ID = 1092 ;
17835pub const D3D12_MESSAGE_ID_D3D12_MESSAGE_ID_WRITEBUFFERIMMEDIATE_NOT_SUPPORTED : D3D12_MESSAGE_ID = 1093 ;
17836pub const D3D12_MESSAGE_ID_D3D12_MESSAGE_ID_SETVIEWINSTANCEMASK_INVALIDARGS:
17837 D3D12_MESSAGE_ID = 1094;
17838pub const D3D12_MESSAGE_ID_D3D12_MESSAGE_ID_VIEW_INSTANCING_UNSUPPORTED:
17839 D3D12_MESSAGE_ID = 1095;
17840pub const D3D12_MESSAGE_ID_D3D12_MESSAGE_ID_VIEW_INSTANCING_INVALIDARGS:
17841 D3D12_MESSAGE_ID = 1096;
17842pub const D3D12_MESSAGE_ID_D3D12_MESSAGE_ID_COPYTEXTUREREGION_MISMATCH_DECODE_REFERENCE_ONLY_FLAG : D3D12_MESSAGE_ID = 1097 ;
17843pub const D3D12_MESSAGE_ID_D3D12_MESSAGE_ID_COPYRESOURCE_MISMATCH_DECODE_REFERENCE_ONLY_FLAG : D3D12_MESSAGE_ID = 1098 ;
17844pub const D3D12_MESSAGE_ID_D3D12_MESSAGE_ID_CREATE_VIDEO_DECODE_HEAP_CAPS_FAILURE : D3D12_MESSAGE_ID = 1099 ;
17845pub const D3D12_MESSAGE_ID_D3D12_MESSAGE_ID_CREATE_VIDEO_DECODE_HEAP_CAPS_UNSUPPORTED : D3D12_MESSAGE_ID = 1100 ;
17846pub const D3D12_MESSAGE_ID_D3D12_MESSAGE_ID_VIDEO_DECODE_SUPPORT_INVALID_INPUT : D3D12_MESSAGE_ID = 1101 ;
17847pub const D3D12_MESSAGE_ID_D3D12_MESSAGE_ID_CREATE_VIDEO_DECODER_UNSUPPORTED:
17848 D3D12_MESSAGE_ID = 1102;
17849pub const D3D12_MESSAGE_ID_D3D12_MESSAGE_ID_CREATEGRAPHICSPIPELINESTATE_METADATA_ERROR : D3D12_MESSAGE_ID = 1103 ;
17850pub const D3D12_MESSAGE_ID_D3D12_MESSAGE_ID_CREATEGRAPHICSPIPELINESTATE_VIEW_INSTANCING_VERTEX_SIZE_EXCEEDED : D3D12_MESSAGE_ID = 1104 ;
17851pub const D3D12_MESSAGE_ID_D3D12_MESSAGE_ID_CREATEGRAPHICSPIPELINESTATE_RUNTIME_INTERNAL_ERROR : D3D12_MESSAGE_ID = 1105 ;
17852pub const D3D12_MESSAGE_ID_D3D12_MESSAGE_ID_NO_VIDEO_API_SUPPORT:
17853 D3D12_MESSAGE_ID = 1106;
17854pub const D3D12_MESSAGE_ID_D3D12_MESSAGE_ID_VIDEO_PROCESS_SUPPORT_INVALID_INPUT : D3D12_MESSAGE_ID = 1107 ;
17855pub const D3D12_MESSAGE_ID_D3D12_MESSAGE_ID_CREATE_VIDEO_PROCESSOR_CAPS_FAILURE : D3D12_MESSAGE_ID = 1108 ;
17856pub const D3D12_MESSAGE_ID_D3D12_MESSAGE_ID_VIDEO_PROCESS_SUPPORT_UNSUPPORTED_FORMAT : D3D12_MESSAGE_ID = 1109 ;
17857pub const D3D12_MESSAGE_ID_D3D12_MESSAGE_ID_VIDEO_DECODE_FRAME_INVALID_ARGUMENT : D3D12_MESSAGE_ID = 1110 ;
17858pub const D3D12_MESSAGE_ID_D3D12_MESSAGE_ID_ENQUEUE_MAKE_RESIDENT_INVALID_FLAGS : D3D12_MESSAGE_ID = 1111 ;
17859pub const D3D12_MESSAGE_ID_D3D12_MESSAGE_ID_OPENEXISTINGHEAP_UNSUPPORTED:
17860 D3D12_MESSAGE_ID = 1112;
17861pub const D3D12_MESSAGE_ID_D3D12_MESSAGE_ID_VIDEO_PROCESS_FRAMES_INVALID_ARGUMENT : D3D12_MESSAGE_ID = 1113 ;
17862pub const D3D12_MESSAGE_ID_D3D12_MESSAGE_ID_VIDEO_DECODE_SUPPORT_UNSUPPORTED:
17863 D3D12_MESSAGE_ID = 1114;
17864pub const D3D12_MESSAGE_ID_D3D12_MESSAGE_ID_CREATE_COMMANDRECORDER:
17865 D3D12_MESSAGE_ID = 1115;
17866pub const D3D12_MESSAGE_ID_D3D12_MESSAGE_ID_LIVE_COMMANDRECORDER:
17867 D3D12_MESSAGE_ID = 1116;
17868pub const D3D12_MESSAGE_ID_D3D12_MESSAGE_ID_DESTROY_COMMANDRECORDER:
17869 D3D12_MESSAGE_ID = 1117;
17870pub const D3D12_MESSAGE_ID_D3D12_MESSAGE_ID_CREATE_COMMAND_RECORDER_VIDEO_NOT_SUPPORTED : D3D12_MESSAGE_ID = 1118 ;
17871pub const D3D12_MESSAGE_ID_D3D12_MESSAGE_ID_CREATE_COMMAND_RECORDER_INVALID_SUPPORT_FLAGS : D3D12_MESSAGE_ID = 1119 ;
17872pub const D3D12_MESSAGE_ID_D3D12_MESSAGE_ID_CREATE_COMMAND_RECORDER_INVALID_FLAGS : D3D12_MESSAGE_ID = 1120 ;
17873pub const D3D12_MESSAGE_ID_D3D12_MESSAGE_ID_CREATE_COMMAND_RECORDER_MORE_RECORDERS_THAN_LOGICAL_PROCESSORS : D3D12_MESSAGE_ID = 1121 ;
17874pub const D3D12_MESSAGE_ID_D3D12_MESSAGE_ID_CREATE_COMMANDPOOL:
17875 D3D12_MESSAGE_ID = 1122;
17876pub const D3D12_MESSAGE_ID_D3D12_MESSAGE_ID_LIVE_COMMANDPOOL: D3D12_MESSAGE_ID =
17877 1123;
17878pub const D3D12_MESSAGE_ID_D3D12_MESSAGE_ID_DESTROY_COMMANDPOOL:
17879 D3D12_MESSAGE_ID = 1124;
17880pub const D3D12_MESSAGE_ID_D3D12_MESSAGE_ID_CREATE_COMMAND_POOL_INVALID_FLAGS : D3D12_MESSAGE_ID = 1125 ;
17881pub const D3D12_MESSAGE_ID_D3D12_MESSAGE_ID_CREATE_COMMAND_LIST_VIDEO_NOT_SUPPORTED : D3D12_MESSAGE_ID = 1126 ;
17882pub const D3D12_MESSAGE_ID_D3D12_MESSAGE_ID_COMMAND_RECORDER_SUPPORT_FLAGS_MISMATCH : D3D12_MESSAGE_ID = 1127 ;
17883pub const D3D12_MESSAGE_ID_D3D12_MESSAGE_ID_COMMAND_RECORDER_CONTENTION:
17884 D3D12_MESSAGE_ID = 1128;
17885pub const D3D12_MESSAGE_ID_D3D12_MESSAGE_ID_COMMAND_RECORDER_USAGE_WITH_CREATECOMMANDLIST_COMMAND_LIST : D3D12_MESSAGE_ID = 1129 ;
17886pub const D3D12_MESSAGE_ID_D3D12_MESSAGE_ID_COMMAND_ALLOCATOR_USAGE_WITH_CREATECOMMANDLIST1_COMMAND_LIST : D3D12_MESSAGE_ID = 1130 ;
17887pub const D3D12_MESSAGE_ID_D3D12_MESSAGE_ID_CANNOT_EXECUTE_EMPTY_COMMAND_LIST : D3D12_MESSAGE_ID = 1131 ;
17888pub const D3D12_MESSAGE_ID_D3D12_MESSAGE_ID_CANNOT_RESET_COMMAND_POOL_WITH_OPEN_COMMAND_LISTS : D3D12_MESSAGE_ID = 1132 ;
17889pub const D3D12_MESSAGE_ID_D3D12_MESSAGE_ID_CANNOT_USE_COMMAND_RECORDER_WITHOUT_CURRENT_TARGET : D3D12_MESSAGE_ID = 1133 ;
17890pub const D3D12_MESSAGE_ID_D3D12_MESSAGE_ID_CANNOT_CHANGE_COMMAND_RECORDER_TARGET_WHILE_RECORDING : D3D12_MESSAGE_ID = 1134 ;
17891pub const D3D12_MESSAGE_ID_D3D12_MESSAGE_ID_COMMAND_POOL_SYNC:
17892 D3D12_MESSAGE_ID = 1135;
17893pub const D3D12_MESSAGE_ID_D3D12_MESSAGE_ID_EVICT_UNDERFLOW: D3D12_MESSAGE_ID =
17894 1136;
17895pub const D3D12_MESSAGE_ID_D3D12_MESSAGE_ID_CREATE_META_COMMAND:
17896 D3D12_MESSAGE_ID = 1137;
17897pub const D3D12_MESSAGE_ID_D3D12_MESSAGE_ID_LIVE_META_COMMAND:
17898 D3D12_MESSAGE_ID = 1138;
17899pub const D3D12_MESSAGE_ID_D3D12_MESSAGE_ID_DESTROY_META_COMMAND:
17900 D3D12_MESSAGE_ID = 1139;
17901pub const D3D12_MESSAGE_ID_D3D12_MESSAGE_ID_COPYBUFFERREGION_INVALID_DST_RESOURCE : D3D12_MESSAGE_ID = 1140 ;
17902pub const D3D12_MESSAGE_ID_D3D12_MESSAGE_ID_COPYBUFFERREGION_INVALID_SRC_RESOURCE : D3D12_MESSAGE_ID = 1141 ;
17903pub const D3D12_MESSAGE_ID_D3D12_MESSAGE_ID_ATOMICCOPYBUFFER_INVALID_DST_RESOURCE : D3D12_MESSAGE_ID = 1142 ;
17904pub const D3D12_MESSAGE_ID_D3D12_MESSAGE_ID_ATOMICCOPYBUFFER_INVALID_SRC_RESOURCE : D3D12_MESSAGE_ID = 1143 ;
17905pub const D3D12_MESSAGE_ID_D3D12_MESSAGE_ID_CREATEPLACEDRESOURCEONBUFFER_NULL_BUFFER : D3D12_MESSAGE_ID = 1144 ;
17906pub const D3D12_MESSAGE_ID_D3D12_MESSAGE_ID_CREATEPLACEDRESOURCEONBUFFER_NULL_RESOURCE_DESC : D3D12_MESSAGE_ID = 1145 ;
17907pub const D3D12_MESSAGE_ID_D3D12_MESSAGE_ID_CREATEPLACEDRESOURCEONBUFFER_UNSUPPORTED : D3D12_MESSAGE_ID = 1146 ;
17908pub const D3D12_MESSAGE_ID_D3D12_MESSAGE_ID_CREATEPLACEDRESOURCEONBUFFER_INVALID_BUFFER_DIMENSION : D3D12_MESSAGE_ID = 1147 ;
17909pub const D3D12_MESSAGE_ID_D3D12_MESSAGE_ID_CREATEPLACEDRESOURCEONBUFFER_INVALID_BUFFER_FLAGS : D3D12_MESSAGE_ID = 1148 ;
17910pub const D3D12_MESSAGE_ID_D3D12_MESSAGE_ID_CREATEPLACEDRESOURCEONBUFFER_INVALID_BUFFER_OFFSET : D3D12_MESSAGE_ID = 1149 ;
17911pub const D3D12_MESSAGE_ID_D3D12_MESSAGE_ID_CREATEPLACEDRESOURCEONBUFFER_INVALID_RESOURCE_DIMENSION : D3D12_MESSAGE_ID = 1150 ;
17912pub const D3D12_MESSAGE_ID_D3D12_MESSAGE_ID_CREATEPLACEDRESOURCEONBUFFER_INVALID_RESOURCE_FLAGS : D3D12_MESSAGE_ID = 1151 ;
17913pub const D3D12_MESSAGE_ID_D3D12_MESSAGE_ID_CREATEPLACEDRESOURCEONBUFFER_OUTOFMEMORY_RETURN : D3D12_MESSAGE_ID = 1152 ;
17914pub const D3D12_MESSAGE_ID_D3D12_MESSAGE_ID_CANNOT_CREATE_GRAPHICS_AND_VIDEO_COMMAND_RECORDER : D3D12_MESSAGE_ID = 1153 ;
17915pub const D3D12_MESSAGE_ID_D3D12_MESSAGE_ID_UPDATETILEMAPPINGS_POSSIBLY_MISMATCHING_PROPERTIES : D3D12_MESSAGE_ID = 1154 ;
17916pub const D3D12_MESSAGE_ID_D3D12_MESSAGE_ID_CREATE_COMMAND_LIST_INVALID_COMMAND_LIST_TYPE : D3D12_MESSAGE_ID = 1155 ;
17917pub const D3D12_MESSAGE_ID_D3D12_MESSAGE_ID_CLEARUNORDEREDACCESSVIEW_INCOMPATIBLE_WITH_STRUCTURED_BUFFERS : D3D12_MESSAGE_ID = 1156 ;
17918pub const D3D12_MESSAGE_ID_D3D12_MESSAGE_ID_COMPUTE_ONLY_DEVICE_OPERATION_UNSUPPORTED : D3D12_MESSAGE_ID = 1157 ;
17919pub const D3D12_MESSAGE_ID_D3D12_MESSAGE_ID_BUILD_RAYTRACING_ACCELERATION_STRUCTURE_INVALID : D3D12_MESSAGE_ID = 1158 ;
17920pub const D3D12_MESSAGE_ID_D3D12_MESSAGE_ID_EMIT_RAYTRACING_ACCELERATION_STRUCTURE_POSTBUILD_INFO_INVALID : D3D12_MESSAGE_ID = 1159 ;
17921pub const D3D12_MESSAGE_ID_D3D12_MESSAGE_ID_COPY_RAYTRACING_ACCELERATION_STRUCTURE_INVALID : D3D12_MESSAGE_ID = 1160 ;
17922pub const D3D12_MESSAGE_ID_D3D12_MESSAGE_ID_DISPATCH_RAYS_INVALID:
17923 D3D12_MESSAGE_ID = 1161;
17924pub const D3D12_MESSAGE_ID_D3D12_MESSAGE_ID_GET_RAYTRACING_ACCELERATION_STRUCTURE_PREBUILD_INFO_INVALID : D3D12_MESSAGE_ID = 1162 ;
17925pub const D3D12_MESSAGE_ID_D3D12_MESSAGE_ID_CREATE_LIFETIMETRACKER:
17926 D3D12_MESSAGE_ID = 1163;
17927pub const D3D12_MESSAGE_ID_D3D12_MESSAGE_ID_LIVE_LIFETIMETRACKER:
17928 D3D12_MESSAGE_ID = 1164;
17929pub const D3D12_MESSAGE_ID_D3D12_MESSAGE_ID_DESTROY_LIFETIMETRACKER:
17930 D3D12_MESSAGE_ID = 1165;
17931pub const D3D12_MESSAGE_ID_D3D12_MESSAGE_ID_DESTROYOWNEDOBJECT_OBJECTNOTOWNED : D3D12_MESSAGE_ID = 1166 ;
17932pub const D3D12_MESSAGE_ID_D3D12_MESSAGE_ID_CREATE_TRACKEDWORKLOAD:
17933 D3D12_MESSAGE_ID = 1167;
17934pub const D3D12_MESSAGE_ID_D3D12_MESSAGE_ID_LIVE_TRACKEDWORKLOAD:
17935 D3D12_MESSAGE_ID = 1168;
17936pub const D3D12_MESSAGE_ID_D3D12_MESSAGE_ID_DESTROY_TRACKEDWORKLOAD:
17937 D3D12_MESSAGE_ID = 1169;
17938pub const D3D12_MESSAGE_ID_D3D12_MESSAGE_ID_RENDER_PASS_ERROR:
17939 D3D12_MESSAGE_ID = 1170;
17940pub const D3D12_MESSAGE_ID_D3D12_MESSAGE_ID_META_COMMAND_ID_INVALID:
17941 D3D12_MESSAGE_ID = 1171;
17942pub const D3D12_MESSAGE_ID_D3D12_MESSAGE_ID_META_COMMAND_UNSUPPORTED_PARAMS:
17943 D3D12_MESSAGE_ID = 1172;
17944pub const D3D12_MESSAGE_ID_D3D12_MESSAGE_ID_META_COMMAND_FAILED_ENUMERATION:
17945 D3D12_MESSAGE_ID = 1173;
17946pub const D3D12_MESSAGE_ID_D3D12_MESSAGE_ID_META_COMMAND_PARAMETER_SIZE_MISMATCH : D3D12_MESSAGE_ID = 1174 ;
17947pub const D3D12_MESSAGE_ID_D3D12_MESSAGE_ID_UNINITIALIZED_META_COMMAND:
17948 D3D12_MESSAGE_ID = 1175;
17949pub const D3D12_MESSAGE_ID_D3D12_MESSAGE_ID_META_COMMAND_INVALID_GPU_VIRTUAL_ADDRESS : D3D12_MESSAGE_ID = 1176 ;
17950pub const D3D12_MESSAGE_ID_D3D12_MESSAGE_ID_CREATE_VIDEOENCODECOMMANDLIST:
17951 D3D12_MESSAGE_ID = 1177;
17952pub const D3D12_MESSAGE_ID_D3D12_MESSAGE_ID_LIVE_VIDEOENCODECOMMANDLIST:
17953 D3D12_MESSAGE_ID = 1178;
17954pub const D3D12_MESSAGE_ID_D3D12_MESSAGE_ID_DESTROY_VIDEOENCODECOMMANDLIST:
17955 D3D12_MESSAGE_ID = 1179;
17956pub const D3D12_MESSAGE_ID_D3D12_MESSAGE_ID_CREATE_VIDEOENCODECOMMANDQUEUE:
17957 D3D12_MESSAGE_ID = 1180;
17958pub const D3D12_MESSAGE_ID_D3D12_MESSAGE_ID_LIVE_VIDEOENCODECOMMANDQUEUE:
17959 D3D12_MESSAGE_ID = 1181;
17960pub const D3D12_MESSAGE_ID_D3D12_MESSAGE_ID_DESTROY_VIDEOENCODECOMMANDQUEUE:
17961 D3D12_MESSAGE_ID = 1182;
17962pub const D3D12_MESSAGE_ID_D3D12_MESSAGE_ID_CREATE_VIDEOMOTIONESTIMATOR:
17963 D3D12_MESSAGE_ID = 1183;
17964pub const D3D12_MESSAGE_ID_D3D12_MESSAGE_ID_LIVE_VIDEOMOTIONESTIMATOR:
17965 D3D12_MESSAGE_ID = 1184;
17966pub const D3D12_MESSAGE_ID_D3D12_MESSAGE_ID_DESTROY_VIDEOMOTIONESTIMATOR:
17967 D3D12_MESSAGE_ID = 1185;
17968pub const D3D12_MESSAGE_ID_D3D12_MESSAGE_ID_CREATE_VIDEOMOTIONVECTORHEAP:
17969 D3D12_MESSAGE_ID = 1186;
17970pub const D3D12_MESSAGE_ID_D3D12_MESSAGE_ID_LIVE_VIDEOMOTIONVECTORHEAP:
17971 D3D12_MESSAGE_ID = 1187;
17972pub const D3D12_MESSAGE_ID_D3D12_MESSAGE_ID_DESTROY_VIDEOMOTIONVECTORHEAP:
17973 D3D12_MESSAGE_ID = 1188;
17974pub const D3D12_MESSAGE_ID_D3D12_MESSAGE_ID_MULTIPLE_TRACKED_WORKLOADS:
17975 D3D12_MESSAGE_ID = 1189;
17976pub const D3D12_MESSAGE_ID_D3D12_MESSAGE_ID_MULTIPLE_TRACKED_WORKLOAD_PAIRS:
17977 D3D12_MESSAGE_ID = 1190;
17978pub const D3D12_MESSAGE_ID_D3D12_MESSAGE_ID_OUT_OF_ORDER_TRACKED_WORKLOAD_PAIR : D3D12_MESSAGE_ID = 1191 ;
17979pub const D3D12_MESSAGE_ID_D3D12_MESSAGE_ID_CANNOT_ADD_TRACKED_WORKLOAD:
17980 D3D12_MESSAGE_ID = 1192;
17981pub const D3D12_MESSAGE_ID_D3D12_MESSAGE_ID_INCOMPLETE_TRACKED_WORKLOAD_PAIR:
17982 D3D12_MESSAGE_ID = 1193;
17983pub const D3D12_MESSAGE_ID_D3D12_MESSAGE_ID_CREATE_STATE_OBJECT_ERROR:
17984 D3D12_MESSAGE_ID = 1194;
17985pub const D3D12_MESSAGE_ID_D3D12_MESSAGE_ID_GET_SHADER_IDENTIFIER_ERROR:
17986 D3D12_MESSAGE_ID = 1195;
17987pub const D3D12_MESSAGE_ID_D3D12_MESSAGE_ID_GET_SHADER_STACK_SIZE_ERROR:
17988 D3D12_MESSAGE_ID = 1196;
17989pub const D3D12_MESSAGE_ID_D3D12_MESSAGE_ID_GET_PIPELINE_STACK_SIZE_ERROR:
17990 D3D12_MESSAGE_ID = 1197;
17991pub const D3D12_MESSAGE_ID_D3D12_MESSAGE_ID_SET_PIPELINE_STACK_SIZE_ERROR:
17992 D3D12_MESSAGE_ID = 1198;
17993pub const D3D12_MESSAGE_ID_D3D12_MESSAGE_ID_GET_SHADER_IDENTIFIER_SIZE_INVALID : D3D12_MESSAGE_ID = 1199 ;
17994pub const D3D12_MESSAGE_ID_D3D12_MESSAGE_ID_CHECK_DRIVER_MATCHING_IDENTIFIER_INVALID : D3D12_MESSAGE_ID = 1200 ;
17995pub const D3D12_MESSAGE_ID_D3D12_MESSAGE_ID_CHECK_DRIVER_MATCHING_IDENTIFIER_DRIVER_REPORTED_ISSUE : D3D12_MESSAGE_ID = 1201 ;
17996pub const D3D12_MESSAGE_ID_D3D12_MESSAGE_ID_RENDER_PASS_INVALID_RESOURCE_BARRIER : D3D12_MESSAGE_ID = 1202 ;
17997pub const D3D12_MESSAGE_ID_D3D12_MESSAGE_ID_RENDER_PASS_DISALLOWED_API_CALLED : D3D12_MESSAGE_ID = 1203 ;
17998pub const D3D12_MESSAGE_ID_D3D12_MESSAGE_ID_RENDER_PASS_CANNOT_NEST_RENDER_PASSES : D3D12_MESSAGE_ID = 1204 ;
17999pub const D3D12_MESSAGE_ID_D3D12_MESSAGE_ID_RENDER_PASS_CANNOT_END_WITHOUT_BEGIN : D3D12_MESSAGE_ID = 1205 ;
18000pub const D3D12_MESSAGE_ID_D3D12_MESSAGE_ID_RENDER_PASS_CANNOT_CLOSE_COMMAND_LIST : D3D12_MESSAGE_ID = 1206 ;
18001pub const D3D12_MESSAGE_ID_D3D12_MESSAGE_ID_RENDER_PASS_GPU_WORK_WHILE_SUSPENDED : D3D12_MESSAGE_ID = 1207 ;
18002pub const D3D12_MESSAGE_ID_D3D12_MESSAGE_ID_RENDER_PASS_MISMATCHING_SUSPEND_RESUME : D3D12_MESSAGE_ID = 1208 ;
18003pub const D3D12_MESSAGE_ID_D3D12_MESSAGE_ID_RENDER_PASS_NO_PRIOR_SUSPEND_WITHIN_EXECUTECOMMANDLISTS : D3D12_MESSAGE_ID = 1209 ;
18004pub const D3D12_MESSAGE_ID_D3D12_MESSAGE_ID_RENDER_PASS_NO_SUBSEQUENT_RESUME_WITHIN_EXECUTECOMMANDLISTS : D3D12_MESSAGE_ID = 1210 ;
18005pub const D3D12_MESSAGE_ID_D3D12_MESSAGE_ID_TRACKED_WORKLOAD_COMMAND_QUEUE_MISMATCH : D3D12_MESSAGE_ID = 1211 ;
18006pub const D3D12_MESSAGE_ID_D3D12_MESSAGE_ID_TRACKED_WORKLOAD_NOT_SUPPORTED:
18007 D3D12_MESSAGE_ID = 1212;
18008pub const D3D12_MESSAGE_ID_D3D12_MESSAGE_ID_RENDER_PASS_MISMATCHING_NO_ACCESS : D3D12_MESSAGE_ID = 1213 ;
18009pub const D3D12_MESSAGE_ID_D3D12_MESSAGE_ID_RENDER_PASS_UNSUPPORTED_RESOLVE:
18010 D3D12_MESSAGE_ID = 1214;
18011pub const D3D12_MESSAGE_ID_D3D12_MESSAGE_ID_CLEARUNORDEREDACCESSVIEW_INVALID_RESOURCE_PTR : D3D12_MESSAGE_ID = 1215 ;
18012pub const D3D12_MESSAGE_ID_D3D12_MESSAGE_ID_WINDOWS7_FENCE_OUTOFORDER_SIGNAL:
18013 D3D12_MESSAGE_ID = 1216;
18014pub const D3D12_MESSAGE_ID_D3D12_MESSAGE_ID_WINDOWS7_FENCE_OUTOFORDER_WAIT:
18015 D3D12_MESSAGE_ID = 1217;
18016pub const D3D12_MESSAGE_ID_D3D12_MESSAGE_ID_VIDEO_CREATE_MOTION_ESTIMATOR_INVALID_ARGUMENT : D3D12_MESSAGE_ID = 1218 ;
18017pub const D3D12_MESSAGE_ID_D3D12_MESSAGE_ID_VIDEO_CREATE_MOTION_VECTOR_HEAP_INVALID_ARGUMENT : D3D12_MESSAGE_ID = 1219 ;
18018pub const D3D12_MESSAGE_ID_D3D12_MESSAGE_ID_ESTIMATE_MOTION_INVALID_ARGUMENT:
18019 D3D12_MESSAGE_ID = 1220;
18020pub const D3D12_MESSAGE_ID_D3D12_MESSAGE_ID_RESOLVE_MOTION_VECTOR_HEAP_INVALID_ARGUMENT : D3D12_MESSAGE_ID = 1221 ;
18021pub const D3D12_MESSAGE_ID_D3D12_MESSAGE_ID_GETGPUVIRTUALADDRESS_INVALID_HEAP_TYPE : D3D12_MESSAGE_ID = 1222 ;
18022pub const D3D12_MESSAGE_ID_D3D12_MESSAGE_ID_SET_BACKGROUND_PROCESSING_MODE_INVALID_ARGUMENT : D3D12_MESSAGE_ID = 1223 ;
18023pub const D3D12_MESSAGE_ID_D3D12_MESSAGE_ID_CREATE_COMMAND_LIST_INVALID_COMMAND_LIST_TYPE_FOR_FEATURE_LEVEL : D3D12_MESSAGE_ID = 1224 ;
18024pub const D3D12_MESSAGE_ID_D3D12_MESSAGE_ID_CREATE_VIDEOEXTENSIONCOMMAND:
18025 D3D12_MESSAGE_ID = 1225;
18026pub const D3D12_MESSAGE_ID_D3D12_MESSAGE_ID_LIVE_VIDEOEXTENSIONCOMMAND:
18027 D3D12_MESSAGE_ID = 1226;
18028pub const D3D12_MESSAGE_ID_D3D12_MESSAGE_ID_DESTROY_VIDEOEXTENSIONCOMMAND:
18029 D3D12_MESSAGE_ID = 1227;
18030pub const D3D12_MESSAGE_ID_D3D12_MESSAGE_ID_INVALID_VIDEO_EXTENSION_COMMAND_ID : D3D12_MESSAGE_ID = 1228 ;
18031pub const D3D12_MESSAGE_ID_D3D12_MESSAGE_ID_VIDEO_EXTENSION_COMMAND_INVALID_ARGUMENT : D3D12_MESSAGE_ID = 1229 ;
18032pub const D3D12_MESSAGE_ID_D3D12_MESSAGE_ID_CREATE_ROOT_SIGNATURE_NOT_UNIQUE_IN_DXIL_LIBRARY : D3D12_MESSAGE_ID = 1230 ;
18033pub const D3D12_MESSAGE_ID_D3D12_MESSAGE_ID_VARIABLE_SHADING_RATE_NOT_ALLOWED_WITH_TIR : D3D12_MESSAGE_ID = 1231 ;
18034pub const D3D12_MESSAGE_ID_D3D12_MESSAGE_ID_GEOMETRY_SHADER_OUTPUTTING_BOTH_VIEWPORT_ARRAY_INDEX_AND_SHADING_RATE_NOT_SUPPORTED_ON_DEVICE : D3D12_MESSAGE_ID = 1232 ;
18035pub const D3D12_MESSAGE_ID_D3D12_MESSAGE_ID_RSSETSHADING_RATE_INVALID_SHADING_RATE : D3D12_MESSAGE_ID = 1233 ;
18036pub const D3D12_MESSAGE_ID_D3D12_MESSAGE_ID_RSSETSHADING_RATE_SHADING_RATE_NOT_PERMITTED_BY_CAP : D3D12_MESSAGE_ID = 1234 ;
18037pub const D3D12_MESSAGE_ID_D3D12_MESSAGE_ID_RSSETSHADING_RATE_INVALID_COMBINER : D3D12_MESSAGE_ID = 1235 ;
18038pub const D3D12_MESSAGE_ID_D3D12_MESSAGE_ID_RSSETSHADINGRATEIMAGE_REQUIRES_TIER_2 : D3D12_MESSAGE_ID = 1236 ;
18039pub const D3D12_MESSAGE_ID_D3D12_MESSAGE_ID_RSSETSHADINGRATE_REQUIRES_TIER_1:
18040 D3D12_MESSAGE_ID = 1237;
18041pub const D3D12_MESSAGE_ID_D3D12_MESSAGE_ID_SHADING_RATE_IMAGE_INCORRECT_FORMAT : D3D12_MESSAGE_ID = 1238 ;
18042pub const D3D12_MESSAGE_ID_D3D12_MESSAGE_ID_SHADING_RATE_IMAGE_INCORRECT_ARRAY_SIZE : D3D12_MESSAGE_ID = 1239 ;
18043pub const D3D12_MESSAGE_ID_D3D12_MESSAGE_ID_SHADING_RATE_IMAGE_INCORRECT_MIP_LEVEL : D3D12_MESSAGE_ID = 1240 ;
18044pub const D3D12_MESSAGE_ID_D3D12_MESSAGE_ID_SHADING_RATE_IMAGE_INCORRECT_SAMPLE_COUNT : D3D12_MESSAGE_ID = 1241 ;
18045pub const D3D12_MESSAGE_ID_D3D12_MESSAGE_ID_SHADING_RATE_IMAGE_INCORRECT_SAMPLE_QUALITY : D3D12_MESSAGE_ID = 1242 ;
18046pub const D3D12_MESSAGE_ID_D3D12_MESSAGE_ID_NON_RETAIL_SHADER_MODEL_WONT_VALIDATE : D3D12_MESSAGE_ID = 1243 ;
18047pub const D3D12_MESSAGE_ID_D3D12_MESSAGE_ID_CREATEGRAPHICSPIPELINESTATE_AS_ROOT_SIGNATURE_MISMATCH : D3D12_MESSAGE_ID = 1244 ;
18048pub const D3D12_MESSAGE_ID_D3D12_MESSAGE_ID_CREATEGRAPHICSPIPELINESTATE_MS_ROOT_SIGNATURE_MISMATCH : D3D12_MESSAGE_ID = 1245 ;
18049pub const D3D12_MESSAGE_ID_D3D12_MESSAGE_ID_ADD_TO_STATE_OBJECT_ERROR:
18050 D3D12_MESSAGE_ID = 1246;
18051pub const D3D12_MESSAGE_ID_D3D12_MESSAGE_ID_CREATE_PROTECTED_RESOURCE_SESSION_INVALID_ARGUMENT : D3D12_MESSAGE_ID = 1247 ;
18052pub const D3D12_MESSAGE_ID_D3D12_MESSAGE_ID_CREATEGRAPHICSPIPELINESTATE_MS_PSO_DESC_MISMATCH : D3D12_MESSAGE_ID = 1248 ;
18053pub const D3D12_MESSAGE_ID_D3D12_MESSAGE_ID_CREATEPIPELINESTATE_MS_INCOMPLETE_TYPE : D3D12_MESSAGE_ID = 1249 ;
18054pub const D3D12_MESSAGE_ID_D3D12_MESSAGE_ID_CREATEGRAPHICSPIPELINESTATE_AS_NOT_MS_MISMATCH : D3D12_MESSAGE_ID = 1250 ;
18055pub const D3D12_MESSAGE_ID_D3D12_MESSAGE_ID_CREATEGRAPHICSPIPELINESTATE_MS_NOT_PS_MISMATCH : D3D12_MESSAGE_ID = 1251 ;
18056pub const D3D12_MESSAGE_ID_D3D12_MESSAGE_ID_NONZERO_SAMPLER_FEEDBACK_MIP_REGION_WITH_INCOMPATIBLE_FORMAT : D3D12_MESSAGE_ID = 1252 ;
18057pub const D3D12_MESSAGE_ID_D3D12_MESSAGE_ID_CREATEGRAPHICSPIPELINESTATE_INPUTLAYOUT_SHADER_MISMATCH : D3D12_MESSAGE_ID = 1253 ;
18058pub const D3D12_MESSAGE_ID_D3D12_MESSAGE_ID_EMPTY_DISPATCH: D3D12_MESSAGE_ID =
18059 1254;
18060pub const D3D12_MESSAGE_ID_D3D12_MESSAGE_ID_RESOURCE_FORMAT_REQUIRES_SAMPLER_FEEDBACK_CAPABILITY : D3D12_MESSAGE_ID = 1255 ;
18061pub const D3D12_MESSAGE_ID_D3D12_MESSAGE_ID_SAMPLER_FEEDBACK_MAP_INVALID_MIP_REGION : D3D12_MESSAGE_ID = 1256 ;
18062pub const D3D12_MESSAGE_ID_D3D12_MESSAGE_ID_SAMPLER_FEEDBACK_MAP_INVALID_DIMENSION : D3D12_MESSAGE_ID = 1257 ;
18063pub const D3D12_MESSAGE_ID_D3D12_MESSAGE_ID_SAMPLER_FEEDBACK_MAP_INVALID_SAMPLE_COUNT : D3D12_MESSAGE_ID = 1258 ;
18064pub const D3D12_MESSAGE_ID_D3D12_MESSAGE_ID_SAMPLER_FEEDBACK_MAP_INVALID_SAMPLE_QUALITY : D3D12_MESSAGE_ID = 1259 ;
18065pub const D3D12_MESSAGE_ID_D3D12_MESSAGE_ID_SAMPLER_FEEDBACK_MAP_INVALID_LAYOUT : D3D12_MESSAGE_ID = 1260 ;
18066pub const D3D12_MESSAGE_ID_D3D12_MESSAGE_ID_SAMPLER_FEEDBACK_MAP_REQUIRES_UNORDERED_ACCESS_FLAG : D3D12_MESSAGE_ID = 1261 ;
18067pub const D3D12_MESSAGE_ID_D3D12_MESSAGE_ID_SAMPLER_FEEDBACK_CREATE_UAV_NULL_ARGUMENTS : D3D12_MESSAGE_ID = 1262 ;
18068pub const D3D12_MESSAGE_ID_D3D12_MESSAGE_ID_SAMPLER_FEEDBACK_UAV_REQUIRES_SAMPLER_FEEDBACK_CAPABILITY : D3D12_MESSAGE_ID = 1263 ;
18069pub const D3D12_MESSAGE_ID_D3D12_MESSAGE_ID_SAMPLER_FEEDBACK_CREATE_UAV_REQUIRES_FEEDBACK_MAP_FORMAT : D3D12_MESSAGE_ID = 1264 ;
18070pub const D3D12_MESSAGE_ID_D3D12_MESSAGE_ID_CREATEMESHSHADER_INVALIDSHADERBYTECODE : D3D12_MESSAGE_ID = 1265 ;
18071pub const D3D12_MESSAGE_ID_D3D12_MESSAGE_ID_CREATEMESHSHADER_OUTOFMEMORY:
18072 D3D12_MESSAGE_ID = 1266;
18073pub const D3D12_MESSAGE_ID_D3D12_MESSAGE_ID_CREATEMESHSHADERWITHSTREAMOUTPUT_INVALIDSHADERTYPE : D3D12_MESSAGE_ID = 1267 ;
18074pub const D3D12_MESSAGE_ID_D3D12_MESSAGE_ID_RESOLVESUBRESOURCE_SAMPLER_FEEDBACK_TRANSCODE_INVALID_FORMAT : D3D12_MESSAGE_ID = 1268 ;
18075pub const D3D12_MESSAGE_ID_D3D12_MESSAGE_ID_RESOLVESUBRESOURCE_SAMPLER_FEEDBACK_INVALID_MIP_LEVEL_COUNT : D3D12_MESSAGE_ID = 1269 ;
18076pub const D3D12_MESSAGE_ID_D3D12_MESSAGE_ID_RESOLVESUBRESOURCE_SAMPLER_FEEDBACK_TRANSCODE_ARRAY_SIZE_MISMATCH : D3D12_MESSAGE_ID = 1270 ;
18077pub const D3D12_MESSAGE_ID_D3D12_MESSAGE_ID_SAMPLER_FEEDBACK_CREATE_UAV_MISMATCHING_TARGETED_RESOURCE : D3D12_MESSAGE_ID = 1271 ;
18078pub const D3D12_MESSAGE_ID_D3D12_MESSAGE_ID_CREATEMESHSHADER_OUTPUTEXCEEDSMAXSIZE : D3D12_MESSAGE_ID = 1272 ;
18079pub const D3D12_MESSAGE_ID_D3D12_MESSAGE_ID_CREATEMESHSHADER_GROUPSHAREDEXCEEDSMAXSIZE : D3D12_MESSAGE_ID = 1273 ;
18080pub const D3D12_MESSAGE_ID_D3D12_MESSAGE_ID_VERTEX_SHADER_OUTPUTTING_BOTH_VIEWPORT_ARRAY_INDEX_AND_SHADING_RATE_NOT_SUPPORTED_ON_DEVICE : D3D12_MESSAGE_ID = 1274 ;
18081pub const D3D12_MESSAGE_ID_D3D12_MESSAGE_ID_MESH_SHADER_OUTPUTTING_BOTH_VIEWPORT_ARRAY_INDEX_AND_SHADING_RATE_NOT_SUPPORTED_ON_DEVICE : D3D12_MESSAGE_ID = 1275 ;
18082pub const D3D12_MESSAGE_ID_D3D12_MESSAGE_ID_CREATEMESHSHADER_MISMATCHEDASMSPAYLOADSIZE : D3D12_MESSAGE_ID = 1276 ;
18083pub const D3D12_MESSAGE_ID_D3D12_MESSAGE_ID_CREATE_ROOT_SIGNATURE_UNBOUNDED_STATIC_DESCRIPTORS : D3D12_MESSAGE_ID = 1277 ;
18084pub const D3D12_MESSAGE_ID_D3D12_MESSAGE_ID_CREATEAMPLIFICATIONSHADER_INVALIDSHADERBYTECODE : D3D12_MESSAGE_ID = 1278 ;
18085pub const D3D12_MESSAGE_ID_D3D12_MESSAGE_ID_CREATEAMPLIFICATIONSHADER_OUTOFMEMORY : D3D12_MESSAGE_ID = 1279 ;
18086pub const D3D12_MESSAGE_ID_D3D12_MESSAGE_ID_CREATE_SHADERCACHESESSION:
18087 D3D12_MESSAGE_ID = 1280;
18088pub const D3D12_MESSAGE_ID_D3D12_MESSAGE_ID_LIVE_SHADERCACHESESSION:
18089 D3D12_MESSAGE_ID = 1281;
18090pub const D3D12_MESSAGE_ID_D3D12_MESSAGE_ID_DESTROY_SHADERCACHESESSION:
18091 D3D12_MESSAGE_ID = 1282;
18092pub const D3D12_MESSAGE_ID_D3D12_MESSAGE_ID_CREATESHADERCACHESESSION_INVALIDARGS : D3D12_MESSAGE_ID = 1283 ;
18093pub const D3D12_MESSAGE_ID_D3D12_MESSAGE_ID_CREATESHADERCACHESESSION_DISABLED : D3D12_MESSAGE_ID = 1284 ;
18094pub const D3D12_MESSAGE_ID_D3D12_MESSAGE_ID_CREATESHADERCACHESESSION_ALREADYOPEN : D3D12_MESSAGE_ID = 1285 ;
18095pub const D3D12_MESSAGE_ID_D3D12_MESSAGE_ID_SHADERCACHECONTROL_DEVELOPERMODE:
18096 D3D12_MESSAGE_ID = 1286;
18097pub const D3D12_MESSAGE_ID_D3D12_MESSAGE_ID_SHADERCACHECONTROL_INVALIDFLAGS:
18098 D3D12_MESSAGE_ID = 1287;
18099pub const D3D12_MESSAGE_ID_D3D12_MESSAGE_ID_SHADERCACHECONTROL_STATEALREADYSET : D3D12_MESSAGE_ID = 1288 ;
18100pub const D3D12_MESSAGE_ID_D3D12_MESSAGE_ID_SHADERCACHECONTROL_IGNOREDFLAG:
18101 D3D12_MESSAGE_ID = 1289;
18102pub const D3D12_MESSAGE_ID_D3D12_MESSAGE_ID_SHADERCACHESESSION_STOREVALUE_ALREADYPRESENT : D3D12_MESSAGE_ID = 1290 ;
18103pub const D3D12_MESSAGE_ID_D3D12_MESSAGE_ID_SHADERCACHESESSION_STOREVALUE_HASHCOLLISION : D3D12_MESSAGE_ID = 1291 ;
18104pub const D3D12_MESSAGE_ID_D3D12_MESSAGE_ID_SHADERCACHESESSION_STOREVALUE_CACHEFULL : D3D12_MESSAGE_ID = 1292 ;
18105pub const D3D12_MESSAGE_ID_D3D12_MESSAGE_ID_SHADERCACHESESSION_FINDVALUE_NOTFOUND : D3D12_MESSAGE_ID = 1293 ;
18106pub const D3D12_MESSAGE_ID_D3D12_MESSAGE_ID_SHADERCACHESESSION_CORRUPT:
18107 D3D12_MESSAGE_ID = 1294;
18108pub const D3D12_MESSAGE_ID_D3D12_MESSAGE_ID_SHADERCACHESESSION_DISABLED:
18109 D3D12_MESSAGE_ID = 1295;
18110pub const D3D12_MESSAGE_ID_D3D12_MESSAGE_ID_OVERSIZED_DISPATCH:
18111 D3D12_MESSAGE_ID = 1296;
18112pub const D3D12_MESSAGE_ID_D3D12_MESSAGE_ID_CREATE_VIDEOENCODER:
18113 D3D12_MESSAGE_ID = 1297;
18114pub const D3D12_MESSAGE_ID_D3D12_MESSAGE_ID_LIVE_VIDEOENCODER:
18115 D3D12_MESSAGE_ID = 1298;
18116pub const D3D12_MESSAGE_ID_D3D12_MESSAGE_ID_DESTROY_VIDEOENCODER:
18117 D3D12_MESSAGE_ID = 1299;
18118pub const D3D12_MESSAGE_ID_D3D12_MESSAGE_ID_CREATE_VIDEOENCODERHEAP:
18119 D3D12_MESSAGE_ID = 1300;
18120pub const D3D12_MESSAGE_ID_D3D12_MESSAGE_ID_LIVE_VIDEOENCODERHEAP:
18121 D3D12_MESSAGE_ID = 1301;
18122pub const D3D12_MESSAGE_ID_D3D12_MESSAGE_ID_DESTROY_VIDEOENCODERHEAP:
18123 D3D12_MESSAGE_ID = 1302;
18124pub const D3D12_MESSAGE_ID_D3D12_MESSAGE_ID_COPYTEXTUREREGION_MISMATCH_ENCODE_REFERENCE_ONLY_FLAG : D3D12_MESSAGE_ID = 1303 ;
18125pub const D3D12_MESSAGE_ID_D3D12_MESSAGE_ID_COPYRESOURCE_MISMATCH_ENCODE_REFERENCE_ONLY_FLAG : D3D12_MESSAGE_ID = 1304 ;
18126pub const D3D12_MESSAGE_ID_D3D12_MESSAGE_ID_ENCODE_FRAME_INVALID_PARAMETERS:
18127 D3D12_MESSAGE_ID = 1305;
18128pub const D3D12_MESSAGE_ID_D3D12_MESSAGE_ID_ENCODE_FRAME_UNSUPPORTED_PARAMETERS : D3D12_MESSAGE_ID = 1306 ;
18129pub const D3D12_MESSAGE_ID_D3D12_MESSAGE_ID_RESOLVE_ENCODER_OUTPUT_METADATA_INVALID_PARAMETERS : D3D12_MESSAGE_ID = 1307 ;
18130pub const D3D12_MESSAGE_ID_D3D12_MESSAGE_ID_RESOLVE_ENCODER_OUTPUT_METADATA_UNSUPPORTED_PARAMETERS : D3D12_MESSAGE_ID = 1308 ;
18131pub const D3D12_MESSAGE_ID_D3D12_MESSAGE_ID_CREATE_VIDEO_ENCODER_INVALID_PARAMETERS : D3D12_MESSAGE_ID = 1309 ;
18132pub const D3D12_MESSAGE_ID_D3D12_MESSAGE_ID_CREATE_VIDEO_ENCODER_UNSUPPORTED_PARAMETERS : D3D12_MESSAGE_ID = 1310 ;
18133pub const D3D12_MESSAGE_ID_D3D12_MESSAGE_ID_CREATE_VIDEO_ENCODER_HEAP_INVALID_PARAMETERS : D3D12_MESSAGE_ID = 1311 ;
18134pub const D3D12_MESSAGE_ID_D3D12_MESSAGE_ID_CREATE_VIDEO_ENCODER_HEAP_UNSUPPORTED_PARAMETERS : D3D12_MESSAGE_ID = 1312 ;
18135pub const D3D12_MESSAGE_ID_D3D12_MESSAGE_ID_CREATECOMMANDLIST_NULL_COMMANDALLOCATOR : D3D12_MESSAGE_ID = 1313 ;
18136pub const D3D12_MESSAGE_ID_D3D12_MESSAGE_ID_CLEAR_UNORDERED_ACCESS_VIEW_INVALID_DESCRIPTOR_HANDLE : D3D12_MESSAGE_ID = 1314 ;
18137pub const D3D12_MESSAGE_ID_D3D12_MESSAGE_ID_DESCRIPTOR_HEAP_NOT_SHADER_VISIBLE : D3D12_MESSAGE_ID = 1315 ;
18138pub const D3D12_MESSAGE_ID_D3D12_MESSAGE_ID_CREATEBLENDSTATE_BLENDOP_WARNING:
18139 D3D12_MESSAGE_ID = 1316;
18140pub const D3D12_MESSAGE_ID_D3D12_MESSAGE_ID_CREATEBLENDSTATE_BLENDOPALPHA_WARNING : D3D12_MESSAGE_ID = 1317 ;
18141pub const D3D12_MESSAGE_ID_D3D12_MESSAGE_ID_WRITE_COMBINE_PERFORMANCE_WARNING : D3D12_MESSAGE_ID = 1318 ;
18142pub const D3D12_MESSAGE_ID_D3D12_MESSAGE_ID_RESOLVE_QUERY_INVALID_QUERY_STATE : D3D12_MESSAGE_ID = 1319 ;
18143pub const D3D12_MESSAGE_ID_D3D12_MESSAGE_ID_SETPRIVATEDATA_NO_ACCESS:
18144 D3D12_MESSAGE_ID = 1320;
18145pub const D3D12_MESSAGE_ID_D3D12_MESSAGE_ID_D3D12_MESSAGES_END:
18146 D3D12_MESSAGE_ID = 1321;
18147pub type D3D12_MESSAGE_ID = ::std::os::raw::c_int;
18148#[repr(C)]
18149#[derive(Debug, Copy, Clone, Hash, PartialOrd, Ord, PartialEq, Eq)]
18150pub struct D3D12_MESSAGE {
18151 pub Category: D3D12_MESSAGE_CATEGORY,
18152 pub Severity: D3D12_MESSAGE_SEVERITY,
18153 pub ID: D3D12_MESSAGE_ID,
18154 pub pDescription: *const ::std::os::raw::c_char,
18155 pub DescriptionByteLength: SIZE_T,
18156}
18157impl Default for D3D12_MESSAGE {
18158 fn default() -> Self {
18159 let mut s = ::std::mem::MaybeUninit::<Self>::uninit();
18160 unsafe {
18161 ::std::ptr::write_bytes(s.as_mut_ptr(), 0, 1);
18162 s.assume_init()
18163 }
18164 }
18165}
18166#[repr(C)]
18167#[derive(Debug, Copy, Clone, Hash, PartialOrd, Ord, PartialEq, Eq)]
18168pub struct D3D12_INFO_QUEUE_FILTER_DESC {
18169 pub NumCategories: UINT,
18170 pub pCategoryList: *mut D3D12_MESSAGE_CATEGORY,
18171 pub NumSeverities: UINT,
18172 pub pSeverityList: *mut D3D12_MESSAGE_SEVERITY,
18173 pub NumIDs: UINT,
18174 pub pIDList: *mut D3D12_MESSAGE_ID,
18175}
18176impl Default for D3D12_INFO_QUEUE_FILTER_DESC {
18177 fn default() -> Self {
18178 let mut s = ::std::mem::MaybeUninit::<Self>::uninit();
18179 unsafe {
18180 ::std::ptr::write_bytes(s.as_mut_ptr(), 0, 1);
18181 s.assume_init()
18182 }
18183 }
18184}
18185#[repr(C)]
18186#[derive(Debug, Copy, Clone, Hash, PartialOrd, Ord, PartialEq, Eq)]
18187pub struct D3D12_INFO_QUEUE_FILTER {
18188 pub AllowList: D3D12_INFO_QUEUE_FILTER_DESC,
18189 pub DenyList: D3D12_INFO_QUEUE_FILTER_DESC,
18190}
18191impl Default for D3D12_INFO_QUEUE_FILTER {
18192 fn default() -> Self {
18193 let mut s = ::std::mem::MaybeUninit::<Self>::uninit();
18194 unsafe {
18195 ::std::ptr::write_bytes(s.as_mut_ptr(), 0, 1);
18196 s.assume_init()
18197 }
18198 }
18199}
18200extern "C" {
18201 pub static IID_ID3D12InfoQueue: IID;
18202}
18203#[repr(C)]
18204#[derive(Debug, Default, Copy, Clone, Hash, PartialOrd, Ord, PartialEq, Eq)]
18205pub struct ID3D12InfoQueueVtbl {
18206 pub QueryInterface: ::std::option::Option<
18207 unsafe extern "C" fn(
18208 This: *mut ID3D12InfoQueue,
18209 riid: *const IID,
18210 ppvObject: *mut *mut ::std::os::raw::c_void,
18211 ) -> HRESULT,
18212 >,
18213 pub AddRef: ::std::option::Option<
18214 unsafe extern "C" fn(This: *mut ID3D12InfoQueue) -> ULONG,
18215 >,
18216 pub Release: ::std::option::Option<
18217 unsafe extern "C" fn(This: *mut ID3D12InfoQueue) -> ULONG,
18218 >,
18219 pub SetMessageCountLimit: ::std::option::Option<
18220 unsafe extern "C" fn(
18221 This: *mut ID3D12InfoQueue,
18222 MessageCountLimit: UINT64,
18223 ) -> HRESULT,
18224 >,
18225 pub ClearStoredMessages:
18226 ::std::option::Option<unsafe extern "C" fn(This: *mut ID3D12InfoQueue)>,
18227 pub GetMessageA: ::std::option::Option<
18228 unsafe extern "C" fn(
18229 This: *mut ID3D12InfoQueue,
18230 MessageIndex: UINT64,
18231 pMessage: *mut D3D12_MESSAGE,
18232 pMessageByteLength: *mut SIZE_T,
18233 ) -> HRESULT,
18234 >,
18235 pub GetNumMessagesAllowedByStorageFilter: ::std::option::Option<
18236 unsafe extern "C" fn(This: *mut ID3D12InfoQueue) -> UINT64,
18237 >,
18238 pub GetNumMessagesDeniedByStorageFilter: ::std::option::Option<
18239 unsafe extern "C" fn(This: *mut ID3D12InfoQueue) -> UINT64,
18240 >,
18241 pub GetNumStoredMessages: ::std::option::Option<
18242 unsafe extern "C" fn(This: *mut ID3D12InfoQueue) -> UINT64,
18243 >,
18244 pub GetNumStoredMessagesAllowedByRetrievalFilter: ::std::option::Option<
18245 unsafe extern "C" fn(This: *mut ID3D12InfoQueue) -> UINT64,
18246 >,
18247 pub GetNumMessagesDiscardedByMessageCountLimit: ::std::option::Option<
18248 unsafe extern "C" fn(This: *mut ID3D12InfoQueue) -> UINT64,
18249 >,
18250 pub GetMessageCountLimit: ::std::option::Option<
18251 unsafe extern "C" fn(This: *mut ID3D12InfoQueue) -> UINT64,
18252 >,
18253 pub AddStorageFilterEntries: ::std::option::Option<
18254 unsafe extern "C" fn(
18255 This: *mut ID3D12InfoQueue,
18256 pFilter: *mut D3D12_INFO_QUEUE_FILTER,
18257 ) -> HRESULT,
18258 >,
18259 pub GetStorageFilter: ::std::option::Option<
18260 unsafe extern "C" fn(
18261 This: *mut ID3D12InfoQueue,
18262 pFilter: *mut D3D12_INFO_QUEUE_FILTER,
18263 pFilterByteLength: *mut SIZE_T,
18264 ) -> HRESULT,
18265 >,
18266 pub ClearStorageFilter:
18267 ::std::option::Option<unsafe extern "C" fn(This: *mut ID3D12InfoQueue)>,
18268 pub PushEmptyStorageFilter: ::std::option::Option<
18269 unsafe extern "C" fn(This: *mut ID3D12InfoQueue) -> HRESULT,
18270 >,
18271 pub PushCopyOfStorageFilter: ::std::option::Option<
18272 unsafe extern "C" fn(This: *mut ID3D12InfoQueue) -> HRESULT,
18273 >,
18274 pub PushStorageFilter: ::std::option::Option<
18275 unsafe extern "C" fn(
18276 This: *mut ID3D12InfoQueue,
18277 pFilter: *mut D3D12_INFO_QUEUE_FILTER,
18278 ) -> HRESULT,
18279 >,
18280 pub PopStorageFilter:
18281 ::std::option::Option<unsafe extern "C" fn(This: *mut ID3D12InfoQueue)>,
18282 pub GetStorageFilterStackSize: ::std::option::Option<
18283 unsafe extern "C" fn(This: *mut ID3D12InfoQueue) -> UINT,
18284 >,
18285 pub AddRetrievalFilterEntries: ::std::option::Option<
18286 unsafe extern "C" fn(
18287 This: *mut ID3D12InfoQueue,
18288 pFilter: *mut D3D12_INFO_QUEUE_FILTER,
18289 ) -> HRESULT,
18290 >,
18291 pub GetRetrievalFilter: ::std::option::Option<
18292 unsafe extern "C" fn(
18293 This: *mut ID3D12InfoQueue,
18294 pFilter: *mut D3D12_INFO_QUEUE_FILTER,
18295 pFilterByteLength: *mut SIZE_T,
18296 ) -> HRESULT,
18297 >,
18298 pub ClearRetrievalFilter:
18299 ::std::option::Option<unsafe extern "C" fn(This: *mut ID3D12InfoQueue)>,
18300 pub PushEmptyRetrievalFilter: ::std::option::Option<
18301 unsafe extern "C" fn(This: *mut ID3D12InfoQueue) -> HRESULT,
18302 >,
18303 pub PushCopyOfRetrievalFilter: ::std::option::Option<
18304 unsafe extern "C" fn(This: *mut ID3D12InfoQueue) -> HRESULT,
18305 >,
18306 pub PushRetrievalFilter: ::std::option::Option<
18307 unsafe extern "C" fn(
18308 This: *mut ID3D12InfoQueue,
18309 pFilter: *mut D3D12_INFO_QUEUE_FILTER,
18310 ) -> HRESULT,
18311 >,
18312 pub PopRetrievalFilter:
18313 ::std::option::Option<unsafe extern "C" fn(This: *mut ID3D12InfoQueue)>,
18314 pub GetRetrievalFilterStackSize: ::std::option::Option<
18315 unsafe extern "C" fn(This: *mut ID3D12InfoQueue) -> UINT,
18316 >,
18317 pub AddMessage: ::std::option::Option<
18318 unsafe extern "C" fn(
18319 This: *mut ID3D12InfoQueue,
18320 Category: D3D12_MESSAGE_CATEGORY,
18321 Severity: D3D12_MESSAGE_SEVERITY,
18322 ID: D3D12_MESSAGE_ID,
18323 pDescription: LPCSTR,
18324 ) -> HRESULT,
18325 >,
18326 pub AddApplicationMessage: ::std::option::Option<
18327 unsafe extern "C" fn(
18328 This: *mut ID3D12InfoQueue,
18329 Severity: D3D12_MESSAGE_SEVERITY,
18330 pDescription: LPCSTR,
18331 ) -> HRESULT,
18332 >,
18333 pub SetBreakOnCategory: ::std::option::Option<
18334 unsafe extern "C" fn(
18335 This: *mut ID3D12InfoQueue,
18336 Category: D3D12_MESSAGE_CATEGORY,
18337 bEnable: BOOL,
18338 ) -> HRESULT,
18339 >,
18340 pub SetBreakOnSeverity: ::std::option::Option<
18341 unsafe extern "C" fn(
18342 This: *mut ID3D12InfoQueue,
18343 Severity: D3D12_MESSAGE_SEVERITY,
18344 bEnable: BOOL,
18345 ) -> HRESULT,
18346 >,
18347 pub SetBreakOnID: ::std::option::Option<
18348 unsafe extern "C" fn(
18349 This: *mut ID3D12InfoQueue,
18350 ID: D3D12_MESSAGE_ID,
18351 bEnable: BOOL,
18352 ) -> HRESULT,
18353 >,
18354 pub GetBreakOnCategory: ::std::option::Option<
18355 unsafe extern "C" fn(
18356 This: *mut ID3D12InfoQueue,
18357 Category: D3D12_MESSAGE_CATEGORY,
18358 ) -> BOOL,
18359 >,
18360 pub GetBreakOnSeverity: ::std::option::Option<
18361 unsafe extern "C" fn(
18362 This: *mut ID3D12InfoQueue,
18363 Severity: D3D12_MESSAGE_SEVERITY,
18364 ) -> BOOL,
18365 >,
18366 pub GetBreakOnID: ::std::option::Option<
18367 unsafe extern "C" fn(
18368 This: *mut ID3D12InfoQueue,
18369 ID: D3D12_MESSAGE_ID,
18370 ) -> BOOL,
18371 >,
18372 pub SetMuteDebugOutput: ::std::option::Option<
18373 unsafe extern "C" fn(This: *mut ID3D12InfoQueue, bMute: BOOL),
18374 >,
18375 pub GetMuteDebugOutput: ::std::option::Option<
18376 unsafe extern "C" fn(This: *mut ID3D12InfoQueue) -> BOOL,
18377 >,
18378}
18379#[repr(C)]
18380#[derive(Debug, Copy, Clone, Hash, PartialOrd, Ord, PartialEq, Eq)]
18381pub struct ID3D12InfoQueue {
18382 pub lpVtbl: *mut ID3D12InfoQueueVtbl,
18383}
18384impl Default for ID3D12InfoQueue {
18385 fn default() -> Self {
18386 let mut s = ::std::mem::MaybeUninit::<Self>::uninit();
18387 unsafe {
18388 ::std::ptr::write_bytes(s.as_mut_ptr(), 0, 1);
18389 s.assume_init()
18390 }
18391 }
18392}
18393pub const D3D12_MESSAGE_CALLBACK_FLAGS_D3D12_MESSAGE_CALLBACK_FLAG_NONE:
18394 D3D12_MESSAGE_CALLBACK_FLAGS = 0;
18395pub const D3D12_MESSAGE_CALLBACK_FLAGS_D3D12_MESSAGE_CALLBACK_IGNORE_FILTERS:
18396 D3D12_MESSAGE_CALLBACK_FLAGS = 1;
18397pub type D3D12_MESSAGE_CALLBACK_FLAGS = ::std::os::raw::c_int;
18398pub type D3D12MessageFunc = ::std::option::Option<
18399 unsafe extern "C" fn(
18400 Category: D3D12_MESSAGE_CATEGORY,
18401 Severity: D3D12_MESSAGE_SEVERITY,
18402 ID: D3D12_MESSAGE_ID,
18403 pDescription: LPCSTR,
18404 pContext: *mut ::std::os::raw::c_void,
18405 ),
18406>;
18407extern "C" {
18408 pub static IID_ID3D12InfoQueue1: IID;
18409}
18410#[repr(C)]
18411#[derive(Debug, Default, Copy, Clone, Hash, PartialOrd, Ord, PartialEq, Eq)]
18412pub struct ID3D12InfoQueue1Vtbl {
18413 pub QueryInterface: ::std::option::Option<
18414 unsafe extern "C" fn(
18415 This: *mut ID3D12InfoQueue1,
18416 riid: *const IID,
18417 ppvObject: *mut *mut ::std::os::raw::c_void,
18418 ) -> HRESULT,
18419 >,
18420 pub AddRef: ::std::option::Option<
18421 unsafe extern "C" fn(This: *mut ID3D12InfoQueue1) -> ULONG,
18422 >,
18423 pub Release: ::std::option::Option<
18424 unsafe extern "C" fn(This: *mut ID3D12InfoQueue1) -> ULONG,
18425 >,
18426 pub SetMessageCountLimit: ::std::option::Option<
18427 unsafe extern "C" fn(
18428 This: *mut ID3D12InfoQueue1,
18429 MessageCountLimit: UINT64,
18430 ) -> HRESULT,
18431 >,
18432 pub ClearStoredMessages: ::std::option::Option<
18433 unsafe extern "C" fn(This: *mut ID3D12InfoQueue1),
18434 >,
18435 pub GetMessageA: ::std::option::Option<
18436 unsafe extern "C" fn(
18437 This: *mut ID3D12InfoQueue1,
18438 MessageIndex: UINT64,
18439 pMessage: *mut D3D12_MESSAGE,
18440 pMessageByteLength: *mut SIZE_T,
18441 ) -> HRESULT,
18442 >,
18443 pub GetNumMessagesAllowedByStorageFilter: ::std::option::Option<
18444 unsafe extern "C" fn(This: *mut ID3D12InfoQueue1) -> UINT64,
18445 >,
18446 pub GetNumMessagesDeniedByStorageFilter: ::std::option::Option<
18447 unsafe extern "C" fn(This: *mut ID3D12InfoQueue1) -> UINT64,
18448 >,
18449 pub GetNumStoredMessages: ::std::option::Option<
18450 unsafe extern "C" fn(This: *mut ID3D12InfoQueue1) -> UINT64,
18451 >,
18452 pub GetNumStoredMessagesAllowedByRetrievalFilter: ::std::option::Option<
18453 unsafe extern "C" fn(This: *mut ID3D12InfoQueue1) -> UINT64,
18454 >,
18455 pub GetNumMessagesDiscardedByMessageCountLimit: ::std::option::Option<
18456 unsafe extern "C" fn(This: *mut ID3D12InfoQueue1) -> UINT64,
18457 >,
18458 pub GetMessageCountLimit: ::std::option::Option<
18459 unsafe extern "C" fn(This: *mut ID3D12InfoQueue1) -> UINT64,
18460 >,
18461 pub AddStorageFilterEntries: ::std::option::Option<
18462 unsafe extern "C" fn(
18463 This: *mut ID3D12InfoQueue1,
18464 pFilter: *mut D3D12_INFO_QUEUE_FILTER,
18465 ) -> HRESULT,
18466 >,
18467 pub GetStorageFilter: ::std::option::Option<
18468 unsafe extern "C" fn(
18469 This: *mut ID3D12InfoQueue1,
18470 pFilter: *mut D3D12_INFO_QUEUE_FILTER,
18471 pFilterByteLength: *mut SIZE_T,
18472 ) -> HRESULT,
18473 >,
18474 pub ClearStorageFilter: ::std::option::Option<
18475 unsafe extern "C" fn(This: *mut ID3D12InfoQueue1),
18476 >,
18477 pub PushEmptyStorageFilter: ::std::option::Option<
18478 unsafe extern "C" fn(This: *mut ID3D12InfoQueue1) -> HRESULT,
18479 >,
18480 pub PushCopyOfStorageFilter: ::std::option::Option<
18481 unsafe extern "C" fn(This: *mut ID3D12InfoQueue1) -> HRESULT,
18482 >,
18483 pub PushStorageFilter: ::std::option::Option<
18484 unsafe extern "C" fn(
18485 This: *mut ID3D12InfoQueue1,
18486 pFilter: *mut D3D12_INFO_QUEUE_FILTER,
18487 ) -> HRESULT,
18488 >,
18489 pub PopStorageFilter: ::std::option::Option<
18490 unsafe extern "C" fn(This: *mut ID3D12InfoQueue1),
18491 >,
18492 pub GetStorageFilterStackSize: ::std::option::Option<
18493 unsafe extern "C" fn(This: *mut ID3D12InfoQueue1) -> UINT,
18494 >,
18495 pub AddRetrievalFilterEntries: ::std::option::Option<
18496 unsafe extern "C" fn(
18497 This: *mut ID3D12InfoQueue1,
18498 pFilter: *mut D3D12_INFO_QUEUE_FILTER,
18499 ) -> HRESULT,
18500 >,
18501 pub GetRetrievalFilter: ::std::option::Option<
18502 unsafe extern "C" fn(
18503 This: *mut ID3D12InfoQueue1,
18504 pFilter: *mut D3D12_INFO_QUEUE_FILTER,
18505 pFilterByteLength: *mut SIZE_T,
18506 ) -> HRESULT,
18507 >,
18508 pub ClearRetrievalFilter: ::std::option::Option<
18509 unsafe extern "C" fn(This: *mut ID3D12InfoQueue1),
18510 >,
18511 pub PushEmptyRetrievalFilter: ::std::option::Option<
18512 unsafe extern "C" fn(This: *mut ID3D12InfoQueue1) -> HRESULT,
18513 >,
18514 pub PushCopyOfRetrievalFilter: ::std::option::Option<
18515 unsafe extern "C" fn(This: *mut ID3D12InfoQueue1) -> HRESULT,
18516 >,
18517 pub PushRetrievalFilter: ::std::option::Option<
18518 unsafe extern "C" fn(
18519 This: *mut ID3D12InfoQueue1,
18520 pFilter: *mut D3D12_INFO_QUEUE_FILTER,
18521 ) -> HRESULT,
18522 >,
18523 pub PopRetrievalFilter: ::std::option::Option<
18524 unsafe extern "C" fn(This: *mut ID3D12InfoQueue1),
18525 >,
18526 pub GetRetrievalFilterStackSize: ::std::option::Option<
18527 unsafe extern "C" fn(This: *mut ID3D12InfoQueue1) -> UINT,
18528 >,
18529 pub AddMessage: ::std::option::Option<
18530 unsafe extern "C" fn(
18531 This: *mut ID3D12InfoQueue1,
18532 Category: D3D12_MESSAGE_CATEGORY,
18533 Severity: D3D12_MESSAGE_SEVERITY,
18534 ID: D3D12_MESSAGE_ID,
18535 pDescription: LPCSTR,
18536 ) -> HRESULT,
18537 >,
18538 pub AddApplicationMessage: ::std::option::Option<
18539 unsafe extern "C" fn(
18540 This: *mut ID3D12InfoQueue1,
18541 Severity: D3D12_MESSAGE_SEVERITY,
18542 pDescription: LPCSTR,
18543 ) -> HRESULT,
18544 >,
18545 pub SetBreakOnCategory: ::std::option::Option<
18546 unsafe extern "C" fn(
18547 This: *mut ID3D12InfoQueue1,
18548 Category: D3D12_MESSAGE_CATEGORY,
18549 bEnable: BOOL,
18550 ) -> HRESULT,
18551 >,
18552 pub SetBreakOnSeverity: ::std::option::Option<
18553 unsafe extern "C" fn(
18554 This: *mut ID3D12InfoQueue1,
18555 Severity: D3D12_MESSAGE_SEVERITY,
18556 bEnable: BOOL,
18557 ) -> HRESULT,
18558 >,
18559 pub SetBreakOnID: ::std::option::Option<
18560 unsafe extern "C" fn(
18561 This: *mut ID3D12InfoQueue1,
18562 ID: D3D12_MESSAGE_ID,
18563 bEnable: BOOL,
18564 ) -> HRESULT,
18565 >,
18566 pub GetBreakOnCategory: ::std::option::Option<
18567 unsafe extern "C" fn(
18568 This: *mut ID3D12InfoQueue1,
18569 Category: D3D12_MESSAGE_CATEGORY,
18570 ) -> BOOL,
18571 >,
18572 pub GetBreakOnSeverity: ::std::option::Option<
18573 unsafe extern "C" fn(
18574 This: *mut ID3D12InfoQueue1,
18575 Severity: D3D12_MESSAGE_SEVERITY,
18576 ) -> BOOL,
18577 >,
18578 pub GetBreakOnID: ::std::option::Option<
18579 unsafe extern "C" fn(
18580 This: *mut ID3D12InfoQueue1,
18581 ID: D3D12_MESSAGE_ID,
18582 ) -> BOOL,
18583 >,
18584 pub SetMuteDebugOutput: ::std::option::Option<
18585 unsafe extern "C" fn(This: *mut ID3D12InfoQueue1, bMute: BOOL),
18586 >,
18587 pub GetMuteDebugOutput: ::std::option::Option<
18588 unsafe extern "C" fn(This: *mut ID3D12InfoQueue1) -> BOOL,
18589 >,
18590 pub RegisterMessageCallback: ::std::option::Option<
18591 unsafe extern "C" fn(
18592 This: *mut ID3D12InfoQueue1,
18593 CallbackFunc: D3D12MessageFunc,
18594 CallbackFilterFlags: D3D12_MESSAGE_CALLBACK_FLAGS,
18595 pContext: *mut ::std::os::raw::c_void,
18596 pCallbackCookie: *mut DWORD,
18597 ) -> HRESULT,
18598 >,
18599 pub UnregisterMessageCallback: ::std::option::Option<
18600 unsafe extern "C" fn(
18601 This: *mut ID3D12InfoQueue1,
18602 CallbackCookie: DWORD,
18603 ) -> HRESULT,
18604 >,
18605}
18606#[repr(C)]
18607#[derive(Debug, Copy, Clone, Hash, PartialOrd, Ord, PartialEq, Eq)]
18608pub struct ID3D12InfoQueue1 {
18609 pub lpVtbl: *mut ID3D12InfoQueue1Vtbl,
18610}
18611impl Default for ID3D12InfoQueue1 {
18612 fn default() -> Self {
18613 let mut s = ::std::mem::MaybeUninit::<Self>::uninit();
18614 unsafe {
18615 ::std::ptr::write_bytes(s.as_mut_ptr(), 0, 1);
18616 s.assume_init()
18617 }
18618 }
18619}
18620#[doc = ""]
18621pub type PFN_D3D12_CREATE_DEVICE = ::std::option::Option<
18622 unsafe extern "C" fn(
18623 arg1: *mut IUnknown,
18624 arg2: D3D_FEATURE_LEVEL,
18625 arg3: *const IID,
18626 arg4: *mut *mut ::std::os::raw::c_void,
18627 ) -> HRESULT,
18628>;
18629extern "C" {
18630 pub fn D3D12CreateDevice(
18631 pAdapter: *mut IUnknown,
18632 MinimumFeatureLevel: D3D_FEATURE_LEVEL,
18633 riid: *const IID,
18634 ppDevice: *mut *mut ::std::os::raw::c_void,
18635 ) -> HRESULT;
18636}
18637pub type PFN_D3D12_GET_DEBUG_INTERFACE = ::std::option::Option<
18638 unsafe extern "C" fn(
18639 arg1: *const IID,
18640 arg2: *mut *mut ::std::os::raw::c_void,
18641 ) -> HRESULT,
18642>;
18643extern "C" {
18644 pub fn D3D12GetDebugInterface(
18645 riid: *const IID,
18646 ppvDebug: *mut *mut ::std::os::raw::c_void,
18647 ) -> HRESULT;
18648}
18649extern "C" {
18650 pub fn D3D12EnableExperimentalFeatures(
18651 NumFeatures: UINT,
18652 pIIDs: *const IID,
18653 pConfigurationStructs: *mut ::std::os::raw::c_void,
18654 pConfigurationStructSizes: *mut UINT,
18655 ) -> HRESULT;
18656}
18657extern "C" {
18658 pub static D3D12ExperimentalShaderModels: UUID;
18659}
18660extern "C" {
18661 pub static D3D12TiledResourceTier4: UUID;
18662}
18663extern "C" {
18664 pub static D3D12MetaCommand: UUID;
18665}
18666extern "C" {
18667 pub static CLSID_D3D12Debug: GUID;
18668}
18669extern "C" {
18670 pub static CLSID_D3D12Tools: GUID;
18671}
18672extern "C" {
18673 pub static CLSID_D3D12DeviceRemovedExtendedData: GUID;
18674}
18675extern "C" {
18676 pub static CLSID_D3D12SDKConfiguration: GUID;
18677}
18678pub type PFN_D3D12_GET_INTERFACE = ::std::option::Option<
18679 unsafe extern "C" fn(
18680 arg1: *const IID,
18681 arg2: *const IID,
18682 arg3: *mut *mut ::std::os::raw::c_void,
18683 ) -> HRESULT,
18684>;
18685extern "C" {
18686 pub fn D3D12GetInterface(
18687 rclsid: *const IID,
18688 riid: *const IID,
18689 ppvDebug: *mut *mut ::std::os::raw::c_void,
18690 ) -> HRESULT;
18691}
18692extern "C" {
18693 pub static IID_ID3D12SDKConfiguration: IID;
18694}
18695#[repr(C)]
18696#[derive(Debug, Default, Copy, Clone, Hash, PartialOrd, Ord, PartialEq, Eq)]
18697pub struct ID3D12SDKConfigurationVtbl {
18698 pub QueryInterface: ::std::option::Option<
18699 unsafe extern "C" fn(
18700 This: *mut ID3D12SDKConfiguration,
18701 riid: *const IID,
18702 ppvObject: *mut *mut ::std::os::raw::c_void,
18703 ) -> HRESULT,
18704 >,
18705 pub AddRef: ::std::option::Option<
18706 unsafe extern "C" fn(This: *mut ID3D12SDKConfiguration) -> ULONG,
18707 >,
18708 pub Release: ::std::option::Option<
18709 unsafe extern "C" fn(This: *mut ID3D12SDKConfiguration) -> ULONG,
18710 >,
18711 pub SetSDKVersion: ::std::option::Option<
18712 unsafe extern "C" fn(
18713 This: *mut ID3D12SDKConfiguration,
18714 SDKVersion: UINT,
18715 SDKPath: LPCSTR,
18716 ) -> HRESULT,
18717 >,
18718}
18719#[repr(C)]
18720#[derive(Debug, Copy, Clone, Hash, PartialOrd, Ord, PartialEq, Eq)]
18721pub struct ID3D12SDKConfiguration {
18722 pub lpVtbl: *mut ID3D12SDKConfigurationVtbl,
18723}
18724impl Default for ID3D12SDKConfiguration {
18725 fn default() -> Self {
18726 let mut s = ::std::mem::MaybeUninit::<Self>::uninit();
18727 unsafe {
18728 ::std::ptr::write_bytes(s.as_mut_ptr(), 0, 1);
18729 s.assume_init()
18730 }
18731 }
18732}
18733pub const D3D12_AXIS_SHADING_RATE_D3D12_AXIS_SHADING_RATE_1X:
18734 D3D12_AXIS_SHADING_RATE = 0;
18735pub const D3D12_AXIS_SHADING_RATE_D3D12_AXIS_SHADING_RATE_2X:
18736 D3D12_AXIS_SHADING_RATE = 1;
18737pub const D3D12_AXIS_SHADING_RATE_D3D12_AXIS_SHADING_RATE_4X:
18738 D3D12_AXIS_SHADING_RATE = 2;
18739pub type D3D12_AXIS_SHADING_RATE = ::std::os::raw::c_int;
18740pub const D3D12_SHADING_RATE_D3D12_SHADING_RATE_1X1: D3D12_SHADING_RATE = 0;
18741pub const D3D12_SHADING_RATE_D3D12_SHADING_RATE_1X2: D3D12_SHADING_RATE = 1;
18742pub const D3D12_SHADING_RATE_D3D12_SHADING_RATE_2X1: D3D12_SHADING_RATE = 4;
18743pub const D3D12_SHADING_RATE_D3D12_SHADING_RATE_2X2: D3D12_SHADING_RATE = 5;
18744pub const D3D12_SHADING_RATE_D3D12_SHADING_RATE_2X4: D3D12_SHADING_RATE = 6;
18745pub const D3D12_SHADING_RATE_D3D12_SHADING_RATE_4X2: D3D12_SHADING_RATE = 9;
18746pub const D3D12_SHADING_RATE_D3D12_SHADING_RATE_4X4: D3D12_SHADING_RATE = 10;
18747pub type D3D12_SHADING_RATE = ::std::os::raw::c_int;
18748pub const D3D12_SHADING_RATE_COMBINER_D3D12_SHADING_RATE_COMBINER_PASSTHROUGH : D3D12_SHADING_RATE_COMBINER = 0 ;
18749pub const D3D12_SHADING_RATE_COMBINER_D3D12_SHADING_RATE_COMBINER_OVERRIDE:
18750 D3D12_SHADING_RATE_COMBINER = 1;
18751pub const D3D12_SHADING_RATE_COMBINER_D3D12_SHADING_RATE_COMBINER_MIN:
18752 D3D12_SHADING_RATE_COMBINER = 2;
18753pub const D3D12_SHADING_RATE_COMBINER_D3D12_SHADING_RATE_COMBINER_MAX:
18754 D3D12_SHADING_RATE_COMBINER = 3;
18755pub const D3D12_SHADING_RATE_COMBINER_D3D12_SHADING_RATE_COMBINER_SUM:
18756 D3D12_SHADING_RATE_COMBINER = 4;
18757pub type D3D12_SHADING_RATE_COMBINER = ::std::os::raw::c_int;
18758extern "C" {
18759 pub static IID_ID3D12GraphicsCommandList5: IID;
18760}
18761#[repr(C)]
18762#[derive(Debug, Default, Copy, Clone, Hash, PartialOrd, Ord, PartialEq, Eq)]
18763pub struct ID3D12GraphicsCommandList5Vtbl { pub QueryInterface : :: std :: option :: Option < unsafe extern "C" fn (This : * mut ID3D12GraphicsCommandList5 , riid : * const IID , ppvObject : * mut * mut :: std :: os :: raw :: c_void) -> HRESULT > , pub AddRef : :: std :: option :: Option < unsafe extern "C" fn (This : * mut ID3D12GraphicsCommandList5) -> ULONG > , pub Release : :: std :: option :: Option < unsafe extern "C" fn (This : * mut ID3D12GraphicsCommandList5) -> ULONG > , pub GetPrivateData : :: std :: option :: Option < unsafe extern "C" fn (This : * mut ID3D12GraphicsCommandList5 , guid : * const GUID , pDataSize : * mut UINT , pData : * mut :: std :: os :: raw :: c_void) -> HRESULT > , pub SetPrivateData : :: std :: option :: Option < unsafe extern "C" fn (This : * mut ID3D12GraphicsCommandList5 , guid : * const GUID , DataSize : UINT , pData : * const :: std :: os :: raw :: c_void) -> HRESULT > , pub SetPrivateDataInterface : :: std :: option :: Option < unsafe extern "C" fn (This : * mut ID3D12GraphicsCommandList5 , guid : * const GUID , pData : * const IUnknown) -> HRESULT > , pub SetName : :: std :: option :: Option < unsafe extern "C" fn (This : * mut ID3D12GraphicsCommandList5 , Name : LPCWSTR) -> HRESULT > , pub GetDevice : :: std :: option :: Option < unsafe extern "C" fn (This : * mut ID3D12GraphicsCommandList5 , riid : * const IID , ppvDevice : * mut * mut :: std :: os :: raw :: c_void) -> HRESULT > , pub GetType : :: std :: option :: Option < unsafe extern "C" fn (This : * mut ID3D12GraphicsCommandList5) -> D3D12_COMMAND_LIST_TYPE > , pub Close : :: std :: option :: Option < unsafe extern "C" fn (This : * mut ID3D12GraphicsCommandList5) -> HRESULT > , pub Reset : :: std :: option :: Option < unsafe extern "C" fn (This : * mut ID3D12GraphicsCommandList5 , pAllocator : * mut ID3D12CommandAllocator , pInitialState : * mut ID3D12PipelineState) -> HRESULT > , pub ClearState : :: std :: option :: Option < unsafe extern "C" fn (This : * mut ID3D12GraphicsCommandList5 , pPipelineState : * mut ID3D12PipelineState) > , pub DrawInstanced : :: std :: option :: Option < unsafe extern "C" fn (This : * mut ID3D12GraphicsCommandList5 , VertexCountPerInstance : UINT , InstanceCount : UINT , StartVertexLocation : UINT , StartInstanceLocation : UINT) > , pub DrawIndexedInstanced : :: std :: option :: Option < unsafe extern "C" fn (This : * mut ID3D12GraphicsCommandList5 , IndexCountPerInstance : UINT , InstanceCount : UINT , StartIndexLocation : UINT , BaseVertexLocation : INT , StartInstanceLocation : UINT) > , pub Dispatch : :: std :: option :: Option < unsafe extern "C" fn (This : * mut ID3D12GraphicsCommandList5 , ThreadGroupCountX : UINT , ThreadGroupCountY : UINT , ThreadGroupCountZ : UINT) > , pub CopyBufferRegion : :: std :: option :: Option < unsafe extern "C" fn (This : * mut ID3D12GraphicsCommandList5 , pDstBuffer : * mut ID3D12Resource , DstOffset : UINT64 , pSrcBuffer : * mut ID3D12Resource , SrcOffset : UINT64 , NumBytes : UINT64) > , pub CopyTextureRegion : :: std :: option :: Option < unsafe extern "C" fn (This : * mut ID3D12GraphicsCommandList5 , pDst : * const D3D12_TEXTURE_COPY_LOCATION , DstX : UINT , DstY : UINT , DstZ : UINT , pSrc : * const D3D12_TEXTURE_COPY_LOCATION , pSrcBox : * const D3D12_BOX) > , pub CopyResource : :: std :: option :: Option < unsafe extern "C" fn (This : * mut ID3D12GraphicsCommandList5 , pDstResource : * mut ID3D12Resource , pSrcResource : * mut ID3D12Resource) > , pub CopyTiles : :: std :: option :: Option < unsafe extern "C" fn (This : * mut ID3D12GraphicsCommandList5 , pTiledResource : * mut ID3D12Resource , pTileRegionStartCoordinate : * const D3D12_TILED_RESOURCE_COORDINATE , pTileRegionSize : * const D3D12_TILE_REGION_SIZE , pBuffer : * mut ID3D12Resource , BufferStartOffsetInBytes : UINT64 , Flags : D3D12_TILE_COPY_FLAGS) > , pub ResolveSubresource : :: std :: option :: Option < unsafe extern "C" fn (This : * mut ID3D12GraphicsCommandList5 , pDstResource : * mut ID3D12Resource , DstSubresource : UINT , pSrcResource : * mut ID3D12Resource , SrcSubresource : UINT , Format : DXGI_FORMAT) > , pub IASetPrimitiveTopology : :: std :: option :: Option < unsafe extern "C" fn (This : * mut ID3D12GraphicsCommandList5 , PrimitiveTopology : D3D12_PRIMITIVE_TOPOLOGY) > , pub RSSetViewports : :: std :: option :: Option < unsafe extern "C" fn (This : * mut ID3D12GraphicsCommandList5 , NumViewports : UINT , pViewports : * const D3D12_VIEWPORT) > , pub RSSetScissorRects : :: std :: option :: Option < unsafe extern "C" fn (This : * mut ID3D12GraphicsCommandList5 , NumRects : UINT , pRects : * const D3D12_RECT) > , pub OMSetBlendFactor : :: std :: option :: Option < unsafe extern "C" fn (This : * mut ID3D12GraphicsCommandList5 , BlendFactor : * const FLOAT) > , pub OMSetStencilRef : :: std :: option :: Option < unsafe extern "C" fn (This : * mut ID3D12GraphicsCommandList5 , StencilRef : UINT) > , pub SetPipelineState : :: std :: option :: Option < unsafe extern "C" fn (This : * mut ID3D12GraphicsCommandList5 , pPipelineState : * mut ID3D12PipelineState) > , pub ResourceBarrier : :: std :: option :: Option < unsafe extern "C" fn (This : * mut ID3D12GraphicsCommandList5 , NumBarriers : UINT , pBarriers : * const D3D12_RESOURCE_BARRIER) > , pub ExecuteBundle : :: std :: option :: Option < unsafe extern "C" fn (This : * mut ID3D12GraphicsCommandList5 , pCommandList : * mut ID3D12GraphicsCommandList) > , pub SetDescriptorHeaps : :: std :: option :: Option < unsafe extern "C" fn (This : * mut ID3D12GraphicsCommandList5 , NumDescriptorHeaps : UINT , ppDescriptorHeaps : * const * mut ID3D12DescriptorHeap) > , pub SetComputeRootSignature : :: std :: option :: Option < unsafe extern "C" fn (This : * mut ID3D12GraphicsCommandList5 , pRootSignature : * mut ID3D12RootSignature) > , pub SetGraphicsRootSignature : :: std :: option :: Option < unsafe extern "C" fn (This : * mut ID3D12GraphicsCommandList5 , pRootSignature : * mut ID3D12RootSignature) > , pub SetComputeRootDescriptorTable : :: std :: option :: Option < unsafe extern "C" fn (This : * mut ID3D12GraphicsCommandList5 , RootParameterIndex : UINT , BaseDescriptor : D3D12_GPU_DESCRIPTOR_HANDLE) > , pub SetGraphicsRootDescriptorTable : :: std :: option :: Option < unsafe extern "C" fn (This : * mut ID3D12GraphicsCommandList5 , RootParameterIndex : UINT , BaseDescriptor : D3D12_GPU_DESCRIPTOR_HANDLE) > , pub SetComputeRoot32BitConstant : :: std :: option :: Option < unsafe extern "C" fn (This : * mut ID3D12GraphicsCommandList5 , RootParameterIndex : UINT , SrcData : UINT , DestOffsetIn32BitValues : UINT) > , pub SetGraphicsRoot32BitConstant : :: std :: option :: Option < unsafe extern "C" fn (This : * mut ID3D12GraphicsCommandList5 , RootParameterIndex : UINT , SrcData : UINT , DestOffsetIn32BitValues : UINT) > , pub SetComputeRoot32BitConstants : :: std :: option :: Option < unsafe extern "C" fn (This : * mut ID3D12GraphicsCommandList5 , RootParameterIndex : UINT , Num32BitValuesToSet : UINT , pSrcData : * const :: std :: os :: raw :: c_void , DestOffsetIn32BitValues : UINT) > , pub SetGraphicsRoot32BitConstants : :: std :: option :: Option < unsafe extern "C" fn (This : * mut ID3D12GraphicsCommandList5 , RootParameterIndex : UINT , Num32BitValuesToSet : UINT , pSrcData : * const :: std :: os :: raw :: c_void , DestOffsetIn32BitValues : UINT) > , pub SetComputeRootConstantBufferView : :: std :: option :: Option < unsafe extern "C" fn (This : * mut ID3D12GraphicsCommandList5 , RootParameterIndex : UINT , BufferLocation : D3D12_GPU_VIRTUAL_ADDRESS) > , pub SetGraphicsRootConstantBufferView : :: std :: option :: Option < unsafe extern "C" fn (This : * mut ID3D12GraphicsCommandList5 , RootParameterIndex : UINT , BufferLocation : D3D12_GPU_VIRTUAL_ADDRESS) > , pub SetComputeRootShaderResourceView : :: std :: option :: Option < unsafe extern "C" fn (This : * mut ID3D12GraphicsCommandList5 , RootParameterIndex : UINT , BufferLocation : D3D12_GPU_VIRTUAL_ADDRESS) > , pub SetGraphicsRootShaderResourceView : :: std :: option :: Option < unsafe extern "C" fn (This : * mut ID3D12GraphicsCommandList5 , RootParameterIndex : UINT , BufferLocation : D3D12_GPU_VIRTUAL_ADDRESS) > , pub SetComputeRootUnorderedAccessView : :: std :: option :: Option < unsafe extern "C" fn (This : * mut ID3D12GraphicsCommandList5 , RootParameterIndex : UINT , BufferLocation : D3D12_GPU_VIRTUAL_ADDRESS) > , pub SetGraphicsRootUnorderedAccessView : :: std :: option :: Option < unsafe extern "C" fn (This : * mut ID3D12GraphicsCommandList5 , RootParameterIndex : UINT , BufferLocation : D3D12_GPU_VIRTUAL_ADDRESS) > , pub IASetIndexBuffer : :: std :: option :: Option < unsafe extern "C" fn (This : * mut ID3D12GraphicsCommandList5 , pView : * const D3D12_INDEX_BUFFER_VIEW) > , pub IASetVertexBuffers : :: std :: option :: Option < unsafe extern "C" fn (This : * mut ID3D12GraphicsCommandList5 , StartSlot : UINT , NumViews : UINT , pViews : * const D3D12_VERTEX_BUFFER_VIEW) > , pub SOSetTargets : :: std :: option :: Option < unsafe extern "C" fn (This : * mut ID3D12GraphicsCommandList5 , StartSlot : UINT , NumViews : UINT , pViews : * const D3D12_STREAM_OUTPUT_BUFFER_VIEW) > , pub OMSetRenderTargets : :: std :: option :: Option < unsafe extern "C" fn (This : * mut ID3D12GraphicsCommandList5 , NumRenderTargetDescriptors : UINT , pRenderTargetDescriptors : * const D3D12_CPU_DESCRIPTOR_HANDLE , RTsSingleHandleToDescriptorRange : BOOL , pDepthStencilDescriptor : * const D3D12_CPU_DESCRIPTOR_HANDLE) > , pub ClearDepthStencilView : :: std :: option :: Option < unsafe extern "C" fn (This : * mut ID3D12GraphicsCommandList5 , DepthStencilView : D3D12_CPU_DESCRIPTOR_HANDLE , ClearFlags : D3D12_CLEAR_FLAGS , Depth : FLOAT , Stencil : UINT8 , NumRects : UINT , pRects : * const D3D12_RECT) > , pub ClearRenderTargetView : :: std :: option :: Option < unsafe extern "C" fn (This : * mut ID3D12GraphicsCommandList5 , RenderTargetView : D3D12_CPU_DESCRIPTOR_HANDLE , ColorRGBA : * const FLOAT , NumRects : UINT , pRects : * const D3D12_RECT) > , pub ClearUnorderedAccessViewUint : :: std :: option :: Option < unsafe extern "C" fn (This : * mut ID3D12GraphicsCommandList5 , ViewGPUHandleInCurrentHeap : D3D12_GPU_DESCRIPTOR_HANDLE , ViewCPUHandle : D3D12_CPU_DESCRIPTOR_HANDLE , pResource : * mut ID3D12Resource , Values : * const UINT , NumRects : UINT , pRects : * const D3D12_RECT) > , pub ClearUnorderedAccessViewFloat : :: std :: option :: Option < unsafe extern "C" fn (This : * mut ID3D12GraphicsCommandList5 , ViewGPUHandleInCurrentHeap : D3D12_GPU_DESCRIPTOR_HANDLE , ViewCPUHandle : D3D12_CPU_DESCRIPTOR_HANDLE , pResource : * mut ID3D12Resource , Values : * const FLOAT , NumRects : UINT , pRects : * const D3D12_RECT) > , pub DiscardResource : :: std :: option :: Option < unsafe extern "C" fn (This : * mut ID3D12GraphicsCommandList5 , pResource : * mut ID3D12Resource , pRegion : * const D3D12_DISCARD_REGION) > , pub BeginQuery : :: std :: option :: Option < unsafe extern "C" fn (This : * mut ID3D12GraphicsCommandList5 , pQueryHeap : * mut ID3D12QueryHeap , Type : D3D12_QUERY_TYPE , Index : UINT) > , pub EndQuery : :: std :: option :: Option < unsafe extern "C" fn (This : * mut ID3D12GraphicsCommandList5 , pQueryHeap : * mut ID3D12QueryHeap , Type : D3D12_QUERY_TYPE , Index : UINT) > , pub ResolveQueryData : :: std :: option :: Option < unsafe extern "C" fn (This : * mut ID3D12GraphicsCommandList5 , pQueryHeap : * mut ID3D12QueryHeap , Type : D3D12_QUERY_TYPE , StartIndex : UINT , NumQueries : UINT , pDestinationBuffer : * mut ID3D12Resource , AlignedDestinationBufferOffset : UINT64) > , pub SetPredication : :: std :: option :: Option < unsafe extern "C" fn (This : * mut ID3D12GraphicsCommandList5 , pBuffer : * mut ID3D12Resource , AlignedBufferOffset : UINT64 , Operation : D3D12_PREDICATION_OP) > , pub SetMarker : :: std :: option :: Option < unsafe extern "C" fn (This : * mut ID3D12GraphicsCommandList5 , Metadata : UINT , pData : * const :: std :: os :: raw :: c_void , Size : UINT) > , pub BeginEvent : :: std :: option :: Option < unsafe extern "C" fn (This : * mut ID3D12GraphicsCommandList5 , Metadata : UINT , pData : * const :: std :: os :: raw :: c_void , Size : UINT) > , pub EndEvent : :: std :: option :: Option < unsafe extern "C" fn (This : * mut ID3D12GraphicsCommandList5) > , pub ExecuteIndirect : :: std :: option :: Option < unsafe extern "C" fn (This : * mut ID3D12GraphicsCommandList5 , pCommandSignature : * mut ID3D12CommandSignature , MaxCommandCount : UINT , pArgumentBuffer : * mut ID3D12Resource , ArgumentBufferOffset : UINT64 , pCountBuffer : * mut ID3D12Resource , CountBufferOffset : UINT64) > , pub AtomicCopyBufferUINT : :: std :: option :: Option < unsafe extern "C" fn (This : * mut ID3D12GraphicsCommandList5 , pDstBuffer : * mut ID3D12Resource , DstOffset : UINT64 , pSrcBuffer : * mut ID3D12Resource , SrcOffset : UINT64 , Dependencies : UINT , ppDependentResources : * const * mut ID3D12Resource , pDependentSubresourceRanges : * const D3D12_SUBRESOURCE_RANGE_UINT64) > , pub AtomicCopyBufferUINT64 : :: std :: option :: Option < unsafe extern "C" fn (This : * mut ID3D12GraphicsCommandList5 , pDstBuffer : * mut ID3D12Resource , DstOffset : UINT64 , pSrcBuffer : * mut ID3D12Resource , SrcOffset : UINT64 , Dependencies : UINT , ppDependentResources : * const * mut ID3D12Resource , pDependentSubresourceRanges : * const D3D12_SUBRESOURCE_RANGE_UINT64) > , pub OMSetDepthBounds : :: std :: option :: Option < unsafe extern "C" fn (This : * mut ID3D12GraphicsCommandList5 , Min : FLOAT , Max : FLOAT) > , pub SetSamplePositions : :: std :: option :: Option < unsafe extern "C" fn (This : * mut ID3D12GraphicsCommandList5 , NumSamplesPerPixel : UINT , NumPixels : UINT , pSamplePositions : * mut D3D12_SAMPLE_POSITION) > , pub ResolveSubresourceRegion : :: std :: option :: Option < unsafe extern "C" fn (This : * mut ID3D12GraphicsCommandList5 , pDstResource : * mut ID3D12Resource , DstSubresource : UINT , DstX : UINT , DstY : UINT , pSrcResource : * mut ID3D12Resource , SrcSubresource : UINT , pSrcRect : * mut D3D12_RECT , Format : DXGI_FORMAT , ResolveMode : D3D12_RESOLVE_MODE) > , pub SetViewInstanceMask : :: std :: option :: Option < unsafe extern "C" fn (This : * mut ID3D12GraphicsCommandList5 , Mask : UINT) > , pub WriteBufferImmediate : :: std :: option :: Option < unsafe extern "C" fn (This : * mut ID3D12GraphicsCommandList5 , Count : UINT , pParams : * const D3D12_WRITEBUFFERIMMEDIATE_PARAMETER , pModes : * const D3D12_WRITEBUFFERIMMEDIATE_MODE) > , pub SetProtectedResourceSession : :: std :: option :: Option < unsafe extern "C" fn (This : * mut ID3D12GraphicsCommandList5 , pProtectedResourceSession : * mut ID3D12ProtectedResourceSession) > , pub BeginRenderPass : :: std :: option :: Option < unsafe extern "C" fn (This : * mut ID3D12GraphicsCommandList5 , NumRenderTargets : UINT , pRenderTargets : * const D3D12_RENDER_PASS_RENDER_TARGET_DESC , pDepthStencil : * const D3D12_RENDER_PASS_DEPTH_STENCIL_DESC , Flags : D3D12_RENDER_PASS_FLAGS) > , pub EndRenderPass : :: std :: option :: Option < unsafe extern "C" fn (This : * mut ID3D12GraphicsCommandList5) > , pub InitializeMetaCommand : :: std :: option :: Option < unsafe extern "C" fn (This : * mut ID3D12GraphicsCommandList5 , pMetaCommand : * mut ID3D12MetaCommand , pInitializationParametersData : * const :: std :: os :: raw :: c_void , InitializationParametersDataSizeInBytes : SIZE_T) > , pub ExecuteMetaCommand : :: std :: option :: Option < unsafe extern "C" fn (This : * mut ID3D12GraphicsCommandList5 , pMetaCommand : * mut ID3D12MetaCommand , pExecutionParametersData : * const :: std :: os :: raw :: c_void , ExecutionParametersDataSizeInBytes : SIZE_T) > , pub BuildRaytracingAccelerationStructure : :: std :: option :: Option < unsafe extern "C" fn (This : * mut ID3D12GraphicsCommandList5 , pDesc : * const D3D12_BUILD_RAYTRACING_ACCELERATION_STRUCTURE_DESC , NumPostbuildInfoDescs : UINT , pPostbuildInfoDescs : * const D3D12_RAYTRACING_ACCELERATION_STRUCTURE_POSTBUILD_INFO_DESC) > , pub EmitRaytracingAccelerationStructurePostbuildInfo : :: std :: option :: Option < unsafe extern "C" fn (This : * mut ID3D12GraphicsCommandList5 , pDesc : * const D3D12_RAYTRACING_ACCELERATION_STRUCTURE_POSTBUILD_INFO_DESC , NumSourceAccelerationStructures : UINT , pSourceAccelerationStructureData : * const D3D12_GPU_VIRTUAL_ADDRESS) > , pub CopyRaytracingAccelerationStructure : :: std :: option :: Option < unsafe extern "C" fn (This : * mut ID3D12GraphicsCommandList5 , DestAccelerationStructureData : D3D12_GPU_VIRTUAL_ADDRESS , SourceAccelerationStructureData : D3D12_GPU_VIRTUAL_ADDRESS , Mode : D3D12_RAYTRACING_ACCELERATION_STRUCTURE_COPY_MODE) > , pub SetPipelineState1 : :: std :: option :: Option < unsafe extern "C" fn (This : * mut ID3D12GraphicsCommandList5 , pStateObject : * mut ID3D12StateObject) > , pub DispatchRays : :: std :: option :: Option < unsafe extern "C" fn (This : * mut ID3D12GraphicsCommandList5 , pDesc : * const D3D12_DISPATCH_RAYS_DESC) > , pub RSSetShadingRate : :: std :: option :: Option < unsafe extern "C" fn (This : * mut ID3D12GraphicsCommandList5 , baseShadingRate : D3D12_SHADING_RATE , combiners : * const D3D12_SHADING_RATE_COMBINER) > , pub RSSetShadingRateImage : :: std :: option :: Option < unsafe extern "C" fn (This : * mut ID3D12GraphicsCommandList5 , shadingRateImage : * mut ID3D12Resource) > , }
18764#[repr(C)]
18765#[derive(Debug, Copy, Clone, Hash, PartialOrd, Ord, PartialEq, Eq)]
18766pub struct ID3D12GraphicsCommandList5 {
18767 pub lpVtbl: *mut ID3D12GraphicsCommandList5Vtbl,
18768}
18769impl Default for ID3D12GraphicsCommandList5 {
18770 fn default() -> Self {
18771 let mut s = ::std::mem::MaybeUninit::<Self>::uninit();
18772 unsafe {
18773 ::std::ptr::write_bytes(s.as_mut_ptr(), 0, 1);
18774 s.assume_init()
18775 }
18776 }
18777}
18778#[repr(C)]
18779#[derive(Debug, Default, Copy, Clone, Hash, PartialOrd, Ord, PartialEq, Eq)]
18780pub struct D3D12_DISPATCH_MESH_ARGUMENTS {
18781 pub ThreadGroupCountX: UINT,
18782 pub ThreadGroupCountY: UINT,
18783 pub ThreadGroupCountZ: UINT,
18784}
18785extern "C" {
18786 pub static IID_ID3D12GraphicsCommandList6: IID;
18787}
18788#[repr(C)]
18789#[derive(Debug, Default, Copy, Clone, Hash, PartialOrd, Ord, PartialEq, Eq)]
18790pub struct ID3D12GraphicsCommandList6Vtbl { pub QueryInterface : :: std :: option :: Option < unsafe extern "C" fn (This : * mut ID3D12GraphicsCommandList6 , riid : * const IID , ppvObject : * mut * mut :: std :: os :: raw :: c_void) -> HRESULT > , pub AddRef : :: std :: option :: Option < unsafe extern "C" fn (This : * mut ID3D12GraphicsCommandList6) -> ULONG > , pub Release : :: std :: option :: Option < unsafe extern "C" fn (This : * mut ID3D12GraphicsCommandList6) -> ULONG > , pub GetPrivateData : :: std :: option :: Option < unsafe extern "C" fn (This : * mut ID3D12GraphicsCommandList6 , guid : * const GUID , pDataSize : * mut UINT , pData : * mut :: std :: os :: raw :: c_void) -> HRESULT > , pub SetPrivateData : :: std :: option :: Option < unsafe extern "C" fn (This : * mut ID3D12GraphicsCommandList6 , guid : * const GUID , DataSize : UINT , pData : * const :: std :: os :: raw :: c_void) -> HRESULT > , pub SetPrivateDataInterface : :: std :: option :: Option < unsafe extern "C" fn (This : * mut ID3D12GraphicsCommandList6 , guid : * const GUID , pData : * const IUnknown) -> HRESULT > , pub SetName : :: std :: option :: Option < unsafe extern "C" fn (This : * mut ID3D12GraphicsCommandList6 , Name : LPCWSTR) -> HRESULT > , pub GetDevice : :: std :: option :: Option < unsafe extern "C" fn (This : * mut ID3D12GraphicsCommandList6 , riid : * const IID , ppvDevice : * mut * mut :: std :: os :: raw :: c_void) -> HRESULT > , pub GetType : :: std :: option :: Option < unsafe extern "C" fn (This : * mut ID3D12GraphicsCommandList6) -> D3D12_COMMAND_LIST_TYPE > , pub Close : :: std :: option :: Option < unsafe extern "C" fn (This : * mut ID3D12GraphicsCommandList6) -> HRESULT > , pub Reset : :: std :: option :: Option < unsafe extern "C" fn (This : * mut ID3D12GraphicsCommandList6 , pAllocator : * mut ID3D12CommandAllocator , pInitialState : * mut ID3D12PipelineState) -> HRESULT > , pub ClearState : :: std :: option :: Option < unsafe extern "C" fn (This : * mut ID3D12GraphicsCommandList6 , pPipelineState : * mut ID3D12PipelineState) > , pub DrawInstanced : :: std :: option :: Option < unsafe extern "C" fn (This : * mut ID3D12GraphicsCommandList6 , VertexCountPerInstance : UINT , InstanceCount : UINT , StartVertexLocation : UINT , StartInstanceLocation : UINT) > , pub DrawIndexedInstanced : :: std :: option :: Option < unsafe extern "C" fn (This : * mut ID3D12GraphicsCommandList6 , IndexCountPerInstance : UINT , InstanceCount : UINT , StartIndexLocation : UINT , BaseVertexLocation : INT , StartInstanceLocation : UINT) > , pub Dispatch : :: std :: option :: Option < unsafe extern "C" fn (This : * mut ID3D12GraphicsCommandList6 , ThreadGroupCountX : UINT , ThreadGroupCountY : UINT , ThreadGroupCountZ : UINT) > , pub CopyBufferRegion : :: std :: option :: Option < unsafe extern "C" fn (This : * mut ID3D12GraphicsCommandList6 , pDstBuffer : * mut ID3D12Resource , DstOffset : UINT64 , pSrcBuffer : * mut ID3D12Resource , SrcOffset : UINT64 , NumBytes : UINT64) > , pub CopyTextureRegion : :: std :: option :: Option < unsafe extern "C" fn (This : * mut ID3D12GraphicsCommandList6 , pDst : * const D3D12_TEXTURE_COPY_LOCATION , DstX : UINT , DstY : UINT , DstZ : UINT , pSrc : * const D3D12_TEXTURE_COPY_LOCATION , pSrcBox : * const D3D12_BOX) > , pub CopyResource : :: std :: option :: Option < unsafe extern "C" fn (This : * mut ID3D12GraphicsCommandList6 , pDstResource : * mut ID3D12Resource , pSrcResource : * mut ID3D12Resource) > , pub CopyTiles : :: std :: option :: Option < unsafe extern "C" fn (This : * mut ID3D12GraphicsCommandList6 , pTiledResource : * mut ID3D12Resource , pTileRegionStartCoordinate : * const D3D12_TILED_RESOURCE_COORDINATE , pTileRegionSize : * const D3D12_TILE_REGION_SIZE , pBuffer : * mut ID3D12Resource , BufferStartOffsetInBytes : UINT64 , Flags : D3D12_TILE_COPY_FLAGS) > , pub ResolveSubresource : :: std :: option :: Option < unsafe extern "C" fn (This : * mut ID3D12GraphicsCommandList6 , pDstResource : * mut ID3D12Resource , DstSubresource : UINT , pSrcResource : * mut ID3D12Resource , SrcSubresource : UINT , Format : DXGI_FORMAT) > , pub IASetPrimitiveTopology : :: std :: option :: Option < unsafe extern "C" fn (This : * mut ID3D12GraphicsCommandList6 , PrimitiveTopology : D3D12_PRIMITIVE_TOPOLOGY) > , pub RSSetViewports : :: std :: option :: Option < unsafe extern "C" fn (This : * mut ID3D12GraphicsCommandList6 , NumViewports : UINT , pViewports : * const D3D12_VIEWPORT) > , pub RSSetScissorRects : :: std :: option :: Option < unsafe extern "C" fn (This : * mut ID3D12GraphicsCommandList6 , NumRects : UINT , pRects : * const D3D12_RECT) > , pub OMSetBlendFactor : :: std :: option :: Option < unsafe extern "C" fn (This : * mut ID3D12GraphicsCommandList6 , BlendFactor : * const FLOAT) > , pub OMSetStencilRef : :: std :: option :: Option < unsafe extern "C" fn (This : * mut ID3D12GraphicsCommandList6 , StencilRef : UINT) > , pub SetPipelineState : :: std :: option :: Option < unsafe extern "C" fn (This : * mut ID3D12GraphicsCommandList6 , pPipelineState : * mut ID3D12PipelineState) > , pub ResourceBarrier : :: std :: option :: Option < unsafe extern "C" fn (This : * mut ID3D12GraphicsCommandList6 , NumBarriers : UINT , pBarriers : * const D3D12_RESOURCE_BARRIER) > , pub ExecuteBundle : :: std :: option :: Option < unsafe extern "C" fn (This : * mut ID3D12GraphicsCommandList6 , pCommandList : * mut ID3D12GraphicsCommandList) > , pub SetDescriptorHeaps : :: std :: option :: Option < unsafe extern "C" fn (This : * mut ID3D12GraphicsCommandList6 , NumDescriptorHeaps : UINT , ppDescriptorHeaps : * const * mut ID3D12DescriptorHeap) > , pub SetComputeRootSignature : :: std :: option :: Option < unsafe extern "C" fn (This : * mut ID3D12GraphicsCommandList6 , pRootSignature : * mut ID3D12RootSignature) > , pub SetGraphicsRootSignature : :: std :: option :: Option < unsafe extern "C" fn (This : * mut ID3D12GraphicsCommandList6 , pRootSignature : * mut ID3D12RootSignature) > , pub SetComputeRootDescriptorTable : :: std :: option :: Option < unsafe extern "C" fn (This : * mut ID3D12GraphicsCommandList6 , RootParameterIndex : UINT , BaseDescriptor : D3D12_GPU_DESCRIPTOR_HANDLE) > , pub SetGraphicsRootDescriptorTable : :: std :: option :: Option < unsafe extern "C" fn (This : * mut ID3D12GraphicsCommandList6 , RootParameterIndex : UINT , BaseDescriptor : D3D12_GPU_DESCRIPTOR_HANDLE) > , pub SetComputeRoot32BitConstant : :: std :: option :: Option < unsafe extern "C" fn (This : * mut ID3D12GraphicsCommandList6 , RootParameterIndex : UINT , SrcData : UINT , DestOffsetIn32BitValues : UINT) > , pub SetGraphicsRoot32BitConstant : :: std :: option :: Option < unsafe extern "C" fn (This : * mut ID3D12GraphicsCommandList6 , RootParameterIndex : UINT , SrcData : UINT , DestOffsetIn32BitValues : UINT) > , pub SetComputeRoot32BitConstants : :: std :: option :: Option < unsafe extern "C" fn (This : * mut ID3D12GraphicsCommandList6 , RootParameterIndex : UINT , Num32BitValuesToSet : UINT , pSrcData : * const :: std :: os :: raw :: c_void , DestOffsetIn32BitValues : UINT) > , pub SetGraphicsRoot32BitConstants : :: std :: option :: Option < unsafe extern "C" fn (This : * mut ID3D12GraphicsCommandList6 , RootParameterIndex : UINT , Num32BitValuesToSet : UINT , pSrcData : * const :: std :: os :: raw :: c_void , DestOffsetIn32BitValues : UINT) > , pub SetComputeRootConstantBufferView : :: std :: option :: Option < unsafe extern "C" fn (This : * mut ID3D12GraphicsCommandList6 , RootParameterIndex : UINT , BufferLocation : D3D12_GPU_VIRTUAL_ADDRESS) > , pub SetGraphicsRootConstantBufferView : :: std :: option :: Option < unsafe extern "C" fn (This : * mut ID3D12GraphicsCommandList6 , RootParameterIndex : UINT , BufferLocation : D3D12_GPU_VIRTUAL_ADDRESS) > , pub SetComputeRootShaderResourceView : :: std :: option :: Option < unsafe extern "C" fn (This : * mut ID3D12GraphicsCommandList6 , RootParameterIndex : UINT , BufferLocation : D3D12_GPU_VIRTUAL_ADDRESS) > , pub SetGraphicsRootShaderResourceView : :: std :: option :: Option < unsafe extern "C" fn (This : * mut ID3D12GraphicsCommandList6 , RootParameterIndex : UINT , BufferLocation : D3D12_GPU_VIRTUAL_ADDRESS) > , pub SetComputeRootUnorderedAccessView : :: std :: option :: Option < unsafe extern "C" fn (This : * mut ID3D12GraphicsCommandList6 , RootParameterIndex : UINT , BufferLocation : D3D12_GPU_VIRTUAL_ADDRESS) > , pub SetGraphicsRootUnorderedAccessView : :: std :: option :: Option < unsafe extern "C" fn (This : * mut ID3D12GraphicsCommandList6 , RootParameterIndex : UINT , BufferLocation : D3D12_GPU_VIRTUAL_ADDRESS) > , pub IASetIndexBuffer : :: std :: option :: Option < unsafe extern "C" fn (This : * mut ID3D12GraphicsCommandList6 , pView : * const D3D12_INDEX_BUFFER_VIEW) > , pub IASetVertexBuffers : :: std :: option :: Option < unsafe extern "C" fn (This : * mut ID3D12GraphicsCommandList6 , StartSlot : UINT , NumViews : UINT , pViews : * const D3D12_VERTEX_BUFFER_VIEW) > , pub SOSetTargets : :: std :: option :: Option < unsafe extern "C" fn (This : * mut ID3D12GraphicsCommandList6 , StartSlot : UINT , NumViews : UINT , pViews : * const D3D12_STREAM_OUTPUT_BUFFER_VIEW) > , pub OMSetRenderTargets : :: std :: option :: Option < unsafe extern "C" fn (This : * mut ID3D12GraphicsCommandList6 , NumRenderTargetDescriptors : UINT , pRenderTargetDescriptors : * const D3D12_CPU_DESCRIPTOR_HANDLE , RTsSingleHandleToDescriptorRange : BOOL , pDepthStencilDescriptor : * const D3D12_CPU_DESCRIPTOR_HANDLE) > , pub ClearDepthStencilView : :: std :: option :: Option < unsafe extern "C" fn (This : * mut ID3D12GraphicsCommandList6 , DepthStencilView : D3D12_CPU_DESCRIPTOR_HANDLE , ClearFlags : D3D12_CLEAR_FLAGS , Depth : FLOAT , Stencil : UINT8 , NumRects : UINT , pRects : * const D3D12_RECT) > , pub ClearRenderTargetView : :: std :: option :: Option < unsafe extern "C" fn (This : * mut ID3D12GraphicsCommandList6 , RenderTargetView : D3D12_CPU_DESCRIPTOR_HANDLE , ColorRGBA : * const FLOAT , NumRects : UINT , pRects : * const D3D12_RECT) > , pub ClearUnorderedAccessViewUint : :: std :: option :: Option < unsafe extern "C" fn (This : * mut ID3D12GraphicsCommandList6 , ViewGPUHandleInCurrentHeap : D3D12_GPU_DESCRIPTOR_HANDLE , ViewCPUHandle : D3D12_CPU_DESCRIPTOR_HANDLE , pResource : * mut ID3D12Resource , Values : * const UINT , NumRects : UINT , pRects : * const D3D12_RECT) > , pub ClearUnorderedAccessViewFloat : :: std :: option :: Option < unsafe extern "C" fn (This : * mut ID3D12GraphicsCommandList6 , ViewGPUHandleInCurrentHeap : D3D12_GPU_DESCRIPTOR_HANDLE , ViewCPUHandle : D3D12_CPU_DESCRIPTOR_HANDLE , pResource : * mut ID3D12Resource , Values : * const FLOAT , NumRects : UINT , pRects : * const D3D12_RECT) > , pub DiscardResource : :: std :: option :: Option < unsafe extern "C" fn (This : * mut ID3D12GraphicsCommandList6 , pResource : * mut ID3D12Resource , pRegion : * const D3D12_DISCARD_REGION) > , pub BeginQuery : :: std :: option :: Option < unsafe extern "C" fn (This : * mut ID3D12GraphicsCommandList6 , pQueryHeap : * mut ID3D12QueryHeap , Type : D3D12_QUERY_TYPE , Index : UINT) > , pub EndQuery : :: std :: option :: Option < unsafe extern "C" fn (This : * mut ID3D12GraphicsCommandList6 , pQueryHeap : * mut ID3D12QueryHeap , Type : D3D12_QUERY_TYPE , Index : UINT) > , pub ResolveQueryData : :: std :: option :: Option < unsafe extern "C" fn (This : * mut ID3D12GraphicsCommandList6 , pQueryHeap : * mut ID3D12QueryHeap , Type : D3D12_QUERY_TYPE , StartIndex : UINT , NumQueries : UINT , pDestinationBuffer : * mut ID3D12Resource , AlignedDestinationBufferOffset : UINT64) > , pub SetPredication : :: std :: option :: Option < unsafe extern "C" fn (This : * mut ID3D12GraphicsCommandList6 , pBuffer : * mut ID3D12Resource , AlignedBufferOffset : UINT64 , Operation : D3D12_PREDICATION_OP) > , pub SetMarker : :: std :: option :: Option < unsafe extern "C" fn (This : * mut ID3D12GraphicsCommandList6 , Metadata : UINT , pData : * const :: std :: os :: raw :: c_void , Size : UINT) > , pub BeginEvent : :: std :: option :: Option < unsafe extern "C" fn (This : * mut ID3D12GraphicsCommandList6 , Metadata : UINT , pData : * const :: std :: os :: raw :: c_void , Size : UINT) > , pub EndEvent : :: std :: option :: Option < unsafe extern "C" fn (This : * mut ID3D12GraphicsCommandList6) > , pub ExecuteIndirect : :: std :: option :: Option < unsafe extern "C" fn (This : * mut ID3D12GraphicsCommandList6 , pCommandSignature : * mut ID3D12CommandSignature , MaxCommandCount : UINT , pArgumentBuffer : * mut ID3D12Resource , ArgumentBufferOffset : UINT64 , pCountBuffer : * mut ID3D12Resource , CountBufferOffset : UINT64) > , pub AtomicCopyBufferUINT : :: std :: option :: Option < unsafe extern "C" fn (This : * mut ID3D12GraphicsCommandList6 , pDstBuffer : * mut ID3D12Resource , DstOffset : UINT64 , pSrcBuffer : * mut ID3D12Resource , SrcOffset : UINT64 , Dependencies : UINT , ppDependentResources : * const * mut ID3D12Resource , pDependentSubresourceRanges : * const D3D12_SUBRESOURCE_RANGE_UINT64) > , pub AtomicCopyBufferUINT64 : :: std :: option :: Option < unsafe extern "C" fn (This : * mut ID3D12GraphicsCommandList6 , pDstBuffer : * mut ID3D12Resource , DstOffset : UINT64 , pSrcBuffer : * mut ID3D12Resource , SrcOffset : UINT64 , Dependencies : UINT , ppDependentResources : * const * mut ID3D12Resource , pDependentSubresourceRanges : * const D3D12_SUBRESOURCE_RANGE_UINT64) > , pub OMSetDepthBounds : :: std :: option :: Option < unsafe extern "C" fn (This : * mut ID3D12GraphicsCommandList6 , Min : FLOAT , Max : FLOAT) > , pub SetSamplePositions : :: std :: option :: Option < unsafe extern "C" fn (This : * mut ID3D12GraphicsCommandList6 , NumSamplesPerPixel : UINT , NumPixels : UINT , pSamplePositions : * mut D3D12_SAMPLE_POSITION) > , pub ResolveSubresourceRegion : :: std :: option :: Option < unsafe extern "C" fn (This : * mut ID3D12GraphicsCommandList6 , pDstResource : * mut ID3D12Resource , DstSubresource : UINT , DstX : UINT , DstY : UINT , pSrcResource : * mut ID3D12Resource , SrcSubresource : UINT , pSrcRect : * mut D3D12_RECT , Format : DXGI_FORMAT , ResolveMode : D3D12_RESOLVE_MODE) > , pub SetViewInstanceMask : :: std :: option :: Option < unsafe extern "C" fn (This : * mut ID3D12GraphicsCommandList6 , Mask : UINT) > , pub WriteBufferImmediate : :: std :: option :: Option < unsafe extern "C" fn (This : * mut ID3D12GraphicsCommandList6 , Count : UINT , pParams : * const D3D12_WRITEBUFFERIMMEDIATE_PARAMETER , pModes : * const D3D12_WRITEBUFFERIMMEDIATE_MODE) > , pub SetProtectedResourceSession : :: std :: option :: Option < unsafe extern "C" fn (This : * mut ID3D12GraphicsCommandList6 , pProtectedResourceSession : * mut ID3D12ProtectedResourceSession) > , pub BeginRenderPass : :: std :: option :: Option < unsafe extern "C" fn (This : * mut ID3D12GraphicsCommandList6 , NumRenderTargets : UINT , pRenderTargets : * const D3D12_RENDER_PASS_RENDER_TARGET_DESC , pDepthStencil : * const D3D12_RENDER_PASS_DEPTH_STENCIL_DESC , Flags : D3D12_RENDER_PASS_FLAGS) > , pub EndRenderPass : :: std :: option :: Option < unsafe extern "C" fn (This : * mut ID3D12GraphicsCommandList6) > , pub InitializeMetaCommand : :: std :: option :: Option < unsafe extern "C" fn (This : * mut ID3D12GraphicsCommandList6 , pMetaCommand : * mut ID3D12MetaCommand , pInitializationParametersData : * const :: std :: os :: raw :: c_void , InitializationParametersDataSizeInBytes : SIZE_T) > , pub ExecuteMetaCommand : :: std :: option :: Option < unsafe extern "C" fn (This : * mut ID3D12GraphicsCommandList6 , pMetaCommand : * mut ID3D12MetaCommand , pExecutionParametersData : * const :: std :: os :: raw :: c_void , ExecutionParametersDataSizeInBytes : SIZE_T) > , pub BuildRaytracingAccelerationStructure : :: std :: option :: Option < unsafe extern "C" fn (This : * mut ID3D12GraphicsCommandList6 , pDesc : * const D3D12_BUILD_RAYTRACING_ACCELERATION_STRUCTURE_DESC , NumPostbuildInfoDescs : UINT , pPostbuildInfoDescs : * const D3D12_RAYTRACING_ACCELERATION_STRUCTURE_POSTBUILD_INFO_DESC) > , pub EmitRaytracingAccelerationStructurePostbuildInfo : :: std :: option :: Option < unsafe extern "C" fn (This : * mut ID3D12GraphicsCommandList6 , pDesc : * const D3D12_RAYTRACING_ACCELERATION_STRUCTURE_POSTBUILD_INFO_DESC , NumSourceAccelerationStructures : UINT , pSourceAccelerationStructureData : * const D3D12_GPU_VIRTUAL_ADDRESS) > , pub CopyRaytracingAccelerationStructure : :: std :: option :: Option < unsafe extern "C" fn (This : * mut ID3D12GraphicsCommandList6 , DestAccelerationStructureData : D3D12_GPU_VIRTUAL_ADDRESS , SourceAccelerationStructureData : D3D12_GPU_VIRTUAL_ADDRESS , Mode : D3D12_RAYTRACING_ACCELERATION_STRUCTURE_COPY_MODE) > , pub SetPipelineState1 : :: std :: option :: Option < unsafe extern "C" fn (This : * mut ID3D12GraphicsCommandList6 , pStateObject : * mut ID3D12StateObject) > , pub DispatchRays : :: std :: option :: Option < unsafe extern "C" fn (This : * mut ID3D12GraphicsCommandList6 , pDesc : * const D3D12_DISPATCH_RAYS_DESC) > , pub RSSetShadingRate : :: std :: option :: Option < unsafe extern "C" fn (This : * mut ID3D12GraphicsCommandList6 , baseShadingRate : D3D12_SHADING_RATE , combiners : * const D3D12_SHADING_RATE_COMBINER) > , pub RSSetShadingRateImage : :: std :: option :: Option < unsafe extern "C" fn (This : * mut ID3D12GraphicsCommandList6 , shadingRateImage : * mut ID3D12Resource) > , pub DispatchMesh : :: std :: option :: Option < unsafe extern "C" fn (This : * mut ID3D12GraphicsCommandList6 , ThreadGroupCountX : UINT , ThreadGroupCountY : UINT , ThreadGroupCountZ : UINT) > , }
18791#[repr(C)]
18792#[derive(Debug, Copy, Clone, Hash, PartialOrd, Ord, PartialEq, Eq)]
18793pub struct ID3D12GraphicsCommandList6 {
18794 pub lpVtbl: *mut ID3D12GraphicsCommandList6Vtbl,
18795}
18796impl Default for ID3D12GraphicsCommandList6 {
18797 fn default() -> Self {
18798 let mut s = ::std::mem::MaybeUninit::<Self>::uninit();
18799 unsafe {
18800 ::std::ptr::write_bytes(s.as_mut_ptr(), 0, 1);
18801 s.assume_init()
18802 }
18803 }
18804}
18805extern "C" {
18806 pub static IID_ID3D12GraphicsCommandList7: IID;
18807}
18808#[repr(C)]
18809#[derive(Debug, Default, Copy, Clone, Hash, PartialOrd, Ord, PartialEq, Eq)]
18810pub struct ID3D12GraphicsCommandList7Vtbl { pub QueryInterface : :: std :: option :: Option < unsafe extern "C" fn (This : * mut ID3D12GraphicsCommandList7 , riid : * const IID , ppvObject : * mut * mut :: std :: os :: raw :: c_void) -> HRESULT > , pub AddRef : :: std :: option :: Option < unsafe extern "C" fn (This : * mut ID3D12GraphicsCommandList7) -> ULONG > , pub Release : :: std :: option :: Option < unsafe extern "C" fn (This : * mut ID3D12GraphicsCommandList7) -> ULONG > , pub GetPrivateData : :: std :: option :: Option < unsafe extern "C" fn (This : * mut ID3D12GraphicsCommandList7 , guid : * const GUID , pDataSize : * mut UINT , pData : * mut :: std :: os :: raw :: c_void) -> HRESULT > , pub SetPrivateData : :: std :: option :: Option < unsafe extern "C" fn (This : * mut ID3D12GraphicsCommandList7 , guid : * const GUID , DataSize : UINT , pData : * const :: std :: os :: raw :: c_void) -> HRESULT > , pub SetPrivateDataInterface : :: std :: option :: Option < unsafe extern "C" fn (This : * mut ID3D12GraphicsCommandList7 , guid : * const GUID , pData : * const IUnknown) -> HRESULT > , pub SetName : :: std :: option :: Option < unsafe extern "C" fn (This : * mut ID3D12GraphicsCommandList7 , Name : LPCWSTR) -> HRESULT > , pub GetDevice : :: std :: option :: Option < unsafe extern "C" fn (This : * mut ID3D12GraphicsCommandList7 , riid : * const IID , ppvDevice : * mut * mut :: std :: os :: raw :: c_void) -> HRESULT > , pub GetType : :: std :: option :: Option < unsafe extern "C" fn (This : * mut ID3D12GraphicsCommandList7) -> D3D12_COMMAND_LIST_TYPE > , pub Close : :: std :: option :: Option < unsafe extern "C" fn (This : * mut ID3D12GraphicsCommandList7) -> HRESULT > , pub Reset : :: std :: option :: Option < unsafe extern "C" fn (This : * mut ID3D12GraphicsCommandList7 , pAllocator : * mut ID3D12CommandAllocator , pInitialState : * mut ID3D12PipelineState) -> HRESULT > , pub ClearState : :: std :: option :: Option < unsafe extern "C" fn (This : * mut ID3D12GraphicsCommandList7 , pPipelineState : * mut ID3D12PipelineState) > , pub DrawInstanced : :: std :: option :: Option < unsafe extern "C" fn (This : * mut ID3D12GraphicsCommandList7 , VertexCountPerInstance : UINT , InstanceCount : UINT , StartVertexLocation : UINT , StartInstanceLocation : UINT) > , pub DrawIndexedInstanced : :: std :: option :: Option < unsafe extern "C" fn (This : * mut ID3D12GraphicsCommandList7 , IndexCountPerInstance : UINT , InstanceCount : UINT , StartIndexLocation : UINT , BaseVertexLocation : INT , StartInstanceLocation : UINT) > , pub Dispatch : :: std :: option :: Option < unsafe extern "C" fn (This : * mut ID3D12GraphicsCommandList7 , ThreadGroupCountX : UINT , ThreadGroupCountY : UINT , ThreadGroupCountZ : UINT) > , pub CopyBufferRegion : :: std :: option :: Option < unsafe extern "C" fn (This : * mut ID3D12GraphicsCommandList7 , pDstBuffer : * mut ID3D12Resource , DstOffset : UINT64 , pSrcBuffer : * mut ID3D12Resource , SrcOffset : UINT64 , NumBytes : UINT64) > , pub CopyTextureRegion : :: std :: option :: Option < unsafe extern "C" fn (This : * mut ID3D12GraphicsCommandList7 , pDst : * const D3D12_TEXTURE_COPY_LOCATION , DstX : UINT , DstY : UINT , DstZ : UINT , pSrc : * const D3D12_TEXTURE_COPY_LOCATION , pSrcBox : * const D3D12_BOX) > , pub CopyResource : :: std :: option :: Option < unsafe extern "C" fn (This : * mut ID3D12GraphicsCommandList7 , pDstResource : * mut ID3D12Resource , pSrcResource : * mut ID3D12Resource) > , pub CopyTiles : :: std :: option :: Option < unsafe extern "C" fn (This : * mut ID3D12GraphicsCommandList7 , pTiledResource : * mut ID3D12Resource , pTileRegionStartCoordinate : * const D3D12_TILED_RESOURCE_COORDINATE , pTileRegionSize : * const D3D12_TILE_REGION_SIZE , pBuffer : * mut ID3D12Resource , BufferStartOffsetInBytes : UINT64 , Flags : D3D12_TILE_COPY_FLAGS) > , pub ResolveSubresource : :: std :: option :: Option < unsafe extern "C" fn (This : * mut ID3D12GraphicsCommandList7 , pDstResource : * mut ID3D12Resource , DstSubresource : UINT , pSrcResource : * mut ID3D12Resource , SrcSubresource : UINT , Format : DXGI_FORMAT) > , pub IASetPrimitiveTopology : :: std :: option :: Option < unsafe extern "C" fn (This : * mut ID3D12GraphicsCommandList7 , PrimitiveTopology : D3D12_PRIMITIVE_TOPOLOGY) > , pub RSSetViewports : :: std :: option :: Option < unsafe extern "C" fn (This : * mut ID3D12GraphicsCommandList7 , NumViewports : UINT , pViewports : * const D3D12_VIEWPORT) > , pub RSSetScissorRects : :: std :: option :: Option < unsafe extern "C" fn (This : * mut ID3D12GraphicsCommandList7 , NumRects : UINT , pRects : * const D3D12_RECT) > , pub OMSetBlendFactor : :: std :: option :: Option < unsafe extern "C" fn (This : * mut ID3D12GraphicsCommandList7 , BlendFactor : * const FLOAT) > , pub OMSetStencilRef : :: std :: option :: Option < unsafe extern "C" fn (This : * mut ID3D12GraphicsCommandList7 , StencilRef : UINT) > , pub SetPipelineState : :: std :: option :: Option < unsafe extern "C" fn (This : * mut ID3D12GraphicsCommandList7 , pPipelineState : * mut ID3D12PipelineState) > , pub ResourceBarrier : :: std :: option :: Option < unsafe extern "C" fn (This : * mut ID3D12GraphicsCommandList7 , NumBarriers : UINT , pBarriers : * const D3D12_RESOURCE_BARRIER) > , pub ExecuteBundle : :: std :: option :: Option < unsafe extern "C" fn (This : * mut ID3D12GraphicsCommandList7 , pCommandList : * mut ID3D12GraphicsCommandList) > , pub SetDescriptorHeaps : :: std :: option :: Option < unsafe extern "C" fn (This : * mut ID3D12GraphicsCommandList7 , NumDescriptorHeaps : UINT , ppDescriptorHeaps : * const * mut ID3D12DescriptorHeap) > , pub SetComputeRootSignature : :: std :: option :: Option < unsafe extern "C" fn (This : * mut ID3D12GraphicsCommandList7 , pRootSignature : * mut ID3D12RootSignature) > , pub SetGraphicsRootSignature : :: std :: option :: Option < unsafe extern "C" fn (This : * mut ID3D12GraphicsCommandList7 , pRootSignature : * mut ID3D12RootSignature) > , pub SetComputeRootDescriptorTable : :: std :: option :: Option < unsafe extern "C" fn (This : * mut ID3D12GraphicsCommandList7 , RootParameterIndex : UINT , BaseDescriptor : D3D12_GPU_DESCRIPTOR_HANDLE) > , pub SetGraphicsRootDescriptorTable : :: std :: option :: Option < unsafe extern "C" fn (This : * mut ID3D12GraphicsCommandList7 , RootParameterIndex : UINT , BaseDescriptor : D3D12_GPU_DESCRIPTOR_HANDLE) > , pub SetComputeRoot32BitConstant : :: std :: option :: Option < unsafe extern "C" fn (This : * mut ID3D12GraphicsCommandList7 , RootParameterIndex : UINT , SrcData : UINT , DestOffsetIn32BitValues : UINT) > , pub SetGraphicsRoot32BitConstant : :: std :: option :: Option < unsafe extern "C" fn (This : * mut ID3D12GraphicsCommandList7 , RootParameterIndex : UINT , SrcData : UINT , DestOffsetIn32BitValues : UINT) > , pub SetComputeRoot32BitConstants : :: std :: option :: Option < unsafe extern "C" fn (This : * mut ID3D12GraphicsCommandList7 , RootParameterIndex : UINT , Num32BitValuesToSet : UINT , pSrcData : * const :: std :: os :: raw :: c_void , DestOffsetIn32BitValues : UINT) > , pub SetGraphicsRoot32BitConstants : :: std :: option :: Option < unsafe extern "C" fn (This : * mut ID3D12GraphicsCommandList7 , RootParameterIndex : UINT , Num32BitValuesToSet : UINT , pSrcData : * const :: std :: os :: raw :: c_void , DestOffsetIn32BitValues : UINT) > , pub SetComputeRootConstantBufferView : :: std :: option :: Option < unsafe extern "C" fn (This : * mut ID3D12GraphicsCommandList7 , RootParameterIndex : UINT , BufferLocation : D3D12_GPU_VIRTUAL_ADDRESS) > , pub SetGraphicsRootConstantBufferView : :: std :: option :: Option < unsafe extern "C" fn (This : * mut ID3D12GraphicsCommandList7 , RootParameterIndex : UINT , BufferLocation : D3D12_GPU_VIRTUAL_ADDRESS) > , pub SetComputeRootShaderResourceView : :: std :: option :: Option < unsafe extern "C" fn (This : * mut ID3D12GraphicsCommandList7 , RootParameterIndex : UINT , BufferLocation : D3D12_GPU_VIRTUAL_ADDRESS) > , pub SetGraphicsRootShaderResourceView : :: std :: option :: Option < unsafe extern "C" fn (This : * mut ID3D12GraphicsCommandList7 , RootParameterIndex : UINT , BufferLocation : D3D12_GPU_VIRTUAL_ADDRESS) > , pub SetComputeRootUnorderedAccessView : :: std :: option :: Option < unsafe extern "C" fn (This : * mut ID3D12GraphicsCommandList7 , RootParameterIndex : UINT , BufferLocation : D3D12_GPU_VIRTUAL_ADDRESS) > , pub SetGraphicsRootUnorderedAccessView : :: std :: option :: Option < unsafe extern "C" fn (This : * mut ID3D12GraphicsCommandList7 , RootParameterIndex : UINT , BufferLocation : D3D12_GPU_VIRTUAL_ADDRESS) > , pub IASetIndexBuffer : :: std :: option :: Option < unsafe extern "C" fn (This : * mut ID3D12GraphicsCommandList7 , pView : * const D3D12_INDEX_BUFFER_VIEW) > , pub IASetVertexBuffers : :: std :: option :: Option < unsafe extern "C" fn (This : * mut ID3D12GraphicsCommandList7 , StartSlot : UINT , NumViews : UINT , pViews : * const D3D12_VERTEX_BUFFER_VIEW) > , pub SOSetTargets : :: std :: option :: Option < unsafe extern "C" fn (This : * mut ID3D12GraphicsCommandList7 , StartSlot : UINT , NumViews : UINT , pViews : * const D3D12_STREAM_OUTPUT_BUFFER_VIEW) > , pub OMSetRenderTargets : :: std :: option :: Option < unsafe extern "C" fn (This : * mut ID3D12GraphicsCommandList7 , NumRenderTargetDescriptors : UINT , pRenderTargetDescriptors : * const D3D12_CPU_DESCRIPTOR_HANDLE , RTsSingleHandleToDescriptorRange : BOOL , pDepthStencilDescriptor : * const D3D12_CPU_DESCRIPTOR_HANDLE) > , pub ClearDepthStencilView : :: std :: option :: Option < unsafe extern "C" fn (This : * mut ID3D12GraphicsCommandList7 , DepthStencilView : D3D12_CPU_DESCRIPTOR_HANDLE , ClearFlags : D3D12_CLEAR_FLAGS , Depth : FLOAT , Stencil : UINT8 , NumRects : UINT , pRects : * const D3D12_RECT) > , pub ClearRenderTargetView : :: std :: option :: Option < unsafe extern "C" fn (This : * mut ID3D12GraphicsCommandList7 , RenderTargetView : D3D12_CPU_DESCRIPTOR_HANDLE , ColorRGBA : * const FLOAT , NumRects : UINT , pRects : * const D3D12_RECT) > , pub ClearUnorderedAccessViewUint : :: std :: option :: Option < unsafe extern "C" fn (This : * mut ID3D12GraphicsCommandList7 , ViewGPUHandleInCurrentHeap : D3D12_GPU_DESCRIPTOR_HANDLE , ViewCPUHandle : D3D12_CPU_DESCRIPTOR_HANDLE , pResource : * mut ID3D12Resource , Values : * const UINT , NumRects : UINT , pRects : * const D3D12_RECT) > , pub ClearUnorderedAccessViewFloat : :: std :: option :: Option < unsafe extern "C" fn (This : * mut ID3D12GraphicsCommandList7 , ViewGPUHandleInCurrentHeap : D3D12_GPU_DESCRIPTOR_HANDLE , ViewCPUHandle : D3D12_CPU_DESCRIPTOR_HANDLE , pResource : * mut ID3D12Resource , Values : * const FLOAT , NumRects : UINT , pRects : * const D3D12_RECT) > , pub DiscardResource : :: std :: option :: Option < unsafe extern "C" fn (This : * mut ID3D12GraphicsCommandList7 , pResource : * mut ID3D12Resource , pRegion : * const D3D12_DISCARD_REGION) > , pub BeginQuery : :: std :: option :: Option < unsafe extern "C" fn (This : * mut ID3D12GraphicsCommandList7 , pQueryHeap : * mut ID3D12QueryHeap , Type : D3D12_QUERY_TYPE , Index : UINT) > , pub EndQuery : :: std :: option :: Option < unsafe extern "C" fn (This : * mut ID3D12GraphicsCommandList7 , pQueryHeap : * mut ID3D12QueryHeap , Type : D3D12_QUERY_TYPE , Index : UINT) > , pub ResolveQueryData : :: std :: option :: Option < unsafe extern "C" fn (This : * mut ID3D12GraphicsCommandList7 , pQueryHeap : * mut ID3D12QueryHeap , Type : D3D12_QUERY_TYPE , StartIndex : UINT , NumQueries : UINT , pDestinationBuffer : * mut ID3D12Resource , AlignedDestinationBufferOffset : UINT64) > , pub SetPredication : :: std :: option :: Option < unsafe extern "C" fn (This : * mut ID3D12GraphicsCommandList7 , pBuffer : * mut ID3D12Resource , AlignedBufferOffset : UINT64 , Operation : D3D12_PREDICATION_OP) > , pub SetMarker : :: std :: option :: Option < unsafe extern "C" fn (This : * mut ID3D12GraphicsCommandList7 , Metadata : UINT , pData : * const :: std :: os :: raw :: c_void , Size : UINT) > , pub BeginEvent : :: std :: option :: Option < unsafe extern "C" fn (This : * mut ID3D12GraphicsCommandList7 , Metadata : UINT , pData : * const :: std :: os :: raw :: c_void , Size : UINT) > , pub EndEvent : :: std :: option :: Option < unsafe extern "C" fn (This : * mut ID3D12GraphicsCommandList7) > , pub ExecuteIndirect : :: std :: option :: Option < unsafe extern "C" fn (This : * mut ID3D12GraphicsCommandList7 , pCommandSignature : * mut ID3D12CommandSignature , MaxCommandCount : UINT , pArgumentBuffer : * mut ID3D12Resource , ArgumentBufferOffset : UINT64 , pCountBuffer : * mut ID3D12Resource , CountBufferOffset : UINT64) > , pub AtomicCopyBufferUINT : :: std :: option :: Option < unsafe extern "C" fn (This : * mut ID3D12GraphicsCommandList7 , pDstBuffer : * mut ID3D12Resource , DstOffset : UINT64 , pSrcBuffer : * mut ID3D12Resource , SrcOffset : UINT64 , Dependencies : UINT , ppDependentResources : * const * mut ID3D12Resource , pDependentSubresourceRanges : * const D3D12_SUBRESOURCE_RANGE_UINT64) > , pub AtomicCopyBufferUINT64 : :: std :: option :: Option < unsafe extern "C" fn (This : * mut ID3D12GraphicsCommandList7 , pDstBuffer : * mut ID3D12Resource , DstOffset : UINT64 , pSrcBuffer : * mut ID3D12Resource , SrcOffset : UINT64 , Dependencies : UINT , ppDependentResources : * const * mut ID3D12Resource , pDependentSubresourceRanges : * const D3D12_SUBRESOURCE_RANGE_UINT64) > , pub OMSetDepthBounds : :: std :: option :: Option < unsafe extern "C" fn (This : * mut ID3D12GraphicsCommandList7 , Min : FLOAT , Max : FLOAT) > , pub SetSamplePositions : :: std :: option :: Option < unsafe extern "C" fn (This : * mut ID3D12GraphicsCommandList7 , NumSamplesPerPixel : UINT , NumPixels : UINT , pSamplePositions : * mut D3D12_SAMPLE_POSITION) > , pub ResolveSubresourceRegion : :: std :: option :: Option < unsafe extern "C" fn (This : * mut ID3D12GraphicsCommandList7 , pDstResource : * mut ID3D12Resource , DstSubresource : UINT , DstX : UINT , DstY : UINT , pSrcResource : * mut ID3D12Resource , SrcSubresource : UINT , pSrcRect : * mut D3D12_RECT , Format : DXGI_FORMAT , ResolveMode : D3D12_RESOLVE_MODE) > , pub SetViewInstanceMask : :: std :: option :: Option < unsafe extern "C" fn (This : * mut ID3D12GraphicsCommandList7 , Mask : UINT) > , pub WriteBufferImmediate : :: std :: option :: Option < unsafe extern "C" fn (This : * mut ID3D12GraphicsCommandList7 , Count : UINT , pParams : * const D3D12_WRITEBUFFERIMMEDIATE_PARAMETER , pModes : * const D3D12_WRITEBUFFERIMMEDIATE_MODE) > , pub SetProtectedResourceSession : :: std :: option :: Option < unsafe extern "C" fn (This : * mut ID3D12GraphicsCommandList7 , pProtectedResourceSession : * mut ID3D12ProtectedResourceSession) > , pub BeginRenderPass : :: std :: option :: Option < unsafe extern "C" fn (This : * mut ID3D12GraphicsCommandList7 , NumRenderTargets : UINT , pRenderTargets : * const D3D12_RENDER_PASS_RENDER_TARGET_DESC , pDepthStencil : * const D3D12_RENDER_PASS_DEPTH_STENCIL_DESC , Flags : D3D12_RENDER_PASS_FLAGS) > , pub EndRenderPass : :: std :: option :: Option < unsafe extern "C" fn (This : * mut ID3D12GraphicsCommandList7) > , pub InitializeMetaCommand : :: std :: option :: Option < unsafe extern "C" fn (This : * mut ID3D12GraphicsCommandList7 , pMetaCommand : * mut ID3D12MetaCommand , pInitializationParametersData : * const :: std :: os :: raw :: c_void , InitializationParametersDataSizeInBytes : SIZE_T) > , pub ExecuteMetaCommand : :: std :: option :: Option < unsafe extern "C" fn (This : * mut ID3D12GraphicsCommandList7 , pMetaCommand : * mut ID3D12MetaCommand , pExecutionParametersData : * const :: std :: os :: raw :: c_void , ExecutionParametersDataSizeInBytes : SIZE_T) > , pub BuildRaytracingAccelerationStructure : :: std :: option :: Option < unsafe extern "C" fn (This : * mut ID3D12GraphicsCommandList7 , pDesc : * const D3D12_BUILD_RAYTRACING_ACCELERATION_STRUCTURE_DESC , NumPostbuildInfoDescs : UINT , pPostbuildInfoDescs : * const D3D12_RAYTRACING_ACCELERATION_STRUCTURE_POSTBUILD_INFO_DESC) > , pub EmitRaytracingAccelerationStructurePostbuildInfo : :: std :: option :: Option < unsafe extern "C" fn (This : * mut ID3D12GraphicsCommandList7 , pDesc : * const D3D12_RAYTRACING_ACCELERATION_STRUCTURE_POSTBUILD_INFO_DESC , NumSourceAccelerationStructures : UINT , pSourceAccelerationStructureData : * const D3D12_GPU_VIRTUAL_ADDRESS) > , pub CopyRaytracingAccelerationStructure : :: std :: option :: Option < unsafe extern "C" fn (This : * mut ID3D12GraphicsCommandList7 , DestAccelerationStructureData : D3D12_GPU_VIRTUAL_ADDRESS , SourceAccelerationStructureData : D3D12_GPU_VIRTUAL_ADDRESS , Mode : D3D12_RAYTRACING_ACCELERATION_STRUCTURE_COPY_MODE) > , pub SetPipelineState1 : :: std :: option :: Option < unsafe extern "C" fn (This : * mut ID3D12GraphicsCommandList7 , pStateObject : * mut ID3D12StateObject) > , pub DispatchRays : :: std :: option :: Option < unsafe extern "C" fn (This : * mut ID3D12GraphicsCommandList7 , pDesc : * const D3D12_DISPATCH_RAYS_DESC) > , pub RSSetShadingRate : :: std :: option :: Option < unsafe extern "C" fn (This : * mut ID3D12GraphicsCommandList7 , baseShadingRate : D3D12_SHADING_RATE , combiners : * const D3D12_SHADING_RATE_COMBINER) > , pub RSSetShadingRateImage : :: std :: option :: Option < unsafe extern "C" fn (This : * mut ID3D12GraphicsCommandList7 , shadingRateImage : * mut ID3D12Resource) > , pub DispatchMesh : :: std :: option :: Option < unsafe extern "C" fn (This : * mut ID3D12GraphicsCommandList7 , ThreadGroupCountX : UINT , ThreadGroupCountY : UINT , ThreadGroupCountZ : UINT) > , pub Barrier : :: std :: option :: Option < unsafe extern "C" fn (This : * mut ID3D12GraphicsCommandList7 , NumBarrierGroups : UINT32 , pBarrierGroups : * const D3D12_BARRIER_GROUP) > , }
18811#[repr(C)]
18812#[derive(Debug, Copy, Clone, Hash, PartialOrd, Ord, PartialEq, Eq)]
18813pub struct ID3D12GraphicsCommandList7 {
18814 pub lpVtbl: *mut ID3D12GraphicsCommandList7Vtbl,
18815}
18816impl Default for ID3D12GraphicsCommandList7 {
18817 fn default() -> Self {
18818 let mut s = ::std::mem::MaybeUninit::<Self>::uninit();
18819 unsafe {
18820 ::std::ptr::write_bytes(s.as_mut_ptr(), 0, 1);
18821 s.assume_init()
18822 }
18823 }
18824}
18825#[repr(C)]
18826#[derive(Debug, Default, Copy, Clone, PartialOrd, PartialEq)]
18827pub struct DXGI_RGB {
18828 pub Red: f32,
18829 pub Green: f32,
18830 pub Blue: f32,
18831}
18832#[repr(C)]
18833#[derive(Debug, Default, Copy, Clone, PartialOrd, PartialEq)]
18834pub struct _D3DCOLORVALUE {
18835 pub r: f32,
18836 pub g: f32,
18837 pub b: f32,
18838 pub a: f32,
18839}
18840pub type D3DCOLORVALUE = _D3DCOLORVALUE;
18841pub type DXGI_RGBA = D3DCOLORVALUE;
18842#[repr(C)]
18843#[derive(Debug, Copy, Clone, PartialOrd, PartialEq)]
18844pub struct DXGI_GAMMA_CONTROL {
18845 pub Scale: DXGI_RGB,
18846 pub Offset: DXGI_RGB,
18847 pub GammaCurve: [DXGI_RGB; 1025usize],
18848}
18849impl Default for DXGI_GAMMA_CONTROL {
18850 fn default() -> Self {
18851 let mut s = ::std::mem::MaybeUninit::<Self>::uninit();
18852 unsafe {
18853 ::std::ptr::write_bytes(s.as_mut_ptr(), 0, 1);
18854 s.assume_init()
18855 }
18856 }
18857}
18858#[repr(C)]
18859#[derive(Debug, Copy, Clone, PartialOrd, PartialEq)]
18860pub struct DXGI_GAMMA_CONTROL_CAPABILITIES {
18861 pub ScaleAndOffsetSupported: BOOL,
18862 pub MaxConvertedValue: f32,
18863 pub MinConvertedValue: f32,
18864 pub NumGammaControlPoints: UINT,
18865 pub ControlPointPositions: [f32; 1025usize],
18866}
18867impl Default for DXGI_GAMMA_CONTROL_CAPABILITIES {
18868 fn default() -> Self {
18869 let mut s = ::std::mem::MaybeUninit::<Self>::uninit();
18870 unsafe {
18871 ::std::ptr::write_bytes(s.as_mut_ptr(), 0, 1);
18872 s.assume_init()
18873 }
18874 }
18875}
18876pub const DXGI_MODE_SCANLINE_ORDER_DXGI_MODE_SCANLINE_ORDER_UNSPECIFIED:
18877 DXGI_MODE_SCANLINE_ORDER = 0;
18878pub const DXGI_MODE_SCANLINE_ORDER_DXGI_MODE_SCANLINE_ORDER_PROGRESSIVE:
18879 DXGI_MODE_SCANLINE_ORDER = 1;
18880pub const DXGI_MODE_SCANLINE_ORDER_DXGI_MODE_SCANLINE_ORDER_UPPER_FIELD_FIRST : DXGI_MODE_SCANLINE_ORDER = 2 ;
18881pub const DXGI_MODE_SCANLINE_ORDER_DXGI_MODE_SCANLINE_ORDER_LOWER_FIELD_FIRST : DXGI_MODE_SCANLINE_ORDER = 3 ;
18882pub type DXGI_MODE_SCANLINE_ORDER = ::std::os::raw::c_int;
18883pub const DXGI_MODE_SCALING_DXGI_MODE_SCALING_UNSPECIFIED: DXGI_MODE_SCALING =
18884 0;
18885pub const DXGI_MODE_SCALING_DXGI_MODE_SCALING_CENTERED: DXGI_MODE_SCALING = 1;
18886pub const DXGI_MODE_SCALING_DXGI_MODE_SCALING_STRETCHED: DXGI_MODE_SCALING = 2;
18887pub type DXGI_MODE_SCALING = ::std::os::raw::c_int;
18888pub const DXGI_MODE_ROTATION_DXGI_MODE_ROTATION_UNSPECIFIED:
18889 DXGI_MODE_ROTATION = 0;
18890pub const DXGI_MODE_ROTATION_DXGI_MODE_ROTATION_IDENTITY: DXGI_MODE_ROTATION =
18891 1;
18892pub const DXGI_MODE_ROTATION_DXGI_MODE_ROTATION_ROTATE90: DXGI_MODE_ROTATION =
18893 2;
18894pub const DXGI_MODE_ROTATION_DXGI_MODE_ROTATION_ROTATE180: DXGI_MODE_ROTATION =
18895 3;
18896pub const DXGI_MODE_ROTATION_DXGI_MODE_ROTATION_ROTATE270: DXGI_MODE_ROTATION =
18897 4;
18898pub type DXGI_MODE_ROTATION = ::std::os::raw::c_int;
18899#[repr(C)]
18900#[derive(Debug, Copy, Clone, Hash, PartialOrd, Ord, PartialEq, Eq)]
18901pub struct DXGI_MODE_DESC {
18902 pub Width: UINT,
18903 pub Height: UINT,
18904 pub RefreshRate: DXGI_RATIONAL,
18905 pub Format: DXGI_FORMAT,
18906 pub ScanlineOrdering: DXGI_MODE_SCANLINE_ORDER,
18907 pub Scaling: DXGI_MODE_SCALING,
18908}
18909impl Default for DXGI_MODE_DESC {
18910 fn default() -> Self {
18911 let mut s = ::std::mem::MaybeUninit::<Self>::uninit();
18912 unsafe {
18913 ::std::ptr::write_bytes(s.as_mut_ptr(), 0, 1);
18914 s.assume_init()
18915 }
18916 }
18917}
18918#[repr(C)]
18919#[derive(Debug, Default, Copy, Clone, Hash, PartialOrd, Ord, PartialEq, Eq)]
18920pub struct DXGI_JPEG_DC_HUFFMAN_TABLE {
18921 pub CodeCounts: [BYTE; 12usize],
18922 pub CodeValues: [BYTE; 12usize],
18923}
18924#[repr(C)]
18925#[derive(Debug, Copy, Clone, Hash, PartialOrd, Ord, PartialEq, Eq)]
18926pub struct DXGI_JPEG_AC_HUFFMAN_TABLE {
18927 pub CodeCounts: [BYTE; 16usize],
18928 pub CodeValues: [BYTE; 162usize],
18929}
18930impl Default for DXGI_JPEG_AC_HUFFMAN_TABLE {
18931 fn default() -> Self {
18932 let mut s = ::std::mem::MaybeUninit::<Self>::uninit();
18933 unsafe {
18934 ::std::ptr::write_bytes(s.as_mut_ptr(), 0, 1);
18935 s.assume_init()
18936 }
18937 }
18938}
18939#[repr(C)]
18940#[derive(Debug, Copy, Clone, Hash, PartialOrd, Ord, PartialEq, Eq)]
18941pub struct DXGI_JPEG_QUANTIZATION_TABLE {
18942 pub Elements: [BYTE; 64usize],
18943}
18944impl Default for DXGI_JPEG_QUANTIZATION_TABLE {
18945 fn default() -> Self {
18946 let mut s = ::std::mem::MaybeUninit::<Self>::uninit();
18947 unsafe {
18948 ::std::ptr::write_bytes(s.as_mut_ptr(), 0, 1);
18949 s.assume_init()
18950 }
18951 }
18952}
18953pub type DXGI_USAGE = UINT;
18954#[repr(C)]
18955#[derive(Copy, Clone)]
18956pub struct DXGI_FRAME_STATISTICS {
18957 pub PresentCount: UINT,
18958 pub PresentRefreshCount: UINT,
18959 pub SyncRefreshCount: UINT,
18960 pub SyncQPCTime: LARGE_INTEGER,
18961 pub SyncGPUTime: LARGE_INTEGER,
18962}
18963impl Default for DXGI_FRAME_STATISTICS {
18964 fn default() -> Self {
18965 let mut s = ::std::mem::MaybeUninit::<Self>::uninit();
18966 unsafe {
18967 ::std::ptr::write_bytes(s.as_mut_ptr(), 0, 1);
18968 s.assume_init()
18969 }
18970 }
18971}
18972impl ::std::fmt::Debug for DXGI_FRAME_STATISTICS {
18973 fn fmt(&self, f: &mut ::std::fmt::Formatter<'_>) -> ::std::fmt::Result {
18974 write ! (f , "DXGI_FRAME_STATISTICS {{ PresentCount: {:?}, PresentRefreshCount: {:?}, SyncRefreshCount: {:?}, SyncQPCTime: {:?}, SyncGPUTime: {:?} }}" , self . PresentCount , self . PresentRefreshCount , self . SyncRefreshCount , self . SyncQPCTime , self . SyncGPUTime)
18975 }
18976}
18977#[repr(C)]
18978#[derive(Debug, Copy, Clone, Hash, PartialOrd, Ord, PartialEq, Eq)]
18979pub struct DXGI_MAPPED_RECT {
18980 pub Pitch: INT,
18981 pub pBits: *mut BYTE,
18982}
18983impl Default for DXGI_MAPPED_RECT {
18984 fn default() -> Self {
18985 let mut s = ::std::mem::MaybeUninit::<Self>::uninit();
18986 unsafe {
18987 ::std::ptr::write_bytes(s.as_mut_ptr(), 0, 1);
18988 s.assume_init()
18989 }
18990 }
18991}
18992#[repr(C)]
18993#[derive(Debug, Copy, Clone, Hash, PartialOrd, Ord, PartialEq, Eq)]
18994pub struct DXGI_ADAPTER_DESC {
18995 pub Description: [WCHAR; 128usize],
18996 pub VendorId: UINT,
18997 pub DeviceId: UINT,
18998 pub SubSysId: UINT,
18999 pub Revision: UINT,
19000 pub DedicatedVideoMemory: SIZE_T,
19001 pub DedicatedSystemMemory: SIZE_T,
19002 pub SharedSystemMemory: SIZE_T,
19003 pub AdapterLuid: LUID,
19004}
19005impl Default for DXGI_ADAPTER_DESC {
19006 fn default() -> Self {
19007 let mut s = ::std::mem::MaybeUninit::<Self>::uninit();
19008 unsafe {
19009 ::std::ptr::write_bytes(s.as_mut_ptr(), 0, 1);
19010 s.assume_init()
19011 }
19012 }
19013}
19014#[repr(C)]
19015#[derive(Debug, Copy, Clone, Hash, PartialOrd, Ord, PartialEq, Eq)]
19016pub struct DXGI_OUTPUT_DESC {
19017 pub DeviceName: [WCHAR; 32usize],
19018 pub DesktopCoordinates: RECT,
19019 pub AttachedToDesktop: BOOL,
19020 pub Rotation: DXGI_MODE_ROTATION,
19021 pub Monitor: HMONITOR,
19022}
19023impl Default for DXGI_OUTPUT_DESC {
19024 fn default() -> Self {
19025 let mut s = ::std::mem::MaybeUninit::<Self>::uninit();
19026 unsafe {
19027 ::std::ptr::write_bytes(s.as_mut_ptr(), 0, 1);
19028 s.assume_init()
19029 }
19030 }
19031}
19032#[repr(C)]
19033#[derive(Debug, Copy, Clone, Hash, PartialOrd, Ord, PartialEq, Eq)]
19034pub struct DXGI_SHARED_RESOURCE {
19035 pub Handle: HANDLE,
19036}
19037impl Default for DXGI_SHARED_RESOURCE {
19038 fn default() -> Self {
19039 let mut s = ::std::mem::MaybeUninit::<Self>::uninit();
19040 unsafe {
19041 ::std::ptr::write_bytes(s.as_mut_ptr(), 0, 1);
19042 s.assume_init()
19043 }
19044 }
19045}
19046pub const DXGI_RESIDENCY_DXGI_RESIDENCY_FULLY_RESIDENT: DXGI_RESIDENCY = 1;
19047pub const DXGI_RESIDENCY_DXGI_RESIDENCY_RESIDENT_IN_SHARED_MEMORY:
19048 DXGI_RESIDENCY = 2;
19049pub const DXGI_RESIDENCY_DXGI_RESIDENCY_EVICTED_TO_DISK: DXGI_RESIDENCY = 3;
19050pub type DXGI_RESIDENCY = ::std::os::raw::c_int;
19051#[repr(C)]
19052#[derive(Debug, Copy, Clone, Hash, PartialOrd, Ord, PartialEq, Eq)]
19053pub struct DXGI_SURFACE_DESC {
19054 pub Width: UINT,
19055 pub Height: UINT,
19056 pub Format: DXGI_FORMAT,
19057 pub SampleDesc: DXGI_SAMPLE_DESC,
19058}
19059impl Default for DXGI_SURFACE_DESC {
19060 fn default() -> Self {
19061 let mut s = ::std::mem::MaybeUninit::<Self>::uninit();
19062 unsafe {
19063 ::std::ptr::write_bytes(s.as_mut_ptr(), 0, 1);
19064 s.assume_init()
19065 }
19066 }
19067}
19068pub const DXGI_SWAP_EFFECT_DXGI_SWAP_EFFECT_DISCARD: DXGI_SWAP_EFFECT = 0;
19069pub const DXGI_SWAP_EFFECT_DXGI_SWAP_EFFECT_SEQUENTIAL: DXGI_SWAP_EFFECT = 1;
19070pub const DXGI_SWAP_EFFECT_DXGI_SWAP_EFFECT_FLIP_SEQUENTIAL: DXGI_SWAP_EFFECT =
19071 3;
19072pub const DXGI_SWAP_EFFECT_DXGI_SWAP_EFFECT_FLIP_DISCARD: DXGI_SWAP_EFFECT = 4;
19073pub type DXGI_SWAP_EFFECT = ::std::os::raw::c_int;
19074pub const DXGI_SWAP_CHAIN_FLAG_DXGI_SWAP_CHAIN_FLAG_NONPREROTATED:
19075 DXGI_SWAP_CHAIN_FLAG = 1;
19076pub const DXGI_SWAP_CHAIN_FLAG_DXGI_SWAP_CHAIN_FLAG_ALLOW_MODE_SWITCH:
19077 DXGI_SWAP_CHAIN_FLAG = 2;
19078pub const DXGI_SWAP_CHAIN_FLAG_DXGI_SWAP_CHAIN_FLAG_GDI_COMPATIBLE:
19079 DXGI_SWAP_CHAIN_FLAG = 4;
19080pub const DXGI_SWAP_CHAIN_FLAG_DXGI_SWAP_CHAIN_FLAG_RESTRICTED_CONTENT:
19081 DXGI_SWAP_CHAIN_FLAG = 8;
19082pub const DXGI_SWAP_CHAIN_FLAG_DXGI_SWAP_CHAIN_FLAG_RESTRICT_SHARED_RESOURCE_DRIVER : DXGI_SWAP_CHAIN_FLAG = 16 ;
19083pub const DXGI_SWAP_CHAIN_FLAG_DXGI_SWAP_CHAIN_FLAG_DISPLAY_ONLY:
19084 DXGI_SWAP_CHAIN_FLAG = 32;
19085pub const DXGI_SWAP_CHAIN_FLAG_DXGI_SWAP_CHAIN_FLAG_FRAME_LATENCY_WAITABLE_OBJECT : DXGI_SWAP_CHAIN_FLAG = 64 ;
19086pub const DXGI_SWAP_CHAIN_FLAG_DXGI_SWAP_CHAIN_FLAG_FOREGROUND_LAYER:
19087 DXGI_SWAP_CHAIN_FLAG = 128;
19088pub const DXGI_SWAP_CHAIN_FLAG_DXGI_SWAP_CHAIN_FLAG_FULLSCREEN_VIDEO:
19089 DXGI_SWAP_CHAIN_FLAG = 256;
19090pub const DXGI_SWAP_CHAIN_FLAG_DXGI_SWAP_CHAIN_FLAG_YUV_VIDEO:
19091 DXGI_SWAP_CHAIN_FLAG = 512;
19092pub const DXGI_SWAP_CHAIN_FLAG_DXGI_SWAP_CHAIN_FLAG_HW_PROTECTED:
19093 DXGI_SWAP_CHAIN_FLAG = 1024;
19094pub const DXGI_SWAP_CHAIN_FLAG_DXGI_SWAP_CHAIN_FLAG_ALLOW_TEARING:
19095 DXGI_SWAP_CHAIN_FLAG = 2048;
19096pub const DXGI_SWAP_CHAIN_FLAG_DXGI_SWAP_CHAIN_FLAG_RESTRICTED_TO_ALL_HOLOGRAPHIC_DISPLAYS : DXGI_SWAP_CHAIN_FLAG = 4096 ;
19097pub type DXGI_SWAP_CHAIN_FLAG = ::std::os::raw::c_int;
19098#[repr(C)]
19099#[derive(Debug, Copy, Clone, Hash, PartialOrd, Ord, PartialEq, Eq)]
19100pub struct DXGI_SWAP_CHAIN_DESC {
19101 pub BufferDesc: DXGI_MODE_DESC,
19102 pub SampleDesc: DXGI_SAMPLE_DESC,
19103 pub BufferUsage: DXGI_USAGE,
19104 pub BufferCount: UINT,
19105 pub OutputWindow: HWND,
19106 pub Windowed: BOOL,
19107 pub SwapEffect: DXGI_SWAP_EFFECT,
19108 pub Flags: UINT,
19109}
19110impl Default for DXGI_SWAP_CHAIN_DESC {
19111 fn default() -> Self {
19112 let mut s = ::std::mem::MaybeUninit::<Self>::uninit();
19113 unsafe {
19114 ::std::ptr::write_bytes(s.as_mut_ptr(), 0, 1);
19115 s.assume_init()
19116 }
19117 }
19118}
19119extern "C" {
19120 pub static IID_IDXGIObject: IID;
19121}
19122#[repr(C)]
19123#[derive(Debug, Default, Copy, Clone, Hash, PartialOrd, Ord, PartialEq, Eq)]
19124pub struct IDXGIObjectVtbl {
19125 pub QueryInterface: ::std::option::Option<
19126 unsafe extern "C" fn(
19127 This: *mut IDXGIObject,
19128 riid: *const IID,
19129 ppvObject: *mut *mut ::std::os::raw::c_void,
19130 ) -> HRESULT,
19131 >,
19132 pub AddRef: ::std::option::Option<
19133 unsafe extern "C" fn(This: *mut IDXGIObject) -> ULONG,
19134 >,
19135 pub Release: ::std::option::Option<
19136 unsafe extern "C" fn(This: *mut IDXGIObject) -> ULONG,
19137 >,
19138 pub SetPrivateData: ::std::option::Option<
19139 unsafe extern "C" fn(
19140 This: *mut IDXGIObject,
19141 Name: *const GUID,
19142 DataSize: UINT,
19143 pData: *const ::std::os::raw::c_void,
19144 ) -> HRESULT,
19145 >,
19146 pub SetPrivateDataInterface: ::std::option::Option<
19147 unsafe extern "C" fn(
19148 This: *mut IDXGIObject,
19149 Name: *const GUID,
19150 pUnknown: *const IUnknown,
19151 ) -> HRESULT,
19152 >,
19153 pub GetPrivateData: ::std::option::Option<
19154 unsafe extern "C" fn(
19155 This: *mut IDXGIObject,
19156 Name: *const GUID,
19157 pDataSize: *mut UINT,
19158 pData: *mut ::std::os::raw::c_void,
19159 ) -> HRESULT,
19160 >,
19161 pub GetParent: ::std::option::Option<
19162 unsafe extern "C" fn(
19163 This: *mut IDXGIObject,
19164 riid: *const IID,
19165 ppParent: *mut *mut ::std::os::raw::c_void,
19166 ) -> HRESULT,
19167 >,
19168}
19169#[repr(C)]
19170#[derive(Debug, Copy, Clone, Hash, PartialOrd, Ord, PartialEq, Eq)]
19171pub struct IDXGIObject {
19172 pub lpVtbl: *mut IDXGIObjectVtbl,
19173}
19174impl Default for IDXGIObject {
19175 fn default() -> Self {
19176 let mut s = ::std::mem::MaybeUninit::<Self>::uninit();
19177 unsafe {
19178 ::std::ptr::write_bytes(s.as_mut_ptr(), 0, 1);
19179 s.assume_init()
19180 }
19181 }
19182}
19183extern "C" {
19184 pub static IID_IDXGIDeviceSubObject: IID;
19185}
19186#[repr(C)]
19187#[derive(Debug, Default, Copy, Clone, Hash, PartialOrd, Ord, PartialEq, Eq)]
19188pub struct IDXGIDeviceSubObjectVtbl {
19189 pub QueryInterface: ::std::option::Option<
19190 unsafe extern "C" fn(
19191 This: *mut IDXGIDeviceSubObject,
19192 riid: *const IID,
19193 ppvObject: *mut *mut ::std::os::raw::c_void,
19194 ) -> HRESULT,
19195 >,
19196 pub AddRef: ::std::option::Option<
19197 unsafe extern "C" fn(This: *mut IDXGIDeviceSubObject) -> ULONG,
19198 >,
19199 pub Release: ::std::option::Option<
19200 unsafe extern "C" fn(This: *mut IDXGIDeviceSubObject) -> ULONG,
19201 >,
19202 pub SetPrivateData: ::std::option::Option<
19203 unsafe extern "C" fn(
19204 This: *mut IDXGIDeviceSubObject,
19205 Name: *const GUID,
19206 DataSize: UINT,
19207 pData: *const ::std::os::raw::c_void,
19208 ) -> HRESULT,
19209 >,
19210 pub SetPrivateDataInterface: ::std::option::Option<
19211 unsafe extern "C" fn(
19212 This: *mut IDXGIDeviceSubObject,
19213 Name: *const GUID,
19214 pUnknown: *const IUnknown,
19215 ) -> HRESULT,
19216 >,
19217 pub GetPrivateData: ::std::option::Option<
19218 unsafe extern "C" fn(
19219 This: *mut IDXGIDeviceSubObject,
19220 Name: *const GUID,
19221 pDataSize: *mut UINT,
19222 pData: *mut ::std::os::raw::c_void,
19223 ) -> HRESULT,
19224 >,
19225 pub GetParent: ::std::option::Option<
19226 unsafe extern "C" fn(
19227 This: *mut IDXGIDeviceSubObject,
19228 riid: *const IID,
19229 ppParent: *mut *mut ::std::os::raw::c_void,
19230 ) -> HRESULT,
19231 >,
19232 pub GetDevice: ::std::option::Option<
19233 unsafe extern "C" fn(
19234 This: *mut IDXGIDeviceSubObject,
19235 riid: *const IID,
19236 ppDevice: *mut *mut ::std::os::raw::c_void,
19237 ) -> HRESULT,
19238 >,
19239}
19240#[repr(C)]
19241#[derive(Debug, Copy, Clone, Hash, PartialOrd, Ord, PartialEq, Eq)]
19242pub struct IDXGIDeviceSubObject {
19243 pub lpVtbl: *mut IDXGIDeviceSubObjectVtbl,
19244}
19245impl Default for IDXGIDeviceSubObject {
19246 fn default() -> Self {
19247 let mut s = ::std::mem::MaybeUninit::<Self>::uninit();
19248 unsafe {
19249 ::std::ptr::write_bytes(s.as_mut_ptr(), 0, 1);
19250 s.assume_init()
19251 }
19252 }
19253}
19254extern "C" {
19255 pub static IID_IDXGIResource: IID;
19256}
19257#[repr(C)]
19258#[derive(Debug, Default, Copy, Clone, Hash, PartialOrd, Ord, PartialEq, Eq)]
19259pub struct IDXGIResourceVtbl {
19260 pub QueryInterface: ::std::option::Option<
19261 unsafe extern "C" fn(
19262 This: *mut IDXGIResource,
19263 riid: *const IID,
19264 ppvObject: *mut *mut ::std::os::raw::c_void,
19265 ) -> HRESULT,
19266 >,
19267 pub AddRef: ::std::option::Option<
19268 unsafe extern "C" fn(This: *mut IDXGIResource) -> ULONG,
19269 >,
19270 pub Release: ::std::option::Option<
19271 unsafe extern "C" fn(This: *mut IDXGIResource) -> ULONG,
19272 >,
19273 pub SetPrivateData: ::std::option::Option<
19274 unsafe extern "C" fn(
19275 This: *mut IDXGIResource,
19276 Name: *const GUID,
19277 DataSize: UINT,
19278 pData: *const ::std::os::raw::c_void,
19279 ) -> HRESULT,
19280 >,
19281 pub SetPrivateDataInterface: ::std::option::Option<
19282 unsafe extern "C" fn(
19283 This: *mut IDXGIResource,
19284 Name: *const GUID,
19285 pUnknown: *const IUnknown,
19286 ) -> HRESULT,
19287 >,
19288 pub GetPrivateData: ::std::option::Option<
19289 unsafe extern "C" fn(
19290 This: *mut IDXGIResource,
19291 Name: *const GUID,
19292 pDataSize: *mut UINT,
19293 pData: *mut ::std::os::raw::c_void,
19294 ) -> HRESULT,
19295 >,
19296 pub GetParent: ::std::option::Option<
19297 unsafe extern "C" fn(
19298 This: *mut IDXGIResource,
19299 riid: *const IID,
19300 ppParent: *mut *mut ::std::os::raw::c_void,
19301 ) -> HRESULT,
19302 >,
19303 pub GetDevice: ::std::option::Option<
19304 unsafe extern "C" fn(
19305 This: *mut IDXGIResource,
19306 riid: *const IID,
19307 ppDevice: *mut *mut ::std::os::raw::c_void,
19308 ) -> HRESULT,
19309 >,
19310 pub GetSharedHandle: ::std::option::Option<
19311 unsafe extern "C" fn(
19312 This: *mut IDXGIResource,
19313 pSharedHandle: *mut HANDLE,
19314 ) -> HRESULT,
19315 >,
19316 pub GetUsage: ::std::option::Option<
19317 unsafe extern "C" fn(
19318 This: *mut IDXGIResource,
19319 pUsage: *mut DXGI_USAGE,
19320 ) -> HRESULT,
19321 >,
19322 pub SetEvictionPriority: ::std::option::Option<
19323 unsafe extern "C" fn(
19324 This: *mut IDXGIResource,
19325 EvictionPriority: UINT,
19326 ) -> HRESULT,
19327 >,
19328 pub GetEvictionPriority: ::std::option::Option<
19329 unsafe extern "C" fn(
19330 This: *mut IDXGIResource,
19331 pEvictionPriority: *mut UINT,
19332 ) -> HRESULT,
19333 >,
19334}
19335#[repr(C)]
19336#[derive(Debug, Copy, Clone, Hash, PartialOrd, Ord, PartialEq, Eq)]
19337pub struct IDXGIResource {
19338 pub lpVtbl: *mut IDXGIResourceVtbl,
19339}
19340impl Default for IDXGIResource {
19341 fn default() -> Self {
19342 let mut s = ::std::mem::MaybeUninit::<Self>::uninit();
19343 unsafe {
19344 ::std::ptr::write_bytes(s.as_mut_ptr(), 0, 1);
19345 s.assume_init()
19346 }
19347 }
19348}
19349extern "C" {
19350 pub static IID_IDXGIKeyedMutex: IID;
19351}
19352#[repr(C)]
19353#[derive(Debug, Default, Copy, Clone, Hash, PartialOrd, Ord, PartialEq, Eq)]
19354pub struct IDXGIKeyedMutexVtbl {
19355 pub QueryInterface: ::std::option::Option<
19356 unsafe extern "C" fn(
19357 This: *mut IDXGIKeyedMutex,
19358 riid: *const IID,
19359 ppvObject: *mut *mut ::std::os::raw::c_void,
19360 ) -> HRESULT,
19361 >,
19362 pub AddRef: ::std::option::Option<
19363 unsafe extern "C" fn(This: *mut IDXGIKeyedMutex) -> ULONG,
19364 >,
19365 pub Release: ::std::option::Option<
19366 unsafe extern "C" fn(This: *mut IDXGIKeyedMutex) -> ULONG,
19367 >,
19368 pub SetPrivateData: ::std::option::Option<
19369 unsafe extern "C" fn(
19370 This: *mut IDXGIKeyedMutex,
19371 Name: *const GUID,
19372 DataSize: UINT,
19373 pData: *const ::std::os::raw::c_void,
19374 ) -> HRESULT,
19375 >,
19376 pub SetPrivateDataInterface: ::std::option::Option<
19377 unsafe extern "C" fn(
19378 This: *mut IDXGIKeyedMutex,
19379 Name: *const GUID,
19380 pUnknown: *const IUnknown,
19381 ) -> HRESULT,
19382 >,
19383 pub GetPrivateData: ::std::option::Option<
19384 unsafe extern "C" fn(
19385 This: *mut IDXGIKeyedMutex,
19386 Name: *const GUID,
19387 pDataSize: *mut UINT,
19388 pData: *mut ::std::os::raw::c_void,
19389 ) -> HRESULT,
19390 >,
19391 pub GetParent: ::std::option::Option<
19392 unsafe extern "C" fn(
19393 This: *mut IDXGIKeyedMutex,
19394 riid: *const IID,
19395 ppParent: *mut *mut ::std::os::raw::c_void,
19396 ) -> HRESULT,
19397 >,
19398 pub GetDevice: ::std::option::Option<
19399 unsafe extern "C" fn(
19400 This: *mut IDXGIKeyedMutex,
19401 riid: *const IID,
19402 ppDevice: *mut *mut ::std::os::raw::c_void,
19403 ) -> HRESULT,
19404 >,
19405 pub AcquireSync: ::std::option::Option<
19406 unsafe extern "C" fn(
19407 This: *mut IDXGIKeyedMutex,
19408 Key: UINT64,
19409 dwMilliseconds: DWORD,
19410 ) -> HRESULT,
19411 >,
19412 pub ReleaseSync: ::std::option::Option<
19413 unsafe extern "C" fn(
19414 This: *mut IDXGIKeyedMutex,
19415 Key: UINT64,
19416 ) -> HRESULT,
19417 >,
19418}
19419#[repr(C)]
19420#[derive(Debug, Copy, Clone, Hash, PartialOrd, Ord, PartialEq, Eq)]
19421pub struct IDXGIKeyedMutex {
19422 pub lpVtbl: *mut IDXGIKeyedMutexVtbl,
19423}
19424impl Default for IDXGIKeyedMutex {
19425 fn default() -> Self {
19426 let mut s = ::std::mem::MaybeUninit::<Self>::uninit();
19427 unsafe {
19428 ::std::ptr::write_bytes(s.as_mut_ptr(), 0, 1);
19429 s.assume_init()
19430 }
19431 }
19432}
19433extern "C" {
19434 pub static IID_IDXGISurface: IID;
19435}
19436#[repr(C)]
19437#[derive(Debug, Default, Copy, Clone, Hash, PartialOrd, Ord, PartialEq, Eq)]
19438pub struct IDXGISurfaceVtbl {
19439 pub QueryInterface: ::std::option::Option<
19440 unsafe extern "C" fn(
19441 This: *mut IDXGISurface,
19442 riid: *const IID,
19443 ppvObject: *mut *mut ::std::os::raw::c_void,
19444 ) -> HRESULT,
19445 >,
19446 pub AddRef: ::std::option::Option<
19447 unsafe extern "C" fn(This: *mut IDXGISurface) -> ULONG,
19448 >,
19449 pub Release: ::std::option::Option<
19450 unsafe extern "C" fn(This: *mut IDXGISurface) -> ULONG,
19451 >,
19452 pub SetPrivateData: ::std::option::Option<
19453 unsafe extern "C" fn(
19454 This: *mut IDXGISurface,
19455 Name: *const GUID,
19456 DataSize: UINT,
19457 pData: *const ::std::os::raw::c_void,
19458 ) -> HRESULT,
19459 >,
19460 pub SetPrivateDataInterface: ::std::option::Option<
19461 unsafe extern "C" fn(
19462 This: *mut IDXGISurface,
19463 Name: *const GUID,
19464 pUnknown: *const IUnknown,
19465 ) -> HRESULT,
19466 >,
19467 pub GetPrivateData: ::std::option::Option<
19468 unsafe extern "C" fn(
19469 This: *mut IDXGISurface,
19470 Name: *const GUID,
19471 pDataSize: *mut UINT,
19472 pData: *mut ::std::os::raw::c_void,
19473 ) -> HRESULT,
19474 >,
19475 pub GetParent: ::std::option::Option<
19476 unsafe extern "C" fn(
19477 This: *mut IDXGISurface,
19478 riid: *const IID,
19479 ppParent: *mut *mut ::std::os::raw::c_void,
19480 ) -> HRESULT,
19481 >,
19482 pub GetDevice: ::std::option::Option<
19483 unsafe extern "C" fn(
19484 This: *mut IDXGISurface,
19485 riid: *const IID,
19486 ppDevice: *mut *mut ::std::os::raw::c_void,
19487 ) -> HRESULT,
19488 >,
19489 pub GetDesc: ::std::option::Option<
19490 unsafe extern "C" fn(
19491 This: *mut IDXGISurface,
19492 pDesc: *mut DXGI_SURFACE_DESC,
19493 ) -> HRESULT,
19494 >,
19495 pub Map: ::std::option::Option<
19496 unsafe extern "C" fn(
19497 This: *mut IDXGISurface,
19498 pLockedRect: *mut DXGI_MAPPED_RECT,
19499 MapFlags: UINT,
19500 ) -> HRESULT,
19501 >,
19502 pub Unmap: ::std::option::Option<
19503 unsafe extern "C" fn(This: *mut IDXGISurface) -> HRESULT,
19504 >,
19505}
19506#[repr(C)]
19507#[derive(Debug, Copy, Clone, Hash, PartialOrd, Ord, PartialEq, Eq)]
19508pub struct IDXGISurface {
19509 pub lpVtbl: *mut IDXGISurfaceVtbl,
19510}
19511impl Default for IDXGISurface {
19512 fn default() -> Self {
19513 let mut s = ::std::mem::MaybeUninit::<Self>::uninit();
19514 unsafe {
19515 ::std::ptr::write_bytes(s.as_mut_ptr(), 0, 1);
19516 s.assume_init()
19517 }
19518 }
19519}
19520extern "C" {
19521 pub static IID_IDXGISurface1: IID;
19522}
19523#[repr(C)]
19524#[derive(Debug, Default, Copy, Clone, Hash, PartialOrd, Ord, PartialEq, Eq)]
19525pub struct IDXGISurface1Vtbl {
19526 pub QueryInterface: ::std::option::Option<
19527 unsafe extern "C" fn(
19528 This: *mut IDXGISurface1,
19529 riid: *const IID,
19530 ppvObject: *mut *mut ::std::os::raw::c_void,
19531 ) -> HRESULT,
19532 >,
19533 pub AddRef: ::std::option::Option<
19534 unsafe extern "C" fn(This: *mut IDXGISurface1) -> ULONG,
19535 >,
19536 pub Release: ::std::option::Option<
19537 unsafe extern "C" fn(This: *mut IDXGISurface1) -> ULONG,
19538 >,
19539 pub SetPrivateData: ::std::option::Option<
19540 unsafe extern "C" fn(
19541 This: *mut IDXGISurface1,
19542 Name: *const GUID,
19543 DataSize: UINT,
19544 pData: *const ::std::os::raw::c_void,
19545 ) -> HRESULT,
19546 >,
19547 pub SetPrivateDataInterface: ::std::option::Option<
19548 unsafe extern "C" fn(
19549 This: *mut IDXGISurface1,
19550 Name: *const GUID,
19551 pUnknown: *const IUnknown,
19552 ) -> HRESULT,
19553 >,
19554 pub GetPrivateData: ::std::option::Option<
19555 unsafe extern "C" fn(
19556 This: *mut IDXGISurface1,
19557 Name: *const GUID,
19558 pDataSize: *mut UINT,
19559 pData: *mut ::std::os::raw::c_void,
19560 ) -> HRESULT,
19561 >,
19562 pub GetParent: ::std::option::Option<
19563 unsafe extern "C" fn(
19564 This: *mut IDXGISurface1,
19565 riid: *const IID,
19566 ppParent: *mut *mut ::std::os::raw::c_void,
19567 ) -> HRESULT,
19568 >,
19569 pub GetDevice: ::std::option::Option<
19570 unsafe extern "C" fn(
19571 This: *mut IDXGISurface1,
19572 riid: *const IID,
19573 ppDevice: *mut *mut ::std::os::raw::c_void,
19574 ) -> HRESULT,
19575 >,
19576 pub GetDesc: ::std::option::Option<
19577 unsafe extern "C" fn(
19578 This: *mut IDXGISurface1,
19579 pDesc: *mut DXGI_SURFACE_DESC,
19580 ) -> HRESULT,
19581 >,
19582 pub Map: ::std::option::Option<
19583 unsafe extern "C" fn(
19584 This: *mut IDXGISurface1,
19585 pLockedRect: *mut DXGI_MAPPED_RECT,
19586 MapFlags: UINT,
19587 ) -> HRESULT,
19588 >,
19589 pub Unmap: ::std::option::Option<
19590 unsafe extern "C" fn(This: *mut IDXGISurface1) -> HRESULT,
19591 >,
19592 pub GetDC: ::std::option::Option<
19593 unsafe extern "C" fn(
19594 This: *mut IDXGISurface1,
19595 Discard: BOOL,
19596 phdc: *mut HDC,
19597 ) -> HRESULT,
19598 >,
19599 pub ReleaseDC: ::std::option::Option<
19600 unsafe extern "C" fn(
19601 This: *mut IDXGISurface1,
19602 pDirtyRect: *mut RECT,
19603 ) -> HRESULT,
19604 >,
19605}
19606#[repr(C)]
19607#[derive(Debug, Copy, Clone, Hash, PartialOrd, Ord, PartialEq, Eq)]
19608pub struct IDXGISurface1 {
19609 pub lpVtbl: *mut IDXGISurface1Vtbl,
19610}
19611impl Default for IDXGISurface1 {
19612 fn default() -> Self {
19613 let mut s = ::std::mem::MaybeUninit::<Self>::uninit();
19614 unsafe {
19615 ::std::ptr::write_bytes(s.as_mut_ptr(), 0, 1);
19616 s.assume_init()
19617 }
19618 }
19619}
19620extern "C" {
19621 pub static IID_IDXGIAdapter: IID;
19622}
19623#[repr(C)]
19624#[derive(Debug, Default, Copy, Clone, Hash, PartialOrd, Ord, PartialEq, Eq)]
19625pub struct IDXGIAdapterVtbl {
19626 pub QueryInterface: ::std::option::Option<
19627 unsafe extern "C" fn(
19628 This: *mut IDXGIAdapter,
19629 riid: *const IID,
19630 ppvObject: *mut *mut ::std::os::raw::c_void,
19631 ) -> HRESULT,
19632 >,
19633 pub AddRef: ::std::option::Option<
19634 unsafe extern "C" fn(This: *mut IDXGIAdapter) -> ULONG,
19635 >,
19636 pub Release: ::std::option::Option<
19637 unsafe extern "C" fn(This: *mut IDXGIAdapter) -> ULONG,
19638 >,
19639 pub SetPrivateData: ::std::option::Option<
19640 unsafe extern "C" fn(
19641 This: *mut IDXGIAdapter,
19642 Name: *const GUID,
19643 DataSize: UINT,
19644 pData: *const ::std::os::raw::c_void,
19645 ) -> HRESULT,
19646 >,
19647 pub SetPrivateDataInterface: ::std::option::Option<
19648 unsafe extern "C" fn(
19649 This: *mut IDXGIAdapter,
19650 Name: *const GUID,
19651 pUnknown: *const IUnknown,
19652 ) -> HRESULT,
19653 >,
19654 pub GetPrivateData: ::std::option::Option<
19655 unsafe extern "C" fn(
19656 This: *mut IDXGIAdapter,
19657 Name: *const GUID,
19658 pDataSize: *mut UINT,
19659 pData: *mut ::std::os::raw::c_void,
19660 ) -> HRESULT,
19661 >,
19662 pub GetParent: ::std::option::Option<
19663 unsafe extern "C" fn(
19664 This: *mut IDXGIAdapter,
19665 riid: *const IID,
19666 ppParent: *mut *mut ::std::os::raw::c_void,
19667 ) -> HRESULT,
19668 >,
19669 pub EnumOutputs: ::std::option::Option<
19670 unsafe extern "C" fn(
19671 This: *mut IDXGIAdapter,
19672 Output: UINT,
19673 ppOutput: *mut *mut IDXGIOutput,
19674 ) -> HRESULT,
19675 >,
19676 pub GetDesc: ::std::option::Option<
19677 unsafe extern "C" fn(
19678 This: *mut IDXGIAdapter,
19679 pDesc: *mut DXGI_ADAPTER_DESC,
19680 ) -> HRESULT,
19681 >,
19682 pub CheckInterfaceSupport: ::std::option::Option<
19683 unsafe extern "C" fn(
19684 This: *mut IDXGIAdapter,
19685 InterfaceName: *const GUID,
19686 pUMDVersion: *mut LARGE_INTEGER,
19687 ) -> HRESULT,
19688 >,
19689}
19690#[repr(C)]
19691#[derive(Debug, Copy, Clone, Hash, PartialOrd, Ord, PartialEq, Eq)]
19692pub struct IDXGIAdapter {
19693 pub lpVtbl: *mut IDXGIAdapterVtbl,
19694}
19695impl Default for IDXGIAdapter {
19696 fn default() -> Self {
19697 let mut s = ::std::mem::MaybeUninit::<Self>::uninit();
19698 unsafe {
19699 ::std::ptr::write_bytes(s.as_mut_ptr(), 0, 1);
19700 s.assume_init()
19701 }
19702 }
19703}
19704extern "C" {
19705 pub static IID_IDXGIOutput: IID;
19706}
19707#[repr(C)]
19708#[derive(Debug, Default, Copy, Clone, Hash, PartialOrd, Ord, PartialEq, Eq)]
19709pub struct IDXGIOutputVtbl {
19710 pub QueryInterface: ::std::option::Option<
19711 unsafe extern "C" fn(
19712 This: *mut IDXGIOutput,
19713 riid: *const IID,
19714 ppvObject: *mut *mut ::std::os::raw::c_void,
19715 ) -> HRESULT,
19716 >,
19717 pub AddRef: ::std::option::Option<
19718 unsafe extern "C" fn(This: *mut IDXGIOutput) -> ULONG,
19719 >,
19720 pub Release: ::std::option::Option<
19721 unsafe extern "C" fn(This: *mut IDXGIOutput) -> ULONG,
19722 >,
19723 pub SetPrivateData: ::std::option::Option<
19724 unsafe extern "C" fn(
19725 This: *mut IDXGIOutput,
19726 Name: *const GUID,
19727 DataSize: UINT,
19728 pData: *const ::std::os::raw::c_void,
19729 ) -> HRESULT,
19730 >,
19731 pub SetPrivateDataInterface: ::std::option::Option<
19732 unsafe extern "C" fn(
19733 This: *mut IDXGIOutput,
19734 Name: *const GUID,
19735 pUnknown: *const IUnknown,
19736 ) -> HRESULT,
19737 >,
19738 pub GetPrivateData: ::std::option::Option<
19739 unsafe extern "C" fn(
19740 This: *mut IDXGIOutput,
19741 Name: *const GUID,
19742 pDataSize: *mut UINT,
19743 pData: *mut ::std::os::raw::c_void,
19744 ) -> HRESULT,
19745 >,
19746 pub GetParent: ::std::option::Option<
19747 unsafe extern "C" fn(
19748 This: *mut IDXGIOutput,
19749 riid: *const IID,
19750 ppParent: *mut *mut ::std::os::raw::c_void,
19751 ) -> HRESULT,
19752 >,
19753 pub GetDesc: ::std::option::Option<
19754 unsafe extern "C" fn(
19755 This: *mut IDXGIOutput,
19756 pDesc: *mut DXGI_OUTPUT_DESC,
19757 ) -> HRESULT,
19758 >,
19759 pub GetDisplayModeList: ::std::option::Option<
19760 unsafe extern "C" fn(
19761 This: *mut IDXGIOutput,
19762 EnumFormat: DXGI_FORMAT,
19763 Flags: UINT,
19764 pNumModes: *mut UINT,
19765 pDesc: *mut DXGI_MODE_DESC,
19766 ) -> HRESULT,
19767 >,
19768 pub FindClosestMatchingMode: ::std::option::Option<
19769 unsafe extern "C" fn(
19770 This: *mut IDXGIOutput,
19771 pModeToMatch: *const DXGI_MODE_DESC,
19772 pClosestMatch: *mut DXGI_MODE_DESC,
19773 pConcernedDevice: *mut IUnknown,
19774 ) -> HRESULT,
19775 >,
19776 pub WaitForVBlank: ::std::option::Option<
19777 unsafe extern "C" fn(This: *mut IDXGIOutput) -> HRESULT,
19778 >,
19779 pub TakeOwnership: ::std::option::Option<
19780 unsafe extern "C" fn(
19781 This: *mut IDXGIOutput,
19782 pDevice: *mut IUnknown,
19783 Exclusive: BOOL,
19784 ) -> HRESULT,
19785 >,
19786 pub ReleaseOwnership:
19787 ::std::option::Option<unsafe extern "C" fn(This: *mut IDXGIOutput)>,
19788 pub GetGammaControlCapabilities: ::std::option::Option<
19789 unsafe extern "C" fn(
19790 This: *mut IDXGIOutput,
19791 pGammaCaps: *mut DXGI_GAMMA_CONTROL_CAPABILITIES,
19792 ) -> HRESULT,
19793 >,
19794 pub SetGammaControl: ::std::option::Option<
19795 unsafe extern "C" fn(
19796 This: *mut IDXGIOutput,
19797 pArray: *const DXGI_GAMMA_CONTROL,
19798 ) -> HRESULT,
19799 >,
19800 pub GetGammaControl: ::std::option::Option<
19801 unsafe extern "C" fn(
19802 This: *mut IDXGIOutput,
19803 pArray: *mut DXGI_GAMMA_CONTROL,
19804 ) -> HRESULT,
19805 >,
19806 pub SetDisplaySurface: ::std::option::Option<
19807 unsafe extern "C" fn(
19808 This: *mut IDXGIOutput,
19809 pScanoutSurface: *mut IDXGISurface,
19810 ) -> HRESULT,
19811 >,
19812 pub GetDisplaySurfaceData: ::std::option::Option<
19813 unsafe extern "C" fn(
19814 This: *mut IDXGIOutput,
19815 pDestination: *mut IDXGISurface,
19816 ) -> HRESULT,
19817 >,
19818 pub GetFrameStatistics: ::std::option::Option<
19819 unsafe extern "C" fn(
19820 This: *mut IDXGIOutput,
19821 pStats: *mut DXGI_FRAME_STATISTICS,
19822 ) -> HRESULT,
19823 >,
19824}
19825#[repr(C)]
19826#[derive(Debug, Copy, Clone, Hash, PartialOrd, Ord, PartialEq, Eq)]
19827pub struct IDXGIOutput {
19828 pub lpVtbl: *mut IDXGIOutputVtbl,
19829}
19830impl Default for IDXGIOutput {
19831 fn default() -> Self {
19832 let mut s = ::std::mem::MaybeUninit::<Self>::uninit();
19833 unsafe {
19834 ::std::ptr::write_bytes(s.as_mut_ptr(), 0, 1);
19835 s.assume_init()
19836 }
19837 }
19838}
19839extern "C" {
19840 pub static IID_IDXGISwapChain: IID;
19841}
19842#[repr(C)]
19843#[derive(Debug, Default, Copy, Clone, Hash, PartialOrd, Ord, PartialEq, Eq)]
19844pub struct IDXGISwapChainVtbl {
19845 pub QueryInterface: ::std::option::Option<
19846 unsafe extern "C" fn(
19847 This: *mut IDXGISwapChain,
19848 riid: *const IID,
19849 ppvObject: *mut *mut ::std::os::raw::c_void,
19850 ) -> HRESULT,
19851 >,
19852 pub AddRef: ::std::option::Option<
19853 unsafe extern "C" fn(This: *mut IDXGISwapChain) -> ULONG,
19854 >,
19855 pub Release: ::std::option::Option<
19856 unsafe extern "C" fn(This: *mut IDXGISwapChain) -> ULONG,
19857 >,
19858 pub SetPrivateData: ::std::option::Option<
19859 unsafe extern "C" fn(
19860 This: *mut IDXGISwapChain,
19861 Name: *const GUID,
19862 DataSize: UINT,
19863 pData: *const ::std::os::raw::c_void,
19864 ) -> HRESULT,
19865 >,
19866 pub SetPrivateDataInterface: ::std::option::Option<
19867 unsafe extern "C" fn(
19868 This: *mut IDXGISwapChain,
19869 Name: *const GUID,
19870 pUnknown: *const IUnknown,
19871 ) -> HRESULT,
19872 >,
19873 pub GetPrivateData: ::std::option::Option<
19874 unsafe extern "C" fn(
19875 This: *mut IDXGISwapChain,
19876 Name: *const GUID,
19877 pDataSize: *mut UINT,
19878 pData: *mut ::std::os::raw::c_void,
19879 ) -> HRESULT,
19880 >,
19881 pub GetParent: ::std::option::Option<
19882 unsafe extern "C" fn(
19883 This: *mut IDXGISwapChain,
19884 riid: *const IID,
19885 ppParent: *mut *mut ::std::os::raw::c_void,
19886 ) -> HRESULT,
19887 >,
19888 pub GetDevice: ::std::option::Option<
19889 unsafe extern "C" fn(
19890 This: *mut IDXGISwapChain,
19891 riid: *const IID,
19892 ppDevice: *mut *mut ::std::os::raw::c_void,
19893 ) -> HRESULT,
19894 >,
19895 pub Present: ::std::option::Option<
19896 unsafe extern "C" fn(
19897 This: *mut IDXGISwapChain,
19898 SyncInterval: UINT,
19899 Flags: UINT,
19900 ) -> HRESULT,
19901 >,
19902 pub GetBuffer: ::std::option::Option<
19903 unsafe extern "C" fn(
19904 This: *mut IDXGISwapChain,
19905 Buffer: UINT,
19906 riid: *const IID,
19907 ppSurface: *mut *mut ::std::os::raw::c_void,
19908 ) -> HRESULT,
19909 >,
19910 pub SetFullscreenState: ::std::option::Option<
19911 unsafe extern "C" fn(
19912 This: *mut IDXGISwapChain,
19913 Fullscreen: BOOL,
19914 pTarget: *mut IDXGIOutput,
19915 ) -> HRESULT,
19916 >,
19917 pub GetFullscreenState: ::std::option::Option<
19918 unsafe extern "C" fn(
19919 This: *mut IDXGISwapChain,
19920 pFullscreen: *mut BOOL,
19921 ppTarget: *mut *mut IDXGIOutput,
19922 ) -> HRESULT,
19923 >,
19924 pub GetDesc: ::std::option::Option<
19925 unsafe extern "C" fn(
19926 This: *mut IDXGISwapChain,
19927 pDesc: *mut DXGI_SWAP_CHAIN_DESC,
19928 ) -> HRESULT,
19929 >,
19930 pub ResizeBuffers: ::std::option::Option<
19931 unsafe extern "C" fn(
19932 This: *mut IDXGISwapChain,
19933 BufferCount: UINT,
19934 Width: UINT,
19935 Height: UINT,
19936 NewFormat: DXGI_FORMAT,
19937 SwapChainFlags: UINT,
19938 ) -> HRESULT,
19939 >,
19940 pub ResizeTarget: ::std::option::Option<
19941 unsafe extern "C" fn(
19942 This: *mut IDXGISwapChain,
19943 pNewTargetParameters: *const DXGI_MODE_DESC,
19944 ) -> HRESULT,
19945 >,
19946 pub GetContainingOutput: ::std::option::Option<
19947 unsafe extern "C" fn(
19948 This: *mut IDXGISwapChain,
19949 ppOutput: *mut *mut IDXGIOutput,
19950 ) -> HRESULT,
19951 >,
19952 pub GetFrameStatistics: ::std::option::Option<
19953 unsafe extern "C" fn(
19954 This: *mut IDXGISwapChain,
19955 pStats: *mut DXGI_FRAME_STATISTICS,
19956 ) -> HRESULT,
19957 >,
19958 pub GetLastPresentCount: ::std::option::Option<
19959 unsafe extern "C" fn(
19960 This: *mut IDXGISwapChain,
19961 pLastPresentCount: *mut UINT,
19962 ) -> HRESULT,
19963 >,
19964}
19965#[repr(C)]
19966#[derive(Debug, Copy, Clone, Hash, PartialOrd, Ord, PartialEq, Eq)]
19967pub struct IDXGISwapChain {
19968 pub lpVtbl: *mut IDXGISwapChainVtbl,
19969}
19970impl Default for IDXGISwapChain {
19971 fn default() -> Self {
19972 let mut s = ::std::mem::MaybeUninit::<Self>::uninit();
19973 unsafe {
19974 ::std::ptr::write_bytes(s.as_mut_ptr(), 0, 1);
19975 s.assume_init()
19976 }
19977 }
19978}
19979extern "C" {
19980 pub static IID_IDXGIFactory: IID;
19981}
19982#[repr(C)]
19983#[derive(Debug, Default, Copy, Clone, Hash, PartialOrd, Ord, PartialEq, Eq)]
19984pub struct IDXGIFactoryVtbl {
19985 pub QueryInterface: ::std::option::Option<
19986 unsafe extern "C" fn(
19987 This: *mut IDXGIFactory,
19988 riid: *const IID,
19989 ppvObject: *mut *mut ::std::os::raw::c_void,
19990 ) -> HRESULT,
19991 >,
19992 pub AddRef: ::std::option::Option<
19993 unsafe extern "C" fn(This: *mut IDXGIFactory) -> ULONG,
19994 >,
19995 pub Release: ::std::option::Option<
19996 unsafe extern "C" fn(This: *mut IDXGIFactory) -> ULONG,
19997 >,
19998 pub SetPrivateData: ::std::option::Option<
19999 unsafe extern "C" fn(
20000 This: *mut IDXGIFactory,
20001 Name: *const GUID,
20002 DataSize: UINT,
20003 pData: *const ::std::os::raw::c_void,
20004 ) -> HRESULT,
20005 >,
20006 pub SetPrivateDataInterface: ::std::option::Option<
20007 unsafe extern "C" fn(
20008 This: *mut IDXGIFactory,
20009 Name: *const GUID,
20010 pUnknown: *const IUnknown,
20011 ) -> HRESULT,
20012 >,
20013 pub GetPrivateData: ::std::option::Option<
20014 unsafe extern "C" fn(
20015 This: *mut IDXGIFactory,
20016 Name: *const GUID,
20017 pDataSize: *mut UINT,
20018 pData: *mut ::std::os::raw::c_void,
20019 ) -> HRESULT,
20020 >,
20021 pub GetParent: ::std::option::Option<
20022 unsafe extern "C" fn(
20023 This: *mut IDXGIFactory,
20024 riid: *const IID,
20025 ppParent: *mut *mut ::std::os::raw::c_void,
20026 ) -> HRESULT,
20027 >,
20028 pub EnumAdapters: ::std::option::Option<
20029 unsafe extern "C" fn(
20030 This: *mut IDXGIFactory,
20031 Adapter: UINT,
20032 ppAdapter: *mut *mut IDXGIAdapter,
20033 ) -> HRESULT,
20034 >,
20035 pub MakeWindowAssociation: ::std::option::Option<
20036 unsafe extern "C" fn(
20037 This: *mut IDXGIFactory,
20038 WindowHandle: HWND,
20039 Flags: UINT,
20040 ) -> HRESULT,
20041 >,
20042 pub GetWindowAssociation: ::std::option::Option<
20043 unsafe extern "C" fn(
20044 This: *mut IDXGIFactory,
20045 pWindowHandle: *mut HWND,
20046 ) -> HRESULT,
20047 >,
20048 pub CreateSwapChain: ::std::option::Option<
20049 unsafe extern "C" fn(
20050 This: *mut IDXGIFactory,
20051 pDevice: *mut IUnknown,
20052 pDesc: *mut DXGI_SWAP_CHAIN_DESC,
20053 ppSwapChain: *mut *mut IDXGISwapChain,
20054 ) -> HRESULT,
20055 >,
20056 pub CreateSoftwareAdapter: ::std::option::Option<
20057 unsafe extern "C" fn(
20058 This: *mut IDXGIFactory,
20059 Module: HMODULE,
20060 ppAdapter: *mut *mut IDXGIAdapter,
20061 ) -> HRESULT,
20062 >,
20063}
20064#[repr(C)]
20065#[derive(Debug, Copy, Clone, Hash, PartialOrd, Ord, PartialEq, Eq)]
20066pub struct IDXGIFactory {
20067 pub lpVtbl: *mut IDXGIFactoryVtbl,
20068}
20069impl Default for IDXGIFactory {
20070 fn default() -> Self {
20071 let mut s = ::std::mem::MaybeUninit::<Self>::uninit();
20072 unsafe {
20073 ::std::ptr::write_bytes(s.as_mut_ptr(), 0, 1);
20074 s.assume_init()
20075 }
20076 }
20077}
20078extern "C" {
20079 pub fn CreateDXGIFactory(
20080 riid: *const IID,
20081 ppFactory: *mut *mut ::std::os::raw::c_void,
20082 ) -> HRESULT;
20083}
20084extern "C" {
20085 pub fn CreateDXGIFactory1(
20086 riid: *const IID,
20087 ppFactory: *mut *mut ::std::os::raw::c_void,
20088 ) -> HRESULT;
20089}
20090extern "C" {
20091 pub static IID_IDXGIDevice: IID;
20092}
20093#[repr(C)]
20094#[derive(Debug, Default, Copy, Clone, Hash, PartialOrd, Ord, PartialEq, Eq)]
20095pub struct IDXGIDeviceVtbl {
20096 pub QueryInterface: ::std::option::Option<
20097 unsafe extern "C" fn(
20098 This: *mut IDXGIDevice,
20099 riid: *const IID,
20100 ppvObject: *mut *mut ::std::os::raw::c_void,
20101 ) -> HRESULT,
20102 >,
20103 pub AddRef: ::std::option::Option<
20104 unsafe extern "C" fn(This: *mut IDXGIDevice) -> ULONG,
20105 >,
20106 pub Release: ::std::option::Option<
20107 unsafe extern "C" fn(This: *mut IDXGIDevice) -> ULONG,
20108 >,
20109 pub SetPrivateData: ::std::option::Option<
20110 unsafe extern "C" fn(
20111 This: *mut IDXGIDevice,
20112 Name: *const GUID,
20113 DataSize: UINT,
20114 pData: *const ::std::os::raw::c_void,
20115 ) -> HRESULT,
20116 >,
20117 pub SetPrivateDataInterface: ::std::option::Option<
20118 unsafe extern "C" fn(
20119 This: *mut IDXGIDevice,
20120 Name: *const GUID,
20121 pUnknown: *const IUnknown,
20122 ) -> HRESULT,
20123 >,
20124 pub GetPrivateData: ::std::option::Option<
20125 unsafe extern "C" fn(
20126 This: *mut IDXGIDevice,
20127 Name: *const GUID,
20128 pDataSize: *mut UINT,
20129 pData: *mut ::std::os::raw::c_void,
20130 ) -> HRESULT,
20131 >,
20132 pub GetParent: ::std::option::Option<
20133 unsafe extern "C" fn(
20134 This: *mut IDXGIDevice,
20135 riid: *const IID,
20136 ppParent: *mut *mut ::std::os::raw::c_void,
20137 ) -> HRESULT,
20138 >,
20139 pub GetAdapter: ::std::option::Option<
20140 unsafe extern "C" fn(
20141 This: *mut IDXGIDevice,
20142 pAdapter: *mut *mut IDXGIAdapter,
20143 ) -> HRESULT,
20144 >,
20145 pub CreateSurface: ::std::option::Option<
20146 unsafe extern "C" fn(
20147 This: *mut IDXGIDevice,
20148 pDesc: *const DXGI_SURFACE_DESC,
20149 NumSurfaces: UINT,
20150 Usage: DXGI_USAGE,
20151 pSharedResource: *const DXGI_SHARED_RESOURCE,
20152 ppSurface: *mut *mut IDXGISurface,
20153 ) -> HRESULT,
20154 >,
20155 pub QueryResourceResidency: ::std::option::Option<
20156 unsafe extern "C" fn(
20157 This: *mut IDXGIDevice,
20158 ppResources: *const *mut IUnknown,
20159 pResidencyStatus: *mut DXGI_RESIDENCY,
20160 NumResources: UINT,
20161 ) -> HRESULT,
20162 >,
20163 pub SetGPUThreadPriority: ::std::option::Option<
20164 unsafe extern "C" fn(This: *mut IDXGIDevice, Priority: INT) -> HRESULT,
20165 >,
20166 pub GetGPUThreadPriority: ::std::option::Option<
20167 unsafe extern "C" fn(
20168 This: *mut IDXGIDevice,
20169 pPriority: *mut INT,
20170 ) -> HRESULT,
20171 >,
20172}
20173#[repr(C)]
20174#[derive(Debug, Copy, Clone, Hash, PartialOrd, Ord, PartialEq, Eq)]
20175pub struct IDXGIDevice {
20176 pub lpVtbl: *mut IDXGIDeviceVtbl,
20177}
20178impl Default for IDXGIDevice {
20179 fn default() -> Self {
20180 let mut s = ::std::mem::MaybeUninit::<Self>::uninit();
20181 unsafe {
20182 ::std::ptr::write_bytes(s.as_mut_ptr(), 0, 1);
20183 s.assume_init()
20184 }
20185 }
20186}
20187pub const DXGI_ADAPTER_FLAG_DXGI_ADAPTER_FLAG_NONE: DXGI_ADAPTER_FLAG = 0;
20188pub const DXGI_ADAPTER_FLAG_DXGI_ADAPTER_FLAG_REMOTE: DXGI_ADAPTER_FLAG = 1;
20189pub const DXGI_ADAPTER_FLAG_DXGI_ADAPTER_FLAG_SOFTWARE: DXGI_ADAPTER_FLAG = 2;
20190pub const DXGI_ADAPTER_FLAG_DXGI_ADAPTER_FLAG_FORCE_DWORD: DXGI_ADAPTER_FLAG =
20191 -1;
20192pub type DXGI_ADAPTER_FLAG = ::std::os::raw::c_int;
20193#[repr(C)]
20194#[derive(Debug, Copy, Clone, Hash, PartialOrd, Ord, PartialEq, Eq)]
20195pub struct DXGI_ADAPTER_DESC1 {
20196 pub Description: [WCHAR; 128usize],
20197 pub VendorId: UINT,
20198 pub DeviceId: UINT,
20199 pub SubSysId: UINT,
20200 pub Revision: UINT,
20201 pub DedicatedVideoMemory: SIZE_T,
20202 pub DedicatedSystemMemory: SIZE_T,
20203 pub SharedSystemMemory: SIZE_T,
20204 pub AdapterLuid: LUID,
20205 pub Flags: UINT,
20206}
20207impl Default for DXGI_ADAPTER_DESC1 {
20208 fn default() -> Self {
20209 let mut s = ::std::mem::MaybeUninit::<Self>::uninit();
20210 unsafe {
20211 ::std::ptr::write_bytes(s.as_mut_ptr(), 0, 1);
20212 s.assume_init()
20213 }
20214 }
20215}
20216#[repr(C)]
20217#[derive(Debug, Default, Copy, Clone, PartialOrd, PartialEq)]
20218pub struct DXGI_DISPLAY_COLOR_SPACE {
20219 pub PrimaryCoordinates: [[FLOAT; 2usize]; 8usize],
20220 pub WhitePoints: [[FLOAT; 2usize]; 16usize],
20221}
20222extern "C" {
20223 pub static IID_IDXGIFactory1: IID;
20224}
20225#[repr(C)]
20226#[derive(Debug, Default, Copy, Clone, Hash, PartialOrd, Ord, PartialEq, Eq)]
20227pub struct IDXGIFactory1Vtbl {
20228 pub QueryInterface: ::std::option::Option<
20229 unsafe extern "C" fn(
20230 This: *mut IDXGIFactory1,
20231 riid: *const IID,
20232 ppvObject: *mut *mut ::std::os::raw::c_void,
20233 ) -> HRESULT,
20234 >,
20235 pub AddRef: ::std::option::Option<
20236 unsafe extern "C" fn(This: *mut IDXGIFactory1) -> ULONG,
20237 >,
20238 pub Release: ::std::option::Option<
20239 unsafe extern "C" fn(This: *mut IDXGIFactory1) -> ULONG,
20240 >,
20241 pub SetPrivateData: ::std::option::Option<
20242 unsafe extern "C" fn(
20243 This: *mut IDXGIFactory1,
20244 Name: *const GUID,
20245 DataSize: UINT,
20246 pData: *const ::std::os::raw::c_void,
20247 ) -> HRESULT,
20248 >,
20249 pub SetPrivateDataInterface: ::std::option::Option<
20250 unsafe extern "C" fn(
20251 This: *mut IDXGIFactory1,
20252 Name: *const GUID,
20253 pUnknown: *const IUnknown,
20254 ) -> HRESULT,
20255 >,
20256 pub GetPrivateData: ::std::option::Option<
20257 unsafe extern "C" fn(
20258 This: *mut IDXGIFactory1,
20259 Name: *const GUID,
20260 pDataSize: *mut UINT,
20261 pData: *mut ::std::os::raw::c_void,
20262 ) -> HRESULT,
20263 >,
20264 pub GetParent: ::std::option::Option<
20265 unsafe extern "C" fn(
20266 This: *mut IDXGIFactory1,
20267 riid: *const IID,
20268 ppParent: *mut *mut ::std::os::raw::c_void,
20269 ) -> HRESULT,
20270 >,
20271 pub EnumAdapters: ::std::option::Option<
20272 unsafe extern "C" fn(
20273 This: *mut IDXGIFactory1,
20274 Adapter: UINT,
20275 ppAdapter: *mut *mut IDXGIAdapter,
20276 ) -> HRESULT,
20277 >,
20278 pub MakeWindowAssociation: ::std::option::Option<
20279 unsafe extern "C" fn(
20280 This: *mut IDXGIFactory1,
20281 WindowHandle: HWND,
20282 Flags: UINT,
20283 ) -> HRESULT,
20284 >,
20285 pub GetWindowAssociation: ::std::option::Option<
20286 unsafe extern "C" fn(
20287 This: *mut IDXGIFactory1,
20288 pWindowHandle: *mut HWND,
20289 ) -> HRESULT,
20290 >,
20291 pub CreateSwapChain: ::std::option::Option<
20292 unsafe extern "C" fn(
20293 This: *mut IDXGIFactory1,
20294 pDevice: *mut IUnknown,
20295 pDesc: *mut DXGI_SWAP_CHAIN_DESC,
20296 ppSwapChain: *mut *mut IDXGISwapChain,
20297 ) -> HRESULT,
20298 >,
20299 pub CreateSoftwareAdapter: ::std::option::Option<
20300 unsafe extern "C" fn(
20301 This: *mut IDXGIFactory1,
20302 Module: HMODULE,
20303 ppAdapter: *mut *mut IDXGIAdapter,
20304 ) -> HRESULT,
20305 >,
20306 pub EnumAdapters1: ::std::option::Option<
20307 unsafe extern "C" fn(
20308 This: *mut IDXGIFactory1,
20309 Adapter: UINT,
20310 ppAdapter: *mut *mut IDXGIAdapter1,
20311 ) -> HRESULT,
20312 >,
20313 pub IsCurrent: ::std::option::Option<
20314 unsafe extern "C" fn(This: *mut IDXGIFactory1) -> BOOL,
20315 >,
20316}
20317#[repr(C)]
20318#[derive(Debug, Copy, Clone, Hash, PartialOrd, Ord, PartialEq, Eq)]
20319pub struct IDXGIFactory1 {
20320 pub lpVtbl: *mut IDXGIFactory1Vtbl,
20321}
20322impl Default for IDXGIFactory1 {
20323 fn default() -> Self {
20324 let mut s = ::std::mem::MaybeUninit::<Self>::uninit();
20325 unsafe {
20326 ::std::ptr::write_bytes(s.as_mut_ptr(), 0, 1);
20327 s.assume_init()
20328 }
20329 }
20330}
20331extern "C" {
20332 pub static IID_IDXGIAdapter1: IID;
20333}
20334#[repr(C)]
20335#[derive(Debug, Default, Copy, Clone, Hash, PartialOrd, Ord, PartialEq, Eq)]
20336pub struct IDXGIAdapter1Vtbl {
20337 pub QueryInterface: ::std::option::Option<
20338 unsafe extern "C" fn(
20339 This: *mut IDXGIAdapter1,
20340 riid: *const IID,
20341 ppvObject: *mut *mut ::std::os::raw::c_void,
20342 ) -> HRESULT,
20343 >,
20344 pub AddRef: ::std::option::Option<
20345 unsafe extern "C" fn(This: *mut IDXGIAdapter1) -> ULONG,
20346 >,
20347 pub Release: ::std::option::Option<
20348 unsafe extern "C" fn(This: *mut IDXGIAdapter1) -> ULONG,
20349 >,
20350 pub SetPrivateData: ::std::option::Option<
20351 unsafe extern "C" fn(
20352 This: *mut IDXGIAdapter1,
20353 Name: *const GUID,
20354 DataSize: UINT,
20355 pData: *const ::std::os::raw::c_void,
20356 ) -> HRESULT,
20357 >,
20358 pub SetPrivateDataInterface: ::std::option::Option<
20359 unsafe extern "C" fn(
20360 This: *mut IDXGIAdapter1,
20361 Name: *const GUID,
20362 pUnknown: *const IUnknown,
20363 ) -> HRESULT,
20364 >,
20365 pub GetPrivateData: ::std::option::Option<
20366 unsafe extern "C" fn(
20367 This: *mut IDXGIAdapter1,
20368 Name: *const GUID,
20369 pDataSize: *mut UINT,
20370 pData: *mut ::std::os::raw::c_void,
20371 ) -> HRESULT,
20372 >,
20373 pub GetParent: ::std::option::Option<
20374 unsafe extern "C" fn(
20375 This: *mut IDXGIAdapter1,
20376 riid: *const IID,
20377 ppParent: *mut *mut ::std::os::raw::c_void,
20378 ) -> HRESULT,
20379 >,
20380 pub EnumOutputs: ::std::option::Option<
20381 unsafe extern "C" fn(
20382 This: *mut IDXGIAdapter1,
20383 Output: UINT,
20384 ppOutput: *mut *mut IDXGIOutput,
20385 ) -> HRESULT,
20386 >,
20387 pub GetDesc: ::std::option::Option<
20388 unsafe extern "C" fn(
20389 This: *mut IDXGIAdapter1,
20390 pDesc: *mut DXGI_ADAPTER_DESC,
20391 ) -> HRESULT,
20392 >,
20393 pub CheckInterfaceSupport: ::std::option::Option<
20394 unsafe extern "C" fn(
20395 This: *mut IDXGIAdapter1,
20396 InterfaceName: *const GUID,
20397 pUMDVersion: *mut LARGE_INTEGER,
20398 ) -> HRESULT,
20399 >,
20400 pub GetDesc1: ::std::option::Option<
20401 unsafe extern "C" fn(
20402 This: *mut IDXGIAdapter1,
20403 pDesc: *mut DXGI_ADAPTER_DESC1,
20404 ) -> HRESULT,
20405 >,
20406}
20407#[repr(C)]
20408#[derive(Debug, Copy, Clone, Hash, PartialOrd, Ord, PartialEq, Eq)]
20409pub struct IDXGIAdapter1 {
20410 pub lpVtbl: *mut IDXGIAdapter1Vtbl,
20411}
20412impl Default for IDXGIAdapter1 {
20413 fn default() -> Self {
20414 let mut s = ::std::mem::MaybeUninit::<Self>::uninit();
20415 unsafe {
20416 ::std::ptr::write_bytes(s.as_mut_ptr(), 0, 1);
20417 s.assume_init()
20418 }
20419 }
20420}
20421extern "C" {
20422 pub static IID_IDXGIDevice1: IID;
20423}
20424#[repr(C)]
20425#[derive(Debug, Default, Copy, Clone, Hash, PartialOrd, Ord, PartialEq, Eq)]
20426pub struct IDXGIDevice1Vtbl {
20427 pub QueryInterface: ::std::option::Option<
20428 unsafe extern "C" fn(
20429 This: *mut IDXGIDevice1,
20430 riid: *const IID,
20431 ppvObject: *mut *mut ::std::os::raw::c_void,
20432 ) -> HRESULT,
20433 >,
20434 pub AddRef: ::std::option::Option<
20435 unsafe extern "C" fn(This: *mut IDXGIDevice1) -> ULONG,
20436 >,
20437 pub Release: ::std::option::Option<
20438 unsafe extern "C" fn(This: *mut IDXGIDevice1) -> ULONG,
20439 >,
20440 pub SetPrivateData: ::std::option::Option<
20441 unsafe extern "C" fn(
20442 This: *mut IDXGIDevice1,
20443 Name: *const GUID,
20444 DataSize: UINT,
20445 pData: *const ::std::os::raw::c_void,
20446 ) -> HRESULT,
20447 >,
20448 pub SetPrivateDataInterface: ::std::option::Option<
20449 unsafe extern "C" fn(
20450 This: *mut IDXGIDevice1,
20451 Name: *const GUID,
20452 pUnknown: *const IUnknown,
20453 ) -> HRESULT,
20454 >,
20455 pub GetPrivateData: ::std::option::Option<
20456 unsafe extern "C" fn(
20457 This: *mut IDXGIDevice1,
20458 Name: *const GUID,
20459 pDataSize: *mut UINT,
20460 pData: *mut ::std::os::raw::c_void,
20461 ) -> HRESULT,
20462 >,
20463 pub GetParent: ::std::option::Option<
20464 unsafe extern "C" fn(
20465 This: *mut IDXGIDevice1,
20466 riid: *const IID,
20467 ppParent: *mut *mut ::std::os::raw::c_void,
20468 ) -> HRESULT,
20469 >,
20470 pub GetAdapter: ::std::option::Option<
20471 unsafe extern "C" fn(
20472 This: *mut IDXGIDevice1,
20473 pAdapter: *mut *mut IDXGIAdapter,
20474 ) -> HRESULT,
20475 >,
20476 pub CreateSurface: ::std::option::Option<
20477 unsafe extern "C" fn(
20478 This: *mut IDXGIDevice1,
20479 pDesc: *const DXGI_SURFACE_DESC,
20480 NumSurfaces: UINT,
20481 Usage: DXGI_USAGE,
20482 pSharedResource: *const DXGI_SHARED_RESOURCE,
20483 ppSurface: *mut *mut IDXGISurface,
20484 ) -> HRESULT,
20485 >,
20486 pub QueryResourceResidency: ::std::option::Option<
20487 unsafe extern "C" fn(
20488 This: *mut IDXGIDevice1,
20489 ppResources: *const *mut IUnknown,
20490 pResidencyStatus: *mut DXGI_RESIDENCY,
20491 NumResources: UINT,
20492 ) -> HRESULT,
20493 >,
20494 pub SetGPUThreadPriority: ::std::option::Option<
20495 unsafe extern "C" fn(This: *mut IDXGIDevice1, Priority: INT) -> HRESULT,
20496 >,
20497 pub GetGPUThreadPriority: ::std::option::Option<
20498 unsafe extern "C" fn(
20499 This: *mut IDXGIDevice1,
20500 pPriority: *mut INT,
20501 ) -> HRESULT,
20502 >,
20503 pub SetMaximumFrameLatency: ::std::option::Option<
20504 unsafe extern "C" fn(
20505 This: *mut IDXGIDevice1,
20506 MaxLatency: UINT,
20507 ) -> HRESULT,
20508 >,
20509 pub GetMaximumFrameLatency: ::std::option::Option<
20510 unsafe extern "C" fn(
20511 This: *mut IDXGIDevice1,
20512 pMaxLatency: *mut UINT,
20513 ) -> HRESULT,
20514 >,
20515}
20516#[repr(C)]
20517#[derive(Debug, Copy, Clone, Hash, PartialOrd, Ord, PartialEq, Eq)]
20518pub struct IDXGIDevice1 {
20519 pub lpVtbl: *mut IDXGIDevice1Vtbl,
20520}
20521impl Default for IDXGIDevice1 {
20522 fn default() -> Self {
20523 let mut s = ::std::mem::MaybeUninit::<Self>::uninit();
20524 unsafe {
20525 ::std::ptr::write_bytes(s.as_mut_ptr(), 0, 1);
20526 s.assume_init()
20527 }
20528 }
20529}
20530extern "C" {
20531 pub static IID_IDXGIDisplayControl: IID;
20532}
20533#[repr(C)]
20534#[derive(Debug, Default, Copy, Clone, Hash, PartialOrd, Ord, PartialEq, Eq)]
20535pub struct IDXGIDisplayControlVtbl {
20536 pub QueryInterface: ::std::option::Option<
20537 unsafe extern "C" fn(
20538 This: *mut IDXGIDisplayControl,
20539 riid: *const IID,
20540 ppvObject: *mut *mut ::std::os::raw::c_void,
20541 ) -> HRESULT,
20542 >,
20543 pub AddRef: ::std::option::Option<
20544 unsafe extern "C" fn(This: *mut IDXGIDisplayControl) -> ULONG,
20545 >,
20546 pub Release: ::std::option::Option<
20547 unsafe extern "C" fn(This: *mut IDXGIDisplayControl) -> ULONG,
20548 >,
20549 pub IsStereoEnabled: ::std::option::Option<
20550 unsafe extern "C" fn(This: *mut IDXGIDisplayControl) -> BOOL,
20551 >,
20552 pub SetStereoEnabled: ::std::option::Option<
20553 unsafe extern "C" fn(This: *mut IDXGIDisplayControl, enabled: BOOL),
20554 >,
20555}
20556#[repr(C)]
20557#[derive(Debug, Copy, Clone, Hash, PartialOrd, Ord, PartialEq, Eq)]
20558pub struct IDXGIDisplayControl {
20559 pub lpVtbl: *mut IDXGIDisplayControlVtbl,
20560}
20561impl Default for IDXGIDisplayControl {
20562 fn default() -> Self {
20563 let mut s = ::std::mem::MaybeUninit::<Self>::uninit();
20564 unsafe {
20565 ::std::ptr::write_bytes(s.as_mut_ptr(), 0, 1);
20566 s.assume_init()
20567 }
20568 }
20569}
20570#[repr(C)]
20571#[derive(Debug, Default, Copy, Clone, Hash, PartialOrd, Ord, PartialEq, Eq)]
20572pub struct DXGI_OUTDUPL_MOVE_RECT {
20573 pub SourcePoint: POINT,
20574 pub DestinationRect: RECT,
20575}
20576#[repr(C)]
20577#[derive(Debug, Copy, Clone, Hash, PartialOrd, Ord, PartialEq, Eq)]
20578pub struct DXGI_OUTDUPL_DESC {
20579 pub ModeDesc: DXGI_MODE_DESC,
20580 pub Rotation: DXGI_MODE_ROTATION,
20581 pub DesktopImageInSystemMemory: BOOL,
20582}
20583impl Default for DXGI_OUTDUPL_DESC {
20584 fn default() -> Self {
20585 let mut s = ::std::mem::MaybeUninit::<Self>::uninit();
20586 unsafe {
20587 ::std::ptr::write_bytes(s.as_mut_ptr(), 0, 1);
20588 s.assume_init()
20589 }
20590 }
20591}
20592#[repr(C)]
20593#[derive(Debug, Default, Copy, Clone, Hash, PartialOrd, Ord, PartialEq, Eq)]
20594pub struct DXGI_OUTDUPL_POINTER_POSITION {
20595 pub Position: POINT,
20596 pub Visible: BOOL,
20597}
20598pub const DXGI_OUTDUPL_POINTER_SHAPE_TYPE_DXGI_OUTDUPL_POINTER_SHAPE_TYPE_MONOCHROME : DXGI_OUTDUPL_POINTER_SHAPE_TYPE = 1 ;
20599pub const DXGI_OUTDUPL_POINTER_SHAPE_TYPE_DXGI_OUTDUPL_POINTER_SHAPE_TYPE_COLOR : DXGI_OUTDUPL_POINTER_SHAPE_TYPE = 2 ;
20600pub const DXGI_OUTDUPL_POINTER_SHAPE_TYPE_DXGI_OUTDUPL_POINTER_SHAPE_TYPE_MASKED_COLOR : DXGI_OUTDUPL_POINTER_SHAPE_TYPE = 4 ;
20601pub type DXGI_OUTDUPL_POINTER_SHAPE_TYPE = ::std::os::raw::c_int;
20602#[repr(C)]
20603#[derive(Debug, Default, Copy, Clone, Hash, PartialOrd, Ord, PartialEq, Eq)]
20604pub struct DXGI_OUTDUPL_POINTER_SHAPE_INFO {
20605 pub Type: UINT,
20606 pub Width: UINT,
20607 pub Height: UINT,
20608 pub Pitch: UINT,
20609 pub HotSpot: POINT,
20610}
20611#[repr(C)]
20612#[derive(Copy, Clone)]
20613pub struct DXGI_OUTDUPL_FRAME_INFO {
20614 pub LastPresentTime: LARGE_INTEGER,
20615 pub LastMouseUpdateTime: LARGE_INTEGER,
20616 pub AccumulatedFrames: UINT,
20617 pub RectsCoalesced: BOOL,
20618 pub ProtectedContentMaskedOut: BOOL,
20619 pub PointerPosition: DXGI_OUTDUPL_POINTER_POSITION,
20620 pub TotalMetadataBufferSize: UINT,
20621 pub PointerShapeBufferSize: UINT,
20622}
20623impl Default for DXGI_OUTDUPL_FRAME_INFO {
20624 fn default() -> Self {
20625 let mut s = ::std::mem::MaybeUninit::<Self>::uninit();
20626 unsafe {
20627 ::std::ptr::write_bytes(s.as_mut_ptr(), 0, 1);
20628 s.assume_init()
20629 }
20630 }
20631}
20632impl ::std::fmt::Debug for DXGI_OUTDUPL_FRAME_INFO {
20633 fn fmt(&self, f: &mut ::std::fmt::Formatter<'_>) -> ::std::fmt::Result {
20634 write ! (f , "DXGI_OUTDUPL_FRAME_INFO {{ LastPresentTime: {:?}, LastMouseUpdateTime: {:?}, AccumulatedFrames: {:?}, RectsCoalesced: {:?}, ProtectedContentMaskedOut: {:?}, PointerPosition: {:?}, TotalMetadataBufferSize: {:?}, PointerShapeBufferSize: {:?} }}" , self . LastPresentTime , self . LastMouseUpdateTime , self . AccumulatedFrames , self . RectsCoalesced , self . ProtectedContentMaskedOut , self . PointerPosition , self . TotalMetadataBufferSize , self . PointerShapeBufferSize)
20635 }
20636}
20637extern "C" {
20638 pub static IID_IDXGIOutputDuplication: IID;
20639}
20640#[repr(C)]
20641#[derive(Debug, Default, Copy, Clone, Hash, PartialOrd, Ord, PartialEq, Eq)]
20642pub struct IDXGIOutputDuplicationVtbl {
20643 pub QueryInterface: ::std::option::Option<
20644 unsafe extern "C" fn(
20645 This: *mut IDXGIOutputDuplication,
20646 riid: *const IID,
20647 ppvObject: *mut *mut ::std::os::raw::c_void,
20648 ) -> HRESULT,
20649 >,
20650 pub AddRef: ::std::option::Option<
20651 unsafe extern "C" fn(This: *mut IDXGIOutputDuplication) -> ULONG,
20652 >,
20653 pub Release: ::std::option::Option<
20654 unsafe extern "C" fn(This: *mut IDXGIOutputDuplication) -> ULONG,
20655 >,
20656 pub SetPrivateData: ::std::option::Option<
20657 unsafe extern "C" fn(
20658 This: *mut IDXGIOutputDuplication,
20659 Name: *const GUID,
20660 DataSize: UINT,
20661 pData: *const ::std::os::raw::c_void,
20662 ) -> HRESULT,
20663 >,
20664 pub SetPrivateDataInterface: ::std::option::Option<
20665 unsafe extern "C" fn(
20666 This: *mut IDXGIOutputDuplication,
20667 Name: *const GUID,
20668 pUnknown: *const IUnknown,
20669 ) -> HRESULT,
20670 >,
20671 pub GetPrivateData: ::std::option::Option<
20672 unsafe extern "C" fn(
20673 This: *mut IDXGIOutputDuplication,
20674 Name: *const GUID,
20675 pDataSize: *mut UINT,
20676 pData: *mut ::std::os::raw::c_void,
20677 ) -> HRESULT,
20678 >,
20679 pub GetParent: ::std::option::Option<
20680 unsafe extern "C" fn(
20681 This: *mut IDXGIOutputDuplication,
20682 riid: *const IID,
20683 ppParent: *mut *mut ::std::os::raw::c_void,
20684 ) -> HRESULT,
20685 >,
20686 pub GetDesc: ::std::option::Option<
20687 unsafe extern "C" fn(
20688 This: *mut IDXGIOutputDuplication,
20689 pDesc: *mut DXGI_OUTDUPL_DESC,
20690 ),
20691 >,
20692 pub AcquireNextFrame: ::std::option::Option<
20693 unsafe extern "C" fn(
20694 This: *mut IDXGIOutputDuplication,
20695 TimeoutInMilliseconds: UINT,
20696 pFrameInfo: *mut DXGI_OUTDUPL_FRAME_INFO,
20697 ppDesktopResource: *mut *mut IDXGIResource,
20698 ) -> HRESULT,
20699 >,
20700 pub GetFrameDirtyRects: ::std::option::Option<
20701 unsafe extern "C" fn(
20702 This: *mut IDXGIOutputDuplication,
20703 DirtyRectsBufferSize: UINT,
20704 pDirtyRectsBuffer: *mut RECT,
20705 pDirtyRectsBufferSizeRequired: *mut UINT,
20706 ) -> HRESULT,
20707 >,
20708 pub GetFrameMoveRects: ::std::option::Option<
20709 unsafe extern "C" fn(
20710 This: *mut IDXGIOutputDuplication,
20711 MoveRectsBufferSize: UINT,
20712 pMoveRectBuffer: *mut DXGI_OUTDUPL_MOVE_RECT,
20713 pMoveRectsBufferSizeRequired: *mut UINT,
20714 ) -> HRESULT,
20715 >,
20716 pub GetFramePointerShape: ::std::option::Option<
20717 unsafe extern "C" fn(
20718 This: *mut IDXGIOutputDuplication,
20719 PointerShapeBufferSize: UINT,
20720 pPointerShapeBuffer: *mut ::std::os::raw::c_void,
20721 pPointerShapeBufferSizeRequired: *mut UINT,
20722 pPointerShapeInfo: *mut DXGI_OUTDUPL_POINTER_SHAPE_INFO,
20723 ) -> HRESULT,
20724 >,
20725 pub MapDesktopSurface: ::std::option::Option<
20726 unsafe extern "C" fn(
20727 This: *mut IDXGIOutputDuplication,
20728 pLockedRect: *mut DXGI_MAPPED_RECT,
20729 ) -> HRESULT,
20730 >,
20731 pub UnMapDesktopSurface: ::std::option::Option<
20732 unsafe extern "C" fn(This: *mut IDXGIOutputDuplication) -> HRESULT,
20733 >,
20734 pub ReleaseFrame: ::std::option::Option<
20735 unsafe extern "C" fn(This: *mut IDXGIOutputDuplication) -> HRESULT,
20736 >,
20737}
20738#[repr(C)]
20739#[derive(Debug, Copy, Clone, Hash, PartialOrd, Ord, PartialEq, Eq)]
20740pub struct IDXGIOutputDuplication {
20741 pub lpVtbl: *mut IDXGIOutputDuplicationVtbl,
20742}
20743impl Default for IDXGIOutputDuplication {
20744 fn default() -> Self {
20745 let mut s = ::std::mem::MaybeUninit::<Self>::uninit();
20746 unsafe {
20747 ::std::ptr::write_bytes(s.as_mut_ptr(), 0, 1);
20748 s.assume_init()
20749 }
20750 }
20751}
20752pub const DXGI_ALPHA_MODE_DXGI_ALPHA_MODE_UNSPECIFIED: DXGI_ALPHA_MODE = 0;
20753pub const DXGI_ALPHA_MODE_DXGI_ALPHA_MODE_PREMULTIPLIED: DXGI_ALPHA_MODE = 1;
20754pub const DXGI_ALPHA_MODE_DXGI_ALPHA_MODE_STRAIGHT: DXGI_ALPHA_MODE = 2;
20755pub const DXGI_ALPHA_MODE_DXGI_ALPHA_MODE_IGNORE: DXGI_ALPHA_MODE = 3;
20756pub const DXGI_ALPHA_MODE_DXGI_ALPHA_MODE_FORCE_DWORD: DXGI_ALPHA_MODE = -1;
20757pub type DXGI_ALPHA_MODE = ::std::os::raw::c_int;
20758extern "C" {
20759 pub static IID_IDXGISurface2: IID;
20760}
20761#[repr(C)]
20762#[derive(Debug, Default, Copy, Clone, Hash, PartialOrd, Ord, PartialEq, Eq)]
20763pub struct IDXGISurface2Vtbl {
20764 pub QueryInterface: ::std::option::Option<
20765 unsafe extern "C" fn(
20766 This: *mut IDXGISurface2,
20767 riid: *const IID,
20768 ppvObject: *mut *mut ::std::os::raw::c_void,
20769 ) -> HRESULT,
20770 >,
20771 pub AddRef: ::std::option::Option<
20772 unsafe extern "C" fn(This: *mut IDXGISurface2) -> ULONG,
20773 >,
20774 pub Release: ::std::option::Option<
20775 unsafe extern "C" fn(This: *mut IDXGISurface2) -> ULONG,
20776 >,
20777 pub SetPrivateData: ::std::option::Option<
20778 unsafe extern "C" fn(
20779 This: *mut IDXGISurface2,
20780 Name: *const GUID,
20781 DataSize: UINT,
20782 pData: *const ::std::os::raw::c_void,
20783 ) -> HRESULT,
20784 >,
20785 pub SetPrivateDataInterface: ::std::option::Option<
20786 unsafe extern "C" fn(
20787 This: *mut IDXGISurface2,
20788 Name: *const GUID,
20789 pUnknown: *const IUnknown,
20790 ) -> HRESULT,
20791 >,
20792 pub GetPrivateData: ::std::option::Option<
20793 unsafe extern "C" fn(
20794 This: *mut IDXGISurface2,
20795 Name: *const GUID,
20796 pDataSize: *mut UINT,
20797 pData: *mut ::std::os::raw::c_void,
20798 ) -> HRESULT,
20799 >,
20800 pub GetParent: ::std::option::Option<
20801 unsafe extern "C" fn(
20802 This: *mut IDXGISurface2,
20803 riid: *const IID,
20804 ppParent: *mut *mut ::std::os::raw::c_void,
20805 ) -> HRESULT,
20806 >,
20807 pub GetDevice: ::std::option::Option<
20808 unsafe extern "C" fn(
20809 This: *mut IDXGISurface2,
20810 riid: *const IID,
20811 ppDevice: *mut *mut ::std::os::raw::c_void,
20812 ) -> HRESULT,
20813 >,
20814 pub GetDesc: ::std::option::Option<
20815 unsafe extern "C" fn(
20816 This: *mut IDXGISurface2,
20817 pDesc: *mut DXGI_SURFACE_DESC,
20818 ) -> HRESULT,
20819 >,
20820 pub Map: ::std::option::Option<
20821 unsafe extern "C" fn(
20822 This: *mut IDXGISurface2,
20823 pLockedRect: *mut DXGI_MAPPED_RECT,
20824 MapFlags: UINT,
20825 ) -> HRESULT,
20826 >,
20827 pub Unmap: ::std::option::Option<
20828 unsafe extern "C" fn(This: *mut IDXGISurface2) -> HRESULT,
20829 >,
20830 pub GetDC: ::std::option::Option<
20831 unsafe extern "C" fn(
20832 This: *mut IDXGISurface2,
20833 Discard: BOOL,
20834 phdc: *mut HDC,
20835 ) -> HRESULT,
20836 >,
20837 pub ReleaseDC: ::std::option::Option<
20838 unsafe extern "C" fn(
20839 This: *mut IDXGISurface2,
20840 pDirtyRect: *mut RECT,
20841 ) -> HRESULT,
20842 >,
20843 pub GetResource: ::std::option::Option<
20844 unsafe extern "C" fn(
20845 This: *mut IDXGISurface2,
20846 riid: *const IID,
20847 ppParentResource: *mut *mut ::std::os::raw::c_void,
20848 pSubresourceIndex: *mut UINT,
20849 ) -> HRESULT,
20850 >,
20851}
20852#[repr(C)]
20853#[derive(Debug, Copy, Clone, Hash, PartialOrd, Ord, PartialEq, Eq)]
20854pub struct IDXGISurface2 {
20855 pub lpVtbl: *mut IDXGISurface2Vtbl,
20856}
20857impl Default for IDXGISurface2 {
20858 fn default() -> Self {
20859 let mut s = ::std::mem::MaybeUninit::<Self>::uninit();
20860 unsafe {
20861 ::std::ptr::write_bytes(s.as_mut_ptr(), 0, 1);
20862 s.assume_init()
20863 }
20864 }
20865}
20866extern "C" {
20867 pub static IID_IDXGIResource1: IID;
20868}
20869#[repr(C)]
20870#[derive(Debug, Default, Copy, Clone, Hash, PartialOrd, Ord, PartialEq, Eq)]
20871pub struct IDXGIResource1Vtbl {
20872 pub QueryInterface: ::std::option::Option<
20873 unsafe extern "C" fn(
20874 This: *mut IDXGIResource1,
20875 riid: *const IID,
20876 ppvObject: *mut *mut ::std::os::raw::c_void,
20877 ) -> HRESULT,
20878 >,
20879 pub AddRef: ::std::option::Option<
20880 unsafe extern "C" fn(This: *mut IDXGIResource1) -> ULONG,
20881 >,
20882 pub Release: ::std::option::Option<
20883 unsafe extern "C" fn(This: *mut IDXGIResource1) -> ULONG,
20884 >,
20885 pub SetPrivateData: ::std::option::Option<
20886 unsafe extern "C" fn(
20887 This: *mut IDXGIResource1,
20888 Name: *const GUID,
20889 DataSize: UINT,
20890 pData: *const ::std::os::raw::c_void,
20891 ) -> HRESULT,
20892 >,
20893 pub SetPrivateDataInterface: ::std::option::Option<
20894 unsafe extern "C" fn(
20895 This: *mut IDXGIResource1,
20896 Name: *const GUID,
20897 pUnknown: *const IUnknown,
20898 ) -> HRESULT,
20899 >,
20900 pub GetPrivateData: ::std::option::Option<
20901 unsafe extern "C" fn(
20902 This: *mut IDXGIResource1,
20903 Name: *const GUID,
20904 pDataSize: *mut UINT,
20905 pData: *mut ::std::os::raw::c_void,
20906 ) -> HRESULT,
20907 >,
20908 pub GetParent: ::std::option::Option<
20909 unsafe extern "C" fn(
20910 This: *mut IDXGIResource1,
20911 riid: *const IID,
20912 ppParent: *mut *mut ::std::os::raw::c_void,
20913 ) -> HRESULT,
20914 >,
20915 pub GetDevice: ::std::option::Option<
20916 unsafe extern "C" fn(
20917 This: *mut IDXGIResource1,
20918 riid: *const IID,
20919 ppDevice: *mut *mut ::std::os::raw::c_void,
20920 ) -> HRESULT,
20921 >,
20922 pub GetSharedHandle: ::std::option::Option<
20923 unsafe extern "C" fn(
20924 This: *mut IDXGIResource1,
20925 pSharedHandle: *mut HANDLE,
20926 ) -> HRESULT,
20927 >,
20928 pub GetUsage: ::std::option::Option<
20929 unsafe extern "C" fn(
20930 This: *mut IDXGIResource1,
20931 pUsage: *mut DXGI_USAGE,
20932 ) -> HRESULT,
20933 >,
20934 pub SetEvictionPriority: ::std::option::Option<
20935 unsafe extern "C" fn(
20936 This: *mut IDXGIResource1,
20937 EvictionPriority: UINT,
20938 ) -> HRESULT,
20939 >,
20940 pub GetEvictionPriority: ::std::option::Option<
20941 unsafe extern "C" fn(
20942 This: *mut IDXGIResource1,
20943 pEvictionPriority: *mut UINT,
20944 ) -> HRESULT,
20945 >,
20946 pub CreateSubresourceSurface: ::std::option::Option<
20947 unsafe extern "C" fn(
20948 This: *mut IDXGIResource1,
20949 index: UINT,
20950 ppSurface: *mut *mut IDXGISurface2,
20951 ) -> HRESULT,
20952 >,
20953 pub CreateSharedHandle: ::std::option::Option<
20954 unsafe extern "C" fn(
20955 This: *mut IDXGIResource1,
20956 pAttributes: *const SECURITY_ATTRIBUTES,
20957 dwAccess: DWORD,
20958 lpName: LPCWSTR,
20959 pHandle: *mut HANDLE,
20960 ) -> HRESULT,
20961 >,
20962}
20963#[repr(C)]
20964#[derive(Debug, Copy, Clone, Hash, PartialOrd, Ord, PartialEq, Eq)]
20965pub struct IDXGIResource1 {
20966 pub lpVtbl: *mut IDXGIResource1Vtbl,
20967}
20968impl Default for IDXGIResource1 {
20969 fn default() -> Self {
20970 let mut s = ::std::mem::MaybeUninit::<Self>::uninit();
20971 unsafe {
20972 ::std::ptr::write_bytes(s.as_mut_ptr(), 0, 1);
20973 s.assume_init()
20974 }
20975 }
20976}
20977pub const _DXGI_OFFER_RESOURCE_PRIORITY_DXGI_OFFER_RESOURCE_PRIORITY_LOW:
20978 _DXGI_OFFER_RESOURCE_PRIORITY = 1;
20979pub const _DXGI_OFFER_RESOURCE_PRIORITY_DXGI_OFFER_RESOURCE_PRIORITY_NORMAL:
20980 _DXGI_OFFER_RESOURCE_PRIORITY = 2;
20981pub const _DXGI_OFFER_RESOURCE_PRIORITY_DXGI_OFFER_RESOURCE_PRIORITY_HIGH:
20982 _DXGI_OFFER_RESOURCE_PRIORITY = 3;
20983pub type _DXGI_OFFER_RESOURCE_PRIORITY = ::std::os::raw::c_int;
20984pub use self::_DXGI_OFFER_RESOURCE_PRIORITY as DXGI_OFFER_RESOURCE_PRIORITY;
20985extern "C" {
20986 pub static IID_IDXGIDevice2: IID;
20987}
20988#[repr(C)]
20989#[derive(Debug, Default, Copy, Clone, Hash, PartialOrd, Ord, PartialEq, Eq)]
20990pub struct IDXGIDevice2Vtbl {
20991 pub QueryInterface: ::std::option::Option<
20992 unsafe extern "C" fn(
20993 This: *mut IDXGIDevice2,
20994 riid: *const IID,
20995 ppvObject: *mut *mut ::std::os::raw::c_void,
20996 ) -> HRESULT,
20997 >,
20998 pub AddRef: ::std::option::Option<
20999 unsafe extern "C" fn(This: *mut IDXGIDevice2) -> ULONG,
21000 >,
21001 pub Release: ::std::option::Option<
21002 unsafe extern "C" fn(This: *mut IDXGIDevice2) -> ULONG,
21003 >,
21004 pub SetPrivateData: ::std::option::Option<
21005 unsafe extern "C" fn(
21006 This: *mut IDXGIDevice2,
21007 Name: *const GUID,
21008 DataSize: UINT,
21009 pData: *const ::std::os::raw::c_void,
21010 ) -> HRESULT,
21011 >,
21012 pub SetPrivateDataInterface: ::std::option::Option<
21013 unsafe extern "C" fn(
21014 This: *mut IDXGIDevice2,
21015 Name: *const GUID,
21016 pUnknown: *const IUnknown,
21017 ) -> HRESULT,
21018 >,
21019 pub GetPrivateData: ::std::option::Option<
21020 unsafe extern "C" fn(
21021 This: *mut IDXGIDevice2,
21022 Name: *const GUID,
21023 pDataSize: *mut UINT,
21024 pData: *mut ::std::os::raw::c_void,
21025 ) -> HRESULT,
21026 >,
21027 pub GetParent: ::std::option::Option<
21028 unsafe extern "C" fn(
21029 This: *mut IDXGIDevice2,
21030 riid: *const IID,
21031 ppParent: *mut *mut ::std::os::raw::c_void,
21032 ) -> HRESULT,
21033 >,
21034 pub GetAdapter: ::std::option::Option<
21035 unsafe extern "C" fn(
21036 This: *mut IDXGIDevice2,
21037 pAdapter: *mut *mut IDXGIAdapter,
21038 ) -> HRESULT,
21039 >,
21040 pub CreateSurface: ::std::option::Option<
21041 unsafe extern "C" fn(
21042 This: *mut IDXGIDevice2,
21043 pDesc: *const DXGI_SURFACE_DESC,
21044 NumSurfaces: UINT,
21045 Usage: DXGI_USAGE,
21046 pSharedResource: *const DXGI_SHARED_RESOURCE,
21047 ppSurface: *mut *mut IDXGISurface,
21048 ) -> HRESULT,
21049 >,
21050 pub QueryResourceResidency: ::std::option::Option<
21051 unsafe extern "C" fn(
21052 This: *mut IDXGIDevice2,
21053 ppResources: *const *mut IUnknown,
21054 pResidencyStatus: *mut DXGI_RESIDENCY,
21055 NumResources: UINT,
21056 ) -> HRESULT,
21057 >,
21058 pub SetGPUThreadPriority: ::std::option::Option<
21059 unsafe extern "C" fn(This: *mut IDXGIDevice2, Priority: INT) -> HRESULT,
21060 >,
21061 pub GetGPUThreadPriority: ::std::option::Option<
21062 unsafe extern "C" fn(
21063 This: *mut IDXGIDevice2,
21064 pPriority: *mut INT,
21065 ) -> HRESULT,
21066 >,
21067 pub SetMaximumFrameLatency: ::std::option::Option<
21068 unsafe extern "C" fn(
21069 This: *mut IDXGIDevice2,
21070 MaxLatency: UINT,
21071 ) -> HRESULT,
21072 >,
21073 pub GetMaximumFrameLatency: ::std::option::Option<
21074 unsafe extern "C" fn(
21075 This: *mut IDXGIDevice2,
21076 pMaxLatency: *mut UINT,
21077 ) -> HRESULT,
21078 >,
21079 pub OfferResources: ::std::option::Option<
21080 unsafe extern "C" fn(
21081 This: *mut IDXGIDevice2,
21082 NumResources: UINT,
21083 ppResources: *const *mut IDXGIResource,
21084 Priority: DXGI_OFFER_RESOURCE_PRIORITY,
21085 ) -> HRESULT,
21086 >,
21087 pub ReclaimResources: ::std::option::Option<
21088 unsafe extern "C" fn(
21089 This: *mut IDXGIDevice2,
21090 NumResources: UINT,
21091 ppResources: *const *mut IDXGIResource,
21092 pDiscarded: *mut BOOL,
21093 ) -> HRESULT,
21094 >,
21095 pub EnqueueSetEvent: ::std::option::Option<
21096 unsafe extern "C" fn(
21097 This: *mut IDXGIDevice2,
21098 hEvent: HANDLE,
21099 ) -> HRESULT,
21100 >,
21101}
21102#[repr(C)]
21103#[derive(Debug, Copy, Clone, Hash, PartialOrd, Ord, PartialEq, Eq)]
21104pub struct IDXGIDevice2 {
21105 pub lpVtbl: *mut IDXGIDevice2Vtbl,
21106}
21107impl Default for IDXGIDevice2 {
21108 fn default() -> Self {
21109 let mut s = ::std::mem::MaybeUninit::<Self>::uninit();
21110 unsafe {
21111 ::std::ptr::write_bytes(s.as_mut_ptr(), 0, 1);
21112 s.assume_init()
21113 }
21114 }
21115}
21116#[repr(C)]
21117#[derive(Debug, Copy, Clone, Hash, PartialOrd, Ord, PartialEq, Eq)]
21118pub struct DXGI_MODE_DESC1 {
21119 pub Width: UINT,
21120 pub Height: UINT,
21121 pub RefreshRate: DXGI_RATIONAL,
21122 pub Format: DXGI_FORMAT,
21123 pub ScanlineOrdering: DXGI_MODE_SCANLINE_ORDER,
21124 pub Scaling: DXGI_MODE_SCALING,
21125 pub Stereo: BOOL,
21126}
21127impl Default for DXGI_MODE_DESC1 {
21128 fn default() -> Self {
21129 let mut s = ::std::mem::MaybeUninit::<Self>::uninit();
21130 unsafe {
21131 ::std::ptr::write_bytes(s.as_mut_ptr(), 0, 1);
21132 s.assume_init()
21133 }
21134 }
21135}
21136pub const DXGI_SCALING_DXGI_SCALING_STRETCH: DXGI_SCALING = 0;
21137pub const DXGI_SCALING_DXGI_SCALING_NONE: DXGI_SCALING = 1;
21138pub const DXGI_SCALING_DXGI_SCALING_ASPECT_RATIO_STRETCH: DXGI_SCALING = 2;
21139pub type DXGI_SCALING = ::std::os::raw::c_int;
21140#[repr(C)]
21141#[derive(Debug, Copy, Clone, Hash, PartialOrd, Ord, PartialEq, Eq)]
21142pub struct DXGI_SWAP_CHAIN_DESC1 {
21143 pub Width: UINT,
21144 pub Height: UINT,
21145 pub Format: DXGI_FORMAT,
21146 pub Stereo: BOOL,
21147 pub SampleDesc: DXGI_SAMPLE_DESC,
21148 pub BufferUsage: DXGI_USAGE,
21149 pub BufferCount: UINT,
21150 pub Scaling: DXGI_SCALING,
21151 pub SwapEffect: DXGI_SWAP_EFFECT,
21152 pub AlphaMode: DXGI_ALPHA_MODE,
21153 pub Flags: UINT,
21154}
21155impl Default for DXGI_SWAP_CHAIN_DESC1 {
21156 fn default() -> Self {
21157 let mut s = ::std::mem::MaybeUninit::<Self>::uninit();
21158 unsafe {
21159 ::std::ptr::write_bytes(s.as_mut_ptr(), 0, 1);
21160 s.assume_init()
21161 }
21162 }
21163}
21164#[repr(C)]
21165#[derive(Debug, Copy, Clone, Hash, PartialOrd, Ord, PartialEq, Eq)]
21166pub struct DXGI_SWAP_CHAIN_FULLSCREEN_DESC {
21167 pub RefreshRate: DXGI_RATIONAL,
21168 pub ScanlineOrdering: DXGI_MODE_SCANLINE_ORDER,
21169 pub Scaling: DXGI_MODE_SCALING,
21170 pub Windowed: BOOL,
21171}
21172impl Default for DXGI_SWAP_CHAIN_FULLSCREEN_DESC {
21173 fn default() -> Self {
21174 let mut s = ::std::mem::MaybeUninit::<Self>::uninit();
21175 unsafe {
21176 ::std::ptr::write_bytes(s.as_mut_ptr(), 0, 1);
21177 s.assume_init()
21178 }
21179 }
21180}
21181#[repr(C)]
21182#[derive(Debug, Copy, Clone, Hash, PartialOrd, Ord, PartialEq, Eq)]
21183pub struct DXGI_PRESENT_PARAMETERS {
21184 pub DirtyRectsCount: UINT,
21185 pub pDirtyRects: *mut RECT,
21186 pub pScrollRect: *mut RECT,
21187 pub pScrollOffset: *mut POINT,
21188}
21189impl Default for DXGI_PRESENT_PARAMETERS {
21190 fn default() -> Self {
21191 let mut s = ::std::mem::MaybeUninit::<Self>::uninit();
21192 unsafe {
21193 ::std::ptr::write_bytes(s.as_mut_ptr(), 0, 1);
21194 s.assume_init()
21195 }
21196 }
21197}
21198extern "C" {
21199 pub static IID_IDXGISwapChain1: IID;
21200}
21201#[repr(C)]
21202#[derive(Debug, Default, Copy, Clone, Hash, PartialOrd, Ord, PartialEq, Eq)]
21203pub struct IDXGISwapChain1Vtbl {
21204 pub QueryInterface: ::std::option::Option<
21205 unsafe extern "C" fn(
21206 This: *mut IDXGISwapChain1,
21207 riid: *const IID,
21208 ppvObject: *mut *mut ::std::os::raw::c_void,
21209 ) -> HRESULT,
21210 >,
21211 pub AddRef: ::std::option::Option<
21212 unsafe extern "C" fn(This: *mut IDXGISwapChain1) -> ULONG,
21213 >,
21214 pub Release: ::std::option::Option<
21215 unsafe extern "C" fn(This: *mut IDXGISwapChain1) -> ULONG,
21216 >,
21217 pub SetPrivateData: ::std::option::Option<
21218 unsafe extern "C" fn(
21219 This: *mut IDXGISwapChain1,
21220 Name: *const GUID,
21221 DataSize: UINT,
21222 pData: *const ::std::os::raw::c_void,
21223 ) -> HRESULT,
21224 >,
21225 pub SetPrivateDataInterface: ::std::option::Option<
21226 unsafe extern "C" fn(
21227 This: *mut IDXGISwapChain1,
21228 Name: *const GUID,
21229 pUnknown: *const IUnknown,
21230 ) -> HRESULT,
21231 >,
21232 pub GetPrivateData: ::std::option::Option<
21233 unsafe extern "C" fn(
21234 This: *mut IDXGISwapChain1,
21235 Name: *const GUID,
21236 pDataSize: *mut UINT,
21237 pData: *mut ::std::os::raw::c_void,
21238 ) -> HRESULT,
21239 >,
21240 pub GetParent: ::std::option::Option<
21241 unsafe extern "C" fn(
21242 This: *mut IDXGISwapChain1,
21243 riid: *const IID,
21244 ppParent: *mut *mut ::std::os::raw::c_void,
21245 ) -> HRESULT,
21246 >,
21247 pub GetDevice: ::std::option::Option<
21248 unsafe extern "C" fn(
21249 This: *mut IDXGISwapChain1,
21250 riid: *const IID,
21251 ppDevice: *mut *mut ::std::os::raw::c_void,
21252 ) -> HRESULT,
21253 >,
21254 pub Present: ::std::option::Option<
21255 unsafe extern "C" fn(
21256 This: *mut IDXGISwapChain1,
21257 SyncInterval: UINT,
21258 Flags: UINT,
21259 ) -> HRESULT,
21260 >,
21261 pub GetBuffer: ::std::option::Option<
21262 unsafe extern "C" fn(
21263 This: *mut IDXGISwapChain1,
21264 Buffer: UINT,
21265 riid: *const IID,
21266 ppSurface: *mut *mut ::std::os::raw::c_void,
21267 ) -> HRESULT,
21268 >,
21269 pub SetFullscreenState: ::std::option::Option<
21270 unsafe extern "C" fn(
21271 This: *mut IDXGISwapChain1,
21272 Fullscreen: BOOL,
21273 pTarget: *mut IDXGIOutput,
21274 ) -> HRESULT,
21275 >,
21276 pub GetFullscreenState: ::std::option::Option<
21277 unsafe extern "C" fn(
21278 This: *mut IDXGISwapChain1,
21279 pFullscreen: *mut BOOL,
21280 ppTarget: *mut *mut IDXGIOutput,
21281 ) -> HRESULT,
21282 >,
21283 pub GetDesc: ::std::option::Option<
21284 unsafe extern "C" fn(
21285 This: *mut IDXGISwapChain1,
21286 pDesc: *mut DXGI_SWAP_CHAIN_DESC,
21287 ) -> HRESULT,
21288 >,
21289 pub ResizeBuffers: ::std::option::Option<
21290 unsafe extern "C" fn(
21291 This: *mut IDXGISwapChain1,
21292 BufferCount: UINT,
21293 Width: UINT,
21294 Height: UINT,
21295 NewFormat: DXGI_FORMAT,
21296 SwapChainFlags: UINT,
21297 ) -> HRESULT,
21298 >,
21299 pub ResizeTarget: ::std::option::Option<
21300 unsafe extern "C" fn(
21301 This: *mut IDXGISwapChain1,
21302 pNewTargetParameters: *const DXGI_MODE_DESC,
21303 ) -> HRESULT,
21304 >,
21305 pub GetContainingOutput: ::std::option::Option<
21306 unsafe extern "C" fn(
21307 This: *mut IDXGISwapChain1,
21308 ppOutput: *mut *mut IDXGIOutput,
21309 ) -> HRESULT,
21310 >,
21311 pub GetFrameStatistics: ::std::option::Option<
21312 unsafe extern "C" fn(
21313 This: *mut IDXGISwapChain1,
21314 pStats: *mut DXGI_FRAME_STATISTICS,
21315 ) -> HRESULT,
21316 >,
21317 pub GetLastPresentCount: ::std::option::Option<
21318 unsafe extern "C" fn(
21319 This: *mut IDXGISwapChain1,
21320 pLastPresentCount: *mut UINT,
21321 ) -> HRESULT,
21322 >,
21323 pub GetDesc1: ::std::option::Option<
21324 unsafe extern "C" fn(
21325 This: *mut IDXGISwapChain1,
21326 pDesc: *mut DXGI_SWAP_CHAIN_DESC1,
21327 ) -> HRESULT,
21328 >,
21329 pub GetFullscreenDesc: ::std::option::Option<
21330 unsafe extern "C" fn(
21331 This: *mut IDXGISwapChain1,
21332 pDesc: *mut DXGI_SWAP_CHAIN_FULLSCREEN_DESC,
21333 ) -> HRESULT,
21334 >,
21335 pub GetHwnd: ::std::option::Option<
21336 unsafe extern "C" fn(
21337 This: *mut IDXGISwapChain1,
21338 pHwnd: *mut HWND,
21339 ) -> HRESULT,
21340 >,
21341 pub GetCoreWindow: ::std::option::Option<
21342 unsafe extern "C" fn(
21343 This: *mut IDXGISwapChain1,
21344 refiid: *const IID,
21345 ppUnk: *mut *mut ::std::os::raw::c_void,
21346 ) -> HRESULT,
21347 >,
21348 pub Present1: ::std::option::Option<
21349 unsafe extern "C" fn(
21350 This: *mut IDXGISwapChain1,
21351 SyncInterval: UINT,
21352 PresentFlags: UINT,
21353 pPresentParameters: *const DXGI_PRESENT_PARAMETERS,
21354 ) -> HRESULT,
21355 >,
21356 pub IsTemporaryMonoSupported: ::std::option::Option<
21357 unsafe extern "C" fn(This: *mut IDXGISwapChain1) -> BOOL,
21358 >,
21359 pub GetRestrictToOutput: ::std::option::Option<
21360 unsafe extern "C" fn(
21361 This: *mut IDXGISwapChain1,
21362 ppRestrictToOutput: *mut *mut IDXGIOutput,
21363 ) -> HRESULT,
21364 >,
21365 pub SetBackgroundColor: ::std::option::Option<
21366 unsafe extern "C" fn(
21367 This: *mut IDXGISwapChain1,
21368 pColor: *const DXGI_RGBA,
21369 ) -> HRESULT,
21370 >,
21371 pub GetBackgroundColor: ::std::option::Option<
21372 unsafe extern "C" fn(
21373 This: *mut IDXGISwapChain1,
21374 pColor: *mut DXGI_RGBA,
21375 ) -> HRESULT,
21376 >,
21377 pub SetRotation: ::std::option::Option<
21378 unsafe extern "C" fn(
21379 This: *mut IDXGISwapChain1,
21380 Rotation: DXGI_MODE_ROTATION,
21381 ) -> HRESULT,
21382 >,
21383 pub GetRotation: ::std::option::Option<
21384 unsafe extern "C" fn(
21385 This: *mut IDXGISwapChain1,
21386 pRotation: *mut DXGI_MODE_ROTATION,
21387 ) -> HRESULT,
21388 >,
21389}
21390#[repr(C)]
21391#[derive(Debug, Copy, Clone, Hash, PartialOrd, Ord, PartialEq, Eq)]
21392pub struct IDXGISwapChain1 {
21393 pub lpVtbl: *mut IDXGISwapChain1Vtbl,
21394}
21395impl Default for IDXGISwapChain1 {
21396 fn default() -> Self {
21397 let mut s = ::std::mem::MaybeUninit::<Self>::uninit();
21398 unsafe {
21399 ::std::ptr::write_bytes(s.as_mut_ptr(), 0, 1);
21400 s.assume_init()
21401 }
21402 }
21403}
21404extern "C" {
21405 pub static IID_IDXGIFactory2: IID;
21406}
21407#[repr(C)]
21408#[derive(Debug, Default, Copy, Clone, Hash, PartialOrd, Ord, PartialEq, Eq)]
21409pub struct IDXGIFactory2Vtbl {
21410 pub QueryInterface: ::std::option::Option<
21411 unsafe extern "C" fn(
21412 This: *mut IDXGIFactory2,
21413 riid: *const IID,
21414 ppvObject: *mut *mut ::std::os::raw::c_void,
21415 ) -> HRESULT,
21416 >,
21417 pub AddRef: ::std::option::Option<
21418 unsafe extern "C" fn(This: *mut IDXGIFactory2) -> ULONG,
21419 >,
21420 pub Release: ::std::option::Option<
21421 unsafe extern "C" fn(This: *mut IDXGIFactory2) -> ULONG,
21422 >,
21423 pub SetPrivateData: ::std::option::Option<
21424 unsafe extern "C" fn(
21425 This: *mut IDXGIFactory2,
21426 Name: *const GUID,
21427 DataSize: UINT,
21428 pData: *const ::std::os::raw::c_void,
21429 ) -> HRESULT,
21430 >,
21431 pub SetPrivateDataInterface: ::std::option::Option<
21432 unsafe extern "C" fn(
21433 This: *mut IDXGIFactory2,
21434 Name: *const GUID,
21435 pUnknown: *const IUnknown,
21436 ) -> HRESULT,
21437 >,
21438 pub GetPrivateData: ::std::option::Option<
21439 unsafe extern "C" fn(
21440 This: *mut IDXGIFactory2,
21441 Name: *const GUID,
21442 pDataSize: *mut UINT,
21443 pData: *mut ::std::os::raw::c_void,
21444 ) -> HRESULT,
21445 >,
21446 pub GetParent: ::std::option::Option<
21447 unsafe extern "C" fn(
21448 This: *mut IDXGIFactory2,
21449 riid: *const IID,
21450 ppParent: *mut *mut ::std::os::raw::c_void,
21451 ) -> HRESULT,
21452 >,
21453 pub EnumAdapters: ::std::option::Option<
21454 unsafe extern "C" fn(
21455 This: *mut IDXGIFactory2,
21456 Adapter: UINT,
21457 ppAdapter: *mut *mut IDXGIAdapter,
21458 ) -> HRESULT,
21459 >,
21460 pub MakeWindowAssociation: ::std::option::Option<
21461 unsafe extern "C" fn(
21462 This: *mut IDXGIFactory2,
21463 WindowHandle: HWND,
21464 Flags: UINT,
21465 ) -> HRESULT,
21466 >,
21467 pub GetWindowAssociation: ::std::option::Option<
21468 unsafe extern "C" fn(
21469 This: *mut IDXGIFactory2,
21470 pWindowHandle: *mut HWND,
21471 ) -> HRESULT,
21472 >,
21473 pub CreateSwapChain: ::std::option::Option<
21474 unsafe extern "C" fn(
21475 This: *mut IDXGIFactory2,
21476 pDevice: *mut IUnknown,
21477 pDesc: *mut DXGI_SWAP_CHAIN_DESC,
21478 ppSwapChain: *mut *mut IDXGISwapChain,
21479 ) -> HRESULT,
21480 >,
21481 pub CreateSoftwareAdapter: ::std::option::Option<
21482 unsafe extern "C" fn(
21483 This: *mut IDXGIFactory2,
21484 Module: HMODULE,
21485 ppAdapter: *mut *mut IDXGIAdapter,
21486 ) -> HRESULT,
21487 >,
21488 pub EnumAdapters1: ::std::option::Option<
21489 unsafe extern "C" fn(
21490 This: *mut IDXGIFactory2,
21491 Adapter: UINT,
21492 ppAdapter: *mut *mut IDXGIAdapter1,
21493 ) -> HRESULT,
21494 >,
21495 pub IsCurrent: ::std::option::Option<
21496 unsafe extern "C" fn(This: *mut IDXGIFactory2) -> BOOL,
21497 >,
21498 pub IsWindowedStereoEnabled: ::std::option::Option<
21499 unsafe extern "C" fn(This: *mut IDXGIFactory2) -> BOOL,
21500 >,
21501 pub CreateSwapChainForHwnd: ::std::option::Option<
21502 unsafe extern "C" fn(
21503 This: *mut IDXGIFactory2,
21504 pDevice: *mut IUnknown,
21505 hWnd: HWND,
21506 pDesc: *const DXGI_SWAP_CHAIN_DESC1,
21507 pFullscreenDesc: *const DXGI_SWAP_CHAIN_FULLSCREEN_DESC,
21508 pRestrictToOutput: *mut IDXGIOutput,
21509 ppSwapChain: *mut *mut IDXGISwapChain1,
21510 ) -> HRESULT,
21511 >,
21512 pub CreateSwapChainForCoreWindow: ::std::option::Option<
21513 unsafe extern "C" fn(
21514 This: *mut IDXGIFactory2,
21515 pDevice: *mut IUnknown,
21516 pWindow: *mut IUnknown,
21517 pDesc: *const DXGI_SWAP_CHAIN_DESC1,
21518 pRestrictToOutput: *mut IDXGIOutput,
21519 ppSwapChain: *mut *mut IDXGISwapChain1,
21520 ) -> HRESULT,
21521 >,
21522 pub GetSharedResourceAdapterLuid: ::std::option::Option<
21523 unsafe extern "C" fn(
21524 This: *mut IDXGIFactory2,
21525 hResource: HANDLE,
21526 pLuid: *mut LUID,
21527 ) -> HRESULT,
21528 >,
21529 pub RegisterStereoStatusWindow: ::std::option::Option<
21530 unsafe extern "C" fn(
21531 This: *mut IDXGIFactory2,
21532 WindowHandle: HWND,
21533 wMsg: UINT,
21534 pdwCookie: *mut DWORD,
21535 ) -> HRESULT,
21536 >,
21537 pub RegisterStereoStatusEvent: ::std::option::Option<
21538 unsafe extern "C" fn(
21539 This: *mut IDXGIFactory2,
21540 hEvent: HANDLE,
21541 pdwCookie: *mut DWORD,
21542 ) -> HRESULT,
21543 >,
21544 pub UnregisterStereoStatus: ::std::option::Option<
21545 unsafe extern "C" fn(This: *mut IDXGIFactory2, dwCookie: DWORD),
21546 >,
21547 pub RegisterOcclusionStatusWindow: ::std::option::Option<
21548 unsafe extern "C" fn(
21549 This: *mut IDXGIFactory2,
21550 WindowHandle: HWND,
21551 wMsg: UINT,
21552 pdwCookie: *mut DWORD,
21553 ) -> HRESULT,
21554 >,
21555 pub RegisterOcclusionStatusEvent: ::std::option::Option<
21556 unsafe extern "C" fn(
21557 This: *mut IDXGIFactory2,
21558 hEvent: HANDLE,
21559 pdwCookie: *mut DWORD,
21560 ) -> HRESULT,
21561 >,
21562 pub UnregisterOcclusionStatus: ::std::option::Option<
21563 unsafe extern "C" fn(This: *mut IDXGIFactory2, dwCookie: DWORD),
21564 >,
21565 pub CreateSwapChainForComposition: ::std::option::Option<
21566 unsafe extern "C" fn(
21567 This: *mut IDXGIFactory2,
21568 pDevice: *mut IUnknown,
21569 pDesc: *const DXGI_SWAP_CHAIN_DESC1,
21570 pRestrictToOutput: *mut IDXGIOutput,
21571 ppSwapChain: *mut *mut IDXGISwapChain1,
21572 ) -> HRESULT,
21573 >,
21574}
21575#[repr(C)]
21576#[derive(Debug, Copy, Clone, Hash, PartialOrd, Ord, PartialEq, Eq)]
21577pub struct IDXGIFactory2 {
21578 pub lpVtbl: *mut IDXGIFactory2Vtbl,
21579}
21580impl Default for IDXGIFactory2 {
21581 fn default() -> Self {
21582 let mut s = ::std::mem::MaybeUninit::<Self>::uninit();
21583 unsafe {
21584 ::std::ptr::write_bytes(s.as_mut_ptr(), 0, 1);
21585 s.assume_init()
21586 }
21587 }
21588}
21589pub const DXGI_GRAPHICS_PREEMPTION_GRANULARITY_DXGI_GRAPHICS_PREEMPTION_DMA_BUFFER_BOUNDARY : DXGI_GRAPHICS_PREEMPTION_GRANULARITY = 0 ;
21590pub const DXGI_GRAPHICS_PREEMPTION_GRANULARITY_DXGI_GRAPHICS_PREEMPTION_PRIMITIVE_BOUNDARY : DXGI_GRAPHICS_PREEMPTION_GRANULARITY = 1 ;
21591pub const DXGI_GRAPHICS_PREEMPTION_GRANULARITY_DXGI_GRAPHICS_PREEMPTION_TRIANGLE_BOUNDARY : DXGI_GRAPHICS_PREEMPTION_GRANULARITY = 2 ;
21592pub const DXGI_GRAPHICS_PREEMPTION_GRANULARITY_DXGI_GRAPHICS_PREEMPTION_PIXEL_BOUNDARY : DXGI_GRAPHICS_PREEMPTION_GRANULARITY = 3 ;
21593pub const DXGI_GRAPHICS_PREEMPTION_GRANULARITY_DXGI_GRAPHICS_PREEMPTION_INSTRUCTION_BOUNDARY : DXGI_GRAPHICS_PREEMPTION_GRANULARITY = 4 ;
21594pub type DXGI_GRAPHICS_PREEMPTION_GRANULARITY = ::std::os::raw::c_int;
21595pub const DXGI_COMPUTE_PREEMPTION_GRANULARITY_DXGI_COMPUTE_PREEMPTION_DMA_BUFFER_BOUNDARY : DXGI_COMPUTE_PREEMPTION_GRANULARITY = 0 ;
21596pub const DXGI_COMPUTE_PREEMPTION_GRANULARITY_DXGI_COMPUTE_PREEMPTION_DISPATCH_BOUNDARY : DXGI_COMPUTE_PREEMPTION_GRANULARITY = 1 ;
21597pub const DXGI_COMPUTE_PREEMPTION_GRANULARITY_DXGI_COMPUTE_PREEMPTION_THREAD_GROUP_BOUNDARY : DXGI_COMPUTE_PREEMPTION_GRANULARITY = 2 ;
21598pub const DXGI_COMPUTE_PREEMPTION_GRANULARITY_DXGI_COMPUTE_PREEMPTION_THREAD_BOUNDARY : DXGI_COMPUTE_PREEMPTION_GRANULARITY = 3 ;
21599pub const DXGI_COMPUTE_PREEMPTION_GRANULARITY_DXGI_COMPUTE_PREEMPTION_INSTRUCTION_BOUNDARY : DXGI_COMPUTE_PREEMPTION_GRANULARITY = 4 ;
21600pub type DXGI_COMPUTE_PREEMPTION_GRANULARITY = ::std::os::raw::c_int;
21601#[repr(C)]
21602#[derive(Debug, Copy, Clone, Hash, PartialOrd, Ord, PartialEq, Eq)]
21603pub struct DXGI_ADAPTER_DESC2 {
21604 pub Description: [WCHAR; 128usize],
21605 pub VendorId: UINT,
21606 pub DeviceId: UINT,
21607 pub SubSysId: UINT,
21608 pub Revision: UINT,
21609 pub DedicatedVideoMemory: SIZE_T,
21610 pub DedicatedSystemMemory: SIZE_T,
21611 pub SharedSystemMemory: SIZE_T,
21612 pub AdapterLuid: LUID,
21613 pub Flags: UINT,
21614 pub GraphicsPreemptionGranularity: DXGI_GRAPHICS_PREEMPTION_GRANULARITY,
21615 pub ComputePreemptionGranularity: DXGI_COMPUTE_PREEMPTION_GRANULARITY,
21616}
21617impl Default for DXGI_ADAPTER_DESC2 {
21618 fn default() -> Self {
21619 let mut s = ::std::mem::MaybeUninit::<Self>::uninit();
21620 unsafe {
21621 ::std::ptr::write_bytes(s.as_mut_ptr(), 0, 1);
21622 s.assume_init()
21623 }
21624 }
21625}
21626extern "C" {
21627 pub static IID_IDXGIAdapter2: IID;
21628}
21629#[repr(C)]
21630#[derive(Debug, Default, Copy, Clone, Hash, PartialOrd, Ord, PartialEq, Eq)]
21631pub struct IDXGIAdapter2Vtbl {
21632 pub QueryInterface: ::std::option::Option<
21633 unsafe extern "C" fn(
21634 This: *mut IDXGIAdapter2,
21635 riid: *const IID,
21636 ppvObject: *mut *mut ::std::os::raw::c_void,
21637 ) -> HRESULT,
21638 >,
21639 pub AddRef: ::std::option::Option<
21640 unsafe extern "C" fn(This: *mut IDXGIAdapter2) -> ULONG,
21641 >,
21642 pub Release: ::std::option::Option<
21643 unsafe extern "C" fn(This: *mut IDXGIAdapter2) -> ULONG,
21644 >,
21645 pub SetPrivateData: ::std::option::Option<
21646 unsafe extern "C" fn(
21647 This: *mut IDXGIAdapter2,
21648 Name: *const GUID,
21649 DataSize: UINT,
21650 pData: *const ::std::os::raw::c_void,
21651 ) -> HRESULT,
21652 >,
21653 pub SetPrivateDataInterface: ::std::option::Option<
21654 unsafe extern "C" fn(
21655 This: *mut IDXGIAdapter2,
21656 Name: *const GUID,
21657 pUnknown: *const IUnknown,
21658 ) -> HRESULT,
21659 >,
21660 pub GetPrivateData: ::std::option::Option<
21661 unsafe extern "C" fn(
21662 This: *mut IDXGIAdapter2,
21663 Name: *const GUID,
21664 pDataSize: *mut UINT,
21665 pData: *mut ::std::os::raw::c_void,
21666 ) -> HRESULT,
21667 >,
21668 pub GetParent: ::std::option::Option<
21669 unsafe extern "C" fn(
21670 This: *mut IDXGIAdapter2,
21671 riid: *const IID,
21672 ppParent: *mut *mut ::std::os::raw::c_void,
21673 ) -> HRESULT,
21674 >,
21675 pub EnumOutputs: ::std::option::Option<
21676 unsafe extern "C" fn(
21677 This: *mut IDXGIAdapter2,
21678 Output: UINT,
21679 ppOutput: *mut *mut IDXGIOutput,
21680 ) -> HRESULT,
21681 >,
21682 pub GetDesc: ::std::option::Option<
21683 unsafe extern "C" fn(
21684 This: *mut IDXGIAdapter2,
21685 pDesc: *mut DXGI_ADAPTER_DESC,
21686 ) -> HRESULT,
21687 >,
21688 pub CheckInterfaceSupport: ::std::option::Option<
21689 unsafe extern "C" fn(
21690 This: *mut IDXGIAdapter2,
21691 InterfaceName: *const GUID,
21692 pUMDVersion: *mut LARGE_INTEGER,
21693 ) -> HRESULT,
21694 >,
21695 pub GetDesc1: ::std::option::Option<
21696 unsafe extern "C" fn(
21697 This: *mut IDXGIAdapter2,
21698 pDesc: *mut DXGI_ADAPTER_DESC1,
21699 ) -> HRESULT,
21700 >,
21701 pub GetDesc2: ::std::option::Option<
21702 unsafe extern "C" fn(
21703 This: *mut IDXGIAdapter2,
21704 pDesc: *mut DXGI_ADAPTER_DESC2,
21705 ) -> HRESULT,
21706 >,
21707}
21708#[repr(C)]
21709#[derive(Debug, Copy, Clone, Hash, PartialOrd, Ord, PartialEq, Eq)]
21710pub struct IDXGIAdapter2 {
21711 pub lpVtbl: *mut IDXGIAdapter2Vtbl,
21712}
21713impl Default for IDXGIAdapter2 {
21714 fn default() -> Self {
21715 let mut s = ::std::mem::MaybeUninit::<Self>::uninit();
21716 unsafe {
21717 ::std::ptr::write_bytes(s.as_mut_ptr(), 0, 1);
21718 s.assume_init()
21719 }
21720 }
21721}
21722extern "C" {
21723 pub static IID_IDXGIOutput1: IID;
21724}
21725#[repr(C)]
21726#[derive(Debug, Default, Copy, Clone, Hash, PartialOrd, Ord, PartialEq, Eq)]
21727pub struct IDXGIOutput1Vtbl {
21728 pub QueryInterface: ::std::option::Option<
21729 unsafe extern "C" fn(
21730 This: *mut IDXGIOutput1,
21731 riid: *const IID,
21732 ppvObject: *mut *mut ::std::os::raw::c_void,
21733 ) -> HRESULT,
21734 >,
21735 pub AddRef: ::std::option::Option<
21736 unsafe extern "C" fn(This: *mut IDXGIOutput1) -> ULONG,
21737 >,
21738 pub Release: ::std::option::Option<
21739 unsafe extern "C" fn(This: *mut IDXGIOutput1) -> ULONG,
21740 >,
21741 pub SetPrivateData: ::std::option::Option<
21742 unsafe extern "C" fn(
21743 This: *mut IDXGIOutput1,
21744 Name: *const GUID,
21745 DataSize: UINT,
21746 pData: *const ::std::os::raw::c_void,
21747 ) -> HRESULT,
21748 >,
21749 pub SetPrivateDataInterface: ::std::option::Option<
21750 unsafe extern "C" fn(
21751 This: *mut IDXGIOutput1,
21752 Name: *const GUID,
21753 pUnknown: *const IUnknown,
21754 ) -> HRESULT,
21755 >,
21756 pub GetPrivateData: ::std::option::Option<
21757 unsafe extern "C" fn(
21758 This: *mut IDXGIOutput1,
21759 Name: *const GUID,
21760 pDataSize: *mut UINT,
21761 pData: *mut ::std::os::raw::c_void,
21762 ) -> HRESULT,
21763 >,
21764 pub GetParent: ::std::option::Option<
21765 unsafe extern "C" fn(
21766 This: *mut IDXGIOutput1,
21767 riid: *const IID,
21768 ppParent: *mut *mut ::std::os::raw::c_void,
21769 ) -> HRESULT,
21770 >,
21771 pub GetDesc: ::std::option::Option<
21772 unsafe extern "C" fn(
21773 This: *mut IDXGIOutput1,
21774 pDesc: *mut DXGI_OUTPUT_DESC,
21775 ) -> HRESULT,
21776 >,
21777 pub GetDisplayModeList: ::std::option::Option<
21778 unsafe extern "C" fn(
21779 This: *mut IDXGIOutput1,
21780 EnumFormat: DXGI_FORMAT,
21781 Flags: UINT,
21782 pNumModes: *mut UINT,
21783 pDesc: *mut DXGI_MODE_DESC,
21784 ) -> HRESULT,
21785 >,
21786 pub FindClosestMatchingMode: ::std::option::Option<
21787 unsafe extern "C" fn(
21788 This: *mut IDXGIOutput1,
21789 pModeToMatch: *const DXGI_MODE_DESC,
21790 pClosestMatch: *mut DXGI_MODE_DESC,
21791 pConcernedDevice: *mut IUnknown,
21792 ) -> HRESULT,
21793 >,
21794 pub WaitForVBlank: ::std::option::Option<
21795 unsafe extern "C" fn(This: *mut IDXGIOutput1) -> HRESULT,
21796 >,
21797 pub TakeOwnership: ::std::option::Option<
21798 unsafe extern "C" fn(
21799 This: *mut IDXGIOutput1,
21800 pDevice: *mut IUnknown,
21801 Exclusive: BOOL,
21802 ) -> HRESULT,
21803 >,
21804 pub ReleaseOwnership:
21805 ::std::option::Option<unsafe extern "C" fn(This: *mut IDXGIOutput1)>,
21806 pub GetGammaControlCapabilities: ::std::option::Option<
21807 unsafe extern "C" fn(
21808 This: *mut IDXGIOutput1,
21809 pGammaCaps: *mut DXGI_GAMMA_CONTROL_CAPABILITIES,
21810 ) -> HRESULT,
21811 >,
21812 pub SetGammaControl: ::std::option::Option<
21813 unsafe extern "C" fn(
21814 This: *mut IDXGIOutput1,
21815 pArray: *const DXGI_GAMMA_CONTROL,
21816 ) -> HRESULT,
21817 >,
21818 pub GetGammaControl: ::std::option::Option<
21819 unsafe extern "C" fn(
21820 This: *mut IDXGIOutput1,
21821 pArray: *mut DXGI_GAMMA_CONTROL,
21822 ) -> HRESULT,
21823 >,
21824 pub SetDisplaySurface: ::std::option::Option<
21825 unsafe extern "C" fn(
21826 This: *mut IDXGIOutput1,
21827 pScanoutSurface: *mut IDXGISurface,
21828 ) -> HRESULT,
21829 >,
21830 pub GetDisplaySurfaceData: ::std::option::Option<
21831 unsafe extern "C" fn(
21832 This: *mut IDXGIOutput1,
21833 pDestination: *mut IDXGISurface,
21834 ) -> HRESULT,
21835 >,
21836 pub GetFrameStatistics: ::std::option::Option<
21837 unsafe extern "C" fn(
21838 This: *mut IDXGIOutput1,
21839 pStats: *mut DXGI_FRAME_STATISTICS,
21840 ) -> HRESULT,
21841 >,
21842 pub GetDisplayModeList1: ::std::option::Option<
21843 unsafe extern "C" fn(
21844 This: *mut IDXGIOutput1,
21845 EnumFormat: DXGI_FORMAT,
21846 Flags: UINT,
21847 pNumModes: *mut UINT,
21848 pDesc: *mut DXGI_MODE_DESC1,
21849 ) -> HRESULT,
21850 >,
21851 pub FindClosestMatchingMode1: ::std::option::Option<
21852 unsafe extern "C" fn(
21853 This: *mut IDXGIOutput1,
21854 pModeToMatch: *const DXGI_MODE_DESC1,
21855 pClosestMatch: *mut DXGI_MODE_DESC1,
21856 pConcernedDevice: *mut IUnknown,
21857 ) -> HRESULT,
21858 >,
21859 pub GetDisplaySurfaceData1: ::std::option::Option<
21860 unsafe extern "C" fn(
21861 This: *mut IDXGIOutput1,
21862 pDestination: *mut IDXGIResource,
21863 ) -> HRESULT,
21864 >,
21865 pub DuplicateOutput: ::std::option::Option<
21866 unsafe extern "C" fn(
21867 This: *mut IDXGIOutput1,
21868 pDevice: *mut IUnknown,
21869 ppOutputDuplication: *mut *mut IDXGIOutputDuplication,
21870 ) -> HRESULT,
21871 >,
21872}
21873#[repr(C)]
21874#[derive(Debug, Copy, Clone, Hash, PartialOrd, Ord, PartialEq, Eq)]
21875pub struct IDXGIOutput1 {
21876 pub lpVtbl: *mut IDXGIOutput1Vtbl,
21877}
21878impl Default for IDXGIOutput1 {
21879 fn default() -> Self {
21880 let mut s = ::std::mem::MaybeUninit::<Self>::uninit();
21881 unsafe {
21882 ::std::ptr::write_bytes(s.as_mut_ptr(), 0, 1);
21883 s.assume_init()
21884 }
21885 }
21886}
21887extern "C" {
21888 pub fn CreateDXGIFactory2(
21889 Flags: UINT,
21890 riid: *const IID,
21891 ppFactory: *mut *mut ::std::os::raw::c_void,
21892 ) -> HRESULT;
21893}
21894extern "C" {
21895 pub fn DXGIGetDebugInterface1(
21896 Flags: UINT,
21897 riid: *const IID,
21898 pDebug: *mut *mut ::std::os::raw::c_void,
21899 ) -> HRESULT;
21900}
21901extern "C" {
21902 pub static IID_IDXGIDevice3: IID;
21903}
21904#[repr(C)]
21905#[derive(Debug, Default, Copy, Clone, Hash, PartialOrd, Ord, PartialEq, Eq)]
21906pub struct IDXGIDevice3Vtbl {
21907 pub QueryInterface: ::std::option::Option<
21908 unsafe extern "C" fn(
21909 This: *mut IDXGIDevice3,
21910 riid: *const IID,
21911 ppvObject: *mut *mut ::std::os::raw::c_void,
21912 ) -> HRESULT,
21913 >,
21914 pub AddRef: ::std::option::Option<
21915 unsafe extern "C" fn(This: *mut IDXGIDevice3) -> ULONG,
21916 >,
21917 pub Release: ::std::option::Option<
21918 unsafe extern "C" fn(This: *mut IDXGIDevice3) -> ULONG,
21919 >,
21920 pub SetPrivateData: ::std::option::Option<
21921 unsafe extern "C" fn(
21922 This: *mut IDXGIDevice3,
21923 Name: *const GUID,
21924 DataSize: UINT,
21925 pData: *const ::std::os::raw::c_void,
21926 ) -> HRESULT,
21927 >,
21928 pub SetPrivateDataInterface: ::std::option::Option<
21929 unsafe extern "C" fn(
21930 This: *mut IDXGIDevice3,
21931 Name: *const GUID,
21932 pUnknown: *const IUnknown,
21933 ) -> HRESULT,
21934 >,
21935 pub GetPrivateData: ::std::option::Option<
21936 unsafe extern "C" fn(
21937 This: *mut IDXGIDevice3,
21938 Name: *const GUID,
21939 pDataSize: *mut UINT,
21940 pData: *mut ::std::os::raw::c_void,
21941 ) -> HRESULT,
21942 >,
21943 pub GetParent: ::std::option::Option<
21944 unsafe extern "C" fn(
21945 This: *mut IDXGIDevice3,
21946 riid: *const IID,
21947 ppParent: *mut *mut ::std::os::raw::c_void,
21948 ) -> HRESULT,
21949 >,
21950 pub GetAdapter: ::std::option::Option<
21951 unsafe extern "C" fn(
21952 This: *mut IDXGIDevice3,
21953 pAdapter: *mut *mut IDXGIAdapter,
21954 ) -> HRESULT,
21955 >,
21956 pub CreateSurface: ::std::option::Option<
21957 unsafe extern "C" fn(
21958 This: *mut IDXGIDevice3,
21959 pDesc: *const DXGI_SURFACE_DESC,
21960 NumSurfaces: UINT,
21961 Usage: DXGI_USAGE,
21962 pSharedResource: *const DXGI_SHARED_RESOURCE,
21963 ppSurface: *mut *mut IDXGISurface,
21964 ) -> HRESULT,
21965 >,
21966 pub QueryResourceResidency: ::std::option::Option<
21967 unsafe extern "C" fn(
21968 This: *mut IDXGIDevice3,
21969 ppResources: *const *mut IUnknown,
21970 pResidencyStatus: *mut DXGI_RESIDENCY,
21971 NumResources: UINT,
21972 ) -> HRESULT,
21973 >,
21974 pub SetGPUThreadPriority: ::std::option::Option<
21975 unsafe extern "C" fn(This: *mut IDXGIDevice3, Priority: INT) -> HRESULT,
21976 >,
21977 pub GetGPUThreadPriority: ::std::option::Option<
21978 unsafe extern "C" fn(
21979 This: *mut IDXGIDevice3,
21980 pPriority: *mut INT,
21981 ) -> HRESULT,
21982 >,
21983 pub SetMaximumFrameLatency: ::std::option::Option<
21984 unsafe extern "C" fn(
21985 This: *mut IDXGIDevice3,
21986 MaxLatency: UINT,
21987 ) -> HRESULT,
21988 >,
21989 pub GetMaximumFrameLatency: ::std::option::Option<
21990 unsafe extern "C" fn(
21991 This: *mut IDXGIDevice3,
21992 pMaxLatency: *mut UINT,
21993 ) -> HRESULT,
21994 >,
21995 pub OfferResources: ::std::option::Option<
21996 unsafe extern "C" fn(
21997 This: *mut IDXGIDevice3,
21998 NumResources: UINT,
21999 ppResources: *const *mut IDXGIResource,
22000 Priority: DXGI_OFFER_RESOURCE_PRIORITY,
22001 ) -> HRESULT,
22002 >,
22003 pub ReclaimResources: ::std::option::Option<
22004 unsafe extern "C" fn(
22005 This: *mut IDXGIDevice3,
22006 NumResources: UINT,
22007 ppResources: *const *mut IDXGIResource,
22008 pDiscarded: *mut BOOL,
22009 ) -> HRESULT,
22010 >,
22011 pub EnqueueSetEvent: ::std::option::Option<
22012 unsafe extern "C" fn(
22013 This: *mut IDXGIDevice3,
22014 hEvent: HANDLE,
22015 ) -> HRESULT,
22016 >,
22017 pub Trim:
22018 ::std::option::Option<unsafe extern "C" fn(This: *mut IDXGIDevice3)>,
22019}
22020#[repr(C)]
22021#[derive(Debug, Copy, Clone, Hash, PartialOrd, Ord, PartialEq, Eq)]
22022pub struct IDXGIDevice3 {
22023 pub lpVtbl: *mut IDXGIDevice3Vtbl,
22024}
22025impl Default for IDXGIDevice3 {
22026 fn default() -> Self {
22027 let mut s = ::std::mem::MaybeUninit::<Self>::uninit();
22028 unsafe {
22029 ::std::ptr::write_bytes(s.as_mut_ptr(), 0, 1);
22030 s.assume_init()
22031 }
22032 }
22033}
22034#[repr(C)]
22035#[derive(Debug, Default, Copy, Clone, PartialOrd, PartialEq)]
22036pub struct DXGI_MATRIX_3X2_F {
22037 pub _11: FLOAT,
22038 pub _12: FLOAT,
22039 pub _21: FLOAT,
22040 pub _22: FLOAT,
22041 pub _31: FLOAT,
22042 pub _32: FLOAT,
22043}
22044extern "C" {
22045 pub static IID_IDXGISwapChain2: IID;
22046}
22047#[repr(C)]
22048#[derive(Debug, Default, Copy, Clone, Hash, PartialOrd, Ord, PartialEq, Eq)]
22049pub struct IDXGISwapChain2Vtbl {
22050 pub QueryInterface: ::std::option::Option<
22051 unsafe extern "C" fn(
22052 This: *mut IDXGISwapChain2,
22053 riid: *const IID,
22054 ppvObject: *mut *mut ::std::os::raw::c_void,
22055 ) -> HRESULT,
22056 >,
22057 pub AddRef: ::std::option::Option<
22058 unsafe extern "C" fn(This: *mut IDXGISwapChain2) -> ULONG,
22059 >,
22060 pub Release: ::std::option::Option<
22061 unsafe extern "C" fn(This: *mut IDXGISwapChain2) -> ULONG,
22062 >,
22063 pub SetPrivateData: ::std::option::Option<
22064 unsafe extern "C" fn(
22065 This: *mut IDXGISwapChain2,
22066 Name: *const GUID,
22067 DataSize: UINT,
22068 pData: *const ::std::os::raw::c_void,
22069 ) -> HRESULT,
22070 >,
22071 pub SetPrivateDataInterface: ::std::option::Option<
22072 unsafe extern "C" fn(
22073 This: *mut IDXGISwapChain2,
22074 Name: *const GUID,
22075 pUnknown: *const IUnknown,
22076 ) -> HRESULT,
22077 >,
22078 pub GetPrivateData: ::std::option::Option<
22079 unsafe extern "C" fn(
22080 This: *mut IDXGISwapChain2,
22081 Name: *const GUID,
22082 pDataSize: *mut UINT,
22083 pData: *mut ::std::os::raw::c_void,
22084 ) -> HRESULT,
22085 >,
22086 pub GetParent: ::std::option::Option<
22087 unsafe extern "C" fn(
22088 This: *mut IDXGISwapChain2,
22089 riid: *const IID,
22090 ppParent: *mut *mut ::std::os::raw::c_void,
22091 ) -> HRESULT,
22092 >,
22093 pub GetDevice: ::std::option::Option<
22094 unsafe extern "C" fn(
22095 This: *mut IDXGISwapChain2,
22096 riid: *const IID,
22097 ppDevice: *mut *mut ::std::os::raw::c_void,
22098 ) -> HRESULT,
22099 >,
22100 pub Present: ::std::option::Option<
22101 unsafe extern "C" fn(
22102 This: *mut IDXGISwapChain2,
22103 SyncInterval: UINT,
22104 Flags: UINT,
22105 ) -> HRESULT,
22106 >,
22107 pub GetBuffer: ::std::option::Option<
22108 unsafe extern "C" fn(
22109 This: *mut IDXGISwapChain2,
22110 Buffer: UINT,
22111 riid: *const IID,
22112 ppSurface: *mut *mut ::std::os::raw::c_void,
22113 ) -> HRESULT,
22114 >,
22115 pub SetFullscreenState: ::std::option::Option<
22116 unsafe extern "C" fn(
22117 This: *mut IDXGISwapChain2,
22118 Fullscreen: BOOL,
22119 pTarget: *mut IDXGIOutput,
22120 ) -> HRESULT,
22121 >,
22122 pub GetFullscreenState: ::std::option::Option<
22123 unsafe extern "C" fn(
22124 This: *mut IDXGISwapChain2,
22125 pFullscreen: *mut BOOL,
22126 ppTarget: *mut *mut IDXGIOutput,
22127 ) -> HRESULT,
22128 >,
22129 pub GetDesc: ::std::option::Option<
22130 unsafe extern "C" fn(
22131 This: *mut IDXGISwapChain2,
22132 pDesc: *mut DXGI_SWAP_CHAIN_DESC,
22133 ) -> HRESULT,
22134 >,
22135 pub ResizeBuffers: ::std::option::Option<
22136 unsafe extern "C" fn(
22137 This: *mut IDXGISwapChain2,
22138 BufferCount: UINT,
22139 Width: UINT,
22140 Height: UINT,
22141 NewFormat: DXGI_FORMAT,
22142 SwapChainFlags: UINT,
22143 ) -> HRESULT,
22144 >,
22145 pub ResizeTarget: ::std::option::Option<
22146 unsafe extern "C" fn(
22147 This: *mut IDXGISwapChain2,
22148 pNewTargetParameters: *const DXGI_MODE_DESC,
22149 ) -> HRESULT,
22150 >,
22151 pub GetContainingOutput: ::std::option::Option<
22152 unsafe extern "C" fn(
22153 This: *mut IDXGISwapChain2,
22154 ppOutput: *mut *mut IDXGIOutput,
22155 ) -> HRESULT,
22156 >,
22157 pub GetFrameStatistics: ::std::option::Option<
22158 unsafe extern "C" fn(
22159 This: *mut IDXGISwapChain2,
22160 pStats: *mut DXGI_FRAME_STATISTICS,
22161 ) -> HRESULT,
22162 >,
22163 pub GetLastPresentCount: ::std::option::Option<
22164 unsafe extern "C" fn(
22165 This: *mut IDXGISwapChain2,
22166 pLastPresentCount: *mut UINT,
22167 ) -> HRESULT,
22168 >,
22169 pub GetDesc1: ::std::option::Option<
22170 unsafe extern "C" fn(
22171 This: *mut IDXGISwapChain2,
22172 pDesc: *mut DXGI_SWAP_CHAIN_DESC1,
22173 ) -> HRESULT,
22174 >,
22175 pub GetFullscreenDesc: ::std::option::Option<
22176 unsafe extern "C" fn(
22177 This: *mut IDXGISwapChain2,
22178 pDesc: *mut DXGI_SWAP_CHAIN_FULLSCREEN_DESC,
22179 ) -> HRESULT,
22180 >,
22181 pub GetHwnd: ::std::option::Option<
22182 unsafe extern "C" fn(
22183 This: *mut IDXGISwapChain2,
22184 pHwnd: *mut HWND,
22185 ) -> HRESULT,
22186 >,
22187 pub GetCoreWindow: ::std::option::Option<
22188 unsafe extern "C" fn(
22189 This: *mut IDXGISwapChain2,
22190 refiid: *const IID,
22191 ppUnk: *mut *mut ::std::os::raw::c_void,
22192 ) -> HRESULT,
22193 >,
22194 pub Present1: ::std::option::Option<
22195 unsafe extern "C" fn(
22196 This: *mut IDXGISwapChain2,
22197 SyncInterval: UINT,
22198 PresentFlags: UINT,
22199 pPresentParameters: *const DXGI_PRESENT_PARAMETERS,
22200 ) -> HRESULT,
22201 >,
22202 pub IsTemporaryMonoSupported: ::std::option::Option<
22203 unsafe extern "C" fn(This: *mut IDXGISwapChain2) -> BOOL,
22204 >,
22205 pub GetRestrictToOutput: ::std::option::Option<
22206 unsafe extern "C" fn(
22207 This: *mut IDXGISwapChain2,
22208 ppRestrictToOutput: *mut *mut IDXGIOutput,
22209 ) -> HRESULT,
22210 >,
22211 pub SetBackgroundColor: ::std::option::Option<
22212 unsafe extern "C" fn(
22213 This: *mut IDXGISwapChain2,
22214 pColor: *const DXGI_RGBA,
22215 ) -> HRESULT,
22216 >,
22217 pub GetBackgroundColor: ::std::option::Option<
22218 unsafe extern "C" fn(
22219 This: *mut IDXGISwapChain2,
22220 pColor: *mut DXGI_RGBA,
22221 ) -> HRESULT,
22222 >,
22223 pub SetRotation: ::std::option::Option<
22224 unsafe extern "C" fn(
22225 This: *mut IDXGISwapChain2,
22226 Rotation: DXGI_MODE_ROTATION,
22227 ) -> HRESULT,
22228 >,
22229 pub GetRotation: ::std::option::Option<
22230 unsafe extern "C" fn(
22231 This: *mut IDXGISwapChain2,
22232 pRotation: *mut DXGI_MODE_ROTATION,
22233 ) -> HRESULT,
22234 >,
22235 pub SetSourceSize: ::std::option::Option<
22236 unsafe extern "C" fn(
22237 This: *mut IDXGISwapChain2,
22238 Width: UINT,
22239 Height: UINT,
22240 ) -> HRESULT,
22241 >,
22242 pub GetSourceSize: ::std::option::Option<
22243 unsafe extern "C" fn(
22244 This: *mut IDXGISwapChain2,
22245 pWidth: *mut UINT,
22246 pHeight: *mut UINT,
22247 ) -> HRESULT,
22248 >,
22249 pub SetMaximumFrameLatency: ::std::option::Option<
22250 unsafe extern "C" fn(
22251 This: *mut IDXGISwapChain2,
22252 MaxLatency: UINT,
22253 ) -> HRESULT,
22254 >,
22255 pub GetMaximumFrameLatency: ::std::option::Option<
22256 unsafe extern "C" fn(
22257 This: *mut IDXGISwapChain2,
22258 pMaxLatency: *mut UINT,
22259 ) -> HRESULT,
22260 >,
22261 pub GetFrameLatencyWaitableObject: ::std::option::Option<
22262 unsafe extern "C" fn(This: *mut IDXGISwapChain2) -> HANDLE,
22263 >,
22264 pub SetMatrixTransform: ::std::option::Option<
22265 unsafe extern "C" fn(
22266 This: *mut IDXGISwapChain2,
22267 pMatrix: *const DXGI_MATRIX_3X2_F,
22268 ) -> HRESULT,
22269 >,
22270 pub GetMatrixTransform: ::std::option::Option<
22271 unsafe extern "C" fn(
22272 This: *mut IDXGISwapChain2,
22273 pMatrix: *mut DXGI_MATRIX_3X2_F,
22274 ) -> HRESULT,
22275 >,
22276}
22277#[repr(C)]
22278#[derive(Debug, Copy, Clone, Hash, PartialOrd, Ord, PartialEq, Eq)]
22279pub struct IDXGISwapChain2 {
22280 pub lpVtbl: *mut IDXGISwapChain2Vtbl,
22281}
22282impl Default for IDXGISwapChain2 {
22283 fn default() -> Self {
22284 let mut s = ::std::mem::MaybeUninit::<Self>::uninit();
22285 unsafe {
22286 ::std::ptr::write_bytes(s.as_mut_ptr(), 0, 1);
22287 s.assume_init()
22288 }
22289 }
22290}
22291extern "C" {
22292 pub static IID_IDXGIOutput2: IID;
22293}
22294#[repr(C)]
22295#[derive(Debug, Default, Copy, Clone, Hash, PartialOrd, Ord, PartialEq, Eq)]
22296pub struct IDXGIOutput2Vtbl {
22297 pub QueryInterface: ::std::option::Option<
22298 unsafe extern "C" fn(
22299 This: *mut IDXGIOutput2,
22300 riid: *const IID,
22301 ppvObject: *mut *mut ::std::os::raw::c_void,
22302 ) -> HRESULT,
22303 >,
22304 pub AddRef: ::std::option::Option<
22305 unsafe extern "C" fn(This: *mut IDXGIOutput2) -> ULONG,
22306 >,
22307 pub Release: ::std::option::Option<
22308 unsafe extern "C" fn(This: *mut IDXGIOutput2) -> ULONG,
22309 >,
22310 pub SetPrivateData: ::std::option::Option<
22311 unsafe extern "C" fn(
22312 This: *mut IDXGIOutput2,
22313 Name: *const GUID,
22314 DataSize: UINT,
22315 pData: *const ::std::os::raw::c_void,
22316 ) -> HRESULT,
22317 >,
22318 pub SetPrivateDataInterface: ::std::option::Option<
22319 unsafe extern "C" fn(
22320 This: *mut IDXGIOutput2,
22321 Name: *const GUID,
22322 pUnknown: *const IUnknown,
22323 ) -> HRESULT,
22324 >,
22325 pub GetPrivateData: ::std::option::Option<
22326 unsafe extern "C" fn(
22327 This: *mut IDXGIOutput2,
22328 Name: *const GUID,
22329 pDataSize: *mut UINT,
22330 pData: *mut ::std::os::raw::c_void,
22331 ) -> HRESULT,
22332 >,
22333 pub GetParent: ::std::option::Option<
22334 unsafe extern "C" fn(
22335 This: *mut IDXGIOutput2,
22336 riid: *const IID,
22337 ppParent: *mut *mut ::std::os::raw::c_void,
22338 ) -> HRESULT,
22339 >,
22340 pub GetDesc: ::std::option::Option<
22341 unsafe extern "C" fn(
22342 This: *mut IDXGIOutput2,
22343 pDesc: *mut DXGI_OUTPUT_DESC,
22344 ) -> HRESULT,
22345 >,
22346 pub GetDisplayModeList: ::std::option::Option<
22347 unsafe extern "C" fn(
22348 This: *mut IDXGIOutput2,
22349 EnumFormat: DXGI_FORMAT,
22350 Flags: UINT,
22351 pNumModes: *mut UINT,
22352 pDesc: *mut DXGI_MODE_DESC,
22353 ) -> HRESULT,
22354 >,
22355 pub FindClosestMatchingMode: ::std::option::Option<
22356 unsafe extern "C" fn(
22357 This: *mut IDXGIOutput2,
22358 pModeToMatch: *const DXGI_MODE_DESC,
22359 pClosestMatch: *mut DXGI_MODE_DESC,
22360 pConcernedDevice: *mut IUnknown,
22361 ) -> HRESULT,
22362 >,
22363 pub WaitForVBlank: ::std::option::Option<
22364 unsafe extern "C" fn(This: *mut IDXGIOutput2) -> HRESULT,
22365 >,
22366 pub TakeOwnership: ::std::option::Option<
22367 unsafe extern "C" fn(
22368 This: *mut IDXGIOutput2,
22369 pDevice: *mut IUnknown,
22370 Exclusive: BOOL,
22371 ) -> HRESULT,
22372 >,
22373 pub ReleaseOwnership:
22374 ::std::option::Option<unsafe extern "C" fn(This: *mut IDXGIOutput2)>,
22375 pub GetGammaControlCapabilities: ::std::option::Option<
22376 unsafe extern "C" fn(
22377 This: *mut IDXGIOutput2,
22378 pGammaCaps: *mut DXGI_GAMMA_CONTROL_CAPABILITIES,
22379 ) -> HRESULT,
22380 >,
22381 pub SetGammaControl: ::std::option::Option<
22382 unsafe extern "C" fn(
22383 This: *mut IDXGIOutput2,
22384 pArray: *const DXGI_GAMMA_CONTROL,
22385 ) -> HRESULT,
22386 >,
22387 pub GetGammaControl: ::std::option::Option<
22388 unsafe extern "C" fn(
22389 This: *mut IDXGIOutput2,
22390 pArray: *mut DXGI_GAMMA_CONTROL,
22391 ) -> HRESULT,
22392 >,
22393 pub SetDisplaySurface: ::std::option::Option<
22394 unsafe extern "C" fn(
22395 This: *mut IDXGIOutput2,
22396 pScanoutSurface: *mut IDXGISurface,
22397 ) -> HRESULT,
22398 >,
22399 pub GetDisplaySurfaceData: ::std::option::Option<
22400 unsafe extern "C" fn(
22401 This: *mut IDXGIOutput2,
22402 pDestination: *mut IDXGISurface,
22403 ) -> HRESULT,
22404 >,
22405 pub GetFrameStatistics: ::std::option::Option<
22406 unsafe extern "C" fn(
22407 This: *mut IDXGIOutput2,
22408 pStats: *mut DXGI_FRAME_STATISTICS,
22409 ) -> HRESULT,
22410 >,
22411 pub GetDisplayModeList1: ::std::option::Option<
22412 unsafe extern "C" fn(
22413 This: *mut IDXGIOutput2,
22414 EnumFormat: DXGI_FORMAT,
22415 Flags: UINT,
22416 pNumModes: *mut UINT,
22417 pDesc: *mut DXGI_MODE_DESC1,
22418 ) -> HRESULT,
22419 >,
22420 pub FindClosestMatchingMode1: ::std::option::Option<
22421 unsafe extern "C" fn(
22422 This: *mut IDXGIOutput2,
22423 pModeToMatch: *const DXGI_MODE_DESC1,
22424 pClosestMatch: *mut DXGI_MODE_DESC1,
22425 pConcernedDevice: *mut IUnknown,
22426 ) -> HRESULT,
22427 >,
22428 pub GetDisplaySurfaceData1: ::std::option::Option<
22429 unsafe extern "C" fn(
22430 This: *mut IDXGIOutput2,
22431 pDestination: *mut IDXGIResource,
22432 ) -> HRESULT,
22433 >,
22434 pub DuplicateOutput: ::std::option::Option<
22435 unsafe extern "C" fn(
22436 This: *mut IDXGIOutput2,
22437 pDevice: *mut IUnknown,
22438 ppOutputDuplication: *mut *mut IDXGIOutputDuplication,
22439 ) -> HRESULT,
22440 >,
22441 pub SupportsOverlays: ::std::option::Option<
22442 unsafe extern "C" fn(This: *mut IDXGIOutput2) -> BOOL,
22443 >,
22444}
22445#[repr(C)]
22446#[derive(Debug, Copy, Clone, Hash, PartialOrd, Ord, PartialEq, Eq)]
22447pub struct IDXGIOutput2 {
22448 pub lpVtbl: *mut IDXGIOutput2Vtbl,
22449}
22450impl Default for IDXGIOutput2 {
22451 fn default() -> Self {
22452 let mut s = ::std::mem::MaybeUninit::<Self>::uninit();
22453 unsafe {
22454 ::std::ptr::write_bytes(s.as_mut_ptr(), 0, 1);
22455 s.assume_init()
22456 }
22457 }
22458}
22459extern "C" {
22460 pub static IID_IDXGIFactory3: IID;
22461}
22462#[repr(C)]
22463#[derive(Debug, Default, Copy, Clone, Hash, PartialOrd, Ord, PartialEq, Eq)]
22464pub struct IDXGIFactory3Vtbl {
22465 pub QueryInterface: ::std::option::Option<
22466 unsafe extern "C" fn(
22467 This: *mut IDXGIFactory3,
22468 riid: *const IID,
22469 ppvObject: *mut *mut ::std::os::raw::c_void,
22470 ) -> HRESULT,
22471 >,
22472 pub AddRef: ::std::option::Option<
22473 unsafe extern "C" fn(This: *mut IDXGIFactory3) -> ULONG,
22474 >,
22475 pub Release: ::std::option::Option<
22476 unsafe extern "C" fn(This: *mut IDXGIFactory3) -> ULONG,
22477 >,
22478 pub SetPrivateData: ::std::option::Option<
22479 unsafe extern "C" fn(
22480 This: *mut IDXGIFactory3,
22481 Name: *const GUID,
22482 DataSize: UINT,
22483 pData: *const ::std::os::raw::c_void,
22484 ) -> HRESULT,
22485 >,
22486 pub SetPrivateDataInterface: ::std::option::Option<
22487 unsafe extern "C" fn(
22488 This: *mut IDXGIFactory3,
22489 Name: *const GUID,
22490 pUnknown: *const IUnknown,
22491 ) -> HRESULT,
22492 >,
22493 pub GetPrivateData: ::std::option::Option<
22494 unsafe extern "C" fn(
22495 This: *mut IDXGIFactory3,
22496 Name: *const GUID,
22497 pDataSize: *mut UINT,
22498 pData: *mut ::std::os::raw::c_void,
22499 ) -> HRESULT,
22500 >,
22501 pub GetParent: ::std::option::Option<
22502 unsafe extern "C" fn(
22503 This: *mut IDXGIFactory3,
22504 riid: *const IID,
22505 ppParent: *mut *mut ::std::os::raw::c_void,
22506 ) -> HRESULT,
22507 >,
22508 pub EnumAdapters: ::std::option::Option<
22509 unsafe extern "C" fn(
22510 This: *mut IDXGIFactory3,
22511 Adapter: UINT,
22512 ppAdapter: *mut *mut IDXGIAdapter,
22513 ) -> HRESULT,
22514 >,
22515 pub MakeWindowAssociation: ::std::option::Option<
22516 unsafe extern "C" fn(
22517 This: *mut IDXGIFactory3,
22518 WindowHandle: HWND,
22519 Flags: UINT,
22520 ) -> HRESULT,
22521 >,
22522 pub GetWindowAssociation: ::std::option::Option<
22523 unsafe extern "C" fn(
22524 This: *mut IDXGIFactory3,
22525 pWindowHandle: *mut HWND,
22526 ) -> HRESULT,
22527 >,
22528 pub CreateSwapChain: ::std::option::Option<
22529 unsafe extern "C" fn(
22530 This: *mut IDXGIFactory3,
22531 pDevice: *mut IUnknown,
22532 pDesc: *mut DXGI_SWAP_CHAIN_DESC,
22533 ppSwapChain: *mut *mut IDXGISwapChain,
22534 ) -> HRESULT,
22535 >,
22536 pub CreateSoftwareAdapter: ::std::option::Option<
22537 unsafe extern "C" fn(
22538 This: *mut IDXGIFactory3,
22539 Module: HMODULE,
22540 ppAdapter: *mut *mut IDXGIAdapter,
22541 ) -> HRESULT,
22542 >,
22543 pub EnumAdapters1: ::std::option::Option<
22544 unsafe extern "C" fn(
22545 This: *mut IDXGIFactory3,
22546 Adapter: UINT,
22547 ppAdapter: *mut *mut IDXGIAdapter1,
22548 ) -> HRESULT,
22549 >,
22550 pub IsCurrent: ::std::option::Option<
22551 unsafe extern "C" fn(This: *mut IDXGIFactory3) -> BOOL,
22552 >,
22553 pub IsWindowedStereoEnabled: ::std::option::Option<
22554 unsafe extern "C" fn(This: *mut IDXGIFactory3) -> BOOL,
22555 >,
22556 pub CreateSwapChainForHwnd: ::std::option::Option<
22557 unsafe extern "C" fn(
22558 This: *mut IDXGIFactory3,
22559 pDevice: *mut IUnknown,
22560 hWnd: HWND,
22561 pDesc: *const DXGI_SWAP_CHAIN_DESC1,
22562 pFullscreenDesc: *const DXGI_SWAP_CHAIN_FULLSCREEN_DESC,
22563 pRestrictToOutput: *mut IDXGIOutput,
22564 ppSwapChain: *mut *mut IDXGISwapChain1,
22565 ) -> HRESULT,
22566 >,
22567 pub CreateSwapChainForCoreWindow: ::std::option::Option<
22568 unsafe extern "C" fn(
22569 This: *mut IDXGIFactory3,
22570 pDevice: *mut IUnknown,
22571 pWindow: *mut IUnknown,
22572 pDesc: *const DXGI_SWAP_CHAIN_DESC1,
22573 pRestrictToOutput: *mut IDXGIOutput,
22574 ppSwapChain: *mut *mut IDXGISwapChain1,
22575 ) -> HRESULT,
22576 >,
22577 pub GetSharedResourceAdapterLuid: ::std::option::Option<
22578 unsafe extern "C" fn(
22579 This: *mut IDXGIFactory3,
22580 hResource: HANDLE,
22581 pLuid: *mut LUID,
22582 ) -> HRESULT,
22583 >,
22584 pub RegisterStereoStatusWindow: ::std::option::Option<
22585 unsafe extern "C" fn(
22586 This: *mut IDXGIFactory3,
22587 WindowHandle: HWND,
22588 wMsg: UINT,
22589 pdwCookie: *mut DWORD,
22590 ) -> HRESULT,
22591 >,
22592 pub RegisterStereoStatusEvent: ::std::option::Option<
22593 unsafe extern "C" fn(
22594 This: *mut IDXGIFactory3,
22595 hEvent: HANDLE,
22596 pdwCookie: *mut DWORD,
22597 ) -> HRESULT,
22598 >,
22599 pub UnregisterStereoStatus: ::std::option::Option<
22600 unsafe extern "C" fn(This: *mut IDXGIFactory3, dwCookie: DWORD),
22601 >,
22602 pub RegisterOcclusionStatusWindow: ::std::option::Option<
22603 unsafe extern "C" fn(
22604 This: *mut IDXGIFactory3,
22605 WindowHandle: HWND,
22606 wMsg: UINT,
22607 pdwCookie: *mut DWORD,
22608 ) -> HRESULT,
22609 >,
22610 pub RegisterOcclusionStatusEvent: ::std::option::Option<
22611 unsafe extern "C" fn(
22612 This: *mut IDXGIFactory3,
22613 hEvent: HANDLE,
22614 pdwCookie: *mut DWORD,
22615 ) -> HRESULT,
22616 >,
22617 pub UnregisterOcclusionStatus: ::std::option::Option<
22618 unsafe extern "C" fn(This: *mut IDXGIFactory3, dwCookie: DWORD),
22619 >,
22620 pub CreateSwapChainForComposition: ::std::option::Option<
22621 unsafe extern "C" fn(
22622 This: *mut IDXGIFactory3,
22623 pDevice: *mut IUnknown,
22624 pDesc: *const DXGI_SWAP_CHAIN_DESC1,
22625 pRestrictToOutput: *mut IDXGIOutput,
22626 ppSwapChain: *mut *mut IDXGISwapChain1,
22627 ) -> HRESULT,
22628 >,
22629 pub GetCreationFlags: ::std::option::Option<
22630 unsafe extern "C" fn(This: *mut IDXGIFactory3) -> UINT,
22631 >,
22632}
22633#[repr(C)]
22634#[derive(Debug, Copy, Clone, Hash, PartialOrd, Ord, PartialEq, Eq)]
22635pub struct IDXGIFactory3 {
22636 pub lpVtbl: *mut IDXGIFactory3Vtbl,
22637}
22638impl Default for IDXGIFactory3 {
22639 fn default() -> Self {
22640 let mut s = ::std::mem::MaybeUninit::<Self>::uninit();
22641 unsafe {
22642 ::std::ptr::write_bytes(s.as_mut_ptr(), 0, 1);
22643 s.assume_init()
22644 }
22645 }
22646}
22647#[repr(C)]
22648#[derive(Debug, Default, Copy, Clone, Hash, PartialOrd, Ord, PartialEq, Eq)]
22649pub struct DXGI_DECODE_SWAP_CHAIN_DESC {
22650 pub Flags: UINT,
22651}
22652pub const DXGI_MULTIPLANE_OVERLAY_YCbCr_FLAGS_DXGI_MULTIPLANE_OVERLAY_YCbCr_FLAG_NOMINAL_RANGE : DXGI_MULTIPLANE_OVERLAY_YCbCr_FLAGS = 1 ;
22653pub const DXGI_MULTIPLANE_OVERLAY_YCbCr_FLAGS_DXGI_MULTIPLANE_OVERLAY_YCbCr_FLAG_BT709 : DXGI_MULTIPLANE_OVERLAY_YCbCr_FLAGS = 2 ;
22654pub const DXGI_MULTIPLANE_OVERLAY_YCbCr_FLAGS_DXGI_MULTIPLANE_OVERLAY_YCbCr_FLAG_xvYCC : DXGI_MULTIPLANE_OVERLAY_YCbCr_FLAGS = 4 ;
22655pub type DXGI_MULTIPLANE_OVERLAY_YCbCr_FLAGS = ::std::os::raw::c_int;
22656extern "C" {
22657 pub static IID_IDXGIDecodeSwapChain: IID;
22658}
22659#[repr(C)]
22660#[derive(Debug, Default, Copy, Clone, Hash, PartialOrd, Ord, PartialEq, Eq)]
22661pub struct IDXGIDecodeSwapChainVtbl {
22662 pub QueryInterface: ::std::option::Option<
22663 unsafe extern "C" fn(
22664 This: *mut IDXGIDecodeSwapChain,
22665 riid: *const IID,
22666 ppvObject: *mut *mut ::std::os::raw::c_void,
22667 ) -> HRESULT,
22668 >,
22669 pub AddRef: ::std::option::Option<
22670 unsafe extern "C" fn(This: *mut IDXGIDecodeSwapChain) -> ULONG,
22671 >,
22672 pub Release: ::std::option::Option<
22673 unsafe extern "C" fn(This: *mut IDXGIDecodeSwapChain) -> ULONG,
22674 >,
22675 pub PresentBuffer: ::std::option::Option<
22676 unsafe extern "C" fn(
22677 This: *mut IDXGIDecodeSwapChain,
22678 BufferToPresent: UINT,
22679 SyncInterval: UINT,
22680 Flags: UINT,
22681 ) -> HRESULT,
22682 >,
22683 pub SetSourceRect: ::std::option::Option<
22684 unsafe extern "C" fn(
22685 This: *mut IDXGIDecodeSwapChain,
22686 pRect: *const RECT,
22687 ) -> HRESULT,
22688 >,
22689 pub SetTargetRect: ::std::option::Option<
22690 unsafe extern "C" fn(
22691 This: *mut IDXGIDecodeSwapChain,
22692 pRect: *const RECT,
22693 ) -> HRESULT,
22694 >,
22695 pub SetDestSize: ::std::option::Option<
22696 unsafe extern "C" fn(
22697 This: *mut IDXGIDecodeSwapChain,
22698 Width: UINT,
22699 Height: UINT,
22700 ) -> HRESULT,
22701 >,
22702 pub GetSourceRect: ::std::option::Option<
22703 unsafe extern "C" fn(
22704 This: *mut IDXGIDecodeSwapChain,
22705 pRect: *mut RECT,
22706 ) -> HRESULT,
22707 >,
22708 pub GetTargetRect: ::std::option::Option<
22709 unsafe extern "C" fn(
22710 This: *mut IDXGIDecodeSwapChain,
22711 pRect: *mut RECT,
22712 ) -> HRESULT,
22713 >,
22714 pub GetDestSize: ::std::option::Option<
22715 unsafe extern "C" fn(
22716 This: *mut IDXGIDecodeSwapChain,
22717 pWidth: *mut UINT,
22718 pHeight: *mut UINT,
22719 ) -> HRESULT,
22720 >,
22721 pub SetColorSpace: ::std::option::Option<
22722 unsafe extern "C" fn(
22723 This: *mut IDXGIDecodeSwapChain,
22724 ColorSpace: DXGI_MULTIPLANE_OVERLAY_YCbCr_FLAGS,
22725 ) -> HRESULT,
22726 >,
22727 pub GetColorSpace: ::std::option::Option<
22728 unsafe extern "C" fn(
22729 This: *mut IDXGIDecodeSwapChain,
22730 ) -> DXGI_MULTIPLANE_OVERLAY_YCbCr_FLAGS,
22731 >,
22732}
22733#[repr(C)]
22734#[derive(Debug, Copy, Clone, Hash, PartialOrd, Ord, PartialEq, Eq)]
22735pub struct IDXGIDecodeSwapChain {
22736 pub lpVtbl: *mut IDXGIDecodeSwapChainVtbl,
22737}
22738impl Default for IDXGIDecodeSwapChain {
22739 fn default() -> Self {
22740 let mut s = ::std::mem::MaybeUninit::<Self>::uninit();
22741 unsafe {
22742 ::std::ptr::write_bytes(s.as_mut_ptr(), 0, 1);
22743 s.assume_init()
22744 }
22745 }
22746}
22747extern "C" {
22748 pub static IID_IDXGIFactoryMedia: IID;
22749}
22750#[repr(C)]
22751#[derive(Debug, Default, Copy, Clone, Hash, PartialOrd, Ord, PartialEq, Eq)]
22752pub struct IDXGIFactoryMediaVtbl {
22753 pub QueryInterface: ::std::option::Option<
22754 unsafe extern "C" fn(
22755 This: *mut IDXGIFactoryMedia,
22756 riid: *const IID,
22757 ppvObject: *mut *mut ::std::os::raw::c_void,
22758 ) -> HRESULT,
22759 >,
22760 pub AddRef: ::std::option::Option<
22761 unsafe extern "C" fn(This: *mut IDXGIFactoryMedia) -> ULONG,
22762 >,
22763 pub Release: ::std::option::Option<
22764 unsafe extern "C" fn(This: *mut IDXGIFactoryMedia) -> ULONG,
22765 >,
22766 pub CreateSwapChainForCompositionSurfaceHandle: ::std::option::Option<
22767 unsafe extern "C" fn(
22768 This: *mut IDXGIFactoryMedia,
22769 pDevice: *mut IUnknown,
22770 hSurface: HANDLE,
22771 pDesc: *const DXGI_SWAP_CHAIN_DESC1,
22772 pRestrictToOutput: *mut IDXGIOutput,
22773 ppSwapChain: *mut *mut IDXGISwapChain1,
22774 ) -> HRESULT,
22775 >,
22776 pub CreateDecodeSwapChainForCompositionSurfaceHandle: ::std::option::Option<
22777 unsafe extern "C" fn(
22778 This: *mut IDXGIFactoryMedia,
22779 pDevice: *mut IUnknown,
22780 hSurface: HANDLE,
22781 pDesc: *mut DXGI_DECODE_SWAP_CHAIN_DESC,
22782 pYuvDecodeBuffers: *mut IDXGIResource,
22783 pRestrictToOutput: *mut IDXGIOutput,
22784 ppSwapChain: *mut *mut IDXGIDecodeSwapChain,
22785 ) -> HRESULT,
22786 >,
22787}
22788#[repr(C)]
22789#[derive(Debug, Copy, Clone, Hash, PartialOrd, Ord, PartialEq, Eq)]
22790pub struct IDXGIFactoryMedia {
22791 pub lpVtbl: *mut IDXGIFactoryMediaVtbl,
22792}
22793impl Default for IDXGIFactoryMedia {
22794 fn default() -> Self {
22795 let mut s = ::std::mem::MaybeUninit::<Self>::uninit();
22796 unsafe {
22797 ::std::ptr::write_bytes(s.as_mut_ptr(), 0, 1);
22798 s.assume_init()
22799 }
22800 }
22801}
22802pub const DXGI_FRAME_PRESENTATION_MODE_DXGI_FRAME_PRESENTATION_MODE_COMPOSED:
22803 DXGI_FRAME_PRESENTATION_MODE = 0;
22804pub const DXGI_FRAME_PRESENTATION_MODE_DXGI_FRAME_PRESENTATION_MODE_OVERLAY:
22805 DXGI_FRAME_PRESENTATION_MODE = 1;
22806pub const DXGI_FRAME_PRESENTATION_MODE_DXGI_FRAME_PRESENTATION_MODE_NONE:
22807 DXGI_FRAME_PRESENTATION_MODE = 2;
22808pub const DXGI_FRAME_PRESENTATION_MODE_DXGI_FRAME_PRESENTATION_MODE_COMPOSITION_FAILURE : DXGI_FRAME_PRESENTATION_MODE = 3 ;
22809pub type DXGI_FRAME_PRESENTATION_MODE = ::std::os::raw::c_int;
22810#[repr(C)]
22811#[derive(Copy, Clone)]
22812pub struct DXGI_FRAME_STATISTICS_MEDIA {
22813 pub PresentCount: UINT,
22814 pub PresentRefreshCount: UINT,
22815 pub SyncRefreshCount: UINT,
22816 pub SyncQPCTime: LARGE_INTEGER,
22817 pub SyncGPUTime: LARGE_INTEGER,
22818 pub CompositionMode: DXGI_FRAME_PRESENTATION_MODE,
22819 pub ApprovedPresentDuration: UINT,
22820}
22821impl Default for DXGI_FRAME_STATISTICS_MEDIA {
22822 fn default() -> Self {
22823 let mut s = ::std::mem::MaybeUninit::<Self>::uninit();
22824 unsafe {
22825 ::std::ptr::write_bytes(s.as_mut_ptr(), 0, 1);
22826 s.assume_init()
22827 }
22828 }
22829}
22830impl ::std::fmt::Debug for DXGI_FRAME_STATISTICS_MEDIA {
22831 fn fmt(&self, f: &mut ::std::fmt::Formatter<'_>) -> ::std::fmt::Result {
22832 write ! (f , "DXGI_FRAME_STATISTICS_MEDIA {{ PresentCount: {:?}, PresentRefreshCount: {:?}, SyncRefreshCount: {:?}, SyncQPCTime: {:?}, SyncGPUTime: {:?}, CompositionMode: {:?}, ApprovedPresentDuration: {:?} }}" , self . PresentCount , self . PresentRefreshCount , self . SyncRefreshCount , self . SyncQPCTime , self . SyncGPUTime , self . CompositionMode , self . ApprovedPresentDuration)
22833 }
22834}
22835extern "C" {
22836 pub static IID_IDXGISwapChainMedia: IID;
22837}
22838#[repr(C)]
22839#[derive(Debug, Default, Copy, Clone, Hash, PartialOrd, Ord, PartialEq, Eq)]
22840pub struct IDXGISwapChainMediaVtbl {
22841 pub QueryInterface: ::std::option::Option<
22842 unsafe extern "C" fn(
22843 This: *mut IDXGISwapChainMedia,
22844 riid: *const IID,
22845 ppvObject: *mut *mut ::std::os::raw::c_void,
22846 ) -> HRESULT,
22847 >,
22848 pub AddRef: ::std::option::Option<
22849 unsafe extern "C" fn(This: *mut IDXGISwapChainMedia) -> ULONG,
22850 >,
22851 pub Release: ::std::option::Option<
22852 unsafe extern "C" fn(This: *mut IDXGISwapChainMedia) -> ULONG,
22853 >,
22854 pub GetFrameStatisticsMedia: ::std::option::Option<
22855 unsafe extern "C" fn(
22856 This: *mut IDXGISwapChainMedia,
22857 pStats: *mut DXGI_FRAME_STATISTICS_MEDIA,
22858 ) -> HRESULT,
22859 >,
22860 pub SetPresentDuration: ::std::option::Option<
22861 unsafe extern "C" fn(
22862 This: *mut IDXGISwapChainMedia,
22863 Duration: UINT,
22864 ) -> HRESULT,
22865 >,
22866 pub CheckPresentDurationSupport: ::std::option::Option<
22867 unsafe extern "C" fn(
22868 This: *mut IDXGISwapChainMedia,
22869 DesiredPresentDuration: UINT,
22870 pClosestSmallerPresentDuration: *mut UINT,
22871 pClosestLargerPresentDuration: *mut UINT,
22872 ) -> HRESULT,
22873 >,
22874}
22875#[repr(C)]
22876#[derive(Debug, Copy, Clone, Hash, PartialOrd, Ord, PartialEq, Eq)]
22877pub struct IDXGISwapChainMedia {
22878 pub lpVtbl: *mut IDXGISwapChainMediaVtbl,
22879}
22880impl Default for IDXGISwapChainMedia {
22881 fn default() -> Self {
22882 let mut s = ::std::mem::MaybeUninit::<Self>::uninit();
22883 unsafe {
22884 ::std::ptr::write_bytes(s.as_mut_ptr(), 0, 1);
22885 s.assume_init()
22886 }
22887 }
22888}
22889pub const DXGI_OVERLAY_SUPPORT_FLAG_DXGI_OVERLAY_SUPPORT_FLAG_DIRECT:
22890 DXGI_OVERLAY_SUPPORT_FLAG = 1;
22891pub const DXGI_OVERLAY_SUPPORT_FLAG_DXGI_OVERLAY_SUPPORT_FLAG_SCALING:
22892 DXGI_OVERLAY_SUPPORT_FLAG = 2;
22893pub type DXGI_OVERLAY_SUPPORT_FLAG = ::std::os::raw::c_int;
22894extern "C" {
22895 pub static IID_IDXGIOutput3: IID;
22896}
22897#[repr(C)]
22898#[derive(Debug, Default, Copy, Clone, Hash, PartialOrd, Ord, PartialEq, Eq)]
22899pub struct IDXGIOutput3Vtbl {
22900 pub QueryInterface: ::std::option::Option<
22901 unsafe extern "C" fn(
22902 This: *mut IDXGIOutput3,
22903 riid: *const IID,
22904 ppvObject: *mut *mut ::std::os::raw::c_void,
22905 ) -> HRESULT,
22906 >,
22907 pub AddRef: ::std::option::Option<
22908 unsafe extern "C" fn(This: *mut IDXGIOutput3) -> ULONG,
22909 >,
22910 pub Release: ::std::option::Option<
22911 unsafe extern "C" fn(This: *mut IDXGIOutput3) -> ULONG,
22912 >,
22913 pub SetPrivateData: ::std::option::Option<
22914 unsafe extern "C" fn(
22915 This: *mut IDXGIOutput3,
22916 Name: *const GUID,
22917 DataSize: UINT,
22918 pData: *const ::std::os::raw::c_void,
22919 ) -> HRESULT,
22920 >,
22921 pub SetPrivateDataInterface: ::std::option::Option<
22922 unsafe extern "C" fn(
22923 This: *mut IDXGIOutput3,
22924 Name: *const GUID,
22925 pUnknown: *const IUnknown,
22926 ) -> HRESULT,
22927 >,
22928 pub GetPrivateData: ::std::option::Option<
22929 unsafe extern "C" fn(
22930 This: *mut IDXGIOutput3,
22931 Name: *const GUID,
22932 pDataSize: *mut UINT,
22933 pData: *mut ::std::os::raw::c_void,
22934 ) -> HRESULT,
22935 >,
22936 pub GetParent: ::std::option::Option<
22937 unsafe extern "C" fn(
22938 This: *mut IDXGIOutput3,
22939 riid: *const IID,
22940 ppParent: *mut *mut ::std::os::raw::c_void,
22941 ) -> HRESULT,
22942 >,
22943 pub GetDesc: ::std::option::Option<
22944 unsafe extern "C" fn(
22945 This: *mut IDXGIOutput3,
22946 pDesc: *mut DXGI_OUTPUT_DESC,
22947 ) -> HRESULT,
22948 >,
22949 pub GetDisplayModeList: ::std::option::Option<
22950 unsafe extern "C" fn(
22951 This: *mut IDXGIOutput3,
22952 EnumFormat: DXGI_FORMAT,
22953 Flags: UINT,
22954 pNumModes: *mut UINT,
22955 pDesc: *mut DXGI_MODE_DESC,
22956 ) -> HRESULT,
22957 >,
22958 pub FindClosestMatchingMode: ::std::option::Option<
22959 unsafe extern "C" fn(
22960 This: *mut IDXGIOutput3,
22961 pModeToMatch: *const DXGI_MODE_DESC,
22962 pClosestMatch: *mut DXGI_MODE_DESC,
22963 pConcernedDevice: *mut IUnknown,
22964 ) -> HRESULT,
22965 >,
22966 pub WaitForVBlank: ::std::option::Option<
22967 unsafe extern "C" fn(This: *mut IDXGIOutput3) -> HRESULT,
22968 >,
22969 pub TakeOwnership: ::std::option::Option<
22970 unsafe extern "C" fn(
22971 This: *mut IDXGIOutput3,
22972 pDevice: *mut IUnknown,
22973 Exclusive: BOOL,
22974 ) -> HRESULT,
22975 >,
22976 pub ReleaseOwnership:
22977 ::std::option::Option<unsafe extern "C" fn(This: *mut IDXGIOutput3)>,
22978 pub GetGammaControlCapabilities: ::std::option::Option<
22979 unsafe extern "C" fn(
22980 This: *mut IDXGIOutput3,
22981 pGammaCaps: *mut DXGI_GAMMA_CONTROL_CAPABILITIES,
22982 ) -> HRESULT,
22983 >,
22984 pub SetGammaControl: ::std::option::Option<
22985 unsafe extern "C" fn(
22986 This: *mut IDXGIOutput3,
22987 pArray: *const DXGI_GAMMA_CONTROL,
22988 ) -> HRESULT,
22989 >,
22990 pub GetGammaControl: ::std::option::Option<
22991 unsafe extern "C" fn(
22992 This: *mut IDXGIOutput3,
22993 pArray: *mut DXGI_GAMMA_CONTROL,
22994 ) -> HRESULT,
22995 >,
22996 pub SetDisplaySurface: ::std::option::Option<
22997 unsafe extern "C" fn(
22998 This: *mut IDXGIOutput3,
22999 pScanoutSurface: *mut IDXGISurface,
23000 ) -> HRESULT,
23001 >,
23002 pub GetDisplaySurfaceData: ::std::option::Option<
23003 unsafe extern "C" fn(
23004 This: *mut IDXGIOutput3,
23005 pDestination: *mut IDXGISurface,
23006 ) -> HRESULT,
23007 >,
23008 pub GetFrameStatistics: ::std::option::Option<
23009 unsafe extern "C" fn(
23010 This: *mut IDXGIOutput3,
23011 pStats: *mut DXGI_FRAME_STATISTICS,
23012 ) -> HRESULT,
23013 >,
23014 pub GetDisplayModeList1: ::std::option::Option<
23015 unsafe extern "C" fn(
23016 This: *mut IDXGIOutput3,
23017 EnumFormat: DXGI_FORMAT,
23018 Flags: UINT,
23019 pNumModes: *mut UINT,
23020 pDesc: *mut DXGI_MODE_DESC1,
23021 ) -> HRESULT,
23022 >,
23023 pub FindClosestMatchingMode1: ::std::option::Option<
23024 unsafe extern "C" fn(
23025 This: *mut IDXGIOutput3,
23026 pModeToMatch: *const DXGI_MODE_DESC1,
23027 pClosestMatch: *mut DXGI_MODE_DESC1,
23028 pConcernedDevice: *mut IUnknown,
23029 ) -> HRESULT,
23030 >,
23031 pub GetDisplaySurfaceData1: ::std::option::Option<
23032 unsafe extern "C" fn(
23033 This: *mut IDXGIOutput3,
23034 pDestination: *mut IDXGIResource,
23035 ) -> HRESULT,
23036 >,
23037 pub DuplicateOutput: ::std::option::Option<
23038 unsafe extern "C" fn(
23039 This: *mut IDXGIOutput3,
23040 pDevice: *mut IUnknown,
23041 ppOutputDuplication: *mut *mut IDXGIOutputDuplication,
23042 ) -> HRESULT,
23043 >,
23044 pub SupportsOverlays: ::std::option::Option<
23045 unsafe extern "C" fn(This: *mut IDXGIOutput3) -> BOOL,
23046 >,
23047 pub CheckOverlaySupport: ::std::option::Option<
23048 unsafe extern "C" fn(
23049 This: *mut IDXGIOutput3,
23050 EnumFormat: DXGI_FORMAT,
23051 pConcernedDevice: *mut IUnknown,
23052 pFlags: *mut UINT,
23053 ) -> HRESULT,
23054 >,
23055}
23056#[repr(C)]
23057#[derive(Debug, Copy, Clone, Hash, PartialOrd, Ord, PartialEq, Eq)]
23058pub struct IDXGIOutput3 {
23059 pub lpVtbl: *mut IDXGIOutput3Vtbl,
23060}
23061impl Default for IDXGIOutput3 {
23062 fn default() -> Self {
23063 let mut s = ::std::mem::MaybeUninit::<Self>::uninit();
23064 unsafe {
23065 ::std::ptr::write_bytes(s.as_mut_ptr(), 0, 1);
23066 s.assume_init()
23067 }
23068 }
23069}
23070pub const DXGI_SWAP_CHAIN_COLOR_SPACE_SUPPORT_FLAG_DXGI_SWAP_CHAIN_COLOR_SPACE_SUPPORT_FLAG_PRESENT : DXGI_SWAP_CHAIN_COLOR_SPACE_SUPPORT_FLAG = 1 ;
23071pub const DXGI_SWAP_CHAIN_COLOR_SPACE_SUPPORT_FLAG_DXGI_SWAP_CHAIN_COLOR_SPACE_SUPPORT_FLAG_OVERLAY_PRESENT : DXGI_SWAP_CHAIN_COLOR_SPACE_SUPPORT_FLAG = 2 ;
23072pub type DXGI_SWAP_CHAIN_COLOR_SPACE_SUPPORT_FLAG = ::std::os::raw::c_int;
23073extern "C" {
23074 pub static IID_IDXGISwapChain3: IID;
23075}
23076#[repr(C)]
23077#[derive(Debug, Default, Copy, Clone, Hash, PartialOrd, Ord, PartialEq, Eq)]
23078pub struct IDXGISwapChain3Vtbl {
23079 pub QueryInterface: ::std::option::Option<
23080 unsafe extern "C" fn(
23081 This: *mut IDXGISwapChain3,
23082 riid: *const IID,
23083 ppvObject: *mut *mut ::std::os::raw::c_void,
23084 ) -> HRESULT,
23085 >,
23086 pub AddRef: ::std::option::Option<
23087 unsafe extern "C" fn(This: *mut IDXGISwapChain3) -> ULONG,
23088 >,
23089 pub Release: ::std::option::Option<
23090 unsafe extern "C" fn(This: *mut IDXGISwapChain3) -> ULONG,
23091 >,
23092 pub SetPrivateData: ::std::option::Option<
23093 unsafe extern "C" fn(
23094 This: *mut IDXGISwapChain3,
23095 Name: *const GUID,
23096 DataSize: UINT,
23097 pData: *const ::std::os::raw::c_void,
23098 ) -> HRESULT,
23099 >,
23100 pub SetPrivateDataInterface: ::std::option::Option<
23101 unsafe extern "C" fn(
23102 This: *mut IDXGISwapChain3,
23103 Name: *const GUID,
23104 pUnknown: *const IUnknown,
23105 ) -> HRESULT,
23106 >,
23107 pub GetPrivateData: ::std::option::Option<
23108 unsafe extern "C" fn(
23109 This: *mut IDXGISwapChain3,
23110 Name: *const GUID,
23111 pDataSize: *mut UINT,
23112 pData: *mut ::std::os::raw::c_void,
23113 ) -> HRESULT,
23114 >,
23115 pub GetParent: ::std::option::Option<
23116 unsafe extern "C" fn(
23117 This: *mut IDXGISwapChain3,
23118 riid: *const IID,
23119 ppParent: *mut *mut ::std::os::raw::c_void,
23120 ) -> HRESULT,
23121 >,
23122 pub GetDevice: ::std::option::Option<
23123 unsafe extern "C" fn(
23124 This: *mut IDXGISwapChain3,
23125 riid: *const IID,
23126 ppDevice: *mut *mut ::std::os::raw::c_void,
23127 ) -> HRESULT,
23128 >,
23129 pub Present: ::std::option::Option<
23130 unsafe extern "C" fn(
23131 This: *mut IDXGISwapChain3,
23132 SyncInterval: UINT,
23133 Flags: UINT,
23134 ) -> HRESULT,
23135 >,
23136 pub GetBuffer: ::std::option::Option<
23137 unsafe extern "C" fn(
23138 This: *mut IDXGISwapChain3,
23139 Buffer: UINT,
23140 riid: *const IID,
23141 ppSurface: *mut *mut ::std::os::raw::c_void,
23142 ) -> HRESULT,
23143 >,
23144 pub SetFullscreenState: ::std::option::Option<
23145 unsafe extern "C" fn(
23146 This: *mut IDXGISwapChain3,
23147 Fullscreen: BOOL,
23148 pTarget: *mut IDXGIOutput,
23149 ) -> HRESULT,
23150 >,
23151 pub GetFullscreenState: ::std::option::Option<
23152 unsafe extern "C" fn(
23153 This: *mut IDXGISwapChain3,
23154 pFullscreen: *mut BOOL,
23155 ppTarget: *mut *mut IDXGIOutput,
23156 ) -> HRESULT,
23157 >,
23158 pub GetDesc: ::std::option::Option<
23159 unsafe extern "C" fn(
23160 This: *mut IDXGISwapChain3,
23161 pDesc: *mut DXGI_SWAP_CHAIN_DESC,
23162 ) -> HRESULT,
23163 >,
23164 pub ResizeBuffers: ::std::option::Option<
23165 unsafe extern "C" fn(
23166 This: *mut IDXGISwapChain3,
23167 BufferCount: UINT,
23168 Width: UINT,
23169 Height: UINT,
23170 NewFormat: DXGI_FORMAT,
23171 SwapChainFlags: UINT,
23172 ) -> HRESULT,
23173 >,
23174 pub ResizeTarget: ::std::option::Option<
23175 unsafe extern "C" fn(
23176 This: *mut IDXGISwapChain3,
23177 pNewTargetParameters: *const DXGI_MODE_DESC,
23178 ) -> HRESULT,
23179 >,
23180 pub GetContainingOutput: ::std::option::Option<
23181 unsafe extern "C" fn(
23182 This: *mut IDXGISwapChain3,
23183 ppOutput: *mut *mut IDXGIOutput,
23184 ) -> HRESULT,
23185 >,
23186 pub GetFrameStatistics: ::std::option::Option<
23187 unsafe extern "C" fn(
23188 This: *mut IDXGISwapChain3,
23189 pStats: *mut DXGI_FRAME_STATISTICS,
23190 ) -> HRESULT,
23191 >,
23192 pub GetLastPresentCount: ::std::option::Option<
23193 unsafe extern "C" fn(
23194 This: *mut IDXGISwapChain3,
23195 pLastPresentCount: *mut UINT,
23196 ) -> HRESULT,
23197 >,
23198 pub GetDesc1: ::std::option::Option<
23199 unsafe extern "C" fn(
23200 This: *mut IDXGISwapChain3,
23201 pDesc: *mut DXGI_SWAP_CHAIN_DESC1,
23202 ) -> HRESULT,
23203 >,
23204 pub GetFullscreenDesc: ::std::option::Option<
23205 unsafe extern "C" fn(
23206 This: *mut IDXGISwapChain3,
23207 pDesc: *mut DXGI_SWAP_CHAIN_FULLSCREEN_DESC,
23208 ) -> HRESULT,
23209 >,
23210 pub GetHwnd: ::std::option::Option<
23211 unsafe extern "C" fn(
23212 This: *mut IDXGISwapChain3,
23213 pHwnd: *mut HWND,
23214 ) -> HRESULT,
23215 >,
23216 pub GetCoreWindow: ::std::option::Option<
23217 unsafe extern "C" fn(
23218 This: *mut IDXGISwapChain3,
23219 refiid: *const IID,
23220 ppUnk: *mut *mut ::std::os::raw::c_void,
23221 ) -> HRESULT,
23222 >,
23223 pub Present1: ::std::option::Option<
23224 unsafe extern "C" fn(
23225 This: *mut IDXGISwapChain3,
23226 SyncInterval: UINT,
23227 PresentFlags: UINT,
23228 pPresentParameters: *const DXGI_PRESENT_PARAMETERS,
23229 ) -> HRESULT,
23230 >,
23231 pub IsTemporaryMonoSupported: ::std::option::Option<
23232 unsafe extern "C" fn(This: *mut IDXGISwapChain3) -> BOOL,
23233 >,
23234 pub GetRestrictToOutput: ::std::option::Option<
23235 unsafe extern "C" fn(
23236 This: *mut IDXGISwapChain3,
23237 ppRestrictToOutput: *mut *mut IDXGIOutput,
23238 ) -> HRESULT,
23239 >,
23240 pub SetBackgroundColor: ::std::option::Option<
23241 unsafe extern "C" fn(
23242 This: *mut IDXGISwapChain3,
23243 pColor: *const DXGI_RGBA,
23244 ) -> HRESULT,
23245 >,
23246 pub GetBackgroundColor: ::std::option::Option<
23247 unsafe extern "C" fn(
23248 This: *mut IDXGISwapChain3,
23249 pColor: *mut DXGI_RGBA,
23250 ) -> HRESULT,
23251 >,
23252 pub SetRotation: ::std::option::Option<
23253 unsafe extern "C" fn(
23254 This: *mut IDXGISwapChain3,
23255 Rotation: DXGI_MODE_ROTATION,
23256 ) -> HRESULT,
23257 >,
23258 pub GetRotation: ::std::option::Option<
23259 unsafe extern "C" fn(
23260 This: *mut IDXGISwapChain3,
23261 pRotation: *mut DXGI_MODE_ROTATION,
23262 ) -> HRESULT,
23263 >,
23264 pub SetSourceSize: ::std::option::Option<
23265 unsafe extern "C" fn(
23266 This: *mut IDXGISwapChain3,
23267 Width: UINT,
23268 Height: UINT,
23269 ) -> HRESULT,
23270 >,
23271 pub GetSourceSize: ::std::option::Option<
23272 unsafe extern "C" fn(
23273 This: *mut IDXGISwapChain3,
23274 pWidth: *mut UINT,
23275 pHeight: *mut UINT,
23276 ) -> HRESULT,
23277 >,
23278 pub SetMaximumFrameLatency: ::std::option::Option<
23279 unsafe extern "C" fn(
23280 This: *mut IDXGISwapChain3,
23281 MaxLatency: UINT,
23282 ) -> HRESULT,
23283 >,
23284 pub GetMaximumFrameLatency: ::std::option::Option<
23285 unsafe extern "C" fn(
23286 This: *mut IDXGISwapChain3,
23287 pMaxLatency: *mut UINT,
23288 ) -> HRESULT,
23289 >,
23290 pub GetFrameLatencyWaitableObject: ::std::option::Option<
23291 unsafe extern "C" fn(This: *mut IDXGISwapChain3) -> HANDLE,
23292 >,
23293 pub SetMatrixTransform: ::std::option::Option<
23294 unsafe extern "C" fn(
23295 This: *mut IDXGISwapChain3,
23296 pMatrix: *const DXGI_MATRIX_3X2_F,
23297 ) -> HRESULT,
23298 >,
23299 pub GetMatrixTransform: ::std::option::Option<
23300 unsafe extern "C" fn(
23301 This: *mut IDXGISwapChain3,
23302 pMatrix: *mut DXGI_MATRIX_3X2_F,
23303 ) -> HRESULT,
23304 >,
23305 pub GetCurrentBackBufferIndex: ::std::option::Option<
23306 unsafe extern "C" fn(This: *mut IDXGISwapChain3) -> UINT,
23307 >,
23308 pub CheckColorSpaceSupport: ::std::option::Option<
23309 unsafe extern "C" fn(
23310 This: *mut IDXGISwapChain3,
23311 ColorSpace: DXGI_COLOR_SPACE_TYPE,
23312 pColorSpaceSupport: *mut UINT,
23313 ) -> HRESULT,
23314 >,
23315 pub SetColorSpace1: ::std::option::Option<
23316 unsafe extern "C" fn(
23317 This: *mut IDXGISwapChain3,
23318 ColorSpace: DXGI_COLOR_SPACE_TYPE,
23319 ) -> HRESULT,
23320 >,
23321 pub ResizeBuffers1: ::std::option::Option<
23322 unsafe extern "C" fn(
23323 This: *mut IDXGISwapChain3,
23324 BufferCount: UINT,
23325 Width: UINT,
23326 Height: UINT,
23327 Format: DXGI_FORMAT,
23328 SwapChainFlags: UINT,
23329 pCreationNodeMask: *const UINT,
23330 ppPresentQueue: *const *mut IUnknown,
23331 ) -> HRESULT,
23332 >,
23333}
23334#[repr(C)]
23335#[derive(Debug, Copy, Clone, Hash, PartialOrd, Ord, PartialEq, Eq)]
23336pub struct IDXGISwapChain3 {
23337 pub lpVtbl: *mut IDXGISwapChain3Vtbl,
23338}
23339impl Default for IDXGISwapChain3 {
23340 fn default() -> Self {
23341 let mut s = ::std::mem::MaybeUninit::<Self>::uninit();
23342 unsafe {
23343 ::std::ptr::write_bytes(s.as_mut_ptr(), 0, 1);
23344 s.assume_init()
23345 }
23346 }
23347}
23348pub const DXGI_OVERLAY_COLOR_SPACE_SUPPORT_FLAG_DXGI_OVERLAY_COLOR_SPACE_SUPPORT_FLAG_PRESENT : DXGI_OVERLAY_COLOR_SPACE_SUPPORT_FLAG = 1 ;
23349pub type DXGI_OVERLAY_COLOR_SPACE_SUPPORT_FLAG = ::std::os::raw::c_int;
23350extern "C" {
23351 pub static IID_IDXGIOutput4: IID;
23352}
23353#[repr(C)]
23354#[derive(Debug, Default, Copy, Clone, Hash, PartialOrd, Ord, PartialEq, Eq)]
23355pub struct IDXGIOutput4Vtbl {
23356 pub QueryInterface: ::std::option::Option<
23357 unsafe extern "C" fn(
23358 This: *mut IDXGIOutput4,
23359 riid: *const IID,
23360 ppvObject: *mut *mut ::std::os::raw::c_void,
23361 ) -> HRESULT,
23362 >,
23363 pub AddRef: ::std::option::Option<
23364 unsafe extern "C" fn(This: *mut IDXGIOutput4) -> ULONG,
23365 >,
23366 pub Release: ::std::option::Option<
23367 unsafe extern "C" fn(This: *mut IDXGIOutput4) -> ULONG,
23368 >,
23369 pub SetPrivateData: ::std::option::Option<
23370 unsafe extern "C" fn(
23371 This: *mut IDXGIOutput4,
23372 Name: *const GUID,
23373 DataSize: UINT,
23374 pData: *const ::std::os::raw::c_void,
23375 ) -> HRESULT,
23376 >,
23377 pub SetPrivateDataInterface: ::std::option::Option<
23378 unsafe extern "C" fn(
23379 This: *mut IDXGIOutput4,
23380 Name: *const GUID,
23381 pUnknown: *const IUnknown,
23382 ) -> HRESULT,
23383 >,
23384 pub GetPrivateData: ::std::option::Option<
23385 unsafe extern "C" fn(
23386 This: *mut IDXGIOutput4,
23387 Name: *const GUID,
23388 pDataSize: *mut UINT,
23389 pData: *mut ::std::os::raw::c_void,
23390 ) -> HRESULT,
23391 >,
23392 pub GetParent: ::std::option::Option<
23393 unsafe extern "C" fn(
23394 This: *mut IDXGIOutput4,
23395 riid: *const IID,
23396 ppParent: *mut *mut ::std::os::raw::c_void,
23397 ) -> HRESULT,
23398 >,
23399 pub GetDesc: ::std::option::Option<
23400 unsafe extern "C" fn(
23401 This: *mut IDXGIOutput4,
23402 pDesc: *mut DXGI_OUTPUT_DESC,
23403 ) -> HRESULT,
23404 >,
23405 pub GetDisplayModeList: ::std::option::Option<
23406 unsafe extern "C" fn(
23407 This: *mut IDXGIOutput4,
23408 EnumFormat: DXGI_FORMAT,
23409 Flags: UINT,
23410 pNumModes: *mut UINT,
23411 pDesc: *mut DXGI_MODE_DESC,
23412 ) -> HRESULT,
23413 >,
23414 pub FindClosestMatchingMode: ::std::option::Option<
23415 unsafe extern "C" fn(
23416 This: *mut IDXGIOutput4,
23417 pModeToMatch: *const DXGI_MODE_DESC,
23418 pClosestMatch: *mut DXGI_MODE_DESC,
23419 pConcernedDevice: *mut IUnknown,
23420 ) -> HRESULT,
23421 >,
23422 pub WaitForVBlank: ::std::option::Option<
23423 unsafe extern "C" fn(This: *mut IDXGIOutput4) -> HRESULT,
23424 >,
23425 pub TakeOwnership: ::std::option::Option<
23426 unsafe extern "C" fn(
23427 This: *mut IDXGIOutput4,
23428 pDevice: *mut IUnknown,
23429 Exclusive: BOOL,
23430 ) -> HRESULT,
23431 >,
23432 pub ReleaseOwnership:
23433 ::std::option::Option<unsafe extern "C" fn(This: *mut IDXGIOutput4)>,
23434 pub GetGammaControlCapabilities: ::std::option::Option<
23435 unsafe extern "C" fn(
23436 This: *mut IDXGIOutput4,
23437 pGammaCaps: *mut DXGI_GAMMA_CONTROL_CAPABILITIES,
23438 ) -> HRESULT,
23439 >,
23440 pub SetGammaControl: ::std::option::Option<
23441 unsafe extern "C" fn(
23442 This: *mut IDXGIOutput4,
23443 pArray: *const DXGI_GAMMA_CONTROL,
23444 ) -> HRESULT,
23445 >,
23446 pub GetGammaControl: ::std::option::Option<
23447 unsafe extern "C" fn(
23448 This: *mut IDXGIOutput4,
23449 pArray: *mut DXGI_GAMMA_CONTROL,
23450 ) -> HRESULT,
23451 >,
23452 pub SetDisplaySurface: ::std::option::Option<
23453 unsafe extern "C" fn(
23454 This: *mut IDXGIOutput4,
23455 pScanoutSurface: *mut IDXGISurface,
23456 ) -> HRESULT,
23457 >,
23458 pub GetDisplaySurfaceData: ::std::option::Option<
23459 unsafe extern "C" fn(
23460 This: *mut IDXGIOutput4,
23461 pDestination: *mut IDXGISurface,
23462 ) -> HRESULT,
23463 >,
23464 pub GetFrameStatistics: ::std::option::Option<
23465 unsafe extern "C" fn(
23466 This: *mut IDXGIOutput4,
23467 pStats: *mut DXGI_FRAME_STATISTICS,
23468 ) -> HRESULT,
23469 >,
23470 pub GetDisplayModeList1: ::std::option::Option<
23471 unsafe extern "C" fn(
23472 This: *mut IDXGIOutput4,
23473 EnumFormat: DXGI_FORMAT,
23474 Flags: UINT,
23475 pNumModes: *mut UINT,
23476 pDesc: *mut DXGI_MODE_DESC1,
23477 ) -> HRESULT,
23478 >,
23479 pub FindClosestMatchingMode1: ::std::option::Option<
23480 unsafe extern "C" fn(
23481 This: *mut IDXGIOutput4,
23482 pModeToMatch: *const DXGI_MODE_DESC1,
23483 pClosestMatch: *mut DXGI_MODE_DESC1,
23484 pConcernedDevice: *mut IUnknown,
23485 ) -> HRESULT,
23486 >,
23487 pub GetDisplaySurfaceData1: ::std::option::Option<
23488 unsafe extern "C" fn(
23489 This: *mut IDXGIOutput4,
23490 pDestination: *mut IDXGIResource,
23491 ) -> HRESULT,
23492 >,
23493 pub DuplicateOutput: ::std::option::Option<
23494 unsafe extern "C" fn(
23495 This: *mut IDXGIOutput4,
23496 pDevice: *mut IUnknown,
23497 ppOutputDuplication: *mut *mut IDXGIOutputDuplication,
23498 ) -> HRESULT,
23499 >,
23500 pub SupportsOverlays: ::std::option::Option<
23501 unsafe extern "C" fn(This: *mut IDXGIOutput4) -> BOOL,
23502 >,
23503 pub CheckOverlaySupport: ::std::option::Option<
23504 unsafe extern "C" fn(
23505 This: *mut IDXGIOutput4,
23506 EnumFormat: DXGI_FORMAT,
23507 pConcernedDevice: *mut IUnknown,
23508 pFlags: *mut UINT,
23509 ) -> HRESULT,
23510 >,
23511 pub CheckOverlayColorSpaceSupport: ::std::option::Option<
23512 unsafe extern "C" fn(
23513 This: *mut IDXGIOutput4,
23514 Format: DXGI_FORMAT,
23515 ColorSpace: DXGI_COLOR_SPACE_TYPE,
23516 pConcernedDevice: *mut IUnknown,
23517 pFlags: *mut UINT,
23518 ) -> HRESULT,
23519 >,
23520}
23521#[repr(C)]
23522#[derive(Debug, Copy, Clone, Hash, PartialOrd, Ord, PartialEq, Eq)]
23523pub struct IDXGIOutput4 {
23524 pub lpVtbl: *mut IDXGIOutput4Vtbl,
23525}
23526impl Default for IDXGIOutput4 {
23527 fn default() -> Self {
23528 let mut s = ::std::mem::MaybeUninit::<Self>::uninit();
23529 unsafe {
23530 ::std::ptr::write_bytes(s.as_mut_ptr(), 0, 1);
23531 s.assume_init()
23532 }
23533 }
23534}
23535extern "C" {
23536 pub static IID_IDXGIFactory4: IID;
23537}
23538#[repr(C)]
23539#[derive(Debug, Default, Copy, Clone, Hash, PartialOrd, Ord, PartialEq, Eq)]
23540pub struct IDXGIFactory4Vtbl {
23541 pub QueryInterface: ::std::option::Option<
23542 unsafe extern "C" fn(
23543 This: *mut IDXGIFactory4,
23544 riid: *const IID,
23545 ppvObject: *mut *mut ::std::os::raw::c_void,
23546 ) -> HRESULT,
23547 >,
23548 pub AddRef: ::std::option::Option<
23549 unsafe extern "C" fn(This: *mut IDXGIFactory4) -> ULONG,
23550 >,
23551 pub Release: ::std::option::Option<
23552 unsafe extern "C" fn(This: *mut IDXGIFactory4) -> ULONG,
23553 >,
23554 pub SetPrivateData: ::std::option::Option<
23555 unsafe extern "C" fn(
23556 This: *mut IDXGIFactory4,
23557 Name: *const GUID,
23558 DataSize: UINT,
23559 pData: *const ::std::os::raw::c_void,
23560 ) -> HRESULT,
23561 >,
23562 pub SetPrivateDataInterface: ::std::option::Option<
23563 unsafe extern "C" fn(
23564 This: *mut IDXGIFactory4,
23565 Name: *const GUID,
23566 pUnknown: *const IUnknown,
23567 ) -> HRESULT,
23568 >,
23569 pub GetPrivateData: ::std::option::Option<
23570 unsafe extern "C" fn(
23571 This: *mut IDXGIFactory4,
23572 Name: *const GUID,
23573 pDataSize: *mut UINT,
23574 pData: *mut ::std::os::raw::c_void,
23575 ) -> HRESULT,
23576 >,
23577 pub GetParent: ::std::option::Option<
23578 unsafe extern "C" fn(
23579 This: *mut IDXGIFactory4,
23580 riid: *const IID,
23581 ppParent: *mut *mut ::std::os::raw::c_void,
23582 ) -> HRESULT,
23583 >,
23584 pub EnumAdapters: ::std::option::Option<
23585 unsafe extern "C" fn(
23586 This: *mut IDXGIFactory4,
23587 Adapter: UINT,
23588 ppAdapter: *mut *mut IDXGIAdapter,
23589 ) -> HRESULT,
23590 >,
23591 pub MakeWindowAssociation: ::std::option::Option<
23592 unsafe extern "C" fn(
23593 This: *mut IDXGIFactory4,
23594 WindowHandle: HWND,
23595 Flags: UINT,
23596 ) -> HRESULT,
23597 >,
23598 pub GetWindowAssociation: ::std::option::Option<
23599 unsafe extern "C" fn(
23600 This: *mut IDXGIFactory4,
23601 pWindowHandle: *mut HWND,
23602 ) -> HRESULT,
23603 >,
23604 pub CreateSwapChain: ::std::option::Option<
23605 unsafe extern "C" fn(
23606 This: *mut IDXGIFactory4,
23607 pDevice: *mut IUnknown,
23608 pDesc: *mut DXGI_SWAP_CHAIN_DESC,
23609 ppSwapChain: *mut *mut IDXGISwapChain,
23610 ) -> HRESULT,
23611 >,
23612 pub CreateSoftwareAdapter: ::std::option::Option<
23613 unsafe extern "C" fn(
23614 This: *mut IDXGIFactory4,
23615 Module: HMODULE,
23616 ppAdapter: *mut *mut IDXGIAdapter,
23617 ) -> HRESULT,
23618 >,
23619 pub EnumAdapters1: ::std::option::Option<
23620 unsafe extern "C" fn(
23621 This: *mut IDXGIFactory4,
23622 Adapter: UINT,
23623 ppAdapter: *mut *mut IDXGIAdapter1,
23624 ) -> HRESULT,
23625 >,
23626 pub IsCurrent: ::std::option::Option<
23627 unsafe extern "C" fn(This: *mut IDXGIFactory4) -> BOOL,
23628 >,
23629 pub IsWindowedStereoEnabled: ::std::option::Option<
23630 unsafe extern "C" fn(This: *mut IDXGIFactory4) -> BOOL,
23631 >,
23632 pub CreateSwapChainForHwnd: ::std::option::Option<
23633 unsafe extern "C" fn(
23634 This: *mut IDXGIFactory4,
23635 pDevice: *mut IUnknown,
23636 hWnd: HWND,
23637 pDesc: *const DXGI_SWAP_CHAIN_DESC1,
23638 pFullscreenDesc: *const DXGI_SWAP_CHAIN_FULLSCREEN_DESC,
23639 pRestrictToOutput: *mut IDXGIOutput,
23640 ppSwapChain: *mut *mut IDXGISwapChain1,
23641 ) -> HRESULT,
23642 >,
23643 pub CreateSwapChainForCoreWindow: ::std::option::Option<
23644 unsafe extern "C" fn(
23645 This: *mut IDXGIFactory4,
23646 pDevice: *mut IUnknown,
23647 pWindow: *mut IUnknown,
23648 pDesc: *const DXGI_SWAP_CHAIN_DESC1,
23649 pRestrictToOutput: *mut IDXGIOutput,
23650 ppSwapChain: *mut *mut IDXGISwapChain1,
23651 ) -> HRESULT,
23652 >,
23653 pub GetSharedResourceAdapterLuid: ::std::option::Option<
23654 unsafe extern "C" fn(
23655 This: *mut IDXGIFactory4,
23656 hResource: HANDLE,
23657 pLuid: *mut LUID,
23658 ) -> HRESULT,
23659 >,
23660 pub RegisterStereoStatusWindow: ::std::option::Option<
23661 unsafe extern "C" fn(
23662 This: *mut IDXGIFactory4,
23663 WindowHandle: HWND,
23664 wMsg: UINT,
23665 pdwCookie: *mut DWORD,
23666 ) -> HRESULT,
23667 >,
23668 pub RegisterStereoStatusEvent: ::std::option::Option<
23669 unsafe extern "C" fn(
23670 This: *mut IDXGIFactory4,
23671 hEvent: HANDLE,
23672 pdwCookie: *mut DWORD,
23673 ) -> HRESULT,
23674 >,
23675 pub UnregisterStereoStatus: ::std::option::Option<
23676 unsafe extern "C" fn(This: *mut IDXGIFactory4, dwCookie: DWORD),
23677 >,
23678 pub RegisterOcclusionStatusWindow: ::std::option::Option<
23679 unsafe extern "C" fn(
23680 This: *mut IDXGIFactory4,
23681 WindowHandle: HWND,
23682 wMsg: UINT,
23683 pdwCookie: *mut DWORD,
23684 ) -> HRESULT,
23685 >,
23686 pub RegisterOcclusionStatusEvent: ::std::option::Option<
23687 unsafe extern "C" fn(
23688 This: *mut IDXGIFactory4,
23689 hEvent: HANDLE,
23690 pdwCookie: *mut DWORD,
23691 ) -> HRESULT,
23692 >,
23693 pub UnregisterOcclusionStatus: ::std::option::Option<
23694 unsafe extern "C" fn(This: *mut IDXGIFactory4, dwCookie: DWORD),
23695 >,
23696 pub CreateSwapChainForComposition: ::std::option::Option<
23697 unsafe extern "C" fn(
23698 This: *mut IDXGIFactory4,
23699 pDevice: *mut IUnknown,
23700 pDesc: *const DXGI_SWAP_CHAIN_DESC1,
23701 pRestrictToOutput: *mut IDXGIOutput,
23702 ppSwapChain: *mut *mut IDXGISwapChain1,
23703 ) -> HRESULT,
23704 >,
23705 pub GetCreationFlags: ::std::option::Option<
23706 unsafe extern "C" fn(This: *mut IDXGIFactory4) -> UINT,
23707 >,
23708 pub EnumAdapterByLuid: ::std::option::Option<
23709 unsafe extern "C" fn(
23710 This: *mut IDXGIFactory4,
23711 AdapterLuid: LUID,
23712 riid: *const IID,
23713 ppvAdapter: *mut *mut ::std::os::raw::c_void,
23714 ) -> HRESULT,
23715 >,
23716 pub EnumWarpAdapter: ::std::option::Option<
23717 unsafe extern "C" fn(
23718 This: *mut IDXGIFactory4,
23719 riid: *const IID,
23720 ppvAdapter: *mut *mut ::std::os::raw::c_void,
23721 ) -> HRESULT,
23722 >,
23723}
23724#[repr(C)]
23725#[derive(Debug, Copy, Clone, Hash, PartialOrd, Ord, PartialEq, Eq)]
23726pub struct IDXGIFactory4 {
23727 pub lpVtbl: *mut IDXGIFactory4Vtbl,
23728}
23729impl Default for IDXGIFactory4 {
23730 fn default() -> Self {
23731 let mut s = ::std::mem::MaybeUninit::<Self>::uninit();
23732 unsafe {
23733 ::std::ptr::write_bytes(s.as_mut_ptr(), 0, 1);
23734 s.assume_init()
23735 }
23736 }
23737}
23738pub const DXGI_MEMORY_SEGMENT_GROUP_DXGI_MEMORY_SEGMENT_GROUP_LOCAL:
23739 DXGI_MEMORY_SEGMENT_GROUP = 0;
23740pub const DXGI_MEMORY_SEGMENT_GROUP_DXGI_MEMORY_SEGMENT_GROUP_NON_LOCAL:
23741 DXGI_MEMORY_SEGMENT_GROUP = 1;
23742pub type DXGI_MEMORY_SEGMENT_GROUP = ::std::os::raw::c_int;
23743#[repr(C)]
23744#[derive(Debug, Default, Copy, Clone, Hash, PartialOrd, Ord, PartialEq, Eq)]
23745pub struct DXGI_QUERY_VIDEO_MEMORY_INFO {
23746 pub Budget: UINT64,
23747 pub CurrentUsage: UINT64,
23748 pub AvailableForReservation: UINT64,
23749 pub CurrentReservation: UINT64,
23750}
23751extern "C" {
23752 pub static IID_IDXGIAdapter3: IID;
23753}
23754#[repr(C)]
23755#[derive(Debug, Default, Copy, Clone, Hash, PartialOrd, Ord, PartialEq, Eq)]
23756pub struct IDXGIAdapter3Vtbl {
23757 pub QueryInterface: ::std::option::Option<
23758 unsafe extern "C" fn(
23759 This: *mut IDXGIAdapter3,
23760 riid: *const IID,
23761 ppvObject: *mut *mut ::std::os::raw::c_void,
23762 ) -> HRESULT,
23763 >,
23764 pub AddRef: ::std::option::Option<
23765 unsafe extern "C" fn(This: *mut IDXGIAdapter3) -> ULONG,
23766 >,
23767 pub Release: ::std::option::Option<
23768 unsafe extern "C" fn(This: *mut IDXGIAdapter3) -> ULONG,
23769 >,
23770 pub SetPrivateData: ::std::option::Option<
23771 unsafe extern "C" fn(
23772 This: *mut IDXGIAdapter3,
23773 Name: *const GUID,
23774 DataSize: UINT,
23775 pData: *const ::std::os::raw::c_void,
23776 ) -> HRESULT,
23777 >,
23778 pub SetPrivateDataInterface: ::std::option::Option<
23779 unsafe extern "C" fn(
23780 This: *mut IDXGIAdapter3,
23781 Name: *const GUID,
23782 pUnknown: *const IUnknown,
23783 ) -> HRESULT,
23784 >,
23785 pub GetPrivateData: ::std::option::Option<
23786 unsafe extern "C" fn(
23787 This: *mut IDXGIAdapter3,
23788 Name: *const GUID,
23789 pDataSize: *mut UINT,
23790 pData: *mut ::std::os::raw::c_void,
23791 ) -> HRESULT,
23792 >,
23793 pub GetParent: ::std::option::Option<
23794 unsafe extern "C" fn(
23795 This: *mut IDXGIAdapter3,
23796 riid: *const IID,
23797 ppParent: *mut *mut ::std::os::raw::c_void,
23798 ) -> HRESULT,
23799 >,
23800 pub EnumOutputs: ::std::option::Option<
23801 unsafe extern "C" fn(
23802 This: *mut IDXGIAdapter3,
23803 Output: UINT,
23804 ppOutput: *mut *mut IDXGIOutput,
23805 ) -> HRESULT,
23806 >,
23807 pub GetDesc: ::std::option::Option<
23808 unsafe extern "C" fn(
23809 This: *mut IDXGIAdapter3,
23810 pDesc: *mut DXGI_ADAPTER_DESC,
23811 ) -> HRESULT,
23812 >,
23813 pub CheckInterfaceSupport: ::std::option::Option<
23814 unsafe extern "C" fn(
23815 This: *mut IDXGIAdapter3,
23816 InterfaceName: *const GUID,
23817 pUMDVersion: *mut LARGE_INTEGER,
23818 ) -> HRESULT,
23819 >,
23820 pub GetDesc1: ::std::option::Option<
23821 unsafe extern "C" fn(
23822 This: *mut IDXGIAdapter3,
23823 pDesc: *mut DXGI_ADAPTER_DESC1,
23824 ) -> HRESULT,
23825 >,
23826 pub GetDesc2: ::std::option::Option<
23827 unsafe extern "C" fn(
23828 This: *mut IDXGIAdapter3,
23829 pDesc: *mut DXGI_ADAPTER_DESC2,
23830 ) -> HRESULT,
23831 >,
23832 pub RegisterHardwareContentProtectionTeardownStatusEvent:
23833 ::std::option::Option<
23834 unsafe extern "C" fn(
23835 This: *mut IDXGIAdapter3,
23836 hEvent: HANDLE,
23837 pdwCookie: *mut DWORD,
23838 ) -> HRESULT,
23839 >,
23840 pub UnregisterHardwareContentProtectionTeardownStatus:
23841 ::std::option::Option<
23842 unsafe extern "C" fn(This: *mut IDXGIAdapter3, dwCookie: DWORD),
23843 >,
23844 pub QueryVideoMemoryInfo: ::std::option::Option<
23845 unsafe extern "C" fn(
23846 This: *mut IDXGIAdapter3,
23847 NodeIndex: UINT,
23848 MemorySegmentGroup: DXGI_MEMORY_SEGMENT_GROUP,
23849 pVideoMemoryInfo: *mut DXGI_QUERY_VIDEO_MEMORY_INFO,
23850 ) -> HRESULT,
23851 >,
23852 pub SetVideoMemoryReservation: ::std::option::Option<
23853 unsafe extern "C" fn(
23854 This: *mut IDXGIAdapter3,
23855 NodeIndex: UINT,
23856 MemorySegmentGroup: DXGI_MEMORY_SEGMENT_GROUP,
23857 Reservation: UINT64,
23858 ) -> HRESULT,
23859 >,
23860 pub RegisterVideoMemoryBudgetChangeNotificationEvent: ::std::option::Option<
23861 unsafe extern "C" fn(
23862 This: *mut IDXGIAdapter3,
23863 hEvent: HANDLE,
23864 pdwCookie: *mut DWORD,
23865 ) -> HRESULT,
23866 >,
23867 pub UnregisterVideoMemoryBudgetChangeNotification: ::std::option::Option<
23868 unsafe extern "C" fn(This: *mut IDXGIAdapter3, dwCookie: DWORD),
23869 >,
23870}
23871#[repr(C)]
23872#[derive(Debug, Copy, Clone, Hash, PartialOrd, Ord, PartialEq, Eq)]
23873pub struct IDXGIAdapter3 {
23874 pub lpVtbl: *mut IDXGIAdapter3Vtbl,
23875}
23876impl Default for IDXGIAdapter3 {
23877 fn default() -> Self {
23878 let mut s = ::std::mem::MaybeUninit::<Self>::uninit();
23879 unsafe {
23880 ::std::ptr::write_bytes(s.as_mut_ptr(), 0, 1);
23881 s.assume_init()
23882 }
23883 }
23884}
23885pub const DXGI_OUTDUPL_FLAG_DXGI_OUTDUPL_COMPOSITED_UI_CAPTURE_ONLY:
23886 DXGI_OUTDUPL_FLAG = 1;
23887pub type DXGI_OUTDUPL_FLAG = ::std::os::raw::c_int;
23888extern "C" {
23889 pub static IID_IDXGIOutput5: IID;
23890}
23891#[repr(C)]
23892#[derive(Debug, Default, Copy, Clone, Hash, PartialOrd, Ord, PartialEq, Eq)]
23893pub struct IDXGIOutput5Vtbl {
23894 pub QueryInterface: ::std::option::Option<
23895 unsafe extern "C" fn(
23896 This: *mut IDXGIOutput5,
23897 riid: *const IID,
23898 ppvObject: *mut *mut ::std::os::raw::c_void,
23899 ) -> HRESULT,
23900 >,
23901 pub AddRef: ::std::option::Option<
23902 unsafe extern "C" fn(This: *mut IDXGIOutput5) -> ULONG,
23903 >,
23904 pub Release: ::std::option::Option<
23905 unsafe extern "C" fn(This: *mut IDXGIOutput5) -> ULONG,
23906 >,
23907 pub SetPrivateData: ::std::option::Option<
23908 unsafe extern "C" fn(
23909 This: *mut IDXGIOutput5,
23910 Name: *const GUID,
23911 DataSize: UINT,
23912 pData: *const ::std::os::raw::c_void,
23913 ) -> HRESULT,
23914 >,
23915 pub SetPrivateDataInterface: ::std::option::Option<
23916 unsafe extern "C" fn(
23917 This: *mut IDXGIOutput5,
23918 Name: *const GUID,
23919 pUnknown: *const IUnknown,
23920 ) -> HRESULT,
23921 >,
23922 pub GetPrivateData: ::std::option::Option<
23923 unsafe extern "C" fn(
23924 This: *mut IDXGIOutput5,
23925 Name: *const GUID,
23926 pDataSize: *mut UINT,
23927 pData: *mut ::std::os::raw::c_void,
23928 ) -> HRESULT,
23929 >,
23930 pub GetParent: ::std::option::Option<
23931 unsafe extern "C" fn(
23932 This: *mut IDXGIOutput5,
23933 riid: *const IID,
23934 ppParent: *mut *mut ::std::os::raw::c_void,
23935 ) -> HRESULT,
23936 >,
23937 pub GetDesc: ::std::option::Option<
23938 unsafe extern "C" fn(
23939 This: *mut IDXGIOutput5,
23940 pDesc: *mut DXGI_OUTPUT_DESC,
23941 ) -> HRESULT,
23942 >,
23943 pub GetDisplayModeList: ::std::option::Option<
23944 unsafe extern "C" fn(
23945 This: *mut IDXGIOutput5,
23946 EnumFormat: DXGI_FORMAT,
23947 Flags: UINT,
23948 pNumModes: *mut UINT,
23949 pDesc: *mut DXGI_MODE_DESC,
23950 ) -> HRESULT,
23951 >,
23952 pub FindClosestMatchingMode: ::std::option::Option<
23953 unsafe extern "C" fn(
23954 This: *mut IDXGIOutput5,
23955 pModeToMatch: *const DXGI_MODE_DESC,
23956 pClosestMatch: *mut DXGI_MODE_DESC,
23957 pConcernedDevice: *mut IUnknown,
23958 ) -> HRESULT,
23959 >,
23960 pub WaitForVBlank: ::std::option::Option<
23961 unsafe extern "C" fn(This: *mut IDXGIOutput5) -> HRESULT,
23962 >,
23963 pub TakeOwnership: ::std::option::Option<
23964 unsafe extern "C" fn(
23965 This: *mut IDXGIOutput5,
23966 pDevice: *mut IUnknown,
23967 Exclusive: BOOL,
23968 ) -> HRESULT,
23969 >,
23970 pub ReleaseOwnership:
23971 ::std::option::Option<unsafe extern "C" fn(This: *mut IDXGIOutput5)>,
23972 pub GetGammaControlCapabilities: ::std::option::Option<
23973 unsafe extern "C" fn(
23974 This: *mut IDXGIOutput5,
23975 pGammaCaps: *mut DXGI_GAMMA_CONTROL_CAPABILITIES,
23976 ) -> HRESULT,
23977 >,
23978 pub SetGammaControl: ::std::option::Option<
23979 unsafe extern "C" fn(
23980 This: *mut IDXGIOutput5,
23981 pArray: *const DXGI_GAMMA_CONTROL,
23982 ) -> HRESULT,
23983 >,
23984 pub GetGammaControl: ::std::option::Option<
23985 unsafe extern "C" fn(
23986 This: *mut IDXGIOutput5,
23987 pArray: *mut DXGI_GAMMA_CONTROL,
23988 ) -> HRESULT,
23989 >,
23990 pub SetDisplaySurface: ::std::option::Option<
23991 unsafe extern "C" fn(
23992 This: *mut IDXGIOutput5,
23993 pScanoutSurface: *mut IDXGISurface,
23994 ) -> HRESULT,
23995 >,
23996 pub GetDisplaySurfaceData: ::std::option::Option<
23997 unsafe extern "C" fn(
23998 This: *mut IDXGIOutput5,
23999 pDestination: *mut IDXGISurface,
24000 ) -> HRESULT,
24001 >,
24002 pub GetFrameStatistics: ::std::option::Option<
24003 unsafe extern "C" fn(
24004 This: *mut IDXGIOutput5,
24005 pStats: *mut DXGI_FRAME_STATISTICS,
24006 ) -> HRESULT,
24007 >,
24008 pub GetDisplayModeList1: ::std::option::Option<
24009 unsafe extern "C" fn(
24010 This: *mut IDXGIOutput5,
24011 EnumFormat: DXGI_FORMAT,
24012 Flags: UINT,
24013 pNumModes: *mut UINT,
24014 pDesc: *mut DXGI_MODE_DESC1,
24015 ) -> HRESULT,
24016 >,
24017 pub FindClosestMatchingMode1: ::std::option::Option<
24018 unsafe extern "C" fn(
24019 This: *mut IDXGIOutput5,
24020 pModeToMatch: *const DXGI_MODE_DESC1,
24021 pClosestMatch: *mut DXGI_MODE_DESC1,
24022 pConcernedDevice: *mut IUnknown,
24023 ) -> HRESULT,
24024 >,
24025 pub GetDisplaySurfaceData1: ::std::option::Option<
24026 unsafe extern "C" fn(
24027 This: *mut IDXGIOutput5,
24028 pDestination: *mut IDXGIResource,
24029 ) -> HRESULT,
24030 >,
24031 pub DuplicateOutput: ::std::option::Option<
24032 unsafe extern "C" fn(
24033 This: *mut IDXGIOutput5,
24034 pDevice: *mut IUnknown,
24035 ppOutputDuplication: *mut *mut IDXGIOutputDuplication,
24036 ) -> HRESULT,
24037 >,
24038 pub SupportsOverlays: ::std::option::Option<
24039 unsafe extern "C" fn(This: *mut IDXGIOutput5) -> BOOL,
24040 >,
24041 pub CheckOverlaySupport: ::std::option::Option<
24042 unsafe extern "C" fn(
24043 This: *mut IDXGIOutput5,
24044 EnumFormat: DXGI_FORMAT,
24045 pConcernedDevice: *mut IUnknown,
24046 pFlags: *mut UINT,
24047 ) -> HRESULT,
24048 >,
24049 pub CheckOverlayColorSpaceSupport: ::std::option::Option<
24050 unsafe extern "C" fn(
24051 This: *mut IDXGIOutput5,
24052 Format: DXGI_FORMAT,
24053 ColorSpace: DXGI_COLOR_SPACE_TYPE,
24054 pConcernedDevice: *mut IUnknown,
24055 pFlags: *mut UINT,
24056 ) -> HRESULT,
24057 >,
24058 pub DuplicateOutput1: ::std::option::Option<
24059 unsafe extern "C" fn(
24060 This: *mut IDXGIOutput5,
24061 pDevice: *mut IUnknown,
24062 Flags: UINT,
24063 SupportedFormatsCount: UINT,
24064 pSupportedFormats: *const DXGI_FORMAT,
24065 ppOutputDuplication: *mut *mut IDXGIOutputDuplication,
24066 ) -> HRESULT,
24067 >,
24068}
24069#[repr(C)]
24070#[derive(Debug, Copy, Clone, Hash, PartialOrd, Ord, PartialEq, Eq)]
24071pub struct IDXGIOutput5 {
24072 pub lpVtbl: *mut IDXGIOutput5Vtbl,
24073}
24074impl Default for IDXGIOutput5 {
24075 fn default() -> Self {
24076 let mut s = ::std::mem::MaybeUninit::<Self>::uninit();
24077 unsafe {
24078 ::std::ptr::write_bytes(s.as_mut_ptr(), 0, 1);
24079 s.assume_init()
24080 }
24081 }
24082}
24083pub const DXGI_HDR_METADATA_TYPE_DXGI_HDR_METADATA_TYPE_NONE:
24084 DXGI_HDR_METADATA_TYPE = 0;
24085pub const DXGI_HDR_METADATA_TYPE_DXGI_HDR_METADATA_TYPE_HDR10:
24086 DXGI_HDR_METADATA_TYPE = 1;
24087pub const DXGI_HDR_METADATA_TYPE_DXGI_HDR_METADATA_TYPE_HDR10PLUS:
24088 DXGI_HDR_METADATA_TYPE = 2;
24089pub type DXGI_HDR_METADATA_TYPE = ::std::os::raw::c_int;
24090#[repr(C)]
24091#[derive(Debug, Default, Copy, Clone, Hash, PartialOrd, Ord, PartialEq, Eq)]
24092pub struct DXGI_HDR_METADATA_HDR10 {
24093 pub RedPrimary: [UINT16; 2usize],
24094 pub GreenPrimary: [UINT16; 2usize],
24095 pub BluePrimary: [UINT16; 2usize],
24096 pub WhitePoint: [UINT16; 2usize],
24097 pub MaxMasteringLuminance: UINT,
24098 pub MinMasteringLuminance: UINT,
24099 pub MaxContentLightLevel: UINT16,
24100 pub MaxFrameAverageLightLevel: UINT16,
24101}
24102#[repr(C)]
24103#[derive(Debug, Copy, Clone, Hash, PartialOrd, Ord, PartialEq, Eq)]
24104pub struct DXGI_HDR_METADATA_HDR10PLUS {
24105 pub Data: [BYTE; 72usize],
24106}
24107impl Default for DXGI_HDR_METADATA_HDR10PLUS {
24108 fn default() -> Self {
24109 let mut s = ::std::mem::MaybeUninit::<Self>::uninit();
24110 unsafe {
24111 ::std::ptr::write_bytes(s.as_mut_ptr(), 0, 1);
24112 s.assume_init()
24113 }
24114 }
24115}
24116extern "C" {
24117 pub static IID_IDXGISwapChain4: IID;
24118}
24119#[repr(C)]
24120#[derive(Debug, Default, Copy, Clone, Hash, PartialOrd, Ord, PartialEq, Eq)]
24121pub struct IDXGISwapChain4Vtbl {
24122 pub QueryInterface: ::std::option::Option<
24123 unsafe extern "C" fn(
24124 This: *mut IDXGISwapChain4,
24125 riid: *const IID,
24126 ppvObject: *mut *mut ::std::os::raw::c_void,
24127 ) -> HRESULT,
24128 >,
24129 pub AddRef: ::std::option::Option<
24130 unsafe extern "C" fn(This: *mut IDXGISwapChain4) -> ULONG,
24131 >,
24132 pub Release: ::std::option::Option<
24133 unsafe extern "C" fn(This: *mut IDXGISwapChain4) -> ULONG,
24134 >,
24135 pub SetPrivateData: ::std::option::Option<
24136 unsafe extern "C" fn(
24137 This: *mut IDXGISwapChain4,
24138 Name: *const GUID,
24139 DataSize: UINT,
24140 pData: *const ::std::os::raw::c_void,
24141 ) -> HRESULT,
24142 >,
24143 pub SetPrivateDataInterface: ::std::option::Option<
24144 unsafe extern "C" fn(
24145 This: *mut IDXGISwapChain4,
24146 Name: *const GUID,
24147 pUnknown: *const IUnknown,
24148 ) -> HRESULT,
24149 >,
24150 pub GetPrivateData: ::std::option::Option<
24151 unsafe extern "C" fn(
24152 This: *mut IDXGISwapChain4,
24153 Name: *const GUID,
24154 pDataSize: *mut UINT,
24155 pData: *mut ::std::os::raw::c_void,
24156 ) -> HRESULT,
24157 >,
24158 pub GetParent: ::std::option::Option<
24159 unsafe extern "C" fn(
24160 This: *mut IDXGISwapChain4,
24161 riid: *const IID,
24162 ppParent: *mut *mut ::std::os::raw::c_void,
24163 ) -> HRESULT,
24164 >,
24165 pub GetDevice: ::std::option::Option<
24166 unsafe extern "C" fn(
24167 This: *mut IDXGISwapChain4,
24168 riid: *const IID,
24169 ppDevice: *mut *mut ::std::os::raw::c_void,
24170 ) -> HRESULT,
24171 >,
24172 pub Present: ::std::option::Option<
24173 unsafe extern "C" fn(
24174 This: *mut IDXGISwapChain4,
24175 SyncInterval: UINT,
24176 Flags: UINT,
24177 ) -> HRESULT,
24178 >,
24179 pub GetBuffer: ::std::option::Option<
24180 unsafe extern "C" fn(
24181 This: *mut IDXGISwapChain4,
24182 Buffer: UINT,
24183 riid: *const IID,
24184 ppSurface: *mut *mut ::std::os::raw::c_void,
24185 ) -> HRESULT,
24186 >,
24187 pub SetFullscreenState: ::std::option::Option<
24188 unsafe extern "C" fn(
24189 This: *mut IDXGISwapChain4,
24190 Fullscreen: BOOL,
24191 pTarget: *mut IDXGIOutput,
24192 ) -> HRESULT,
24193 >,
24194 pub GetFullscreenState: ::std::option::Option<
24195 unsafe extern "C" fn(
24196 This: *mut IDXGISwapChain4,
24197 pFullscreen: *mut BOOL,
24198 ppTarget: *mut *mut IDXGIOutput,
24199 ) -> HRESULT,
24200 >,
24201 pub GetDesc: ::std::option::Option<
24202 unsafe extern "C" fn(
24203 This: *mut IDXGISwapChain4,
24204 pDesc: *mut DXGI_SWAP_CHAIN_DESC,
24205 ) -> HRESULT,
24206 >,
24207 pub ResizeBuffers: ::std::option::Option<
24208 unsafe extern "C" fn(
24209 This: *mut IDXGISwapChain4,
24210 BufferCount: UINT,
24211 Width: UINT,
24212 Height: UINT,
24213 NewFormat: DXGI_FORMAT,
24214 SwapChainFlags: UINT,
24215 ) -> HRESULT,
24216 >,
24217 pub ResizeTarget: ::std::option::Option<
24218 unsafe extern "C" fn(
24219 This: *mut IDXGISwapChain4,
24220 pNewTargetParameters: *const DXGI_MODE_DESC,
24221 ) -> HRESULT,
24222 >,
24223 pub GetContainingOutput: ::std::option::Option<
24224 unsafe extern "C" fn(
24225 This: *mut IDXGISwapChain4,
24226 ppOutput: *mut *mut IDXGIOutput,
24227 ) -> HRESULT,
24228 >,
24229 pub GetFrameStatistics: ::std::option::Option<
24230 unsafe extern "C" fn(
24231 This: *mut IDXGISwapChain4,
24232 pStats: *mut DXGI_FRAME_STATISTICS,
24233 ) -> HRESULT,
24234 >,
24235 pub GetLastPresentCount: ::std::option::Option<
24236 unsafe extern "C" fn(
24237 This: *mut IDXGISwapChain4,
24238 pLastPresentCount: *mut UINT,
24239 ) -> HRESULT,
24240 >,
24241 pub GetDesc1: ::std::option::Option<
24242 unsafe extern "C" fn(
24243 This: *mut IDXGISwapChain4,
24244 pDesc: *mut DXGI_SWAP_CHAIN_DESC1,
24245 ) -> HRESULT,
24246 >,
24247 pub GetFullscreenDesc: ::std::option::Option<
24248 unsafe extern "C" fn(
24249 This: *mut IDXGISwapChain4,
24250 pDesc: *mut DXGI_SWAP_CHAIN_FULLSCREEN_DESC,
24251 ) -> HRESULT,
24252 >,
24253 pub GetHwnd: ::std::option::Option<
24254 unsafe extern "C" fn(
24255 This: *mut IDXGISwapChain4,
24256 pHwnd: *mut HWND,
24257 ) -> HRESULT,
24258 >,
24259 pub GetCoreWindow: ::std::option::Option<
24260 unsafe extern "C" fn(
24261 This: *mut IDXGISwapChain4,
24262 refiid: *const IID,
24263 ppUnk: *mut *mut ::std::os::raw::c_void,
24264 ) -> HRESULT,
24265 >,
24266 pub Present1: ::std::option::Option<
24267 unsafe extern "C" fn(
24268 This: *mut IDXGISwapChain4,
24269 SyncInterval: UINT,
24270 PresentFlags: UINT,
24271 pPresentParameters: *const DXGI_PRESENT_PARAMETERS,
24272 ) -> HRESULT,
24273 >,
24274 pub IsTemporaryMonoSupported: ::std::option::Option<
24275 unsafe extern "C" fn(This: *mut IDXGISwapChain4) -> BOOL,
24276 >,
24277 pub GetRestrictToOutput: ::std::option::Option<
24278 unsafe extern "C" fn(
24279 This: *mut IDXGISwapChain4,
24280 ppRestrictToOutput: *mut *mut IDXGIOutput,
24281 ) -> HRESULT,
24282 >,
24283 pub SetBackgroundColor: ::std::option::Option<
24284 unsafe extern "C" fn(
24285 This: *mut IDXGISwapChain4,
24286 pColor: *const DXGI_RGBA,
24287 ) -> HRESULT,
24288 >,
24289 pub GetBackgroundColor: ::std::option::Option<
24290 unsafe extern "C" fn(
24291 This: *mut IDXGISwapChain4,
24292 pColor: *mut DXGI_RGBA,
24293 ) -> HRESULT,
24294 >,
24295 pub SetRotation: ::std::option::Option<
24296 unsafe extern "C" fn(
24297 This: *mut IDXGISwapChain4,
24298 Rotation: DXGI_MODE_ROTATION,
24299 ) -> HRESULT,
24300 >,
24301 pub GetRotation: ::std::option::Option<
24302 unsafe extern "C" fn(
24303 This: *mut IDXGISwapChain4,
24304 pRotation: *mut DXGI_MODE_ROTATION,
24305 ) -> HRESULT,
24306 >,
24307 pub SetSourceSize: ::std::option::Option<
24308 unsafe extern "C" fn(
24309 This: *mut IDXGISwapChain4,
24310 Width: UINT,
24311 Height: UINT,
24312 ) -> HRESULT,
24313 >,
24314 pub GetSourceSize: ::std::option::Option<
24315 unsafe extern "C" fn(
24316 This: *mut IDXGISwapChain4,
24317 pWidth: *mut UINT,
24318 pHeight: *mut UINT,
24319 ) -> HRESULT,
24320 >,
24321 pub SetMaximumFrameLatency: ::std::option::Option<
24322 unsafe extern "C" fn(
24323 This: *mut IDXGISwapChain4,
24324 MaxLatency: UINT,
24325 ) -> HRESULT,
24326 >,
24327 pub GetMaximumFrameLatency: ::std::option::Option<
24328 unsafe extern "C" fn(
24329 This: *mut IDXGISwapChain4,
24330 pMaxLatency: *mut UINT,
24331 ) -> HRESULT,
24332 >,
24333 pub GetFrameLatencyWaitableObject: ::std::option::Option<
24334 unsafe extern "C" fn(This: *mut IDXGISwapChain4) -> HANDLE,
24335 >,
24336 pub SetMatrixTransform: ::std::option::Option<
24337 unsafe extern "C" fn(
24338 This: *mut IDXGISwapChain4,
24339 pMatrix: *const DXGI_MATRIX_3X2_F,
24340 ) -> HRESULT,
24341 >,
24342 pub GetMatrixTransform: ::std::option::Option<
24343 unsafe extern "C" fn(
24344 This: *mut IDXGISwapChain4,
24345 pMatrix: *mut DXGI_MATRIX_3X2_F,
24346 ) -> HRESULT,
24347 >,
24348 pub GetCurrentBackBufferIndex: ::std::option::Option<
24349 unsafe extern "C" fn(This: *mut IDXGISwapChain4) -> UINT,
24350 >,
24351 pub CheckColorSpaceSupport: ::std::option::Option<
24352 unsafe extern "C" fn(
24353 This: *mut IDXGISwapChain4,
24354 ColorSpace: DXGI_COLOR_SPACE_TYPE,
24355 pColorSpaceSupport: *mut UINT,
24356 ) -> HRESULT,
24357 >,
24358 pub SetColorSpace1: ::std::option::Option<
24359 unsafe extern "C" fn(
24360 This: *mut IDXGISwapChain4,
24361 ColorSpace: DXGI_COLOR_SPACE_TYPE,
24362 ) -> HRESULT,
24363 >,
24364 pub ResizeBuffers1: ::std::option::Option<
24365 unsafe extern "C" fn(
24366 This: *mut IDXGISwapChain4,
24367 BufferCount: UINT,
24368 Width: UINT,
24369 Height: UINT,
24370 Format: DXGI_FORMAT,
24371 SwapChainFlags: UINT,
24372 pCreationNodeMask: *const UINT,
24373 ppPresentQueue: *const *mut IUnknown,
24374 ) -> HRESULT,
24375 >,
24376 pub SetHDRMetaData: ::std::option::Option<
24377 unsafe extern "C" fn(
24378 This: *mut IDXGISwapChain4,
24379 Type: DXGI_HDR_METADATA_TYPE,
24380 Size: UINT,
24381 pMetaData: *mut ::std::os::raw::c_void,
24382 ) -> HRESULT,
24383 >,
24384}
24385#[repr(C)]
24386#[derive(Debug, Copy, Clone, Hash, PartialOrd, Ord, PartialEq, Eq)]
24387pub struct IDXGISwapChain4 {
24388 pub lpVtbl: *mut IDXGISwapChain4Vtbl,
24389}
24390impl Default for IDXGISwapChain4 {
24391 fn default() -> Self {
24392 let mut s = ::std::mem::MaybeUninit::<Self>::uninit();
24393 unsafe {
24394 ::std::ptr::write_bytes(s.as_mut_ptr(), 0, 1);
24395 s.assume_init()
24396 }
24397 }
24398}
24399pub const _DXGI_OFFER_RESOURCE_FLAGS_DXGI_OFFER_RESOURCE_FLAG_ALLOW_DECOMMIT:
24400 _DXGI_OFFER_RESOURCE_FLAGS = 1;
24401pub type _DXGI_OFFER_RESOURCE_FLAGS = ::std::os::raw::c_int;
24402pub use self::_DXGI_OFFER_RESOURCE_FLAGS as DXGI_OFFER_RESOURCE_FLAGS;
24403pub const _DXGI_RECLAIM_RESOURCE_RESULTS_DXGI_RECLAIM_RESOURCE_RESULT_OK:
24404 _DXGI_RECLAIM_RESOURCE_RESULTS = 0;
24405pub const _DXGI_RECLAIM_RESOURCE_RESULTS_DXGI_RECLAIM_RESOURCE_RESULT_DISCARDED : _DXGI_RECLAIM_RESOURCE_RESULTS = 1 ;
24406pub const _DXGI_RECLAIM_RESOURCE_RESULTS_DXGI_RECLAIM_RESOURCE_RESULT_NOT_COMMITTED : _DXGI_RECLAIM_RESOURCE_RESULTS = 2 ;
24407pub type _DXGI_RECLAIM_RESOURCE_RESULTS = ::std::os::raw::c_int;
24408pub use self::_DXGI_RECLAIM_RESOURCE_RESULTS as DXGI_RECLAIM_RESOURCE_RESULTS;
24409extern "C" {
24410 pub static IID_IDXGIDevice4: IID;
24411}
24412#[repr(C)]
24413#[derive(Debug, Default, Copy, Clone, Hash, PartialOrd, Ord, PartialEq, Eq)]
24414pub struct IDXGIDevice4Vtbl {
24415 pub QueryInterface: ::std::option::Option<
24416 unsafe extern "C" fn(
24417 This: *mut IDXGIDevice4,
24418 riid: *const IID,
24419 ppvObject: *mut *mut ::std::os::raw::c_void,
24420 ) -> HRESULT,
24421 >,
24422 pub AddRef: ::std::option::Option<
24423 unsafe extern "C" fn(This: *mut IDXGIDevice4) -> ULONG,
24424 >,
24425 pub Release: ::std::option::Option<
24426 unsafe extern "C" fn(This: *mut IDXGIDevice4) -> ULONG,
24427 >,
24428 pub SetPrivateData: ::std::option::Option<
24429 unsafe extern "C" fn(
24430 This: *mut IDXGIDevice4,
24431 Name: *const GUID,
24432 DataSize: UINT,
24433 pData: *const ::std::os::raw::c_void,
24434 ) -> HRESULT,
24435 >,
24436 pub SetPrivateDataInterface: ::std::option::Option<
24437 unsafe extern "C" fn(
24438 This: *mut IDXGIDevice4,
24439 Name: *const GUID,
24440 pUnknown: *const IUnknown,
24441 ) -> HRESULT,
24442 >,
24443 pub GetPrivateData: ::std::option::Option<
24444 unsafe extern "C" fn(
24445 This: *mut IDXGIDevice4,
24446 Name: *const GUID,
24447 pDataSize: *mut UINT,
24448 pData: *mut ::std::os::raw::c_void,
24449 ) -> HRESULT,
24450 >,
24451 pub GetParent: ::std::option::Option<
24452 unsafe extern "C" fn(
24453 This: *mut IDXGIDevice4,
24454 riid: *const IID,
24455 ppParent: *mut *mut ::std::os::raw::c_void,
24456 ) -> HRESULT,
24457 >,
24458 pub GetAdapter: ::std::option::Option<
24459 unsafe extern "C" fn(
24460 This: *mut IDXGIDevice4,
24461 pAdapter: *mut *mut IDXGIAdapter,
24462 ) -> HRESULT,
24463 >,
24464 pub CreateSurface: ::std::option::Option<
24465 unsafe extern "C" fn(
24466 This: *mut IDXGIDevice4,
24467 pDesc: *const DXGI_SURFACE_DESC,
24468 NumSurfaces: UINT,
24469 Usage: DXGI_USAGE,
24470 pSharedResource: *const DXGI_SHARED_RESOURCE,
24471 ppSurface: *mut *mut IDXGISurface,
24472 ) -> HRESULT,
24473 >,
24474 pub QueryResourceResidency: ::std::option::Option<
24475 unsafe extern "C" fn(
24476 This: *mut IDXGIDevice4,
24477 ppResources: *const *mut IUnknown,
24478 pResidencyStatus: *mut DXGI_RESIDENCY,
24479 NumResources: UINT,
24480 ) -> HRESULT,
24481 >,
24482 pub SetGPUThreadPriority: ::std::option::Option<
24483 unsafe extern "C" fn(This: *mut IDXGIDevice4, Priority: INT) -> HRESULT,
24484 >,
24485 pub GetGPUThreadPriority: ::std::option::Option<
24486 unsafe extern "C" fn(
24487 This: *mut IDXGIDevice4,
24488 pPriority: *mut INT,
24489 ) -> HRESULT,
24490 >,
24491 pub SetMaximumFrameLatency: ::std::option::Option<
24492 unsafe extern "C" fn(
24493 This: *mut IDXGIDevice4,
24494 MaxLatency: UINT,
24495 ) -> HRESULT,
24496 >,
24497 pub GetMaximumFrameLatency: ::std::option::Option<
24498 unsafe extern "C" fn(
24499 This: *mut IDXGIDevice4,
24500 pMaxLatency: *mut UINT,
24501 ) -> HRESULT,
24502 >,
24503 pub OfferResources: ::std::option::Option<
24504 unsafe extern "C" fn(
24505 This: *mut IDXGIDevice4,
24506 NumResources: UINT,
24507 ppResources: *const *mut IDXGIResource,
24508 Priority: DXGI_OFFER_RESOURCE_PRIORITY,
24509 ) -> HRESULT,
24510 >,
24511 pub ReclaimResources: ::std::option::Option<
24512 unsafe extern "C" fn(
24513 This: *mut IDXGIDevice4,
24514 NumResources: UINT,
24515 ppResources: *const *mut IDXGIResource,
24516 pDiscarded: *mut BOOL,
24517 ) -> HRESULT,
24518 >,
24519 pub EnqueueSetEvent: ::std::option::Option<
24520 unsafe extern "C" fn(
24521 This: *mut IDXGIDevice4,
24522 hEvent: HANDLE,
24523 ) -> HRESULT,
24524 >,
24525 pub Trim:
24526 ::std::option::Option<unsafe extern "C" fn(This: *mut IDXGIDevice4)>,
24527 pub OfferResources1: ::std::option::Option<
24528 unsafe extern "C" fn(
24529 This: *mut IDXGIDevice4,
24530 NumResources: UINT,
24531 ppResources: *const *mut IDXGIResource,
24532 Priority: DXGI_OFFER_RESOURCE_PRIORITY,
24533 Flags: UINT,
24534 ) -> HRESULT,
24535 >,
24536 pub ReclaimResources1: ::std::option::Option<
24537 unsafe extern "C" fn(
24538 This: *mut IDXGIDevice4,
24539 NumResources: UINT,
24540 ppResources: *const *mut IDXGIResource,
24541 pResults: *mut DXGI_RECLAIM_RESOURCE_RESULTS,
24542 ) -> HRESULT,
24543 >,
24544}
24545#[repr(C)]
24546#[derive(Debug, Copy, Clone, Hash, PartialOrd, Ord, PartialEq, Eq)]
24547pub struct IDXGIDevice4 {
24548 pub lpVtbl: *mut IDXGIDevice4Vtbl,
24549}
24550impl Default for IDXGIDevice4 {
24551 fn default() -> Self {
24552 let mut s = ::std::mem::MaybeUninit::<Self>::uninit();
24553 unsafe {
24554 ::std::ptr::write_bytes(s.as_mut_ptr(), 0, 1);
24555 s.assume_init()
24556 }
24557 }
24558}
24559pub const DXGI_FEATURE_DXGI_FEATURE_PRESENT_ALLOW_TEARING: DXGI_FEATURE = 0;
24560pub type DXGI_FEATURE = ::std::os::raw::c_int;
24561extern "C" {
24562 pub static IID_IDXGIFactory5: IID;
24563}
24564#[repr(C)]
24565#[derive(Debug, Default, Copy, Clone, Hash, PartialOrd, Ord, PartialEq, Eq)]
24566pub struct IDXGIFactory5Vtbl {
24567 pub QueryInterface: ::std::option::Option<
24568 unsafe extern "C" fn(
24569 This: *mut IDXGIFactory5,
24570 riid: *const IID,
24571 ppvObject: *mut *mut ::std::os::raw::c_void,
24572 ) -> HRESULT,
24573 >,
24574 pub AddRef: ::std::option::Option<
24575 unsafe extern "C" fn(This: *mut IDXGIFactory5) -> ULONG,
24576 >,
24577 pub Release: ::std::option::Option<
24578 unsafe extern "C" fn(This: *mut IDXGIFactory5) -> ULONG,
24579 >,
24580 pub SetPrivateData: ::std::option::Option<
24581 unsafe extern "C" fn(
24582 This: *mut IDXGIFactory5,
24583 Name: *const GUID,
24584 DataSize: UINT,
24585 pData: *const ::std::os::raw::c_void,
24586 ) -> HRESULT,
24587 >,
24588 pub SetPrivateDataInterface: ::std::option::Option<
24589 unsafe extern "C" fn(
24590 This: *mut IDXGIFactory5,
24591 Name: *const GUID,
24592 pUnknown: *const IUnknown,
24593 ) -> HRESULT,
24594 >,
24595 pub GetPrivateData: ::std::option::Option<
24596 unsafe extern "C" fn(
24597 This: *mut IDXGIFactory5,
24598 Name: *const GUID,
24599 pDataSize: *mut UINT,
24600 pData: *mut ::std::os::raw::c_void,
24601 ) -> HRESULT,
24602 >,
24603 pub GetParent: ::std::option::Option<
24604 unsafe extern "C" fn(
24605 This: *mut IDXGIFactory5,
24606 riid: *const IID,
24607 ppParent: *mut *mut ::std::os::raw::c_void,
24608 ) -> HRESULT,
24609 >,
24610 pub EnumAdapters: ::std::option::Option<
24611 unsafe extern "C" fn(
24612 This: *mut IDXGIFactory5,
24613 Adapter: UINT,
24614 ppAdapter: *mut *mut IDXGIAdapter,
24615 ) -> HRESULT,
24616 >,
24617 pub MakeWindowAssociation: ::std::option::Option<
24618 unsafe extern "C" fn(
24619 This: *mut IDXGIFactory5,
24620 WindowHandle: HWND,
24621 Flags: UINT,
24622 ) -> HRESULT,
24623 >,
24624 pub GetWindowAssociation: ::std::option::Option<
24625 unsafe extern "C" fn(
24626 This: *mut IDXGIFactory5,
24627 pWindowHandle: *mut HWND,
24628 ) -> HRESULT,
24629 >,
24630 pub CreateSwapChain: ::std::option::Option<
24631 unsafe extern "C" fn(
24632 This: *mut IDXGIFactory5,
24633 pDevice: *mut IUnknown,
24634 pDesc: *mut DXGI_SWAP_CHAIN_DESC,
24635 ppSwapChain: *mut *mut IDXGISwapChain,
24636 ) -> HRESULT,
24637 >,
24638 pub CreateSoftwareAdapter: ::std::option::Option<
24639 unsafe extern "C" fn(
24640 This: *mut IDXGIFactory5,
24641 Module: HMODULE,
24642 ppAdapter: *mut *mut IDXGIAdapter,
24643 ) -> HRESULT,
24644 >,
24645 pub EnumAdapters1: ::std::option::Option<
24646 unsafe extern "C" fn(
24647 This: *mut IDXGIFactory5,
24648 Adapter: UINT,
24649 ppAdapter: *mut *mut IDXGIAdapter1,
24650 ) -> HRESULT,
24651 >,
24652 pub IsCurrent: ::std::option::Option<
24653 unsafe extern "C" fn(This: *mut IDXGIFactory5) -> BOOL,
24654 >,
24655 pub IsWindowedStereoEnabled: ::std::option::Option<
24656 unsafe extern "C" fn(This: *mut IDXGIFactory5) -> BOOL,
24657 >,
24658 pub CreateSwapChainForHwnd: ::std::option::Option<
24659 unsafe extern "C" fn(
24660 This: *mut IDXGIFactory5,
24661 pDevice: *mut IUnknown,
24662 hWnd: HWND,
24663 pDesc: *const DXGI_SWAP_CHAIN_DESC1,
24664 pFullscreenDesc: *const DXGI_SWAP_CHAIN_FULLSCREEN_DESC,
24665 pRestrictToOutput: *mut IDXGIOutput,
24666 ppSwapChain: *mut *mut IDXGISwapChain1,
24667 ) -> HRESULT,
24668 >,
24669 pub CreateSwapChainForCoreWindow: ::std::option::Option<
24670 unsafe extern "C" fn(
24671 This: *mut IDXGIFactory5,
24672 pDevice: *mut IUnknown,
24673 pWindow: *mut IUnknown,
24674 pDesc: *const DXGI_SWAP_CHAIN_DESC1,
24675 pRestrictToOutput: *mut IDXGIOutput,
24676 ppSwapChain: *mut *mut IDXGISwapChain1,
24677 ) -> HRESULT,
24678 >,
24679 pub GetSharedResourceAdapterLuid: ::std::option::Option<
24680 unsafe extern "C" fn(
24681 This: *mut IDXGIFactory5,
24682 hResource: HANDLE,
24683 pLuid: *mut LUID,
24684 ) -> HRESULT,
24685 >,
24686 pub RegisterStereoStatusWindow: ::std::option::Option<
24687 unsafe extern "C" fn(
24688 This: *mut IDXGIFactory5,
24689 WindowHandle: HWND,
24690 wMsg: UINT,
24691 pdwCookie: *mut DWORD,
24692 ) -> HRESULT,
24693 >,
24694 pub RegisterStereoStatusEvent: ::std::option::Option<
24695 unsafe extern "C" fn(
24696 This: *mut IDXGIFactory5,
24697 hEvent: HANDLE,
24698 pdwCookie: *mut DWORD,
24699 ) -> HRESULT,
24700 >,
24701 pub UnregisterStereoStatus: ::std::option::Option<
24702 unsafe extern "C" fn(This: *mut IDXGIFactory5, dwCookie: DWORD),
24703 >,
24704 pub RegisterOcclusionStatusWindow: ::std::option::Option<
24705 unsafe extern "C" fn(
24706 This: *mut IDXGIFactory5,
24707 WindowHandle: HWND,
24708 wMsg: UINT,
24709 pdwCookie: *mut DWORD,
24710 ) -> HRESULT,
24711 >,
24712 pub RegisterOcclusionStatusEvent: ::std::option::Option<
24713 unsafe extern "C" fn(
24714 This: *mut IDXGIFactory5,
24715 hEvent: HANDLE,
24716 pdwCookie: *mut DWORD,
24717 ) -> HRESULT,
24718 >,
24719 pub UnregisterOcclusionStatus: ::std::option::Option<
24720 unsafe extern "C" fn(This: *mut IDXGIFactory5, dwCookie: DWORD),
24721 >,
24722 pub CreateSwapChainForComposition: ::std::option::Option<
24723 unsafe extern "C" fn(
24724 This: *mut IDXGIFactory5,
24725 pDevice: *mut IUnknown,
24726 pDesc: *const DXGI_SWAP_CHAIN_DESC1,
24727 pRestrictToOutput: *mut IDXGIOutput,
24728 ppSwapChain: *mut *mut IDXGISwapChain1,
24729 ) -> HRESULT,
24730 >,
24731 pub GetCreationFlags: ::std::option::Option<
24732 unsafe extern "C" fn(This: *mut IDXGIFactory5) -> UINT,
24733 >,
24734 pub EnumAdapterByLuid: ::std::option::Option<
24735 unsafe extern "C" fn(
24736 This: *mut IDXGIFactory5,
24737 AdapterLuid: LUID,
24738 riid: *const IID,
24739 ppvAdapter: *mut *mut ::std::os::raw::c_void,
24740 ) -> HRESULT,
24741 >,
24742 pub EnumWarpAdapter: ::std::option::Option<
24743 unsafe extern "C" fn(
24744 This: *mut IDXGIFactory5,
24745 riid: *const IID,
24746 ppvAdapter: *mut *mut ::std::os::raw::c_void,
24747 ) -> HRESULT,
24748 >,
24749 pub CheckFeatureSupport: ::std::option::Option<
24750 unsafe extern "C" fn(
24751 This: *mut IDXGIFactory5,
24752 Feature: DXGI_FEATURE,
24753 pFeatureSupportData: *mut ::std::os::raw::c_void,
24754 FeatureSupportDataSize: UINT,
24755 ) -> HRESULT,
24756 >,
24757}
24758#[repr(C)]
24759#[derive(Debug, Copy, Clone, Hash, PartialOrd, Ord, PartialEq, Eq)]
24760pub struct IDXGIFactory5 {
24761 pub lpVtbl: *mut IDXGIFactory5Vtbl,
24762}
24763impl Default for IDXGIFactory5 {
24764 fn default() -> Self {
24765 let mut s = ::std::mem::MaybeUninit::<Self>::uninit();
24766 unsafe {
24767 ::std::ptr::write_bytes(s.as_mut_ptr(), 0, 1);
24768 s.assume_init()
24769 }
24770 }
24771}
24772extern "C" {
24773 pub fn DXGIDeclareAdapterRemovalSupport() -> HRESULT;
24774}
24775pub const DXGI_ADAPTER_FLAG3_DXGI_ADAPTER_FLAG3_NONE: DXGI_ADAPTER_FLAG3 = 0;
24776pub const DXGI_ADAPTER_FLAG3_DXGI_ADAPTER_FLAG3_REMOTE: DXGI_ADAPTER_FLAG3 = 1;
24777pub const DXGI_ADAPTER_FLAG3_DXGI_ADAPTER_FLAG3_SOFTWARE: DXGI_ADAPTER_FLAG3 =
24778 2;
24779pub const DXGI_ADAPTER_FLAG3_DXGI_ADAPTER_FLAG3_ACG_COMPATIBLE:
24780 DXGI_ADAPTER_FLAG3 = 4;
24781pub const DXGI_ADAPTER_FLAG3_DXGI_ADAPTER_FLAG3_SUPPORT_MONITORED_FENCES:
24782 DXGI_ADAPTER_FLAG3 = 8;
24783pub const DXGI_ADAPTER_FLAG3_DXGI_ADAPTER_FLAG3_SUPPORT_NON_MONITORED_FENCES:
24784 DXGI_ADAPTER_FLAG3 = 16;
24785pub const DXGI_ADAPTER_FLAG3_DXGI_ADAPTER_FLAG3_KEYED_MUTEX_CONFORMANCE:
24786 DXGI_ADAPTER_FLAG3 = 32;
24787pub const DXGI_ADAPTER_FLAG3_DXGI_ADAPTER_FLAG3_FORCE_DWORD:
24788 DXGI_ADAPTER_FLAG3 = -1;
24789pub type DXGI_ADAPTER_FLAG3 = ::std::os::raw::c_int;
24790#[repr(C)]
24791#[derive(Debug, Copy, Clone, Hash, PartialOrd, Ord, PartialEq, Eq)]
24792pub struct DXGI_ADAPTER_DESC3 {
24793 pub Description: [WCHAR; 128usize],
24794 pub VendorId: UINT,
24795 pub DeviceId: UINT,
24796 pub SubSysId: UINT,
24797 pub Revision: UINT,
24798 pub DedicatedVideoMemory: SIZE_T,
24799 pub DedicatedSystemMemory: SIZE_T,
24800 pub SharedSystemMemory: SIZE_T,
24801 pub AdapterLuid: LUID,
24802 pub Flags: DXGI_ADAPTER_FLAG3,
24803 pub GraphicsPreemptionGranularity: DXGI_GRAPHICS_PREEMPTION_GRANULARITY,
24804 pub ComputePreemptionGranularity: DXGI_COMPUTE_PREEMPTION_GRANULARITY,
24805}
24806impl Default for DXGI_ADAPTER_DESC3 {
24807 fn default() -> Self {
24808 let mut s = ::std::mem::MaybeUninit::<Self>::uninit();
24809 unsafe {
24810 ::std::ptr::write_bytes(s.as_mut_ptr(), 0, 1);
24811 s.assume_init()
24812 }
24813 }
24814}
24815extern "C" {
24816 pub static IID_IDXGIAdapter4: IID;
24817}
24818#[repr(C)]
24819#[derive(Debug, Default, Copy, Clone, Hash, PartialOrd, Ord, PartialEq, Eq)]
24820pub struct IDXGIAdapter4Vtbl {
24821 pub QueryInterface: ::std::option::Option<
24822 unsafe extern "C" fn(
24823 This: *mut IDXGIAdapter4,
24824 riid: *const IID,
24825 ppvObject: *mut *mut ::std::os::raw::c_void,
24826 ) -> HRESULT,
24827 >,
24828 pub AddRef: ::std::option::Option<
24829 unsafe extern "C" fn(This: *mut IDXGIAdapter4) -> ULONG,
24830 >,
24831 pub Release: ::std::option::Option<
24832 unsafe extern "C" fn(This: *mut IDXGIAdapter4) -> ULONG,
24833 >,
24834 pub SetPrivateData: ::std::option::Option<
24835 unsafe extern "C" fn(
24836 This: *mut IDXGIAdapter4,
24837 Name: *const GUID,
24838 DataSize: UINT,
24839 pData: *const ::std::os::raw::c_void,
24840 ) -> HRESULT,
24841 >,
24842 pub SetPrivateDataInterface: ::std::option::Option<
24843 unsafe extern "C" fn(
24844 This: *mut IDXGIAdapter4,
24845 Name: *const GUID,
24846 pUnknown: *const IUnknown,
24847 ) -> HRESULT,
24848 >,
24849 pub GetPrivateData: ::std::option::Option<
24850 unsafe extern "C" fn(
24851 This: *mut IDXGIAdapter4,
24852 Name: *const GUID,
24853 pDataSize: *mut UINT,
24854 pData: *mut ::std::os::raw::c_void,
24855 ) -> HRESULT,
24856 >,
24857 pub GetParent: ::std::option::Option<
24858 unsafe extern "C" fn(
24859 This: *mut IDXGIAdapter4,
24860 riid: *const IID,
24861 ppParent: *mut *mut ::std::os::raw::c_void,
24862 ) -> HRESULT,
24863 >,
24864 pub EnumOutputs: ::std::option::Option<
24865 unsafe extern "C" fn(
24866 This: *mut IDXGIAdapter4,
24867 Output: UINT,
24868 ppOutput: *mut *mut IDXGIOutput,
24869 ) -> HRESULT,
24870 >,
24871 pub GetDesc: ::std::option::Option<
24872 unsafe extern "C" fn(
24873 This: *mut IDXGIAdapter4,
24874 pDesc: *mut DXGI_ADAPTER_DESC,
24875 ) -> HRESULT,
24876 >,
24877 pub CheckInterfaceSupport: ::std::option::Option<
24878 unsafe extern "C" fn(
24879 This: *mut IDXGIAdapter4,
24880 InterfaceName: *const GUID,
24881 pUMDVersion: *mut LARGE_INTEGER,
24882 ) -> HRESULT,
24883 >,
24884 pub GetDesc1: ::std::option::Option<
24885 unsafe extern "C" fn(
24886 This: *mut IDXGIAdapter4,
24887 pDesc: *mut DXGI_ADAPTER_DESC1,
24888 ) -> HRESULT,
24889 >,
24890 pub GetDesc2: ::std::option::Option<
24891 unsafe extern "C" fn(
24892 This: *mut IDXGIAdapter4,
24893 pDesc: *mut DXGI_ADAPTER_DESC2,
24894 ) -> HRESULT,
24895 >,
24896 pub RegisterHardwareContentProtectionTeardownStatusEvent:
24897 ::std::option::Option<
24898 unsafe extern "C" fn(
24899 This: *mut IDXGIAdapter4,
24900 hEvent: HANDLE,
24901 pdwCookie: *mut DWORD,
24902 ) -> HRESULT,
24903 >,
24904 pub UnregisterHardwareContentProtectionTeardownStatus:
24905 ::std::option::Option<
24906 unsafe extern "C" fn(This: *mut IDXGIAdapter4, dwCookie: DWORD),
24907 >,
24908 pub QueryVideoMemoryInfo: ::std::option::Option<
24909 unsafe extern "C" fn(
24910 This: *mut IDXGIAdapter4,
24911 NodeIndex: UINT,
24912 MemorySegmentGroup: DXGI_MEMORY_SEGMENT_GROUP,
24913 pVideoMemoryInfo: *mut DXGI_QUERY_VIDEO_MEMORY_INFO,
24914 ) -> HRESULT,
24915 >,
24916 pub SetVideoMemoryReservation: ::std::option::Option<
24917 unsafe extern "C" fn(
24918 This: *mut IDXGIAdapter4,
24919 NodeIndex: UINT,
24920 MemorySegmentGroup: DXGI_MEMORY_SEGMENT_GROUP,
24921 Reservation: UINT64,
24922 ) -> HRESULT,
24923 >,
24924 pub RegisterVideoMemoryBudgetChangeNotificationEvent: ::std::option::Option<
24925 unsafe extern "C" fn(
24926 This: *mut IDXGIAdapter4,
24927 hEvent: HANDLE,
24928 pdwCookie: *mut DWORD,
24929 ) -> HRESULT,
24930 >,
24931 pub UnregisterVideoMemoryBudgetChangeNotification: ::std::option::Option<
24932 unsafe extern "C" fn(This: *mut IDXGIAdapter4, dwCookie: DWORD),
24933 >,
24934 pub GetDesc3: ::std::option::Option<
24935 unsafe extern "C" fn(
24936 This: *mut IDXGIAdapter4,
24937 pDesc: *mut DXGI_ADAPTER_DESC3,
24938 ) -> HRESULT,
24939 >,
24940}
24941#[repr(C)]
24942#[derive(Debug, Copy, Clone, Hash, PartialOrd, Ord, PartialEq, Eq)]
24943pub struct IDXGIAdapter4 {
24944 pub lpVtbl: *mut IDXGIAdapter4Vtbl,
24945}
24946impl Default for IDXGIAdapter4 {
24947 fn default() -> Self {
24948 let mut s = ::std::mem::MaybeUninit::<Self>::uninit();
24949 unsafe {
24950 ::std::ptr::write_bytes(s.as_mut_ptr(), 0, 1);
24951 s.assume_init()
24952 }
24953 }
24954}
24955#[repr(C)]
24956#[derive(Debug, Copy, Clone, PartialOrd, PartialEq)]
24957pub struct DXGI_OUTPUT_DESC1 {
24958 pub DeviceName: [WCHAR; 32usize],
24959 pub DesktopCoordinates: RECT,
24960 pub AttachedToDesktop: BOOL,
24961 pub Rotation: DXGI_MODE_ROTATION,
24962 pub Monitor: HMONITOR,
24963 pub BitsPerColor: UINT,
24964 pub ColorSpace: DXGI_COLOR_SPACE_TYPE,
24965 pub RedPrimary: [FLOAT; 2usize],
24966 pub GreenPrimary: [FLOAT; 2usize],
24967 pub BluePrimary: [FLOAT; 2usize],
24968 pub WhitePoint: [FLOAT; 2usize],
24969 pub MinLuminance: FLOAT,
24970 pub MaxLuminance: FLOAT,
24971 pub MaxFullFrameLuminance: FLOAT,
24972}
24973impl Default for DXGI_OUTPUT_DESC1 {
24974 fn default() -> Self {
24975 let mut s = ::std::mem::MaybeUninit::<Self>::uninit();
24976 unsafe {
24977 ::std::ptr::write_bytes(s.as_mut_ptr(), 0, 1);
24978 s.assume_init()
24979 }
24980 }
24981}
24982pub const DXGI_HARDWARE_COMPOSITION_SUPPORT_FLAGS_DXGI_HARDWARE_COMPOSITION_SUPPORT_FLAG_FULLSCREEN : DXGI_HARDWARE_COMPOSITION_SUPPORT_FLAGS = 1 ;
24983pub const DXGI_HARDWARE_COMPOSITION_SUPPORT_FLAGS_DXGI_HARDWARE_COMPOSITION_SUPPORT_FLAG_WINDOWED : DXGI_HARDWARE_COMPOSITION_SUPPORT_FLAGS = 2 ;
24984pub const DXGI_HARDWARE_COMPOSITION_SUPPORT_FLAGS_DXGI_HARDWARE_COMPOSITION_SUPPORT_FLAG_CURSOR_STRETCHED : DXGI_HARDWARE_COMPOSITION_SUPPORT_FLAGS = 4 ;
24985pub type DXGI_HARDWARE_COMPOSITION_SUPPORT_FLAGS = ::std::os::raw::c_int;
24986extern "C" {
24987 pub static IID_IDXGIOutput6: IID;
24988}
24989#[repr(C)]
24990#[derive(Debug, Default, Copy, Clone, Hash, PartialOrd, Ord, PartialEq, Eq)]
24991pub struct IDXGIOutput6Vtbl {
24992 pub QueryInterface: ::std::option::Option<
24993 unsafe extern "C" fn(
24994 This: *mut IDXGIOutput6,
24995 riid: *const IID,
24996 ppvObject: *mut *mut ::std::os::raw::c_void,
24997 ) -> HRESULT,
24998 >,
24999 pub AddRef: ::std::option::Option<
25000 unsafe extern "C" fn(This: *mut IDXGIOutput6) -> ULONG,
25001 >,
25002 pub Release: ::std::option::Option<
25003 unsafe extern "C" fn(This: *mut IDXGIOutput6) -> ULONG,
25004 >,
25005 pub SetPrivateData: ::std::option::Option<
25006 unsafe extern "C" fn(
25007 This: *mut IDXGIOutput6,
25008 Name: *const GUID,
25009 DataSize: UINT,
25010 pData: *const ::std::os::raw::c_void,
25011 ) -> HRESULT,
25012 >,
25013 pub SetPrivateDataInterface: ::std::option::Option<
25014 unsafe extern "C" fn(
25015 This: *mut IDXGIOutput6,
25016 Name: *const GUID,
25017 pUnknown: *const IUnknown,
25018 ) -> HRESULT,
25019 >,
25020 pub GetPrivateData: ::std::option::Option<
25021 unsafe extern "C" fn(
25022 This: *mut IDXGIOutput6,
25023 Name: *const GUID,
25024 pDataSize: *mut UINT,
25025 pData: *mut ::std::os::raw::c_void,
25026 ) -> HRESULT,
25027 >,
25028 pub GetParent: ::std::option::Option<
25029 unsafe extern "C" fn(
25030 This: *mut IDXGIOutput6,
25031 riid: *const IID,
25032 ppParent: *mut *mut ::std::os::raw::c_void,
25033 ) -> HRESULT,
25034 >,
25035 pub GetDesc: ::std::option::Option<
25036 unsafe extern "C" fn(
25037 This: *mut IDXGIOutput6,
25038 pDesc: *mut DXGI_OUTPUT_DESC,
25039 ) -> HRESULT,
25040 >,
25041 pub GetDisplayModeList: ::std::option::Option<
25042 unsafe extern "C" fn(
25043 This: *mut IDXGIOutput6,
25044 EnumFormat: DXGI_FORMAT,
25045 Flags: UINT,
25046 pNumModes: *mut UINT,
25047 pDesc: *mut DXGI_MODE_DESC,
25048 ) -> HRESULT,
25049 >,
25050 pub FindClosestMatchingMode: ::std::option::Option<
25051 unsafe extern "C" fn(
25052 This: *mut IDXGIOutput6,
25053 pModeToMatch: *const DXGI_MODE_DESC,
25054 pClosestMatch: *mut DXGI_MODE_DESC,
25055 pConcernedDevice: *mut IUnknown,
25056 ) -> HRESULT,
25057 >,
25058 pub WaitForVBlank: ::std::option::Option<
25059 unsafe extern "C" fn(This: *mut IDXGIOutput6) -> HRESULT,
25060 >,
25061 pub TakeOwnership: ::std::option::Option<
25062 unsafe extern "C" fn(
25063 This: *mut IDXGIOutput6,
25064 pDevice: *mut IUnknown,
25065 Exclusive: BOOL,
25066 ) -> HRESULT,
25067 >,
25068 pub ReleaseOwnership:
25069 ::std::option::Option<unsafe extern "C" fn(This: *mut IDXGIOutput6)>,
25070 pub GetGammaControlCapabilities: ::std::option::Option<
25071 unsafe extern "C" fn(
25072 This: *mut IDXGIOutput6,
25073 pGammaCaps: *mut DXGI_GAMMA_CONTROL_CAPABILITIES,
25074 ) -> HRESULT,
25075 >,
25076 pub SetGammaControl: ::std::option::Option<
25077 unsafe extern "C" fn(
25078 This: *mut IDXGIOutput6,
25079 pArray: *const DXGI_GAMMA_CONTROL,
25080 ) -> HRESULT,
25081 >,
25082 pub GetGammaControl: ::std::option::Option<
25083 unsafe extern "C" fn(
25084 This: *mut IDXGIOutput6,
25085 pArray: *mut DXGI_GAMMA_CONTROL,
25086 ) -> HRESULT,
25087 >,
25088 pub SetDisplaySurface: ::std::option::Option<
25089 unsafe extern "C" fn(
25090 This: *mut IDXGIOutput6,
25091 pScanoutSurface: *mut IDXGISurface,
25092 ) -> HRESULT,
25093 >,
25094 pub GetDisplaySurfaceData: ::std::option::Option<
25095 unsafe extern "C" fn(
25096 This: *mut IDXGIOutput6,
25097 pDestination: *mut IDXGISurface,
25098 ) -> HRESULT,
25099 >,
25100 pub GetFrameStatistics: ::std::option::Option<
25101 unsafe extern "C" fn(
25102 This: *mut IDXGIOutput6,
25103 pStats: *mut DXGI_FRAME_STATISTICS,
25104 ) -> HRESULT,
25105 >,
25106 pub GetDisplayModeList1: ::std::option::Option<
25107 unsafe extern "C" fn(
25108 This: *mut IDXGIOutput6,
25109 EnumFormat: DXGI_FORMAT,
25110 Flags: UINT,
25111 pNumModes: *mut UINT,
25112 pDesc: *mut DXGI_MODE_DESC1,
25113 ) -> HRESULT,
25114 >,
25115 pub FindClosestMatchingMode1: ::std::option::Option<
25116 unsafe extern "C" fn(
25117 This: *mut IDXGIOutput6,
25118 pModeToMatch: *const DXGI_MODE_DESC1,
25119 pClosestMatch: *mut DXGI_MODE_DESC1,
25120 pConcernedDevice: *mut IUnknown,
25121 ) -> HRESULT,
25122 >,
25123 pub GetDisplaySurfaceData1: ::std::option::Option<
25124 unsafe extern "C" fn(
25125 This: *mut IDXGIOutput6,
25126 pDestination: *mut IDXGIResource,
25127 ) -> HRESULT,
25128 >,
25129 pub DuplicateOutput: ::std::option::Option<
25130 unsafe extern "C" fn(
25131 This: *mut IDXGIOutput6,
25132 pDevice: *mut IUnknown,
25133 ppOutputDuplication: *mut *mut IDXGIOutputDuplication,
25134 ) -> HRESULT,
25135 >,
25136 pub SupportsOverlays: ::std::option::Option<
25137 unsafe extern "C" fn(This: *mut IDXGIOutput6) -> BOOL,
25138 >,
25139 pub CheckOverlaySupport: ::std::option::Option<
25140 unsafe extern "C" fn(
25141 This: *mut IDXGIOutput6,
25142 EnumFormat: DXGI_FORMAT,
25143 pConcernedDevice: *mut IUnknown,
25144 pFlags: *mut UINT,
25145 ) -> HRESULT,
25146 >,
25147 pub CheckOverlayColorSpaceSupport: ::std::option::Option<
25148 unsafe extern "C" fn(
25149 This: *mut IDXGIOutput6,
25150 Format: DXGI_FORMAT,
25151 ColorSpace: DXGI_COLOR_SPACE_TYPE,
25152 pConcernedDevice: *mut IUnknown,
25153 pFlags: *mut UINT,
25154 ) -> HRESULT,
25155 >,
25156 pub DuplicateOutput1: ::std::option::Option<
25157 unsafe extern "C" fn(
25158 This: *mut IDXGIOutput6,
25159 pDevice: *mut IUnknown,
25160 Flags: UINT,
25161 SupportedFormatsCount: UINT,
25162 pSupportedFormats: *const DXGI_FORMAT,
25163 ppOutputDuplication: *mut *mut IDXGIOutputDuplication,
25164 ) -> HRESULT,
25165 >,
25166 pub GetDesc1: ::std::option::Option<
25167 unsafe extern "C" fn(
25168 This: *mut IDXGIOutput6,
25169 pDesc: *mut DXGI_OUTPUT_DESC1,
25170 ) -> HRESULT,
25171 >,
25172 pub CheckHardwareCompositionSupport: ::std::option::Option<
25173 unsafe extern "C" fn(
25174 This: *mut IDXGIOutput6,
25175 pFlags: *mut UINT,
25176 ) -> HRESULT,
25177 >,
25178}
25179#[repr(C)]
25180#[derive(Debug, Copy, Clone, Hash, PartialOrd, Ord, PartialEq, Eq)]
25181pub struct IDXGIOutput6 {
25182 pub lpVtbl: *mut IDXGIOutput6Vtbl,
25183}
25184impl Default for IDXGIOutput6 {
25185 fn default() -> Self {
25186 let mut s = ::std::mem::MaybeUninit::<Self>::uninit();
25187 unsafe {
25188 ::std::ptr::write_bytes(s.as_mut_ptr(), 0, 1);
25189 s.assume_init()
25190 }
25191 }
25192}
25193pub const DXGI_GPU_PREFERENCE_DXGI_GPU_PREFERENCE_UNSPECIFIED:
25194 DXGI_GPU_PREFERENCE = 0;
25195pub const DXGI_GPU_PREFERENCE_DXGI_GPU_PREFERENCE_MINIMUM_POWER:
25196 DXGI_GPU_PREFERENCE = 1;
25197pub const DXGI_GPU_PREFERENCE_DXGI_GPU_PREFERENCE_HIGH_PERFORMANCE:
25198 DXGI_GPU_PREFERENCE = 2;
25199pub type DXGI_GPU_PREFERENCE = ::std::os::raw::c_int;
25200extern "C" {
25201 pub static IID_IDXGIFactory6: IID;
25202}
25203#[repr(C)]
25204#[derive(Debug, Default, Copy, Clone, Hash, PartialOrd, Ord, PartialEq, Eq)]
25205pub struct IDXGIFactory6Vtbl {
25206 pub QueryInterface: ::std::option::Option<
25207 unsafe extern "C" fn(
25208 This: *mut IDXGIFactory6,
25209 riid: *const IID,
25210 ppvObject: *mut *mut ::std::os::raw::c_void,
25211 ) -> HRESULT,
25212 >,
25213 pub AddRef: ::std::option::Option<
25214 unsafe extern "C" fn(This: *mut IDXGIFactory6) -> ULONG,
25215 >,
25216 pub Release: ::std::option::Option<
25217 unsafe extern "C" fn(This: *mut IDXGIFactory6) -> ULONG,
25218 >,
25219 pub SetPrivateData: ::std::option::Option<
25220 unsafe extern "C" fn(
25221 This: *mut IDXGIFactory6,
25222 Name: *const GUID,
25223 DataSize: UINT,
25224 pData: *const ::std::os::raw::c_void,
25225 ) -> HRESULT,
25226 >,
25227 pub SetPrivateDataInterface: ::std::option::Option<
25228 unsafe extern "C" fn(
25229 This: *mut IDXGIFactory6,
25230 Name: *const GUID,
25231 pUnknown: *const IUnknown,
25232 ) -> HRESULT,
25233 >,
25234 pub GetPrivateData: ::std::option::Option<
25235 unsafe extern "C" fn(
25236 This: *mut IDXGIFactory6,
25237 Name: *const GUID,
25238 pDataSize: *mut UINT,
25239 pData: *mut ::std::os::raw::c_void,
25240 ) -> HRESULT,
25241 >,
25242 pub GetParent: ::std::option::Option<
25243 unsafe extern "C" fn(
25244 This: *mut IDXGIFactory6,
25245 riid: *const IID,
25246 ppParent: *mut *mut ::std::os::raw::c_void,
25247 ) -> HRESULT,
25248 >,
25249 pub EnumAdapters: ::std::option::Option<
25250 unsafe extern "C" fn(
25251 This: *mut IDXGIFactory6,
25252 Adapter: UINT,
25253 ppAdapter: *mut *mut IDXGIAdapter,
25254 ) -> HRESULT,
25255 >,
25256 pub MakeWindowAssociation: ::std::option::Option<
25257 unsafe extern "C" fn(
25258 This: *mut IDXGIFactory6,
25259 WindowHandle: HWND,
25260 Flags: UINT,
25261 ) -> HRESULT,
25262 >,
25263 pub GetWindowAssociation: ::std::option::Option<
25264 unsafe extern "C" fn(
25265 This: *mut IDXGIFactory6,
25266 pWindowHandle: *mut HWND,
25267 ) -> HRESULT,
25268 >,
25269 pub CreateSwapChain: ::std::option::Option<
25270 unsafe extern "C" fn(
25271 This: *mut IDXGIFactory6,
25272 pDevice: *mut IUnknown,
25273 pDesc: *mut DXGI_SWAP_CHAIN_DESC,
25274 ppSwapChain: *mut *mut IDXGISwapChain,
25275 ) -> HRESULT,
25276 >,
25277 pub CreateSoftwareAdapter: ::std::option::Option<
25278 unsafe extern "C" fn(
25279 This: *mut IDXGIFactory6,
25280 Module: HMODULE,
25281 ppAdapter: *mut *mut IDXGIAdapter,
25282 ) -> HRESULT,
25283 >,
25284 pub EnumAdapters1: ::std::option::Option<
25285 unsafe extern "C" fn(
25286 This: *mut IDXGIFactory6,
25287 Adapter: UINT,
25288 ppAdapter: *mut *mut IDXGIAdapter1,
25289 ) -> HRESULT,
25290 >,
25291 pub IsCurrent: ::std::option::Option<
25292 unsafe extern "C" fn(This: *mut IDXGIFactory6) -> BOOL,
25293 >,
25294 pub IsWindowedStereoEnabled: ::std::option::Option<
25295 unsafe extern "C" fn(This: *mut IDXGIFactory6) -> BOOL,
25296 >,
25297 pub CreateSwapChainForHwnd: ::std::option::Option<
25298 unsafe extern "C" fn(
25299 This: *mut IDXGIFactory6,
25300 pDevice: *mut IUnknown,
25301 hWnd: HWND,
25302 pDesc: *const DXGI_SWAP_CHAIN_DESC1,
25303 pFullscreenDesc: *const DXGI_SWAP_CHAIN_FULLSCREEN_DESC,
25304 pRestrictToOutput: *mut IDXGIOutput,
25305 ppSwapChain: *mut *mut IDXGISwapChain1,
25306 ) -> HRESULT,
25307 >,
25308 pub CreateSwapChainForCoreWindow: ::std::option::Option<
25309 unsafe extern "C" fn(
25310 This: *mut IDXGIFactory6,
25311 pDevice: *mut IUnknown,
25312 pWindow: *mut IUnknown,
25313 pDesc: *const DXGI_SWAP_CHAIN_DESC1,
25314 pRestrictToOutput: *mut IDXGIOutput,
25315 ppSwapChain: *mut *mut IDXGISwapChain1,
25316 ) -> HRESULT,
25317 >,
25318 pub GetSharedResourceAdapterLuid: ::std::option::Option<
25319 unsafe extern "C" fn(
25320 This: *mut IDXGIFactory6,
25321 hResource: HANDLE,
25322 pLuid: *mut LUID,
25323 ) -> HRESULT,
25324 >,
25325 pub RegisterStereoStatusWindow: ::std::option::Option<
25326 unsafe extern "C" fn(
25327 This: *mut IDXGIFactory6,
25328 WindowHandle: HWND,
25329 wMsg: UINT,
25330 pdwCookie: *mut DWORD,
25331 ) -> HRESULT,
25332 >,
25333 pub RegisterStereoStatusEvent: ::std::option::Option<
25334 unsafe extern "C" fn(
25335 This: *mut IDXGIFactory6,
25336 hEvent: HANDLE,
25337 pdwCookie: *mut DWORD,
25338 ) -> HRESULT,
25339 >,
25340 pub UnregisterStereoStatus: ::std::option::Option<
25341 unsafe extern "C" fn(This: *mut IDXGIFactory6, dwCookie: DWORD),
25342 >,
25343 pub RegisterOcclusionStatusWindow: ::std::option::Option<
25344 unsafe extern "C" fn(
25345 This: *mut IDXGIFactory6,
25346 WindowHandle: HWND,
25347 wMsg: UINT,
25348 pdwCookie: *mut DWORD,
25349 ) -> HRESULT,
25350 >,
25351 pub RegisterOcclusionStatusEvent: ::std::option::Option<
25352 unsafe extern "C" fn(
25353 This: *mut IDXGIFactory6,
25354 hEvent: HANDLE,
25355 pdwCookie: *mut DWORD,
25356 ) -> HRESULT,
25357 >,
25358 pub UnregisterOcclusionStatus: ::std::option::Option<
25359 unsafe extern "C" fn(This: *mut IDXGIFactory6, dwCookie: DWORD),
25360 >,
25361 pub CreateSwapChainForComposition: ::std::option::Option<
25362 unsafe extern "C" fn(
25363 This: *mut IDXGIFactory6,
25364 pDevice: *mut IUnknown,
25365 pDesc: *const DXGI_SWAP_CHAIN_DESC1,
25366 pRestrictToOutput: *mut IDXGIOutput,
25367 ppSwapChain: *mut *mut IDXGISwapChain1,
25368 ) -> HRESULT,
25369 >,
25370 pub GetCreationFlags: ::std::option::Option<
25371 unsafe extern "C" fn(This: *mut IDXGIFactory6) -> UINT,
25372 >,
25373 pub EnumAdapterByLuid: ::std::option::Option<
25374 unsafe extern "C" fn(
25375 This: *mut IDXGIFactory6,
25376 AdapterLuid: LUID,
25377 riid: *const IID,
25378 ppvAdapter: *mut *mut ::std::os::raw::c_void,
25379 ) -> HRESULT,
25380 >,
25381 pub EnumWarpAdapter: ::std::option::Option<
25382 unsafe extern "C" fn(
25383 This: *mut IDXGIFactory6,
25384 riid: *const IID,
25385 ppvAdapter: *mut *mut ::std::os::raw::c_void,
25386 ) -> HRESULT,
25387 >,
25388 pub CheckFeatureSupport: ::std::option::Option<
25389 unsafe extern "C" fn(
25390 This: *mut IDXGIFactory6,
25391 Feature: DXGI_FEATURE,
25392 pFeatureSupportData: *mut ::std::os::raw::c_void,
25393 FeatureSupportDataSize: UINT,
25394 ) -> HRESULT,
25395 >,
25396 pub EnumAdapterByGpuPreference: ::std::option::Option<
25397 unsafe extern "C" fn(
25398 This: *mut IDXGIFactory6,
25399 Adapter: UINT,
25400 GpuPreference: DXGI_GPU_PREFERENCE,
25401 riid: *const IID,
25402 ppvAdapter: *mut *mut ::std::os::raw::c_void,
25403 ) -> HRESULT,
25404 >,
25405}
25406#[repr(C)]
25407#[derive(Debug, Copy, Clone, Hash, PartialOrd, Ord, PartialEq, Eq)]
25408pub struct IDXGIFactory6 {
25409 pub lpVtbl: *mut IDXGIFactory6Vtbl,
25410}
25411impl Default for IDXGIFactory6 {
25412 fn default() -> Self {
25413 let mut s = ::std::mem::MaybeUninit::<Self>::uninit();
25414 unsafe {
25415 ::std::ptr::write_bytes(s.as_mut_ptr(), 0, 1);
25416 s.assume_init()
25417 }
25418 }
25419}
25420extern "C" {
25421 pub static IID_IDXGIFactory7: IID;
25422}
25423#[repr(C)]
25424#[derive(Debug, Default, Copy, Clone, Hash, PartialOrd, Ord, PartialEq, Eq)]
25425pub struct IDXGIFactory7Vtbl {
25426 pub QueryInterface: ::std::option::Option<
25427 unsafe extern "C" fn(
25428 This: *mut IDXGIFactory7,
25429 riid: *const IID,
25430 ppvObject: *mut *mut ::std::os::raw::c_void,
25431 ) -> HRESULT,
25432 >,
25433 pub AddRef: ::std::option::Option<
25434 unsafe extern "C" fn(This: *mut IDXGIFactory7) -> ULONG,
25435 >,
25436 pub Release: ::std::option::Option<
25437 unsafe extern "C" fn(This: *mut IDXGIFactory7) -> ULONG,
25438 >,
25439 pub SetPrivateData: ::std::option::Option<
25440 unsafe extern "C" fn(
25441 This: *mut IDXGIFactory7,
25442 Name: *const GUID,
25443 DataSize: UINT,
25444 pData: *const ::std::os::raw::c_void,
25445 ) -> HRESULT,
25446 >,
25447 pub SetPrivateDataInterface: ::std::option::Option<
25448 unsafe extern "C" fn(
25449 This: *mut IDXGIFactory7,
25450 Name: *const GUID,
25451 pUnknown: *const IUnknown,
25452 ) -> HRESULT,
25453 >,
25454 pub GetPrivateData: ::std::option::Option<
25455 unsafe extern "C" fn(
25456 This: *mut IDXGIFactory7,
25457 Name: *const GUID,
25458 pDataSize: *mut UINT,
25459 pData: *mut ::std::os::raw::c_void,
25460 ) -> HRESULT,
25461 >,
25462 pub GetParent: ::std::option::Option<
25463 unsafe extern "C" fn(
25464 This: *mut IDXGIFactory7,
25465 riid: *const IID,
25466 ppParent: *mut *mut ::std::os::raw::c_void,
25467 ) -> HRESULT,
25468 >,
25469 pub EnumAdapters: ::std::option::Option<
25470 unsafe extern "C" fn(
25471 This: *mut IDXGIFactory7,
25472 Adapter: UINT,
25473 ppAdapter: *mut *mut IDXGIAdapter,
25474 ) -> HRESULT,
25475 >,
25476 pub MakeWindowAssociation: ::std::option::Option<
25477 unsafe extern "C" fn(
25478 This: *mut IDXGIFactory7,
25479 WindowHandle: HWND,
25480 Flags: UINT,
25481 ) -> HRESULT,
25482 >,
25483 pub GetWindowAssociation: ::std::option::Option<
25484 unsafe extern "C" fn(
25485 This: *mut IDXGIFactory7,
25486 pWindowHandle: *mut HWND,
25487 ) -> HRESULT,
25488 >,
25489 pub CreateSwapChain: ::std::option::Option<
25490 unsafe extern "C" fn(
25491 This: *mut IDXGIFactory7,
25492 pDevice: *mut IUnknown,
25493 pDesc: *mut DXGI_SWAP_CHAIN_DESC,
25494 ppSwapChain: *mut *mut IDXGISwapChain,
25495 ) -> HRESULT,
25496 >,
25497 pub CreateSoftwareAdapter: ::std::option::Option<
25498 unsafe extern "C" fn(
25499 This: *mut IDXGIFactory7,
25500 Module: HMODULE,
25501 ppAdapter: *mut *mut IDXGIAdapter,
25502 ) -> HRESULT,
25503 >,
25504 pub EnumAdapters1: ::std::option::Option<
25505 unsafe extern "C" fn(
25506 This: *mut IDXGIFactory7,
25507 Adapter: UINT,
25508 ppAdapter: *mut *mut IDXGIAdapter1,
25509 ) -> HRESULT,
25510 >,
25511 pub IsCurrent: ::std::option::Option<
25512 unsafe extern "C" fn(This: *mut IDXGIFactory7) -> BOOL,
25513 >,
25514 pub IsWindowedStereoEnabled: ::std::option::Option<
25515 unsafe extern "C" fn(This: *mut IDXGIFactory7) -> BOOL,
25516 >,
25517 pub CreateSwapChainForHwnd: ::std::option::Option<
25518 unsafe extern "C" fn(
25519 This: *mut IDXGIFactory7,
25520 pDevice: *mut IUnknown,
25521 hWnd: HWND,
25522 pDesc: *const DXGI_SWAP_CHAIN_DESC1,
25523 pFullscreenDesc: *const DXGI_SWAP_CHAIN_FULLSCREEN_DESC,
25524 pRestrictToOutput: *mut IDXGIOutput,
25525 ppSwapChain: *mut *mut IDXGISwapChain1,
25526 ) -> HRESULT,
25527 >,
25528 pub CreateSwapChainForCoreWindow: ::std::option::Option<
25529 unsafe extern "C" fn(
25530 This: *mut IDXGIFactory7,
25531 pDevice: *mut IUnknown,
25532 pWindow: *mut IUnknown,
25533 pDesc: *const DXGI_SWAP_CHAIN_DESC1,
25534 pRestrictToOutput: *mut IDXGIOutput,
25535 ppSwapChain: *mut *mut IDXGISwapChain1,
25536 ) -> HRESULT,
25537 >,
25538 pub GetSharedResourceAdapterLuid: ::std::option::Option<
25539 unsafe extern "C" fn(
25540 This: *mut IDXGIFactory7,
25541 hResource: HANDLE,
25542 pLuid: *mut LUID,
25543 ) -> HRESULT,
25544 >,
25545 pub RegisterStereoStatusWindow: ::std::option::Option<
25546 unsafe extern "C" fn(
25547 This: *mut IDXGIFactory7,
25548 WindowHandle: HWND,
25549 wMsg: UINT,
25550 pdwCookie: *mut DWORD,
25551 ) -> HRESULT,
25552 >,
25553 pub RegisterStereoStatusEvent: ::std::option::Option<
25554 unsafe extern "C" fn(
25555 This: *mut IDXGIFactory7,
25556 hEvent: HANDLE,
25557 pdwCookie: *mut DWORD,
25558 ) -> HRESULT,
25559 >,
25560 pub UnregisterStereoStatus: ::std::option::Option<
25561 unsafe extern "C" fn(This: *mut IDXGIFactory7, dwCookie: DWORD),
25562 >,
25563 pub RegisterOcclusionStatusWindow: ::std::option::Option<
25564 unsafe extern "C" fn(
25565 This: *mut IDXGIFactory7,
25566 WindowHandle: HWND,
25567 wMsg: UINT,
25568 pdwCookie: *mut DWORD,
25569 ) -> HRESULT,
25570 >,
25571 pub RegisterOcclusionStatusEvent: ::std::option::Option<
25572 unsafe extern "C" fn(
25573 This: *mut IDXGIFactory7,
25574 hEvent: HANDLE,
25575 pdwCookie: *mut DWORD,
25576 ) -> HRESULT,
25577 >,
25578 pub UnregisterOcclusionStatus: ::std::option::Option<
25579 unsafe extern "C" fn(This: *mut IDXGIFactory7, dwCookie: DWORD),
25580 >,
25581 pub CreateSwapChainForComposition: ::std::option::Option<
25582 unsafe extern "C" fn(
25583 This: *mut IDXGIFactory7,
25584 pDevice: *mut IUnknown,
25585 pDesc: *const DXGI_SWAP_CHAIN_DESC1,
25586 pRestrictToOutput: *mut IDXGIOutput,
25587 ppSwapChain: *mut *mut IDXGISwapChain1,
25588 ) -> HRESULT,
25589 >,
25590 pub GetCreationFlags: ::std::option::Option<
25591 unsafe extern "C" fn(This: *mut IDXGIFactory7) -> UINT,
25592 >,
25593 pub EnumAdapterByLuid: ::std::option::Option<
25594 unsafe extern "C" fn(
25595 This: *mut IDXGIFactory7,
25596 AdapterLuid: LUID,
25597 riid: *const IID,
25598 ppvAdapter: *mut *mut ::std::os::raw::c_void,
25599 ) -> HRESULT,
25600 >,
25601 pub EnumWarpAdapter: ::std::option::Option<
25602 unsafe extern "C" fn(
25603 This: *mut IDXGIFactory7,
25604 riid: *const IID,
25605 ppvAdapter: *mut *mut ::std::os::raw::c_void,
25606 ) -> HRESULT,
25607 >,
25608 pub CheckFeatureSupport: ::std::option::Option<
25609 unsafe extern "C" fn(
25610 This: *mut IDXGIFactory7,
25611 Feature: DXGI_FEATURE,
25612 pFeatureSupportData: *mut ::std::os::raw::c_void,
25613 FeatureSupportDataSize: UINT,
25614 ) -> HRESULT,
25615 >,
25616 pub EnumAdapterByGpuPreference: ::std::option::Option<
25617 unsafe extern "C" fn(
25618 This: *mut IDXGIFactory7,
25619 Adapter: UINT,
25620 GpuPreference: DXGI_GPU_PREFERENCE,
25621 riid: *const IID,
25622 ppvAdapter: *mut *mut ::std::os::raw::c_void,
25623 ) -> HRESULT,
25624 >,
25625 pub RegisterAdaptersChangedEvent: ::std::option::Option<
25626 unsafe extern "C" fn(
25627 This: *mut IDXGIFactory7,
25628 hEvent: HANDLE,
25629 pdwCookie: *mut DWORD,
25630 ) -> HRESULT,
25631 >,
25632 pub UnregisterAdaptersChangedEvent: ::std::option::Option<
25633 unsafe extern "C" fn(
25634 This: *mut IDXGIFactory7,
25635 dwCookie: DWORD,
25636 ) -> HRESULT,
25637 >,
25638}
25639#[repr(C)]
25640#[derive(Debug, Copy, Clone, Hash, PartialOrd, Ord, PartialEq, Eq)]
25641pub struct IDXGIFactory7 {
25642 pub lpVtbl: *mut IDXGIFactory7Vtbl,
25643}
25644impl Default for IDXGIFactory7 {
25645 fn default() -> Self {
25646 let mut s = ::std::mem::MaybeUninit::<Self>::uninit();
25647 unsafe {
25648 ::std::ptr::write_bytes(s.as_mut_ptr(), 0, 1);
25649 s.assume_init()
25650 }
25651 }
25652}