1#![rustfmt::skip]
2
3#[cfg(all(feature = "Win32_Graphics_Direct3D", feature = "Win32_Graphics_Dxgi"))]
4#[inline]
5pub unsafe fn D3D11CreateDevice<P0>(
6 padapter: P0,
7 drivertype: super::Direct3D::D3D_DRIVER_TYPE,
8 software: crate::Foundation::HMODULE,
9 flags: D3D11_CREATE_DEVICE_FLAG,
10 pfeaturelevels: Option<&[super::Direct3D::D3D_FEATURE_LEVEL]>,
11 sdkversion: u32,
12 ppdevice: Option<*mut Option<ID3D11Device>>,
13 pfeaturelevel: Option<*mut super::Direct3D::D3D_FEATURE_LEVEL>,
14 ppimmediatecontext: Option<*mut Option<ID3D11DeviceContext>>,
15) -> windows_core::Result<()>
16where
17 P0: windows_core::Param<crate::Dxgi::IDXGIAdapter>,
18{
19 crate::dxvk::set_wsi_driver_env(false);
20 crate::link!("d3d11.dll" "dxvk_d3d11" "system" fn D3D11CreateDevice(padapter : * mut core::ffi::c_void, drivertype : super::Direct3D:: D3D_DRIVER_TYPE, software : crate::Foundation:: HMODULE, flags : D3D11_CREATE_DEVICE_FLAG, pfeaturelevels : *const super::Direct3D:: D3D_FEATURE_LEVEL, featurelevels : u32, sdkversion : u32, ppdevice : *mut * mut core::ffi::c_void, pfeaturelevel : *mut super::Direct3D:: D3D_FEATURE_LEVEL, ppimmediatecontext : *mut * mut core::ffi::c_void) -> windows_core::HRESULT);
21 unsafe {
22 D3D11CreateDevice(
23 padapter.param().abi(),
24 drivertype,
25 software,
26 flags,
27 core::mem::transmute(
28 pfeaturelevels
29 .map_or(core::ptr::null(), |slice| slice.as_ptr()),
30 ),
31 pfeaturelevels
32 .map_or(0, |slice| slice.len().try_into().unwrap()),
33 sdkversion,
34 core::mem::transmute(ppdevice.unwrap_or(core::mem::zeroed())),
35 core::mem::transmute(pfeaturelevel.unwrap_or(core::mem::zeroed())),
36 core::mem::transmute(ppimmediatecontext.unwrap_or(core::mem::zeroed())),
37 )
38 .ok()
39 }
40}
41#[cfg(all(
42 feature = "Win32_Graphics_Direct3D",
43 feature = "Win32_Graphics_Dxgi_Common"
44))]
45#[inline]
46pub unsafe fn D3D11CreateDeviceAndSwapChain<P0>(
47 padapter: P0,
48 drivertype: super::Direct3D::D3D_DRIVER_TYPE,
49 software: crate::Foundation::HMODULE,
50 flags: D3D11_CREATE_DEVICE_FLAG,
51 pfeaturelevels: Option<&[super::Direct3D::D3D_FEATURE_LEVEL]>,
52 sdkversion: u32,
53 pswapchaindesc: Option<*const crate::Dxgi::DXGI_SWAP_CHAIN_DESC>,
54 ppswapchain: Option<*mut Option<crate::Dxgi::IDXGISwapChain>>,
55 ppdevice: Option<*mut Option<ID3D11Device>>,
56 pfeaturelevel: Option<*mut super::Direct3D::D3D_FEATURE_LEVEL>,
57 ppimmediatecontext: Option<*mut Option<ID3D11DeviceContext>>,
58) -> windows_core::Result<()>
59where
60 P0: windows_core::Param<crate::Dxgi::IDXGIAdapter>,
61{
62 crate::dxvk::set_wsi_driver_env(true);
63 crate::link!("d3d11.dll" "dxvk_d3d11" "system" fn D3D11CreateDeviceAndSwapChain(padapter : * mut core::ffi::c_void, drivertype : super::Direct3D:: D3D_DRIVER_TYPE, software : crate::Foundation:: HMODULE, flags : D3D11_CREATE_DEVICE_FLAG, pfeaturelevels : *const super::Direct3D:: D3D_FEATURE_LEVEL, featurelevels : u32, sdkversion : u32, pswapchaindesc : *const crate::Dxgi:: DXGI_SWAP_CHAIN_DESC, ppswapchain : *mut * mut core::ffi::c_void, ppdevice : *mut * mut core::ffi::c_void, pfeaturelevel : *mut super::Direct3D:: D3D_FEATURE_LEVEL, ppimmediatecontext : *mut * mut core::ffi::c_void) -> windows_core::HRESULT);
64 unsafe {
65 D3D11CreateDeviceAndSwapChain(
66 padapter.param().abi(),
67 drivertype,
68 software,
69 flags,
70 core::mem::transmute(
71 pfeaturelevels
72 .map_or(core::ptr::null(), |slice| slice.as_ptr()),
73 ),
74 pfeaturelevels
75 .map_or(0, |slice| slice.len().try_into().unwrap()),
76 sdkversion,
77 core::mem::transmute(pswapchaindesc.unwrap_or(core::mem::zeroed())),
78 core::mem::transmute(ppswapchain.unwrap_or(core::mem::zeroed())),
79 core::mem::transmute(ppdevice.unwrap_or(core::mem::zeroed())),
80 core::mem::transmute(pfeaturelevel.unwrap_or(core::mem::zeroed())),
81 core::mem::transmute(ppimmediatecontext.unwrap_or(core::mem::zeroed())),
82 )
83 .ok()
84 }
85}
86#[cfg(feature = "Win32_Graphics_Direct3D")]
87#[inline]
88pub unsafe fn D3DDisassemble11Trace<P2>(
89 psrcdata: *const core::ffi::c_void,
90 srcdatasize: usize,
91 ptrace: P2,
92 startstep: u32,
93 numsteps: u32,
94 flags: u32,
95) -> windows_core::Result<super::Direct3D::ID3DBlob>
96where
97 P2: windows_core::Param<ID3D11ShaderTrace>,
98{
99 windows_targets::link!("d3dcompiler_47.dll" "system" fn D3DDisassemble11Trace(psrcdata : *const core::ffi::c_void, srcdatasize : usize, ptrace : * mut core::ffi::c_void, startstep : u32, numsteps : u32, flags : u32, ppdisassembly : *mut * mut core::ffi::c_void) -> windows_core::HRESULT);
100 unsafe {
101 let mut result__ = core::mem::zeroed();
102 D3DDisassemble11Trace(
103 psrcdata,
104 srcdatasize,
105 ptrace.param().abi(),
106 startstep,
107 numsteps,
108 flags,
109 &mut result__,
110 )
111 .and_then(|| windows_core::Type::from_abi(result__))
112 }
113}
114#[inline]
115pub unsafe fn D3DX11CreateFFT<P0>(
116 pdevicecontext: P0,
117 pdesc: *const D3DX11_FFT_DESC,
118 flags: u32,
119 pbufferinfo: *mut D3DX11_FFT_BUFFER_INFO,
120 ppfft: *mut Option<ID3DX11FFT>,
121) -> windows_core::Result<()>
122where
123 P0: windows_core::Param<ID3D11DeviceContext>,
124{
125 windows_targets::link!("d3dcsx.dll" "system" fn D3DX11CreateFFT(pdevicecontext : * mut core::ffi::c_void, pdesc : *const D3DX11_FFT_DESC, flags : u32, pbufferinfo : *mut D3DX11_FFT_BUFFER_INFO, ppfft : *mut * mut core::ffi::c_void) -> windows_core::HRESULT);
126 unsafe {
127 D3DX11CreateFFT(
128 pdevicecontext.param().abi(),
129 pdesc,
130 flags,
131 core::mem::transmute(pbufferinfo),
132 core::mem::transmute(ppfft),
133 )
134 .ok()
135 }
136}
137#[inline]
138pub unsafe fn D3DX11CreateFFT1DComplex<P0>(
139 pdevicecontext: P0,
140 x: u32,
141 flags: u32,
142 pbufferinfo: *mut D3DX11_FFT_BUFFER_INFO,
143 ppfft: *mut Option<ID3DX11FFT>,
144) -> windows_core::Result<()>
145where
146 P0: windows_core::Param<ID3D11DeviceContext>,
147{
148 windows_targets::link!("d3dcsx.dll" "system" fn D3DX11CreateFFT1DComplex(pdevicecontext : * mut core::ffi::c_void, x : u32, flags : u32, pbufferinfo : *mut D3DX11_FFT_BUFFER_INFO, ppfft : *mut * mut core::ffi::c_void) -> windows_core::HRESULT);
149 unsafe {
150 D3DX11CreateFFT1DComplex(
151 pdevicecontext.param().abi(),
152 x,
153 flags,
154 core::mem::transmute(pbufferinfo),
155 core::mem::transmute(ppfft),
156 )
157 .ok()
158 }
159}
160#[inline]
161pub unsafe fn D3DX11CreateFFT1DReal<P0>(
162 pdevicecontext: P0,
163 x: u32,
164 flags: u32,
165 pbufferinfo: *mut D3DX11_FFT_BUFFER_INFO,
166 ppfft: *mut Option<ID3DX11FFT>,
167) -> windows_core::Result<()>
168where
169 P0: windows_core::Param<ID3D11DeviceContext>,
170{
171 windows_targets::link!("d3dcsx.dll" "system" fn D3DX11CreateFFT1DReal(pdevicecontext : * mut core::ffi::c_void, x : u32, flags : u32, pbufferinfo : *mut D3DX11_FFT_BUFFER_INFO, ppfft : *mut * mut core::ffi::c_void) -> windows_core::HRESULT);
172 unsafe {
173 D3DX11CreateFFT1DReal(
174 pdevicecontext.param().abi(),
175 x,
176 flags,
177 core::mem::transmute(pbufferinfo),
178 core::mem::transmute(ppfft),
179 )
180 .ok()
181 }
182}
183#[inline]
184pub unsafe fn D3DX11CreateFFT2DComplex<P0>(
185 pdevicecontext: P0,
186 x: u32,
187 y: u32,
188 flags: u32,
189 pbufferinfo: *mut D3DX11_FFT_BUFFER_INFO,
190 ppfft: *mut Option<ID3DX11FFT>,
191) -> windows_core::Result<()>
192where
193 P0: windows_core::Param<ID3D11DeviceContext>,
194{
195 windows_targets::link!("d3dcsx.dll" "system" fn D3DX11CreateFFT2DComplex(pdevicecontext : * mut core::ffi::c_void, x : u32, y : u32, flags : u32, pbufferinfo : *mut D3DX11_FFT_BUFFER_INFO, ppfft : *mut * mut core::ffi::c_void) -> windows_core::HRESULT);
196 unsafe {
197 D3DX11CreateFFT2DComplex(
198 pdevicecontext.param().abi(),
199 x,
200 y,
201 flags,
202 core::mem::transmute(pbufferinfo),
203 core::mem::transmute(ppfft),
204 )
205 .ok()
206 }
207}
208#[inline]
209pub unsafe fn D3DX11CreateFFT2DReal<P0>(
210 pdevicecontext: P0,
211 x: u32,
212 y: u32,
213 flags: u32,
214 pbufferinfo: *mut D3DX11_FFT_BUFFER_INFO,
215 ppfft: *mut Option<ID3DX11FFT>,
216) -> windows_core::Result<()>
217where
218 P0: windows_core::Param<ID3D11DeviceContext>,
219{
220 windows_targets::link!("d3dcsx.dll" "system" fn D3DX11CreateFFT2DReal(pdevicecontext : * mut core::ffi::c_void, x : u32, y : u32, flags : u32, pbufferinfo : *mut D3DX11_FFT_BUFFER_INFO, ppfft : *mut * mut core::ffi::c_void) -> windows_core::HRESULT);
221 unsafe {
222 D3DX11CreateFFT2DReal(
223 pdevicecontext.param().abi(),
224 x,
225 y,
226 flags,
227 core::mem::transmute(pbufferinfo),
228 core::mem::transmute(ppfft),
229 )
230 .ok()
231 }
232}
233#[inline]
234pub unsafe fn D3DX11CreateFFT3DComplex<P0>(
235 pdevicecontext: P0,
236 x: u32,
237 y: u32,
238 z: u32,
239 flags: u32,
240 pbufferinfo: *mut D3DX11_FFT_BUFFER_INFO,
241 ppfft: *mut Option<ID3DX11FFT>,
242) -> windows_core::Result<()>
243where
244 P0: windows_core::Param<ID3D11DeviceContext>,
245{
246 windows_targets::link!("d3dcsx.dll" "system" fn D3DX11CreateFFT3DComplex(pdevicecontext : * mut core::ffi::c_void, x : u32, y : u32, z : u32, flags : u32, pbufferinfo : *mut D3DX11_FFT_BUFFER_INFO, ppfft : *mut * mut core::ffi::c_void) -> windows_core::HRESULT);
247 unsafe {
248 D3DX11CreateFFT3DComplex(
249 pdevicecontext.param().abi(),
250 x,
251 y,
252 z,
253 flags,
254 core::mem::transmute(pbufferinfo),
255 core::mem::transmute(ppfft),
256 )
257 .ok()
258 }
259}
260#[inline]
261pub unsafe fn D3DX11CreateFFT3DReal<P0>(
262 pdevicecontext: P0,
263 x: u32,
264 y: u32,
265 z: u32,
266 flags: u32,
267 pbufferinfo: *mut D3DX11_FFT_BUFFER_INFO,
268 ppfft: *mut Option<ID3DX11FFT>,
269) -> windows_core::Result<()>
270where
271 P0: windows_core::Param<ID3D11DeviceContext>,
272{
273 windows_targets::link!("d3dcsx.dll" "system" fn D3DX11CreateFFT3DReal(pdevicecontext : * mut core::ffi::c_void, x : u32, y : u32, z : u32, flags : u32, pbufferinfo : *mut D3DX11_FFT_BUFFER_INFO, ppfft : *mut * mut core::ffi::c_void) -> windows_core::HRESULT);
274 unsafe {
275 D3DX11CreateFFT3DReal(
276 pdevicecontext.param().abi(),
277 x,
278 y,
279 z,
280 flags,
281 core::mem::transmute(pbufferinfo),
282 core::mem::transmute(ppfft),
283 )
284 .ok()
285 }
286}
287#[inline]
288pub unsafe fn D3DX11CreateScan<P0>(
289 pdevicecontext: P0,
290 maxelementscansize: u32,
291 maxscancount: u32,
292) -> windows_core::Result<ID3DX11Scan>
293where
294 P0: windows_core::Param<ID3D11DeviceContext>,
295{
296 windows_targets::link!("d3dcsx.dll" "system" fn D3DX11CreateScan(pdevicecontext : * mut core::ffi::c_void, maxelementscansize : u32, maxscancount : u32, ppscan : *mut * mut core::ffi::c_void) -> windows_core::HRESULT);
297 unsafe {
298 let mut result__ = core::mem::zeroed();
299 D3DX11CreateScan(
300 pdevicecontext.param().abi(),
301 maxelementscansize,
302 maxscancount,
303 &mut result__,
304 )
305 .and_then(|| windows_core::Type::from_abi(result__))
306 }
307}
308#[inline]
309pub unsafe fn D3DX11CreateSegmentedScan<P0>(
310 pdevicecontext: P0,
311 maxelementscansize: u32,
312) -> windows_core::Result<ID3DX11SegmentedScan>
313where
314 P0: windows_core::Param<ID3D11DeviceContext>,
315{
316 windows_targets::link!("d3dcsx.dll" "system" fn D3DX11CreateSegmentedScan(pdevicecontext : * mut core::ffi::c_void, maxelementscansize : u32, ppscan : *mut * mut core::ffi::c_void) -> windows_core::HRESULT);
317 unsafe {
318 let mut result__ = core::mem::zeroed();
319 D3DX11CreateSegmentedScan(
320 pdevicecontext.param().abi(),
321 maxelementscansize,
322 &mut result__,
323 )
324 .and_then(|| windows_core::Type::from_abi(result__))
325 }
326}
327pub const D3D11_16BIT_INDEX_STRIP_CUT_VALUE: u32 = 65535u32;
328#[repr(transparent)]
329#[derive(Clone, Copy, Debug, Default, Eq, PartialEq)]
330pub struct D3D11_1_CREATE_DEVICE_CONTEXT_STATE_FLAG(pub i32);
331pub const D3D11_1_CREATE_DEVICE_CONTEXT_STATE_SINGLETHREADED:
332 D3D11_1_CREATE_DEVICE_CONTEXT_STATE_FLAG = D3D11_1_CREATE_DEVICE_CONTEXT_STATE_FLAG(1i32);
333pub const D3D11_1_UAV_SLOT_COUNT: u32 = 64u32;
334pub const D3D11_2_TILED_RESOURCE_TILE_SIZE_IN_BYTES: u32 = 65536u32;
335pub const D3D11_32BIT_INDEX_STRIP_CUT_VALUE: u32 = 4294967295u32;
336pub const D3D11_4_VIDEO_DECODER_HISTOGRAM_OFFSET_ALIGNMENT: u32 = 256u32;
337pub const D3D11_4_VIDEO_DECODER_MAX_HISTOGRAM_COMPONENTS: u32 = 4u32;
338pub const D3D11_8BIT_INDEX_STRIP_CUT_VALUE: u32 = 255u32;
339#[repr(C)]
340#[derive(Clone, Copy, Debug, PartialEq)]
341pub struct D3D11_AES_CTR_IV {
342 pub IV: u64,
343 pub Count: u64,
344}
345impl Default for D3D11_AES_CTR_IV {
346 fn default() -> Self {
347 unsafe { core::mem::zeroed() }
348 }
349}
350pub const D3D11_ANISOTROPIC_FILTERING_BIT: u32 = 64u32;
351pub const D3D11_APPEND_ALIGNED_ELEMENT: u32 = 4294967295u32;
352pub const D3D11_APPNAME_STRING: crate::core_supplemental::PCWSTR = crate::core_supplemental::w!("Name");
353pub const D3D11_APPSIZE_STRING: crate::core_supplemental::PCWSTR = crate::core_supplemental::w!("Size");
354pub const D3D11_ARRAY_AXIS_ADDRESS_RANGE_BIT_COUNT: u32 = 9u32;
355pub const D3D11_ASYNC_GETDATA_DONOTFLUSH: D3D11_ASYNC_GETDATA_FLAG = D3D11_ASYNC_GETDATA_FLAG(1i32);
356#[repr(transparent)]
357#[derive(Clone, Copy, Debug, Default, Eq, PartialEq)]
358pub struct D3D11_ASYNC_GETDATA_FLAG(pub i32);
359pub const D3D11_AUTHENTICATED_CHANNEL_D3D11: D3D11_AUTHENTICATED_CHANNEL_TYPE =
360 D3D11_AUTHENTICATED_CHANNEL_TYPE(1i32);
361pub const D3D11_AUTHENTICATED_CHANNEL_DRIVER_HARDWARE: D3D11_AUTHENTICATED_CHANNEL_TYPE =
362 D3D11_AUTHENTICATED_CHANNEL_TYPE(3i32);
363pub const D3D11_AUTHENTICATED_CHANNEL_DRIVER_SOFTWARE: D3D11_AUTHENTICATED_CHANNEL_TYPE =
364 D3D11_AUTHENTICATED_CHANNEL_TYPE(2i32);
365#[repr(transparent)]
366#[derive(Clone, Copy, Debug, Default, Eq, PartialEq)]
367pub struct D3D11_AUTHENTICATED_CHANNEL_TYPE(pub i32);
368#[repr(C)]
369#[derive(Clone, Copy, Debug, PartialEq)]
370pub struct D3D11_AUTHENTICATED_CONFIGURE_ACCESSIBLE_ENCRYPTION_INPUT {
371 pub Parameters: D3D11_AUTHENTICATED_CONFIGURE_INPUT,
372 pub EncryptionGuid: windows_core::GUID,
373}
374impl Default for D3D11_AUTHENTICATED_CONFIGURE_ACCESSIBLE_ENCRYPTION_INPUT {
375 fn default() -> Self {
376 unsafe { core::mem::zeroed() }
377 }
378}
379pub const D3D11_AUTHENTICATED_CONFIGURE_CRYPTO_SESSION: windows_core::GUID =
380 windows_core::GUID::from_u128(0x6346cc54_2cfc_4ad4_8224_d15837de7700);
381#[repr(C)]
382#[derive(Clone, Copy, Debug, PartialEq)]
383pub struct D3D11_AUTHENTICATED_CONFIGURE_CRYPTO_SESSION_INPUT {
384 pub Parameters: D3D11_AUTHENTICATED_CONFIGURE_INPUT,
385 pub DecoderHandle: crate::Foundation::HANDLE,
386 pub CryptoSessionHandle: crate::Foundation::HANDLE,
387 pub DeviceHandle: crate::Foundation::HANDLE,
388}
389impl Default for D3D11_AUTHENTICATED_CONFIGURE_CRYPTO_SESSION_INPUT {
390 fn default() -> Self {
391 unsafe { core::mem::zeroed() }
392 }
393}
394pub const D3D11_AUTHENTICATED_CONFIGURE_ENCRYPTION_WHEN_ACCESSIBLE: windows_core::GUID =
395 windows_core::GUID::from_u128(0x41fff286_6ae0_4d43_9d55_a46e9efd158a);
396pub const D3D11_AUTHENTICATED_CONFIGURE_INITIALIZE: windows_core::GUID =
397 windows_core::GUID::from_u128(0x06114bdb_3523_470a_8dca_fbc2845154f0);
398#[repr(C)]
399#[derive(Clone, Copy, Debug, PartialEq)]
400pub struct D3D11_AUTHENTICATED_CONFIGURE_INITIALIZE_INPUT {
401 pub Parameters: D3D11_AUTHENTICATED_CONFIGURE_INPUT,
402 pub StartSequenceQuery: u32,
403 pub StartSequenceConfigure: u32,
404}
405impl Default for D3D11_AUTHENTICATED_CONFIGURE_INITIALIZE_INPUT {
406 fn default() -> Self {
407 unsafe { core::mem::zeroed() }
408 }
409}
410#[repr(C)]
411#[derive(Clone, Copy, Debug, PartialEq)]
412pub struct D3D11_AUTHENTICATED_CONFIGURE_INPUT {
413 pub omac: D3D11_OMAC,
414 pub ConfigureType: windows_core::GUID,
415 pub hChannel: crate::Foundation::HANDLE,
416 pub SequenceNumber: u32,
417}
418impl Default for D3D11_AUTHENTICATED_CONFIGURE_INPUT {
419 fn default() -> Self {
420 unsafe { core::mem::zeroed() }
421 }
422}
423#[repr(C)]
424#[derive(Clone, Copy, Debug, PartialEq)]
425pub struct D3D11_AUTHENTICATED_CONFIGURE_OUTPUT {
426 pub omac: D3D11_OMAC,
427 pub ConfigureType: windows_core::GUID,
428 pub hChannel: crate::Foundation::HANDLE,
429 pub SequenceNumber: u32,
430 pub ReturnCode: windows_core::HRESULT,
431}
432impl Default for D3D11_AUTHENTICATED_CONFIGURE_OUTPUT {
433 fn default() -> Self {
434 unsafe { core::mem::zeroed() }
435 }
436}
437pub const D3D11_AUTHENTICATED_CONFIGURE_PROTECTION: windows_core::GUID =
438 windows_core::GUID::from_u128(0x50455658_3f47_4362_bf99_bfdfcde9ed29);
439#[repr(C)]
440#[derive(Clone, Copy)]
441pub struct D3D11_AUTHENTICATED_CONFIGURE_PROTECTION_INPUT {
442 pub Parameters: D3D11_AUTHENTICATED_CONFIGURE_INPUT,
443 pub Protections: D3D11_AUTHENTICATED_PROTECTION_FLAGS,
444}
445impl Default for D3D11_AUTHENTICATED_CONFIGURE_PROTECTION_INPUT {
446 fn default() -> Self {
447 unsafe { core::mem::zeroed() }
448 }
449}
450pub const D3D11_AUTHENTICATED_CONFIGURE_SHARED_RESOURCE: windows_core::GUID =
451 windows_core::GUID::from_u128(0x0772d047_1b40_48e8_9ca6_b5f510de9f01);
452#[repr(C)]
453#[derive(Clone, Copy, Debug, PartialEq)]
454pub struct D3D11_AUTHENTICATED_CONFIGURE_SHARED_RESOURCE_INPUT {
455 pub Parameters: D3D11_AUTHENTICATED_CONFIGURE_INPUT,
456 pub ProcessType: D3D11_AUTHENTICATED_PROCESS_IDENTIFIER_TYPE,
457 pub ProcessHandle: crate::Foundation::HANDLE,
458 pub AllowAccess: crate::Foundation::BOOL,
459}
460impl Default for D3D11_AUTHENTICATED_CONFIGURE_SHARED_RESOURCE_INPUT {
461 fn default() -> Self {
462 unsafe { core::mem::zeroed() }
463 }
464}
465#[repr(transparent)]
466#[derive(Clone, Copy, Debug, Default, Eq, PartialEq)]
467pub struct D3D11_AUTHENTICATED_PROCESS_IDENTIFIER_TYPE(pub i32);
468#[repr(C)]
469#[derive(Clone, Copy)]
470pub union D3D11_AUTHENTICATED_PROTECTION_FLAGS {
471 pub Flags: D3D11_AUTHENTICATED_PROTECTION_FLAGS_0,
472 pub Value: u32,
473}
474impl Default for D3D11_AUTHENTICATED_PROTECTION_FLAGS {
475 fn default() -> Self {
476 unsafe { core::mem::zeroed() }
477 }
478}
479#[repr(C)]
480#[derive(Clone, Copy, Debug, PartialEq)]
481pub struct D3D11_AUTHENTICATED_PROTECTION_FLAGS_0 {
482 pub _bitfield: u32,
483}
484impl Default for D3D11_AUTHENTICATED_PROTECTION_FLAGS_0 {
485 fn default() -> Self {
486 unsafe { core::mem::zeroed() }
487 }
488}
489pub const D3D11_AUTHENTICATED_QUERY_ACCESSIBILITY_ATTRIBUTES: windows_core::GUID =
490 windows_core::GUID::from_u128(0x6214d9d2_432c_4abb_9fce_216eea269e3b);
491#[repr(C)]
492#[derive(Clone, Copy, Debug, PartialEq)]
493pub struct D3D11_AUTHENTICATED_QUERY_ACCESSIBILITY_ENCRYPTION_GUID_COUNT_OUTPUT {
494 pub Output: D3D11_AUTHENTICATED_QUERY_OUTPUT,
495 pub EncryptionGuidCount: u32,
496}
497impl Default for D3D11_AUTHENTICATED_QUERY_ACCESSIBILITY_ENCRYPTION_GUID_COUNT_OUTPUT {
498 fn default() -> Self {
499 unsafe { core::mem::zeroed() }
500 }
501}
502#[repr(C)]
503#[derive(Clone, Copy, Debug, PartialEq)]
504pub struct D3D11_AUTHENTICATED_QUERY_ACCESSIBILITY_ENCRYPTION_GUID_INPUT {
505 pub Input: D3D11_AUTHENTICATED_QUERY_INPUT,
506 pub EncryptionGuidIndex: u32,
507}
508impl Default for D3D11_AUTHENTICATED_QUERY_ACCESSIBILITY_ENCRYPTION_GUID_INPUT {
509 fn default() -> Self {
510 unsafe { core::mem::zeroed() }
511 }
512}
513#[repr(C)]
514#[derive(Clone, Copy, Debug, PartialEq)]
515pub struct D3D11_AUTHENTICATED_QUERY_ACCESSIBILITY_ENCRYPTION_GUID_OUTPUT {
516 pub Output: D3D11_AUTHENTICATED_QUERY_OUTPUT,
517 pub EncryptionGuidIndex: u32,
518 pub EncryptionGuid: windows_core::GUID,
519}
520impl Default for D3D11_AUTHENTICATED_QUERY_ACCESSIBILITY_ENCRYPTION_GUID_OUTPUT {
521 fn default() -> Self {
522 unsafe { core::mem::zeroed() }
523 }
524}
525#[repr(C)]
526#[derive(Clone, Copy, Debug, PartialEq)]
527pub struct D3D11_AUTHENTICATED_QUERY_ACCESSIBILITY_OUTPUT {
528 pub Output: D3D11_AUTHENTICATED_QUERY_OUTPUT,
529 pub BusType: D3D11_BUS_TYPE,
530 pub AccessibleInContiguousBlocks: crate::Foundation::BOOL,
531 pub AccessibleInNonContiguousBlocks: crate::Foundation::BOOL,
532}
533impl Default for D3D11_AUTHENTICATED_QUERY_ACCESSIBILITY_OUTPUT {
534 fn default() -> Self {
535 unsafe { core::mem::zeroed() }
536 }
537}
538pub const D3D11_AUTHENTICATED_QUERY_CHANNEL_TYPE: windows_core::GUID =
539 windows_core::GUID::from_u128(0xbc1b18a5_b1fb_42ab_bd94_b5828b4bf7be);
540#[repr(C)]
541#[derive(Clone, Copy, Debug, PartialEq)]
542pub struct D3D11_AUTHENTICATED_QUERY_CHANNEL_TYPE_OUTPUT {
543 pub Output: D3D11_AUTHENTICATED_QUERY_OUTPUT,
544 pub ChannelType: D3D11_AUTHENTICATED_CHANNEL_TYPE,
545}
546impl Default for D3D11_AUTHENTICATED_QUERY_CHANNEL_TYPE_OUTPUT {
547 fn default() -> Self {
548 unsafe { core::mem::zeroed() }
549 }
550}
551pub const D3D11_AUTHENTICATED_QUERY_CRYPTO_SESSION: windows_core::GUID =
552 windows_core::GUID::from_u128(0x2634499e_d018_4d74_ac17_7f724059528d);
553#[repr(C)]
554#[derive(Clone, Copy, Debug, PartialEq)]
555pub struct D3D11_AUTHENTICATED_QUERY_CRYPTO_SESSION_INPUT {
556 pub Input: D3D11_AUTHENTICATED_QUERY_INPUT,
557 pub DecoderHandle: crate::Foundation::HANDLE,
558}
559impl Default for D3D11_AUTHENTICATED_QUERY_CRYPTO_SESSION_INPUT {
560 fn default() -> Self {
561 unsafe { core::mem::zeroed() }
562 }
563}
564#[repr(C)]
565#[derive(Clone, Copy, Debug, PartialEq)]
566pub struct D3D11_AUTHENTICATED_QUERY_CRYPTO_SESSION_OUTPUT {
567 pub Output: D3D11_AUTHENTICATED_QUERY_OUTPUT,
568 pub DecoderHandle: crate::Foundation::HANDLE,
569 pub CryptoSessionHandle: crate::Foundation::HANDLE,
570 pub DeviceHandle: crate::Foundation::HANDLE,
571}
572impl Default for D3D11_AUTHENTICATED_QUERY_CRYPTO_SESSION_OUTPUT {
573 fn default() -> Self {
574 unsafe { core::mem::zeroed() }
575 }
576}
577#[repr(C)]
578#[derive(Clone, Copy, Debug, PartialEq)]
579pub struct D3D11_AUTHENTICATED_QUERY_CURRENT_ACCESSIBILITY_ENCRYPTION_OUTPUT {
580 pub Output: D3D11_AUTHENTICATED_QUERY_OUTPUT,
581 pub EncryptionGuid: windows_core::GUID,
582}
583impl Default for D3D11_AUTHENTICATED_QUERY_CURRENT_ACCESSIBILITY_ENCRYPTION_OUTPUT {
584 fn default() -> Self {
585 unsafe { core::mem::zeroed() }
586 }
587}
588pub const D3D11_AUTHENTICATED_QUERY_CURRENT_ENCRYPTION_WHEN_ACCESSIBLE: windows_core::GUID =
589 windows_core::GUID::from_u128(0xec1791c7_dad3_4f15_9ec3_faa93d60d4f0);
590pub const D3D11_AUTHENTICATED_QUERY_DEVICE_HANDLE: windows_core::GUID =
591 windows_core::GUID::from_u128(0xec1c539d_8cff_4e2a_bcc4_f5692f99f480);
592#[repr(C)]
593#[derive(Clone, Copy, Debug, PartialEq)]
594pub struct D3D11_AUTHENTICATED_QUERY_DEVICE_HANDLE_OUTPUT {
595 pub Output: D3D11_AUTHENTICATED_QUERY_OUTPUT,
596 pub DeviceHandle: crate::Foundation::HANDLE,
597}
598impl Default for D3D11_AUTHENTICATED_QUERY_DEVICE_HANDLE_OUTPUT {
599 fn default() -> Self {
600 unsafe { core::mem::zeroed() }
601 }
602}
603pub const D3D11_AUTHENTICATED_QUERY_ENCRYPTION_WHEN_ACCESSIBLE_GUID: windows_core::GUID =
604 windows_core::GUID::from_u128(0xf83a5958_e986_4bda_beb0_411f6a7a01b7);
605pub const D3D11_AUTHENTICATED_QUERY_ENCRYPTION_WHEN_ACCESSIBLE_GUID_COUNT: windows_core::GUID =
606 windows_core::GUID::from_u128(0xb30f7066_203c_4b07_93fc_ceaafd61241e);
607#[repr(C)]
608#[derive(Clone, Copy, Debug, PartialEq)]
609pub struct D3D11_AUTHENTICATED_QUERY_INPUT {
610 pub QueryType: windows_core::GUID,
611 pub hChannel: crate::Foundation::HANDLE,
612 pub SequenceNumber: u32,
613}
614impl Default for D3D11_AUTHENTICATED_QUERY_INPUT {
615 fn default() -> Self {
616 unsafe { core::mem::zeroed() }
617 }
618}
619#[repr(C)]
620#[derive(Clone, Copy, Debug, PartialEq)]
621pub struct D3D11_AUTHENTICATED_QUERY_OUTPUT {
622 pub omac: D3D11_OMAC,
623 pub QueryType: windows_core::GUID,
624 pub hChannel: crate::Foundation::HANDLE,
625 pub SequenceNumber: u32,
626 pub ReturnCode: windows_core::HRESULT,
627}
628impl Default for D3D11_AUTHENTICATED_QUERY_OUTPUT {
629 fn default() -> Self {
630 unsafe { core::mem::zeroed() }
631 }
632}
633pub const D3D11_AUTHENTICATED_QUERY_OUTPUT_ID: windows_core::GUID =
634 windows_core::GUID::from_u128(0x839ddca3_9b4e_41e4_b053_892bd2a11ee7);
635pub const D3D11_AUTHENTICATED_QUERY_OUTPUT_ID_COUNT: windows_core::GUID =
636 windows_core::GUID::from_u128(0x2c042b5e_8c07_46d5_aabe_8f75cbad4c31);
637#[repr(C)]
638#[derive(Clone, Copy, Debug, PartialEq)]
639pub struct D3D11_AUTHENTICATED_QUERY_OUTPUT_ID_COUNT_INPUT {
640 pub Input: D3D11_AUTHENTICATED_QUERY_INPUT,
641 pub DeviceHandle: crate::Foundation::HANDLE,
642 pub CryptoSessionHandle: crate::Foundation::HANDLE,
643}
644impl Default for D3D11_AUTHENTICATED_QUERY_OUTPUT_ID_COUNT_INPUT {
645 fn default() -> Self {
646 unsafe { core::mem::zeroed() }
647 }
648}
649#[repr(C)]
650#[derive(Clone, Copy, Debug, PartialEq)]
651pub struct D3D11_AUTHENTICATED_QUERY_OUTPUT_ID_COUNT_OUTPUT {
652 pub Output: D3D11_AUTHENTICATED_QUERY_OUTPUT,
653 pub DeviceHandle: crate::Foundation::HANDLE,
654 pub CryptoSessionHandle: crate::Foundation::HANDLE,
655 pub OutputIDCount: u32,
656}
657impl Default for D3D11_AUTHENTICATED_QUERY_OUTPUT_ID_COUNT_OUTPUT {
658 fn default() -> Self {
659 unsafe { core::mem::zeroed() }
660 }
661}
662#[repr(C)]
663#[derive(Clone, Copy, Debug, PartialEq)]
664pub struct D3D11_AUTHENTICATED_QUERY_OUTPUT_ID_INPUT {
665 pub Input: D3D11_AUTHENTICATED_QUERY_INPUT,
666 pub DeviceHandle: crate::Foundation::HANDLE,
667 pub CryptoSessionHandle: crate::Foundation::HANDLE,
668 pub OutputIDIndex: u32,
669}
670impl Default for D3D11_AUTHENTICATED_QUERY_OUTPUT_ID_INPUT {
671 fn default() -> Self {
672 unsafe { core::mem::zeroed() }
673 }
674}
675#[repr(C)]
676#[derive(Clone, Copy, Debug, PartialEq)]
677pub struct D3D11_AUTHENTICATED_QUERY_OUTPUT_ID_OUTPUT {
678 pub Output: D3D11_AUTHENTICATED_QUERY_OUTPUT,
679 pub DeviceHandle: crate::Foundation::HANDLE,
680 pub CryptoSessionHandle: crate::Foundation::HANDLE,
681 pub OutputIDIndex: u32,
682 pub OutputID: u64,
683}
684impl Default for D3D11_AUTHENTICATED_QUERY_OUTPUT_ID_OUTPUT {
685 fn default() -> Self {
686 unsafe { core::mem::zeroed() }
687 }
688}
689pub const D3D11_AUTHENTICATED_QUERY_PROTECTION: windows_core::GUID =
690 windows_core::GUID::from_u128(0xa84eb584_c495_48aa_b94d_8bd2d6fbce05);
691#[repr(C)]
692#[derive(Clone, Copy)]
693pub struct D3D11_AUTHENTICATED_QUERY_PROTECTION_OUTPUT {
694 pub Output: D3D11_AUTHENTICATED_QUERY_OUTPUT,
695 pub ProtectionFlags: D3D11_AUTHENTICATED_PROTECTION_FLAGS,
696}
697impl Default for D3D11_AUTHENTICATED_QUERY_PROTECTION_OUTPUT {
698 fn default() -> Self {
699 unsafe { core::mem::zeroed() }
700 }
701}
702pub const D3D11_AUTHENTICATED_QUERY_RESTRICTED_SHARED_RESOURCE_PROCESS: windows_core::GUID =
703 windows_core::GUID::from_u128(0x649bbadb_f0f4_4639_a15b_24393fc3abac);
704pub const D3D11_AUTHENTICATED_QUERY_RESTRICTED_SHARED_RESOURCE_PROCESS_COUNT: windows_core::GUID =
705 windows_core::GUID::from_u128(0x0db207b3_9450_46a6_82de_1b96d44f9cf2);
706#[repr(C)]
707#[derive(Clone, Copy, Debug, PartialEq)]
708pub struct D3D11_AUTHENTICATED_QUERY_RESTRICTED_SHARED_RESOURCE_PROCESS_COUNT_OUTPUT {
709 pub Output: D3D11_AUTHENTICATED_QUERY_OUTPUT,
710 pub RestrictedSharedResourceProcessCount: u32,
711}
712impl Default for D3D11_AUTHENTICATED_QUERY_RESTRICTED_SHARED_RESOURCE_PROCESS_COUNT_OUTPUT {
713 fn default() -> Self {
714 unsafe { core::mem::zeroed() }
715 }
716}
717#[repr(C)]
718#[derive(Clone, Copy, Debug, PartialEq)]
719pub struct D3D11_AUTHENTICATED_QUERY_RESTRICTED_SHARED_RESOURCE_PROCESS_INPUT {
720 pub Input: D3D11_AUTHENTICATED_QUERY_INPUT,
721 pub ProcessIndex: u32,
722}
723impl Default for D3D11_AUTHENTICATED_QUERY_RESTRICTED_SHARED_RESOURCE_PROCESS_INPUT {
724 fn default() -> Self {
725 unsafe { core::mem::zeroed() }
726 }
727}
728#[repr(C)]
729#[derive(Clone, Copy, Debug, PartialEq)]
730pub struct D3D11_AUTHENTICATED_QUERY_RESTRICTED_SHARED_RESOURCE_PROCESS_OUTPUT {
731 pub Output: D3D11_AUTHENTICATED_QUERY_OUTPUT,
732 pub ProcessIndex: u32,
733 pub ProcessIdentifier: D3D11_AUTHENTICATED_PROCESS_IDENTIFIER_TYPE,
734 pub ProcessHandle: crate::Foundation::HANDLE,
735}
736impl Default for D3D11_AUTHENTICATED_QUERY_RESTRICTED_SHARED_RESOURCE_PROCESS_OUTPUT {
737 fn default() -> Self {
738 unsafe { core::mem::zeroed() }
739 }
740}
741pub const D3D11_AUTHENTICATED_QUERY_UNRESTRICTED_PROTECTED_SHARED_RESOURCE_COUNT:
742 windows_core::GUID = windows_core::GUID::from_u128(0x012f0bd6_e662_4474_befd_aa53e5143c6d);
743#[repr(C)]
744#[derive(Clone, Copy, Debug, PartialEq)]
745pub struct D3D11_AUTHENTICATED_QUERY_UNRESTRICTED_PROTECTED_SHARED_RESOURCE_COUNT_OUTPUT {
746 pub Output: D3D11_AUTHENTICATED_QUERY_OUTPUT,
747 pub UnrestrictedProtectedSharedResourceCount: u32,
748}
749impl Default for D3D11_AUTHENTICATED_QUERY_UNRESTRICTED_PROTECTED_SHARED_RESOURCE_COUNT_OUTPUT {
750 fn default() -> Self {
751 unsafe { core::mem::zeroed() }
752 }
753}
754pub const D3D11_BIND_CONSTANT_BUFFER: D3D11_BIND_FLAG = D3D11_BIND_FLAG(4i32);
755pub const D3D11_BIND_DECODER: D3D11_BIND_FLAG = D3D11_BIND_FLAG(512i32);
756pub const D3D11_BIND_DEPTH_STENCIL: D3D11_BIND_FLAG = D3D11_BIND_FLAG(64i32);
757#[repr(transparent)]
758#[derive(Clone, Copy, Debug, Default, Eq, PartialEq)]
759pub struct D3D11_BIND_FLAG(pub i32);
760impl D3D11_BIND_FLAG {
761 pub const fn contains(&self, other: Self) -> bool {
762 self.0 & other.0 == other.0
763 }
764}
765impl core::ops::BitOr for D3D11_BIND_FLAG {
766 type Output = Self;
767 fn bitor(self, other: Self) -> Self {
768 Self(self.0 | other.0)
769 }
770}
771impl core::ops::BitAnd for D3D11_BIND_FLAG {
772 type Output = Self;
773 fn bitand(self, other: Self) -> Self {
774 Self(self.0 & other.0)
775 }
776}
777impl core::ops::BitOrAssign for D3D11_BIND_FLAG {
778 fn bitor_assign(&mut self, other: Self) {
779 self.0.bitor_assign(other.0)
780 }
781}
782impl core::ops::BitAndAssign for D3D11_BIND_FLAG {
783 fn bitand_assign(&mut self, other: Self) {
784 self.0.bitand_assign(other.0)
785 }
786}
787impl core::ops::Not for D3D11_BIND_FLAG {
788 type Output = Self;
789 fn not(self) -> Self {
790 Self(self.0.not())
791 }
792}
793pub const D3D11_BIND_INDEX_BUFFER: D3D11_BIND_FLAG = D3D11_BIND_FLAG(2i32);
794pub const D3D11_BIND_RENDER_TARGET: D3D11_BIND_FLAG = D3D11_BIND_FLAG(32i32);
795pub const D3D11_BIND_SHADER_RESOURCE: D3D11_BIND_FLAG = D3D11_BIND_FLAG(8i32);
796pub const D3D11_BIND_STREAM_OUTPUT: D3D11_BIND_FLAG = D3D11_BIND_FLAG(16i32);
797pub const D3D11_BIND_UNORDERED_ACCESS: D3D11_BIND_FLAG = D3D11_BIND_FLAG(128i32);
798pub const D3D11_BIND_VERTEX_BUFFER: D3D11_BIND_FLAG = D3D11_BIND_FLAG(1i32);
799pub const D3D11_BIND_VIDEO_ENCODER: D3D11_BIND_FLAG = D3D11_BIND_FLAG(1024i32);
800#[repr(transparent)]
801#[derive(Clone, Copy, Debug, Default, Eq, PartialEq)]
802pub struct D3D11_BLEND(pub i32);
803pub const D3D11_BLEND_BLEND_FACTOR: D3D11_BLEND = D3D11_BLEND(14i32);
804#[repr(C)]
805#[derive(Clone, Copy, Debug, PartialEq)]
806pub struct D3D11_BLEND_DESC {
807 pub AlphaToCoverageEnable: crate::Foundation::BOOL,
808 pub IndependentBlendEnable: crate::Foundation::BOOL,
809 pub RenderTarget: [D3D11_RENDER_TARGET_BLEND_DESC; 8],
810}
811impl Default for D3D11_BLEND_DESC {
812 fn default() -> Self {
813 unsafe { core::mem::zeroed() }
814 }
815}
816#[repr(C)]
817#[derive(Clone, Copy, Debug, PartialEq)]
818pub struct D3D11_BLEND_DESC1 {
819 pub AlphaToCoverageEnable: crate::Foundation::BOOL,
820 pub IndependentBlendEnable: crate::Foundation::BOOL,
821 pub RenderTarget: [D3D11_RENDER_TARGET_BLEND_DESC1; 8],
822}
823impl Default for D3D11_BLEND_DESC1 {
824 fn default() -> Self {
825 unsafe { core::mem::zeroed() }
826 }
827}
828pub const D3D11_BLEND_DEST_ALPHA: D3D11_BLEND = D3D11_BLEND(7i32);
829pub const D3D11_BLEND_DEST_COLOR: D3D11_BLEND = D3D11_BLEND(9i32);
830pub const D3D11_BLEND_INV_BLEND_FACTOR: D3D11_BLEND = D3D11_BLEND(15i32);
831pub const D3D11_BLEND_INV_DEST_ALPHA: D3D11_BLEND = D3D11_BLEND(8i32);
832pub const D3D11_BLEND_INV_DEST_COLOR: D3D11_BLEND = D3D11_BLEND(10i32);
833pub const D3D11_BLEND_INV_SRC1_ALPHA: D3D11_BLEND = D3D11_BLEND(19i32);
834pub const D3D11_BLEND_INV_SRC1_COLOR: D3D11_BLEND = D3D11_BLEND(17i32);
835pub const D3D11_BLEND_INV_SRC_ALPHA: D3D11_BLEND = D3D11_BLEND(6i32);
836pub const D3D11_BLEND_INV_SRC_COLOR: D3D11_BLEND = D3D11_BLEND(4i32);
837pub const D3D11_BLEND_ONE: D3D11_BLEND = D3D11_BLEND(2i32);
838#[repr(transparent)]
839#[derive(Clone, Copy, Debug, Default, Eq, PartialEq)]
840pub struct D3D11_BLEND_OP(pub i32);
841pub const D3D11_BLEND_OP_ADD: D3D11_BLEND_OP = D3D11_BLEND_OP(1i32);
842pub const D3D11_BLEND_OP_MAX: D3D11_BLEND_OP = D3D11_BLEND_OP(5i32);
843pub const D3D11_BLEND_OP_MIN: D3D11_BLEND_OP = D3D11_BLEND_OP(4i32);
844pub const D3D11_BLEND_OP_REV_SUBTRACT: D3D11_BLEND_OP = D3D11_BLEND_OP(3i32);
845pub const D3D11_BLEND_OP_SUBTRACT: D3D11_BLEND_OP = D3D11_BLEND_OP(2i32);
846pub const D3D11_BLEND_SRC1_ALPHA: D3D11_BLEND = D3D11_BLEND(18i32);
847pub const D3D11_BLEND_SRC1_COLOR: D3D11_BLEND = D3D11_BLEND(16i32);
848pub const D3D11_BLEND_SRC_ALPHA: D3D11_BLEND = D3D11_BLEND(5i32);
849pub const D3D11_BLEND_SRC_ALPHA_SAT: D3D11_BLEND = D3D11_BLEND(11i32);
850pub const D3D11_BLEND_SRC_COLOR: D3D11_BLEND = D3D11_BLEND(3i32);
851pub const D3D11_BLEND_ZERO: D3D11_BLEND = D3D11_BLEND(1i32);
852#[repr(C)]
853#[derive(Clone, Copy, Debug, PartialEq)]
854pub struct D3D11_BOX {
855 pub left: u32,
856 pub top: u32,
857 pub front: u32,
858 pub right: u32,
859 pub bottom: u32,
860 pub back: u32,
861}
862impl Default for D3D11_BOX {
863 fn default() -> Self {
864 unsafe { core::mem::zeroed() }
865 }
866}
867pub const D3D11_BREAKON_CATEGORY: crate::core_supplemental::PCWSTR = crate::core_supplemental::w!("BreakOn_CATEGORY_%s");
868pub const D3D11_BREAKON_ID_DECIMAL: crate::core_supplemental::PCWSTR = crate::core_supplemental::w!("BreakOn_ID_%d");
869pub const D3D11_BREAKON_ID_STRING: crate::core_supplemental::PCWSTR = crate::core_supplemental::w!("BreakOn_ID_%s");
870pub const D3D11_BREAKON_SEVERITY: crate::core_supplemental::PCWSTR = crate::core_supplemental::w!("BreakOn_SEVERITY_%s");
871#[repr(C)]
872#[derive(Clone, Copy, Debug, PartialEq)]
873pub struct D3D11_BUFFEREX_SRV {
874 pub FirstElement: u32,
875 pub NumElements: u32,
876 pub Flags: u32,
877}
878impl Default for D3D11_BUFFEREX_SRV {
879 fn default() -> Self {
880 unsafe { core::mem::zeroed() }
881 }
882}
883#[repr(transparent)]
884#[derive(Clone, Copy, Debug, Default, Eq, PartialEq)]
885pub struct D3D11_BUFFEREX_SRV_FLAG(pub i32);
886pub const D3D11_BUFFEREX_SRV_FLAG_RAW: D3D11_BUFFEREX_SRV_FLAG = D3D11_BUFFEREX_SRV_FLAG(1i32);
887#[repr(C)]
888#[derive(Clone, Copy, Debug, PartialEq)]
889pub struct D3D11_BUFFER_DESC {
890 pub ByteWidth: u32,
891 pub Usage: D3D11_USAGE,
892 pub BindFlags: u32,
893 pub CPUAccessFlags: u32,
894 pub MiscFlags: u32,
895 pub StructureByteStride: u32,
896}
897impl Default for D3D11_BUFFER_DESC {
898 fn default() -> Self {
899 unsafe { core::mem::zeroed() }
900 }
901}
902#[repr(C)]
903#[derive(Clone, Copy)]
904pub struct D3D11_BUFFER_RTV {
905 pub Anonymous1: D3D11_BUFFER_RTV_0,
906 pub Anonymous2: D3D11_BUFFER_RTV_1,
907}
908impl Default for D3D11_BUFFER_RTV {
909 fn default() -> Self {
910 unsafe { core::mem::zeroed() }
911 }
912}
913#[repr(C)]
914#[derive(Clone, Copy)]
915pub union D3D11_BUFFER_RTV_0 {
916 pub FirstElement: u32,
917 pub ElementOffset: u32,
918}
919impl Default for D3D11_BUFFER_RTV_0 {
920 fn default() -> Self {
921 unsafe { core::mem::zeroed() }
922 }
923}
924#[repr(C)]
925#[derive(Clone, Copy)]
926pub union D3D11_BUFFER_RTV_1 {
927 pub NumElements: u32,
928 pub ElementWidth: u32,
929}
930impl Default for D3D11_BUFFER_RTV_1 {
931 fn default() -> Self {
932 unsafe { core::mem::zeroed() }
933 }
934}
935#[repr(C)]
936#[derive(Clone, Copy)]
937pub struct D3D11_BUFFER_SRV {
938 pub Anonymous1: D3D11_BUFFER_SRV_0,
939 pub Anonymous2: D3D11_BUFFER_SRV_1,
940}
941impl Default for D3D11_BUFFER_SRV {
942 fn default() -> Self {
943 unsafe { core::mem::zeroed() }
944 }
945}
946#[repr(C)]
947#[derive(Clone, Copy)]
948pub union D3D11_BUFFER_SRV_0 {
949 pub FirstElement: u32,
950 pub ElementOffset: u32,
951}
952impl Default for D3D11_BUFFER_SRV_0 {
953 fn default() -> Self {
954 unsafe { core::mem::zeroed() }
955 }
956}
957#[repr(C)]
958#[derive(Clone, Copy)]
959pub union D3D11_BUFFER_SRV_1 {
960 pub NumElements: u32,
961 pub ElementWidth: u32,
962}
963impl Default for D3D11_BUFFER_SRV_1 {
964 fn default() -> Self {
965 unsafe { core::mem::zeroed() }
966 }
967}
968#[repr(C)]
969#[derive(Clone, Copy, Debug, PartialEq)]
970pub struct D3D11_BUFFER_UAV {
971 pub FirstElement: u32,
972 pub NumElements: u32,
973 pub Flags: u32,
974}
975impl Default for D3D11_BUFFER_UAV {
976 fn default() -> Self {
977 unsafe { core::mem::zeroed() }
978 }
979}
980#[repr(transparent)]
981#[derive(Clone, Copy, Debug, Default, Eq, PartialEq)]
982pub struct D3D11_BUFFER_UAV_FLAG(pub i32);
983pub const D3D11_BUFFER_UAV_FLAG_APPEND: D3D11_BUFFER_UAV_FLAG = D3D11_BUFFER_UAV_FLAG(2i32);
984pub const D3D11_BUFFER_UAV_FLAG_COUNTER: D3D11_BUFFER_UAV_FLAG = D3D11_BUFFER_UAV_FLAG(4i32);
985pub const D3D11_BUFFER_UAV_FLAG_RAW: D3D11_BUFFER_UAV_FLAG = D3D11_BUFFER_UAV_FLAG(1i32);
986pub const D3D11_BUS_IMPL_MODIFIER_DAUGHTER_BOARD_CONNECTOR: D3D11_BUS_TYPE =
987 D3D11_BUS_TYPE(262144i32);
988pub const D3D11_BUS_IMPL_MODIFIER_DAUGHTER_BOARD_CONNECTOR_INSIDE_OF_NUAE: D3D11_BUS_TYPE =
989 D3D11_BUS_TYPE(327680i32);
990pub const D3D11_BUS_IMPL_MODIFIER_INSIDE_OF_CHIPSET: D3D11_BUS_TYPE = D3D11_BUS_TYPE(65536i32);
991pub const D3D11_BUS_IMPL_MODIFIER_NON_STANDARD: D3D11_BUS_TYPE = D3D11_BUS_TYPE(-2147483648i32);
992pub const D3D11_BUS_IMPL_MODIFIER_TRACKS_ON_MOTHER_BOARD_TO_CHIP: D3D11_BUS_TYPE =
993 D3D11_BUS_TYPE(131072i32);
994pub const D3D11_BUS_IMPL_MODIFIER_TRACKS_ON_MOTHER_BOARD_TO_SOCKET: D3D11_BUS_TYPE =
995 D3D11_BUS_TYPE(196608i32);
996#[repr(transparent)]
997#[derive(Clone, Copy, Debug, Default, Eq, PartialEq)]
998pub struct D3D11_BUS_TYPE(pub i32);
999pub const D3D11_BUS_TYPE_AGP: D3D11_BUS_TYPE = D3D11_BUS_TYPE(4i32);
1000pub const D3D11_BUS_TYPE_OTHER: D3D11_BUS_TYPE = D3D11_BUS_TYPE(0i32);
1001pub const D3D11_BUS_TYPE_PCI: D3D11_BUS_TYPE = D3D11_BUS_TYPE(1i32);
1002pub const D3D11_BUS_TYPE_PCIEXPRESS: D3D11_BUS_TYPE = D3D11_BUS_TYPE(3i32);
1003pub const D3D11_BUS_TYPE_PCIX: D3D11_BUS_TYPE = D3D11_BUS_TYPE(2i32);
1004pub const D3D11_CENTER_MULTISAMPLE_PATTERN: D3D11_STANDARD_MULTISAMPLE_QUALITY_LEVELS =
1005 D3D11_STANDARD_MULTISAMPLE_QUALITY_LEVELS(-2i32);
1006#[repr(transparent)]
1007#[derive(Clone, Copy, Debug, Default, Eq, PartialEq)]
1008pub struct D3D11_CHECK_MULTISAMPLE_QUALITY_LEVELS_FLAG(pub i32);
1009pub const D3D11_CHECK_MULTISAMPLE_QUALITY_LEVELS_TILED_RESOURCE:
1010 D3D11_CHECK_MULTISAMPLE_QUALITY_LEVELS_FLAG = D3D11_CHECK_MULTISAMPLE_QUALITY_LEVELS_FLAG(1i32);
1011#[repr(C)]
1012#[derive(Clone, Copy, Debug, PartialEq)]
1013pub struct D3D11_CLASS_INSTANCE_DESC {
1014 pub InstanceId: u32,
1015 pub InstanceIndex: u32,
1016 pub TypeId: u32,
1017 pub ConstantBuffer: u32,
1018 pub BaseConstantBufferOffset: u32,
1019 pub BaseTexture: u32,
1020 pub BaseSampler: u32,
1021 pub Created: crate::Foundation::BOOL,
1022}
1023impl Default for D3D11_CLASS_INSTANCE_DESC {
1024 fn default() -> Self {
1025 unsafe { core::mem::zeroed() }
1026 }
1027}
1028pub const D3D11_CLEAR_DEPTH: D3D11_CLEAR_FLAG = D3D11_CLEAR_FLAG(1u32);
1029#[repr(transparent)]
1030#[derive(Clone, Copy, Debug, Default, Eq, PartialEq)]
1031pub struct D3D11_CLEAR_FLAG(pub u32);
1032impl D3D11_CLEAR_FLAG {
1033 pub const fn contains(&self, other: Self) -> bool {
1034 self.0 & other.0 == other.0
1035 }
1036}
1037impl core::ops::BitOr for D3D11_CLEAR_FLAG {
1038 type Output = Self;
1039 fn bitor(self, other: Self) -> Self {
1040 Self(self.0 | other.0)
1041 }
1042}
1043impl core::ops::BitAnd for D3D11_CLEAR_FLAG {
1044 type Output = Self;
1045 fn bitand(self, other: Self) -> Self {
1046 Self(self.0 & other.0)
1047 }
1048}
1049impl core::ops::BitOrAssign for D3D11_CLEAR_FLAG {
1050 fn bitor_assign(&mut self, other: Self) {
1051 self.0.bitor_assign(other.0)
1052 }
1053}
1054impl core::ops::BitAndAssign for D3D11_CLEAR_FLAG {
1055 fn bitand_assign(&mut self, other: Self) {
1056 self.0.bitand_assign(other.0)
1057 }
1058}
1059impl core::ops::Not for D3D11_CLEAR_FLAG {
1060 type Output = Self;
1061 fn not(self) -> Self {
1062 Self(self.0.not())
1063 }
1064}
1065pub const D3D11_CLEAR_STENCIL: D3D11_CLEAR_FLAG = D3D11_CLEAR_FLAG(2u32);
1066pub const D3D11_CLIP_OR_CULL_DISTANCE_COUNT: u32 = 8u32;
1067pub const D3D11_CLIP_OR_CULL_DISTANCE_ELEMENT_COUNT: u32 = 2u32;
1068#[repr(transparent)]
1069#[derive(Clone, Copy, Debug, Default, Eq, PartialEq)]
1070pub struct D3D11_COLOR_WRITE_ENABLE(pub i32);
1071pub const D3D11_COLOR_WRITE_ENABLE_ALL: D3D11_COLOR_WRITE_ENABLE = D3D11_COLOR_WRITE_ENABLE(15i32);
1072pub const D3D11_COLOR_WRITE_ENABLE_ALPHA: D3D11_COLOR_WRITE_ENABLE = D3D11_COLOR_WRITE_ENABLE(8i32);
1073pub const D3D11_COLOR_WRITE_ENABLE_BLUE: D3D11_COLOR_WRITE_ENABLE = D3D11_COLOR_WRITE_ENABLE(4i32);
1074pub const D3D11_COLOR_WRITE_ENABLE_GREEN: D3D11_COLOR_WRITE_ENABLE = D3D11_COLOR_WRITE_ENABLE(2i32);
1075pub const D3D11_COLOR_WRITE_ENABLE_RED: D3D11_COLOR_WRITE_ENABLE = D3D11_COLOR_WRITE_ENABLE(1i32);
1076pub const D3D11_COMMONSHADER_CONSTANT_BUFFER_API_SLOT_COUNT: u32 = 14u32;
1077pub const D3D11_COMMONSHADER_CONSTANT_BUFFER_COMPONENTS: u32 = 4u32;
1078pub const D3D11_COMMONSHADER_CONSTANT_BUFFER_COMPONENT_BIT_COUNT: u32 = 32u32;
1079pub const D3D11_COMMONSHADER_CONSTANT_BUFFER_HW_SLOT_COUNT: u32 = 15u32;
1080pub const D3D11_COMMONSHADER_CONSTANT_BUFFER_PARTIAL_UPDATE_EXTENTS_BYTE_ALIGNMENT: u32 = 16u32;
1081pub const D3D11_COMMONSHADER_CONSTANT_BUFFER_REGISTER_COMPONENTS: u32 = 4u32;
1082pub const D3D11_COMMONSHADER_CONSTANT_BUFFER_REGISTER_COUNT: u32 = 15u32;
1083pub const D3D11_COMMONSHADER_CONSTANT_BUFFER_REGISTER_READS_PER_INST: u32 = 1u32;
1084pub const D3D11_COMMONSHADER_CONSTANT_BUFFER_REGISTER_READ_PORTS: u32 = 1u32;
1085pub const D3D11_COMMONSHADER_FLOWCONTROL_NESTING_LIMIT: u32 = 64u32;
1086pub const D3D11_COMMONSHADER_IMMEDIATE_CONSTANT_BUFFER_REGISTER_COMPONENTS: u32 = 4u32;
1087pub const D3D11_COMMONSHADER_IMMEDIATE_CONSTANT_BUFFER_REGISTER_COUNT: u32 = 1u32;
1088pub const D3D11_COMMONSHADER_IMMEDIATE_CONSTANT_BUFFER_REGISTER_READS_PER_INST: u32 = 1u32;
1089pub const D3D11_COMMONSHADER_IMMEDIATE_CONSTANT_BUFFER_REGISTER_READ_PORTS: u32 = 1u32;
1090pub const D3D11_COMMONSHADER_IMMEDIATE_VALUE_COMPONENT_BIT_COUNT: u32 = 32u32;
1091pub const D3D11_COMMONSHADER_INPUT_RESOURCE_REGISTER_COMPONENTS: u32 = 1u32;
1092pub const D3D11_COMMONSHADER_INPUT_RESOURCE_REGISTER_COUNT: u32 = 128u32;
1093pub const D3D11_COMMONSHADER_INPUT_RESOURCE_REGISTER_READS_PER_INST: u32 = 1u32;
1094pub const D3D11_COMMONSHADER_INPUT_RESOURCE_REGISTER_READ_PORTS: u32 = 1u32;
1095pub const D3D11_COMMONSHADER_INPUT_RESOURCE_SLOT_COUNT: u32 = 128u32;
1096pub const D3D11_COMMONSHADER_SAMPLER_REGISTER_COMPONENTS: u32 = 1u32;
1097pub const D3D11_COMMONSHADER_SAMPLER_REGISTER_COUNT: u32 = 16u32;
1098pub const D3D11_COMMONSHADER_SAMPLER_REGISTER_READS_PER_INST: u32 = 1u32;
1099pub const D3D11_COMMONSHADER_SAMPLER_REGISTER_READ_PORTS: u32 = 1u32;
1100pub const D3D11_COMMONSHADER_SAMPLER_SLOT_COUNT: u32 = 16u32;
1101pub const D3D11_COMMONSHADER_SUBROUTINE_NESTING_LIMIT: u32 = 32u32;
1102pub const D3D11_COMMONSHADER_TEMP_REGISTER_COMPONENTS: u32 = 4u32;
1103pub const D3D11_COMMONSHADER_TEMP_REGISTER_COMPONENT_BIT_COUNT: u32 = 32u32;
1104pub const D3D11_COMMONSHADER_TEMP_REGISTER_COUNT: u32 = 4096u32;
1105pub const D3D11_COMMONSHADER_TEMP_REGISTER_READS_PER_INST: u32 = 3u32;
1106pub const D3D11_COMMONSHADER_TEMP_REGISTER_READ_PORTS: u32 = 3u32;
1107pub const D3D11_COMMONSHADER_TEXCOORD_RANGE_REDUCTION_MAX: u32 = 10u32;
1108pub const D3D11_COMMONSHADER_TEXCOORD_RANGE_REDUCTION_MIN: i32 = -10i32;
1109pub const D3D11_COMMONSHADER_TEXEL_OFFSET_MAX_NEGATIVE: i32 = -8i32;
1110pub const D3D11_COMMONSHADER_TEXEL_OFFSET_MAX_POSITIVE: u32 = 7u32;
1111pub const D3D11_COMPARISON_ALWAYS: D3D11_COMPARISON_FUNC = D3D11_COMPARISON_FUNC(8i32);
1112pub const D3D11_COMPARISON_EQUAL: D3D11_COMPARISON_FUNC = D3D11_COMPARISON_FUNC(3i32);
1113pub const D3D11_COMPARISON_FILTERING_BIT: u32 = 128u32;
1114#[repr(transparent)]
1115#[derive(Clone, Copy, Debug, Default, Eq, PartialEq)]
1116pub struct D3D11_COMPARISON_FUNC(pub i32);
1117pub const D3D11_COMPARISON_GREATER: D3D11_COMPARISON_FUNC = D3D11_COMPARISON_FUNC(5i32);
1118pub const D3D11_COMPARISON_GREATER_EQUAL: D3D11_COMPARISON_FUNC = D3D11_COMPARISON_FUNC(7i32);
1119pub const D3D11_COMPARISON_LESS: D3D11_COMPARISON_FUNC = D3D11_COMPARISON_FUNC(2i32);
1120pub const D3D11_COMPARISON_LESS_EQUAL: D3D11_COMPARISON_FUNC = D3D11_COMPARISON_FUNC(4i32);
1121pub const D3D11_COMPARISON_NEVER: D3D11_COMPARISON_FUNC = D3D11_COMPARISON_FUNC(1i32);
1122pub const D3D11_COMPARISON_NOT_EQUAL: D3D11_COMPARISON_FUNC = D3D11_COMPARISON_FUNC(6i32);
1123pub const D3D11_COMPUTE_SHADER: D3D11_SHADER_TYPE = D3D11_SHADER_TYPE(6i32);
1124#[repr(C)]
1125#[derive(Clone, Copy, Debug, PartialEq)]
1126pub struct D3D11_COMPUTE_SHADER_TRACE_DESC {
1127 pub Invocation: u64,
1128 pub ThreadIDInGroup: [u32; 3],
1129 pub ThreadGroupID: [u32; 3],
1130}
1131impl Default for D3D11_COMPUTE_SHADER_TRACE_DESC {
1132 fn default() -> Self {
1133 unsafe { core::mem::zeroed() }
1134 }
1135}
1136#[repr(transparent)]
1137#[derive(Clone, Copy, Debug, Default, Eq, PartialEq)]
1138pub struct D3D11_CONSERVATIVE_RASTERIZATION_MODE(pub i32);
1139pub const D3D11_CONSERVATIVE_RASTERIZATION_MODE_OFF: D3D11_CONSERVATIVE_RASTERIZATION_MODE =
1140 D3D11_CONSERVATIVE_RASTERIZATION_MODE(0i32);
1141pub const D3D11_CONSERVATIVE_RASTERIZATION_MODE_ON: D3D11_CONSERVATIVE_RASTERIZATION_MODE =
1142 D3D11_CONSERVATIVE_RASTERIZATION_MODE(1i32);
1143pub const D3D11_CONSERVATIVE_RASTERIZATION_NOT_SUPPORTED: D3D11_CONSERVATIVE_RASTERIZATION_TIER =
1144 D3D11_CONSERVATIVE_RASTERIZATION_TIER(0i32);
1145#[repr(transparent)]
1146#[derive(Clone, Copy, Debug, Default, Eq, PartialEq)]
1147pub struct D3D11_CONSERVATIVE_RASTERIZATION_TIER(pub i32);
1148pub const D3D11_CONSERVATIVE_RASTERIZATION_TIER_1: D3D11_CONSERVATIVE_RASTERIZATION_TIER =
1149 D3D11_CONSERVATIVE_RASTERIZATION_TIER(1i32);
1150pub const D3D11_CONSERVATIVE_RASTERIZATION_TIER_2: D3D11_CONSERVATIVE_RASTERIZATION_TIER =
1151 D3D11_CONSERVATIVE_RASTERIZATION_TIER(2i32);
1152pub const D3D11_CONSERVATIVE_RASTERIZATION_TIER_3: D3D11_CONSERVATIVE_RASTERIZATION_TIER =
1153 D3D11_CONSERVATIVE_RASTERIZATION_TIER(3i32);
1154#[repr(transparent)]
1155#[derive(Clone, Copy, Debug, Default, Eq, PartialEq)]
1156pub struct D3D11_CONTENT_PROTECTION_CAPS(pub i32);
1157pub const D3D11_CONTENT_PROTECTION_CAPS_CONTENT_KEY: D3D11_CONTENT_PROTECTION_CAPS =
1158 D3D11_CONTENT_PROTECTION_CAPS(16i32);
1159pub const D3D11_CONTENT_PROTECTION_CAPS_DECRYPTION_BLT: D3D11_CONTENT_PROTECTION_CAPS =
1160 D3D11_CONTENT_PROTECTION_CAPS(1024i32);
1161pub const D3D11_CONTENT_PROTECTION_CAPS_ENCRYPTED_READ_BACK: D3D11_CONTENT_PROTECTION_CAPS =
1162 D3D11_CONTENT_PROTECTION_CAPS(64i32);
1163pub const D3D11_CONTENT_PROTECTION_CAPS_ENCRYPTED_READ_BACK_KEY: D3D11_CONTENT_PROTECTION_CAPS =
1164 D3D11_CONTENT_PROTECTION_CAPS(128i32);
1165pub const D3D11_CONTENT_PROTECTION_CAPS_ENCRYPT_SLICEDATA_ONLY: D3D11_CONTENT_PROTECTION_CAPS =
1166 D3D11_CONTENT_PROTECTION_CAPS(512i32);
1167pub const D3D11_CONTENT_PROTECTION_CAPS_FRESHEN_SESSION_KEY: D3D11_CONTENT_PROTECTION_CAPS =
1168 D3D11_CONTENT_PROTECTION_CAPS(32i32);
1169pub const D3D11_CONTENT_PROTECTION_CAPS_HARDWARE: D3D11_CONTENT_PROTECTION_CAPS =
1170 D3D11_CONTENT_PROTECTION_CAPS(2i32);
1171pub const D3D11_CONTENT_PROTECTION_CAPS_HARDWARE_DRM_COMMUNICATION: D3D11_CONTENT_PROTECTION_CAPS =
1172 D3D11_CONTENT_PROTECTION_CAPS(16384i32);
1173pub const D3D11_CONTENT_PROTECTION_CAPS_HARDWARE_DRM_COMMUNICATION_MULTI_THREADED:
1174 D3D11_CONTENT_PROTECTION_CAPS = D3D11_CONTENT_PROTECTION_CAPS(32768i32);
1175pub const D3D11_CONTENT_PROTECTION_CAPS_HARDWARE_PROTECTED_MEMORY_PAGEABLE:
1176 D3D11_CONTENT_PROTECTION_CAPS = D3D11_CONTENT_PROTECTION_CAPS(4096i32);
1177pub const D3D11_CONTENT_PROTECTION_CAPS_HARDWARE_PROTECT_UNCOMPRESSED:
1178 D3D11_CONTENT_PROTECTION_CAPS = D3D11_CONTENT_PROTECTION_CAPS(2048i32);
1179pub const D3D11_CONTENT_PROTECTION_CAPS_HARDWARE_TEARDOWN: D3D11_CONTENT_PROTECTION_CAPS =
1180 D3D11_CONTENT_PROTECTION_CAPS(8192i32);
1181pub const D3D11_CONTENT_PROTECTION_CAPS_PARTIAL_DECRYPTION: D3D11_CONTENT_PROTECTION_CAPS =
1182 D3D11_CONTENT_PROTECTION_CAPS(8i32);
1183pub const D3D11_CONTENT_PROTECTION_CAPS_PROTECTION_ALWAYS_ON: D3D11_CONTENT_PROTECTION_CAPS =
1184 D3D11_CONTENT_PROTECTION_CAPS(4i32);
1185pub const D3D11_CONTENT_PROTECTION_CAPS_SEQUENTIAL_CTR_IV: D3D11_CONTENT_PROTECTION_CAPS =
1186 D3D11_CONTENT_PROTECTION_CAPS(256i32);
1187pub const D3D11_CONTENT_PROTECTION_CAPS_SOFTWARE: D3D11_CONTENT_PROTECTION_CAPS =
1188 D3D11_CONTENT_PROTECTION_CAPS(1i32);
1189#[repr(transparent)]
1190#[derive(Clone, Copy, Debug, Default, Eq, PartialEq)]
1191pub struct D3D11_CONTEXT_TYPE(pub i32);
1192pub const D3D11_CONTEXT_TYPE_3D: D3D11_CONTEXT_TYPE = D3D11_CONTEXT_TYPE(1i32);
1193pub const D3D11_CONTEXT_TYPE_ALL: D3D11_CONTEXT_TYPE = D3D11_CONTEXT_TYPE(0i32);
1194pub const D3D11_CONTEXT_TYPE_COMPUTE: D3D11_CONTEXT_TYPE = D3D11_CONTEXT_TYPE(2i32);
1195pub const D3D11_CONTEXT_TYPE_COPY: D3D11_CONTEXT_TYPE = D3D11_CONTEXT_TYPE(3i32);
1196pub const D3D11_CONTEXT_TYPE_VIDEO: D3D11_CONTEXT_TYPE = D3D11_CONTEXT_TYPE(4i32);
1197pub const D3D11_COPY_DISCARD: D3D11_COPY_FLAGS = D3D11_COPY_FLAGS(2i32);
1198#[repr(transparent)]
1199#[derive(Clone, Copy, Debug, Default, Eq, PartialEq)]
1200pub struct D3D11_COPY_FLAGS(pub i32);
1201pub const D3D11_COPY_NO_OVERWRITE: D3D11_COPY_FLAGS = D3D11_COPY_FLAGS(1i32);
1202#[repr(transparent)]
1203#[derive(Clone, Copy, Debug, Default, Eq, PartialEq)]
1204pub struct D3D11_COUNTER(pub i32);
1205#[repr(C)]
1206#[derive(Clone, Copy, Debug, PartialEq)]
1207pub struct D3D11_COUNTER_DESC {
1208 pub Counter: D3D11_COUNTER,
1209 pub MiscFlags: u32,
1210}
1211impl Default for D3D11_COUNTER_DESC {
1212 fn default() -> Self {
1213 unsafe { core::mem::zeroed() }
1214 }
1215}
1216pub const D3D11_COUNTER_DEVICE_DEPENDENT_0: D3D11_COUNTER = D3D11_COUNTER(1073741824i32);
1217#[repr(C)]
1218#[derive(Clone, Copy, Debug, PartialEq)]
1219pub struct D3D11_COUNTER_INFO {
1220 pub LastDeviceDependentCounter: D3D11_COUNTER,
1221 pub NumSimultaneousCounters: u32,
1222 pub NumDetectableParallelUnits: u8,
1223}
1224impl Default for D3D11_COUNTER_INFO {
1225 fn default() -> Self {
1226 unsafe { core::mem::zeroed() }
1227 }
1228}
1229#[repr(transparent)]
1230#[derive(Clone, Copy, Debug, Default, Eq, PartialEq)]
1231pub struct D3D11_COUNTER_TYPE(pub i32);
1232pub const D3D11_COUNTER_TYPE_FLOAT32: D3D11_COUNTER_TYPE = D3D11_COUNTER_TYPE(0i32);
1233pub const D3D11_COUNTER_TYPE_UINT16: D3D11_COUNTER_TYPE = D3D11_COUNTER_TYPE(1i32);
1234pub const D3D11_COUNTER_TYPE_UINT32: D3D11_COUNTER_TYPE = D3D11_COUNTER_TYPE(2i32);
1235pub const D3D11_COUNTER_TYPE_UINT64: D3D11_COUNTER_TYPE = D3D11_COUNTER_TYPE(3i32);
1236#[repr(transparent)]
1237#[derive(Clone, Copy, Debug, Default, Eq, PartialEq)]
1238pub struct D3D11_CPU_ACCESS_FLAG(pub i32);
1239impl D3D11_CPU_ACCESS_FLAG {
1240 pub const fn contains(&self, other: Self) -> bool {
1241 self.0 & other.0 == other.0
1242 }
1243}
1244impl core::ops::BitOr for D3D11_CPU_ACCESS_FLAG {
1245 type Output = Self;
1246 fn bitor(self, other: Self) -> Self {
1247 Self(self.0 | other.0)
1248 }
1249}
1250impl core::ops::BitAnd for D3D11_CPU_ACCESS_FLAG {
1251 type Output = Self;
1252 fn bitand(self, other: Self) -> Self {
1253 Self(self.0 & other.0)
1254 }
1255}
1256impl core::ops::BitOrAssign for D3D11_CPU_ACCESS_FLAG {
1257 fn bitor_assign(&mut self, other: Self) {
1258 self.0.bitor_assign(other.0)
1259 }
1260}
1261impl core::ops::BitAndAssign for D3D11_CPU_ACCESS_FLAG {
1262 fn bitand_assign(&mut self, other: Self) {
1263 self.0.bitand_assign(other.0)
1264 }
1265}
1266impl core::ops::Not for D3D11_CPU_ACCESS_FLAG {
1267 type Output = Self;
1268 fn not(self) -> Self {
1269 Self(self.0.not())
1270 }
1271}
1272pub const D3D11_CPU_ACCESS_READ: D3D11_CPU_ACCESS_FLAG = D3D11_CPU_ACCESS_FLAG(131072i32);
1273pub const D3D11_CPU_ACCESS_WRITE: D3D11_CPU_ACCESS_FLAG = D3D11_CPU_ACCESS_FLAG(65536i32);
1274pub const D3D11_CREATE_DEVICE_BGRA_SUPPORT: D3D11_CREATE_DEVICE_FLAG =
1275 D3D11_CREATE_DEVICE_FLAG(32u32);
1276pub const D3D11_CREATE_DEVICE_DEBUG: D3D11_CREATE_DEVICE_FLAG = D3D11_CREATE_DEVICE_FLAG(2u32);
1277pub const D3D11_CREATE_DEVICE_DEBUGGABLE: D3D11_CREATE_DEVICE_FLAG =
1278 D3D11_CREATE_DEVICE_FLAG(64u32);
1279pub const D3D11_CREATE_DEVICE_DISABLE_GPU_TIMEOUT: D3D11_CREATE_DEVICE_FLAG =
1280 D3D11_CREATE_DEVICE_FLAG(256u32);
1281#[repr(transparent)]
1282#[derive(Clone, Copy, Debug, Default, Eq, PartialEq)]
1283pub struct D3D11_CREATE_DEVICE_FLAG(pub u32);
1284impl D3D11_CREATE_DEVICE_FLAG {
1285 pub const fn contains(&self, other: Self) -> bool {
1286 self.0 & other.0 == other.0
1287 }
1288}
1289impl core::ops::BitOr for D3D11_CREATE_DEVICE_FLAG {
1290 type Output = Self;
1291 fn bitor(self, other: Self) -> Self {
1292 Self(self.0 | other.0)
1293 }
1294}
1295impl core::ops::BitAnd for D3D11_CREATE_DEVICE_FLAG {
1296 type Output = Self;
1297 fn bitand(self, other: Self) -> Self {
1298 Self(self.0 & other.0)
1299 }
1300}
1301impl core::ops::BitOrAssign for D3D11_CREATE_DEVICE_FLAG {
1302 fn bitor_assign(&mut self, other: Self) {
1303 self.0.bitor_assign(other.0)
1304 }
1305}
1306impl core::ops::BitAndAssign for D3D11_CREATE_DEVICE_FLAG {
1307 fn bitand_assign(&mut self, other: Self) {
1308 self.0.bitand_assign(other.0)
1309 }
1310}
1311impl core::ops::Not for D3D11_CREATE_DEVICE_FLAG {
1312 type Output = Self;
1313 fn not(self) -> Self {
1314 Self(self.0.not())
1315 }
1316}
1317pub const D3D11_CREATE_DEVICE_PREVENT_ALTERING_LAYER_SETTINGS_FROM_REGISTRY:
1318 D3D11_CREATE_DEVICE_FLAG = D3D11_CREATE_DEVICE_FLAG(128u32);
1319pub const D3D11_CREATE_DEVICE_PREVENT_INTERNAL_THREADING_OPTIMIZATIONS: D3D11_CREATE_DEVICE_FLAG =
1320 D3D11_CREATE_DEVICE_FLAG(8u32);
1321pub const D3D11_CREATE_DEVICE_SINGLETHREADED: D3D11_CREATE_DEVICE_FLAG =
1322 D3D11_CREATE_DEVICE_FLAG(1u32);
1323pub const D3D11_CREATE_DEVICE_SWITCH_TO_REF: D3D11_CREATE_DEVICE_FLAG =
1324 D3D11_CREATE_DEVICE_FLAG(4u32);
1325pub const D3D11_CREATE_DEVICE_VIDEO_SUPPORT: D3D11_CREATE_DEVICE_FLAG =
1326 D3D11_CREATE_DEVICE_FLAG(2048u32);
1327#[repr(transparent)]
1328#[derive(Clone, Copy, Debug, Default, Eq, PartialEq)]
1329pub struct D3D11_CRYPTO_SESSION_KEY_EXCHANGE_FLAGS(pub i32);
1330impl D3D11_CRYPTO_SESSION_KEY_EXCHANGE_FLAGS {
1331 pub const fn contains(&self, other: Self) -> bool {
1332 self.0 & other.0 == other.0
1333 }
1334}
1335impl core::ops::BitOr for D3D11_CRYPTO_SESSION_KEY_EXCHANGE_FLAGS {
1336 type Output = Self;
1337 fn bitor(self, other: Self) -> Self {
1338 Self(self.0 | other.0)
1339 }
1340}
1341impl core::ops::BitAnd for D3D11_CRYPTO_SESSION_KEY_EXCHANGE_FLAGS {
1342 type Output = Self;
1343 fn bitand(self, other: Self) -> Self {
1344 Self(self.0 & other.0)
1345 }
1346}
1347impl core::ops::BitOrAssign for D3D11_CRYPTO_SESSION_KEY_EXCHANGE_FLAGS {
1348 fn bitor_assign(&mut self, other: Self) {
1349 self.0.bitor_assign(other.0)
1350 }
1351}
1352impl core::ops::BitAndAssign for D3D11_CRYPTO_SESSION_KEY_EXCHANGE_FLAGS {
1353 fn bitand_assign(&mut self, other: Self) {
1354 self.0.bitand_assign(other.0)
1355 }
1356}
1357impl core::ops::Not for D3D11_CRYPTO_SESSION_KEY_EXCHANGE_FLAGS {
1358 type Output = Self;
1359 fn not(self) -> Self {
1360 Self(self.0.not())
1361 }
1362}
1363pub const D3D11_CRYPTO_SESSION_KEY_EXCHANGE_FLAG_NONE: D3D11_CRYPTO_SESSION_KEY_EXCHANGE_FLAGS =
1364 D3D11_CRYPTO_SESSION_KEY_EXCHANGE_FLAGS(0i32);
1365#[repr(transparent)]
1366#[derive(Clone, Copy, Debug, Default, Eq, PartialEq)]
1367pub struct D3D11_CRYPTO_SESSION_STATUS(pub i32);
1368pub const D3D11_CRYPTO_SESSION_STATUS_KEY_AND_CONTENT_LOST: D3D11_CRYPTO_SESSION_STATUS =
1369 D3D11_CRYPTO_SESSION_STATUS(2i32);
1370pub const D3D11_CRYPTO_SESSION_STATUS_KEY_LOST: D3D11_CRYPTO_SESSION_STATUS =
1371 D3D11_CRYPTO_SESSION_STATUS(1i32);
1372pub const D3D11_CRYPTO_SESSION_STATUS_OK: D3D11_CRYPTO_SESSION_STATUS =
1373 D3D11_CRYPTO_SESSION_STATUS(0i32);
1374pub const D3D11_CRYPTO_TYPE_AES128_CTR: windows_core::GUID =
1375 windows_core::GUID::from_u128(0x9b6bd711_4f74_41c9_9e7b_0be2d7d93b4f);
1376pub const D3D11_CS_4_X_BUCKET00_MAX_BYTES_TGSM_WRITABLE_PER_THREAD: u32 = 256u32;
1377pub const D3D11_CS_4_X_BUCKET00_MAX_NUM_THREADS_PER_GROUP: u32 = 64u32;
1378pub const D3D11_CS_4_X_BUCKET01_MAX_BYTES_TGSM_WRITABLE_PER_THREAD: u32 = 240u32;
1379pub const D3D11_CS_4_X_BUCKET01_MAX_NUM_THREADS_PER_GROUP: u32 = 68u32;
1380pub const D3D11_CS_4_X_BUCKET02_MAX_BYTES_TGSM_WRITABLE_PER_THREAD: u32 = 224u32;
1381pub const D3D11_CS_4_X_BUCKET02_MAX_NUM_THREADS_PER_GROUP: u32 = 72u32;
1382pub const D3D11_CS_4_X_BUCKET03_MAX_BYTES_TGSM_WRITABLE_PER_THREAD: u32 = 208u32;
1383pub const D3D11_CS_4_X_BUCKET03_MAX_NUM_THREADS_PER_GROUP: u32 = 76u32;
1384pub const D3D11_CS_4_X_BUCKET04_MAX_BYTES_TGSM_WRITABLE_PER_THREAD: u32 = 192u32;
1385pub const D3D11_CS_4_X_BUCKET04_MAX_NUM_THREADS_PER_GROUP: u32 = 84u32;
1386pub const D3D11_CS_4_X_BUCKET05_MAX_BYTES_TGSM_WRITABLE_PER_THREAD: u32 = 176u32;
1387pub const D3D11_CS_4_X_BUCKET05_MAX_NUM_THREADS_PER_GROUP: u32 = 92u32;
1388pub const D3D11_CS_4_X_BUCKET06_MAX_BYTES_TGSM_WRITABLE_PER_THREAD: u32 = 160u32;
1389pub const D3D11_CS_4_X_BUCKET06_MAX_NUM_THREADS_PER_GROUP: u32 = 100u32;
1390pub const D3D11_CS_4_X_BUCKET07_MAX_BYTES_TGSM_WRITABLE_PER_THREAD: u32 = 144u32;
1391pub const D3D11_CS_4_X_BUCKET07_MAX_NUM_THREADS_PER_GROUP: u32 = 112u32;
1392pub const D3D11_CS_4_X_BUCKET08_MAX_BYTES_TGSM_WRITABLE_PER_THREAD: u32 = 128u32;
1393pub const D3D11_CS_4_X_BUCKET08_MAX_NUM_THREADS_PER_GROUP: u32 = 128u32;
1394pub const D3D11_CS_4_X_BUCKET09_MAX_BYTES_TGSM_WRITABLE_PER_THREAD: u32 = 112u32;
1395pub const D3D11_CS_4_X_BUCKET09_MAX_NUM_THREADS_PER_GROUP: u32 = 144u32;
1396pub const D3D11_CS_4_X_BUCKET10_MAX_BYTES_TGSM_WRITABLE_PER_THREAD: u32 = 96u32;
1397pub const D3D11_CS_4_X_BUCKET10_MAX_NUM_THREADS_PER_GROUP: u32 = 168u32;
1398pub const D3D11_CS_4_X_BUCKET11_MAX_BYTES_TGSM_WRITABLE_PER_THREAD: u32 = 80u32;
1399pub const D3D11_CS_4_X_BUCKET11_MAX_NUM_THREADS_PER_GROUP: u32 = 204u32;
1400pub const D3D11_CS_4_X_BUCKET12_MAX_BYTES_TGSM_WRITABLE_PER_THREAD: u32 = 64u32;
1401pub const D3D11_CS_4_X_BUCKET12_MAX_NUM_THREADS_PER_GROUP: u32 = 256u32;
1402pub const D3D11_CS_4_X_BUCKET13_MAX_BYTES_TGSM_WRITABLE_PER_THREAD: u32 = 48u32;
1403pub const D3D11_CS_4_X_BUCKET13_MAX_NUM_THREADS_PER_GROUP: u32 = 340u32;
1404pub const D3D11_CS_4_X_BUCKET14_MAX_BYTES_TGSM_WRITABLE_PER_THREAD: u32 = 32u32;
1405pub const D3D11_CS_4_X_BUCKET14_MAX_NUM_THREADS_PER_GROUP: u32 = 512u32;
1406pub const D3D11_CS_4_X_BUCKET15_MAX_BYTES_TGSM_WRITABLE_PER_THREAD: u32 = 16u32;
1407pub const D3D11_CS_4_X_BUCKET15_MAX_NUM_THREADS_PER_GROUP: u32 = 768u32;
1408pub const D3D11_CS_4_X_DISPATCH_MAX_THREAD_GROUPS_IN_Z_DIMENSION: u32 = 1u32;
1409pub const D3D11_CS_4_X_RAW_UAV_BYTE_ALIGNMENT: u32 = 256u32;
1410pub const D3D11_CS_4_X_THREAD_GROUP_MAX_THREADS_PER_GROUP: u32 = 768u32;
1411pub const D3D11_CS_4_X_THREAD_GROUP_MAX_X: u32 = 768u32;
1412pub const D3D11_CS_4_X_THREAD_GROUP_MAX_Y: u32 = 768u32;
1413pub const D3D11_CS_4_X_UAV_REGISTER_COUNT: u32 = 1u32;
1414pub const D3D11_CS_DISPATCH_MAX_THREAD_GROUPS_PER_DIMENSION: u32 = 65535u32;
1415pub const D3D11_CS_TGSM_REGISTER_COUNT: u32 = 8192u32;
1416pub const D3D11_CS_TGSM_REGISTER_READS_PER_INST: u32 = 1u32;
1417pub const D3D11_CS_TGSM_RESOURCE_REGISTER_COMPONENTS: u32 = 1u32;
1418pub const D3D11_CS_TGSM_RESOURCE_REGISTER_READ_PORTS: u32 = 1u32;
1419pub const D3D11_CS_THREADGROUPID_REGISTER_COMPONENTS: u32 = 3u32;
1420pub const D3D11_CS_THREADGROUPID_REGISTER_COUNT: u32 = 1u32;
1421pub const D3D11_CS_THREADIDINGROUPFLATTENED_REGISTER_COMPONENTS: u32 = 1u32;
1422pub const D3D11_CS_THREADIDINGROUPFLATTENED_REGISTER_COUNT: u32 = 1u32;
1423pub const D3D11_CS_THREADIDINGROUP_REGISTER_COMPONENTS: u32 = 3u32;
1424pub const D3D11_CS_THREADIDINGROUP_REGISTER_COUNT: u32 = 1u32;
1425pub const D3D11_CS_THREADID_REGISTER_COMPONENTS: u32 = 3u32;
1426pub const D3D11_CS_THREADID_REGISTER_COUNT: u32 = 1u32;
1427pub const D3D11_CS_THREAD_GROUP_MAX_THREADS_PER_GROUP: u32 = 1024u32;
1428pub const D3D11_CS_THREAD_GROUP_MAX_X: u32 = 1024u32;
1429pub const D3D11_CS_THREAD_GROUP_MAX_Y: u32 = 1024u32;
1430pub const D3D11_CS_THREAD_GROUP_MAX_Z: u32 = 64u32;
1431pub const D3D11_CS_THREAD_GROUP_MIN_X: u32 = 1u32;
1432pub const D3D11_CS_THREAD_GROUP_MIN_Y: u32 = 1u32;
1433pub const D3D11_CS_THREAD_GROUP_MIN_Z: u32 = 1u32;
1434pub const D3D11_CS_THREAD_LOCAL_TEMP_REGISTER_POOL: u32 = 16384u32;
1435pub const D3D11_CULL_BACK: D3D11_CULL_MODE = D3D11_CULL_MODE(3i32);
1436pub const D3D11_CULL_FRONT: D3D11_CULL_MODE = D3D11_CULL_MODE(2i32);
1437#[repr(transparent)]
1438#[derive(Clone, Copy, Debug, Default, Eq, PartialEq)]
1439pub struct D3D11_CULL_MODE(pub i32);
1440pub const D3D11_CULL_NONE: D3D11_CULL_MODE = D3D11_CULL_MODE(1i32);
1441pub const D3D11_DEBUG_FEATURE_ALWAYS_DISCARD_OFFERED_RESOURCE: u32 = 8u32;
1442pub const D3D11_DEBUG_FEATURE_AVOID_BEHAVIOR_CHANGING_DEBUG_AIDS: u32 = 64u32;
1443pub const D3D11_DEBUG_FEATURE_DISABLE_TILED_RESOURCE_MAPPING_TRACKING_AND_VALIDATION: u32 = 128u32;
1444pub const D3D11_DEBUG_FEATURE_FINISH_PER_RENDER_OP: u32 = 2u32;
1445pub const D3D11_DEBUG_FEATURE_FLUSH_PER_RENDER_OP: u32 = 1u32;
1446pub const D3D11_DEBUG_FEATURE_NEVER_DISCARD_OFFERED_RESOURCE: u32 = 16u32;
1447pub const D3D11_DEBUG_FEATURE_PRESENT_PER_RENDER_OP: u32 = 4u32;
1448pub const D3D11_DECODER_BITSTREAM_ENCRYPTION_TYPE_CBCS: windows_core::GUID =
1449 windows_core::GUID::from_u128(0x422d9319_9d21_4bb7_9371_faf5a82c3e04);
1450pub const D3D11_DECODER_BITSTREAM_ENCRYPTION_TYPE_CENC: windows_core::GUID =
1451 windows_core::GUID::from_u128(0xb0405235_c13d_44f2_9ae5_dd48e08e5b67);
1452pub const D3D11_DECODER_ENCRYPTION_HW_CENC: windows_core::GUID =
1453 windows_core::GUID::from_u128(0x89d6ac4f_09f2_4229_b2cd_37740a6dfd81);
1454pub const D3D11_DECODER_PROFILE_AV1_VLD_12BIT_PROFILE2: windows_core::GUID =
1455 windows_core::GUID::from_u128(0x17127009_a00f_4ce1_994e_bf4081f6f3f0);
1456pub const D3D11_DECODER_PROFILE_AV1_VLD_12BIT_PROFILE2_420: windows_core::GUID =
1457 windows_core::GUID::from_u128(0x2d80bed6_9cac_4835_9e91_327bbc4f9ee8);
1458pub const D3D11_DECODER_PROFILE_AV1_VLD_PROFILE0: windows_core::GUID =
1459 windows_core::GUID::from_u128(0xb8be4ccb_cf53_46ba_8d59_d6b8a6da5d2a);
1460pub const D3D11_DECODER_PROFILE_AV1_VLD_PROFILE1: windows_core::GUID =
1461 windows_core::GUID::from_u128(0x6936ff0f_45b1_4163_9cc1_646ef6946108);
1462pub const D3D11_DECODER_PROFILE_AV1_VLD_PROFILE2: windows_core::GUID =
1463 windows_core::GUID::from_u128(0x0c5f2aa1_e541_4089_bb7b_98110a19d7c8);
1464pub const D3D11_DECODER_PROFILE_H264_IDCT_FGT: windows_core::GUID =
1465 windows_core::GUID::from_u128(0x1b81be67_a0c7_11d3_b984_00c04f2e73c5);
1466pub const D3D11_DECODER_PROFILE_H264_IDCT_NOFGT: windows_core::GUID =
1467 windows_core::GUID::from_u128(0x1b81be66_a0c7_11d3_b984_00c04f2e73c5);
1468pub const D3D11_DECODER_PROFILE_H264_MOCOMP_FGT: windows_core::GUID =
1469 windows_core::GUID::from_u128(0x1b81be65_a0c7_11d3_b984_00c04f2e73c5);
1470pub const D3D11_DECODER_PROFILE_H264_MOCOMP_NOFGT: windows_core::GUID =
1471 windows_core::GUID::from_u128(0x1b81be64_a0c7_11d3_b984_00c04f2e73c5);
1472pub const D3D11_DECODER_PROFILE_H264_VLD_FGT: windows_core::GUID =
1473 windows_core::GUID::from_u128(0x1b81be69_a0c7_11d3_b984_00c04f2e73c5);
1474pub const D3D11_DECODER_PROFILE_H264_VLD_MULTIVIEW_NOFGT: windows_core::GUID =
1475 windows_core::GUID::from_u128(0x705b9d82_76cf_49d6_b7e6_ac8872db013c);
1476pub const D3D11_DECODER_PROFILE_H264_VLD_NOFGT: windows_core::GUID =
1477 windows_core::GUID::from_u128(0x1b81be68_a0c7_11d3_b984_00c04f2e73c5);
1478pub const D3D11_DECODER_PROFILE_H264_VLD_STEREO_NOFGT: windows_core::GUID =
1479 windows_core::GUID::from_u128(0xf9aaccbb_c2b6_4cfc_8779_5707b1760552);
1480pub const D3D11_DECODER_PROFILE_H264_VLD_STEREO_PROGRESSIVE_NOFGT: windows_core::GUID =
1481 windows_core::GUID::from_u128(0xd79be8da_0cf1_4c81_b82a_69a4e236f43d);
1482pub const D3D11_DECODER_PROFILE_H264_VLD_WITHFMOASO_NOFGT: windows_core::GUID =
1483 windows_core::GUID::from_u128(0xd5f04ff9_3418_45d8_9561_32a76aae2ddd);
1484pub const D3D11_DECODER_PROFILE_HEVC_VLD_MAIN: windows_core::GUID =
1485 windows_core::GUID::from_u128(0x5b11d51b_2f4c_4452_bcc3_09f2a1160cc0);
1486pub const D3D11_DECODER_PROFILE_HEVC_VLD_MAIN10: windows_core::GUID =
1487 windows_core::GUID::from_u128(0x107af0e0_ef1a_4d19_aba8_67a163073d13);
1488pub const D3D11_DECODER_PROFILE_MPEG1_VLD: windows_core::GUID =
1489 windows_core::GUID::from_u128(0x6f3ec719_3735_42cc_8063_65cc3cb36616);
1490pub const D3D11_DECODER_PROFILE_MPEG2_IDCT: windows_core::GUID =
1491 windows_core::GUID::from_u128(0xbf22ad00_03ea_4690_8077_473346209b7e);
1492pub const D3D11_DECODER_PROFILE_MPEG2_MOCOMP: windows_core::GUID =
1493 windows_core::GUID::from_u128(0xe6a9f44b_61b0_4563_9ea4_63d2a3c6fe66);
1494pub const D3D11_DECODER_PROFILE_MPEG2_VLD: windows_core::GUID =
1495 windows_core::GUID::from_u128(0xee27417f_5e28_4e65_beea_1d26b508adc9);
1496pub const D3D11_DECODER_PROFILE_MPEG2and1_VLD: windows_core::GUID =
1497 windows_core::GUID::from_u128(0x86695f12_340e_4f04_9fd3_9253dd327460);
1498pub const D3D11_DECODER_PROFILE_MPEG4PT2_VLD_ADVSIMPLE_GMC: windows_core::GUID =
1499 windows_core::GUID::from_u128(0xab998b5b_4258_44a9_9feb_94e597a6baae);
1500pub const D3D11_DECODER_PROFILE_MPEG4PT2_VLD_ADVSIMPLE_NOGMC: windows_core::GUID =
1501 windows_core::GUID::from_u128(0xed418a9f_010d_4eda_9ae3_9a65358d8d2e);
1502pub const D3D11_DECODER_PROFILE_MPEG4PT2_VLD_SIMPLE: windows_core::GUID =
1503 windows_core::GUID::from_u128(0xefd64d74_c9e8_41d7_a5e9_e9b0e39fa319);
1504pub const D3D11_DECODER_PROFILE_VC1_D2010: windows_core::GUID =
1505 windows_core::GUID::from_u128(0x1b81bea4_a0c7_11d3_b984_00c04f2e73c5);
1506pub const D3D11_DECODER_PROFILE_VC1_IDCT: windows_core::GUID =
1507 windows_core::GUID::from_u128(0x1b81bea2_a0c7_11d3_b984_00c04f2e73c5);
1508pub const D3D11_DECODER_PROFILE_VC1_MOCOMP: windows_core::GUID =
1509 windows_core::GUID::from_u128(0x1b81bea1_a0c7_11d3_b984_00c04f2e73c5);
1510pub const D3D11_DECODER_PROFILE_VC1_POSTPROC: windows_core::GUID =
1511 windows_core::GUID::from_u128(0x1b81bea0_a0c7_11d3_b984_00c04f2e73c5);
1512pub const D3D11_DECODER_PROFILE_VC1_VLD: windows_core::GUID =
1513 windows_core::GUID::from_u128(0x1b81bea3_a0c7_11d3_b984_00c04f2e73c5);
1514pub const D3D11_DECODER_PROFILE_VP8_VLD: windows_core::GUID =
1515 windows_core::GUID::from_u128(0x90b899ea_3a62_4705_88b3_8df04b2744e7);
1516pub const D3D11_DECODER_PROFILE_VP9_VLD_10BIT_PROFILE2: windows_core::GUID =
1517 windows_core::GUID::from_u128(0xa4c749ef_6ecf_48aa_8448_50a7a1165ff7);
1518pub const D3D11_DECODER_PROFILE_VP9_VLD_PROFILE0: windows_core::GUID =
1519 windows_core::GUID::from_u128(0x463707f8_a1d0_4585_876d_83aa6d60b89e);
1520pub const D3D11_DECODER_PROFILE_WMV8_MOCOMP: windows_core::GUID =
1521 windows_core::GUID::from_u128(0x1b81be81_a0c7_11d3_b984_00c04f2e73c5);
1522pub const D3D11_DECODER_PROFILE_WMV8_POSTPROC: windows_core::GUID =
1523 windows_core::GUID::from_u128(0x1b81be80_a0c7_11d3_b984_00c04f2e73c5);
1524pub const D3D11_DECODER_PROFILE_WMV9_IDCT: windows_core::GUID =
1525 windows_core::GUID::from_u128(0x1b81be94_a0c7_11d3_b984_00c04f2e73c5);
1526pub const D3D11_DECODER_PROFILE_WMV9_MOCOMP: windows_core::GUID =
1527 windows_core::GUID::from_u128(0x1b81be91_a0c7_11d3_b984_00c04f2e73c5);
1528pub const D3D11_DECODER_PROFILE_WMV9_POSTPROC: windows_core::GUID =
1529 windows_core::GUID::from_u128(0x1b81be90_a0c7_11d3_b984_00c04f2e73c5);
1530pub const D3D11_DEFAULT_BLEND_FACTOR_ALPHA: f32 = 1f32;
1531pub const D3D11_DEFAULT_BLEND_FACTOR_BLUE: f32 = 1f32;
1532pub const D3D11_DEFAULT_BLEND_FACTOR_GREEN: f32 = 1f32;
1533pub const D3D11_DEFAULT_BLEND_FACTOR_RED: f32 = 1f32;
1534pub const D3D11_DEFAULT_BORDER_COLOR_COMPONENT: f32 = 0f32;
1535pub const D3D11_DEFAULT_DEPTH_BIAS: u32 = 0u32;
1536pub const D3D11_DEFAULT_DEPTH_BIAS_CLAMP: f32 = 0f32;
1537pub const D3D11_DEFAULT_MAX_ANISOTROPY: u32 = 16u32;
1538pub const D3D11_DEFAULT_MIP_LOD_BIAS: f32 = 0f32;
1539pub const D3D11_DEFAULT_RENDER_TARGET_ARRAY_INDEX: u32 = 0u32;
1540pub const D3D11_DEFAULT_SAMPLE_MASK: u32 = 4294967295u32;
1541pub const D3D11_DEFAULT_SCISSOR_ENDX: u32 = 0u32;
1542pub const D3D11_DEFAULT_SCISSOR_ENDY: u32 = 0u32;
1543pub const D3D11_DEFAULT_SCISSOR_STARTX: u32 = 0u32;
1544pub const D3D11_DEFAULT_SCISSOR_STARTY: u32 = 0u32;
1545pub const D3D11_DEFAULT_SLOPE_SCALED_DEPTH_BIAS: f32 = 0f32;
1546pub const D3D11_DEFAULT_STENCIL_READ_MASK: u32 = 255u32;
1547pub const D3D11_DEFAULT_STENCIL_REFERENCE: u32 = 0u32;
1548pub const D3D11_DEFAULT_STENCIL_WRITE_MASK: u32 = 255u32;
1549pub const D3D11_DEFAULT_VIEWPORT_AND_SCISSORRECT_INDEX: u32 = 0u32;
1550pub const D3D11_DEFAULT_VIEWPORT_HEIGHT: u32 = 0u32;
1551pub const D3D11_DEFAULT_VIEWPORT_MAX_DEPTH: f32 = 0f32;
1552pub const D3D11_DEFAULT_VIEWPORT_MIN_DEPTH: f32 = 0f32;
1553pub const D3D11_DEFAULT_VIEWPORT_TOPLEFTX: u32 = 0u32;
1554pub const D3D11_DEFAULT_VIEWPORT_TOPLEFTY: u32 = 0u32;
1555pub const D3D11_DEFAULT_VIEWPORT_WIDTH: u32 = 0u32;
1556#[repr(C)]
1557#[derive(Clone, Copy, Debug, PartialEq)]
1558pub struct D3D11_DEPTH_STENCILOP_DESC {
1559 pub StencilFailOp: D3D11_STENCIL_OP,
1560 pub StencilDepthFailOp: D3D11_STENCIL_OP,
1561 pub StencilPassOp: D3D11_STENCIL_OP,
1562 pub StencilFunc: D3D11_COMPARISON_FUNC,
1563}
1564impl Default for D3D11_DEPTH_STENCILOP_DESC {
1565 fn default() -> Self {
1566 unsafe { core::mem::zeroed() }
1567 }
1568}
1569#[repr(C)]
1570#[derive(Clone, Copy, Debug, PartialEq)]
1571pub struct D3D11_DEPTH_STENCIL_DESC {
1572 pub DepthEnable: crate::Foundation::BOOL,
1573 pub DepthWriteMask: D3D11_DEPTH_WRITE_MASK,
1574 pub DepthFunc: D3D11_COMPARISON_FUNC,
1575 pub StencilEnable: crate::Foundation::BOOL,
1576 pub StencilReadMask: u8,
1577 pub StencilWriteMask: u8,
1578 pub FrontFace: D3D11_DEPTH_STENCILOP_DESC,
1579 pub BackFace: D3D11_DEPTH_STENCILOP_DESC,
1580}
1581impl Default for D3D11_DEPTH_STENCIL_DESC {
1582 fn default() -> Self {
1583 unsafe { core::mem::zeroed() }
1584 }
1585}
1586#[repr(C)]
1587#[cfg(feature = "Win32_Graphics_Dxgi_Common")]
1588#[derive(Clone, Copy)]
1589pub struct D3D11_DEPTH_STENCIL_VIEW_DESC {
1590 pub Format: crate::Dxgi::Common::DXGI_FORMAT,
1591 pub ViewDimension: D3D11_DSV_DIMENSION,
1592 pub Flags: u32,
1593 pub Anonymous: D3D11_DEPTH_STENCIL_VIEW_DESC_0,
1594}
1595#[cfg(feature = "Win32_Graphics_Dxgi_Common")]
1596impl Default for D3D11_DEPTH_STENCIL_VIEW_DESC {
1597 fn default() -> Self {
1598 unsafe { core::mem::zeroed() }
1599 }
1600}
1601#[repr(C)]
1602#[cfg(feature = "Win32_Graphics_Dxgi_Common")]
1603#[derive(Clone, Copy)]
1604pub union D3D11_DEPTH_STENCIL_VIEW_DESC_0 {
1605 pub Texture1D: D3D11_TEX1D_DSV,
1606 pub Texture1DArray: D3D11_TEX1D_ARRAY_DSV,
1607 pub Texture2D: D3D11_TEX2D_DSV,
1608 pub Texture2DArray: D3D11_TEX2D_ARRAY_DSV,
1609 pub Texture2DMS: D3D11_TEX2DMS_DSV,
1610 pub Texture2DMSArray: D3D11_TEX2DMS_ARRAY_DSV,
1611}
1612#[cfg(feature = "Win32_Graphics_Dxgi_Common")]
1613impl Default for D3D11_DEPTH_STENCIL_VIEW_DESC_0 {
1614 fn default() -> Self {
1615 unsafe { core::mem::zeroed() }
1616 }
1617}
1618#[repr(transparent)]
1619#[derive(Clone, Copy, Debug, Default, Eq, PartialEq)]
1620pub struct D3D11_DEPTH_WRITE_MASK(pub i32);
1621pub const D3D11_DEPTH_WRITE_MASK_ALL: D3D11_DEPTH_WRITE_MASK = D3D11_DEPTH_WRITE_MASK(1i32);
1622pub const D3D11_DEPTH_WRITE_MASK_ZERO: D3D11_DEPTH_WRITE_MASK = D3D11_DEPTH_WRITE_MASK(0i32);
1623pub const D3D11_DEVICE_CONTEXT_DEFERRED: D3D11_DEVICE_CONTEXT_TYPE =
1624 D3D11_DEVICE_CONTEXT_TYPE(1i32);
1625pub const D3D11_DEVICE_CONTEXT_IMMEDIATE: D3D11_DEVICE_CONTEXT_TYPE =
1626 D3D11_DEVICE_CONTEXT_TYPE(0i32);
1627#[repr(transparent)]
1628#[derive(Clone, Copy, Debug, Default, Eq, PartialEq)]
1629pub struct D3D11_DEVICE_CONTEXT_TYPE(pub i32);
1630pub const D3D11_DOMAIN_SHADER: D3D11_SHADER_TYPE = D3D11_SHADER_TYPE(3i32);
1631#[repr(C)]
1632#[derive(Clone, Copy, Debug, PartialEq)]
1633pub struct D3D11_DOMAIN_SHADER_TRACE_DESC {
1634 pub Invocation: u64,
1635}
1636impl Default for D3D11_DOMAIN_SHADER_TRACE_DESC {
1637 fn default() -> Self {
1638 unsafe { core::mem::zeroed() }
1639 }
1640}
1641#[repr(C)]
1642#[derive(Clone, Copy, Debug, PartialEq)]
1643pub struct D3D11_DRAW_INDEXED_INSTANCED_INDIRECT_ARGS {
1644 pub IndexCountPerInstance: u32,
1645 pub InstanceCount: u32,
1646 pub StartIndexLocation: u32,
1647 pub BaseVertexLocation: i32,
1648 pub StartInstanceLocation: u32,
1649}
1650impl Default for D3D11_DRAW_INDEXED_INSTANCED_INDIRECT_ARGS {
1651 fn default() -> Self {
1652 unsafe { core::mem::zeroed() }
1653 }
1654}
1655#[repr(C)]
1656#[derive(Clone, Copy, Debug, PartialEq)]
1657pub struct D3D11_DRAW_INSTANCED_INDIRECT_ARGS {
1658 pub VertexCountPerInstance: u32,
1659 pub InstanceCount: u32,
1660 pub StartVertexLocation: u32,
1661 pub StartInstanceLocation: u32,
1662}
1663impl Default for D3D11_DRAW_INSTANCED_INDIRECT_ARGS {
1664 fn default() -> Self {
1665 unsafe { core::mem::zeroed() }
1666 }
1667}
1668#[repr(transparent)]
1669#[derive(Clone, Copy, Debug, Default, Eq, PartialEq)]
1670pub struct D3D11_DSV_DIMENSION(pub i32);
1671pub const D3D11_DSV_DIMENSION_TEXTURE1D: D3D11_DSV_DIMENSION = D3D11_DSV_DIMENSION(1i32);
1672pub const D3D11_DSV_DIMENSION_TEXTURE1DARRAY: D3D11_DSV_DIMENSION = D3D11_DSV_DIMENSION(2i32);
1673pub const D3D11_DSV_DIMENSION_TEXTURE2D: D3D11_DSV_DIMENSION = D3D11_DSV_DIMENSION(3i32);
1674pub const D3D11_DSV_DIMENSION_TEXTURE2DARRAY: D3D11_DSV_DIMENSION = D3D11_DSV_DIMENSION(4i32);
1675pub const D3D11_DSV_DIMENSION_TEXTURE2DMS: D3D11_DSV_DIMENSION = D3D11_DSV_DIMENSION(5i32);
1676pub const D3D11_DSV_DIMENSION_TEXTURE2DMSARRAY: D3D11_DSV_DIMENSION = D3D11_DSV_DIMENSION(6i32);
1677pub const D3D11_DSV_DIMENSION_UNKNOWN: D3D11_DSV_DIMENSION = D3D11_DSV_DIMENSION(0i32);
1678#[repr(transparent)]
1679#[derive(Clone, Copy, Debug, Default, Eq, PartialEq)]
1680pub struct D3D11_DSV_FLAG(pub i32);
1681pub const D3D11_DSV_READ_ONLY_DEPTH: D3D11_DSV_FLAG = D3D11_DSV_FLAG(1i32);
1682pub const D3D11_DSV_READ_ONLY_STENCIL: D3D11_DSV_FLAG = D3D11_DSV_FLAG(2i32);
1683pub const D3D11_DS_INPUT_CONTROL_POINTS_MAX_TOTAL_SCALARS: u32 = 3968u32;
1684pub const D3D11_DS_INPUT_CONTROL_POINT_REGISTER_COMPONENTS: u32 = 4u32;
1685pub const D3D11_DS_INPUT_CONTROL_POINT_REGISTER_COMPONENT_BIT_COUNT: u32 = 32u32;
1686pub const D3D11_DS_INPUT_CONTROL_POINT_REGISTER_COUNT: u32 = 32u32;
1687pub const D3D11_DS_INPUT_CONTROL_POINT_REGISTER_READS_PER_INST: u32 = 2u32;
1688pub const D3D11_DS_INPUT_CONTROL_POINT_REGISTER_READ_PORTS: u32 = 1u32;
1689pub const D3D11_DS_INPUT_DOMAIN_POINT_REGISTER_COMPONENTS: u32 = 3u32;
1690pub const D3D11_DS_INPUT_DOMAIN_POINT_REGISTER_COMPONENT_BIT_COUNT: u32 = 32u32;
1691pub const D3D11_DS_INPUT_DOMAIN_POINT_REGISTER_COUNT: u32 = 1u32;
1692pub const D3D11_DS_INPUT_DOMAIN_POINT_REGISTER_READS_PER_INST: u32 = 2u32;
1693pub const D3D11_DS_INPUT_DOMAIN_POINT_REGISTER_READ_PORTS: u32 = 1u32;
1694pub const D3D11_DS_INPUT_PATCH_CONSTANT_REGISTER_COMPONENTS: u32 = 4u32;
1695pub const D3D11_DS_INPUT_PATCH_CONSTANT_REGISTER_COMPONENT_BIT_COUNT: u32 = 32u32;
1696pub const D3D11_DS_INPUT_PATCH_CONSTANT_REGISTER_COUNT: u32 = 32u32;
1697pub const D3D11_DS_INPUT_PATCH_CONSTANT_REGISTER_READS_PER_INST: u32 = 2u32;
1698pub const D3D11_DS_INPUT_PATCH_CONSTANT_REGISTER_READ_PORTS: u32 = 1u32;
1699pub const D3D11_DS_INPUT_PRIMITIVE_ID_REGISTER_COMPONENTS: u32 = 1u32;
1700pub const D3D11_DS_INPUT_PRIMITIVE_ID_REGISTER_COMPONENT_BIT_COUNT: u32 = 32u32;
1701pub const D3D11_DS_INPUT_PRIMITIVE_ID_REGISTER_COUNT: u32 = 1u32;
1702pub const D3D11_DS_INPUT_PRIMITIVE_ID_REGISTER_READS_PER_INST: u32 = 2u32;
1703pub const D3D11_DS_INPUT_PRIMITIVE_ID_REGISTER_READ_PORTS: u32 = 1u32;
1704pub const D3D11_DS_OUTPUT_REGISTER_COMPONENTS: u32 = 4u32;
1705pub const D3D11_DS_OUTPUT_REGISTER_COMPONENT_BIT_COUNT: u32 = 32u32;
1706pub const D3D11_DS_OUTPUT_REGISTER_COUNT: u32 = 32u32;
1707pub const D3D11_ENABLE_BREAK_ON_MESSAGE: crate::core_supplemental::PCWSTR =
1708 crate::core_supplemental::w!("EnableBreakOnMessage");
1709#[repr(C)]
1710#[derive(Clone, Copy, Debug, PartialEq)]
1711pub struct D3D11_ENCRYPTED_BLOCK_INFO {
1712 pub NumEncryptedBytesAtBeginning: u32,
1713 pub NumBytesInSkipPattern: u32,
1714 pub NumBytesInEncryptPattern: u32,
1715}
1716impl Default for D3D11_ENCRYPTED_BLOCK_INFO {
1717 fn default() -> Self {
1718 unsafe { core::mem::zeroed() }
1719 }
1720}
1721#[repr(transparent)]
1722#[derive(Clone, Copy, Debug, Default, Eq, PartialEq)]
1723pub struct D3D11_FEATURE(pub i32);
1724pub const D3D11_FEATURE_ARCHITECTURE_INFO: D3D11_FEATURE = D3D11_FEATURE(6i32);
1725pub const D3D11_FEATURE_D3D10_X_HARDWARE_OPTIONS: D3D11_FEATURE = D3D11_FEATURE(4i32);
1726pub const D3D11_FEATURE_D3D11_OPTIONS: D3D11_FEATURE = D3D11_FEATURE(5i32);
1727pub const D3D11_FEATURE_D3D11_OPTIONS1: D3D11_FEATURE = D3D11_FEATURE(10i32);
1728pub const D3D11_FEATURE_D3D11_OPTIONS2: D3D11_FEATURE = D3D11_FEATURE(14i32);
1729pub const D3D11_FEATURE_D3D11_OPTIONS3: D3D11_FEATURE = D3D11_FEATURE(15i32);
1730pub const D3D11_FEATURE_D3D11_OPTIONS4: D3D11_FEATURE = D3D11_FEATURE(17i32);
1731pub const D3D11_FEATURE_D3D11_OPTIONS5: D3D11_FEATURE = D3D11_FEATURE(19i32);
1732pub const D3D11_FEATURE_D3D9_OPTIONS: D3D11_FEATURE = D3D11_FEATURE(7i32);
1733pub const D3D11_FEATURE_D3D9_OPTIONS1: D3D11_FEATURE = D3D11_FEATURE(13i32);
1734pub const D3D11_FEATURE_D3D9_SHADOW_SUPPORT: D3D11_FEATURE = D3D11_FEATURE(9i32);
1735pub const D3D11_FEATURE_D3D9_SIMPLE_INSTANCING_SUPPORT: D3D11_FEATURE = D3D11_FEATURE(11i32);
1736#[repr(C)]
1737#[derive(Clone, Copy, Debug, PartialEq)]
1738pub struct D3D11_FEATURE_DATA_ARCHITECTURE_INFO {
1739 pub TileBasedDeferredRenderer: crate::Foundation::BOOL,
1740}
1741impl Default for D3D11_FEATURE_DATA_ARCHITECTURE_INFO {
1742 fn default() -> Self {
1743 unsafe { core::mem::zeroed() }
1744 }
1745}
1746#[repr(C)]
1747#[derive(Clone, Copy, Debug, PartialEq)]
1748pub struct D3D11_FEATURE_DATA_D3D10_X_HARDWARE_OPTIONS {
1749 pub ComputeShaders_Plus_RawAndStructuredBuffers_Via_Shader_4_x: crate::Foundation::BOOL,
1750}
1751impl Default for D3D11_FEATURE_DATA_D3D10_X_HARDWARE_OPTIONS {
1752 fn default() -> Self {
1753 unsafe { core::mem::zeroed() }
1754 }
1755}
1756#[repr(C)]
1757#[derive(Clone, Copy, Debug, PartialEq)]
1758pub struct D3D11_FEATURE_DATA_D3D11_OPTIONS {
1759 pub OutputMergerLogicOp: crate::Foundation::BOOL,
1760 pub UAVOnlyRenderingForcedSampleCount: crate::Foundation::BOOL,
1761 pub DiscardAPIsSeenByDriver: crate::Foundation::BOOL,
1762 pub FlagsForUpdateAndCopySeenByDriver: crate::Foundation::BOOL,
1763 pub ClearView: crate::Foundation::BOOL,
1764 pub CopyWithOverlap: crate::Foundation::BOOL,
1765 pub ConstantBufferPartialUpdate: crate::Foundation::BOOL,
1766 pub ConstantBufferOffsetting: crate::Foundation::BOOL,
1767 pub MapNoOverwriteOnDynamicConstantBuffer: crate::Foundation::BOOL,
1768 pub MapNoOverwriteOnDynamicBufferSRV: crate::Foundation::BOOL,
1769 pub MultisampleRTVWithForcedSampleCountOne: crate::Foundation::BOOL,
1770 pub SAD4ShaderInstructions: crate::Foundation::BOOL,
1771 pub ExtendedDoublesShaderInstructions: crate::Foundation::BOOL,
1772 pub ExtendedResourceSharing: crate::Foundation::BOOL,
1773}
1774impl Default for D3D11_FEATURE_DATA_D3D11_OPTIONS {
1775 fn default() -> Self {
1776 unsafe { core::mem::zeroed() }
1777 }
1778}
1779#[repr(C)]
1780#[derive(Clone, Copy, Debug, PartialEq)]
1781pub struct D3D11_FEATURE_DATA_D3D11_OPTIONS1 {
1782 pub TiledResourcesTier: D3D11_TILED_RESOURCES_TIER,
1783 pub MinMaxFiltering: crate::Foundation::BOOL,
1784 pub ClearViewAlsoSupportsDepthOnlyFormats: crate::Foundation::BOOL,
1785 pub MapOnDefaultBuffers: crate::Foundation::BOOL,
1786}
1787impl Default for D3D11_FEATURE_DATA_D3D11_OPTIONS1 {
1788 fn default() -> Self {
1789 unsafe { core::mem::zeroed() }
1790 }
1791}
1792#[repr(C)]
1793#[derive(Clone, Copy, Debug, PartialEq)]
1794pub struct D3D11_FEATURE_DATA_D3D11_OPTIONS2 {
1795 pub PSSpecifiedStencilRefSupported: crate::Foundation::BOOL,
1796 pub TypedUAVLoadAdditionalFormats: crate::Foundation::BOOL,
1797 pub ROVsSupported: crate::Foundation::BOOL,
1798 pub ConservativeRasterizationTier: D3D11_CONSERVATIVE_RASTERIZATION_TIER,
1799 pub TiledResourcesTier: D3D11_TILED_RESOURCES_TIER,
1800 pub MapOnDefaultTextures: crate::Foundation::BOOL,
1801 pub StandardSwizzle: crate::Foundation::BOOL,
1802 pub UnifiedMemoryArchitecture: crate::Foundation::BOOL,
1803}
1804impl Default for D3D11_FEATURE_DATA_D3D11_OPTIONS2 {
1805 fn default() -> Self {
1806 unsafe { core::mem::zeroed() }
1807 }
1808}
1809#[repr(C)]
1810#[derive(Clone, Copy, Debug, PartialEq)]
1811pub struct D3D11_FEATURE_DATA_D3D11_OPTIONS3 {
1812 pub VPAndRTArrayIndexFromAnyShaderFeedingRasterizer: crate::Foundation::BOOL,
1813}
1814impl Default for D3D11_FEATURE_DATA_D3D11_OPTIONS3 {
1815 fn default() -> Self {
1816 unsafe { core::mem::zeroed() }
1817 }
1818}
1819#[repr(C)]
1820#[derive(Clone, Copy, Debug, PartialEq)]
1821pub struct D3D11_FEATURE_DATA_D3D11_OPTIONS4 {
1822 pub ExtendedNV12SharedTextureSupported: crate::Foundation::BOOL,
1823}
1824impl Default for D3D11_FEATURE_DATA_D3D11_OPTIONS4 {
1825 fn default() -> Self {
1826 unsafe { core::mem::zeroed() }
1827 }
1828}
1829#[repr(C)]
1830#[derive(Clone, Copy, Debug, PartialEq)]
1831pub struct D3D11_FEATURE_DATA_D3D11_OPTIONS5 {
1832 pub SharedResourceTier: D3D11_SHARED_RESOURCE_TIER,
1833}
1834impl Default for D3D11_FEATURE_DATA_D3D11_OPTIONS5 {
1835 fn default() -> Self {
1836 unsafe { core::mem::zeroed() }
1837 }
1838}
1839#[repr(C)]
1840#[derive(Clone, Copy, Debug, PartialEq)]
1841pub struct D3D11_FEATURE_DATA_D3D9_OPTIONS {
1842 pub FullNonPow2TextureSupport: crate::Foundation::BOOL,
1843}
1844impl Default for D3D11_FEATURE_DATA_D3D9_OPTIONS {
1845 fn default() -> Self {
1846 unsafe { core::mem::zeroed() }
1847 }
1848}
1849#[repr(C)]
1850#[derive(Clone, Copy, Debug, PartialEq)]
1851pub struct D3D11_FEATURE_DATA_D3D9_OPTIONS1 {
1852 pub FullNonPow2TextureSupported: crate::Foundation::BOOL,
1853 pub DepthAsTextureWithLessEqualComparisonFilterSupported: crate::Foundation::BOOL,
1854 pub SimpleInstancingSupported: crate::Foundation::BOOL,
1855 pub TextureCubeFaceRenderTargetWithNonCubeDepthStencilSupported: crate::Foundation::BOOL,
1856}
1857impl Default for D3D11_FEATURE_DATA_D3D9_OPTIONS1 {
1858 fn default() -> Self {
1859 unsafe { core::mem::zeroed() }
1860 }
1861}
1862#[repr(C)]
1863#[derive(Clone, Copy, Debug, PartialEq)]
1864pub struct D3D11_FEATURE_DATA_D3D9_SHADOW_SUPPORT {
1865 pub SupportsDepthAsTextureWithLessEqualComparisonFilter: crate::Foundation::BOOL,
1866}
1867impl Default for D3D11_FEATURE_DATA_D3D9_SHADOW_SUPPORT {
1868 fn default() -> Self {
1869 unsafe { core::mem::zeroed() }
1870 }
1871}
1872#[repr(C)]
1873#[derive(Clone, Copy, Debug, PartialEq)]
1874pub struct D3D11_FEATURE_DATA_D3D9_SIMPLE_INSTANCING_SUPPORT {
1875 pub SimpleInstancingSupported: crate::Foundation::BOOL,
1876}
1877impl Default for D3D11_FEATURE_DATA_D3D9_SIMPLE_INSTANCING_SUPPORT {
1878 fn default() -> Self {
1879 unsafe { core::mem::zeroed() }
1880 }
1881}
1882#[repr(C)]
1883#[derive(Clone, Copy, Debug, PartialEq)]
1884pub struct D3D11_FEATURE_DATA_DISPLAYABLE {
1885 pub DisplayableTexture: crate::Foundation::BOOL,
1886 pub SharedResourceTier: D3D11_SHARED_RESOURCE_TIER,
1887}
1888impl Default for D3D11_FEATURE_DATA_DISPLAYABLE {
1889 fn default() -> Self {
1890 unsafe { core::mem::zeroed() }
1891 }
1892}
1893#[repr(C)]
1894#[derive(Clone, Copy, Debug, PartialEq)]
1895pub struct D3D11_FEATURE_DATA_DOUBLES {
1896 pub DoublePrecisionFloatShaderOps: crate::Foundation::BOOL,
1897}
1898impl Default for D3D11_FEATURE_DATA_DOUBLES {
1899 fn default() -> Self {
1900 unsafe { core::mem::zeroed() }
1901 }
1902}
1903#[repr(C)]
1904#[cfg(feature = "Win32_Graphics_Dxgi_Common")]
1905#[derive(Clone, Copy, Debug, PartialEq)]
1906pub struct D3D11_FEATURE_DATA_FORMAT_SUPPORT {
1907 pub InFormat: crate::Dxgi::Common::DXGI_FORMAT,
1908 pub OutFormatSupport: u32,
1909}
1910#[cfg(feature = "Win32_Graphics_Dxgi_Common")]
1911impl Default for D3D11_FEATURE_DATA_FORMAT_SUPPORT {
1912 fn default() -> Self {
1913 unsafe { core::mem::zeroed() }
1914 }
1915}
1916#[repr(C)]
1917#[cfg(feature = "Win32_Graphics_Dxgi_Common")]
1918#[derive(Clone, Copy, Debug, PartialEq)]
1919pub struct D3D11_FEATURE_DATA_FORMAT_SUPPORT2 {
1920 pub InFormat: crate::Dxgi::Common::DXGI_FORMAT,
1921 pub OutFormatSupport2: u32,
1922}
1923#[cfg(feature = "Win32_Graphics_Dxgi_Common")]
1924impl Default for D3D11_FEATURE_DATA_FORMAT_SUPPORT2 {
1925 fn default() -> Self {
1926 unsafe { core::mem::zeroed() }
1927 }
1928}
1929#[repr(C)]
1930#[derive(Clone, Copy, Debug, PartialEq)]
1931pub struct D3D11_FEATURE_DATA_GPU_VIRTUAL_ADDRESS_SUPPORT {
1932 pub MaxGPUVirtualAddressBitsPerResource: u32,
1933 pub MaxGPUVirtualAddressBitsPerProcess: u32,
1934}
1935impl Default for D3D11_FEATURE_DATA_GPU_VIRTUAL_ADDRESS_SUPPORT {
1936 fn default() -> Self {
1937 unsafe { core::mem::zeroed() }
1938 }
1939}
1940#[repr(C)]
1941#[derive(Clone, Copy, Debug, PartialEq)]
1942pub struct D3D11_FEATURE_DATA_MARKER_SUPPORT {
1943 pub Profile: crate::Foundation::BOOL,
1944}
1945impl Default for D3D11_FEATURE_DATA_MARKER_SUPPORT {
1946 fn default() -> Self {
1947 unsafe { core::mem::zeroed() }
1948 }
1949}
1950#[repr(C)]
1951#[derive(Clone, Copy, Debug, PartialEq)]
1952pub struct D3D11_FEATURE_DATA_SHADER_CACHE {
1953 pub SupportFlags: u32,
1954}
1955impl Default for D3D11_FEATURE_DATA_SHADER_CACHE {
1956 fn default() -> Self {
1957 unsafe { core::mem::zeroed() }
1958 }
1959}
1960#[repr(C)]
1961#[derive(Clone, Copy, Debug, PartialEq)]
1962pub struct D3D11_FEATURE_DATA_SHADER_MIN_PRECISION_SUPPORT {
1963 pub PixelShaderMinPrecision: u32,
1964 pub AllOtherShaderStagesMinPrecision: u32,
1965}
1966impl Default for D3D11_FEATURE_DATA_SHADER_MIN_PRECISION_SUPPORT {
1967 fn default() -> Self {
1968 unsafe { core::mem::zeroed() }
1969 }
1970}
1971#[repr(C)]
1972#[derive(Clone, Copy, Debug, PartialEq)]
1973pub struct D3D11_FEATURE_DATA_THREADING {
1974 pub DriverConcurrentCreates: crate::Foundation::BOOL,
1975 pub DriverCommandLists: crate::Foundation::BOOL,
1976}
1977impl Default for D3D11_FEATURE_DATA_THREADING {
1978 fn default() -> Self {
1979 unsafe { core::mem::zeroed() }
1980 }
1981}
1982#[repr(C)]
1983#[cfg(feature = "Win32_Graphics_Dxgi_Common")]
1984#[derive(Clone, Copy, Debug, PartialEq)]
1985pub struct D3D11_FEATURE_DATA_VIDEO_DECODER_HISTOGRAM {
1986 pub DecoderDesc: D3D11_VIDEO_DECODER_DESC,
1987 pub Components: D3D11_VIDEO_DECODER_HISTOGRAM_COMPONENT_FLAGS,
1988 pub BinCount: u32,
1989 pub CounterBitDepth: u32,
1990}
1991#[cfg(feature = "Win32_Graphics_Dxgi_Common")]
1992impl Default for D3D11_FEATURE_DATA_VIDEO_DECODER_HISTOGRAM {
1993 fn default() -> Self {
1994 unsafe { core::mem::zeroed() }
1995 }
1996}
1997pub const D3D11_FEATURE_DISPLAYABLE: D3D11_FEATURE = D3D11_FEATURE(20i32);
1998pub const D3D11_FEATURE_DOUBLES: D3D11_FEATURE = D3D11_FEATURE(1i32);
1999pub const D3D11_FEATURE_FORMAT_SUPPORT: D3D11_FEATURE = D3D11_FEATURE(2i32);
2000pub const D3D11_FEATURE_FORMAT_SUPPORT2: D3D11_FEATURE = D3D11_FEATURE(3i32);
2001pub const D3D11_FEATURE_GPU_VIRTUAL_ADDRESS_SUPPORT: D3D11_FEATURE = D3D11_FEATURE(16i32);
2002pub const D3D11_FEATURE_MARKER_SUPPORT: D3D11_FEATURE = D3D11_FEATURE(12i32);
2003pub const D3D11_FEATURE_SHADER_CACHE: D3D11_FEATURE = D3D11_FEATURE(18i32);
2004pub const D3D11_FEATURE_SHADER_MIN_PRECISION_SUPPORT: D3D11_FEATURE = D3D11_FEATURE(8i32);
2005pub const D3D11_FEATURE_THREADING: D3D11_FEATURE = D3D11_FEATURE(0i32);
2006#[repr(transparent)]
2007#[derive(Clone, Copy, Debug, Default, Eq, PartialEq)]
2008pub struct D3D11_FEATURE_VIDEO(pub i32);
2009pub const D3D11_FEATURE_VIDEO_DECODER_HISTOGRAM: D3D11_FEATURE_VIDEO = D3D11_FEATURE_VIDEO(0i32);
2010#[repr(transparent)]
2011#[derive(Clone, Copy, Debug, Default, Eq, PartialEq)]
2012pub struct D3D11_FENCE_FLAG(pub i32);
2013impl D3D11_FENCE_FLAG {
2014 pub const fn contains(&self, other: Self) -> bool {
2015 self.0 & other.0 == other.0
2016 }
2017}
2018impl core::ops::BitOr for D3D11_FENCE_FLAG {
2019 type Output = Self;
2020 fn bitor(self, other: Self) -> Self {
2021 Self(self.0 | other.0)
2022 }
2023}
2024impl core::ops::BitAnd for D3D11_FENCE_FLAG {
2025 type Output = Self;
2026 fn bitand(self, other: Self) -> Self {
2027 Self(self.0 & other.0)
2028 }
2029}
2030impl core::ops::BitOrAssign for D3D11_FENCE_FLAG {
2031 fn bitor_assign(&mut self, other: Self) {
2032 self.0.bitor_assign(other.0)
2033 }
2034}
2035impl core::ops::BitAndAssign for D3D11_FENCE_FLAG {
2036 fn bitand_assign(&mut self, other: Self) {
2037 self.0.bitand_assign(other.0)
2038 }
2039}
2040impl core::ops::Not for D3D11_FENCE_FLAG {
2041 type Output = Self;
2042 fn not(self) -> Self {
2043 Self(self.0.not())
2044 }
2045}
2046pub const D3D11_FENCE_FLAG_NONE: D3D11_FENCE_FLAG = D3D11_FENCE_FLAG(0i32);
2047pub const D3D11_FENCE_FLAG_NON_MONITORED: D3D11_FENCE_FLAG = D3D11_FENCE_FLAG(8i32);
2048pub const D3D11_FENCE_FLAG_SHARED: D3D11_FENCE_FLAG = D3D11_FENCE_FLAG(2i32);
2049pub const D3D11_FENCE_FLAG_SHARED_CROSS_ADAPTER: D3D11_FENCE_FLAG = D3D11_FENCE_FLAG(4i32);
2050#[repr(transparent)]
2051#[derive(Clone, Copy, Debug, Default, Eq, PartialEq)]
2052pub struct D3D11_FILL_MODE(pub i32);
2053pub const D3D11_FILL_SOLID: D3D11_FILL_MODE = D3D11_FILL_MODE(3i32);
2054pub const D3D11_FILL_WIREFRAME: D3D11_FILL_MODE = D3D11_FILL_MODE(2i32);
2055#[repr(transparent)]
2056#[derive(Clone, Copy, Debug, Default, Eq, PartialEq)]
2057pub struct D3D11_FILTER(pub i32);
2058pub const D3D11_FILTER_ANISOTROPIC: D3D11_FILTER = D3D11_FILTER(85i32);
2059pub const D3D11_FILTER_COMPARISON_ANISOTROPIC: D3D11_FILTER = D3D11_FILTER(213i32);
2060pub const D3D11_FILTER_COMPARISON_MIN_LINEAR_MAG_MIP_POINT: D3D11_FILTER = D3D11_FILTER(144i32);
2061pub const D3D11_FILTER_COMPARISON_MIN_LINEAR_MAG_POINT_MIP_LINEAR: D3D11_FILTER =
2062 D3D11_FILTER(145i32);
2063pub const D3D11_FILTER_COMPARISON_MIN_MAG_LINEAR_MIP_POINT: D3D11_FILTER = D3D11_FILTER(148i32);
2064pub const D3D11_FILTER_COMPARISON_MIN_MAG_MIP_LINEAR: D3D11_FILTER = D3D11_FILTER(149i32);
2065pub const D3D11_FILTER_COMPARISON_MIN_MAG_MIP_POINT: D3D11_FILTER = D3D11_FILTER(128i32);
2066pub const D3D11_FILTER_COMPARISON_MIN_MAG_POINT_MIP_LINEAR: D3D11_FILTER = D3D11_FILTER(129i32);
2067pub const D3D11_FILTER_COMPARISON_MIN_POINT_MAG_LINEAR_MIP_POINT: D3D11_FILTER =
2068 D3D11_FILTER(132i32);
2069pub const D3D11_FILTER_COMPARISON_MIN_POINT_MAG_MIP_LINEAR: D3D11_FILTER = D3D11_FILTER(133i32);
2070pub const D3D11_FILTER_MAXIMUM_ANISOTROPIC: D3D11_FILTER = D3D11_FILTER(469i32);
2071pub const D3D11_FILTER_MAXIMUM_MIN_LINEAR_MAG_MIP_POINT: D3D11_FILTER = D3D11_FILTER(400i32);
2072pub const D3D11_FILTER_MAXIMUM_MIN_LINEAR_MAG_POINT_MIP_LINEAR: D3D11_FILTER = D3D11_FILTER(401i32);
2073pub const D3D11_FILTER_MAXIMUM_MIN_MAG_LINEAR_MIP_POINT: D3D11_FILTER = D3D11_FILTER(404i32);
2074pub const D3D11_FILTER_MAXIMUM_MIN_MAG_MIP_LINEAR: D3D11_FILTER = D3D11_FILTER(405i32);
2075pub const D3D11_FILTER_MAXIMUM_MIN_MAG_MIP_POINT: D3D11_FILTER = D3D11_FILTER(384i32);
2076pub const D3D11_FILTER_MAXIMUM_MIN_MAG_POINT_MIP_LINEAR: D3D11_FILTER = D3D11_FILTER(385i32);
2077pub const D3D11_FILTER_MAXIMUM_MIN_POINT_MAG_LINEAR_MIP_POINT: D3D11_FILTER = D3D11_FILTER(388i32);
2078pub const D3D11_FILTER_MAXIMUM_MIN_POINT_MAG_MIP_LINEAR: D3D11_FILTER = D3D11_FILTER(389i32);
2079pub const D3D11_FILTER_MINIMUM_ANISOTROPIC: D3D11_FILTER = D3D11_FILTER(341i32);
2080pub const D3D11_FILTER_MINIMUM_MIN_LINEAR_MAG_MIP_POINT: D3D11_FILTER = D3D11_FILTER(272i32);
2081pub const D3D11_FILTER_MINIMUM_MIN_LINEAR_MAG_POINT_MIP_LINEAR: D3D11_FILTER = D3D11_FILTER(273i32);
2082pub const D3D11_FILTER_MINIMUM_MIN_MAG_LINEAR_MIP_POINT: D3D11_FILTER = D3D11_FILTER(276i32);
2083pub const D3D11_FILTER_MINIMUM_MIN_MAG_MIP_LINEAR: D3D11_FILTER = D3D11_FILTER(277i32);
2084pub const D3D11_FILTER_MINIMUM_MIN_MAG_MIP_POINT: D3D11_FILTER = D3D11_FILTER(256i32);
2085pub const D3D11_FILTER_MINIMUM_MIN_MAG_POINT_MIP_LINEAR: D3D11_FILTER = D3D11_FILTER(257i32);
2086pub const D3D11_FILTER_MINIMUM_MIN_POINT_MAG_LINEAR_MIP_POINT: D3D11_FILTER = D3D11_FILTER(260i32);
2087pub const D3D11_FILTER_MINIMUM_MIN_POINT_MAG_MIP_LINEAR: D3D11_FILTER = D3D11_FILTER(261i32);
2088pub const D3D11_FILTER_MIN_LINEAR_MAG_MIP_POINT: D3D11_FILTER = D3D11_FILTER(16i32);
2089pub const D3D11_FILTER_MIN_LINEAR_MAG_POINT_MIP_LINEAR: D3D11_FILTER = D3D11_FILTER(17i32);
2090pub const D3D11_FILTER_MIN_MAG_LINEAR_MIP_POINT: D3D11_FILTER = D3D11_FILTER(20i32);
2091pub const D3D11_FILTER_MIN_MAG_MIP_LINEAR: D3D11_FILTER = D3D11_FILTER(21i32);
2092pub const D3D11_FILTER_MIN_MAG_MIP_POINT: D3D11_FILTER = D3D11_FILTER(0i32);
2093pub const D3D11_FILTER_MIN_MAG_POINT_MIP_LINEAR: D3D11_FILTER = D3D11_FILTER(1i32);
2094pub const D3D11_FILTER_MIN_POINT_MAG_LINEAR_MIP_POINT: D3D11_FILTER = D3D11_FILTER(4i32);
2095pub const D3D11_FILTER_MIN_POINT_MAG_MIP_LINEAR: D3D11_FILTER = D3D11_FILTER(5i32);
2096#[repr(transparent)]
2097#[derive(Clone, Copy, Debug, Default, Eq, PartialEq)]
2098pub struct D3D11_FILTER_REDUCTION_TYPE(pub i32);
2099pub const D3D11_FILTER_REDUCTION_TYPE_COMPARISON: D3D11_FILTER_REDUCTION_TYPE =
2100 D3D11_FILTER_REDUCTION_TYPE(1i32);
2101pub const D3D11_FILTER_REDUCTION_TYPE_MASK: u32 = 3u32;
2102pub const D3D11_FILTER_REDUCTION_TYPE_MAXIMUM: D3D11_FILTER_REDUCTION_TYPE =
2103 D3D11_FILTER_REDUCTION_TYPE(3i32);
2104pub const D3D11_FILTER_REDUCTION_TYPE_MINIMUM: D3D11_FILTER_REDUCTION_TYPE =
2105 D3D11_FILTER_REDUCTION_TYPE(2i32);
2106pub const D3D11_FILTER_REDUCTION_TYPE_SHIFT: u32 = 7u32;
2107pub const D3D11_FILTER_REDUCTION_TYPE_STANDARD: D3D11_FILTER_REDUCTION_TYPE =
2108 D3D11_FILTER_REDUCTION_TYPE(0i32);
2109#[repr(transparent)]
2110#[derive(Clone, Copy, Debug, Default, Eq, PartialEq)]
2111pub struct D3D11_FILTER_TYPE(pub i32);
2112pub const D3D11_FILTER_TYPE_LINEAR: D3D11_FILTER_TYPE = D3D11_FILTER_TYPE(1i32);
2113pub const D3D11_FILTER_TYPE_MASK: u32 = 3u32;
2114pub const D3D11_FILTER_TYPE_POINT: D3D11_FILTER_TYPE = D3D11_FILTER_TYPE(0i32);
2115pub const D3D11_FLOAT16_FUSED_TOLERANCE_IN_ULP: f64 = 0.6f64;
2116pub const D3D11_FLOAT32_MAX: f32 = 340282350000000000000000000000000000000f32;
2117pub const D3D11_FLOAT32_TO_INTEGER_TOLERANCE_IN_ULP: f32 = 0.6f32;
2118pub const D3D11_FLOAT_TO_SRGB_EXPONENT_DENOMINATOR: f32 = 2.4f32;
2119pub const D3D11_FLOAT_TO_SRGB_EXPONENT_NUMERATOR: f32 = 1f32;
2120pub const D3D11_FLOAT_TO_SRGB_OFFSET: f32 = 0.055f32;
2121pub const D3D11_FLOAT_TO_SRGB_SCALE_1: f32 = 12.92f32;
2122pub const D3D11_FLOAT_TO_SRGB_SCALE_2: f32 = 1.055f32;
2123pub const D3D11_FLOAT_TO_SRGB_THRESHOLD: f32 = 0.0031308f32;
2124pub const D3D11_FORCE_DEBUGGABLE: crate::core_supplemental::PCWSTR = crate::core_supplemental::w!("ForceDebuggable");
2125pub const D3D11_FORCE_SHADER_SKIP_OPTIMIZATION: crate::core_supplemental::PCWSTR =
2126 crate::core_supplemental::w!("ForceShaderSkipOptimization");
2127#[repr(transparent)]
2128#[derive(Clone, Copy, Debug, Default, Eq, PartialEq)]
2129pub struct D3D11_FORMAT_SUPPORT(pub i32);
2130#[repr(transparent)]
2131#[derive(Clone, Copy, Debug, Default, Eq, PartialEq)]
2132pub struct D3D11_FORMAT_SUPPORT2(pub i32);
2133pub const D3D11_FORMAT_SUPPORT2_DISPLAYABLE: D3D11_FORMAT_SUPPORT2 =
2134 D3D11_FORMAT_SUPPORT2(65536i32);
2135pub const D3D11_FORMAT_SUPPORT2_MULTIPLANE_OVERLAY: D3D11_FORMAT_SUPPORT2 =
2136 D3D11_FORMAT_SUPPORT2(16384i32);
2137pub const D3D11_FORMAT_SUPPORT2_OUTPUT_MERGER_LOGIC_OP: D3D11_FORMAT_SUPPORT2 =
2138 D3D11_FORMAT_SUPPORT2(256i32);
2139pub const D3D11_FORMAT_SUPPORT2_SHAREABLE: D3D11_FORMAT_SUPPORT2 = D3D11_FORMAT_SUPPORT2(1024i32);
2140pub const D3D11_FORMAT_SUPPORT2_TILED: D3D11_FORMAT_SUPPORT2 = D3D11_FORMAT_SUPPORT2(512i32);
2141pub const D3D11_FORMAT_SUPPORT2_UAV_ATOMIC_ADD: D3D11_FORMAT_SUPPORT2 = D3D11_FORMAT_SUPPORT2(1i32);
2142pub const D3D11_FORMAT_SUPPORT2_UAV_ATOMIC_BITWISE_OPS: D3D11_FORMAT_SUPPORT2 =
2143 D3D11_FORMAT_SUPPORT2(2i32);
2144pub const D3D11_FORMAT_SUPPORT2_UAV_ATOMIC_COMPARE_STORE_OR_COMPARE_EXCHANGE:
2145 D3D11_FORMAT_SUPPORT2 = D3D11_FORMAT_SUPPORT2(4i32);
2146pub const D3D11_FORMAT_SUPPORT2_UAV_ATOMIC_EXCHANGE: D3D11_FORMAT_SUPPORT2 =
2147 D3D11_FORMAT_SUPPORT2(8i32);
2148pub const D3D11_FORMAT_SUPPORT2_UAV_ATOMIC_SIGNED_MIN_OR_MAX: D3D11_FORMAT_SUPPORT2 =
2149 D3D11_FORMAT_SUPPORT2(16i32);
2150pub const D3D11_FORMAT_SUPPORT2_UAV_ATOMIC_UNSIGNED_MIN_OR_MAX: D3D11_FORMAT_SUPPORT2 =
2151 D3D11_FORMAT_SUPPORT2(32i32);
2152pub const D3D11_FORMAT_SUPPORT2_UAV_TYPED_LOAD: D3D11_FORMAT_SUPPORT2 =
2153 D3D11_FORMAT_SUPPORT2(64i32);
2154pub const D3D11_FORMAT_SUPPORT2_UAV_TYPED_STORE: D3D11_FORMAT_SUPPORT2 =
2155 D3D11_FORMAT_SUPPORT2(128i32);
2156pub const D3D11_FORMAT_SUPPORT_BACK_BUFFER_CAST: D3D11_FORMAT_SUPPORT =
2157 D3D11_FORMAT_SUPPORT(16777216i32);
2158pub const D3D11_FORMAT_SUPPORT_BLENDABLE: D3D11_FORMAT_SUPPORT = D3D11_FORMAT_SUPPORT(32768i32);
2159pub const D3D11_FORMAT_SUPPORT_BUFFER: D3D11_FORMAT_SUPPORT = D3D11_FORMAT_SUPPORT(1i32);
2160pub const D3D11_FORMAT_SUPPORT_CAST_WITHIN_BIT_LAYOUT: D3D11_FORMAT_SUPPORT =
2161 D3D11_FORMAT_SUPPORT(1048576i32);
2162pub const D3D11_FORMAT_SUPPORT_CPU_LOCKABLE: D3D11_FORMAT_SUPPORT = D3D11_FORMAT_SUPPORT(131072i32);
2163pub const D3D11_FORMAT_SUPPORT_DECODER_OUTPUT: D3D11_FORMAT_SUPPORT =
2164 D3D11_FORMAT_SUPPORT(134217728i32);
2165pub const D3D11_FORMAT_SUPPORT_DEPTH_STENCIL: D3D11_FORMAT_SUPPORT = D3D11_FORMAT_SUPPORT(65536i32);
2166pub const D3D11_FORMAT_SUPPORT_DISPLAY: D3D11_FORMAT_SUPPORT = D3D11_FORMAT_SUPPORT(524288i32);
2167pub const D3D11_FORMAT_SUPPORT_IA_INDEX_BUFFER: D3D11_FORMAT_SUPPORT = D3D11_FORMAT_SUPPORT(4i32);
2168pub const D3D11_FORMAT_SUPPORT_IA_VERTEX_BUFFER: D3D11_FORMAT_SUPPORT = D3D11_FORMAT_SUPPORT(2i32);
2169pub const D3D11_FORMAT_SUPPORT_MIP: D3D11_FORMAT_SUPPORT = D3D11_FORMAT_SUPPORT(4096i32);
2170pub const D3D11_FORMAT_SUPPORT_MIP_AUTOGEN: D3D11_FORMAT_SUPPORT = D3D11_FORMAT_SUPPORT(8192i32);
2171pub const D3D11_FORMAT_SUPPORT_MULTISAMPLE_LOAD: D3D11_FORMAT_SUPPORT =
2172 D3D11_FORMAT_SUPPORT(4194304i32);
2173pub const D3D11_FORMAT_SUPPORT_MULTISAMPLE_RENDERTARGET: D3D11_FORMAT_SUPPORT =
2174 D3D11_FORMAT_SUPPORT(2097152i32);
2175pub const D3D11_FORMAT_SUPPORT_MULTISAMPLE_RESOLVE: D3D11_FORMAT_SUPPORT =
2176 D3D11_FORMAT_SUPPORT(262144i32);
2177pub const D3D11_FORMAT_SUPPORT_RENDER_TARGET: D3D11_FORMAT_SUPPORT = D3D11_FORMAT_SUPPORT(16384i32);
2178pub const D3D11_FORMAT_SUPPORT_SHADER_GATHER: D3D11_FORMAT_SUPPORT =
2179 D3D11_FORMAT_SUPPORT(8388608i32);
2180pub const D3D11_FORMAT_SUPPORT_SHADER_GATHER_COMPARISON: D3D11_FORMAT_SUPPORT =
2181 D3D11_FORMAT_SUPPORT(67108864i32);
2182pub const D3D11_FORMAT_SUPPORT_SHADER_LOAD: D3D11_FORMAT_SUPPORT = D3D11_FORMAT_SUPPORT(256i32);
2183pub const D3D11_FORMAT_SUPPORT_SHADER_SAMPLE: D3D11_FORMAT_SUPPORT = D3D11_FORMAT_SUPPORT(512i32);
2184pub const D3D11_FORMAT_SUPPORT_SHADER_SAMPLE_COMPARISON: D3D11_FORMAT_SUPPORT =
2185 D3D11_FORMAT_SUPPORT(1024i32);
2186pub const D3D11_FORMAT_SUPPORT_SHADER_SAMPLE_MONO_TEXT: D3D11_FORMAT_SUPPORT =
2187 D3D11_FORMAT_SUPPORT(2048i32);
2188pub const D3D11_FORMAT_SUPPORT_SO_BUFFER: D3D11_FORMAT_SUPPORT = D3D11_FORMAT_SUPPORT(8i32);
2189pub const D3D11_FORMAT_SUPPORT_TEXTURE1D: D3D11_FORMAT_SUPPORT = D3D11_FORMAT_SUPPORT(16i32);
2190pub const D3D11_FORMAT_SUPPORT_TEXTURE2D: D3D11_FORMAT_SUPPORT = D3D11_FORMAT_SUPPORT(32i32);
2191pub const D3D11_FORMAT_SUPPORT_TEXTURE3D: D3D11_FORMAT_SUPPORT = D3D11_FORMAT_SUPPORT(64i32);
2192pub const D3D11_FORMAT_SUPPORT_TEXTURECUBE: D3D11_FORMAT_SUPPORT = D3D11_FORMAT_SUPPORT(128i32);
2193pub const D3D11_FORMAT_SUPPORT_TYPED_UNORDERED_ACCESS_VIEW: D3D11_FORMAT_SUPPORT =
2194 D3D11_FORMAT_SUPPORT(33554432i32);
2195pub const D3D11_FORMAT_SUPPORT_VIDEO_ENCODER: D3D11_FORMAT_SUPPORT =
2196 D3D11_FORMAT_SUPPORT(1073741824i32);
2197pub const D3D11_FORMAT_SUPPORT_VIDEO_PROCESSOR_INPUT: D3D11_FORMAT_SUPPORT =
2198 D3D11_FORMAT_SUPPORT(536870912i32);
2199pub const D3D11_FORMAT_SUPPORT_VIDEO_PROCESSOR_OUTPUT: D3D11_FORMAT_SUPPORT =
2200 D3D11_FORMAT_SUPPORT(268435456i32);
2201pub const D3D11_FTOI_INSTRUCTION_MAX_INPUT: f32 = 2147483600f32;
2202pub const D3D11_FTOI_INSTRUCTION_MIN_INPUT: f32 = -2147483600f32;
2203pub const D3D11_FTOU_INSTRUCTION_MAX_INPUT: f32 = 4294967300f32;
2204pub const D3D11_FTOU_INSTRUCTION_MIN_INPUT: f32 = 0f32;
2205#[repr(C)]
2206#[cfg(feature = "Win32_Graphics_Direct3D")]
2207#[derive(Clone, Copy, Debug, PartialEq)]
2208pub struct D3D11_FUNCTION_DESC {
2209 pub Version: u32,
2210 pub Creator: crate::core_supplemental::PCSTR,
2211 pub Flags: u32,
2212 pub ConstantBuffers: u32,
2213 pub BoundResources: u32,
2214 pub InstructionCount: u32,
2215 pub TempRegisterCount: u32,
2216 pub TempArrayCount: u32,
2217 pub DefCount: u32,
2218 pub DclCount: u32,
2219 pub TextureNormalInstructions: u32,
2220 pub TextureLoadInstructions: u32,
2221 pub TextureCompInstructions: u32,
2222 pub TextureBiasInstructions: u32,
2223 pub TextureGradientInstructions: u32,
2224 pub FloatInstructionCount: u32,
2225 pub IntInstructionCount: u32,
2226 pub UintInstructionCount: u32,
2227 pub StaticFlowControlCount: u32,
2228 pub DynamicFlowControlCount: u32,
2229 pub MacroInstructionCount: u32,
2230 pub ArrayInstructionCount: u32,
2231 pub MovInstructionCount: u32,
2232 pub MovcInstructionCount: u32,
2233 pub ConversionInstructionCount: u32,
2234 pub BitwiseInstructionCount: u32,
2235 pub MinFeatureLevel: super::Direct3D::D3D_FEATURE_LEVEL,
2236 pub RequiredFeatureFlags: u64,
2237 pub Name: crate::core_supplemental::PCSTR,
2238 pub FunctionParameterCount: i32,
2239 pub HasReturn: crate::Foundation::BOOL,
2240 pub Has10Level9VertexShader: crate::Foundation::BOOL,
2241 pub Has10Level9PixelShader: crate::Foundation::BOOL,
2242}
2243#[cfg(feature = "Win32_Graphics_Direct3D")]
2244impl Default for D3D11_FUNCTION_DESC {
2245 fn default() -> Self {
2246 unsafe { core::mem::zeroed() }
2247 }
2248}
2249pub const D3D11_GEOMETRY_SHADER: D3D11_SHADER_TYPE = D3D11_SHADER_TYPE(4i32);
2250#[repr(C)]
2251#[derive(Clone, Copy, Debug, PartialEq)]
2252pub struct D3D11_GEOMETRY_SHADER_TRACE_DESC {
2253 pub Invocation: u64,
2254}
2255impl Default for D3D11_GEOMETRY_SHADER_TRACE_DESC {
2256 fn default() -> Self {
2257 unsafe { core::mem::zeroed() }
2258 }
2259}
2260pub const D3D11_GS_INPUT_INSTANCE_ID_READS_PER_INST: u32 = 2u32;
2261pub const D3D11_GS_INPUT_INSTANCE_ID_READ_PORTS: u32 = 1u32;
2262pub const D3D11_GS_INPUT_INSTANCE_ID_REGISTER_COMPONENTS: u32 = 1u32;
2263pub const D3D11_GS_INPUT_INSTANCE_ID_REGISTER_COMPONENT_BIT_COUNT: u32 = 32u32;
2264pub const D3D11_GS_INPUT_INSTANCE_ID_REGISTER_COUNT: u32 = 1u32;
2265pub const D3D11_GS_INPUT_PRIM_CONST_REGISTER_COMPONENTS: u32 = 1u32;
2266pub const D3D11_GS_INPUT_PRIM_CONST_REGISTER_COMPONENT_BIT_COUNT: u32 = 32u32;
2267pub const D3D11_GS_INPUT_PRIM_CONST_REGISTER_COUNT: u32 = 1u32;
2268pub const D3D11_GS_INPUT_PRIM_CONST_REGISTER_READS_PER_INST: u32 = 2u32;
2269pub const D3D11_GS_INPUT_PRIM_CONST_REGISTER_READ_PORTS: u32 = 1u32;
2270pub const D3D11_GS_INPUT_REGISTER_COMPONENTS: u32 = 4u32;
2271pub const D3D11_GS_INPUT_REGISTER_COMPONENT_BIT_COUNT: u32 = 32u32;
2272pub const D3D11_GS_INPUT_REGISTER_COUNT: u32 = 32u32;
2273pub const D3D11_GS_INPUT_REGISTER_READS_PER_INST: u32 = 2u32;
2274pub const D3D11_GS_INPUT_REGISTER_READ_PORTS: u32 = 1u32;
2275pub const D3D11_GS_INPUT_REGISTER_VERTICES: u32 = 32u32;
2276pub const D3D11_GS_MAX_INSTANCE_COUNT: u32 = 32u32;
2277pub const D3D11_GS_MAX_OUTPUT_VERTEX_COUNT_ACROSS_INSTANCES: u32 = 1024u32;
2278pub const D3D11_GS_OUTPUT_ELEMENTS: u32 = 32u32;
2279pub const D3D11_GS_OUTPUT_REGISTER_COMPONENTS: u32 = 4u32;
2280pub const D3D11_GS_OUTPUT_REGISTER_COMPONENT_BIT_COUNT: u32 = 32u32;
2281pub const D3D11_GS_OUTPUT_REGISTER_COUNT: u32 = 32u32;
2282pub const D3D11_HS_CONTROL_POINT_PHASE_INPUT_REGISTER_COUNT: u32 = 32u32;
2283pub const D3D11_HS_CONTROL_POINT_PHASE_OUTPUT_REGISTER_COUNT: u32 = 32u32;
2284pub const D3D11_HS_CONTROL_POINT_REGISTER_COMPONENTS: u32 = 4u32;
2285pub const D3D11_HS_CONTROL_POINT_REGISTER_COMPONENT_BIT_COUNT: u32 = 32u32;
2286pub const D3D11_HS_CONTROL_POINT_REGISTER_READS_PER_INST: u32 = 2u32;
2287pub const D3D11_HS_CONTROL_POINT_REGISTER_READ_PORTS: u32 = 1u32;
2288pub const D3D11_HS_FORK_PHASE_INSTANCE_COUNT_UPPER_BOUND: u32 = 4294967295u32;
2289pub const D3D11_HS_INPUT_FORK_INSTANCE_ID_REGISTER_COMPONENTS: u32 = 1u32;
2290pub const D3D11_HS_INPUT_FORK_INSTANCE_ID_REGISTER_COMPONENT_BIT_COUNT: u32 = 32u32;
2291pub const D3D11_HS_INPUT_FORK_INSTANCE_ID_REGISTER_COUNT: u32 = 1u32;
2292pub const D3D11_HS_INPUT_FORK_INSTANCE_ID_REGISTER_READS_PER_INST: u32 = 2u32;
2293pub const D3D11_HS_INPUT_FORK_INSTANCE_ID_REGISTER_READ_PORTS: u32 = 1u32;
2294pub const D3D11_HS_INPUT_JOIN_INSTANCE_ID_REGISTER_COMPONENTS: u32 = 1u32;
2295pub const D3D11_HS_INPUT_JOIN_INSTANCE_ID_REGISTER_COMPONENT_BIT_COUNT: u32 = 32u32;
2296pub const D3D11_HS_INPUT_JOIN_INSTANCE_ID_REGISTER_COUNT: u32 = 1u32;
2297pub const D3D11_HS_INPUT_JOIN_INSTANCE_ID_REGISTER_READS_PER_INST: u32 = 2u32;
2298pub const D3D11_HS_INPUT_JOIN_INSTANCE_ID_REGISTER_READ_PORTS: u32 = 1u32;
2299pub const D3D11_HS_INPUT_PRIMITIVE_ID_REGISTER_COMPONENTS: u32 = 1u32;
2300pub const D3D11_HS_INPUT_PRIMITIVE_ID_REGISTER_COMPONENT_BIT_COUNT: u32 = 32u32;
2301pub const D3D11_HS_INPUT_PRIMITIVE_ID_REGISTER_COUNT: u32 = 1u32;
2302pub const D3D11_HS_INPUT_PRIMITIVE_ID_REGISTER_READS_PER_INST: u32 = 2u32;
2303pub const D3D11_HS_INPUT_PRIMITIVE_ID_REGISTER_READ_PORTS: u32 = 1u32;
2304pub const D3D11_HS_JOIN_PHASE_INSTANCE_COUNT_UPPER_BOUND: u32 = 4294967295u32;
2305pub const D3D11_HS_MAXTESSFACTOR_LOWER_BOUND: f32 = 1f32;
2306pub const D3D11_HS_MAXTESSFACTOR_UPPER_BOUND: f32 = 64f32;
2307pub const D3D11_HS_OUTPUT_CONTROL_POINTS_MAX_TOTAL_SCALARS: u32 = 3968u32;
2308pub const D3D11_HS_OUTPUT_CONTROL_POINT_ID_REGISTER_COMPONENTS: u32 = 1u32;
2309pub const D3D11_HS_OUTPUT_CONTROL_POINT_ID_REGISTER_COMPONENT_BIT_COUNT: u32 = 32u32;
2310pub const D3D11_HS_OUTPUT_CONTROL_POINT_ID_REGISTER_COUNT: u32 = 1u32;
2311pub const D3D11_HS_OUTPUT_CONTROL_POINT_ID_REGISTER_READS_PER_INST: u32 = 2u32;
2312pub const D3D11_HS_OUTPUT_CONTROL_POINT_ID_REGISTER_READ_PORTS: u32 = 1u32;
2313pub const D3D11_HS_OUTPUT_PATCH_CONSTANT_REGISTER_COMPONENTS: u32 = 4u32;
2314pub const D3D11_HS_OUTPUT_PATCH_CONSTANT_REGISTER_COMPONENT_BIT_COUNT: u32 = 32u32;
2315pub const D3D11_HS_OUTPUT_PATCH_CONSTANT_REGISTER_COUNT: u32 = 32u32;
2316pub const D3D11_HS_OUTPUT_PATCH_CONSTANT_REGISTER_READS_PER_INST: u32 = 2u32;
2317pub const D3D11_HS_OUTPUT_PATCH_CONSTANT_REGISTER_READ_PORTS: u32 = 1u32;
2318pub const D3D11_HS_OUTPUT_PATCH_CONSTANT_REGISTER_SCALAR_COMPONENTS: u32 = 128u32;
2319pub const D3D11_HULL_SHADER: D3D11_SHADER_TYPE = D3D11_SHADER_TYPE(2i32);
2320#[repr(C)]
2321#[derive(Clone, Copy, Debug, PartialEq)]
2322pub struct D3D11_HULL_SHADER_TRACE_DESC {
2323 pub Invocation: u64,
2324}
2325impl Default for D3D11_HULL_SHADER_TRACE_DESC {
2326 fn default() -> Self {
2327 unsafe { core::mem::zeroed() }
2328 }
2329}
2330pub const D3D11_IA_DEFAULT_INDEX_BUFFER_OFFSET_IN_BYTES: u32 = 0u32;
2331pub const D3D11_IA_DEFAULT_PRIMITIVE_TOPOLOGY: u32 = 0u32;
2332pub const D3D11_IA_DEFAULT_VERTEX_BUFFER_OFFSET_IN_BYTES: u32 = 0u32;
2333pub const D3D11_IA_INDEX_INPUT_RESOURCE_SLOT_COUNT: u32 = 1u32;
2334pub const D3D11_IA_INSTANCE_ID_BIT_COUNT: u32 = 32u32;
2335pub const D3D11_IA_INTEGER_ARITHMETIC_BIT_COUNT: u32 = 32u32;
2336pub const D3D11_IA_PATCH_MAX_CONTROL_POINT_COUNT: u32 = 32u32;
2337pub const D3D11_IA_PRIMITIVE_ID_BIT_COUNT: u32 = 32u32;
2338pub const D3D11_IA_VERTEX_ID_BIT_COUNT: u32 = 32u32;
2339pub const D3D11_IA_VERTEX_INPUT_RESOURCE_SLOT_COUNT: u32 = 32u32;
2340pub const D3D11_IA_VERTEX_INPUT_STRUCTURE_ELEMENTS_COMPONENTS: u32 = 128u32;
2341pub const D3D11_IA_VERTEX_INPUT_STRUCTURE_ELEMENT_COUNT: u32 = 32u32;
2342pub const D3D11_INFOQUEUE_STORAGE_FILTER_OVERRIDE: crate::core_supplemental::PCWSTR =
2343 crate::core_supplemental::w!("InfoQueueStorageFilterOverride");
2344pub const D3D11_INFO_QUEUE_DEFAULT_MESSAGE_COUNT_LIMIT: u32 = 1024u32;
2345#[repr(C)]
2346#[derive(Clone, Copy, Debug, PartialEq)]
2347pub struct D3D11_INFO_QUEUE_FILTER {
2348 pub AllowList: D3D11_INFO_QUEUE_FILTER_DESC,
2349 pub DenyList: D3D11_INFO_QUEUE_FILTER_DESC,
2350}
2351impl Default for D3D11_INFO_QUEUE_FILTER {
2352 fn default() -> Self {
2353 unsafe { core::mem::zeroed() }
2354 }
2355}
2356#[repr(C)]
2357#[derive(Clone, Copy, Debug, PartialEq)]
2358pub struct D3D11_INFO_QUEUE_FILTER_DESC {
2359 pub NumCategories: u32,
2360 pub pCategoryList: *mut D3D11_MESSAGE_CATEGORY,
2361 pub NumSeverities: u32,
2362 pub pSeverityList: *mut D3D11_MESSAGE_SEVERITY,
2363 pub NumIDs: u32,
2364 pub pIDList: *mut D3D11_MESSAGE_ID,
2365}
2366impl Default for D3D11_INFO_QUEUE_FILTER_DESC {
2367 fn default() -> Self {
2368 unsafe { core::mem::zeroed() }
2369 }
2370}
2371#[repr(transparent)]
2372#[derive(Clone, Copy, Debug, Default, Eq, PartialEq)]
2373pub struct D3D11_INPUT_CLASSIFICATION(pub i32);
2374#[repr(C)]
2375#[cfg(feature = "Win32_Graphics_Dxgi_Common")]
2376#[derive(Clone, Copy, Debug, PartialEq)]
2377pub struct D3D11_INPUT_ELEMENT_DESC {
2378 pub SemanticName: crate::core_supplemental::PCSTR,
2379 pub SemanticIndex: u32,
2380 pub Format: crate::Dxgi::Common::DXGI_FORMAT,
2381 pub InputSlot: u32,
2382 pub AlignedByteOffset: u32,
2383 pub InputSlotClass: D3D11_INPUT_CLASSIFICATION,
2384 pub InstanceDataStepRate: u32,
2385}
2386#[cfg(feature = "Win32_Graphics_Dxgi_Common")]
2387impl Default for D3D11_INPUT_ELEMENT_DESC {
2388 fn default() -> Self {
2389 unsafe { core::mem::zeroed() }
2390 }
2391}
2392pub const D3D11_INPUT_PER_INSTANCE_DATA: D3D11_INPUT_CLASSIFICATION =
2393 D3D11_INPUT_CLASSIFICATION(1i32);
2394pub const D3D11_INPUT_PER_VERTEX_DATA: D3D11_INPUT_CLASSIFICATION =
2395 D3D11_INPUT_CLASSIFICATION(0i32);
2396pub const D3D11_INTEGER_DIVIDE_BY_ZERO_QUOTIENT: u32 = 4294967295u32;
2397pub const D3D11_INTEGER_DIVIDE_BY_ZERO_REMAINDER: u32 = 4294967295u32;
2398pub const D3D11_KEEP_RENDER_TARGETS_AND_DEPTH_STENCIL: u32 = 4294967295u32;
2399pub const D3D11_KEEP_UNORDERED_ACCESS_VIEWS: u32 = 4294967295u32;
2400pub const D3D11_KEY_EXCHANGE_HW_PROTECTION: windows_core::GUID =
2401 windows_core::GUID::from_u128(0xb1170d8a_628d_4da3_ad3b_82ddb08b4970);
2402#[repr(C)]
2403#[derive(Clone, Copy, Debug, PartialEq)]
2404pub struct D3D11_KEY_EXCHANGE_HW_PROTECTION_DATA {
2405 pub HWProtectionFunctionID: u32,
2406 pub pInputData: *mut D3D11_KEY_EXCHANGE_HW_PROTECTION_INPUT_DATA,
2407 pub pOutputData: *mut D3D11_KEY_EXCHANGE_HW_PROTECTION_OUTPUT_DATA,
2408 pub Status: windows_core::HRESULT,
2409}
2410impl Default for D3D11_KEY_EXCHANGE_HW_PROTECTION_DATA {
2411 fn default() -> Self {
2412 unsafe { core::mem::zeroed() }
2413 }
2414}
2415#[repr(C)]
2416#[derive(Clone, Copy, Debug, PartialEq)]
2417pub struct D3D11_KEY_EXCHANGE_HW_PROTECTION_INPUT_DATA {
2418 pub PrivateDataSize: u32,
2419 pub HWProtectionDataSize: u32,
2420 pub pbInput: [u8; 4],
2421}
2422impl Default for D3D11_KEY_EXCHANGE_HW_PROTECTION_INPUT_DATA {
2423 fn default() -> Self {
2424 unsafe { core::mem::zeroed() }
2425 }
2426}
2427#[repr(C)]
2428#[derive(Clone, Copy, Debug, PartialEq)]
2429pub struct D3D11_KEY_EXCHANGE_HW_PROTECTION_OUTPUT_DATA {
2430 pub PrivateDataSize: u32,
2431 pub MaxHWProtectionDataSize: u32,
2432 pub HWProtectionDataSize: u32,
2433 pub TransportTime: u64,
2434 pub ExecutionTime: u64,
2435 pub pbOutput: [u8; 4],
2436}
2437impl Default for D3D11_KEY_EXCHANGE_HW_PROTECTION_OUTPUT_DATA {
2438 fn default() -> Self {
2439 unsafe { core::mem::zeroed() }
2440 }
2441}
2442pub const D3D11_KEY_EXCHANGE_RSAES_OAEP: windows_core::GUID =
2443 windows_core::GUID::from_u128(0xc1949895_d72a_4a1d_8e5d_ed857d171520);
2444#[repr(C)]
2445#[derive(Clone, Copy, Debug, PartialEq)]
2446pub struct D3D11_LIBRARY_DESC {
2447 pub Creator: crate::core_supplemental::PCSTR,
2448 pub Flags: u32,
2449 pub FunctionCount: u32,
2450}
2451impl Default for D3D11_LIBRARY_DESC {
2452 fn default() -> Self {
2453 unsafe { core::mem::zeroed() }
2454 }
2455}
2456pub const D3D11_LINEAR_GAMMA: f32 = 1f32;
2457#[repr(transparent)]
2458#[derive(Clone, Copy, Debug, Default, Eq, PartialEq)]
2459pub struct D3D11_LOGIC_OP(pub i32);
2460pub const D3D11_LOGIC_OP_AND: D3D11_LOGIC_OP = D3D11_LOGIC_OP(6i32);
2461pub const D3D11_LOGIC_OP_AND_INVERTED: D3D11_LOGIC_OP = D3D11_LOGIC_OP(13i32);
2462pub const D3D11_LOGIC_OP_AND_REVERSE: D3D11_LOGIC_OP = D3D11_LOGIC_OP(12i32);
2463pub const D3D11_LOGIC_OP_CLEAR: D3D11_LOGIC_OP = D3D11_LOGIC_OP(0i32);
2464pub const D3D11_LOGIC_OP_COPY: D3D11_LOGIC_OP = D3D11_LOGIC_OP(2i32);
2465pub const D3D11_LOGIC_OP_COPY_INVERTED: D3D11_LOGIC_OP = D3D11_LOGIC_OP(3i32);
2466pub const D3D11_LOGIC_OP_EQUIV: D3D11_LOGIC_OP = D3D11_LOGIC_OP(11i32);
2467pub const D3D11_LOGIC_OP_INVERT: D3D11_LOGIC_OP = D3D11_LOGIC_OP(5i32);
2468pub const D3D11_LOGIC_OP_NAND: D3D11_LOGIC_OP = D3D11_LOGIC_OP(7i32);
2469pub const D3D11_LOGIC_OP_NOOP: D3D11_LOGIC_OP = D3D11_LOGIC_OP(4i32);
2470pub const D3D11_LOGIC_OP_NOR: D3D11_LOGIC_OP = D3D11_LOGIC_OP(9i32);
2471pub const D3D11_LOGIC_OP_OR: D3D11_LOGIC_OP = D3D11_LOGIC_OP(8i32);
2472pub const D3D11_LOGIC_OP_OR_INVERTED: D3D11_LOGIC_OP = D3D11_LOGIC_OP(15i32);
2473pub const D3D11_LOGIC_OP_OR_REVERSE: D3D11_LOGIC_OP = D3D11_LOGIC_OP(14i32);
2474pub const D3D11_LOGIC_OP_SET: D3D11_LOGIC_OP = D3D11_LOGIC_OP(1i32);
2475pub const D3D11_LOGIC_OP_XOR: D3D11_LOGIC_OP = D3D11_LOGIC_OP(10i32);
2476pub const D3D11_MAG_FILTER_SHIFT: u32 = 2u32;
2477pub const D3D11_MAJOR_VERSION: u32 = 11u32;
2478#[repr(transparent)]
2479#[derive(Clone, Copy, Debug, Default, Eq, PartialEq)]
2480pub struct D3D11_MAP(pub i32);
2481#[repr(C)]
2482#[derive(Clone, Copy, Debug, PartialEq)]
2483pub struct D3D11_MAPPED_SUBRESOURCE {
2484 pub pData: *mut core::ffi::c_void,
2485 pub RowPitch: u32,
2486 pub DepthPitch: u32,
2487}
2488impl Default for D3D11_MAPPED_SUBRESOURCE {
2489 fn default() -> Self {
2490 unsafe { core::mem::zeroed() }
2491 }
2492}
2493#[repr(transparent)]
2494#[derive(Clone, Copy, Debug, Default, Eq, PartialEq)]
2495pub struct D3D11_MAP_FLAG(pub i32);
2496pub const D3D11_MAP_FLAG_DO_NOT_WAIT: D3D11_MAP_FLAG = D3D11_MAP_FLAG(1048576i32);
2497pub const D3D11_MAP_READ: D3D11_MAP = D3D11_MAP(1i32);
2498pub const D3D11_MAP_READ_WRITE: D3D11_MAP = D3D11_MAP(3i32);
2499pub const D3D11_MAP_WRITE: D3D11_MAP = D3D11_MAP(2i32);
2500pub const D3D11_MAP_WRITE_DISCARD: D3D11_MAP = D3D11_MAP(4i32);
2501pub const D3D11_MAP_WRITE_NO_OVERWRITE: D3D11_MAP = D3D11_MAP(5i32);
2502pub const D3D11_MAX_BORDER_COLOR_COMPONENT: f32 = 1f32;
2503pub const D3D11_MAX_DEPTH: f32 = 1f32;
2504pub const D3D11_MAX_MAXANISOTROPY: u32 = 16u32;
2505pub const D3D11_MAX_MULTISAMPLE_SAMPLE_COUNT: u32 = 32u32;
2506pub const D3D11_MAX_POSITION_VALUE: f32 = 34028236000000000000000000000000000f32;
2507pub const D3D11_MAX_TEXTURE_DIMENSION_2_TO_EXP: u32 = 17u32;
2508#[repr(C)]
2509#[derive(Clone, Copy, Debug, PartialEq)]
2510pub struct D3D11_MESSAGE {
2511 pub Category: D3D11_MESSAGE_CATEGORY,
2512 pub Severity: D3D11_MESSAGE_SEVERITY,
2513 pub ID: D3D11_MESSAGE_ID,
2514 pub pDescription: *const u8,
2515 pub DescriptionByteLength: usize,
2516}
2517impl Default for D3D11_MESSAGE {
2518 fn default() -> Self {
2519 unsafe { core::mem::zeroed() }
2520 }
2521}
2522#[repr(transparent)]
2523#[derive(Clone, Copy, Debug, Default, Eq, PartialEq)]
2524pub struct D3D11_MESSAGE_CATEGORY(pub i32);
2525pub const D3D11_MESSAGE_CATEGORY_APPLICATION_DEFINED: D3D11_MESSAGE_CATEGORY =
2526 D3D11_MESSAGE_CATEGORY(0i32);
2527pub const D3D11_MESSAGE_CATEGORY_CLEANUP: D3D11_MESSAGE_CATEGORY = D3D11_MESSAGE_CATEGORY(3i32);
2528pub const D3D11_MESSAGE_CATEGORY_COMPILATION: D3D11_MESSAGE_CATEGORY = D3D11_MESSAGE_CATEGORY(4i32);
2529pub const D3D11_MESSAGE_CATEGORY_EXECUTION: D3D11_MESSAGE_CATEGORY = D3D11_MESSAGE_CATEGORY(9i32);
2530pub const D3D11_MESSAGE_CATEGORY_INITIALIZATION: D3D11_MESSAGE_CATEGORY =
2531 D3D11_MESSAGE_CATEGORY(2i32);
2532pub const D3D11_MESSAGE_CATEGORY_MISCELLANEOUS: D3D11_MESSAGE_CATEGORY =
2533 D3D11_MESSAGE_CATEGORY(1i32);
2534pub const D3D11_MESSAGE_CATEGORY_RESOURCE_MANIPULATION: D3D11_MESSAGE_CATEGORY =
2535 D3D11_MESSAGE_CATEGORY(8i32);
2536pub const D3D11_MESSAGE_CATEGORY_SHADER: D3D11_MESSAGE_CATEGORY = D3D11_MESSAGE_CATEGORY(10i32);
2537pub const D3D11_MESSAGE_CATEGORY_STATE_CREATION: D3D11_MESSAGE_CATEGORY =
2538 D3D11_MESSAGE_CATEGORY(5i32);
2539pub const D3D11_MESSAGE_CATEGORY_STATE_GETTING: D3D11_MESSAGE_CATEGORY =
2540 D3D11_MESSAGE_CATEGORY(7i32);
2541pub const D3D11_MESSAGE_CATEGORY_STATE_SETTING: D3D11_MESSAGE_CATEGORY =
2542 D3D11_MESSAGE_CATEGORY(6i32);
2543#[repr(transparent)]
2544#[derive(Clone, Copy, Debug, Default, Eq, PartialEq)]
2545pub struct D3D11_MESSAGE_ID(pub i32);
2546pub const D3D11_MESSAGE_ID_ACQUIREHANDLEFORCAPTURE_INVALIDARRAY: D3D11_MESSAGE_ID =
2547 D3D11_MESSAGE_ID(3146029i32);
2548pub const D3D11_MESSAGE_ID_ACQUIREHANDLEFORCAPTURE_INVALIDBIND: D3D11_MESSAGE_ID =
2549 D3D11_MESSAGE_ID(3146028i32);
2550pub const D3D11_MESSAGE_ID_ACQUIREHANDLEFORCAPTURE_INVALIDTYPE: D3D11_MESSAGE_ID =
2551 D3D11_MESSAGE_ID(3146027i32);
2552pub const D3D11_MESSAGE_ID_ACQUIREHANDLEFORCAPTURE_NULLPARAM: D3D11_MESSAGE_ID =
2553 D3D11_MESSAGE_ID(3146026i32);
2554pub const D3D11_MESSAGE_ID_BLENDSTATE_GETDESC_LEGACY: D3D11_MESSAGE_ID = D3D11_MESSAGE_ID(392i32);
2555pub const D3D11_MESSAGE_ID_BUFFER_MAP_ALREADYMAPPED: D3D11_MESSAGE_ID = D3D11_MESSAGE_ID(297i32);
2556pub const D3D11_MESSAGE_ID_BUFFER_MAP_DEVICEREMOVED_RETURN: D3D11_MESSAGE_ID =
2557 D3D11_MESSAGE_ID(298i32);
2558pub const D3D11_MESSAGE_ID_BUFFER_MAP_INVALIDFLAGS: D3D11_MESSAGE_ID = D3D11_MESSAGE_ID(296i32);
2559pub const D3D11_MESSAGE_ID_BUFFER_MAP_INVALIDMAPTYPE: D3D11_MESSAGE_ID = D3D11_MESSAGE_ID(295i32);
2560pub const D3D11_MESSAGE_ID_BUFFER_UNMAP_NOTMAPPED: D3D11_MESSAGE_ID = D3D11_MESSAGE_ID(299i32);
2561pub const D3D11_MESSAGE_ID_CANNOT_ADD_TRACKED_WORKLOAD: D3D11_MESSAGE_ID =
2562 D3D11_MESSAGE_ID(3146278i32);
2563pub const D3D11_MESSAGE_ID_CHECKCOUNTER_OUTOFRANGE_COUNTER: D3D11_MESSAGE_ID =
2564 D3D11_MESSAGE_ID(402i32);
2565pub const D3D11_MESSAGE_ID_CHECKCOUNTER_UNSUPPORTED_WELLKNOWN_COUNTER: D3D11_MESSAGE_ID =
2566 D3D11_MESSAGE_ID(403i32);
2567pub const D3D11_MESSAGE_ID_CHECKCRYPTOKEYEXCHANGE_INVALIDINDEX: D3D11_MESSAGE_ID =
2568 D3D11_MESSAGE_ID(3145994i32);
2569pub const D3D11_MESSAGE_ID_CHECKCRYPTOKEYEXCHANGE_NULLPARAM: D3D11_MESSAGE_ID =
2570 D3D11_MESSAGE_ID(3145993i32);
2571pub const D3D11_MESSAGE_ID_CHECKCRYPTOSESSIONSTATUS_NULLPARAM: D3D11_MESSAGE_ID =
2572 D3D11_MESSAGE_ID(3146085i32);
2573pub const D3D11_MESSAGE_ID_CHECKFEATURESUPPORT_FORMAT_DEPRECATED: D3D11_MESSAGE_ID =
2574 D3D11_MESSAGE_ID(2097371i32);
2575pub const D3D11_MESSAGE_ID_CHECKFORMATSUPPORT_FORMAT_DEPRECATED: D3D11_MESSAGE_ID =
2576 D3D11_MESSAGE_ID(321i32);
2577pub const D3D11_MESSAGE_ID_CHECKFORMATSUPPORT_FORMAT_NOT_SUPPORTED: D3D11_MESSAGE_ID =
2578 D3D11_MESSAGE_ID(2097401i32);
2579pub const D3D11_MESSAGE_ID_CHECKMULTISAMPLEQUALITYLEVELS_FORMAT_DEPRECATED: D3D11_MESSAGE_ID =
2580 D3D11_MESSAGE_ID(322i32);
2581pub const D3D11_MESSAGE_ID_CHECKMULTISAMPLEQUALITYLEVELS_INVALIDFLAGS: D3D11_MESSAGE_ID =
2582 D3D11_MESSAGE_ID(3146138i32);
2583pub const D3D11_MESSAGE_ID_CHECKVIDEODECODERDOWNSAMPLING_INVALIDCOLORSPACE: D3D11_MESSAGE_ID =
2584 D3D11_MESSAGE_ID(3146090i32);
2585pub const D3D11_MESSAGE_ID_CHECKVIDEODECODERDOWNSAMPLING_NULLPARAM: D3D11_MESSAGE_ID =
2586 D3D11_MESSAGE_ID(3146089i32);
2587pub const D3D11_MESSAGE_ID_CHECKVIDEODECODERDOWNSAMPLING_ZEROWIDTHHEIGHT: D3D11_MESSAGE_ID =
2588 D3D11_MESSAGE_ID(3146091i32);
2589pub const D3D11_MESSAGE_ID_CHECKVIDEODECODERFORMAT_NULLPARAM: D3D11_MESSAGE_ID =
2590 D3D11_MESSAGE_ID(3145768i32);
2591pub const D3D11_MESSAGE_ID_CHECKVIDEODECODERFORMAT_OUTOFMEMORY_RETURN: D3D11_MESSAGE_ID =
2592 D3D11_MESSAGE_ID(3145769i32);
2593pub const D3D11_MESSAGE_ID_CHECKVIDEOPROCESSORFORMATCONVERSION_NULLPARAM: D3D11_MESSAGE_ID =
2594 D3D11_MESSAGE_ID(3146096i32);
2595pub const D3D11_MESSAGE_ID_CHECKVIDEOPROCESSORFORMAT_NULLPARAM: D3D11_MESSAGE_ID =
2596 D3D11_MESSAGE_ID(3145799i32);
2597pub const D3D11_MESSAGE_ID_CLEARDEPTHSTENCILVIEW_DENORMFLUSH: D3D11_MESSAGE_ID =
2598 D3D11_MESSAGE_ID(262i32);
2599pub const D3D11_MESSAGE_ID_CLEARDEPTHSTENCILVIEW_DEPTH_READONLY: D3D11_MESSAGE_ID =
2600 D3D11_MESSAGE_ID(2097369i32);
2601pub const D3D11_MESSAGE_ID_CLEARDEPTHSTENCILVIEW_INVALID: D3D11_MESSAGE_ID =
2602 D3D11_MESSAGE_ID(263i32);
2603pub const D3D11_MESSAGE_ID_CLEARDEPTHSTENCILVIEW_STENCIL_READONLY: D3D11_MESSAGE_ID =
2604 D3D11_MESSAGE_ID(2097370i32);
2605pub const D3D11_MESSAGE_ID_CLEARRENDERTARGETVIEW_DENORMFLUSH: D3D11_MESSAGE_ID =
2606 D3D11_MESSAGE_ID(261i32);
2607pub const D3D11_MESSAGE_ID_CLEARUNORDEREDACCESSVIEWFLOAT_HAZARD: D3D11_MESSAGE_ID =
2608 D3D11_MESSAGE_ID(3146145i32);
2609pub const D3D11_MESSAGE_ID_CLEARUNORDEREDACCESSVIEWFLOAT_INVALIDFORMAT: D3D11_MESSAGE_ID =
2610 D3D11_MESSAGE_ID(2097405i32);
2611pub const D3D11_MESSAGE_ID_CLEARUNORDEREDACCESSVIEWUINT_HAZARD: D3D11_MESSAGE_ID =
2612 D3D11_MESSAGE_ID(3146144i32);
2613pub const D3D11_MESSAGE_ID_CLEARUNORDEREDACCESSVIEW_DENORMFLUSH: D3D11_MESSAGE_ID =
2614 D3D11_MESSAGE_ID(2097355i32);
2615pub const D3D11_MESSAGE_ID_CONFIGUREAUTHENTICATEDCHANNEL_INVALIDPROCESSIDTYPE: D3D11_MESSAGE_ID =
2616 D3D11_MESSAGE_ID(3146015i32);
2617pub const D3D11_MESSAGE_ID_CONFIGUREAUTHENTICATEDCHANNEL_NULLPARAM: D3D11_MESSAGE_ID =
2618 D3D11_MESSAGE_ID(3146011i32);
2619pub const D3D11_MESSAGE_ID_CONFIGUREAUTHENTICATEDCHANNEL_UNSUPPORTEDCONFIGURE: D3D11_MESSAGE_ID =
2620 D3D11_MESSAGE_ID(3146013i32);
2621pub const D3D11_MESSAGE_ID_CONFIGUREAUTHENTICATEDCHANNEL_WRONGCHANNEL: D3D11_MESSAGE_ID =
2622 D3D11_MESSAGE_ID(3146012i32);
2623pub const D3D11_MESSAGE_ID_CONFIGUREAUTHENTICATEDCHANNEL_WRONGSIZE: D3D11_MESSAGE_ID =
2624 D3D11_MESSAGE_ID(3146014i32);
2625pub const D3D11_MESSAGE_ID_COPYRESOURCE_INVALIDDESTINATIONSTATE: D3D11_MESSAGE_ID =
2626 D3D11_MESSAGE_ID(285i32);
2627pub const D3D11_MESSAGE_ID_COPYRESOURCE_INVALIDSOURCE: D3D11_MESSAGE_ID = D3D11_MESSAGE_ID(284i32);
2628pub const D3D11_MESSAGE_ID_COPYRESOURCE_INVALIDSOURCESTATE: D3D11_MESSAGE_ID =
2629 D3D11_MESSAGE_ID(286i32);
2630pub const D3D11_MESSAGE_ID_COPYRESOURCE_NO_3D_MISMATCHED_UPDATES: D3D11_MESSAGE_ID =
2631 D3D11_MESSAGE_ID(1048637i32);
2632pub const D3D11_MESSAGE_ID_COPYRESOURCE_NO_TEXTURE_3D_READBACK: D3D11_MESSAGE_ID =
2633 D3D11_MESSAGE_ID(1048597i32);
2634pub const D3D11_MESSAGE_ID_COPYRESOURCE_NO_TEXTURE_ONLY_READBACK: D3D11_MESSAGE_ID =
2635 D3D11_MESSAGE_ID(1048598i32);
2636pub const D3D11_MESSAGE_ID_COPYRESOURCE_ONLY_TEXTURE_2D_WITHIN_GPU_MEMORY: D3D11_MESSAGE_ID =
2637 D3D11_MESSAGE_ID(1048596i32);
2638pub const D3D11_MESSAGE_ID_COPYSTRUCTURECOUNT_INVALIDDESTINATIONSTATE: D3D11_MESSAGE_ID =
2639 D3D11_MESSAGE_ID(2097399i32);
2640pub const D3D11_MESSAGE_ID_COPYSTRUCTURECOUNT_INVALIDOFFSET: D3D11_MESSAGE_ID =
2641 D3D11_MESSAGE_ID(2097397i32);
2642pub const D3D11_MESSAGE_ID_COPYSTRUCTURECOUNT_INVALIDSOURCESTATE: D3D11_MESSAGE_ID =
2643 D3D11_MESSAGE_ID(2097400i32);
2644pub const D3D11_MESSAGE_ID_COPYSTRUCTURECOUNT_LARGEOFFSET: D3D11_MESSAGE_ID =
2645 D3D11_MESSAGE_ID(2097398i32);
2646pub const D3D11_MESSAGE_ID_COPYSUBRESOURCEREGION1_INVALIDCOPYFLAGS: D3D11_MESSAGE_ID =
2647 D3D11_MESSAGE_ID(3145755i32);
2648pub const D3D11_MESSAGE_ID_COPYSUBRESOURCEREGION_EMPTYSOURCEBOX: D3D11_MESSAGE_ID =
2649 D3D11_MESSAGE_ID(3146078i32);
2650pub const D3D11_MESSAGE_ID_COPYSUBRESOURCEREGION_INVALIDDESTINATIONSTATE: D3D11_MESSAGE_ID =
2651 D3D11_MESSAGE_ID(282i32);
2652pub const D3D11_MESSAGE_ID_COPYSUBRESOURCEREGION_INVALIDDESTINATIONSUBRESOURCE: D3D11_MESSAGE_ID =
2653 D3D11_MESSAGE_ID(278i32);
2654pub const D3D11_MESSAGE_ID_COPYSUBRESOURCEREGION_INVALIDSOURCE: D3D11_MESSAGE_ID =
2655 D3D11_MESSAGE_ID(281i32);
2656pub const D3D11_MESSAGE_ID_COPYSUBRESOURCEREGION_INVALIDSOURCEBOX: D3D11_MESSAGE_ID =
2657 D3D11_MESSAGE_ID(280i32);
2658pub const D3D11_MESSAGE_ID_COPYSUBRESOURCEREGION_INVALIDSOURCESTATE: D3D11_MESSAGE_ID =
2659 D3D11_MESSAGE_ID(283i32);
2660pub const D3D11_MESSAGE_ID_COPYSUBRESOURCEREGION_INVALIDSOURCESUBRESOURCE: D3D11_MESSAGE_ID =
2661 D3D11_MESSAGE_ID(279i32);
2662pub const D3D11_MESSAGE_ID_COPYTILEMAPPINGS_INVALID_PARAMETER: D3D11_MESSAGE_ID =
2663 D3D11_MESSAGE_ID(3146126i32);
2664pub const D3D11_MESSAGE_ID_COPYTILES_INVALID_PARAMETER: D3D11_MESSAGE_ID =
2665 D3D11_MESSAGE_ID(3146127i32);
2666pub const D3D11_MESSAGE_ID_CORRUPTED_MULTITHREADING: D3D11_MESSAGE_ID = D3D11_MESSAGE_ID(28i32);
2667pub const D3D11_MESSAGE_ID_CORRUPTED_PARAMETER1: D3D11_MESSAGE_ID = D3D11_MESSAGE_ID(13i32);
2668pub const D3D11_MESSAGE_ID_CORRUPTED_PARAMETER10: D3D11_MESSAGE_ID = D3D11_MESSAGE_ID(22i32);
2669pub const D3D11_MESSAGE_ID_CORRUPTED_PARAMETER11: D3D11_MESSAGE_ID = D3D11_MESSAGE_ID(23i32);
2670pub const D3D11_MESSAGE_ID_CORRUPTED_PARAMETER12: D3D11_MESSAGE_ID = D3D11_MESSAGE_ID(24i32);
2671pub const D3D11_MESSAGE_ID_CORRUPTED_PARAMETER13: D3D11_MESSAGE_ID = D3D11_MESSAGE_ID(25i32);
2672pub const D3D11_MESSAGE_ID_CORRUPTED_PARAMETER14: D3D11_MESSAGE_ID = D3D11_MESSAGE_ID(26i32);
2673pub const D3D11_MESSAGE_ID_CORRUPTED_PARAMETER15: D3D11_MESSAGE_ID = D3D11_MESSAGE_ID(27i32);
2674pub const D3D11_MESSAGE_ID_CORRUPTED_PARAMETER2: D3D11_MESSAGE_ID = D3D11_MESSAGE_ID(14i32);
2675pub const D3D11_MESSAGE_ID_CORRUPTED_PARAMETER3: D3D11_MESSAGE_ID = D3D11_MESSAGE_ID(15i32);
2676pub const D3D11_MESSAGE_ID_CORRUPTED_PARAMETER4: D3D11_MESSAGE_ID = D3D11_MESSAGE_ID(16i32);
2677pub const D3D11_MESSAGE_ID_CORRUPTED_PARAMETER5: D3D11_MESSAGE_ID = D3D11_MESSAGE_ID(17i32);
2678pub const D3D11_MESSAGE_ID_CORRUPTED_PARAMETER6: D3D11_MESSAGE_ID = D3D11_MESSAGE_ID(18i32);
2679pub const D3D11_MESSAGE_ID_CORRUPTED_PARAMETER7: D3D11_MESSAGE_ID = D3D11_MESSAGE_ID(19i32);
2680pub const D3D11_MESSAGE_ID_CORRUPTED_PARAMETER8: D3D11_MESSAGE_ID = D3D11_MESSAGE_ID(20i32);
2681pub const D3D11_MESSAGE_ID_CORRUPTED_PARAMETER9: D3D11_MESSAGE_ID = D3D11_MESSAGE_ID(21i32);
2682pub const D3D11_MESSAGE_ID_CORRUPTED_THIS: D3D11_MESSAGE_ID = D3D11_MESSAGE_ID(12i32);
2683pub const D3D11_MESSAGE_ID_CREATEAUTHENTICATEDCHANNEL_INVALIDTYPE: D3D11_MESSAGE_ID =
2684 D3D11_MESSAGE_ID(3145997i32);
2685pub const D3D11_MESSAGE_ID_CREATEAUTHENTICATEDCHANNEL_NULLPARAM: D3D11_MESSAGE_ID =
2686 D3D11_MESSAGE_ID(3145995i32);
2687pub const D3D11_MESSAGE_ID_CREATEAUTHENTICATEDCHANNEL_OUTOFMEMORY_RETURN: D3D11_MESSAGE_ID =
2688 D3D11_MESSAGE_ID(3145998i32);
2689pub const D3D11_MESSAGE_ID_CREATEAUTHENTICATEDCHANNEL_UNSUPPORTED: D3D11_MESSAGE_ID =
2690 D3D11_MESSAGE_ID(3145996i32);
2691pub const D3D11_MESSAGE_ID_CREATEBLENDSTATE_INVALIDBLENDOP: D3D11_MESSAGE_ID =
2692 D3D11_MESSAGE_ID(214i32);
2693pub const D3D11_MESSAGE_ID_CREATEBLENDSTATE_INVALIDBLENDOPALPHA: D3D11_MESSAGE_ID =
2694 D3D11_MESSAGE_ID(217i32);
2695pub const D3D11_MESSAGE_ID_CREATEBLENDSTATE_INVALIDDESTBLEND: D3D11_MESSAGE_ID =
2696 D3D11_MESSAGE_ID(213i32);
2697pub const D3D11_MESSAGE_ID_CREATEBLENDSTATE_INVALIDDESTBLENDALPHA: D3D11_MESSAGE_ID =
2698 D3D11_MESSAGE_ID(216i32);
2699pub const D3D11_MESSAGE_ID_CREATEBLENDSTATE_INVALIDLOGICOPS: D3D11_MESSAGE_ID =
2700 D3D11_MESSAGE_ID(3145941i32);
2701pub const D3D11_MESSAGE_ID_CREATEBLENDSTATE_INVALIDRENDERTARGETWRITEMASK: D3D11_MESSAGE_ID =
2702 D3D11_MESSAGE_ID(218i32);
2703pub const D3D11_MESSAGE_ID_CREATEBLENDSTATE_INVALIDSRCBLEND: D3D11_MESSAGE_ID =
2704 D3D11_MESSAGE_ID(212i32);
2705pub const D3D11_MESSAGE_ID_CREATEBLENDSTATE_INVALIDSRCBLENDALPHA: D3D11_MESSAGE_ID =
2706 D3D11_MESSAGE_ID(215i32);
2707pub const D3D11_MESSAGE_ID_CREATEBLENDSTATE_NO_ALPHA_TO_COVERAGE: D3D11_MESSAGE_ID =
2708 D3D11_MESSAGE_ID(1048600i32);
2709pub const D3D11_MESSAGE_ID_CREATEBLENDSTATE_NO_INDEPENDENT_BLEND_ENABLE: D3D11_MESSAGE_ID =
2710 D3D11_MESSAGE_ID(1048612i32);
2711pub const D3D11_MESSAGE_ID_CREATEBLENDSTATE_NO_INDEPENDENT_WRITE_MASKS: D3D11_MESSAGE_ID =
2712 D3D11_MESSAGE_ID(1048613i32);
2713pub const D3D11_MESSAGE_ID_CREATEBLENDSTATE_NO_MRT_BLEND: D3D11_MESSAGE_ID =
2714 D3D11_MESSAGE_ID(1048623i32);
2715pub const D3D11_MESSAGE_ID_CREATEBLENDSTATE_NO_SEPARATE_ALPHA_BLEND: D3D11_MESSAGE_ID =
2716 D3D11_MESSAGE_ID(1048622i32);
2717pub const D3D11_MESSAGE_ID_CREATEBLENDSTATE_NULLDESC: D3D11_MESSAGE_ID = D3D11_MESSAGE_ID(220i32);
2718pub const D3D11_MESSAGE_ID_CREATEBLENDSTATE_OPERATION_NOT_SUPPORTED: D3D11_MESSAGE_ID =
2719 D3D11_MESSAGE_ID(1048624i32);
2720pub const D3D11_MESSAGE_ID_CREATEBLENDSTATE_TOOMANYOBJECTS: D3D11_MESSAGE_ID =
2721 D3D11_MESSAGE_ID(219i32);
2722pub const D3D11_MESSAGE_ID_CREATEBUFFER_INVALIDARG_RETURN: D3D11_MESSAGE_ID =
2723 D3D11_MESSAGE_ID(69i32);
2724pub const D3D11_MESSAGE_ID_CREATEBUFFER_INVALIDBINDFLAGS: D3D11_MESSAGE_ID =
2725 D3D11_MESSAGE_ID(64i32);
2726pub const D3D11_MESSAGE_ID_CREATEBUFFER_INVALIDCONSTANTBUFFERBINDINGS: D3D11_MESSAGE_ID =
2727 D3D11_MESSAGE_ID(72i32);
2728pub const D3D11_MESSAGE_ID_CREATEBUFFER_INVALIDCPUACCESSFLAGS: D3D11_MESSAGE_ID =
2729 D3D11_MESSAGE_ID(63i32);
2730pub const D3D11_MESSAGE_ID_CREATEBUFFER_INVALIDDIMENSIONS: D3D11_MESSAGE_ID =
2731 D3D11_MESSAGE_ID(66i32);
2732pub const D3D11_MESSAGE_ID_CREATEBUFFER_INVALIDINITIALDATA: D3D11_MESSAGE_ID =
2733 D3D11_MESSAGE_ID(65i32);
2734pub const D3D11_MESSAGE_ID_CREATEBUFFER_INVALIDMIPLEVELS: D3D11_MESSAGE_ID =
2735 D3D11_MESSAGE_ID(67i32);
2736pub const D3D11_MESSAGE_ID_CREATEBUFFER_INVALIDMISCFLAGS: D3D11_MESSAGE_ID =
2737 D3D11_MESSAGE_ID(68i32);
2738pub const D3D11_MESSAGE_ID_CREATEBUFFER_INVALIDSAMPLES: D3D11_MESSAGE_ID = D3D11_MESSAGE_ID(58i32);
2739pub const D3D11_MESSAGE_ID_CREATEBUFFER_INVALIDSTRUCTURESTRIDE: D3D11_MESSAGE_ID =
2740 D3D11_MESSAGE_ID(2097339i32);
2741pub const D3D11_MESSAGE_ID_CREATEBUFFER_INVALIDUSAGE: D3D11_MESSAGE_ID =
2742 D3D11_MESSAGE_ID(3146120i32);
2743pub const D3D11_MESSAGE_ID_CREATEBUFFER_LARGEALLOCATION: D3D11_MESSAGE_ID = D3D11_MESSAGE_ID(73i32);
2744pub const D3D11_MESSAGE_ID_CREATEBUFFER_NULLDESC: D3D11_MESSAGE_ID = D3D11_MESSAGE_ID(71i32);
2745pub const D3D11_MESSAGE_ID_CREATEBUFFER_OUTOFMEMORY_RETURN: D3D11_MESSAGE_ID =
2746 D3D11_MESSAGE_ID(70i32);
2747pub const D3D11_MESSAGE_ID_CREATEBUFFER_UNRECOGNIZEDBINDFLAGS: D3D11_MESSAGE_ID =
2748 D3D11_MESSAGE_ID(60i32);
2749pub const D3D11_MESSAGE_ID_CREATEBUFFER_UNRECOGNIZEDCPUACCESSFLAGS: D3D11_MESSAGE_ID =
2750 D3D11_MESSAGE_ID(61i32);
2751pub const D3D11_MESSAGE_ID_CREATEBUFFER_UNRECOGNIZEDFORMAT: D3D11_MESSAGE_ID =
2752 D3D11_MESSAGE_ID(57i32);
2753pub const D3D11_MESSAGE_ID_CREATEBUFFER_UNRECOGNIZEDMISCFLAGS: D3D11_MESSAGE_ID =
2754 D3D11_MESSAGE_ID(62i32);
2755pub const D3D11_MESSAGE_ID_CREATEBUFFER_UNRECOGNIZEDUSAGE: D3D11_MESSAGE_ID =
2756 D3D11_MESSAGE_ID(59i32);
2757pub const D3D11_MESSAGE_ID_CREATECOMPUTESHADER_INVALIDCALL: D3D11_MESSAGE_ID =
2758 D3D11_MESSAGE_ID(2097320i32);
2759pub const D3D11_MESSAGE_ID_CREATECOMPUTESHADER_INVALIDCLASSLINKAGE: D3D11_MESSAGE_ID =
2760 D3D11_MESSAGE_ID(2097324i32);
2761pub const D3D11_MESSAGE_ID_CREATECOMPUTESHADER_INVALIDSHADERBYTECODE: D3D11_MESSAGE_ID =
2762 D3D11_MESSAGE_ID(2097322i32);
2763pub const D3D11_MESSAGE_ID_CREATECOMPUTESHADER_INVALIDSHADERTYPE: D3D11_MESSAGE_ID =
2764 D3D11_MESSAGE_ID(2097323i32);
2765pub const D3D11_MESSAGE_ID_CREATECOMPUTESHADER_OUTOFMEMORY: D3D11_MESSAGE_ID =
2766 D3D11_MESSAGE_ID(2097321i32);
2767pub const D3D11_MESSAGE_ID_CREATECOUNTER_NONEXCLUSIVE_RETURN: D3D11_MESSAGE_ID =
2768 D3D11_MESSAGE_ID(400i32);
2769pub const D3D11_MESSAGE_ID_CREATECOUNTER_NULLDESC: D3D11_MESSAGE_ID = D3D11_MESSAGE_ID(401i32);
2770pub const D3D11_MESSAGE_ID_CREATECOUNTER_OUTOFMEMORY_RETURN: D3D11_MESSAGE_ID =
2771 D3D11_MESSAGE_ID(399i32);
2772pub const D3D11_MESSAGE_ID_CREATECOUNTER_OUTOFRANGE_COUNTER: D3D11_MESSAGE_ID =
2773 D3D11_MESSAGE_ID(396i32);
2774pub const D3D11_MESSAGE_ID_CREATECOUNTER_SIMULTANEOUS_ACTIVE_COUNTERS_EXHAUSTED: D3D11_MESSAGE_ID =
2775 D3D11_MESSAGE_ID(397i32);
2776pub const D3D11_MESSAGE_ID_CREATECOUNTER_UNSUPPORTED_WELLKNOWN_COUNTER: D3D11_MESSAGE_ID =
2777 D3D11_MESSAGE_ID(398i32);
2778pub const D3D11_MESSAGE_ID_CREATECRYPTOSESSION_NULLPARAM: D3D11_MESSAGE_ID =
2779 D3D11_MESSAGE_ID(3145951i32);
2780pub const D3D11_MESSAGE_ID_CREATECRYPTOSESSION_OUTOFMEMORY_RETURN: D3D11_MESSAGE_ID =
2781 D3D11_MESSAGE_ID(3145952i32);
2782pub const D3D11_MESSAGE_ID_CREATEDEFERREDCONTEXT_INVALIDARG_RETURN: D3D11_MESSAGE_ID =
2783 D3D11_MESSAGE_ID(2097163i32);
2784pub const D3D11_MESSAGE_ID_CREATEDEFERREDCONTEXT_INVALID_CALL_RETURN: D3D11_MESSAGE_ID =
2785 D3D11_MESSAGE_ID(2097164i32);
2786pub const D3D11_MESSAGE_ID_CREATEDEFERREDCONTEXT_INVALID_COMMANDLISTFLAGS: D3D11_MESSAGE_ID =
2787 D3D11_MESSAGE_ID(2097161i32);
2788pub const D3D11_MESSAGE_ID_CREATEDEFERREDCONTEXT_OUTOFMEMORY_RETURN: D3D11_MESSAGE_ID =
2789 D3D11_MESSAGE_ID(2097165i32);
2790pub const D3D11_MESSAGE_ID_CREATEDEFERREDCONTEXT_SINGLETHREADED: D3D11_MESSAGE_ID =
2791 D3D11_MESSAGE_ID(2097162i32);
2792pub const D3D11_MESSAGE_ID_CREATEDEPTHSTENCILSTATE_INVALIDBACKFACESTENCILFAILOP: D3D11_MESSAGE_ID =
2793 D3D11_MESSAGE_ID(206i32);
2794pub const D3D11_MESSAGE_ID_CREATEDEPTHSTENCILSTATE_INVALIDBACKFACESTENCILFUNC: D3D11_MESSAGE_ID =
2795 D3D11_MESSAGE_ID(209i32);
2796pub const D3D11_MESSAGE_ID_CREATEDEPTHSTENCILSTATE_INVALIDBACKFACESTENCILPASSOP: D3D11_MESSAGE_ID =
2797 D3D11_MESSAGE_ID(208i32);
2798pub const D3D11_MESSAGE_ID_CREATEDEPTHSTENCILSTATE_INVALIDBACKFACESTENCILZFAILOP: D3D11_MESSAGE_ID =
2799 D3D11_MESSAGE_ID(207i32);
2800pub const D3D11_MESSAGE_ID_CREATEDEPTHSTENCILSTATE_INVALIDDEPTHFUNC: D3D11_MESSAGE_ID =
2801 D3D11_MESSAGE_ID(201i32);
2802pub const D3D11_MESSAGE_ID_CREATEDEPTHSTENCILSTATE_INVALIDDEPTHWRITEMASK: D3D11_MESSAGE_ID =
2803 D3D11_MESSAGE_ID(200i32);
2804pub const D3D11_MESSAGE_ID_CREATEDEPTHSTENCILSTATE_INVALIDFRONTFACESTENCILFAILOP: D3D11_MESSAGE_ID =
2805 D3D11_MESSAGE_ID(202i32);
2806pub const D3D11_MESSAGE_ID_CREATEDEPTHSTENCILSTATE_INVALIDFRONTFACESTENCILFUNC: D3D11_MESSAGE_ID =
2807 D3D11_MESSAGE_ID(205i32);
2808pub const D3D11_MESSAGE_ID_CREATEDEPTHSTENCILSTATE_INVALIDFRONTFACESTENCILPASSOP: D3D11_MESSAGE_ID =
2809 D3D11_MESSAGE_ID(204i32);
2810pub const D3D11_MESSAGE_ID_CREATEDEPTHSTENCILSTATE_INVALIDFRONTFACESTENCILZFAILOP:
2811 D3D11_MESSAGE_ID = D3D11_MESSAGE_ID(203i32);
2812pub const D3D11_MESSAGE_ID_CREATEDEPTHSTENCILSTATE_NULLDESC: D3D11_MESSAGE_ID =
2813 D3D11_MESSAGE_ID(211i32);
2814pub const D3D11_MESSAGE_ID_CREATEDEPTHSTENCILSTATE_STENCIL_NO_TWO_SIDED: D3D11_MESSAGE_ID =
2815 D3D11_MESSAGE_ID(1048577i32);
2816pub const D3D11_MESSAGE_ID_CREATEDEPTHSTENCILSTATE_TOOMANYOBJECTS: D3D11_MESSAGE_ID =
2817 D3D11_MESSAGE_ID(210i32);
2818pub const D3D11_MESSAGE_ID_CREATEDEPTHSTENCILVIEW_INVALIDARG_RETURN: D3D11_MESSAGE_ID =
2819 D3D11_MESSAGE_ID(148i32);
2820pub const D3D11_MESSAGE_ID_CREATEDEPTHSTENCILVIEW_INVALIDDESC: D3D11_MESSAGE_ID =
2821 D3D11_MESSAGE_ID(143i32);
2822pub const D3D11_MESSAGE_ID_CREATEDEPTHSTENCILVIEW_INVALIDDIMENSIONS: D3D11_MESSAGE_ID =
2823 D3D11_MESSAGE_ID(145i32);
2824pub const D3D11_MESSAGE_ID_CREATEDEPTHSTENCILVIEW_INVALIDFLAGS: D3D11_MESSAGE_ID =
2825 D3D11_MESSAGE_ID(2097153i32);
2826pub const D3D11_MESSAGE_ID_CREATEDEPTHSTENCILVIEW_INVALIDFORMAT: D3D11_MESSAGE_ID =
2827 D3D11_MESSAGE_ID(144i32);
2828pub const D3D11_MESSAGE_ID_CREATEDEPTHSTENCILVIEW_INVALIDRESOURCE: D3D11_MESSAGE_ID =
2829 D3D11_MESSAGE_ID(146i32);
2830pub const D3D11_MESSAGE_ID_CREATEDEPTHSTENCILVIEW_OUTOFMEMORY_RETURN: D3D11_MESSAGE_ID =
2831 D3D11_MESSAGE_ID(149i32);
2832pub const D3D11_MESSAGE_ID_CREATEDEPTHSTENCILVIEW_TOOMANYOBJECTS: D3D11_MESSAGE_ID =
2833 D3D11_MESSAGE_ID(147i32);
2834pub const D3D11_MESSAGE_ID_CREATEDEPTHSTENCILVIEW_UNRECOGNIZEDFORMAT: D3D11_MESSAGE_ID =
2835 D3D11_MESSAGE_ID(142i32);
2836pub const D3D11_MESSAGE_ID_CREATEDEVICECONTEXTSTATE_FEATURELEVELS_NOT_SUPPORTED: D3D11_MESSAGE_ID =
2837 D3D11_MESSAGE_ID(3145752i32);
2838pub const D3D11_MESSAGE_ID_CREATEDEVICECONTEXTSTATE_INVALIDFEATURELEVEL: D3D11_MESSAGE_ID =
2839 D3D11_MESSAGE_ID(3145751i32);
2840pub const D3D11_MESSAGE_ID_CREATEDEVICECONTEXTSTATE_INVALIDFLAGS: D3D11_MESSAGE_ID =
2841 D3D11_MESSAGE_ID(3145750i32);
2842pub const D3D11_MESSAGE_ID_CREATEDEVICECONTEXTSTATE_INVALIDREFIID: D3D11_MESSAGE_ID =
2843 D3D11_MESSAGE_ID(3145753i32);
2844pub const D3D11_MESSAGE_ID_CREATEDEVICE_INVALIDARGS: D3D11_MESSAGE_ID =
2845 D3D11_MESSAGE_ID(3146142i32);
2846pub const D3D11_MESSAGE_ID_CREATEDEVICE_WARNING: D3D11_MESSAGE_ID = D3D11_MESSAGE_ID(3146143i32);
2847pub const D3D11_MESSAGE_ID_CREATEDOMAINSHADER_INVALIDCALL: D3D11_MESSAGE_ID =
2848 D3D11_MESSAGE_ID(2097193i32);
2849pub const D3D11_MESSAGE_ID_CREATEDOMAINSHADER_INVALIDCLASSLINKAGE: D3D11_MESSAGE_ID =
2850 D3D11_MESSAGE_ID(2097197i32);
2851pub const D3D11_MESSAGE_ID_CREATEDOMAINSHADER_INVALIDSHADERBYTECODE: D3D11_MESSAGE_ID =
2852 D3D11_MESSAGE_ID(2097195i32);
2853pub const D3D11_MESSAGE_ID_CREATEDOMAINSHADER_INVALIDSHADERTYPE: D3D11_MESSAGE_ID =
2854 D3D11_MESSAGE_ID(2097196i32);
2855pub const D3D11_MESSAGE_ID_CREATEDOMAINSHADER_OUTOFMEMORY: D3D11_MESSAGE_ID =
2856 D3D11_MESSAGE_ID(2097194i32);
2857pub const D3D11_MESSAGE_ID_CREATEFENCE_INVALIDFLAGS: D3D11_MESSAGE_ID =
2858 D3D11_MESSAGE_ID(3146256i32);
2859pub const D3D11_MESSAGE_ID_CREATEGEOMETRYSHADERWITHSTREAMOUTPUT_CANTHAVEONLYGAPS: D3D11_MESSAGE_ID =
2860 D3D11_MESSAGE_ID(188i32);
2861pub const D3D11_MESSAGE_ID_CREATEGEOMETRYSHADERWITHSTREAMOUTPUT_DECLTOOCOMPLEX: D3D11_MESSAGE_ID =
2862 D3D11_MESSAGE_ID(189i32);
2863pub const D3D11_MESSAGE_ID_CREATEGEOMETRYSHADERWITHSTREAMOUTPUT_EXPECTEDDECL: D3D11_MESSAGE_ID =
2864 D3D11_MESSAGE_ID(177i32);
2865pub const D3D11_MESSAGE_ID_CREATEGEOMETRYSHADERWITHSTREAMOUTPUT_INVALIDCLASSLINKAGE:
2866 D3D11_MESSAGE_ID = D3D11_MESSAGE_ID(2097159i32);
2867pub const D3D11_MESSAGE_ID_CREATEGEOMETRYSHADERWITHSTREAMOUTPUT_INVALIDCOMPONENTCOUNT:
2868 D3D11_MESSAGE_ID = D3D11_MESSAGE_ID(181i32);
2869pub const D3D11_MESSAGE_ID_CREATEGEOMETRYSHADERWITHSTREAMOUTPUT_INVALIDGAPDEFINITION:
2870 D3D11_MESSAGE_ID = D3D11_MESSAGE_ID(183i32);
2871pub const D3D11_MESSAGE_ID_CREATEGEOMETRYSHADERWITHSTREAMOUTPUT_INVALIDNUMENTRIES:
2872 D3D11_MESSAGE_ID = D3D11_MESSAGE_ID(174i32);
2873pub const D3D11_MESSAGE_ID_CREATEGEOMETRYSHADERWITHSTREAMOUTPUT_INVALIDNUMSTREAMS:
2874 D3D11_MESSAGE_ID = D3D11_MESSAGE_ID(2097156i32);
2875pub const D3D11_MESSAGE_ID_CREATEGEOMETRYSHADERWITHSTREAMOUTPUT_INVALIDNUMSTRIDES:
2876 D3D11_MESSAGE_ID = D3D11_MESSAGE_ID(2097172i32);
2877pub const D3D11_MESSAGE_ID_CREATEGEOMETRYSHADERWITHSTREAMOUTPUT_INVALIDOUTPUTSLOT:
2878 D3D11_MESSAGE_ID = D3D11_MESSAGE_ID(179i32);
2879pub const D3D11_MESSAGE_ID_CREATEGEOMETRYSHADERWITHSTREAMOUTPUT_INVALIDOUTPUTSTREAMSTRIDE:
2880 D3D11_MESSAGE_ID = D3D11_MESSAGE_ID(185i32);
2881pub const D3D11_MESSAGE_ID_CREATEGEOMETRYSHADERWITHSTREAMOUTPUT_INVALIDSHADERBYTECODE:
2882 D3D11_MESSAGE_ID = D3D11_MESSAGE_ID(172i32);
2883pub const D3D11_MESSAGE_ID_CREATEGEOMETRYSHADERWITHSTREAMOUTPUT_INVALIDSHADERTYPE:
2884 D3D11_MESSAGE_ID = D3D11_MESSAGE_ID(173i32);
2885pub const D3D11_MESSAGE_ID_CREATEGEOMETRYSHADERWITHSTREAMOUTPUT_INVALIDSTARTCOMPONENTANDCOMPONENTCOUNT: D3D11_MESSAGE_ID = D3D11_MESSAGE_ID(182i32);
2886pub const D3D11_MESSAGE_ID_CREATEGEOMETRYSHADERWITHSTREAMOUTPUT_INVALIDSTREAM: D3D11_MESSAGE_ID =
2887 D3D11_MESSAGE_ID(2097169i32);
2888pub const D3D11_MESSAGE_ID_CREATEGEOMETRYSHADERWITHSTREAMOUTPUT_INVALIDSTREAMTORASTERIZER:
2889 D3D11_MESSAGE_ID = D3D11_MESSAGE_ID(2097157i32);
2890pub const D3D11_MESSAGE_ID_CREATEGEOMETRYSHADERWITHSTREAMOUTPUT_MASKMISMATCH: D3D11_MESSAGE_ID =
2891 D3D11_MESSAGE_ID(187i32);
2892pub const D3D11_MESSAGE_ID_CREATEGEOMETRYSHADERWITHSTREAMOUTPUT_MISSINGOUTPUTSIGNATURE:
2893 D3D11_MESSAGE_ID = D3D11_MESSAGE_ID(190i32);
2894pub const D3D11_MESSAGE_ID_CREATEGEOMETRYSHADERWITHSTREAMOUTPUT_MISSINGSEMANTIC: D3D11_MESSAGE_ID =
2895 D3D11_MESSAGE_ID(186i32);
2896pub const D3D11_MESSAGE_ID_CREATEGEOMETRYSHADERWITHSTREAMOUTPUT_ONLYONEELEMENTPERSLOT:
2897 D3D11_MESSAGE_ID = D3D11_MESSAGE_ID(180i32);
2898pub const D3D11_MESSAGE_ID_CREATEGEOMETRYSHADERWITHSTREAMOUTPUT_OUTOFMEMORY: D3D11_MESSAGE_ID =
2899 D3D11_MESSAGE_ID(171i32);
2900pub const D3D11_MESSAGE_ID_CREATEGEOMETRYSHADERWITHSTREAMOUTPUT_OUTPUTSLOT0EXPECTED:
2901 D3D11_MESSAGE_ID = D3D11_MESSAGE_ID(178i32);
2902pub const D3D11_MESSAGE_ID_CREATEGEOMETRYSHADERWITHSTREAMOUTPUT_OUTPUTSTREAMSTRIDEUNUSED:
2903 D3D11_MESSAGE_ID = D3D11_MESSAGE_ID(175i32);
2904pub const D3D11_MESSAGE_ID_CREATEGEOMETRYSHADERWITHSTREAMOUTPUT_REPEATEDOUTPUT: D3D11_MESSAGE_ID =
2905 D3D11_MESSAGE_ID(184i32);
2906pub const D3D11_MESSAGE_ID_CREATEGEOMETRYSHADERWITHSTREAMOUTPUT_TRAILING_DIGIT_IN_SEMANTIC:
2907 D3D11_MESSAGE_ID = D3D11_MESSAGE_ID(386i32);
2908pub const D3D11_MESSAGE_ID_CREATEGEOMETRYSHADERWITHSTREAMOUTPUT_UNEXPECTEDDECL: D3D11_MESSAGE_ID =
2909 D3D11_MESSAGE_ID(176i32);
2910pub const D3D11_MESSAGE_ID_CREATEGEOMETRYSHADERWITHSTREAMOUTPUT_UNEXPECTEDENTRIES:
2911 D3D11_MESSAGE_ID = D3D11_MESSAGE_ID(2097170i32);
2912pub const D3D11_MESSAGE_ID_CREATEGEOMETRYSHADERWITHSTREAMOUTPUT_UNEXPECTEDSTREAMS:
2913 D3D11_MESSAGE_ID = D3D11_MESSAGE_ID(2097158i32);
2914pub const D3D11_MESSAGE_ID_CREATEGEOMETRYSHADERWITHSTREAMOUTPUT_UNEXPECTEDSTRIDES:
2915 D3D11_MESSAGE_ID = D3D11_MESSAGE_ID(2097171i32);
2916pub const D3D11_MESSAGE_ID_CREATEGEOMETRYSHADER_INVALIDCLASSLINKAGE: D3D11_MESSAGE_ID =
2917 D3D11_MESSAGE_ID(2097155i32);
2918pub const D3D11_MESSAGE_ID_CREATEGEOMETRYSHADER_INVALIDSHADERBYTECODE: D3D11_MESSAGE_ID =
2919 D3D11_MESSAGE_ID(169i32);
2920pub const D3D11_MESSAGE_ID_CREATEGEOMETRYSHADER_INVALIDSHADERTYPE: D3D11_MESSAGE_ID =
2921 D3D11_MESSAGE_ID(170i32);
2922pub const D3D11_MESSAGE_ID_CREATEGEOMETRYSHADER_OUTOFMEMORY: D3D11_MESSAGE_ID =
2923 D3D11_MESSAGE_ID(168i32);
2924pub const D3D11_MESSAGE_ID_CREATEHULLSHADER_INVALIDCALL: D3D11_MESSAGE_ID =
2925 D3D11_MESSAGE_ID(2097177i32);
2926pub const D3D11_MESSAGE_ID_CREATEHULLSHADER_INVALIDCLASSLINKAGE: D3D11_MESSAGE_ID =
2927 D3D11_MESSAGE_ID(2097181i32);
2928pub const D3D11_MESSAGE_ID_CREATEHULLSHADER_INVALIDSHADERBYTECODE: D3D11_MESSAGE_ID =
2929 D3D11_MESSAGE_ID(2097179i32);
2930pub const D3D11_MESSAGE_ID_CREATEHULLSHADER_INVALIDSHADERTYPE: D3D11_MESSAGE_ID =
2931 D3D11_MESSAGE_ID(2097180i32);
2932pub const D3D11_MESSAGE_ID_CREATEHULLSHADER_OUTOFMEMORY: D3D11_MESSAGE_ID =
2933 D3D11_MESSAGE_ID(2097178i32);
2934pub const D3D11_MESSAGE_ID_CREATEINPUTLAYOUT_DUPLICATESEMANTIC: D3D11_MESSAGE_ID =
2935 D3D11_MESSAGE_ID(160i32);
2936pub const D3D11_MESSAGE_ID_CREATEINPUTLAYOUT_EMPTY_LAYOUT: D3D11_MESSAGE_ID =
2937 D3D11_MESSAGE_ID(420i32);
2938pub const D3D11_MESSAGE_ID_CREATEINPUTLAYOUT_INCOMPATIBLEFORMAT: D3D11_MESSAGE_ID =
2939 D3D11_MESSAGE_ID(153i32);
2940pub const D3D11_MESSAGE_ID_CREATEINPUTLAYOUT_INVALIDALIGNMENT: D3D11_MESSAGE_ID =
2941 D3D11_MESSAGE_ID(159i32);
2942pub const D3D11_MESSAGE_ID_CREATEINPUTLAYOUT_INVALIDFORMAT: D3D11_MESSAGE_ID =
2943 D3D11_MESSAGE_ID(152i32);
2944pub const D3D11_MESSAGE_ID_CREATEINPUTLAYOUT_INVALIDINPUTSLOTCLASS: D3D11_MESSAGE_ID =
2945 D3D11_MESSAGE_ID(155i32);
2946pub const D3D11_MESSAGE_ID_CREATEINPUTLAYOUT_INVALIDSLOT: D3D11_MESSAGE_ID =
2947 D3D11_MESSAGE_ID(154i32);
2948pub const D3D11_MESSAGE_ID_CREATEINPUTLAYOUT_INVALIDSLOTCLASSCHANGE: D3D11_MESSAGE_ID =
2949 D3D11_MESSAGE_ID(157i32);
2950pub const D3D11_MESSAGE_ID_CREATEINPUTLAYOUT_INVALIDSTEPRATECHANGE: D3D11_MESSAGE_ID =
2951 D3D11_MESSAGE_ID(158i32);
2952pub const D3D11_MESSAGE_ID_CREATEINPUTLAYOUT_LEVEL9_INSTANCING_NOT_SUPPORTED: D3D11_MESSAGE_ID =
2953 D3D11_MESSAGE_ID(3146124i32);
2954pub const D3D11_MESSAGE_ID_CREATEINPUTLAYOUT_LEVEL9_STEPRATE_NOT_1: D3D11_MESSAGE_ID =
2955 D3D11_MESSAGE_ID(3146123i32);
2956pub const D3D11_MESSAGE_ID_CREATEINPUTLAYOUT_MISSINGELEMENT: D3D11_MESSAGE_ID =
2957 D3D11_MESSAGE_ID(163i32);
2958pub const D3D11_MESSAGE_ID_CREATEINPUTLAYOUT_NULLDESC: D3D11_MESSAGE_ID = D3D11_MESSAGE_ID(164i32);
2959pub const D3D11_MESSAGE_ID_CREATEINPUTLAYOUT_NULLSEMANTIC: D3D11_MESSAGE_ID =
2960 D3D11_MESSAGE_ID(162i32);
2961pub const D3D11_MESSAGE_ID_CREATEINPUTLAYOUT_OUTOFMEMORY: D3D11_MESSAGE_ID =
2962 D3D11_MESSAGE_ID(150i32);
2963pub const D3D11_MESSAGE_ID_CREATEINPUTLAYOUT_STEPRATESLOTCLASSMISMATCH: D3D11_MESSAGE_ID =
2964 D3D11_MESSAGE_ID(156i32);
2965pub const D3D11_MESSAGE_ID_CREATEINPUTLAYOUT_TOOMANYELEMENTS: D3D11_MESSAGE_ID =
2966 D3D11_MESSAGE_ID(151i32);
2967pub const D3D11_MESSAGE_ID_CREATEINPUTLAYOUT_TRAILING_DIGIT_IN_SEMANTIC: D3D11_MESSAGE_ID =
2968 D3D11_MESSAGE_ID(385i32);
2969pub const D3D11_MESSAGE_ID_CREATEINPUTLAYOUT_TYPE_MISMATCH: D3D11_MESSAGE_ID =
2970 D3D11_MESSAGE_ID(391i32);
2971pub const D3D11_MESSAGE_ID_CREATEINPUTLAYOUT_UNPARSEABLEINPUTSIGNATURE: D3D11_MESSAGE_ID =
2972 D3D11_MESSAGE_ID(161i32);
2973pub const D3D11_MESSAGE_ID_CREATEINPUTLAYOUT_UNSUPPORTED_FORMAT: D3D11_MESSAGE_ID =
2974 D3D11_MESSAGE_ID(1048599i32);
2975pub const D3D11_MESSAGE_ID_CREATEPIXELSHADER_INVALIDCLASSLINKAGE: D3D11_MESSAGE_ID =
2976 D3D11_MESSAGE_ID(2097160i32);
2977pub const D3D11_MESSAGE_ID_CREATEPIXELSHADER_INVALIDSHADERBYTECODE: D3D11_MESSAGE_ID =
2978 D3D11_MESSAGE_ID(192i32);
2979pub const D3D11_MESSAGE_ID_CREATEPIXELSHADER_INVALIDSHADERTYPE: D3D11_MESSAGE_ID =
2980 D3D11_MESSAGE_ID(193i32);
2981pub const D3D11_MESSAGE_ID_CREATEPIXELSHADER_OUTOFMEMORY: D3D11_MESSAGE_ID =
2982 D3D11_MESSAGE_ID(191i32);
2983pub const D3D11_MESSAGE_ID_CREATEPREDICATE_OUTOFMEMORY_RETURN: D3D11_MESSAGE_ID =
2984 D3D11_MESSAGE_ID(395i32);
2985pub const D3D11_MESSAGE_ID_CREATEQUERYORPREDICATE_DECODENOTSUPPORTED: D3D11_MESSAGE_ID =
2986 D3D11_MESSAGE_ID(3146158i32);
2987pub const D3D11_MESSAGE_ID_CREATEQUERYORPREDICATE_ENCODENOTSUPPORTED: D3D11_MESSAGE_ID =
2988 D3D11_MESSAGE_ID(3146159i32);
2989pub const D3D11_MESSAGE_ID_CREATEQUERYORPREDICATE_INVALIDCONTEXTTYPE: D3D11_MESSAGE_ID =
2990 D3D11_MESSAGE_ID(3146157i32);
2991pub const D3D11_MESSAGE_ID_CREATEQUERYORPREDICATE_INVALIDMISCFLAGS: D3D11_MESSAGE_ID =
2992 D3D11_MESSAGE_ID(233i32);
2993pub const D3D11_MESSAGE_ID_CREATEQUERYORPREDICATE_INVALIDQUERY: D3D11_MESSAGE_ID =
2994 D3D11_MESSAGE_ID(232i32);
2995pub const D3D11_MESSAGE_ID_CREATEQUERYORPREDICATE_NULLDESC: D3D11_MESSAGE_ID =
2996 D3D11_MESSAGE_ID(235i32);
2997pub const D3D11_MESSAGE_ID_CREATEQUERYORPREDICATE_UNEXPECTEDMISCFLAG: D3D11_MESSAGE_ID =
2998 D3D11_MESSAGE_ID(234i32);
2999pub const D3D11_MESSAGE_ID_CREATEQUERYORPREDICATE_UNSUPPORTEDCONTEXTTTYPEFORQUERY:
3000 D3D11_MESSAGE_ID = D3D11_MESSAGE_ID(3146222i32);
3001pub const D3D11_MESSAGE_ID_CREATEQUERY_OUTOFMEMORY_RETURN: D3D11_MESSAGE_ID =
3002 D3D11_MESSAGE_ID(394i32);
3003pub const D3D11_MESSAGE_ID_CREATERASTERIZERSTATE_DepthBiasClamp_NOT_SUPPORTED: D3D11_MESSAGE_ID =
3004 D3D11_MESSAGE_ID(1048578i32);
3005pub const D3D11_MESSAGE_ID_CREATERASTERIZERSTATE_DepthClipEnable_MUST_BE_TRUE: D3D11_MESSAGE_ID =
3006 D3D11_MESSAGE_ID(1048601i32);
3007pub const D3D11_MESSAGE_ID_CREATERASTERIZERSTATE_INVALIDCULLMODE: D3D11_MESSAGE_ID =
3008 D3D11_MESSAGE_ID(195i32);
3009pub const D3D11_MESSAGE_ID_CREATERASTERIZERSTATE_INVALIDDEPTHBIASCLAMP: D3D11_MESSAGE_ID =
3010 D3D11_MESSAGE_ID(196i32);
3011pub const D3D11_MESSAGE_ID_CREATERASTERIZERSTATE_INVALIDFILLMODE: D3D11_MESSAGE_ID =
3012 D3D11_MESSAGE_ID(194i32);
3013pub const D3D11_MESSAGE_ID_CREATERASTERIZERSTATE_INVALIDFORCEDSAMPLECOUNT: D3D11_MESSAGE_ID =
3014 D3D11_MESSAGE_ID(3145757i32);
3015pub const D3D11_MESSAGE_ID_CREATERASTERIZERSTATE_INVALIDSLOPESCALEDDEPTHBIAS: D3D11_MESSAGE_ID =
3016 D3D11_MESSAGE_ID(197i32);
3017pub const D3D11_MESSAGE_ID_CREATERASTERIZERSTATE_INVALID_CONSERVATIVERASTERMODE: D3D11_MESSAGE_ID =
3018 D3D11_MESSAGE_ID(3146155i32);
3019pub const D3D11_MESSAGE_ID_CREATERASTERIZERSTATE_NULLDESC: D3D11_MESSAGE_ID =
3020 D3D11_MESSAGE_ID(199i32);
3021pub const D3D11_MESSAGE_ID_CREATERASTERIZERSTATE_TOOMANYOBJECTS: D3D11_MESSAGE_ID =
3022 D3D11_MESSAGE_ID(198i32);
3023pub const D3D11_MESSAGE_ID_CREATERENDERTARGETVIEW_AMBIGUOUSVIDEOPLANEINDEX: D3D11_MESSAGE_ID =
3024 D3D11_MESSAGE_ID(3146165i32);
3025pub const D3D11_MESSAGE_ID_CREATERENDERTARGETVIEW_INVALIDARG_RETURN: D3D11_MESSAGE_ID =
3026 D3D11_MESSAGE_ID(140i32);
3027pub const D3D11_MESSAGE_ID_CREATERENDERTARGETVIEW_INVALIDDARRAYWITHDECODER: D3D11_MESSAGE_ID =
3028 D3D11_MESSAGE_ID(3145944i32);
3029pub const D3D11_MESSAGE_ID_CREATERENDERTARGETVIEW_INVALIDDESC: D3D11_MESSAGE_ID =
3030 D3D11_MESSAGE_ID(135i32);
3031pub const D3D11_MESSAGE_ID_CREATERENDERTARGETVIEW_INVALIDDIMENSIONS: D3D11_MESSAGE_ID =
3032 D3D11_MESSAGE_ID(137i32);
3033pub const D3D11_MESSAGE_ID_CREATERENDERTARGETVIEW_INVALIDFORMAT: D3D11_MESSAGE_ID =
3034 D3D11_MESSAGE_ID(136i32);
3035pub const D3D11_MESSAGE_ID_CREATERENDERTARGETVIEW_INVALIDPLANEINDEX: D3D11_MESSAGE_ID =
3036 D3D11_MESSAGE_ID(3146163i32);
3037pub const D3D11_MESSAGE_ID_CREATERENDERTARGETVIEW_INVALIDRESOURCE: D3D11_MESSAGE_ID =
3038 D3D11_MESSAGE_ID(138i32);
3039pub const D3D11_MESSAGE_ID_CREATERENDERTARGETVIEW_INVALIDVIDEOPLANEINDEX: D3D11_MESSAGE_ID =
3040 D3D11_MESSAGE_ID(3146164i32);
3041pub const D3D11_MESSAGE_ID_CREATERENDERTARGETVIEW_OUTOFMEMORY_RETURN: D3D11_MESSAGE_ID =
3042 D3D11_MESSAGE_ID(141i32);
3043pub const D3D11_MESSAGE_ID_CREATERENDERTARGETVIEW_TOOMANYOBJECTS: D3D11_MESSAGE_ID =
3044 D3D11_MESSAGE_ID(139i32);
3045pub const D3D11_MESSAGE_ID_CREATERENDERTARGETVIEW_UNRECOGNIZEDFORMAT: D3D11_MESSAGE_ID =
3046 D3D11_MESSAGE_ID(133i32);
3047pub const D3D11_MESSAGE_ID_CREATERENDERTARGETVIEW_UNSUPPORTEDFORMAT: D3D11_MESSAGE_ID =
3048 D3D11_MESSAGE_ID(134i32);
3049pub const D3D11_MESSAGE_ID_CREATERESOURCE_DIMENSION_EXCEEDS_FEATURE_LEVEL_DEFINITION:
3050 D3D11_MESSAGE_ID = D3D11_MESSAGE_ID(1048630i32);
3051pub const D3D11_MESSAGE_ID_CREATERESOURCE_DIMENSION_OUT_OF_RANGE: D3D11_MESSAGE_ID =
3052 D3D11_MESSAGE_ID(1048588i32);
3053pub const D3D11_MESSAGE_ID_CREATERESOURCE_DXGI_FORMAT_R8G8B8A8_CANNOT_BE_SHARED: D3D11_MESSAGE_ID =
3054 D3D11_MESSAGE_ID(1048617i32);
3055pub const D3D11_MESSAGE_ID_CREATERESOURCE_MSAA_PRECLUDES_SHADER_RESOURCE: D3D11_MESSAGE_ID =
3056 D3D11_MESSAGE_ID(1048610i32);
3057pub const D3D11_MESSAGE_ID_CREATERESOURCE_NON_POW_2_MIPMAP: D3D11_MESSAGE_ID =
3058 D3D11_MESSAGE_ID(1048634i32);
3059pub const D3D11_MESSAGE_ID_CREATERESOURCE_NOT_BINDABLE_AS_RENDER_TARGET: D3D11_MESSAGE_ID =
3060 D3D11_MESSAGE_ID(1048608i32);
3061pub const D3D11_MESSAGE_ID_CREATERESOURCE_NOT_BINDABLE_AS_SHADER_RESOURCE: D3D11_MESSAGE_ID =
3062 D3D11_MESSAGE_ID(1048589i32);
3063pub const D3D11_MESSAGE_ID_CREATERESOURCE_NO_ARRAYS: D3D11_MESSAGE_ID =
3064 D3D11_MESSAGE_ID(1048585i32);
3065pub const D3D11_MESSAGE_ID_CREATERESOURCE_NO_AUTOGEN_FOR_VOLUMES: D3D11_MESSAGE_ID =
3066 D3D11_MESSAGE_ID(1048616i32);
3067pub const D3D11_MESSAGE_ID_CREATERESOURCE_NO_DWORD_INDEX_BUFFER: D3D11_MESSAGE_ID =
3068 D3D11_MESSAGE_ID(1048609i32);
3069pub const D3D11_MESSAGE_ID_CREATERESOURCE_NO_STREAM_OUT: D3D11_MESSAGE_ID =
3070 D3D11_MESSAGE_ID(1048614i32);
3071pub const D3D11_MESSAGE_ID_CREATERESOURCE_NO_TEXTURE_1D: D3D11_MESSAGE_ID =
3072 D3D11_MESSAGE_ID(1048587i32);
3073pub const D3D11_MESSAGE_ID_CREATERESOURCE_NO_VB_AND_IB_BIND: D3D11_MESSAGE_ID =
3074 D3D11_MESSAGE_ID(1048586i32);
3075pub const D3D11_MESSAGE_ID_CREATERESOURCE_ONLY_SINGLE_MIP_LEVEL_DEPTH_STENCIL_SUPPORTED:
3076 D3D11_MESSAGE_ID = D3D11_MESSAGE_ID(1048631i32);
3077pub const D3D11_MESSAGE_ID_CREATERESOURCE_ONLY_VB_IB_FOR_BUFFERS: D3D11_MESSAGE_ID =
3078 D3D11_MESSAGE_ID(1048615i32);
3079pub const D3D11_MESSAGE_ID_CREATERESOURCE_PRESENTATION_PRECLUDES_SHADER_RESOURCE: D3D11_MESSAGE_ID =
3080 D3D11_MESSAGE_ID(1048611i32);
3081pub const D3D11_MESSAGE_ID_CREATESAMPLERSTATE_BORDER_NOT_SUPPORTED: D3D11_MESSAGE_ID =
3082 D3D11_MESSAGE_ID(1048635i32);
3083pub const D3D11_MESSAGE_ID_CREATESAMPLERSTATE_BORDER_OUT_OF_RANGE: D3D11_MESSAGE_ID =
3084 D3D11_MESSAGE_ID(1048581i32);
3085pub const D3D11_MESSAGE_ID_CREATESAMPLERSTATE_EXCESSIVE_ANISOTROPY: D3D11_MESSAGE_ID =
3086 D3D11_MESSAGE_ID(1048580i32);
3087pub const D3D11_MESSAGE_ID_CREATESAMPLERSTATE_INVALIDADDRESSU: D3D11_MESSAGE_ID =
3088 D3D11_MESSAGE_ID(222i32);
3089pub const D3D11_MESSAGE_ID_CREATESAMPLERSTATE_INVALIDADDRESSV: D3D11_MESSAGE_ID =
3090 D3D11_MESSAGE_ID(223i32);
3091pub const D3D11_MESSAGE_ID_CREATESAMPLERSTATE_INVALIDADDRESSW: D3D11_MESSAGE_ID =
3092 D3D11_MESSAGE_ID(224i32);
3093pub const D3D11_MESSAGE_ID_CREATESAMPLERSTATE_INVALIDCOMPARISONFUNC: D3D11_MESSAGE_ID =
3094 D3D11_MESSAGE_ID(227i32);
3095pub const D3D11_MESSAGE_ID_CREATESAMPLERSTATE_INVALIDFILTER: D3D11_MESSAGE_ID =
3096 D3D11_MESSAGE_ID(221i32);
3097pub const D3D11_MESSAGE_ID_CREATESAMPLERSTATE_INVALIDMAXANISOTROPY: D3D11_MESSAGE_ID =
3098 D3D11_MESSAGE_ID(226i32);
3099pub const D3D11_MESSAGE_ID_CREATESAMPLERSTATE_INVALIDMAXLOD: D3D11_MESSAGE_ID =
3100 D3D11_MESSAGE_ID(229i32);
3101pub const D3D11_MESSAGE_ID_CREATESAMPLERSTATE_INVALIDMINLOD: D3D11_MESSAGE_ID =
3102 D3D11_MESSAGE_ID(228i32);
3103pub const D3D11_MESSAGE_ID_CREATESAMPLERSTATE_INVALIDMIPLODBIAS: D3D11_MESSAGE_ID =
3104 D3D11_MESSAGE_ID(225i32);
3105pub const D3D11_MESSAGE_ID_CREATESAMPLERSTATE_MAXLOD_MUST_BE_FLT_MAX: D3D11_MESSAGE_ID =
3106 D3D11_MESSAGE_ID(1048605i32);
3107pub const D3D11_MESSAGE_ID_CREATESAMPLERSTATE_MINLOD_MUST_NOT_BE_FRACTIONAL: D3D11_MESSAGE_ID =
3108 D3D11_MESSAGE_ID(1048604i32);
3109pub const D3D11_MESSAGE_ID_CREATESAMPLERSTATE_NO_COMPARISON_SUPPORT: D3D11_MESSAGE_ID =
3110 D3D11_MESSAGE_ID(1048579i32);
3111pub const D3D11_MESSAGE_ID_CREATESAMPLERSTATE_NO_MIRRORONCE: D3D11_MESSAGE_ID =
3112 D3D11_MESSAGE_ID(1048625i32);
3113pub const D3D11_MESSAGE_ID_CREATESAMPLERSTATE_NULLDESC: D3D11_MESSAGE_ID = D3D11_MESSAGE_ID(231i32);
3114pub const D3D11_MESSAGE_ID_CREATESAMPLERSTATE_TOOMANYOBJECTS: D3D11_MESSAGE_ID =
3115 D3D11_MESSAGE_ID(230i32);
3116pub const D3D11_MESSAGE_ID_CREATESHADERRESESOURCEVIEW_TOOMANYOBJECTS: D3D11_MESSAGE_ID =
3117 D3D11_MESSAGE_ID(2097359i32);
3118pub const D3D11_MESSAGE_ID_CREATESHADERRESOURCEVIEW_AMBIGUOUSVIDEOPLANEINDEX: D3D11_MESSAGE_ID =
3119 D3D11_MESSAGE_ID(3146162i32);
3120pub const D3D11_MESSAGE_ID_CREATESHADERRESOURCEVIEW_CUBES_MUST_HAVE_6_SIDES: D3D11_MESSAGE_ID =
3121 D3D11_MESSAGE_ID(1048607i32);
3122pub const D3D11_MESSAGE_ID_CREATESHADERRESOURCEVIEW_FIRSTARRAYSLICE_MUST_BE_ZERO: D3D11_MESSAGE_ID =
3123 D3D11_MESSAGE_ID(1048606i32);
3124pub const D3D11_MESSAGE_ID_CREATESHADERRESOURCEVIEW_INVALIDARG_RETURN: D3D11_MESSAGE_ID =
3125 D3D11_MESSAGE_ID(131i32);
3126pub const D3D11_MESSAGE_ID_CREATESHADERRESOURCEVIEW_INVALIDDARRAYWITHDECODER: D3D11_MESSAGE_ID =
3127 D3D11_MESSAGE_ID(3145942i32);
3128pub const D3D11_MESSAGE_ID_CREATESHADERRESOURCEVIEW_INVALIDDESC: D3D11_MESSAGE_ID =
3129 D3D11_MESSAGE_ID(126i32);
3130pub const D3D11_MESSAGE_ID_CREATESHADERRESOURCEVIEW_INVALIDDIMENSIONS: D3D11_MESSAGE_ID =
3131 D3D11_MESSAGE_ID(128i32);
3132pub const D3D11_MESSAGE_ID_CREATESHADERRESOURCEVIEW_INVALIDFLAGS: D3D11_MESSAGE_ID =
3133 D3D11_MESSAGE_ID(2097340i32);
3134pub const D3D11_MESSAGE_ID_CREATESHADERRESOURCEVIEW_INVALIDFORMAT: D3D11_MESSAGE_ID =
3135 D3D11_MESSAGE_ID(127i32);
3136pub const D3D11_MESSAGE_ID_CREATESHADERRESOURCEVIEW_INVALIDPLANEINDEX: D3D11_MESSAGE_ID =
3137 D3D11_MESSAGE_ID(3146160i32);
3138pub const D3D11_MESSAGE_ID_CREATESHADERRESOURCEVIEW_INVALIDRESOURCE: D3D11_MESSAGE_ID =
3139 D3D11_MESSAGE_ID(129i32);
3140pub const D3D11_MESSAGE_ID_CREATESHADERRESOURCEVIEW_INVALIDVIDEOPLANEINDEX: D3D11_MESSAGE_ID =
3141 D3D11_MESSAGE_ID(3146161i32);
3142pub const D3D11_MESSAGE_ID_CREATESHADERRESOURCEVIEW_MUST_USE_LOWEST_LOD: D3D11_MESSAGE_ID =
3143 D3D11_MESSAGE_ID(1048603i32);
3144pub const D3D11_MESSAGE_ID_CREATESHADERRESOURCEVIEW_OUTOFMEMORY_RETURN: D3D11_MESSAGE_ID =
3145 D3D11_MESSAGE_ID(132i32);
3146pub const D3D11_MESSAGE_ID_CREATESHADERRESOURCEVIEW_TOOMANYOBJECTS: D3D11_MESSAGE_ID =
3147 D3D11_MESSAGE_ID(130i32);
3148pub const D3D11_MESSAGE_ID_CREATESHADERRESOURCEVIEW_UNRECOGNIZEDFORMAT: D3D11_MESSAGE_ID =
3149 D3D11_MESSAGE_ID(125i32);
3150pub const D3D11_MESSAGE_ID_CREATETEXTURE1D_INVALIDARG_RETURN: D3D11_MESSAGE_ID =
3151 D3D11_MESSAGE_ID(87i32);
3152pub const D3D11_MESSAGE_ID_CREATETEXTURE1D_INVALIDBINDFLAGS: D3D11_MESSAGE_ID =
3153 D3D11_MESSAGE_ID(82i32);
3154pub const D3D11_MESSAGE_ID_CREATETEXTURE1D_INVALIDCPUACCESSFLAGS: D3D11_MESSAGE_ID =
3155 D3D11_MESSAGE_ID(81i32);
3156pub const D3D11_MESSAGE_ID_CREATETEXTURE1D_INVALIDDIMENSIONS: D3D11_MESSAGE_ID =
3157 D3D11_MESSAGE_ID(84i32);
3158pub const D3D11_MESSAGE_ID_CREATETEXTURE1D_INVALIDINITIALDATA: D3D11_MESSAGE_ID =
3159 D3D11_MESSAGE_ID(83i32);
3160pub const D3D11_MESSAGE_ID_CREATETEXTURE1D_INVALIDMIPLEVELS: D3D11_MESSAGE_ID =
3161 D3D11_MESSAGE_ID(85i32);
3162pub const D3D11_MESSAGE_ID_CREATETEXTURE1D_INVALIDMISCFLAGS: D3D11_MESSAGE_ID =
3163 D3D11_MESSAGE_ID(86i32);
3164pub const D3D11_MESSAGE_ID_CREATETEXTURE1D_INVALIDSAMPLES: D3D11_MESSAGE_ID =
3165 D3D11_MESSAGE_ID(76i32);
3166pub const D3D11_MESSAGE_ID_CREATETEXTURE1D_INVALIDUSAGE: D3D11_MESSAGE_ID =
3167 D3D11_MESSAGE_ID(3146121i32);
3168pub const D3D11_MESSAGE_ID_CREATETEXTURE1D_LARGEALLOCATION: D3D11_MESSAGE_ID =
3169 D3D11_MESSAGE_ID(90i32);
3170pub const D3D11_MESSAGE_ID_CREATETEXTURE1D_NULLDESC: D3D11_MESSAGE_ID = D3D11_MESSAGE_ID(89i32);
3171pub const D3D11_MESSAGE_ID_CREATETEXTURE1D_OUTOFMEMORY_RETURN: D3D11_MESSAGE_ID =
3172 D3D11_MESSAGE_ID(88i32);
3173pub const D3D11_MESSAGE_ID_CREATETEXTURE1D_UNRECOGNIZEDBINDFLAGS: D3D11_MESSAGE_ID =
3174 D3D11_MESSAGE_ID(78i32);
3175pub const D3D11_MESSAGE_ID_CREATETEXTURE1D_UNRECOGNIZEDCPUACCESSFLAGS: D3D11_MESSAGE_ID =
3176 D3D11_MESSAGE_ID(79i32);
3177pub const D3D11_MESSAGE_ID_CREATETEXTURE1D_UNRECOGNIZEDFORMAT: D3D11_MESSAGE_ID =
3178 D3D11_MESSAGE_ID(74i32);
3179pub const D3D11_MESSAGE_ID_CREATETEXTURE1D_UNRECOGNIZEDMISCFLAGS: D3D11_MESSAGE_ID =
3180 D3D11_MESSAGE_ID(80i32);
3181pub const D3D11_MESSAGE_ID_CREATETEXTURE1D_UNRECOGNIZEDUSAGE: D3D11_MESSAGE_ID =
3182 D3D11_MESSAGE_ID(77i32);
3183pub const D3D11_MESSAGE_ID_CREATETEXTURE1D_UNSUPPORTEDFORMAT: D3D11_MESSAGE_ID =
3184 D3D11_MESSAGE_ID(75i32);
3185pub const D3D11_MESSAGE_ID_CREATETEXTURE2D_INVALIDARG_RETURN: D3D11_MESSAGE_ID =
3186 D3D11_MESSAGE_ID(104i32);
3187pub const D3D11_MESSAGE_ID_CREATETEXTURE2D_INVALIDBINDFLAGS: D3D11_MESSAGE_ID =
3188 D3D11_MESSAGE_ID(99i32);
3189pub const D3D11_MESSAGE_ID_CREATETEXTURE2D_INVALIDCPUACCESSFLAGS: D3D11_MESSAGE_ID =
3190 D3D11_MESSAGE_ID(98i32);
3191pub const D3D11_MESSAGE_ID_CREATETEXTURE2D_INVALIDDIMENSIONS: D3D11_MESSAGE_ID =
3192 D3D11_MESSAGE_ID(101i32);
3193pub const D3D11_MESSAGE_ID_CREATETEXTURE2D_INVALIDINITIALDATA: D3D11_MESSAGE_ID =
3194 D3D11_MESSAGE_ID(100i32);
3195pub const D3D11_MESSAGE_ID_CREATETEXTURE2D_INVALIDMIPLEVELS: D3D11_MESSAGE_ID =
3196 D3D11_MESSAGE_ID(102i32);
3197pub const D3D11_MESSAGE_ID_CREATETEXTURE2D_INVALIDMISCFLAGS: D3D11_MESSAGE_ID =
3198 D3D11_MESSAGE_ID(103i32);
3199pub const D3D11_MESSAGE_ID_CREATETEXTURE2D_INVALIDSAMPLES: D3D11_MESSAGE_ID =
3200 D3D11_MESSAGE_ID(93i32);
3201pub const D3D11_MESSAGE_ID_CREATETEXTURE2D_INVALIDUSAGE: D3D11_MESSAGE_ID =
3202 D3D11_MESSAGE_ID(3146122i32);
3203pub const D3D11_MESSAGE_ID_CREATETEXTURE2D_LARGEALLOCATION: D3D11_MESSAGE_ID =
3204 D3D11_MESSAGE_ID(107i32);
3205pub const D3D11_MESSAGE_ID_CREATETEXTURE2D_NULLDESC: D3D11_MESSAGE_ID = D3D11_MESSAGE_ID(106i32);
3206pub const D3D11_MESSAGE_ID_CREATETEXTURE2D_OUTOFMEMORY_RETURN: D3D11_MESSAGE_ID =
3207 D3D11_MESSAGE_ID(105i32);
3208pub const D3D11_MESSAGE_ID_CREATETEXTURE2D_UNRECOGNIZEDBINDFLAGS: D3D11_MESSAGE_ID =
3209 D3D11_MESSAGE_ID(95i32);
3210pub const D3D11_MESSAGE_ID_CREATETEXTURE2D_UNRECOGNIZEDCPUACCESSFLAGS: D3D11_MESSAGE_ID =
3211 D3D11_MESSAGE_ID(96i32);
3212pub const D3D11_MESSAGE_ID_CREATETEXTURE2D_UNRECOGNIZEDFORMAT: D3D11_MESSAGE_ID =
3213 D3D11_MESSAGE_ID(91i32);
3214pub const D3D11_MESSAGE_ID_CREATETEXTURE2D_UNRECOGNIZEDMISCFLAGS: D3D11_MESSAGE_ID =
3215 D3D11_MESSAGE_ID(97i32);
3216pub const D3D11_MESSAGE_ID_CREATETEXTURE2D_UNRECOGNIZEDUSAGE: D3D11_MESSAGE_ID =
3217 D3D11_MESSAGE_ID(94i32);
3218pub const D3D11_MESSAGE_ID_CREATETEXTURE2D_UNSUPPORTEDFORMAT: D3D11_MESSAGE_ID =
3219 D3D11_MESSAGE_ID(92i32);
3220pub const D3D11_MESSAGE_ID_CREATETEXTURE3D_INVALIDARG_RETURN: D3D11_MESSAGE_ID =
3221 D3D11_MESSAGE_ID(121i32);
3222pub const D3D11_MESSAGE_ID_CREATETEXTURE3D_INVALIDBINDFLAGS: D3D11_MESSAGE_ID =
3223 D3D11_MESSAGE_ID(116i32);
3224pub const D3D11_MESSAGE_ID_CREATETEXTURE3D_INVALIDCPUACCESSFLAGS: D3D11_MESSAGE_ID =
3225 D3D11_MESSAGE_ID(115i32);
3226pub const D3D11_MESSAGE_ID_CREATETEXTURE3D_INVALIDDIMENSIONS: D3D11_MESSAGE_ID =
3227 D3D11_MESSAGE_ID(118i32);
3228pub const D3D11_MESSAGE_ID_CREATETEXTURE3D_INVALIDINITIALDATA: D3D11_MESSAGE_ID =
3229 D3D11_MESSAGE_ID(117i32);
3230pub const D3D11_MESSAGE_ID_CREATETEXTURE3D_INVALIDMIPLEVELS: D3D11_MESSAGE_ID =
3231 D3D11_MESSAGE_ID(119i32);
3232pub const D3D11_MESSAGE_ID_CREATETEXTURE3D_INVALIDMISCFLAGS: D3D11_MESSAGE_ID =
3233 D3D11_MESSAGE_ID(120i32);
3234pub const D3D11_MESSAGE_ID_CREATETEXTURE3D_INVALIDSAMPLES: D3D11_MESSAGE_ID =
3235 D3D11_MESSAGE_ID(110i32);
3236pub const D3D11_MESSAGE_ID_CREATETEXTURE3D_LARGEALLOCATION: D3D11_MESSAGE_ID =
3237 D3D11_MESSAGE_ID(124i32);
3238pub const D3D11_MESSAGE_ID_CREATETEXTURE3D_NULLDESC: D3D11_MESSAGE_ID = D3D11_MESSAGE_ID(123i32);
3239pub const D3D11_MESSAGE_ID_CREATETEXTURE3D_OUTOFMEMORY_RETURN: D3D11_MESSAGE_ID =
3240 D3D11_MESSAGE_ID(122i32);
3241pub const D3D11_MESSAGE_ID_CREATETEXTURE3D_UNRECOGNIZEDBINDFLAGS: D3D11_MESSAGE_ID =
3242 D3D11_MESSAGE_ID(112i32);
3243pub const D3D11_MESSAGE_ID_CREATETEXTURE3D_UNRECOGNIZEDCPUACCESSFLAGS: D3D11_MESSAGE_ID =
3244 D3D11_MESSAGE_ID(113i32);
3245pub const D3D11_MESSAGE_ID_CREATETEXTURE3D_UNRECOGNIZEDFORMAT: D3D11_MESSAGE_ID =
3246 D3D11_MESSAGE_ID(108i32);
3247pub const D3D11_MESSAGE_ID_CREATETEXTURE3D_UNRECOGNIZEDMISCFLAGS: D3D11_MESSAGE_ID =
3248 D3D11_MESSAGE_ID(114i32);
3249pub const D3D11_MESSAGE_ID_CREATETEXTURE3D_UNRECOGNIZEDUSAGE: D3D11_MESSAGE_ID =
3250 D3D11_MESSAGE_ID(111i32);
3251pub const D3D11_MESSAGE_ID_CREATETEXTURE3D_UNSUPPORTEDFORMAT: D3D11_MESSAGE_ID =
3252 D3D11_MESSAGE_ID(109i32);
3253pub const D3D11_MESSAGE_ID_CREATEUNORDEREDACCESSVIEW_AMBIGUOUSVIDEOPLANEINDEX: D3D11_MESSAGE_ID =
3254 D3D11_MESSAGE_ID(3146168i32);
3255pub const D3D11_MESSAGE_ID_CREATEUNORDEREDACCESSVIEW_INVALIDARG_RETURN: D3D11_MESSAGE_ID =
3256 D3D11_MESSAGE_ID(2097351i32);
3257pub const D3D11_MESSAGE_ID_CREATEUNORDEREDACCESSVIEW_INVALIDDARRAYWITHDECODER: D3D11_MESSAGE_ID =
3258 D3D11_MESSAGE_ID(3145943i32);
3259pub const D3D11_MESSAGE_ID_CREATEUNORDEREDACCESSVIEW_INVALIDDESC: D3D11_MESSAGE_ID =
3260 D3D11_MESSAGE_ID(2097342i32);
3261pub const D3D11_MESSAGE_ID_CREATEUNORDEREDACCESSVIEW_INVALIDDIMENSIONS: D3D11_MESSAGE_ID =
3262 D3D11_MESSAGE_ID(2097344i32);
3263pub const D3D11_MESSAGE_ID_CREATEUNORDEREDACCESSVIEW_INVALIDFLAGS: D3D11_MESSAGE_ID =
3264 D3D11_MESSAGE_ID(2097358i32);
3265pub const D3D11_MESSAGE_ID_CREATEUNORDEREDACCESSVIEW_INVALIDFORMAT: D3D11_MESSAGE_ID =
3266 D3D11_MESSAGE_ID(2097343i32);
3267pub const D3D11_MESSAGE_ID_CREATEUNORDEREDACCESSVIEW_INVALIDPLANEINDEX: D3D11_MESSAGE_ID =
3268 D3D11_MESSAGE_ID(3146166i32);
3269pub const D3D11_MESSAGE_ID_CREATEUNORDEREDACCESSVIEW_INVALIDRESOURCE: D3D11_MESSAGE_ID =
3270 D3D11_MESSAGE_ID(2097341i32);
3271pub const D3D11_MESSAGE_ID_CREATEUNORDEREDACCESSVIEW_INVALIDVIDEOPLANEINDEX: D3D11_MESSAGE_ID =
3272 D3D11_MESSAGE_ID(3146167i32);
3273pub const D3D11_MESSAGE_ID_CREATEUNORDEREDACCESSVIEW_OUTOFMEMORY_RETURN: D3D11_MESSAGE_ID =
3274 D3D11_MESSAGE_ID(2097352i32);
3275pub const D3D11_MESSAGE_ID_CREATEUNORDEREDACCESSVIEW_TOOMANYOBJECTS: D3D11_MESSAGE_ID =
3276 D3D11_MESSAGE_ID(2097353i32);
3277pub const D3D11_MESSAGE_ID_CREATEUNORDEREDACCESSVIEW_UNRECOGNIZEDFORMAT: D3D11_MESSAGE_ID =
3278 D3D11_MESSAGE_ID(2097345i32);
3279pub const D3D11_MESSAGE_ID_CREATEVERTEXSHADER_INVALIDCLASSLINKAGE: D3D11_MESSAGE_ID =
3280 D3D11_MESSAGE_ID(2097154i32);
3281pub const D3D11_MESSAGE_ID_CREATEVERTEXSHADER_INVALIDSHADERBYTECODE: D3D11_MESSAGE_ID =
3282 D3D11_MESSAGE_ID(166i32);
3283pub const D3D11_MESSAGE_ID_CREATEVERTEXSHADER_INVALIDSHADERTYPE: D3D11_MESSAGE_ID =
3284 D3D11_MESSAGE_ID(167i32);
3285pub const D3D11_MESSAGE_ID_CREATEVERTEXSHADER_OUTOFMEMORY: D3D11_MESSAGE_ID =
3286 D3D11_MESSAGE_ID(165i32);
3287pub const D3D11_MESSAGE_ID_CREATEVIDEODECODEROUTPUTVIEW_INVALIDARRAY: D3D11_MESSAGE_ID =
3288 D3D11_MESSAGE_ID(3145915i32);
3289pub const D3D11_MESSAGE_ID_CREATEVIDEODECODEROUTPUTVIEW_INVALIDARRAYSIZE: D3D11_MESSAGE_ID =
3290 D3D11_MESSAGE_ID(3145914i32);
3291pub const D3D11_MESSAGE_ID_CREATEVIDEODECODEROUTPUTVIEW_INVALIDBIND: D3D11_MESSAGE_ID =
3292 D3D11_MESSAGE_ID(3145910i32);
3293pub const D3D11_MESSAGE_ID_CREATEVIDEODECODEROUTPUTVIEW_INVALIDDIMENSION: D3D11_MESSAGE_ID =
3294 D3D11_MESSAGE_ID(3145916i32);
3295pub const D3D11_MESSAGE_ID_CREATEVIDEODECODEROUTPUTVIEW_INVALIDMIP: D3D11_MESSAGE_ID =
3296 D3D11_MESSAGE_ID(3145912i32);
3297pub const D3D11_MESSAGE_ID_CREATEVIDEODECODEROUTPUTVIEW_INVALIDTYPE: D3D11_MESSAGE_ID =
3298 D3D11_MESSAGE_ID(3145909i32);
3299pub const D3D11_MESSAGE_ID_CREATEVIDEODECODEROUTPUTVIEW_NULLPARAM: D3D11_MESSAGE_ID =
3300 D3D11_MESSAGE_ID(3145908i32);
3301pub const D3D11_MESSAGE_ID_CREATEVIDEODECODEROUTPUTVIEW_OUTOFMEMORY_RETURN: D3D11_MESSAGE_ID =
3302 D3D11_MESSAGE_ID(3145907i32);
3303pub const D3D11_MESSAGE_ID_CREATEVIDEODECODEROUTPUTVIEW_UNSUPPORTEDFORMAT: D3D11_MESSAGE_ID =
3304 D3D11_MESSAGE_ID(3145911i32);
3305pub const D3D11_MESSAGE_ID_CREATEVIDEODECODEROUTPUTVIEW_UNSUPPORTEMIP: D3D11_MESSAGE_ID =
3306 D3D11_MESSAGE_ID(3145913i32);
3307pub const D3D11_MESSAGE_ID_CREATEVIDEODECODER_DRIVER_INVALIDBUFFERSIZE: D3D11_MESSAGE_ID =
3308 D3D11_MESSAGE_ID(3145762i32);
3309pub const D3D11_MESSAGE_ID_CREATEVIDEODECODER_DRIVER_INVALIDBUFFERUSAGE: D3D11_MESSAGE_ID =
3310 D3D11_MESSAGE_ID(3145763i32);
3311pub const D3D11_MESSAGE_ID_CREATEVIDEODECODER_INVALIDFORMAT: D3D11_MESSAGE_ID =
3312 D3D11_MESSAGE_ID(3145760i32);
3313pub const D3D11_MESSAGE_ID_CREATEVIDEODECODER_NULLPARAM: D3D11_MESSAGE_ID =
3314 D3D11_MESSAGE_ID(3145759i32);
3315pub const D3D11_MESSAGE_ID_CREATEVIDEODECODER_OUTOFMEMORY_RETURN: D3D11_MESSAGE_ID =
3316 D3D11_MESSAGE_ID(3145758i32);
3317pub const D3D11_MESSAGE_ID_CREATEVIDEODECODER_ZEROWIDTHHEIGHT: D3D11_MESSAGE_ID =
3318 D3D11_MESSAGE_ID(3145761i32);
3319pub const D3D11_MESSAGE_ID_CREATEVIDEOPROCESSORENUMERATOR_INVALIDFRAMEFORMAT: D3D11_MESSAGE_ID =
3320 D3D11_MESSAGE_ID(3145793i32);
3321pub const D3D11_MESSAGE_ID_CREATEVIDEOPROCESSORENUMERATOR_INVALIDINPUTFRAMERATE: D3D11_MESSAGE_ID =
3322 D3D11_MESSAGE_ID(3145795i32);
3323pub const D3D11_MESSAGE_ID_CREATEVIDEOPROCESSORENUMERATOR_INVALIDOUTPUTFRAMERATE: D3D11_MESSAGE_ID =
3324 D3D11_MESSAGE_ID(3145796i32);
3325pub const D3D11_MESSAGE_ID_CREATEVIDEOPROCESSORENUMERATOR_INVALIDUSAGE: D3D11_MESSAGE_ID =
3326 D3D11_MESSAGE_ID(3145794i32);
3327pub const D3D11_MESSAGE_ID_CREATEVIDEOPROCESSORENUMERATOR_INVALIDWIDTHHEIGHT: D3D11_MESSAGE_ID =
3328 D3D11_MESSAGE_ID(3145797i32);
3329pub const D3D11_MESSAGE_ID_CREATEVIDEOPROCESSORENUMERATOR_NULLPARAM: D3D11_MESSAGE_ID =
3330 D3D11_MESSAGE_ID(3145792i32);
3331pub const D3D11_MESSAGE_ID_CREATEVIDEOPROCESSORENUMERATOR_OUTOFMEMORY_RETURN: D3D11_MESSAGE_ID =
3332 D3D11_MESSAGE_ID(3145791i32);
3333pub const D3D11_MESSAGE_ID_CREATEVIDEOPROCESSORINPUTVIEW_INVALIDARRAY: D3D11_MESSAGE_ID =
3334 D3D11_MESSAGE_ID(3145928i32);
3335pub const D3D11_MESSAGE_ID_CREATEVIDEOPROCESSORINPUTVIEW_INVALIDARRAYSIZE: D3D11_MESSAGE_ID =
3336 D3D11_MESSAGE_ID(3145927i32);
3337pub const D3D11_MESSAGE_ID_CREATEVIDEOPROCESSORINPUTVIEW_INVALIDBIND: D3D11_MESSAGE_ID =
3338 D3D11_MESSAGE_ID(3145920i32);
3339pub const D3D11_MESSAGE_ID_CREATEVIDEOPROCESSORINPUTVIEW_INVALIDDIMENSION: D3D11_MESSAGE_ID =
3340 D3D11_MESSAGE_ID(3145929i32);
3341pub const D3D11_MESSAGE_ID_CREATEVIDEOPROCESSORINPUTVIEW_INVALIDFORMAT: D3D11_MESSAGE_ID =
3342 D3D11_MESSAGE_ID(3145923i32);
3343pub const D3D11_MESSAGE_ID_CREATEVIDEOPROCESSORINPUTVIEW_INVALIDFOURCC: D3D11_MESSAGE_ID =
3344 D3D11_MESSAGE_ID(3145924i32);
3345pub const D3D11_MESSAGE_ID_CREATEVIDEOPROCESSORINPUTVIEW_INVALIDMIP: D3D11_MESSAGE_ID =
3346 D3D11_MESSAGE_ID(3145925i32);
3347pub const D3D11_MESSAGE_ID_CREATEVIDEOPROCESSORINPUTVIEW_INVALIDMISC: D3D11_MESSAGE_ID =
3348 D3D11_MESSAGE_ID(3145921i32);
3349pub const D3D11_MESSAGE_ID_CREATEVIDEOPROCESSORINPUTVIEW_INVALIDMSAA: D3D11_MESSAGE_ID =
3350 D3D11_MESSAGE_ID(3146073i32);
3351pub const D3D11_MESSAGE_ID_CREATEVIDEOPROCESSORINPUTVIEW_INVALIDTYPE: D3D11_MESSAGE_ID =
3352 D3D11_MESSAGE_ID(3145919i32);
3353pub const D3D11_MESSAGE_ID_CREATEVIDEOPROCESSORINPUTVIEW_INVALIDUSAGE: D3D11_MESSAGE_ID =
3354 D3D11_MESSAGE_ID(3145922i32);
3355pub const D3D11_MESSAGE_ID_CREATEVIDEOPROCESSORINPUTVIEW_NULLPARAM: D3D11_MESSAGE_ID =
3356 D3D11_MESSAGE_ID(3145918i32);
3357pub const D3D11_MESSAGE_ID_CREATEVIDEOPROCESSORINPUTVIEW_OUTOFMEMORY_RETURN: D3D11_MESSAGE_ID =
3358 D3D11_MESSAGE_ID(3145917i32);
3359pub const D3D11_MESSAGE_ID_CREATEVIDEOPROCESSORINPUTVIEW_UNSUPPORTEDMIP: D3D11_MESSAGE_ID =
3360 D3D11_MESSAGE_ID(3145926i32);
3361pub const D3D11_MESSAGE_ID_CREATEVIDEOPROCESSOROUTPUTVIEW_INVALIDARRAY: D3D11_MESSAGE_ID =
3362 D3D11_MESSAGE_ID(3145938i32);
3363pub const D3D11_MESSAGE_ID_CREATEVIDEOPROCESSOROUTPUTVIEW_INVALIDBIND: D3D11_MESSAGE_ID =
3364 D3D11_MESSAGE_ID(3145933i32);
3365pub const D3D11_MESSAGE_ID_CREATEVIDEOPROCESSOROUTPUTVIEW_INVALIDDIMENSION: D3D11_MESSAGE_ID =
3366 D3D11_MESSAGE_ID(3145939i32);
3367pub const D3D11_MESSAGE_ID_CREATEVIDEOPROCESSOROUTPUTVIEW_INVALIDFORMAT: D3D11_MESSAGE_ID =
3368 D3D11_MESSAGE_ID(3145934i32);
3369pub const D3D11_MESSAGE_ID_CREATEVIDEOPROCESSOROUTPUTVIEW_INVALIDMIP: D3D11_MESSAGE_ID =
3370 D3D11_MESSAGE_ID(3145935i32);
3371pub const D3D11_MESSAGE_ID_CREATEVIDEOPROCESSOROUTPUTVIEW_INVALIDMSAA: D3D11_MESSAGE_ID =
3372 D3D11_MESSAGE_ID(3146074i32);
3373pub const D3D11_MESSAGE_ID_CREATEVIDEOPROCESSOROUTPUTVIEW_INVALIDTYPE: D3D11_MESSAGE_ID =
3374 D3D11_MESSAGE_ID(3145932i32);
3375pub const D3D11_MESSAGE_ID_CREATEVIDEOPROCESSOROUTPUTVIEW_NULLPARAM: D3D11_MESSAGE_ID =
3376 D3D11_MESSAGE_ID(3145931i32);
3377pub const D3D11_MESSAGE_ID_CREATEVIDEOPROCESSOROUTPUTVIEW_OUTOFMEMORY_RETURN: D3D11_MESSAGE_ID =
3378 D3D11_MESSAGE_ID(3145930i32);
3379pub const D3D11_MESSAGE_ID_CREATEVIDEOPROCESSOROUTPUTVIEW_UNSUPPORTEDARRAY: D3D11_MESSAGE_ID =
3380 D3D11_MESSAGE_ID(3145937i32);
3381pub const D3D11_MESSAGE_ID_CREATEVIDEOPROCESSOROUTPUTVIEW_UNSUPPORTEDMIP: D3D11_MESSAGE_ID =
3382 D3D11_MESSAGE_ID(3145936i32);
3383pub const D3D11_MESSAGE_ID_CREATEVIDEOPROCESSOR_NULLPARAM: D3D11_MESSAGE_ID =
3384 D3D11_MESSAGE_ID(3145808i32);
3385pub const D3D11_MESSAGE_ID_CREATEVIDEOPROCESSOR_OUTOFMEMORY_RETURN: D3D11_MESSAGE_ID =
3386 D3D11_MESSAGE_ID(3145807i32);
3387pub const D3D11_MESSAGE_ID_CREATE_AUTHENTICATEDCHANNEL: D3D11_MESSAGE_ID =
3388 D3D11_MESSAGE_ID(3146148i32);
3389pub const D3D11_MESSAGE_ID_CREATE_BLENDSTATE: D3D11_MESSAGE_ID = D3D11_MESSAGE_ID(2097270i32);
3390pub const D3D11_MESSAGE_ID_CREATE_BUFFER: D3D11_MESSAGE_ID = D3D11_MESSAGE_ID(2097228i32);
3391pub const D3D11_MESSAGE_ID_CREATE_CLASSINSTANCE: D3D11_MESSAGE_ID = D3D11_MESSAGE_ID(2097290i32);
3392pub const D3D11_MESSAGE_ID_CREATE_CLASSLINKAGE: D3D11_MESSAGE_ID = D3D11_MESSAGE_ID(2097293i32);
3393pub const D3D11_MESSAGE_ID_CREATE_COMMANDLIST: D3D11_MESSAGE_ID = D3D11_MESSAGE_ID(2097287i32);
3394pub const D3D11_MESSAGE_ID_CREATE_COMPUTESHADER: D3D11_MESSAGE_ID = D3D11_MESSAGE_ID(2097298i32);
3395pub const D3D11_MESSAGE_ID_CREATE_CONTEXT: D3D11_MESSAGE_ID = D3D11_MESSAGE_ID(2097225i32);
3396pub const D3D11_MESSAGE_ID_CREATE_COUNTER: D3D11_MESSAGE_ID = D3D11_MESSAGE_ID(2097285i32);
3397pub const D3D11_MESSAGE_ID_CREATE_CRYPTOSESSION: D3D11_MESSAGE_ID = D3D11_MESSAGE_ID(3146147i32);
3398pub const D3D11_MESSAGE_ID_CREATE_DECODEROUTPUTVIEW: D3D11_MESSAGE_ID =
3399 D3D11_MESSAGE_ID(3145732i32);
3400pub const D3D11_MESSAGE_ID_CREATE_DEPTHSTENCILSTATE: D3D11_MESSAGE_ID =
3401 D3D11_MESSAGE_ID(2097273i32);
3402pub const D3D11_MESSAGE_ID_CREATE_DEPTHSTENCILVIEW: D3D11_MESSAGE_ID = D3D11_MESSAGE_ID(2097246i32);
3403pub const D3D11_MESSAGE_ID_CREATE_DEVICECONTEXTSTATE: D3D11_MESSAGE_ID =
3404 D3D11_MESSAGE_ID(3145735i32);
3405pub const D3D11_MESSAGE_ID_CREATE_DOMAINSHADER: D3D11_MESSAGE_ID = D3D11_MESSAGE_ID(2097255i32);
3406pub const D3D11_MESSAGE_ID_CREATE_FENCE: D3D11_MESSAGE_ID = D3D11_MESSAGE_ID(3146250i32);
3407pub const D3D11_MESSAGE_ID_CREATE_GEOMETRYSHADER: D3D11_MESSAGE_ID = D3D11_MESSAGE_ID(2097258i32);
3408pub const D3D11_MESSAGE_ID_CREATE_HULLSHADER: D3D11_MESSAGE_ID = D3D11_MESSAGE_ID(2097252i32);
3409pub const D3D11_MESSAGE_ID_CREATE_INPUTLAYOUT: D3D11_MESSAGE_ID = D3D11_MESSAGE_ID(2097264i32);
3410pub const D3D11_MESSAGE_ID_CREATE_PIXELSHADER: D3D11_MESSAGE_ID = D3D11_MESSAGE_ID(2097261i32);
3411pub const D3D11_MESSAGE_ID_CREATE_PREDICATE: D3D11_MESSAGE_ID = D3D11_MESSAGE_ID(2097282i32);
3412pub const D3D11_MESSAGE_ID_CREATE_PROCESSORINPUTVIEW: D3D11_MESSAGE_ID =
3413 D3D11_MESSAGE_ID(3145733i32);
3414pub const D3D11_MESSAGE_ID_CREATE_PROCESSOROUTPUTVIEW: D3D11_MESSAGE_ID =
3415 D3D11_MESSAGE_ID(3145734i32);
3416pub const D3D11_MESSAGE_ID_CREATE_QUERY: D3D11_MESSAGE_ID = D3D11_MESSAGE_ID(2097279i32);
3417pub const D3D11_MESSAGE_ID_CREATE_RASTERIZERSTATE: D3D11_MESSAGE_ID = D3D11_MESSAGE_ID(2097276i32);
3418pub const D3D11_MESSAGE_ID_CREATE_RENDERTARGETVIEW: D3D11_MESSAGE_ID = D3D11_MESSAGE_ID(2097243i32);
3419pub const D3D11_MESSAGE_ID_CREATE_SAMPLER: D3D11_MESSAGE_ID = D3D11_MESSAGE_ID(2097267i32);
3420pub const D3D11_MESSAGE_ID_CREATE_SHADERRESOURCEVIEW: D3D11_MESSAGE_ID =
3421 D3D11_MESSAGE_ID(2097240i32);
3422pub const D3D11_MESSAGE_ID_CREATE_SYNCHRONIZEDCHANNEL: D3D11_MESSAGE_ID =
3423 D3D11_MESSAGE_ID(3146253i32);
3424pub const D3D11_MESSAGE_ID_CREATE_TEXTURE1D: D3D11_MESSAGE_ID = D3D11_MESSAGE_ID(2097231i32);
3425pub const D3D11_MESSAGE_ID_CREATE_TEXTURE2D: D3D11_MESSAGE_ID = D3D11_MESSAGE_ID(2097234i32);
3426pub const D3D11_MESSAGE_ID_CREATE_TEXTURE3D: D3D11_MESSAGE_ID = D3D11_MESSAGE_ID(2097237i32);
3427pub const D3D11_MESSAGE_ID_CREATE_TRACKEDWORKLOAD: D3D11_MESSAGE_ID = D3D11_MESSAGE_ID(3146267i32);
3428pub const D3D11_MESSAGE_ID_CREATE_TRACKED_WORKLOAD_INVALID_DEADLINE_TYPE: D3D11_MESSAGE_ID =
3429 D3D11_MESSAGE_ID(3146272i32);
3430pub const D3D11_MESSAGE_ID_CREATE_TRACKED_WORKLOAD_INVALID_ENGINE_TYPE: D3D11_MESSAGE_ID =
3431 D3D11_MESSAGE_ID(3146273i32);
3432pub const D3D11_MESSAGE_ID_CREATE_TRACKED_WORKLOAD_INVALID_MAX_INSTANCES: D3D11_MESSAGE_ID =
3433 D3D11_MESSAGE_ID(3146271i32);
3434pub const D3D11_MESSAGE_ID_CREATE_TRACKED_WORKLOAD_NULLPARAM: D3D11_MESSAGE_ID =
3435 D3D11_MESSAGE_ID(3146270i32);
3436pub const D3D11_MESSAGE_ID_CREATE_UNORDEREDACCESSVIEW: D3D11_MESSAGE_ID =
3437 D3D11_MESSAGE_ID(2097301i32);
3438pub const D3D11_MESSAGE_ID_CREATE_VERTEXSHADER: D3D11_MESSAGE_ID = D3D11_MESSAGE_ID(2097249i32);
3439pub const D3D11_MESSAGE_ID_CREATE_VIDEODECODER: D3D11_MESSAGE_ID = D3D11_MESSAGE_ID(3145729i32);
3440pub const D3D11_MESSAGE_ID_CREATE_VIDEOPROCESSOR: D3D11_MESSAGE_ID = D3D11_MESSAGE_ID(3145731i32);
3441pub const D3D11_MESSAGE_ID_CREATE_VIDEOPROCESSORENUM: D3D11_MESSAGE_ID =
3442 D3D11_MESSAGE_ID(3145730i32);
3443pub const D3D11_MESSAGE_ID_CSSETCONSTANTBUFFERS_INVALIDBUFFER: D3D11_MESSAGE_ID =
3444 D3D11_MESSAGE_ID(2097326i32);
3445pub const D3D11_MESSAGE_ID_CSSETCONSTANTBUFFERS_INVALIDBUFFEROFFSETORCOUNT: D3D11_MESSAGE_ID =
3446 D3D11_MESSAGE_ID(3146021i32);
3447pub const D3D11_MESSAGE_ID_CSSETCONSTANTBUFFERS_UNBINDDELETINGOBJECT: D3D11_MESSAGE_ID =
3448 D3D11_MESSAGE_ID(2097319i32);
3449pub const D3D11_MESSAGE_ID_CSSETSAMPLERS_UNBINDDELETINGOBJECT: D3D11_MESSAGE_ID =
3450 D3D11_MESSAGE_ID(2097415i32);
3451pub const D3D11_MESSAGE_ID_CSSETSHADERRESOURCES_UNBINDDELETINGOBJECT: D3D11_MESSAGE_ID =
3452 D3D11_MESSAGE_ID(2097318i32);
3453pub const D3D11_MESSAGE_ID_CSSETSHADER_UNBINDDELETINGOBJECT: D3D11_MESSAGE_ID =
3454 D3D11_MESSAGE_ID(2097418i32);
3455pub const D3D11_MESSAGE_ID_CSSETUNORDEREDACCESSVIEWS_UNBINDDELETINGOBJECT: D3D11_MESSAGE_ID =
3456 D3D11_MESSAGE_ID(2097349i32);
3457pub const D3D11_MESSAGE_ID_D3D10L9_MESSAGES_END: D3D11_MESSAGE_ID = D3D11_MESSAGE_ID(1048638i32);
3458pub const D3D11_MESSAGE_ID_D3D10L9_MESSAGES_START: D3D11_MESSAGE_ID = D3D11_MESSAGE_ID(1048576i32);
3459pub const D3D11_MESSAGE_ID_D3D10_MESSAGES_END: D3D11_MESSAGE_ID = D3D11_MESSAGE_ID(443i32);
3460pub const D3D11_MESSAGE_ID_D3D11_1_MESSAGES_END: D3D11_MESSAGE_ID = D3D11_MESSAGE_ID(3146118i32);
3461pub const D3D11_MESSAGE_ID_D3D11_1_MESSAGES_START: D3D11_MESSAGE_ID = D3D11_MESSAGE_ID(3145728i32);
3462pub const D3D11_MESSAGE_ID_D3D11_2_MESSAGES_END: D3D11_MESSAGE_ID = D3D11_MESSAGE_ID(3146153i32);
3463pub const D3D11_MESSAGE_ID_D3D11_2_MESSAGES_START: D3D11_MESSAGE_ID = D3D11_MESSAGE_ID(3146119i32);
3464pub const D3D11_MESSAGE_ID_D3D11_3_MESSAGES_END: D3D11_MESSAGE_ID = D3D11_MESSAGE_ID(3146257i32);
3465pub const D3D11_MESSAGE_ID_D3D11_3_MESSAGES_START: D3D11_MESSAGE_ID = D3D11_MESSAGE_ID(3146154i32);
3466pub const D3D11_MESSAGE_ID_D3D11_5_MESSAGES_END: D3D11_MESSAGE_ID = D3D11_MESSAGE_ID(3146284i32);
3467pub const D3D11_MESSAGE_ID_D3D11_5_MESSAGES_START: D3D11_MESSAGE_ID = D3D11_MESSAGE_ID(3146258i32);
3468pub const D3D11_MESSAGE_ID_D3D11_MESSAGES_END: D3D11_MESSAGE_ID = D3D11_MESSAGE_ID(2097424i32);
3469pub const D3D11_MESSAGE_ID_D3D11_MESSAGES_START: D3D11_MESSAGE_ID = D3D11_MESSAGE_ID(2097152i32);
3470pub const D3D11_MESSAGE_ID_DECODERBEGINFRAME_HAZARD: D3D11_MESSAGE_ID =
3471 D3D11_MESSAGE_ID(3145785i32);
3472pub const D3D11_MESSAGE_ID_DECODERBEGINFRAME_INVALID_HISTOGRAM_BUFFER_MISC_FLAGS: D3D11_MESSAGE_ID =
3473 D3D11_MESSAGE_ID(3146265i32);
3474pub const D3D11_MESSAGE_ID_DECODERBEGINFRAME_INVALID_HISTOGRAM_BUFFER_OFFSET: D3D11_MESSAGE_ID =
3475 D3D11_MESSAGE_ID(3146266i32);
3476pub const D3D11_MESSAGE_ID_DECODERBEGINFRAME_INVALID_HISTOGRAM_BUFFER_SIZE: D3D11_MESSAGE_ID =
3477 D3D11_MESSAGE_ID(3146263i32);
3478pub const D3D11_MESSAGE_ID_DECODERBEGINFRAME_INVALID_HISTOGRAM_BUFFER_USAGE: D3D11_MESSAGE_ID =
3479 D3D11_MESSAGE_ID(3146264i32);
3480pub const D3D11_MESSAGE_ID_DECODERBEGINFRAME_INVALID_HISTOGRAM_COMPONENT: D3D11_MESSAGE_ID =
3481 D3D11_MESSAGE_ID(3146262i32);
3482pub const D3D11_MESSAGE_ID_DECODERBEGINFRAME_INVALID_HISTOGRAM_COMPONENT_COUNT: D3D11_MESSAGE_ID =
3483 D3D11_MESSAGE_ID(3146261i32);
3484pub const D3D11_MESSAGE_ID_DECODERBEGINFRAME_NULLPARAM: D3D11_MESSAGE_ID =
3485 D3D11_MESSAGE_ID(3145784i32);
3486pub const D3D11_MESSAGE_ID_DECODERENDFRAME_NULLPARAM: D3D11_MESSAGE_ID =
3487 D3D11_MESSAGE_ID(3145786i32);
3488pub const D3D11_MESSAGE_ID_DECODEREXTENSION_INVALIDRESOURCE: D3D11_MESSAGE_ID =
3489 D3D11_MESSAGE_ID(3145790i32);
3490pub const D3D11_MESSAGE_ID_DECODEREXTENSION_NULLPARAM: D3D11_MESSAGE_ID =
3491 D3D11_MESSAGE_ID(3145789i32);
3492pub const D3D11_MESSAGE_ID_DECRYPTIONBLT_DST_MAPPED: D3D11_MESSAGE_ID =
3493 D3D11_MESSAGE_ID(3145983i32);
3494pub const D3D11_MESSAGE_ID_DECRYPTIONBLT_DST_MULTISAMPLED: D3D11_MESSAGE_ID =
3495 D3D11_MESSAGE_ID(3145979i32);
3496pub const D3D11_MESSAGE_ID_DECRYPTIONBLT_DST_NOT_RENDER_TARGET: D3D11_MESSAGE_ID =
3497 D3D11_MESSAGE_ID(3145981i32);
3498pub const D3D11_MESSAGE_ID_DECRYPTIONBLT_DST_OFFERED: D3D11_MESSAGE_ID =
3499 D3D11_MESSAGE_ID(3145985i32);
3500pub const D3D11_MESSAGE_ID_DECRYPTIONBLT_DST_WRONGDEVICE: D3D11_MESSAGE_ID =
3501 D3D11_MESSAGE_ID(3145976i32);
3502pub const D3D11_MESSAGE_ID_DECRYPTIONBLT_FORMAT_MISMATCH: D3D11_MESSAGE_ID =
3503 D3D11_MESSAGE_ID(3145977i32);
3504pub const D3D11_MESSAGE_ID_DECRYPTIONBLT_NULLPARAM: D3D11_MESSAGE_ID = D3D11_MESSAGE_ID(3145974i32);
3505pub const D3D11_MESSAGE_ID_DECRYPTIONBLT_SIZE_MISMATCH: D3D11_MESSAGE_ID =
3506 D3D11_MESSAGE_ID(3145978i32);
3507pub const D3D11_MESSAGE_ID_DECRYPTIONBLT_SRC_CONTENT_UNDEFINED: D3D11_MESSAGE_ID =
3508 D3D11_MESSAGE_ID(3145986i32);
3509pub const D3D11_MESSAGE_ID_DECRYPTIONBLT_SRC_MAPPED: D3D11_MESSAGE_ID =
3510 D3D11_MESSAGE_ID(3145982i32);
3511pub const D3D11_MESSAGE_ID_DECRYPTIONBLT_SRC_NOT_STAGING: D3D11_MESSAGE_ID =
3512 D3D11_MESSAGE_ID(3145980i32);
3513pub const D3D11_MESSAGE_ID_DECRYPTIONBLT_SRC_OFFERED: D3D11_MESSAGE_ID =
3514 D3D11_MESSAGE_ID(3145984i32);
3515pub const D3D11_MESSAGE_ID_DECRYPTIONBLT_SRC_WRONGDEVICE: D3D11_MESSAGE_ID =
3516 D3D11_MESSAGE_ID(3145975i32);
3517pub const D3D11_MESSAGE_ID_DECRYPTIONBLT_UNSUPPORTED: D3D11_MESSAGE_ID =
3518 D3D11_MESSAGE_ID(3145973i32);
3519pub const D3D11_MESSAGE_ID_DEFERRED_CONTEXT_REMOVAL_PROCESS_AT_FAULT: D3D11_MESSAGE_ID =
3520 D3D11_MESSAGE_ID(2097206i32);
3521pub const D3D11_MESSAGE_ID_DESTROY_AUTHENTICATEDCHANNEL: D3D11_MESSAGE_ID =
3522 D3D11_MESSAGE_ID(3146152i32);
3523pub const D3D11_MESSAGE_ID_DESTROY_BLENDSTATE: D3D11_MESSAGE_ID = D3D11_MESSAGE_ID(2097272i32);
3524pub const D3D11_MESSAGE_ID_DESTROY_BUFFER: D3D11_MESSAGE_ID = D3D11_MESSAGE_ID(2097230i32);
3525pub const D3D11_MESSAGE_ID_DESTROY_CLASSINSTANCE: D3D11_MESSAGE_ID = D3D11_MESSAGE_ID(2097292i32);
3526pub const D3D11_MESSAGE_ID_DESTROY_CLASSLINKAGE: D3D11_MESSAGE_ID = D3D11_MESSAGE_ID(2097295i32);
3527pub const D3D11_MESSAGE_ID_DESTROY_COMMANDLIST: D3D11_MESSAGE_ID = D3D11_MESSAGE_ID(2097289i32);
3528pub const D3D11_MESSAGE_ID_DESTROY_COMPUTESHADER: D3D11_MESSAGE_ID = D3D11_MESSAGE_ID(2097300i32);
3529pub const D3D11_MESSAGE_ID_DESTROY_CONTEXT: D3D11_MESSAGE_ID = D3D11_MESSAGE_ID(2097227i32);
3530pub const D3D11_MESSAGE_ID_DESTROY_COUNTER: D3D11_MESSAGE_ID = D3D11_MESSAGE_ID(2097286i32);
3531pub const D3D11_MESSAGE_ID_DESTROY_CRYPTOSESSION: D3D11_MESSAGE_ID = D3D11_MESSAGE_ID(3146151i32);
3532pub const D3D11_MESSAGE_ID_DESTROY_DECODEROUTPUTVIEW: D3D11_MESSAGE_ID =
3533 D3D11_MESSAGE_ID(3145746i32);
3534pub const D3D11_MESSAGE_ID_DESTROY_DEPTHSTENCILSTATE: D3D11_MESSAGE_ID =
3535 D3D11_MESSAGE_ID(2097275i32);
3536pub const D3D11_MESSAGE_ID_DESTROY_DEPTHSTENCILVIEW: D3D11_MESSAGE_ID =
3537 D3D11_MESSAGE_ID(2097248i32);
3538pub const D3D11_MESSAGE_ID_DESTROY_DEVICECONTEXTSTATE: D3D11_MESSAGE_ID =
3539 D3D11_MESSAGE_ID(3145749i32);
3540pub const D3D11_MESSAGE_ID_DESTROY_DOMAINSHADER: D3D11_MESSAGE_ID = D3D11_MESSAGE_ID(2097257i32);
3541pub const D3D11_MESSAGE_ID_DESTROY_FENCE: D3D11_MESSAGE_ID = D3D11_MESSAGE_ID(3146252i32);
3542pub const D3D11_MESSAGE_ID_DESTROY_GEOMETRYSHADER: D3D11_MESSAGE_ID = D3D11_MESSAGE_ID(2097260i32);
3543pub const D3D11_MESSAGE_ID_DESTROY_HULLSHADER: D3D11_MESSAGE_ID = D3D11_MESSAGE_ID(2097254i32);
3544pub const D3D11_MESSAGE_ID_DESTROY_INPUTLAYOUT: D3D11_MESSAGE_ID = D3D11_MESSAGE_ID(2097266i32);
3545pub const D3D11_MESSAGE_ID_DESTROY_PIXELSHADER: D3D11_MESSAGE_ID = D3D11_MESSAGE_ID(2097263i32);
3546pub const D3D11_MESSAGE_ID_DESTROY_PREDICATE: D3D11_MESSAGE_ID = D3D11_MESSAGE_ID(2097284i32);
3547pub const D3D11_MESSAGE_ID_DESTROY_PROCESSORINPUTVIEW: D3D11_MESSAGE_ID =
3548 D3D11_MESSAGE_ID(3145747i32);
3549pub const D3D11_MESSAGE_ID_DESTROY_PROCESSOROUTPUTVIEW: D3D11_MESSAGE_ID =
3550 D3D11_MESSAGE_ID(3145748i32);
3551pub const D3D11_MESSAGE_ID_DESTROY_QUERY: D3D11_MESSAGE_ID = D3D11_MESSAGE_ID(2097281i32);
3552pub const D3D11_MESSAGE_ID_DESTROY_RASTERIZERSTATE: D3D11_MESSAGE_ID = D3D11_MESSAGE_ID(2097278i32);
3553pub const D3D11_MESSAGE_ID_DESTROY_RENDERTARGETVIEW: D3D11_MESSAGE_ID =
3554 D3D11_MESSAGE_ID(2097245i32);
3555pub const D3D11_MESSAGE_ID_DESTROY_SAMPLER: D3D11_MESSAGE_ID = D3D11_MESSAGE_ID(2097269i32);
3556pub const D3D11_MESSAGE_ID_DESTROY_SHADERRESOURCEVIEW: D3D11_MESSAGE_ID =
3557 D3D11_MESSAGE_ID(2097242i32);
3558pub const D3D11_MESSAGE_ID_DESTROY_SYNCHRONIZEDCHANNEL: D3D11_MESSAGE_ID =
3559 D3D11_MESSAGE_ID(3146255i32);
3560pub const D3D11_MESSAGE_ID_DESTROY_TEXTURE1D: D3D11_MESSAGE_ID = D3D11_MESSAGE_ID(2097233i32);
3561pub const D3D11_MESSAGE_ID_DESTROY_TEXTURE2D: D3D11_MESSAGE_ID = D3D11_MESSAGE_ID(2097236i32);
3562pub const D3D11_MESSAGE_ID_DESTROY_TEXTURE3D: D3D11_MESSAGE_ID = D3D11_MESSAGE_ID(2097239i32);
3563pub const D3D11_MESSAGE_ID_DESTROY_TRACKEDWORKLOAD: D3D11_MESSAGE_ID = D3D11_MESSAGE_ID(3146269i32);
3564pub const D3D11_MESSAGE_ID_DESTROY_UNORDEREDACCESSVIEW: D3D11_MESSAGE_ID =
3565 D3D11_MESSAGE_ID(2097303i32);
3566pub const D3D11_MESSAGE_ID_DESTROY_VERTEXSHADER: D3D11_MESSAGE_ID = D3D11_MESSAGE_ID(2097251i32);
3567pub const D3D11_MESSAGE_ID_DESTROY_VIDEODECODER: D3D11_MESSAGE_ID = D3D11_MESSAGE_ID(3145743i32);
3568pub const D3D11_MESSAGE_ID_DESTROY_VIDEOPROCESSOR: D3D11_MESSAGE_ID = D3D11_MESSAGE_ID(3145745i32);
3569pub const D3D11_MESSAGE_ID_DESTROY_VIDEOPROCESSORENUM: D3D11_MESSAGE_ID =
3570 D3D11_MESSAGE_ID(3145744i32);
3571pub const D3D11_MESSAGE_ID_DEVICE_CHECKFEATURESUPPORT_INVALIDARG_RETURN: D3D11_MESSAGE_ID =
3572 D3D11_MESSAGE_ID(2097315i32);
3573pub const D3D11_MESSAGE_ID_DEVICE_CHECKFEATURESUPPORT_MISMATCHED_DATA_SIZE: D3D11_MESSAGE_ID =
3574 D3D11_MESSAGE_ID(2097314i32);
3575pub const D3D11_MESSAGE_ID_DEVICE_CHECKFEATURESUPPORT_UNRECOGNIZED_FEATURE: D3D11_MESSAGE_ID =
3576 D3D11_MESSAGE_ID(2097313i32);
3577pub const D3D11_MESSAGE_ID_DEVICE_CLEARVIEW_EMPTYRECT: D3D11_MESSAGE_ID =
3578 D3D11_MESSAGE_ID(3146076i32);
3579pub const D3D11_MESSAGE_ID_DEVICE_CLEARVIEW_INVALIDRECT: D3D11_MESSAGE_ID =
3580 D3D11_MESSAGE_ID(3146066i32);
3581pub const D3D11_MESSAGE_ID_DEVICE_CLEARVIEW_INVALIDSOURCERECT: D3D11_MESSAGE_ID =
3582 D3D11_MESSAGE_ID(3146075i32);
3583pub const D3D11_MESSAGE_ID_DEVICE_CLEARVIEW_INVALIDVIEW: D3D11_MESSAGE_ID =
3584 D3D11_MESSAGE_ID(3146035i32);
3585pub const D3D11_MESSAGE_ID_DEVICE_CLEARVIEW_NOTSUPPORTED: D3D11_MESSAGE_ID =
3586 D3D11_MESSAGE_ID(3146062i32);
3587pub const D3D11_MESSAGE_ID_DEVICE_CREATECOMPUTESHADER_DOUBLEEXTENSIONSNOTSUPPORTED:
3588 D3D11_MESSAGE_ID = D3D11_MESSAGE_ID(3146048i32);
3589pub const D3D11_MESSAGE_ID_DEVICE_CREATECOMPUTESHADER_DOUBLEFLOATOPSNOTSUPPORTED: D3D11_MESSAGE_ID =
3590 D3D11_MESSAGE_ID(2097338i32);
3591pub const D3D11_MESSAGE_ID_DEVICE_CREATECOMPUTESHADER_SHADEREXTENSIONSNOTSUPPORTED:
3592 D3D11_MESSAGE_ID = D3D11_MESSAGE_ID(3146049i32);
3593pub const D3D11_MESSAGE_ID_DEVICE_CREATECOMPUTESHADER_UAVSNOTSUPPORTED: D3D11_MESSAGE_ID =
3594 D3D11_MESSAGE_ID(3146059i32);
3595pub const D3D11_MESSAGE_ID_DEVICE_CREATEDOMAINSHADER_DOUBLEEXTENSIONSNOTSUPPORTED:
3596 D3D11_MESSAGE_ID = D3D11_MESSAGE_ID(3146040i32);
3597pub const D3D11_MESSAGE_ID_DEVICE_CREATEDOMAINSHADER_DOUBLEFLOATOPSNOTSUPPORTED: D3D11_MESSAGE_ID =
3598 D3D11_MESSAGE_ID(2097334i32);
3599pub const D3D11_MESSAGE_ID_DEVICE_CREATEDOMAINSHADER_SHADEREXTENSIONSNOTSUPPORTED:
3600 D3D11_MESSAGE_ID = D3D11_MESSAGE_ID(3146041i32);
3601pub const D3D11_MESSAGE_ID_DEVICE_CREATEDOMAINSHADER_UAVSNOTSUPPORTED: D3D11_MESSAGE_ID =
3602 D3D11_MESSAGE_ID(3146055i32);
3603pub const D3D11_MESSAGE_ID_DEVICE_CREATEGEOMETRYSHADERWITHSTREAMOUTPUT_DOUBLEEXTENSIONSNOTSUPPORTED: D3D11_MESSAGE_ID = D3D11_MESSAGE_ID(3146044i32);
3604pub const D3D11_MESSAGE_ID_DEVICE_CREATEGEOMETRYSHADERWITHSTREAMOUTPUT_DOUBLEFLOATOPSNOTSUPPORTED: D3D11_MESSAGE_ID = D3D11_MESSAGE_ID(2097336i32);
3605pub const D3D11_MESSAGE_ID_DEVICE_CREATEGEOMETRYSHADERWITHSTREAMOUTPUT_SHADEREXTENSIONSNOTSUPPORTED: D3D11_MESSAGE_ID = D3D11_MESSAGE_ID(3146045i32);
3606pub const D3D11_MESSAGE_ID_DEVICE_CREATEGEOMETRYSHADERWITHSTREAMOUTPUT_UAVSNOTSUPPORTED:
3607 D3D11_MESSAGE_ID = D3D11_MESSAGE_ID(3146057i32);
3608pub const D3D11_MESSAGE_ID_DEVICE_CREATEGEOMETRYSHADER_DOUBLEEXTENSIONSNOTSUPPORTED:
3609 D3D11_MESSAGE_ID = D3D11_MESSAGE_ID(3146042i32);
3610pub const D3D11_MESSAGE_ID_DEVICE_CREATEGEOMETRYSHADER_DOUBLEFLOATOPSNOTSUPPORTED:
3611 D3D11_MESSAGE_ID = D3D11_MESSAGE_ID(2097335i32);
3612pub const D3D11_MESSAGE_ID_DEVICE_CREATEGEOMETRYSHADER_SHADEREXTENSIONSNOTSUPPORTED:
3613 D3D11_MESSAGE_ID = D3D11_MESSAGE_ID(3146043i32);
3614pub const D3D11_MESSAGE_ID_DEVICE_CREATEGEOMETRYSHADER_UAVSNOTSUPPORTED: D3D11_MESSAGE_ID =
3615 D3D11_MESSAGE_ID(3146056i32);
3616pub const D3D11_MESSAGE_ID_DEVICE_CREATEHULLSHADER_DOUBLEEXTENSIONSNOTSUPPORTED: D3D11_MESSAGE_ID =
3617 D3D11_MESSAGE_ID(3146038i32);
3618pub const D3D11_MESSAGE_ID_DEVICE_CREATEHULLSHADER_DOUBLEFLOATOPSNOTSUPPORTED: D3D11_MESSAGE_ID =
3619 D3D11_MESSAGE_ID(2097333i32);
3620pub const D3D11_MESSAGE_ID_DEVICE_CREATEHULLSHADER_SHADEREXTENSIONSNOTSUPPORTED: D3D11_MESSAGE_ID =
3621 D3D11_MESSAGE_ID(3146039i32);
3622pub const D3D11_MESSAGE_ID_DEVICE_CREATEHULLSHADER_UAVSNOTSUPPORTED: D3D11_MESSAGE_ID =
3623 D3D11_MESSAGE_ID(3146054i32);
3624pub const D3D11_MESSAGE_ID_DEVICE_CREATEPIXELSHADER_DOUBLEEXTENSIONSNOTSUPPORTED: D3D11_MESSAGE_ID =
3625 D3D11_MESSAGE_ID(3146046i32);
3626pub const D3D11_MESSAGE_ID_DEVICE_CREATEPIXELSHADER_DOUBLEFLOATOPSNOTSUPPORTED: D3D11_MESSAGE_ID =
3627 D3D11_MESSAGE_ID(2097337i32);
3628pub const D3D11_MESSAGE_ID_DEVICE_CREATEPIXELSHADER_SHADEREXTENSIONSNOTSUPPORTED: D3D11_MESSAGE_ID =
3629 D3D11_MESSAGE_ID(3146047i32);
3630pub const D3D11_MESSAGE_ID_DEVICE_CREATEPIXELSHADER_UAVSNOTSUPPORTED: D3D11_MESSAGE_ID =
3631 D3D11_MESSAGE_ID(3146058i32);
3632pub const D3D11_MESSAGE_ID_DEVICE_CREATESHADER_CLASSLINKAGE_FULL: D3D11_MESSAGE_ID =
3633 D3D11_MESSAGE_ID(2097312i32);
3634pub const D3D11_MESSAGE_ID_DEVICE_CREATEVERTEXSHADER_DOUBLEEXTENSIONSNOTSUPPORTED:
3635 D3D11_MESSAGE_ID = D3D11_MESSAGE_ID(3146036i32);
3636pub const D3D11_MESSAGE_ID_DEVICE_CREATEVERTEXSHADER_DOUBLEFLOATOPSNOTSUPPORTED: D3D11_MESSAGE_ID =
3637 D3D11_MESSAGE_ID(2097332i32);
3638pub const D3D11_MESSAGE_ID_DEVICE_CREATEVERTEXSHADER_SHADEREXTENSIONSNOTSUPPORTED:
3639 D3D11_MESSAGE_ID = D3D11_MESSAGE_ID(3146037i32);
3640pub const D3D11_MESSAGE_ID_DEVICE_CREATEVERTEXSHADER_UAVSNOTSUPPORTED: D3D11_MESSAGE_ID =
3641 D3D11_MESSAGE_ID(3146053i32);
3642pub const D3D11_MESSAGE_ID_DEVICE_CSGETCONSTANTBUFFERS_BUFFERS_EMPTY: D3D11_MESSAGE_ID =
3643 D3D11_MESSAGE_ID(2097330i32);
3644pub const D3D11_MESSAGE_ID_DEVICE_CSGETSAMPLERS_SAMPLERS_EMPTY: D3D11_MESSAGE_ID =
3645 D3D11_MESSAGE_ID(2097331i32);
3646pub const D3D11_MESSAGE_ID_DEVICE_CSGETSHADERRESOURCES_VIEWS_EMPTY: D3D11_MESSAGE_ID =
3647 D3D11_MESSAGE_ID(2097329i32);
3648pub const D3D11_MESSAGE_ID_DEVICE_CSGETUNORDEREDACCESSS_VIEWS_EMPTY: D3D11_MESSAGE_ID =
3649 D3D11_MESSAGE_ID(2097357i32);
3650pub const D3D11_MESSAGE_ID_DEVICE_CSSETCONSTANTBUFFERS_BUFFERS_EMPTY: D3D11_MESSAGE_ID =
3651 D3D11_MESSAGE_ID(2097327i32);
3652pub const D3D11_MESSAGE_ID_DEVICE_CSSETCONSTANTBUFFERS_HAZARD: D3D11_MESSAGE_ID =
3653 D3D11_MESSAGE_ID(2097317i32);
3654pub const D3D11_MESSAGE_ID_DEVICE_CSSETSAMPLERS_SAMPLERS_EMPTY: D3D11_MESSAGE_ID =
3655 D3D11_MESSAGE_ID(2097328i32);
3656pub const D3D11_MESSAGE_ID_DEVICE_CSSETSHADERRESOURCES_HAZARD: D3D11_MESSAGE_ID =
3657 D3D11_MESSAGE_ID(2097316i32);
3658pub const D3D11_MESSAGE_ID_DEVICE_CSSETSHADERRESOURCES_VIEWS_EMPTY: D3D11_MESSAGE_ID =
3659 D3D11_MESSAGE_ID(2097325i32);
3660pub const D3D11_MESSAGE_ID_DEVICE_CSSETUNORDEREDACCESSS_VIEWS_EMPTY: D3D11_MESSAGE_ID =
3661 D3D11_MESSAGE_ID(2097356i32);
3662pub const D3D11_MESSAGE_ID_DEVICE_CSSETUNORDEREDACCESSVIEWS_HAZARD: D3D11_MESSAGE_ID =
3663 D3D11_MESSAGE_ID(2097354i32);
3664pub const D3D11_MESSAGE_ID_DEVICE_CSSETUNORDEREDACCESSVIEWS_INVALIDOFFSET: D3D11_MESSAGE_ID =
3665 D3D11_MESSAGE_ID(2097403i32);
3666pub const D3D11_MESSAGE_ID_DEVICE_CSSETUNORDEREDACCESSVIEWS_INVALIDVIEW: D3D11_MESSAGE_ID =
3667 D3D11_MESSAGE_ID(2097402i32);
3668pub const D3D11_MESSAGE_ID_DEVICE_CSSETUNORDEREDACCESSVIEWS_TOOMANYVIEWS: D3D11_MESSAGE_ID =
3669 D3D11_MESSAGE_ID(2097404i32);
3670pub const D3D11_MESSAGE_ID_DEVICE_DISCARDVIEW_INVALIDVIEW: D3D11_MESSAGE_ID =
3671 D3D11_MESSAGE_ID(3145754i32);
3672pub const D3D11_MESSAGE_ID_DEVICE_DISPATCHINDIRECT_INVALID_ARG_BUFFER: D3D11_MESSAGE_ID =
3673 D3D11_MESSAGE_ID(2097360i32);
3674pub const D3D11_MESSAGE_ID_DEVICE_DISPATCHINDIRECT_OFFSET_OVERFLOW: D3D11_MESSAGE_ID =
3675 D3D11_MESSAGE_ID(2097362i32);
3676pub const D3D11_MESSAGE_ID_DEVICE_DISPATCHINDIRECT_OFFSET_UNALIGNED: D3D11_MESSAGE_ID =
3677 D3D11_MESSAGE_ID(2097361i32);
3678pub const D3D11_MESSAGE_ID_DEVICE_DISPATCHINDIRECT_UNSUPPORTED: D3D11_MESSAGE_ID =
3679 D3D11_MESSAGE_ID(2097396i32);
3680pub const D3D11_MESSAGE_ID_DEVICE_DISPATCH_BOUND_RESOURCE_MAPPED: D3D11_MESSAGE_ID =
3681 D3D11_MESSAGE_ID(2097389i32);
3682pub const D3D11_MESSAGE_ID_DEVICE_DISPATCH_THREADGROUPCOUNT_OVERFLOW: D3D11_MESSAGE_ID =
3683 D3D11_MESSAGE_ID(2097390i32);
3684pub const D3D11_MESSAGE_ID_DEVICE_DISPATCH_THREADGROUPCOUNT_ZERO: D3D11_MESSAGE_ID =
3685 D3D11_MESSAGE_ID(2097391i32);
3686pub const D3D11_MESSAGE_ID_DEVICE_DISPATCH_UNSUPPORTED: D3D11_MESSAGE_ID =
3687 D3D11_MESSAGE_ID(2097395i32);
3688pub const D3D11_MESSAGE_ID_DEVICE_DRAWINDEXEDINSTANCED_INDEXPOS_OVERFLOW: D3D11_MESSAGE_ID =
3689 D3D11_MESSAGE_ID(340i32);
3690pub const D3D11_MESSAGE_ID_DEVICE_DRAWINDEXEDINSTANCED_INSTANCEPOS_OVERFLOW: D3D11_MESSAGE_ID =
3691 D3D11_MESSAGE_ID(339i32);
3692pub const D3D11_MESSAGE_ID_DEVICE_DRAWINDEXED_INDEXPOS_OVERFLOW: D3D11_MESSAGE_ID =
3693 D3D11_MESSAGE_ID(336i32);
3694pub const D3D11_MESSAGE_ID_DEVICE_DRAWINDIRECT_INVALID_ARG_BUFFER: D3D11_MESSAGE_ID =
3695 D3D11_MESSAGE_ID(2097207i32);
3696pub const D3D11_MESSAGE_ID_DEVICE_DRAWINDIRECT_OFFSET_OVERFLOW: D3D11_MESSAGE_ID =
3697 D3D11_MESSAGE_ID(2097209i32);
3698pub const D3D11_MESSAGE_ID_DEVICE_DRAWINDIRECT_OFFSET_UNALIGNED: D3D11_MESSAGE_ID =
3699 D3D11_MESSAGE_ID(2097208i32);
3700pub const D3D11_MESSAGE_ID_DEVICE_DRAWINSTANCED_INSTANCEPOS_OVERFLOW: D3D11_MESSAGE_ID =
3701 D3D11_MESSAGE_ID(338i32);
3702pub const D3D11_MESSAGE_ID_DEVICE_DRAWINSTANCED_VERTEXPOS_OVERFLOW: D3D11_MESSAGE_ID =
3703 D3D11_MESSAGE_ID(337i32);
3704pub const D3D11_MESSAGE_ID_DEVICE_DRAW_BOUND_RESOURCE_MAPPED: D3D11_MESSAGE_ID =
3705 D3D11_MESSAGE_ID(364i32);
3706pub const D3D11_MESSAGE_ID_DEVICE_DRAW_CONSTANT_BUFFER_NOT_SET: D3D11_MESSAGE_ID =
3707 D3D11_MESSAGE_ID(350i32);
3708pub const D3D11_MESSAGE_ID_DEVICE_DRAW_CONSTANT_BUFFER_TOO_SMALL: D3D11_MESSAGE_ID =
3709 D3D11_MESSAGE_ID(351i32);
3710pub const D3D11_MESSAGE_ID_DEVICE_DRAW_DEPTHSTENCILVIEW_NOT_SET: D3D11_MESSAGE_ID =
3711 D3D11_MESSAGE_ID(3146080i32);
3712pub const D3D11_MESSAGE_ID_DEVICE_DRAW_GS_INPUT_PRIMITIVE_MISMATCH: D3D11_MESSAGE_ID =
3713 D3D11_MESSAGE_ID(360i32);
3714pub const D3D11_MESSAGE_ID_DEVICE_DRAW_HS_DS_CONTROL_POINT_COUNT_MISMATCH: D3D11_MESSAGE_ID =
3715 D3D11_MESSAGE_ID(2097223i32);
3716pub const D3D11_MESSAGE_ID_DEVICE_DRAW_HS_DS_SIGNATURE_MISMATCH: D3D11_MESSAGE_ID =
3717 D3D11_MESSAGE_ID(2097221i32);
3718pub const D3D11_MESSAGE_ID_DEVICE_DRAW_HS_DS_TESSELLATOR_DOMAIN_MISMATCH: D3D11_MESSAGE_ID =
3719 D3D11_MESSAGE_ID(2097224i32);
3720pub const D3D11_MESSAGE_ID_DEVICE_DRAW_HS_XOR_DS_MISMATCH: D3D11_MESSAGE_ID =
3721 D3D11_MESSAGE_ID(2097205i32);
3722pub const D3D11_MESSAGE_ID_DEVICE_DRAW_HULL_SHADER_INPUT_TOPOLOGY_MISMATCH: D3D11_MESSAGE_ID =
3723 D3D11_MESSAGE_ID(2097222i32);
3724pub const D3D11_MESSAGE_ID_DEVICE_DRAW_INDEX_BUFFER_FORMAT_INVALID: D3D11_MESSAGE_ID =
3725 D3D11_MESSAGE_ID(358i32);
3726pub const D3D11_MESSAGE_ID_DEVICE_DRAW_INDEX_BUFFER_NOT_SET: D3D11_MESSAGE_ID =
3727 D3D11_MESSAGE_ID(357i32);
3728pub const D3D11_MESSAGE_ID_DEVICE_DRAW_INDEX_BUFFER_TOO_SMALL: D3D11_MESSAGE_ID =
3729 D3D11_MESSAGE_ID(359i32);
3730pub const D3D11_MESSAGE_ID_DEVICE_DRAW_INDEX_OFFSET_UNALIGNED: D3D11_MESSAGE_ID =
3731 D3D11_MESSAGE_ID(368i32);
3732pub const D3D11_MESSAGE_ID_DEVICE_DRAW_INPUTLAYOUT_NOT_SET: D3D11_MESSAGE_ID =
3733 D3D11_MESSAGE_ID(349i32);
3734pub const D3D11_MESSAGE_ID_DEVICE_DRAW_INVALID_PRIMITIVETOPOLOGY: D3D11_MESSAGE_ID =
3735 D3D11_MESSAGE_ID(365i32);
3736pub const D3D11_MESSAGE_ID_DEVICE_DRAW_INVALID_SYSTEMVALUE: D3D11_MESSAGE_ID =
3737 D3D11_MESSAGE_ID(3146156i32);
3738pub const D3D11_MESSAGE_ID_DEVICE_DRAW_INVALID_USE_OF_CENTER_MULTISAMPLE_PATTERN: D3D11_MESSAGE_ID =
3739 D3D11_MESSAGE_ID(417i32);
3740pub const D3D11_MESSAGE_ID_DEVICE_DRAW_INVALID_USE_OF_FORCED_SAMPLE_COUNT: D3D11_MESSAGE_ID =
3741 D3D11_MESSAGE_ID(3145940i32);
3742pub const D3D11_MESSAGE_ID_DEVICE_DRAW_OM_DUAL_SOURCE_BLENDING_CAN_ONLY_HAVE_RENDER_TARGET_0:
3743 D3D11_MESSAGE_ID = D3D11_MESSAGE_ID(377i32);
3744pub const D3D11_MESSAGE_ID_DEVICE_DRAW_OM_RENDER_TARGET_DOES_NOT_SUPPORT_BLENDING:
3745 D3D11_MESSAGE_ID = D3D11_MESSAGE_ID(376i32);
3746pub const D3D11_MESSAGE_ID_DEVICE_DRAW_OM_RENDER_TARGET_DOES_NOT_SUPPORT_LOGIC_OPS:
3747 D3D11_MESSAGE_ID = D3D11_MESSAGE_ID(3146079i32);
3748pub const D3D11_MESSAGE_ID_DEVICE_DRAW_OUTPUT_STREAM_NOT_SET: D3D11_MESSAGE_ID =
3749 D3D11_MESSAGE_ID(363i32);
3750pub const D3D11_MESSAGE_ID_DEVICE_DRAW_OUTPUT_STREAM_OFFSET_UNALIGNED: D3D11_MESSAGE_ID =
3751 D3D11_MESSAGE_ID(369i32);
3752pub const D3D11_MESSAGE_ID_DEVICE_DRAW_PIXEL_SHADER_WITHOUT_RTV_OR_DSV: D3D11_MESSAGE_ID =
3753 D3D11_MESSAGE_ID(2097408i32);
3754pub const D3D11_MESSAGE_ID_DEVICE_DRAW_POSITION_NOT_PRESENT: D3D11_MESSAGE_ID =
3755 D3D11_MESSAGE_ID(362i32);
3756pub const D3D11_MESSAGE_ID_DEVICE_DRAW_PS_OUTPUT_TYPE_MISMATCH: D3D11_MESSAGE_ID =
3757 D3D11_MESSAGE_ID(415i32);
3758pub const D3D11_MESSAGE_ID_DEVICE_DRAW_RASTERIZING_CONTROL_POINTS: D3D11_MESSAGE_ID =
3759 D3D11_MESSAGE_ID(2097219i32);
3760pub const D3D11_MESSAGE_ID_DEVICE_DRAW_RENDERTARGETVIEW_NOT_SET: D3D11_MESSAGE_ID =
3761 D3D11_MESSAGE_ID(3146081i32);
3762pub const D3D11_MESSAGE_ID_DEVICE_DRAW_RENDERTARGETVIEW_NOT_SET_DUE_TO_FLIP_PRESENT:
3763 D3D11_MESSAGE_ID = D3D11_MESSAGE_ID(3146082i32);
3764pub const D3D11_MESSAGE_ID_DEVICE_DRAW_RESOURCE_FORMAT_GATHER_UNSUPPORTED: D3D11_MESSAGE_ID =
3765 D3D11_MESSAGE_ID(416i32);
3766pub const D3D11_MESSAGE_ID_DEVICE_DRAW_RESOURCE_FORMAT_LD_UNSUPPORTED: D3D11_MESSAGE_ID =
3767 D3D11_MESSAGE_ID(370i32);
3768pub const D3D11_MESSAGE_ID_DEVICE_DRAW_RESOURCE_FORMAT_SAMPLE_C_UNSUPPORTED: D3D11_MESSAGE_ID =
3769 D3D11_MESSAGE_ID(372i32);
3770pub const D3D11_MESSAGE_ID_DEVICE_DRAW_RESOURCE_FORMAT_SAMPLE_UNSUPPORTED: D3D11_MESSAGE_ID =
3771 D3D11_MESSAGE_ID(371i32);
3772pub const D3D11_MESSAGE_ID_DEVICE_DRAW_RESOURCE_MULTISAMPLE_UNSUPPORTED: D3D11_MESSAGE_ID =
3773 D3D11_MESSAGE_ID(373i32);
3774pub const D3D11_MESSAGE_ID_DEVICE_DRAW_RESOURCE_RETURN_TYPE_MISMATCH: D3D11_MESSAGE_ID =
3775 D3D11_MESSAGE_ID(361i32);
3776pub const D3D11_MESSAGE_ID_DEVICE_DRAW_RESOURCE_SAMPLE_COUNT_MISMATCH: D3D11_MESSAGE_ID =
3777 D3D11_MESSAGE_ID(421i32);
3778pub const D3D11_MESSAGE_ID_DEVICE_DRAW_SAMPLER_MISMATCH: D3D11_MESSAGE_ID =
3779 D3D11_MESSAGE_ID(390i32);
3780pub const D3D11_MESSAGE_ID_DEVICE_DRAW_SAMPLER_NOT_SET: D3D11_MESSAGE_ID = D3D11_MESSAGE_ID(352i32);
3781pub const D3D11_MESSAGE_ID_DEVICE_DRAW_SAMPLE_MASK_IGNORED_ON_FL9: D3D11_MESSAGE_ID =
3782 D3D11_MESSAGE_ID(3146067i32);
3783pub const D3D11_MESSAGE_ID_DEVICE_DRAW_SHADERRESOURCEVIEW_NOT_SET: D3D11_MESSAGE_ID =
3784 D3D11_MESSAGE_ID(353i32);
3785pub const D3D11_MESSAGE_ID_DEVICE_DRAW_SO_STRIDE_LARGER_THAN_BUFFER: D3D11_MESSAGE_ID =
3786 D3D11_MESSAGE_ID(375i32);
3787pub const D3D11_MESSAGE_ID_DEVICE_DRAW_SO_TARGETS_BOUND_WITHOUT_SOURCE: D3D11_MESSAGE_ID =
3788 D3D11_MESSAGE_ID(374i32);
3789pub const D3D11_MESSAGE_ID_DEVICE_DRAW_UNORDEREDACCESSVIEW_RENDERTARGETVIEW_OVERLAP:
3790 D3D11_MESSAGE_ID = D3D11_MESSAGE_ID(2097374i32);
3791pub const D3D11_MESSAGE_ID_DEVICE_DRAW_VERTEXPOS_OVERFLOW: D3D11_MESSAGE_ID =
3792 D3D11_MESSAGE_ID(335i32);
3793pub const D3D11_MESSAGE_ID_DEVICE_DRAW_VERTEX_BUFFER_NOT_SET: D3D11_MESSAGE_ID =
3794 D3D11_MESSAGE_ID(348i32);
3795pub const D3D11_MESSAGE_ID_DEVICE_DRAW_VERTEX_BUFFER_STRIDE_TOO_SMALL: D3D11_MESSAGE_ID =
3796 D3D11_MESSAGE_ID(355i32);
3797pub const D3D11_MESSAGE_ID_DEVICE_DRAW_VERTEX_BUFFER_TOO_SMALL: D3D11_MESSAGE_ID =
3798 D3D11_MESSAGE_ID(356i32);
3799pub const D3D11_MESSAGE_ID_DEVICE_DRAW_VERTEX_OFFSET_UNALIGNED: D3D11_MESSAGE_ID =
3800 D3D11_MESSAGE_ID(366i32);
3801pub const D3D11_MESSAGE_ID_DEVICE_DRAW_VERTEX_SHADER_NOT_SET: D3D11_MESSAGE_ID =
3802 D3D11_MESSAGE_ID(341i32);
3803pub const D3D11_MESSAGE_ID_DEVICE_DRAW_VERTEX_STRIDE_UNALIGNED: D3D11_MESSAGE_ID =
3804 D3D11_MESSAGE_ID(367i32);
3805pub const D3D11_MESSAGE_ID_DEVICE_DRAW_VIEWPORT_NOT_SET: D3D11_MESSAGE_ID =
3806 D3D11_MESSAGE_ID(384i32);
3807pub const D3D11_MESSAGE_ID_DEVICE_DRAW_VIEW_DIMENSION_MISMATCH: D3D11_MESSAGE_ID =
3808 D3D11_MESSAGE_ID(354i32);
3809pub const D3D11_MESSAGE_ID_DEVICE_DSGETCONSTANTBUFFERS_BUFFERS_EMPTY: D3D11_MESSAGE_ID =
3810 D3D11_MESSAGE_ID(2097203i32);
3811pub const D3D11_MESSAGE_ID_DEVICE_DSGETSAMPLERS_SAMPLERS_EMPTY: D3D11_MESSAGE_ID =
3812 D3D11_MESSAGE_ID(2097204i32);
3813pub const D3D11_MESSAGE_ID_DEVICE_DSGETSHADERRESOURCES_VIEWS_EMPTY: D3D11_MESSAGE_ID =
3814 D3D11_MESSAGE_ID(2097202i32);
3815pub const D3D11_MESSAGE_ID_DEVICE_DSSETCONSTANTBUFFERS_BUFFERS_EMPTY: D3D11_MESSAGE_ID =
3816 D3D11_MESSAGE_ID(2097200i32);
3817pub const D3D11_MESSAGE_ID_DEVICE_DSSETCONSTANTBUFFERS_HAZARD: D3D11_MESSAGE_ID =
3818 D3D11_MESSAGE_ID(2097190i32);
3819pub const D3D11_MESSAGE_ID_DEVICE_DSSETSAMPLERS_SAMPLERS_EMPTY: D3D11_MESSAGE_ID =
3820 D3D11_MESSAGE_ID(2097201i32);
3821pub const D3D11_MESSAGE_ID_DEVICE_DSSETSHADERRESOURCES_HAZARD: D3D11_MESSAGE_ID =
3822 D3D11_MESSAGE_ID(2097189i32);
3823pub const D3D11_MESSAGE_ID_DEVICE_DSSETSHADERRESOURCES_VIEWS_EMPTY: D3D11_MESSAGE_ID =
3824 D3D11_MESSAGE_ID(2097198i32);
3825pub const D3D11_MESSAGE_ID_DEVICE_GENERATEMIPS_RESOURCE_INVALID: D3D11_MESSAGE_ID =
3826 D3D11_MESSAGE_ID(277i32);
3827pub const D3D11_MESSAGE_ID_DEVICE_GETRESOURCEMINLOD_INVALIDCONTEXT: D3D11_MESSAGE_ID =
3828 D3D11_MESSAGE_ID(2097366i32);
3829pub const D3D11_MESSAGE_ID_DEVICE_GETRESOURCEMINLOD_INVALIDRESOURCE: D3D11_MESSAGE_ID =
3830 D3D11_MESSAGE_ID(2097367i32);
3831pub const D3D11_MESSAGE_ID_DEVICE_GSGETCONSTANTBUFFERS_BUFFERS_EMPTY: D3D11_MESSAGE_ID =
3832 D3D11_MESSAGE_ID(269i32);
3833pub const D3D11_MESSAGE_ID_DEVICE_GSGETSAMPLERS_SAMPLERS_EMPTY: D3D11_MESSAGE_ID =
3834 D3D11_MESSAGE_ID(270i32);
3835pub const D3D11_MESSAGE_ID_DEVICE_GSGETSHADERRESOURCES_VIEWS_EMPTY: D3D11_MESSAGE_ID =
3836 D3D11_MESSAGE_ID(268i32);
3837pub const D3D11_MESSAGE_ID_DEVICE_GSSETCONSTANTBUFFERS_BUFFERS_EMPTY: D3D11_MESSAGE_ID =
3838 D3D11_MESSAGE_ID(251i32);
3839pub const D3D11_MESSAGE_ID_DEVICE_GSSETCONSTANTBUFFERS_HAZARD: D3D11_MESSAGE_ID =
3840 D3D11_MESSAGE_ID(6i32);
3841pub const D3D11_MESSAGE_ID_DEVICE_GSSETSAMPLERS_SAMPLERS_EMPTY: D3D11_MESSAGE_ID =
3842 D3D11_MESSAGE_ID(252i32);
3843pub const D3D11_MESSAGE_ID_DEVICE_GSSETSHADERRESOURCES_HAZARD: D3D11_MESSAGE_ID =
3844 D3D11_MESSAGE_ID(5i32);
3845pub const D3D11_MESSAGE_ID_DEVICE_GSSETSHADERRESOURCES_VIEWS_EMPTY: D3D11_MESSAGE_ID =
3846 D3D11_MESSAGE_ID(249i32);
3847pub const D3D11_MESSAGE_ID_DEVICE_HSGETCONSTANTBUFFERS_BUFFERS_EMPTY: D3D11_MESSAGE_ID =
3848 D3D11_MESSAGE_ID(2097187i32);
3849pub const D3D11_MESSAGE_ID_DEVICE_HSGETSAMPLERS_SAMPLERS_EMPTY: D3D11_MESSAGE_ID =
3850 D3D11_MESSAGE_ID(2097188i32);
3851pub const D3D11_MESSAGE_ID_DEVICE_HSGETSHADERRESOURCES_VIEWS_EMPTY: D3D11_MESSAGE_ID =
3852 D3D11_MESSAGE_ID(2097186i32);
3853pub const D3D11_MESSAGE_ID_DEVICE_HSSETCONSTANTBUFFERS_BUFFERS_EMPTY: D3D11_MESSAGE_ID =
3854 D3D11_MESSAGE_ID(2097184i32);
3855pub const D3D11_MESSAGE_ID_DEVICE_HSSETCONSTANTBUFFERS_HAZARD: D3D11_MESSAGE_ID =
3856 D3D11_MESSAGE_ID(2097174i32);
3857pub const D3D11_MESSAGE_ID_DEVICE_HSSETSAMPLERS_SAMPLERS_EMPTY: D3D11_MESSAGE_ID =
3858 D3D11_MESSAGE_ID(2097185i32);
3859pub const D3D11_MESSAGE_ID_DEVICE_HSSETSHADERRESOURCES_HAZARD: D3D11_MESSAGE_ID =
3860 D3D11_MESSAGE_ID(2097173i32);
3861pub const D3D11_MESSAGE_ID_DEVICE_HSSETSHADERRESOURCES_VIEWS_EMPTY: D3D11_MESSAGE_ID =
3862 D3D11_MESSAGE_ID(2097182i32);
3863pub const D3D11_MESSAGE_ID_DEVICE_IAGETVERTEXBUFFERS_BUFFERS_EMPTY: D3D11_MESSAGE_ID =
3864 D3D11_MESSAGE_ID(264i32);
3865pub const D3D11_MESSAGE_ID_DEVICE_IASETINDEXBUFFER_FORMAT_INVALID: D3D11_MESSAGE_ID =
3866 D3D11_MESSAGE_ID(242i32);
3867pub const D3D11_MESSAGE_ID_DEVICE_IASETINDEXBUFFER_HAZARD: D3D11_MESSAGE_ID =
3868 D3D11_MESSAGE_ID(2i32);
3869pub const D3D11_MESSAGE_ID_DEVICE_IASETINDEXBUFFER_OFFSET_TOO_LARGE: D3D11_MESSAGE_ID =
3870 D3D11_MESSAGE_ID(243i32);
3871pub const D3D11_MESSAGE_ID_DEVICE_IASETINDEXBUFFER_OFFSET_UNALIGNED: D3D11_MESSAGE_ID =
3872 D3D11_MESSAGE_ID(244i32);
3873pub const D3D11_MESSAGE_ID_DEVICE_IASETPRIMITIVETOPOLOGY_ADJACENCY_UNSUPPORTED: D3D11_MESSAGE_ID =
3874 D3D11_MESSAGE_ID(1048594i32);
3875pub const D3D11_MESSAGE_ID_DEVICE_IASETPRIMITIVETOPOLOGY_TOPOLOGY_UNDEFINED: D3D11_MESSAGE_ID =
3876 D3D11_MESSAGE_ID(237i32);
3877pub const D3D11_MESSAGE_ID_DEVICE_IASETPRIMITIVETOPOLOGY_TOPOLOGY_UNRECOGNIZED: D3D11_MESSAGE_ID =
3878 D3D11_MESSAGE_ID(236i32);
3879pub const D3D11_MESSAGE_ID_DEVICE_IASETPRIMITIVETOPOLOGY_TOPOLOGY_UNSUPPORTED: D3D11_MESSAGE_ID =
3880 D3D11_MESSAGE_ID(2097220i32);
3881pub const D3D11_MESSAGE_ID_DEVICE_IASETVERTEXBUFFERS_BUFFERS_EMPTY: D3D11_MESSAGE_ID =
3882 D3D11_MESSAGE_ID(240i32);
3883pub const D3D11_MESSAGE_ID_DEVICE_IASETVERTEXBUFFERS_HAZARD: D3D11_MESSAGE_ID =
3884 D3D11_MESSAGE_ID(1i32);
3885pub const D3D11_MESSAGE_ID_DEVICE_IASETVERTEXBUFFERS_INVALIDRANGE: D3D11_MESSAGE_ID =
3886 D3D11_MESSAGE_ID(419i32);
3887pub const D3D11_MESSAGE_ID_DEVICE_IASETVERTEXBUFFERS_OFFSET_TOO_LARGE: D3D11_MESSAGE_ID =
3888 D3D11_MESSAGE_ID(239i32);
3889pub const D3D11_MESSAGE_ID_DEVICE_IASETVERTEXBUFFERS_STRIDE_TOO_LARGE: D3D11_MESSAGE_ID =
3890 D3D11_MESSAGE_ID(418i32);
3891pub const D3D11_MESSAGE_ID_DEVICE_LOCKEDOUT_INTERFACE: D3D11_MESSAGE_ID =
3892 D3D11_MESSAGE_ID(3145945i32);
3893pub const D3D11_MESSAGE_ID_DEVICE_OMSETRENDERTARGETSANDUNORDEREDACCESSVIEWS_HAZARD:
3894 D3D11_MESSAGE_ID = D3D11_MESSAGE_ID(2097346i32);
3895pub const D3D11_MESSAGE_ID_DEVICE_OMSETRENDERTARGETSANDUNORDEREDACCESSVIEWS_INVALIDOFFSET:
3896 D3D11_MESSAGE_ID = D3D11_MESSAGE_ID(3146060i32);
3897pub const D3D11_MESSAGE_ID_DEVICE_OMSETRENDERTARGETSANDUNORDEREDACCESSVIEWS_NO_OP:
3898 D3D11_MESSAGE_ID = D3D11_MESSAGE_ID(2097348i32);
3899pub const D3D11_MESSAGE_ID_DEVICE_OMSETRENDERTARGETSANDUNORDEREDACCESSVIEWS_NUMUAVS_INVALIDRANGE:
3900 D3D11_MESSAGE_ID = D3D11_MESSAGE_ID(2097422i32);
3901pub const D3D11_MESSAGE_ID_DEVICE_OMSETRENDERTARGETSANDUNORDEREDACCESSVIEWS_OVERLAPPING_OLD_SLOTS: D3D11_MESSAGE_ID = D3D11_MESSAGE_ID(2097347i32);
3902pub const D3D11_MESSAGE_ID_DEVICE_OMSETRENDERTARGETSANDUNORDEREDACCESSVIEWS_TOOMANYVIEWS:
3903 D3D11_MESSAGE_ID = D3D11_MESSAGE_ID(3146061i32);
3904pub const D3D11_MESSAGE_ID_DEVICE_OMSETRENDERTARGETS_HAZARD: D3D11_MESSAGE_ID =
3905 D3D11_MESSAGE_ID(9i32);
3906pub const D3D11_MESSAGE_ID_DEVICE_OPEN_SHARED_RESOURCE1_ACCESS_DENIED: D3D11_MESSAGE_ID =
3907 D3D11_MESSAGE_ID(3146117i32);
3908pub const D3D11_MESSAGE_ID_DEVICE_OPEN_SHARED_RESOURCE1_NOT_SUPPORTED: D3D11_MESSAGE_ID =
3909 D3D11_MESSAGE_ID(3146068i32);
3910pub const D3D11_MESSAGE_ID_DEVICE_OPEN_SHARED_RESOURCE_BADINTERFACE_RETURN: D3D11_MESSAGE_ID =
3911 D3D11_MESSAGE_ID(383i32);
3912pub const D3D11_MESSAGE_ID_DEVICE_OPEN_SHARED_RESOURCE_BY_NAME_NOT_SUPPORTED: D3D11_MESSAGE_ID =
3913 D3D11_MESSAGE_ID(3146069i32);
3914pub const D3D11_MESSAGE_ID_DEVICE_OPEN_SHARED_RESOURCE_INVALIDARG_RETURN: D3D11_MESSAGE_ID =
3915 D3D11_MESSAGE_ID(381i32);
3916pub const D3D11_MESSAGE_ID_DEVICE_OPEN_SHARED_RESOURCE_OUTOFMEMORY_RETURN: D3D11_MESSAGE_ID =
3917 D3D11_MESSAGE_ID(382i32);
3918pub const D3D11_MESSAGE_ID_DEVICE_PSGETCONSTANTBUFFERS_BUFFERS_EMPTY: D3D11_MESSAGE_ID =
3919 D3D11_MESSAGE_ID(273i32);
3920pub const D3D11_MESSAGE_ID_DEVICE_PSGETSAMPLERS_SAMPLERS_EMPTY: D3D11_MESSAGE_ID =
3921 D3D11_MESSAGE_ID(274i32);
3922pub const D3D11_MESSAGE_ID_DEVICE_PSGETSHADERRESOURCES_VIEWS_EMPTY: D3D11_MESSAGE_ID =
3923 D3D11_MESSAGE_ID(272i32);
3924pub const D3D11_MESSAGE_ID_DEVICE_PSSETCONSTANTBUFFERS_BUFFERS_EMPTY: D3D11_MESSAGE_ID =
3925 D3D11_MESSAGE_ID(257i32);
3926pub const D3D11_MESSAGE_ID_DEVICE_PSSETCONSTANTBUFFERS_HAZARD: D3D11_MESSAGE_ID =
3927 D3D11_MESSAGE_ID(8i32);
3928pub const D3D11_MESSAGE_ID_DEVICE_PSSETSAMPLERS_SAMPLERS_EMPTY: D3D11_MESSAGE_ID =
3929 D3D11_MESSAGE_ID(258i32);
3930pub const D3D11_MESSAGE_ID_DEVICE_PSSETSHADERRESOURCES_HAZARD: D3D11_MESSAGE_ID =
3931 D3D11_MESSAGE_ID(7i32);
3932pub const D3D11_MESSAGE_ID_DEVICE_PSSETSHADERRESOURCES_VIEWS_EMPTY: D3D11_MESSAGE_ID =
3933 D3D11_MESSAGE_ID(255i32);
3934pub const D3D11_MESSAGE_ID_DEVICE_REMOVAL_PROCESS_AT_FAULT: D3D11_MESSAGE_ID =
3935 D3D11_MESSAGE_ID(378i32);
3936pub const D3D11_MESSAGE_ID_DEVICE_REMOVAL_PROCESS_NOT_AT_FAULT: D3D11_MESSAGE_ID =
3937 D3D11_MESSAGE_ID(380i32);
3938pub const D3D11_MESSAGE_ID_DEVICE_REMOVAL_PROCESS_POSSIBLY_AT_FAULT: D3D11_MESSAGE_ID =
3939 D3D11_MESSAGE_ID(379i32);
3940pub const D3D11_MESSAGE_ID_DEVICE_RESOLVESUBRESOURCE_DESTINATION_INVALID: D3D11_MESSAGE_ID =
3941 D3D11_MESSAGE_ID(290i32);
3942pub const D3D11_MESSAGE_ID_DEVICE_RESOLVESUBRESOURCE_DESTINATION_SUBRESOURCE_INVALID:
3943 D3D11_MESSAGE_ID = D3D11_MESSAGE_ID(291i32);
3944pub const D3D11_MESSAGE_ID_DEVICE_RESOLVESUBRESOURCE_FORMAT_INVALID: D3D11_MESSAGE_ID =
3945 D3D11_MESSAGE_ID(294i32);
3946pub const D3D11_MESSAGE_ID_DEVICE_RESOLVESUBRESOURCE_SOURCE_INVALID: D3D11_MESSAGE_ID =
3947 D3D11_MESSAGE_ID(292i32);
3948pub const D3D11_MESSAGE_ID_DEVICE_RESOLVESUBRESOURCE_SOURCE_SUBRESOURCE_INVALID: D3D11_MESSAGE_ID =
3949 D3D11_MESSAGE_ID(293i32);
3950pub const D3D11_MESSAGE_ID_DEVICE_RSGETSCISSORRECTS_RECTS_EMPTY: D3D11_MESSAGE_ID =
3951 D3D11_MESSAGE_ID(276i32);
3952pub const D3D11_MESSAGE_ID_DEVICE_RSGETVIEWPORTS_VIEWPORTS_EMPTY: D3D11_MESSAGE_ID =
3953 D3D11_MESSAGE_ID(275i32);
3954pub const D3D11_MESSAGE_ID_DEVICE_RSSETSCISSORRECTS_INVALIDSCISSOR: D3D11_MESSAGE_ID =
3955 D3D11_MESSAGE_ID(260i32);
3956pub const D3D11_MESSAGE_ID_DEVICE_RSSETSCISSORRECTS_NEGATIVESCISSOR: D3D11_MESSAGE_ID =
3957 D3D11_MESSAGE_ID(1048632i32);
3958pub const D3D11_MESSAGE_ID_DEVICE_RSSETSCISSORRECTS_TOO_MANY_SCISSORS: D3D11_MESSAGE_ID =
3959 D3D11_MESSAGE_ID(1048595i32);
3960pub const D3D11_MESSAGE_ID_DEVICE_RSSETVIEWPORTS_DENORMFLUSH: D3D11_MESSAGE_ID =
3961 D3D11_MESSAGE_ID(387i32);
3962pub const D3D11_MESSAGE_ID_DEVICE_RSSETVIEWPORTS_INVALIDVIEWPORT: D3D11_MESSAGE_ID =
3963 D3D11_MESSAGE_ID(259i32);
3964pub const D3D11_MESSAGE_ID_DEVICE_RSSETVIEWPORTS_TOO_MANY_VIEWPORTS: D3D11_MESSAGE_ID =
3965 D3D11_MESSAGE_ID(1048593i32);
3966pub const D3D11_MESSAGE_ID_DEVICE_SETHARDWAREPROTECTION_INVALIDCONTEXT: D3D11_MESSAGE_ID =
3967 D3D11_MESSAGE_ID(3146224i32);
3968pub const D3D11_MESSAGE_ID_DEVICE_SETRESOURCEMINLOD_INVALIDCONTEXT: D3D11_MESSAGE_ID =
3969 D3D11_MESSAGE_ID(2097363i32);
3970pub const D3D11_MESSAGE_ID_DEVICE_SETRESOURCEMINLOD_INVALIDMINLOD: D3D11_MESSAGE_ID =
3971 D3D11_MESSAGE_ID(2097365i32);
3972pub const D3D11_MESSAGE_ID_DEVICE_SETRESOURCEMINLOD_INVALIDRESOURCE: D3D11_MESSAGE_ID =
3973 D3D11_MESSAGE_ID(2097364i32);
3974pub const D3D11_MESSAGE_ID_DEVICE_SETSHADER_INSTANCE_DATA_BINDINGS: D3D11_MESSAGE_ID =
3975 D3D11_MESSAGE_ID(2097311i32);
3976pub const D3D11_MESSAGE_ID_DEVICE_SETSHADER_INTERFACES_FEATURELEVEL: D3D11_MESSAGE_ID =
3977 D3D11_MESSAGE_ID(2097304i32);
3978pub const D3D11_MESSAGE_ID_DEVICE_SETSHADER_INTERFACE_COUNT_MISMATCH: D3D11_MESSAGE_ID =
3979 D3D11_MESSAGE_ID(2097305i32);
3980pub const D3D11_MESSAGE_ID_DEVICE_SETSHADER_INVALID_INSTANCE: D3D11_MESSAGE_ID =
3981 D3D11_MESSAGE_ID(2097306i32);
3982pub const D3D11_MESSAGE_ID_DEVICE_SETSHADER_INVALID_INSTANCE_DATA: D3D11_MESSAGE_ID =
3983 D3D11_MESSAGE_ID(2097309i32);
3984pub const D3D11_MESSAGE_ID_DEVICE_SETSHADER_INVALID_INSTANCE_INDEX: D3D11_MESSAGE_ID =
3985 D3D11_MESSAGE_ID(2097307i32);
3986pub const D3D11_MESSAGE_ID_DEVICE_SETSHADER_INVALID_INSTANCE_TYPE: D3D11_MESSAGE_ID =
3987 D3D11_MESSAGE_ID(2097308i32);
3988pub const D3D11_MESSAGE_ID_DEVICE_SETSHADER_UNBOUND_INSTANCE_DATA: D3D11_MESSAGE_ID =
3989 D3D11_MESSAGE_ID(2097310i32);
3990pub const D3D11_MESSAGE_ID_DEVICE_SETTEXTFILTERSIZE_INVALIDDIMENSIONS: D3D11_MESSAGE_ID =
3991 D3D11_MESSAGE_ID(389i32);
3992pub const D3D11_MESSAGE_ID_DEVICE_SHADERRESOURCEVIEW_BUFFER_TYPE_MISMATCH: D3D11_MESSAGE_ID =
3993 D3D11_MESSAGE_ID(2097393i32);
3994pub const D3D11_MESSAGE_ID_DEVICE_SHADERRESOURCEVIEW_RAW_UNSUPPORTED: D3D11_MESSAGE_ID =
3995 D3D11_MESSAGE_ID(2097394i32);
3996pub const D3D11_MESSAGE_ID_DEVICE_SHADERRESOURCEVIEW_STRUCTURE_STRIDE_MISMATCH: D3D11_MESSAGE_ID =
3997 D3D11_MESSAGE_ID(2097392i32);
3998pub const D3D11_MESSAGE_ID_DEVICE_SHADER_LINKAGE_COMPONENTTYPE: D3D11_MESSAGE_ID =
3999 D3D11_MESSAGE_ID(344i32);
4000pub const D3D11_MESSAGE_ID_DEVICE_SHADER_LINKAGE_MINPRECISION: D3D11_MESSAGE_ID =
4001 D3D11_MESSAGE_ID(3146050i32);
4002pub const D3D11_MESSAGE_ID_DEVICE_SHADER_LINKAGE_NEVERWRITTEN_ALWAYSREADS: D3D11_MESSAGE_ID =
4003 D3D11_MESSAGE_ID(347i32);
4004pub const D3D11_MESSAGE_ID_DEVICE_SHADER_LINKAGE_REGISTERINDEX: D3D11_MESSAGE_ID =
4005 D3D11_MESSAGE_ID(343i32);
4006pub const D3D11_MESSAGE_ID_DEVICE_SHADER_LINKAGE_REGISTERMASK: D3D11_MESSAGE_ID =
4007 D3D11_MESSAGE_ID(345i32);
4008pub const D3D11_MESSAGE_ID_DEVICE_SHADER_LINKAGE_SEMANTICNAME_NOT_FOUND: D3D11_MESSAGE_ID =
4009 D3D11_MESSAGE_ID(342i32);
4010pub const D3D11_MESSAGE_ID_DEVICE_SHADER_LINKAGE_SYSTEMVALUE: D3D11_MESSAGE_ID =
4011 D3D11_MESSAGE_ID(346i32);
4012pub const D3D11_MESSAGE_ID_DEVICE_SOGETTARGETS_BUFFERS_EMPTY: D3D11_MESSAGE_ID =
4013 D3D11_MESSAGE_ID(271i32);
4014pub const D3D11_MESSAGE_ID_DEVICE_SOSETTARGETS_HAZARD: D3D11_MESSAGE_ID = D3D11_MESSAGE_ID(10i32);
4015pub const D3D11_MESSAGE_ID_DEVICE_SOSETTARGETS_OFFSET_UNALIGNED: D3D11_MESSAGE_ID =
4016 D3D11_MESSAGE_ID(254i32);
4017pub const D3D11_MESSAGE_ID_DEVICE_UNORDEREDACCESSVIEW_APPEND_UNSUPPORTED: D3D11_MESSAGE_ID =
4018 D3D11_MESSAGE_ID(2097376i32);
4019pub const D3D11_MESSAGE_ID_DEVICE_UNORDEREDACCESSVIEW_ATOMICS_UNSUPPORTED: D3D11_MESSAGE_ID =
4020 D3D11_MESSAGE_ID(2097377i32);
4021pub const D3D11_MESSAGE_ID_DEVICE_UNORDEREDACCESSVIEW_ATOMIC_ADD_UNSUPPORTED: D3D11_MESSAGE_ID =
4022 D3D11_MESSAGE_ID(2097383i32);
4023pub const D3D11_MESSAGE_ID_DEVICE_UNORDEREDACCESSVIEW_ATOMIC_BITWISE_OPS_UNSUPPORTED:
4024 D3D11_MESSAGE_ID = D3D11_MESSAGE_ID(2097384i32);
4025pub const D3D11_MESSAGE_ID_DEVICE_UNORDEREDACCESSVIEW_ATOMIC_CMPSTORE_CMPEXCHANGE_UNSUPPORTED:
4026 D3D11_MESSAGE_ID = D3D11_MESSAGE_ID(2097385i32);
4027pub const D3D11_MESSAGE_ID_DEVICE_UNORDEREDACCESSVIEW_ATOMIC_EXCHANGE_UNSUPPORTED:
4028 D3D11_MESSAGE_ID = D3D11_MESSAGE_ID(2097386i32);
4029pub const D3D11_MESSAGE_ID_DEVICE_UNORDEREDACCESSVIEW_ATOMIC_SIGNED_MINMAX_UNSUPPORTED:
4030 D3D11_MESSAGE_ID = D3D11_MESSAGE_ID(2097387i32);
4031pub const D3D11_MESSAGE_ID_DEVICE_UNORDEREDACCESSVIEW_ATOMIC_UNSIGNED_MINMAX_UNSUPPORTED:
4032 D3D11_MESSAGE_ID = D3D11_MESSAGE_ID(2097388i32);
4033pub const D3D11_MESSAGE_ID_DEVICE_UNORDEREDACCESSVIEW_BUFFER_TYPE_MISMATCH: D3D11_MESSAGE_ID =
4034 D3D11_MESSAGE_ID(2097379i32);
4035pub const D3D11_MESSAGE_ID_DEVICE_UNORDEREDACCESSVIEW_COUNTER_UNSUPPORTED: D3D11_MESSAGE_ID =
4036 D3D11_MESSAGE_ID(2097406i32);
4037pub const D3D11_MESSAGE_ID_DEVICE_UNORDEREDACCESSVIEW_DIMENSION_MISMATCH: D3D11_MESSAGE_ID =
4038 D3D11_MESSAGE_ID(2097375i32);
4039pub const D3D11_MESSAGE_ID_DEVICE_UNORDEREDACCESSVIEW_FORMAT_LD_UNSUPPORTED: D3D11_MESSAGE_ID =
4040 D3D11_MESSAGE_ID(2097381i32);
4041pub const D3D11_MESSAGE_ID_DEVICE_UNORDEREDACCESSVIEW_FORMAT_STORE_UNSUPPORTED: D3D11_MESSAGE_ID =
4042 D3D11_MESSAGE_ID(2097382i32);
4043pub const D3D11_MESSAGE_ID_DEVICE_UNORDEREDACCESSVIEW_NOT_SET: D3D11_MESSAGE_ID =
4044 D3D11_MESSAGE_ID(2097373i32);
4045pub const D3D11_MESSAGE_ID_DEVICE_UNORDEREDACCESSVIEW_NOT_SET_DUE_TO_FLIP_PRESENT:
4046 D3D11_MESSAGE_ID = D3D11_MESSAGE_ID(3146083i32);
4047pub const D3D11_MESSAGE_ID_DEVICE_UNORDEREDACCESSVIEW_RAW_UNSUPPORTED: D3D11_MESSAGE_ID =
4048 D3D11_MESSAGE_ID(2097380i32);
4049pub const D3D11_MESSAGE_ID_DEVICE_UNORDEREDACCESSVIEW_RETURN_TYPE_MISMATCH: D3D11_MESSAGE_ID =
4050 D3D11_MESSAGE_ID(2097372i32);
4051pub const D3D11_MESSAGE_ID_DEVICE_UNORDEREDACCESSVIEW_STRUCTURE_STRIDE_MISMATCH: D3D11_MESSAGE_ID =
4052 D3D11_MESSAGE_ID(2097378i32);
4053pub const D3D11_MESSAGE_ID_DEVICE_VSGETCONSTANTBUFFERS_BUFFERS_EMPTY: D3D11_MESSAGE_ID =
4054 D3D11_MESSAGE_ID(266i32);
4055pub const D3D11_MESSAGE_ID_DEVICE_VSGETSAMPLERS_SAMPLERS_EMPTY: D3D11_MESSAGE_ID =
4056 D3D11_MESSAGE_ID(267i32);
4057pub const D3D11_MESSAGE_ID_DEVICE_VSGETSHADERRESOURCES_VIEWS_EMPTY: D3D11_MESSAGE_ID =
4058 D3D11_MESSAGE_ID(265i32);
4059pub const D3D11_MESSAGE_ID_DEVICE_VSSETCONSTANTBUFFERS_BUFFERS_EMPTY: D3D11_MESSAGE_ID =
4060 D3D11_MESSAGE_ID(247i32);
4061pub const D3D11_MESSAGE_ID_DEVICE_VSSETCONSTANTBUFFERS_HAZARD: D3D11_MESSAGE_ID =
4062 D3D11_MESSAGE_ID(4i32);
4063pub const D3D11_MESSAGE_ID_DEVICE_VSSETSAMPLERS_SAMPLERS_EMPTY: D3D11_MESSAGE_ID =
4064 D3D11_MESSAGE_ID(248i32);
4065pub const D3D11_MESSAGE_ID_DEVICE_VSSETSHADERRESOURCES_HAZARD: D3D11_MESSAGE_ID =
4066 D3D11_MESSAGE_ID(3i32);
4067pub const D3D11_MESSAGE_ID_DEVICE_VSSETSHADERRESOURCES_VIEWS_EMPTY: D3D11_MESSAGE_ID =
4068 D3D11_MESSAGE_ID(245i32);
4069pub const D3D11_MESSAGE_ID_DIRTY_TILE_MAPPING_ACCESS: D3D11_MESSAGE_ID =
4070 D3D11_MESSAGE_ID(3146133i32);
4071pub const D3D11_MESSAGE_ID_DRAWINDEXEDINSTANCED_NOT_SUPPORTED_BELOW_9_3: D3D11_MESSAGE_ID =
4072 D3D11_MESSAGE_ID(1048627i32);
4073pub const D3D11_MESSAGE_ID_DRAWINDEXED_POINTLIST_UNSUPPORTED: D3D11_MESSAGE_ID =
4074 D3D11_MESSAGE_ID(1048628i32);
4075pub const D3D11_MESSAGE_ID_DRAWINDEXED_STARTINDEXLOCATION_MUST_BE_POSITIVE: D3D11_MESSAGE_ID =
4076 D3D11_MESSAGE_ID(1048602i32);
4077pub const D3D11_MESSAGE_ID_DRAWINSTANCED_NOT_SUPPORTED: D3D11_MESSAGE_ID =
4078 D3D11_MESSAGE_ID(1048626i32);
4079pub const D3D11_MESSAGE_ID_DSSETCONSTANTBUFFERS_INVALIDBUFFER: D3D11_MESSAGE_ID =
4080 D3D11_MESSAGE_ID(2097199i32);
4081pub const D3D11_MESSAGE_ID_DSSETCONSTANTBUFFERS_INVALIDBUFFEROFFSETORCOUNT: D3D11_MESSAGE_ID =
4082 D3D11_MESSAGE_ID(3146017i32);
4083pub const D3D11_MESSAGE_ID_DSSETCONSTANTBUFFERS_UNBINDDELETINGOBJECT: D3D11_MESSAGE_ID =
4084 D3D11_MESSAGE_ID(2097192i32);
4085pub const D3D11_MESSAGE_ID_DSSETSAMPLERS_UNBINDDELETINGOBJECT: D3D11_MESSAGE_ID =
4086 D3D11_MESSAGE_ID(2097414i32);
4087pub const D3D11_MESSAGE_ID_DSSETSHADERRESOURCES_UNBINDDELETINGOBJECT: D3D11_MESSAGE_ID =
4088 D3D11_MESSAGE_ID(2097191i32);
4089pub const D3D11_MESSAGE_ID_DSSETSHADER_UNBINDDELETINGOBJECT: D3D11_MESSAGE_ID =
4090 D3D11_MESSAGE_ID(2097417i32);
4091pub const D3D11_MESSAGE_ID_DUPLICATE_TILE_MAPPINGS_IN_COVERED_AREA: D3D11_MESSAGE_ID =
4092 D3D11_MESSAGE_ID(3146134i32);
4093pub const D3D11_MESSAGE_ID_ENCRYPTIONBLT_DST_MAPPED: D3D11_MESSAGE_ID =
4094 D3D11_MESSAGE_ID(3145969i32);
4095pub const D3D11_MESSAGE_ID_ENCRYPTIONBLT_DST_NOT_STAGING: D3D11_MESSAGE_ID =
4096 D3D11_MESSAGE_ID(3145967i32);
4097pub const D3D11_MESSAGE_ID_ENCRYPTIONBLT_DST_OFFERED: D3D11_MESSAGE_ID =
4098 D3D11_MESSAGE_ID(3145971i32);
4099pub const D3D11_MESSAGE_ID_ENCRYPTIONBLT_DST_WRONGDEVICE: D3D11_MESSAGE_ID =
4100 D3D11_MESSAGE_ID(3145963i32);
4101pub const D3D11_MESSAGE_ID_ENCRYPTIONBLT_FORMAT_MISMATCH: D3D11_MESSAGE_ID =
4102 D3D11_MESSAGE_ID(3145964i32);
4103pub const D3D11_MESSAGE_ID_ENCRYPTIONBLT_NULLPARAM: D3D11_MESSAGE_ID = D3D11_MESSAGE_ID(3145961i32);
4104pub const D3D11_MESSAGE_ID_ENCRYPTIONBLT_SIZE_MISMATCH: D3D11_MESSAGE_ID =
4105 D3D11_MESSAGE_ID(3145965i32);
4106pub const D3D11_MESSAGE_ID_ENCRYPTIONBLT_SRC_CONTENT_UNDEFINED: D3D11_MESSAGE_ID =
4107 D3D11_MESSAGE_ID(3145972i32);
4108pub const D3D11_MESSAGE_ID_ENCRYPTIONBLT_SRC_MAPPED: D3D11_MESSAGE_ID =
4109 D3D11_MESSAGE_ID(3145968i32);
4110pub const D3D11_MESSAGE_ID_ENCRYPTIONBLT_SRC_MULTISAMPLED: D3D11_MESSAGE_ID =
4111 D3D11_MESSAGE_ID(3145966i32);
4112pub const D3D11_MESSAGE_ID_ENCRYPTIONBLT_SRC_OFFERED: D3D11_MESSAGE_ID =
4113 D3D11_MESSAGE_ID(3145970i32);
4114pub const D3D11_MESSAGE_ID_ENCRYPTIONBLT_SRC_WRONGDEVICE: D3D11_MESSAGE_ID =
4115 D3D11_MESSAGE_ID(3145962i32);
4116pub const D3D11_MESSAGE_ID_ENCRYPTIONBLT_UNSUPPORTED: D3D11_MESSAGE_ID =
4117 D3D11_MESSAGE_ID(3145960i32);
4118pub const D3D11_MESSAGE_ID_END_TRACKED_WORKLOAD_INVALID_ARG: D3D11_MESSAGE_ID =
4119 D3D11_MESSAGE_ID(3146282i32);
4120pub const D3D11_MESSAGE_ID_ENQUEUESETEVENT_ACCESSDENIED_RETURN: D3D11_MESSAGE_ID =
4121 D3D11_MESSAGE_ID(2097421i32);
4122pub const D3D11_MESSAGE_ID_ENQUEUESETEVENT_INVALIDARG_RETURN: D3D11_MESSAGE_ID =
4123 D3D11_MESSAGE_ID(2097419i32);
4124pub const D3D11_MESSAGE_ID_ENQUEUESETEVENT_NOT_SUPPORTED: D3D11_MESSAGE_ID =
4125 D3D11_MESSAGE_ID(3146070i32);
4126pub const D3D11_MESSAGE_ID_ENQUEUESETEVENT_OUTOFMEMORY_RETURN: D3D11_MESSAGE_ID =
4127 D3D11_MESSAGE_ID(2097420i32);
4128pub const D3D11_MESSAGE_ID_FINISHDISPLAYLIST_INVALID_CALL_RETURN: D3D11_MESSAGE_ID =
4129 D3D11_MESSAGE_ID(2097168i32);
4130pub const D3D11_MESSAGE_ID_FINISHDISPLAYLIST_ONIMMEDIATECONTEXT: D3D11_MESSAGE_ID =
4131 D3D11_MESSAGE_ID(2097166i32);
4132pub const D3D11_MESSAGE_ID_FINISHDISPLAYLIST_OUTOFMEMORY_RETURN: D3D11_MESSAGE_ID =
4133 D3D11_MESSAGE_ID(2097167i32);
4134pub const D3D11_MESSAGE_ID_FINISHSESSIONKEYREFRESH_NULLPARAM: D3D11_MESSAGE_ID =
4135 D3D11_MESSAGE_ID(3145989i32);
4136pub const D3D11_MESSAGE_ID_FLUSH1_INVALIDCONTEXTTYPE: D3D11_MESSAGE_ID =
4137 D3D11_MESSAGE_ID(3146223i32);
4138pub const D3D11_MESSAGE_ID_GEOMETRY_SHADER_NOT_SUPPORTED: D3D11_MESSAGE_ID =
4139 D3D11_MESSAGE_ID(1048619i32);
4140pub const D3D11_MESSAGE_ID_GETAUTHENTICATEDCHANNELCERTIFICATESIZE_INVALIDCHANNEL: D3D11_MESSAGE_ID =
4141 D3D11_MESSAGE_ID(3145999i32);
4142pub const D3D11_MESSAGE_ID_GETAUTHENTICATEDCHANNELCERTIFICATESIZE_NULLPARAM: D3D11_MESSAGE_ID =
4143 D3D11_MESSAGE_ID(3146000i32);
4144pub const D3D11_MESSAGE_ID_GETAUTHENTICATEDCHANNELCERTIFICATE_INVALIDCHANNEL: D3D11_MESSAGE_ID =
4145 D3D11_MESSAGE_ID(3146001i32);
4146pub const D3D11_MESSAGE_ID_GETAUTHENTICATEDCHANNELCERTIFICATE_NULLPARAM: D3D11_MESSAGE_ID =
4147 D3D11_MESSAGE_ID(3146002i32);
4148pub const D3D11_MESSAGE_ID_GETAUTHENTICATEDCHANNELCERTIFICATE_WRONGSIZE: D3D11_MESSAGE_ID =
4149 D3D11_MESSAGE_ID(3146003i32);
4150pub const D3D11_MESSAGE_ID_GETCONTENTPROTECTIONCAPS_NULLPARAM: D3D11_MESSAGE_ID =
4151 D3D11_MESSAGE_ID(3145992i32);
4152pub const D3D11_MESSAGE_ID_GETCRYPTOSESSIONCERTIFICATESIZE_NULLPARAM: D3D11_MESSAGE_ID =
4153 D3D11_MESSAGE_ID(3145955i32);
4154pub const D3D11_MESSAGE_ID_GETCRYPTOSESSIONCERTIFICATE_NULLPARAM: D3D11_MESSAGE_ID =
4155 D3D11_MESSAGE_ID(3145956i32);
4156pub const D3D11_MESSAGE_ID_GETCRYPTOSESSIONCERTIFICATE_WRONGSIZE: D3D11_MESSAGE_ID =
4157 D3D11_MESSAGE_ID(3145957i32);
4158pub const D3D11_MESSAGE_ID_GETCRYPTOSESSIONHANDLE_OUTOFMEMORY: D3D11_MESSAGE_ID =
4159 D3D11_MESSAGE_ID(3146025i32);
4160pub const D3D11_MESSAGE_ID_GETCRYPTOSESSIONHANDLE_WRONGSIZE: D3D11_MESSAGE_ID =
4161 D3D11_MESSAGE_ID(3145958i32);
4162pub const D3D11_MESSAGE_ID_GETCRYPTOSESSIONPRIVATEDATASIZE_INVALID_KEY_EXCHANGE_TYPE:
4163 D3D11_MESSAGE_ID = D3D11_MESSAGE_ID(3146116i32);
4164pub const D3D11_MESSAGE_ID_GETCRYPTOSESSIONPRIVATEDATASIZE_NULLPARAM: D3D11_MESSAGE_ID =
4165 D3D11_MESSAGE_ID(3146086i32);
4166pub const D3D11_MESSAGE_ID_GETCRYPTOTYPE_NULLPARAM: D3D11_MESSAGE_ID = D3D11_MESSAGE_ID(3145953i32);
4167pub const D3D11_MESSAGE_ID_GETDATAFORNEWHARDWAREKEY_NULLPARAM: D3D11_MESSAGE_ID =
4168 D3D11_MESSAGE_ID(3146084i32);
4169pub const D3D11_MESSAGE_ID_GETDC_INACCESSIBLE: D3D11_MESSAGE_ID = D3D11_MESSAGE_ID(3146065i32);
4170pub const D3D11_MESSAGE_ID_GETDECODERBUFFER_INVALIDBUFFER: D3D11_MESSAGE_ID =
4171 D3D11_MESSAGE_ID(3145778i32);
4172pub const D3D11_MESSAGE_ID_GETDECODERBUFFER_INVALIDTYPE: D3D11_MESSAGE_ID =
4173 D3D11_MESSAGE_ID(3145779i32);
4174pub const D3D11_MESSAGE_ID_GETDECODERBUFFER_LOCKED: D3D11_MESSAGE_ID = D3D11_MESSAGE_ID(3145780i32);
4175pub const D3D11_MESSAGE_ID_GETDECODERBUFFER_NULLPARAM: D3D11_MESSAGE_ID =
4176 D3D11_MESSAGE_ID(3145777i32);
4177pub const D3D11_MESSAGE_ID_GETDECODERCREATIONPARAMS_NULLPARAM: D3D11_MESSAGE_ID =
4178 D3D11_MESSAGE_ID(3145775i32);
4179pub const D3D11_MESSAGE_ID_GETDECODERDRIVERHANDLE_NULLPARAM: D3D11_MESSAGE_ID =
4180 D3D11_MESSAGE_ID(3145776i32);
4181pub const D3D11_MESSAGE_ID_GETDECODERPROFILE_NULLPARAM: D3D11_MESSAGE_ID =
4182 D3D11_MESSAGE_ID(3145954i32);
4183pub const D3D11_MESSAGE_ID_GETENCRYPTIONBLTKEY_INVALIDSIZE: D3D11_MESSAGE_ID =
4184 D3D11_MESSAGE_ID(3145991i32);
4185pub const D3D11_MESSAGE_ID_GETENCRYPTIONBLTKEY_NULLPARAM: D3D11_MESSAGE_ID =
4186 D3D11_MESSAGE_ID(3145990i32);
4187pub const D3D11_MESSAGE_ID_GETPRIVATEDATA_MOREDATA: D3D11_MESSAGE_ID = D3D11_MESSAGE_ID(51i32);
4188pub const D3D11_MESSAGE_ID_GETRESOURCETILING_NONTILED_RESOURCE: D3D11_MESSAGE_ID =
4189 D3D11_MESSAGE_ID(3146139i32);
4190pub const D3D11_MESSAGE_ID_GETVIDEODECODERCAPS_NULLPARAM: D3D11_MESSAGE_ID =
4191 D3D11_MESSAGE_ID(3146087i32);
4192pub const D3D11_MESSAGE_ID_GETVIDEODECODERCAPS_ZEROWIDTHHEIGHT: D3D11_MESSAGE_ID =
4193 D3D11_MESSAGE_ID(3146088i32);
4194pub const D3D11_MESSAGE_ID_GETVIDEODECODERCONFIGCOUNT_NULLPARAM: D3D11_MESSAGE_ID =
4195 D3D11_MESSAGE_ID(3145770i32);
4196pub const D3D11_MESSAGE_ID_GETVIDEODECODERCONFIGCOUNT_OUTOFMEMORY_RETURN: D3D11_MESSAGE_ID =
4197 D3D11_MESSAGE_ID(3145771i32);
4198pub const D3D11_MESSAGE_ID_GETVIDEODECODERCONFIG_INVALIDINDEX: D3D11_MESSAGE_ID =
4199 D3D11_MESSAGE_ID(3145773i32);
4200pub const D3D11_MESSAGE_ID_GETVIDEODECODERCONFIG_NULLPARAM: D3D11_MESSAGE_ID =
4201 D3D11_MESSAGE_ID(3145772i32);
4202pub const D3D11_MESSAGE_ID_GETVIDEODECODERCONFIG_OUTOFMEMORY_RETURN: D3D11_MESSAGE_ID =
4203 D3D11_MESSAGE_ID(3145774i32);
4204pub const D3D11_MESSAGE_ID_GETVIDEODECODERPROFILECOUNT_OUTOFMEMORY: D3D11_MESSAGE_ID =
4205 D3D11_MESSAGE_ID(3145764i32);
4206pub const D3D11_MESSAGE_ID_GETVIDEODECODERPROFILE_INVALIDINDEX: D3D11_MESSAGE_ID =
4207 D3D11_MESSAGE_ID(3145766i32);
4208pub const D3D11_MESSAGE_ID_GETVIDEODECODERPROFILE_NULLPARAM: D3D11_MESSAGE_ID =
4209 D3D11_MESSAGE_ID(3145765i32);
4210pub const D3D11_MESSAGE_ID_GETVIDEODECODERPROFILE_OUTOFMEMORY_RETURN: D3D11_MESSAGE_ID =
4211 D3D11_MESSAGE_ID(3145767i32);
4212pub const D3D11_MESSAGE_ID_GETVIDEOPROCESSORCAPS_NULLPARAM: D3D11_MESSAGE_ID =
4213 D3D11_MESSAGE_ID(3145800i32);
4214pub const D3D11_MESSAGE_ID_GETVIDEOPROCESSORCONTENTDESC_NULLPARAM: D3D11_MESSAGE_ID =
4215 D3D11_MESSAGE_ID(3145798i32);
4216pub const D3D11_MESSAGE_ID_GETVIDEOPROCESSORCUSTOMRATE_INVALIDINDEX: D3D11_MESSAGE_ID =
4217 D3D11_MESSAGE_ID(3145804i32);
4218pub const D3D11_MESSAGE_ID_GETVIDEOPROCESSORCUSTOMRATE_NULLPARAM: D3D11_MESSAGE_ID =
4219 D3D11_MESSAGE_ID(3145803i32);
4220pub const D3D11_MESSAGE_ID_GETVIDEOPROCESSORFILTERRANGE_NULLPARAM: D3D11_MESSAGE_ID =
4221 D3D11_MESSAGE_ID(3145805i32);
4222pub const D3D11_MESSAGE_ID_GETVIDEOPROCESSORFILTERRANGE_UNSUPPORTED: D3D11_MESSAGE_ID =
4223 D3D11_MESSAGE_ID(3145806i32);
4224pub const D3D11_MESSAGE_ID_GETVIDEOPROCESSORRATECONVERSIONCAPS_INVALIDINDEX: D3D11_MESSAGE_ID =
4225 D3D11_MESSAGE_ID(3145802i32);
4226pub const D3D11_MESSAGE_ID_GETVIDEOPROCESSORRATECONVERSIONCAPS_NULLPARAM: D3D11_MESSAGE_ID =
4227 D3D11_MESSAGE_ID(3145801i32);
4228pub const D3D11_MESSAGE_ID_GSSETCONSTANTBUFFERS_INVALIDBUFFER: D3D11_MESSAGE_ID =
4229 D3D11_MESSAGE_ID(250i32);
4230pub const D3D11_MESSAGE_ID_GSSETCONSTANTBUFFERS_INVALIDBUFFEROFFSETORCOUNT: D3D11_MESSAGE_ID =
4231 D3D11_MESSAGE_ID(3146019i32);
4232pub const D3D11_MESSAGE_ID_GSSETCONSTANTBUFFERS_UNBINDDELETINGOBJECT: D3D11_MESSAGE_ID =
4233 D3D11_MESSAGE_ID(39i32);
4234pub const D3D11_MESSAGE_ID_GSSETSAMPLERS_UNBINDDELETINGOBJECT: D3D11_MESSAGE_ID =
4235 D3D11_MESSAGE_ID(40i32);
4236pub const D3D11_MESSAGE_ID_GSSETSHADERRESOURCES_UNBINDDELETINGOBJECT: D3D11_MESSAGE_ID =
4237 D3D11_MESSAGE_ID(38i32);
4238pub const D3D11_MESSAGE_ID_GSSETSHADER_UNBINDDELETINGOBJECT: D3D11_MESSAGE_ID =
4239 D3D11_MESSAGE_ID(37i32);
4240pub const D3D11_MESSAGE_ID_HSSETCONSTANTBUFFERS_INVALIDBUFFER: D3D11_MESSAGE_ID =
4241 D3D11_MESSAGE_ID(2097183i32);
4242pub const D3D11_MESSAGE_ID_HSSETCONSTANTBUFFERS_INVALIDBUFFEROFFSETORCOUNT: D3D11_MESSAGE_ID =
4243 D3D11_MESSAGE_ID(3146018i32);
4244pub const D3D11_MESSAGE_ID_HSSETCONSTANTBUFFERS_UNBINDDELETINGOBJECT: D3D11_MESSAGE_ID =
4245 D3D11_MESSAGE_ID(2097176i32);
4246pub const D3D11_MESSAGE_ID_HSSETSAMPLERS_UNBINDDELETINGOBJECT: D3D11_MESSAGE_ID =
4247 D3D11_MESSAGE_ID(2097413i32);
4248pub const D3D11_MESSAGE_ID_HSSETSHADERRESOURCES_UNBINDDELETINGOBJECT: D3D11_MESSAGE_ID =
4249 D3D11_MESSAGE_ID(2097175i32);
4250pub const D3D11_MESSAGE_ID_HSSETSHADER_UNBINDDELETINGOBJECT: D3D11_MESSAGE_ID =
4251 D3D11_MESSAGE_ID(2097416i32);
4252pub const D3D11_MESSAGE_ID_IASETINDEXBUFFER_INVALIDBUFFER: D3D11_MESSAGE_ID =
4253 D3D11_MESSAGE_ID(241i32);
4254pub const D3D11_MESSAGE_ID_IASETINDEXBUFFER_UNBINDDELETINGOBJECT: D3D11_MESSAGE_ID =
4255 D3D11_MESSAGE_ID(32i32);
4256pub const D3D11_MESSAGE_ID_IASETINPUTLAYOUT_UNBINDDELETINGOBJECT: D3D11_MESSAGE_ID =
4257 D3D11_MESSAGE_ID(30i32);
4258pub const D3D11_MESSAGE_ID_IASETVERTEXBUFFERS_BAD_BUFFER_INDEX: D3D11_MESSAGE_ID =
4259 D3D11_MESSAGE_ID(1048592i32);
4260pub const D3D11_MESSAGE_ID_IASETVERTEXBUFFERS_INVALIDBUFFER: D3D11_MESSAGE_ID =
4261 D3D11_MESSAGE_ID(238i32);
4262pub const D3D11_MESSAGE_ID_IASETVERTEXBUFFERS_UNBINDDELETINGOBJECT: D3D11_MESSAGE_ID =
4263 D3D11_MESSAGE_ID(31i32);
4264pub const D3D11_MESSAGE_ID_INCOMPLETE_TRACKED_WORKLOAD_PAIR: D3D11_MESSAGE_ID =
4265 D3D11_MESSAGE_ID(3146276i32);
4266pub const D3D11_MESSAGE_ID_JPEGDECODE_1DESTUNSUPPORTEDFORMAT: D3D11_MESSAGE_ID =
4267 D3D11_MESSAGE_ID(3146194i32);
4268pub const D3D11_MESSAGE_ID_JPEGDECODE_3DESTUNSUPPORTEDFORMAT: D3D11_MESSAGE_ID =
4269 D3D11_MESSAGE_ID(3146195i32);
4270pub const D3D11_MESSAGE_ID_JPEGDECODE_BACKBUFFERNOTSUPPORTED: D3D11_MESSAGE_ID =
4271 D3D11_MESSAGE_ID(3146203i32);
4272pub const D3D11_MESSAGE_ID_JPEGDECODE_CHROMASIZEMISMATCH: D3D11_MESSAGE_ID =
4273 D3D11_MESSAGE_ID(3146190i32);
4274pub const D3D11_MESSAGE_ID_JPEGDECODE_DESTBOXESINTERSECT: D3D11_MESSAGE_ID =
4275 D3D11_MESSAGE_ID(3146182i32);
4276pub const D3D11_MESSAGE_ID_JPEGDECODE_DESTBOXNOT2D: D3D11_MESSAGE_ID = D3D11_MESSAGE_ID(3146180i32);
4277pub const D3D11_MESSAGE_ID_JPEGDECODE_DESTBOXNOTSUB: D3D11_MESSAGE_ID =
4278 D3D11_MESSAGE_ID(3146181i32);
4279pub const D3D11_MESSAGE_ID_JPEGDECODE_DESTINATIONNOT2D: D3D11_MESSAGE_ID =
4280 D3D11_MESSAGE_ID(3146173i32);
4281pub const D3D11_MESSAGE_ID_JPEGDECODE_DIMENSIONSTOOLARGE: D3D11_MESSAGE_ID =
4282 D3D11_MESSAGE_ID(3146171i32);
4283pub const D3D11_MESSAGE_ID_JPEGDECODE_EMPTYDESTBOX: D3D11_MESSAGE_ID = D3D11_MESSAGE_ID(3146179i32);
4284pub const D3D11_MESSAGE_ID_JPEGDECODE_FORMATUNSUPPORTED: D3D11_MESSAGE_ID =
4285 D3D11_MESSAGE_ID(3146176i32);
4286pub const D3D11_MESSAGE_ID_JPEGDECODE_FRACTIONALDOWNSCALETOLARGE: D3D11_MESSAGE_ID =
4287 D3D11_MESSAGE_ID(3146189i32);
4288pub const D3D11_MESSAGE_ID_JPEGDECODE_GUARDRECTSUNSUPPORTED: D3D11_MESSAGE_ID =
4289 D3D11_MESSAGE_ID(3146175i32);
4290pub const D3D11_MESSAGE_ID_JPEGDECODE_HAZARD: D3D11_MESSAGE_ID = D3D11_MESSAGE_ID(3146199i32);
4291pub const D3D11_MESSAGE_ID_JPEGDECODE_INVALIDCOMPONENTS: D3D11_MESSAGE_ID =
4292 D3D11_MESSAGE_ID(3146172i32);
4293pub const D3D11_MESSAGE_ID_JPEGDECODE_INVALIDCOPYFLAGS: D3D11_MESSAGE_ID =
4294 D3D11_MESSAGE_ID(3146198i32);
4295pub const D3D11_MESSAGE_ID_JPEGDECODE_INVALIDMIPLEVEL: D3D11_MESSAGE_ID =
4296 D3D11_MESSAGE_ID(3146178i32);
4297pub const D3D11_MESSAGE_ID_JPEGDECODE_INVALIDNUMDESTINATIONS: D3D11_MESSAGE_ID =
4298 D3D11_MESSAGE_ID(3146192i32);
4299pub const D3D11_MESSAGE_ID_JPEGDECODE_INVALIDSCANDATAOFFSET: D3D11_MESSAGE_ID =
4300 D3D11_MESSAGE_ID(3146169i32);
4301pub const D3D11_MESSAGE_ID_JPEGDECODE_INVALIDSOURCESIZE: D3D11_MESSAGE_ID =
4302 D3D11_MESSAGE_ID(3146197i32);
4303pub const D3D11_MESSAGE_ID_JPEGDECODE_INVALIDSUBRESOURCE: D3D11_MESSAGE_ID =
4304 D3D11_MESSAGE_ID(3146177i32);
4305pub const D3D11_MESSAGE_ID_JPEGDECODE_LUMACHROMASIZEMISMATCH: D3D11_MESSAGE_ID =
4306 D3D11_MESSAGE_ID(3146191i32);
4307pub const D3D11_MESSAGE_ID_JPEGDECODE_NONPOW2SCALEUNSUPPORTED: D3D11_MESSAGE_ID =
4308 D3D11_MESSAGE_ID(3146188i32);
4309pub const D3D11_MESSAGE_ID_JPEGDECODE_NOTSUPPORTED: D3D11_MESSAGE_ID = D3D11_MESSAGE_ID(3146170i32);
4310pub const D3D11_MESSAGE_ID_JPEGDECODE_OUTPUTDIMENSIONSTOOLARGE: D3D11_MESSAGE_ID =
4311 D3D11_MESSAGE_ID(3146187i32);
4312pub const D3D11_MESSAGE_ID_JPEGDECODE_SCALEUNSUPPORTED: D3D11_MESSAGE_ID =
4313 D3D11_MESSAGE_ID(3146196i32);
4314pub const D3D11_MESSAGE_ID_JPEGDECODE_SUBBOXUNSUPPORTED: D3D11_MESSAGE_ID =
4315 D3D11_MESSAGE_ID(3146193i32);
4316pub const D3D11_MESSAGE_ID_JPEGDECODE_TILEDRESOURCESUNSUPPORTED: D3D11_MESSAGE_ID =
4317 D3D11_MESSAGE_ID(3146174i32);
4318pub const D3D11_MESSAGE_ID_JPEGDECODE_UNSUPPORTEDDSTTEXTUREUSAGE: D3D11_MESSAGE_ID =
4319 D3D11_MESSAGE_ID(3146202i32);
4320pub const D3D11_MESSAGE_ID_JPEGDECODE_UNSUPPORTEDSRCBUFFERMISCFLAGS: D3D11_MESSAGE_ID =
4321 D3D11_MESSAGE_ID(3146201i32);
4322pub const D3D11_MESSAGE_ID_JPEGDECODE_UNSUPPORTEDSRCBUFFERUSAGE: D3D11_MESSAGE_ID =
4323 D3D11_MESSAGE_ID(3146200i32);
4324pub const D3D11_MESSAGE_ID_JPEGDECODE_UNSUPPRTEDCOPYFLAGS: D3D11_MESSAGE_ID =
4325 D3D11_MESSAGE_ID(3146204i32);
4326pub const D3D11_MESSAGE_ID_JPEGDECODE_XSUBSAMPLEMISMATCH: D3D11_MESSAGE_ID =
4327 D3D11_MESSAGE_ID(3146183i32);
4328pub const D3D11_MESSAGE_ID_JPEGDECODE_XSUBSAMPLEODD: D3D11_MESSAGE_ID =
4329 D3D11_MESSAGE_ID(3146185i32);
4330pub const D3D11_MESSAGE_ID_JPEGDECODE_YSUBSAMPLEMISMATCH: D3D11_MESSAGE_ID =
4331 D3D11_MESSAGE_ID(3146184i32);
4332pub const D3D11_MESSAGE_ID_JPEGDECODE_YSUBSAMPLEODD: D3D11_MESSAGE_ID =
4333 D3D11_MESSAGE_ID(3146186i32);
4334pub const D3D11_MESSAGE_ID_JPEGENCODE_BACKBUFFERNOTSUPPORTED: D3D11_MESSAGE_ID =
4335 D3D11_MESSAGE_ID(3146221i32);
4336pub const D3D11_MESSAGE_ID_JPEGENCODE_DIMENSIONSTOOLARGE: D3D11_MESSAGE_ID =
4337 D3D11_MESSAGE_ID(3146216i32);
4338pub const D3D11_MESSAGE_ID_JPEGENCODE_FORMATUNSUPPORTED: D3D11_MESSAGE_ID =
4339 D3D11_MESSAGE_ID(3146213i32);
4340pub const D3D11_MESSAGE_ID_JPEGENCODE_GUARDRECTSUNSUPPORTED: D3D11_MESSAGE_ID =
4341 D3D11_MESSAGE_ID(3146210i32);
4342pub const D3D11_MESSAGE_ID_JPEGENCODE_HAZARD: D3D11_MESSAGE_ID = D3D11_MESSAGE_ID(3146217i32);
4343pub const D3D11_MESSAGE_ID_JPEGENCODE_INVALIDCOMPONENTS: D3D11_MESSAGE_ID =
4344 D3D11_MESSAGE_ID(3146207i32);
4345pub const D3D11_MESSAGE_ID_JPEGENCODE_INVALIDMIPLEVEL: D3D11_MESSAGE_ID =
4346 D3D11_MESSAGE_ID(3146215i32);
4347pub const D3D11_MESSAGE_ID_JPEGENCODE_INVALIDSCANDATAOFFSET: D3D11_MESSAGE_ID =
4348 D3D11_MESSAGE_ID(3146206i32);
4349pub const D3D11_MESSAGE_ID_JPEGENCODE_INVALIDSUBRESOURCE: D3D11_MESSAGE_ID =
4350 D3D11_MESSAGE_ID(3146214i32);
4351pub const D3D11_MESSAGE_ID_JPEGENCODE_NOTSUPPORTED: D3D11_MESSAGE_ID = D3D11_MESSAGE_ID(3146205i32);
4352pub const D3D11_MESSAGE_ID_JPEGENCODE_SOURCENOT2D: D3D11_MESSAGE_ID = D3D11_MESSAGE_ID(3146208i32);
4353pub const D3D11_MESSAGE_ID_JPEGENCODE_TILEDRESOURCESUNSUPPORTED: D3D11_MESSAGE_ID =
4354 D3D11_MESSAGE_ID(3146209i32);
4355pub const D3D11_MESSAGE_ID_JPEGENCODE_UNSUPPORTEDDSTBUFFERMISCFLAGS: D3D11_MESSAGE_ID =
4356 D3D11_MESSAGE_ID(3146219i32);
4357pub const D3D11_MESSAGE_ID_JPEGENCODE_UNSUPPORTEDDSTBUFFERUSAGE: D3D11_MESSAGE_ID =
4358 D3D11_MESSAGE_ID(3146218i32);
4359pub const D3D11_MESSAGE_ID_JPEGENCODE_UNSUPPORTEDSRCTEXTUREUSAGE: D3D11_MESSAGE_ID =
4360 D3D11_MESSAGE_ID(3146220i32);
4361pub const D3D11_MESSAGE_ID_JPEGENCODE_XSUBSAMPLEMISMATCH: D3D11_MESSAGE_ID =
4362 D3D11_MESSAGE_ID(3146211i32);
4363pub const D3D11_MESSAGE_ID_JPEGENCODE_YSUBSAMPLEMISMATCH: D3D11_MESSAGE_ID =
4364 D3D11_MESSAGE_ID(3146212i32);
4365pub const D3D11_MESSAGE_ID_LIVE_AUTHENTICATEDCHANNEL: D3D11_MESSAGE_ID =
4366 D3D11_MESSAGE_ID(3146150i32);
4367pub const D3D11_MESSAGE_ID_LIVE_BLENDSTATE: D3D11_MESSAGE_ID = D3D11_MESSAGE_ID(435i32);
4368pub const D3D11_MESSAGE_ID_LIVE_BLENDSTATE_WIN7: D3D11_MESSAGE_ID = D3D11_MESSAGE_ID(2097271i32);
4369pub const D3D11_MESSAGE_ID_LIVE_BUFFER: D3D11_MESSAGE_ID = D3D11_MESSAGE_ID(423i32);
4370pub const D3D11_MESSAGE_ID_LIVE_BUFFER_WIN7: D3D11_MESSAGE_ID = D3D11_MESSAGE_ID(2097229i32);
4371pub const D3D11_MESSAGE_ID_LIVE_CLASSINSTANCE: D3D11_MESSAGE_ID = D3D11_MESSAGE_ID(2097291i32);
4372pub const D3D11_MESSAGE_ID_LIVE_CLASSLINKAGE: D3D11_MESSAGE_ID = D3D11_MESSAGE_ID(2097294i32);
4373pub const D3D11_MESSAGE_ID_LIVE_COMMANDLIST: D3D11_MESSAGE_ID = D3D11_MESSAGE_ID(2097288i32);
4374pub const D3D11_MESSAGE_ID_LIVE_COMPUTESHADER: D3D11_MESSAGE_ID = D3D11_MESSAGE_ID(2097299i32);
4375pub const D3D11_MESSAGE_ID_LIVE_CONTEXT: D3D11_MESSAGE_ID = D3D11_MESSAGE_ID(2097226i32);
4376pub const D3D11_MESSAGE_ID_LIVE_COUNTER: D3D11_MESSAGE_ID = D3D11_MESSAGE_ID(440i32);
4377pub const D3D11_MESSAGE_ID_LIVE_CRYPTOSESSION: D3D11_MESSAGE_ID = D3D11_MESSAGE_ID(3146149i32);
4378pub const D3D11_MESSAGE_ID_LIVE_DECODEROUTPUTVIEW: D3D11_MESSAGE_ID = D3D11_MESSAGE_ID(3145739i32);
4379pub const D3D11_MESSAGE_ID_LIVE_DEPTHSTENCILSTATE: D3D11_MESSAGE_ID = D3D11_MESSAGE_ID(436i32);
4380pub const D3D11_MESSAGE_ID_LIVE_DEPTHSTENCILSTATE_WIN7: D3D11_MESSAGE_ID =
4381 D3D11_MESSAGE_ID(2097274i32);
4382pub const D3D11_MESSAGE_ID_LIVE_DEPTHSTENCILVIEW: D3D11_MESSAGE_ID = D3D11_MESSAGE_ID(429i32);
4383pub const D3D11_MESSAGE_ID_LIVE_DEPTHSTENCILVIEW_WIN7: D3D11_MESSAGE_ID =
4384 D3D11_MESSAGE_ID(2097247i32);
4385pub const D3D11_MESSAGE_ID_LIVE_DEVICE: D3D11_MESSAGE_ID = D3D11_MESSAGE_ID(441i32);
4386pub const D3D11_MESSAGE_ID_LIVE_DEVICECONTEXTSTATE: D3D11_MESSAGE_ID = D3D11_MESSAGE_ID(3145742i32);
4387pub const D3D11_MESSAGE_ID_LIVE_DEVICE_WIN7: D3D11_MESSAGE_ID = D3D11_MESSAGE_ID(2097296i32);
4388pub const D3D11_MESSAGE_ID_LIVE_DOMAINSHADER: D3D11_MESSAGE_ID = D3D11_MESSAGE_ID(2097256i32);
4389pub const D3D11_MESSAGE_ID_LIVE_FENCE: D3D11_MESSAGE_ID = D3D11_MESSAGE_ID(3146251i32);
4390pub const D3D11_MESSAGE_ID_LIVE_GEOMETRYSHADER: D3D11_MESSAGE_ID = D3D11_MESSAGE_ID(431i32);
4391pub const D3D11_MESSAGE_ID_LIVE_GEOMETRYSHADER_WIN7: D3D11_MESSAGE_ID =
4392 D3D11_MESSAGE_ID(2097259i32);
4393pub const D3D11_MESSAGE_ID_LIVE_HULLSHADER: D3D11_MESSAGE_ID = D3D11_MESSAGE_ID(2097253i32);
4394pub const D3D11_MESSAGE_ID_LIVE_INPUTLAYOUT: D3D11_MESSAGE_ID = D3D11_MESSAGE_ID(433i32);
4395pub const D3D11_MESSAGE_ID_LIVE_INPUTLAYOUT_WIN7: D3D11_MESSAGE_ID = D3D11_MESSAGE_ID(2097265i32);
4396pub const D3D11_MESSAGE_ID_LIVE_OBJECT_SUMMARY: D3D11_MESSAGE_ID = D3D11_MESSAGE_ID(422i32);
4397pub const D3D11_MESSAGE_ID_LIVE_OBJECT_SUMMARY_WIN7: D3D11_MESSAGE_ID =
4398 D3D11_MESSAGE_ID(2097297i32);
4399pub const D3D11_MESSAGE_ID_LIVE_PIXELSHADER: D3D11_MESSAGE_ID = D3D11_MESSAGE_ID(432i32);
4400pub const D3D11_MESSAGE_ID_LIVE_PIXELSHADER_WIN7: D3D11_MESSAGE_ID = D3D11_MESSAGE_ID(2097262i32);
4401pub const D3D11_MESSAGE_ID_LIVE_PREDICATE: D3D11_MESSAGE_ID = D3D11_MESSAGE_ID(439i32);
4402pub const D3D11_MESSAGE_ID_LIVE_PREDICATE_WIN7: D3D11_MESSAGE_ID = D3D11_MESSAGE_ID(2097283i32);
4403pub const D3D11_MESSAGE_ID_LIVE_PROCESSORINPUTVIEW: D3D11_MESSAGE_ID = D3D11_MESSAGE_ID(3145740i32);
4404pub const D3D11_MESSAGE_ID_LIVE_PROCESSOROUTPUTVIEW: D3D11_MESSAGE_ID =
4405 D3D11_MESSAGE_ID(3145741i32);
4406pub const D3D11_MESSAGE_ID_LIVE_QUERY: D3D11_MESSAGE_ID = D3D11_MESSAGE_ID(438i32);
4407pub const D3D11_MESSAGE_ID_LIVE_QUERY_WIN7: D3D11_MESSAGE_ID = D3D11_MESSAGE_ID(2097280i32);
4408pub const D3D11_MESSAGE_ID_LIVE_RASTERIZERSTATE: D3D11_MESSAGE_ID = D3D11_MESSAGE_ID(437i32);
4409pub const D3D11_MESSAGE_ID_LIVE_RASTERIZERSTATE_WIN7: D3D11_MESSAGE_ID =
4410 D3D11_MESSAGE_ID(2097277i32);
4411pub const D3D11_MESSAGE_ID_LIVE_RENDERTARGETVIEW: D3D11_MESSAGE_ID = D3D11_MESSAGE_ID(428i32);
4412pub const D3D11_MESSAGE_ID_LIVE_RENDERTARGETVIEW_WIN7: D3D11_MESSAGE_ID =
4413 D3D11_MESSAGE_ID(2097244i32);
4414pub const D3D11_MESSAGE_ID_LIVE_SAMPLER: D3D11_MESSAGE_ID = D3D11_MESSAGE_ID(434i32);
4415pub const D3D11_MESSAGE_ID_LIVE_SAMPLER_WIN7: D3D11_MESSAGE_ID = D3D11_MESSAGE_ID(2097268i32);
4416pub const D3D11_MESSAGE_ID_LIVE_SHADERRESOURCEVIEW: D3D11_MESSAGE_ID = D3D11_MESSAGE_ID(427i32);
4417pub const D3D11_MESSAGE_ID_LIVE_SHADERRESOURCEVIEW_WIN7: D3D11_MESSAGE_ID =
4418 D3D11_MESSAGE_ID(2097241i32);
4419pub const D3D11_MESSAGE_ID_LIVE_SWAPCHAIN: D3D11_MESSAGE_ID = D3D11_MESSAGE_ID(442i32);
4420pub const D3D11_MESSAGE_ID_LIVE_SYNCHRONIZEDCHANNEL: D3D11_MESSAGE_ID =
4421 D3D11_MESSAGE_ID(3146254i32);
4422pub const D3D11_MESSAGE_ID_LIVE_TEXTURE1D: D3D11_MESSAGE_ID = D3D11_MESSAGE_ID(424i32);
4423pub const D3D11_MESSAGE_ID_LIVE_TEXTURE1D_WIN7: D3D11_MESSAGE_ID = D3D11_MESSAGE_ID(2097232i32);
4424pub const D3D11_MESSAGE_ID_LIVE_TEXTURE2D: D3D11_MESSAGE_ID = D3D11_MESSAGE_ID(425i32);
4425pub const D3D11_MESSAGE_ID_LIVE_TEXTURE2D_WIN7: D3D11_MESSAGE_ID = D3D11_MESSAGE_ID(2097235i32);
4426pub const D3D11_MESSAGE_ID_LIVE_TEXTURE3D: D3D11_MESSAGE_ID = D3D11_MESSAGE_ID(426i32);
4427pub const D3D11_MESSAGE_ID_LIVE_TEXTURE3D_WIN7: D3D11_MESSAGE_ID = D3D11_MESSAGE_ID(2097238i32);
4428pub const D3D11_MESSAGE_ID_LIVE_TRACKEDWORKLOAD: D3D11_MESSAGE_ID = D3D11_MESSAGE_ID(3146268i32);
4429pub const D3D11_MESSAGE_ID_LIVE_UNORDEREDACCESSVIEW: D3D11_MESSAGE_ID =
4430 D3D11_MESSAGE_ID(2097302i32);
4431pub const D3D11_MESSAGE_ID_LIVE_VERTEXSHADER: D3D11_MESSAGE_ID = D3D11_MESSAGE_ID(430i32);
4432pub const D3D11_MESSAGE_ID_LIVE_VERTEXSHADER_WIN7: D3D11_MESSAGE_ID = D3D11_MESSAGE_ID(2097250i32);
4433pub const D3D11_MESSAGE_ID_LIVE_VIDEODECODER: D3D11_MESSAGE_ID = D3D11_MESSAGE_ID(3145736i32);
4434pub const D3D11_MESSAGE_ID_LIVE_VIDEOPROCESSOR: D3D11_MESSAGE_ID = D3D11_MESSAGE_ID(3145738i32);
4435pub const D3D11_MESSAGE_ID_LIVE_VIDEOPROCESSORENUM: D3D11_MESSAGE_ID = D3D11_MESSAGE_ID(3145737i32);
4436pub const D3D11_MESSAGE_ID_MESSAGE_REPORTING_OUTOFMEMORY: D3D11_MESSAGE_ID =
4437 D3D11_MESSAGE_ID(29i32);
4438pub const D3D11_MESSAGE_ID_MULTIPLE_TRACKED_WORKLOADS: D3D11_MESSAGE_ID =
4439 D3D11_MESSAGE_ID(3146274i32);
4440pub const D3D11_MESSAGE_ID_MULTIPLE_TRACKED_WORKLOAD_PAIRS: D3D11_MESSAGE_ID =
4441 D3D11_MESSAGE_ID(3146275i32);
4442pub const D3D11_MESSAGE_ID_NEED_TO_CALL_TILEDRESOURCEBARRIER: D3D11_MESSAGE_ID =
4443 D3D11_MESSAGE_ID(3146141i32);
4444pub const D3D11_MESSAGE_ID_NEGOTIATEAUTHENTICATEDCHANNELKEYEXCHANGE_INVALIDCHANNEL:
4445 D3D11_MESSAGE_ID = D3D11_MESSAGE_ID(3146004i32);
4446pub const D3D11_MESSAGE_ID_NEGOTIATEAUTHENTICATEDCHANNELKEYEXCHANGE_INVALIDSIZE: D3D11_MESSAGE_ID =
4447 D3D11_MESSAGE_ID(3146023i32);
4448pub const D3D11_MESSAGE_ID_NEGOTIATEAUTHENTICATEDCHANNELKEYEXCHANGE_NULLPARAM: D3D11_MESSAGE_ID =
4449 D3D11_MESSAGE_ID(3146005i32);
4450pub const D3D11_MESSAGE_ID_NEGOTIATECRPYTOSESSIONKEYEXCHANGE_INVALIDSIZE: D3D11_MESSAGE_ID =
4451 D3D11_MESSAGE_ID(3146022i32);
4452pub const D3D11_MESSAGE_ID_NEGOTIATECRPYTOSESSIONKEYEXCHANGE_NULLPARAM: D3D11_MESSAGE_ID =
4453 D3D11_MESSAGE_ID(3145959i32);
4454pub const D3D11_MESSAGE_ID_NEGOTIATECRYPTOSESSIONKEYEXCHANGEMT_INVALIDKEYEXCHANGETYPE:
4455 D3D11_MESSAGE_ID = D3D11_MESSAGE_ID(3146259i32);
4456pub const D3D11_MESSAGE_ID_NEGOTIATECRYPTOSESSIONKEYEXCHANGEMT_NOT_SUPPORTED: D3D11_MESSAGE_ID =
4457 D3D11_MESSAGE_ID(3146260i32);
4458pub const D3D11_MESSAGE_ID_NO_TRACKED_WORKLOAD_SLOT_AVAILABLE: D3D11_MESSAGE_ID =
4459 D3D11_MESSAGE_ID(3146281i32);
4460pub const D3D11_MESSAGE_ID_NULL_TILE_MAPPING_ACCESS_ERROR: D3D11_MESSAGE_ID =
4461 D3D11_MESSAGE_ID(3146132i32);
4462pub const D3D11_MESSAGE_ID_NULL_TILE_MAPPING_ACCESS_WARNING: D3D11_MESSAGE_ID =
4463 D3D11_MESSAGE_ID(3146131i32);
4464pub const D3D11_MESSAGE_ID_OFFERRELEASE_NOT_SUPPORTED: D3D11_MESSAGE_ID =
4465 D3D11_MESSAGE_ID(3146071i32);
4466pub const D3D11_MESSAGE_ID_OFFERRESOURCES_INACCESSIBLE: D3D11_MESSAGE_ID =
4467 D3D11_MESSAGE_ID(3146072i32);
4468pub const D3D11_MESSAGE_ID_OFFERRESOURCES_INVALIDPRIORITY: D3D11_MESSAGE_ID =
4469 D3D11_MESSAGE_ID(3146024i32);
4470pub const D3D11_MESSAGE_ID_OFFERRESOURCES_INVALIDRESOURCE: D3D11_MESSAGE_ID =
4471 D3D11_MESSAGE_ID(2097412i32);
4472pub const D3D11_MESSAGE_ID_OMSETBLENDSTATE_UNBINDDELETINGOBJECT: D3D11_MESSAGE_ID =
4473 D3D11_MESSAGE_ID(47i32);
4474pub const D3D11_MESSAGE_ID_OMSETDEPTHSTENCILSTATE_UNBINDDELETINGOBJECT: D3D11_MESSAGE_ID =
4475 D3D11_MESSAGE_ID(48i32);
4476pub const D3D11_MESSAGE_ID_OMSETDEPTHSTENCIL_UNBINDDELETINGOBJECT: D3D11_MESSAGE_ID =
4477 D3D11_MESSAGE_ID(2097368i32);
4478pub const D3D11_MESSAGE_ID_OMSETRENDERTARGETS_INVALIDVIEW: D3D11_MESSAGE_ID =
4479 D3D11_MESSAGE_ID(388i32);
4480pub const D3D11_MESSAGE_ID_OMSETRENDERTARGETS_NO_DIFFERING_BIT_DEPTHS: D3D11_MESSAGE_ID =
4481 D3D11_MESSAGE_ID(1048591i32);
4482pub const D3D11_MESSAGE_ID_OMSETRENDERTARGETS_NO_SRGB_MRT: D3D11_MESSAGE_ID =
4483 D3D11_MESSAGE_ID(1048636i32);
4484pub const D3D11_MESSAGE_ID_OMSETRENDERTARGETS_TOO_MANY_RENDER_TARGETS: D3D11_MESSAGE_ID =
4485 D3D11_MESSAGE_ID(1048590i32);
4486pub const D3D11_MESSAGE_ID_OMSETRENDERTARGETS_UNBINDDELETINGOBJECT: D3D11_MESSAGE_ID =
4487 D3D11_MESSAGE_ID(49i32);
4488pub const D3D11_MESSAGE_ID_OUT_OF_ORDER_TRACKED_WORKLOAD_PAIR: D3D11_MESSAGE_ID =
4489 D3D11_MESSAGE_ID(3146277i32);
4490pub const D3D11_MESSAGE_ID_PREDICATE_BEGIN_DURING_PREDICATION: D3D11_MESSAGE_ID =
4491 D3D11_MESSAGE_ID(406i32);
4492pub const D3D11_MESSAGE_ID_PREDICATE_END_DURING_PREDICATION: D3D11_MESSAGE_ID =
4493 D3D11_MESSAGE_ID(409i32);
4494pub const D3D11_MESSAGE_ID_PSSETCONSTANTBUFFERS_INVALIDBUFFER: D3D11_MESSAGE_ID =
4495 D3D11_MESSAGE_ID(256i32);
4496pub const D3D11_MESSAGE_ID_PSSETCONSTANTBUFFERS_INVALIDBUFFEROFFSETORCOUNT: D3D11_MESSAGE_ID =
4497 D3D11_MESSAGE_ID(3146020i32);
4498pub const D3D11_MESSAGE_ID_PSSETCONSTANTBUFFERS_UNBINDDELETINGOBJECT: D3D11_MESSAGE_ID =
4499 D3D11_MESSAGE_ID(44i32);
4500pub const D3D11_MESSAGE_ID_PSSETSAMPLERS_TOO_MANY_SAMPLERS: D3D11_MESSAGE_ID =
4501 D3D11_MESSAGE_ID(1048584i32);
4502pub const D3D11_MESSAGE_ID_PSSETSAMPLERS_UNBINDDELETINGOBJECT: D3D11_MESSAGE_ID =
4503 D3D11_MESSAGE_ID(45i32);
4504pub const D3D11_MESSAGE_ID_PSSETSHADERRESOURCES_UNBINDDELETINGOBJECT: D3D11_MESSAGE_ID =
4505 D3D11_MESSAGE_ID(43i32);
4506pub const D3D11_MESSAGE_ID_PSSETSHADER_UNBINDDELETINGOBJECT: D3D11_MESSAGE_ID =
4507 D3D11_MESSAGE_ID(42i32);
4508pub const D3D11_MESSAGE_ID_PSSETUNORDEREDACCESSVIEWS_UNBINDDELETINGOBJECT: D3D11_MESSAGE_ID =
4509 D3D11_MESSAGE_ID(2097350i32);
4510pub const D3D11_MESSAGE_ID_QUERYAUTHENTICATEDCHANNEL_INVALIDPROCESSINDEX: D3D11_MESSAGE_ID =
4511 D3D11_MESSAGE_ID(3146010i32);
4512pub const D3D11_MESSAGE_ID_QUERYAUTHENTICATEDCHANNEL_NULLPARAM: D3D11_MESSAGE_ID =
4513 D3D11_MESSAGE_ID(3146006i32);
4514pub const D3D11_MESSAGE_ID_QUERYAUTHENTICATEDCHANNEL_UNSUPPORTEDQUERY: D3D11_MESSAGE_ID =
4515 D3D11_MESSAGE_ID(3146008i32);
4516pub const D3D11_MESSAGE_ID_QUERYAUTHENTICATEDCHANNEL_WRONGCHANNEL: D3D11_MESSAGE_ID =
4517 D3D11_MESSAGE_ID(3146007i32);
4518pub const D3D11_MESSAGE_ID_QUERYAUTHENTICATEDCHANNEL_WRONGSIZE: D3D11_MESSAGE_ID =
4519 D3D11_MESSAGE_ID(3146009i32);
4520pub const D3D11_MESSAGE_ID_QUERY_BEGIN_ABANDONING_PREVIOUS_RESULTS: D3D11_MESSAGE_ID =
4521 D3D11_MESSAGE_ID(408i32);
4522pub const D3D11_MESSAGE_ID_QUERY_BEGIN_DUPLICATE: D3D11_MESSAGE_ID = D3D11_MESSAGE_ID(407i32);
4523pub const D3D11_MESSAGE_ID_QUERY_BEGIN_UNSUPPORTED: D3D11_MESSAGE_ID = D3D11_MESSAGE_ID(405i32);
4524pub const D3D11_MESSAGE_ID_QUERY_END_ABANDONING_PREVIOUS_RESULTS: D3D11_MESSAGE_ID =
4525 D3D11_MESSAGE_ID(410i32);
4526pub const D3D11_MESSAGE_ID_QUERY_END_WITHOUT_BEGIN: D3D11_MESSAGE_ID = D3D11_MESSAGE_ID(411i32);
4527pub const D3D11_MESSAGE_ID_QUERY_GETDATA_INVALID_CALL: D3D11_MESSAGE_ID = D3D11_MESSAGE_ID(414i32);
4528pub const D3D11_MESSAGE_ID_QUERY_GETDATA_INVALID_DATASIZE: D3D11_MESSAGE_ID =
4529 D3D11_MESSAGE_ID(412i32);
4530pub const D3D11_MESSAGE_ID_QUERY_GETDATA_INVALID_FLAGS: D3D11_MESSAGE_ID = D3D11_MESSAGE_ID(413i32);
4531pub const D3D11_MESSAGE_ID_RECOMMENDVIDEODECODERDOWNSAMPLING_INVALIDCOLORSPACE: D3D11_MESSAGE_ID =
4532 D3D11_MESSAGE_ID(3146107i32);
4533pub const D3D11_MESSAGE_ID_RECOMMENDVIDEODECODERDOWNSAMPLING_NULLPARAM: D3D11_MESSAGE_ID =
4534 D3D11_MESSAGE_ID(3146106i32);
4535pub const D3D11_MESSAGE_ID_RECOMMENDVIDEODECODERDOWNSAMPLING_ZEROWIDTHHEIGHT: D3D11_MESSAGE_ID =
4536 D3D11_MESSAGE_ID(3146108i32);
4537pub const D3D11_MESSAGE_ID_REF_ACCESSING_INDEXABLE_TEMP_OUT_OF_RANGE: D3D11_MESSAGE_ID =
4538 D3D11_MESSAGE_ID(331i32);
4539pub const D3D11_MESSAGE_ID_REF_HARDWARE_EXCEPTION: D3D11_MESSAGE_ID = D3D11_MESSAGE_ID(330i32);
4540pub const D3D11_MESSAGE_ID_REF_INFO: D3D11_MESSAGE_ID = D3D11_MESSAGE_ID(334i32);
4541pub const D3D11_MESSAGE_ID_REF_KMDRIVER_EXCEPTION: D3D11_MESSAGE_ID = D3D11_MESSAGE_ID(329i32);
4542pub const D3D11_MESSAGE_ID_REF_OUT_OF_MEMORY: D3D11_MESSAGE_ID = D3D11_MESSAGE_ID(333i32);
4543pub const D3D11_MESSAGE_ID_REF_PROBLEM_PARSING_SHADER: D3D11_MESSAGE_ID = D3D11_MESSAGE_ID(332i32);
4544pub const D3D11_MESSAGE_ID_REF_SIMULATING_INFINITELY_FAST_HARDWARE: D3D11_MESSAGE_ID =
4545 D3D11_MESSAGE_ID(326i32);
4546pub const D3D11_MESSAGE_ID_REF_THREADING_MODE: D3D11_MESSAGE_ID = D3D11_MESSAGE_ID(327i32);
4547pub const D3D11_MESSAGE_ID_REF_UMDRIVER_EXCEPTION: D3D11_MESSAGE_ID = D3D11_MESSAGE_ID(328i32);
4548pub const D3D11_MESSAGE_ID_REF_WARNING: D3D11_MESSAGE_ID = D3D11_MESSAGE_ID(2097407i32);
4549pub const D3D11_MESSAGE_ID_REF_WARNING_ATOMIC_INCONSISTENT: D3D11_MESSAGE_ID =
4550 D3D11_MESSAGE_ID(3145946i32);
4551pub const D3D11_MESSAGE_ID_REF_WARNING_RAW_HAZARD: D3D11_MESSAGE_ID = D3D11_MESSAGE_ID(3145948i32);
4552pub const D3D11_MESSAGE_ID_REF_WARNING_READING_UNINITIALIZED_RESOURCE: D3D11_MESSAGE_ID =
4553 D3D11_MESSAGE_ID(3145947i32);
4554pub const D3D11_MESSAGE_ID_REF_WARNING_WAR_HAZARD: D3D11_MESSAGE_ID = D3D11_MESSAGE_ID(3145949i32);
4555pub const D3D11_MESSAGE_ID_REF_WARNING_WAW_HAZARD: D3D11_MESSAGE_ID = D3D11_MESSAGE_ID(3145950i32);
4556pub const D3D11_MESSAGE_ID_RELEASEDECODERBUFFER_INVALIDTYPE: D3D11_MESSAGE_ID =
4557 D3D11_MESSAGE_ID(3145782i32);
4558pub const D3D11_MESSAGE_ID_RELEASEDECODERBUFFER_NOTLOCKED: D3D11_MESSAGE_ID =
4559 D3D11_MESSAGE_ID(3145783i32);
4560pub const D3D11_MESSAGE_ID_RELEASEDECODERBUFFER_NULLPARAM: D3D11_MESSAGE_ID =
4561 D3D11_MESSAGE_ID(3145781i32);
4562pub const D3D11_MESSAGE_ID_RESIZETILEPOOL_INVALID_PARAMETER: D3D11_MESSAGE_ID =
4563 D3D11_MESSAGE_ID(3146129i32);
4564pub const D3D11_MESSAGE_ID_RESIZETILEPOOL_SHRINK_WITH_MAPPINGS_STILL_DEFINED_PAST_END:
4565 D3D11_MESSAGE_ID = D3D11_MESSAGE_ID(3146140i32);
4566pub const D3D11_MESSAGE_ID_RESOURCE_MAP_ALREADYMAPPED: D3D11_MESSAGE_ID =
4567 D3D11_MESSAGE_ID(2097213i32);
4568pub const D3D11_MESSAGE_ID_RESOURCE_MAP_DEVICEREMOVED_RETURN: D3D11_MESSAGE_ID =
4569 D3D11_MESSAGE_ID(2097214i32);
4570pub const D3D11_MESSAGE_ID_RESOURCE_MAP_INVALIDFLAGS: D3D11_MESSAGE_ID =
4571 D3D11_MESSAGE_ID(2097212i32);
4572pub const D3D11_MESSAGE_ID_RESOURCE_MAP_INVALIDMAPTYPE: D3D11_MESSAGE_ID =
4573 D3D11_MESSAGE_ID(2097210i32);
4574pub const D3D11_MESSAGE_ID_RESOURCE_MAP_INVALIDSUBRESOURCE: D3D11_MESSAGE_ID =
4575 D3D11_MESSAGE_ID(2097211i32);
4576pub const D3D11_MESSAGE_ID_RESOURCE_MAP_OUTOFMEMORY_RETURN: D3D11_MESSAGE_ID =
4577 D3D11_MESSAGE_ID(2097215i32);
4578pub const D3D11_MESSAGE_ID_RESOURCE_MAP_WITHOUT_INITIAL_DISCARD: D3D11_MESSAGE_ID =
4579 D3D11_MESSAGE_ID(2097216i32);
4580pub const D3D11_MESSAGE_ID_RESOURCE_UNMAP_INVALIDSUBRESOURCE: D3D11_MESSAGE_ID =
4581 D3D11_MESSAGE_ID(2097217i32);
4582pub const D3D11_MESSAGE_ID_RESOURCE_UNMAP_NOTMAPPED: D3D11_MESSAGE_ID =
4583 D3D11_MESSAGE_ID(2097218i32);
4584pub const D3D11_MESSAGE_ID_RSSETSTATE_UNBINDDELETINGOBJECT: D3D11_MESSAGE_ID =
4585 D3D11_MESSAGE_ID(46i32);
4586pub const D3D11_MESSAGE_ID_SETBLENDSTATE_SAMPLE_MASK_CANNOT_BE_ZERO: D3D11_MESSAGE_ID =
4587 D3D11_MESSAGE_ID(1048629i32);
4588pub const D3D11_MESSAGE_ID_SETEXCEPTIONMODE_DEVICEREMOVED_RETURN: D3D11_MESSAGE_ID =
4589 D3D11_MESSAGE_ID(325i32);
4590pub const D3D11_MESSAGE_ID_SETEXCEPTIONMODE_INVALIDARG_RETURN: D3D11_MESSAGE_ID =
4591 D3D11_MESSAGE_ID(324i32);
4592pub const D3D11_MESSAGE_ID_SETEXCEPTIONMODE_UNRECOGNIZEDFLAGS: D3D11_MESSAGE_ID =
4593 D3D11_MESSAGE_ID(323i32);
4594pub const D3D11_MESSAGE_ID_SETPREDICATION_INVALID_PREDICATE_STATE: D3D11_MESSAGE_ID =
4595 D3D11_MESSAGE_ID(404i32);
4596pub const D3D11_MESSAGE_ID_SETPREDICATION_UNBINDDELETINGOBJECT: D3D11_MESSAGE_ID =
4597 D3D11_MESSAGE_ID(50i32);
4598pub const D3D11_MESSAGE_ID_SETPRIVATEDATA_CHANGINGPARAMS: D3D11_MESSAGE_ID =
4599 D3D11_MESSAGE_ID(55i32);
4600pub const D3D11_MESSAGE_ID_SETPRIVATEDATA_INVALIDFLAGS: D3D11_MESSAGE_ID = D3D11_MESSAGE_ID(54i32);
4601pub const D3D11_MESSAGE_ID_SETPRIVATEDATA_INVALIDFREEDATA: D3D11_MESSAGE_ID =
4602 D3D11_MESSAGE_ID(52i32);
4603pub const D3D11_MESSAGE_ID_SETPRIVATEDATA_INVALIDIUNKNOWN: D3D11_MESSAGE_ID =
4604 D3D11_MESSAGE_ID(53i32);
4605pub const D3D11_MESSAGE_ID_SETPRIVATEDATA_OUTOFMEMORY: D3D11_MESSAGE_ID = D3D11_MESSAGE_ID(56i32);
4606pub const D3D11_MESSAGE_ID_SHADERRESOURCEVIEW_GETDESC_LEGACY: D3D11_MESSAGE_ID =
4607 D3D11_MESSAGE_ID(393i32);
4608pub const D3D11_MESSAGE_ID_SHADER_ABORT: D3D11_MESSAGE_ID = D3D11_MESSAGE_ID(2097409i32);
4609pub const D3D11_MESSAGE_ID_SHADER_ERROR: D3D11_MESSAGE_ID = D3D11_MESSAGE_ID(2097411i32);
4610pub const D3D11_MESSAGE_ID_SHADER_MESSAGE: D3D11_MESSAGE_ID = D3D11_MESSAGE_ID(2097410i32);
4611pub const D3D11_MESSAGE_ID_SLOT_ZERO_MUST_BE_D3D10_INPUT_PER_VERTEX_DATA: D3D11_MESSAGE_ID =
4612 D3D11_MESSAGE_ID(1048633i32);
4613pub const D3D11_MESSAGE_ID_SOSETTARGETS_INVALIDBUFFER: D3D11_MESSAGE_ID = D3D11_MESSAGE_ID(253i32);
4614pub const D3D11_MESSAGE_ID_SOSETTARGETS_UNBINDDELETINGOBJECT: D3D11_MESSAGE_ID =
4615 D3D11_MESSAGE_ID(41i32);
4616pub const D3D11_MESSAGE_ID_STARTSESSIONKEYREFRESH_INVALIDSIZE: D3D11_MESSAGE_ID =
4617 D3D11_MESSAGE_ID(3145988i32);
4618pub const D3D11_MESSAGE_ID_STARTSESSIONKEYREFRESH_NULLPARAM: D3D11_MESSAGE_ID =
4619 D3D11_MESSAGE_ID(3145987i32);
4620pub const D3D11_MESSAGE_ID_STREAM_OUT_NOT_SUPPORTED: D3D11_MESSAGE_ID =
4621 D3D11_MESSAGE_ID(1048620i32);
4622pub const D3D11_MESSAGE_ID_STRING_FROM_APPLICATION: D3D11_MESSAGE_ID = D3D11_MESSAGE_ID(11i32);
4623pub const D3D11_MESSAGE_ID_SUBMITDECODERBUFFERS_INVALIDTYPE: D3D11_MESSAGE_ID =
4624 D3D11_MESSAGE_ID(3145788i32);
4625pub const D3D11_MESSAGE_ID_SUBMITDECODERBUFFERS_NULLPARAM: D3D11_MESSAGE_ID =
4626 D3D11_MESSAGE_ID(3145787i32);
4627pub const D3D11_MESSAGE_ID_SWAPDEVICECONTEXTSTATE_NOTSUPPORTED: D3D11_MESSAGE_ID =
4628 D3D11_MESSAGE_ID(3146063i32);
4629pub const D3D11_MESSAGE_ID_TEXTURE1D_MAP_ALREADYMAPPED: D3D11_MESSAGE_ID = D3D11_MESSAGE_ID(303i32);
4630pub const D3D11_MESSAGE_ID_TEXTURE1D_MAP_DEVICEREMOVED_RETURN: D3D11_MESSAGE_ID =
4631 D3D11_MESSAGE_ID(304i32);
4632pub const D3D11_MESSAGE_ID_TEXTURE1D_MAP_INVALIDFLAGS: D3D11_MESSAGE_ID = D3D11_MESSAGE_ID(302i32);
4633pub const D3D11_MESSAGE_ID_TEXTURE1D_MAP_INVALIDMAPTYPE: D3D11_MESSAGE_ID =
4634 D3D11_MESSAGE_ID(300i32);
4635pub const D3D11_MESSAGE_ID_TEXTURE1D_MAP_INVALIDSUBRESOURCE: D3D11_MESSAGE_ID =
4636 D3D11_MESSAGE_ID(301i32);
4637pub const D3D11_MESSAGE_ID_TEXTURE1D_UNMAP_INVALIDSUBRESOURCE: D3D11_MESSAGE_ID =
4638 D3D11_MESSAGE_ID(305i32);
4639pub const D3D11_MESSAGE_ID_TEXTURE1D_UNMAP_NOTMAPPED: D3D11_MESSAGE_ID = D3D11_MESSAGE_ID(306i32);
4640pub const D3D11_MESSAGE_ID_TEXTURE2D_MAP_ALREADYMAPPED: D3D11_MESSAGE_ID = D3D11_MESSAGE_ID(310i32);
4641pub const D3D11_MESSAGE_ID_TEXTURE2D_MAP_DEVICEREMOVED_RETURN: D3D11_MESSAGE_ID =
4642 D3D11_MESSAGE_ID(311i32);
4643pub const D3D11_MESSAGE_ID_TEXTURE2D_MAP_INVALIDFLAGS: D3D11_MESSAGE_ID = D3D11_MESSAGE_ID(309i32);
4644pub const D3D11_MESSAGE_ID_TEXTURE2D_MAP_INVALIDMAPTYPE: D3D11_MESSAGE_ID =
4645 D3D11_MESSAGE_ID(307i32);
4646pub const D3D11_MESSAGE_ID_TEXTURE2D_MAP_INVALIDSUBRESOURCE: D3D11_MESSAGE_ID =
4647 D3D11_MESSAGE_ID(308i32);
4648pub const D3D11_MESSAGE_ID_TEXTURE2D_UNMAP_INVALIDSUBRESOURCE: D3D11_MESSAGE_ID =
4649 D3D11_MESSAGE_ID(312i32);
4650pub const D3D11_MESSAGE_ID_TEXTURE2D_UNMAP_NOTMAPPED: D3D11_MESSAGE_ID = D3D11_MESSAGE_ID(313i32);
4651pub const D3D11_MESSAGE_ID_TEXTURE3D_MAP_ALREADYMAPPED: D3D11_MESSAGE_ID = D3D11_MESSAGE_ID(317i32);
4652pub const D3D11_MESSAGE_ID_TEXTURE3D_MAP_DEVICEREMOVED_RETURN: D3D11_MESSAGE_ID =
4653 D3D11_MESSAGE_ID(318i32);
4654pub const D3D11_MESSAGE_ID_TEXTURE3D_MAP_INVALIDFLAGS: D3D11_MESSAGE_ID = D3D11_MESSAGE_ID(316i32);
4655pub const D3D11_MESSAGE_ID_TEXTURE3D_MAP_INVALIDMAPTYPE: D3D11_MESSAGE_ID =
4656 D3D11_MESSAGE_ID(314i32);
4657pub const D3D11_MESSAGE_ID_TEXTURE3D_MAP_INVALIDSUBRESOURCE: D3D11_MESSAGE_ID =
4658 D3D11_MESSAGE_ID(315i32);
4659pub const D3D11_MESSAGE_ID_TEXTURE3D_UNMAP_INVALIDSUBRESOURCE: D3D11_MESSAGE_ID =
4660 D3D11_MESSAGE_ID(319i32);
4661pub const D3D11_MESSAGE_ID_TEXTURE3D_UNMAP_NOTMAPPED: D3D11_MESSAGE_ID = D3D11_MESSAGE_ID(320i32);
4662pub const D3D11_MESSAGE_ID_TEXT_FILTER_NOT_SUPPORTED: D3D11_MESSAGE_ID =
4663 D3D11_MESSAGE_ID(1048621i32);
4664pub const D3D11_MESSAGE_ID_TILEDRESOURCEBARRIER_INVALID_PARAMETER: D3D11_MESSAGE_ID =
4665 D3D11_MESSAGE_ID(3146130i32);
4666pub const D3D11_MESSAGE_ID_TILED_RESOURCE_TIER_1_BUFFER_TEXTURE_MISMATCH: D3D11_MESSAGE_ID =
4667 D3D11_MESSAGE_ID(3146146i32);
4668pub const D3D11_MESSAGE_ID_TILE_MAPPINGS_IN_COVERED_AREA_DUPLICATED_OUTSIDE: D3D11_MESSAGE_ID =
4669 D3D11_MESSAGE_ID(3146135i32);
4670pub const D3D11_MESSAGE_ID_TILE_MAPPINGS_SHARED_BETWEEN_INCOMPATIBLE_RESOURCES: D3D11_MESSAGE_ID =
4671 D3D11_MESSAGE_ID(3146136i32);
4672pub const D3D11_MESSAGE_ID_TILE_MAPPINGS_SHARED_BETWEEN_INPUT_AND_OUTPUT: D3D11_MESSAGE_ID =
4673 D3D11_MESSAGE_ID(3146137i32);
4674pub const D3D11_MESSAGE_ID_TRACKED_WORKLOAD_DISJOINT_FAILURE: D3D11_MESSAGE_ID =
4675 D3D11_MESSAGE_ID(3146283i32);
4676pub const D3D11_MESSAGE_ID_TRACKED_WORKLOAD_ENGINE_TYPE_NOT_FOUND: D3D11_MESSAGE_ID =
4677 D3D11_MESSAGE_ID(3146280i32);
4678pub const D3D11_MESSAGE_ID_TRACKED_WORKLOAD_NOT_SUPPORTED: D3D11_MESSAGE_ID =
4679 D3D11_MESSAGE_ID(3146279i32);
4680pub const D3D11_MESSAGE_ID_UNKNOWN: D3D11_MESSAGE_ID = D3D11_MESSAGE_ID(0i32);
4681pub const D3D11_MESSAGE_ID_UPDATESUBRESOURCE1_INVALIDCOPYFLAGS: D3D11_MESSAGE_ID =
4682 D3D11_MESSAGE_ID(3145756i32);
4683pub const D3D11_MESSAGE_ID_UPDATESUBRESOURCE_EMPTYDESTBOX: D3D11_MESSAGE_ID =
4684 D3D11_MESSAGE_ID(3146077i32);
4685pub const D3D11_MESSAGE_ID_UPDATESUBRESOURCE_INVALIDDESTINATIONBOX: D3D11_MESSAGE_ID =
4686 D3D11_MESSAGE_ID(288i32);
4687pub const D3D11_MESSAGE_ID_UPDATESUBRESOURCE_INVALIDDESTINATIONSTATE: D3D11_MESSAGE_ID =
4688 D3D11_MESSAGE_ID(289i32);
4689pub const D3D11_MESSAGE_ID_UPDATESUBRESOURCE_INVALIDDESTINATIONSUBRESOURCE: D3D11_MESSAGE_ID =
4690 D3D11_MESSAGE_ID(287i32);
4691pub const D3D11_MESSAGE_ID_UPDATESUBRESOURCE_PREFERUPDATESUBRESOURCE1: D3D11_MESSAGE_ID =
4692 D3D11_MESSAGE_ID(3146064i32);
4693pub const D3D11_MESSAGE_ID_UPDATETILEMAPPINGS_INVALID_PARAMETER: D3D11_MESSAGE_ID =
4694 D3D11_MESSAGE_ID(3146125i32);
4695pub const D3D11_MESSAGE_ID_UPDATETILES_INVALID_PARAMETER: D3D11_MESSAGE_ID =
4696 D3D11_MESSAGE_ID(3146128i32);
4697pub const D3D11_MESSAGE_ID_USE_OF_ZERO_REFCOUNT_OBJECT: D3D11_MESSAGE_ID =
4698 D3D11_MESSAGE_ID(2097423i32);
4699pub const D3D11_MESSAGE_ID_VIDEODECODERENABLEDOWNSAMPLING_NULLPARAM: D3D11_MESSAGE_ID =
4700 D3D11_MESSAGE_ID(3146092i32);
4701pub const D3D11_MESSAGE_ID_VIDEODECODERENABLEDOWNSAMPLING_UNSUPPORTED: D3D11_MESSAGE_ID =
4702 D3D11_MESSAGE_ID(3146093i32);
4703pub const D3D11_MESSAGE_ID_VIDEODECODERUPDATEDOWNSAMPLING_NULLPARAM: D3D11_MESSAGE_ID =
4704 D3D11_MESSAGE_ID(3146094i32);
4705pub const D3D11_MESSAGE_ID_VIDEODECODERUPDATEDOWNSAMPLING_UNSUPPORTED: D3D11_MESSAGE_ID =
4706 D3D11_MESSAGE_ID(3146095i32);
4707pub const D3D11_MESSAGE_ID_VIDEOPROCESSORBLT_INPUTHAZARD: D3D11_MESSAGE_ID =
4708 D3D11_MESSAGE_ID(3145905i32);
4709pub const D3D11_MESSAGE_ID_VIDEOPROCESSORBLT_INVALIDARRAY: D3D11_MESSAGE_ID =
4710 D3D11_MESSAGE_ID(3145899i32);
4711pub const D3D11_MESSAGE_ID_VIDEOPROCESSORBLT_INVALIDARRAYSIZE: D3D11_MESSAGE_ID =
4712 D3D11_MESSAGE_ID(3145898i32);
4713pub const D3D11_MESSAGE_ID_VIDEOPROCESSORBLT_INVALIDDESTRECT: D3D11_MESSAGE_ID =
4714 D3D11_MESSAGE_ID(3145896i32);
4715pub const D3D11_MESSAGE_ID_VIDEOPROCESSORBLT_INVALIDFUTUREFRAMES: D3D11_MESSAGE_ID =
4716 D3D11_MESSAGE_ID(3145894i32);
4717pub const D3D11_MESSAGE_ID_VIDEOPROCESSORBLT_INVALIDINPUTRESOURCE: D3D11_MESSAGE_ID =
4718 D3D11_MESSAGE_ID(3145897i32);
4719pub const D3D11_MESSAGE_ID_VIDEOPROCESSORBLT_INVALIDOUTPUT: D3D11_MESSAGE_ID =
4720 D3D11_MESSAGE_ID(3145892i32);
4721pub const D3D11_MESSAGE_ID_VIDEOPROCESSORBLT_INVALIDPASTFRAMES: D3D11_MESSAGE_ID =
4722 D3D11_MESSAGE_ID(3145893i32);
4723pub const D3D11_MESSAGE_ID_VIDEOPROCESSORBLT_INVALIDRIGHTRESOURCE: D3D11_MESSAGE_ID =
4724 D3D11_MESSAGE_ID(3145903i32);
4725pub const D3D11_MESSAGE_ID_VIDEOPROCESSORBLT_INVALIDSOURCERECT: D3D11_MESSAGE_ID =
4726 D3D11_MESSAGE_ID(3145895i32);
4727pub const D3D11_MESSAGE_ID_VIDEOPROCESSORBLT_INVALIDSTREAMCOUNT: D3D11_MESSAGE_ID =
4728 D3D11_MESSAGE_ID(3145890i32);
4729pub const D3D11_MESSAGE_ID_VIDEOPROCESSORBLT_NOSTEREOSTREAMS: D3D11_MESSAGE_ID =
4730 D3D11_MESSAGE_ID(3145904i32);
4731pub const D3D11_MESSAGE_ID_VIDEOPROCESSORBLT_NULLPARAM: D3D11_MESSAGE_ID =
4732 D3D11_MESSAGE_ID(3145889i32);
4733pub const D3D11_MESSAGE_ID_VIDEOPROCESSORBLT_OUTPUTHAZARD: D3D11_MESSAGE_ID =
4734 D3D11_MESSAGE_ID(3145906i32);
4735pub const D3D11_MESSAGE_ID_VIDEOPROCESSORBLT_RIGHTEXPECTED: D3D11_MESSAGE_ID =
4736 D3D11_MESSAGE_ID(3145900i32);
4737pub const D3D11_MESSAGE_ID_VIDEOPROCESSORBLT_RIGHTNOTEXPECTED: D3D11_MESSAGE_ID =
4738 D3D11_MESSAGE_ID(3145901i32);
4739pub const D3D11_MESSAGE_ID_VIDEOPROCESSORBLT_STEREONOTENABLED: D3D11_MESSAGE_ID =
4740 D3D11_MESSAGE_ID(3145902i32);
4741pub const D3D11_MESSAGE_ID_VIDEOPROCESSORBLT_TARGETRECT: D3D11_MESSAGE_ID =
4742 D3D11_MESSAGE_ID(3145891i32);
4743pub const D3D11_MESSAGE_ID_VIDEOPROCESSORGETBEHAVIORHINTS_INVALIDDESTRECT: D3D11_MESSAGE_ID =
4744 D3D11_MESSAGE_ID(3146115i32);
4745pub const D3D11_MESSAGE_ID_VIDEOPROCESSORGETBEHAVIORHINTS_INVALIDSOURCERECT: D3D11_MESSAGE_ID =
4746 D3D11_MESSAGE_ID(3146114i32);
4747pub const D3D11_MESSAGE_ID_VIDEOPROCESSORGETBEHAVIORHINTS_INVALIDSTREAMCOUNT: D3D11_MESSAGE_ID =
4748 D3D11_MESSAGE_ID(3146112i32);
4749pub const D3D11_MESSAGE_ID_VIDEOPROCESSORGETBEHAVIORHINTS_NULLPARAM: D3D11_MESSAGE_ID =
4750 D3D11_MESSAGE_ID(3146111i32);
4751pub const D3D11_MESSAGE_ID_VIDEOPROCESSORGETBEHAVIORHINTS_TARGETRECT: D3D11_MESSAGE_ID =
4752 D3D11_MESSAGE_ID(3146113i32);
4753pub const D3D11_MESSAGE_ID_VIDEOPROCESSORGETOUTPUTALPHAFILLMODE_NULLPARAM: D3D11_MESSAGE_ID =
4754 D3D11_MESSAGE_ID(3145824i32);
4755pub const D3D11_MESSAGE_ID_VIDEOPROCESSORGETOUTPUTBACKGROUNDCOLOR_NULLPARAM: D3D11_MESSAGE_ID =
4756 D3D11_MESSAGE_ID(3145822i32);
4757pub const D3D11_MESSAGE_ID_VIDEOPROCESSORGETOUTPUTCOLORSPACE1_NULLPARAM: D3D11_MESSAGE_ID =
4758 D3D11_MESSAGE_ID(3146098i32);
4759pub const D3D11_MESSAGE_ID_VIDEOPROCESSORGETOUTPUTCOLORSPACE_NULLPARAM: D3D11_MESSAGE_ID =
4760 D3D11_MESSAGE_ID(3145823i32);
4761pub const D3D11_MESSAGE_ID_VIDEOPROCESSORGETOUTPUTCONSTRICTION_NULLPARAM: D3D11_MESSAGE_ID =
4762 D3D11_MESSAGE_ID(3145825i32);
4763pub const D3D11_MESSAGE_ID_VIDEOPROCESSORGETOUTPUTEXTENSION_NULLPARAM: D3D11_MESSAGE_ID =
4764 D3D11_MESSAGE_ID(3145829i32);
4765pub const D3D11_MESSAGE_ID_VIDEOPROCESSORGETOUTPUTHDRMETADATA_INVALIDSIZE: D3D11_MESSAGE_ID =
4766 D3D11_MESSAGE_ID(3146228i32);
4767pub const D3D11_MESSAGE_ID_VIDEOPROCESSORGETOUTPUTHDRMETADATA_NULLPARAM: D3D11_MESSAGE_ID =
4768 D3D11_MESSAGE_ID(3146227i32);
4769pub const D3D11_MESSAGE_ID_VIDEOPROCESSORGETOUTPUTSHADERUSAGE_NULLPARAM: D3D11_MESSAGE_ID =
4770 D3D11_MESSAGE_ID(3146110i32);
4771pub const D3D11_MESSAGE_ID_VIDEOPROCESSORGETOUTPUTSTEREOMODE_NULLPARAM: D3D11_MESSAGE_ID =
4772 D3D11_MESSAGE_ID(3145828i32);
4773pub const D3D11_MESSAGE_ID_VIDEOPROCESSORGETOUTPUTTARGETRECT_NULLPARAM: D3D11_MESSAGE_ID =
4774 D3D11_MESSAGE_ID(3145821i32);
4775pub const D3D11_MESSAGE_ID_VIDEOPROCESSORGETSTREAMALPHA_INVALIDSTREAM: D3D11_MESSAGE_ID =
4776 D3D11_MESSAGE_ID(3146240i32);
4777pub const D3D11_MESSAGE_ID_VIDEOPROCESSORGETSTREAMALPHA_NULLPARAM: D3D11_MESSAGE_ID =
4778 D3D11_MESSAGE_ID(3145880i32);
4779pub const D3D11_MESSAGE_ID_VIDEOPROCESSORGETSTREAMAUTOPROCESSINGMODE_INVALIDSTREAM:
4780 D3D11_MESSAGE_ID = D3D11_MESSAGE_ID(3146245i32);
4781pub const D3D11_MESSAGE_ID_VIDEOPROCESSORGETSTREAMAUTOPROCESSINGMODE_NULLPARAM: D3D11_MESSAGE_ID =
4782 D3D11_MESSAGE_ID(3145885i32);
4783pub const D3D11_MESSAGE_ID_VIDEOPROCESSORGETSTREAMCOLORSPACE1_INVALIDSTREAM: D3D11_MESSAGE_ID =
4784 D3D11_MESSAGE_ID(3146248i32);
4785pub const D3D11_MESSAGE_ID_VIDEOPROCESSORGETSTREAMCOLORSPACE1_NULLPARAM: D3D11_MESSAGE_ID =
4786 D3D11_MESSAGE_ID(3146104i32);
4787pub const D3D11_MESSAGE_ID_VIDEOPROCESSORGETSTREAMCOLORSPACE_INVALIDSTREAM: D3D11_MESSAGE_ID =
4788 D3D11_MESSAGE_ID(3146236i32);
4789pub const D3D11_MESSAGE_ID_VIDEOPROCESSORGETSTREAMCOLORSPACE_NULLPARAM: D3D11_MESSAGE_ID =
4790 D3D11_MESSAGE_ID(3145876i32);
4791pub const D3D11_MESSAGE_ID_VIDEOPROCESSORGETSTREAMDESTRECT_INVALIDSTREAM: D3D11_MESSAGE_ID =
4792 D3D11_MESSAGE_ID(3146239i32);
4793pub const D3D11_MESSAGE_ID_VIDEOPROCESSORGETSTREAMDESTRECT_NULLPARAM: D3D11_MESSAGE_ID =
4794 D3D11_MESSAGE_ID(3145879i32);
4795pub const D3D11_MESSAGE_ID_VIDEOPROCESSORGETSTREAMEXTENSION_INVALIDSTREAM: D3D11_MESSAGE_ID =
4796 D3D11_MESSAGE_ID(3145888i32);
4797pub const D3D11_MESSAGE_ID_VIDEOPROCESSORGETSTREAMEXTENSION_NULLPARAM: D3D11_MESSAGE_ID =
4798 D3D11_MESSAGE_ID(3145887i32);
4799pub const D3D11_MESSAGE_ID_VIDEOPROCESSORGETSTREAMFILTER_INVALIDSTREAM: D3D11_MESSAGE_ID =
4800 D3D11_MESSAGE_ID(3146246i32);
4801pub const D3D11_MESSAGE_ID_VIDEOPROCESSORGETSTREAMFILTER_NULLPARAM: D3D11_MESSAGE_ID =
4802 D3D11_MESSAGE_ID(3145886i32);
4803pub const D3D11_MESSAGE_ID_VIDEOPROCESSORGETSTREAMFRAMEFORMAT_INVALIDSTREAM: D3D11_MESSAGE_ID =
4804 D3D11_MESSAGE_ID(3146235i32);
4805pub const D3D11_MESSAGE_ID_VIDEOPROCESSORGETSTREAMFRAMEFORMAT_NULLPARAM: D3D11_MESSAGE_ID =
4806 D3D11_MESSAGE_ID(3145875i32);
4807pub const D3D11_MESSAGE_ID_VIDEOPROCESSORGETSTREAMHDRMETADATA_INVALIDSIZE: D3D11_MESSAGE_ID =
4808 D3D11_MESSAGE_ID(3146234i32);
4809pub const D3D11_MESSAGE_ID_VIDEOPROCESSORGETSTREAMHDRMETADATA_INVALIDSTREAM: D3D11_MESSAGE_ID =
4810 D3D11_MESSAGE_ID(3146233i32);
4811pub const D3D11_MESSAGE_ID_VIDEOPROCESSORGETSTREAMHDRMETADATA_NULLPARAM: D3D11_MESSAGE_ID =
4812 D3D11_MESSAGE_ID(3146232i32);
4813pub const D3D11_MESSAGE_ID_VIDEOPROCESSORGETSTREAMLUMAKEY_INVALIDSTREAM: D3D11_MESSAGE_ID =
4814 D3D11_MESSAGE_ID(3146243i32);
4815pub const D3D11_MESSAGE_ID_VIDEOPROCESSORGETSTREAMLUMAKEY_NULLPARAM: D3D11_MESSAGE_ID =
4816 D3D11_MESSAGE_ID(3145883i32);
4817pub const D3D11_MESSAGE_ID_VIDEOPROCESSORGETSTREAMMIRROR_INVALIDSTREAM: D3D11_MESSAGE_ID =
4818 D3D11_MESSAGE_ID(3146249i32);
4819pub const D3D11_MESSAGE_ID_VIDEOPROCESSORGETSTREAMMIRROR_NULLPARAM: D3D11_MESSAGE_ID =
4820 D3D11_MESSAGE_ID(3146105i32);
4821pub const D3D11_MESSAGE_ID_VIDEOPROCESSORGETSTREAMOUTPUTRATE_INVALIDSTREAM: D3D11_MESSAGE_ID =
4822 D3D11_MESSAGE_ID(3146237i32);
4823pub const D3D11_MESSAGE_ID_VIDEOPROCESSORGETSTREAMOUTPUTRATE_NULLPARAM: D3D11_MESSAGE_ID =
4824 D3D11_MESSAGE_ID(3145877i32);
4825pub const D3D11_MESSAGE_ID_VIDEOPROCESSORGETSTREAMPALETTE_INVALIDSTREAM: D3D11_MESSAGE_ID =
4826 D3D11_MESSAGE_ID(3146241i32);
4827pub const D3D11_MESSAGE_ID_VIDEOPROCESSORGETSTREAMPALETTE_NULLPARAM: D3D11_MESSAGE_ID =
4828 D3D11_MESSAGE_ID(3145881i32);
4829pub const D3D11_MESSAGE_ID_VIDEOPROCESSORGETSTREAMPIXELASPECTRATIO_INVALIDSTREAM: D3D11_MESSAGE_ID =
4830 D3D11_MESSAGE_ID(3146242i32);
4831pub const D3D11_MESSAGE_ID_VIDEOPROCESSORGETSTREAMPIXELASPECTRATIO_NULLPARAM: D3D11_MESSAGE_ID =
4832 D3D11_MESSAGE_ID(3145882i32);
4833pub const D3D11_MESSAGE_ID_VIDEOPROCESSORGETSTREAMROTATION_INVALIDSTREAM: D3D11_MESSAGE_ID =
4834 D3D11_MESSAGE_ID(3146247i32);
4835pub const D3D11_MESSAGE_ID_VIDEOPROCESSORGETSTREAMROTATION_NULLPARAM: D3D11_MESSAGE_ID =
4836 D3D11_MESSAGE_ID(3146034i32);
4837pub const D3D11_MESSAGE_ID_VIDEOPROCESSORGETSTREAMSOURCERECT_INVALIDSTREAM: D3D11_MESSAGE_ID =
4838 D3D11_MESSAGE_ID(3146238i32);
4839pub const D3D11_MESSAGE_ID_VIDEOPROCESSORGETSTREAMSOURCERECT_NULLPARAM: D3D11_MESSAGE_ID =
4840 D3D11_MESSAGE_ID(3145878i32);
4841pub const D3D11_MESSAGE_ID_VIDEOPROCESSORGETSTREAMSTEREOFORMAT_INVALIDSTREAM: D3D11_MESSAGE_ID =
4842 D3D11_MESSAGE_ID(3146244i32);
4843pub const D3D11_MESSAGE_ID_VIDEOPROCESSORGETSTREAMSTEREOFORMAT_NULLPARAM: D3D11_MESSAGE_ID =
4844 D3D11_MESSAGE_ID(3145884i32);
4845pub const D3D11_MESSAGE_ID_VIDEOPROCESSORSETOUTPUTALPHAFILLMODE_INVALIDFILLMODE: D3D11_MESSAGE_ID =
4846 D3D11_MESSAGE_ID(3145816i32);
4847pub const D3D11_MESSAGE_ID_VIDEOPROCESSORSETOUTPUTALPHAFILLMODE_INVALIDSTREAM: D3D11_MESSAGE_ID =
4848 D3D11_MESSAGE_ID(3145815i32);
4849pub const D3D11_MESSAGE_ID_VIDEOPROCESSORSETOUTPUTALPHAFILLMODE_NULLPARAM: D3D11_MESSAGE_ID =
4850 D3D11_MESSAGE_ID(3145813i32);
4851pub const D3D11_MESSAGE_ID_VIDEOPROCESSORSETOUTPUTALPHAFILLMODE_UNSUPPORTED: D3D11_MESSAGE_ID =
4852 D3D11_MESSAGE_ID(3145814i32);
4853pub const D3D11_MESSAGE_ID_VIDEOPROCESSORSETOUTPUTBACKGROUNDCOLOR_INVALIDALPHA: D3D11_MESSAGE_ID =
4854 D3D11_MESSAGE_ID(3145811i32);
4855pub const D3D11_MESSAGE_ID_VIDEOPROCESSORSETOUTPUTBACKGROUNDCOLOR_NULLPARAM: D3D11_MESSAGE_ID =
4856 D3D11_MESSAGE_ID(3145810i32);
4857pub const D3D11_MESSAGE_ID_VIDEOPROCESSORSETOUTPUTCOLORSPACE1_NULLPARAM: D3D11_MESSAGE_ID =
4858 D3D11_MESSAGE_ID(3146097i32);
4859pub const D3D11_MESSAGE_ID_VIDEOPROCESSORSETOUTPUTCOLORSPACE_NULLPARAM: D3D11_MESSAGE_ID =
4860 D3D11_MESSAGE_ID(3145812i32);
4861pub const D3D11_MESSAGE_ID_VIDEOPROCESSORSETOUTPUTCONSTRICTION_INVALIDSIZE: D3D11_MESSAGE_ID =
4862 D3D11_MESSAGE_ID(3145827i32);
4863pub const D3D11_MESSAGE_ID_VIDEOPROCESSORSETOUTPUTCONSTRICTION_NULLPARAM: D3D11_MESSAGE_ID =
4864 D3D11_MESSAGE_ID(3145817i32);
4865pub const D3D11_MESSAGE_ID_VIDEOPROCESSORSETOUTPUTCONSTRICTION_UNSUPPORTED: D3D11_MESSAGE_ID =
4866 D3D11_MESSAGE_ID(3145826i32);
4867pub const D3D11_MESSAGE_ID_VIDEOPROCESSORSETOUTPUTEXTENSION_NULLPARAM: D3D11_MESSAGE_ID =
4868 D3D11_MESSAGE_ID(3145820i32);
4869pub const D3D11_MESSAGE_ID_VIDEOPROCESSORSETOUTPUTHDRMETADATA_INVALIDSIZE: D3D11_MESSAGE_ID =
4870 D3D11_MESSAGE_ID(3146226i32);
4871pub const D3D11_MESSAGE_ID_VIDEOPROCESSORSETOUTPUTHDRMETADATA_NULLPARAM: D3D11_MESSAGE_ID =
4872 D3D11_MESSAGE_ID(3146225i32);
4873pub const D3D11_MESSAGE_ID_VIDEOPROCESSORSETOUTPUTSHADERUSAGE_NULLPARAM: D3D11_MESSAGE_ID =
4874 D3D11_MESSAGE_ID(3146109i32);
4875pub const D3D11_MESSAGE_ID_VIDEOPROCESSORSETOUTPUTSTEREOMODE_NULLPARAM: D3D11_MESSAGE_ID =
4876 D3D11_MESSAGE_ID(3145818i32);
4877pub const D3D11_MESSAGE_ID_VIDEOPROCESSORSETOUTPUTSTEREOMODE_UNSUPPORTED: D3D11_MESSAGE_ID =
4878 D3D11_MESSAGE_ID(3145819i32);
4879pub const D3D11_MESSAGE_ID_VIDEOPROCESSORSETOUTPUTTARGETRECT_NULLPARAM: D3D11_MESSAGE_ID =
4880 D3D11_MESSAGE_ID(3145809i32);
4881pub const D3D11_MESSAGE_ID_VIDEOPROCESSORSETSTREAMALPHA_INVALIDALPHA: D3D11_MESSAGE_ID =
4882 D3D11_MESSAGE_ID(3145847i32);
4883pub const D3D11_MESSAGE_ID_VIDEOPROCESSORSETSTREAMALPHA_INVALIDSTREAM: D3D11_MESSAGE_ID =
4884 D3D11_MESSAGE_ID(3145846i32);
4885pub const D3D11_MESSAGE_ID_VIDEOPROCESSORSETSTREAMALPHA_NULLPARAM: D3D11_MESSAGE_ID =
4886 D3D11_MESSAGE_ID(3145845i32);
4887pub const D3D11_MESSAGE_ID_VIDEOPROCESSORSETSTREAMALPHA_UNSUPPORTED: D3D11_MESSAGE_ID =
4888 D3D11_MESSAGE_ID(3146051i32);
4889pub const D3D11_MESSAGE_ID_VIDEOPROCESSORSETSTREAMAUTOPROCESSINGMODE_INVALIDSTREAM:
4890 D3D11_MESSAGE_ID = D3D11_MESSAGE_ID(3145867i32);
4891pub const D3D11_MESSAGE_ID_VIDEOPROCESSORSETSTREAMAUTOPROCESSINGMODE_NULLPARAM: D3D11_MESSAGE_ID =
4892 D3D11_MESSAGE_ID(3145866i32);
4893pub const D3D11_MESSAGE_ID_VIDEOPROCESSORSETSTREAMCOLORSPACE1_INVALIDSTREAM: D3D11_MESSAGE_ID =
4894 D3D11_MESSAGE_ID(3146100i32);
4895pub const D3D11_MESSAGE_ID_VIDEOPROCESSORSETSTREAMCOLORSPACE1_NULLPARAM: D3D11_MESSAGE_ID =
4896 D3D11_MESSAGE_ID(3146099i32);
4897pub const D3D11_MESSAGE_ID_VIDEOPROCESSORSETSTREAMCOLORSPACE_INVALIDSTREAM: D3D11_MESSAGE_ID =
4898 D3D11_MESSAGE_ID(3145834i32);
4899pub const D3D11_MESSAGE_ID_VIDEOPROCESSORSETSTREAMCOLORSPACE_NULLPARAM: D3D11_MESSAGE_ID =
4900 D3D11_MESSAGE_ID(3145833i32);
4901pub const D3D11_MESSAGE_ID_VIDEOPROCESSORSETSTREAMDESTRECT_INVALIDRECT: D3D11_MESSAGE_ID =
4902 D3D11_MESSAGE_ID(3145844i32);
4903pub const D3D11_MESSAGE_ID_VIDEOPROCESSORSETSTREAMDESTRECT_INVALIDSTREAM: D3D11_MESSAGE_ID =
4904 D3D11_MESSAGE_ID(3145843i32);
4905pub const D3D11_MESSAGE_ID_VIDEOPROCESSORSETSTREAMDESTRECT_NULLPARAM: D3D11_MESSAGE_ID =
4906 D3D11_MESSAGE_ID(3145842i32);
4907pub const D3D11_MESSAGE_ID_VIDEOPROCESSORSETSTREAMEXTENSION_INVALIDSTREAM: D3D11_MESSAGE_ID =
4908 D3D11_MESSAGE_ID(3145874i32);
4909pub const D3D11_MESSAGE_ID_VIDEOPROCESSORSETSTREAMEXTENSION_NULLPARAM: D3D11_MESSAGE_ID =
4910 D3D11_MESSAGE_ID(3145873i32);
4911pub const D3D11_MESSAGE_ID_VIDEOPROCESSORSETSTREAMFILTER_INVALIDFILTER: D3D11_MESSAGE_ID =
4912 D3D11_MESSAGE_ID(3145870i32);
4913pub const D3D11_MESSAGE_ID_VIDEOPROCESSORSETSTREAMFILTER_INVALIDLEVEL: D3D11_MESSAGE_ID =
4914 D3D11_MESSAGE_ID(3145872i32);
4915pub const D3D11_MESSAGE_ID_VIDEOPROCESSORSETSTREAMFILTER_INVALIDSTREAM: D3D11_MESSAGE_ID =
4916 D3D11_MESSAGE_ID(3145869i32);
4917pub const D3D11_MESSAGE_ID_VIDEOPROCESSORSETSTREAMFILTER_NULLPARAM: D3D11_MESSAGE_ID =
4918 D3D11_MESSAGE_ID(3145868i32);
4919pub const D3D11_MESSAGE_ID_VIDEOPROCESSORSETSTREAMFILTER_UNSUPPORTED: D3D11_MESSAGE_ID =
4920 D3D11_MESSAGE_ID(3145871i32);
4921pub const D3D11_MESSAGE_ID_VIDEOPROCESSORSETSTREAMFRAMEFORMAT_INVALIDFORMAT: D3D11_MESSAGE_ID =
4922 D3D11_MESSAGE_ID(3145831i32);
4923pub const D3D11_MESSAGE_ID_VIDEOPROCESSORSETSTREAMFRAMEFORMAT_INVALIDSTREAM: D3D11_MESSAGE_ID =
4924 D3D11_MESSAGE_ID(3145832i32);
4925pub const D3D11_MESSAGE_ID_VIDEOPROCESSORSETSTREAMFRAMEFORMAT_NULLPARAM: D3D11_MESSAGE_ID =
4926 D3D11_MESSAGE_ID(3145830i32);
4927pub const D3D11_MESSAGE_ID_VIDEOPROCESSORSETSTREAMHDRMETADATA_INVALIDSIZE: D3D11_MESSAGE_ID =
4928 D3D11_MESSAGE_ID(3146231i32);
4929pub const D3D11_MESSAGE_ID_VIDEOPROCESSORSETSTREAMHDRMETADATA_INVALIDSTREAM: D3D11_MESSAGE_ID =
4930 D3D11_MESSAGE_ID(3146230i32);
4931pub const D3D11_MESSAGE_ID_VIDEOPROCESSORSETSTREAMHDRMETADATA_NULLPARAM: D3D11_MESSAGE_ID =
4932 D3D11_MESSAGE_ID(3146229i32);
4933pub const D3D11_MESSAGE_ID_VIDEOPROCESSORSETSTREAMLUMAKEY_INVALIDRANGE: D3D11_MESSAGE_ID =
4934 D3D11_MESSAGE_ID(3145857i32);
4935pub const D3D11_MESSAGE_ID_VIDEOPROCESSORSETSTREAMLUMAKEY_INVALIDSTREAM: D3D11_MESSAGE_ID =
4936 D3D11_MESSAGE_ID(3145856i32);
4937pub const D3D11_MESSAGE_ID_VIDEOPROCESSORSETSTREAMLUMAKEY_NULLPARAM: D3D11_MESSAGE_ID =
4938 D3D11_MESSAGE_ID(3145855i32);
4939pub const D3D11_MESSAGE_ID_VIDEOPROCESSORSETSTREAMLUMAKEY_UNSUPPORTED: D3D11_MESSAGE_ID =
4940 D3D11_MESSAGE_ID(3145858i32);
4941pub const D3D11_MESSAGE_ID_VIDEOPROCESSORSETSTREAMMIRROR_INVALIDSTREAM: D3D11_MESSAGE_ID =
4942 D3D11_MESSAGE_ID(3146102i32);
4943pub const D3D11_MESSAGE_ID_VIDEOPROCESSORSETSTREAMMIRROR_NULLPARAM: D3D11_MESSAGE_ID =
4944 D3D11_MESSAGE_ID(3146101i32);
4945pub const D3D11_MESSAGE_ID_VIDEOPROCESSORSETSTREAMMIRROR_UNSUPPORTED: D3D11_MESSAGE_ID =
4946 D3D11_MESSAGE_ID(3146103i32);
4947pub const D3D11_MESSAGE_ID_VIDEOPROCESSORSETSTREAMOUTPUTRATE_INVALIDFLAG: D3D11_MESSAGE_ID =
4948 D3D11_MESSAGE_ID(3145837i32);
4949pub const D3D11_MESSAGE_ID_VIDEOPROCESSORSETSTREAMOUTPUTRATE_INVALIDRATE: D3D11_MESSAGE_ID =
4950 D3D11_MESSAGE_ID(3145836i32);
4951pub const D3D11_MESSAGE_ID_VIDEOPROCESSORSETSTREAMOUTPUTRATE_INVALIDSTREAM: D3D11_MESSAGE_ID =
4952 D3D11_MESSAGE_ID(3145838i32);
4953pub const D3D11_MESSAGE_ID_VIDEOPROCESSORSETSTREAMOUTPUTRATE_NULLPARAM: D3D11_MESSAGE_ID =
4954 D3D11_MESSAGE_ID(3145835i32);
4955pub const D3D11_MESSAGE_ID_VIDEOPROCESSORSETSTREAMPALETTE_INVALIDALPHA: D3D11_MESSAGE_ID =
4956 D3D11_MESSAGE_ID(3145851i32);
4957pub const D3D11_MESSAGE_ID_VIDEOPROCESSORSETSTREAMPALETTE_INVALIDCOUNT: D3D11_MESSAGE_ID =
4958 D3D11_MESSAGE_ID(3145850i32);
4959pub const D3D11_MESSAGE_ID_VIDEOPROCESSORSETSTREAMPALETTE_INVALIDSTREAM: D3D11_MESSAGE_ID =
4960 D3D11_MESSAGE_ID(3145849i32);
4961pub const D3D11_MESSAGE_ID_VIDEOPROCESSORSETSTREAMPALETTE_NULLPARAM: D3D11_MESSAGE_ID =
4962 D3D11_MESSAGE_ID(3145848i32);
4963pub const D3D11_MESSAGE_ID_VIDEOPROCESSORSETSTREAMPIXELASPECTRATIO_INVALIDRATIO: D3D11_MESSAGE_ID =
4964 D3D11_MESSAGE_ID(3145854i32);
4965pub const D3D11_MESSAGE_ID_VIDEOPROCESSORSETSTREAMPIXELASPECTRATIO_INVALIDSTREAM: D3D11_MESSAGE_ID =
4966 D3D11_MESSAGE_ID(3145853i32);
4967pub const D3D11_MESSAGE_ID_VIDEOPROCESSORSETSTREAMPIXELASPECTRATIO_NULLPARAM: D3D11_MESSAGE_ID =
4968 D3D11_MESSAGE_ID(3145852i32);
4969pub const D3D11_MESSAGE_ID_VIDEOPROCESSORSETSTREAMPIXELASPECTRATIO_UNSUPPORTED: D3D11_MESSAGE_ID =
4970 D3D11_MESSAGE_ID(3146052i32);
4971pub const D3D11_MESSAGE_ID_VIDEOPROCESSORSETSTREAMROTATION_INVALID: D3D11_MESSAGE_ID =
4972 D3D11_MESSAGE_ID(3146032i32);
4973pub const D3D11_MESSAGE_ID_VIDEOPROCESSORSETSTREAMROTATION_INVALIDSTREAM: D3D11_MESSAGE_ID =
4974 D3D11_MESSAGE_ID(3146031i32);
4975pub const D3D11_MESSAGE_ID_VIDEOPROCESSORSETSTREAMROTATION_NULLPARAM: D3D11_MESSAGE_ID =
4976 D3D11_MESSAGE_ID(3146030i32);
4977pub const D3D11_MESSAGE_ID_VIDEOPROCESSORSETSTREAMROTATION_UNSUPPORTED: D3D11_MESSAGE_ID =
4978 D3D11_MESSAGE_ID(3146033i32);
4979pub const D3D11_MESSAGE_ID_VIDEOPROCESSORSETSTREAMSOURCERECT_INVALIDRECT: D3D11_MESSAGE_ID =
4980 D3D11_MESSAGE_ID(3145841i32);
4981pub const D3D11_MESSAGE_ID_VIDEOPROCESSORSETSTREAMSOURCERECT_INVALIDSTREAM: D3D11_MESSAGE_ID =
4982 D3D11_MESSAGE_ID(3145840i32);
4983pub const D3D11_MESSAGE_ID_VIDEOPROCESSORSETSTREAMSOURCERECT_NULLPARAM: D3D11_MESSAGE_ID =
4984 D3D11_MESSAGE_ID(3145839i32);
4985pub const D3D11_MESSAGE_ID_VIDEOPROCESSORSETSTREAMSTEREOFORMAT_FLIPUNSUPPORTED: D3D11_MESSAGE_ID =
4986 D3D11_MESSAGE_ID(3145862i32);
4987pub const D3D11_MESSAGE_ID_VIDEOPROCESSORSETSTREAMSTEREOFORMAT_FORMATUNSUPPORTED: D3D11_MESSAGE_ID =
4988 D3D11_MESSAGE_ID(3145864i32);
4989pub const D3D11_MESSAGE_ID_VIDEOPROCESSORSETSTREAMSTEREOFORMAT_INVALIDFORMAT: D3D11_MESSAGE_ID =
4990 D3D11_MESSAGE_ID(3145865i32);
4991pub const D3D11_MESSAGE_ID_VIDEOPROCESSORSETSTREAMSTEREOFORMAT_INVALIDSTREAM: D3D11_MESSAGE_ID =
4992 D3D11_MESSAGE_ID(3145860i32);
4993pub const D3D11_MESSAGE_ID_VIDEOPROCESSORSETSTREAMSTEREOFORMAT_MONOOFFSETUNSUPPORTED:
4994 D3D11_MESSAGE_ID = D3D11_MESSAGE_ID(3145863i32);
4995pub const D3D11_MESSAGE_ID_VIDEOPROCESSORSETSTREAMSTEREOFORMAT_NULLPARAM: D3D11_MESSAGE_ID =
4996 D3D11_MESSAGE_ID(3145859i32);
4997pub const D3D11_MESSAGE_ID_VIDEOPROCESSORSETSTREAMSTEREOFORMAT_UNSUPPORTED: D3D11_MESSAGE_ID =
4998 D3D11_MESSAGE_ID(3145861i32);
4999pub const D3D11_MESSAGE_ID_VSSETCONSTANTBUFFERS_INVALIDBUFFER: D3D11_MESSAGE_ID =
5000 D3D11_MESSAGE_ID(246i32);
5001pub const D3D11_MESSAGE_ID_VSSETCONSTANTBUFFERS_INVALIDBUFFEROFFSETORCOUNT: D3D11_MESSAGE_ID =
5002 D3D11_MESSAGE_ID(3146016i32);
5003pub const D3D11_MESSAGE_ID_VSSETCONSTANTBUFFERS_UNBINDDELETINGOBJECT: D3D11_MESSAGE_ID =
5004 D3D11_MESSAGE_ID(35i32);
5005pub const D3D11_MESSAGE_ID_VSSETSAMPLERS_NOT_SUPPORTED: D3D11_MESSAGE_ID =
5006 D3D11_MESSAGE_ID(1048582i32);
5007pub const D3D11_MESSAGE_ID_VSSETSAMPLERS_TOO_MANY_SAMPLERS: D3D11_MESSAGE_ID =
5008 D3D11_MESSAGE_ID(1048583i32);
5009pub const D3D11_MESSAGE_ID_VSSETSAMPLERS_UNBINDDELETINGOBJECT: D3D11_MESSAGE_ID =
5010 D3D11_MESSAGE_ID(36i32);
5011pub const D3D11_MESSAGE_ID_VSSETSHADERRESOURCES_UNBINDDELETINGOBJECT: D3D11_MESSAGE_ID =
5012 D3D11_MESSAGE_ID(34i32);
5013pub const D3D11_MESSAGE_ID_VSSETSHADER_UNBINDDELETINGOBJECT: D3D11_MESSAGE_ID =
5014 D3D11_MESSAGE_ID(33i32);
5015pub const D3D11_MESSAGE_ID_VSSHADERRESOURCES_NOT_SUPPORTED: D3D11_MESSAGE_ID =
5016 D3D11_MESSAGE_ID(1048618i32);
5017#[repr(transparent)]
5018#[derive(Clone, Copy, Debug, Default, Eq, PartialEq)]
5019pub struct D3D11_MESSAGE_SEVERITY(pub i32);
5020pub const D3D11_MESSAGE_SEVERITY_CORRUPTION: D3D11_MESSAGE_SEVERITY = D3D11_MESSAGE_SEVERITY(0i32);
5021pub const D3D11_MESSAGE_SEVERITY_ERROR: D3D11_MESSAGE_SEVERITY = D3D11_MESSAGE_SEVERITY(1i32);
5022pub const D3D11_MESSAGE_SEVERITY_INFO: D3D11_MESSAGE_SEVERITY = D3D11_MESSAGE_SEVERITY(3i32);
5023pub const D3D11_MESSAGE_SEVERITY_MESSAGE: D3D11_MESSAGE_SEVERITY = D3D11_MESSAGE_SEVERITY(4i32);
5024pub const D3D11_MESSAGE_SEVERITY_WARNING: D3D11_MESSAGE_SEVERITY = D3D11_MESSAGE_SEVERITY(2i32);
5025pub const D3D11_MINOR_VERSION: u32 = 0u32;
5026pub const D3D11_MIN_BORDER_COLOR_COMPONENT: f32 = 0f32;
5027pub const D3D11_MIN_DEPTH: f32 = 0f32;
5028pub const D3D11_MIN_FILTER_SHIFT: u32 = 4u32;
5029pub const D3D11_MIN_MAXANISOTROPY: u32 = 0u32;
5030pub const D3D11_MIP_FILTER_SHIFT: u32 = 0u32;
5031pub const D3D11_MIP_LOD_BIAS_MAX: f32 = 15.99f32;
5032pub const D3D11_MIP_LOD_BIAS_MIN: f32 = -16f32;
5033pub const D3D11_MIP_LOD_FRACTIONAL_BIT_COUNT: u32 = 8u32;
5034pub const D3D11_MIP_LOD_RANGE_BIT_COUNT: u32 = 8u32;
5035pub const D3D11_MULTISAMPLE_ANTIALIAS_LINE_WIDTH: f32 = 1.4f32;
5036pub const D3D11_MUTE_CATEGORY: crate::core_supplemental::PCWSTR = crate::core_supplemental::w!("Mute_CATEGORY_%s");
5037pub const D3D11_MUTE_DEBUG_OUTPUT: crate::core_supplemental::PCWSTR = crate::core_supplemental::w!("MuteDebugOutput");
5038pub const D3D11_MUTE_ID_DECIMAL: crate::core_supplemental::PCWSTR = crate::core_supplemental::w!("Mute_ID_%d");
5039pub const D3D11_MUTE_ID_STRING: crate::core_supplemental::PCWSTR = crate::core_supplemental::w!("Mute_ID_%s");
5040pub const D3D11_MUTE_SEVERITY: crate::core_supplemental::PCWSTR = crate::core_supplemental::w!("Mute_SEVERITY_%s");
5041pub const D3D11_NONSAMPLE_FETCH_OUT_OF_RANGE_ACCESS_RESULT: u32 = 0u32;
5042#[repr(C)]
5043#[derive(Clone, Copy, Debug, PartialEq)]
5044pub struct D3D11_OMAC {
5045 pub Omac: [u8; 16],
5046}
5047impl Default for D3D11_OMAC {
5048 fn default() -> Self {
5049 unsafe { core::mem::zeroed() }
5050 }
5051}
5052#[repr(C)]
5053#[derive(Clone, Copy, Debug, PartialEq)]
5054pub struct D3D11_PACKED_MIP_DESC {
5055 pub NumStandardMips: u8,
5056 pub NumPackedMips: u8,
5057 pub NumTilesForPackedMips: u32,
5058 pub StartTileIndexInOverallResource: u32,
5059}
5060impl Default for D3D11_PACKED_MIP_DESC {
5061 fn default() -> Self {
5062 unsafe { core::mem::zeroed() }
5063 }
5064}
5065pub const D3D11_PACKED_TILE: u32 = 4294967295u32;
5066#[repr(C)]
5067#[cfg(feature = "Win32_Graphics_Direct3D")]
5068#[derive(Clone, Copy, Debug, PartialEq)]
5069pub struct D3D11_PARAMETER_DESC {
5070 pub Name: crate::core_supplemental::PCSTR,
5071 pub SemanticName: crate::core_supplemental::PCSTR,
5072 pub Type: super::Direct3D::D3D_SHADER_VARIABLE_TYPE,
5073 pub Class: super::Direct3D::D3D_SHADER_VARIABLE_CLASS,
5074 pub Rows: u32,
5075 pub Columns: u32,
5076 pub InterpolationMode: super::Direct3D::D3D_INTERPOLATION_MODE,
5077 pub Flags: super::Direct3D::D3D_PARAMETER_FLAGS,
5078 pub FirstInRegister: u32,
5079 pub FirstInComponent: u32,
5080 pub FirstOutRegister: u32,
5081 pub FirstOutComponent: u32,
5082}
5083#[cfg(feature = "Win32_Graphics_Direct3D")]
5084impl Default for D3D11_PARAMETER_DESC {
5085 fn default() -> Self {
5086 unsafe { core::mem::zeroed() }
5087 }
5088}
5089pub const D3D11_PIXEL_ADDRESS_RANGE_BIT_COUNT: u32 = 15u32;
5090pub const D3D11_PIXEL_SHADER: D3D11_SHADER_TYPE = D3D11_SHADER_TYPE(5i32);
5091#[repr(C)]
5092#[derive(Clone, Copy, Debug, PartialEq)]
5093pub struct D3D11_PIXEL_SHADER_TRACE_DESC {
5094 pub Invocation: u64,
5095 pub X: i32,
5096 pub Y: i32,
5097 pub SampleMask: u64,
5098}
5099impl Default for D3D11_PIXEL_SHADER_TRACE_DESC {
5100 fn default() -> Self {
5101 unsafe { core::mem::zeroed() }
5102 }
5103}
5104pub const D3D11_PRE_SCISSOR_PIXEL_ADDRESS_RANGE_BIT_COUNT: u32 = 16u32;
5105pub const D3D11_PROCESSIDTYPE_DWM: D3D11_AUTHENTICATED_PROCESS_IDENTIFIER_TYPE =
5106 D3D11_AUTHENTICATED_PROCESS_IDENTIFIER_TYPE(1i32);
5107pub const D3D11_PROCESSIDTYPE_HANDLE: D3D11_AUTHENTICATED_PROCESS_IDENTIFIER_TYPE =
5108 D3D11_AUTHENTICATED_PROCESS_IDENTIFIER_TYPE(2i32);
5109pub const D3D11_PROCESSIDTYPE_UNKNOWN: D3D11_AUTHENTICATED_PROCESS_IDENTIFIER_TYPE =
5110 D3D11_AUTHENTICATED_PROCESS_IDENTIFIER_TYPE(0i32);
5111pub const D3D11_PS_CS_UAV_REGISTER_COMPONENTS: u32 = 1u32;
5112pub const D3D11_PS_CS_UAV_REGISTER_COUNT: u32 = 8u32;
5113pub const D3D11_PS_CS_UAV_REGISTER_READS_PER_INST: u32 = 1u32;
5114pub const D3D11_PS_CS_UAV_REGISTER_READ_PORTS: u32 = 1u32;
5115pub const D3D11_PS_FRONTFACING_DEFAULT_VALUE: u32 = 4294967295u32;
5116pub const D3D11_PS_FRONTFACING_FALSE_VALUE: u32 = 0u32;
5117pub const D3D11_PS_FRONTFACING_TRUE_VALUE: u32 = 4294967295u32;
5118pub const D3D11_PS_INPUT_REGISTER_COMPONENTS: u32 = 4u32;
5119pub const D3D11_PS_INPUT_REGISTER_COMPONENT_BIT_COUNT: u32 = 32u32;
5120pub const D3D11_PS_INPUT_REGISTER_COUNT: u32 = 32u32;
5121pub const D3D11_PS_INPUT_REGISTER_READS_PER_INST: u32 = 2u32;
5122pub const D3D11_PS_INPUT_REGISTER_READ_PORTS: u32 = 1u32;
5123pub const D3D11_PS_LEGACY_PIXEL_CENTER_FRACTIONAL_COMPONENT: f32 = 0f32;
5124pub const D3D11_PS_OUTPUT_DEPTH_REGISTER_COMPONENTS: u32 = 1u32;
5125pub const D3D11_PS_OUTPUT_DEPTH_REGISTER_COMPONENT_BIT_COUNT: u32 = 32u32;
5126pub const D3D11_PS_OUTPUT_DEPTH_REGISTER_COUNT: u32 = 1u32;
5127pub const D3D11_PS_OUTPUT_MASK_REGISTER_COMPONENTS: u32 = 1u32;
5128pub const D3D11_PS_OUTPUT_MASK_REGISTER_COMPONENT_BIT_COUNT: u32 = 32u32;
5129pub const D3D11_PS_OUTPUT_MASK_REGISTER_COUNT: u32 = 1u32;
5130pub const D3D11_PS_OUTPUT_REGISTER_COMPONENTS: u32 = 4u32;
5131pub const D3D11_PS_OUTPUT_REGISTER_COMPONENT_BIT_COUNT: u32 = 32u32;
5132pub const D3D11_PS_OUTPUT_REGISTER_COUNT: u32 = 8u32;
5133pub const D3D11_PS_PIXEL_CENTER_FRACTIONAL_COMPONENT: f32 = 0.5f32;
5134#[repr(transparent)]
5135#[derive(Clone, Copy, Debug, Default, Eq, PartialEq)]
5136pub struct D3D11_QUERY(pub i32);
5137#[repr(C)]
5138#[derive(Clone, Copy, Debug, PartialEq)]
5139pub struct D3D11_QUERY_DATA_PIPELINE_STATISTICS {
5140 pub IAVertices: u64,
5141 pub IAPrimitives: u64,
5142 pub VSInvocations: u64,
5143 pub GSInvocations: u64,
5144 pub GSPrimitives: u64,
5145 pub CInvocations: u64,
5146 pub CPrimitives: u64,
5147 pub PSInvocations: u64,
5148 pub HSInvocations: u64,
5149 pub DSInvocations: u64,
5150 pub CSInvocations: u64,
5151}
5152impl Default for D3D11_QUERY_DATA_PIPELINE_STATISTICS {
5153 fn default() -> Self {
5154 unsafe { core::mem::zeroed() }
5155 }
5156}
5157#[repr(C)]
5158#[derive(Clone, Copy, Debug, PartialEq)]
5159pub struct D3D11_QUERY_DATA_SO_STATISTICS {
5160 pub NumPrimitivesWritten: u64,
5161 pub PrimitivesStorageNeeded: u64,
5162}
5163impl Default for D3D11_QUERY_DATA_SO_STATISTICS {
5164 fn default() -> Self {
5165 unsafe { core::mem::zeroed() }
5166 }
5167}
5168#[repr(C)]
5169#[derive(Clone, Copy, Debug, PartialEq)]
5170pub struct D3D11_QUERY_DATA_TIMESTAMP_DISJOINT {
5171 pub Frequency: u64,
5172 pub Disjoint: crate::Foundation::BOOL,
5173}
5174impl Default for D3D11_QUERY_DATA_TIMESTAMP_DISJOINT {
5175 fn default() -> Self {
5176 unsafe { core::mem::zeroed() }
5177 }
5178}
5179#[repr(C)]
5180#[derive(Clone, Copy, Debug, PartialEq)]
5181pub struct D3D11_QUERY_DESC {
5182 pub Query: D3D11_QUERY,
5183 pub MiscFlags: u32,
5184}
5185impl Default for D3D11_QUERY_DESC {
5186 fn default() -> Self {
5187 unsafe { core::mem::zeroed() }
5188 }
5189}
5190#[repr(C)]
5191#[derive(Clone, Copy, Debug, PartialEq)]
5192pub struct D3D11_QUERY_DESC1 {
5193 pub Query: D3D11_QUERY,
5194 pub MiscFlags: u32,
5195 pub ContextType: D3D11_CONTEXT_TYPE,
5196}
5197impl Default for D3D11_QUERY_DESC1 {
5198 fn default() -> Self {
5199 unsafe { core::mem::zeroed() }
5200 }
5201}
5202pub const D3D11_QUERY_EVENT: D3D11_QUERY = D3D11_QUERY(0i32);
5203#[repr(transparent)]
5204#[derive(Clone, Copy, Debug, Default, Eq, PartialEq)]
5205pub struct D3D11_QUERY_MISC_FLAG(pub i32);
5206pub const D3D11_QUERY_MISC_PREDICATEHINT: D3D11_QUERY_MISC_FLAG = D3D11_QUERY_MISC_FLAG(1i32);
5207pub const D3D11_QUERY_OCCLUSION: D3D11_QUERY = D3D11_QUERY(1i32);
5208pub const D3D11_QUERY_OCCLUSION_PREDICATE: D3D11_QUERY = D3D11_QUERY(5i32);
5209pub const D3D11_QUERY_PIPELINE_STATISTICS: D3D11_QUERY = D3D11_QUERY(4i32);
5210pub const D3D11_QUERY_SO_OVERFLOW_PREDICATE: D3D11_QUERY = D3D11_QUERY(7i32);
5211pub const D3D11_QUERY_SO_OVERFLOW_PREDICATE_STREAM0: D3D11_QUERY = D3D11_QUERY(9i32);
5212pub const D3D11_QUERY_SO_OVERFLOW_PREDICATE_STREAM1: D3D11_QUERY = D3D11_QUERY(11i32);
5213pub const D3D11_QUERY_SO_OVERFLOW_PREDICATE_STREAM2: D3D11_QUERY = D3D11_QUERY(13i32);
5214pub const D3D11_QUERY_SO_OVERFLOW_PREDICATE_STREAM3: D3D11_QUERY = D3D11_QUERY(15i32);
5215pub const D3D11_QUERY_SO_STATISTICS: D3D11_QUERY = D3D11_QUERY(6i32);
5216pub const D3D11_QUERY_SO_STATISTICS_STREAM0: D3D11_QUERY = D3D11_QUERY(8i32);
5217pub const D3D11_QUERY_SO_STATISTICS_STREAM1: D3D11_QUERY = D3D11_QUERY(10i32);
5218pub const D3D11_QUERY_SO_STATISTICS_STREAM2: D3D11_QUERY = D3D11_QUERY(12i32);
5219pub const D3D11_QUERY_SO_STATISTICS_STREAM3: D3D11_QUERY = D3D11_QUERY(14i32);
5220pub const D3D11_QUERY_TIMESTAMP: D3D11_QUERY = D3D11_QUERY(2i32);
5221pub const D3D11_QUERY_TIMESTAMP_DISJOINT: D3D11_QUERY = D3D11_QUERY(3i32);
5222#[repr(transparent)]
5223#[derive(Clone, Copy, Debug, Default, Eq, PartialEq)]
5224pub struct D3D11_RAISE_FLAG(pub i32);
5225pub const D3D11_RAISE_FLAG_DRIVER_INTERNAL_ERROR: D3D11_RAISE_FLAG = D3D11_RAISE_FLAG(1i32);
5226#[repr(C)]
5227#[derive(Clone, Copy, Debug, PartialEq)]
5228pub struct D3D11_RASTERIZER_DESC {
5229 pub FillMode: D3D11_FILL_MODE,
5230 pub CullMode: D3D11_CULL_MODE,
5231 pub FrontCounterClockwise: crate::Foundation::BOOL,
5232 pub DepthBias: i32,
5233 pub DepthBiasClamp: f32,
5234 pub SlopeScaledDepthBias: f32,
5235 pub DepthClipEnable: crate::Foundation::BOOL,
5236 pub ScissorEnable: crate::Foundation::BOOL,
5237 pub MultisampleEnable: crate::Foundation::BOOL,
5238 pub AntialiasedLineEnable: crate::Foundation::BOOL,
5239}
5240impl Default for D3D11_RASTERIZER_DESC {
5241 fn default() -> Self {
5242 unsafe { core::mem::zeroed() }
5243 }
5244}
5245#[repr(C)]
5246#[derive(Clone, Copy, Debug, PartialEq)]
5247pub struct D3D11_RASTERIZER_DESC1 {
5248 pub FillMode: D3D11_FILL_MODE,
5249 pub CullMode: D3D11_CULL_MODE,
5250 pub FrontCounterClockwise: crate::Foundation::BOOL,
5251 pub DepthBias: i32,
5252 pub DepthBiasClamp: f32,
5253 pub SlopeScaledDepthBias: f32,
5254 pub DepthClipEnable: crate::Foundation::BOOL,
5255 pub ScissorEnable: crate::Foundation::BOOL,
5256 pub MultisampleEnable: crate::Foundation::BOOL,
5257 pub AntialiasedLineEnable: crate::Foundation::BOOL,
5258 pub ForcedSampleCount: u32,
5259}
5260impl Default for D3D11_RASTERIZER_DESC1 {
5261 fn default() -> Self {
5262 unsafe { core::mem::zeroed() }
5263 }
5264}
5265#[repr(C)]
5266#[derive(Clone, Copy, Debug, PartialEq)]
5267pub struct D3D11_RASTERIZER_DESC2 {
5268 pub FillMode: D3D11_FILL_MODE,
5269 pub CullMode: D3D11_CULL_MODE,
5270 pub FrontCounterClockwise: crate::Foundation::BOOL,
5271 pub DepthBias: i32,
5272 pub DepthBiasClamp: f32,
5273 pub SlopeScaledDepthBias: f32,
5274 pub DepthClipEnable: crate::Foundation::BOOL,
5275 pub ScissorEnable: crate::Foundation::BOOL,
5276 pub MultisampleEnable: crate::Foundation::BOOL,
5277 pub AntialiasedLineEnable: crate::Foundation::BOOL,
5278 pub ForcedSampleCount: u32,
5279 pub ConservativeRaster: D3D11_CONSERVATIVE_RASTERIZATION_MODE,
5280}
5281impl Default for D3D11_RASTERIZER_DESC2 {
5282 fn default() -> Self {
5283 unsafe { core::mem::zeroed() }
5284 }
5285}
5286pub const D3D11_RAW_UAV_SRV_BYTE_ALIGNMENT: u32 = 16u32;
5287pub const D3D11_REGKEY_PATH: crate::core_supplemental::PCWSTR =
5288 crate::core_supplemental::w!("Software\\Microsoft\\Direct3D");
5289#[repr(C)]
5290#[derive(Clone, Copy, Debug, PartialEq)]
5291pub struct D3D11_RENDER_TARGET_BLEND_DESC {
5292 pub BlendEnable: crate::Foundation::BOOL,
5293 pub SrcBlend: D3D11_BLEND,
5294 pub DestBlend: D3D11_BLEND,
5295 pub BlendOp: D3D11_BLEND_OP,
5296 pub SrcBlendAlpha: D3D11_BLEND,
5297 pub DestBlendAlpha: D3D11_BLEND,
5298 pub BlendOpAlpha: D3D11_BLEND_OP,
5299 pub RenderTargetWriteMask: u8,
5300}
5301impl Default for D3D11_RENDER_TARGET_BLEND_DESC {
5302 fn default() -> Self {
5303 unsafe { core::mem::zeroed() }
5304 }
5305}
5306#[repr(C)]
5307#[derive(Clone, Copy, Debug, PartialEq)]
5308pub struct D3D11_RENDER_TARGET_BLEND_DESC1 {
5309 pub BlendEnable: crate::Foundation::BOOL,
5310 pub LogicOpEnable: crate::Foundation::BOOL,
5311 pub SrcBlend: D3D11_BLEND,
5312 pub DestBlend: D3D11_BLEND,
5313 pub BlendOp: D3D11_BLEND_OP,
5314 pub SrcBlendAlpha: D3D11_BLEND,
5315 pub DestBlendAlpha: D3D11_BLEND,
5316 pub BlendOpAlpha: D3D11_BLEND_OP,
5317 pub LogicOp: D3D11_LOGIC_OP,
5318 pub RenderTargetWriteMask: u8,
5319}
5320impl Default for D3D11_RENDER_TARGET_BLEND_DESC1 {
5321 fn default() -> Self {
5322 unsafe { core::mem::zeroed() }
5323 }
5324}
5325#[repr(C)]
5326#[cfg(feature = "Win32_Graphics_Dxgi_Common")]
5327#[derive(Clone, Copy)]
5328pub struct D3D11_RENDER_TARGET_VIEW_DESC {
5329 pub Format: crate::Dxgi::Common::DXGI_FORMAT,
5330 pub ViewDimension: D3D11_RTV_DIMENSION,
5331 pub Anonymous: D3D11_RENDER_TARGET_VIEW_DESC_0,
5332}
5333#[cfg(feature = "Win32_Graphics_Dxgi_Common")]
5334impl Default for D3D11_RENDER_TARGET_VIEW_DESC {
5335 fn default() -> Self {
5336 unsafe { core::mem::zeroed() }
5337 }
5338}
5339#[repr(C)]
5340#[cfg(feature = "Win32_Graphics_Dxgi_Common")]
5341#[derive(Clone, Copy)]
5342pub union D3D11_RENDER_TARGET_VIEW_DESC_0 {
5343 pub Buffer: D3D11_BUFFER_RTV,
5344 pub Texture1D: D3D11_TEX1D_RTV,
5345 pub Texture1DArray: D3D11_TEX1D_ARRAY_RTV,
5346 pub Texture2D: D3D11_TEX2D_RTV,
5347 pub Texture2DArray: D3D11_TEX2D_ARRAY_RTV,
5348 pub Texture2DMS: D3D11_TEX2DMS_RTV,
5349 pub Texture2DMSArray: D3D11_TEX2DMS_ARRAY_RTV,
5350 pub Texture3D: D3D11_TEX3D_RTV,
5351}
5352#[cfg(feature = "Win32_Graphics_Dxgi_Common")]
5353impl Default for D3D11_RENDER_TARGET_VIEW_DESC_0 {
5354 fn default() -> Self {
5355 unsafe { core::mem::zeroed() }
5356 }
5357}
5358#[repr(C)]
5359#[cfg(feature = "Win32_Graphics_Dxgi_Common")]
5360#[derive(Clone, Copy)]
5361pub struct D3D11_RENDER_TARGET_VIEW_DESC1 {
5362 pub Format: crate::Dxgi::Common::DXGI_FORMAT,
5363 pub ViewDimension: D3D11_RTV_DIMENSION,
5364 pub Anonymous: D3D11_RENDER_TARGET_VIEW_DESC1_0,
5365}
5366#[cfg(feature = "Win32_Graphics_Dxgi_Common")]
5367impl Default for D3D11_RENDER_TARGET_VIEW_DESC1 {
5368 fn default() -> Self {
5369 unsafe { core::mem::zeroed() }
5370 }
5371}
5372#[repr(C)]
5373#[cfg(feature = "Win32_Graphics_Dxgi_Common")]
5374#[derive(Clone, Copy)]
5375pub union D3D11_RENDER_TARGET_VIEW_DESC1_0 {
5376 pub Buffer: D3D11_BUFFER_RTV,
5377 pub Texture1D: D3D11_TEX1D_RTV,
5378 pub Texture1DArray: D3D11_TEX1D_ARRAY_RTV,
5379 pub Texture2D: D3D11_TEX2D_RTV1,
5380 pub Texture2DArray: D3D11_TEX2D_ARRAY_RTV1,
5381 pub Texture2DMS: D3D11_TEX2DMS_RTV,
5382 pub Texture2DMSArray: D3D11_TEX2DMS_ARRAY_RTV,
5383 pub Texture3D: D3D11_TEX3D_RTV,
5384}
5385#[cfg(feature = "Win32_Graphics_Dxgi_Common")]
5386impl Default for D3D11_RENDER_TARGET_VIEW_DESC1_0 {
5387 fn default() -> Self {
5388 unsafe { core::mem::zeroed() }
5389 }
5390}
5391pub const D3D11_REQ_BLEND_OBJECT_COUNT_PER_DEVICE: u32 = 4096u32;
5392pub const D3D11_REQ_BUFFER_RESOURCE_TEXEL_COUNT_2_TO_EXP: u32 = 27u32;
5393pub const D3D11_REQ_CONSTANT_BUFFER_ELEMENT_COUNT: u32 = 4096u32;
5394pub const D3D11_REQ_DEPTH_STENCIL_OBJECT_COUNT_PER_DEVICE: u32 = 4096u32;
5395pub const D3D11_REQ_DRAWINDEXED_INDEX_COUNT_2_TO_EXP: u32 = 32u32;
5396pub const D3D11_REQ_DRAW_VERTEX_COUNT_2_TO_EXP: u32 = 32u32;
5397pub const D3D11_REQ_FILTERING_HW_ADDRESSABLE_RESOURCE_DIMENSION: u32 = 16384u32;
5398pub const D3D11_REQ_GS_INVOCATION_32BIT_OUTPUT_COMPONENT_LIMIT: u32 = 1024u32;
5399pub const D3D11_REQ_IMMEDIATE_CONSTANT_BUFFER_ELEMENT_COUNT: u32 = 4096u32;
5400pub const D3D11_REQ_MAXANISOTROPY: u32 = 16u32;
5401pub const D3D11_REQ_MIP_LEVELS: u32 = 15u32;
5402pub const D3D11_REQ_MULTI_ELEMENT_STRUCTURE_SIZE_IN_BYTES: u32 = 2048u32;
5403pub const D3D11_REQ_RASTERIZER_OBJECT_COUNT_PER_DEVICE: u32 = 4096u32;
5404pub const D3D11_REQ_RENDER_TO_BUFFER_WINDOW_WIDTH: u32 = 16384u32;
5405pub const D3D11_REQ_RESOURCE_SIZE_IN_MEGABYTES_EXPRESSION_A_TERM: u32 = 128u32;
5406pub const D3D11_REQ_RESOURCE_SIZE_IN_MEGABYTES_EXPRESSION_B_TERM: f32 = 0.25f32;
5407pub const D3D11_REQ_RESOURCE_SIZE_IN_MEGABYTES_EXPRESSION_C_TERM: u32 = 2048u32;
5408pub const D3D11_REQ_RESOURCE_VIEW_COUNT_PER_DEVICE_2_TO_EXP: u32 = 20u32;
5409pub const D3D11_REQ_SAMPLER_OBJECT_COUNT_PER_DEVICE: u32 = 4096u32;
5410pub const D3D11_REQ_TEXTURE1D_ARRAY_AXIS_DIMENSION: u32 = 2048u32;
5411pub const D3D11_REQ_TEXTURE1D_U_DIMENSION: u32 = 16384u32;
5412pub const D3D11_REQ_TEXTURE2D_ARRAY_AXIS_DIMENSION: u32 = 2048u32;
5413pub const D3D11_REQ_TEXTURE2D_U_OR_V_DIMENSION: u32 = 16384u32;
5414pub const D3D11_REQ_TEXTURE3D_U_V_OR_W_DIMENSION: u32 = 2048u32;
5415pub const D3D11_REQ_TEXTURECUBE_DIMENSION: u32 = 16384u32;
5416pub const D3D11_RESINFO_INSTRUCTION_MISSING_COMPONENT_RETVAL: u32 = 0u32;
5417#[repr(transparent)]
5418#[derive(Clone, Copy, Debug, Default, Eq, PartialEq)]
5419pub struct D3D11_RESOURCE_DIMENSION(pub i32);
5420pub const D3D11_RESOURCE_DIMENSION_BUFFER: D3D11_RESOURCE_DIMENSION =
5421 D3D11_RESOURCE_DIMENSION(1i32);
5422pub const D3D11_RESOURCE_DIMENSION_TEXTURE1D: D3D11_RESOURCE_DIMENSION =
5423 D3D11_RESOURCE_DIMENSION(2i32);
5424pub const D3D11_RESOURCE_DIMENSION_TEXTURE2D: D3D11_RESOURCE_DIMENSION =
5425 D3D11_RESOURCE_DIMENSION(3i32);
5426pub const D3D11_RESOURCE_DIMENSION_TEXTURE3D: D3D11_RESOURCE_DIMENSION =
5427 D3D11_RESOURCE_DIMENSION(4i32);
5428pub const D3D11_RESOURCE_DIMENSION_UNKNOWN: D3D11_RESOURCE_DIMENSION =
5429 D3D11_RESOURCE_DIMENSION(0i32);
5430pub const D3D11_RESOURCE_MISC_BUFFER_ALLOW_RAW_VIEWS: D3D11_RESOURCE_MISC_FLAG =
5431 D3D11_RESOURCE_MISC_FLAG(32i32);
5432pub const D3D11_RESOURCE_MISC_BUFFER_STRUCTURED: D3D11_RESOURCE_MISC_FLAG =
5433 D3D11_RESOURCE_MISC_FLAG(64i32);
5434pub const D3D11_RESOURCE_MISC_DRAWINDIRECT_ARGS: D3D11_RESOURCE_MISC_FLAG =
5435 D3D11_RESOURCE_MISC_FLAG(16i32);
5436#[repr(transparent)]
5437#[derive(Clone, Copy, Debug, Default, Eq, PartialEq)]
5438pub struct D3D11_RESOURCE_MISC_FLAG(pub i32);
5439impl D3D11_RESOURCE_MISC_FLAG {
5440 pub const fn contains(&self, other: Self) -> bool {
5441 self.0 & other.0 == other.0
5442 }
5443}
5444impl core::ops::BitOr for D3D11_RESOURCE_MISC_FLAG {
5445 type Output = Self;
5446 fn bitor(self, other: Self) -> Self {
5447 Self(self.0 | other.0)
5448 }
5449}
5450impl core::ops::BitAnd for D3D11_RESOURCE_MISC_FLAG {
5451 type Output = Self;
5452 fn bitand(self, other: Self) -> Self {
5453 Self(self.0 & other.0)
5454 }
5455}
5456impl core::ops::BitOrAssign for D3D11_RESOURCE_MISC_FLAG {
5457 fn bitor_assign(&mut self, other: Self) {
5458 self.0.bitor_assign(other.0)
5459 }
5460}
5461impl core::ops::BitAndAssign for D3D11_RESOURCE_MISC_FLAG {
5462 fn bitand_assign(&mut self, other: Self) {
5463 self.0.bitand_assign(other.0)
5464 }
5465}
5466impl core::ops::Not for D3D11_RESOURCE_MISC_FLAG {
5467 type Output = Self;
5468 fn not(self) -> Self {
5469 Self(self.0.not())
5470 }
5471}
5472pub const D3D11_RESOURCE_MISC_GDI_COMPATIBLE: D3D11_RESOURCE_MISC_FLAG =
5473 D3D11_RESOURCE_MISC_FLAG(512i32);
5474pub const D3D11_RESOURCE_MISC_GENERATE_MIPS: D3D11_RESOURCE_MISC_FLAG =
5475 D3D11_RESOURCE_MISC_FLAG(1i32);
5476pub const D3D11_RESOURCE_MISC_GUARDED: D3D11_RESOURCE_MISC_FLAG =
5477 D3D11_RESOURCE_MISC_FLAG(32768i32);
5478pub const D3D11_RESOURCE_MISC_HW_PROTECTED: D3D11_RESOURCE_MISC_FLAG =
5479 D3D11_RESOURCE_MISC_FLAG(524288i32);
5480pub const D3D11_RESOURCE_MISC_RESOURCE_CLAMP: D3D11_RESOURCE_MISC_FLAG =
5481 D3D11_RESOURCE_MISC_FLAG(128i32);
5482pub const D3D11_RESOURCE_MISC_RESTRICTED_CONTENT: D3D11_RESOURCE_MISC_FLAG =
5483 D3D11_RESOURCE_MISC_FLAG(4096i32);
5484pub const D3D11_RESOURCE_MISC_RESTRICT_SHARED_RESOURCE: D3D11_RESOURCE_MISC_FLAG =
5485 D3D11_RESOURCE_MISC_FLAG(8192i32);
5486pub const D3D11_RESOURCE_MISC_RESTRICT_SHARED_RESOURCE_DRIVER: D3D11_RESOURCE_MISC_FLAG =
5487 D3D11_RESOURCE_MISC_FLAG(16384i32);
5488pub const D3D11_RESOURCE_MISC_SHARED: D3D11_RESOURCE_MISC_FLAG = D3D11_RESOURCE_MISC_FLAG(2i32);
5489pub const D3D11_RESOURCE_MISC_SHARED_DISPLAYABLE: D3D11_RESOURCE_MISC_FLAG =
5490 D3D11_RESOURCE_MISC_FLAG(1048576i32);
5491pub const D3D11_RESOURCE_MISC_SHARED_EXCLUSIVE_WRITER: D3D11_RESOURCE_MISC_FLAG =
5492 D3D11_RESOURCE_MISC_FLAG(2097152i32);
5493pub const D3D11_RESOURCE_MISC_SHARED_KEYEDMUTEX: D3D11_RESOURCE_MISC_FLAG =
5494 D3D11_RESOURCE_MISC_FLAG(256i32);
5495pub const D3D11_RESOURCE_MISC_SHARED_NTHANDLE: D3D11_RESOURCE_MISC_FLAG =
5496 D3D11_RESOURCE_MISC_FLAG(2048i32);
5497pub const D3D11_RESOURCE_MISC_TEXTURECUBE: D3D11_RESOURCE_MISC_FLAG =
5498 D3D11_RESOURCE_MISC_FLAG(4i32);
5499pub const D3D11_RESOURCE_MISC_TILED: D3D11_RESOURCE_MISC_FLAG = D3D11_RESOURCE_MISC_FLAG(262144i32);
5500pub const D3D11_RESOURCE_MISC_TILE_POOL: D3D11_RESOURCE_MISC_FLAG =
5501 D3D11_RESOURCE_MISC_FLAG(131072i32);
5502pub const D3D11_RLDO_DETAIL: D3D11_RLDO_FLAGS = D3D11_RLDO_FLAGS(2i32);
5503#[repr(transparent)]
5504#[derive(Clone, Copy, Debug, Default, Eq, PartialEq)]
5505pub struct D3D11_RLDO_FLAGS(pub i32);
5506impl D3D11_RLDO_FLAGS {
5507 pub const fn contains(&self, other: Self) -> bool {
5508 self.0 & other.0 == other.0
5509 }
5510}
5511impl core::ops::BitOr for D3D11_RLDO_FLAGS {
5512 type Output = Self;
5513 fn bitor(self, other: Self) -> Self {
5514 Self(self.0 | other.0)
5515 }
5516}
5517impl core::ops::BitAnd for D3D11_RLDO_FLAGS {
5518 type Output = Self;
5519 fn bitand(self, other: Self) -> Self {
5520 Self(self.0 & other.0)
5521 }
5522}
5523impl core::ops::BitOrAssign for D3D11_RLDO_FLAGS {
5524 fn bitor_assign(&mut self, other: Self) {
5525 self.0.bitor_assign(other.0)
5526 }
5527}
5528impl core::ops::BitAndAssign for D3D11_RLDO_FLAGS {
5529 fn bitand_assign(&mut self, other: Self) {
5530 self.0.bitand_assign(other.0)
5531 }
5532}
5533impl core::ops::Not for D3D11_RLDO_FLAGS {
5534 type Output = Self;
5535 fn not(self) -> Self {
5536 Self(self.0.not())
5537 }
5538}
5539pub const D3D11_RLDO_IGNORE_INTERNAL: D3D11_RLDO_FLAGS = D3D11_RLDO_FLAGS(4i32);
5540pub const D3D11_RLDO_SUMMARY: D3D11_RLDO_FLAGS = D3D11_RLDO_FLAGS(1i32);
5541#[repr(transparent)]
5542#[derive(Clone, Copy, Debug, Default, Eq, PartialEq)]
5543pub struct D3D11_RTV_DIMENSION(pub i32);
5544pub const D3D11_RTV_DIMENSION_BUFFER: D3D11_RTV_DIMENSION = D3D11_RTV_DIMENSION(1i32);
5545pub const D3D11_RTV_DIMENSION_TEXTURE1D: D3D11_RTV_DIMENSION = D3D11_RTV_DIMENSION(2i32);
5546pub const D3D11_RTV_DIMENSION_TEXTURE1DARRAY: D3D11_RTV_DIMENSION = D3D11_RTV_DIMENSION(3i32);
5547pub const D3D11_RTV_DIMENSION_TEXTURE2D: D3D11_RTV_DIMENSION = D3D11_RTV_DIMENSION(4i32);
5548pub const D3D11_RTV_DIMENSION_TEXTURE2DARRAY: D3D11_RTV_DIMENSION = D3D11_RTV_DIMENSION(5i32);
5549pub const D3D11_RTV_DIMENSION_TEXTURE2DMS: D3D11_RTV_DIMENSION = D3D11_RTV_DIMENSION(6i32);
5550pub const D3D11_RTV_DIMENSION_TEXTURE2DMSARRAY: D3D11_RTV_DIMENSION = D3D11_RTV_DIMENSION(7i32);
5551pub const D3D11_RTV_DIMENSION_TEXTURE3D: D3D11_RTV_DIMENSION = D3D11_RTV_DIMENSION(8i32);
5552pub const D3D11_RTV_DIMENSION_UNKNOWN: D3D11_RTV_DIMENSION = D3D11_RTV_DIMENSION(0i32);
5553#[repr(C)]
5554#[derive(Clone, Copy, Debug, PartialEq)]
5555pub struct D3D11_SAMPLER_DESC {
5556 pub Filter: D3D11_FILTER,
5557 pub AddressU: D3D11_TEXTURE_ADDRESS_MODE,
5558 pub AddressV: D3D11_TEXTURE_ADDRESS_MODE,
5559 pub AddressW: D3D11_TEXTURE_ADDRESS_MODE,
5560 pub MipLODBias: f32,
5561 pub MaxAnisotropy: u32,
5562 pub ComparisonFunc: D3D11_COMPARISON_FUNC,
5563 pub BorderColor: [f32; 4],
5564 pub MinLOD: f32,
5565 pub MaxLOD: f32,
5566}
5567impl Default for D3D11_SAMPLER_DESC {
5568 fn default() -> Self {
5569 unsafe { core::mem::zeroed() }
5570 }
5571}
5572pub const D3D11_SDK_LAYERS_VERSION: u32 = 1u32;
5573pub const D3D11_SDK_VERSION: u32 = 7u32;
5574#[repr(C)]
5575#[cfg(feature = "Win32_Graphics_Direct3D")]
5576#[derive(Clone, Copy, Debug, PartialEq)]
5577pub struct D3D11_SHADER_BUFFER_DESC {
5578 pub Name: crate::core_supplemental::PCSTR,
5579 pub Type: super::Direct3D::D3D_CBUFFER_TYPE,
5580 pub Variables: u32,
5581 pub Size: u32,
5582 pub uFlags: u32,
5583}
5584#[cfg(feature = "Win32_Graphics_Direct3D")]
5585impl Default for D3D11_SHADER_BUFFER_DESC {
5586 fn default() -> Self {
5587 unsafe { core::mem::zeroed() }
5588 }
5589}
5590pub const D3D11_SHADER_CACHE_SUPPORT_AUTOMATIC_DISK_CACHE: D3D11_SHADER_CACHE_SUPPORT_FLAGS =
5591 D3D11_SHADER_CACHE_SUPPORT_FLAGS(2i32);
5592pub const D3D11_SHADER_CACHE_SUPPORT_AUTOMATIC_INPROC_CACHE: D3D11_SHADER_CACHE_SUPPORT_FLAGS =
5593 D3D11_SHADER_CACHE_SUPPORT_FLAGS(1i32);
5594#[repr(transparent)]
5595#[derive(Clone, Copy, Debug, Default, Eq, PartialEq)]
5596pub struct D3D11_SHADER_CACHE_SUPPORT_FLAGS(pub i32);
5597pub const D3D11_SHADER_CACHE_SUPPORT_NONE: D3D11_SHADER_CACHE_SUPPORT_FLAGS =
5598 D3D11_SHADER_CACHE_SUPPORT_FLAGS(0i32);
5599#[repr(C)]
5600#[cfg(feature = "Win32_Graphics_Direct3D")]
5601#[derive(Clone, Copy, Debug, PartialEq)]
5602pub struct D3D11_SHADER_DESC {
5603 pub Version: u32,
5604 pub Creator: crate::core_supplemental::PCSTR,
5605 pub Flags: u32,
5606 pub ConstantBuffers: u32,
5607 pub BoundResources: u32,
5608 pub InputParameters: u32,
5609 pub OutputParameters: u32,
5610 pub InstructionCount: u32,
5611 pub TempRegisterCount: u32,
5612 pub TempArrayCount: u32,
5613 pub DefCount: u32,
5614 pub DclCount: u32,
5615 pub TextureNormalInstructions: u32,
5616 pub TextureLoadInstructions: u32,
5617 pub TextureCompInstructions: u32,
5618 pub TextureBiasInstructions: u32,
5619 pub TextureGradientInstructions: u32,
5620 pub FloatInstructionCount: u32,
5621 pub IntInstructionCount: u32,
5622 pub UintInstructionCount: u32,
5623 pub StaticFlowControlCount: u32,
5624 pub DynamicFlowControlCount: u32,
5625 pub MacroInstructionCount: u32,
5626 pub ArrayInstructionCount: u32,
5627 pub CutInstructionCount: u32,
5628 pub EmitInstructionCount: u32,
5629 pub GSOutputTopology: super::Direct3D::D3D_PRIMITIVE_TOPOLOGY,
5630 pub GSMaxOutputVertexCount: u32,
5631 pub InputPrimitive: super::Direct3D::D3D_PRIMITIVE,
5632 pub PatchConstantParameters: u32,
5633 pub cGSInstanceCount: u32,
5634 pub cControlPoints: u32,
5635 pub HSOutputPrimitive: super::Direct3D::D3D_TESSELLATOR_OUTPUT_PRIMITIVE,
5636 pub HSPartitioning: super::Direct3D::D3D_TESSELLATOR_PARTITIONING,
5637 pub TessellatorDomain: super::Direct3D::D3D_TESSELLATOR_DOMAIN,
5638 pub cBarrierInstructions: u32,
5639 pub cInterlockedInstructions: u32,
5640 pub cTextureStoreInstructions: u32,
5641}
5642#[cfg(feature = "Win32_Graphics_Direct3D")]
5643impl Default for D3D11_SHADER_DESC {
5644 fn default() -> Self {
5645 unsafe { core::mem::zeroed() }
5646 }
5647}
5648#[repr(C)]
5649#[cfg(feature = "Win32_Graphics_Direct3D")]
5650#[derive(Clone, Copy, Debug, PartialEq)]
5651pub struct D3D11_SHADER_INPUT_BIND_DESC {
5652 pub Name: crate::core_supplemental::PCSTR,
5653 pub Type: super::Direct3D::D3D_SHADER_INPUT_TYPE,
5654 pub BindPoint: u32,
5655 pub BindCount: u32,
5656 pub uFlags: u32,
5657 pub ReturnType: super::Direct3D::D3D_RESOURCE_RETURN_TYPE,
5658 pub Dimension: super::Direct3D::D3D_SRV_DIMENSION,
5659 pub NumSamples: u32,
5660}
5661#[cfg(feature = "Win32_Graphics_Direct3D")]
5662impl Default for D3D11_SHADER_INPUT_BIND_DESC {
5663 fn default() -> Self {
5664 unsafe { core::mem::zeroed() }
5665 }
5666}
5667pub const D3D11_SHADER_MAJOR_VERSION: u32 = 5u32;
5668pub const D3D11_SHADER_MAX_INSTANCES: u32 = 65535u32;
5669pub const D3D11_SHADER_MAX_INTERFACES: u32 = 253u32;
5670pub const D3D11_SHADER_MAX_INTERFACE_CALL_SITES: u32 = 4096u32;
5671pub const D3D11_SHADER_MAX_TYPES: u32 = 65535u32;
5672pub const D3D11_SHADER_MINOR_VERSION: u32 = 0u32;
5673pub const D3D11_SHADER_MIN_PRECISION_10_BIT: D3D11_SHADER_MIN_PRECISION_SUPPORT =
5674 D3D11_SHADER_MIN_PRECISION_SUPPORT(1i32);
5675pub const D3D11_SHADER_MIN_PRECISION_16_BIT: D3D11_SHADER_MIN_PRECISION_SUPPORT =
5676 D3D11_SHADER_MIN_PRECISION_SUPPORT(2i32);
5677#[repr(transparent)]
5678#[derive(Clone, Copy, Debug, Default, Eq, PartialEq)]
5679pub struct D3D11_SHADER_MIN_PRECISION_SUPPORT(pub i32);
5680#[repr(C)]
5681#[cfg(all(
5682 feature = "Win32_Graphics_Direct3D",
5683 feature = "Win32_Graphics_Dxgi_Common"
5684))]
5685#[derive(Clone, Copy)]
5686pub struct D3D11_SHADER_RESOURCE_VIEW_DESC {
5687 pub Format: crate::Dxgi::Common::DXGI_FORMAT,
5688 pub ViewDimension: super::Direct3D::D3D_SRV_DIMENSION,
5689 pub Anonymous: D3D11_SHADER_RESOURCE_VIEW_DESC_0,
5690}
5691#[cfg(all(
5692 feature = "Win32_Graphics_Direct3D",
5693 feature = "Win32_Graphics_Dxgi_Common"
5694))]
5695impl Default for D3D11_SHADER_RESOURCE_VIEW_DESC {
5696 fn default() -> Self {
5697 unsafe { core::mem::zeroed() }
5698 }
5699}
5700#[repr(C)]
5701#[cfg(all(
5702 feature = "Win32_Graphics_Direct3D",
5703 feature = "Win32_Graphics_Dxgi_Common"
5704))]
5705#[derive(Clone, Copy)]
5706pub union D3D11_SHADER_RESOURCE_VIEW_DESC_0 {
5707 pub Buffer: D3D11_BUFFER_SRV,
5708 pub Texture1D: D3D11_TEX1D_SRV,
5709 pub Texture1DArray: D3D11_TEX1D_ARRAY_SRV,
5710 pub Texture2D: D3D11_TEX2D_SRV,
5711 pub Texture2DArray: D3D11_TEX2D_ARRAY_SRV,
5712 pub Texture2DMS: D3D11_TEX2DMS_SRV,
5713 pub Texture2DMSArray: D3D11_TEX2DMS_ARRAY_SRV,
5714 pub Texture3D: D3D11_TEX3D_SRV,
5715 pub TextureCube: D3D11_TEXCUBE_SRV,
5716 pub TextureCubeArray: D3D11_TEXCUBE_ARRAY_SRV,
5717 pub BufferEx: D3D11_BUFFEREX_SRV,
5718}
5719#[cfg(all(
5720 feature = "Win32_Graphics_Direct3D",
5721 feature = "Win32_Graphics_Dxgi_Common"
5722))]
5723impl Default for D3D11_SHADER_RESOURCE_VIEW_DESC_0 {
5724 fn default() -> Self {
5725 unsafe { core::mem::zeroed() }
5726 }
5727}
5728#[repr(C)]
5729#[cfg(all(
5730 feature = "Win32_Graphics_Direct3D",
5731 feature = "Win32_Graphics_Dxgi_Common"
5732))]
5733#[derive(Clone, Copy)]
5734pub struct D3D11_SHADER_RESOURCE_VIEW_DESC1 {
5735 pub Format: crate::Dxgi::Common::DXGI_FORMAT,
5736 pub ViewDimension: super::Direct3D::D3D_SRV_DIMENSION,
5737 pub Anonymous: D3D11_SHADER_RESOURCE_VIEW_DESC1_0,
5738}
5739#[cfg(all(
5740 feature = "Win32_Graphics_Direct3D",
5741 feature = "Win32_Graphics_Dxgi_Common"
5742))]
5743impl Default for D3D11_SHADER_RESOURCE_VIEW_DESC1 {
5744 fn default() -> Self {
5745 unsafe { core::mem::zeroed() }
5746 }
5747}
5748#[repr(C)]
5749#[cfg(all(
5750 feature = "Win32_Graphics_Direct3D",
5751 feature = "Win32_Graphics_Dxgi_Common"
5752))]
5753#[derive(Clone, Copy)]
5754pub union D3D11_SHADER_RESOURCE_VIEW_DESC1_0 {
5755 pub Buffer: D3D11_BUFFER_SRV,
5756 pub Texture1D: D3D11_TEX1D_SRV,
5757 pub Texture1DArray: D3D11_TEX1D_ARRAY_SRV,
5758 pub Texture2D: D3D11_TEX2D_SRV1,
5759 pub Texture2DArray: D3D11_TEX2D_ARRAY_SRV1,
5760 pub Texture2DMS: D3D11_TEX2DMS_SRV,
5761 pub Texture2DMSArray: D3D11_TEX2DMS_ARRAY_SRV,
5762 pub Texture3D: D3D11_TEX3D_SRV,
5763 pub TextureCube: D3D11_TEXCUBE_SRV,
5764 pub TextureCubeArray: D3D11_TEXCUBE_ARRAY_SRV,
5765 pub BufferEx: D3D11_BUFFEREX_SRV,
5766}
5767#[cfg(all(
5768 feature = "Win32_Graphics_Direct3D",
5769 feature = "Win32_Graphics_Dxgi_Common"
5770))]
5771impl Default for D3D11_SHADER_RESOURCE_VIEW_DESC1_0 {
5772 fn default() -> Self {
5773 unsafe { core::mem::zeroed() }
5774 }
5775}
5776#[repr(C)]
5777#[derive(Clone, Copy)]
5778pub struct D3D11_SHADER_TRACE_DESC {
5779 pub Type: D3D11_SHADER_TYPE,
5780 pub Flags: u32,
5781 pub Anonymous: D3D11_SHADER_TRACE_DESC_0,
5782}
5783impl Default for D3D11_SHADER_TRACE_DESC {
5784 fn default() -> Self {
5785 unsafe { core::mem::zeroed() }
5786 }
5787}
5788#[repr(C)]
5789#[derive(Clone, Copy)]
5790pub union D3D11_SHADER_TRACE_DESC_0 {
5791 pub VertexShaderTraceDesc: D3D11_VERTEX_SHADER_TRACE_DESC,
5792 pub HullShaderTraceDesc: D3D11_HULL_SHADER_TRACE_DESC,
5793 pub DomainShaderTraceDesc: D3D11_DOMAIN_SHADER_TRACE_DESC,
5794 pub GeometryShaderTraceDesc: D3D11_GEOMETRY_SHADER_TRACE_DESC,
5795 pub PixelShaderTraceDesc: D3D11_PIXEL_SHADER_TRACE_DESC,
5796 pub ComputeShaderTraceDesc: D3D11_COMPUTE_SHADER_TRACE_DESC,
5797}
5798impl Default for D3D11_SHADER_TRACE_DESC_0 {
5799 fn default() -> Self {
5800 unsafe { core::mem::zeroed() }
5801 }
5802}
5803pub const D3D11_SHADER_TRACE_FLAG_RECORD_REGISTER_READS: u32 = 2u32;
5804pub const D3D11_SHADER_TRACE_FLAG_RECORD_REGISTER_WRITES: u32 = 1u32;
5805#[repr(transparent)]
5806#[derive(Clone, Copy, Debug, Default, Eq, PartialEq)]
5807pub struct D3D11_SHADER_TRACKING_OPTIONS(pub i32);
5808pub const D3D11_SHADER_TRACKING_OPTION_ALLOW_SAME: D3D11_SHADER_TRACKING_OPTIONS =
5809 D3D11_SHADER_TRACKING_OPTIONS(16i32);
5810pub const D3D11_SHADER_TRACKING_OPTION_ALL_HAZARDS: D3D11_SHADER_TRACKING_OPTIONS =
5811 D3D11_SHADER_TRACKING_OPTIONS(1006i32);
5812pub const D3D11_SHADER_TRACKING_OPTION_ALL_HAZARDS_ALLOWING_SAME: D3D11_SHADER_TRACKING_OPTIONS =
5813 D3D11_SHADER_TRACKING_OPTIONS(1022i32);
5814pub const D3D11_SHADER_TRACKING_OPTION_ALL_OPTIONS: D3D11_SHADER_TRACKING_OPTIONS =
5815 D3D11_SHADER_TRACKING_OPTIONS(1023i32);
5816pub const D3D11_SHADER_TRACKING_OPTION_IGNORE: D3D11_SHADER_TRACKING_OPTIONS =
5817 D3D11_SHADER_TRACKING_OPTIONS(0i32);
5818pub const D3D11_SHADER_TRACKING_OPTION_TRACK_ATOMIC_CONSISTENCY: D3D11_SHADER_TRACKING_OPTIONS =
5819 D3D11_SHADER_TRACKING_OPTIONS(32i32);
5820pub const D3D11_SHADER_TRACKING_OPTION_TRACK_ATOMIC_CONSISTENCY_ACROSS_THREADGROUPS:
5821 D3D11_SHADER_TRACKING_OPTIONS = D3D11_SHADER_TRACKING_OPTIONS(512i32);
5822pub const D3D11_SHADER_TRACKING_OPTION_TRACK_RAW: D3D11_SHADER_TRACKING_OPTIONS =
5823 D3D11_SHADER_TRACKING_OPTIONS(2i32);
5824pub const D3D11_SHADER_TRACKING_OPTION_TRACK_RAW_ACROSS_THREADGROUPS:
5825 D3D11_SHADER_TRACKING_OPTIONS = D3D11_SHADER_TRACKING_OPTIONS(64i32);
5826pub const D3D11_SHADER_TRACKING_OPTION_TRACK_UNINITIALIZED: D3D11_SHADER_TRACKING_OPTIONS =
5827 D3D11_SHADER_TRACKING_OPTIONS(1i32);
5828pub const D3D11_SHADER_TRACKING_OPTION_TRACK_WAR: D3D11_SHADER_TRACKING_OPTIONS =
5829 D3D11_SHADER_TRACKING_OPTIONS(4i32);
5830pub const D3D11_SHADER_TRACKING_OPTION_TRACK_WAR_ACROSS_THREADGROUPS:
5831 D3D11_SHADER_TRACKING_OPTIONS = D3D11_SHADER_TRACKING_OPTIONS(128i32);
5832pub const D3D11_SHADER_TRACKING_OPTION_TRACK_WAW: D3D11_SHADER_TRACKING_OPTIONS =
5833 D3D11_SHADER_TRACKING_OPTIONS(8i32);
5834pub const D3D11_SHADER_TRACKING_OPTION_TRACK_WAW_ACROSS_THREADGROUPS:
5835 D3D11_SHADER_TRACKING_OPTIONS = D3D11_SHADER_TRACKING_OPTIONS(256i32);
5836pub const D3D11_SHADER_TRACKING_OPTION_UAV_SPECIFIC_FLAGS: D3D11_SHADER_TRACKING_OPTIONS =
5837 D3D11_SHADER_TRACKING_OPTIONS(960i32);
5838#[repr(transparent)]
5839#[derive(Clone, Copy, Debug, Default, Eq, PartialEq)]
5840pub struct D3D11_SHADER_TRACKING_RESOURCE_TYPE(pub i32);
5841pub const D3D11_SHADER_TRACKING_RESOURCE_TYPE_ALL: D3D11_SHADER_TRACKING_RESOURCE_TYPE =
5842 D3D11_SHADER_TRACKING_RESOURCE_TYPE(7i32);
5843pub const D3D11_SHADER_TRACKING_RESOURCE_TYPE_ALL_DEVICEMEMORY:
5844 D3D11_SHADER_TRACKING_RESOURCE_TYPE = D3D11_SHADER_TRACKING_RESOURCE_TYPE(3i32);
5845pub const D3D11_SHADER_TRACKING_RESOURCE_TYPE_ALL_SHARED_MEMORY:
5846 D3D11_SHADER_TRACKING_RESOURCE_TYPE = D3D11_SHADER_TRACKING_RESOURCE_TYPE(5i32);
5847pub const D3D11_SHADER_TRACKING_RESOURCE_TYPE_GROUPSHARED_MEMORY:
5848 D3D11_SHADER_TRACKING_RESOURCE_TYPE = D3D11_SHADER_TRACKING_RESOURCE_TYPE(4i32);
5849pub const D3D11_SHADER_TRACKING_RESOURCE_TYPE_GROUPSHARED_NON_UAV:
5850 D3D11_SHADER_TRACKING_RESOURCE_TYPE = D3D11_SHADER_TRACKING_RESOURCE_TYPE(6i32);
5851pub const D3D11_SHADER_TRACKING_RESOURCE_TYPE_NONE: D3D11_SHADER_TRACKING_RESOURCE_TYPE =
5852 D3D11_SHADER_TRACKING_RESOURCE_TYPE(0i32);
5853pub const D3D11_SHADER_TRACKING_RESOURCE_TYPE_NON_UAV_DEVICEMEMORY:
5854 D3D11_SHADER_TRACKING_RESOURCE_TYPE = D3D11_SHADER_TRACKING_RESOURCE_TYPE(2i32);
5855pub const D3D11_SHADER_TRACKING_RESOURCE_TYPE_UAV_DEVICEMEMORY:
5856 D3D11_SHADER_TRACKING_RESOURCE_TYPE = D3D11_SHADER_TRACKING_RESOURCE_TYPE(1i32);
5857#[repr(transparent)]
5858#[derive(Clone, Copy, Debug, Default, Eq, PartialEq)]
5859pub struct D3D11_SHADER_TYPE(pub i32);
5860#[repr(C)]
5861#[cfg(feature = "Win32_Graphics_Direct3D")]
5862#[derive(Clone, Copy, Debug, PartialEq)]
5863pub struct D3D11_SHADER_TYPE_DESC {
5864 pub Class: super::Direct3D::D3D_SHADER_VARIABLE_CLASS,
5865 pub Type: super::Direct3D::D3D_SHADER_VARIABLE_TYPE,
5866 pub Rows: u32,
5867 pub Columns: u32,
5868 pub Elements: u32,
5869 pub Members: u32,
5870 pub Offset: u32,
5871 pub Name: crate::core_supplemental::PCSTR,
5872}
5873#[cfg(feature = "Win32_Graphics_Direct3D")]
5874impl Default for D3D11_SHADER_TYPE_DESC {
5875 fn default() -> Self {
5876 unsafe { core::mem::zeroed() }
5877 }
5878}
5879#[repr(C)]
5880#[derive(Clone, Copy, Debug, PartialEq)]
5881pub struct D3D11_SHADER_VARIABLE_DESC {
5882 pub Name: crate::core_supplemental::PCSTR,
5883 pub StartOffset: u32,
5884 pub Size: u32,
5885 pub uFlags: u32,
5886 pub DefaultValue: *mut core::ffi::c_void,
5887 pub StartTexture: u32,
5888 pub TextureSize: u32,
5889 pub StartSampler: u32,
5890 pub SamplerSize: u32,
5891}
5892impl Default for D3D11_SHADER_VARIABLE_DESC {
5893 fn default() -> Self {
5894 unsafe { core::mem::zeroed() }
5895 }
5896}
5897#[repr(transparent)]
5898#[derive(Clone, Copy, Debug, Default, Eq, PartialEq)]
5899pub struct D3D11_SHADER_VERSION_TYPE(pub i32);
5900#[repr(transparent)]
5901#[derive(Clone, Copy, Debug, Default, Eq, PartialEq)]
5902pub struct D3D11_SHARED_RESOURCE_TIER(pub i32);
5903pub const D3D11_SHARED_RESOURCE_TIER_0: D3D11_SHARED_RESOURCE_TIER =
5904 D3D11_SHARED_RESOURCE_TIER(0i32);
5905pub const D3D11_SHARED_RESOURCE_TIER_1: D3D11_SHARED_RESOURCE_TIER =
5906 D3D11_SHARED_RESOURCE_TIER(1i32);
5907pub const D3D11_SHARED_RESOURCE_TIER_2: D3D11_SHARED_RESOURCE_TIER =
5908 D3D11_SHARED_RESOURCE_TIER(2i32);
5909pub const D3D11_SHARED_RESOURCE_TIER_3: D3D11_SHARED_RESOURCE_TIER =
5910 D3D11_SHARED_RESOURCE_TIER(3i32);
5911pub const D3D11_SHIFT_INSTRUCTION_PAD_VALUE: u32 = 0u32;
5912pub const D3D11_SHIFT_INSTRUCTION_SHIFT_VALUE_BIT_COUNT: u32 = 5u32;
5913pub const D3D11_SHVER_COMPUTE_SHADER: D3D11_SHADER_VERSION_TYPE = D3D11_SHADER_VERSION_TYPE(5i32);
5914pub const D3D11_SHVER_DOMAIN_SHADER: D3D11_SHADER_VERSION_TYPE = D3D11_SHADER_VERSION_TYPE(4i32);
5915pub const D3D11_SHVER_GEOMETRY_SHADER: D3D11_SHADER_VERSION_TYPE = D3D11_SHADER_VERSION_TYPE(2i32);
5916pub const D3D11_SHVER_HULL_SHADER: D3D11_SHADER_VERSION_TYPE = D3D11_SHADER_VERSION_TYPE(3i32);
5917pub const D3D11_SHVER_PIXEL_SHADER: D3D11_SHADER_VERSION_TYPE = D3D11_SHADER_VERSION_TYPE(0i32);
5918pub const D3D11_SHVER_RESERVED0: D3D11_SHADER_VERSION_TYPE = D3D11_SHADER_VERSION_TYPE(65520i32);
5919pub const D3D11_SHVER_VERTEX_SHADER: D3D11_SHADER_VERSION_TYPE = D3D11_SHADER_VERSION_TYPE(1i32);
5920#[repr(C)]
5921#[cfg(feature = "Win32_Graphics_Direct3D")]
5922#[derive(Clone, Copy, Debug, PartialEq)]
5923pub struct D3D11_SIGNATURE_PARAMETER_DESC {
5924 pub SemanticName: crate::core_supplemental::PCSTR,
5925 pub SemanticIndex: u32,
5926 pub Register: u32,
5927 pub SystemValueType: super::Direct3D::D3D_NAME,
5928 pub ComponentType: super::Direct3D::D3D_REGISTER_COMPONENT_TYPE,
5929 pub Mask: u8,
5930 pub ReadWriteMask: u8,
5931 pub Stream: u32,
5932 pub MinPrecision: super::Direct3D::D3D_MIN_PRECISION,
5933}
5934#[cfg(feature = "Win32_Graphics_Direct3D")]
5935impl Default for D3D11_SIGNATURE_PARAMETER_DESC {
5936 fn default() -> Self {
5937 unsafe { core::mem::zeroed() }
5938 }
5939}
5940pub const D3D11_SIMULTANEOUS_RENDER_TARGET_COUNT: u32 = 8u32;
5941pub const D3D11_SO_BUFFER_MAX_STRIDE_IN_BYTES: u32 = 2048u32;
5942pub const D3D11_SO_BUFFER_MAX_WRITE_WINDOW_IN_BYTES: u32 = 512u32;
5943pub const D3D11_SO_BUFFER_SLOT_COUNT: u32 = 4u32;
5944pub const D3D11_SO_DDI_REGISTER_INDEX_DENOTING_GAP: u32 = 4294967295u32;
5945#[repr(C)]
5946#[derive(Clone, Copy, Debug, PartialEq)]
5947pub struct D3D11_SO_DECLARATION_ENTRY {
5948 pub Stream: u32,
5949 pub SemanticName: crate::core_supplemental::PCSTR,
5950 pub SemanticIndex: u32,
5951 pub StartComponent: u8,
5952 pub ComponentCount: u8,
5953 pub OutputSlot: u8,
5954}
5955impl Default for D3D11_SO_DECLARATION_ENTRY {
5956 fn default() -> Self {
5957 unsafe { core::mem::zeroed() }
5958 }
5959}
5960pub const D3D11_SO_NO_RASTERIZED_STREAM: u32 = 4294967295u32;
5961pub const D3D11_SO_OUTPUT_COMPONENT_COUNT: u32 = 128u32;
5962pub const D3D11_SO_STREAM_COUNT: u32 = 4u32;
5963pub const D3D11_SPEC_DATE_DAY: u32 = 16u32;
5964pub const D3D11_SPEC_DATE_MONTH: u32 = 5u32;
5965pub const D3D11_SPEC_DATE_YEAR: u32 = 2011u32;
5966pub const D3D11_SPEC_VERSION: f64 = 1.07f64;
5967pub const D3D11_SRGB_GAMMA: f32 = 2.2f32;
5968pub const D3D11_SRGB_TO_FLOAT_DENOMINATOR_1: f32 = 12.92f32;
5969pub const D3D11_SRGB_TO_FLOAT_DENOMINATOR_2: f32 = 1.055f32;
5970pub const D3D11_SRGB_TO_FLOAT_EXPONENT: f32 = 2.4f32;
5971pub const D3D11_SRGB_TO_FLOAT_OFFSET: f32 = 0.055f32;
5972pub const D3D11_SRGB_TO_FLOAT_THRESHOLD: f32 = 0.04045f32;
5973pub const D3D11_SRGB_TO_FLOAT_TOLERANCE_IN_ULP: f32 = 0.5f32;
5974pub const D3D11_STANDARD_COMPONENT_BIT_COUNT: u32 = 32u32;
5975pub const D3D11_STANDARD_COMPONENT_BIT_COUNT_DOUBLED: u32 = 64u32;
5976pub const D3D11_STANDARD_MAXIMUM_ELEMENT_ALIGNMENT_BYTE_MULTIPLE: u32 = 4u32;
5977pub const D3D11_STANDARD_MULTISAMPLE_PATTERN: D3D11_STANDARD_MULTISAMPLE_QUALITY_LEVELS =
5978 D3D11_STANDARD_MULTISAMPLE_QUALITY_LEVELS(-1i32);
5979#[repr(transparent)]
5980#[derive(Clone, Copy, Debug, Default, Eq, PartialEq)]
5981pub struct D3D11_STANDARD_MULTISAMPLE_QUALITY_LEVELS(pub i32);
5982pub const D3D11_STANDARD_PIXEL_COMPONENT_COUNT: u32 = 128u32;
5983pub const D3D11_STANDARD_PIXEL_ELEMENT_COUNT: u32 = 32u32;
5984pub const D3D11_STANDARD_VECTOR_SIZE: u32 = 4u32;
5985pub const D3D11_STANDARD_VERTEX_ELEMENT_COUNT: u32 = 32u32;
5986pub const D3D11_STANDARD_VERTEX_TOTAL_COMPONENT_COUNT: u32 = 64u32;
5987#[repr(transparent)]
5988#[derive(Clone, Copy, Debug, Default, Eq, PartialEq)]
5989pub struct D3D11_STENCIL_OP(pub i32);
5990pub const D3D11_STENCIL_OP_DECR: D3D11_STENCIL_OP = D3D11_STENCIL_OP(8i32);
5991pub const D3D11_STENCIL_OP_DECR_SAT: D3D11_STENCIL_OP = D3D11_STENCIL_OP(5i32);
5992pub const D3D11_STENCIL_OP_INCR: D3D11_STENCIL_OP = D3D11_STENCIL_OP(7i32);
5993pub const D3D11_STENCIL_OP_INCR_SAT: D3D11_STENCIL_OP = D3D11_STENCIL_OP(4i32);
5994pub const D3D11_STENCIL_OP_INVERT: D3D11_STENCIL_OP = D3D11_STENCIL_OP(6i32);
5995pub const D3D11_STENCIL_OP_KEEP: D3D11_STENCIL_OP = D3D11_STENCIL_OP(1i32);
5996pub const D3D11_STENCIL_OP_REPLACE: D3D11_STENCIL_OP = D3D11_STENCIL_OP(3i32);
5997pub const D3D11_STENCIL_OP_ZERO: D3D11_STENCIL_OP = D3D11_STENCIL_OP(2i32);
5998pub const D3D11_SUBPIXEL_FRACTIONAL_BIT_COUNT: u32 = 8u32;
5999#[repr(C)]
6000#[derive(Clone, Copy, Debug, PartialEq)]
6001pub struct D3D11_SUBRESOURCE_DATA {
6002 pub pSysMem: *const core::ffi::c_void,
6003 pub SysMemPitch: u32,
6004 pub SysMemSlicePitch: u32,
6005}
6006impl Default for D3D11_SUBRESOURCE_DATA {
6007 fn default() -> Self {
6008 unsafe { core::mem::zeroed() }
6009 }
6010}
6011#[repr(C)]
6012#[derive(Clone, Copy, Debug, PartialEq)]
6013pub struct D3D11_SUBRESOURCE_TILING {
6014 pub WidthInTiles: u32,
6015 pub HeightInTiles: u16,
6016 pub DepthInTiles: u16,
6017 pub StartTileIndexInOverallResource: u32,
6018}
6019impl Default for D3D11_SUBRESOURCE_TILING {
6020 fn default() -> Self {
6021 unsafe { core::mem::zeroed() }
6022 }
6023}
6024pub const D3D11_SUBTEXEL_FRACTIONAL_BIT_COUNT: u32 = 8u32;
6025pub const D3D11_TESSELLATOR_MAX_EVEN_TESSELLATION_FACTOR: u32 = 64u32;
6026pub const D3D11_TESSELLATOR_MAX_ISOLINE_DENSITY_TESSELLATION_FACTOR: u32 = 64u32;
6027pub const D3D11_TESSELLATOR_MAX_ODD_TESSELLATION_FACTOR: u32 = 63u32;
6028pub const D3D11_TESSELLATOR_MAX_TESSELLATION_FACTOR: u32 = 64u32;
6029pub const D3D11_TESSELLATOR_MIN_EVEN_TESSELLATION_FACTOR: u32 = 2u32;
6030pub const D3D11_TESSELLATOR_MIN_ISOLINE_DENSITY_TESSELLATION_FACTOR: u32 = 1u32;
6031pub const D3D11_TESSELLATOR_MIN_ODD_TESSELLATION_FACTOR: u32 = 1u32;
6032#[repr(C)]
6033#[derive(Clone, Copy, Debug, PartialEq)]
6034pub struct D3D11_TEX1D_ARRAY_DSV {
6035 pub MipSlice: u32,
6036 pub FirstArraySlice: u32,
6037 pub ArraySize: u32,
6038}
6039impl Default for D3D11_TEX1D_ARRAY_DSV {
6040 fn default() -> Self {
6041 unsafe { core::mem::zeroed() }
6042 }
6043}
6044#[repr(C)]
6045#[derive(Clone, Copy, Debug, PartialEq)]
6046pub struct D3D11_TEX1D_ARRAY_RTV {
6047 pub MipSlice: u32,
6048 pub FirstArraySlice: u32,
6049 pub ArraySize: u32,
6050}
6051impl Default for D3D11_TEX1D_ARRAY_RTV {
6052 fn default() -> Self {
6053 unsafe { core::mem::zeroed() }
6054 }
6055}
6056#[repr(C)]
6057#[derive(Clone, Copy, Debug, PartialEq)]
6058pub struct D3D11_TEX1D_ARRAY_SRV {
6059 pub MostDetailedMip: u32,
6060 pub MipLevels: u32,
6061 pub FirstArraySlice: u32,
6062 pub ArraySize: u32,
6063}
6064impl Default for D3D11_TEX1D_ARRAY_SRV {
6065 fn default() -> Self {
6066 unsafe { core::mem::zeroed() }
6067 }
6068}
6069#[repr(C)]
6070#[derive(Clone, Copy, Debug, PartialEq)]
6071pub struct D3D11_TEX1D_ARRAY_UAV {
6072 pub MipSlice: u32,
6073 pub FirstArraySlice: u32,
6074 pub ArraySize: u32,
6075}
6076impl Default for D3D11_TEX1D_ARRAY_UAV {
6077 fn default() -> Self {
6078 unsafe { core::mem::zeroed() }
6079 }
6080}
6081#[repr(C)]
6082#[derive(Clone, Copy, Debug, PartialEq)]
6083pub struct D3D11_TEX1D_DSV {
6084 pub MipSlice: u32,
6085}
6086impl Default for D3D11_TEX1D_DSV {
6087 fn default() -> Self {
6088 unsafe { core::mem::zeroed() }
6089 }
6090}
6091#[repr(C)]
6092#[derive(Clone, Copy, Debug, PartialEq)]
6093pub struct D3D11_TEX1D_RTV {
6094 pub MipSlice: u32,
6095}
6096impl Default for D3D11_TEX1D_RTV {
6097 fn default() -> Self {
6098 unsafe { core::mem::zeroed() }
6099 }
6100}
6101#[repr(C)]
6102#[derive(Clone, Copy, Debug, PartialEq)]
6103pub struct D3D11_TEX1D_SRV {
6104 pub MostDetailedMip: u32,
6105 pub MipLevels: u32,
6106}
6107impl Default for D3D11_TEX1D_SRV {
6108 fn default() -> Self {
6109 unsafe { core::mem::zeroed() }
6110 }
6111}
6112#[repr(C)]
6113#[derive(Clone, Copy, Debug, PartialEq)]
6114pub struct D3D11_TEX1D_UAV {
6115 pub MipSlice: u32,
6116}
6117impl Default for D3D11_TEX1D_UAV {
6118 fn default() -> Self {
6119 unsafe { core::mem::zeroed() }
6120 }
6121}
6122#[repr(C)]
6123#[derive(Clone, Copy, Debug, PartialEq)]
6124pub struct D3D11_TEX2DMS_ARRAY_DSV {
6125 pub FirstArraySlice: u32,
6126 pub ArraySize: u32,
6127}
6128impl Default for D3D11_TEX2DMS_ARRAY_DSV {
6129 fn default() -> Self {
6130 unsafe { core::mem::zeroed() }
6131 }
6132}
6133#[repr(C)]
6134#[derive(Clone, Copy, Debug, PartialEq)]
6135pub struct D3D11_TEX2DMS_ARRAY_RTV {
6136 pub FirstArraySlice: u32,
6137 pub ArraySize: u32,
6138}
6139impl Default for D3D11_TEX2DMS_ARRAY_RTV {
6140 fn default() -> Self {
6141 unsafe { core::mem::zeroed() }
6142 }
6143}
6144#[repr(C)]
6145#[derive(Clone, Copy, Debug, PartialEq)]
6146pub struct D3D11_TEX2DMS_ARRAY_SRV {
6147 pub FirstArraySlice: u32,
6148 pub ArraySize: u32,
6149}
6150impl Default for D3D11_TEX2DMS_ARRAY_SRV {
6151 fn default() -> Self {
6152 unsafe { core::mem::zeroed() }
6153 }
6154}
6155#[repr(C)]
6156#[derive(Clone, Copy, Debug, PartialEq)]
6157pub struct D3D11_TEX2DMS_DSV {
6158 pub UnusedField_NothingToDefine: u32,
6159}
6160impl Default for D3D11_TEX2DMS_DSV {
6161 fn default() -> Self {
6162 unsafe { core::mem::zeroed() }
6163 }
6164}
6165#[repr(C)]
6166#[derive(Clone, Copy, Debug, PartialEq)]
6167pub struct D3D11_TEX2DMS_RTV {
6168 pub UnusedField_NothingToDefine: u32,
6169}
6170impl Default for D3D11_TEX2DMS_RTV {
6171 fn default() -> Self {
6172 unsafe { core::mem::zeroed() }
6173 }
6174}
6175#[repr(C)]
6176#[derive(Clone, Copy, Debug, PartialEq)]
6177pub struct D3D11_TEX2DMS_SRV {
6178 pub UnusedField_NothingToDefine: u32,
6179}
6180impl Default for D3D11_TEX2DMS_SRV {
6181 fn default() -> Self {
6182 unsafe { core::mem::zeroed() }
6183 }
6184}
6185#[repr(C)]
6186#[derive(Clone, Copy, Debug, PartialEq)]
6187pub struct D3D11_TEX2D_ARRAY_DSV {
6188 pub MipSlice: u32,
6189 pub FirstArraySlice: u32,
6190 pub ArraySize: u32,
6191}
6192impl Default for D3D11_TEX2D_ARRAY_DSV {
6193 fn default() -> Self {
6194 unsafe { core::mem::zeroed() }
6195 }
6196}
6197#[repr(C)]
6198#[derive(Clone, Copy, Debug, PartialEq)]
6199pub struct D3D11_TEX2D_ARRAY_RTV {
6200 pub MipSlice: u32,
6201 pub FirstArraySlice: u32,
6202 pub ArraySize: u32,
6203}
6204impl Default for D3D11_TEX2D_ARRAY_RTV {
6205 fn default() -> Self {
6206 unsafe { core::mem::zeroed() }
6207 }
6208}
6209#[repr(C)]
6210#[derive(Clone, Copy, Debug, PartialEq)]
6211pub struct D3D11_TEX2D_ARRAY_RTV1 {
6212 pub MipSlice: u32,
6213 pub FirstArraySlice: u32,
6214 pub ArraySize: u32,
6215 pub PlaneSlice: u32,
6216}
6217impl Default for D3D11_TEX2D_ARRAY_RTV1 {
6218 fn default() -> Self {
6219 unsafe { core::mem::zeroed() }
6220 }
6221}
6222#[repr(C)]
6223#[derive(Clone, Copy, Debug, PartialEq)]
6224pub struct D3D11_TEX2D_ARRAY_SRV {
6225 pub MostDetailedMip: u32,
6226 pub MipLevels: u32,
6227 pub FirstArraySlice: u32,
6228 pub ArraySize: u32,
6229}
6230impl Default for D3D11_TEX2D_ARRAY_SRV {
6231 fn default() -> Self {
6232 unsafe { core::mem::zeroed() }
6233 }
6234}
6235#[repr(C)]
6236#[derive(Clone, Copy, Debug, PartialEq)]
6237pub struct D3D11_TEX2D_ARRAY_SRV1 {
6238 pub MostDetailedMip: u32,
6239 pub MipLevels: u32,
6240 pub FirstArraySlice: u32,
6241 pub ArraySize: u32,
6242 pub PlaneSlice: u32,
6243}
6244impl Default for D3D11_TEX2D_ARRAY_SRV1 {
6245 fn default() -> Self {
6246 unsafe { core::mem::zeroed() }
6247 }
6248}
6249#[repr(C)]
6250#[derive(Clone, Copy, Debug, PartialEq)]
6251pub struct D3D11_TEX2D_ARRAY_UAV {
6252 pub MipSlice: u32,
6253 pub FirstArraySlice: u32,
6254 pub ArraySize: u32,
6255}
6256impl Default for D3D11_TEX2D_ARRAY_UAV {
6257 fn default() -> Self {
6258 unsafe { core::mem::zeroed() }
6259 }
6260}
6261#[repr(C)]
6262#[derive(Clone, Copy, Debug, PartialEq)]
6263pub struct D3D11_TEX2D_ARRAY_UAV1 {
6264 pub MipSlice: u32,
6265 pub FirstArraySlice: u32,
6266 pub ArraySize: u32,
6267 pub PlaneSlice: u32,
6268}
6269impl Default for D3D11_TEX2D_ARRAY_UAV1 {
6270 fn default() -> Self {
6271 unsafe { core::mem::zeroed() }
6272 }
6273}
6274#[repr(C)]
6275#[derive(Clone, Copy, Debug, PartialEq)]
6276pub struct D3D11_TEX2D_ARRAY_VPOV {
6277 pub MipSlice: u32,
6278 pub FirstArraySlice: u32,
6279 pub ArraySize: u32,
6280}
6281impl Default for D3D11_TEX2D_ARRAY_VPOV {
6282 fn default() -> Self {
6283 unsafe { core::mem::zeroed() }
6284 }
6285}
6286#[repr(C)]
6287#[derive(Clone, Copy, Debug, PartialEq)]
6288pub struct D3D11_TEX2D_DSV {
6289 pub MipSlice: u32,
6290}
6291impl Default for D3D11_TEX2D_DSV {
6292 fn default() -> Self {
6293 unsafe { core::mem::zeroed() }
6294 }
6295}
6296#[repr(C)]
6297#[derive(Clone, Copy, Debug, PartialEq)]
6298pub struct D3D11_TEX2D_RTV {
6299 pub MipSlice: u32,
6300}
6301impl Default for D3D11_TEX2D_RTV {
6302 fn default() -> Self {
6303 unsafe { core::mem::zeroed() }
6304 }
6305}
6306#[repr(C)]
6307#[derive(Clone, Copy, Debug, PartialEq)]
6308pub struct D3D11_TEX2D_RTV1 {
6309 pub MipSlice: u32,
6310 pub PlaneSlice: u32,
6311}
6312impl Default for D3D11_TEX2D_RTV1 {
6313 fn default() -> Self {
6314 unsafe { core::mem::zeroed() }
6315 }
6316}
6317#[repr(C)]
6318#[derive(Clone, Copy, Debug, PartialEq)]
6319pub struct D3D11_TEX2D_SRV {
6320 pub MostDetailedMip: u32,
6321 pub MipLevels: u32,
6322}
6323impl Default for D3D11_TEX2D_SRV {
6324 fn default() -> Self {
6325 unsafe { core::mem::zeroed() }
6326 }
6327}
6328#[repr(C)]
6329#[derive(Clone, Copy, Debug, PartialEq)]
6330pub struct D3D11_TEX2D_SRV1 {
6331 pub MostDetailedMip: u32,
6332 pub MipLevels: u32,
6333 pub PlaneSlice: u32,
6334}
6335impl Default for D3D11_TEX2D_SRV1 {
6336 fn default() -> Self {
6337 unsafe { core::mem::zeroed() }
6338 }
6339}
6340#[repr(C)]
6341#[derive(Clone, Copy, Debug, PartialEq)]
6342pub struct D3D11_TEX2D_UAV {
6343 pub MipSlice: u32,
6344}
6345impl Default for D3D11_TEX2D_UAV {
6346 fn default() -> Self {
6347 unsafe { core::mem::zeroed() }
6348 }
6349}
6350#[repr(C)]
6351#[derive(Clone, Copy, Debug, PartialEq)]
6352pub struct D3D11_TEX2D_UAV1 {
6353 pub MipSlice: u32,
6354 pub PlaneSlice: u32,
6355}
6356impl Default for D3D11_TEX2D_UAV1 {
6357 fn default() -> Self {
6358 unsafe { core::mem::zeroed() }
6359 }
6360}
6361#[repr(C)]
6362#[derive(Clone, Copy, Debug, PartialEq)]
6363pub struct D3D11_TEX2D_VDOV {
6364 pub ArraySlice: u32,
6365}
6366impl Default for D3D11_TEX2D_VDOV {
6367 fn default() -> Self {
6368 unsafe { core::mem::zeroed() }
6369 }
6370}
6371#[repr(C)]
6372#[derive(Clone, Copy, Debug, PartialEq)]
6373pub struct D3D11_TEX2D_VPIV {
6374 pub MipSlice: u32,
6375 pub ArraySlice: u32,
6376}
6377impl Default for D3D11_TEX2D_VPIV {
6378 fn default() -> Self {
6379 unsafe { core::mem::zeroed() }
6380 }
6381}
6382#[repr(C)]
6383#[derive(Clone, Copy, Debug, PartialEq)]
6384pub struct D3D11_TEX2D_VPOV {
6385 pub MipSlice: u32,
6386}
6387impl Default for D3D11_TEX2D_VPOV {
6388 fn default() -> Self {
6389 unsafe { core::mem::zeroed() }
6390 }
6391}
6392#[repr(C)]
6393#[derive(Clone, Copy, Debug, PartialEq)]
6394pub struct D3D11_TEX3D_RTV {
6395 pub MipSlice: u32,
6396 pub FirstWSlice: u32,
6397 pub WSize: u32,
6398}
6399impl Default for D3D11_TEX3D_RTV {
6400 fn default() -> Self {
6401 unsafe { core::mem::zeroed() }
6402 }
6403}
6404#[repr(C)]
6405#[derive(Clone, Copy, Debug, PartialEq)]
6406pub struct D3D11_TEX3D_SRV {
6407 pub MostDetailedMip: u32,
6408 pub MipLevels: u32,
6409}
6410impl Default for D3D11_TEX3D_SRV {
6411 fn default() -> Self {
6412 unsafe { core::mem::zeroed() }
6413 }
6414}
6415#[repr(C)]
6416#[derive(Clone, Copy, Debug, PartialEq)]
6417pub struct D3D11_TEX3D_UAV {
6418 pub MipSlice: u32,
6419 pub FirstWSlice: u32,
6420 pub WSize: u32,
6421}
6422impl Default for D3D11_TEX3D_UAV {
6423 fn default() -> Self {
6424 unsafe { core::mem::zeroed() }
6425 }
6426}
6427#[repr(C)]
6428#[derive(Clone, Copy, Debug, PartialEq)]
6429pub struct D3D11_TEXCUBE_ARRAY_SRV {
6430 pub MostDetailedMip: u32,
6431 pub MipLevels: u32,
6432 pub First2DArrayFace: u32,
6433 pub NumCubes: u32,
6434}
6435impl Default for D3D11_TEXCUBE_ARRAY_SRV {
6436 fn default() -> Self {
6437 unsafe { core::mem::zeroed() }
6438 }
6439}
6440#[repr(C)]
6441#[derive(Clone, Copy, Debug, PartialEq)]
6442pub struct D3D11_TEXCUBE_SRV {
6443 pub MostDetailedMip: u32,
6444 pub MipLevels: u32,
6445}
6446impl Default for D3D11_TEXCUBE_SRV {
6447 fn default() -> Self {
6448 unsafe { core::mem::zeroed() }
6449 }
6450}
6451pub const D3D11_TEXEL_ADDRESS_RANGE_BIT_COUNT: u32 = 16u32;
6452#[repr(C)]
6453#[cfg(feature = "Win32_Graphics_Dxgi_Common")]
6454#[derive(Clone, Copy, Debug, PartialEq)]
6455pub struct D3D11_TEXTURE1D_DESC {
6456 pub Width: u32,
6457 pub MipLevels: u32,
6458 pub ArraySize: u32,
6459 pub Format: crate::Dxgi::Common::DXGI_FORMAT,
6460 pub Usage: D3D11_USAGE,
6461 pub BindFlags: u32,
6462 pub CPUAccessFlags: u32,
6463 pub MiscFlags: u32,
6464}
6465#[cfg(feature = "Win32_Graphics_Dxgi_Common")]
6466impl Default for D3D11_TEXTURE1D_DESC {
6467 fn default() -> Self {
6468 unsafe { core::mem::zeroed() }
6469 }
6470}
6471#[repr(C)]
6472#[cfg(feature = "Win32_Graphics_Dxgi_Common")]
6473#[derive(Clone, Copy, Debug, PartialEq)]
6474pub struct D3D11_TEXTURE2D_DESC {
6475 pub Width: u32,
6476 pub Height: u32,
6477 pub MipLevels: u32,
6478 pub ArraySize: u32,
6479 pub Format: crate::Dxgi::Common::DXGI_FORMAT,
6480 pub SampleDesc: crate::Dxgi::Common::DXGI_SAMPLE_DESC,
6481 pub Usage: D3D11_USAGE,
6482 pub BindFlags: u32,
6483 pub CPUAccessFlags: u32,
6484 pub MiscFlags: u32,
6485}
6486#[cfg(feature = "Win32_Graphics_Dxgi_Common")]
6487impl Default for D3D11_TEXTURE2D_DESC {
6488 fn default() -> Self {
6489 unsafe { core::mem::zeroed() }
6490 }
6491}
6492#[repr(C)]
6493#[cfg(feature = "Win32_Graphics_Dxgi_Common")]
6494#[derive(Clone, Copy, Debug, PartialEq)]
6495pub struct D3D11_TEXTURE2D_DESC1 {
6496 pub Width: u32,
6497 pub Height: u32,
6498 pub MipLevels: u32,
6499 pub ArraySize: u32,
6500 pub Format: crate::Dxgi::Common::DXGI_FORMAT,
6501 pub SampleDesc: crate::Dxgi::Common::DXGI_SAMPLE_DESC,
6502 pub Usage: D3D11_USAGE,
6503 pub BindFlags: u32,
6504 pub CPUAccessFlags: u32,
6505 pub MiscFlags: u32,
6506 pub TextureLayout: D3D11_TEXTURE_LAYOUT,
6507}
6508#[cfg(feature = "Win32_Graphics_Dxgi_Common")]
6509impl Default for D3D11_TEXTURE2D_DESC1 {
6510 fn default() -> Self {
6511 unsafe { core::mem::zeroed() }
6512 }
6513}
6514#[repr(C)]
6515#[cfg(feature = "Win32_Graphics_Dxgi_Common")]
6516#[derive(Clone, Copy, Debug, PartialEq)]
6517pub struct D3D11_TEXTURE3D_DESC {
6518 pub Width: u32,
6519 pub Height: u32,
6520 pub Depth: u32,
6521 pub MipLevels: u32,
6522 pub Format: crate::Dxgi::Common::DXGI_FORMAT,
6523 pub Usage: D3D11_USAGE,
6524 pub BindFlags: u32,
6525 pub CPUAccessFlags: u32,
6526 pub MiscFlags: u32,
6527}
6528#[cfg(feature = "Win32_Graphics_Dxgi_Common")]
6529impl Default for D3D11_TEXTURE3D_DESC {
6530 fn default() -> Self {
6531 unsafe { core::mem::zeroed() }
6532 }
6533}
6534#[repr(C)]
6535#[cfg(feature = "Win32_Graphics_Dxgi_Common")]
6536#[derive(Clone, Copy, Debug, PartialEq)]
6537pub struct D3D11_TEXTURE3D_DESC1 {
6538 pub Width: u32,
6539 pub Height: u32,
6540 pub Depth: u32,
6541 pub MipLevels: u32,
6542 pub Format: crate::Dxgi::Common::DXGI_FORMAT,
6543 pub Usage: D3D11_USAGE,
6544 pub BindFlags: u32,
6545 pub CPUAccessFlags: u32,
6546 pub MiscFlags: u32,
6547 pub TextureLayout: D3D11_TEXTURE_LAYOUT,
6548}
6549#[cfg(feature = "Win32_Graphics_Dxgi_Common")]
6550impl Default for D3D11_TEXTURE3D_DESC1 {
6551 fn default() -> Self {
6552 unsafe { core::mem::zeroed() }
6553 }
6554}
6555#[repr(transparent)]
6556#[derive(Clone, Copy, Debug, Default, Eq, PartialEq)]
6557pub struct D3D11_TEXTURECUBE_FACE(pub i32);
6558pub const D3D11_TEXTURECUBE_FACE_NEGATIVE_X: D3D11_TEXTURECUBE_FACE = D3D11_TEXTURECUBE_FACE(1i32);
6559pub const D3D11_TEXTURECUBE_FACE_NEGATIVE_Y: D3D11_TEXTURECUBE_FACE = D3D11_TEXTURECUBE_FACE(3i32);
6560pub const D3D11_TEXTURECUBE_FACE_NEGATIVE_Z: D3D11_TEXTURECUBE_FACE = D3D11_TEXTURECUBE_FACE(5i32);
6561pub const D3D11_TEXTURECUBE_FACE_POSITIVE_X: D3D11_TEXTURECUBE_FACE = D3D11_TEXTURECUBE_FACE(0i32);
6562pub const D3D11_TEXTURECUBE_FACE_POSITIVE_Y: D3D11_TEXTURECUBE_FACE = D3D11_TEXTURECUBE_FACE(2i32);
6563pub const D3D11_TEXTURECUBE_FACE_POSITIVE_Z: D3D11_TEXTURECUBE_FACE = D3D11_TEXTURECUBE_FACE(4i32);
6564pub const D3D11_TEXTURE_ADDRESS_BORDER: D3D11_TEXTURE_ADDRESS_MODE =
6565 D3D11_TEXTURE_ADDRESS_MODE(4i32);
6566pub const D3D11_TEXTURE_ADDRESS_CLAMP: D3D11_TEXTURE_ADDRESS_MODE =
6567 D3D11_TEXTURE_ADDRESS_MODE(3i32);
6568pub const D3D11_TEXTURE_ADDRESS_MIRROR: D3D11_TEXTURE_ADDRESS_MODE =
6569 D3D11_TEXTURE_ADDRESS_MODE(2i32);
6570pub const D3D11_TEXTURE_ADDRESS_MIRROR_ONCE: D3D11_TEXTURE_ADDRESS_MODE =
6571 D3D11_TEXTURE_ADDRESS_MODE(5i32);
6572#[repr(transparent)]
6573#[derive(Clone, Copy, Debug, Default, Eq, PartialEq)]
6574pub struct D3D11_TEXTURE_ADDRESS_MODE(pub i32);
6575pub const D3D11_TEXTURE_ADDRESS_WRAP: D3D11_TEXTURE_ADDRESS_MODE = D3D11_TEXTURE_ADDRESS_MODE(1i32);
6576#[repr(transparent)]
6577#[derive(Clone, Copy, Debug, Default, Eq, PartialEq)]
6578pub struct D3D11_TEXTURE_LAYOUT(pub i32);
6579pub const D3D11_TEXTURE_LAYOUT_64K_STANDARD_SWIZZLE: D3D11_TEXTURE_LAYOUT =
6580 D3D11_TEXTURE_LAYOUT(2i32);
6581pub const D3D11_TEXTURE_LAYOUT_ROW_MAJOR: D3D11_TEXTURE_LAYOUT = D3D11_TEXTURE_LAYOUT(1i32);
6582pub const D3D11_TEXTURE_LAYOUT_UNDEFINED: D3D11_TEXTURE_LAYOUT = D3D11_TEXTURE_LAYOUT(0i32);
6583pub const D3D11_TILED_RESOURCES_NOT_SUPPORTED: D3D11_TILED_RESOURCES_TIER =
6584 D3D11_TILED_RESOURCES_TIER(0i32);
6585#[repr(transparent)]
6586#[derive(Clone, Copy, Debug, Default, Eq, PartialEq)]
6587pub struct D3D11_TILED_RESOURCES_TIER(pub i32);
6588pub const D3D11_TILED_RESOURCES_TIER_1: D3D11_TILED_RESOURCES_TIER =
6589 D3D11_TILED_RESOURCES_TIER(1i32);
6590pub const D3D11_TILED_RESOURCES_TIER_2: D3D11_TILED_RESOURCES_TIER =
6591 D3D11_TILED_RESOURCES_TIER(2i32);
6592pub const D3D11_TILED_RESOURCES_TIER_3: D3D11_TILED_RESOURCES_TIER =
6593 D3D11_TILED_RESOURCES_TIER(3i32);
6594#[repr(C)]
6595#[derive(Clone, Copy, Debug, PartialEq)]
6596pub struct D3D11_TILED_RESOURCE_COORDINATE {
6597 pub X: u32,
6598 pub Y: u32,
6599 pub Z: u32,
6600 pub Subresource: u32,
6601}
6602impl Default for D3D11_TILED_RESOURCE_COORDINATE {
6603 fn default() -> Self {
6604 unsafe { core::mem::zeroed() }
6605 }
6606}
6607#[repr(transparent)]
6608#[derive(Clone, Copy, Debug, Default, Eq, PartialEq)]
6609pub struct D3D11_TILE_COPY_FLAG(pub i32);
6610pub const D3D11_TILE_COPY_LINEAR_BUFFER_TO_SWIZZLED_TILED_RESOURCE: D3D11_TILE_COPY_FLAG =
6611 D3D11_TILE_COPY_FLAG(2i32);
6612pub const D3D11_TILE_COPY_NO_OVERWRITE: D3D11_TILE_COPY_FLAG = D3D11_TILE_COPY_FLAG(1i32);
6613pub const D3D11_TILE_COPY_SWIZZLED_TILED_RESOURCE_TO_LINEAR_BUFFER: D3D11_TILE_COPY_FLAG =
6614 D3D11_TILE_COPY_FLAG(4i32);
6615#[repr(transparent)]
6616#[derive(Clone, Copy, Debug, Default, Eq, PartialEq)]
6617pub struct D3D11_TILE_MAPPING_FLAG(pub i32);
6618pub const D3D11_TILE_MAPPING_NO_OVERWRITE: D3D11_TILE_MAPPING_FLAG = D3D11_TILE_MAPPING_FLAG(1i32);
6619#[repr(transparent)]
6620#[derive(Clone, Copy, Debug, Default, Eq, PartialEq)]
6621pub struct D3D11_TILE_RANGE_FLAG(pub i32);
6622pub const D3D11_TILE_RANGE_NULL: D3D11_TILE_RANGE_FLAG = D3D11_TILE_RANGE_FLAG(1i32);
6623pub const D3D11_TILE_RANGE_REUSE_SINGLE_TILE: D3D11_TILE_RANGE_FLAG = D3D11_TILE_RANGE_FLAG(4i32);
6624pub const D3D11_TILE_RANGE_SKIP: D3D11_TILE_RANGE_FLAG = D3D11_TILE_RANGE_FLAG(2i32);
6625#[repr(C)]
6626#[derive(Clone, Copy, Debug, PartialEq)]
6627pub struct D3D11_TILE_REGION_SIZE {
6628 pub NumTiles: u32,
6629 pub bUseBox: crate::Foundation::BOOL,
6630 pub Width: u32,
6631 pub Height: u16,
6632 pub Depth: u16,
6633}
6634impl Default for D3D11_TILE_REGION_SIZE {
6635 fn default() -> Self {
6636 unsafe { core::mem::zeroed() }
6637 }
6638}
6639#[repr(C)]
6640#[derive(Clone, Copy, Debug, PartialEq)]
6641pub struct D3D11_TILE_SHAPE {
6642 pub WidthInTexels: u32,
6643 pub HeightInTexels: u32,
6644 pub DepthInTexels: u32,
6645}
6646impl Default for D3D11_TILE_SHAPE {
6647 fn default() -> Self {
6648 unsafe { core::mem::zeroed() }
6649 }
6650}
6651pub const D3D11_TRACE_COMPONENT_W: u32 = 8u32;
6652pub const D3D11_TRACE_COMPONENT_X: u32 = 1u32;
6653pub const D3D11_TRACE_COMPONENT_Y: u32 = 2u32;
6654pub const D3D11_TRACE_COMPONENT_Z: u32 = 4u32;
6655pub const D3D11_TRACE_CONSTANT_BUFFER: D3D11_TRACE_REGISTER_TYPE = D3D11_TRACE_REGISTER_TYPE(8i32);
6656#[repr(transparent)]
6657#[derive(Clone, Copy, Debug, Default, Eq, PartialEq)]
6658pub struct D3D11_TRACE_GS_INPUT_PRIMITIVE(pub i32);
6659pub const D3D11_TRACE_GS_INPUT_PRIMITIVE_LINE: D3D11_TRACE_GS_INPUT_PRIMITIVE =
6660 D3D11_TRACE_GS_INPUT_PRIMITIVE(2i32);
6661pub const D3D11_TRACE_GS_INPUT_PRIMITIVE_LINE_ADJ: D3D11_TRACE_GS_INPUT_PRIMITIVE =
6662 D3D11_TRACE_GS_INPUT_PRIMITIVE(6i32);
6663pub const D3D11_TRACE_GS_INPUT_PRIMITIVE_POINT: D3D11_TRACE_GS_INPUT_PRIMITIVE =
6664 D3D11_TRACE_GS_INPUT_PRIMITIVE(1i32);
6665pub const D3D11_TRACE_GS_INPUT_PRIMITIVE_TRIANGLE: D3D11_TRACE_GS_INPUT_PRIMITIVE =
6666 D3D11_TRACE_GS_INPUT_PRIMITIVE(3i32);
6667pub const D3D11_TRACE_GS_INPUT_PRIMITIVE_TRIANGLE_ADJ: D3D11_TRACE_GS_INPUT_PRIMITIVE =
6668 D3D11_TRACE_GS_INPUT_PRIMITIVE(7i32);
6669pub const D3D11_TRACE_GS_INPUT_PRIMITIVE_UNDEFINED: D3D11_TRACE_GS_INPUT_PRIMITIVE =
6670 D3D11_TRACE_GS_INPUT_PRIMITIVE(0i32);
6671pub const D3D11_TRACE_IMMEDIATE32: D3D11_TRACE_REGISTER_TYPE = D3D11_TRACE_REGISTER_TYPE(9i32);
6672pub const D3D11_TRACE_IMMEDIATE64: D3D11_TRACE_REGISTER_TYPE = D3D11_TRACE_REGISTER_TYPE(33i32);
6673pub const D3D11_TRACE_IMMEDIATE_CONSTANT_BUFFER: D3D11_TRACE_REGISTER_TYPE =
6674 D3D11_TRACE_REGISTER_TYPE(3i32);
6675pub const D3D11_TRACE_INDEXABLE_TEMP_REGISTER: D3D11_TRACE_REGISTER_TYPE =
6676 D3D11_TRACE_REGISTER_TYPE(5i32);
6677pub const D3D11_TRACE_INPUT_CONTROL_POINT_REGISTER: D3D11_TRACE_REGISTER_TYPE =
6678 D3D11_TRACE_REGISTER_TYPE(19i32);
6679pub const D3D11_TRACE_INPUT_COVERAGE_MASK_REGISTER: D3D11_TRACE_REGISTER_TYPE =
6680 D3D11_TRACE_REGISTER_TYPE(28i32);
6681pub const D3D11_TRACE_INPUT_CYCLE_COUNTER_REGISTER: D3D11_TRACE_REGISTER_TYPE =
6682 D3D11_TRACE_REGISTER_TYPE(34i32);
6683pub const D3D11_TRACE_INPUT_DOMAIN_POINT_REGISTER: D3D11_TRACE_REGISTER_TYPE =
6684 D3D11_TRACE_REGISTER_TYPE(22i32);
6685pub const D3D11_TRACE_INPUT_FORK_INSTANCE_ID_REGISTER: D3D11_TRACE_REGISTER_TYPE =
6686 D3D11_TRACE_REGISTER_TYPE(17i32);
6687pub const D3D11_TRACE_INPUT_GS_INSTANCE_ID_REGISTER: D3D11_TRACE_REGISTER_TYPE =
6688 D3D11_TRACE_REGISTER_TYPE(30i32);
6689pub const D3D11_TRACE_INPUT_JOIN_INSTANCE_ID_REGISTER: D3D11_TRACE_REGISTER_TYPE =
6690 D3D11_TRACE_REGISTER_TYPE(18i32);
6691pub const D3D11_TRACE_INPUT_PATCH_CONSTANT_REGISTER: D3D11_TRACE_REGISTER_TYPE =
6692 D3D11_TRACE_REGISTER_TYPE(21i32);
6693pub const D3D11_TRACE_INPUT_PRIMITIVE_ID_REGISTER: D3D11_TRACE_REGISTER_TYPE =
6694 D3D11_TRACE_REGISTER_TYPE(2i32);
6695pub const D3D11_TRACE_INPUT_REGISTER: D3D11_TRACE_REGISTER_TYPE = D3D11_TRACE_REGISTER_TYPE(1i32);
6696pub const D3D11_TRACE_INPUT_THREAD_GROUP_ID_REGISTER: D3D11_TRACE_REGISTER_TYPE =
6697 D3D11_TRACE_REGISTER_TYPE(26i32);
6698pub const D3D11_TRACE_INPUT_THREAD_ID_IN_GROUP_FLATTENED_REGISTER: D3D11_TRACE_REGISTER_TYPE =
6699 D3D11_TRACE_REGISTER_TYPE(29i32);
6700pub const D3D11_TRACE_INPUT_THREAD_ID_IN_GROUP_REGISTER: D3D11_TRACE_REGISTER_TYPE =
6701 D3D11_TRACE_REGISTER_TYPE(27i32);
6702pub const D3D11_TRACE_INPUT_THREAD_ID_REGISTER: D3D11_TRACE_REGISTER_TYPE =
6703 D3D11_TRACE_REGISTER_TYPE(25i32);
6704pub const D3D11_TRACE_INTERFACE_POINTER: D3D11_TRACE_REGISTER_TYPE =
6705 D3D11_TRACE_REGISTER_TYPE(35i32);
6706pub const D3D11_TRACE_MISC_GS_CUT: u32 = 2u32;
6707pub const D3D11_TRACE_MISC_GS_CUT_STREAM: u32 = 16u32;
6708pub const D3D11_TRACE_MISC_GS_EMIT: u32 = 1u32;
6709pub const D3D11_TRACE_MISC_GS_EMIT_STREAM: u32 = 8u32;
6710pub const D3D11_TRACE_MISC_HALT: u32 = 32u32;
6711pub const D3D11_TRACE_MISC_MESSAGE: u32 = 64u32;
6712pub const D3D11_TRACE_MISC_PS_DISCARD: u32 = 4u32;
6713pub const D3D11_TRACE_OUTPUT_CONTROL_POINT_ID_REGISTER: D3D11_TRACE_REGISTER_TYPE =
6714 D3D11_TRACE_REGISTER_TYPE(16i32);
6715pub const D3D11_TRACE_OUTPUT_CONTROL_POINT_REGISTER: D3D11_TRACE_REGISTER_TYPE =
6716 D3D11_TRACE_REGISTER_TYPE(20i32);
6717pub const D3D11_TRACE_OUTPUT_COVERAGE_MASK: D3D11_TRACE_REGISTER_TYPE =
6718 D3D11_TRACE_REGISTER_TYPE(13i32);
6719pub const D3D11_TRACE_OUTPUT_DEPTH_GREATER_EQUAL_REGISTER: D3D11_TRACE_REGISTER_TYPE =
6720 D3D11_TRACE_REGISTER_TYPE(31i32);
6721pub const D3D11_TRACE_OUTPUT_DEPTH_LESS_EQUAL_REGISTER: D3D11_TRACE_REGISTER_TYPE =
6722 D3D11_TRACE_REGISTER_TYPE(32i32);
6723pub const D3D11_TRACE_OUTPUT_DEPTH_REGISTER: D3D11_TRACE_REGISTER_TYPE =
6724 D3D11_TRACE_REGISTER_TYPE(7i32);
6725pub const D3D11_TRACE_OUTPUT_NULL_REGISTER: D3D11_TRACE_REGISTER_TYPE =
6726 D3D11_TRACE_REGISTER_TYPE(0i32);
6727pub const D3D11_TRACE_OUTPUT_REGISTER: D3D11_TRACE_REGISTER_TYPE = D3D11_TRACE_REGISTER_TYPE(6i32);
6728pub const D3D11_TRACE_RASTERIZER: D3D11_TRACE_REGISTER_TYPE = D3D11_TRACE_REGISTER_TYPE(12i32);
6729#[repr(C)]
6730#[derive(Clone, Copy)]
6731pub struct D3D11_TRACE_REGISTER {
6732 pub RegType: D3D11_TRACE_REGISTER_TYPE,
6733 pub Anonymous: D3D11_TRACE_REGISTER_0,
6734 pub OperandIndex: u8,
6735 pub Flags: u8,
6736}
6737impl Default for D3D11_TRACE_REGISTER {
6738 fn default() -> Self {
6739 unsafe { core::mem::zeroed() }
6740 }
6741}
6742#[repr(C)]
6743#[derive(Clone, Copy)]
6744pub union D3D11_TRACE_REGISTER_0 {
6745 pub Index1D: u16,
6746 pub Index2D: [u16; 2],
6747}
6748impl Default for D3D11_TRACE_REGISTER_0 {
6749 fn default() -> Self {
6750 unsafe { core::mem::zeroed() }
6751 }
6752}
6753pub const D3D11_TRACE_REGISTER_FLAGS_RELATIVE_INDEXING: u32 = 1u32;
6754#[repr(transparent)]
6755#[derive(Clone, Copy, Debug, Default, Eq, PartialEq)]
6756pub struct D3D11_TRACE_REGISTER_TYPE(pub i32);
6757pub const D3D11_TRACE_RESOURCE: D3D11_TRACE_REGISTER_TYPE = D3D11_TRACE_REGISTER_TYPE(11i32);
6758pub const D3D11_TRACE_SAMPLER: D3D11_TRACE_REGISTER_TYPE = D3D11_TRACE_REGISTER_TYPE(10i32);
6759#[repr(C)]
6760#[derive(Clone, Copy)]
6761pub struct D3D11_TRACE_STATS {
6762 pub TraceDesc: D3D11_SHADER_TRACE_DESC,
6763 pub NumInvocationsInStamp: u8,
6764 pub TargetStampIndex: u8,
6765 pub NumTraceSteps: u32,
6766 pub InputMask: [u8; 32],
6767 pub OutputMask: [u8; 32],
6768 pub NumTemps: u16,
6769 pub MaxIndexableTempIndex: u16,
6770 pub IndexableTempSize: [u16; 4096],
6771 pub ImmediateConstantBufferSize: u16,
6772 pub PixelPosition: [u32; 8],
6773 pub PixelCoverageMask: [u64; 4],
6774 pub PixelDiscardedMask: [u64; 4],
6775 pub PixelCoverageMaskAfterShader: [u64; 4],
6776 pub PixelCoverageMaskAfterA2CSampleMask: [u64; 4],
6777 pub PixelCoverageMaskAfterA2CSampleMaskDepth: [u64; 4],
6778 pub PixelCoverageMaskAfterA2CSampleMaskDepthStencil: [u64; 4],
6779 pub PSOutputsDepth: crate::Foundation::BOOL,
6780 pub PSOutputsMask: crate::Foundation::BOOL,
6781 pub GSInputPrimitive: D3D11_TRACE_GS_INPUT_PRIMITIVE,
6782 pub GSInputsPrimitiveID: crate::Foundation::BOOL,
6783 pub HSOutputPatchConstantMask: [u8; 32],
6784 pub DSInputPatchConstantMask: [u8; 32],
6785}
6786impl Default for D3D11_TRACE_STATS {
6787 fn default() -> Self {
6788 unsafe { core::mem::zeroed() }
6789 }
6790}
6791#[repr(C)]
6792#[derive(Clone, Copy, Debug, PartialEq)]
6793pub struct D3D11_TRACE_STEP {
6794 pub ID: u32,
6795 pub InstructionActive: crate::Foundation::BOOL,
6796 pub NumRegistersWritten: u8,
6797 pub NumRegistersRead: u8,
6798 pub MiscOperations: u16,
6799 pub OpcodeType: u32,
6800 pub CurrentGlobalCycle: u64,
6801}
6802impl Default for D3D11_TRACE_STEP {
6803 fn default() -> Self {
6804 unsafe { core::mem::zeroed() }
6805 }
6806}
6807pub const D3D11_TRACE_STREAM: D3D11_TRACE_REGISTER_TYPE = D3D11_TRACE_REGISTER_TYPE(14i32);
6808pub const D3D11_TRACE_TEMP_REGISTER: D3D11_TRACE_REGISTER_TYPE = D3D11_TRACE_REGISTER_TYPE(4i32);
6809pub const D3D11_TRACE_THIS_POINTER: D3D11_TRACE_REGISTER_TYPE = D3D11_TRACE_REGISTER_TYPE(15i32);
6810pub const D3D11_TRACE_THREAD_GROUP_SHARED_MEMORY: D3D11_TRACE_REGISTER_TYPE =
6811 D3D11_TRACE_REGISTER_TYPE(24i32);
6812pub const D3D11_TRACE_UNORDERED_ACCESS_VIEW: D3D11_TRACE_REGISTER_TYPE =
6813 D3D11_TRACE_REGISTER_TYPE(23i32);
6814#[repr(C)]
6815#[derive(Clone, Copy, Debug, PartialEq)]
6816pub struct D3D11_TRACE_VALUE {
6817 pub Bits: [u32; 4],
6818 pub ValidMask: u8,
6819}
6820impl Default for D3D11_TRACE_VALUE {
6821 fn default() -> Self {
6822 unsafe { core::mem::zeroed() }
6823 }
6824}
6825#[repr(transparent)]
6826#[derive(Clone, Copy, Debug, Default, Eq, PartialEq)]
6827pub struct D3D11_UAV_DIMENSION(pub i32);
6828pub const D3D11_UAV_DIMENSION_BUFFER: D3D11_UAV_DIMENSION = D3D11_UAV_DIMENSION(1i32);
6829pub const D3D11_UAV_DIMENSION_TEXTURE1D: D3D11_UAV_DIMENSION = D3D11_UAV_DIMENSION(2i32);
6830pub const D3D11_UAV_DIMENSION_TEXTURE1DARRAY: D3D11_UAV_DIMENSION = D3D11_UAV_DIMENSION(3i32);
6831pub const D3D11_UAV_DIMENSION_TEXTURE2D: D3D11_UAV_DIMENSION = D3D11_UAV_DIMENSION(4i32);
6832pub const D3D11_UAV_DIMENSION_TEXTURE2DARRAY: D3D11_UAV_DIMENSION = D3D11_UAV_DIMENSION(5i32);
6833pub const D3D11_UAV_DIMENSION_TEXTURE3D: D3D11_UAV_DIMENSION = D3D11_UAV_DIMENSION(8i32);
6834pub const D3D11_UAV_DIMENSION_UNKNOWN: D3D11_UAV_DIMENSION = D3D11_UAV_DIMENSION(0i32);
6835pub const D3D11_UNBOUND_MEMORY_ACCESS_RESULT: u32 = 0u32;
6836pub const D3D11_UNMUTE_SEVERITY_INFO: crate::core_supplemental::PCWSTR =
6837 crate::core_supplemental::w!("Unmute_SEVERITY_INFO");
6838#[repr(C)]
6839#[cfg(feature = "Win32_Graphics_Dxgi_Common")]
6840#[derive(Clone, Copy)]
6841pub struct D3D11_UNORDERED_ACCESS_VIEW_DESC {
6842 pub Format: crate::Dxgi::Common::DXGI_FORMAT,
6843 pub ViewDimension: D3D11_UAV_DIMENSION,
6844 pub Anonymous: D3D11_UNORDERED_ACCESS_VIEW_DESC_0,
6845}
6846#[cfg(feature = "Win32_Graphics_Dxgi_Common")]
6847impl Default for D3D11_UNORDERED_ACCESS_VIEW_DESC {
6848 fn default() -> Self {
6849 unsafe { core::mem::zeroed() }
6850 }
6851}
6852#[repr(C)]
6853#[cfg(feature = "Win32_Graphics_Dxgi_Common")]
6854#[derive(Clone, Copy)]
6855pub union D3D11_UNORDERED_ACCESS_VIEW_DESC_0 {
6856 pub Buffer: D3D11_BUFFER_UAV,
6857 pub Texture1D: D3D11_TEX1D_UAV,
6858 pub Texture1DArray: D3D11_TEX1D_ARRAY_UAV,
6859 pub Texture2D: D3D11_TEX2D_UAV,
6860 pub Texture2DArray: D3D11_TEX2D_ARRAY_UAV,
6861 pub Texture3D: D3D11_TEX3D_UAV,
6862}
6863#[cfg(feature = "Win32_Graphics_Dxgi_Common")]
6864impl Default for D3D11_UNORDERED_ACCESS_VIEW_DESC_0 {
6865 fn default() -> Self {
6866 unsafe { core::mem::zeroed() }
6867 }
6868}
6869#[repr(C)]
6870#[cfg(feature = "Win32_Graphics_Dxgi_Common")]
6871#[derive(Clone, Copy)]
6872pub struct D3D11_UNORDERED_ACCESS_VIEW_DESC1 {
6873 pub Format: crate::Dxgi::Common::DXGI_FORMAT,
6874 pub ViewDimension: D3D11_UAV_DIMENSION,
6875 pub Anonymous: D3D11_UNORDERED_ACCESS_VIEW_DESC1_0,
6876}
6877#[cfg(feature = "Win32_Graphics_Dxgi_Common")]
6878impl Default for D3D11_UNORDERED_ACCESS_VIEW_DESC1 {
6879 fn default() -> Self {
6880 unsafe { core::mem::zeroed() }
6881 }
6882}
6883#[repr(C)]
6884#[cfg(feature = "Win32_Graphics_Dxgi_Common")]
6885#[derive(Clone, Copy)]
6886pub union D3D11_UNORDERED_ACCESS_VIEW_DESC1_0 {
6887 pub Buffer: D3D11_BUFFER_UAV,
6888 pub Texture1D: D3D11_TEX1D_UAV,
6889 pub Texture1DArray: D3D11_TEX1D_ARRAY_UAV,
6890 pub Texture2D: D3D11_TEX2D_UAV1,
6891 pub Texture2DArray: D3D11_TEX2D_ARRAY_UAV1,
6892 pub Texture3D: D3D11_TEX3D_UAV,
6893}
6894#[cfg(feature = "Win32_Graphics_Dxgi_Common")]
6895impl Default for D3D11_UNORDERED_ACCESS_VIEW_DESC1_0 {
6896 fn default() -> Self {
6897 unsafe { core::mem::zeroed() }
6898 }
6899}
6900#[repr(transparent)]
6901#[derive(Clone, Copy, Debug, Default, Eq, PartialEq)]
6902pub struct D3D11_USAGE(pub i32);
6903pub const D3D11_USAGE_DEFAULT: D3D11_USAGE = D3D11_USAGE(0i32);
6904pub const D3D11_USAGE_DYNAMIC: D3D11_USAGE = D3D11_USAGE(2i32);
6905pub const D3D11_USAGE_IMMUTABLE: D3D11_USAGE = D3D11_USAGE(1i32);
6906pub const D3D11_USAGE_STAGING: D3D11_USAGE = D3D11_USAGE(3i32);
6907#[repr(transparent)]
6908#[derive(Clone, Copy, Debug, Default, Eq, PartialEq)]
6909pub struct D3D11_VDOV_DIMENSION(pub i32);
6910pub const D3D11_VDOV_DIMENSION_TEXTURE2D: D3D11_VDOV_DIMENSION = D3D11_VDOV_DIMENSION(1i32);
6911pub const D3D11_VDOV_DIMENSION_UNKNOWN: D3D11_VDOV_DIMENSION = D3D11_VDOV_DIMENSION(0i32);
6912pub const D3D11_VERTEX_SHADER: D3D11_SHADER_TYPE = D3D11_SHADER_TYPE(1i32);
6913#[repr(C)]
6914#[derive(Clone, Copy, Debug, PartialEq)]
6915pub struct D3D11_VERTEX_SHADER_TRACE_DESC {
6916 pub Invocation: u64,
6917}
6918impl Default for D3D11_VERTEX_SHADER_TRACE_DESC {
6919 fn default() -> Self {
6920 unsafe { core::mem::zeroed() }
6921 }
6922}
6923#[repr(C)]
6924#[derive(Clone, Copy)]
6925pub struct D3D11_VIDEO_COLOR {
6926 pub Anonymous: D3D11_VIDEO_COLOR_0,
6927}
6928impl Default for D3D11_VIDEO_COLOR {
6929 fn default() -> Self {
6930 unsafe { core::mem::zeroed() }
6931 }
6932}
6933#[repr(C)]
6934#[derive(Clone, Copy)]
6935pub union D3D11_VIDEO_COLOR_0 {
6936 pub YCbCr: D3D11_VIDEO_COLOR_YCbCrA,
6937 pub RGBA: D3D11_VIDEO_COLOR_RGBA,
6938}
6939impl Default for D3D11_VIDEO_COLOR_0 {
6940 fn default() -> Self {
6941 unsafe { core::mem::zeroed() }
6942 }
6943}
6944#[repr(C)]
6945#[derive(Clone, Copy, Debug, PartialEq)]
6946pub struct D3D11_VIDEO_COLOR_RGBA {
6947 pub R: f32,
6948 pub G: f32,
6949 pub B: f32,
6950 pub A: f32,
6951}
6952impl Default for D3D11_VIDEO_COLOR_RGBA {
6953 fn default() -> Self {
6954 unsafe { core::mem::zeroed() }
6955 }
6956}
6957#[repr(C)]
6958#[derive(Clone, Copy, Debug, PartialEq)]
6959pub struct D3D11_VIDEO_COLOR_YCbCrA {
6960 pub Y: f32,
6961 pub Cb: f32,
6962 pub Cr: f32,
6963 pub A: f32,
6964}
6965impl Default for D3D11_VIDEO_COLOR_YCbCrA {
6966 fn default() -> Self {
6967 unsafe { core::mem::zeroed() }
6968 }
6969}
6970#[repr(C)]
6971#[derive(Clone, Copy, Debug, PartialEq)]
6972pub struct D3D11_VIDEO_CONTENT_PROTECTION_CAPS {
6973 pub Caps: u32,
6974 pub KeyExchangeTypeCount: u32,
6975 pub BlockAlignmentSize: u32,
6976 pub ProtectedMemorySize: u64,
6977}
6978impl Default for D3D11_VIDEO_CONTENT_PROTECTION_CAPS {
6979 fn default() -> Self {
6980 unsafe { core::mem::zeroed() }
6981 }
6982}
6983#[repr(C)]
6984#[derive(Clone, Debug, PartialEq)]
6985pub struct D3D11_VIDEO_DECODER_BEGIN_FRAME_CRYPTO_SESSION {
6986 pub pCryptoSession: core::mem::ManuallyDrop<Option<ID3D11CryptoSession>>,
6987 pub BlobSize: u32,
6988 pub pBlob: *mut core::ffi::c_void,
6989 pub pKeyInfoId: *mut windows_core::GUID,
6990 pub PrivateDataSize: u32,
6991 pub pPrivateData: *mut core::ffi::c_void,
6992}
6993impl Default for D3D11_VIDEO_DECODER_BEGIN_FRAME_CRYPTO_SESSION {
6994 fn default() -> Self {
6995 unsafe { core::mem::zeroed() }
6996 }
6997}
6998pub const D3D11_VIDEO_DECODER_BUFFER_BITSTREAM: D3D11_VIDEO_DECODER_BUFFER_TYPE =
6999 D3D11_VIDEO_DECODER_BUFFER_TYPE(6i32);
7000pub const D3D11_VIDEO_DECODER_BUFFER_DEBLOCKING_CONTROL: D3D11_VIDEO_DECODER_BUFFER_TYPE =
7001 D3D11_VIDEO_DECODER_BUFFER_TYPE(3i32);
7002#[repr(C)]
7003#[derive(Clone, Copy, Debug, PartialEq)]
7004pub struct D3D11_VIDEO_DECODER_BUFFER_DESC {
7005 pub BufferType: D3D11_VIDEO_DECODER_BUFFER_TYPE,
7006 pub BufferIndex: u32,
7007 pub DataOffset: u32,
7008 pub DataSize: u32,
7009 pub FirstMBaddress: u32,
7010 pub NumMBsInBuffer: u32,
7011 pub Width: u32,
7012 pub Height: u32,
7013 pub Stride: u32,
7014 pub ReservedBits: u32,
7015 pub pIV: *mut core::ffi::c_void,
7016 pub IVSize: u32,
7017 pub PartialEncryption: crate::Foundation::BOOL,
7018 pub EncryptedBlockInfo: D3D11_ENCRYPTED_BLOCK_INFO,
7019}
7020impl Default for D3D11_VIDEO_DECODER_BUFFER_DESC {
7021 fn default() -> Self {
7022 unsafe { core::mem::zeroed() }
7023 }
7024}
7025#[repr(C)]
7026#[derive(Clone, Copy, Debug, PartialEq)]
7027pub struct D3D11_VIDEO_DECODER_BUFFER_DESC1 {
7028 pub BufferType: D3D11_VIDEO_DECODER_BUFFER_TYPE,
7029 pub DataOffset: u32,
7030 pub DataSize: u32,
7031 pub pIV: *mut core::ffi::c_void,
7032 pub IVSize: u32,
7033 pub pSubSampleMappingBlock: *mut D3D11_VIDEO_DECODER_SUB_SAMPLE_MAPPING_BLOCK,
7034 pub SubSampleMappingCount: u32,
7035}
7036impl Default for D3D11_VIDEO_DECODER_BUFFER_DESC1 {
7037 fn default() -> Self {
7038 unsafe { core::mem::zeroed() }
7039 }
7040}
7041#[repr(C)]
7042#[derive(Clone, Copy, Debug, PartialEq)]
7043pub struct D3D11_VIDEO_DECODER_BUFFER_DESC2 {
7044 pub BufferType: D3D11_VIDEO_DECODER_BUFFER_TYPE,
7045 pub DataOffset: u32,
7046 pub DataSize: u32,
7047 pub pIV: *mut core::ffi::c_void,
7048 pub IVSize: u32,
7049 pub pSubSampleMappingBlock: *mut D3D11_VIDEO_DECODER_SUB_SAMPLE_MAPPING_BLOCK,
7050 pub SubSampleMappingCount: u32,
7051 pub cBlocksStripeEncrypted: u32,
7052 pub cBlocksStripeClear: u32,
7053}
7054impl Default for D3D11_VIDEO_DECODER_BUFFER_DESC2 {
7055 fn default() -> Self {
7056 unsafe { core::mem::zeroed() }
7057 }
7058}
7059pub const D3D11_VIDEO_DECODER_BUFFER_FILM_GRAIN: D3D11_VIDEO_DECODER_BUFFER_TYPE =
7060 D3D11_VIDEO_DECODER_BUFFER_TYPE(8i32);
7061pub const D3D11_VIDEO_DECODER_BUFFER_INVERSE_QUANTIZATION_MATRIX: D3D11_VIDEO_DECODER_BUFFER_TYPE =
7062 D3D11_VIDEO_DECODER_BUFFER_TYPE(4i32);
7063pub const D3D11_VIDEO_DECODER_BUFFER_MACROBLOCK_CONTROL: D3D11_VIDEO_DECODER_BUFFER_TYPE =
7064 D3D11_VIDEO_DECODER_BUFFER_TYPE(1i32);
7065pub const D3D11_VIDEO_DECODER_BUFFER_MOTION_VECTOR: D3D11_VIDEO_DECODER_BUFFER_TYPE =
7066 D3D11_VIDEO_DECODER_BUFFER_TYPE(7i32);
7067pub const D3D11_VIDEO_DECODER_BUFFER_PICTURE_PARAMETERS: D3D11_VIDEO_DECODER_BUFFER_TYPE =
7068 D3D11_VIDEO_DECODER_BUFFER_TYPE(0i32);
7069pub const D3D11_VIDEO_DECODER_BUFFER_RESIDUAL_DIFFERENCE: D3D11_VIDEO_DECODER_BUFFER_TYPE =
7070 D3D11_VIDEO_DECODER_BUFFER_TYPE(2i32);
7071pub const D3D11_VIDEO_DECODER_BUFFER_SLICE_CONTROL: D3D11_VIDEO_DECODER_BUFFER_TYPE =
7072 D3D11_VIDEO_DECODER_BUFFER_TYPE(5i32);
7073#[repr(transparent)]
7074#[derive(Clone, Copy, Debug, Default, Eq, PartialEq)]
7075pub struct D3D11_VIDEO_DECODER_BUFFER_TYPE(pub i32);
7076#[repr(transparent)]
7077#[derive(Clone, Copy, Debug, Default, Eq, PartialEq)]
7078pub struct D3D11_VIDEO_DECODER_CAPS(pub i32);
7079pub const D3D11_VIDEO_DECODER_CAPS_DOWNSAMPLE: D3D11_VIDEO_DECODER_CAPS =
7080 D3D11_VIDEO_DECODER_CAPS(1i32);
7081pub const D3D11_VIDEO_DECODER_CAPS_DOWNSAMPLE_DYNAMIC: D3D11_VIDEO_DECODER_CAPS =
7082 D3D11_VIDEO_DECODER_CAPS(4i32);
7083pub const D3D11_VIDEO_DECODER_CAPS_DOWNSAMPLE_REQUIRED: D3D11_VIDEO_DECODER_CAPS =
7084 D3D11_VIDEO_DECODER_CAPS(8i32);
7085pub const D3D11_VIDEO_DECODER_CAPS_NON_REAL_TIME: D3D11_VIDEO_DECODER_CAPS =
7086 D3D11_VIDEO_DECODER_CAPS(2i32);
7087pub const D3D11_VIDEO_DECODER_CAPS_UNSUPPORTED: D3D11_VIDEO_DECODER_CAPS =
7088 D3D11_VIDEO_DECODER_CAPS(16i32);
7089#[repr(C)]
7090#[derive(Clone, Copy, Debug, PartialEq)]
7091pub struct D3D11_VIDEO_DECODER_CONFIG {
7092 pub guidConfigBitstreamEncryption: windows_core::GUID,
7093 pub guidConfigMBcontrolEncryption: windows_core::GUID,
7094 pub guidConfigResidDiffEncryption: windows_core::GUID,
7095 pub ConfigBitstreamRaw: u32,
7096 pub ConfigMBcontrolRasterOrder: u32,
7097 pub ConfigResidDiffHost: u32,
7098 pub ConfigSpatialResid8: u32,
7099 pub ConfigResid8Subtraction: u32,
7100 pub ConfigSpatialHost8or9Clipping: u32,
7101 pub ConfigSpatialResidInterleaved: u32,
7102 pub ConfigIntraResidUnsigned: u32,
7103 pub ConfigResidDiffAccelerator: u32,
7104 pub ConfigHostInverseScan: u32,
7105 pub ConfigSpecificIDCT: u32,
7106 pub Config4GroupedCoefs: u32,
7107 pub ConfigMinRenderTargetBuffCount: u16,
7108 pub ConfigDecoderSpecific: u16,
7109}
7110impl Default for D3D11_VIDEO_DECODER_CONFIG {
7111 fn default() -> Self {
7112 unsafe { core::mem::zeroed() }
7113 }
7114}
7115#[repr(C)]
7116#[cfg(feature = "Win32_Graphics_Dxgi_Common")]
7117#[derive(Clone, Copy, Debug, PartialEq)]
7118pub struct D3D11_VIDEO_DECODER_DESC {
7119 pub Guid: windows_core::GUID,
7120 pub SampleWidth: u32,
7121 pub SampleHeight: u32,
7122 pub OutputFormat: crate::Dxgi::Common::DXGI_FORMAT,
7123}
7124#[cfg(feature = "Win32_Graphics_Dxgi_Common")]
7125impl Default for D3D11_VIDEO_DECODER_DESC {
7126 fn default() -> Self {
7127 unsafe { core::mem::zeroed() }
7128 }
7129}
7130#[repr(C)]
7131#[derive(Clone, Copy, Debug, PartialEq)]
7132pub struct D3D11_VIDEO_DECODER_EXTENSION {
7133 pub Function: u32,
7134 pub pPrivateInputData: *mut core::ffi::c_void,
7135 pub PrivateInputDataSize: u32,
7136 pub pPrivateOutputData: *mut core::ffi::c_void,
7137 pub PrivateOutputDataSize: u32,
7138 pub ResourceCount: u32,
7139 pub ppResourceList: *mut Option<ID3D11Resource>,
7140}
7141impl Default for D3D11_VIDEO_DECODER_EXTENSION {
7142 fn default() -> Self {
7143 unsafe { core::mem::zeroed() }
7144 }
7145}
7146#[repr(transparent)]
7147#[derive(Clone, Copy, Debug, Default, Eq, PartialEq)]
7148pub struct D3D11_VIDEO_DECODER_HISTOGRAM_COMPONENT(pub i32);
7149pub const D3D11_VIDEO_DECODER_HISTOGRAM_COMPONENT_A: D3D11_VIDEO_DECODER_HISTOGRAM_COMPONENT =
7150 D3D11_VIDEO_DECODER_HISTOGRAM_COMPONENT(3i32);
7151pub const D3D11_VIDEO_DECODER_HISTOGRAM_COMPONENT_B: D3D11_VIDEO_DECODER_HISTOGRAM_COMPONENT =
7152 D3D11_VIDEO_DECODER_HISTOGRAM_COMPONENT(2i32);
7153#[repr(transparent)]
7154#[derive(Clone, Copy, Debug, Default, Eq, PartialEq)]
7155pub struct D3D11_VIDEO_DECODER_HISTOGRAM_COMPONENT_FLAGS(pub i32);
7156impl D3D11_VIDEO_DECODER_HISTOGRAM_COMPONENT_FLAGS {
7157 pub const fn contains(&self, other: Self) -> bool {
7158 self.0 & other.0 == other.0
7159 }
7160}
7161impl core::ops::BitOr for D3D11_VIDEO_DECODER_HISTOGRAM_COMPONENT_FLAGS {
7162 type Output = Self;
7163 fn bitor(self, other: Self) -> Self {
7164 Self(self.0 | other.0)
7165 }
7166}
7167impl core::ops::BitAnd for D3D11_VIDEO_DECODER_HISTOGRAM_COMPONENT_FLAGS {
7168 type Output = Self;
7169 fn bitand(self, other: Self) -> Self {
7170 Self(self.0 & other.0)
7171 }
7172}
7173impl core::ops::BitOrAssign for D3D11_VIDEO_DECODER_HISTOGRAM_COMPONENT_FLAGS {
7174 fn bitor_assign(&mut self, other: Self) {
7175 self.0.bitor_assign(other.0)
7176 }
7177}
7178impl core::ops::BitAndAssign for D3D11_VIDEO_DECODER_HISTOGRAM_COMPONENT_FLAGS {
7179 fn bitand_assign(&mut self, other: Self) {
7180 self.0.bitand_assign(other.0)
7181 }
7182}
7183impl core::ops::Not for D3D11_VIDEO_DECODER_HISTOGRAM_COMPONENT_FLAGS {
7184 type Output = Self;
7185 fn not(self) -> Self {
7186 Self(self.0.not())
7187 }
7188}
7189pub const D3D11_VIDEO_DECODER_HISTOGRAM_COMPONENT_FLAG_A:
7190 D3D11_VIDEO_DECODER_HISTOGRAM_COMPONENT_FLAGS =
7191 D3D11_VIDEO_DECODER_HISTOGRAM_COMPONENT_FLAGS(8i32);
7192pub const D3D11_VIDEO_DECODER_HISTOGRAM_COMPONENT_FLAG_B:
7193 D3D11_VIDEO_DECODER_HISTOGRAM_COMPONENT_FLAGS =
7194 D3D11_VIDEO_DECODER_HISTOGRAM_COMPONENT_FLAGS(4i32);
7195pub const D3D11_VIDEO_DECODER_HISTOGRAM_COMPONENT_FLAG_G:
7196 D3D11_VIDEO_DECODER_HISTOGRAM_COMPONENT_FLAGS =
7197 D3D11_VIDEO_DECODER_HISTOGRAM_COMPONENT_FLAGS(2i32);
7198pub const D3D11_VIDEO_DECODER_HISTOGRAM_COMPONENT_FLAG_NONE:
7199 D3D11_VIDEO_DECODER_HISTOGRAM_COMPONENT_FLAGS =
7200 D3D11_VIDEO_DECODER_HISTOGRAM_COMPONENT_FLAGS(0i32);
7201pub const D3D11_VIDEO_DECODER_HISTOGRAM_COMPONENT_FLAG_R:
7202 D3D11_VIDEO_DECODER_HISTOGRAM_COMPONENT_FLAGS =
7203 D3D11_VIDEO_DECODER_HISTOGRAM_COMPONENT_FLAGS(1i32);
7204pub const D3D11_VIDEO_DECODER_HISTOGRAM_COMPONENT_FLAG_U:
7205 D3D11_VIDEO_DECODER_HISTOGRAM_COMPONENT_FLAGS =
7206 D3D11_VIDEO_DECODER_HISTOGRAM_COMPONENT_FLAGS(2i32);
7207pub const D3D11_VIDEO_DECODER_HISTOGRAM_COMPONENT_FLAG_V:
7208 D3D11_VIDEO_DECODER_HISTOGRAM_COMPONENT_FLAGS =
7209 D3D11_VIDEO_DECODER_HISTOGRAM_COMPONENT_FLAGS(4i32);
7210pub const D3D11_VIDEO_DECODER_HISTOGRAM_COMPONENT_FLAG_Y:
7211 D3D11_VIDEO_DECODER_HISTOGRAM_COMPONENT_FLAGS =
7212 D3D11_VIDEO_DECODER_HISTOGRAM_COMPONENT_FLAGS(1i32);
7213pub const D3D11_VIDEO_DECODER_HISTOGRAM_COMPONENT_G: D3D11_VIDEO_DECODER_HISTOGRAM_COMPONENT =
7214 D3D11_VIDEO_DECODER_HISTOGRAM_COMPONENT(1i32);
7215pub const D3D11_VIDEO_DECODER_HISTOGRAM_COMPONENT_R: D3D11_VIDEO_DECODER_HISTOGRAM_COMPONENT =
7216 D3D11_VIDEO_DECODER_HISTOGRAM_COMPONENT(0i32);
7217pub const D3D11_VIDEO_DECODER_HISTOGRAM_COMPONENT_U: D3D11_VIDEO_DECODER_HISTOGRAM_COMPONENT =
7218 D3D11_VIDEO_DECODER_HISTOGRAM_COMPONENT(1i32);
7219pub const D3D11_VIDEO_DECODER_HISTOGRAM_COMPONENT_V: D3D11_VIDEO_DECODER_HISTOGRAM_COMPONENT =
7220 D3D11_VIDEO_DECODER_HISTOGRAM_COMPONENT(2i32);
7221pub const D3D11_VIDEO_DECODER_HISTOGRAM_COMPONENT_Y: D3D11_VIDEO_DECODER_HISTOGRAM_COMPONENT =
7222 D3D11_VIDEO_DECODER_HISTOGRAM_COMPONENT(0i32);
7223#[repr(C)]
7224#[derive(Clone, Copy)]
7225pub struct D3D11_VIDEO_DECODER_OUTPUT_VIEW_DESC {
7226 pub DecodeProfile: windows_core::GUID,
7227 pub ViewDimension: D3D11_VDOV_DIMENSION,
7228 pub Anonymous: D3D11_VIDEO_DECODER_OUTPUT_VIEW_DESC_0,
7229}
7230impl Default for D3D11_VIDEO_DECODER_OUTPUT_VIEW_DESC {
7231 fn default() -> Self {
7232 unsafe { core::mem::zeroed() }
7233 }
7234}
7235#[repr(C)]
7236#[derive(Clone, Copy)]
7237pub union D3D11_VIDEO_DECODER_OUTPUT_VIEW_DESC_0 {
7238 pub Texture2D: D3D11_TEX2D_VDOV,
7239}
7240impl Default for D3D11_VIDEO_DECODER_OUTPUT_VIEW_DESC_0 {
7241 fn default() -> Self {
7242 unsafe { core::mem::zeroed() }
7243 }
7244}
7245#[repr(C)]
7246#[derive(Clone, Copy, Debug, PartialEq)]
7247pub struct D3D11_VIDEO_DECODER_SUB_SAMPLE_MAPPING_BLOCK {
7248 pub ClearSize: u32,
7249 pub EncryptedSize: u32,
7250}
7251impl Default for D3D11_VIDEO_DECODER_SUB_SAMPLE_MAPPING_BLOCK {
7252 fn default() -> Self {
7253 unsafe { core::mem::zeroed() }
7254 }
7255}
7256#[repr(transparent)]
7257#[derive(Clone, Copy, Debug, Default, Eq, PartialEq)]
7258pub struct D3D11_VIDEO_FRAME_FORMAT(pub i32);
7259pub const D3D11_VIDEO_FRAME_FORMAT_INTERLACED_BOTTOM_FIELD_FIRST: D3D11_VIDEO_FRAME_FORMAT =
7260 D3D11_VIDEO_FRAME_FORMAT(2i32);
7261pub const D3D11_VIDEO_FRAME_FORMAT_INTERLACED_TOP_FIELD_FIRST: D3D11_VIDEO_FRAME_FORMAT =
7262 D3D11_VIDEO_FRAME_FORMAT(1i32);
7263pub const D3D11_VIDEO_FRAME_FORMAT_PROGRESSIVE: D3D11_VIDEO_FRAME_FORMAT =
7264 D3D11_VIDEO_FRAME_FORMAT(0i32);
7265#[repr(transparent)]
7266#[derive(Clone, Copy, Debug, Default, Eq, PartialEq)]
7267pub struct D3D11_VIDEO_PROCESSOR_ALPHA_FILL_MODE(pub i32);
7268pub const D3D11_VIDEO_PROCESSOR_ALPHA_FILL_MODE_BACKGROUND: D3D11_VIDEO_PROCESSOR_ALPHA_FILL_MODE =
7269 D3D11_VIDEO_PROCESSOR_ALPHA_FILL_MODE(1i32);
7270pub const D3D11_VIDEO_PROCESSOR_ALPHA_FILL_MODE_DESTINATION: D3D11_VIDEO_PROCESSOR_ALPHA_FILL_MODE =
7271 D3D11_VIDEO_PROCESSOR_ALPHA_FILL_MODE(2i32);
7272pub const D3D11_VIDEO_PROCESSOR_ALPHA_FILL_MODE_OPAQUE: D3D11_VIDEO_PROCESSOR_ALPHA_FILL_MODE =
7273 D3D11_VIDEO_PROCESSOR_ALPHA_FILL_MODE(0i32);
7274pub const D3D11_VIDEO_PROCESSOR_ALPHA_FILL_MODE_SOURCE_STREAM:
7275 D3D11_VIDEO_PROCESSOR_ALPHA_FILL_MODE = D3D11_VIDEO_PROCESSOR_ALPHA_FILL_MODE(3i32);
7276#[repr(transparent)]
7277#[derive(Clone, Copy, Debug, Default, Eq, PartialEq)]
7278pub struct D3D11_VIDEO_PROCESSOR_AUTO_STREAM_CAPS(pub i32);
7279pub const D3D11_VIDEO_PROCESSOR_AUTO_STREAM_CAPS_ANAMORPHIC_SCALING:
7280 D3D11_VIDEO_PROCESSOR_AUTO_STREAM_CAPS = D3D11_VIDEO_PROCESSOR_AUTO_STREAM_CAPS(128i32);
7281pub const D3D11_VIDEO_PROCESSOR_AUTO_STREAM_CAPS_COLOR_CORRECTION:
7282 D3D11_VIDEO_PROCESSOR_AUTO_STREAM_CAPS = D3D11_VIDEO_PROCESSOR_AUTO_STREAM_CAPS(8i32);
7283pub const D3D11_VIDEO_PROCESSOR_AUTO_STREAM_CAPS_DENOISE: D3D11_VIDEO_PROCESSOR_AUTO_STREAM_CAPS =
7284 D3D11_VIDEO_PROCESSOR_AUTO_STREAM_CAPS(1i32);
7285pub const D3D11_VIDEO_PROCESSOR_AUTO_STREAM_CAPS_DERINGING: D3D11_VIDEO_PROCESSOR_AUTO_STREAM_CAPS =
7286 D3D11_VIDEO_PROCESSOR_AUTO_STREAM_CAPS(2i32);
7287pub const D3D11_VIDEO_PROCESSOR_AUTO_STREAM_CAPS_EDGE_ENHANCEMENT:
7288 D3D11_VIDEO_PROCESSOR_AUTO_STREAM_CAPS = D3D11_VIDEO_PROCESSOR_AUTO_STREAM_CAPS(4i32);
7289pub const D3D11_VIDEO_PROCESSOR_AUTO_STREAM_CAPS_FLESH_TONE_MAPPING:
7290 D3D11_VIDEO_PROCESSOR_AUTO_STREAM_CAPS = D3D11_VIDEO_PROCESSOR_AUTO_STREAM_CAPS(16i32);
7291pub const D3D11_VIDEO_PROCESSOR_AUTO_STREAM_CAPS_IMAGE_STABILIZATION:
7292 D3D11_VIDEO_PROCESSOR_AUTO_STREAM_CAPS = D3D11_VIDEO_PROCESSOR_AUTO_STREAM_CAPS(32i32);
7293pub const D3D11_VIDEO_PROCESSOR_AUTO_STREAM_CAPS_SUPER_RESOLUTION:
7294 D3D11_VIDEO_PROCESSOR_AUTO_STREAM_CAPS = D3D11_VIDEO_PROCESSOR_AUTO_STREAM_CAPS(64i32);
7295#[repr(transparent)]
7296#[derive(Clone, Copy, Debug, Default, Eq, PartialEq)]
7297pub struct D3D11_VIDEO_PROCESSOR_BEHAVIOR_HINTS(pub i32);
7298pub const D3D11_VIDEO_PROCESSOR_BEHAVIOR_HINT_MULTIPLANE_OVERLAY_COLOR_SPACE_CONVERSION:
7299 D3D11_VIDEO_PROCESSOR_BEHAVIOR_HINTS = D3D11_VIDEO_PROCESSOR_BEHAVIOR_HINTS(4i32);
7300pub const D3D11_VIDEO_PROCESSOR_BEHAVIOR_HINT_MULTIPLANE_OVERLAY_RESIZE:
7301 D3D11_VIDEO_PROCESSOR_BEHAVIOR_HINTS = D3D11_VIDEO_PROCESSOR_BEHAVIOR_HINTS(2i32);
7302pub const D3D11_VIDEO_PROCESSOR_BEHAVIOR_HINT_MULTIPLANE_OVERLAY_ROTATION:
7303 D3D11_VIDEO_PROCESSOR_BEHAVIOR_HINTS = D3D11_VIDEO_PROCESSOR_BEHAVIOR_HINTS(1i32);
7304pub const D3D11_VIDEO_PROCESSOR_BEHAVIOR_HINT_TRIPLE_BUFFER_OUTPUT:
7305 D3D11_VIDEO_PROCESSOR_BEHAVIOR_HINTS = D3D11_VIDEO_PROCESSOR_BEHAVIOR_HINTS(8i32);
7306#[repr(C)]
7307#[derive(Clone, Copy, Debug, PartialEq)]
7308pub struct D3D11_VIDEO_PROCESSOR_CAPS {
7309 pub DeviceCaps: u32,
7310 pub FeatureCaps: u32,
7311 pub FilterCaps: u32,
7312 pub InputFormatCaps: u32,
7313 pub AutoStreamCaps: u32,
7314 pub StereoCaps: u32,
7315 pub RateConversionCapsCount: u32,
7316 pub MaxInputStreams: u32,
7317 pub MaxStreamStates: u32,
7318}
7319impl Default for D3D11_VIDEO_PROCESSOR_CAPS {
7320 fn default() -> Self {
7321 unsafe { core::mem::zeroed() }
7322 }
7323}
7324#[repr(C)]
7325#[derive(Clone, Copy, Debug, PartialEq)]
7326pub struct D3D11_VIDEO_PROCESSOR_COLOR_SPACE {
7327 pub _bitfield: u32,
7328}
7329impl Default for D3D11_VIDEO_PROCESSOR_COLOR_SPACE {
7330 fn default() -> Self {
7331 unsafe { core::mem::zeroed() }
7332 }
7333}
7334#[repr(C)]
7335#[cfg(feature = "Win32_Graphics_Dxgi_Common")]
7336#[derive(Clone, Copy, Debug, PartialEq)]
7337pub struct D3D11_VIDEO_PROCESSOR_CONTENT_DESC {
7338 pub InputFrameFormat: D3D11_VIDEO_FRAME_FORMAT,
7339 pub InputFrameRate: crate::Dxgi::Common::DXGI_RATIONAL,
7340 pub InputWidth: u32,
7341 pub InputHeight: u32,
7342 pub OutputFrameRate: crate::Dxgi::Common::DXGI_RATIONAL,
7343 pub OutputWidth: u32,
7344 pub OutputHeight: u32,
7345 pub Usage: D3D11_VIDEO_USAGE,
7346}
7347#[cfg(feature = "Win32_Graphics_Dxgi_Common")]
7348impl Default for D3D11_VIDEO_PROCESSOR_CONTENT_DESC {
7349 fn default() -> Self {
7350 unsafe { core::mem::zeroed() }
7351 }
7352}
7353#[repr(C)]
7354#[cfg(feature = "Win32_Graphics_Dxgi_Common")]
7355#[derive(Clone, Copy, Debug, PartialEq)]
7356pub struct D3D11_VIDEO_PROCESSOR_CUSTOM_RATE {
7357 pub CustomRate: crate::Dxgi::Common::DXGI_RATIONAL,
7358 pub OutputFrames: u32,
7359 pub InputInterlaced: crate::Foundation::BOOL,
7360 pub InputFramesOrFields: u32,
7361}
7362#[cfg(feature = "Win32_Graphics_Dxgi_Common")]
7363impl Default for D3D11_VIDEO_PROCESSOR_CUSTOM_RATE {
7364 fn default() -> Self {
7365 unsafe { core::mem::zeroed() }
7366 }
7367}
7368#[repr(transparent)]
7369#[derive(Clone, Copy, Debug, Default, Eq, PartialEq)]
7370pub struct D3D11_VIDEO_PROCESSOR_DEVICE_CAPS(pub i32);
7371pub const D3D11_VIDEO_PROCESSOR_DEVICE_CAPS_LINEAR_SPACE: D3D11_VIDEO_PROCESSOR_DEVICE_CAPS =
7372 D3D11_VIDEO_PROCESSOR_DEVICE_CAPS(1i32);
7373pub const D3D11_VIDEO_PROCESSOR_DEVICE_CAPS_NOMINAL_RANGE: D3D11_VIDEO_PROCESSOR_DEVICE_CAPS =
7374 D3D11_VIDEO_PROCESSOR_DEVICE_CAPS(16i32);
7375pub const D3D11_VIDEO_PROCESSOR_DEVICE_CAPS_RGB_RANGE_CONVERSION:
7376 D3D11_VIDEO_PROCESSOR_DEVICE_CAPS = D3D11_VIDEO_PROCESSOR_DEVICE_CAPS(4i32);
7377pub const D3D11_VIDEO_PROCESSOR_DEVICE_CAPS_YCbCr_MATRIX_CONVERSION:
7378 D3D11_VIDEO_PROCESSOR_DEVICE_CAPS = D3D11_VIDEO_PROCESSOR_DEVICE_CAPS(8i32);
7379pub const D3D11_VIDEO_PROCESSOR_DEVICE_CAPS_xvYCC: D3D11_VIDEO_PROCESSOR_DEVICE_CAPS =
7380 D3D11_VIDEO_PROCESSOR_DEVICE_CAPS(2i32);
7381#[repr(transparent)]
7382#[derive(Clone, Copy, Debug, Default, Eq, PartialEq)]
7383pub struct D3D11_VIDEO_PROCESSOR_FEATURE_CAPS(pub i32);
7384pub const D3D11_VIDEO_PROCESSOR_FEATURE_CAPS_ALPHA_FILL: D3D11_VIDEO_PROCESSOR_FEATURE_CAPS =
7385 D3D11_VIDEO_PROCESSOR_FEATURE_CAPS(1i32);
7386pub const D3D11_VIDEO_PROCESSOR_FEATURE_CAPS_ALPHA_PALETTE: D3D11_VIDEO_PROCESSOR_FEATURE_CAPS =
7387 D3D11_VIDEO_PROCESSOR_FEATURE_CAPS(8i32);
7388pub const D3D11_VIDEO_PROCESSOR_FEATURE_CAPS_ALPHA_STREAM: D3D11_VIDEO_PROCESSOR_FEATURE_CAPS =
7389 D3D11_VIDEO_PROCESSOR_FEATURE_CAPS(128i32);
7390pub const D3D11_VIDEO_PROCESSOR_FEATURE_CAPS_CONSTRICTION: D3D11_VIDEO_PROCESSOR_FEATURE_CAPS =
7391 D3D11_VIDEO_PROCESSOR_FEATURE_CAPS(2i32);
7392pub const D3D11_VIDEO_PROCESSOR_FEATURE_CAPS_LEGACY: D3D11_VIDEO_PROCESSOR_FEATURE_CAPS =
7393 D3D11_VIDEO_PROCESSOR_FEATURE_CAPS(16i32);
7394pub const D3D11_VIDEO_PROCESSOR_FEATURE_CAPS_LUMA_KEY: D3D11_VIDEO_PROCESSOR_FEATURE_CAPS =
7395 D3D11_VIDEO_PROCESSOR_FEATURE_CAPS(4i32);
7396pub const D3D11_VIDEO_PROCESSOR_FEATURE_CAPS_METADATA_HDR10: D3D11_VIDEO_PROCESSOR_FEATURE_CAPS =
7397 D3D11_VIDEO_PROCESSOR_FEATURE_CAPS(2048i32);
7398pub const D3D11_VIDEO_PROCESSOR_FEATURE_CAPS_MIRROR: D3D11_VIDEO_PROCESSOR_FEATURE_CAPS =
7399 D3D11_VIDEO_PROCESSOR_FEATURE_CAPS(512i32);
7400pub const D3D11_VIDEO_PROCESSOR_FEATURE_CAPS_PIXEL_ASPECT_RATIO:
7401 D3D11_VIDEO_PROCESSOR_FEATURE_CAPS = D3D11_VIDEO_PROCESSOR_FEATURE_CAPS(256i32);
7402pub const D3D11_VIDEO_PROCESSOR_FEATURE_CAPS_ROTATION: D3D11_VIDEO_PROCESSOR_FEATURE_CAPS =
7403 D3D11_VIDEO_PROCESSOR_FEATURE_CAPS(64i32);
7404pub const D3D11_VIDEO_PROCESSOR_FEATURE_CAPS_SHADER_USAGE: D3D11_VIDEO_PROCESSOR_FEATURE_CAPS =
7405 D3D11_VIDEO_PROCESSOR_FEATURE_CAPS(1024i32);
7406pub const D3D11_VIDEO_PROCESSOR_FEATURE_CAPS_STEREO: D3D11_VIDEO_PROCESSOR_FEATURE_CAPS =
7407 D3D11_VIDEO_PROCESSOR_FEATURE_CAPS(32i32);
7408#[repr(transparent)]
7409#[derive(Clone, Copy, Debug, Default, Eq, PartialEq)]
7410pub struct D3D11_VIDEO_PROCESSOR_FILTER(pub i32);
7411pub const D3D11_VIDEO_PROCESSOR_FILTER_ANAMORPHIC_SCALING: D3D11_VIDEO_PROCESSOR_FILTER =
7412 D3D11_VIDEO_PROCESSOR_FILTER(6i32);
7413pub const D3D11_VIDEO_PROCESSOR_FILTER_BRIGHTNESS: D3D11_VIDEO_PROCESSOR_FILTER =
7414 D3D11_VIDEO_PROCESSOR_FILTER(0i32);
7415#[repr(transparent)]
7416#[derive(Clone, Copy, Debug, Default, Eq, PartialEq)]
7417pub struct D3D11_VIDEO_PROCESSOR_FILTER_CAPS(pub i32);
7418pub const D3D11_VIDEO_PROCESSOR_FILTER_CAPS_ANAMORPHIC_SCALING: D3D11_VIDEO_PROCESSOR_FILTER_CAPS =
7419 D3D11_VIDEO_PROCESSOR_FILTER_CAPS(64i32);
7420pub const D3D11_VIDEO_PROCESSOR_FILTER_CAPS_BRIGHTNESS: D3D11_VIDEO_PROCESSOR_FILTER_CAPS =
7421 D3D11_VIDEO_PROCESSOR_FILTER_CAPS(1i32);
7422pub const D3D11_VIDEO_PROCESSOR_FILTER_CAPS_CONTRAST: D3D11_VIDEO_PROCESSOR_FILTER_CAPS =
7423 D3D11_VIDEO_PROCESSOR_FILTER_CAPS(2i32);
7424pub const D3D11_VIDEO_PROCESSOR_FILTER_CAPS_EDGE_ENHANCEMENT: D3D11_VIDEO_PROCESSOR_FILTER_CAPS =
7425 D3D11_VIDEO_PROCESSOR_FILTER_CAPS(32i32);
7426pub const D3D11_VIDEO_PROCESSOR_FILTER_CAPS_HUE: D3D11_VIDEO_PROCESSOR_FILTER_CAPS =
7427 D3D11_VIDEO_PROCESSOR_FILTER_CAPS(4i32);
7428pub const D3D11_VIDEO_PROCESSOR_FILTER_CAPS_NOISE_REDUCTION: D3D11_VIDEO_PROCESSOR_FILTER_CAPS =
7429 D3D11_VIDEO_PROCESSOR_FILTER_CAPS(16i32);
7430pub const D3D11_VIDEO_PROCESSOR_FILTER_CAPS_SATURATION: D3D11_VIDEO_PROCESSOR_FILTER_CAPS =
7431 D3D11_VIDEO_PROCESSOR_FILTER_CAPS(8i32);
7432pub const D3D11_VIDEO_PROCESSOR_FILTER_CAPS_STEREO_ADJUSTMENT: D3D11_VIDEO_PROCESSOR_FILTER_CAPS =
7433 D3D11_VIDEO_PROCESSOR_FILTER_CAPS(128i32);
7434pub const D3D11_VIDEO_PROCESSOR_FILTER_CONTRAST: D3D11_VIDEO_PROCESSOR_FILTER =
7435 D3D11_VIDEO_PROCESSOR_FILTER(1i32);
7436pub const D3D11_VIDEO_PROCESSOR_FILTER_EDGE_ENHANCEMENT: D3D11_VIDEO_PROCESSOR_FILTER =
7437 D3D11_VIDEO_PROCESSOR_FILTER(5i32);
7438pub const D3D11_VIDEO_PROCESSOR_FILTER_HUE: D3D11_VIDEO_PROCESSOR_FILTER =
7439 D3D11_VIDEO_PROCESSOR_FILTER(2i32);
7440pub const D3D11_VIDEO_PROCESSOR_FILTER_NOISE_REDUCTION: D3D11_VIDEO_PROCESSOR_FILTER =
7441 D3D11_VIDEO_PROCESSOR_FILTER(4i32);
7442#[repr(C)]
7443#[derive(Clone, Copy, Debug, PartialEq)]
7444pub struct D3D11_VIDEO_PROCESSOR_FILTER_RANGE {
7445 pub Minimum: i32,
7446 pub Maximum: i32,
7447 pub Default: i32,
7448 pub Multiplier: f32,
7449}
7450impl Default for D3D11_VIDEO_PROCESSOR_FILTER_RANGE {
7451 fn default() -> Self {
7452 unsafe { core::mem::zeroed() }
7453 }
7454}
7455pub const D3D11_VIDEO_PROCESSOR_FILTER_SATURATION: D3D11_VIDEO_PROCESSOR_FILTER =
7456 D3D11_VIDEO_PROCESSOR_FILTER(3i32);
7457pub const D3D11_VIDEO_PROCESSOR_FILTER_STEREO_ADJUSTMENT: D3D11_VIDEO_PROCESSOR_FILTER =
7458 D3D11_VIDEO_PROCESSOR_FILTER(7i32);
7459#[repr(transparent)]
7460#[derive(Clone, Copy, Debug, Default, Eq, PartialEq)]
7461pub struct D3D11_VIDEO_PROCESSOR_FORMAT_CAPS(pub i32);
7462pub const D3D11_VIDEO_PROCESSOR_FORMAT_CAPS_PALETTE_INTERLACED: D3D11_VIDEO_PROCESSOR_FORMAT_CAPS =
7463 D3D11_VIDEO_PROCESSOR_FORMAT_CAPS(8i32);
7464pub const D3D11_VIDEO_PROCESSOR_FORMAT_CAPS_RGB_INTERLACED: D3D11_VIDEO_PROCESSOR_FORMAT_CAPS =
7465 D3D11_VIDEO_PROCESSOR_FORMAT_CAPS(1i32);
7466pub const D3D11_VIDEO_PROCESSOR_FORMAT_CAPS_RGB_LUMA_KEY: D3D11_VIDEO_PROCESSOR_FORMAT_CAPS =
7467 D3D11_VIDEO_PROCESSOR_FORMAT_CAPS(4i32);
7468pub const D3D11_VIDEO_PROCESSOR_FORMAT_CAPS_RGB_PROCAMP: D3D11_VIDEO_PROCESSOR_FORMAT_CAPS =
7469 D3D11_VIDEO_PROCESSOR_FORMAT_CAPS(2i32);
7470#[repr(transparent)]
7471#[derive(Clone, Copy, Debug, Default, Eq, PartialEq)]
7472pub struct D3D11_VIDEO_PROCESSOR_FORMAT_SUPPORT(pub i32);
7473pub const D3D11_VIDEO_PROCESSOR_FORMAT_SUPPORT_INPUT: D3D11_VIDEO_PROCESSOR_FORMAT_SUPPORT =
7474 D3D11_VIDEO_PROCESSOR_FORMAT_SUPPORT(1i32);
7475pub const D3D11_VIDEO_PROCESSOR_FORMAT_SUPPORT_OUTPUT: D3D11_VIDEO_PROCESSOR_FORMAT_SUPPORT =
7476 D3D11_VIDEO_PROCESSOR_FORMAT_SUPPORT(2i32);
7477#[repr(C)]
7478#[derive(Clone, Copy)]
7479pub struct D3D11_VIDEO_PROCESSOR_INPUT_VIEW_DESC {
7480 pub FourCC: u32,
7481 pub ViewDimension: D3D11_VPIV_DIMENSION,
7482 pub Anonymous: D3D11_VIDEO_PROCESSOR_INPUT_VIEW_DESC_0,
7483}
7484impl Default for D3D11_VIDEO_PROCESSOR_INPUT_VIEW_DESC {
7485 fn default() -> Self {
7486 unsafe { core::mem::zeroed() }
7487 }
7488}
7489#[repr(C)]
7490#[derive(Clone, Copy)]
7491pub union D3D11_VIDEO_PROCESSOR_INPUT_VIEW_DESC_0 {
7492 pub Texture2D: D3D11_TEX2D_VPIV,
7493}
7494impl Default for D3D11_VIDEO_PROCESSOR_INPUT_VIEW_DESC_0 {
7495 fn default() -> Self {
7496 unsafe { core::mem::zeroed() }
7497 }
7498}
7499#[repr(transparent)]
7500#[derive(Clone, Copy, Debug, Default, Eq, PartialEq)]
7501pub struct D3D11_VIDEO_PROCESSOR_ITELECINE_CAPS(pub i32);
7502pub const D3D11_VIDEO_PROCESSOR_ITELECINE_CAPS_22: D3D11_VIDEO_PROCESSOR_ITELECINE_CAPS =
7503 D3D11_VIDEO_PROCESSOR_ITELECINE_CAPS(2i32);
7504pub const D3D11_VIDEO_PROCESSOR_ITELECINE_CAPS_222222222223: D3D11_VIDEO_PROCESSOR_ITELECINE_CAPS =
7505 D3D11_VIDEO_PROCESSOR_ITELECINE_CAPS(256i32);
7506pub const D3D11_VIDEO_PROCESSOR_ITELECINE_CAPS_2224: D3D11_VIDEO_PROCESSOR_ITELECINE_CAPS =
7507 D3D11_VIDEO_PROCESSOR_ITELECINE_CAPS(4i32);
7508pub const D3D11_VIDEO_PROCESSOR_ITELECINE_CAPS_2332: D3D11_VIDEO_PROCESSOR_ITELECINE_CAPS =
7509 D3D11_VIDEO_PROCESSOR_ITELECINE_CAPS(8i32);
7510pub const D3D11_VIDEO_PROCESSOR_ITELECINE_CAPS_32: D3D11_VIDEO_PROCESSOR_ITELECINE_CAPS =
7511 D3D11_VIDEO_PROCESSOR_ITELECINE_CAPS(1i32);
7512pub const D3D11_VIDEO_PROCESSOR_ITELECINE_CAPS_32322: D3D11_VIDEO_PROCESSOR_ITELECINE_CAPS =
7513 D3D11_VIDEO_PROCESSOR_ITELECINE_CAPS(16i32);
7514pub const D3D11_VIDEO_PROCESSOR_ITELECINE_CAPS_55: D3D11_VIDEO_PROCESSOR_ITELECINE_CAPS =
7515 D3D11_VIDEO_PROCESSOR_ITELECINE_CAPS(32i32);
7516pub const D3D11_VIDEO_PROCESSOR_ITELECINE_CAPS_64: D3D11_VIDEO_PROCESSOR_ITELECINE_CAPS =
7517 D3D11_VIDEO_PROCESSOR_ITELECINE_CAPS(64i32);
7518pub const D3D11_VIDEO_PROCESSOR_ITELECINE_CAPS_87: D3D11_VIDEO_PROCESSOR_ITELECINE_CAPS =
7519 D3D11_VIDEO_PROCESSOR_ITELECINE_CAPS(128i32);
7520pub const D3D11_VIDEO_PROCESSOR_ITELECINE_CAPS_OTHER: D3D11_VIDEO_PROCESSOR_ITELECINE_CAPS =
7521 D3D11_VIDEO_PROCESSOR_ITELECINE_CAPS(-2147483648i32);
7522#[repr(transparent)]
7523#[derive(Clone, Copy, Debug, Default, Eq, PartialEq)]
7524pub struct D3D11_VIDEO_PROCESSOR_NOMINAL_RANGE(pub i32);
7525pub const D3D11_VIDEO_PROCESSOR_NOMINAL_RANGE_0_255: D3D11_VIDEO_PROCESSOR_NOMINAL_RANGE =
7526 D3D11_VIDEO_PROCESSOR_NOMINAL_RANGE(2i32);
7527pub const D3D11_VIDEO_PROCESSOR_NOMINAL_RANGE_16_235: D3D11_VIDEO_PROCESSOR_NOMINAL_RANGE =
7528 D3D11_VIDEO_PROCESSOR_NOMINAL_RANGE(1i32);
7529pub const D3D11_VIDEO_PROCESSOR_NOMINAL_RANGE_UNDEFINED: D3D11_VIDEO_PROCESSOR_NOMINAL_RANGE =
7530 D3D11_VIDEO_PROCESSOR_NOMINAL_RANGE(0i32);
7531#[repr(transparent)]
7532#[derive(Clone, Copy, Debug, Default, Eq, PartialEq)]
7533pub struct D3D11_VIDEO_PROCESSOR_OUTPUT_RATE(pub i32);
7534pub const D3D11_VIDEO_PROCESSOR_OUTPUT_RATE_CUSTOM: D3D11_VIDEO_PROCESSOR_OUTPUT_RATE =
7535 D3D11_VIDEO_PROCESSOR_OUTPUT_RATE(2i32);
7536pub const D3D11_VIDEO_PROCESSOR_OUTPUT_RATE_HALF: D3D11_VIDEO_PROCESSOR_OUTPUT_RATE =
7537 D3D11_VIDEO_PROCESSOR_OUTPUT_RATE(1i32);
7538pub const D3D11_VIDEO_PROCESSOR_OUTPUT_RATE_NORMAL: D3D11_VIDEO_PROCESSOR_OUTPUT_RATE =
7539 D3D11_VIDEO_PROCESSOR_OUTPUT_RATE(0i32);
7540#[repr(C)]
7541#[derive(Clone, Copy)]
7542pub struct D3D11_VIDEO_PROCESSOR_OUTPUT_VIEW_DESC {
7543 pub ViewDimension: D3D11_VPOV_DIMENSION,
7544 pub Anonymous: D3D11_VIDEO_PROCESSOR_OUTPUT_VIEW_DESC_0,
7545}
7546impl Default for D3D11_VIDEO_PROCESSOR_OUTPUT_VIEW_DESC {
7547 fn default() -> Self {
7548 unsafe { core::mem::zeroed() }
7549 }
7550}
7551#[repr(C)]
7552#[derive(Clone, Copy)]
7553pub union D3D11_VIDEO_PROCESSOR_OUTPUT_VIEW_DESC_0 {
7554 pub Texture2D: D3D11_TEX2D_VPOV,
7555 pub Texture2DArray: D3D11_TEX2D_ARRAY_VPOV,
7556}
7557impl Default for D3D11_VIDEO_PROCESSOR_OUTPUT_VIEW_DESC_0 {
7558 fn default() -> Self {
7559 unsafe { core::mem::zeroed() }
7560 }
7561}
7562#[repr(transparent)]
7563#[derive(Clone, Copy, Debug, Default, Eq, PartialEq)]
7564pub struct D3D11_VIDEO_PROCESSOR_PROCESSOR_CAPS(pub i32);
7565pub const D3D11_VIDEO_PROCESSOR_PROCESSOR_CAPS_DEINTERLACE_ADAPTIVE:
7566 D3D11_VIDEO_PROCESSOR_PROCESSOR_CAPS = D3D11_VIDEO_PROCESSOR_PROCESSOR_CAPS(4i32);
7567pub const D3D11_VIDEO_PROCESSOR_PROCESSOR_CAPS_DEINTERLACE_BLEND:
7568 D3D11_VIDEO_PROCESSOR_PROCESSOR_CAPS = D3D11_VIDEO_PROCESSOR_PROCESSOR_CAPS(1i32);
7569pub const D3D11_VIDEO_PROCESSOR_PROCESSOR_CAPS_DEINTERLACE_BOB:
7570 D3D11_VIDEO_PROCESSOR_PROCESSOR_CAPS = D3D11_VIDEO_PROCESSOR_PROCESSOR_CAPS(2i32);
7571pub const D3D11_VIDEO_PROCESSOR_PROCESSOR_CAPS_DEINTERLACE_MOTION_COMPENSATION:
7572 D3D11_VIDEO_PROCESSOR_PROCESSOR_CAPS = D3D11_VIDEO_PROCESSOR_PROCESSOR_CAPS(8i32);
7573pub const D3D11_VIDEO_PROCESSOR_PROCESSOR_CAPS_FRAME_RATE_CONVERSION:
7574 D3D11_VIDEO_PROCESSOR_PROCESSOR_CAPS = D3D11_VIDEO_PROCESSOR_PROCESSOR_CAPS(32i32);
7575pub const D3D11_VIDEO_PROCESSOR_PROCESSOR_CAPS_INVERSE_TELECINE:
7576 D3D11_VIDEO_PROCESSOR_PROCESSOR_CAPS = D3D11_VIDEO_PROCESSOR_PROCESSOR_CAPS(16i32);
7577#[repr(C)]
7578#[derive(Clone, Copy, Debug, PartialEq)]
7579pub struct D3D11_VIDEO_PROCESSOR_RATE_CONVERSION_CAPS {
7580 pub PastFrames: u32,
7581 pub FutureFrames: u32,
7582 pub ProcessorCaps: u32,
7583 pub ITelecineCaps: u32,
7584 pub CustomRateCount: u32,
7585}
7586impl Default for D3D11_VIDEO_PROCESSOR_RATE_CONVERSION_CAPS {
7587 fn default() -> Self {
7588 unsafe { core::mem::zeroed() }
7589 }
7590}
7591#[repr(transparent)]
7592#[derive(Clone, Copy, Debug, Default, Eq, PartialEq)]
7593pub struct D3D11_VIDEO_PROCESSOR_ROTATION(pub i32);
7594pub const D3D11_VIDEO_PROCESSOR_ROTATION_180: D3D11_VIDEO_PROCESSOR_ROTATION =
7595 D3D11_VIDEO_PROCESSOR_ROTATION(2i32);
7596pub const D3D11_VIDEO_PROCESSOR_ROTATION_270: D3D11_VIDEO_PROCESSOR_ROTATION =
7597 D3D11_VIDEO_PROCESSOR_ROTATION(3i32);
7598pub const D3D11_VIDEO_PROCESSOR_ROTATION_90: D3D11_VIDEO_PROCESSOR_ROTATION =
7599 D3D11_VIDEO_PROCESSOR_ROTATION(1i32);
7600pub const D3D11_VIDEO_PROCESSOR_ROTATION_IDENTITY: D3D11_VIDEO_PROCESSOR_ROTATION =
7601 D3D11_VIDEO_PROCESSOR_ROTATION(0i32);
7602#[repr(transparent)]
7603#[derive(Clone, Copy, Debug, Default, Eq, PartialEq)]
7604pub struct D3D11_VIDEO_PROCESSOR_STEREO_CAPS(pub i32);
7605pub const D3D11_VIDEO_PROCESSOR_STEREO_CAPS_CHECKERBOARD: D3D11_VIDEO_PROCESSOR_STEREO_CAPS =
7606 D3D11_VIDEO_PROCESSOR_STEREO_CAPS(8i32);
7607pub const D3D11_VIDEO_PROCESSOR_STEREO_CAPS_COLUMN_INTERLEAVED: D3D11_VIDEO_PROCESSOR_STEREO_CAPS =
7608 D3D11_VIDEO_PROCESSOR_STEREO_CAPS(4i32);
7609pub const D3D11_VIDEO_PROCESSOR_STEREO_CAPS_FLIP_MODE: D3D11_VIDEO_PROCESSOR_STEREO_CAPS =
7610 D3D11_VIDEO_PROCESSOR_STEREO_CAPS(16i32);
7611pub const D3D11_VIDEO_PROCESSOR_STEREO_CAPS_MONO_OFFSET: D3D11_VIDEO_PROCESSOR_STEREO_CAPS =
7612 D3D11_VIDEO_PROCESSOR_STEREO_CAPS(1i32);
7613pub const D3D11_VIDEO_PROCESSOR_STEREO_CAPS_ROW_INTERLEAVED: D3D11_VIDEO_PROCESSOR_STEREO_CAPS =
7614 D3D11_VIDEO_PROCESSOR_STEREO_CAPS(2i32);
7615pub const D3D11_VIDEO_PROCESSOR_STEREO_FLIP_FRAME0: D3D11_VIDEO_PROCESSOR_STEREO_FLIP_MODE =
7616 D3D11_VIDEO_PROCESSOR_STEREO_FLIP_MODE(1i32);
7617pub const D3D11_VIDEO_PROCESSOR_STEREO_FLIP_FRAME1: D3D11_VIDEO_PROCESSOR_STEREO_FLIP_MODE =
7618 D3D11_VIDEO_PROCESSOR_STEREO_FLIP_MODE(2i32);
7619#[repr(transparent)]
7620#[derive(Clone, Copy, Debug, Default, Eq, PartialEq)]
7621pub struct D3D11_VIDEO_PROCESSOR_STEREO_FLIP_MODE(pub i32);
7622pub const D3D11_VIDEO_PROCESSOR_STEREO_FLIP_NONE: D3D11_VIDEO_PROCESSOR_STEREO_FLIP_MODE =
7623 D3D11_VIDEO_PROCESSOR_STEREO_FLIP_MODE(0i32);
7624#[repr(transparent)]
7625#[derive(Clone, Copy, Debug, Default, Eq, PartialEq)]
7626pub struct D3D11_VIDEO_PROCESSOR_STEREO_FORMAT(pub i32);
7627pub const D3D11_VIDEO_PROCESSOR_STEREO_FORMAT_CHECKERBOARD: D3D11_VIDEO_PROCESSOR_STEREO_FORMAT =
7628 D3D11_VIDEO_PROCESSOR_STEREO_FORMAT(7i32);
7629pub const D3D11_VIDEO_PROCESSOR_STEREO_FORMAT_COLUMN_INTERLEAVED:
7630 D3D11_VIDEO_PROCESSOR_STEREO_FORMAT = D3D11_VIDEO_PROCESSOR_STEREO_FORMAT(6i32);
7631pub const D3D11_VIDEO_PROCESSOR_STEREO_FORMAT_HORIZONTAL: D3D11_VIDEO_PROCESSOR_STEREO_FORMAT =
7632 D3D11_VIDEO_PROCESSOR_STEREO_FORMAT(1i32);
7633pub const D3D11_VIDEO_PROCESSOR_STEREO_FORMAT_MONO: D3D11_VIDEO_PROCESSOR_STEREO_FORMAT =
7634 D3D11_VIDEO_PROCESSOR_STEREO_FORMAT(0i32);
7635pub const D3D11_VIDEO_PROCESSOR_STEREO_FORMAT_MONO_OFFSET: D3D11_VIDEO_PROCESSOR_STEREO_FORMAT =
7636 D3D11_VIDEO_PROCESSOR_STEREO_FORMAT(4i32);
7637pub const D3D11_VIDEO_PROCESSOR_STEREO_FORMAT_ROW_INTERLEAVED: D3D11_VIDEO_PROCESSOR_STEREO_FORMAT =
7638 D3D11_VIDEO_PROCESSOR_STEREO_FORMAT(5i32);
7639pub const D3D11_VIDEO_PROCESSOR_STEREO_FORMAT_SEPARATE: D3D11_VIDEO_PROCESSOR_STEREO_FORMAT =
7640 D3D11_VIDEO_PROCESSOR_STEREO_FORMAT(3i32);
7641pub const D3D11_VIDEO_PROCESSOR_STEREO_FORMAT_VERTICAL: D3D11_VIDEO_PROCESSOR_STEREO_FORMAT =
7642 D3D11_VIDEO_PROCESSOR_STEREO_FORMAT(2i32);
7643#[repr(C)]
7644#[derive(Clone, Debug, PartialEq)]
7645pub struct D3D11_VIDEO_PROCESSOR_STREAM {
7646 pub Enable: crate::Foundation::BOOL,
7647 pub OutputIndex: u32,
7648 pub InputFrameOrField: u32,
7649 pub PastFrames: u32,
7650 pub FutureFrames: u32,
7651 pub ppPastSurfaces: *mut Option<ID3D11VideoProcessorInputView>,
7652 pub pInputSurface: core::mem::ManuallyDrop<Option<ID3D11VideoProcessorInputView>>,
7653 pub ppFutureSurfaces: *mut Option<ID3D11VideoProcessorInputView>,
7654 pub ppPastSurfacesRight: *mut Option<ID3D11VideoProcessorInputView>,
7655 pub pInputSurfaceRight: core::mem::ManuallyDrop<Option<ID3D11VideoProcessorInputView>>,
7656 pub ppFutureSurfacesRight: *mut Option<ID3D11VideoProcessorInputView>,
7657}
7658impl Default for D3D11_VIDEO_PROCESSOR_STREAM {
7659 fn default() -> Self {
7660 unsafe { core::mem::zeroed() }
7661 }
7662}
7663#[repr(C)]
7664#[cfg(feature = "Win32_Graphics_Dxgi_Common")]
7665#[derive(Clone, Copy, Debug, PartialEq)]
7666pub struct D3D11_VIDEO_PROCESSOR_STREAM_BEHAVIOR_HINT {
7667 pub Enable: crate::Foundation::BOOL,
7668 pub Width: u32,
7669 pub Height: u32,
7670 pub Format: crate::Dxgi::Common::DXGI_FORMAT,
7671}
7672#[cfg(feature = "Win32_Graphics_Dxgi_Common")]
7673impl Default for D3D11_VIDEO_PROCESSOR_STREAM_BEHAVIOR_HINT {
7674 fn default() -> Self {
7675 unsafe { core::mem::zeroed() }
7676 }
7677}
7678#[repr(C)]
7679#[cfg(feature = "Win32_Graphics_Dxgi_Common")]
7680#[derive(Clone, Copy, Debug, PartialEq)]
7681pub struct D3D11_VIDEO_SAMPLE_DESC {
7682 pub Width: u32,
7683 pub Height: u32,
7684 pub Format: crate::Dxgi::Common::DXGI_FORMAT,
7685 pub ColorSpace: crate::Dxgi::Common::DXGI_COLOR_SPACE_TYPE,
7686}
7687#[cfg(feature = "Win32_Graphics_Dxgi_Common")]
7688impl Default for D3D11_VIDEO_SAMPLE_DESC {
7689 fn default() -> Self {
7690 unsafe { core::mem::zeroed() }
7691 }
7692}
7693#[repr(transparent)]
7694#[derive(Clone, Copy, Debug, Default, Eq, PartialEq)]
7695pub struct D3D11_VIDEO_USAGE(pub i32);
7696pub const D3D11_VIDEO_USAGE_OPTIMAL_QUALITY: D3D11_VIDEO_USAGE = D3D11_VIDEO_USAGE(2i32);
7697pub const D3D11_VIDEO_USAGE_OPTIMAL_SPEED: D3D11_VIDEO_USAGE = D3D11_VIDEO_USAGE(1i32);
7698pub const D3D11_VIDEO_USAGE_PLAYBACK_NORMAL: D3D11_VIDEO_USAGE = D3D11_VIDEO_USAGE(0i32);
7699#[repr(C)]
7700#[derive(Clone, Copy, Debug, PartialEq)]
7701pub struct D3D11_VIEWPORT {
7702 pub TopLeftX: f32,
7703 pub TopLeftY: f32,
7704 pub Width: f32,
7705 pub Height: f32,
7706 pub MinDepth: f32,
7707 pub MaxDepth: f32,
7708}
7709impl Default for D3D11_VIEWPORT {
7710 fn default() -> Self {
7711 unsafe { core::mem::zeroed() }
7712 }
7713}
7714pub const D3D11_VIEWPORT_AND_SCISSORRECT_MAX_INDEX: u32 = 15u32;
7715pub const D3D11_VIEWPORT_AND_SCISSORRECT_OBJECT_COUNT_PER_PIPELINE: u32 = 16u32;
7716pub const D3D11_VIEWPORT_BOUNDS_MAX: u32 = 32767u32;
7717pub const D3D11_VIEWPORT_BOUNDS_MIN: i32 = -32768i32;
7718#[repr(transparent)]
7719#[derive(Clone, Copy, Debug, Default, Eq, PartialEq)]
7720pub struct D3D11_VPIV_DIMENSION(pub i32);
7721pub const D3D11_VPIV_DIMENSION_TEXTURE2D: D3D11_VPIV_DIMENSION = D3D11_VPIV_DIMENSION(1i32);
7722pub const D3D11_VPIV_DIMENSION_UNKNOWN: D3D11_VPIV_DIMENSION = D3D11_VPIV_DIMENSION(0i32);
7723#[repr(transparent)]
7724#[derive(Clone, Copy, Debug, Default, Eq, PartialEq)]
7725pub struct D3D11_VPOV_DIMENSION(pub i32);
7726pub const D3D11_VPOV_DIMENSION_TEXTURE2D: D3D11_VPOV_DIMENSION = D3D11_VPOV_DIMENSION(1i32);
7727pub const D3D11_VPOV_DIMENSION_TEXTURE2DARRAY: D3D11_VPOV_DIMENSION = D3D11_VPOV_DIMENSION(2i32);
7728pub const D3D11_VPOV_DIMENSION_UNKNOWN: D3D11_VPOV_DIMENSION = D3D11_VPOV_DIMENSION(0i32);
7729pub const D3D11_VS_INPUT_REGISTER_COMPONENTS: u32 = 4u32;
7730pub const D3D11_VS_INPUT_REGISTER_COMPONENT_BIT_COUNT: u32 = 32u32;
7731pub const D3D11_VS_INPUT_REGISTER_COUNT: u32 = 32u32;
7732pub const D3D11_VS_INPUT_REGISTER_READS_PER_INST: u32 = 2u32;
7733pub const D3D11_VS_INPUT_REGISTER_READ_PORTS: u32 = 1u32;
7734pub const D3D11_VS_OUTPUT_REGISTER_COMPONENTS: u32 = 4u32;
7735pub const D3D11_VS_OUTPUT_REGISTER_COMPONENT_BIT_COUNT: u32 = 32u32;
7736pub const D3D11_VS_OUTPUT_REGISTER_COUNT: u32 = 32u32;
7737pub const D3D11_WHQL_CONTEXT_COUNT_FOR_RESOURCE_LIMIT: u32 = 10u32;
7738pub const D3D11_WHQL_DRAWINDEXED_INDEX_COUNT_2_TO_EXP: u32 = 25u32;
7739pub const D3D11_WHQL_DRAW_VERTEX_COUNT_2_TO_EXP: u32 = 25u32;
7740pub const D3DCSX_DLL: crate::core_supplemental::PCWSTR = crate::core_supplemental::w!("d3dcsx_47.dll");
7741pub const D3DCSX_DLL_A: crate::core_supplemental::PCSTR = crate::core_supplemental::s!("d3dcsx_47.dll");
7742pub const D3DCSX_DLL_W: crate::core_supplemental::PCWSTR = crate::core_supplemental::w!("d3dcsx_47.dll");
7743#[repr(C)]
7744#[derive(Clone, Copy, Debug, PartialEq)]
7745pub struct D3DX11_FFT_BUFFER_INFO {
7746 pub NumTempBufferSizes: u32,
7747 pub TempBufferFloatSizes: [u32; 4],
7748 pub NumPrecomputeBufferSizes: u32,
7749 pub PrecomputeBufferFloatSizes: [u32; 4],
7750}
7751impl Default for D3DX11_FFT_BUFFER_INFO {
7752 fn default() -> Self {
7753 unsafe { core::mem::zeroed() }
7754 }
7755}
7756#[repr(transparent)]
7757#[derive(Clone, Copy, Debug, Default, Eq, PartialEq)]
7758pub struct D3DX11_FFT_CREATE_FLAG(pub i32);
7759pub const D3DX11_FFT_CREATE_FLAG_NO_PRECOMPUTE_BUFFERS: D3DX11_FFT_CREATE_FLAG =
7760 D3DX11_FFT_CREATE_FLAG(1i32);
7761#[repr(transparent)]
7762#[derive(Clone, Copy, Debug, Default, Eq, PartialEq)]
7763pub struct D3DX11_FFT_DATA_TYPE(pub i32);
7764pub const D3DX11_FFT_DATA_TYPE_COMPLEX: D3DX11_FFT_DATA_TYPE = D3DX11_FFT_DATA_TYPE(1i32);
7765pub const D3DX11_FFT_DATA_TYPE_REAL: D3DX11_FFT_DATA_TYPE = D3DX11_FFT_DATA_TYPE(0i32);
7766#[repr(C)]
7767#[derive(Clone, Copy, Debug, PartialEq)]
7768pub struct D3DX11_FFT_DESC {
7769 pub NumDimensions: u32,
7770 pub ElementLengths: [u32; 32],
7771 pub DimensionMask: u32,
7772 pub Type: D3DX11_FFT_DATA_TYPE,
7773}
7774impl Default for D3DX11_FFT_DESC {
7775 fn default() -> Self {
7776 unsafe { core::mem::zeroed() }
7777 }
7778}
7779#[repr(transparent)]
7780#[derive(Clone, Copy, Debug, Default, Eq, PartialEq)]
7781pub struct D3DX11_FFT_DIM_MASK(pub i32);
7782pub const D3DX11_FFT_DIM_MASK_1D: D3DX11_FFT_DIM_MASK = D3DX11_FFT_DIM_MASK(1i32);
7783pub const D3DX11_FFT_DIM_MASK_2D: D3DX11_FFT_DIM_MASK = D3DX11_FFT_DIM_MASK(3i32);
7784pub const D3DX11_FFT_DIM_MASK_3D: D3DX11_FFT_DIM_MASK = D3DX11_FFT_DIM_MASK(7i32);
7785pub const D3DX11_FFT_MAX_DIMENSIONS: u32 = 32u32;
7786pub const D3DX11_FFT_MAX_PRECOMPUTE_BUFFERS: u32 = 4u32;
7787pub const D3DX11_FFT_MAX_TEMP_BUFFERS: u32 = 4u32;
7788#[repr(transparent)]
7789#[derive(Clone, Copy, Debug, Default, Eq, PartialEq)]
7790pub struct D3DX11_SCAN_DATA_TYPE(pub i32);
7791pub const D3DX11_SCAN_DATA_TYPE_FLOAT: D3DX11_SCAN_DATA_TYPE = D3DX11_SCAN_DATA_TYPE(1i32);
7792pub const D3DX11_SCAN_DATA_TYPE_INT: D3DX11_SCAN_DATA_TYPE = D3DX11_SCAN_DATA_TYPE(2i32);
7793pub const D3DX11_SCAN_DATA_TYPE_UINT: D3DX11_SCAN_DATA_TYPE = D3DX11_SCAN_DATA_TYPE(3i32);
7794#[repr(transparent)]
7795#[derive(Clone, Copy, Debug, Default, Eq, PartialEq)]
7796pub struct D3DX11_SCAN_DIRECTION(pub i32);
7797pub const D3DX11_SCAN_DIRECTION_BACKWARD: D3DX11_SCAN_DIRECTION = D3DX11_SCAN_DIRECTION(2i32);
7798pub const D3DX11_SCAN_DIRECTION_FORWARD: D3DX11_SCAN_DIRECTION = D3DX11_SCAN_DIRECTION(1i32);
7799#[repr(transparent)]
7800#[derive(Clone, Copy, Debug, Default, Eq, PartialEq)]
7801pub struct D3DX11_SCAN_OPCODE(pub i32);
7802pub const D3DX11_SCAN_OPCODE_ADD: D3DX11_SCAN_OPCODE = D3DX11_SCAN_OPCODE(1i32);
7803pub const D3DX11_SCAN_OPCODE_AND: D3DX11_SCAN_OPCODE = D3DX11_SCAN_OPCODE(5i32);
7804pub const D3DX11_SCAN_OPCODE_MAX: D3DX11_SCAN_OPCODE = D3DX11_SCAN_OPCODE(3i32);
7805pub const D3DX11_SCAN_OPCODE_MIN: D3DX11_SCAN_OPCODE = D3DX11_SCAN_OPCODE(2i32);
7806pub const D3DX11_SCAN_OPCODE_MUL: D3DX11_SCAN_OPCODE = D3DX11_SCAN_OPCODE(4i32);
7807pub const D3DX11_SCAN_OPCODE_OR: D3DX11_SCAN_OPCODE = D3DX11_SCAN_OPCODE(6i32);
7808pub const D3DX11_SCAN_OPCODE_XOR: D3DX11_SCAN_OPCODE = D3DX11_SCAN_OPCODE(7i32);
7809pub const D3D_RETURN_PARAMETER_INDEX: i32 = -1i32;
7810pub const D3D_SHADER_REQUIRES_11_1_DOUBLE_EXTENSIONS: u32 = 32u32;
7811pub const D3D_SHADER_REQUIRES_11_1_SHADER_EXTENSIONS: u32 = 64u32;
7812pub const D3D_SHADER_REQUIRES_64_UAVS: u32 = 8u32;
7813pub const D3D_SHADER_REQUIRES_DOUBLES: u32 = 1u32;
7814pub const D3D_SHADER_REQUIRES_EARLY_DEPTH_STENCIL: u32 = 2u32;
7815pub const D3D_SHADER_REQUIRES_LEVEL_9_COMPARISON_FILTERING: u32 = 128u32;
7816pub const D3D_SHADER_REQUIRES_MINIMUM_PRECISION: u32 = 16u32;
7817pub const D3D_SHADER_REQUIRES_TILED_RESOURCES: u32 = 256u32;
7818pub const D3D_SHADER_REQUIRES_UAVS_AT_EVERY_STAGE: u32 = 4u32;
7819pub const DXGI_DEBUG_D3D11: windows_core::GUID =
7820 windows_core::GUID::from_u128(0x4b99317b_ac39_4aa6_bb0b_baa04784798f);
7821windows_core::imp::define_interface!(
7822 ID3D11Asynchronous,
7823 ID3D11Asynchronous_Vtbl,
7824 0x4b35d0cd_1e15_4258_9c98_1b1333f6dd3b
7825);
7826impl core::ops::Deref for ID3D11Asynchronous {
7827 type Target = ID3D11DeviceChild;
7828 fn deref(&self) -> &Self::Target {
7829 unsafe { core::mem::transmute(self) }
7830 }
7831}
7832windows_core::imp::interface_hierarchy!(
7833 ID3D11Asynchronous,
7834 windows_core::IUnknown,
7835 ID3D11DeviceChild
7836);
7837impl ID3D11Asynchronous {
7838 pub unsafe fn GetDataSize(&self) -> u32 {
7839 unsafe {
7840 (windows_core::Interface::vtable(self).GetDataSize)(windows_core::Interface::as_raw(
7841 self,
7842 ))
7843 }
7844 }
7845}
7846#[repr(C)]
7847pub struct ID3D11Asynchronous_Vtbl {
7848 pub base__: ID3D11DeviceChild_Vtbl,
7849 pub GetDataSize: unsafe extern "system" fn(*mut core::ffi::c_void) -> u32,
7850}
7851pub trait ID3D11Asynchronous_Impl: ID3D11DeviceChild_Impl {
7852 fn GetDataSize(&self) -> u32;
7853}
7854impl ID3D11Asynchronous_Vtbl {
7855 pub const fn new<Identity: ID3D11Asynchronous_Impl, const OFFSET: isize>() -> Self {
7856 unsafe extern "system" fn GetDataSize<
7857 Identity: ID3D11Asynchronous_Impl,
7858 const OFFSET: isize,
7859 >(
7860 this: *mut core::ffi::c_void,
7861 ) -> u32 {
7862 unsafe {
7863 let this: &Identity =
7864 &*((this as *const *const ()).offset(OFFSET) as *const Identity);
7865 ID3D11Asynchronous_Impl::GetDataSize(this)
7866 }
7867 }
7868 Self {
7869 base__: ID3D11DeviceChild_Vtbl::new::<Identity, OFFSET>(),
7870 GetDataSize: GetDataSize::<Identity, OFFSET>,
7871 }
7872 }
7873 pub fn matches(iid: &windows_core::GUID) -> bool {
7874 iid == &<ID3D11Asynchronous as windows_core::Interface>::IID
7875 || iid == &<ID3D11DeviceChild as windows_core::Interface>::IID
7876 }
7877}
7878impl windows_core::RuntimeName for ID3D11Asynchronous {}
7879unsafe impl Send for ID3D11Asynchronous {}
7880unsafe impl Sync for ID3D11Asynchronous {}
7881windows_core::imp::define_interface!(
7882 ID3D11AuthenticatedChannel,
7883 ID3D11AuthenticatedChannel_Vtbl,
7884 0x3015a308_dcbd_47aa_a747_192486d14d4a
7885);
7886impl core::ops::Deref for ID3D11AuthenticatedChannel {
7887 type Target = ID3D11DeviceChild;
7888 fn deref(&self) -> &Self::Target {
7889 unsafe { core::mem::transmute(self) }
7890 }
7891}
7892windows_core::imp::interface_hierarchy!(
7893 ID3D11AuthenticatedChannel,
7894 windows_core::IUnknown,
7895 ID3D11DeviceChild
7896);
7897impl ID3D11AuthenticatedChannel {
7898 pub unsafe fn GetCertificateSize(&self) -> windows_core::Result<u32> {
7899 unsafe {
7900 let mut result__ = core::mem::zeroed();
7901 (windows_core::Interface::vtable(self).GetCertificateSize)(
7902 windows_core::Interface::as_raw(self),
7903 &mut result__,
7904 )
7905 .map(|| result__)
7906 }
7907 }
7908 pub unsafe fn GetCertificate(&self, pcertificate: &mut [u8]) -> windows_core::Result<()> {
7909 unsafe {
7910 (windows_core::Interface::vtable(self).GetCertificate)(
7911 windows_core::Interface::as_raw(self),
7912 pcertificate.len().try_into().unwrap(),
7913 core::mem::transmute(pcertificate.as_ptr()),
7914 )
7915 .ok()
7916 }
7917 }
7918 pub unsafe fn GetChannelHandle(&self) -> crate::Foundation::HANDLE {
7919 unsafe {
7920 let mut result__ = core::mem::zeroed();
7921 (windows_core::Interface::vtable(self).GetChannelHandle)(
7922 windows_core::Interface::as_raw(self),
7923 &mut result__,
7924 );
7925 result__
7926 }
7927 }
7928}
7929#[repr(C)]
7930pub struct ID3D11AuthenticatedChannel_Vtbl {
7931 pub base__: ID3D11DeviceChild_Vtbl,
7932 pub GetCertificateSize:
7933 unsafe extern "system" fn(*mut core::ffi::c_void, *mut u32) -> windows_core::HRESULT,
7934 pub GetCertificate:
7935 unsafe extern "system" fn(*mut core::ffi::c_void, u32, *mut u8) -> windows_core::HRESULT,
7936 pub GetChannelHandle:
7937 unsafe extern "system" fn(*mut core::ffi::c_void, *mut crate::Foundation::HANDLE),
7938}
7939pub trait ID3D11AuthenticatedChannel_Impl: ID3D11DeviceChild_Impl {
7940 fn GetCertificateSize(&self) -> windows_core::Result<u32>;
7941 fn GetCertificate(
7942 &self,
7943 certificatesize: u32,
7944 pcertificate: *mut u8,
7945 ) -> windows_core::Result<()>;
7946 fn GetChannelHandle(&self, pchannelhandle: *mut crate::Foundation::HANDLE);
7947}
7948impl ID3D11AuthenticatedChannel_Vtbl {
7949 pub const fn new<Identity: ID3D11AuthenticatedChannel_Impl, const OFFSET: isize>() -> Self {
7950 unsafe extern "system" fn GetCertificateSize<
7951 Identity: ID3D11AuthenticatedChannel_Impl,
7952 const OFFSET: isize,
7953 >(
7954 this: *mut core::ffi::c_void,
7955 pcertificatesize: *mut u32,
7956 ) -> windows_core::HRESULT {
7957 unsafe {
7958 let this: &Identity =
7959 &*((this as *const *const ()).offset(OFFSET) as *const Identity);
7960 match ID3D11AuthenticatedChannel_Impl::GetCertificateSize(this) {
7961 Ok(ok__) => {
7962 pcertificatesize.write(core::mem::transmute(ok__));
7963 windows_core::HRESULT(0)
7964 }
7965 Err(err) => err.into(),
7966 }
7967 }
7968 }
7969 unsafe extern "system" fn GetCertificate<
7970 Identity: ID3D11AuthenticatedChannel_Impl,
7971 const OFFSET: isize,
7972 >(
7973 this: *mut core::ffi::c_void,
7974 certificatesize: u32,
7975 pcertificate: *mut u8,
7976 ) -> windows_core::HRESULT {
7977 unsafe {
7978 let this: &Identity =
7979 &*((this as *const *const ()).offset(OFFSET) as *const Identity);
7980 ID3D11AuthenticatedChannel_Impl::GetCertificate(
7981 this,
7982 core::mem::transmute_copy(&certificatesize),
7983 core::mem::transmute_copy(&pcertificate),
7984 )
7985 .into()
7986 }
7987 }
7988 unsafe extern "system" fn GetChannelHandle<
7989 Identity: ID3D11AuthenticatedChannel_Impl,
7990 const OFFSET: isize,
7991 >(
7992 this: *mut core::ffi::c_void,
7993 pchannelhandle: *mut crate::Foundation::HANDLE,
7994 ) {
7995 unsafe {
7996 let this: &Identity =
7997 &*((this as *const *const ()).offset(OFFSET) as *const Identity);
7998 ID3D11AuthenticatedChannel_Impl::GetChannelHandle(
7999 this,
8000 core::mem::transmute_copy(&pchannelhandle),
8001 )
8002 }
8003 }
8004 Self {
8005 base__: ID3D11DeviceChild_Vtbl::new::<Identity, OFFSET>(),
8006 GetCertificateSize: GetCertificateSize::<Identity, OFFSET>,
8007 GetCertificate: GetCertificate::<Identity, OFFSET>,
8008 GetChannelHandle: GetChannelHandle::<Identity, OFFSET>,
8009 }
8010 }
8011 pub fn matches(iid: &windows_core::GUID) -> bool {
8012 iid == &<ID3D11AuthenticatedChannel as windows_core::Interface>::IID
8013 || iid == &<ID3D11DeviceChild as windows_core::Interface>::IID
8014 }
8015}
8016impl windows_core::RuntimeName for ID3D11AuthenticatedChannel {}
8017unsafe impl Send for ID3D11AuthenticatedChannel {}
8018unsafe impl Sync for ID3D11AuthenticatedChannel {}
8019windows_core::imp::define_interface!(
8020 ID3D11BlendState,
8021 ID3D11BlendState_Vtbl,
8022 0x75b68faa_347d_4159_8f45_a0640f01cd9a
8023);
8024impl core::ops::Deref for ID3D11BlendState {
8025 type Target = ID3D11DeviceChild;
8026 fn deref(&self) -> &Self::Target {
8027 unsafe { core::mem::transmute(self) }
8028 }
8029}
8030windows_core::imp::interface_hierarchy!(
8031 ID3D11BlendState,
8032 windows_core::IUnknown,
8033 ID3D11DeviceChild
8034);
8035impl ID3D11BlendState {
8036 pub unsafe fn GetDesc(&self, pdesc: *mut D3D11_BLEND_DESC) {
8037 unsafe {
8038 (windows_core::Interface::vtable(self).GetDesc)(
8039 windows_core::Interface::as_raw(self),
8040 core::mem::transmute(pdesc),
8041 )
8042 }
8043 }
8044}
8045#[repr(C)]
8046pub struct ID3D11BlendState_Vtbl {
8047 pub base__: ID3D11DeviceChild_Vtbl,
8048 pub GetDesc: unsafe extern "system" fn(*mut core::ffi::c_void, *mut D3D11_BLEND_DESC),
8049}
8050pub trait ID3D11BlendState_Impl: ID3D11DeviceChild_Impl {
8051 fn GetDesc(&self, pdesc: *mut D3D11_BLEND_DESC);
8052}
8053impl ID3D11BlendState_Vtbl {
8054 pub const fn new<Identity: ID3D11BlendState_Impl, const OFFSET: isize>() -> Self {
8055 unsafe extern "system" fn GetDesc<Identity: ID3D11BlendState_Impl, const OFFSET: isize>(
8056 this: *mut core::ffi::c_void,
8057 pdesc: *mut D3D11_BLEND_DESC,
8058 ) {
8059 unsafe {
8060 let this: &Identity =
8061 &*((this as *const *const ()).offset(OFFSET) as *const Identity);
8062 ID3D11BlendState_Impl::GetDesc(this, core::mem::transmute_copy(&pdesc))
8063 }
8064 }
8065 Self {
8066 base__: ID3D11DeviceChild_Vtbl::new::<Identity, OFFSET>(),
8067 GetDesc: GetDesc::<Identity, OFFSET>,
8068 }
8069 }
8070 pub fn matches(iid: &windows_core::GUID) -> bool {
8071 iid == &<ID3D11BlendState as windows_core::Interface>::IID
8072 || iid == &<ID3D11DeviceChild as windows_core::Interface>::IID
8073 }
8074}
8075impl windows_core::RuntimeName for ID3D11BlendState {}
8076unsafe impl Send for ID3D11BlendState {}
8077unsafe impl Sync for ID3D11BlendState {}
8078windows_core::imp::define_interface!(
8079 ID3D11BlendState1,
8080 ID3D11BlendState1_Vtbl,
8081 0xcc86fabe_da55_401d_85e7_e3c9de2877e9
8082);
8083impl core::ops::Deref for ID3D11BlendState1 {
8084 type Target = ID3D11BlendState;
8085 fn deref(&self) -> &Self::Target {
8086 unsafe { core::mem::transmute(self) }
8087 }
8088}
8089windows_core::imp::interface_hierarchy!(
8090 ID3D11BlendState1,
8091 windows_core::IUnknown,
8092 ID3D11DeviceChild,
8093 ID3D11BlendState
8094);
8095impl ID3D11BlendState1 {
8096 pub unsafe fn GetDesc1(&self, pdesc: *mut D3D11_BLEND_DESC1) {
8097 unsafe {
8098 (windows_core::Interface::vtable(self).GetDesc1)(
8099 windows_core::Interface::as_raw(self),
8100 core::mem::transmute(pdesc),
8101 )
8102 }
8103 }
8104}
8105#[repr(C)]
8106pub struct ID3D11BlendState1_Vtbl {
8107 pub base__: ID3D11BlendState_Vtbl,
8108 pub GetDesc1: unsafe extern "system" fn(*mut core::ffi::c_void, *mut D3D11_BLEND_DESC1),
8109}
8110pub trait ID3D11BlendState1_Impl: ID3D11BlendState_Impl {
8111 fn GetDesc1(&self, pdesc: *mut D3D11_BLEND_DESC1);
8112}
8113impl ID3D11BlendState1_Vtbl {
8114 pub const fn new<Identity: ID3D11BlendState1_Impl, const OFFSET: isize>() -> Self {
8115 unsafe extern "system" fn GetDesc1<
8116 Identity: ID3D11BlendState1_Impl,
8117 const OFFSET: isize,
8118 >(
8119 this: *mut core::ffi::c_void,
8120 pdesc: *mut D3D11_BLEND_DESC1,
8121 ) {
8122 unsafe {
8123 let this: &Identity =
8124 &*((this as *const *const ()).offset(OFFSET) as *const Identity);
8125 ID3D11BlendState1_Impl::GetDesc1(this, core::mem::transmute_copy(&pdesc))
8126 }
8127 }
8128 Self {
8129 base__: ID3D11BlendState_Vtbl::new::<Identity, OFFSET>(),
8130 GetDesc1: GetDesc1::<Identity, OFFSET>,
8131 }
8132 }
8133 pub fn matches(iid: &windows_core::GUID) -> bool {
8134 iid == &<ID3D11BlendState1 as windows_core::Interface>::IID
8135 || iid == &<ID3D11DeviceChild as windows_core::Interface>::IID
8136 || iid == &<ID3D11BlendState as windows_core::Interface>::IID
8137 }
8138}
8139impl windows_core::RuntimeName for ID3D11BlendState1 {}
8140unsafe impl Send for ID3D11BlendState1 {}
8141unsafe impl Sync for ID3D11BlendState1 {}
8142windows_core::imp::define_interface!(
8143 ID3D11Buffer,
8144 ID3D11Buffer_Vtbl,
8145 0x48570b85_d1ee_4fcd_a250_eb350722b037
8146);
8147impl core::ops::Deref for ID3D11Buffer {
8148 type Target = ID3D11Resource;
8149 fn deref(&self) -> &Self::Target {
8150 unsafe { core::mem::transmute(self) }
8151 }
8152}
8153windows_core::imp::interface_hierarchy!(
8154 ID3D11Buffer,
8155 windows_core::IUnknown,
8156 ID3D11DeviceChild,
8157 ID3D11Resource
8158);
8159impl ID3D11Buffer {
8160 pub unsafe fn GetDesc(&self, pdesc: *mut D3D11_BUFFER_DESC) {
8161 unsafe {
8162 (windows_core::Interface::vtable(self).GetDesc)(
8163 windows_core::Interface::as_raw(self),
8164 core::mem::transmute(pdesc),
8165 )
8166 }
8167 }
8168}
8169#[repr(C)]
8170pub struct ID3D11Buffer_Vtbl {
8171 pub base__: ID3D11Resource_Vtbl,
8172 pub GetDesc: unsafe extern "system" fn(*mut core::ffi::c_void, *mut D3D11_BUFFER_DESC),
8173}
8174pub trait ID3D11Buffer_Impl: ID3D11Resource_Impl {
8175 fn GetDesc(&self, pdesc: *mut D3D11_BUFFER_DESC);
8176}
8177impl ID3D11Buffer_Vtbl {
8178 pub const fn new<Identity: ID3D11Buffer_Impl, const OFFSET: isize>() -> Self {
8179 unsafe extern "system" fn GetDesc<Identity: ID3D11Buffer_Impl, const OFFSET: isize>(
8180 this: *mut core::ffi::c_void,
8181 pdesc: *mut D3D11_BUFFER_DESC,
8182 ) {
8183 unsafe {
8184 let this: &Identity =
8185 &*((this as *const *const ()).offset(OFFSET) as *const Identity);
8186 ID3D11Buffer_Impl::GetDesc(this, core::mem::transmute_copy(&pdesc))
8187 }
8188 }
8189 Self {
8190 base__: ID3D11Resource_Vtbl::new::<Identity, OFFSET>(),
8191 GetDesc: GetDesc::<Identity, OFFSET>,
8192 }
8193 }
8194 pub fn matches(iid: &windows_core::GUID) -> bool {
8195 iid == &<ID3D11Buffer as windows_core::Interface>::IID
8196 || iid == &<ID3D11DeviceChild as windows_core::Interface>::IID
8197 || iid == &<ID3D11Resource as windows_core::Interface>::IID
8198 }
8199}
8200impl windows_core::RuntimeName for ID3D11Buffer {}
8201unsafe impl Send for ID3D11Buffer {}
8202unsafe impl Sync for ID3D11Buffer {}
8203windows_core::imp::define_interface!(
8204 ID3D11ClassInstance,
8205 ID3D11ClassInstance_Vtbl,
8206 0xa6cd7faa_b0b7_4a2f_9436_8662a65797cb
8207);
8208impl core::ops::Deref for ID3D11ClassInstance {
8209 type Target = ID3D11DeviceChild;
8210 fn deref(&self) -> &Self::Target {
8211 unsafe { core::mem::transmute(self) }
8212 }
8213}
8214windows_core::imp::interface_hierarchy!(
8215 ID3D11ClassInstance,
8216 windows_core::IUnknown,
8217 ID3D11DeviceChild
8218);
8219impl ID3D11ClassInstance {
8220 pub unsafe fn GetClassLinkage(&self) -> windows_core::Result<ID3D11ClassLinkage> {
8221 unsafe {
8222 let mut result__ = core::mem::zeroed();
8223 (windows_core::Interface::vtable(self).GetClassLinkage)(
8224 windows_core::Interface::as_raw(self),
8225 &mut result__,
8226 );
8227 windows_core::Type::from_abi(result__)
8228 }
8229 }
8230 pub unsafe fn GetDesc(&self, pdesc: *mut D3D11_CLASS_INSTANCE_DESC) {
8231 unsafe {
8232 (windows_core::Interface::vtable(self).GetDesc)(
8233 windows_core::Interface::as_raw(self),
8234 core::mem::transmute(pdesc),
8235 )
8236 }
8237 }
8238 pub unsafe fn GetInstanceName(
8239 &self,
8240 pinstancename: Option<crate::core_supplemental::PSTR>,
8241 pbufferlength: *mut usize,
8242 ) {
8243 unsafe {
8244 (windows_core::Interface::vtable(self).GetInstanceName)(
8245 windows_core::Interface::as_raw(self),
8246 core::mem::transmute(pinstancename.unwrap_or(core::mem::zeroed())),
8247 core::mem::transmute(pbufferlength),
8248 )
8249 }
8250 }
8251 pub unsafe fn GetTypeName(
8252 &self,
8253 ptypename: Option<crate::core_supplemental::PSTR>,
8254 pbufferlength: *mut usize,
8255 ) {
8256 unsafe {
8257 (windows_core::Interface::vtable(self).GetTypeName)(
8258 windows_core::Interface::as_raw(self),
8259 core::mem::transmute(ptypename.unwrap_or(core::mem::zeroed())),
8260 core::mem::transmute(pbufferlength),
8261 )
8262 }
8263 }
8264}
8265#[repr(C)]
8266pub struct ID3D11ClassInstance_Vtbl {
8267 pub base__: ID3D11DeviceChild_Vtbl,
8268 pub GetClassLinkage:
8269 unsafe extern "system" fn(*mut core::ffi::c_void, *mut *mut core::ffi::c_void),
8270 pub GetDesc: unsafe extern "system" fn(*mut core::ffi::c_void, *mut D3D11_CLASS_INSTANCE_DESC),
8271 pub GetInstanceName:
8272 unsafe extern "system" fn(*mut core::ffi::c_void, crate::core_supplemental::PSTR, *mut usize),
8273 pub GetTypeName:
8274 unsafe extern "system" fn(*mut core::ffi::c_void, crate::core_supplemental::PSTR, *mut usize),
8275}
8276pub trait ID3D11ClassInstance_Impl: ID3D11DeviceChild_Impl {
8277 fn GetClassLinkage(&self, pplinkage: windows_core::OutRef<'_, ID3D11ClassLinkage>);
8278 fn GetDesc(&self, pdesc: *mut D3D11_CLASS_INSTANCE_DESC);
8279 fn GetInstanceName(&self, pinstancename: crate::core_supplemental::PSTR, pbufferlength: *mut usize);
8280 fn GetTypeName(&self, ptypename: crate::core_supplemental::PSTR, pbufferlength: *mut usize);
8281}
8282impl ID3D11ClassInstance_Vtbl {
8283 pub const fn new<Identity: ID3D11ClassInstance_Impl, const OFFSET: isize>() -> Self {
8284 unsafe extern "system" fn GetClassLinkage<
8285 Identity: ID3D11ClassInstance_Impl,
8286 const OFFSET: isize,
8287 >(
8288 this: *mut core::ffi::c_void,
8289 pplinkage: *mut *mut core::ffi::c_void,
8290 ) {
8291 unsafe {
8292 let this: &Identity =
8293 &*((this as *const *const ()).offset(OFFSET) as *const Identity);
8294 ID3D11ClassInstance_Impl::GetClassLinkage(
8295 this,
8296 core::mem::transmute_copy(&pplinkage),
8297 )
8298 }
8299 }
8300 unsafe extern "system" fn GetDesc<
8301 Identity: ID3D11ClassInstance_Impl,
8302 const OFFSET: isize,
8303 >(
8304 this: *mut core::ffi::c_void,
8305 pdesc: *mut D3D11_CLASS_INSTANCE_DESC,
8306 ) {
8307 unsafe {
8308 let this: &Identity =
8309 &*((this as *const *const ()).offset(OFFSET) as *const Identity);
8310 ID3D11ClassInstance_Impl::GetDesc(this, core::mem::transmute_copy(&pdesc))
8311 }
8312 }
8313 unsafe extern "system" fn GetInstanceName<
8314 Identity: ID3D11ClassInstance_Impl,
8315 const OFFSET: isize,
8316 >(
8317 this: *mut core::ffi::c_void,
8318 pinstancename: crate::core_supplemental::PSTR,
8319 pbufferlength: *mut usize,
8320 ) {
8321 unsafe {
8322 let this: &Identity =
8323 &*((this as *const *const ()).offset(OFFSET) as *const Identity);
8324 ID3D11ClassInstance_Impl::GetInstanceName(
8325 this,
8326 core::mem::transmute_copy(&pinstancename),
8327 core::mem::transmute_copy(&pbufferlength),
8328 )
8329 }
8330 }
8331 unsafe extern "system" fn GetTypeName<
8332 Identity: ID3D11ClassInstance_Impl,
8333 const OFFSET: isize,
8334 >(
8335 this: *mut core::ffi::c_void,
8336 ptypename: crate::core_supplemental::PSTR,
8337 pbufferlength: *mut usize,
8338 ) {
8339 unsafe {
8340 let this: &Identity =
8341 &*((this as *const *const ()).offset(OFFSET) as *const Identity);
8342 ID3D11ClassInstance_Impl::GetTypeName(
8343 this,
8344 core::mem::transmute_copy(&ptypename),
8345 core::mem::transmute_copy(&pbufferlength),
8346 )
8347 }
8348 }
8349 Self {
8350 base__: ID3D11DeviceChild_Vtbl::new::<Identity, OFFSET>(),
8351 GetClassLinkage: GetClassLinkage::<Identity, OFFSET>,
8352 GetDesc: GetDesc::<Identity, OFFSET>,
8353 GetInstanceName: GetInstanceName::<Identity, OFFSET>,
8354 GetTypeName: GetTypeName::<Identity, OFFSET>,
8355 }
8356 }
8357 pub fn matches(iid: &windows_core::GUID) -> bool {
8358 iid == &<ID3D11ClassInstance as windows_core::Interface>::IID
8359 || iid == &<ID3D11DeviceChild as windows_core::Interface>::IID
8360 }
8361}
8362impl windows_core::RuntimeName for ID3D11ClassInstance {}
8363unsafe impl Send for ID3D11ClassInstance {}
8364unsafe impl Sync for ID3D11ClassInstance {}
8365windows_core::imp::define_interface!(
8366 ID3D11ClassLinkage,
8367 ID3D11ClassLinkage_Vtbl,
8368 0xddf57cba_9543_46e4_a12b_f207a0fe7fed
8369);
8370impl core::ops::Deref for ID3D11ClassLinkage {
8371 type Target = ID3D11DeviceChild;
8372 fn deref(&self) -> &Self::Target {
8373 unsafe { core::mem::transmute(self) }
8374 }
8375}
8376windows_core::imp::interface_hierarchy!(
8377 ID3D11ClassLinkage,
8378 windows_core::IUnknown,
8379 ID3D11DeviceChild
8380);
8381impl ID3D11ClassLinkage {
8382 pub unsafe fn GetClassInstance<P0>(
8383 &self,
8384 pclassinstancename: P0,
8385 instanceindex: u32,
8386 ) -> windows_core::Result<ID3D11ClassInstance>
8387 where
8388 P0: windows_core::Param<crate::core_supplemental::PCSTR>,
8389 {
8390 unsafe {
8391 let mut result__ = core::mem::zeroed();
8392 (windows_core::Interface::vtable(self).GetClassInstance)(
8393 windows_core::Interface::as_raw(self),
8394 pclassinstancename.param().abi(),
8395 instanceindex,
8396 &mut result__,
8397 )
8398 .and_then(|| windows_core::Type::from_abi(result__))
8399 }
8400 }
8401 pub unsafe fn CreateClassInstance<P0>(
8402 &self,
8403 pclasstypename: P0,
8404 constantbufferoffset: u32,
8405 constantvectoroffset: u32,
8406 textureoffset: u32,
8407 sampleroffset: u32,
8408 ) -> windows_core::Result<ID3D11ClassInstance>
8409 where
8410 P0: windows_core::Param<crate::core_supplemental::PCSTR>,
8411 {
8412 unsafe {
8413 let mut result__ = core::mem::zeroed();
8414 (windows_core::Interface::vtable(self).CreateClassInstance)(
8415 windows_core::Interface::as_raw(self),
8416 pclasstypename.param().abi(),
8417 constantbufferoffset,
8418 constantvectoroffset,
8419 textureoffset,
8420 sampleroffset,
8421 &mut result__,
8422 )
8423 .and_then(|| windows_core::Type::from_abi(result__))
8424 }
8425 }
8426}
8427#[repr(C)]
8428pub struct ID3D11ClassLinkage_Vtbl {
8429 pub base__: ID3D11DeviceChild_Vtbl,
8430 pub GetClassInstance: unsafe extern "system" fn(
8431 *mut core::ffi::c_void,
8432 crate::core_supplemental::PCSTR,
8433 u32,
8434 *mut *mut core::ffi::c_void,
8435 ) -> windows_core::HRESULT,
8436 pub CreateClassInstance: unsafe extern "system" fn(
8437 *mut core::ffi::c_void,
8438 crate::core_supplemental::PCSTR,
8439 u32,
8440 u32,
8441 u32,
8442 u32,
8443 *mut *mut core::ffi::c_void,
8444 ) -> windows_core::HRESULT,
8445}
8446pub trait ID3D11ClassLinkage_Impl: ID3D11DeviceChild_Impl {
8447 fn GetClassInstance(
8448 &self,
8449 pclassinstancename: &crate::core_supplemental::PCSTR,
8450 instanceindex: u32,
8451 ) -> windows_core::Result<ID3D11ClassInstance>;
8452 fn CreateClassInstance(
8453 &self,
8454 pclasstypename: &crate::core_supplemental::PCSTR,
8455 constantbufferoffset: u32,
8456 constantvectoroffset: u32,
8457 textureoffset: u32,
8458 sampleroffset: u32,
8459 ) -> windows_core::Result<ID3D11ClassInstance>;
8460}
8461impl ID3D11ClassLinkage_Vtbl {
8462 pub const fn new<Identity: ID3D11ClassLinkage_Impl, const OFFSET: isize>() -> Self {
8463 unsafe extern "system" fn GetClassInstance<
8464 Identity: ID3D11ClassLinkage_Impl,
8465 const OFFSET: isize,
8466 >(
8467 this: *mut core::ffi::c_void,
8468 pclassinstancename: crate::core_supplemental::PCSTR,
8469 instanceindex: u32,
8470 ppinstance: *mut *mut core::ffi::c_void,
8471 ) -> windows_core::HRESULT {
8472 unsafe {
8473 let this: &Identity =
8474 &*((this as *const *const ()).offset(OFFSET) as *const Identity);
8475 match ID3D11ClassLinkage_Impl::GetClassInstance(
8476 this,
8477 core::mem::transmute(&pclassinstancename),
8478 core::mem::transmute_copy(&instanceindex),
8479 ) {
8480 Ok(ok__) => {
8481 ppinstance.write(core::mem::transmute(ok__));
8482 windows_core::HRESULT(0)
8483 }
8484 Err(err) => err.into(),
8485 }
8486 }
8487 }
8488 unsafe extern "system" fn CreateClassInstance<
8489 Identity: ID3D11ClassLinkage_Impl,
8490 const OFFSET: isize,
8491 >(
8492 this: *mut core::ffi::c_void,
8493 pclasstypename: crate::core_supplemental::PCSTR,
8494 constantbufferoffset: u32,
8495 constantvectoroffset: u32,
8496 textureoffset: u32,
8497 sampleroffset: u32,
8498 ppinstance: *mut *mut core::ffi::c_void,
8499 ) -> windows_core::HRESULT {
8500 unsafe {
8501 let this: &Identity =
8502 &*((this as *const *const ()).offset(OFFSET) as *const Identity);
8503 match ID3D11ClassLinkage_Impl::CreateClassInstance(
8504 this,
8505 core::mem::transmute(&pclasstypename),
8506 core::mem::transmute_copy(&constantbufferoffset),
8507 core::mem::transmute_copy(&constantvectoroffset),
8508 core::mem::transmute_copy(&textureoffset),
8509 core::mem::transmute_copy(&sampleroffset),
8510 ) {
8511 Ok(ok__) => {
8512 ppinstance.write(core::mem::transmute(ok__));
8513 windows_core::HRESULT(0)
8514 }
8515 Err(err) => err.into(),
8516 }
8517 }
8518 }
8519 Self {
8520 base__: ID3D11DeviceChild_Vtbl::new::<Identity, OFFSET>(),
8521 GetClassInstance: GetClassInstance::<Identity, OFFSET>,
8522 CreateClassInstance: CreateClassInstance::<Identity, OFFSET>,
8523 }
8524 }
8525 pub fn matches(iid: &windows_core::GUID) -> bool {
8526 iid == &<ID3D11ClassLinkage as windows_core::Interface>::IID
8527 || iid == &<ID3D11DeviceChild as windows_core::Interface>::IID
8528 }
8529}
8530impl windows_core::RuntimeName for ID3D11ClassLinkage {}
8531unsafe impl Send for ID3D11ClassLinkage {}
8532unsafe impl Sync for ID3D11ClassLinkage {}
8533windows_core::imp::define_interface!(
8534 ID3D11CommandList,
8535 ID3D11CommandList_Vtbl,
8536 0xa24bc4d1_769e_43f7_8013_98ff566c18e2
8537);
8538impl core::ops::Deref for ID3D11CommandList {
8539 type Target = ID3D11DeviceChild;
8540 fn deref(&self) -> &Self::Target {
8541 unsafe { core::mem::transmute(self) }
8542 }
8543}
8544windows_core::imp::interface_hierarchy!(
8545 ID3D11CommandList,
8546 windows_core::IUnknown,
8547 ID3D11DeviceChild
8548);
8549impl ID3D11CommandList {
8550 pub unsafe fn GetContextFlags(&self) -> u32 {
8551 unsafe {
8552 (windows_core::Interface::vtable(self).GetContextFlags)(
8553 windows_core::Interface::as_raw(self),
8554 )
8555 }
8556 }
8557}
8558#[repr(C)]
8559pub struct ID3D11CommandList_Vtbl {
8560 pub base__: ID3D11DeviceChild_Vtbl,
8561 pub GetContextFlags: unsafe extern "system" fn(*mut core::ffi::c_void) -> u32,
8562}
8563pub trait ID3D11CommandList_Impl: ID3D11DeviceChild_Impl {
8564 fn GetContextFlags(&self) -> u32;
8565}
8566impl ID3D11CommandList_Vtbl {
8567 pub const fn new<Identity: ID3D11CommandList_Impl, const OFFSET: isize>() -> Self {
8568 unsafe extern "system" fn GetContextFlags<
8569 Identity: ID3D11CommandList_Impl,
8570 const OFFSET: isize,
8571 >(
8572 this: *mut core::ffi::c_void,
8573 ) -> u32 {
8574 unsafe {
8575 let this: &Identity =
8576 &*((this as *const *const ()).offset(OFFSET) as *const Identity);
8577 ID3D11CommandList_Impl::GetContextFlags(this)
8578 }
8579 }
8580 Self {
8581 base__: ID3D11DeviceChild_Vtbl::new::<Identity, OFFSET>(),
8582 GetContextFlags: GetContextFlags::<Identity, OFFSET>,
8583 }
8584 }
8585 pub fn matches(iid: &windows_core::GUID) -> bool {
8586 iid == &<ID3D11CommandList as windows_core::Interface>::IID
8587 || iid == &<ID3D11DeviceChild as windows_core::Interface>::IID
8588 }
8589}
8590impl windows_core::RuntimeName for ID3D11CommandList {}
8591unsafe impl Send for ID3D11CommandList {}
8592unsafe impl Sync for ID3D11CommandList {}
8593windows_core::imp::define_interface!(
8594 ID3D11ComputeShader,
8595 ID3D11ComputeShader_Vtbl,
8596 0x4f5b196e_c2bd_495e_bd01_1fded38e4969
8597);
8598impl core::ops::Deref for ID3D11ComputeShader {
8599 type Target = ID3D11DeviceChild;
8600 fn deref(&self) -> &Self::Target {
8601 unsafe { core::mem::transmute(self) }
8602 }
8603}
8604windows_core::imp::interface_hierarchy!(
8605 ID3D11ComputeShader,
8606 windows_core::IUnknown,
8607 ID3D11DeviceChild
8608);
8609#[repr(C)]
8610pub struct ID3D11ComputeShader_Vtbl {
8611 pub base__: ID3D11DeviceChild_Vtbl,
8612}
8613pub trait ID3D11ComputeShader_Impl: ID3D11DeviceChild_Impl {}
8614impl ID3D11ComputeShader_Vtbl {
8615 pub const fn new<Identity: ID3D11ComputeShader_Impl, const OFFSET: isize>() -> Self {
8616 Self {
8617 base__: ID3D11DeviceChild_Vtbl::new::<Identity, OFFSET>(),
8618 }
8619 }
8620 pub fn matches(iid: &windows_core::GUID) -> bool {
8621 iid == &<ID3D11ComputeShader as windows_core::Interface>::IID
8622 || iid == &<ID3D11DeviceChild as windows_core::Interface>::IID
8623 }
8624}
8625impl windows_core::RuntimeName for ID3D11ComputeShader {}
8626unsafe impl Send for ID3D11ComputeShader {}
8627unsafe impl Sync for ID3D11ComputeShader {}
8628windows_core::imp::define_interface!(
8629 ID3D11Counter,
8630 ID3D11Counter_Vtbl,
8631 0x6e8c49fb_a371_4770_b440_29086022b741
8632);
8633impl core::ops::Deref for ID3D11Counter {
8634 type Target = ID3D11Asynchronous;
8635 fn deref(&self) -> &Self::Target {
8636 unsafe { core::mem::transmute(self) }
8637 }
8638}
8639windows_core::imp::interface_hierarchy!(
8640 ID3D11Counter,
8641 windows_core::IUnknown,
8642 ID3D11DeviceChild,
8643 ID3D11Asynchronous
8644);
8645impl ID3D11Counter {
8646 pub unsafe fn GetDesc(&self) -> D3D11_COUNTER_DESC {
8647 unsafe {
8648 let mut result__ = core::mem::zeroed();
8649 (windows_core::Interface::vtable(self).GetDesc)(
8650 windows_core::Interface::as_raw(self),
8651 &mut result__,
8652 );
8653 result__
8654 }
8655 }
8656}
8657#[repr(C)]
8658pub struct ID3D11Counter_Vtbl {
8659 pub base__: ID3D11Asynchronous_Vtbl,
8660 pub GetDesc: unsafe extern "system" fn(*mut core::ffi::c_void, *mut D3D11_COUNTER_DESC),
8661}
8662pub trait ID3D11Counter_Impl: ID3D11Asynchronous_Impl {
8663 fn GetDesc(&self, pdesc: *mut D3D11_COUNTER_DESC);
8664}
8665impl ID3D11Counter_Vtbl {
8666 pub const fn new<Identity: ID3D11Counter_Impl, const OFFSET: isize>() -> Self {
8667 unsafe extern "system" fn GetDesc<Identity: ID3D11Counter_Impl, const OFFSET: isize>(
8668 this: *mut core::ffi::c_void,
8669 pdesc: *mut D3D11_COUNTER_DESC,
8670 ) {
8671 unsafe {
8672 let this: &Identity =
8673 &*((this as *const *const ()).offset(OFFSET) as *const Identity);
8674 ID3D11Counter_Impl::GetDesc(this, core::mem::transmute_copy(&pdesc))
8675 }
8676 }
8677 Self {
8678 base__: ID3D11Asynchronous_Vtbl::new::<Identity, OFFSET>(),
8679 GetDesc: GetDesc::<Identity, OFFSET>,
8680 }
8681 }
8682 pub fn matches(iid: &windows_core::GUID) -> bool {
8683 iid == &<ID3D11Counter as windows_core::Interface>::IID
8684 || iid == &<ID3D11DeviceChild as windows_core::Interface>::IID
8685 || iid == &<ID3D11Asynchronous as windows_core::Interface>::IID
8686 }
8687}
8688impl windows_core::RuntimeName for ID3D11Counter {}
8689unsafe impl Send for ID3D11Counter {}
8690unsafe impl Sync for ID3D11Counter {}
8691windows_core::imp::define_interface!(
8692 ID3D11CryptoSession,
8693 ID3D11CryptoSession_Vtbl,
8694 0x9b32f9ad_bdcc_40a6_a39d_d5c865845720
8695);
8696impl core::ops::Deref for ID3D11CryptoSession {
8697 type Target = ID3D11DeviceChild;
8698 fn deref(&self) -> &Self::Target {
8699 unsafe { core::mem::transmute(self) }
8700 }
8701}
8702windows_core::imp::interface_hierarchy!(
8703 ID3D11CryptoSession,
8704 windows_core::IUnknown,
8705 ID3D11DeviceChild
8706);
8707impl ID3D11CryptoSession {
8708 pub unsafe fn GetCryptoType(&self) -> windows_core::GUID {
8709 unsafe {
8710 let mut result__ = core::mem::zeroed();
8711 (windows_core::Interface::vtable(self).GetCryptoType)(
8712 windows_core::Interface::as_raw(self),
8713 &mut result__,
8714 );
8715 result__
8716 }
8717 }
8718 pub unsafe fn GetDecoderProfile(&self) -> windows_core::GUID {
8719 unsafe {
8720 let mut result__ = core::mem::zeroed();
8721 (windows_core::Interface::vtable(self).GetDecoderProfile)(
8722 windows_core::Interface::as_raw(self),
8723 &mut result__,
8724 );
8725 result__
8726 }
8727 }
8728 pub unsafe fn GetCertificateSize(&self) -> windows_core::Result<u32> {
8729 unsafe {
8730 let mut result__ = core::mem::zeroed();
8731 (windows_core::Interface::vtable(self).GetCertificateSize)(
8732 windows_core::Interface::as_raw(self),
8733 &mut result__,
8734 )
8735 .map(|| result__)
8736 }
8737 }
8738 pub unsafe fn GetCertificate(&self, pcertificate: &mut [u8]) -> windows_core::Result<()> {
8739 unsafe {
8740 (windows_core::Interface::vtable(self).GetCertificate)(
8741 windows_core::Interface::as_raw(self),
8742 pcertificate.len().try_into().unwrap(),
8743 core::mem::transmute(pcertificate.as_ptr()),
8744 )
8745 .ok()
8746 }
8747 }
8748 pub unsafe fn GetCryptoSessionHandle(&self) -> crate::Foundation::HANDLE {
8749 unsafe {
8750 let mut result__ = core::mem::zeroed();
8751 (windows_core::Interface::vtable(self).GetCryptoSessionHandle)(
8752 windows_core::Interface::as_raw(self),
8753 &mut result__,
8754 );
8755 result__
8756 }
8757 }
8758}
8759#[repr(C)]
8760pub struct ID3D11CryptoSession_Vtbl {
8761 pub base__: ID3D11DeviceChild_Vtbl,
8762 pub GetCryptoType: unsafe extern "system" fn(*mut core::ffi::c_void, *mut windows_core::GUID),
8763 pub GetDecoderProfile:
8764 unsafe extern "system" fn(*mut core::ffi::c_void, *mut windows_core::GUID),
8765 pub GetCertificateSize:
8766 unsafe extern "system" fn(*mut core::ffi::c_void, *mut u32) -> windows_core::HRESULT,
8767 pub GetCertificate:
8768 unsafe extern "system" fn(*mut core::ffi::c_void, u32, *mut u8) -> windows_core::HRESULT,
8769 pub GetCryptoSessionHandle:
8770 unsafe extern "system" fn(*mut core::ffi::c_void, *mut crate::Foundation::HANDLE),
8771}
8772pub trait ID3D11CryptoSession_Impl: ID3D11DeviceChild_Impl {
8773 fn GetCryptoType(&self, pcryptotype: *mut windows_core::GUID);
8774 fn GetDecoderProfile(&self, pdecoderprofile: *mut windows_core::GUID);
8775 fn GetCertificateSize(&self) -> windows_core::Result<u32>;
8776 fn GetCertificate(
8777 &self,
8778 certificatesize: u32,
8779 pcertificate: *mut u8,
8780 ) -> windows_core::Result<()>;
8781 fn GetCryptoSessionHandle(&self, pcryptosessionhandle: *mut crate::Foundation::HANDLE);
8782}
8783impl ID3D11CryptoSession_Vtbl {
8784 pub const fn new<Identity: ID3D11CryptoSession_Impl, const OFFSET: isize>() -> Self {
8785 unsafe extern "system" fn GetCryptoType<
8786 Identity: ID3D11CryptoSession_Impl,
8787 const OFFSET: isize,
8788 >(
8789 this: *mut core::ffi::c_void,
8790 pcryptotype: *mut windows_core::GUID,
8791 ) {
8792 unsafe {
8793 let this: &Identity =
8794 &*((this as *const *const ()).offset(OFFSET) as *const Identity);
8795 ID3D11CryptoSession_Impl::GetCryptoType(
8796 this,
8797 core::mem::transmute_copy(&pcryptotype),
8798 )
8799 }
8800 }
8801 unsafe extern "system" fn GetDecoderProfile<
8802 Identity: ID3D11CryptoSession_Impl,
8803 const OFFSET: isize,
8804 >(
8805 this: *mut core::ffi::c_void,
8806 pdecoderprofile: *mut windows_core::GUID,
8807 ) {
8808 unsafe {
8809 let this: &Identity =
8810 &*((this as *const *const ()).offset(OFFSET) as *const Identity);
8811 ID3D11CryptoSession_Impl::GetDecoderProfile(
8812 this,
8813 core::mem::transmute_copy(&pdecoderprofile),
8814 )
8815 }
8816 }
8817 unsafe extern "system" fn GetCertificateSize<
8818 Identity: ID3D11CryptoSession_Impl,
8819 const OFFSET: isize,
8820 >(
8821 this: *mut core::ffi::c_void,
8822 pcertificatesize: *mut u32,
8823 ) -> windows_core::HRESULT {
8824 unsafe {
8825 let this: &Identity =
8826 &*((this as *const *const ()).offset(OFFSET) as *const Identity);
8827 match ID3D11CryptoSession_Impl::GetCertificateSize(this) {
8828 Ok(ok__) => {
8829 pcertificatesize.write(core::mem::transmute(ok__));
8830 windows_core::HRESULT(0)
8831 }
8832 Err(err) => err.into(),
8833 }
8834 }
8835 }
8836 unsafe extern "system" fn GetCertificate<
8837 Identity: ID3D11CryptoSession_Impl,
8838 const OFFSET: isize,
8839 >(
8840 this: *mut core::ffi::c_void,
8841 certificatesize: u32,
8842 pcertificate: *mut u8,
8843 ) -> windows_core::HRESULT {
8844 unsafe {
8845 let this: &Identity =
8846 &*((this as *const *const ()).offset(OFFSET) as *const Identity);
8847 ID3D11CryptoSession_Impl::GetCertificate(
8848 this,
8849 core::mem::transmute_copy(&certificatesize),
8850 core::mem::transmute_copy(&pcertificate),
8851 )
8852 .into()
8853 }
8854 }
8855 unsafe extern "system" fn GetCryptoSessionHandle<
8856 Identity: ID3D11CryptoSession_Impl,
8857 const OFFSET: isize,
8858 >(
8859 this: *mut core::ffi::c_void,
8860 pcryptosessionhandle: *mut crate::Foundation::HANDLE,
8861 ) {
8862 unsafe {
8863 let this: &Identity =
8864 &*((this as *const *const ()).offset(OFFSET) as *const Identity);
8865 ID3D11CryptoSession_Impl::GetCryptoSessionHandle(
8866 this,
8867 core::mem::transmute_copy(&pcryptosessionhandle),
8868 )
8869 }
8870 }
8871 Self {
8872 base__: ID3D11DeviceChild_Vtbl::new::<Identity, OFFSET>(),
8873 GetCryptoType: GetCryptoType::<Identity, OFFSET>,
8874 GetDecoderProfile: GetDecoderProfile::<Identity, OFFSET>,
8875 GetCertificateSize: GetCertificateSize::<Identity, OFFSET>,
8876 GetCertificate: GetCertificate::<Identity, OFFSET>,
8877 GetCryptoSessionHandle: GetCryptoSessionHandle::<Identity, OFFSET>,
8878 }
8879 }
8880 pub fn matches(iid: &windows_core::GUID) -> bool {
8881 iid == &<ID3D11CryptoSession as windows_core::Interface>::IID
8882 || iid == &<ID3D11DeviceChild as windows_core::Interface>::IID
8883 }
8884}
8885impl windows_core::RuntimeName for ID3D11CryptoSession {}
8886unsafe impl Send for ID3D11CryptoSession {}
8887unsafe impl Sync for ID3D11CryptoSession {}
8888windows_core::imp::define_interface!(
8889 ID3D11Debug,
8890 ID3D11Debug_Vtbl,
8891 0x79cf2233_7536_4948_9d36_1e4692dc5760
8892);
8893windows_core::imp::interface_hierarchy!(ID3D11Debug, windows_core::IUnknown);
8894impl ID3D11Debug {
8895 pub unsafe fn SetFeatureMask(&self, mask: u32) -> windows_core::Result<()> {
8896 unsafe {
8897 (windows_core::Interface::vtable(self).SetFeatureMask)(
8898 windows_core::Interface::as_raw(self),
8899 mask,
8900 )
8901 .ok()
8902 }
8903 }
8904 pub unsafe fn GetFeatureMask(&self) -> u32 {
8905 unsafe {
8906 (windows_core::Interface::vtable(self).GetFeatureMask)(windows_core::Interface::as_raw(
8907 self,
8908 ))
8909 }
8910 }
8911 pub unsafe fn SetPresentPerRenderOpDelay(&self, milliseconds: u32) -> windows_core::Result<()> {
8912 unsafe {
8913 (windows_core::Interface::vtable(self).SetPresentPerRenderOpDelay)(
8914 windows_core::Interface::as_raw(self),
8915 milliseconds,
8916 )
8917 .ok()
8918 }
8919 }
8920 pub unsafe fn GetPresentPerRenderOpDelay(&self) -> u32 {
8921 unsafe {
8922 (windows_core::Interface::vtable(self).GetPresentPerRenderOpDelay)(
8923 windows_core::Interface::as_raw(self),
8924 )
8925 }
8926 }
8927 #[cfg(feature = "Win32_Graphics_Dxgi")]
8928 pub unsafe fn SetSwapChain<P0>(&self, pswapchain: P0) -> windows_core::Result<()>
8929 where
8930 P0: windows_core::Param<crate::Dxgi::IDXGISwapChain>,
8931 {
8932 unsafe {
8933 (windows_core::Interface::vtable(self).SetSwapChain)(
8934 windows_core::Interface::as_raw(self),
8935 pswapchain.param().abi(),
8936 )
8937 .ok()
8938 }
8939 }
8940 #[cfg(feature = "Win32_Graphics_Dxgi")]
8941 pub unsafe fn GetSwapChain(&self) -> windows_core::Result<crate::Dxgi::IDXGISwapChain> {
8942 unsafe {
8943 let mut result__ = core::mem::zeroed();
8944 (windows_core::Interface::vtable(self).GetSwapChain)(
8945 windows_core::Interface::as_raw(self),
8946 &mut result__,
8947 )
8948 .and_then(|| windows_core::Type::from_abi(result__))
8949 }
8950 }
8951 pub unsafe fn ValidateContext<P0>(&self, pcontext: P0) -> windows_core::Result<()>
8952 where
8953 P0: windows_core::Param<ID3D11DeviceContext>,
8954 {
8955 unsafe {
8956 (windows_core::Interface::vtable(self).ValidateContext)(
8957 windows_core::Interface::as_raw(self),
8958 pcontext.param().abi(),
8959 )
8960 .ok()
8961 }
8962 }
8963 pub unsafe fn ReportLiveDeviceObjects(
8964 &self,
8965 flags: D3D11_RLDO_FLAGS,
8966 ) -> windows_core::Result<()> {
8967 unsafe {
8968 (windows_core::Interface::vtable(self).ReportLiveDeviceObjects)(
8969 windows_core::Interface::as_raw(self),
8970 flags,
8971 )
8972 .ok()
8973 }
8974 }
8975 pub unsafe fn ValidateContextForDispatch<P0>(&self, pcontext: P0) -> windows_core::Result<()>
8976 where
8977 P0: windows_core::Param<ID3D11DeviceContext>,
8978 {
8979 unsafe {
8980 (windows_core::Interface::vtable(self).ValidateContextForDispatch)(
8981 windows_core::Interface::as_raw(self),
8982 pcontext.param().abi(),
8983 )
8984 .ok()
8985 }
8986 }
8987}
8988#[repr(C)]
8989pub struct ID3D11Debug_Vtbl {
8990 pub base__: windows_core::IUnknown_Vtbl,
8991 pub SetFeatureMask:
8992 unsafe extern "system" fn(*mut core::ffi::c_void, u32) -> windows_core::HRESULT,
8993 pub GetFeatureMask: unsafe extern "system" fn(*mut core::ffi::c_void) -> u32,
8994 pub SetPresentPerRenderOpDelay:
8995 unsafe extern "system" fn(*mut core::ffi::c_void, u32) -> windows_core::HRESULT,
8996 pub GetPresentPerRenderOpDelay: unsafe extern "system" fn(*mut core::ffi::c_void) -> u32,
8997 #[cfg(feature = "Win32_Graphics_Dxgi")]
8998 pub SetSwapChain: unsafe extern "system" fn(
8999 *mut core::ffi::c_void,
9000 *mut core::ffi::c_void,
9001 ) -> windows_core::HRESULT,
9002 #[cfg(not(feature = "Win32_Graphics_Dxgi"))]
9003 SetSwapChain: usize,
9004 #[cfg(feature = "Win32_Graphics_Dxgi")]
9005 pub GetSwapChain: unsafe extern "system" fn(
9006 *mut core::ffi::c_void,
9007 *mut *mut core::ffi::c_void,
9008 ) -> windows_core::HRESULT,
9009 #[cfg(not(feature = "Win32_Graphics_Dxgi"))]
9010 GetSwapChain: usize,
9011 pub ValidateContext: unsafe extern "system" fn(
9012 *mut core::ffi::c_void,
9013 *mut core::ffi::c_void,
9014 ) -> windows_core::HRESULT,
9015 pub ReportLiveDeviceObjects: unsafe extern "system" fn(
9016 *mut core::ffi::c_void,
9017 D3D11_RLDO_FLAGS,
9018 ) -> windows_core::HRESULT,
9019 pub ValidateContextForDispatch: unsafe extern "system" fn(
9020 *mut core::ffi::c_void,
9021 *mut core::ffi::c_void,
9022 ) -> windows_core::HRESULT,
9023}
9024#[cfg(feature = "Win32_Graphics_Dxgi")]
9025pub trait ID3D11Debug_Impl: windows_core::IUnknownImpl {
9026 fn SetFeatureMask(&self, mask: u32) -> windows_core::Result<()>;
9027 fn GetFeatureMask(&self) -> u32;
9028 fn SetPresentPerRenderOpDelay(&self, milliseconds: u32) -> windows_core::Result<()>;
9029 fn GetPresentPerRenderOpDelay(&self) -> u32;
9030 fn SetSwapChain(
9031 &self,
9032 pswapchain: windows_core::Ref<'_, crate::Dxgi::IDXGISwapChain>,
9033 ) -> windows_core::Result<()>;
9034 fn GetSwapChain(&self) -> windows_core::Result<crate::Dxgi::IDXGISwapChain>;
9035 fn ValidateContext(
9036 &self,
9037 pcontext: windows_core::Ref<'_, ID3D11DeviceContext>,
9038 ) -> windows_core::Result<()>;
9039 fn ReportLiveDeviceObjects(&self, flags: D3D11_RLDO_FLAGS) -> windows_core::Result<()>;
9040 fn ValidateContextForDispatch(
9041 &self,
9042 pcontext: windows_core::Ref<'_, ID3D11DeviceContext>,
9043 ) -> windows_core::Result<()>;
9044}
9045#[cfg(feature = "Win32_Graphics_Dxgi")]
9046impl ID3D11Debug_Vtbl {
9047 pub const fn new<Identity: ID3D11Debug_Impl, const OFFSET: isize>() -> Self {
9048 unsafe extern "system" fn SetFeatureMask<
9049 Identity: ID3D11Debug_Impl,
9050 const OFFSET: isize,
9051 >(
9052 this: *mut core::ffi::c_void,
9053 mask: u32,
9054 ) -> windows_core::HRESULT {
9055 unsafe {
9056 let this: &Identity =
9057 &*((this as *const *const ()).offset(OFFSET) as *const Identity);
9058 ID3D11Debug_Impl::SetFeatureMask(this, core::mem::transmute_copy(&mask)).into()
9059 }
9060 }
9061 unsafe extern "system" fn GetFeatureMask<
9062 Identity: ID3D11Debug_Impl,
9063 const OFFSET: isize,
9064 >(
9065 this: *mut core::ffi::c_void,
9066 ) -> u32 {
9067 unsafe {
9068 let this: &Identity =
9069 &*((this as *const *const ()).offset(OFFSET) as *const Identity);
9070 ID3D11Debug_Impl::GetFeatureMask(this)
9071 }
9072 }
9073 unsafe extern "system" fn SetPresentPerRenderOpDelay<
9074 Identity: ID3D11Debug_Impl,
9075 const OFFSET: isize,
9076 >(
9077 this: *mut core::ffi::c_void,
9078 milliseconds: u32,
9079 ) -> windows_core::HRESULT {
9080 unsafe {
9081 let this: &Identity =
9082 &*((this as *const *const ()).offset(OFFSET) as *const Identity);
9083 ID3D11Debug_Impl::SetPresentPerRenderOpDelay(
9084 this,
9085 core::mem::transmute_copy(&milliseconds),
9086 )
9087 .into()
9088 }
9089 }
9090 unsafe extern "system" fn GetPresentPerRenderOpDelay<
9091 Identity: ID3D11Debug_Impl,
9092 const OFFSET: isize,
9093 >(
9094 this: *mut core::ffi::c_void,
9095 ) -> u32 {
9096 unsafe {
9097 let this: &Identity =
9098 &*((this as *const *const ()).offset(OFFSET) as *const Identity);
9099 ID3D11Debug_Impl::GetPresentPerRenderOpDelay(this)
9100 }
9101 }
9102 unsafe extern "system" fn SetSwapChain<Identity: ID3D11Debug_Impl, const OFFSET: isize>(
9103 this: *mut core::ffi::c_void,
9104 pswapchain: *mut core::ffi::c_void,
9105 ) -> windows_core::HRESULT {
9106 unsafe {
9107 let this: &Identity =
9108 &*((this as *const *const ()).offset(OFFSET) as *const Identity);
9109 ID3D11Debug_Impl::SetSwapChain(this, core::mem::transmute_copy(&pswapchain)).into()
9110 }
9111 }
9112 unsafe extern "system" fn GetSwapChain<Identity: ID3D11Debug_Impl, const OFFSET: isize>(
9113 this: *mut core::ffi::c_void,
9114 ppswapchain: *mut *mut core::ffi::c_void,
9115 ) -> windows_core::HRESULT {
9116 unsafe {
9117 let this: &Identity =
9118 &*((this as *const *const ()).offset(OFFSET) as *const Identity);
9119 match ID3D11Debug_Impl::GetSwapChain(this) {
9120 Ok(ok__) => {
9121 ppswapchain.write(core::mem::transmute(ok__));
9122 windows_core::HRESULT(0)
9123 }
9124 Err(err) => err.into(),
9125 }
9126 }
9127 }
9128 unsafe extern "system" fn ValidateContext<
9129 Identity: ID3D11Debug_Impl,
9130 const OFFSET: isize,
9131 >(
9132 this: *mut core::ffi::c_void,
9133 pcontext: *mut core::ffi::c_void,
9134 ) -> windows_core::HRESULT {
9135 unsafe {
9136 let this: &Identity =
9137 &*((this as *const *const ()).offset(OFFSET) as *const Identity);
9138 ID3D11Debug_Impl::ValidateContext(this, core::mem::transmute_copy(&pcontext)).into()
9139 }
9140 }
9141 unsafe extern "system" fn ReportLiveDeviceObjects<
9142 Identity: ID3D11Debug_Impl,
9143 const OFFSET: isize,
9144 >(
9145 this: *mut core::ffi::c_void,
9146 flags: D3D11_RLDO_FLAGS,
9147 ) -> windows_core::HRESULT {
9148 unsafe {
9149 let this: &Identity =
9150 &*((this as *const *const ()).offset(OFFSET) as *const Identity);
9151 ID3D11Debug_Impl::ReportLiveDeviceObjects(this, core::mem::transmute_copy(&flags))
9152 .into()
9153 }
9154 }
9155 unsafe extern "system" fn ValidateContextForDispatch<
9156 Identity: ID3D11Debug_Impl,
9157 const OFFSET: isize,
9158 >(
9159 this: *mut core::ffi::c_void,
9160 pcontext: *mut core::ffi::c_void,
9161 ) -> windows_core::HRESULT {
9162 unsafe {
9163 let this: &Identity =
9164 &*((this as *const *const ()).offset(OFFSET) as *const Identity);
9165 ID3D11Debug_Impl::ValidateContextForDispatch(
9166 this,
9167 core::mem::transmute_copy(&pcontext),
9168 )
9169 .into()
9170 }
9171 }
9172 Self {
9173 base__: windows_core::IUnknown_Vtbl::new::<Identity, OFFSET>(),
9174 SetFeatureMask: SetFeatureMask::<Identity, OFFSET>,
9175 GetFeatureMask: GetFeatureMask::<Identity, OFFSET>,
9176 SetPresentPerRenderOpDelay: SetPresentPerRenderOpDelay::<Identity, OFFSET>,
9177 GetPresentPerRenderOpDelay: GetPresentPerRenderOpDelay::<Identity, OFFSET>,
9178 SetSwapChain: SetSwapChain::<Identity, OFFSET>,
9179 GetSwapChain: GetSwapChain::<Identity, OFFSET>,
9180 ValidateContext: ValidateContext::<Identity, OFFSET>,
9181 ReportLiveDeviceObjects: ReportLiveDeviceObjects::<Identity, OFFSET>,
9182 ValidateContextForDispatch: ValidateContextForDispatch::<Identity, OFFSET>,
9183 }
9184 }
9185 pub fn matches(iid: &windows_core::GUID) -> bool {
9186 iid == &<ID3D11Debug as windows_core::Interface>::IID
9187 }
9188}
9189#[cfg(feature = "Win32_Graphics_Dxgi")]
9190impl windows_core::RuntimeName for ID3D11Debug {}
9191#[cfg(feature = "Win32_Graphics_Dxgi")]
9192unsafe impl Send for ID3D11Debug {}
9193#[cfg(feature = "Win32_Graphics_Dxgi")]
9194unsafe impl Sync for ID3D11Debug {}
9195windows_core::imp::define_interface!(
9196 ID3D11DepthStencilState,
9197 ID3D11DepthStencilState_Vtbl,
9198 0x03823efb_8d8f_4e1c_9aa2_f64bb2cbfdf1
9199);
9200impl core::ops::Deref for ID3D11DepthStencilState {
9201 type Target = ID3D11DeviceChild;
9202 fn deref(&self) -> &Self::Target {
9203 unsafe { core::mem::transmute(self) }
9204 }
9205}
9206windows_core::imp::interface_hierarchy!(
9207 ID3D11DepthStencilState,
9208 windows_core::IUnknown,
9209 ID3D11DeviceChild
9210);
9211impl ID3D11DepthStencilState {
9212 pub unsafe fn GetDesc(&self, pdesc: *mut D3D11_DEPTH_STENCIL_DESC) {
9213 unsafe {
9214 (windows_core::Interface::vtable(self).GetDesc)(
9215 windows_core::Interface::as_raw(self),
9216 core::mem::transmute(pdesc),
9217 )
9218 }
9219 }
9220}
9221#[repr(C)]
9222pub struct ID3D11DepthStencilState_Vtbl {
9223 pub base__: ID3D11DeviceChild_Vtbl,
9224 pub GetDesc: unsafe extern "system" fn(*mut core::ffi::c_void, *mut D3D11_DEPTH_STENCIL_DESC),
9225}
9226pub trait ID3D11DepthStencilState_Impl: ID3D11DeviceChild_Impl {
9227 fn GetDesc(&self, pdesc: *mut D3D11_DEPTH_STENCIL_DESC);
9228}
9229impl ID3D11DepthStencilState_Vtbl {
9230 pub const fn new<Identity: ID3D11DepthStencilState_Impl, const OFFSET: isize>() -> Self {
9231 unsafe extern "system" fn GetDesc<
9232 Identity: ID3D11DepthStencilState_Impl,
9233 const OFFSET: isize,
9234 >(
9235 this: *mut core::ffi::c_void,
9236 pdesc: *mut D3D11_DEPTH_STENCIL_DESC,
9237 ) {
9238 unsafe {
9239 let this: &Identity =
9240 &*((this as *const *const ()).offset(OFFSET) as *const Identity);
9241 ID3D11DepthStencilState_Impl::GetDesc(this, core::mem::transmute_copy(&pdesc))
9242 }
9243 }
9244 Self {
9245 base__: ID3D11DeviceChild_Vtbl::new::<Identity, OFFSET>(),
9246 GetDesc: GetDesc::<Identity, OFFSET>,
9247 }
9248 }
9249 pub fn matches(iid: &windows_core::GUID) -> bool {
9250 iid == &<ID3D11DepthStencilState as windows_core::Interface>::IID
9251 || iid == &<ID3D11DeviceChild as windows_core::Interface>::IID
9252 }
9253}
9254impl windows_core::RuntimeName for ID3D11DepthStencilState {}
9255unsafe impl Send for ID3D11DepthStencilState {}
9256unsafe impl Sync for ID3D11DepthStencilState {}
9257windows_core::imp::define_interface!(
9258 ID3D11DepthStencilView,
9259 ID3D11DepthStencilView_Vtbl,
9260 0x9fdac92a_1876_48c3_afad_25b94f84a9b6
9261);
9262impl core::ops::Deref for ID3D11DepthStencilView {
9263 type Target = ID3D11View;
9264 fn deref(&self) -> &Self::Target {
9265 unsafe { core::mem::transmute(self) }
9266 }
9267}
9268windows_core::imp::interface_hierarchy!(
9269 ID3D11DepthStencilView,
9270 windows_core::IUnknown,
9271 ID3D11DeviceChild,
9272 ID3D11View
9273);
9274impl ID3D11DepthStencilView {
9275 #[cfg(feature = "Win32_Graphics_Dxgi_Common")]
9276 pub unsafe fn GetDesc(&self, pdesc: *mut D3D11_DEPTH_STENCIL_VIEW_DESC) {
9277 unsafe {
9278 (windows_core::Interface::vtable(self).GetDesc)(
9279 windows_core::Interface::as_raw(self),
9280 core::mem::transmute(pdesc),
9281 )
9282 }
9283 }
9284}
9285#[repr(C)]
9286pub struct ID3D11DepthStencilView_Vtbl {
9287 pub base__: ID3D11View_Vtbl,
9288 #[cfg(feature = "Win32_Graphics_Dxgi_Common")]
9289 pub GetDesc:
9290 unsafe extern "system" fn(*mut core::ffi::c_void, *mut D3D11_DEPTH_STENCIL_VIEW_DESC),
9291 #[cfg(not(feature = "Win32_Graphics_Dxgi_Common"))]
9292 GetDesc: usize,
9293}
9294#[cfg(feature = "Win32_Graphics_Dxgi_Common")]
9295pub trait ID3D11DepthStencilView_Impl: ID3D11View_Impl {
9296 fn GetDesc(&self, pdesc: *mut D3D11_DEPTH_STENCIL_VIEW_DESC);
9297}
9298#[cfg(feature = "Win32_Graphics_Dxgi_Common")]
9299impl ID3D11DepthStencilView_Vtbl {
9300 pub const fn new<Identity: ID3D11DepthStencilView_Impl, const OFFSET: isize>() -> Self {
9301 unsafe extern "system" fn GetDesc<
9302 Identity: ID3D11DepthStencilView_Impl,
9303 const OFFSET: isize,
9304 >(
9305 this: *mut core::ffi::c_void,
9306 pdesc: *mut D3D11_DEPTH_STENCIL_VIEW_DESC,
9307 ) {
9308 unsafe {
9309 let this: &Identity =
9310 &*((this as *const *const ()).offset(OFFSET) as *const Identity);
9311 ID3D11DepthStencilView_Impl::GetDesc(this, core::mem::transmute_copy(&pdesc))
9312 }
9313 }
9314 Self {
9315 base__: ID3D11View_Vtbl::new::<Identity, OFFSET>(),
9316 GetDesc: GetDesc::<Identity, OFFSET>,
9317 }
9318 }
9319 pub fn matches(iid: &windows_core::GUID) -> bool {
9320 iid == &<ID3D11DepthStencilView as windows_core::Interface>::IID
9321 || iid == &<ID3D11DeviceChild as windows_core::Interface>::IID
9322 || iid == &<ID3D11View as windows_core::Interface>::IID
9323 }
9324}
9325#[cfg(feature = "Win32_Graphics_Dxgi_Common")]
9326impl windows_core::RuntimeName for ID3D11DepthStencilView {}
9327#[cfg(feature = "Win32_Graphics_Dxgi_Common")]
9328unsafe impl Send for ID3D11DepthStencilView {}
9329#[cfg(feature = "Win32_Graphics_Dxgi_Common")]
9330unsafe impl Sync for ID3D11DepthStencilView {}
9331windows_core::imp::define_interface!(
9332 ID3D11Device,
9333 ID3D11Device_Vtbl,
9334 0xdb6f6ddb_ac77_4e88_8253_819df9bbf140
9335);
9336windows_core::imp::interface_hierarchy!(ID3D11Device, windows_core::IUnknown);
9337impl ID3D11Device {
9338 pub unsafe fn CreateBuffer(
9339 &self,
9340 pdesc: *const D3D11_BUFFER_DESC,
9341 pinitialdata: Option<*const D3D11_SUBRESOURCE_DATA>,
9342 ppbuffer: Option<*mut Option<ID3D11Buffer>>,
9343 ) -> windows_core::Result<()> {
9344 unsafe {
9345 (windows_core::Interface::vtable(self).CreateBuffer)(
9346 windows_core::Interface::as_raw(self),
9347 pdesc,
9348 core::mem::transmute(pinitialdata.unwrap_or(core::mem::zeroed())),
9349 core::mem::transmute(ppbuffer.unwrap_or(core::mem::zeroed())),
9350 )
9351 .ok()
9352 }
9353 }
9354 #[cfg(feature = "Win32_Graphics_Dxgi_Common")]
9355 pub unsafe fn CreateTexture1D(
9356 &self,
9357 pdesc: *const D3D11_TEXTURE1D_DESC,
9358 pinitialdata: Option<*const D3D11_SUBRESOURCE_DATA>,
9359 pptexture1d: Option<*mut Option<ID3D11Texture1D>>,
9360 ) -> windows_core::Result<()> {
9361 unsafe {
9362 (windows_core::Interface::vtable(self).CreateTexture1D)(
9363 windows_core::Interface::as_raw(self),
9364 pdesc,
9365 core::mem::transmute(pinitialdata.unwrap_or(core::mem::zeroed())),
9366 core::mem::transmute(pptexture1d.unwrap_or(core::mem::zeroed())),
9367 )
9368 .ok()
9369 }
9370 }
9371 #[cfg(feature = "Win32_Graphics_Dxgi_Common")]
9372 pub unsafe fn CreateTexture2D(
9373 &self,
9374 pdesc: *const D3D11_TEXTURE2D_DESC,
9375 pinitialdata: Option<*const D3D11_SUBRESOURCE_DATA>,
9376 pptexture2d: Option<*mut Option<ID3D11Texture2D>>,
9377 ) -> windows_core::Result<()> {
9378 unsafe {
9379 (windows_core::Interface::vtable(self).CreateTexture2D)(
9380 windows_core::Interface::as_raw(self),
9381 pdesc,
9382 core::mem::transmute(pinitialdata.unwrap_or(core::mem::zeroed())),
9383 core::mem::transmute(pptexture2d.unwrap_or(core::mem::zeroed())),
9384 )
9385 .ok()
9386 }
9387 }
9388 #[cfg(feature = "Win32_Graphics_Dxgi_Common")]
9389 pub unsafe fn CreateTexture3D(
9390 &self,
9391 pdesc: *const D3D11_TEXTURE3D_DESC,
9392 pinitialdata: Option<*const D3D11_SUBRESOURCE_DATA>,
9393 pptexture3d: Option<*mut Option<ID3D11Texture3D>>,
9394 ) -> windows_core::Result<()> {
9395 unsafe {
9396 (windows_core::Interface::vtable(self).CreateTexture3D)(
9397 windows_core::Interface::as_raw(self),
9398 pdesc,
9399 core::mem::transmute(pinitialdata.unwrap_or(core::mem::zeroed())),
9400 core::mem::transmute(pptexture3d.unwrap_or(core::mem::zeroed())),
9401 )
9402 .ok()
9403 }
9404 }
9405 #[cfg(all(
9406 feature = "Win32_Graphics_Direct3D",
9407 feature = "Win32_Graphics_Dxgi_Common"
9408 ))]
9409 pub unsafe fn CreateShaderResourceView<P0>(
9410 &self,
9411 presource: P0,
9412 pdesc: Option<*const D3D11_SHADER_RESOURCE_VIEW_DESC>,
9413 ppsrview: Option<*mut Option<ID3D11ShaderResourceView>>,
9414 ) -> windows_core::Result<()>
9415 where
9416 P0: windows_core::Param<ID3D11Resource>,
9417 {
9418 unsafe {
9419 (windows_core::Interface::vtable(self).CreateShaderResourceView)(
9420 windows_core::Interface::as_raw(self),
9421 presource.param().abi(),
9422 core::mem::transmute(pdesc.unwrap_or(core::mem::zeroed())),
9423 core::mem::transmute(ppsrview.unwrap_or(core::mem::zeroed())),
9424 )
9425 .ok()
9426 }
9427 }
9428 #[cfg(feature = "Win32_Graphics_Dxgi_Common")]
9429 pub unsafe fn CreateUnorderedAccessView<P0>(
9430 &self,
9431 presource: P0,
9432 pdesc: Option<*const D3D11_UNORDERED_ACCESS_VIEW_DESC>,
9433 ppuaview: Option<*mut Option<ID3D11UnorderedAccessView>>,
9434 ) -> windows_core::Result<()>
9435 where
9436 P0: windows_core::Param<ID3D11Resource>,
9437 {
9438 unsafe {
9439 (windows_core::Interface::vtable(self).CreateUnorderedAccessView)(
9440 windows_core::Interface::as_raw(self),
9441 presource.param().abi(),
9442 core::mem::transmute(pdesc.unwrap_or(core::mem::zeroed())),
9443 core::mem::transmute(ppuaview.unwrap_or(core::mem::zeroed())),
9444 )
9445 .ok()
9446 }
9447 }
9448 #[cfg(feature = "Win32_Graphics_Dxgi_Common")]
9449 pub unsafe fn CreateRenderTargetView<P0>(
9450 &self,
9451 presource: P0,
9452 pdesc: Option<*const D3D11_RENDER_TARGET_VIEW_DESC>,
9453 pprtview: Option<*mut Option<ID3D11RenderTargetView>>,
9454 ) -> windows_core::Result<()>
9455 where
9456 P0: windows_core::Param<ID3D11Resource>,
9457 {
9458 unsafe {
9459 (windows_core::Interface::vtable(self).CreateRenderTargetView)(
9460 windows_core::Interface::as_raw(self),
9461 presource.param().abi(),
9462 core::mem::transmute(pdesc.unwrap_or(core::mem::zeroed())),
9463 core::mem::transmute(pprtview.unwrap_or(core::mem::zeroed())),
9464 )
9465 .ok()
9466 }
9467 }
9468 #[cfg(feature = "Win32_Graphics_Dxgi_Common")]
9469 pub unsafe fn CreateDepthStencilView<P0>(
9470 &self,
9471 presource: P0,
9472 pdesc: Option<*const D3D11_DEPTH_STENCIL_VIEW_DESC>,
9473 ppdepthstencilview: Option<*mut Option<ID3D11DepthStencilView>>,
9474 ) -> windows_core::Result<()>
9475 where
9476 P0: windows_core::Param<ID3D11Resource>,
9477 {
9478 unsafe {
9479 (windows_core::Interface::vtable(self).CreateDepthStencilView)(
9480 windows_core::Interface::as_raw(self),
9481 presource.param().abi(),
9482 core::mem::transmute(pdesc.unwrap_or(core::mem::zeroed())),
9483 core::mem::transmute(ppdepthstencilview.unwrap_or(core::mem::zeroed())),
9484 )
9485 .ok()
9486 }
9487 }
9488 #[cfg(feature = "Win32_Graphics_Dxgi_Common")]
9489 pub unsafe fn CreateInputLayout(
9490 &self,
9491 pinputelementdescs: &[D3D11_INPUT_ELEMENT_DESC],
9492 pshaderbytecodewithinputsignature: &[u8],
9493 ppinputlayout: Option<*mut Option<ID3D11InputLayout>>,
9494 ) -> windows_core::Result<()> {
9495 unsafe {
9496 (windows_core::Interface::vtable(self).CreateInputLayout)(
9497 windows_core::Interface::as_raw(self),
9498 core::mem::transmute(pinputelementdescs.as_ptr()),
9499 pinputelementdescs.len().try_into().unwrap(),
9500 core::mem::transmute(pshaderbytecodewithinputsignature.as_ptr()),
9501 pshaderbytecodewithinputsignature.len().try_into().unwrap(),
9502 core::mem::transmute(ppinputlayout.unwrap_or(core::mem::zeroed())),
9503 )
9504 .ok()
9505 }
9506 }
9507 pub unsafe fn CreateVertexShader<P2>(
9508 &self,
9509 pshaderbytecode: &[u8],
9510 pclasslinkage: P2,
9511 ppvertexshader: Option<*mut Option<ID3D11VertexShader>>,
9512 ) -> windows_core::Result<()>
9513 where
9514 P2: windows_core::Param<ID3D11ClassLinkage>,
9515 {
9516 unsafe {
9517 (windows_core::Interface::vtable(self).CreateVertexShader)(
9518 windows_core::Interface::as_raw(self),
9519 core::mem::transmute(pshaderbytecode.as_ptr()),
9520 pshaderbytecode.len().try_into().unwrap(),
9521 pclasslinkage.param().abi(),
9522 core::mem::transmute(ppvertexshader.unwrap_or(core::mem::zeroed())),
9523 )
9524 .ok()
9525 }
9526 }
9527 pub unsafe fn CreateGeometryShader<P2>(
9528 &self,
9529 pshaderbytecode: &[u8],
9530 pclasslinkage: P2,
9531 ppgeometryshader: Option<*mut Option<ID3D11GeometryShader>>,
9532 ) -> windows_core::Result<()>
9533 where
9534 P2: windows_core::Param<ID3D11ClassLinkage>,
9535 {
9536 unsafe {
9537 (windows_core::Interface::vtable(self).CreateGeometryShader)(
9538 windows_core::Interface::as_raw(self),
9539 core::mem::transmute(pshaderbytecode.as_ptr()),
9540 pshaderbytecode.len().try_into().unwrap(),
9541 pclasslinkage.param().abi(),
9542 core::mem::transmute(ppgeometryshader.unwrap_or(core::mem::zeroed())),
9543 )
9544 .ok()
9545 }
9546 }
9547 pub unsafe fn CreateGeometryShaderWithStreamOutput<P7>(
9548 &self,
9549 pshaderbytecode: &[u8],
9550 psodeclaration: Option<&[D3D11_SO_DECLARATION_ENTRY]>,
9551 pbufferstrides: Option<&[u32]>,
9552 rasterizedstream: u32,
9553 pclasslinkage: P7,
9554 ppgeometryshader: Option<*mut Option<ID3D11GeometryShader>>,
9555 ) -> windows_core::Result<()>
9556 where
9557 P7: windows_core::Param<ID3D11ClassLinkage>,
9558 {
9559 unsafe {
9560 (windows_core::Interface::vtable(self).CreateGeometryShaderWithStreamOutput)(
9561 windows_core::Interface::as_raw(self),
9562 core::mem::transmute(pshaderbytecode.as_ptr()),
9563 pshaderbytecode.len().try_into().unwrap(),
9564 core::mem::transmute(
9565 psodeclaration
9566 .map_or(core::ptr::null(), |slice| slice.as_ptr()),
9567 ),
9568 psodeclaration
9569 .map_or(0, |slice| slice.len().try_into().unwrap()),
9570 core::mem::transmute(
9571 pbufferstrides
9572 .map_or(core::ptr::null(), |slice| slice.as_ptr()),
9573 ),
9574 pbufferstrides
9575 .map_or(0, |slice| slice.len().try_into().unwrap()),
9576 rasterizedstream,
9577 pclasslinkage.param().abi(),
9578 core::mem::transmute(ppgeometryshader.unwrap_or(core::mem::zeroed())),
9579 )
9580 .ok()
9581 }
9582 }
9583 pub unsafe fn CreatePixelShader<P2>(
9584 &self,
9585 pshaderbytecode: &[u8],
9586 pclasslinkage: P2,
9587 pppixelshader: Option<*mut Option<ID3D11PixelShader>>,
9588 ) -> windows_core::Result<()>
9589 where
9590 P2: windows_core::Param<ID3D11ClassLinkage>,
9591 {
9592 unsafe {
9593 (windows_core::Interface::vtable(self).CreatePixelShader)(
9594 windows_core::Interface::as_raw(self),
9595 core::mem::transmute(pshaderbytecode.as_ptr()),
9596 pshaderbytecode.len().try_into().unwrap(),
9597 pclasslinkage.param().abi(),
9598 core::mem::transmute(pppixelshader.unwrap_or(core::mem::zeroed())),
9599 )
9600 .ok()
9601 }
9602 }
9603 pub unsafe fn CreateHullShader<P2>(
9604 &self,
9605 pshaderbytecode: &[u8],
9606 pclasslinkage: P2,
9607 pphullshader: Option<*mut Option<ID3D11HullShader>>,
9608 ) -> windows_core::Result<()>
9609 where
9610 P2: windows_core::Param<ID3D11ClassLinkage>,
9611 {
9612 unsafe {
9613 (windows_core::Interface::vtable(self).CreateHullShader)(
9614 windows_core::Interface::as_raw(self),
9615 core::mem::transmute(pshaderbytecode.as_ptr()),
9616 pshaderbytecode.len().try_into().unwrap(),
9617 pclasslinkage.param().abi(),
9618 core::mem::transmute(pphullshader.unwrap_or(core::mem::zeroed())),
9619 )
9620 .ok()
9621 }
9622 }
9623 pub unsafe fn CreateDomainShader<P2>(
9624 &self,
9625 pshaderbytecode: &[u8],
9626 pclasslinkage: P2,
9627 ppdomainshader: Option<*mut Option<ID3D11DomainShader>>,
9628 ) -> windows_core::Result<()>
9629 where
9630 P2: windows_core::Param<ID3D11ClassLinkage>,
9631 {
9632 unsafe {
9633 (windows_core::Interface::vtable(self).CreateDomainShader)(
9634 windows_core::Interface::as_raw(self),
9635 core::mem::transmute(pshaderbytecode.as_ptr()),
9636 pshaderbytecode.len().try_into().unwrap(),
9637 pclasslinkage.param().abi(),
9638 core::mem::transmute(ppdomainshader.unwrap_or(core::mem::zeroed())),
9639 )
9640 .ok()
9641 }
9642 }
9643 pub unsafe fn CreateComputeShader<P2>(
9644 &self,
9645 pshaderbytecode: &[u8],
9646 pclasslinkage: P2,
9647 ppcomputeshader: Option<*mut Option<ID3D11ComputeShader>>,
9648 ) -> windows_core::Result<()>
9649 where
9650 P2: windows_core::Param<ID3D11ClassLinkage>,
9651 {
9652 unsafe {
9653 (windows_core::Interface::vtable(self).CreateComputeShader)(
9654 windows_core::Interface::as_raw(self),
9655 core::mem::transmute(pshaderbytecode.as_ptr()),
9656 pshaderbytecode.len().try_into().unwrap(),
9657 pclasslinkage.param().abi(),
9658 core::mem::transmute(ppcomputeshader.unwrap_or(core::mem::zeroed())),
9659 )
9660 .ok()
9661 }
9662 }
9663 pub unsafe fn CreateClassLinkage(&self) -> windows_core::Result<ID3D11ClassLinkage> {
9664 unsafe {
9665 let mut result__ = core::mem::zeroed();
9666 (windows_core::Interface::vtable(self).CreateClassLinkage)(
9667 windows_core::Interface::as_raw(self),
9668 &mut result__,
9669 )
9670 .and_then(|| windows_core::Type::from_abi(result__))
9671 }
9672 }
9673 pub unsafe fn CreateBlendState(
9674 &self,
9675 pblendstatedesc: *const D3D11_BLEND_DESC,
9676 ppblendstate: Option<*mut Option<ID3D11BlendState>>,
9677 ) -> windows_core::Result<()> {
9678 unsafe {
9679 (windows_core::Interface::vtable(self).CreateBlendState)(
9680 windows_core::Interface::as_raw(self),
9681 pblendstatedesc,
9682 core::mem::transmute(ppblendstate.unwrap_or(core::mem::zeroed())),
9683 )
9684 .ok()
9685 }
9686 }
9687 pub unsafe fn CreateDepthStencilState(
9688 &self,
9689 pdepthstencildesc: *const D3D11_DEPTH_STENCIL_DESC,
9690 ppdepthstencilstate: Option<*mut Option<ID3D11DepthStencilState>>,
9691 ) -> windows_core::Result<()> {
9692 unsafe {
9693 (windows_core::Interface::vtable(self).CreateDepthStencilState)(
9694 windows_core::Interface::as_raw(self),
9695 pdepthstencildesc,
9696 core::mem::transmute(ppdepthstencilstate.unwrap_or(core::mem::zeroed())),
9697 )
9698 .ok()
9699 }
9700 }
9701 pub unsafe fn CreateRasterizerState(
9702 &self,
9703 prasterizerdesc: *const D3D11_RASTERIZER_DESC,
9704 pprasterizerstate: Option<*mut Option<ID3D11RasterizerState>>,
9705 ) -> windows_core::Result<()> {
9706 unsafe {
9707 (windows_core::Interface::vtable(self).CreateRasterizerState)(
9708 windows_core::Interface::as_raw(self),
9709 prasterizerdesc,
9710 core::mem::transmute(pprasterizerstate.unwrap_or(core::mem::zeroed())),
9711 )
9712 .ok()
9713 }
9714 }
9715 pub unsafe fn CreateSamplerState(
9716 &self,
9717 psamplerdesc: *const D3D11_SAMPLER_DESC,
9718 ppsamplerstate: Option<*mut Option<ID3D11SamplerState>>,
9719 ) -> windows_core::Result<()> {
9720 unsafe {
9721 (windows_core::Interface::vtable(self).CreateSamplerState)(
9722 windows_core::Interface::as_raw(self),
9723 psamplerdesc,
9724 core::mem::transmute(ppsamplerstate.unwrap_or(core::mem::zeroed())),
9725 )
9726 .ok()
9727 }
9728 }
9729 pub unsafe fn CreateQuery(
9730 &self,
9731 pquerydesc: *const D3D11_QUERY_DESC,
9732 ppquery: Option<*mut Option<ID3D11Query>>,
9733 ) -> windows_core::Result<()> {
9734 unsafe {
9735 (windows_core::Interface::vtable(self).CreateQuery)(
9736 windows_core::Interface::as_raw(self),
9737 pquerydesc,
9738 core::mem::transmute(ppquery.unwrap_or(core::mem::zeroed())),
9739 )
9740 .ok()
9741 }
9742 }
9743 pub unsafe fn CreatePredicate(
9744 &self,
9745 ppredicatedesc: *const D3D11_QUERY_DESC,
9746 pppredicate: Option<*mut Option<ID3D11Predicate>>,
9747 ) -> windows_core::Result<()> {
9748 unsafe {
9749 (windows_core::Interface::vtable(self).CreatePredicate)(
9750 windows_core::Interface::as_raw(self),
9751 ppredicatedesc,
9752 core::mem::transmute(pppredicate.unwrap_or(core::mem::zeroed())),
9753 )
9754 .ok()
9755 }
9756 }
9757 pub unsafe fn CreateCounter(
9758 &self,
9759 pcounterdesc: *const D3D11_COUNTER_DESC,
9760 ppcounter: Option<*mut Option<ID3D11Counter>>,
9761 ) -> windows_core::Result<()> {
9762 unsafe {
9763 (windows_core::Interface::vtable(self).CreateCounter)(
9764 windows_core::Interface::as_raw(self),
9765 pcounterdesc,
9766 core::mem::transmute(ppcounter.unwrap_or(core::mem::zeroed())),
9767 )
9768 .ok()
9769 }
9770 }
9771 pub unsafe fn CreateDeferredContext(
9772 &self,
9773 contextflags: u32,
9774 ppdeferredcontext: Option<*mut Option<ID3D11DeviceContext>>,
9775 ) -> windows_core::Result<()> {
9776 unsafe {
9777 (windows_core::Interface::vtable(self).CreateDeferredContext)(
9778 windows_core::Interface::as_raw(self),
9779 contextflags,
9780 core::mem::transmute(ppdeferredcontext.unwrap_or(core::mem::zeroed())),
9781 )
9782 .ok()
9783 }
9784 }
9785 pub unsafe fn OpenSharedResource<T>(
9786 &self,
9787 hresource: crate::Foundation::HANDLE,
9788 result__: *mut Option<T>,
9789 ) -> windows_core::Result<()>
9790 where
9791 T: windows_core::Interface,
9792 {
9793 unsafe {
9794 (windows_core::Interface::vtable(self).OpenSharedResource)(
9795 windows_core::Interface::as_raw(self),
9796 hresource,
9797 &T::IID,
9798 result__ as *mut _ as *mut _,
9799 )
9800 .ok()
9801 }
9802 }
9803 #[cfg(feature = "Win32_Graphics_Dxgi_Common")]
9804 pub unsafe fn CheckFormatSupport(
9805 &self,
9806 format: crate::Dxgi::Common::DXGI_FORMAT,
9807 ) -> windows_core::Result<u32> {
9808 unsafe {
9809 let mut result__ = core::mem::zeroed();
9810 (windows_core::Interface::vtable(self).CheckFormatSupport)(
9811 windows_core::Interface::as_raw(self),
9812 format,
9813 &mut result__,
9814 )
9815 .map(|| result__)
9816 }
9817 }
9818 #[cfg(feature = "Win32_Graphics_Dxgi_Common")]
9819 pub unsafe fn CheckMultisampleQualityLevels(
9820 &self,
9821 format: crate::Dxgi::Common::DXGI_FORMAT,
9822 samplecount: u32,
9823 ) -> windows_core::Result<u32> {
9824 unsafe {
9825 let mut result__ = core::mem::zeroed();
9826 (windows_core::Interface::vtable(self).CheckMultisampleQualityLevels)(
9827 windows_core::Interface::as_raw(self),
9828 format,
9829 samplecount,
9830 &mut result__,
9831 )
9832 .map(|| result__)
9833 }
9834 }
9835 pub unsafe fn CheckCounterInfo(&self) -> D3D11_COUNTER_INFO {
9836 unsafe {
9837 let mut result__ = core::mem::zeroed();
9838 (windows_core::Interface::vtable(self).CheckCounterInfo)(
9839 windows_core::Interface::as_raw(self),
9840 &mut result__,
9841 );
9842 result__
9843 }
9844 }
9845 pub unsafe fn CheckCounter(
9846 &self,
9847 pdesc: *const D3D11_COUNTER_DESC,
9848 ptype: *mut D3D11_COUNTER_TYPE,
9849 pactivecounters: *mut u32,
9850 szname: Option<crate::core_supplemental::PSTR>,
9851 pnamelength: Option<*mut u32>,
9852 szunits: Option<crate::core_supplemental::PSTR>,
9853 punitslength: Option<*mut u32>,
9854 szdescription: Option<crate::core_supplemental::PSTR>,
9855 pdescriptionlength: Option<*mut u32>,
9856 ) -> windows_core::Result<()> {
9857 unsafe {
9858 (windows_core::Interface::vtable(self).CheckCounter)(
9859 windows_core::Interface::as_raw(self),
9860 pdesc,
9861 core::mem::transmute(ptype),
9862 core::mem::transmute(pactivecounters),
9863 core::mem::transmute(szname.unwrap_or(core::mem::zeroed())),
9864 core::mem::transmute(pnamelength.unwrap_or(core::mem::zeroed())),
9865 core::mem::transmute(szunits.unwrap_or(core::mem::zeroed())),
9866 core::mem::transmute(punitslength.unwrap_or(core::mem::zeroed())),
9867 core::mem::transmute(szdescription.unwrap_or(core::mem::zeroed())),
9868 core::mem::transmute(pdescriptionlength.unwrap_or(core::mem::zeroed())),
9869 )
9870 .ok()
9871 }
9872 }
9873 pub unsafe fn CheckFeatureSupport(
9874 &self,
9875 feature: D3D11_FEATURE,
9876 pfeaturesupportdata: *mut core::ffi::c_void,
9877 featuresupportdatasize: u32,
9878 ) -> windows_core::Result<()> {
9879 unsafe {
9880 (windows_core::Interface::vtable(self).CheckFeatureSupport)(
9881 windows_core::Interface::as_raw(self),
9882 feature,
9883 core::mem::transmute(pfeaturesupportdata),
9884 featuresupportdatasize,
9885 )
9886 .ok()
9887 }
9888 }
9889 pub unsafe fn GetPrivateData(
9890 &self,
9891 guid: *const windows_core::GUID,
9892 pdatasize: *mut u32,
9893 pdata: Option<*mut core::ffi::c_void>,
9894 ) -> windows_core::Result<()> {
9895 unsafe {
9896 (windows_core::Interface::vtable(self).GetPrivateData)(
9897 windows_core::Interface::as_raw(self),
9898 guid,
9899 core::mem::transmute(pdatasize),
9900 core::mem::transmute(pdata.unwrap_or(core::mem::zeroed())),
9901 )
9902 .ok()
9903 }
9904 }
9905 pub unsafe fn SetPrivateData(
9906 &self,
9907 guid: *const windows_core::GUID,
9908 datasize: u32,
9909 pdata: Option<*const core::ffi::c_void>,
9910 ) -> windows_core::Result<()> {
9911 unsafe {
9912 (windows_core::Interface::vtable(self).SetPrivateData)(
9913 windows_core::Interface::as_raw(self),
9914 guid,
9915 datasize,
9916 core::mem::transmute(pdata.unwrap_or(core::mem::zeroed())),
9917 )
9918 .ok()
9919 }
9920 }
9921 pub unsafe fn SetPrivateDataInterface<P1>(
9922 &self,
9923 guid: *const windows_core::GUID,
9924 pdata: P1,
9925 ) -> windows_core::Result<()>
9926 where
9927 P1: windows_core::Param<windows_core::IUnknown>,
9928 {
9929 unsafe {
9930 (windows_core::Interface::vtable(self).SetPrivateDataInterface)(
9931 windows_core::Interface::as_raw(self),
9932 guid,
9933 pdata.param().abi(),
9934 )
9935 .ok()
9936 }
9937 }
9938 #[cfg(feature = "Win32_Graphics_Direct3D")]
9939 pub unsafe fn GetFeatureLevel(&self) -> super::Direct3D::D3D_FEATURE_LEVEL {
9940 unsafe {
9941 (windows_core::Interface::vtable(self).GetFeatureLevel)(
9942 windows_core::Interface::as_raw(self),
9943 )
9944 }
9945 }
9946 pub unsafe fn GetCreationFlags(&self) -> u32 {
9947 unsafe {
9948 (windows_core::Interface::vtable(self).GetCreationFlags)(
9949 windows_core::Interface::as_raw(self),
9950 )
9951 }
9952 }
9953 pub unsafe fn GetDeviceRemovedReason(&self) -> windows_core::Result<()> {
9954 unsafe {
9955 (windows_core::Interface::vtable(self).GetDeviceRemovedReason)(
9956 windows_core::Interface::as_raw(self),
9957 )
9958 .ok()
9959 }
9960 }
9961 pub unsafe fn GetImmediateContext(&self) -> windows_core::Result<ID3D11DeviceContext> {
9962 unsafe {
9963 let mut result__ = core::mem::zeroed();
9964 (windows_core::Interface::vtable(self).GetImmediateContext)(
9965 windows_core::Interface::as_raw(self),
9966 &mut result__,
9967 );
9968 windows_core::Type::from_abi(result__)
9969 }
9970 }
9971 pub unsafe fn SetExceptionMode(&self, raiseflags: u32) -> windows_core::Result<()> {
9972 unsafe {
9973 (windows_core::Interface::vtable(self).SetExceptionMode)(
9974 windows_core::Interface::as_raw(self),
9975 raiseflags,
9976 )
9977 .ok()
9978 }
9979 }
9980 pub unsafe fn GetExceptionMode(&self) -> u32 {
9981 unsafe {
9982 (windows_core::Interface::vtable(self).GetExceptionMode)(
9983 windows_core::Interface::as_raw(self),
9984 )
9985 }
9986 }
9987}
9988#[repr(C)]
9989pub struct ID3D11Device_Vtbl {
9990 pub base__: windows_core::IUnknown_Vtbl,
9991 pub CreateBuffer: unsafe extern "system" fn(
9992 *mut core::ffi::c_void,
9993 *const D3D11_BUFFER_DESC,
9994 *const D3D11_SUBRESOURCE_DATA,
9995 *mut *mut core::ffi::c_void,
9996 ) -> windows_core::HRESULT,
9997 #[cfg(feature = "Win32_Graphics_Dxgi_Common")]
9998 pub CreateTexture1D: unsafe extern "system" fn(
9999 *mut core::ffi::c_void,
10000 *const D3D11_TEXTURE1D_DESC,
10001 *const D3D11_SUBRESOURCE_DATA,
10002 *mut *mut core::ffi::c_void,
10003 ) -> windows_core::HRESULT,
10004 #[cfg(not(feature = "Win32_Graphics_Dxgi_Common"))]
10005 CreateTexture1D: usize,
10006 #[cfg(feature = "Win32_Graphics_Dxgi_Common")]
10007 pub CreateTexture2D: unsafe extern "system" fn(
10008 *mut core::ffi::c_void,
10009 *const D3D11_TEXTURE2D_DESC,
10010 *const D3D11_SUBRESOURCE_DATA,
10011 *mut *mut core::ffi::c_void,
10012 ) -> windows_core::HRESULT,
10013 #[cfg(not(feature = "Win32_Graphics_Dxgi_Common"))]
10014 CreateTexture2D: usize,
10015 #[cfg(feature = "Win32_Graphics_Dxgi_Common")]
10016 pub CreateTexture3D: unsafe extern "system" fn(
10017 *mut core::ffi::c_void,
10018 *const D3D11_TEXTURE3D_DESC,
10019 *const D3D11_SUBRESOURCE_DATA,
10020 *mut *mut core::ffi::c_void,
10021 ) -> windows_core::HRESULT,
10022 #[cfg(not(feature = "Win32_Graphics_Dxgi_Common"))]
10023 CreateTexture3D: usize,
10024 #[cfg(all(
10025 feature = "Win32_Graphics_Direct3D",
10026 feature = "Win32_Graphics_Dxgi_Common"
10027 ))]
10028 pub CreateShaderResourceView: unsafe extern "system" fn(
10029 *mut core::ffi::c_void,
10030 *mut core::ffi::c_void,
10031 *const D3D11_SHADER_RESOURCE_VIEW_DESC,
10032 *mut *mut core::ffi::c_void,
10033 ) -> windows_core::HRESULT,
10034 #[cfg(not(all(
10035 feature = "Win32_Graphics_Direct3D",
10036 feature = "Win32_Graphics_Dxgi_Common"
10037 )))]
10038 CreateShaderResourceView: usize,
10039 #[cfg(feature = "Win32_Graphics_Dxgi_Common")]
10040 pub CreateUnorderedAccessView: unsafe extern "system" fn(
10041 *mut core::ffi::c_void,
10042 *mut core::ffi::c_void,
10043 *const D3D11_UNORDERED_ACCESS_VIEW_DESC,
10044 *mut *mut core::ffi::c_void,
10045 ) -> windows_core::HRESULT,
10046 #[cfg(not(feature = "Win32_Graphics_Dxgi_Common"))]
10047 CreateUnorderedAccessView: usize,
10048 #[cfg(feature = "Win32_Graphics_Dxgi_Common")]
10049 pub CreateRenderTargetView: unsafe extern "system" fn(
10050 *mut core::ffi::c_void,
10051 *mut core::ffi::c_void,
10052 *const D3D11_RENDER_TARGET_VIEW_DESC,
10053 *mut *mut core::ffi::c_void,
10054 ) -> windows_core::HRESULT,
10055 #[cfg(not(feature = "Win32_Graphics_Dxgi_Common"))]
10056 CreateRenderTargetView: usize,
10057 #[cfg(feature = "Win32_Graphics_Dxgi_Common")]
10058 pub CreateDepthStencilView: unsafe extern "system" fn(
10059 *mut core::ffi::c_void,
10060 *mut core::ffi::c_void,
10061 *const D3D11_DEPTH_STENCIL_VIEW_DESC,
10062 *mut *mut core::ffi::c_void,
10063 ) -> windows_core::HRESULT,
10064 #[cfg(not(feature = "Win32_Graphics_Dxgi_Common"))]
10065 CreateDepthStencilView: usize,
10066 #[cfg(feature = "Win32_Graphics_Dxgi_Common")]
10067 pub CreateInputLayout: unsafe extern "system" fn(
10068 *mut core::ffi::c_void,
10069 *const D3D11_INPUT_ELEMENT_DESC,
10070 u32,
10071 *const core::ffi::c_void,
10072 usize,
10073 *mut *mut core::ffi::c_void,
10074 ) -> windows_core::HRESULT,
10075 #[cfg(not(feature = "Win32_Graphics_Dxgi_Common"))]
10076 CreateInputLayout: usize,
10077 pub CreateVertexShader: unsafe extern "system" fn(
10078 *mut core::ffi::c_void,
10079 *const core::ffi::c_void,
10080 usize,
10081 *mut core::ffi::c_void,
10082 *mut *mut core::ffi::c_void,
10083 ) -> windows_core::HRESULT,
10084 pub CreateGeometryShader: unsafe extern "system" fn(
10085 *mut core::ffi::c_void,
10086 *const core::ffi::c_void,
10087 usize,
10088 *mut core::ffi::c_void,
10089 *mut *mut core::ffi::c_void,
10090 ) -> windows_core::HRESULT,
10091 pub CreateGeometryShaderWithStreamOutput: unsafe extern "system" fn(
10092 *mut core::ffi::c_void,
10093 *const core::ffi::c_void,
10094 usize,
10095 *const D3D11_SO_DECLARATION_ENTRY,
10096 u32,
10097 *const u32,
10098 u32,
10099 u32,
10100 *mut core::ffi::c_void,
10101 *mut *mut core::ffi::c_void,
10102 )
10103 -> windows_core::HRESULT,
10104 pub CreatePixelShader: unsafe extern "system" fn(
10105 *mut core::ffi::c_void,
10106 *const core::ffi::c_void,
10107 usize,
10108 *mut core::ffi::c_void,
10109 *mut *mut core::ffi::c_void,
10110 ) -> windows_core::HRESULT,
10111 pub CreateHullShader: unsafe extern "system" fn(
10112 *mut core::ffi::c_void,
10113 *const core::ffi::c_void,
10114 usize,
10115 *mut core::ffi::c_void,
10116 *mut *mut core::ffi::c_void,
10117 ) -> windows_core::HRESULT,
10118 pub CreateDomainShader: unsafe extern "system" fn(
10119 *mut core::ffi::c_void,
10120 *const core::ffi::c_void,
10121 usize,
10122 *mut core::ffi::c_void,
10123 *mut *mut core::ffi::c_void,
10124 ) -> windows_core::HRESULT,
10125 pub CreateComputeShader: unsafe extern "system" fn(
10126 *mut core::ffi::c_void,
10127 *const core::ffi::c_void,
10128 usize,
10129 *mut core::ffi::c_void,
10130 *mut *mut core::ffi::c_void,
10131 ) -> windows_core::HRESULT,
10132 pub CreateClassLinkage: unsafe extern "system" fn(
10133 *mut core::ffi::c_void,
10134 *mut *mut core::ffi::c_void,
10135 ) -> windows_core::HRESULT,
10136 pub CreateBlendState: unsafe extern "system" fn(
10137 *mut core::ffi::c_void,
10138 *const D3D11_BLEND_DESC,
10139 *mut *mut core::ffi::c_void,
10140 ) -> windows_core::HRESULT,
10141 pub CreateDepthStencilState: unsafe extern "system" fn(
10142 *mut core::ffi::c_void,
10143 *const D3D11_DEPTH_STENCIL_DESC,
10144 *mut *mut core::ffi::c_void,
10145 ) -> windows_core::HRESULT,
10146 pub CreateRasterizerState: unsafe extern "system" fn(
10147 *mut core::ffi::c_void,
10148 *const D3D11_RASTERIZER_DESC,
10149 *mut *mut core::ffi::c_void,
10150 ) -> windows_core::HRESULT,
10151 pub CreateSamplerState: unsafe extern "system" fn(
10152 *mut core::ffi::c_void,
10153 *const D3D11_SAMPLER_DESC,
10154 *mut *mut core::ffi::c_void,
10155 ) -> windows_core::HRESULT,
10156 pub CreateQuery: unsafe extern "system" fn(
10157 *mut core::ffi::c_void,
10158 *const D3D11_QUERY_DESC,
10159 *mut *mut core::ffi::c_void,
10160 ) -> windows_core::HRESULT,
10161 pub CreatePredicate: unsafe extern "system" fn(
10162 *mut core::ffi::c_void,
10163 *const D3D11_QUERY_DESC,
10164 *mut *mut core::ffi::c_void,
10165 ) -> windows_core::HRESULT,
10166 pub CreateCounter: unsafe extern "system" fn(
10167 *mut core::ffi::c_void,
10168 *const D3D11_COUNTER_DESC,
10169 *mut *mut core::ffi::c_void,
10170 ) -> windows_core::HRESULT,
10171 pub CreateDeferredContext: unsafe extern "system" fn(
10172 *mut core::ffi::c_void,
10173 u32,
10174 *mut *mut core::ffi::c_void,
10175 ) -> windows_core::HRESULT,
10176 pub OpenSharedResource: unsafe extern "system" fn(
10177 *mut core::ffi::c_void,
10178 crate::Foundation::HANDLE,
10179 *const windows_core::GUID,
10180 *mut *mut core::ffi::c_void,
10181 ) -> windows_core::HRESULT,
10182 #[cfg(feature = "Win32_Graphics_Dxgi_Common")]
10183 pub CheckFormatSupport: unsafe extern "system" fn(
10184 *mut core::ffi::c_void,
10185 crate::Dxgi::Common::DXGI_FORMAT,
10186 *mut u32,
10187 ) -> windows_core::HRESULT,
10188 #[cfg(not(feature = "Win32_Graphics_Dxgi_Common"))]
10189 CheckFormatSupport: usize,
10190 #[cfg(feature = "Win32_Graphics_Dxgi_Common")]
10191 pub CheckMultisampleQualityLevels: unsafe extern "system" fn(
10192 *mut core::ffi::c_void,
10193 crate::Dxgi::Common::DXGI_FORMAT,
10194 u32,
10195 *mut u32,
10196 ) -> windows_core::HRESULT,
10197 #[cfg(not(feature = "Win32_Graphics_Dxgi_Common"))]
10198 CheckMultisampleQualityLevels: usize,
10199 pub CheckCounterInfo:
10200 unsafe extern "system" fn(*mut core::ffi::c_void, *mut D3D11_COUNTER_INFO),
10201 pub CheckCounter: unsafe extern "system" fn(
10202 *mut core::ffi::c_void,
10203 *const D3D11_COUNTER_DESC,
10204 *mut D3D11_COUNTER_TYPE,
10205 *mut u32,
10206 crate::core_supplemental::PSTR,
10207 *mut u32,
10208 crate::core_supplemental::PSTR,
10209 *mut u32,
10210 crate::core_supplemental::PSTR,
10211 *mut u32,
10212 ) -> windows_core::HRESULT,
10213 pub CheckFeatureSupport: unsafe extern "system" fn(
10214 *mut core::ffi::c_void,
10215 D3D11_FEATURE,
10216 *mut core::ffi::c_void,
10217 u32,
10218 ) -> windows_core::HRESULT,
10219 pub GetPrivateData: unsafe extern "system" fn(
10220 *mut core::ffi::c_void,
10221 *const windows_core::GUID,
10222 *mut u32,
10223 *mut core::ffi::c_void,
10224 ) -> windows_core::HRESULT,
10225 pub SetPrivateData: unsafe extern "system" fn(
10226 *mut core::ffi::c_void,
10227 *const windows_core::GUID,
10228 u32,
10229 *const core::ffi::c_void,
10230 ) -> windows_core::HRESULT,
10231 pub SetPrivateDataInterface: unsafe extern "system" fn(
10232 *mut core::ffi::c_void,
10233 *const windows_core::GUID,
10234 *mut core::ffi::c_void,
10235 ) -> windows_core::HRESULT,
10236 #[cfg(feature = "Win32_Graphics_Direct3D")]
10237 pub GetFeatureLevel:
10238 unsafe extern "system" fn(*mut core::ffi::c_void) -> super::Direct3D::D3D_FEATURE_LEVEL,
10239 #[cfg(not(feature = "Win32_Graphics_Direct3D"))]
10240 GetFeatureLevel: usize,
10241 pub GetCreationFlags: unsafe extern "system" fn(*mut core::ffi::c_void) -> u32,
10242 pub GetDeviceRemovedReason:
10243 unsafe extern "system" fn(*mut core::ffi::c_void) -> windows_core::HRESULT,
10244 pub GetImmediateContext:
10245 unsafe extern "system" fn(*mut core::ffi::c_void, *mut *mut core::ffi::c_void),
10246 pub SetExceptionMode:
10247 unsafe extern "system" fn(*mut core::ffi::c_void, u32) -> windows_core::HRESULT,
10248 pub GetExceptionMode: unsafe extern "system" fn(*mut core::ffi::c_void) -> u32,
10249}
10250#[cfg(all(
10251 feature = "Win32_Graphics_Direct3D",
10252 feature = "Win32_Graphics_Dxgi_Common"
10253))]
10254pub trait ID3D11Device_Impl: windows_core::IUnknownImpl {
10255 fn CreateBuffer(
10256 &self,
10257 pdesc: *const D3D11_BUFFER_DESC,
10258 pinitialdata: *const D3D11_SUBRESOURCE_DATA,
10259 ppbuffer: windows_core::OutRef<'_, ID3D11Buffer>,
10260 ) -> windows_core::Result<()>;
10261 fn CreateTexture1D(
10262 &self,
10263 pdesc: *const D3D11_TEXTURE1D_DESC,
10264 pinitialdata: *const D3D11_SUBRESOURCE_DATA,
10265 pptexture1d: windows_core::OutRef<'_, ID3D11Texture1D>,
10266 ) -> windows_core::Result<()>;
10267 fn CreateTexture2D(
10268 &self,
10269 pdesc: *const D3D11_TEXTURE2D_DESC,
10270 pinitialdata: *const D3D11_SUBRESOURCE_DATA,
10271 pptexture2d: windows_core::OutRef<'_, ID3D11Texture2D>,
10272 ) -> windows_core::Result<()>;
10273 fn CreateTexture3D(
10274 &self,
10275 pdesc: *const D3D11_TEXTURE3D_DESC,
10276 pinitialdata: *const D3D11_SUBRESOURCE_DATA,
10277 pptexture3d: windows_core::OutRef<'_, ID3D11Texture3D>,
10278 ) -> windows_core::Result<()>;
10279 fn CreateShaderResourceView(
10280 &self,
10281 presource: windows_core::Ref<'_, ID3D11Resource>,
10282 pdesc: *const D3D11_SHADER_RESOURCE_VIEW_DESC,
10283 ppsrview: windows_core::OutRef<'_, ID3D11ShaderResourceView>,
10284 ) -> windows_core::Result<()>;
10285 fn CreateUnorderedAccessView(
10286 &self,
10287 presource: windows_core::Ref<'_, ID3D11Resource>,
10288 pdesc: *const D3D11_UNORDERED_ACCESS_VIEW_DESC,
10289 ppuaview: windows_core::OutRef<'_, ID3D11UnorderedAccessView>,
10290 ) -> windows_core::Result<()>;
10291 fn CreateRenderTargetView(
10292 &self,
10293 presource: windows_core::Ref<'_, ID3D11Resource>,
10294 pdesc: *const D3D11_RENDER_TARGET_VIEW_DESC,
10295 pprtview: windows_core::OutRef<'_, ID3D11RenderTargetView>,
10296 ) -> windows_core::Result<()>;
10297 fn CreateDepthStencilView(
10298 &self,
10299 presource: windows_core::Ref<'_, ID3D11Resource>,
10300 pdesc: *const D3D11_DEPTH_STENCIL_VIEW_DESC,
10301 ppdepthstencilview: windows_core::OutRef<'_, ID3D11DepthStencilView>,
10302 ) -> windows_core::Result<()>;
10303 fn CreateInputLayout(
10304 &self,
10305 pinputelementdescs: *const D3D11_INPUT_ELEMENT_DESC,
10306 numelements: u32,
10307 pshaderbytecodewithinputsignature: *const core::ffi::c_void,
10308 bytecodelength: usize,
10309 ppinputlayout: windows_core::OutRef<'_, ID3D11InputLayout>,
10310 ) -> windows_core::Result<()>;
10311 fn CreateVertexShader(
10312 &self,
10313 pshaderbytecode: *const core::ffi::c_void,
10314 bytecodelength: usize,
10315 pclasslinkage: windows_core::Ref<'_, ID3D11ClassLinkage>,
10316 ppvertexshader: windows_core::OutRef<'_, ID3D11VertexShader>,
10317 ) -> windows_core::Result<()>;
10318 fn CreateGeometryShader(
10319 &self,
10320 pshaderbytecode: *const core::ffi::c_void,
10321 bytecodelength: usize,
10322 pclasslinkage: windows_core::Ref<'_, ID3D11ClassLinkage>,
10323 ppgeometryshader: windows_core::OutRef<'_, ID3D11GeometryShader>,
10324 ) -> windows_core::Result<()>;
10325 fn CreateGeometryShaderWithStreamOutput(
10326 &self,
10327 pshaderbytecode: *const core::ffi::c_void,
10328 bytecodelength: usize,
10329 psodeclaration: *const D3D11_SO_DECLARATION_ENTRY,
10330 numentries: u32,
10331 pbufferstrides: *const u32,
10332 numstrides: u32,
10333 rasterizedstream: u32,
10334 pclasslinkage: windows_core::Ref<'_, ID3D11ClassLinkage>,
10335 ppgeometryshader: windows_core::OutRef<'_, ID3D11GeometryShader>,
10336 ) -> windows_core::Result<()>;
10337 fn CreatePixelShader(
10338 &self,
10339 pshaderbytecode: *const core::ffi::c_void,
10340 bytecodelength: usize,
10341 pclasslinkage: windows_core::Ref<'_, ID3D11ClassLinkage>,
10342 pppixelshader: windows_core::OutRef<'_, ID3D11PixelShader>,
10343 ) -> windows_core::Result<()>;
10344 fn CreateHullShader(
10345 &self,
10346 pshaderbytecode: *const core::ffi::c_void,
10347 bytecodelength: usize,
10348 pclasslinkage: windows_core::Ref<'_, ID3D11ClassLinkage>,
10349 pphullshader: windows_core::OutRef<'_, ID3D11HullShader>,
10350 ) -> windows_core::Result<()>;
10351 fn CreateDomainShader(
10352 &self,
10353 pshaderbytecode: *const core::ffi::c_void,
10354 bytecodelength: usize,
10355 pclasslinkage: windows_core::Ref<'_, ID3D11ClassLinkage>,
10356 ppdomainshader: windows_core::OutRef<'_, ID3D11DomainShader>,
10357 ) -> windows_core::Result<()>;
10358 fn CreateComputeShader(
10359 &self,
10360 pshaderbytecode: *const core::ffi::c_void,
10361 bytecodelength: usize,
10362 pclasslinkage: windows_core::Ref<'_, ID3D11ClassLinkage>,
10363 ppcomputeshader: windows_core::OutRef<'_, ID3D11ComputeShader>,
10364 ) -> windows_core::Result<()>;
10365 fn CreateClassLinkage(&self) -> windows_core::Result<ID3D11ClassLinkage>;
10366 fn CreateBlendState(
10367 &self,
10368 pblendstatedesc: *const D3D11_BLEND_DESC,
10369 ppblendstate: windows_core::OutRef<'_, ID3D11BlendState>,
10370 ) -> windows_core::Result<()>;
10371 fn CreateDepthStencilState(
10372 &self,
10373 pdepthstencildesc: *const D3D11_DEPTH_STENCIL_DESC,
10374 ppdepthstencilstate: windows_core::OutRef<'_, ID3D11DepthStencilState>,
10375 ) -> windows_core::Result<()>;
10376 fn CreateRasterizerState(
10377 &self,
10378 prasterizerdesc: *const D3D11_RASTERIZER_DESC,
10379 pprasterizerstate: windows_core::OutRef<'_, ID3D11RasterizerState>,
10380 ) -> windows_core::Result<()>;
10381 fn CreateSamplerState(
10382 &self,
10383 psamplerdesc: *const D3D11_SAMPLER_DESC,
10384 ppsamplerstate: windows_core::OutRef<'_, ID3D11SamplerState>,
10385 ) -> windows_core::Result<()>;
10386 fn CreateQuery(
10387 &self,
10388 pquerydesc: *const D3D11_QUERY_DESC,
10389 ppquery: windows_core::OutRef<'_, ID3D11Query>,
10390 ) -> windows_core::Result<()>;
10391 fn CreatePredicate(
10392 &self,
10393 ppredicatedesc: *const D3D11_QUERY_DESC,
10394 pppredicate: windows_core::OutRef<'_, ID3D11Predicate>,
10395 ) -> windows_core::Result<()>;
10396 fn CreateCounter(
10397 &self,
10398 pcounterdesc: *const D3D11_COUNTER_DESC,
10399 ppcounter: windows_core::OutRef<'_, ID3D11Counter>,
10400 ) -> windows_core::Result<()>;
10401 fn CreateDeferredContext(
10402 &self,
10403 contextflags: u32,
10404 ppdeferredcontext: windows_core::OutRef<'_, ID3D11DeviceContext>,
10405 ) -> windows_core::Result<()>;
10406 fn OpenSharedResource(
10407 &self,
10408 hresource: crate::Foundation::HANDLE,
10409 returnedinterface: *const windows_core::GUID,
10410 ppresource: *mut *mut core::ffi::c_void,
10411 ) -> windows_core::Result<()>;
10412 fn CheckFormatSupport(
10413 &self,
10414 format: crate::Dxgi::Common::DXGI_FORMAT,
10415 ) -> windows_core::Result<u32>;
10416 fn CheckMultisampleQualityLevels(
10417 &self,
10418 format: crate::Dxgi::Common::DXGI_FORMAT,
10419 samplecount: u32,
10420 ) -> windows_core::Result<u32>;
10421 fn CheckCounterInfo(&self, pcounterinfo: *mut D3D11_COUNTER_INFO);
10422 fn CheckCounter(
10423 &self,
10424 pdesc: *const D3D11_COUNTER_DESC,
10425 ptype: *mut D3D11_COUNTER_TYPE,
10426 pactivecounters: *mut u32,
10427 szname: crate::core_supplemental::PSTR,
10428 pnamelength: *mut u32,
10429 szunits: crate::core_supplemental::PSTR,
10430 punitslength: *mut u32,
10431 szdescription: crate::core_supplemental::PSTR,
10432 pdescriptionlength: *mut u32,
10433 ) -> windows_core::Result<()>;
10434 fn CheckFeatureSupport(
10435 &self,
10436 feature: D3D11_FEATURE,
10437 pfeaturesupportdata: *mut core::ffi::c_void,
10438 featuresupportdatasize: u32,
10439 ) -> windows_core::Result<()>;
10440 fn GetPrivateData(
10441 &self,
10442 guid: *const windows_core::GUID,
10443 pdatasize: *mut u32,
10444 pdata: *mut core::ffi::c_void,
10445 ) -> windows_core::Result<()>;
10446 fn SetPrivateData(
10447 &self,
10448 guid: *const windows_core::GUID,
10449 datasize: u32,
10450 pdata: *const core::ffi::c_void,
10451 ) -> windows_core::Result<()>;
10452 fn SetPrivateDataInterface(
10453 &self,
10454 guid: *const windows_core::GUID,
10455 pdata: windows_core::Ref<'_, windows_core::IUnknown>,
10456 ) -> windows_core::Result<()>;
10457 fn GetFeatureLevel(&self) -> super::Direct3D::D3D_FEATURE_LEVEL;
10458 fn GetCreationFlags(&self) -> u32;
10459 fn GetDeviceRemovedReason(&self) -> windows_core::Result<()>;
10460 fn GetImmediateContext(
10461 &self,
10462 ppimmediatecontext: windows_core::OutRef<'_, ID3D11DeviceContext>,
10463 );
10464 fn SetExceptionMode(&self, raiseflags: u32) -> windows_core::Result<()>;
10465 fn GetExceptionMode(&self) -> u32;
10466}
10467#[cfg(all(
10468 feature = "Win32_Graphics_Direct3D",
10469 feature = "Win32_Graphics_Dxgi_Common"
10470))]
10471impl ID3D11Device_Vtbl {
10472 pub const fn new<Identity: ID3D11Device_Impl, const OFFSET: isize>() -> Self {
10473 unsafe extern "system" fn CreateBuffer<Identity: ID3D11Device_Impl, const OFFSET: isize>(
10474 this: *mut core::ffi::c_void,
10475 pdesc: *const D3D11_BUFFER_DESC,
10476 pinitialdata: *const D3D11_SUBRESOURCE_DATA,
10477 ppbuffer: *mut *mut core::ffi::c_void,
10478 ) -> windows_core::HRESULT {
10479 unsafe {
10480 let this: &Identity =
10481 &*((this as *const *const ()).offset(OFFSET) as *const Identity);
10482 ID3D11Device_Impl::CreateBuffer(
10483 this,
10484 core::mem::transmute_copy(&pdesc),
10485 core::mem::transmute_copy(&pinitialdata),
10486 core::mem::transmute_copy(&ppbuffer),
10487 )
10488 .into()
10489 }
10490 }
10491 unsafe extern "system" fn CreateTexture1D<
10492 Identity: ID3D11Device_Impl,
10493 const OFFSET: isize,
10494 >(
10495 this: *mut core::ffi::c_void,
10496 pdesc: *const D3D11_TEXTURE1D_DESC,
10497 pinitialdata: *const D3D11_SUBRESOURCE_DATA,
10498 pptexture1d: *mut *mut core::ffi::c_void,
10499 ) -> windows_core::HRESULT {
10500 unsafe {
10501 let this: &Identity =
10502 &*((this as *const *const ()).offset(OFFSET) as *const Identity);
10503 ID3D11Device_Impl::CreateTexture1D(
10504 this,
10505 core::mem::transmute_copy(&pdesc),
10506 core::mem::transmute_copy(&pinitialdata),
10507 core::mem::transmute_copy(&pptexture1d),
10508 )
10509 .into()
10510 }
10511 }
10512 unsafe extern "system" fn CreateTexture2D<
10513 Identity: ID3D11Device_Impl,
10514 const OFFSET: isize,
10515 >(
10516 this: *mut core::ffi::c_void,
10517 pdesc: *const D3D11_TEXTURE2D_DESC,
10518 pinitialdata: *const D3D11_SUBRESOURCE_DATA,
10519 pptexture2d: *mut *mut core::ffi::c_void,
10520 ) -> windows_core::HRESULT {
10521 unsafe {
10522 let this: &Identity =
10523 &*((this as *const *const ()).offset(OFFSET) as *const Identity);
10524 ID3D11Device_Impl::CreateTexture2D(
10525 this,
10526 core::mem::transmute_copy(&pdesc),
10527 core::mem::transmute_copy(&pinitialdata),
10528 core::mem::transmute_copy(&pptexture2d),
10529 )
10530 .into()
10531 }
10532 }
10533 unsafe extern "system" fn CreateTexture3D<
10534 Identity: ID3D11Device_Impl,
10535 const OFFSET: isize,
10536 >(
10537 this: *mut core::ffi::c_void,
10538 pdesc: *const D3D11_TEXTURE3D_DESC,
10539 pinitialdata: *const D3D11_SUBRESOURCE_DATA,
10540 pptexture3d: *mut *mut core::ffi::c_void,
10541 ) -> windows_core::HRESULT {
10542 unsafe {
10543 let this: &Identity =
10544 &*((this as *const *const ()).offset(OFFSET) as *const Identity);
10545 ID3D11Device_Impl::CreateTexture3D(
10546 this,
10547 core::mem::transmute_copy(&pdesc),
10548 core::mem::transmute_copy(&pinitialdata),
10549 core::mem::transmute_copy(&pptexture3d),
10550 )
10551 .into()
10552 }
10553 }
10554 unsafe extern "system" fn CreateShaderResourceView<
10555 Identity: ID3D11Device_Impl,
10556 const OFFSET: isize,
10557 >(
10558 this: *mut core::ffi::c_void,
10559 presource: *mut core::ffi::c_void,
10560 pdesc: *const D3D11_SHADER_RESOURCE_VIEW_DESC,
10561 ppsrview: *mut *mut core::ffi::c_void,
10562 ) -> windows_core::HRESULT {
10563 unsafe {
10564 let this: &Identity =
10565 &*((this as *const *const ()).offset(OFFSET) as *const Identity);
10566 ID3D11Device_Impl::CreateShaderResourceView(
10567 this,
10568 core::mem::transmute_copy(&presource),
10569 core::mem::transmute_copy(&pdesc),
10570 core::mem::transmute_copy(&ppsrview),
10571 )
10572 .into()
10573 }
10574 }
10575 unsafe extern "system" fn CreateUnorderedAccessView<
10576 Identity: ID3D11Device_Impl,
10577 const OFFSET: isize,
10578 >(
10579 this: *mut core::ffi::c_void,
10580 presource: *mut core::ffi::c_void,
10581 pdesc: *const D3D11_UNORDERED_ACCESS_VIEW_DESC,
10582 ppuaview: *mut *mut core::ffi::c_void,
10583 ) -> windows_core::HRESULT {
10584 unsafe {
10585 let this: &Identity =
10586 &*((this as *const *const ()).offset(OFFSET) as *const Identity);
10587 ID3D11Device_Impl::CreateUnorderedAccessView(
10588 this,
10589 core::mem::transmute_copy(&presource),
10590 core::mem::transmute_copy(&pdesc),
10591 core::mem::transmute_copy(&ppuaview),
10592 )
10593 .into()
10594 }
10595 }
10596 unsafe extern "system" fn CreateRenderTargetView<
10597 Identity: ID3D11Device_Impl,
10598 const OFFSET: isize,
10599 >(
10600 this: *mut core::ffi::c_void,
10601 presource: *mut core::ffi::c_void,
10602 pdesc: *const D3D11_RENDER_TARGET_VIEW_DESC,
10603 pprtview: *mut *mut core::ffi::c_void,
10604 ) -> windows_core::HRESULT {
10605 unsafe {
10606 let this: &Identity =
10607 &*((this as *const *const ()).offset(OFFSET) as *const Identity);
10608 ID3D11Device_Impl::CreateRenderTargetView(
10609 this,
10610 core::mem::transmute_copy(&presource),
10611 core::mem::transmute_copy(&pdesc),
10612 core::mem::transmute_copy(&pprtview),
10613 )
10614 .into()
10615 }
10616 }
10617 unsafe extern "system" fn CreateDepthStencilView<
10618 Identity: ID3D11Device_Impl,
10619 const OFFSET: isize,
10620 >(
10621 this: *mut core::ffi::c_void,
10622 presource: *mut core::ffi::c_void,
10623 pdesc: *const D3D11_DEPTH_STENCIL_VIEW_DESC,
10624 ppdepthstencilview: *mut *mut core::ffi::c_void,
10625 ) -> windows_core::HRESULT {
10626 unsafe {
10627 let this: &Identity =
10628 &*((this as *const *const ()).offset(OFFSET) as *const Identity);
10629 ID3D11Device_Impl::CreateDepthStencilView(
10630 this,
10631 core::mem::transmute_copy(&presource),
10632 core::mem::transmute_copy(&pdesc),
10633 core::mem::transmute_copy(&ppdepthstencilview),
10634 )
10635 .into()
10636 }
10637 }
10638 unsafe extern "system" fn CreateInputLayout<
10639 Identity: ID3D11Device_Impl,
10640 const OFFSET: isize,
10641 >(
10642 this: *mut core::ffi::c_void,
10643 pinputelementdescs: *const D3D11_INPUT_ELEMENT_DESC,
10644 numelements: u32,
10645 pshaderbytecodewithinputsignature: *const core::ffi::c_void,
10646 bytecodelength: usize,
10647 ppinputlayout: *mut *mut core::ffi::c_void,
10648 ) -> windows_core::HRESULT {
10649 unsafe {
10650 let this: &Identity =
10651 &*((this as *const *const ()).offset(OFFSET) as *const Identity);
10652 ID3D11Device_Impl::CreateInputLayout(
10653 this,
10654 core::mem::transmute_copy(&pinputelementdescs),
10655 core::mem::transmute_copy(&numelements),
10656 core::mem::transmute_copy(&pshaderbytecodewithinputsignature),
10657 core::mem::transmute_copy(&bytecodelength),
10658 core::mem::transmute_copy(&ppinputlayout),
10659 )
10660 .into()
10661 }
10662 }
10663 unsafe extern "system" fn CreateVertexShader<
10664 Identity: ID3D11Device_Impl,
10665 const OFFSET: isize,
10666 >(
10667 this: *mut core::ffi::c_void,
10668 pshaderbytecode: *const core::ffi::c_void,
10669 bytecodelength: usize,
10670 pclasslinkage: *mut core::ffi::c_void,
10671 ppvertexshader: *mut *mut core::ffi::c_void,
10672 ) -> windows_core::HRESULT {
10673 unsafe {
10674 let this: &Identity =
10675 &*((this as *const *const ()).offset(OFFSET) as *const Identity);
10676 ID3D11Device_Impl::CreateVertexShader(
10677 this,
10678 core::mem::transmute_copy(&pshaderbytecode),
10679 core::mem::transmute_copy(&bytecodelength),
10680 core::mem::transmute_copy(&pclasslinkage),
10681 core::mem::transmute_copy(&ppvertexshader),
10682 )
10683 .into()
10684 }
10685 }
10686 unsafe extern "system" fn CreateGeometryShader<
10687 Identity: ID3D11Device_Impl,
10688 const OFFSET: isize,
10689 >(
10690 this: *mut core::ffi::c_void,
10691 pshaderbytecode: *const core::ffi::c_void,
10692 bytecodelength: usize,
10693 pclasslinkage: *mut core::ffi::c_void,
10694 ppgeometryshader: *mut *mut core::ffi::c_void,
10695 ) -> windows_core::HRESULT {
10696 unsafe {
10697 let this: &Identity =
10698 &*((this as *const *const ()).offset(OFFSET) as *const Identity);
10699 ID3D11Device_Impl::CreateGeometryShader(
10700 this,
10701 core::mem::transmute_copy(&pshaderbytecode),
10702 core::mem::transmute_copy(&bytecodelength),
10703 core::mem::transmute_copy(&pclasslinkage),
10704 core::mem::transmute_copy(&ppgeometryshader),
10705 )
10706 .into()
10707 }
10708 }
10709 unsafe extern "system" fn CreateGeometryShaderWithStreamOutput<
10710 Identity: ID3D11Device_Impl,
10711 const OFFSET: isize,
10712 >(
10713 this: *mut core::ffi::c_void,
10714 pshaderbytecode: *const core::ffi::c_void,
10715 bytecodelength: usize,
10716 psodeclaration: *const D3D11_SO_DECLARATION_ENTRY,
10717 numentries: u32,
10718 pbufferstrides: *const u32,
10719 numstrides: u32,
10720 rasterizedstream: u32,
10721 pclasslinkage: *mut core::ffi::c_void,
10722 ppgeometryshader: *mut *mut core::ffi::c_void,
10723 ) -> windows_core::HRESULT {
10724 unsafe {
10725 let this: &Identity =
10726 &*((this as *const *const ()).offset(OFFSET) as *const Identity);
10727 ID3D11Device_Impl::CreateGeometryShaderWithStreamOutput(
10728 this,
10729 core::mem::transmute_copy(&pshaderbytecode),
10730 core::mem::transmute_copy(&bytecodelength),
10731 core::mem::transmute_copy(&psodeclaration),
10732 core::mem::transmute_copy(&numentries),
10733 core::mem::transmute_copy(&pbufferstrides),
10734 core::mem::transmute_copy(&numstrides),
10735 core::mem::transmute_copy(&rasterizedstream),
10736 core::mem::transmute_copy(&pclasslinkage),
10737 core::mem::transmute_copy(&ppgeometryshader),
10738 )
10739 .into()
10740 }
10741 }
10742 unsafe extern "system" fn CreatePixelShader<
10743 Identity: ID3D11Device_Impl,
10744 const OFFSET: isize,
10745 >(
10746 this: *mut core::ffi::c_void,
10747 pshaderbytecode: *const core::ffi::c_void,
10748 bytecodelength: usize,
10749 pclasslinkage: *mut core::ffi::c_void,
10750 pppixelshader: *mut *mut core::ffi::c_void,
10751 ) -> windows_core::HRESULT {
10752 unsafe {
10753 let this: &Identity =
10754 &*((this as *const *const ()).offset(OFFSET) as *const Identity);
10755 ID3D11Device_Impl::CreatePixelShader(
10756 this,
10757 core::mem::transmute_copy(&pshaderbytecode),
10758 core::mem::transmute_copy(&bytecodelength),
10759 core::mem::transmute_copy(&pclasslinkage),
10760 core::mem::transmute_copy(&pppixelshader),
10761 )
10762 .into()
10763 }
10764 }
10765 unsafe extern "system" fn CreateHullShader<
10766 Identity: ID3D11Device_Impl,
10767 const OFFSET: isize,
10768 >(
10769 this: *mut core::ffi::c_void,
10770 pshaderbytecode: *const core::ffi::c_void,
10771 bytecodelength: usize,
10772 pclasslinkage: *mut core::ffi::c_void,
10773 pphullshader: *mut *mut core::ffi::c_void,
10774 ) -> windows_core::HRESULT {
10775 unsafe {
10776 let this: &Identity =
10777 &*((this as *const *const ()).offset(OFFSET) as *const Identity);
10778 ID3D11Device_Impl::CreateHullShader(
10779 this,
10780 core::mem::transmute_copy(&pshaderbytecode),
10781 core::mem::transmute_copy(&bytecodelength),
10782 core::mem::transmute_copy(&pclasslinkage),
10783 core::mem::transmute_copy(&pphullshader),
10784 )
10785 .into()
10786 }
10787 }
10788 unsafe extern "system" fn CreateDomainShader<
10789 Identity: ID3D11Device_Impl,
10790 const OFFSET: isize,
10791 >(
10792 this: *mut core::ffi::c_void,
10793 pshaderbytecode: *const core::ffi::c_void,
10794 bytecodelength: usize,
10795 pclasslinkage: *mut core::ffi::c_void,
10796 ppdomainshader: *mut *mut core::ffi::c_void,
10797 ) -> windows_core::HRESULT {
10798 unsafe {
10799 let this: &Identity =
10800 &*((this as *const *const ()).offset(OFFSET) as *const Identity);
10801 ID3D11Device_Impl::CreateDomainShader(
10802 this,
10803 core::mem::transmute_copy(&pshaderbytecode),
10804 core::mem::transmute_copy(&bytecodelength),
10805 core::mem::transmute_copy(&pclasslinkage),
10806 core::mem::transmute_copy(&ppdomainshader),
10807 )
10808 .into()
10809 }
10810 }
10811 unsafe extern "system" fn CreateComputeShader<
10812 Identity: ID3D11Device_Impl,
10813 const OFFSET: isize,
10814 >(
10815 this: *mut core::ffi::c_void,
10816 pshaderbytecode: *const core::ffi::c_void,
10817 bytecodelength: usize,
10818 pclasslinkage: *mut core::ffi::c_void,
10819 ppcomputeshader: *mut *mut core::ffi::c_void,
10820 ) -> windows_core::HRESULT {
10821 unsafe {
10822 let this: &Identity =
10823 &*((this as *const *const ()).offset(OFFSET) as *const Identity);
10824 ID3D11Device_Impl::CreateComputeShader(
10825 this,
10826 core::mem::transmute_copy(&pshaderbytecode),
10827 core::mem::transmute_copy(&bytecodelength),
10828 core::mem::transmute_copy(&pclasslinkage),
10829 core::mem::transmute_copy(&ppcomputeshader),
10830 )
10831 .into()
10832 }
10833 }
10834 unsafe extern "system" fn CreateClassLinkage<
10835 Identity: ID3D11Device_Impl,
10836 const OFFSET: isize,
10837 >(
10838 this: *mut core::ffi::c_void,
10839 pplinkage: *mut *mut core::ffi::c_void,
10840 ) -> windows_core::HRESULT {
10841 unsafe {
10842 let this: &Identity =
10843 &*((this as *const *const ()).offset(OFFSET) as *const Identity);
10844 match ID3D11Device_Impl::CreateClassLinkage(this) {
10845 Ok(ok__) => {
10846 pplinkage.write(core::mem::transmute(ok__));
10847 windows_core::HRESULT(0)
10848 }
10849 Err(err) => err.into(),
10850 }
10851 }
10852 }
10853 unsafe extern "system" fn CreateBlendState<
10854 Identity: ID3D11Device_Impl,
10855 const OFFSET: isize,
10856 >(
10857 this: *mut core::ffi::c_void,
10858 pblendstatedesc: *const D3D11_BLEND_DESC,
10859 ppblendstate: *mut *mut core::ffi::c_void,
10860 ) -> windows_core::HRESULT {
10861 unsafe {
10862 let this: &Identity =
10863 &*((this as *const *const ()).offset(OFFSET) as *const Identity);
10864 ID3D11Device_Impl::CreateBlendState(
10865 this,
10866 core::mem::transmute_copy(&pblendstatedesc),
10867 core::mem::transmute_copy(&ppblendstate),
10868 )
10869 .into()
10870 }
10871 }
10872 unsafe extern "system" fn CreateDepthStencilState<
10873 Identity: ID3D11Device_Impl,
10874 const OFFSET: isize,
10875 >(
10876 this: *mut core::ffi::c_void,
10877 pdepthstencildesc: *const D3D11_DEPTH_STENCIL_DESC,
10878 ppdepthstencilstate: *mut *mut core::ffi::c_void,
10879 ) -> windows_core::HRESULT {
10880 unsafe {
10881 let this: &Identity =
10882 &*((this as *const *const ()).offset(OFFSET) as *const Identity);
10883 ID3D11Device_Impl::CreateDepthStencilState(
10884 this,
10885 core::mem::transmute_copy(&pdepthstencildesc),
10886 core::mem::transmute_copy(&ppdepthstencilstate),
10887 )
10888 .into()
10889 }
10890 }
10891 unsafe extern "system" fn CreateRasterizerState<
10892 Identity: ID3D11Device_Impl,
10893 const OFFSET: isize,
10894 >(
10895 this: *mut core::ffi::c_void,
10896 prasterizerdesc: *const D3D11_RASTERIZER_DESC,
10897 pprasterizerstate: *mut *mut core::ffi::c_void,
10898 ) -> windows_core::HRESULT {
10899 unsafe {
10900 let this: &Identity =
10901 &*((this as *const *const ()).offset(OFFSET) as *const Identity);
10902 ID3D11Device_Impl::CreateRasterizerState(
10903 this,
10904 core::mem::transmute_copy(&prasterizerdesc),
10905 core::mem::transmute_copy(&pprasterizerstate),
10906 )
10907 .into()
10908 }
10909 }
10910 unsafe extern "system" fn CreateSamplerState<
10911 Identity: ID3D11Device_Impl,
10912 const OFFSET: isize,
10913 >(
10914 this: *mut core::ffi::c_void,
10915 psamplerdesc: *const D3D11_SAMPLER_DESC,
10916 ppsamplerstate: *mut *mut core::ffi::c_void,
10917 ) -> windows_core::HRESULT {
10918 unsafe {
10919 let this: &Identity =
10920 &*((this as *const *const ()).offset(OFFSET) as *const Identity);
10921 ID3D11Device_Impl::CreateSamplerState(
10922 this,
10923 core::mem::transmute_copy(&psamplerdesc),
10924 core::mem::transmute_copy(&ppsamplerstate),
10925 )
10926 .into()
10927 }
10928 }
10929 unsafe extern "system" fn CreateQuery<Identity: ID3D11Device_Impl, const OFFSET: isize>(
10930 this: *mut core::ffi::c_void,
10931 pquerydesc: *const D3D11_QUERY_DESC,
10932 ppquery: *mut *mut core::ffi::c_void,
10933 ) -> windows_core::HRESULT {
10934 unsafe {
10935 let this: &Identity =
10936 &*((this as *const *const ()).offset(OFFSET) as *const Identity);
10937 ID3D11Device_Impl::CreateQuery(
10938 this,
10939 core::mem::transmute_copy(&pquerydesc),
10940 core::mem::transmute_copy(&ppquery),
10941 )
10942 .into()
10943 }
10944 }
10945 unsafe extern "system" fn CreatePredicate<
10946 Identity: ID3D11Device_Impl,
10947 const OFFSET: isize,
10948 >(
10949 this: *mut core::ffi::c_void,
10950 ppredicatedesc: *const D3D11_QUERY_DESC,
10951 pppredicate: *mut *mut core::ffi::c_void,
10952 ) -> windows_core::HRESULT {
10953 unsafe {
10954 let this: &Identity =
10955 &*((this as *const *const ()).offset(OFFSET) as *const Identity);
10956 ID3D11Device_Impl::CreatePredicate(
10957 this,
10958 core::mem::transmute_copy(&ppredicatedesc),
10959 core::mem::transmute_copy(&pppredicate),
10960 )
10961 .into()
10962 }
10963 }
10964 unsafe extern "system" fn CreateCounter<
10965 Identity: ID3D11Device_Impl,
10966 const OFFSET: isize,
10967 >(
10968 this: *mut core::ffi::c_void,
10969 pcounterdesc: *const D3D11_COUNTER_DESC,
10970 ppcounter: *mut *mut core::ffi::c_void,
10971 ) -> windows_core::HRESULT {
10972 unsafe {
10973 let this: &Identity =
10974 &*((this as *const *const ()).offset(OFFSET) as *const Identity);
10975 ID3D11Device_Impl::CreateCounter(
10976 this,
10977 core::mem::transmute_copy(&pcounterdesc),
10978 core::mem::transmute_copy(&ppcounter),
10979 )
10980 .into()
10981 }
10982 }
10983 unsafe extern "system" fn CreateDeferredContext<
10984 Identity: ID3D11Device_Impl,
10985 const OFFSET: isize,
10986 >(
10987 this: *mut core::ffi::c_void,
10988 contextflags: u32,
10989 ppdeferredcontext: *mut *mut core::ffi::c_void,
10990 ) -> windows_core::HRESULT {
10991 unsafe {
10992 let this: &Identity =
10993 &*((this as *const *const ()).offset(OFFSET) as *const Identity);
10994 ID3D11Device_Impl::CreateDeferredContext(
10995 this,
10996 core::mem::transmute_copy(&contextflags),
10997 core::mem::transmute_copy(&ppdeferredcontext),
10998 )
10999 .into()
11000 }
11001 }
11002 unsafe extern "system" fn OpenSharedResource<
11003 Identity: ID3D11Device_Impl,
11004 const OFFSET: isize,
11005 >(
11006 this: *mut core::ffi::c_void,
11007 hresource: crate::Foundation::HANDLE,
11008 returnedinterface: *const windows_core::GUID,
11009 ppresource: *mut *mut core::ffi::c_void,
11010 ) -> windows_core::HRESULT {
11011 unsafe {
11012 let this: &Identity =
11013 &*((this as *const *const ()).offset(OFFSET) as *const Identity);
11014 ID3D11Device_Impl::OpenSharedResource(
11015 this,
11016 core::mem::transmute_copy(&hresource),
11017 core::mem::transmute_copy(&returnedinterface),
11018 core::mem::transmute_copy(&ppresource),
11019 )
11020 .into()
11021 }
11022 }
11023 unsafe extern "system" fn CheckFormatSupport<
11024 Identity: ID3D11Device_Impl,
11025 const OFFSET: isize,
11026 >(
11027 this: *mut core::ffi::c_void,
11028 format: crate::Dxgi::Common::DXGI_FORMAT,
11029 pformatsupport: *mut u32,
11030 ) -> windows_core::HRESULT {
11031 unsafe {
11032 let this: &Identity =
11033 &*((this as *const *const ()).offset(OFFSET) as *const Identity);
11034 match ID3D11Device_Impl::CheckFormatSupport(
11035 this,
11036 core::mem::transmute_copy(&format),
11037 ) {
11038 Ok(ok__) => {
11039 pformatsupport.write(core::mem::transmute(ok__));
11040 windows_core::HRESULT(0)
11041 }
11042 Err(err) => err.into(),
11043 }
11044 }
11045 }
11046 unsafe extern "system" fn CheckMultisampleQualityLevels<
11047 Identity: ID3D11Device_Impl,
11048 const OFFSET: isize,
11049 >(
11050 this: *mut core::ffi::c_void,
11051 format: crate::Dxgi::Common::DXGI_FORMAT,
11052 samplecount: u32,
11053 pnumqualitylevels: *mut u32,
11054 ) -> windows_core::HRESULT {
11055 unsafe {
11056 let this: &Identity =
11057 &*((this as *const *const ()).offset(OFFSET) as *const Identity);
11058 match ID3D11Device_Impl::CheckMultisampleQualityLevels(
11059 this,
11060 core::mem::transmute_copy(&format),
11061 core::mem::transmute_copy(&samplecount),
11062 ) {
11063 Ok(ok__) => {
11064 pnumqualitylevels.write(core::mem::transmute(ok__));
11065 windows_core::HRESULT(0)
11066 }
11067 Err(err) => err.into(),
11068 }
11069 }
11070 }
11071 unsafe extern "system" fn CheckCounterInfo<
11072 Identity: ID3D11Device_Impl,
11073 const OFFSET: isize,
11074 >(
11075 this: *mut core::ffi::c_void,
11076 pcounterinfo: *mut D3D11_COUNTER_INFO,
11077 ) {
11078 unsafe {
11079 let this: &Identity =
11080 &*((this as *const *const ()).offset(OFFSET) as *const Identity);
11081 ID3D11Device_Impl::CheckCounterInfo(this, core::mem::transmute_copy(&pcounterinfo))
11082 }
11083 }
11084 unsafe extern "system" fn CheckCounter<Identity: ID3D11Device_Impl, const OFFSET: isize>(
11085 this: *mut core::ffi::c_void,
11086 pdesc: *const D3D11_COUNTER_DESC,
11087 ptype: *mut D3D11_COUNTER_TYPE,
11088 pactivecounters: *mut u32,
11089 szname: crate::core_supplemental::PSTR,
11090 pnamelength: *mut u32,
11091 szunits: crate::core_supplemental::PSTR,
11092 punitslength: *mut u32,
11093 szdescription: crate::core_supplemental::PSTR,
11094 pdescriptionlength: *mut u32,
11095 ) -> windows_core::HRESULT {
11096 unsafe {
11097 let this: &Identity =
11098 &*((this as *const *const ()).offset(OFFSET) as *const Identity);
11099 ID3D11Device_Impl::CheckCounter(
11100 this,
11101 core::mem::transmute_copy(&pdesc),
11102 core::mem::transmute_copy(&ptype),
11103 core::mem::transmute_copy(&pactivecounters),
11104 core::mem::transmute_copy(&szname),
11105 core::mem::transmute_copy(&pnamelength),
11106 core::mem::transmute_copy(&szunits),
11107 core::mem::transmute_copy(&punitslength),
11108 core::mem::transmute_copy(&szdescription),
11109 core::mem::transmute_copy(&pdescriptionlength),
11110 )
11111 .into()
11112 }
11113 }
11114 unsafe extern "system" fn CheckFeatureSupport<
11115 Identity: ID3D11Device_Impl,
11116 const OFFSET: isize,
11117 >(
11118 this: *mut core::ffi::c_void,
11119 feature: D3D11_FEATURE,
11120 pfeaturesupportdata: *mut core::ffi::c_void,
11121 featuresupportdatasize: u32,
11122 ) -> windows_core::HRESULT {
11123 unsafe {
11124 let this: &Identity =
11125 &*((this as *const *const ()).offset(OFFSET) as *const Identity);
11126 ID3D11Device_Impl::CheckFeatureSupport(
11127 this,
11128 core::mem::transmute_copy(&feature),
11129 core::mem::transmute_copy(&pfeaturesupportdata),
11130 core::mem::transmute_copy(&featuresupportdatasize),
11131 )
11132 .into()
11133 }
11134 }
11135 unsafe extern "system" fn GetPrivateData<
11136 Identity: ID3D11Device_Impl,
11137 const OFFSET: isize,
11138 >(
11139 this: *mut core::ffi::c_void,
11140 guid: *const windows_core::GUID,
11141 pdatasize: *mut u32,
11142 pdata: *mut core::ffi::c_void,
11143 ) -> windows_core::HRESULT {
11144 unsafe {
11145 let this: &Identity =
11146 &*((this as *const *const ()).offset(OFFSET) as *const Identity);
11147 ID3D11Device_Impl::GetPrivateData(
11148 this,
11149 core::mem::transmute_copy(&guid),
11150 core::mem::transmute_copy(&pdatasize),
11151 core::mem::transmute_copy(&pdata),
11152 )
11153 .into()
11154 }
11155 }
11156 unsafe extern "system" fn SetPrivateData<
11157 Identity: ID3D11Device_Impl,
11158 const OFFSET: isize,
11159 >(
11160 this: *mut core::ffi::c_void,
11161 guid: *const windows_core::GUID,
11162 datasize: u32,
11163 pdata: *const core::ffi::c_void,
11164 ) -> windows_core::HRESULT {
11165 unsafe {
11166 let this: &Identity =
11167 &*((this as *const *const ()).offset(OFFSET) as *const Identity);
11168 ID3D11Device_Impl::SetPrivateData(
11169 this,
11170 core::mem::transmute_copy(&guid),
11171 core::mem::transmute_copy(&datasize),
11172 core::mem::transmute_copy(&pdata),
11173 )
11174 .into()
11175 }
11176 }
11177 unsafe extern "system" fn SetPrivateDataInterface<
11178 Identity: ID3D11Device_Impl,
11179 const OFFSET: isize,
11180 >(
11181 this: *mut core::ffi::c_void,
11182 guid: *const windows_core::GUID,
11183 pdata: *mut core::ffi::c_void,
11184 ) -> windows_core::HRESULT {
11185 unsafe {
11186 let this: &Identity =
11187 &*((this as *const *const ()).offset(OFFSET) as *const Identity);
11188 ID3D11Device_Impl::SetPrivateDataInterface(
11189 this,
11190 core::mem::transmute_copy(&guid),
11191 core::mem::transmute_copy(&pdata),
11192 )
11193 .into()
11194 }
11195 }
11196 unsafe extern "system" fn GetFeatureLevel<
11197 Identity: ID3D11Device_Impl,
11198 const OFFSET: isize,
11199 >(
11200 this: *mut core::ffi::c_void,
11201 ) -> super::Direct3D::D3D_FEATURE_LEVEL {
11202 unsafe {
11203 let this: &Identity =
11204 &*((this as *const *const ()).offset(OFFSET) as *const Identity);
11205 ID3D11Device_Impl::GetFeatureLevel(this)
11206 }
11207 }
11208 unsafe extern "system" fn GetCreationFlags<
11209 Identity: ID3D11Device_Impl,
11210 const OFFSET: isize,
11211 >(
11212 this: *mut core::ffi::c_void,
11213 ) -> u32 {
11214 unsafe {
11215 let this: &Identity =
11216 &*((this as *const *const ()).offset(OFFSET) as *const Identity);
11217 ID3D11Device_Impl::GetCreationFlags(this)
11218 }
11219 }
11220 unsafe extern "system" fn GetDeviceRemovedReason<
11221 Identity: ID3D11Device_Impl,
11222 const OFFSET: isize,
11223 >(
11224 this: *mut core::ffi::c_void,
11225 ) -> windows_core::HRESULT {
11226 unsafe {
11227 let this: &Identity =
11228 &*((this as *const *const ()).offset(OFFSET) as *const Identity);
11229 ID3D11Device_Impl::GetDeviceRemovedReason(this).into()
11230 }
11231 }
11232 unsafe extern "system" fn GetImmediateContext<
11233 Identity: ID3D11Device_Impl,
11234 const OFFSET: isize,
11235 >(
11236 this: *mut core::ffi::c_void,
11237 ppimmediatecontext: *mut *mut core::ffi::c_void,
11238 ) {
11239 unsafe {
11240 let this: &Identity =
11241 &*((this as *const *const ()).offset(OFFSET) as *const Identity);
11242 ID3D11Device_Impl::GetImmediateContext(
11243 this,
11244 core::mem::transmute_copy(&ppimmediatecontext),
11245 )
11246 }
11247 }
11248 unsafe extern "system" fn SetExceptionMode<
11249 Identity: ID3D11Device_Impl,
11250 const OFFSET: isize,
11251 >(
11252 this: *mut core::ffi::c_void,
11253 raiseflags: u32,
11254 ) -> windows_core::HRESULT {
11255 unsafe {
11256 let this: &Identity =
11257 &*((this as *const *const ()).offset(OFFSET) as *const Identity);
11258 ID3D11Device_Impl::SetExceptionMode(this, core::mem::transmute_copy(&raiseflags))
11259 .into()
11260 }
11261 }
11262 unsafe extern "system" fn GetExceptionMode<
11263 Identity: ID3D11Device_Impl,
11264 const OFFSET: isize,
11265 >(
11266 this: *mut core::ffi::c_void,
11267 ) -> u32 {
11268 unsafe {
11269 let this: &Identity =
11270 &*((this as *const *const ()).offset(OFFSET) as *const Identity);
11271 ID3D11Device_Impl::GetExceptionMode(this)
11272 }
11273 }
11274 Self {
11275 base__: windows_core::IUnknown_Vtbl::new::<Identity, OFFSET>(),
11276 CreateBuffer: CreateBuffer::<Identity, OFFSET>,
11277 CreateTexture1D: CreateTexture1D::<Identity, OFFSET>,
11278 CreateTexture2D: CreateTexture2D::<Identity, OFFSET>,
11279 CreateTexture3D: CreateTexture3D::<Identity, OFFSET>,
11280 CreateShaderResourceView: CreateShaderResourceView::<Identity, OFFSET>,
11281 CreateUnorderedAccessView: CreateUnorderedAccessView::<Identity, OFFSET>,
11282 CreateRenderTargetView: CreateRenderTargetView::<Identity, OFFSET>,
11283 CreateDepthStencilView: CreateDepthStencilView::<Identity, OFFSET>,
11284 CreateInputLayout: CreateInputLayout::<Identity, OFFSET>,
11285 CreateVertexShader: CreateVertexShader::<Identity, OFFSET>,
11286 CreateGeometryShader: CreateGeometryShader::<Identity, OFFSET>,
11287 CreateGeometryShaderWithStreamOutput: CreateGeometryShaderWithStreamOutput::<
11288 Identity,
11289 OFFSET,
11290 >,
11291 CreatePixelShader: CreatePixelShader::<Identity, OFFSET>,
11292 CreateHullShader: CreateHullShader::<Identity, OFFSET>,
11293 CreateDomainShader: CreateDomainShader::<Identity, OFFSET>,
11294 CreateComputeShader: CreateComputeShader::<Identity, OFFSET>,
11295 CreateClassLinkage: CreateClassLinkage::<Identity, OFFSET>,
11296 CreateBlendState: CreateBlendState::<Identity, OFFSET>,
11297 CreateDepthStencilState: CreateDepthStencilState::<Identity, OFFSET>,
11298 CreateRasterizerState: CreateRasterizerState::<Identity, OFFSET>,
11299 CreateSamplerState: CreateSamplerState::<Identity, OFFSET>,
11300 CreateQuery: CreateQuery::<Identity, OFFSET>,
11301 CreatePredicate: CreatePredicate::<Identity, OFFSET>,
11302 CreateCounter: CreateCounter::<Identity, OFFSET>,
11303 CreateDeferredContext: CreateDeferredContext::<Identity, OFFSET>,
11304 OpenSharedResource: OpenSharedResource::<Identity, OFFSET>,
11305 CheckFormatSupport: CheckFormatSupport::<Identity, OFFSET>,
11306 CheckMultisampleQualityLevels: CheckMultisampleQualityLevels::<Identity, OFFSET>,
11307 CheckCounterInfo: CheckCounterInfo::<Identity, OFFSET>,
11308 CheckCounter: CheckCounter::<Identity, OFFSET>,
11309 CheckFeatureSupport: CheckFeatureSupport::<Identity, OFFSET>,
11310 GetPrivateData: GetPrivateData::<Identity, OFFSET>,
11311 SetPrivateData: SetPrivateData::<Identity, OFFSET>,
11312 SetPrivateDataInterface: SetPrivateDataInterface::<Identity, OFFSET>,
11313 GetFeatureLevel: GetFeatureLevel::<Identity, OFFSET>,
11314 GetCreationFlags: GetCreationFlags::<Identity, OFFSET>,
11315 GetDeviceRemovedReason: GetDeviceRemovedReason::<Identity, OFFSET>,
11316 GetImmediateContext: GetImmediateContext::<Identity, OFFSET>,
11317 SetExceptionMode: SetExceptionMode::<Identity, OFFSET>,
11318 GetExceptionMode: GetExceptionMode::<Identity, OFFSET>,
11319 }
11320 }
11321 pub fn matches(iid: &windows_core::GUID) -> bool {
11322 iid == &<ID3D11Device as windows_core::Interface>::IID
11323 }
11324}
11325#[cfg(all(
11326 feature = "Win32_Graphics_Direct3D",
11327 feature = "Win32_Graphics_Dxgi_Common"
11328))]
11329impl windows_core::RuntimeName for ID3D11Device {}
11330#[cfg(all(
11331 feature = "Win32_Graphics_Direct3D",
11332 feature = "Win32_Graphics_Dxgi_Common"
11333))]
11334unsafe impl Send for ID3D11Device {}
11335#[cfg(all(
11336 feature = "Win32_Graphics_Direct3D",
11337 feature = "Win32_Graphics_Dxgi_Common"
11338))]
11339unsafe impl Sync for ID3D11Device {}
11340windows_core::imp::define_interface!(
11341 ID3D11Device1,
11342 ID3D11Device1_Vtbl,
11343 0xa04bfb29_08ef_43d6_a49c_a9bdbdcbe686
11344);
11345impl core::ops::Deref for ID3D11Device1 {
11346 type Target = ID3D11Device;
11347 fn deref(&self) -> &Self::Target {
11348 unsafe { core::mem::transmute(self) }
11349 }
11350}
11351windows_core::imp::interface_hierarchy!(ID3D11Device1, windows_core::IUnknown, ID3D11Device);
11352impl ID3D11Device1 {
11353 pub unsafe fn GetImmediateContext1(&self) -> windows_core::Result<ID3D11DeviceContext1> {
11354 unsafe {
11355 let mut result__ = core::mem::zeroed();
11356 (windows_core::Interface::vtable(self).GetImmediateContext1)(
11357 windows_core::Interface::as_raw(self),
11358 &mut result__,
11359 );
11360 windows_core::Type::from_abi(result__)
11361 }
11362 }
11363 pub unsafe fn CreateDeferredContext1(
11364 &self,
11365 contextflags: u32,
11366 ppdeferredcontext: Option<*mut Option<ID3D11DeviceContext1>>,
11367 ) -> windows_core::Result<()> {
11368 unsafe {
11369 (windows_core::Interface::vtable(self).CreateDeferredContext1)(
11370 windows_core::Interface::as_raw(self),
11371 contextflags,
11372 core::mem::transmute(ppdeferredcontext.unwrap_or(core::mem::zeroed())),
11373 )
11374 .ok()
11375 }
11376 }
11377 pub unsafe fn CreateBlendState1(
11378 &self,
11379 pblendstatedesc: *const D3D11_BLEND_DESC1,
11380 ppblendstate: Option<*mut Option<ID3D11BlendState1>>,
11381 ) -> windows_core::Result<()> {
11382 unsafe {
11383 (windows_core::Interface::vtable(self).CreateBlendState1)(
11384 windows_core::Interface::as_raw(self),
11385 pblendstatedesc,
11386 core::mem::transmute(ppblendstate.unwrap_or(core::mem::zeroed())),
11387 )
11388 .ok()
11389 }
11390 }
11391 pub unsafe fn CreateRasterizerState1(
11392 &self,
11393 prasterizerdesc: *const D3D11_RASTERIZER_DESC1,
11394 pprasterizerstate: Option<*mut Option<ID3D11RasterizerState1>>,
11395 ) -> windows_core::Result<()> {
11396 unsafe {
11397 (windows_core::Interface::vtable(self).CreateRasterizerState1)(
11398 windows_core::Interface::as_raw(self),
11399 prasterizerdesc,
11400 core::mem::transmute(pprasterizerstate.unwrap_or(core::mem::zeroed())),
11401 )
11402 .ok()
11403 }
11404 }
11405 #[cfg(feature = "Win32_Graphics_Direct3D")]
11406 pub unsafe fn CreateDeviceContextState(
11407 &self,
11408 flags: u32,
11409 pfeaturelevels: &[super::Direct3D::D3D_FEATURE_LEVEL],
11410 sdkversion: u32,
11411 emulatedinterface: *const windows_core::GUID,
11412 pchosenfeaturelevel: Option<*mut super::Direct3D::D3D_FEATURE_LEVEL>,
11413 ppcontextstate: Option<*mut Option<ID3DDeviceContextState>>,
11414 ) -> windows_core::Result<()> {
11415 unsafe {
11416 (windows_core::Interface::vtable(self).CreateDeviceContextState)(
11417 windows_core::Interface::as_raw(self),
11418 flags,
11419 core::mem::transmute(pfeaturelevels.as_ptr()),
11420 pfeaturelevels.len().try_into().unwrap(),
11421 sdkversion,
11422 emulatedinterface,
11423 core::mem::transmute(pchosenfeaturelevel.unwrap_or(core::mem::zeroed())),
11424 core::mem::transmute(ppcontextstate.unwrap_or(core::mem::zeroed())),
11425 )
11426 .ok()
11427 }
11428 }
11429 pub unsafe fn OpenSharedResource1<T>(
11430 &self,
11431 hresource: crate::Foundation::HANDLE,
11432 ) -> windows_core::Result<T>
11433 where
11434 T: windows_core::Interface,
11435 {
11436 let mut result__ = core::ptr::null_mut();
11437 unsafe {
11438 (windows_core::Interface::vtable(self).OpenSharedResource1)(
11439 windows_core::Interface::as_raw(self),
11440 hresource,
11441 &T::IID,
11442 &mut result__,
11443 )
11444 .and_then(|| windows_core::Type::from_abi(result__))
11445 }
11446 }
11447 pub unsafe fn OpenSharedResourceByName<P0, T>(
11448 &self,
11449 lpname: P0,
11450 dwdesiredaccess: u32,
11451 ) -> windows_core::Result<T>
11452 where
11453 P0: windows_core::Param<crate::core_supplemental::PCWSTR>,
11454 T: windows_core::Interface,
11455 {
11456 let mut result__ = core::ptr::null_mut();
11457 unsafe {
11458 (windows_core::Interface::vtable(self).OpenSharedResourceByName)(
11459 windows_core::Interface::as_raw(self),
11460 lpname.param().abi(),
11461 dwdesiredaccess,
11462 &T::IID,
11463 &mut result__,
11464 )
11465 .and_then(|| windows_core::Type::from_abi(result__))
11466 }
11467 }
11468}
11469#[repr(C)]
11470pub struct ID3D11Device1_Vtbl {
11471 pub base__: ID3D11Device_Vtbl,
11472 pub GetImmediateContext1:
11473 unsafe extern "system" fn(*mut core::ffi::c_void, *mut *mut core::ffi::c_void),
11474 pub CreateDeferredContext1: unsafe extern "system" fn(
11475 *mut core::ffi::c_void,
11476 u32,
11477 *mut *mut core::ffi::c_void,
11478 ) -> windows_core::HRESULT,
11479 pub CreateBlendState1: unsafe extern "system" fn(
11480 *mut core::ffi::c_void,
11481 *const D3D11_BLEND_DESC1,
11482 *mut *mut core::ffi::c_void,
11483 ) -> windows_core::HRESULT,
11484 pub CreateRasterizerState1: unsafe extern "system" fn(
11485 *mut core::ffi::c_void,
11486 *const D3D11_RASTERIZER_DESC1,
11487 *mut *mut core::ffi::c_void,
11488 ) -> windows_core::HRESULT,
11489 #[cfg(feature = "Win32_Graphics_Direct3D")]
11490 pub CreateDeviceContextState: unsafe extern "system" fn(
11491 *mut core::ffi::c_void,
11492 u32,
11493 *const super::Direct3D::D3D_FEATURE_LEVEL,
11494 u32,
11495 u32,
11496 *const windows_core::GUID,
11497 *mut super::Direct3D::D3D_FEATURE_LEVEL,
11498 *mut *mut core::ffi::c_void,
11499 ) -> windows_core::HRESULT,
11500 #[cfg(not(feature = "Win32_Graphics_Direct3D"))]
11501 CreateDeviceContextState: usize,
11502 pub OpenSharedResource1: unsafe extern "system" fn(
11503 *mut core::ffi::c_void,
11504 crate::Foundation::HANDLE,
11505 *const windows_core::GUID,
11506 *mut *mut core::ffi::c_void,
11507 ) -> windows_core::HRESULT,
11508 pub OpenSharedResourceByName: unsafe extern "system" fn(
11509 *mut core::ffi::c_void,
11510 crate::core_supplemental::PCWSTR,
11511 u32,
11512 *const windows_core::GUID,
11513 *mut *mut core::ffi::c_void,
11514 ) -> windows_core::HRESULT,
11515}
11516#[cfg(all(
11517 feature = "Win32_Graphics_Direct3D",
11518 feature = "Win32_Graphics_Dxgi_Common"
11519))]
11520pub trait ID3D11Device1_Impl: ID3D11Device_Impl {
11521 fn GetImmediateContext1(
11522 &self,
11523 ppimmediatecontext: windows_core::OutRef<'_, ID3D11DeviceContext1>,
11524 );
11525 fn CreateDeferredContext1(
11526 &self,
11527 contextflags: u32,
11528 ppdeferredcontext: windows_core::OutRef<'_, ID3D11DeviceContext1>,
11529 ) -> windows_core::Result<()>;
11530 fn CreateBlendState1(
11531 &self,
11532 pblendstatedesc: *const D3D11_BLEND_DESC1,
11533 ppblendstate: windows_core::OutRef<'_, ID3D11BlendState1>,
11534 ) -> windows_core::Result<()>;
11535 fn CreateRasterizerState1(
11536 &self,
11537 prasterizerdesc: *const D3D11_RASTERIZER_DESC1,
11538 pprasterizerstate: windows_core::OutRef<'_, ID3D11RasterizerState1>,
11539 ) -> windows_core::Result<()>;
11540 fn CreateDeviceContextState(
11541 &self,
11542 flags: u32,
11543 pfeaturelevels: *const super::Direct3D::D3D_FEATURE_LEVEL,
11544 featurelevels: u32,
11545 sdkversion: u32,
11546 emulatedinterface: *const windows_core::GUID,
11547 pchosenfeaturelevel: *mut super::Direct3D::D3D_FEATURE_LEVEL,
11548 ppcontextstate: windows_core::OutRef<'_, ID3DDeviceContextState>,
11549 ) -> windows_core::Result<()>;
11550 fn OpenSharedResource1(
11551 &self,
11552 hresource: crate::Foundation::HANDLE,
11553 returnedinterface: *const windows_core::GUID,
11554 ppresource: *mut *mut core::ffi::c_void,
11555 ) -> windows_core::Result<()>;
11556 fn OpenSharedResourceByName(
11557 &self,
11558 lpname: &crate::core_supplemental::PCWSTR,
11559 dwdesiredaccess: u32,
11560 returnedinterface: *const windows_core::GUID,
11561 ppresource: *mut *mut core::ffi::c_void,
11562 ) -> windows_core::Result<()>;
11563}
11564#[cfg(all(
11565 feature = "Win32_Graphics_Direct3D",
11566 feature = "Win32_Graphics_Dxgi_Common"
11567))]
11568impl ID3D11Device1_Vtbl {
11569 pub const fn new<Identity: ID3D11Device1_Impl, const OFFSET: isize>() -> Self {
11570 unsafe extern "system" fn GetImmediateContext1<
11571 Identity: ID3D11Device1_Impl,
11572 const OFFSET: isize,
11573 >(
11574 this: *mut core::ffi::c_void,
11575 ppimmediatecontext: *mut *mut core::ffi::c_void,
11576 ) {
11577 unsafe {
11578 let this: &Identity =
11579 &*((this as *const *const ()).offset(OFFSET) as *const Identity);
11580 ID3D11Device1_Impl::GetImmediateContext1(
11581 this,
11582 core::mem::transmute_copy(&ppimmediatecontext),
11583 )
11584 }
11585 }
11586 unsafe extern "system" fn CreateDeferredContext1<
11587 Identity: ID3D11Device1_Impl,
11588 const OFFSET: isize,
11589 >(
11590 this: *mut core::ffi::c_void,
11591 contextflags: u32,
11592 ppdeferredcontext: *mut *mut core::ffi::c_void,
11593 ) -> windows_core::HRESULT {
11594 unsafe {
11595 let this: &Identity =
11596 &*((this as *const *const ()).offset(OFFSET) as *const Identity);
11597 ID3D11Device1_Impl::CreateDeferredContext1(
11598 this,
11599 core::mem::transmute_copy(&contextflags),
11600 core::mem::transmute_copy(&ppdeferredcontext),
11601 )
11602 .into()
11603 }
11604 }
11605 unsafe extern "system" fn CreateBlendState1<
11606 Identity: ID3D11Device1_Impl,
11607 const OFFSET: isize,
11608 >(
11609 this: *mut core::ffi::c_void,
11610 pblendstatedesc: *const D3D11_BLEND_DESC1,
11611 ppblendstate: *mut *mut core::ffi::c_void,
11612 ) -> windows_core::HRESULT {
11613 unsafe {
11614 let this: &Identity =
11615 &*((this as *const *const ()).offset(OFFSET) as *const Identity);
11616 ID3D11Device1_Impl::CreateBlendState1(
11617 this,
11618 core::mem::transmute_copy(&pblendstatedesc),
11619 core::mem::transmute_copy(&ppblendstate),
11620 )
11621 .into()
11622 }
11623 }
11624 unsafe extern "system" fn CreateRasterizerState1<
11625 Identity: ID3D11Device1_Impl,
11626 const OFFSET: isize,
11627 >(
11628 this: *mut core::ffi::c_void,
11629 prasterizerdesc: *const D3D11_RASTERIZER_DESC1,
11630 pprasterizerstate: *mut *mut core::ffi::c_void,
11631 ) -> windows_core::HRESULT {
11632 unsafe {
11633 let this: &Identity =
11634 &*((this as *const *const ()).offset(OFFSET) as *const Identity);
11635 ID3D11Device1_Impl::CreateRasterizerState1(
11636 this,
11637 core::mem::transmute_copy(&prasterizerdesc),
11638 core::mem::transmute_copy(&pprasterizerstate),
11639 )
11640 .into()
11641 }
11642 }
11643 unsafe extern "system" fn CreateDeviceContextState<
11644 Identity: ID3D11Device1_Impl,
11645 const OFFSET: isize,
11646 >(
11647 this: *mut core::ffi::c_void,
11648 flags: u32,
11649 pfeaturelevels: *const super::Direct3D::D3D_FEATURE_LEVEL,
11650 featurelevels: u32,
11651 sdkversion: u32,
11652 emulatedinterface: *const windows_core::GUID,
11653 pchosenfeaturelevel: *mut super::Direct3D::D3D_FEATURE_LEVEL,
11654 ppcontextstate: *mut *mut core::ffi::c_void,
11655 ) -> windows_core::HRESULT {
11656 unsafe {
11657 let this: &Identity =
11658 &*((this as *const *const ()).offset(OFFSET) as *const Identity);
11659 ID3D11Device1_Impl::CreateDeviceContextState(
11660 this,
11661 core::mem::transmute_copy(&flags),
11662 core::mem::transmute_copy(&pfeaturelevels),
11663 core::mem::transmute_copy(&featurelevels),
11664 core::mem::transmute_copy(&sdkversion),
11665 core::mem::transmute_copy(&emulatedinterface),
11666 core::mem::transmute_copy(&pchosenfeaturelevel),
11667 core::mem::transmute_copy(&ppcontextstate),
11668 )
11669 .into()
11670 }
11671 }
11672 unsafe extern "system" fn OpenSharedResource1<
11673 Identity: ID3D11Device1_Impl,
11674 const OFFSET: isize,
11675 >(
11676 this: *mut core::ffi::c_void,
11677 hresource: crate::Foundation::HANDLE,
11678 returnedinterface: *const windows_core::GUID,
11679 ppresource: *mut *mut core::ffi::c_void,
11680 ) -> windows_core::HRESULT {
11681 unsafe {
11682 let this: &Identity =
11683 &*((this as *const *const ()).offset(OFFSET) as *const Identity);
11684 ID3D11Device1_Impl::OpenSharedResource1(
11685 this,
11686 core::mem::transmute_copy(&hresource),
11687 core::mem::transmute_copy(&returnedinterface),
11688 core::mem::transmute_copy(&ppresource),
11689 )
11690 .into()
11691 }
11692 }
11693 unsafe extern "system" fn OpenSharedResourceByName<
11694 Identity: ID3D11Device1_Impl,
11695 const OFFSET: isize,
11696 >(
11697 this: *mut core::ffi::c_void,
11698 lpname: crate::core_supplemental::PCWSTR,
11699 dwdesiredaccess: u32,
11700 returnedinterface: *const windows_core::GUID,
11701 ppresource: *mut *mut core::ffi::c_void,
11702 ) -> windows_core::HRESULT {
11703 unsafe {
11704 let this: &Identity =
11705 &*((this as *const *const ()).offset(OFFSET) as *const Identity);
11706 ID3D11Device1_Impl::OpenSharedResourceByName(
11707 this,
11708 core::mem::transmute(&lpname),
11709 core::mem::transmute_copy(&dwdesiredaccess),
11710 core::mem::transmute_copy(&returnedinterface),
11711 core::mem::transmute_copy(&ppresource),
11712 )
11713 .into()
11714 }
11715 }
11716 Self {
11717 base__: ID3D11Device_Vtbl::new::<Identity, OFFSET>(),
11718 GetImmediateContext1: GetImmediateContext1::<Identity, OFFSET>,
11719 CreateDeferredContext1: CreateDeferredContext1::<Identity, OFFSET>,
11720 CreateBlendState1: CreateBlendState1::<Identity, OFFSET>,
11721 CreateRasterizerState1: CreateRasterizerState1::<Identity, OFFSET>,
11722 CreateDeviceContextState: CreateDeviceContextState::<Identity, OFFSET>,
11723 OpenSharedResource1: OpenSharedResource1::<Identity, OFFSET>,
11724 OpenSharedResourceByName: OpenSharedResourceByName::<Identity, OFFSET>,
11725 }
11726 }
11727 pub fn matches(iid: &windows_core::GUID) -> bool {
11728 iid == &<ID3D11Device1 as windows_core::Interface>::IID
11729 || iid == &<ID3D11Device as windows_core::Interface>::IID
11730 }
11731}
11732#[cfg(all(
11733 feature = "Win32_Graphics_Direct3D",
11734 feature = "Win32_Graphics_Dxgi_Common"
11735))]
11736impl windows_core::RuntimeName for ID3D11Device1 {}
11737#[cfg(all(
11738 feature = "Win32_Graphics_Direct3D",
11739 feature = "Win32_Graphics_Dxgi_Common"
11740))]
11741unsafe impl Send for ID3D11Device1 {}
11742#[cfg(all(
11743 feature = "Win32_Graphics_Direct3D",
11744 feature = "Win32_Graphics_Dxgi_Common"
11745))]
11746unsafe impl Sync for ID3D11Device1 {}
11747windows_core::imp::define_interface!(
11748 ID3D11Device2,
11749 ID3D11Device2_Vtbl,
11750 0x9d06dffa_d1e5_4d07_83a8_1bb123f2f841
11751);
11752impl core::ops::Deref for ID3D11Device2 {
11753 type Target = ID3D11Device1;
11754 fn deref(&self) -> &Self::Target {
11755 unsafe { core::mem::transmute(self) }
11756 }
11757}
11758windows_core::imp::interface_hierarchy!(
11759 ID3D11Device2,
11760 windows_core::IUnknown,
11761 ID3D11Device,
11762 ID3D11Device1
11763);
11764impl ID3D11Device2 {
11765 pub unsafe fn GetImmediateContext2(&self) -> windows_core::Result<ID3D11DeviceContext2> {
11766 unsafe {
11767 let mut result__ = core::mem::zeroed();
11768 (windows_core::Interface::vtable(self).GetImmediateContext2)(
11769 windows_core::Interface::as_raw(self),
11770 &mut result__,
11771 );
11772 windows_core::Type::from_abi(result__)
11773 }
11774 }
11775 pub unsafe fn CreateDeferredContext2(
11776 &self,
11777 contextflags: u32,
11778 ppdeferredcontext: Option<*mut Option<ID3D11DeviceContext2>>,
11779 ) -> windows_core::Result<()> {
11780 unsafe {
11781 (windows_core::Interface::vtable(self).CreateDeferredContext2)(
11782 windows_core::Interface::as_raw(self),
11783 contextflags,
11784 core::mem::transmute(ppdeferredcontext.unwrap_or(core::mem::zeroed())),
11785 )
11786 .ok()
11787 }
11788 }
11789 pub unsafe fn GetResourceTiling<P0>(
11790 &self,
11791 ptiledresource: P0,
11792 pnumtilesforentireresource: Option<*mut u32>,
11793 ppackedmipdesc: Option<*mut D3D11_PACKED_MIP_DESC>,
11794 pstandardtileshapefornonpackedmips: Option<*mut D3D11_TILE_SHAPE>,
11795 pnumsubresourcetilings: Option<*mut u32>,
11796 firstsubresourcetilingtoget: u32,
11797 psubresourcetilingsfornonpackedmips: *mut D3D11_SUBRESOURCE_TILING,
11798 ) where
11799 P0: windows_core::Param<ID3D11Resource>,
11800 {
11801 unsafe {
11802 (windows_core::Interface::vtable(self).GetResourceTiling)(
11803 windows_core::Interface::as_raw(self),
11804 ptiledresource.param().abi(),
11805 core::mem::transmute(pnumtilesforentireresource.unwrap_or(core::mem::zeroed())),
11806 core::mem::transmute(ppackedmipdesc.unwrap_or(core::mem::zeroed())),
11807 core::mem::transmute(
11808 pstandardtileshapefornonpackedmips.unwrap_or(core::mem::zeroed()),
11809 ),
11810 core::mem::transmute(pnumsubresourcetilings.unwrap_or(core::mem::zeroed())),
11811 firstsubresourcetilingtoget,
11812 core::mem::transmute(psubresourcetilingsfornonpackedmips),
11813 )
11814 }
11815 }
11816 #[cfg(feature = "Win32_Graphics_Dxgi_Common")]
11817 pub unsafe fn CheckMultisampleQualityLevels1(
11818 &self,
11819 format: crate::Dxgi::Common::DXGI_FORMAT,
11820 samplecount: u32,
11821 flags: u32,
11822 ) -> windows_core::Result<u32> {
11823 unsafe {
11824 let mut result__ = core::mem::zeroed();
11825 (windows_core::Interface::vtable(self).CheckMultisampleQualityLevels1)(
11826 windows_core::Interface::as_raw(self),
11827 format,
11828 samplecount,
11829 flags,
11830 &mut result__,
11831 )
11832 .map(|| result__)
11833 }
11834 }
11835}
11836#[repr(C)]
11837pub struct ID3D11Device2_Vtbl {
11838 pub base__: ID3D11Device1_Vtbl,
11839 pub GetImmediateContext2:
11840 unsafe extern "system" fn(*mut core::ffi::c_void, *mut *mut core::ffi::c_void),
11841 pub CreateDeferredContext2: unsafe extern "system" fn(
11842 *mut core::ffi::c_void,
11843 u32,
11844 *mut *mut core::ffi::c_void,
11845 ) -> windows_core::HRESULT,
11846 pub GetResourceTiling: unsafe extern "system" fn(
11847 *mut core::ffi::c_void,
11848 *mut core::ffi::c_void,
11849 *mut u32,
11850 *mut D3D11_PACKED_MIP_DESC,
11851 *mut D3D11_TILE_SHAPE,
11852 *mut u32,
11853 u32,
11854 *mut D3D11_SUBRESOURCE_TILING,
11855 ),
11856 #[cfg(feature = "Win32_Graphics_Dxgi_Common")]
11857 pub CheckMultisampleQualityLevels1: unsafe extern "system" fn(
11858 *mut core::ffi::c_void,
11859 crate::Dxgi::Common::DXGI_FORMAT,
11860 u32,
11861 u32,
11862 *mut u32,
11863 ) -> windows_core::HRESULT,
11864 #[cfg(not(feature = "Win32_Graphics_Dxgi_Common"))]
11865 CheckMultisampleQualityLevels1: usize,
11866}
11867#[cfg(all(
11868 feature = "Win32_Graphics_Direct3D",
11869 feature = "Win32_Graphics_Dxgi_Common"
11870))]
11871pub trait ID3D11Device2_Impl: ID3D11Device1_Impl {
11872 fn GetImmediateContext2(
11873 &self,
11874 ppimmediatecontext: windows_core::OutRef<'_, ID3D11DeviceContext2>,
11875 );
11876 fn CreateDeferredContext2(
11877 &self,
11878 contextflags: u32,
11879 ppdeferredcontext: windows_core::OutRef<'_, ID3D11DeviceContext2>,
11880 ) -> windows_core::Result<()>;
11881 fn GetResourceTiling(
11882 &self,
11883 ptiledresource: windows_core::Ref<'_, ID3D11Resource>,
11884 pnumtilesforentireresource: *mut u32,
11885 ppackedmipdesc: *mut D3D11_PACKED_MIP_DESC,
11886 pstandardtileshapefornonpackedmips: *mut D3D11_TILE_SHAPE,
11887 pnumsubresourcetilings: *mut u32,
11888 firstsubresourcetilingtoget: u32,
11889 psubresourcetilingsfornonpackedmips: *mut D3D11_SUBRESOURCE_TILING,
11890 );
11891 fn CheckMultisampleQualityLevels1(
11892 &self,
11893 format: crate::Dxgi::Common::DXGI_FORMAT,
11894 samplecount: u32,
11895 flags: u32,
11896 ) -> windows_core::Result<u32>;
11897}
11898#[cfg(all(
11899 feature = "Win32_Graphics_Direct3D",
11900 feature = "Win32_Graphics_Dxgi_Common"
11901))]
11902impl ID3D11Device2_Vtbl {
11903 pub const fn new<Identity: ID3D11Device2_Impl, const OFFSET: isize>() -> Self {
11904 unsafe extern "system" fn GetImmediateContext2<
11905 Identity: ID3D11Device2_Impl,
11906 const OFFSET: isize,
11907 >(
11908 this: *mut core::ffi::c_void,
11909 ppimmediatecontext: *mut *mut core::ffi::c_void,
11910 ) {
11911 unsafe {
11912 let this: &Identity =
11913 &*((this as *const *const ()).offset(OFFSET) as *const Identity);
11914 ID3D11Device2_Impl::GetImmediateContext2(
11915 this,
11916 core::mem::transmute_copy(&ppimmediatecontext),
11917 )
11918 }
11919 }
11920 unsafe extern "system" fn CreateDeferredContext2<
11921 Identity: ID3D11Device2_Impl,
11922 const OFFSET: isize,
11923 >(
11924 this: *mut core::ffi::c_void,
11925 contextflags: u32,
11926 ppdeferredcontext: *mut *mut core::ffi::c_void,
11927 ) -> windows_core::HRESULT {
11928 unsafe {
11929 let this: &Identity =
11930 &*((this as *const *const ()).offset(OFFSET) as *const Identity);
11931 ID3D11Device2_Impl::CreateDeferredContext2(
11932 this,
11933 core::mem::transmute_copy(&contextflags),
11934 core::mem::transmute_copy(&ppdeferredcontext),
11935 )
11936 .into()
11937 }
11938 }
11939 unsafe extern "system" fn GetResourceTiling<
11940 Identity: ID3D11Device2_Impl,
11941 const OFFSET: isize,
11942 >(
11943 this: *mut core::ffi::c_void,
11944 ptiledresource: *mut core::ffi::c_void,
11945 pnumtilesforentireresource: *mut u32,
11946 ppackedmipdesc: *mut D3D11_PACKED_MIP_DESC,
11947 pstandardtileshapefornonpackedmips: *mut D3D11_TILE_SHAPE,
11948 pnumsubresourcetilings: *mut u32,
11949 firstsubresourcetilingtoget: u32,
11950 psubresourcetilingsfornonpackedmips: *mut D3D11_SUBRESOURCE_TILING,
11951 ) {
11952 unsafe {
11953 let this: &Identity =
11954 &*((this as *const *const ()).offset(OFFSET) as *const Identity);
11955 ID3D11Device2_Impl::GetResourceTiling(
11956 this,
11957 core::mem::transmute_copy(&ptiledresource),
11958 core::mem::transmute_copy(&pnumtilesforentireresource),
11959 core::mem::transmute_copy(&ppackedmipdesc),
11960 core::mem::transmute_copy(&pstandardtileshapefornonpackedmips),
11961 core::mem::transmute_copy(&pnumsubresourcetilings),
11962 core::mem::transmute_copy(&firstsubresourcetilingtoget),
11963 core::mem::transmute_copy(&psubresourcetilingsfornonpackedmips),
11964 )
11965 }
11966 }
11967 unsafe extern "system" fn CheckMultisampleQualityLevels1<
11968 Identity: ID3D11Device2_Impl,
11969 const OFFSET: isize,
11970 >(
11971 this: *mut core::ffi::c_void,
11972 format: crate::Dxgi::Common::DXGI_FORMAT,
11973 samplecount: u32,
11974 flags: u32,
11975 pnumqualitylevels: *mut u32,
11976 ) -> windows_core::HRESULT {
11977 unsafe {
11978 let this: &Identity =
11979 &*((this as *const *const ()).offset(OFFSET) as *const Identity);
11980 match ID3D11Device2_Impl::CheckMultisampleQualityLevels1(
11981 this,
11982 core::mem::transmute_copy(&format),
11983 core::mem::transmute_copy(&samplecount),
11984 core::mem::transmute_copy(&flags),
11985 ) {
11986 Ok(ok__) => {
11987 pnumqualitylevels.write(core::mem::transmute(ok__));
11988 windows_core::HRESULT(0)
11989 }
11990 Err(err) => err.into(),
11991 }
11992 }
11993 }
11994 Self {
11995 base__: ID3D11Device1_Vtbl::new::<Identity, OFFSET>(),
11996 GetImmediateContext2: GetImmediateContext2::<Identity, OFFSET>,
11997 CreateDeferredContext2: CreateDeferredContext2::<Identity, OFFSET>,
11998 GetResourceTiling: GetResourceTiling::<Identity, OFFSET>,
11999 CheckMultisampleQualityLevels1: CheckMultisampleQualityLevels1::<Identity, OFFSET>,
12000 }
12001 }
12002 pub fn matches(iid: &windows_core::GUID) -> bool {
12003 iid == &<ID3D11Device2 as windows_core::Interface>::IID
12004 || iid == &<ID3D11Device as windows_core::Interface>::IID
12005 || iid == &<ID3D11Device1 as windows_core::Interface>::IID
12006 }
12007}
12008#[cfg(all(
12009 feature = "Win32_Graphics_Direct3D",
12010 feature = "Win32_Graphics_Dxgi_Common"
12011))]
12012impl windows_core::RuntimeName for ID3D11Device2 {}
12013#[cfg(all(
12014 feature = "Win32_Graphics_Direct3D",
12015 feature = "Win32_Graphics_Dxgi_Common"
12016))]
12017unsafe impl Send for ID3D11Device2 {}
12018#[cfg(all(
12019 feature = "Win32_Graphics_Direct3D",
12020 feature = "Win32_Graphics_Dxgi_Common"
12021))]
12022unsafe impl Sync for ID3D11Device2 {}
12023windows_core::imp::define_interface!(
12024 ID3D11Device3,
12025 ID3D11Device3_Vtbl,
12026 0xa05c8c37_d2c6_4732_b3a0_9ce0b0dc9ae6
12027);
12028impl core::ops::Deref for ID3D11Device3 {
12029 type Target = ID3D11Device2;
12030 fn deref(&self) -> &Self::Target {
12031 unsafe { core::mem::transmute(self) }
12032 }
12033}
12034windows_core::imp::interface_hierarchy!(
12035 ID3D11Device3,
12036 windows_core::IUnknown,
12037 ID3D11Device,
12038 ID3D11Device1,
12039 ID3D11Device2
12040);
12041impl ID3D11Device3 {
12042 #[cfg(feature = "Win32_Graphics_Dxgi_Common")]
12043 pub unsafe fn CreateTexture2D1(
12044 &self,
12045 pdesc1: *const D3D11_TEXTURE2D_DESC1,
12046 pinitialdata: Option<*const D3D11_SUBRESOURCE_DATA>,
12047 pptexture2d: Option<*mut Option<ID3D11Texture2D1>>,
12048 ) -> windows_core::Result<()> {
12049 unsafe {
12050 (windows_core::Interface::vtable(self).CreateTexture2D1)(
12051 windows_core::Interface::as_raw(self),
12052 pdesc1,
12053 core::mem::transmute(pinitialdata.unwrap_or(core::mem::zeroed())),
12054 core::mem::transmute(pptexture2d.unwrap_or(core::mem::zeroed())),
12055 )
12056 .ok()
12057 }
12058 }
12059 #[cfg(feature = "Win32_Graphics_Dxgi_Common")]
12060 pub unsafe fn CreateTexture3D1(
12061 &self,
12062 pdesc1: *const D3D11_TEXTURE3D_DESC1,
12063 pinitialdata: Option<*const D3D11_SUBRESOURCE_DATA>,
12064 pptexture3d: Option<*mut Option<ID3D11Texture3D1>>,
12065 ) -> windows_core::Result<()> {
12066 unsafe {
12067 (windows_core::Interface::vtable(self).CreateTexture3D1)(
12068 windows_core::Interface::as_raw(self),
12069 pdesc1,
12070 core::mem::transmute(pinitialdata.unwrap_or(core::mem::zeroed())),
12071 core::mem::transmute(pptexture3d.unwrap_or(core::mem::zeroed())),
12072 )
12073 .ok()
12074 }
12075 }
12076 pub unsafe fn CreateRasterizerState2(
12077 &self,
12078 prasterizerdesc: *const D3D11_RASTERIZER_DESC2,
12079 pprasterizerstate: Option<*mut Option<ID3D11RasterizerState2>>,
12080 ) -> windows_core::Result<()> {
12081 unsafe {
12082 (windows_core::Interface::vtable(self).CreateRasterizerState2)(
12083 windows_core::Interface::as_raw(self),
12084 prasterizerdesc,
12085 core::mem::transmute(pprasterizerstate.unwrap_or(core::mem::zeroed())),
12086 )
12087 .ok()
12088 }
12089 }
12090 #[cfg(all(
12091 feature = "Win32_Graphics_Direct3D",
12092 feature = "Win32_Graphics_Dxgi_Common"
12093 ))]
12094 pub unsafe fn CreateShaderResourceView1<P0>(
12095 &self,
12096 presource: P0,
12097 pdesc1: Option<*const D3D11_SHADER_RESOURCE_VIEW_DESC1>,
12098 ppsrview1: Option<*mut Option<ID3D11ShaderResourceView1>>,
12099 ) -> windows_core::Result<()>
12100 where
12101 P0: windows_core::Param<ID3D11Resource>,
12102 {
12103 unsafe {
12104 (windows_core::Interface::vtable(self).CreateShaderResourceView1)(
12105 windows_core::Interface::as_raw(self),
12106 presource.param().abi(),
12107 core::mem::transmute(pdesc1.unwrap_or(core::mem::zeroed())),
12108 core::mem::transmute(ppsrview1.unwrap_or(core::mem::zeroed())),
12109 )
12110 .ok()
12111 }
12112 }
12113 #[cfg(feature = "Win32_Graphics_Dxgi_Common")]
12114 pub unsafe fn CreateUnorderedAccessView1<P0>(
12115 &self,
12116 presource: P0,
12117 pdesc1: Option<*const D3D11_UNORDERED_ACCESS_VIEW_DESC1>,
12118 ppuaview1: Option<*mut Option<ID3D11UnorderedAccessView1>>,
12119 ) -> windows_core::Result<()>
12120 where
12121 P0: windows_core::Param<ID3D11Resource>,
12122 {
12123 unsafe {
12124 (windows_core::Interface::vtable(self).CreateUnorderedAccessView1)(
12125 windows_core::Interface::as_raw(self),
12126 presource.param().abi(),
12127 core::mem::transmute(pdesc1.unwrap_or(core::mem::zeroed())),
12128 core::mem::transmute(ppuaview1.unwrap_or(core::mem::zeroed())),
12129 )
12130 .ok()
12131 }
12132 }
12133 #[cfg(feature = "Win32_Graphics_Dxgi_Common")]
12134 pub unsafe fn CreateRenderTargetView1<P0>(
12135 &self,
12136 presource: P0,
12137 pdesc1: Option<*const D3D11_RENDER_TARGET_VIEW_DESC1>,
12138 pprtview1: Option<*mut Option<ID3D11RenderTargetView1>>,
12139 ) -> windows_core::Result<()>
12140 where
12141 P0: windows_core::Param<ID3D11Resource>,
12142 {
12143 unsafe {
12144 (windows_core::Interface::vtable(self).CreateRenderTargetView1)(
12145 windows_core::Interface::as_raw(self),
12146 presource.param().abi(),
12147 core::mem::transmute(pdesc1.unwrap_or(core::mem::zeroed())),
12148 core::mem::transmute(pprtview1.unwrap_or(core::mem::zeroed())),
12149 )
12150 .ok()
12151 }
12152 }
12153 pub unsafe fn CreateQuery1(
12154 &self,
12155 pquerydesc1: *const D3D11_QUERY_DESC1,
12156 ppquery1: Option<*mut Option<ID3D11Query1>>,
12157 ) -> windows_core::Result<()> {
12158 unsafe {
12159 (windows_core::Interface::vtable(self).CreateQuery1)(
12160 windows_core::Interface::as_raw(self),
12161 pquerydesc1,
12162 core::mem::transmute(ppquery1.unwrap_or(core::mem::zeroed())),
12163 )
12164 .ok()
12165 }
12166 }
12167 pub unsafe fn GetImmediateContext3(&self) -> windows_core::Result<ID3D11DeviceContext3> {
12168 unsafe {
12169 let mut result__ = core::mem::zeroed();
12170 (windows_core::Interface::vtable(self).GetImmediateContext3)(
12171 windows_core::Interface::as_raw(self),
12172 &mut result__,
12173 );
12174 windows_core::Type::from_abi(result__)
12175 }
12176 }
12177 pub unsafe fn CreateDeferredContext3(
12178 &self,
12179 contextflags: u32,
12180 ppdeferredcontext: Option<*mut Option<ID3D11DeviceContext3>>,
12181 ) -> windows_core::Result<()> {
12182 unsafe {
12183 (windows_core::Interface::vtable(self).CreateDeferredContext3)(
12184 windows_core::Interface::as_raw(self),
12185 contextflags,
12186 core::mem::transmute(ppdeferredcontext.unwrap_or(core::mem::zeroed())),
12187 )
12188 .ok()
12189 }
12190 }
12191 pub unsafe fn WriteToSubresource<P0>(
12192 &self,
12193 pdstresource: P0,
12194 dstsubresource: u32,
12195 pdstbox: Option<*const D3D11_BOX>,
12196 psrcdata: *const core::ffi::c_void,
12197 srcrowpitch: u32,
12198 srcdepthpitch: u32,
12199 ) where
12200 P0: windows_core::Param<ID3D11Resource>,
12201 {
12202 unsafe {
12203 (windows_core::Interface::vtable(self).WriteToSubresource)(
12204 windows_core::Interface::as_raw(self),
12205 pdstresource.param().abi(),
12206 dstsubresource,
12207 core::mem::transmute(pdstbox.unwrap_or(core::mem::zeroed())),
12208 psrcdata,
12209 srcrowpitch,
12210 srcdepthpitch,
12211 )
12212 }
12213 }
12214 pub unsafe fn ReadFromSubresource<P3>(
12215 &self,
12216 pdstdata: *mut core::ffi::c_void,
12217 dstrowpitch: u32,
12218 dstdepthpitch: u32,
12219 psrcresource: P3,
12220 srcsubresource: u32,
12221 psrcbox: Option<*const D3D11_BOX>,
12222 ) where
12223 P3: windows_core::Param<ID3D11Resource>,
12224 {
12225 unsafe {
12226 (windows_core::Interface::vtable(self).ReadFromSubresource)(
12227 windows_core::Interface::as_raw(self),
12228 core::mem::transmute(pdstdata),
12229 dstrowpitch,
12230 dstdepthpitch,
12231 psrcresource.param().abi(),
12232 srcsubresource,
12233 core::mem::transmute(psrcbox.unwrap_or(core::mem::zeroed())),
12234 )
12235 }
12236 }
12237}
12238#[repr(C)]
12239pub struct ID3D11Device3_Vtbl {
12240 pub base__: ID3D11Device2_Vtbl,
12241 #[cfg(feature = "Win32_Graphics_Dxgi_Common")]
12242 pub CreateTexture2D1: unsafe extern "system" fn(
12243 *mut core::ffi::c_void,
12244 *const D3D11_TEXTURE2D_DESC1,
12245 *const D3D11_SUBRESOURCE_DATA,
12246 *mut *mut core::ffi::c_void,
12247 ) -> windows_core::HRESULT,
12248 #[cfg(not(feature = "Win32_Graphics_Dxgi_Common"))]
12249 CreateTexture2D1: usize,
12250 #[cfg(feature = "Win32_Graphics_Dxgi_Common")]
12251 pub CreateTexture3D1: unsafe extern "system" fn(
12252 *mut core::ffi::c_void,
12253 *const D3D11_TEXTURE3D_DESC1,
12254 *const D3D11_SUBRESOURCE_DATA,
12255 *mut *mut core::ffi::c_void,
12256 ) -> windows_core::HRESULT,
12257 #[cfg(not(feature = "Win32_Graphics_Dxgi_Common"))]
12258 CreateTexture3D1: usize,
12259 pub CreateRasterizerState2: unsafe extern "system" fn(
12260 *mut core::ffi::c_void,
12261 *const D3D11_RASTERIZER_DESC2,
12262 *mut *mut core::ffi::c_void,
12263 ) -> windows_core::HRESULT,
12264 #[cfg(all(
12265 feature = "Win32_Graphics_Direct3D",
12266 feature = "Win32_Graphics_Dxgi_Common"
12267 ))]
12268 pub CreateShaderResourceView1: unsafe extern "system" fn(
12269 *mut core::ffi::c_void,
12270 *mut core::ffi::c_void,
12271 *const D3D11_SHADER_RESOURCE_VIEW_DESC1,
12272 *mut *mut core::ffi::c_void,
12273 ) -> windows_core::HRESULT,
12274 #[cfg(not(all(
12275 feature = "Win32_Graphics_Direct3D",
12276 feature = "Win32_Graphics_Dxgi_Common"
12277 )))]
12278 CreateShaderResourceView1: usize,
12279 #[cfg(feature = "Win32_Graphics_Dxgi_Common")]
12280 pub CreateUnorderedAccessView1: unsafe extern "system" fn(
12281 *mut core::ffi::c_void,
12282 *mut core::ffi::c_void,
12283 *const D3D11_UNORDERED_ACCESS_VIEW_DESC1,
12284 *mut *mut core::ffi::c_void,
12285 ) -> windows_core::HRESULT,
12286 #[cfg(not(feature = "Win32_Graphics_Dxgi_Common"))]
12287 CreateUnorderedAccessView1: usize,
12288 #[cfg(feature = "Win32_Graphics_Dxgi_Common")]
12289 pub CreateRenderTargetView1: unsafe extern "system" fn(
12290 *mut core::ffi::c_void,
12291 *mut core::ffi::c_void,
12292 *const D3D11_RENDER_TARGET_VIEW_DESC1,
12293 *mut *mut core::ffi::c_void,
12294 ) -> windows_core::HRESULT,
12295 #[cfg(not(feature = "Win32_Graphics_Dxgi_Common"))]
12296 CreateRenderTargetView1: usize,
12297 pub CreateQuery1: unsafe extern "system" fn(
12298 *mut core::ffi::c_void,
12299 *const D3D11_QUERY_DESC1,
12300 *mut *mut core::ffi::c_void,
12301 ) -> windows_core::HRESULT,
12302 pub GetImmediateContext3:
12303 unsafe extern "system" fn(*mut core::ffi::c_void, *mut *mut core::ffi::c_void),
12304 pub CreateDeferredContext3: unsafe extern "system" fn(
12305 *mut core::ffi::c_void,
12306 u32,
12307 *mut *mut core::ffi::c_void,
12308 ) -> windows_core::HRESULT,
12309 pub WriteToSubresource: unsafe extern "system" fn(
12310 *mut core::ffi::c_void,
12311 *mut core::ffi::c_void,
12312 u32,
12313 *const D3D11_BOX,
12314 *const core::ffi::c_void,
12315 u32,
12316 u32,
12317 ),
12318 pub ReadFromSubresource: unsafe extern "system" fn(
12319 *mut core::ffi::c_void,
12320 *mut core::ffi::c_void,
12321 u32,
12322 u32,
12323 *mut core::ffi::c_void,
12324 u32,
12325 *const D3D11_BOX,
12326 ),
12327}
12328#[cfg(all(
12329 feature = "Win32_Graphics_Direct3D",
12330 feature = "Win32_Graphics_Dxgi_Common"
12331))]
12332pub trait ID3D11Device3_Impl: ID3D11Device2_Impl {
12333 fn CreateTexture2D1(
12334 &self,
12335 pdesc1: *const D3D11_TEXTURE2D_DESC1,
12336 pinitialdata: *const D3D11_SUBRESOURCE_DATA,
12337 pptexture2d: windows_core::OutRef<'_, ID3D11Texture2D1>,
12338 ) -> windows_core::Result<()>;
12339 fn CreateTexture3D1(
12340 &self,
12341 pdesc1: *const D3D11_TEXTURE3D_DESC1,
12342 pinitialdata: *const D3D11_SUBRESOURCE_DATA,
12343 pptexture3d: windows_core::OutRef<'_, ID3D11Texture3D1>,
12344 ) -> windows_core::Result<()>;
12345 fn CreateRasterizerState2(
12346 &self,
12347 prasterizerdesc: *const D3D11_RASTERIZER_DESC2,
12348 pprasterizerstate: windows_core::OutRef<'_, ID3D11RasterizerState2>,
12349 ) -> windows_core::Result<()>;
12350 fn CreateShaderResourceView1(
12351 &self,
12352 presource: windows_core::Ref<'_, ID3D11Resource>,
12353 pdesc1: *const D3D11_SHADER_RESOURCE_VIEW_DESC1,
12354 ppsrview1: windows_core::OutRef<'_, ID3D11ShaderResourceView1>,
12355 ) -> windows_core::Result<()>;
12356 fn CreateUnorderedAccessView1(
12357 &self,
12358 presource: windows_core::Ref<'_, ID3D11Resource>,
12359 pdesc1: *const D3D11_UNORDERED_ACCESS_VIEW_DESC1,
12360 ppuaview1: windows_core::OutRef<'_, ID3D11UnorderedAccessView1>,
12361 ) -> windows_core::Result<()>;
12362 fn CreateRenderTargetView1(
12363 &self,
12364 presource: windows_core::Ref<'_, ID3D11Resource>,
12365 pdesc1: *const D3D11_RENDER_TARGET_VIEW_DESC1,
12366 pprtview1: windows_core::OutRef<'_, ID3D11RenderTargetView1>,
12367 ) -> windows_core::Result<()>;
12368 fn CreateQuery1(
12369 &self,
12370 pquerydesc1: *const D3D11_QUERY_DESC1,
12371 ppquery1: windows_core::OutRef<'_, ID3D11Query1>,
12372 ) -> windows_core::Result<()>;
12373 fn GetImmediateContext3(
12374 &self,
12375 ppimmediatecontext: windows_core::OutRef<'_, ID3D11DeviceContext3>,
12376 );
12377 fn CreateDeferredContext3(
12378 &self,
12379 contextflags: u32,
12380 ppdeferredcontext: windows_core::OutRef<'_, ID3D11DeviceContext3>,
12381 ) -> windows_core::Result<()>;
12382 fn WriteToSubresource(
12383 &self,
12384 pdstresource: windows_core::Ref<'_, ID3D11Resource>,
12385 dstsubresource: u32,
12386 pdstbox: *const D3D11_BOX,
12387 psrcdata: *const core::ffi::c_void,
12388 srcrowpitch: u32,
12389 srcdepthpitch: u32,
12390 );
12391 fn ReadFromSubresource(
12392 &self,
12393 pdstdata: *mut core::ffi::c_void,
12394 dstrowpitch: u32,
12395 dstdepthpitch: u32,
12396 psrcresource: windows_core::Ref<'_, ID3D11Resource>,
12397 srcsubresource: u32,
12398 psrcbox: *const D3D11_BOX,
12399 );
12400}
12401#[cfg(all(
12402 feature = "Win32_Graphics_Direct3D",
12403 feature = "Win32_Graphics_Dxgi_Common"
12404))]
12405impl ID3D11Device3_Vtbl {
12406 pub const fn new<Identity: ID3D11Device3_Impl, const OFFSET: isize>() -> Self {
12407 unsafe extern "system" fn CreateTexture2D1<
12408 Identity: ID3D11Device3_Impl,
12409 const OFFSET: isize,
12410 >(
12411 this: *mut core::ffi::c_void,
12412 pdesc1: *const D3D11_TEXTURE2D_DESC1,
12413 pinitialdata: *const D3D11_SUBRESOURCE_DATA,
12414 pptexture2d: *mut *mut core::ffi::c_void,
12415 ) -> windows_core::HRESULT {
12416 unsafe {
12417 let this: &Identity =
12418 &*((this as *const *const ()).offset(OFFSET) as *const Identity);
12419 ID3D11Device3_Impl::CreateTexture2D1(
12420 this,
12421 core::mem::transmute_copy(&pdesc1),
12422 core::mem::transmute_copy(&pinitialdata),
12423 core::mem::transmute_copy(&pptexture2d),
12424 )
12425 .into()
12426 }
12427 }
12428 unsafe extern "system" fn CreateTexture3D1<
12429 Identity: ID3D11Device3_Impl,
12430 const OFFSET: isize,
12431 >(
12432 this: *mut core::ffi::c_void,
12433 pdesc1: *const D3D11_TEXTURE3D_DESC1,
12434 pinitialdata: *const D3D11_SUBRESOURCE_DATA,
12435 pptexture3d: *mut *mut core::ffi::c_void,
12436 ) -> windows_core::HRESULT {
12437 unsafe {
12438 let this: &Identity =
12439 &*((this as *const *const ()).offset(OFFSET) as *const Identity);
12440 ID3D11Device3_Impl::CreateTexture3D1(
12441 this,
12442 core::mem::transmute_copy(&pdesc1),
12443 core::mem::transmute_copy(&pinitialdata),
12444 core::mem::transmute_copy(&pptexture3d),
12445 )
12446 .into()
12447 }
12448 }
12449 unsafe extern "system" fn CreateRasterizerState2<
12450 Identity: ID3D11Device3_Impl,
12451 const OFFSET: isize,
12452 >(
12453 this: *mut core::ffi::c_void,
12454 prasterizerdesc: *const D3D11_RASTERIZER_DESC2,
12455 pprasterizerstate: *mut *mut core::ffi::c_void,
12456 ) -> windows_core::HRESULT {
12457 unsafe {
12458 let this: &Identity =
12459 &*((this as *const *const ()).offset(OFFSET) as *const Identity);
12460 ID3D11Device3_Impl::CreateRasterizerState2(
12461 this,
12462 core::mem::transmute_copy(&prasterizerdesc),
12463 core::mem::transmute_copy(&pprasterizerstate),
12464 )
12465 .into()
12466 }
12467 }
12468 unsafe extern "system" fn CreateShaderResourceView1<
12469 Identity: ID3D11Device3_Impl,
12470 const OFFSET: isize,
12471 >(
12472 this: *mut core::ffi::c_void,
12473 presource: *mut core::ffi::c_void,
12474 pdesc1: *const D3D11_SHADER_RESOURCE_VIEW_DESC1,
12475 ppsrview1: *mut *mut core::ffi::c_void,
12476 ) -> windows_core::HRESULT {
12477 unsafe {
12478 let this: &Identity =
12479 &*((this as *const *const ()).offset(OFFSET) as *const Identity);
12480 ID3D11Device3_Impl::CreateShaderResourceView1(
12481 this,
12482 core::mem::transmute_copy(&presource),
12483 core::mem::transmute_copy(&pdesc1),
12484 core::mem::transmute_copy(&ppsrview1),
12485 )
12486 .into()
12487 }
12488 }
12489 unsafe extern "system" fn CreateUnorderedAccessView1<
12490 Identity: ID3D11Device3_Impl,
12491 const OFFSET: isize,
12492 >(
12493 this: *mut core::ffi::c_void,
12494 presource: *mut core::ffi::c_void,
12495 pdesc1: *const D3D11_UNORDERED_ACCESS_VIEW_DESC1,
12496 ppuaview1: *mut *mut core::ffi::c_void,
12497 ) -> windows_core::HRESULT {
12498 unsafe {
12499 let this: &Identity =
12500 &*((this as *const *const ()).offset(OFFSET) as *const Identity);
12501 ID3D11Device3_Impl::CreateUnorderedAccessView1(
12502 this,
12503 core::mem::transmute_copy(&presource),
12504 core::mem::transmute_copy(&pdesc1),
12505 core::mem::transmute_copy(&ppuaview1),
12506 )
12507 .into()
12508 }
12509 }
12510 unsafe extern "system" fn CreateRenderTargetView1<
12511 Identity: ID3D11Device3_Impl,
12512 const OFFSET: isize,
12513 >(
12514 this: *mut core::ffi::c_void,
12515 presource: *mut core::ffi::c_void,
12516 pdesc1: *const D3D11_RENDER_TARGET_VIEW_DESC1,
12517 pprtview1: *mut *mut core::ffi::c_void,
12518 ) -> windows_core::HRESULT {
12519 unsafe {
12520 let this: &Identity =
12521 &*((this as *const *const ()).offset(OFFSET) as *const Identity);
12522 ID3D11Device3_Impl::CreateRenderTargetView1(
12523 this,
12524 core::mem::transmute_copy(&presource),
12525 core::mem::transmute_copy(&pdesc1),
12526 core::mem::transmute_copy(&pprtview1),
12527 )
12528 .into()
12529 }
12530 }
12531 unsafe extern "system" fn CreateQuery1<
12532 Identity: ID3D11Device3_Impl,
12533 const OFFSET: isize,
12534 >(
12535 this: *mut core::ffi::c_void,
12536 pquerydesc1: *const D3D11_QUERY_DESC1,
12537 ppquery1: *mut *mut core::ffi::c_void,
12538 ) -> windows_core::HRESULT {
12539 unsafe {
12540 let this: &Identity =
12541 &*((this as *const *const ()).offset(OFFSET) as *const Identity);
12542 ID3D11Device3_Impl::CreateQuery1(
12543 this,
12544 core::mem::transmute_copy(&pquerydesc1),
12545 core::mem::transmute_copy(&ppquery1),
12546 )
12547 .into()
12548 }
12549 }
12550 unsafe extern "system" fn GetImmediateContext3<
12551 Identity: ID3D11Device3_Impl,
12552 const OFFSET: isize,
12553 >(
12554 this: *mut core::ffi::c_void,
12555 ppimmediatecontext: *mut *mut core::ffi::c_void,
12556 ) {
12557 unsafe {
12558 let this: &Identity =
12559 &*((this as *const *const ()).offset(OFFSET) as *const Identity);
12560 ID3D11Device3_Impl::GetImmediateContext3(
12561 this,
12562 core::mem::transmute_copy(&ppimmediatecontext),
12563 )
12564 }
12565 }
12566 unsafe extern "system" fn CreateDeferredContext3<
12567 Identity: ID3D11Device3_Impl,
12568 const OFFSET: isize,
12569 >(
12570 this: *mut core::ffi::c_void,
12571 contextflags: u32,
12572 ppdeferredcontext: *mut *mut core::ffi::c_void,
12573 ) -> windows_core::HRESULT {
12574 unsafe {
12575 let this: &Identity =
12576 &*((this as *const *const ()).offset(OFFSET) as *const Identity);
12577 ID3D11Device3_Impl::CreateDeferredContext3(
12578 this,
12579 core::mem::transmute_copy(&contextflags),
12580 core::mem::transmute_copy(&ppdeferredcontext),
12581 )
12582 .into()
12583 }
12584 }
12585 unsafe extern "system" fn WriteToSubresource<
12586 Identity: ID3D11Device3_Impl,
12587 const OFFSET: isize,
12588 >(
12589 this: *mut core::ffi::c_void,
12590 pdstresource: *mut core::ffi::c_void,
12591 dstsubresource: u32,
12592 pdstbox: *const D3D11_BOX,
12593 psrcdata: *const core::ffi::c_void,
12594 srcrowpitch: u32,
12595 srcdepthpitch: u32,
12596 ) {
12597 unsafe {
12598 let this: &Identity =
12599 &*((this as *const *const ()).offset(OFFSET) as *const Identity);
12600 ID3D11Device3_Impl::WriteToSubresource(
12601 this,
12602 core::mem::transmute_copy(&pdstresource),
12603 core::mem::transmute_copy(&dstsubresource),
12604 core::mem::transmute_copy(&pdstbox),
12605 core::mem::transmute_copy(&psrcdata),
12606 core::mem::transmute_copy(&srcrowpitch),
12607 core::mem::transmute_copy(&srcdepthpitch),
12608 )
12609 }
12610 }
12611 unsafe extern "system" fn ReadFromSubresource<
12612 Identity: ID3D11Device3_Impl,
12613 const OFFSET: isize,
12614 >(
12615 this: *mut core::ffi::c_void,
12616 pdstdata: *mut core::ffi::c_void,
12617 dstrowpitch: u32,
12618 dstdepthpitch: u32,
12619 psrcresource: *mut core::ffi::c_void,
12620 srcsubresource: u32,
12621 psrcbox: *const D3D11_BOX,
12622 ) {
12623 unsafe {
12624 let this: &Identity =
12625 &*((this as *const *const ()).offset(OFFSET) as *const Identity);
12626 ID3D11Device3_Impl::ReadFromSubresource(
12627 this,
12628 core::mem::transmute_copy(&pdstdata),
12629 core::mem::transmute_copy(&dstrowpitch),
12630 core::mem::transmute_copy(&dstdepthpitch),
12631 core::mem::transmute_copy(&psrcresource),
12632 core::mem::transmute_copy(&srcsubresource),
12633 core::mem::transmute_copy(&psrcbox),
12634 )
12635 }
12636 }
12637 Self {
12638 base__: ID3D11Device2_Vtbl::new::<Identity, OFFSET>(),
12639 CreateTexture2D1: CreateTexture2D1::<Identity, OFFSET>,
12640 CreateTexture3D1: CreateTexture3D1::<Identity, OFFSET>,
12641 CreateRasterizerState2: CreateRasterizerState2::<Identity, OFFSET>,
12642 CreateShaderResourceView1: CreateShaderResourceView1::<Identity, OFFSET>,
12643 CreateUnorderedAccessView1: CreateUnorderedAccessView1::<Identity, OFFSET>,
12644 CreateRenderTargetView1: CreateRenderTargetView1::<Identity, OFFSET>,
12645 CreateQuery1: CreateQuery1::<Identity, OFFSET>,
12646 GetImmediateContext3: GetImmediateContext3::<Identity, OFFSET>,
12647 CreateDeferredContext3: CreateDeferredContext3::<Identity, OFFSET>,
12648 WriteToSubresource: WriteToSubresource::<Identity, OFFSET>,
12649 ReadFromSubresource: ReadFromSubresource::<Identity, OFFSET>,
12650 }
12651 }
12652 pub fn matches(iid: &windows_core::GUID) -> bool {
12653 iid == &<ID3D11Device3 as windows_core::Interface>::IID
12654 || iid == &<ID3D11Device as windows_core::Interface>::IID
12655 || iid == &<ID3D11Device1 as windows_core::Interface>::IID
12656 || iid == &<ID3D11Device2 as windows_core::Interface>::IID
12657 }
12658}
12659#[cfg(all(
12660 feature = "Win32_Graphics_Direct3D",
12661 feature = "Win32_Graphics_Dxgi_Common"
12662))]
12663impl windows_core::RuntimeName for ID3D11Device3 {}
12664#[cfg(all(
12665 feature = "Win32_Graphics_Direct3D",
12666 feature = "Win32_Graphics_Dxgi_Common"
12667))]
12668unsafe impl Send for ID3D11Device3 {}
12669#[cfg(all(
12670 feature = "Win32_Graphics_Direct3D",
12671 feature = "Win32_Graphics_Dxgi_Common"
12672))]
12673unsafe impl Sync for ID3D11Device3 {}
12674windows_core::imp::define_interface!(
12675 ID3D11Device4,
12676 ID3D11Device4_Vtbl,
12677 0x8992ab71_02e6_4b8d_ba48_b056dcda42c4
12678);
12679impl core::ops::Deref for ID3D11Device4 {
12680 type Target = ID3D11Device3;
12681 fn deref(&self) -> &Self::Target {
12682 unsafe { core::mem::transmute(self) }
12683 }
12684}
12685windows_core::imp::interface_hierarchy!(
12686 ID3D11Device4,
12687 windows_core::IUnknown,
12688 ID3D11Device,
12689 ID3D11Device1,
12690 ID3D11Device2,
12691 ID3D11Device3
12692);
12693impl ID3D11Device4 {
12694 pub unsafe fn RegisterDeviceRemovedEvent(
12695 &self,
12696 hevent: crate::Foundation::HANDLE,
12697 ) -> windows_core::Result<u32> {
12698 unsafe {
12699 let mut result__ = core::mem::zeroed();
12700 (windows_core::Interface::vtable(self).RegisterDeviceRemovedEvent)(
12701 windows_core::Interface::as_raw(self),
12702 hevent,
12703 &mut result__,
12704 )
12705 .map(|| result__)
12706 }
12707 }
12708 pub unsafe fn UnregisterDeviceRemoved(&self, dwcookie: u32) {
12709 unsafe {
12710 (windows_core::Interface::vtable(self).UnregisterDeviceRemoved)(
12711 windows_core::Interface::as_raw(self),
12712 dwcookie,
12713 )
12714 }
12715 }
12716}
12717#[repr(C)]
12718pub struct ID3D11Device4_Vtbl {
12719 pub base__: ID3D11Device3_Vtbl,
12720 pub RegisterDeviceRemovedEvent: unsafe extern "system" fn(
12721 *mut core::ffi::c_void,
12722 crate::Foundation::HANDLE,
12723 *mut u32,
12724 ) -> windows_core::HRESULT,
12725 pub UnregisterDeviceRemoved: unsafe extern "system" fn(*mut core::ffi::c_void, u32),
12726}
12727#[cfg(all(
12728 feature = "Win32_Graphics_Direct3D",
12729 feature = "Win32_Graphics_Dxgi_Common"
12730))]
12731pub trait ID3D11Device4_Impl: ID3D11Device3_Impl {
12732 fn RegisterDeviceRemovedEvent(
12733 &self,
12734 hevent: crate::Foundation::HANDLE,
12735 ) -> windows_core::Result<u32>;
12736 fn UnregisterDeviceRemoved(&self, dwcookie: u32);
12737}
12738#[cfg(all(
12739 feature = "Win32_Graphics_Direct3D",
12740 feature = "Win32_Graphics_Dxgi_Common"
12741))]
12742impl ID3D11Device4_Vtbl {
12743 pub const fn new<Identity: ID3D11Device4_Impl, const OFFSET: isize>() -> Self {
12744 unsafe extern "system" fn RegisterDeviceRemovedEvent<
12745 Identity: ID3D11Device4_Impl,
12746 const OFFSET: isize,
12747 >(
12748 this: *mut core::ffi::c_void,
12749 hevent: crate::Foundation::HANDLE,
12750 pdwcookie: *mut u32,
12751 ) -> windows_core::HRESULT {
12752 unsafe {
12753 let this: &Identity =
12754 &*((this as *const *const ()).offset(OFFSET) as *const Identity);
12755 match ID3D11Device4_Impl::RegisterDeviceRemovedEvent(
12756 this,
12757 core::mem::transmute_copy(&hevent),
12758 ) {
12759 Ok(ok__) => {
12760 pdwcookie.write(core::mem::transmute(ok__));
12761 windows_core::HRESULT(0)
12762 }
12763 Err(err) => err.into(),
12764 }
12765 }
12766 }
12767 unsafe extern "system" fn UnregisterDeviceRemoved<
12768 Identity: ID3D11Device4_Impl,
12769 const OFFSET: isize,
12770 >(
12771 this: *mut core::ffi::c_void,
12772 dwcookie: u32,
12773 ) {
12774 unsafe {
12775 let this: &Identity =
12776 &*((this as *const *const ()).offset(OFFSET) as *const Identity);
12777 ID3D11Device4_Impl::UnregisterDeviceRemoved(
12778 this,
12779 core::mem::transmute_copy(&dwcookie),
12780 )
12781 }
12782 }
12783 Self {
12784 base__: ID3D11Device3_Vtbl::new::<Identity, OFFSET>(),
12785 RegisterDeviceRemovedEvent: RegisterDeviceRemovedEvent::<Identity, OFFSET>,
12786 UnregisterDeviceRemoved: UnregisterDeviceRemoved::<Identity, OFFSET>,
12787 }
12788 }
12789 pub fn matches(iid: &windows_core::GUID) -> bool {
12790 iid == &<ID3D11Device4 as windows_core::Interface>::IID
12791 || iid == &<ID3D11Device as windows_core::Interface>::IID
12792 || iid == &<ID3D11Device1 as windows_core::Interface>::IID
12793 || iid == &<ID3D11Device2 as windows_core::Interface>::IID
12794 || iid == &<ID3D11Device3 as windows_core::Interface>::IID
12795 }
12796}
12797#[cfg(all(
12798 feature = "Win32_Graphics_Direct3D",
12799 feature = "Win32_Graphics_Dxgi_Common"
12800))]
12801impl windows_core::RuntimeName for ID3D11Device4 {}
12802#[cfg(all(
12803 feature = "Win32_Graphics_Direct3D",
12804 feature = "Win32_Graphics_Dxgi_Common"
12805))]
12806unsafe impl Send for ID3D11Device4 {}
12807#[cfg(all(
12808 feature = "Win32_Graphics_Direct3D",
12809 feature = "Win32_Graphics_Dxgi_Common"
12810))]
12811unsafe impl Sync for ID3D11Device4 {}
12812windows_core::imp::define_interface!(
12813 ID3D11Device5,
12814 ID3D11Device5_Vtbl,
12815 0x8ffde202_a0e7_45df_9e01_e837801b5ea0
12816);
12817impl core::ops::Deref for ID3D11Device5 {
12818 type Target = ID3D11Device4;
12819 fn deref(&self) -> &Self::Target {
12820 unsafe { core::mem::transmute(self) }
12821 }
12822}
12823windows_core::imp::interface_hierarchy!(
12824 ID3D11Device5,
12825 windows_core::IUnknown,
12826 ID3D11Device,
12827 ID3D11Device1,
12828 ID3D11Device2,
12829 ID3D11Device3,
12830 ID3D11Device4
12831);
12832impl ID3D11Device5 {
12833 pub unsafe fn OpenSharedFence<T>(
12834 &self,
12835 hfence: crate::Foundation::HANDLE,
12836 result__: *mut Option<T>,
12837 ) -> windows_core::Result<()>
12838 where
12839 T: windows_core::Interface,
12840 {
12841 unsafe {
12842 (windows_core::Interface::vtable(self).OpenSharedFence)(
12843 windows_core::Interface::as_raw(self),
12844 hfence,
12845 &T::IID,
12846 result__ as *mut _ as *mut _,
12847 )
12848 .ok()
12849 }
12850 }
12851 pub unsafe fn CreateFence<T>(
12852 &self,
12853 initialvalue: u64,
12854 flags: D3D11_FENCE_FLAG,
12855 result__: *mut Option<T>,
12856 ) -> windows_core::Result<()>
12857 where
12858 T: windows_core::Interface,
12859 {
12860 unsafe {
12861 (windows_core::Interface::vtable(self).CreateFence)(
12862 windows_core::Interface::as_raw(self),
12863 initialvalue,
12864 flags,
12865 &T::IID,
12866 result__ as *mut _ as *mut _,
12867 )
12868 .ok()
12869 }
12870 }
12871}
12872#[repr(C)]
12873pub struct ID3D11Device5_Vtbl {
12874 pub base__: ID3D11Device4_Vtbl,
12875 pub OpenSharedFence: unsafe extern "system" fn(
12876 *mut core::ffi::c_void,
12877 crate::Foundation::HANDLE,
12878 *const windows_core::GUID,
12879 *mut *mut core::ffi::c_void,
12880 ) -> windows_core::HRESULT,
12881 pub CreateFence: unsafe extern "system" fn(
12882 *mut core::ffi::c_void,
12883 u64,
12884 D3D11_FENCE_FLAG,
12885 *const windows_core::GUID,
12886 *mut *mut core::ffi::c_void,
12887 ) -> windows_core::HRESULT,
12888}
12889#[cfg(all(
12890 feature = "Win32_Graphics_Direct3D",
12891 feature = "Win32_Graphics_Dxgi_Common"
12892))]
12893pub trait ID3D11Device5_Impl: ID3D11Device4_Impl {
12894 fn OpenSharedFence(
12895 &self,
12896 hfence: crate::Foundation::HANDLE,
12897 returnedinterface: *const windows_core::GUID,
12898 ppfence: *mut *mut core::ffi::c_void,
12899 ) -> windows_core::Result<()>;
12900 fn CreateFence(
12901 &self,
12902 initialvalue: u64,
12903 flags: D3D11_FENCE_FLAG,
12904 returnedinterface: *const windows_core::GUID,
12905 ppfence: *mut *mut core::ffi::c_void,
12906 ) -> windows_core::Result<()>;
12907}
12908#[cfg(all(
12909 feature = "Win32_Graphics_Direct3D",
12910 feature = "Win32_Graphics_Dxgi_Common"
12911))]
12912impl ID3D11Device5_Vtbl {
12913 pub const fn new<Identity: ID3D11Device5_Impl, const OFFSET: isize>() -> Self {
12914 unsafe extern "system" fn OpenSharedFence<
12915 Identity: ID3D11Device5_Impl,
12916 const OFFSET: isize,
12917 >(
12918 this: *mut core::ffi::c_void,
12919 hfence: crate::Foundation::HANDLE,
12920 returnedinterface: *const windows_core::GUID,
12921 ppfence: *mut *mut core::ffi::c_void,
12922 ) -> windows_core::HRESULT {
12923 unsafe {
12924 let this: &Identity =
12925 &*((this as *const *const ()).offset(OFFSET) as *const Identity);
12926 ID3D11Device5_Impl::OpenSharedFence(
12927 this,
12928 core::mem::transmute_copy(&hfence),
12929 core::mem::transmute_copy(&returnedinterface),
12930 core::mem::transmute_copy(&ppfence),
12931 )
12932 .into()
12933 }
12934 }
12935 unsafe extern "system" fn CreateFence<Identity: ID3D11Device5_Impl, const OFFSET: isize>(
12936 this: *mut core::ffi::c_void,
12937 initialvalue: u64,
12938 flags: D3D11_FENCE_FLAG,
12939 returnedinterface: *const windows_core::GUID,
12940 ppfence: *mut *mut core::ffi::c_void,
12941 ) -> windows_core::HRESULT {
12942 unsafe {
12943 let this: &Identity =
12944 &*((this as *const *const ()).offset(OFFSET) as *const Identity);
12945 ID3D11Device5_Impl::CreateFence(
12946 this,
12947 core::mem::transmute_copy(&initialvalue),
12948 core::mem::transmute_copy(&flags),
12949 core::mem::transmute_copy(&returnedinterface),
12950 core::mem::transmute_copy(&ppfence),
12951 )
12952 .into()
12953 }
12954 }
12955 Self {
12956 base__: ID3D11Device4_Vtbl::new::<Identity, OFFSET>(),
12957 OpenSharedFence: OpenSharedFence::<Identity, OFFSET>,
12958 CreateFence: CreateFence::<Identity, OFFSET>,
12959 }
12960 }
12961 pub fn matches(iid: &windows_core::GUID) -> bool {
12962 iid == &<ID3D11Device5 as windows_core::Interface>::IID
12963 || iid == &<ID3D11Device as windows_core::Interface>::IID
12964 || iid == &<ID3D11Device1 as windows_core::Interface>::IID
12965 || iid == &<ID3D11Device2 as windows_core::Interface>::IID
12966 || iid == &<ID3D11Device3 as windows_core::Interface>::IID
12967 || iid == &<ID3D11Device4 as windows_core::Interface>::IID
12968 }
12969}
12970#[cfg(all(
12971 feature = "Win32_Graphics_Direct3D",
12972 feature = "Win32_Graphics_Dxgi_Common"
12973))]
12974impl windows_core::RuntimeName for ID3D11Device5 {}
12975#[cfg(all(
12976 feature = "Win32_Graphics_Direct3D",
12977 feature = "Win32_Graphics_Dxgi_Common"
12978))]
12979unsafe impl Send for ID3D11Device5 {}
12980#[cfg(all(
12981 feature = "Win32_Graphics_Direct3D",
12982 feature = "Win32_Graphics_Dxgi_Common"
12983))]
12984unsafe impl Sync for ID3D11Device5 {}
12985windows_core::imp::define_interface!(
12986 ID3D11DeviceChild,
12987 ID3D11DeviceChild_Vtbl,
12988 0x1841e5c8_16b0_489b_bcc8_44cfb0d5deae
12989);
12990windows_core::imp::interface_hierarchy!(ID3D11DeviceChild, windows_core::IUnknown);
12991impl ID3D11DeviceChild {
12992 pub unsafe fn GetDevice(&self) -> windows_core::Result<ID3D11Device> {
12993 unsafe {
12994 let mut result__ = core::mem::zeroed();
12995 (windows_core::Interface::vtable(self).GetDevice)(
12996 windows_core::Interface::as_raw(self),
12997 &mut result__,
12998 );
12999 windows_core::Type::from_abi(result__)
13000 }
13001 }
13002 pub unsafe fn GetPrivateData(
13003 &self,
13004 guid: *const windows_core::GUID,
13005 pdatasize: *mut u32,
13006 pdata: Option<*mut core::ffi::c_void>,
13007 ) -> windows_core::Result<()> {
13008 unsafe {
13009 (windows_core::Interface::vtable(self).GetPrivateData)(
13010 windows_core::Interface::as_raw(self),
13011 guid,
13012 core::mem::transmute(pdatasize),
13013 core::mem::transmute(pdata.unwrap_or(core::mem::zeroed())),
13014 )
13015 .ok()
13016 }
13017 }
13018 pub unsafe fn SetPrivateData(
13019 &self,
13020 guid: *const windows_core::GUID,
13021 datasize: u32,
13022 pdata: Option<*const core::ffi::c_void>,
13023 ) -> windows_core::Result<()> {
13024 unsafe {
13025 (windows_core::Interface::vtable(self).SetPrivateData)(
13026 windows_core::Interface::as_raw(self),
13027 guid,
13028 datasize,
13029 core::mem::transmute(pdata.unwrap_or(core::mem::zeroed())),
13030 )
13031 .ok()
13032 }
13033 }
13034 pub unsafe fn SetPrivateDataInterface<P1>(
13035 &self,
13036 guid: *const windows_core::GUID,
13037 pdata: P1,
13038 ) -> windows_core::Result<()>
13039 where
13040 P1: windows_core::Param<windows_core::IUnknown>,
13041 {
13042 unsafe {
13043 (windows_core::Interface::vtable(self).SetPrivateDataInterface)(
13044 windows_core::Interface::as_raw(self),
13045 guid,
13046 pdata.param().abi(),
13047 )
13048 .ok()
13049 }
13050 }
13051}
13052#[repr(C)]
13053pub struct ID3D11DeviceChild_Vtbl {
13054 pub base__: windows_core::IUnknown_Vtbl,
13055 pub GetDevice: unsafe extern "system" fn(*mut core::ffi::c_void, *mut *mut core::ffi::c_void),
13056 pub GetPrivateData: unsafe extern "system" fn(
13057 *mut core::ffi::c_void,
13058 *const windows_core::GUID,
13059 *mut u32,
13060 *mut core::ffi::c_void,
13061 ) -> windows_core::HRESULT,
13062 pub SetPrivateData: unsafe extern "system" fn(
13063 *mut core::ffi::c_void,
13064 *const windows_core::GUID,
13065 u32,
13066 *const core::ffi::c_void,
13067 ) -> windows_core::HRESULT,
13068 pub SetPrivateDataInterface: unsafe extern "system" fn(
13069 *mut core::ffi::c_void,
13070 *const windows_core::GUID,
13071 *mut core::ffi::c_void,
13072 ) -> windows_core::HRESULT,
13073}
13074pub trait ID3D11DeviceChild_Impl: windows_core::IUnknownImpl {
13075 fn GetDevice(&self, ppdevice: windows_core::OutRef<'_, ID3D11Device>);
13076 fn GetPrivateData(
13077 &self,
13078 guid: *const windows_core::GUID,
13079 pdatasize: *mut u32,
13080 pdata: *mut core::ffi::c_void,
13081 ) -> windows_core::Result<()>;
13082 fn SetPrivateData(
13083 &self,
13084 guid: *const windows_core::GUID,
13085 datasize: u32,
13086 pdata: *const core::ffi::c_void,
13087 ) -> windows_core::Result<()>;
13088 fn SetPrivateDataInterface(
13089 &self,
13090 guid: *const windows_core::GUID,
13091 pdata: windows_core::Ref<'_, windows_core::IUnknown>,
13092 ) -> windows_core::Result<()>;
13093}
13094impl ID3D11DeviceChild_Vtbl {
13095 pub const fn new<Identity: ID3D11DeviceChild_Impl, const OFFSET: isize>() -> Self {
13096 unsafe extern "system" fn GetDevice<
13097 Identity: ID3D11DeviceChild_Impl,
13098 const OFFSET: isize,
13099 >(
13100 this: *mut core::ffi::c_void,
13101 ppdevice: *mut *mut core::ffi::c_void,
13102 ) {
13103 unsafe {
13104 let this: &Identity =
13105 &*((this as *const *const ()).offset(OFFSET) as *const Identity);
13106 ID3D11DeviceChild_Impl::GetDevice(this, core::mem::transmute_copy(&ppdevice))
13107 }
13108 }
13109 unsafe extern "system" fn GetPrivateData<
13110 Identity: ID3D11DeviceChild_Impl,
13111 const OFFSET: isize,
13112 >(
13113 this: *mut core::ffi::c_void,
13114 guid: *const windows_core::GUID,
13115 pdatasize: *mut u32,
13116 pdata: *mut core::ffi::c_void,
13117 ) -> windows_core::HRESULT {
13118 unsafe {
13119 let this: &Identity =
13120 &*((this as *const *const ()).offset(OFFSET) as *const Identity);
13121 ID3D11DeviceChild_Impl::GetPrivateData(
13122 this,
13123 core::mem::transmute_copy(&guid),
13124 core::mem::transmute_copy(&pdatasize),
13125 core::mem::transmute_copy(&pdata),
13126 )
13127 .into()
13128 }
13129 }
13130 unsafe extern "system" fn SetPrivateData<
13131 Identity: ID3D11DeviceChild_Impl,
13132 const OFFSET: isize,
13133 >(
13134 this: *mut core::ffi::c_void,
13135 guid: *const windows_core::GUID,
13136 datasize: u32,
13137 pdata: *const core::ffi::c_void,
13138 ) -> windows_core::HRESULT {
13139 unsafe {
13140 let this: &Identity =
13141 &*((this as *const *const ()).offset(OFFSET) as *const Identity);
13142 ID3D11DeviceChild_Impl::SetPrivateData(
13143 this,
13144 core::mem::transmute_copy(&guid),
13145 core::mem::transmute_copy(&datasize),
13146 core::mem::transmute_copy(&pdata),
13147 )
13148 .into()
13149 }
13150 }
13151 unsafe extern "system" fn SetPrivateDataInterface<
13152 Identity: ID3D11DeviceChild_Impl,
13153 const OFFSET: isize,
13154 >(
13155 this: *mut core::ffi::c_void,
13156 guid: *const windows_core::GUID,
13157 pdata: *mut core::ffi::c_void,
13158 ) -> windows_core::HRESULT {
13159 unsafe {
13160 let this: &Identity =
13161 &*((this as *const *const ()).offset(OFFSET) as *const Identity);
13162 ID3D11DeviceChild_Impl::SetPrivateDataInterface(
13163 this,
13164 core::mem::transmute_copy(&guid),
13165 core::mem::transmute_copy(&pdata),
13166 )
13167 .into()
13168 }
13169 }
13170 Self {
13171 base__: windows_core::IUnknown_Vtbl::new::<Identity, OFFSET>(),
13172 GetDevice: GetDevice::<Identity, OFFSET>,
13173 GetPrivateData: GetPrivateData::<Identity, OFFSET>,
13174 SetPrivateData: SetPrivateData::<Identity, OFFSET>,
13175 SetPrivateDataInterface: SetPrivateDataInterface::<Identity, OFFSET>,
13176 }
13177 }
13178 pub fn matches(iid: &windows_core::GUID) -> bool {
13179 iid == &<ID3D11DeviceChild as windows_core::Interface>::IID
13180 }
13181}
13182impl windows_core::RuntimeName for ID3D11DeviceChild {}
13183unsafe impl Send for ID3D11DeviceChild {}
13184unsafe impl Sync for ID3D11DeviceChild {}
13185windows_core::imp::define_interface!(
13186 ID3D11DeviceContext,
13187 ID3D11DeviceContext_Vtbl,
13188 0xc0bfa96c_e089_44fb_8eaf_26f8796190da
13189);
13190impl core::ops::Deref for ID3D11DeviceContext {
13191 type Target = ID3D11DeviceChild;
13192 fn deref(&self) -> &Self::Target {
13193 unsafe { core::mem::transmute(self) }
13194 }
13195}
13196windows_core::imp::interface_hierarchy!(
13197 ID3D11DeviceContext,
13198 windows_core::IUnknown,
13199 ID3D11DeviceChild
13200);
13201impl ID3D11DeviceContext {
13202 pub unsafe fn VSSetConstantBuffers(
13203 &self,
13204 startslot: u32,
13205 ppconstantbuffers: Option<&[Option<ID3D11Buffer>]>,
13206 ) {
13207 unsafe {
13208 (windows_core::Interface::vtable(self).VSSetConstantBuffers)(
13209 windows_core::Interface::as_raw(self),
13210 startslot,
13211 ppconstantbuffers
13212 .map_or(0, |slice| slice.len().try_into().unwrap()),
13213 core::mem::transmute(
13214 ppconstantbuffers
13215 .map_or(core::ptr::null(), |slice| slice.as_ptr()),
13216 ),
13217 )
13218 }
13219 }
13220 pub unsafe fn PSSetShaderResources(
13221 &self,
13222 startslot: u32,
13223 ppshaderresourceviews: Option<&[Option<ID3D11ShaderResourceView>]>,
13224 ) {
13225 unsafe {
13226 (windows_core::Interface::vtable(self).PSSetShaderResources)(
13227 windows_core::Interface::as_raw(self),
13228 startslot,
13229 ppshaderresourceviews
13230 .map_or(0, |slice| slice.len().try_into().unwrap()),
13231 core::mem::transmute(
13232 ppshaderresourceviews
13233 .map_or(core::ptr::null(), |slice| slice.as_ptr()),
13234 ),
13235 )
13236 }
13237 }
13238 pub unsafe fn PSSetShader<P0>(
13239 &self,
13240 ppixelshader: P0,
13241 ppclassinstances: Option<&[Option<ID3D11ClassInstance>]>,
13242 ) where
13243 P0: windows_core::Param<ID3D11PixelShader>,
13244 {
13245 unsafe {
13246 (windows_core::Interface::vtable(self).PSSetShader)(
13247 windows_core::Interface::as_raw(self),
13248 ppixelshader.param().abi(),
13249 core::mem::transmute(
13250 ppclassinstances
13251 .map_or(core::ptr::null(), |slice| slice.as_ptr()),
13252 ),
13253 ppclassinstances
13254 .map_or(0, |slice| slice.len().try_into().unwrap()),
13255 )
13256 }
13257 }
13258 pub unsafe fn PSSetSamplers(
13259 &self,
13260 startslot: u32,
13261 ppsamplers: Option<&[Option<ID3D11SamplerState>]>,
13262 ) {
13263 unsafe {
13264 (windows_core::Interface::vtable(self).PSSetSamplers)(
13265 windows_core::Interface::as_raw(self),
13266 startslot,
13267 ppsamplers
13268 .map_or(0, |slice| slice.len().try_into().unwrap()),
13269 core::mem::transmute(
13270 ppsamplers
13271 .map_or(core::ptr::null(), |slice| slice.as_ptr()),
13272 ),
13273 )
13274 }
13275 }
13276 pub unsafe fn VSSetShader<P0>(
13277 &self,
13278 pvertexshader: P0,
13279 ppclassinstances: Option<&[Option<ID3D11ClassInstance>]>,
13280 ) where
13281 P0: windows_core::Param<ID3D11VertexShader>,
13282 {
13283 unsafe {
13284 (windows_core::Interface::vtable(self).VSSetShader)(
13285 windows_core::Interface::as_raw(self),
13286 pvertexshader.param().abi(),
13287 core::mem::transmute(
13288 ppclassinstances
13289 .map_or(core::ptr::null(), |slice| slice.as_ptr()),
13290 ),
13291 ppclassinstances
13292 .map_or(0, |slice| slice.len().try_into().unwrap()),
13293 )
13294 }
13295 }
13296 pub unsafe fn DrawIndexed(
13297 &self,
13298 indexcount: u32,
13299 startindexlocation: u32,
13300 basevertexlocation: i32,
13301 ) {
13302 unsafe {
13303 (windows_core::Interface::vtable(self).DrawIndexed)(
13304 windows_core::Interface::as_raw(self),
13305 indexcount,
13306 startindexlocation,
13307 basevertexlocation,
13308 )
13309 }
13310 }
13311 pub unsafe fn Draw(&self, vertexcount: u32, startvertexlocation: u32) {
13312 unsafe {
13313 (windows_core::Interface::vtable(self).Draw)(
13314 windows_core::Interface::as_raw(self),
13315 vertexcount,
13316 startvertexlocation,
13317 )
13318 }
13319 }
13320 pub unsafe fn Map<P0>(
13321 &self,
13322 presource: P0,
13323 subresource: u32,
13324 maptype: D3D11_MAP,
13325 mapflags: u32,
13326 pmappedresource: Option<*mut D3D11_MAPPED_SUBRESOURCE>,
13327 ) -> windows_core::Result<()>
13328 where
13329 P0: windows_core::Param<ID3D11Resource>,
13330 {
13331 unsafe {
13332 (windows_core::Interface::vtable(self).Map)(
13333 windows_core::Interface::as_raw(self),
13334 presource.param().abi(),
13335 subresource,
13336 maptype,
13337 mapflags,
13338 core::mem::transmute(pmappedresource.unwrap_or(core::mem::zeroed())),
13339 )
13340 .ok()
13341 }
13342 }
13343 pub unsafe fn Unmap<P0>(&self, presource: P0, subresource: u32)
13344 where
13345 P0: windows_core::Param<ID3D11Resource>,
13346 {
13347 unsafe {
13348 (windows_core::Interface::vtable(self).Unmap)(
13349 windows_core::Interface::as_raw(self),
13350 presource.param().abi(),
13351 subresource,
13352 )
13353 }
13354 }
13355 pub unsafe fn PSSetConstantBuffers(
13356 &self,
13357 startslot: u32,
13358 ppconstantbuffers: Option<&[Option<ID3D11Buffer>]>,
13359 ) {
13360 unsafe {
13361 (windows_core::Interface::vtable(self).PSSetConstantBuffers)(
13362 windows_core::Interface::as_raw(self),
13363 startslot,
13364 ppconstantbuffers
13365 .map_or(0, |slice| slice.len().try_into().unwrap()),
13366 core::mem::transmute(
13367 ppconstantbuffers
13368 .map_or(core::ptr::null(), |slice| slice.as_ptr()),
13369 ),
13370 )
13371 }
13372 }
13373 pub unsafe fn IASetInputLayout<P0>(&self, pinputlayout: P0)
13374 where
13375 P0: windows_core::Param<ID3D11InputLayout>,
13376 {
13377 unsafe {
13378 (windows_core::Interface::vtable(self).IASetInputLayout)(
13379 windows_core::Interface::as_raw(self),
13380 pinputlayout.param().abi(),
13381 )
13382 }
13383 }
13384 pub unsafe fn IASetVertexBuffers(
13385 &self,
13386 startslot: u32,
13387 numbuffers: u32,
13388 ppvertexbuffers: Option<*const Option<ID3D11Buffer>>,
13389 pstrides: Option<*const u32>,
13390 poffsets: Option<*const u32>,
13391 ) {
13392 unsafe {
13393 (windows_core::Interface::vtable(self).IASetVertexBuffers)(
13394 windows_core::Interface::as_raw(self),
13395 startslot,
13396 numbuffers,
13397 core::mem::transmute(ppvertexbuffers.unwrap_or(core::mem::zeroed())),
13398 core::mem::transmute(pstrides.unwrap_or(core::mem::zeroed())),
13399 core::mem::transmute(poffsets.unwrap_or(core::mem::zeroed())),
13400 )
13401 }
13402 }
13403 #[cfg(feature = "Win32_Graphics_Dxgi_Common")]
13404 pub unsafe fn IASetIndexBuffer<P0>(
13405 &self,
13406 pindexbuffer: P0,
13407 format: crate::Dxgi::Common::DXGI_FORMAT,
13408 offset: u32,
13409 ) where
13410 P0: windows_core::Param<ID3D11Buffer>,
13411 {
13412 unsafe {
13413 (windows_core::Interface::vtable(self).IASetIndexBuffer)(
13414 windows_core::Interface::as_raw(self),
13415 pindexbuffer.param().abi(),
13416 format,
13417 offset,
13418 )
13419 }
13420 }
13421 pub unsafe fn DrawIndexedInstanced(
13422 &self,
13423 indexcountperinstance: u32,
13424 instancecount: u32,
13425 startindexlocation: u32,
13426 basevertexlocation: i32,
13427 startinstancelocation: u32,
13428 ) {
13429 unsafe {
13430 (windows_core::Interface::vtable(self).DrawIndexedInstanced)(
13431 windows_core::Interface::as_raw(self),
13432 indexcountperinstance,
13433 instancecount,
13434 startindexlocation,
13435 basevertexlocation,
13436 startinstancelocation,
13437 )
13438 }
13439 }
13440 pub unsafe fn DrawInstanced(
13441 &self,
13442 vertexcountperinstance: u32,
13443 instancecount: u32,
13444 startvertexlocation: u32,
13445 startinstancelocation: u32,
13446 ) {
13447 unsafe {
13448 (windows_core::Interface::vtable(self).DrawInstanced)(
13449 windows_core::Interface::as_raw(self),
13450 vertexcountperinstance,
13451 instancecount,
13452 startvertexlocation,
13453 startinstancelocation,
13454 )
13455 }
13456 }
13457 pub unsafe fn GSSetConstantBuffers(
13458 &self,
13459 startslot: u32,
13460 ppconstantbuffers: Option<&[Option<ID3D11Buffer>]>,
13461 ) {
13462 unsafe {
13463 (windows_core::Interface::vtable(self).GSSetConstantBuffers)(
13464 windows_core::Interface::as_raw(self),
13465 startslot,
13466 ppconstantbuffers
13467 .map_or(0, |slice| slice.len().try_into().unwrap()),
13468 core::mem::transmute(
13469 ppconstantbuffers
13470 .map_or(core::ptr::null(), |slice| slice.as_ptr()),
13471 ),
13472 )
13473 }
13474 }
13475 pub unsafe fn GSSetShader<P0>(
13476 &self,
13477 pshader: P0,
13478 ppclassinstances: Option<&[Option<ID3D11ClassInstance>]>,
13479 ) where
13480 P0: windows_core::Param<ID3D11GeometryShader>,
13481 {
13482 unsafe {
13483 (windows_core::Interface::vtable(self).GSSetShader)(
13484 windows_core::Interface::as_raw(self),
13485 pshader.param().abi(),
13486 core::mem::transmute(
13487 ppclassinstances
13488 .map_or(core::ptr::null(), |slice| slice.as_ptr()),
13489 ),
13490 ppclassinstances
13491 .map_or(0, |slice| slice.len().try_into().unwrap()),
13492 )
13493 }
13494 }
13495 #[cfg(feature = "Win32_Graphics_Direct3D")]
13496 pub unsafe fn IASetPrimitiveTopology(&self, topology: super::Direct3D::D3D_PRIMITIVE_TOPOLOGY) {
13497 unsafe {
13498 (windows_core::Interface::vtable(self).IASetPrimitiveTopology)(
13499 windows_core::Interface::as_raw(self),
13500 topology,
13501 )
13502 }
13503 }
13504 pub unsafe fn VSSetShaderResources(
13505 &self,
13506 startslot: u32,
13507 ppshaderresourceviews: Option<&[Option<ID3D11ShaderResourceView>]>,
13508 ) {
13509 unsafe {
13510 (windows_core::Interface::vtable(self).VSSetShaderResources)(
13511 windows_core::Interface::as_raw(self),
13512 startslot,
13513 ppshaderresourceviews
13514 .map_or(0, |slice| slice.len().try_into().unwrap()),
13515 core::mem::transmute(
13516 ppshaderresourceviews
13517 .map_or(core::ptr::null(), |slice| slice.as_ptr()),
13518 ),
13519 )
13520 }
13521 }
13522 pub unsafe fn VSSetSamplers(
13523 &self,
13524 startslot: u32,
13525 ppsamplers: Option<&[Option<ID3D11SamplerState>]>,
13526 ) {
13527 unsafe {
13528 (windows_core::Interface::vtable(self).VSSetSamplers)(
13529 windows_core::Interface::as_raw(self),
13530 startslot,
13531 ppsamplers
13532 .map_or(0, |slice| slice.len().try_into().unwrap()),
13533 core::mem::transmute(
13534 ppsamplers
13535 .map_or(core::ptr::null(), |slice| slice.as_ptr()),
13536 ),
13537 )
13538 }
13539 }
13540 pub unsafe fn Begin<P0>(&self, pasync: P0)
13541 where
13542 P0: windows_core::Param<ID3D11Asynchronous>,
13543 {
13544 unsafe {
13545 (windows_core::Interface::vtable(self).Begin)(
13546 windows_core::Interface::as_raw(self),
13547 pasync.param().abi(),
13548 )
13549 }
13550 }
13551 pub unsafe fn End<P0>(&self, pasync: P0)
13552 where
13553 P0: windows_core::Param<ID3D11Asynchronous>,
13554 {
13555 unsafe {
13556 (windows_core::Interface::vtable(self).End)(
13557 windows_core::Interface::as_raw(self),
13558 pasync.param().abi(),
13559 )
13560 }
13561 }
13562 pub unsafe fn GetData<P0>(
13563 &self,
13564 pasync: P0,
13565 pdata: Option<*mut core::ffi::c_void>,
13566 datasize: u32,
13567 getdataflags: u32,
13568 ) -> windows_core::Result<()>
13569 where
13570 P0: windows_core::Param<ID3D11Asynchronous>,
13571 {
13572 unsafe {
13573 (windows_core::Interface::vtable(self).GetData)(
13574 windows_core::Interface::as_raw(self),
13575 pasync.param().abi(),
13576 core::mem::transmute(pdata.unwrap_or(core::mem::zeroed())),
13577 datasize,
13578 getdataflags,
13579 )
13580 .ok()
13581 }
13582 }
13583 pub unsafe fn SetPredication<P0>(&self, ppredicate: P0, predicatevalue: bool)
13584 where
13585 P0: windows_core::Param<ID3D11Predicate>,
13586 {
13587 unsafe {
13588 (windows_core::Interface::vtable(self).SetPredication)(
13589 windows_core::Interface::as_raw(self),
13590 ppredicate.param().abi(),
13591 predicatevalue.into(),
13592 )
13593 }
13594 }
13595 pub unsafe fn GSSetShaderResources(
13596 &self,
13597 startslot: u32,
13598 ppshaderresourceviews: Option<&[Option<ID3D11ShaderResourceView>]>,
13599 ) {
13600 unsafe {
13601 (windows_core::Interface::vtable(self).GSSetShaderResources)(
13602 windows_core::Interface::as_raw(self),
13603 startslot,
13604 ppshaderresourceviews
13605 .map_or(0, |slice| slice.len().try_into().unwrap()),
13606 core::mem::transmute(
13607 ppshaderresourceviews
13608 .map_or(core::ptr::null(), |slice| slice.as_ptr()),
13609 ),
13610 )
13611 }
13612 }
13613 pub unsafe fn GSSetSamplers(
13614 &self,
13615 startslot: u32,
13616 ppsamplers: Option<&[Option<ID3D11SamplerState>]>,
13617 ) {
13618 unsafe {
13619 (windows_core::Interface::vtable(self).GSSetSamplers)(
13620 windows_core::Interface::as_raw(self),
13621 startslot,
13622 ppsamplers
13623 .map_or(0, |slice| slice.len().try_into().unwrap()),
13624 core::mem::transmute(
13625 ppsamplers
13626 .map_or(core::ptr::null(), |slice| slice.as_ptr()),
13627 ),
13628 )
13629 }
13630 }
13631 pub unsafe fn OMSetRenderTargets<P2>(
13632 &self,
13633 pprendertargetviews: Option<&[Option<ID3D11RenderTargetView>]>,
13634 pdepthstencilview: P2,
13635 ) where
13636 P2: windows_core::Param<ID3D11DepthStencilView>,
13637 {
13638 unsafe {
13639 (windows_core::Interface::vtable(self).OMSetRenderTargets)(
13640 windows_core::Interface::as_raw(self),
13641 pprendertargetviews
13642 .map_or(0, |slice| slice.len().try_into().unwrap()),
13643 core::mem::transmute(
13644 pprendertargetviews
13645 .map_or(core::ptr::null(), |slice| slice.as_ptr()),
13646 ),
13647 pdepthstencilview.param().abi(),
13648 )
13649 }
13650 }
13651 pub unsafe fn OMSetRenderTargetsAndUnorderedAccessViews<P2>(
13652 &self,
13653 pprendertargetviews: Option<&[Option<ID3D11RenderTargetView>]>,
13654 pdepthstencilview: P2,
13655 uavstartslot: u32,
13656 numuavs: u32,
13657 ppunorderedaccessviews: Option<*const Option<ID3D11UnorderedAccessView>>,
13658 puavinitialcounts: Option<*const u32>,
13659 ) where
13660 P2: windows_core::Param<ID3D11DepthStencilView>,
13661 {
13662 unsafe {
13663 (windows_core::Interface::vtable(self).OMSetRenderTargetsAndUnorderedAccessViews)(
13664 windows_core::Interface::as_raw(self),
13665 pprendertargetviews
13666 .map_or(0, |slice| slice.len().try_into().unwrap()),
13667 core::mem::transmute(
13668 pprendertargetviews
13669 .map_or(core::ptr::null(), |slice| slice.as_ptr()),
13670 ),
13671 pdepthstencilview.param().abi(),
13672 uavstartslot,
13673 numuavs,
13674 core::mem::transmute(ppunorderedaccessviews.unwrap_or(core::mem::zeroed())),
13675 core::mem::transmute(puavinitialcounts.unwrap_or(core::mem::zeroed())),
13676 )
13677 }
13678 }
13679 pub unsafe fn OMSetBlendState<P0>(
13680 &self,
13681 pblendstate: P0,
13682 blendfactor: Option<&[f32; 4]>,
13683 samplemask: u32,
13684 ) where
13685 P0: windows_core::Param<ID3D11BlendState>,
13686 {
13687 unsafe {
13688 (windows_core::Interface::vtable(self).OMSetBlendState)(
13689 windows_core::Interface::as_raw(self),
13690 pblendstate.param().abi(),
13691 core::mem::transmute(
13692 blendfactor
13693 .map_or(core::ptr::null(), |slice| slice.as_ptr()),
13694 ),
13695 samplemask,
13696 )
13697 }
13698 }
13699 pub unsafe fn OMSetDepthStencilState<P0>(&self, pdepthstencilstate: P0, stencilref: u32)
13700 where
13701 P0: windows_core::Param<ID3D11DepthStencilState>,
13702 {
13703 unsafe {
13704 (windows_core::Interface::vtable(self).OMSetDepthStencilState)(
13705 windows_core::Interface::as_raw(self),
13706 pdepthstencilstate.param().abi(),
13707 stencilref,
13708 )
13709 }
13710 }
13711 pub unsafe fn SOSetTargets(
13712 &self,
13713 numbuffers: u32,
13714 ppsotargets: Option<*const Option<ID3D11Buffer>>,
13715 poffsets: Option<*const u32>,
13716 ) {
13717 unsafe {
13718 (windows_core::Interface::vtable(self).SOSetTargets)(
13719 windows_core::Interface::as_raw(self),
13720 numbuffers,
13721 core::mem::transmute(ppsotargets.unwrap_or(core::mem::zeroed())),
13722 core::mem::transmute(poffsets.unwrap_or(core::mem::zeroed())),
13723 )
13724 }
13725 }
13726 pub unsafe fn DrawAuto(&self) {
13727 unsafe {
13728 (windows_core::Interface::vtable(self).DrawAuto)(windows_core::Interface::as_raw(self))
13729 }
13730 }
13731 pub unsafe fn DrawIndexedInstancedIndirect<P0>(
13732 &self,
13733 pbufferforargs: P0,
13734 alignedbyteoffsetforargs: u32,
13735 ) where
13736 P0: windows_core::Param<ID3D11Buffer>,
13737 {
13738 unsafe {
13739 (windows_core::Interface::vtable(self).DrawIndexedInstancedIndirect)(
13740 windows_core::Interface::as_raw(self),
13741 pbufferforargs.param().abi(),
13742 alignedbyteoffsetforargs,
13743 )
13744 }
13745 }
13746 pub unsafe fn DrawInstancedIndirect<P0>(
13747 &self,
13748 pbufferforargs: P0,
13749 alignedbyteoffsetforargs: u32,
13750 ) where
13751 P0: windows_core::Param<ID3D11Buffer>,
13752 {
13753 unsafe {
13754 (windows_core::Interface::vtable(self).DrawInstancedIndirect)(
13755 windows_core::Interface::as_raw(self),
13756 pbufferforargs.param().abi(),
13757 alignedbyteoffsetforargs,
13758 )
13759 }
13760 }
13761 pub unsafe fn Dispatch(
13762 &self,
13763 threadgroupcountx: u32,
13764 threadgroupcounty: u32,
13765 threadgroupcountz: u32,
13766 ) {
13767 unsafe {
13768 (windows_core::Interface::vtable(self).Dispatch)(
13769 windows_core::Interface::as_raw(self),
13770 threadgroupcountx,
13771 threadgroupcounty,
13772 threadgroupcountz,
13773 )
13774 }
13775 }
13776 pub unsafe fn DispatchIndirect<P0>(&self, pbufferforargs: P0, alignedbyteoffsetforargs: u32)
13777 where
13778 P0: windows_core::Param<ID3D11Buffer>,
13779 {
13780 unsafe {
13781 (windows_core::Interface::vtable(self).DispatchIndirect)(
13782 windows_core::Interface::as_raw(self),
13783 pbufferforargs.param().abi(),
13784 alignedbyteoffsetforargs,
13785 )
13786 }
13787 }
13788 pub unsafe fn RSSetState<P0>(&self, prasterizerstate: P0)
13789 where
13790 P0: windows_core::Param<ID3D11RasterizerState>,
13791 {
13792 unsafe {
13793 (windows_core::Interface::vtable(self).RSSetState)(
13794 windows_core::Interface::as_raw(self),
13795 prasterizerstate.param().abi(),
13796 )
13797 }
13798 }
13799 pub unsafe fn RSSetViewports(&self, pviewports: Option<&[D3D11_VIEWPORT]>) {
13800 unsafe {
13801 (windows_core::Interface::vtable(self).RSSetViewports)(
13802 windows_core::Interface::as_raw(self),
13803 pviewports
13804 .map_or(0, |slice| slice.len().try_into().unwrap()),
13805 core::mem::transmute(
13806 pviewports
13807 .map_or(core::ptr::null(), |slice| slice.as_ptr()),
13808 ),
13809 )
13810 }
13811 }
13812 pub unsafe fn RSSetScissorRects(&self, prects: Option<&[crate::Foundation::RECT]>) {
13813 unsafe {
13814 (windows_core::Interface::vtable(self).RSSetScissorRects)(
13815 windows_core::Interface::as_raw(self),
13816 prects
13817 .map_or(0, |slice| slice.len().try_into().unwrap()),
13818 core::mem::transmute(
13819 prects
13820 .map_or(core::ptr::null(), |slice| slice.as_ptr()),
13821 ),
13822 )
13823 }
13824 }
13825 pub unsafe fn CopySubresourceRegion<P0, P5>(
13826 &self,
13827 pdstresource: P0,
13828 dstsubresource: u32,
13829 dstx: u32,
13830 dsty: u32,
13831 dstz: u32,
13832 psrcresource: P5,
13833 srcsubresource: u32,
13834 psrcbox: Option<*const D3D11_BOX>,
13835 ) where
13836 P0: windows_core::Param<ID3D11Resource>,
13837 P5: windows_core::Param<ID3D11Resource>,
13838 {
13839 unsafe {
13840 (windows_core::Interface::vtable(self).CopySubresourceRegion)(
13841 windows_core::Interface::as_raw(self),
13842 pdstresource.param().abi(),
13843 dstsubresource,
13844 dstx,
13845 dsty,
13846 dstz,
13847 psrcresource.param().abi(),
13848 srcsubresource,
13849 core::mem::transmute(psrcbox.unwrap_or(core::mem::zeroed())),
13850 )
13851 }
13852 }
13853 pub unsafe fn CopyResource<P0, P1>(&self, pdstresource: P0, psrcresource: P1)
13854 where
13855 P0: windows_core::Param<ID3D11Resource>,
13856 P1: windows_core::Param<ID3D11Resource>,
13857 {
13858 unsafe {
13859 (windows_core::Interface::vtable(self).CopyResource)(
13860 windows_core::Interface::as_raw(self),
13861 pdstresource.param().abi(),
13862 psrcresource.param().abi(),
13863 )
13864 }
13865 }
13866 pub unsafe fn UpdateSubresource<P0>(
13867 &self,
13868 pdstresource: P0,
13869 dstsubresource: u32,
13870 pdstbox: Option<*const D3D11_BOX>,
13871 psrcdata: *const core::ffi::c_void,
13872 srcrowpitch: u32,
13873 srcdepthpitch: u32,
13874 ) where
13875 P0: windows_core::Param<ID3D11Resource>,
13876 {
13877 unsafe {
13878 (windows_core::Interface::vtable(self).UpdateSubresource)(
13879 windows_core::Interface::as_raw(self),
13880 pdstresource.param().abi(),
13881 dstsubresource,
13882 core::mem::transmute(pdstbox.unwrap_or(core::mem::zeroed())),
13883 psrcdata,
13884 srcrowpitch,
13885 srcdepthpitch,
13886 )
13887 }
13888 }
13889 pub unsafe fn CopyStructureCount<P0, P2>(
13890 &self,
13891 pdstbuffer: P0,
13892 dstalignedbyteoffset: u32,
13893 psrcview: P2,
13894 ) where
13895 P0: windows_core::Param<ID3D11Buffer>,
13896 P2: windows_core::Param<ID3D11UnorderedAccessView>,
13897 {
13898 unsafe {
13899 (windows_core::Interface::vtable(self).CopyStructureCount)(
13900 windows_core::Interface::as_raw(self),
13901 pdstbuffer.param().abi(),
13902 dstalignedbyteoffset,
13903 psrcview.param().abi(),
13904 )
13905 }
13906 }
13907 pub unsafe fn ClearRenderTargetView<P0>(&self, prendertargetview: P0, colorrgba: &[f32; 4])
13908 where
13909 P0: windows_core::Param<ID3D11RenderTargetView>,
13910 {
13911 unsafe {
13912 (windows_core::Interface::vtable(self).ClearRenderTargetView)(
13913 windows_core::Interface::as_raw(self),
13914 prendertargetview.param().abi(),
13915 core::mem::transmute(colorrgba.as_ptr()),
13916 )
13917 }
13918 }
13919 pub unsafe fn ClearUnorderedAccessViewUint<P0>(
13920 &self,
13921 punorderedaccessview: P0,
13922 values: &[u32; 4],
13923 ) where
13924 P0: windows_core::Param<ID3D11UnorderedAccessView>,
13925 {
13926 unsafe {
13927 (windows_core::Interface::vtable(self).ClearUnorderedAccessViewUint)(
13928 windows_core::Interface::as_raw(self),
13929 punorderedaccessview.param().abi(),
13930 core::mem::transmute(values.as_ptr()),
13931 )
13932 }
13933 }
13934 pub unsafe fn ClearUnorderedAccessViewFloat<P0>(
13935 &self,
13936 punorderedaccessview: P0,
13937 values: &[f32; 4],
13938 ) where
13939 P0: windows_core::Param<ID3D11UnorderedAccessView>,
13940 {
13941 unsafe {
13942 (windows_core::Interface::vtable(self).ClearUnorderedAccessViewFloat)(
13943 windows_core::Interface::as_raw(self),
13944 punorderedaccessview.param().abi(),
13945 core::mem::transmute(values.as_ptr()),
13946 )
13947 }
13948 }
13949 pub unsafe fn ClearDepthStencilView<P0>(
13950 &self,
13951 pdepthstencilview: P0,
13952 clearflags: u32,
13953 depth: f32,
13954 stencil: u8,
13955 ) where
13956 P0: windows_core::Param<ID3D11DepthStencilView>,
13957 {
13958 unsafe {
13959 (windows_core::Interface::vtable(self).ClearDepthStencilView)(
13960 windows_core::Interface::as_raw(self),
13961 pdepthstencilview.param().abi(),
13962 clearflags,
13963 depth,
13964 stencil,
13965 )
13966 }
13967 }
13968 pub unsafe fn GenerateMips<P0>(&self, pshaderresourceview: P0)
13969 where
13970 P0: windows_core::Param<ID3D11ShaderResourceView>,
13971 {
13972 unsafe {
13973 (windows_core::Interface::vtable(self).GenerateMips)(
13974 windows_core::Interface::as_raw(self),
13975 pshaderresourceview.param().abi(),
13976 )
13977 }
13978 }
13979 pub unsafe fn SetResourceMinLOD<P0>(&self, presource: P0, minlod: f32)
13980 where
13981 P0: windows_core::Param<ID3D11Resource>,
13982 {
13983 unsafe {
13984 (windows_core::Interface::vtable(self).SetResourceMinLOD)(
13985 windows_core::Interface::as_raw(self),
13986 presource.param().abi(),
13987 minlod,
13988 )
13989 }
13990 }
13991 pub unsafe fn GetResourceMinLOD<P0>(&self, presource: P0) -> f32
13992 where
13993 P0: windows_core::Param<ID3D11Resource>,
13994 {
13995 unsafe {
13996 (windows_core::Interface::vtable(self).GetResourceMinLOD)(
13997 windows_core::Interface::as_raw(self),
13998 presource.param().abi(),
13999 )
14000 }
14001 }
14002 #[cfg(feature = "Win32_Graphics_Dxgi_Common")]
14003 pub unsafe fn ResolveSubresource<P0, P2>(
14004 &self,
14005 pdstresource: P0,
14006 dstsubresource: u32,
14007 psrcresource: P2,
14008 srcsubresource: u32,
14009 format: crate::Dxgi::Common::DXGI_FORMAT,
14010 ) where
14011 P0: windows_core::Param<ID3D11Resource>,
14012 P2: windows_core::Param<ID3D11Resource>,
14013 {
14014 unsafe {
14015 (windows_core::Interface::vtable(self).ResolveSubresource)(
14016 windows_core::Interface::as_raw(self),
14017 pdstresource.param().abi(),
14018 dstsubresource,
14019 psrcresource.param().abi(),
14020 srcsubresource,
14021 format,
14022 )
14023 }
14024 }
14025 pub unsafe fn ExecuteCommandList<P0>(&self, pcommandlist: P0, restorecontextstate: bool)
14026 where
14027 P0: windows_core::Param<ID3D11CommandList>,
14028 {
14029 unsafe {
14030 (windows_core::Interface::vtable(self).ExecuteCommandList)(
14031 windows_core::Interface::as_raw(self),
14032 pcommandlist.param().abi(),
14033 restorecontextstate.into(),
14034 )
14035 }
14036 }
14037 pub unsafe fn HSSetShaderResources(
14038 &self,
14039 startslot: u32,
14040 ppshaderresourceviews: Option<&[Option<ID3D11ShaderResourceView>]>,
14041 ) {
14042 unsafe {
14043 (windows_core::Interface::vtable(self).HSSetShaderResources)(
14044 windows_core::Interface::as_raw(self),
14045 startslot,
14046 ppshaderresourceviews
14047 .map_or(0, |slice| slice.len().try_into().unwrap()),
14048 core::mem::transmute(
14049 ppshaderresourceviews
14050 .map_or(core::ptr::null(), |slice| slice.as_ptr()),
14051 ),
14052 )
14053 }
14054 }
14055 pub unsafe fn HSSetShader<P0>(
14056 &self,
14057 phullshader: P0,
14058 ppclassinstances: Option<&[Option<ID3D11ClassInstance>]>,
14059 ) where
14060 P0: windows_core::Param<ID3D11HullShader>,
14061 {
14062 unsafe {
14063 (windows_core::Interface::vtable(self).HSSetShader)(
14064 windows_core::Interface::as_raw(self),
14065 phullshader.param().abi(),
14066 core::mem::transmute(
14067 ppclassinstances
14068 .map_or(core::ptr::null(), |slice| slice.as_ptr()),
14069 ),
14070 ppclassinstances
14071 .map_or(0, |slice| slice.len().try_into().unwrap()),
14072 )
14073 }
14074 }
14075 pub unsafe fn HSSetSamplers(
14076 &self,
14077 startslot: u32,
14078 ppsamplers: Option<&[Option<ID3D11SamplerState>]>,
14079 ) {
14080 unsafe {
14081 (windows_core::Interface::vtable(self).HSSetSamplers)(
14082 windows_core::Interface::as_raw(self),
14083 startslot,
14084 ppsamplers
14085 .map_or(0, |slice| slice.len().try_into().unwrap()),
14086 core::mem::transmute(
14087 ppsamplers
14088 .map_or(core::ptr::null(), |slice| slice.as_ptr()),
14089 ),
14090 )
14091 }
14092 }
14093 pub unsafe fn HSSetConstantBuffers(
14094 &self,
14095 startslot: u32,
14096 ppconstantbuffers: Option<&[Option<ID3D11Buffer>]>,
14097 ) {
14098 unsafe {
14099 (windows_core::Interface::vtable(self).HSSetConstantBuffers)(
14100 windows_core::Interface::as_raw(self),
14101 startslot,
14102 ppconstantbuffers
14103 .map_or(0, |slice| slice.len().try_into().unwrap()),
14104 core::mem::transmute(
14105 ppconstantbuffers
14106 .map_or(core::ptr::null(), |slice| slice.as_ptr()),
14107 ),
14108 )
14109 }
14110 }
14111 pub unsafe fn DSSetShaderResources(
14112 &self,
14113 startslot: u32,
14114 ppshaderresourceviews: Option<&[Option<ID3D11ShaderResourceView>]>,
14115 ) {
14116 unsafe {
14117 (windows_core::Interface::vtable(self).DSSetShaderResources)(
14118 windows_core::Interface::as_raw(self),
14119 startslot,
14120 ppshaderresourceviews
14121 .map_or(0, |slice| slice.len().try_into().unwrap()),
14122 core::mem::transmute(
14123 ppshaderresourceviews
14124 .map_or(core::ptr::null(), |slice| slice.as_ptr()),
14125 ),
14126 )
14127 }
14128 }
14129 pub unsafe fn DSSetShader<P0>(
14130 &self,
14131 pdomainshader: P0,
14132 ppclassinstances: Option<&[Option<ID3D11ClassInstance>]>,
14133 ) where
14134 P0: windows_core::Param<ID3D11DomainShader>,
14135 {
14136 unsafe {
14137 (windows_core::Interface::vtable(self).DSSetShader)(
14138 windows_core::Interface::as_raw(self),
14139 pdomainshader.param().abi(),
14140 core::mem::transmute(
14141 ppclassinstances
14142 .map_or(core::ptr::null(), |slice| slice.as_ptr()),
14143 ),
14144 ppclassinstances
14145 .map_or(0, |slice| slice.len().try_into().unwrap()),
14146 )
14147 }
14148 }
14149 pub unsafe fn DSSetSamplers(
14150 &self,
14151 startslot: u32,
14152 ppsamplers: Option<&[Option<ID3D11SamplerState>]>,
14153 ) {
14154 unsafe {
14155 (windows_core::Interface::vtable(self).DSSetSamplers)(
14156 windows_core::Interface::as_raw(self),
14157 startslot,
14158 ppsamplers
14159 .map_or(0, |slice| slice.len().try_into().unwrap()),
14160 core::mem::transmute(
14161 ppsamplers
14162 .map_or(core::ptr::null(), |slice| slice.as_ptr()),
14163 ),
14164 )
14165 }
14166 }
14167 pub unsafe fn DSSetConstantBuffers(
14168 &self,
14169 startslot: u32,
14170 ppconstantbuffers: Option<&[Option<ID3D11Buffer>]>,
14171 ) {
14172 unsafe {
14173 (windows_core::Interface::vtable(self).DSSetConstantBuffers)(
14174 windows_core::Interface::as_raw(self),
14175 startslot,
14176 ppconstantbuffers
14177 .map_or(0, |slice| slice.len().try_into().unwrap()),
14178 core::mem::transmute(
14179 ppconstantbuffers
14180 .map_or(core::ptr::null(), |slice| slice.as_ptr()),
14181 ),
14182 )
14183 }
14184 }
14185 pub unsafe fn CSSetShaderResources(
14186 &self,
14187 startslot: u32,
14188 ppshaderresourceviews: Option<&[Option<ID3D11ShaderResourceView>]>,
14189 ) {
14190 unsafe {
14191 (windows_core::Interface::vtable(self).CSSetShaderResources)(
14192 windows_core::Interface::as_raw(self),
14193 startslot,
14194 ppshaderresourceviews
14195 .map_or(0, |slice| slice.len().try_into().unwrap()),
14196 core::mem::transmute(
14197 ppshaderresourceviews
14198 .map_or(core::ptr::null(), |slice| slice.as_ptr()),
14199 ),
14200 )
14201 }
14202 }
14203 pub unsafe fn CSSetUnorderedAccessViews(
14204 &self,
14205 startslot: u32,
14206 numuavs: u32,
14207 ppunorderedaccessviews: Option<*const Option<ID3D11UnorderedAccessView>>,
14208 puavinitialcounts: Option<*const u32>,
14209 ) {
14210 unsafe {
14211 (windows_core::Interface::vtable(self).CSSetUnorderedAccessViews)(
14212 windows_core::Interface::as_raw(self),
14213 startslot,
14214 numuavs,
14215 core::mem::transmute(ppunorderedaccessviews.unwrap_or(core::mem::zeroed())),
14216 core::mem::transmute(puavinitialcounts.unwrap_or(core::mem::zeroed())),
14217 )
14218 }
14219 }
14220 pub unsafe fn CSSetShader<P0>(
14221 &self,
14222 pcomputeshader: P0,
14223 ppclassinstances: Option<&[Option<ID3D11ClassInstance>]>,
14224 ) where
14225 P0: windows_core::Param<ID3D11ComputeShader>,
14226 {
14227 unsafe {
14228 (windows_core::Interface::vtable(self).CSSetShader)(
14229 windows_core::Interface::as_raw(self),
14230 pcomputeshader.param().abi(),
14231 core::mem::transmute(
14232 ppclassinstances
14233 .map_or(core::ptr::null(), |slice| slice.as_ptr()),
14234 ),
14235 ppclassinstances
14236 .map_or(0, |slice| slice.len().try_into().unwrap()),
14237 )
14238 }
14239 }
14240 pub unsafe fn CSSetSamplers(
14241 &self,
14242 startslot: u32,
14243 ppsamplers: Option<&[Option<ID3D11SamplerState>]>,
14244 ) {
14245 unsafe {
14246 (windows_core::Interface::vtable(self).CSSetSamplers)(
14247 windows_core::Interface::as_raw(self),
14248 startslot,
14249 ppsamplers
14250 .map_or(0, |slice| slice.len().try_into().unwrap()),
14251 core::mem::transmute(
14252 ppsamplers
14253 .map_or(core::ptr::null(), |slice| slice.as_ptr()),
14254 ),
14255 )
14256 }
14257 }
14258 pub unsafe fn CSSetConstantBuffers(
14259 &self,
14260 startslot: u32,
14261 ppconstantbuffers: Option<&[Option<ID3D11Buffer>]>,
14262 ) {
14263 unsafe {
14264 (windows_core::Interface::vtable(self).CSSetConstantBuffers)(
14265 windows_core::Interface::as_raw(self),
14266 startslot,
14267 ppconstantbuffers
14268 .map_or(0, |slice| slice.len().try_into().unwrap()),
14269 core::mem::transmute(
14270 ppconstantbuffers
14271 .map_or(core::ptr::null(), |slice| slice.as_ptr()),
14272 ),
14273 )
14274 }
14275 }
14276 pub unsafe fn VSGetConstantBuffers(
14277 &self,
14278 startslot: u32,
14279 ppconstantbuffers: Option<&mut [Option<ID3D11Buffer>]>,
14280 ) {
14281 unsafe {
14282 (windows_core::Interface::vtable(self).VSGetConstantBuffers)(
14283 windows_core::Interface::as_raw(self),
14284 startslot,
14285 ppconstantbuffers
14286 .as_deref()
14287 .map_or(0, |slice| slice.len().try_into().unwrap()),
14288 core::mem::transmute(
14289 ppconstantbuffers
14290 .as_deref()
14291 .map_or(core::ptr::null(), |slice| slice.as_ptr()),
14292 ),
14293 )
14294 }
14295 }
14296 pub unsafe fn PSGetShaderResources(
14297 &self,
14298 startslot: u32,
14299 ppshaderresourceviews: Option<&mut [Option<ID3D11ShaderResourceView>]>,
14300 ) {
14301 unsafe {
14302 (windows_core::Interface::vtable(self).PSGetShaderResources)(
14303 windows_core::Interface::as_raw(self),
14304 startslot,
14305 ppshaderresourceviews
14306 .as_deref()
14307 .map_or(0, |slice| slice.len().try_into().unwrap()),
14308 core::mem::transmute(
14309 ppshaderresourceviews
14310 .as_deref()
14311 .map_or(core::ptr::null(), |slice| slice.as_ptr()),
14312 ),
14313 )
14314 }
14315 }
14316 pub unsafe fn PSGetShader(
14317 &self,
14318 pppixelshader: *mut Option<ID3D11PixelShader>,
14319 ppclassinstances: Option<*mut Option<ID3D11ClassInstance>>,
14320 pnumclassinstances: Option<*mut u32>,
14321 ) {
14322 unsafe {
14323 (windows_core::Interface::vtable(self).PSGetShader)(
14324 windows_core::Interface::as_raw(self),
14325 core::mem::transmute(pppixelshader),
14326 core::mem::transmute(ppclassinstances.unwrap_or(core::mem::zeroed())),
14327 core::mem::transmute(pnumclassinstances.unwrap_or(core::mem::zeroed())),
14328 )
14329 }
14330 }
14331 pub unsafe fn PSGetSamplers(
14332 &self,
14333 startslot: u32,
14334 ppsamplers: Option<&mut [Option<ID3D11SamplerState>]>,
14335 ) {
14336 unsafe {
14337 (windows_core::Interface::vtable(self).PSGetSamplers)(
14338 windows_core::Interface::as_raw(self),
14339 startslot,
14340 ppsamplers
14341 .as_deref()
14342 .map_or(0, |slice| slice.len().try_into().unwrap()),
14343 core::mem::transmute(
14344 ppsamplers
14345 .as_deref()
14346 .map_or(core::ptr::null(), |slice| slice.as_ptr()),
14347 ),
14348 )
14349 }
14350 }
14351 pub unsafe fn VSGetShader(
14352 &self,
14353 ppvertexshader: *mut Option<ID3D11VertexShader>,
14354 ppclassinstances: Option<*mut Option<ID3D11ClassInstance>>,
14355 pnumclassinstances: Option<*mut u32>,
14356 ) {
14357 unsafe {
14358 (windows_core::Interface::vtable(self).VSGetShader)(
14359 windows_core::Interface::as_raw(self),
14360 core::mem::transmute(ppvertexshader),
14361 core::mem::transmute(ppclassinstances.unwrap_or(core::mem::zeroed())),
14362 core::mem::transmute(pnumclassinstances.unwrap_or(core::mem::zeroed())),
14363 )
14364 }
14365 }
14366 pub unsafe fn PSGetConstantBuffers(
14367 &self,
14368 startslot: u32,
14369 ppconstantbuffers: Option<&mut [Option<ID3D11Buffer>]>,
14370 ) {
14371 unsafe {
14372 (windows_core::Interface::vtable(self).PSGetConstantBuffers)(
14373 windows_core::Interface::as_raw(self),
14374 startslot,
14375 ppconstantbuffers
14376 .as_deref()
14377 .map_or(0, |slice| slice.len().try_into().unwrap()),
14378 core::mem::transmute(
14379 ppconstantbuffers
14380 .as_deref()
14381 .map_or(core::ptr::null(), |slice| slice.as_ptr()),
14382 ),
14383 )
14384 }
14385 }
14386 pub unsafe fn IAGetInputLayout(&self) -> windows_core::Result<ID3D11InputLayout> {
14387 unsafe {
14388 let mut result__ = core::mem::zeroed();
14389 (windows_core::Interface::vtable(self).IAGetInputLayout)(
14390 windows_core::Interface::as_raw(self),
14391 &mut result__,
14392 );
14393 windows_core::Type::from_abi(result__)
14394 }
14395 }
14396 pub unsafe fn IAGetVertexBuffers(
14397 &self,
14398 startslot: u32,
14399 numbuffers: u32,
14400 ppvertexbuffers: Option<*mut Option<ID3D11Buffer>>,
14401 pstrides: Option<*mut u32>,
14402 poffsets: Option<*mut u32>,
14403 ) {
14404 unsafe {
14405 (windows_core::Interface::vtable(self).IAGetVertexBuffers)(
14406 windows_core::Interface::as_raw(self),
14407 startslot,
14408 numbuffers,
14409 core::mem::transmute(ppvertexbuffers.unwrap_or(core::mem::zeroed())),
14410 core::mem::transmute(pstrides.unwrap_or(core::mem::zeroed())),
14411 core::mem::transmute(poffsets.unwrap_or(core::mem::zeroed())),
14412 )
14413 }
14414 }
14415 #[cfg(feature = "Win32_Graphics_Dxgi_Common")]
14416 pub unsafe fn IAGetIndexBuffer(
14417 &self,
14418 pindexbuffer: Option<*mut Option<ID3D11Buffer>>,
14419 format: Option<*mut crate::Dxgi::Common::DXGI_FORMAT>,
14420 offset: Option<*mut u32>,
14421 ) {
14422 unsafe {
14423 (windows_core::Interface::vtable(self).IAGetIndexBuffer)(
14424 windows_core::Interface::as_raw(self),
14425 core::mem::transmute(pindexbuffer.unwrap_or(core::mem::zeroed())),
14426 core::mem::transmute(format.unwrap_or(core::mem::zeroed())),
14427 core::mem::transmute(offset.unwrap_or(core::mem::zeroed())),
14428 )
14429 }
14430 }
14431 pub unsafe fn GSGetConstantBuffers(
14432 &self,
14433 startslot: u32,
14434 ppconstantbuffers: Option<&mut [Option<ID3D11Buffer>]>,
14435 ) {
14436 unsafe {
14437 (windows_core::Interface::vtable(self).GSGetConstantBuffers)(
14438 windows_core::Interface::as_raw(self),
14439 startslot,
14440 ppconstantbuffers
14441 .as_deref()
14442 .map_or(0, |slice| slice.len().try_into().unwrap()),
14443 core::mem::transmute(
14444 ppconstantbuffers
14445 .as_deref()
14446 .map_or(core::ptr::null(), |slice| slice.as_ptr()),
14447 ),
14448 )
14449 }
14450 }
14451 pub unsafe fn GSGetShader(
14452 &self,
14453 ppgeometryshader: *mut Option<ID3D11GeometryShader>,
14454 ppclassinstances: Option<*mut Option<ID3D11ClassInstance>>,
14455 pnumclassinstances: Option<*mut u32>,
14456 ) {
14457 unsafe {
14458 (windows_core::Interface::vtable(self).GSGetShader)(
14459 windows_core::Interface::as_raw(self),
14460 core::mem::transmute(ppgeometryshader),
14461 core::mem::transmute(ppclassinstances.unwrap_or(core::mem::zeroed())),
14462 core::mem::transmute(pnumclassinstances.unwrap_or(core::mem::zeroed())),
14463 )
14464 }
14465 }
14466 #[cfg(feature = "Win32_Graphics_Direct3D")]
14467 pub unsafe fn IAGetPrimitiveTopology(&self) -> super::Direct3D::D3D_PRIMITIVE_TOPOLOGY {
14468 unsafe {
14469 let mut result__ = core::mem::zeroed();
14470 (windows_core::Interface::vtable(self).IAGetPrimitiveTopology)(
14471 windows_core::Interface::as_raw(self),
14472 &mut result__,
14473 );
14474 result__
14475 }
14476 }
14477 pub unsafe fn VSGetShaderResources(
14478 &self,
14479 startslot: u32,
14480 ppshaderresourceviews: Option<&mut [Option<ID3D11ShaderResourceView>]>,
14481 ) {
14482 unsafe {
14483 (windows_core::Interface::vtable(self).VSGetShaderResources)(
14484 windows_core::Interface::as_raw(self),
14485 startslot,
14486 ppshaderresourceviews
14487 .as_deref()
14488 .map_or(0, |slice| slice.len().try_into().unwrap()),
14489 core::mem::transmute(
14490 ppshaderresourceviews
14491 .as_deref()
14492 .map_or(core::ptr::null(), |slice| slice.as_ptr()),
14493 ),
14494 )
14495 }
14496 }
14497 pub unsafe fn VSGetSamplers(
14498 &self,
14499 startslot: u32,
14500 ppsamplers: Option<&mut [Option<ID3D11SamplerState>]>,
14501 ) {
14502 unsafe {
14503 (windows_core::Interface::vtable(self).VSGetSamplers)(
14504 windows_core::Interface::as_raw(self),
14505 startslot,
14506 ppsamplers
14507 .as_deref()
14508 .map_or(0, |slice| slice.len().try_into().unwrap()),
14509 core::mem::transmute(
14510 ppsamplers
14511 .as_deref()
14512 .map_or(core::ptr::null(), |slice| slice.as_ptr()),
14513 ),
14514 )
14515 }
14516 }
14517 pub unsafe fn GetPredication(
14518 &self,
14519 pppredicate: Option<*mut Option<ID3D11Predicate>>,
14520 ppredicatevalue: Option<*mut crate::Foundation::BOOL>,
14521 ) {
14522 unsafe {
14523 (windows_core::Interface::vtable(self).GetPredication)(
14524 windows_core::Interface::as_raw(self),
14525 core::mem::transmute(pppredicate.unwrap_or(core::mem::zeroed())),
14526 core::mem::transmute(ppredicatevalue.unwrap_or(core::mem::zeroed())),
14527 )
14528 }
14529 }
14530 pub unsafe fn GSGetShaderResources(
14531 &self,
14532 startslot: u32,
14533 ppshaderresourceviews: Option<&mut [Option<ID3D11ShaderResourceView>]>,
14534 ) {
14535 unsafe {
14536 (windows_core::Interface::vtable(self).GSGetShaderResources)(
14537 windows_core::Interface::as_raw(self),
14538 startslot,
14539 ppshaderresourceviews
14540 .as_deref()
14541 .map_or(0, |slice| slice.len().try_into().unwrap()),
14542 core::mem::transmute(
14543 ppshaderresourceviews
14544 .as_deref()
14545 .map_or(core::ptr::null(), |slice| slice.as_ptr()),
14546 ),
14547 )
14548 }
14549 }
14550 pub unsafe fn GSGetSamplers(
14551 &self,
14552 startslot: u32,
14553 ppsamplers: Option<&mut [Option<ID3D11SamplerState>]>,
14554 ) {
14555 unsafe {
14556 (windows_core::Interface::vtable(self).GSGetSamplers)(
14557 windows_core::Interface::as_raw(self),
14558 startslot,
14559 ppsamplers
14560 .as_deref()
14561 .map_or(0, |slice| slice.len().try_into().unwrap()),
14562 core::mem::transmute(
14563 ppsamplers
14564 .as_deref()
14565 .map_or(core::ptr::null(), |slice| slice.as_ptr()),
14566 ),
14567 )
14568 }
14569 }
14570 pub unsafe fn OMGetRenderTargets(
14571 &self,
14572 pprendertargetviews: Option<&mut [Option<ID3D11RenderTargetView>]>,
14573 ppdepthstencilview: Option<*mut Option<ID3D11DepthStencilView>>,
14574 ) {
14575 unsafe {
14576 (windows_core::Interface::vtable(self).OMGetRenderTargets)(
14577 windows_core::Interface::as_raw(self),
14578 pprendertargetviews
14579 .as_deref()
14580 .map_or(0, |slice| slice.len().try_into().unwrap()),
14581 core::mem::transmute(
14582 pprendertargetviews
14583 .as_deref()
14584 .map_or(core::ptr::null(), |slice| slice.as_ptr()),
14585 ),
14586 core::mem::transmute(ppdepthstencilview.unwrap_or(core::mem::zeroed())),
14587 )
14588 }
14589 }
14590 pub unsafe fn OMGetRenderTargetsAndUnorderedAccessViews(
14591 &self,
14592 pprendertargetviews: Option<&mut [Option<ID3D11RenderTargetView>]>,
14593 ppdepthstencilview: Option<*mut Option<ID3D11DepthStencilView>>,
14594 uavstartslot: u32,
14595 ppunorderedaccessviews: Option<&mut [Option<ID3D11UnorderedAccessView>]>,
14596 ) {
14597 unsafe {
14598 (windows_core::Interface::vtable(self).OMGetRenderTargetsAndUnorderedAccessViews)(
14599 windows_core::Interface::as_raw(self),
14600 pprendertargetviews
14601 .as_deref()
14602 .map_or(0, |slice| slice.len().try_into().unwrap()),
14603 core::mem::transmute(
14604 pprendertargetviews
14605 .as_deref()
14606 .map_or(core::ptr::null(), |slice| slice.as_ptr()),
14607 ),
14608 core::mem::transmute(ppdepthstencilview.unwrap_or(core::mem::zeroed())),
14609 uavstartslot,
14610 ppunorderedaccessviews
14611 .as_deref()
14612 .map_or(0, |slice| slice.len().try_into().unwrap()),
14613 core::mem::transmute(
14614 ppunorderedaccessviews
14615 .as_deref()
14616 .map_or(core::ptr::null(), |slice| slice.as_ptr()),
14617 ),
14618 )
14619 }
14620 }
14621 pub unsafe fn OMGetBlendState(
14622 &self,
14623 ppblendstate: Option<*mut Option<ID3D11BlendState>>,
14624 blendfactor: Option<&mut [f32; 4]>,
14625 psamplemask: Option<*mut u32>,
14626 ) {
14627 unsafe {
14628 (windows_core::Interface::vtable(self).OMGetBlendState)(
14629 windows_core::Interface::as_raw(self),
14630 core::mem::transmute(ppblendstate.unwrap_or(core::mem::zeroed())),
14631 core::mem::transmute(
14632 blendfactor
14633 .as_deref()
14634 .map_or(core::ptr::null(), |slice| slice.as_ptr()),
14635 ),
14636 core::mem::transmute(psamplemask.unwrap_or(core::mem::zeroed())),
14637 )
14638 }
14639 }
14640 pub unsafe fn OMGetDepthStencilState(
14641 &self,
14642 ppdepthstencilstate: Option<*mut Option<ID3D11DepthStencilState>>,
14643 pstencilref: Option<*mut u32>,
14644 ) {
14645 unsafe {
14646 (windows_core::Interface::vtable(self).OMGetDepthStencilState)(
14647 windows_core::Interface::as_raw(self),
14648 core::mem::transmute(ppdepthstencilstate.unwrap_or(core::mem::zeroed())),
14649 core::mem::transmute(pstencilref.unwrap_or(core::mem::zeroed())),
14650 )
14651 }
14652 }
14653 pub unsafe fn SOGetTargets(&self, ppsotargets: Option<&mut [Option<ID3D11Buffer>]>) {
14654 unsafe {
14655 (windows_core::Interface::vtable(self).SOGetTargets)(
14656 windows_core::Interface::as_raw(self),
14657 ppsotargets
14658 .as_deref()
14659 .map_or(0, |slice| slice.len().try_into().unwrap()),
14660 core::mem::transmute(
14661 ppsotargets
14662 .as_deref()
14663 .map_or(core::ptr::null(), |slice| slice.as_ptr()),
14664 ),
14665 )
14666 }
14667 }
14668 pub unsafe fn RSGetState(&self) -> windows_core::Result<ID3D11RasterizerState> {
14669 unsafe {
14670 let mut result__ = core::mem::zeroed();
14671 (windows_core::Interface::vtable(self).RSGetState)(
14672 windows_core::Interface::as_raw(self),
14673 &mut result__,
14674 );
14675 windows_core::Type::from_abi(result__)
14676 }
14677 }
14678 pub unsafe fn RSGetViewports(
14679 &self,
14680 pnumviewports: *mut u32,
14681 pviewports: Option<*mut D3D11_VIEWPORT>,
14682 ) {
14683 unsafe {
14684 (windows_core::Interface::vtable(self).RSGetViewports)(
14685 windows_core::Interface::as_raw(self),
14686 core::mem::transmute(pnumviewports),
14687 core::mem::transmute(pviewports.unwrap_or(core::mem::zeroed())),
14688 )
14689 }
14690 }
14691 pub unsafe fn RSGetScissorRects(
14692 &self,
14693 pnumrects: *mut u32,
14694 prects: Option<*mut crate::Foundation::RECT>,
14695 ) {
14696 unsafe {
14697 (windows_core::Interface::vtable(self).RSGetScissorRects)(
14698 windows_core::Interface::as_raw(self),
14699 core::mem::transmute(pnumrects),
14700 core::mem::transmute(prects.unwrap_or(core::mem::zeroed())),
14701 )
14702 }
14703 }
14704 pub unsafe fn HSGetShaderResources(
14705 &self,
14706 startslot: u32,
14707 ppshaderresourceviews: Option<&mut [Option<ID3D11ShaderResourceView>]>,
14708 ) {
14709 unsafe {
14710 (windows_core::Interface::vtable(self).HSGetShaderResources)(
14711 windows_core::Interface::as_raw(self),
14712 startslot,
14713 ppshaderresourceviews
14714 .as_deref()
14715 .map_or(0, |slice| slice.len().try_into().unwrap()),
14716 core::mem::transmute(
14717 ppshaderresourceviews
14718 .as_deref()
14719 .map_or(core::ptr::null(), |slice| slice.as_ptr()),
14720 ),
14721 )
14722 }
14723 }
14724 pub unsafe fn HSGetShader(
14725 &self,
14726 pphullshader: *mut Option<ID3D11HullShader>,
14727 ppclassinstances: Option<*mut Option<ID3D11ClassInstance>>,
14728 pnumclassinstances: Option<*mut u32>,
14729 ) {
14730 unsafe {
14731 (windows_core::Interface::vtable(self).HSGetShader)(
14732 windows_core::Interface::as_raw(self),
14733 core::mem::transmute(pphullshader),
14734 core::mem::transmute(ppclassinstances.unwrap_or(core::mem::zeroed())),
14735 core::mem::transmute(pnumclassinstances.unwrap_or(core::mem::zeroed())),
14736 )
14737 }
14738 }
14739 pub unsafe fn HSGetSamplers(
14740 &self,
14741 startslot: u32,
14742 ppsamplers: Option<&mut [Option<ID3D11SamplerState>]>,
14743 ) {
14744 unsafe {
14745 (windows_core::Interface::vtable(self).HSGetSamplers)(
14746 windows_core::Interface::as_raw(self),
14747 startslot,
14748 ppsamplers
14749 .as_deref()
14750 .map_or(0, |slice| slice.len().try_into().unwrap()),
14751 core::mem::transmute(
14752 ppsamplers
14753 .as_deref()
14754 .map_or(core::ptr::null(), |slice| slice.as_ptr()),
14755 ),
14756 )
14757 }
14758 }
14759 pub unsafe fn HSGetConstantBuffers(
14760 &self,
14761 startslot: u32,
14762 ppconstantbuffers: Option<&mut [Option<ID3D11Buffer>]>,
14763 ) {
14764 unsafe {
14765 (windows_core::Interface::vtable(self).HSGetConstantBuffers)(
14766 windows_core::Interface::as_raw(self),
14767 startslot,
14768 ppconstantbuffers
14769 .as_deref()
14770 .map_or(0, |slice| slice.len().try_into().unwrap()),
14771 core::mem::transmute(
14772 ppconstantbuffers
14773 .as_deref()
14774 .map_or(core::ptr::null(), |slice| slice.as_ptr()),
14775 ),
14776 )
14777 }
14778 }
14779 pub unsafe fn DSGetShaderResources(
14780 &self,
14781 startslot: u32,
14782 ppshaderresourceviews: Option<&mut [Option<ID3D11ShaderResourceView>]>,
14783 ) {
14784 unsafe {
14785 (windows_core::Interface::vtable(self).DSGetShaderResources)(
14786 windows_core::Interface::as_raw(self),
14787 startslot,
14788 ppshaderresourceviews
14789 .as_deref()
14790 .map_or(0, |slice| slice.len().try_into().unwrap()),
14791 core::mem::transmute(
14792 ppshaderresourceviews
14793 .as_deref()
14794 .map_or(core::ptr::null(), |slice| slice.as_ptr()),
14795 ),
14796 )
14797 }
14798 }
14799 pub unsafe fn DSGetShader(
14800 &self,
14801 ppdomainshader: *mut Option<ID3D11DomainShader>,
14802 ppclassinstances: Option<*mut Option<ID3D11ClassInstance>>,
14803 pnumclassinstances: Option<*mut u32>,
14804 ) {
14805 unsafe {
14806 (windows_core::Interface::vtable(self).DSGetShader)(
14807 windows_core::Interface::as_raw(self),
14808 core::mem::transmute(ppdomainshader),
14809 core::mem::transmute(ppclassinstances.unwrap_or(core::mem::zeroed())),
14810 core::mem::transmute(pnumclassinstances.unwrap_or(core::mem::zeroed())),
14811 )
14812 }
14813 }
14814 pub unsafe fn DSGetSamplers(
14815 &self,
14816 startslot: u32,
14817 ppsamplers: Option<&mut [Option<ID3D11SamplerState>]>,
14818 ) {
14819 unsafe {
14820 (windows_core::Interface::vtable(self).DSGetSamplers)(
14821 windows_core::Interface::as_raw(self),
14822 startslot,
14823 ppsamplers
14824 .as_deref()
14825 .map_or(0, |slice| slice.len().try_into().unwrap()),
14826 core::mem::transmute(
14827 ppsamplers
14828 .as_deref()
14829 .map_or(core::ptr::null(), |slice| slice.as_ptr()),
14830 ),
14831 )
14832 }
14833 }
14834 pub unsafe fn DSGetConstantBuffers(
14835 &self,
14836 startslot: u32,
14837 ppconstantbuffers: Option<&mut [Option<ID3D11Buffer>]>,
14838 ) {
14839 unsafe {
14840 (windows_core::Interface::vtable(self).DSGetConstantBuffers)(
14841 windows_core::Interface::as_raw(self),
14842 startslot,
14843 ppconstantbuffers
14844 .as_deref()
14845 .map_or(0, |slice| slice.len().try_into().unwrap()),
14846 core::mem::transmute(
14847 ppconstantbuffers
14848 .as_deref()
14849 .map_or(core::ptr::null(), |slice| slice.as_ptr()),
14850 ),
14851 )
14852 }
14853 }
14854 pub unsafe fn CSGetShaderResources(
14855 &self,
14856 startslot: u32,
14857 ppshaderresourceviews: Option<&mut [Option<ID3D11ShaderResourceView>]>,
14858 ) {
14859 unsafe {
14860 (windows_core::Interface::vtable(self).CSGetShaderResources)(
14861 windows_core::Interface::as_raw(self),
14862 startslot,
14863 ppshaderresourceviews
14864 .as_deref()
14865 .map_or(0, |slice| slice.len().try_into().unwrap()),
14866 core::mem::transmute(
14867 ppshaderresourceviews
14868 .as_deref()
14869 .map_or(core::ptr::null(), |slice| slice.as_ptr()),
14870 ),
14871 )
14872 }
14873 }
14874 pub unsafe fn CSGetUnorderedAccessViews(
14875 &self,
14876 startslot: u32,
14877 ppunorderedaccessviews: Option<&mut [Option<ID3D11UnorderedAccessView>]>,
14878 ) {
14879 unsafe {
14880 (windows_core::Interface::vtable(self).CSGetUnorderedAccessViews)(
14881 windows_core::Interface::as_raw(self),
14882 startslot,
14883 ppunorderedaccessviews
14884 .as_deref()
14885 .map_or(0, |slice| slice.len().try_into().unwrap()),
14886 core::mem::transmute(
14887 ppunorderedaccessviews
14888 .as_deref()
14889 .map_or(core::ptr::null(), |slice| slice.as_ptr()),
14890 ),
14891 )
14892 }
14893 }
14894 pub unsafe fn CSGetShader(
14895 &self,
14896 ppcomputeshader: *mut Option<ID3D11ComputeShader>,
14897 ppclassinstances: Option<*mut Option<ID3D11ClassInstance>>,
14898 pnumclassinstances: Option<*mut u32>,
14899 ) {
14900 unsafe {
14901 (windows_core::Interface::vtable(self).CSGetShader)(
14902 windows_core::Interface::as_raw(self),
14903 core::mem::transmute(ppcomputeshader),
14904 core::mem::transmute(ppclassinstances.unwrap_or(core::mem::zeroed())),
14905 core::mem::transmute(pnumclassinstances.unwrap_or(core::mem::zeroed())),
14906 )
14907 }
14908 }
14909 pub unsafe fn CSGetSamplers(
14910 &self,
14911 startslot: u32,
14912 ppsamplers: Option<&mut [Option<ID3D11SamplerState>]>,
14913 ) {
14914 unsafe {
14915 (windows_core::Interface::vtable(self).CSGetSamplers)(
14916 windows_core::Interface::as_raw(self),
14917 startslot,
14918 ppsamplers
14919 .as_deref()
14920 .map_or(0, |slice| slice.len().try_into().unwrap()),
14921 core::mem::transmute(
14922 ppsamplers
14923 .as_deref()
14924 .map_or(core::ptr::null(), |slice| slice.as_ptr()),
14925 ),
14926 )
14927 }
14928 }
14929 pub unsafe fn CSGetConstantBuffers(
14930 &self,
14931 startslot: u32,
14932 ppconstantbuffers: Option<&mut [Option<ID3D11Buffer>]>,
14933 ) {
14934 unsafe {
14935 (windows_core::Interface::vtable(self).CSGetConstantBuffers)(
14936 windows_core::Interface::as_raw(self),
14937 startslot,
14938 ppconstantbuffers
14939 .as_deref()
14940 .map_or(0, |slice| slice.len().try_into().unwrap()),
14941 core::mem::transmute(
14942 ppconstantbuffers
14943 .as_deref()
14944 .map_or(core::ptr::null(), |slice| slice.as_ptr()),
14945 ),
14946 )
14947 }
14948 }
14949 pub unsafe fn ClearState(&self) {
14950 unsafe {
14951 (windows_core::Interface::vtable(self).ClearState)(windows_core::Interface::as_raw(
14952 self,
14953 ))
14954 }
14955 }
14956 pub unsafe fn Flush(&self) {
14957 unsafe {
14958 (windows_core::Interface::vtable(self).Flush)(windows_core::Interface::as_raw(self))
14959 }
14960 }
14961 pub unsafe fn GetType(&self) -> D3D11_DEVICE_CONTEXT_TYPE {
14962 unsafe {
14963 (windows_core::Interface::vtable(self).GetType)(windows_core::Interface::as_raw(self))
14964 }
14965 }
14966 pub unsafe fn GetContextFlags(&self) -> u32 {
14967 unsafe {
14968 (windows_core::Interface::vtable(self).GetContextFlags)(
14969 windows_core::Interface::as_raw(self),
14970 )
14971 }
14972 }
14973 pub unsafe fn FinishCommandList(
14974 &self,
14975 restoredeferredcontextstate: bool,
14976 ppcommandlist: Option<*mut Option<ID3D11CommandList>>,
14977 ) -> windows_core::Result<()> {
14978 unsafe {
14979 (windows_core::Interface::vtable(self).FinishCommandList)(
14980 windows_core::Interface::as_raw(self),
14981 restoredeferredcontextstate.into(),
14982 core::mem::transmute(ppcommandlist.unwrap_or(core::mem::zeroed())),
14983 )
14984 .ok()
14985 }
14986 }
14987}
14988#[repr(C)]
14989pub struct ID3D11DeviceContext_Vtbl {
14990 pub base__: ID3D11DeviceChild_Vtbl,
14991 pub VSSetConstantBuffers:
14992 unsafe extern "system" fn(*mut core::ffi::c_void, u32, u32, *const *mut core::ffi::c_void),
14993 pub PSSetShaderResources:
14994 unsafe extern "system" fn(*mut core::ffi::c_void, u32, u32, *const *mut core::ffi::c_void),
14995 pub PSSetShader: unsafe extern "system" fn(
14996 *mut core::ffi::c_void,
14997 *mut core::ffi::c_void,
14998 *const *mut core::ffi::c_void,
14999 u32,
15000 ),
15001 pub PSSetSamplers:
15002 unsafe extern "system" fn(*mut core::ffi::c_void, u32, u32, *const *mut core::ffi::c_void),
15003 pub VSSetShader: unsafe extern "system" fn(
15004 *mut core::ffi::c_void,
15005 *mut core::ffi::c_void,
15006 *const *mut core::ffi::c_void,
15007 u32,
15008 ),
15009 pub DrawIndexed: unsafe extern "system" fn(*mut core::ffi::c_void, u32, u32, i32),
15010 pub Draw: unsafe extern "system" fn(*mut core::ffi::c_void, u32, u32),
15011 pub Map: unsafe extern "system" fn(
15012 *mut core::ffi::c_void,
15013 *mut core::ffi::c_void,
15014 u32,
15015 D3D11_MAP,
15016 u32,
15017 *mut D3D11_MAPPED_SUBRESOURCE,
15018 ) -> windows_core::HRESULT,
15019 pub Unmap: unsafe extern "system" fn(*mut core::ffi::c_void, *mut core::ffi::c_void, u32),
15020 pub PSSetConstantBuffers:
15021 unsafe extern "system" fn(*mut core::ffi::c_void, u32, u32, *const *mut core::ffi::c_void),
15022 pub IASetInputLayout: unsafe extern "system" fn(*mut core::ffi::c_void, *mut core::ffi::c_void),
15023 pub IASetVertexBuffers: unsafe extern "system" fn(
15024 *mut core::ffi::c_void,
15025 u32,
15026 u32,
15027 *const *mut core::ffi::c_void,
15028 *const u32,
15029 *const u32,
15030 ),
15031 #[cfg(feature = "Win32_Graphics_Dxgi_Common")]
15032 pub IASetIndexBuffer: unsafe extern "system" fn(
15033 *mut core::ffi::c_void,
15034 *mut core::ffi::c_void,
15035 crate::Dxgi::Common::DXGI_FORMAT,
15036 u32,
15037 ),
15038 #[cfg(not(feature = "Win32_Graphics_Dxgi_Common"))]
15039 IASetIndexBuffer: usize,
15040 pub DrawIndexedInstanced:
15041 unsafe extern "system" fn(*mut core::ffi::c_void, u32, u32, u32, i32, u32),
15042 pub DrawInstanced: unsafe extern "system" fn(*mut core::ffi::c_void, u32, u32, u32, u32),
15043 pub GSSetConstantBuffers:
15044 unsafe extern "system" fn(*mut core::ffi::c_void, u32, u32, *const *mut core::ffi::c_void),
15045 pub GSSetShader: unsafe extern "system" fn(
15046 *mut core::ffi::c_void,
15047 *mut core::ffi::c_void,
15048 *const *mut core::ffi::c_void,
15049 u32,
15050 ),
15051 #[cfg(feature = "Win32_Graphics_Direct3D")]
15052 pub IASetPrimitiveTopology:
15053 unsafe extern "system" fn(*mut core::ffi::c_void, super::Direct3D::D3D_PRIMITIVE_TOPOLOGY),
15054 #[cfg(not(feature = "Win32_Graphics_Direct3D"))]
15055 IASetPrimitiveTopology: usize,
15056 pub VSSetShaderResources:
15057 unsafe extern "system" fn(*mut core::ffi::c_void, u32, u32, *const *mut core::ffi::c_void),
15058 pub VSSetSamplers:
15059 unsafe extern "system" fn(*mut core::ffi::c_void, u32, u32, *const *mut core::ffi::c_void),
15060 pub Begin: unsafe extern "system" fn(*mut core::ffi::c_void, *mut core::ffi::c_void),
15061 pub End: unsafe extern "system" fn(*mut core::ffi::c_void, *mut core::ffi::c_void),
15062 pub GetData: unsafe extern "system" fn(
15063 *mut core::ffi::c_void,
15064 *mut core::ffi::c_void,
15065 *mut core::ffi::c_void,
15066 u32,
15067 u32,
15068 ) -> windows_core::HRESULT,
15069 pub SetPredication: unsafe extern "system" fn(
15070 *mut core::ffi::c_void,
15071 *mut core::ffi::c_void,
15072 crate::Foundation::BOOL,
15073 ),
15074 pub GSSetShaderResources:
15075 unsafe extern "system" fn(*mut core::ffi::c_void, u32, u32, *const *mut core::ffi::c_void),
15076 pub GSSetSamplers:
15077 unsafe extern "system" fn(*mut core::ffi::c_void, u32, u32, *const *mut core::ffi::c_void),
15078 pub OMSetRenderTargets: unsafe extern "system" fn(
15079 *mut core::ffi::c_void,
15080 u32,
15081 *const *mut core::ffi::c_void,
15082 *mut core::ffi::c_void,
15083 ),
15084 pub OMSetRenderTargetsAndUnorderedAccessViews: unsafe extern "system" fn(
15085 *mut core::ffi::c_void,
15086 u32,
15087 *const *mut core::ffi::c_void,
15088 *mut core::ffi::c_void,
15089 u32,
15090 u32,
15091 *const *mut core::ffi::c_void,
15092 *const u32,
15093 ),
15094 pub OMSetBlendState:
15095 unsafe extern "system" fn(*mut core::ffi::c_void, *mut core::ffi::c_void, *const f32, u32),
15096 pub OMSetDepthStencilState:
15097 unsafe extern "system" fn(*mut core::ffi::c_void, *mut core::ffi::c_void, u32),
15098 pub SOSetTargets: unsafe extern "system" fn(
15099 *mut core::ffi::c_void,
15100 u32,
15101 *const *mut core::ffi::c_void,
15102 *const u32,
15103 ),
15104 pub DrawAuto: unsafe extern "system" fn(*mut core::ffi::c_void),
15105 pub DrawIndexedInstancedIndirect:
15106 unsafe extern "system" fn(*mut core::ffi::c_void, *mut core::ffi::c_void, u32),
15107 pub DrawInstancedIndirect:
15108 unsafe extern "system" fn(*mut core::ffi::c_void, *mut core::ffi::c_void, u32),
15109 pub Dispatch: unsafe extern "system" fn(*mut core::ffi::c_void, u32, u32, u32),
15110 pub DispatchIndirect:
15111 unsafe extern "system" fn(*mut core::ffi::c_void, *mut core::ffi::c_void, u32),
15112 pub RSSetState: unsafe extern "system" fn(*mut core::ffi::c_void, *mut core::ffi::c_void),
15113 pub RSSetViewports:
15114 unsafe extern "system" fn(*mut core::ffi::c_void, u32, *const D3D11_VIEWPORT),
15115 pub RSSetScissorRects: unsafe extern "system" fn(
15116 *mut core::ffi::c_void,
15117 u32,
15118 *const crate::Foundation::RECT,
15119 ),
15120 pub CopySubresourceRegion: unsafe extern "system" fn(
15121 *mut core::ffi::c_void,
15122 *mut core::ffi::c_void,
15123 u32,
15124 u32,
15125 u32,
15126 u32,
15127 *mut core::ffi::c_void,
15128 u32,
15129 *const D3D11_BOX,
15130 ),
15131 pub CopyResource: unsafe extern "system" fn(
15132 *mut core::ffi::c_void,
15133 *mut core::ffi::c_void,
15134 *mut core::ffi::c_void,
15135 ),
15136 pub UpdateSubresource: unsafe extern "system" fn(
15137 *mut core::ffi::c_void,
15138 *mut core::ffi::c_void,
15139 u32,
15140 *const D3D11_BOX,
15141 *const core::ffi::c_void,
15142 u32,
15143 u32,
15144 ),
15145 pub CopyStructureCount: unsafe extern "system" fn(
15146 *mut core::ffi::c_void,
15147 *mut core::ffi::c_void,
15148 u32,
15149 *mut core::ffi::c_void,
15150 ),
15151 pub ClearRenderTargetView:
15152 unsafe extern "system" fn(*mut core::ffi::c_void, *mut core::ffi::c_void, *const f32),
15153 pub ClearUnorderedAccessViewUint:
15154 unsafe extern "system" fn(*mut core::ffi::c_void, *mut core::ffi::c_void, *const u32),
15155 pub ClearUnorderedAccessViewFloat:
15156 unsafe extern "system" fn(*mut core::ffi::c_void, *mut core::ffi::c_void, *const f32),
15157 pub ClearDepthStencilView:
15158 unsafe extern "system" fn(*mut core::ffi::c_void, *mut core::ffi::c_void, u32, f32, u8),
15159 pub GenerateMips: unsafe extern "system" fn(*mut core::ffi::c_void, *mut core::ffi::c_void),
15160 pub SetResourceMinLOD:
15161 unsafe extern "system" fn(*mut core::ffi::c_void, *mut core::ffi::c_void, f32),
15162 pub GetResourceMinLOD:
15163 unsafe extern "system" fn(*mut core::ffi::c_void, *mut core::ffi::c_void) -> f32,
15164 #[cfg(feature = "Win32_Graphics_Dxgi_Common")]
15165 pub ResolveSubresource: unsafe extern "system" fn(
15166 *mut core::ffi::c_void,
15167 *mut core::ffi::c_void,
15168 u32,
15169 *mut core::ffi::c_void,
15170 u32,
15171 crate::Dxgi::Common::DXGI_FORMAT,
15172 ),
15173 #[cfg(not(feature = "Win32_Graphics_Dxgi_Common"))]
15174 ResolveSubresource: usize,
15175 pub ExecuteCommandList: unsafe extern "system" fn(
15176 *mut core::ffi::c_void,
15177 *mut core::ffi::c_void,
15178 crate::Foundation::BOOL,
15179 ),
15180 pub HSSetShaderResources:
15181 unsafe extern "system" fn(*mut core::ffi::c_void, u32, u32, *const *mut core::ffi::c_void),
15182 pub HSSetShader: unsafe extern "system" fn(
15183 *mut core::ffi::c_void,
15184 *mut core::ffi::c_void,
15185 *const *mut core::ffi::c_void,
15186 u32,
15187 ),
15188 pub HSSetSamplers:
15189 unsafe extern "system" fn(*mut core::ffi::c_void, u32, u32, *const *mut core::ffi::c_void),
15190 pub HSSetConstantBuffers:
15191 unsafe extern "system" fn(*mut core::ffi::c_void, u32, u32, *const *mut core::ffi::c_void),
15192 pub DSSetShaderResources:
15193 unsafe extern "system" fn(*mut core::ffi::c_void, u32, u32, *const *mut core::ffi::c_void),
15194 pub DSSetShader: unsafe extern "system" fn(
15195 *mut core::ffi::c_void,
15196 *mut core::ffi::c_void,
15197 *const *mut core::ffi::c_void,
15198 u32,
15199 ),
15200 pub DSSetSamplers:
15201 unsafe extern "system" fn(*mut core::ffi::c_void, u32, u32, *const *mut core::ffi::c_void),
15202 pub DSSetConstantBuffers:
15203 unsafe extern "system" fn(*mut core::ffi::c_void, u32, u32, *const *mut core::ffi::c_void),
15204 pub CSSetShaderResources:
15205 unsafe extern "system" fn(*mut core::ffi::c_void, u32, u32, *const *mut core::ffi::c_void),
15206 pub CSSetUnorderedAccessViews: unsafe extern "system" fn(
15207 *mut core::ffi::c_void,
15208 u32,
15209 u32,
15210 *const *mut core::ffi::c_void,
15211 *const u32,
15212 ),
15213 pub CSSetShader: unsafe extern "system" fn(
15214 *mut core::ffi::c_void,
15215 *mut core::ffi::c_void,
15216 *const *mut core::ffi::c_void,
15217 u32,
15218 ),
15219 pub CSSetSamplers:
15220 unsafe extern "system" fn(*mut core::ffi::c_void, u32, u32, *const *mut core::ffi::c_void),
15221 pub CSSetConstantBuffers:
15222 unsafe extern "system" fn(*mut core::ffi::c_void, u32, u32, *const *mut core::ffi::c_void),
15223 pub VSGetConstantBuffers:
15224 unsafe extern "system" fn(*mut core::ffi::c_void, u32, u32, *mut *mut core::ffi::c_void),
15225 pub PSGetShaderResources:
15226 unsafe extern "system" fn(*mut core::ffi::c_void, u32, u32, *mut *mut core::ffi::c_void),
15227 pub PSGetShader: unsafe extern "system" fn(
15228 *mut core::ffi::c_void,
15229 *mut *mut core::ffi::c_void,
15230 *mut *mut core::ffi::c_void,
15231 *mut u32,
15232 ),
15233 pub PSGetSamplers:
15234 unsafe extern "system" fn(*mut core::ffi::c_void, u32, u32, *mut *mut core::ffi::c_void),
15235 pub VSGetShader: unsafe extern "system" fn(
15236 *mut core::ffi::c_void,
15237 *mut *mut core::ffi::c_void,
15238 *mut *mut core::ffi::c_void,
15239 *mut u32,
15240 ),
15241 pub PSGetConstantBuffers:
15242 unsafe extern "system" fn(*mut core::ffi::c_void, u32, u32, *mut *mut core::ffi::c_void),
15243 pub IAGetInputLayout:
15244 unsafe extern "system" fn(*mut core::ffi::c_void, *mut *mut core::ffi::c_void),
15245 pub IAGetVertexBuffers: unsafe extern "system" fn(
15246 *mut core::ffi::c_void,
15247 u32,
15248 u32,
15249 *mut *mut core::ffi::c_void,
15250 *mut u32,
15251 *mut u32,
15252 ),
15253 #[cfg(feature = "Win32_Graphics_Dxgi_Common")]
15254 pub IAGetIndexBuffer: unsafe extern "system" fn(
15255 *mut core::ffi::c_void,
15256 *mut *mut core::ffi::c_void,
15257 *mut crate::Dxgi::Common::DXGI_FORMAT,
15258 *mut u32,
15259 ),
15260 #[cfg(not(feature = "Win32_Graphics_Dxgi_Common"))]
15261 IAGetIndexBuffer: usize,
15262 pub GSGetConstantBuffers:
15263 unsafe extern "system" fn(*mut core::ffi::c_void, u32, u32, *mut *mut core::ffi::c_void),
15264 pub GSGetShader: unsafe extern "system" fn(
15265 *mut core::ffi::c_void,
15266 *mut *mut core::ffi::c_void,
15267 *mut *mut core::ffi::c_void,
15268 *mut u32,
15269 ),
15270 #[cfg(feature = "Win32_Graphics_Direct3D")]
15271 pub IAGetPrimitiveTopology: unsafe extern "system" fn(
15272 *mut core::ffi::c_void,
15273 *mut super::Direct3D::D3D_PRIMITIVE_TOPOLOGY,
15274 ),
15275 #[cfg(not(feature = "Win32_Graphics_Direct3D"))]
15276 IAGetPrimitiveTopology: usize,
15277 pub VSGetShaderResources:
15278 unsafe extern "system" fn(*mut core::ffi::c_void, u32, u32, *mut *mut core::ffi::c_void),
15279 pub VSGetSamplers:
15280 unsafe extern "system" fn(*mut core::ffi::c_void, u32, u32, *mut *mut core::ffi::c_void),
15281 pub GetPredication: unsafe extern "system" fn(
15282 *mut core::ffi::c_void,
15283 *mut *mut core::ffi::c_void,
15284 *mut crate::Foundation::BOOL,
15285 ),
15286 pub GSGetShaderResources:
15287 unsafe extern "system" fn(*mut core::ffi::c_void, u32, u32, *mut *mut core::ffi::c_void),
15288 pub GSGetSamplers:
15289 unsafe extern "system" fn(*mut core::ffi::c_void, u32, u32, *mut *mut core::ffi::c_void),
15290 pub OMGetRenderTargets: unsafe extern "system" fn(
15291 *mut core::ffi::c_void,
15292 u32,
15293 *mut *mut core::ffi::c_void,
15294 *mut *mut core::ffi::c_void,
15295 ),
15296 pub OMGetRenderTargetsAndUnorderedAccessViews: unsafe extern "system" fn(
15297 *mut core::ffi::c_void,
15298 u32,
15299 *mut *mut core::ffi::c_void,
15300 *mut *mut core::ffi::c_void,
15301 u32,
15302 u32,
15303 *mut *mut core::ffi::c_void,
15304 ),
15305 pub OMGetBlendState: unsafe extern "system" fn(
15306 *mut core::ffi::c_void,
15307 *mut *mut core::ffi::c_void,
15308 *mut f32,
15309 *mut u32,
15310 ),
15311 pub OMGetDepthStencilState:
15312 unsafe extern "system" fn(*mut core::ffi::c_void, *mut *mut core::ffi::c_void, *mut u32),
15313 pub SOGetTargets:
15314 unsafe extern "system" fn(*mut core::ffi::c_void, u32, *mut *mut core::ffi::c_void),
15315 pub RSGetState: unsafe extern "system" fn(*mut core::ffi::c_void, *mut *mut core::ffi::c_void),
15316 pub RSGetViewports:
15317 unsafe extern "system" fn(*mut core::ffi::c_void, *mut u32, *mut D3D11_VIEWPORT),
15318 pub RSGetScissorRects: unsafe extern "system" fn(
15319 *mut core::ffi::c_void,
15320 *mut u32,
15321 *mut crate::Foundation::RECT,
15322 ),
15323 pub HSGetShaderResources:
15324 unsafe extern "system" fn(*mut core::ffi::c_void, u32, u32, *mut *mut core::ffi::c_void),
15325 pub HSGetShader: unsafe extern "system" fn(
15326 *mut core::ffi::c_void,
15327 *mut *mut core::ffi::c_void,
15328 *mut *mut core::ffi::c_void,
15329 *mut u32,
15330 ),
15331 pub HSGetSamplers:
15332 unsafe extern "system" fn(*mut core::ffi::c_void, u32, u32, *mut *mut core::ffi::c_void),
15333 pub HSGetConstantBuffers:
15334 unsafe extern "system" fn(*mut core::ffi::c_void, u32, u32, *mut *mut core::ffi::c_void),
15335 pub DSGetShaderResources:
15336 unsafe extern "system" fn(*mut core::ffi::c_void, u32, u32, *mut *mut core::ffi::c_void),
15337 pub DSGetShader: unsafe extern "system" fn(
15338 *mut core::ffi::c_void,
15339 *mut *mut core::ffi::c_void,
15340 *mut *mut core::ffi::c_void,
15341 *mut u32,
15342 ),
15343 pub DSGetSamplers:
15344 unsafe extern "system" fn(*mut core::ffi::c_void, u32, u32, *mut *mut core::ffi::c_void),
15345 pub DSGetConstantBuffers:
15346 unsafe extern "system" fn(*mut core::ffi::c_void, u32, u32, *mut *mut core::ffi::c_void),
15347 pub CSGetShaderResources:
15348 unsafe extern "system" fn(*mut core::ffi::c_void, u32, u32, *mut *mut core::ffi::c_void),
15349 pub CSGetUnorderedAccessViews:
15350 unsafe extern "system" fn(*mut core::ffi::c_void, u32, u32, *mut *mut core::ffi::c_void),
15351 pub CSGetShader: unsafe extern "system" fn(
15352 *mut core::ffi::c_void,
15353 *mut *mut core::ffi::c_void,
15354 *mut *mut core::ffi::c_void,
15355 *mut u32,
15356 ),
15357 pub CSGetSamplers:
15358 unsafe extern "system" fn(*mut core::ffi::c_void, u32, u32, *mut *mut core::ffi::c_void),
15359 pub CSGetConstantBuffers:
15360 unsafe extern "system" fn(*mut core::ffi::c_void, u32, u32, *mut *mut core::ffi::c_void),
15361 pub ClearState: unsafe extern "system" fn(*mut core::ffi::c_void),
15362 pub Flush: unsafe extern "system" fn(*mut core::ffi::c_void),
15363 pub GetType: unsafe extern "system" fn(*mut core::ffi::c_void) -> D3D11_DEVICE_CONTEXT_TYPE,
15364 pub GetContextFlags: unsafe extern "system" fn(*mut core::ffi::c_void) -> u32,
15365 pub FinishCommandList: unsafe extern "system" fn(
15366 *mut core::ffi::c_void,
15367 crate::Foundation::BOOL,
15368 *mut *mut core::ffi::c_void,
15369 ) -> windows_core::HRESULT,
15370}
15371#[cfg(all(
15372 feature = "Win32_Graphics_Direct3D",
15373 feature = "Win32_Graphics_Dxgi_Common"
15374))]
15375pub trait ID3D11DeviceContext_Impl: ID3D11DeviceChild_Impl {
15376 fn VSSetConstantBuffers(
15377 &self,
15378 startslot: u32,
15379 numbuffers: u32,
15380 ppconstantbuffers: *const Option<ID3D11Buffer>,
15381 );
15382 fn PSSetShaderResources(
15383 &self,
15384 startslot: u32,
15385 numviews: u32,
15386 ppshaderresourceviews: *const Option<ID3D11ShaderResourceView>,
15387 );
15388 fn PSSetShader(
15389 &self,
15390 ppixelshader: windows_core::Ref<'_, ID3D11PixelShader>,
15391 ppclassinstances: *const Option<ID3D11ClassInstance>,
15392 numclassinstances: u32,
15393 );
15394 fn PSSetSamplers(
15395 &self,
15396 startslot: u32,
15397 numsamplers: u32,
15398 ppsamplers: *const Option<ID3D11SamplerState>,
15399 );
15400 fn VSSetShader(
15401 &self,
15402 pvertexshader: windows_core::Ref<'_, ID3D11VertexShader>,
15403 ppclassinstances: *const Option<ID3D11ClassInstance>,
15404 numclassinstances: u32,
15405 );
15406 fn DrawIndexed(&self, indexcount: u32, startindexlocation: u32, basevertexlocation: i32);
15407 fn Draw(&self, vertexcount: u32, startvertexlocation: u32);
15408 fn Map(
15409 &self,
15410 presource: windows_core::Ref<'_, ID3D11Resource>,
15411 subresource: u32,
15412 maptype: D3D11_MAP,
15413 mapflags: u32,
15414 pmappedresource: *mut D3D11_MAPPED_SUBRESOURCE,
15415 ) -> windows_core::Result<()>;
15416 fn Unmap(&self, presource: windows_core::Ref<'_, ID3D11Resource>, subresource: u32);
15417 fn PSSetConstantBuffers(
15418 &self,
15419 startslot: u32,
15420 numbuffers: u32,
15421 ppconstantbuffers: *const Option<ID3D11Buffer>,
15422 );
15423 fn IASetInputLayout(&self, pinputlayout: windows_core::Ref<'_, ID3D11InputLayout>);
15424 fn IASetVertexBuffers(
15425 &self,
15426 startslot: u32,
15427 numbuffers: u32,
15428 ppvertexbuffers: *const Option<ID3D11Buffer>,
15429 pstrides: *const u32,
15430 poffsets: *const u32,
15431 );
15432 fn IASetIndexBuffer(
15433 &self,
15434 pindexbuffer: windows_core::Ref<'_, ID3D11Buffer>,
15435 format: crate::Dxgi::Common::DXGI_FORMAT,
15436 offset: u32,
15437 );
15438 fn DrawIndexedInstanced(
15439 &self,
15440 indexcountperinstance: u32,
15441 instancecount: u32,
15442 startindexlocation: u32,
15443 basevertexlocation: i32,
15444 startinstancelocation: u32,
15445 );
15446 fn DrawInstanced(
15447 &self,
15448 vertexcountperinstance: u32,
15449 instancecount: u32,
15450 startvertexlocation: u32,
15451 startinstancelocation: u32,
15452 );
15453 fn GSSetConstantBuffers(
15454 &self,
15455 startslot: u32,
15456 numbuffers: u32,
15457 ppconstantbuffers: *const Option<ID3D11Buffer>,
15458 );
15459 fn GSSetShader(
15460 &self,
15461 pshader: windows_core::Ref<'_, ID3D11GeometryShader>,
15462 ppclassinstances: *const Option<ID3D11ClassInstance>,
15463 numclassinstances: u32,
15464 );
15465 fn IASetPrimitiveTopology(&self, topology: super::Direct3D::D3D_PRIMITIVE_TOPOLOGY);
15466 fn VSSetShaderResources(
15467 &self,
15468 startslot: u32,
15469 numviews: u32,
15470 ppshaderresourceviews: *const Option<ID3D11ShaderResourceView>,
15471 );
15472 fn VSSetSamplers(
15473 &self,
15474 startslot: u32,
15475 numsamplers: u32,
15476 ppsamplers: *const Option<ID3D11SamplerState>,
15477 );
15478 fn Begin(&self, pasync: windows_core::Ref<'_, ID3D11Asynchronous>);
15479 fn End(&self, pasync: windows_core::Ref<'_, ID3D11Asynchronous>);
15480 fn GetData(
15481 &self,
15482 pasync: windows_core::Ref<'_, ID3D11Asynchronous>,
15483 pdata: *mut core::ffi::c_void,
15484 datasize: u32,
15485 getdataflags: u32,
15486 ) -> windows_core::Result<()>;
15487 fn SetPredication(
15488 &self,
15489 ppredicate: windows_core::Ref<'_, ID3D11Predicate>,
15490 predicatevalue: crate::Foundation::BOOL,
15491 );
15492 fn GSSetShaderResources(
15493 &self,
15494 startslot: u32,
15495 numviews: u32,
15496 ppshaderresourceviews: *const Option<ID3D11ShaderResourceView>,
15497 );
15498 fn GSSetSamplers(
15499 &self,
15500 startslot: u32,
15501 numsamplers: u32,
15502 ppsamplers: *const Option<ID3D11SamplerState>,
15503 );
15504 fn OMSetRenderTargets(
15505 &self,
15506 numviews: u32,
15507 pprendertargetviews: *const Option<ID3D11RenderTargetView>,
15508 pdepthstencilview: windows_core::Ref<'_, ID3D11DepthStencilView>,
15509 );
15510 fn OMSetRenderTargetsAndUnorderedAccessViews(
15511 &self,
15512 numrtvs: u32,
15513 pprendertargetviews: *const Option<ID3D11RenderTargetView>,
15514 pdepthstencilview: windows_core::Ref<'_, ID3D11DepthStencilView>,
15515 uavstartslot: u32,
15516 numuavs: u32,
15517 ppunorderedaccessviews: *const Option<ID3D11UnorderedAccessView>,
15518 puavinitialcounts: *const u32,
15519 );
15520 fn OMSetBlendState(
15521 &self,
15522 pblendstate: windows_core::Ref<'_, ID3D11BlendState>,
15523 blendfactor: *const f32,
15524 samplemask: u32,
15525 );
15526 fn OMSetDepthStencilState(
15527 &self,
15528 pdepthstencilstate: windows_core::Ref<'_, ID3D11DepthStencilState>,
15529 stencilref: u32,
15530 );
15531 fn SOSetTargets(
15532 &self,
15533 numbuffers: u32,
15534 ppsotargets: *const Option<ID3D11Buffer>,
15535 poffsets: *const u32,
15536 );
15537 fn DrawAuto(&self);
15538 fn DrawIndexedInstancedIndirect(
15539 &self,
15540 pbufferforargs: windows_core::Ref<'_, ID3D11Buffer>,
15541 alignedbyteoffsetforargs: u32,
15542 );
15543 fn DrawInstancedIndirect(
15544 &self,
15545 pbufferforargs: windows_core::Ref<'_, ID3D11Buffer>,
15546 alignedbyteoffsetforargs: u32,
15547 );
15548 fn Dispatch(&self, threadgroupcountx: u32, threadgroupcounty: u32, threadgroupcountz: u32);
15549 fn DispatchIndirect(
15550 &self,
15551 pbufferforargs: windows_core::Ref<'_, ID3D11Buffer>,
15552 alignedbyteoffsetforargs: u32,
15553 );
15554 fn RSSetState(&self, prasterizerstate: windows_core::Ref<'_, ID3D11RasterizerState>);
15555 fn RSSetViewports(&self, numviewports: u32, pviewports: *const D3D11_VIEWPORT);
15556 fn RSSetScissorRects(&self, numrects: u32, prects: *const crate::Foundation::RECT);
15557 fn CopySubresourceRegion(
15558 &self,
15559 pdstresource: windows_core::Ref<'_, ID3D11Resource>,
15560 dstsubresource: u32,
15561 dstx: u32,
15562 dsty: u32,
15563 dstz: u32,
15564 psrcresource: windows_core::Ref<'_, ID3D11Resource>,
15565 srcsubresource: u32,
15566 psrcbox: *const D3D11_BOX,
15567 );
15568 fn CopyResource(
15569 &self,
15570 pdstresource: windows_core::Ref<'_, ID3D11Resource>,
15571 psrcresource: windows_core::Ref<'_, ID3D11Resource>,
15572 );
15573 fn UpdateSubresource(
15574 &self,
15575 pdstresource: windows_core::Ref<'_, ID3D11Resource>,
15576 dstsubresource: u32,
15577 pdstbox: *const D3D11_BOX,
15578 psrcdata: *const core::ffi::c_void,
15579 srcrowpitch: u32,
15580 srcdepthpitch: u32,
15581 );
15582 fn CopyStructureCount(
15583 &self,
15584 pdstbuffer: windows_core::Ref<'_, ID3D11Buffer>,
15585 dstalignedbyteoffset: u32,
15586 psrcview: windows_core::Ref<'_, ID3D11UnorderedAccessView>,
15587 );
15588 fn ClearRenderTargetView(
15589 &self,
15590 prendertargetview: windows_core::Ref<'_, ID3D11RenderTargetView>,
15591 colorrgba: *const f32,
15592 );
15593 fn ClearUnorderedAccessViewUint(
15594 &self,
15595 punorderedaccessview: windows_core::Ref<'_, ID3D11UnorderedAccessView>,
15596 values: *const u32,
15597 );
15598 fn ClearUnorderedAccessViewFloat(
15599 &self,
15600 punorderedaccessview: windows_core::Ref<'_, ID3D11UnorderedAccessView>,
15601 values: *const f32,
15602 );
15603 fn ClearDepthStencilView(
15604 &self,
15605 pdepthstencilview: windows_core::Ref<'_, ID3D11DepthStencilView>,
15606 clearflags: u32,
15607 depth: f32,
15608 stencil: u8,
15609 );
15610 fn GenerateMips(&self, pshaderresourceview: windows_core::Ref<'_, ID3D11ShaderResourceView>);
15611 fn SetResourceMinLOD(&self, presource: windows_core::Ref<'_, ID3D11Resource>, minlod: f32);
15612 fn GetResourceMinLOD(&self, presource: windows_core::Ref<'_, ID3D11Resource>) -> f32;
15613 fn ResolveSubresource(
15614 &self,
15615 pdstresource: windows_core::Ref<'_, ID3D11Resource>,
15616 dstsubresource: u32,
15617 psrcresource: windows_core::Ref<'_, ID3D11Resource>,
15618 srcsubresource: u32,
15619 format: crate::Dxgi::Common::DXGI_FORMAT,
15620 );
15621 fn ExecuteCommandList(
15622 &self,
15623 pcommandlist: windows_core::Ref<'_, ID3D11CommandList>,
15624 restorecontextstate: crate::Foundation::BOOL,
15625 );
15626 fn HSSetShaderResources(
15627 &self,
15628 startslot: u32,
15629 numviews: u32,
15630 ppshaderresourceviews: *const Option<ID3D11ShaderResourceView>,
15631 );
15632 fn HSSetShader(
15633 &self,
15634 phullshader: windows_core::Ref<'_, ID3D11HullShader>,
15635 ppclassinstances: *const Option<ID3D11ClassInstance>,
15636 numclassinstances: u32,
15637 );
15638 fn HSSetSamplers(
15639 &self,
15640 startslot: u32,
15641 numsamplers: u32,
15642 ppsamplers: *const Option<ID3D11SamplerState>,
15643 );
15644 fn HSSetConstantBuffers(
15645 &self,
15646 startslot: u32,
15647 numbuffers: u32,
15648 ppconstantbuffers: *const Option<ID3D11Buffer>,
15649 );
15650 fn DSSetShaderResources(
15651 &self,
15652 startslot: u32,
15653 numviews: u32,
15654 ppshaderresourceviews: *const Option<ID3D11ShaderResourceView>,
15655 );
15656 fn DSSetShader(
15657 &self,
15658 pdomainshader: windows_core::Ref<'_, ID3D11DomainShader>,
15659 ppclassinstances: *const Option<ID3D11ClassInstance>,
15660 numclassinstances: u32,
15661 );
15662 fn DSSetSamplers(
15663 &self,
15664 startslot: u32,
15665 numsamplers: u32,
15666 ppsamplers: *const Option<ID3D11SamplerState>,
15667 );
15668 fn DSSetConstantBuffers(
15669 &self,
15670 startslot: u32,
15671 numbuffers: u32,
15672 ppconstantbuffers: *const Option<ID3D11Buffer>,
15673 );
15674 fn CSSetShaderResources(
15675 &self,
15676 startslot: u32,
15677 numviews: u32,
15678 ppshaderresourceviews: *const Option<ID3D11ShaderResourceView>,
15679 );
15680 fn CSSetUnorderedAccessViews(
15681 &self,
15682 startslot: u32,
15683 numuavs: u32,
15684 ppunorderedaccessviews: *const Option<ID3D11UnorderedAccessView>,
15685 puavinitialcounts: *const u32,
15686 );
15687 fn CSSetShader(
15688 &self,
15689 pcomputeshader: windows_core::Ref<'_, ID3D11ComputeShader>,
15690 ppclassinstances: *const Option<ID3D11ClassInstance>,
15691 numclassinstances: u32,
15692 );
15693 fn CSSetSamplers(
15694 &self,
15695 startslot: u32,
15696 numsamplers: u32,
15697 ppsamplers: *const Option<ID3D11SamplerState>,
15698 );
15699 fn CSSetConstantBuffers(
15700 &self,
15701 startslot: u32,
15702 numbuffers: u32,
15703 ppconstantbuffers: *const Option<ID3D11Buffer>,
15704 );
15705 fn VSGetConstantBuffers(
15706 &self,
15707 startslot: u32,
15708 numbuffers: u32,
15709 ppconstantbuffers: windows_core::OutRef<'_, ID3D11Buffer>,
15710 );
15711 fn PSGetShaderResources(
15712 &self,
15713 startslot: u32,
15714 numviews: u32,
15715 ppshaderresourceviews: windows_core::OutRef<'_, ID3D11ShaderResourceView>,
15716 );
15717 fn PSGetShader(
15718 &self,
15719 pppixelshader: windows_core::OutRef<'_, ID3D11PixelShader>,
15720 ppclassinstances: windows_core::OutRef<'_, ID3D11ClassInstance>,
15721 pnumclassinstances: *mut u32,
15722 );
15723 fn PSGetSamplers(
15724 &self,
15725 startslot: u32,
15726 numsamplers: u32,
15727 ppsamplers: windows_core::OutRef<'_, ID3D11SamplerState>,
15728 );
15729 fn VSGetShader(
15730 &self,
15731 ppvertexshader: windows_core::OutRef<'_, ID3D11VertexShader>,
15732 ppclassinstances: windows_core::OutRef<'_, ID3D11ClassInstance>,
15733 pnumclassinstances: *mut u32,
15734 );
15735 fn PSGetConstantBuffers(
15736 &self,
15737 startslot: u32,
15738 numbuffers: u32,
15739 ppconstantbuffers: windows_core::OutRef<'_, ID3D11Buffer>,
15740 );
15741 fn IAGetInputLayout(&self, ppinputlayout: windows_core::OutRef<'_, ID3D11InputLayout>);
15742 fn IAGetVertexBuffers(
15743 &self,
15744 startslot: u32,
15745 numbuffers: u32,
15746 ppvertexbuffers: windows_core::OutRef<'_, ID3D11Buffer>,
15747 pstrides: *mut u32,
15748 poffsets: *mut u32,
15749 );
15750 fn IAGetIndexBuffer(
15751 &self,
15752 pindexbuffer: windows_core::OutRef<'_, ID3D11Buffer>,
15753 format: *mut crate::Dxgi::Common::DXGI_FORMAT,
15754 offset: *mut u32,
15755 );
15756 fn GSGetConstantBuffers(
15757 &self,
15758 startslot: u32,
15759 numbuffers: u32,
15760 ppconstantbuffers: windows_core::OutRef<'_, ID3D11Buffer>,
15761 );
15762 fn GSGetShader(
15763 &self,
15764 ppgeometryshader: windows_core::OutRef<'_, ID3D11GeometryShader>,
15765 ppclassinstances: windows_core::OutRef<'_, ID3D11ClassInstance>,
15766 pnumclassinstances: *mut u32,
15767 );
15768 fn IAGetPrimitiveTopology(&self, ptopology: *mut super::Direct3D::D3D_PRIMITIVE_TOPOLOGY);
15769 fn VSGetShaderResources(
15770 &self,
15771 startslot: u32,
15772 numviews: u32,
15773 ppshaderresourceviews: windows_core::OutRef<'_, ID3D11ShaderResourceView>,
15774 );
15775 fn VSGetSamplers(
15776 &self,
15777 startslot: u32,
15778 numsamplers: u32,
15779 ppsamplers: windows_core::OutRef<'_, ID3D11SamplerState>,
15780 );
15781 fn GetPredication(
15782 &self,
15783 pppredicate: windows_core::OutRef<'_, ID3D11Predicate>,
15784 ppredicatevalue: *mut crate::Foundation::BOOL,
15785 );
15786 fn GSGetShaderResources(
15787 &self,
15788 startslot: u32,
15789 numviews: u32,
15790 ppshaderresourceviews: windows_core::OutRef<'_, ID3D11ShaderResourceView>,
15791 );
15792 fn GSGetSamplers(
15793 &self,
15794 startslot: u32,
15795 numsamplers: u32,
15796 ppsamplers: windows_core::OutRef<'_, ID3D11SamplerState>,
15797 );
15798 fn OMGetRenderTargets(
15799 &self,
15800 numviews: u32,
15801 pprendertargetviews: windows_core::OutRef<'_, ID3D11RenderTargetView>,
15802 ppdepthstencilview: windows_core::OutRef<'_, ID3D11DepthStencilView>,
15803 );
15804 fn OMGetRenderTargetsAndUnorderedAccessViews(
15805 &self,
15806 numrtvs: u32,
15807 pprendertargetviews: windows_core::OutRef<'_, ID3D11RenderTargetView>,
15808 ppdepthstencilview: windows_core::OutRef<'_, ID3D11DepthStencilView>,
15809 uavstartslot: u32,
15810 numuavs: u32,
15811 ppunorderedaccessviews: windows_core::OutRef<'_, ID3D11UnorderedAccessView>,
15812 );
15813 fn OMGetBlendState(
15814 &self,
15815 ppblendstate: windows_core::OutRef<'_, ID3D11BlendState>,
15816 blendfactor: *mut f32,
15817 psamplemask: *mut u32,
15818 );
15819 fn OMGetDepthStencilState(
15820 &self,
15821 ppdepthstencilstate: windows_core::OutRef<'_, ID3D11DepthStencilState>,
15822 pstencilref: *mut u32,
15823 );
15824 fn SOGetTargets(&self, numbuffers: u32, ppsotargets: windows_core::OutRef<'_, ID3D11Buffer>);
15825 fn RSGetState(&self, pprasterizerstate: windows_core::OutRef<'_, ID3D11RasterizerState>);
15826 fn RSGetViewports(&self, pnumviewports: *mut u32, pviewports: *mut D3D11_VIEWPORT);
15827 fn RSGetScissorRects(&self, pnumrects: *mut u32, prects: *mut crate::Foundation::RECT);
15828 fn HSGetShaderResources(
15829 &self,
15830 startslot: u32,
15831 numviews: u32,
15832 ppshaderresourceviews: windows_core::OutRef<'_, ID3D11ShaderResourceView>,
15833 );
15834 fn HSGetShader(
15835 &self,
15836 pphullshader: windows_core::OutRef<'_, ID3D11HullShader>,
15837 ppclassinstances: windows_core::OutRef<'_, ID3D11ClassInstance>,
15838 pnumclassinstances: *mut u32,
15839 );
15840 fn HSGetSamplers(
15841 &self,
15842 startslot: u32,
15843 numsamplers: u32,
15844 ppsamplers: windows_core::OutRef<'_, ID3D11SamplerState>,
15845 );
15846 fn HSGetConstantBuffers(
15847 &self,
15848 startslot: u32,
15849 numbuffers: u32,
15850 ppconstantbuffers: windows_core::OutRef<'_, ID3D11Buffer>,
15851 );
15852 fn DSGetShaderResources(
15853 &self,
15854 startslot: u32,
15855 numviews: u32,
15856 ppshaderresourceviews: windows_core::OutRef<'_, ID3D11ShaderResourceView>,
15857 );
15858 fn DSGetShader(
15859 &self,
15860 ppdomainshader: windows_core::OutRef<'_, ID3D11DomainShader>,
15861 ppclassinstances: windows_core::OutRef<'_, ID3D11ClassInstance>,
15862 pnumclassinstances: *mut u32,
15863 );
15864 fn DSGetSamplers(
15865 &self,
15866 startslot: u32,
15867 numsamplers: u32,
15868 ppsamplers: windows_core::OutRef<'_, ID3D11SamplerState>,
15869 );
15870 fn DSGetConstantBuffers(
15871 &self,
15872 startslot: u32,
15873 numbuffers: u32,
15874 ppconstantbuffers: windows_core::OutRef<'_, ID3D11Buffer>,
15875 );
15876 fn CSGetShaderResources(
15877 &self,
15878 startslot: u32,
15879 numviews: u32,
15880 ppshaderresourceviews: windows_core::OutRef<'_, ID3D11ShaderResourceView>,
15881 );
15882 fn CSGetUnorderedAccessViews(
15883 &self,
15884 startslot: u32,
15885 numuavs: u32,
15886 ppunorderedaccessviews: windows_core::OutRef<'_, ID3D11UnorderedAccessView>,
15887 );
15888 fn CSGetShader(
15889 &self,
15890 ppcomputeshader: windows_core::OutRef<'_, ID3D11ComputeShader>,
15891 ppclassinstances: windows_core::OutRef<'_, ID3D11ClassInstance>,
15892 pnumclassinstances: *mut u32,
15893 );
15894 fn CSGetSamplers(
15895 &self,
15896 startslot: u32,
15897 numsamplers: u32,
15898 ppsamplers: windows_core::OutRef<'_, ID3D11SamplerState>,
15899 );
15900 fn CSGetConstantBuffers(
15901 &self,
15902 startslot: u32,
15903 numbuffers: u32,
15904 ppconstantbuffers: windows_core::OutRef<'_, ID3D11Buffer>,
15905 );
15906 fn ClearState(&self);
15907 fn Flush(&self);
15908 fn GetType(&self) -> D3D11_DEVICE_CONTEXT_TYPE;
15909 fn GetContextFlags(&self) -> u32;
15910 fn FinishCommandList(
15911 &self,
15912 restoredeferredcontextstate: crate::Foundation::BOOL,
15913 ppcommandlist: windows_core::OutRef<'_, ID3D11CommandList>,
15914 ) -> windows_core::Result<()>;
15915}
15916#[cfg(all(
15917 feature = "Win32_Graphics_Direct3D",
15918 feature = "Win32_Graphics_Dxgi_Common"
15919))]
15920impl ID3D11DeviceContext_Vtbl {
15921 pub const fn new<Identity: ID3D11DeviceContext_Impl, const OFFSET: isize>() -> Self {
15922 unsafe extern "system" fn VSSetConstantBuffers<
15923 Identity: ID3D11DeviceContext_Impl,
15924 const OFFSET: isize,
15925 >(
15926 this: *mut core::ffi::c_void,
15927 startslot: u32,
15928 numbuffers: u32,
15929 ppconstantbuffers: *const *mut core::ffi::c_void,
15930 ) {
15931 unsafe {
15932 let this: &Identity =
15933 &*((this as *const *const ()).offset(OFFSET) as *const Identity);
15934 ID3D11DeviceContext_Impl::VSSetConstantBuffers(
15935 this,
15936 core::mem::transmute_copy(&startslot),
15937 core::mem::transmute_copy(&numbuffers),
15938 core::mem::transmute_copy(&ppconstantbuffers),
15939 )
15940 }
15941 }
15942 unsafe extern "system" fn PSSetShaderResources<
15943 Identity: ID3D11DeviceContext_Impl,
15944 const OFFSET: isize,
15945 >(
15946 this: *mut core::ffi::c_void,
15947 startslot: u32,
15948 numviews: u32,
15949 ppshaderresourceviews: *const *mut core::ffi::c_void,
15950 ) {
15951 unsafe {
15952 let this: &Identity =
15953 &*((this as *const *const ()).offset(OFFSET) as *const Identity);
15954 ID3D11DeviceContext_Impl::PSSetShaderResources(
15955 this,
15956 core::mem::transmute_copy(&startslot),
15957 core::mem::transmute_copy(&numviews),
15958 core::mem::transmute_copy(&ppshaderresourceviews),
15959 )
15960 }
15961 }
15962 unsafe extern "system" fn PSSetShader<
15963 Identity: ID3D11DeviceContext_Impl,
15964 const OFFSET: isize,
15965 >(
15966 this: *mut core::ffi::c_void,
15967 ppixelshader: *mut core::ffi::c_void,
15968 ppclassinstances: *const *mut core::ffi::c_void,
15969 numclassinstances: u32,
15970 ) {
15971 unsafe {
15972 let this: &Identity =
15973 &*((this as *const *const ()).offset(OFFSET) as *const Identity);
15974 ID3D11DeviceContext_Impl::PSSetShader(
15975 this,
15976 core::mem::transmute_copy(&ppixelshader),
15977 core::mem::transmute_copy(&ppclassinstances),
15978 core::mem::transmute_copy(&numclassinstances),
15979 )
15980 }
15981 }
15982 unsafe extern "system" fn PSSetSamplers<
15983 Identity: ID3D11DeviceContext_Impl,
15984 const OFFSET: isize,
15985 >(
15986 this: *mut core::ffi::c_void,
15987 startslot: u32,
15988 numsamplers: u32,
15989 ppsamplers: *const *mut core::ffi::c_void,
15990 ) {
15991 unsafe {
15992 let this: &Identity =
15993 &*((this as *const *const ()).offset(OFFSET) as *const Identity);
15994 ID3D11DeviceContext_Impl::PSSetSamplers(
15995 this,
15996 core::mem::transmute_copy(&startslot),
15997 core::mem::transmute_copy(&numsamplers),
15998 core::mem::transmute_copy(&ppsamplers),
15999 )
16000 }
16001 }
16002 unsafe extern "system" fn VSSetShader<
16003 Identity: ID3D11DeviceContext_Impl,
16004 const OFFSET: isize,
16005 >(
16006 this: *mut core::ffi::c_void,
16007 pvertexshader: *mut core::ffi::c_void,
16008 ppclassinstances: *const *mut core::ffi::c_void,
16009 numclassinstances: u32,
16010 ) {
16011 unsafe {
16012 let this: &Identity =
16013 &*((this as *const *const ()).offset(OFFSET) as *const Identity);
16014 ID3D11DeviceContext_Impl::VSSetShader(
16015 this,
16016 core::mem::transmute_copy(&pvertexshader),
16017 core::mem::transmute_copy(&ppclassinstances),
16018 core::mem::transmute_copy(&numclassinstances),
16019 )
16020 }
16021 }
16022 unsafe extern "system" fn DrawIndexed<
16023 Identity: ID3D11DeviceContext_Impl,
16024 const OFFSET: isize,
16025 >(
16026 this: *mut core::ffi::c_void,
16027 indexcount: u32,
16028 startindexlocation: u32,
16029 basevertexlocation: i32,
16030 ) {
16031 unsafe {
16032 let this: &Identity =
16033 &*((this as *const *const ()).offset(OFFSET) as *const Identity);
16034 ID3D11DeviceContext_Impl::DrawIndexed(
16035 this,
16036 core::mem::transmute_copy(&indexcount),
16037 core::mem::transmute_copy(&startindexlocation),
16038 core::mem::transmute_copy(&basevertexlocation),
16039 )
16040 }
16041 }
16042 unsafe extern "system" fn Draw<Identity: ID3D11DeviceContext_Impl, const OFFSET: isize>(
16043 this: *mut core::ffi::c_void,
16044 vertexcount: u32,
16045 startvertexlocation: u32,
16046 ) {
16047 unsafe {
16048 let this: &Identity =
16049 &*((this as *const *const ()).offset(OFFSET) as *const Identity);
16050 ID3D11DeviceContext_Impl::Draw(
16051 this,
16052 core::mem::transmute_copy(&vertexcount),
16053 core::mem::transmute_copy(&startvertexlocation),
16054 )
16055 }
16056 }
16057 unsafe extern "system" fn Map<Identity: ID3D11DeviceContext_Impl, const OFFSET: isize>(
16058 this: *mut core::ffi::c_void,
16059 presource: *mut core::ffi::c_void,
16060 subresource: u32,
16061 maptype: D3D11_MAP,
16062 mapflags: u32,
16063 pmappedresource: *mut D3D11_MAPPED_SUBRESOURCE,
16064 ) -> windows_core::HRESULT {
16065 unsafe {
16066 let this: &Identity =
16067 &*((this as *const *const ()).offset(OFFSET) as *const Identity);
16068 ID3D11DeviceContext_Impl::Map(
16069 this,
16070 core::mem::transmute_copy(&presource),
16071 core::mem::transmute_copy(&subresource),
16072 core::mem::transmute_copy(&maptype),
16073 core::mem::transmute_copy(&mapflags),
16074 core::mem::transmute_copy(&pmappedresource),
16075 )
16076 .into()
16077 }
16078 }
16079 unsafe extern "system" fn Unmap<Identity: ID3D11DeviceContext_Impl, const OFFSET: isize>(
16080 this: *mut core::ffi::c_void,
16081 presource: *mut core::ffi::c_void,
16082 subresource: u32,
16083 ) {
16084 unsafe {
16085 let this: &Identity =
16086 &*((this as *const *const ()).offset(OFFSET) as *const Identity);
16087 ID3D11DeviceContext_Impl::Unmap(
16088 this,
16089 core::mem::transmute_copy(&presource),
16090 core::mem::transmute_copy(&subresource),
16091 )
16092 }
16093 }
16094 unsafe extern "system" fn PSSetConstantBuffers<
16095 Identity: ID3D11DeviceContext_Impl,
16096 const OFFSET: isize,
16097 >(
16098 this: *mut core::ffi::c_void,
16099 startslot: u32,
16100 numbuffers: u32,
16101 ppconstantbuffers: *const *mut core::ffi::c_void,
16102 ) {
16103 unsafe {
16104 let this: &Identity =
16105 &*((this as *const *const ()).offset(OFFSET) as *const Identity);
16106 ID3D11DeviceContext_Impl::PSSetConstantBuffers(
16107 this,
16108 core::mem::transmute_copy(&startslot),
16109 core::mem::transmute_copy(&numbuffers),
16110 core::mem::transmute_copy(&ppconstantbuffers),
16111 )
16112 }
16113 }
16114 unsafe extern "system" fn IASetInputLayout<
16115 Identity: ID3D11DeviceContext_Impl,
16116 const OFFSET: isize,
16117 >(
16118 this: *mut core::ffi::c_void,
16119 pinputlayout: *mut core::ffi::c_void,
16120 ) {
16121 unsafe {
16122 let this: &Identity =
16123 &*((this as *const *const ()).offset(OFFSET) as *const Identity);
16124 ID3D11DeviceContext_Impl::IASetInputLayout(
16125 this,
16126 core::mem::transmute_copy(&pinputlayout),
16127 )
16128 }
16129 }
16130 unsafe extern "system" fn IASetVertexBuffers<
16131 Identity: ID3D11DeviceContext_Impl,
16132 const OFFSET: isize,
16133 >(
16134 this: *mut core::ffi::c_void,
16135 startslot: u32,
16136 numbuffers: u32,
16137 ppvertexbuffers: *const *mut core::ffi::c_void,
16138 pstrides: *const u32,
16139 poffsets: *const u32,
16140 ) {
16141 unsafe {
16142 let this: &Identity =
16143 &*((this as *const *const ()).offset(OFFSET) as *const Identity);
16144 ID3D11DeviceContext_Impl::IASetVertexBuffers(
16145 this,
16146 core::mem::transmute_copy(&startslot),
16147 core::mem::transmute_copy(&numbuffers),
16148 core::mem::transmute_copy(&ppvertexbuffers),
16149 core::mem::transmute_copy(&pstrides),
16150 core::mem::transmute_copy(&poffsets),
16151 )
16152 }
16153 }
16154 unsafe extern "system" fn IASetIndexBuffer<
16155 Identity: ID3D11DeviceContext_Impl,
16156 const OFFSET: isize,
16157 >(
16158 this: *mut core::ffi::c_void,
16159 pindexbuffer: *mut core::ffi::c_void,
16160 format: crate::Dxgi::Common::DXGI_FORMAT,
16161 offset: u32,
16162 ) {
16163 unsafe {
16164 let this: &Identity =
16165 &*((this as *const *const ()).offset(OFFSET) as *const Identity);
16166 ID3D11DeviceContext_Impl::IASetIndexBuffer(
16167 this,
16168 core::mem::transmute_copy(&pindexbuffer),
16169 core::mem::transmute_copy(&format),
16170 core::mem::transmute_copy(&offset),
16171 )
16172 }
16173 }
16174 unsafe extern "system" fn DrawIndexedInstanced<
16175 Identity: ID3D11DeviceContext_Impl,
16176 const OFFSET: isize,
16177 >(
16178 this: *mut core::ffi::c_void,
16179 indexcountperinstance: u32,
16180 instancecount: u32,
16181 startindexlocation: u32,
16182 basevertexlocation: i32,
16183 startinstancelocation: u32,
16184 ) {
16185 unsafe {
16186 let this: &Identity =
16187 &*((this as *const *const ()).offset(OFFSET) as *const Identity);
16188 ID3D11DeviceContext_Impl::DrawIndexedInstanced(
16189 this,
16190 core::mem::transmute_copy(&indexcountperinstance),
16191 core::mem::transmute_copy(&instancecount),
16192 core::mem::transmute_copy(&startindexlocation),
16193 core::mem::transmute_copy(&basevertexlocation),
16194 core::mem::transmute_copy(&startinstancelocation),
16195 )
16196 }
16197 }
16198 unsafe extern "system" fn DrawInstanced<
16199 Identity: ID3D11DeviceContext_Impl,
16200 const OFFSET: isize,
16201 >(
16202 this: *mut core::ffi::c_void,
16203 vertexcountperinstance: u32,
16204 instancecount: u32,
16205 startvertexlocation: u32,
16206 startinstancelocation: u32,
16207 ) {
16208 unsafe {
16209 let this: &Identity =
16210 &*((this as *const *const ()).offset(OFFSET) as *const Identity);
16211 ID3D11DeviceContext_Impl::DrawInstanced(
16212 this,
16213 core::mem::transmute_copy(&vertexcountperinstance),
16214 core::mem::transmute_copy(&instancecount),
16215 core::mem::transmute_copy(&startvertexlocation),
16216 core::mem::transmute_copy(&startinstancelocation),
16217 )
16218 }
16219 }
16220 unsafe extern "system" fn GSSetConstantBuffers<
16221 Identity: ID3D11DeviceContext_Impl,
16222 const OFFSET: isize,
16223 >(
16224 this: *mut core::ffi::c_void,
16225 startslot: u32,
16226 numbuffers: u32,
16227 ppconstantbuffers: *const *mut core::ffi::c_void,
16228 ) {
16229 unsafe {
16230 let this: &Identity =
16231 &*((this as *const *const ()).offset(OFFSET) as *const Identity);
16232 ID3D11DeviceContext_Impl::GSSetConstantBuffers(
16233 this,
16234 core::mem::transmute_copy(&startslot),
16235 core::mem::transmute_copy(&numbuffers),
16236 core::mem::transmute_copy(&ppconstantbuffers),
16237 )
16238 }
16239 }
16240 unsafe extern "system" fn GSSetShader<
16241 Identity: ID3D11DeviceContext_Impl,
16242 const OFFSET: isize,
16243 >(
16244 this: *mut core::ffi::c_void,
16245 pshader: *mut core::ffi::c_void,
16246 ppclassinstances: *const *mut core::ffi::c_void,
16247 numclassinstances: u32,
16248 ) {
16249 unsafe {
16250 let this: &Identity =
16251 &*((this as *const *const ()).offset(OFFSET) as *const Identity);
16252 ID3D11DeviceContext_Impl::GSSetShader(
16253 this,
16254 core::mem::transmute_copy(&pshader),
16255 core::mem::transmute_copy(&ppclassinstances),
16256 core::mem::transmute_copy(&numclassinstances),
16257 )
16258 }
16259 }
16260 unsafe extern "system" fn IASetPrimitiveTopology<
16261 Identity: ID3D11DeviceContext_Impl,
16262 const OFFSET: isize,
16263 >(
16264 this: *mut core::ffi::c_void,
16265 topology: super::Direct3D::D3D_PRIMITIVE_TOPOLOGY,
16266 ) {
16267 unsafe {
16268 let this: &Identity =
16269 &*((this as *const *const ()).offset(OFFSET) as *const Identity);
16270 ID3D11DeviceContext_Impl::IASetPrimitiveTopology(
16271 this,
16272 core::mem::transmute_copy(&topology),
16273 )
16274 }
16275 }
16276 unsafe extern "system" fn VSSetShaderResources<
16277 Identity: ID3D11DeviceContext_Impl,
16278 const OFFSET: isize,
16279 >(
16280 this: *mut core::ffi::c_void,
16281 startslot: u32,
16282 numviews: u32,
16283 ppshaderresourceviews: *const *mut core::ffi::c_void,
16284 ) {
16285 unsafe {
16286 let this: &Identity =
16287 &*((this as *const *const ()).offset(OFFSET) as *const Identity);
16288 ID3D11DeviceContext_Impl::VSSetShaderResources(
16289 this,
16290 core::mem::transmute_copy(&startslot),
16291 core::mem::transmute_copy(&numviews),
16292 core::mem::transmute_copy(&ppshaderresourceviews),
16293 )
16294 }
16295 }
16296 unsafe extern "system" fn VSSetSamplers<
16297 Identity: ID3D11DeviceContext_Impl,
16298 const OFFSET: isize,
16299 >(
16300 this: *mut core::ffi::c_void,
16301 startslot: u32,
16302 numsamplers: u32,
16303 ppsamplers: *const *mut core::ffi::c_void,
16304 ) {
16305 unsafe {
16306 let this: &Identity =
16307 &*((this as *const *const ()).offset(OFFSET) as *const Identity);
16308 ID3D11DeviceContext_Impl::VSSetSamplers(
16309 this,
16310 core::mem::transmute_copy(&startslot),
16311 core::mem::transmute_copy(&numsamplers),
16312 core::mem::transmute_copy(&ppsamplers),
16313 )
16314 }
16315 }
16316 unsafe extern "system" fn Begin<Identity: ID3D11DeviceContext_Impl, const OFFSET: isize>(
16317 this: *mut core::ffi::c_void,
16318 pasync: *mut core::ffi::c_void,
16319 ) {
16320 unsafe {
16321 let this: &Identity =
16322 &*((this as *const *const ()).offset(OFFSET) as *const Identity);
16323 ID3D11DeviceContext_Impl::Begin(this, core::mem::transmute_copy(&pasync))
16324 }
16325 }
16326 unsafe extern "system" fn End<Identity: ID3D11DeviceContext_Impl, const OFFSET: isize>(
16327 this: *mut core::ffi::c_void,
16328 pasync: *mut core::ffi::c_void,
16329 ) {
16330 unsafe {
16331 let this: &Identity =
16332 &*((this as *const *const ()).offset(OFFSET) as *const Identity);
16333 ID3D11DeviceContext_Impl::End(this, core::mem::transmute_copy(&pasync))
16334 }
16335 }
16336 unsafe extern "system" fn GetData<
16337 Identity: ID3D11DeviceContext_Impl,
16338 const OFFSET: isize,
16339 >(
16340 this: *mut core::ffi::c_void,
16341 pasync: *mut core::ffi::c_void,
16342 pdata: *mut core::ffi::c_void,
16343 datasize: u32,
16344 getdataflags: u32,
16345 ) -> windows_core::HRESULT {
16346 unsafe {
16347 let this: &Identity =
16348 &*((this as *const *const ()).offset(OFFSET) as *const Identity);
16349 ID3D11DeviceContext_Impl::GetData(
16350 this,
16351 core::mem::transmute_copy(&pasync),
16352 core::mem::transmute_copy(&pdata),
16353 core::mem::transmute_copy(&datasize),
16354 core::mem::transmute_copy(&getdataflags),
16355 )
16356 .into()
16357 }
16358 }
16359 unsafe extern "system" fn SetPredication<
16360 Identity: ID3D11DeviceContext_Impl,
16361 const OFFSET: isize,
16362 >(
16363 this: *mut core::ffi::c_void,
16364 ppredicate: *mut core::ffi::c_void,
16365 predicatevalue: crate::Foundation::BOOL,
16366 ) {
16367 unsafe {
16368 let this: &Identity =
16369 &*((this as *const *const ()).offset(OFFSET) as *const Identity);
16370 ID3D11DeviceContext_Impl::SetPredication(
16371 this,
16372 core::mem::transmute_copy(&ppredicate),
16373 core::mem::transmute_copy(&predicatevalue),
16374 )
16375 }
16376 }
16377 unsafe extern "system" fn GSSetShaderResources<
16378 Identity: ID3D11DeviceContext_Impl,
16379 const OFFSET: isize,
16380 >(
16381 this: *mut core::ffi::c_void,
16382 startslot: u32,
16383 numviews: u32,
16384 ppshaderresourceviews: *const *mut core::ffi::c_void,
16385 ) {
16386 unsafe {
16387 let this: &Identity =
16388 &*((this as *const *const ()).offset(OFFSET) as *const Identity);
16389 ID3D11DeviceContext_Impl::GSSetShaderResources(
16390 this,
16391 core::mem::transmute_copy(&startslot),
16392 core::mem::transmute_copy(&numviews),
16393 core::mem::transmute_copy(&ppshaderresourceviews),
16394 )
16395 }
16396 }
16397 unsafe extern "system" fn GSSetSamplers<
16398 Identity: ID3D11DeviceContext_Impl,
16399 const OFFSET: isize,
16400 >(
16401 this: *mut core::ffi::c_void,
16402 startslot: u32,
16403 numsamplers: u32,
16404 ppsamplers: *const *mut core::ffi::c_void,
16405 ) {
16406 unsafe {
16407 let this: &Identity =
16408 &*((this as *const *const ()).offset(OFFSET) as *const Identity);
16409 ID3D11DeviceContext_Impl::GSSetSamplers(
16410 this,
16411 core::mem::transmute_copy(&startslot),
16412 core::mem::transmute_copy(&numsamplers),
16413 core::mem::transmute_copy(&ppsamplers),
16414 )
16415 }
16416 }
16417 unsafe extern "system" fn OMSetRenderTargets<
16418 Identity: ID3D11DeviceContext_Impl,
16419 const OFFSET: isize,
16420 >(
16421 this: *mut core::ffi::c_void,
16422 numviews: u32,
16423 pprendertargetviews: *const *mut core::ffi::c_void,
16424 pdepthstencilview: *mut core::ffi::c_void,
16425 ) {
16426 unsafe {
16427 let this: &Identity =
16428 &*((this as *const *const ()).offset(OFFSET) as *const Identity);
16429 ID3D11DeviceContext_Impl::OMSetRenderTargets(
16430 this,
16431 core::mem::transmute_copy(&numviews),
16432 core::mem::transmute_copy(&pprendertargetviews),
16433 core::mem::transmute_copy(&pdepthstencilview),
16434 )
16435 }
16436 }
16437 unsafe extern "system" fn OMSetRenderTargetsAndUnorderedAccessViews<
16438 Identity: ID3D11DeviceContext_Impl,
16439 const OFFSET: isize,
16440 >(
16441 this: *mut core::ffi::c_void,
16442 numrtvs: u32,
16443 pprendertargetviews: *const *mut core::ffi::c_void,
16444 pdepthstencilview: *mut core::ffi::c_void,
16445 uavstartslot: u32,
16446 numuavs: u32,
16447 ppunorderedaccessviews: *const *mut core::ffi::c_void,
16448 puavinitialcounts: *const u32,
16449 ) {
16450 unsafe {
16451 let this: &Identity =
16452 &*((this as *const *const ()).offset(OFFSET) as *const Identity);
16453 ID3D11DeviceContext_Impl::OMSetRenderTargetsAndUnorderedAccessViews(
16454 this,
16455 core::mem::transmute_copy(&numrtvs),
16456 core::mem::transmute_copy(&pprendertargetviews),
16457 core::mem::transmute_copy(&pdepthstencilview),
16458 core::mem::transmute_copy(&uavstartslot),
16459 core::mem::transmute_copy(&numuavs),
16460 core::mem::transmute_copy(&ppunorderedaccessviews),
16461 core::mem::transmute_copy(&puavinitialcounts),
16462 )
16463 }
16464 }
16465 unsafe extern "system" fn OMSetBlendState<
16466 Identity: ID3D11DeviceContext_Impl,
16467 const OFFSET: isize,
16468 >(
16469 this: *mut core::ffi::c_void,
16470 pblendstate: *mut core::ffi::c_void,
16471 blendfactor: *const f32,
16472 samplemask: u32,
16473 ) {
16474 unsafe {
16475 let this: &Identity =
16476 &*((this as *const *const ()).offset(OFFSET) as *const Identity);
16477 ID3D11DeviceContext_Impl::OMSetBlendState(
16478 this,
16479 core::mem::transmute_copy(&pblendstate),
16480 core::mem::transmute_copy(&blendfactor),
16481 core::mem::transmute_copy(&samplemask),
16482 )
16483 }
16484 }
16485 unsafe extern "system" fn OMSetDepthStencilState<
16486 Identity: ID3D11DeviceContext_Impl,
16487 const OFFSET: isize,
16488 >(
16489 this: *mut core::ffi::c_void,
16490 pdepthstencilstate: *mut core::ffi::c_void,
16491 stencilref: u32,
16492 ) {
16493 unsafe {
16494 let this: &Identity =
16495 &*((this as *const *const ()).offset(OFFSET) as *const Identity);
16496 ID3D11DeviceContext_Impl::OMSetDepthStencilState(
16497 this,
16498 core::mem::transmute_copy(&pdepthstencilstate),
16499 core::mem::transmute_copy(&stencilref),
16500 )
16501 }
16502 }
16503 unsafe extern "system" fn SOSetTargets<
16504 Identity: ID3D11DeviceContext_Impl,
16505 const OFFSET: isize,
16506 >(
16507 this: *mut core::ffi::c_void,
16508 numbuffers: u32,
16509 ppsotargets: *const *mut core::ffi::c_void,
16510 poffsets: *const u32,
16511 ) {
16512 unsafe {
16513 let this: &Identity =
16514 &*((this as *const *const ()).offset(OFFSET) as *const Identity);
16515 ID3D11DeviceContext_Impl::SOSetTargets(
16516 this,
16517 core::mem::transmute_copy(&numbuffers),
16518 core::mem::transmute_copy(&ppsotargets),
16519 core::mem::transmute_copy(&poffsets),
16520 )
16521 }
16522 }
16523 unsafe extern "system" fn DrawAuto<
16524 Identity: ID3D11DeviceContext_Impl,
16525 const OFFSET: isize,
16526 >(
16527 this: *mut core::ffi::c_void,
16528 ) {
16529 unsafe {
16530 let this: &Identity =
16531 &*((this as *const *const ()).offset(OFFSET) as *const Identity);
16532 ID3D11DeviceContext_Impl::DrawAuto(this)
16533 }
16534 }
16535 unsafe extern "system" fn DrawIndexedInstancedIndirect<
16536 Identity: ID3D11DeviceContext_Impl,
16537 const OFFSET: isize,
16538 >(
16539 this: *mut core::ffi::c_void,
16540 pbufferforargs: *mut core::ffi::c_void,
16541 alignedbyteoffsetforargs: u32,
16542 ) {
16543 unsafe {
16544 let this: &Identity =
16545 &*((this as *const *const ()).offset(OFFSET) as *const Identity);
16546 ID3D11DeviceContext_Impl::DrawIndexedInstancedIndirect(
16547 this,
16548 core::mem::transmute_copy(&pbufferforargs),
16549 core::mem::transmute_copy(&alignedbyteoffsetforargs),
16550 )
16551 }
16552 }
16553 unsafe extern "system" fn DrawInstancedIndirect<
16554 Identity: ID3D11DeviceContext_Impl,
16555 const OFFSET: isize,
16556 >(
16557 this: *mut core::ffi::c_void,
16558 pbufferforargs: *mut core::ffi::c_void,
16559 alignedbyteoffsetforargs: u32,
16560 ) {
16561 unsafe {
16562 let this: &Identity =
16563 &*((this as *const *const ()).offset(OFFSET) as *const Identity);
16564 ID3D11DeviceContext_Impl::DrawInstancedIndirect(
16565 this,
16566 core::mem::transmute_copy(&pbufferforargs),
16567 core::mem::transmute_copy(&alignedbyteoffsetforargs),
16568 )
16569 }
16570 }
16571 unsafe extern "system" fn Dispatch<
16572 Identity: ID3D11DeviceContext_Impl,
16573 const OFFSET: isize,
16574 >(
16575 this: *mut core::ffi::c_void,
16576 threadgroupcountx: u32,
16577 threadgroupcounty: u32,
16578 threadgroupcountz: u32,
16579 ) {
16580 unsafe {
16581 let this: &Identity =
16582 &*((this as *const *const ()).offset(OFFSET) as *const Identity);
16583 ID3D11DeviceContext_Impl::Dispatch(
16584 this,
16585 core::mem::transmute_copy(&threadgroupcountx),
16586 core::mem::transmute_copy(&threadgroupcounty),
16587 core::mem::transmute_copy(&threadgroupcountz),
16588 )
16589 }
16590 }
16591 unsafe extern "system" fn DispatchIndirect<
16592 Identity: ID3D11DeviceContext_Impl,
16593 const OFFSET: isize,
16594 >(
16595 this: *mut core::ffi::c_void,
16596 pbufferforargs: *mut core::ffi::c_void,
16597 alignedbyteoffsetforargs: u32,
16598 ) {
16599 unsafe {
16600 let this: &Identity =
16601 &*((this as *const *const ()).offset(OFFSET) as *const Identity);
16602 ID3D11DeviceContext_Impl::DispatchIndirect(
16603 this,
16604 core::mem::transmute_copy(&pbufferforargs),
16605 core::mem::transmute_copy(&alignedbyteoffsetforargs),
16606 )
16607 }
16608 }
16609 unsafe extern "system" fn RSSetState<
16610 Identity: ID3D11DeviceContext_Impl,
16611 const OFFSET: isize,
16612 >(
16613 this: *mut core::ffi::c_void,
16614 prasterizerstate: *mut core::ffi::c_void,
16615 ) {
16616 unsafe {
16617 let this: &Identity =
16618 &*((this as *const *const ()).offset(OFFSET) as *const Identity);
16619 ID3D11DeviceContext_Impl::RSSetState(
16620 this,
16621 core::mem::transmute_copy(&prasterizerstate),
16622 )
16623 }
16624 }
16625 unsafe extern "system" fn RSSetViewports<
16626 Identity: ID3D11DeviceContext_Impl,
16627 const OFFSET: isize,
16628 >(
16629 this: *mut core::ffi::c_void,
16630 numviewports: u32,
16631 pviewports: *const D3D11_VIEWPORT,
16632 ) {
16633 unsafe {
16634 let this: &Identity =
16635 &*((this as *const *const ()).offset(OFFSET) as *const Identity);
16636 ID3D11DeviceContext_Impl::RSSetViewports(
16637 this,
16638 core::mem::transmute_copy(&numviewports),
16639 core::mem::transmute_copy(&pviewports),
16640 )
16641 }
16642 }
16643 unsafe extern "system" fn RSSetScissorRects<
16644 Identity: ID3D11DeviceContext_Impl,
16645 const OFFSET: isize,
16646 >(
16647 this: *mut core::ffi::c_void,
16648 numrects: u32,
16649 prects: *const crate::Foundation::RECT,
16650 ) {
16651 unsafe {
16652 let this: &Identity =
16653 &*((this as *const *const ()).offset(OFFSET) as *const Identity);
16654 ID3D11DeviceContext_Impl::RSSetScissorRects(
16655 this,
16656 core::mem::transmute_copy(&numrects),
16657 core::mem::transmute_copy(&prects),
16658 )
16659 }
16660 }
16661 unsafe extern "system" fn CopySubresourceRegion<
16662 Identity: ID3D11DeviceContext_Impl,
16663 const OFFSET: isize,
16664 >(
16665 this: *mut core::ffi::c_void,
16666 pdstresource: *mut core::ffi::c_void,
16667 dstsubresource: u32,
16668 dstx: u32,
16669 dsty: u32,
16670 dstz: u32,
16671 psrcresource: *mut core::ffi::c_void,
16672 srcsubresource: u32,
16673 psrcbox: *const D3D11_BOX,
16674 ) {
16675 unsafe {
16676 let this: &Identity =
16677 &*((this as *const *const ()).offset(OFFSET) as *const Identity);
16678 ID3D11DeviceContext_Impl::CopySubresourceRegion(
16679 this,
16680 core::mem::transmute_copy(&pdstresource),
16681 core::mem::transmute_copy(&dstsubresource),
16682 core::mem::transmute_copy(&dstx),
16683 core::mem::transmute_copy(&dsty),
16684 core::mem::transmute_copy(&dstz),
16685 core::mem::transmute_copy(&psrcresource),
16686 core::mem::transmute_copy(&srcsubresource),
16687 core::mem::transmute_copy(&psrcbox),
16688 )
16689 }
16690 }
16691 unsafe extern "system" fn CopyResource<
16692 Identity: ID3D11DeviceContext_Impl,
16693 const OFFSET: isize,
16694 >(
16695 this: *mut core::ffi::c_void,
16696 pdstresource: *mut core::ffi::c_void,
16697 psrcresource: *mut core::ffi::c_void,
16698 ) {
16699 unsafe {
16700 let this: &Identity =
16701 &*((this as *const *const ()).offset(OFFSET) as *const Identity);
16702 ID3D11DeviceContext_Impl::CopyResource(
16703 this,
16704 core::mem::transmute_copy(&pdstresource),
16705 core::mem::transmute_copy(&psrcresource),
16706 )
16707 }
16708 }
16709 unsafe extern "system" fn UpdateSubresource<
16710 Identity: ID3D11DeviceContext_Impl,
16711 const OFFSET: isize,
16712 >(
16713 this: *mut core::ffi::c_void,
16714 pdstresource: *mut core::ffi::c_void,
16715 dstsubresource: u32,
16716 pdstbox: *const D3D11_BOX,
16717 psrcdata: *const core::ffi::c_void,
16718 srcrowpitch: u32,
16719 srcdepthpitch: u32,
16720 ) {
16721 unsafe {
16722 let this: &Identity =
16723 &*((this as *const *const ()).offset(OFFSET) as *const Identity);
16724 ID3D11DeviceContext_Impl::UpdateSubresource(
16725 this,
16726 core::mem::transmute_copy(&pdstresource),
16727 core::mem::transmute_copy(&dstsubresource),
16728 core::mem::transmute_copy(&pdstbox),
16729 core::mem::transmute_copy(&psrcdata),
16730 core::mem::transmute_copy(&srcrowpitch),
16731 core::mem::transmute_copy(&srcdepthpitch),
16732 )
16733 }
16734 }
16735 unsafe extern "system" fn CopyStructureCount<
16736 Identity: ID3D11DeviceContext_Impl,
16737 const OFFSET: isize,
16738 >(
16739 this: *mut core::ffi::c_void,
16740 pdstbuffer: *mut core::ffi::c_void,
16741 dstalignedbyteoffset: u32,
16742 psrcview: *mut core::ffi::c_void,
16743 ) {
16744 unsafe {
16745 let this: &Identity =
16746 &*((this as *const *const ()).offset(OFFSET) as *const Identity);
16747 ID3D11DeviceContext_Impl::CopyStructureCount(
16748 this,
16749 core::mem::transmute_copy(&pdstbuffer),
16750 core::mem::transmute_copy(&dstalignedbyteoffset),
16751 core::mem::transmute_copy(&psrcview),
16752 )
16753 }
16754 }
16755 unsafe extern "system" fn ClearRenderTargetView<
16756 Identity: ID3D11DeviceContext_Impl,
16757 const OFFSET: isize,
16758 >(
16759 this: *mut core::ffi::c_void,
16760 prendertargetview: *mut core::ffi::c_void,
16761 colorrgba: *const f32,
16762 ) {
16763 unsafe {
16764 let this: &Identity =
16765 &*((this as *const *const ()).offset(OFFSET) as *const Identity);
16766 ID3D11DeviceContext_Impl::ClearRenderTargetView(
16767 this,
16768 core::mem::transmute_copy(&prendertargetview),
16769 core::mem::transmute_copy(&colorrgba),
16770 )
16771 }
16772 }
16773 unsafe extern "system" fn ClearUnorderedAccessViewUint<
16774 Identity: ID3D11DeviceContext_Impl,
16775 const OFFSET: isize,
16776 >(
16777 this: *mut core::ffi::c_void,
16778 punorderedaccessview: *mut core::ffi::c_void,
16779 values: *const u32,
16780 ) {
16781 unsafe {
16782 let this: &Identity =
16783 &*((this as *const *const ()).offset(OFFSET) as *const Identity);
16784 ID3D11DeviceContext_Impl::ClearUnorderedAccessViewUint(
16785 this,
16786 core::mem::transmute_copy(&punorderedaccessview),
16787 core::mem::transmute_copy(&values),
16788 )
16789 }
16790 }
16791 unsafe extern "system" fn ClearUnorderedAccessViewFloat<
16792 Identity: ID3D11DeviceContext_Impl,
16793 const OFFSET: isize,
16794 >(
16795 this: *mut core::ffi::c_void,
16796 punorderedaccessview: *mut core::ffi::c_void,
16797 values: *const f32,
16798 ) {
16799 unsafe {
16800 let this: &Identity =
16801 &*((this as *const *const ()).offset(OFFSET) as *const Identity);
16802 ID3D11DeviceContext_Impl::ClearUnorderedAccessViewFloat(
16803 this,
16804 core::mem::transmute_copy(&punorderedaccessview),
16805 core::mem::transmute_copy(&values),
16806 )
16807 }
16808 }
16809 unsafe extern "system" fn ClearDepthStencilView<
16810 Identity: ID3D11DeviceContext_Impl,
16811 const OFFSET: isize,
16812 >(
16813 this: *mut core::ffi::c_void,
16814 pdepthstencilview: *mut core::ffi::c_void,
16815 clearflags: u32,
16816 depth: f32,
16817 stencil: u8,
16818 ) {
16819 unsafe {
16820 let this: &Identity =
16821 &*((this as *const *const ()).offset(OFFSET) as *const Identity);
16822 ID3D11DeviceContext_Impl::ClearDepthStencilView(
16823 this,
16824 core::mem::transmute_copy(&pdepthstencilview),
16825 core::mem::transmute_copy(&clearflags),
16826 core::mem::transmute_copy(&depth),
16827 core::mem::transmute_copy(&stencil),
16828 )
16829 }
16830 }
16831 unsafe extern "system" fn GenerateMips<
16832 Identity: ID3D11DeviceContext_Impl,
16833 const OFFSET: isize,
16834 >(
16835 this: *mut core::ffi::c_void,
16836 pshaderresourceview: *mut core::ffi::c_void,
16837 ) {
16838 unsafe {
16839 let this: &Identity =
16840 &*((this as *const *const ()).offset(OFFSET) as *const Identity);
16841 ID3D11DeviceContext_Impl::GenerateMips(
16842 this,
16843 core::mem::transmute_copy(&pshaderresourceview),
16844 )
16845 }
16846 }
16847 unsafe extern "system" fn SetResourceMinLOD<
16848 Identity: ID3D11DeviceContext_Impl,
16849 const OFFSET: isize,
16850 >(
16851 this: *mut core::ffi::c_void,
16852 presource: *mut core::ffi::c_void,
16853 minlod: f32,
16854 ) {
16855 unsafe {
16856 let this: &Identity =
16857 &*((this as *const *const ()).offset(OFFSET) as *const Identity);
16858 ID3D11DeviceContext_Impl::SetResourceMinLOD(
16859 this,
16860 core::mem::transmute_copy(&presource),
16861 core::mem::transmute_copy(&minlod),
16862 )
16863 }
16864 }
16865 unsafe extern "system" fn GetResourceMinLOD<
16866 Identity: ID3D11DeviceContext_Impl,
16867 const OFFSET: isize,
16868 >(
16869 this: *mut core::ffi::c_void,
16870 presource: *mut core::ffi::c_void,
16871 ) -> f32 {
16872 unsafe {
16873 let this: &Identity =
16874 &*((this as *const *const ()).offset(OFFSET) as *const Identity);
16875 ID3D11DeviceContext_Impl::GetResourceMinLOD(
16876 this,
16877 core::mem::transmute_copy(&presource),
16878 )
16879 }
16880 }
16881 unsafe extern "system" fn ResolveSubresource<
16882 Identity: ID3D11DeviceContext_Impl,
16883 const OFFSET: isize,
16884 >(
16885 this: *mut core::ffi::c_void,
16886 pdstresource: *mut core::ffi::c_void,
16887 dstsubresource: u32,
16888 psrcresource: *mut core::ffi::c_void,
16889 srcsubresource: u32,
16890 format: crate::Dxgi::Common::DXGI_FORMAT,
16891 ) {
16892 unsafe {
16893 let this: &Identity =
16894 &*((this as *const *const ()).offset(OFFSET) as *const Identity);
16895 ID3D11DeviceContext_Impl::ResolveSubresource(
16896 this,
16897 core::mem::transmute_copy(&pdstresource),
16898 core::mem::transmute_copy(&dstsubresource),
16899 core::mem::transmute_copy(&psrcresource),
16900 core::mem::transmute_copy(&srcsubresource),
16901 core::mem::transmute_copy(&format),
16902 )
16903 }
16904 }
16905 unsafe extern "system" fn ExecuteCommandList<
16906 Identity: ID3D11DeviceContext_Impl,
16907 const OFFSET: isize,
16908 >(
16909 this: *mut core::ffi::c_void,
16910 pcommandlist: *mut core::ffi::c_void,
16911 restorecontextstate: crate::Foundation::BOOL,
16912 ) {
16913 unsafe {
16914 let this: &Identity =
16915 &*((this as *const *const ()).offset(OFFSET) as *const Identity);
16916 ID3D11DeviceContext_Impl::ExecuteCommandList(
16917 this,
16918 core::mem::transmute_copy(&pcommandlist),
16919 core::mem::transmute_copy(&restorecontextstate),
16920 )
16921 }
16922 }
16923 unsafe extern "system" fn HSSetShaderResources<
16924 Identity: ID3D11DeviceContext_Impl,
16925 const OFFSET: isize,
16926 >(
16927 this: *mut core::ffi::c_void,
16928 startslot: u32,
16929 numviews: u32,
16930 ppshaderresourceviews: *const *mut core::ffi::c_void,
16931 ) {
16932 unsafe {
16933 let this: &Identity =
16934 &*((this as *const *const ()).offset(OFFSET) as *const Identity);
16935 ID3D11DeviceContext_Impl::HSSetShaderResources(
16936 this,
16937 core::mem::transmute_copy(&startslot),
16938 core::mem::transmute_copy(&numviews),
16939 core::mem::transmute_copy(&ppshaderresourceviews),
16940 )
16941 }
16942 }
16943 unsafe extern "system" fn HSSetShader<
16944 Identity: ID3D11DeviceContext_Impl,
16945 const OFFSET: isize,
16946 >(
16947 this: *mut core::ffi::c_void,
16948 phullshader: *mut core::ffi::c_void,
16949 ppclassinstances: *const *mut core::ffi::c_void,
16950 numclassinstances: u32,
16951 ) {
16952 unsafe {
16953 let this: &Identity =
16954 &*((this as *const *const ()).offset(OFFSET) as *const Identity);
16955 ID3D11DeviceContext_Impl::HSSetShader(
16956 this,
16957 core::mem::transmute_copy(&phullshader),
16958 core::mem::transmute_copy(&ppclassinstances),
16959 core::mem::transmute_copy(&numclassinstances),
16960 )
16961 }
16962 }
16963 unsafe extern "system" fn HSSetSamplers<
16964 Identity: ID3D11DeviceContext_Impl,
16965 const OFFSET: isize,
16966 >(
16967 this: *mut core::ffi::c_void,
16968 startslot: u32,
16969 numsamplers: u32,
16970 ppsamplers: *const *mut core::ffi::c_void,
16971 ) {
16972 unsafe {
16973 let this: &Identity =
16974 &*((this as *const *const ()).offset(OFFSET) as *const Identity);
16975 ID3D11DeviceContext_Impl::HSSetSamplers(
16976 this,
16977 core::mem::transmute_copy(&startslot),
16978 core::mem::transmute_copy(&numsamplers),
16979 core::mem::transmute_copy(&ppsamplers),
16980 )
16981 }
16982 }
16983 unsafe extern "system" fn HSSetConstantBuffers<
16984 Identity: ID3D11DeviceContext_Impl,
16985 const OFFSET: isize,
16986 >(
16987 this: *mut core::ffi::c_void,
16988 startslot: u32,
16989 numbuffers: u32,
16990 ppconstantbuffers: *const *mut core::ffi::c_void,
16991 ) {
16992 unsafe {
16993 let this: &Identity =
16994 &*((this as *const *const ()).offset(OFFSET) as *const Identity);
16995 ID3D11DeviceContext_Impl::HSSetConstantBuffers(
16996 this,
16997 core::mem::transmute_copy(&startslot),
16998 core::mem::transmute_copy(&numbuffers),
16999 core::mem::transmute_copy(&ppconstantbuffers),
17000 )
17001 }
17002 }
17003 unsafe extern "system" fn DSSetShaderResources<
17004 Identity: ID3D11DeviceContext_Impl,
17005 const OFFSET: isize,
17006 >(
17007 this: *mut core::ffi::c_void,
17008 startslot: u32,
17009 numviews: u32,
17010 ppshaderresourceviews: *const *mut core::ffi::c_void,
17011 ) {
17012 unsafe {
17013 let this: &Identity =
17014 &*((this as *const *const ()).offset(OFFSET) as *const Identity);
17015 ID3D11DeviceContext_Impl::DSSetShaderResources(
17016 this,
17017 core::mem::transmute_copy(&startslot),
17018 core::mem::transmute_copy(&numviews),
17019 core::mem::transmute_copy(&ppshaderresourceviews),
17020 )
17021 }
17022 }
17023 unsafe extern "system" fn DSSetShader<
17024 Identity: ID3D11DeviceContext_Impl,
17025 const OFFSET: isize,
17026 >(
17027 this: *mut core::ffi::c_void,
17028 pdomainshader: *mut core::ffi::c_void,
17029 ppclassinstances: *const *mut core::ffi::c_void,
17030 numclassinstances: u32,
17031 ) {
17032 unsafe {
17033 let this: &Identity =
17034 &*((this as *const *const ()).offset(OFFSET) as *const Identity);
17035 ID3D11DeviceContext_Impl::DSSetShader(
17036 this,
17037 core::mem::transmute_copy(&pdomainshader),
17038 core::mem::transmute_copy(&ppclassinstances),
17039 core::mem::transmute_copy(&numclassinstances),
17040 )
17041 }
17042 }
17043 unsafe extern "system" fn DSSetSamplers<
17044 Identity: ID3D11DeviceContext_Impl,
17045 const OFFSET: isize,
17046 >(
17047 this: *mut core::ffi::c_void,
17048 startslot: u32,
17049 numsamplers: u32,
17050 ppsamplers: *const *mut core::ffi::c_void,
17051 ) {
17052 unsafe {
17053 let this: &Identity =
17054 &*((this as *const *const ()).offset(OFFSET) as *const Identity);
17055 ID3D11DeviceContext_Impl::DSSetSamplers(
17056 this,
17057 core::mem::transmute_copy(&startslot),
17058 core::mem::transmute_copy(&numsamplers),
17059 core::mem::transmute_copy(&ppsamplers),
17060 )
17061 }
17062 }
17063 unsafe extern "system" fn DSSetConstantBuffers<
17064 Identity: ID3D11DeviceContext_Impl,
17065 const OFFSET: isize,
17066 >(
17067 this: *mut core::ffi::c_void,
17068 startslot: u32,
17069 numbuffers: u32,
17070 ppconstantbuffers: *const *mut core::ffi::c_void,
17071 ) {
17072 unsafe {
17073 let this: &Identity =
17074 &*((this as *const *const ()).offset(OFFSET) as *const Identity);
17075 ID3D11DeviceContext_Impl::DSSetConstantBuffers(
17076 this,
17077 core::mem::transmute_copy(&startslot),
17078 core::mem::transmute_copy(&numbuffers),
17079 core::mem::transmute_copy(&ppconstantbuffers),
17080 )
17081 }
17082 }
17083 unsafe extern "system" fn CSSetShaderResources<
17084 Identity: ID3D11DeviceContext_Impl,
17085 const OFFSET: isize,
17086 >(
17087 this: *mut core::ffi::c_void,
17088 startslot: u32,
17089 numviews: u32,
17090 ppshaderresourceviews: *const *mut core::ffi::c_void,
17091 ) {
17092 unsafe {
17093 let this: &Identity =
17094 &*((this as *const *const ()).offset(OFFSET) as *const Identity);
17095 ID3D11DeviceContext_Impl::CSSetShaderResources(
17096 this,
17097 core::mem::transmute_copy(&startslot),
17098 core::mem::transmute_copy(&numviews),
17099 core::mem::transmute_copy(&ppshaderresourceviews),
17100 )
17101 }
17102 }
17103 unsafe extern "system" fn CSSetUnorderedAccessViews<
17104 Identity: ID3D11DeviceContext_Impl,
17105 const OFFSET: isize,
17106 >(
17107 this: *mut core::ffi::c_void,
17108 startslot: u32,
17109 numuavs: u32,
17110 ppunorderedaccessviews: *const *mut core::ffi::c_void,
17111 puavinitialcounts: *const u32,
17112 ) {
17113 unsafe {
17114 let this: &Identity =
17115 &*((this as *const *const ()).offset(OFFSET) as *const Identity);
17116 ID3D11DeviceContext_Impl::CSSetUnorderedAccessViews(
17117 this,
17118 core::mem::transmute_copy(&startslot),
17119 core::mem::transmute_copy(&numuavs),
17120 core::mem::transmute_copy(&ppunorderedaccessviews),
17121 core::mem::transmute_copy(&puavinitialcounts),
17122 )
17123 }
17124 }
17125 unsafe extern "system" fn CSSetShader<
17126 Identity: ID3D11DeviceContext_Impl,
17127 const OFFSET: isize,
17128 >(
17129 this: *mut core::ffi::c_void,
17130 pcomputeshader: *mut core::ffi::c_void,
17131 ppclassinstances: *const *mut core::ffi::c_void,
17132 numclassinstances: u32,
17133 ) {
17134 unsafe {
17135 let this: &Identity =
17136 &*((this as *const *const ()).offset(OFFSET) as *const Identity);
17137 ID3D11DeviceContext_Impl::CSSetShader(
17138 this,
17139 core::mem::transmute_copy(&pcomputeshader),
17140 core::mem::transmute_copy(&ppclassinstances),
17141 core::mem::transmute_copy(&numclassinstances),
17142 )
17143 }
17144 }
17145 unsafe extern "system" fn CSSetSamplers<
17146 Identity: ID3D11DeviceContext_Impl,
17147 const OFFSET: isize,
17148 >(
17149 this: *mut core::ffi::c_void,
17150 startslot: u32,
17151 numsamplers: u32,
17152 ppsamplers: *const *mut core::ffi::c_void,
17153 ) {
17154 unsafe {
17155 let this: &Identity =
17156 &*((this as *const *const ()).offset(OFFSET) as *const Identity);
17157 ID3D11DeviceContext_Impl::CSSetSamplers(
17158 this,
17159 core::mem::transmute_copy(&startslot),
17160 core::mem::transmute_copy(&numsamplers),
17161 core::mem::transmute_copy(&ppsamplers),
17162 )
17163 }
17164 }
17165 unsafe extern "system" fn CSSetConstantBuffers<
17166 Identity: ID3D11DeviceContext_Impl,
17167 const OFFSET: isize,
17168 >(
17169 this: *mut core::ffi::c_void,
17170 startslot: u32,
17171 numbuffers: u32,
17172 ppconstantbuffers: *const *mut core::ffi::c_void,
17173 ) {
17174 unsafe {
17175 let this: &Identity =
17176 &*((this as *const *const ()).offset(OFFSET) as *const Identity);
17177 ID3D11DeviceContext_Impl::CSSetConstantBuffers(
17178 this,
17179 core::mem::transmute_copy(&startslot),
17180 core::mem::transmute_copy(&numbuffers),
17181 core::mem::transmute_copy(&ppconstantbuffers),
17182 )
17183 }
17184 }
17185 unsafe extern "system" fn VSGetConstantBuffers<
17186 Identity: ID3D11DeviceContext_Impl,
17187 const OFFSET: isize,
17188 >(
17189 this: *mut core::ffi::c_void,
17190 startslot: u32,
17191 numbuffers: u32,
17192 ppconstantbuffers: *mut *mut core::ffi::c_void,
17193 ) {
17194 unsafe {
17195 let this: &Identity =
17196 &*((this as *const *const ()).offset(OFFSET) as *const Identity);
17197 ID3D11DeviceContext_Impl::VSGetConstantBuffers(
17198 this,
17199 core::mem::transmute_copy(&startslot),
17200 core::mem::transmute_copy(&numbuffers),
17201 core::mem::transmute_copy(&ppconstantbuffers),
17202 )
17203 }
17204 }
17205 unsafe extern "system" fn PSGetShaderResources<
17206 Identity: ID3D11DeviceContext_Impl,
17207 const OFFSET: isize,
17208 >(
17209 this: *mut core::ffi::c_void,
17210 startslot: u32,
17211 numviews: u32,
17212 ppshaderresourceviews: *mut *mut core::ffi::c_void,
17213 ) {
17214 unsafe {
17215 let this: &Identity =
17216 &*((this as *const *const ()).offset(OFFSET) as *const Identity);
17217 ID3D11DeviceContext_Impl::PSGetShaderResources(
17218 this,
17219 core::mem::transmute_copy(&startslot),
17220 core::mem::transmute_copy(&numviews),
17221 core::mem::transmute_copy(&ppshaderresourceviews),
17222 )
17223 }
17224 }
17225 unsafe extern "system" fn PSGetShader<
17226 Identity: ID3D11DeviceContext_Impl,
17227 const OFFSET: isize,
17228 >(
17229 this: *mut core::ffi::c_void,
17230 pppixelshader: *mut *mut core::ffi::c_void,
17231 ppclassinstances: *mut *mut core::ffi::c_void,
17232 pnumclassinstances: *mut u32,
17233 ) {
17234 unsafe {
17235 let this: &Identity =
17236 &*((this as *const *const ()).offset(OFFSET) as *const Identity);
17237 ID3D11DeviceContext_Impl::PSGetShader(
17238 this,
17239 core::mem::transmute_copy(&pppixelshader),
17240 core::mem::transmute_copy(&ppclassinstances),
17241 core::mem::transmute_copy(&pnumclassinstances),
17242 )
17243 }
17244 }
17245 unsafe extern "system" fn PSGetSamplers<
17246 Identity: ID3D11DeviceContext_Impl,
17247 const OFFSET: isize,
17248 >(
17249 this: *mut core::ffi::c_void,
17250 startslot: u32,
17251 numsamplers: u32,
17252 ppsamplers: *mut *mut core::ffi::c_void,
17253 ) {
17254 unsafe {
17255 let this: &Identity =
17256 &*((this as *const *const ()).offset(OFFSET) as *const Identity);
17257 ID3D11DeviceContext_Impl::PSGetSamplers(
17258 this,
17259 core::mem::transmute_copy(&startslot),
17260 core::mem::transmute_copy(&numsamplers),
17261 core::mem::transmute_copy(&ppsamplers),
17262 )
17263 }
17264 }
17265 unsafe extern "system" fn VSGetShader<
17266 Identity: ID3D11DeviceContext_Impl,
17267 const OFFSET: isize,
17268 >(
17269 this: *mut core::ffi::c_void,
17270 ppvertexshader: *mut *mut core::ffi::c_void,
17271 ppclassinstances: *mut *mut core::ffi::c_void,
17272 pnumclassinstances: *mut u32,
17273 ) {
17274 unsafe {
17275 let this: &Identity =
17276 &*((this as *const *const ()).offset(OFFSET) as *const Identity);
17277 ID3D11DeviceContext_Impl::VSGetShader(
17278 this,
17279 core::mem::transmute_copy(&ppvertexshader),
17280 core::mem::transmute_copy(&ppclassinstances),
17281 core::mem::transmute_copy(&pnumclassinstances),
17282 )
17283 }
17284 }
17285 unsafe extern "system" fn PSGetConstantBuffers<
17286 Identity: ID3D11DeviceContext_Impl,
17287 const OFFSET: isize,
17288 >(
17289 this: *mut core::ffi::c_void,
17290 startslot: u32,
17291 numbuffers: u32,
17292 ppconstantbuffers: *mut *mut core::ffi::c_void,
17293 ) {
17294 unsafe {
17295 let this: &Identity =
17296 &*((this as *const *const ()).offset(OFFSET) as *const Identity);
17297 ID3D11DeviceContext_Impl::PSGetConstantBuffers(
17298 this,
17299 core::mem::transmute_copy(&startslot),
17300 core::mem::transmute_copy(&numbuffers),
17301 core::mem::transmute_copy(&ppconstantbuffers),
17302 )
17303 }
17304 }
17305 unsafe extern "system" fn IAGetInputLayout<
17306 Identity: ID3D11DeviceContext_Impl,
17307 const OFFSET: isize,
17308 >(
17309 this: *mut core::ffi::c_void,
17310 ppinputlayout: *mut *mut core::ffi::c_void,
17311 ) {
17312 unsafe {
17313 let this: &Identity =
17314 &*((this as *const *const ()).offset(OFFSET) as *const Identity);
17315 ID3D11DeviceContext_Impl::IAGetInputLayout(
17316 this,
17317 core::mem::transmute_copy(&ppinputlayout),
17318 )
17319 }
17320 }
17321 unsafe extern "system" fn IAGetVertexBuffers<
17322 Identity: ID3D11DeviceContext_Impl,
17323 const OFFSET: isize,
17324 >(
17325 this: *mut core::ffi::c_void,
17326 startslot: u32,
17327 numbuffers: u32,
17328 ppvertexbuffers: *mut *mut core::ffi::c_void,
17329 pstrides: *mut u32,
17330 poffsets: *mut u32,
17331 ) {
17332 unsafe {
17333 let this: &Identity =
17334 &*((this as *const *const ()).offset(OFFSET) as *const Identity);
17335 ID3D11DeviceContext_Impl::IAGetVertexBuffers(
17336 this,
17337 core::mem::transmute_copy(&startslot),
17338 core::mem::transmute_copy(&numbuffers),
17339 core::mem::transmute_copy(&ppvertexbuffers),
17340 core::mem::transmute_copy(&pstrides),
17341 core::mem::transmute_copy(&poffsets),
17342 )
17343 }
17344 }
17345 unsafe extern "system" fn IAGetIndexBuffer<
17346 Identity: ID3D11DeviceContext_Impl,
17347 const OFFSET: isize,
17348 >(
17349 this: *mut core::ffi::c_void,
17350 pindexbuffer: *mut *mut core::ffi::c_void,
17351 format: *mut crate::Dxgi::Common::DXGI_FORMAT,
17352 offset: *mut u32,
17353 ) {
17354 unsafe {
17355 let this: &Identity =
17356 &*((this as *const *const ()).offset(OFFSET) as *const Identity);
17357 ID3D11DeviceContext_Impl::IAGetIndexBuffer(
17358 this,
17359 core::mem::transmute_copy(&pindexbuffer),
17360 core::mem::transmute_copy(&format),
17361 core::mem::transmute_copy(&offset),
17362 )
17363 }
17364 }
17365 unsafe extern "system" fn GSGetConstantBuffers<
17366 Identity: ID3D11DeviceContext_Impl,
17367 const OFFSET: isize,
17368 >(
17369 this: *mut core::ffi::c_void,
17370 startslot: u32,
17371 numbuffers: u32,
17372 ppconstantbuffers: *mut *mut core::ffi::c_void,
17373 ) {
17374 unsafe {
17375 let this: &Identity =
17376 &*((this as *const *const ()).offset(OFFSET) as *const Identity);
17377 ID3D11DeviceContext_Impl::GSGetConstantBuffers(
17378 this,
17379 core::mem::transmute_copy(&startslot),
17380 core::mem::transmute_copy(&numbuffers),
17381 core::mem::transmute_copy(&ppconstantbuffers),
17382 )
17383 }
17384 }
17385 unsafe extern "system" fn GSGetShader<
17386 Identity: ID3D11DeviceContext_Impl,
17387 const OFFSET: isize,
17388 >(
17389 this: *mut core::ffi::c_void,
17390 ppgeometryshader: *mut *mut core::ffi::c_void,
17391 ppclassinstances: *mut *mut core::ffi::c_void,
17392 pnumclassinstances: *mut u32,
17393 ) {
17394 unsafe {
17395 let this: &Identity =
17396 &*((this as *const *const ()).offset(OFFSET) as *const Identity);
17397 ID3D11DeviceContext_Impl::GSGetShader(
17398 this,
17399 core::mem::transmute_copy(&ppgeometryshader),
17400 core::mem::transmute_copy(&ppclassinstances),
17401 core::mem::transmute_copy(&pnumclassinstances),
17402 )
17403 }
17404 }
17405 unsafe extern "system" fn IAGetPrimitiveTopology<
17406 Identity: ID3D11DeviceContext_Impl,
17407 const OFFSET: isize,
17408 >(
17409 this: *mut core::ffi::c_void,
17410 ptopology: *mut super::Direct3D::D3D_PRIMITIVE_TOPOLOGY,
17411 ) {
17412 unsafe {
17413 let this: &Identity =
17414 &*((this as *const *const ()).offset(OFFSET) as *const Identity);
17415 ID3D11DeviceContext_Impl::IAGetPrimitiveTopology(
17416 this,
17417 core::mem::transmute_copy(&ptopology),
17418 )
17419 }
17420 }
17421 unsafe extern "system" fn VSGetShaderResources<
17422 Identity: ID3D11DeviceContext_Impl,
17423 const OFFSET: isize,
17424 >(
17425 this: *mut core::ffi::c_void,
17426 startslot: u32,
17427 numviews: u32,
17428 ppshaderresourceviews: *mut *mut core::ffi::c_void,
17429 ) {
17430 unsafe {
17431 let this: &Identity =
17432 &*((this as *const *const ()).offset(OFFSET) as *const Identity);
17433 ID3D11DeviceContext_Impl::VSGetShaderResources(
17434 this,
17435 core::mem::transmute_copy(&startslot),
17436 core::mem::transmute_copy(&numviews),
17437 core::mem::transmute_copy(&ppshaderresourceviews),
17438 )
17439 }
17440 }
17441 unsafe extern "system" fn VSGetSamplers<
17442 Identity: ID3D11DeviceContext_Impl,
17443 const OFFSET: isize,
17444 >(
17445 this: *mut core::ffi::c_void,
17446 startslot: u32,
17447 numsamplers: u32,
17448 ppsamplers: *mut *mut core::ffi::c_void,
17449 ) {
17450 unsafe {
17451 let this: &Identity =
17452 &*((this as *const *const ()).offset(OFFSET) as *const Identity);
17453 ID3D11DeviceContext_Impl::VSGetSamplers(
17454 this,
17455 core::mem::transmute_copy(&startslot),
17456 core::mem::transmute_copy(&numsamplers),
17457 core::mem::transmute_copy(&ppsamplers),
17458 )
17459 }
17460 }
17461 unsafe extern "system" fn GetPredication<
17462 Identity: ID3D11DeviceContext_Impl,
17463 const OFFSET: isize,
17464 >(
17465 this: *mut core::ffi::c_void,
17466 pppredicate: *mut *mut core::ffi::c_void,
17467 ppredicatevalue: *mut crate::Foundation::BOOL,
17468 ) {
17469 unsafe {
17470 let this: &Identity =
17471 &*((this as *const *const ()).offset(OFFSET) as *const Identity);
17472 ID3D11DeviceContext_Impl::GetPredication(
17473 this,
17474 core::mem::transmute_copy(&pppredicate),
17475 core::mem::transmute_copy(&ppredicatevalue),
17476 )
17477 }
17478 }
17479 unsafe extern "system" fn GSGetShaderResources<
17480 Identity: ID3D11DeviceContext_Impl,
17481 const OFFSET: isize,
17482 >(
17483 this: *mut core::ffi::c_void,
17484 startslot: u32,
17485 numviews: u32,
17486 ppshaderresourceviews: *mut *mut core::ffi::c_void,
17487 ) {
17488 unsafe {
17489 let this: &Identity =
17490 &*((this as *const *const ()).offset(OFFSET) as *const Identity);
17491 ID3D11DeviceContext_Impl::GSGetShaderResources(
17492 this,
17493 core::mem::transmute_copy(&startslot),
17494 core::mem::transmute_copy(&numviews),
17495 core::mem::transmute_copy(&ppshaderresourceviews),
17496 )
17497 }
17498 }
17499 unsafe extern "system" fn GSGetSamplers<
17500 Identity: ID3D11DeviceContext_Impl,
17501 const OFFSET: isize,
17502 >(
17503 this: *mut core::ffi::c_void,
17504 startslot: u32,
17505 numsamplers: u32,
17506 ppsamplers: *mut *mut core::ffi::c_void,
17507 ) {
17508 unsafe {
17509 let this: &Identity =
17510 &*((this as *const *const ()).offset(OFFSET) as *const Identity);
17511 ID3D11DeviceContext_Impl::GSGetSamplers(
17512 this,
17513 core::mem::transmute_copy(&startslot),
17514 core::mem::transmute_copy(&numsamplers),
17515 core::mem::transmute_copy(&ppsamplers),
17516 )
17517 }
17518 }
17519 unsafe extern "system" fn OMGetRenderTargets<
17520 Identity: ID3D11DeviceContext_Impl,
17521 const OFFSET: isize,
17522 >(
17523 this: *mut core::ffi::c_void,
17524 numviews: u32,
17525 pprendertargetviews: *mut *mut core::ffi::c_void,
17526 ppdepthstencilview: *mut *mut core::ffi::c_void,
17527 ) {
17528 unsafe {
17529 let this: &Identity =
17530 &*((this as *const *const ()).offset(OFFSET) as *const Identity);
17531 ID3D11DeviceContext_Impl::OMGetRenderTargets(
17532 this,
17533 core::mem::transmute_copy(&numviews),
17534 core::mem::transmute_copy(&pprendertargetviews),
17535 core::mem::transmute_copy(&ppdepthstencilview),
17536 )
17537 }
17538 }
17539 unsafe extern "system" fn OMGetRenderTargetsAndUnorderedAccessViews<
17540 Identity: ID3D11DeviceContext_Impl,
17541 const OFFSET: isize,
17542 >(
17543 this: *mut core::ffi::c_void,
17544 numrtvs: u32,
17545 pprendertargetviews: *mut *mut core::ffi::c_void,
17546 ppdepthstencilview: *mut *mut core::ffi::c_void,
17547 uavstartslot: u32,
17548 numuavs: u32,
17549 ppunorderedaccessviews: *mut *mut core::ffi::c_void,
17550 ) {
17551 unsafe {
17552 let this: &Identity =
17553 &*((this as *const *const ()).offset(OFFSET) as *const Identity);
17554 ID3D11DeviceContext_Impl::OMGetRenderTargetsAndUnorderedAccessViews(
17555 this,
17556 core::mem::transmute_copy(&numrtvs),
17557 core::mem::transmute_copy(&pprendertargetviews),
17558 core::mem::transmute_copy(&ppdepthstencilview),
17559 core::mem::transmute_copy(&uavstartslot),
17560 core::mem::transmute_copy(&numuavs),
17561 core::mem::transmute_copy(&ppunorderedaccessviews),
17562 )
17563 }
17564 }
17565 unsafe extern "system" fn OMGetBlendState<
17566 Identity: ID3D11DeviceContext_Impl,
17567 const OFFSET: isize,
17568 >(
17569 this: *mut core::ffi::c_void,
17570 ppblendstate: *mut *mut core::ffi::c_void,
17571 blendfactor: *mut f32,
17572 psamplemask: *mut u32,
17573 ) {
17574 unsafe {
17575 let this: &Identity =
17576 &*((this as *const *const ()).offset(OFFSET) as *const Identity);
17577 ID3D11DeviceContext_Impl::OMGetBlendState(
17578 this,
17579 core::mem::transmute_copy(&ppblendstate),
17580 core::mem::transmute_copy(&blendfactor),
17581 core::mem::transmute_copy(&psamplemask),
17582 )
17583 }
17584 }
17585 unsafe extern "system" fn OMGetDepthStencilState<
17586 Identity: ID3D11DeviceContext_Impl,
17587 const OFFSET: isize,
17588 >(
17589 this: *mut core::ffi::c_void,
17590 ppdepthstencilstate: *mut *mut core::ffi::c_void,
17591 pstencilref: *mut u32,
17592 ) {
17593 unsafe {
17594 let this: &Identity =
17595 &*((this as *const *const ()).offset(OFFSET) as *const Identity);
17596 ID3D11DeviceContext_Impl::OMGetDepthStencilState(
17597 this,
17598 core::mem::transmute_copy(&ppdepthstencilstate),
17599 core::mem::transmute_copy(&pstencilref),
17600 )
17601 }
17602 }
17603 unsafe extern "system" fn SOGetTargets<
17604 Identity: ID3D11DeviceContext_Impl,
17605 const OFFSET: isize,
17606 >(
17607 this: *mut core::ffi::c_void,
17608 numbuffers: u32,
17609 ppsotargets: *mut *mut core::ffi::c_void,
17610 ) {
17611 unsafe {
17612 let this: &Identity =
17613 &*((this as *const *const ()).offset(OFFSET) as *const Identity);
17614 ID3D11DeviceContext_Impl::SOGetTargets(
17615 this,
17616 core::mem::transmute_copy(&numbuffers),
17617 core::mem::transmute_copy(&ppsotargets),
17618 )
17619 }
17620 }
17621 unsafe extern "system" fn RSGetState<
17622 Identity: ID3D11DeviceContext_Impl,
17623 const OFFSET: isize,
17624 >(
17625 this: *mut core::ffi::c_void,
17626 pprasterizerstate: *mut *mut core::ffi::c_void,
17627 ) {
17628 unsafe {
17629 let this: &Identity =
17630 &*((this as *const *const ()).offset(OFFSET) as *const Identity);
17631 ID3D11DeviceContext_Impl::RSGetState(
17632 this,
17633 core::mem::transmute_copy(&pprasterizerstate),
17634 )
17635 }
17636 }
17637 unsafe extern "system" fn RSGetViewports<
17638 Identity: ID3D11DeviceContext_Impl,
17639 const OFFSET: isize,
17640 >(
17641 this: *mut core::ffi::c_void,
17642 pnumviewports: *mut u32,
17643 pviewports: *mut D3D11_VIEWPORT,
17644 ) {
17645 unsafe {
17646 let this: &Identity =
17647 &*((this as *const *const ()).offset(OFFSET) as *const Identity);
17648 ID3D11DeviceContext_Impl::RSGetViewports(
17649 this,
17650 core::mem::transmute_copy(&pnumviewports),
17651 core::mem::transmute_copy(&pviewports),
17652 )
17653 }
17654 }
17655 unsafe extern "system" fn RSGetScissorRects<
17656 Identity: ID3D11DeviceContext_Impl,
17657 const OFFSET: isize,
17658 >(
17659 this: *mut core::ffi::c_void,
17660 pnumrects: *mut u32,
17661 prects: *mut crate::Foundation::RECT,
17662 ) {
17663 unsafe {
17664 let this: &Identity =
17665 &*((this as *const *const ()).offset(OFFSET) as *const Identity);
17666 ID3D11DeviceContext_Impl::RSGetScissorRects(
17667 this,
17668 core::mem::transmute_copy(&pnumrects),
17669 core::mem::transmute_copy(&prects),
17670 )
17671 }
17672 }
17673 unsafe extern "system" fn HSGetShaderResources<
17674 Identity: ID3D11DeviceContext_Impl,
17675 const OFFSET: isize,
17676 >(
17677 this: *mut core::ffi::c_void,
17678 startslot: u32,
17679 numviews: u32,
17680 ppshaderresourceviews: *mut *mut core::ffi::c_void,
17681 ) {
17682 unsafe {
17683 let this: &Identity =
17684 &*((this as *const *const ()).offset(OFFSET) as *const Identity);
17685 ID3D11DeviceContext_Impl::HSGetShaderResources(
17686 this,
17687 core::mem::transmute_copy(&startslot),
17688 core::mem::transmute_copy(&numviews),
17689 core::mem::transmute_copy(&ppshaderresourceviews),
17690 )
17691 }
17692 }
17693 unsafe extern "system" fn HSGetShader<
17694 Identity: ID3D11DeviceContext_Impl,
17695 const OFFSET: isize,
17696 >(
17697 this: *mut core::ffi::c_void,
17698 pphullshader: *mut *mut core::ffi::c_void,
17699 ppclassinstances: *mut *mut core::ffi::c_void,
17700 pnumclassinstances: *mut u32,
17701 ) {
17702 unsafe {
17703 let this: &Identity =
17704 &*((this as *const *const ()).offset(OFFSET) as *const Identity);
17705 ID3D11DeviceContext_Impl::HSGetShader(
17706 this,
17707 core::mem::transmute_copy(&pphullshader),
17708 core::mem::transmute_copy(&ppclassinstances),
17709 core::mem::transmute_copy(&pnumclassinstances),
17710 )
17711 }
17712 }
17713 unsafe extern "system" fn HSGetSamplers<
17714 Identity: ID3D11DeviceContext_Impl,
17715 const OFFSET: isize,
17716 >(
17717 this: *mut core::ffi::c_void,
17718 startslot: u32,
17719 numsamplers: u32,
17720 ppsamplers: *mut *mut core::ffi::c_void,
17721 ) {
17722 unsafe {
17723 let this: &Identity =
17724 &*((this as *const *const ()).offset(OFFSET) as *const Identity);
17725 ID3D11DeviceContext_Impl::HSGetSamplers(
17726 this,
17727 core::mem::transmute_copy(&startslot),
17728 core::mem::transmute_copy(&numsamplers),
17729 core::mem::transmute_copy(&ppsamplers),
17730 )
17731 }
17732 }
17733 unsafe extern "system" fn HSGetConstantBuffers<
17734 Identity: ID3D11DeviceContext_Impl,
17735 const OFFSET: isize,
17736 >(
17737 this: *mut core::ffi::c_void,
17738 startslot: u32,
17739 numbuffers: u32,
17740 ppconstantbuffers: *mut *mut core::ffi::c_void,
17741 ) {
17742 unsafe {
17743 let this: &Identity =
17744 &*((this as *const *const ()).offset(OFFSET) as *const Identity);
17745 ID3D11DeviceContext_Impl::HSGetConstantBuffers(
17746 this,
17747 core::mem::transmute_copy(&startslot),
17748 core::mem::transmute_copy(&numbuffers),
17749 core::mem::transmute_copy(&ppconstantbuffers),
17750 )
17751 }
17752 }
17753 unsafe extern "system" fn DSGetShaderResources<
17754 Identity: ID3D11DeviceContext_Impl,
17755 const OFFSET: isize,
17756 >(
17757 this: *mut core::ffi::c_void,
17758 startslot: u32,
17759 numviews: u32,
17760 ppshaderresourceviews: *mut *mut core::ffi::c_void,
17761 ) {
17762 unsafe {
17763 let this: &Identity =
17764 &*((this as *const *const ()).offset(OFFSET) as *const Identity);
17765 ID3D11DeviceContext_Impl::DSGetShaderResources(
17766 this,
17767 core::mem::transmute_copy(&startslot),
17768 core::mem::transmute_copy(&numviews),
17769 core::mem::transmute_copy(&ppshaderresourceviews),
17770 )
17771 }
17772 }
17773 unsafe extern "system" fn DSGetShader<
17774 Identity: ID3D11DeviceContext_Impl,
17775 const OFFSET: isize,
17776 >(
17777 this: *mut core::ffi::c_void,
17778 ppdomainshader: *mut *mut core::ffi::c_void,
17779 ppclassinstances: *mut *mut core::ffi::c_void,
17780 pnumclassinstances: *mut u32,
17781 ) {
17782 unsafe {
17783 let this: &Identity =
17784 &*((this as *const *const ()).offset(OFFSET) as *const Identity);
17785 ID3D11DeviceContext_Impl::DSGetShader(
17786 this,
17787 core::mem::transmute_copy(&ppdomainshader),
17788 core::mem::transmute_copy(&ppclassinstances),
17789 core::mem::transmute_copy(&pnumclassinstances),
17790 )
17791 }
17792 }
17793 unsafe extern "system" fn DSGetSamplers<
17794 Identity: ID3D11DeviceContext_Impl,
17795 const OFFSET: isize,
17796 >(
17797 this: *mut core::ffi::c_void,
17798 startslot: u32,
17799 numsamplers: u32,
17800 ppsamplers: *mut *mut core::ffi::c_void,
17801 ) {
17802 unsafe {
17803 let this: &Identity =
17804 &*((this as *const *const ()).offset(OFFSET) as *const Identity);
17805 ID3D11DeviceContext_Impl::DSGetSamplers(
17806 this,
17807 core::mem::transmute_copy(&startslot),
17808 core::mem::transmute_copy(&numsamplers),
17809 core::mem::transmute_copy(&ppsamplers),
17810 )
17811 }
17812 }
17813 unsafe extern "system" fn DSGetConstantBuffers<
17814 Identity: ID3D11DeviceContext_Impl,
17815 const OFFSET: isize,
17816 >(
17817 this: *mut core::ffi::c_void,
17818 startslot: u32,
17819 numbuffers: u32,
17820 ppconstantbuffers: *mut *mut core::ffi::c_void,
17821 ) {
17822 unsafe {
17823 let this: &Identity =
17824 &*((this as *const *const ()).offset(OFFSET) as *const Identity);
17825 ID3D11DeviceContext_Impl::DSGetConstantBuffers(
17826 this,
17827 core::mem::transmute_copy(&startslot),
17828 core::mem::transmute_copy(&numbuffers),
17829 core::mem::transmute_copy(&ppconstantbuffers),
17830 )
17831 }
17832 }
17833 unsafe extern "system" fn CSGetShaderResources<
17834 Identity: ID3D11DeviceContext_Impl,
17835 const OFFSET: isize,
17836 >(
17837 this: *mut core::ffi::c_void,
17838 startslot: u32,
17839 numviews: u32,
17840 ppshaderresourceviews: *mut *mut core::ffi::c_void,
17841 ) {
17842 unsafe {
17843 let this: &Identity =
17844 &*((this as *const *const ()).offset(OFFSET) as *const Identity);
17845 ID3D11DeviceContext_Impl::CSGetShaderResources(
17846 this,
17847 core::mem::transmute_copy(&startslot),
17848 core::mem::transmute_copy(&numviews),
17849 core::mem::transmute_copy(&ppshaderresourceviews),
17850 )
17851 }
17852 }
17853 unsafe extern "system" fn CSGetUnorderedAccessViews<
17854 Identity: ID3D11DeviceContext_Impl,
17855 const OFFSET: isize,
17856 >(
17857 this: *mut core::ffi::c_void,
17858 startslot: u32,
17859 numuavs: u32,
17860 ppunorderedaccessviews: *mut *mut core::ffi::c_void,
17861 ) {
17862 unsafe {
17863 let this: &Identity =
17864 &*((this as *const *const ()).offset(OFFSET) as *const Identity);
17865 ID3D11DeviceContext_Impl::CSGetUnorderedAccessViews(
17866 this,
17867 core::mem::transmute_copy(&startslot),
17868 core::mem::transmute_copy(&numuavs),
17869 core::mem::transmute_copy(&ppunorderedaccessviews),
17870 )
17871 }
17872 }
17873 unsafe extern "system" fn CSGetShader<
17874 Identity: ID3D11DeviceContext_Impl,
17875 const OFFSET: isize,
17876 >(
17877 this: *mut core::ffi::c_void,
17878 ppcomputeshader: *mut *mut core::ffi::c_void,
17879 ppclassinstances: *mut *mut core::ffi::c_void,
17880 pnumclassinstances: *mut u32,
17881 ) {
17882 unsafe {
17883 let this: &Identity =
17884 &*((this as *const *const ()).offset(OFFSET) as *const Identity);
17885 ID3D11DeviceContext_Impl::CSGetShader(
17886 this,
17887 core::mem::transmute_copy(&ppcomputeshader),
17888 core::mem::transmute_copy(&ppclassinstances),
17889 core::mem::transmute_copy(&pnumclassinstances),
17890 )
17891 }
17892 }
17893 unsafe extern "system" fn CSGetSamplers<
17894 Identity: ID3D11DeviceContext_Impl,
17895 const OFFSET: isize,
17896 >(
17897 this: *mut core::ffi::c_void,
17898 startslot: u32,
17899 numsamplers: u32,
17900 ppsamplers: *mut *mut core::ffi::c_void,
17901 ) {
17902 unsafe {
17903 let this: &Identity =
17904 &*((this as *const *const ()).offset(OFFSET) as *const Identity);
17905 ID3D11DeviceContext_Impl::CSGetSamplers(
17906 this,
17907 core::mem::transmute_copy(&startslot),
17908 core::mem::transmute_copy(&numsamplers),
17909 core::mem::transmute_copy(&ppsamplers),
17910 )
17911 }
17912 }
17913 unsafe extern "system" fn CSGetConstantBuffers<
17914 Identity: ID3D11DeviceContext_Impl,
17915 const OFFSET: isize,
17916 >(
17917 this: *mut core::ffi::c_void,
17918 startslot: u32,
17919 numbuffers: u32,
17920 ppconstantbuffers: *mut *mut core::ffi::c_void,
17921 ) {
17922 unsafe {
17923 let this: &Identity =
17924 &*((this as *const *const ()).offset(OFFSET) as *const Identity);
17925 ID3D11DeviceContext_Impl::CSGetConstantBuffers(
17926 this,
17927 core::mem::transmute_copy(&startslot),
17928 core::mem::transmute_copy(&numbuffers),
17929 core::mem::transmute_copy(&ppconstantbuffers),
17930 )
17931 }
17932 }
17933 unsafe extern "system" fn ClearState<
17934 Identity: ID3D11DeviceContext_Impl,
17935 const OFFSET: isize,
17936 >(
17937 this: *mut core::ffi::c_void,
17938 ) {
17939 unsafe {
17940 let this: &Identity =
17941 &*((this as *const *const ()).offset(OFFSET) as *const Identity);
17942 ID3D11DeviceContext_Impl::ClearState(this)
17943 }
17944 }
17945 unsafe extern "system" fn Flush<Identity: ID3D11DeviceContext_Impl, const OFFSET: isize>(
17946 this: *mut core::ffi::c_void,
17947 ) {
17948 unsafe {
17949 let this: &Identity =
17950 &*((this as *const *const ()).offset(OFFSET) as *const Identity);
17951 ID3D11DeviceContext_Impl::Flush(this)
17952 }
17953 }
17954 unsafe extern "system" fn GetType<
17955 Identity: ID3D11DeviceContext_Impl,
17956 const OFFSET: isize,
17957 >(
17958 this: *mut core::ffi::c_void,
17959 ) -> D3D11_DEVICE_CONTEXT_TYPE {
17960 unsafe {
17961 let this: &Identity =
17962 &*((this as *const *const ()).offset(OFFSET) as *const Identity);
17963 ID3D11DeviceContext_Impl::GetType(this)
17964 }
17965 }
17966 unsafe extern "system" fn GetContextFlags<
17967 Identity: ID3D11DeviceContext_Impl,
17968 const OFFSET: isize,
17969 >(
17970 this: *mut core::ffi::c_void,
17971 ) -> u32 {
17972 unsafe {
17973 let this: &Identity =
17974 &*((this as *const *const ()).offset(OFFSET) as *const Identity);
17975 ID3D11DeviceContext_Impl::GetContextFlags(this)
17976 }
17977 }
17978 unsafe extern "system" fn FinishCommandList<
17979 Identity: ID3D11DeviceContext_Impl,
17980 const OFFSET: isize,
17981 >(
17982 this: *mut core::ffi::c_void,
17983 restoredeferredcontextstate: crate::Foundation::BOOL,
17984 ppcommandlist: *mut *mut core::ffi::c_void,
17985 ) -> windows_core::HRESULT {
17986 unsafe {
17987 let this: &Identity =
17988 &*((this as *const *const ()).offset(OFFSET) as *const Identity);
17989 ID3D11DeviceContext_Impl::FinishCommandList(
17990 this,
17991 core::mem::transmute_copy(&restoredeferredcontextstate),
17992 core::mem::transmute_copy(&ppcommandlist),
17993 )
17994 .into()
17995 }
17996 }
17997 Self {
17998 base__: ID3D11DeviceChild_Vtbl::new::<Identity, OFFSET>(),
17999 VSSetConstantBuffers: VSSetConstantBuffers::<Identity, OFFSET>,
18000 PSSetShaderResources: PSSetShaderResources::<Identity, OFFSET>,
18001 PSSetShader: PSSetShader::<Identity, OFFSET>,
18002 PSSetSamplers: PSSetSamplers::<Identity, OFFSET>,
18003 VSSetShader: VSSetShader::<Identity, OFFSET>,
18004 DrawIndexed: DrawIndexed::<Identity, OFFSET>,
18005 Draw: Draw::<Identity, OFFSET>,
18006 Map: Map::<Identity, OFFSET>,
18007 Unmap: Unmap::<Identity, OFFSET>,
18008 PSSetConstantBuffers: PSSetConstantBuffers::<Identity, OFFSET>,
18009 IASetInputLayout: IASetInputLayout::<Identity, OFFSET>,
18010 IASetVertexBuffers: IASetVertexBuffers::<Identity, OFFSET>,
18011 IASetIndexBuffer: IASetIndexBuffer::<Identity, OFFSET>,
18012 DrawIndexedInstanced: DrawIndexedInstanced::<Identity, OFFSET>,
18013 DrawInstanced: DrawInstanced::<Identity, OFFSET>,
18014 GSSetConstantBuffers: GSSetConstantBuffers::<Identity, OFFSET>,
18015 GSSetShader: GSSetShader::<Identity, OFFSET>,
18016 IASetPrimitiveTopology: IASetPrimitiveTopology::<Identity, OFFSET>,
18017 VSSetShaderResources: VSSetShaderResources::<Identity, OFFSET>,
18018 VSSetSamplers: VSSetSamplers::<Identity, OFFSET>,
18019 Begin: Begin::<Identity, OFFSET>,
18020 End: End::<Identity, OFFSET>,
18021 GetData: GetData::<Identity, OFFSET>,
18022 SetPredication: SetPredication::<Identity, OFFSET>,
18023 GSSetShaderResources: GSSetShaderResources::<Identity, OFFSET>,
18024 GSSetSamplers: GSSetSamplers::<Identity, OFFSET>,
18025 OMSetRenderTargets: OMSetRenderTargets::<Identity, OFFSET>,
18026 OMSetRenderTargetsAndUnorderedAccessViews: OMSetRenderTargetsAndUnorderedAccessViews::<
18027 Identity,
18028 OFFSET,
18029 >,
18030 OMSetBlendState: OMSetBlendState::<Identity, OFFSET>,
18031 OMSetDepthStencilState: OMSetDepthStencilState::<Identity, OFFSET>,
18032 SOSetTargets: SOSetTargets::<Identity, OFFSET>,
18033 DrawAuto: DrawAuto::<Identity, OFFSET>,
18034 DrawIndexedInstancedIndirect: DrawIndexedInstancedIndirect::<Identity, OFFSET>,
18035 DrawInstancedIndirect: DrawInstancedIndirect::<Identity, OFFSET>,
18036 Dispatch: Dispatch::<Identity, OFFSET>,
18037 DispatchIndirect: DispatchIndirect::<Identity, OFFSET>,
18038 RSSetState: RSSetState::<Identity, OFFSET>,
18039 RSSetViewports: RSSetViewports::<Identity, OFFSET>,
18040 RSSetScissorRects: RSSetScissorRects::<Identity, OFFSET>,
18041 CopySubresourceRegion: CopySubresourceRegion::<Identity, OFFSET>,
18042 CopyResource: CopyResource::<Identity, OFFSET>,
18043 UpdateSubresource: UpdateSubresource::<Identity, OFFSET>,
18044 CopyStructureCount: CopyStructureCount::<Identity, OFFSET>,
18045 ClearRenderTargetView: ClearRenderTargetView::<Identity, OFFSET>,
18046 ClearUnorderedAccessViewUint: ClearUnorderedAccessViewUint::<Identity, OFFSET>,
18047 ClearUnorderedAccessViewFloat: ClearUnorderedAccessViewFloat::<Identity, OFFSET>,
18048 ClearDepthStencilView: ClearDepthStencilView::<Identity, OFFSET>,
18049 GenerateMips: GenerateMips::<Identity, OFFSET>,
18050 SetResourceMinLOD: SetResourceMinLOD::<Identity, OFFSET>,
18051 GetResourceMinLOD: GetResourceMinLOD::<Identity, OFFSET>,
18052 ResolveSubresource: ResolveSubresource::<Identity, OFFSET>,
18053 ExecuteCommandList: ExecuteCommandList::<Identity, OFFSET>,
18054 HSSetShaderResources: HSSetShaderResources::<Identity, OFFSET>,
18055 HSSetShader: HSSetShader::<Identity, OFFSET>,
18056 HSSetSamplers: HSSetSamplers::<Identity, OFFSET>,
18057 HSSetConstantBuffers: HSSetConstantBuffers::<Identity, OFFSET>,
18058 DSSetShaderResources: DSSetShaderResources::<Identity, OFFSET>,
18059 DSSetShader: DSSetShader::<Identity, OFFSET>,
18060 DSSetSamplers: DSSetSamplers::<Identity, OFFSET>,
18061 DSSetConstantBuffers: DSSetConstantBuffers::<Identity, OFFSET>,
18062 CSSetShaderResources: CSSetShaderResources::<Identity, OFFSET>,
18063 CSSetUnorderedAccessViews: CSSetUnorderedAccessViews::<Identity, OFFSET>,
18064 CSSetShader: CSSetShader::<Identity, OFFSET>,
18065 CSSetSamplers: CSSetSamplers::<Identity, OFFSET>,
18066 CSSetConstantBuffers: CSSetConstantBuffers::<Identity, OFFSET>,
18067 VSGetConstantBuffers: VSGetConstantBuffers::<Identity, OFFSET>,
18068 PSGetShaderResources: PSGetShaderResources::<Identity, OFFSET>,
18069 PSGetShader: PSGetShader::<Identity, OFFSET>,
18070 PSGetSamplers: PSGetSamplers::<Identity, OFFSET>,
18071 VSGetShader: VSGetShader::<Identity, OFFSET>,
18072 PSGetConstantBuffers: PSGetConstantBuffers::<Identity, OFFSET>,
18073 IAGetInputLayout: IAGetInputLayout::<Identity, OFFSET>,
18074 IAGetVertexBuffers: IAGetVertexBuffers::<Identity, OFFSET>,
18075 IAGetIndexBuffer: IAGetIndexBuffer::<Identity, OFFSET>,
18076 GSGetConstantBuffers: GSGetConstantBuffers::<Identity, OFFSET>,
18077 GSGetShader: GSGetShader::<Identity, OFFSET>,
18078 IAGetPrimitiveTopology: IAGetPrimitiveTopology::<Identity, OFFSET>,
18079 VSGetShaderResources: VSGetShaderResources::<Identity, OFFSET>,
18080 VSGetSamplers: VSGetSamplers::<Identity, OFFSET>,
18081 GetPredication: GetPredication::<Identity, OFFSET>,
18082 GSGetShaderResources: GSGetShaderResources::<Identity, OFFSET>,
18083 GSGetSamplers: GSGetSamplers::<Identity, OFFSET>,
18084 OMGetRenderTargets: OMGetRenderTargets::<Identity, OFFSET>,
18085 OMGetRenderTargetsAndUnorderedAccessViews: OMGetRenderTargetsAndUnorderedAccessViews::<
18086 Identity,
18087 OFFSET,
18088 >,
18089 OMGetBlendState: OMGetBlendState::<Identity, OFFSET>,
18090 OMGetDepthStencilState: OMGetDepthStencilState::<Identity, OFFSET>,
18091 SOGetTargets: SOGetTargets::<Identity, OFFSET>,
18092 RSGetState: RSGetState::<Identity, OFFSET>,
18093 RSGetViewports: RSGetViewports::<Identity, OFFSET>,
18094 RSGetScissorRects: RSGetScissorRects::<Identity, OFFSET>,
18095 HSGetShaderResources: HSGetShaderResources::<Identity, OFFSET>,
18096 HSGetShader: HSGetShader::<Identity, OFFSET>,
18097 HSGetSamplers: HSGetSamplers::<Identity, OFFSET>,
18098 HSGetConstantBuffers: HSGetConstantBuffers::<Identity, OFFSET>,
18099 DSGetShaderResources: DSGetShaderResources::<Identity, OFFSET>,
18100 DSGetShader: DSGetShader::<Identity, OFFSET>,
18101 DSGetSamplers: DSGetSamplers::<Identity, OFFSET>,
18102 DSGetConstantBuffers: DSGetConstantBuffers::<Identity, OFFSET>,
18103 CSGetShaderResources: CSGetShaderResources::<Identity, OFFSET>,
18104 CSGetUnorderedAccessViews: CSGetUnorderedAccessViews::<Identity, OFFSET>,
18105 CSGetShader: CSGetShader::<Identity, OFFSET>,
18106 CSGetSamplers: CSGetSamplers::<Identity, OFFSET>,
18107 CSGetConstantBuffers: CSGetConstantBuffers::<Identity, OFFSET>,
18108 ClearState: ClearState::<Identity, OFFSET>,
18109 Flush: Flush::<Identity, OFFSET>,
18110 GetType: GetType::<Identity, OFFSET>,
18111 GetContextFlags: GetContextFlags::<Identity, OFFSET>,
18112 FinishCommandList: FinishCommandList::<Identity, OFFSET>,
18113 }
18114 }
18115 pub fn matches(iid: &windows_core::GUID) -> bool {
18116 iid == &<ID3D11DeviceContext as windows_core::Interface>::IID
18117 || iid == &<ID3D11DeviceChild as windows_core::Interface>::IID
18118 }
18119}
18120#[cfg(all(
18121 feature = "Win32_Graphics_Direct3D",
18122 feature = "Win32_Graphics_Dxgi_Common"
18123))]
18124impl windows_core::RuntimeName for ID3D11DeviceContext {}
18125#[cfg(all(
18126 feature = "Win32_Graphics_Direct3D",
18127 feature = "Win32_Graphics_Dxgi_Common"
18128))]
18129unsafe impl Send for ID3D11DeviceContext {}
18130#[cfg(all(
18131 feature = "Win32_Graphics_Direct3D",
18132 feature = "Win32_Graphics_Dxgi_Common"
18133))]
18134unsafe impl Sync for ID3D11DeviceContext {}
18135windows_core::imp::define_interface!(
18136 ID3D11DeviceContext1,
18137 ID3D11DeviceContext1_Vtbl,
18138 0xbb2c6faa_b5fb_4082_8e6b_388b8cfa90e1
18139);
18140impl core::ops::Deref for ID3D11DeviceContext1 {
18141 type Target = ID3D11DeviceContext;
18142 fn deref(&self) -> &Self::Target {
18143 unsafe { core::mem::transmute(self) }
18144 }
18145}
18146windows_core::imp::interface_hierarchy!(
18147 ID3D11DeviceContext1,
18148 windows_core::IUnknown,
18149 ID3D11DeviceChild,
18150 ID3D11DeviceContext
18151);
18152impl ID3D11DeviceContext1 {
18153 pub unsafe fn CopySubresourceRegion1<P0, P5>(
18154 &self,
18155 pdstresource: P0,
18156 dstsubresource: u32,
18157 dstx: u32,
18158 dsty: u32,
18159 dstz: u32,
18160 psrcresource: P5,
18161 srcsubresource: u32,
18162 psrcbox: Option<*const D3D11_BOX>,
18163 copyflags: u32,
18164 ) where
18165 P0: windows_core::Param<ID3D11Resource>,
18166 P5: windows_core::Param<ID3D11Resource>,
18167 {
18168 unsafe {
18169 (windows_core::Interface::vtable(self).CopySubresourceRegion1)(
18170 windows_core::Interface::as_raw(self),
18171 pdstresource.param().abi(),
18172 dstsubresource,
18173 dstx,
18174 dsty,
18175 dstz,
18176 psrcresource.param().abi(),
18177 srcsubresource,
18178 core::mem::transmute(psrcbox.unwrap_or(core::mem::zeroed())),
18179 copyflags,
18180 )
18181 }
18182 }
18183 pub unsafe fn UpdateSubresource1<P0>(
18184 &self,
18185 pdstresource: P0,
18186 dstsubresource: u32,
18187 pdstbox: Option<*const D3D11_BOX>,
18188 psrcdata: *const core::ffi::c_void,
18189 srcrowpitch: u32,
18190 srcdepthpitch: u32,
18191 copyflags: u32,
18192 ) where
18193 P0: windows_core::Param<ID3D11Resource>,
18194 {
18195 unsafe {
18196 (windows_core::Interface::vtable(self).UpdateSubresource1)(
18197 windows_core::Interface::as_raw(self),
18198 pdstresource.param().abi(),
18199 dstsubresource,
18200 core::mem::transmute(pdstbox.unwrap_or(core::mem::zeroed())),
18201 psrcdata,
18202 srcrowpitch,
18203 srcdepthpitch,
18204 copyflags,
18205 )
18206 }
18207 }
18208 pub unsafe fn DiscardResource<P0>(&self, presource: P0)
18209 where
18210 P0: windows_core::Param<ID3D11Resource>,
18211 {
18212 unsafe {
18213 (windows_core::Interface::vtable(self).DiscardResource)(
18214 windows_core::Interface::as_raw(self),
18215 presource.param().abi(),
18216 )
18217 }
18218 }
18219 pub unsafe fn DiscardView<P0>(&self, presourceview: P0)
18220 where
18221 P0: windows_core::Param<ID3D11View>,
18222 {
18223 unsafe {
18224 (windows_core::Interface::vtable(self).DiscardView)(
18225 windows_core::Interface::as_raw(self),
18226 presourceview.param().abi(),
18227 )
18228 }
18229 }
18230 pub unsafe fn VSSetConstantBuffers1(
18231 &self,
18232 startslot: u32,
18233 numbuffers: u32,
18234 ppconstantbuffers: Option<*const Option<ID3D11Buffer>>,
18235 pfirstconstant: Option<*const u32>,
18236 pnumconstants: Option<*const u32>,
18237 ) {
18238 unsafe {
18239 (windows_core::Interface::vtable(self).VSSetConstantBuffers1)(
18240 windows_core::Interface::as_raw(self),
18241 startslot,
18242 numbuffers,
18243 core::mem::transmute(ppconstantbuffers.unwrap_or(core::mem::zeroed())),
18244 core::mem::transmute(pfirstconstant.unwrap_or(core::mem::zeroed())),
18245 core::mem::transmute(pnumconstants.unwrap_or(core::mem::zeroed())),
18246 )
18247 }
18248 }
18249 pub unsafe fn HSSetConstantBuffers1(
18250 &self,
18251 startslot: u32,
18252 numbuffers: u32,
18253 ppconstantbuffers: Option<*const Option<ID3D11Buffer>>,
18254 pfirstconstant: Option<*const u32>,
18255 pnumconstants: Option<*const u32>,
18256 ) {
18257 unsafe {
18258 (windows_core::Interface::vtable(self).HSSetConstantBuffers1)(
18259 windows_core::Interface::as_raw(self),
18260 startslot,
18261 numbuffers,
18262 core::mem::transmute(ppconstantbuffers.unwrap_or(core::mem::zeroed())),
18263 core::mem::transmute(pfirstconstant.unwrap_or(core::mem::zeroed())),
18264 core::mem::transmute(pnumconstants.unwrap_or(core::mem::zeroed())),
18265 )
18266 }
18267 }
18268 pub unsafe fn DSSetConstantBuffers1(
18269 &self,
18270 startslot: u32,
18271 numbuffers: u32,
18272 ppconstantbuffers: Option<*const Option<ID3D11Buffer>>,
18273 pfirstconstant: Option<*const u32>,
18274 pnumconstants: Option<*const u32>,
18275 ) {
18276 unsafe {
18277 (windows_core::Interface::vtable(self).DSSetConstantBuffers1)(
18278 windows_core::Interface::as_raw(self),
18279 startslot,
18280 numbuffers,
18281 core::mem::transmute(ppconstantbuffers.unwrap_or(core::mem::zeroed())),
18282 core::mem::transmute(pfirstconstant.unwrap_or(core::mem::zeroed())),
18283 core::mem::transmute(pnumconstants.unwrap_or(core::mem::zeroed())),
18284 )
18285 }
18286 }
18287 pub unsafe fn GSSetConstantBuffers1(
18288 &self,
18289 startslot: u32,
18290 numbuffers: u32,
18291 ppconstantbuffers: Option<*const Option<ID3D11Buffer>>,
18292 pfirstconstant: Option<*const u32>,
18293 pnumconstants: Option<*const u32>,
18294 ) {
18295 unsafe {
18296 (windows_core::Interface::vtable(self).GSSetConstantBuffers1)(
18297 windows_core::Interface::as_raw(self),
18298 startslot,
18299 numbuffers,
18300 core::mem::transmute(ppconstantbuffers.unwrap_or(core::mem::zeroed())),
18301 core::mem::transmute(pfirstconstant.unwrap_or(core::mem::zeroed())),
18302 core::mem::transmute(pnumconstants.unwrap_or(core::mem::zeroed())),
18303 )
18304 }
18305 }
18306 pub unsafe fn PSSetConstantBuffers1(
18307 &self,
18308 startslot: u32,
18309 numbuffers: u32,
18310 ppconstantbuffers: Option<*const Option<ID3D11Buffer>>,
18311 pfirstconstant: Option<*const u32>,
18312 pnumconstants: Option<*const u32>,
18313 ) {
18314 unsafe {
18315 (windows_core::Interface::vtable(self).PSSetConstantBuffers1)(
18316 windows_core::Interface::as_raw(self),
18317 startslot,
18318 numbuffers,
18319 core::mem::transmute(ppconstantbuffers.unwrap_or(core::mem::zeroed())),
18320 core::mem::transmute(pfirstconstant.unwrap_or(core::mem::zeroed())),
18321 core::mem::transmute(pnumconstants.unwrap_or(core::mem::zeroed())),
18322 )
18323 }
18324 }
18325 pub unsafe fn CSSetConstantBuffers1(
18326 &self,
18327 startslot: u32,
18328 numbuffers: u32,
18329 ppconstantbuffers: Option<*const Option<ID3D11Buffer>>,
18330 pfirstconstant: Option<*const u32>,
18331 pnumconstants: Option<*const u32>,
18332 ) {
18333 unsafe {
18334 (windows_core::Interface::vtable(self).CSSetConstantBuffers1)(
18335 windows_core::Interface::as_raw(self),
18336 startslot,
18337 numbuffers,
18338 core::mem::transmute(ppconstantbuffers.unwrap_or(core::mem::zeroed())),
18339 core::mem::transmute(pfirstconstant.unwrap_or(core::mem::zeroed())),
18340 core::mem::transmute(pnumconstants.unwrap_or(core::mem::zeroed())),
18341 )
18342 }
18343 }
18344 pub unsafe fn VSGetConstantBuffers1(
18345 &self,
18346 startslot: u32,
18347 numbuffers: u32,
18348 ppconstantbuffers: Option<*mut Option<ID3D11Buffer>>,
18349 pfirstconstant: Option<*mut u32>,
18350 pnumconstants: Option<*mut u32>,
18351 ) {
18352 unsafe {
18353 (windows_core::Interface::vtable(self).VSGetConstantBuffers1)(
18354 windows_core::Interface::as_raw(self),
18355 startslot,
18356 numbuffers,
18357 core::mem::transmute(ppconstantbuffers.unwrap_or(core::mem::zeroed())),
18358 core::mem::transmute(pfirstconstant.unwrap_or(core::mem::zeroed())),
18359 core::mem::transmute(pnumconstants.unwrap_or(core::mem::zeroed())),
18360 )
18361 }
18362 }
18363 pub unsafe fn HSGetConstantBuffers1(
18364 &self,
18365 startslot: u32,
18366 numbuffers: u32,
18367 ppconstantbuffers: Option<*mut Option<ID3D11Buffer>>,
18368 pfirstconstant: Option<*mut u32>,
18369 pnumconstants: Option<*mut u32>,
18370 ) {
18371 unsafe {
18372 (windows_core::Interface::vtable(self).HSGetConstantBuffers1)(
18373 windows_core::Interface::as_raw(self),
18374 startslot,
18375 numbuffers,
18376 core::mem::transmute(ppconstantbuffers.unwrap_or(core::mem::zeroed())),
18377 core::mem::transmute(pfirstconstant.unwrap_or(core::mem::zeroed())),
18378 core::mem::transmute(pnumconstants.unwrap_or(core::mem::zeroed())),
18379 )
18380 }
18381 }
18382 pub unsafe fn DSGetConstantBuffers1(
18383 &self,
18384 startslot: u32,
18385 numbuffers: u32,
18386 ppconstantbuffers: Option<*mut Option<ID3D11Buffer>>,
18387 pfirstconstant: Option<*mut u32>,
18388 pnumconstants: Option<*mut u32>,
18389 ) {
18390 unsafe {
18391 (windows_core::Interface::vtable(self).DSGetConstantBuffers1)(
18392 windows_core::Interface::as_raw(self),
18393 startslot,
18394 numbuffers,
18395 core::mem::transmute(ppconstantbuffers.unwrap_or(core::mem::zeroed())),
18396 core::mem::transmute(pfirstconstant.unwrap_or(core::mem::zeroed())),
18397 core::mem::transmute(pnumconstants.unwrap_or(core::mem::zeroed())),
18398 )
18399 }
18400 }
18401 pub unsafe fn GSGetConstantBuffers1(
18402 &self,
18403 startslot: u32,
18404 numbuffers: u32,
18405 ppconstantbuffers: Option<*mut Option<ID3D11Buffer>>,
18406 pfirstconstant: Option<*mut u32>,
18407 pnumconstants: Option<*mut u32>,
18408 ) {
18409 unsafe {
18410 (windows_core::Interface::vtable(self).GSGetConstantBuffers1)(
18411 windows_core::Interface::as_raw(self),
18412 startslot,
18413 numbuffers,
18414 core::mem::transmute(ppconstantbuffers.unwrap_or(core::mem::zeroed())),
18415 core::mem::transmute(pfirstconstant.unwrap_or(core::mem::zeroed())),
18416 core::mem::transmute(pnumconstants.unwrap_or(core::mem::zeroed())),
18417 )
18418 }
18419 }
18420 pub unsafe fn PSGetConstantBuffers1(
18421 &self,
18422 startslot: u32,
18423 numbuffers: u32,
18424 ppconstantbuffers: Option<*mut Option<ID3D11Buffer>>,
18425 pfirstconstant: Option<*mut u32>,
18426 pnumconstants: Option<*mut u32>,
18427 ) {
18428 unsafe {
18429 (windows_core::Interface::vtable(self).PSGetConstantBuffers1)(
18430 windows_core::Interface::as_raw(self),
18431 startslot,
18432 numbuffers,
18433 core::mem::transmute(ppconstantbuffers.unwrap_or(core::mem::zeroed())),
18434 core::mem::transmute(pfirstconstant.unwrap_or(core::mem::zeroed())),
18435 core::mem::transmute(pnumconstants.unwrap_or(core::mem::zeroed())),
18436 )
18437 }
18438 }
18439 pub unsafe fn CSGetConstantBuffers1(
18440 &self,
18441 startslot: u32,
18442 numbuffers: u32,
18443 ppconstantbuffers: Option<*mut Option<ID3D11Buffer>>,
18444 pfirstconstant: Option<*mut u32>,
18445 pnumconstants: Option<*mut u32>,
18446 ) {
18447 unsafe {
18448 (windows_core::Interface::vtable(self).CSGetConstantBuffers1)(
18449 windows_core::Interface::as_raw(self),
18450 startslot,
18451 numbuffers,
18452 core::mem::transmute(ppconstantbuffers.unwrap_or(core::mem::zeroed())),
18453 core::mem::transmute(pfirstconstant.unwrap_or(core::mem::zeroed())),
18454 core::mem::transmute(pnumconstants.unwrap_or(core::mem::zeroed())),
18455 )
18456 }
18457 }
18458 pub unsafe fn SwapDeviceContextState<P0>(
18459 &self,
18460 pstate: P0,
18461 pppreviousstate: Option<*mut Option<ID3DDeviceContextState>>,
18462 ) where
18463 P0: windows_core::Param<ID3DDeviceContextState>,
18464 {
18465 unsafe {
18466 (windows_core::Interface::vtable(self).SwapDeviceContextState)(
18467 windows_core::Interface::as_raw(self),
18468 pstate.param().abi(),
18469 core::mem::transmute(pppreviousstate.unwrap_or(core::mem::zeroed())),
18470 )
18471 }
18472 }
18473 pub unsafe fn ClearView<P0>(
18474 &self,
18475 pview: P0,
18476 color: &[f32; 4],
18477 prect: Option<&[crate::Foundation::RECT]>,
18478 ) where
18479 P0: windows_core::Param<ID3D11View>,
18480 {
18481 unsafe {
18482 (windows_core::Interface::vtable(self).ClearView)(
18483 windows_core::Interface::as_raw(self),
18484 pview.param().abi(),
18485 core::mem::transmute(color.as_ptr()),
18486 core::mem::transmute(
18487 prect
18488 .map_or(core::ptr::null(), |slice| slice.as_ptr()),
18489 ),
18490 prect
18491 .map_or(0, |slice| slice.len().try_into().unwrap()),
18492 )
18493 }
18494 }
18495 pub unsafe fn DiscardView1<P0>(
18496 &self,
18497 presourceview: P0,
18498 prects: Option<&[crate::Foundation::RECT]>,
18499 ) where
18500 P0: windows_core::Param<ID3D11View>,
18501 {
18502 unsafe {
18503 (windows_core::Interface::vtable(self).DiscardView1)(
18504 windows_core::Interface::as_raw(self),
18505 presourceview.param().abi(),
18506 core::mem::transmute(
18507 prects
18508 .map_or(core::ptr::null(), |slice| slice.as_ptr()),
18509 ),
18510 prects
18511 .map_or(0, |slice| slice.len().try_into().unwrap()),
18512 )
18513 }
18514 }
18515}
18516#[repr(C)]
18517pub struct ID3D11DeviceContext1_Vtbl {
18518 pub base__: ID3D11DeviceContext_Vtbl,
18519 pub CopySubresourceRegion1: unsafe extern "system" fn(
18520 *mut core::ffi::c_void,
18521 *mut core::ffi::c_void,
18522 u32,
18523 u32,
18524 u32,
18525 u32,
18526 *mut core::ffi::c_void,
18527 u32,
18528 *const D3D11_BOX,
18529 u32,
18530 ),
18531 pub UpdateSubresource1: unsafe extern "system" fn(
18532 *mut core::ffi::c_void,
18533 *mut core::ffi::c_void,
18534 u32,
18535 *const D3D11_BOX,
18536 *const core::ffi::c_void,
18537 u32,
18538 u32,
18539 u32,
18540 ),
18541 pub DiscardResource: unsafe extern "system" fn(*mut core::ffi::c_void, *mut core::ffi::c_void),
18542 pub DiscardView: unsafe extern "system" fn(*mut core::ffi::c_void, *mut core::ffi::c_void),
18543 pub VSSetConstantBuffers1: unsafe extern "system" fn(
18544 *mut core::ffi::c_void,
18545 u32,
18546 u32,
18547 *const *mut core::ffi::c_void,
18548 *const u32,
18549 *const u32,
18550 ),
18551 pub HSSetConstantBuffers1: unsafe extern "system" fn(
18552 *mut core::ffi::c_void,
18553 u32,
18554 u32,
18555 *const *mut core::ffi::c_void,
18556 *const u32,
18557 *const u32,
18558 ),
18559 pub DSSetConstantBuffers1: unsafe extern "system" fn(
18560 *mut core::ffi::c_void,
18561 u32,
18562 u32,
18563 *const *mut core::ffi::c_void,
18564 *const u32,
18565 *const u32,
18566 ),
18567 pub GSSetConstantBuffers1: unsafe extern "system" fn(
18568 *mut core::ffi::c_void,
18569 u32,
18570 u32,
18571 *const *mut core::ffi::c_void,
18572 *const u32,
18573 *const u32,
18574 ),
18575 pub PSSetConstantBuffers1: unsafe extern "system" fn(
18576 *mut core::ffi::c_void,
18577 u32,
18578 u32,
18579 *const *mut core::ffi::c_void,
18580 *const u32,
18581 *const u32,
18582 ),
18583 pub CSSetConstantBuffers1: unsafe extern "system" fn(
18584 *mut core::ffi::c_void,
18585 u32,
18586 u32,
18587 *const *mut core::ffi::c_void,
18588 *const u32,
18589 *const u32,
18590 ),
18591 pub VSGetConstantBuffers1: unsafe extern "system" fn(
18592 *mut core::ffi::c_void,
18593 u32,
18594 u32,
18595 *mut *mut core::ffi::c_void,
18596 *mut u32,
18597 *mut u32,
18598 ),
18599 pub HSGetConstantBuffers1: unsafe extern "system" fn(
18600 *mut core::ffi::c_void,
18601 u32,
18602 u32,
18603 *mut *mut core::ffi::c_void,
18604 *mut u32,
18605 *mut u32,
18606 ),
18607 pub DSGetConstantBuffers1: unsafe extern "system" fn(
18608 *mut core::ffi::c_void,
18609 u32,
18610 u32,
18611 *mut *mut core::ffi::c_void,
18612 *mut u32,
18613 *mut u32,
18614 ),
18615 pub GSGetConstantBuffers1: unsafe extern "system" fn(
18616 *mut core::ffi::c_void,
18617 u32,
18618 u32,
18619 *mut *mut core::ffi::c_void,
18620 *mut u32,
18621 *mut u32,
18622 ),
18623 pub PSGetConstantBuffers1: unsafe extern "system" fn(
18624 *mut core::ffi::c_void,
18625 u32,
18626 u32,
18627 *mut *mut core::ffi::c_void,
18628 *mut u32,
18629 *mut u32,
18630 ),
18631 pub CSGetConstantBuffers1: unsafe extern "system" fn(
18632 *mut core::ffi::c_void,
18633 u32,
18634 u32,
18635 *mut *mut core::ffi::c_void,
18636 *mut u32,
18637 *mut u32,
18638 ),
18639 pub SwapDeviceContextState: unsafe extern "system" fn(
18640 *mut core::ffi::c_void,
18641 *mut core::ffi::c_void,
18642 *mut *mut core::ffi::c_void,
18643 ),
18644 pub ClearView: unsafe extern "system" fn(
18645 *mut core::ffi::c_void,
18646 *mut core::ffi::c_void,
18647 *const f32,
18648 *const crate::Foundation::RECT,
18649 u32,
18650 ),
18651 pub DiscardView1: unsafe extern "system" fn(
18652 *mut core::ffi::c_void,
18653 *mut core::ffi::c_void,
18654 *const crate::Foundation::RECT,
18655 u32,
18656 ),
18657}
18658#[cfg(all(
18659 feature = "Win32_Graphics_Direct3D",
18660 feature = "Win32_Graphics_Dxgi_Common"
18661))]
18662pub trait ID3D11DeviceContext1_Impl: ID3D11DeviceContext_Impl {
18663 fn CopySubresourceRegion1(
18664 &self,
18665 pdstresource: windows_core::Ref<'_, ID3D11Resource>,
18666 dstsubresource: u32,
18667 dstx: u32,
18668 dsty: u32,
18669 dstz: u32,
18670 psrcresource: windows_core::Ref<'_, ID3D11Resource>,
18671 srcsubresource: u32,
18672 psrcbox: *const D3D11_BOX,
18673 copyflags: u32,
18674 );
18675 fn UpdateSubresource1(
18676 &self,
18677 pdstresource: windows_core::Ref<'_, ID3D11Resource>,
18678 dstsubresource: u32,
18679 pdstbox: *const D3D11_BOX,
18680 psrcdata: *const core::ffi::c_void,
18681 srcrowpitch: u32,
18682 srcdepthpitch: u32,
18683 copyflags: u32,
18684 );
18685 fn DiscardResource(&self, presource: windows_core::Ref<'_, ID3D11Resource>);
18686 fn DiscardView(&self, presourceview: windows_core::Ref<'_, ID3D11View>);
18687 fn VSSetConstantBuffers1(
18688 &self,
18689 startslot: u32,
18690 numbuffers: u32,
18691 ppconstantbuffers: *const Option<ID3D11Buffer>,
18692 pfirstconstant: *const u32,
18693 pnumconstants: *const u32,
18694 );
18695 fn HSSetConstantBuffers1(
18696 &self,
18697 startslot: u32,
18698 numbuffers: u32,
18699 ppconstantbuffers: *const Option<ID3D11Buffer>,
18700 pfirstconstant: *const u32,
18701 pnumconstants: *const u32,
18702 );
18703 fn DSSetConstantBuffers1(
18704 &self,
18705 startslot: u32,
18706 numbuffers: u32,
18707 ppconstantbuffers: *const Option<ID3D11Buffer>,
18708 pfirstconstant: *const u32,
18709 pnumconstants: *const u32,
18710 );
18711 fn GSSetConstantBuffers1(
18712 &self,
18713 startslot: u32,
18714 numbuffers: u32,
18715 ppconstantbuffers: *const Option<ID3D11Buffer>,
18716 pfirstconstant: *const u32,
18717 pnumconstants: *const u32,
18718 );
18719 fn PSSetConstantBuffers1(
18720 &self,
18721 startslot: u32,
18722 numbuffers: u32,
18723 ppconstantbuffers: *const Option<ID3D11Buffer>,
18724 pfirstconstant: *const u32,
18725 pnumconstants: *const u32,
18726 );
18727 fn CSSetConstantBuffers1(
18728 &self,
18729 startslot: u32,
18730 numbuffers: u32,
18731 ppconstantbuffers: *const Option<ID3D11Buffer>,
18732 pfirstconstant: *const u32,
18733 pnumconstants: *const u32,
18734 );
18735 fn VSGetConstantBuffers1(
18736 &self,
18737 startslot: u32,
18738 numbuffers: u32,
18739 ppconstantbuffers: windows_core::OutRef<'_, ID3D11Buffer>,
18740 pfirstconstant: *mut u32,
18741 pnumconstants: *mut u32,
18742 );
18743 fn HSGetConstantBuffers1(
18744 &self,
18745 startslot: u32,
18746 numbuffers: u32,
18747 ppconstantbuffers: windows_core::OutRef<'_, ID3D11Buffer>,
18748 pfirstconstant: *mut u32,
18749 pnumconstants: *mut u32,
18750 );
18751 fn DSGetConstantBuffers1(
18752 &self,
18753 startslot: u32,
18754 numbuffers: u32,
18755 ppconstantbuffers: windows_core::OutRef<'_, ID3D11Buffer>,
18756 pfirstconstant: *mut u32,
18757 pnumconstants: *mut u32,
18758 );
18759 fn GSGetConstantBuffers1(
18760 &self,
18761 startslot: u32,
18762 numbuffers: u32,
18763 ppconstantbuffers: windows_core::OutRef<'_, ID3D11Buffer>,
18764 pfirstconstant: *mut u32,
18765 pnumconstants: *mut u32,
18766 );
18767 fn PSGetConstantBuffers1(
18768 &self,
18769 startslot: u32,
18770 numbuffers: u32,
18771 ppconstantbuffers: windows_core::OutRef<'_, ID3D11Buffer>,
18772 pfirstconstant: *mut u32,
18773 pnumconstants: *mut u32,
18774 );
18775 fn CSGetConstantBuffers1(
18776 &self,
18777 startslot: u32,
18778 numbuffers: u32,
18779 ppconstantbuffers: windows_core::OutRef<'_, ID3D11Buffer>,
18780 pfirstconstant: *mut u32,
18781 pnumconstants: *mut u32,
18782 );
18783 fn SwapDeviceContextState(
18784 &self,
18785 pstate: windows_core::Ref<'_, ID3DDeviceContextState>,
18786 pppreviousstate: windows_core::OutRef<'_, ID3DDeviceContextState>,
18787 );
18788 fn ClearView(
18789 &self,
18790 pview: windows_core::Ref<'_, ID3D11View>,
18791 color: *const f32,
18792 prect: *const crate::Foundation::RECT,
18793 numrects: u32,
18794 );
18795 fn DiscardView1(
18796 &self,
18797 presourceview: windows_core::Ref<'_, ID3D11View>,
18798 prects: *const crate::Foundation::RECT,
18799 numrects: u32,
18800 );
18801}
18802#[cfg(all(
18803 feature = "Win32_Graphics_Direct3D",
18804 feature = "Win32_Graphics_Dxgi_Common"
18805))]
18806impl ID3D11DeviceContext1_Vtbl {
18807 pub const fn new<Identity: ID3D11DeviceContext1_Impl, const OFFSET: isize>() -> Self {
18808 unsafe extern "system" fn CopySubresourceRegion1<
18809 Identity: ID3D11DeviceContext1_Impl,
18810 const OFFSET: isize,
18811 >(
18812 this: *mut core::ffi::c_void,
18813 pdstresource: *mut core::ffi::c_void,
18814 dstsubresource: u32,
18815 dstx: u32,
18816 dsty: u32,
18817 dstz: u32,
18818 psrcresource: *mut core::ffi::c_void,
18819 srcsubresource: u32,
18820 psrcbox: *const D3D11_BOX,
18821 copyflags: u32,
18822 ) {
18823 unsafe {
18824 let this: &Identity =
18825 &*((this as *const *const ()).offset(OFFSET) as *const Identity);
18826 ID3D11DeviceContext1_Impl::CopySubresourceRegion1(
18827 this,
18828 core::mem::transmute_copy(&pdstresource),
18829 core::mem::transmute_copy(&dstsubresource),
18830 core::mem::transmute_copy(&dstx),
18831 core::mem::transmute_copy(&dsty),
18832 core::mem::transmute_copy(&dstz),
18833 core::mem::transmute_copy(&psrcresource),
18834 core::mem::transmute_copy(&srcsubresource),
18835 core::mem::transmute_copy(&psrcbox),
18836 core::mem::transmute_copy(©flags),
18837 )
18838 }
18839 }
18840 unsafe extern "system" fn UpdateSubresource1<
18841 Identity: ID3D11DeviceContext1_Impl,
18842 const OFFSET: isize,
18843 >(
18844 this: *mut core::ffi::c_void,
18845 pdstresource: *mut core::ffi::c_void,
18846 dstsubresource: u32,
18847 pdstbox: *const D3D11_BOX,
18848 psrcdata: *const core::ffi::c_void,
18849 srcrowpitch: u32,
18850 srcdepthpitch: u32,
18851 copyflags: u32,
18852 ) {
18853 unsafe {
18854 let this: &Identity =
18855 &*((this as *const *const ()).offset(OFFSET) as *const Identity);
18856 ID3D11DeviceContext1_Impl::UpdateSubresource1(
18857 this,
18858 core::mem::transmute_copy(&pdstresource),
18859 core::mem::transmute_copy(&dstsubresource),
18860 core::mem::transmute_copy(&pdstbox),
18861 core::mem::transmute_copy(&psrcdata),
18862 core::mem::transmute_copy(&srcrowpitch),
18863 core::mem::transmute_copy(&srcdepthpitch),
18864 core::mem::transmute_copy(©flags),
18865 )
18866 }
18867 }
18868 unsafe extern "system" fn DiscardResource<
18869 Identity: ID3D11DeviceContext1_Impl,
18870 const OFFSET: isize,
18871 >(
18872 this: *mut core::ffi::c_void,
18873 presource: *mut core::ffi::c_void,
18874 ) {
18875 unsafe {
18876 let this: &Identity =
18877 &*((this as *const *const ()).offset(OFFSET) as *const Identity);
18878 ID3D11DeviceContext1_Impl::DiscardResource(
18879 this,
18880 core::mem::transmute_copy(&presource),
18881 )
18882 }
18883 }
18884 unsafe extern "system" fn DiscardView<
18885 Identity: ID3D11DeviceContext1_Impl,
18886 const OFFSET: isize,
18887 >(
18888 this: *mut core::ffi::c_void,
18889 presourceview: *mut core::ffi::c_void,
18890 ) {
18891 unsafe {
18892 let this: &Identity =
18893 &*((this as *const *const ()).offset(OFFSET) as *const Identity);
18894 ID3D11DeviceContext1_Impl::DiscardView(
18895 this,
18896 core::mem::transmute_copy(&presourceview),
18897 )
18898 }
18899 }
18900 unsafe extern "system" fn VSSetConstantBuffers1<
18901 Identity: ID3D11DeviceContext1_Impl,
18902 const OFFSET: isize,
18903 >(
18904 this: *mut core::ffi::c_void,
18905 startslot: u32,
18906 numbuffers: u32,
18907 ppconstantbuffers: *const *mut core::ffi::c_void,
18908 pfirstconstant: *const u32,
18909 pnumconstants: *const u32,
18910 ) {
18911 unsafe {
18912 let this: &Identity =
18913 &*((this as *const *const ()).offset(OFFSET) as *const Identity);
18914 ID3D11DeviceContext1_Impl::VSSetConstantBuffers1(
18915 this,
18916 core::mem::transmute_copy(&startslot),
18917 core::mem::transmute_copy(&numbuffers),
18918 core::mem::transmute_copy(&ppconstantbuffers),
18919 core::mem::transmute_copy(&pfirstconstant),
18920 core::mem::transmute_copy(&pnumconstants),
18921 )
18922 }
18923 }
18924 unsafe extern "system" fn HSSetConstantBuffers1<
18925 Identity: ID3D11DeviceContext1_Impl,
18926 const OFFSET: isize,
18927 >(
18928 this: *mut core::ffi::c_void,
18929 startslot: u32,
18930 numbuffers: u32,
18931 ppconstantbuffers: *const *mut core::ffi::c_void,
18932 pfirstconstant: *const u32,
18933 pnumconstants: *const u32,
18934 ) {
18935 unsafe {
18936 let this: &Identity =
18937 &*((this as *const *const ()).offset(OFFSET) as *const Identity);
18938 ID3D11DeviceContext1_Impl::HSSetConstantBuffers1(
18939 this,
18940 core::mem::transmute_copy(&startslot),
18941 core::mem::transmute_copy(&numbuffers),
18942 core::mem::transmute_copy(&ppconstantbuffers),
18943 core::mem::transmute_copy(&pfirstconstant),
18944 core::mem::transmute_copy(&pnumconstants),
18945 )
18946 }
18947 }
18948 unsafe extern "system" fn DSSetConstantBuffers1<
18949 Identity: ID3D11DeviceContext1_Impl,
18950 const OFFSET: isize,
18951 >(
18952 this: *mut core::ffi::c_void,
18953 startslot: u32,
18954 numbuffers: u32,
18955 ppconstantbuffers: *const *mut core::ffi::c_void,
18956 pfirstconstant: *const u32,
18957 pnumconstants: *const u32,
18958 ) {
18959 unsafe {
18960 let this: &Identity =
18961 &*((this as *const *const ()).offset(OFFSET) as *const Identity);
18962 ID3D11DeviceContext1_Impl::DSSetConstantBuffers1(
18963 this,
18964 core::mem::transmute_copy(&startslot),
18965 core::mem::transmute_copy(&numbuffers),
18966 core::mem::transmute_copy(&ppconstantbuffers),
18967 core::mem::transmute_copy(&pfirstconstant),
18968 core::mem::transmute_copy(&pnumconstants),
18969 )
18970 }
18971 }
18972 unsafe extern "system" fn GSSetConstantBuffers1<
18973 Identity: ID3D11DeviceContext1_Impl,
18974 const OFFSET: isize,
18975 >(
18976 this: *mut core::ffi::c_void,
18977 startslot: u32,
18978 numbuffers: u32,
18979 ppconstantbuffers: *const *mut core::ffi::c_void,
18980 pfirstconstant: *const u32,
18981 pnumconstants: *const u32,
18982 ) {
18983 unsafe {
18984 let this: &Identity =
18985 &*((this as *const *const ()).offset(OFFSET) as *const Identity);
18986 ID3D11DeviceContext1_Impl::GSSetConstantBuffers1(
18987 this,
18988 core::mem::transmute_copy(&startslot),
18989 core::mem::transmute_copy(&numbuffers),
18990 core::mem::transmute_copy(&ppconstantbuffers),
18991 core::mem::transmute_copy(&pfirstconstant),
18992 core::mem::transmute_copy(&pnumconstants),
18993 )
18994 }
18995 }
18996 unsafe extern "system" fn PSSetConstantBuffers1<
18997 Identity: ID3D11DeviceContext1_Impl,
18998 const OFFSET: isize,
18999 >(
19000 this: *mut core::ffi::c_void,
19001 startslot: u32,
19002 numbuffers: u32,
19003 ppconstantbuffers: *const *mut core::ffi::c_void,
19004 pfirstconstant: *const u32,
19005 pnumconstants: *const u32,
19006 ) {
19007 unsafe {
19008 let this: &Identity =
19009 &*((this as *const *const ()).offset(OFFSET) as *const Identity);
19010 ID3D11DeviceContext1_Impl::PSSetConstantBuffers1(
19011 this,
19012 core::mem::transmute_copy(&startslot),
19013 core::mem::transmute_copy(&numbuffers),
19014 core::mem::transmute_copy(&ppconstantbuffers),
19015 core::mem::transmute_copy(&pfirstconstant),
19016 core::mem::transmute_copy(&pnumconstants),
19017 )
19018 }
19019 }
19020 unsafe extern "system" fn CSSetConstantBuffers1<
19021 Identity: ID3D11DeviceContext1_Impl,
19022 const OFFSET: isize,
19023 >(
19024 this: *mut core::ffi::c_void,
19025 startslot: u32,
19026 numbuffers: u32,
19027 ppconstantbuffers: *const *mut core::ffi::c_void,
19028 pfirstconstant: *const u32,
19029 pnumconstants: *const u32,
19030 ) {
19031 unsafe {
19032 let this: &Identity =
19033 &*((this as *const *const ()).offset(OFFSET) as *const Identity);
19034 ID3D11DeviceContext1_Impl::CSSetConstantBuffers1(
19035 this,
19036 core::mem::transmute_copy(&startslot),
19037 core::mem::transmute_copy(&numbuffers),
19038 core::mem::transmute_copy(&ppconstantbuffers),
19039 core::mem::transmute_copy(&pfirstconstant),
19040 core::mem::transmute_copy(&pnumconstants),
19041 )
19042 }
19043 }
19044 unsafe extern "system" fn VSGetConstantBuffers1<
19045 Identity: ID3D11DeviceContext1_Impl,
19046 const OFFSET: isize,
19047 >(
19048 this: *mut core::ffi::c_void,
19049 startslot: u32,
19050 numbuffers: u32,
19051 ppconstantbuffers: *mut *mut core::ffi::c_void,
19052 pfirstconstant: *mut u32,
19053 pnumconstants: *mut u32,
19054 ) {
19055 unsafe {
19056 let this: &Identity =
19057 &*((this as *const *const ()).offset(OFFSET) as *const Identity);
19058 ID3D11DeviceContext1_Impl::VSGetConstantBuffers1(
19059 this,
19060 core::mem::transmute_copy(&startslot),
19061 core::mem::transmute_copy(&numbuffers),
19062 core::mem::transmute_copy(&ppconstantbuffers),
19063 core::mem::transmute_copy(&pfirstconstant),
19064 core::mem::transmute_copy(&pnumconstants),
19065 )
19066 }
19067 }
19068 unsafe extern "system" fn HSGetConstantBuffers1<
19069 Identity: ID3D11DeviceContext1_Impl,
19070 const OFFSET: isize,
19071 >(
19072 this: *mut core::ffi::c_void,
19073 startslot: u32,
19074 numbuffers: u32,
19075 ppconstantbuffers: *mut *mut core::ffi::c_void,
19076 pfirstconstant: *mut u32,
19077 pnumconstants: *mut u32,
19078 ) {
19079 unsafe {
19080 let this: &Identity =
19081 &*((this as *const *const ()).offset(OFFSET) as *const Identity);
19082 ID3D11DeviceContext1_Impl::HSGetConstantBuffers1(
19083 this,
19084 core::mem::transmute_copy(&startslot),
19085 core::mem::transmute_copy(&numbuffers),
19086 core::mem::transmute_copy(&ppconstantbuffers),
19087 core::mem::transmute_copy(&pfirstconstant),
19088 core::mem::transmute_copy(&pnumconstants),
19089 )
19090 }
19091 }
19092 unsafe extern "system" fn DSGetConstantBuffers1<
19093 Identity: ID3D11DeviceContext1_Impl,
19094 const OFFSET: isize,
19095 >(
19096 this: *mut core::ffi::c_void,
19097 startslot: u32,
19098 numbuffers: u32,
19099 ppconstantbuffers: *mut *mut core::ffi::c_void,
19100 pfirstconstant: *mut u32,
19101 pnumconstants: *mut u32,
19102 ) {
19103 unsafe {
19104 let this: &Identity =
19105 &*((this as *const *const ()).offset(OFFSET) as *const Identity);
19106 ID3D11DeviceContext1_Impl::DSGetConstantBuffers1(
19107 this,
19108 core::mem::transmute_copy(&startslot),
19109 core::mem::transmute_copy(&numbuffers),
19110 core::mem::transmute_copy(&ppconstantbuffers),
19111 core::mem::transmute_copy(&pfirstconstant),
19112 core::mem::transmute_copy(&pnumconstants),
19113 )
19114 }
19115 }
19116 unsafe extern "system" fn GSGetConstantBuffers1<
19117 Identity: ID3D11DeviceContext1_Impl,
19118 const OFFSET: isize,
19119 >(
19120 this: *mut core::ffi::c_void,
19121 startslot: u32,
19122 numbuffers: u32,
19123 ppconstantbuffers: *mut *mut core::ffi::c_void,
19124 pfirstconstant: *mut u32,
19125 pnumconstants: *mut u32,
19126 ) {
19127 unsafe {
19128 let this: &Identity =
19129 &*((this as *const *const ()).offset(OFFSET) as *const Identity);
19130 ID3D11DeviceContext1_Impl::GSGetConstantBuffers1(
19131 this,
19132 core::mem::transmute_copy(&startslot),
19133 core::mem::transmute_copy(&numbuffers),
19134 core::mem::transmute_copy(&ppconstantbuffers),
19135 core::mem::transmute_copy(&pfirstconstant),
19136 core::mem::transmute_copy(&pnumconstants),
19137 )
19138 }
19139 }
19140 unsafe extern "system" fn PSGetConstantBuffers1<
19141 Identity: ID3D11DeviceContext1_Impl,
19142 const OFFSET: isize,
19143 >(
19144 this: *mut core::ffi::c_void,
19145 startslot: u32,
19146 numbuffers: u32,
19147 ppconstantbuffers: *mut *mut core::ffi::c_void,
19148 pfirstconstant: *mut u32,
19149 pnumconstants: *mut u32,
19150 ) {
19151 unsafe {
19152 let this: &Identity =
19153 &*((this as *const *const ()).offset(OFFSET) as *const Identity);
19154 ID3D11DeviceContext1_Impl::PSGetConstantBuffers1(
19155 this,
19156 core::mem::transmute_copy(&startslot),
19157 core::mem::transmute_copy(&numbuffers),
19158 core::mem::transmute_copy(&ppconstantbuffers),
19159 core::mem::transmute_copy(&pfirstconstant),
19160 core::mem::transmute_copy(&pnumconstants),
19161 )
19162 }
19163 }
19164 unsafe extern "system" fn CSGetConstantBuffers1<
19165 Identity: ID3D11DeviceContext1_Impl,
19166 const OFFSET: isize,
19167 >(
19168 this: *mut core::ffi::c_void,
19169 startslot: u32,
19170 numbuffers: u32,
19171 ppconstantbuffers: *mut *mut core::ffi::c_void,
19172 pfirstconstant: *mut u32,
19173 pnumconstants: *mut u32,
19174 ) {
19175 unsafe {
19176 let this: &Identity =
19177 &*((this as *const *const ()).offset(OFFSET) as *const Identity);
19178 ID3D11DeviceContext1_Impl::CSGetConstantBuffers1(
19179 this,
19180 core::mem::transmute_copy(&startslot),
19181 core::mem::transmute_copy(&numbuffers),
19182 core::mem::transmute_copy(&ppconstantbuffers),
19183 core::mem::transmute_copy(&pfirstconstant),
19184 core::mem::transmute_copy(&pnumconstants),
19185 )
19186 }
19187 }
19188 unsafe extern "system" fn SwapDeviceContextState<
19189 Identity: ID3D11DeviceContext1_Impl,
19190 const OFFSET: isize,
19191 >(
19192 this: *mut core::ffi::c_void,
19193 pstate: *mut core::ffi::c_void,
19194 pppreviousstate: *mut *mut core::ffi::c_void,
19195 ) {
19196 unsafe {
19197 let this: &Identity =
19198 &*((this as *const *const ()).offset(OFFSET) as *const Identity);
19199 ID3D11DeviceContext1_Impl::SwapDeviceContextState(
19200 this,
19201 core::mem::transmute_copy(&pstate),
19202 core::mem::transmute_copy(&pppreviousstate),
19203 )
19204 }
19205 }
19206 unsafe extern "system" fn ClearView<
19207 Identity: ID3D11DeviceContext1_Impl,
19208 const OFFSET: isize,
19209 >(
19210 this: *mut core::ffi::c_void,
19211 pview: *mut core::ffi::c_void,
19212 color: *const f32,
19213 prect: *const crate::Foundation::RECT,
19214 numrects: u32,
19215 ) {
19216 unsafe {
19217 let this: &Identity =
19218 &*((this as *const *const ()).offset(OFFSET) as *const Identity);
19219 ID3D11DeviceContext1_Impl::ClearView(
19220 this,
19221 core::mem::transmute_copy(&pview),
19222 core::mem::transmute_copy(&color),
19223 core::mem::transmute_copy(&prect),
19224 core::mem::transmute_copy(&numrects),
19225 )
19226 }
19227 }
19228 unsafe extern "system" fn DiscardView1<
19229 Identity: ID3D11DeviceContext1_Impl,
19230 const OFFSET: isize,
19231 >(
19232 this: *mut core::ffi::c_void,
19233 presourceview: *mut core::ffi::c_void,
19234 prects: *const crate::Foundation::RECT,
19235 numrects: u32,
19236 ) {
19237 unsafe {
19238 let this: &Identity =
19239 &*((this as *const *const ()).offset(OFFSET) as *const Identity);
19240 ID3D11DeviceContext1_Impl::DiscardView1(
19241 this,
19242 core::mem::transmute_copy(&presourceview),
19243 core::mem::transmute_copy(&prects),
19244 core::mem::transmute_copy(&numrects),
19245 )
19246 }
19247 }
19248 Self {
19249 base__: ID3D11DeviceContext_Vtbl::new::<Identity, OFFSET>(),
19250 CopySubresourceRegion1: CopySubresourceRegion1::<Identity, OFFSET>,
19251 UpdateSubresource1: UpdateSubresource1::<Identity, OFFSET>,
19252 DiscardResource: DiscardResource::<Identity, OFFSET>,
19253 DiscardView: DiscardView::<Identity, OFFSET>,
19254 VSSetConstantBuffers1: VSSetConstantBuffers1::<Identity, OFFSET>,
19255 HSSetConstantBuffers1: HSSetConstantBuffers1::<Identity, OFFSET>,
19256 DSSetConstantBuffers1: DSSetConstantBuffers1::<Identity, OFFSET>,
19257 GSSetConstantBuffers1: GSSetConstantBuffers1::<Identity, OFFSET>,
19258 PSSetConstantBuffers1: PSSetConstantBuffers1::<Identity, OFFSET>,
19259 CSSetConstantBuffers1: CSSetConstantBuffers1::<Identity, OFFSET>,
19260 VSGetConstantBuffers1: VSGetConstantBuffers1::<Identity, OFFSET>,
19261 HSGetConstantBuffers1: HSGetConstantBuffers1::<Identity, OFFSET>,
19262 DSGetConstantBuffers1: DSGetConstantBuffers1::<Identity, OFFSET>,
19263 GSGetConstantBuffers1: GSGetConstantBuffers1::<Identity, OFFSET>,
19264 PSGetConstantBuffers1: PSGetConstantBuffers1::<Identity, OFFSET>,
19265 CSGetConstantBuffers1: CSGetConstantBuffers1::<Identity, OFFSET>,
19266 SwapDeviceContextState: SwapDeviceContextState::<Identity, OFFSET>,
19267 ClearView: ClearView::<Identity, OFFSET>,
19268 DiscardView1: DiscardView1::<Identity, OFFSET>,
19269 }
19270 }
19271 pub fn matches(iid: &windows_core::GUID) -> bool {
19272 iid == &<ID3D11DeviceContext1 as windows_core::Interface>::IID
19273 || iid == &<ID3D11DeviceChild as windows_core::Interface>::IID
19274 || iid == &<ID3D11DeviceContext as windows_core::Interface>::IID
19275 }
19276}
19277#[cfg(all(
19278 feature = "Win32_Graphics_Direct3D",
19279 feature = "Win32_Graphics_Dxgi_Common"
19280))]
19281impl windows_core::RuntimeName for ID3D11DeviceContext1 {}
19282#[cfg(all(
19283 feature = "Win32_Graphics_Direct3D",
19284 feature = "Win32_Graphics_Dxgi_Common"
19285))]
19286unsafe impl Send for ID3D11DeviceContext1 {}
19287#[cfg(all(
19288 feature = "Win32_Graphics_Direct3D",
19289 feature = "Win32_Graphics_Dxgi_Common"
19290))]
19291unsafe impl Sync for ID3D11DeviceContext1 {}
19292windows_core::imp::define_interface!(
19293 ID3D11DeviceContext2,
19294 ID3D11DeviceContext2_Vtbl,
19295 0x420d5b32_b90c_4da4_bef0_359f6a24a83a
19296);
19297impl core::ops::Deref for ID3D11DeviceContext2 {
19298 type Target = ID3D11DeviceContext1;
19299 fn deref(&self) -> &Self::Target {
19300 unsafe { core::mem::transmute(self) }
19301 }
19302}
19303windows_core::imp::interface_hierarchy!(
19304 ID3D11DeviceContext2,
19305 windows_core::IUnknown,
19306 ID3D11DeviceChild,
19307 ID3D11DeviceContext,
19308 ID3D11DeviceContext1
19309);
19310impl ID3D11DeviceContext2 {
19311 pub unsafe fn UpdateTileMappings<P0, P4>(
19312 &self,
19313 ptiledresource: P0,
19314 numtiledresourceregions: u32,
19315 ptiledresourceregionstartcoordinates: Option<*const D3D11_TILED_RESOURCE_COORDINATE>,
19316 ptiledresourceregionsizes: Option<*const D3D11_TILE_REGION_SIZE>,
19317 ptilepool: P4,
19318 numranges: u32,
19319 prangeflags: Option<*const u32>,
19320 ptilepoolstartoffsets: Option<*const u32>,
19321 prangetilecounts: Option<*const u32>,
19322 flags: u32,
19323 ) -> windows_core::Result<()>
19324 where
19325 P0: windows_core::Param<ID3D11Resource>,
19326 P4: windows_core::Param<ID3D11Buffer>,
19327 {
19328 unsafe {
19329 (windows_core::Interface::vtable(self).UpdateTileMappings)(
19330 windows_core::Interface::as_raw(self),
19331 ptiledresource.param().abi(),
19332 numtiledresourceregions,
19333 core::mem::transmute(
19334 ptiledresourceregionstartcoordinates.unwrap_or(core::mem::zeroed()),
19335 ),
19336 core::mem::transmute(ptiledresourceregionsizes.unwrap_or(core::mem::zeroed())),
19337 ptilepool.param().abi(),
19338 numranges,
19339 core::mem::transmute(prangeflags.unwrap_or(core::mem::zeroed())),
19340 core::mem::transmute(ptilepoolstartoffsets.unwrap_or(core::mem::zeroed())),
19341 core::mem::transmute(prangetilecounts.unwrap_or(core::mem::zeroed())),
19342 flags,
19343 )
19344 .ok()
19345 }
19346 }
19347 pub unsafe fn CopyTileMappings<P0, P2>(
19348 &self,
19349 pdesttiledresource: P0,
19350 pdestregionstartcoordinate: *const D3D11_TILED_RESOURCE_COORDINATE,
19351 psourcetiledresource: P2,
19352 psourceregionstartcoordinate: *const D3D11_TILED_RESOURCE_COORDINATE,
19353 ptileregionsize: *const D3D11_TILE_REGION_SIZE,
19354 flags: u32,
19355 ) -> windows_core::Result<()>
19356 where
19357 P0: windows_core::Param<ID3D11Resource>,
19358 P2: windows_core::Param<ID3D11Resource>,
19359 {
19360 unsafe {
19361 (windows_core::Interface::vtable(self).CopyTileMappings)(
19362 windows_core::Interface::as_raw(self),
19363 pdesttiledresource.param().abi(),
19364 pdestregionstartcoordinate,
19365 psourcetiledresource.param().abi(),
19366 psourceregionstartcoordinate,
19367 ptileregionsize,
19368 flags,
19369 )
19370 .ok()
19371 }
19372 }
19373 pub unsafe fn CopyTiles<P0, P3>(
19374 &self,
19375 ptiledresource: P0,
19376 ptileregionstartcoordinate: *const D3D11_TILED_RESOURCE_COORDINATE,
19377 ptileregionsize: *const D3D11_TILE_REGION_SIZE,
19378 pbuffer: P3,
19379 bufferstartoffsetinbytes: u64,
19380 flags: u32,
19381 ) where
19382 P0: windows_core::Param<ID3D11Resource>,
19383 P3: windows_core::Param<ID3D11Buffer>,
19384 {
19385 unsafe {
19386 (windows_core::Interface::vtable(self).CopyTiles)(
19387 windows_core::Interface::as_raw(self),
19388 ptiledresource.param().abi(),
19389 ptileregionstartcoordinate,
19390 ptileregionsize,
19391 pbuffer.param().abi(),
19392 bufferstartoffsetinbytes,
19393 flags,
19394 )
19395 }
19396 }
19397 pub unsafe fn UpdateTiles<P0>(
19398 &self,
19399 pdesttiledresource: P0,
19400 pdesttileregionstartcoordinate: *const D3D11_TILED_RESOURCE_COORDINATE,
19401 pdesttileregionsize: *const D3D11_TILE_REGION_SIZE,
19402 psourcetiledata: *const core::ffi::c_void,
19403 flags: u32,
19404 ) where
19405 P0: windows_core::Param<ID3D11Resource>,
19406 {
19407 unsafe {
19408 (windows_core::Interface::vtable(self).UpdateTiles)(
19409 windows_core::Interface::as_raw(self),
19410 pdesttiledresource.param().abi(),
19411 pdesttileregionstartcoordinate,
19412 pdesttileregionsize,
19413 psourcetiledata,
19414 flags,
19415 )
19416 }
19417 }
19418 pub unsafe fn ResizeTilePool<P0>(
19419 &self,
19420 ptilepool: P0,
19421 newsizeinbytes: u64,
19422 ) -> windows_core::Result<()>
19423 where
19424 P0: windows_core::Param<ID3D11Buffer>,
19425 {
19426 unsafe {
19427 (windows_core::Interface::vtable(self).ResizeTilePool)(
19428 windows_core::Interface::as_raw(self),
19429 ptilepool.param().abi(),
19430 newsizeinbytes,
19431 )
19432 .ok()
19433 }
19434 }
19435 pub unsafe fn TiledResourceBarrier<P0, P1>(
19436 &self,
19437 ptiledresourceorviewaccessbeforebarrier: P0,
19438 ptiledresourceorviewaccessafterbarrier: P1,
19439 ) where
19440 P0: windows_core::Param<ID3D11DeviceChild>,
19441 P1: windows_core::Param<ID3D11DeviceChild>,
19442 {
19443 unsafe {
19444 (windows_core::Interface::vtable(self).TiledResourceBarrier)(
19445 windows_core::Interface::as_raw(self),
19446 ptiledresourceorviewaccessbeforebarrier.param().abi(),
19447 ptiledresourceorviewaccessafterbarrier.param().abi(),
19448 )
19449 }
19450 }
19451 pub unsafe fn IsAnnotationEnabled(&self) -> crate::Foundation::BOOL {
19452 unsafe {
19453 (windows_core::Interface::vtable(self).IsAnnotationEnabled)(
19454 windows_core::Interface::as_raw(self),
19455 )
19456 }
19457 }
19458 pub unsafe fn SetMarkerInt<P0>(&self, plabel: P0, data: i32)
19459 where
19460 P0: windows_core::Param<crate::core_supplemental::PCWSTR>,
19461 {
19462 unsafe {
19463 (windows_core::Interface::vtable(self).SetMarkerInt)(
19464 windows_core::Interface::as_raw(self),
19465 plabel.param().abi(),
19466 data,
19467 )
19468 }
19469 }
19470 pub unsafe fn BeginEventInt<P0>(&self, plabel: P0, data: i32)
19471 where
19472 P0: windows_core::Param<crate::core_supplemental::PCWSTR>,
19473 {
19474 unsafe {
19475 (windows_core::Interface::vtable(self).BeginEventInt)(
19476 windows_core::Interface::as_raw(self),
19477 plabel.param().abi(),
19478 data,
19479 )
19480 }
19481 }
19482 pub unsafe fn EndEvent(&self) {
19483 unsafe {
19484 (windows_core::Interface::vtable(self).EndEvent)(windows_core::Interface::as_raw(self))
19485 }
19486 }
19487}
19488#[repr(C)]
19489pub struct ID3D11DeviceContext2_Vtbl {
19490 pub base__: ID3D11DeviceContext1_Vtbl,
19491 pub UpdateTileMappings: unsafe extern "system" fn(
19492 *mut core::ffi::c_void,
19493 *mut core::ffi::c_void,
19494 u32,
19495 *const D3D11_TILED_RESOURCE_COORDINATE,
19496 *const D3D11_TILE_REGION_SIZE,
19497 *mut core::ffi::c_void,
19498 u32,
19499 *const u32,
19500 *const u32,
19501 *const u32,
19502 u32,
19503 ) -> windows_core::HRESULT,
19504 pub CopyTileMappings: unsafe extern "system" fn(
19505 *mut core::ffi::c_void,
19506 *mut core::ffi::c_void,
19507 *const D3D11_TILED_RESOURCE_COORDINATE,
19508 *mut core::ffi::c_void,
19509 *const D3D11_TILED_RESOURCE_COORDINATE,
19510 *const D3D11_TILE_REGION_SIZE,
19511 u32,
19512 ) -> windows_core::HRESULT,
19513 pub CopyTiles: unsafe extern "system" fn(
19514 *mut core::ffi::c_void,
19515 *mut core::ffi::c_void,
19516 *const D3D11_TILED_RESOURCE_COORDINATE,
19517 *const D3D11_TILE_REGION_SIZE,
19518 *mut core::ffi::c_void,
19519 u64,
19520 u32,
19521 ),
19522 pub UpdateTiles: unsafe extern "system" fn(
19523 *mut core::ffi::c_void,
19524 *mut core::ffi::c_void,
19525 *const D3D11_TILED_RESOURCE_COORDINATE,
19526 *const D3D11_TILE_REGION_SIZE,
19527 *const core::ffi::c_void,
19528 u32,
19529 ),
19530 pub ResizeTilePool: unsafe extern "system" fn(
19531 *mut core::ffi::c_void,
19532 *mut core::ffi::c_void,
19533 u64,
19534 ) -> windows_core::HRESULT,
19535 pub TiledResourceBarrier: unsafe extern "system" fn(
19536 *mut core::ffi::c_void,
19537 *mut core::ffi::c_void,
19538 *mut core::ffi::c_void,
19539 ),
19540 pub IsAnnotationEnabled:
19541 unsafe extern "system" fn(*mut core::ffi::c_void) -> crate::Foundation::BOOL,
19542 pub SetMarkerInt: unsafe extern "system" fn(*mut core::ffi::c_void, crate::core_supplemental::PCWSTR, i32),
19543 pub BeginEventInt: unsafe extern "system" fn(*mut core::ffi::c_void, crate::core_supplemental::PCWSTR, i32),
19544 pub EndEvent: unsafe extern "system" fn(*mut core::ffi::c_void),
19545}
19546#[cfg(all(
19547 feature = "Win32_Graphics_Direct3D",
19548 feature = "Win32_Graphics_Dxgi_Common"
19549))]
19550pub trait ID3D11DeviceContext2_Impl: ID3D11DeviceContext1_Impl {
19551 fn UpdateTileMappings(
19552 &self,
19553 ptiledresource: windows_core::Ref<'_, ID3D11Resource>,
19554 numtiledresourceregions: u32,
19555 ptiledresourceregionstartcoordinates: *const D3D11_TILED_RESOURCE_COORDINATE,
19556 ptiledresourceregionsizes: *const D3D11_TILE_REGION_SIZE,
19557 ptilepool: windows_core::Ref<'_, ID3D11Buffer>,
19558 numranges: u32,
19559 prangeflags: *const u32,
19560 ptilepoolstartoffsets: *const u32,
19561 prangetilecounts: *const u32,
19562 flags: u32,
19563 ) -> windows_core::Result<()>;
19564 fn CopyTileMappings(
19565 &self,
19566 pdesttiledresource: windows_core::Ref<'_, ID3D11Resource>,
19567 pdestregionstartcoordinate: *const D3D11_TILED_RESOURCE_COORDINATE,
19568 psourcetiledresource: windows_core::Ref<'_, ID3D11Resource>,
19569 psourceregionstartcoordinate: *const D3D11_TILED_RESOURCE_COORDINATE,
19570 ptileregionsize: *const D3D11_TILE_REGION_SIZE,
19571 flags: u32,
19572 ) -> windows_core::Result<()>;
19573 fn CopyTiles(
19574 &self,
19575 ptiledresource: windows_core::Ref<'_, ID3D11Resource>,
19576 ptileregionstartcoordinate: *const D3D11_TILED_RESOURCE_COORDINATE,
19577 ptileregionsize: *const D3D11_TILE_REGION_SIZE,
19578 pbuffer: windows_core::Ref<'_, ID3D11Buffer>,
19579 bufferstartoffsetinbytes: u64,
19580 flags: u32,
19581 );
19582 fn UpdateTiles(
19583 &self,
19584 pdesttiledresource: windows_core::Ref<'_, ID3D11Resource>,
19585 pdesttileregionstartcoordinate: *const D3D11_TILED_RESOURCE_COORDINATE,
19586 pdesttileregionsize: *const D3D11_TILE_REGION_SIZE,
19587 psourcetiledata: *const core::ffi::c_void,
19588 flags: u32,
19589 );
19590 fn ResizeTilePool(
19591 &self,
19592 ptilepool: windows_core::Ref<'_, ID3D11Buffer>,
19593 newsizeinbytes: u64,
19594 ) -> windows_core::Result<()>;
19595 fn TiledResourceBarrier(
19596 &self,
19597 ptiledresourceorviewaccessbeforebarrier: windows_core::Ref<'_, ID3D11DeviceChild>,
19598 ptiledresourceorviewaccessafterbarrier: windows_core::Ref<'_, ID3D11DeviceChild>,
19599 );
19600 fn IsAnnotationEnabled(&self) -> crate::Foundation::BOOL;
19601 fn SetMarkerInt(&self, plabel: &crate::core_supplemental::PCWSTR, data: i32);
19602 fn BeginEventInt(&self, plabel: &crate::core_supplemental::PCWSTR, data: i32);
19603 fn EndEvent(&self);
19604}
19605#[cfg(all(
19606 feature = "Win32_Graphics_Direct3D",
19607 feature = "Win32_Graphics_Dxgi_Common"
19608))]
19609impl ID3D11DeviceContext2_Vtbl {
19610 pub const fn new<Identity: ID3D11DeviceContext2_Impl, const OFFSET: isize>() -> Self {
19611 unsafe extern "system" fn UpdateTileMappings<
19612 Identity: ID3D11DeviceContext2_Impl,
19613 const OFFSET: isize,
19614 >(
19615 this: *mut core::ffi::c_void,
19616 ptiledresource: *mut core::ffi::c_void,
19617 numtiledresourceregions: u32,
19618 ptiledresourceregionstartcoordinates: *const D3D11_TILED_RESOURCE_COORDINATE,
19619 ptiledresourceregionsizes: *const D3D11_TILE_REGION_SIZE,
19620 ptilepool: *mut core::ffi::c_void,
19621 numranges: u32,
19622 prangeflags: *const u32,
19623 ptilepoolstartoffsets: *const u32,
19624 prangetilecounts: *const u32,
19625 flags: u32,
19626 ) -> windows_core::HRESULT {
19627 unsafe {
19628 let this: &Identity =
19629 &*((this as *const *const ()).offset(OFFSET) as *const Identity);
19630 ID3D11DeviceContext2_Impl::UpdateTileMappings(
19631 this,
19632 core::mem::transmute_copy(&ptiledresource),
19633 core::mem::transmute_copy(&numtiledresourceregions),
19634 core::mem::transmute_copy(&ptiledresourceregionstartcoordinates),
19635 core::mem::transmute_copy(&ptiledresourceregionsizes),
19636 core::mem::transmute_copy(&ptilepool),
19637 core::mem::transmute_copy(&numranges),
19638 core::mem::transmute_copy(&prangeflags),
19639 core::mem::transmute_copy(&ptilepoolstartoffsets),
19640 core::mem::transmute_copy(&prangetilecounts),
19641 core::mem::transmute_copy(&flags),
19642 )
19643 .into()
19644 }
19645 }
19646 unsafe extern "system" fn CopyTileMappings<
19647 Identity: ID3D11DeviceContext2_Impl,
19648 const OFFSET: isize,
19649 >(
19650 this: *mut core::ffi::c_void,
19651 pdesttiledresource: *mut core::ffi::c_void,
19652 pdestregionstartcoordinate: *const D3D11_TILED_RESOURCE_COORDINATE,
19653 psourcetiledresource: *mut core::ffi::c_void,
19654 psourceregionstartcoordinate: *const D3D11_TILED_RESOURCE_COORDINATE,
19655 ptileregionsize: *const D3D11_TILE_REGION_SIZE,
19656 flags: u32,
19657 ) -> windows_core::HRESULT {
19658 unsafe {
19659 let this: &Identity =
19660 &*((this as *const *const ()).offset(OFFSET) as *const Identity);
19661 ID3D11DeviceContext2_Impl::CopyTileMappings(
19662 this,
19663 core::mem::transmute_copy(&pdesttiledresource),
19664 core::mem::transmute_copy(&pdestregionstartcoordinate),
19665 core::mem::transmute_copy(&psourcetiledresource),
19666 core::mem::transmute_copy(&psourceregionstartcoordinate),
19667 core::mem::transmute_copy(&ptileregionsize),
19668 core::mem::transmute_copy(&flags),
19669 )
19670 .into()
19671 }
19672 }
19673 unsafe extern "system" fn CopyTiles<
19674 Identity: ID3D11DeviceContext2_Impl,
19675 const OFFSET: isize,
19676 >(
19677 this: *mut core::ffi::c_void,
19678 ptiledresource: *mut core::ffi::c_void,
19679 ptileregionstartcoordinate: *const D3D11_TILED_RESOURCE_COORDINATE,
19680 ptileregionsize: *const D3D11_TILE_REGION_SIZE,
19681 pbuffer: *mut core::ffi::c_void,
19682 bufferstartoffsetinbytes: u64,
19683 flags: u32,
19684 ) {
19685 unsafe {
19686 let this: &Identity =
19687 &*((this as *const *const ()).offset(OFFSET) as *const Identity);
19688 ID3D11DeviceContext2_Impl::CopyTiles(
19689 this,
19690 core::mem::transmute_copy(&ptiledresource),
19691 core::mem::transmute_copy(&ptileregionstartcoordinate),
19692 core::mem::transmute_copy(&ptileregionsize),
19693 core::mem::transmute_copy(&pbuffer),
19694 core::mem::transmute_copy(&bufferstartoffsetinbytes),
19695 core::mem::transmute_copy(&flags),
19696 )
19697 }
19698 }
19699 unsafe extern "system" fn UpdateTiles<
19700 Identity: ID3D11DeviceContext2_Impl,
19701 const OFFSET: isize,
19702 >(
19703 this: *mut core::ffi::c_void,
19704 pdesttiledresource: *mut core::ffi::c_void,
19705 pdesttileregionstartcoordinate: *const D3D11_TILED_RESOURCE_COORDINATE,
19706 pdesttileregionsize: *const D3D11_TILE_REGION_SIZE,
19707 psourcetiledata: *const core::ffi::c_void,
19708 flags: u32,
19709 ) {
19710 unsafe {
19711 let this: &Identity =
19712 &*((this as *const *const ()).offset(OFFSET) as *const Identity);
19713 ID3D11DeviceContext2_Impl::UpdateTiles(
19714 this,
19715 core::mem::transmute_copy(&pdesttiledresource),
19716 core::mem::transmute_copy(&pdesttileregionstartcoordinate),
19717 core::mem::transmute_copy(&pdesttileregionsize),
19718 core::mem::transmute_copy(&psourcetiledata),
19719 core::mem::transmute_copy(&flags),
19720 )
19721 }
19722 }
19723 unsafe extern "system" fn ResizeTilePool<
19724 Identity: ID3D11DeviceContext2_Impl,
19725 const OFFSET: isize,
19726 >(
19727 this: *mut core::ffi::c_void,
19728 ptilepool: *mut core::ffi::c_void,
19729 newsizeinbytes: u64,
19730 ) -> windows_core::HRESULT {
19731 unsafe {
19732 let this: &Identity =
19733 &*((this as *const *const ()).offset(OFFSET) as *const Identity);
19734 ID3D11DeviceContext2_Impl::ResizeTilePool(
19735 this,
19736 core::mem::transmute_copy(&ptilepool),
19737 core::mem::transmute_copy(&newsizeinbytes),
19738 )
19739 .into()
19740 }
19741 }
19742 unsafe extern "system" fn TiledResourceBarrier<
19743 Identity: ID3D11DeviceContext2_Impl,
19744 const OFFSET: isize,
19745 >(
19746 this: *mut core::ffi::c_void,
19747 ptiledresourceorviewaccessbeforebarrier: *mut core::ffi::c_void,
19748 ptiledresourceorviewaccessafterbarrier: *mut core::ffi::c_void,
19749 ) {
19750 unsafe {
19751 let this: &Identity =
19752 &*((this as *const *const ()).offset(OFFSET) as *const Identity);
19753 ID3D11DeviceContext2_Impl::TiledResourceBarrier(
19754 this,
19755 core::mem::transmute_copy(&ptiledresourceorviewaccessbeforebarrier),
19756 core::mem::transmute_copy(&ptiledresourceorviewaccessafterbarrier),
19757 )
19758 }
19759 }
19760 unsafe extern "system" fn IsAnnotationEnabled<
19761 Identity: ID3D11DeviceContext2_Impl,
19762 const OFFSET: isize,
19763 >(
19764 this: *mut core::ffi::c_void,
19765 ) -> crate::Foundation::BOOL {
19766 unsafe {
19767 let this: &Identity =
19768 &*((this as *const *const ()).offset(OFFSET) as *const Identity);
19769 ID3D11DeviceContext2_Impl::IsAnnotationEnabled(this)
19770 }
19771 }
19772 unsafe extern "system" fn SetMarkerInt<
19773 Identity: ID3D11DeviceContext2_Impl,
19774 const OFFSET: isize,
19775 >(
19776 this: *mut core::ffi::c_void,
19777 plabel: crate::core_supplemental::PCWSTR,
19778 data: i32,
19779 ) {
19780 unsafe {
19781 let this: &Identity =
19782 &*((this as *const *const ()).offset(OFFSET) as *const Identity);
19783 ID3D11DeviceContext2_Impl::SetMarkerInt(
19784 this,
19785 core::mem::transmute(&plabel),
19786 core::mem::transmute_copy(&data),
19787 )
19788 }
19789 }
19790 unsafe extern "system" fn BeginEventInt<
19791 Identity: ID3D11DeviceContext2_Impl,
19792 const OFFSET: isize,
19793 >(
19794 this: *mut core::ffi::c_void,
19795 plabel: crate::core_supplemental::PCWSTR,
19796 data: i32,
19797 ) {
19798 unsafe {
19799 let this: &Identity =
19800 &*((this as *const *const ()).offset(OFFSET) as *const Identity);
19801 ID3D11DeviceContext2_Impl::BeginEventInt(
19802 this,
19803 core::mem::transmute(&plabel),
19804 core::mem::transmute_copy(&data),
19805 )
19806 }
19807 }
19808 unsafe extern "system" fn EndEvent<
19809 Identity: ID3D11DeviceContext2_Impl,
19810 const OFFSET: isize,
19811 >(
19812 this: *mut core::ffi::c_void,
19813 ) {
19814 unsafe {
19815 let this: &Identity =
19816 &*((this as *const *const ()).offset(OFFSET) as *const Identity);
19817 ID3D11DeviceContext2_Impl::EndEvent(this)
19818 }
19819 }
19820 Self {
19821 base__: ID3D11DeviceContext1_Vtbl::new::<Identity, OFFSET>(),
19822 UpdateTileMappings: UpdateTileMappings::<Identity, OFFSET>,
19823 CopyTileMappings: CopyTileMappings::<Identity, OFFSET>,
19824 CopyTiles: CopyTiles::<Identity, OFFSET>,
19825 UpdateTiles: UpdateTiles::<Identity, OFFSET>,
19826 ResizeTilePool: ResizeTilePool::<Identity, OFFSET>,
19827 TiledResourceBarrier: TiledResourceBarrier::<Identity, OFFSET>,
19828 IsAnnotationEnabled: IsAnnotationEnabled::<Identity, OFFSET>,
19829 SetMarkerInt: SetMarkerInt::<Identity, OFFSET>,
19830 BeginEventInt: BeginEventInt::<Identity, OFFSET>,
19831 EndEvent: EndEvent::<Identity, OFFSET>,
19832 }
19833 }
19834 pub fn matches(iid: &windows_core::GUID) -> bool {
19835 iid == &<ID3D11DeviceContext2 as windows_core::Interface>::IID
19836 || iid == &<ID3D11DeviceChild as windows_core::Interface>::IID
19837 || iid == &<ID3D11DeviceContext as windows_core::Interface>::IID
19838 || iid == &<ID3D11DeviceContext1 as windows_core::Interface>::IID
19839 }
19840}
19841#[cfg(all(
19842 feature = "Win32_Graphics_Direct3D",
19843 feature = "Win32_Graphics_Dxgi_Common"
19844))]
19845impl windows_core::RuntimeName for ID3D11DeviceContext2 {}
19846#[cfg(all(
19847 feature = "Win32_Graphics_Direct3D",
19848 feature = "Win32_Graphics_Dxgi_Common"
19849))]
19850unsafe impl Send for ID3D11DeviceContext2 {}
19851#[cfg(all(
19852 feature = "Win32_Graphics_Direct3D",
19853 feature = "Win32_Graphics_Dxgi_Common"
19854))]
19855unsafe impl Sync for ID3D11DeviceContext2 {}
19856windows_core::imp::define_interface!(
19857 ID3D11DeviceContext3,
19858 ID3D11DeviceContext3_Vtbl,
19859 0xb4e3c01d_e79e_4637_91b2_510e9f4c9b8f
19860);
19861impl core::ops::Deref for ID3D11DeviceContext3 {
19862 type Target = ID3D11DeviceContext2;
19863 fn deref(&self) -> &Self::Target {
19864 unsafe { core::mem::transmute(self) }
19865 }
19866}
19867windows_core::imp::interface_hierarchy!(
19868 ID3D11DeviceContext3,
19869 windows_core::IUnknown,
19870 ID3D11DeviceChild,
19871 ID3D11DeviceContext,
19872 ID3D11DeviceContext1,
19873 ID3D11DeviceContext2
19874);
19875impl ID3D11DeviceContext3 {
19876 pub unsafe fn Flush1(
19877 &self,
19878 contexttype: D3D11_CONTEXT_TYPE,
19879 hevent: Option<crate::Foundation::HANDLE>,
19880 ) {
19881 unsafe {
19882 (windows_core::Interface::vtable(self).Flush1)(
19883 windows_core::Interface::as_raw(self),
19884 contexttype,
19885 core::mem::transmute(hevent.unwrap_or_default()),
19886 )
19887 }
19888 }
19889 pub unsafe fn SetHardwareProtectionState(&self, hwprotectionenable: bool) {
19890 unsafe {
19891 (windows_core::Interface::vtable(self).SetHardwareProtectionState)(
19892 windows_core::Interface::as_raw(self),
19893 hwprotectionenable.into(),
19894 )
19895 }
19896 }
19897 pub unsafe fn GetHardwareProtectionState(&self) -> crate::Foundation::BOOL {
19898 unsafe {
19899 let mut result__ = core::mem::zeroed();
19900 (windows_core::Interface::vtable(self).GetHardwareProtectionState)(
19901 windows_core::Interface::as_raw(self),
19902 &mut result__,
19903 );
19904 result__
19905 }
19906 }
19907}
19908#[repr(C)]
19909pub struct ID3D11DeviceContext3_Vtbl {
19910 pub base__: ID3D11DeviceContext2_Vtbl,
19911 pub Flush1: unsafe extern "system" fn(
19912 *mut core::ffi::c_void,
19913 D3D11_CONTEXT_TYPE,
19914 crate::Foundation::HANDLE,
19915 ),
19916 pub SetHardwareProtectionState:
19917 unsafe extern "system" fn(*mut core::ffi::c_void, crate::Foundation::BOOL),
19918 pub GetHardwareProtectionState:
19919 unsafe extern "system" fn(*mut core::ffi::c_void, *mut crate::Foundation::BOOL),
19920}
19921#[cfg(all(
19922 feature = "Win32_Graphics_Direct3D",
19923 feature = "Win32_Graphics_Dxgi_Common"
19924))]
19925pub trait ID3D11DeviceContext3_Impl: ID3D11DeviceContext2_Impl {
19926 fn Flush1(&self, contexttype: D3D11_CONTEXT_TYPE, hevent: crate::Foundation::HANDLE);
19927 fn SetHardwareProtectionState(&self, hwprotectionenable: crate::Foundation::BOOL);
19928 fn GetHardwareProtectionState(&self, phwprotectionenable: *mut crate::Foundation::BOOL);
19929}
19930#[cfg(all(
19931 feature = "Win32_Graphics_Direct3D",
19932 feature = "Win32_Graphics_Dxgi_Common"
19933))]
19934impl ID3D11DeviceContext3_Vtbl {
19935 pub const fn new<Identity: ID3D11DeviceContext3_Impl, const OFFSET: isize>() -> Self {
19936 unsafe extern "system" fn Flush1<
19937 Identity: ID3D11DeviceContext3_Impl,
19938 const OFFSET: isize,
19939 >(
19940 this: *mut core::ffi::c_void,
19941 contexttype: D3D11_CONTEXT_TYPE,
19942 hevent: crate::Foundation::HANDLE,
19943 ) {
19944 unsafe {
19945 let this: &Identity =
19946 &*((this as *const *const ()).offset(OFFSET) as *const Identity);
19947 ID3D11DeviceContext3_Impl::Flush1(
19948 this,
19949 core::mem::transmute_copy(&contexttype),
19950 core::mem::transmute_copy(&hevent),
19951 )
19952 }
19953 }
19954 unsafe extern "system" fn SetHardwareProtectionState<
19955 Identity: ID3D11DeviceContext3_Impl,
19956 const OFFSET: isize,
19957 >(
19958 this: *mut core::ffi::c_void,
19959 hwprotectionenable: crate::Foundation::BOOL,
19960 ) {
19961 unsafe {
19962 let this: &Identity =
19963 &*((this as *const *const ()).offset(OFFSET) as *const Identity);
19964 ID3D11DeviceContext3_Impl::SetHardwareProtectionState(
19965 this,
19966 core::mem::transmute_copy(&hwprotectionenable),
19967 )
19968 }
19969 }
19970 unsafe extern "system" fn GetHardwareProtectionState<
19971 Identity: ID3D11DeviceContext3_Impl,
19972 const OFFSET: isize,
19973 >(
19974 this: *mut core::ffi::c_void,
19975 phwprotectionenable: *mut crate::Foundation::BOOL,
19976 ) {
19977 unsafe {
19978 let this: &Identity =
19979 &*((this as *const *const ()).offset(OFFSET) as *const Identity);
19980 ID3D11DeviceContext3_Impl::GetHardwareProtectionState(
19981 this,
19982 core::mem::transmute_copy(&phwprotectionenable),
19983 )
19984 }
19985 }
19986 Self {
19987 base__: ID3D11DeviceContext2_Vtbl::new::<Identity, OFFSET>(),
19988 Flush1: Flush1::<Identity, OFFSET>,
19989 SetHardwareProtectionState: SetHardwareProtectionState::<Identity, OFFSET>,
19990 GetHardwareProtectionState: GetHardwareProtectionState::<Identity, OFFSET>,
19991 }
19992 }
19993 pub fn matches(iid: &windows_core::GUID) -> bool {
19994 iid == &<ID3D11DeviceContext3 as windows_core::Interface>::IID
19995 || iid == &<ID3D11DeviceChild as windows_core::Interface>::IID
19996 || iid == &<ID3D11DeviceContext as windows_core::Interface>::IID
19997 || iid == &<ID3D11DeviceContext1 as windows_core::Interface>::IID
19998 || iid == &<ID3D11DeviceContext2 as windows_core::Interface>::IID
19999 }
20000}
20001#[cfg(all(
20002 feature = "Win32_Graphics_Direct3D",
20003 feature = "Win32_Graphics_Dxgi_Common"
20004))]
20005impl windows_core::RuntimeName for ID3D11DeviceContext3 {}
20006#[cfg(all(
20007 feature = "Win32_Graphics_Direct3D",
20008 feature = "Win32_Graphics_Dxgi_Common"
20009))]
20010unsafe impl Send for ID3D11DeviceContext3 {}
20011#[cfg(all(
20012 feature = "Win32_Graphics_Direct3D",
20013 feature = "Win32_Graphics_Dxgi_Common"
20014))]
20015unsafe impl Sync for ID3D11DeviceContext3 {}
20016windows_core::imp::define_interface!(
20017 ID3D11DeviceContext4,
20018 ID3D11DeviceContext4_Vtbl,
20019 0x917600da_f58c_4c33_98d8_3e15b390fa24
20020);
20021impl core::ops::Deref for ID3D11DeviceContext4 {
20022 type Target = ID3D11DeviceContext3;
20023 fn deref(&self) -> &Self::Target {
20024 unsafe { core::mem::transmute(self) }
20025 }
20026}
20027windows_core::imp::interface_hierarchy!(
20028 ID3D11DeviceContext4,
20029 windows_core::IUnknown,
20030 ID3D11DeviceChild,
20031 ID3D11DeviceContext,
20032 ID3D11DeviceContext1,
20033 ID3D11DeviceContext2,
20034 ID3D11DeviceContext3
20035);
20036impl ID3D11DeviceContext4 {
20037 pub unsafe fn Signal<P0>(&self, pfence: P0, value: u64) -> windows_core::Result<()>
20038 where
20039 P0: windows_core::Param<ID3D11Fence>,
20040 {
20041 unsafe {
20042 (windows_core::Interface::vtable(self).Signal)(
20043 windows_core::Interface::as_raw(self),
20044 pfence.param().abi(),
20045 value,
20046 )
20047 .ok()
20048 }
20049 }
20050 pub unsafe fn Wait<P0>(&self, pfence: P0, value: u64) -> windows_core::Result<()>
20051 where
20052 P0: windows_core::Param<ID3D11Fence>,
20053 {
20054 unsafe {
20055 (windows_core::Interface::vtable(self).Wait)(
20056 windows_core::Interface::as_raw(self),
20057 pfence.param().abi(),
20058 value,
20059 )
20060 .ok()
20061 }
20062 }
20063}
20064#[repr(C)]
20065pub struct ID3D11DeviceContext4_Vtbl {
20066 pub base__: ID3D11DeviceContext3_Vtbl,
20067 pub Signal: unsafe extern "system" fn(
20068 *mut core::ffi::c_void,
20069 *mut core::ffi::c_void,
20070 u64,
20071 ) -> windows_core::HRESULT,
20072 pub Wait: unsafe extern "system" fn(
20073 *mut core::ffi::c_void,
20074 *mut core::ffi::c_void,
20075 u64,
20076 ) -> windows_core::HRESULT,
20077}
20078#[cfg(all(
20079 feature = "Win32_Graphics_Direct3D",
20080 feature = "Win32_Graphics_Dxgi_Common"
20081))]
20082pub trait ID3D11DeviceContext4_Impl: ID3D11DeviceContext3_Impl {
20083 fn Signal(
20084 &self,
20085 pfence: windows_core::Ref<'_, ID3D11Fence>,
20086 value: u64,
20087 ) -> windows_core::Result<()>;
20088 fn Wait(
20089 &self,
20090 pfence: windows_core::Ref<'_, ID3D11Fence>,
20091 value: u64,
20092 ) -> windows_core::Result<()>;
20093}
20094#[cfg(all(
20095 feature = "Win32_Graphics_Direct3D",
20096 feature = "Win32_Graphics_Dxgi_Common"
20097))]
20098impl ID3D11DeviceContext4_Vtbl {
20099 pub const fn new<Identity: ID3D11DeviceContext4_Impl, const OFFSET: isize>() -> Self {
20100 unsafe extern "system" fn Signal<
20101 Identity: ID3D11DeviceContext4_Impl,
20102 const OFFSET: isize,
20103 >(
20104 this: *mut core::ffi::c_void,
20105 pfence: *mut core::ffi::c_void,
20106 value: u64,
20107 ) -> windows_core::HRESULT {
20108 unsafe {
20109 let this: &Identity =
20110 &*((this as *const *const ()).offset(OFFSET) as *const Identity);
20111 ID3D11DeviceContext4_Impl::Signal(
20112 this,
20113 core::mem::transmute_copy(&pfence),
20114 core::mem::transmute_copy(&value),
20115 )
20116 .into()
20117 }
20118 }
20119 unsafe extern "system" fn Wait<Identity: ID3D11DeviceContext4_Impl, const OFFSET: isize>(
20120 this: *mut core::ffi::c_void,
20121 pfence: *mut core::ffi::c_void,
20122 value: u64,
20123 ) -> windows_core::HRESULT {
20124 unsafe {
20125 let this: &Identity =
20126 &*((this as *const *const ()).offset(OFFSET) as *const Identity);
20127 ID3D11DeviceContext4_Impl::Wait(
20128 this,
20129 core::mem::transmute_copy(&pfence),
20130 core::mem::transmute_copy(&value),
20131 )
20132 .into()
20133 }
20134 }
20135 Self {
20136 base__: ID3D11DeviceContext3_Vtbl::new::<Identity, OFFSET>(),
20137 Signal: Signal::<Identity, OFFSET>,
20138 Wait: Wait::<Identity, OFFSET>,
20139 }
20140 }
20141 pub fn matches(iid: &windows_core::GUID) -> bool {
20142 iid == &<ID3D11DeviceContext4 as windows_core::Interface>::IID
20143 || iid == &<ID3D11DeviceChild as windows_core::Interface>::IID
20144 || iid == &<ID3D11DeviceContext as windows_core::Interface>::IID
20145 || iid == &<ID3D11DeviceContext1 as windows_core::Interface>::IID
20146 || iid == &<ID3D11DeviceContext2 as windows_core::Interface>::IID
20147 || iid == &<ID3D11DeviceContext3 as windows_core::Interface>::IID
20148 }
20149}
20150#[cfg(all(
20151 feature = "Win32_Graphics_Direct3D",
20152 feature = "Win32_Graphics_Dxgi_Common"
20153))]
20154impl windows_core::RuntimeName for ID3D11DeviceContext4 {}
20155#[cfg(all(
20156 feature = "Win32_Graphics_Direct3D",
20157 feature = "Win32_Graphics_Dxgi_Common"
20158))]
20159unsafe impl Send for ID3D11DeviceContext4 {}
20160#[cfg(all(
20161 feature = "Win32_Graphics_Direct3D",
20162 feature = "Win32_Graphics_Dxgi_Common"
20163))]
20164unsafe impl Sync for ID3D11DeviceContext4 {}
20165windows_core::imp::define_interface!(
20166 ID3D11DomainShader,
20167 ID3D11DomainShader_Vtbl,
20168 0xf582c508_0f36_490c_9977_31eece268cfa
20169);
20170impl core::ops::Deref for ID3D11DomainShader {
20171 type Target = ID3D11DeviceChild;
20172 fn deref(&self) -> &Self::Target {
20173 unsafe { core::mem::transmute(self) }
20174 }
20175}
20176windows_core::imp::interface_hierarchy!(
20177 ID3D11DomainShader,
20178 windows_core::IUnknown,
20179 ID3D11DeviceChild
20180);
20181#[repr(C)]
20182pub struct ID3D11DomainShader_Vtbl {
20183 pub base__: ID3D11DeviceChild_Vtbl,
20184}
20185pub trait ID3D11DomainShader_Impl: ID3D11DeviceChild_Impl {}
20186impl ID3D11DomainShader_Vtbl {
20187 pub const fn new<Identity: ID3D11DomainShader_Impl, const OFFSET: isize>() -> Self {
20188 Self {
20189 base__: ID3D11DeviceChild_Vtbl::new::<Identity, OFFSET>(),
20190 }
20191 }
20192 pub fn matches(iid: &windows_core::GUID) -> bool {
20193 iid == &<ID3D11DomainShader as windows_core::Interface>::IID
20194 || iid == &<ID3D11DeviceChild as windows_core::Interface>::IID
20195 }
20196}
20197impl windows_core::RuntimeName for ID3D11DomainShader {}
20198unsafe impl Send for ID3D11DomainShader {}
20199unsafe impl Sync for ID3D11DomainShader {}
20200windows_core::imp::define_interface!(
20201 ID3D11Fence,
20202 ID3D11Fence_Vtbl,
20203 0xaffde9d1_1df7_4bb7_8a34_0f46251dab80
20204);
20205impl core::ops::Deref for ID3D11Fence {
20206 type Target = ID3D11DeviceChild;
20207 fn deref(&self) -> &Self::Target {
20208 unsafe { core::mem::transmute(self) }
20209 }
20210}
20211windows_core::imp::interface_hierarchy!(ID3D11Fence, windows_core::IUnknown, ID3D11DeviceChild);
20212impl ID3D11Fence {
20213 #[cfg(feature = "Win32_Security")]
20214 pub unsafe fn CreateSharedHandle<P2>(
20215 &self,
20216 pattributes: Option<*const crate::Security::SECURITY_ATTRIBUTES>,
20217 dwaccess: u32,
20218 lpname: P2,
20219 ) -> windows_core::Result<crate::Foundation::HANDLE>
20220 where
20221 P2: windows_core::Param<crate::core_supplemental::PCWSTR>,
20222 {
20223 unsafe {
20224 let mut result__ = core::mem::zeroed();
20225 (windows_core::Interface::vtable(self).CreateSharedHandle)(
20226 windows_core::Interface::as_raw(self),
20227 core::mem::transmute(pattributes.unwrap_or(core::mem::zeroed())),
20228 dwaccess,
20229 lpname.param().abi(),
20230 &mut result__,
20231 )
20232 .map(|| result__)
20233 }
20234 }
20235 pub unsafe fn GetCompletedValue(&self) -> u64 {
20236 unsafe {
20237 (windows_core::Interface::vtable(self).GetCompletedValue)(
20238 windows_core::Interface::as_raw(self),
20239 )
20240 }
20241 }
20242 pub unsafe fn SetEventOnCompletion(
20243 &self,
20244 value: u64,
20245 hevent: crate::Foundation::HANDLE,
20246 ) -> windows_core::Result<()> {
20247 unsafe {
20248 (windows_core::Interface::vtable(self).SetEventOnCompletion)(
20249 windows_core::Interface::as_raw(self),
20250 value,
20251 hevent,
20252 )
20253 .ok()
20254 }
20255 }
20256}
20257#[repr(C)]
20258pub struct ID3D11Fence_Vtbl {
20259 pub base__: ID3D11DeviceChild_Vtbl,
20260 #[cfg(feature = "Win32_Security")]
20261 pub CreateSharedHandle: unsafe extern "system" fn(
20262 *mut core::ffi::c_void,
20263 *const crate::Security::SECURITY_ATTRIBUTES,
20264 u32,
20265 crate::core_supplemental::PCWSTR,
20266 *mut crate::Foundation::HANDLE,
20267 ) -> windows_core::HRESULT,
20268 #[cfg(not(feature = "Win32_Security"))]
20269 CreateSharedHandle: usize,
20270 pub GetCompletedValue: unsafe extern "system" fn(*mut core::ffi::c_void) -> u64,
20271 pub SetEventOnCompletion: unsafe extern "system" fn(
20272 *mut core::ffi::c_void,
20273 u64,
20274 crate::Foundation::HANDLE,
20275 ) -> windows_core::HRESULT,
20276}
20277#[cfg(feature = "Win32_Security")]
20278pub trait ID3D11Fence_Impl: ID3D11DeviceChild_Impl {
20279 fn CreateSharedHandle(
20280 &self,
20281 pattributes: *const crate::Security::SECURITY_ATTRIBUTES,
20282 dwaccess: u32,
20283 lpname: &crate::core_supplemental::PCWSTR,
20284 ) -> windows_core::Result<crate::Foundation::HANDLE>;
20285 fn GetCompletedValue(&self) -> u64;
20286 fn SetEventOnCompletion(
20287 &self,
20288 value: u64,
20289 hevent: crate::Foundation::HANDLE,
20290 ) -> windows_core::Result<()>;
20291}
20292#[cfg(feature = "Win32_Security")]
20293impl ID3D11Fence_Vtbl {
20294 pub const fn new<Identity: ID3D11Fence_Impl, const OFFSET: isize>() -> Self {
20295 unsafe extern "system" fn CreateSharedHandle<
20296 Identity: ID3D11Fence_Impl,
20297 const OFFSET: isize,
20298 >(
20299 this: *mut core::ffi::c_void,
20300 pattributes: *const crate::Security::SECURITY_ATTRIBUTES,
20301 dwaccess: u32,
20302 lpname: crate::core_supplemental::PCWSTR,
20303 phandle: *mut crate::Foundation::HANDLE,
20304 ) -> windows_core::HRESULT {
20305 unsafe {
20306 let this: &Identity =
20307 &*((this as *const *const ()).offset(OFFSET) as *const Identity);
20308 match ID3D11Fence_Impl::CreateSharedHandle(
20309 this,
20310 core::mem::transmute_copy(&pattributes),
20311 core::mem::transmute_copy(&dwaccess),
20312 core::mem::transmute(&lpname),
20313 ) {
20314 Ok(ok__) => {
20315 phandle.write(core::mem::transmute(ok__));
20316 windows_core::HRESULT(0)
20317 }
20318 Err(err) => err.into(),
20319 }
20320 }
20321 }
20322 unsafe extern "system" fn GetCompletedValue<
20323 Identity: ID3D11Fence_Impl,
20324 const OFFSET: isize,
20325 >(
20326 this: *mut core::ffi::c_void,
20327 ) -> u64 {
20328 unsafe {
20329 let this: &Identity =
20330 &*((this as *const *const ()).offset(OFFSET) as *const Identity);
20331 ID3D11Fence_Impl::GetCompletedValue(this)
20332 }
20333 }
20334 unsafe extern "system" fn SetEventOnCompletion<
20335 Identity: ID3D11Fence_Impl,
20336 const OFFSET: isize,
20337 >(
20338 this: *mut core::ffi::c_void,
20339 value: u64,
20340 hevent: crate::Foundation::HANDLE,
20341 ) -> windows_core::HRESULT {
20342 unsafe {
20343 let this: &Identity =
20344 &*((this as *const *const ()).offset(OFFSET) as *const Identity);
20345 ID3D11Fence_Impl::SetEventOnCompletion(
20346 this,
20347 core::mem::transmute_copy(&value),
20348 core::mem::transmute_copy(&hevent),
20349 )
20350 .into()
20351 }
20352 }
20353 Self {
20354 base__: ID3D11DeviceChild_Vtbl::new::<Identity, OFFSET>(),
20355 CreateSharedHandle: CreateSharedHandle::<Identity, OFFSET>,
20356 GetCompletedValue: GetCompletedValue::<Identity, OFFSET>,
20357 SetEventOnCompletion: SetEventOnCompletion::<Identity, OFFSET>,
20358 }
20359 }
20360 pub fn matches(iid: &windows_core::GUID) -> bool {
20361 iid == &<ID3D11Fence as windows_core::Interface>::IID
20362 || iid == &<ID3D11DeviceChild as windows_core::Interface>::IID
20363 }
20364}
20365#[cfg(feature = "Win32_Security")]
20366impl windows_core::RuntimeName for ID3D11Fence {}
20367#[cfg(feature = "Win32_Security")]
20368unsafe impl Send for ID3D11Fence {}
20369#[cfg(feature = "Win32_Security")]
20370unsafe impl Sync for ID3D11Fence {}
20371windows_core::imp::define_interface!(
20372 ID3D11FunctionLinkingGraph,
20373 ID3D11FunctionLinkingGraph_Vtbl,
20374 0x54133220_1ce8_43d3_8236_9855c5ceecff
20375);
20376windows_core::imp::interface_hierarchy!(ID3D11FunctionLinkingGraph, windows_core::IUnknown);
20377impl ID3D11FunctionLinkingGraph {
20378 #[cfg(feature = "Win32_Graphics_Direct3D")]
20379 pub unsafe fn CreateModuleInstance(
20380 &self,
20381 ppmoduleinstance: *mut Option<ID3D11ModuleInstance>,
20382 pperrorbuffer: Option<*mut Option<super::Direct3D::ID3DBlob>>,
20383 ) -> windows_core::Result<()> {
20384 unsafe {
20385 (windows_core::Interface::vtable(self).CreateModuleInstance)(
20386 windows_core::Interface::as_raw(self),
20387 core::mem::transmute(ppmoduleinstance),
20388 core::mem::transmute(pperrorbuffer.unwrap_or(core::mem::zeroed())),
20389 )
20390 .ok()
20391 }
20392 }
20393 #[cfg(feature = "Win32_Graphics_Direct3D")]
20394 pub unsafe fn SetInputSignature(
20395 &self,
20396 pinputparameters: &[D3D11_PARAMETER_DESC],
20397 ) -> windows_core::Result<ID3D11LinkingNode> {
20398 unsafe {
20399 let mut result__ = core::mem::zeroed();
20400 (windows_core::Interface::vtable(self).SetInputSignature)(
20401 windows_core::Interface::as_raw(self),
20402 core::mem::transmute(pinputparameters.as_ptr()),
20403 pinputparameters.len().try_into().unwrap(),
20404 &mut result__,
20405 )
20406 .and_then(|| windows_core::Type::from_abi(result__))
20407 }
20408 }
20409 #[cfg(feature = "Win32_Graphics_Direct3D")]
20410 pub unsafe fn SetOutputSignature(
20411 &self,
20412 poutputparameters: &[D3D11_PARAMETER_DESC],
20413 ) -> windows_core::Result<ID3D11LinkingNode> {
20414 unsafe {
20415 let mut result__ = core::mem::zeroed();
20416 (windows_core::Interface::vtable(self).SetOutputSignature)(
20417 windows_core::Interface::as_raw(self),
20418 core::mem::transmute(poutputparameters.as_ptr()),
20419 poutputparameters.len().try_into().unwrap(),
20420 &mut result__,
20421 )
20422 .and_then(|| windows_core::Type::from_abi(result__))
20423 }
20424 }
20425 pub unsafe fn CallFunction<P0, P1, P2>(
20426 &self,
20427 pmoduleinstancenamespace: P0,
20428 pmodulewithfunctionprototype: P1,
20429 pfunctionname: P2,
20430 ) -> windows_core::Result<ID3D11LinkingNode>
20431 where
20432 P0: windows_core::Param<crate::core_supplemental::PCSTR>,
20433 P1: windows_core::Param<ID3D11Module>,
20434 P2: windows_core::Param<crate::core_supplemental::PCSTR>,
20435 {
20436 unsafe {
20437 let mut result__ = core::mem::zeroed();
20438 (windows_core::Interface::vtable(self).CallFunction)(
20439 windows_core::Interface::as_raw(self),
20440 pmoduleinstancenamespace.param().abi(),
20441 pmodulewithfunctionprototype.param().abi(),
20442 pfunctionname.param().abi(),
20443 &mut result__,
20444 )
20445 .and_then(|| windows_core::Type::from_abi(result__))
20446 }
20447 }
20448 pub unsafe fn PassValue<P0, P2>(
20449 &self,
20450 psrcnode: P0,
20451 srcparameterindex: i32,
20452 pdstnode: P2,
20453 dstparameterindex: i32,
20454 ) -> windows_core::Result<()>
20455 where
20456 P0: windows_core::Param<ID3D11LinkingNode>,
20457 P2: windows_core::Param<ID3D11LinkingNode>,
20458 {
20459 unsafe {
20460 (windows_core::Interface::vtable(self).PassValue)(
20461 windows_core::Interface::as_raw(self),
20462 psrcnode.param().abi(),
20463 srcparameterindex,
20464 pdstnode.param().abi(),
20465 dstparameterindex,
20466 )
20467 .ok()
20468 }
20469 }
20470 pub unsafe fn PassValueWithSwizzle<P0, P2, P3, P5>(
20471 &self,
20472 psrcnode: P0,
20473 srcparameterindex: i32,
20474 psrcswizzle: P2,
20475 pdstnode: P3,
20476 dstparameterindex: i32,
20477 pdstswizzle: P5,
20478 ) -> windows_core::Result<()>
20479 where
20480 P0: windows_core::Param<ID3D11LinkingNode>,
20481 P2: windows_core::Param<crate::core_supplemental::PCSTR>,
20482 P3: windows_core::Param<ID3D11LinkingNode>,
20483 P5: windows_core::Param<crate::core_supplemental::PCSTR>,
20484 {
20485 unsafe {
20486 (windows_core::Interface::vtable(self).PassValueWithSwizzle)(
20487 windows_core::Interface::as_raw(self),
20488 psrcnode.param().abi(),
20489 srcparameterindex,
20490 psrcswizzle.param().abi(),
20491 pdstnode.param().abi(),
20492 dstparameterindex,
20493 pdstswizzle.param().abi(),
20494 )
20495 .ok()
20496 }
20497 }
20498 #[cfg(feature = "Win32_Graphics_Direct3D")]
20499 pub unsafe fn GetLastError(
20500 &self,
20501 pperrorbuffer: Option<*mut Option<super::Direct3D::ID3DBlob>>,
20502 ) -> windows_core::Result<()> {
20503 unsafe {
20504 (windows_core::Interface::vtable(self).GetLastError)(
20505 windows_core::Interface::as_raw(self),
20506 core::mem::transmute(pperrorbuffer.unwrap_or(core::mem::zeroed())),
20507 )
20508 .ok()
20509 }
20510 }
20511 #[cfg(feature = "Win32_Graphics_Direct3D")]
20512 pub unsafe fn GenerateHlsl(
20513 &self,
20514 uflags: u32,
20515 ) -> windows_core::Result<super::Direct3D::ID3DBlob> {
20516 unsafe {
20517 let mut result__ = core::mem::zeroed();
20518 (windows_core::Interface::vtable(self).GenerateHlsl)(
20519 windows_core::Interface::as_raw(self),
20520 uflags,
20521 &mut result__,
20522 )
20523 .and_then(|| windows_core::Type::from_abi(result__))
20524 }
20525 }
20526}
20527#[repr(C)]
20528pub struct ID3D11FunctionLinkingGraph_Vtbl {
20529 pub base__: windows_core::IUnknown_Vtbl,
20530 #[cfg(feature = "Win32_Graphics_Direct3D")]
20531 pub CreateModuleInstance: unsafe extern "system" fn(
20532 *mut core::ffi::c_void,
20533 *mut *mut core::ffi::c_void,
20534 *mut *mut core::ffi::c_void,
20535 ) -> windows_core::HRESULT,
20536 #[cfg(not(feature = "Win32_Graphics_Direct3D"))]
20537 CreateModuleInstance: usize,
20538 #[cfg(feature = "Win32_Graphics_Direct3D")]
20539 pub SetInputSignature: unsafe extern "system" fn(
20540 *mut core::ffi::c_void,
20541 *const D3D11_PARAMETER_DESC,
20542 u32,
20543 *mut *mut core::ffi::c_void,
20544 ) -> windows_core::HRESULT,
20545 #[cfg(not(feature = "Win32_Graphics_Direct3D"))]
20546 SetInputSignature: usize,
20547 #[cfg(feature = "Win32_Graphics_Direct3D")]
20548 pub SetOutputSignature: unsafe extern "system" fn(
20549 *mut core::ffi::c_void,
20550 *const D3D11_PARAMETER_DESC,
20551 u32,
20552 *mut *mut core::ffi::c_void,
20553 ) -> windows_core::HRESULT,
20554 #[cfg(not(feature = "Win32_Graphics_Direct3D"))]
20555 SetOutputSignature: usize,
20556 pub CallFunction: unsafe extern "system" fn(
20557 *mut core::ffi::c_void,
20558 crate::core_supplemental::PCSTR,
20559 *mut core::ffi::c_void,
20560 crate::core_supplemental::PCSTR,
20561 *mut *mut core::ffi::c_void,
20562 ) -> windows_core::HRESULT,
20563 pub PassValue: unsafe extern "system" fn(
20564 *mut core::ffi::c_void,
20565 *mut core::ffi::c_void,
20566 i32,
20567 *mut core::ffi::c_void,
20568 i32,
20569 ) -> windows_core::HRESULT,
20570 pub PassValueWithSwizzle: unsafe extern "system" fn(
20571 *mut core::ffi::c_void,
20572 *mut core::ffi::c_void,
20573 i32,
20574 crate::core_supplemental::PCSTR,
20575 *mut core::ffi::c_void,
20576 i32,
20577 crate::core_supplemental::PCSTR,
20578 ) -> windows_core::HRESULT,
20579 #[cfg(feature = "Win32_Graphics_Direct3D")]
20580 pub GetLastError: unsafe extern "system" fn(
20581 *mut core::ffi::c_void,
20582 *mut *mut core::ffi::c_void,
20583 ) -> windows_core::HRESULT,
20584 #[cfg(not(feature = "Win32_Graphics_Direct3D"))]
20585 GetLastError: usize,
20586 #[cfg(feature = "Win32_Graphics_Direct3D")]
20587 pub GenerateHlsl: unsafe extern "system" fn(
20588 *mut core::ffi::c_void,
20589 u32,
20590 *mut *mut core::ffi::c_void,
20591 ) -> windows_core::HRESULT,
20592 #[cfg(not(feature = "Win32_Graphics_Direct3D"))]
20593 GenerateHlsl: usize,
20594}
20595#[cfg(feature = "Win32_Graphics_Direct3D")]
20596pub trait ID3D11FunctionLinkingGraph_Impl: windows_core::IUnknownImpl {
20597 fn CreateModuleInstance(
20598 &self,
20599 ppmoduleinstance: windows_core::OutRef<'_, ID3D11ModuleInstance>,
20600 pperrorbuffer: windows_core::OutRef<'_, super::Direct3D::ID3DBlob>,
20601 ) -> windows_core::Result<()>;
20602 fn SetInputSignature(
20603 &self,
20604 pinputparameters: *const D3D11_PARAMETER_DESC,
20605 cinputparameters: u32,
20606 ) -> windows_core::Result<ID3D11LinkingNode>;
20607 fn SetOutputSignature(
20608 &self,
20609 poutputparameters: *const D3D11_PARAMETER_DESC,
20610 coutputparameters: u32,
20611 ) -> windows_core::Result<ID3D11LinkingNode>;
20612 fn CallFunction(
20613 &self,
20614 pmoduleinstancenamespace: &crate::core_supplemental::PCSTR,
20615 pmodulewithfunctionprototype: windows_core::Ref<'_, ID3D11Module>,
20616 pfunctionname: &crate::core_supplemental::PCSTR,
20617 ) -> windows_core::Result<ID3D11LinkingNode>;
20618 fn PassValue(
20619 &self,
20620 psrcnode: windows_core::Ref<'_, ID3D11LinkingNode>,
20621 srcparameterindex: i32,
20622 pdstnode: windows_core::Ref<'_, ID3D11LinkingNode>,
20623 dstparameterindex: i32,
20624 ) -> windows_core::Result<()>;
20625 fn PassValueWithSwizzle(
20626 &self,
20627 psrcnode: windows_core::Ref<'_, ID3D11LinkingNode>,
20628 srcparameterindex: i32,
20629 psrcswizzle: &crate::core_supplemental::PCSTR,
20630 pdstnode: windows_core::Ref<'_, ID3D11LinkingNode>,
20631 dstparameterindex: i32,
20632 pdstswizzle: &crate::core_supplemental::PCSTR,
20633 ) -> windows_core::Result<()>;
20634 fn GetLastError(
20635 &self,
20636 pperrorbuffer: windows_core::OutRef<'_, super::Direct3D::ID3DBlob>,
20637 ) -> windows_core::Result<()>;
20638 fn GenerateHlsl(&self, uflags: u32) -> windows_core::Result<super::Direct3D::ID3DBlob>;
20639}
20640#[cfg(feature = "Win32_Graphics_Direct3D")]
20641impl ID3D11FunctionLinkingGraph_Vtbl {
20642 pub const fn new<Identity: ID3D11FunctionLinkingGraph_Impl, const OFFSET: isize>() -> Self {
20643 unsafe extern "system" fn CreateModuleInstance<
20644 Identity: ID3D11FunctionLinkingGraph_Impl,
20645 const OFFSET: isize,
20646 >(
20647 this: *mut core::ffi::c_void,
20648 ppmoduleinstance: *mut *mut core::ffi::c_void,
20649 pperrorbuffer: *mut *mut core::ffi::c_void,
20650 ) -> windows_core::HRESULT {
20651 unsafe {
20652 let this: &Identity =
20653 &*((this as *const *const ()).offset(OFFSET) as *const Identity);
20654 ID3D11FunctionLinkingGraph_Impl::CreateModuleInstance(
20655 this,
20656 core::mem::transmute_copy(&ppmoduleinstance),
20657 core::mem::transmute_copy(&pperrorbuffer),
20658 )
20659 .into()
20660 }
20661 }
20662 unsafe extern "system" fn SetInputSignature<
20663 Identity: ID3D11FunctionLinkingGraph_Impl,
20664 const OFFSET: isize,
20665 >(
20666 this: *mut core::ffi::c_void,
20667 pinputparameters: *const D3D11_PARAMETER_DESC,
20668 cinputparameters: u32,
20669 ppinputnode: *mut *mut core::ffi::c_void,
20670 ) -> windows_core::HRESULT {
20671 unsafe {
20672 let this: &Identity =
20673 &*((this as *const *const ()).offset(OFFSET) as *const Identity);
20674 match ID3D11FunctionLinkingGraph_Impl::SetInputSignature(
20675 this,
20676 core::mem::transmute_copy(&pinputparameters),
20677 core::mem::transmute_copy(&cinputparameters),
20678 ) {
20679 Ok(ok__) => {
20680 ppinputnode.write(core::mem::transmute(ok__));
20681 windows_core::HRESULT(0)
20682 }
20683 Err(err) => err.into(),
20684 }
20685 }
20686 }
20687 unsafe extern "system" fn SetOutputSignature<
20688 Identity: ID3D11FunctionLinkingGraph_Impl,
20689 const OFFSET: isize,
20690 >(
20691 this: *mut core::ffi::c_void,
20692 poutputparameters: *const D3D11_PARAMETER_DESC,
20693 coutputparameters: u32,
20694 ppoutputnode: *mut *mut core::ffi::c_void,
20695 ) -> windows_core::HRESULT {
20696 unsafe {
20697 let this: &Identity =
20698 &*((this as *const *const ()).offset(OFFSET) as *const Identity);
20699 match ID3D11FunctionLinkingGraph_Impl::SetOutputSignature(
20700 this,
20701 core::mem::transmute_copy(&poutputparameters),
20702 core::mem::transmute_copy(&coutputparameters),
20703 ) {
20704 Ok(ok__) => {
20705 ppoutputnode.write(core::mem::transmute(ok__));
20706 windows_core::HRESULT(0)
20707 }
20708 Err(err) => err.into(),
20709 }
20710 }
20711 }
20712 unsafe extern "system" fn CallFunction<
20713 Identity: ID3D11FunctionLinkingGraph_Impl,
20714 const OFFSET: isize,
20715 >(
20716 this: *mut core::ffi::c_void,
20717 pmoduleinstancenamespace: crate::core_supplemental::PCSTR,
20718 pmodulewithfunctionprototype: *mut core::ffi::c_void,
20719 pfunctionname: crate::core_supplemental::PCSTR,
20720 ppcallnode: *mut *mut core::ffi::c_void,
20721 ) -> windows_core::HRESULT {
20722 unsafe {
20723 let this: &Identity =
20724 &*((this as *const *const ()).offset(OFFSET) as *const Identity);
20725 match ID3D11FunctionLinkingGraph_Impl::CallFunction(
20726 this,
20727 core::mem::transmute(&pmoduleinstancenamespace),
20728 core::mem::transmute_copy(&pmodulewithfunctionprototype),
20729 core::mem::transmute(&pfunctionname),
20730 ) {
20731 Ok(ok__) => {
20732 ppcallnode.write(core::mem::transmute(ok__));
20733 windows_core::HRESULT(0)
20734 }
20735 Err(err) => err.into(),
20736 }
20737 }
20738 }
20739 unsafe extern "system" fn PassValue<
20740 Identity: ID3D11FunctionLinkingGraph_Impl,
20741 const OFFSET: isize,
20742 >(
20743 this: *mut core::ffi::c_void,
20744 psrcnode: *mut core::ffi::c_void,
20745 srcparameterindex: i32,
20746 pdstnode: *mut core::ffi::c_void,
20747 dstparameterindex: i32,
20748 ) -> windows_core::HRESULT {
20749 unsafe {
20750 let this: &Identity =
20751 &*((this as *const *const ()).offset(OFFSET) as *const Identity);
20752 ID3D11FunctionLinkingGraph_Impl::PassValue(
20753 this,
20754 core::mem::transmute_copy(&psrcnode),
20755 core::mem::transmute_copy(&srcparameterindex),
20756 core::mem::transmute_copy(&pdstnode),
20757 core::mem::transmute_copy(&dstparameterindex),
20758 )
20759 .into()
20760 }
20761 }
20762 unsafe extern "system" fn PassValueWithSwizzle<
20763 Identity: ID3D11FunctionLinkingGraph_Impl,
20764 const OFFSET: isize,
20765 >(
20766 this: *mut core::ffi::c_void,
20767 psrcnode: *mut core::ffi::c_void,
20768 srcparameterindex: i32,
20769 psrcswizzle: crate::core_supplemental::PCSTR,
20770 pdstnode: *mut core::ffi::c_void,
20771 dstparameterindex: i32,
20772 pdstswizzle: crate::core_supplemental::PCSTR,
20773 ) -> windows_core::HRESULT {
20774 unsafe {
20775 let this: &Identity =
20776 &*((this as *const *const ()).offset(OFFSET) as *const Identity);
20777 ID3D11FunctionLinkingGraph_Impl::PassValueWithSwizzle(
20778 this,
20779 core::mem::transmute_copy(&psrcnode),
20780 core::mem::transmute_copy(&srcparameterindex),
20781 core::mem::transmute(&psrcswizzle),
20782 core::mem::transmute_copy(&pdstnode),
20783 core::mem::transmute_copy(&dstparameterindex),
20784 core::mem::transmute(&pdstswizzle),
20785 )
20786 .into()
20787 }
20788 }
20789 unsafe extern "system" fn GetLastError<
20790 Identity: ID3D11FunctionLinkingGraph_Impl,
20791 const OFFSET: isize,
20792 >(
20793 this: *mut core::ffi::c_void,
20794 pperrorbuffer: *mut *mut core::ffi::c_void,
20795 ) -> windows_core::HRESULT {
20796 unsafe {
20797 let this: &Identity =
20798 &*((this as *const *const ()).offset(OFFSET) as *const Identity);
20799 ID3D11FunctionLinkingGraph_Impl::GetLastError(
20800 this,
20801 core::mem::transmute_copy(&pperrorbuffer),
20802 )
20803 .into()
20804 }
20805 }
20806 unsafe extern "system" fn GenerateHlsl<
20807 Identity: ID3D11FunctionLinkingGraph_Impl,
20808 const OFFSET: isize,
20809 >(
20810 this: *mut core::ffi::c_void,
20811 uflags: u32,
20812 ppbuffer: *mut *mut core::ffi::c_void,
20813 ) -> windows_core::HRESULT {
20814 unsafe {
20815 let this: &Identity =
20816 &*((this as *const *const ()).offset(OFFSET) as *const Identity);
20817 match ID3D11FunctionLinkingGraph_Impl::GenerateHlsl(
20818 this,
20819 core::mem::transmute_copy(&uflags),
20820 ) {
20821 Ok(ok__) => {
20822 ppbuffer.write(core::mem::transmute(ok__));
20823 windows_core::HRESULT(0)
20824 }
20825 Err(err) => err.into(),
20826 }
20827 }
20828 }
20829 Self {
20830 base__: windows_core::IUnknown_Vtbl::new::<Identity, OFFSET>(),
20831 CreateModuleInstance: CreateModuleInstance::<Identity, OFFSET>,
20832 SetInputSignature: SetInputSignature::<Identity, OFFSET>,
20833 SetOutputSignature: SetOutputSignature::<Identity, OFFSET>,
20834 CallFunction: CallFunction::<Identity, OFFSET>,
20835 PassValue: PassValue::<Identity, OFFSET>,
20836 PassValueWithSwizzle: PassValueWithSwizzle::<Identity, OFFSET>,
20837 GetLastError: GetLastError::<Identity, OFFSET>,
20838 GenerateHlsl: GenerateHlsl::<Identity, OFFSET>,
20839 }
20840 }
20841 pub fn matches(iid: &windows_core::GUID) -> bool {
20842 iid == &<ID3D11FunctionLinkingGraph as windows_core::Interface>::IID
20843 }
20844}
20845#[cfg(feature = "Win32_Graphics_Direct3D")]
20846impl windows_core::RuntimeName for ID3D11FunctionLinkingGraph {}
20847#[cfg(feature = "Win32_Graphics_Direct3D")]
20848unsafe impl Send for ID3D11FunctionLinkingGraph {}
20849#[cfg(feature = "Win32_Graphics_Direct3D")]
20850unsafe impl Sync for ID3D11FunctionLinkingGraph {}
20851windows_core::imp::define_interface!(
20852 ID3D11FunctionParameterReflection,
20853 ID3D11FunctionParameterReflection_Vtbl
20854);
20855impl ID3D11FunctionParameterReflection {
20856 #[cfg(feature = "Win32_Graphics_Direct3D")]
20857 pub unsafe fn GetDesc(&self, pdesc: *mut D3D11_PARAMETER_DESC) -> windows_core::Result<()> {
20858 unsafe {
20859 (windows_core::Interface::vtable(self).GetDesc)(
20860 windows_core::Interface::as_raw(self),
20861 core::mem::transmute(pdesc),
20862 )
20863 .ok()
20864 }
20865 }
20866}
20867#[repr(C)]
20868pub struct ID3D11FunctionParameterReflection_Vtbl {
20869 #[cfg(feature = "Win32_Graphics_Direct3D")]
20870 pub GetDesc: unsafe extern "system" fn(
20871 *mut core::ffi::c_void,
20872 *mut D3D11_PARAMETER_DESC,
20873 ) -> windows_core::HRESULT,
20874 #[cfg(not(feature = "Win32_Graphics_Direct3D"))]
20875 GetDesc: usize,
20876}
20877#[cfg(feature = "Win32_Graphics_Direct3D")]
20878pub trait ID3D11FunctionParameterReflection_Impl {
20879 fn GetDesc(&self, pdesc: *mut D3D11_PARAMETER_DESC) -> windows_core::Result<()>;
20880}
20881#[cfg(feature = "Win32_Graphics_Direct3D")]
20882impl ID3D11FunctionParameterReflection_Vtbl {
20883 pub const fn new<Identity: ID3D11FunctionParameterReflection_Impl>() -> Self {
20884 unsafe extern "system" fn GetDesc<Identity: ID3D11FunctionParameterReflection_Impl>(
20885 this: *mut core::ffi::c_void,
20886 pdesc: *mut D3D11_PARAMETER_DESC,
20887 ) -> windows_core::HRESULT {
20888 unsafe {
20889 let this = (this as *mut *mut core::ffi::c_void) as *const windows_core::ScopedHeap;
20890 let this = &*((*this).this as *const Identity);
20891 ID3D11FunctionParameterReflection_Impl::GetDesc(
20892 this,
20893 core::mem::transmute_copy(&pdesc),
20894 )
20895 .into()
20896 }
20897 }
20898 Self {
20899 GetDesc: GetDesc::<Identity>,
20900 }
20901 }
20902}
20903#[cfg(feature = "Win32_Graphics_Direct3D")]
20904struct ID3D11FunctionParameterReflection_ImplVtbl<T: ID3D11FunctionParameterReflection_Impl>(
20905 core::marker::PhantomData<T>,
20906);
20907#[cfg(feature = "Win32_Graphics_Direct3D")]
20908impl<T: ID3D11FunctionParameterReflection_Impl> ID3D11FunctionParameterReflection_ImplVtbl<T> {
20909 const VTABLE: ID3D11FunctionParameterReflection_Vtbl =
20910 ID3D11FunctionParameterReflection_Vtbl::new::<T>();
20911}
20912#[cfg(feature = "Win32_Graphics_Direct3D")]
20913impl ID3D11FunctionParameterReflection {
20914 pub fn new<T: ID3D11FunctionParameterReflection_Impl>(
20915 this: &T,
20916 ) -> windows_core::ScopedInterface<'_, Self> {
20917 let this = windows_core::ScopedHeap {
20918 vtable: &ID3D11FunctionParameterReflection_ImplVtbl::<T>::VTABLE as *const _
20919 as *const _,
20920 this: this as *const _ as *const _,
20921 };
20922 let this = core::mem::ManuallyDrop::new(windows_core::imp::Box::new(this));
20923 unsafe { windows_core::ScopedInterface::new(core::mem::transmute(&this.vtable)) }
20924 }
20925}
20926#[cfg(feature = "Win32_Graphics_Direct3D")]
20927unsafe impl Send for ID3D11FunctionParameterReflection {}
20928#[cfg(feature = "Win32_Graphics_Direct3D")]
20929unsafe impl Sync for ID3D11FunctionParameterReflection {}
20930windows_core::imp::define_interface!(ID3D11FunctionReflection, ID3D11FunctionReflection_Vtbl);
20931impl ID3D11FunctionReflection {
20932 #[cfg(feature = "Win32_Graphics_Direct3D")]
20933 pub unsafe fn GetDesc(&self, pdesc: *mut D3D11_FUNCTION_DESC) -> windows_core::Result<()> {
20934 unsafe {
20935 (windows_core::Interface::vtable(self).GetDesc)(
20936 windows_core::Interface::as_raw(self),
20937 core::mem::transmute(pdesc),
20938 )
20939 .ok()
20940 }
20941 }
20942 pub unsafe fn GetConstantBufferByIndex(
20943 &self,
20944 bufferindex: u32,
20945 ) -> Option<ID3D11ShaderReflectionConstantBuffer> {
20946 unsafe {
20947 (windows_core::Interface::vtable(self).GetConstantBufferByIndex)(
20948 windows_core::Interface::as_raw(self),
20949 bufferindex,
20950 )
20951 }
20952 }
20953 pub unsafe fn GetConstantBufferByName<P0>(
20954 &self,
20955 name: P0,
20956 ) -> Option<ID3D11ShaderReflectionConstantBuffer>
20957 where
20958 P0: windows_core::Param<crate::core_supplemental::PCSTR>,
20959 {
20960 unsafe {
20961 (windows_core::Interface::vtable(self).GetConstantBufferByName)(
20962 windows_core::Interface::as_raw(self),
20963 name.param().abi(),
20964 )
20965 }
20966 }
20967 #[cfg(feature = "Win32_Graphics_Direct3D")]
20968 pub unsafe fn GetResourceBindingDesc(
20969 &self,
20970 resourceindex: u32,
20971 pdesc: *mut D3D11_SHADER_INPUT_BIND_DESC,
20972 ) -> windows_core::Result<()> {
20973 unsafe {
20974 (windows_core::Interface::vtable(self).GetResourceBindingDesc)(
20975 windows_core::Interface::as_raw(self),
20976 resourceindex,
20977 core::mem::transmute(pdesc),
20978 )
20979 .ok()
20980 }
20981 }
20982 pub unsafe fn GetVariableByName<P0>(&self, name: P0) -> Option<ID3D11ShaderReflectionVariable>
20983 where
20984 P0: windows_core::Param<crate::core_supplemental::PCSTR>,
20985 {
20986 unsafe {
20987 (windows_core::Interface::vtable(self).GetVariableByName)(
20988 windows_core::Interface::as_raw(self),
20989 name.param().abi(),
20990 )
20991 }
20992 }
20993 #[cfg(feature = "Win32_Graphics_Direct3D")]
20994 pub unsafe fn GetResourceBindingDescByName<P0>(
20995 &self,
20996 name: P0,
20997 pdesc: *mut D3D11_SHADER_INPUT_BIND_DESC,
20998 ) -> windows_core::Result<()>
20999 where
21000 P0: windows_core::Param<crate::core_supplemental::PCSTR>,
21001 {
21002 unsafe {
21003 (windows_core::Interface::vtable(self).GetResourceBindingDescByName)(
21004 windows_core::Interface::as_raw(self),
21005 name.param().abi(),
21006 core::mem::transmute(pdesc),
21007 )
21008 .ok()
21009 }
21010 }
21011 pub unsafe fn GetFunctionParameter(
21012 &self,
21013 parameterindex: i32,
21014 ) -> Option<ID3D11FunctionParameterReflection> {
21015 unsafe {
21016 (windows_core::Interface::vtable(self).GetFunctionParameter)(
21017 windows_core::Interface::as_raw(self),
21018 parameterindex,
21019 )
21020 }
21021 }
21022}
21023#[repr(C)]
21024pub struct ID3D11FunctionReflection_Vtbl {
21025 #[cfg(feature = "Win32_Graphics_Direct3D")]
21026 pub GetDesc: unsafe extern "system" fn(
21027 *mut core::ffi::c_void,
21028 *mut D3D11_FUNCTION_DESC,
21029 ) -> windows_core::HRESULT,
21030 #[cfg(not(feature = "Win32_Graphics_Direct3D"))]
21031 GetDesc: usize,
21032 pub GetConstantBufferByIndex:
21033 unsafe extern "system" fn(
21034 *mut core::ffi::c_void,
21035 u32,
21036 ) -> Option<ID3D11ShaderReflectionConstantBuffer>,
21037 pub GetConstantBufferByName:
21038 unsafe extern "system" fn(
21039 *mut core::ffi::c_void,
21040 crate::core_supplemental::PCSTR,
21041 ) -> Option<ID3D11ShaderReflectionConstantBuffer>,
21042 #[cfg(feature = "Win32_Graphics_Direct3D")]
21043 pub GetResourceBindingDesc: unsafe extern "system" fn(
21044 *mut core::ffi::c_void,
21045 u32,
21046 *mut D3D11_SHADER_INPUT_BIND_DESC,
21047 ) -> windows_core::HRESULT,
21048 #[cfg(not(feature = "Win32_Graphics_Direct3D"))]
21049 GetResourceBindingDesc: usize,
21050 pub GetVariableByName: unsafe extern "system" fn(
21051 *mut core::ffi::c_void,
21052 crate::core_supplemental::PCSTR,
21053 ) -> Option<ID3D11ShaderReflectionVariable>,
21054 #[cfg(feature = "Win32_Graphics_Direct3D")]
21055 pub GetResourceBindingDescByName: unsafe extern "system" fn(
21056 *mut core::ffi::c_void,
21057 crate::core_supplemental::PCSTR,
21058 *mut D3D11_SHADER_INPUT_BIND_DESC,
21059 ) -> windows_core::HRESULT,
21060 #[cfg(not(feature = "Win32_Graphics_Direct3D"))]
21061 GetResourceBindingDescByName: usize,
21062 pub GetFunctionParameter:
21063 unsafe extern "system" fn(
21064 *mut core::ffi::c_void,
21065 i32,
21066 ) -> Option<ID3D11FunctionParameterReflection>,
21067}
21068#[cfg(feature = "Win32_Graphics_Direct3D")]
21069pub trait ID3D11FunctionReflection_Impl {
21070 fn GetDesc(&self, pdesc: *mut D3D11_FUNCTION_DESC) -> windows_core::Result<()>;
21071 fn GetConstantBufferByIndex(
21072 &self,
21073 bufferindex: u32,
21074 ) -> Option<ID3D11ShaderReflectionConstantBuffer>;
21075 fn GetConstantBufferByName(
21076 &self,
21077 name: &crate::core_supplemental::PCSTR,
21078 ) -> Option<ID3D11ShaderReflectionConstantBuffer>;
21079 fn GetResourceBindingDesc(
21080 &self,
21081 resourceindex: u32,
21082 pdesc: *mut D3D11_SHADER_INPUT_BIND_DESC,
21083 ) -> windows_core::Result<()>;
21084 fn GetVariableByName(
21085 &self,
21086 name: &crate::core_supplemental::PCSTR,
21087 ) -> Option<ID3D11ShaderReflectionVariable>;
21088 fn GetResourceBindingDescByName(
21089 &self,
21090 name: &crate::core_supplemental::PCSTR,
21091 pdesc: *mut D3D11_SHADER_INPUT_BIND_DESC,
21092 ) -> windows_core::Result<()>;
21093 fn GetFunctionParameter(
21094 &self,
21095 parameterindex: i32,
21096 ) -> Option<ID3D11FunctionParameterReflection>;
21097}
21098#[cfg(feature = "Win32_Graphics_Direct3D")]
21099impl ID3D11FunctionReflection_Vtbl {
21100 pub const fn new<Identity: ID3D11FunctionReflection_Impl>() -> Self {
21101 unsafe extern "system" fn GetDesc<Identity: ID3D11FunctionReflection_Impl>(
21102 this: *mut core::ffi::c_void,
21103 pdesc: *mut D3D11_FUNCTION_DESC,
21104 ) -> windows_core::HRESULT {
21105 unsafe {
21106 let this = (this as *mut *mut core::ffi::c_void) as *const windows_core::ScopedHeap;
21107 let this = &*((*this).this as *const Identity);
21108 ID3D11FunctionReflection_Impl::GetDesc(this, core::mem::transmute_copy(&pdesc))
21109 .into()
21110 }
21111 }
21112 unsafe extern "system" fn GetConstantBufferByIndex<
21113 Identity: ID3D11FunctionReflection_Impl,
21114 >(
21115 this: *mut core::ffi::c_void,
21116 bufferindex: u32,
21117 ) -> Option<ID3D11ShaderReflectionConstantBuffer> {
21118 unsafe {
21119 let this = (this as *mut *mut core::ffi::c_void) as *const windows_core::ScopedHeap;
21120 let this = &*((*this).this as *const Identity);
21121 ID3D11FunctionReflection_Impl::GetConstantBufferByIndex(
21122 this,
21123 core::mem::transmute_copy(&bufferindex),
21124 )
21125 }
21126 }
21127 unsafe extern "system" fn GetConstantBufferByName<
21128 Identity: ID3D11FunctionReflection_Impl,
21129 >(
21130 this: *mut core::ffi::c_void,
21131 name: crate::core_supplemental::PCSTR,
21132 ) -> Option<ID3D11ShaderReflectionConstantBuffer> {
21133 unsafe {
21134 let this = (this as *mut *mut core::ffi::c_void) as *const windows_core::ScopedHeap;
21135 let this = &*((*this).this as *const Identity);
21136 ID3D11FunctionReflection_Impl::GetConstantBufferByName(
21137 this,
21138 core::mem::transmute(&name),
21139 )
21140 }
21141 }
21142 unsafe extern "system" fn GetResourceBindingDesc<
21143 Identity: ID3D11FunctionReflection_Impl,
21144 >(
21145 this: *mut core::ffi::c_void,
21146 resourceindex: u32,
21147 pdesc: *mut D3D11_SHADER_INPUT_BIND_DESC,
21148 ) -> windows_core::HRESULT {
21149 unsafe {
21150 let this = (this as *mut *mut core::ffi::c_void) as *const windows_core::ScopedHeap;
21151 let this = &*((*this).this as *const Identity);
21152 ID3D11FunctionReflection_Impl::GetResourceBindingDesc(
21153 this,
21154 core::mem::transmute_copy(&resourceindex),
21155 core::mem::transmute_copy(&pdesc),
21156 )
21157 .into()
21158 }
21159 }
21160 unsafe extern "system" fn GetVariableByName<Identity: ID3D11FunctionReflection_Impl>(
21161 this: *mut core::ffi::c_void,
21162 name: crate::core_supplemental::PCSTR,
21163 ) -> Option<ID3D11ShaderReflectionVariable> {
21164 unsafe {
21165 let this = (this as *mut *mut core::ffi::c_void) as *const windows_core::ScopedHeap;
21166 let this = &*((*this).this as *const Identity);
21167 ID3D11FunctionReflection_Impl::GetVariableByName(this, core::mem::transmute(&name))
21168 }
21169 }
21170 unsafe extern "system" fn GetResourceBindingDescByName<
21171 Identity: ID3D11FunctionReflection_Impl,
21172 >(
21173 this: *mut core::ffi::c_void,
21174 name: crate::core_supplemental::PCSTR,
21175 pdesc: *mut D3D11_SHADER_INPUT_BIND_DESC,
21176 ) -> windows_core::HRESULT {
21177 unsafe {
21178 let this = (this as *mut *mut core::ffi::c_void) as *const windows_core::ScopedHeap;
21179 let this = &*((*this).this as *const Identity);
21180 ID3D11FunctionReflection_Impl::GetResourceBindingDescByName(
21181 this,
21182 core::mem::transmute(&name),
21183 core::mem::transmute_copy(&pdesc),
21184 )
21185 .into()
21186 }
21187 }
21188 unsafe extern "system" fn GetFunctionParameter<Identity: ID3D11FunctionReflection_Impl>(
21189 this: *mut core::ffi::c_void,
21190 parameterindex: i32,
21191 ) -> Option<ID3D11FunctionParameterReflection> {
21192 unsafe {
21193 let this = (this as *mut *mut core::ffi::c_void) as *const windows_core::ScopedHeap;
21194 let this = &*((*this).this as *const Identity);
21195 ID3D11FunctionReflection_Impl::GetFunctionParameter(
21196 this,
21197 core::mem::transmute_copy(¶meterindex),
21198 )
21199 }
21200 }
21201 Self {
21202 GetDesc: GetDesc::<Identity>,
21203 GetConstantBufferByIndex: GetConstantBufferByIndex::<Identity>,
21204 GetConstantBufferByName: GetConstantBufferByName::<Identity>,
21205 GetResourceBindingDesc: GetResourceBindingDesc::<Identity>,
21206 GetVariableByName: GetVariableByName::<Identity>,
21207 GetResourceBindingDescByName: GetResourceBindingDescByName::<Identity>,
21208 GetFunctionParameter: GetFunctionParameter::<Identity>,
21209 }
21210 }
21211}
21212#[cfg(feature = "Win32_Graphics_Direct3D")]
21213struct ID3D11FunctionReflection_ImplVtbl<T: ID3D11FunctionReflection_Impl>(
21214 core::marker::PhantomData<T>,
21215);
21216#[cfg(feature = "Win32_Graphics_Direct3D")]
21217impl<T: ID3D11FunctionReflection_Impl> ID3D11FunctionReflection_ImplVtbl<T> {
21218 const VTABLE: ID3D11FunctionReflection_Vtbl = ID3D11FunctionReflection_Vtbl::new::<T>();
21219}
21220#[cfg(feature = "Win32_Graphics_Direct3D")]
21221impl ID3D11FunctionReflection {
21222 pub fn new<T: ID3D11FunctionReflection_Impl>(
21223 this: &T,
21224 ) -> windows_core::ScopedInterface<'_, Self> {
21225 let this = windows_core::ScopedHeap {
21226 vtable: &ID3D11FunctionReflection_ImplVtbl::<T>::VTABLE as *const _ as *const _,
21227 this: this as *const _ as *const _,
21228 };
21229 let this = core::mem::ManuallyDrop::new(windows_core::imp::Box::new(this));
21230 unsafe { windows_core::ScopedInterface::new(core::mem::transmute(&this.vtable)) }
21231 }
21232}
21233#[cfg(feature = "Win32_Graphics_Direct3D")]
21234unsafe impl Send for ID3D11FunctionReflection {}
21235#[cfg(feature = "Win32_Graphics_Direct3D")]
21236unsafe impl Sync for ID3D11FunctionReflection {}
21237windows_core::imp::define_interface!(
21238 ID3D11GeometryShader,
21239 ID3D11GeometryShader_Vtbl,
21240 0x38325b96_effb_4022_ba02_2e795b70275c
21241);
21242impl core::ops::Deref for ID3D11GeometryShader {
21243 type Target = ID3D11DeviceChild;
21244 fn deref(&self) -> &Self::Target {
21245 unsafe { core::mem::transmute(self) }
21246 }
21247}
21248windows_core::imp::interface_hierarchy!(
21249 ID3D11GeometryShader,
21250 windows_core::IUnknown,
21251 ID3D11DeviceChild
21252);
21253#[repr(C)]
21254pub struct ID3D11GeometryShader_Vtbl {
21255 pub base__: ID3D11DeviceChild_Vtbl,
21256}
21257pub trait ID3D11GeometryShader_Impl: ID3D11DeviceChild_Impl {}
21258impl ID3D11GeometryShader_Vtbl {
21259 pub const fn new<Identity: ID3D11GeometryShader_Impl, const OFFSET: isize>() -> Self {
21260 Self {
21261 base__: ID3D11DeviceChild_Vtbl::new::<Identity, OFFSET>(),
21262 }
21263 }
21264 pub fn matches(iid: &windows_core::GUID) -> bool {
21265 iid == &<ID3D11GeometryShader as windows_core::Interface>::IID
21266 || iid == &<ID3D11DeviceChild as windows_core::Interface>::IID
21267 }
21268}
21269impl windows_core::RuntimeName for ID3D11GeometryShader {}
21270unsafe impl Send for ID3D11GeometryShader {}
21271unsafe impl Sync for ID3D11GeometryShader {}
21272windows_core::imp::define_interface!(
21273 ID3D11HullShader,
21274 ID3D11HullShader_Vtbl,
21275 0x8e5c6061_628a_4c8e_8264_bbe45cb3d5dd
21276);
21277impl core::ops::Deref for ID3D11HullShader {
21278 type Target = ID3D11DeviceChild;
21279 fn deref(&self) -> &Self::Target {
21280 unsafe { core::mem::transmute(self) }
21281 }
21282}
21283windows_core::imp::interface_hierarchy!(
21284 ID3D11HullShader,
21285 windows_core::IUnknown,
21286 ID3D11DeviceChild
21287);
21288#[repr(C)]
21289pub struct ID3D11HullShader_Vtbl {
21290 pub base__: ID3D11DeviceChild_Vtbl,
21291}
21292pub trait ID3D11HullShader_Impl: ID3D11DeviceChild_Impl {}
21293impl ID3D11HullShader_Vtbl {
21294 pub const fn new<Identity: ID3D11HullShader_Impl, const OFFSET: isize>() -> Self {
21295 Self {
21296 base__: ID3D11DeviceChild_Vtbl::new::<Identity, OFFSET>(),
21297 }
21298 }
21299 pub fn matches(iid: &windows_core::GUID) -> bool {
21300 iid == &<ID3D11HullShader as windows_core::Interface>::IID
21301 || iid == &<ID3D11DeviceChild as windows_core::Interface>::IID
21302 }
21303}
21304impl windows_core::RuntimeName for ID3D11HullShader {}
21305unsafe impl Send for ID3D11HullShader {}
21306unsafe impl Sync for ID3D11HullShader {}
21307windows_core::imp::define_interface!(
21308 ID3D11InfoQueue,
21309 ID3D11InfoQueue_Vtbl,
21310 0x6543dbb6_1b48_42f5_ab82_e97ec74326f6
21311);
21312windows_core::imp::interface_hierarchy!(ID3D11InfoQueue, windows_core::IUnknown);
21313impl ID3D11InfoQueue {
21314 pub unsafe fn SetMessageCountLimit(&self, messagecountlimit: u64) -> windows_core::Result<()> {
21315 unsafe {
21316 (windows_core::Interface::vtable(self).SetMessageCountLimit)(
21317 windows_core::Interface::as_raw(self),
21318 messagecountlimit,
21319 )
21320 .ok()
21321 }
21322 }
21323 pub unsafe fn ClearStoredMessages(&self) {
21324 unsafe {
21325 (windows_core::Interface::vtable(self).ClearStoredMessages)(
21326 windows_core::Interface::as_raw(self),
21327 )
21328 }
21329 }
21330 pub unsafe fn GetMessage(
21331 &self,
21332 messageindex: u64,
21333 pmessage: Option<*mut D3D11_MESSAGE>,
21334 pmessagebytelength: *mut usize,
21335 ) -> windows_core::Result<()> {
21336 unsafe {
21337 (windows_core::Interface::vtable(self).GetMessage)(
21338 windows_core::Interface::as_raw(self),
21339 messageindex,
21340 core::mem::transmute(pmessage.unwrap_or(core::mem::zeroed())),
21341 core::mem::transmute(pmessagebytelength),
21342 )
21343 .ok()
21344 }
21345 }
21346 pub unsafe fn GetNumMessagesAllowedByStorageFilter(&self) -> u64 {
21347 unsafe {
21348 (windows_core::Interface::vtable(self).GetNumMessagesAllowedByStorageFilter)(
21349 windows_core::Interface::as_raw(self),
21350 )
21351 }
21352 }
21353 pub unsafe fn GetNumMessagesDeniedByStorageFilter(&self) -> u64 {
21354 unsafe {
21355 (windows_core::Interface::vtable(self).GetNumMessagesDeniedByStorageFilter)(
21356 windows_core::Interface::as_raw(self),
21357 )
21358 }
21359 }
21360 pub unsafe fn GetNumStoredMessages(&self) -> u64 {
21361 unsafe {
21362 (windows_core::Interface::vtable(self).GetNumStoredMessages)(
21363 windows_core::Interface::as_raw(self),
21364 )
21365 }
21366 }
21367 pub unsafe fn GetNumStoredMessagesAllowedByRetrievalFilter(&self) -> u64 {
21368 unsafe {
21369 (windows_core::Interface::vtable(self).GetNumStoredMessagesAllowedByRetrievalFilter)(
21370 windows_core::Interface::as_raw(self),
21371 )
21372 }
21373 }
21374 pub unsafe fn GetNumMessagesDiscardedByMessageCountLimit(&self) -> u64 {
21375 unsafe {
21376 (windows_core::Interface::vtable(self).GetNumMessagesDiscardedByMessageCountLimit)(
21377 windows_core::Interface::as_raw(self),
21378 )
21379 }
21380 }
21381 pub unsafe fn GetMessageCountLimit(&self) -> u64 {
21382 unsafe {
21383 (windows_core::Interface::vtable(self).GetMessageCountLimit)(
21384 windows_core::Interface::as_raw(self),
21385 )
21386 }
21387 }
21388 pub unsafe fn AddStorageFilterEntries(
21389 &self,
21390 pfilter: *const D3D11_INFO_QUEUE_FILTER,
21391 ) -> windows_core::Result<()> {
21392 unsafe {
21393 (windows_core::Interface::vtable(self).AddStorageFilterEntries)(
21394 windows_core::Interface::as_raw(self),
21395 pfilter,
21396 )
21397 .ok()
21398 }
21399 }
21400 pub unsafe fn GetStorageFilter(
21401 &self,
21402 pfilter: Option<*mut D3D11_INFO_QUEUE_FILTER>,
21403 pfilterbytelength: *mut usize,
21404 ) -> windows_core::Result<()> {
21405 unsafe {
21406 (windows_core::Interface::vtable(self).GetStorageFilter)(
21407 windows_core::Interface::as_raw(self),
21408 core::mem::transmute(pfilter.unwrap_or(core::mem::zeroed())),
21409 core::mem::transmute(pfilterbytelength),
21410 )
21411 .ok()
21412 }
21413 }
21414 pub unsafe fn ClearStorageFilter(&self) {
21415 unsafe {
21416 (windows_core::Interface::vtable(self).ClearStorageFilter)(
21417 windows_core::Interface::as_raw(self),
21418 )
21419 }
21420 }
21421 pub unsafe fn PushEmptyStorageFilter(&self) -> windows_core::Result<()> {
21422 unsafe {
21423 (windows_core::Interface::vtable(self).PushEmptyStorageFilter)(
21424 windows_core::Interface::as_raw(self),
21425 )
21426 .ok()
21427 }
21428 }
21429 pub unsafe fn PushCopyOfStorageFilter(&self) -> windows_core::Result<()> {
21430 unsafe {
21431 (windows_core::Interface::vtable(self).PushCopyOfStorageFilter)(
21432 windows_core::Interface::as_raw(self),
21433 )
21434 .ok()
21435 }
21436 }
21437 pub unsafe fn PushStorageFilter(
21438 &self,
21439 pfilter: *const D3D11_INFO_QUEUE_FILTER,
21440 ) -> windows_core::Result<()> {
21441 unsafe {
21442 (windows_core::Interface::vtable(self).PushStorageFilter)(
21443 windows_core::Interface::as_raw(self),
21444 pfilter,
21445 )
21446 .ok()
21447 }
21448 }
21449 pub unsafe fn PopStorageFilter(&self) {
21450 unsafe {
21451 (windows_core::Interface::vtable(self).PopStorageFilter)(
21452 windows_core::Interface::as_raw(self),
21453 )
21454 }
21455 }
21456 pub unsafe fn GetStorageFilterStackSize(&self) -> u32 {
21457 unsafe {
21458 (windows_core::Interface::vtable(self).GetStorageFilterStackSize)(
21459 windows_core::Interface::as_raw(self),
21460 )
21461 }
21462 }
21463 pub unsafe fn AddRetrievalFilterEntries(
21464 &self,
21465 pfilter: *const D3D11_INFO_QUEUE_FILTER,
21466 ) -> windows_core::Result<()> {
21467 unsafe {
21468 (windows_core::Interface::vtable(self).AddRetrievalFilterEntries)(
21469 windows_core::Interface::as_raw(self),
21470 pfilter,
21471 )
21472 .ok()
21473 }
21474 }
21475 pub unsafe fn GetRetrievalFilter(
21476 &self,
21477 pfilter: Option<*mut D3D11_INFO_QUEUE_FILTER>,
21478 pfilterbytelength: *mut usize,
21479 ) -> windows_core::Result<()> {
21480 unsafe {
21481 (windows_core::Interface::vtable(self).GetRetrievalFilter)(
21482 windows_core::Interface::as_raw(self),
21483 core::mem::transmute(pfilter.unwrap_or(core::mem::zeroed())),
21484 core::mem::transmute(pfilterbytelength),
21485 )
21486 .ok()
21487 }
21488 }
21489 pub unsafe fn ClearRetrievalFilter(&self) {
21490 unsafe {
21491 (windows_core::Interface::vtable(self).ClearRetrievalFilter)(
21492 windows_core::Interface::as_raw(self),
21493 )
21494 }
21495 }
21496 pub unsafe fn PushEmptyRetrievalFilter(&self) -> windows_core::Result<()> {
21497 unsafe {
21498 (windows_core::Interface::vtable(self).PushEmptyRetrievalFilter)(
21499 windows_core::Interface::as_raw(self),
21500 )
21501 .ok()
21502 }
21503 }
21504 pub unsafe fn PushCopyOfRetrievalFilter(&self) -> windows_core::Result<()> {
21505 unsafe {
21506 (windows_core::Interface::vtable(self).PushCopyOfRetrievalFilter)(
21507 windows_core::Interface::as_raw(self),
21508 )
21509 .ok()
21510 }
21511 }
21512 pub unsafe fn PushRetrievalFilter(
21513 &self,
21514 pfilter: *const D3D11_INFO_QUEUE_FILTER,
21515 ) -> windows_core::Result<()> {
21516 unsafe {
21517 (windows_core::Interface::vtable(self).PushRetrievalFilter)(
21518 windows_core::Interface::as_raw(self),
21519 pfilter,
21520 )
21521 .ok()
21522 }
21523 }
21524 pub unsafe fn PopRetrievalFilter(&self) {
21525 unsafe {
21526 (windows_core::Interface::vtable(self).PopRetrievalFilter)(
21527 windows_core::Interface::as_raw(self),
21528 )
21529 }
21530 }
21531 pub unsafe fn GetRetrievalFilterStackSize(&self) -> u32 {
21532 unsafe {
21533 (windows_core::Interface::vtable(self).GetRetrievalFilterStackSize)(
21534 windows_core::Interface::as_raw(self),
21535 )
21536 }
21537 }
21538 pub unsafe fn AddMessage<P3>(
21539 &self,
21540 category: D3D11_MESSAGE_CATEGORY,
21541 severity: D3D11_MESSAGE_SEVERITY,
21542 id: D3D11_MESSAGE_ID,
21543 pdescription: P3,
21544 ) -> windows_core::Result<()>
21545 where
21546 P3: windows_core::Param<crate::core_supplemental::PCSTR>,
21547 {
21548 unsafe {
21549 (windows_core::Interface::vtable(self).AddMessage)(
21550 windows_core::Interface::as_raw(self),
21551 category,
21552 severity,
21553 id,
21554 pdescription.param().abi(),
21555 )
21556 .ok()
21557 }
21558 }
21559 pub unsafe fn AddApplicationMessage<P1>(
21560 &self,
21561 severity: D3D11_MESSAGE_SEVERITY,
21562 pdescription: P1,
21563 ) -> windows_core::Result<()>
21564 where
21565 P1: windows_core::Param<crate::core_supplemental::PCSTR>,
21566 {
21567 unsafe {
21568 (windows_core::Interface::vtable(self).AddApplicationMessage)(
21569 windows_core::Interface::as_raw(self),
21570 severity,
21571 pdescription.param().abi(),
21572 )
21573 .ok()
21574 }
21575 }
21576 pub unsafe fn SetBreakOnCategory(
21577 &self,
21578 category: D3D11_MESSAGE_CATEGORY,
21579 benable: bool,
21580 ) -> windows_core::Result<()> {
21581 unsafe {
21582 (windows_core::Interface::vtable(self).SetBreakOnCategory)(
21583 windows_core::Interface::as_raw(self),
21584 category,
21585 benable.into(),
21586 )
21587 .ok()
21588 }
21589 }
21590 pub unsafe fn SetBreakOnSeverity(
21591 &self,
21592 severity: D3D11_MESSAGE_SEVERITY,
21593 benable: bool,
21594 ) -> windows_core::Result<()> {
21595 unsafe {
21596 (windows_core::Interface::vtable(self).SetBreakOnSeverity)(
21597 windows_core::Interface::as_raw(self),
21598 severity,
21599 benable.into(),
21600 )
21601 .ok()
21602 }
21603 }
21604 pub unsafe fn SetBreakOnID(
21605 &self,
21606 id: D3D11_MESSAGE_ID,
21607 benable: bool,
21608 ) -> windows_core::Result<()> {
21609 unsafe {
21610 (windows_core::Interface::vtable(self).SetBreakOnID)(
21611 windows_core::Interface::as_raw(self),
21612 id,
21613 benable.into(),
21614 )
21615 .ok()
21616 }
21617 }
21618 pub unsafe fn GetBreakOnCategory(
21619 &self,
21620 category: D3D11_MESSAGE_CATEGORY,
21621 ) -> crate::Foundation::BOOL {
21622 unsafe {
21623 (windows_core::Interface::vtable(self).GetBreakOnCategory)(
21624 windows_core::Interface::as_raw(self),
21625 category,
21626 )
21627 }
21628 }
21629 pub unsafe fn GetBreakOnSeverity(
21630 &self,
21631 severity: D3D11_MESSAGE_SEVERITY,
21632 ) -> crate::Foundation::BOOL {
21633 unsafe {
21634 (windows_core::Interface::vtable(self).GetBreakOnSeverity)(
21635 windows_core::Interface::as_raw(self),
21636 severity,
21637 )
21638 }
21639 }
21640 pub unsafe fn GetBreakOnID(&self, id: D3D11_MESSAGE_ID) -> crate::Foundation::BOOL {
21641 unsafe {
21642 (windows_core::Interface::vtable(self).GetBreakOnID)(
21643 windows_core::Interface::as_raw(self),
21644 id,
21645 )
21646 }
21647 }
21648 pub unsafe fn SetMuteDebugOutput(&self, bmute: bool) {
21649 unsafe {
21650 (windows_core::Interface::vtable(self).SetMuteDebugOutput)(
21651 windows_core::Interface::as_raw(self),
21652 bmute.into(),
21653 )
21654 }
21655 }
21656 pub unsafe fn GetMuteDebugOutput(&self) -> crate::Foundation::BOOL {
21657 unsafe {
21658 (windows_core::Interface::vtable(self).GetMuteDebugOutput)(
21659 windows_core::Interface::as_raw(self),
21660 )
21661 }
21662 }
21663}
21664#[repr(C)]
21665pub struct ID3D11InfoQueue_Vtbl {
21666 pub base__: windows_core::IUnknown_Vtbl,
21667 pub SetMessageCountLimit:
21668 unsafe extern "system" fn(*mut core::ffi::c_void, u64) -> windows_core::HRESULT,
21669 pub ClearStoredMessages: unsafe extern "system" fn(*mut core::ffi::c_void),
21670 pub GetMessage: unsafe extern "system" fn(
21671 *mut core::ffi::c_void,
21672 u64,
21673 *mut D3D11_MESSAGE,
21674 *mut usize,
21675 ) -> windows_core::HRESULT,
21676 pub GetNumMessagesAllowedByStorageFilter:
21677 unsafe extern "system" fn(*mut core::ffi::c_void) -> u64,
21678 pub GetNumMessagesDeniedByStorageFilter:
21679 unsafe extern "system" fn(*mut core::ffi::c_void) -> u64,
21680 pub GetNumStoredMessages: unsafe extern "system" fn(*mut core::ffi::c_void) -> u64,
21681 pub GetNumStoredMessagesAllowedByRetrievalFilter:
21682 unsafe extern "system" fn(*mut core::ffi::c_void) -> u64,
21683 pub GetNumMessagesDiscardedByMessageCountLimit:
21684 unsafe extern "system" fn(*mut core::ffi::c_void) -> u64,
21685 pub GetMessageCountLimit: unsafe extern "system" fn(*mut core::ffi::c_void) -> u64,
21686 pub AddStorageFilterEntries: unsafe extern "system" fn(
21687 *mut core::ffi::c_void,
21688 *const D3D11_INFO_QUEUE_FILTER,
21689 ) -> windows_core::HRESULT,
21690 pub GetStorageFilter: unsafe extern "system" fn(
21691 *mut core::ffi::c_void,
21692 *mut D3D11_INFO_QUEUE_FILTER,
21693 *mut usize,
21694 ) -> windows_core::HRESULT,
21695 pub ClearStorageFilter: unsafe extern "system" fn(*mut core::ffi::c_void),
21696 pub PushEmptyStorageFilter:
21697 unsafe extern "system" fn(*mut core::ffi::c_void) -> windows_core::HRESULT,
21698 pub PushCopyOfStorageFilter:
21699 unsafe extern "system" fn(*mut core::ffi::c_void) -> windows_core::HRESULT,
21700 pub PushStorageFilter: unsafe extern "system" fn(
21701 *mut core::ffi::c_void,
21702 *const D3D11_INFO_QUEUE_FILTER,
21703 ) -> windows_core::HRESULT,
21704 pub PopStorageFilter: unsafe extern "system" fn(*mut core::ffi::c_void),
21705 pub GetStorageFilterStackSize: unsafe extern "system" fn(*mut core::ffi::c_void) -> u32,
21706 pub AddRetrievalFilterEntries: unsafe extern "system" fn(
21707 *mut core::ffi::c_void,
21708 *const D3D11_INFO_QUEUE_FILTER,
21709 ) -> windows_core::HRESULT,
21710 pub GetRetrievalFilter: unsafe extern "system" fn(
21711 *mut core::ffi::c_void,
21712 *mut D3D11_INFO_QUEUE_FILTER,
21713 *mut usize,
21714 ) -> windows_core::HRESULT,
21715 pub ClearRetrievalFilter: unsafe extern "system" fn(*mut core::ffi::c_void),
21716 pub PushEmptyRetrievalFilter:
21717 unsafe extern "system" fn(*mut core::ffi::c_void) -> windows_core::HRESULT,
21718 pub PushCopyOfRetrievalFilter:
21719 unsafe extern "system" fn(*mut core::ffi::c_void) -> windows_core::HRESULT,
21720 pub PushRetrievalFilter: unsafe extern "system" fn(
21721 *mut core::ffi::c_void,
21722 *const D3D11_INFO_QUEUE_FILTER,
21723 ) -> windows_core::HRESULT,
21724 pub PopRetrievalFilter: unsafe extern "system" fn(*mut core::ffi::c_void),
21725 pub GetRetrievalFilterStackSize: unsafe extern "system" fn(*mut core::ffi::c_void) -> u32,
21726 pub AddMessage: unsafe extern "system" fn(
21727 *mut core::ffi::c_void,
21728 D3D11_MESSAGE_CATEGORY,
21729 D3D11_MESSAGE_SEVERITY,
21730 D3D11_MESSAGE_ID,
21731 crate::core_supplemental::PCSTR,
21732 ) -> windows_core::HRESULT,
21733 pub AddApplicationMessage: unsafe extern "system" fn(
21734 *mut core::ffi::c_void,
21735 D3D11_MESSAGE_SEVERITY,
21736 crate::core_supplemental::PCSTR,
21737 ) -> windows_core::HRESULT,
21738 pub SetBreakOnCategory: unsafe extern "system" fn(
21739 *mut core::ffi::c_void,
21740 D3D11_MESSAGE_CATEGORY,
21741 crate::Foundation::BOOL,
21742 ) -> windows_core::HRESULT,
21743 pub SetBreakOnSeverity: unsafe extern "system" fn(
21744 *mut core::ffi::c_void,
21745 D3D11_MESSAGE_SEVERITY,
21746 crate::Foundation::BOOL,
21747 ) -> windows_core::HRESULT,
21748 pub SetBreakOnID: unsafe extern "system" fn(
21749 *mut core::ffi::c_void,
21750 D3D11_MESSAGE_ID,
21751 crate::Foundation::BOOL,
21752 ) -> windows_core::HRESULT,
21753 pub GetBreakOnCategory: unsafe extern "system" fn(
21754 *mut core::ffi::c_void,
21755 D3D11_MESSAGE_CATEGORY,
21756 ) -> crate::Foundation::BOOL,
21757 pub GetBreakOnSeverity: unsafe extern "system" fn(
21758 *mut core::ffi::c_void,
21759 D3D11_MESSAGE_SEVERITY,
21760 ) -> crate::Foundation::BOOL,
21761 pub GetBreakOnID: unsafe extern "system" fn(
21762 *mut core::ffi::c_void,
21763 D3D11_MESSAGE_ID,
21764 ) -> crate::Foundation::BOOL,
21765 pub SetMuteDebugOutput:
21766 unsafe extern "system" fn(*mut core::ffi::c_void, crate::Foundation::BOOL),
21767 pub GetMuteDebugOutput:
21768 unsafe extern "system" fn(*mut core::ffi::c_void) -> crate::Foundation::BOOL,
21769}
21770pub trait ID3D11InfoQueue_Impl: windows_core::IUnknownImpl {
21771 fn SetMessageCountLimit(&self, messagecountlimit: u64) -> windows_core::Result<()>;
21772 fn ClearStoredMessages(&self);
21773 fn GetMessage(
21774 &self,
21775 messageindex: u64,
21776 pmessage: *mut D3D11_MESSAGE,
21777 pmessagebytelength: *mut usize,
21778 ) -> windows_core::Result<()>;
21779 fn GetNumMessagesAllowedByStorageFilter(&self) -> u64;
21780 fn GetNumMessagesDeniedByStorageFilter(&self) -> u64;
21781 fn GetNumStoredMessages(&self) -> u64;
21782 fn GetNumStoredMessagesAllowedByRetrievalFilter(&self) -> u64;
21783 fn GetNumMessagesDiscardedByMessageCountLimit(&self) -> u64;
21784 fn GetMessageCountLimit(&self) -> u64;
21785 fn AddStorageFilterEntries(
21786 &self,
21787 pfilter: *const D3D11_INFO_QUEUE_FILTER,
21788 ) -> windows_core::Result<()>;
21789 fn GetStorageFilter(
21790 &self,
21791 pfilter: *mut D3D11_INFO_QUEUE_FILTER,
21792 pfilterbytelength: *mut usize,
21793 ) -> windows_core::Result<()>;
21794 fn ClearStorageFilter(&self);
21795 fn PushEmptyStorageFilter(&self) -> windows_core::Result<()>;
21796 fn PushCopyOfStorageFilter(&self) -> windows_core::Result<()>;
21797 fn PushStorageFilter(
21798 &self,
21799 pfilter: *const D3D11_INFO_QUEUE_FILTER,
21800 ) -> windows_core::Result<()>;
21801 fn PopStorageFilter(&self);
21802 fn GetStorageFilterStackSize(&self) -> u32;
21803 fn AddRetrievalFilterEntries(
21804 &self,
21805 pfilter: *const D3D11_INFO_QUEUE_FILTER,
21806 ) -> windows_core::Result<()>;
21807 fn GetRetrievalFilter(
21808 &self,
21809 pfilter: *mut D3D11_INFO_QUEUE_FILTER,
21810 pfilterbytelength: *mut usize,
21811 ) -> windows_core::Result<()>;
21812 fn ClearRetrievalFilter(&self);
21813 fn PushEmptyRetrievalFilter(&self) -> windows_core::Result<()>;
21814 fn PushCopyOfRetrievalFilter(&self) -> windows_core::Result<()>;
21815 fn PushRetrievalFilter(
21816 &self,
21817 pfilter: *const D3D11_INFO_QUEUE_FILTER,
21818 ) -> windows_core::Result<()>;
21819 fn PopRetrievalFilter(&self);
21820 fn GetRetrievalFilterStackSize(&self) -> u32;
21821 fn AddMessage(
21822 &self,
21823 category: D3D11_MESSAGE_CATEGORY,
21824 severity: D3D11_MESSAGE_SEVERITY,
21825 id: D3D11_MESSAGE_ID,
21826 pdescription: &crate::core_supplemental::PCSTR,
21827 ) -> windows_core::Result<()>;
21828 fn AddApplicationMessage(
21829 &self,
21830 severity: D3D11_MESSAGE_SEVERITY,
21831 pdescription: &crate::core_supplemental::PCSTR,
21832 ) -> windows_core::Result<()>;
21833 fn SetBreakOnCategory(
21834 &self,
21835 category: D3D11_MESSAGE_CATEGORY,
21836 benable: crate::Foundation::BOOL,
21837 ) -> windows_core::Result<()>;
21838 fn SetBreakOnSeverity(
21839 &self,
21840 severity: D3D11_MESSAGE_SEVERITY,
21841 benable: crate::Foundation::BOOL,
21842 ) -> windows_core::Result<()>;
21843 fn SetBreakOnID(
21844 &self,
21845 id: D3D11_MESSAGE_ID,
21846 benable: crate::Foundation::BOOL,
21847 ) -> windows_core::Result<()>;
21848 fn GetBreakOnCategory(
21849 &self,
21850 category: D3D11_MESSAGE_CATEGORY,
21851 ) -> crate::Foundation::BOOL;
21852 fn GetBreakOnSeverity(
21853 &self,
21854 severity: D3D11_MESSAGE_SEVERITY,
21855 ) -> crate::Foundation::BOOL;
21856 fn GetBreakOnID(&self, id: D3D11_MESSAGE_ID) -> crate::Foundation::BOOL;
21857 fn SetMuteDebugOutput(&self, bmute: crate::Foundation::BOOL);
21858 fn GetMuteDebugOutput(&self) -> crate::Foundation::BOOL;
21859}
21860impl ID3D11InfoQueue_Vtbl {
21861 pub const fn new<Identity: ID3D11InfoQueue_Impl, const OFFSET: isize>() -> Self {
21862 unsafe extern "system" fn SetMessageCountLimit<
21863 Identity: ID3D11InfoQueue_Impl,
21864 const OFFSET: isize,
21865 >(
21866 this: *mut core::ffi::c_void,
21867 messagecountlimit: u64,
21868 ) -> windows_core::HRESULT {
21869 unsafe {
21870 let this: &Identity =
21871 &*((this as *const *const ()).offset(OFFSET) as *const Identity);
21872 ID3D11InfoQueue_Impl::SetMessageCountLimit(
21873 this,
21874 core::mem::transmute_copy(&messagecountlimit),
21875 )
21876 .into()
21877 }
21878 }
21879 unsafe extern "system" fn ClearStoredMessages<
21880 Identity: ID3D11InfoQueue_Impl,
21881 const OFFSET: isize,
21882 >(
21883 this: *mut core::ffi::c_void,
21884 ) {
21885 unsafe {
21886 let this: &Identity =
21887 &*((this as *const *const ()).offset(OFFSET) as *const Identity);
21888 ID3D11InfoQueue_Impl::ClearStoredMessages(this)
21889 }
21890 }
21891 unsafe extern "system" fn GetMessage<
21892 Identity: ID3D11InfoQueue_Impl,
21893 const OFFSET: isize,
21894 >(
21895 this: *mut core::ffi::c_void,
21896 messageindex: u64,
21897 pmessage: *mut D3D11_MESSAGE,
21898 pmessagebytelength: *mut usize,
21899 ) -> windows_core::HRESULT {
21900 unsafe {
21901 let this: &Identity =
21902 &*((this as *const *const ()).offset(OFFSET) as *const Identity);
21903 ID3D11InfoQueue_Impl::GetMessage(
21904 this,
21905 core::mem::transmute_copy(&messageindex),
21906 core::mem::transmute_copy(&pmessage),
21907 core::mem::transmute_copy(&pmessagebytelength),
21908 )
21909 .into()
21910 }
21911 }
21912 unsafe extern "system" fn GetNumMessagesAllowedByStorageFilter<
21913 Identity: ID3D11InfoQueue_Impl,
21914 const OFFSET: isize,
21915 >(
21916 this: *mut core::ffi::c_void,
21917 ) -> u64 {
21918 unsafe {
21919 let this: &Identity =
21920 &*((this as *const *const ()).offset(OFFSET) as *const Identity);
21921 ID3D11InfoQueue_Impl::GetNumMessagesAllowedByStorageFilter(this)
21922 }
21923 }
21924 unsafe extern "system" fn GetNumMessagesDeniedByStorageFilter<
21925 Identity: ID3D11InfoQueue_Impl,
21926 const OFFSET: isize,
21927 >(
21928 this: *mut core::ffi::c_void,
21929 ) -> u64 {
21930 unsafe {
21931 let this: &Identity =
21932 &*((this as *const *const ()).offset(OFFSET) as *const Identity);
21933 ID3D11InfoQueue_Impl::GetNumMessagesDeniedByStorageFilter(this)
21934 }
21935 }
21936 unsafe extern "system" fn GetNumStoredMessages<
21937 Identity: ID3D11InfoQueue_Impl,
21938 const OFFSET: isize,
21939 >(
21940 this: *mut core::ffi::c_void,
21941 ) -> u64 {
21942 unsafe {
21943 let this: &Identity =
21944 &*((this as *const *const ()).offset(OFFSET) as *const Identity);
21945 ID3D11InfoQueue_Impl::GetNumStoredMessages(this)
21946 }
21947 }
21948 unsafe extern "system" fn GetNumStoredMessagesAllowedByRetrievalFilter<
21949 Identity: ID3D11InfoQueue_Impl,
21950 const OFFSET: isize,
21951 >(
21952 this: *mut core::ffi::c_void,
21953 ) -> u64 {
21954 unsafe {
21955 let this: &Identity =
21956 &*((this as *const *const ()).offset(OFFSET) as *const Identity);
21957 ID3D11InfoQueue_Impl::GetNumStoredMessagesAllowedByRetrievalFilter(this)
21958 }
21959 }
21960 unsafe extern "system" fn GetNumMessagesDiscardedByMessageCountLimit<
21961 Identity: ID3D11InfoQueue_Impl,
21962 const OFFSET: isize,
21963 >(
21964 this: *mut core::ffi::c_void,
21965 ) -> u64 {
21966 unsafe {
21967 let this: &Identity =
21968 &*((this as *const *const ()).offset(OFFSET) as *const Identity);
21969 ID3D11InfoQueue_Impl::GetNumMessagesDiscardedByMessageCountLimit(this)
21970 }
21971 }
21972 unsafe extern "system" fn GetMessageCountLimit<
21973 Identity: ID3D11InfoQueue_Impl,
21974 const OFFSET: isize,
21975 >(
21976 this: *mut core::ffi::c_void,
21977 ) -> u64 {
21978 unsafe {
21979 let this: &Identity =
21980 &*((this as *const *const ()).offset(OFFSET) as *const Identity);
21981 ID3D11InfoQueue_Impl::GetMessageCountLimit(this)
21982 }
21983 }
21984 unsafe extern "system" fn AddStorageFilterEntries<
21985 Identity: ID3D11InfoQueue_Impl,
21986 const OFFSET: isize,
21987 >(
21988 this: *mut core::ffi::c_void,
21989 pfilter: *const D3D11_INFO_QUEUE_FILTER,
21990 ) -> windows_core::HRESULT {
21991 unsafe {
21992 let this: &Identity =
21993 &*((this as *const *const ()).offset(OFFSET) as *const Identity);
21994 ID3D11InfoQueue_Impl::AddStorageFilterEntries(
21995 this,
21996 core::mem::transmute_copy(&pfilter),
21997 )
21998 .into()
21999 }
22000 }
22001 unsafe extern "system" fn GetStorageFilter<
22002 Identity: ID3D11InfoQueue_Impl,
22003 const OFFSET: isize,
22004 >(
22005 this: *mut core::ffi::c_void,
22006 pfilter: *mut D3D11_INFO_QUEUE_FILTER,
22007 pfilterbytelength: *mut usize,
22008 ) -> windows_core::HRESULT {
22009 unsafe {
22010 let this: &Identity =
22011 &*((this as *const *const ()).offset(OFFSET) as *const Identity);
22012 ID3D11InfoQueue_Impl::GetStorageFilter(
22013 this,
22014 core::mem::transmute_copy(&pfilter),
22015 core::mem::transmute_copy(&pfilterbytelength),
22016 )
22017 .into()
22018 }
22019 }
22020 unsafe extern "system" fn ClearStorageFilter<
22021 Identity: ID3D11InfoQueue_Impl,
22022 const OFFSET: isize,
22023 >(
22024 this: *mut core::ffi::c_void,
22025 ) {
22026 unsafe {
22027 let this: &Identity =
22028 &*((this as *const *const ()).offset(OFFSET) as *const Identity);
22029 ID3D11InfoQueue_Impl::ClearStorageFilter(this)
22030 }
22031 }
22032 unsafe extern "system" fn PushEmptyStorageFilter<
22033 Identity: ID3D11InfoQueue_Impl,
22034 const OFFSET: isize,
22035 >(
22036 this: *mut core::ffi::c_void,
22037 ) -> windows_core::HRESULT {
22038 unsafe {
22039 let this: &Identity =
22040 &*((this as *const *const ()).offset(OFFSET) as *const Identity);
22041 ID3D11InfoQueue_Impl::PushEmptyStorageFilter(this).into()
22042 }
22043 }
22044 unsafe extern "system" fn PushCopyOfStorageFilter<
22045 Identity: ID3D11InfoQueue_Impl,
22046 const OFFSET: isize,
22047 >(
22048 this: *mut core::ffi::c_void,
22049 ) -> windows_core::HRESULT {
22050 unsafe {
22051 let this: &Identity =
22052 &*((this as *const *const ()).offset(OFFSET) as *const Identity);
22053 ID3D11InfoQueue_Impl::PushCopyOfStorageFilter(this).into()
22054 }
22055 }
22056 unsafe extern "system" fn PushStorageFilter<
22057 Identity: ID3D11InfoQueue_Impl,
22058 const OFFSET: isize,
22059 >(
22060 this: *mut core::ffi::c_void,
22061 pfilter: *const D3D11_INFO_QUEUE_FILTER,
22062 ) -> windows_core::HRESULT {
22063 unsafe {
22064 let this: &Identity =
22065 &*((this as *const *const ()).offset(OFFSET) as *const Identity);
22066 ID3D11InfoQueue_Impl::PushStorageFilter(this, core::mem::transmute_copy(&pfilter))
22067 .into()
22068 }
22069 }
22070 unsafe extern "system" fn PopStorageFilter<
22071 Identity: ID3D11InfoQueue_Impl,
22072 const OFFSET: isize,
22073 >(
22074 this: *mut core::ffi::c_void,
22075 ) {
22076 unsafe {
22077 let this: &Identity =
22078 &*((this as *const *const ()).offset(OFFSET) as *const Identity);
22079 ID3D11InfoQueue_Impl::PopStorageFilter(this)
22080 }
22081 }
22082 unsafe extern "system" fn GetStorageFilterStackSize<
22083 Identity: ID3D11InfoQueue_Impl,
22084 const OFFSET: isize,
22085 >(
22086 this: *mut core::ffi::c_void,
22087 ) -> u32 {
22088 unsafe {
22089 let this: &Identity =
22090 &*((this as *const *const ()).offset(OFFSET) as *const Identity);
22091 ID3D11InfoQueue_Impl::GetStorageFilterStackSize(this)
22092 }
22093 }
22094 unsafe extern "system" fn AddRetrievalFilterEntries<
22095 Identity: ID3D11InfoQueue_Impl,
22096 const OFFSET: isize,
22097 >(
22098 this: *mut core::ffi::c_void,
22099 pfilter: *const D3D11_INFO_QUEUE_FILTER,
22100 ) -> windows_core::HRESULT {
22101 unsafe {
22102 let this: &Identity =
22103 &*((this as *const *const ()).offset(OFFSET) as *const Identity);
22104 ID3D11InfoQueue_Impl::AddRetrievalFilterEntries(
22105 this,
22106 core::mem::transmute_copy(&pfilter),
22107 )
22108 .into()
22109 }
22110 }
22111 unsafe extern "system" fn GetRetrievalFilter<
22112 Identity: ID3D11InfoQueue_Impl,
22113 const OFFSET: isize,
22114 >(
22115 this: *mut core::ffi::c_void,
22116 pfilter: *mut D3D11_INFO_QUEUE_FILTER,
22117 pfilterbytelength: *mut usize,
22118 ) -> windows_core::HRESULT {
22119 unsafe {
22120 let this: &Identity =
22121 &*((this as *const *const ()).offset(OFFSET) as *const Identity);
22122 ID3D11InfoQueue_Impl::GetRetrievalFilter(
22123 this,
22124 core::mem::transmute_copy(&pfilter),
22125 core::mem::transmute_copy(&pfilterbytelength),
22126 )
22127 .into()
22128 }
22129 }
22130 unsafe extern "system" fn ClearRetrievalFilter<
22131 Identity: ID3D11InfoQueue_Impl,
22132 const OFFSET: isize,
22133 >(
22134 this: *mut core::ffi::c_void,
22135 ) {
22136 unsafe {
22137 let this: &Identity =
22138 &*((this as *const *const ()).offset(OFFSET) as *const Identity);
22139 ID3D11InfoQueue_Impl::ClearRetrievalFilter(this)
22140 }
22141 }
22142 unsafe extern "system" fn PushEmptyRetrievalFilter<
22143 Identity: ID3D11InfoQueue_Impl,
22144 const OFFSET: isize,
22145 >(
22146 this: *mut core::ffi::c_void,
22147 ) -> windows_core::HRESULT {
22148 unsafe {
22149 let this: &Identity =
22150 &*((this as *const *const ()).offset(OFFSET) as *const Identity);
22151 ID3D11InfoQueue_Impl::PushEmptyRetrievalFilter(this).into()
22152 }
22153 }
22154 unsafe extern "system" fn PushCopyOfRetrievalFilter<
22155 Identity: ID3D11InfoQueue_Impl,
22156 const OFFSET: isize,
22157 >(
22158 this: *mut core::ffi::c_void,
22159 ) -> windows_core::HRESULT {
22160 unsafe {
22161 let this: &Identity =
22162 &*((this as *const *const ()).offset(OFFSET) as *const Identity);
22163 ID3D11InfoQueue_Impl::PushCopyOfRetrievalFilter(this).into()
22164 }
22165 }
22166 unsafe extern "system" fn PushRetrievalFilter<
22167 Identity: ID3D11InfoQueue_Impl,
22168 const OFFSET: isize,
22169 >(
22170 this: *mut core::ffi::c_void,
22171 pfilter: *const D3D11_INFO_QUEUE_FILTER,
22172 ) -> windows_core::HRESULT {
22173 unsafe {
22174 let this: &Identity =
22175 &*((this as *const *const ()).offset(OFFSET) as *const Identity);
22176 ID3D11InfoQueue_Impl::PushRetrievalFilter(this, core::mem::transmute_copy(&pfilter))
22177 .into()
22178 }
22179 }
22180 unsafe extern "system" fn PopRetrievalFilter<
22181 Identity: ID3D11InfoQueue_Impl,
22182 const OFFSET: isize,
22183 >(
22184 this: *mut core::ffi::c_void,
22185 ) {
22186 unsafe {
22187 let this: &Identity =
22188 &*((this as *const *const ()).offset(OFFSET) as *const Identity);
22189 ID3D11InfoQueue_Impl::PopRetrievalFilter(this)
22190 }
22191 }
22192 unsafe extern "system" fn GetRetrievalFilterStackSize<
22193 Identity: ID3D11InfoQueue_Impl,
22194 const OFFSET: isize,
22195 >(
22196 this: *mut core::ffi::c_void,
22197 ) -> u32 {
22198 unsafe {
22199 let this: &Identity =
22200 &*((this as *const *const ()).offset(OFFSET) as *const Identity);
22201 ID3D11InfoQueue_Impl::GetRetrievalFilterStackSize(this)
22202 }
22203 }
22204 unsafe extern "system" fn AddMessage<
22205 Identity: ID3D11InfoQueue_Impl,
22206 const OFFSET: isize,
22207 >(
22208 this: *mut core::ffi::c_void,
22209 category: D3D11_MESSAGE_CATEGORY,
22210 severity: D3D11_MESSAGE_SEVERITY,
22211 id: D3D11_MESSAGE_ID,
22212 pdescription: crate::core_supplemental::PCSTR,
22213 ) -> windows_core::HRESULT {
22214 unsafe {
22215 let this: &Identity =
22216 &*((this as *const *const ()).offset(OFFSET) as *const Identity);
22217 ID3D11InfoQueue_Impl::AddMessage(
22218 this,
22219 core::mem::transmute_copy(&category),
22220 core::mem::transmute_copy(&severity),
22221 core::mem::transmute_copy(&id),
22222 core::mem::transmute(&pdescription),
22223 )
22224 .into()
22225 }
22226 }
22227 unsafe extern "system" fn AddApplicationMessage<
22228 Identity: ID3D11InfoQueue_Impl,
22229 const OFFSET: isize,
22230 >(
22231 this: *mut core::ffi::c_void,
22232 severity: D3D11_MESSAGE_SEVERITY,
22233 pdescription: crate::core_supplemental::PCSTR,
22234 ) -> windows_core::HRESULT {
22235 unsafe {
22236 let this: &Identity =
22237 &*((this as *const *const ()).offset(OFFSET) as *const Identity);
22238 ID3D11InfoQueue_Impl::AddApplicationMessage(
22239 this,
22240 core::mem::transmute_copy(&severity),
22241 core::mem::transmute(&pdescription),
22242 )
22243 .into()
22244 }
22245 }
22246 unsafe extern "system" fn SetBreakOnCategory<
22247 Identity: ID3D11InfoQueue_Impl,
22248 const OFFSET: isize,
22249 >(
22250 this: *mut core::ffi::c_void,
22251 category: D3D11_MESSAGE_CATEGORY,
22252 benable: crate::Foundation::BOOL,
22253 ) -> windows_core::HRESULT {
22254 unsafe {
22255 let this: &Identity =
22256 &*((this as *const *const ()).offset(OFFSET) as *const Identity);
22257 ID3D11InfoQueue_Impl::SetBreakOnCategory(
22258 this,
22259 core::mem::transmute_copy(&category),
22260 core::mem::transmute_copy(&benable),
22261 )
22262 .into()
22263 }
22264 }
22265 unsafe extern "system" fn SetBreakOnSeverity<
22266 Identity: ID3D11InfoQueue_Impl,
22267 const OFFSET: isize,
22268 >(
22269 this: *mut core::ffi::c_void,
22270 severity: D3D11_MESSAGE_SEVERITY,
22271 benable: crate::Foundation::BOOL,
22272 ) -> windows_core::HRESULT {
22273 unsafe {
22274 let this: &Identity =
22275 &*((this as *const *const ()).offset(OFFSET) as *const Identity);
22276 ID3D11InfoQueue_Impl::SetBreakOnSeverity(
22277 this,
22278 core::mem::transmute_copy(&severity),
22279 core::mem::transmute_copy(&benable),
22280 )
22281 .into()
22282 }
22283 }
22284 unsafe extern "system" fn SetBreakOnID<
22285 Identity: ID3D11InfoQueue_Impl,
22286 const OFFSET: isize,
22287 >(
22288 this: *mut core::ffi::c_void,
22289 id: D3D11_MESSAGE_ID,
22290 benable: crate::Foundation::BOOL,
22291 ) -> windows_core::HRESULT {
22292 unsafe {
22293 let this: &Identity =
22294 &*((this as *const *const ()).offset(OFFSET) as *const Identity);
22295 ID3D11InfoQueue_Impl::SetBreakOnID(
22296 this,
22297 core::mem::transmute_copy(&id),
22298 core::mem::transmute_copy(&benable),
22299 )
22300 .into()
22301 }
22302 }
22303 unsafe extern "system" fn GetBreakOnCategory<
22304 Identity: ID3D11InfoQueue_Impl,
22305 const OFFSET: isize,
22306 >(
22307 this: *mut core::ffi::c_void,
22308 category: D3D11_MESSAGE_CATEGORY,
22309 ) -> crate::Foundation::BOOL {
22310 unsafe {
22311 let this: &Identity =
22312 &*((this as *const *const ()).offset(OFFSET) as *const Identity);
22313 ID3D11InfoQueue_Impl::GetBreakOnCategory(this, core::mem::transmute_copy(&category))
22314 }
22315 }
22316 unsafe extern "system" fn GetBreakOnSeverity<
22317 Identity: ID3D11InfoQueue_Impl,
22318 const OFFSET: isize,
22319 >(
22320 this: *mut core::ffi::c_void,
22321 severity: D3D11_MESSAGE_SEVERITY,
22322 ) -> crate::Foundation::BOOL {
22323 unsafe {
22324 let this: &Identity =
22325 &*((this as *const *const ()).offset(OFFSET) as *const Identity);
22326 ID3D11InfoQueue_Impl::GetBreakOnSeverity(this, core::mem::transmute_copy(&severity))
22327 }
22328 }
22329 unsafe extern "system" fn GetBreakOnID<
22330 Identity: ID3D11InfoQueue_Impl,
22331 const OFFSET: isize,
22332 >(
22333 this: *mut core::ffi::c_void,
22334 id: D3D11_MESSAGE_ID,
22335 ) -> crate::Foundation::BOOL {
22336 unsafe {
22337 let this: &Identity =
22338 &*((this as *const *const ()).offset(OFFSET) as *const Identity);
22339 ID3D11InfoQueue_Impl::GetBreakOnID(this, core::mem::transmute_copy(&id))
22340 }
22341 }
22342 unsafe extern "system" fn SetMuteDebugOutput<
22343 Identity: ID3D11InfoQueue_Impl,
22344 const OFFSET: isize,
22345 >(
22346 this: *mut core::ffi::c_void,
22347 bmute: crate::Foundation::BOOL,
22348 ) {
22349 unsafe {
22350 let this: &Identity =
22351 &*((this as *const *const ()).offset(OFFSET) as *const Identity);
22352 ID3D11InfoQueue_Impl::SetMuteDebugOutput(this, core::mem::transmute_copy(&bmute))
22353 }
22354 }
22355 unsafe extern "system" fn GetMuteDebugOutput<
22356 Identity: ID3D11InfoQueue_Impl,
22357 const OFFSET: isize,
22358 >(
22359 this: *mut core::ffi::c_void,
22360 ) -> crate::Foundation::BOOL {
22361 unsafe {
22362 let this: &Identity =
22363 &*((this as *const *const ()).offset(OFFSET) as *const Identity);
22364 ID3D11InfoQueue_Impl::GetMuteDebugOutput(this)
22365 }
22366 }
22367 Self {
22368 base__: windows_core::IUnknown_Vtbl::new::<Identity, OFFSET>(),
22369 SetMessageCountLimit: SetMessageCountLimit::<Identity, OFFSET>,
22370 ClearStoredMessages: ClearStoredMessages::<Identity, OFFSET>,
22371 GetMessage: GetMessage::<Identity, OFFSET>,
22372 GetNumMessagesAllowedByStorageFilter: GetNumMessagesAllowedByStorageFilter::<
22373 Identity,
22374 OFFSET,
22375 >,
22376 GetNumMessagesDeniedByStorageFilter: GetNumMessagesDeniedByStorageFilter::<
22377 Identity,
22378 OFFSET,
22379 >,
22380 GetNumStoredMessages: GetNumStoredMessages::<Identity, OFFSET>,
22381 GetNumStoredMessagesAllowedByRetrievalFilter:
22382 GetNumStoredMessagesAllowedByRetrievalFilter::<Identity, OFFSET>,
22383 GetNumMessagesDiscardedByMessageCountLimit: GetNumMessagesDiscardedByMessageCountLimit::<
22384 Identity,
22385 OFFSET,
22386 >,
22387 GetMessageCountLimit: GetMessageCountLimit::<Identity, OFFSET>,
22388 AddStorageFilterEntries: AddStorageFilterEntries::<Identity, OFFSET>,
22389 GetStorageFilter: GetStorageFilter::<Identity, OFFSET>,
22390 ClearStorageFilter: ClearStorageFilter::<Identity, OFFSET>,
22391 PushEmptyStorageFilter: PushEmptyStorageFilter::<Identity, OFFSET>,
22392 PushCopyOfStorageFilter: PushCopyOfStorageFilter::<Identity, OFFSET>,
22393 PushStorageFilter: PushStorageFilter::<Identity, OFFSET>,
22394 PopStorageFilter: PopStorageFilter::<Identity, OFFSET>,
22395 GetStorageFilterStackSize: GetStorageFilterStackSize::<Identity, OFFSET>,
22396 AddRetrievalFilterEntries: AddRetrievalFilterEntries::<Identity, OFFSET>,
22397 GetRetrievalFilter: GetRetrievalFilter::<Identity, OFFSET>,
22398 ClearRetrievalFilter: ClearRetrievalFilter::<Identity, OFFSET>,
22399 PushEmptyRetrievalFilter: PushEmptyRetrievalFilter::<Identity, OFFSET>,
22400 PushCopyOfRetrievalFilter: PushCopyOfRetrievalFilter::<Identity, OFFSET>,
22401 PushRetrievalFilter: PushRetrievalFilter::<Identity, OFFSET>,
22402 PopRetrievalFilter: PopRetrievalFilter::<Identity, OFFSET>,
22403 GetRetrievalFilterStackSize: GetRetrievalFilterStackSize::<Identity, OFFSET>,
22404 AddMessage: AddMessage::<Identity, OFFSET>,
22405 AddApplicationMessage: AddApplicationMessage::<Identity, OFFSET>,
22406 SetBreakOnCategory: SetBreakOnCategory::<Identity, OFFSET>,
22407 SetBreakOnSeverity: SetBreakOnSeverity::<Identity, OFFSET>,
22408 SetBreakOnID: SetBreakOnID::<Identity, OFFSET>,
22409 GetBreakOnCategory: GetBreakOnCategory::<Identity, OFFSET>,
22410 GetBreakOnSeverity: GetBreakOnSeverity::<Identity, OFFSET>,
22411 GetBreakOnID: GetBreakOnID::<Identity, OFFSET>,
22412 SetMuteDebugOutput: SetMuteDebugOutput::<Identity, OFFSET>,
22413 GetMuteDebugOutput: GetMuteDebugOutput::<Identity, OFFSET>,
22414 }
22415 }
22416 pub fn matches(iid: &windows_core::GUID) -> bool {
22417 iid == &<ID3D11InfoQueue as windows_core::Interface>::IID
22418 }
22419}
22420impl windows_core::RuntimeName for ID3D11InfoQueue {}
22421unsafe impl Send for ID3D11InfoQueue {}
22422unsafe impl Sync for ID3D11InfoQueue {}
22423windows_core::imp::define_interface!(
22424 ID3D11InputLayout,
22425 ID3D11InputLayout_Vtbl,
22426 0xe4819ddc_4cf0_4025_bd26_5de82a3e07b7
22427);
22428impl core::ops::Deref for ID3D11InputLayout {
22429 type Target = ID3D11DeviceChild;
22430 fn deref(&self) -> &Self::Target {
22431 unsafe { core::mem::transmute(self) }
22432 }
22433}
22434windows_core::imp::interface_hierarchy!(
22435 ID3D11InputLayout,
22436 windows_core::IUnknown,
22437 ID3D11DeviceChild
22438);
22439#[repr(C)]
22440pub struct ID3D11InputLayout_Vtbl {
22441 pub base__: ID3D11DeviceChild_Vtbl,
22442}
22443pub trait ID3D11InputLayout_Impl: ID3D11DeviceChild_Impl {}
22444impl ID3D11InputLayout_Vtbl {
22445 pub const fn new<Identity: ID3D11InputLayout_Impl, const OFFSET: isize>() -> Self {
22446 Self {
22447 base__: ID3D11DeviceChild_Vtbl::new::<Identity, OFFSET>(),
22448 }
22449 }
22450 pub fn matches(iid: &windows_core::GUID) -> bool {
22451 iid == &<ID3D11InputLayout as windows_core::Interface>::IID
22452 || iid == &<ID3D11DeviceChild as windows_core::Interface>::IID
22453 }
22454}
22455impl windows_core::RuntimeName for ID3D11InputLayout {}
22456unsafe impl Send for ID3D11InputLayout {}
22457unsafe impl Sync for ID3D11InputLayout {}
22458windows_core::imp::define_interface!(
22459 ID3D11LibraryReflection,
22460 ID3D11LibraryReflection_Vtbl,
22461 0x54384f1b_5b3e_4bb7_ae01_60ba3097cbb6
22462);
22463windows_core::imp::interface_hierarchy!(ID3D11LibraryReflection, windows_core::IUnknown);
22464impl ID3D11LibraryReflection {
22465 pub unsafe fn GetDesc(&self) -> windows_core::Result<D3D11_LIBRARY_DESC> {
22466 unsafe {
22467 let mut result__ = core::mem::zeroed();
22468 (windows_core::Interface::vtable(self).GetDesc)(
22469 windows_core::Interface::as_raw(self),
22470 &mut result__,
22471 )
22472 .map(|| result__)
22473 }
22474 }
22475 pub unsafe fn GetFunctionByIndex(
22476 &self,
22477 functionindex: i32,
22478 ) -> Option<ID3D11FunctionReflection> {
22479 unsafe {
22480 (windows_core::Interface::vtable(self).GetFunctionByIndex)(
22481 windows_core::Interface::as_raw(self),
22482 functionindex,
22483 )
22484 }
22485 }
22486}
22487#[repr(C)]
22488pub struct ID3D11LibraryReflection_Vtbl {
22489 pub base__: windows_core::IUnknown_Vtbl,
22490 pub GetDesc: unsafe extern "system" fn(
22491 *mut core::ffi::c_void,
22492 *mut D3D11_LIBRARY_DESC,
22493 ) -> windows_core::HRESULT,
22494 pub GetFunctionByIndex:
22495 unsafe extern "system" fn(*mut core::ffi::c_void, i32) -> Option<ID3D11FunctionReflection>,
22496}
22497pub trait ID3D11LibraryReflection_Impl: windows_core::IUnknownImpl {
22498 fn GetDesc(&self) -> windows_core::Result<D3D11_LIBRARY_DESC>;
22499 fn GetFunctionByIndex(&self, functionindex: i32) -> Option<ID3D11FunctionReflection>;
22500}
22501impl ID3D11LibraryReflection_Vtbl {
22502 pub const fn new<Identity: ID3D11LibraryReflection_Impl, const OFFSET: isize>() -> Self {
22503 unsafe extern "system" fn GetDesc<
22504 Identity: ID3D11LibraryReflection_Impl,
22505 const OFFSET: isize,
22506 >(
22507 this: *mut core::ffi::c_void,
22508 pdesc: *mut D3D11_LIBRARY_DESC,
22509 ) -> windows_core::HRESULT {
22510 unsafe {
22511 let this: &Identity =
22512 &*((this as *const *const ()).offset(OFFSET) as *const Identity);
22513 match ID3D11LibraryReflection_Impl::GetDesc(this) {
22514 Ok(ok__) => {
22515 pdesc.write(core::mem::transmute(ok__));
22516 windows_core::HRESULT(0)
22517 }
22518 Err(err) => err.into(),
22519 }
22520 }
22521 }
22522 unsafe extern "system" fn GetFunctionByIndex<
22523 Identity: ID3D11LibraryReflection_Impl,
22524 const OFFSET: isize,
22525 >(
22526 this: *mut core::ffi::c_void,
22527 functionindex: i32,
22528 ) -> Option<ID3D11FunctionReflection> {
22529 unsafe {
22530 let this: &Identity =
22531 &*((this as *const *const ()).offset(OFFSET) as *const Identity);
22532 ID3D11LibraryReflection_Impl::GetFunctionByIndex(
22533 this,
22534 core::mem::transmute_copy(&functionindex),
22535 )
22536 }
22537 }
22538 Self {
22539 base__: windows_core::IUnknown_Vtbl::new::<Identity, OFFSET>(),
22540 GetDesc: GetDesc::<Identity, OFFSET>,
22541 GetFunctionByIndex: GetFunctionByIndex::<Identity, OFFSET>,
22542 }
22543 }
22544 pub fn matches(iid: &windows_core::GUID) -> bool {
22545 iid == &<ID3D11LibraryReflection as windows_core::Interface>::IID
22546 }
22547}
22548impl windows_core::RuntimeName for ID3D11LibraryReflection {}
22549unsafe impl Send for ID3D11LibraryReflection {}
22550unsafe impl Sync for ID3D11LibraryReflection {}
22551windows_core::imp::define_interface!(
22552 ID3D11Linker,
22553 ID3D11Linker_Vtbl,
22554 0x59a6cd0e_e10d_4c1f_88c0_63aba1daf30e
22555);
22556windows_core::imp::interface_hierarchy!(ID3D11Linker, windows_core::IUnknown);
22557impl ID3D11Linker {
22558 #[cfg(feature = "Win32_Graphics_Direct3D")]
22559 pub unsafe fn Link<P0, P1, P2>(
22560 &self,
22561 pentry: P0,
22562 pentryname: P1,
22563 ptargetname: P2,
22564 uflags: u32,
22565 ppshaderblob: *mut Option<super::Direct3D::ID3DBlob>,
22566 pperrorbuffer: Option<*mut Option<super::Direct3D::ID3DBlob>>,
22567 ) -> windows_core::Result<()>
22568 where
22569 P0: windows_core::Param<ID3D11ModuleInstance>,
22570 P1: windows_core::Param<crate::core_supplemental::PCSTR>,
22571 P2: windows_core::Param<crate::core_supplemental::PCSTR>,
22572 {
22573 unsafe {
22574 (windows_core::Interface::vtable(self).Link)(
22575 windows_core::Interface::as_raw(self),
22576 pentry.param().abi(),
22577 pentryname.param().abi(),
22578 ptargetname.param().abi(),
22579 uflags,
22580 core::mem::transmute(ppshaderblob),
22581 core::mem::transmute(pperrorbuffer.unwrap_or(core::mem::zeroed())),
22582 )
22583 .ok()
22584 }
22585 }
22586 pub unsafe fn UseLibrary<P0>(&self, plibrarymi: P0) -> windows_core::Result<()>
22587 where
22588 P0: windows_core::Param<ID3D11ModuleInstance>,
22589 {
22590 unsafe {
22591 (windows_core::Interface::vtable(self).UseLibrary)(
22592 windows_core::Interface::as_raw(self),
22593 plibrarymi.param().abi(),
22594 )
22595 .ok()
22596 }
22597 }
22598 pub unsafe fn AddClipPlaneFromCBuffer(
22599 &self,
22600 ucbufferslot: u32,
22601 ucbufferentry: u32,
22602 ) -> windows_core::Result<()> {
22603 unsafe {
22604 (windows_core::Interface::vtable(self).AddClipPlaneFromCBuffer)(
22605 windows_core::Interface::as_raw(self),
22606 ucbufferslot,
22607 ucbufferentry,
22608 )
22609 .ok()
22610 }
22611 }
22612}
22613#[repr(C)]
22614pub struct ID3D11Linker_Vtbl {
22615 pub base__: windows_core::IUnknown_Vtbl,
22616 #[cfg(feature = "Win32_Graphics_Direct3D")]
22617 pub Link: unsafe extern "system" fn(
22618 *mut core::ffi::c_void,
22619 *mut core::ffi::c_void,
22620 crate::core_supplemental::PCSTR,
22621 crate::core_supplemental::PCSTR,
22622 u32,
22623 *mut *mut core::ffi::c_void,
22624 *mut *mut core::ffi::c_void,
22625 ) -> windows_core::HRESULT,
22626 #[cfg(not(feature = "Win32_Graphics_Direct3D"))]
22627 Link: usize,
22628 pub UseLibrary: unsafe extern "system" fn(
22629 *mut core::ffi::c_void,
22630 *mut core::ffi::c_void,
22631 ) -> windows_core::HRESULT,
22632 pub AddClipPlaneFromCBuffer:
22633 unsafe extern "system" fn(*mut core::ffi::c_void, u32, u32) -> windows_core::HRESULT,
22634}
22635#[cfg(feature = "Win32_Graphics_Direct3D")]
22636pub trait ID3D11Linker_Impl: windows_core::IUnknownImpl {
22637 fn Link(
22638 &self,
22639 pentry: windows_core::Ref<'_, ID3D11ModuleInstance>,
22640 pentryname: &crate::core_supplemental::PCSTR,
22641 ptargetname: &crate::core_supplemental::PCSTR,
22642 uflags: u32,
22643 ppshaderblob: windows_core::OutRef<'_, super::Direct3D::ID3DBlob>,
22644 pperrorbuffer: windows_core::OutRef<'_, super::Direct3D::ID3DBlob>,
22645 ) -> windows_core::Result<()>;
22646 fn UseLibrary(
22647 &self,
22648 plibrarymi: windows_core::Ref<'_, ID3D11ModuleInstance>,
22649 ) -> windows_core::Result<()>;
22650 fn AddClipPlaneFromCBuffer(
22651 &self,
22652 ucbufferslot: u32,
22653 ucbufferentry: u32,
22654 ) -> windows_core::Result<()>;
22655}
22656#[cfg(feature = "Win32_Graphics_Direct3D")]
22657impl ID3D11Linker_Vtbl {
22658 pub const fn new<Identity: ID3D11Linker_Impl, const OFFSET: isize>() -> Self {
22659 unsafe extern "system" fn Link<Identity: ID3D11Linker_Impl, const OFFSET: isize>(
22660 this: *mut core::ffi::c_void,
22661 pentry: *mut core::ffi::c_void,
22662 pentryname: crate::core_supplemental::PCSTR,
22663 ptargetname: crate::core_supplemental::PCSTR,
22664 uflags: u32,
22665 ppshaderblob: *mut *mut core::ffi::c_void,
22666 pperrorbuffer: *mut *mut core::ffi::c_void,
22667 ) -> windows_core::HRESULT {
22668 unsafe {
22669 let this: &Identity =
22670 &*((this as *const *const ()).offset(OFFSET) as *const Identity);
22671 ID3D11Linker_Impl::Link(
22672 this,
22673 core::mem::transmute_copy(&pentry),
22674 core::mem::transmute(&pentryname),
22675 core::mem::transmute(&ptargetname),
22676 core::mem::transmute_copy(&uflags),
22677 core::mem::transmute_copy(&ppshaderblob),
22678 core::mem::transmute_copy(&pperrorbuffer),
22679 )
22680 .into()
22681 }
22682 }
22683 unsafe extern "system" fn UseLibrary<Identity: ID3D11Linker_Impl, const OFFSET: isize>(
22684 this: *mut core::ffi::c_void,
22685 plibrarymi: *mut core::ffi::c_void,
22686 ) -> windows_core::HRESULT {
22687 unsafe {
22688 let this: &Identity =
22689 &*((this as *const *const ()).offset(OFFSET) as *const Identity);
22690 ID3D11Linker_Impl::UseLibrary(this, core::mem::transmute_copy(&plibrarymi)).into()
22691 }
22692 }
22693 unsafe extern "system" fn AddClipPlaneFromCBuffer<
22694 Identity: ID3D11Linker_Impl,
22695 const OFFSET: isize,
22696 >(
22697 this: *mut core::ffi::c_void,
22698 ucbufferslot: u32,
22699 ucbufferentry: u32,
22700 ) -> windows_core::HRESULT {
22701 unsafe {
22702 let this: &Identity =
22703 &*((this as *const *const ()).offset(OFFSET) as *const Identity);
22704 ID3D11Linker_Impl::AddClipPlaneFromCBuffer(
22705 this,
22706 core::mem::transmute_copy(&ucbufferslot),
22707 core::mem::transmute_copy(&ucbufferentry),
22708 )
22709 .into()
22710 }
22711 }
22712 Self {
22713 base__: windows_core::IUnknown_Vtbl::new::<Identity, OFFSET>(),
22714 Link: Link::<Identity, OFFSET>,
22715 UseLibrary: UseLibrary::<Identity, OFFSET>,
22716 AddClipPlaneFromCBuffer: AddClipPlaneFromCBuffer::<Identity, OFFSET>,
22717 }
22718 }
22719 pub fn matches(iid: &windows_core::GUID) -> bool {
22720 iid == &<ID3D11Linker as windows_core::Interface>::IID
22721 }
22722}
22723#[cfg(feature = "Win32_Graphics_Direct3D")]
22724impl windows_core::RuntimeName for ID3D11Linker {}
22725#[cfg(feature = "Win32_Graphics_Direct3D")]
22726unsafe impl Send for ID3D11Linker {}
22727#[cfg(feature = "Win32_Graphics_Direct3D")]
22728unsafe impl Sync for ID3D11Linker {}
22729windows_core::imp::define_interface!(
22730 ID3D11LinkingNode,
22731 ID3D11LinkingNode_Vtbl,
22732 0xd80dd70c_8d2f_4751_94a1_03c79b3556db
22733);
22734windows_core::imp::interface_hierarchy!(ID3D11LinkingNode, windows_core::IUnknown);
22735#[repr(C)]
22736pub struct ID3D11LinkingNode_Vtbl {
22737 pub base__: windows_core::IUnknown_Vtbl,
22738}
22739pub trait ID3D11LinkingNode_Impl: windows_core::IUnknownImpl {}
22740impl ID3D11LinkingNode_Vtbl {
22741 pub const fn new<Identity: ID3D11LinkingNode_Impl, const OFFSET: isize>() -> Self {
22742 Self {
22743 base__: windows_core::IUnknown_Vtbl::new::<Identity, OFFSET>(),
22744 }
22745 }
22746 pub fn matches(iid: &windows_core::GUID) -> bool {
22747 iid == &<ID3D11LinkingNode as windows_core::Interface>::IID
22748 }
22749}
22750impl windows_core::RuntimeName for ID3D11LinkingNode {}
22751unsafe impl Send for ID3D11LinkingNode {}
22752unsafe impl Sync for ID3D11LinkingNode {}
22753windows_core::imp::define_interface!(
22754 ID3D11Module,
22755 ID3D11Module_Vtbl,
22756 0xcac701ee_80fc_4122_8242_10b39c8cec34
22757);
22758windows_core::imp::interface_hierarchy!(ID3D11Module, windows_core::IUnknown);
22759impl ID3D11Module {
22760 pub unsafe fn CreateInstance<P0>(
22761 &self,
22762 pnamespace: P0,
22763 ) -> windows_core::Result<ID3D11ModuleInstance>
22764 where
22765 P0: windows_core::Param<crate::core_supplemental::PCSTR>,
22766 {
22767 unsafe {
22768 let mut result__ = core::mem::zeroed();
22769 (windows_core::Interface::vtable(self).CreateInstance)(
22770 windows_core::Interface::as_raw(self),
22771 pnamespace.param().abi(),
22772 &mut result__,
22773 )
22774 .and_then(|| windows_core::Type::from_abi(result__))
22775 }
22776 }
22777}
22778#[repr(C)]
22779pub struct ID3D11Module_Vtbl {
22780 pub base__: windows_core::IUnknown_Vtbl,
22781 pub CreateInstance: unsafe extern "system" fn(
22782 *mut core::ffi::c_void,
22783 crate::core_supplemental::PCSTR,
22784 *mut *mut core::ffi::c_void,
22785 ) -> windows_core::HRESULT,
22786}
22787pub trait ID3D11Module_Impl: windows_core::IUnknownImpl {
22788 fn CreateInstance(
22789 &self,
22790 pnamespace: &crate::core_supplemental::PCSTR,
22791 ) -> windows_core::Result<ID3D11ModuleInstance>;
22792}
22793impl ID3D11Module_Vtbl {
22794 pub const fn new<Identity: ID3D11Module_Impl, const OFFSET: isize>() -> Self {
22795 unsafe extern "system" fn CreateInstance<
22796 Identity: ID3D11Module_Impl,
22797 const OFFSET: isize,
22798 >(
22799 this: *mut core::ffi::c_void,
22800 pnamespace: crate::core_supplemental::PCSTR,
22801 ppmoduleinstance: *mut *mut core::ffi::c_void,
22802 ) -> windows_core::HRESULT {
22803 unsafe {
22804 let this: &Identity =
22805 &*((this as *const *const ()).offset(OFFSET) as *const Identity);
22806 match ID3D11Module_Impl::CreateInstance(this, core::mem::transmute(&pnamespace)) {
22807 Ok(ok__) => {
22808 ppmoduleinstance.write(core::mem::transmute(ok__));
22809 windows_core::HRESULT(0)
22810 }
22811 Err(err) => err.into(),
22812 }
22813 }
22814 }
22815 Self {
22816 base__: windows_core::IUnknown_Vtbl::new::<Identity, OFFSET>(),
22817 CreateInstance: CreateInstance::<Identity, OFFSET>,
22818 }
22819 }
22820 pub fn matches(iid: &windows_core::GUID) -> bool {
22821 iid == &<ID3D11Module as windows_core::Interface>::IID
22822 }
22823}
22824impl windows_core::RuntimeName for ID3D11Module {}
22825unsafe impl Send for ID3D11Module {}
22826unsafe impl Sync for ID3D11Module {}
22827windows_core::imp::define_interface!(
22828 ID3D11ModuleInstance,
22829 ID3D11ModuleInstance_Vtbl,
22830 0x469e07f7_045a_48d5_aa12_68a478cdf75d
22831);
22832windows_core::imp::interface_hierarchy!(ID3D11ModuleInstance, windows_core::IUnknown);
22833impl ID3D11ModuleInstance {
22834 pub unsafe fn BindConstantBuffer(
22835 &self,
22836 usrcslot: u32,
22837 udstslot: u32,
22838 cbdstoffset: u32,
22839 ) -> windows_core::Result<()> {
22840 unsafe {
22841 (windows_core::Interface::vtable(self).BindConstantBuffer)(
22842 windows_core::Interface::as_raw(self),
22843 usrcslot,
22844 udstslot,
22845 cbdstoffset,
22846 )
22847 .ok()
22848 }
22849 }
22850 pub unsafe fn BindConstantBufferByName<P0>(
22851 &self,
22852 pname: P0,
22853 udstslot: u32,
22854 cbdstoffset: u32,
22855 ) -> windows_core::Result<()>
22856 where
22857 P0: windows_core::Param<crate::core_supplemental::PCSTR>,
22858 {
22859 unsafe {
22860 (windows_core::Interface::vtable(self).BindConstantBufferByName)(
22861 windows_core::Interface::as_raw(self),
22862 pname.param().abi(),
22863 udstslot,
22864 cbdstoffset,
22865 )
22866 .ok()
22867 }
22868 }
22869 pub unsafe fn BindResource(
22870 &self,
22871 usrcslot: u32,
22872 udstslot: u32,
22873 ucount: u32,
22874 ) -> windows_core::Result<()> {
22875 unsafe {
22876 (windows_core::Interface::vtable(self).BindResource)(
22877 windows_core::Interface::as_raw(self),
22878 usrcslot,
22879 udstslot,
22880 ucount,
22881 )
22882 .ok()
22883 }
22884 }
22885 pub unsafe fn BindResourceByName<P0>(
22886 &self,
22887 pname: P0,
22888 udstslot: u32,
22889 ucount: u32,
22890 ) -> windows_core::Result<()>
22891 where
22892 P0: windows_core::Param<crate::core_supplemental::PCSTR>,
22893 {
22894 unsafe {
22895 (windows_core::Interface::vtable(self).BindResourceByName)(
22896 windows_core::Interface::as_raw(self),
22897 pname.param().abi(),
22898 udstslot,
22899 ucount,
22900 )
22901 .ok()
22902 }
22903 }
22904 pub unsafe fn BindSampler(
22905 &self,
22906 usrcslot: u32,
22907 udstslot: u32,
22908 ucount: u32,
22909 ) -> windows_core::Result<()> {
22910 unsafe {
22911 (windows_core::Interface::vtable(self).BindSampler)(
22912 windows_core::Interface::as_raw(self),
22913 usrcslot,
22914 udstslot,
22915 ucount,
22916 )
22917 .ok()
22918 }
22919 }
22920 pub unsafe fn BindSamplerByName<P0>(
22921 &self,
22922 pname: P0,
22923 udstslot: u32,
22924 ucount: u32,
22925 ) -> windows_core::Result<()>
22926 where
22927 P0: windows_core::Param<crate::core_supplemental::PCSTR>,
22928 {
22929 unsafe {
22930 (windows_core::Interface::vtable(self).BindSamplerByName)(
22931 windows_core::Interface::as_raw(self),
22932 pname.param().abi(),
22933 udstslot,
22934 ucount,
22935 )
22936 .ok()
22937 }
22938 }
22939 pub unsafe fn BindUnorderedAccessView(
22940 &self,
22941 usrcslot: u32,
22942 udstslot: u32,
22943 ucount: u32,
22944 ) -> windows_core::Result<()> {
22945 unsafe {
22946 (windows_core::Interface::vtable(self).BindUnorderedAccessView)(
22947 windows_core::Interface::as_raw(self),
22948 usrcslot,
22949 udstslot,
22950 ucount,
22951 )
22952 .ok()
22953 }
22954 }
22955 pub unsafe fn BindUnorderedAccessViewByName<P0>(
22956 &self,
22957 pname: P0,
22958 udstslot: u32,
22959 ucount: u32,
22960 ) -> windows_core::Result<()>
22961 where
22962 P0: windows_core::Param<crate::core_supplemental::PCSTR>,
22963 {
22964 unsafe {
22965 (windows_core::Interface::vtable(self).BindUnorderedAccessViewByName)(
22966 windows_core::Interface::as_raw(self),
22967 pname.param().abi(),
22968 udstslot,
22969 ucount,
22970 )
22971 .ok()
22972 }
22973 }
22974 pub unsafe fn BindResourceAsUnorderedAccessView(
22975 &self,
22976 usrcsrvslot: u32,
22977 udstuavslot: u32,
22978 ucount: u32,
22979 ) -> windows_core::Result<()> {
22980 unsafe {
22981 (windows_core::Interface::vtable(self).BindResourceAsUnorderedAccessView)(
22982 windows_core::Interface::as_raw(self),
22983 usrcsrvslot,
22984 udstuavslot,
22985 ucount,
22986 )
22987 .ok()
22988 }
22989 }
22990 pub unsafe fn BindResourceAsUnorderedAccessViewByName<P0>(
22991 &self,
22992 psrvname: P0,
22993 udstuavslot: u32,
22994 ucount: u32,
22995 ) -> windows_core::Result<()>
22996 where
22997 P0: windows_core::Param<crate::core_supplemental::PCSTR>,
22998 {
22999 unsafe {
23000 (windows_core::Interface::vtable(self).BindResourceAsUnorderedAccessViewByName)(
23001 windows_core::Interface::as_raw(self),
23002 psrvname.param().abi(),
23003 udstuavslot,
23004 ucount,
23005 )
23006 .ok()
23007 }
23008 }
23009}
23010#[repr(C)]
23011pub struct ID3D11ModuleInstance_Vtbl {
23012 pub base__: windows_core::IUnknown_Vtbl,
23013 pub BindConstantBuffer:
23014 unsafe extern "system" fn(*mut core::ffi::c_void, u32, u32, u32) -> windows_core::HRESULT,
23015 pub BindConstantBufferByName: unsafe extern "system" fn(
23016 *mut core::ffi::c_void,
23017 crate::core_supplemental::PCSTR,
23018 u32,
23019 u32,
23020 ) -> windows_core::HRESULT,
23021 pub BindResource:
23022 unsafe extern "system" fn(*mut core::ffi::c_void, u32, u32, u32) -> windows_core::HRESULT,
23023 pub BindResourceByName: unsafe extern "system" fn(
23024 *mut core::ffi::c_void,
23025 crate::core_supplemental::PCSTR,
23026 u32,
23027 u32,
23028 ) -> windows_core::HRESULT,
23029 pub BindSampler:
23030 unsafe extern "system" fn(*mut core::ffi::c_void, u32, u32, u32) -> windows_core::HRESULT,
23031 pub BindSamplerByName: unsafe extern "system" fn(
23032 *mut core::ffi::c_void,
23033 crate::core_supplemental::PCSTR,
23034 u32,
23035 u32,
23036 ) -> windows_core::HRESULT,
23037 pub BindUnorderedAccessView:
23038 unsafe extern "system" fn(*mut core::ffi::c_void, u32, u32, u32) -> windows_core::HRESULT,
23039 pub BindUnorderedAccessViewByName: unsafe extern "system" fn(
23040 *mut core::ffi::c_void,
23041 crate::core_supplemental::PCSTR,
23042 u32,
23043 u32,
23044 ) -> windows_core::HRESULT,
23045 pub BindResourceAsUnorderedAccessView:
23046 unsafe extern "system" fn(*mut core::ffi::c_void, u32, u32, u32) -> windows_core::HRESULT,
23047 pub BindResourceAsUnorderedAccessViewByName: unsafe extern "system" fn(
23048 *mut core::ffi::c_void,
23049 crate::core_supplemental::PCSTR,
23050 u32,
23051 u32,
23052 )
23053 -> windows_core::HRESULT,
23054}
23055pub trait ID3D11ModuleInstance_Impl: windows_core::IUnknownImpl {
23056 fn BindConstantBuffer(
23057 &self,
23058 usrcslot: u32,
23059 udstslot: u32,
23060 cbdstoffset: u32,
23061 ) -> windows_core::Result<()>;
23062 fn BindConstantBufferByName(
23063 &self,
23064 pname: &crate::core_supplemental::PCSTR,
23065 udstslot: u32,
23066 cbdstoffset: u32,
23067 ) -> windows_core::Result<()>;
23068 fn BindResource(&self, usrcslot: u32, udstslot: u32, ucount: u32) -> windows_core::Result<()>;
23069 fn BindResourceByName(
23070 &self,
23071 pname: &crate::core_supplemental::PCSTR,
23072 udstslot: u32,
23073 ucount: u32,
23074 ) -> windows_core::Result<()>;
23075 fn BindSampler(&self, usrcslot: u32, udstslot: u32, ucount: u32) -> windows_core::Result<()>;
23076 fn BindSamplerByName(
23077 &self,
23078 pname: &crate::core_supplemental::PCSTR,
23079 udstslot: u32,
23080 ucount: u32,
23081 ) -> windows_core::Result<()>;
23082 fn BindUnorderedAccessView(
23083 &self,
23084 usrcslot: u32,
23085 udstslot: u32,
23086 ucount: u32,
23087 ) -> windows_core::Result<()>;
23088 fn BindUnorderedAccessViewByName(
23089 &self,
23090 pname: &crate::core_supplemental::PCSTR,
23091 udstslot: u32,
23092 ucount: u32,
23093 ) -> windows_core::Result<()>;
23094 fn BindResourceAsUnorderedAccessView(
23095 &self,
23096 usrcsrvslot: u32,
23097 udstuavslot: u32,
23098 ucount: u32,
23099 ) -> windows_core::Result<()>;
23100 fn BindResourceAsUnorderedAccessViewByName(
23101 &self,
23102 psrvname: &crate::core_supplemental::PCSTR,
23103 udstuavslot: u32,
23104 ucount: u32,
23105 ) -> windows_core::Result<()>;
23106}
23107impl ID3D11ModuleInstance_Vtbl {
23108 pub const fn new<Identity: ID3D11ModuleInstance_Impl, const OFFSET: isize>() -> Self {
23109 unsafe extern "system" fn BindConstantBuffer<
23110 Identity: ID3D11ModuleInstance_Impl,
23111 const OFFSET: isize,
23112 >(
23113 this: *mut core::ffi::c_void,
23114 usrcslot: u32,
23115 udstslot: u32,
23116 cbdstoffset: u32,
23117 ) -> windows_core::HRESULT {
23118 unsafe {
23119 let this: &Identity =
23120 &*((this as *const *const ()).offset(OFFSET) as *const Identity);
23121 ID3D11ModuleInstance_Impl::BindConstantBuffer(
23122 this,
23123 core::mem::transmute_copy(&usrcslot),
23124 core::mem::transmute_copy(&udstslot),
23125 core::mem::transmute_copy(&cbdstoffset),
23126 )
23127 .into()
23128 }
23129 }
23130 unsafe extern "system" fn BindConstantBufferByName<
23131 Identity: ID3D11ModuleInstance_Impl,
23132 const OFFSET: isize,
23133 >(
23134 this: *mut core::ffi::c_void,
23135 pname: crate::core_supplemental::PCSTR,
23136 udstslot: u32,
23137 cbdstoffset: u32,
23138 ) -> windows_core::HRESULT {
23139 unsafe {
23140 let this: &Identity =
23141 &*((this as *const *const ()).offset(OFFSET) as *const Identity);
23142 ID3D11ModuleInstance_Impl::BindConstantBufferByName(
23143 this,
23144 core::mem::transmute(&pname),
23145 core::mem::transmute_copy(&udstslot),
23146 core::mem::transmute_copy(&cbdstoffset),
23147 )
23148 .into()
23149 }
23150 }
23151 unsafe extern "system" fn BindResource<
23152 Identity: ID3D11ModuleInstance_Impl,
23153 const OFFSET: isize,
23154 >(
23155 this: *mut core::ffi::c_void,
23156 usrcslot: u32,
23157 udstslot: u32,
23158 ucount: u32,
23159 ) -> windows_core::HRESULT {
23160 unsafe {
23161 let this: &Identity =
23162 &*((this as *const *const ()).offset(OFFSET) as *const Identity);
23163 ID3D11ModuleInstance_Impl::BindResource(
23164 this,
23165 core::mem::transmute_copy(&usrcslot),
23166 core::mem::transmute_copy(&udstslot),
23167 core::mem::transmute_copy(&ucount),
23168 )
23169 .into()
23170 }
23171 }
23172 unsafe extern "system" fn BindResourceByName<
23173 Identity: ID3D11ModuleInstance_Impl,
23174 const OFFSET: isize,
23175 >(
23176 this: *mut core::ffi::c_void,
23177 pname: crate::core_supplemental::PCSTR,
23178 udstslot: u32,
23179 ucount: u32,
23180 ) -> windows_core::HRESULT {
23181 unsafe {
23182 let this: &Identity =
23183 &*((this as *const *const ()).offset(OFFSET) as *const Identity);
23184 ID3D11ModuleInstance_Impl::BindResourceByName(
23185 this,
23186 core::mem::transmute(&pname),
23187 core::mem::transmute_copy(&udstslot),
23188 core::mem::transmute_copy(&ucount),
23189 )
23190 .into()
23191 }
23192 }
23193 unsafe extern "system" fn BindSampler<
23194 Identity: ID3D11ModuleInstance_Impl,
23195 const OFFSET: isize,
23196 >(
23197 this: *mut core::ffi::c_void,
23198 usrcslot: u32,
23199 udstslot: u32,
23200 ucount: u32,
23201 ) -> windows_core::HRESULT {
23202 unsafe {
23203 let this: &Identity =
23204 &*((this as *const *const ()).offset(OFFSET) as *const Identity);
23205 ID3D11ModuleInstance_Impl::BindSampler(
23206 this,
23207 core::mem::transmute_copy(&usrcslot),
23208 core::mem::transmute_copy(&udstslot),
23209 core::mem::transmute_copy(&ucount),
23210 )
23211 .into()
23212 }
23213 }
23214 unsafe extern "system" fn BindSamplerByName<
23215 Identity: ID3D11ModuleInstance_Impl,
23216 const OFFSET: isize,
23217 >(
23218 this: *mut core::ffi::c_void,
23219 pname: crate::core_supplemental::PCSTR,
23220 udstslot: u32,
23221 ucount: u32,
23222 ) -> windows_core::HRESULT {
23223 unsafe {
23224 let this: &Identity =
23225 &*((this as *const *const ()).offset(OFFSET) as *const Identity);
23226 ID3D11ModuleInstance_Impl::BindSamplerByName(
23227 this,
23228 core::mem::transmute(&pname),
23229 core::mem::transmute_copy(&udstslot),
23230 core::mem::transmute_copy(&ucount),
23231 )
23232 .into()
23233 }
23234 }
23235 unsafe extern "system" fn BindUnorderedAccessView<
23236 Identity: ID3D11ModuleInstance_Impl,
23237 const OFFSET: isize,
23238 >(
23239 this: *mut core::ffi::c_void,
23240 usrcslot: u32,
23241 udstslot: u32,
23242 ucount: u32,
23243 ) -> windows_core::HRESULT {
23244 unsafe {
23245 let this: &Identity =
23246 &*((this as *const *const ()).offset(OFFSET) as *const Identity);
23247 ID3D11ModuleInstance_Impl::BindUnorderedAccessView(
23248 this,
23249 core::mem::transmute_copy(&usrcslot),
23250 core::mem::transmute_copy(&udstslot),
23251 core::mem::transmute_copy(&ucount),
23252 )
23253 .into()
23254 }
23255 }
23256 unsafe extern "system" fn BindUnorderedAccessViewByName<
23257 Identity: ID3D11ModuleInstance_Impl,
23258 const OFFSET: isize,
23259 >(
23260 this: *mut core::ffi::c_void,
23261 pname: crate::core_supplemental::PCSTR,
23262 udstslot: u32,
23263 ucount: u32,
23264 ) -> windows_core::HRESULT {
23265 unsafe {
23266 let this: &Identity =
23267 &*((this as *const *const ()).offset(OFFSET) as *const Identity);
23268 ID3D11ModuleInstance_Impl::BindUnorderedAccessViewByName(
23269 this,
23270 core::mem::transmute(&pname),
23271 core::mem::transmute_copy(&udstslot),
23272 core::mem::transmute_copy(&ucount),
23273 )
23274 .into()
23275 }
23276 }
23277 unsafe extern "system" fn BindResourceAsUnorderedAccessView<
23278 Identity: ID3D11ModuleInstance_Impl,
23279 const OFFSET: isize,
23280 >(
23281 this: *mut core::ffi::c_void,
23282 usrcsrvslot: u32,
23283 udstuavslot: u32,
23284 ucount: u32,
23285 ) -> windows_core::HRESULT {
23286 unsafe {
23287 let this: &Identity =
23288 &*((this as *const *const ()).offset(OFFSET) as *const Identity);
23289 ID3D11ModuleInstance_Impl::BindResourceAsUnorderedAccessView(
23290 this,
23291 core::mem::transmute_copy(&usrcsrvslot),
23292 core::mem::transmute_copy(&udstuavslot),
23293 core::mem::transmute_copy(&ucount),
23294 )
23295 .into()
23296 }
23297 }
23298 unsafe extern "system" fn BindResourceAsUnorderedAccessViewByName<
23299 Identity: ID3D11ModuleInstance_Impl,
23300 const OFFSET: isize,
23301 >(
23302 this: *mut core::ffi::c_void,
23303 psrvname: crate::core_supplemental::PCSTR,
23304 udstuavslot: u32,
23305 ucount: u32,
23306 ) -> windows_core::HRESULT {
23307 unsafe {
23308 let this: &Identity =
23309 &*((this as *const *const ()).offset(OFFSET) as *const Identity);
23310 ID3D11ModuleInstance_Impl::BindResourceAsUnorderedAccessViewByName(
23311 this,
23312 core::mem::transmute(&psrvname),
23313 core::mem::transmute_copy(&udstuavslot),
23314 core::mem::transmute_copy(&ucount),
23315 )
23316 .into()
23317 }
23318 }
23319 Self {
23320 base__: windows_core::IUnknown_Vtbl::new::<Identity, OFFSET>(),
23321 BindConstantBuffer: BindConstantBuffer::<Identity, OFFSET>,
23322 BindConstantBufferByName: BindConstantBufferByName::<Identity, OFFSET>,
23323 BindResource: BindResource::<Identity, OFFSET>,
23324 BindResourceByName: BindResourceByName::<Identity, OFFSET>,
23325 BindSampler: BindSampler::<Identity, OFFSET>,
23326 BindSamplerByName: BindSamplerByName::<Identity, OFFSET>,
23327 BindUnorderedAccessView: BindUnorderedAccessView::<Identity, OFFSET>,
23328 BindUnorderedAccessViewByName: BindUnorderedAccessViewByName::<Identity, OFFSET>,
23329 BindResourceAsUnorderedAccessView: BindResourceAsUnorderedAccessView::<Identity, OFFSET>,
23330 BindResourceAsUnorderedAccessViewByName: BindResourceAsUnorderedAccessViewByName::<
23331 Identity,
23332 OFFSET,
23333 >,
23334 }
23335 }
23336 pub fn matches(iid: &windows_core::GUID) -> bool {
23337 iid == &<ID3D11ModuleInstance as windows_core::Interface>::IID
23338 }
23339}
23340impl windows_core::RuntimeName for ID3D11ModuleInstance {}
23341unsafe impl Send for ID3D11ModuleInstance {}
23342unsafe impl Sync for ID3D11ModuleInstance {}
23343windows_core::imp::define_interface!(
23344 ID3D11Multithread,
23345 ID3D11Multithread_Vtbl,
23346 0x9b7e4e00_342c_4106_a19f_4f2704f689f0
23347);
23348windows_core::imp::interface_hierarchy!(ID3D11Multithread, windows_core::IUnknown);
23349impl ID3D11Multithread {
23350 pub unsafe fn Enter(&self) {
23351 unsafe {
23352 (windows_core::Interface::vtable(self).Enter)(windows_core::Interface::as_raw(self))
23353 }
23354 }
23355 pub unsafe fn Leave(&self) {
23356 unsafe {
23357 (windows_core::Interface::vtable(self).Leave)(windows_core::Interface::as_raw(self))
23358 }
23359 }
23360 pub unsafe fn SetMultithreadProtected(
23361 &self,
23362 bmtprotect: bool,
23363 ) -> crate::Foundation::BOOL {
23364 unsafe {
23365 (windows_core::Interface::vtable(self).SetMultithreadProtected)(
23366 windows_core::Interface::as_raw(self),
23367 bmtprotect.into(),
23368 )
23369 }
23370 }
23371 pub unsafe fn GetMultithreadProtected(&self) -> crate::Foundation::BOOL {
23372 unsafe {
23373 (windows_core::Interface::vtable(self).GetMultithreadProtected)(
23374 windows_core::Interface::as_raw(self),
23375 )
23376 }
23377 }
23378}
23379#[repr(C)]
23380pub struct ID3D11Multithread_Vtbl {
23381 pub base__: windows_core::IUnknown_Vtbl,
23382 pub Enter: unsafe extern "system" fn(*mut core::ffi::c_void),
23383 pub Leave: unsafe extern "system" fn(*mut core::ffi::c_void),
23384 pub SetMultithreadProtected: unsafe extern "system" fn(
23385 *mut core::ffi::c_void,
23386 crate::Foundation::BOOL,
23387 ) -> crate::Foundation::BOOL,
23388 pub GetMultithreadProtected:
23389 unsafe extern "system" fn(*mut core::ffi::c_void) -> crate::Foundation::BOOL,
23390}
23391pub trait ID3D11Multithread_Impl: windows_core::IUnknownImpl {
23392 fn Enter(&self);
23393 fn Leave(&self);
23394 fn SetMultithreadProtected(
23395 &self,
23396 bmtprotect: crate::Foundation::BOOL,
23397 ) -> crate::Foundation::BOOL;
23398 fn GetMultithreadProtected(&self) -> crate::Foundation::BOOL;
23399}
23400impl ID3D11Multithread_Vtbl {
23401 pub const fn new<Identity: ID3D11Multithread_Impl, const OFFSET: isize>() -> Self {
23402 unsafe extern "system" fn Enter<Identity: ID3D11Multithread_Impl, const OFFSET: isize>(
23403 this: *mut core::ffi::c_void,
23404 ) {
23405 unsafe {
23406 let this: &Identity =
23407 &*((this as *const *const ()).offset(OFFSET) as *const Identity);
23408 ID3D11Multithread_Impl::Enter(this)
23409 }
23410 }
23411 unsafe extern "system" fn Leave<Identity: ID3D11Multithread_Impl, const OFFSET: isize>(
23412 this: *mut core::ffi::c_void,
23413 ) {
23414 unsafe {
23415 let this: &Identity =
23416 &*((this as *const *const ()).offset(OFFSET) as *const Identity);
23417 ID3D11Multithread_Impl::Leave(this)
23418 }
23419 }
23420 unsafe extern "system" fn SetMultithreadProtected<
23421 Identity: ID3D11Multithread_Impl,
23422 const OFFSET: isize,
23423 >(
23424 this: *mut core::ffi::c_void,
23425 bmtprotect: crate::Foundation::BOOL,
23426 ) -> crate::Foundation::BOOL {
23427 unsafe {
23428 let this: &Identity =
23429 &*((this as *const *const ()).offset(OFFSET) as *const Identity);
23430 ID3D11Multithread_Impl::SetMultithreadProtected(
23431 this,
23432 core::mem::transmute_copy(&bmtprotect),
23433 )
23434 }
23435 }
23436 unsafe extern "system" fn GetMultithreadProtected<
23437 Identity: ID3D11Multithread_Impl,
23438 const OFFSET: isize,
23439 >(
23440 this: *mut core::ffi::c_void,
23441 ) -> crate::Foundation::BOOL {
23442 unsafe {
23443 let this: &Identity =
23444 &*((this as *const *const ()).offset(OFFSET) as *const Identity);
23445 ID3D11Multithread_Impl::GetMultithreadProtected(this)
23446 }
23447 }
23448 Self {
23449 base__: windows_core::IUnknown_Vtbl::new::<Identity, OFFSET>(),
23450 Enter: Enter::<Identity, OFFSET>,
23451 Leave: Leave::<Identity, OFFSET>,
23452 SetMultithreadProtected: SetMultithreadProtected::<Identity, OFFSET>,
23453 GetMultithreadProtected: GetMultithreadProtected::<Identity, OFFSET>,
23454 }
23455 }
23456 pub fn matches(iid: &windows_core::GUID) -> bool {
23457 iid == &<ID3D11Multithread as windows_core::Interface>::IID
23458 }
23459}
23460impl windows_core::RuntimeName for ID3D11Multithread {}
23461unsafe impl Send for ID3D11Multithread {}
23462unsafe impl Sync for ID3D11Multithread {}
23463windows_core::imp::define_interface!(
23464 ID3D11PixelShader,
23465 ID3D11PixelShader_Vtbl,
23466 0xea82e40d_51dc_4f33_93d4_db7c9125ae8c
23467);
23468impl core::ops::Deref for ID3D11PixelShader {
23469 type Target = ID3D11DeviceChild;
23470 fn deref(&self) -> &Self::Target {
23471 unsafe { core::mem::transmute(self) }
23472 }
23473}
23474windows_core::imp::interface_hierarchy!(
23475 ID3D11PixelShader,
23476 windows_core::IUnknown,
23477 ID3D11DeviceChild
23478);
23479#[repr(C)]
23480pub struct ID3D11PixelShader_Vtbl {
23481 pub base__: ID3D11DeviceChild_Vtbl,
23482}
23483pub trait ID3D11PixelShader_Impl: ID3D11DeviceChild_Impl {}
23484impl ID3D11PixelShader_Vtbl {
23485 pub const fn new<Identity: ID3D11PixelShader_Impl, const OFFSET: isize>() -> Self {
23486 Self {
23487 base__: ID3D11DeviceChild_Vtbl::new::<Identity, OFFSET>(),
23488 }
23489 }
23490 pub fn matches(iid: &windows_core::GUID) -> bool {
23491 iid == &<ID3D11PixelShader as windows_core::Interface>::IID
23492 || iid == &<ID3D11DeviceChild as windows_core::Interface>::IID
23493 }
23494}
23495impl windows_core::RuntimeName for ID3D11PixelShader {}
23496unsafe impl Send for ID3D11PixelShader {}
23497unsafe impl Sync for ID3D11PixelShader {}
23498windows_core::imp::define_interface!(
23499 ID3D11Predicate,
23500 ID3D11Predicate_Vtbl,
23501 0x9eb576dd_9f77_4d86_81aa_8bab5fe490e2
23502);
23503impl core::ops::Deref for ID3D11Predicate {
23504 type Target = ID3D11Query;
23505 fn deref(&self) -> &Self::Target {
23506 unsafe { core::mem::transmute(self) }
23507 }
23508}
23509windows_core::imp::interface_hierarchy!(
23510 ID3D11Predicate,
23511 windows_core::IUnknown,
23512 ID3D11DeviceChild,
23513 ID3D11Asynchronous,
23514 ID3D11Query
23515);
23516#[repr(C)]
23517pub struct ID3D11Predicate_Vtbl {
23518 pub base__: ID3D11Query_Vtbl,
23519}
23520pub trait ID3D11Predicate_Impl: ID3D11Query_Impl {}
23521impl ID3D11Predicate_Vtbl {
23522 pub const fn new<Identity: ID3D11Predicate_Impl, const OFFSET: isize>() -> Self {
23523 Self {
23524 base__: ID3D11Query_Vtbl::new::<Identity, OFFSET>(),
23525 }
23526 }
23527 pub fn matches(iid: &windows_core::GUID) -> bool {
23528 iid == &<ID3D11Predicate as windows_core::Interface>::IID
23529 || iid == &<ID3D11DeviceChild as windows_core::Interface>::IID
23530 || iid == &<ID3D11Asynchronous as windows_core::Interface>::IID
23531 || iid == &<ID3D11Query as windows_core::Interface>::IID
23532 }
23533}
23534impl windows_core::RuntimeName for ID3D11Predicate {}
23535unsafe impl Send for ID3D11Predicate {}
23536unsafe impl Sync for ID3D11Predicate {}
23537windows_core::imp::define_interface!(
23538 ID3D11Query,
23539 ID3D11Query_Vtbl,
23540 0xd6c00747_87b7_425e_b84d_44d108560afd
23541);
23542impl core::ops::Deref for ID3D11Query {
23543 type Target = ID3D11Asynchronous;
23544 fn deref(&self) -> &Self::Target {
23545 unsafe { core::mem::transmute(self) }
23546 }
23547}
23548windows_core::imp::interface_hierarchy!(
23549 ID3D11Query,
23550 windows_core::IUnknown,
23551 ID3D11DeviceChild,
23552 ID3D11Asynchronous
23553);
23554impl ID3D11Query {
23555 pub unsafe fn GetDesc(&self) -> D3D11_QUERY_DESC {
23556 unsafe {
23557 let mut result__ = core::mem::zeroed();
23558 (windows_core::Interface::vtable(self).GetDesc)(
23559 windows_core::Interface::as_raw(self),
23560 &mut result__,
23561 );
23562 result__
23563 }
23564 }
23565}
23566#[repr(C)]
23567pub struct ID3D11Query_Vtbl {
23568 pub base__: ID3D11Asynchronous_Vtbl,
23569 pub GetDesc: unsafe extern "system" fn(*mut core::ffi::c_void, *mut D3D11_QUERY_DESC),
23570}
23571pub trait ID3D11Query_Impl: ID3D11Asynchronous_Impl {
23572 fn GetDesc(&self, pdesc: *mut D3D11_QUERY_DESC);
23573}
23574impl ID3D11Query_Vtbl {
23575 pub const fn new<Identity: ID3D11Query_Impl, const OFFSET: isize>() -> Self {
23576 unsafe extern "system" fn GetDesc<Identity: ID3D11Query_Impl, const OFFSET: isize>(
23577 this: *mut core::ffi::c_void,
23578 pdesc: *mut D3D11_QUERY_DESC,
23579 ) {
23580 unsafe {
23581 let this: &Identity =
23582 &*((this as *const *const ()).offset(OFFSET) as *const Identity);
23583 ID3D11Query_Impl::GetDesc(this, core::mem::transmute_copy(&pdesc))
23584 }
23585 }
23586 Self {
23587 base__: ID3D11Asynchronous_Vtbl::new::<Identity, OFFSET>(),
23588 GetDesc: GetDesc::<Identity, OFFSET>,
23589 }
23590 }
23591 pub fn matches(iid: &windows_core::GUID) -> bool {
23592 iid == &<ID3D11Query as windows_core::Interface>::IID
23593 || iid == &<ID3D11DeviceChild as windows_core::Interface>::IID
23594 || iid == &<ID3D11Asynchronous as windows_core::Interface>::IID
23595 }
23596}
23597impl windows_core::RuntimeName for ID3D11Query {}
23598unsafe impl Send for ID3D11Query {}
23599unsafe impl Sync for ID3D11Query {}
23600windows_core::imp::define_interface!(
23601 ID3D11Query1,
23602 ID3D11Query1_Vtbl,
23603 0x631b4766_36dc_461d_8db6_c47e13e60916
23604);
23605impl core::ops::Deref for ID3D11Query1 {
23606 type Target = ID3D11Query;
23607 fn deref(&self) -> &Self::Target {
23608 unsafe { core::mem::transmute(self) }
23609 }
23610}
23611windows_core::imp::interface_hierarchy!(
23612 ID3D11Query1,
23613 windows_core::IUnknown,
23614 ID3D11DeviceChild,
23615 ID3D11Asynchronous,
23616 ID3D11Query
23617);
23618impl ID3D11Query1 {
23619 pub unsafe fn GetDesc1(&self) -> D3D11_QUERY_DESC1 {
23620 unsafe {
23621 let mut result__ = core::mem::zeroed();
23622 (windows_core::Interface::vtable(self).GetDesc1)(
23623 windows_core::Interface::as_raw(self),
23624 &mut result__,
23625 );
23626 result__
23627 }
23628 }
23629}
23630#[repr(C)]
23631pub struct ID3D11Query1_Vtbl {
23632 pub base__: ID3D11Query_Vtbl,
23633 pub GetDesc1: unsafe extern "system" fn(*mut core::ffi::c_void, *mut D3D11_QUERY_DESC1),
23634}
23635pub trait ID3D11Query1_Impl: ID3D11Query_Impl {
23636 fn GetDesc1(&self, pdesc1: *mut D3D11_QUERY_DESC1);
23637}
23638impl ID3D11Query1_Vtbl {
23639 pub const fn new<Identity: ID3D11Query1_Impl, const OFFSET: isize>() -> Self {
23640 unsafe extern "system" fn GetDesc1<Identity: ID3D11Query1_Impl, const OFFSET: isize>(
23641 this: *mut core::ffi::c_void,
23642 pdesc1: *mut D3D11_QUERY_DESC1,
23643 ) {
23644 unsafe {
23645 let this: &Identity =
23646 &*((this as *const *const ()).offset(OFFSET) as *const Identity);
23647 ID3D11Query1_Impl::GetDesc1(this, core::mem::transmute_copy(&pdesc1))
23648 }
23649 }
23650 Self {
23651 base__: ID3D11Query_Vtbl::new::<Identity, OFFSET>(),
23652 GetDesc1: GetDesc1::<Identity, OFFSET>,
23653 }
23654 }
23655 pub fn matches(iid: &windows_core::GUID) -> bool {
23656 iid == &<ID3D11Query1 as windows_core::Interface>::IID
23657 || iid == &<ID3D11DeviceChild as windows_core::Interface>::IID
23658 || iid == &<ID3D11Asynchronous as windows_core::Interface>::IID
23659 || iid == &<ID3D11Query as windows_core::Interface>::IID
23660 }
23661}
23662impl windows_core::RuntimeName for ID3D11Query1 {}
23663unsafe impl Send for ID3D11Query1 {}
23664unsafe impl Sync for ID3D11Query1 {}
23665windows_core::imp::define_interface!(
23666 ID3D11RasterizerState,
23667 ID3D11RasterizerState_Vtbl,
23668 0x9bb4ab81_ab1a_4d8f_b506_fc04200b6ee7
23669);
23670impl core::ops::Deref for ID3D11RasterizerState {
23671 type Target = ID3D11DeviceChild;
23672 fn deref(&self) -> &Self::Target {
23673 unsafe { core::mem::transmute(self) }
23674 }
23675}
23676windows_core::imp::interface_hierarchy!(
23677 ID3D11RasterizerState,
23678 windows_core::IUnknown,
23679 ID3D11DeviceChild
23680);
23681impl ID3D11RasterizerState {
23682 pub unsafe fn GetDesc(&self, pdesc: *mut D3D11_RASTERIZER_DESC) {
23683 unsafe {
23684 (windows_core::Interface::vtable(self).GetDesc)(
23685 windows_core::Interface::as_raw(self),
23686 core::mem::transmute(pdesc),
23687 )
23688 }
23689 }
23690}
23691#[repr(C)]
23692pub struct ID3D11RasterizerState_Vtbl {
23693 pub base__: ID3D11DeviceChild_Vtbl,
23694 pub GetDesc: unsafe extern "system" fn(*mut core::ffi::c_void, *mut D3D11_RASTERIZER_DESC),
23695}
23696pub trait ID3D11RasterizerState_Impl: ID3D11DeviceChild_Impl {
23697 fn GetDesc(&self, pdesc: *mut D3D11_RASTERIZER_DESC);
23698}
23699impl ID3D11RasterizerState_Vtbl {
23700 pub const fn new<Identity: ID3D11RasterizerState_Impl, const OFFSET: isize>() -> Self {
23701 unsafe extern "system" fn GetDesc<
23702 Identity: ID3D11RasterizerState_Impl,
23703 const OFFSET: isize,
23704 >(
23705 this: *mut core::ffi::c_void,
23706 pdesc: *mut D3D11_RASTERIZER_DESC,
23707 ) {
23708 unsafe {
23709 let this: &Identity =
23710 &*((this as *const *const ()).offset(OFFSET) as *const Identity);
23711 ID3D11RasterizerState_Impl::GetDesc(this, core::mem::transmute_copy(&pdesc))
23712 }
23713 }
23714 Self {
23715 base__: ID3D11DeviceChild_Vtbl::new::<Identity, OFFSET>(),
23716 GetDesc: GetDesc::<Identity, OFFSET>,
23717 }
23718 }
23719 pub fn matches(iid: &windows_core::GUID) -> bool {
23720 iid == &<ID3D11RasterizerState as windows_core::Interface>::IID
23721 || iid == &<ID3D11DeviceChild as windows_core::Interface>::IID
23722 }
23723}
23724impl windows_core::RuntimeName for ID3D11RasterizerState {}
23725unsafe impl Send for ID3D11RasterizerState {}
23726unsafe impl Sync for ID3D11RasterizerState {}
23727windows_core::imp::define_interface!(
23728 ID3D11RasterizerState1,
23729 ID3D11RasterizerState1_Vtbl,
23730 0x1217d7a6_5039_418c_b042_9cbe256afd6e
23731);
23732impl core::ops::Deref for ID3D11RasterizerState1 {
23733 type Target = ID3D11RasterizerState;
23734 fn deref(&self) -> &Self::Target {
23735 unsafe { core::mem::transmute(self) }
23736 }
23737}
23738windows_core::imp::interface_hierarchy!(
23739 ID3D11RasterizerState1,
23740 windows_core::IUnknown,
23741 ID3D11DeviceChild,
23742 ID3D11RasterizerState
23743);
23744impl ID3D11RasterizerState1 {
23745 pub unsafe fn GetDesc1(&self, pdesc: *mut D3D11_RASTERIZER_DESC1) {
23746 unsafe {
23747 (windows_core::Interface::vtable(self).GetDesc1)(
23748 windows_core::Interface::as_raw(self),
23749 core::mem::transmute(pdesc),
23750 )
23751 }
23752 }
23753}
23754#[repr(C)]
23755pub struct ID3D11RasterizerState1_Vtbl {
23756 pub base__: ID3D11RasterizerState_Vtbl,
23757 pub GetDesc1: unsafe extern "system" fn(*mut core::ffi::c_void, *mut D3D11_RASTERIZER_DESC1),
23758}
23759pub trait ID3D11RasterizerState1_Impl: ID3D11RasterizerState_Impl {
23760 fn GetDesc1(&self, pdesc: *mut D3D11_RASTERIZER_DESC1);
23761}
23762impl ID3D11RasterizerState1_Vtbl {
23763 pub const fn new<Identity: ID3D11RasterizerState1_Impl, const OFFSET: isize>() -> Self {
23764 unsafe extern "system" fn GetDesc1<
23765 Identity: ID3D11RasterizerState1_Impl,
23766 const OFFSET: isize,
23767 >(
23768 this: *mut core::ffi::c_void,
23769 pdesc: *mut D3D11_RASTERIZER_DESC1,
23770 ) {
23771 unsafe {
23772 let this: &Identity =
23773 &*((this as *const *const ()).offset(OFFSET) as *const Identity);
23774 ID3D11RasterizerState1_Impl::GetDesc1(this, core::mem::transmute_copy(&pdesc))
23775 }
23776 }
23777 Self {
23778 base__: ID3D11RasterizerState_Vtbl::new::<Identity, OFFSET>(),
23779 GetDesc1: GetDesc1::<Identity, OFFSET>,
23780 }
23781 }
23782 pub fn matches(iid: &windows_core::GUID) -> bool {
23783 iid == &<ID3D11RasterizerState1 as windows_core::Interface>::IID
23784 || iid == &<ID3D11DeviceChild as windows_core::Interface>::IID
23785 || iid == &<ID3D11RasterizerState as windows_core::Interface>::IID
23786 }
23787}
23788impl windows_core::RuntimeName for ID3D11RasterizerState1 {}
23789unsafe impl Send for ID3D11RasterizerState1 {}
23790unsafe impl Sync for ID3D11RasterizerState1 {}
23791windows_core::imp::define_interface!(
23792 ID3D11RasterizerState2,
23793 ID3D11RasterizerState2_Vtbl,
23794 0x6fbd02fb_209f_46c4_b059_2ed15586a6ac
23795);
23796impl core::ops::Deref for ID3D11RasterizerState2 {
23797 type Target = ID3D11RasterizerState1;
23798 fn deref(&self) -> &Self::Target {
23799 unsafe { core::mem::transmute(self) }
23800 }
23801}
23802windows_core::imp::interface_hierarchy!(
23803 ID3D11RasterizerState2,
23804 windows_core::IUnknown,
23805 ID3D11DeviceChild,
23806 ID3D11RasterizerState,
23807 ID3D11RasterizerState1
23808);
23809impl ID3D11RasterizerState2 {
23810 pub unsafe fn GetDesc2(&self, pdesc: *mut D3D11_RASTERIZER_DESC2) {
23811 unsafe {
23812 (windows_core::Interface::vtable(self).GetDesc2)(
23813 windows_core::Interface::as_raw(self),
23814 core::mem::transmute(pdesc),
23815 )
23816 }
23817 }
23818}
23819#[repr(C)]
23820pub struct ID3D11RasterizerState2_Vtbl {
23821 pub base__: ID3D11RasterizerState1_Vtbl,
23822 pub GetDesc2: unsafe extern "system" fn(*mut core::ffi::c_void, *mut D3D11_RASTERIZER_DESC2),
23823}
23824pub trait ID3D11RasterizerState2_Impl: ID3D11RasterizerState1_Impl {
23825 fn GetDesc2(&self, pdesc: *mut D3D11_RASTERIZER_DESC2);
23826}
23827impl ID3D11RasterizerState2_Vtbl {
23828 pub const fn new<Identity: ID3D11RasterizerState2_Impl, const OFFSET: isize>() -> Self {
23829 unsafe extern "system" fn GetDesc2<
23830 Identity: ID3D11RasterizerState2_Impl,
23831 const OFFSET: isize,
23832 >(
23833 this: *mut core::ffi::c_void,
23834 pdesc: *mut D3D11_RASTERIZER_DESC2,
23835 ) {
23836 unsafe {
23837 let this: &Identity =
23838 &*((this as *const *const ()).offset(OFFSET) as *const Identity);
23839 ID3D11RasterizerState2_Impl::GetDesc2(this, core::mem::transmute_copy(&pdesc))
23840 }
23841 }
23842 Self {
23843 base__: ID3D11RasterizerState1_Vtbl::new::<Identity, OFFSET>(),
23844 GetDesc2: GetDesc2::<Identity, OFFSET>,
23845 }
23846 }
23847 pub fn matches(iid: &windows_core::GUID) -> bool {
23848 iid == &<ID3D11RasterizerState2 as windows_core::Interface>::IID
23849 || iid == &<ID3D11DeviceChild as windows_core::Interface>::IID
23850 || iid == &<ID3D11RasterizerState as windows_core::Interface>::IID
23851 || iid == &<ID3D11RasterizerState1 as windows_core::Interface>::IID
23852 }
23853}
23854impl windows_core::RuntimeName for ID3D11RasterizerState2 {}
23855unsafe impl Send for ID3D11RasterizerState2 {}
23856unsafe impl Sync for ID3D11RasterizerState2 {}
23857windows_core::imp::define_interface!(
23858 ID3D11RefDefaultTrackingOptions,
23859 ID3D11RefDefaultTrackingOptions_Vtbl,
23860 0x03916615_c644_418c_9bf4_75db5be63ca0
23861);
23862windows_core::imp::interface_hierarchy!(ID3D11RefDefaultTrackingOptions, windows_core::IUnknown);
23863impl ID3D11RefDefaultTrackingOptions {
23864 pub unsafe fn SetTrackingOptions(
23865 &self,
23866 resourcetypeflags: u32,
23867 options: u32,
23868 ) -> windows_core::Result<()> {
23869 unsafe {
23870 (windows_core::Interface::vtable(self).SetTrackingOptions)(
23871 windows_core::Interface::as_raw(self),
23872 resourcetypeflags,
23873 options,
23874 )
23875 .ok()
23876 }
23877 }
23878}
23879#[repr(C)]
23880pub struct ID3D11RefDefaultTrackingOptions_Vtbl {
23881 pub base__: windows_core::IUnknown_Vtbl,
23882 pub SetTrackingOptions:
23883 unsafe extern "system" fn(*mut core::ffi::c_void, u32, u32) -> windows_core::HRESULT,
23884}
23885pub trait ID3D11RefDefaultTrackingOptions_Impl: windows_core::IUnknownImpl {
23886 fn SetTrackingOptions(&self, resourcetypeflags: u32, options: u32) -> windows_core::Result<()>;
23887}
23888impl ID3D11RefDefaultTrackingOptions_Vtbl {
23889 pub const fn new<Identity: ID3D11RefDefaultTrackingOptions_Impl, const OFFSET: isize>() -> Self
23890 {
23891 unsafe extern "system" fn SetTrackingOptions<
23892 Identity: ID3D11RefDefaultTrackingOptions_Impl,
23893 const OFFSET: isize,
23894 >(
23895 this: *mut core::ffi::c_void,
23896 resourcetypeflags: u32,
23897 options: u32,
23898 ) -> windows_core::HRESULT {
23899 unsafe {
23900 let this: &Identity =
23901 &*((this as *const *const ()).offset(OFFSET) as *const Identity);
23902 ID3D11RefDefaultTrackingOptions_Impl::SetTrackingOptions(
23903 this,
23904 core::mem::transmute_copy(&resourcetypeflags),
23905 core::mem::transmute_copy(&options),
23906 )
23907 .into()
23908 }
23909 }
23910 Self {
23911 base__: windows_core::IUnknown_Vtbl::new::<Identity, OFFSET>(),
23912 SetTrackingOptions: SetTrackingOptions::<Identity, OFFSET>,
23913 }
23914 }
23915 pub fn matches(iid: &windows_core::GUID) -> bool {
23916 iid == &<ID3D11RefDefaultTrackingOptions as windows_core::Interface>::IID
23917 }
23918}
23919impl windows_core::RuntimeName for ID3D11RefDefaultTrackingOptions {}
23920unsafe impl Send for ID3D11RefDefaultTrackingOptions {}
23921unsafe impl Sync for ID3D11RefDefaultTrackingOptions {}
23922windows_core::imp::define_interface!(
23923 ID3D11RefTrackingOptions,
23924 ID3D11RefTrackingOptions_Vtbl,
23925 0x193dacdf_0db2_4c05_a55c_ef06cac56fd9
23926);
23927windows_core::imp::interface_hierarchy!(ID3D11RefTrackingOptions, windows_core::IUnknown);
23928impl ID3D11RefTrackingOptions {
23929 pub unsafe fn SetTrackingOptions(&self, uoptions: u32) -> windows_core::Result<()> {
23930 unsafe {
23931 (windows_core::Interface::vtable(self).SetTrackingOptions)(
23932 windows_core::Interface::as_raw(self),
23933 uoptions,
23934 )
23935 .ok()
23936 }
23937 }
23938}
23939#[repr(C)]
23940pub struct ID3D11RefTrackingOptions_Vtbl {
23941 pub base__: windows_core::IUnknown_Vtbl,
23942 pub SetTrackingOptions:
23943 unsafe extern "system" fn(*mut core::ffi::c_void, u32) -> windows_core::HRESULT,
23944}
23945pub trait ID3D11RefTrackingOptions_Impl: windows_core::IUnknownImpl {
23946 fn SetTrackingOptions(&self, uoptions: u32) -> windows_core::Result<()>;
23947}
23948impl ID3D11RefTrackingOptions_Vtbl {
23949 pub const fn new<Identity: ID3D11RefTrackingOptions_Impl, const OFFSET: isize>() -> Self {
23950 unsafe extern "system" fn SetTrackingOptions<
23951 Identity: ID3D11RefTrackingOptions_Impl,
23952 const OFFSET: isize,
23953 >(
23954 this: *mut core::ffi::c_void,
23955 uoptions: u32,
23956 ) -> windows_core::HRESULT {
23957 unsafe {
23958 let this: &Identity =
23959 &*((this as *const *const ()).offset(OFFSET) as *const Identity);
23960 ID3D11RefTrackingOptions_Impl::SetTrackingOptions(
23961 this,
23962 core::mem::transmute_copy(&uoptions),
23963 )
23964 .into()
23965 }
23966 }
23967 Self {
23968 base__: windows_core::IUnknown_Vtbl::new::<Identity, OFFSET>(),
23969 SetTrackingOptions: SetTrackingOptions::<Identity, OFFSET>,
23970 }
23971 }
23972 pub fn matches(iid: &windows_core::GUID) -> bool {
23973 iid == &<ID3D11RefTrackingOptions as windows_core::Interface>::IID
23974 }
23975}
23976impl windows_core::RuntimeName for ID3D11RefTrackingOptions {}
23977unsafe impl Send for ID3D11RefTrackingOptions {}
23978unsafe impl Sync for ID3D11RefTrackingOptions {}
23979windows_core::imp::define_interface!(
23980 ID3D11RenderTargetView,
23981 ID3D11RenderTargetView_Vtbl,
23982 0xdfdba067_0b8d_4865_875b_d7b4516cc164
23983);
23984impl core::ops::Deref for ID3D11RenderTargetView {
23985 type Target = ID3D11View;
23986 fn deref(&self) -> &Self::Target {
23987 unsafe { core::mem::transmute(self) }
23988 }
23989}
23990windows_core::imp::interface_hierarchy!(
23991 ID3D11RenderTargetView,
23992 windows_core::IUnknown,
23993 ID3D11DeviceChild,
23994 ID3D11View
23995);
23996impl ID3D11RenderTargetView {
23997 #[cfg(feature = "Win32_Graphics_Dxgi_Common")]
23998 pub unsafe fn GetDesc(&self, pdesc: *mut D3D11_RENDER_TARGET_VIEW_DESC) {
23999 unsafe {
24000 (windows_core::Interface::vtable(self).GetDesc)(
24001 windows_core::Interface::as_raw(self),
24002 core::mem::transmute(pdesc),
24003 )
24004 }
24005 }
24006}
24007#[repr(C)]
24008pub struct ID3D11RenderTargetView_Vtbl {
24009 pub base__: ID3D11View_Vtbl,
24010 #[cfg(feature = "Win32_Graphics_Dxgi_Common")]
24011 pub GetDesc:
24012 unsafe extern "system" fn(*mut core::ffi::c_void, *mut D3D11_RENDER_TARGET_VIEW_DESC),
24013 #[cfg(not(feature = "Win32_Graphics_Dxgi_Common"))]
24014 GetDesc: usize,
24015}
24016#[cfg(feature = "Win32_Graphics_Dxgi_Common")]
24017pub trait ID3D11RenderTargetView_Impl: ID3D11View_Impl {
24018 fn GetDesc(&self, pdesc: *mut D3D11_RENDER_TARGET_VIEW_DESC);
24019}
24020#[cfg(feature = "Win32_Graphics_Dxgi_Common")]
24021impl ID3D11RenderTargetView_Vtbl {
24022 pub const fn new<Identity: ID3D11RenderTargetView_Impl, const OFFSET: isize>() -> Self {
24023 unsafe extern "system" fn GetDesc<
24024 Identity: ID3D11RenderTargetView_Impl,
24025 const OFFSET: isize,
24026 >(
24027 this: *mut core::ffi::c_void,
24028 pdesc: *mut D3D11_RENDER_TARGET_VIEW_DESC,
24029 ) {
24030 unsafe {
24031 let this: &Identity =
24032 &*((this as *const *const ()).offset(OFFSET) as *const Identity);
24033 ID3D11RenderTargetView_Impl::GetDesc(this, core::mem::transmute_copy(&pdesc))
24034 }
24035 }
24036 Self {
24037 base__: ID3D11View_Vtbl::new::<Identity, OFFSET>(),
24038 GetDesc: GetDesc::<Identity, OFFSET>,
24039 }
24040 }
24041 pub fn matches(iid: &windows_core::GUID) -> bool {
24042 iid == &<ID3D11RenderTargetView as windows_core::Interface>::IID
24043 || iid == &<ID3D11DeviceChild as windows_core::Interface>::IID
24044 || iid == &<ID3D11View as windows_core::Interface>::IID
24045 }
24046}
24047#[cfg(feature = "Win32_Graphics_Dxgi_Common")]
24048impl windows_core::RuntimeName for ID3D11RenderTargetView {}
24049#[cfg(feature = "Win32_Graphics_Dxgi_Common")]
24050unsafe impl Send for ID3D11RenderTargetView {}
24051#[cfg(feature = "Win32_Graphics_Dxgi_Common")]
24052unsafe impl Sync for ID3D11RenderTargetView {}
24053windows_core::imp::define_interface!(
24054 ID3D11RenderTargetView1,
24055 ID3D11RenderTargetView1_Vtbl,
24056 0xffbe2e23_f011_418a_ac56_5ceed7c5b94b
24057);
24058impl core::ops::Deref for ID3D11RenderTargetView1 {
24059 type Target = ID3D11RenderTargetView;
24060 fn deref(&self) -> &Self::Target {
24061 unsafe { core::mem::transmute(self) }
24062 }
24063}
24064windows_core::imp::interface_hierarchy!(
24065 ID3D11RenderTargetView1,
24066 windows_core::IUnknown,
24067 ID3D11DeviceChild,
24068 ID3D11View,
24069 ID3D11RenderTargetView
24070);
24071impl ID3D11RenderTargetView1 {
24072 #[cfg(feature = "Win32_Graphics_Dxgi_Common")]
24073 pub unsafe fn GetDesc1(&self, pdesc1: *mut D3D11_RENDER_TARGET_VIEW_DESC1) {
24074 unsafe {
24075 (windows_core::Interface::vtable(self).GetDesc1)(
24076 windows_core::Interface::as_raw(self),
24077 core::mem::transmute(pdesc1),
24078 )
24079 }
24080 }
24081}
24082#[repr(C)]
24083pub struct ID3D11RenderTargetView1_Vtbl {
24084 pub base__: ID3D11RenderTargetView_Vtbl,
24085 #[cfg(feature = "Win32_Graphics_Dxgi_Common")]
24086 pub GetDesc1:
24087 unsafe extern "system" fn(*mut core::ffi::c_void, *mut D3D11_RENDER_TARGET_VIEW_DESC1),
24088 #[cfg(not(feature = "Win32_Graphics_Dxgi_Common"))]
24089 GetDesc1: usize,
24090}
24091#[cfg(feature = "Win32_Graphics_Dxgi_Common")]
24092pub trait ID3D11RenderTargetView1_Impl: ID3D11RenderTargetView_Impl {
24093 fn GetDesc1(&self, pdesc1: *mut D3D11_RENDER_TARGET_VIEW_DESC1);
24094}
24095#[cfg(feature = "Win32_Graphics_Dxgi_Common")]
24096impl ID3D11RenderTargetView1_Vtbl {
24097 pub const fn new<Identity: ID3D11RenderTargetView1_Impl, const OFFSET: isize>() -> Self {
24098 unsafe extern "system" fn GetDesc1<
24099 Identity: ID3D11RenderTargetView1_Impl,
24100 const OFFSET: isize,
24101 >(
24102 this: *mut core::ffi::c_void,
24103 pdesc1: *mut D3D11_RENDER_TARGET_VIEW_DESC1,
24104 ) {
24105 unsafe {
24106 let this: &Identity =
24107 &*((this as *const *const ()).offset(OFFSET) as *const Identity);
24108 ID3D11RenderTargetView1_Impl::GetDesc1(this, core::mem::transmute_copy(&pdesc1))
24109 }
24110 }
24111 Self {
24112 base__: ID3D11RenderTargetView_Vtbl::new::<Identity, OFFSET>(),
24113 GetDesc1: GetDesc1::<Identity, OFFSET>,
24114 }
24115 }
24116 pub fn matches(iid: &windows_core::GUID) -> bool {
24117 iid == &<ID3D11RenderTargetView1 as windows_core::Interface>::IID
24118 || iid == &<ID3D11DeviceChild as windows_core::Interface>::IID
24119 || iid == &<ID3D11View as windows_core::Interface>::IID
24120 || iid == &<ID3D11RenderTargetView as windows_core::Interface>::IID
24121 }
24122}
24123#[cfg(feature = "Win32_Graphics_Dxgi_Common")]
24124impl windows_core::RuntimeName for ID3D11RenderTargetView1 {}
24125#[cfg(feature = "Win32_Graphics_Dxgi_Common")]
24126unsafe impl Send for ID3D11RenderTargetView1 {}
24127#[cfg(feature = "Win32_Graphics_Dxgi_Common")]
24128unsafe impl Sync for ID3D11RenderTargetView1 {}
24129windows_core::imp::define_interface!(
24130 ID3D11Resource,
24131 ID3D11Resource_Vtbl,
24132 0xdc8e63f3_d12b_4952_b47b_5e45026a862d
24133);
24134impl core::ops::Deref for ID3D11Resource {
24135 type Target = ID3D11DeviceChild;
24136 fn deref(&self) -> &Self::Target {
24137 unsafe { core::mem::transmute(self) }
24138 }
24139}
24140windows_core::imp::interface_hierarchy!(ID3D11Resource, windows_core::IUnknown, ID3D11DeviceChild);
24141impl ID3D11Resource {
24142 pub unsafe fn GetType(&self) -> D3D11_RESOURCE_DIMENSION {
24143 unsafe {
24144 let mut result__ = core::mem::zeroed();
24145 (windows_core::Interface::vtable(self).GetType)(
24146 windows_core::Interface::as_raw(self),
24147 &mut result__,
24148 );
24149 result__
24150 }
24151 }
24152 pub unsafe fn SetEvictionPriority(&self, evictionpriority: u32) {
24153 unsafe {
24154 (windows_core::Interface::vtable(self).SetEvictionPriority)(
24155 windows_core::Interface::as_raw(self),
24156 evictionpriority,
24157 )
24158 }
24159 }
24160 pub unsafe fn GetEvictionPriority(&self) -> u32 {
24161 unsafe {
24162 (windows_core::Interface::vtable(self).GetEvictionPriority)(
24163 windows_core::Interface::as_raw(self),
24164 )
24165 }
24166 }
24167}
24168#[repr(C)]
24169pub struct ID3D11Resource_Vtbl {
24170 pub base__: ID3D11DeviceChild_Vtbl,
24171 pub GetType: unsafe extern "system" fn(*mut core::ffi::c_void, *mut D3D11_RESOURCE_DIMENSION),
24172 pub SetEvictionPriority: unsafe extern "system" fn(*mut core::ffi::c_void, u32),
24173 pub GetEvictionPriority: unsafe extern "system" fn(*mut core::ffi::c_void) -> u32,
24174}
24175pub trait ID3D11Resource_Impl: ID3D11DeviceChild_Impl {
24176 fn GetType(&self, presourcedimension: *mut D3D11_RESOURCE_DIMENSION);
24177 fn SetEvictionPriority(&self, evictionpriority: u32);
24178 fn GetEvictionPriority(&self) -> u32;
24179}
24180impl ID3D11Resource_Vtbl {
24181 pub const fn new<Identity: ID3D11Resource_Impl, const OFFSET: isize>() -> Self {
24182 unsafe extern "system" fn GetType<Identity: ID3D11Resource_Impl, const OFFSET: isize>(
24183 this: *mut core::ffi::c_void,
24184 presourcedimension: *mut D3D11_RESOURCE_DIMENSION,
24185 ) {
24186 unsafe {
24187 let this: &Identity =
24188 &*((this as *const *const ()).offset(OFFSET) as *const Identity);
24189 ID3D11Resource_Impl::GetType(this, core::mem::transmute_copy(&presourcedimension))
24190 }
24191 }
24192 unsafe extern "system" fn SetEvictionPriority<
24193 Identity: ID3D11Resource_Impl,
24194 const OFFSET: isize,
24195 >(
24196 this: *mut core::ffi::c_void,
24197 evictionpriority: u32,
24198 ) {
24199 unsafe {
24200 let this: &Identity =
24201 &*((this as *const *const ()).offset(OFFSET) as *const Identity);
24202 ID3D11Resource_Impl::SetEvictionPriority(
24203 this,
24204 core::mem::transmute_copy(&evictionpriority),
24205 )
24206 }
24207 }
24208 unsafe extern "system" fn GetEvictionPriority<
24209 Identity: ID3D11Resource_Impl,
24210 const OFFSET: isize,
24211 >(
24212 this: *mut core::ffi::c_void,
24213 ) -> u32 {
24214 unsafe {
24215 let this: &Identity =
24216 &*((this as *const *const ()).offset(OFFSET) as *const Identity);
24217 ID3D11Resource_Impl::GetEvictionPriority(this)
24218 }
24219 }
24220 Self {
24221 base__: ID3D11DeviceChild_Vtbl::new::<Identity, OFFSET>(),
24222 GetType: GetType::<Identity, OFFSET>,
24223 SetEvictionPriority: SetEvictionPriority::<Identity, OFFSET>,
24224 GetEvictionPriority: GetEvictionPriority::<Identity, OFFSET>,
24225 }
24226 }
24227 pub fn matches(iid: &windows_core::GUID) -> bool {
24228 iid == &<ID3D11Resource as windows_core::Interface>::IID
24229 || iid == &<ID3D11DeviceChild as windows_core::Interface>::IID
24230 }
24231}
24232impl windows_core::RuntimeName for ID3D11Resource {}
24233unsafe impl Send for ID3D11Resource {}
24234unsafe impl Sync for ID3D11Resource {}
24235windows_core::imp::define_interface!(
24236 ID3D11SamplerState,
24237 ID3D11SamplerState_Vtbl,
24238 0xda6fea51_564c_4487_9810_f0d0f9b4e3a5
24239);
24240impl core::ops::Deref for ID3D11SamplerState {
24241 type Target = ID3D11DeviceChild;
24242 fn deref(&self) -> &Self::Target {
24243 unsafe { core::mem::transmute(self) }
24244 }
24245}
24246windows_core::imp::interface_hierarchy!(
24247 ID3D11SamplerState,
24248 windows_core::IUnknown,
24249 ID3D11DeviceChild
24250);
24251impl ID3D11SamplerState {
24252 pub unsafe fn GetDesc(&self, pdesc: *mut D3D11_SAMPLER_DESC) {
24253 unsafe {
24254 (windows_core::Interface::vtable(self).GetDesc)(
24255 windows_core::Interface::as_raw(self),
24256 core::mem::transmute(pdesc),
24257 )
24258 }
24259 }
24260}
24261#[repr(C)]
24262pub struct ID3D11SamplerState_Vtbl {
24263 pub base__: ID3D11DeviceChild_Vtbl,
24264 pub GetDesc: unsafe extern "system" fn(*mut core::ffi::c_void, *mut D3D11_SAMPLER_DESC),
24265}
24266pub trait ID3D11SamplerState_Impl: ID3D11DeviceChild_Impl {
24267 fn GetDesc(&self, pdesc: *mut D3D11_SAMPLER_DESC);
24268}
24269impl ID3D11SamplerState_Vtbl {
24270 pub const fn new<Identity: ID3D11SamplerState_Impl, const OFFSET: isize>() -> Self {
24271 unsafe extern "system" fn GetDesc<
24272 Identity: ID3D11SamplerState_Impl,
24273 const OFFSET: isize,
24274 >(
24275 this: *mut core::ffi::c_void,
24276 pdesc: *mut D3D11_SAMPLER_DESC,
24277 ) {
24278 unsafe {
24279 let this: &Identity =
24280 &*((this as *const *const ()).offset(OFFSET) as *const Identity);
24281 ID3D11SamplerState_Impl::GetDesc(this, core::mem::transmute_copy(&pdesc))
24282 }
24283 }
24284 Self {
24285 base__: ID3D11DeviceChild_Vtbl::new::<Identity, OFFSET>(),
24286 GetDesc: GetDesc::<Identity, OFFSET>,
24287 }
24288 }
24289 pub fn matches(iid: &windows_core::GUID) -> bool {
24290 iid == &<ID3D11SamplerState as windows_core::Interface>::IID
24291 || iid == &<ID3D11DeviceChild as windows_core::Interface>::IID
24292 }
24293}
24294impl windows_core::RuntimeName for ID3D11SamplerState {}
24295unsafe impl Send for ID3D11SamplerState {}
24296unsafe impl Sync for ID3D11SamplerState {}
24297windows_core::imp::define_interface!(
24298 ID3D11ShaderReflection,
24299 ID3D11ShaderReflection_Vtbl,
24300 0x8d536ca1_0cca_4956_a837_786963755584
24301);
24302windows_core::imp::interface_hierarchy!(ID3D11ShaderReflection, windows_core::IUnknown);
24303impl ID3D11ShaderReflection {
24304 #[cfg(feature = "Win32_Graphics_Direct3D")]
24305 pub unsafe fn GetDesc(&self, pdesc: *mut D3D11_SHADER_DESC) -> windows_core::Result<()> {
24306 unsafe {
24307 (windows_core::Interface::vtable(self).GetDesc)(
24308 windows_core::Interface::as_raw(self),
24309 core::mem::transmute(pdesc),
24310 )
24311 .ok()
24312 }
24313 }
24314 pub unsafe fn GetConstantBufferByIndex(
24315 &self,
24316 index: u32,
24317 ) -> Option<ID3D11ShaderReflectionConstantBuffer> {
24318 unsafe {
24319 (windows_core::Interface::vtable(self).GetConstantBufferByIndex)(
24320 windows_core::Interface::as_raw(self),
24321 index,
24322 )
24323 }
24324 }
24325 pub unsafe fn GetConstantBufferByName<P0>(
24326 &self,
24327 name: P0,
24328 ) -> Option<ID3D11ShaderReflectionConstantBuffer>
24329 where
24330 P0: windows_core::Param<crate::core_supplemental::PCSTR>,
24331 {
24332 unsafe {
24333 (windows_core::Interface::vtable(self).GetConstantBufferByName)(
24334 windows_core::Interface::as_raw(self),
24335 name.param().abi(),
24336 )
24337 }
24338 }
24339 #[cfg(feature = "Win32_Graphics_Direct3D")]
24340 pub unsafe fn GetResourceBindingDesc(
24341 &self,
24342 resourceindex: u32,
24343 pdesc: *mut D3D11_SHADER_INPUT_BIND_DESC,
24344 ) -> windows_core::Result<()> {
24345 unsafe {
24346 (windows_core::Interface::vtable(self).GetResourceBindingDesc)(
24347 windows_core::Interface::as_raw(self),
24348 resourceindex,
24349 core::mem::transmute(pdesc),
24350 )
24351 .ok()
24352 }
24353 }
24354 #[cfg(feature = "Win32_Graphics_Direct3D")]
24355 pub unsafe fn GetInputParameterDesc(
24356 &self,
24357 parameterindex: u32,
24358 pdesc: *mut D3D11_SIGNATURE_PARAMETER_DESC,
24359 ) -> windows_core::Result<()> {
24360 unsafe {
24361 (windows_core::Interface::vtable(self).GetInputParameterDesc)(
24362 windows_core::Interface::as_raw(self),
24363 parameterindex,
24364 core::mem::transmute(pdesc),
24365 )
24366 .ok()
24367 }
24368 }
24369 #[cfg(feature = "Win32_Graphics_Direct3D")]
24370 pub unsafe fn GetOutputParameterDesc(
24371 &self,
24372 parameterindex: u32,
24373 pdesc: *mut D3D11_SIGNATURE_PARAMETER_DESC,
24374 ) -> windows_core::Result<()> {
24375 unsafe {
24376 (windows_core::Interface::vtable(self).GetOutputParameterDesc)(
24377 windows_core::Interface::as_raw(self),
24378 parameterindex,
24379 core::mem::transmute(pdesc),
24380 )
24381 .ok()
24382 }
24383 }
24384 #[cfg(feature = "Win32_Graphics_Direct3D")]
24385 pub unsafe fn GetPatchConstantParameterDesc(
24386 &self,
24387 parameterindex: u32,
24388 pdesc: *mut D3D11_SIGNATURE_PARAMETER_DESC,
24389 ) -> windows_core::Result<()> {
24390 unsafe {
24391 (windows_core::Interface::vtable(self).GetPatchConstantParameterDesc)(
24392 windows_core::Interface::as_raw(self),
24393 parameterindex,
24394 core::mem::transmute(pdesc),
24395 )
24396 .ok()
24397 }
24398 }
24399 pub unsafe fn GetVariableByName<P0>(&self, name: P0) -> Option<ID3D11ShaderReflectionVariable>
24400 where
24401 P0: windows_core::Param<crate::core_supplemental::PCSTR>,
24402 {
24403 unsafe {
24404 (windows_core::Interface::vtable(self).GetVariableByName)(
24405 windows_core::Interface::as_raw(self),
24406 name.param().abi(),
24407 )
24408 }
24409 }
24410 #[cfg(feature = "Win32_Graphics_Direct3D")]
24411 pub unsafe fn GetResourceBindingDescByName<P0>(
24412 &self,
24413 name: P0,
24414 pdesc: *mut D3D11_SHADER_INPUT_BIND_DESC,
24415 ) -> windows_core::Result<()>
24416 where
24417 P0: windows_core::Param<crate::core_supplemental::PCSTR>,
24418 {
24419 unsafe {
24420 (windows_core::Interface::vtable(self).GetResourceBindingDescByName)(
24421 windows_core::Interface::as_raw(self),
24422 name.param().abi(),
24423 core::mem::transmute(pdesc),
24424 )
24425 .ok()
24426 }
24427 }
24428 pub unsafe fn GetMovInstructionCount(&self) -> u32 {
24429 unsafe {
24430 (windows_core::Interface::vtable(self).GetMovInstructionCount)(
24431 windows_core::Interface::as_raw(self),
24432 )
24433 }
24434 }
24435 pub unsafe fn GetMovcInstructionCount(&self) -> u32 {
24436 unsafe {
24437 (windows_core::Interface::vtable(self).GetMovcInstructionCount)(
24438 windows_core::Interface::as_raw(self),
24439 )
24440 }
24441 }
24442 pub unsafe fn GetConversionInstructionCount(&self) -> u32 {
24443 unsafe {
24444 (windows_core::Interface::vtable(self).GetConversionInstructionCount)(
24445 windows_core::Interface::as_raw(self),
24446 )
24447 }
24448 }
24449 pub unsafe fn GetBitwiseInstructionCount(&self) -> u32 {
24450 unsafe {
24451 (windows_core::Interface::vtable(self).GetBitwiseInstructionCount)(
24452 windows_core::Interface::as_raw(self),
24453 )
24454 }
24455 }
24456 #[cfg(feature = "Win32_Graphics_Direct3D")]
24457 pub unsafe fn GetGSInputPrimitive(&self) -> super::Direct3D::D3D_PRIMITIVE {
24458 unsafe {
24459 (windows_core::Interface::vtable(self).GetGSInputPrimitive)(
24460 windows_core::Interface::as_raw(self),
24461 )
24462 }
24463 }
24464 pub unsafe fn IsSampleFrequencyShader(&self) -> crate::Foundation::BOOL {
24465 unsafe {
24466 (windows_core::Interface::vtable(self).IsSampleFrequencyShader)(
24467 windows_core::Interface::as_raw(self),
24468 )
24469 }
24470 }
24471 pub unsafe fn GetNumInterfaceSlots(&self) -> u32 {
24472 unsafe {
24473 (windows_core::Interface::vtable(self).GetNumInterfaceSlots)(
24474 windows_core::Interface::as_raw(self),
24475 )
24476 }
24477 }
24478 #[cfg(feature = "Win32_Graphics_Direct3D")]
24479 pub unsafe fn GetMinFeatureLevel(
24480 &self,
24481 ) -> windows_core::Result<super::Direct3D::D3D_FEATURE_LEVEL> {
24482 unsafe {
24483 let mut result__ = core::mem::zeroed();
24484 (windows_core::Interface::vtable(self).GetMinFeatureLevel)(
24485 windows_core::Interface::as_raw(self),
24486 &mut result__,
24487 )
24488 .map(|| result__)
24489 }
24490 }
24491 pub unsafe fn GetThreadGroupSize(
24492 &self,
24493 psizex: Option<*mut u32>,
24494 psizey: Option<*mut u32>,
24495 psizez: Option<*mut u32>,
24496 ) -> u32 {
24497 unsafe {
24498 (windows_core::Interface::vtable(self).GetThreadGroupSize)(
24499 windows_core::Interface::as_raw(self),
24500 core::mem::transmute(psizex.unwrap_or(core::mem::zeroed())),
24501 core::mem::transmute(psizey.unwrap_or(core::mem::zeroed())),
24502 core::mem::transmute(psizez.unwrap_or(core::mem::zeroed())),
24503 )
24504 }
24505 }
24506 pub unsafe fn GetRequiresFlags(&self) -> u64 {
24507 unsafe {
24508 (windows_core::Interface::vtable(self).GetRequiresFlags)(
24509 windows_core::Interface::as_raw(self),
24510 )
24511 }
24512 }
24513}
24514#[repr(C)]
24515pub struct ID3D11ShaderReflection_Vtbl {
24516 pub base__: windows_core::IUnknown_Vtbl,
24517 #[cfg(feature = "Win32_Graphics_Direct3D")]
24518 pub GetDesc: unsafe extern "system" fn(
24519 *mut core::ffi::c_void,
24520 *mut D3D11_SHADER_DESC,
24521 ) -> windows_core::HRESULT,
24522 #[cfg(not(feature = "Win32_Graphics_Direct3D"))]
24523 GetDesc: usize,
24524 pub GetConstantBufferByIndex:
24525 unsafe extern "system" fn(
24526 *mut core::ffi::c_void,
24527 u32,
24528 ) -> Option<ID3D11ShaderReflectionConstantBuffer>,
24529 pub GetConstantBufferByName:
24530 unsafe extern "system" fn(
24531 *mut core::ffi::c_void,
24532 crate::core_supplemental::PCSTR,
24533 ) -> Option<ID3D11ShaderReflectionConstantBuffer>,
24534 #[cfg(feature = "Win32_Graphics_Direct3D")]
24535 pub GetResourceBindingDesc: unsafe extern "system" fn(
24536 *mut core::ffi::c_void,
24537 u32,
24538 *mut D3D11_SHADER_INPUT_BIND_DESC,
24539 ) -> windows_core::HRESULT,
24540 #[cfg(not(feature = "Win32_Graphics_Direct3D"))]
24541 GetResourceBindingDesc: usize,
24542 #[cfg(feature = "Win32_Graphics_Direct3D")]
24543 pub GetInputParameterDesc: unsafe extern "system" fn(
24544 *mut core::ffi::c_void,
24545 u32,
24546 *mut D3D11_SIGNATURE_PARAMETER_DESC,
24547 ) -> windows_core::HRESULT,
24548 #[cfg(not(feature = "Win32_Graphics_Direct3D"))]
24549 GetInputParameterDesc: usize,
24550 #[cfg(feature = "Win32_Graphics_Direct3D")]
24551 pub GetOutputParameterDesc: unsafe extern "system" fn(
24552 *mut core::ffi::c_void,
24553 u32,
24554 *mut D3D11_SIGNATURE_PARAMETER_DESC,
24555 ) -> windows_core::HRESULT,
24556 #[cfg(not(feature = "Win32_Graphics_Direct3D"))]
24557 GetOutputParameterDesc: usize,
24558 #[cfg(feature = "Win32_Graphics_Direct3D")]
24559 pub GetPatchConstantParameterDesc: unsafe extern "system" fn(
24560 *mut core::ffi::c_void,
24561 u32,
24562 *mut D3D11_SIGNATURE_PARAMETER_DESC,
24563 ) -> windows_core::HRESULT,
24564 #[cfg(not(feature = "Win32_Graphics_Direct3D"))]
24565 GetPatchConstantParameterDesc: usize,
24566 pub GetVariableByName: unsafe extern "system" fn(
24567 *mut core::ffi::c_void,
24568 crate::core_supplemental::PCSTR,
24569 ) -> Option<ID3D11ShaderReflectionVariable>,
24570 #[cfg(feature = "Win32_Graphics_Direct3D")]
24571 pub GetResourceBindingDescByName: unsafe extern "system" fn(
24572 *mut core::ffi::c_void,
24573 crate::core_supplemental::PCSTR,
24574 *mut D3D11_SHADER_INPUT_BIND_DESC,
24575 ) -> windows_core::HRESULT,
24576 #[cfg(not(feature = "Win32_Graphics_Direct3D"))]
24577 GetResourceBindingDescByName: usize,
24578 pub GetMovInstructionCount: unsafe extern "system" fn(*mut core::ffi::c_void) -> u32,
24579 pub GetMovcInstructionCount: unsafe extern "system" fn(*mut core::ffi::c_void) -> u32,
24580 pub GetConversionInstructionCount: unsafe extern "system" fn(*mut core::ffi::c_void) -> u32,
24581 pub GetBitwiseInstructionCount: unsafe extern "system" fn(*mut core::ffi::c_void) -> u32,
24582 #[cfg(feature = "Win32_Graphics_Direct3D")]
24583 pub GetGSInputPrimitive:
24584 unsafe extern "system" fn(*mut core::ffi::c_void) -> super::Direct3D::D3D_PRIMITIVE,
24585 #[cfg(not(feature = "Win32_Graphics_Direct3D"))]
24586 GetGSInputPrimitive: usize,
24587 pub IsSampleFrequencyShader:
24588 unsafe extern "system" fn(*mut core::ffi::c_void) -> crate::Foundation::BOOL,
24589 pub GetNumInterfaceSlots: unsafe extern "system" fn(*mut core::ffi::c_void) -> u32,
24590 #[cfg(feature = "Win32_Graphics_Direct3D")]
24591 pub GetMinFeatureLevel: unsafe extern "system" fn(
24592 *mut core::ffi::c_void,
24593 *mut super::Direct3D::D3D_FEATURE_LEVEL,
24594 ) -> windows_core::HRESULT,
24595 #[cfg(not(feature = "Win32_Graphics_Direct3D"))]
24596 GetMinFeatureLevel: usize,
24597 pub GetThreadGroupSize:
24598 unsafe extern "system" fn(*mut core::ffi::c_void, *mut u32, *mut u32, *mut u32) -> u32,
24599 pub GetRequiresFlags: unsafe extern "system" fn(*mut core::ffi::c_void) -> u64,
24600}
24601#[cfg(feature = "Win32_Graphics_Direct3D")]
24602pub trait ID3D11ShaderReflection_Impl: windows_core::IUnknownImpl {
24603 fn GetDesc(&self, pdesc: *mut D3D11_SHADER_DESC) -> windows_core::Result<()>;
24604 fn GetConstantBufferByIndex(&self, index: u32) -> Option<ID3D11ShaderReflectionConstantBuffer>;
24605 fn GetConstantBufferByName(
24606 &self,
24607 name: &crate::core_supplemental::PCSTR,
24608 ) -> Option<ID3D11ShaderReflectionConstantBuffer>;
24609 fn GetResourceBindingDesc(
24610 &self,
24611 resourceindex: u32,
24612 pdesc: *mut D3D11_SHADER_INPUT_BIND_DESC,
24613 ) -> windows_core::Result<()>;
24614 fn GetInputParameterDesc(
24615 &self,
24616 parameterindex: u32,
24617 pdesc: *mut D3D11_SIGNATURE_PARAMETER_DESC,
24618 ) -> windows_core::Result<()>;
24619 fn GetOutputParameterDesc(
24620 &self,
24621 parameterindex: u32,
24622 pdesc: *mut D3D11_SIGNATURE_PARAMETER_DESC,
24623 ) -> windows_core::Result<()>;
24624 fn GetPatchConstantParameterDesc(
24625 &self,
24626 parameterindex: u32,
24627 pdesc: *mut D3D11_SIGNATURE_PARAMETER_DESC,
24628 ) -> windows_core::Result<()>;
24629 fn GetVariableByName(
24630 &self,
24631 name: &crate::core_supplemental::PCSTR,
24632 ) -> Option<ID3D11ShaderReflectionVariable>;
24633 fn GetResourceBindingDescByName(
24634 &self,
24635 name: &crate::core_supplemental::PCSTR,
24636 pdesc: *mut D3D11_SHADER_INPUT_BIND_DESC,
24637 ) -> windows_core::Result<()>;
24638 fn GetMovInstructionCount(&self) -> u32;
24639 fn GetMovcInstructionCount(&self) -> u32;
24640 fn GetConversionInstructionCount(&self) -> u32;
24641 fn GetBitwiseInstructionCount(&self) -> u32;
24642 fn GetGSInputPrimitive(&self) -> super::Direct3D::D3D_PRIMITIVE;
24643 fn IsSampleFrequencyShader(&self) -> crate::Foundation::BOOL;
24644 fn GetNumInterfaceSlots(&self) -> u32;
24645 fn GetMinFeatureLevel(&self) -> windows_core::Result<super::Direct3D::D3D_FEATURE_LEVEL>;
24646 fn GetThreadGroupSize(&self, psizex: *mut u32, psizey: *mut u32, psizez: *mut u32) -> u32;
24647 fn GetRequiresFlags(&self) -> u64;
24648}
24649#[cfg(feature = "Win32_Graphics_Direct3D")]
24650impl ID3D11ShaderReflection_Vtbl {
24651 pub const fn new<Identity: ID3D11ShaderReflection_Impl, const OFFSET: isize>() -> Self {
24652 unsafe extern "system" fn GetDesc<
24653 Identity: ID3D11ShaderReflection_Impl,
24654 const OFFSET: isize,
24655 >(
24656 this: *mut core::ffi::c_void,
24657 pdesc: *mut D3D11_SHADER_DESC,
24658 ) -> windows_core::HRESULT {
24659 unsafe {
24660 let this: &Identity =
24661 &*((this as *const *const ()).offset(OFFSET) as *const Identity);
24662 ID3D11ShaderReflection_Impl::GetDesc(this, core::mem::transmute_copy(&pdesc)).into()
24663 }
24664 }
24665 unsafe extern "system" fn GetConstantBufferByIndex<
24666 Identity: ID3D11ShaderReflection_Impl,
24667 const OFFSET: isize,
24668 >(
24669 this: *mut core::ffi::c_void,
24670 index: u32,
24671 ) -> Option<ID3D11ShaderReflectionConstantBuffer> {
24672 unsafe {
24673 let this: &Identity =
24674 &*((this as *const *const ()).offset(OFFSET) as *const Identity);
24675 ID3D11ShaderReflection_Impl::GetConstantBufferByIndex(
24676 this,
24677 core::mem::transmute_copy(&index),
24678 )
24679 }
24680 }
24681 unsafe extern "system" fn GetConstantBufferByName<
24682 Identity: ID3D11ShaderReflection_Impl,
24683 const OFFSET: isize,
24684 >(
24685 this: *mut core::ffi::c_void,
24686 name: crate::core_supplemental::PCSTR,
24687 ) -> Option<ID3D11ShaderReflectionConstantBuffer> {
24688 unsafe {
24689 let this: &Identity =
24690 &*((this as *const *const ()).offset(OFFSET) as *const Identity);
24691 ID3D11ShaderReflection_Impl::GetConstantBufferByName(
24692 this,
24693 core::mem::transmute(&name),
24694 )
24695 }
24696 }
24697 unsafe extern "system" fn GetResourceBindingDesc<
24698 Identity: ID3D11ShaderReflection_Impl,
24699 const OFFSET: isize,
24700 >(
24701 this: *mut core::ffi::c_void,
24702 resourceindex: u32,
24703 pdesc: *mut D3D11_SHADER_INPUT_BIND_DESC,
24704 ) -> windows_core::HRESULT {
24705 unsafe {
24706 let this: &Identity =
24707 &*((this as *const *const ()).offset(OFFSET) as *const Identity);
24708 ID3D11ShaderReflection_Impl::GetResourceBindingDesc(
24709 this,
24710 core::mem::transmute_copy(&resourceindex),
24711 core::mem::transmute_copy(&pdesc),
24712 )
24713 .into()
24714 }
24715 }
24716 unsafe extern "system" fn GetInputParameterDesc<
24717 Identity: ID3D11ShaderReflection_Impl,
24718 const OFFSET: isize,
24719 >(
24720 this: *mut core::ffi::c_void,
24721 parameterindex: u32,
24722 pdesc: *mut D3D11_SIGNATURE_PARAMETER_DESC,
24723 ) -> windows_core::HRESULT {
24724 unsafe {
24725 let this: &Identity =
24726 &*((this as *const *const ()).offset(OFFSET) as *const Identity);
24727 ID3D11ShaderReflection_Impl::GetInputParameterDesc(
24728 this,
24729 core::mem::transmute_copy(¶meterindex),
24730 core::mem::transmute_copy(&pdesc),
24731 )
24732 .into()
24733 }
24734 }
24735 unsafe extern "system" fn GetOutputParameterDesc<
24736 Identity: ID3D11ShaderReflection_Impl,
24737 const OFFSET: isize,
24738 >(
24739 this: *mut core::ffi::c_void,
24740 parameterindex: u32,
24741 pdesc: *mut D3D11_SIGNATURE_PARAMETER_DESC,
24742 ) -> windows_core::HRESULT {
24743 unsafe {
24744 let this: &Identity =
24745 &*((this as *const *const ()).offset(OFFSET) as *const Identity);
24746 ID3D11ShaderReflection_Impl::GetOutputParameterDesc(
24747 this,
24748 core::mem::transmute_copy(¶meterindex),
24749 core::mem::transmute_copy(&pdesc),
24750 )
24751 .into()
24752 }
24753 }
24754 unsafe extern "system" fn GetPatchConstantParameterDesc<
24755 Identity: ID3D11ShaderReflection_Impl,
24756 const OFFSET: isize,
24757 >(
24758 this: *mut core::ffi::c_void,
24759 parameterindex: u32,
24760 pdesc: *mut D3D11_SIGNATURE_PARAMETER_DESC,
24761 ) -> windows_core::HRESULT {
24762 unsafe {
24763 let this: &Identity =
24764 &*((this as *const *const ()).offset(OFFSET) as *const Identity);
24765 ID3D11ShaderReflection_Impl::GetPatchConstantParameterDesc(
24766 this,
24767 core::mem::transmute_copy(¶meterindex),
24768 core::mem::transmute_copy(&pdesc),
24769 )
24770 .into()
24771 }
24772 }
24773 unsafe extern "system" fn GetVariableByName<
24774 Identity: ID3D11ShaderReflection_Impl,
24775 const OFFSET: isize,
24776 >(
24777 this: *mut core::ffi::c_void,
24778 name: crate::core_supplemental::PCSTR,
24779 ) -> Option<ID3D11ShaderReflectionVariable> {
24780 unsafe {
24781 let this: &Identity =
24782 &*((this as *const *const ()).offset(OFFSET) as *const Identity);
24783 ID3D11ShaderReflection_Impl::GetVariableByName(this, core::mem::transmute(&name))
24784 }
24785 }
24786 unsafe extern "system" fn GetResourceBindingDescByName<
24787 Identity: ID3D11ShaderReflection_Impl,
24788 const OFFSET: isize,
24789 >(
24790 this: *mut core::ffi::c_void,
24791 name: crate::core_supplemental::PCSTR,
24792 pdesc: *mut D3D11_SHADER_INPUT_BIND_DESC,
24793 ) -> windows_core::HRESULT {
24794 unsafe {
24795 let this: &Identity =
24796 &*((this as *const *const ()).offset(OFFSET) as *const Identity);
24797 ID3D11ShaderReflection_Impl::GetResourceBindingDescByName(
24798 this,
24799 core::mem::transmute(&name),
24800 core::mem::transmute_copy(&pdesc),
24801 )
24802 .into()
24803 }
24804 }
24805 unsafe extern "system" fn GetMovInstructionCount<
24806 Identity: ID3D11ShaderReflection_Impl,
24807 const OFFSET: isize,
24808 >(
24809 this: *mut core::ffi::c_void,
24810 ) -> u32 {
24811 unsafe {
24812 let this: &Identity =
24813 &*((this as *const *const ()).offset(OFFSET) as *const Identity);
24814 ID3D11ShaderReflection_Impl::GetMovInstructionCount(this)
24815 }
24816 }
24817 unsafe extern "system" fn GetMovcInstructionCount<
24818 Identity: ID3D11ShaderReflection_Impl,
24819 const OFFSET: isize,
24820 >(
24821 this: *mut core::ffi::c_void,
24822 ) -> u32 {
24823 unsafe {
24824 let this: &Identity =
24825 &*((this as *const *const ()).offset(OFFSET) as *const Identity);
24826 ID3D11ShaderReflection_Impl::GetMovcInstructionCount(this)
24827 }
24828 }
24829 unsafe extern "system" fn GetConversionInstructionCount<
24830 Identity: ID3D11ShaderReflection_Impl,
24831 const OFFSET: isize,
24832 >(
24833 this: *mut core::ffi::c_void,
24834 ) -> u32 {
24835 unsafe {
24836 let this: &Identity =
24837 &*((this as *const *const ()).offset(OFFSET) as *const Identity);
24838 ID3D11ShaderReflection_Impl::GetConversionInstructionCount(this)
24839 }
24840 }
24841 unsafe extern "system" fn GetBitwiseInstructionCount<
24842 Identity: ID3D11ShaderReflection_Impl,
24843 const OFFSET: isize,
24844 >(
24845 this: *mut core::ffi::c_void,
24846 ) -> u32 {
24847 unsafe {
24848 let this: &Identity =
24849 &*((this as *const *const ()).offset(OFFSET) as *const Identity);
24850 ID3D11ShaderReflection_Impl::GetBitwiseInstructionCount(this)
24851 }
24852 }
24853 unsafe extern "system" fn GetGSInputPrimitive<
24854 Identity: ID3D11ShaderReflection_Impl,
24855 const OFFSET: isize,
24856 >(
24857 this: *mut core::ffi::c_void,
24858 ) -> super::Direct3D::D3D_PRIMITIVE {
24859 unsafe {
24860 let this: &Identity =
24861 &*((this as *const *const ()).offset(OFFSET) as *const Identity);
24862 ID3D11ShaderReflection_Impl::GetGSInputPrimitive(this)
24863 }
24864 }
24865 unsafe extern "system" fn IsSampleFrequencyShader<
24866 Identity: ID3D11ShaderReflection_Impl,
24867 const OFFSET: isize,
24868 >(
24869 this: *mut core::ffi::c_void,
24870 ) -> crate::Foundation::BOOL {
24871 unsafe {
24872 let this: &Identity =
24873 &*((this as *const *const ()).offset(OFFSET) as *const Identity);
24874 ID3D11ShaderReflection_Impl::IsSampleFrequencyShader(this)
24875 }
24876 }
24877 unsafe extern "system" fn GetNumInterfaceSlots<
24878 Identity: ID3D11ShaderReflection_Impl,
24879 const OFFSET: isize,
24880 >(
24881 this: *mut core::ffi::c_void,
24882 ) -> u32 {
24883 unsafe {
24884 let this: &Identity =
24885 &*((this as *const *const ()).offset(OFFSET) as *const Identity);
24886 ID3D11ShaderReflection_Impl::GetNumInterfaceSlots(this)
24887 }
24888 }
24889 unsafe extern "system" fn GetMinFeatureLevel<
24890 Identity: ID3D11ShaderReflection_Impl,
24891 const OFFSET: isize,
24892 >(
24893 this: *mut core::ffi::c_void,
24894 plevel: *mut super::Direct3D::D3D_FEATURE_LEVEL,
24895 ) -> windows_core::HRESULT {
24896 unsafe {
24897 let this: &Identity =
24898 &*((this as *const *const ()).offset(OFFSET) as *const Identity);
24899 match ID3D11ShaderReflection_Impl::GetMinFeatureLevel(this) {
24900 Ok(ok__) => {
24901 plevel.write(core::mem::transmute(ok__));
24902 windows_core::HRESULT(0)
24903 }
24904 Err(err) => err.into(),
24905 }
24906 }
24907 }
24908 unsafe extern "system" fn GetThreadGroupSize<
24909 Identity: ID3D11ShaderReflection_Impl,
24910 const OFFSET: isize,
24911 >(
24912 this: *mut core::ffi::c_void,
24913 psizex: *mut u32,
24914 psizey: *mut u32,
24915 psizez: *mut u32,
24916 ) -> u32 {
24917 unsafe {
24918 let this: &Identity =
24919 &*((this as *const *const ()).offset(OFFSET) as *const Identity);
24920 ID3D11ShaderReflection_Impl::GetThreadGroupSize(
24921 this,
24922 core::mem::transmute_copy(&psizex),
24923 core::mem::transmute_copy(&psizey),
24924 core::mem::transmute_copy(&psizez),
24925 )
24926 }
24927 }
24928 unsafe extern "system" fn GetRequiresFlags<
24929 Identity: ID3D11ShaderReflection_Impl,
24930 const OFFSET: isize,
24931 >(
24932 this: *mut core::ffi::c_void,
24933 ) -> u64 {
24934 unsafe {
24935 let this: &Identity =
24936 &*((this as *const *const ()).offset(OFFSET) as *const Identity);
24937 ID3D11ShaderReflection_Impl::GetRequiresFlags(this)
24938 }
24939 }
24940 Self {
24941 base__: windows_core::IUnknown_Vtbl::new::<Identity, OFFSET>(),
24942 GetDesc: GetDesc::<Identity, OFFSET>,
24943 GetConstantBufferByIndex: GetConstantBufferByIndex::<Identity, OFFSET>,
24944 GetConstantBufferByName: GetConstantBufferByName::<Identity, OFFSET>,
24945 GetResourceBindingDesc: GetResourceBindingDesc::<Identity, OFFSET>,
24946 GetInputParameterDesc: GetInputParameterDesc::<Identity, OFFSET>,
24947 GetOutputParameterDesc: GetOutputParameterDesc::<Identity, OFFSET>,
24948 GetPatchConstantParameterDesc: GetPatchConstantParameterDesc::<Identity, OFFSET>,
24949 GetVariableByName: GetVariableByName::<Identity, OFFSET>,
24950 GetResourceBindingDescByName: GetResourceBindingDescByName::<Identity, OFFSET>,
24951 GetMovInstructionCount: GetMovInstructionCount::<Identity, OFFSET>,
24952 GetMovcInstructionCount: GetMovcInstructionCount::<Identity, OFFSET>,
24953 GetConversionInstructionCount: GetConversionInstructionCount::<Identity, OFFSET>,
24954 GetBitwiseInstructionCount: GetBitwiseInstructionCount::<Identity, OFFSET>,
24955 GetGSInputPrimitive: GetGSInputPrimitive::<Identity, OFFSET>,
24956 IsSampleFrequencyShader: IsSampleFrequencyShader::<Identity, OFFSET>,
24957 GetNumInterfaceSlots: GetNumInterfaceSlots::<Identity, OFFSET>,
24958 GetMinFeatureLevel: GetMinFeatureLevel::<Identity, OFFSET>,
24959 GetThreadGroupSize: GetThreadGroupSize::<Identity, OFFSET>,
24960 GetRequiresFlags: GetRequiresFlags::<Identity, OFFSET>,
24961 }
24962 }
24963 pub fn matches(iid: &windows_core::GUID) -> bool {
24964 iid == &<ID3D11ShaderReflection as windows_core::Interface>::IID
24965 }
24966}
24967#[cfg(feature = "Win32_Graphics_Direct3D")]
24968impl windows_core::RuntimeName for ID3D11ShaderReflection {}
24969#[cfg(feature = "Win32_Graphics_Direct3D")]
24970unsafe impl Send for ID3D11ShaderReflection {}
24971#[cfg(feature = "Win32_Graphics_Direct3D")]
24972unsafe impl Sync for ID3D11ShaderReflection {}
24973windows_core::imp::define_interface!(
24974 ID3D11ShaderReflectionConstantBuffer,
24975 ID3D11ShaderReflectionConstantBuffer_Vtbl
24976);
24977impl ID3D11ShaderReflectionConstantBuffer {
24978 #[cfg(feature = "Win32_Graphics_Direct3D")]
24979 pub unsafe fn GetDesc(&self, pdesc: *mut D3D11_SHADER_BUFFER_DESC) -> windows_core::Result<()> {
24980 unsafe {
24981 (windows_core::Interface::vtable(self).GetDesc)(
24982 windows_core::Interface::as_raw(self),
24983 core::mem::transmute(pdesc),
24984 )
24985 .ok()
24986 }
24987 }
24988 pub unsafe fn GetVariableByIndex(&self, index: u32) -> Option<ID3D11ShaderReflectionVariable> {
24989 unsafe {
24990 (windows_core::Interface::vtable(self).GetVariableByIndex)(
24991 windows_core::Interface::as_raw(self),
24992 index,
24993 )
24994 }
24995 }
24996 pub unsafe fn GetVariableByName<P0>(&self, name: P0) -> Option<ID3D11ShaderReflectionVariable>
24997 where
24998 P0: windows_core::Param<crate::core_supplemental::PCSTR>,
24999 {
25000 unsafe {
25001 (windows_core::Interface::vtable(self).GetVariableByName)(
25002 windows_core::Interface::as_raw(self),
25003 name.param().abi(),
25004 )
25005 }
25006 }
25007}
25008#[repr(C)]
25009pub struct ID3D11ShaderReflectionConstantBuffer_Vtbl {
25010 #[cfg(feature = "Win32_Graphics_Direct3D")]
25011 pub GetDesc: unsafe extern "system" fn(
25012 *mut core::ffi::c_void,
25013 *mut D3D11_SHADER_BUFFER_DESC,
25014 ) -> windows_core::HRESULT,
25015 #[cfg(not(feature = "Win32_Graphics_Direct3D"))]
25016 GetDesc: usize,
25017 pub GetVariableByIndex: unsafe extern "system" fn(
25018 *mut core::ffi::c_void,
25019 u32,
25020 )
25021 -> Option<ID3D11ShaderReflectionVariable>,
25022 pub GetVariableByName: unsafe extern "system" fn(
25023 *mut core::ffi::c_void,
25024 crate::core_supplemental::PCSTR,
25025 ) -> Option<ID3D11ShaderReflectionVariable>,
25026}
25027#[cfg(feature = "Win32_Graphics_Direct3D")]
25028pub trait ID3D11ShaderReflectionConstantBuffer_Impl {
25029 fn GetDesc(&self, pdesc: *mut D3D11_SHADER_BUFFER_DESC) -> windows_core::Result<()>;
25030 fn GetVariableByIndex(&self, index: u32) -> Option<ID3D11ShaderReflectionVariable>;
25031 fn GetVariableByName(
25032 &self,
25033 name: &crate::core_supplemental::PCSTR,
25034 ) -> Option<ID3D11ShaderReflectionVariable>;
25035}
25036#[cfg(feature = "Win32_Graphics_Direct3D")]
25037impl ID3D11ShaderReflectionConstantBuffer_Vtbl {
25038 pub const fn new<Identity: ID3D11ShaderReflectionConstantBuffer_Impl>() -> Self {
25039 unsafe extern "system" fn GetDesc<Identity: ID3D11ShaderReflectionConstantBuffer_Impl>(
25040 this: *mut core::ffi::c_void,
25041 pdesc: *mut D3D11_SHADER_BUFFER_DESC,
25042 ) -> windows_core::HRESULT {
25043 unsafe {
25044 let this = (this as *mut *mut core::ffi::c_void) as *const windows_core::ScopedHeap;
25045 let this = &*((*this).this as *const Identity);
25046 ID3D11ShaderReflectionConstantBuffer_Impl::GetDesc(
25047 this,
25048 core::mem::transmute_copy(&pdesc),
25049 )
25050 .into()
25051 }
25052 }
25053 unsafe extern "system" fn GetVariableByIndex<
25054 Identity: ID3D11ShaderReflectionConstantBuffer_Impl,
25055 >(
25056 this: *mut core::ffi::c_void,
25057 index: u32,
25058 ) -> Option<ID3D11ShaderReflectionVariable> {
25059 unsafe {
25060 let this = (this as *mut *mut core::ffi::c_void) as *const windows_core::ScopedHeap;
25061 let this = &*((*this).this as *const Identity);
25062 ID3D11ShaderReflectionConstantBuffer_Impl::GetVariableByIndex(
25063 this,
25064 core::mem::transmute_copy(&index),
25065 )
25066 }
25067 }
25068 unsafe extern "system" fn GetVariableByName<
25069 Identity: ID3D11ShaderReflectionConstantBuffer_Impl,
25070 >(
25071 this: *mut core::ffi::c_void,
25072 name: crate::core_supplemental::PCSTR,
25073 ) -> Option<ID3D11ShaderReflectionVariable> {
25074 unsafe {
25075 let this = (this as *mut *mut core::ffi::c_void) as *const windows_core::ScopedHeap;
25076 let this = &*((*this).this as *const Identity);
25077 ID3D11ShaderReflectionConstantBuffer_Impl::GetVariableByName(
25078 this,
25079 core::mem::transmute(&name),
25080 )
25081 }
25082 }
25083 Self {
25084 GetDesc: GetDesc::<Identity>,
25085 GetVariableByIndex: GetVariableByIndex::<Identity>,
25086 GetVariableByName: GetVariableByName::<Identity>,
25087 }
25088 }
25089}
25090#[cfg(feature = "Win32_Graphics_Direct3D")]
25091struct ID3D11ShaderReflectionConstantBuffer_ImplVtbl<T: ID3D11ShaderReflectionConstantBuffer_Impl>(
25092 core::marker::PhantomData<T>,
25093);
25094#[cfg(feature = "Win32_Graphics_Direct3D")]
25095impl<T: ID3D11ShaderReflectionConstantBuffer_Impl>
25096 ID3D11ShaderReflectionConstantBuffer_ImplVtbl<T>
25097{
25098 const VTABLE: ID3D11ShaderReflectionConstantBuffer_Vtbl =
25099 ID3D11ShaderReflectionConstantBuffer_Vtbl::new::<T>();
25100}
25101#[cfg(feature = "Win32_Graphics_Direct3D")]
25102impl ID3D11ShaderReflectionConstantBuffer {
25103 pub fn new<T: ID3D11ShaderReflectionConstantBuffer_Impl>(
25104 this: &T,
25105 ) -> windows_core::ScopedInterface<'_, Self> {
25106 let this = windows_core::ScopedHeap {
25107 vtable: &ID3D11ShaderReflectionConstantBuffer_ImplVtbl::<T>::VTABLE as *const _
25108 as *const _,
25109 this: this as *const _ as *const _,
25110 };
25111 let this = core::mem::ManuallyDrop::new(windows_core::imp::Box::new(this));
25112 unsafe { windows_core::ScopedInterface::new(core::mem::transmute(&this.vtable)) }
25113 }
25114}
25115#[cfg(feature = "Win32_Graphics_Direct3D")]
25116unsafe impl Send for ID3D11ShaderReflectionConstantBuffer {}
25117#[cfg(feature = "Win32_Graphics_Direct3D")]
25118unsafe impl Sync for ID3D11ShaderReflectionConstantBuffer {}
25119windows_core::imp::define_interface!(ID3D11ShaderReflectionType, ID3D11ShaderReflectionType_Vtbl);
25120impl ID3D11ShaderReflectionType {
25121 #[cfg(feature = "Win32_Graphics_Direct3D")]
25122 pub unsafe fn GetDesc(&self, pdesc: *mut D3D11_SHADER_TYPE_DESC) -> windows_core::Result<()> {
25123 unsafe {
25124 (windows_core::Interface::vtable(self).GetDesc)(
25125 windows_core::Interface::as_raw(self),
25126 core::mem::transmute(pdesc),
25127 )
25128 .ok()
25129 }
25130 }
25131 pub unsafe fn GetMemberTypeByIndex(&self, index: u32) -> Option<ID3D11ShaderReflectionType> {
25132 unsafe {
25133 (windows_core::Interface::vtable(self).GetMemberTypeByIndex)(
25134 windows_core::Interface::as_raw(self),
25135 index,
25136 )
25137 }
25138 }
25139 pub unsafe fn GetMemberTypeByName<P0>(&self, name: P0) -> Option<ID3D11ShaderReflectionType>
25140 where
25141 P0: windows_core::Param<crate::core_supplemental::PCSTR>,
25142 {
25143 unsafe {
25144 (windows_core::Interface::vtable(self).GetMemberTypeByName)(
25145 windows_core::Interface::as_raw(self),
25146 name.param().abi(),
25147 )
25148 }
25149 }
25150 pub unsafe fn GetMemberTypeName(&self, index: u32) -> crate::core_supplemental::PCSTR {
25151 unsafe {
25152 (windows_core::Interface::vtable(self).GetMemberTypeName)(
25153 windows_core::Interface::as_raw(self),
25154 index,
25155 )
25156 }
25157 }
25158 pub unsafe fn IsEqual<P0>(&self, ptype: P0) -> windows_core::Result<()>
25159 where
25160 P0: windows_core::Param<ID3D11ShaderReflectionType>,
25161 {
25162 unsafe {
25163 (windows_core::Interface::vtable(self).IsEqual)(
25164 windows_core::Interface::as_raw(self),
25165 ptype.param().abi(),
25166 )
25167 .ok()
25168 }
25169 }
25170 pub unsafe fn GetSubType(&self) -> Option<ID3D11ShaderReflectionType> {
25171 unsafe {
25172 (windows_core::Interface::vtable(self).GetSubType)(windows_core::Interface::as_raw(
25173 self,
25174 ))
25175 }
25176 }
25177 pub unsafe fn GetBaseClass(&self) -> Option<ID3D11ShaderReflectionType> {
25178 unsafe {
25179 (windows_core::Interface::vtable(self).GetBaseClass)(windows_core::Interface::as_raw(
25180 self,
25181 ))
25182 }
25183 }
25184 pub unsafe fn GetNumInterfaces(&self) -> u32 {
25185 unsafe {
25186 (windows_core::Interface::vtable(self).GetNumInterfaces)(
25187 windows_core::Interface::as_raw(self),
25188 )
25189 }
25190 }
25191 pub unsafe fn GetInterfaceByIndex(&self, uindex: u32) -> Option<ID3D11ShaderReflectionType> {
25192 unsafe {
25193 (windows_core::Interface::vtable(self).GetInterfaceByIndex)(
25194 windows_core::Interface::as_raw(self),
25195 uindex,
25196 )
25197 }
25198 }
25199 pub unsafe fn IsOfType<P0>(&self, ptype: P0) -> windows_core::Result<()>
25200 where
25201 P0: windows_core::Param<ID3D11ShaderReflectionType>,
25202 {
25203 unsafe {
25204 (windows_core::Interface::vtable(self).IsOfType)(
25205 windows_core::Interface::as_raw(self),
25206 ptype.param().abi(),
25207 )
25208 .ok()
25209 }
25210 }
25211 pub unsafe fn ImplementsInterface<P0>(&self, pbase: P0) -> windows_core::Result<()>
25212 where
25213 P0: windows_core::Param<ID3D11ShaderReflectionType>,
25214 {
25215 unsafe {
25216 (windows_core::Interface::vtable(self).ImplementsInterface)(
25217 windows_core::Interface::as_raw(self),
25218 pbase.param().abi(),
25219 )
25220 .ok()
25221 }
25222 }
25223}
25224#[repr(C)]
25225pub struct ID3D11ShaderReflectionType_Vtbl {
25226 #[cfg(feature = "Win32_Graphics_Direct3D")]
25227 pub GetDesc: unsafe extern "system" fn(
25228 *mut core::ffi::c_void,
25229 *mut D3D11_SHADER_TYPE_DESC,
25230 ) -> windows_core::HRESULT,
25231 #[cfg(not(feature = "Win32_Graphics_Direct3D"))]
25232 GetDesc: usize,
25233 pub GetMemberTypeByIndex: unsafe extern "system" fn(
25234 *mut core::ffi::c_void,
25235 u32,
25236 ) -> Option<ID3D11ShaderReflectionType>,
25237 pub GetMemberTypeByName: unsafe extern "system" fn(
25238 *mut core::ffi::c_void,
25239 crate::core_supplemental::PCSTR,
25240 ) -> Option<ID3D11ShaderReflectionType>,
25241 pub GetMemberTypeName:
25242 unsafe extern "system" fn(*mut core::ffi::c_void, u32) -> crate::core_supplemental::PCSTR,
25243 pub IsEqual: unsafe extern "system" fn(
25244 *mut core::ffi::c_void,
25245 *mut core::ffi::c_void,
25246 ) -> windows_core::HRESULT,
25247 pub GetSubType:
25248 unsafe extern "system" fn(*mut core::ffi::c_void) -> Option<ID3D11ShaderReflectionType>,
25249 pub GetBaseClass:
25250 unsafe extern "system" fn(*mut core::ffi::c_void) -> Option<ID3D11ShaderReflectionType>,
25251 pub GetNumInterfaces: unsafe extern "system" fn(*mut core::ffi::c_void) -> u32,
25252 pub GetInterfaceByIndex: unsafe extern "system" fn(
25253 *mut core::ffi::c_void,
25254 u32,
25255 ) -> Option<ID3D11ShaderReflectionType>,
25256 pub IsOfType: unsafe extern "system" fn(
25257 *mut core::ffi::c_void,
25258 *mut core::ffi::c_void,
25259 ) -> windows_core::HRESULT,
25260 pub ImplementsInterface: unsafe extern "system" fn(
25261 *mut core::ffi::c_void,
25262 *mut core::ffi::c_void,
25263 ) -> windows_core::HRESULT,
25264}
25265#[cfg(feature = "Win32_Graphics_Direct3D")]
25266pub trait ID3D11ShaderReflectionType_Impl {
25267 fn GetDesc(&self, pdesc: *mut D3D11_SHADER_TYPE_DESC) -> windows_core::Result<()>;
25268 fn GetMemberTypeByIndex(&self, index: u32) -> Option<ID3D11ShaderReflectionType>;
25269 fn GetMemberTypeByName(&self, name: &crate::core_supplemental::PCSTR)
25270 -> Option<ID3D11ShaderReflectionType>;
25271 fn GetMemberTypeName(&self, index: u32) -> crate::core_supplemental::PCSTR;
25272 fn IsEqual(
25273 &self,
25274 ptype: windows_core::Ref<'_, ID3D11ShaderReflectionType>,
25275 ) -> windows_core::Result<()>;
25276 fn GetSubType(&self) -> Option<ID3D11ShaderReflectionType>;
25277 fn GetBaseClass(&self) -> Option<ID3D11ShaderReflectionType>;
25278 fn GetNumInterfaces(&self) -> u32;
25279 fn GetInterfaceByIndex(&self, uindex: u32) -> Option<ID3D11ShaderReflectionType>;
25280 fn IsOfType(
25281 &self,
25282 ptype: windows_core::Ref<'_, ID3D11ShaderReflectionType>,
25283 ) -> windows_core::Result<()>;
25284 fn ImplementsInterface(
25285 &self,
25286 pbase: windows_core::Ref<'_, ID3D11ShaderReflectionType>,
25287 ) -> windows_core::Result<()>;
25288}
25289#[cfg(feature = "Win32_Graphics_Direct3D")]
25290impl ID3D11ShaderReflectionType_Vtbl {
25291 pub const fn new<Identity: ID3D11ShaderReflectionType_Impl>() -> Self {
25292 unsafe extern "system" fn GetDesc<Identity: ID3D11ShaderReflectionType_Impl>(
25293 this: *mut core::ffi::c_void,
25294 pdesc: *mut D3D11_SHADER_TYPE_DESC,
25295 ) -> windows_core::HRESULT {
25296 unsafe {
25297 let this = (this as *mut *mut core::ffi::c_void) as *const windows_core::ScopedHeap;
25298 let this = &*((*this).this as *const Identity);
25299 ID3D11ShaderReflectionType_Impl::GetDesc(this, core::mem::transmute_copy(&pdesc))
25300 .into()
25301 }
25302 }
25303 unsafe extern "system" fn GetMemberTypeByIndex<
25304 Identity: ID3D11ShaderReflectionType_Impl,
25305 >(
25306 this: *mut core::ffi::c_void,
25307 index: u32,
25308 ) -> Option<ID3D11ShaderReflectionType> {
25309 unsafe {
25310 let this = (this as *mut *mut core::ffi::c_void) as *const windows_core::ScopedHeap;
25311 let this = &*((*this).this as *const Identity);
25312 ID3D11ShaderReflectionType_Impl::GetMemberTypeByIndex(
25313 this,
25314 core::mem::transmute_copy(&index),
25315 )
25316 }
25317 }
25318 unsafe extern "system" fn GetMemberTypeByName<Identity: ID3D11ShaderReflectionType_Impl>(
25319 this: *mut core::ffi::c_void,
25320 name: crate::core_supplemental::PCSTR,
25321 ) -> Option<ID3D11ShaderReflectionType> {
25322 unsafe {
25323 let this = (this as *mut *mut core::ffi::c_void) as *const windows_core::ScopedHeap;
25324 let this = &*((*this).this as *const Identity);
25325 ID3D11ShaderReflectionType_Impl::GetMemberTypeByName(
25326 this,
25327 core::mem::transmute(&name),
25328 )
25329 }
25330 }
25331 unsafe extern "system" fn GetMemberTypeName<Identity: ID3D11ShaderReflectionType_Impl>(
25332 this: *mut core::ffi::c_void,
25333 index: u32,
25334 ) -> crate::core_supplemental::PCSTR {
25335 unsafe {
25336 let this = (this as *mut *mut core::ffi::c_void) as *const windows_core::ScopedHeap;
25337 let this = &*((*this).this as *const Identity);
25338 ID3D11ShaderReflectionType_Impl::GetMemberTypeName(
25339 this,
25340 core::mem::transmute_copy(&index),
25341 )
25342 }
25343 }
25344 unsafe extern "system" fn IsEqual<Identity: ID3D11ShaderReflectionType_Impl>(
25345 this: *mut core::ffi::c_void,
25346 ptype: *mut core::ffi::c_void,
25347 ) -> windows_core::HRESULT {
25348 unsafe {
25349 let this = (this as *mut *mut core::ffi::c_void) as *const windows_core::ScopedHeap;
25350 let this = &*((*this).this as *const Identity);
25351 ID3D11ShaderReflectionType_Impl::IsEqual(this, core::mem::transmute_copy(&ptype))
25352 .into()
25353 }
25354 }
25355 unsafe extern "system" fn GetSubType<Identity: ID3D11ShaderReflectionType_Impl>(
25356 this: *mut core::ffi::c_void,
25357 ) -> Option<ID3D11ShaderReflectionType> {
25358 unsafe {
25359 let this = (this as *mut *mut core::ffi::c_void) as *const windows_core::ScopedHeap;
25360 let this = &*((*this).this as *const Identity);
25361 ID3D11ShaderReflectionType_Impl::GetSubType(this)
25362 }
25363 }
25364 unsafe extern "system" fn GetBaseClass<Identity: ID3D11ShaderReflectionType_Impl>(
25365 this: *mut core::ffi::c_void,
25366 ) -> Option<ID3D11ShaderReflectionType> {
25367 unsafe {
25368 let this = (this as *mut *mut core::ffi::c_void) as *const windows_core::ScopedHeap;
25369 let this = &*((*this).this as *const Identity);
25370 ID3D11ShaderReflectionType_Impl::GetBaseClass(this)
25371 }
25372 }
25373 unsafe extern "system" fn GetNumInterfaces<Identity: ID3D11ShaderReflectionType_Impl>(
25374 this: *mut core::ffi::c_void,
25375 ) -> u32 {
25376 unsafe {
25377 let this = (this as *mut *mut core::ffi::c_void) as *const windows_core::ScopedHeap;
25378 let this = &*((*this).this as *const Identity);
25379 ID3D11ShaderReflectionType_Impl::GetNumInterfaces(this)
25380 }
25381 }
25382 unsafe extern "system" fn GetInterfaceByIndex<Identity: ID3D11ShaderReflectionType_Impl>(
25383 this: *mut core::ffi::c_void,
25384 uindex: u32,
25385 ) -> Option<ID3D11ShaderReflectionType> {
25386 unsafe {
25387 let this = (this as *mut *mut core::ffi::c_void) as *const windows_core::ScopedHeap;
25388 let this = &*((*this).this as *const Identity);
25389 ID3D11ShaderReflectionType_Impl::GetInterfaceByIndex(
25390 this,
25391 core::mem::transmute_copy(&uindex),
25392 )
25393 }
25394 }
25395 unsafe extern "system" fn IsOfType<Identity: ID3D11ShaderReflectionType_Impl>(
25396 this: *mut core::ffi::c_void,
25397 ptype: *mut core::ffi::c_void,
25398 ) -> windows_core::HRESULT {
25399 unsafe {
25400 let this = (this as *mut *mut core::ffi::c_void) as *const windows_core::ScopedHeap;
25401 let this = &*((*this).this as *const Identity);
25402 ID3D11ShaderReflectionType_Impl::IsOfType(this, core::mem::transmute_copy(&ptype))
25403 .into()
25404 }
25405 }
25406 unsafe extern "system" fn ImplementsInterface<Identity: ID3D11ShaderReflectionType_Impl>(
25407 this: *mut core::ffi::c_void,
25408 pbase: *mut core::ffi::c_void,
25409 ) -> windows_core::HRESULT {
25410 unsafe {
25411 let this = (this as *mut *mut core::ffi::c_void) as *const windows_core::ScopedHeap;
25412 let this = &*((*this).this as *const Identity);
25413 ID3D11ShaderReflectionType_Impl::ImplementsInterface(
25414 this,
25415 core::mem::transmute_copy(&pbase),
25416 )
25417 .into()
25418 }
25419 }
25420 Self {
25421 GetDesc: GetDesc::<Identity>,
25422 GetMemberTypeByIndex: GetMemberTypeByIndex::<Identity>,
25423 GetMemberTypeByName: GetMemberTypeByName::<Identity>,
25424 GetMemberTypeName: GetMemberTypeName::<Identity>,
25425 IsEqual: IsEqual::<Identity>,
25426 GetSubType: GetSubType::<Identity>,
25427 GetBaseClass: GetBaseClass::<Identity>,
25428 GetNumInterfaces: GetNumInterfaces::<Identity>,
25429 GetInterfaceByIndex: GetInterfaceByIndex::<Identity>,
25430 IsOfType: IsOfType::<Identity>,
25431 ImplementsInterface: ImplementsInterface::<Identity>,
25432 }
25433 }
25434}
25435#[cfg(feature = "Win32_Graphics_Direct3D")]
25436struct ID3D11ShaderReflectionType_ImplVtbl<T: ID3D11ShaderReflectionType_Impl>(
25437 core::marker::PhantomData<T>,
25438);
25439#[cfg(feature = "Win32_Graphics_Direct3D")]
25440impl<T: ID3D11ShaderReflectionType_Impl> ID3D11ShaderReflectionType_ImplVtbl<T> {
25441 const VTABLE: ID3D11ShaderReflectionType_Vtbl = ID3D11ShaderReflectionType_Vtbl::new::<T>();
25442}
25443#[cfg(feature = "Win32_Graphics_Direct3D")]
25444impl ID3D11ShaderReflectionType {
25445 pub fn new<T: ID3D11ShaderReflectionType_Impl>(
25446 this: &T,
25447 ) -> windows_core::ScopedInterface<'_, Self> {
25448 let this = windows_core::ScopedHeap {
25449 vtable: &ID3D11ShaderReflectionType_ImplVtbl::<T>::VTABLE as *const _ as *const _,
25450 this: this as *const _ as *const _,
25451 };
25452 let this = core::mem::ManuallyDrop::new(windows_core::imp::Box::new(this));
25453 unsafe { windows_core::ScopedInterface::new(core::mem::transmute(&this.vtable)) }
25454 }
25455}
25456#[cfg(feature = "Win32_Graphics_Direct3D")]
25457unsafe impl Send for ID3D11ShaderReflectionType {}
25458#[cfg(feature = "Win32_Graphics_Direct3D")]
25459unsafe impl Sync for ID3D11ShaderReflectionType {}
25460windows_core::imp::define_interface!(
25461 ID3D11ShaderReflectionVariable,
25462 ID3D11ShaderReflectionVariable_Vtbl
25463);
25464impl ID3D11ShaderReflectionVariable {
25465 pub unsafe fn GetDesc(
25466 &self,
25467 pdesc: *mut D3D11_SHADER_VARIABLE_DESC,
25468 ) -> windows_core::Result<()> {
25469 unsafe {
25470 (windows_core::Interface::vtable(self).GetDesc)(
25471 windows_core::Interface::as_raw(self),
25472 core::mem::transmute(pdesc),
25473 )
25474 .ok()
25475 }
25476 }
25477 pub unsafe fn GetType(&self) -> Option<ID3D11ShaderReflectionType> {
25478 unsafe {
25479 (windows_core::Interface::vtable(self).GetType)(windows_core::Interface::as_raw(self))
25480 }
25481 }
25482 pub unsafe fn GetBuffer(&self) -> Option<ID3D11ShaderReflectionConstantBuffer> {
25483 unsafe {
25484 (windows_core::Interface::vtable(self).GetBuffer)(windows_core::Interface::as_raw(self))
25485 }
25486 }
25487 pub unsafe fn GetInterfaceSlot(&self, uarrayindex: u32) -> u32 {
25488 unsafe {
25489 (windows_core::Interface::vtable(self).GetInterfaceSlot)(
25490 windows_core::Interface::as_raw(self),
25491 uarrayindex,
25492 )
25493 }
25494 }
25495}
25496#[repr(C)]
25497pub struct ID3D11ShaderReflectionVariable_Vtbl {
25498 pub GetDesc: unsafe extern "system" fn(
25499 *mut core::ffi::c_void,
25500 *mut D3D11_SHADER_VARIABLE_DESC,
25501 ) -> windows_core::HRESULT,
25502 pub GetType:
25503 unsafe extern "system" fn(*mut core::ffi::c_void) -> Option<ID3D11ShaderReflectionType>,
25504 pub GetBuffer: unsafe extern "system" fn(
25505 *mut core::ffi::c_void,
25506 ) -> Option<ID3D11ShaderReflectionConstantBuffer>,
25507 pub GetInterfaceSlot: unsafe extern "system" fn(*mut core::ffi::c_void, u32) -> u32,
25508}
25509pub trait ID3D11ShaderReflectionVariable_Impl {
25510 fn GetDesc(&self, pdesc: *mut D3D11_SHADER_VARIABLE_DESC) -> windows_core::Result<()>;
25511 fn GetType(&self) -> Option<ID3D11ShaderReflectionType>;
25512 fn GetBuffer(&self) -> Option<ID3D11ShaderReflectionConstantBuffer>;
25513 fn GetInterfaceSlot(&self, uarrayindex: u32) -> u32;
25514}
25515impl ID3D11ShaderReflectionVariable_Vtbl {
25516 pub const fn new<Identity: ID3D11ShaderReflectionVariable_Impl>() -> Self {
25517 unsafe extern "system" fn GetDesc<Identity: ID3D11ShaderReflectionVariable_Impl>(
25518 this: *mut core::ffi::c_void,
25519 pdesc: *mut D3D11_SHADER_VARIABLE_DESC,
25520 ) -> windows_core::HRESULT {
25521 unsafe {
25522 let this = (this as *mut *mut core::ffi::c_void) as *const windows_core::ScopedHeap;
25523 let this = &*((*this).this as *const Identity);
25524 ID3D11ShaderReflectionVariable_Impl::GetDesc(
25525 this,
25526 core::mem::transmute_copy(&pdesc),
25527 )
25528 .into()
25529 }
25530 }
25531 unsafe extern "system" fn GetType<Identity: ID3D11ShaderReflectionVariable_Impl>(
25532 this: *mut core::ffi::c_void,
25533 ) -> Option<ID3D11ShaderReflectionType> {
25534 unsafe {
25535 let this = (this as *mut *mut core::ffi::c_void) as *const windows_core::ScopedHeap;
25536 let this = &*((*this).this as *const Identity);
25537 ID3D11ShaderReflectionVariable_Impl::GetType(this)
25538 }
25539 }
25540 unsafe extern "system" fn GetBuffer<Identity: ID3D11ShaderReflectionVariable_Impl>(
25541 this: *mut core::ffi::c_void,
25542 ) -> Option<ID3D11ShaderReflectionConstantBuffer> {
25543 unsafe {
25544 let this = (this as *mut *mut core::ffi::c_void) as *const windows_core::ScopedHeap;
25545 let this = &*((*this).this as *const Identity);
25546 ID3D11ShaderReflectionVariable_Impl::GetBuffer(this)
25547 }
25548 }
25549 unsafe extern "system" fn GetInterfaceSlot<
25550 Identity: ID3D11ShaderReflectionVariable_Impl,
25551 >(
25552 this: *mut core::ffi::c_void,
25553 uarrayindex: u32,
25554 ) -> u32 {
25555 unsafe {
25556 let this = (this as *mut *mut core::ffi::c_void) as *const windows_core::ScopedHeap;
25557 let this = &*((*this).this as *const Identity);
25558 ID3D11ShaderReflectionVariable_Impl::GetInterfaceSlot(
25559 this,
25560 core::mem::transmute_copy(&uarrayindex),
25561 )
25562 }
25563 }
25564 Self {
25565 GetDesc: GetDesc::<Identity>,
25566 GetType: GetType::<Identity>,
25567 GetBuffer: GetBuffer::<Identity>,
25568 GetInterfaceSlot: GetInterfaceSlot::<Identity>,
25569 }
25570 }
25571}
25572struct ID3D11ShaderReflectionVariable_ImplVtbl<T: ID3D11ShaderReflectionVariable_Impl>(
25573 core::marker::PhantomData<T>,
25574);
25575impl<T: ID3D11ShaderReflectionVariable_Impl> ID3D11ShaderReflectionVariable_ImplVtbl<T> {
25576 const VTABLE: ID3D11ShaderReflectionVariable_Vtbl =
25577 ID3D11ShaderReflectionVariable_Vtbl::new::<T>();
25578}
25579impl ID3D11ShaderReflectionVariable {
25580 pub fn new<T: ID3D11ShaderReflectionVariable_Impl>(
25581 this: &T,
25582 ) -> windows_core::ScopedInterface<'_, Self> {
25583 let this = windows_core::ScopedHeap {
25584 vtable: &ID3D11ShaderReflectionVariable_ImplVtbl::<T>::VTABLE as *const _ as *const _,
25585 this: this as *const _ as *const _,
25586 };
25587 let this = core::mem::ManuallyDrop::new(windows_core::imp::Box::new(this));
25588 unsafe { windows_core::ScopedInterface::new(core::mem::transmute(&this.vtable)) }
25589 }
25590}
25591unsafe impl Send for ID3D11ShaderReflectionVariable {}
25592unsafe impl Sync for ID3D11ShaderReflectionVariable {}
25593windows_core::imp::define_interface!(
25594 ID3D11ShaderResourceView,
25595 ID3D11ShaderResourceView_Vtbl,
25596 0xb0e06fe0_8192_4e1a_b1ca_36d7414710b2
25597);
25598impl core::ops::Deref for ID3D11ShaderResourceView {
25599 type Target = ID3D11View;
25600 fn deref(&self) -> &Self::Target {
25601 unsafe { core::mem::transmute(self) }
25602 }
25603}
25604windows_core::imp::interface_hierarchy!(
25605 ID3D11ShaderResourceView,
25606 windows_core::IUnknown,
25607 ID3D11DeviceChild,
25608 ID3D11View
25609);
25610impl ID3D11ShaderResourceView {
25611 #[cfg(all(
25612 feature = "Win32_Graphics_Direct3D",
25613 feature = "Win32_Graphics_Dxgi_Common"
25614 ))]
25615 pub unsafe fn GetDesc(&self, pdesc: *mut D3D11_SHADER_RESOURCE_VIEW_DESC) {
25616 unsafe {
25617 (windows_core::Interface::vtable(self).GetDesc)(
25618 windows_core::Interface::as_raw(self),
25619 core::mem::transmute(pdesc),
25620 )
25621 }
25622 }
25623}
25624#[repr(C)]
25625pub struct ID3D11ShaderResourceView_Vtbl {
25626 pub base__: ID3D11View_Vtbl,
25627 #[cfg(all(
25628 feature = "Win32_Graphics_Direct3D",
25629 feature = "Win32_Graphics_Dxgi_Common"
25630 ))]
25631 pub GetDesc:
25632 unsafe extern "system" fn(*mut core::ffi::c_void, *mut D3D11_SHADER_RESOURCE_VIEW_DESC),
25633 #[cfg(not(all(
25634 feature = "Win32_Graphics_Direct3D",
25635 feature = "Win32_Graphics_Dxgi_Common"
25636 )))]
25637 GetDesc: usize,
25638}
25639#[cfg(all(
25640 feature = "Win32_Graphics_Direct3D",
25641 feature = "Win32_Graphics_Dxgi_Common"
25642))]
25643pub trait ID3D11ShaderResourceView_Impl: ID3D11View_Impl {
25644 fn GetDesc(&self, pdesc: *mut D3D11_SHADER_RESOURCE_VIEW_DESC);
25645}
25646#[cfg(all(
25647 feature = "Win32_Graphics_Direct3D",
25648 feature = "Win32_Graphics_Dxgi_Common"
25649))]
25650impl ID3D11ShaderResourceView_Vtbl {
25651 pub const fn new<Identity: ID3D11ShaderResourceView_Impl, const OFFSET: isize>() -> Self {
25652 unsafe extern "system" fn GetDesc<
25653 Identity: ID3D11ShaderResourceView_Impl,
25654 const OFFSET: isize,
25655 >(
25656 this: *mut core::ffi::c_void,
25657 pdesc: *mut D3D11_SHADER_RESOURCE_VIEW_DESC,
25658 ) {
25659 unsafe {
25660 let this: &Identity =
25661 &*((this as *const *const ()).offset(OFFSET) as *const Identity);
25662 ID3D11ShaderResourceView_Impl::GetDesc(this, core::mem::transmute_copy(&pdesc))
25663 }
25664 }
25665 Self {
25666 base__: ID3D11View_Vtbl::new::<Identity, OFFSET>(),
25667 GetDesc: GetDesc::<Identity, OFFSET>,
25668 }
25669 }
25670 pub fn matches(iid: &windows_core::GUID) -> bool {
25671 iid == &<ID3D11ShaderResourceView as windows_core::Interface>::IID
25672 || iid == &<ID3D11DeviceChild as windows_core::Interface>::IID
25673 || iid == &<ID3D11View as windows_core::Interface>::IID
25674 }
25675}
25676#[cfg(all(
25677 feature = "Win32_Graphics_Direct3D",
25678 feature = "Win32_Graphics_Dxgi_Common"
25679))]
25680impl windows_core::RuntimeName for ID3D11ShaderResourceView {}
25681#[cfg(all(
25682 feature = "Win32_Graphics_Direct3D",
25683 feature = "Win32_Graphics_Dxgi_Common"
25684))]
25685unsafe impl Send for ID3D11ShaderResourceView {}
25686#[cfg(all(
25687 feature = "Win32_Graphics_Direct3D",
25688 feature = "Win32_Graphics_Dxgi_Common"
25689))]
25690unsafe impl Sync for ID3D11ShaderResourceView {}
25691windows_core::imp::define_interface!(
25692 ID3D11ShaderResourceView1,
25693 ID3D11ShaderResourceView1_Vtbl,
25694 0x91308b87_9040_411d_8c67_c39253ce3802
25695);
25696impl core::ops::Deref for ID3D11ShaderResourceView1 {
25697 type Target = ID3D11ShaderResourceView;
25698 fn deref(&self) -> &Self::Target {
25699 unsafe { core::mem::transmute(self) }
25700 }
25701}
25702windows_core::imp::interface_hierarchy!(
25703 ID3D11ShaderResourceView1,
25704 windows_core::IUnknown,
25705 ID3D11DeviceChild,
25706 ID3D11View,
25707 ID3D11ShaderResourceView
25708);
25709impl ID3D11ShaderResourceView1 {
25710 #[cfg(all(
25711 feature = "Win32_Graphics_Direct3D",
25712 feature = "Win32_Graphics_Dxgi_Common"
25713 ))]
25714 pub unsafe fn GetDesc1(&self, pdesc1: *mut D3D11_SHADER_RESOURCE_VIEW_DESC1) {
25715 unsafe {
25716 (windows_core::Interface::vtable(self).GetDesc1)(
25717 windows_core::Interface::as_raw(self),
25718 core::mem::transmute(pdesc1),
25719 )
25720 }
25721 }
25722}
25723#[repr(C)]
25724pub struct ID3D11ShaderResourceView1_Vtbl {
25725 pub base__: ID3D11ShaderResourceView_Vtbl,
25726 #[cfg(all(
25727 feature = "Win32_Graphics_Direct3D",
25728 feature = "Win32_Graphics_Dxgi_Common"
25729 ))]
25730 pub GetDesc1:
25731 unsafe extern "system" fn(*mut core::ffi::c_void, *mut D3D11_SHADER_RESOURCE_VIEW_DESC1),
25732 #[cfg(not(all(
25733 feature = "Win32_Graphics_Direct3D",
25734 feature = "Win32_Graphics_Dxgi_Common"
25735 )))]
25736 GetDesc1: usize,
25737}
25738#[cfg(all(
25739 feature = "Win32_Graphics_Direct3D",
25740 feature = "Win32_Graphics_Dxgi_Common"
25741))]
25742pub trait ID3D11ShaderResourceView1_Impl: ID3D11ShaderResourceView_Impl {
25743 fn GetDesc1(&self, pdesc1: *mut D3D11_SHADER_RESOURCE_VIEW_DESC1);
25744}
25745#[cfg(all(
25746 feature = "Win32_Graphics_Direct3D",
25747 feature = "Win32_Graphics_Dxgi_Common"
25748))]
25749impl ID3D11ShaderResourceView1_Vtbl {
25750 pub const fn new<Identity: ID3D11ShaderResourceView1_Impl, const OFFSET: isize>() -> Self {
25751 unsafe extern "system" fn GetDesc1<
25752 Identity: ID3D11ShaderResourceView1_Impl,
25753 const OFFSET: isize,
25754 >(
25755 this: *mut core::ffi::c_void,
25756 pdesc1: *mut D3D11_SHADER_RESOURCE_VIEW_DESC1,
25757 ) {
25758 unsafe {
25759 let this: &Identity =
25760 &*((this as *const *const ()).offset(OFFSET) as *const Identity);
25761 ID3D11ShaderResourceView1_Impl::GetDesc1(this, core::mem::transmute_copy(&pdesc1))
25762 }
25763 }
25764 Self {
25765 base__: ID3D11ShaderResourceView_Vtbl::new::<Identity, OFFSET>(),
25766 GetDesc1: GetDesc1::<Identity, OFFSET>,
25767 }
25768 }
25769 pub fn matches(iid: &windows_core::GUID) -> bool {
25770 iid == &<ID3D11ShaderResourceView1 as windows_core::Interface>::IID
25771 || iid == &<ID3D11DeviceChild as windows_core::Interface>::IID
25772 || iid == &<ID3D11View as windows_core::Interface>::IID
25773 || iid == &<ID3D11ShaderResourceView as windows_core::Interface>::IID
25774 }
25775}
25776#[cfg(all(
25777 feature = "Win32_Graphics_Direct3D",
25778 feature = "Win32_Graphics_Dxgi_Common"
25779))]
25780impl windows_core::RuntimeName for ID3D11ShaderResourceView1 {}
25781#[cfg(all(
25782 feature = "Win32_Graphics_Direct3D",
25783 feature = "Win32_Graphics_Dxgi_Common"
25784))]
25785unsafe impl Send for ID3D11ShaderResourceView1 {}
25786#[cfg(all(
25787 feature = "Win32_Graphics_Direct3D",
25788 feature = "Win32_Graphics_Dxgi_Common"
25789))]
25790unsafe impl Sync for ID3D11ShaderResourceView1 {}
25791windows_core::imp::define_interface!(
25792 ID3D11ShaderTrace,
25793 ID3D11ShaderTrace_Vtbl,
25794 0x36b013e6_2811_4845_baa7_d623fe0df104
25795);
25796windows_core::imp::interface_hierarchy!(ID3D11ShaderTrace, windows_core::IUnknown);
25797impl ID3D11ShaderTrace {
25798 pub unsafe fn TraceReady(&self, ptestcount: Option<*mut u64>) -> windows_core::Result<()> {
25799 unsafe {
25800 (windows_core::Interface::vtable(self).TraceReady)(
25801 windows_core::Interface::as_raw(self),
25802 core::mem::transmute(ptestcount.unwrap_or(core::mem::zeroed())),
25803 )
25804 .ok()
25805 }
25806 }
25807 pub unsafe fn ResetTrace(&self) {
25808 unsafe {
25809 (windows_core::Interface::vtable(self).ResetTrace)(windows_core::Interface::as_raw(
25810 self,
25811 ))
25812 }
25813 }
25814 pub unsafe fn GetTraceStats(
25815 &self,
25816 ptracestats: *mut D3D11_TRACE_STATS,
25817 ) -> windows_core::Result<()> {
25818 unsafe {
25819 (windows_core::Interface::vtable(self).GetTraceStats)(
25820 windows_core::Interface::as_raw(self),
25821 core::mem::transmute(ptracestats),
25822 )
25823 .ok()
25824 }
25825 }
25826 pub unsafe fn PSSelectStamp(&self, stampindex: u32) -> windows_core::Result<()> {
25827 unsafe {
25828 (windows_core::Interface::vtable(self).PSSelectStamp)(
25829 windows_core::Interface::as_raw(self),
25830 stampindex,
25831 )
25832 .ok()
25833 }
25834 }
25835 pub unsafe fn GetInitialRegisterContents(
25836 &self,
25837 pregister: *const D3D11_TRACE_REGISTER,
25838 pvalue: *mut D3D11_TRACE_VALUE,
25839 ) -> windows_core::Result<()> {
25840 unsafe {
25841 (windows_core::Interface::vtable(self).GetInitialRegisterContents)(
25842 windows_core::Interface::as_raw(self),
25843 pregister,
25844 core::mem::transmute(pvalue),
25845 )
25846 .ok()
25847 }
25848 }
25849 pub unsafe fn GetStep(
25850 &self,
25851 stepindex: u32,
25852 ptracestep: *mut D3D11_TRACE_STEP,
25853 ) -> windows_core::Result<()> {
25854 unsafe {
25855 (windows_core::Interface::vtable(self).GetStep)(
25856 windows_core::Interface::as_raw(self),
25857 stepindex,
25858 core::mem::transmute(ptracestep),
25859 )
25860 .ok()
25861 }
25862 }
25863 pub unsafe fn GetWrittenRegister(
25864 &self,
25865 stepindex: u32,
25866 writtenregisterindex: u32,
25867 pregister: *mut D3D11_TRACE_REGISTER,
25868 pvalue: *mut D3D11_TRACE_VALUE,
25869 ) -> windows_core::Result<()> {
25870 unsafe {
25871 (windows_core::Interface::vtable(self).GetWrittenRegister)(
25872 windows_core::Interface::as_raw(self),
25873 stepindex,
25874 writtenregisterindex,
25875 core::mem::transmute(pregister),
25876 core::mem::transmute(pvalue),
25877 )
25878 .ok()
25879 }
25880 }
25881 pub unsafe fn GetReadRegister(
25882 &self,
25883 stepindex: u32,
25884 readregisterindex: u32,
25885 pregister: *mut D3D11_TRACE_REGISTER,
25886 pvalue: *mut D3D11_TRACE_VALUE,
25887 ) -> windows_core::Result<()> {
25888 unsafe {
25889 (windows_core::Interface::vtable(self).GetReadRegister)(
25890 windows_core::Interface::as_raw(self),
25891 stepindex,
25892 readregisterindex,
25893 core::mem::transmute(pregister),
25894 core::mem::transmute(pvalue),
25895 )
25896 .ok()
25897 }
25898 }
25899}
25900#[repr(C)]
25901pub struct ID3D11ShaderTrace_Vtbl {
25902 pub base__: windows_core::IUnknown_Vtbl,
25903 pub TraceReady:
25904 unsafe extern "system" fn(*mut core::ffi::c_void, *mut u64) -> windows_core::HRESULT,
25905 pub ResetTrace: unsafe extern "system" fn(*mut core::ffi::c_void),
25906 pub GetTraceStats: unsafe extern "system" fn(
25907 *mut core::ffi::c_void,
25908 *mut D3D11_TRACE_STATS,
25909 ) -> windows_core::HRESULT,
25910 pub PSSelectStamp:
25911 unsafe extern "system" fn(*mut core::ffi::c_void, u32) -> windows_core::HRESULT,
25912 pub GetInitialRegisterContents: unsafe extern "system" fn(
25913 *mut core::ffi::c_void,
25914 *const D3D11_TRACE_REGISTER,
25915 *mut D3D11_TRACE_VALUE,
25916 ) -> windows_core::HRESULT,
25917 pub GetStep: unsafe extern "system" fn(
25918 *mut core::ffi::c_void,
25919 u32,
25920 *mut D3D11_TRACE_STEP,
25921 ) -> windows_core::HRESULT,
25922 pub GetWrittenRegister: unsafe extern "system" fn(
25923 *mut core::ffi::c_void,
25924 u32,
25925 u32,
25926 *mut D3D11_TRACE_REGISTER,
25927 *mut D3D11_TRACE_VALUE,
25928 ) -> windows_core::HRESULT,
25929 pub GetReadRegister: unsafe extern "system" fn(
25930 *mut core::ffi::c_void,
25931 u32,
25932 u32,
25933 *mut D3D11_TRACE_REGISTER,
25934 *mut D3D11_TRACE_VALUE,
25935 ) -> windows_core::HRESULT,
25936}
25937pub trait ID3D11ShaderTrace_Impl: windows_core::IUnknownImpl {
25938 fn TraceReady(&self, ptestcount: *mut u64) -> windows_core::Result<()>;
25939 fn ResetTrace(&self);
25940 fn GetTraceStats(&self, ptracestats: *mut D3D11_TRACE_STATS) -> windows_core::Result<()>;
25941 fn PSSelectStamp(&self, stampindex: u32) -> windows_core::Result<()>;
25942 fn GetInitialRegisterContents(
25943 &self,
25944 pregister: *const D3D11_TRACE_REGISTER,
25945 pvalue: *mut D3D11_TRACE_VALUE,
25946 ) -> windows_core::Result<()>;
25947 fn GetStep(
25948 &self,
25949 stepindex: u32,
25950 ptracestep: *mut D3D11_TRACE_STEP,
25951 ) -> windows_core::Result<()>;
25952 fn GetWrittenRegister(
25953 &self,
25954 stepindex: u32,
25955 writtenregisterindex: u32,
25956 pregister: *mut D3D11_TRACE_REGISTER,
25957 pvalue: *mut D3D11_TRACE_VALUE,
25958 ) -> windows_core::Result<()>;
25959 fn GetReadRegister(
25960 &self,
25961 stepindex: u32,
25962 readregisterindex: u32,
25963 pregister: *mut D3D11_TRACE_REGISTER,
25964 pvalue: *mut D3D11_TRACE_VALUE,
25965 ) -> windows_core::Result<()>;
25966}
25967impl ID3D11ShaderTrace_Vtbl {
25968 pub const fn new<Identity: ID3D11ShaderTrace_Impl, const OFFSET: isize>() -> Self {
25969 unsafe extern "system" fn TraceReady<
25970 Identity: ID3D11ShaderTrace_Impl,
25971 const OFFSET: isize,
25972 >(
25973 this: *mut core::ffi::c_void,
25974 ptestcount: *mut u64,
25975 ) -> windows_core::HRESULT {
25976 unsafe {
25977 let this: &Identity =
25978 &*((this as *const *const ()).offset(OFFSET) as *const Identity);
25979 ID3D11ShaderTrace_Impl::TraceReady(this, core::mem::transmute_copy(&ptestcount))
25980 .into()
25981 }
25982 }
25983 unsafe extern "system" fn ResetTrace<
25984 Identity: ID3D11ShaderTrace_Impl,
25985 const OFFSET: isize,
25986 >(
25987 this: *mut core::ffi::c_void,
25988 ) {
25989 unsafe {
25990 let this: &Identity =
25991 &*((this as *const *const ()).offset(OFFSET) as *const Identity);
25992 ID3D11ShaderTrace_Impl::ResetTrace(this)
25993 }
25994 }
25995 unsafe extern "system" fn GetTraceStats<
25996 Identity: ID3D11ShaderTrace_Impl,
25997 const OFFSET: isize,
25998 >(
25999 this: *mut core::ffi::c_void,
26000 ptracestats: *mut D3D11_TRACE_STATS,
26001 ) -> windows_core::HRESULT {
26002 unsafe {
26003 let this: &Identity =
26004 &*((this as *const *const ()).offset(OFFSET) as *const Identity);
26005 ID3D11ShaderTrace_Impl::GetTraceStats(this, core::mem::transmute_copy(&ptracestats))
26006 .into()
26007 }
26008 }
26009 unsafe extern "system" fn PSSelectStamp<
26010 Identity: ID3D11ShaderTrace_Impl,
26011 const OFFSET: isize,
26012 >(
26013 this: *mut core::ffi::c_void,
26014 stampindex: u32,
26015 ) -> windows_core::HRESULT {
26016 unsafe {
26017 let this: &Identity =
26018 &*((this as *const *const ()).offset(OFFSET) as *const Identity);
26019 ID3D11ShaderTrace_Impl::PSSelectStamp(this, core::mem::transmute_copy(&stampindex))
26020 .into()
26021 }
26022 }
26023 unsafe extern "system" fn GetInitialRegisterContents<
26024 Identity: ID3D11ShaderTrace_Impl,
26025 const OFFSET: isize,
26026 >(
26027 this: *mut core::ffi::c_void,
26028 pregister: *const D3D11_TRACE_REGISTER,
26029 pvalue: *mut D3D11_TRACE_VALUE,
26030 ) -> windows_core::HRESULT {
26031 unsafe {
26032 let this: &Identity =
26033 &*((this as *const *const ()).offset(OFFSET) as *const Identity);
26034 ID3D11ShaderTrace_Impl::GetInitialRegisterContents(
26035 this,
26036 core::mem::transmute_copy(&pregister),
26037 core::mem::transmute_copy(&pvalue),
26038 )
26039 .into()
26040 }
26041 }
26042 unsafe extern "system" fn GetStep<Identity: ID3D11ShaderTrace_Impl, const OFFSET: isize>(
26043 this: *mut core::ffi::c_void,
26044 stepindex: u32,
26045 ptracestep: *mut D3D11_TRACE_STEP,
26046 ) -> windows_core::HRESULT {
26047 unsafe {
26048 let this: &Identity =
26049 &*((this as *const *const ()).offset(OFFSET) as *const Identity);
26050 ID3D11ShaderTrace_Impl::GetStep(
26051 this,
26052 core::mem::transmute_copy(&stepindex),
26053 core::mem::transmute_copy(&ptracestep),
26054 )
26055 .into()
26056 }
26057 }
26058 unsafe extern "system" fn GetWrittenRegister<
26059 Identity: ID3D11ShaderTrace_Impl,
26060 const OFFSET: isize,
26061 >(
26062 this: *mut core::ffi::c_void,
26063 stepindex: u32,
26064 writtenregisterindex: u32,
26065 pregister: *mut D3D11_TRACE_REGISTER,
26066 pvalue: *mut D3D11_TRACE_VALUE,
26067 ) -> windows_core::HRESULT {
26068 unsafe {
26069 let this: &Identity =
26070 &*((this as *const *const ()).offset(OFFSET) as *const Identity);
26071 ID3D11ShaderTrace_Impl::GetWrittenRegister(
26072 this,
26073 core::mem::transmute_copy(&stepindex),
26074 core::mem::transmute_copy(&writtenregisterindex),
26075 core::mem::transmute_copy(&pregister),
26076 core::mem::transmute_copy(&pvalue),
26077 )
26078 .into()
26079 }
26080 }
26081 unsafe extern "system" fn GetReadRegister<
26082 Identity: ID3D11ShaderTrace_Impl,
26083 const OFFSET: isize,
26084 >(
26085 this: *mut core::ffi::c_void,
26086 stepindex: u32,
26087 readregisterindex: u32,
26088 pregister: *mut D3D11_TRACE_REGISTER,
26089 pvalue: *mut D3D11_TRACE_VALUE,
26090 ) -> windows_core::HRESULT {
26091 unsafe {
26092 let this: &Identity =
26093 &*((this as *const *const ()).offset(OFFSET) as *const Identity);
26094 ID3D11ShaderTrace_Impl::GetReadRegister(
26095 this,
26096 core::mem::transmute_copy(&stepindex),
26097 core::mem::transmute_copy(&readregisterindex),
26098 core::mem::transmute_copy(&pregister),
26099 core::mem::transmute_copy(&pvalue),
26100 )
26101 .into()
26102 }
26103 }
26104 Self {
26105 base__: windows_core::IUnknown_Vtbl::new::<Identity, OFFSET>(),
26106 TraceReady: TraceReady::<Identity, OFFSET>,
26107 ResetTrace: ResetTrace::<Identity, OFFSET>,
26108 GetTraceStats: GetTraceStats::<Identity, OFFSET>,
26109 PSSelectStamp: PSSelectStamp::<Identity, OFFSET>,
26110 GetInitialRegisterContents: GetInitialRegisterContents::<Identity, OFFSET>,
26111 GetStep: GetStep::<Identity, OFFSET>,
26112 GetWrittenRegister: GetWrittenRegister::<Identity, OFFSET>,
26113 GetReadRegister: GetReadRegister::<Identity, OFFSET>,
26114 }
26115 }
26116 pub fn matches(iid: &windows_core::GUID) -> bool {
26117 iid == &<ID3D11ShaderTrace as windows_core::Interface>::IID
26118 }
26119}
26120impl windows_core::RuntimeName for ID3D11ShaderTrace {}
26121unsafe impl Send for ID3D11ShaderTrace {}
26122unsafe impl Sync for ID3D11ShaderTrace {}
26123windows_core::imp::define_interface!(
26124 ID3D11ShaderTraceFactory,
26125 ID3D11ShaderTraceFactory_Vtbl,
26126 0x1fbad429_66ab_41cc_9617_667ac10e4459
26127);
26128windows_core::imp::interface_hierarchy!(ID3D11ShaderTraceFactory, windows_core::IUnknown);
26129impl ID3D11ShaderTraceFactory {
26130 pub unsafe fn CreateShaderTrace<P0>(
26131 &self,
26132 pshader: P0,
26133 ptracedesc: *const D3D11_SHADER_TRACE_DESC,
26134 ) -> windows_core::Result<ID3D11ShaderTrace>
26135 where
26136 P0: windows_core::Param<windows_core::IUnknown>,
26137 {
26138 unsafe {
26139 let mut result__ = core::mem::zeroed();
26140 (windows_core::Interface::vtable(self).CreateShaderTrace)(
26141 windows_core::Interface::as_raw(self),
26142 pshader.param().abi(),
26143 ptracedesc,
26144 &mut result__,
26145 )
26146 .and_then(|| windows_core::Type::from_abi(result__))
26147 }
26148 }
26149}
26150#[repr(C)]
26151pub struct ID3D11ShaderTraceFactory_Vtbl {
26152 pub base__: windows_core::IUnknown_Vtbl,
26153 pub CreateShaderTrace: unsafe extern "system" fn(
26154 *mut core::ffi::c_void,
26155 *mut core::ffi::c_void,
26156 *const D3D11_SHADER_TRACE_DESC,
26157 *mut *mut core::ffi::c_void,
26158 ) -> windows_core::HRESULT,
26159}
26160pub trait ID3D11ShaderTraceFactory_Impl: windows_core::IUnknownImpl {
26161 fn CreateShaderTrace(
26162 &self,
26163 pshader: windows_core::Ref<'_, windows_core::IUnknown>,
26164 ptracedesc: *const D3D11_SHADER_TRACE_DESC,
26165 ) -> windows_core::Result<ID3D11ShaderTrace>;
26166}
26167impl ID3D11ShaderTraceFactory_Vtbl {
26168 pub const fn new<Identity: ID3D11ShaderTraceFactory_Impl, const OFFSET: isize>() -> Self {
26169 unsafe extern "system" fn CreateShaderTrace<
26170 Identity: ID3D11ShaderTraceFactory_Impl,
26171 const OFFSET: isize,
26172 >(
26173 this: *mut core::ffi::c_void,
26174 pshader: *mut core::ffi::c_void,
26175 ptracedesc: *const D3D11_SHADER_TRACE_DESC,
26176 ppshadertrace: *mut *mut core::ffi::c_void,
26177 ) -> windows_core::HRESULT {
26178 unsafe {
26179 let this: &Identity =
26180 &*((this as *const *const ()).offset(OFFSET) as *const Identity);
26181 match ID3D11ShaderTraceFactory_Impl::CreateShaderTrace(
26182 this,
26183 core::mem::transmute_copy(&pshader),
26184 core::mem::transmute_copy(&ptracedesc),
26185 ) {
26186 Ok(ok__) => {
26187 ppshadertrace.write(core::mem::transmute(ok__));
26188 windows_core::HRESULT(0)
26189 }
26190 Err(err) => err.into(),
26191 }
26192 }
26193 }
26194 Self {
26195 base__: windows_core::IUnknown_Vtbl::new::<Identity, OFFSET>(),
26196 CreateShaderTrace: CreateShaderTrace::<Identity, OFFSET>,
26197 }
26198 }
26199 pub fn matches(iid: &windows_core::GUID) -> bool {
26200 iid == &<ID3D11ShaderTraceFactory as windows_core::Interface>::IID
26201 }
26202}
26203impl windows_core::RuntimeName for ID3D11ShaderTraceFactory {}
26204unsafe impl Send for ID3D11ShaderTraceFactory {}
26205unsafe impl Sync for ID3D11ShaderTraceFactory {}
26206windows_core::imp::define_interface!(
26207 ID3D11SwitchToRef,
26208 ID3D11SwitchToRef_Vtbl,
26209 0x1ef337e3_58e7_4f83_a692_db221f5ed47e
26210);
26211windows_core::imp::interface_hierarchy!(ID3D11SwitchToRef, windows_core::IUnknown);
26212impl ID3D11SwitchToRef {
26213 pub unsafe fn SetUseRef(&self, useref: bool) -> crate::Foundation::BOOL {
26214 unsafe {
26215 (windows_core::Interface::vtable(self).SetUseRef)(
26216 windows_core::Interface::as_raw(self),
26217 useref.into(),
26218 )
26219 }
26220 }
26221 pub unsafe fn GetUseRef(&self) -> crate::Foundation::BOOL {
26222 unsafe {
26223 (windows_core::Interface::vtable(self).GetUseRef)(windows_core::Interface::as_raw(self))
26224 }
26225 }
26226}
26227#[repr(C)]
26228pub struct ID3D11SwitchToRef_Vtbl {
26229 pub base__: windows_core::IUnknown_Vtbl,
26230 pub SetUseRef: unsafe extern "system" fn(
26231 *mut core::ffi::c_void,
26232 crate::Foundation::BOOL,
26233 ) -> crate::Foundation::BOOL,
26234 pub GetUseRef:
26235 unsafe extern "system" fn(*mut core::ffi::c_void) -> crate::Foundation::BOOL,
26236}
26237pub trait ID3D11SwitchToRef_Impl: windows_core::IUnknownImpl {
26238 fn SetUseRef(&self, useref: crate::Foundation::BOOL) -> crate::Foundation::BOOL;
26239 fn GetUseRef(&self) -> crate::Foundation::BOOL;
26240}
26241impl ID3D11SwitchToRef_Vtbl {
26242 pub const fn new<Identity: ID3D11SwitchToRef_Impl, const OFFSET: isize>() -> Self {
26243 unsafe extern "system" fn SetUseRef<
26244 Identity: ID3D11SwitchToRef_Impl,
26245 const OFFSET: isize,
26246 >(
26247 this: *mut core::ffi::c_void,
26248 useref: crate::Foundation::BOOL,
26249 ) -> crate::Foundation::BOOL {
26250 unsafe {
26251 let this: &Identity =
26252 &*((this as *const *const ()).offset(OFFSET) as *const Identity);
26253 ID3D11SwitchToRef_Impl::SetUseRef(this, core::mem::transmute_copy(&useref))
26254 }
26255 }
26256 unsafe extern "system" fn GetUseRef<
26257 Identity: ID3D11SwitchToRef_Impl,
26258 const OFFSET: isize,
26259 >(
26260 this: *mut core::ffi::c_void,
26261 ) -> crate::Foundation::BOOL {
26262 unsafe {
26263 let this: &Identity =
26264 &*((this as *const *const ()).offset(OFFSET) as *const Identity);
26265 ID3D11SwitchToRef_Impl::GetUseRef(this)
26266 }
26267 }
26268 Self {
26269 base__: windows_core::IUnknown_Vtbl::new::<Identity, OFFSET>(),
26270 SetUseRef: SetUseRef::<Identity, OFFSET>,
26271 GetUseRef: GetUseRef::<Identity, OFFSET>,
26272 }
26273 }
26274 pub fn matches(iid: &windows_core::GUID) -> bool {
26275 iid == &<ID3D11SwitchToRef as windows_core::Interface>::IID
26276 }
26277}
26278impl windows_core::RuntimeName for ID3D11SwitchToRef {}
26279unsafe impl Send for ID3D11SwitchToRef {}
26280unsafe impl Sync for ID3D11SwitchToRef {}
26281windows_core::imp::define_interface!(
26282 ID3D11Texture1D,
26283 ID3D11Texture1D_Vtbl,
26284 0xf8fb5c27_c6b3_4f75_a4c8_439af2ef564c
26285);
26286impl core::ops::Deref for ID3D11Texture1D {
26287 type Target = ID3D11Resource;
26288 fn deref(&self) -> &Self::Target {
26289 unsafe { core::mem::transmute(self) }
26290 }
26291}
26292windows_core::imp::interface_hierarchy!(
26293 ID3D11Texture1D,
26294 windows_core::IUnknown,
26295 ID3D11DeviceChild,
26296 ID3D11Resource
26297);
26298impl ID3D11Texture1D {
26299 #[cfg(feature = "Win32_Graphics_Dxgi_Common")]
26300 pub unsafe fn GetDesc(&self, pdesc: *mut D3D11_TEXTURE1D_DESC) {
26301 unsafe {
26302 (windows_core::Interface::vtable(self).GetDesc)(
26303 windows_core::Interface::as_raw(self),
26304 core::mem::transmute(pdesc),
26305 )
26306 }
26307 }
26308}
26309#[repr(C)]
26310pub struct ID3D11Texture1D_Vtbl {
26311 pub base__: ID3D11Resource_Vtbl,
26312 #[cfg(feature = "Win32_Graphics_Dxgi_Common")]
26313 pub GetDesc: unsafe extern "system" fn(*mut core::ffi::c_void, *mut D3D11_TEXTURE1D_DESC),
26314 #[cfg(not(feature = "Win32_Graphics_Dxgi_Common"))]
26315 GetDesc: usize,
26316}
26317#[cfg(feature = "Win32_Graphics_Dxgi_Common")]
26318pub trait ID3D11Texture1D_Impl: ID3D11Resource_Impl {
26319 fn GetDesc(&self, pdesc: *mut D3D11_TEXTURE1D_DESC);
26320}
26321#[cfg(feature = "Win32_Graphics_Dxgi_Common")]
26322impl ID3D11Texture1D_Vtbl {
26323 pub const fn new<Identity: ID3D11Texture1D_Impl, const OFFSET: isize>() -> Self {
26324 unsafe extern "system" fn GetDesc<Identity: ID3D11Texture1D_Impl, const OFFSET: isize>(
26325 this: *mut core::ffi::c_void,
26326 pdesc: *mut D3D11_TEXTURE1D_DESC,
26327 ) {
26328 unsafe {
26329 let this: &Identity =
26330 &*((this as *const *const ()).offset(OFFSET) as *const Identity);
26331 ID3D11Texture1D_Impl::GetDesc(this, core::mem::transmute_copy(&pdesc))
26332 }
26333 }
26334 Self {
26335 base__: ID3D11Resource_Vtbl::new::<Identity, OFFSET>(),
26336 GetDesc: GetDesc::<Identity, OFFSET>,
26337 }
26338 }
26339 pub fn matches(iid: &windows_core::GUID) -> bool {
26340 iid == &<ID3D11Texture1D as windows_core::Interface>::IID
26341 || iid == &<ID3D11DeviceChild as windows_core::Interface>::IID
26342 || iid == &<ID3D11Resource as windows_core::Interface>::IID
26343 }
26344}
26345#[cfg(feature = "Win32_Graphics_Dxgi_Common")]
26346impl windows_core::RuntimeName for ID3D11Texture1D {}
26347#[cfg(feature = "Win32_Graphics_Dxgi_Common")]
26348unsafe impl Send for ID3D11Texture1D {}
26349#[cfg(feature = "Win32_Graphics_Dxgi_Common")]
26350unsafe impl Sync for ID3D11Texture1D {}
26351windows_core::imp::define_interface!(
26352 ID3D11Texture2D,
26353 ID3D11Texture2D_Vtbl,
26354 0x6f15aaf2_d208_4e89_9ab4_489535d34f9c
26355);
26356impl core::ops::Deref for ID3D11Texture2D {
26357 type Target = ID3D11Resource;
26358 fn deref(&self) -> &Self::Target {
26359 unsafe { core::mem::transmute(self) }
26360 }
26361}
26362windows_core::imp::interface_hierarchy!(
26363 ID3D11Texture2D,
26364 windows_core::IUnknown,
26365 ID3D11DeviceChild,
26366 ID3D11Resource
26367);
26368impl ID3D11Texture2D {
26369 #[cfg(feature = "Win32_Graphics_Dxgi_Common")]
26370 pub unsafe fn GetDesc(&self, pdesc: *mut D3D11_TEXTURE2D_DESC) {
26371 unsafe {
26372 (windows_core::Interface::vtable(self).GetDesc)(
26373 windows_core::Interface::as_raw(self),
26374 core::mem::transmute(pdesc),
26375 )
26376 }
26377 }
26378}
26379#[repr(C)]
26380pub struct ID3D11Texture2D_Vtbl {
26381 pub base__: ID3D11Resource_Vtbl,
26382 #[cfg(feature = "Win32_Graphics_Dxgi_Common")]
26383 pub GetDesc: unsafe extern "system" fn(*mut core::ffi::c_void, *mut D3D11_TEXTURE2D_DESC),
26384 #[cfg(not(feature = "Win32_Graphics_Dxgi_Common"))]
26385 GetDesc: usize,
26386}
26387#[cfg(feature = "Win32_Graphics_Dxgi_Common")]
26388pub trait ID3D11Texture2D_Impl: ID3D11Resource_Impl {
26389 fn GetDesc(&self, pdesc: *mut D3D11_TEXTURE2D_DESC);
26390}
26391#[cfg(feature = "Win32_Graphics_Dxgi_Common")]
26392impl ID3D11Texture2D_Vtbl {
26393 pub const fn new<Identity: ID3D11Texture2D_Impl, const OFFSET: isize>() -> Self {
26394 unsafe extern "system" fn GetDesc<Identity: ID3D11Texture2D_Impl, const OFFSET: isize>(
26395 this: *mut core::ffi::c_void,
26396 pdesc: *mut D3D11_TEXTURE2D_DESC,
26397 ) {
26398 unsafe {
26399 let this: &Identity =
26400 &*((this as *const *const ()).offset(OFFSET) as *const Identity);
26401 ID3D11Texture2D_Impl::GetDesc(this, core::mem::transmute_copy(&pdesc))
26402 }
26403 }
26404 Self {
26405 base__: ID3D11Resource_Vtbl::new::<Identity, OFFSET>(),
26406 GetDesc: GetDesc::<Identity, OFFSET>,
26407 }
26408 }
26409 pub fn matches(iid: &windows_core::GUID) -> bool {
26410 iid == &<ID3D11Texture2D as windows_core::Interface>::IID
26411 || iid == &<ID3D11DeviceChild as windows_core::Interface>::IID
26412 || iid == &<ID3D11Resource as windows_core::Interface>::IID
26413 }
26414}
26415#[cfg(feature = "Win32_Graphics_Dxgi_Common")]
26416impl windows_core::RuntimeName for ID3D11Texture2D {}
26417#[cfg(feature = "Win32_Graphics_Dxgi_Common")]
26418unsafe impl Send for ID3D11Texture2D {}
26419#[cfg(feature = "Win32_Graphics_Dxgi_Common")]
26420unsafe impl Sync for ID3D11Texture2D {}
26421windows_core::imp::define_interface!(
26422 ID3D11Texture2D1,
26423 ID3D11Texture2D1_Vtbl,
26424 0x51218251_1e33_4617_9ccb_4d3a4367e7bb
26425);
26426impl core::ops::Deref for ID3D11Texture2D1 {
26427 type Target = ID3D11Texture2D;
26428 fn deref(&self) -> &Self::Target {
26429 unsafe { core::mem::transmute(self) }
26430 }
26431}
26432windows_core::imp::interface_hierarchy!(
26433 ID3D11Texture2D1,
26434 windows_core::IUnknown,
26435 ID3D11DeviceChild,
26436 ID3D11Resource,
26437 ID3D11Texture2D
26438);
26439impl ID3D11Texture2D1 {
26440 #[cfg(feature = "Win32_Graphics_Dxgi_Common")]
26441 pub unsafe fn GetDesc1(&self, pdesc: *mut D3D11_TEXTURE2D_DESC1) {
26442 unsafe {
26443 (windows_core::Interface::vtable(self).GetDesc1)(
26444 windows_core::Interface::as_raw(self),
26445 core::mem::transmute(pdesc),
26446 )
26447 }
26448 }
26449}
26450#[repr(C)]
26451pub struct ID3D11Texture2D1_Vtbl {
26452 pub base__: ID3D11Texture2D_Vtbl,
26453 #[cfg(feature = "Win32_Graphics_Dxgi_Common")]
26454 pub GetDesc1: unsafe extern "system" fn(*mut core::ffi::c_void, *mut D3D11_TEXTURE2D_DESC1),
26455 #[cfg(not(feature = "Win32_Graphics_Dxgi_Common"))]
26456 GetDesc1: usize,
26457}
26458#[cfg(feature = "Win32_Graphics_Dxgi_Common")]
26459pub trait ID3D11Texture2D1_Impl: ID3D11Texture2D_Impl {
26460 fn GetDesc1(&self, pdesc: *mut D3D11_TEXTURE2D_DESC1);
26461}
26462#[cfg(feature = "Win32_Graphics_Dxgi_Common")]
26463impl ID3D11Texture2D1_Vtbl {
26464 pub const fn new<Identity: ID3D11Texture2D1_Impl, const OFFSET: isize>() -> Self {
26465 unsafe extern "system" fn GetDesc1<Identity: ID3D11Texture2D1_Impl, const OFFSET: isize>(
26466 this: *mut core::ffi::c_void,
26467 pdesc: *mut D3D11_TEXTURE2D_DESC1,
26468 ) {
26469 unsafe {
26470 let this: &Identity =
26471 &*((this as *const *const ()).offset(OFFSET) as *const Identity);
26472 ID3D11Texture2D1_Impl::GetDesc1(this, core::mem::transmute_copy(&pdesc))
26473 }
26474 }
26475 Self {
26476 base__: ID3D11Texture2D_Vtbl::new::<Identity, OFFSET>(),
26477 GetDesc1: GetDesc1::<Identity, OFFSET>,
26478 }
26479 }
26480 pub fn matches(iid: &windows_core::GUID) -> bool {
26481 iid == &<ID3D11Texture2D1 as windows_core::Interface>::IID
26482 || iid == &<ID3D11DeviceChild as windows_core::Interface>::IID
26483 || iid == &<ID3D11Resource as windows_core::Interface>::IID
26484 || iid == &<ID3D11Texture2D as windows_core::Interface>::IID
26485 }
26486}
26487#[cfg(feature = "Win32_Graphics_Dxgi_Common")]
26488impl windows_core::RuntimeName for ID3D11Texture2D1 {}
26489#[cfg(feature = "Win32_Graphics_Dxgi_Common")]
26490unsafe impl Send for ID3D11Texture2D1 {}
26491#[cfg(feature = "Win32_Graphics_Dxgi_Common")]
26492unsafe impl Sync for ID3D11Texture2D1 {}
26493windows_core::imp::define_interface!(
26494 ID3D11Texture3D,
26495 ID3D11Texture3D_Vtbl,
26496 0x037e866e_f56d_4357_a8af_9dabbe6e250e
26497);
26498impl core::ops::Deref for ID3D11Texture3D {
26499 type Target = ID3D11Resource;
26500 fn deref(&self) -> &Self::Target {
26501 unsafe { core::mem::transmute(self) }
26502 }
26503}
26504windows_core::imp::interface_hierarchy!(
26505 ID3D11Texture3D,
26506 windows_core::IUnknown,
26507 ID3D11DeviceChild,
26508 ID3D11Resource
26509);
26510impl ID3D11Texture3D {
26511 #[cfg(feature = "Win32_Graphics_Dxgi_Common")]
26512 pub unsafe fn GetDesc(&self, pdesc: *mut D3D11_TEXTURE3D_DESC) {
26513 unsafe {
26514 (windows_core::Interface::vtable(self).GetDesc)(
26515 windows_core::Interface::as_raw(self),
26516 core::mem::transmute(pdesc),
26517 )
26518 }
26519 }
26520}
26521#[repr(C)]
26522pub struct ID3D11Texture3D_Vtbl {
26523 pub base__: ID3D11Resource_Vtbl,
26524 #[cfg(feature = "Win32_Graphics_Dxgi_Common")]
26525 pub GetDesc: unsafe extern "system" fn(*mut core::ffi::c_void, *mut D3D11_TEXTURE3D_DESC),
26526 #[cfg(not(feature = "Win32_Graphics_Dxgi_Common"))]
26527 GetDesc: usize,
26528}
26529#[cfg(feature = "Win32_Graphics_Dxgi_Common")]
26530pub trait ID3D11Texture3D_Impl: ID3D11Resource_Impl {
26531 fn GetDesc(&self, pdesc: *mut D3D11_TEXTURE3D_DESC);
26532}
26533#[cfg(feature = "Win32_Graphics_Dxgi_Common")]
26534impl ID3D11Texture3D_Vtbl {
26535 pub const fn new<Identity: ID3D11Texture3D_Impl, const OFFSET: isize>() -> Self {
26536 unsafe extern "system" fn GetDesc<Identity: ID3D11Texture3D_Impl, const OFFSET: isize>(
26537 this: *mut core::ffi::c_void,
26538 pdesc: *mut D3D11_TEXTURE3D_DESC,
26539 ) {
26540 unsafe {
26541 let this: &Identity =
26542 &*((this as *const *const ()).offset(OFFSET) as *const Identity);
26543 ID3D11Texture3D_Impl::GetDesc(this, core::mem::transmute_copy(&pdesc))
26544 }
26545 }
26546 Self {
26547 base__: ID3D11Resource_Vtbl::new::<Identity, OFFSET>(),
26548 GetDesc: GetDesc::<Identity, OFFSET>,
26549 }
26550 }
26551 pub fn matches(iid: &windows_core::GUID) -> bool {
26552 iid == &<ID3D11Texture3D as windows_core::Interface>::IID
26553 || iid == &<ID3D11DeviceChild as windows_core::Interface>::IID
26554 || iid == &<ID3D11Resource as windows_core::Interface>::IID
26555 }
26556}
26557#[cfg(feature = "Win32_Graphics_Dxgi_Common")]
26558impl windows_core::RuntimeName for ID3D11Texture3D {}
26559#[cfg(feature = "Win32_Graphics_Dxgi_Common")]
26560unsafe impl Send for ID3D11Texture3D {}
26561#[cfg(feature = "Win32_Graphics_Dxgi_Common")]
26562unsafe impl Sync for ID3D11Texture3D {}
26563windows_core::imp::define_interface!(
26564 ID3D11Texture3D1,
26565 ID3D11Texture3D1_Vtbl,
26566 0x0c711683_2853_4846_9bb0_f3e60639e46a
26567);
26568impl core::ops::Deref for ID3D11Texture3D1 {
26569 type Target = ID3D11Texture3D;
26570 fn deref(&self) -> &Self::Target {
26571 unsafe { core::mem::transmute(self) }
26572 }
26573}
26574windows_core::imp::interface_hierarchy!(
26575 ID3D11Texture3D1,
26576 windows_core::IUnknown,
26577 ID3D11DeviceChild,
26578 ID3D11Resource,
26579 ID3D11Texture3D
26580);
26581impl ID3D11Texture3D1 {
26582 #[cfg(feature = "Win32_Graphics_Dxgi_Common")]
26583 pub unsafe fn GetDesc1(&self, pdesc: *mut D3D11_TEXTURE3D_DESC1) {
26584 unsafe {
26585 (windows_core::Interface::vtable(self).GetDesc1)(
26586 windows_core::Interface::as_raw(self),
26587 core::mem::transmute(pdesc),
26588 )
26589 }
26590 }
26591}
26592#[repr(C)]
26593pub struct ID3D11Texture3D1_Vtbl {
26594 pub base__: ID3D11Texture3D_Vtbl,
26595 #[cfg(feature = "Win32_Graphics_Dxgi_Common")]
26596 pub GetDesc1: unsafe extern "system" fn(*mut core::ffi::c_void, *mut D3D11_TEXTURE3D_DESC1),
26597 #[cfg(not(feature = "Win32_Graphics_Dxgi_Common"))]
26598 GetDesc1: usize,
26599}
26600#[cfg(feature = "Win32_Graphics_Dxgi_Common")]
26601pub trait ID3D11Texture3D1_Impl: ID3D11Texture3D_Impl {
26602 fn GetDesc1(&self, pdesc: *mut D3D11_TEXTURE3D_DESC1);
26603}
26604#[cfg(feature = "Win32_Graphics_Dxgi_Common")]
26605impl ID3D11Texture3D1_Vtbl {
26606 pub const fn new<Identity: ID3D11Texture3D1_Impl, const OFFSET: isize>() -> Self {
26607 unsafe extern "system" fn GetDesc1<Identity: ID3D11Texture3D1_Impl, const OFFSET: isize>(
26608 this: *mut core::ffi::c_void,
26609 pdesc: *mut D3D11_TEXTURE3D_DESC1,
26610 ) {
26611 unsafe {
26612 let this: &Identity =
26613 &*((this as *const *const ()).offset(OFFSET) as *const Identity);
26614 ID3D11Texture3D1_Impl::GetDesc1(this, core::mem::transmute_copy(&pdesc))
26615 }
26616 }
26617 Self {
26618 base__: ID3D11Texture3D_Vtbl::new::<Identity, OFFSET>(),
26619 GetDesc1: GetDesc1::<Identity, OFFSET>,
26620 }
26621 }
26622 pub fn matches(iid: &windows_core::GUID) -> bool {
26623 iid == &<ID3D11Texture3D1 as windows_core::Interface>::IID
26624 || iid == &<ID3D11DeviceChild as windows_core::Interface>::IID
26625 || iid == &<ID3D11Resource as windows_core::Interface>::IID
26626 || iid == &<ID3D11Texture3D as windows_core::Interface>::IID
26627 }
26628}
26629#[cfg(feature = "Win32_Graphics_Dxgi_Common")]
26630impl windows_core::RuntimeName for ID3D11Texture3D1 {}
26631#[cfg(feature = "Win32_Graphics_Dxgi_Common")]
26632unsafe impl Send for ID3D11Texture3D1 {}
26633#[cfg(feature = "Win32_Graphics_Dxgi_Common")]
26634unsafe impl Sync for ID3D11Texture3D1 {}
26635windows_core::imp::define_interface!(
26636 ID3D11TracingDevice,
26637 ID3D11TracingDevice_Vtbl,
26638 0x1911c771_1587_413e_a7e0_fb26c3de0268
26639);
26640windows_core::imp::interface_hierarchy!(ID3D11TracingDevice, windows_core::IUnknown);
26641impl ID3D11TracingDevice {
26642 pub unsafe fn SetShaderTrackingOptionsByType(
26643 &self,
26644 resourcetypeflags: u32,
26645 options: u32,
26646 ) -> windows_core::Result<()> {
26647 unsafe {
26648 (windows_core::Interface::vtable(self).SetShaderTrackingOptionsByType)(
26649 windows_core::Interface::as_raw(self),
26650 resourcetypeflags,
26651 options,
26652 )
26653 .ok()
26654 }
26655 }
26656 pub unsafe fn SetShaderTrackingOptions<P0>(
26657 &self,
26658 pshader: P0,
26659 options: u32,
26660 ) -> windows_core::Result<()>
26661 where
26662 P0: windows_core::Param<windows_core::IUnknown>,
26663 {
26664 unsafe {
26665 (windows_core::Interface::vtable(self).SetShaderTrackingOptions)(
26666 windows_core::Interface::as_raw(self),
26667 pshader.param().abi(),
26668 options,
26669 )
26670 .ok()
26671 }
26672 }
26673}
26674#[repr(C)]
26675pub struct ID3D11TracingDevice_Vtbl {
26676 pub base__: windows_core::IUnknown_Vtbl,
26677 pub SetShaderTrackingOptionsByType:
26678 unsafe extern "system" fn(*mut core::ffi::c_void, u32, u32) -> windows_core::HRESULT,
26679 pub SetShaderTrackingOptions: unsafe extern "system" fn(
26680 *mut core::ffi::c_void,
26681 *mut core::ffi::c_void,
26682 u32,
26683 ) -> windows_core::HRESULT,
26684}
26685pub trait ID3D11TracingDevice_Impl: windows_core::IUnknownImpl {
26686 fn SetShaderTrackingOptionsByType(
26687 &self,
26688 resourcetypeflags: u32,
26689 options: u32,
26690 ) -> windows_core::Result<()>;
26691 fn SetShaderTrackingOptions(
26692 &self,
26693 pshader: windows_core::Ref<'_, windows_core::IUnknown>,
26694 options: u32,
26695 ) -> windows_core::Result<()>;
26696}
26697impl ID3D11TracingDevice_Vtbl {
26698 pub const fn new<Identity: ID3D11TracingDevice_Impl, const OFFSET: isize>() -> Self {
26699 unsafe extern "system" fn SetShaderTrackingOptionsByType<
26700 Identity: ID3D11TracingDevice_Impl,
26701 const OFFSET: isize,
26702 >(
26703 this: *mut core::ffi::c_void,
26704 resourcetypeflags: u32,
26705 options: u32,
26706 ) -> windows_core::HRESULT {
26707 unsafe {
26708 let this: &Identity =
26709 &*((this as *const *const ()).offset(OFFSET) as *const Identity);
26710 ID3D11TracingDevice_Impl::SetShaderTrackingOptionsByType(
26711 this,
26712 core::mem::transmute_copy(&resourcetypeflags),
26713 core::mem::transmute_copy(&options),
26714 )
26715 .into()
26716 }
26717 }
26718 unsafe extern "system" fn SetShaderTrackingOptions<
26719 Identity: ID3D11TracingDevice_Impl,
26720 const OFFSET: isize,
26721 >(
26722 this: *mut core::ffi::c_void,
26723 pshader: *mut core::ffi::c_void,
26724 options: u32,
26725 ) -> windows_core::HRESULT {
26726 unsafe {
26727 let this: &Identity =
26728 &*((this as *const *const ()).offset(OFFSET) as *const Identity);
26729 ID3D11TracingDevice_Impl::SetShaderTrackingOptions(
26730 this,
26731 core::mem::transmute_copy(&pshader),
26732 core::mem::transmute_copy(&options),
26733 )
26734 .into()
26735 }
26736 }
26737 Self {
26738 base__: windows_core::IUnknown_Vtbl::new::<Identity, OFFSET>(),
26739 SetShaderTrackingOptionsByType: SetShaderTrackingOptionsByType::<Identity, OFFSET>,
26740 SetShaderTrackingOptions: SetShaderTrackingOptions::<Identity, OFFSET>,
26741 }
26742 }
26743 pub fn matches(iid: &windows_core::GUID) -> bool {
26744 iid == &<ID3D11TracingDevice as windows_core::Interface>::IID
26745 }
26746}
26747impl windows_core::RuntimeName for ID3D11TracingDevice {}
26748unsafe impl Send for ID3D11TracingDevice {}
26749unsafe impl Sync for ID3D11TracingDevice {}
26750windows_core::imp::define_interface!(
26751 ID3D11UnorderedAccessView,
26752 ID3D11UnorderedAccessView_Vtbl,
26753 0x28acf509_7f5c_48f6_8611_f316010a6380
26754);
26755impl core::ops::Deref for ID3D11UnorderedAccessView {
26756 type Target = ID3D11View;
26757 fn deref(&self) -> &Self::Target {
26758 unsafe { core::mem::transmute(self) }
26759 }
26760}
26761windows_core::imp::interface_hierarchy!(
26762 ID3D11UnorderedAccessView,
26763 windows_core::IUnknown,
26764 ID3D11DeviceChild,
26765 ID3D11View
26766);
26767impl ID3D11UnorderedAccessView {
26768 #[cfg(feature = "Win32_Graphics_Dxgi_Common")]
26769 pub unsafe fn GetDesc(&self, pdesc: *mut D3D11_UNORDERED_ACCESS_VIEW_DESC) {
26770 unsafe {
26771 (windows_core::Interface::vtable(self).GetDesc)(
26772 windows_core::Interface::as_raw(self),
26773 core::mem::transmute(pdesc),
26774 )
26775 }
26776 }
26777}
26778#[repr(C)]
26779pub struct ID3D11UnorderedAccessView_Vtbl {
26780 pub base__: ID3D11View_Vtbl,
26781 #[cfg(feature = "Win32_Graphics_Dxgi_Common")]
26782 pub GetDesc:
26783 unsafe extern "system" fn(*mut core::ffi::c_void, *mut D3D11_UNORDERED_ACCESS_VIEW_DESC),
26784 #[cfg(not(feature = "Win32_Graphics_Dxgi_Common"))]
26785 GetDesc: usize,
26786}
26787#[cfg(feature = "Win32_Graphics_Dxgi_Common")]
26788pub trait ID3D11UnorderedAccessView_Impl: ID3D11View_Impl {
26789 fn GetDesc(&self, pdesc: *mut D3D11_UNORDERED_ACCESS_VIEW_DESC);
26790}
26791#[cfg(feature = "Win32_Graphics_Dxgi_Common")]
26792impl ID3D11UnorderedAccessView_Vtbl {
26793 pub const fn new<Identity: ID3D11UnorderedAccessView_Impl, const OFFSET: isize>() -> Self {
26794 unsafe extern "system" fn GetDesc<
26795 Identity: ID3D11UnorderedAccessView_Impl,
26796 const OFFSET: isize,
26797 >(
26798 this: *mut core::ffi::c_void,
26799 pdesc: *mut D3D11_UNORDERED_ACCESS_VIEW_DESC,
26800 ) {
26801 unsafe {
26802 let this: &Identity =
26803 &*((this as *const *const ()).offset(OFFSET) as *const Identity);
26804 ID3D11UnorderedAccessView_Impl::GetDesc(this, core::mem::transmute_copy(&pdesc))
26805 }
26806 }
26807 Self {
26808 base__: ID3D11View_Vtbl::new::<Identity, OFFSET>(),
26809 GetDesc: GetDesc::<Identity, OFFSET>,
26810 }
26811 }
26812 pub fn matches(iid: &windows_core::GUID) -> bool {
26813 iid == &<ID3D11UnorderedAccessView as windows_core::Interface>::IID
26814 || iid == &<ID3D11DeviceChild as windows_core::Interface>::IID
26815 || iid == &<ID3D11View as windows_core::Interface>::IID
26816 }
26817}
26818#[cfg(feature = "Win32_Graphics_Dxgi_Common")]
26819impl windows_core::RuntimeName for ID3D11UnorderedAccessView {}
26820#[cfg(feature = "Win32_Graphics_Dxgi_Common")]
26821unsafe impl Send for ID3D11UnorderedAccessView {}
26822#[cfg(feature = "Win32_Graphics_Dxgi_Common")]
26823unsafe impl Sync for ID3D11UnorderedAccessView {}
26824windows_core::imp::define_interface!(
26825 ID3D11UnorderedAccessView1,
26826 ID3D11UnorderedAccessView1_Vtbl,
26827 0x7b3b6153_a886_4544_ab37_6537c8500403
26828);
26829impl core::ops::Deref for ID3D11UnorderedAccessView1 {
26830 type Target = ID3D11UnorderedAccessView;
26831 fn deref(&self) -> &Self::Target {
26832 unsafe { core::mem::transmute(self) }
26833 }
26834}
26835windows_core::imp::interface_hierarchy!(
26836 ID3D11UnorderedAccessView1,
26837 windows_core::IUnknown,
26838 ID3D11DeviceChild,
26839 ID3D11View,
26840 ID3D11UnorderedAccessView
26841);
26842impl ID3D11UnorderedAccessView1 {
26843 #[cfg(feature = "Win32_Graphics_Dxgi_Common")]
26844 pub unsafe fn GetDesc1(&self, pdesc1: *mut D3D11_UNORDERED_ACCESS_VIEW_DESC1) {
26845 unsafe {
26846 (windows_core::Interface::vtable(self).GetDesc1)(
26847 windows_core::Interface::as_raw(self),
26848 core::mem::transmute(pdesc1),
26849 )
26850 }
26851 }
26852}
26853#[repr(C)]
26854pub struct ID3D11UnorderedAccessView1_Vtbl {
26855 pub base__: ID3D11UnorderedAccessView_Vtbl,
26856 #[cfg(feature = "Win32_Graphics_Dxgi_Common")]
26857 pub GetDesc1:
26858 unsafe extern "system" fn(*mut core::ffi::c_void, *mut D3D11_UNORDERED_ACCESS_VIEW_DESC1),
26859 #[cfg(not(feature = "Win32_Graphics_Dxgi_Common"))]
26860 GetDesc1: usize,
26861}
26862#[cfg(feature = "Win32_Graphics_Dxgi_Common")]
26863pub trait ID3D11UnorderedAccessView1_Impl: ID3D11UnorderedAccessView_Impl {
26864 fn GetDesc1(&self, pdesc1: *mut D3D11_UNORDERED_ACCESS_VIEW_DESC1);
26865}
26866#[cfg(feature = "Win32_Graphics_Dxgi_Common")]
26867impl ID3D11UnorderedAccessView1_Vtbl {
26868 pub const fn new<Identity: ID3D11UnorderedAccessView1_Impl, const OFFSET: isize>() -> Self {
26869 unsafe extern "system" fn GetDesc1<
26870 Identity: ID3D11UnorderedAccessView1_Impl,
26871 const OFFSET: isize,
26872 >(
26873 this: *mut core::ffi::c_void,
26874 pdesc1: *mut D3D11_UNORDERED_ACCESS_VIEW_DESC1,
26875 ) {
26876 unsafe {
26877 let this: &Identity =
26878 &*((this as *const *const ()).offset(OFFSET) as *const Identity);
26879 ID3D11UnorderedAccessView1_Impl::GetDesc1(this, core::mem::transmute_copy(&pdesc1))
26880 }
26881 }
26882 Self {
26883 base__: ID3D11UnorderedAccessView_Vtbl::new::<Identity, OFFSET>(),
26884 GetDesc1: GetDesc1::<Identity, OFFSET>,
26885 }
26886 }
26887 pub fn matches(iid: &windows_core::GUID) -> bool {
26888 iid == &<ID3D11UnorderedAccessView1 as windows_core::Interface>::IID
26889 || iid == &<ID3D11DeviceChild as windows_core::Interface>::IID
26890 || iid == &<ID3D11View as windows_core::Interface>::IID
26891 || iid == &<ID3D11UnorderedAccessView as windows_core::Interface>::IID
26892 }
26893}
26894#[cfg(feature = "Win32_Graphics_Dxgi_Common")]
26895impl windows_core::RuntimeName for ID3D11UnorderedAccessView1 {}
26896#[cfg(feature = "Win32_Graphics_Dxgi_Common")]
26897unsafe impl Send for ID3D11UnorderedAccessView1 {}
26898#[cfg(feature = "Win32_Graphics_Dxgi_Common")]
26899unsafe impl Sync for ID3D11UnorderedAccessView1 {}
26900windows_core::imp::define_interface!(
26901 ID3D11VertexShader,
26902 ID3D11VertexShader_Vtbl,
26903 0x3b301d64_d678_4289_8897_22f8928b72f3
26904);
26905impl core::ops::Deref for ID3D11VertexShader {
26906 type Target = ID3D11DeviceChild;
26907 fn deref(&self) -> &Self::Target {
26908 unsafe { core::mem::transmute(self) }
26909 }
26910}
26911windows_core::imp::interface_hierarchy!(
26912 ID3D11VertexShader,
26913 windows_core::IUnknown,
26914 ID3D11DeviceChild
26915);
26916#[repr(C)]
26917pub struct ID3D11VertexShader_Vtbl {
26918 pub base__: ID3D11DeviceChild_Vtbl,
26919}
26920pub trait ID3D11VertexShader_Impl: ID3D11DeviceChild_Impl {}
26921impl ID3D11VertexShader_Vtbl {
26922 pub const fn new<Identity: ID3D11VertexShader_Impl, const OFFSET: isize>() -> Self {
26923 Self {
26924 base__: ID3D11DeviceChild_Vtbl::new::<Identity, OFFSET>(),
26925 }
26926 }
26927 pub fn matches(iid: &windows_core::GUID) -> bool {
26928 iid == &<ID3D11VertexShader as windows_core::Interface>::IID
26929 || iid == &<ID3D11DeviceChild as windows_core::Interface>::IID
26930 }
26931}
26932impl windows_core::RuntimeName for ID3D11VertexShader {}
26933unsafe impl Send for ID3D11VertexShader {}
26934unsafe impl Sync for ID3D11VertexShader {}
26935windows_core::imp::define_interface!(
26936 ID3D11VideoContext,
26937 ID3D11VideoContext_Vtbl,
26938 0x61f21c45_3c0e_4a74_9cea_67100d9ad5e4
26939);
26940impl core::ops::Deref for ID3D11VideoContext {
26941 type Target = ID3D11DeviceChild;
26942 fn deref(&self) -> &Self::Target {
26943 unsafe { core::mem::transmute(self) }
26944 }
26945}
26946windows_core::imp::interface_hierarchy!(
26947 ID3D11VideoContext,
26948 windows_core::IUnknown,
26949 ID3D11DeviceChild
26950);
26951impl ID3D11VideoContext {
26952 pub unsafe fn GetDecoderBuffer<P0>(
26953 &self,
26954 pdecoder: P0,
26955 r#type: D3D11_VIDEO_DECODER_BUFFER_TYPE,
26956 pbuffersize: *mut u32,
26957 ppbuffer: *mut *mut core::ffi::c_void,
26958 ) -> windows_core::Result<()>
26959 where
26960 P0: windows_core::Param<ID3D11VideoDecoder>,
26961 {
26962 unsafe {
26963 (windows_core::Interface::vtable(self).GetDecoderBuffer)(
26964 windows_core::Interface::as_raw(self),
26965 pdecoder.param().abi(),
26966 r#type,
26967 core::mem::transmute(pbuffersize),
26968 core::mem::transmute(ppbuffer),
26969 )
26970 .ok()
26971 }
26972 }
26973 pub unsafe fn ReleaseDecoderBuffer<P0>(
26974 &self,
26975 pdecoder: P0,
26976 r#type: D3D11_VIDEO_DECODER_BUFFER_TYPE,
26977 ) -> windows_core::Result<()>
26978 where
26979 P0: windows_core::Param<ID3D11VideoDecoder>,
26980 {
26981 unsafe {
26982 (windows_core::Interface::vtable(self).ReleaseDecoderBuffer)(
26983 windows_core::Interface::as_raw(self),
26984 pdecoder.param().abi(),
26985 r#type,
26986 )
26987 .ok()
26988 }
26989 }
26990 pub unsafe fn DecoderBeginFrame<P0, P1>(
26991 &self,
26992 pdecoder: P0,
26993 pview: P1,
26994 contentkeysize: u32,
26995 pcontentkey: Option<*const core::ffi::c_void>,
26996 ) -> windows_core::Result<()>
26997 where
26998 P0: windows_core::Param<ID3D11VideoDecoder>,
26999 P1: windows_core::Param<ID3D11VideoDecoderOutputView>,
27000 {
27001 unsafe {
27002 (windows_core::Interface::vtable(self).DecoderBeginFrame)(
27003 windows_core::Interface::as_raw(self),
27004 pdecoder.param().abi(),
27005 pview.param().abi(),
27006 contentkeysize,
27007 core::mem::transmute(pcontentkey.unwrap_or(core::mem::zeroed())),
27008 )
27009 .ok()
27010 }
27011 }
27012 pub unsafe fn DecoderEndFrame<P0>(&self, pdecoder: P0) -> windows_core::Result<()>
27013 where
27014 P0: windows_core::Param<ID3D11VideoDecoder>,
27015 {
27016 unsafe {
27017 (windows_core::Interface::vtable(self).DecoderEndFrame)(
27018 windows_core::Interface::as_raw(self),
27019 pdecoder.param().abi(),
27020 )
27021 .ok()
27022 }
27023 }
27024 pub unsafe fn SubmitDecoderBuffers<P0>(
27025 &self,
27026 pdecoder: P0,
27027 pbufferdesc: &[D3D11_VIDEO_DECODER_BUFFER_DESC],
27028 ) -> windows_core::Result<()>
27029 where
27030 P0: windows_core::Param<ID3D11VideoDecoder>,
27031 {
27032 unsafe {
27033 (windows_core::Interface::vtable(self).SubmitDecoderBuffers)(
27034 windows_core::Interface::as_raw(self),
27035 pdecoder.param().abi(),
27036 pbufferdesc.len().try_into().unwrap(),
27037 core::mem::transmute(pbufferdesc.as_ptr()),
27038 )
27039 .ok()
27040 }
27041 }
27042 pub unsafe fn DecoderExtension<P0>(
27043 &self,
27044 pdecoder: P0,
27045 pextensiondata: *const D3D11_VIDEO_DECODER_EXTENSION,
27046 ) -> i32
27047 where
27048 P0: windows_core::Param<ID3D11VideoDecoder>,
27049 {
27050 unsafe {
27051 (windows_core::Interface::vtable(self).DecoderExtension)(
27052 windows_core::Interface::as_raw(self),
27053 pdecoder.param().abi(),
27054 pextensiondata,
27055 )
27056 }
27057 }
27058 pub unsafe fn VideoProcessorSetOutputTargetRect<P0>(
27059 &self,
27060 pvideoprocessor: P0,
27061 enable: bool,
27062 prect: Option<*const crate::Foundation::RECT>,
27063 ) where
27064 P0: windows_core::Param<ID3D11VideoProcessor>,
27065 {
27066 unsafe {
27067 (windows_core::Interface::vtable(self).VideoProcessorSetOutputTargetRect)(
27068 windows_core::Interface::as_raw(self),
27069 pvideoprocessor.param().abi(),
27070 enable.into(),
27071 core::mem::transmute(prect.unwrap_or(core::mem::zeroed())),
27072 )
27073 }
27074 }
27075 pub unsafe fn VideoProcessorSetOutputBackgroundColor<P0>(
27076 &self,
27077 pvideoprocessor: P0,
27078 ycbcr: bool,
27079 pcolor: *const D3D11_VIDEO_COLOR,
27080 ) where
27081 P0: windows_core::Param<ID3D11VideoProcessor>,
27082 {
27083 unsafe {
27084 (windows_core::Interface::vtable(self).VideoProcessorSetOutputBackgroundColor)(
27085 windows_core::Interface::as_raw(self),
27086 pvideoprocessor.param().abi(),
27087 ycbcr.into(),
27088 pcolor,
27089 )
27090 }
27091 }
27092 pub unsafe fn VideoProcessorSetOutputColorSpace<P0>(
27093 &self,
27094 pvideoprocessor: P0,
27095 pcolorspace: *const D3D11_VIDEO_PROCESSOR_COLOR_SPACE,
27096 ) where
27097 P0: windows_core::Param<ID3D11VideoProcessor>,
27098 {
27099 unsafe {
27100 (windows_core::Interface::vtable(self).VideoProcessorSetOutputColorSpace)(
27101 windows_core::Interface::as_raw(self),
27102 pvideoprocessor.param().abi(),
27103 pcolorspace,
27104 )
27105 }
27106 }
27107 pub unsafe fn VideoProcessorSetOutputAlphaFillMode<P0>(
27108 &self,
27109 pvideoprocessor: P0,
27110 alphafillmode: D3D11_VIDEO_PROCESSOR_ALPHA_FILL_MODE,
27111 streamindex: u32,
27112 ) where
27113 P0: windows_core::Param<ID3D11VideoProcessor>,
27114 {
27115 unsafe {
27116 (windows_core::Interface::vtable(self).VideoProcessorSetOutputAlphaFillMode)(
27117 windows_core::Interface::as_raw(self),
27118 pvideoprocessor.param().abi(),
27119 alphafillmode,
27120 streamindex,
27121 )
27122 }
27123 }
27124 pub unsafe fn VideoProcessorSetOutputConstriction<P0>(
27125 &self,
27126 pvideoprocessor: P0,
27127 enable: bool,
27128 size: crate::Foundation::SIZE,
27129 ) where
27130 P0: windows_core::Param<ID3D11VideoProcessor>,
27131 {
27132 unsafe {
27133 (windows_core::Interface::vtable(self).VideoProcessorSetOutputConstriction)(
27134 windows_core::Interface::as_raw(self),
27135 pvideoprocessor.param().abi(),
27136 enable.into(),
27137 core::mem::transmute(size),
27138 )
27139 }
27140 }
27141 pub unsafe fn VideoProcessorSetOutputStereoMode<P0>(&self, pvideoprocessor: P0, enable: bool)
27142 where
27143 P0: windows_core::Param<ID3D11VideoProcessor>,
27144 {
27145 unsafe {
27146 (windows_core::Interface::vtable(self).VideoProcessorSetOutputStereoMode)(
27147 windows_core::Interface::as_raw(self),
27148 pvideoprocessor.param().abi(),
27149 enable.into(),
27150 )
27151 }
27152 }
27153 pub unsafe fn VideoProcessorSetOutputExtension<P0>(
27154 &self,
27155 pvideoprocessor: P0,
27156 pextensionguid: *const windows_core::GUID,
27157 datasize: u32,
27158 pdata: *const core::ffi::c_void,
27159 ) -> i32
27160 where
27161 P0: windows_core::Param<ID3D11VideoProcessor>,
27162 {
27163 unsafe {
27164 (windows_core::Interface::vtable(self).VideoProcessorSetOutputExtension)(
27165 windows_core::Interface::as_raw(self),
27166 pvideoprocessor.param().abi(),
27167 pextensionguid,
27168 datasize,
27169 pdata,
27170 )
27171 }
27172 }
27173 pub unsafe fn VideoProcessorGetOutputTargetRect<P0>(
27174 &self,
27175 pvideoprocessor: P0,
27176 enabled: *mut crate::Foundation::BOOL,
27177 prect: *mut crate::Foundation::RECT,
27178 ) where
27179 P0: windows_core::Param<ID3D11VideoProcessor>,
27180 {
27181 unsafe {
27182 (windows_core::Interface::vtable(self).VideoProcessorGetOutputTargetRect)(
27183 windows_core::Interface::as_raw(self),
27184 pvideoprocessor.param().abi(),
27185 core::mem::transmute(enabled),
27186 core::mem::transmute(prect),
27187 )
27188 }
27189 }
27190 pub unsafe fn VideoProcessorGetOutputBackgroundColor<P0>(
27191 &self,
27192 pvideoprocessor: P0,
27193 pycbcr: *mut crate::Foundation::BOOL,
27194 pcolor: *mut D3D11_VIDEO_COLOR,
27195 ) where
27196 P0: windows_core::Param<ID3D11VideoProcessor>,
27197 {
27198 unsafe {
27199 (windows_core::Interface::vtable(self).VideoProcessorGetOutputBackgroundColor)(
27200 windows_core::Interface::as_raw(self),
27201 pvideoprocessor.param().abi(),
27202 core::mem::transmute(pycbcr),
27203 core::mem::transmute(pcolor),
27204 )
27205 }
27206 }
27207 pub unsafe fn VideoProcessorGetOutputColorSpace<P0>(
27208 &self,
27209 pvideoprocessor: P0,
27210 ) -> D3D11_VIDEO_PROCESSOR_COLOR_SPACE
27211 where
27212 P0: windows_core::Param<ID3D11VideoProcessor>,
27213 {
27214 unsafe {
27215 let mut result__ = core::mem::zeroed();
27216 (windows_core::Interface::vtable(self).VideoProcessorGetOutputColorSpace)(
27217 windows_core::Interface::as_raw(self),
27218 pvideoprocessor.param().abi(),
27219 &mut result__,
27220 );
27221 result__
27222 }
27223 }
27224 pub unsafe fn VideoProcessorGetOutputAlphaFillMode<P0>(
27225 &self,
27226 pvideoprocessor: P0,
27227 palphafillmode: *mut D3D11_VIDEO_PROCESSOR_ALPHA_FILL_MODE,
27228 pstreamindex: *mut u32,
27229 ) where
27230 P0: windows_core::Param<ID3D11VideoProcessor>,
27231 {
27232 unsafe {
27233 (windows_core::Interface::vtable(self).VideoProcessorGetOutputAlphaFillMode)(
27234 windows_core::Interface::as_raw(self),
27235 pvideoprocessor.param().abi(),
27236 core::mem::transmute(palphafillmode),
27237 core::mem::transmute(pstreamindex),
27238 )
27239 }
27240 }
27241 pub unsafe fn VideoProcessorGetOutputConstriction<P0>(
27242 &self,
27243 pvideoprocessor: P0,
27244 penabled: *mut crate::Foundation::BOOL,
27245 psize: *mut crate::Foundation::SIZE,
27246 ) where
27247 P0: windows_core::Param<ID3D11VideoProcessor>,
27248 {
27249 unsafe {
27250 (windows_core::Interface::vtable(self).VideoProcessorGetOutputConstriction)(
27251 windows_core::Interface::as_raw(self),
27252 pvideoprocessor.param().abi(),
27253 core::mem::transmute(penabled),
27254 core::mem::transmute(psize),
27255 )
27256 }
27257 }
27258 pub unsafe fn VideoProcessorGetOutputStereoMode<P0>(
27259 &self,
27260 pvideoprocessor: P0,
27261 ) -> crate::Foundation::BOOL
27262 where
27263 P0: windows_core::Param<ID3D11VideoProcessor>,
27264 {
27265 unsafe {
27266 let mut result__ = core::mem::zeroed();
27267 (windows_core::Interface::vtable(self).VideoProcessorGetOutputStereoMode)(
27268 windows_core::Interface::as_raw(self),
27269 pvideoprocessor.param().abi(),
27270 &mut result__,
27271 );
27272 result__
27273 }
27274 }
27275 pub unsafe fn VideoProcessorGetOutputExtension<P0>(
27276 &self,
27277 pvideoprocessor: P0,
27278 pextensionguid: *const windows_core::GUID,
27279 datasize: u32,
27280 pdata: *mut core::ffi::c_void,
27281 ) -> i32
27282 where
27283 P0: windows_core::Param<ID3D11VideoProcessor>,
27284 {
27285 unsafe {
27286 (windows_core::Interface::vtable(self).VideoProcessorGetOutputExtension)(
27287 windows_core::Interface::as_raw(self),
27288 pvideoprocessor.param().abi(),
27289 pextensionguid,
27290 datasize,
27291 core::mem::transmute(pdata),
27292 )
27293 }
27294 }
27295 pub unsafe fn VideoProcessorSetStreamFrameFormat<P0>(
27296 &self,
27297 pvideoprocessor: P0,
27298 streamindex: u32,
27299 frameformat: D3D11_VIDEO_FRAME_FORMAT,
27300 ) where
27301 P0: windows_core::Param<ID3D11VideoProcessor>,
27302 {
27303 unsafe {
27304 (windows_core::Interface::vtable(self).VideoProcessorSetStreamFrameFormat)(
27305 windows_core::Interface::as_raw(self),
27306 pvideoprocessor.param().abi(),
27307 streamindex,
27308 frameformat,
27309 )
27310 }
27311 }
27312 pub unsafe fn VideoProcessorSetStreamColorSpace<P0>(
27313 &self,
27314 pvideoprocessor: P0,
27315 streamindex: u32,
27316 pcolorspace: *const D3D11_VIDEO_PROCESSOR_COLOR_SPACE,
27317 ) where
27318 P0: windows_core::Param<ID3D11VideoProcessor>,
27319 {
27320 unsafe {
27321 (windows_core::Interface::vtable(self).VideoProcessorSetStreamColorSpace)(
27322 windows_core::Interface::as_raw(self),
27323 pvideoprocessor.param().abi(),
27324 streamindex,
27325 pcolorspace,
27326 )
27327 }
27328 }
27329 #[cfg(feature = "Win32_Graphics_Dxgi_Common")]
27330 pub unsafe fn VideoProcessorSetStreamOutputRate<P0>(
27331 &self,
27332 pvideoprocessor: P0,
27333 streamindex: u32,
27334 outputrate: D3D11_VIDEO_PROCESSOR_OUTPUT_RATE,
27335 repeatframe: bool,
27336 pcustomrate: Option<*const crate::Dxgi::Common::DXGI_RATIONAL>,
27337 ) where
27338 P0: windows_core::Param<ID3D11VideoProcessor>,
27339 {
27340 unsafe {
27341 (windows_core::Interface::vtable(self).VideoProcessorSetStreamOutputRate)(
27342 windows_core::Interface::as_raw(self),
27343 pvideoprocessor.param().abi(),
27344 streamindex,
27345 outputrate,
27346 repeatframe.into(),
27347 core::mem::transmute(pcustomrate.unwrap_or(core::mem::zeroed())),
27348 )
27349 }
27350 }
27351 pub unsafe fn VideoProcessorSetStreamSourceRect<P0>(
27352 &self,
27353 pvideoprocessor: P0,
27354 streamindex: u32,
27355 enable: bool,
27356 prect: Option<*const crate::Foundation::RECT>,
27357 ) where
27358 P0: windows_core::Param<ID3D11VideoProcessor>,
27359 {
27360 unsafe {
27361 (windows_core::Interface::vtable(self).VideoProcessorSetStreamSourceRect)(
27362 windows_core::Interface::as_raw(self),
27363 pvideoprocessor.param().abi(),
27364 streamindex,
27365 enable.into(),
27366 core::mem::transmute(prect.unwrap_or(core::mem::zeroed())),
27367 )
27368 }
27369 }
27370 pub unsafe fn VideoProcessorSetStreamDestRect<P0>(
27371 &self,
27372 pvideoprocessor: P0,
27373 streamindex: u32,
27374 enable: bool,
27375 prect: Option<*const crate::Foundation::RECT>,
27376 ) where
27377 P0: windows_core::Param<ID3D11VideoProcessor>,
27378 {
27379 unsafe {
27380 (windows_core::Interface::vtable(self).VideoProcessorSetStreamDestRect)(
27381 windows_core::Interface::as_raw(self),
27382 pvideoprocessor.param().abi(),
27383 streamindex,
27384 enable.into(),
27385 core::mem::transmute(prect.unwrap_or(core::mem::zeroed())),
27386 )
27387 }
27388 }
27389 pub unsafe fn VideoProcessorSetStreamAlpha<P0>(
27390 &self,
27391 pvideoprocessor: P0,
27392 streamindex: u32,
27393 enable: bool,
27394 alpha: f32,
27395 ) where
27396 P0: windows_core::Param<ID3D11VideoProcessor>,
27397 {
27398 unsafe {
27399 (windows_core::Interface::vtable(self).VideoProcessorSetStreamAlpha)(
27400 windows_core::Interface::as_raw(self),
27401 pvideoprocessor.param().abi(),
27402 streamindex,
27403 enable.into(),
27404 alpha,
27405 )
27406 }
27407 }
27408 pub unsafe fn VideoProcessorSetStreamPalette<P0>(
27409 &self,
27410 pvideoprocessor: P0,
27411 streamindex: u32,
27412 pentries: Option<&[u32]>,
27413 ) where
27414 P0: windows_core::Param<ID3D11VideoProcessor>,
27415 {
27416 unsafe {
27417 (windows_core::Interface::vtable(self).VideoProcessorSetStreamPalette)(
27418 windows_core::Interface::as_raw(self),
27419 pvideoprocessor.param().abi(),
27420 streamindex,
27421 pentries
27422 .map_or(0, |slice| slice.len().try_into().unwrap()),
27423 core::mem::transmute(
27424 pentries
27425 .map_or(core::ptr::null(), |slice| slice.as_ptr()),
27426 ),
27427 )
27428 }
27429 }
27430 #[cfg(feature = "Win32_Graphics_Dxgi_Common")]
27431 pub unsafe fn VideoProcessorSetStreamPixelAspectRatio<P0>(
27432 &self,
27433 pvideoprocessor: P0,
27434 streamindex: u32,
27435 enable: bool,
27436 psourceaspectratio: Option<*const crate::Dxgi::Common::DXGI_RATIONAL>,
27437 pdestinationaspectratio: Option<*const crate::Dxgi::Common::DXGI_RATIONAL>,
27438 ) where
27439 P0: windows_core::Param<ID3D11VideoProcessor>,
27440 {
27441 unsafe {
27442 (windows_core::Interface::vtable(self).VideoProcessorSetStreamPixelAspectRatio)(
27443 windows_core::Interface::as_raw(self),
27444 pvideoprocessor.param().abi(),
27445 streamindex,
27446 enable.into(),
27447 core::mem::transmute(psourceaspectratio.unwrap_or(core::mem::zeroed())),
27448 core::mem::transmute(pdestinationaspectratio.unwrap_or(core::mem::zeroed())),
27449 )
27450 }
27451 }
27452 pub unsafe fn VideoProcessorSetStreamLumaKey<P0>(
27453 &self,
27454 pvideoprocessor: P0,
27455 streamindex: u32,
27456 enable: bool,
27457 lower: f32,
27458 upper: f32,
27459 ) where
27460 P0: windows_core::Param<ID3D11VideoProcessor>,
27461 {
27462 unsafe {
27463 (windows_core::Interface::vtable(self).VideoProcessorSetStreamLumaKey)(
27464 windows_core::Interface::as_raw(self),
27465 pvideoprocessor.param().abi(),
27466 streamindex,
27467 enable.into(),
27468 lower,
27469 upper,
27470 )
27471 }
27472 }
27473 pub unsafe fn VideoProcessorSetStreamStereoFormat<P0>(
27474 &self,
27475 pvideoprocessor: P0,
27476 streamindex: u32,
27477 enable: bool,
27478 format: D3D11_VIDEO_PROCESSOR_STEREO_FORMAT,
27479 leftviewframe0: bool,
27480 baseviewframe0: bool,
27481 flipmode: D3D11_VIDEO_PROCESSOR_STEREO_FLIP_MODE,
27482 monooffset: i32,
27483 ) where
27484 P0: windows_core::Param<ID3D11VideoProcessor>,
27485 {
27486 unsafe {
27487 (windows_core::Interface::vtable(self).VideoProcessorSetStreamStereoFormat)(
27488 windows_core::Interface::as_raw(self),
27489 pvideoprocessor.param().abi(),
27490 streamindex,
27491 enable.into(),
27492 format,
27493 leftviewframe0.into(),
27494 baseviewframe0.into(),
27495 flipmode,
27496 monooffset,
27497 )
27498 }
27499 }
27500 pub unsafe fn VideoProcessorSetStreamAutoProcessingMode<P0>(
27501 &self,
27502 pvideoprocessor: P0,
27503 streamindex: u32,
27504 enable: bool,
27505 ) where
27506 P0: windows_core::Param<ID3D11VideoProcessor>,
27507 {
27508 unsafe {
27509 (windows_core::Interface::vtable(self).VideoProcessorSetStreamAutoProcessingMode)(
27510 windows_core::Interface::as_raw(self),
27511 pvideoprocessor.param().abi(),
27512 streamindex,
27513 enable.into(),
27514 )
27515 }
27516 }
27517 pub unsafe fn VideoProcessorSetStreamFilter<P0>(
27518 &self,
27519 pvideoprocessor: P0,
27520 streamindex: u32,
27521 filter: D3D11_VIDEO_PROCESSOR_FILTER,
27522 enable: bool,
27523 level: i32,
27524 ) where
27525 P0: windows_core::Param<ID3D11VideoProcessor>,
27526 {
27527 unsafe {
27528 (windows_core::Interface::vtable(self).VideoProcessorSetStreamFilter)(
27529 windows_core::Interface::as_raw(self),
27530 pvideoprocessor.param().abi(),
27531 streamindex,
27532 filter,
27533 enable.into(),
27534 level,
27535 )
27536 }
27537 }
27538 pub unsafe fn VideoProcessorSetStreamExtension<P0>(
27539 &self,
27540 pvideoprocessor: P0,
27541 streamindex: u32,
27542 pextensionguid: *const windows_core::GUID,
27543 datasize: u32,
27544 pdata: *const core::ffi::c_void,
27545 ) -> i32
27546 where
27547 P0: windows_core::Param<ID3D11VideoProcessor>,
27548 {
27549 unsafe {
27550 (windows_core::Interface::vtable(self).VideoProcessorSetStreamExtension)(
27551 windows_core::Interface::as_raw(self),
27552 pvideoprocessor.param().abi(),
27553 streamindex,
27554 pextensionguid,
27555 datasize,
27556 pdata,
27557 )
27558 }
27559 }
27560 pub unsafe fn VideoProcessorGetStreamFrameFormat<P0>(
27561 &self,
27562 pvideoprocessor: P0,
27563 streamindex: u32,
27564 ) -> D3D11_VIDEO_FRAME_FORMAT
27565 where
27566 P0: windows_core::Param<ID3D11VideoProcessor>,
27567 {
27568 unsafe {
27569 let mut result__ = core::mem::zeroed();
27570 (windows_core::Interface::vtable(self).VideoProcessorGetStreamFrameFormat)(
27571 windows_core::Interface::as_raw(self),
27572 pvideoprocessor.param().abi(),
27573 streamindex,
27574 &mut result__,
27575 );
27576 result__
27577 }
27578 }
27579 pub unsafe fn VideoProcessorGetStreamColorSpace<P0>(
27580 &self,
27581 pvideoprocessor: P0,
27582 streamindex: u32,
27583 ) -> D3D11_VIDEO_PROCESSOR_COLOR_SPACE
27584 where
27585 P0: windows_core::Param<ID3D11VideoProcessor>,
27586 {
27587 unsafe {
27588 let mut result__ = core::mem::zeroed();
27589 (windows_core::Interface::vtable(self).VideoProcessorGetStreamColorSpace)(
27590 windows_core::Interface::as_raw(self),
27591 pvideoprocessor.param().abi(),
27592 streamindex,
27593 &mut result__,
27594 );
27595 result__
27596 }
27597 }
27598 #[cfg(feature = "Win32_Graphics_Dxgi_Common")]
27599 pub unsafe fn VideoProcessorGetStreamOutputRate<P0>(
27600 &self,
27601 pvideoprocessor: P0,
27602 streamindex: u32,
27603 poutputrate: *mut D3D11_VIDEO_PROCESSOR_OUTPUT_RATE,
27604 prepeatframe: *mut crate::Foundation::BOOL,
27605 pcustomrate: *mut crate::Dxgi::Common::DXGI_RATIONAL,
27606 ) where
27607 P0: windows_core::Param<ID3D11VideoProcessor>,
27608 {
27609 unsafe {
27610 (windows_core::Interface::vtable(self).VideoProcessorGetStreamOutputRate)(
27611 windows_core::Interface::as_raw(self),
27612 pvideoprocessor.param().abi(),
27613 streamindex,
27614 core::mem::transmute(poutputrate),
27615 core::mem::transmute(prepeatframe),
27616 core::mem::transmute(pcustomrate),
27617 )
27618 }
27619 }
27620 pub unsafe fn VideoProcessorGetStreamSourceRect<P0>(
27621 &self,
27622 pvideoprocessor: P0,
27623 streamindex: u32,
27624 penabled: *mut crate::Foundation::BOOL,
27625 prect: *mut crate::Foundation::RECT,
27626 ) where
27627 P0: windows_core::Param<ID3D11VideoProcessor>,
27628 {
27629 unsafe {
27630 (windows_core::Interface::vtable(self).VideoProcessorGetStreamSourceRect)(
27631 windows_core::Interface::as_raw(self),
27632 pvideoprocessor.param().abi(),
27633 streamindex,
27634 core::mem::transmute(penabled),
27635 core::mem::transmute(prect),
27636 )
27637 }
27638 }
27639 pub unsafe fn VideoProcessorGetStreamDestRect<P0>(
27640 &self,
27641 pvideoprocessor: P0,
27642 streamindex: u32,
27643 penabled: *mut crate::Foundation::BOOL,
27644 prect: *mut crate::Foundation::RECT,
27645 ) where
27646 P0: windows_core::Param<ID3D11VideoProcessor>,
27647 {
27648 unsafe {
27649 (windows_core::Interface::vtable(self).VideoProcessorGetStreamDestRect)(
27650 windows_core::Interface::as_raw(self),
27651 pvideoprocessor.param().abi(),
27652 streamindex,
27653 core::mem::transmute(penabled),
27654 core::mem::transmute(prect),
27655 )
27656 }
27657 }
27658 pub unsafe fn VideoProcessorGetStreamAlpha<P0>(
27659 &self,
27660 pvideoprocessor: P0,
27661 streamindex: u32,
27662 penabled: *mut crate::Foundation::BOOL,
27663 palpha: *mut f32,
27664 ) where
27665 P0: windows_core::Param<ID3D11VideoProcessor>,
27666 {
27667 unsafe {
27668 (windows_core::Interface::vtable(self).VideoProcessorGetStreamAlpha)(
27669 windows_core::Interface::as_raw(self),
27670 pvideoprocessor.param().abi(),
27671 streamindex,
27672 core::mem::transmute(penabled),
27673 core::mem::transmute(palpha),
27674 )
27675 }
27676 }
27677 pub unsafe fn VideoProcessorGetStreamPalette<P0>(
27678 &self,
27679 pvideoprocessor: P0,
27680 streamindex: u32,
27681 pentries: &mut [u32],
27682 ) where
27683 P0: windows_core::Param<ID3D11VideoProcessor>,
27684 {
27685 unsafe {
27686 (windows_core::Interface::vtable(self).VideoProcessorGetStreamPalette)(
27687 windows_core::Interface::as_raw(self),
27688 pvideoprocessor.param().abi(),
27689 streamindex,
27690 pentries.len().try_into().unwrap(),
27691 core::mem::transmute(pentries.as_ptr()),
27692 )
27693 }
27694 }
27695 #[cfg(feature = "Win32_Graphics_Dxgi_Common")]
27696 pub unsafe fn VideoProcessorGetStreamPixelAspectRatio<P0>(
27697 &self,
27698 pvideoprocessor: P0,
27699 streamindex: u32,
27700 penabled: *mut crate::Foundation::BOOL,
27701 psourceaspectratio: *mut crate::Dxgi::Common::DXGI_RATIONAL,
27702 pdestinationaspectratio: *mut crate::Dxgi::Common::DXGI_RATIONAL,
27703 ) where
27704 P0: windows_core::Param<ID3D11VideoProcessor>,
27705 {
27706 unsafe {
27707 (windows_core::Interface::vtable(self).VideoProcessorGetStreamPixelAspectRatio)(
27708 windows_core::Interface::as_raw(self),
27709 pvideoprocessor.param().abi(),
27710 streamindex,
27711 core::mem::transmute(penabled),
27712 core::mem::transmute(psourceaspectratio),
27713 core::mem::transmute(pdestinationaspectratio),
27714 )
27715 }
27716 }
27717 pub unsafe fn VideoProcessorGetStreamLumaKey<P0>(
27718 &self,
27719 pvideoprocessor: P0,
27720 streamindex: u32,
27721 penabled: *mut crate::Foundation::BOOL,
27722 plower: *mut f32,
27723 pupper: *mut f32,
27724 ) where
27725 P0: windows_core::Param<ID3D11VideoProcessor>,
27726 {
27727 unsafe {
27728 (windows_core::Interface::vtable(self).VideoProcessorGetStreamLumaKey)(
27729 windows_core::Interface::as_raw(self),
27730 pvideoprocessor.param().abi(),
27731 streamindex,
27732 core::mem::transmute(penabled),
27733 core::mem::transmute(plower),
27734 core::mem::transmute(pupper),
27735 )
27736 }
27737 }
27738 pub unsafe fn VideoProcessorGetStreamStereoFormat<P0>(
27739 &self,
27740 pvideoprocessor: P0,
27741 streamindex: u32,
27742 penable: *mut crate::Foundation::BOOL,
27743 pformat: *mut D3D11_VIDEO_PROCESSOR_STEREO_FORMAT,
27744 pleftviewframe0: *mut crate::Foundation::BOOL,
27745 pbaseviewframe0: *mut crate::Foundation::BOOL,
27746 pflipmode: *mut D3D11_VIDEO_PROCESSOR_STEREO_FLIP_MODE,
27747 monooffset: *mut i32,
27748 ) where
27749 P0: windows_core::Param<ID3D11VideoProcessor>,
27750 {
27751 unsafe {
27752 (windows_core::Interface::vtable(self).VideoProcessorGetStreamStereoFormat)(
27753 windows_core::Interface::as_raw(self),
27754 pvideoprocessor.param().abi(),
27755 streamindex,
27756 core::mem::transmute(penable),
27757 core::mem::transmute(pformat),
27758 core::mem::transmute(pleftviewframe0),
27759 core::mem::transmute(pbaseviewframe0),
27760 core::mem::transmute(pflipmode),
27761 core::mem::transmute(monooffset),
27762 )
27763 }
27764 }
27765 pub unsafe fn VideoProcessorGetStreamAutoProcessingMode<P0>(
27766 &self,
27767 pvideoprocessor: P0,
27768 streamindex: u32,
27769 ) -> crate::Foundation::BOOL
27770 where
27771 P0: windows_core::Param<ID3D11VideoProcessor>,
27772 {
27773 unsafe {
27774 let mut result__ = core::mem::zeroed();
27775 (windows_core::Interface::vtable(self).VideoProcessorGetStreamAutoProcessingMode)(
27776 windows_core::Interface::as_raw(self),
27777 pvideoprocessor.param().abi(),
27778 streamindex,
27779 &mut result__,
27780 );
27781 result__
27782 }
27783 }
27784 pub unsafe fn VideoProcessorGetStreamFilter<P0>(
27785 &self,
27786 pvideoprocessor: P0,
27787 streamindex: u32,
27788 filter: D3D11_VIDEO_PROCESSOR_FILTER,
27789 penabled: *mut crate::Foundation::BOOL,
27790 plevel: *mut i32,
27791 ) where
27792 P0: windows_core::Param<ID3D11VideoProcessor>,
27793 {
27794 unsafe {
27795 (windows_core::Interface::vtable(self).VideoProcessorGetStreamFilter)(
27796 windows_core::Interface::as_raw(self),
27797 pvideoprocessor.param().abi(),
27798 streamindex,
27799 filter,
27800 core::mem::transmute(penabled),
27801 core::mem::transmute(plevel),
27802 )
27803 }
27804 }
27805 pub unsafe fn VideoProcessorGetStreamExtension<P0>(
27806 &self,
27807 pvideoprocessor: P0,
27808 streamindex: u32,
27809 pextensionguid: *const windows_core::GUID,
27810 datasize: u32,
27811 pdata: *mut core::ffi::c_void,
27812 ) -> i32
27813 where
27814 P0: windows_core::Param<ID3D11VideoProcessor>,
27815 {
27816 unsafe {
27817 (windows_core::Interface::vtable(self).VideoProcessorGetStreamExtension)(
27818 windows_core::Interface::as_raw(self),
27819 pvideoprocessor.param().abi(),
27820 streamindex,
27821 pextensionguid,
27822 datasize,
27823 core::mem::transmute(pdata),
27824 )
27825 }
27826 }
27827 pub unsafe fn VideoProcessorBlt<P0, P1>(
27828 &self,
27829 pvideoprocessor: P0,
27830 pview: P1,
27831 outputframe: u32,
27832 pstreams: &[D3D11_VIDEO_PROCESSOR_STREAM],
27833 ) -> windows_core::Result<()>
27834 where
27835 P0: windows_core::Param<ID3D11VideoProcessor>,
27836 P1: windows_core::Param<ID3D11VideoProcessorOutputView>,
27837 {
27838 unsafe {
27839 (windows_core::Interface::vtable(self).VideoProcessorBlt)(
27840 windows_core::Interface::as_raw(self),
27841 pvideoprocessor.param().abi(),
27842 pview.param().abi(),
27843 outputframe,
27844 pstreams.len().try_into().unwrap(),
27845 core::mem::transmute(pstreams.as_ptr()),
27846 )
27847 .ok()
27848 }
27849 }
27850 pub unsafe fn NegotiateCryptoSessionKeyExchange<P0>(
27851 &self,
27852 pcryptosession: P0,
27853 datasize: u32,
27854 pdata: *mut core::ffi::c_void,
27855 ) -> windows_core::Result<()>
27856 where
27857 P0: windows_core::Param<ID3D11CryptoSession>,
27858 {
27859 unsafe {
27860 (windows_core::Interface::vtable(self).NegotiateCryptoSessionKeyExchange)(
27861 windows_core::Interface::as_raw(self),
27862 pcryptosession.param().abi(),
27863 datasize,
27864 core::mem::transmute(pdata),
27865 )
27866 .ok()
27867 }
27868 }
27869 pub unsafe fn EncryptionBlt<P0, P1, P2>(
27870 &self,
27871 pcryptosession: P0,
27872 psrcsurface: P1,
27873 pdstsurface: P2,
27874 ivsize: u32,
27875 piv: Option<*mut core::ffi::c_void>,
27876 ) where
27877 P0: windows_core::Param<ID3D11CryptoSession>,
27878 P1: windows_core::Param<ID3D11Texture2D>,
27879 P2: windows_core::Param<ID3D11Texture2D>,
27880 {
27881 unsafe {
27882 (windows_core::Interface::vtable(self).EncryptionBlt)(
27883 windows_core::Interface::as_raw(self),
27884 pcryptosession.param().abi(),
27885 psrcsurface.param().abi(),
27886 pdstsurface.param().abi(),
27887 ivsize,
27888 core::mem::transmute(piv.unwrap_or(core::mem::zeroed())),
27889 )
27890 }
27891 }
27892 pub unsafe fn DecryptionBlt<P0, P1, P2>(
27893 &self,
27894 pcryptosession: P0,
27895 psrcsurface: P1,
27896 pdstsurface: P2,
27897 pencryptedblockinfo: Option<*const D3D11_ENCRYPTED_BLOCK_INFO>,
27898 contentkeysize: u32,
27899 pcontentkey: Option<*const core::ffi::c_void>,
27900 ivsize: u32,
27901 piv: Option<*mut core::ffi::c_void>,
27902 ) where
27903 P0: windows_core::Param<ID3D11CryptoSession>,
27904 P1: windows_core::Param<ID3D11Texture2D>,
27905 P2: windows_core::Param<ID3D11Texture2D>,
27906 {
27907 unsafe {
27908 (windows_core::Interface::vtable(self).DecryptionBlt)(
27909 windows_core::Interface::as_raw(self),
27910 pcryptosession.param().abi(),
27911 psrcsurface.param().abi(),
27912 pdstsurface.param().abi(),
27913 core::mem::transmute(pencryptedblockinfo.unwrap_or(core::mem::zeroed())),
27914 contentkeysize,
27915 core::mem::transmute(pcontentkey.unwrap_or(core::mem::zeroed())),
27916 ivsize,
27917 core::mem::transmute(piv.unwrap_or(core::mem::zeroed())),
27918 )
27919 }
27920 }
27921 pub unsafe fn StartSessionKeyRefresh<P0>(
27922 &self,
27923 pcryptosession: P0,
27924 randomnumbersize: u32,
27925 prandomnumber: *mut core::ffi::c_void,
27926 ) where
27927 P0: windows_core::Param<ID3D11CryptoSession>,
27928 {
27929 unsafe {
27930 (windows_core::Interface::vtable(self).StartSessionKeyRefresh)(
27931 windows_core::Interface::as_raw(self),
27932 pcryptosession.param().abi(),
27933 randomnumbersize,
27934 core::mem::transmute(prandomnumber),
27935 )
27936 }
27937 }
27938 pub unsafe fn FinishSessionKeyRefresh<P0>(&self, pcryptosession: P0)
27939 where
27940 P0: windows_core::Param<ID3D11CryptoSession>,
27941 {
27942 unsafe {
27943 (windows_core::Interface::vtable(self).FinishSessionKeyRefresh)(
27944 windows_core::Interface::as_raw(self),
27945 pcryptosession.param().abi(),
27946 )
27947 }
27948 }
27949 pub unsafe fn GetEncryptionBltKey<P0>(
27950 &self,
27951 pcryptosession: P0,
27952 keysize: u32,
27953 preadbackkey: *mut core::ffi::c_void,
27954 ) -> windows_core::Result<()>
27955 where
27956 P0: windows_core::Param<ID3D11CryptoSession>,
27957 {
27958 unsafe {
27959 (windows_core::Interface::vtable(self).GetEncryptionBltKey)(
27960 windows_core::Interface::as_raw(self),
27961 pcryptosession.param().abi(),
27962 keysize,
27963 core::mem::transmute(preadbackkey),
27964 )
27965 .ok()
27966 }
27967 }
27968 pub unsafe fn NegotiateAuthenticatedChannelKeyExchange<P0>(
27969 &self,
27970 pchannel: P0,
27971 datasize: u32,
27972 pdata: *mut core::ffi::c_void,
27973 ) -> windows_core::Result<()>
27974 where
27975 P0: windows_core::Param<ID3D11AuthenticatedChannel>,
27976 {
27977 unsafe {
27978 (windows_core::Interface::vtable(self).NegotiateAuthenticatedChannelKeyExchange)(
27979 windows_core::Interface::as_raw(self),
27980 pchannel.param().abi(),
27981 datasize,
27982 core::mem::transmute(pdata),
27983 )
27984 .ok()
27985 }
27986 }
27987 pub unsafe fn QueryAuthenticatedChannel<P0>(
27988 &self,
27989 pchannel: P0,
27990 inputsize: u32,
27991 pinput: *const core::ffi::c_void,
27992 outputsize: u32,
27993 poutput: *mut core::ffi::c_void,
27994 ) -> windows_core::Result<()>
27995 where
27996 P0: windows_core::Param<ID3D11AuthenticatedChannel>,
27997 {
27998 unsafe {
27999 (windows_core::Interface::vtable(self).QueryAuthenticatedChannel)(
28000 windows_core::Interface::as_raw(self),
28001 pchannel.param().abi(),
28002 inputsize,
28003 pinput,
28004 outputsize,
28005 core::mem::transmute(poutput),
28006 )
28007 .ok()
28008 }
28009 }
28010 pub unsafe fn ConfigureAuthenticatedChannel<P0>(
28011 &self,
28012 pchannel: P0,
28013 inputsize: u32,
28014 pinput: *const core::ffi::c_void,
28015 poutput: *mut D3D11_AUTHENTICATED_CONFIGURE_OUTPUT,
28016 ) -> windows_core::Result<()>
28017 where
28018 P0: windows_core::Param<ID3D11AuthenticatedChannel>,
28019 {
28020 unsafe {
28021 (windows_core::Interface::vtable(self).ConfigureAuthenticatedChannel)(
28022 windows_core::Interface::as_raw(self),
28023 pchannel.param().abi(),
28024 inputsize,
28025 pinput,
28026 core::mem::transmute(poutput),
28027 )
28028 .ok()
28029 }
28030 }
28031 pub unsafe fn VideoProcessorSetStreamRotation<P0>(
28032 &self,
28033 pvideoprocessor: P0,
28034 streamindex: u32,
28035 enable: bool,
28036 rotation: D3D11_VIDEO_PROCESSOR_ROTATION,
28037 ) where
28038 P0: windows_core::Param<ID3D11VideoProcessor>,
28039 {
28040 unsafe {
28041 (windows_core::Interface::vtable(self).VideoProcessorSetStreamRotation)(
28042 windows_core::Interface::as_raw(self),
28043 pvideoprocessor.param().abi(),
28044 streamindex,
28045 enable.into(),
28046 rotation,
28047 )
28048 }
28049 }
28050 pub unsafe fn VideoProcessorGetStreamRotation<P0>(
28051 &self,
28052 pvideoprocessor: P0,
28053 streamindex: u32,
28054 penable: *mut crate::Foundation::BOOL,
28055 protation: *mut D3D11_VIDEO_PROCESSOR_ROTATION,
28056 ) where
28057 P0: windows_core::Param<ID3D11VideoProcessor>,
28058 {
28059 unsafe {
28060 (windows_core::Interface::vtable(self).VideoProcessorGetStreamRotation)(
28061 windows_core::Interface::as_raw(self),
28062 pvideoprocessor.param().abi(),
28063 streamindex,
28064 core::mem::transmute(penable),
28065 core::mem::transmute(protation),
28066 )
28067 }
28068 }
28069}
28070#[repr(C)]
28071pub struct ID3D11VideoContext_Vtbl {
28072 pub base__: ID3D11DeviceChild_Vtbl,
28073 pub GetDecoderBuffer: unsafe extern "system" fn(
28074 *mut core::ffi::c_void,
28075 *mut core::ffi::c_void,
28076 D3D11_VIDEO_DECODER_BUFFER_TYPE,
28077 *mut u32,
28078 *mut *mut core::ffi::c_void,
28079 ) -> windows_core::HRESULT,
28080 pub ReleaseDecoderBuffer: unsafe extern "system" fn(
28081 *mut core::ffi::c_void,
28082 *mut core::ffi::c_void,
28083 D3D11_VIDEO_DECODER_BUFFER_TYPE,
28084 ) -> windows_core::HRESULT,
28085 pub DecoderBeginFrame: unsafe extern "system" fn(
28086 *mut core::ffi::c_void,
28087 *mut core::ffi::c_void,
28088 *mut core::ffi::c_void,
28089 u32,
28090 *const core::ffi::c_void,
28091 ) -> windows_core::HRESULT,
28092 pub DecoderEndFrame: unsafe extern "system" fn(
28093 *mut core::ffi::c_void,
28094 *mut core::ffi::c_void,
28095 ) -> windows_core::HRESULT,
28096 pub SubmitDecoderBuffers: unsafe extern "system" fn(
28097 *mut core::ffi::c_void,
28098 *mut core::ffi::c_void,
28099 u32,
28100 *const D3D11_VIDEO_DECODER_BUFFER_DESC,
28101 ) -> windows_core::HRESULT,
28102 pub DecoderExtension: unsafe extern "system" fn(
28103 *mut core::ffi::c_void,
28104 *mut core::ffi::c_void,
28105 *const D3D11_VIDEO_DECODER_EXTENSION,
28106 ) -> i32,
28107 pub VideoProcessorSetOutputTargetRect: unsafe extern "system" fn(
28108 *mut core::ffi::c_void,
28109 *mut core::ffi::c_void,
28110 crate::Foundation::BOOL,
28111 *const crate::Foundation::RECT,
28112 ),
28113 pub VideoProcessorSetOutputBackgroundColor: unsafe extern "system" fn(
28114 *mut core::ffi::c_void,
28115 *mut core::ffi::c_void,
28116 crate::Foundation::BOOL,
28117 *const D3D11_VIDEO_COLOR,
28118 ),
28119 pub VideoProcessorSetOutputColorSpace: unsafe extern "system" fn(
28120 *mut core::ffi::c_void,
28121 *mut core::ffi::c_void,
28122 *const D3D11_VIDEO_PROCESSOR_COLOR_SPACE,
28123 ),
28124 pub VideoProcessorSetOutputAlphaFillMode: unsafe extern "system" fn(
28125 *mut core::ffi::c_void,
28126 *mut core::ffi::c_void,
28127 D3D11_VIDEO_PROCESSOR_ALPHA_FILL_MODE,
28128 u32,
28129 ),
28130 pub VideoProcessorSetOutputConstriction: unsafe extern "system" fn(
28131 *mut core::ffi::c_void,
28132 *mut core::ffi::c_void,
28133 crate::Foundation::BOOL,
28134 crate::Foundation::SIZE,
28135 ),
28136 pub VideoProcessorSetOutputStereoMode: unsafe extern "system" fn(
28137 *mut core::ffi::c_void,
28138 *mut core::ffi::c_void,
28139 crate::Foundation::BOOL,
28140 ),
28141 pub VideoProcessorSetOutputExtension: unsafe extern "system" fn(
28142 *mut core::ffi::c_void,
28143 *mut core::ffi::c_void,
28144 *const windows_core::GUID,
28145 u32,
28146 *const core::ffi::c_void,
28147 ) -> i32,
28148 pub VideoProcessorGetOutputTargetRect: unsafe extern "system" fn(
28149 *mut core::ffi::c_void,
28150 *mut core::ffi::c_void,
28151 *mut crate::Foundation::BOOL,
28152 *mut crate::Foundation::RECT,
28153 ),
28154 pub VideoProcessorGetOutputBackgroundColor: unsafe extern "system" fn(
28155 *mut core::ffi::c_void,
28156 *mut core::ffi::c_void,
28157 *mut crate::Foundation::BOOL,
28158 *mut D3D11_VIDEO_COLOR,
28159 ),
28160 pub VideoProcessorGetOutputColorSpace: unsafe extern "system" fn(
28161 *mut core::ffi::c_void,
28162 *mut core::ffi::c_void,
28163 *mut D3D11_VIDEO_PROCESSOR_COLOR_SPACE,
28164 ),
28165 pub VideoProcessorGetOutputAlphaFillMode: unsafe extern "system" fn(
28166 *mut core::ffi::c_void,
28167 *mut core::ffi::c_void,
28168 *mut D3D11_VIDEO_PROCESSOR_ALPHA_FILL_MODE,
28169 *mut u32,
28170 ),
28171 pub VideoProcessorGetOutputConstriction: unsafe extern "system" fn(
28172 *mut core::ffi::c_void,
28173 *mut core::ffi::c_void,
28174 *mut crate::Foundation::BOOL,
28175 *mut crate::Foundation::SIZE,
28176 ),
28177 pub VideoProcessorGetOutputStereoMode: unsafe extern "system" fn(
28178 *mut core::ffi::c_void,
28179 *mut core::ffi::c_void,
28180 *mut crate::Foundation::BOOL,
28181 ),
28182 pub VideoProcessorGetOutputExtension: unsafe extern "system" fn(
28183 *mut core::ffi::c_void,
28184 *mut core::ffi::c_void,
28185 *const windows_core::GUID,
28186 u32,
28187 *mut core::ffi::c_void,
28188 ) -> i32,
28189 pub VideoProcessorSetStreamFrameFormat: unsafe extern "system" fn(
28190 *mut core::ffi::c_void,
28191 *mut core::ffi::c_void,
28192 u32,
28193 D3D11_VIDEO_FRAME_FORMAT,
28194 ),
28195 pub VideoProcessorSetStreamColorSpace: unsafe extern "system" fn(
28196 *mut core::ffi::c_void,
28197 *mut core::ffi::c_void,
28198 u32,
28199 *const D3D11_VIDEO_PROCESSOR_COLOR_SPACE,
28200 ),
28201 #[cfg(feature = "Win32_Graphics_Dxgi_Common")]
28202 pub VideoProcessorSetStreamOutputRate: unsafe extern "system" fn(
28203 *mut core::ffi::c_void,
28204 *mut core::ffi::c_void,
28205 u32,
28206 D3D11_VIDEO_PROCESSOR_OUTPUT_RATE,
28207 crate::Foundation::BOOL,
28208 *const crate::Dxgi::Common::DXGI_RATIONAL,
28209 ),
28210 #[cfg(not(feature = "Win32_Graphics_Dxgi_Common"))]
28211 VideoProcessorSetStreamOutputRate: usize,
28212 pub VideoProcessorSetStreamSourceRect: unsafe extern "system" fn(
28213 *mut core::ffi::c_void,
28214 *mut core::ffi::c_void,
28215 u32,
28216 crate::Foundation::BOOL,
28217 *const crate::Foundation::RECT,
28218 ),
28219 pub VideoProcessorSetStreamDestRect: unsafe extern "system" fn(
28220 *mut core::ffi::c_void,
28221 *mut core::ffi::c_void,
28222 u32,
28223 crate::Foundation::BOOL,
28224 *const crate::Foundation::RECT,
28225 ),
28226 pub VideoProcessorSetStreamAlpha: unsafe extern "system" fn(
28227 *mut core::ffi::c_void,
28228 *mut core::ffi::c_void,
28229 u32,
28230 crate::Foundation::BOOL,
28231 f32,
28232 ),
28233 pub VideoProcessorSetStreamPalette: unsafe extern "system" fn(
28234 *mut core::ffi::c_void,
28235 *mut core::ffi::c_void,
28236 u32,
28237 u32,
28238 *const u32,
28239 ),
28240 #[cfg(feature = "Win32_Graphics_Dxgi_Common")]
28241 pub VideoProcessorSetStreamPixelAspectRatio: unsafe extern "system" fn(
28242 *mut core::ffi::c_void,
28243 *mut core::ffi::c_void,
28244 u32,
28245 crate::Foundation::BOOL,
28246 *const crate::Dxgi::Common::DXGI_RATIONAL,
28247 *const crate::Dxgi::Common::DXGI_RATIONAL,
28248 ),
28249 #[cfg(not(feature = "Win32_Graphics_Dxgi_Common"))]
28250 VideoProcessorSetStreamPixelAspectRatio: usize,
28251 pub VideoProcessorSetStreamLumaKey: unsafe extern "system" fn(
28252 *mut core::ffi::c_void,
28253 *mut core::ffi::c_void,
28254 u32,
28255 crate::Foundation::BOOL,
28256 f32,
28257 f32,
28258 ),
28259 pub VideoProcessorSetStreamStereoFormat: unsafe extern "system" fn(
28260 *mut core::ffi::c_void,
28261 *mut core::ffi::c_void,
28262 u32,
28263 crate::Foundation::BOOL,
28264 D3D11_VIDEO_PROCESSOR_STEREO_FORMAT,
28265 crate::Foundation::BOOL,
28266 crate::Foundation::BOOL,
28267 D3D11_VIDEO_PROCESSOR_STEREO_FLIP_MODE,
28268 i32,
28269 ),
28270 pub VideoProcessorSetStreamAutoProcessingMode: unsafe extern "system" fn(
28271 *mut core::ffi::c_void,
28272 *mut core::ffi::c_void,
28273 u32,
28274 crate::Foundation::BOOL,
28275 ),
28276 pub VideoProcessorSetStreamFilter: unsafe extern "system" fn(
28277 *mut core::ffi::c_void,
28278 *mut core::ffi::c_void,
28279 u32,
28280 D3D11_VIDEO_PROCESSOR_FILTER,
28281 crate::Foundation::BOOL,
28282 i32,
28283 ),
28284 pub VideoProcessorSetStreamExtension: unsafe extern "system" fn(
28285 *mut core::ffi::c_void,
28286 *mut core::ffi::c_void,
28287 u32,
28288 *const windows_core::GUID,
28289 u32,
28290 *const core::ffi::c_void,
28291 ) -> i32,
28292 pub VideoProcessorGetStreamFrameFormat: unsafe extern "system" fn(
28293 *mut core::ffi::c_void,
28294 *mut core::ffi::c_void,
28295 u32,
28296 *mut D3D11_VIDEO_FRAME_FORMAT,
28297 ),
28298 pub VideoProcessorGetStreamColorSpace: unsafe extern "system" fn(
28299 *mut core::ffi::c_void,
28300 *mut core::ffi::c_void,
28301 u32,
28302 *mut D3D11_VIDEO_PROCESSOR_COLOR_SPACE,
28303 ),
28304 #[cfg(feature = "Win32_Graphics_Dxgi_Common")]
28305 pub VideoProcessorGetStreamOutputRate: unsafe extern "system" fn(
28306 *mut core::ffi::c_void,
28307 *mut core::ffi::c_void,
28308 u32,
28309 *mut D3D11_VIDEO_PROCESSOR_OUTPUT_RATE,
28310 *mut crate::Foundation::BOOL,
28311 *mut crate::Dxgi::Common::DXGI_RATIONAL,
28312 ),
28313 #[cfg(not(feature = "Win32_Graphics_Dxgi_Common"))]
28314 VideoProcessorGetStreamOutputRate: usize,
28315 pub VideoProcessorGetStreamSourceRect: unsafe extern "system" fn(
28316 *mut core::ffi::c_void,
28317 *mut core::ffi::c_void,
28318 u32,
28319 *mut crate::Foundation::BOOL,
28320 *mut crate::Foundation::RECT,
28321 ),
28322 pub VideoProcessorGetStreamDestRect: unsafe extern "system" fn(
28323 *mut core::ffi::c_void,
28324 *mut core::ffi::c_void,
28325 u32,
28326 *mut crate::Foundation::BOOL,
28327 *mut crate::Foundation::RECT,
28328 ),
28329 pub VideoProcessorGetStreamAlpha: unsafe extern "system" fn(
28330 *mut core::ffi::c_void,
28331 *mut core::ffi::c_void,
28332 u32,
28333 *mut crate::Foundation::BOOL,
28334 *mut f32,
28335 ),
28336 pub VideoProcessorGetStreamPalette: unsafe extern "system" fn(
28337 *mut core::ffi::c_void,
28338 *mut core::ffi::c_void,
28339 u32,
28340 u32,
28341 *mut u32,
28342 ),
28343 #[cfg(feature = "Win32_Graphics_Dxgi_Common")]
28344 pub VideoProcessorGetStreamPixelAspectRatio: unsafe extern "system" fn(
28345 *mut core::ffi::c_void,
28346 *mut core::ffi::c_void,
28347 u32,
28348 *mut crate::Foundation::BOOL,
28349 *mut crate::Dxgi::Common::DXGI_RATIONAL,
28350 *mut crate::Dxgi::Common::DXGI_RATIONAL,
28351 ),
28352 #[cfg(not(feature = "Win32_Graphics_Dxgi_Common"))]
28353 VideoProcessorGetStreamPixelAspectRatio: usize,
28354 pub VideoProcessorGetStreamLumaKey: unsafe extern "system" fn(
28355 *mut core::ffi::c_void,
28356 *mut core::ffi::c_void,
28357 u32,
28358 *mut crate::Foundation::BOOL,
28359 *mut f32,
28360 *mut f32,
28361 ),
28362 pub VideoProcessorGetStreamStereoFormat: unsafe extern "system" fn(
28363 *mut core::ffi::c_void,
28364 *mut core::ffi::c_void,
28365 u32,
28366 *mut crate::Foundation::BOOL,
28367 *mut D3D11_VIDEO_PROCESSOR_STEREO_FORMAT,
28368 *mut crate::Foundation::BOOL,
28369 *mut crate::Foundation::BOOL,
28370 *mut D3D11_VIDEO_PROCESSOR_STEREO_FLIP_MODE,
28371 *mut i32,
28372 ),
28373 pub VideoProcessorGetStreamAutoProcessingMode: unsafe extern "system" fn(
28374 *mut core::ffi::c_void,
28375 *mut core::ffi::c_void,
28376 u32,
28377 *mut crate::Foundation::BOOL,
28378 ),
28379 pub VideoProcessorGetStreamFilter: unsafe extern "system" fn(
28380 *mut core::ffi::c_void,
28381 *mut core::ffi::c_void,
28382 u32,
28383 D3D11_VIDEO_PROCESSOR_FILTER,
28384 *mut crate::Foundation::BOOL,
28385 *mut i32,
28386 ),
28387 pub VideoProcessorGetStreamExtension: unsafe extern "system" fn(
28388 *mut core::ffi::c_void,
28389 *mut core::ffi::c_void,
28390 u32,
28391 *const windows_core::GUID,
28392 u32,
28393 *mut core::ffi::c_void,
28394 ) -> i32,
28395 pub VideoProcessorBlt: unsafe extern "system" fn(
28396 *mut core::ffi::c_void,
28397 *mut core::ffi::c_void,
28398 *mut core::ffi::c_void,
28399 u32,
28400 u32,
28401 *const D3D11_VIDEO_PROCESSOR_STREAM,
28402 ) -> windows_core::HRESULT,
28403 pub NegotiateCryptoSessionKeyExchange: unsafe extern "system" fn(
28404 *mut core::ffi::c_void,
28405 *mut core::ffi::c_void,
28406 u32,
28407 *mut core::ffi::c_void,
28408 ) -> windows_core::HRESULT,
28409 pub EncryptionBlt: unsafe extern "system" fn(
28410 *mut core::ffi::c_void,
28411 *mut core::ffi::c_void,
28412 *mut core::ffi::c_void,
28413 *mut core::ffi::c_void,
28414 u32,
28415 *mut core::ffi::c_void,
28416 ),
28417 pub DecryptionBlt: unsafe extern "system" fn(
28418 *mut core::ffi::c_void,
28419 *mut core::ffi::c_void,
28420 *mut core::ffi::c_void,
28421 *mut core::ffi::c_void,
28422 *const D3D11_ENCRYPTED_BLOCK_INFO,
28423 u32,
28424 *const core::ffi::c_void,
28425 u32,
28426 *mut core::ffi::c_void,
28427 ),
28428 pub StartSessionKeyRefresh: unsafe extern "system" fn(
28429 *mut core::ffi::c_void,
28430 *mut core::ffi::c_void,
28431 u32,
28432 *mut core::ffi::c_void,
28433 ),
28434 pub FinishSessionKeyRefresh:
28435 unsafe extern "system" fn(*mut core::ffi::c_void, *mut core::ffi::c_void),
28436 pub GetEncryptionBltKey: unsafe extern "system" fn(
28437 *mut core::ffi::c_void,
28438 *mut core::ffi::c_void,
28439 u32,
28440 *mut core::ffi::c_void,
28441 ) -> windows_core::HRESULT,
28442 pub NegotiateAuthenticatedChannelKeyExchange:
28443 unsafe extern "system" fn(
28444 *mut core::ffi::c_void,
28445 *mut core::ffi::c_void,
28446 u32,
28447 *mut core::ffi::c_void,
28448 ) -> windows_core::HRESULT,
28449 pub QueryAuthenticatedChannel: unsafe extern "system" fn(
28450 *mut core::ffi::c_void,
28451 *mut core::ffi::c_void,
28452 u32,
28453 *const core::ffi::c_void,
28454 u32,
28455 *mut core::ffi::c_void,
28456 ) -> windows_core::HRESULT,
28457 pub ConfigureAuthenticatedChannel: unsafe extern "system" fn(
28458 *mut core::ffi::c_void,
28459 *mut core::ffi::c_void,
28460 u32,
28461 *const core::ffi::c_void,
28462 *mut D3D11_AUTHENTICATED_CONFIGURE_OUTPUT,
28463 ) -> windows_core::HRESULT,
28464 pub VideoProcessorSetStreamRotation: unsafe extern "system" fn(
28465 *mut core::ffi::c_void,
28466 *mut core::ffi::c_void,
28467 u32,
28468 crate::Foundation::BOOL,
28469 D3D11_VIDEO_PROCESSOR_ROTATION,
28470 ),
28471 pub VideoProcessorGetStreamRotation: unsafe extern "system" fn(
28472 *mut core::ffi::c_void,
28473 *mut core::ffi::c_void,
28474 u32,
28475 *mut crate::Foundation::BOOL,
28476 *mut D3D11_VIDEO_PROCESSOR_ROTATION,
28477 ),
28478}
28479#[cfg(feature = "Win32_Graphics_Dxgi_Common")]
28480pub trait ID3D11VideoContext_Impl: ID3D11DeviceChild_Impl {
28481 fn GetDecoderBuffer(
28482 &self,
28483 pdecoder: windows_core::Ref<'_, ID3D11VideoDecoder>,
28484 r#type: D3D11_VIDEO_DECODER_BUFFER_TYPE,
28485 pbuffersize: *mut u32,
28486 ppbuffer: *mut *mut core::ffi::c_void,
28487 ) -> windows_core::Result<()>;
28488 fn ReleaseDecoderBuffer(
28489 &self,
28490 pdecoder: windows_core::Ref<'_, ID3D11VideoDecoder>,
28491 r#type: D3D11_VIDEO_DECODER_BUFFER_TYPE,
28492 ) -> windows_core::Result<()>;
28493 fn DecoderBeginFrame(
28494 &self,
28495 pdecoder: windows_core::Ref<'_, ID3D11VideoDecoder>,
28496 pview: windows_core::Ref<'_, ID3D11VideoDecoderOutputView>,
28497 contentkeysize: u32,
28498 pcontentkey: *const core::ffi::c_void,
28499 ) -> windows_core::Result<()>;
28500 fn DecoderEndFrame(
28501 &self,
28502 pdecoder: windows_core::Ref<'_, ID3D11VideoDecoder>,
28503 ) -> windows_core::Result<()>;
28504 fn SubmitDecoderBuffers(
28505 &self,
28506 pdecoder: windows_core::Ref<'_, ID3D11VideoDecoder>,
28507 numbuffers: u32,
28508 pbufferdesc: *const D3D11_VIDEO_DECODER_BUFFER_DESC,
28509 ) -> windows_core::Result<()>;
28510 fn DecoderExtension(
28511 &self,
28512 pdecoder: windows_core::Ref<'_, ID3D11VideoDecoder>,
28513 pextensiondata: *const D3D11_VIDEO_DECODER_EXTENSION,
28514 ) -> i32;
28515 fn VideoProcessorSetOutputTargetRect(
28516 &self,
28517 pvideoprocessor: windows_core::Ref<'_, ID3D11VideoProcessor>,
28518 enable: crate::Foundation::BOOL,
28519 prect: *const crate::Foundation::RECT,
28520 );
28521 fn VideoProcessorSetOutputBackgroundColor(
28522 &self,
28523 pvideoprocessor: windows_core::Ref<'_, ID3D11VideoProcessor>,
28524 ycbcr: crate::Foundation::BOOL,
28525 pcolor: *const D3D11_VIDEO_COLOR,
28526 );
28527 fn VideoProcessorSetOutputColorSpace(
28528 &self,
28529 pvideoprocessor: windows_core::Ref<'_, ID3D11VideoProcessor>,
28530 pcolorspace: *const D3D11_VIDEO_PROCESSOR_COLOR_SPACE,
28531 );
28532 fn VideoProcessorSetOutputAlphaFillMode(
28533 &self,
28534 pvideoprocessor: windows_core::Ref<'_, ID3D11VideoProcessor>,
28535 alphafillmode: D3D11_VIDEO_PROCESSOR_ALPHA_FILL_MODE,
28536 streamindex: u32,
28537 );
28538 fn VideoProcessorSetOutputConstriction(
28539 &self,
28540 pvideoprocessor: windows_core::Ref<'_, ID3D11VideoProcessor>,
28541 enable: crate::Foundation::BOOL,
28542 size: &crate::Foundation::SIZE,
28543 );
28544 fn VideoProcessorSetOutputStereoMode(
28545 &self,
28546 pvideoprocessor: windows_core::Ref<'_, ID3D11VideoProcessor>,
28547 enable: crate::Foundation::BOOL,
28548 );
28549 fn VideoProcessorSetOutputExtension(
28550 &self,
28551 pvideoprocessor: windows_core::Ref<'_, ID3D11VideoProcessor>,
28552 pextensionguid: *const windows_core::GUID,
28553 datasize: u32,
28554 pdata: *const core::ffi::c_void,
28555 ) -> i32;
28556 fn VideoProcessorGetOutputTargetRect(
28557 &self,
28558 pvideoprocessor: windows_core::Ref<'_, ID3D11VideoProcessor>,
28559 enabled: *mut crate::Foundation::BOOL,
28560 prect: *mut crate::Foundation::RECT,
28561 );
28562 fn VideoProcessorGetOutputBackgroundColor(
28563 &self,
28564 pvideoprocessor: windows_core::Ref<'_, ID3D11VideoProcessor>,
28565 pycbcr: *mut crate::Foundation::BOOL,
28566 pcolor: *mut D3D11_VIDEO_COLOR,
28567 );
28568 fn VideoProcessorGetOutputColorSpace(
28569 &self,
28570 pvideoprocessor: windows_core::Ref<'_, ID3D11VideoProcessor>,
28571 pcolorspace: *mut D3D11_VIDEO_PROCESSOR_COLOR_SPACE,
28572 );
28573 fn VideoProcessorGetOutputAlphaFillMode(
28574 &self,
28575 pvideoprocessor: windows_core::Ref<'_, ID3D11VideoProcessor>,
28576 palphafillmode: *mut D3D11_VIDEO_PROCESSOR_ALPHA_FILL_MODE,
28577 pstreamindex: *mut u32,
28578 );
28579 fn VideoProcessorGetOutputConstriction(
28580 &self,
28581 pvideoprocessor: windows_core::Ref<'_, ID3D11VideoProcessor>,
28582 penabled: *mut crate::Foundation::BOOL,
28583 psize: *mut crate::Foundation::SIZE,
28584 );
28585 fn VideoProcessorGetOutputStereoMode(
28586 &self,
28587 pvideoprocessor: windows_core::Ref<'_, ID3D11VideoProcessor>,
28588 penabled: *mut crate::Foundation::BOOL,
28589 );
28590 fn VideoProcessorGetOutputExtension(
28591 &self,
28592 pvideoprocessor: windows_core::Ref<'_, ID3D11VideoProcessor>,
28593 pextensionguid: *const windows_core::GUID,
28594 datasize: u32,
28595 pdata: *mut core::ffi::c_void,
28596 ) -> i32;
28597 fn VideoProcessorSetStreamFrameFormat(
28598 &self,
28599 pvideoprocessor: windows_core::Ref<'_, ID3D11VideoProcessor>,
28600 streamindex: u32,
28601 frameformat: D3D11_VIDEO_FRAME_FORMAT,
28602 );
28603 fn VideoProcessorSetStreamColorSpace(
28604 &self,
28605 pvideoprocessor: windows_core::Ref<'_, ID3D11VideoProcessor>,
28606 streamindex: u32,
28607 pcolorspace: *const D3D11_VIDEO_PROCESSOR_COLOR_SPACE,
28608 );
28609 fn VideoProcessorSetStreamOutputRate(
28610 &self,
28611 pvideoprocessor: windows_core::Ref<'_, ID3D11VideoProcessor>,
28612 streamindex: u32,
28613 outputrate: D3D11_VIDEO_PROCESSOR_OUTPUT_RATE,
28614 repeatframe: crate::Foundation::BOOL,
28615 pcustomrate: *const crate::Dxgi::Common::DXGI_RATIONAL,
28616 );
28617 fn VideoProcessorSetStreamSourceRect(
28618 &self,
28619 pvideoprocessor: windows_core::Ref<'_, ID3D11VideoProcessor>,
28620 streamindex: u32,
28621 enable: crate::Foundation::BOOL,
28622 prect: *const crate::Foundation::RECT,
28623 );
28624 fn VideoProcessorSetStreamDestRect(
28625 &self,
28626 pvideoprocessor: windows_core::Ref<'_, ID3D11VideoProcessor>,
28627 streamindex: u32,
28628 enable: crate::Foundation::BOOL,
28629 prect: *const crate::Foundation::RECT,
28630 );
28631 fn VideoProcessorSetStreamAlpha(
28632 &self,
28633 pvideoprocessor: windows_core::Ref<'_, ID3D11VideoProcessor>,
28634 streamindex: u32,
28635 enable: crate::Foundation::BOOL,
28636 alpha: f32,
28637 );
28638 fn VideoProcessorSetStreamPalette(
28639 &self,
28640 pvideoprocessor: windows_core::Ref<'_, ID3D11VideoProcessor>,
28641 streamindex: u32,
28642 count: u32,
28643 pentries: *const u32,
28644 );
28645 fn VideoProcessorSetStreamPixelAspectRatio(
28646 &self,
28647 pvideoprocessor: windows_core::Ref<'_, ID3D11VideoProcessor>,
28648 streamindex: u32,
28649 enable: crate::Foundation::BOOL,
28650 psourceaspectratio: *const crate::Dxgi::Common::DXGI_RATIONAL,
28651 pdestinationaspectratio: *const crate::Dxgi::Common::DXGI_RATIONAL,
28652 );
28653 fn VideoProcessorSetStreamLumaKey(
28654 &self,
28655 pvideoprocessor: windows_core::Ref<'_, ID3D11VideoProcessor>,
28656 streamindex: u32,
28657 enable: crate::Foundation::BOOL,
28658 lower: f32,
28659 upper: f32,
28660 );
28661 fn VideoProcessorSetStreamStereoFormat(
28662 &self,
28663 pvideoprocessor: windows_core::Ref<'_, ID3D11VideoProcessor>,
28664 streamindex: u32,
28665 enable: crate::Foundation::BOOL,
28666 format: D3D11_VIDEO_PROCESSOR_STEREO_FORMAT,
28667 leftviewframe0: crate::Foundation::BOOL,
28668 baseviewframe0: crate::Foundation::BOOL,
28669 flipmode: D3D11_VIDEO_PROCESSOR_STEREO_FLIP_MODE,
28670 monooffset: i32,
28671 );
28672 fn VideoProcessorSetStreamAutoProcessingMode(
28673 &self,
28674 pvideoprocessor: windows_core::Ref<'_, ID3D11VideoProcessor>,
28675 streamindex: u32,
28676 enable: crate::Foundation::BOOL,
28677 );
28678 fn VideoProcessorSetStreamFilter(
28679 &self,
28680 pvideoprocessor: windows_core::Ref<'_, ID3D11VideoProcessor>,
28681 streamindex: u32,
28682 filter: D3D11_VIDEO_PROCESSOR_FILTER,
28683 enable: crate::Foundation::BOOL,
28684 level: i32,
28685 );
28686 fn VideoProcessorSetStreamExtension(
28687 &self,
28688 pvideoprocessor: windows_core::Ref<'_, ID3D11VideoProcessor>,
28689 streamindex: u32,
28690 pextensionguid: *const windows_core::GUID,
28691 datasize: u32,
28692 pdata: *const core::ffi::c_void,
28693 ) -> i32;
28694 fn VideoProcessorGetStreamFrameFormat(
28695 &self,
28696 pvideoprocessor: windows_core::Ref<'_, ID3D11VideoProcessor>,
28697 streamindex: u32,
28698 pframeformat: *mut D3D11_VIDEO_FRAME_FORMAT,
28699 );
28700 fn VideoProcessorGetStreamColorSpace(
28701 &self,
28702 pvideoprocessor: windows_core::Ref<'_, ID3D11VideoProcessor>,
28703 streamindex: u32,
28704 pcolorspace: *mut D3D11_VIDEO_PROCESSOR_COLOR_SPACE,
28705 );
28706 fn VideoProcessorGetStreamOutputRate(
28707 &self,
28708 pvideoprocessor: windows_core::Ref<'_, ID3D11VideoProcessor>,
28709 streamindex: u32,
28710 poutputrate: *mut D3D11_VIDEO_PROCESSOR_OUTPUT_RATE,
28711 prepeatframe: *mut crate::Foundation::BOOL,
28712 pcustomrate: *mut crate::Dxgi::Common::DXGI_RATIONAL,
28713 );
28714 fn VideoProcessorGetStreamSourceRect(
28715 &self,
28716 pvideoprocessor: windows_core::Ref<'_, ID3D11VideoProcessor>,
28717 streamindex: u32,
28718 penabled: *mut crate::Foundation::BOOL,
28719 prect: *mut crate::Foundation::RECT,
28720 );
28721 fn VideoProcessorGetStreamDestRect(
28722 &self,
28723 pvideoprocessor: windows_core::Ref<'_, ID3D11VideoProcessor>,
28724 streamindex: u32,
28725 penabled: *mut crate::Foundation::BOOL,
28726 prect: *mut crate::Foundation::RECT,
28727 );
28728 fn VideoProcessorGetStreamAlpha(
28729 &self,
28730 pvideoprocessor: windows_core::Ref<'_, ID3D11VideoProcessor>,
28731 streamindex: u32,
28732 penabled: *mut crate::Foundation::BOOL,
28733 palpha: *mut f32,
28734 );
28735 fn VideoProcessorGetStreamPalette(
28736 &self,
28737 pvideoprocessor: windows_core::Ref<'_, ID3D11VideoProcessor>,
28738 streamindex: u32,
28739 count: u32,
28740 pentries: *mut u32,
28741 );
28742 fn VideoProcessorGetStreamPixelAspectRatio(
28743 &self,
28744 pvideoprocessor: windows_core::Ref<'_, ID3D11VideoProcessor>,
28745 streamindex: u32,
28746 penabled: *mut crate::Foundation::BOOL,
28747 psourceaspectratio: *mut crate::Dxgi::Common::DXGI_RATIONAL,
28748 pdestinationaspectratio: *mut crate::Dxgi::Common::DXGI_RATIONAL,
28749 );
28750 fn VideoProcessorGetStreamLumaKey(
28751 &self,
28752 pvideoprocessor: windows_core::Ref<'_, ID3D11VideoProcessor>,
28753 streamindex: u32,
28754 penabled: *mut crate::Foundation::BOOL,
28755 plower: *mut f32,
28756 pupper: *mut f32,
28757 );
28758 fn VideoProcessorGetStreamStereoFormat(
28759 &self,
28760 pvideoprocessor: windows_core::Ref<'_, ID3D11VideoProcessor>,
28761 streamindex: u32,
28762 penable: *mut crate::Foundation::BOOL,
28763 pformat: *mut D3D11_VIDEO_PROCESSOR_STEREO_FORMAT,
28764 pleftviewframe0: *mut crate::Foundation::BOOL,
28765 pbaseviewframe0: *mut crate::Foundation::BOOL,
28766 pflipmode: *mut D3D11_VIDEO_PROCESSOR_STEREO_FLIP_MODE,
28767 monooffset: *mut i32,
28768 );
28769 fn VideoProcessorGetStreamAutoProcessingMode(
28770 &self,
28771 pvideoprocessor: windows_core::Ref<'_, ID3D11VideoProcessor>,
28772 streamindex: u32,
28773 penabled: *mut crate::Foundation::BOOL,
28774 );
28775 fn VideoProcessorGetStreamFilter(
28776 &self,
28777 pvideoprocessor: windows_core::Ref<'_, ID3D11VideoProcessor>,
28778 streamindex: u32,
28779 filter: D3D11_VIDEO_PROCESSOR_FILTER,
28780 penabled: *mut crate::Foundation::BOOL,
28781 plevel: *mut i32,
28782 );
28783 fn VideoProcessorGetStreamExtension(
28784 &self,
28785 pvideoprocessor: windows_core::Ref<'_, ID3D11VideoProcessor>,
28786 streamindex: u32,
28787 pextensionguid: *const windows_core::GUID,
28788 datasize: u32,
28789 pdata: *mut core::ffi::c_void,
28790 ) -> i32;
28791 fn VideoProcessorBlt(
28792 &self,
28793 pvideoprocessor: windows_core::Ref<'_, ID3D11VideoProcessor>,
28794 pview: windows_core::Ref<'_, ID3D11VideoProcessorOutputView>,
28795 outputframe: u32,
28796 streamcount: u32,
28797 pstreams: *const D3D11_VIDEO_PROCESSOR_STREAM,
28798 ) -> windows_core::Result<()>;
28799 fn NegotiateCryptoSessionKeyExchange(
28800 &self,
28801 pcryptosession: windows_core::Ref<'_, ID3D11CryptoSession>,
28802 datasize: u32,
28803 pdata: *mut core::ffi::c_void,
28804 ) -> windows_core::Result<()>;
28805 fn EncryptionBlt(
28806 &self,
28807 pcryptosession: windows_core::Ref<'_, ID3D11CryptoSession>,
28808 psrcsurface: windows_core::Ref<'_, ID3D11Texture2D>,
28809 pdstsurface: windows_core::Ref<'_, ID3D11Texture2D>,
28810 ivsize: u32,
28811 piv: *mut core::ffi::c_void,
28812 );
28813 fn DecryptionBlt(
28814 &self,
28815 pcryptosession: windows_core::Ref<'_, ID3D11CryptoSession>,
28816 psrcsurface: windows_core::Ref<'_, ID3D11Texture2D>,
28817 pdstsurface: windows_core::Ref<'_, ID3D11Texture2D>,
28818 pencryptedblockinfo: *const D3D11_ENCRYPTED_BLOCK_INFO,
28819 contentkeysize: u32,
28820 pcontentkey: *const core::ffi::c_void,
28821 ivsize: u32,
28822 piv: *mut core::ffi::c_void,
28823 );
28824 fn StartSessionKeyRefresh(
28825 &self,
28826 pcryptosession: windows_core::Ref<'_, ID3D11CryptoSession>,
28827 randomnumbersize: u32,
28828 prandomnumber: *mut core::ffi::c_void,
28829 );
28830 fn FinishSessionKeyRefresh(&self, pcryptosession: windows_core::Ref<'_, ID3D11CryptoSession>);
28831 fn GetEncryptionBltKey(
28832 &self,
28833 pcryptosession: windows_core::Ref<'_, ID3D11CryptoSession>,
28834 keysize: u32,
28835 preadbackkey: *mut core::ffi::c_void,
28836 ) -> windows_core::Result<()>;
28837 fn NegotiateAuthenticatedChannelKeyExchange(
28838 &self,
28839 pchannel: windows_core::Ref<'_, ID3D11AuthenticatedChannel>,
28840 datasize: u32,
28841 pdata: *mut core::ffi::c_void,
28842 ) -> windows_core::Result<()>;
28843 fn QueryAuthenticatedChannel(
28844 &self,
28845 pchannel: windows_core::Ref<'_, ID3D11AuthenticatedChannel>,
28846 inputsize: u32,
28847 pinput: *const core::ffi::c_void,
28848 outputsize: u32,
28849 poutput: *mut core::ffi::c_void,
28850 ) -> windows_core::Result<()>;
28851 fn ConfigureAuthenticatedChannel(
28852 &self,
28853 pchannel: windows_core::Ref<'_, ID3D11AuthenticatedChannel>,
28854 inputsize: u32,
28855 pinput: *const core::ffi::c_void,
28856 poutput: *mut D3D11_AUTHENTICATED_CONFIGURE_OUTPUT,
28857 ) -> windows_core::Result<()>;
28858 fn VideoProcessorSetStreamRotation(
28859 &self,
28860 pvideoprocessor: windows_core::Ref<'_, ID3D11VideoProcessor>,
28861 streamindex: u32,
28862 enable: crate::Foundation::BOOL,
28863 rotation: D3D11_VIDEO_PROCESSOR_ROTATION,
28864 );
28865 fn VideoProcessorGetStreamRotation(
28866 &self,
28867 pvideoprocessor: windows_core::Ref<'_, ID3D11VideoProcessor>,
28868 streamindex: u32,
28869 penable: *mut crate::Foundation::BOOL,
28870 protation: *mut D3D11_VIDEO_PROCESSOR_ROTATION,
28871 );
28872}
28873#[cfg(feature = "Win32_Graphics_Dxgi_Common")]
28874impl ID3D11VideoContext_Vtbl {
28875 pub const fn new<Identity: ID3D11VideoContext_Impl, const OFFSET: isize>() -> Self {
28876 unsafe extern "system" fn GetDecoderBuffer<
28877 Identity: ID3D11VideoContext_Impl,
28878 const OFFSET: isize,
28879 >(
28880 this: *mut core::ffi::c_void,
28881 pdecoder: *mut core::ffi::c_void,
28882 r#type: D3D11_VIDEO_DECODER_BUFFER_TYPE,
28883 pbuffersize: *mut u32,
28884 ppbuffer: *mut *mut core::ffi::c_void,
28885 ) -> windows_core::HRESULT {
28886 unsafe {
28887 let this: &Identity =
28888 &*((this as *const *const ()).offset(OFFSET) as *const Identity);
28889 ID3D11VideoContext_Impl::GetDecoderBuffer(
28890 this,
28891 core::mem::transmute_copy(&pdecoder),
28892 core::mem::transmute_copy(&r#type),
28893 core::mem::transmute_copy(&pbuffersize),
28894 core::mem::transmute_copy(&ppbuffer),
28895 )
28896 .into()
28897 }
28898 }
28899 unsafe extern "system" fn ReleaseDecoderBuffer<
28900 Identity: ID3D11VideoContext_Impl,
28901 const OFFSET: isize,
28902 >(
28903 this: *mut core::ffi::c_void,
28904 pdecoder: *mut core::ffi::c_void,
28905 r#type: D3D11_VIDEO_DECODER_BUFFER_TYPE,
28906 ) -> windows_core::HRESULT {
28907 unsafe {
28908 let this: &Identity =
28909 &*((this as *const *const ()).offset(OFFSET) as *const Identity);
28910 ID3D11VideoContext_Impl::ReleaseDecoderBuffer(
28911 this,
28912 core::mem::transmute_copy(&pdecoder),
28913 core::mem::transmute_copy(&r#type),
28914 )
28915 .into()
28916 }
28917 }
28918 unsafe extern "system" fn DecoderBeginFrame<
28919 Identity: ID3D11VideoContext_Impl,
28920 const OFFSET: isize,
28921 >(
28922 this: *mut core::ffi::c_void,
28923 pdecoder: *mut core::ffi::c_void,
28924 pview: *mut core::ffi::c_void,
28925 contentkeysize: u32,
28926 pcontentkey: *const core::ffi::c_void,
28927 ) -> windows_core::HRESULT {
28928 unsafe {
28929 let this: &Identity =
28930 &*((this as *const *const ()).offset(OFFSET) as *const Identity);
28931 ID3D11VideoContext_Impl::DecoderBeginFrame(
28932 this,
28933 core::mem::transmute_copy(&pdecoder),
28934 core::mem::transmute_copy(&pview),
28935 core::mem::transmute_copy(&contentkeysize),
28936 core::mem::transmute_copy(&pcontentkey),
28937 )
28938 .into()
28939 }
28940 }
28941 unsafe extern "system" fn DecoderEndFrame<
28942 Identity: ID3D11VideoContext_Impl,
28943 const OFFSET: isize,
28944 >(
28945 this: *mut core::ffi::c_void,
28946 pdecoder: *mut core::ffi::c_void,
28947 ) -> windows_core::HRESULT {
28948 unsafe {
28949 let this: &Identity =
28950 &*((this as *const *const ()).offset(OFFSET) as *const Identity);
28951 ID3D11VideoContext_Impl::DecoderEndFrame(this, core::mem::transmute_copy(&pdecoder))
28952 .into()
28953 }
28954 }
28955 unsafe extern "system" fn SubmitDecoderBuffers<
28956 Identity: ID3D11VideoContext_Impl,
28957 const OFFSET: isize,
28958 >(
28959 this: *mut core::ffi::c_void,
28960 pdecoder: *mut core::ffi::c_void,
28961 numbuffers: u32,
28962 pbufferdesc: *const D3D11_VIDEO_DECODER_BUFFER_DESC,
28963 ) -> windows_core::HRESULT {
28964 unsafe {
28965 let this: &Identity =
28966 &*((this as *const *const ()).offset(OFFSET) as *const Identity);
28967 ID3D11VideoContext_Impl::SubmitDecoderBuffers(
28968 this,
28969 core::mem::transmute_copy(&pdecoder),
28970 core::mem::transmute_copy(&numbuffers),
28971 core::mem::transmute_copy(&pbufferdesc),
28972 )
28973 .into()
28974 }
28975 }
28976 unsafe extern "system" fn DecoderExtension<
28977 Identity: ID3D11VideoContext_Impl,
28978 const OFFSET: isize,
28979 >(
28980 this: *mut core::ffi::c_void,
28981 pdecoder: *mut core::ffi::c_void,
28982 pextensiondata: *const D3D11_VIDEO_DECODER_EXTENSION,
28983 ) -> i32 {
28984 unsafe {
28985 let this: &Identity =
28986 &*((this as *const *const ()).offset(OFFSET) as *const Identity);
28987 ID3D11VideoContext_Impl::DecoderExtension(
28988 this,
28989 core::mem::transmute_copy(&pdecoder),
28990 core::mem::transmute_copy(&pextensiondata),
28991 )
28992 }
28993 }
28994 unsafe extern "system" fn VideoProcessorSetOutputTargetRect<
28995 Identity: ID3D11VideoContext_Impl,
28996 const OFFSET: isize,
28997 >(
28998 this: *mut core::ffi::c_void,
28999 pvideoprocessor: *mut core::ffi::c_void,
29000 enable: crate::Foundation::BOOL,
29001 prect: *const crate::Foundation::RECT,
29002 ) {
29003 unsafe {
29004 let this: &Identity =
29005 &*((this as *const *const ()).offset(OFFSET) as *const Identity);
29006 ID3D11VideoContext_Impl::VideoProcessorSetOutputTargetRect(
29007 this,
29008 core::mem::transmute_copy(&pvideoprocessor),
29009 core::mem::transmute_copy(&enable),
29010 core::mem::transmute_copy(&prect),
29011 )
29012 }
29013 }
29014 unsafe extern "system" fn VideoProcessorSetOutputBackgroundColor<
29015 Identity: ID3D11VideoContext_Impl,
29016 const OFFSET: isize,
29017 >(
29018 this: *mut core::ffi::c_void,
29019 pvideoprocessor: *mut core::ffi::c_void,
29020 ycbcr: crate::Foundation::BOOL,
29021 pcolor: *const D3D11_VIDEO_COLOR,
29022 ) {
29023 unsafe {
29024 let this: &Identity =
29025 &*((this as *const *const ()).offset(OFFSET) as *const Identity);
29026 ID3D11VideoContext_Impl::VideoProcessorSetOutputBackgroundColor(
29027 this,
29028 core::mem::transmute_copy(&pvideoprocessor),
29029 core::mem::transmute_copy(&ycbcr),
29030 core::mem::transmute_copy(&pcolor),
29031 )
29032 }
29033 }
29034 unsafe extern "system" fn VideoProcessorSetOutputColorSpace<
29035 Identity: ID3D11VideoContext_Impl,
29036 const OFFSET: isize,
29037 >(
29038 this: *mut core::ffi::c_void,
29039 pvideoprocessor: *mut core::ffi::c_void,
29040 pcolorspace: *const D3D11_VIDEO_PROCESSOR_COLOR_SPACE,
29041 ) {
29042 unsafe {
29043 let this: &Identity =
29044 &*((this as *const *const ()).offset(OFFSET) as *const Identity);
29045 ID3D11VideoContext_Impl::VideoProcessorSetOutputColorSpace(
29046 this,
29047 core::mem::transmute_copy(&pvideoprocessor),
29048 core::mem::transmute_copy(&pcolorspace),
29049 )
29050 }
29051 }
29052 unsafe extern "system" fn VideoProcessorSetOutputAlphaFillMode<
29053 Identity: ID3D11VideoContext_Impl,
29054 const OFFSET: isize,
29055 >(
29056 this: *mut core::ffi::c_void,
29057 pvideoprocessor: *mut core::ffi::c_void,
29058 alphafillmode: D3D11_VIDEO_PROCESSOR_ALPHA_FILL_MODE,
29059 streamindex: u32,
29060 ) {
29061 unsafe {
29062 let this: &Identity =
29063 &*((this as *const *const ()).offset(OFFSET) as *const Identity);
29064 ID3D11VideoContext_Impl::VideoProcessorSetOutputAlphaFillMode(
29065 this,
29066 core::mem::transmute_copy(&pvideoprocessor),
29067 core::mem::transmute_copy(&alphafillmode),
29068 core::mem::transmute_copy(&streamindex),
29069 )
29070 }
29071 }
29072 unsafe extern "system" fn VideoProcessorSetOutputConstriction<
29073 Identity: ID3D11VideoContext_Impl,
29074 const OFFSET: isize,
29075 >(
29076 this: *mut core::ffi::c_void,
29077 pvideoprocessor: *mut core::ffi::c_void,
29078 enable: crate::Foundation::BOOL,
29079 size: crate::Foundation::SIZE,
29080 ) {
29081 unsafe {
29082 let this: &Identity =
29083 &*((this as *const *const ()).offset(OFFSET) as *const Identity);
29084 ID3D11VideoContext_Impl::VideoProcessorSetOutputConstriction(
29085 this,
29086 core::mem::transmute_copy(&pvideoprocessor),
29087 core::mem::transmute_copy(&enable),
29088 core::mem::transmute(&size),
29089 )
29090 }
29091 }
29092 unsafe extern "system" fn VideoProcessorSetOutputStereoMode<
29093 Identity: ID3D11VideoContext_Impl,
29094 const OFFSET: isize,
29095 >(
29096 this: *mut core::ffi::c_void,
29097 pvideoprocessor: *mut core::ffi::c_void,
29098 enable: crate::Foundation::BOOL,
29099 ) {
29100 unsafe {
29101 let this: &Identity =
29102 &*((this as *const *const ()).offset(OFFSET) as *const Identity);
29103 ID3D11VideoContext_Impl::VideoProcessorSetOutputStereoMode(
29104 this,
29105 core::mem::transmute_copy(&pvideoprocessor),
29106 core::mem::transmute_copy(&enable),
29107 )
29108 }
29109 }
29110 unsafe extern "system" fn VideoProcessorSetOutputExtension<
29111 Identity: ID3D11VideoContext_Impl,
29112 const OFFSET: isize,
29113 >(
29114 this: *mut core::ffi::c_void,
29115 pvideoprocessor: *mut core::ffi::c_void,
29116 pextensionguid: *const windows_core::GUID,
29117 datasize: u32,
29118 pdata: *const core::ffi::c_void,
29119 ) -> i32 {
29120 unsafe {
29121 let this: &Identity =
29122 &*((this as *const *const ()).offset(OFFSET) as *const Identity);
29123 ID3D11VideoContext_Impl::VideoProcessorSetOutputExtension(
29124 this,
29125 core::mem::transmute_copy(&pvideoprocessor),
29126 core::mem::transmute_copy(&pextensionguid),
29127 core::mem::transmute_copy(&datasize),
29128 core::mem::transmute_copy(&pdata),
29129 )
29130 }
29131 }
29132 unsafe extern "system" fn VideoProcessorGetOutputTargetRect<
29133 Identity: ID3D11VideoContext_Impl,
29134 const OFFSET: isize,
29135 >(
29136 this: *mut core::ffi::c_void,
29137 pvideoprocessor: *mut core::ffi::c_void,
29138 enabled: *mut crate::Foundation::BOOL,
29139 prect: *mut crate::Foundation::RECT,
29140 ) {
29141 unsafe {
29142 let this: &Identity =
29143 &*((this as *const *const ()).offset(OFFSET) as *const Identity);
29144 ID3D11VideoContext_Impl::VideoProcessorGetOutputTargetRect(
29145 this,
29146 core::mem::transmute_copy(&pvideoprocessor),
29147 core::mem::transmute_copy(&enabled),
29148 core::mem::transmute_copy(&prect),
29149 )
29150 }
29151 }
29152 unsafe extern "system" fn VideoProcessorGetOutputBackgroundColor<
29153 Identity: ID3D11VideoContext_Impl,
29154 const OFFSET: isize,
29155 >(
29156 this: *mut core::ffi::c_void,
29157 pvideoprocessor: *mut core::ffi::c_void,
29158 pycbcr: *mut crate::Foundation::BOOL,
29159 pcolor: *mut D3D11_VIDEO_COLOR,
29160 ) {
29161 unsafe {
29162 let this: &Identity =
29163 &*((this as *const *const ()).offset(OFFSET) as *const Identity);
29164 ID3D11VideoContext_Impl::VideoProcessorGetOutputBackgroundColor(
29165 this,
29166 core::mem::transmute_copy(&pvideoprocessor),
29167 core::mem::transmute_copy(&pycbcr),
29168 core::mem::transmute_copy(&pcolor),
29169 )
29170 }
29171 }
29172 unsafe extern "system" fn VideoProcessorGetOutputColorSpace<
29173 Identity: ID3D11VideoContext_Impl,
29174 const OFFSET: isize,
29175 >(
29176 this: *mut core::ffi::c_void,
29177 pvideoprocessor: *mut core::ffi::c_void,
29178 pcolorspace: *mut D3D11_VIDEO_PROCESSOR_COLOR_SPACE,
29179 ) {
29180 unsafe {
29181 let this: &Identity =
29182 &*((this as *const *const ()).offset(OFFSET) as *const Identity);
29183 ID3D11VideoContext_Impl::VideoProcessorGetOutputColorSpace(
29184 this,
29185 core::mem::transmute_copy(&pvideoprocessor),
29186 core::mem::transmute_copy(&pcolorspace),
29187 )
29188 }
29189 }
29190 unsafe extern "system" fn VideoProcessorGetOutputAlphaFillMode<
29191 Identity: ID3D11VideoContext_Impl,
29192 const OFFSET: isize,
29193 >(
29194 this: *mut core::ffi::c_void,
29195 pvideoprocessor: *mut core::ffi::c_void,
29196 palphafillmode: *mut D3D11_VIDEO_PROCESSOR_ALPHA_FILL_MODE,
29197 pstreamindex: *mut u32,
29198 ) {
29199 unsafe {
29200 let this: &Identity =
29201 &*((this as *const *const ()).offset(OFFSET) as *const Identity);
29202 ID3D11VideoContext_Impl::VideoProcessorGetOutputAlphaFillMode(
29203 this,
29204 core::mem::transmute_copy(&pvideoprocessor),
29205 core::mem::transmute_copy(&palphafillmode),
29206 core::mem::transmute_copy(&pstreamindex),
29207 )
29208 }
29209 }
29210 unsafe extern "system" fn VideoProcessorGetOutputConstriction<
29211 Identity: ID3D11VideoContext_Impl,
29212 const OFFSET: isize,
29213 >(
29214 this: *mut core::ffi::c_void,
29215 pvideoprocessor: *mut core::ffi::c_void,
29216 penabled: *mut crate::Foundation::BOOL,
29217 psize: *mut crate::Foundation::SIZE,
29218 ) {
29219 unsafe {
29220 let this: &Identity =
29221 &*((this as *const *const ()).offset(OFFSET) as *const Identity);
29222 ID3D11VideoContext_Impl::VideoProcessorGetOutputConstriction(
29223 this,
29224 core::mem::transmute_copy(&pvideoprocessor),
29225 core::mem::transmute_copy(&penabled),
29226 core::mem::transmute_copy(&psize),
29227 )
29228 }
29229 }
29230 unsafe extern "system" fn VideoProcessorGetOutputStereoMode<
29231 Identity: ID3D11VideoContext_Impl,
29232 const OFFSET: isize,
29233 >(
29234 this: *mut core::ffi::c_void,
29235 pvideoprocessor: *mut core::ffi::c_void,
29236 penabled: *mut crate::Foundation::BOOL,
29237 ) {
29238 unsafe {
29239 let this: &Identity =
29240 &*((this as *const *const ()).offset(OFFSET) as *const Identity);
29241 ID3D11VideoContext_Impl::VideoProcessorGetOutputStereoMode(
29242 this,
29243 core::mem::transmute_copy(&pvideoprocessor),
29244 core::mem::transmute_copy(&penabled),
29245 )
29246 }
29247 }
29248 unsafe extern "system" fn VideoProcessorGetOutputExtension<
29249 Identity: ID3D11VideoContext_Impl,
29250 const OFFSET: isize,
29251 >(
29252 this: *mut core::ffi::c_void,
29253 pvideoprocessor: *mut core::ffi::c_void,
29254 pextensionguid: *const windows_core::GUID,
29255 datasize: u32,
29256 pdata: *mut core::ffi::c_void,
29257 ) -> i32 {
29258 unsafe {
29259 let this: &Identity =
29260 &*((this as *const *const ()).offset(OFFSET) as *const Identity);
29261 ID3D11VideoContext_Impl::VideoProcessorGetOutputExtension(
29262 this,
29263 core::mem::transmute_copy(&pvideoprocessor),
29264 core::mem::transmute_copy(&pextensionguid),
29265 core::mem::transmute_copy(&datasize),
29266 core::mem::transmute_copy(&pdata),
29267 )
29268 }
29269 }
29270 unsafe extern "system" fn VideoProcessorSetStreamFrameFormat<
29271 Identity: ID3D11VideoContext_Impl,
29272 const OFFSET: isize,
29273 >(
29274 this: *mut core::ffi::c_void,
29275 pvideoprocessor: *mut core::ffi::c_void,
29276 streamindex: u32,
29277 frameformat: D3D11_VIDEO_FRAME_FORMAT,
29278 ) {
29279 unsafe {
29280 let this: &Identity =
29281 &*((this as *const *const ()).offset(OFFSET) as *const Identity);
29282 ID3D11VideoContext_Impl::VideoProcessorSetStreamFrameFormat(
29283 this,
29284 core::mem::transmute_copy(&pvideoprocessor),
29285 core::mem::transmute_copy(&streamindex),
29286 core::mem::transmute_copy(&frameformat),
29287 )
29288 }
29289 }
29290 unsafe extern "system" fn VideoProcessorSetStreamColorSpace<
29291 Identity: ID3D11VideoContext_Impl,
29292 const OFFSET: isize,
29293 >(
29294 this: *mut core::ffi::c_void,
29295 pvideoprocessor: *mut core::ffi::c_void,
29296 streamindex: u32,
29297 pcolorspace: *const D3D11_VIDEO_PROCESSOR_COLOR_SPACE,
29298 ) {
29299 unsafe {
29300 let this: &Identity =
29301 &*((this as *const *const ()).offset(OFFSET) as *const Identity);
29302 ID3D11VideoContext_Impl::VideoProcessorSetStreamColorSpace(
29303 this,
29304 core::mem::transmute_copy(&pvideoprocessor),
29305 core::mem::transmute_copy(&streamindex),
29306 core::mem::transmute_copy(&pcolorspace),
29307 )
29308 }
29309 }
29310 unsafe extern "system" fn VideoProcessorSetStreamOutputRate<
29311 Identity: ID3D11VideoContext_Impl,
29312 const OFFSET: isize,
29313 >(
29314 this: *mut core::ffi::c_void,
29315 pvideoprocessor: *mut core::ffi::c_void,
29316 streamindex: u32,
29317 outputrate: D3D11_VIDEO_PROCESSOR_OUTPUT_RATE,
29318 repeatframe: crate::Foundation::BOOL,
29319 pcustomrate: *const crate::Dxgi::Common::DXGI_RATIONAL,
29320 ) {
29321 unsafe {
29322 let this: &Identity =
29323 &*((this as *const *const ()).offset(OFFSET) as *const Identity);
29324 ID3D11VideoContext_Impl::VideoProcessorSetStreamOutputRate(
29325 this,
29326 core::mem::transmute_copy(&pvideoprocessor),
29327 core::mem::transmute_copy(&streamindex),
29328 core::mem::transmute_copy(&outputrate),
29329 core::mem::transmute_copy(&repeatframe),
29330 core::mem::transmute_copy(&pcustomrate),
29331 )
29332 }
29333 }
29334 unsafe extern "system" fn VideoProcessorSetStreamSourceRect<
29335 Identity: ID3D11VideoContext_Impl,
29336 const OFFSET: isize,
29337 >(
29338 this: *mut core::ffi::c_void,
29339 pvideoprocessor: *mut core::ffi::c_void,
29340 streamindex: u32,
29341 enable: crate::Foundation::BOOL,
29342 prect: *const crate::Foundation::RECT,
29343 ) {
29344 unsafe {
29345 let this: &Identity =
29346 &*((this as *const *const ()).offset(OFFSET) as *const Identity);
29347 ID3D11VideoContext_Impl::VideoProcessorSetStreamSourceRect(
29348 this,
29349 core::mem::transmute_copy(&pvideoprocessor),
29350 core::mem::transmute_copy(&streamindex),
29351 core::mem::transmute_copy(&enable),
29352 core::mem::transmute_copy(&prect),
29353 )
29354 }
29355 }
29356 unsafe extern "system" fn VideoProcessorSetStreamDestRect<
29357 Identity: ID3D11VideoContext_Impl,
29358 const OFFSET: isize,
29359 >(
29360 this: *mut core::ffi::c_void,
29361 pvideoprocessor: *mut core::ffi::c_void,
29362 streamindex: u32,
29363 enable: crate::Foundation::BOOL,
29364 prect: *const crate::Foundation::RECT,
29365 ) {
29366 unsafe {
29367 let this: &Identity =
29368 &*((this as *const *const ()).offset(OFFSET) as *const Identity);
29369 ID3D11VideoContext_Impl::VideoProcessorSetStreamDestRect(
29370 this,
29371 core::mem::transmute_copy(&pvideoprocessor),
29372 core::mem::transmute_copy(&streamindex),
29373 core::mem::transmute_copy(&enable),
29374 core::mem::transmute_copy(&prect),
29375 )
29376 }
29377 }
29378 unsafe extern "system" fn VideoProcessorSetStreamAlpha<
29379 Identity: ID3D11VideoContext_Impl,
29380 const OFFSET: isize,
29381 >(
29382 this: *mut core::ffi::c_void,
29383 pvideoprocessor: *mut core::ffi::c_void,
29384 streamindex: u32,
29385 enable: crate::Foundation::BOOL,
29386 alpha: f32,
29387 ) {
29388 unsafe {
29389 let this: &Identity =
29390 &*((this as *const *const ()).offset(OFFSET) as *const Identity);
29391 ID3D11VideoContext_Impl::VideoProcessorSetStreamAlpha(
29392 this,
29393 core::mem::transmute_copy(&pvideoprocessor),
29394 core::mem::transmute_copy(&streamindex),
29395 core::mem::transmute_copy(&enable),
29396 core::mem::transmute_copy(&alpha),
29397 )
29398 }
29399 }
29400 unsafe extern "system" fn VideoProcessorSetStreamPalette<
29401 Identity: ID3D11VideoContext_Impl,
29402 const OFFSET: isize,
29403 >(
29404 this: *mut core::ffi::c_void,
29405 pvideoprocessor: *mut core::ffi::c_void,
29406 streamindex: u32,
29407 count: u32,
29408 pentries: *const u32,
29409 ) {
29410 unsafe {
29411 let this: &Identity =
29412 &*((this as *const *const ()).offset(OFFSET) as *const Identity);
29413 ID3D11VideoContext_Impl::VideoProcessorSetStreamPalette(
29414 this,
29415 core::mem::transmute_copy(&pvideoprocessor),
29416 core::mem::transmute_copy(&streamindex),
29417 core::mem::transmute_copy(&count),
29418 core::mem::transmute_copy(&pentries),
29419 )
29420 }
29421 }
29422 unsafe extern "system" fn VideoProcessorSetStreamPixelAspectRatio<
29423 Identity: ID3D11VideoContext_Impl,
29424 const OFFSET: isize,
29425 >(
29426 this: *mut core::ffi::c_void,
29427 pvideoprocessor: *mut core::ffi::c_void,
29428 streamindex: u32,
29429 enable: crate::Foundation::BOOL,
29430 psourceaspectratio: *const crate::Dxgi::Common::DXGI_RATIONAL,
29431 pdestinationaspectratio: *const crate::Dxgi::Common::DXGI_RATIONAL,
29432 ) {
29433 unsafe {
29434 let this: &Identity =
29435 &*((this as *const *const ()).offset(OFFSET) as *const Identity);
29436 ID3D11VideoContext_Impl::VideoProcessorSetStreamPixelAspectRatio(
29437 this,
29438 core::mem::transmute_copy(&pvideoprocessor),
29439 core::mem::transmute_copy(&streamindex),
29440 core::mem::transmute_copy(&enable),
29441 core::mem::transmute_copy(&psourceaspectratio),
29442 core::mem::transmute_copy(&pdestinationaspectratio),
29443 )
29444 }
29445 }
29446 unsafe extern "system" fn VideoProcessorSetStreamLumaKey<
29447 Identity: ID3D11VideoContext_Impl,
29448 const OFFSET: isize,
29449 >(
29450 this: *mut core::ffi::c_void,
29451 pvideoprocessor: *mut core::ffi::c_void,
29452 streamindex: u32,
29453 enable: crate::Foundation::BOOL,
29454 lower: f32,
29455 upper: f32,
29456 ) {
29457 unsafe {
29458 let this: &Identity =
29459 &*((this as *const *const ()).offset(OFFSET) as *const Identity);
29460 ID3D11VideoContext_Impl::VideoProcessorSetStreamLumaKey(
29461 this,
29462 core::mem::transmute_copy(&pvideoprocessor),
29463 core::mem::transmute_copy(&streamindex),
29464 core::mem::transmute_copy(&enable),
29465 core::mem::transmute_copy(&lower),
29466 core::mem::transmute_copy(&upper),
29467 )
29468 }
29469 }
29470 unsafe extern "system" fn VideoProcessorSetStreamStereoFormat<
29471 Identity: ID3D11VideoContext_Impl,
29472 const OFFSET: isize,
29473 >(
29474 this: *mut core::ffi::c_void,
29475 pvideoprocessor: *mut core::ffi::c_void,
29476 streamindex: u32,
29477 enable: crate::Foundation::BOOL,
29478 format: D3D11_VIDEO_PROCESSOR_STEREO_FORMAT,
29479 leftviewframe0: crate::Foundation::BOOL,
29480 baseviewframe0: crate::Foundation::BOOL,
29481 flipmode: D3D11_VIDEO_PROCESSOR_STEREO_FLIP_MODE,
29482 monooffset: i32,
29483 ) {
29484 unsafe {
29485 let this: &Identity =
29486 &*((this as *const *const ()).offset(OFFSET) as *const Identity);
29487 ID3D11VideoContext_Impl::VideoProcessorSetStreamStereoFormat(
29488 this,
29489 core::mem::transmute_copy(&pvideoprocessor),
29490 core::mem::transmute_copy(&streamindex),
29491 core::mem::transmute_copy(&enable),
29492 core::mem::transmute_copy(&format),
29493 core::mem::transmute_copy(&leftviewframe0),
29494 core::mem::transmute_copy(&baseviewframe0),
29495 core::mem::transmute_copy(&flipmode),
29496 core::mem::transmute_copy(&monooffset),
29497 )
29498 }
29499 }
29500 unsafe extern "system" fn VideoProcessorSetStreamAutoProcessingMode<
29501 Identity: ID3D11VideoContext_Impl,
29502 const OFFSET: isize,
29503 >(
29504 this: *mut core::ffi::c_void,
29505 pvideoprocessor: *mut core::ffi::c_void,
29506 streamindex: u32,
29507 enable: crate::Foundation::BOOL,
29508 ) {
29509 unsafe {
29510 let this: &Identity =
29511 &*((this as *const *const ()).offset(OFFSET) as *const Identity);
29512 ID3D11VideoContext_Impl::VideoProcessorSetStreamAutoProcessingMode(
29513 this,
29514 core::mem::transmute_copy(&pvideoprocessor),
29515 core::mem::transmute_copy(&streamindex),
29516 core::mem::transmute_copy(&enable),
29517 )
29518 }
29519 }
29520 unsafe extern "system" fn VideoProcessorSetStreamFilter<
29521 Identity: ID3D11VideoContext_Impl,
29522 const OFFSET: isize,
29523 >(
29524 this: *mut core::ffi::c_void,
29525 pvideoprocessor: *mut core::ffi::c_void,
29526 streamindex: u32,
29527 filter: D3D11_VIDEO_PROCESSOR_FILTER,
29528 enable: crate::Foundation::BOOL,
29529 level: i32,
29530 ) {
29531 unsafe {
29532 let this: &Identity =
29533 &*((this as *const *const ()).offset(OFFSET) as *const Identity);
29534 ID3D11VideoContext_Impl::VideoProcessorSetStreamFilter(
29535 this,
29536 core::mem::transmute_copy(&pvideoprocessor),
29537 core::mem::transmute_copy(&streamindex),
29538 core::mem::transmute_copy(&filter),
29539 core::mem::transmute_copy(&enable),
29540 core::mem::transmute_copy(&level),
29541 )
29542 }
29543 }
29544 unsafe extern "system" fn VideoProcessorSetStreamExtension<
29545 Identity: ID3D11VideoContext_Impl,
29546 const OFFSET: isize,
29547 >(
29548 this: *mut core::ffi::c_void,
29549 pvideoprocessor: *mut core::ffi::c_void,
29550 streamindex: u32,
29551 pextensionguid: *const windows_core::GUID,
29552 datasize: u32,
29553 pdata: *const core::ffi::c_void,
29554 ) -> i32 {
29555 unsafe {
29556 let this: &Identity =
29557 &*((this as *const *const ()).offset(OFFSET) as *const Identity);
29558 ID3D11VideoContext_Impl::VideoProcessorSetStreamExtension(
29559 this,
29560 core::mem::transmute_copy(&pvideoprocessor),
29561 core::mem::transmute_copy(&streamindex),
29562 core::mem::transmute_copy(&pextensionguid),
29563 core::mem::transmute_copy(&datasize),
29564 core::mem::transmute_copy(&pdata),
29565 )
29566 }
29567 }
29568 unsafe extern "system" fn VideoProcessorGetStreamFrameFormat<
29569 Identity: ID3D11VideoContext_Impl,
29570 const OFFSET: isize,
29571 >(
29572 this: *mut core::ffi::c_void,
29573 pvideoprocessor: *mut core::ffi::c_void,
29574 streamindex: u32,
29575 pframeformat: *mut D3D11_VIDEO_FRAME_FORMAT,
29576 ) {
29577 unsafe {
29578 let this: &Identity =
29579 &*((this as *const *const ()).offset(OFFSET) as *const Identity);
29580 ID3D11VideoContext_Impl::VideoProcessorGetStreamFrameFormat(
29581 this,
29582 core::mem::transmute_copy(&pvideoprocessor),
29583 core::mem::transmute_copy(&streamindex),
29584 core::mem::transmute_copy(&pframeformat),
29585 )
29586 }
29587 }
29588 unsafe extern "system" fn VideoProcessorGetStreamColorSpace<
29589 Identity: ID3D11VideoContext_Impl,
29590 const OFFSET: isize,
29591 >(
29592 this: *mut core::ffi::c_void,
29593 pvideoprocessor: *mut core::ffi::c_void,
29594 streamindex: u32,
29595 pcolorspace: *mut D3D11_VIDEO_PROCESSOR_COLOR_SPACE,
29596 ) {
29597 unsafe {
29598 let this: &Identity =
29599 &*((this as *const *const ()).offset(OFFSET) as *const Identity);
29600 ID3D11VideoContext_Impl::VideoProcessorGetStreamColorSpace(
29601 this,
29602 core::mem::transmute_copy(&pvideoprocessor),
29603 core::mem::transmute_copy(&streamindex),
29604 core::mem::transmute_copy(&pcolorspace),
29605 )
29606 }
29607 }
29608 unsafe extern "system" fn VideoProcessorGetStreamOutputRate<
29609 Identity: ID3D11VideoContext_Impl,
29610 const OFFSET: isize,
29611 >(
29612 this: *mut core::ffi::c_void,
29613 pvideoprocessor: *mut core::ffi::c_void,
29614 streamindex: u32,
29615 poutputrate: *mut D3D11_VIDEO_PROCESSOR_OUTPUT_RATE,
29616 prepeatframe: *mut crate::Foundation::BOOL,
29617 pcustomrate: *mut crate::Dxgi::Common::DXGI_RATIONAL,
29618 ) {
29619 unsafe {
29620 let this: &Identity =
29621 &*((this as *const *const ()).offset(OFFSET) as *const Identity);
29622 ID3D11VideoContext_Impl::VideoProcessorGetStreamOutputRate(
29623 this,
29624 core::mem::transmute_copy(&pvideoprocessor),
29625 core::mem::transmute_copy(&streamindex),
29626 core::mem::transmute_copy(&poutputrate),
29627 core::mem::transmute_copy(&prepeatframe),
29628 core::mem::transmute_copy(&pcustomrate),
29629 )
29630 }
29631 }
29632 unsafe extern "system" fn VideoProcessorGetStreamSourceRect<
29633 Identity: ID3D11VideoContext_Impl,
29634 const OFFSET: isize,
29635 >(
29636 this: *mut core::ffi::c_void,
29637 pvideoprocessor: *mut core::ffi::c_void,
29638 streamindex: u32,
29639 penabled: *mut crate::Foundation::BOOL,
29640 prect: *mut crate::Foundation::RECT,
29641 ) {
29642 unsafe {
29643 let this: &Identity =
29644 &*((this as *const *const ()).offset(OFFSET) as *const Identity);
29645 ID3D11VideoContext_Impl::VideoProcessorGetStreamSourceRect(
29646 this,
29647 core::mem::transmute_copy(&pvideoprocessor),
29648 core::mem::transmute_copy(&streamindex),
29649 core::mem::transmute_copy(&penabled),
29650 core::mem::transmute_copy(&prect),
29651 )
29652 }
29653 }
29654 unsafe extern "system" fn VideoProcessorGetStreamDestRect<
29655 Identity: ID3D11VideoContext_Impl,
29656 const OFFSET: isize,
29657 >(
29658 this: *mut core::ffi::c_void,
29659 pvideoprocessor: *mut core::ffi::c_void,
29660 streamindex: u32,
29661 penabled: *mut crate::Foundation::BOOL,
29662 prect: *mut crate::Foundation::RECT,
29663 ) {
29664 unsafe {
29665 let this: &Identity =
29666 &*((this as *const *const ()).offset(OFFSET) as *const Identity);
29667 ID3D11VideoContext_Impl::VideoProcessorGetStreamDestRect(
29668 this,
29669 core::mem::transmute_copy(&pvideoprocessor),
29670 core::mem::transmute_copy(&streamindex),
29671 core::mem::transmute_copy(&penabled),
29672 core::mem::transmute_copy(&prect),
29673 )
29674 }
29675 }
29676 unsafe extern "system" fn VideoProcessorGetStreamAlpha<
29677 Identity: ID3D11VideoContext_Impl,
29678 const OFFSET: isize,
29679 >(
29680 this: *mut core::ffi::c_void,
29681 pvideoprocessor: *mut core::ffi::c_void,
29682 streamindex: u32,
29683 penabled: *mut crate::Foundation::BOOL,
29684 palpha: *mut f32,
29685 ) {
29686 unsafe {
29687 let this: &Identity =
29688 &*((this as *const *const ()).offset(OFFSET) as *const Identity);
29689 ID3D11VideoContext_Impl::VideoProcessorGetStreamAlpha(
29690 this,
29691 core::mem::transmute_copy(&pvideoprocessor),
29692 core::mem::transmute_copy(&streamindex),
29693 core::mem::transmute_copy(&penabled),
29694 core::mem::transmute_copy(&palpha),
29695 )
29696 }
29697 }
29698 unsafe extern "system" fn VideoProcessorGetStreamPalette<
29699 Identity: ID3D11VideoContext_Impl,
29700 const OFFSET: isize,
29701 >(
29702 this: *mut core::ffi::c_void,
29703 pvideoprocessor: *mut core::ffi::c_void,
29704 streamindex: u32,
29705 count: u32,
29706 pentries: *mut u32,
29707 ) {
29708 unsafe {
29709 let this: &Identity =
29710 &*((this as *const *const ()).offset(OFFSET) as *const Identity);
29711 ID3D11VideoContext_Impl::VideoProcessorGetStreamPalette(
29712 this,
29713 core::mem::transmute_copy(&pvideoprocessor),
29714 core::mem::transmute_copy(&streamindex),
29715 core::mem::transmute_copy(&count),
29716 core::mem::transmute_copy(&pentries),
29717 )
29718 }
29719 }
29720 unsafe extern "system" fn VideoProcessorGetStreamPixelAspectRatio<
29721 Identity: ID3D11VideoContext_Impl,
29722 const OFFSET: isize,
29723 >(
29724 this: *mut core::ffi::c_void,
29725 pvideoprocessor: *mut core::ffi::c_void,
29726 streamindex: u32,
29727 penabled: *mut crate::Foundation::BOOL,
29728 psourceaspectratio: *mut crate::Dxgi::Common::DXGI_RATIONAL,
29729 pdestinationaspectratio: *mut crate::Dxgi::Common::DXGI_RATIONAL,
29730 ) {
29731 unsafe {
29732 let this: &Identity =
29733 &*((this as *const *const ()).offset(OFFSET) as *const Identity);
29734 ID3D11VideoContext_Impl::VideoProcessorGetStreamPixelAspectRatio(
29735 this,
29736 core::mem::transmute_copy(&pvideoprocessor),
29737 core::mem::transmute_copy(&streamindex),
29738 core::mem::transmute_copy(&penabled),
29739 core::mem::transmute_copy(&psourceaspectratio),
29740 core::mem::transmute_copy(&pdestinationaspectratio),
29741 )
29742 }
29743 }
29744 unsafe extern "system" fn VideoProcessorGetStreamLumaKey<
29745 Identity: ID3D11VideoContext_Impl,
29746 const OFFSET: isize,
29747 >(
29748 this: *mut core::ffi::c_void,
29749 pvideoprocessor: *mut core::ffi::c_void,
29750 streamindex: u32,
29751 penabled: *mut crate::Foundation::BOOL,
29752 plower: *mut f32,
29753 pupper: *mut f32,
29754 ) {
29755 unsafe {
29756 let this: &Identity =
29757 &*((this as *const *const ()).offset(OFFSET) as *const Identity);
29758 ID3D11VideoContext_Impl::VideoProcessorGetStreamLumaKey(
29759 this,
29760 core::mem::transmute_copy(&pvideoprocessor),
29761 core::mem::transmute_copy(&streamindex),
29762 core::mem::transmute_copy(&penabled),
29763 core::mem::transmute_copy(&plower),
29764 core::mem::transmute_copy(&pupper),
29765 )
29766 }
29767 }
29768 unsafe extern "system" fn VideoProcessorGetStreamStereoFormat<
29769 Identity: ID3D11VideoContext_Impl,
29770 const OFFSET: isize,
29771 >(
29772 this: *mut core::ffi::c_void,
29773 pvideoprocessor: *mut core::ffi::c_void,
29774 streamindex: u32,
29775 penable: *mut crate::Foundation::BOOL,
29776 pformat: *mut D3D11_VIDEO_PROCESSOR_STEREO_FORMAT,
29777 pleftviewframe0: *mut crate::Foundation::BOOL,
29778 pbaseviewframe0: *mut crate::Foundation::BOOL,
29779 pflipmode: *mut D3D11_VIDEO_PROCESSOR_STEREO_FLIP_MODE,
29780 monooffset: *mut i32,
29781 ) {
29782 unsafe {
29783 let this: &Identity =
29784 &*((this as *const *const ()).offset(OFFSET) as *const Identity);
29785 ID3D11VideoContext_Impl::VideoProcessorGetStreamStereoFormat(
29786 this,
29787 core::mem::transmute_copy(&pvideoprocessor),
29788 core::mem::transmute_copy(&streamindex),
29789 core::mem::transmute_copy(&penable),
29790 core::mem::transmute_copy(&pformat),
29791 core::mem::transmute_copy(&pleftviewframe0),
29792 core::mem::transmute_copy(&pbaseviewframe0),
29793 core::mem::transmute_copy(&pflipmode),
29794 core::mem::transmute_copy(&monooffset),
29795 )
29796 }
29797 }
29798 unsafe extern "system" fn VideoProcessorGetStreamAutoProcessingMode<
29799 Identity: ID3D11VideoContext_Impl,
29800 const OFFSET: isize,
29801 >(
29802 this: *mut core::ffi::c_void,
29803 pvideoprocessor: *mut core::ffi::c_void,
29804 streamindex: u32,
29805 penabled: *mut crate::Foundation::BOOL,
29806 ) {
29807 unsafe {
29808 let this: &Identity =
29809 &*((this as *const *const ()).offset(OFFSET) as *const Identity);
29810 ID3D11VideoContext_Impl::VideoProcessorGetStreamAutoProcessingMode(
29811 this,
29812 core::mem::transmute_copy(&pvideoprocessor),
29813 core::mem::transmute_copy(&streamindex),
29814 core::mem::transmute_copy(&penabled),
29815 )
29816 }
29817 }
29818 unsafe extern "system" fn VideoProcessorGetStreamFilter<
29819 Identity: ID3D11VideoContext_Impl,
29820 const OFFSET: isize,
29821 >(
29822 this: *mut core::ffi::c_void,
29823 pvideoprocessor: *mut core::ffi::c_void,
29824 streamindex: u32,
29825 filter: D3D11_VIDEO_PROCESSOR_FILTER,
29826 penabled: *mut crate::Foundation::BOOL,
29827 plevel: *mut i32,
29828 ) {
29829 unsafe {
29830 let this: &Identity =
29831 &*((this as *const *const ()).offset(OFFSET) as *const Identity);
29832 ID3D11VideoContext_Impl::VideoProcessorGetStreamFilter(
29833 this,
29834 core::mem::transmute_copy(&pvideoprocessor),
29835 core::mem::transmute_copy(&streamindex),
29836 core::mem::transmute_copy(&filter),
29837 core::mem::transmute_copy(&penabled),
29838 core::mem::transmute_copy(&plevel),
29839 )
29840 }
29841 }
29842 unsafe extern "system" fn VideoProcessorGetStreamExtension<
29843 Identity: ID3D11VideoContext_Impl,
29844 const OFFSET: isize,
29845 >(
29846 this: *mut core::ffi::c_void,
29847 pvideoprocessor: *mut core::ffi::c_void,
29848 streamindex: u32,
29849 pextensionguid: *const windows_core::GUID,
29850 datasize: u32,
29851 pdata: *mut core::ffi::c_void,
29852 ) -> i32 {
29853 unsafe {
29854 let this: &Identity =
29855 &*((this as *const *const ()).offset(OFFSET) as *const Identity);
29856 ID3D11VideoContext_Impl::VideoProcessorGetStreamExtension(
29857 this,
29858 core::mem::transmute_copy(&pvideoprocessor),
29859 core::mem::transmute_copy(&streamindex),
29860 core::mem::transmute_copy(&pextensionguid),
29861 core::mem::transmute_copy(&datasize),
29862 core::mem::transmute_copy(&pdata),
29863 )
29864 }
29865 }
29866 unsafe extern "system" fn VideoProcessorBlt<
29867 Identity: ID3D11VideoContext_Impl,
29868 const OFFSET: isize,
29869 >(
29870 this: *mut core::ffi::c_void,
29871 pvideoprocessor: *mut core::ffi::c_void,
29872 pview: *mut core::ffi::c_void,
29873 outputframe: u32,
29874 streamcount: u32,
29875 pstreams: *const D3D11_VIDEO_PROCESSOR_STREAM,
29876 ) -> windows_core::HRESULT {
29877 unsafe {
29878 let this: &Identity =
29879 &*((this as *const *const ()).offset(OFFSET) as *const Identity);
29880 ID3D11VideoContext_Impl::VideoProcessorBlt(
29881 this,
29882 core::mem::transmute_copy(&pvideoprocessor),
29883 core::mem::transmute_copy(&pview),
29884 core::mem::transmute_copy(&outputframe),
29885 core::mem::transmute_copy(&streamcount),
29886 core::mem::transmute_copy(&pstreams),
29887 )
29888 .into()
29889 }
29890 }
29891 unsafe extern "system" fn NegotiateCryptoSessionKeyExchange<
29892 Identity: ID3D11VideoContext_Impl,
29893 const OFFSET: isize,
29894 >(
29895 this: *mut core::ffi::c_void,
29896 pcryptosession: *mut core::ffi::c_void,
29897 datasize: u32,
29898 pdata: *mut core::ffi::c_void,
29899 ) -> windows_core::HRESULT {
29900 unsafe {
29901 let this: &Identity =
29902 &*((this as *const *const ()).offset(OFFSET) as *const Identity);
29903 ID3D11VideoContext_Impl::NegotiateCryptoSessionKeyExchange(
29904 this,
29905 core::mem::transmute_copy(&pcryptosession),
29906 core::mem::transmute_copy(&datasize),
29907 core::mem::transmute_copy(&pdata),
29908 )
29909 .into()
29910 }
29911 }
29912 unsafe extern "system" fn EncryptionBlt<
29913 Identity: ID3D11VideoContext_Impl,
29914 const OFFSET: isize,
29915 >(
29916 this: *mut core::ffi::c_void,
29917 pcryptosession: *mut core::ffi::c_void,
29918 psrcsurface: *mut core::ffi::c_void,
29919 pdstsurface: *mut core::ffi::c_void,
29920 ivsize: u32,
29921 piv: *mut core::ffi::c_void,
29922 ) {
29923 unsafe {
29924 let this: &Identity =
29925 &*((this as *const *const ()).offset(OFFSET) as *const Identity);
29926 ID3D11VideoContext_Impl::EncryptionBlt(
29927 this,
29928 core::mem::transmute_copy(&pcryptosession),
29929 core::mem::transmute_copy(&psrcsurface),
29930 core::mem::transmute_copy(&pdstsurface),
29931 core::mem::transmute_copy(&ivsize),
29932 core::mem::transmute_copy(&piv),
29933 )
29934 }
29935 }
29936 unsafe extern "system" fn DecryptionBlt<
29937 Identity: ID3D11VideoContext_Impl,
29938 const OFFSET: isize,
29939 >(
29940 this: *mut core::ffi::c_void,
29941 pcryptosession: *mut core::ffi::c_void,
29942 psrcsurface: *mut core::ffi::c_void,
29943 pdstsurface: *mut core::ffi::c_void,
29944 pencryptedblockinfo: *const D3D11_ENCRYPTED_BLOCK_INFO,
29945 contentkeysize: u32,
29946 pcontentkey: *const core::ffi::c_void,
29947 ivsize: u32,
29948 piv: *mut core::ffi::c_void,
29949 ) {
29950 unsafe {
29951 let this: &Identity =
29952 &*((this as *const *const ()).offset(OFFSET) as *const Identity);
29953 ID3D11VideoContext_Impl::DecryptionBlt(
29954 this,
29955 core::mem::transmute_copy(&pcryptosession),
29956 core::mem::transmute_copy(&psrcsurface),
29957 core::mem::transmute_copy(&pdstsurface),
29958 core::mem::transmute_copy(&pencryptedblockinfo),
29959 core::mem::transmute_copy(&contentkeysize),
29960 core::mem::transmute_copy(&pcontentkey),
29961 core::mem::transmute_copy(&ivsize),
29962 core::mem::transmute_copy(&piv),
29963 )
29964 }
29965 }
29966 unsafe extern "system" fn StartSessionKeyRefresh<
29967 Identity: ID3D11VideoContext_Impl,
29968 const OFFSET: isize,
29969 >(
29970 this: *mut core::ffi::c_void,
29971 pcryptosession: *mut core::ffi::c_void,
29972 randomnumbersize: u32,
29973 prandomnumber: *mut core::ffi::c_void,
29974 ) {
29975 unsafe {
29976 let this: &Identity =
29977 &*((this as *const *const ()).offset(OFFSET) as *const Identity);
29978 ID3D11VideoContext_Impl::StartSessionKeyRefresh(
29979 this,
29980 core::mem::transmute_copy(&pcryptosession),
29981 core::mem::transmute_copy(&randomnumbersize),
29982 core::mem::transmute_copy(&prandomnumber),
29983 )
29984 }
29985 }
29986 unsafe extern "system" fn FinishSessionKeyRefresh<
29987 Identity: ID3D11VideoContext_Impl,
29988 const OFFSET: isize,
29989 >(
29990 this: *mut core::ffi::c_void,
29991 pcryptosession: *mut core::ffi::c_void,
29992 ) {
29993 unsafe {
29994 let this: &Identity =
29995 &*((this as *const *const ()).offset(OFFSET) as *const Identity);
29996 ID3D11VideoContext_Impl::FinishSessionKeyRefresh(
29997 this,
29998 core::mem::transmute_copy(&pcryptosession),
29999 )
30000 }
30001 }
30002 unsafe extern "system" fn GetEncryptionBltKey<
30003 Identity: ID3D11VideoContext_Impl,
30004 const OFFSET: isize,
30005 >(
30006 this: *mut core::ffi::c_void,
30007 pcryptosession: *mut core::ffi::c_void,
30008 keysize: u32,
30009 preadbackkey: *mut core::ffi::c_void,
30010 ) -> windows_core::HRESULT {
30011 unsafe {
30012 let this: &Identity =
30013 &*((this as *const *const ()).offset(OFFSET) as *const Identity);
30014 ID3D11VideoContext_Impl::GetEncryptionBltKey(
30015 this,
30016 core::mem::transmute_copy(&pcryptosession),
30017 core::mem::transmute_copy(&keysize),
30018 core::mem::transmute_copy(&preadbackkey),
30019 )
30020 .into()
30021 }
30022 }
30023 unsafe extern "system" fn NegotiateAuthenticatedChannelKeyExchange<
30024 Identity: ID3D11VideoContext_Impl,
30025 const OFFSET: isize,
30026 >(
30027 this: *mut core::ffi::c_void,
30028 pchannel: *mut core::ffi::c_void,
30029 datasize: u32,
30030 pdata: *mut core::ffi::c_void,
30031 ) -> windows_core::HRESULT {
30032 unsafe {
30033 let this: &Identity =
30034 &*((this as *const *const ()).offset(OFFSET) as *const Identity);
30035 ID3D11VideoContext_Impl::NegotiateAuthenticatedChannelKeyExchange(
30036 this,
30037 core::mem::transmute_copy(&pchannel),
30038 core::mem::transmute_copy(&datasize),
30039 core::mem::transmute_copy(&pdata),
30040 )
30041 .into()
30042 }
30043 }
30044 unsafe extern "system" fn QueryAuthenticatedChannel<
30045 Identity: ID3D11VideoContext_Impl,
30046 const OFFSET: isize,
30047 >(
30048 this: *mut core::ffi::c_void,
30049 pchannel: *mut core::ffi::c_void,
30050 inputsize: u32,
30051 pinput: *const core::ffi::c_void,
30052 outputsize: u32,
30053 poutput: *mut core::ffi::c_void,
30054 ) -> windows_core::HRESULT {
30055 unsafe {
30056 let this: &Identity =
30057 &*((this as *const *const ()).offset(OFFSET) as *const Identity);
30058 ID3D11VideoContext_Impl::QueryAuthenticatedChannel(
30059 this,
30060 core::mem::transmute_copy(&pchannel),
30061 core::mem::transmute_copy(&inputsize),
30062 core::mem::transmute_copy(&pinput),
30063 core::mem::transmute_copy(&outputsize),
30064 core::mem::transmute_copy(&poutput),
30065 )
30066 .into()
30067 }
30068 }
30069 unsafe extern "system" fn ConfigureAuthenticatedChannel<
30070 Identity: ID3D11VideoContext_Impl,
30071 const OFFSET: isize,
30072 >(
30073 this: *mut core::ffi::c_void,
30074 pchannel: *mut core::ffi::c_void,
30075 inputsize: u32,
30076 pinput: *const core::ffi::c_void,
30077 poutput: *mut D3D11_AUTHENTICATED_CONFIGURE_OUTPUT,
30078 ) -> windows_core::HRESULT {
30079 unsafe {
30080 let this: &Identity =
30081 &*((this as *const *const ()).offset(OFFSET) as *const Identity);
30082 ID3D11VideoContext_Impl::ConfigureAuthenticatedChannel(
30083 this,
30084 core::mem::transmute_copy(&pchannel),
30085 core::mem::transmute_copy(&inputsize),
30086 core::mem::transmute_copy(&pinput),
30087 core::mem::transmute_copy(&poutput),
30088 )
30089 .into()
30090 }
30091 }
30092 unsafe extern "system" fn VideoProcessorSetStreamRotation<
30093 Identity: ID3D11VideoContext_Impl,
30094 const OFFSET: isize,
30095 >(
30096 this: *mut core::ffi::c_void,
30097 pvideoprocessor: *mut core::ffi::c_void,
30098 streamindex: u32,
30099 enable: crate::Foundation::BOOL,
30100 rotation: D3D11_VIDEO_PROCESSOR_ROTATION,
30101 ) {
30102 unsafe {
30103 let this: &Identity =
30104 &*((this as *const *const ()).offset(OFFSET) as *const Identity);
30105 ID3D11VideoContext_Impl::VideoProcessorSetStreamRotation(
30106 this,
30107 core::mem::transmute_copy(&pvideoprocessor),
30108 core::mem::transmute_copy(&streamindex),
30109 core::mem::transmute_copy(&enable),
30110 core::mem::transmute_copy(&rotation),
30111 )
30112 }
30113 }
30114 unsafe extern "system" fn VideoProcessorGetStreamRotation<
30115 Identity: ID3D11VideoContext_Impl,
30116 const OFFSET: isize,
30117 >(
30118 this: *mut core::ffi::c_void,
30119 pvideoprocessor: *mut core::ffi::c_void,
30120 streamindex: u32,
30121 penable: *mut crate::Foundation::BOOL,
30122 protation: *mut D3D11_VIDEO_PROCESSOR_ROTATION,
30123 ) {
30124 unsafe {
30125 let this: &Identity =
30126 &*((this as *const *const ()).offset(OFFSET) as *const Identity);
30127 ID3D11VideoContext_Impl::VideoProcessorGetStreamRotation(
30128 this,
30129 core::mem::transmute_copy(&pvideoprocessor),
30130 core::mem::transmute_copy(&streamindex),
30131 core::mem::transmute_copy(&penable),
30132 core::mem::transmute_copy(&protation),
30133 )
30134 }
30135 }
30136 Self {
30137 base__: ID3D11DeviceChild_Vtbl::new::<Identity, OFFSET>(),
30138 GetDecoderBuffer: GetDecoderBuffer::<Identity, OFFSET>,
30139 ReleaseDecoderBuffer: ReleaseDecoderBuffer::<Identity, OFFSET>,
30140 DecoderBeginFrame: DecoderBeginFrame::<Identity, OFFSET>,
30141 DecoderEndFrame: DecoderEndFrame::<Identity, OFFSET>,
30142 SubmitDecoderBuffers: SubmitDecoderBuffers::<Identity, OFFSET>,
30143 DecoderExtension: DecoderExtension::<Identity, OFFSET>,
30144 VideoProcessorSetOutputTargetRect: VideoProcessorSetOutputTargetRect::<Identity, OFFSET>,
30145 VideoProcessorSetOutputBackgroundColor: VideoProcessorSetOutputBackgroundColor::<
30146 Identity,
30147 OFFSET,
30148 >,
30149 VideoProcessorSetOutputColorSpace: VideoProcessorSetOutputColorSpace::<Identity, OFFSET>,
30150 VideoProcessorSetOutputAlphaFillMode: VideoProcessorSetOutputAlphaFillMode::<
30151 Identity,
30152 OFFSET,
30153 >,
30154 VideoProcessorSetOutputConstriction: VideoProcessorSetOutputConstriction::<
30155 Identity,
30156 OFFSET,
30157 >,
30158 VideoProcessorSetOutputStereoMode: VideoProcessorSetOutputStereoMode::<Identity, OFFSET>,
30159 VideoProcessorSetOutputExtension: VideoProcessorSetOutputExtension::<Identity, OFFSET>,
30160 VideoProcessorGetOutputTargetRect: VideoProcessorGetOutputTargetRect::<Identity, OFFSET>,
30161 VideoProcessorGetOutputBackgroundColor: VideoProcessorGetOutputBackgroundColor::<
30162 Identity,
30163 OFFSET,
30164 >,
30165 VideoProcessorGetOutputColorSpace: VideoProcessorGetOutputColorSpace::<Identity, OFFSET>,
30166 VideoProcessorGetOutputAlphaFillMode: VideoProcessorGetOutputAlphaFillMode::<
30167 Identity,
30168 OFFSET,
30169 >,
30170 VideoProcessorGetOutputConstriction: VideoProcessorGetOutputConstriction::<
30171 Identity,
30172 OFFSET,
30173 >,
30174 VideoProcessorGetOutputStereoMode: VideoProcessorGetOutputStereoMode::<Identity, OFFSET>,
30175 VideoProcessorGetOutputExtension: VideoProcessorGetOutputExtension::<Identity, OFFSET>,
30176 VideoProcessorSetStreamFrameFormat: VideoProcessorSetStreamFrameFormat::<
30177 Identity,
30178 OFFSET,
30179 >,
30180 VideoProcessorSetStreamColorSpace: VideoProcessorSetStreamColorSpace::<Identity, OFFSET>,
30181 VideoProcessorSetStreamOutputRate: VideoProcessorSetStreamOutputRate::<Identity, OFFSET>,
30182 VideoProcessorSetStreamSourceRect: VideoProcessorSetStreamSourceRect::<Identity, OFFSET>,
30183 VideoProcessorSetStreamDestRect: VideoProcessorSetStreamDestRect::<Identity, OFFSET>,
30184 VideoProcessorSetStreamAlpha: VideoProcessorSetStreamAlpha::<Identity, OFFSET>,
30185 VideoProcessorSetStreamPalette: VideoProcessorSetStreamPalette::<Identity, OFFSET>,
30186 VideoProcessorSetStreamPixelAspectRatio: VideoProcessorSetStreamPixelAspectRatio::<
30187 Identity,
30188 OFFSET,
30189 >,
30190 VideoProcessorSetStreamLumaKey: VideoProcessorSetStreamLumaKey::<Identity, OFFSET>,
30191 VideoProcessorSetStreamStereoFormat: VideoProcessorSetStreamStereoFormat::<
30192 Identity,
30193 OFFSET,
30194 >,
30195 VideoProcessorSetStreamAutoProcessingMode: VideoProcessorSetStreamAutoProcessingMode::<
30196 Identity,
30197 OFFSET,
30198 >,
30199 VideoProcessorSetStreamFilter: VideoProcessorSetStreamFilter::<Identity, OFFSET>,
30200 VideoProcessorSetStreamExtension: VideoProcessorSetStreamExtension::<Identity, OFFSET>,
30201 VideoProcessorGetStreamFrameFormat: VideoProcessorGetStreamFrameFormat::<
30202 Identity,
30203 OFFSET,
30204 >,
30205 VideoProcessorGetStreamColorSpace: VideoProcessorGetStreamColorSpace::<Identity, OFFSET>,
30206 VideoProcessorGetStreamOutputRate: VideoProcessorGetStreamOutputRate::<Identity, OFFSET>,
30207 VideoProcessorGetStreamSourceRect: VideoProcessorGetStreamSourceRect::<Identity, OFFSET>,
30208 VideoProcessorGetStreamDestRect: VideoProcessorGetStreamDestRect::<Identity, OFFSET>,
30209 VideoProcessorGetStreamAlpha: VideoProcessorGetStreamAlpha::<Identity, OFFSET>,
30210 VideoProcessorGetStreamPalette: VideoProcessorGetStreamPalette::<Identity, OFFSET>,
30211 VideoProcessorGetStreamPixelAspectRatio: VideoProcessorGetStreamPixelAspectRatio::<
30212 Identity,
30213 OFFSET,
30214 >,
30215 VideoProcessorGetStreamLumaKey: VideoProcessorGetStreamLumaKey::<Identity, OFFSET>,
30216 VideoProcessorGetStreamStereoFormat: VideoProcessorGetStreamStereoFormat::<
30217 Identity,
30218 OFFSET,
30219 >,
30220 VideoProcessorGetStreamAutoProcessingMode: VideoProcessorGetStreamAutoProcessingMode::<
30221 Identity,
30222 OFFSET,
30223 >,
30224 VideoProcessorGetStreamFilter: VideoProcessorGetStreamFilter::<Identity, OFFSET>,
30225 VideoProcessorGetStreamExtension: VideoProcessorGetStreamExtension::<Identity, OFFSET>,
30226 VideoProcessorBlt: VideoProcessorBlt::<Identity, OFFSET>,
30227 NegotiateCryptoSessionKeyExchange: NegotiateCryptoSessionKeyExchange::<Identity, OFFSET>,
30228 EncryptionBlt: EncryptionBlt::<Identity, OFFSET>,
30229 DecryptionBlt: DecryptionBlt::<Identity, OFFSET>,
30230 StartSessionKeyRefresh: StartSessionKeyRefresh::<Identity, OFFSET>,
30231 FinishSessionKeyRefresh: FinishSessionKeyRefresh::<Identity, OFFSET>,
30232 GetEncryptionBltKey: GetEncryptionBltKey::<Identity, OFFSET>,
30233 NegotiateAuthenticatedChannelKeyExchange: NegotiateAuthenticatedChannelKeyExchange::<
30234 Identity,
30235 OFFSET,
30236 >,
30237 QueryAuthenticatedChannel: QueryAuthenticatedChannel::<Identity, OFFSET>,
30238 ConfigureAuthenticatedChannel: ConfigureAuthenticatedChannel::<Identity, OFFSET>,
30239 VideoProcessorSetStreamRotation: VideoProcessorSetStreamRotation::<Identity, OFFSET>,
30240 VideoProcessorGetStreamRotation: VideoProcessorGetStreamRotation::<Identity, OFFSET>,
30241 }
30242 }
30243 pub fn matches(iid: &windows_core::GUID) -> bool {
30244 iid == &<ID3D11VideoContext as windows_core::Interface>::IID
30245 || iid == &<ID3D11DeviceChild as windows_core::Interface>::IID
30246 }
30247}
30248#[cfg(feature = "Win32_Graphics_Dxgi_Common")]
30249impl windows_core::RuntimeName for ID3D11VideoContext {}
30250#[cfg(feature = "Win32_Graphics_Dxgi_Common")]
30251unsafe impl Send for ID3D11VideoContext {}
30252#[cfg(feature = "Win32_Graphics_Dxgi_Common")]
30253unsafe impl Sync for ID3D11VideoContext {}
30254windows_core::imp::define_interface!(
30255 ID3D11VideoContext1,
30256 ID3D11VideoContext1_Vtbl,
30257 0xa7f026da_a5f8_4487_a564_15e34357651e
30258);
30259impl core::ops::Deref for ID3D11VideoContext1 {
30260 type Target = ID3D11VideoContext;
30261 fn deref(&self) -> &Self::Target {
30262 unsafe { core::mem::transmute(self) }
30263 }
30264}
30265windows_core::imp::interface_hierarchy!(
30266 ID3D11VideoContext1,
30267 windows_core::IUnknown,
30268 ID3D11DeviceChild,
30269 ID3D11VideoContext
30270);
30271impl ID3D11VideoContext1 {
30272 pub unsafe fn SubmitDecoderBuffers1<P0>(
30273 &self,
30274 pdecoder: P0,
30275 pbufferdesc: &[D3D11_VIDEO_DECODER_BUFFER_DESC1],
30276 ) -> windows_core::Result<()>
30277 where
30278 P0: windows_core::Param<ID3D11VideoDecoder>,
30279 {
30280 unsafe {
30281 (windows_core::Interface::vtable(self).SubmitDecoderBuffers1)(
30282 windows_core::Interface::as_raw(self),
30283 pdecoder.param().abi(),
30284 pbufferdesc.len().try_into().unwrap(),
30285 core::mem::transmute(pbufferdesc.as_ptr()),
30286 )
30287 .ok()
30288 }
30289 }
30290 pub unsafe fn GetDataForNewHardwareKey<P0>(
30291 &self,
30292 pcryptosession: P0,
30293 pprivatinputdata: &[u8],
30294 ) -> windows_core::Result<u64>
30295 where
30296 P0: windows_core::Param<ID3D11CryptoSession>,
30297 {
30298 unsafe {
30299 let mut result__ = core::mem::zeroed();
30300 (windows_core::Interface::vtable(self).GetDataForNewHardwareKey)(
30301 windows_core::Interface::as_raw(self),
30302 pcryptosession.param().abi(),
30303 pprivatinputdata.len().try_into().unwrap(),
30304 core::mem::transmute(pprivatinputdata.as_ptr()),
30305 &mut result__,
30306 )
30307 .map(|| result__)
30308 }
30309 }
30310 pub unsafe fn CheckCryptoSessionStatus<P0>(
30311 &self,
30312 pcryptosession: P0,
30313 ) -> windows_core::Result<D3D11_CRYPTO_SESSION_STATUS>
30314 where
30315 P0: windows_core::Param<ID3D11CryptoSession>,
30316 {
30317 unsafe {
30318 let mut result__ = core::mem::zeroed();
30319 (windows_core::Interface::vtable(self).CheckCryptoSessionStatus)(
30320 windows_core::Interface::as_raw(self),
30321 pcryptosession.param().abi(),
30322 &mut result__,
30323 )
30324 .map(|| result__)
30325 }
30326 }
30327 #[cfg(feature = "Win32_Graphics_Dxgi_Common")]
30328 pub unsafe fn DecoderEnableDownsampling<P0>(
30329 &self,
30330 pdecoder: P0,
30331 inputcolorspace: crate::Dxgi::Common::DXGI_COLOR_SPACE_TYPE,
30332 poutputdesc: *const D3D11_VIDEO_SAMPLE_DESC,
30333 referenceframecount: u32,
30334 ) -> windows_core::Result<()>
30335 where
30336 P0: windows_core::Param<ID3D11VideoDecoder>,
30337 {
30338 unsafe {
30339 (windows_core::Interface::vtable(self).DecoderEnableDownsampling)(
30340 windows_core::Interface::as_raw(self),
30341 pdecoder.param().abi(),
30342 inputcolorspace,
30343 poutputdesc,
30344 referenceframecount,
30345 )
30346 .ok()
30347 }
30348 }
30349 #[cfg(feature = "Win32_Graphics_Dxgi_Common")]
30350 pub unsafe fn DecoderUpdateDownsampling<P0>(
30351 &self,
30352 pdecoder: P0,
30353 poutputdesc: *const D3D11_VIDEO_SAMPLE_DESC,
30354 ) -> windows_core::Result<()>
30355 where
30356 P0: windows_core::Param<ID3D11VideoDecoder>,
30357 {
30358 unsafe {
30359 (windows_core::Interface::vtable(self).DecoderUpdateDownsampling)(
30360 windows_core::Interface::as_raw(self),
30361 pdecoder.param().abi(),
30362 poutputdesc,
30363 )
30364 .ok()
30365 }
30366 }
30367 #[cfg(feature = "Win32_Graphics_Dxgi_Common")]
30368 pub unsafe fn VideoProcessorSetOutputColorSpace1<P0>(
30369 &self,
30370 pvideoprocessor: P0,
30371 colorspace: crate::Dxgi::Common::DXGI_COLOR_SPACE_TYPE,
30372 ) where
30373 P0: windows_core::Param<ID3D11VideoProcessor>,
30374 {
30375 unsafe {
30376 (windows_core::Interface::vtable(self).VideoProcessorSetOutputColorSpace1)(
30377 windows_core::Interface::as_raw(self),
30378 pvideoprocessor.param().abi(),
30379 colorspace,
30380 )
30381 }
30382 }
30383 pub unsafe fn VideoProcessorSetOutputShaderUsage<P0>(
30384 &self,
30385 pvideoprocessor: P0,
30386 shaderusage: bool,
30387 ) where
30388 P0: windows_core::Param<ID3D11VideoProcessor>,
30389 {
30390 unsafe {
30391 (windows_core::Interface::vtable(self).VideoProcessorSetOutputShaderUsage)(
30392 windows_core::Interface::as_raw(self),
30393 pvideoprocessor.param().abi(),
30394 shaderusage.into(),
30395 )
30396 }
30397 }
30398 #[cfg(feature = "Win32_Graphics_Dxgi_Common")]
30399 pub unsafe fn VideoProcessorGetOutputColorSpace1<P0>(
30400 &self,
30401 pvideoprocessor: P0,
30402 ) -> crate::Dxgi::Common::DXGI_COLOR_SPACE_TYPE
30403 where
30404 P0: windows_core::Param<ID3D11VideoProcessor>,
30405 {
30406 unsafe {
30407 let mut result__ = core::mem::zeroed();
30408 (windows_core::Interface::vtable(self).VideoProcessorGetOutputColorSpace1)(
30409 windows_core::Interface::as_raw(self),
30410 pvideoprocessor.param().abi(),
30411 &mut result__,
30412 );
30413 result__
30414 }
30415 }
30416 pub unsafe fn VideoProcessorGetOutputShaderUsage<P0>(
30417 &self,
30418 pvideoprocessor: P0,
30419 ) -> crate::Foundation::BOOL
30420 where
30421 P0: windows_core::Param<ID3D11VideoProcessor>,
30422 {
30423 unsafe {
30424 let mut result__ = core::mem::zeroed();
30425 (windows_core::Interface::vtable(self).VideoProcessorGetOutputShaderUsage)(
30426 windows_core::Interface::as_raw(self),
30427 pvideoprocessor.param().abi(),
30428 &mut result__,
30429 );
30430 result__
30431 }
30432 }
30433 #[cfg(feature = "Win32_Graphics_Dxgi_Common")]
30434 pub unsafe fn VideoProcessorSetStreamColorSpace1<P0>(
30435 &self,
30436 pvideoprocessor: P0,
30437 streamindex: u32,
30438 colorspace: crate::Dxgi::Common::DXGI_COLOR_SPACE_TYPE,
30439 ) where
30440 P0: windows_core::Param<ID3D11VideoProcessor>,
30441 {
30442 unsafe {
30443 (windows_core::Interface::vtable(self).VideoProcessorSetStreamColorSpace1)(
30444 windows_core::Interface::as_raw(self),
30445 pvideoprocessor.param().abi(),
30446 streamindex,
30447 colorspace,
30448 )
30449 }
30450 }
30451 pub unsafe fn VideoProcessorSetStreamMirror<P0>(
30452 &self,
30453 pvideoprocessor: P0,
30454 streamindex: u32,
30455 enable: bool,
30456 fliphorizontal: bool,
30457 flipvertical: bool,
30458 ) where
30459 P0: windows_core::Param<ID3D11VideoProcessor>,
30460 {
30461 unsafe {
30462 (windows_core::Interface::vtable(self).VideoProcessorSetStreamMirror)(
30463 windows_core::Interface::as_raw(self),
30464 pvideoprocessor.param().abi(),
30465 streamindex,
30466 enable.into(),
30467 fliphorizontal.into(),
30468 flipvertical.into(),
30469 )
30470 }
30471 }
30472 #[cfg(feature = "Win32_Graphics_Dxgi_Common")]
30473 pub unsafe fn VideoProcessorGetStreamColorSpace1<P0>(
30474 &self,
30475 pvideoprocessor: P0,
30476 streamindex: u32,
30477 ) -> crate::Dxgi::Common::DXGI_COLOR_SPACE_TYPE
30478 where
30479 P0: windows_core::Param<ID3D11VideoProcessor>,
30480 {
30481 unsafe {
30482 let mut result__ = core::mem::zeroed();
30483 (windows_core::Interface::vtable(self).VideoProcessorGetStreamColorSpace1)(
30484 windows_core::Interface::as_raw(self),
30485 pvideoprocessor.param().abi(),
30486 streamindex,
30487 &mut result__,
30488 );
30489 result__
30490 }
30491 }
30492 pub unsafe fn VideoProcessorGetStreamMirror<P0>(
30493 &self,
30494 pvideoprocessor: P0,
30495 streamindex: u32,
30496 penable: *mut crate::Foundation::BOOL,
30497 pfliphorizontal: *mut crate::Foundation::BOOL,
30498 pflipvertical: *mut crate::Foundation::BOOL,
30499 ) where
30500 P0: windows_core::Param<ID3D11VideoProcessor>,
30501 {
30502 unsafe {
30503 (windows_core::Interface::vtable(self).VideoProcessorGetStreamMirror)(
30504 windows_core::Interface::as_raw(self),
30505 pvideoprocessor.param().abi(),
30506 streamindex,
30507 core::mem::transmute(penable),
30508 core::mem::transmute(pfliphorizontal),
30509 core::mem::transmute(pflipvertical),
30510 )
30511 }
30512 }
30513 #[cfg(feature = "Win32_Graphics_Dxgi_Common")]
30514 pub unsafe fn VideoProcessorGetBehaviorHints<P0>(
30515 &self,
30516 pvideoprocessor: P0,
30517 outputwidth: u32,
30518 outputheight: u32,
30519 outputformat: crate::Dxgi::Common::DXGI_FORMAT,
30520 pstreams: &[D3D11_VIDEO_PROCESSOR_STREAM_BEHAVIOR_HINT],
30521 ) -> windows_core::Result<u32>
30522 where
30523 P0: windows_core::Param<ID3D11VideoProcessor>,
30524 {
30525 unsafe {
30526 let mut result__ = core::mem::zeroed();
30527 (windows_core::Interface::vtable(self).VideoProcessorGetBehaviorHints)(
30528 windows_core::Interface::as_raw(self),
30529 pvideoprocessor.param().abi(),
30530 outputwidth,
30531 outputheight,
30532 outputformat,
30533 pstreams.len().try_into().unwrap(),
30534 core::mem::transmute(pstreams.as_ptr()),
30535 &mut result__,
30536 )
30537 .map(|| result__)
30538 }
30539 }
30540}
30541#[repr(C)]
30542pub struct ID3D11VideoContext1_Vtbl {
30543 pub base__: ID3D11VideoContext_Vtbl,
30544 pub SubmitDecoderBuffers1: unsafe extern "system" fn(
30545 *mut core::ffi::c_void,
30546 *mut core::ffi::c_void,
30547 u32,
30548 *const D3D11_VIDEO_DECODER_BUFFER_DESC1,
30549 ) -> windows_core::HRESULT,
30550 pub GetDataForNewHardwareKey: unsafe extern "system" fn(
30551 *mut core::ffi::c_void,
30552 *mut core::ffi::c_void,
30553 u32,
30554 *const core::ffi::c_void,
30555 *mut u64,
30556 ) -> windows_core::HRESULT,
30557 pub CheckCryptoSessionStatus: unsafe extern "system" fn(
30558 *mut core::ffi::c_void,
30559 *mut core::ffi::c_void,
30560 *mut D3D11_CRYPTO_SESSION_STATUS,
30561 ) -> windows_core::HRESULT,
30562 #[cfg(feature = "Win32_Graphics_Dxgi_Common")]
30563 pub DecoderEnableDownsampling: unsafe extern "system" fn(
30564 *mut core::ffi::c_void,
30565 *mut core::ffi::c_void,
30566 crate::Dxgi::Common::DXGI_COLOR_SPACE_TYPE,
30567 *const D3D11_VIDEO_SAMPLE_DESC,
30568 u32,
30569 ) -> windows_core::HRESULT,
30570 #[cfg(not(feature = "Win32_Graphics_Dxgi_Common"))]
30571 DecoderEnableDownsampling: usize,
30572 #[cfg(feature = "Win32_Graphics_Dxgi_Common")]
30573 pub DecoderUpdateDownsampling: unsafe extern "system" fn(
30574 *mut core::ffi::c_void,
30575 *mut core::ffi::c_void,
30576 *const D3D11_VIDEO_SAMPLE_DESC,
30577 ) -> windows_core::HRESULT,
30578 #[cfg(not(feature = "Win32_Graphics_Dxgi_Common"))]
30579 DecoderUpdateDownsampling: usize,
30580 #[cfg(feature = "Win32_Graphics_Dxgi_Common")]
30581 pub VideoProcessorSetOutputColorSpace1: unsafe extern "system" fn(
30582 *mut core::ffi::c_void,
30583 *mut core::ffi::c_void,
30584 crate::Dxgi::Common::DXGI_COLOR_SPACE_TYPE,
30585 ),
30586 #[cfg(not(feature = "Win32_Graphics_Dxgi_Common"))]
30587 VideoProcessorSetOutputColorSpace1: usize,
30588 pub VideoProcessorSetOutputShaderUsage: unsafe extern "system" fn(
30589 *mut core::ffi::c_void,
30590 *mut core::ffi::c_void,
30591 crate::Foundation::BOOL,
30592 ),
30593 #[cfg(feature = "Win32_Graphics_Dxgi_Common")]
30594 pub VideoProcessorGetOutputColorSpace1: unsafe extern "system" fn(
30595 *mut core::ffi::c_void,
30596 *mut core::ffi::c_void,
30597 *mut crate::Dxgi::Common::DXGI_COLOR_SPACE_TYPE,
30598 ),
30599 #[cfg(not(feature = "Win32_Graphics_Dxgi_Common"))]
30600 VideoProcessorGetOutputColorSpace1: usize,
30601 pub VideoProcessorGetOutputShaderUsage: unsafe extern "system" fn(
30602 *mut core::ffi::c_void,
30603 *mut core::ffi::c_void,
30604 *mut crate::Foundation::BOOL,
30605 ),
30606 #[cfg(feature = "Win32_Graphics_Dxgi_Common")]
30607 pub VideoProcessorSetStreamColorSpace1: unsafe extern "system" fn(
30608 *mut core::ffi::c_void,
30609 *mut core::ffi::c_void,
30610 u32,
30611 crate::Dxgi::Common::DXGI_COLOR_SPACE_TYPE,
30612 ),
30613 #[cfg(not(feature = "Win32_Graphics_Dxgi_Common"))]
30614 VideoProcessorSetStreamColorSpace1: usize,
30615 pub VideoProcessorSetStreamMirror: unsafe extern "system" fn(
30616 *mut core::ffi::c_void,
30617 *mut core::ffi::c_void,
30618 u32,
30619 crate::Foundation::BOOL,
30620 crate::Foundation::BOOL,
30621 crate::Foundation::BOOL,
30622 ),
30623 #[cfg(feature = "Win32_Graphics_Dxgi_Common")]
30624 pub VideoProcessorGetStreamColorSpace1: unsafe extern "system" fn(
30625 *mut core::ffi::c_void,
30626 *mut core::ffi::c_void,
30627 u32,
30628 *mut crate::Dxgi::Common::DXGI_COLOR_SPACE_TYPE,
30629 ),
30630 #[cfg(not(feature = "Win32_Graphics_Dxgi_Common"))]
30631 VideoProcessorGetStreamColorSpace1: usize,
30632 pub VideoProcessorGetStreamMirror: unsafe extern "system" fn(
30633 *mut core::ffi::c_void,
30634 *mut core::ffi::c_void,
30635 u32,
30636 *mut crate::Foundation::BOOL,
30637 *mut crate::Foundation::BOOL,
30638 *mut crate::Foundation::BOOL,
30639 ),
30640 #[cfg(feature = "Win32_Graphics_Dxgi_Common")]
30641 pub VideoProcessorGetBehaviorHints: unsafe extern "system" fn(
30642 *mut core::ffi::c_void,
30643 *mut core::ffi::c_void,
30644 u32,
30645 u32,
30646 crate::Dxgi::Common::DXGI_FORMAT,
30647 u32,
30648 *const D3D11_VIDEO_PROCESSOR_STREAM_BEHAVIOR_HINT,
30649 *mut u32,
30650 ) -> windows_core::HRESULT,
30651 #[cfg(not(feature = "Win32_Graphics_Dxgi_Common"))]
30652 VideoProcessorGetBehaviorHints: usize,
30653}
30654#[cfg(feature = "Win32_Graphics_Dxgi_Common")]
30655pub trait ID3D11VideoContext1_Impl: ID3D11VideoContext_Impl {
30656 fn SubmitDecoderBuffers1(
30657 &self,
30658 pdecoder: windows_core::Ref<'_, ID3D11VideoDecoder>,
30659 numbuffers: u32,
30660 pbufferdesc: *const D3D11_VIDEO_DECODER_BUFFER_DESC1,
30661 ) -> windows_core::Result<()>;
30662 fn GetDataForNewHardwareKey(
30663 &self,
30664 pcryptosession: windows_core::Ref<'_, ID3D11CryptoSession>,
30665 privateinputsize: u32,
30666 pprivatinputdata: *const core::ffi::c_void,
30667 ) -> windows_core::Result<u64>;
30668 fn CheckCryptoSessionStatus(
30669 &self,
30670 pcryptosession: windows_core::Ref<'_, ID3D11CryptoSession>,
30671 ) -> windows_core::Result<D3D11_CRYPTO_SESSION_STATUS>;
30672 fn DecoderEnableDownsampling(
30673 &self,
30674 pdecoder: windows_core::Ref<'_, ID3D11VideoDecoder>,
30675 inputcolorspace: crate::Dxgi::Common::DXGI_COLOR_SPACE_TYPE,
30676 poutputdesc: *const D3D11_VIDEO_SAMPLE_DESC,
30677 referenceframecount: u32,
30678 ) -> windows_core::Result<()>;
30679 fn DecoderUpdateDownsampling(
30680 &self,
30681 pdecoder: windows_core::Ref<'_, ID3D11VideoDecoder>,
30682 poutputdesc: *const D3D11_VIDEO_SAMPLE_DESC,
30683 ) -> windows_core::Result<()>;
30684 fn VideoProcessorSetOutputColorSpace1(
30685 &self,
30686 pvideoprocessor: windows_core::Ref<'_, ID3D11VideoProcessor>,
30687 colorspace: crate::Dxgi::Common::DXGI_COLOR_SPACE_TYPE,
30688 );
30689 fn VideoProcessorSetOutputShaderUsage(
30690 &self,
30691 pvideoprocessor: windows_core::Ref<'_, ID3D11VideoProcessor>,
30692 shaderusage: crate::Foundation::BOOL,
30693 );
30694 fn VideoProcessorGetOutputColorSpace1(
30695 &self,
30696 pvideoprocessor: windows_core::Ref<'_, ID3D11VideoProcessor>,
30697 pcolorspace: *mut crate::Dxgi::Common::DXGI_COLOR_SPACE_TYPE,
30698 );
30699 fn VideoProcessorGetOutputShaderUsage(
30700 &self,
30701 pvideoprocessor: windows_core::Ref<'_, ID3D11VideoProcessor>,
30702 pshaderusage: *mut crate::Foundation::BOOL,
30703 );
30704 fn VideoProcessorSetStreamColorSpace1(
30705 &self,
30706 pvideoprocessor: windows_core::Ref<'_, ID3D11VideoProcessor>,
30707 streamindex: u32,
30708 colorspace: crate::Dxgi::Common::DXGI_COLOR_SPACE_TYPE,
30709 );
30710 fn VideoProcessorSetStreamMirror(
30711 &self,
30712 pvideoprocessor: windows_core::Ref<'_, ID3D11VideoProcessor>,
30713 streamindex: u32,
30714 enable: crate::Foundation::BOOL,
30715 fliphorizontal: crate::Foundation::BOOL,
30716 flipvertical: crate::Foundation::BOOL,
30717 );
30718 fn VideoProcessorGetStreamColorSpace1(
30719 &self,
30720 pvideoprocessor: windows_core::Ref<'_, ID3D11VideoProcessor>,
30721 streamindex: u32,
30722 pcolorspace: *mut crate::Dxgi::Common::DXGI_COLOR_SPACE_TYPE,
30723 );
30724 fn VideoProcessorGetStreamMirror(
30725 &self,
30726 pvideoprocessor: windows_core::Ref<'_, ID3D11VideoProcessor>,
30727 streamindex: u32,
30728 penable: *mut crate::Foundation::BOOL,
30729 pfliphorizontal: *mut crate::Foundation::BOOL,
30730 pflipvertical: *mut crate::Foundation::BOOL,
30731 );
30732 fn VideoProcessorGetBehaviorHints(
30733 &self,
30734 pvideoprocessor: windows_core::Ref<'_, ID3D11VideoProcessor>,
30735 outputwidth: u32,
30736 outputheight: u32,
30737 outputformat: crate::Dxgi::Common::DXGI_FORMAT,
30738 streamcount: u32,
30739 pstreams: *const D3D11_VIDEO_PROCESSOR_STREAM_BEHAVIOR_HINT,
30740 ) -> windows_core::Result<u32>;
30741}
30742#[cfg(feature = "Win32_Graphics_Dxgi_Common")]
30743impl ID3D11VideoContext1_Vtbl {
30744 pub const fn new<Identity: ID3D11VideoContext1_Impl, const OFFSET: isize>() -> Self {
30745 unsafe extern "system" fn SubmitDecoderBuffers1<
30746 Identity: ID3D11VideoContext1_Impl,
30747 const OFFSET: isize,
30748 >(
30749 this: *mut core::ffi::c_void,
30750 pdecoder: *mut core::ffi::c_void,
30751 numbuffers: u32,
30752 pbufferdesc: *const D3D11_VIDEO_DECODER_BUFFER_DESC1,
30753 ) -> windows_core::HRESULT {
30754 unsafe {
30755 let this: &Identity =
30756 &*((this as *const *const ()).offset(OFFSET) as *const Identity);
30757 ID3D11VideoContext1_Impl::SubmitDecoderBuffers1(
30758 this,
30759 core::mem::transmute_copy(&pdecoder),
30760 core::mem::transmute_copy(&numbuffers),
30761 core::mem::transmute_copy(&pbufferdesc),
30762 )
30763 .into()
30764 }
30765 }
30766 unsafe extern "system" fn GetDataForNewHardwareKey<
30767 Identity: ID3D11VideoContext1_Impl,
30768 const OFFSET: isize,
30769 >(
30770 this: *mut core::ffi::c_void,
30771 pcryptosession: *mut core::ffi::c_void,
30772 privateinputsize: u32,
30773 pprivatinputdata: *const core::ffi::c_void,
30774 pprivateoutputdata: *mut u64,
30775 ) -> windows_core::HRESULT {
30776 unsafe {
30777 let this: &Identity =
30778 &*((this as *const *const ()).offset(OFFSET) as *const Identity);
30779 match ID3D11VideoContext1_Impl::GetDataForNewHardwareKey(
30780 this,
30781 core::mem::transmute_copy(&pcryptosession),
30782 core::mem::transmute_copy(&privateinputsize),
30783 core::mem::transmute_copy(&pprivatinputdata),
30784 ) {
30785 Ok(ok__) => {
30786 pprivateoutputdata.write(core::mem::transmute(ok__));
30787 windows_core::HRESULT(0)
30788 }
30789 Err(err) => err.into(),
30790 }
30791 }
30792 }
30793 unsafe extern "system" fn CheckCryptoSessionStatus<
30794 Identity: ID3D11VideoContext1_Impl,
30795 const OFFSET: isize,
30796 >(
30797 this: *mut core::ffi::c_void,
30798 pcryptosession: *mut core::ffi::c_void,
30799 pstatus: *mut D3D11_CRYPTO_SESSION_STATUS,
30800 ) -> windows_core::HRESULT {
30801 unsafe {
30802 let this: &Identity =
30803 &*((this as *const *const ()).offset(OFFSET) as *const Identity);
30804 match ID3D11VideoContext1_Impl::CheckCryptoSessionStatus(
30805 this,
30806 core::mem::transmute_copy(&pcryptosession),
30807 ) {
30808 Ok(ok__) => {
30809 pstatus.write(core::mem::transmute(ok__));
30810 windows_core::HRESULT(0)
30811 }
30812 Err(err) => err.into(),
30813 }
30814 }
30815 }
30816 unsafe extern "system" fn DecoderEnableDownsampling<
30817 Identity: ID3D11VideoContext1_Impl,
30818 const OFFSET: isize,
30819 >(
30820 this: *mut core::ffi::c_void,
30821 pdecoder: *mut core::ffi::c_void,
30822 inputcolorspace: crate::Dxgi::Common::DXGI_COLOR_SPACE_TYPE,
30823 poutputdesc: *const D3D11_VIDEO_SAMPLE_DESC,
30824 referenceframecount: u32,
30825 ) -> windows_core::HRESULT {
30826 unsafe {
30827 let this: &Identity =
30828 &*((this as *const *const ()).offset(OFFSET) as *const Identity);
30829 ID3D11VideoContext1_Impl::DecoderEnableDownsampling(
30830 this,
30831 core::mem::transmute_copy(&pdecoder),
30832 core::mem::transmute_copy(&inputcolorspace),
30833 core::mem::transmute_copy(&poutputdesc),
30834 core::mem::transmute_copy(&referenceframecount),
30835 )
30836 .into()
30837 }
30838 }
30839 unsafe extern "system" fn DecoderUpdateDownsampling<
30840 Identity: ID3D11VideoContext1_Impl,
30841 const OFFSET: isize,
30842 >(
30843 this: *mut core::ffi::c_void,
30844 pdecoder: *mut core::ffi::c_void,
30845 poutputdesc: *const D3D11_VIDEO_SAMPLE_DESC,
30846 ) -> windows_core::HRESULT {
30847 unsafe {
30848 let this: &Identity =
30849 &*((this as *const *const ()).offset(OFFSET) as *const Identity);
30850 ID3D11VideoContext1_Impl::DecoderUpdateDownsampling(
30851 this,
30852 core::mem::transmute_copy(&pdecoder),
30853 core::mem::transmute_copy(&poutputdesc),
30854 )
30855 .into()
30856 }
30857 }
30858 unsafe extern "system" fn VideoProcessorSetOutputColorSpace1<
30859 Identity: ID3D11VideoContext1_Impl,
30860 const OFFSET: isize,
30861 >(
30862 this: *mut core::ffi::c_void,
30863 pvideoprocessor: *mut core::ffi::c_void,
30864 colorspace: crate::Dxgi::Common::DXGI_COLOR_SPACE_TYPE,
30865 ) {
30866 unsafe {
30867 let this: &Identity =
30868 &*((this as *const *const ()).offset(OFFSET) as *const Identity);
30869 ID3D11VideoContext1_Impl::VideoProcessorSetOutputColorSpace1(
30870 this,
30871 core::mem::transmute_copy(&pvideoprocessor),
30872 core::mem::transmute_copy(&colorspace),
30873 )
30874 }
30875 }
30876 unsafe extern "system" fn VideoProcessorSetOutputShaderUsage<
30877 Identity: ID3D11VideoContext1_Impl,
30878 const OFFSET: isize,
30879 >(
30880 this: *mut core::ffi::c_void,
30881 pvideoprocessor: *mut core::ffi::c_void,
30882 shaderusage: crate::Foundation::BOOL,
30883 ) {
30884 unsafe {
30885 let this: &Identity =
30886 &*((this as *const *const ()).offset(OFFSET) as *const Identity);
30887 ID3D11VideoContext1_Impl::VideoProcessorSetOutputShaderUsage(
30888 this,
30889 core::mem::transmute_copy(&pvideoprocessor),
30890 core::mem::transmute_copy(&shaderusage),
30891 )
30892 }
30893 }
30894 unsafe extern "system" fn VideoProcessorGetOutputColorSpace1<
30895 Identity: ID3D11VideoContext1_Impl,
30896 const OFFSET: isize,
30897 >(
30898 this: *mut core::ffi::c_void,
30899 pvideoprocessor: *mut core::ffi::c_void,
30900 pcolorspace: *mut crate::Dxgi::Common::DXGI_COLOR_SPACE_TYPE,
30901 ) {
30902 unsafe {
30903 let this: &Identity =
30904 &*((this as *const *const ()).offset(OFFSET) as *const Identity);
30905 ID3D11VideoContext1_Impl::VideoProcessorGetOutputColorSpace1(
30906 this,
30907 core::mem::transmute_copy(&pvideoprocessor),
30908 core::mem::transmute_copy(&pcolorspace),
30909 )
30910 }
30911 }
30912 unsafe extern "system" fn VideoProcessorGetOutputShaderUsage<
30913 Identity: ID3D11VideoContext1_Impl,
30914 const OFFSET: isize,
30915 >(
30916 this: *mut core::ffi::c_void,
30917 pvideoprocessor: *mut core::ffi::c_void,
30918 pshaderusage: *mut crate::Foundation::BOOL,
30919 ) {
30920 unsafe {
30921 let this: &Identity =
30922 &*((this as *const *const ()).offset(OFFSET) as *const Identity);
30923 ID3D11VideoContext1_Impl::VideoProcessorGetOutputShaderUsage(
30924 this,
30925 core::mem::transmute_copy(&pvideoprocessor),
30926 core::mem::transmute_copy(&pshaderusage),
30927 )
30928 }
30929 }
30930 unsafe extern "system" fn VideoProcessorSetStreamColorSpace1<
30931 Identity: ID3D11VideoContext1_Impl,
30932 const OFFSET: isize,
30933 >(
30934 this: *mut core::ffi::c_void,
30935 pvideoprocessor: *mut core::ffi::c_void,
30936 streamindex: u32,
30937 colorspace: crate::Dxgi::Common::DXGI_COLOR_SPACE_TYPE,
30938 ) {
30939 unsafe {
30940 let this: &Identity =
30941 &*((this as *const *const ()).offset(OFFSET) as *const Identity);
30942 ID3D11VideoContext1_Impl::VideoProcessorSetStreamColorSpace1(
30943 this,
30944 core::mem::transmute_copy(&pvideoprocessor),
30945 core::mem::transmute_copy(&streamindex),
30946 core::mem::transmute_copy(&colorspace),
30947 )
30948 }
30949 }
30950 unsafe extern "system" fn VideoProcessorSetStreamMirror<
30951 Identity: ID3D11VideoContext1_Impl,
30952 const OFFSET: isize,
30953 >(
30954 this: *mut core::ffi::c_void,
30955 pvideoprocessor: *mut core::ffi::c_void,
30956 streamindex: u32,
30957 enable: crate::Foundation::BOOL,
30958 fliphorizontal: crate::Foundation::BOOL,
30959 flipvertical: crate::Foundation::BOOL,
30960 ) {
30961 unsafe {
30962 let this: &Identity =
30963 &*((this as *const *const ()).offset(OFFSET) as *const Identity);
30964 ID3D11VideoContext1_Impl::VideoProcessorSetStreamMirror(
30965 this,
30966 core::mem::transmute_copy(&pvideoprocessor),
30967 core::mem::transmute_copy(&streamindex),
30968 core::mem::transmute_copy(&enable),
30969 core::mem::transmute_copy(&fliphorizontal),
30970 core::mem::transmute_copy(&flipvertical),
30971 )
30972 }
30973 }
30974 unsafe extern "system" fn VideoProcessorGetStreamColorSpace1<
30975 Identity: ID3D11VideoContext1_Impl,
30976 const OFFSET: isize,
30977 >(
30978 this: *mut core::ffi::c_void,
30979 pvideoprocessor: *mut core::ffi::c_void,
30980 streamindex: u32,
30981 pcolorspace: *mut crate::Dxgi::Common::DXGI_COLOR_SPACE_TYPE,
30982 ) {
30983 unsafe {
30984 let this: &Identity =
30985 &*((this as *const *const ()).offset(OFFSET) as *const Identity);
30986 ID3D11VideoContext1_Impl::VideoProcessorGetStreamColorSpace1(
30987 this,
30988 core::mem::transmute_copy(&pvideoprocessor),
30989 core::mem::transmute_copy(&streamindex),
30990 core::mem::transmute_copy(&pcolorspace),
30991 )
30992 }
30993 }
30994 unsafe extern "system" fn VideoProcessorGetStreamMirror<
30995 Identity: ID3D11VideoContext1_Impl,
30996 const OFFSET: isize,
30997 >(
30998 this: *mut core::ffi::c_void,
30999 pvideoprocessor: *mut core::ffi::c_void,
31000 streamindex: u32,
31001 penable: *mut crate::Foundation::BOOL,
31002 pfliphorizontal: *mut crate::Foundation::BOOL,
31003 pflipvertical: *mut crate::Foundation::BOOL,
31004 ) {
31005 unsafe {
31006 let this: &Identity =
31007 &*((this as *const *const ()).offset(OFFSET) as *const Identity);
31008 ID3D11VideoContext1_Impl::VideoProcessorGetStreamMirror(
31009 this,
31010 core::mem::transmute_copy(&pvideoprocessor),
31011 core::mem::transmute_copy(&streamindex),
31012 core::mem::transmute_copy(&penable),
31013 core::mem::transmute_copy(&pfliphorizontal),
31014 core::mem::transmute_copy(&pflipvertical),
31015 )
31016 }
31017 }
31018 unsafe extern "system" fn VideoProcessorGetBehaviorHints<
31019 Identity: ID3D11VideoContext1_Impl,
31020 const OFFSET: isize,
31021 >(
31022 this: *mut core::ffi::c_void,
31023 pvideoprocessor: *mut core::ffi::c_void,
31024 outputwidth: u32,
31025 outputheight: u32,
31026 outputformat: crate::Dxgi::Common::DXGI_FORMAT,
31027 streamcount: u32,
31028 pstreams: *const D3D11_VIDEO_PROCESSOR_STREAM_BEHAVIOR_HINT,
31029 pbehaviorhints: *mut u32,
31030 ) -> windows_core::HRESULT {
31031 unsafe {
31032 let this: &Identity =
31033 &*((this as *const *const ()).offset(OFFSET) as *const Identity);
31034 match ID3D11VideoContext1_Impl::VideoProcessorGetBehaviorHints(
31035 this,
31036 core::mem::transmute_copy(&pvideoprocessor),
31037 core::mem::transmute_copy(&outputwidth),
31038 core::mem::transmute_copy(&outputheight),
31039 core::mem::transmute_copy(&outputformat),
31040 core::mem::transmute_copy(&streamcount),
31041 core::mem::transmute_copy(&pstreams),
31042 ) {
31043 Ok(ok__) => {
31044 pbehaviorhints.write(core::mem::transmute(ok__));
31045 windows_core::HRESULT(0)
31046 }
31047 Err(err) => err.into(),
31048 }
31049 }
31050 }
31051 Self {
31052 base__: ID3D11VideoContext_Vtbl::new::<Identity, OFFSET>(),
31053 SubmitDecoderBuffers1: SubmitDecoderBuffers1::<Identity, OFFSET>,
31054 GetDataForNewHardwareKey: GetDataForNewHardwareKey::<Identity, OFFSET>,
31055 CheckCryptoSessionStatus: CheckCryptoSessionStatus::<Identity, OFFSET>,
31056 DecoderEnableDownsampling: DecoderEnableDownsampling::<Identity, OFFSET>,
31057 DecoderUpdateDownsampling: DecoderUpdateDownsampling::<Identity, OFFSET>,
31058 VideoProcessorSetOutputColorSpace1: VideoProcessorSetOutputColorSpace1::<
31059 Identity,
31060 OFFSET,
31061 >,
31062 VideoProcessorSetOutputShaderUsage: VideoProcessorSetOutputShaderUsage::<
31063 Identity,
31064 OFFSET,
31065 >,
31066 VideoProcessorGetOutputColorSpace1: VideoProcessorGetOutputColorSpace1::<
31067 Identity,
31068 OFFSET,
31069 >,
31070 VideoProcessorGetOutputShaderUsage: VideoProcessorGetOutputShaderUsage::<
31071 Identity,
31072 OFFSET,
31073 >,
31074 VideoProcessorSetStreamColorSpace1: VideoProcessorSetStreamColorSpace1::<
31075 Identity,
31076 OFFSET,
31077 >,
31078 VideoProcessorSetStreamMirror: VideoProcessorSetStreamMirror::<Identity, OFFSET>,
31079 VideoProcessorGetStreamColorSpace1: VideoProcessorGetStreamColorSpace1::<
31080 Identity,
31081 OFFSET,
31082 >,
31083 VideoProcessorGetStreamMirror: VideoProcessorGetStreamMirror::<Identity, OFFSET>,
31084 VideoProcessorGetBehaviorHints: VideoProcessorGetBehaviorHints::<Identity, OFFSET>,
31085 }
31086 }
31087 pub fn matches(iid: &windows_core::GUID) -> bool {
31088 iid == &<ID3D11VideoContext1 as windows_core::Interface>::IID
31089 || iid == &<ID3D11DeviceChild as windows_core::Interface>::IID
31090 || iid == &<ID3D11VideoContext as windows_core::Interface>::IID
31091 }
31092}
31093#[cfg(feature = "Win32_Graphics_Dxgi_Common")]
31094impl windows_core::RuntimeName for ID3D11VideoContext1 {}
31095#[cfg(feature = "Win32_Graphics_Dxgi_Common")]
31096unsafe impl Send for ID3D11VideoContext1 {}
31097#[cfg(feature = "Win32_Graphics_Dxgi_Common")]
31098unsafe impl Sync for ID3D11VideoContext1 {}
31099windows_core::imp::define_interface!(
31100 ID3D11VideoContext2,
31101 ID3D11VideoContext2_Vtbl,
31102 0xc4e7374c_6243_4d1b_ae87_52b4f740e261
31103);
31104impl core::ops::Deref for ID3D11VideoContext2 {
31105 type Target = ID3D11VideoContext1;
31106 fn deref(&self) -> &Self::Target {
31107 unsafe { core::mem::transmute(self) }
31108 }
31109}
31110windows_core::imp::interface_hierarchy!(
31111 ID3D11VideoContext2,
31112 windows_core::IUnknown,
31113 ID3D11DeviceChild,
31114 ID3D11VideoContext,
31115 ID3D11VideoContext1
31116);
31117impl ID3D11VideoContext2 {
31118 #[cfg(feature = "Win32_Graphics_Dxgi")]
31119 pub unsafe fn VideoProcessorSetOutputHDRMetaData<P0>(
31120 &self,
31121 pvideoprocessor: P0,
31122 r#type: crate::Dxgi::DXGI_HDR_METADATA_TYPE,
31123 size: u32,
31124 phdrmetadata: Option<*const core::ffi::c_void>,
31125 ) where
31126 P0: windows_core::Param<ID3D11VideoProcessor>,
31127 {
31128 unsafe {
31129 (windows_core::Interface::vtable(self).VideoProcessorSetOutputHDRMetaData)(
31130 windows_core::Interface::as_raw(self),
31131 pvideoprocessor.param().abi(),
31132 r#type,
31133 size,
31134 core::mem::transmute(phdrmetadata.unwrap_or(core::mem::zeroed())),
31135 )
31136 }
31137 }
31138 #[cfg(feature = "Win32_Graphics_Dxgi")]
31139 pub unsafe fn VideoProcessorGetOutputHDRMetaData<P0>(
31140 &self,
31141 pvideoprocessor: P0,
31142 ptype: *mut crate::Dxgi::DXGI_HDR_METADATA_TYPE,
31143 size: u32,
31144 pmetadata: Option<*mut core::ffi::c_void>,
31145 ) where
31146 P0: windows_core::Param<ID3D11VideoProcessor>,
31147 {
31148 unsafe {
31149 (windows_core::Interface::vtable(self).VideoProcessorGetOutputHDRMetaData)(
31150 windows_core::Interface::as_raw(self),
31151 pvideoprocessor.param().abi(),
31152 core::mem::transmute(ptype),
31153 size,
31154 core::mem::transmute(pmetadata.unwrap_or(core::mem::zeroed())),
31155 )
31156 }
31157 }
31158 #[cfg(feature = "Win32_Graphics_Dxgi")]
31159 pub unsafe fn VideoProcessorSetStreamHDRMetaData<P0>(
31160 &self,
31161 pvideoprocessor: P0,
31162 streamindex: u32,
31163 r#type: crate::Dxgi::DXGI_HDR_METADATA_TYPE,
31164 size: u32,
31165 phdrmetadata: Option<*const core::ffi::c_void>,
31166 ) where
31167 P0: windows_core::Param<ID3D11VideoProcessor>,
31168 {
31169 unsafe {
31170 (windows_core::Interface::vtable(self).VideoProcessorSetStreamHDRMetaData)(
31171 windows_core::Interface::as_raw(self),
31172 pvideoprocessor.param().abi(),
31173 streamindex,
31174 r#type,
31175 size,
31176 core::mem::transmute(phdrmetadata.unwrap_or(core::mem::zeroed())),
31177 )
31178 }
31179 }
31180 #[cfg(feature = "Win32_Graphics_Dxgi")]
31181 pub unsafe fn VideoProcessorGetStreamHDRMetaData<P0>(
31182 &self,
31183 pvideoprocessor: P0,
31184 streamindex: u32,
31185 ptype: *mut crate::Dxgi::DXGI_HDR_METADATA_TYPE,
31186 size: u32,
31187 pmetadata: Option<*mut core::ffi::c_void>,
31188 ) where
31189 P0: windows_core::Param<ID3D11VideoProcessor>,
31190 {
31191 unsafe {
31192 (windows_core::Interface::vtable(self).VideoProcessorGetStreamHDRMetaData)(
31193 windows_core::Interface::as_raw(self),
31194 pvideoprocessor.param().abi(),
31195 streamindex,
31196 core::mem::transmute(ptype),
31197 size,
31198 core::mem::transmute(pmetadata.unwrap_or(core::mem::zeroed())),
31199 )
31200 }
31201 }
31202}
31203#[repr(C)]
31204pub struct ID3D11VideoContext2_Vtbl {
31205 pub base__: ID3D11VideoContext1_Vtbl,
31206 #[cfg(feature = "Win32_Graphics_Dxgi")]
31207 pub VideoProcessorSetOutputHDRMetaData: unsafe extern "system" fn(
31208 *mut core::ffi::c_void,
31209 *mut core::ffi::c_void,
31210 crate::Dxgi::DXGI_HDR_METADATA_TYPE,
31211 u32,
31212 *const core::ffi::c_void,
31213 ),
31214 #[cfg(not(feature = "Win32_Graphics_Dxgi"))]
31215 VideoProcessorSetOutputHDRMetaData: usize,
31216 #[cfg(feature = "Win32_Graphics_Dxgi")]
31217 pub VideoProcessorGetOutputHDRMetaData: unsafe extern "system" fn(
31218 *mut core::ffi::c_void,
31219 *mut core::ffi::c_void,
31220 *mut crate::Dxgi::DXGI_HDR_METADATA_TYPE,
31221 u32,
31222 *mut core::ffi::c_void,
31223 ),
31224 #[cfg(not(feature = "Win32_Graphics_Dxgi"))]
31225 VideoProcessorGetOutputHDRMetaData: usize,
31226 #[cfg(feature = "Win32_Graphics_Dxgi")]
31227 pub VideoProcessorSetStreamHDRMetaData: unsafe extern "system" fn(
31228 *mut core::ffi::c_void,
31229 *mut core::ffi::c_void,
31230 u32,
31231 crate::Dxgi::DXGI_HDR_METADATA_TYPE,
31232 u32,
31233 *const core::ffi::c_void,
31234 ),
31235 #[cfg(not(feature = "Win32_Graphics_Dxgi"))]
31236 VideoProcessorSetStreamHDRMetaData: usize,
31237 #[cfg(feature = "Win32_Graphics_Dxgi")]
31238 pub VideoProcessorGetStreamHDRMetaData: unsafe extern "system" fn(
31239 *mut core::ffi::c_void,
31240 *mut core::ffi::c_void,
31241 u32,
31242 *mut crate::Dxgi::DXGI_HDR_METADATA_TYPE,
31243 u32,
31244 *mut core::ffi::c_void,
31245 ),
31246 #[cfg(not(feature = "Win32_Graphics_Dxgi"))]
31247 VideoProcessorGetStreamHDRMetaData: usize,
31248}
31249#[cfg(feature = "Win32_Graphics_Dxgi_Common")]
31250pub trait ID3D11VideoContext2_Impl: ID3D11VideoContext1_Impl {
31251 fn VideoProcessorSetOutputHDRMetaData(
31252 &self,
31253 pvideoprocessor: windows_core::Ref<'_, ID3D11VideoProcessor>,
31254 r#type: crate::Dxgi::DXGI_HDR_METADATA_TYPE,
31255 size: u32,
31256 phdrmetadata: *const core::ffi::c_void,
31257 );
31258 fn VideoProcessorGetOutputHDRMetaData(
31259 &self,
31260 pvideoprocessor: windows_core::Ref<'_, ID3D11VideoProcessor>,
31261 ptype: *mut crate::Dxgi::DXGI_HDR_METADATA_TYPE,
31262 size: u32,
31263 pmetadata: *mut core::ffi::c_void,
31264 );
31265 fn VideoProcessorSetStreamHDRMetaData(
31266 &self,
31267 pvideoprocessor: windows_core::Ref<'_, ID3D11VideoProcessor>,
31268 streamindex: u32,
31269 r#type: crate::Dxgi::DXGI_HDR_METADATA_TYPE,
31270 size: u32,
31271 phdrmetadata: *const core::ffi::c_void,
31272 );
31273 fn VideoProcessorGetStreamHDRMetaData(
31274 &self,
31275 pvideoprocessor: windows_core::Ref<'_, ID3D11VideoProcessor>,
31276 streamindex: u32,
31277 ptype: *mut crate::Dxgi::DXGI_HDR_METADATA_TYPE,
31278 size: u32,
31279 pmetadata: *mut core::ffi::c_void,
31280 );
31281}
31282#[cfg(feature = "Win32_Graphics_Dxgi_Common")]
31283impl ID3D11VideoContext2_Vtbl {
31284 pub const fn new<Identity: ID3D11VideoContext2_Impl, const OFFSET: isize>() -> Self {
31285 unsafe extern "system" fn VideoProcessorSetOutputHDRMetaData<
31286 Identity: ID3D11VideoContext2_Impl,
31287 const OFFSET: isize,
31288 >(
31289 this: *mut core::ffi::c_void,
31290 pvideoprocessor: *mut core::ffi::c_void,
31291 r#type: crate::Dxgi::DXGI_HDR_METADATA_TYPE,
31292 size: u32,
31293 phdrmetadata: *const core::ffi::c_void,
31294 ) {
31295 unsafe {
31296 let this: &Identity =
31297 &*((this as *const *const ()).offset(OFFSET) as *const Identity);
31298 ID3D11VideoContext2_Impl::VideoProcessorSetOutputHDRMetaData(
31299 this,
31300 core::mem::transmute_copy(&pvideoprocessor),
31301 core::mem::transmute_copy(&r#type),
31302 core::mem::transmute_copy(&size),
31303 core::mem::transmute_copy(&phdrmetadata),
31304 )
31305 }
31306 }
31307 unsafe extern "system" fn VideoProcessorGetOutputHDRMetaData<
31308 Identity: ID3D11VideoContext2_Impl,
31309 const OFFSET: isize,
31310 >(
31311 this: *mut core::ffi::c_void,
31312 pvideoprocessor: *mut core::ffi::c_void,
31313 ptype: *mut crate::Dxgi::DXGI_HDR_METADATA_TYPE,
31314 size: u32,
31315 pmetadata: *mut core::ffi::c_void,
31316 ) {
31317 unsafe {
31318 let this: &Identity =
31319 &*((this as *const *const ()).offset(OFFSET) as *const Identity);
31320 ID3D11VideoContext2_Impl::VideoProcessorGetOutputHDRMetaData(
31321 this,
31322 core::mem::transmute_copy(&pvideoprocessor),
31323 core::mem::transmute_copy(&ptype),
31324 core::mem::transmute_copy(&size),
31325 core::mem::transmute_copy(&pmetadata),
31326 )
31327 }
31328 }
31329 unsafe extern "system" fn VideoProcessorSetStreamHDRMetaData<
31330 Identity: ID3D11VideoContext2_Impl,
31331 const OFFSET: isize,
31332 >(
31333 this: *mut core::ffi::c_void,
31334 pvideoprocessor: *mut core::ffi::c_void,
31335 streamindex: u32,
31336 r#type: crate::Dxgi::DXGI_HDR_METADATA_TYPE,
31337 size: u32,
31338 phdrmetadata: *const core::ffi::c_void,
31339 ) {
31340 unsafe {
31341 let this: &Identity =
31342 &*((this as *const *const ()).offset(OFFSET) as *const Identity);
31343 ID3D11VideoContext2_Impl::VideoProcessorSetStreamHDRMetaData(
31344 this,
31345 core::mem::transmute_copy(&pvideoprocessor),
31346 core::mem::transmute_copy(&streamindex),
31347 core::mem::transmute_copy(&r#type),
31348 core::mem::transmute_copy(&size),
31349 core::mem::transmute_copy(&phdrmetadata),
31350 )
31351 }
31352 }
31353 unsafe extern "system" fn VideoProcessorGetStreamHDRMetaData<
31354 Identity: ID3D11VideoContext2_Impl,
31355 const OFFSET: isize,
31356 >(
31357 this: *mut core::ffi::c_void,
31358 pvideoprocessor: *mut core::ffi::c_void,
31359 streamindex: u32,
31360 ptype: *mut crate::Dxgi::DXGI_HDR_METADATA_TYPE,
31361 size: u32,
31362 pmetadata: *mut core::ffi::c_void,
31363 ) {
31364 unsafe {
31365 let this: &Identity =
31366 &*((this as *const *const ()).offset(OFFSET) as *const Identity);
31367 ID3D11VideoContext2_Impl::VideoProcessorGetStreamHDRMetaData(
31368 this,
31369 core::mem::transmute_copy(&pvideoprocessor),
31370 core::mem::transmute_copy(&streamindex),
31371 core::mem::transmute_copy(&ptype),
31372 core::mem::transmute_copy(&size),
31373 core::mem::transmute_copy(&pmetadata),
31374 )
31375 }
31376 }
31377 Self {
31378 base__: ID3D11VideoContext1_Vtbl::new::<Identity, OFFSET>(),
31379 VideoProcessorSetOutputHDRMetaData: VideoProcessorSetOutputHDRMetaData::<
31380 Identity,
31381 OFFSET,
31382 >,
31383 VideoProcessorGetOutputHDRMetaData: VideoProcessorGetOutputHDRMetaData::<
31384 Identity,
31385 OFFSET,
31386 >,
31387 VideoProcessorSetStreamHDRMetaData: VideoProcessorSetStreamHDRMetaData::<
31388 Identity,
31389 OFFSET,
31390 >,
31391 VideoProcessorGetStreamHDRMetaData: VideoProcessorGetStreamHDRMetaData::<
31392 Identity,
31393 OFFSET,
31394 >,
31395 }
31396 }
31397 pub fn matches(iid: &windows_core::GUID) -> bool {
31398 iid == &<ID3D11VideoContext2 as windows_core::Interface>::IID
31399 || iid == &<ID3D11DeviceChild as windows_core::Interface>::IID
31400 || iid == &<ID3D11VideoContext as windows_core::Interface>::IID
31401 || iid == &<ID3D11VideoContext1 as windows_core::Interface>::IID
31402 }
31403}
31404#[cfg(feature = "Win32_Graphics_Dxgi_Common")]
31405impl windows_core::RuntimeName for ID3D11VideoContext2 {}
31406#[cfg(feature = "Win32_Graphics_Dxgi_Common")]
31407unsafe impl Send for ID3D11VideoContext2 {}
31408#[cfg(feature = "Win32_Graphics_Dxgi_Common")]
31409unsafe impl Sync for ID3D11VideoContext2 {}
31410windows_core::imp::define_interface!(
31411 ID3D11VideoContext3,
31412 ID3D11VideoContext3_Vtbl,
31413 0xa9e2faa0_cb39_418f_a0b7_d8aad4de672e
31414);
31415impl core::ops::Deref for ID3D11VideoContext3 {
31416 type Target = ID3D11VideoContext2;
31417 fn deref(&self) -> &Self::Target {
31418 unsafe { core::mem::transmute(self) }
31419 }
31420}
31421windows_core::imp::interface_hierarchy!(
31422 ID3D11VideoContext3,
31423 windows_core::IUnknown,
31424 ID3D11DeviceChild,
31425 ID3D11VideoContext,
31426 ID3D11VideoContext1,
31427 ID3D11VideoContext2
31428);
31429impl ID3D11VideoContext3 {
31430 pub unsafe fn DecoderBeginFrame1<P0, P1>(
31431 &self,
31432 pdecoder: P0,
31433 pview: P1,
31434 contentkeysize: u32,
31435 pcontentkey: Option<*const core::ffi::c_void>,
31436 numcomponenthistograms: u32,
31437 phistogramoffsets: Option<*const u32>,
31438 pphistogrambuffers: Option<*const Option<ID3D11Buffer>>,
31439 ) -> windows_core::Result<()>
31440 where
31441 P0: windows_core::Param<ID3D11VideoDecoder>,
31442 P1: windows_core::Param<ID3D11VideoDecoderOutputView>,
31443 {
31444 unsafe {
31445 (windows_core::Interface::vtable(self).DecoderBeginFrame1)(
31446 windows_core::Interface::as_raw(self),
31447 pdecoder.param().abi(),
31448 pview.param().abi(),
31449 contentkeysize,
31450 core::mem::transmute(pcontentkey.unwrap_or(core::mem::zeroed())),
31451 numcomponenthistograms,
31452 core::mem::transmute(phistogramoffsets.unwrap_or(core::mem::zeroed())),
31453 core::mem::transmute(pphistogrambuffers.unwrap_or(core::mem::zeroed())),
31454 )
31455 .ok()
31456 }
31457 }
31458 pub unsafe fn SubmitDecoderBuffers2<P0>(
31459 &self,
31460 pdecoder: P0,
31461 pbufferdesc: &[D3D11_VIDEO_DECODER_BUFFER_DESC2],
31462 ) -> windows_core::Result<()>
31463 where
31464 P0: windows_core::Param<ID3D11VideoDecoder>,
31465 {
31466 unsafe {
31467 (windows_core::Interface::vtable(self).SubmitDecoderBuffers2)(
31468 windows_core::Interface::as_raw(self),
31469 pdecoder.param().abi(),
31470 pbufferdesc.len().try_into().unwrap(),
31471 core::mem::transmute(pbufferdesc.as_ptr()),
31472 )
31473 .ok()
31474 }
31475 }
31476}
31477#[repr(C)]
31478pub struct ID3D11VideoContext3_Vtbl {
31479 pub base__: ID3D11VideoContext2_Vtbl,
31480 pub DecoderBeginFrame1: unsafe extern "system" fn(
31481 *mut core::ffi::c_void,
31482 *mut core::ffi::c_void,
31483 *mut core::ffi::c_void,
31484 u32,
31485 *const core::ffi::c_void,
31486 u32,
31487 *const u32,
31488 *const *mut core::ffi::c_void,
31489 ) -> windows_core::HRESULT,
31490 pub SubmitDecoderBuffers2: unsafe extern "system" fn(
31491 *mut core::ffi::c_void,
31492 *mut core::ffi::c_void,
31493 u32,
31494 *const D3D11_VIDEO_DECODER_BUFFER_DESC2,
31495 ) -> windows_core::HRESULT,
31496}
31497#[cfg(feature = "Win32_Graphics_Dxgi_Common")]
31498pub trait ID3D11VideoContext3_Impl: ID3D11VideoContext2_Impl {
31499 fn DecoderBeginFrame1(
31500 &self,
31501 pdecoder: windows_core::Ref<'_, ID3D11VideoDecoder>,
31502 pview: windows_core::Ref<'_, ID3D11VideoDecoderOutputView>,
31503 contentkeysize: u32,
31504 pcontentkey: *const core::ffi::c_void,
31505 numcomponenthistograms: u32,
31506 phistogramoffsets: *const u32,
31507 pphistogrambuffers: *const Option<ID3D11Buffer>,
31508 ) -> windows_core::Result<()>;
31509 fn SubmitDecoderBuffers2(
31510 &self,
31511 pdecoder: windows_core::Ref<'_, ID3D11VideoDecoder>,
31512 numbuffers: u32,
31513 pbufferdesc: *const D3D11_VIDEO_DECODER_BUFFER_DESC2,
31514 ) -> windows_core::Result<()>;
31515}
31516#[cfg(feature = "Win32_Graphics_Dxgi_Common")]
31517impl ID3D11VideoContext3_Vtbl {
31518 pub const fn new<Identity: ID3D11VideoContext3_Impl, const OFFSET: isize>() -> Self {
31519 unsafe extern "system" fn DecoderBeginFrame1<
31520 Identity: ID3D11VideoContext3_Impl,
31521 const OFFSET: isize,
31522 >(
31523 this: *mut core::ffi::c_void,
31524 pdecoder: *mut core::ffi::c_void,
31525 pview: *mut core::ffi::c_void,
31526 contentkeysize: u32,
31527 pcontentkey: *const core::ffi::c_void,
31528 numcomponenthistograms: u32,
31529 phistogramoffsets: *const u32,
31530 pphistogrambuffers: *const *mut core::ffi::c_void,
31531 ) -> windows_core::HRESULT {
31532 unsafe {
31533 let this: &Identity =
31534 &*((this as *const *const ()).offset(OFFSET) as *const Identity);
31535 ID3D11VideoContext3_Impl::DecoderBeginFrame1(
31536 this,
31537 core::mem::transmute_copy(&pdecoder),
31538 core::mem::transmute_copy(&pview),
31539 core::mem::transmute_copy(&contentkeysize),
31540 core::mem::transmute_copy(&pcontentkey),
31541 core::mem::transmute_copy(&numcomponenthistograms),
31542 core::mem::transmute_copy(&phistogramoffsets),
31543 core::mem::transmute_copy(&pphistogrambuffers),
31544 )
31545 .into()
31546 }
31547 }
31548 unsafe extern "system" fn SubmitDecoderBuffers2<
31549 Identity: ID3D11VideoContext3_Impl,
31550 const OFFSET: isize,
31551 >(
31552 this: *mut core::ffi::c_void,
31553 pdecoder: *mut core::ffi::c_void,
31554 numbuffers: u32,
31555 pbufferdesc: *const D3D11_VIDEO_DECODER_BUFFER_DESC2,
31556 ) -> windows_core::HRESULT {
31557 unsafe {
31558 let this: &Identity =
31559 &*((this as *const *const ()).offset(OFFSET) as *const Identity);
31560 ID3D11VideoContext3_Impl::SubmitDecoderBuffers2(
31561 this,
31562 core::mem::transmute_copy(&pdecoder),
31563 core::mem::transmute_copy(&numbuffers),
31564 core::mem::transmute_copy(&pbufferdesc),
31565 )
31566 .into()
31567 }
31568 }
31569 Self {
31570 base__: ID3D11VideoContext2_Vtbl::new::<Identity, OFFSET>(),
31571 DecoderBeginFrame1: DecoderBeginFrame1::<Identity, OFFSET>,
31572 SubmitDecoderBuffers2: SubmitDecoderBuffers2::<Identity, OFFSET>,
31573 }
31574 }
31575 pub fn matches(iid: &windows_core::GUID) -> bool {
31576 iid == &<ID3D11VideoContext3 as windows_core::Interface>::IID
31577 || iid == &<ID3D11DeviceChild as windows_core::Interface>::IID
31578 || iid == &<ID3D11VideoContext as windows_core::Interface>::IID
31579 || iid == &<ID3D11VideoContext1 as windows_core::Interface>::IID
31580 || iid == &<ID3D11VideoContext2 as windows_core::Interface>::IID
31581 }
31582}
31583#[cfg(feature = "Win32_Graphics_Dxgi_Common")]
31584impl windows_core::RuntimeName for ID3D11VideoContext3 {}
31585#[cfg(feature = "Win32_Graphics_Dxgi_Common")]
31586unsafe impl Send for ID3D11VideoContext3 {}
31587#[cfg(feature = "Win32_Graphics_Dxgi_Common")]
31588unsafe impl Sync for ID3D11VideoContext3 {}
31589windows_core::imp::define_interface!(
31590 ID3D11VideoDecoder,
31591 ID3D11VideoDecoder_Vtbl,
31592 0x3c9c5b51_995d_48d1_9b8d_fa5caeded65c
31593);
31594impl core::ops::Deref for ID3D11VideoDecoder {
31595 type Target = ID3D11DeviceChild;
31596 fn deref(&self) -> &Self::Target {
31597 unsafe { core::mem::transmute(self) }
31598 }
31599}
31600windows_core::imp::interface_hierarchy!(
31601 ID3D11VideoDecoder,
31602 windows_core::IUnknown,
31603 ID3D11DeviceChild
31604);
31605impl ID3D11VideoDecoder {
31606 #[cfg(feature = "Win32_Graphics_Dxgi_Common")]
31607 pub unsafe fn GetCreationParameters(
31608 &self,
31609 pvideodesc: *mut D3D11_VIDEO_DECODER_DESC,
31610 pconfig: *mut D3D11_VIDEO_DECODER_CONFIG,
31611 ) -> windows_core::Result<()> {
31612 unsafe {
31613 (windows_core::Interface::vtable(self).GetCreationParameters)(
31614 windows_core::Interface::as_raw(self),
31615 core::mem::transmute(pvideodesc),
31616 core::mem::transmute(pconfig),
31617 )
31618 .ok()
31619 }
31620 }
31621 pub unsafe fn GetDriverHandle(&self) -> windows_core::Result<crate::Foundation::HANDLE> {
31622 unsafe {
31623 let mut result__ = core::mem::zeroed();
31624 (windows_core::Interface::vtable(self).GetDriverHandle)(
31625 windows_core::Interface::as_raw(self),
31626 &mut result__,
31627 )
31628 .map(|| result__)
31629 }
31630 }
31631}
31632#[repr(C)]
31633pub struct ID3D11VideoDecoder_Vtbl {
31634 pub base__: ID3D11DeviceChild_Vtbl,
31635 #[cfg(feature = "Win32_Graphics_Dxgi_Common")]
31636 pub GetCreationParameters: unsafe extern "system" fn(
31637 *mut core::ffi::c_void,
31638 *mut D3D11_VIDEO_DECODER_DESC,
31639 *mut D3D11_VIDEO_DECODER_CONFIG,
31640 ) -> windows_core::HRESULT,
31641 #[cfg(not(feature = "Win32_Graphics_Dxgi_Common"))]
31642 GetCreationParameters: usize,
31643 pub GetDriverHandle: unsafe extern "system" fn(
31644 *mut core::ffi::c_void,
31645 *mut crate::Foundation::HANDLE,
31646 ) -> windows_core::HRESULT,
31647}
31648#[cfg(feature = "Win32_Graphics_Dxgi_Common")]
31649pub trait ID3D11VideoDecoder_Impl: ID3D11DeviceChild_Impl {
31650 fn GetCreationParameters(
31651 &self,
31652 pvideodesc: *mut D3D11_VIDEO_DECODER_DESC,
31653 pconfig: *mut D3D11_VIDEO_DECODER_CONFIG,
31654 ) -> windows_core::Result<()>;
31655 fn GetDriverHandle(&self) -> windows_core::Result<crate::Foundation::HANDLE>;
31656}
31657#[cfg(feature = "Win32_Graphics_Dxgi_Common")]
31658impl ID3D11VideoDecoder_Vtbl {
31659 pub const fn new<Identity: ID3D11VideoDecoder_Impl, const OFFSET: isize>() -> Self {
31660 unsafe extern "system" fn GetCreationParameters<
31661 Identity: ID3D11VideoDecoder_Impl,
31662 const OFFSET: isize,
31663 >(
31664 this: *mut core::ffi::c_void,
31665 pvideodesc: *mut D3D11_VIDEO_DECODER_DESC,
31666 pconfig: *mut D3D11_VIDEO_DECODER_CONFIG,
31667 ) -> windows_core::HRESULT {
31668 unsafe {
31669 let this: &Identity =
31670 &*((this as *const *const ()).offset(OFFSET) as *const Identity);
31671 ID3D11VideoDecoder_Impl::GetCreationParameters(
31672 this,
31673 core::mem::transmute_copy(&pvideodesc),
31674 core::mem::transmute_copy(&pconfig),
31675 )
31676 .into()
31677 }
31678 }
31679 unsafe extern "system" fn GetDriverHandle<
31680 Identity: ID3D11VideoDecoder_Impl,
31681 const OFFSET: isize,
31682 >(
31683 this: *mut core::ffi::c_void,
31684 pdriverhandle: *mut crate::Foundation::HANDLE,
31685 ) -> windows_core::HRESULT {
31686 unsafe {
31687 let this: &Identity =
31688 &*((this as *const *const ()).offset(OFFSET) as *const Identity);
31689 match ID3D11VideoDecoder_Impl::GetDriverHandle(this) {
31690 Ok(ok__) => {
31691 pdriverhandle.write(core::mem::transmute(ok__));
31692 windows_core::HRESULT(0)
31693 }
31694 Err(err) => err.into(),
31695 }
31696 }
31697 }
31698 Self {
31699 base__: ID3D11DeviceChild_Vtbl::new::<Identity, OFFSET>(),
31700 GetCreationParameters: GetCreationParameters::<Identity, OFFSET>,
31701 GetDriverHandle: GetDriverHandle::<Identity, OFFSET>,
31702 }
31703 }
31704 pub fn matches(iid: &windows_core::GUID) -> bool {
31705 iid == &<ID3D11VideoDecoder as windows_core::Interface>::IID
31706 || iid == &<ID3D11DeviceChild as windows_core::Interface>::IID
31707 }
31708}
31709#[cfg(feature = "Win32_Graphics_Dxgi_Common")]
31710impl windows_core::RuntimeName for ID3D11VideoDecoder {}
31711#[cfg(feature = "Win32_Graphics_Dxgi_Common")]
31712unsafe impl Send for ID3D11VideoDecoder {}
31713#[cfg(feature = "Win32_Graphics_Dxgi_Common")]
31714unsafe impl Sync for ID3D11VideoDecoder {}
31715windows_core::imp::define_interface!(
31716 ID3D11VideoDecoderOutputView,
31717 ID3D11VideoDecoderOutputView_Vtbl,
31718 0xc2931aea_2a85_4f20_860f_fba1fd256e18
31719);
31720impl core::ops::Deref for ID3D11VideoDecoderOutputView {
31721 type Target = ID3D11View;
31722 fn deref(&self) -> &Self::Target {
31723 unsafe { core::mem::transmute(self) }
31724 }
31725}
31726windows_core::imp::interface_hierarchy!(
31727 ID3D11VideoDecoderOutputView,
31728 windows_core::IUnknown,
31729 ID3D11DeviceChild,
31730 ID3D11View
31731);
31732impl ID3D11VideoDecoderOutputView {
31733 pub unsafe fn GetDesc(&self, pdesc: *mut D3D11_VIDEO_DECODER_OUTPUT_VIEW_DESC) {
31734 unsafe {
31735 (windows_core::Interface::vtable(self).GetDesc)(
31736 windows_core::Interface::as_raw(self),
31737 core::mem::transmute(pdesc),
31738 )
31739 }
31740 }
31741}
31742#[repr(C)]
31743pub struct ID3D11VideoDecoderOutputView_Vtbl {
31744 pub base__: ID3D11View_Vtbl,
31745 pub GetDesc: unsafe extern "system" fn(
31746 *mut core::ffi::c_void,
31747 *mut D3D11_VIDEO_DECODER_OUTPUT_VIEW_DESC,
31748 ),
31749}
31750pub trait ID3D11VideoDecoderOutputView_Impl: ID3D11View_Impl {
31751 fn GetDesc(&self, pdesc: *mut D3D11_VIDEO_DECODER_OUTPUT_VIEW_DESC);
31752}
31753impl ID3D11VideoDecoderOutputView_Vtbl {
31754 pub const fn new<Identity: ID3D11VideoDecoderOutputView_Impl, const OFFSET: isize>() -> Self {
31755 unsafe extern "system" fn GetDesc<
31756 Identity: ID3D11VideoDecoderOutputView_Impl,
31757 const OFFSET: isize,
31758 >(
31759 this: *mut core::ffi::c_void,
31760 pdesc: *mut D3D11_VIDEO_DECODER_OUTPUT_VIEW_DESC,
31761 ) {
31762 unsafe {
31763 let this: &Identity =
31764 &*((this as *const *const ()).offset(OFFSET) as *const Identity);
31765 ID3D11VideoDecoderOutputView_Impl::GetDesc(this, core::mem::transmute_copy(&pdesc))
31766 }
31767 }
31768 Self {
31769 base__: ID3D11View_Vtbl::new::<Identity, OFFSET>(),
31770 GetDesc: GetDesc::<Identity, OFFSET>,
31771 }
31772 }
31773 pub fn matches(iid: &windows_core::GUID) -> bool {
31774 iid == &<ID3D11VideoDecoderOutputView as windows_core::Interface>::IID
31775 || iid == &<ID3D11DeviceChild as windows_core::Interface>::IID
31776 || iid == &<ID3D11View as windows_core::Interface>::IID
31777 }
31778}
31779impl windows_core::RuntimeName for ID3D11VideoDecoderOutputView {}
31780unsafe impl Send for ID3D11VideoDecoderOutputView {}
31781unsafe impl Sync for ID3D11VideoDecoderOutputView {}
31782windows_core::imp::define_interface!(
31783 ID3D11VideoDevice,
31784 ID3D11VideoDevice_Vtbl,
31785 0x10ec4d5b_975a_4689_b9e4_d0aac30fe333
31786);
31787windows_core::imp::interface_hierarchy!(ID3D11VideoDevice, windows_core::IUnknown);
31788impl ID3D11VideoDevice {
31789 #[cfg(feature = "Win32_Graphics_Dxgi_Common")]
31790 pub unsafe fn CreateVideoDecoder(
31791 &self,
31792 pvideodesc: *const D3D11_VIDEO_DECODER_DESC,
31793 pconfig: *const D3D11_VIDEO_DECODER_CONFIG,
31794 ) -> windows_core::Result<ID3D11VideoDecoder> {
31795 unsafe {
31796 let mut result__ = core::mem::zeroed();
31797 (windows_core::Interface::vtable(self).CreateVideoDecoder)(
31798 windows_core::Interface::as_raw(self),
31799 pvideodesc,
31800 pconfig,
31801 &mut result__,
31802 )
31803 .and_then(|| windows_core::Type::from_abi(result__))
31804 }
31805 }
31806 pub unsafe fn CreateVideoProcessor<P0>(
31807 &self,
31808 penum: P0,
31809 rateconversionindex: u32,
31810 ) -> windows_core::Result<ID3D11VideoProcessor>
31811 where
31812 P0: windows_core::Param<ID3D11VideoProcessorEnumerator>,
31813 {
31814 unsafe {
31815 let mut result__ = core::mem::zeroed();
31816 (windows_core::Interface::vtable(self).CreateVideoProcessor)(
31817 windows_core::Interface::as_raw(self),
31818 penum.param().abi(),
31819 rateconversionindex,
31820 &mut result__,
31821 )
31822 .and_then(|| windows_core::Type::from_abi(result__))
31823 }
31824 }
31825 pub unsafe fn CreateAuthenticatedChannel(
31826 &self,
31827 channeltype: D3D11_AUTHENTICATED_CHANNEL_TYPE,
31828 ) -> windows_core::Result<ID3D11AuthenticatedChannel> {
31829 unsafe {
31830 let mut result__ = core::mem::zeroed();
31831 (windows_core::Interface::vtable(self).CreateAuthenticatedChannel)(
31832 windows_core::Interface::as_raw(self),
31833 channeltype,
31834 &mut result__,
31835 )
31836 .and_then(|| windows_core::Type::from_abi(result__))
31837 }
31838 }
31839 pub unsafe fn CreateCryptoSession(
31840 &self,
31841 pcryptotype: *const windows_core::GUID,
31842 pdecoderprofile: Option<*const windows_core::GUID>,
31843 pkeyexchangetype: *const windows_core::GUID,
31844 ) -> windows_core::Result<ID3D11CryptoSession> {
31845 unsafe {
31846 let mut result__ = core::mem::zeroed();
31847 (windows_core::Interface::vtable(self).CreateCryptoSession)(
31848 windows_core::Interface::as_raw(self),
31849 pcryptotype,
31850 core::mem::transmute(pdecoderprofile.unwrap_or(core::mem::zeroed())),
31851 pkeyexchangetype,
31852 &mut result__,
31853 )
31854 .and_then(|| windows_core::Type::from_abi(result__))
31855 }
31856 }
31857 pub unsafe fn CreateVideoDecoderOutputView<P0>(
31858 &self,
31859 presource: P0,
31860 pdesc: *const D3D11_VIDEO_DECODER_OUTPUT_VIEW_DESC,
31861 ppvdovview: Option<*mut Option<ID3D11VideoDecoderOutputView>>,
31862 ) -> windows_core::Result<()>
31863 where
31864 P0: windows_core::Param<ID3D11Resource>,
31865 {
31866 unsafe {
31867 (windows_core::Interface::vtable(self).CreateVideoDecoderOutputView)(
31868 windows_core::Interface::as_raw(self),
31869 presource.param().abi(),
31870 pdesc,
31871 core::mem::transmute(ppvdovview.unwrap_or(core::mem::zeroed())),
31872 )
31873 .ok()
31874 }
31875 }
31876 pub unsafe fn CreateVideoProcessorInputView<P0, P1>(
31877 &self,
31878 presource: P0,
31879 penum: P1,
31880 pdesc: *const D3D11_VIDEO_PROCESSOR_INPUT_VIEW_DESC,
31881 ppvpiview: Option<*mut Option<ID3D11VideoProcessorInputView>>,
31882 ) -> windows_core::Result<()>
31883 where
31884 P0: windows_core::Param<ID3D11Resource>,
31885 P1: windows_core::Param<ID3D11VideoProcessorEnumerator>,
31886 {
31887 unsafe {
31888 (windows_core::Interface::vtable(self).CreateVideoProcessorInputView)(
31889 windows_core::Interface::as_raw(self),
31890 presource.param().abi(),
31891 penum.param().abi(),
31892 pdesc,
31893 core::mem::transmute(ppvpiview.unwrap_or(core::mem::zeroed())),
31894 )
31895 .ok()
31896 }
31897 }
31898 pub unsafe fn CreateVideoProcessorOutputView<P0, P1>(
31899 &self,
31900 presource: P0,
31901 penum: P1,
31902 pdesc: *const D3D11_VIDEO_PROCESSOR_OUTPUT_VIEW_DESC,
31903 ppvpoview: Option<*mut Option<ID3D11VideoProcessorOutputView>>,
31904 ) -> windows_core::Result<()>
31905 where
31906 P0: windows_core::Param<ID3D11Resource>,
31907 P1: windows_core::Param<ID3D11VideoProcessorEnumerator>,
31908 {
31909 unsafe {
31910 (windows_core::Interface::vtable(self).CreateVideoProcessorOutputView)(
31911 windows_core::Interface::as_raw(self),
31912 presource.param().abi(),
31913 penum.param().abi(),
31914 pdesc,
31915 core::mem::transmute(ppvpoview.unwrap_or(core::mem::zeroed())),
31916 )
31917 .ok()
31918 }
31919 }
31920 #[cfg(feature = "Win32_Graphics_Dxgi_Common")]
31921 pub unsafe fn CreateVideoProcessorEnumerator(
31922 &self,
31923 pdesc: *const D3D11_VIDEO_PROCESSOR_CONTENT_DESC,
31924 ) -> windows_core::Result<ID3D11VideoProcessorEnumerator> {
31925 unsafe {
31926 let mut result__ = core::mem::zeroed();
31927 (windows_core::Interface::vtable(self).CreateVideoProcessorEnumerator)(
31928 windows_core::Interface::as_raw(self),
31929 pdesc,
31930 &mut result__,
31931 )
31932 .and_then(|| windows_core::Type::from_abi(result__))
31933 }
31934 }
31935 pub unsafe fn GetVideoDecoderProfileCount(&self) -> u32 {
31936 unsafe {
31937 (windows_core::Interface::vtable(self).GetVideoDecoderProfileCount)(
31938 windows_core::Interface::as_raw(self),
31939 )
31940 }
31941 }
31942 pub unsafe fn GetVideoDecoderProfile(
31943 &self,
31944 index: u32,
31945 ) -> windows_core::Result<windows_core::GUID> {
31946 unsafe {
31947 let mut result__ = core::mem::zeroed();
31948 (windows_core::Interface::vtable(self).GetVideoDecoderProfile)(
31949 windows_core::Interface::as_raw(self),
31950 index,
31951 &mut result__,
31952 )
31953 .map(|| result__)
31954 }
31955 }
31956 #[cfg(feature = "Win32_Graphics_Dxgi_Common")]
31957 pub unsafe fn CheckVideoDecoderFormat(
31958 &self,
31959 pdecoderprofile: *const windows_core::GUID,
31960 format: crate::Dxgi::Common::DXGI_FORMAT,
31961 ) -> windows_core::Result<crate::Foundation::BOOL> {
31962 unsafe {
31963 let mut result__ = core::mem::zeroed();
31964 (windows_core::Interface::vtable(self).CheckVideoDecoderFormat)(
31965 windows_core::Interface::as_raw(self),
31966 pdecoderprofile,
31967 format,
31968 &mut result__,
31969 )
31970 .map(|| result__)
31971 }
31972 }
31973 #[cfg(feature = "Win32_Graphics_Dxgi_Common")]
31974 pub unsafe fn GetVideoDecoderConfigCount(
31975 &self,
31976 pdesc: *const D3D11_VIDEO_DECODER_DESC,
31977 ) -> windows_core::Result<u32> {
31978 unsafe {
31979 let mut result__ = core::mem::zeroed();
31980 (windows_core::Interface::vtable(self).GetVideoDecoderConfigCount)(
31981 windows_core::Interface::as_raw(self),
31982 pdesc,
31983 &mut result__,
31984 )
31985 .map(|| result__)
31986 }
31987 }
31988 #[cfg(feature = "Win32_Graphics_Dxgi_Common")]
31989 pub unsafe fn GetVideoDecoderConfig(
31990 &self,
31991 pdesc: *const D3D11_VIDEO_DECODER_DESC,
31992 index: u32,
31993 pconfig: *mut D3D11_VIDEO_DECODER_CONFIG,
31994 ) -> windows_core::Result<()> {
31995 unsafe {
31996 (windows_core::Interface::vtable(self).GetVideoDecoderConfig)(
31997 windows_core::Interface::as_raw(self),
31998 pdesc,
31999 index,
32000 core::mem::transmute(pconfig),
32001 )
32002 .ok()
32003 }
32004 }
32005 pub unsafe fn GetContentProtectionCaps(
32006 &self,
32007 pcryptotype: Option<*const windows_core::GUID>,
32008 pdecoderprofile: Option<*const windows_core::GUID>,
32009 pcaps: *mut D3D11_VIDEO_CONTENT_PROTECTION_CAPS,
32010 ) -> windows_core::Result<()> {
32011 unsafe {
32012 (windows_core::Interface::vtable(self).GetContentProtectionCaps)(
32013 windows_core::Interface::as_raw(self),
32014 core::mem::transmute(pcryptotype.unwrap_or(core::mem::zeroed())),
32015 core::mem::transmute(pdecoderprofile.unwrap_or(core::mem::zeroed())),
32016 core::mem::transmute(pcaps),
32017 )
32018 .ok()
32019 }
32020 }
32021 pub unsafe fn CheckCryptoKeyExchange(
32022 &self,
32023 pcryptotype: *const windows_core::GUID,
32024 pdecoderprofile: Option<*const windows_core::GUID>,
32025 index: u32,
32026 ) -> windows_core::Result<windows_core::GUID> {
32027 unsafe {
32028 let mut result__ = core::mem::zeroed();
32029 (windows_core::Interface::vtable(self).CheckCryptoKeyExchange)(
32030 windows_core::Interface::as_raw(self),
32031 pcryptotype,
32032 core::mem::transmute(pdecoderprofile.unwrap_or(core::mem::zeroed())),
32033 index,
32034 &mut result__,
32035 )
32036 .map(|| result__)
32037 }
32038 }
32039 pub unsafe fn SetPrivateData(
32040 &self,
32041 guid: *const windows_core::GUID,
32042 datasize: u32,
32043 pdata: Option<*const core::ffi::c_void>,
32044 ) -> windows_core::Result<()> {
32045 unsafe {
32046 (windows_core::Interface::vtable(self).SetPrivateData)(
32047 windows_core::Interface::as_raw(self),
32048 guid,
32049 datasize,
32050 core::mem::transmute(pdata.unwrap_or(core::mem::zeroed())),
32051 )
32052 .ok()
32053 }
32054 }
32055 pub unsafe fn SetPrivateDataInterface<P1>(
32056 &self,
32057 guid: *const windows_core::GUID,
32058 pdata: P1,
32059 ) -> windows_core::Result<()>
32060 where
32061 P1: windows_core::Param<windows_core::IUnknown>,
32062 {
32063 unsafe {
32064 (windows_core::Interface::vtable(self).SetPrivateDataInterface)(
32065 windows_core::Interface::as_raw(self),
32066 guid,
32067 pdata.param().abi(),
32068 )
32069 .ok()
32070 }
32071 }
32072}
32073#[repr(C)]
32074pub struct ID3D11VideoDevice_Vtbl {
32075 pub base__: windows_core::IUnknown_Vtbl,
32076 #[cfg(feature = "Win32_Graphics_Dxgi_Common")]
32077 pub CreateVideoDecoder: unsafe extern "system" fn(
32078 *mut core::ffi::c_void,
32079 *const D3D11_VIDEO_DECODER_DESC,
32080 *const D3D11_VIDEO_DECODER_CONFIG,
32081 *mut *mut core::ffi::c_void,
32082 ) -> windows_core::HRESULT,
32083 #[cfg(not(feature = "Win32_Graphics_Dxgi_Common"))]
32084 CreateVideoDecoder: usize,
32085 pub CreateVideoProcessor: unsafe extern "system" fn(
32086 *mut core::ffi::c_void,
32087 *mut core::ffi::c_void,
32088 u32,
32089 *mut *mut core::ffi::c_void,
32090 ) -> windows_core::HRESULT,
32091 pub CreateAuthenticatedChannel: unsafe extern "system" fn(
32092 *mut core::ffi::c_void,
32093 D3D11_AUTHENTICATED_CHANNEL_TYPE,
32094 *mut *mut core::ffi::c_void,
32095 ) -> windows_core::HRESULT,
32096 pub CreateCryptoSession: unsafe extern "system" fn(
32097 *mut core::ffi::c_void,
32098 *const windows_core::GUID,
32099 *const windows_core::GUID,
32100 *const windows_core::GUID,
32101 *mut *mut core::ffi::c_void,
32102 ) -> windows_core::HRESULT,
32103 pub CreateVideoDecoderOutputView: unsafe extern "system" fn(
32104 *mut core::ffi::c_void,
32105 *mut core::ffi::c_void,
32106 *const D3D11_VIDEO_DECODER_OUTPUT_VIEW_DESC,
32107 *mut *mut core::ffi::c_void,
32108 ) -> windows_core::HRESULT,
32109 pub CreateVideoProcessorInputView: unsafe extern "system" fn(
32110 *mut core::ffi::c_void,
32111 *mut core::ffi::c_void,
32112 *mut core::ffi::c_void,
32113 *const D3D11_VIDEO_PROCESSOR_INPUT_VIEW_DESC,
32114 *mut *mut core::ffi::c_void,
32115 ) -> windows_core::HRESULT,
32116 pub CreateVideoProcessorOutputView: unsafe extern "system" fn(
32117 *mut core::ffi::c_void,
32118 *mut core::ffi::c_void,
32119 *mut core::ffi::c_void,
32120 *const D3D11_VIDEO_PROCESSOR_OUTPUT_VIEW_DESC,
32121 *mut *mut core::ffi::c_void,
32122 ) -> windows_core::HRESULT,
32123 #[cfg(feature = "Win32_Graphics_Dxgi_Common")]
32124 pub CreateVideoProcessorEnumerator: unsafe extern "system" fn(
32125 *mut core::ffi::c_void,
32126 *const D3D11_VIDEO_PROCESSOR_CONTENT_DESC,
32127 *mut *mut core::ffi::c_void,
32128 ) -> windows_core::HRESULT,
32129 #[cfg(not(feature = "Win32_Graphics_Dxgi_Common"))]
32130 CreateVideoProcessorEnumerator: usize,
32131 pub GetVideoDecoderProfileCount: unsafe extern "system" fn(*mut core::ffi::c_void) -> u32,
32132 pub GetVideoDecoderProfile: unsafe extern "system" fn(
32133 *mut core::ffi::c_void,
32134 u32,
32135 *mut windows_core::GUID,
32136 ) -> windows_core::HRESULT,
32137 #[cfg(feature = "Win32_Graphics_Dxgi_Common")]
32138 pub CheckVideoDecoderFormat: unsafe extern "system" fn(
32139 *mut core::ffi::c_void,
32140 *const windows_core::GUID,
32141 crate::Dxgi::Common::DXGI_FORMAT,
32142 *mut crate::Foundation::BOOL,
32143 ) -> windows_core::HRESULT,
32144 #[cfg(not(feature = "Win32_Graphics_Dxgi_Common"))]
32145 CheckVideoDecoderFormat: usize,
32146 #[cfg(feature = "Win32_Graphics_Dxgi_Common")]
32147 pub GetVideoDecoderConfigCount: unsafe extern "system" fn(
32148 *mut core::ffi::c_void,
32149 *const D3D11_VIDEO_DECODER_DESC,
32150 *mut u32,
32151 ) -> windows_core::HRESULT,
32152 #[cfg(not(feature = "Win32_Graphics_Dxgi_Common"))]
32153 GetVideoDecoderConfigCount: usize,
32154 #[cfg(feature = "Win32_Graphics_Dxgi_Common")]
32155 pub GetVideoDecoderConfig: unsafe extern "system" fn(
32156 *mut core::ffi::c_void,
32157 *const D3D11_VIDEO_DECODER_DESC,
32158 u32,
32159 *mut D3D11_VIDEO_DECODER_CONFIG,
32160 ) -> windows_core::HRESULT,
32161 #[cfg(not(feature = "Win32_Graphics_Dxgi_Common"))]
32162 GetVideoDecoderConfig: usize,
32163 pub GetContentProtectionCaps: unsafe extern "system" fn(
32164 *mut core::ffi::c_void,
32165 *const windows_core::GUID,
32166 *const windows_core::GUID,
32167 *mut D3D11_VIDEO_CONTENT_PROTECTION_CAPS,
32168 ) -> windows_core::HRESULT,
32169 pub CheckCryptoKeyExchange: unsafe extern "system" fn(
32170 *mut core::ffi::c_void,
32171 *const windows_core::GUID,
32172 *const windows_core::GUID,
32173 u32,
32174 *mut windows_core::GUID,
32175 ) -> windows_core::HRESULT,
32176 pub SetPrivateData: unsafe extern "system" fn(
32177 *mut core::ffi::c_void,
32178 *const windows_core::GUID,
32179 u32,
32180 *const core::ffi::c_void,
32181 ) -> windows_core::HRESULT,
32182 pub SetPrivateDataInterface: unsafe extern "system" fn(
32183 *mut core::ffi::c_void,
32184 *const windows_core::GUID,
32185 *mut core::ffi::c_void,
32186 ) -> windows_core::HRESULT,
32187}
32188#[cfg(feature = "Win32_Graphics_Dxgi_Common")]
32189pub trait ID3D11VideoDevice_Impl: windows_core::IUnknownImpl {
32190 fn CreateVideoDecoder(
32191 &self,
32192 pvideodesc: *const D3D11_VIDEO_DECODER_DESC,
32193 pconfig: *const D3D11_VIDEO_DECODER_CONFIG,
32194 ) -> windows_core::Result<ID3D11VideoDecoder>;
32195 fn CreateVideoProcessor(
32196 &self,
32197 penum: windows_core::Ref<'_, ID3D11VideoProcessorEnumerator>,
32198 rateconversionindex: u32,
32199 ) -> windows_core::Result<ID3D11VideoProcessor>;
32200 fn CreateAuthenticatedChannel(
32201 &self,
32202 channeltype: D3D11_AUTHENTICATED_CHANNEL_TYPE,
32203 ) -> windows_core::Result<ID3D11AuthenticatedChannel>;
32204 fn CreateCryptoSession(
32205 &self,
32206 pcryptotype: *const windows_core::GUID,
32207 pdecoderprofile: *const windows_core::GUID,
32208 pkeyexchangetype: *const windows_core::GUID,
32209 ) -> windows_core::Result<ID3D11CryptoSession>;
32210 fn CreateVideoDecoderOutputView(
32211 &self,
32212 presource: windows_core::Ref<'_, ID3D11Resource>,
32213 pdesc: *const D3D11_VIDEO_DECODER_OUTPUT_VIEW_DESC,
32214 ppvdovview: windows_core::OutRef<'_, ID3D11VideoDecoderOutputView>,
32215 ) -> windows_core::Result<()>;
32216 fn CreateVideoProcessorInputView(
32217 &self,
32218 presource: windows_core::Ref<'_, ID3D11Resource>,
32219 penum: windows_core::Ref<'_, ID3D11VideoProcessorEnumerator>,
32220 pdesc: *const D3D11_VIDEO_PROCESSOR_INPUT_VIEW_DESC,
32221 ppvpiview: windows_core::OutRef<'_, ID3D11VideoProcessorInputView>,
32222 ) -> windows_core::Result<()>;
32223 fn CreateVideoProcessorOutputView(
32224 &self,
32225 presource: windows_core::Ref<'_, ID3D11Resource>,
32226 penum: windows_core::Ref<'_, ID3D11VideoProcessorEnumerator>,
32227 pdesc: *const D3D11_VIDEO_PROCESSOR_OUTPUT_VIEW_DESC,
32228 ppvpoview: windows_core::OutRef<'_, ID3D11VideoProcessorOutputView>,
32229 ) -> windows_core::Result<()>;
32230 fn CreateVideoProcessorEnumerator(
32231 &self,
32232 pdesc: *const D3D11_VIDEO_PROCESSOR_CONTENT_DESC,
32233 ) -> windows_core::Result<ID3D11VideoProcessorEnumerator>;
32234 fn GetVideoDecoderProfileCount(&self) -> u32;
32235 fn GetVideoDecoderProfile(&self, index: u32) -> windows_core::Result<windows_core::GUID>;
32236 fn CheckVideoDecoderFormat(
32237 &self,
32238 pdecoderprofile: *const windows_core::GUID,
32239 format: crate::Dxgi::Common::DXGI_FORMAT,
32240 ) -> windows_core::Result<crate::Foundation::BOOL>;
32241 fn GetVideoDecoderConfigCount(
32242 &self,
32243 pdesc: *const D3D11_VIDEO_DECODER_DESC,
32244 ) -> windows_core::Result<u32>;
32245 fn GetVideoDecoderConfig(
32246 &self,
32247 pdesc: *const D3D11_VIDEO_DECODER_DESC,
32248 index: u32,
32249 pconfig: *mut D3D11_VIDEO_DECODER_CONFIG,
32250 ) -> windows_core::Result<()>;
32251 fn GetContentProtectionCaps(
32252 &self,
32253 pcryptotype: *const windows_core::GUID,
32254 pdecoderprofile: *const windows_core::GUID,
32255 pcaps: *mut D3D11_VIDEO_CONTENT_PROTECTION_CAPS,
32256 ) -> windows_core::Result<()>;
32257 fn CheckCryptoKeyExchange(
32258 &self,
32259 pcryptotype: *const windows_core::GUID,
32260 pdecoderprofile: *const windows_core::GUID,
32261 index: u32,
32262 ) -> windows_core::Result<windows_core::GUID>;
32263 fn SetPrivateData(
32264 &self,
32265 guid: *const windows_core::GUID,
32266 datasize: u32,
32267 pdata: *const core::ffi::c_void,
32268 ) -> windows_core::Result<()>;
32269 fn SetPrivateDataInterface(
32270 &self,
32271 guid: *const windows_core::GUID,
32272 pdata: windows_core::Ref<'_, windows_core::IUnknown>,
32273 ) -> windows_core::Result<()>;
32274}
32275#[cfg(feature = "Win32_Graphics_Dxgi_Common")]
32276impl ID3D11VideoDevice_Vtbl {
32277 pub const fn new<Identity: ID3D11VideoDevice_Impl, const OFFSET: isize>() -> Self {
32278 unsafe extern "system" fn CreateVideoDecoder<
32279 Identity: ID3D11VideoDevice_Impl,
32280 const OFFSET: isize,
32281 >(
32282 this: *mut core::ffi::c_void,
32283 pvideodesc: *const D3D11_VIDEO_DECODER_DESC,
32284 pconfig: *const D3D11_VIDEO_DECODER_CONFIG,
32285 ppdecoder: *mut *mut core::ffi::c_void,
32286 ) -> windows_core::HRESULT {
32287 unsafe {
32288 let this: &Identity =
32289 &*((this as *const *const ()).offset(OFFSET) as *const Identity);
32290 match ID3D11VideoDevice_Impl::CreateVideoDecoder(
32291 this,
32292 core::mem::transmute_copy(&pvideodesc),
32293 core::mem::transmute_copy(&pconfig),
32294 ) {
32295 Ok(ok__) => {
32296 ppdecoder.write(core::mem::transmute(ok__));
32297 windows_core::HRESULT(0)
32298 }
32299 Err(err) => err.into(),
32300 }
32301 }
32302 }
32303 unsafe extern "system" fn CreateVideoProcessor<
32304 Identity: ID3D11VideoDevice_Impl,
32305 const OFFSET: isize,
32306 >(
32307 this: *mut core::ffi::c_void,
32308 penum: *mut core::ffi::c_void,
32309 rateconversionindex: u32,
32310 ppvideoprocessor: *mut *mut core::ffi::c_void,
32311 ) -> windows_core::HRESULT {
32312 unsafe {
32313 let this: &Identity =
32314 &*((this as *const *const ()).offset(OFFSET) as *const Identity);
32315 match ID3D11VideoDevice_Impl::CreateVideoProcessor(
32316 this,
32317 core::mem::transmute_copy(&penum),
32318 core::mem::transmute_copy(&rateconversionindex),
32319 ) {
32320 Ok(ok__) => {
32321 ppvideoprocessor.write(core::mem::transmute(ok__));
32322 windows_core::HRESULT(0)
32323 }
32324 Err(err) => err.into(),
32325 }
32326 }
32327 }
32328 unsafe extern "system" fn CreateAuthenticatedChannel<
32329 Identity: ID3D11VideoDevice_Impl,
32330 const OFFSET: isize,
32331 >(
32332 this: *mut core::ffi::c_void,
32333 channeltype: D3D11_AUTHENTICATED_CHANNEL_TYPE,
32334 ppauthenticatedchannel: *mut *mut core::ffi::c_void,
32335 ) -> windows_core::HRESULT {
32336 unsafe {
32337 let this: &Identity =
32338 &*((this as *const *const ()).offset(OFFSET) as *const Identity);
32339 match ID3D11VideoDevice_Impl::CreateAuthenticatedChannel(
32340 this,
32341 core::mem::transmute_copy(&channeltype),
32342 ) {
32343 Ok(ok__) => {
32344 ppauthenticatedchannel.write(core::mem::transmute(ok__));
32345 windows_core::HRESULT(0)
32346 }
32347 Err(err) => err.into(),
32348 }
32349 }
32350 }
32351 unsafe extern "system" fn CreateCryptoSession<
32352 Identity: ID3D11VideoDevice_Impl,
32353 const OFFSET: isize,
32354 >(
32355 this: *mut core::ffi::c_void,
32356 pcryptotype: *const windows_core::GUID,
32357 pdecoderprofile: *const windows_core::GUID,
32358 pkeyexchangetype: *const windows_core::GUID,
32359 ppcryptosession: *mut *mut core::ffi::c_void,
32360 ) -> windows_core::HRESULT {
32361 unsafe {
32362 let this: &Identity =
32363 &*((this as *const *const ()).offset(OFFSET) as *const Identity);
32364 match ID3D11VideoDevice_Impl::CreateCryptoSession(
32365 this,
32366 core::mem::transmute_copy(&pcryptotype),
32367 core::mem::transmute_copy(&pdecoderprofile),
32368 core::mem::transmute_copy(&pkeyexchangetype),
32369 ) {
32370 Ok(ok__) => {
32371 ppcryptosession.write(core::mem::transmute(ok__));
32372 windows_core::HRESULT(0)
32373 }
32374 Err(err) => err.into(),
32375 }
32376 }
32377 }
32378 unsafe extern "system" fn CreateVideoDecoderOutputView<
32379 Identity: ID3D11VideoDevice_Impl,
32380 const OFFSET: isize,
32381 >(
32382 this: *mut core::ffi::c_void,
32383 presource: *mut core::ffi::c_void,
32384 pdesc: *const D3D11_VIDEO_DECODER_OUTPUT_VIEW_DESC,
32385 ppvdovview: *mut *mut core::ffi::c_void,
32386 ) -> windows_core::HRESULT {
32387 unsafe {
32388 let this: &Identity =
32389 &*((this as *const *const ()).offset(OFFSET) as *const Identity);
32390 ID3D11VideoDevice_Impl::CreateVideoDecoderOutputView(
32391 this,
32392 core::mem::transmute_copy(&presource),
32393 core::mem::transmute_copy(&pdesc),
32394 core::mem::transmute_copy(&ppvdovview),
32395 )
32396 .into()
32397 }
32398 }
32399 unsafe extern "system" fn CreateVideoProcessorInputView<
32400 Identity: ID3D11VideoDevice_Impl,
32401 const OFFSET: isize,
32402 >(
32403 this: *mut core::ffi::c_void,
32404 presource: *mut core::ffi::c_void,
32405 penum: *mut core::ffi::c_void,
32406 pdesc: *const D3D11_VIDEO_PROCESSOR_INPUT_VIEW_DESC,
32407 ppvpiview: *mut *mut core::ffi::c_void,
32408 ) -> windows_core::HRESULT {
32409 unsafe {
32410 let this: &Identity =
32411 &*((this as *const *const ()).offset(OFFSET) as *const Identity);
32412 ID3D11VideoDevice_Impl::CreateVideoProcessorInputView(
32413 this,
32414 core::mem::transmute_copy(&presource),
32415 core::mem::transmute_copy(&penum),
32416 core::mem::transmute_copy(&pdesc),
32417 core::mem::transmute_copy(&ppvpiview),
32418 )
32419 .into()
32420 }
32421 }
32422 unsafe extern "system" fn CreateVideoProcessorOutputView<
32423 Identity: ID3D11VideoDevice_Impl,
32424 const OFFSET: isize,
32425 >(
32426 this: *mut core::ffi::c_void,
32427 presource: *mut core::ffi::c_void,
32428 penum: *mut core::ffi::c_void,
32429 pdesc: *const D3D11_VIDEO_PROCESSOR_OUTPUT_VIEW_DESC,
32430 ppvpoview: *mut *mut core::ffi::c_void,
32431 ) -> windows_core::HRESULT {
32432 unsafe {
32433 let this: &Identity =
32434 &*((this as *const *const ()).offset(OFFSET) as *const Identity);
32435 ID3D11VideoDevice_Impl::CreateVideoProcessorOutputView(
32436 this,
32437 core::mem::transmute_copy(&presource),
32438 core::mem::transmute_copy(&penum),
32439 core::mem::transmute_copy(&pdesc),
32440 core::mem::transmute_copy(&ppvpoview),
32441 )
32442 .into()
32443 }
32444 }
32445 unsafe extern "system" fn CreateVideoProcessorEnumerator<
32446 Identity: ID3D11VideoDevice_Impl,
32447 const OFFSET: isize,
32448 >(
32449 this: *mut core::ffi::c_void,
32450 pdesc: *const D3D11_VIDEO_PROCESSOR_CONTENT_DESC,
32451 ppenum: *mut *mut core::ffi::c_void,
32452 ) -> windows_core::HRESULT {
32453 unsafe {
32454 let this: &Identity =
32455 &*((this as *const *const ()).offset(OFFSET) as *const Identity);
32456 match ID3D11VideoDevice_Impl::CreateVideoProcessorEnumerator(
32457 this,
32458 core::mem::transmute_copy(&pdesc),
32459 ) {
32460 Ok(ok__) => {
32461 ppenum.write(core::mem::transmute(ok__));
32462 windows_core::HRESULT(0)
32463 }
32464 Err(err) => err.into(),
32465 }
32466 }
32467 }
32468 unsafe extern "system" fn GetVideoDecoderProfileCount<
32469 Identity: ID3D11VideoDevice_Impl,
32470 const OFFSET: isize,
32471 >(
32472 this: *mut core::ffi::c_void,
32473 ) -> u32 {
32474 unsafe {
32475 let this: &Identity =
32476 &*((this as *const *const ()).offset(OFFSET) as *const Identity);
32477 ID3D11VideoDevice_Impl::GetVideoDecoderProfileCount(this)
32478 }
32479 }
32480 unsafe extern "system" fn GetVideoDecoderProfile<
32481 Identity: ID3D11VideoDevice_Impl,
32482 const OFFSET: isize,
32483 >(
32484 this: *mut core::ffi::c_void,
32485 index: u32,
32486 pdecoderprofile: *mut windows_core::GUID,
32487 ) -> windows_core::HRESULT {
32488 unsafe {
32489 let this: &Identity =
32490 &*((this as *const *const ()).offset(OFFSET) as *const Identity);
32491 match ID3D11VideoDevice_Impl::GetVideoDecoderProfile(
32492 this,
32493 core::mem::transmute_copy(&index),
32494 ) {
32495 Ok(ok__) => {
32496 pdecoderprofile.write(core::mem::transmute(ok__));
32497 windows_core::HRESULT(0)
32498 }
32499 Err(err) => err.into(),
32500 }
32501 }
32502 }
32503 unsafe extern "system" fn CheckVideoDecoderFormat<
32504 Identity: ID3D11VideoDevice_Impl,
32505 const OFFSET: isize,
32506 >(
32507 this: *mut core::ffi::c_void,
32508 pdecoderprofile: *const windows_core::GUID,
32509 format: crate::Dxgi::Common::DXGI_FORMAT,
32510 psupported: *mut crate::Foundation::BOOL,
32511 ) -> windows_core::HRESULT {
32512 unsafe {
32513 let this: &Identity =
32514 &*((this as *const *const ()).offset(OFFSET) as *const Identity);
32515 match ID3D11VideoDevice_Impl::CheckVideoDecoderFormat(
32516 this,
32517 core::mem::transmute_copy(&pdecoderprofile),
32518 core::mem::transmute_copy(&format),
32519 ) {
32520 Ok(ok__) => {
32521 psupported.write(core::mem::transmute(ok__));
32522 windows_core::HRESULT(0)
32523 }
32524 Err(err) => err.into(),
32525 }
32526 }
32527 }
32528 unsafe extern "system" fn GetVideoDecoderConfigCount<
32529 Identity: ID3D11VideoDevice_Impl,
32530 const OFFSET: isize,
32531 >(
32532 this: *mut core::ffi::c_void,
32533 pdesc: *const D3D11_VIDEO_DECODER_DESC,
32534 pcount: *mut u32,
32535 ) -> windows_core::HRESULT {
32536 unsafe {
32537 let this: &Identity =
32538 &*((this as *const *const ()).offset(OFFSET) as *const Identity);
32539 match ID3D11VideoDevice_Impl::GetVideoDecoderConfigCount(
32540 this,
32541 core::mem::transmute_copy(&pdesc),
32542 ) {
32543 Ok(ok__) => {
32544 pcount.write(core::mem::transmute(ok__));
32545 windows_core::HRESULT(0)
32546 }
32547 Err(err) => err.into(),
32548 }
32549 }
32550 }
32551 unsafe extern "system" fn GetVideoDecoderConfig<
32552 Identity: ID3D11VideoDevice_Impl,
32553 const OFFSET: isize,
32554 >(
32555 this: *mut core::ffi::c_void,
32556 pdesc: *const D3D11_VIDEO_DECODER_DESC,
32557 index: u32,
32558 pconfig: *mut D3D11_VIDEO_DECODER_CONFIG,
32559 ) -> windows_core::HRESULT {
32560 unsafe {
32561 let this: &Identity =
32562 &*((this as *const *const ()).offset(OFFSET) as *const Identity);
32563 ID3D11VideoDevice_Impl::GetVideoDecoderConfig(
32564 this,
32565 core::mem::transmute_copy(&pdesc),
32566 core::mem::transmute_copy(&index),
32567 core::mem::transmute_copy(&pconfig),
32568 )
32569 .into()
32570 }
32571 }
32572 unsafe extern "system" fn GetContentProtectionCaps<
32573 Identity: ID3D11VideoDevice_Impl,
32574 const OFFSET: isize,
32575 >(
32576 this: *mut core::ffi::c_void,
32577 pcryptotype: *const windows_core::GUID,
32578 pdecoderprofile: *const windows_core::GUID,
32579 pcaps: *mut D3D11_VIDEO_CONTENT_PROTECTION_CAPS,
32580 ) -> windows_core::HRESULT {
32581 unsafe {
32582 let this: &Identity =
32583 &*((this as *const *const ()).offset(OFFSET) as *const Identity);
32584 ID3D11VideoDevice_Impl::GetContentProtectionCaps(
32585 this,
32586 core::mem::transmute_copy(&pcryptotype),
32587 core::mem::transmute_copy(&pdecoderprofile),
32588 core::mem::transmute_copy(&pcaps),
32589 )
32590 .into()
32591 }
32592 }
32593 unsafe extern "system" fn CheckCryptoKeyExchange<
32594 Identity: ID3D11VideoDevice_Impl,
32595 const OFFSET: isize,
32596 >(
32597 this: *mut core::ffi::c_void,
32598 pcryptotype: *const windows_core::GUID,
32599 pdecoderprofile: *const windows_core::GUID,
32600 index: u32,
32601 pkeyexchangetype: *mut windows_core::GUID,
32602 ) -> windows_core::HRESULT {
32603 unsafe {
32604 let this: &Identity =
32605 &*((this as *const *const ()).offset(OFFSET) as *const Identity);
32606 match ID3D11VideoDevice_Impl::CheckCryptoKeyExchange(
32607 this,
32608 core::mem::transmute_copy(&pcryptotype),
32609 core::mem::transmute_copy(&pdecoderprofile),
32610 core::mem::transmute_copy(&index),
32611 ) {
32612 Ok(ok__) => {
32613 pkeyexchangetype.write(core::mem::transmute(ok__));
32614 windows_core::HRESULT(0)
32615 }
32616 Err(err) => err.into(),
32617 }
32618 }
32619 }
32620 unsafe extern "system" fn SetPrivateData<
32621 Identity: ID3D11VideoDevice_Impl,
32622 const OFFSET: isize,
32623 >(
32624 this: *mut core::ffi::c_void,
32625 guid: *const windows_core::GUID,
32626 datasize: u32,
32627 pdata: *const core::ffi::c_void,
32628 ) -> windows_core::HRESULT {
32629 unsafe {
32630 let this: &Identity =
32631 &*((this as *const *const ()).offset(OFFSET) as *const Identity);
32632 ID3D11VideoDevice_Impl::SetPrivateData(
32633 this,
32634 core::mem::transmute_copy(&guid),
32635 core::mem::transmute_copy(&datasize),
32636 core::mem::transmute_copy(&pdata),
32637 )
32638 .into()
32639 }
32640 }
32641 unsafe extern "system" fn SetPrivateDataInterface<
32642 Identity: ID3D11VideoDevice_Impl,
32643 const OFFSET: isize,
32644 >(
32645 this: *mut core::ffi::c_void,
32646 guid: *const windows_core::GUID,
32647 pdata: *mut core::ffi::c_void,
32648 ) -> windows_core::HRESULT {
32649 unsafe {
32650 let this: &Identity =
32651 &*((this as *const *const ()).offset(OFFSET) as *const Identity);
32652 ID3D11VideoDevice_Impl::SetPrivateDataInterface(
32653 this,
32654 core::mem::transmute_copy(&guid),
32655 core::mem::transmute_copy(&pdata),
32656 )
32657 .into()
32658 }
32659 }
32660 Self {
32661 base__: windows_core::IUnknown_Vtbl::new::<Identity, OFFSET>(),
32662 CreateVideoDecoder: CreateVideoDecoder::<Identity, OFFSET>,
32663 CreateVideoProcessor: CreateVideoProcessor::<Identity, OFFSET>,
32664 CreateAuthenticatedChannel: CreateAuthenticatedChannel::<Identity, OFFSET>,
32665 CreateCryptoSession: CreateCryptoSession::<Identity, OFFSET>,
32666 CreateVideoDecoderOutputView: CreateVideoDecoderOutputView::<Identity, OFFSET>,
32667 CreateVideoProcessorInputView: CreateVideoProcessorInputView::<Identity, OFFSET>,
32668 CreateVideoProcessorOutputView: CreateVideoProcessorOutputView::<Identity, OFFSET>,
32669 CreateVideoProcessorEnumerator: CreateVideoProcessorEnumerator::<Identity, OFFSET>,
32670 GetVideoDecoderProfileCount: GetVideoDecoderProfileCount::<Identity, OFFSET>,
32671 GetVideoDecoderProfile: GetVideoDecoderProfile::<Identity, OFFSET>,
32672 CheckVideoDecoderFormat: CheckVideoDecoderFormat::<Identity, OFFSET>,
32673 GetVideoDecoderConfigCount: GetVideoDecoderConfigCount::<Identity, OFFSET>,
32674 GetVideoDecoderConfig: GetVideoDecoderConfig::<Identity, OFFSET>,
32675 GetContentProtectionCaps: GetContentProtectionCaps::<Identity, OFFSET>,
32676 CheckCryptoKeyExchange: CheckCryptoKeyExchange::<Identity, OFFSET>,
32677 SetPrivateData: SetPrivateData::<Identity, OFFSET>,
32678 SetPrivateDataInterface: SetPrivateDataInterface::<Identity, OFFSET>,
32679 }
32680 }
32681 pub fn matches(iid: &windows_core::GUID) -> bool {
32682 iid == &<ID3D11VideoDevice as windows_core::Interface>::IID
32683 }
32684}
32685#[cfg(feature = "Win32_Graphics_Dxgi_Common")]
32686impl windows_core::RuntimeName for ID3D11VideoDevice {}
32687#[cfg(feature = "Win32_Graphics_Dxgi_Common")]
32688unsafe impl Send for ID3D11VideoDevice {}
32689#[cfg(feature = "Win32_Graphics_Dxgi_Common")]
32690unsafe impl Sync for ID3D11VideoDevice {}
32691windows_core::imp::define_interface!(
32692 ID3D11VideoDevice1,
32693 ID3D11VideoDevice1_Vtbl,
32694 0x29da1d51_1321_4454_804b_f5fc9f861f0f
32695);
32696impl core::ops::Deref for ID3D11VideoDevice1 {
32697 type Target = ID3D11VideoDevice;
32698 fn deref(&self) -> &Self::Target {
32699 unsafe { core::mem::transmute(self) }
32700 }
32701}
32702windows_core::imp::interface_hierarchy!(
32703 ID3D11VideoDevice1,
32704 windows_core::IUnknown,
32705 ID3D11VideoDevice
32706);
32707impl ID3D11VideoDevice1 {
32708 pub unsafe fn GetCryptoSessionPrivateDataSize(
32709 &self,
32710 pcryptotype: *const windows_core::GUID,
32711 pdecoderprofile: Option<*const windows_core::GUID>,
32712 pkeyexchangetype: *const windows_core::GUID,
32713 pprivateinputsize: *mut u32,
32714 pprivateoutputsize: *mut u32,
32715 ) -> windows_core::Result<()> {
32716 unsafe {
32717 (windows_core::Interface::vtable(self).GetCryptoSessionPrivateDataSize)(
32718 windows_core::Interface::as_raw(self),
32719 pcryptotype,
32720 core::mem::transmute(pdecoderprofile.unwrap_or(core::mem::zeroed())),
32721 pkeyexchangetype,
32722 core::mem::transmute(pprivateinputsize),
32723 core::mem::transmute(pprivateoutputsize),
32724 )
32725 .ok()
32726 }
32727 }
32728 #[cfg(feature = "Win32_Graphics_Dxgi_Common")]
32729 pub unsafe fn GetVideoDecoderCaps(
32730 &self,
32731 pdecoderprofile: *const windows_core::GUID,
32732 samplewidth: u32,
32733 sampleheight: u32,
32734 pframerate: *const crate::Dxgi::Common::DXGI_RATIONAL,
32735 bitrate: u32,
32736 pcryptotype: Option<*const windows_core::GUID>,
32737 ) -> windows_core::Result<u32> {
32738 unsafe {
32739 let mut result__ = core::mem::zeroed();
32740 (windows_core::Interface::vtable(self).GetVideoDecoderCaps)(
32741 windows_core::Interface::as_raw(self),
32742 pdecoderprofile,
32743 samplewidth,
32744 sampleheight,
32745 pframerate,
32746 bitrate,
32747 core::mem::transmute(pcryptotype.unwrap_or(core::mem::zeroed())),
32748 &mut result__,
32749 )
32750 .map(|| result__)
32751 }
32752 }
32753 #[cfg(feature = "Win32_Graphics_Dxgi_Common")]
32754 pub unsafe fn CheckVideoDecoderDownsampling(
32755 &self,
32756 pinputdesc: *const D3D11_VIDEO_DECODER_DESC,
32757 inputcolorspace: crate::Dxgi::Common::DXGI_COLOR_SPACE_TYPE,
32758 pinputconfig: *const D3D11_VIDEO_DECODER_CONFIG,
32759 pframerate: *const crate::Dxgi::Common::DXGI_RATIONAL,
32760 poutputdesc: *const D3D11_VIDEO_SAMPLE_DESC,
32761 psupported: *mut crate::Foundation::BOOL,
32762 prealtimehint: *mut crate::Foundation::BOOL,
32763 ) -> windows_core::Result<()> {
32764 unsafe {
32765 (windows_core::Interface::vtable(self).CheckVideoDecoderDownsampling)(
32766 windows_core::Interface::as_raw(self),
32767 pinputdesc,
32768 inputcolorspace,
32769 pinputconfig,
32770 pframerate,
32771 poutputdesc,
32772 core::mem::transmute(psupported),
32773 core::mem::transmute(prealtimehint),
32774 )
32775 .ok()
32776 }
32777 }
32778 #[cfg(feature = "Win32_Graphics_Dxgi_Common")]
32779 pub unsafe fn RecommendVideoDecoderDownsampleParameters(
32780 &self,
32781 pinputdesc: *const D3D11_VIDEO_DECODER_DESC,
32782 inputcolorspace: crate::Dxgi::Common::DXGI_COLOR_SPACE_TYPE,
32783 pinputconfig: *const D3D11_VIDEO_DECODER_CONFIG,
32784 pframerate: *const crate::Dxgi::Common::DXGI_RATIONAL,
32785 ) -> windows_core::Result<D3D11_VIDEO_SAMPLE_DESC> {
32786 unsafe {
32787 let mut result__ = core::mem::zeroed();
32788 (windows_core::Interface::vtable(self).RecommendVideoDecoderDownsampleParameters)(
32789 windows_core::Interface::as_raw(self),
32790 pinputdesc,
32791 inputcolorspace,
32792 pinputconfig,
32793 pframerate,
32794 &mut result__,
32795 )
32796 .map(|| result__)
32797 }
32798 }
32799}
32800#[repr(C)]
32801pub struct ID3D11VideoDevice1_Vtbl {
32802 pub base__: ID3D11VideoDevice_Vtbl,
32803 pub GetCryptoSessionPrivateDataSize: unsafe extern "system" fn(
32804 *mut core::ffi::c_void,
32805 *const windows_core::GUID,
32806 *const windows_core::GUID,
32807 *const windows_core::GUID,
32808 *mut u32,
32809 *mut u32,
32810 ) -> windows_core::HRESULT,
32811 #[cfg(feature = "Win32_Graphics_Dxgi_Common")]
32812 pub GetVideoDecoderCaps: unsafe extern "system" fn(
32813 *mut core::ffi::c_void,
32814 *const windows_core::GUID,
32815 u32,
32816 u32,
32817 *const crate::Dxgi::Common::DXGI_RATIONAL,
32818 u32,
32819 *const windows_core::GUID,
32820 *mut u32,
32821 ) -> windows_core::HRESULT,
32822 #[cfg(not(feature = "Win32_Graphics_Dxgi_Common"))]
32823 GetVideoDecoderCaps: usize,
32824 #[cfg(feature = "Win32_Graphics_Dxgi_Common")]
32825 pub CheckVideoDecoderDownsampling: unsafe extern "system" fn(
32826 *mut core::ffi::c_void,
32827 *const D3D11_VIDEO_DECODER_DESC,
32828 crate::Dxgi::Common::DXGI_COLOR_SPACE_TYPE,
32829 *const D3D11_VIDEO_DECODER_CONFIG,
32830 *const crate::Dxgi::Common::DXGI_RATIONAL,
32831 *const D3D11_VIDEO_SAMPLE_DESC,
32832 *mut crate::Foundation::BOOL,
32833 *mut crate::Foundation::BOOL,
32834 ) -> windows_core::HRESULT,
32835 #[cfg(not(feature = "Win32_Graphics_Dxgi_Common"))]
32836 CheckVideoDecoderDownsampling: usize,
32837 #[cfg(feature = "Win32_Graphics_Dxgi_Common")]
32838 pub RecommendVideoDecoderDownsampleParameters:
32839 unsafe extern "system" fn(
32840 *mut core::ffi::c_void,
32841 *const D3D11_VIDEO_DECODER_DESC,
32842 crate::Dxgi::Common::DXGI_COLOR_SPACE_TYPE,
32843 *const D3D11_VIDEO_DECODER_CONFIG,
32844 *const crate::Dxgi::Common::DXGI_RATIONAL,
32845 *mut D3D11_VIDEO_SAMPLE_DESC,
32846 ) -> windows_core::HRESULT,
32847 #[cfg(not(feature = "Win32_Graphics_Dxgi_Common"))]
32848 RecommendVideoDecoderDownsampleParameters: usize,
32849}
32850#[cfg(feature = "Win32_Graphics_Dxgi_Common")]
32851pub trait ID3D11VideoDevice1_Impl: ID3D11VideoDevice_Impl {
32852 fn GetCryptoSessionPrivateDataSize(
32853 &self,
32854 pcryptotype: *const windows_core::GUID,
32855 pdecoderprofile: *const windows_core::GUID,
32856 pkeyexchangetype: *const windows_core::GUID,
32857 pprivateinputsize: *mut u32,
32858 pprivateoutputsize: *mut u32,
32859 ) -> windows_core::Result<()>;
32860 fn GetVideoDecoderCaps(
32861 &self,
32862 pdecoderprofile: *const windows_core::GUID,
32863 samplewidth: u32,
32864 sampleheight: u32,
32865 pframerate: *const crate::Dxgi::Common::DXGI_RATIONAL,
32866 bitrate: u32,
32867 pcryptotype: *const windows_core::GUID,
32868 ) -> windows_core::Result<u32>;
32869 fn CheckVideoDecoderDownsampling(
32870 &self,
32871 pinputdesc: *const D3D11_VIDEO_DECODER_DESC,
32872 inputcolorspace: crate::Dxgi::Common::DXGI_COLOR_SPACE_TYPE,
32873 pinputconfig: *const D3D11_VIDEO_DECODER_CONFIG,
32874 pframerate: *const crate::Dxgi::Common::DXGI_RATIONAL,
32875 poutputdesc: *const D3D11_VIDEO_SAMPLE_DESC,
32876 psupported: *mut crate::Foundation::BOOL,
32877 prealtimehint: *mut crate::Foundation::BOOL,
32878 ) -> windows_core::Result<()>;
32879 fn RecommendVideoDecoderDownsampleParameters(
32880 &self,
32881 pinputdesc: *const D3D11_VIDEO_DECODER_DESC,
32882 inputcolorspace: crate::Dxgi::Common::DXGI_COLOR_SPACE_TYPE,
32883 pinputconfig: *const D3D11_VIDEO_DECODER_CONFIG,
32884 pframerate: *const crate::Dxgi::Common::DXGI_RATIONAL,
32885 ) -> windows_core::Result<D3D11_VIDEO_SAMPLE_DESC>;
32886}
32887#[cfg(feature = "Win32_Graphics_Dxgi_Common")]
32888impl ID3D11VideoDevice1_Vtbl {
32889 pub const fn new<Identity: ID3D11VideoDevice1_Impl, const OFFSET: isize>() -> Self {
32890 unsafe extern "system" fn GetCryptoSessionPrivateDataSize<
32891 Identity: ID3D11VideoDevice1_Impl,
32892 const OFFSET: isize,
32893 >(
32894 this: *mut core::ffi::c_void,
32895 pcryptotype: *const windows_core::GUID,
32896 pdecoderprofile: *const windows_core::GUID,
32897 pkeyexchangetype: *const windows_core::GUID,
32898 pprivateinputsize: *mut u32,
32899 pprivateoutputsize: *mut u32,
32900 ) -> windows_core::HRESULT {
32901 unsafe {
32902 let this: &Identity =
32903 &*((this as *const *const ()).offset(OFFSET) as *const Identity);
32904 ID3D11VideoDevice1_Impl::GetCryptoSessionPrivateDataSize(
32905 this,
32906 core::mem::transmute_copy(&pcryptotype),
32907 core::mem::transmute_copy(&pdecoderprofile),
32908 core::mem::transmute_copy(&pkeyexchangetype),
32909 core::mem::transmute_copy(&pprivateinputsize),
32910 core::mem::transmute_copy(&pprivateoutputsize),
32911 )
32912 .into()
32913 }
32914 }
32915 unsafe extern "system" fn GetVideoDecoderCaps<
32916 Identity: ID3D11VideoDevice1_Impl,
32917 const OFFSET: isize,
32918 >(
32919 this: *mut core::ffi::c_void,
32920 pdecoderprofile: *const windows_core::GUID,
32921 samplewidth: u32,
32922 sampleheight: u32,
32923 pframerate: *const crate::Dxgi::Common::DXGI_RATIONAL,
32924 bitrate: u32,
32925 pcryptotype: *const windows_core::GUID,
32926 pdecodercaps: *mut u32,
32927 ) -> windows_core::HRESULT {
32928 unsafe {
32929 let this: &Identity =
32930 &*((this as *const *const ()).offset(OFFSET) as *const Identity);
32931 match ID3D11VideoDevice1_Impl::GetVideoDecoderCaps(
32932 this,
32933 core::mem::transmute_copy(&pdecoderprofile),
32934 core::mem::transmute_copy(&samplewidth),
32935 core::mem::transmute_copy(&sampleheight),
32936 core::mem::transmute_copy(&pframerate),
32937 core::mem::transmute_copy(&bitrate),
32938 core::mem::transmute_copy(&pcryptotype),
32939 ) {
32940 Ok(ok__) => {
32941 pdecodercaps.write(core::mem::transmute(ok__));
32942 windows_core::HRESULT(0)
32943 }
32944 Err(err) => err.into(),
32945 }
32946 }
32947 }
32948 unsafe extern "system" fn CheckVideoDecoderDownsampling<
32949 Identity: ID3D11VideoDevice1_Impl,
32950 const OFFSET: isize,
32951 >(
32952 this: *mut core::ffi::c_void,
32953 pinputdesc: *const D3D11_VIDEO_DECODER_DESC,
32954 inputcolorspace: crate::Dxgi::Common::DXGI_COLOR_SPACE_TYPE,
32955 pinputconfig: *const D3D11_VIDEO_DECODER_CONFIG,
32956 pframerate: *const crate::Dxgi::Common::DXGI_RATIONAL,
32957 poutputdesc: *const D3D11_VIDEO_SAMPLE_DESC,
32958 psupported: *mut crate::Foundation::BOOL,
32959 prealtimehint: *mut crate::Foundation::BOOL,
32960 ) -> windows_core::HRESULT {
32961 unsafe {
32962 let this: &Identity =
32963 &*((this as *const *const ()).offset(OFFSET) as *const Identity);
32964 ID3D11VideoDevice1_Impl::CheckVideoDecoderDownsampling(
32965 this,
32966 core::mem::transmute_copy(&pinputdesc),
32967 core::mem::transmute_copy(&inputcolorspace),
32968 core::mem::transmute_copy(&pinputconfig),
32969 core::mem::transmute_copy(&pframerate),
32970 core::mem::transmute_copy(&poutputdesc),
32971 core::mem::transmute_copy(&psupported),
32972 core::mem::transmute_copy(&prealtimehint),
32973 )
32974 .into()
32975 }
32976 }
32977 unsafe extern "system" fn RecommendVideoDecoderDownsampleParameters<
32978 Identity: ID3D11VideoDevice1_Impl,
32979 const OFFSET: isize,
32980 >(
32981 this: *mut core::ffi::c_void,
32982 pinputdesc: *const D3D11_VIDEO_DECODER_DESC,
32983 inputcolorspace: crate::Dxgi::Common::DXGI_COLOR_SPACE_TYPE,
32984 pinputconfig: *const D3D11_VIDEO_DECODER_CONFIG,
32985 pframerate: *const crate::Dxgi::Common::DXGI_RATIONAL,
32986 precommendedoutputdesc: *mut D3D11_VIDEO_SAMPLE_DESC,
32987 ) -> windows_core::HRESULT {
32988 unsafe {
32989 let this: &Identity =
32990 &*((this as *const *const ()).offset(OFFSET) as *const Identity);
32991 match ID3D11VideoDevice1_Impl::RecommendVideoDecoderDownsampleParameters(
32992 this,
32993 core::mem::transmute_copy(&pinputdesc),
32994 core::mem::transmute_copy(&inputcolorspace),
32995 core::mem::transmute_copy(&pinputconfig),
32996 core::mem::transmute_copy(&pframerate),
32997 ) {
32998 Ok(ok__) => {
32999 precommendedoutputdesc.write(core::mem::transmute(ok__));
33000 windows_core::HRESULT(0)
33001 }
33002 Err(err) => err.into(),
33003 }
33004 }
33005 }
33006 Self {
33007 base__: ID3D11VideoDevice_Vtbl::new::<Identity, OFFSET>(),
33008 GetCryptoSessionPrivateDataSize: GetCryptoSessionPrivateDataSize::<Identity, OFFSET>,
33009 GetVideoDecoderCaps: GetVideoDecoderCaps::<Identity, OFFSET>,
33010 CheckVideoDecoderDownsampling: CheckVideoDecoderDownsampling::<Identity, OFFSET>,
33011 RecommendVideoDecoderDownsampleParameters: RecommendVideoDecoderDownsampleParameters::<
33012 Identity,
33013 OFFSET,
33014 >,
33015 }
33016 }
33017 pub fn matches(iid: &windows_core::GUID) -> bool {
33018 iid == &<ID3D11VideoDevice1 as windows_core::Interface>::IID
33019 || iid == &<ID3D11VideoDevice as windows_core::Interface>::IID
33020 }
33021}
33022#[cfg(feature = "Win32_Graphics_Dxgi_Common")]
33023impl windows_core::RuntimeName for ID3D11VideoDevice1 {}
33024#[cfg(feature = "Win32_Graphics_Dxgi_Common")]
33025unsafe impl Send for ID3D11VideoDevice1 {}
33026#[cfg(feature = "Win32_Graphics_Dxgi_Common")]
33027unsafe impl Sync for ID3D11VideoDevice1 {}
33028windows_core::imp::define_interface!(
33029 ID3D11VideoDevice2,
33030 ID3D11VideoDevice2_Vtbl,
33031 0x59c0cb01_35f0_4a70_8f67_87905c906a53
33032);
33033impl core::ops::Deref for ID3D11VideoDevice2 {
33034 type Target = ID3D11VideoDevice1;
33035 fn deref(&self) -> &Self::Target {
33036 unsafe { core::mem::transmute(self) }
33037 }
33038}
33039windows_core::imp::interface_hierarchy!(
33040 ID3D11VideoDevice2,
33041 windows_core::IUnknown,
33042 ID3D11VideoDevice,
33043 ID3D11VideoDevice1
33044);
33045impl ID3D11VideoDevice2 {
33046 pub unsafe fn CheckFeatureSupport(
33047 &self,
33048 feature: D3D11_FEATURE_VIDEO,
33049 pfeaturesupportdata: *mut core::ffi::c_void,
33050 featuresupportdatasize: u32,
33051 ) -> windows_core::Result<()> {
33052 unsafe {
33053 (windows_core::Interface::vtable(self).CheckFeatureSupport)(
33054 windows_core::Interface::as_raw(self),
33055 feature,
33056 core::mem::transmute(pfeaturesupportdata),
33057 featuresupportdatasize,
33058 )
33059 .ok()
33060 }
33061 }
33062 pub unsafe fn NegotiateCryptoSessionKeyExchangeMT<P0>(
33063 &self,
33064 pcryptosession: P0,
33065 flags: D3D11_CRYPTO_SESSION_KEY_EXCHANGE_FLAGS,
33066 datasize: u32,
33067 pdata: *mut core::ffi::c_void,
33068 ) -> windows_core::Result<()>
33069 where
33070 P0: windows_core::Param<ID3D11CryptoSession>,
33071 {
33072 unsafe {
33073 (windows_core::Interface::vtable(self).NegotiateCryptoSessionKeyExchangeMT)(
33074 windows_core::Interface::as_raw(self),
33075 pcryptosession.param().abi(),
33076 flags,
33077 datasize,
33078 core::mem::transmute(pdata),
33079 )
33080 .ok()
33081 }
33082 }
33083}
33084#[repr(C)]
33085pub struct ID3D11VideoDevice2_Vtbl {
33086 pub base__: ID3D11VideoDevice1_Vtbl,
33087 pub CheckFeatureSupport: unsafe extern "system" fn(
33088 *mut core::ffi::c_void,
33089 D3D11_FEATURE_VIDEO,
33090 *mut core::ffi::c_void,
33091 u32,
33092 ) -> windows_core::HRESULT,
33093 pub NegotiateCryptoSessionKeyExchangeMT: unsafe extern "system" fn(
33094 *mut core::ffi::c_void,
33095 *mut core::ffi::c_void,
33096 D3D11_CRYPTO_SESSION_KEY_EXCHANGE_FLAGS,
33097 u32,
33098 *mut core::ffi::c_void,
33099 )
33100 -> windows_core::HRESULT,
33101}
33102#[cfg(feature = "Win32_Graphics_Dxgi_Common")]
33103pub trait ID3D11VideoDevice2_Impl: ID3D11VideoDevice1_Impl {
33104 fn CheckFeatureSupport(
33105 &self,
33106 feature: D3D11_FEATURE_VIDEO,
33107 pfeaturesupportdata: *mut core::ffi::c_void,
33108 featuresupportdatasize: u32,
33109 ) -> windows_core::Result<()>;
33110 fn NegotiateCryptoSessionKeyExchangeMT(
33111 &self,
33112 pcryptosession: windows_core::Ref<'_, ID3D11CryptoSession>,
33113 flags: D3D11_CRYPTO_SESSION_KEY_EXCHANGE_FLAGS,
33114 datasize: u32,
33115 pdata: *mut core::ffi::c_void,
33116 ) -> windows_core::Result<()>;
33117}
33118#[cfg(feature = "Win32_Graphics_Dxgi_Common")]
33119impl ID3D11VideoDevice2_Vtbl {
33120 pub const fn new<Identity: ID3D11VideoDevice2_Impl, const OFFSET: isize>() -> Self {
33121 unsafe extern "system" fn CheckFeatureSupport<
33122 Identity: ID3D11VideoDevice2_Impl,
33123 const OFFSET: isize,
33124 >(
33125 this: *mut core::ffi::c_void,
33126 feature: D3D11_FEATURE_VIDEO,
33127 pfeaturesupportdata: *mut core::ffi::c_void,
33128 featuresupportdatasize: u32,
33129 ) -> windows_core::HRESULT {
33130 unsafe {
33131 let this: &Identity =
33132 &*((this as *const *const ()).offset(OFFSET) as *const Identity);
33133 ID3D11VideoDevice2_Impl::CheckFeatureSupport(
33134 this,
33135 core::mem::transmute_copy(&feature),
33136 core::mem::transmute_copy(&pfeaturesupportdata),
33137 core::mem::transmute_copy(&featuresupportdatasize),
33138 )
33139 .into()
33140 }
33141 }
33142 unsafe extern "system" fn NegotiateCryptoSessionKeyExchangeMT<
33143 Identity: ID3D11VideoDevice2_Impl,
33144 const OFFSET: isize,
33145 >(
33146 this: *mut core::ffi::c_void,
33147 pcryptosession: *mut core::ffi::c_void,
33148 flags: D3D11_CRYPTO_SESSION_KEY_EXCHANGE_FLAGS,
33149 datasize: u32,
33150 pdata: *mut core::ffi::c_void,
33151 ) -> windows_core::HRESULT {
33152 unsafe {
33153 let this: &Identity =
33154 &*((this as *const *const ()).offset(OFFSET) as *const Identity);
33155 ID3D11VideoDevice2_Impl::NegotiateCryptoSessionKeyExchangeMT(
33156 this,
33157 core::mem::transmute_copy(&pcryptosession),
33158 core::mem::transmute_copy(&flags),
33159 core::mem::transmute_copy(&datasize),
33160 core::mem::transmute_copy(&pdata),
33161 )
33162 .into()
33163 }
33164 }
33165 Self {
33166 base__: ID3D11VideoDevice1_Vtbl::new::<Identity, OFFSET>(),
33167 CheckFeatureSupport: CheckFeatureSupport::<Identity, OFFSET>,
33168 NegotiateCryptoSessionKeyExchangeMT: NegotiateCryptoSessionKeyExchangeMT::<
33169 Identity,
33170 OFFSET,
33171 >,
33172 }
33173 }
33174 pub fn matches(iid: &windows_core::GUID) -> bool {
33175 iid == &<ID3D11VideoDevice2 as windows_core::Interface>::IID
33176 || iid == &<ID3D11VideoDevice as windows_core::Interface>::IID
33177 || iid == &<ID3D11VideoDevice1 as windows_core::Interface>::IID
33178 }
33179}
33180#[cfg(feature = "Win32_Graphics_Dxgi_Common")]
33181impl windows_core::RuntimeName for ID3D11VideoDevice2 {}
33182#[cfg(feature = "Win32_Graphics_Dxgi_Common")]
33183unsafe impl Send for ID3D11VideoDevice2 {}
33184#[cfg(feature = "Win32_Graphics_Dxgi_Common")]
33185unsafe impl Sync for ID3D11VideoDevice2 {}
33186windows_core::imp::define_interface!(
33187 ID3D11VideoProcessor,
33188 ID3D11VideoProcessor_Vtbl,
33189 0x1d7b0652_185f_41c6_85ce_0c5be3d4ae6c
33190);
33191impl core::ops::Deref for ID3D11VideoProcessor {
33192 type Target = ID3D11DeviceChild;
33193 fn deref(&self) -> &Self::Target {
33194 unsafe { core::mem::transmute(self) }
33195 }
33196}
33197windows_core::imp::interface_hierarchy!(
33198 ID3D11VideoProcessor,
33199 windows_core::IUnknown,
33200 ID3D11DeviceChild
33201);
33202impl ID3D11VideoProcessor {
33203 #[cfg(feature = "Win32_Graphics_Dxgi_Common")]
33204 pub unsafe fn GetContentDesc(&self, pdesc: *mut D3D11_VIDEO_PROCESSOR_CONTENT_DESC) {
33205 unsafe {
33206 (windows_core::Interface::vtable(self).GetContentDesc)(
33207 windows_core::Interface::as_raw(self),
33208 core::mem::transmute(pdesc),
33209 )
33210 }
33211 }
33212 pub unsafe fn GetRateConversionCaps(
33213 &self,
33214 pcaps: *mut D3D11_VIDEO_PROCESSOR_RATE_CONVERSION_CAPS,
33215 ) {
33216 unsafe {
33217 (windows_core::Interface::vtable(self).GetRateConversionCaps)(
33218 windows_core::Interface::as_raw(self),
33219 core::mem::transmute(pcaps),
33220 )
33221 }
33222 }
33223}
33224#[repr(C)]
33225pub struct ID3D11VideoProcessor_Vtbl {
33226 pub base__: ID3D11DeviceChild_Vtbl,
33227 #[cfg(feature = "Win32_Graphics_Dxgi_Common")]
33228 pub GetContentDesc:
33229 unsafe extern "system" fn(*mut core::ffi::c_void, *mut D3D11_VIDEO_PROCESSOR_CONTENT_DESC),
33230 #[cfg(not(feature = "Win32_Graphics_Dxgi_Common"))]
33231 GetContentDesc: usize,
33232 pub GetRateConversionCaps: unsafe extern "system" fn(
33233 *mut core::ffi::c_void,
33234 *mut D3D11_VIDEO_PROCESSOR_RATE_CONVERSION_CAPS,
33235 ),
33236}
33237#[cfg(feature = "Win32_Graphics_Dxgi_Common")]
33238pub trait ID3D11VideoProcessor_Impl: ID3D11DeviceChild_Impl {
33239 fn GetContentDesc(&self, pdesc: *mut D3D11_VIDEO_PROCESSOR_CONTENT_DESC);
33240 fn GetRateConversionCaps(&self, pcaps: *mut D3D11_VIDEO_PROCESSOR_RATE_CONVERSION_CAPS);
33241}
33242#[cfg(feature = "Win32_Graphics_Dxgi_Common")]
33243impl ID3D11VideoProcessor_Vtbl {
33244 pub const fn new<Identity: ID3D11VideoProcessor_Impl, const OFFSET: isize>() -> Self {
33245 unsafe extern "system" fn GetContentDesc<
33246 Identity: ID3D11VideoProcessor_Impl,
33247 const OFFSET: isize,
33248 >(
33249 this: *mut core::ffi::c_void,
33250 pdesc: *mut D3D11_VIDEO_PROCESSOR_CONTENT_DESC,
33251 ) {
33252 unsafe {
33253 let this: &Identity =
33254 &*((this as *const *const ()).offset(OFFSET) as *const Identity);
33255 ID3D11VideoProcessor_Impl::GetContentDesc(this, core::mem::transmute_copy(&pdesc))
33256 }
33257 }
33258 unsafe extern "system" fn GetRateConversionCaps<
33259 Identity: ID3D11VideoProcessor_Impl,
33260 const OFFSET: isize,
33261 >(
33262 this: *mut core::ffi::c_void,
33263 pcaps: *mut D3D11_VIDEO_PROCESSOR_RATE_CONVERSION_CAPS,
33264 ) {
33265 unsafe {
33266 let this: &Identity =
33267 &*((this as *const *const ()).offset(OFFSET) as *const Identity);
33268 ID3D11VideoProcessor_Impl::GetRateConversionCaps(
33269 this,
33270 core::mem::transmute_copy(&pcaps),
33271 )
33272 }
33273 }
33274 Self {
33275 base__: ID3D11DeviceChild_Vtbl::new::<Identity, OFFSET>(),
33276 GetContentDesc: GetContentDesc::<Identity, OFFSET>,
33277 GetRateConversionCaps: GetRateConversionCaps::<Identity, OFFSET>,
33278 }
33279 }
33280 pub fn matches(iid: &windows_core::GUID) -> bool {
33281 iid == &<ID3D11VideoProcessor as windows_core::Interface>::IID
33282 || iid == &<ID3D11DeviceChild as windows_core::Interface>::IID
33283 }
33284}
33285#[cfg(feature = "Win32_Graphics_Dxgi_Common")]
33286impl windows_core::RuntimeName for ID3D11VideoProcessor {}
33287#[cfg(feature = "Win32_Graphics_Dxgi_Common")]
33288unsafe impl Send for ID3D11VideoProcessor {}
33289#[cfg(feature = "Win32_Graphics_Dxgi_Common")]
33290unsafe impl Sync for ID3D11VideoProcessor {}
33291windows_core::imp::define_interface!(
33292 ID3D11VideoProcessorEnumerator,
33293 ID3D11VideoProcessorEnumerator_Vtbl,
33294 0x31627037_53ab_4200_9061_05faa9ab45f9
33295);
33296impl core::ops::Deref for ID3D11VideoProcessorEnumerator {
33297 type Target = ID3D11DeviceChild;
33298 fn deref(&self) -> &Self::Target {
33299 unsafe { core::mem::transmute(self) }
33300 }
33301}
33302windows_core::imp::interface_hierarchy!(
33303 ID3D11VideoProcessorEnumerator,
33304 windows_core::IUnknown,
33305 ID3D11DeviceChild
33306);
33307impl ID3D11VideoProcessorEnumerator {
33308 #[cfg(feature = "Win32_Graphics_Dxgi_Common")]
33309 pub unsafe fn GetVideoProcessorContentDesc(
33310 &self,
33311 pcontentdesc: *mut D3D11_VIDEO_PROCESSOR_CONTENT_DESC,
33312 ) -> windows_core::Result<()> {
33313 unsafe {
33314 (windows_core::Interface::vtable(self).GetVideoProcessorContentDesc)(
33315 windows_core::Interface::as_raw(self),
33316 core::mem::transmute(pcontentdesc),
33317 )
33318 .ok()
33319 }
33320 }
33321 #[cfg(feature = "Win32_Graphics_Dxgi_Common")]
33322 pub unsafe fn CheckVideoProcessorFormat(
33323 &self,
33324 format: crate::Dxgi::Common::DXGI_FORMAT,
33325 ) -> windows_core::Result<u32> {
33326 unsafe {
33327 let mut result__ = core::mem::zeroed();
33328 (windows_core::Interface::vtable(self).CheckVideoProcessorFormat)(
33329 windows_core::Interface::as_raw(self),
33330 format,
33331 &mut result__,
33332 )
33333 .map(|| result__)
33334 }
33335 }
33336 pub unsafe fn GetVideoProcessorCaps(
33337 &self,
33338 pcaps: *mut D3D11_VIDEO_PROCESSOR_CAPS,
33339 ) -> windows_core::Result<()> {
33340 unsafe {
33341 (windows_core::Interface::vtable(self).GetVideoProcessorCaps)(
33342 windows_core::Interface::as_raw(self),
33343 core::mem::transmute(pcaps),
33344 )
33345 .ok()
33346 }
33347 }
33348 pub unsafe fn GetVideoProcessorRateConversionCaps(
33349 &self,
33350 typeindex: u32,
33351 pcaps: *mut D3D11_VIDEO_PROCESSOR_RATE_CONVERSION_CAPS,
33352 ) -> windows_core::Result<()> {
33353 unsafe {
33354 (windows_core::Interface::vtable(self).GetVideoProcessorRateConversionCaps)(
33355 windows_core::Interface::as_raw(self),
33356 typeindex,
33357 core::mem::transmute(pcaps),
33358 )
33359 .ok()
33360 }
33361 }
33362 #[cfg(feature = "Win32_Graphics_Dxgi_Common")]
33363 pub unsafe fn GetVideoProcessorCustomRate(
33364 &self,
33365 typeindex: u32,
33366 customrateindex: u32,
33367 prate: *mut D3D11_VIDEO_PROCESSOR_CUSTOM_RATE,
33368 ) -> windows_core::Result<()> {
33369 unsafe {
33370 (windows_core::Interface::vtable(self).GetVideoProcessorCustomRate)(
33371 windows_core::Interface::as_raw(self),
33372 typeindex,
33373 customrateindex,
33374 core::mem::transmute(prate),
33375 )
33376 .ok()
33377 }
33378 }
33379 pub unsafe fn GetVideoProcessorFilterRange(
33380 &self,
33381 filter: D3D11_VIDEO_PROCESSOR_FILTER,
33382 ) -> windows_core::Result<D3D11_VIDEO_PROCESSOR_FILTER_RANGE> {
33383 unsafe {
33384 let mut result__ = core::mem::zeroed();
33385 (windows_core::Interface::vtable(self).GetVideoProcessorFilterRange)(
33386 windows_core::Interface::as_raw(self),
33387 filter,
33388 &mut result__,
33389 )
33390 .map(|| result__)
33391 }
33392 }
33393}
33394#[repr(C)]
33395pub struct ID3D11VideoProcessorEnumerator_Vtbl {
33396 pub base__: ID3D11DeviceChild_Vtbl,
33397 #[cfg(feature = "Win32_Graphics_Dxgi_Common")]
33398 pub GetVideoProcessorContentDesc: unsafe extern "system" fn(
33399 *mut core::ffi::c_void,
33400 *mut D3D11_VIDEO_PROCESSOR_CONTENT_DESC,
33401 ) -> windows_core::HRESULT,
33402 #[cfg(not(feature = "Win32_Graphics_Dxgi_Common"))]
33403 GetVideoProcessorContentDesc: usize,
33404 #[cfg(feature = "Win32_Graphics_Dxgi_Common")]
33405 pub CheckVideoProcessorFormat: unsafe extern "system" fn(
33406 *mut core::ffi::c_void,
33407 crate::Dxgi::Common::DXGI_FORMAT,
33408 *mut u32,
33409 ) -> windows_core::HRESULT,
33410 #[cfg(not(feature = "Win32_Graphics_Dxgi_Common"))]
33411 CheckVideoProcessorFormat: usize,
33412 pub GetVideoProcessorCaps: unsafe extern "system" fn(
33413 *mut core::ffi::c_void,
33414 *mut D3D11_VIDEO_PROCESSOR_CAPS,
33415 ) -> windows_core::HRESULT,
33416 pub GetVideoProcessorRateConversionCaps: unsafe extern "system" fn(
33417 *mut core::ffi::c_void,
33418 u32,
33419 *mut D3D11_VIDEO_PROCESSOR_RATE_CONVERSION_CAPS,
33420 )
33421 -> windows_core::HRESULT,
33422 #[cfg(feature = "Win32_Graphics_Dxgi_Common")]
33423 pub GetVideoProcessorCustomRate: unsafe extern "system" fn(
33424 *mut core::ffi::c_void,
33425 u32,
33426 u32,
33427 *mut D3D11_VIDEO_PROCESSOR_CUSTOM_RATE,
33428 ) -> windows_core::HRESULT,
33429 #[cfg(not(feature = "Win32_Graphics_Dxgi_Common"))]
33430 GetVideoProcessorCustomRate: usize,
33431 pub GetVideoProcessorFilterRange: unsafe extern "system" fn(
33432 *mut core::ffi::c_void,
33433 D3D11_VIDEO_PROCESSOR_FILTER,
33434 *mut D3D11_VIDEO_PROCESSOR_FILTER_RANGE,
33435 ) -> windows_core::HRESULT,
33436}
33437#[cfg(feature = "Win32_Graphics_Dxgi_Common")]
33438pub trait ID3D11VideoProcessorEnumerator_Impl: ID3D11DeviceChild_Impl {
33439 fn GetVideoProcessorContentDesc(
33440 &self,
33441 pcontentdesc: *mut D3D11_VIDEO_PROCESSOR_CONTENT_DESC,
33442 ) -> windows_core::Result<()>;
33443 fn CheckVideoProcessorFormat(
33444 &self,
33445 format: crate::Dxgi::Common::DXGI_FORMAT,
33446 ) -> windows_core::Result<u32>;
33447 fn GetVideoProcessorCaps(
33448 &self,
33449 pcaps: *mut D3D11_VIDEO_PROCESSOR_CAPS,
33450 ) -> windows_core::Result<()>;
33451 fn GetVideoProcessorRateConversionCaps(
33452 &self,
33453 typeindex: u32,
33454 pcaps: *mut D3D11_VIDEO_PROCESSOR_RATE_CONVERSION_CAPS,
33455 ) -> windows_core::Result<()>;
33456 fn GetVideoProcessorCustomRate(
33457 &self,
33458 typeindex: u32,
33459 customrateindex: u32,
33460 prate: *mut D3D11_VIDEO_PROCESSOR_CUSTOM_RATE,
33461 ) -> windows_core::Result<()>;
33462 fn GetVideoProcessorFilterRange(
33463 &self,
33464 filter: D3D11_VIDEO_PROCESSOR_FILTER,
33465 ) -> windows_core::Result<D3D11_VIDEO_PROCESSOR_FILTER_RANGE>;
33466}
33467#[cfg(feature = "Win32_Graphics_Dxgi_Common")]
33468impl ID3D11VideoProcessorEnumerator_Vtbl {
33469 pub const fn new<Identity: ID3D11VideoProcessorEnumerator_Impl, const OFFSET: isize>() -> Self {
33470 unsafe extern "system" fn GetVideoProcessorContentDesc<
33471 Identity: ID3D11VideoProcessorEnumerator_Impl,
33472 const OFFSET: isize,
33473 >(
33474 this: *mut core::ffi::c_void,
33475 pcontentdesc: *mut D3D11_VIDEO_PROCESSOR_CONTENT_DESC,
33476 ) -> windows_core::HRESULT {
33477 unsafe {
33478 let this: &Identity =
33479 &*((this as *const *const ()).offset(OFFSET) as *const Identity);
33480 ID3D11VideoProcessorEnumerator_Impl::GetVideoProcessorContentDesc(
33481 this,
33482 core::mem::transmute_copy(&pcontentdesc),
33483 )
33484 .into()
33485 }
33486 }
33487 unsafe extern "system" fn CheckVideoProcessorFormat<
33488 Identity: ID3D11VideoProcessorEnumerator_Impl,
33489 const OFFSET: isize,
33490 >(
33491 this: *mut core::ffi::c_void,
33492 format: crate::Dxgi::Common::DXGI_FORMAT,
33493 pflags: *mut u32,
33494 ) -> windows_core::HRESULT {
33495 unsafe {
33496 let this: &Identity =
33497 &*((this as *const *const ()).offset(OFFSET) as *const Identity);
33498 match ID3D11VideoProcessorEnumerator_Impl::CheckVideoProcessorFormat(
33499 this,
33500 core::mem::transmute_copy(&format),
33501 ) {
33502 Ok(ok__) => {
33503 pflags.write(core::mem::transmute(ok__));
33504 windows_core::HRESULT(0)
33505 }
33506 Err(err) => err.into(),
33507 }
33508 }
33509 }
33510 unsafe extern "system" fn GetVideoProcessorCaps<
33511 Identity: ID3D11VideoProcessorEnumerator_Impl,
33512 const OFFSET: isize,
33513 >(
33514 this: *mut core::ffi::c_void,
33515 pcaps: *mut D3D11_VIDEO_PROCESSOR_CAPS,
33516 ) -> windows_core::HRESULT {
33517 unsafe {
33518 let this: &Identity =
33519 &*((this as *const *const ()).offset(OFFSET) as *const Identity);
33520 ID3D11VideoProcessorEnumerator_Impl::GetVideoProcessorCaps(
33521 this,
33522 core::mem::transmute_copy(&pcaps),
33523 )
33524 .into()
33525 }
33526 }
33527 unsafe extern "system" fn GetVideoProcessorRateConversionCaps<
33528 Identity: ID3D11VideoProcessorEnumerator_Impl,
33529 const OFFSET: isize,
33530 >(
33531 this: *mut core::ffi::c_void,
33532 typeindex: u32,
33533 pcaps: *mut D3D11_VIDEO_PROCESSOR_RATE_CONVERSION_CAPS,
33534 ) -> windows_core::HRESULT {
33535 unsafe {
33536 let this: &Identity =
33537 &*((this as *const *const ()).offset(OFFSET) as *const Identity);
33538 ID3D11VideoProcessorEnumerator_Impl::GetVideoProcessorRateConversionCaps(
33539 this,
33540 core::mem::transmute_copy(&typeindex),
33541 core::mem::transmute_copy(&pcaps),
33542 )
33543 .into()
33544 }
33545 }
33546 unsafe extern "system" fn GetVideoProcessorCustomRate<
33547 Identity: ID3D11VideoProcessorEnumerator_Impl,
33548 const OFFSET: isize,
33549 >(
33550 this: *mut core::ffi::c_void,
33551 typeindex: u32,
33552 customrateindex: u32,
33553 prate: *mut D3D11_VIDEO_PROCESSOR_CUSTOM_RATE,
33554 ) -> windows_core::HRESULT {
33555 unsafe {
33556 let this: &Identity =
33557 &*((this as *const *const ()).offset(OFFSET) as *const Identity);
33558 ID3D11VideoProcessorEnumerator_Impl::GetVideoProcessorCustomRate(
33559 this,
33560 core::mem::transmute_copy(&typeindex),
33561 core::mem::transmute_copy(&customrateindex),
33562 core::mem::transmute_copy(&prate),
33563 )
33564 .into()
33565 }
33566 }
33567 unsafe extern "system" fn GetVideoProcessorFilterRange<
33568 Identity: ID3D11VideoProcessorEnumerator_Impl,
33569 const OFFSET: isize,
33570 >(
33571 this: *mut core::ffi::c_void,
33572 filter: D3D11_VIDEO_PROCESSOR_FILTER,
33573 prange: *mut D3D11_VIDEO_PROCESSOR_FILTER_RANGE,
33574 ) -> windows_core::HRESULT {
33575 unsafe {
33576 let this: &Identity =
33577 &*((this as *const *const ()).offset(OFFSET) as *const Identity);
33578 match ID3D11VideoProcessorEnumerator_Impl::GetVideoProcessorFilterRange(
33579 this,
33580 core::mem::transmute_copy(&filter),
33581 ) {
33582 Ok(ok__) => {
33583 prange.write(core::mem::transmute(ok__));
33584 windows_core::HRESULT(0)
33585 }
33586 Err(err) => err.into(),
33587 }
33588 }
33589 }
33590 Self {
33591 base__: ID3D11DeviceChild_Vtbl::new::<Identity, OFFSET>(),
33592 GetVideoProcessorContentDesc: GetVideoProcessorContentDesc::<Identity, OFFSET>,
33593 CheckVideoProcessorFormat: CheckVideoProcessorFormat::<Identity, OFFSET>,
33594 GetVideoProcessorCaps: GetVideoProcessorCaps::<Identity, OFFSET>,
33595 GetVideoProcessorRateConversionCaps: GetVideoProcessorRateConversionCaps::<
33596 Identity,
33597 OFFSET,
33598 >,
33599 GetVideoProcessorCustomRate: GetVideoProcessorCustomRate::<Identity, OFFSET>,
33600 GetVideoProcessorFilterRange: GetVideoProcessorFilterRange::<Identity, OFFSET>,
33601 }
33602 }
33603 pub fn matches(iid: &windows_core::GUID) -> bool {
33604 iid == &<ID3D11VideoProcessorEnumerator as windows_core::Interface>::IID
33605 || iid == &<ID3D11DeviceChild as windows_core::Interface>::IID
33606 }
33607}
33608#[cfg(feature = "Win32_Graphics_Dxgi_Common")]
33609impl windows_core::RuntimeName for ID3D11VideoProcessorEnumerator {}
33610#[cfg(feature = "Win32_Graphics_Dxgi_Common")]
33611unsafe impl Send for ID3D11VideoProcessorEnumerator {}
33612#[cfg(feature = "Win32_Graphics_Dxgi_Common")]
33613unsafe impl Sync for ID3D11VideoProcessorEnumerator {}
33614windows_core::imp::define_interface!(
33615 ID3D11VideoProcessorEnumerator1,
33616 ID3D11VideoProcessorEnumerator1_Vtbl,
33617 0x465217f2_5568_43cf_b5b9_f61d54531ca1
33618);
33619impl core::ops::Deref for ID3D11VideoProcessorEnumerator1 {
33620 type Target = ID3D11VideoProcessorEnumerator;
33621 fn deref(&self) -> &Self::Target {
33622 unsafe { core::mem::transmute(self) }
33623 }
33624}
33625windows_core::imp::interface_hierarchy!(
33626 ID3D11VideoProcessorEnumerator1,
33627 windows_core::IUnknown,
33628 ID3D11DeviceChild,
33629 ID3D11VideoProcessorEnumerator
33630);
33631impl ID3D11VideoProcessorEnumerator1 {
33632 #[cfg(feature = "Win32_Graphics_Dxgi_Common")]
33633 pub unsafe fn CheckVideoProcessorFormatConversion(
33634 &self,
33635 inputformat: crate::Dxgi::Common::DXGI_FORMAT,
33636 inputcolorspace: crate::Dxgi::Common::DXGI_COLOR_SPACE_TYPE,
33637 outputformat: crate::Dxgi::Common::DXGI_FORMAT,
33638 outputcolorspace: crate::Dxgi::Common::DXGI_COLOR_SPACE_TYPE,
33639 ) -> windows_core::Result<crate::Foundation::BOOL> {
33640 unsafe {
33641 let mut result__ = core::mem::zeroed();
33642 (windows_core::Interface::vtable(self).CheckVideoProcessorFormatConversion)(
33643 windows_core::Interface::as_raw(self),
33644 inputformat,
33645 inputcolorspace,
33646 outputformat,
33647 outputcolorspace,
33648 &mut result__,
33649 )
33650 .map(|| result__)
33651 }
33652 }
33653}
33654#[repr(C)]
33655pub struct ID3D11VideoProcessorEnumerator1_Vtbl {
33656 pub base__: ID3D11VideoProcessorEnumerator_Vtbl,
33657 #[cfg(feature = "Win32_Graphics_Dxgi_Common")]
33658 pub CheckVideoProcessorFormatConversion: unsafe extern "system" fn(
33659 *mut core::ffi::c_void,
33660 crate::Dxgi::Common::DXGI_FORMAT,
33661 crate::Dxgi::Common::DXGI_COLOR_SPACE_TYPE,
33662 crate::Dxgi::Common::DXGI_FORMAT,
33663 crate::Dxgi::Common::DXGI_COLOR_SPACE_TYPE,
33664 *mut crate::Foundation::BOOL,
33665 )
33666 -> windows_core::HRESULT,
33667 #[cfg(not(feature = "Win32_Graphics_Dxgi_Common"))]
33668 CheckVideoProcessorFormatConversion: usize,
33669}
33670#[cfg(feature = "Win32_Graphics_Dxgi_Common")]
33671pub trait ID3D11VideoProcessorEnumerator1_Impl: ID3D11VideoProcessorEnumerator_Impl {
33672 fn CheckVideoProcessorFormatConversion(
33673 &self,
33674 inputformat: crate::Dxgi::Common::DXGI_FORMAT,
33675 inputcolorspace: crate::Dxgi::Common::DXGI_COLOR_SPACE_TYPE,
33676 outputformat: crate::Dxgi::Common::DXGI_FORMAT,
33677 outputcolorspace: crate::Dxgi::Common::DXGI_COLOR_SPACE_TYPE,
33678 ) -> windows_core::Result<crate::Foundation::BOOL>;
33679}
33680#[cfg(feature = "Win32_Graphics_Dxgi_Common")]
33681impl ID3D11VideoProcessorEnumerator1_Vtbl {
33682 pub const fn new<Identity: ID3D11VideoProcessorEnumerator1_Impl, const OFFSET: isize>() -> Self
33683 {
33684 unsafe extern "system" fn CheckVideoProcessorFormatConversion<
33685 Identity: ID3D11VideoProcessorEnumerator1_Impl,
33686 const OFFSET: isize,
33687 >(
33688 this: *mut core::ffi::c_void,
33689 inputformat: crate::Dxgi::Common::DXGI_FORMAT,
33690 inputcolorspace: crate::Dxgi::Common::DXGI_COLOR_SPACE_TYPE,
33691 outputformat: crate::Dxgi::Common::DXGI_FORMAT,
33692 outputcolorspace: crate::Dxgi::Common::DXGI_COLOR_SPACE_TYPE,
33693 psupported: *mut crate::Foundation::BOOL,
33694 ) -> windows_core::HRESULT {
33695 unsafe {
33696 let this: &Identity =
33697 &*((this as *const *const ()).offset(OFFSET) as *const Identity);
33698 match ID3D11VideoProcessorEnumerator1_Impl::CheckVideoProcessorFormatConversion(
33699 this,
33700 core::mem::transmute_copy(&inputformat),
33701 core::mem::transmute_copy(&inputcolorspace),
33702 core::mem::transmute_copy(&outputformat),
33703 core::mem::transmute_copy(&outputcolorspace),
33704 ) {
33705 Ok(ok__) => {
33706 psupported.write(core::mem::transmute(ok__));
33707 windows_core::HRESULT(0)
33708 }
33709 Err(err) => err.into(),
33710 }
33711 }
33712 }
33713 Self {
33714 base__: ID3D11VideoProcessorEnumerator_Vtbl::new::<Identity, OFFSET>(),
33715 CheckVideoProcessorFormatConversion: CheckVideoProcessorFormatConversion::<
33716 Identity,
33717 OFFSET,
33718 >,
33719 }
33720 }
33721 pub fn matches(iid: &windows_core::GUID) -> bool {
33722 iid == &<ID3D11VideoProcessorEnumerator1 as windows_core::Interface>::IID
33723 || iid == &<ID3D11DeviceChild as windows_core::Interface>::IID
33724 || iid == &<ID3D11VideoProcessorEnumerator as windows_core::Interface>::IID
33725 }
33726}
33727#[cfg(feature = "Win32_Graphics_Dxgi_Common")]
33728impl windows_core::RuntimeName for ID3D11VideoProcessorEnumerator1 {}
33729#[cfg(feature = "Win32_Graphics_Dxgi_Common")]
33730unsafe impl Send for ID3D11VideoProcessorEnumerator1 {}
33731#[cfg(feature = "Win32_Graphics_Dxgi_Common")]
33732unsafe impl Sync for ID3D11VideoProcessorEnumerator1 {}
33733windows_core::imp::define_interface!(
33734 ID3D11VideoProcessorInputView,
33735 ID3D11VideoProcessorInputView_Vtbl,
33736 0x11ec5a5f_51dc_4945_ab34_6e8c21300ea5
33737);
33738impl core::ops::Deref for ID3D11VideoProcessorInputView {
33739 type Target = ID3D11View;
33740 fn deref(&self) -> &Self::Target {
33741 unsafe { core::mem::transmute(self) }
33742 }
33743}
33744windows_core::imp::interface_hierarchy!(
33745 ID3D11VideoProcessorInputView,
33746 windows_core::IUnknown,
33747 ID3D11DeviceChild,
33748 ID3D11View
33749);
33750impl ID3D11VideoProcessorInputView {
33751 pub unsafe fn GetDesc(&self) -> D3D11_VIDEO_PROCESSOR_INPUT_VIEW_DESC {
33752 unsafe {
33753 let mut result__ = core::mem::zeroed();
33754 (windows_core::Interface::vtable(self).GetDesc)(
33755 windows_core::Interface::as_raw(self),
33756 &mut result__,
33757 );
33758 result__
33759 }
33760 }
33761}
33762#[repr(C)]
33763pub struct ID3D11VideoProcessorInputView_Vtbl {
33764 pub base__: ID3D11View_Vtbl,
33765 pub GetDesc: unsafe extern "system" fn(
33766 *mut core::ffi::c_void,
33767 *mut D3D11_VIDEO_PROCESSOR_INPUT_VIEW_DESC,
33768 ),
33769}
33770pub trait ID3D11VideoProcessorInputView_Impl: ID3D11View_Impl {
33771 fn GetDesc(&self, pdesc: *mut D3D11_VIDEO_PROCESSOR_INPUT_VIEW_DESC);
33772}
33773impl ID3D11VideoProcessorInputView_Vtbl {
33774 pub const fn new<Identity: ID3D11VideoProcessorInputView_Impl, const OFFSET: isize>() -> Self {
33775 unsafe extern "system" fn GetDesc<
33776 Identity: ID3D11VideoProcessorInputView_Impl,
33777 const OFFSET: isize,
33778 >(
33779 this: *mut core::ffi::c_void,
33780 pdesc: *mut D3D11_VIDEO_PROCESSOR_INPUT_VIEW_DESC,
33781 ) {
33782 unsafe {
33783 let this: &Identity =
33784 &*((this as *const *const ()).offset(OFFSET) as *const Identity);
33785 ID3D11VideoProcessorInputView_Impl::GetDesc(this, core::mem::transmute_copy(&pdesc))
33786 }
33787 }
33788 Self {
33789 base__: ID3D11View_Vtbl::new::<Identity, OFFSET>(),
33790 GetDesc: GetDesc::<Identity, OFFSET>,
33791 }
33792 }
33793 pub fn matches(iid: &windows_core::GUID) -> bool {
33794 iid == &<ID3D11VideoProcessorInputView as windows_core::Interface>::IID
33795 || iid == &<ID3D11DeviceChild as windows_core::Interface>::IID
33796 || iid == &<ID3D11View as windows_core::Interface>::IID
33797 }
33798}
33799impl windows_core::RuntimeName for ID3D11VideoProcessorInputView {}
33800unsafe impl Send for ID3D11VideoProcessorInputView {}
33801unsafe impl Sync for ID3D11VideoProcessorInputView {}
33802windows_core::imp::define_interface!(
33803 ID3D11VideoProcessorOutputView,
33804 ID3D11VideoProcessorOutputView_Vtbl,
33805 0xa048285e_25a9_4527_bd93_d68b68c44254
33806);
33807impl core::ops::Deref for ID3D11VideoProcessorOutputView {
33808 type Target = ID3D11View;
33809 fn deref(&self) -> &Self::Target {
33810 unsafe { core::mem::transmute(self) }
33811 }
33812}
33813windows_core::imp::interface_hierarchy!(
33814 ID3D11VideoProcessorOutputView,
33815 windows_core::IUnknown,
33816 ID3D11DeviceChild,
33817 ID3D11View
33818);
33819impl ID3D11VideoProcessorOutputView {
33820 pub unsafe fn GetDesc(&self) -> D3D11_VIDEO_PROCESSOR_OUTPUT_VIEW_DESC {
33821 unsafe {
33822 let mut result__ = core::mem::zeroed();
33823 (windows_core::Interface::vtable(self).GetDesc)(
33824 windows_core::Interface::as_raw(self),
33825 &mut result__,
33826 );
33827 result__
33828 }
33829 }
33830}
33831#[repr(C)]
33832pub struct ID3D11VideoProcessorOutputView_Vtbl {
33833 pub base__: ID3D11View_Vtbl,
33834 pub GetDesc: unsafe extern "system" fn(
33835 *mut core::ffi::c_void,
33836 *mut D3D11_VIDEO_PROCESSOR_OUTPUT_VIEW_DESC,
33837 ),
33838}
33839pub trait ID3D11VideoProcessorOutputView_Impl: ID3D11View_Impl {
33840 fn GetDesc(&self, pdesc: *mut D3D11_VIDEO_PROCESSOR_OUTPUT_VIEW_DESC);
33841}
33842impl ID3D11VideoProcessorOutputView_Vtbl {
33843 pub const fn new<Identity: ID3D11VideoProcessorOutputView_Impl, const OFFSET: isize>() -> Self {
33844 unsafe extern "system" fn GetDesc<
33845 Identity: ID3D11VideoProcessorOutputView_Impl,
33846 const OFFSET: isize,
33847 >(
33848 this: *mut core::ffi::c_void,
33849 pdesc: *mut D3D11_VIDEO_PROCESSOR_OUTPUT_VIEW_DESC,
33850 ) {
33851 unsafe {
33852 let this: &Identity =
33853 &*((this as *const *const ()).offset(OFFSET) as *const Identity);
33854 ID3D11VideoProcessorOutputView_Impl::GetDesc(
33855 this,
33856 core::mem::transmute_copy(&pdesc),
33857 )
33858 }
33859 }
33860 Self {
33861 base__: ID3D11View_Vtbl::new::<Identity, OFFSET>(),
33862 GetDesc: GetDesc::<Identity, OFFSET>,
33863 }
33864 }
33865 pub fn matches(iid: &windows_core::GUID) -> bool {
33866 iid == &<ID3D11VideoProcessorOutputView as windows_core::Interface>::IID
33867 || iid == &<ID3D11DeviceChild as windows_core::Interface>::IID
33868 || iid == &<ID3D11View as windows_core::Interface>::IID
33869 }
33870}
33871impl windows_core::RuntimeName for ID3D11VideoProcessorOutputView {}
33872unsafe impl Send for ID3D11VideoProcessorOutputView {}
33873unsafe impl Sync for ID3D11VideoProcessorOutputView {}
33874windows_core::imp::define_interface!(
33875 ID3D11View,
33876 ID3D11View_Vtbl,
33877 0x839d1216_bb2e_412b_b7f4_a9dbebe08ed1
33878);
33879impl core::ops::Deref for ID3D11View {
33880 type Target = ID3D11DeviceChild;
33881 fn deref(&self) -> &Self::Target {
33882 unsafe { core::mem::transmute(self) }
33883 }
33884}
33885windows_core::imp::interface_hierarchy!(ID3D11View, windows_core::IUnknown, ID3D11DeviceChild);
33886impl ID3D11View {
33887 pub unsafe fn GetResource(&self) -> windows_core::Result<ID3D11Resource> {
33888 unsafe {
33889 let mut result__ = core::mem::zeroed();
33890 (windows_core::Interface::vtable(self).GetResource)(
33891 windows_core::Interface::as_raw(self),
33892 &mut result__,
33893 );
33894 windows_core::Type::from_abi(result__)
33895 }
33896 }
33897}
33898#[repr(C)]
33899pub struct ID3D11View_Vtbl {
33900 pub base__: ID3D11DeviceChild_Vtbl,
33901 pub GetResource: unsafe extern "system" fn(*mut core::ffi::c_void, *mut *mut core::ffi::c_void),
33902}
33903pub trait ID3D11View_Impl: ID3D11DeviceChild_Impl {
33904 fn GetResource(&self, ppresource: windows_core::OutRef<'_, ID3D11Resource>);
33905}
33906impl ID3D11View_Vtbl {
33907 pub const fn new<Identity: ID3D11View_Impl, const OFFSET: isize>() -> Self {
33908 unsafe extern "system" fn GetResource<Identity: ID3D11View_Impl, const OFFSET: isize>(
33909 this: *mut core::ffi::c_void,
33910 ppresource: *mut *mut core::ffi::c_void,
33911 ) {
33912 unsafe {
33913 let this: &Identity =
33914 &*((this as *const *const ()).offset(OFFSET) as *const Identity);
33915 ID3D11View_Impl::GetResource(this, core::mem::transmute_copy(&ppresource))
33916 }
33917 }
33918 Self {
33919 base__: ID3D11DeviceChild_Vtbl::new::<Identity, OFFSET>(),
33920 GetResource: GetResource::<Identity, OFFSET>,
33921 }
33922 }
33923 pub fn matches(iid: &windows_core::GUID) -> bool {
33924 iid == &<ID3D11View as windows_core::Interface>::IID
33925 || iid == &<ID3D11DeviceChild as windows_core::Interface>::IID
33926 }
33927}
33928impl windows_core::RuntimeName for ID3D11View {}
33929unsafe impl Send for ID3D11View {}
33930unsafe impl Sync for ID3D11View {}
33931windows_core::imp::define_interface!(
33932 ID3DDeviceContextState,
33933 ID3DDeviceContextState_Vtbl,
33934 0x5c1e0d8a_7c23_48f9_8c59_a92958ceff11
33935);
33936impl core::ops::Deref for ID3DDeviceContextState {
33937 type Target = ID3D11DeviceChild;
33938 fn deref(&self) -> &Self::Target {
33939 unsafe { core::mem::transmute(self) }
33940 }
33941}
33942windows_core::imp::interface_hierarchy!(
33943 ID3DDeviceContextState,
33944 windows_core::IUnknown,
33945 ID3D11DeviceChild
33946);
33947#[repr(C)]
33948pub struct ID3DDeviceContextState_Vtbl {
33949 pub base__: ID3D11DeviceChild_Vtbl,
33950}
33951pub trait ID3DDeviceContextState_Impl: ID3D11DeviceChild_Impl {}
33952impl ID3DDeviceContextState_Vtbl {
33953 pub const fn new<Identity: ID3DDeviceContextState_Impl, const OFFSET: isize>() -> Self {
33954 Self {
33955 base__: ID3D11DeviceChild_Vtbl::new::<Identity, OFFSET>(),
33956 }
33957 }
33958 pub fn matches(iid: &windows_core::GUID) -> bool {
33959 iid == &<ID3DDeviceContextState as windows_core::Interface>::IID
33960 || iid == &<ID3D11DeviceChild as windows_core::Interface>::IID
33961 }
33962}
33963impl windows_core::RuntimeName for ID3DDeviceContextState {}
33964unsafe impl Send for ID3DDeviceContextState {}
33965unsafe impl Sync for ID3DDeviceContextState {}
33966windows_core::imp::define_interface!(
33967 ID3DUserDefinedAnnotation,
33968 ID3DUserDefinedAnnotation_Vtbl,
33969 0xb2daad8b_03d4_4dbf_95eb_32ab4b63d0ab
33970);
33971windows_core::imp::interface_hierarchy!(ID3DUserDefinedAnnotation, windows_core::IUnknown);
33972impl ID3DUserDefinedAnnotation {
33973 pub unsafe fn BeginEvent<P0>(&self, name: P0) -> i32
33974 where
33975 P0: windows_core::Param<crate::core_supplemental::PCWSTR>,
33976 {
33977 unsafe {
33978 (windows_core::Interface::vtable(self).BeginEvent)(
33979 windows_core::Interface::as_raw(self),
33980 name.param().abi(),
33981 )
33982 }
33983 }
33984 pub unsafe fn EndEvent(&self) -> i32 {
33985 unsafe {
33986 (windows_core::Interface::vtable(self).EndEvent)(windows_core::Interface::as_raw(self))
33987 }
33988 }
33989 pub unsafe fn SetMarker<P0>(&self, name: P0)
33990 where
33991 P0: windows_core::Param<crate::core_supplemental::PCWSTR>,
33992 {
33993 unsafe {
33994 (windows_core::Interface::vtable(self).SetMarker)(
33995 windows_core::Interface::as_raw(self),
33996 name.param().abi(),
33997 )
33998 }
33999 }
34000 pub unsafe fn GetStatus(&self) -> crate::Foundation::BOOL {
34001 unsafe {
34002 (windows_core::Interface::vtable(self).GetStatus)(windows_core::Interface::as_raw(self))
34003 }
34004 }
34005}
34006#[repr(C)]
34007pub struct ID3DUserDefinedAnnotation_Vtbl {
34008 pub base__: windows_core::IUnknown_Vtbl,
34009 pub BeginEvent: unsafe extern "system" fn(*mut core::ffi::c_void, crate::core_supplemental::PCWSTR) -> i32,
34010 pub EndEvent: unsafe extern "system" fn(*mut core::ffi::c_void) -> i32,
34011 pub SetMarker: unsafe extern "system" fn(*mut core::ffi::c_void, crate::core_supplemental::PCWSTR),
34012 pub GetStatus:
34013 unsafe extern "system" fn(*mut core::ffi::c_void) -> crate::Foundation::BOOL,
34014}
34015pub trait ID3DUserDefinedAnnotation_Impl: windows_core::IUnknownImpl {
34016 fn BeginEvent(&self, name: &crate::core_supplemental::PCWSTR) -> i32;
34017 fn EndEvent(&self) -> i32;
34018 fn SetMarker(&self, name: &crate::core_supplemental::PCWSTR);
34019 fn GetStatus(&self) -> crate::Foundation::BOOL;
34020}
34021impl ID3DUserDefinedAnnotation_Vtbl {
34022 pub const fn new<Identity: ID3DUserDefinedAnnotation_Impl, const OFFSET: isize>() -> Self {
34023 unsafe extern "system" fn BeginEvent<
34024 Identity: ID3DUserDefinedAnnotation_Impl,
34025 const OFFSET: isize,
34026 >(
34027 this: *mut core::ffi::c_void,
34028 name: crate::core_supplemental::PCWSTR,
34029 ) -> i32 {
34030 unsafe {
34031 let this: &Identity =
34032 &*((this as *const *const ()).offset(OFFSET) as *const Identity);
34033 ID3DUserDefinedAnnotation_Impl::BeginEvent(this, core::mem::transmute(&name))
34034 }
34035 }
34036 unsafe extern "system" fn EndEvent<
34037 Identity: ID3DUserDefinedAnnotation_Impl,
34038 const OFFSET: isize,
34039 >(
34040 this: *mut core::ffi::c_void,
34041 ) -> i32 {
34042 unsafe {
34043 let this: &Identity =
34044 &*((this as *const *const ()).offset(OFFSET) as *const Identity);
34045 ID3DUserDefinedAnnotation_Impl::EndEvent(this)
34046 }
34047 }
34048 unsafe extern "system" fn SetMarker<
34049 Identity: ID3DUserDefinedAnnotation_Impl,
34050 const OFFSET: isize,
34051 >(
34052 this: *mut core::ffi::c_void,
34053 name: crate::core_supplemental::PCWSTR,
34054 ) {
34055 unsafe {
34056 let this: &Identity =
34057 &*((this as *const *const ()).offset(OFFSET) as *const Identity);
34058 ID3DUserDefinedAnnotation_Impl::SetMarker(this, core::mem::transmute(&name))
34059 }
34060 }
34061 unsafe extern "system" fn GetStatus<
34062 Identity: ID3DUserDefinedAnnotation_Impl,
34063 const OFFSET: isize,
34064 >(
34065 this: *mut core::ffi::c_void,
34066 ) -> crate::Foundation::BOOL {
34067 unsafe {
34068 let this: &Identity =
34069 &*((this as *const *const ()).offset(OFFSET) as *const Identity);
34070 ID3DUserDefinedAnnotation_Impl::GetStatus(this)
34071 }
34072 }
34073 Self {
34074 base__: windows_core::IUnknown_Vtbl::new::<Identity, OFFSET>(),
34075 BeginEvent: BeginEvent::<Identity, OFFSET>,
34076 EndEvent: EndEvent::<Identity, OFFSET>,
34077 SetMarker: SetMarker::<Identity, OFFSET>,
34078 GetStatus: GetStatus::<Identity, OFFSET>,
34079 }
34080 }
34081 pub fn matches(iid: &windows_core::GUID) -> bool {
34082 iid == &<ID3DUserDefinedAnnotation as windows_core::Interface>::IID
34083 }
34084}
34085impl windows_core::RuntimeName for ID3DUserDefinedAnnotation {}
34086unsafe impl Send for ID3DUserDefinedAnnotation {}
34087unsafe impl Sync for ID3DUserDefinedAnnotation {}
34088windows_core::imp::define_interface!(
34089 ID3DX11FFT,
34090 ID3DX11FFT_Vtbl,
34091 0xb3f7a938_4c93_4310_a675_b30d6de50553
34092);
34093windows_core::imp::interface_hierarchy!(ID3DX11FFT, windows_core::IUnknown);
34094impl ID3DX11FFT {
34095 pub unsafe fn SetForwardScale(&self, forwardscale: f32) -> windows_core::Result<()> {
34096 unsafe {
34097 (windows_core::Interface::vtable(self).SetForwardScale)(
34098 windows_core::Interface::as_raw(self),
34099 forwardscale,
34100 )
34101 .ok()
34102 }
34103 }
34104 pub unsafe fn GetForwardScale(&self) -> f32 {
34105 unsafe {
34106 (windows_core::Interface::vtable(self).GetForwardScale)(
34107 windows_core::Interface::as_raw(self),
34108 )
34109 }
34110 }
34111 pub unsafe fn SetInverseScale(&self, inversescale: f32) -> windows_core::Result<()> {
34112 unsafe {
34113 (windows_core::Interface::vtable(self).SetInverseScale)(
34114 windows_core::Interface::as_raw(self),
34115 inversescale,
34116 )
34117 .ok()
34118 }
34119 }
34120 pub unsafe fn GetInverseScale(&self) -> f32 {
34121 unsafe {
34122 (windows_core::Interface::vtable(self).GetInverseScale)(
34123 windows_core::Interface::as_raw(self),
34124 )
34125 }
34126 }
34127 pub unsafe fn AttachBuffersAndPrecompute(
34128 &self,
34129 pptempbuffers: &[Option<ID3D11UnorderedAccessView>],
34130 ppprecomputebuffersizes: &[Option<ID3D11UnorderedAccessView>],
34131 ) -> windows_core::Result<()> {
34132 unsafe {
34133 (windows_core::Interface::vtable(self).AttachBuffersAndPrecompute)(
34134 windows_core::Interface::as_raw(self),
34135 pptempbuffers.len().try_into().unwrap(),
34136 core::mem::transmute(pptempbuffers.as_ptr()),
34137 ppprecomputebuffersizes.len().try_into().unwrap(),
34138 core::mem::transmute(ppprecomputebuffersizes.as_ptr()),
34139 )
34140 .ok()
34141 }
34142 }
34143 pub unsafe fn ForwardTransform<P0>(
34144 &self,
34145 pinputbuffer: P0,
34146 ppoutputbuffer: *mut Option<ID3D11UnorderedAccessView>,
34147 ) -> windows_core::Result<()>
34148 where
34149 P0: windows_core::Param<ID3D11UnorderedAccessView>,
34150 {
34151 unsafe {
34152 (windows_core::Interface::vtable(self).ForwardTransform)(
34153 windows_core::Interface::as_raw(self),
34154 pinputbuffer.param().abi(),
34155 core::mem::transmute(ppoutputbuffer),
34156 )
34157 .ok()
34158 }
34159 }
34160 pub unsafe fn InverseTransform<P0>(
34161 &self,
34162 pinputbuffer: P0,
34163 ppoutputbuffer: *mut Option<ID3D11UnorderedAccessView>,
34164 ) -> windows_core::Result<()>
34165 where
34166 P0: windows_core::Param<ID3D11UnorderedAccessView>,
34167 {
34168 unsafe {
34169 (windows_core::Interface::vtable(self).InverseTransform)(
34170 windows_core::Interface::as_raw(self),
34171 pinputbuffer.param().abi(),
34172 core::mem::transmute(ppoutputbuffer),
34173 )
34174 .ok()
34175 }
34176 }
34177}
34178#[repr(C)]
34179pub struct ID3DX11FFT_Vtbl {
34180 pub base__: windows_core::IUnknown_Vtbl,
34181 pub SetForwardScale:
34182 unsafe extern "system" fn(*mut core::ffi::c_void, f32) -> windows_core::HRESULT,
34183 pub GetForwardScale: unsafe extern "system" fn(*mut core::ffi::c_void) -> f32,
34184 pub SetInverseScale:
34185 unsafe extern "system" fn(*mut core::ffi::c_void, f32) -> windows_core::HRESULT,
34186 pub GetInverseScale: unsafe extern "system" fn(*mut core::ffi::c_void) -> f32,
34187 pub AttachBuffersAndPrecompute: unsafe extern "system" fn(
34188 *mut core::ffi::c_void,
34189 u32,
34190 *const *mut core::ffi::c_void,
34191 u32,
34192 *const *mut core::ffi::c_void,
34193 ) -> windows_core::HRESULT,
34194 pub ForwardTransform: unsafe extern "system" fn(
34195 *mut core::ffi::c_void,
34196 *mut core::ffi::c_void,
34197 *mut *mut core::ffi::c_void,
34198 ) -> windows_core::HRESULT,
34199 pub InverseTransform: unsafe extern "system" fn(
34200 *mut core::ffi::c_void,
34201 *mut core::ffi::c_void,
34202 *mut *mut core::ffi::c_void,
34203 ) -> windows_core::HRESULT,
34204}
34205pub trait ID3DX11FFT_Impl: windows_core::IUnknownImpl {
34206 fn SetForwardScale(&self, forwardscale: f32) -> windows_core::Result<()>;
34207 fn GetForwardScale(&self) -> f32;
34208 fn SetInverseScale(&self, inversescale: f32) -> windows_core::Result<()>;
34209 fn GetInverseScale(&self) -> f32;
34210 fn AttachBuffersAndPrecompute(
34211 &self,
34212 numtempbuffers: u32,
34213 pptempbuffers: *const Option<ID3D11UnorderedAccessView>,
34214 numprecomputebuffers: u32,
34215 ppprecomputebuffersizes: *const Option<ID3D11UnorderedAccessView>,
34216 ) -> windows_core::Result<()>;
34217 fn ForwardTransform(
34218 &self,
34219 pinputbuffer: windows_core::Ref<'_, ID3D11UnorderedAccessView>,
34220 ppoutputbuffer: windows_core::OutRef<'_, ID3D11UnorderedAccessView>,
34221 ) -> windows_core::Result<()>;
34222 fn InverseTransform(
34223 &self,
34224 pinputbuffer: windows_core::Ref<'_, ID3D11UnorderedAccessView>,
34225 ppoutputbuffer: windows_core::OutRef<'_, ID3D11UnorderedAccessView>,
34226 ) -> windows_core::Result<()>;
34227}
34228impl ID3DX11FFT_Vtbl {
34229 pub const fn new<Identity: ID3DX11FFT_Impl, const OFFSET: isize>() -> Self {
34230 unsafe extern "system" fn SetForwardScale<
34231 Identity: ID3DX11FFT_Impl,
34232 const OFFSET: isize,
34233 >(
34234 this: *mut core::ffi::c_void,
34235 forwardscale: f32,
34236 ) -> windows_core::HRESULT {
34237 unsafe {
34238 let this: &Identity =
34239 &*((this as *const *const ()).offset(OFFSET) as *const Identity);
34240 ID3DX11FFT_Impl::SetForwardScale(this, core::mem::transmute_copy(&forwardscale))
34241 .into()
34242 }
34243 }
34244 unsafe extern "system" fn GetForwardScale<
34245 Identity: ID3DX11FFT_Impl,
34246 const OFFSET: isize,
34247 >(
34248 this: *mut core::ffi::c_void,
34249 ) -> f32 {
34250 unsafe {
34251 let this: &Identity =
34252 &*((this as *const *const ()).offset(OFFSET) as *const Identity);
34253 ID3DX11FFT_Impl::GetForwardScale(this)
34254 }
34255 }
34256 unsafe extern "system" fn SetInverseScale<
34257 Identity: ID3DX11FFT_Impl,
34258 const OFFSET: isize,
34259 >(
34260 this: *mut core::ffi::c_void,
34261 inversescale: f32,
34262 ) -> windows_core::HRESULT {
34263 unsafe {
34264 let this: &Identity =
34265 &*((this as *const *const ()).offset(OFFSET) as *const Identity);
34266 ID3DX11FFT_Impl::SetInverseScale(this, core::mem::transmute_copy(&inversescale))
34267 .into()
34268 }
34269 }
34270 unsafe extern "system" fn GetInverseScale<
34271 Identity: ID3DX11FFT_Impl,
34272 const OFFSET: isize,
34273 >(
34274 this: *mut core::ffi::c_void,
34275 ) -> f32 {
34276 unsafe {
34277 let this: &Identity =
34278 &*((this as *const *const ()).offset(OFFSET) as *const Identity);
34279 ID3DX11FFT_Impl::GetInverseScale(this)
34280 }
34281 }
34282 unsafe extern "system" fn AttachBuffersAndPrecompute<
34283 Identity: ID3DX11FFT_Impl,
34284 const OFFSET: isize,
34285 >(
34286 this: *mut core::ffi::c_void,
34287 numtempbuffers: u32,
34288 pptempbuffers: *const *mut core::ffi::c_void,
34289 numprecomputebuffers: u32,
34290 ppprecomputebuffersizes: *const *mut core::ffi::c_void,
34291 ) -> windows_core::HRESULT {
34292 unsafe {
34293 let this: &Identity =
34294 &*((this as *const *const ()).offset(OFFSET) as *const Identity);
34295 ID3DX11FFT_Impl::AttachBuffersAndPrecompute(
34296 this,
34297 core::mem::transmute_copy(&numtempbuffers),
34298 core::mem::transmute_copy(&pptempbuffers),
34299 core::mem::transmute_copy(&numprecomputebuffers),
34300 core::mem::transmute_copy(&ppprecomputebuffersizes),
34301 )
34302 .into()
34303 }
34304 }
34305 unsafe extern "system" fn ForwardTransform<
34306 Identity: ID3DX11FFT_Impl,
34307 const OFFSET: isize,
34308 >(
34309 this: *mut core::ffi::c_void,
34310 pinputbuffer: *mut core::ffi::c_void,
34311 ppoutputbuffer: *mut *mut core::ffi::c_void,
34312 ) -> windows_core::HRESULT {
34313 unsafe {
34314 let this: &Identity =
34315 &*((this as *const *const ()).offset(OFFSET) as *const Identity);
34316 ID3DX11FFT_Impl::ForwardTransform(
34317 this,
34318 core::mem::transmute_copy(&pinputbuffer),
34319 core::mem::transmute_copy(&ppoutputbuffer),
34320 )
34321 .into()
34322 }
34323 }
34324 unsafe extern "system" fn InverseTransform<
34325 Identity: ID3DX11FFT_Impl,
34326 const OFFSET: isize,
34327 >(
34328 this: *mut core::ffi::c_void,
34329 pinputbuffer: *mut core::ffi::c_void,
34330 ppoutputbuffer: *mut *mut core::ffi::c_void,
34331 ) -> windows_core::HRESULT {
34332 unsafe {
34333 let this: &Identity =
34334 &*((this as *const *const ()).offset(OFFSET) as *const Identity);
34335 ID3DX11FFT_Impl::InverseTransform(
34336 this,
34337 core::mem::transmute_copy(&pinputbuffer),
34338 core::mem::transmute_copy(&ppoutputbuffer),
34339 )
34340 .into()
34341 }
34342 }
34343 Self {
34344 base__: windows_core::IUnknown_Vtbl::new::<Identity, OFFSET>(),
34345 SetForwardScale: SetForwardScale::<Identity, OFFSET>,
34346 GetForwardScale: GetForwardScale::<Identity, OFFSET>,
34347 SetInverseScale: SetInverseScale::<Identity, OFFSET>,
34348 GetInverseScale: GetInverseScale::<Identity, OFFSET>,
34349 AttachBuffersAndPrecompute: AttachBuffersAndPrecompute::<Identity, OFFSET>,
34350 ForwardTransform: ForwardTransform::<Identity, OFFSET>,
34351 InverseTransform: InverseTransform::<Identity, OFFSET>,
34352 }
34353 }
34354 pub fn matches(iid: &windows_core::GUID) -> bool {
34355 iid == &<ID3DX11FFT as windows_core::Interface>::IID
34356 }
34357}
34358impl windows_core::RuntimeName for ID3DX11FFT {}
34359unsafe impl Send for ID3DX11FFT {}
34360unsafe impl Sync for ID3DX11FFT {}
34361windows_core::imp::define_interface!(
34362 ID3DX11Scan,
34363 ID3DX11Scan_Vtbl,
34364 0x5089b68f_e71d_4d38_be8e_f363b95a9405
34365);
34366windows_core::imp::interface_hierarchy!(ID3DX11Scan, windows_core::IUnknown);
34367impl ID3DX11Scan {
34368 pub unsafe fn SetScanDirection(
34369 &self,
34370 direction: D3DX11_SCAN_DIRECTION,
34371 ) -> windows_core::Result<()> {
34372 unsafe {
34373 (windows_core::Interface::vtable(self).SetScanDirection)(
34374 windows_core::Interface::as_raw(self),
34375 direction,
34376 )
34377 .ok()
34378 }
34379 }
34380 pub unsafe fn Scan<P3, P4>(
34381 &self,
34382 elementtype: D3DX11_SCAN_DATA_TYPE,
34383 opcode: D3DX11_SCAN_OPCODE,
34384 elementscansize: u32,
34385 psrc: P3,
34386 pdst: P4,
34387 ) -> windows_core::Result<()>
34388 where
34389 P3: windows_core::Param<ID3D11UnorderedAccessView>,
34390 P4: windows_core::Param<ID3D11UnorderedAccessView>,
34391 {
34392 unsafe {
34393 (windows_core::Interface::vtable(self).Scan)(
34394 windows_core::Interface::as_raw(self),
34395 elementtype,
34396 opcode,
34397 elementscansize,
34398 psrc.param().abi(),
34399 pdst.param().abi(),
34400 )
34401 .ok()
34402 }
34403 }
34404 pub unsafe fn Multiscan<P5, P6>(
34405 &self,
34406 elementtype: D3DX11_SCAN_DATA_TYPE,
34407 opcode: D3DX11_SCAN_OPCODE,
34408 elementscansize: u32,
34409 elementscanpitch: u32,
34410 scancount: u32,
34411 psrc: P5,
34412 pdst: P6,
34413 ) -> windows_core::Result<()>
34414 where
34415 P5: windows_core::Param<ID3D11UnorderedAccessView>,
34416 P6: windows_core::Param<ID3D11UnorderedAccessView>,
34417 {
34418 unsafe {
34419 (windows_core::Interface::vtable(self).Multiscan)(
34420 windows_core::Interface::as_raw(self),
34421 elementtype,
34422 opcode,
34423 elementscansize,
34424 elementscanpitch,
34425 scancount,
34426 psrc.param().abi(),
34427 pdst.param().abi(),
34428 )
34429 .ok()
34430 }
34431 }
34432}
34433#[repr(C)]
34434pub struct ID3DX11Scan_Vtbl {
34435 pub base__: windows_core::IUnknown_Vtbl,
34436 pub SetScanDirection: unsafe extern "system" fn(
34437 *mut core::ffi::c_void,
34438 D3DX11_SCAN_DIRECTION,
34439 ) -> windows_core::HRESULT,
34440 pub Scan: unsafe extern "system" fn(
34441 *mut core::ffi::c_void,
34442 D3DX11_SCAN_DATA_TYPE,
34443 D3DX11_SCAN_OPCODE,
34444 u32,
34445 *mut core::ffi::c_void,
34446 *mut core::ffi::c_void,
34447 ) -> windows_core::HRESULT,
34448 pub Multiscan: unsafe extern "system" fn(
34449 *mut core::ffi::c_void,
34450 D3DX11_SCAN_DATA_TYPE,
34451 D3DX11_SCAN_OPCODE,
34452 u32,
34453 u32,
34454 u32,
34455 *mut core::ffi::c_void,
34456 *mut core::ffi::c_void,
34457 ) -> windows_core::HRESULT,
34458}
34459pub trait ID3DX11Scan_Impl: windows_core::IUnknownImpl {
34460 fn SetScanDirection(&self, direction: D3DX11_SCAN_DIRECTION) -> windows_core::Result<()>;
34461 fn Scan(
34462 &self,
34463 elementtype: D3DX11_SCAN_DATA_TYPE,
34464 opcode: D3DX11_SCAN_OPCODE,
34465 elementscansize: u32,
34466 psrc: windows_core::Ref<'_, ID3D11UnorderedAccessView>,
34467 pdst: windows_core::Ref<'_, ID3D11UnorderedAccessView>,
34468 ) -> windows_core::Result<()>;
34469 fn Multiscan(
34470 &self,
34471 elementtype: D3DX11_SCAN_DATA_TYPE,
34472 opcode: D3DX11_SCAN_OPCODE,
34473 elementscansize: u32,
34474 elementscanpitch: u32,
34475 scancount: u32,
34476 psrc: windows_core::Ref<'_, ID3D11UnorderedAccessView>,
34477 pdst: windows_core::Ref<'_, ID3D11UnorderedAccessView>,
34478 ) -> windows_core::Result<()>;
34479}
34480impl ID3DX11Scan_Vtbl {
34481 pub const fn new<Identity: ID3DX11Scan_Impl, const OFFSET: isize>() -> Self {
34482 unsafe extern "system" fn SetScanDirection<
34483 Identity: ID3DX11Scan_Impl,
34484 const OFFSET: isize,
34485 >(
34486 this: *mut core::ffi::c_void,
34487 direction: D3DX11_SCAN_DIRECTION,
34488 ) -> windows_core::HRESULT {
34489 unsafe {
34490 let this: &Identity =
34491 &*((this as *const *const ()).offset(OFFSET) as *const Identity);
34492 ID3DX11Scan_Impl::SetScanDirection(this, core::mem::transmute_copy(&direction))
34493 .into()
34494 }
34495 }
34496 unsafe extern "system" fn Scan<Identity: ID3DX11Scan_Impl, const OFFSET: isize>(
34497 this: *mut core::ffi::c_void,
34498 elementtype: D3DX11_SCAN_DATA_TYPE,
34499 opcode: D3DX11_SCAN_OPCODE,
34500 elementscansize: u32,
34501 psrc: *mut core::ffi::c_void,
34502 pdst: *mut core::ffi::c_void,
34503 ) -> windows_core::HRESULT {
34504 unsafe {
34505 let this: &Identity =
34506 &*((this as *const *const ()).offset(OFFSET) as *const Identity);
34507 ID3DX11Scan_Impl::Scan(
34508 this,
34509 core::mem::transmute_copy(&elementtype),
34510 core::mem::transmute_copy(&opcode),
34511 core::mem::transmute_copy(&elementscansize),
34512 core::mem::transmute_copy(&psrc),
34513 core::mem::transmute_copy(&pdst),
34514 )
34515 .into()
34516 }
34517 }
34518 unsafe extern "system" fn Multiscan<Identity: ID3DX11Scan_Impl, const OFFSET: isize>(
34519 this: *mut core::ffi::c_void,
34520 elementtype: D3DX11_SCAN_DATA_TYPE,
34521 opcode: D3DX11_SCAN_OPCODE,
34522 elementscansize: u32,
34523 elementscanpitch: u32,
34524 scancount: u32,
34525 psrc: *mut core::ffi::c_void,
34526 pdst: *mut core::ffi::c_void,
34527 ) -> windows_core::HRESULT {
34528 unsafe {
34529 let this: &Identity =
34530 &*((this as *const *const ()).offset(OFFSET) as *const Identity);
34531 ID3DX11Scan_Impl::Multiscan(
34532 this,
34533 core::mem::transmute_copy(&elementtype),
34534 core::mem::transmute_copy(&opcode),
34535 core::mem::transmute_copy(&elementscansize),
34536 core::mem::transmute_copy(&elementscanpitch),
34537 core::mem::transmute_copy(&scancount),
34538 core::mem::transmute_copy(&psrc),
34539 core::mem::transmute_copy(&pdst),
34540 )
34541 .into()
34542 }
34543 }
34544 Self {
34545 base__: windows_core::IUnknown_Vtbl::new::<Identity, OFFSET>(),
34546 SetScanDirection: SetScanDirection::<Identity, OFFSET>,
34547 Scan: Scan::<Identity, OFFSET>,
34548 Multiscan: Multiscan::<Identity, OFFSET>,
34549 }
34550 }
34551 pub fn matches(iid: &windows_core::GUID) -> bool {
34552 iid == &<ID3DX11Scan as windows_core::Interface>::IID
34553 }
34554}
34555impl windows_core::RuntimeName for ID3DX11Scan {}
34556unsafe impl Send for ID3DX11Scan {}
34557unsafe impl Sync for ID3DX11Scan {}
34558windows_core::imp::define_interface!(
34559 ID3DX11SegmentedScan,
34560 ID3DX11SegmentedScan_Vtbl,
34561 0xa915128c_d954_4c79_bfe1_64db923194d6
34562);
34563windows_core::imp::interface_hierarchy!(ID3DX11SegmentedScan, windows_core::IUnknown);
34564impl ID3DX11SegmentedScan {
34565 pub unsafe fn SetScanDirection(
34566 &self,
34567 direction: D3DX11_SCAN_DIRECTION,
34568 ) -> windows_core::Result<()> {
34569 unsafe {
34570 (windows_core::Interface::vtable(self).SetScanDirection)(
34571 windows_core::Interface::as_raw(self),
34572 direction,
34573 )
34574 .ok()
34575 }
34576 }
34577 pub unsafe fn SegScan<P3, P4, P5>(
34578 &self,
34579 elementtype: D3DX11_SCAN_DATA_TYPE,
34580 opcode: D3DX11_SCAN_OPCODE,
34581 elementscansize: u32,
34582 psrc: P3,
34583 psrcelementflags: P4,
34584 pdst: P5,
34585 ) -> windows_core::Result<()>
34586 where
34587 P3: windows_core::Param<ID3D11UnorderedAccessView>,
34588 P4: windows_core::Param<ID3D11UnorderedAccessView>,
34589 P5: windows_core::Param<ID3D11UnorderedAccessView>,
34590 {
34591 unsafe {
34592 (windows_core::Interface::vtable(self).SegScan)(
34593 windows_core::Interface::as_raw(self),
34594 elementtype,
34595 opcode,
34596 elementscansize,
34597 psrc.param().abi(),
34598 psrcelementflags.param().abi(),
34599 pdst.param().abi(),
34600 )
34601 .ok()
34602 }
34603 }
34604}
34605#[repr(C)]
34606pub struct ID3DX11SegmentedScan_Vtbl {
34607 pub base__: windows_core::IUnknown_Vtbl,
34608 pub SetScanDirection: unsafe extern "system" fn(
34609 *mut core::ffi::c_void,
34610 D3DX11_SCAN_DIRECTION,
34611 ) -> windows_core::HRESULT,
34612 pub SegScan: unsafe extern "system" fn(
34613 *mut core::ffi::c_void,
34614 D3DX11_SCAN_DATA_TYPE,
34615 D3DX11_SCAN_OPCODE,
34616 u32,
34617 *mut core::ffi::c_void,
34618 *mut core::ffi::c_void,
34619 *mut core::ffi::c_void,
34620 ) -> windows_core::HRESULT,
34621}
34622pub trait ID3DX11SegmentedScan_Impl: windows_core::IUnknownImpl {
34623 fn SetScanDirection(&self, direction: D3DX11_SCAN_DIRECTION) -> windows_core::Result<()>;
34624 fn SegScan(
34625 &self,
34626 elementtype: D3DX11_SCAN_DATA_TYPE,
34627 opcode: D3DX11_SCAN_OPCODE,
34628 elementscansize: u32,
34629 psrc: windows_core::Ref<'_, ID3D11UnorderedAccessView>,
34630 psrcelementflags: windows_core::Ref<'_, ID3D11UnorderedAccessView>,
34631 pdst: windows_core::Ref<'_, ID3D11UnorderedAccessView>,
34632 ) -> windows_core::Result<()>;
34633}
34634impl ID3DX11SegmentedScan_Vtbl {
34635 pub const fn new<Identity: ID3DX11SegmentedScan_Impl, const OFFSET: isize>() -> Self {
34636 unsafe extern "system" fn SetScanDirection<
34637 Identity: ID3DX11SegmentedScan_Impl,
34638 const OFFSET: isize,
34639 >(
34640 this: *mut core::ffi::c_void,
34641 direction: D3DX11_SCAN_DIRECTION,
34642 ) -> windows_core::HRESULT {
34643 unsafe {
34644 let this: &Identity =
34645 &*((this as *const *const ()).offset(OFFSET) as *const Identity);
34646 ID3DX11SegmentedScan_Impl::SetScanDirection(
34647 this,
34648 core::mem::transmute_copy(&direction),
34649 )
34650 .into()
34651 }
34652 }
34653 unsafe extern "system" fn SegScan<
34654 Identity: ID3DX11SegmentedScan_Impl,
34655 const OFFSET: isize,
34656 >(
34657 this: *mut core::ffi::c_void,
34658 elementtype: D3DX11_SCAN_DATA_TYPE,
34659 opcode: D3DX11_SCAN_OPCODE,
34660 elementscansize: u32,
34661 psrc: *mut core::ffi::c_void,
34662 psrcelementflags: *mut core::ffi::c_void,
34663 pdst: *mut core::ffi::c_void,
34664 ) -> windows_core::HRESULT {
34665 unsafe {
34666 let this: &Identity =
34667 &*((this as *const *const ()).offset(OFFSET) as *const Identity);
34668 ID3DX11SegmentedScan_Impl::SegScan(
34669 this,
34670 core::mem::transmute_copy(&elementtype),
34671 core::mem::transmute_copy(&opcode),
34672 core::mem::transmute_copy(&elementscansize),
34673 core::mem::transmute_copy(&psrc),
34674 core::mem::transmute_copy(&psrcelementflags),
34675 core::mem::transmute_copy(&pdst),
34676 )
34677 .into()
34678 }
34679 }
34680 Self {
34681 base__: windows_core::IUnknown_Vtbl::new::<Identity, OFFSET>(),
34682 SetScanDirection: SetScanDirection::<Identity, OFFSET>,
34683 SegScan: SegScan::<Identity, OFFSET>,
34684 }
34685 }
34686 pub fn matches(iid: &windows_core::GUID) -> bool {
34687 iid == &<ID3DX11SegmentedScan as windows_core::Interface>::IID
34688 }
34689}
34690impl windows_core::RuntimeName for ID3DX11SegmentedScan {}
34691unsafe impl Send for ID3DX11SegmentedScan {}
34692unsafe impl Sync for ID3DX11SegmentedScan {}
34693#[cfg(all(feature = "Win32_Graphics_Direct3D", feature = "Win32_Graphics_Dxgi"))]
34694pub type PFN_D3D11_CREATE_DEVICE = Option<
34695 unsafe extern "system" fn(
34696 param0: Option<crate::Dxgi::IDXGIAdapter>,
34697 param1: super::Direct3D::D3D_DRIVER_TYPE,
34698 param2: crate::Foundation::HMODULE,
34699 param3: u32,
34700 param4: *const super::Direct3D::D3D_FEATURE_LEVEL,
34701 featurelevels: u32,
34702 param6: u32,
34703 param7: *mut Option<ID3D11Device>,
34704 param8: *mut super::Direct3D::D3D_FEATURE_LEVEL,
34705 param9: *mut Option<ID3D11DeviceContext>,
34706 ) -> windows_core::HRESULT,
34707>;
34708#[cfg(all(
34709 feature = "Win32_Graphics_Direct3D",
34710 feature = "Win32_Graphics_Dxgi_Common"
34711))]
34712pub type PFN_D3D11_CREATE_DEVICE_AND_SWAP_CHAIN = Option<
34713 unsafe extern "system" fn(
34714 param0: Option<crate::Dxgi::IDXGIAdapter>,
34715 param1: super::Direct3D::D3D_DRIVER_TYPE,
34716 param2: crate::Foundation::HMODULE,
34717 param3: u32,
34718 param4: *const super::Direct3D::D3D_FEATURE_LEVEL,
34719 featurelevels: u32,
34720 param6: u32,
34721 param7: *const crate::Dxgi::DXGI_SWAP_CHAIN_DESC,
34722 param8: *mut Option<crate::Dxgi::IDXGISwapChain>,
34723 param9: *mut Option<ID3D11Device>,
34724 param10: *mut super::Direct3D::D3D_FEATURE_LEVEL,
34725 param11: *mut Option<ID3D11DeviceContext>,
34726 ) -> windows_core::HRESULT,
34727>;
34728pub const _FACD3D11: u32 = 2172u32;