#![rustfmt::skip]
#[cfg(all(feature = "Win32_Graphics_Direct3D", feature = "Win32_Graphics_Dxgi"))]
#[inline]
pub unsafe fn D3D11CreateDevice<P0>(
padapter: P0,
drivertype: super::Direct3D::D3D_DRIVER_TYPE,
software: crate::Foundation::HMODULE,
flags: D3D11_CREATE_DEVICE_FLAG,
pfeaturelevels: Option<&[super::Direct3D::D3D_FEATURE_LEVEL]>,
sdkversion: u32,
ppdevice: Option<*mut Option<ID3D11Device>>,
pfeaturelevel: Option<*mut super::Direct3D::D3D_FEATURE_LEVEL>,
ppimmediatecontext: Option<*mut Option<ID3D11DeviceContext>>,
) -> windows_core::Result<()>
where
P0: windows_core::Param<crate::Dxgi::IDXGIAdapter>,
{
crate::dxvk::set_wsi_driver_env(false);
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);
unsafe {
D3D11CreateDevice(
padapter.param().abi(),
drivertype,
software,
flags,
core::mem::transmute(
pfeaturelevels
.map_or(core::ptr::null(), |slice| slice.as_ptr()),
),
pfeaturelevels
.map_or(0, |slice| slice.len().try_into().unwrap()),
sdkversion,
core::mem::transmute(ppdevice.unwrap_or(core::mem::zeroed())),
core::mem::transmute(pfeaturelevel.unwrap_or(core::mem::zeroed())),
core::mem::transmute(ppimmediatecontext.unwrap_or(core::mem::zeroed())),
)
.ok()
}
}
#[cfg(all(
feature = "Win32_Graphics_Direct3D",
feature = "Win32_Graphics_Dxgi_Common"
))]
#[inline]
pub unsafe fn D3D11CreateDeviceAndSwapChain<P0>(
padapter: P0,
drivertype: super::Direct3D::D3D_DRIVER_TYPE,
software: crate::Foundation::HMODULE,
flags: D3D11_CREATE_DEVICE_FLAG,
pfeaturelevels: Option<&[super::Direct3D::D3D_FEATURE_LEVEL]>,
sdkversion: u32,
pswapchaindesc: Option<*const crate::Dxgi::DXGI_SWAP_CHAIN_DESC>,
ppswapchain: Option<*mut Option<crate::Dxgi::IDXGISwapChain>>,
ppdevice: Option<*mut Option<ID3D11Device>>,
pfeaturelevel: Option<*mut super::Direct3D::D3D_FEATURE_LEVEL>,
ppimmediatecontext: Option<*mut Option<ID3D11DeviceContext>>,
) -> windows_core::Result<()>
where
P0: windows_core::Param<crate::Dxgi::IDXGIAdapter>,
{
crate::dxvk::set_wsi_driver_env(true);
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);
unsafe {
D3D11CreateDeviceAndSwapChain(
padapter.param().abi(),
drivertype,
software,
flags,
core::mem::transmute(
pfeaturelevels
.map_or(core::ptr::null(), |slice| slice.as_ptr()),
),
pfeaturelevels
.map_or(0, |slice| slice.len().try_into().unwrap()),
sdkversion,
core::mem::transmute(pswapchaindesc.unwrap_or(core::mem::zeroed())),
core::mem::transmute(ppswapchain.unwrap_or(core::mem::zeroed())),
core::mem::transmute(ppdevice.unwrap_or(core::mem::zeroed())),
core::mem::transmute(pfeaturelevel.unwrap_or(core::mem::zeroed())),
core::mem::transmute(ppimmediatecontext.unwrap_or(core::mem::zeroed())),
)
.ok()
}
}
#[cfg(feature = "Win32_Graphics_Direct3D")]
#[inline]
pub unsafe fn D3DDisassemble11Trace<P2>(
psrcdata: *const core::ffi::c_void,
srcdatasize: usize,
ptrace: P2,
startstep: u32,
numsteps: u32,
flags: u32,
) -> windows_core::Result<super::Direct3D::ID3DBlob>
where
P2: windows_core::Param<ID3D11ShaderTrace>,
{
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);
unsafe {
let mut result__ = core::mem::zeroed();
D3DDisassemble11Trace(
psrcdata,
srcdatasize,
ptrace.param().abi(),
startstep,
numsteps,
flags,
&mut result__,
)
.and_then(|| windows_core::Type::from_abi(result__))
}
}
#[inline]
pub unsafe fn D3DX11CreateFFT<P0>(
pdevicecontext: P0,
pdesc: *const D3DX11_FFT_DESC,
flags: u32,
pbufferinfo: *mut D3DX11_FFT_BUFFER_INFO,
ppfft: *mut Option<ID3DX11FFT>,
) -> windows_core::Result<()>
where
P0: windows_core::Param<ID3D11DeviceContext>,
{
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);
unsafe {
D3DX11CreateFFT(
pdevicecontext.param().abi(),
pdesc,
flags,
core::mem::transmute(pbufferinfo),
core::mem::transmute(ppfft),
)
.ok()
}
}
#[inline]
pub unsafe fn D3DX11CreateFFT1DComplex<P0>(
pdevicecontext: P0,
x: u32,
flags: u32,
pbufferinfo: *mut D3DX11_FFT_BUFFER_INFO,
ppfft: *mut Option<ID3DX11FFT>,
) -> windows_core::Result<()>
where
P0: windows_core::Param<ID3D11DeviceContext>,
{
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);
unsafe {
D3DX11CreateFFT1DComplex(
pdevicecontext.param().abi(),
x,
flags,
core::mem::transmute(pbufferinfo),
core::mem::transmute(ppfft),
)
.ok()
}
}
#[inline]
pub unsafe fn D3DX11CreateFFT1DReal<P0>(
pdevicecontext: P0,
x: u32,
flags: u32,
pbufferinfo: *mut D3DX11_FFT_BUFFER_INFO,
ppfft: *mut Option<ID3DX11FFT>,
) -> windows_core::Result<()>
where
P0: windows_core::Param<ID3D11DeviceContext>,
{
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);
unsafe {
D3DX11CreateFFT1DReal(
pdevicecontext.param().abi(),
x,
flags,
core::mem::transmute(pbufferinfo),
core::mem::transmute(ppfft),
)
.ok()
}
}
#[inline]
pub unsafe fn D3DX11CreateFFT2DComplex<P0>(
pdevicecontext: P0,
x: u32,
y: u32,
flags: u32,
pbufferinfo: *mut D3DX11_FFT_BUFFER_INFO,
ppfft: *mut Option<ID3DX11FFT>,
) -> windows_core::Result<()>
where
P0: windows_core::Param<ID3D11DeviceContext>,
{
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);
unsafe {
D3DX11CreateFFT2DComplex(
pdevicecontext.param().abi(),
x,
y,
flags,
core::mem::transmute(pbufferinfo),
core::mem::transmute(ppfft),
)
.ok()
}
}
#[inline]
pub unsafe fn D3DX11CreateFFT2DReal<P0>(
pdevicecontext: P0,
x: u32,
y: u32,
flags: u32,
pbufferinfo: *mut D3DX11_FFT_BUFFER_INFO,
ppfft: *mut Option<ID3DX11FFT>,
) -> windows_core::Result<()>
where
P0: windows_core::Param<ID3D11DeviceContext>,
{
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);
unsafe {
D3DX11CreateFFT2DReal(
pdevicecontext.param().abi(),
x,
y,
flags,
core::mem::transmute(pbufferinfo),
core::mem::transmute(ppfft),
)
.ok()
}
}
#[inline]
pub unsafe fn D3DX11CreateFFT3DComplex<P0>(
pdevicecontext: P0,
x: u32,
y: u32,
z: u32,
flags: u32,
pbufferinfo: *mut D3DX11_FFT_BUFFER_INFO,
ppfft: *mut Option<ID3DX11FFT>,
) -> windows_core::Result<()>
where
P0: windows_core::Param<ID3D11DeviceContext>,
{
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);
unsafe {
D3DX11CreateFFT3DComplex(
pdevicecontext.param().abi(),
x,
y,
z,
flags,
core::mem::transmute(pbufferinfo),
core::mem::transmute(ppfft),
)
.ok()
}
}
#[inline]
pub unsafe fn D3DX11CreateFFT3DReal<P0>(
pdevicecontext: P0,
x: u32,
y: u32,
z: u32,
flags: u32,
pbufferinfo: *mut D3DX11_FFT_BUFFER_INFO,
ppfft: *mut Option<ID3DX11FFT>,
) -> windows_core::Result<()>
where
P0: windows_core::Param<ID3D11DeviceContext>,
{
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);
unsafe {
D3DX11CreateFFT3DReal(
pdevicecontext.param().abi(),
x,
y,
z,
flags,
core::mem::transmute(pbufferinfo),
core::mem::transmute(ppfft),
)
.ok()
}
}
#[inline]
pub unsafe fn D3DX11CreateScan<P0>(
pdevicecontext: P0,
maxelementscansize: u32,
maxscancount: u32,
) -> windows_core::Result<ID3DX11Scan>
where
P0: windows_core::Param<ID3D11DeviceContext>,
{
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);
unsafe {
let mut result__ = core::mem::zeroed();
D3DX11CreateScan(
pdevicecontext.param().abi(),
maxelementscansize,
maxscancount,
&mut result__,
)
.and_then(|| windows_core::Type::from_abi(result__))
}
}
#[inline]
pub unsafe fn D3DX11CreateSegmentedScan<P0>(
pdevicecontext: P0,
maxelementscansize: u32,
) -> windows_core::Result<ID3DX11SegmentedScan>
where
P0: windows_core::Param<ID3D11DeviceContext>,
{
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);
unsafe {
let mut result__ = core::mem::zeroed();
D3DX11CreateSegmentedScan(
pdevicecontext.param().abi(),
maxelementscansize,
&mut result__,
)
.and_then(|| windows_core::Type::from_abi(result__))
}
}
pub const D3D11_16BIT_INDEX_STRIP_CUT_VALUE: u32 = 65535u32;
#[repr(transparent)]
#[derive(Clone, Copy, Debug, Default, Eq, PartialEq)]
pub struct D3D11_1_CREATE_DEVICE_CONTEXT_STATE_FLAG(pub i32);
pub const D3D11_1_CREATE_DEVICE_CONTEXT_STATE_SINGLETHREADED:
D3D11_1_CREATE_DEVICE_CONTEXT_STATE_FLAG = D3D11_1_CREATE_DEVICE_CONTEXT_STATE_FLAG(1i32);
pub const D3D11_1_UAV_SLOT_COUNT: u32 = 64u32;
pub const D3D11_2_TILED_RESOURCE_TILE_SIZE_IN_BYTES: u32 = 65536u32;
pub const D3D11_32BIT_INDEX_STRIP_CUT_VALUE: u32 = 4294967295u32;
pub const D3D11_4_VIDEO_DECODER_HISTOGRAM_OFFSET_ALIGNMENT: u32 = 256u32;
pub const D3D11_4_VIDEO_DECODER_MAX_HISTOGRAM_COMPONENTS: u32 = 4u32;
pub const D3D11_8BIT_INDEX_STRIP_CUT_VALUE: u32 = 255u32;
#[repr(C)]
#[derive(Clone, Copy, Debug, PartialEq)]
pub struct D3D11_AES_CTR_IV {
pub IV: u64,
pub Count: u64,
}
impl Default for D3D11_AES_CTR_IV {
fn default() -> Self {
unsafe { core::mem::zeroed() }
}
}
pub const D3D11_ANISOTROPIC_FILTERING_BIT: u32 = 64u32;
pub const D3D11_APPEND_ALIGNED_ELEMENT: u32 = 4294967295u32;
pub const D3D11_APPNAME_STRING: crate::core_supplemental::PCWSTR = crate::core_supplemental::w!("Name");
pub const D3D11_APPSIZE_STRING: crate::core_supplemental::PCWSTR = crate::core_supplemental::w!("Size");
pub const D3D11_ARRAY_AXIS_ADDRESS_RANGE_BIT_COUNT: u32 = 9u32;
pub const D3D11_ASYNC_GETDATA_DONOTFLUSH: D3D11_ASYNC_GETDATA_FLAG = D3D11_ASYNC_GETDATA_FLAG(1i32);
#[repr(transparent)]
#[derive(Clone, Copy, Debug, Default, Eq, PartialEq)]
pub struct D3D11_ASYNC_GETDATA_FLAG(pub i32);
pub const D3D11_AUTHENTICATED_CHANNEL_D3D11: D3D11_AUTHENTICATED_CHANNEL_TYPE =
D3D11_AUTHENTICATED_CHANNEL_TYPE(1i32);
pub const D3D11_AUTHENTICATED_CHANNEL_DRIVER_HARDWARE: D3D11_AUTHENTICATED_CHANNEL_TYPE =
D3D11_AUTHENTICATED_CHANNEL_TYPE(3i32);
pub const D3D11_AUTHENTICATED_CHANNEL_DRIVER_SOFTWARE: D3D11_AUTHENTICATED_CHANNEL_TYPE =
D3D11_AUTHENTICATED_CHANNEL_TYPE(2i32);
#[repr(transparent)]
#[derive(Clone, Copy, Debug, Default, Eq, PartialEq)]
pub struct D3D11_AUTHENTICATED_CHANNEL_TYPE(pub i32);
#[repr(C)]
#[derive(Clone, Copy, Debug, PartialEq)]
pub struct D3D11_AUTHENTICATED_CONFIGURE_ACCESSIBLE_ENCRYPTION_INPUT {
pub Parameters: D3D11_AUTHENTICATED_CONFIGURE_INPUT,
pub EncryptionGuid: windows_core::GUID,
}
impl Default for D3D11_AUTHENTICATED_CONFIGURE_ACCESSIBLE_ENCRYPTION_INPUT {
fn default() -> Self {
unsafe { core::mem::zeroed() }
}
}
pub const D3D11_AUTHENTICATED_CONFIGURE_CRYPTO_SESSION: windows_core::GUID =
windows_core::GUID::from_u128(0x6346cc54_2cfc_4ad4_8224_d15837de7700);
#[repr(C)]
#[derive(Clone, Copy, Debug, PartialEq)]
pub struct D3D11_AUTHENTICATED_CONFIGURE_CRYPTO_SESSION_INPUT {
pub Parameters: D3D11_AUTHENTICATED_CONFIGURE_INPUT,
pub DecoderHandle: crate::Foundation::HANDLE,
pub CryptoSessionHandle: crate::Foundation::HANDLE,
pub DeviceHandle: crate::Foundation::HANDLE,
}
impl Default for D3D11_AUTHENTICATED_CONFIGURE_CRYPTO_SESSION_INPUT {
fn default() -> Self {
unsafe { core::mem::zeroed() }
}
}
pub const D3D11_AUTHENTICATED_CONFIGURE_ENCRYPTION_WHEN_ACCESSIBLE: windows_core::GUID =
windows_core::GUID::from_u128(0x41fff286_6ae0_4d43_9d55_a46e9efd158a);
pub const D3D11_AUTHENTICATED_CONFIGURE_INITIALIZE: windows_core::GUID =
windows_core::GUID::from_u128(0x06114bdb_3523_470a_8dca_fbc2845154f0);
#[repr(C)]
#[derive(Clone, Copy, Debug, PartialEq)]
pub struct D3D11_AUTHENTICATED_CONFIGURE_INITIALIZE_INPUT {
pub Parameters: D3D11_AUTHENTICATED_CONFIGURE_INPUT,
pub StartSequenceQuery: u32,
pub StartSequenceConfigure: u32,
}
impl Default for D3D11_AUTHENTICATED_CONFIGURE_INITIALIZE_INPUT {
fn default() -> Self {
unsafe { core::mem::zeroed() }
}
}
#[repr(C)]
#[derive(Clone, Copy, Debug, PartialEq)]
pub struct D3D11_AUTHENTICATED_CONFIGURE_INPUT {
pub omac: D3D11_OMAC,
pub ConfigureType: windows_core::GUID,
pub hChannel: crate::Foundation::HANDLE,
pub SequenceNumber: u32,
}
impl Default for D3D11_AUTHENTICATED_CONFIGURE_INPUT {
fn default() -> Self {
unsafe { core::mem::zeroed() }
}
}
#[repr(C)]
#[derive(Clone, Copy, Debug, PartialEq)]
pub struct D3D11_AUTHENTICATED_CONFIGURE_OUTPUT {
pub omac: D3D11_OMAC,
pub ConfigureType: windows_core::GUID,
pub hChannel: crate::Foundation::HANDLE,
pub SequenceNumber: u32,
pub ReturnCode: windows_core::HRESULT,
}
impl Default for D3D11_AUTHENTICATED_CONFIGURE_OUTPUT {
fn default() -> Self {
unsafe { core::mem::zeroed() }
}
}
pub const D3D11_AUTHENTICATED_CONFIGURE_PROTECTION: windows_core::GUID =
windows_core::GUID::from_u128(0x50455658_3f47_4362_bf99_bfdfcde9ed29);
#[repr(C)]
#[derive(Clone, Copy)]
pub struct D3D11_AUTHENTICATED_CONFIGURE_PROTECTION_INPUT {
pub Parameters: D3D11_AUTHENTICATED_CONFIGURE_INPUT,
pub Protections: D3D11_AUTHENTICATED_PROTECTION_FLAGS,
}
impl Default for D3D11_AUTHENTICATED_CONFIGURE_PROTECTION_INPUT {
fn default() -> Self {
unsafe { core::mem::zeroed() }
}
}
pub const D3D11_AUTHENTICATED_CONFIGURE_SHARED_RESOURCE: windows_core::GUID =
windows_core::GUID::from_u128(0x0772d047_1b40_48e8_9ca6_b5f510de9f01);
#[repr(C)]
#[derive(Clone, Copy, Debug, PartialEq)]
pub struct D3D11_AUTHENTICATED_CONFIGURE_SHARED_RESOURCE_INPUT {
pub Parameters: D3D11_AUTHENTICATED_CONFIGURE_INPUT,
pub ProcessType: D3D11_AUTHENTICATED_PROCESS_IDENTIFIER_TYPE,
pub ProcessHandle: crate::Foundation::HANDLE,
pub AllowAccess: crate::Foundation::BOOL,
}
impl Default for D3D11_AUTHENTICATED_CONFIGURE_SHARED_RESOURCE_INPUT {
fn default() -> Self {
unsafe { core::mem::zeroed() }
}
}
#[repr(transparent)]
#[derive(Clone, Copy, Debug, Default, Eq, PartialEq)]
pub struct D3D11_AUTHENTICATED_PROCESS_IDENTIFIER_TYPE(pub i32);
#[repr(C)]
#[derive(Clone, Copy)]
pub union D3D11_AUTHENTICATED_PROTECTION_FLAGS {
pub Flags: D3D11_AUTHENTICATED_PROTECTION_FLAGS_0,
pub Value: u32,
}
impl Default for D3D11_AUTHENTICATED_PROTECTION_FLAGS {
fn default() -> Self {
unsafe { core::mem::zeroed() }
}
}
#[repr(C)]
#[derive(Clone, Copy, Debug, PartialEq)]
pub struct D3D11_AUTHENTICATED_PROTECTION_FLAGS_0 {
pub _bitfield: u32,
}
impl Default for D3D11_AUTHENTICATED_PROTECTION_FLAGS_0 {
fn default() -> Self {
unsafe { core::mem::zeroed() }
}
}
pub const D3D11_AUTHENTICATED_QUERY_ACCESSIBILITY_ATTRIBUTES: windows_core::GUID =
windows_core::GUID::from_u128(0x6214d9d2_432c_4abb_9fce_216eea269e3b);
#[repr(C)]
#[derive(Clone, Copy, Debug, PartialEq)]
pub struct D3D11_AUTHENTICATED_QUERY_ACCESSIBILITY_ENCRYPTION_GUID_COUNT_OUTPUT {
pub Output: D3D11_AUTHENTICATED_QUERY_OUTPUT,
pub EncryptionGuidCount: u32,
}
impl Default for D3D11_AUTHENTICATED_QUERY_ACCESSIBILITY_ENCRYPTION_GUID_COUNT_OUTPUT {
fn default() -> Self {
unsafe { core::mem::zeroed() }
}
}
#[repr(C)]
#[derive(Clone, Copy, Debug, PartialEq)]
pub struct D3D11_AUTHENTICATED_QUERY_ACCESSIBILITY_ENCRYPTION_GUID_INPUT {
pub Input: D3D11_AUTHENTICATED_QUERY_INPUT,
pub EncryptionGuidIndex: u32,
}
impl Default for D3D11_AUTHENTICATED_QUERY_ACCESSIBILITY_ENCRYPTION_GUID_INPUT {
fn default() -> Self {
unsafe { core::mem::zeroed() }
}
}
#[repr(C)]
#[derive(Clone, Copy, Debug, PartialEq)]
pub struct D3D11_AUTHENTICATED_QUERY_ACCESSIBILITY_ENCRYPTION_GUID_OUTPUT {
pub Output: D3D11_AUTHENTICATED_QUERY_OUTPUT,
pub EncryptionGuidIndex: u32,
pub EncryptionGuid: windows_core::GUID,
}
impl Default for D3D11_AUTHENTICATED_QUERY_ACCESSIBILITY_ENCRYPTION_GUID_OUTPUT {
fn default() -> Self {
unsafe { core::mem::zeroed() }
}
}
#[repr(C)]
#[derive(Clone, Copy, Debug, PartialEq)]
pub struct D3D11_AUTHENTICATED_QUERY_ACCESSIBILITY_OUTPUT {
pub Output: D3D11_AUTHENTICATED_QUERY_OUTPUT,
pub BusType: D3D11_BUS_TYPE,
pub AccessibleInContiguousBlocks: crate::Foundation::BOOL,
pub AccessibleInNonContiguousBlocks: crate::Foundation::BOOL,
}
impl Default for D3D11_AUTHENTICATED_QUERY_ACCESSIBILITY_OUTPUT {
fn default() -> Self {
unsafe { core::mem::zeroed() }
}
}
pub const D3D11_AUTHENTICATED_QUERY_CHANNEL_TYPE: windows_core::GUID =
windows_core::GUID::from_u128(0xbc1b18a5_b1fb_42ab_bd94_b5828b4bf7be);
#[repr(C)]
#[derive(Clone, Copy, Debug, PartialEq)]
pub struct D3D11_AUTHENTICATED_QUERY_CHANNEL_TYPE_OUTPUT {
pub Output: D3D11_AUTHENTICATED_QUERY_OUTPUT,
pub ChannelType: D3D11_AUTHENTICATED_CHANNEL_TYPE,
}
impl Default for D3D11_AUTHENTICATED_QUERY_CHANNEL_TYPE_OUTPUT {
fn default() -> Self {
unsafe { core::mem::zeroed() }
}
}
pub const D3D11_AUTHENTICATED_QUERY_CRYPTO_SESSION: windows_core::GUID =
windows_core::GUID::from_u128(0x2634499e_d018_4d74_ac17_7f724059528d);
#[repr(C)]
#[derive(Clone, Copy, Debug, PartialEq)]
pub struct D3D11_AUTHENTICATED_QUERY_CRYPTO_SESSION_INPUT {
pub Input: D3D11_AUTHENTICATED_QUERY_INPUT,
pub DecoderHandle: crate::Foundation::HANDLE,
}
impl Default for D3D11_AUTHENTICATED_QUERY_CRYPTO_SESSION_INPUT {
fn default() -> Self {
unsafe { core::mem::zeroed() }
}
}
#[repr(C)]
#[derive(Clone, Copy, Debug, PartialEq)]
pub struct D3D11_AUTHENTICATED_QUERY_CRYPTO_SESSION_OUTPUT {
pub Output: D3D11_AUTHENTICATED_QUERY_OUTPUT,
pub DecoderHandle: crate::Foundation::HANDLE,
pub CryptoSessionHandle: crate::Foundation::HANDLE,
pub DeviceHandle: crate::Foundation::HANDLE,
}
impl Default for D3D11_AUTHENTICATED_QUERY_CRYPTO_SESSION_OUTPUT {
fn default() -> Self {
unsafe { core::mem::zeroed() }
}
}
#[repr(C)]
#[derive(Clone, Copy, Debug, PartialEq)]
pub struct D3D11_AUTHENTICATED_QUERY_CURRENT_ACCESSIBILITY_ENCRYPTION_OUTPUT {
pub Output: D3D11_AUTHENTICATED_QUERY_OUTPUT,
pub EncryptionGuid: windows_core::GUID,
}
impl Default for D3D11_AUTHENTICATED_QUERY_CURRENT_ACCESSIBILITY_ENCRYPTION_OUTPUT {
fn default() -> Self {
unsafe { core::mem::zeroed() }
}
}
pub const D3D11_AUTHENTICATED_QUERY_CURRENT_ENCRYPTION_WHEN_ACCESSIBLE: windows_core::GUID =
windows_core::GUID::from_u128(0xec1791c7_dad3_4f15_9ec3_faa93d60d4f0);
pub const D3D11_AUTHENTICATED_QUERY_DEVICE_HANDLE: windows_core::GUID =
windows_core::GUID::from_u128(0xec1c539d_8cff_4e2a_bcc4_f5692f99f480);
#[repr(C)]
#[derive(Clone, Copy, Debug, PartialEq)]
pub struct D3D11_AUTHENTICATED_QUERY_DEVICE_HANDLE_OUTPUT {
pub Output: D3D11_AUTHENTICATED_QUERY_OUTPUT,
pub DeviceHandle: crate::Foundation::HANDLE,
}
impl Default for D3D11_AUTHENTICATED_QUERY_DEVICE_HANDLE_OUTPUT {
fn default() -> Self {
unsafe { core::mem::zeroed() }
}
}
pub const D3D11_AUTHENTICATED_QUERY_ENCRYPTION_WHEN_ACCESSIBLE_GUID: windows_core::GUID =
windows_core::GUID::from_u128(0xf83a5958_e986_4bda_beb0_411f6a7a01b7);
pub const D3D11_AUTHENTICATED_QUERY_ENCRYPTION_WHEN_ACCESSIBLE_GUID_COUNT: windows_core::GUID =
windows_core::GUID::from_u128(0xb30f7066_203c_4b07_93fc_ceaafd61241e);
#[repr(C)]
#[derive(Clone, Copy, Debug, PartialEq)]
pub struct D3D11_AUTHENTICATED_QUERY_INPUT {
pub QueryType: windows_core::GUID,
pub hChannel: crate::Foundation::HANDLE,
pub SequenceNumber: u32,
}
impl Default for D3D11_AUTHENTICATED_QUERY_INPUT {
fn default() -> Self {
unsafe { core::mem::zeroed() }
}
}
#[repr(C)]
#[derive(Clone, Copy, Debug, PartialEq)]
pub struct D3D11_AUTHENTICATED_QUERY_OUTPUT {
pub omac: D3D11_OMAC,
pub QueryType: windows_core::GUID,
pub hChannel: crate::Foundation::HANDLE,
pub SequenceNumber: u32,
pub ReturnCode: windows_core::HRESULT,
}
impl Default for D3D11_AUTHENTICATED_QUERY_OUTPUT {
fn default() -> Self {
unsafe { core::mem::zeroed() }
}
}
pub const D3D11_AUTHENTICATED_QUERY_OUTPUT_ID: windows_core::GUID =
windows_core::GUID::from_u128(0x839ddca3_9b4e_41e4_b053_892bd2a11ee7);
pub const D3D11_AUTHENTICATED_QUERY_OUTPUT_ID_COUNT: windows_core::GUID =
windows_core::GUID::from_u128(0x2c042b5e_8c07_46d5_aabe_8f75cbad4c31);
#[repr(C)]
#[derive(Clone, Copy, Debug, PartialEq)]
pub struct D3D11_AUTHENTICATED_QUERY_OUTPUT_ID_COUNT_INPUT {
pub Input: D3D11_AUTHENTICATED_QUERY_INPUT,
pub DeviceHandle: crate::Foundation::HANDLE,
pub CryptoSessionHandle: crate::Foundation::HANDLE,
}
impl Default for D3D11_AUTHENTICATED_QUERY_OUTPUT_ID_COUNT_INPUT {
fn default() -> Self {
unsafe { core::mem::zeroed() }
}
}
#[repr(C)]
#[derive(Clone, Copy, Debug, PartialEq)]
pub struct D3D11_AUTHENTICATED_QUERY_OUTPUT_ID_COUNT_OUTPUT {
pub Output: D3D11_AUTHENTICATED_QUERY_OUTPUT,
pub DeviceHandle: crate::Foundation::HANDLE,
pub CryptoSessionHandle: crate::Foundation::HANDLE,
pub OutputIDCount: u32,
}
impl Default for D3D11_AUTHENTICATED_QUERY_OUTPUT_ID_COUNT_OUTPUT {
fn default() -> Self {
unsafe { core::mem::zeroed() }
}
}
#[repr(C)]
#[derive(Clone, Copy, Debug, PartialEq)]
pub struct D3D11_AUTHENTICATED_QUERY_OUTPUT_ID_INPUT {
pub Input: D3D11_AUTHENTICATED_QUERY_INPUT,
pub DeviceHandle: crate::Foundation::HANDLE,
pub CryptoSessionHandle: crate::Foundation::HANDLE,
pub OutputIDIndex: u32,
}
impl Default for D3D11_AUTHENTICATED_QUERY_OUTPUT_ID_INPUT {
fn default() -> Self {
unsafe { core::mem::zeroed() }
}
}
#[repr(C)]
#[derive(Clone, Copy, Debug, PartialEq)]
pub struct D3D11_AUTHENTICATED_QUERY_OUTPUT_ID_OUTPUT {
pub Output: D3D11_AUTHENTICATED_QUERY_OUTPUT,
pub DeviceHandle: crate::Foundation::HANDLE,
pub CryptoSessionHandle: crate::Foundation::HANDLE,
pub OutputIDIndex: u32,
pub OutputID: u64,
}
impl Default for D3D11_AUTHENTICATED_QUERY_OUTPUT_ID_OUTPUT {
fn default() -> Self {
unsafe { core::mem::zeroed() }
}
}
pub const D3D11_AUTHENTICATED_QUERY_PROTECTION: windows_core::GUID =
windows_core::GUID::from_u128(0xa84eb584_c495_48aa_b94d_8bd2d6fbce05);
#[repr(C)]
#[derive(Clone, Copy)]
pub struct D3D11_AUTHENTICATED_QUERY_PROTECTION_OUTPUT {
pub Output: D3D11_AUTHENTICATED_QUERY_OUTPUT,
pub ProtectionFlags: D3D11_AUTHENTICATED_PROTECTION_FLAGS,
}
impl Default for D3D11_AUTHENTICATED_QUERY_PROTECTION_OUTPUT {
fn default() -> Self {
unsafe { core::mem::zeroed() }
}
}
pub const D3D11_AUTHENTICATED_QUERY_RESTRICTED_SHARED_RESOURCE_PROCESS: windows_core::GUID =
windows_core::GUID::from_u128(0x649bbadb_f0f4_4639_a15b_24393fc3abac);
pub const D3D11_AUTHENTICATED_QUERY_RESTRICTED_SHARED_RESOURCE_PROCESS_COUNT: windows_core::GUID =
windows_core::GUID::from_u128(0x0db207b3_9450_46a6_82de_1b96d44f9cf2);
#[repr(C)]
#[derive(Clone, Copy, Debug, PartialEq)]
pub struct D3D11_AUTHENTICATED_QUERY_RESTRICTED_SHARED_RESOURCE_PROCESS_COUNT_OUTPUT {
pub Output: D3D11_AUTHENTICATED_QUERY_OUTPUT,
pub RestrictedSharedResourceProcessCount: u32,
}
impl Default for D3D11_AUTHENTICATED_QUERY_RESTRICTED_SHARED_RESOURCE_PROCESS_COUNT_OUTPUT {
fn default() -> Self {
unsafe { core::mem::zeroed() }
}
}
#[repr(C)]
#[derive(Clone, Copy, Debug, PartialEq)]
pub struct D3D11_AUTHENTICATED_QUERY_RESTRICTED_SHARED_RESOURCE_PROCESS_INPUT {
pub Input: D3D11_AUTHENTICATED_QUERY_INPUT,
pub ProcessIndex: u32,
}
impl Default for D3D11_AUTHENTICATED_QUERY_RESTRICTED_SHARED_RESOURCE_PROCESS_INPUT {
fn default() -> Self {
unsafe { core::mem::zeroed() }
}
}
#[repr(C)]
#[derive(Clone, Copy, Debug, PartialEq)]
pub struct D3D11_AUTHENTICATED_QUERY_RESTRICTED_SHARED_RESOURCE_PROCESS_OUTPUT {
pub Output: D3D11_AUTHENTICATED_QUERY_OUTPUT,
pub ProcessIndex: u32,
pub ProcessIdentifier: D3D11_AUTHENTICATED_PROCESS_IDENTIFIER_TYPE,
pub ProcessHandle: crate::Foundation::HANDLE,
}
impl Default for D3D11_AUTHENTICATED_QUERY_RESTRICTED_SHARED_RESOURCE_PROCESS_OUTPUT {
fn default() -> Self {
unsafe { core::mem::zeroed() }
}
}
pub const D3D11_AUTHENTICATED_QUERY_UNRESTRICTED_PROTECTED_SHARED_RESOURCE_COUNT:
windows_core::GUID = windows_core::GUID::from_u128(0x012f0bd6_e662_4474_befd_aa53e5143c6d);
#[repr(C)]
#[derive(Clone, Copy, Debug, PartialEq)]
pub struct D3D11_AUTHENTICATED_QUERY_UNRESTRICTED_PROTECTED_SHARED_RESOURCE_COUNT_OUTPUT {
pub Output: D3D11_AUTHENTICATED_QUERY_OUTPUT,
pub UnrestrictedProtectedSharedResourceCount: u32,
}
impl Default for D3D11_AUTHENTICATED_QUERY_UNRESTRICTED_PROTECTED_SHARED_RESOURCE_COUNT_OUTPUT {
fn default() -> Self {
unsafe { core::mem::zeroed() }
}
}
pub const D3D11_BIND_CONSTANT_BUFFER: D3D11_BIND_FLAG = D3D11_BIND_FLAG(4i32);
pub const D3D11_BIND_DECODER: D3D11_BIND_FLAG = D3D11_BIND_FLAG(512i32);
pub const D3D11_BIND_DEPTH_STENCIL: D3D11_BIND_FLAG = D3D11_BIND_FLAG(64i32);
#[repr(transparent)]
#[derive(Clone, Copy, Debug, Default, Eq, PartialEq)]
pub struct D3D11_BIND_FLAG(pub i32);
impl D3D11_BIND_FLAG {
pub const fn contains(&self, other: Self) -> bool {
self.0 & other.0 == other.0
}
}
impl core::ops::BitOr for D3D11_BIND_FLAG {
type Output = Self;
fn bitor(self, other: Self) -> Self {
Self(self.0 | other.0)
}
}
impl core::ops::BitAnd for D3D11_BIND_FLAG {
type Output = Self;
fn bitand(self, other: Self) -> Self {
Self(self.0 & other.0)
}
}
impl core::ops::BitOrAssign for D3D11_BIND_FLAG {
fn bitor_assign(&mut self, other: Self) {
self.0.bitor_assign(other.0)
}
}
impl core::ops::BitAndAssign for D3D11_BIND_FLAG {
fn bitand_assign(&mut self, other: Self) {
self.0.bitand_assign(other.0)
}
}
impl core::ops::Not for D3D11_BIND_FLAG {
type Output = Self;
fn not(self) -> Self {
Self(self.0.not())
}
}
pub const D3D11_BIND_INDEX_BUFFER: D3D11_BIND_FLAG = D3D11_BIND_FLAG(2i32);
pub const D3D11_BIND_RENDER_TARGET: D3D11_BIND_FLAG = D3D11_BIND_FLAG(32i32);
pub const D3D11_BIND_SHADER_RESOURCE: D3D11_BIND_FLAG = D3D11_BIND_FLAG(8i32);
pub const D3D11_BIND_STREAM_OUTPUT: D3D11_BIND_FLAG = D3D11_BIND_FLAG(16i32);
pub const D3D11_BIND_UNORDERED_ACCESS: D3D11_BIND_FLAG = D3D11_BIND_FLAG(128i32);
pub const D3D11_BIND_VERTEX_BUFFER: D3D11_BIND_FLAG = D3D11_BIND_FLAG(1i32);
pub const D3D11_BIND_VIDEO_ENCODER: D3D11_BIND_FLAG = D3D11_BIND_FLAG(1024i32);
#[repr(transparent)]
#[derive(Clone, Copy, Debug, Default, Eq, PartialEq)]
pub struct D3D11_BLEND(pub i32);
pub const D3D11_BLEND_BLEND_FACTOR: D3D11_BLEND = D3D11_BLEND(14i32);
#[repr(C)]
#[derive(Clone, Copy, Debug, PartialEq)]
pub struct D3D11_BLEND_DESC {
pub AlphaToCoverageEnable: crate::Foundation::BOOL,
pub IndependentBlendEnable: crate::Foundation::BOOL,
pub RenderTarget: [D3D11_RENDER_TARGET_BLEND_DESC; 8],
}
impl Default for D3D11_BLEND_DESC {
fn default() -> Self {
unsafe { core::mem::zeroed() }
}
}
#[repr(C)]
#[derive(Clone, Copy, Debug, PartialEq)]
pub struct D3D11_BLEND_DESC1 {
pub AlphaToCoverageEnable: crate::Foundation::BOOL,
pub IndependentBlendEnable: crate::Foundation::BOOL,
pub RenderTarget: [D3D11_RENDER_TARGET_BLEND_DESC1; 8],
}
impl Default for D3D11_BLEND_DESC1 {
fn default() -> Self {
unsafe { core::mem::zeroed() }
}
}
pub const D3D11_BLEND_DEST_ALPHA: D3D11_BLEND = D3D11_BLEND(7i32);
pub const D3D11_BLEND_DEST_COLOR: D3D11_BLEND = D3D11_BLEND(9i32);
pub const D3D11_BLEND_INV_BLEND_FACTOR: D3D11_BLEND = D3D11_BLEND(15i32);
pub const D3D11_BLEND_INV_DEST_ALPHA: D3D11_BLEND = D3D11_BLEND(8i32);
pub const D3D11_BLEND_INV_DEST_COLOR: D3D11_BLEND = D3D11_BLEND(10i32);
pub const D3D11_BLEND_INV_SRC1_ALPHA: D3D11_BLEND = D3D11_BLEND(19i32);
pub const D3D11_BLEND_INV_SRC1_COLOR: D3D11_BLEND = D3D11_BLEND(17i32);
pub const D3D11_BLEND_INV_SRC_ALPHA: D3D11_BLEND = D3D11_BLEND(6i32);
pub const D3D11_BLEND_INV_SRC_COLOR: D3D11_BLEND = D3D11_BLEND(4i32);
pub const D3D11_BLEND_ONE: D3D11_BLEND = D3D11_BLEND(2i32);
#[repr(transparent)]
#[derive(Clone, Copy, Debug, Default, Eq, PartialEq)]
pub struct D3D11_BLEND_OP(pub i32);
pub const D3D11_BLEND_OP_ADD: D3D11_BLEND_OP = D3D11_BLEND_OP(1i32);
pub const D3D11_BLEND_OP_MAX: D3D11_BLEND_OP = D3D11_BLEND_OP(5i32);
pub const D3D11_BLEND_OP_MIN: D3D11_BLEND_OP = D3D11_BLEND_OP(4i32);
pub const D3D11_BLEND_OP_REV_SUBTRACT: D3D11_BLEND_OP = D3D11_BLEND_OP(3i32);
pub const D3D11_BLEND_OP_SUBTRACT: D3D11_BLEND_OP = D3D11_BLEND_OP(2i32);
pub const D3D11_BLEND_SRC1_ALPHA: D3D11_BLEND = D3D11_BLEND(18i32);
pub const D3D11_BLEND_SRC1_COLOR: D3D11_BLEND = D3D11_BLEND(16i32);
pub const D3D11_BLEND_SRC_ALPHA: D3D11_BLEND = D3D11_BLEND(5i32);
pub const D3D11_BLEND_SRC_ALPHA_SAT: D3D11_BLEND = D3D11_BLEND(11i32);
pub const D3D11_BLEND_SRC_COLOR: D3D11_BLEND = D3D11_BLEND(3i32);
pub const D3D11_BLEND_ZERO: D3D11_BLEND = D3D11_BLEND(1i32);
#[repr(C)]
#[derive(Clone, Copy, Debug, PartialEq)]
pub struct D3D11_BOX {
pub left: u32,
pub top: u32,
pub front: u32,
pub right: u32,
pub bottom: u32,
pub back: u32,
}
impl Default for D3D11_BOX {
fn default() -> Self {
unsafe { core::mem::zeroed() }
}
}
pub const D3D11_BREAKON_CATEGORY: crate::core_supplemental::PCWSTR = crate::core_supplemental::w!("BreakOn_CATEGORY_%s");
pub const D3D11_BREAKON_ID_DECIMAL: crate::core_supplemental::PCWSTR = crate::core_supplemental::w!("BreakOn_ID_%d");
pub const D3D11_BREAKON_ID_STRING: crate::core_supplemental::PCWSTR = crate::core_supplemental::w!("BreakOn_ID_%s");
pub const D3D11_BREAKON_SEVERITY: crate::core_supplemental::PCWSTR = crate::core_supplemental::w!("BreakOn_SEVERITY_%s");
#[repr(C)]
#[derive(Clone, Copy, Debug, PartialEq)]
pub struct D3D11_BUFFEREX_SRV {
pub FirstElement: u32,
pub NumElements: u32,
pub Flags: u32,
}
impl Default for D3D11_BUFFEREX_SRV {
fn default() -> Self {
unsafe { core::mem::zeroed() }
}
}
#[repr(transparent)]
#[derive(Clone, Copy, Debug, Default, Eq, PartialEq)]
pub struct D3D11_BUFFEREX_SRV_FLAG(pub i32);
pub const D3D11_BUFFEREX_SRV_FLAG_RAW: D3D11_BUFFEREX_SRV_FLAG = D3D11_BUFFEREX_SRV_FLAG(1i32);
#[repr(C)]
#[derive(Clone, Copy, Debug, PartialEq)]
pub struct D3D11_BUFFER_DESC {
pub ByteWidth: u32,
pub Usage: D3D11_USAGE,
pub BindFlags: u32,
pub CPUAccessFlags: u32,
pub MiscFlags: u32,
pub StructureByteStride: u32,
}
impl Default for D3D11_BUFFER_DESC {
fn default() -> Self {
unsafe { core::mem::zeroed() }
}
}
#[repr(C)]
#[derive(Clone, Copy)]
pub struct D3D11_BUFFER_RTV {
pub Anonymous1: D3D11_BUFFER_RTV_0,
pub Anonymous2: D3D11_BUFFER_RTV_1,
}
impl Default for D3D11_BUFFER_RTV {
fn default() -> Self {
unsafe { core::mem::zeroed() }
}
}
#[repr(C)]
#[derive(Clone, Copy)]
pub union D3D11_BUFFER_RTV_0 {
pub FirstElement: u32,
pub ElementOffset: u32,
}
impl Default for D3D11_BUFFER_RTV_0 {
fn default() -> Self {
unsafe { core::mem::zeroed() }
}
}
#[repr(C)]
#[derive(Clone, Copy)]
pub union D3D11_BUFFER_RTV_1 {
pub NumElements: u32,
pub ElementWidth: u32,
}
impl Default for D3D11_BUFFER_RTV_1 {
fn default() -> Self {
unsafe { core::mem::zeroed() }
}
}
#[repr(C)]
#[derive(Clone, Copy)]
pub struct D3D11_BUFFER_SRV {
pub Anonymous1: D3D11_BUFFER_SRV_0,
pub Anonymous2: D3D11_BUFFER_SRV_1,
}
impl Default for D3D11_BUFFER_SRV {
fn default() -> Self {
unsafe { core::mem::zeroed() }
}
}
#[repr(C)]
#[derive(Clone, Copy)]
pub union D3D11_BUFFER_SRV_0 {
pub FirstElement: u32,
pub ElementOffset: u32,
}
impl Default for D3D11_BUFFER_SRV_0 {
fn default() -> Self {
unsafe { core::mem::zeroed() }
}
}
#[repr(C)]
#[derive(Clone, Copy)]
pub union D3D11_BUFFER_SRV_1 {
pub NumElements: u32,
pub ElementWidth: u32,
}
impl Default for D3D11_BUFFER_SRV_1 {
fn default() -> Self {
unsafe { core::mem::zeroed() }
}
}
#[repr(C)]
#[derive(Clone, Copy, Debug, PartialEq)]
pub struct D3D11_BUFFER_UAV {
pub FirstElement: u32,
pub NumElements: u32,
pub Flags: u32,
}
impl Default for D3D11_BUFFER_UAV {
fn default() -> Self {
unsafe { core::mem::zeroed() }
}
}
#[repr(transparent)]
#[derive(Clone, Copy, Debug, Default, Eq, PartialEq)]
pub struct D3D11_BUFFER_UAV_FLAG(pub i32);
pub const D3D11_BUFFER_UAV_FLAG_APPEND: D3D11_BUFFER_UAV_FLAG = D3D11_BUFFER_UAV_FLAG(2i32);
pub const D3D11_BUFFER_UAV_FLAG_COUNTER: D3D11_BUFFER_UAV_FLAG = D3D11_BUFFER_UAV_FLAG(4i32);
pub const D3D11_BUFFER_UAV_FLAG_RAW: D3D11_BUFFER_UAV_FLAG = D3D11_BUFFER_UAV_FLAG(1i32);
pub const D3D11_BUS_IMPL_MODIFIER_DAUGHTER_BOARD_CONNECTOR: D3D11_BUS_TYPE =
D3D11_BUS_TYPE(262144i32);
pub const D3D11_BUS_IMPL_MODIFIER_DAUGHTER_BOARD_CONNECTOR_INSIDE_OF_NUAE: D3D11_BUS_TYPE =
D3D11_BUS_TYPE(327680i32);
pub const D3D11_BUS_IMPL_MODIFIER_INSIDE_OF_CHIPSET: D3D11_BUS_TYPE = D3D11_BUS_TYPE(65536i32);
pub const D3D11_BUS_IMPL_MODIFIER_NON_STANDARD: D3D11_BUS_TYPE = D3D11_BUS_TYPE(-2147483648i32);
pub const D3D11_BUS_IMPL_MODIFIER_TRACKS_ON_MOTHER_BOARD_TO_CHIP: D3D11_BUS_TYPE =
D3D11_BUS_TYPE(131072i32);
pub const D3D11_BUS_IMPL_MODIFIER_TRACKS_ON_MOTHER_BOARD_TO_SOCKET: D3D11_BUS_TYPE =
D3D11_BUS_TYPE(196608i32);
#[repr(transparent)]
#[derive(Clone, Copy, Debug, Default, Eq, PartialEq)]
pub struct D3D11_BUS_TYPE(pub i32);
pub const D3D11_BUS_TYPE_AGP: D3D11_BUS_TYPE = D3D11_BUS_TYPE(4i32);
pub const D3D11_BUS_TYPE_OTHER: D3D11_BUS_TYPE = D3D11_BUS_TYPE(0i32);
pub const D3D11_BUS_TYPE_PCI: D3D11_BUS_TYPE = D3D11_BUS_TYPE(1i32);
pub const D3D11_BUS_TYPE_PCIEXPRESS: D3D11_BUS_TYPE = D3D11_BUS_TYPE(3i32);
pub const D3D11_BUS_TYPE_PCIX: D3D11_BUS_TYPE = D3D11_BUS_TYPE(2i32);
pub const D3D11_CENTER_MULTISAMPLE_PATTERN: D3D11_STANDARD_MULTISAMPLE_QUALITY_LEVELS =
D3D11_STANDARD_MULTISAMPLE_QUALITY_LEVELS(-2i32);
#[repr(transparent)]
#[derive(Clone, Copy, Debug, Default, Eq, PartialEq)]
pub struct D3D11_CHECK_MULTISAMPLE_QUALITY_LEVELS_FLAG(pub i32);
pub const D3D11_CHECK_MULTISAMPLE_QUALITY_LEVELS_TILED_RESOURCE:
D3D11_CHECK_MULTISAMPLE_QUALITY_LEVELS_FLAG = D3D11_CHECK_MULTISAMPLE_QUALITY_LEVELS_FLAG(1i32);
#[repr(C)]
#[derive(Clone, Copy, Debug, PartialEq)]
pub struct D3D11_CLASS_INSTANCE_DESC {
pub InstanceId: u32,
pub InstanceIndex: u32,
pub TypeId: u32,
pub ConstantBuffer: u32,
pub BaseConstantBufferOffset: u32,
pub BaseTexture: u32,
pub BaseSampler: u32,
pub Created: crate::Foundation::BOOL,
}
impl Default for D3D11_CLASS_INSTANCE_DESC {
fn default() -> Self {
unsafe { core::mem::zeroed() }
}
}
pub const D3D11_CLEAR_DEPTH: D3D11_CLEAR_FLAG = D3D11_CLEAR_FLAG(1u32);
#[repr(transparent)]
#[derive(Clone, Copy, Debug, Default, Eq, PartialEq)]
pub struct D3D11_CLEAR_FLAG(pub u32);
impl D3D11_CLEAR_FLAG {
pub const fn contains(&self, other: Self) -> bool {
self.0 & other.0 == other.0
}
}
impl core::ops::BitOr for D3D11_CLEAR_FLAG {
type Output = Self;
fn bitor(self, other: Self) -> Self {
Self(self.0 | other.0)
}
}
impl core::ops::BitAnd for D3D11_CLEAR_FLAG {
type Output = Self;
fn bitand(self, other: Self) -> Self {
Self(self.0 & other.0)
}
}
impl core::ops::BitOrAssign for D3D11_CLEAR_FLAG {
fn bitor_assign(&mut self, other: Self) {
self.0.bitor_assign(other.0)
}
}
impl core::ops::BitAndAssign for D3D11_CLEAR_FLAG {
fn bitand_assign(&mut self, other: Self) {
self.0.bitand_assign(other.0)
}
}
impl core::ops::Not for D3D11_CLEAR_FLAG {
type Output = Self;
fn not(self) -> Self {
Self(self.0.not())
}
}
pub const D3D11_CLEAR_STENCIL: D3D11_CLEAR_FLAG = D3D11_CLEAR_FLAG(2u32);
pub const D3D11_CLIP_OR_CULL_DISTANCE_COUNT: u32 = 8u32;
pub const D3D11_CLIP_OR_CULL_DISTANCE_ELEMENT_COUNT: u32 = 2u32;
#[repr(transparent)]
#[derive(Clone, Copy, Debug, Default, Eq, PartialEq)]
pub struct D3D11_COLOR_WRITE_ENABLE(pub i32);
pub const D3D11_COLOR_WRITE_ENABLE_ALL: D3D11_COLOR_WRITE_ENABLE = D3D11_COLOR_WRITE_ENABLE(15i32);
pub const D3D11_COLOR_WRITE_ENABLE_ALPHA: D3D11_COLOR_WRITE_ENABLE = D3D11_COLOR_WRITE_ENABLE(8i32);
pub const D3D11_COLOR_WRITE_ENABLE_BLUE: D3D11_COLOR_WRITE_ENABLE = D3D11_COLOR_WRITE_ENABLE(4i32);
pub const D3D11_COLOR_WRITE_ENABLE_GREEN: D3D11_COLOR_WRITE_ENABLE = D3D11_COLOR_WRITE_ENABLE(2i32);
pub const D3D11_COLOR_WRITE_ENABLE_RED: D3D11_COLOR_WRITE_ENABLE = D3D11_COLOR_WRITE_ENABLE(1i32);
pub const D3D11_COMMONSHADER_CONSTANT_BUFFER_API_SLOT_COUNT: u32 = 14u32;
pub const D3D11_COMMONSHADER_CONSTANT_BUFFER_COMPONENTS: u32 = 4u32;
pub const D3D11_COMMONSHADER_CONSTANT_BUFFER_COMPONENT_BIT_COUNT: u32 = 32u32;
pub const D3D11_COMMONSHADER_CONSTANT_BUFFER_HW_SLOT_COUNT: u32 = 15u32;
pub const D3D11_COMMONSHADER_CONSTANT_BUFFER_PARTIAL_UPDATE_EXTENTS_BYTE_ALIGNMENT: u32 = 16u32;
pub const D3D11_COMMONSHADER_CONSTANT_BUFFER_REGISTER_COMPONENTS: u32 = 4u32;
pub const D3D11_COMMONSHADER_CONSTANT_BUFFER_REGISTER_COUNT: u32 = 15u32;
pub const D3D11_COMMONSHADER_CONSTANT_BUFFER_REGISTER_READS_PER_INST: u32 = 1u32;
pub const D3D11_COMMONSHADER_CONSTANT_BUFFER_REGISTER_READ_PORTS: u32 = 1u32;
pub const D3D11_COMMONSHADER_FLOWCONTROL_NESTING_LIMIT: u32 = 64u32;
pub const D3D11_COMMONSHADER_IMMEDIATE_CONSTANT_BUFFER_REGISTER_COMPONENTS: u32 = 4u32;
pub const D3D11_COMMONSHADER_IMMEDIATE_CONSTANT_BUFFER_REGISTER_COUNT: u32 = 1u32;
pub const D3D11_COMMONSHADER_IMMEDIATE_CONSTANT_BUFFER_REGISTER_READS_PER_INST: u32 = 1u32;
pub const D3D11_COMMONSHADER_IMMEDIATE_CONSTANT_BUFFER_REGISTER_READ_PORTS: u32 = 1u32;
pub const D3D11_COMMONSHADER_IMMEDIATE_VALUE_COMPONENT_BIT_COUNT: u32 = 32u32;
pub const D3D11_COMMONSHADER_INPUT_RESOURCE_REGISTER_COMPONENTS: u32 = 1u32;
pub const D3D11_COMMONSHADER_INPUT_RESOURCE_REGISTER_COUNT: u32 = 128u32;
pub const D3D11_COMMONSHADER_INPUT_RESOURCE_REGISTER_READS_PER_INST: u32 = 1u32;
pub const D3D11_COMMONSHADER_INPUT_RESOURCE_REGISTER_READ_PORTS: u32 = 1u32;
pub const D3D11_COMMONSHADER_INPUT_RESOURCE_SLOT_COUNT: u32 = 128u32;
pub const D3D11_COMMONSHADER_SAMPLER_REGISTER_COMPONENTS: u32 = 1u32;
pub const D3D11_COMMONSHADER_SAMPLER_REGISTER_COUNT: u32 = 16u32;
pub const D3D11_COMMONSHADER_SAMPLER_REGISTER_READS_PER_INST: u32 = 1u32;
pub const D3D11_COMMONSHADER_SAMPLER_REGISTER_READ_PORTS: u32 = 1u32;
pub const D3D11_COMMONSHADER_SAMPLER_SLOT_COUNT: u32 = 16u32;
pub const D3D11_COMMONSHADER_SUBROUTINE_NESTING_LIMIT: u32 = 32u32;
pub const D3D11_COMMONSHADER_TEMP_REGISTER_COMPONENTS: u32 = 4u32;
pub const D3D11_COMMONSHADER_TEMP_REGISTER_COMPONENT_BIT_COUNT: u32 = 32u32;
pub const D3D11_COMMONSHADER_TEMP_REGISTER_COUNT: u32 = 4096u32;
pub const D3D11_COMMONSHADER_TEMP_REGISTER_READS_PER_INST: u32 = 3u32;
pub const D3D11_COMMONSHADER_TEMP_REGISTER_READ_PORTS: u32 = 3u32;
pub const D3D11_COMMONSHADER_TEXCOORD_RANGE_REDUCTION_MAX: u32 = 10u32;
pub const D3D11_COMMONSHADER_TEXCOORD_RANGE_REDUCTION_MIN: i32 = -10i32;
pub const D3D11_COMMONSHADER_TEXEL_OFFSET_MAX_NEGATIVE: i32 = -8i32;
pub const D3D11_COMMONSHADER_TEXEL_OFFSET_MAX_POSITIVE: u32 = 7u32;
pub const D3D11_COMPARISON_ALWAYS: D3D11_COMPARISON_FUNC = D3D11_COMPARISON_FUNC(8i32);
pub const D3D11_COMPARISON_EQUAL: D3D11_COMPARISON_FUNC = D3D11_COMPARISON_FUNC(3i32);
pub const D3D11_COMPARISON_FILTERING_BIT: u32 = 128u32;
#[repr(transparent)]
#[derive(Clone, Copy, Debug, Default, Eq, PartialEq)]
pub struct D3D11_COMPARISON_FUNC(pub i32);
pub const D3D11_COMPARISON_GREATER: D3D11_COMPARISON_FUNC = D3D11_COMPARISON_FUNC(5i32);
pub const D3D11_COMPARISON_GREATER_EQUAL: D3D11_COMPARISON_FUNC = D3D11_COMPARISON_FUNC(7i32);
pub const D3D11_COMPARISON_LESS: D3D11_COMPARISON_FUNC = D3D11_COMPARISON_FUNC(2i32);
pub const D3D11_COMPARISON_LESS_EQUAL: D3D11_COMPARISON_FUNC = D3D11_COMPARISON_FUNC(4i32);
pub const D3D11_COMPARISON_NEVER: D3D11_COMPARISON_FUNC = D3D11_COMPARISON_FUNC(1i32);
pub const D3D11_COMPARISON_NOT_EQUAL: D3D11_COMPARISON_FUNC = D3D11_COMPARISON_FUNC(6i32);
pub const D3D11_COMPUTE_SHADER: D3D11_SHADER_TYPE = D3D11_SHADER_TYPE(6i32);
#[repr(C)]
#[derive(Clone, Copy, Debug, PartialEq)]
pub struct D3D11_COMPUTE_SHADER_TRACE_DESC {
pub Invocation: u64,
pub ThreadIDInGroup: [u32; 3],
pub ThreadGroupID: [u32; 3],
}
impl Default for D3D11_COMPUTE_SHADER_TRACE_DESC {
fn default() -> Self {
unsafe { core::mem::zeroed() }
}
}
#[repr(transparent)]
#[derive(Clone, Copy, Debug, Default, Eq, PartialEq)]
pub struct D3D11_CONSERVATIVE_RASTERIZATION_MODE(pub i32);
pub const D3D11_CONSERVATIVE_RASTERIZATION_MODE_OFF: D3D11_CONSERVATIVE_RASTERIZATION_MODE =
D3D11_CONSERVATIVE_RASTERIZATION_MODE(0i32);
pub const D3D11_CONSERVATIVE_RASTERIZATION_MODE_ON: D3D11_CONSERVATIVE_RASTERIZATION_MODE =
D3D11_CONSERVATIVE_RASTERIZATION_MODE(1i32);
pub const D3D11_CONSERVATIVE_RASTERIZATION_NOT_SUPPORTED: D3D11_CONSERVATIVE_RASTERIZATION_TIER =
D3D11_CONSERVATIVE_RASTERIZATION_TIER(0i32);
#[repr(transparent)]
#[derive(Clone, Copy, Debug, Default, Eq, PartialEq)]
pub struct D3D11_CONSERVATIVE_RASTERIZATION_TIER(pub i32);
pub const D3D11_CONSERVATIVE_RASTERIZATION_TIER_1: D3D11_CONSERVATIVE_RASTERIZATION_TIER =
D3D11_CONSERVATIVE_RASTERIZATION_TIER(1i32);
pub const D3D11_CONSERVATIVE_RASTERIZATION_TIER_2: D3D11_CONSERVATIVE_RASTERIZATION_TIER =
D3D11_CONSERVATIVE_RASTERIZATION_TIER(2i32);
pub const D3D11_CONSERVATIVE_RASTERIZATION_TIER_3: D3D11_CONSERVATIVE_RASTERIZATION_TIER =
D3D11_CONSERVATIVE_RASTERIZATION_TIER(3i32);
#[repr(transparent)]
#[derive(Clone, Copy, Debug, Default, Eq, PartialEq)]
pub struct D3D11_CONTENT_PROTECTION_CAPS(pub i32);
pub const D3D11_CONTENT_PROTECTION_CAPS_CONTENT_KEY: D3D11_CONTENT_PROTECTION_CAPS =
D3D11_CONTENT_PROTECTION_CAPS(16i32);
pub const D3D11_CONTENT_PROTECTION_CAPS_DECRYPTION_BLT: D3D11_CONTENT_PROTECTION_CAPS =
D3D11_CONTENT_PROTECTION_CAPS(1024i32);
pub const D3D11_CONTENT_PROTECTION_CAPS_ENCRYPTED_READ_BACK: D3D11_CONTENT_PROTECTION_CAPS =
D3D11_CONTENT_PROTECTION_CAPS(64i32);
pub const D3D11_CONTENT_PROTECTION_CAPS_ENCRYPTED_READ_BACK_KEY: D3D11_CONTENT_PROTECTION_CAPS =
D3D11_CONTENT_PROTECTION_CAPS(128i32);
pub const D3D11_CONTENT_PROTECTION_CAPS_ENCRYPT_SLICEDATA_ONLY: D3D11_CONTENT_PROTECTION_CAPS =
D3D11_CONTENT_PROTECTION_CAPS(512i32);
pub const D3D11_CONTENT_PROTECTION_CAPS_FRESHEN_SESSION_KEY: D3D11_CONTENT_PROTECTION_CAPS =
D3D11_CONTENT_PROTECTION_CAPS(32i32);
pub const D3D11_CONTENT_PROTECTION_CAPS_HARDWARE: D3D11_CONTENT_PROTECTION_CAPS =
D3D11_CONTENT_PROTECTION_CAPS(2i32);
pub const D3D11_CONTENT_PROTECTION_CAPS_HARDWARE_DRM_COMMUNICATION: D3D11_CONTENT_PROTECTION_CAPS =
D3D11_CONTENT_PROTECTION_CAPS(16384i32);
pub const D3D11_CONTENT_PROTECTION_CAPS_HARDWARE_DRM_COMMUNICATION_MULTI_THREADED:
D3D11_CONTENT_PROTECTION_CAPS = D3D11_CONTENT_PROTECTION_CAPS(32768i32);
pub const D3D11_CONTENT_PROTECTION_CAPS_HARDWARE_PROTECTED_MEMORY_PAGEABLE:
D3D11_CONTENT_PROTECTION_CAPS = D3D11_CONTENT_PROTECTION_CAPS(4096i32);
pub const D3D11_CONTENT_PROTECTION_CAPS_HARDWARE_PROTECT_UNCOMPRESSED:
D3D11_CONTENT_PROTECTION_CAPS = D3D11_CONTENT_PROTECTION_CAPS(2048i32);
pub const D3D11_CONTENT_PROTECTION_CAPS_HARDWARE_TEARDOWN: D3D11_CONTENT_PROTECTION_CAPS =
D3D11_CONTENT_PROTECTION_CAPS(8192i32);
pub const D3D11_CONTENT_PROTECTION_CAPS_PARTIAL_DECRYPTION: D3D11_CONTENT_PROTECTION_CAPS =
D3D11_CONTENT_PROTECTION_CAPS(8i32);
pub const D3D11_CONTENT_PROTECTION_CAPS_PROTECTION_ALWAYS_ON: D3D11_CONTENT_PROTECTION_CAPS =
D3D11_CONTENT_PROTECTION_CAPS(4i32);
pub const D3D11_CONTENT_PROTECTION_CAPS_SEQUENTIAL_CTR_IV: D3D11_CONTENT_PROTECTION_CAPS =
D3D11_CONTENT_PROTECTION_CAPS(256i32);
pub const D3D11_CONTENT_PROTECTION_CAPS_SOFTWARE: D3D11_CONTENT_PROTECTION_CAPS =
D3D11_CONTENT_PROTECTION_CAPS(1i32);
#[repr(transparent)]
#[derive(Clone, Copy, Debug, Default, Eq, PartialEq)]
pub struct D3D11_CONTEXT_TYPE(pub i32);
pub const D3D11_CONTEXT_TYPE_3D: D3D11_CONTEXT_TYPE = D3D11_CONTEXT_TYPE(1i32);
pub const D3D11_CONTEXT_TYPE_ALL: D3D11_CONTEXT_TYPE = D3D11_CONTEXT_TYPE(0i32);
pub const D3D11_CONTEXT_TYPE_COMPUTE: D3D11_CONTEXT_TYPE = D3D11_CONTEXT_TYPE(2i32);
pub const D3D11_CONTEXT_TYPE_COPY: D3D11_CONTEXT_TYPE = D3D11_CONTEXT_TYPE(3i32);
pub const D3D11_CONTEXT_TYPE_VIDEO: D3D11_CONTEXT_TYPE = D3D11_CONTEXT_TYPE(4i32);
pub const D3D11_COPY_DISCARD: D3D11_COPY_FLAGS = D3D11_COPY_FLAGS(2i32);
#[repr(transparent)]
#[derive(Clone, Copy, Debug, Default, Eq, PartialEq)]
pub struct D3D11_COPY_FLAGS(pub i32);
pub const D3D11_COPY_NO_OVERWRITE: D3D11_COPY_FLAGS = D3D11_COPY_FLAGS(1i32);
#[repr(transparent)]
#[derive(Clone, Copy, Debug, Default, Eq, PartialEq)]
pub struct D3D11_COUNTER(pub i32);
#[repr(C)]
#[derive(Clone, Copy, Debug, PartialEq)]
pub struct D3D11_COUNTER_DESC {
pub Counter: D3D11_COUNTER,
pub MiscFlags: u32,
}
impl Default for D3D11_COUNTER_DESC {
fn default() -> Self {
unsafe { core::mem::zeroed() }
}
}
pub const D3D11_COUNTER_DEVICE_DEPENDENT_0: D3D11_COUNTER = D3D11_COUNTER(1073741824i32);
#[repr(C)]
#[derive(Clone, Copy, Debug, PartialEq)]
pub struct D3D11_COUNTER_INFO {
pub LastDeviceDependentCounter: D3D11_COUNTER,
pub NumSimultaneousCounters: u32,
pub NumDetectableParallelUnits: u8,
}
impl Default for D3D11_COUNTER_INFO {
fn default() -> Self {
unsafe { core::mem::zeroed() }
}
}
#[repr(transparent)]
#[derive(Clone, Copy, Debug, Default, Eq, PartialEq)]
pub struct D3D11_COUNTER_TYPE(pub i32);
pub const D3D11_COUNTER_TYPE_FLOAT32: D3D11_COUNTER_TYPE = D3D11_COUNTER_TYPE(0i32);
pub const D3D11_COUNTER_TYPE_UINT16: D3D11_COUNTER_TYPE = D3D11_COUNTER_TYPE(1i32);
pub const D3D11_COUNTER_TYPE_UINT32: D3D11_COUNTER_TYPE = D3D11_COUNTER_TYPE(2i32);
pub const D3D11_COUNTER_TYPE_UINT64: D3D11_COUNTER_TYPE = D3D11_COUNTER_TYPE(3i32);
#[repr(transparent)]
#[derive(Clone, Copy, Debug, Default, Eq, PartialEq)]
pub struct D3D11_CPU_ACCESS_FLAG(pub i32);
impl D3D11_CPU_ACCESS_FLAG {
pub const fn contains(&self, other: Self) -> bool {
self.0 & other.0 == other.0
}
}
impl core::ops::BitOr for D3D11_CPU_ACCESS_FLAG {
type Output = Self;
fn bitor(self, other: Self) -> Self {
Self(self.0 | other.0)
}
}
impl core::ops::BitAnd for D3D11_CPU_ACCESS_FLAG {
type Output = Self;
fn bitand(self, other: Self) -> Self {
Self(self.0 & other.0)
}
}
impl core::ops::BitOrAssign for D3D11_CPU_ACCESS_FLAG {
fn bitor_assign(&mut self, other: Self) {
self.0.bitor_assign(other.0)
}
}
impl core::ops::BitAndAssign for D3D11_CPU_ACCESS_FLAG {
fn bitand_assign(&mut self, other: Self) {
self.0.bitand_assign(other.0)
}
}
impl core::ops::Not for D3D11_CPU_ACCESS_FLAG {
type Output = Self;
fn not(self) -> Self {
Self(self.0.not())
}
}
pub const D3D11_CPU_ACCESS_READ: D3D11_CPU_ACCESS_FLAG = D3D11_CPU_ACCESS_FLAG(131072i32);
pub const D3D11_CPU_ACCESS_WRITE: D3D11_CPU_ACCESS_FLAG = D3D11_CPU_ACCESS_FLAG(65536i32);
pub const D3D11_CREATE_DEVICE_BGRA_SUPPORT: D3D11_CREATE_DEVICE_FLAG =
D3D11_CREATE_DEVICE_FLAG(32u32);
pub const D3D11_CREATE_DEVICE_DEBUG: D3D11_CREATE_DEVICE_FLAG = D3D11_CREATE_DEVICE_FLAG(2u32);
pub const D3D11_CREATE_DEVICE_DEBUGGABLE: D3D11_CREATE_DEVICE_FLAG =
D3D11_CREATE_DEVICE_FLAG(64u32);
pub const D3D11_CREATE_DEVICE_DISABLE_GPU_TIMEOUT: D3D11_CREATE_DEVICE_FLAG =
D3D11_CREATE_DEVICE_FLAG(256u32);
#[repr(transparent)]
#[derive(Clone, Copy, Debug, Default, Eq, PartialEq)]
pub struct D3D11_CREATE_DEVICE_FLAG(pub u32);
impl D3D11_CREATE_DEVICE_FLAG {
pub const fn contains(&self, other: Self) -> bool {
self.0 & other.0 == other.0
}
}
impl core::ops::BitOr for D3D11_CREATE_DEVICE_FLAG {
type Output = Self;
fn bitor(self, other: Self) -> Self {
Self(self.0 | other.0)
}
}
impl core::ops::BitAnd for D3D11_CREATE_DEVICE_FLAG {
type Output = Self;
fn bitand(self, other: Self) -> Self {
Self(self.0 & other.0)
}
}
impl core::ops::BitOrAssign for D3D11_CREATE_DEVICE_FLAG {
fn bitor_assign(&mut self, other: Self) {
self.0.bitor_assign(other.0)
}
}
impl core::ops::BitAndAssign for D3D11_CREATE_DEVICE_FLAG {
fn bitand_assign(&mut self, other: Self) {
self.0.bitand_assign(other.0)
}
}
impl core::ops::Not for D3D11_CREATE_DEVICE_FLAG {
type Output = Self;
fn not(self) -> Self {
Self(self.0.not())
}
}
pub const D3D11_CREATE_DEVICE_PREVENT_ALTERING_LAYER_SETTINGS_FROM_REGISTRY:
D3D11_CREATE_DEVICE_FLAG = D3D11_CREATE_DEVICE_FLAG(128u32);
pub const D3D11_CREATE_DEVICE_PREVENT_INTERNAL_THREADING_OPTIMIZATIONS: D3D11_CREATE_DEVICE_FLAG =
D3D11_CREATE_DEVICE_FLAG(8u32);
pub const D3D11_CREATE_DEVICE_SINGLETHREADED: D3D11_CREATE_DEVICE_FLAG =
D3D11_CREATE_DEVICE_FLAG(1u32);
pub const D3D11_CREATE_DEVICE_SWITCH_TO_REF: D3D11_CREATE_DEVICE_FLAG =
D3D11_CREATE_DEVICE_FLAG(4u32);
pub const D3D11_CREATE_DEVICE_VIDEO_SUPPORT: D3D11_CREATE_DEVICE_FLAG =
D3D11_CREATE_DEVICE_FLAG(2048u32);
#[repr(transparent)]
#[derive(Clone, Copy, Debug, Default, Eq, PartialEq)]
pub struct D3D11_CRYPTO_SESSION_KEY_EXCHANGE_FLAGS(pub i32);
impl D3D11_CRYPTO_SESSION_KEY_EXCHANGE_FLAGS {
pub const fn contains(&self, other: Self) -> bool {
self.0 & other.0 == other.0
}
}
impl core::ops::BitOr for D3D11_CRYPTO_SESSION_KEY_EXCHANGE_FLAGS {
type Output = Self;
fn bitor(self, other: Self) -> Self {
Self(self.0 | other.0)
}
}
impl core::ops::BitAnd for D3D11_CRYPTO_SESSION_KEY_EXCHANGE_FLAGS {
type Output = Self;
fn bitand(self, other: Self) -> Self {
Self(self.0 & other.0)
}
}
impl core::ops::BitOrAssign for D3D11_CRYPTO_SESSION_KEY_EXCHANGE_FLAGS {
fn bitor_assign(&mut self, other: Self) {
self.0.bitor_assign(other.0)
}
}
impl core::ops::BitAndAssign for D3D11_CRYPTO_SESSION_KEY_EXCHANGE_FLAGS {
fn bitand_assign(&mut self, other: Self) {
self.0.bitand_assign(other.0)
}
}
impl core::ops::Not for D3D11_CRYPTO_SESSION_KEY_EXCHANGE_FLAGS {
type Output = Self;
fn not(self) -> Self {
Self(self.0.not())
}
}
pub const D3D11_CRYPTO_SESSION_KEY_EXCHANGE_FLAG_NONE: D3D11_CRYPTO_SESSION_KEY_EXCHANGE_FLAGS =
D3D11_CRYPTO_SESSION_KEY_EXCHANGE_FLAGS(0i32);
#[repr(transparent)]
#[derive(Clone, Copy, Debug, Default, Eq, PartialEq)]
pub struct D3D11_CRYPTO_SESSION_STATUS(pub i32);
pub const D3D11_CRYPTO_SESSION_STATUS_KEY_AND_CONTENT_LOST: D3D11_CRYPTO_SESSION_STATUS =
D3D11_CRYPTO_SESSION_STATUS(2i32);
pub const D3D11_CRYPTO_SESSION_STATUS_KEY_LOST: D3D11_CRYPTO_SESSION_STATUS =
D3D11_CRYPTO_SESSION_STATUS(1i32);
pub const D3D11_CRYPTO_SESSION_STATUS_OK: D3D11_CRYPTO_SESSION_STATUS =
D3D11_CRYPTO_SESSION_STATUS(0i32);
pub const D3D11_CRYPTO_TYPE_AES128_CTR: windows_core::GUID =
windows_core::GUID::from_u128(0x9b6bd711_4f74_41c9_9e7b_0be2d7d93b4f);
pub const D3D11_CS_4_X_BUCKET00_MAX_BYTES_TGSM_WRITABLE_PER_THREAD: u32 = 256u32;
pub const D3D11_CS_4_X_BUCKET00_MAX_NUM_THREADS_PER_GROUP: u32 = 64u32;
pub const D3D11_CS_4_X_BUCKET01_MAX_BYTES_TGSM_WRITABLE_PER_THREAD: u32 = 240u32;
pub const D3D11_CS_4_X_BUCKET01_MAX_NUM_THREADS_PER_GROUP: u32 = 68u32;
pub const D3D11_CS_4_X_BUCKET02_MAX_BYTES_TGSM_WRITABLE_PER_THREAD: u32 = 224u32;
pub const D3D11_CS_4_X_BUCKET02_MAX_NUM_THREADS_PER_GROUP: u32 = 72u32;
pub const D3D11_CS_4_X_BUCKET03_MAX_BYTES_TGSM_WRITABLE_PER_THREAD: u32 = 208u32;
pub const D3D11_CS_4_X_BUCKET03_MAX_NUM_THREADS_PER_GROUP: u32 = 76u32;
pub const D3D11_CS_4_X_BUCKET04_MAX_BYTES_TGSM_WRITABLE_PER_THREAD: u32 = 192u32;
pub const D3D11_CS_4_X_BUCKET04_MAX_NUM_THREADS_PER_GROUP: u32 = 84u32;
pub const D3D11_CS_4_X_BUCKET05_MAX_BYTES_TGSM_WRITABLE_PER_THREAD: u32 = 176u32;
pub const D3D11_CS_4_X_BUCKET05_MAX_NUM_THREADS_PER_GROUP: u32 = 92u32;
pub const D3D11_CS_4_X_BUCKET06_MAX_BYTES_TGSM_WRITABLE_PER_THREAD: u32 = 160u32;
pub const D3D11_CS_4_X_BUCKET06_MAX_NUM_THREADS_PER_GROUP: u32 = 100u32;
pub const D3D11_CS_4_X_BUCKET07_MAX_BYTES_TGSM_WRITABLE_PER_THREAD: u32 = 144u32;
pub const D3D11_CS_4_X_BUCKET07_MAX_NUM_THREADS_PER_GROUP: u32 = 112u32;
pub const D3D11_CS_4_X_BUCKET08_MAX_BYTES_TGSM_WRITABLE_PER_THREAD: u32 = 128u32;
pub const D3D11_CS_4_X_BUCKET08_MAX_NUM_THREADS_PER_GROUP: u32 = 128u32;
pub const D3D11_CS_4_X_BUCKET09_MAX_BYTES_TGSM_WRITABLE_PER_THREAD: u32 = 112u32;
pub const D3D11_CS_4_X_BUCKET09_MAX_NUM_THREADS_PER_GROUP: u32 = 144u32;
pub const D3D11_CS_4_X_BUCKET10_MAX_BYTES_TGSM_WRITABLE_PER_THREAD: u32 = 96u32;
pub const D3D11_CS_4_X_BUCKET10_MAX_NUM_THREADS_PER_GROUP: u32 = 168u32;
pub const D3D11_CS_4_X_BUCKET11_MAX_BYTES_TGSM_WRITABLE_PER_THREAD: u32 = 80u32;
pub const D3D11_CS_4_X_BUCKET11_MAX_NUM_THREADS_PER_GROUP: u32 = 204u32;
pub const D3D11_CS_4_X_BUCKET12_MAX_BYTES_TGSM_WRITABLE_PER_THREAD: u32 = 64u32;
pub const D3D11_CS_4_X_BUCKET12_MAX_NUM_THREADS_PER_GROUP: u32 = 256u32;
pub const D3D11_CS_4_X_BUCKET13_MAX_BYTES_TGSM_WRITABLE_PER_THREAD: u32 = 48u32;
pub const D3D11_CS_4_X_BUCKET13_MAX_NUM_THREADS_PER_GROUP: u32 = 340u32;
pub const D3D11_CS_4_X_BUCKET14_MAX_BYTES_TGSM_WRITABLE_PER_THREAD: u32 = 32u32;
pub const D3D11_CS_4_X_BUCKET14_MAX_NUM_THREADS_PER_GROUP: u32 = 512u32;
pub const D3D11_CS_4_X_BUCKET15_MAX_BYTES_TGSM_WRITABLE_PER_THREAD: u32 = 16u32;
pub const D3D11_CS_4_X_BUCKET15_MAX_NUM_THREADS_PER_GROUP: u32 = 768u32;
pub const D3D11_CS_4_X_DISPATCH_MAX_THREAD_GROUPS_IN_Z_DIMENSION: u32 = 1u32;
pub const D3D11_CS_4_X_RAW_UAV_BYTE_ALIGNMENT: u32 = 256u32;
pub const D3D11_CS_4_X_THREAD_GROUP_MAX_THREADS_PER_GROUP: u32 = 768u32;
pub const D3D11_CS_4_X_THREAD_GROUP_MAX_X: u32 = 768u32;
pub const D3D11_CS_4_X_THREAD_GROUP_MAX_Y: u32 = 768u32;
pub const D3D11_CS_4_X_UAV_REGISTER_COUNT: u32 = 1u32;
pub const D3D11_CS_DISPATCH_MAX_THREAD_GROUPS_PER_DIMENSION: u32 = 65535u32;
pub const D3D11_CS_TGSM_REGISTER_COUNT: u32 = 8192u32;
pub const D3D11_CS_TGSM_REGISTER_READS_PER_INST: u32 = 1u32;
pub const D3D11_CS_TGSM_RESOURCE_REGISTER_COMPONENTS: u32 = 1u32;
pub const D3D11_CS_TGSM_RESOURCE_REGISTER_READ_PORTS: u32 = 1u32;
pub const D3D11_CS_THREADGROUPID_REGISTER_COMPONENTS: u32 = 3u32;
pub const D3D11_CS_THREADGROUPID_REGISTER_COUNT: u32 = 1u32;
pub const D3D11_CS_THREADIDINGROUPFLATTENED_REGISTER_COMPONENTS: u32 = 1u32;
pub const D3D11_CS_THREADIDINGROUPFLATTENED_REGISTER_COUNT: u32 = 1u32;
pub const D3D11_CS_THREADIDINGROUP_REGISTER_COMPONENTS: u32 = 3u32;
pub const D3D11_CS_THREADIDINGROUP_REGISTER_COUNT: u32 = 1u32;
pub const D3D11_CS_THREADID_REGISTER_COMPONENTS: u32 = 3u32;
pub const D3D11_CS_THREADID_REGISTER_COUNT: u32 = 1u32;
pub const D3D11_CS_THREAD_GROUP_MAX_THREADS_PER_GROUP: u32 = 1024u32;
pub const D3D11_CS_THREAD_GROUP_MAX_X: u32 = 1024u32;
pub const D3D11_CS_THREAD_GROUP_MAX_Y: u32 = 1024u32;
pub const D3D11_CS_THREAD_GROUP_MAX_Z: u32 = 64u32;
pub const D3D11_CS_THREAD_GROUP_MIN_X: u32 = 1u32;
pub const D3D11_CS_THREAD_GROUP_MIN_Y: u32 = 1u32;
pub const D3D11_CS_THREAD_GROUP_MIN_Z: u32 = 1u32;
pub const D3D11_CS_THREAD_LOCAL_TEMP_REGISTER_POOL: u32 = 16384u32;
pub const D3D11_CULL_BACK: D3D11_CULL_MODE = D3D11_CULL_MODE(3i32);
pub const D3D11_CULL_FRONT: D3D11_CULL_MODE = D3D11_CULL_MODE(2i32);
#[repr(transparent)]
#[derive(Clone, Copy, Debug, Default, Eq, PartialEq)]
pub struct D3D11_CULL_MODE(pub i32);
pub const D3D11_CULL_NONE: D3D11_CULL_MODE = D3D11_CULL_MODE(1i32);
pub const D3D11_DEBUG_FEATURE_ALWAYS_DISCARD_OFFERED_RESOURCE: u32 = 8u32;
pub const D3D11_DEBUG_FEATURE_AVOID_BEHAVIOR_CHANGING_DEBUG_AIDS: u32 = 64u32;
pub const D3D11_DEBUG_FEATURE_DISABLE_TILED_RESOURCE_MAPPING_TRACKING_AND_VALIDATION: u32 = 128u32;
pub const D3D11_DEBUG_FEATURE_FINISH_PER_RENDER_OP: u32 = 2u32;
pub const D3D11_DEBUG_FEATURE_FLUSH_PER_RENDER_OP: u32 = 1u32;
pub const D3D11_DEBUG_FEATURE_NEVER_DISCARD_OFFERED_RESOURCE: u32 = 16u32;
pub const D3D11_DEBUG_FEATURE_PRESENT_PER_RENDER_OP: u32 = 4u32;
pub const D3D11_DECODER_BITSTREAM_ENCRYPTION_TYPE_CBCS: windows_core::GUID =
windows_core::GUID::from_u128(0x422d9319_9d21_4bb7_9371_faf5a82c3e04);
pub const D3D11_DECODER_BITSTREAM_ENCRYPTION_TYPE_CENC: windows_core::GUID =
windows_core::GUID::from_u128(0xb0405235_c13d_44f2_9ae5_dd48e08e5b67);
pub const D3D11_DECODER_ENCRYPTION_HW_CENC: windows_core::GUID =
windows_core::GUID::from_u128(0x89d6ac4f_09f2_4229_b2cd_37740a6dfd81);
pub const D3D11_DECODER_PROFILE_AV1_VLD_12BIT_PROFILE2: windows_core::GUID =
windows_core::GUID::from_u128(0x17127009_a00f_4ce1_994e_bf4081f6f3f0);
pub const D3D11_DECODER_PROFILE_AV1_VLD_12BIT_PROFILE2_420: windows_core::GUID =
windows_core::GUID::from_u128(0x2d80bed6_9cac_4835_9e91_327bbc4f9ee8);
pub const D3D11_DECODER_PROFILE_AV1_VLD_PROFILE0: windows_core::GUID =
windows_core::GUID::from_u128(0xb8be4ccb_cf53_46ba_8d59_d6b8a6da5d2a);
pub const D3D11_DECODER_PROFILE_AV1_VLD_PROFILE1: windows_core::GUID =
windows_core::GUID::from_u128(0x6936ff0f_45b1_4163_9cc1_646ef6946108);
pub const D3D11_DECODER_PROFILE_AV1_VLD_PROFILE2: windows_core::GUID =
windows_core::GUID::from_u128(0x0c5f2aa1_e541_4089_bb7b_98110a19d7c8);
pub const D3D11_DECODER_PROFILE_H264_IDCT_FGT: windows_core::GUID =
windows_core::GUID::from_u128(0x1b81be67_a0c7_11d3_b984_00c04f2e73c5);
pub const D3D11_DECODER_PROFILE_H264_IDCT_NOFGT: windows_core::GUID =
windows_core::GUID::from_u128(0x1b81be66_a0c7_11d3_b984_00c04f2e73c5);
pub const D3D11_DECODER_PROFILE_H264_MOCOMP_FGT: windows_core::GUID =
windows_core::GUID::from_u128(0x1b81be65_a0c7_11d3_b984_00c04f2e73c5);
pub const D3D11_DECODER_PROFILE_H264_MOCOMP_NOFGT: windows_core::GUID =
windows_core::GUID::from_u128(0x1b81be64_a0c7_11d3_b984_00c04f2e73c5);
pub const D3D11_DECODER_PROFILE_H264_VLD_FGT: windows_core::GUID =
windows_core::GUID::from_u128(0x1b81be69_a0c7_11d3_b984_00c04f2e73c5);
pub const D3D11_DECODER_PROFILE_H264_VLD_MULTIVIEW_NOFGT: windows_core::GUID =
windows_core::GUID::from_u128(0x705b9d82_76cf_49d6_b7e6_ac8872db013c);
pub const D3D11_DECODER_PROFILE_H264_VLD_NOFGT: windows_core::GUID =
windows_core::GUID::from_u128(0x1b81be68_a0c7_11d3_b984_00c04f2e73c5);
pub const D3D11_DECODER_PROFILE_H264_VLD_STEREO_NOFGT: windows_core::GUID =
windows_core::GUID::from_u128(0xf9aaccbb_c2b6_4cfc_8779_5707b1760552);
pub const D3D11_DECODER_PROFILE_H264_VLD_STEREO_PROGRESSIVE_NOFGT: windows_core::GUID =
windows_core::GUID::from_u128(0xd79be8da_0cf1_4c81_b82a_69a4e236f43d);
pub const D3D11_DECODER_PROFILE_H264_VLD_WITHFMOASO_NOFGT: windows_core::GUID =
windows_core::GUID::from_u128(0xd5f04ff9_3418_45d8_9561_32a76aae2ddd);
pub const D3D11_DECODER_PROFILE_HEVC_VLD_MAIN: windows_core::GUID =
windows_core::GUID::from_u128(0x5b11d51b_2f4c_4452_bcc3_09f2a1160cc0);
pub const D3D11_DECODER_PROFILE_HEVC_VLD_MAIN10: windows_core::GUID =
windows_core::GUID::from_u128(0x107af0e0_ef1a_4d19_aba8_67a163073d13);
pub const D3D11_DECODER_PROFILE_MPEG1_VLD: windows_core::GUID =
windows_core::GUID::from_u128(0x6f3ec719_3735_42cc_8063_65cc3cb36616);
pub const D3D11_DECODER_PROFILE_MPEG2_IDCT: windows_core::GUID =
windows_core::GUID::from_u128(0xbf22ad00_03ea_4690_8077_473346209b7e);
pub const D3D11_DECODER_PROFILE_MPEG2_MOCOMP: windows_core::GUID =
windows_core::GUID::from_u128(0xe6a9f44b_61b0_4563_9ea4_63d2a3c6fe66);
pub const D3D11_DECODER_PROFILE_MPEG2_VLD: windows_core::GUID =
windows_core::GUID::from_u128(0xee27417f_5e28_4e65_beea_1d26b508adc9);
pub const D3D11_DECODER_PROFILE_MPEG2and1_VLD: windows_core::GUID =
windows_core::GUID::from_u128(0x86695f12_340e_4f04_9fd3_9253dd327460);
pub const D3D11_DECODER_PROFILE_MPEG4PT2_VLD_ADVSIMPLE_GMC: windows_core::GUID =
windows_core::GUID::from_u128(0xab998b5b_4258_44a9_9feb_94e597a6baae);
pub const D3D11_DECODER_PROFILE_MPEG4PT2_VLD_ADVSIMPLE_NOGMC: windows_core::GUID =
windows_core::GUID::from_u128(0xed418a9f_010d_4eda_9ae3_9a65358d8d2e);
pub const D3D11_DECODER_PROFILE_MPEG4PT2_VLD_SIMPLE: windows_core::GUID =
windows_core::GUID::from_u128(0xefd64d74_c9e8_41d7_a5e9_e9b0e39fa319);
pub const D3D11_DECODER_PROFILE_VC1_D2010: windows_core::GUID =
windows_core::GUID::from_u128(0x1b81bea4_a0c7_11d3_b984_00c04f2e73c5);
pub const D3D11_DECODER_PROFILE_VC1_IDCT: windows_core::GUID =
windows_core::GUID::from_u128(0x1b81bea2_a0c7_11d3_b984_00c04f2e73c5);
pub const D3D11_DECODER_PROFILE_VC1_MOCOMP: windows_core::GUID =
windows_core::GUID::from_u128(0x1b81bea1_a0c7_11d3_b984_00c04f2e73c5);
pub const D3D11_DECODER_PROFILE_VC1_POSTPROC: windows_core::GUID =
windows_core::GUID::from_u128(0x1b81bea0_a0c7_11d3_b984_00c04f2e73c5);
pub const D3D11_DECODER_PROFILE_VC1_VLD: windows_core::GUID =
windows_core::GUID::from_u128(0x1b81bea3_a0c7_11d3_b984_00c04f2e73c5);
pub const D3D11_DECODER_PROFILE_VP8_VLD: windows_core::GUID =
windows_core::GUID::from_u128(0x90b899ea_3a62_4705_88b3_8df04b2744e7);
pub const D3D11_DECODER_PROFILE_VP9_VLD_10BIT_PROFILE2: windows_core::GUID =
windows_core::GUID::from_u128(0xa4c749ef_6ecf_48aa_8448_50a7a1165ff7);
pub const D3D11_DECODER_PROFILE_VP9_VLD_PROFILE0: windows_core::GUID =
windows_core::GUID::from_u128(0x463707f8_a1d0_4585_876d_83aa6d60b89e);
pub const D3D11_DECODER_PROFILE_WMV8_MOCOMP: windows_core::GUID =
windows_core::GUID::from_u128(0x1b81be81_a0c7_11d3_b984_00c04f2e73c5);
pub const D3D11_DECODER_PROFILE_WMV8_POSTPROC: windows_core::GUID =
windows_core::GUID::from_u128(0x1b81be80_a0c7_11d3_b984_00c04f2e73c5);
pub const D3D11_DECODER_PROFILE_WMV9_IDCT: windows_core::GUID =
windows_core::GUID::from_u128(0x1b81be94_a0c7_11d3_b984_00c04f2e73c5);
pub const D3D11_DECODER_PROFILE_WMV9_MOCOMP: windows_core::GUID =
windows_core::GUID::from_u128(0x1b81be91_a0c7_11d3_b984_00c04f2e73c5);
pub const D3D11_DECODER_PROFILE_WMV9_POSTPROC: windows_core::GUID =
windows_core::GUID::from_u128(0x1b81be90_a0c7_11d3_b984_00c04f2e73c5);
pub const D3D11_DEFAULT_BLEND_FACTOR_ALPHA: f32 = 1f32;
pub const D3D11_DEFAULT_BLEND_FACTOR_BLUE: f32 = 1f32;
pub const D3D11_DEFAULT_BLEND_FACTOR_GREEN: f32 = 1f32;
pub const D3D11_DEFAULT_BLEND_FACTOR_RED: f32 = 1f32;
pub const D3D11_DEFAULT_BORDER_COLOR_COMPONENT: f32 = 0f32;
pub const D3D11_DEFAULT_DEPTH_BIAS: u32 = 0u32;
pub const D3D11_DEFAULT_DEPTH_BIAS_CLAMP: f32 = 0f32;
pub const D3D11_DEFAULT_MAX_ANISOTROPY: u32 = 16u32;
pub const D3D11_DEFAULT_MIP_LOD_BIAS: f32 = 0f32;
pub const D3D11_DEFAULT_RENDER_TARGET_ARRAY_INDEX: u32 = 0u32;
pub const D3D11_DEFAULT_SAMPLE_MASK: u32 = 4294967295u32;
pub const D3D11_DEFAULT_SCISSOR_ENDX: u32 = 0u32;
pub const D3D11_DEFAULT_SCISSOR_ENDY: u32 = 0u32;
pub const D3D11_DEFAULT_SCISSOR_STARTX: u32 = 0u32;
pub const D3D11_DEFAULT_SCISSOR_STARTY: u32 = 0u32;
pub const D3D11_DEFAULT_SLOPE_SCALED_DEPTH_BIAS: f32 = 0f32;
pub const D3D11_DEFAULT_STENCIL_READ_MASK: u32 = 255u32;
pub const D3D11_DEFAULT_STENCIL_REFERENCE: u32 = 0u32;
pub const D3D11_DEFAULT_STENCIL_WRITE_MASK: u32 = 255u32;
pub const D3D11_DEFAULT_VIEWPORT_AND_SCISSORRECT_INDEX: u32 = 0u32;
pub const D3D11_DEFAULT_VIEWPORT_HEIGHT: u32 = 0u32;
pub const D3D11_DEFAULT_VIEWPORT_MAX_DEPTH: f32 = 0f32;
pub const D3D11_DEFAULT_VIEWPORT_MIN_DEPTH: f32 = 0f32;
pub const D3D11_DEFAULT_VIEWPORT_TOPLEFTX: u32 = 0u32;
pub const D3D11_DEFAULT_VIEWPORT_TOPLEFTY: u32 = 0u32;
pub const D3D11_DEFAULT_VIEWPORT_WIDTH: u32 = 0u32;
#[repr(C)]
#[derive(Clone, Copy, Debug, PartialEq)]
pub struct D3D11_DEPTH_STENCILOP_DESC {
pub StencilFailOp: D3D11_STENCIL_OP,
pub StencilDepthFailOp: D3D11_STENCIL_OP,
pub StencilPassOp: D3D11_STENCIL_OP,
pub StencilFunc: D3D11_COMPARISON_FUNC,
}
impl Default for D3D11_DEPTH_STENCILOP_DESC {
fn default() -> Self {
unsafe { core::mem::zeroed() }
}
}
#[repr(C)]
#[derive(Clone, Copy, Debug, PartialEq)]
pub struct D3D11_DEPTH_STENCIL_DESC {
pub DepthEnable: crate::Foundation::BOOL,
pub DepthWriteMask: D3D11_DEPTH_WRITE_MASK,
pub DepthFunc: D3D11_COMPARISON_FUNC,
pub StencilEnable: crate::Foundation::BOOL,
pub StencilReadMask: u8,
pub StencilWriteMask: u8,
pub FrontFace: D3D11_DEPTH_STENCILOP_DESC,
pub BackFace: D3D11_DEPTH_STENCILOP_DESC,
}
impl Default for D3D11_DEPTH_STENCIL_DESC {
fn default() -> Self {
unsafe { core::mem::zeroed() }
}
}
#[repr(C)]
#[cfg(feature = "Win32_Graphics_Dxgi_Common")]
#[derive(Clone, Copy)]
pub struct D3D11_DEPTH_STENCIL_VIEW_DESC {
pub Format: crate::Dxgi::Common::DXGI_FORMAT,
pub ViewDimension: D3D11_DSV_DIMENSION,
pub Flags: u32,
pub Anonymous: D3D11_DEPTH_STENCIL_VIEW_DESC_0,
}
#[cfg(feature = "Win32_Graphics_Dxgi_Common")]
impl Default for D3D11_DEPTH_STENCIL_VIEW_DESC {
fn default() -> Self {
unsafe { core::mem::zeroed() }
}
}
#[repr(C)]
#[cfg(feature = "Win32_Graphics_Dxgi_Common")]
#[derive(Clone, Copy)]
pub union D3D11_DEPTH_STENCIL_VIEW_DESC_0 {
pub Texture1D: D3D11_TEX1D_DSV,
pub Texture1DArray: D3D11_TEX1D_ARRAY_DSV,
pub Texture2D: D3D11_TEX2D_DSV,
pub Texture2DArray: D3D11_TEX2D_ARRAY_DSV,
pub Texture2DMS: D3D11_TEX2DMS_DSV,
pub Texture2DMSArray: D3D11_TEX2DMS_ARRAY_DSV,
}
#[cfg(feature = "Win32_Graphics_Dxgi_Common")]
impl Default for D3D11_DEPTH_STENCIL_VIEW_DESC_0 {
fn default() -> Self {
unsafe { core::mem::zeroed() }
}
}
#[repr(transparent)]
#[derive(Clone, Copy, Debug, Default, Eq, PartialEq)]
pub struct D3D11_DEPTH_WRITE_MASK(pub i32);
pub const D3D11_DEPTH_WRITE_MASK_ALL: D3D11_DEPTH_WRITE_MASK = D3D11_DEPTH_WRITE_MASK(1i32);
pub const D3D11_DEPTH_WRITE_MASK_ZERO: D3D11_DEPTH_WRITE_MASK = D3D11_DEPTH_WRITE_MASK(0i32);
pub const D3D11_DEVICE_CONTEXT_DEFERRED: D3D11_DEVICE_CONTEXT_TYPE =
D3D11_DEVICE_CONTEXT_TYPE(1i32);
pub const D3D11_DEVICE_CONTEXT_IMMEDIATE: D3D11_DEVICE_CONTEXT_TYPE =
D3D11_DEVICE_CONTEXT_TYPE(0i32);
#[repr(transparent)]
#[derive(Clone, Copy, Debug, Default, Eq, PartialEq)]
pub struct D3D11_DEVICE_CONTEXT_TYPE(pub i32);
pub const D3D11_DOMAIN_SHADER: D3D11_SHADER_TYPE = D3D11_SHADER_TYPE(3i32);
#[repr(C)]
#[derive(Clone, Copy, Debug, PartialEq)]
pub struct D3D11_DOMAIN_SHADER_TRACE_DESC {
pub Invocation: u64,
}
impl Default for D3D11_DOMAIN_SHADER_TRACE_DESC {
fn default() -> Self {
unsafe { core::mem::zeroed() }
}
}
#[repr(C)]
#[derive(Clone, Copy, Debug, PartialEq)]
pub struct D3D11_DRAW_INDEXED_INSTANCED_INDIRECT_ARGS {
pub IndexCountPerInstance: u32,
pub InstanceCount: u32,
pub StartIndexLocation: u32,
pub BaseVertexLocation: i32,
pub StartInstanceLocation: u32,
}
impl Default for D3D11_DRAW_INDEXED_INSTANCED_INDIRECT_ARGS {
fn default() -> Self {
unsafe { core::mem::zeroed() }
}
}
#[repr(C)]
#[derive(Clone, Copy, Debug, PartialEq)]
pub struct D3D11_DRAW_INSTANCED_INDIRECT_ARGS {
pub VertexCountPerInstance: u32,
pub InstanceCount: u32,
pub StartVertexLocation: u32,
pub StartInstanceLocation: u32,
}
impl Default for D3D11_DRAW_INSTANCED_INDIRECT_ARGS {
fn default() -> Self {
unsafe { core::mem::zeroed() }
}
}
#[repr(transparent)]
#[derive(Clone, Copy, Debug, Default, Eq, PartialEq)]
pub struct D3D11_DSV_DIMENSION(pub i32);
pub const D3D11_DSV_DIMENSION_TEXTURE1D: D3D11_DSV_DIMENSION = D3D11_DSV_DIMENSION(1i32);
pub const D3D11_DSV_DIMENSION_TEXTURE1DARRAY: D3D11_DSV_DIMENSION = D3D11_DSV_DIMENSION(2i32);
pub const D3D11_DSV_DIMENSION_TEXTURE2D: D3D11_DSV_DIMENSION = D3D11_DSV_DIMENSION(3i32);
pub const D3D11_DSV_DIMENSION_TEXTURE2DARRAY: D3D11_DSV_DIMENSION = D3D11_DSV_DIMENSION(4i32);
pub const D3D11_DSV_DIMENSION_TEXTURE2DMS: D3D11_DSV_DIMENSION = D3D11_DSV_DIMENSION(5i32);
pub const D3D11_DSV_DIMENSION_TEXTURE2DMSARRAY: D3D11_DSV_DIMENSION = D3D11_DSV_DIMENSION(6i32);
pub const D3D11_DSV_DIMENSION_UNKNOWN: D3D11_DSV_DIMENSION = D3D11_DSV_DIMENSION(0i32);
#[repr(transparent)]
#[derive(Clone, Copy, Debug, Default, Eq, PartialEq)]
pub struct D3D11_DSV_FLAG(pub i32);
pub const D3D11_DSV_READ_ONLY_DEPTH: D3D11_DSV_FLAG = D3D11_DSV_FLAG(1i32);
pub const D3D11_DSV_READ_ONLY_STENCIL: D3D11_DSV_FLAG = D3D11_DSV_FLAG(2i32);
pub const D3D11_DS_INPUT_CONTROL_POINTS_MAX_TOTAL_SCALARS: u32 = 3968u32;
pub const D3D11_DS_INPUT_CONTROL_POINT_REGISTER_COMPONENTS: u32 = 4u32;
pub const D3D11_DS_INPUT_CONTROL_POINT_REGISTER_COMPONENT_BIT_COUNT: u32 = 32u32;
pub const D3D11_DS_INPUT_CONTROL_POINT_REGISTER_COUNT: u32 = 32u32;
pub const D3D11_DS_INPUT_CONTROL_POINT_REGISTER_READS_PER_INST: u32 = 2u32;
pub const D3D11_DS_INPUT_CONTROL_POINT_REGISTER_READ_PORTS: u32 = 1u32;
pub const D3D11_DS_INPUT_DOMAIN_POINT_REGISTER_COMPONENTS: u32 = 3u32;
pub const D3D11_DS_INPUT_DOMAIN_POINT_REGISTER_COMPONENT_BIT_COUNT: u32 = 32u32;
pub const D3D11_DS_INPUT_DOMAIN_POINT_REGISTER_COUNT: u32 = 1u32;
pub const D3D11_DS_INPUT_DOMAIN_POINT_REGISTER_READS_PER_INST: u32 = 2u32;
pub const D3D11_DS_INPUT_DOMAIN_POINT_REGISTER_READ_PORTS: u32 = 1u32;
pub const D3D11_DS_INPUT_PATCH_CONSTANT_REGISTER_COMPONENTS: u32 = 4u32;
pub const D3D11_DS_INPUT_PATCH_CONSTANT_REGISTER_COMPONENT_BIT_COUNT: u32 = 32u32;
pub const D3D11_DS_INPUT_PATCH_CONSTANT_REGISTER_COUNT: u32 = 32u32;
pub const D3D11_DS_INPUT_PATCH_CONSTANT_REGISTER_READS_PER_INST: u32 = 2u32;
pub const D3D11_DS_INPUT_PATCH_CONSTANT_REGISTER_READ_PORTS: u32 = 1u32;
pub const D3D11_DS_INPUT_PRIMITIVE_ID_REGISTER_COMPONENTS: u32 = 1u32;
pub const D3D11_DS_INPUT_PRIMITIVE_ID_REGISTER_COMPONENT_BIT_COUNT: u32 = 32u32;
pub const D3D11_DS_INPUT_PRIMITIVE_ID_REGISTER_COUNT: u32 = 1u32;
pub const D3D11_DS_INPUT_PRIMITIVE_ID_REGISTER_READS_PER_INST: u32 = 2u32;
pub const D3D11_DS_INPUT_PRIMITIVE_ID_REGISTER_READ_PORTS: u32 = 1u32;
pub const D3D11_DS_OUTPUT_REGISTER_COMPONENTS: u32 = 4u32;
pub const D3D11_DS_OUTPUT_REGISTER_COMPONENT_BIT_COUNT: u32 = 32u32;
pub const D3D11_DS_OUTPUT_REGISTER_COUNT: u32 = 32u32;
pub const D3D11_ENABLE_BREAK_ON_MESSAGE: crate::core_supplemental::PCWSTR =
crate::core_supplemental::w!("EnableBreakOnMessage");
#[repr(C)]
#[derive(Clone, Copy, Debug, PartialEq)]
pub struct D3D11_ENCRYPTED_BLOCK_INFO {
pub NumEncryptedBytesAtBeginning: u32,
pub NumBytesInSkipPattern: u32,
pub NumBytesInEncryptPattern: u32,
}
impl Default for D3D11_ENCRYPTED_BLOCK_INFO {
fn default() -> Self {
unsafe { core::mem::zeroed() }
}
}
#[repr(transparent)]
#[derive(Clone, Copy, Debug, Default, Eq, PartialEq)]
pub struct D3D11_FEATURE(pub i32);
pub const D3D11_FEATURE_ARCHITECTURE_INFO: D3D11_FEATURE = D3D11_FEATURE(6i32);
pub const D3D11_FEATURE_D3D10_X_HARDWARE_OPTIONS: D3D11_FEATURE = D3D11_FEATURE(4i32);
pub const D3D11_FEATURE_D3D11_OPTIONS: D3D11_FEATURE = D3D11_FEATURE(5i32);
pub const D3D11_FEATURE_D3D11_OPTIONS1: D3D11_FEATURE = D3D11_FEATURE(10i32);
pub const D3D11_FEATURE_D3D11_OPTIONS2: D3D11_FEATURE = D3D11_FEATURE(14i32);
pub const D3D11_FEATURE_D3D11_OPTIONS3: D3D11_FEATURE = D3D11_FEATURE(15i32);
pub const D3D11_FEATURE_D3D11_OPTIONS4: D3D11_FEATURE = D3D11_FEATURE(17i32);
pub const D3D11_FEATURE_D3D11_OPTIONS5: D3D11_FEATURE = D3D11_FEATURE(19i32);
pub const D3D11_FEATURE_D3D9_OPTIONS: D3D11_FEATURE = D3D11_FEATURE(7i32);
pub const D3D11_FEATURE_D3D9_OPTIONS1: D3D11_FEATURE = D3D11_FEATURE(13i32);
pub const D3D11_FEATURE_D3D9_SHADOW_SUPPORT: D3D11_FEATURE = D3D11_FEATURE(9i32);
pub const D3D11_FEATURE_D3D9_SIMPLE_INSTANCING_SUPPORT: D3D11_FEATURE = D3D11_FEATURE(11i32);
#[repr(C)]
#[derive(Clone, Copy, Debug, PartialEq)]
pub struct D3D11_FEATURE_DATA_ARCHITECTURE_INFO {
pub TileBasedDeferredRenderer: crate::Foundation::BOOL,
}
impl Default for D3D11_FEATURE_DATA_ARCHITECTURE_INFO {
fn default() -> Self {
unsafe { core::mem::zeroed() }
}
}
#[repr(C)]
#[derive(Clone, Copy, Debug, PartialEq)]
pub struct D3D11_FEATURE_DATA_D3D10_X_HARDWARE_OPTIONS {
pub ComputeShaders_Plus_RawAndStructuredBuffers_Via_Shader_4_x: crate::Foundation::BOOL,
}
impl Default for D3D11_FEATURE_DATA_D3D10_X_HARDWARE_OPTIONS {
fn default() -> Self {
unsafe { core::mem::zeroed() }
}
}
#[repr(C)]
#[derive(Clone, Copy, Debug, PartialEq)]
pub struct D3D11_FEATURE_DATA_D3D11_OPTIONS {
pub OutputMergerLogicOp: crate::Foundation::BOOL,
pub UAVOnlyRenderingForcedSampleCount: crate::Foundation::BOOL,
pub DiscardAPIsSeenByDriver: crate::Foundation::BOOL,
pub FlagsForUpdateAndCopySeenByDriver: crate::Foundation::BOOL,
pub ClearView: crate::Foundation::BOOL,
pub CopyWithOverlap: crate::Foundation::BOOL,
pub ConstantBufferPartialUpdate: crate::Foundation::BOOL,
pub ConstantBufferOffsetting: crate::Foundation::BOOL,
pub MapNoOverwriteOnDynamicConstantBuffer: crate::Foundation::BOOL,
pub MapNoOverwriteOnDynamicBufferSRV: crate::Foundation::BOOL,
pub MultisampleRTVWithForcedSampleCountOne: crate::Foundation::BOOL,
pub SAD4ShaderInstructions: crate::Foundation::BOOL,
pub ExtendedDoublesShaderInstructions: crate::Foundation::BOOL,
pub ExtendedResourceSharing: crate::Foundation::BOOL,
}
impl Default for D3D11_FEATURE_DATA_D3D11_OPTIONS {
fn default() -> Self {
unsafe { core::mem::zeroed() }
}
}
#[repr(C)]
#[derive(Clone, Copy, Debug, PartialEq)]
pub struct D3D11_FEATURE_DATA_D3D11_OPTIONS1 {
pub TiledResourcesTier: D3D11_TILED_RESOURCES_TIER,
pub MinMaxFiltering: crate::Foundation::BOOL,
pub ClearViewAlsoSupportsDepthOnlyFormats: crate::Foundation::BOOL,
pub MapOnDefaultBuffers: crate::Foundation::BOOL,
}
impl Default for D3D11_FEATURE_DATA_D3D11_OPTIONS1 {
fn default() -> Self {
unsafe { core::mem::zeroed() }
}
}
#[repr(C)]
#[derive(Clone, Copy, Debug, PartialEq)]
pub struct D3D11_FEATURE_DATA_D3D11_OPTIONS2 {
pub PSSpecifiedStencilRefSupported: crate::Foundation::BOOL,
pub TypedUAVLoadAdditionalFormats: crate::Foundation::BOOL,
pub ROVsSupported: crate::Foundation::BOOL,
pub ConservativeRasterizationTier: D3D11_CONSERVATIVE_RASTERIZATION_TIER,
pub TiledResourcesTier: D3D11_TILED_RESOURCES_TIER,
pub MapOnDefaultTextures: crate::Foundation::BOOL,
pub StandardSwizzle: crate::Foundation::BOOL,
pub UnifiedMemoryArchitecture: crate::Foundation::BOOL,
}
impl Default for D3D11_FEATURE_DATA_D3D11_OPTIONS2 {
fn default() -> Self {
unsafe { core::mem::zeroed() }
}
}
#[repr(C)]
#[derive(Clone, Copy, Debug, PartialEq)]
pub struct D3D11_FEATURE_DATA_D3D11_OPTIONS3 {
pub VPAndRTArrayIndexFromAnyShaderFeedingRasterizer: crate::Foundation::BOOL,
}
impl Default for D3D11_FEATURE_DATA_D3D11_OPTIONS3 {
fn default() -> Self {
unsafe { core::mem::zeroed() }
}
}
#[repr(C)]
#[derive(Clone, Copy, Debug, PartialEq)]
pub struct D3D11_FEATURE_DATA_D3D11_OPTIONS4 {
pub ExtendedNV12SharedTextureSupported: crate::Foundation::BOOL,
}
impl Default for D3D11_FEATURE_DATA_D3D11_OPTIONS4 {
fn default() -> Self {
unsafe { core::mem::zeroed() }
}
}
#[repr(C)]
#[derive(Clone, Copy, Debug, PartialEq)]
pub struct D3D11_FEATURE_DATA_D3D11_OPTIONS5 {
pub SharedResourceTier: D3D11_SHARED_RESOURCE_TIER,
}
impl Default for D3D11_FEATURE_DATA_D3D11_OPTIONS5 {
fn default() -> Self {
unsafe { core::mem::zeroed() }
}
}
#[repr(C)]
#[derive(Clone, Copy, Debug, PartialEq)]
pub struct D3D11_FEATURE_DATA_D3D9_OPTIONS {
pub FullNonPow2TextureSupport: crate::Foundation::BOOL,
}
impl Default for D3D11_FEATURE_DATA_D3D9_OPTIONS {
fn default() -> Self {
unsafe { core::mem::zeroed() }
}
}
#[repr(C)]
#[derive(Clone, Copy, Debug, PartialEq)]
pub struct D3D11_FEATURE_DATA_D3D9_OPTIONS1 {
pub FullNonPow2TextureSupported: crate::Foundation::BOOL,
pub DepthAsTextureWithLessEqualComparisonFilterSupported: crate::Foundation::BOOL,
pub SimpleInstancingSupported: crate::Foundation::BOOL,
pub TextureCubeFaceRenderTargetWithNonCubeDepthStencilSupported: crate::Foundation::BOOL,
}
impl Default for D3D11_FEATURE_DATA_D3D9_OPTIONS1 {
fn default() -> Self {
unsafe { core::mem::zeroed() }
}
}
#[repr(C)]
#[derive(Clone, Copy, Debug, PartialEq)]
pub struct D3D11_FEATURE_DATA_D3D9_SHADOW_SUPPORT {
pub SupportsDepthAsTextureWithLessEqualComparisonFilter: crate::Foundation::BOOL,
}
impl Default for D3D11_FEATURE_DATA_D3D9_SHADOW_SUPPORT {
fn default() -> Self {
unsafe { core::mem::zeroed() }
}
}
#[repr(C)]
#[derive(Clone, Copy, Debug, PartialEq)]
pub struct D3D11_FEATURE_DATA_D3D9_SIMPLE_INSTANCING_SUPPORT {
pub SimpleInstancingSupported: crate::Foundation::BOOL,
}
impl Default for D3D11_FEATURE_DATA_D3D9_SIMPLE_INSTANCING_SUPPORT {
fn default() -> Self {
unsafe { core::mem::zeroed() }
}
}
#[repr(C)]
#[derive(Clone, Copy, Debug, PartialEq)]
pub struct D3D11_FEATURE_DATA_DISPLAYABLE {
pub DisplayableTexture: crate::Foundation::BOOL,
pub SharedResourceTier: D3D11_SHARED_RESOURCE_TIER,
}
impl Default for D3D11_FEATURE_DATA_DISPLAYABLE {
fn default() -> Self {
unsafe { core::mem::zeroed() }
}
}
#[repr(C)]
#[derive(Clone, Copy, Debug, PartialEq)]
pub struct D3D11_FEATURE_DATA_DOUBLES {
pub DoublePrecisionFloatShaderOps: crate::Foundation::BOOL,
}
impl Default for D3D11_FEATURE_DATA_DOUBLES {
fn default() -> Self {
unsafe { core::mem::zeroed() }
}
}
#[repr(C)]
#[cfg(feature = "Win32_Graphics_Dxgi_Common")]
#[derive(Clone, Copy, Debug, PartialEq)]
pub struct D3D11_FEATURE_DATA_FORMAT_SUPPORT {
pub InFormat: crate::Dxgi::Common::DXGI_FORMAT,
pub OutFormatSupport: u32,
}
#[cfg(feature = "Win32_Graphics_Dxgi_Common")]
impl Default for D3D11_FEATURE_DATA_FORMAT_SUPPORT {
fn default() -> Self {
unsafe { core::mem::zeroed() }
}
}
#[repr(C)]
#[cfg(feature = "Win32_Graphics_Dxgi_Common")]
#[derive(Clone, Copy, Debug, PartialEq)]
pub struct D3D11_FEATURE_DATA_FORMAT_SUPPORT2 {
pub InFormat: crate::Dxgi::Common::DXGI_FORMAT,
pub OutFormatSupport2: u32,
}
#[cfg(feature = "Win32_Graphics_Dxgi_Common")]
impl Default for D3D11_FEATURE_DATA_FORMAT_SUPPORT2 {
fn default() -> Self {
unsafe { core::mem::zeroed() }
}
}
#[repr(C)]
#[derive(Clone, Copy, Debug, PartialEq)]
pub struct D3D11_FEATURE_DATA_GPU_VIRTUAL_ADDRESS_SUPPORT {
pub MaxGPUVirtualAddressBitsPerResource: u32,
pub MaxGPUVirtualAddressBitsPerProcess: u32,
}
impl Default for D3D11_FEATURE_DATA_GPU_VIRTUAL_ADDRESS_SUPPORT {
fn default() -> Self {
unsafe { core::mem::zeroed() }
}
}
#[repr(C)]
#[derive(Clone, Copy, Debug, PartialEq)]
pub struct D3D11_FEATURE_DATA_MARKER_SUPPORT {
pub Profile: crate::Foundation::BOOL,
}
impl Default for D3D11_FEATURE_DATA_MARKER_SUPPORT {
fn default() -> Self {
unsafe { core::mem::zeroed() }
}
}
#[repr(C)]
#[derive(Clone, Copy, Debug, PartialEq)]
pub struct D3D11_FEATURE_DATA_SHADER_CACHE {
pub SupportFlags: u32,
}
impl Default for D3D11_FEATURE_DATA_SHADER_CACHE {
fn default() -> Self {
unsafe { core::mem::zeroed() }
}
}
#[repr(C)]
#[derive(Clone, Copy, Debug, PartialEq)]
pub struct D3D11_FEATURE_DATA_SHADER_MIN_PRECISION_SUPPORT {
pub PixelShaderMinPrecision: u32,
pub AllOtherShaderStagesMinPrecision: u32,
}
impl Default for D3D11_FEATURE_DATA_SHADER_MIN_PRECISION_SUPPORT {
fn default() -> Self {
unsafe { core::mem::zeroed() }
}
}
#[repr(C)]
#[derive(Clone, Copy, Debug, PartialEq)]
pub struct D3D11_FEATURE_DATA_THREADING {
pub DriverConcurrentCreates: crate::Foundation::BOOL,
pub DriverCommandLists: crate::Foundation::BOOL,
}
impl Default for D3D11_FEATURE_DATA_THREADING {
fn default() -> Self {
unsafe { core::mem::zeroed() }
}
}
#[repr(C)]
#[cfg(feature = "Win32_Graphics_Dxgi_Common")]
#[derive(Clone, Copy, Debug, PartialEq)]
pub struct D3D11_FEATURE_DATA_VIDEO_DECODER_HISTOGRAM {
pub DecoderDesc: D3D11_VIDEO_DECODER_DESC,
pub Components: D3D11_VIDEO_DECODER_HISTOGRAM_COMPONENT_FLAGS,
pub BinCount: u32,
pub CounterBitDepth: u32,
}
#[cfg(feature = "Win32_Graphics_Dxgi_Common")]
impl Default for D3D11_FEATURE_DATA_VIDEO_DECODER_HISTOGRAM {
fn default() -> Self {
unsafe { core::mem::zeroed() }
}
}
pub const D3D11_FEATURE_DISPLAYABLE: D3D11_FEATURE = D3D11_FEATURE(20i32);
pub const D3D11_FEATURE_DOUBLES: D3D11_FEATURE = D3D11_FEATURE(1i32);
pub const D3D11_FEATURE_FORMAT_SUPPORT: D3D11_FEATURE = D3D11_FEATURE(2i32);
pub const D3D11_FEATURE_FORMAT_SUPPORT2: D3D11_FEATURE = D3D11_FEATURE(3i32);
pub const D3D11_FEATURE_GPU_VIRTUAL_ADDRESS_SUPPORT: D3D11_FEATURE = D3D11_FEATURE(16i32);
pub const D3D11_FEATURE_MARKER_SUPPORT: D3D11_FEATURE = D3D11_FEATURE(12i32);
pub const D3D11_FEATURE_SHADER_CACHE: D3D11_FEATURE = D3D11_FEATURE(18i32);
pub const D3D11_FEATURE_SHADER_MIN_PRECISION_SUPPORT: D3D11_FEATURE = D3D11_FEATURE(8i32);
pub const D3D11_FEATURE_THREADING: D3D11_FEATURE = D3D11_FEATURE(0i32);
#[repr(transparent)]
#[derive(Clone, Copy, Debug, Default, Eq, PartialEq)]
pub struct D3D11_FEATURE_VIDEO(pub i32);
pub const D3D11_FEATURE_VIDEO_DECODER_HISTOGRAM: D3D11_FEATURE_VIDEO = D3D11_FEATURE_VIDEO(0i32);
#[repr(transparent)]
#[derive(Clone, Copy, Debug, Default, Eq, PartialEq)]
pub struct D3D11_FENCE_FLAG(pub i32);
impl D3D11_FENCE_FLAG {
pub const fn contains(&self, other: Self) -> bool {
self.0 & other.0 == other.0
}
}
impl core::ops::BitOr for D3D11_FENCE_FLAG {
type Output = Self;
fn bitor(self, other: Self) -> Self {
Self(self.0 | other.0)
}
}
impl core::ops::BitAnd for D3D11_FENCE_FLAG {
type Output = Self;
fn bitand(self, other: Self) -> Self {
Self(self.0 & other.0)
}
}
impl core::ops::BitOrAssign for D3D11_FENCE_FLAG {
fn bitor_assign(&mut self, other: Self) {
self.0.bitor_assign(other.0)
}
}
impl core::ops::BitAndAssign for D3D11_FENCE_FLAG {
fn bitand_assign(&mut self, other: Self) {
self.0.bitand_assign(other.0)
}
}
impl core::ops::Not for D3D11_FENCE_FLAG {
type Output = Self;
fn not(self) -> Self {
Self(self.0.not())
}
}
pub const D3D11_FENCE_FLAG_NONE: D3D11_FENCE_FLAG = D3D11_FENCE_FLAG(0i32);
pub const D3D11_FENCE_FLAG_NON_MONITORED: D3D11_FENCE_FLAG = D3D11_FENCE_FLAG(8i32);
pub const D3D11_FENCE_FLAG_SHARED: D3D11_FENCE_FLAG = D3D11_FENCE_FLAG(2i32);
pub const D3D11_FENCE_FLAG_SHARED_CROSS_ADAPTER: D3D11_FENCE_FLAG = D3D11_FENCE_FLAG(4i32);
#[repr(transparent)]
#[derive(Clone, Copy, Debug, Default, Eq, PartialEq)]
pub struct D3D11_FILL_MODE(pub i32);
pub const D3D11_FILL_SOLID: D3D11_FILL_MODE = D3D11_FILL_MODE(3i32);
pub const D3D11_FILL_WIREFRAME: D3D11_FILL_MODE = D3D11_FILL_MODE(2i32);
#[repr(transparent)]
#[derive(Clone, Copy, Debug, Default, Eq, PartialEq)]
pub struct D3D11_FILTER(pub i32);
pub const D3D11_FILTER_ANISOTROPIC: D3D11_FILTER = D3D11_FILTER(85i32);
pub const D3D11_FILTER_COMPARISON_ANISOTROPIC: D3D11_FILTER = D3D11_FILTER(213i32);
pub const D3D11_FILTER_COMPARISON_MIN_LINEAR_MAG_MIP_POINT: D3D11_FILTER = D3D11_FILTER(144i32);
pub const D3D11_FILTER_COMPARISON_MIN_LINEAR_MAG_POINT_MIP_LINEAR: D3D11_FILTER =
D3D11_FILTER(145i32);
pub const D3D11_FILTER_COMPARISON_MIN_MAG_LINEAR_MIP_POINT: D3D11_FILTER = D3D11_FILTER(148i32);
pub const D3D11_FILTER_COMPARISON_MIN_MAG_MIP_LINEAR: D3D11_FILTER = D3D11_FILTER(149i32);
pub const D3D11_FILTER_COMPARISON_MIN_MAG_MIP_POINT: D3D11_FILTER = D3D11_FILTER(128i32);
pub const D3D11_FILTER_COMPARISON_MIN_MAG_POINT_MIP_LINEAR: D3D11_FILTER = D3D11_FILTER(129i32);
pub const D3D11_FILTER_COMPARISON_MIN_POINT_MAG_LINEAR_MIP_POINT: D3D11_FILTER =
D3D11_FILTER(132i32);
pub const D3D11_FILTER_COMPARISON_MIN_POINT_MAG_MIP_LINEAR: D3D11_FILTER = D3D11_FILTER(133i32);
pub const D3D11_FILTER_MAXIMUM_ANISOTROPIC: D3D11_FILTER = D3D11_FILTER(469i32);
pub const D3D11_FILTER_MAXIMUM_MIN_LINEAR_MAG_MIP_POINT: D3D11_FILTER = D3D11_FILTER(400i32);
pub const D3D11_FILTER_MAXIMUM_MIN_LINEAR_MAG_POINT_MIP_LINEAR: D3D11_FILTER = D3D11_FILTER(401i32);
pub const D3D11_FILTER_MAXIMUM_MIN_MAG_LINEAR_MIP_POINT: D3D11_FILTER = D3D11_FILTER(404i32);
pub const D3D11_FILTER_MAXIMUM_MIN_MAG_MIP_LINEAR: D3D11_FILTER = D3D11_FILTER(405i32);
pub const D3D11_FILTER_MAXIMUM_MIN_MAG_MIP_POINT: D3D11_FILTER = D3D11_FILTER(384i32);
pub const D3D11_FILTER_MAXIMUM_MIN_MAG_POINT_MIP_LINEAR: D3D11_FILTER = D3D11_FILTER(385i32);
pub const D3D11_FILTER_MAXIMUM_MIN_POINT_MAG_LINEAR_MIP_POINT: D3D11_FILTER = D3D11_FILTER(388i32);
pub const D3D11_FILTER_MAXIMUM_MIN_POINT_MAG_MIP_LINEAR: D3D11_FILTER = D3D11_FILTER(389i32);
pub const D3D11_FILTER_MINIMUM_ANISOTROPIC: D3D11_FILTER = D3D11_FILTER(341i32);
pub const D3D11_FILTER_MINIMUM_MIN_LINEAR_MAG_MIP_POINT: D3D11_FILTER = D3D11_FILTER(272i32);
pub const D3D11_FILTER_MINIMUM_MIN_LINEAR_MAG_POINT_MIP_LINEAR: D3D11_FILTER = D3D11_FILTER(273i32);
pub const D3D11_FILTER_MINIMUM_MIN_MAG_LINEAR_MIP_POINT: D3D11_FILTER = D3D11_FILTER(276i32);
pub const D3D11_FILTER_MINIMUM_MIN_MAG_MIP_LINEAR: D3D11_FILTER = D3D11_FILTER(277i32);
pub const D3D11_FILTER_MINIMUM_MIN_MAG_MIP_POINT: D3D11_FILTER = D3D11_FILTER(256i32);
pub const D3D11_FILTER_MINIMUM_MIN_MAG_POINT_MIP_LINEAR: D3D11_FILTER = D3D11_FILTER(257i32);
pub const D3D11_FILTER_MINIMUM_MIN_POINT_MAG_LINEAR_MIP_POINT: D3D11_FILTER = D3D11_FILTER(260i32);
pub const D3D11_FILTER_MINIMUM_MIN_POINT_MAG_MIP_LINEAR: D3D11_FILTER = D3D11_FILTER(261i32);
pub const D3D11_FILTER_MIN_LINEAR_MAG_MIP_POINT: D3D11_FILTER = D3D11_FILTER(16i32);
pub const D3D11_FILTER_MIN_LINEAR_MAG_POINT_MIP_LINEAR: D3D11_FILTER = D3D11_FILTER(17i32);
pub const D3D11_FILTER_MIN_MAG_LINEAR_MIP_POINT: D3D11_FILTER = D3D11_FILTER(20i32);
pub const D3D11_FILTER_MIN_MAG_MIP_LINEAR: D3D11_FILTER = D3D11_FILTER(21i32);
pub const D3D11_FILTER_MIN_MAG_MIP_POINT: D3D11_FILTER = D3D11_FILTER(0i32);
pub const D3D11_FILTER_MIN_MAG_POINT_MIP_LINEAR: D3D11_FILTER = D3D11_FILTER(1i32);
pub const D3D11_FILTER_MIN_POINT_MAG_LINEAR_MIP_POINT: D3D11_FILTER = D3D11_FILTER(4i32);
pub const D3D11_FILTER_MIN_POINT_MAG_MIP_LINEAR: D3D11_FILTER = D3D11_FILTER(5i32);
#[repr(transparent)]
#[derive(Clone, Copy, Debug, Default, Eq, PartialEq)]
pub struct D3D11_FILTER_REDUCTION_TYPE(pub i32);
pub const D3D11_FILTER_REDUCTION_TYPE_COMPARISON: D3D11_FILTER_REDUCTION_TYPE =
D3D11_FILTER_REDUCTION_TYPE(1i32);
pub const D3D11_FILTER_REDUCTION_TYPE_MASK: u32 = 3u32;
pub const D3D11_FILTER_REDUCTION_TYPE_MAXIMUM: D3D11_FILTER_REDUCTION_TYPE =
D3D11_FILTER_REDUCTION_TYPE(3i32);
pub const D3D11_FILTER_REDUCTION_TYPE_MINIMUM: D3D11_FILTER_REDUCTION_TYPE =
D3D11_FILTER_REDUCTION_TYPE(2i32);
pub const D3D11_FILTER_REDUCTION_TYPE_SHIFT: u32 = 7u32;
pub const D3D11_FILTER_REDUCTION_TYPE_STANDARD: D3D11_FILTER_REDUCTION_TYPE =
D3D11_FILTER_REDUCTION_TYPE(0i32);
#[repr(transparent)]
#[derive(Clone, Copy, Debug, Default, Eq, PartialEq)]
pub struct D3D11_FILTER_TYPE(pub i32);
pub const D3D11_FILTER_TYPE_LINEAR: D3D11_FILTER_TYPE = D3D11_FILTER_TYPE(1i32);
pub const D3D11_FILTER_TYPE_MASK: u32 = 3u32;
pub const D3D11_FILTER_TYPE_POINT: D3D11_FILTER_TYPE = D3D11_FILTER_TYPE(0i32);
pub const D3D11_FLOAT16_FUSED_TOLERANCE_IN_ULP: f64 = 0.6f64;
pub const D3D11_FLOAT32_MAX: f32 = 340282350000000000000000000000000000000f32;
pub const D3D11_FLOAT32_TO_INTEGER_TOLERANCE_IN_ULP: f32 = 0.6f32;
pub const D3D11_FLOAT_TO_SRGB_EXPONENT_DENOMINATOR: f32 = 2.4f32;
pub const D3D11_FLOAT_TO_SRGB_EXPONENT_NUMERATOR: f32 = 1f32;
pub const D3D11_FLOAT_TO_SRGB_OFFSET: f32 = 0.055f32;
pub const D3D11_FLOAT_TO_SRGB_SCALE_1: f32 = 12.92f32;
pub const D3D11_FLOAT_TO_SRGB_SCALE_2: f32 = 1.055f32;
pub const D3D11_FLOAT_TO_SRGB_THRESHOLD: f32 = 0.0031308f32;
pub const D3D11_FORCE_DEBUGGABLE: crate::core_supplemental::PCWSTR = crate::core_supplemental::w!("ForceDebuggable");
pub const D3D11_FORCE_SHADER_SKIP_OPTIMIZATION: crate::core_supplemental::PCWSTR =
crate::core_supplemental::w!("ForceShaderSkipOptimization");
#[repr(transparent)]
#[derive(Clone, Copy, Debug, Default, Eq, PartialEq)]
pub struct D3D11_FORMAT_SUPPORT(pub i32);
#[repr(transparent)]
#[derive(Clone, Copy, Debug, Default, Eq, PartialEq)]
pub struct D3D11_FORMAT_SUPPORT2(pub i32);
pub const D3D11_FORMAT_SUPPORT2_DISPLAYABLE: D3D11_FORMAT_SUPPORT2 =
D3D11_FORMAT_SUPPORT2(65536i32);
pub const D3D11_FORMAT_SUPPORT2_MULTIPLANE_OVERLAY: D3D11_FORMAT_SUPPORT2 =
D3D11_FORMAT_SUPPORT2(16384i32);
pub const D3D11_FORMAT_SUPPORT2_OUTPUT_MERGER_LOGIC_OP: D3D11_FORMAT_SUPPORT2 =
D3D11_FORMAT_SUPPORT2(256i32);
pub const D3D11_FORMAT_SUPPORT2_SHAREABLE: D3D11_FORMAT_SUPPORT2 = D3D11_FORMAT_SUPPORT2(1024i32);
pub const D3D11_FORMAT_SUPPORT2_TILED: D3D11_FORMAT_SUPPORT2 = D3D11_FORMAT_SUPPORT2(512i32);
pub const D3D11_FORMAT_SUPPORT2_UAV_ATOMIC_ADD: D3D11_FORMAT_SUPPORT2 = D3D11_FORMAT_SUPPORT2(1i32);
pub const D3D11_FORMAT_SUPPORT2_UAV_ATOMIC_BITWISE_OPS: D3D11_FORMAT_SUPPORT2 =
D3D11_FORMAT_SUPPORT2(2i32);
pub const D3D11_FORMAT_SUPPORT2_UAV_ATOMIC_COMPARE_STORE_OR_COMPARE_EXCHANGE:
D3D11_FORMAT_SUPPORT2 = D3D11_FORMAT_SUPPORT2(4i32);
pub const D3D11_FORMAT_SUPPORT2_UAV_ATOMIC_EXCHANGE: D3D11_FORMAT_SUPPORT2 =
D3D11_FORMAT_SUPPORT2(8i32);
pub const D3D11_FORMAT_SUPPORT2_UAV_ATOMIC_SIGNED_MIN_OR_MAX: D3D11_FORMAT_SUPPORT2 =
D3D11_FORMAT_SUPPORT2(16i32);
pub const D3D11_FORMAT_SUPPORT2_UAV_ATOMIC_UNSIGNED_MIN_OR_MAX: D3D11_FORMAT_SUPPORT2 =
D3D11_FORMAT_SUPPORT2(32i32);
pub const D3D11_FORMAT_SUPPORT2_UAV_TYPED_LOAD: D3D11_FORMAT_SUPPORT2 =
D3D11_FORMAT_SUPPORT2(64i32);
pub const D3D11_FORMAT_SUPPORT2_UAV_TYPED_STORE: D3D11_FORMAT_SUPPORT2 =
D3D11_FORMAT_SUPPORT2(128i32);
pub const D3D11_FORMAT_SUPPORT_BACK_BUFFER_CAST: D3D11_FORMAT_SUPPORT =
D3D11_FORMAT_SUPPORT(16777216i32);
pub const D3D11_FORMAT_SUPPORT_BLENDABLE: D3D11_FORMAT_SUPPORT = D3D11_FORMAT_SUPPORT(32768i32);
pub const D3D11_FORMAT_SUPPORT_BUFFER: D3D11_FORMAT_SUPPORT = D3D11_FORMAT_SUPPORT(1i32);
pub const D3D11_FORMAT_SUPPORT_CAST_WITHIN_BIT_LAYOUT: D3D11_FORMAT_SUPPORT =
D3D11_FORMAT_SUPPORT(1048576i32);
pub const D3D11_FORMAT_SUPPORT_CPU_LOCKABLE: D3D11_FORMAT_SUPPORT = D3D11_FORMAT_SUPPORT(131072i32);
pub const D3D11_FORMAT_SUPPORT_DECODER_OUTPUT: D3D11_FORMAT_SUPPORT =
D3D11_FORMAT_SUPPORT(134217728i32);
pub const D3D11_FORMAT_SUPPORT_DEPTH_STENCIL: D3D11_FORMAT_SUPPORT = D3D11_FORMAT_SUPPORT(65536i32);
pub const D3D11_FORMAT_SUPPORT_DISPLAY: D3D11_FORMAT_SUPPORT = D3D11_FORMAT_SUPPORT(524288i32);
pub const D3D11_FORMAT_SUPPORT_IA_INDEX_BUFFER: D3D11_FORMAT_SUPPORT = D3D11_FORMAT_SUPPORT(4i32);
pub const D3D11_FORMAT_SUPPORT_IA_VERTEX_BUFFER: D3D11_FORMAT_SUPPORT = D3D11_FORMAT_SUPPORT(2i32);
pub const D3D11_FORMAT_SUPPORT_MIP: D3D11_FORMAT_SUPPORT = D3D11_FORMAT_SUPPORT(4096i32);
pub const D3D11_FORMAT_SUPPORT_MIP_AUTOGEN: D3D11_FORMAT_SUPPORT = D3D11_FORMAT_SUPPORT(8192i32);
pub const D3D11_FORMAT_SUPPORT_MULTISAMPLE_LOAD: D3D11_FORMAT_SUPPORT =
D3D11_FORMAT_SUPPORT(4194304i32);
pub const D3D11_FORMAT_SUPPORT_MULTISAMPLE_RENDERTARGET: D3D11_FORMAT_SUPPORT =
D3D11_FORMAT_SUPPORT(2097152i32);
pub const D3D11_FORMAT_SUPPORT_MULTISAMPLE_RESOLVE: D3D11_FORMAT_SUPPORT =
D3D11_FORMAT_SUPPORT(262144i32);
pub const D3D11_FORMAT_SUPPORT_RENDER_TARGET: D3D11_FORMAT_SUPPORT = D3D11_FORMAT_SUPPORT(16384i32);
pub const D3D11_FORMAT_SUPPORT_SHADER_GATHER: D3D11_FORMAT_SUPPORT =
D3D11_FORMAT_SUPPORT(8388608i32);
pub const D3D11_FORMAT_SUPPORT_SHADER_GATHER_COMPARISON: D3D11_FORMAT_SUPPORT =
D3D11_FORMAT_SUPPORT(67108864i32);
pub const D3D11_FORMAT_SUPPORT_SHADER_LOAD: D3D11_FORMAT_SUPPORT = D3D11_FORMAT_SUPPORT(256i32);
pub const D3D11_FORMAT_SUPPORT_SHADER_SAMPLE: D3D11_FORMAT_SUPPORT = D3D11_FORMAT_SUPPORT(512i32);
pub const D3D11_FORMAT_SUPPORT_SHADER_SAMPLE_COMPARISON: D3D11_FORMAT_SUPPORT =
D3D11_FORMAT_SUPPORT(1024i32);
pub const D3D11_FORMAT_SUPPORT_SHADER_SAMPLE_MONO_TEXT: D3D11_FORMAT_SUPPORT =
D3D11_FORMAT_SUPPORT(2048i32);
pub const D3D11_FORMAT_SUPPORT_SO_BUFFER: D3D11_FORMAT_SUPPORT = D3D11_FORMAT_SUPPORT(8i32);
pub const D3D11_FORMAT_SUPPORT_TEXTURE1D: D3D11_FORMAT_SUPPORT = D3D11_FORMAT_SUPPORT(16i32);
pub const D3D11_FORMAT_SUPPORT_TEXTURE2D: D3D11_FORMAT_SUPPORT = D3D11_FORMAT_SUPPORT(32i32);
pub const D3D11_FORMAT_SUPPORT_TEXTURE3D: D3D11_FORMAT_SUPPORT = D3D11_FORMAT_SUPPORT(64i32);
pub const D3D11_FORMAT_SUPPORT_TEXTURECUBE: D3D11_FORMAT_SUPPORT = D3D11_FORMAT_SUPPORT(128i32);
pub const D3D11_FORMAT_SUPPORT_TYPED_UNORDERED_ACCESS_VIEW: D3D11_FORMAT_SUPPORT =
D3D11_FORMAT_SUPPORT(33554432i32);
pub const D3D11_FORMAT_SUPPORT_VIDEO_ENCODER: D3D11_FORMAT_SUPPORT =
D3D11_FORMAT_SUPPORT(1073741824i32);
pub const D3D11_FORMAT_SUPPORT_VIDEO_PROCESSOR_INPUT: D3D11_FORMAT_SUPPORT =
D3D11_FORMAT_SUPPORT(536870912i32);
pub const D3D11_FORMAT_SUPPORT_VIDEO_PROCESSOR_OUTPUT: D3D11_FORMAT_SUPPORT =
D3D11_FORMAT_SUPPORT(268435456i32);
pub const D3D11_FTOI_INSTRUCTION_MAX_INPUT: f32 = 2147483600f32;
pub const D3D11_FTOI_INSTRUCTION_MIN_INPUT: f32 = -2147483600f32;
pub const D3D11_FTOU_INSTRUCTION_MAX_INPUT: f32 = 4294967300f32;
pub const D3D11_FTOU_INSTRUCTION_MIN_INPUT: f32 = 0f32;
#[repr(C)]
#[cfg(feature = "Win32_Graphics_Direct3D")]
#[derive(Clone, Copy, Debug, PartialEq)]
pub struct D3D11_FUNCTION_DESC {
pub Version: u32,
pub Creator: crate::core_supplemental::PCSTR,
pub Flags: u32,
pub ConstantBuffers: u32,
pub BoundResources: u32,
pub InstructionCount: u32,
pub TempRegisterCount: u32,
pub TempArrayCount: u32,
pub DefCount: u32,
pub DclCount: u32,
pub TextureNormalInstructions: u32,
pub TextureLoadInstructions: u32,
pub TextureCompInstructions: u32,
pub TextureBiasInstructions: u32,
pub TextureGradientInstructions: u32,
pub FloatInstructionCount: u32,
pub IntInstructionCount: u32,
pub UintInstructionCount: u32,
pub StaticFlowControlCount: u32,
pub DynamicFlowControlCount: u32,
pub MacroInstructionCount: u32,
pub ArrayInstructionCount: u32,
pub MovInstructionCount: u32,
pub MovcInstructionCount: u32,
pub ConversionInstructionCount: u32,
pub BitwiseInstructionCount: u32,
pub MinFeatureLevel: super::Direct3D::D3D_FEATURE_LEVEL,
pub RequiredFeatureFlags: u64,
pub Name: crate::core_supplemental::PCSTR,
pub FunctionParameterCount: i32,
pub HasReturn: crate::Foundation::BOOL,
pub Has10Level9VertexShader: crate::Foundation::BOOL,
pub Has10Level9PixelShader: crate::Foundation::BOOL,
}
#[cfg(feature = "Win32_Graphics_Direct3D")]
impl Default for D3D11_FUNCTION_DESC {
fn default() -> Self {
unsafe { core::mem::zeroed() }
}
}
pub const D3D11_GEOMETRY_SHADER: D3D11_SHADER_TYPE = D3D11_SHADER_TYPE(4i32);
#[repr(C)]
#[derive(Clone, Copy, Debug, PartialEq)]
pub struct D3D11_GEOMETRY_SHADER_TRACE_DESC {
pub Invocation: u64,
}
impl Default for D3D11_GEOMETRY_SHADER_TRACE_DESC {
fn default() -> Self {
unsafe { core::mem::zeroed() }
}
}
pub const D3D11_GS_INPUT_INSTANCE_ID_READS_PER_INST: u32 = 2u32;
pub const D3D11_GS_INPUT_INSTANCE_ID_READ_PORTS: u32 = 1u32;
pub const D3D11_GS_INPUT_INSTANCE_ID_REGISTER_COMPONENTS: u32 = 1u32;
pub const D3D11_GS_INPUT_INSTANCE_ID_REGISTER_COMPONENT_BIT_COUNT: u32 = 32u32;
pub const D3D11_GS_INPUT_INSTANCE_ID_REGISTER_COUNT: u32 = 1u32;
pub const D3D11_GS_INPUT_PRIM_CONST_REGISTER_COMPONENTS: u32 = 1u32;
pub const D3D11_GS_INPUT_PRIM_CONST_REGISTER_COMPONENT_BIT_COUNT: u32 = 32u32;
pub const D3D11_GS_INPUT_PRIM_CONST_REGISTER_COUNT: u32 = 1u32;
pub const D3D11_GS_INPUT_PRIM_CONST_REGISTER_READS_PER_INST: u32 = 2u32;
pub const D3D11_GS_INPUT_PRIM_CONST_REGISTER_READ_PORTS: u32 = 1u32;
pub const D3D11_GS_INPUT_REGISTER_COMPONENTS: u32 = 4u32;
pub const D3D11_GS_INPUT_REGISTER_COMPONENT_BIT_COUNT: u32 = 32u32;
pub const D3D11_GS_INPUT_REGISTER_COUNT: u32 = 32u32;
pub const D3D11_GS_INPUT_REGISTER_READS_PER_INST: u32 = 2u32;
pub const D3D11_GS_INPUT_REGISTER_READ_PORTS: u32 = 1u32;
pub const D3D11_GS_INPUT_REGISTER_VERTICES: u32 = 32u32;
pub const D3D11_GS_MAX_INSTANCE_COUNT: u32 = 32u32;
pub const D3D11_GS_MAX_OUTPUT_VERTEX_COUNT_ACROSS_INSTANCES: u32 = 1024u32;
pub const D3D11_GS_OUTPUT_ELEMENTS: u32 = 32u32;
pub const D3D11_GS_OUTPUT_REGISTER_COMPONENTS: u32 = 4u32;
pub const D3D11_GS_OUTPUT_REGISTER_COMPONENT_BIT_COUNT: u32 = 32u32;
pub const D3D11_GS_OUTPUT_REGISTER_COUNT: u32 = 32u32;
pub const D3D11_HS_CONTROL_POINT_PHASE_INPUT_REGISTER_COUNT: u32 = 32u32;
pub const D3D11_HS_CONTROL_POINT_PHASE_OUTPUT_REGISTER_COUNT: u32 = 32u32;
pub const D3D11_HS_CONTROL_POINT_REGISTER_COMPONENTS: u32 = 4u32;
pub const D3D11_HS_CONTROL_POINT_REGISTER_COMPONENT_BIT_COUNT: u32 = 32u32;
pub const D3D11_HS_CONTROL_POINT_REGISTER_READS_PER_INST: u32 = 2u32;
pub const D3D11_HS_CONTROL_POINT_REGISTER_READ_PORTS: u32 = 1u32;
pub const D3D11_HS_FORK_PHASE_INSTANCE_COUNT_UPPER_BOUND: u32 = 4294967295u32;
pub const D3D11_HS_INPUT_FORK_INSTANCE_ID_REGISTER_COMPONENTS: u32 = 1u32;
pub const D3D11_HS_INPUT_FORK_INSTANCE_ID_REGISTER_COMPONENT_BIT_COUNT: u32 = 32u32;
pub const D3D11_HS_INPUT_FORK_INSTANCE_ID_REGISTER_COUNT: u32 = 1u32;
pub const D3D11_HS_INPUT_FORK_INSTANCE_ID_REGISTER_READS_PER_INST: u32 = 2u32;
pub const D3D11_HS_INPUT_FORK_INSTANCE_ID_REGISTER_READ_PORTS: u32 = 1u32;
pub const D3D11_HS_INPUT_JOIN_INSTANCE_ID_REGISTER_COMPONENTS: u32 = 1u32;
pub const D3D11_HS_INPUT_JOIN_INSTANCE_ID_REGISTER_COMPONENT_BIT_COUNT: u32 = 32u32;
pub const D3D11_HS_INPUT_JOIN_INSTANCE_ID_REGISTER_COUNT: u32 = 1u32;
pub const D3D11_HS_INPUT_JOIN_INSTANCE_ID_REGISTER_READS_PER_INST: u32 = 2u32;
pub const D3D11_HS_INPUT_JOIN_INSTANCE_ID_REGISTER_READ_PORTS: u32 = 1u32;
pub const D3D11_HS_INPUT_PRIMITIVE_ID_REGISTER_COMPONENTS: u32 = 1u32;
pub const D3D11_HS_INPUT_PRIMITIVE_ID_REGISTER_COMPONENT_BIT_COUNT: u32 = 32u32;
pub const D3D11_HS_INPUT_PRIMITIVE_ID_REGISTER_COUNT: u32 = 1u32;
pub const D3D11_HS_INPUT_PRIMITIVE_ID_REGISTER_READS_PER_INST: u32 = 2u32;
pub const D3D11_HS_INPUT_PRIMITIVE_ID_REGISTER_READ_PORTS: u32 = 1u32;
pub const D3D11_HS_JOIN_PHASE_INSTANCE_COUNT_UPPER_BOUND: u32 = 4294967295u32;
pub const D3D11_HS_MAXTESSFACTOR_LOWER_BOUND: f32 = 1f32;
pub const D3D11_HS_MAXTESSFACTOR_UPPER_BOUND: f32 = 64f32;
pub const D3D11_HS_OUTPUT_CONTROL_POINTS_MAX_TOTAL_SCALARS: u32 = 3968u32;
pub const D3D11_HS_OUTPUT_CONTROL_POINT_ID_REGISTER_COMPONENTS: u32 = 1u32;
pub const D3D11_HS_OUTPUT_CONTROL_POINT_ID_REGISTER_COMPONENT_BIT_COUNT: u32 = 32u32;
pub const D3D11_HS_OUTPUT_CONTROL_POINT_ID_REGISTER_COUNT: u32 = 1u32;
pub const D3D11_HS_OUTPUT_CONTROL_POINT_ID_REGISTER_READS_PER_INST: u32 = 2u32;
pub const D3D11_HS_OUTPUT_CONTROL_POINT_ID_REGISTER_READ_PORTS: u32 = 1u32;
pub const D3D11_HS_OUTPUT_PATCH_CONSTANT_REGISTER_COMPONENTS: u32 = 4u32;
pub const D3D11_HS_OUTPUT_PATCH_CONSTANT_REGISTER_COMPONENT_BIT_COUNT: u32 = 32u32;
pub const D3D11_HS_OUTPUT_PATCH_CONSTANT_REGISTER_COUNT: u32 = 32u32;
pub const D3D11_HS_OUTPUT_PATCH_CONSTANT_REGISTER_READS_PER_INST: u32 = 2u32;
pub const D3D11_HS_OUTPUT_PATCH_CONSTANT_REGISTER_READ_PORTS: u32 = 1u32;
pub const D3D11_HS_OUTPUT_PATCH_CONSTANT_REGISTER_SCALAR_COMPONENTS: u32 = 128u32;
pub const D3D11_HULL_SHADER: D3D11_SHADER_TYPE = D3D11_SHADER_TYPE(2i32);
#[repr(C)]
#[derive(Clone, Copy, Debug, PartialEq)]
pub struct D3D11_HULL_SHADER_TRACE_DESC {
pub Invocation: u64,
}
impl Default for D3D11_HULL_SHADER_TRACE_DESC {
fn default() -> Self {
unsafe { core::mem::zeroed() }
}
}
pub const D3D11_IA_DEFAULT_INDEX_BUFFER_OFFSET_IN_BYTES: u32 = 0u32;
pub const D3D11_IA_DEFAULT_PRIMITIVE_TOPOLOGY: u32 = 0u32;
pub const D3D11_IA_DEFAULT_VERTEX_BUFFER_OFFSET_IN_BYTES: u32 = 0u32;
pub const D3D11_IA_INDEX_INPUT_RESOURCE_SLOT_COUNT: u32 = 1u32;
pub const D3D11_IA_INSTANCE_ID_BIT_COUNT: u32 = 32u32;
pub const D3D11_IA_INTEGER_ARITHMETIC_BIT_COUNT: u32 = 32u32;
pub const D3D11_IA_PATCH_MAX_CONTROL_POINT_COUNT: u32 = 32u32;
pub const D3D11_IA_PRIMITIVE_ID_BIT_COUNT: u32 = 32u32;
pub const D3D11_IA_VERTEX_ID_BIT_COUNT: u32 = 32u32;
pub const D3D11_IA_VERTEX_INPUT_RESOURCE_SLOT_COUNT: u32 = 32u32;
pub const D3D11_IA_VERTEX_INPUT_STRUCTURE_ELEMENTS_COMPONENTS: u32 = 128u32;
pub const D3D11_IA_VERTEX_INPUT_STRUCTURE_ELEMENT_COUNT: u32 = 32u32;
pub const D3D11_INFOQUEUE_STORAGE_FILTER_OVERRIDE: crate::core_supplemental::PCWSTR =
crate::core_supplemental::w!("InfoQueueStorageFilterOverride");
pub const D3D11_INFO_QUEUE_DEFAULT_MESSAGE_COUNT_LIMIT: u32 = 1024u32;
#[repr(C)]
#[derive(Clone, Copy, Debug, PartialEq)]
pub struct D3D11_INFO_QUEUE_FILTER {
pub AllowList: D3D11_INFO_QUEUE_FILTER_DESC,
pub DenyList: D3D11_INFO_QUEUE_FILTER_DESC,
}
impl Default for D3D11_INFO_QUEUE_FILTER {
fn default() -> Self {
unsafe { core::mem::zeroed() }
}
}
#[repr(C)]
#[derive(Clone, Copy, Debug, PartialEq)]
pub struct D3D11_INFO_QUEUE_FILTER_DESC {
pub NumCategories: u32,
pub pCategoryList: *mut D3D11_MESSAGE_CATEGORY,
pub NumSeverities: u32,
pub pSeverityList: *mut D3D11_MESSAGE_SEVERITY,
pub NumIDs: u32,
pub pIDList: *mut D3D11_MESSAGE_ID,
}
impl Default for D3D11_INFO_QUEUE_FILTER_DESC {
fn default() -> Self {
unsafe { core::mem::zeroed() }
}
}
#[repr(transparent)]
#[derive(Clone, Copy, Debug, Default, Eq, PartialEq)]
pub struct D3D11_INPUT_CLASSIFICATION(pub i32);
#[repr(C)]
#[cfg(feature = "Win32_Graphics_Dxgi_Common")]
#[derive(Clone, Copy, Debug, PartialEq)]
pub struct D3D11_INPUT_ELEMENT_DESC {
pub SemanticName: crate::core_supplemental::PCSTR,
pub SemanticIndex: u32,
pub Format: crate::Dxgi::Common::DXGI_FORMAT,
pub InputSlot: u32,
pub AlignedByteOffset: u32,
pub InputSlotClass: D3D11_INPUT_CLASSIFICATION,
pub InstanceDataStepRate: u32,
}
#[cfg(feature = "Win32_Graphics_Dxgi_Common")]
impl Default for D3D11_INPUT_ELEMENT_DESC {
fn default() -> Self {
unsafe { core::mem::zeroed() }
}
}
pub const D3D11_INPUT_PER_INSTANCE_DATA: D3D11_INPUT_CLASSIFICATION =
D3D11_INPUT_CLASSIFICATION(1i32);
pub const D3D11_INPUT_PER_VERTEX_DATA: D3D11_INPUT_CLASSIFICATION =
D3D11_INPUT_CLASSIFICATION(0i32);
pub const D3D11_INTEGER_DIVIDE_BY_ZERO_QUOTIENT: u32 = 4294967295u32;
pub const D3D11_INTEGER_DIVIDE_BY_ZERO_REMAINDER: u32 = 4294967295u32;
pub const D3D11_KEEP_RENDER_TARGETS_AND_DEPTH_STENCIL: u32 = 4294967295u32;
pub const D3D11_KEEP_UNORDERED_ACCESS_VIEWS: u32 = 4294967295u32;
pub const D3D11_KEY_EXCHANGE_HW_PROTECTION: windows_core::GUID =
windows_core::GUID::from_u128(0xb1170d8a_628d_4da3_ad3b_82ddb08b4970);
#[repr(C)]
#[derive(Clone, Copy, Debug, PartialEq)]
pub struct D3D11_KEY_EXCHANGE_HW_PROTECTION_DATA {
pub HWProtectionFunctionID: u32,
pub pInputData: *mut D3D11_KEY_EXCHANGE_HW_PROTECTION_INPUT_DATA,
pub pOutputData: *mut D3D11_KEY_EXCHANGE_HW_PROTECTION_OUTPUT_DATA,
pub Status: windows_core::HRESULT,
}
impl Default for D3D11_KEY_EXCHANGE_HW_PROTECTION_DATA {
fn default() -> Self {
unsafe { core::mem::zeroed() }
}
}
#[repr(C)]
#[derive(Clone, Copy, Debug, PartialEq)]
pub struct D3D11_KEY_EXCHANGE_HW_PROTECTION_INPUT_DATA {
pub PrivateDataSize: u32,
pub HWProtectionDataSize: u32,
pub pbInput: [u8; 4],
}
impl Default for D3D11_KEY_EXCHANGE_HW_PROTECTION_INPUT_DATA {
fn default() -> Self {
unsafe { core::mem::zeroed() }
}
}
#[repr(C)]
#[derive(Clone, Copy, Debug, PartialEq)]
pub struct D3D11_KEY_EXCHANGE_HW_PROTECTION_OUTPUT_DATA {
pub PrivateDataSize: u32,
pub MaxHWProtectionDataSize: u32,
pub HWProtectionDataSize: u32,
pub TransportTime: u64,
pub ExecutionTime: u64,
pub pbOutput: [u8; 4],
}
impl Default for D3D11_KEY_EXCHANGE_HW_PROTECTION_OUTPUT_DATA {
fn default() -> Self {
unsafe { core::mem::zeroed() }
}
}
pub const D3D11_KEY_EXCHANGE_RSAES_OAEP: windows_core::GUID =
windows_core::GUID::from_u128(0xc1949895_d72a_4a1d_8e5d_ed857d171520);
#[repr(C)]
#[derive(Clone, Copy, Debug, PartialEq)]
pub struct D3D11_LIBRARY_DESC {
pub Creator: crate::core_supplemental::PCSTR,
pub Flags: u32,
pub FunctionCount: u32,
}
impl Default for D3D11_LIBRARY_DESC {
fn default() -> Self {
unsafe { core::mem::zeroed() }
}
}
pub const D3D11_LINEAR_GAMMA: f32 = 1f32;
#[repr(transparent)]
#[derive(Clone, Copy, Debug, Default, Eq, PartialEq)]
pub struct D3D11_LOGIC_OP(pub i32);
pub const D3D11_LOGIC_OP_AND: D3D11_LOGIC_OP = D3D11_LOGIC_OP(6i32);
pub const D3D11_LOGIC_OP_AND_INVERTED: D3D11_LOGIC_OP = D3D11_LOGIC_OP(13i32);
pub const D3D11_LOGIC_OP_AND_REVERSE: D3D11_LOGIC_OP = D3D11_LOGIC_OP(12i32);
pub const D3D11_LOGIC_OP_CLEAR: D3D11_LOGIC_OP = D3D11_LOGIC_OP(0i32);
pub const D3D11_LOGIC_OP_COPY: D3D11_LOGIC_OP = D3D11_LOGIC_OP(2i32);
pub const D3D11_LOGIC_OP_COPY_INVERTED: D3D11_LOGIC_OP = D3D11_LOGIC_OP(3i32);
pub const D3D11_LOGIC_OP_EQUIV: D3D11_LOGIC_OP = D3D11_LOGIC_OP(11i32);
pub const D3D11_LOGIC_OP_INVERT: D3D11_LOGIC_OP = D3D11_LOGIC_OP(5i32);
pub const D3D11_LOGIC_OP_NAND: D3D11_LOGIC_OP = D3D11_LOGIC_OP(7i32);
pub const D3D11_LOGIC_OP_NOOP: D3D11_LOGIC_OP = D3D11_LOGIC_OP(4i32);
pub const D3D11_LOGIC_OP_NOR: D3D11_LOGIC_OP = D3D11_LOGIC_OP(9i32);
pub const D3D11_LOGIC_OP_OR: D3D11_LOGIC_OP = D3D11_LOGIC_OP(8i32);
pub const D3D11_LOGIC_OP_OR_INVERTED: D3D11_LOGIC_OP = D3D11_LOGIC_OP(15i32);
pub const D3D11_LOGIC_OP_OR_REVERSE: D3D11_LOGIC_OP = D3D11_LOGIC_OP(14i32);
pub const D3D11_LOGIC_OP_SET: D3D11_LOGIC_OP = D3D11_LOGIC_OP(1i32);
pub const D3D11_LOGIC_OP_XOR: D3D11_LOGIC_OP = D3D11_LOGIC_OP(10i32);
pub const D3D11_MAG_FILTER_SHIFT: u32 = 2u32;
pub const D3D11_MAJOR_VERSION: u32 = 11u32;
#[repr(transparent)]
#[derive(Clone, Copy, Debug, Default, Eq, PartialEq)]
pub struct D3D11_MAP(pub i32);
#[repr(C)]
#[derive(Clone, Copy, Debug, PartialEq)]
pub struct D3D11_MAPPED_SUBRESOURCE {
pub pData: *mut core::ffi::c_void,
pub RowPitch: u32,
pub DepthPitch: u32,
}
impl Default for D3D11_MAPPED_SUBRESOURCE {
fn default() -> Self {
unsafe { core::mem::zeroed() }
}
}
#[repr(transparent)]
#[derive(Clone, Copy, Debug, Default, Eq, PartialEq)]
pub struct D3D11_MAP_FLAG(pub i32);
pub const D3D11_MAP_FLAG_DO_NOT_WAIT: D3D11_MAP_FLAG = D3D11_MAP_FLAG(1048576i32);
pub const D3D11_MAP_READ: D3D11_MAP = D3D11_MAP(1i32);
pub const D3D11_MAP_READ_WRITE: D3D11_MAP = D3D11_MAP(3i32);
pub const D3D11_MAP_WRITE: D3D11_MAP = D3D11_MAP(2i32);
pub const D3D11_MAP_WRITE_DISCARD: D3D11_MAP = D3D11_MAP(4i32);
pub const D3D11_MAP_WRITE_NO_OVERWRITE: D3D11_MAP = D3D11_MAP(5i32);
pub const D3D11_MAX_BORDER_COLOR_COMPONENT: f32 = 1f32;
pub const D3D11_MAX_DEPTH: f32 = 1f32;
pub const D3D11_MAX_MAXANISOTROPY: u32 = 16u32;
pub const D3D11_MAX_MULTISAMPLE_SAMPLE_COUNT: u32 = 32u32;
pub const D3D11_MAX_POSITION_VALUE: f32 = 34028236000000000000000000000000000f32;
pub const D3D11_MAX_TEXTURE_DIMENSION_2_TO_EXP: u32 = 17u32;
#[repr(C)]
#[derive(Clone, Copy, Debug, PartialEq)]
pub struct D3D11_MESSAGE {
pub Category: D3D11_MESSAGE_CATEGORY,
pub Severity: D3D11_MESSAGE_SEVERITY,
pub ID: D3D11_MESSAGE_ID,
pub pDescription: *const u8,
pub DescriptionByteLength: usize,
}
impl Default for D3D11_MESSAGE {
fn default() -> Self {
unsafe { core::mem::zeroed() }
}
}
#[repr(transparent)]
#[derive(Clone, Copy, Debug, Default, Eq, PartialEq)]
pub struct D3D11_MESSAGE_CATEGORY(pub i32);
pub const D3D11_MESSAGE_CATEGORY_APPLICATION_DEFINED: D3D11_MESSAGE_CATEGORY =
D3D11_MESSAGE_CATEGORY(0i32);
pub const D3D11_MESSAGE_CATEGORY_CLEANUP: D3D11_MESSAGE_CATEGORY = D3D11_MESSAGE_CATEGORY(3i32);
pub const D3D11_MESSAGE_CATEGORY_COMPILATION: D3D11_MESSAGE_CATEGORY = D3D11_MESSAGE_CATEGORY(4i32);
pub const D3D11_MESSAGE_CATEGORY_EXECUTION: D3D11_MESSAGE_CATEGORY = D3D11_MESSAGE_CATEGORY(9i32);
pub const D3D11_MESSAGE_CATEGORY_INITIALIZATION: D3D11_MESSAGE_CATEGORY =
D3D11_MESSAGE_CATEGORY(2i32);
pub const D3D11_MESSAGE_CATEGORY_MISCELLANEOUS: D3D11_MESSAGE_CATEGORY =
D3D11_MESSAGE_CATEGORY(1i32);
pub const D3D11_MESSAGE_CATEGORY_RESOURCE_MANIPULATION: D3D11_MESSAGE_CATEGORY =
D3D11_MESSAGE_CATEGORY(8i32);
pub const D3D11_MESSAGE_CATEGORY_SHADER: D3D11_MESSAGE_CATEGORY = D3D11_MESSAGE_CATEGORY(10i32);
pub const D3D11_MESSAGE_CATEGORY_STATE_CREATION: D3D11_MESSAGE_CATEGORY =
D3D11_MESSAGE_CATEGORY(5i32);
pub const D3D11_MESSAGE_CATEGORY_STATE_GETTING: D3D11_MESSAGE_CATEGORY =
D3D11_MESSAGE_CATEGORY(7i32);
pub const D3D11_MESSAGE_CATEGORY_STATE_SETTING: D3D11_MESSAGE_CATEGORY =
D3D11_MESSAGE_CATEGORY(6i32);
#[repr(transparent)]
#[derive(Clone, Copy, Debug, Default, Eq, PartialEq)]
pub struct D3D11_MESSAGE_ID(pub i32);
pub const D3D11_MESSAGE_ID_ACQUIREHANDLEFORCAPTURE_INVALIDARRAY: D3D11_MESSAGE_ID =
D3D11_MESSAGE_ID(3146029i32);
pub const D3D11_MESSAGE_ID_ACQUIREHANDLEFORCAPTURE_INVALIDBIND: D3D11_MESSAGE_ID =
D3D11_MESSAGE_ID(3146028i32);
pub const D3D11_MESSAGE_ID_ACQUIREHANDLEFORCAPTURE_INVALIDTYPE: D3D11_MESSAGE_ID =
D3D11_MESSAGE_ID(3146027i32);
pub const D3D11_MESSAGE_ID_ACQUIREHANDLEFORCAPTURE_NULLPARAM: D3D11_MESSAGE_ID =
D3D11_MESSAGE_ID(3146026i32);
pub const D3D11_MESSAGE_ID_BLENDSTATE_GETDESC_LEGACY: D3D11_MESSAGE_ID = D3D11_MESSAGE_ID(392i32);
pub const D3D11_MESSAGE_ID_BUFFER_MAP_ALREADYMAPPED: D3D11_MESSAGE_ID = D3D11_MESSAGE_ID(297i32);
pub const D3D11_MESSAGE_ID_BUFFER_MAP_DEVICEREMOVED_RETURN: D3D11_MESSAGE_ID =
D3D11_MESSAGE_ID(298i32);
pub const D3D11_MESSAGE_ID_BUFFER_MAP_INVALIDFLAGS: D3D11_MESSAGE_ID = D3D11_MESSAGE_ID(296i32);
pub const D3D11_MESSAGE_ID_BUFFER_MAP_INVALIDMAPTYPE: D3D11_MESSAGE_ID = D3D11_MESSAGE_ID(295i32);
pub const D3D11_MESSAGE_ID_BUFFER_UNMAP_NOTMAPPED: D3D11_MESSAGE_ID = D3D11_MESSAGE_ID(299i32);
pub const D3D11_MESSAGE_ID_CANNOT_ADD_TRACKED_WORKLOAD: D3D11_MESSAGE_ID =
D3D11_MESSAGE_ID(3146278i32);
pub const D3D11_MESSAGE_ID_CHECKCOUNTER_OUTOFRANGE_COUNTER: D3D11_MESSAGE_ID =
D3D11_MESSAGE_ID(402i32);
pub const D3D11_MESSAGE_ID_CHECKCOUNTER_UNSUPPORTED_WELLKNOWN_COUNTER: D3D11_MESSAGE_ID =
D3D11_MESSAGE_ID(403i32);
pub const D3D11_MESSAGE_ID_CHECKCRYPTOKEYEXCHANGE_INVALIDINDEX: D3D11_MESSAGE_ID =
D3D11_MESSAGE_ID(3145994i32);
pub const D3D11_MESSAGE_ID_CHECKCRYPTOKEYEXCHANGE_NULLPARAM: D3D11_MESSAGE_ID =
D3D11_MESSAGE_ID(3145993i32);
pub const D3D11_MESSAGE_ID_CHECKCRYPTOSESSIONSTATUS_NULLPARAM: D3D11_MESSAGE_ID =
D3D11_MESSAGE_ID(3146085i32);
pub const D3D11_MESSAGE_ID_CHECKFEATURESUPPORT_FORMAT_DEPRECATED: D3D11_MESSAGE_ID =
D3D11_MESSAGE_ID(2097371i32);
pub const D3D11_MESSAGE_ID_CHECKFORMATSUPPORT_FORMAT_DEPRECATED: D3D11_MESSAGE_ID =
D3D11_MESSAGE_ID(321i32);
pub const D3D11_MESSAGE_ID_CHECKFORMATSUPPORT_FORMAT_NOT_SUPPORTED: D3D11_MESSAGE_ID =
D3D11_MESSAGE_ID(2097401i32);
pub const D3D11_MESSAGE_ID_CHECKMULTISAMPLEQUALITYLEVELS_FORMAT_DEPRECATED: D3D11_MESSAGE_ID =
D3D11_MESSAGE_ID(322i32);
pub const D3D11_MESSAGE_ID_CHECKMULTISAMPLEQUALITYLEVELS_INVALIDFLAGS: D3D11_MESSAGE_ID =
D3D11_MESSAGE_ID(3146138i32);
pub const D3D11_MESSAGE_ID_CHECKVIDEODECODERDOWNSAMPLING_INVALIDCOLORSPACE: D3D11_MESSAGE_ID =
D3D11_MESSAGE_ID(3146090i32);
pub const D3D11_MESSAGE_ID_CHECKVIDEODECODERDOWNSAMPLING_NULLPARAM: D3D11_MESSAGE_ID =
D3D11_MESSAGE_ID(3146089i32);
pub const D3D11_MESSAGE_ID_CHECKVIDEODECODERDOWNSAMPLING_ZEROWIDTHHEIGHT: D3D11_MESSAGE_ID =
D3D11_MESSAGE_ID(3146091i32);
pub const D3D11_MESSAGE_ID_CHECKVIDEODECODERFORMAT_NULLPARAM: D3D11_MESSAGE_ID =
D3D11_MESSAGE_ID(3145768i32);
pub const D3D11_MESSAGE_ID_CHECKVIDEODECODERFORMAT_OUTOFMEMORY_RETURN: D3D11_MESSAGE_ID =
D3D11_MESSAGE_ID(3145769i32);
pub const D3D11_MESSAGE_ID_CHECKVIDEOPROCESSORFORMATCONVERSION_NULLPARAM: D3D11_MESSAGE_ID =
D3D11_MESSAGE_ID(3146096i32);
pub const D3D11_MESSAGE_ID_CHECKVIDEOPROCESSORFORMAT_NULLPARAM: D3D11_MESSAGE_ID =
D3D11_MESSAGE_ID(3145799i32);
pub const D3D11_MESSAGE_ID_CLEARDEPTHSTENCILVIEW_DENORMFLUSH: D3D11_MESSAGE_ID =
D3D11_MESSAGE_ID(262i32);
pub const D3D11_MESSAGE_ID_CLEARDEPTHSTENCILVIEW_DEPTH_READONLY: D3D11_MESSAGE_ID =
D3D11_MESSAGE_ID(2097369i32);
pub const D3D11_MESSAGE_ID_CLEARDEPTHSTENCILVIEW_INVALID: D3D11_MESSAGE_ID =
D3D11_MESSAGE_ID(263i32);
pub const D3D11_MESSAGE_ID_CLEARDEPTHSTENCILVIEW_STENCIL_READONLY: D3D11_MESSAGE_ID =
D3D11_MESSAGE_ID(2097370i32);
pub const D3D11_MESSAGE_ID_CLEARRENDERTARGETVIEW_DENORMFLUSH: D3D11_MESSAGE_ID =
D3D11_MESSAGE_ID(261i32);
pub const D3D11_MESSAGE_ID_CLEARUNORDEREDACCESSVIEWFLOAT_HAZARD: D3D11_MESSAGE_ID =
D3D11_MESSAGE_ID(3146145i32);
pub const D3D11_MESSAGE_ID_CLEARUNORDEREDACCESSVIEWFLOAT_INVALIDFORMAT: D3D11_MESSAGE_ID =
D3D11_MESSAGE_ID(2097405i32);
pub const D3D11_MESSAGE_ID_CLEARUNORDEREDACCESSVIEWUINT_HAZARD: D3D11_MESSAGE_ID =
D3D11_MESSAGE_ID(3146144i32);
pub const D3D11_MESSAGE_ID_CLEARUNORDEREDACCESSVIEW_DENORMFLUSH: D3D11_MESSAGE_ID =
D3D11_MESSAGE_ID(2097355i32);
pub const D3D11_MESSAGE_ID_CONFIGUREAUTHENTICATEDCHANNEL_INVALIDPROCESSIDTYPE: D3D11_MESSAGE_ID =
D3D11_MESSAGE_ID(3146015i32);
pub const D3D11_MESSAGE_ID_CONFIGUREAUTHENTICATEDCHANNEL_NULLPARAM: D3D11_MESSAGE_ID =
D3D11_MESSAGE_ID(3146011i32);
pub const D3D11_MESSAGE_ID_CONFIGUREAUTHENTICATEDCHANNEL_UNSUPPORTEDCONFIGURE: D3D11_MESSAGE_ID =
D3D11_MESSAGE_ID(3146013i32);
pub const D3D11_MESSAGE_ID_CONFIGUREAUTHENTICATEDCHANNEL_WRONGCHANNEL: D3D11_MESSAGE_ID =
D3D11_MESSAGE_ID(3146012i32);
pub const D3D11_MESSAGE_ID_CONFIGUREAUTHENTICATEDCHANNEL_WRONGSIZE: D3D11_MESSAGE_ID =
D3D11_MESSAGE_ID(3146014i32);
pub const D3D11_MESSAGE_ID_COPYRESOURCE_INVALIDDESTINATIONSTATE: D3D11_MESSAGE_ID =
D3D11_MESSAGE_ID(285i32);
pub const D3D11_MESSAGE_ID_COPYRESOURCE_INVALIDSOURCE: D3D11_MESSAGE_ID = D3D11_MESSAGE_ID(284i32);
pub const D3D11_MESSAGE_ID_COPYRESOURCE_INVALIDSOURCESTATE: D3D11_MESSAGE_ID =
D3D11_MESSAGE_ID(286i32);
pub const D3D11_MESSAGE_ID_COPYRESOURCE_NO_3D_MISMATCHED_UPDATES: D3D11_MESSAGE_ID =
D3D11_MESSAGE_ID(1048637i32);
pub const D3D11_MESSAGE_ID_COPYRESOURCE_NO_TEXTURE_3D_READBACK: D3D11_MESSAGE_ID =
D3D11_MESSAGE_ID(1048597i32);
pub const D3D11_MESSAGE_ID_COPYRESOURCE_NO_TEXTURE_ONLY_READBACK: D3D11_MESSAGE_ID =
D3D11_MESSAGE_ID(1048598i32);
pub const D3D11_MESSAGE_ID_COPYRESOURCE_ONLY_TEXTURE_2D_WITHIN_GPU_MEMORY: D3D11_MESSAGE_ID =
D3D11_MESSAGE_ID(1048596i32);
pub const D3D11_MESSAGE_ID_COPYSTRUCTURECOUNT_INVALIDDESTINATIONSTATE: D3D11_MESSAGE_ID =
D3D11_MESSAGE_ID(2097399i32);
pub const D3D11_MESSAGE_ID_COPYSTRUCTURECOUNT_INVALIDOFFSET: D3D11_MESSAGE_ID =
D3D11_MESSAGE_ID(2097397i32);
pub const D3D11_MESSAGE_ID_COPYSTRUCTURECOUNT_INVALIDSOURCESTATE: D3D11_MESSAGE_ID =
D3D11_MESSAGE_ID(2097400i32);
pub const D3D11_MESSAGE_ID_COPYSTRUCTURECOUNT_LARGEOFFSET: D3D11_MESSAGE_ID =
D3D11_MESSAGE_ID(2097398i32);
pub const D3D11_MESSAGE_ID_COPYSUBRESOURCEREGION1_INVALIDCOPYFLAGS: D3D11_MESSAGE_ID =
D3D11_MESSAGE_ID(3145755i32);
pub const D3D11_MESSAGE_ID_COPYSUBRESOURCEREGION_EMPTYSOURCEBOX: D3D11_MESSAGE_ID =
D3D11_MESSAGE_ID(3146078i32);
pub const D3D11_MESSAGE_ID_COPYSUBRESOURCEREGION_INVALIDDESTINATIONSTATE: D3D11_MESSAGE_ID =
D3D11_MESSAGE_ID(282i32);
pub const D3D11_MESSAGE_ID_COPYSUBRESOURCEREGION_INVALIDDESTINATIONSUBRESOURCE: D3D11_MESSAGE_ID =
D3D11_MESSAGE_ID(278i32);
pub const D3D11_MESSAGE_ID_COPYSUBRESOURCEREGION_INVALIDSOURCE: D3D11_MESSAGE_ID =
D3D11_MESSAGE_ID(281i32);
pub const D3D11_MESSAGE_ID_COPYSUBRESOURCEREGION_INVALIDSOURCEBOX: D3D11_MESSAGE_ID =
D3D11_MESSAGE_ID(280i32);
pub const D3D11_MESSAGE_ID_COPYSUBRESOURCEREGION_INVALIDSOURCESTATE: D3D11_MESSAGE_ID =
D3D11_MESSAGE_ID(283i32);
pub const D3D11_MESSAGE_ID_COPYSUBRESOURCEREGION_INVALIDSOURCESUBRESOURCE: D3D11_MESSAGE_ID =
D3D11_MESSAGE_ID(279i32);
pub const D3D11_MESSAGE_ID_COPYTILEMAPPINGS_INVALID_PARAMETER: D3D11_MESSAGE_ID =
D3D11_MESSAGE_ID(3146126i32);
pub const D3D11_MESSAGE_ID_COPYTILES_INVALID_PARAMETER: D3D11_MESSAGE_ID =
D3D11_MESSAGE_ID(3146127i32);
pub const D3D11_MESSAGE_ID_CORRUPTED_MULTITHREADING: D3D11_MESSAGE_ID = D3D11_MESSAGE_ID(28i32);
pub const D3D11_MESSAGE_ID_CORRUPTED_PARAMETER1: D3D11_MESSAGE_ID = D3D11_MESSAGE_ID(13i32);
pub const D3D11_MESSAGE_ID_CORRUPTED_PARAMETER10: D3D11_MESSAGE_ID = D3D11_MESSAGE_ID(22i32);
pub const D3D11_MESSAGE_ID_CORRUPTED_PARAMETER11: D3D11_MESSAGE_ID = D3D11_MESSAGE_ID(23i32);
pub const D3D11_MESSAGE_ID_CORRUPTED_PARAMETER12: D3D11_MESSAGE_ID = D3D11_MESSAGE_ID(24i32);
pub const D3D11_MESSAGE_ID_CORRUPTED_PARAMETER13: D3D11_MESSAGE_ID = D3D11_MESSAGE_ID(25i32);
pub const D3D11_MESSAGE_ID_CORRUPTED_PARAMETER14: D3D11_MESSAGE_ID = D3D11_MESSAGE_ID(26i32);
pub const D3D11_MESSAGE_ID_CORRUPTED_PARAMETER15: D3D11_MESSAGE_ID = D3D11_MESSAGE_ID(27i32);
pub const D3D11_MESSAGE_ID_CORRUPTED_PARAMETER2: D3D11_MESSAGE_ID = D3D11_MESSAGE_ID(14i32);
pub const D3D11_MESSAGE_ID_CORRUPTED_PARAMETER3: D3D11_MESSAGE_ID = D3D11_MESSAGE_ID(15i32);
pub const D3D11_MESSAGE_ID_CORRUPTED_PARAMETER4: D3D11_MESSAGE_ID = D3D11_MESSAGE_ID(16i32);
pub const D3D11_MESSAGE_ID_CORRUPTED_PARAMETER5: D3D11_MESSAGE_ID = D3D11_MESSAGE_ID(17i32);
pub const D3D11_MESSAGE_ID_CORRUPTED_PARAMETER6: D3D11_MESSAGE_ID = D3D11_MESSAGE_ID(18i32);
pub const D3D11_MESSAGE_ID_CORRUPTED_PARAMETER7: D3D11_MESSAGE_ID = D3D11_MESSAGE_ID(19i32);
pub const D3D11_MESSAGE_ID_CORRUPTED_PARAMETER8: D3D11_MESSAGE_ID = D3D11_MESSAGE_ID(20i32);
pub const D3D11_MESSAGE_ID_CORRUPTED_PARAMETER9: D3D11_MESSAGE_ID = D3D11_MESSAGE_ID(21i32);
pub const D3D11_MESSAGE_ID_CORRUPTED_THIS: D3D11_MESSAGE_ID = D3D11_MESSAGE_ID(12i32);
pub const D3D11_MESSAGE_ID_CREATEAUTHENTICATEDCHANNEL_INVALIDTYPE: D3D11_MESSAGE_ID =
D3D11_MESSAGE_ID(3145997i32);
pub const D3D11_MESSAGE_ID_CREATEAUTHENTICATEDCHANNEL_NULLPARAM: D3D11_MESSAGE_ID =
D3D11_MESSAGE_ID(3145995i32);
pub const D3D11_MESSAGE_ID_CREATEAUTHENTICATEDCHANNEL_OUTOFMEMORY_RETURN: D3D11_MESSAGE_ID =
D3D11_MESSAGE_ID(3145998i32);
pub const D3D11_MESSAGE_ID_CREATEAUTHENTICATEDCHANNEL_UNSUPPORTED: D3D11_MESSAGE_ID =
D3D11_MESSAGE_ID(3145996i32);
pub const D3D11_MESSAGE_ID_CREATEBLENDSTATE_INVALIDBLENDOP: D3D11_MESSAGE_ID =
D3D11_MESSAGE_ID(214i32);
pub const D3D11_MESSAGE_ID_CREATEBLENDSTATE_INVALIDBLENDOPALPHA: D3D11_MESSAGE_ID =
D3D11_MESSAGE_ID(217i32);
pub const D3D11_MESSAGE_ID_CREATEBLENDSTATE_INVALIDDESTBLEND: D3D11_MESSAGE_ID =
D3D11_MESSAGE_ID(213i32);
pub const D3D11_MESSAGE_ID_CREATEBLENDSTATE_INVALIDDESTBLENDALPHA: D3D11_MESSAGE_ID =
D3D11_MESSAGE_ID(216i32);
pub const D3D11_MESSAGE_ID_CREATEBLENDSTATE_INVALIDLOGICOPS: D3D11_MESSAGE_ID =
D3D11_MESSAGE_ID(3145941i32);
pub const D3D11_MESSAGE_ID_CREATEBLENDSTATE_INVALIDRENDERTARGETWRITEMASK: D3D11_MESSAGE_ID =
D3D11_MESSAGE_ID(218i32);
pub const D3D11_MESSAGE_ID_CREATEBLENDSTATE_INVALIDSRCBLEND: D3D11_MESSAGE_ID =
D3D11_MESSAGE_ID(212i32);
pub const D3D11_MESSAGE_ID_CREATEBLENDSTATE_INVALIDSRCBLENDALPHA: D3D11_MESSAGE_ID =
D3D11_MESSAGE_ID(215i32);
pub const D3D11_MESSAGE_ID_CREATEBLENDSTATE_NO_ALPHA_TO_COVERAGE: D3D11_MESSAGE_ID =
D3D11_MESSAGE_ID(1048600i32);
pub const D3D11_MESSAGE_ID_CREATEBLENDSTATE_NO_INDEPENDENT_BLEND_ENABLE: D3D11_MESSAGE_ID =
D3D11_MESSAGE_ID(1048612i32);
pub const D3D11_MESSAGE_ID_CREATEBLENDSTATE_NO_INDEPENDENT_WRITE_MASKS: D3D11_MESSAGE_ID =
D3D11_MESSAGE_ID(1048613i32);
pub const D3D11_MESSAGE_ID_CREATEBLENDSTATE_NO_MRT_BLEND: D3D11_MESSAGE_ID =
D3D11_MESSAGE_ID(1048623i32);
pub const D3D11_MESSAGE_ID_CREATEBLENDSTATE_NO_SEPARATE_ALPHA_BLEND: D3D11_MESSAGE_ID =
D3D11_MESSAGE_ID(1048622i32);
pub const D3D11_MESSAGE_ID_CREATEBLENDSTATE_NULLDESC: D3D11_MESSAGE_ID = D3D11_MESSAGE_ID(220i32);
pub const D3D11_MESSAGE_ID_CREATEBLENDSTATE_OPERATION_NOT_SUPPORTED: D3D11_MESSAGE_ID =
D3D11_MESSAGE_ID(1048624i32);
pub const D3D11_MESSAGE_ID_CREATEBLENDSTATE_TOOMANYOBJECTS: D3D11_MESSAGE_ID =
D3D11_MESSAGE_ID(219i32);
pub const D3D11_MESSAGE_ID_CREATEBUFFER_INVALIDARG_RETURN: D3D11_MESSAGE_ID =
D3D11_MESSAGE_ID(69i32);
pub const D3D11_MESSAGE_ID_CREATEBUFFER_INVALIDBINDFLAGS: D3D11_MESSAGE_ID =
D3D11_MESSAGE_ID(64i32);
pub const D3D11_MESSAGE_ID_CREATEBUFFER_INVALIDCONSTANTBUFFERBINDINGS: D3D11_MESSAGE_ID =
D3D11_MESSAGE_ID(72i32);
pub const D3D11_MESSAGE_ID_CREATEBUFFER_INVALIDCPUACCESSFLAGS: D3D11_MESSAGE_ID =
D3D11_MESSAGE_ID(63i32);
pub const D3D11_MESSAGE_ID_CREATEBUFFER_INVALIDDIMENSIONS: D3D11_MESSAGE_ID =
D3D11_MESSAGE_ID(66i32);
pub const D3D11_MESSAGE_ID_CREATEBUFFER_INVALIDINITIALDATA: D3D11_MESSAGE_ID =
D3D11_MESSAGE_ID(65i32);
pub const D3D11_MESSAGE_ID_CREATEBUFFER_INVALIDMIPLEVELS: D3D11_MESSAGE_ID =
D3D11_MESSAGE_ID(67i32);
pub const D3D11_MESSAGE_ID_CREATEBUFFER_INVALIDMISCFLAGS: D3D11_MESSAGE_ID =
D3D11_MESSAGE_ID(68i32);
pub const D3D11_MESSAGE_ID_CREATEBUFFER_INVALIDSAMPLES: D3D11_MESSAGE_ID = D3D11_MESSAGE_ID(58i32);
pub const D3D11_MESSAGE_ID_CREATEBUFFER_INVALIDSTRUCTURESTRIDE: D3D11_MESSAGE_ID =
D3D11_MESSAGE_ID(2097339i32);
pub const D3D11_MESSAGE_ID_CREATEBUFFER_INVALIDUSAGE: D3D11_MESSAGE_ID =
D3D11_MESSAGE_ID(3146120i32);
pub const D3D11_MESSAGE_ID_CREATEBUFFER_LARGEALLOCATION: D3D11_MESSAGE_ID = D3D11_MESSAGE_ID(73i32);
pub const D3D11_MESSAGE_ID_CREATEBUFFER_NULLDESC: D3D11_MESSAGE_ID = D3D11_MESSAGE_ID(71i32);
pub const D3D11_MESSAGE_ID_CREATEBUFFER_OUTOFMEMORY_RETURN: D3D11_MESSAGE_ID =
D3D11_MESSAGE_ID(70i32);
pub const D3D11_MESSAGE_ID_CREATEBUFFER_UNRECOGNIZEDBINDFLAGS: D3D11_MESSAGE_ID =
D3D11_MESSAGE_ID(60i32);
pub const D3D11_MESSAGE_ID_CREATEBUFFER_UNRECOGNIZEDCPUACCESSFLAGS: D3D11_MESSAGE_ID =
D3D11_MESSAGE_ID(61i32);
pub const D3D11_MESSAGE_ID_CREATEBUFFER_UNRECOGNIZEDFORMAT: D3D11_MESSAGE_ID =
D3D11_MESSAGE_ID(57i32);
pub const D3D11_MESSAGE_ID_CREATEBUFFER_UNRECOGNIZEDMISCFLAGS: D3D11_MESSAGE_ID =
D3D11_MESSAGE_ID(62i32);
pub const D3D11_MESSAGE_ID_CREATEBUFFER_UNRECOGNIZEDUSAGE: D3D11_MESSAGE_ID =
D3D11_MESSAGE_ID(59i32);
pub const D3D11_MESSAGE_ID_CREATECOMPUTESHADER_INVALIDCALL: D3D11_MESSAGE_ID =
D3D11_MESSAGE_ID(2097320i32);
pub const D3D11_MESSAGE_ID_CREATECOMPUTESHADER_INVALIDCLASSLINKAGE: D3D11_MESSAGE_ID =
D3D11_MESSAGE_ID(2097324i32);
pub const D3D11_MESSAGE_ID_CREATECOMPUTESHADER_INVALIDSHADERBYTECODE: D3D11_MESSAGE_ID =
D3D11_MESSAGE_ID(2097322i32);
pub const D3D11_MESSAGE_ID_CREATECOMPUTESHADER_INVALIDSHADERTYPE: D3D11_MESSAGE_ID =
D3D11_MESSAGE_ID(2097323i32);
pub const D3D11_MESSAGE_ID_CREATECOMPUTESHADER_OUTOFMEMORY: D3D11_MESSAGE_ID =
D3D11_MESSAGE_ID(2097321i32);
pub const D3D11_MESSAGE_ID_CREATECOUNTER_NONEXCLUSIVE_RETURN: D3D11_MESSAGE_ID =
D3D11_MESSAGE_ID(400i32);
pub const D3D11_MESSAGE_ID_CREATECOUNTER_NULLDESC: D3D11_MESSAGE_ID = D3D11_MESSAGE_ID(401i32);
pub const D3D11_MESSAGE_ID_CREATECOUNTER_OUTOFMEMORY_RETURN: D3D11_MESSAGE_ID =
D3D11_MESSAGE_ID(399i32);
pub const D3D11_MESSAGE_ID_CREATECOUNTER_OUTOFRANGE_COUNTER: D3D11_MESSAGE_ID =
D3D11_MESSAGE_ID(396i32);
pub const D3D11_MESSAGE_ID_CREATECOUNTER_SIMULTANEOUS_ACTIVE_COUNTERS_EXHAUSTED: D3D11_MESSAGE_ID =
D3D11_MESSAGE_ID(397i32);
pub const D3D11_MESSAGE_ID_CREATECOUNTER_UNSUPPORTED_WELLKNOWN_COUNTER: D3D11_MESSAGE_ID =
D3D11_MESSAGE_ID(398i32);
pub const D3D11_MESSAGE_ID_CREATECRYPTOSESSION_NULLPARAM: D3D11_MESSAGE_ID =
D3D11_MESSAGE_ID(3145951i32);
pub const D3D11_MESSAGE_ID_CREATECRYPTOSESSION_OUTOFMEMORY_RETURN: D3D11_MESSAGE_ID =
D3D11_MESSAGE_ID(3145952i32);
pub const D3D11_MESSAGE_ID_CREATEDEFERREDCONTEXT_INVALIDARG_RETURN: D3D11_MESSAGE_ID =
D3D11_MESSAGE_ID(2097163i32);
pub const D3D11_MESSAGE_ID_CREATEDEFERREDCONTEXT_INVALID_CALL_RETURN: D3D11_MESSAGE_ID =
D3D11_MESSAGE_ID(2097164i32);
pub const D3D11_MESSAGE_ID_CREATEDEFERREDCONTEXT_INVALID_COMMANDLISTFLAGS: D3D11_MESSAGE_ID =
D3D11_MESSAGE_ID(2097161i32);
pub const D3D11_MESSAGE_ID_CREATEDEFERREDCONTEXT_OUTOFMEMORY_RETURN: D3D11_MESSAGE_ID =
D3D11_MESSAGE_ID(2097165i32);
pub const D3D11_MESSAGE_ID_CREATEDEFERREDCONTEXT_SINGLETHREADED: D3D11_MESSAGE_ID =
D3D11_MESSAGE_ID(2097162i32);
pub const D3D11_MESSAGE_ID_CREATEDEPTHSTENCILSTATE_INVALIDBACKFACESTENCILFAILOP: D3D11_MESSAGE_ID =
D3D11_MESSAGE_ID(206i32);
pub const D3D11_MESSAGE_ID_CREATEDEPTHSTENCILSTATE_INVALIDBACKFACESTENCILFUNC: D3D11_MESSAGE_ID =
D3D11_MESSAGE_ID(209i32);
pub const D3D11_MESSAGE_ID_CREATEDEPTHSTENCILSTATE_INVALIDBACKFACESTENCILPASSOP: D3D11_MESSAGE_ID =
D3D11_MESSAGE_ID(208i32);
pub const D3D11_MESSAGE_ID_CREATEDEPTHSTENCILSTATE_INVALIDBACKFACESTENCILZFAILOP: D3D11_MESSAGE_ID =
D3D11_MESSAGE_ID(207i32);
pub const D3D11_MESSAGE_ID_CREATEDEPTHSTENCILSTATE_INVALIDDEPTHFUNC: D3D11_MESSAGE_ID =
D3D11_MESSAGE_ID(201i32);
pub const D3D11_MESSAGE_ID_CREATEDEPTHSTENCILSTATE_INVALIDDEPTHWRITEMASK: D3D11_MESSAGE_ID =
D3D11_MESSAGE_ID(200i32);
pub const D3D11_MESSAGE_ID_CREATEDEPTHSTENCILSTATE_INVALIDFRONTFACESTENCILFAILOP: D3D11_MESSAGE_ID =
D3D11_MESSAGE_ID(202i32);
pub const D3D11_MESSAGE_ID_CREATEDEPTHSTENCILSTATE_INVALIDFRONTFACESTENCILFUNC: D3D11_MESSAGE_ID =
D3D11_MESSAGE_ID(205i32);
pub const D3D11_MESSAGE_ID_CREATEDEPTHSTENCILSTATE_INVALIDFRONTFACESTENCILPASSOP: D3D11_MESSAGE_ID =
D3D11_MESSAGE_ID(204i32);
pub const D3D11_MESSAGE_ID_CREATEDEPTHSTENCILSTATE_INVALIDFRONTFACESTENCILZFAILOP:
D3D11_MESSAGE_ID = D3D11_MESSAGE_ID(203i32);
pub const D3D11_MESSAGE_ID_CREATEDEPTHSTENCILSTATE_NULLDESC: D3D11_MESSAGE_ID =
D3D11_MESSAGE_ID(211i32);
pub const D3D11_MESSAGE_ID_CREATEDEPTHSTENCILSTATE_STENCIL_NO_TWO_SIDED: D3D11_MESSAGE_ID =
D3D11_MESSAGE_ID(1048577i32);
pub const D3D11_MESSAGE_ID_CREATEDEPTHSTENCILSTATE_TOOMANYOBJECTS: D3D11_MESSAGE_ID =
D3D11_MESSAGE_ID(210i32);
pub const D3D11_MESSAGE_ID_CREATEDEPTHSTENCILVIEW_INVALIDARG_RETURN: D3D11_MESSAGE_ID =
D3D11_MESSAGE_ID(148i32);
pub const D3D11_MESSAGE_ID_CREATEDEPTHSTENCILVIEW_INVALIDDESC: D3D11_MESSAGE_ID =
D3D11_MESSAGE_ID(143i32);
pub const D3D11_MESSAGE_ID_CREATEDEPTHSTENCILVIEW_INVALIDDIMENSIONS: D3D11_MESSAGE_ID =
D3D11_MESSAGE_ID(145i32);
pub const D3D11_MESSAGE_ID_CREATEDEPTHSTENCILVIEW_INVALIDFLAGS: D3D11_MESSAGE_ID =
D3D11_MESSAGE_ID(2097153i32);
pub const D3D11_MESSAGE_ID_CREATEDEPTHSTENCILVIEW_INVALIDFORMAT: D3D11_MESSAGE_ID =
D3D11_MESSAGE_ID(144i32);
pub const D3D11_MESSAGE_ID_CREATEDEPTHSTENCILVIEW_INVALIDRESOURCE: D3D11_MESSAGE_ID =
D3D11_MESSAGE_ID(146i32);
pub const D3D11_MESSAGE_ID_CREATEDEPTHSTENCILVIEW_OUTOFMEMORY_RETURN: D3D11_MESSAGE_ID =
D3D11_MESSAGE_ID(149i32);
pub const D3D11_MESSAGE_ID_CREATEDEPTHSTENCILVIEW_TOOMANYOBJECTS: D3D11_MESSAGE_ID =
D3D11_MESSAGE_ID(147i32);
pub const D3D11_MESSAGE_ID_CREATEDEPTHSTENCILVIEW_UNRECOGNIZEDFORMAT: D3D11_MESSAGE_ID =
D3D11_MESSAGE_ID(142i32);
pub const D3D11_MESSAGE_ID_CREATEDEVICECONTEXTSTATE_FEATURELEVELS_NOT_SUPPORTED: D3D11_MESSAGE_ID =
D3D11_MESSAGE_ID(3145752i32);
pub const D3D11_MESSAGE_ID_CREATEDEVICECONTEXTSTATE_INVALIDFEATURELEVEL: D3D11_MESSAGE_ID =
D3D11_MESSAGE_ID(3145751i32);
pub const D3D11_MESSAGE_ID_CREATEDEVICECONTEXTSTATE_INVALIDFLAGS: D3D11_MESSAGE_ID =
D3D11_MESSAGE_ID(3145750i32);
pub const D3D11_MESSAGE_ID_CREATEDEVICECONTEXTSTATE_INVALIDREFIID: D3D11_MESSAGE_ID =
D3D11_MESSAGE_ID(3145753i32);
pub const D3D11_MESSAGE_ID_CREATEDEVICE_INVALIDARGS: D3D11_MESSAGE_ID =
D3D11_MESSAGE_ID(3146142i32);
pub const D3D11_MESSAGE_ID_CREATEDEVICE_WARNING: D3D11_MESSAGE_ID = D3D11_MESSAGE_ID(3146143i32);
pub const D3D11_MESSAGE_ID_CREATEDOMAINSHADER_INVALIDCALL: D3D11_MESSAGE_ID =
D3D11_MESSAGE_ID(2097193i32);
pub const D3D11_MESSAGE_ID_CREATEDOMAINSHADER_INVALIDCLASSLINKAGE: D3D11_MESSAGE_ID =
D3D11_MESSAGE_ID(2097197i32);
pub const D3D11_MESSAGE_ID_CREATEDOMAINSHADER_INVALIDSHADERBYTECODE: D3D11_MESSAGE_ID =
D3D11_MESSAGE_ID(2097195i32);
pub const D3D11_MESSAGE_ID_CREATEDOMAINSHADER_INVALIDSHADERTYPE: D3D11_MESSAGE_ID =
D3D11_MESSAGE_ID(2097196i32);
pub const D3D11_MESSAGE_ID_CREATEDOMAINSHADER_OUTOFMEMORY: D3D11_MESSAGE_ID =
D3D11_MESSAGE_ID(2097194i32);
pub const D3D11_MESSAGE_ID_CREATEFENCE_INVALIDFLAGS: D3D11_MESSAGE_ID =
D3D11_MESSAGE_ID(3146256i32);
pub const D3D11_MESSAGE_ID_CREATEGEOMETRYSHADERWITHSTREAMOUTPUT_CANTHAVEONLYGAPS: D3D11_MESSAGE_ID =
D3D11_MESSAGE_ID(188i32);
pub const D3D11_MESSAGE_ID_CREATEGEOMETRYSHADERWITHSTREAMOUTPUT_DECLTOOCOMPLEX: D3D11_MESSAGE_ID =
D3D11_MESSAGE_ID(189i32);
pub const D3D11_MESSAGE_ID_CREATEGEOMETRYSHADERWITHSTREAMOUTPUT_EXPECTEDDECL: D3D11_MESSAGE_ID =
D3D11_MESSAGE_ID(177i32);
pub const D3D11_MESSAGE_ID_CREATEGEOMETRYSHADERWITHSTREAMOUTPUT_INVALIDCLASSLINKAGE:
D3D11_MESSAGE_ID = D3D11_MESSAGE_ID(2097159i32);
pub const D3D11_MESSAGE_ID_CREATEGEOMETRYSHADERWITHSTREAMOUTPUT_INVALIDCOMPONENTCOUNT:
D3D11_MESSAGE_ID = D3D11_MESSAGE_ID(181i32);
pub const D3D11_MESSAGE_ID_CREATEGEOMETRYSHADERWITHSTREAMOUTPUT_INVALIDGAPDEFINITION:
D3D11_MESSAGE_ID = D3D11_MESSAGE_ID(183i32);
pub const D3D11_MESSAGE_ID_CREATEGEOMETRYSHADERWITHSTREAMOUTPUT_INVALIDNUMENTRIES:
D3D11_MESSAGE_ID = D3D11_MESSAGE_ID(174i32);
pub const D3D11_MESSAGE_ID_CREATEGEOMETRYSHADERWITHSTREAMOUTPUT_INVALIDNUMSTREAMS:
D3D11_MESSAGE_ID = D3D11_MESSAGE_ID(2097156i32);
pub const D3D11_MESSAGE_ID_CREATEGEOMETRYSHADERWITHSTREAMOUTPUT_INVALIDNUMSTRIDES:
D3D11_MESSAGE_ID = D3D11_MESSAGE_ID(2097172i32);
pub const D3D11_MESSAGE_ID_CREATEGEOMETRYSHADERWITHSTREAMOUTPUT_INVALIDOUTPUTSLOT:
D3D11_MESSAGE_ID = D3D11_MESSAGE_ID(179i32);
pub const D3D11_MESSAGE_ID_CREATEGEOMETRYSHADERWITHSTREAMOUTPUT_INVALIDOUTPUTSTREAMSTRIDE:
D3D11_MESSAGE_ID = D3D11_MESSAGE_ID(185i32);
pub const D3D11_MESSAGE_ID_CREATEGEOMETRYSHADERWITHSTREAMOUTPUT_INVALIDSHADERBYTECODE:
D3D11_MESSAGE_ID = D3D11_MESSAGE_ID(172i32);
pub const D3D11_MESSAGE_ID_CREATEGEOMETRYSHADERWITHSTREAMOUTPUT_INVALIDSHADERTYPE:
D3D11_MESSAGE_ID = D3D11_MESSAGE_ID(173i32);
pub const D3D11_MESSAGE_ID_CREATEGEOMETRYSHADERWITHSTREAMOUTPUT_INVALIDSTARTCOMPONENTANDCOMPONENTCOUNT: D3D11_MESSAGE_ID = D3D11_MESSAGE_ID(182i32);
pub const D3D11_MESSAGE_ID_CREATEGEOMETRYSHADERWITHSTREAMOUTPUT_INVALIDSTREAM: D3D11_MESSAGE_ID =
D3D11_MESSAGE_ID(2097169i32);
pub const D3D11_MESSAGE_ID_CREATEGEOMETRYSHADERWITHSTREAMOUTPUT_INVALIDSTREAMTORASTERIZER:
D3D11_MESSAGE_ID = D3D11_MESSAGE_ID(2097157i32);
pub const D3D11_MESSAGE_ID_CREATEGEOMETRYSHADERWITHSTREAMOUTPUT_MASKMISMATCH: D3D11_MESSAGE_ID =
D3D11_MESSAGE_ID(187i32);
pub const D3D11_MESSAGE_ID_CREATEGEOMETRYSHADERWITHSTREAMOUTPUT_MISSINGOUTPUTSIGNATURE:
D3D11_MESSAGE_ID = D3D11_MESSAGE_ID(190i32);
pub const D3D11_MESSAGE_ID_CREATEGEOMETRYSHADERWITHSTREAMOUTPUT_MISSINGSEMANTIC: D3D11_MESSAGE_ID =
D3D11_MESSAGE_ID(186i32);
pub const D3D11_MESSAGE_ID_CREATEGEOMETRYSHADERWITHSTREAMOUTPUT_ONLYONEELEMENTPERSLOT:
D3D11_MESSAGE_ID = D3D11_MESSAGE_ID(180i32);
pub const D3D11_MESSAGE_ID_CREATEGEOMETRYSHADERWITHSTREAMOUTPUT_OUTOFMEMORY: D3D11_MESSAGE_ID =
D3D11_MESSAGE_ID(171i32);
pub const D3D11_MESSAGE_ID_CREATEGEOMETRYSHADERWITHSTREAMOUTPUT_OUTPUTSLOT0EXPECTED:
D3D11_MESSAGE_ID = D3D11_MESSAGE_ID(178i32);
pub const D3D11_MESSAGE_ID_CREATEGEOMETRYSHADERWITHSTREAMOUTPUT_OUTPUTSTREAMSTRIDEUNUSED:
D3D11_MESSAGE_ID = D3D11_MESSAGE_ID(175i32);
pub const D3D11_MESSAGE_ID_CREATEGEOMETRYSHADERWITHSTREAMOUTPUT_REPEATEDOUTPUT: D3D11_MESSAGE_ID =
D3D11_MESSAGE_ID(184i32);
pub const D3D11_MESSAGE_ID_CREATEGEOMETRYSHADERWITHSTREAMOUTPUT_TRAILING_DIGIT_IN_SEMANTIC:
D3D11_MESSAGE_ID = D3D11_MESSAGE_ID(386i32);
pub const D3D11_MESSAGE_ID_CREATEGEOMETRYSHADERWITHSTREAMOUTPUT_UNEXPECTEDDECL: D3D11_MESSAGE_ID =
D3D11_MESSAGE_ID(176i32);
pub const D3D11_MESSAGE_ID_CREATEGEOMETRYSHADERWITHSTREAMOUTPUT_UNEXPECTEDENTRIES:
D3D11_MESSAGE_ID = D3D11_MESSAGE_ID(2097170i32);
pub const D3D11_MESSAGE_ID_CREATEGEOMETRYSHADERWITHSTREAMOUTPUT_UNEXPECTEDSTREAMS:
D3D11_MESSAGE_ID = D3D11_MESSAGE_ID(2097158i32);
pub const D3D11_MESSAGE_ID_CREATEGEOMETRYSHADERWITHSTREAMOUTPUT_UNEXPECTEDSTRIDES:
D3D11_MESSAGE_ID = D3D11_MESSAGE_ID(2097171i32);
pub const D3D11_MESSAGE_ID_CREATEGEOMETRYSHADER_INVALIDCLASSLINKAGE: D3D11_MESSAGE_ID =
D3D11_MESSAGE_ID(2097155i32);
pub const D3D11_MESSAGE_ID_CREATEGEOMETRYSHADER_INVALIDSHADERBYTECODE: D3D11_MESSAGE_ID =
D3D11_MESSAGE_ID(169i32);
pub const D3D11_MESSAGE_ID_CREATEGEOMETRYSHADER_INVALIDSHADERTYPE: D3D11_MESSAGE_ID =
D3D11_MESSAGE_ID(170i32);
pub const D3D11_MESSAGE_ID_CREATEGEOMETRYSHADER_OUTOFMEMORY: D3D11_MESSAGE_ID =
D3D11_MESSAGE_ID(168i32);
pub const D3D11_MESSAGE_ID_CREATEHULLSHADER_INVALIDCALL: D3D11_MESSAGE_ID =
D3D11_MESSAGE_ID(2097177i32);
pub const D3D11_MESSAGE_ID_CREATEHULLSHADER_INVALIDCLASSLINKAGE: D3D11_MESSAGE_ID =
D3D11_MESSAGE_ID(2097181i32);
pub const D3D11_MESSAGE_ID_CREATEHULLSHADER_INVALIDSHADERBYTECODE: D3D11_MESSAGE_ID =
D3D11_MESSAGE_ID(2097179i32);
pub const D3D11_MESSAGE_ID_CREATEHULLSHADER_INVALIDSHADERTYPE: D3D11_MESSAGE_ID =
D3D11_MESSAGE_ID(2097180i32);
pub const D3D11_MESSAGE_ID_CREATEHULLSHADER_OUTOFMEMORY: D3D11_MESSAGE_ID =
D3D11_MESSAGE_ID(2097178i32);
pub const D3D11_MESSAGE_ID_CREATEINPUTLAYOUT_DUPLICATESEMANTIC: D3D11_MESSAGE_ID =
D3D11_MESSAGE_ID(160i32);
pub const D3D11_MESSAGE_ID_CREATEINPUTLAYOUT_EMPTY_LAYOUT: D3D11_MESSAGE_ID =
D3D11_MESSAGE_ID(420i32);
pub const D3D11_MESSAGE_ID_CREATEINPUTLAYOUT_INCOMPATIBLEFORMAT: D3D11_MESSAGE_ID =
D3D11_MESSAGE_ID(153i32);
pub const D3D11_MESSAGE_ID_CREATEINPUTLAYOUT_INVALIDALIGNMENT: D3D11_MESSAGE_ID =
D3D11_MESSAGE_ID(159i32);
pub const D3D11_MESSAGE_ID_CREATEINPUTLAYOUT_INVALIDFORMAT: D3D11_MESSAGE_ID =
D3D11_MESSAGE_ID(152i32);
pub const D3D11_MESSAGE_ID_CREATEINPUTLAYOUT_INVALIDINPUTSLOTCLASS: D3D11_MESSAGE_ID =
D3D11_MESSAGE_ID(155i32);
pub const D3D11_MESSAGE_ID_CREATEINPUTLAYOUT_INVALIDSLOT: D3D11_MESSAGE_ID =
D3D11_MESSAGE_ID(154i32);
pub const D3D11_MESSAGE_ID_CREATEINPUTLAYOUT_INVALIDSLOTCLASSCHANGE: D3D11_MESSAGE_ID =
D3D11_MESSAGE_ID(157i32);
pub const D3D11_MESSAGE_ID_CREATEINPUTLAYOUT_INVALIDSTEPRATECHANGE: D3D11_MESSAGE_ID =
D3D11_MESSAGE_ID(158i32);
pub const D3D11_MESSAGE_ID_CREATEINPUTLAYOUT_LEVEL9_INSTANCING_NOT_SUPPORTED: D3D11_MESSAGE_ID =
D3D11_MESSAGE_ID(3146124i32);
pub const D3D11_MESSAGE_ID_CREATEINPUTLAYOUT_LEVEL9_STEPRATE_NOT_1: D3D11_MESSAGE_ID =
D3D11_MESSAGE_ID(3146123i32);
pub const D3D11_MESSAGE_ID_CREATEINPUTLAYOUT_MISSINGELEMENT: D3D11_MESSAGE_ID =
D3D11_MESSAGE_ID(163i32);
pub const D3D11_MESSAGE_ID_CREATEINPUTLAYOUT_NULLDESC: D3D11_MESSAGE_ID = D3D11_MESSAGE_ID(164i32);
pub const D3D11_MESSAGE_ID_CREATEINPUTLAYOUT_NULLSEMANTIC: D3D11_MESSAGE_ID =
D3D11_MESSAGE_ID(162i32);
pub const D3D11_MESSAGE_ID_CREATEINPUTLAYOUT_OUTOFMEMORY: D3D11_MESSAGE_ID =
D3D11_MESSAGE_ID(150i32);
pub const D3D11_MESSAGE_ID_CREATEINPUTLAYOUT_STEPRATESLOTCLASSMISMATCH: D3D11_MESSAGE_ID =
D3D11_MESSAGE_ID(156i32);
pub const D3D11_MESSAGE_ID_CREATEINPUTLAYOUT_TOOMANYELEMENTS: D3D11_MESSAGE_ID =
D3D11_MESSAGE_ID(151i32);
pub const D3D11_MESSAGE_ID_CREATEINPUTLAYOUT_TRAILING_DIGIT_IN_SEMANTIC: D3D11_MESSAGE_ID =
D3D11_MESSAGE_ID(385i32);
pub const D3D11_MESSAGE_ID_CREATEINPUTLAYOUT_TYPE_MISMATCH: D3D11_MESSAGE_ID =
D3D11_MESSAGE_ID(391i32);
pub const D3D11_MESSAGE_ID_CREATEINPUTLAYOUT_UNPARSEABLEINPUTSIGNATURE: D3D11_MESSAGE_ID =
D3D11_MESSAGE_ID(161i32);
pub const D3D11_MESSAGE_ID_CREATEINPUTLAYOUT_UNSUPPORTED_FORMAT: D3D11_MESSAGE_ID =
D3D11_MESSAGE_ID(1048599i32);
pub const D3D11_MESSAGE_ID_CREATEPIXELSHADER_INVALIDCLASSLINKAGE: D3D11_MESSAGE_ID =
D3D11_MESSAGE_ID(2097160i32);
pub const D3D11_MESSAGE_ID_CREATEPIXELSHADER_INVALIDSHADERBYTECODE: D3D11_MESSAGE_ID =
D3D11_MESSAGE_ID(192i32);
pub const D3D11_MESSAGE_ID_CREATEPIXELSHADER_INVALIDSHADERTYPE: D3D11_MESSAGE_ID =
D3D11_MESSAGE_ID(193i32);
pub const D3D11_MESSAGE_ID_CREATEPIXELSHADER_OUTOFMEMORY: D3D11_MESSAGE_ID =
D3D11_MESSAGE_ID(191i32);
pub const D3D11_MESSAGE_ID_CREATEPREDICATE_OUTOFMEMORY_RETURN: D3D11_MESSAGE_ID =
D3D11_MESSAGE_ID(395i32);
pub const D3D11_MESSAGE_ID_CREATEQUERYORPREDICATE_DECODENOTSUPPORTED: D3D11_MESSAGE_ID =
D3D11_MESSAGE_ID(3146158i32);
pub const D3D11_MESSAGE_ID_CREATEQUERYORPREDICATE_ENCODENOTSUPPORTED: D3D11_MESSAGE_ID =
D3D11_MESSAGE_ID(3146159i32);
pub const D3D11_MESSAGE_ID_CREATEQUERYORPREDICATE_INVALIDCONTEXTTYPE: D3D11_MESSAGE_ID =
D3D11_MESSAGE_ID(3146157i32);
pub const D3D11_MESSAGE_ID_CREATEQUERYORPREDICATE_INVALIDMISCFLAGS: D3D11_MESSAGE_ID =
D3D11_MESSAGE_ID(233i32);
pub const D3D11_MESSAGE_ID_CREATEQUERYORPREDICATE_INVALIDQUERY: D3D11_MESSAGE_ID =
D3D11_MESSAGE_ID(232i32);
pub const D3D11_MESSAGE_ID_CREATEQUERYORPREDICATE_NULLDESC: D3D11_MESSAGE_ID =
D3D11_MESSAGE_ID(235i32);
pub const D3D11_MESSAGE_ID_CREATEQUERYORPREDICATE_UNEXPECTEDMISCFLAG: D3D11_MESSAGE_ID =
D3D11_MESSAGE_ID(234i32);
pub const D3D11_MESSAGE_ID_CREATEQUERYORPREDICATE_UNSUPPORTEDCONTEXTTTYPEFORQUERY:
D3D11_MESSAGE_ID = D3D11_MESSAGE_ID(3146222i32);
pub const D3D11_MESSAGE_ID_CREATEQUERY_OUTOFMEMORY_RETURN: D3D11_MESSAGE_ID =
D3D11_MESSAGE_ID(394i32);
pub const D3D11_MESSAGE_ID_CREATERASTERIZERSTATE_DepthBiasClamp_NOT_SUPPORTED: D3D11_MESSAGE_ID =
D3D11_MESSAGE_ID(1048578i32);
pub const D3D11_MESSAGE_ID_CREATERASTERIZERSTATE_DepthClipEnable_MUST_BE_TRUE: D3D11_MESSAGE_ID =
D3D11_MESSAGE_ID(1048601i32);
pub const D3D11_MESSAGE_ID_CREATERASTERIZERSTATE_INVALIDCULLMODE: D3D11_MESSAGE_ID =
D3D11_MESSAGE_ID(195i32);
pub const D3D11_MESSAGE_ID_CREATERASTERIZERSTATE_INVALIDDEPTHBIASCLAMP: D3D11_MESSAGE_ID =
D3D11_MESSAGE_ID(196i32);
pub const D3D11_MESSAGE_ID_CREATERASTERIZERSTATE_INVALIDFILLMODE: D3D11_MESSAGE_ID =
D3D11_MESSAGE_ID(194i32);
pub const D3D11_MESSAGE_ID_CREATERASTERIZERSTATE_INVALIDFORCEDSAMPLECOUNT: D3D11_MESSAGE_ID =
D3D11_MESSAGE_ID(3145757i32);
pub const D3D11_MESSAGE_ID_CREATERASTERIZERSTATE_INVALIDSLOPESCALEDDEPTHBIAS: D3D11_MESSAGE_ID =
D3D11_MESSAGE_ID(197i32);
pub const D3D11_MESSAGE_ID_CREATERASTERIZERSTATE_INVALID_CONSERVATIVERASTERMODE: D3D11_MESSAGE_ID =
D3D11_MESSAGE_ID(3146155i32);
pub const D3D11_MESSAGE_ID_CREATERASTERIZERSTATE_NULLDESC: D3D11_MESSAGE_ID =
D3D11_MESSAGE_ID(199i32);
pub const D3D11_MESSAGE_ID_CREATERASTERIZERSTATE_TOOMANYOBJECTS: D3D11_MESSAGE_ID =
D3D11_MESSAGE_ID(198i32);
pub const D3D11_MESSAGE_ID_CREATERENDERTARGETVIEW_AMBIGUOUSVIDEOPLANEINDEX: D3D11_MESSAGE_ID =
D3D11_MESSAGE_ID(3146165i32);
pub const D3D11_MESSAGE_ID_CREATERENDERTARGETVIEW_INVALIDARG_RETURN: D3D11_MESSAGE_ID =
D3D11_MESSAGE_ID(140i32);
pub const D3D11_MESSAGE_ID_CREATERENDERTARGETVIEW_INVALIDDARRAYWITHDECODER: D3D11_MESSAGE_ID =
D3D11_MESSAGE_ID(3145944i32);
pub const D3D11_MESSAGE_ID_CREATERENDERTARGETVIEW_INVALIDDESC: D3D11_MESSAGE_ID =
D3D11_MESSAGE_ID(135i32);
pub const D3D11_MESSAGE_ID_CREATERENDERTARGETVIEW_INVALIDDIMENSIONS: D3D11_MESSAGE_ID =
D3D11_MESSAGE_ID(137i32);
pub const D3D11_MESSAGE_ID_CREATERENDERTARGETVIEW_INVALIDFORMAT: D3D11_MESSAGE_ID =
D3D11_MESSAGE_ID(136i32);
pub const D3D11_MESSAGE_ID_CREATERENDERTARGETVIEW_INVALIDPLANEINDEX: D3D11_MESSAGE_ID =
D3D11_MESSAGE_ID(3146163i32);
pub const D3D11_MESSAGE_ID_CREATERENDERTARGETVIEW_INVALIDRESOURCE: D3D11_MESSAGE_ID =
D3D11_MESSAGE_ID(138i32);
pub const D3D11_MESSAGE_ID_CREATERENDERTARGETVIEW_INVALIDVIDEOPLANEINDEX: D3D11_MESSAGE_ID =
D3D11_MESSAGE_ID(3146164i32);
pub const D3D11_MESSAGE_ID_CREATERENDERTARGETVIEW_OUTOFMEMORY_RETURN: D3D11_MESSAGE_ID =
D3D11_MESSAGE_ID(141i32);
pub const D3D11_MESSAGE_ID_CREATERENDERTARGETVIEW_TOOMANYOBJECTS: D3D11_MESSAGE_ID =
D3D11_MESSAGE_ID(139i32);
pub const D3D11_MESSAGE_ID_CREATERENDERTARGETVIEW_UNRECOGNIZEDFORMAT: D3D11_MESSAGE_ID =
D3D11_MESSAGE_ID(133i32);
pub const D3D11_MESSAGE_ID_CREATERENDERTARGETVIEW_UNSUPPORTEDFORMAT: D3D11_MESSAGE_ID =
D3D11_MESSAGE_ID(134i32);
pub const D3D11_MESSAGE_ID_CREATERESOURCE_DIMENSION_EXCEEDS_FEATURE_LEVEL_DEFINITION:
D3D11_MESSAGE_ID = D3D11_MESSAGE_ID(1048630i32);
pub const D3D11_MESSAGE_ID_CREATERESOURCE_DIMENSION_OUT_OF_RANGE: D3D11_MESSAGE_ID =
D3D11_MESSAGE_ID(1048588i32);
pub const D3D11_MESSAGE_ID_CREATERESOURCE_DXGI_FORMAT_R8G8B8A8_CANNOT_BE_SHARED: D3D11_MESSAGE_ID =
D3D11_MESSAGE_ID(1048617i32);
pub const D3D11_MESSAGE_ID_CREATERESOURCE_MSAA_PRECLUDES_SHADER_RESOURCE: D3D11_MESSAGE_ID =
D3D11_MESSAGE_ID(1048610i32);
pub const D3D11_MESSAGE_ID_CREATERESOURCE_NON_POW_2_MIPMAP: D3D11_MESSAGE_ID =
D3D11_MESSAGE_ID(1048634i32);
pub const D3D11_MESSAGE_ID_CREATERESOURCE_NOT_BINDABLE_AS_RENDER_TARGET: D3D11_MESSAGE_ID =
D3D11_MESSAGE_ID(1048608i32);
pub const D3D11_MESSAGE_ID_CREATERESOURCE_NOT_BINDABLE_AS_SHADER_RESOURCE: D3D11_MESSAGE_ID =
D3D11_MESSAGE_ID(1048589i32);
pub const D3D11_MESSAGE_ID_CREATERESOURCE_NO_ARRAYS: D3D11_MESSAGE_ID =
D3D11_MESSAGE_ID(1048585i32);
pub const D3D11_MESSAGE_ID_CREATERESOURCE_NO_AUTOGEN_FOR_VOLUMES: D3D11_MESSAGE_ID =
D3D11_MESSAGE_ID(1048616i32);
pub const D3D11_MESSAGE_ID_CREATERESOURCE_NO_DWORD_INDEX_BUFFER: D3D11_MESSAGE_ID =
D3D11_MESSAGE_ID(1048609i32);
pub const D3D11_MESSAGE_ID_CREATERESOURCE_NO_STREAM_OUT: D3D11_MESSAGE_ID =
D3D11_MESSAGE_ID(1048614i32);
pub const D3D11_MESSAGE_ID_CREATERESOURCE_NO_TEXTURE_1D: D3D11_MESSAGE_ID =
D3D11_MESSAGE_ID(1048587i32);
pub const D3D11_MESSAGE_ID_CREATERESOURCE_NO_VB_AND_IB_BIND: D3D11_MESSAGE_ID =
D3D11_MESSAGE_ID(1048586i32);
pub const D3D11_MESSAGE_ID_CREATERESOURCE_ONLY_SINGLE_MIP_LEVEL_DEPTH_STENCIL_SUPPORTED:
D3D11_MESSAGE_ID = D3D11_MESSAGE_ID(1048631i32);
pub const D3D11_MESSAGE_ID_CREATERESOURCE_ONLY_VB_IB_FOR_BUFFERS: D3D11_MESSAGE_ID =
D3D11_MESSAGE_ID(1048615i32);
pub const D3D11_MESSAGE_ID_CREATERESOURCE_PRESENTATION_PRECLUDES_SHADER_RESOURCE: D3D11_MESSAGE_ID =
D3D11_MESSAGE_ID(1048611i32);
pub const D3D11_MESSAGE_ID_CREATESAMPLERSTATE_BORDER_NOT_SUPPORTED: D3D11_MESSAGE_ID =
D3D11_MESSAGE_ID(1048635i32);
pub const D3D11_MESSAGE_ID_CREATESAMPLERSTATE_BORDER_OUT_OF_RANGE: D3D11_MESSAGE_ID =
D3D11_MESSAGE_ID(1048581i32);
pub const D3D11_MESSAGE_ID_CREATESAMPLERSTATE_EXCESSIVE_ANISOTROPY: D3D11_MESSAGE_ID =
D3D11_MESSAGE_ID(1048580i32);
pub const D3D11_MESSAGE_ID_CREATESAMPLERSTATE_INVALIDADDRESSU: D3D11_MESSAGE_ID =
D3D11_MESSAGE_ID(222i32);
pub const D3D11_MESSAGE_ID_CREATESAMPLERSTATE_INVALIDADDRESSV: D3D11_MESSAGE_ID =
D3D11_MESSAGE_ID(223i32);
pub const D3D11_MESSAGE_ID_CREATESAMPLERSTATE_INVALIDADDRESSW: D3D11_MESSAGE_ID =
D3D11_MESSAGE_ID(224i32);
pub const D3D11_MESSAGE_ID_CREATESAMPLERSTATE_INVALIDCOMPARISONFUNC: D3D11_MESSAGE_ID =
D3D11_MESSAGE_ID(227i32);
pub const D3D11_MESSAGE_ID_CREATESAMPLERSTATE_INVALIDFILTER: D3D11_MESSAGE_ID =
D3D11_MESSAGE_ID(221i32);
pub const D3D11_MESSAGE_ID_CREATESAMPLERSTATE_INVALIDMAXANISOTROPY: D3D11_MESSAGE_ID =
D3D11_MESSAGE_ID(226i32);
pub const D3D11_MESSAGE_ID_CREATESAMPLERSTATE_INVALIDMAXLOD: D3D11_MESSAGE_ID =
D3D11_MESSAGE_ID(229i32);
pub const D3D11_MESSAGE_ID_CREATESAMPLERSTATE_INVALIDMINLOD: D3D11_MESSAGE_ID =
D3D11_MESSAGE_ID(228i32);
pub const D3D11_MESSAGE_ID_CREATESAMPLERSTATE_INVALIDMIPLODBIAS: D3D11_MESSAGE_ID =
D3D11_MESSAGE_ID(225i32);
pub const D3D11_MESSAGE_ID_CREATESAMPLERSTATE_MAXLOD_MUST_BE_FLT_MAX: D3D11_MESSAGE_ID =
D3D11_MESSAGE_ID(1048605i32);
pub const D3D11_MESSAGE_ID_CREATESAMPLERSTATE_MINLOD_MUST_NOT_BE_FRACTIONAL: D3D11_MESSAGE_ID =
D3D11_MESSAGE_ID(1048604i32);
pub const D3D11_MESSAGE_ID_CREATESAMPLERSTATE_NO_COMPARISON_SUPPORT: D3D11_MESSAGE_ID =
D3D11_MESSAGE_ID(1048579i32);
pub const D3D11_MESSAGE_ID_CREATESAMPLERSTATE_NO_MIRRORONCE: D3D11_MESSAGE_ID =
D3D11_MESSAGE_ID(1048625i32);
pub const D3D11_MESSAGE_ID_CREATESAMPLERSTATE_NULLDESC: D3D11_MESSAGE_ID = D3D11_MESSAGE_ID(231i32);
pub const D3D11_MESSAGE_ID_CREATESAMPLERSTATE_TOOMANYOBJECTS: D3D11_MESSAGE_ID =
D3D11_MESSAGE_ID(230i32);
pub const D3D11_MESSAGE_ID_CREATESHADERRESESOURCEVIEW_TOOMANYOBJECTS: D3D11_MESSAGE_ID =
D3D11_MESSAGE_ID(2097359i32);
pub const D3D11_MESSAGE_ID_CREATESHADERRESOURCEVIEW_AMBIGUOUSVIDEOPLANEINDEX: D3D11_MESSAGE_ID =
D3D11_MESSAGE_ID(3146162i32);
pub const D3D11_MESSAGE_ID_CREATESHADERRESOURCEVIEW_CUBES_MUST_HAVE_6_SIDES: D3D11_MESSAGE_ID =
D3D11_MESSAGE_ID(1048607i32);
pub const D3D11_MESSAGE_ID_CREATESHADERRESOURCEVIEW_FIRSTARRAYSLICE_MUST_BE_ZERO: D3D11_MESSAGE_ID =
D3D11_MESSAGE_ID(1048606i32);
pub const D3D11_MESSAGE_ID_CREATESHADERRESOURCEVIEW_INVALIDARG_RETURN: D3D11_MESSAGE_ID =
D3D11_MESSAGE_ID(131i32);
pub const D3D11_MESSAGE_ID_CREATESHADERRESOURCEVIEW_INVALIDDARRAYWITHDECODER: D3D11_MESSAGE_ID =
D3D11_MESSAGE_ID(3145942i32);
pub const D3D11_MESSAGE_ID_CREATESHADERRESOURCEVIEW_INVALIDDESC: D3D11_MESSAGE_ID =
D3D11_MESSAGE_ID(126i32);
pub const D3D11_MESSAGE_ID_CREATESHADERRESOURCEVIEW_INVALIDDIMENSIONS: D3D11_MESSAGE_ID =
D3D11_MESSAGE_ID(128i32);
pub const D3D11_MESSAGE_ID_CREATESHADERRESOURCEVIEW_INVALIDFLAGS: D3D11_MESSAGE_ID =
D3D11_MESSAGE_ID(2097340i32);
pub const D3D11_MESSAGE_ID_CREATESHADERRESOURCEVIEW_INVALIDFORMAT: D3D11_MESSAGE_ID =
D3D11_MESSAGE_ID(127i32);
pub const D3D11_MESSAGE_ID_CREATESHADERRESOURCEVIEW_INVALIDPLANEINDEX: D3D11_MESSAGE_ID =
D3D11_MESSAGE_ID(3146160i32);
pub const D3D11_MESSAGE_ID_CREATESHADERRESOURCEVIEW_INVALIDRESOURCE: D3D11_MESSAGE_ID =
D3D11_MESSAGE_ID(129i32);
pub const D3D11_MESSAGE_ID_CREATESHADERRESOURCEVIEW_INVALIDVIDEOPLANEINDEX: D3D11_MESSAGE_ID =
D3D11_MESSAGE_ID(3146161i32);
pub const D3D11_MESSAGE_ID_CREATESHADERRESOURCEVIEW_MUST_USE_LOWEST_LOD: D3D11_MESSAGE_ID =
D3D11_MESSAGE_ID(1048603i32);
pub const D3D11_MESSAGE_ID_CREATESHADERRESOURCEVIEW_OUTOFMEMORY_RETURN: D3D11_MESSAGE_ID =
D3D11_MESSAGE_ID(132i32);
pub const D3D11_MESSAGE_ID_CREATESHADERRESOURCEVIEW_TOOMANYOBJECTS: D3D11_MESSAGE_ID =
D3D11_MESSAGE_ID(130i32);
pub const D3D11_MESSAGE_ID_CREATESHADERRESOURCEVIEW_UNRECOGNIZEDFORMAT: D3D11_MESSAGE_ID =
D3D11_MESSAGE_ID(125i32);
pub const D3D11_MESSAGE_ID_CREATETEXTURE1D_INVALIDARG_RETURN: D3D11_MESSAGE_ID =
D3D11_MESSAGE_ID(87i32);
pub const D3D11_MESSAGE_ID_CREATETEXTURE1D_INVALIDBINDFLAGS: D3D11_MESSAGE_ID =
D3D11_MESSAGE_ID(82i32);
pub const D3D11_MESSAGE_ID_CREATETEXTURE1D_INVALIDCPUACCESSFLAGS: D3D11_MESSAGE_ID =
D3D11_MESSAGE_ID(81i32);
pub const D3D11_MESSAGE_ID_CREATETEXTURE1D_INVALIDDIMENSIONS: D3D11_MESSAGE_ID =
D3D11_MESSAGE_ID(84i32);
pub const D3D11_MESSAGE_ID_CREATETEXTURE1D_INVALIDINITIALDATA: D3D11_MESSAGE_ID =
D3D11_MESSAGE_ID(83i32);
pub const D3D11_MESSAGE_ID_CREATETEXTURE1D_INVALIDMIPLEVELS: D3D11_MESSAGE_ID =
D3D11_MESSAGE_ID(85i32);
pub const D3D11_MESSAGE_ID_CREATETEXTURE1D_INVALIDMISCFLAGS: D3D11_MESSAGE_ID =
D3D11_MESSAGE_ID(86i32);
pub const D3D11_MESSAGE_ID_CREATETEXTURE1D_INVALIDSAMPLES: D3D11_MESSAGE_ID =
D3D11_MESSAGE_ID(76i32);
pub const D3D11_MESSAGE_ID_CREATETEXTURE1D_INVALIDUSAGE: D3D11_MESSAGE_ID =
D3D11_MESSAGE_ID(3146121i32);
pub const D3D11_MESSAGE_ID_CREATETEXTURE1D_LARGEALLOCATION: D3D11_MESSAGE_ID =
D3D11_MESSAGE_ID(90i32);
pub const D3D11_MESSAGE_ID_CREATETEXTURE1D_NULLDESC: D3D11_MESSAGE_ID = D3D11_MESSAGE_ID(89i32);
pub const D3D11_MESSAGE_ID_CREATETEXTURE1D_OUTOFMEMORY_RETURN: D3D11_MESSAGE_ID =
D3D11_MESSAGE_ID(88i32);
pub const D3D11_MESSAGE_ID_CREATETEXTURE1D_UNRECOGNIZEDBINDFLAGS: D3D11_MESSAGE_ID =
D3D11_MESSAGE_ID(78i32);
pub const D3D11_MESSAGE_ID_CREATETEXTURE1D_UNRECOGNIZEDCPUACCESSFLAGS: D3D11_MESSAGE_ID =
D3D11_MESSAGE_ID(79i32);
pub const D3D11_MESSAGE_ID_CREATETEXTURE1D_UNRECOGNIZEDFORMAT: D3D11_MESSAGE_ID =
D3D11_MESSAGE_ID(74i32);
pub const D3D11_MESSAGE_ID_CREATETEXTURE1D_UNRECOGNIZEDMISCFLAGS: D3D11_MESSAGE_ID =
D3D11_MESSAGE_ID(80i32);
pub const D3D11_MESSAGE_ID_CREATETEXTURE1D_UNRECOGNIZEDUSAGE: D3D11_MESSAGE_ID =
D3D11_MESSAGE_ID(77i32);
pub const D3D11_MESSAGE_ID_CREATETEXTURE1D_UNSUPPORTEDFORMAT: D3D11_MESSAGE_ID =
D3D11_MESSAGE_ID(75i32);
pub const D3D11_MESSAGE_ID_CREATETEXTURE2D_INVALIDARG_RETURN: D3D11_MESSAGE_ID =
D3D11_MESSAGE_ID(104i32);
pub const D3D11_MESSAGE_ID_CREATETEXTURE2D_INVALIDBINDFLAGS: D3D11_MESSAGE_ID =
D3D11_MESSAGE_ID(99i32);
pub const D3D11_MESSAGE_ID_CREATETEXTURE2D_INVALIDCPUACCESSFLAGS: D3D11_MESSAGE_ID =
D3D11_MESSAGE_ID(98i32);
pub const D3D11_MESSAGE_ID_CREATETEXTURE2D_INVALIDDIMENSIONS: D3D11_MESSAGE_ID =
D3D11_MESSAGE_ID(101i32);
pub const D3D11_MESSAGE_ID_CREATETEXTURE2D_INVALIDINITIALDATA: D3D11_MESSAGE_ID =
D3D11_MESSAGE_ID(100i32);
pub const D3D11_MESSAGE_ID_CREATETEXTURE2D_INVALIDMIPLEVELS: D3D11_MESSAGE_ID =
D3D11_MESSAGE_ID(102i32);
pub const D3D11_MESSAGE_ID_CREATETEXTURE2D_INVALIDMISCFLAGS: D3D11_MESSAGE_ID =
D3D11_MESSAGE_ID(103i32);
pub const D3D11_MESSAGE_ID_CREATETEXTURE2D_INVALIDSAMPLES: D3D11_MESSAGE_ID =
D3D11_MESSAGE_ID(93i32);
pub const D3D11_MESSAGE_ID_CREATETEXTURE2D_INVALIDUSAGE: D3D11_MESSAGE_ID =
D3D11_MESSAGE_ID(3146122i32);
pub const D3D11_MESSAGE_ID_CREATETEXTURE2D_LARGEALLOCATION: D3D11_MESSAGE_ID =
D3D11_MESSAGE_ID(107i32);
pub const D3D11_MESSAGE_ID_CREATETEXTURE2D_NULLDESC: D3D11_MESSAGE_ID = D3D11_MESSAGE_ID(106i32);
pub const D3D11_MESSAGE_ID_CREATETEXTURE2D_OUTOFMEMORY_RETURN: D3D11_MESSAGE_ID =
D3D11_MESSAGE_ID(105i32);
pub const D3D11_MESSAGE_ID_CREATETEXTURE2D_UNRECOGNIZEDBINDFLAGS: D3D11_MESSAGE_ID =
D3D11_MESSAGE_ID(95i32);
pub const D3D11_MESSAGE_ID_CREATETEXTURE2D_UNRECOGNIZEDCPUACCESSFLAGS: D3D11_MESSAGE_ID =
D3D11_MESSAGE_ID(96i32);
pub const D3D11_MESSAGE_ID_CREATETEXTURE2D_UNRECOGNIZEDFORMAT: D3D11_MESSAGE_ID =
D3D11_MESSAGE_ID(91i32);
pub const D3D11_MESSAGE_ID_CREATETEXTURE2D_UNRECOGNIZEDMISCFLAGS: D3D11_MESSAGE_ID =
D3D11_MESSAGE_ID(97i32);
pub const D3D11_MESSAGE_ID_CREATETEXTURE2D_UNRECOGNIZEDUSAGE: D3D11_MESSAGE_ID =
D3D11_MESSAGE_ID(94i32);
pub const D3D11_MESSAGE_ID_CREATETEXTURE2D_UNSUPPORTEDFORMAT: D3D11_MESSAGE_ID =
D3D11_MESSAGE_ID(92i32);
pub const D3D11_MESSAGE_ID_CREATETEXTURE3D_INVALIDARG_RETURN: D3D11_MESSAGE_ID =
D3D11_MESSAGE_ID(121i32);
pub const D3D11_MESSAGE_ID_CREATETEXTURE3D_INVALIDBINDFLAGS: D3D11_MESSAGE_ID =
D3D11_MESSAGE_ID(116i32);
pub const D3D11_MESSAGE_ID_CREATETEXTURE3D_INVALIDCPUACCESSFLAGS: D3D11_MESSAGE_ID =
D3D11_MESSAGE_ID(115i32);
pub const D3D11_MESSAGE_ID_CREATETEXTURE3D_INVALIDDIMENSIONS: D3D11_MESSAGE_ID =
D3D11_MESSAGE_ID(118i32);
pub const D3D11_MESSAGE_ID_CREATETEXTURE3D_INVALIDINITIALDATA: D3D11_MESSAGE_ID =
D3D11_MESSAGE_ID(117i32);
pub const D3D11_MESSAGE_ID_CREATETEXTURE3D_INVALIDMIPLEVELS: D3D11_MESSAGE_ID =
D3D11_MESSAGE_ID(119i32);
pub const D3D11_MESSAGE_ID_CREATETEXTURE3D_INVALIDMISCFLAGS: D3D11_MESSAGE_ID =
D3D11_MESSAGE_ID(120i32);
pub const D3D11_MESSAGE_ID_CREATETEXTURE3D_INVALIDSAMPLES: D3D11_MESSAGE_ID =
D3D11_MESSAGE_ID(110i32);
pub const D3D11_MESSAGE_ID_CREATETEXTURE3D_LARGEALLOCATION: D3D11_MESSAGE_ID =
D3D11_MESSAGE_ID(124i32);
pub const D3D11_MESSAGE_ID_CREATETEXTURE3D_NULLDESC: D3D11_MESSAGE_ID = D3D11_MESSAGE_ID(123i32);
pub const D3D11_MESSAGE_ID_CREATETEXTURE3D_OUTOFMEMORY_RETURN: D3D11_MESSAGE_ID =
D3D11_MESSAGE_ID(122i32);
pub const D3D11_MESSAGE_ID_CREATETEXTURE3D_UNRECOGNIZEDBINDFLAGS: D3D11_MESSAGE_ID =
D3D11_MESSAGE_ID(112i32);
pub const D3D11_MESSAGE_ID_CREATETEXTURE3D_UNRECOGNIZEDCPUACCESSFLAGS: D3D11_MESSAGE_ID =
D3D11_MESSAGE_ID(113i32);
pub const D3D11_MESSAGE_ID_CREATETEXTURE3D_UNRECOGNIZEDFORMAT: D3D11_MESSAGE_ID =
D3D11_MESSAGE_ID(108i32);
pub const D3D11_MESSAGE_ID_CREATETEXTURE3D_UNRECOGNIZEDMISCFLAGS: D3D11_MESSAGE_ID =
D3D11_MESSAGE_ID(114i32);
pub const D3D11_MESSAGE_ID_CREATETEXTURE3D_UNRECOGNIZEDUSAGE: D3D11_MESSAGE_ID =
D3D11_MESSAGE_ID(111i32);
pub const D3D11_MESSAGE_ID_CREATETEXTURE3D_UNSUPPORTEDFORMAT: D3D11_MESSAGE_ID =
D3D11_MESSAGE_ID(109i32);
pub const D3D11_MESSAGE_ID_CREATEUNORDEREDACCESSVIEW_AMBIGUOUSVIDEOPLANEINDEX: D3D11_MESSAGE_ID =
D3D11_MESSAGE_ID(3146168i32);
pub const D3D11_MESSAGE_ID_CREATEUNORDEREDACCESSVIEW_INVALIDARG_RETURN: D3D11_MESSAGE_ID =
D3D11_MESSAGE_ID(2097351i32);
pub const D3D11_MESSAGE_ID_CREATEUNORDEREDACCESSVIEW_INVALIDDARRAYWITHDECODER: D3D11_MESSAGE_ID =
D3D11_MESSAGE_ID(3145943i32);
pub const D3D11_MESSAGE_ID_CREATEUNORDEREDACCESSVIEW_INVALIDDESC: D3D11_MESSAGE_ID =
D3D11_MESSAGE_ID(2097342i32);
pub const D3D11_MESSAGE_ID_CREATEUNORDEREDACCESSVIEW_INVALIDDIMENSIONS: D3D11_MESSAGE_ID =
D3D11_MESSAGE_ID(2097344i32);
pub const D3D11_MESSAGE_ID_CREATEUNORDEREDACCESSVIEW_INVALIDFLAGS: D3D11_MESSAGE_ID =
D3D11_MESSAGE_ID(2097358i32);
pub const D3D11_MESSAGE_ID_CREATEUNORDEREDACCESSVIEW_INVALIDFORMAT: D3D11_MESSAGE_ID =
D3D11_MESSAGE_ID(2097343i32);
pub const D3D11_MESSAGE_ID_CREATEUNORDEREDACCESSVIEW_INVALIDPLANEINDEX: D3D11_MESSAGE_ID =
D3D11_MESSAGE_ID(3146166i32);
pub const D3D11_MESSAGE_ID_CREATEUNORDEREDACCESSVIEW_INVALIDRESOURCE: D3D11_MESSAGE_ID =
D3D11_MESSAGE_ID(2097341i32);
pub const D3D11_MESSAGE_ID_CREATEUNORDEREDACCESSVIEW_INVALIDVIDEOPLANEINDEX: D3D11_MESSAGE_ID =
D3D11_MESSAGE_ID(3146167i32);
pub const D3D11_MESSAGE_ID_CREATEUNORDEREDACCESSVIEW_OUTOFMEMORY_RETURN: D3D11_MESSAGE_ID =
D3D11_MESSAGE_ID(2097352i32);
pub const D3D11_MESSAGE_ID_CREATEUNORDEREDACCESSVIEW_TOOMANYOBJECTS: D3D11_MESSAGE_ID =
D3D11_MESSAGE_ID(2097353i32);
pub const D3D11_MESSAGE_ID_CREATEUNORDEREDACCESSVIEW_UNRECOGNIZEDFORMAT: D3D11_MESSAGE_ID =
D3D11_MESSAGE_ID(2097345i32);
pub const D3D11_MESSAGE_ID_CREATEVERTEXSHADER_INVALIDCLASSLINKAGE: D3D11_MESSAGE_ID =
D3D11_MESSAGE_ID(2097154i32);
pub const D3D11_MESSAGE_ID_CREATEVERTEXSHADER_INVALIDSHADERBYTECODE: D3D11_MESSAGE_ID =
D3D11_MESSAGE_ID(166i32);
pub const D3D11_MESSAGE_ID_CREATEVERTEXSHADER_INVALIDSHADERTYPE: D3D11_MESSAGE_ID =
D3D11_MESSAGE_ID(167i32);
pub const D3D11_MESSAGE_ID_CREATEVERTEXSHADER_OUTOFMEMORY: D3D11_MESSAGE_ID =
D3D11_MESSAGE_ID(165i32);
pub const D3D11_MESSAGE_ID_CREATEVIDEODECODEROUTPUTVIEW_INVALIDARRAY: D3D11_MESSAGE_ID =
D3D11_MESSAGE_ID(3145915i32);
pub const D3D11_MESSAGE_ID_CREATEVIDEODECODEROUTPUTVIEW_INVALIDARRAYSIZE: D3D11_MESSAGE_ID =
D3D11_MESSAGE_ID(3145914i32);
pub const D3D11_MESSAGE_ID_CREATEVIDEODECODEROUTPUTVIEW_INVALIDBIND: D3D11_MESSAGE_ID =
D3D11_MESSAGE_ID(3145910i32);
pub const D3D11_MESSAGE_ID_CREATEVIDEODECODEROUTPUTVIEW_INVALIDDIMENSION: D3D11_MESSAGE_ID =
D3D11_MESSAGE_ID(3145916i32);
pub const D3D11_MESSAGE_ID_CREATEVIDEODECODEROUTPUTVIEW_INVALIDMIP: D3D11_MESSAGE_ID =
D3D11_MESSAGE_ID(3145912i32);
pub const D3D11_MESSAGE_ID_CREATEVIDEODECODEROUTPUTVIEW_INVALIDTYPE: D3D11_MESSAGE_ID =
D3D11_MESSAGE_ID(3145909i32);
pub const D3D11_MESSAGE_ID_CREATEVIDEODECODEROUTPUTVIEW_NULLPARAM: D3D11_MESSAGE_ID =
D3D11_MESSAGE_ID(3145908i32);
pub const D3D11_MESSAGE_ID_CREATEVIDEODECODEROUTPUTVIEW_OUTOFMEMORY_RETURN: D3D11_MESSAGE_ID =
D3D11_MESSAGE_ID(3145907i32);
pub const D3D11_MESSAGE_ID_CREATEVIDEODECODEROUTPUTVIEW_UNSUPPORTEDFORMAT: D3D11_MESSAGE_ID =
D3D11_MESSAGE_ID(3145911i32);
pub const D3D11_MESSAGE_ID_CREATEVIDEODECODEROUTPUTVIEW_UNSUPPORTEMIP: D3D11_MESSAGE_ID =
D3D11_MESSAGE_ID(3145913i32);
pub const D3D11_MESSAGE_ID_CREATEVIDEODECODER_DRIVER_INVALIDBUFFERSIZE: D3D11_MESSAGE_ID =
D3D11_MESSAGE_ID(3145762i32);
pub const D3D11_MESSAGE_ID_CREATEVIDEODECODER_DRIVER_INVALIDBUFFERUSAGE: D3D11_MESSAGE_ID =
D3D11_MESSAGE_ID(3145763i32);
pub const D3D11_MESSAGE_ID_CREATEVIDEODECODER_INVALIDFORMAT: D3D11_MESSAGE_ID =
D3D11_MESSAGE_ID(3145760i32);
pub const D3D11_MESSAGE_ID_CREATEVIDEODECODER_NULLPARAM: D3D11_MESSAGE_ID =
D3D11_MESSAGE_ID(3145759i32);
pub const D3D11_MESSAGE_ID_CREATEVIDEODECODER_OUTOFMEMORY_RETURN: D3D11_MESSAGE_ID =
D3D11_MESSAGE_ID(3145758i32);
pub const D3D11_MESSAGE_ID_CREATEVIDEODECODER_ZEROWIDTHHEIGHT: D3D11_MESSAGE_ID =
D3D11_MESSAGE_ID(3145761i32);
pub const D3D11_MESSAGE_ID_CREATEVIDEOPROCESSORENUMERATOR_INVALIDFRAMEFORMAT: D3D11_MESSAGE_ID =
D3D11_MESSAGE_ID(3145793i32);
pub const D3D11_MESSAGE_ID_CREATEVIDEOPROCESSORENUMERATOR_INVALIDINPUTFRAMERATE: D3D11_MESSAGE_ID =
D3D11_MESSAGE_ID(3145795i32);
pub const D3D11_MESSAGE_ID_CREATEVIDEOPROCESSORENUMERATOR_INVALIDOUTPUTFRAMERATE: D3D11_MESSAGE_ID =
D3D11_MESSAGE_ID(3145796i32);
pub const D3D11_MESSAGE_ID_CREATEVIDEOPROCESSORENUMERATOR_INVALIDUSAGE: D3D11_MESSAGE_ID =
D3D11_MESSAGE_ID(3145794i32);
pub const D3D11_MESSAGE_ID_CREATEVIDEOPROCESSORENUMERATOR_INVALIDWIDTHHEIGHT: D3D11_MESSAGE_ID =
D3D11_MESSAGE_ID(3145797i32);
pub const D3D11_MESSAGE_ID_CREATEVIDEOPROCESSORENUMERATOR_NULLPARAM: D3D11_MESSAGE_ID =
D3D11_MESSAGE_ID(3145792i32);
pub const D3D11_MESSAGE_ID_CREATEVIDEOPROCESSORENUMERATOR_OUTOFMEMORY_RETURN: D3D11_MESSAGE_ID =
D3D11_MESSAGE_ID(3145791i32);
pub const D3D11_MESSAGE_ID_CREATEVIDEOPROCESSORINPUTVIEW_INVALIDARRAY: D3D11_MESSAGE_ID =
D3D11_MESSAGE_ID(3145928i32);
pub const D3D11_MESSAGE_ID_CREATEVIDEOPROCESSORINPUTVIEW_INVALIDARRAYSIZE: D3D11_MESSAGE_ID =
D3D11_MESSAGE_ID(3145927i32);
pub const D3D11_MESSAGE_ID_CREATEVIDEOPROCESSORINPUTVIEW_INVALIDBIND: D3D11_MESSAGE_ID =
D3D11_MESSAGE_ID(3145920i32);
pub const D3D11_MESSAGE_ID_CREATEVIDEOPROCESSORINPUTVIEW_INVALIDDIMENSION: D3D11_MESSAGE_ID =
D3D11_MESSAGE_ID(3145929i32);
pub const D3D11_MESSAGE_ID_CREATEVIDEOPROCESSORINPUTVIEW_INVALIDFORMAT: D3D11_MESSAGE_ID =
D3D11_MESSAGE_ID(3145923i32);
pub const D3D11_MESSAGE_ID_CREATEVIDEOPROCESSORINPUTVIEW_INVALIDFOURCC: D3D11_MESSAGE_ID =
D3D11_MESSAGE_ID(3145924i32);
pub const D3D11_MESSAGE_ID_CREATEVIDEOPROCESSORINPUTVIEW_INVALIDMIP: D3D11_MESSAGE_ID =
D3D11_MESSAGE_ID(3145925i32);
pub const D3D11_MESSAGE_ID_CREATEVIDEOPROCESSORINPUTVIEW_INVALIDMISC: D3D11_MESSAGE_ID =
D3D11_MESSAGE_ID(3145921i32);
pub const D3D11_MESSAGE_ID_CREATEVIDEOPROCESSORINPUTVIEW_INVALIDMSAA: D3D11_MESSAGE_ID =
D3D11_MESSAGE_ID(3146073i32);
pub const D3D11_MESSAGE_ID_CREATEVIDEOPROCESSORINPUTVIEW_INVALIDTYPE: D3D11_MESSAGE_ID =
D3D11_MESSAGE_ID(3145919i32);
pub const D3D11_MESSAGE_ID_CREATEVIDEOPROCESSORINPUTVIEW_INVALIDUSAGE: D3D11_MESSAGE_ID =
D3D11_MESSAGE_ID(3145922i32);
pub const D3D11_MESSAGE_ID_CREATEVIDEOPROCESSORINPUTVIEW_NULLPARAM: D3D11_MESSAGE_ID =
D3D11_MESSAGE_ID(3145918i32);
pub const D3D11_MESSAGE_ID_CREATEVIDEOPROCESSORINPUTVIEW_OUTOFMEMORY_RETURN: D3D11_MESSAGE_ID =
D3D11_MESSAGE_ID(3145917i32);
pub const D3D11_MESSAGE_ID_CREATEVIDEOPROCESSORINPUTVIEW_UNSUPPORTEDMIP: D3D11_MESSAGE_ID =
D3D11_MESSAGE_ID(3145926i32);
pub const D3D11_MESSAGE_ID_CREATEVIDEOPROCESSOROUTPUTVIEW_INVALIDARRAY: D3D11_MESSAGE_ID =
D3D11_MESSAGE_ID(3145938i32);
pub const D3D11_MESSAGE_ID_CREATEVIDEOPROCESSOROUTPUTVIEW_INVALIDBIND: D3D11_MESSAGE_ID =
D3D11_MESSAGE_ID(3145933i32);
pub const D3D11_MESSAGE_ID_CREATEVIDEOPROCESSOROUTPUTVIEW_INVALIDDIMENSION: D3D11_MESSAGE_ID =
D3D11_MESSAGE_ID(3145939i32);
pub const D3D11_MESSAGE_ID_CREATEVIDEOPROCESSOROUTPUTVIEW_INVALIDFORMAT: D3D11_MESSAGE_ID =
D3D11_MESSAGE_ID(3145934i32);
pub const D3D11_MESSAGE_ID_CREATEVIDEOPROCESSOROUTPUTVIEW_INVALIDMIP: D3D11_MESSAGE_ID =
D3D11_MESSAGE_ID(3145935i32);
pub const D3D11_MESSAGE_ID_CREATEVIDEOPROCESSOROUTPUTVIEW_INVALIDMSAA: D3D11_MESSAGE_ID =
D3D11_MESSAGE_ID(3146074i32);
pub const D3D11_MESSAGE_ID_CREATEVIDEOPROCESSOROUTPUTVIEW_INVALIDTYPE: D3D11_MESSAGE_ID =
D3D11_MESSAGE_ID(3145932i32);
pub const D3D11_MESSAGE_ID_CREATEVIDEOPROCESSOROUTPUTVIEW_NULLPARAM: D3D11_MESSAGE_ID =
D3D11_MESSAGE_ID(3145931i32);
pub const D3D11_MESSAGE_ID_CREATEVIDEOPROCESSOROUTPUTVIEW_OUTOFMEMORY_RETURN: D3D11_MESSAGE_ID =
D3D11_MESSAGE_ID(3145930i32);
pub const D3D11_MESSAGE_ID_CREATEVIDEOPROCESSOROUTPUTVIEW_UNSUPPORTEDARRAY: D3D11_MESSAGE_ID =
D3D11_MESSAGE_ID(3145937i32);
pub const D3D11_MESSAGE_ID_CREATEVIDEOPROCESSOROUTPUTVIEW_UNSUPPORTEDMIP: D3D11_MESSAGE_ID =
D3D11_MESSAGE_ID(3145936i32);
pub const D3D11_MESSAGE_ID_CREATEVIDEOPROCESSOR_NULLPARAM: D3D11_MESSAGE_ID =
D3D11_MESSAGE_ID(3145808i32);
pub const D3D11_MESSAGE_ID_CREATEVIDEOPROCESSOR_OUTOFMEMORY_RETURN: D3D11_MESSAGE_ID =
D3D11_MESSAGE_ID(3145807i32);
pub const D3D11_MESSAGE_ID_CREATE_AUTHENTICATEDCHANNEL: D3D11_MESSAGE_ID =
D3D11_MESSAGE_ID(3146148i32);
pub const D3D11_MESSAGE_ID_CREATE_BLENDSTATE: D3D11_MESSAGE_ID = D3D11_MESSAGE_ID(2097270i32);
pub const D3D11_MESSAGE_ID_CREATE_BUFFER: D3D11_MESSAGE_ID = D3D11_MESSAGE_ID(2097228i32);
pub const D3D11_MESSAGE_ID_CREATE_CLASSINSTANCE: D3D11_MESSAGE_ID = D3D11_MESSAGE_ID(2097290i32);
pub const D3D11_MESSAGE_ID_CREATE_CLASSLINKAGE: D3D11_MESSAGE_ID = D3D11_MESSAGE_ID(2097293i32);
pub const D3D11_MESSAGE_ID_CREATE_COMMANDLIST: D3D11_MESSAGE_ID = D3D11_MESSAGE_ID(2097287i32);
pub const D3D11_MESSAGE_ID_CREATE_COMPUTESHADER: D3D11_MESSAGE_ID = D3D11_MESSAGE_ID(2097298i32);
pub const D3D11_MESSAGE_ID_CREATE_CONTEXT: D3D11_MESSAGE_ID = D3D11_MESSAGE_ID(2097225i32);
pub const D3D11_MESSAGE_ID_CREATE_COUNTER: D3D11_MESSAGE_ID = D3D11_MESSAGE_ID(2097285i32);
pub const D3D11_MESSAGE_ID_CREATE_CRYPTOSESSION: D3D11_MESSAGE_ID = D3D11_MESSAGE_ID(3146147i32);
pub const D3D11_MESSAGE_ID_CREATE_DECODEROUTPUTVIEW: D3D11_MESSAGE_ID =
D3D11_MESSAGE_ID(3145732i32);
pub const D3D11_MESSAGE_ID_CREATE_DEPTHSTENCILSTATE: D3D11_MESSAGE_ID =
D3D11_MESSAGE_ID(2097273i32);
pub const D3D11_MESSAGE_ID_CREATE_DEPTHSTENCILVIEW: D3D11_MESSAGE_ID = D3D11_MESSAGE_ID(2097246i32);
pub const D3D11_MESSAGE_ID_CREATE_DEVICECONTEXTSTATE: D3D11_MESSAGE_ID =
D3D11_MESSAGE_ID(3145735i32);
pub const D3D11_MESSAGE_ID_CREATE_DOMAINSHADER: D3D11_MESSAGE_ID = D3D11_MESSAGE_ID(2097255i32);
pub const D3D11_MESSAGE_ID_CREATE_FENCE: D3D11_MESSAGE_ID = D3D11_MESSAGE_ID(3146250i32);
pub const D3D11_MESSAGE_ID_CREATE_GEOMETRYSHADER: D3D11_MESSAGE_ID = D3D11_MESSAGE_ID(2097258i32);
pub const D3D11_MESSAGE_ID_CREATE_HULLSHADER: D3D11_MESSAGE_ID = D3D11_MESSAGE_ID(2097252i32);
pub const D3D11_MESSAGE_ID_CREATE_INPUTLAYOUT: D3D11_MESSAGE_ID = D3D11_MESSAGE_ID(2097264i32);
pub const D3D11_MESSAGE_ID_CREATE_PIXELSHADER: D3D11_MESSAGE_ID = D3D11_MESSAGE_ID(2097261i32);
pub const D3D11_MESSAGE_ID_CREATE_PREDICATE: D3D11_MESSAGE_ID = D3D11_MESSAGE_ID(2097282i32);
pub const D3D11_MESSAGE_ID_CREATE_PROCESSORINPUTVIEW: D3D11_MESSAGE_ID =
D3D11_MESSAGE_ID(3145733i32);
pub const D3D11_MESSAGE_ID_CREATE_PROCESSOROUTPUTVIEW: D3D11_MESSAGE_ID =
D3D11_MESSAGE_ID(3145734i32);
pub const D3D11_MESSAGE_ID_CREATE_QUERY: D3D11_MESSAGE_ID = D3D11_MESSAGE_ID(2097279i32);
pub const D3D11_MESSAGE_ID_CREATE_RASTERIZERSTATE: D3D11_MESSAGE_ID = D3D11_MESSAGE_ID(2097276i32);
pub const D3D11_MESSAGE_ID_CREATE_RENDERTARGETVIEW: D3D11_MESSAGE_ID = D3D11_MESSAGE_ID(2097243i32);
pub const D3D11_MESSAGE_ID_CREATE_SAMPLER: D3D11_MESSAGE_ID = D3D11_MESSAGE_ID(2097267i32);
pub const D3D11_MESSAGE_ID_CREATE_SHADERRESOURCEVIEW: D3D11_MESSAGE_ID =
D3D11_MESSAGE_ID(2097240i32);
pub const D3D11_MESSAGE_ID_CREATE_SYNCHRONIZEDCHANNEL: D3D11_MESSAGE_ID =
D3D11_MESSAGE_ID(3146253i32);
pub const D3D11_MESSAGE_ID_CREATE_TEXTURE1D: D3D11_MESSAGE_ID = D3D11_MESSAGE_ID(2097231i32);
pub const D3D11_MESSAGE_ID_CREATE_TEXTURE2D: D3D11_MESSAGE_ID = D3D11_MESSAGE_ID(2097234i32);
pub const D3D11_MESSAGE_ID_CREATE_TEXTURE3D: D3D11_MESSAGE_ID = D3D11_MESSAGE_ID(2097237i32);
pub const D3D11_MESSAGE_ID_CREATE_TRACKEDWORKLOAD: D3D11_MESSAGE_ID = D3D11_MESSAGE_ID(3146267i32);
pub const D3D11_MESSAGE_ID_CREATE_TRACKED_WORKLOAD_INVALID_DEADLINE_TYPE: D3D11_MESSAGE_ID =
D3D11_MESSAGE_ID(3146272i32);
pub const D3D11_MESSAGE_ID_CREATE_TRACKED_WORKLOAD_INVALID_ENGINE_TYPE: D3D11_MESSAGE_ID =
D3D11_MESSAGE_ID(3146273i32);
pub const D3D11_MESSAGE_ID_CREATE_TRACKED_WORKLOAD_INVALID_MAX_INSTANCES: D3D11_MESSAGE_ID =
D3D11_MESSAGE_ID(3146271i32);
pub const D3D11_MESSAGE_ID_CREATE_TRACKED_WORKLOAD_NULLPARAM: D3D11_MESSAGE_ID =
D3D11_MESSAGE_ID(3146270i32);
pub const D3D11_MESSAGE_ID_CREATE_UNORDEREDACCESSVIEW: D3D11_MESSAGE_ID =
D3D11_MESSAGE_ID(2097301i32);
pub const D3D11_MESSAGE_ID_CREATE_VERTEXSHADER: D3D11_MESSAGE_ID = D3D11_MESSAGE_ID(2097249i32);
pub const D3D11_MESSAGE_ID_CREATE_VIDEODECODER: D3D11_MESSAGE_ID = D3D11_MESSAGE_ID(3145729i32);
pub const D3D11_MESSAGE_ID_CREATE_VIDEOPROCESSOR: D3D11_MESSAGE_ID = D3D11_MESSAGE_ID(3145731i32);
pub const D3D11_MESSAGE_ID_CREATE_VIDEOPROCESSORENUM: D3D11_MESSAGE_ID =
D3D11_MESSAGE_ID(3145730i32);
pub const D3D11_MESSAGE_ID_CSSETCONSTANTBUFFERS_INVALIDBUFFER: D3D11_MESSAGE_ID =
D3D11_MESSAGE_ID(2097326i32);
pub const D3D11_MESSAGE_ID_CSSETCONSTANTBUFFERS_INVALIDBUFFEROFFSETORCOUNT: D3D11_MESSAGE_ID =
D3D11_MESSAGE_ID(3146021i32);
pub const D3D11_MESSAGE_ID_CSSETCONSTANTBUFFERS_UNBINDDELETINGOBJECT: D3D11_MESSAGE_ID =
D3D11_MESSAGE_ID(2097319i32);
pub const D3D11_MESSAGE_ID_CSSETSAMPLERS_UNBINDDELETINGOBJECT: D3D11_MESSAGE_ID =
D3D11_MESSAGE_ID(2097415i32);
pub const D3D11_MESSAGE_ID_CSSETSHADERRESOURCES_UNBINDDELETINGOBJECT: D3D11_MESSAGE_ID =
D3D11_MESSAGE_ID(2097318i32);
pub const D3D11_MESSAGE_ID_CSSETSHADER_UNBINDDELETINGOBJECT: D3D11_MESSAGE_ID =
D3D11_MESSAGE_ID(2097418i32);
pub const D3D11_MESSAGE_ID_CSSETUNORDEREDACCESSVIEWS_UNBINDDELETINGOBJECT: D3D11_MESSAGE_ID =
D3D11_MESSAGE_ID(2097349i32);
pub const D3D11_MESSAGE_ID_D3D10L9_MESSAGES_END: D3D11_MESSAGE_ID = D3D11_MESSAGE_ID(1048638i32);
pub const D3D11_MESSAGE_ID_D3D10L9_MESSAGES_START: D3D11_MESSAGE_ID = D3D11_MESSAGE_ID(1048576i32);
pub const D3D11_MESSAGE_ID_D3D10_MESSAGES_END: D3D11_MESSAGE_ID = D3D11_MESSAGE_ID(443i32);
pub const D3D11_MESSAGE_ID_D3D11_1_MESSAGES_END: D3D11_MESSAGE_ID = D3D11_MESSAGE_ID(3146118i32);
pub const D3D11_MESSAGE_ID_D3D11_1_MESSAGES_START: D3D11_MESSAGE_ID = D3D11_MESSAGE_ID(3145728i32);
pub const D3D11_MESSAGE_ID_D3D11_2_MESSAGES_END: D3D11_MESSAGE_ID = D3D11_MESSAGE_ID(3146153i32);
pub const D3D11_MESSAGE_ID_D3D11_2_MESSAGES_START: D3D11_MESSAGE_ID = D3D11_MESSAGE_ID(3146119i32);
pub const D3D11_MESSAGE_ID_D3D11_3_MESSAGES_END: D3D11_MESSAGE_ID = D3D11_MESSAGE_ID(3146257i32);
pub const D3D11_MESSAGE_ID_D3D11_3_MESSAGES_START: D3D11_MESSAGE_ID = D3D11_MESSAGE_ID(3146154i32);
pub const D3D11_MESSAGE_ID_D3D11_5_MESSAGES_END: D3D11_MESSAGE_ID = D3D11_MESSAGE_ID(3146284i32);
pub const D3D11_MESSAGE_ID_D3D11_5_MESSAGES_START: D3D11_MESSAGE_ID = D3D11_MESSAGE_ID(3146258i32);
pub const D3D11_MESSAGE_ID_D3D11_MESSAGES_END: D3D11_MESSAGE_ID = D3D11_MESSAGE_ID(2097424i32);
pub const D3D11_MESSAGE_ID_D3D11_MESSAGES_START: D3D11_MESSAGE_ID = D3D11_MESSAGE_ID(2097152i32);
pub const D3D11_MESSAGE_ID_DECODERBEGINFRAME_HAZARD: D3D11_MESSAGE_ID =
D3D11_MESSAGE_ID(3145785i32);
pub const D3D11_MESSAGE_ID_DECODERBEGINFRAME_INVALID_HISTOGRAM_BUFFER_MISC_FLAGS: D3D11_MESSAGE_ID =
D3D11_MESSAGE_ID(3146265i32);
pub const D3D11_MESSAGE_ID_DECODERBEGINFRAME_INVALID_HISTOGRAM_BUFFER_OFFSET: D3D11_MESSAGE_ID =
D3D11_MESSAGE_ID(3146266i32);
pub const D3D11_MESSAGE_ID_DECODERBEGINFRAME_INVALID_HISTOGRAM_BUFFER_SIZE: D3D11_MESSAGE_ID =
D3D11_MESSAGE_ID(3146263i32);
pub const D3D11_MESSAGE_ID_DECODERBEGINFRAME_INVALID_HISTOGRAM_BUFFER_USAGE: D3D11_MESSAGE_ID =
D3D11_MESSAGE_ID(3146264i32);
pub const D3D11_MESSAGE_ID_DECODERBEGINFRAME_INVALID_HISTOGRAM_COMPONENT: D3D11_MESSAGE_ID =
D3D11_MESSAGE_ID(3146262i32);
pub const D3D11_MESSAGE_ID_DECODERBEGINFRAME_INVALID_HISTOGRAM_COMPONENT_COUNT: D3D11_MESSAGE_ID =
D3D11_MESSAGE_ID(3146261i32);
pub const D3D11_MESSAGE_ID_DECODERBEGINFRAME_NULLPARAM: D3D11_MESSAGE_ID =
D3D11_MESSAGE_ID(3145784i32);
pub const D3D11_MESSAGE_ID_DECODERENDFRAME_NULLPARAM: D3D11_MESSAGE_ID =
D3D11_MESSAGE_ID(3145786i32);
pub const D3D11_MESSAGE_ID_DECODEREXTENSION_INVALIDRESOURCE: D3D11_MESSAGE_ID =
D3D11_MESSAGE_ID(3145790i32);
pub const D3D11_MESSAGE_ID_DECODEREXTENSION_NULLPARAM: D3D11_MESSAGE_ID =
D3D11_MESSAGE_ID(3145789i32);
pub const D3D11_MESSAGE_ID_DECRYPTIONBLT_DST_MAPPED: D3D11_MESSAGE_ID =
D3D11_MESSAGE_ID(3145983i32);
pub const D3D11_MESSAGE_ID_DECRYPTIONBLT_DST_MULTISAMPLED: D3D11_MESSAGE_ID =
D3D11_MESSAGE_ID(3145979i32);
pub const D3D11_MESSAGE_ID_DECRYPTIONBLT_DST_NOT_RENDER_TARGET: D3D11_MESSAGE_ID =
D3D11_MESSAGE_ID(3145981i32);
pub const D3D11_MESSAGE_ID_DECRYPTIONBLT_DST_OFFERED: D3D11_MESSAGE_ID =
D3D11_MESSAGE_ID(3145985i32);
pub const D3D11_MESSAGE_ID_DECRYPTIONBLT_DST_WRONGDEVICE: D3D11_MESSAGE_ID =
D3D11_MESSAGE_ID(3145976i32);
pub const D3D11_MESSAGE_ID_DECRYPTIONBLT_FORMAT_MISMATCH: D3D11_MESSAGE_ID =
D3D11_MESSAGE_ID(3145977i32);
pub const D3D11_MESSAGE_ID_DECRYPTIONBLT_NULLPARAM: D3D11_MESSAGE_ID = D3D11_MESSAGE_ID(3145974i32);
pub const D3D11_MESSAGE_ID_DECRYPTIONBLT_SIZE_MISMATCH: D3D11_MESSAGE_ID =
D3D11_MESSAGE_ID(3145978i32);
pub const D3D11_MESSAGE_ID_DECRYPTIONBLT_SRC_CONTENT_UNDEFINED: D3D11_MESSAGE_ID =
D3D11_MESSAGE_ID(3145986i32);
pub const D3D11_MESSAGE_ID_DECRYPTIONBLT_SRC_MAPPED: D3D11_MESSAGE_ID =
D3D11_MESSAGE_ID(3145982i32);
pub const D3D11_MESSAGE_ID_DECRYPTIONBLT_SRC_NOT_STAGING: D3D11_MESSAGE_ID =
D3D11_MESSAGE_ID(3145980i32);
pub const D3D11_MESSAGE_ID_DECRYPTIONBLT_SRC_OFFERED: D3D11_MESSAGE_ID =
D3D11_MESSAGE_ID(3145984i32);
pub const D3D11_MESSAGE_ID_DECRYPTIONBLT_SRC_WRONGDEVICE: D3D11_MESSAGE_ID =
D3D11_MESSAGE_ID(3145975i32);
pub const D3D11_MESSAGE_ID_DECRYPTIONBLT_UNSUPPORTED: D3D11_MESSAGE_ID =
D3D11_MESSAGE_ID(3145973i32);
pub const D3D11_MESSAGE_ID_DEFERRED_CONTEXT_REMOVAL_PROCESS_AT_FAULT: D3D11_MESSAGE_ID =
D3D11_MESSAGE_ID(2097206i32);
pub const D3D11_MESSAGE_ID_DESTROY_AUTHENTICATEDCHANNEL: D3D11_MESSAGE_ID =
D3D11_MESSAGE_ID(3146152i32);
pub const D3D11_MESSAGE_ID_DESTROY_BLENDSTATE: D3D11_MESSAGE_ID = D3D11_MESSAGE_ID(2097272i32);
pub const D3D11_MESSAGE_ID_DESTROY_BUFFER: D3D11_MESSAGE_ID = D3D11_MESSAGE_ID(2097230i32);
pub const D3D11_MESSAGE_ID_DESTROY_CLASSINSTANCE: D3D11_MESSAGE_ID = D3D11_MESSAGE_ID(2097292i32);
pub const D3D11_MESSAGE_ID_DESTROY_CLASSLINKAGE: D3D11_MESSAGE_ID = D3D11_MESSAGE_ID(2097295i32);
pub const D3D11_MESSAGE_ID_DESTROY_COMMANDLIST: D3D11_MESSAGE_ID = D3D11_MESSAGE_ID(2097289i32);
pub const D3D11_MESSAGE_ID_DESTROY_COMPUTESHADER: D3D11_MESSAGE_ID = D3D11_MESSAGE_ID(2097300i32);
pub const D3D11_MESSAGE_ID_DESTROY_CONTEXT: D3D11_MESSAGE_ID = D3D11_MESSAGE_ID(2097227i32);
pub const D3D11_MESSAGE_ID_DESTROY_COUNTER: D3D11_MESSAGE_ID = D3D11_MESSAGE_ID(2097286i32);
pub const D3D11_MESSAGE_ID_DESTROY_CRYPTOSESSION: D3D11_MESSAGE_ID = D3D11_MESSAGE_ID(3146151i32);
pub const D3D11_MESSAGE_ID_DESTROY_DECODEROUTPUTVIEW: D3D11_MESSAGE_ID =
D3D11_MESSAGE_ID(3145746i32);
pub const D3D11_MESSAGE_ID_DESTROY_DEPTHSTENCILSTATE: D3D11_MESSAGE_ID =
D3D11_MESSAGE_ID(2097275i32);
pub const D3D11_MESSAGE_ID_DESTROY_DEPTHSTENCILVIEW: D3D11_MESSAGE_ID =
D3D11_MESSAGE_ID(2097248i32);
pub const D3D11_MESSAGE_ID_DESTROY_DEVICECONTEXTSTATE: D3D11_MESSAGE_ID =
D3D11_MESSAGE_ID(3145749i32);
pub const D3D11_MESSAGE_ID_DESTROY_DOMAINSHADER: D3D11_MESSAGE_ID = D3D11_MESSAGE_ID(2097257i32);
pub const D3D11_MESSAGE_ID_DESTROY_FENCE: D3D11_MESSAGE_ID = D3D11_MESSAGE_ID(3146252i32);
pub const D3D11_MESSAGE_ID_DESTROY_GEOMETRYSHADER: D3D11_MESSAGE_ID = D3D11_MESSAGE_ID(2097260i32);
pub const D3D11_MESSAGE_ID_DESTROY_HULLSHADER: D3D11_MESSAGE_ID = D3D11_MESSAGE_ID(2097254i32);
pub const D3D11_MESSAGE_ID_DESTROY_INPUTLAYOUT: D3D11_MESSAGE_ID = D3D11_MESSAGE_ID(2097266i32);
pub const D3D11_MESSAGE_ID_DESTROY_PIXELSHADER: D3D11_MESSAGE_ID = D3D11_MESSAGE_ID(2097263i32);
pub const D3D11_MESSAGE_ID_DESTROY_PREDICATE: D3D11_MESSAGE_ID = D3D11_MESSAGE_ID(2097284i32);
pub const D3D11_MESSAGE_ID_DESTROY_PROCESSORINPUTVIEW: D3D11_MESSAGE_ID =
D3D11_MESSAGE_ID(3145747i32);
pub const D3D11_MESSAGE_ID_DESTROY_PROCESSOROUTPUTVIEW: D3D11_MESSAGE_ID =
D3D11_MESSAGE_ID(3145748i32);
pub const D3D11_MESSAGE_ID_DESTROY_QUERY: D3D11_MESSAGE_ID = D3D11_MESSAGE_ID(2097281i32);
pub const D3D11_MESSAGE_ID_DESTROY_RASTERIZERSTATE: D3D11_MESSAGE_ID = D3D11_MESSAGE_ID(2097278i32);
pub const D3D11_MESSAGE_ID_DESTROY_RENDERTARGETVIEW: D3D11_MESSAGE_ID =
D3D11_MESSAGE_ID(2097245i32);
pub const D3D11_MESSAGE_ID_DESTROY_SAMPLER: D3D11_MESSAGE_ID = D3D11_MESSAGE_ID(2097269i32);
pub const D3D11_MESSAGE_ID_DESTROY_SHADERRESOURCEVIEW: D3D11_MESSAGE_ID =
D3D11_MESSAGE_ID(2097242i32);
pub const D3D11_MESSAGE_ID_DESTROY_SYNCHRONIZEDCHANNEL: D3D11_MESSAGE_ID =
D3D11_MESSAGE_ID(3146255i32);
pub const D3D11_MESSAGE_ID_DESTROY_TEXTURE1D: D3D11_MESSAGE_ID = D3D11_MESSAGE_ID(2097233i32);
pub const D3D11_MESSAGE_ID_DESTROY_TEXTURE2D: D3D11_MESSAGE_ID = D3D11_MESSAGE_ID(2097236i32);
pub const D3D11_MESSAGE_ID_DESTROY_TEXTURE3D: D3D11_MESSAGE_ID = D3D11_MESSAGE_ID(2097239i32);
pub const D3D11_MESSAGE_ID_DESTROY_TRACKEDWORKLOAD: D3D11_MESSAGE_ID = D3D11_MESSAGE_ID(3146269i32);
pub const D3D11_MESSAGE_ID_DESTROY_UNORDEREDACCESSVIEW: D3D11_MESSAGE_ID =
D3D11_MESSAGE_ID(2097303i32);
pub const D3D11_MESSAGE_ID_DESTROY_VERTEXSHADER: D3D11_MESSAGE_ID = D3D11_MESSAGE_ID(2097251i32);
pub const D3D11_MESSAGE_ID_DESTROY_VIDEODECODER: D3D11_MESSAGE_ID = D3D11_MESSAGE_ID(3145743i32);
pub const D3D11_MESSAGE_ID_DESTROY_VIDEOPROCESSOR: D3D11_MESSAGE_ID = D3D11_MESSAGE_ID(3145745i32);
pub const D3D11_MESSAGE_ID_DESTROY_VIDEOPROCESSORENUM: D3D11_MESSAGE_ID =
D3D11_MESSAGE_ID(3145744i32);
pub const D3D11_MESSAGE_ID_DEVICE_CHECKFEATURESUPPORT_INVALIDARG_RETURN: D3D11_MESSAGE_ID =
D3D11_MESSAGE_ID(2097315i32);
pub const D3D11_MESSAGE_ID_DEVICE_CHECKFEATURESUPPORT_MISMATCHED_DATA_SIZE: D3D11_MESSAGE_ID =
D3D11_MESSAGE_ID(2097314i32);
pub const D3D11_MESSAGE_ID_DEVICE_CHECKFEATURESUPPORT_UNRECOGNIZED_FEATURE: D3D11_MESSAGE_ID =
D3D11_MESSAGE_ID(2097313i32);
pub const D3D11_MESSAGE_ID_DEVICE_CLEARVIEW_EMPTYRECT: D3D11_MESSAGE_ID =
D3D11_MESSAGE_ID(3146076i32);
pub const D3D11_MESSAGE_ID_DEVICE_CLEARVIEW_INVALIDRECT: D3D11_MESSAGE_ID =
D3D11_MESSAGE_ID(3146066i32);
pub const D3D11_MESSAGE_ID_DEVICE_CLEARVIEW_INVALIDSOURCERECT: D3D11_MESSAGE_ID =
D3D11_MESSAGE_ID(3146075i32);
pub const D3D11_MESSAGE_ID_DEVICE_CLEARVIEW_INVALIDVIEW: D3D11_MESSAGE_ID =
D3D11_MESSAGE_ID(3146035i32);
pub const D3D11_MESSAGE_ID_DEVICE_CLEARVIEW_NOTSUPPORTED: D3D11_MESSAGE_ID =
D3D11_MESSAGE_ID(3146062i32);
pub const D3D11_MESSAGE_ID_DEVICE_CREATECOMPUTESHADER_DOUBLEEXTENSIONSNOTSUPPORTED:
D3D11_MESSAGE_ID = D3D11_MESSAGE_ID(3146048i32);
pub const D3D11_MESSAGE_ID_DEVICE_CREATECOMPUTESHADER_DOUBLEFLOATOPSNOTSUPPORTED: D3D11_MESSAGE_ID =
D3D11_MESSAGE_ID(2097338i32);
pub const D3D11_MESSAGE_ID_DEVICE_CREATECOMPUTESHADER_SHADEREXTENSIONSNOTSUPPORTED:
D3D11_MESSAGE_ID = D3D11_MESSAGE_ID(3146049i32);
pub const D3D11_MESSAGE_ID_DEVICE_CREATECOMPUTESHADER_UAVSNOTSUPPORTED: D3D11_MESSAGE_ID =
D3D11_MESSAGE_ID(3146059i32);
pub const D3D11_MESSAGE_ID_DEVICE_CREATEDOMAINSHADER_DOUBLEEXTENSIONSNOTSUPPORTED:
D3D11_MESSAGE_ID = D3D11_MESSAGE_ID(3146040i32);
pub const D3D11_MESSAGE_ID_DEVICE_CREATEDOMAINSHADER_DOUBLEFLOATOPSNOTSUPPORTED: D3D11_MESSAGE_ID =
D3D11_MESSAGE_ID(2097334i32);
pub const D3D11_MESSAGE_ID_DEVICE_CREATEDOMAINSHADER_SHADEREXTENSIONSNOTSUPPORTED:
D3D11_MESSAGE_ID = D3D11_MESSAGE_ID(3146041i32);
pub const D3D11_MESSAGE_ID_DEVICE_CREATEDOMAINSHADER_UAVSNOTSUPPORTED: D3D11_MESSAGE_ID =
D3D11_MESSAGE_ID(3146055i32);
pub const D3D11_MESSAGE_ID_DEVICE_CREATEGEOMETRYSHADERWITHSTREAMOUTPUT_DOUBLEEXTENSIONSNOTSUPPORTED: D3D11_MESSAGE_ID = D3D11_MESSAGE_ID(3146044i32);
pub const D3D11_MESSAGE_ID_DEVICE_CREATEGEOMETRYSHADERWITHSTREAMOUTPUT_DOUBLEFLOATOPSNOTSUPPORTED: D3D11_MESSAGE_ID = D3D11_MESSAGE_ID(2097336i32);
pub const D3D11_MESSAGE_ID_DEVICE_CREATEGEOMETRYSHADERWITHSTREAMOUTPUT_SHADEREXTENSIONSNOTSUPPORTED: D3D11_MESSAGE_ID = D3D11_MESSAGE_ID(3146045i32);
pub const D3D11_MESSAGE_ID_DEVICE_CREATEGEOMETRYSHADERWITHSTREAMOUTPUT_UAVSNOTSUPPORTED:
D3D11_MESSAGE_ID = D3D11_MESSAGE_ID(3146057i32);
pub const D3D11_MESSAGE_ID_DEVICE_CREATEGEOMETRYSHADER_DOUBLEEXTENSIONSNOTSUPPORTED:
D3D11_MESSAGE_ID = D3D11_MESSAGE_ID(3146042i32);
pub const D3D11_MESSAGE_ID_DEVICE_CREATEGEOMETRYSHADER_DOUBLEFLOATOPSNOTSUPPORTED:
D3D11_MESSAGE_ID = D3D11_MESSAGE_ID(2097335i32);
pub const D3D11_MESSAGE_ID_DEVICE_CREATEGEOMETRYSHADER_SHADEREXTENSIONSNOTSUPPORTED:
D3D11_MESSAGE_ID = D3D11_MESSAGE_ID(3146043i32);
pub const D3D11_MESSAGE_ID_DEVICE_CREATEGEOMETRYSHADER_UAVSNOTSUPPORTED: D3D11_MESSAGE_ID =
D3D11_MESSAGE_ID(3146056i32);
pub const D3D11_MESSAGE_ID_DEVICE_CREATEHULLSHADER_DOUBLEEXTENSIONSNOTSUPPORTED: D3D11_MESSAGE_ID =
D3D11_MESSAGE_ID(3146038i32);
pub const D3D11_MESSAGE_ID_DEVICE_CREATEHULLSHADER_DOUBLEFLOATOPSNOTSUPPORTED: D3D11_MESSAGE_ID =
D3D11_MESSAGE_ID(2097333i32);
pub const D3D11_MESSAGE_ID_DEVICE_CREATEHULLSHADER_SHADEREXTENSIONSNOTSUPPORTED: D3D11_MESSAGE_ID =
D3D11_MESSAGE_ID(3146039i32);
pub const D3D11_MESSAGE_ID_DEVICE_CREATEHULLSHADER_UAVSNOTSUPPORTED: D3D11_MESSAGE_ID =
D3D11_MESSAGE_ID(3146054i32);
pub const D3D11_MESSAGE_ID_DEVICE_CREATEPIXELSHADER_DOUBLEEXTENSIONSNOTSUPPORTED: D3D11_MESSAGE_ID =
D3D11_MESSAGE_ID(3146046i32);
pub const D3D11_MESSAGE_ID_DEVICE_CREATEPIXELSHADER_DOUBLEFLOATOPSNOTSUPPORTED: D3D11_MESSAGE_ID =
D3D11_MESSAGE_ID(2097337i32);
pub const D3D11_MESSAGE_ID_DEVICE_CREATEPIXELSHADER_SHADEREXTENSIONSNOTSUPPORTED: D3D11_MESSAGE_ID =
D3D11_MESSAGE_ID(3146047i32);
pub const D3D11_MESSAGE_ID_DEVICE_CREATEPIXELSHADER_UAVSNOTSUPPORTED: D3D11_MESSAGE_ID =
D3D11_MESSAGE_ID(3146058i32);
pub const D3D11_MESSAGE_ID_DEVICE_CREATESHADER_CLASSLINKAGE_FULL: D3D11_MESSAGE_ID =
D3D11_MESSAGE_ID(2097312i32);
pub const D3D11_MESSAGE_ID_DEVICE_CREATEVERTEXSHADER_DOUBLEEXTENSIONSNOTSUPPORTED:
D3D11_MESSAGE_ID = D3D11_MESSAGE_ID(3146036i32);
pub const D3D11_MESSAGE_ID_DEVICE_CREATEVERTEXSHADER_DOUBLEFLOATOPSNOTSUPPORTED: D3D11_MESSAGE_ID =
D3D11_MESSAGE_ID(2097332i32);
pub const D3D11_MESSAGE_ID_DEVICE_CREATEVERTEXSHADER_SHADEREXTENSIONSNOTSUPPORTED:
D3D11_MESSAGE_ID = D3D11_MESSAGE_ID(3146037i32);
pub const D3D11_MESSAGE_ID_DEVICE_CREATEVERTEXSHADER_UAVSNOTSUPPORTED: D3D11_MESSAGE_ID =
D3D11_MESSAGE_ID(3146053i32);
pub const D3D11_MESSAGE_ID_DEVICE_CSGETCONSTANTBUFFERS_BUFFERS_EMPTY: D3D11_MESSAGE_ID =
D3D11_MESSAGE_ID(2097330i32);
pub const D3D11_MESSAGE_ID_DEVICE_CSGETSAMPLERS_SAMPLERS_EMPTY: D3D11_MESSAGE_ID =
D3D11_MESSAGE_ID(2097331i32);
pub const D3D11_MESSAGE_ID_DEVICE_CSGETSHADERRESOURCES_VIEWS_EMPTY: D3D11_MESSAGE_ID =
D3D11_MESSAGE_ID(2097329i32);
pub const D3D11_MESSAGE_ID_DEVICE_CSGETUNORDEREDACCESSS_VIEWS_EMPTY: D3D11_MESSAGE_ID =
D3D11_MESSAGE_ID(2097357i32);
pub const D3D11_MESSAGE_ID_DEVICE_CSSETCONSTANTBUFFERS_BUFFERS_EMPTY: D3D11_MESSAGE_ID =
D3D11_MESSAGE_ID(2097327i32);
pub const D3D11_MESSAGE_ID_DEVICE_CSSETCONSTANTBUFFERS_HAZARD: D3D11_MESSAGE_ID =
D3D11_MESSAGE_ID(2097317i32);
pub const D3D11_MESSAGE_ID_DEVICE_CSSETSAMPLERS_SAMPLERS_EMPTY: D3D11_MESSAGE_ID =
D3D11_MESSAGE_ID(2097328i32);
pub const D3D11_MESSAGE_ID_DEVICE_CSSETSHADERRESOURCES_HAZARD: D3D11_MESSAGE_ID =
D3D11_MESSAGE_ID(2097316i32);
pub const D3D11_MESSAGE_ID_DEVICE_CSSETSHADERRESOURCES_VIEWS_EMPTY: D3D11_MESSAGE_ID =
D3D11_MESSAGE_ID(2097325i32);
pub const D3D11_MESSAGE_ID_DEVICE_CSSETUNORDEREDACCESSS_VIEWS_EMPTY: D3D11_MESSAGE_ID =
D3D11_MESSAGE_ID(2097356i32);
pub const D3D11_MESSAGE_ID_DEVICE_CSSETUNORDEREDACCESSVIEWS_HAZARD: D3D11_MESSAGE_ID =
D3D11_MESSAGE_ID(2097354i32);
pub const D3D11_MESSAGE_ID_DEVICE_CSSETUNORDEREDACCESSVIEWS_INVALIDOFFSET: D3D11_MESSAGE_ID =
D3D11_MESSAGE_ID(2097403i32);
pub const D3D11_MESSAGE_ID_DEVICE_CSSETUNORDEREDACCESSVIEWS_INVALIDVIEW: D3D11_MESSAGE_ID =
D3D11_MESSAGE_ID(2097402i32);
pub const D3D11_MESSAGE_ID_DEVICE_CSSETUNORDEREDACCESSVIEWS_TOOMANYVIEWS: D3D11_MESSAGE_ID =
D3D11_MESSAGE_ID(2097404i32);
pub const D3D11_MESSAGE_ID_DEVICE_DISCARDVIEW_INVALIDVIEW: D3D11_MESSAGE_ID =
D3D11_MESSAGE_ID(3145754i32);
pub const D3D11_MESSAGE_ID_DEVICE_DISPATCHINDIRECT_INVALID_ARG_BUFFER: D3D11_MESSAGE_ID =
D3D11_MESSAGE_ID(2097360i32);
pub const D3D11_MESSAGE_ID_DEVICE_DISPATCHINDIRECT_OFFSET_OVERFLOW: D3D11_MESSAGE_ID =
D3D11_MESSAGE_ID(2097362i32);
pub const D3D11_MESSAGE_ID_DEVICE_DISPATCHINDIRECT_OFFSET_UNALIGNED: D3D11_MESSAGE_ID =
D3D11_MESSAGE_ID(2097361i32);
pub const D3D11_MESSAGE_ID_DEVICE_DISPATCHINDIRECT_UNSUPPORTED: D3D11_MESSAGE_ID =
D3D11_MESSAGE_ID(2097396i32);
pub const D3D11_MESSAGE_ID_DEVICE_DISPATCH_BOUND_RESOURCE_MAPPED: D3D11_MESSAGE_ID =
D3D11_MESSAGE_ID(2097389i32);
pub const D3D11_MESSAGE_ID_DEVICE_DISPATCH_THREADGROUPCOUNT_OVERFLOW: D3D11_MESSAGE_ID =
D3D11_MESSAGE_ID(2097390i32);
pub const D3D11_MESSAGE_ID_DEVICE_DISPATCH_THREADGROUPCOUNT_ZERO: D3D11_MESSAGE_ID =
D3D11_MESSAGE_ID(2097391i32);
pub const D3D11_MESSAGE_ID_DEVICE_DISPATCH_UNSUPPORTED: D3D11_MESSAGE_ID =
D3D11_MESSAGE_ID(2097395i32);
pub const D3D11_MESSAGE_ID_DEVICE_DRAWINDEXEDINSTANCED_INDEXPOS_OVERFLOW: D3D11_MESSAGE_ID =
D3D11_MESSAGE_ID(340i32);
pub const D3D11_MESSAGE_ID_DEVICE_DRAWINDEXEDINSTANCED_INSTANCEPOS_OVERFLOW: D3D11_MESSAGE_ID =
D3D11_MESSAGE_ID(339i32);
pub const D3D11_MESSAGE_ID_DEVICE_DRAWINDEXED_INDEXPOS_OVERFLOW: D3D11_MESSAGE_ID =
D3D11_MESSAGE_ID(336i32);
pub const D3D11_MESSAGE_ID_DEVICE_DRAWINDIRECT_INVALID_ARG_BUFFER: D3D11_MESSAGE_ID =
D3D11_MESSAGE_ID(2097207i32);
pub const D3D11_MESSAGE_ID_DEVICE_DRAWINDIRECT_OFFSET_OVERFLOW: D3D11_MESSAGE_ID =
D3D11_MESSAGE_ID(2097209i32);
pub const D3D11_MESSAGE_ID_DEVICE_DRAWINDIRECT_OFFSET_UNALIGNED: D3D11_MESSAGE_ID =
D3D11_MESSAGE_ID(2097208i32);
pub const D3D11_MESSAGE_ID_DEVICE_DRAWINSTANCED_INSTANCEPOS_OVERFLOW: D3D11_MESSAGE_ID =
D3D11_MESSAGE_ID(338i32);
pub const D3D11_MESSAGE_ID_DEVICE_DRAWINSTANCED_VERTEXPOS_OVERFLOW: D3D11_MESSAGE_ID =
D3D11_MESSAGE_ID(337i32);
pub const D3D11_MESSAGE_ID_DEVICE_DRAW_BOUND_RESOURCE_MAPPED: D3D11_MESSAGE_ID =
D3D11_MESSAGE_ID(364i32);
pub const D3D11_MESSAGE_ID_DEVICE_DRAW_CONSTANT_BUFFER_NOT_SET: D3D11_MESSAGE_ID =
D3D11_MESSAGE_ID(350i32);
pub const D3D11_MESSAGE_ID_DEVICE_DRAW_CONSTANT_BUFFER_TOO_SMALL: D3D11_MESSAGE_ID =
D3D11_MESSAGE_ID(351i32);
pub const D3D11_MESSAGE_ID_DEVICE_DRAW_DEPTHSTENCILVIEW_NOT_SET: D3D11_MESSAGE_ID =
D3D11_MESSAGE_ID(3146080i32);
pub const D3D11_MESSAGE_ID_DEVICE_DRAW_GS_INPUT_PRIMITIVE_MISMATCH: D3D11_MESSAGE_ID =
D3D11_MESSAGE_ID(360i32);
pub const D3D11_MESSAGE_ID_DEVICE_DRAW_HS_DS_CONTROL_POINT_COUNT_MISMATCH: D3D11_MESSAGE_ID =
D3D11_MESSAGE_ID(2097223i32);
pub const D3D11_MESSAGE_ID_DEVICE_DRAW_HS_DS_SIGNATURE_MISMATCH: D3D11_MESSAGE_ID =
D3D11_MESSAGE_ID(2097221i32);
pub const D3D11_MESSAGE_ID_DEVICE_DRAW_HS_DS_TESSELLATOR_DOMAIN_MISMATCH: D3D11_MESSAGE_ID =
D3D11_MESSAGE_ID(2097224i32);
pub const D3D11_MESSAGE_ID_DEVICE_DRAW_HS_XOR_DS_MISMATCH: D3D11_MESSAGE_ID =
D3D11_MESSAGE_ID(2097205i32);
pub const D3D11_MESSAGE_ID_DEVICE_DRAW_HULL_SHADER_INPUT_TOPOLOGY_MISMATCH: D3D11_MESSAGE_ID =
D3D11_MESSAGE_ID(2097222i32);
pub const D3D11_MESSAGE_ID_DEVICE_DRAW_INDEX_BUFFER_FORMAT_INVALID: D3D11_MESSAGE_ID =
D3D11_MESSAGE_ID(358i32);
pub const D3D11_MESSAGE_ID_DEVICE_DRAW_INDEX_BUFFER_NOT_SET: D3D11_MESSAGE_ID =
D3D11_MESSAGE_ID(357i32);
pub const D3D11_MESSAGE_ID_DEVICE_DRAW_INDEX_BUFFER_TOO_SMALL: D3D11_MESSAGE_ID =
D3D11_MESSAGE_ID(359i32);
pub const D3D11_MESSAGE_ID_DEVICE_DRAW_INDEX_OFFSET_UNALIGNED: D3D11_MESSAGE_ID =
D3D11_MESSAGE_ID(368i32);
pub const D3D11_MESSAGE_ID_DEVICE_DRAW_INPUTLAYOUT_NOT_SET: D3D11_MESSAGE_ID =
D3D11_MESSAGE_ID(349i32);
pub const D3D11_MESSAGE_ID_DEVICE_DRAW_INVALID_PRIMITIVETOPOLOGY: D3D11_MESSAGE_ID =
D3D11_MESSAGE_ID(365i32);
pub const D3D11_MESSAGE_ID_DEVICE_DRAW_INVALID_SYSTEMVALUE: D3D11_MESSAGE_ID =
D3D11_MESSAGE_ID(3146156i32);
pub const D3D11_MESSAGE_ID_DEVICE_DRAW_INVALID_USE_OF_CENTER_MULTISAMPLE_PATTERN: D3D11_MESSAGE_ID =
D3D11_MESSAGE_ID(417i32);
pub const D3D11_MESSAGE_ID_DEVICE_DRAW_INVALID_USE_OF_FORCED_SAMPLE_COUNT: D3D11_MESSAGE_ID =
D3D11_MESSAGE_ID(3145940i32);
pub const D3D11_MESSAGE_ID_DEVICE_DRAW_OM_DUAL_SOURCE_BLENDING_CAN_ONLY_HAVE_RENDER_TARGET_0:
D3D11_MESSAGE_ID = D3D11_MESSAGE_ID(377i32);
pub const D3D11_MESSAGE_ID_DEVICE_DRAW_OM_RENDER_TARGET_DOES_NOT_SUPPORT_BLENDING:
D3D11_MESSAGE_ID = D3D11_MESSAGE_ID(376i32);
pub const D3D11_MESSAGE_ID_DEVICE_DRAW_OM_RENDER_TARGET_DOES_NOT_SUPPORT_LOGIC_OPS:
D3D11_MESSAGE_ID = D3D11_MESSAGE_ID(3146079i32);
pub const D3D11_MESSAGE_ID_DEVICE_DRAW_OUTPUT_STREAM_NOT_SET: D3D11_MESSAGE_ID =
D3D11_MESSAGE_ID(363i32);
pub const D3D11_MESSAGE_ID_DEVICE_DRAW_OUTPUT_STREAM_OFFSET_UNALIGNED: D3D11_MESSAGE_ID =
D3D11_MESSAGE_ID(369i32);
pub const D3D11_MESSAGE_ID_DEVICE_DRAW_PIXEL_SHADER_WITHOUT_RTV_OR_DSV: D3D11_MESSAGE_ID =
D3D11_MESSAGE_ID(2097408i32);
pub const D3D11_MESSAGE_ID_DEVICE_DRAW_POSITION_NOT_PRESENT: D3D11_MESSAGE_ID =
D3D11_MESSAGE_ID(362i32);
pub const D3D11_MESSAGE_ID_DEVICE_DRAW_PS_OUTPUT_TYPE_MISMATCH: D3D11_MESSAGE_ID =
D3D11_MESSAGE_ID(415i32);
pub const D3D11_MESSAGE_ID_DEVICE_DRAW_RASTERIZING_CONTROL_POINTS: D3D11_MESSAGE_ID =
D3D11_MESSAGE_ID(2097219i32);
pub const D3D11_MESSAGE_ID_DEVICE_DRAW_RENDERTARGETVIEW_NOT_SET: D3D11_MESSAGE_ID =
D3D11_MESSAGE_ID(3146081i32);
pub const D3D11_MESSAGE_ID_DEVICE_DRAW_RENDERTARGETVIEW_NOT_SET_DUE_TO_FLIP_PRESENT:
D3D11_MESSAGE_ID = D3D11_MESSAGE_ID(3146082i32);
pub const D3D11_MESSAGE_ID_DEVICE_DRAW_RESOURCE_FORMAT_GATHER_UNSUPPORTED: D3D11_MESSAGE_ID =
D3D11_MESSAGE_ID(416i32);
pub const D3D11_MESSAGE_ID_DEVICE_DRAW_RESOURCE_FORMAT_LD_UNSUPPORTED: D3D11_MESSAGE_ID =
D3D11_MESSAGE_ID(370i32);
pub const D3D11_MESSAGE_ID_DEVICE_DRAW_RESOURCE_FORMAT_SAMPLE_C_UNSUPPORTED: D3D11_MESSAGE_ID =
D3D11_MESSAGE_ID(372i32);
pub const D3D11_MESSAGE_ID_DEVICE_DRAW_RESOURCE_FORMAT_SAMPLE_UNSUPPORTED: D3D11_MESSAGE_ID =
D3D11_MESSAGE_ID(371i32);
pub const D3D11_MESSAGE_ID_DEVICE_DRAW_RESOURCE_MULTISAMPLE_UNSUPPORTED: D3D11_MESSAGE_ID =
D3D11_MESSAGE_ID(373i32);
pub const D3D11_MESSAGE_ID_DEVICE_DRAW_RESOURCE_RETURN_TYPE_MISMATCH: D3D11_MESSAGE_ID =
D3D11_MESSAGE_ID(361i32);
pub const D3D11_MESSAGE_ID_DEVICE_DRAW_RESOURCE_SAMPLE_COUNT_MISMATCH: D3D11_MESSAGE_ID =
D3D11_MESSAGE_ID(421i32);
pub const D3D11_MESSAGE_ID_DEVICE_DRAW_SAMPLER_MISMATCH: D3D11_MESSAGE_ID =
D3D11_MESSAGE_ID(390i32);
pub const D3D11_MESSAGE_ID_DEVICE_DRAW_SAMPLER_NOT_SET: D3D11_MESSAGE_ID = D3D11_MESSAGE_ID(352i32);
pub const D3D11_MESSAGE_ID_DEVICE_DRAW_SAMPLE_MASK_IGNORED_ON_FL9: D3D11_MESSAGE_ID =
D3D11_MESSAGE_ID(3146067i32);
pub const D3D11_MESSAGE_ID_DEVICE_DRAW_SHADERRESOURCEVIEW_NOT_SET: D3D11_MESSAGE_ID =
D3D11_MESSAGE_ID(353i32);
pub const D3D11_MESSAGE_ID_DEVICE_DRAW_SO_STRIDE_LARGER_THAN_BUFFER: D3D11_MESSAGE_ID =
D3D11_MESSAGE_ID(375i32);
pub const D3D11_MESSAGE_ID_DEVICE_DRAW_SO_TARGETS_BOUND_WITHOUT_SOURCE: D3D11_MESSAGE_ID =
D3D11_MESSAGE_ID(374i32);
pub const D3D11_MESSAGE_ID_DEVICE_DRAW_UNORDEREDACCESSVIEW_RENDERTARGETVIEW_OVERLAP:
D3D11_MESSAGE_ID = D3D11_MESSAGE_ID(2097374i32);
pub const D3D11_MESSAGE_ID_DEVICE_DRAW_VERTEXPOS_OVERFLOW: D3D11_MESSAGE_ID =
D3D11_MESSAGE_ID(335i32);
pub const D3D11_MESSAGE_ID_DEVICE_DRAW_VERTEX_BUFFER_NOT_SET: D3D11_MESSAGE_ID =
D3D11_MESSAGE_ID(348i32);
pub const D3D11_MESSAGE_ID_DEVICE_DRAW_VERTEX_BUFFER_STRIDE_TOO_SMALL: D3D11_MESSAGE_ID =
D3D11_MESSAGE_ID(355i32);
pub const D3D11_MESSAGE_ID_DEVICE_DRAW_VERTEX_BUFFER_TOO_SMALL: D3D11_MESSAGE_ID =
D3D11_MESSAGE_ID(356i32);
pub const D3D11_MESSAGE_ID_DEVICE_DRAW_VERTEX_OFFSET_UNALIGNED: D3D11_MESSAGE_ID =
D3D11_MESSAGE_ID(366i32);
pub const D3D11_MESSAGE_ID_DEVICE_DRAW_VERTEX_SHADER_NOT_SET: D3D11_MESSAGE_ID =
D3D11_MESSAGE_ID(341i32);
pub const D3D11_MESSAGE_ID_DEVICE_DRAW_VERTEX_STRIDE_UNALIGNED: D3D11_MESSAGE_ID =
D3D11_MESSAGE_ID(367i32);
pub const D3D11_MESSAGE_ID_DEVICE_DRAW_VIEWPORT_NOT_SET: D3D11_MESSAGE_ID =
D3D11_MESSAGE_ID(384i32);
pub const D3D11_MESSAGE_ID_DEVICE_DRAW_VIEW_DIMENSION_MISMATCH: D3D11_MESSAGE_ID =
D3D11_MESSAGE_ID(354i32);
pub const D3D11_MESSAGE_ID_DEVICE_DSGETCONSTANTBUFFERS_BUFFERS_EMPTY: D3D11_MESSAGE_ID =
D3D11_MESSAGE_ID(2097203i32);
pub const D3D11_MESSAGE_ID_DEVICE_DSGETSAMPLERS_SAMPLERS_EMPTY: D3D11_MESSAGE_ID =
D3D11_MESSAGE_ID(2097204i32);
pub const D3D11_MESSAGE_ID_DEVICE_DSGETSHADERRESOURCES_VIEWS_EMPTY: D3D11_MESSAGE_ID =
D3D11_MESSAGE_ID(2097202i32);
pub const D3D11_MESSAGE_ID_DEVICE_DSSETCONSTANTBUFFERS_BUFFERS_EMPTY: D3D11_MESSAGE_ID =
D3D11_MESSAGE_ID(2097200i32);
pub const D3D11_MESSAGE_ID_DEVICE_DSSETCONSTANTBUFFERS_HAZARD: D3D11_MESSAGE_ID =
D3D11_MESSAGE_ID(2097190i32);
pub const D3D11_MESSAGE_ID_DEVICE_DSSETSAMPLERS_SAMPLERS_EMPTY: D3D11_MESSAGE_ID =
D3D11_MESSAGE_ID(2097201i32);
pub const D3D11_MESSAGE_ID_DEVICE_DSSETSHADERRESOURCES_HAZARD: D3D11_MESSAGE_ID =
D3D11_MESSAGE_ID(2097189i32);
pub const D3D11_MESSAGE_ID_DEVICE_DSSETSHADERRESOURCES_VIEWS_EMPTY: D3D11_MESSAGE_ID =
D3D11_MESSAGE_ID(2097198i32);
pub const D3D11_MESSAGE_ID_DEVICE_GENERATEMIPS_RESOURCE_INVALID: D3D11_MESSAGE_ID =
D3D11_MESSAGE_ID(277i32);
pub const D3D11_MESSAGE_ID_DEVICE_GETRESOURCEMINLOD_INVALIDCONTEXT: D3D11_MESSAGE_ID =
D3D11_MESSAGE_ID(2097366i32);
pub const D3D11_MESSAGE_ID_DEVICE_GETRESOURCEMINLOD_INVALIDRESOURCE: D3D11_MESSAGE_ID =
D3D11_MESSAGE_ID(2097367i32);
pub const D3D11_MESSAGE_ID_DEVICE_GSGETCONSTANTBUFFERS_BUFFERS_EMPTY: D3D11_MESSAGE_ID =
D3D11_MESSAGE_ID(269i32);
pub const D3D11_MESSAGE_ID_DEVICE_GSGETSAMPLERS_SAMPLERS_EMPTY: D3D11_MESSAGE_ID =
D3D11_MESSAGE_ID(270i32);
pub const D3D11_MESSAGE_ID_DEVICE_GSGETSHADERRESOURCES_VIEWS_EMPTY: D3D11_MESSAGE_ID =
D3D11_MESSAGE_ID(268i32);
pub const D3D11_MESSAGE_ID_DEVICE_GSSETCONSTANTBUFFERS_BUFFERS_EMPTY: D3D11_MESSAGE_ID =
D3D11_MESSAGE_ID(251i32);
pub const D3D11_MESSAGE_ID_DEVICE_GSSETCONSTANTBUFFERS_HAZARD: D3D11_MESSAGE_ID =
D3D11_MESSAGE_ID(6i32);
pub const D3D11_MESSAGE_ID_DEVICE_GSSETSAMPLERS_SAMPLERS_EMPTY: D3D11_MESSAGE_ID =
D3D11_MESSAGE_ID(252i32);
pub const D3D11_MESSAGE_ID_DEVICE_GSSETSHADERRESOURCES_HAZARD: D3D11_MESSAGE_ID =
D3D11_MESSAGE_ID(5i32);
pub const D3D11_MESSAGE_ID_DEVICE_GSSETSHADERRESOURCES_VIEWS_EMPTY: D3D11_MESSAGE_ID =
D3D11_MESSAGE_ID(249i32);
pub const D3D11_MESSAGE_ID_DEVICE_HSGETCONSTANTBUFFERS_BUFFERS_EMPTY: D3D11_MESSAGE_ID =
D3D11_MESSAGE_ID(2097187i32);
pub const D3D11_MESSAGE_ID_DEVICE_HSGETSAMPLERS_SAMPLERS_EMPTY: D3D11_MESSAGE_ID =
D3D11_MESSAGE_ID(2097188i32);
pub const D3D11_MESSAGE_ID_DEVICE_HSGETSHADERRESOURCES_VIEWS_EMPTY: D3D11_MESSAGE_ID =
D3D11_MESSAGE_ID(2097186i32);
pub const D3D11_MESSAGE_ID_DEVICE_HSSETCONSTANTBUFFERS_BUFFERS_EMPTY: D3D11_MESSAGE_ID =
D3D11_MESSAGE_ID(2097184i32);
pub const D3D11_MESSAGE_ID_DEVICE_HSSETCONSTANTBUFFERS_HAZARD: D3D11_MESSAGE_ID =
D3D11_MESSAGE_ID(2097174i32);
pub const D3D11_MESSAGE_ID_DEVICE_HSSETSAMPLERS_SAMPLERS_EMPTY: D3D11_MESSAGE_ID =
D3D11_MESSAGE_ID(2097185i32);
pub const D3D11_MESSAGE_ID_DEVICE_HSSETSHADERRESOURCES_HAZARD: D3D11_MESSAGE_ID =
D3D11_MESSAGE_ID(2097173i32);
pub const D3D11_MESSAGE_ID_DEVICE_HSSETSHADERRESOURCES_VIEWS_EMPTY: D3D11_MESSAGE_ID =
D3D11_MESSAGE_ID(2097182i32);
pub const D3D11_MESSAGE_ID_DEVICE_IAGETVERTEXBUFFERS_BUFFERS_EMPTY: D3D11_MESSAGE_ID =
D3D11_MESSAGE_ID(264i32);
pub const D3D11_MESSAGE_ID_DEVICE_IASETINDEXBUFFER_FORMAT_INVALID: D3D11_MESSAGE_ID =
D3D11_MESSAGE_ID(242i32);
pub const D3D11_MESSAGE_ID_DEVICE_IASETINDEXBUFFER_HAZARD: D3D11_MESSAGE_ID =
D3D11_MESSAGE_ID(2i32);
pub const D3D11_MESSAGE_ID_DEVICE_IASETINDEXBUFFER_OFFSET_TOO_LARGE: D3D11_MESSAGE_ID =
D3D11_MESSAGE_ID(243i32);
pub const D3D11_MESSAGE_ID_DEVICE_IASETINDEXBUFFER_OFFSET_UNALIGNED: D3D11_MESSAGE_ID =
D3D11_MESSAGE_ID(244i32);
pub const D3D11_MESSAGE_ID_DEVICE_IASETPRIMITIVETOPOLOGY_ADJACENCY_UNSUPPORTED: D3D11_MESSAGE_ID =
D3D11_MESSAGE_ID(1048594i32);
pub const D3D11_MESSAGE_ID_DEVICE_IASETPRIMITIVETOPOLOGY_TOPOLOGY_UNDEFINED: D3D11_MESSAGE_ID =
D3D11_MESSAGE_ID(237i32);
pub const D3D11_MESSAGE_ID_DEVICE_IASETPRIMITIVETOPOLOGY_TOPOLOGY_UNRECOGNIZED: D3D11_MESSAGE_ID =
D3D11_MESSAGE_ID(236i32);
pub const D3D11_MESSAGE_ID_DEVICE_IASETPRIMITIVETOPOLOGY_TOPOLOGY_UNSUPPORTED: D3D11_MESSAGE_ID =
D3D11_MESSAGE_ID(2097220i32);
pub const D3D11_MESSAGE_ID_DEVICE_IASETVERTEXBUFFERS_BUFFERS_EMPTY: D3D11_MESSAGE_ID =
D3D11_MESSAGE_ID(240i32);
pub const D3D11_MESSAGE_ID_DEVICE_IASETVERTEXBUFFERS_HAZARD: D3D11_MESSAGE_ID =
D3D11_MESSAGE_ID(1i32);
pub const D3D11_MESSAGE_ID_DEVICE_IASETVERTEXBUFFERS_INVALIDRANGE: D3D11_MESSAGE_ID =
D3D11_MESSAGE_ID(419i32);
pub const D3D11_MESSAGE_ID_DEVICE_IASETVERTEXBUFFERS_OFFSET_TOO_LARGE: D3D11_MESSAGE_ID =
D3D11_MESSAGE_ID(239i32);
pub const D3D11_MESSAGE_ID_DEVICE_IASETVERTEXBUFFERS_STRIDE_TOO_LARGE: D3D11_MESSAGE_ID =
D3D11_MESSAGE_ID(418i32);
pub const D3D11_MESSAGE_ID_DEVICE_LOCKEDOUT_INTERFACE: D3D11_MESSAGE_ID =
D3D11_MESSAGE_ID(3145945i32);
pub const D3D11_MESSAGE_ID_DEVICE_OMSETRENDERTARGETSANDUNORDEREDACCESSVIEWS_HAZARD:
D3D11_MESSAGE_ID = D3D11_MESSAGE_ID(2097346i32);
pub const D3D11_MESSAGE_ID_DEVICE_OMSETRENDERTARGETSANDUNORDEREDACCESSVIEWS_INVALIDOFFSET:
D3D11_MESSAGE_ID = D3D11_MESSAGE_ID(3146060i32);
pub const D3D11_MESSAGE_ID_DEVICE_OMSETRENDERTARGETSANDUNORDEREDACCESSVIEWS_NO_OP:
D3D11_MESSAGE_ID = D3D11_MESSAGE_ID(2097348i32);
pub const D3D11_MESSAGE_ID_DEVICE_OMSETRENDERTARGETSANDUNORDEREDACCESSVIEWS_NUMUAVS_INVALIDRANGE:
D3D11_MESSAGE_ID = D3D11_MESSAGE_ID(2097422i32);
pub const D3D11_MESSAGE_ID_DEVICE_OMSETRENDERTARGETSANDUNORDEREDACCESSVIEWS_OVERLAPPING_OLD_SLOTS: D3D11_MESSAGE_ID = D3D11_MESSAGE_ID(2097347i32);
pub const D3D11_MESSAGE_ID_DEVICE_OMSETRENDERTARGETSANDUNORDEREDACCESSVIEWS_TOOMANYVIEWS:
D3D11_MESSAGE_ID = D3D11_MESSAGE_ID(3146061i32);
pub const D3D11_MESSAGE_ID_DEVICE_OMSETRENDERTARGETS_HAZARD: D3D11_MESSAGE_ID =
D3D11_MESSAGE_ID(9i32);
pub const D3D11_MESSAGE_ID_DEVICE_OPEN_SHARED_RESOURCE1_ACCESS_DENIED: D3D11_MESSAGE_ID =
D3D11_MESSAGE_ID(3146117i32);
pub const D3D11_MESSAGE_ID_DEVICE_OPEN_SHARED_RESOURCE1_NOT_SUPPORTED: D3D11_MESSAGE_ID =
D3D11_MESSAGE_ID(3146068i32);
pub const D3D11_MESSAGE_ID_DEVICE_OPEN_SHARED_RESOURCE_BADINTERFACE_RETURN: D3D11_MESSAGE_ID =
D3D11_MESSAGE_ID(383i32);
pub const D3D11_MESSAGE_ID_DEVICE_OPEN_SHARED_RESOURCE_BY_NAME_NOT_SUPPORTED: D3D11_MESSAGE_ID =
D3D11_MESSAGE_ID(3146069i32);
pub const D3D11_MESSAGE_ID_DEVICE_OPEN_SHARED_RESOURCE_INVALIDARG_RETURN: D3D11_MESSAGE_ID =
D3D11_MESSAGE_ID(381i32);
pub const D3D11_MESSAGE_ID_DEVICE_OPEN_SHARED_RESOURCE_OUTOFMEMORY_RETURN: D3D11_MESSAGE_ID =
D3D11_MESSAGE_ID(382i32);
pub const D3D11_MESSAGE_ID_DEVICE_PSGETCONSTANTBUFFERS_BUFFERS_EMPTY: D3D11_MESSAGE_ID =
D3D11_MESSAGE_ID(273i32);
pub const D3D11_MESSAGE_ID_DEVICE_PSGETSAMPLERS_SAMPLERS_EMPTY: D3D11_MESSAGE_ID =
D3D11_MESSAGE_ID(274i32);
pub const D3D11_MESSAGE_ID_DEVICE_PSGETSHADERRESOURCES_VIEWS_EMPTY: D3D11_MESSAGE_ID =
D3D11_MESSAGE_ID(272i32);
pub const D3D11_MESSAGE_ID_DEVICE_PSSETCONSTANTBUFFERS_BUFFERS_EMPTY: D3D11_MESSAGE_ID =
D3D11_MESSAGE_ID(257i32);
pub const D3D11_MESSAGE_ID_DEVICE_PSSETCONSTANTBUFFERS_HAZARD: D3D11_MESSAGE_ID =
D3D11_MESSAGE_ID(8i32);
pub const D3D11_MESSAGE_ID_DEVICE_PSSETSAMPLERS_SAMPLERS_EMPTY: D3D11_MESSAGE_ID =
D3D11_MESSAGE_ID(258i32);
pub const D3D11_MESSAGE_ID_DEVICE_PSSETSHADERRESOURCES_HAZARD: D3D11_MESSAGE_ID =
D3D11_MESSAGE_ID(7i32);
pub const D3D11_MESSAGE_ID_DEVICE_PSSETSHADERRESOURCES_VIEWS_EMPTY: D3D11_MESSAGE_ID =
D3D11_MESSAGE_ID(255i32);
pub const D3D11_MESSAGE_ID_DEVICE_REMOVAL_PROCESS_AT_FAULT: D3D11_MESSAGE_ID =
D3D11_MESSAGE_ID(378i32);
pub const D3D11_MESSAGE_ID_DEVICE_REMOVAL_PROCESS_NOT_AT_FAULT: D3D11_MESSAGE_ID =
D3D11_MESSAGE_ID(380i32);
pub const D3D11_MESSAGE_ID_DEVICE_REMOVAL_PROCESS_POSSIBLY_AT_FAULT: D3D11_MESSAGE_ID =
D3D11_MESSAGE_ID(379i32);
pub const D3D11_MESSAGE_ID_DEVICE_RESOLVESUBRESOURCE_DESTINATION_INVALID: D3D11_MESSAGE_ID =
D3D11_MESSAGE_ID(290i32);
pub const D3D11_MESSAGE_ID_DEVICE_RESOLVESUBRESOURCE_DESTINATION_SUBRESOURCE_INVALID:
D3D11_MESSAGE_ID = D3D11_MESSAGE_ID(291i32);
pub const D3D11_MESSAGE_ID_DEVICE_RESOLVESUBRESOURCE_FORMAT_INVALID: D3D11_MESSAGE_ID =
D3D11_MESSAGE_ID(294i32);
pub const D3D11_MESSAGE_ID_DEVICE_RESOLVESUBRESOURCE_SOURCE_INVALID: D3D11_MESSAGE_ID =
D3D11_MESSAGE_ID(292i32);
pub const D3D11_MESSAGE_ID_DEVICE_RESOLVESUBRESOURCE_SOURCE_SUBRESOURCE_INVALID: D3D11_MESSAGE_ID =
D3D11_MESSAGE_ID(293i32);
pub const D3D11_MESSAGE_ID_DEVICE_RSGETSCISSORRECTS_RECTS_EMPTY: D3D11_MESSAGE_ID =
D3D11_MESSAGE_ID(276i32);
pub const D3D11_MESSAGE_ID_DEVICE_RSGETVIEWPORTS_VIEWPORTS_EMPTY: D3D11_MESSAGE_ID =
D3D11_MESSAGE_ID(275i32);
pub const D3D11_MESSAGE_ID_DEVICE_RSSETSCISSORRECTS_INVALIDSCISSOR: D3D11_MESSAGE_ID =
D3D11_MESSAGE_ID(260i32);
pub const D3D11_MESSAGE_ID_DEVICE_RSSETSCISSORRECTS_NEGATIVESCISSOR: D3D11_MESSAGE_ID =
D3D11_MESSAGE_ID(1048632i32);
pub const D3D11_MESSAGE_ID_DEVICE_RSSETSCISSORRECTS_TOO_MANY_SCISSORS: D3D11_MESSAGE_ID =
D3D11_MESSAGE_ID(1048595i32);
pub const D3D11_MESSAGE_ID_DEVICE_RSSETVIEWPORTS_DENORMFLUSH: D3D11_MESSAGE_ID =
D3D11_MESSAGE_ID(387i32);
pub const D3D11_MESSAGE_ID_DEVICE_RSSETVIEWPORTS_INVALIDVIEWPORT: D3D11_MESSAGE_ID =
D3D11_MESSAGE_ID(259i32);
pub const D3D11_MESSAGE_ID_DEVICE_RSSETVIEWPORTS_TOO_MANY_VIEWPORTS: D3D11_MESSAGE_ID =
D3D11_MESSAGE_ID(1048593i32);
pub const D3D11_MESSAGE_ID_DEVICE_SETHARDWAREPROTECTION_INVALIDCONTEXT: D3D11_MESSAGE_ID =
D3D11_MESSAGE_ID(3146224i32);
pub const D3D11_MESSAGE_ID_DEVICE_SETRESOURCEMINLOD_INVALIDCONTEXT: D3D11_MESSAGE_ID =
D3D11_MESSAGE_ID(2097363i32);
pub const D3D11_MESSAGE_ID_DEVICE_SETRESOURCEMINLOD_INVALIDMINLOD: D3D11_MESSAGE_ID =
D3D11_MESSAGE_ID(2097365i32);
pub const D3D11_MESSAGE_ID_DEVICE_SETRESOURCEMINLOD_INVALIDRESOURCE: D3D11_MESSAGE_ID =
D3D11_MESSAGE_ID(2097364i32);
pub const D3D11_MESSAGE_ID_DEVICE_SETSHADER_INSTANCE_DATA_BINDINGS: D3D11_MESSAGE_ID =
D3D11_MESSAGE_ID(2097311i32);
pub const D3D11_MESSAGE_ID_DEVICE_SETSHADER_INTERFACES_FEATURELEVEL: D3D11_MESSAGE_ID =
D3D11_MESSAGE_ID(2097304i32);
pub const D3D11_MESSAGE_ID_DEVICE_SETSHADER_INTERFACE_COUNT_MISMATCH: D3D11_MESSAGE_ID =
D3D11_MESSAGE_ID(2097305i32);
pub const D3D11_MESSAGE_ID_DEVICE_SETSHADER_INVALID_INSTANCE: D3D11_MESSAGE_ID =
D3D11_MESSAGE_ID(2097306i32);
pub const D3D11_MESSAGE_ID_DEVICE_SETSHADER_INVALID_INSTANCE_DATA: D3D11_MESSAGE_ID =
D3D11_MESSAGE_ID(2097309i32);
pub const D3D11_MESSAGE_ID_DEVICE_SETSHADER_INVALID_INSTANCE_INDEX: D3D11_MESSAGE_ID =
D3D11_MESSAGE_ID(2097307i32);
pub const D3D11_MESSAGE_ID_DEVICE_SETSHADER_INVALID_INSTANCE_TYPE: D3D11_MESSAGE_ID =
D3D11_MESSAGE_ID(2097308i32);
pub const D3D11_MESSAGE_ID_DEVICE_SETSHADER_UNBOUND_INSTANCE_DATA: D3D11_MESSAGE_ID =
D3D11_MESSAGE_ID(2097310i32);
pub const D3D11_MESSAGE_ID_DEVICE_SETTEXTFILTERSIZE_INVALIDDIMENSIONS: D3D11_MESSAGE_ID =
D3D11_MESSAGE_ID(389i32);
pub const D3D11_MESSAGE_ID_DEVICE_SHADERRESOURCEVIEW_BUFFER_TYPE_MISMATCH: D3D11_MESSAGE_ID =
D3D11_MESSAGE_ID(2097393i32);
pub const D3D11_MESSAGE_ID_DEVICE_SHADERRESOURCEVIEW_RAW_UNSUPPORTED: D3D11_MESSAGE_ID =
D3D11_MESSAGE_ID(2097394i32);
pub const D3D11_MESSAGE_ID_DEVICE_SHADERRESOURCEVIEW_STRUCTURE_STRIDE_MISMATCH: D3D11_MESSAGE_ID =
D3D11_MESSAGE_ID(2097392i32);
pub const D3D11_MESSAGE_ID_DEVICE_SHADER_LINKAGE_COMPONENTTYPE: D3D11_MESSAGE_ID =
D3D11_MESSAGE_ID(344i32);
pub const D3D11_MESSAGE_ID_DEVICE_SHADER_LINKAGE_MINPRECISION: D3D11_MESSAGE_ID =
D3D11_MESSAGE_ID(3146050i32);
pub const D3D11_MESSAGE_ID_DEVICE_SHADER_LINKAGE_NEVERWRITTEN_ALWAYSREADS: D3D11_MESSAGE_ID =
D3D11_MESSAGE_ID(347i32);
pub const D3D11_MESSAGE_ID_DEVICE_SHADER_LINKAGE_REGISTERINDEX: D3D11_MESSAGE_ID =
D3D11_MESSAGE_ID(343i32);
pub const D3D11_MESSAGE_ID_DEVICE_SHADER_LINKAGE_REGISTERMASK: D3D11_MESSAGE_ID =
D3D11_MESSAGE_ID(345i32);
pub const D3D11_MESSAGE_ID_DEVICE_SHADER_LINKAGE_SEMANTICNAME_NOT_FOUND: D3D11_MESSAGE_ID =
D3D11_MESSAGE_ID(342i32);
pub const D3D11_MESSAGE_ID_DEVICE_SHADER_LINKAGE_SYSTEMVALUE: D3D11_MESSAGE_ID =
D3D11_MESSAGE_ID(346i32);
pub const D3D11_MESSAGE_ID_DEVICE_SOGETTARGETS_BUFFERS_EMPTY: D3D11_MESSAGE_ID =
D3D11_MESSAGE_ID(271i32);
pub const D3D11_MESSAGE_ID_DEVICE_SOSETTARGETS_HAZARD: D3D11_MESSAGE_ID = D3D11_MESSAGE_ID(10i32);
pub const D3D11_MESSAGE_ID_DEVICE_SOSETTARGETS_OFFSET_UNALIGNED: D3D11_MESSAGE_ID =
D3D11_MESSAGE_ID(254i32);
pub const D3D11_MESSAGE_ID_DEVICE_UNORDEREDACCESSVIEW_APPEND_UNSUPPORTED: D3D11_MESSAGE_ID =
D3D11_MESSAGE_ID(2097376i32);
pub const D3D11_MESSAGE_ID_DEVICE_UNORDEREDACCESSVIEW_ATOMICS_UNSUPPORTED: D3D11_MESSAGE_ID =
D3D11_MESSAGE_ID(2097377i32);
pub const D3D11_MESSAGE_ID_DEVICE_UNORDEREDACCESSVIEW_ATOMIC_ADD_UNSUPPORTED: D3D11_MESSAGE_ID =
D3D11_MESSAGE_ID(2097383i32);
pub const D3D11_MESSAGE_ID_DEVICE_UNORDEREDACCESSVIEW_ATOMIC_BITWISE_OPS_UNSUPPORTED:
D3D11_MESSAGE_ID = D3D11_MESSAGE_ID(2097384i32);
pub const D3D11_MESSAGE_ID_DEVICE_UNORDEREDACCESSVIEW_ATOMIC_CMPSTORE_CMPEXCHANGE_UNSUPPORTED:
D3D11_MESSAGE_ID = D3D11_MESSAGE_ID(2097385i32);
pub const D3D11_MESSAGE_ID_DEVICE_UNORDEREDACCESSVIEW_ATOMIC_EXCHANGE_UNSUPPORTED:
D3D11_MESSAGE_ID = D3D11_MESSAGE_ID(2097386i32);
pub const D3D11_MESSAGE_ID_DEVICE_UNORDEREDACCESSVIEW_ATOMIC_SIGNED_MINMAX_UNSUPPORTED:
D3D11_MESSAGE_ID = D3D11_MESSAGE_ID(2097387i32);
pub const D3D11_MESSAGE_ID_DEVICE_UNORDEREDACCESSVIEW_ATOMIC_UNSIGNED_MINMAX_UNSUPPORTED:
D3D11_MESSAGE_ID = D3D11_MESSAGE_ID(2097388i32);
pub const D3D11_MESSAGE_ID_DEVICE_UNORDEREDACCESSVIEW_BUFFER_TYPE_MISMATCH: D3D11_MESSAGE_ID =
D3D11_MESSAGE_ID(2097379i32);
pub const D3D11_MESSAGE_ID_DEVICE_UNORDEREDACCESSVIEW_COUNTER_UNSUPPORTED: D3D11_MESSAGE_ID =
D3D11_MESSAGE_ID(2097406i32);
pub const D3D11_MESSAGE_ID_DEVICE_UNORDEREDACCESSVIEW_DIMENSION_MISMATCH: D3D11_MESSAGE_ID =
D3D11_MESSAGE_ID(2097375i32);
pub const D3D11_MESSAGE_ID_DEVICE_UNORDEREDACCESSVIEW_FORMAT_LD_UNSUPPORTED: D3D11_MESSAGE_ID =
D3D11_MESSAGE_ID(2097381i32);
pub const D3D11_MESSAGE_ID_DEVICE_UNORDEREDACCESSVIEW_FORMAT_STORE_UNSUPPORTED: D3D11_MESSAGE_ID =
D3D11_MESSAGE_ID(2097382i32);
pub const D3D11_MESSAGE_ID_DEVICE_UNORDEREDACCESSVIEW_NOT_SET: D3D11_MESSAGE_ID =
D3D11_MESSAGE_ID(2097373i32);
pub const D3D11_MESSAGE_ID_DEVICE_UNORDEREDACCESSVIEW_NOT_SET_DUE_TO_FLIP_PRESENT:
D3D11_MESSAGE_ID = D3D11_MESSAGE_ID(3146083i32);
pub const D3D11_MESSAGE_ID_DEVICE_UNORDEREDACCESSVIEW_RAW_UNSUPPORTED: D3D11_MESSAGE_ID =
D3D11_MESSAGE_ID(2097380i32);
pub const D3D11_MESSAGE_ID_DEVICE_UNORDEREDACCESSVIEW_RETURN_TYPE_MISMATCH: D3D11_MESSAGE_ID =
D3D11_MESSAGE_ID(2097372i32);
pub const D3D11_MESSAGE_ID_DEVICE_UNORDEREDACCESSVIEW_STRUCTURE_STRIDE_MISMATCH: D3D11_MESSAGE_ID =
D3D11_MESSAGE_ID(2097378i32);
pub const D3D11_MESSAGE_ID_DEVICE_VSGETCONSTANTBUFFERS_BUFFERS_EMPTY: D3D11_MESSAGE_ID =
D3D11_MESSAGE_ID(266i32);
pub const D3D11_MESSAGE_ID_DEVICE_VSGETSAMPLERS_SAMPLERS_EMPTY: D3D11_MESSAGE_ID =
D3D11_MESSAGE_ID(267i32);
pub const D3D11_MESSAGE_ID_DEVICE_VSGETSHADERRESOURCES_VIEWS_EMPTY: D3D11_MESSAGE_ID =
D3D11_MESSAGE_ID(265i32);
pub const D3D11_MESSAGE_ID_DEVICE_VSSETCONSTANTBUFFERS_BUFFERS_EMPTY: D3D11_MESSAGE_ID =
D3D11_MESSAGE_ID(247i32);
pub const D3D11_MESSAGE_ID_DEVICE_VSSETCONSTANTBUFFERS_HAZARD: D3D11_MESSAGE_ID =
D3D11_MESSAGE_ID(4i32);
pub const D3D11_MESSAGE_ID_DEVICE_VSSETSAMPLERS_SAMPLERS_EMPTY: D3D11_MESSAGE_ID =
D3D11_MESSAGE_ID(248i32);
pub const D3D11_MESSAGE_ID_DEVICE_VSSETSHADERRESOURCES_HAZARD: D3D11_MESSAGE_ID =
D3D11_MESSAGE_ID(3i32);
pub const D3D11_MESSAGE_ID_DEVICE_VSSETSHADERRESOURCES_VIEWS_EMPTY: D3D11_MESSAGE_ID =
D3D11_MESSAGE_ID(245i32);
pub const D3D11_MESSAGE_ID_DIRTY_TILE_MAPPING_ACCESS: D3D11_MESSAGE_ID =
D3D11_MESSAGE_ID(3146133i32);
pub const D3D11_MESSAGE_ID_DRAWINDEXEDINSTANCED_NOT_SUPPORTED_BELOW_9_3: D3D11_MESSAGE_ID =
D3D11_MESSAGE_ID(1048627i32);
pub const D3D11_MESSAGE_ID_DRAWINDEXED_POINTLIST_UNSUPPORTED: D3D11_MESSAGE_ID =
D3D11_MESSAGE_ID(1048628i32);
pub const D3D11_MESSAGE_ID_DRAWINDEXED_STARTINDEXLOCATION_MUST_BE_POSITIVE: D3D11_MESSAGE_ID =
D3D11_MESSAGE_ID(1048602i32);
pub const D3D11_MESSAGE_ID_DRAWINSTANCED_NOT_SUPPORTED: D3D11_MESSAGE_ID =
D3D11_MESSAGE_ID(1048626i32);
pub const D3D11_MESSAGE_ID_DSSETCONSTANTBUFFERS_INVALIDBUFFER: D3D11_MESSAGE_ID =
D3D11_MESSAGE_ID(2097199i32);
pub const D3D11_MESSAGE_ID_DSSETCONSTANTBUFFERS_INVALIDBUFFEROFFSETORCOUNT: D3D11_MESSAGE_ID =
D3D11_MESSAGE_ID(3146017i32);
pub const D3D11_MESSAGE_ID_DSSETCONSTANTBUFFERS_UNBINDDELETINGOBJECT: D3D11_MESSAGE_ID =
D3D11_MESSAGE_ID(2097192i32);
pub const D3D11_MESSAGE_ID_DSSETSAMPLERS_UNBINDDELETINGOBJECT: D3D11_MESSAGE_ID =
D3D11_MESSAGE_ID(2097414i32);
pub const D3D11_MESSAGE_ID_DSSETSHADERRESOURCES_UNBINDDELETINGOBJECT: D3D11_MESSAGE_ID =
D3D11_MESSAGE_ID(2097191i32);
pub const D3D11_MESSAGE_ID_DSSETSHADER_UNBINDDELETINGOBJECT: D3D11_MESSAGE_ID =
D3D11_MESSAGE_ID(2097417i32);
pub const D3D11_MESSAGE_ID_DUPLICATE_TILE_MAPPINGS_IN_COVERED_AREA: D3D11_MESSAGE_ID =
D3D11_MESSAGE_ID(3146134i32);
pub const D3D11_MESSAGE_ID_ENCRYPTIONBLT_DST_MAPPED: D3D11_MESSAGE_ID =
D3D11_MESSAGE_ID(3145969i32);
pub const D3D11_MESSAGE_ID_ENCRYPTIONBLT_DST_NOT_STAGING: D3D11_MESSAGE_ID =
D3D11_MESSAGE_ID(3145967i32);
pub const D3D11_MESSAGE_ID_ENCRYPTIONBLT_DST_OFFERED: D3D11_MESSAGE_ID =
D3D11_MESSAGE_ID(3145971i32);
pub const D3D11_MESSAGE_ID_ENCRYPTIONBLT_DST_WRONGDEVICE: D3D11_MESSAGE_ID =
D3D11_MESSAGE_ID(3145963i32);
pub const D3D11_MESSAGE_ID_ENCRYPTIONBLT_FORMAT_MISMATCH: D3D11_MESSAGE_ID =
D3D11_MESSAGE_ID(3145964i32);
pub const D3D11_MESSAGE_ID_ENCRYPTIONBLT_NULLPARAM: D3D11_MESSAGE_ID = D3D11_MESSAGE_ID(3145961i32);
pub const D3D11_MESSAGE_ID_ENCRYPTIONBLT_SIZE_MISMATCH: D3D11_MESSAGE_ID =
D3D11_MESSAGE_ID(3145965i32);
pub const D3D11_MESSAGE_ID_ENCRYPTIONBLT_SRC_CONTENT_UNDEFINED: D3D11_MESSAGE_ID =
D3D11_MESSAGE_ID(3145972i32);
pub const D3D11_MESSAGE_ID_ENCRYPTIONBLT_SRC_MAPPED: D3D11_MESSAGE_ID =
D3D11_MESSAGE_ID(3145968i32);
pub const D3D11_MESSAGE_ID_ENCRYPTIONBLT_SRC_MULTISAMPLED: D3D11_MESSAGE_ID =
D3D11_MESSAGE_ID(3145966i32);
pub const D3D11_MESSAGE_ID_ENCRYPTIONBLT_SRC_OFFERED: D3D11_MESSAGE_ID =
D3D11_MESSAGE_ID(3145970i32);
pub const D3D11_MESSAGE_ID_ENCRYPTIONBLT_SRC_WRONGDEVICE: D3D11_MESSAGE_ID =
D3D11_MESSAGE_ID(3145962i32);
pub const D3D11_MESSAGE_ID_ENCRYPTIONBLT_UNSUPPORTED: D3D11_MESSAGE_ID =
D3D11_MESSAGE_ID(3145960i32);
pub const D3D11_MESSAGE_ID_END_TRACKED_WORKLOAD_INVALID_ARG: D3D11_MESSAGE_ID =
D3D11_MESSAGE_ID(3146282i32);
pub const D3D11_MESSAGE_ID_ENQUEUESETEVENT_ACCESSDENIED_RETURN: D3D11_MESSAGE_ID =
D3D11_MESSAGE_ID(2097421i32);
pub const D3D11_MESSAGE_ID_ENQUEUESETEVENT_INVALIDARG_RETURN: D3D11_MESSAGE_ID =
D3D11_MESSAGE_ID(2097419i32);
pub const D3D11_MESSAGE_ID_ENQUEUESETEVENT_NOT_SUPPORTED: D3D11_MESSAGE_ID =
D3D11_MESSAGE_ID(3146070i32);
pub const D3D11_MESSAGE_ID_ENQUEUESETEVENT_OUTOFMEMORY_RETURN: D3D11_MESSAGE_ID =
D3D11_MESSAGE_ID(2097420i32);
pub const D3D11_MESSAGE_ID_FINISHDISPLAYLIST_INVALID_CALL_RETURN: D3D11_MESSAGE_ID =
D3D11_MESSAGE_ID(2097168i32);
pub const D3D11_MESSAGE_ID_FINISHDISPLAYLIST_ONIMMEDIATECONTEXT: D3D11_MESSAGE_ID =
D3D11_MESSAGE_ID(2097166i32);
pub const D3D11_MESSAGE_ID_FINISHDISPLAYLIST_OUTOFMEMORY_RETURN: D3D11_MESSAGE_ID =
D3D11_MESSAGE_ID(2097167i32);
pub const D3D11_MESSAGE_ID_FINISHSESSIONKEYREFRESH_NULLPARAM: D3D11_MESSAGE_ID =
D3D11_MESSAGE_ID(3145989i32);
pub const D3D11_MESSAGE_ID_FLUSH1_INVALIDCONTEXTTYPE: D3D11_MESSAGE_ID =
D3D11_MESSAGE_ID(3146223i32);
pub const D3D11_MESSAGE_ID_GEOMETRY_SHADER_NOT_SUPPORTED: D3D11_MESSAGE_ID =
D3D11_MESSAGE_ID(1048619i32);
pub const D3D11_MESSAGE_ID_GETAUTHENTICATEDCHANNELCERTIFICATESIZE_INVALIDCHANNEL: D3D11_MESSAGE_ID =
D3D11_MESSAGE_ID(3145999i32);
pub const D3D11_MESSAGE_ID_GETAUTHENTICATEDCHANNELCERTIFICATESIZE_NULLPARAM: D3D11_MESSAGE_ID =
D3D11_MESSAGE_ID(3146000i32);
pub const D3D11_MESSAGE_ID_GETAUTHENTICATEDCHANNELCERTIFICATE_INVALIDCHANNEL: D3D11_MESSAGE_ID =
D3D11_MESSAGE_ID(3146001i32);
pub const D3D11_MESSAGE_ID_GETAUTHENTICATEDCHANNELCERTIFICATE_NULLPARAM: D3D11_MESSAGE_ID =
D3D11_MESSAGE_ID(3146002i32);
pub const D3D11_MESSAGE_ID_GETAUTHENTICATEDCHANNELCERTIFICATE_WRONGSIZE: D3D11_MESSAGE_ID =
D3D11_MESSAGE_ID(3146003i32);
pub const D3D11_MESSAGE_ID_GETCONTENTPROTECTIONCAPS_NULLPARAM: D3D11_MESSAGE_ID =
D3D11_MESSAGE_ID(3145992i32);
pub const D3D11_MESSAGE_ID_GETCRYPTOSESSIONCERTIFICATESIZE_NULLPARAM: D3D11_MESSAGE_ID =
D3D11_MESSAGE_ID(3145955i32);
pub const D3D11_MESSAGE_ID_GETCRYPTOSESSIONCERTIFICATE_NULLPARAM: D3D11_MESSAGE_ID =
D3D11_MESSAGE_ID(3145956i32);
pub const D3D11_MESSAGE_ID_GETCRYPTOSESSIONCERTIFICATE_WRONGSIZE: D3D11_MESSAGE_ID =
D3D11_MESSAGE_ID(3145957i32);
pub const D3D11_MESSAGE_ID_GETCRYPTOSESSIONHANDLE_OUTOFMEMORY: D3D11_MESSAGE_ID =
D3D11_MESSAGE_ID(3146025i32);
pub const D3D11_MESSAGE_ID_GETCRYPTOSESSIONHANDLE_WRONGSIZE: D3D11_MESSAGE_ID =
D3D11_MESSAGE_ID(3145958i32);
pub const D3D11_MESSAGE_ID_GETCRYPTOSESSIONPRIVATEDATASIZE_INVALID_KEY_EXCHANGE_TYPE:
D3D11_MESSAGE_ID = D3D11_MESSAGE_ID(3146116i32);
pub const D3D11_MESSAGE_ID_GETCRYPTOSESSIONPRIVATEDATASIZE_NULLPARAM: D3D11_MESSAGE_ID =
D3D11_MESSAGE_ID(3146086i32);
pub const D3D11_MESSAGE_ID_GETCRYPTOTYPE_NULLPARAM: D3D11_MESSAGE_ID = D3D11_MESSAGE_ID(3145953i32);
pub const D3D11_MESSAGE_ID_GETDATAFORNEWHARDWAREKEY_NULLPARAM: D3D11_MESSAGE_ID =
D3D11_MESSAGE_ID(3146084i32);
pub const D3D11_MESSAGE_ID_GETDC_INACCESSIBLE: D3D11_MESSAGE_ID = D3D11_MESSAGE_ID(3146065i32);
pub const D3D11_MESSAGE_ID_GETDECODERBUFFER_INVALIDBUFFER: D3D11_MESSAGE_ID =
D3D11_MESSAGE_ID(3145778i32);
pub const D3D11_MESSAGE_ID_GETDECODERBUFFER_INVALIDTYPE: D3D11_MESSAGE_ID =
D3D11_MESSAGE_ID(3145779i32);
pub const D3D11_MESSAGE_ID_GETDECODERBUFFER_LOCKED: D3D11_MESSAGE_ID = D3D11_MESSAGE_ID(3145780i32);
pub const D3D11_MESSAGE_ID_GETDECODERBUFFER_NULLPARAM: D3D11_MESSAGE_ID =
D3D11_MESSAGE_ID(3145777i32);
pub const D3D11_MESSAGE_ID_GETDECODERCREATIONPARAMS_NULLPARAM: D3D11_MESSAGE_ID =
D3D11_MESSAGE_ID(3145775i32);
pub const D3D11_MESSAGE_ID_GETDECODERDRIVERHANDLE_NULLPARAM: D3D11_MESSAGE_ID =
D3D11_MESSAGE_ID(3145776i32);
pub const D3D11_MESSAGE_ID_GETDECODERPROFILE_NULLPARAM: D3D11_MESSAGE_ID =
D3D11_MESSAGE_ID(3145954i32);
pub const D3D11_MESSAGE_ID_GETENCRYPTIONBLTKEY_INVALIDSIZE: D3D11_MESSAGE_ID =
D3D11_MESSAGE_ID(3145991i32);
pub const D3D11_MESSAGE_ID_GETENCRYPTIONBLTKEY_NULLPARAM: D3D11_MESSAGE_ID =
D3D11_MESSAGE_ID(3145990i32);
pub const D3D11_MESSAGE_ID_GETPRIVATEDATA_MOREDATA: D3D11_MESSAGE_ID = D3D11_MESSAGE_ID(51i32);
pub const D3D11_MESSAGE_ID_GETRESOURCETILING_NONTILED_RESOURCE: D3D11_MESSAGE_ID =
D3D11_MESSAGE_ID(3146139i32);
pub const D3D11_MESSAGE_ID_GETVIDEODECODERCAPS_NULLPARAM: D3D11_MESSAGE_ID =
D3D11_MESSAGE_ID(3146087i32);
pub const D3D11_MESSAGE_ID_GETVIDEODECODERCAPS_ZEROWIDTHHEIGHT: D3D11_MESSAGE_ID =
D3D11_MESSAGE_ID(3146088i32);
pub const D3D11_MESSAGE_ID_GETVIDEODECODERCONFIGCOUNT_NULLPARAM: D3D11_MESSAGE_ID =
D3D11_MESSAGE_ID(3145770i32);
pub const D3D11_MESSAGE_ID_GETVIDEODECODERCONFIGCOUNT_OUTOFMEMORY_RETURN: D3D11_MESSAGE_ID =
D3D11_MESSAGE_ID(3145771i32);
pub const D3D11_MESSAGE_ID_GETVIDEODECODERCONFIG_INVALIDINDEX: D3D11_MESSAGE_ID =
D3D11_MESSAGE_ID(3145773i32);
pub const D3D11_MESSAGE_ID_GETVIDEODECODERCONFIG_NULLPARAM: D3D11_MESSAGE_ID =
D3D11_MESSAGE_ID(3145772i32);
pub const D3D11_MESSAGE_ID_GETVIDEODECODERCONFIG_OUTOFMEMORY_RETURN: D3D11_MESSAGE_ID =
D3D11_MESSAGE_ID(3145774i32);
pub const D3D11_MESSAGE_ID_GETVIDEODECODERPROFILECOUNT_OUTOFMEMORY: D3D11_MESSAGE_ID =
D3D11_MESSAGE_ID(3145764i32);
pub const D3D11_MESSAGE_ID_GETVIDEODECODERPROFILE_INVALIDINDEX: D3D11_MESSAGE_ID =
D3D11_MESSAGE_ID(3145766i32);
pub const D3D11_MESSAGE_ID_GETVIDEODECODERPROFILE_NULLPARAM: D3D11_MESSAGE_ID =
D3D11_MESSAGE_ID(3145765i32);
pub const D3D11_MESSAGE_ID_GETVIDEODECODERPROFILE_OUTOFMEMORY_RETURN: D3D11_MESSAGE_ID =
D3D11_MESSAGE_ID(3145767i32);
pub const D3D11_MESSAGE_ID_GETVIDEOPROCESSORCAPS_NULLPARAM: D3D11_MESSAGE_ID =
D3D11_MESSAGE_ID(3145800i32);
pub const D3D11_MESSAGE_ID_GETVIDEOPROCESSORCONTENTDESC_NULLPARAM: D3D11_MESSAGE_ID =
D3D11_MESSAGE_ID(3145798i32);
pub const D3D11_MESSAGE_ID_GETVIDEOPROCESSORCUSTOMRATE_INVALIDINDEX: D3D11_MESSAGE_ID =
D3D11_MESSAGE_ID(3145804i32);
pub const D3D11_MESSAGE_ID_GETVIDEOPROCESSORCUSTOMRATE_NULLPARAM: D3D11_MESSAGE_ID =
D3D11_MESSAGE_ID(3145803i32);
pub const D3D11_MESSAGE_ID_GETVIDEOPROCESSORFILTERRANGE_NULLPARAM: D3D11_MESSAGE_ID =
D3D11_MESSAGE_ID(3145805i32);
pub const D3D11_MESSAGE_ID_GETVIDEOPROCESSORFILTERRANGE_UNSUPPORTED: D3D11_MESSAGE_ID =
D3D11_MESSAGE_ID(3145806i32);
pub const D3D11_MESSAGE_ID_GETVIDEOPROCESSORRATECONVERSIONCAPS_INVALIDINDEX: D3D11_MESSAGE_ID =
D3D11_MESSAGE_ID(3145802i32);
pub const D3D11_MESSAGE_ID_GETVIDEOPROCESSORRATECONVERSIONCAPS_NULLPARAM: D3D11_MESSAGE_ID =
D3D11_MESSAGE_ID(3145801i32);
pub const D3D11_MESSAGE_ID_GSSETCONSTANTBUFFERS_INVALIDBUFFER: D3D11_MESSAGE_ID =
D3D11_MESSAGE_ID(250i32);
pub const D3D11_MESSAGE_ID_GSSETCONSTANTBUFFERS_INVALIDBUFFEROFFSETORCOUNT: D3D11_MESSAGE_ID =
D3D11_MESSAGE_ID(3146019i32);
pub const D3D11_MESSAGE_ID_GSSETCONSTANTBUFFERS_UNBINDDELETINGOBJECT: D3D11_MESSAGE_ID =
D3D11_MESSAGE_ID(39i32);
pub const D3D11_MESSAGE_ID_GSSETSAMPLERS_UNBINDDELETINGOBJECT: D3D11_MESSAGE_ID =
D3D11_MESSAGE_ID(40i32);
pub const D3D11_MESSAGE_ID_GSSETSHADERRESOURCES_UNBINDDELETINGOBJECT: D3D11_MESSAGE_ID =
D3D11_MESSAGE_ID(38i32);
pub const D3D11_MESSAGE_ID_GSSETSHADER_UNBINDDELETINGOBJECT: D3D11_MESSAGE_ID =
D3D11_MESSAGE_ID(37i32);
pub const D3D11_MESSAGE_ID_HSSETCONSTANTBUFFERS_INVALIDBUFFER: D3D11_MESSAGE_ID =
D3D11_MESSAGE_ID(2097183i32);
pub const D3D11_MESSAGE_ID_HSSETCONSTANTBUFFERS_INVALIDBUFFEROFFSETORCOUNT: D3D11_MESSAGE_ID =
D3D11_MESSAGE_ID(3146018i32);
pub const D3D11_MESSAGE_ID_HSSETCONSTANTBUFFERS_UNBINDDELETINGOBJECT: D3D11_MESSAGE_ID =
D3D11_MESSAGE_ID(2097176i32);
pub const D3D11_MESSAGE_ID_HSSETSAMPLERS_UNBINDDELETINGOBJECT: D3D11_MESSAGE_ID =
D3D11_MESSAGE_ID(2097413i32);
pub const D3D11_MESSAGE_ID_HSSETSHADERRESOURCES_UNBINDDELETINGOBJECT: D3D11_MESSAGE_ID =
D3D11_MESSAGE_ID(2097175i32);
pub const D3D11_MESSAGE_ID_HSSETSHADER_UNBINDDELETINGOBJECT: D3D11_MESSAGE_ID =
D3D11_MESSAGE_ID(2097416i32);
pub const D3D11_MESSAGE_ID_IASETINDEXBUFFER_INVALIDBUFFER: D3D11_MESSAGE_ID =
D3D11_MESSAGE_ID(241i32);
pub const D3D11_MESSAGE_ID_IASETINDEXBUFFER_UNBINDDELETINGOBJECT: D3D11_MESSAGE_ID =
D3D11_MESSAGE_ID(32i32);
pub const D3D11_MESSAGE_ID_IASETINPUTLAYOUT_UNBINDDELETINGOBJECT: D3D11_MESSAGE_ID =
D3D11_MESSAGE_ID(30i32);
pub const D3D11_MESSAGE_ID_IASETVERTEXBUFFERS_BAD_BUFFER_INDEX: D3D11_MESSAGE_ID =
D3D11_MESSAGE_ID(1048592i32);
pub const D3D11_MESSAGE_ID_IASETVERTEXBUFFERS_INVALIDBUFFER: D3D11_MESSAGE_ID =
D3D11_MESSAGE_ID(238i32);
pub const D3D11_MESSAGE_ID_IASETVERTEXBUFFERS_UNBINDDELETINGOBJECT: D3D11_MESSAGE_ID =
D3D11_MESSAGE_ID(31i32);
pub const D3D11_MESSAGE_ID_INCOMPLETE_TRACKED_WORKLOAD_PAIR: D3D11_MESSAGE_ID =
D3D11_MESSAGE_ID(3146276i32);
pub const D3D11_MESSAGE_ID_JPEGDECODE_1DESTUNSUPPORTEDFORMAT: D3D11_MESSAGE_ID =
D3D11_MESSAGE_ID(3146194i32);
pub const D3D11_MESSAGE_ID_JPEGDECODE_3DESTUNSUPPORTEDFORMAT: D3D11_MESSAGE_ID =
D3D11_MESSAGE_ID(3146195i32);
pub const D3D11_MESSAGE_ID_JPEGDECODE_BACKBUFFERNOTSUPPORTED: D3D11_MESSAGE_ID =
D3D11_MESSAGE_ID(3146203i32);
pub const D3D11_MESSAGE_ID_JPEGDECODE_CHROMASIZEMISMATCH: D3D11_MESSAGE_ID =
D3D11_MESSAGE_ID(3146190i32);
pub const D3D11_MESSAGE_ID_JPEGDECODE_DESTBOXESINTERSECT: D3D11_MESSAGE_ID =
D3D11_MESSAGE_ID(3146182i32);
pub const D3D11_MESSAGE_ID_JPEGDECODE_DESTBOXNOT2D: D3D11_MESSAGE_ID = D3D11_MESSAGE_ID(3146180i32);
pub const D3D11_MESSAGE_ID_JPEGDECODE_DESTBOXNOTSUB: D3D11_MESSAGE_ID =
D3D11_MESSAGE_ID(3146181i32);
pub const D3D11_MESSAGE_ID_JPEGDECODE_DESTINATIONNOT2D: D3D11_MESSAGE_ID =
D3D11_MESSAGE_ID(3146173i32);
pub const D3D11_MESSAGE_ID_JPEGDECODE_DIMENSIONSTOOLARGE: D3D11_MESSAGE_ID =
D3D11_MESSAGE_ID(3146171i32);
pub const D3D11_MESSAGE_ID_JPEGDECODE_EMPTYDESTBOX: D3D11_MESSAGE_ID = D3D11_MESSAGE_ID(3146179i32);
pub const D3D11_MESSAGE_ID_JPEGDECODE_FORMATUNSUPPORTED: D3D11_MESSAGE_ID =
D3D11_MESSAGE_ID(3146176i32);
pub const D3D11_MESSAGE_ID_JPEGDECODE_FRACTIONALDOWNSCALETOLARGE: D3D11_MESSAGE_ID =
D3D11_MESSAGE_ID(3146189i32);
pub const D3D11_MESSAGE_ID_JPEGDECODE_GUARDRECTSUNSUPPORTED: D3D11_MESSAGE_ID =
D3D11_MESSAGE_ID(3146175i32);
pub const D3D11_MESSAGE_ID_JPEGDECODE_HAZARD: D3D11_MESSAGE_ID = D3D11_MESSAGE_ID(3146199i32);
pub const D3D11_MESSAGE_ID_JPEGDECODE_INVALIDCOMPONENTS: D3D11_MESSAGE_ID =
D3D11_MESSAGE_ID(3146172i32);
pub const D3D11_MESSAGE_ID_JPEGDECODE_INVALIDCOPYFLAGS: D3D11_MESSAGE_ID =
D3D11_MESSAGE_ID(3146198i32);
pub const D3D11_MESSAGE_ID_JPEGDECODE_INVALIDMIPLEVEL: D3D11_MESSAGE_ID =
D3D11_MESSAGE_ID(3146178i32);
pub const D3D11_MESSAGE_ID_JPEGDECODE_INVALIDNUMDESTINATIONS: D3D11_MESSAGE_ID =
D3D11_MESSAGE_ID(3146192i32);
pub const D3D11_MESSAGE_ID_JPEGDECODE_INVALIDSCANDATAOFFSET: D3D11_MESSAGE_ID =
D3D11_MESSAGE_ID(3146169i32);
pub const D3D11_MESSAGE_ID_JPEGDECODE_INVALIDSOURCESIZE: D3D11_MESSAGE_ID =
D3D11_MESSAGE_ID(3146197i32);
pub const D3D11_MESSAGE_ID_JPEGDECODE_INVALIDSUBRESOURCE: D3D11_MESSAGE_ID =
D3D11_MESSAGE_ID(3146177i32);
pub const D3D11_MESSAGE_ID_JPEGDECODE_LUMACHROMASIZEMISMATCH: D3D11_MESSAGE_ID =
D3D11_MESSAGE_ID(3146191i32);
pub const D3D11_MESSAGE_ID_JPEGDECODE_NONPOW2SCALEUNSUPPORTED: D3D11_MESSAGE_ID =
D3D11_MESSAGE_ID(3146188i32);
pub const D3D11_MESSAGE_ID_JPEGDECODE_NOTSUPPORTED: D3D11_MESSAGE_ID = D3D11_MESSAGE_ID(3146170i32);
pub const D3D11_MESSAGE_ID_JPEGDECODE_OUTPUTDIMENSIONSTOOLARGE: D3D11_MESSAGE_ID =
D3D11_MESSAGE_ID(3146187i32);
pub const D3D11_MESSAGE_ID_JPEGDECODE_SCALEUNSUPPORTED: D3D11_MESSAGE_ID =
D3D11_MESSAGE_ID(3146196i32);
pub const D3D11_MESSAGE_ID_JPEGDECODE_SUBBOXUNSUPPORTED: D3D11_MESSAGE_ID =
D3D11_MESSAGE_ID(3146193i32);
pub const D3D11_MESSAGE_ID_JPEGDECODE_TILEDRESOURCESUNSUPPORTED: D3D11_MESSAGE_ID =
D3D11_MESSAGE_ID(3146174i32);
pub const D3D11_MESSAGE_ID_JPEGDECODE_UNSUPPORTEDDSTTEXTUREUSAGE: D3D11_MESSAGE_ID =
D3D11_MESSAGE_ID(3146202i32);
pub const D3D11_MESSAGE_ID_JPEGDECODE_UNSUPPORTEDSRCBUFFERMISCFLAGS: D3D11_MESSAGE_ID =
D3D11_MESSAGE_ID(3146201i32);
pub const D3D11_MESSAGE_ID_JPEGDECODE_UNSUPPORTEDSRCBUFFERUSAGE: D3D11_MESSAGE_ID =
D3D11_MESSAGE_ID(3146200i32);
pub const D3D11_MESSAGE_ID_JPEGDECODE_UNSUPPRTEDCOPYFLAGS: D3D11_MESSAGE_ID =
D3D11_MESSAGE_ID(3146204i32);
pub const D3D11_MESSAGE_ID_JPEGDECODE_XSUBSAMPLEMISMATCH: D3D11_MESSAGE_ID =
D3D11_MESSAGE_ID(3146183i32);
pub const D3D11_MESSAGE_ID_JPEGDECODE_XSUBSAMPLEODD: D3D11_MESSAGE_ID =
D3D11_MESSAGE_ID(3146185i32);
pub const D3D11_MESSAGE_ID_JPEGDECODE_YSUBSAMPLEMISMATCH: D3D11_MESSAGE_ID =
D3D11_MESSAGE_ID(3146184i32);
pub const D3D11_MESSAGE_ID_JPEGDECODE_YSUBSAMPLEODD: D3D11_MESSAGE_ID =
D3D11_MESSAGE_ID(3146186i32);
pub const D3D11_MESSAGE_ID_JPEGENCODE_BACKBUFFERNOTSUPPORTED: D3D11_MESSAGE_ID =
D3D11_MESSAGE_ID(3146221i32);
pub const D3D11_MESSAGE_ID_JPEGENCODE_DIMENSIONSTOOLARGE: D3D11_MESSAGE_ID =
D3D11_MESSAGE_ID(3146216i32);
pub const D3D11_MESSAGE_ID_JPEGENCODE_FORMATUNSUPPORTED: D3D11_MESSAGE_ID =
D3D11_MESSAGE_ID(3146213i32);
pub const D3D11_MESSAGE_ID_JPEGENCODE_GUARDRECTSUNSUPPORTED: D3D11_MESSAGE_ID =
D3D11_MESSAGE_ID(3146210i32);
pub const D3D11_MESSAGE_ID_JPEGENCODE_HAZARD: D3D11_MESSAGE_ID = D3D11_MESSAGE_ID(3146217i32);
pub const D3D11_MESSAGE_ID_JPEGENCODE_INVALIDCOMPONENTS: D3D11_MESSAGE_ID =
D3D11_MESSAGE_ID(3146207i32);
pub const D3D11_MESSAGE_ID_JPEGENCODE_INVALIDMIPLEVEL: D3D11_MESSAGE_ID =
D3D11_MESSAGE_ID(3146215i32);
pub const D3D11_MESSAGE_ID_JPEGENCODE_INVALIDSCANDATAOFFSET: D3D11_MESSAGE_ID =
D3D11_MESSAGE_ID(3146206i32);
pub const D3D11_MESSAGE_ID_JPEGENCODE_INVALIDSUBRESOURCE: D3D11_MESSAGE_ID =
D3D11_MESSAGE_ID(3146214i32);
pub const D3D11_MESSAGE_ID_JPEGENCODE_NOTSUPPORTED: D3D11_MESSAGE_ID = D3D11_MESSAGE_ID(3146205i32);
pub const D3D11_MESSAGE_ID_JPEGENCODE_SOURCENOT2D: D3D11_MESSAGE_ID = D3D11_MESSAGE_ID(3146208i32);
pub const D3D11_MESSAGE_ID_JPEGENCODE_TILEDRESOURCESUNSUPPORTED: D3D11_MESSAGE_ID =
D3D11_MESSAGE_ID(3146209i32);
pub const D3D11_MESSAGE_ID_JPEGENCODE_UNSUPPORTEDDSTBUFFERMISCFLAGS: D3D11_MESSAGE_ID =
D3D11_MESSAGE_ID(3146219i32);
pub const D3D11_MESSAGE_ID_JPEGENCODE_UNSUPPORTEDDSTBUFFERUSAGE: D3D11_MESSAGE_ID =
D3D11_MESSAGE_ID(3146218i32);
pub const D3D11_MESSAGE_ID_JPEGENCODE_UNSUPPORTEDSRCTEXTUREUSAGE: D3D11_MESSAGE_ID =
D3D11_MESSAGE_ID(3146220i32);
pub const D3D11_MESSAGE_ID_JPEGENCODE_XSUBSAMPLEMISMATCH: D3D11_MESSAGE_ID =
D3D11_MESSAGE_ID(3146211i32);
pub const D3D11_MESSAGE_ID_JPEGENCODE_YSUBSAMPLEMISMATCH: D3D11_MESSAGE_ID =
D3D11_MESSAGE_ID(3146212i32);
pub const D3D11_MESSAGE_ID_LIVE_AUTHENTICATEDCHANNEL: D3D11_MESSAGE_ID =
D3D11_MESSAGE_ID(3146150i32);
pub const D3D11_MESSAGE_ID_LIVE_BLENDSTATE: D3D11_MESSAGE_ID = D3D11_MESSAGE_ID(435i32);
pub const D3D11_MESSAGE_ID_LIVE_BLENDSTATE_WIN7: D3D11_MESSAGE_ID = D3D11_MESSAGE_ID(2097271i32);
pub const D3D11_MESSAGE_ID_LIVE_BUFFER: D3D11_MESSAGE_ID = D3D11_MESSAGE_ID(423i32);
pub const D3D11_MESSAGE_ID_LIVE_BUFFER_WIN7: D3D11_MESSAGE_ID = D3D11_MESSAGE_ID(2097229i32);
pub const D3D11_MESSAGE_ID_LIVE_CLASSINSTANCE: D3D11_MESSAGE_ID = D3D11_MESSAGE_ID(2097291i32);
pub const D3D11_MESSAGE_ID_LIVE_CLASSLINKAGE: D3D11_MESSAGE_ID = D3D11_MESSAGE_ID(2097294i32);
pub const D3D11_MESSAGE_ID_LIVE_COMMANDLIST: D3D11_MESSAGE_ID = D3D11_MESSAGE_ID(2097288i32);
pub const D3D11_MESSAGE_ID_LIVE_COMPUTESHADER: D3D11_MESSAGE_ID = D3D11_MESSAGE_ID(2097299i32);
pub const D3D11_MESSAGE_ID_LIVE_CONTEXT: D3D11_MESSAGE_ID = D3D11_MESSAGE_ID(2097226i32);
pub const D3D11_MESSAGE_ID_LIVE_COUNTER: D3D11_MESSAGE_ID = D3D11_MESSAGE_ID(440i32);
pub const D3D11_MESSAGE_ID_LIVE_CRYPTOSESSION: D3D11_MESSAGE_ID = D3D11_MESSAGE_ID(3146149i32);
pub const D3D11_MESSAGE_ID_LIVE_DECODEROUTPUTVIEW: D3D11_MESSAGE_ID = D3D11_MESSAGE_ID(3145739i32);
pub const D3D11_MESSAGE_ID_LIVE_DEPTHSTENCILSTATE: D3D11_MESSAGE_ID = D3D11_MESSAGE_ID(436i32);
pub const D3D11_MESSAGE_ID_LIVE_DEPTHSTENCILSTATE_WIN7: D3D11_MESSAGE_ID =
D3D11_MESSAGE_ID(2097274i32);
pub const D3D11_MESSAGE_ID_LIVE_DEPTHSTENCILVIEW: D3D11_MESSAGE_ID = D3D11_MESSAGE_ID(429i32);
pub const D3D11_MESSAGE_ID_LIVE_DEPTHSTENCILVIEW_WIN7: D3D11_MESSAGE_ID =
D3D11_MESSAGE_ID(2097247i32);
pub const D3D11_MESSAGE_ID_LIVE_DEVICE: D3D11_MESSAGE_ID = D3D11_MESSAGE_ID(441i32);
pub const D3D11_MESSAGE_ID_LIVE_DEVICECONTEXTSTATE: D3D11_MESSAGE_ID = D3D11_MESSAGE_ID(3145742i32);
pub const D3D11_MESSAGE_ID_LIVE_DEVICE_WIN7: D3D11_MESSAGE_ID = D3D11_MESSAGE_ID(2097296i32);
pub const D3D11_MESSAGE_ID_LIVE_DOMAINSHADER: D3D11_MESSAGE_ID = D3D11_MESSAGE_ID(2097256i32);
pub const D3D11_MESSAGE_ID_LIVE_FENCE: D3D11_MESSAGE_ID = D3D11_MESSAGE_ID(3146251i32);
pub const D3D11_MESSAGE_ID_LIVE_GEOMETRYSHADER: D3D11_MESSAGE_ID = D3D11_MESSAGE_ID(431i32);
pub const D3D11_MESSAGE_ID_LIVE_GEOMETRYSHADER_WIN7: D3D11_MESSAGE_ID =
D3D11_MESSAGE_ID(2097259i32);
pub const D3D11_MESSAGE_ID_LIVE_HULLSHADER: D3D11_MESSAGE_ID = D3D11_MESSAGE_ID(2097253i32);
pub const D3D11_MESSAGE_ID_LIVE_INPUTLAYOUT: D3D11_MESSAGE_ID = D3D11_MESSAGE_ID(433i32);
pub const D3D11_MESSAGE_ID_LIVE_INPUTLAYOUT_WIN7: D3D11_MESSAGE_ID = D3D11_MESSAGE_ID(2097265i32);
pub const D3D11_MESSAGE_ID_LIVE_OBJECT_SUMMARY: D3D11_MESSAGE_ID = D3D11_MESSAGE_ID(422i32);
pub const D3D11_MESSAGE_ID_LIVE_OBJECT_SUMMARY_WIN7: D3D11_MESSAGE_ID =
D3D11_MESSAGE_ID(2097297i32);
pub const D3D11_MESSAGE_ID_LIVE_PIXELSHADER: D3D11_MESSAGE_ID = D3D11_MESSAGE_ID(432i32);
pub const D3D11_MESSAGE_ID_LIVE_PIXELSHADER_WIN7: D3D11_MESSAGE_ID = D3D11_MESSAGE_ID(2097262i32);
pub const D3D11_MESSAGE_ID_LIVE_PREDICATE: D3D11_MESSAGE_ID = D3D11_MESSAGE_ID(439i32);
pub const D3D11_MESSAGE_ID_LIVE_PREDICATE_WIN7: D3D11_MESSAGE_ID = D3D11_MESSAGE_ID(2097283i32);
pub const D3D11_MESSAGE_ID_LIVE_PROCESSORINPUTVIEW: D3D11_MESSAGE_ID = D3D11_MESSAGE_ID(3145740i32);
pub const D3D11_MESSAGE_ID_LIVE_PROCESSOROUTPUTVIEW: D3D11_MESSAGE_ID =
D3D11_MESSAGE_ID(3145741i32);
pub const D3D11_MESSAGE_ID_LIVE_QUERY: D3D11_MESSAGE_ID = D3D11_MESSAGE_ID(438i32);
pub const D3D11_MESSAGE_ID_LIVE_QUERY_WIN7: D3D11_MESSAGE_ID = D3D11_MESSAGE_ID(2097280i32);
pub const D3D11_MESSAGE_ID_LIVE_RASTERIZERSTATE: D3D11_MESSAGE_ID = D3D11_MESSAGE_ID(437i32);
pub const D3D11_MESSAGE_ID_LIVE_RASTERIZERSTATE_WIN7: D3D11_MESSAGE_ID =
D3D11_MESSAGE_ID(2097277i32);
pub const D3D11_MESSAGE_ID_LIVE_RENDERTARGETVIEW: D3D11_MESSAGE_ID = D3D11_MESSAGE_ID(428i32);
pub const D3D11_MESSAGE_ID_LIVE_RENDERTARGETVIEW_WIN7: D3D11_MESSAGE_ID =
D3D11_MESSAGE_ID(2097244i32);
pub const D3D11_MESSAGE_ID_LIVE_SAMPLER: D3D11_MESSAGE_ID = D3D11_MESSAGE_ID(434i32);
pub const D3D11_MESSAGE_ID_LIVE_SAMPLER_WIN7: D3D11_MESSAGE_ID = D3D11_MESSAGE_ID(2097268i32);
pub const D3D11_MESSAGE_ID_LIVE_SHADERRESOURCEVIEW: D3D11_MESSAGE_ID = D3D11_MESSAGE_ID(427i32);
pub const D3D11_MESSAGE_ID_LIVE_SHADERRESOURCEVIEW_WIN7: D3D11_MESSAGE_ID =
D3D11_MESSAGE_ID(2097241i32);
pub const D3D11_MESSAGE_ID_LIVE_SWAPCHAIN: D3D11_MESSAGE_ID = D3D11_MESSAGE_ID(442i32);
pub const D3D11_MESSAGE_ID_LIVE_SYNCHRONIZEDCHANNEL: D3D11_MESSAGE_ID =
D3D11_MESSAGE_ID(3146254i32);
pub const D3D11_MESSAGE_ID_LIVE_TEXTURE1D: D3D11_MESSAGE_ID = D3D11_MESSAGE_ID(424i32);
pub const D3D11_MESSAGE_ID_LIVE_TEXTURE1D_WIN7: D3D11_MESSAGE_ID = D3D11_MESSAGE_ID(2097232i32);
pub const D3D11_MESSAGE_ID_LIVE_TEXTURE2D: D3D11_MESSAGE_ID = D3D11_MESSAGE_ID(425i32);
pub const D3D11_MESSAGE_ID_LIVE_TEXTURE2D_WIN7: D3D11_MESSAGE_ID = D3D11_MESSAGE_ID(2097235i32);
pub const D3D11_MESSAGE_ID_LIVE_TEXTURE3D: D3D11_MESSAGE_ID = D3D11_MESSAGE_ID(426i32);
pub const D3D11_MESSAGE_ID_LIVE_TEXTURE3D_WIN7: D3D11_MESSAGE_ID = D3D11_MESSAGE_ID(2097238i32);
pub const D3D11_MESSAGE_ID_LIVE_TRACKEDWORKLOAD: D3D11_MESSAGE_ID = D3D11_MESSAGE_ID(3146268i32);
pub const D3D11_MESSAGE_ID_LIVE_UNORDEREDACCESSVIEW: D3D11_MESSAGE_ID =
D3D11_MESSAGE_ID(2097302i32);
pub const D3D11_MESSAGE_ID_LIVE_VERTEXSHADER: D3D11_MESSAGE_ID = D3D11_MESSAGE_ID(430i32);
pub const D3D11_MESSAGE_ID_LIVE_VERTEXSHADER_WIN7: D3D11_MESSAGE_ID = D3D11_MESSAGE_ID(2097250i32);
pub const D3D11_MESSAGE_ID_LIVE_VIDEODECODER: D3D11_MESSAGE_ID = D3D11_MESSAGE_ID(3145736i32);
pub const D3D11_MESSAGE_ID_LIVE_VIDEOPROCESSOR: D3D11_MESSAGE_ID = D3D11_MESSAGE_ID(3145738i32);
pub const D3D11_MESSAGE_ID_LIVE_VIDEOPROCESSORENUM: D3D11_MESSAGE_ID = D3D11_MESSAGE_ID(3145737i32);
pub const D3D11_MESSAGE_ID_MESSAGE_REPORTING_OUTOFMEMORY: D3D11_MESSAGE_ID =
D3D11_MESSAGE_ID(29i32);
pub const D3D11_MESSAGE_ID_MULTIPLE_TRACKED_WORKLOADS: D3D11_MESSAGE_ID =
D3D11_MESSAGE_ID(3146274i32);
pub const D3D11_MESSAGE_ID_MULTIPLE_TRACKED_WORKLOAD_PAIRS: D3D11_MESSAGE_ID =
D3D11_MESSAGE_ID(3146275i32);
pub const D3D11_MESSAGE_ID_NEED_TO_CALL_TILEDRESOURCEBARRIER: D3D11_MESSAGE_ID =
D3D11_MESSAGE_ID(3146141i32);
pub const D3D11_MESSAGE_ID_NEGOTIATEAUTHENTICATEDCHANNELKEYEXCHANGE_INVALIDCHANNEL:
D3D11_MESSAGE_ID = D3D11_MESSAGE_ID(3146004i32);
pub const D3D11_MESSAGE_ID_NEGOTIATEAUTHENTICATEDCHANNELKEYEXCHANGE_INVALIDSIZE: D3D11_MESSAGE_ID =
D3D11_MESSAGE_ID(3146023i32);
pub const D3D11_MESSAGE_ID_NEGOTIATEAUTHENTICATEDCHANNELKEYEXCHANGE_NULLPARAM: D3D11_MESSAGE_ID =
D3D11_MESSAGE_ID(3146005i32);
pub const D3D11_MESSAGE_ID_NEGOTIATECRPYTOSESSIONKEYEXCHANGE_INVALIDSIZE: D3D11_MESSAGE_ID =
D3D11_MESSAGE_ID(3146022i32);
pub const D3D11_MESSAGE_ID_NEGOTIATECRPYTOSESSIONKEYEXCHANGE_NULLPARAM: D3D11_MESSAGE_ID =
D3D11_MESSAGE_ID(3145959i32);
pub const D3D11_MESSAGE_ID_NEGOTIATECRYPTOSESSIONKEYEXCHANGEMT_INVALIDKEYEXCHANGETYPE:
D3D11_MESSAGE_ID = D3D11_MESSAGE_ID(3146259i32);
pub const D3D11_MESSAGE_ID_NEGOTIATECRYPTOSESSIONKEYEXCHANGEMT_NOT_SUPPORTED: D3D11_MESSAGE_ID =
D3D11_MESSAGE_ID(3146260i32);
pub const D3D11_MESSAGE_ID_NO_TRACKED_WORKLOAD_SLOT_AVAILABLE: D3D11_MESSAGE_ID =
D3D11_MESSAGE_ID(3146281i32);
pub const D3D11_MESSAGE_ID_NULL_TILE_MAPPING_ACCESS_ERROR: D3D11_MESSAGE_ID =
D3D11_MESSAGE_ID(3146132i32);
pub const D3D11_MESSAGE_ID_NULL_TILE_MAPPING_ACCESS_WARNING: D3D11_MESSAGE_ID =
D3D11_MESSAGE_ID(3146131i32);
pub const D3D11_MESSAGE_ID_OFFERRELEASE_NOT_SUPPORTED: D3D11_MESSAGE_ID =
D3D11_MESSAGE_ID(3146071i32);
pub const D3D11_MESSAGE_ID_OFFERRESOURCES_INACCESSIBLE: D3D11_MESSAGE_ID =
D3D11_MESSAGE_ID(3146072i32);
pub const D3D11_MESSAGE_ID_OFFERRESOURCES_INVALIDPRIORITY: D3D11_MESSAGE_ID =
D3D11_MESSAGE_ID(3146024i32);
pub const D3D11_MESSAGE_ID_OFFERRESOURCES_INVALIDRESOURCE: D3D11_MESSAGE_ID =
D3D11_MESSAGE_ID(2097412i32);
pub const D3D11_MESSAGE_ID_OMSETBLENDSTATE_UNBINDDELETINGOBJECT: D3D11_MESSAGE_ID =
D3D11_MESSAGE_ID(47i32);
pub const D3D11_MESSAGE_ID_OMSETDEPTHSTENCILSTATE_UNBINDDELETINGOBJECT: D3D11_MESSAGE_ID =
D3D11_MESSAGE_ID(48i32);
pub const D3D11_MESSAGE_ID_OMSETDEPTHSTENCIL_UNBINDDELETINGOBJECT: D3D11_MESSAGE_ID =
D3D11_MESSAGE_ID(2097368i32);
pub const D3D11_MESSAGE_ID_OMSETRENDERTARGETS_INVALIDVIEW: D3D11_MESSAGE_ID =
D3D11_MESSAGE_ID(388i32);
pub const D3D11_MESSAGE_ID_OMSETRENDERTARGETS_NO_DIFFERING_BIT_DEPTHS: D3D11_MESSAGE_ID =
D3D11_MESSAGE_ID(1048591i32);
pub const D3D11_MESSAGE_ID_OMSETRENDERTARGETS_NO_SRGB_MRT: D3D11_MESSAGE_ID =
D3D11_MESSAGE_ID(1048636i32);
pub const D3D11_MESSAGE_ID_OMSETRENDERTARGETS_TOO_MANY_RENDER_TARGETS: D3D11_MESSAGE_ID =
D3D11_MESSAGE_ID(1048590i32);
pub const D3D11_MESSAGE_ID_OMSETRENDERTARGETS_UNBINDDELETINGOBJECT: D3D11_MESSAGE_ID =
D3D11_MESSAGE_ID(49i32);
pub const D3D11_MESSAGE_ID_OUT_OF_ORDER_TRACKED_WORKLOAD_PAIR: D3D11_MESSAGE_ID =
D3D11_MESSAGE_ID(3146277i32);
pub const D3D11_MESSAGE_ID_PREDICATE_BEGIN_DURING_PREDICATION: D3D11_MESSAGE_ID =
D3D11_MESSAGE_ID(406i32);
pub const D3D11_MESSAGE_ID_PREDICATE_END_DURING_PREDICATION: D3D11_MESSAGE_ID =
D3D11_MESSAGE_ID(409i32);
pub const D3D11_MESSAGE_ID_PSSETCONSTANTBUFFERS_INVALIDBUFFER: D3D11_MESSAGE_ID =
D3D11_MESSAGE_ID(256i32);
pub const D3D11_MESSAGE_ID_PSSETCONSTANTBUFFERS_INVALIDBUFFEROFFSETORCOUNT: D3D11_MESSAGE_ID =
D3D11_MESSAGE_ID(3146020i32);
pub const D3D11_MESSAGE_ID_PSSETCONSTANTBUFFERS_UNBINDDELETINGOBJECT: D3D11_MESSAGE_ID =
D3D11_MESSAGE_ID(44i32);
pub const D3D11_MESSAGE_ID_PSSETSAMPLERS_TOO_MANY_SAMPLERS: D3D11_MESSAGE_ID =
D3D11_MESSAGE_ID(1048584i32);
pub const D3D11_MESSAGE_ID_PSSETSAMPLERS_UNBINDDELETINGOBJECT: D3D11_MESSAGE_ID =
D3D11_MESSAGE_ID(45i32);
pub const D3D11_MESSAGE_ID_PSSETSHADERRESOURCES_UNBINDDELETINGOBJECT: D3D11_MESSAGE_ID =
D3D11_MESSAGE_ID(43i32);
pub const D3D11_MESSAGE_ID_PSSETSHADER_UNBINDDELETINGOBJECT: D3D11_MESSAGE_ID =
D3D11_MESSAGE_ID(42i32);
pub const D3D11_MESSAGE_ID_PSSETUNORDEREDACCESSVIEWS_UNBINDDELETINGOBJECT: D3D11_MESSAGE_ID =
D3D11_MESSAGE_ID(2097350i32);
pub const D3D11_MESSAGE_ID_QUERYAUTHENTICATEDCHANNEL_INVALIDPROCESSINDEX: D3D11_MESSAGE_ID =
D3D11_MESSAGE_ID(3146010i32);
pub const D3D11_MESSAGE_ID_QUERYAUTHENTICATEDCHANNEL_NULLPARAM: D3D11_MESSAGE_ID =
D3D11_MESSAGE_ID(3146006i32);
pub const D3D11_MESSAGE_ID_QUERYAUTHENTICATEDCHANNEL_UNSUPPORTEDQUERY: D3D11_MESSAGE_ID =
D3D11_MESSAGE_ID(3146008i32);
pub const D3D11_MESSAGE_ID_QUERYAUTHENTICATEDCHANNEL_WRONGCHANNEL: D3D11_MESSAGE_ID =
D3D11_MESSAGE_ID(3146007i32);
pub const D3D11_MESSAGE_ID_QUERYAUTHENTICATEDCHANNEL_WRONGSIZE: D3D11_MESSAGE_ID =
D3D11_MESSAGE_ID(3146009i32);
pub const D3D11_MESSAGE_ID_QUERY_BEGIN_ABANDONING_PREVIOUS_RESULTS: D3D11_MESSAGE_ID =
D3D11_MESSAGE_ID(408i32);
pub const D3D11_MESSAGE_ID_QUERY_BEGIN_DUPLICATE: D3D11_MESSAGE_ID = D3D11_MESSAGE_ID(407i32);
pub const D3D11_MESSAGE_ID_QUERY_BEGIN_UNSUPPORTED: D3D11_MESSAGE_ID = D3D11_MESSAGE_ID(405i32);
pub const D3D11_MESSAGE_ID_QUERY_END_ABANDONING_PREVIOUS_RESULTS: D3D11_MESSAGE_ID =
D3D11_MESSAGE_ID(410i32);
pub const D3D11_MESSAGE_ID_QUERY_END_WITHOUT_BEGIN: D3D11_MESSAGE_ID = D3D11_MESSAGE_ID(411i32);
pub const D3D11_MESSAGE_ID_QUERY_GETDATA_INVALID_CALL: D3D11_MESSAGE_ID = D3D11_MESSAGE_ID(414i32);
pub const D3D11_MESSAGE_ID_QUERY_GETDATA_INVALID_DATASIZE: D3D11_MESSAGE_ID =
D3D11_MESSAGE_ID(412i32);
pub const D3D11_MESSAGE_ID_QUERY_GETDATA_INVALID_FLAGS: D3D11_MESSAGE_ID = D3D11_MESSAGE_ID(413i32);
pub const D3D11_MESSAGE_ID_RECOMMENDVIDEODECODERDOWNSAMPLING_INVALIDCOLORSPACE: D3D11_MESSAGE_ID =
D3D11_MESSAGE_ID(3146107i32);
pub const D3D11_MESSAGE_ID_RECOMMENDVIDEODECODERDOWNSAMPLING_NULLPARAM: D3D11_MESSAGE_ID =
D3D11_MESSAGE_ID(3146106i32);
pub const D3D11_MESSAGE_ID_RECOMMENDVIDEODECODERDOWNSAMPLING_ZEROWIDTHHEIGHT: D3D11_MESSAGE_ID =
D3D11_MESSAGE_ID(3146108i32);
pub const D3D11_MESSAGE_ID_REF_ACCESSING_INDEXABLE_TEMP_OUT_OF_RANGE: D3D11_MESSAGE_ID =
D3D11_MESSAGE_ID(331i32);
pub const D3D11_MESSAGE_ID_REF_HARDWARE_EXCEPTION: D3D11_MESSAGE_ID = D3D11_MESSAGE_ID(330i32);
pub const D3D11_MESSAGE_ID_REF_INFO: D3D11_MESSAGE_ID = D3D11_MESSAGE_ID(334i32);
pub const D3D11_MESSAGE_ID_REF_KMDRIVER_EXCEPTION: D3D11_MESSAGE_ID = D3D11_MESSAGE_ID(329i32);
pub const D3D11_MESSAGE_ID_REF_OUT_OF_MEMORY: D3D11_MESSAGE_ID = D3D11_MESSAGE_ID(333i32);
pub const D3D11_MESSAGE_ID_REF_PROBLEM_PARSING_SHADER: D3D11_MESSAGE_ID = D3D11_MESSAGE_ID(332i32);
pub const D3D11_MESSAGE_ID_REF_SIMULATING_INFINITELY_FAST_HARDWARE: D3D11_MESSAGE_ID =
D3D11_MESSAGE_ID(326i32);
pub const D3D11_MESSAGE_ID_REF_THREADING_MODE: D3D11_MESSAGE_ID = D3D11_MESSAGE_ID(327i32);
pub const D3D11_MESSAGE_ID_REF_UMDRIVER_EXCEPTION: D3D11_MESSAGE_ID = D3D11_MESSAGE_ID(328i32);
pub const D3D11_MESSAGE_ID_REF_WARNING: D3D11_MESSAGE_ID = D3D11_MESSAGE_ID(2097407i32);
pub const D3D11_MESSAGE_ID_REF_WARNING_ATOMIC_INCONSISTENT: D3D11_MESSAGE_ID =
D3D11_MESSAGE_ID(3145946i32);
pub const D3D11_MESSAGE_ID_REF_WARNING_RAW_HAZARD: D3D11_MESSAGE_ID = D3D11_MESSAGE_ID(3145948i32);
pub const D3D11_MESSAGE_ID_REF_WARNING_READING_UNINITIALIZED_RESOURCE: D3D11_MESSAGE_ID =
D3D11_MESSAGE_ID(3145947i32);
pub const D3D11_MESSAGE_ID_REF_WARNING_WAR_HAZARD: D3D11_MESSAGE_ID = D3D11_MESSAGE_ID(3145949i32);
pub const D3D11_MESSAGE_ID_REF_WARNING_WAW_HAZARD: D3D11_MESSAGE_ID = D3D11_MESSAGE_ID(3145950i32);
pub const D3D11_MESSAGE_ID_RELEASEDECODERBUFFER_INVALIDTYPE: D3D11_MESSAGE_ID =
D3D11_MESSAGE_ID(3145782i32);
pub const D3D11_MESSAGE_ID_RELEASEDECODERBUFFER_NOTLOCKED: D3D11_MESSAGE_ID =
D3D11_MESSAGE_ID(3145783i32);
pub const D3D11_MESSAGE_ID_RELEASEDECODERBUFFER_NULLPARAM: D3D11_MESSAGE_ID =
D3D11_MESSAGE_ID(3145781i32);
pub const D3D11_MESSAGE_ID_RESIZETILEPOOL_INVALID_PARAMETER: D3D11_MESSAGE_ID =
D3D11_MESSAGE_ID(3146129i32);
pub const D3D11_MESSAGE_ID_RESIZETILEPOOL_SHRINK_WITH_MAPPINGS_STILL_DEFINED_PAST_END:
D3D11_MESSAGE_ID = D3D11_MESSAGE_ID(3146140i32);
pub const D3D11_MESSAGE_ID_RESOURCE_MAP_ALREADYMAPPED: D3D11_MESSAGE_ID =
D3D11_MESSAGE_ID(2097213i32);
pub const D3D11_MESSAGE_ID_RESOURCE_MAP_DEVICEREMOVED_RETURN: D3D11_MESSAGE_ID =
D3D11_MESSAGE_ID(2097214i32);
pub const D3D11_MESSAGE_ID_RESOURCE_MAP_INVALIDFLAGS: D3D11_MESSAGE_ID =
D3D11_MESSAGE_ID(2097212i32);
pub const D3D11_MESSAGE_ID_RESOURCE_MAP_INVALIDMAPTYPE: D3D11_MESSAGE_ID =
D3D11_MESSAGE_ID(2097210i32);
pub const D3D11_MESSAGE_ID_RESOURCE_MAP_INVALIDSUBRESOURCE: D3D11_MESSAGE_ID =
D3D11_MESSAGE_ID(2097211i32);
pub const D3D11_MESSAGE_ID_RESOURCE_MAP_OUTOFMEMORY_RETURN: D3D11_MESSAGE_ID =
D3D11_MESSAGE_ID(2097215i32);
pub const D3D11_MESSAGE_ID_RESOURCE_MAP_WITHOUT_INITIAL_DISCARD: D3D11_MESSAGE_ID =
D3D11_MESSAGE_ID(2097216i32);
pub const D3D11_MESSAGE_ID_RESOURCE_UNMAP_INVALIDSUBRESOURCE: D3D11_MESSAGE_ID =
D3D11_MESSAGE_ID(2097217i32);
pub const D3D11_MESSAGE_ID_RESOURCE_UNMAP_NOTMAPPED: D3D11_MESSAGE_ID =
D3D11_MESSAGE_ID(2097218i32);
pub const D3D11_MESSAGE_ID_RSSETSTATE_UNBINDDELETINGOBJECT: D3D11_MESSAGE_ID =
D3D11_MESSAGE_ID(46i32);
pub const D3D11_MESSAGE_ID_SETBLENDSTATE_SAMPLE_MASK_CANNOT_BE_ZERO: D3D11_MESSAGE_ID =
D3D11_MESSAGE_ID(1048629i32);
pub const D3D11_MESSAGE_ID_SETEXCEPTIONMODE_DEVICEREMOVED_RETURN: D3D11_MESSAGE_ID =
D3D11_MESSAGE_ID(325i32);
pub const D3D11_MESSAGE_ID_SETEXCEPTIONMODE_INVALIDARG_RETURN: D3D11_MESSAGE_ID =
D3D11_MESSAGE_ID(324i32);
pub const D3D11_MESSAGE_ID_SETEXCEPTIONMODE_UNRECOGNIZEDFLAGS: D3D11_MESSAGE_ID =
D3D11_MESSAGE_ID(323i32);
pub const D3D11_MESSAGE_ID_SETPREDICATION_INVALID_PREDICATE_STATE: D3D11_MESSAGE_ID =
D3D11_MESSAGE_ID(404i32);
pub const D3D11_MESSAGE_ID_SETPREDICATION_UNBINDDELETINGOBJECT: D3D11_MESSAGE_ID =
D3D11_MESSAGE_ID(50i32);
pub const D3D11_MESSAGE_ID_SETPRIVATEDATA_CHANGINGPARAMS: D3D11_MESSAGE_ID =
D3D11_MESSAGE_ID(55i32);
pub const D3D11_MESSAGE_ID_SETPRIVATEDATA_INVALIDFLAGS: D3D11_MESSAGE_ID = D3D11_MESSAGE_ID(54i32);
pub const D3D11_MESSAGE_ID_SETPRIVATEDATA_INVALIDFREEDATA: D3D11_MESSAGE_ID =
D3D11_MESSAGE_ID(52i32);
pub const D3D11_MESSAGE_ID_SETPRIVATEDATA_INVALIDIUNKNOWN: D3D11_MESSAGE_ID =
D3D11_MESSAGE_ID(53i32);
pub const D3D11_MESSAGE_ID_SETPRIVATEDATA_OUTOFMEMORY: D3D11_MESSAGE_ID = D3D11_MESSAGE_ID(56i32);
pub const D3D11_MESSAGE_ID_SHADERRESOURCEVIEW_GETDESC_LEGACY: D3D11_MESSAGE_ID =
D3D11_MESSAGE_ID(393i32);
pub const D3D11_MESSAGE_ID_SHADER_ABORT: D3D11_MESSAGE_ID = D3D11_MESSAGE_ID(2097409i32);
pub const D3D11_MESSAGE_ID_SHADER_ERROR: D3D11_MESSAGE_ID = D3D11_MESSAGE_ID(2097411i32);
pub const D3D11_MESSAGE_ID_SHADER_MESSAGE: D3D11_MESSAGE_ID = D3D11_MESSAGE_ID(2097410i32);
pub const D3D11_MESSAGE_ID_SLOT_ZERO_MUST_BE_D3D10_INPUT_PER_VERTEX_DATA: D3D11_MESSAGE_ID =
D3D11_MESSAGE_ID(1048633i32);
pub const D3D11_MESSAGE_ID_SOSETTARGETS_INVALIDBUFFER: D3D11_MESSAGE_ID = D3D11_MESSAGE_ID(253i32);
pub const D3D11_MESSAGE_ID_SOSETTARGETS_UNBINDDELETINGOBJECT: D3D11_MESSAGE_ID =
D3D11_MESSAGE_ID(41i32);
pub const D3D11_MESSAGE_ID_STARTSESSIONKEYREFRESH_INVALIDSIZE: D3D11_MESSAGE_ID =
D3D11_MESSAGE_ID(3145988i32);
pub const D3D11_MESSAGE_ID_STARTSESSIONKEYREFRESH_NULLPARAM: D3D11_MESSAGE_ID =
D3D11_MESSAGE_ID(3145987i32);
pub const D3D11_MESSAGE_ID_STREAM_OUT_NOT_SUPPORTED: D3D11_MESSAGE_ID =
D3D11_MESSAGE_ID(1048620i32);
pub const D3D11_MESSAGE_ID_STRING_FROM_APPLICATION: D3D11_MESSAGE_ID = D3D11_MESSAGE_ID(11i32);
pub const D3D11_MESSAGE_ID_SUBMITDECODERBUFFERS_INVALIDTYPE: D3D11_MESSAGE_ID =
D3D11_MESSAGE_ID(3145788i32);
pub const D3D11_MESSAGE_ID_SUBMITDECODERBUFFERS_NULLPARAM: D3D11_MESSAGE_ID =
D3D11_MESSAGE_ID(3145787i32);
pub const D3D11_MESSAGE_ID_SWAPDEVICECONTEXTSTATE_NOTSUPPORTED: D3D11_MESSAGE_ID =
D3D11_MESSAGE_ID(3146063i32);
pub const D3D11_MESSAGE_ID_TEXTURE1D_MAP_ALREADYMAPPED: D3D11_MESSAGE_ID = D3D11_MESSAGE_ID(303i32);
pub const D3D11_MESSAGE_ID_TEXTURE1D_MAP_DEVICEREMOVED_RETURN: D3D11_MESSAGE_ID =
D3D11_MESSAGE_ID(304i32);
pub const D3D11_MESSAGE_ID_TEXTURE1D_MAP_INVALIDFLAGS: D3D11_MESSAGE_ID = D3D11_MESSAGE_ID(302i32);
pub const D3D11_MESSAGE_ID_TEXTURE1D_MAP_INVALIDMAPTYPE: D3D11_MESSAGE_ID =
D3D11_MESSAGE_ID(300i32);
pub const D3D11_MESSAGE_ID_TEXTURE1D_MAP_INVALIDSUBRESOURCE: D3D11_MESSAGE_ID =
D3D11_MESSAGE_ID(301i32);
pub const D3D11_MESSAGE_ID_TEXTURE1D_UNMAP_INVALIDSUBRESOURCE: D3D11_MESSAGE_ID =
D3D11_MESSAGE_ID(305i32);
pub const D3D11_MESSAGE_ID_TEXTURE1D_UNMAP_NOTMAPPED: D3D11_MESSAGE_ID = D3D11_MESSAGE_ID(306i32);
pub const D3D11_MESSAGE_ID_TEXTURE2D_MAP_ALREADYMAPPED: D3D11_MESSAGE_ID = D3D11_MESSAGE_ID(310i32);
pub const D3D11_MESSAGE_ID_TEXTURE2D_MAP_DEVICEREMOVED_RETURN: D3D11_MESSAGE_ID =
D3D11_MESSAGE_ID(311i32);
pub const D3D11_MESSAGE_ID_TEXTURE2D_MAP_INVALIDFLAGS: D3D11_MESSAGE_ID = D3D11_MESSAGE_ID(309i32);
pub const D3D11_MESSAGE_ID_TEXTURE2D_MAP_INVALIDMAPTYPE: D3D11_MESSAGE_ID =
D3D11_MESSAGE_ID(307i32);
pub const D3D11_MESSAGE_ID_TEXTURE2D_MAP_INVALIDSUBRESOURCE: D3D11_MESSAGE_ID =
D3D11_MESSAGE_ID(308i32);
pub const D3D11_MESSAGE_ID_TEXTURE2D_UNMAP_INVALIDSUBRESOURCE: D3D11_MESSAGE_ID =
D3D11_MESSAGE_ID(312i32);
pub const D3D11_MESSAGE_ID_TEXTURE2D_UNMAP_NOTMAPPED: D3D11_MESSAGE_ID = D3D11_MESSAGE_ID(313i32);
pub const D3D11_MESSAGE_ID_TEXTURE3D_MAP_ALREADYMAPPED: D3D11_MESSAGE_ID = D3D11_MESSAGE_ID(317i32);
pub const D3D11_MESSAGE_ID_TEXTURE3D_MAP_DEVICEREMOVED_RETURN: D3D11_MESSAGE_ID =
D3D11_MESSAGE_ID(318i32);
pub const D3D11_MESSAGE_ID_TEXTURE3D_MAP_INVALIDFLAGS: D3D11_MESSAGE_ID = D3D11_MESSAGE_ID(316i32);
pub const D3D11_MESSAGE_ID_TEXTURE3D_MAP_INVALIDMAPTYPE: D3D11_MESSAGE_ID =
D3D11_MESSAGE_ID(314i32);
pub const D3D11_MESSAGE_ID_TEXTURE3D_MAP_INVALIDSUBRESOURCE: D3D11_MESSAGE_ID =
D3D11_MESSAGE_ID(315i32);
pub const D3D11_MESSAGE_ID_TEXTURE3D_UNMAP_INVALIDSUBRESOURCE: D3D11_MESSAGE_ID =
D3D11_MESSAGE_ID(319i32);
pub const D3D11_MESSAGE_ID_TEXTURE3D_UNMAP_NOTMAPPED: D3D11_MESSAGE_ID = D3D11_MESSAGE_ID(320i32);
pub const D3D11_MESSAGE_ID_TEXT_FILTER_NOT_SUPPORTED: D3D11_MESSAGE_ID =
D3D11_MESSAGE_ID(1048621i32);
pub const D3D11_MESSAGE_ID_TILEDRESOURCEBARRIER_INVALID_PARAMETER: D3D11_MESSAGE_ID =
D3D11_MESSAGE_ID(3146130i32);
pub const D3D11_MESSAGE_ID_TILED_RESOURCE_TIER_1_BUFFER_TEXTURE_MISMATCH: D3D11_MESSAGE_ID =
D3D11_MESSAGE_ID(3146146i32);
pub const D3D11_MESSAGE_ID_TILE_MAPPINGS_IN_COVERED_AREA_DUPLICATED_OUTSIDE: D3D11_MESSAGE_ID =
D3D11_MESSAGE_ID(3146135i32);
pub const D3D11_MESSAGE_ID_TILE_MAPPINGS_SHARED_BETWEEN_INCOMPATIBLE_RESOURCES: D3D11_MESSAGE_ID =
D3D11_MESSAGE_ID(3146136i32);
pub const D3D11_MESSAGE_ID_TILE_MAPPINGS_SHARED_BETWEEN_INPUT_AND_OUTPUT: D3D11_MESSAGE_ID =
D3D11_MESSAGE_ID(3146137i32);
pub const D3D11_MESSAGE_ID_TRACKED_WORKLOAD_DISJOINT_FAILURE: D3D11_MESSAGE_ID =
D3D11_MESSAGE_ID(3146283i32);
pub const D3D11_MESSAGE_ID_TRACKED_WORKLOAD_ENGINE_TYPE_NOT_FOUND: D3D11_MESSAGE_ID =
D3D11_MESSAGE_ID(3146280i32);
pub const D3D11_MESSAGE_ID_TRACKED_WORKLOAD_NOT_SUPPORTED: D3D11_MESSAGE_ID =
D3D11_MESSAGE_ID(3146279i32);
pub const D3D11_MESSAGE_ID_UNKNOWN: D3D11_MESSAGE_ID = D3D11_MESSAGE_ID(0i32);
pub const D3D11_MESSAGE_ID_UPDATESUBRESOURCE1_INVALIDCOPYFLAGS: D3D11_MESSAGE_ID =
D3D11_MESSAGE_ID(3145756i32);
pub const D3D11_MESSAGE_ID_UPDATESUBRESOURCE_EMPTYDESTBOX: D3D11_MESSAGE_ID =
D3D11_MESSAGE_ID(3146077i32);
pub const D3D11_MESSAGE_ID_UPDATESUBRESOURCE_INVALIDDESTINATIONBOX: D3D11_MESSAGE_ID =
D3D11_MESSAGE_ID(288i32);
pub const D3D11_MESSAGE_ID_UPDATESUBRESOURCE_INVALIDDESTINATIONSTATE: D3D11_MESSAGE_ID =
D3D11_MESSAGE_ID(289i32);
pub const D3D11_MESSAGE_ID_UPDATESUBRESOURCE_INVALIDDESTINATIONSUBRESOURCE: D3D11_MESSAGE_ID =
D3D11_MESSAGE_ID(287i32);
pub const D3D11_MESSAGE_ID_UPDATESUBRESOURCE_PREFERUPDATESUBRESOURCE1: D3D11_MESSAGE_ID =
D3D11_MESSAGE_ID(3146064i32);
pub const D3D11_MESSAGE_ID_UPDATETILEMAPPINGS_INVALID_PARAMETER: D3D11_MESSAGE_ID =
D3D11_MESSAGE_ID(3146125i32);
pub const D3D11_MESSAGE_ID_UPDATETILES_INVALID_PARAMETER: D3D11_MESSAGE_ID =
D3D11_MESSAGE_ID(3146128i32);
pub const D3D11_MESSAGE_ID_USE_OF_ZERO_REFCOUNT_OBJECT: D3D11_MESSAGE_ID =
D3D11_MESSAGE_ID(2097423i32);
pub const D3D11_MESSAGE_ID_VIDEODECODERENABLEDOWNSAMPLING_NULLPARAM: D3D11_MESSAGE_ID =
D3D11_MESSAGE_ID(3146092i32);
pub const D3D11_MESSAGE_ID_VIDEODECODERENABLEDOWNSAMPLING_UNSUPPORTED: D3D11_MESSAGE_ID =
D3D11_MESSAGE_ID(3146093i32);
pub const D3D11_MESSAGE_ID_VIDEODECODERUPDATEDOWNSAMPLING_NULLPARAM: D3D11_MESSAGE_ID =
D3D11_MESSAGE_ID(3146094i32);
pub const D3D11_MESSAGE_ID_VIDEODECODERUPDATEDOWNSAMPLING_UNSUPPORTED: D3D11_MESSAGE_ID =
D3D11_MESSAGE_ID(3146095i32);
pub const D3D11_MESSAGE_ID_VIDEOPROCESSORBLT_INPUTHAZARD: D3D11_MESSAGE_ID =
D3D11_MESSAGE_ID(3145905i32);
pub const D3D11_MESSAGE_ID_VIDEOPROCESSORBLT_INVALIDARRAY: D3D11_MESSAGE_ID =
D3D11_MESSAGE_ID(3145899i32);
pub const D3D11_MESSAGE_ID_VIDEOPROCESSORBLT_INVALIDARRAYSIZE: D3D11_MESSAGE_ID =
D3D11_MESSAGE_ID(3145898i32);
pub const D3D11_MESSAGE_ID_VIDEOPROCESSORBLT_INVALIDDESTRECT: D3D11_MESSAGE_ID =
D3D11_MESSAGE_ID(3145896i32);
pub const D3D11_MESSAGE_ID_VIDEOPROCESSORBLT_INVALIDFUTUREFRAMES: D3D11_MESSAGE_ID =
D3D11_MESSAGE_ID(3145894i32);
pub const D3D11_MESSAGE_ID_VIDEOPROCESSORBLT_INVALIDINPUTRESOURCE: D3D11_MESSAGE_ID =
D3D11_MESSAGE_ID(3145897i32);
pub const D3D11_MESSAGE_ID_VIDEOPROCESSORBLT_INVALIDOUTPUT: D3D11_MESSAGE_ID =
D3D11_MESSAGE_ID(3145892i32);
pub const D3D11_MESSAGE_ID_VIDEOPROCESSORBLT_INVALIDPASTFRAMES: D3D11_MESSAGE_ID =
D3D11_MESSAGE_ID(3145893i32);
pub const D3D11_MESSAGE_ID_VIDEOPROCESSORBLT_INVALIDRIGHTRESOURCE: D3D11_MESSAGE_ID =
D3D11_MESSAGE_ID(3145903i32);
pub const D3D11_MESSAGE_ID_VIDEOPROCESSORBLT_INVALIDSOURCERECT: D3D11_MESSAGE_ID =
D3D11_MESSAGE_ID(3145895i32);
pub const D3D11_MESSAGE_ID_VIDEOPROCESSORBLT_INVALIDSTREAMCOUNT: D3D11_MESSAGE_ID =
D3D11_MESSAGE_ID(3145890i32);
pub const D3D11_MESSAGE_ID_VIDEOPROCESSORBLT_NOSTEREOSTREAMS: D3D11_MESSAGE_ID =
D3D11_MESSAGE_ID(3145904i32);
pub const D3D11_MESSAGE_ID_VIDEOPROCESSORBLT_NULLPARAM: D3D11_MESSAGE_ID =
D3D11_MESSAGE_ID(3145889i32);
pub const D3D11_MESSAGE_ID_VIDEOPROCESSORBLT_OUTPUTHAZARD: D3D11_MESSAGE_ID =
D3D11_MESSAGE_ID(3145906i32);
pub const D3D11_MESSAGE_ID_VIDEOPROCESSORBLT_RIGHTEXPECTED: D3D11_MESSAGE_ID =
D3D11_MESSAGE_ID(3145900i32);
pub const D3D11_MESSAGE_ID_VIDEOPROCESSORBLT_RIGHTNOTEXPECTED: D3D11_MESSAGE_ID =
D3D11_MESSAGE_ID(3145901i32);
pub const D3D11_MESSAGE_ID_VIDEOPROCESSORBLT_STEREONOTENABLED: D3D11_MESSAGE_ID =
D3D11_MESSAGE_ID(3145902i32);
pub const D3D11_MESSAGE_ID_VIDEOPROCESSORBLT_TARGETRECT: D3D11_MESSAGE_ID =
D3D11_MESSAGE_ID(3145891i32);
pub const D3D11_MESSAGE_ID_VIDEOPROCESSORGETBEHAVIORHINTS_INVALIDDESTRECT: D3D11_MESSAGE_ID =
D3D11_MESSAGE_ID(3146115i32);
pub const D3D11_MESSAGE_ID_VIDEOPROCESSORGETBEHAVIORHINTS_INVALIDSOURCERECT: D3D11_MESSAGE_ID =
D3D11_MESSAGE_ID(3146114i32);
pub const D3D11_MESSAGE_ID_VIDEOPROCESSORGETBEHAVIORHINTS_INVALIDSTREAMCOUNT: D3D11_MESSAGE_ID =
D3D11_MESSAGE_ID(3146112i32);
pub const D3D11_MESSAGE_ID_VIDEOPROCESSORGETBEHAVIORHINTS_NULLPARAM: D3D11_MESSAGE_ID =
D3D11_MESSAGE_ID(3146111i32);
pub const D3D11_MESSAGE_ID_VIDEOPROCESSORGETBEHAVIORHINTS_TARGETRECT: D3D11_MESSAGE_ID =
D3D11_MESSAGE_ID(3146113i32);
pub const D3D11_MESSAGE_ID_VIDEOPROCESSORGETOUTPUTALPHAFILLMODE_NULLPARAM: D3D11_MESSAGE_ID =
D3D11_MESSAGE_ID(3145824i32);
pub const D3D11_MESSAGE_ID_VIDEOPROCESSORGETOUTPUTBACKGROUNDCOLOR_NULLPARAM: D3D11_MESSAGE_ID =
D3D11_MESSAGE_ID(3145822i32);
pub const D3D11_MESSAGE_ID_VIDEOPROCESSORGETOUTPUTCOLORSPACE1_NULLPARAM: D3D11_MESSAGE_ID =
D3D11_MESSAGE_ID(3146098i32);
pub const D3D11_MESSAGE_ID_VIDEOPROCESSORGETOUTPUTCOLORSPACE_NULLPARAM: D3D11_MESSAGE_ID =
D3D11_MESSAGE_ID(3145823i32);
pub const D3D11_MESSAGE_ID_VIDEOPROCESSORGETOUTPUTCONSTRICTION_NULLPARAM: D3D11_MESSAGE_ID =
D3D11_MESSAGE_ID(3145825i32);
pub const D3D11_MESSAGE_ID_VIDEOPROCESSORGETOUTPUTEXTENSION_NULLPARAM: D3D11_MESSAGE_ID =
D3D11_MESSAGE_ID(3145829i32);
pub const D3D11_MESSAGE_ID_VIDEOPROCESSORGETOUTPUTHDRMETADATA_INVALIDSIZE: D3D11_MESSAGE_ID =
D3D11_MESSAGE_ID(3146228i32);
pub const D3D11_MESSAGE_ID_VIDEOPROCESSORGETOUTPUTHDRMETADATA_NULLPARAM: D3D11_MESSAGE_ID =
D3D11_MESSAGE_ID(3146227i32);
pub const D3D11_MESSAGE_ID_VIDEOPROCESSORGETOUTPUTSHADERUSAGE_NULLPARAM: D3D11_MESSAGE_ID =
D3D11_MESSAGE_ID(3146110i32);
pub const D3D11_MESSAGE_ID_VIDEOPROCESSORGETOUTPUTSTEREOMODE_NULLPARAM: D3D11_MESSAGE_ID =
D3D11_MESSAGE_ID(3145828i32);
pub const D3D11_MESSAGE_ID_VIDEOPROCESSORGETOUTPUTTARGETRECT_NULLPARAM: D3D11_MESSAGE_ID =
D3D11_MESSAGE_ID(3145821i32);
pub const D3D11_MESSAGE_ID_VIDEOPROCESSORGETSTREAMALPHA_INVALIDSTREAM: D3D11_MESSAGE_ID =
D3D11_MESSAGE_ID(3146240i32);
pub const D3D11_MESSAGE_ID_VIDEOPROCESSORGETSTREAMALPHA_NULLPARAM: D3D11_MESSAGE_ID =
D3D11_MESSAGE_ID(3145880i32);
pub const D3D11_MESSAGE_ID_VIDEOPROCESSORGETSTREAMAUTOPROCESSINGMODE_INVALIDSTREAM:
D3D11_MESSAGE_ID = D3D11_MESSAGE_ID(3146245i32);
pub const D3D11_MESSAGE_ID_VIDEOPROCESSORGETSTREAMAUTOPROCESSINGMODE_NULLPARAM: D3D11_MESSAGE_ID =
D3D11_MESSAGE_ID(3145885i32);
pub const D3D11_MESSAGE_ID_VIDEOPROCESSORGETSTREAMCOLORSPACE1_INVALIDSTREAM: D3D11_MESSAGE_ID =
D3D11_MESSAGE_ID(3146248i32);
pub const D3D11_MESSAGE_ID_VIDEOPROCESSORGETSTREAMCOLORSPACE1_NULLPARAM: D3D11_MESSAGE_ID =
D3D11_MESSAGE_ID(3146104i32);
pub const D3D11_MESSAGE_ID_VIDEOPROCESSORGETSTREAMCOLORSPACE_INVALIDSTREAM: D3D11_MESSAGE_ID =
D3D11_MESSAGE_ID(3146236i32);
pub const D3D11_MESSAGE_ID_VIDEOPROCESSORGETSTREAMCOLORSPACE_NULLPARAM: D3D11_MESSAGE_ID =
D3D11_MESSAGE_ID(3145876i32);
pub const D3D11_MESSAGE_ID_VIDEOPROCESSORGETSTREAMDESTRECT_INVALIDSTREAM: D3D11_MESSAGE_ID =
D3D11_MESSAGE_ID(3146239i32);
pub const D3D11_MESSAGE_ID_VIDEOPROCESSORGETSTREAMDESTRECT_NULLPARAM: D3D11_MESSAGE_ID =
D3D11_MESSAGE_ID(3145879i32);
pub const D3D11_MESSAGE_ID_VIDEOPROCESSORGETSTREAMEXTENSION_INVALIDSTREAM: D3D11_MESSAGE_ID =
D3D11_MESSAGE_ID(3145888i32);
pub const D3D11_MESSAGE_ID_VIDEOPROCESSORGETSTREAMEXTENSION_NULLPARAM: D3D11_MESSAGE_ID =
D3D11_MESSAGE_ID(3145887i32);
pub const D3D11_MESSAGE_ID_VIDEOPROCESSORGETSTREAMFILTER_INVALIDSTREAM: D3D11_MESSAGE_ID =
D3D11_MESSAGE_ID(3146246i32);
pub const D3D11_MESSAGE_ID_VIDEOPROCESSORGETSTREAMFILTER_NULLPARAM: D3D11_MESSAGE_ID =
D3D11_MESSAGE_ID(3145886i32);
pub const D3D11_MESSAGE_ID_VIDEOPROCESSORGETSTREAMFRAMEFORMAT_INVALIDSTREAM: D3D11_MESSAGE_ID =
D3D11_MESSAGE_ID(3146235i32);
pub const D3D11_MESSAGE_ID_VIDEOPROCESSORGETSTREAMFRAMEFORMAT_NULLPARAM: D3D11_MESSAGE_ID =
D3D11_MESSAGE_ID(3145875i32);
pub const D3D11_MESSAGE_ID_VIDEOPROCESSORGETSTREAMHDRMETADATA_INVALIDSIZE: D3D11_MESSAGE_ID =
D3D11_MESSAGE_ID(3146234i32);
pub const D3D11_MESSAGE_ID_VIDEOPROCESSORGETSTREAMHDRMETADATA_INVALIDSTREAM: D3D11_MESSAGE_ID =
D3D11_MESSAGE_ID(3146233i32);
pub const D3D11_MESSAGE_ID_VIDEOPROCESSORGETSTREAMHDRMETADATA_NULLPARAM: D3D11_MESSAGE_ID =
D3D11_MESSAGE_ID(3146232i32);
pub const D3D11_MESSAGE_ID_VIDEOPROCESSORGETSTREAMLUMAKEY_INVALIDSTREAM: D3D11_MESSAGE_ID =
D3D11_MESSAGE_ID(3146243i32);
pub const D3D11_MESSAGE_ID_VIDEOPROCESSORGETSTREAMLUMAKEY_NULLPARAM: D3D11_MESSAGE_ID =
D3D11_MESSAGE_ID(3145883i32);
pub const D3D11_MESSAGE_ID_VIDEOPROCESSORGETSTREAMMIRROR_INVALIDSTREAM: D3D11_MESSAGE_ID =
D3D11_MESSAGE_ID(3146249i32);
pub const D3D11_MESSAGE_ID_VIDEOPROCESSORGETSTREAMMIRROR_NULLPARAM: D3D11_MESSAGE_ID =
D3D11_MESSAGE_ID(3146105i32);
pub const D3D11_MESSAGE_ID_VIDEOPROCESSORGETSTREAMOUTPUTRATE_INVALIDSTREAM: D3D11_MESSAGE_ID =
D3D11_MESSAGE_ID(3146237i32);
pub const D3D11_MESSAGE_ID_VIDEOPROCESSORGETSTREAMOUTPUTRATE_NULLPARAM: D3D11_MESSAGE_ID =
D3D11_MESSAGE_ID(3145877i32);
pub const D3D11_MESSAGE_ID_VIDEOPROCESSORGETSTREAMPALETTE_INVALIDSTREAM: D3D11_MESSAGE_ID =
D3D11_MESSAGE_ID(3146241i32);
pub const D3D11_MESSAGE_ID_VIDEOPROCESSORGETSTREAMPALETTE_NULLPARAM: D3D11_MESSAGE_ID =
D3D11_MESSAGE_ID(3145881i32);
pub const D3D11_MESSAGE_ID_VIDEOPROCESSORGETSTREAMPIXELASPECTRATIO_INVALIDSTREAM: D3D11_MESSAGE_ID =
D3D11_MESSAGE_ID(3146242i32);
pub const D3D11_MESSAGE_ID_VIDEOPROCESSORGETSTREAMPIXELASPECTRATIO_NULLPARAM: D3D11_MESSAGE_ID =
D3D11_MESSAGE_ID(3145882i32);
pub const D3D11_MESSAGE_ID_VIDEOPROCESSORGETSTREAMROTATION_INVALIDSTREAM: D3D11_MESSAGE_ID =
D3D11_MESSAGE_ID(3146247i32);
pub const D3D11_MESSAGE_ID_VIDEOPROCESSORGETSTREAMROTATION_NULLPARAM: D3D11_MESSAGE_ID =
D3D11_MESSAGE_ID(3146034i32);
pub const D3D11_MESSAGE_ID_VIDEOPROCESSORGETSTREAMSOURCERECT_INVALIDSTREAM: D3D11_MESSAGE_ID =
D3D11_MESSAGE_ID(3146238i32);
pub const D3D11_MESSAGE_ID_VIDEOPROCESSORGETSTREAMSOURCERECT_NULLPARAM: D3D11_MESSAGE_ID =
D3D11_MESSAGE_ID(3145878i32);
pub const D3D11_MESSAGE_ID_VIDEOPROCESSORGETSTREAMSTEREOFORMAT_INVALIDSTREAM: D3D11_MESSAGE_ID =
D3D11_MESSAGE_ID(3146244i32);
pub const D3D11_MESSAGE_ID_VIDEOPROCESSORGETSTREAMSTEREOFORMAT_NULLPARAM: D3D11_MESSAGE_ID =
D3D11_MESSAGE_ID(3145884i32);
pub const D3D11_MESSAGE_ID_VIDEOPROCESSORSETOUTPUTALPHAFILLMODE_INVALIDFILLMODE: D3D11_MESSAGE_ID =
D3D11_MESSAGE_ID(3145816i32);
pub const D3D11_MESSAGE_ID_VIDEOPROCESSORSETOUTPUTALPHAFILLMODE_INVALIDSTREAM: D3D11_MESSAGE_ID =
D3D11_MESSAGE_ID(3145815i32);
pub const D3D11_MESSAGE_ID_VIDEOPROCESSORSETOUTPUTALPHAFILLMODE_NULLPARAM: D3D11_MESSAGE_ID =
D3D11_MESSAGE_ID(3145813i32);
pub const D3D11_MESSAGE_ID_VIDEOPROCESSORSETOUTPUTALPHAFILLMODE_UNSUPPORTED: D3D11_MESSAGE_ID =
D3D11_MESSAGE_ID(3145814i32);
pub const D3D11_MESSAGE_ID_VIDEOPROCESSORSETOUTPUTBACKGROUNDCOLOR_INVALIDALPHA: D3D11_MESSAGE_ID =
D3D11_MESSAGE_ID(3145811i32);
pub const D3D11_MESSAGE_ID_VIDEOPROCESSORSETOUTPUTBACKGROUNDCOLOR_NULLPARAM: D3D11_MESSAGE_ID =
D3D11_MESSAGE_ID(3145810i32);
pub const D3D11_MESSAGE_ID_VIDEOPROCESSORSETOUTPUTCOLORSPACE1_NULLPARAM: D3D11_MESSAGE_ID =
D3D11_MESSAGE_ID(3146097i32);
pub const D3D11_MESSAGE_ID_VIDEOPROCESSORSETOUTPUTCOLORSPACE_NULLPARAM: D3D11_MESSAGE_ID =
D3D11_MESSAGE_ID(3145812i32);
pub const D3D11_MESSAGE_ID_VIDEOPROCESSORSETOUTPUTCONSTRICTION_INVALIDSIZE: D3D11_MESSAGE_ID =
D3D11_MESSAGE_ID(3145827i32);
pub const D3D11_MESSAGE_ID_VIDEOPROCESSORSETOUTPUTCONSTRICTION_NULLPARAM: D3D11_MESSAGE_ID =
D3D11_MESSAGE_ID(3145817i32);
pub const D3D11_MESSAGE_ID_VIDEOPROCESSORSETOUTPUTCONSTRICTION_UNSUPPORTED: D3D11_MESSAGE_ID =
D3D11_MESSAGE_ID(3145826i32);
pub const D3D11_MESSAGE_ID_VIDEOPROCESSORSETOUTPUTEXTENSION_NULLPARAM: D3D11_MESSAGE_ID =
D3D11_MESSAGE_ID(3145820i32);
pub const D3D11_MESSAGE_ID_VIDEOPROCESSORSETOUTPUTHDRMETADATA_INVALIDSIZE: D3D11_MESSAGE_ID =
D3D11_MESSAGE_ID(3146226i32);
pub const D3D11_MESSAGE_ID_VIDEOPROCESSORSETOUTPUTHDRMETADATA_NULLPARAM: D3D11_MESSAGE_ID =
D3D11_MESSAGE_ID(3146225i32);
pub const D3D11_MESSAGE_ID_VIDEOPROCESSORSETOUTPUTSHADERUSAGE_NULLPARAM: D3D11_MESSAGE_ID =
D3D11_MESSAGE_ID(3146109i32);
pub const D3D11_MESSAGE_ID_VIDEOPROCESSORSETOUTPUTSTEREOMODE_NULLPARAM: D3D11_MESSAGE_ID =
D3D11_MESSAGE_ID(3145818i32);
pub const D3D11_MESSAGE_ID_VIDEOPROCESSORSETOUTPUTSTEREOMODE_UNSUPPORTED: D3D11_MESSAGE_ID =
D3D11_MESSAGE_ID(3145819i32);
pub const D3D11_MESSAGE_ID_VIDEOPROCESSORSETOUTPUTTARGETRECT_NULLPARAM: D3D11_MESSAGE_ID =
D3D11_MESSAGE_ID(3145809i32);
pub const D3D11_MESSAGE_ID_VIDEOPROCESSORSETSTREAMALPHA_INVALIDALPHA: D3D11_MESSAGE_ID =
D3D11_MESSAGE_ID(3145847i32);
pub const D3D11_MESSAGE_ID_VIDEOPROCESSORSETSTREAMALPHA_INVALIDSTREAM: D3D11_MESSAGE_ID =
D3D11_MESSAGE_ID(3145846i32);
pub const D3D11_MESSAGE_ID_VIDEOPROCESSORSETSTREAMALPHA_NULLPARAM: D3D11_MESSAGE_ID =
D3D11_MESSAGE_ID(3145845i32);
pub const D3D11_MESSAGE_ID_VIDEOPROCESSORSETSTREAMALPHA_UNSUPPORTED: D3D11_MESSAGE_ID =
D3D11_MESSAGE_ID(3146051i32);
pub const D3D11_MESSAGE_ID_VIDEOPROCESSORSETSTREAMAUTOPROCESSINGMODE_INVALIDSTREAM:
D3D11_MESSAGE_ID = D3D11_MESSAGE_ID(3145867i32);
pub const D3D11_MESSAGE_ID_VIDEOPROCESSORSETSTREAMAUTOPROCESSINGMODE_NULLPARAM: D3D11_MESSAGE_ID =
D3D11_MESSAGE_ID(3145866i32);
pub const D3D11_MESSAGE_ID_VIDEOPROCESSORSETSTREAMCOLORSPACE1_INVALIDSTREAM: D3D11_MESSAGE_ID =
D3D11_MESSAGE_ID(3146100i32);
pub const D3D11_MESSAGE_ID_VIDEOPROCESSORSETSTREAMCOLORSPACE1_NULLPARAM: D3D11_MESSAGE_ID =
D3D11_MESSAGE_ID(3146099i32);
pub const D3D11_MESSAGE_ID_VIDEOPROCESSORSETSTREAMCOLORSPACE_INVALIDSTREAM: D3D11_MESSAGE_ID =
D3D11_MESSAGE_ID(3145834i32);
pub const D3D11_MESSAGE_ID_VIDEOPROCESSORSETSTREAMCOLORSPACE_NULLPARAM: D3D11_MESSAGE_ID =
D3D11_MESSAGE_ID(3145833i32);
pub const D3D11_MESSAGE_ID_VIDEOPROCESSORSETSTREAMDESTRECT_INVALIDRECT: D3D11_MESSAGE_ID =
D3D11_MESSAGE_ID(3145844i32);
pub const D3D11_MESSAGE_ID_VIDEOPROCESSORSETSTREAMDESTRECT_INVALIDSTREAM: D3D11_MESSAGE_ID =
D3D11_MESSAGE_ID(3145843i32);
pub const D3D11_MESSAGE_ID_VIDEOPROCESSORSETSTREAMDESTRECT_NULLPARAM: D3D11_MESSAGE_ID =
D3D11_MESSAGE_ID(3145842i32);
pub const D3D11_MESSAGE_ID_VIDEOPROCESSORSETSTREAMEXTENSION_INVALIDSTREAM: D3D11_MESSAGE_ID =
D3D11_MESSAGE_ID(3145874i32);
pub const D3D11_MESSAGE_ID_VIDEOPROCESSORSETSTREAMEXTENSION_NULLPARAM: D3D11_MESSAGE_ID =
D3D11_MESSAGE_ID(3145873i32);
pub const D3D11_MESSAGE_ID_VIDEOPROCESSORSETSTREAMFILTER_INVALIDFILTER: D3D11_MESSAGE_ID =
D3D11_MESSAGE_ID(3145870i32);
pub const D3D11_MESSAGE_ID_VIDEOPROCESSORSETSTREAMFILTER_INVALIDLEVEL: D3D11_MESSAGE_ID =
D3D11_MESSAGE_ID(3145872i32);
pub const D3D11_MESSAGE_ID_VIDEOPROCESSORSETSTREAMFILTER_INVALIDSTREAM: D3D11_MESSAGE_ID =
D3D11_MESSAGE_ID(3145869i32);
pub const D3D11_MESSAGE_ID_VIDEOPROCESSORSETSTREAMFILTER_NULLPARAM: D3D11_MESSAGE_ID =
D3D11_MESSAGE_ID(3145868i32);
pub const D3D11_MESSAGE_ID_VIDEOPROCESSORSETSTREAMFILTER_UNSUPPORTED: D3D11_MESSAGE_ID =
D3D11_MESSAGE_ID(3145871i32);
pub const D3D11_MESSAGE_ID_VIDEOPROCESSORSETSTREAMFRAMEFORMAT_INVALIDFORMAT: D3D11_MESSAGE_ID =
D3D11_MESSAGE_ID(3145831i32);
pub const D3D11_MESSAGE_ID_VIDEOPROCESSORSETSTREAMFRAMEFORMAT_INVALIDSTREAM: D3D11_MESSAGE_ID =
D3D11_MESSAGE_ID(3145832i32);
pub const D3D11_MESSAGE_ID_VIDEOPROCESSORSETSTREAMFRAMEFORMAT_NULLPARAM: D3D11_MESSAGE_ID =
D3D11_MESSAGE_ID(3145830i32);
pub const D3D11_MESSAGE_ID_VIDEOPROCESSORSETSTREAMHDRMETADATA_INVALIDSIZE: D3D11_MESSAGE_ID =
D3D11_MESSAGE_ID(3146231i32);
pub const D3D11_MESSAGE_ID_VIDEOPROCESSORSETSTREAMHDRMETADATA_INVALIDSTREAM: D3D11_MESSAGE_ID =
D3D11_MESSAGE_ID(3146230i32);
pub const D3D11_MESSAGE_ID_VIDEOPROCESSORSETSTREAMHDRMETADATA_NULLPARAM: D3D11_MESSAGE_ID =
D3D11_MESSAGE_ID(3146229i32);
pub const D3D11_MESSAGE_ID_VIDEOPROCESSORSETSTREAMLUMAKEY_INVALIDRANGE: D3D11_MESSAGE_ID =
D3D11_MESSAGE_ID(3145857i32);
pub const D3D11_MESSAGE_ID_VIDEOPROCESSORSETSTREAMLUMAKEY_INVALIDSTREAM: D3D11_MESSAGE_ID =
D3D11_MESSAGE_ID(3145856i32);
pub const D3D11_MESSAGE_ID_VIDEOPROCESSORSETSTREAMLUMAKEY_NULLPARAM: D3D11_MESSAGE_ID =
D3D11_MESSAGE_ID(3145855i32);
pub const D3D11_MESSAGE_ID_VIDEOPROCESSORSETSTREAMLUMAKEY_UNSUPPORTED: D3D11_MESSAGE_ID =
D3D11_MESSAGE_ID(3145858i32);
pub const D3D11_MESSAGE_ID_VIDEOPROCESSORSETSTREAMMIRROR_INVALIDSTREAM: D3D11_MESSAGE_ID =
D3D11_MESSAGE_ID(3146102i32);
pub const D3D11_MESSAGE_ID_VIDEOPROCESSORSETSTREAMMIRROR_NULLPARAM: D3D11_MESSAGE_ID =
D3D11_MESSAGE_ID(3146101i32);
pub const D3D11_MESSAGE_ID_VIDEOPROCESSORSETSTREAMMIRROR_UNSUPPORTED: D3D11_MESSAGE_ID =
D3D11_MESSAGE_ID(3146103i32);
pub const D3D11_MESSAGE_ID_VIDEOPROCESSORSETSTREAMOUTPUTRATE_INVALIDFLAG: D3D11_MESSAGE_ID =
D3D11_MESSAGE_ID(3145837i32);
pub const D3D11_MESSAGE_ID_VIDEOPROCESSORSETSTREAMOUTPUTRATE_INVALIDRATE: D3D11_MESSAGE_ID =
D3D11_MESSAGE_ID(3145836i32);
pub const D3D11_MESSAGE_ID_VIDEOPROCESSORSETSTREAMOUTPUTRATE_INVALIDSTREAM: D3D11_MESSAGE_ID =
D3D11_MESSAGE_ID(3145838i32);
pub const D3D11_MESSAGE_ID_VIDEOPROCESSORSETSTREAMOUTPUTRATE_NULLPARAM: D3D11_MESSAGE_ID =
D3D11_MESSAGE_ID(3145835i32);
pub const D3D11_MESSAGE_ID_VIDEOPROCESSORSETSTREAMPALETTE_INVALIDALPHA: D3D11_MESSAGE_ID =
D3D11_MESSAGE_ID(3145851i32);
pub const D3D11_MESSAGE_ID_VIDEOPROCESSORSETSTREAMPALETTE_INVALIDCOUNT: D3D11_MESSAGE_ID =
D3D11_MESSAGE_ID(3145850i32);
pub const D3D11_MESSAGE_ID_VIDEOPROCESSORSETSTREAMPALETTE_INVALIDSTREAM: D3D11_MESSAGE_ID =
D3D11_MESSAGE_ID(3145849i32);
pub const D3D11_MESSAGE_ID_VIDEOPROCESSORSETSTREAMPALETTE_NULLPARAM: D3D11_MESSAGE_ID =
D3D11_MESSAGE_ID(3145848i32);
pub const D3D11_MESSAGE_ID_VIDEOPROCESSORSETSTREAMPIXELASPECTRATIO_INVALIDRATIO: D3D11_MESSAGE_ID =
D3D11_MESSAGE_ID(3145854i32);
pub const D3D11_MESSAGE_ID_VIDEOPROCESSORSETSTREAMPIXELASPECTRATIO_INVALIDSTREAM: D3D11_MESSAGE_ID =
D3D11_MESSAGE_ID(3145853i32);
pub const D3D11_MESSAGE_ID_VIDEOPROCESSORSETSTREAMPIXELASPECTRATIO_NULLPARAM: D3D11_MESSAGE_ID =
D3D11_MESSAGE_ID(3145852i32);
pub const D3D11_MESSAGE_ID_VIDEOPROCESSORSETSTREAMPIXELASPECTRATIO_UNSUPPORTED: D3D11_MESSAGE_ID =
D3D11_MESSAGE_ID(3146052i32);
pub const D3D11_MESSAGE_ID_VIDEOPROCESSORSETSTREAMROTATION_INVALID: D3D11_MESSAGE_ID =
D3D11_MESSAGE_ID(3146032i32);
pub const D3D11_MESSAGE_ID_VIDEOPROCESSORSETSTREAMROTATION_INVALIDSTREAM: D3D11_MESSAGE_ID =
D3D11_MESSAGE_ID(3146031i32);
pub const D3D11_MESSAGE_ID_VIDEOPROCESSORSETSTREAMROTATION_NULLPARAM: D3D11_MESSAGE_ID =
D3D11_MESSAGE_ID(3146030i32);
pub const D3D11_MESSAGE_ID_VIDEOPROCESSORSETSTREAMROTATION_UNSUPPORTED: D3D11_MESSAGE_ID =
D3D11_MESSAGE_ID(3146033i32);
pub const D3D11_MESSAGE_ID_VIDEOPROCESSORSETSTREAMSOURCERECT_INVALIDRECT: D3D11_MESSAGE_ID =
D3D11_MESSAGE_ID(3145841i32);
pub const D3D11_MESSAGE_ID_VIDEOPROCESSORSETSTREAMSOURCERECT_INVALIDSTREAM: D3D11_MESSAGE_ID =
D3D11_MESSAGE_ID(3145840i32);
pub const D3D11_MESSAGE_ID_VIDEOPROCESSORSETSTREAMSOURCERECT_NULLPARAM: D3D11_MESSAGE_ID =
D3D11_MESSAGE_ID(3145839i32);
pub const D3D11_MESSAGE_ID_VIDEOPROCESSORSETSTREAMSTEREOFORMAT_FLIPUNSUPPORTED: D3D11_MESSAGE_ID =
D3D11_MESSAGE_ID(3145862i32);
pub const D3D11_MESSAGE_ID_VIDEOPROCESSORSETSTREAMSTEREOFORMAT_FORMATUNSUPPORTED: D3D11_MESSAGE_ID =
D3D11_MESSAGE_ID(3145864i32);
pub const D3D11_MESSAGE_ID_VIDEOPROCESSORSETSTREAMSTEREOFORMAT_INVALIDFORMAT: D3D11_MESSAGE_ID =
D3D11_MESSAGE_ID(3145865i32);
pub const D3D11_MESSAGE_ID_VIDEOPROCESSORSETSTREAMSTEREOFORMAT_INVALIDSTREAM: D3D11_MESSAGE_ID =
D3D11_MESSAGE_ID(3145860i32);
pub const D3D11_MESSAGE_ID_VIDEOPROCESSORSETSTREAMSTEREOFORMAT_MONOOFFSETUNSUPPORTED:
D3D11_MESSAGE_ID = D3D11_MESSAGE_ID(3145863i32);
pub const D3D11_MESSAGE_ID_VIDEOPROCESSORSETSTREAMSTEREOFORMAT_NULLPARAM: D3D11_MESSAGE_ID =
D3D11_MESSAGE_ID(3145859i32);
pub const D3D11_MESSAGE_ID_VIDEOPROCESSORSETSTREAMSTEREOFORMAT_UNSUPPORTED: D3D11_MESSAGE_ID =
D3D11_MESSAGE_ID(3145861i32);
pub const D3D11_MESSAGE_ID_VSSETCONSTANTBUFFERS_INVALIDBUFFER: D3D11_MESSAGE_ID =
D3D11_MESSAGE_ID(246i32);
pub const D3D11_MESSAGE_ID_VSSETCONSTANTBUFFERS_INVALIDBUFFEROFFSETORCOUNT: D3D11_MESSAGE_ID =
D3D11_MESSAGE_ID(3146016i32);
pub const D3D11_MESSAGE_ID_VSSETCONSTANTBUFFERS_UNBINDDELETINGOBJECT: D3D11_MESSAGE_ID =
D3D11_MESSAGE_ID(35i32);
pub const D3D11_MESSAGE_ID_VSSETSAMPLERS_NOT_SUPPORTED: D3D11_MESSAGE_ID =
D3D11_MESSAGE_ID(1048582i32);
pub const D3D11_MESSAGE_ID_VSSETSAMPLERS_TOO_MANY_SAMPLERS: D3D11_MESSAGE_ID =
D3D11_MESSAGE_ID(1048583i32);
pub const D3D11_MESSAGE_ID_VSSETSAMPLERS_UNBINDDELETINGOBJECT: D3D11_MESSAGE_ID =
D3D11_MESSAGE_ID(36i32);
pub const D3D11_MESSAGE_ID_VSSETSHADERRESOURCES_UNBINDDELETINGOBJECT: D3D11_MESSAGE_ID =
D3D11_MESSAGE_ID(34i32);
pub const D3D11_MESSAGE_ID_VSSETSHADER_UNBINDDELETINGOBJECT: D3D11_MESSAGE_ID =
D3D11_MESSAGE_ID(33i32);
pub const D3D11_MESSAGE_ID_VSSHADERRESOURCES_NOT_SUPPORTED: D3D11_MESSAGE_ID =
D3D11_MESSAGE_ID(1048618i32);
#[repr(transparent)]
#[derive(Clone, Copy, Debug, Default, Eq, PartialEq)]
pub struct D3D11_MESSAGE_SEVERITY(pub i32);
pub const D3D11_MESSAGE_SEVERITY_CORRUPTION: D3D11_MESSAGE_SEVERITY = D3D11_MESSAGE_SEVERITY(0i32);
pub const D3D11_MESSAGE_SEVERITY_ERROR: D3D11_MESSAGE_SEVERITY = D3D11_MESSAGE_SEVERITY(1i32);
pub const D3D11_MESSAGE_SEVERITY_INFO: D3D11_MESSAGE_SEVERITY = D3D11_MESSAGE_SEVERITY(3i32);
pub const D3D11_MESSAGE_SEVERITY_MESSAGE: D3D11_MESSAGE_SEVERITY = D3D11_MESSAGE_SEVERITY(4i32);
pub const D3D11_MESSAGE_SEVERITY_WARNING: D3D11_MESSAGE_SEVERITY = D3D11_MESSAGE_SEVERITY(2i32);
pub const D3D11_MINOR_VERSION: u32 = 0u32;
pub const D3D11_MIN_BORDER_COLOR_COMPONENT: f32 = 0f32;
pub const D3D11_MIN_DEPTH: f32 = 0f32;
pub const D3D11_MIN_FILTER_SHIFT: u32 = 4u32;
pub const D3D11_MIN_MAXANISOTROPY: u32 = 0u32;
pub const D3D11_MIP_FILTER_SHIFT: u32 = 0u32;
pub const D3D11_MIP_LOD_BIAS_MAX: f32 = 15.99f32;
pub const D3D11_MIP_LOD_BIAS_MIN: f32 = -16f32;
pub const D3D11_MIP_LOD_FRACTIONAL_BIT_COUNT: u32 = 8u32;
pub const D3D11_MIP_LOD_RANGE_BIT_COUNT: u32 = 8u32;
pub const D3D11_MULTISAMPLE_ANTIALIAS_LINE_WIDTH: f32 = 1.4f32;
pub const D3D11_MUTE_CATEGORY: crate::core_supplemental::PCWSTR = crate::core_supplemental::w!("Mute_CATEGORY_%s");
pub const D3D11_MUTE_DEBUG_OUTPUT: crate::core_supplemental::PCWSTR = crate::core_supplemental::w!("MuteDebugOutput");
pub const D3D11_MUTE_ID_DECIMAL: crate::core_supplemental::PCWSTR = crate::core_supplemental::w!("Mute_ID_%d");
pub const D3D11_MUTE_ID_STRING: crate::core_supplemental::PCWSTR = crate::core_supplemental::w!("Mute_ID_%s");
pub const D3D11_MUTE_SEVERITY: crate::core_supplemental::PCWSTR = crate::core_supplemental::w!("Mute_SEVERITY_%s");
pub const D3D11_NONSAMPLE_FETCH_OUT_OF_RANGE_ACCESS_RESULT: u32 = 0u32;
#[repr(C)]
#[derive(Clone, Copy, Debug, PartialEq)]
pub struct D3D11_OMAC {
pub Omac: [u8; 16],
}
impl Default for D3D11_OMAC {
fn default() -> Self {
unsafe { core::mem::zeroed() }
}
}
#[repr(C)]
#[derive(Clone, Copy, Debug, PartialEq)]
pub struct D3D11_PACKED_MIP_DESC {
pub NumStandardMips: u8,
pub NumPackedMips: u8,
pub NumTilesForPackedMips: u32,
pub StartTileIndexInOverallResource: u32,
}
impl Default for D3D11_PACKED_MIP_DESC {
fn default() -> Self {
unsafe { core::mem::zeroed() }
}
}
pub const D3D11_PACKED_TILE: u32 = 4294967295u32;
#[repr(C)]
#[cfg(feature = "Win32_Graphics_Direct3D")]
#[derive(Clone, Copy, Debug, PartialEq)]
pub struct D3D11_PARAMETER_DESC {
pub Name: crate::core_supplemental::PCSTR,
pub SemanticName: crate::core_supplemental::PCSTR,
pub Type: super::Direct3D::D3D_SHADER_VARIABLE_TYPE,
pub Class: super::Direct3D::D3D_SHADER_VARIABLE_CLASS,
pub Rows: u32,
pub Columns: u32,
pub InterpolationMode: super::Direct3D::D3D_INTERPOLATION_MODE,
pub Flags: super::Direct3D::D3D_PARAMETER_FLAGS,
pub FirstInRegister: u32,
pub FirstInComponent: u32,
pub FirstOutRegister: u32,
pub FirstOutComponent: u32,
}
#[cfg(feature = "Win32_Graphics_Direct3D")]
impl Default for D3D11_PARAMETER_DESC {
fn default() -> Self {
unsafe { core::mem::zeroed() }
}
}
pub const D3D11_PIXEL_ADDRESS_RANGE_BIT_COUNT: u32 = 15u32;
pub const D3D11_PIXEL_SHADER: D3D11_SHADER_TYPE = D3D11_SHADER_TYPE(5i32);
#[repr(C)]
#[derive(Clone, Copy, Debug, PartialEq)]
pub struct D3D11_PIXEL_SHADER_TRACE_DESC {
pub Invocation: u64,
pub X: i32,
pub Y: i32,
pub SampleMask: u64,
}
impl Default for D3D11_PIXEL_SHADER_TRACE_DESC {
fn default() -> Self {
unsafe { core::mem::zeroed() }
}
}
pub const D3D11_PRE_SCISSOR_PIXEL_ADDRESS_RANGE_BIT_COUNT: u32 = 16u32;
pub const D3D11_PROCESSIDTYPE_DWM: D3D11_AUTHENTICATED_PROCESS_IDENTIFIER_TYPE =
D3D11_AUTHENTICATED_PROCESS_IDENTIFIER_TYPE(1i32);
pub const D3D11_PROCESSIDTYPE_HANDLE: D3D11_AUTHENTICATED_PROCESS_IDENTIFIER_TYPE =
D3D11_AUTHENTICATED_PROCESS_IDENTIFIER_TYPE(2i32);
pub const D3D11_PROCESSIDTYPE_UNKNOWN: D3D11_AUTHENTICATED_PROCESS_IDENTIFIER_TYPE =
D3D11_AUTHENTICATED_PROCESS_IDENTIFIER_TYPE(0i32);
pub const D3D11_PS_CS_UAV_REGISTER_COMPONENTS: u32 = 1u32;
pub const D3D11_PS_CS_UAV_REGISTER_COUNT: u32 = 8u32;
pub const D3D11_PS_CS_UAV_REGISTER_READS_PER_INST: u32 = 1u32;
pub const D3D11_PS_CS_UAV_REGISTER_READ_PORTS: u32 = 1u32;
pub const D3D11_PS_FRONTFACING_DEFAULT_VALUE: u32 = 4294967295u32;
pub const D3D11_PS_FRONTFACING_FALSE_VALUE: u32 = 0u32;
pub const D3D11_PS_FRONTFACING_TRUE_VALUE: u32 = 4294967295u32;
pub const D3D11_PS_INPUT_REGISTER_COMPONENTS: u32 = 4u32;
pub const D3D11_PS_INPUT_REGISTER_COMPONENT_BIT_COUNT: u32 = 32u32;
pub const D3D11_PS_INPUT_REGISTER_COUNT: u32 = 32u32;
pub const D3D11_PS_INPUT_REGISTER_READS_PER_INST: u32 = 2u32;
pub const D3D11_PS_INPUT_REGISTER_READ_PORTS: u32 = 1u32;
pub const D3D11_PS_LEGACY_PIXEL_CENTER_FRACTIONAL_COMPONENT: f32 = 0f32;
pub const D3D11_PS_OUTPUT_DEPTH_REGISTER_COMPONENTS: u32 = 1u32;
pub const D3D11_PS_OUTPUT_DEPTH_REGISTER_COMPONENT_BIT_COUNT: u32 = 32u32;
pub const D3D11_PS_OUTPUT_DEPTH_REGISTER_COUNT: u32 = 1u32;
pub const D3D11_PS_OUTPUT_MASK_REGISTER_COMPONENTS: u32 = 1u32;
pub const D3D11_PS_OUTPUT_MASK_REGISTER_COMPONENT_BIT_COUNT: u32 = 32u32;
pub const D3D11_PS_OUTPUT_MASK_REGISTER_COUNT: u32 = 1u32;
pub const D3D11_PS_OUTPUT_REGISTER_COMPONENTS: u32 = 4u32;
pub const D3D11_PS_OUTPUT_REGISTER_COMPONENT_BIT_COUNT: u32 = 32u32;
pub const D3D11_PS_OUTPUT_REGISTER_COUNT: u32 = 8u32;
pub const D3D11_PS_PIXEL_CENTER_FRACTIONAL_COMPONENT: f32 = 0.5f32;
#[repr(transparent)]
#[derive(Clone, Copy, Debug, Default, Eq, PartialEq)]
pub struct D3D11_QUERY(pub i32);
#[repr(C)]
#[derive(Clone, Copy, Debug, PartialEq)]
pub struct D3D11_QUERY_DATA_PIPELINE_STATISTICS {
pub IAVertices: u64,
pub IAPrimitives: u64,
pub VSInvocations: u64,
pub GSInvocations: u64,
pub GSPrimitives: u64,
pub CInvocations: u64,
pub CPrimitives: u64,
pub PSInvocations: u64,
pub HSInvocations: u64,
pub DSInvocations: u64,
pub CSInvocations: u64,
}
impl Default for D3D11_QUERY_DATA_PIPELINE_STATISTICS {
fn default() -> Self {
unsafe { core::mem::zeroed() }
}
}
#[repr(C)]
#[derive(Clone, Copy, Debug, PartialEq)]
pub struct D3D11_QUERY_DATA_SO_STATISTICS {
pub NumPrimitivesWritten: u64,
pub PrimitivesStorageNeeded: u64,
}
impl Default for D3D11_QUERY_DATA_SO_STATISTICS {
fn default() -> Self {
unsafe { core::mem::zeroed() }
}
}
#[repr(C)]
#[derive(Clone, Copy, Debug, PartialEq)]
pub struct D3D11_QUERY_DATA_TIMESTAMP_DISJOINT {
pub Frequency: u64,
pub Disjoint: crate::Foundation::BOOL,
}
impl Default for D3D11_QUERY_DATA_TIMESTAMP_DISJOINT {
fn default() -> Self {
unsafe { core::mem::zeroed() }
}
}
#[repr(C)]
#[derive(Clone, Copy, Debug, PartialEq)]
pub struct D3D11_QUERY_DESC {
pub Query: D3D11_QUERY,
pub MiscFlags: u32,
}
impl Default for D3D11_QUERY_DESC {
fn default() -> Self {
unsafe { core::mem::zeroed() }
}
}
#[repr(C)]
#[derive(Clone, Copy, Debug, PartialEq)]
pub struct D3D11_QUERY_DESC1 {
pub Query: D3D11_QUERY,
pub MiscFlags: u32,
pub ContextType: D3D11_CONTEXT_TYPE,
}
impl Default for D3D11_QUERY_DESC1 {
fn default() -> Self {
unsafe { core::mem::zeroed() }
}
}
pub const D3D11_QUERY_EVENT: D3D11_QUERY = D3D11_QUERY(0i32);
#[repr(transparent)]
#[derive(Clone, Copy, Debug, Default, Eq, PartialEq)]
pub struct D3D11_QUERY_MISC_FLAG(pub i32);
pub const D3D11_QUERY_MISC_PREDICATEHINT: D3D11_QUERY_MISC_FLAG = D3D11_QUERY_MISC_FLAG(1i32);
pub const D3D11_QUERY_OCCLUSION: D3D11_QUERY = D3D11_QUERY(1i32);
pub const D3D11_QUERY_OCCLUSION_PREDICATE: D3D11_QUERY = D3D11_QUERY(5i32);
pub const D3D11_QUERY_PIPELINE_STATISTICS: D3D11_QUERY = D3D11_QUERY(4i32);
pub const D3D11_QUERY_SO_OVERFLOW_PREDICATE: D3D11_QUERY = D3D11_QUERY(7i32);
pub const D3D11_QUERY_SO_OVERFLOW_PREDICATE_STREAM0: D3D11_QUERY = D3D11_QUERY(9i32);
pub const D3D11_QUERY_SO_OVERFLOW_PREDICATE_STREAM1: D3D11_QUERY = D3D11_QUERY(11i32);
pub const D3D11_QUERY_SO_OVERFLOW_PREDICATE_STREAM2: D3D11_QUERY = D3D11_QUERY(13i32);
pub const D3D11_QUERY_SO_OVERFLOW_PREDICATE_STREAM3: D3D11_QUERY = D3D11_QUERY(15i32);
pub const D3D11_QUERY_SO_STATISTICS: D3D11_QUERY = D3D11_QUERY(6i32);
pub const D3D11_QUERY_SO_STATISTICS_STREAM0: D3D11_QUERY = D3D11_QUERY(8i32);
pub const D3D11_QUERY_SO_STATISTICS_STREAM1: D3D11_QUERY = D3D11_QUERY(10i32);
pub const D3D11_QUERY_SO_STATISTICS_STREAM2: D3D11_QUERY = D3D11_QUERY(12i32);
pub const D3D11_QUERY_SO_STATISTICS_STREAM3: D3D11_QUERY = D3D11_QUERY(14i32);
pub const D3D11_QUERY_TIMESTAMP: D3D11_QUERY = D3D11_QUERY(2i32);
pub const D3D11_QUERY_TIMESTAMP_DISJOINT: D3D11_QUERY = D3D11_QUERY(3i32);
#[repr(transparent)]
#[derive(Clone, Copy, Debug, Default, Eq, PartialEq)]
pub struct D3D11_RAISE_FLAG(pub i32);
pub const D3D11_RAISE_FLAG_DRIVER_INTERNAL_ERROR: D3D11_RAISE_FLAG = D3D11_RAISE_FLAG(1i32);
#[repr(C)]
#[derive(Clone, Copy, Debug, PartialEq)]
pub struct D3D11_RASTERIZER_DESC {
pub FillMode: D3D11_FILL_MODE,
pub CullMode: D3D11_CULL_MODE,
pub FrontCounterClockwise: crate::Foundation::BOOL,
pub DepthBias: i32,
pub DepthBiasClamp: f32,
pub SlopeScaledDepthBias: f32,
pub DepthClipEnable: crate::Foundation::BOOL,
pub ScissorEnable: crate::Foundation::BOOL,
pub MultisampleEnable: crate::Foundation::BOOL,
pub AntialiasedLineEnable: crate::Foundation::BOOL,
}
impl Default for D3D11_RASTERIZER_DESC {
fn default() -> Self {
unsafe { core::mem::zeroed() }
}
}
#[repr(C)]
#[derive(Clone, Copy, Debug, PartialEq)]
pub struct D3D11_RASTERIZER_DESC1 {
pub FillMode: D3D11_FILL_MODE,
pub CullMode: D3D11_CULL_MODE,
pub FrontCounterClockwise: crate::Foundation::BOOL,
pub DepthBias: i32,
pub DepthBiasClamp: f32,
pub SlopeScaledDepthBias: f32,
pub DepthClipEnable: crate::Foundation::BOOL,
pub ScissorEnable: crate::Foundation::BOOL,
pub MultisampleEnable: crate::Foundation::BOOL,
pub AntialiasedLineEnable: crate::Foundation::BOOL,
pub ForcedSampleCount: u32,
}
impl Default for D3D11_RASTERIZER_DESC1 {
fn default() -> Self {
unsafe { core::mem::zeroed() }
}
}
#[repr(C)]
#[derive(Clone, Copy, Debug, PartialEq)]
pub struct D3D11_RASTERIZER_DESC2 {
pub FillMode: D3D11_FILL_MODE,
pub CullMode: D3D11_CULL_MODE,
pub FrontCounterClockwise: crate::Foundation::BOOL,
pub DepthBias: i32,
pub DepthBiasClamp: f32,
pub SlopeScaledDepthBias: f32,
pub DepthClipEnable: crate::Foundation::BOOL,
pub ScissorEnable: crate::Foundation::BOOL,
pub MultisampleEnable: crate::Foundation::BOOL,
pub AntialiasedLineEnable: crate::Foundation::BOOL,
pub ForcedSampleCount: u32,
pub ConservativeRaster: D3D11_CONSERVATIVE_RASTERIZATION_MODE,
}
impl Default for D3D11_RASTERIZER_DESC2 {
fn default() -> Self {
unsafe { core::mem::zeroed() }
}
}
pub const D3D11_RAW_UAV_SRV_BYTE_ALIGNMENT: u32 = 16u32;
pub const D3D11_REGKEY_PATH: crate::core_supplemental::PCWSTR =
crate::core_supplemental::w!("Software\\Microsoft\\Direct3D");
#[repr(C)]
#[derive(Clone, Copy, Debug, PartialEq)]
pub struct D3D11_RENDER_TARGET_BLEND_DESC {
pub BlendEnable: crate::Foundation::BOOL,
pub SrcBlend: D3D11_BLEND,
pub DestBlend: D3D11_BLEND,
pub BlendOp: D3D11_BLEND_OP,
pub SrcBlendAlpha: D3D11_BLEND,
pub DestBlendAlpha: D3D11_BLEND,
pub BlendOpAlpha: D3D11_BLEND_OP,
pub RenderTargetWriteMask: u8,
}
impl Default for D3D11_RENDER_TARGET_BLEND_DESC {
fn default() -> Self {
unsafe { core::mem::zeroed() }
}
}
#[repr(C)]
#[derive(Clone, Copy, Debug, PartialEq)]
pub struct D3D11_RENDER_TARGET_BLEND_DESC1 {
pub BlendEnable: crate::Foundation::BOOL,
pub LogicOpEnable: crate::Foundation::BOOL,
pub SrcBlend: D3D11_BLEND,
pub DestBlend: D3D11_BLEND,
pub BlendOp: D3D11_BLEND_OP,
pub SrcBlendAlpha: D3D11_BLEND,
pub DestBlendAlpha: D3D11_BLEND,
pub BlendOpAlpha: D3D11_BLEND_OP,
pub LogicOp: D3D11_LOGIC_OP,
pub RenderTargetWriteMask: u8,
}
impl Default for D3D11_RENDER_TARGET_BLEND_DESC1 {
fn default() -> Self {
unsafe { core::mem::zeroed() }
}
}
#[repr(C)]
#[cfg(feature = "Win32_Graphics_Dxgi_Common")]
#[derive(Clone, Copy)]
pub struct D3D11_RENDER_TARGET_VIEW_DESC {
pub Format: crate::Dxgi::Common::DXGI_FORMAT,
pub ViewDimension: D3D11_RTV_DIMENSION,
pub Anonymous: D3D11_RENDER_TARGET_VIEW_DESC_0,
}
#[cfg(feature = "Win32_Graphics_Dxgi_Common")]
impl Default for D3D11_RENDER_TARGET_VIEW_DESC {
fn default() -> Self {
unsafe { core::mem::zeroed() }
}
}
#[repr(C)]
#[cfg(feature = "Win32_Graphics_Dxgi_Common")]
#[derive(Clone, Copy)]
pub union D3D11_RENDER_TARGET_VIEW_DESC_0 {
pub Buffer: D3D11_BUFFER_RTV,
pub Texture1D: D3D11_TEX1D_RTV,
pub Texture1DArray: D3D11_TEX1D_ARRAY_RTV,
pub Texture2D: D3D11_TEX2D_RTV,
pub Texture2DArray: D3D11_TEX2D_ARRAY_RTV,
pub Texture2DMS: D3D11_TEX2DMS_RTV,
pub Texture2DMSArray: D3D11_TEX2DMS_ARRAY_RTV,
pub Texture3D: D3D11_TEX3D_RTV,
}
#[cfg(feature = "Win32_Graphics_Dxgi_Common")]
impl Default for D3D11_RENDER_TARGET_VIEW_DESC_0 {
fn default() -> Self {
unsafe { core::mem::zeroed() }
}
}
#[repr(C)]
#[cfg(feature = "Win32_Graphics_Dxgi_Common")]
#[derive(Clone, Copy)]
pub struct D3D11_RENDER_TARGET_VIEW_DESC1 {
pub Format: crate::Dxgi::Common::DXGI_FORMAT,
pub ViewDimension: D3D11_RTV_DIMENSION,
pub Anonymous: D3D11_RENDER_TARGET_VIEW_DESC1_0,
}
#[cfg(feature = "Win32_Graphics_Dxgi_Common")]
impl Default for D3D11_RENDER_TARGET_VIEW_DESC1 {
fn default() -> Self {
unsafe { core::mem::zeroed() }
}
}
#[repr(C)]
#[cfg(feature = "Win32_Graphics_Dxgi_Common")]
#[derive(Clone, Copy)]
pub union D3D11_RENDER_TARGET_VIEW_DESC1_0 {
pub Buffer: D3D11_BUFFER_RTV,
pub Texture1D: D3D11_TEX1D_RTV,
pub Texture1DArray: D3D11_TEX1D_ARRAY_RTV,
pub Texture2D: D3D11_TEX2D_RTV1,
pub Texture2DArray: D3D11_TEX2D_ARRAY_RTV1,
pub Texture2DMS: D3D11_TEX2DMS_RTV,
pub Texture2DMSArray: D3D11_TEX2DMS_ARRAY_RTV,
pub Texture3D: D3D11_TEX3D_RTV,
}
#[cfg(feature = "Win32_Graphics_Dxgi_Common")]
impl Default for D3D11_RENDER_TARGET_VIEW_DESC1_0 {
fn default() -> Self {
unsafe { core::mem::zeroed() }
}
}
pub const D3D11_REQ_BLEND_OBJECT_COUNT_PER_DEVICE: u32 = 4096u32;
pub const D3D11_REQ_BUFFER_RESOURCE_TEXEL_COUNT_2_TO_EXP: u32 = 27u32;
pub const D3D11_REQ_CONSTANT_BUFFER_ELEMENT_COUNT: u32 = 4096u32;
pub const D3D11_REQ_DEPTH_STENCIL_OBJECT_COUNT_PER_DEVICE: u32 = 4096u32;
pub const D3D11_REQ_DRAWINDEXED_INDEX_COUNT_2_TO_EXP: u32 = 32u32;
pub const D3D11_REQ_DRAW_VERTEX_COUNT_2_TO_EXP: u32 = 32u32;
pub const D3D11_REQ_FILTERING_HW_ADDRESSABLE_RESOURCE_DIMENSION: u32 = 16384u32;
pub const D3D11_REQ_GS_INVOCATION_32BIT_OUTPUT_COMPONENT_LIMIT: u32 = 1024u32;
pub const D3D11_REQ_IMMEDIATE_CONSTANT_BUFFER_ELEMENT_COUNT: u32 = 4096u32;
pub const D3D11_REQ_MAXANISOTROPY: u32 = 16u32;
pub const D3D11_REQ_MIP_LEVELS: u32 = 15u32;
pub const D3D11_REQ_MULTI_ELEMENT_STRUCTURE_SIZE_IN_BYTES: u32 = 2048u32;
pub const D3D11_REQ_RASTERIZER_OBJECT_COUNT_PER_DEVICE: u32 = 4096u32;
pub const D3D11_REQ_RENDER_TO_BUFFER_WINDOW_WIDTH: u32 = 16384u32;
pub const D3D11_REQ_RESOURCE_SIZE_IN_MEGABYTES_EXPRESSION_A_TERM: u32 = 128u32;
pub const D3D11_REQ_RESOURCE_SIZE_IN_MEGABYTES_EXPRESSION_B_TERM: f32 = 0.25f32;
pub const D3D11_REQ_RESOURCE_SIZE_IN_MEGABYTES_EXPRESSION_C_TERM: u32 = 2048u32;
pub const D3D11_REQ_RESOURCE_VIEW_COUNT_PER_DEVICE_2_TO_EXP: u32 = 20u32;
pub const D3D11_REQ_SAMPLER_OBJECT_COUNT_PER_DEVICE: u32 = 4096u32;
pub const D3D11_REQ_TEXTURE1D_ARRAY_AXIS_DIMENSION: u32 = 2048u32;
pub const D3D11_REQ_TEXTURE1D_U_DIMENSION: u32 = 16384u32;
pub const D3D11_REQ_TEXTURE2D_ARRAY_AXIS_DIMENSION: u32 = 2048u32;
pub const D3D11_REQ_TEXTURE2D_U_OR_V_DIMENSION: u32 = 16384u32;
pub const D3D11_REQ_TEXTURE3D_U_V_OR_W_DIMENSION: u32 = 2048u32;
pub const D3D11_REQ_TEXTURECUBE_DIMENSION: u32 = 16384u32;
pub const D3D11_RESINFO_INSTRUCTION_MISSING_COMPONENT_RETVAL: u32 = 0u32;
#[repr(transparent)]
#[derive(Clone, Copy, Debug, Default, Eq, PartialEq)]
pub struct D3D11_RESOURCE_DIMENSION(pub i32);
pub const D3D11_RESOURCE_DIMENSION_BUFFER: D3D11_RESOURCE_DIMENSION =
D3D11_RESOURCE_DIMENSION(1i32);
pub const D3D11_RESOURCE_DIMENSION_TEXTURE1D: D3D11_RESOURCE_DIMENSION =
D3D11_RESOURCE_DIMENSION(2i32);
pub const D3D11_RESOURCE_DIMENSION_TEXTURE2D: D3D11_RESOURCE_DIMENSION =
D3D11_RESOURCE_DIMENSION(3i32);
pub const D3D11_RESOURCE_DIMENSION_TEXTURE3D: D3D11_RESOURCE_DIMENSION =
D3D11_RESOURCE_DIMENSION(4i32);
pub const D3D11_RESOURCE_DIMENSION_UNKNOWN: D3D11_RESOURCE_DIMENSION =
D3D11_RESOURCE_DIMENSION(0i32);
pub const D3D11_RESOURCE_MISC_BUFFER_ALLOW_RAW_VIEWS: D3D11_RESOURCE_MISC_FLAG =
D3D11_RESOURCE_MISC_FLAG(32i32);
pub const D3D11_RESOURCE_MISC_BUFFER_STRUCTURED: D3D11_RESOURCE_MISC_FLAG =
D3D11_RESOURCE_MISC_FLAG(64i32);
pub const D3D11_RESOURCE_MISC_DRAWINDIRECT_ARGS: D3D11_RESOURCE_MISC_FLAG =
D3D11_RESOURCE_MISC_FLAG(16i32);
#[repr(transparent)]
#[derive(Clone, Copy, Debug, Default, Eq, PartialEq)]
pub struct D3D11_RESOURCE_MISC_FLAG(pub i32);
impl D3D11_RESOURCE_MISC_FLAG {
pub const fn contains(&self, other: Self) -> bool {
self.0 & other.0 == other.0
}
}
impl core::ops::BitOr for D3D11_RESOURCE_MISC_FLAG {
type Output = Self;
fn bitor(self, other: Self) -> Self {
Self(self.0 | other.0)
}
}
impl core::ops::BitAnd for D3D11_RESOURCE_MISC_FLAG {
type Output = Self;
fn bitand(self, other: Self) -> Self {
Self(self.0 & other.0)
}
}
impl core::ops::BitOrAssign for D3D11_RESOURCE_MISC_FLAG {
fn bitor_assign(&mut self, other: Self) {
self.0.bitor_assign(other.0)
}
}
impl core::ops::BitAndAssign for D3D11_RESOURCE_MISC_FLAG {
fn bitand_assign(&mut self, other: Self) {
self.0.bitand_assign(other.0)
}
}
impl core::ops::Not for D3D11_RESOURCE_MISC_FLAG {
type Output = Self;
fn not(self) -> Self {
Self(self.0.not())
}
}
pub const D3D11_RESOURCE_MISC_GDI_COMPATIBLE: D3D11_RESOURCE_MISC_FLAG =
D3D11_RESOURCE_MISC_FLAG(512i32);
pub const D3D11_RESOURCE_MISC_GENERATE_MIPS: D3D11_RESOURCE_MISC_FLAG =
D3D11_RESOURCE_MISC_FLAG(1i32);
pub const D3D11_RESOURCE_MISC_GUARDED: D3D11_RESOURCE_MISC_FLAG =
D3D11_RESOURCE_MISC_FLAG(32768i32);
pub const D3D11_RESOURCE_MISC_HW_PROTECTED: D3D11_RESOURCE_MISC_FLAG =
D3D11_RESOURCE_MISC_FLAG(524288i32);
pub const D3D11_RESOURCE_MISC_RESOURCE_CLAMP: D3D11_RESOURCE_MISC_FLAG =
D3D11_RESOURCE_MISC_FLAG(128i32);
pub const D3D11_RESOURCE_MISC_RESTRICTED_CONTENT: D3D11_RESOURCE_MISC_FLAG =
D3D11_RESOURCE_MISC_FLAG(4096i32);
pub const D3D11_RESOURCE_MISC_RESTRICT_SHARED_RESOURCE: D3D11_RESOURCE_MISC_FLAG =
D3D11_RESOURCE_MISC_FLAG(8192i32);
pub const D3D11_RESOURCE_MISC_RESTRICT_SHARED_RESOURCE_DRIVER: D3D11_RESOURCE_MISC_FLAG =
D3D11_RESOURCE_MISC_FLAG(16384i32);
pub const D3D11_RESOURCE_MISC_SHARED: D3D11_RESOURCE_MISC_FLAG = D3D11_RESOURCE_MISC_FLAG(2i32);
pub const D3D11_RESOURCE_MISC_SHARED_DISPLAYABLE: D3D11_RESOURCE_MISC_FLAG =
D3D11_RESOURCE_MISC_FLAG(1048576i32);
pub const D3D11_RESOURCE_MISC_SHARED_EXCLUSIVE_WRITER: D3D11_RESOURCE_MISC_FLAG =
D3D11_RESOURCE_MISC_FLAG(2097152i32);
pub const D3D11_RESOURCE_MISC_SHARED_KEYEDMUTEX: D3D11_RESOURCE_MISC_FLAG =
D3D11_RESOURCE_MISC_FLAG(256i32);
pub const D3D11_RESOURCE_MISC_SHARED_NTHANDLE: D3D11_RESOURCE_MISC_FLAG =
D3D11_RESOURCE_MISC_FLAG(2048i32);
pub const D3D11_RESOURCE_MISC_TEXTURECUBE: D3D11_RESOURCE_MISC_FLAG =
D3D11_RESOURCE_MISC_FLAG(4i32);
pub const D3D11_RESOURCE_MISC_TILED: D3D11_RESOURCE_MISC_FLAG = D3D11_RESOURCE_MISC_FLAG(262144i32);
pub const D3D11_RESOURCE_MISC_TILE_POOL: D3D11_RESOURCE_MISC_FLAG =
D3D11_RESOURCE_MISC_FLAG(131072i32);
pub const D3D11_RLDO_DETAIL: D3D11_RLDO_FLAGS = D3D11_RLDO_FLAGS(2i32);
#[repr(transparent)]
#[derive(Clone, Copy, Debug, Default, Eq, PartialEq)]
pub struct D3D11_RLDO_FLAGS(pub i32);
impl D3D11_RLDO_FLAGS {
pub const fn contains(&self, other: Self) -> bool {
self.0 & other.0 == other.0
}
}
impl core::ops::BitOr for D3D11_RLDO_FLAGS {
type Output = Self;
fn bitor(self, other: Self) -> Self {
Self(self.0 | other.0)
}
}
impl core::ops::BitAnd for D3D11_RLDO_FLAGS {
type Output = Self;
fn bitand(self, other: Self) -> Self {
Self(self.0 & other.0)
}
}
impl core::ops::BitOrAssign for D3D11_RLDO_FLAGS {
fn bitor_assign(&mut self, other: Self) {
self.0.bitor_assign(other.0)
}
}
impl core::ops::BitAndAssign for D3D11_RLDO_FLAGS {
fn bitand_assign(&mut self, other: Self) {
self.0.bitand_assign(other.0)
}
}
impl core::ops::Not for D3D11_RLDO_FLAGS {
type Output = Self;
fn not(self) -> Self {
Self(self.0.not())
}
}
pub const D3D11_RLDO_IGNORE_INTERNAL: D3D11_RLDO_FLAGS = D3D11_RLDO_FLAGS(4i32);
pub const D3D11_RLDO_SUMMARY: D3D11_RLDO_FLAGS = D3D11_RLDO_FLAGS(1i32);
#[repr(transparent)]
#[derive(Clone, Copy, Debug, Default, Eq, PartialEq)]
pub struct D3D11_RTV_DIMENSION(pub i32);
pub const D3D11_RTV_DIMENSION_BUFFER: D3D11_RTV_DIMENSION = D3D11_RTV_DIMENSION(1i32);
pub const D3D11_RTV_DIMENSION_TEXTURE1D: D3D11_RTV_DIMENSION = D3D11_RTV_DIMENSION(2i32);
pub const D3D11_RTV_DIMENSION_TEXTURE1DARRAY: D3D11_RTV_DIMENSION = D3D11_RTV_DIMENSION(3i32);
pub const D3D11_RTV_DIMENSION_TEXTURE2D: D3D11_RTV_DIMENSION = D3D11_RTV_DIMENSION(4i32);
pub const D3D11_RTV_DIMENSION_TEXTURE2DARRAY: D3D11_RTV_DIMENSION = D3D11_RTV_DIMENSION(5i32);
pub const D3D11_RTV_DIMENSION_TEXTURE2DMS: D3D11_RTV_DIMENSION = D3D11_RTV_DIMENSION(6i32);
pub const D3D11_RTV_DIMENSION_TEXTURE2DMSARRAY: D3D11_RTV_DIMENSION = D3D11_RTV_DIMENSION(7i32);
pub const D3D11_RTV_DIMENSION_TEXTURE3D: D3D11_RTV_DIMENSION = D3D11_RTV_DIMENSION(8i32);
pub const D3D11_RTV_DIMENSION_UNKNOWN: D3D11_RTV_DIMENSION = D3D11_RTV_DIMENSION(0i32);
#[repr(C)]
#[derive(Clone, Copy, Debug, PartialEq)]
pub struct D3D11_SAMPLER_DESC {
pub Filter: D3D11_FILTER,
pub AddressU: D3D11_TEXTURE_ADDRESS_MODE,
pub AddressV: D3D11_TEXTURE_ADDRESS_MODE,
pub AddressW: D3D11_TEXTURE_ADDRESS_MODE,
pub MipLODBias: f32,
pub MaxAnisotropy: u32,
pub ComparisonFunc: D3D11_COMPARISON_FUNC,
pub BorderColor: [f32; 4],
pub MinLOD: f32,
pub MaxLOD: f32,
}
impl Default for D3D11_SAMPLER_DESC {
fn default() -> Self {
unsafe { core::mem::zeroed() }
}
}
pub const D3D11_SDK_LAYERS_VERSION: u32 = 1u32;
pub const D3D11_SDK_VERSION: u32 = 7u32;
#[repr(C)]
#[cfg(feature = "Win32_Graphics_Direct3D")]
#[derive(Clone, Copy, Debug, PartialEq)]
pub struct D3D11_SHADER_BUFFER_DESC {
pub Name: crate::core_supplemental::PCSTR,
pub Type: super::Direct3D::D3D_CBUFFER_TYPE,
pub Variables: u32,
pub Size: u32,
pub uFlags: u32,
}
#[cfg(feature = "Win32_Graphics_Direct3D")]
impl Default for D3D11_SHADER_BUFFER_DESC {
fn default() -> Self {
unsafe { core::mem::zeroed() }
}
}
pub const D3D11_SHADER_CACHE_SUPPORT_AUTOMATIC_DISK_CACHE: D3D11_SHADER_CACHE_SUPPORT_FLAGS =
D3D11_SHADER_CACHE_SUPPORT_FLAGS(2i32);
pub const D3D11_SHADER_CACHE_SUPPORT_AUTOMATIC_INPROC_CACHE: D3D11_SHADER_CACHE_SUPPORT_FLAGS =
D3D11_SHADER_CACHE_SUPPORT_FLAGS(1i32);
#[repr(transparent)]
#[derive(Clone, Copy, Debug, Default, Eq, PartialEq)]
pub struct D3D11_SHADER_CACHE_SUPPORT_FLAGS(pub i32);
pub const D3D11_SHADER_CACHE_SUPPORT_NONE: D3D11_SHADER_CACHE_SUPPORT_FLAGS =
D3D11_SHADER_CACHE_SUPPORT_FLAGS(0i32);
#[repr(C)]
#[cfg(feature = "Win32_Graphics_Direct3D")]
#[derive(Clone, Copy, Debug, PartialEq)]
pub struct D3D11_SHADER_DESC {
pub Version: u32,
pub Creator: crate::core_supplemental::PCSTR,
pub Flags: u32,
pub ConstantBuffers: u32,
pub BoundResources: u32,
pub InputParameters: u32,
pub OutputParameters: u32,
pub InstructionCount: u32,
pub TempRegisterCount: u32,
pub TempArrayCount: u32,
pub DefCount: u32,
pub DclCount: u32,
pub TextureNormalInstructions: u32,
pub TextureLoadInstructions: u32,
pub TextureCompInstructions: u32,
pub TextureBiasInstructions: u32,
pub TextureGradientInstructions: u32,
pub FloatInstructionCount: u32,
pub IntInstructionCount: u32,
pub UintInstructionCount: u32,
pub StaticFlowControlCount: u32,
pub DynamicFlowControlCount: u32,
pub MacroInstructionCount: u32,
pub ArrayInstructionCount: u32,
pub CutInstructionCount: u32,
pub EmitInstructionCount: u32,
pub GSOutputTopology: super::Direct3D::D3D_PRIMITIVE_TOPOLOGY,
pub GSMaxOutputVertexCount: u32,
pub InputPrimitive: super::Direct3D::D3D_PRIMITIVE,
pub PatchConstantParameters: u32,
pub cGSInstanceCount: u32,
pub cControlPoints: u32,
pub HSOutputPrimitive: super::Direct3D::D3D_TESSELLATOR_OUTPUT_PRIMITIVE,
pub HSPartitioning: super::Direct3D::D3D_TESSELLATOR_PARTITIONING,
pub TessellatorDomain: super::Direct3D::D3D_TESSELLATOR_DOMAIN,
pub cBarrierInstructions: u32,
pub cInterlockedInstructions: u32,
pub cTextureStoreInstructions: u32,
}
#[cfg(feature = "Win32_Graphics_Direct3D")]
impl Default for D3D11_SHADER_DESC {
fn default() -> Self {
unsafe { core::mem::zeroed() }
}
}
#[repr(C)]
#[cfg(feature = "Win32_Graphics_Direct3D")]
#[derive(Clone, Copy, Debug, PartialEq)]
pub struct D3D11_SHADER_INPUT_BIND_DESC {
pub Name: crate::core_supplemental::PCSTR,
pub Type: super::Direct3D::D3D_SHADER_INPUT_TYPE,
pub BindPoint: u32,
pub BindCount: u32,
pub uFlags: u32,
pub ReturnType: super::Direct3D::D3D_RESOURCE_RETURN_TYPE,
pub Dimension: super::Direct3D::D3D_SRV_DIMENSION,
pub NumSamples: u32,
}
#[cfg(feature = "Win32_Graphics_Direct3D")]
impl Default for D3D11_SHADER_INPUT_BIND_DESC {
fn default() -> Self {
unsafe { core::mem::zeroed() }
}
}
pub const D3D11_SHADER_MAJOR_VERSION: u32 = 5u32;
pub const D3D11_SHADER_MAX_INSTANCES: u32 = 65535u32;
pub const D3D11_SHADER_MAX_INTERFACES: u32 = 253u32;
pub const D3D11_SHADER_MAX_INTERFACE_CALL_SITES: u32 = 4096u32;
pub const D3D11_SHADER_MAX_TYPES: u32 = 65535u32;
pub const D3D11_SHADER_MINOR_VERSION: u32 = 0u32;
pub const D3D11_SHADER_MIN_PRECISION_10_BIT: D3D11_SHADER_MIN_PRECISION_SUPPORT =
D3D11_SHADER_MIN_PRECISION_SUPPORT(1i32);
pub const D3D11_SHADER_MIN_PRECISION_16_BIT: D3D11_SHADER_MIN_PRECISION_SUPPORT =
D3D11_SHADER_MIN_PRECISION_SUPPORT(2i32);
#[repr(transparent)]
#[derive(Clone, Copy, Debug, Default, Eq, PartialEq)]
pub struct D3D11_SHADER_MIN_PRECISION_SUPPORT(pub i32);
#[repr(C)]
#[cfg(all(
feature = "Win32_Graphics_Direct3D",
feature = "Win32_Graphics_Dxgi_Common"
))]
#[derive(Clone, Copy)]
pub struct D3D11_SHADER_RESOURCE_VIEW_DESC {
pub Format: crate::Dxgi::Common::DXGI_FORMAT,
pub ViewDimension: super::Direct3D::D3D_SRV_DIMENSION,
pub Anonymous: D3D11_SHADER_RESOURCE_VIEW_DESC_0,
}
#[cfg(all(
feature = "Win32_Graphics_Direct3D",
feature = "Win32_Graphics_Dxgi_Common"
))]
impl Default for D3D11_SHADER_RESOURCE_VIEW_DESC {
fn default() -> Self {
unsafe { core::mem::zeroed() }
}
}
#[repr(C)]
#[cfg(all(
feature = "Win32_Graphics_Direct3D",
feature = "Win32_Graphics_Dxgi_Common"
))]
#[derive(Clone, Copy)]
pub union D3D11_SHADER_RESOURCE_VIEW_DESC_0 {
pub Buffer: D3D11_BUFFER_SRV,
pub Texture1D: D3D11_TEX1D_SRV,
pub Texture1DArray: D3D11_TEX1D_ARRAY_SRV,
pub Texture2D: D3D11_TEX2D_SRV,
pub Texture2DArray: D3D11_TEX2D_ARRAY_SRV,
pub Texture2DMS: D3D11_TEX2DMS_SRV,
pub Texture2DMSArray: D3D11_TEX2DMS_ARRAY_SRV,
pub Texture3D: D3D11_TEX3D_SRV,
pub TextureCube: D3D11_TEXCUBE_SRV,
pub TextureCubeArray: D3D11_TEXCUBE_ARRAY_SRV,
pub BufferEx: D3D11_BUFFEREX_SRV,
}
#[cfg(all(
feature = "Win32_Graphics_Direct3D",
feature = "Win32_Graphics_Dxgi_Common"
))]
impl Default for D3D11_SHADER_RESOURCE_VIEW_DESC_0 {
fn default() -> Self {
unsafe { core::mem::zeroed() }
}
}
#[repr(C)]
#[cfg(all(
feature = "Win32_Graphics_Direct3D",
feature = "Win32_Graphics_Dxgi_Common"
))]
#[derive(Clone, Copy)]
pub struct D3D11_SHADER_RESOURCE_VIEW_DESC1 {
pub Format: crate::Dxgi::Common::DXGI_FORMAT,
pub ViewDimension: super::Direct3D::D3D_SRV_DIMENSION,
pub Anonymous: D3D11_SHADER_RESOURCE_VIEW_DESC1_0,
}
#[cfg(all(
feature = "Win32_Graphics_Direct3D",
feature = "Win32_Graphics_Dxgi_Common"
))]
impl Default for D3D11_SHADER_RESOURCE_VIEW_DESC1 {
fn default() -> Self {
unsafe { core::mem::zeroed() }
}
}
#[repr(C)]
#[cfg(all(
feature = "Win32_Graphics_Direct3D",
feature = "Win32_Graphics_Dxgi_Common"
))]
#[derive(Clone, Copy)]
pub union D3D11_SHADER_RESOURCE_VIEW_DESC1_0 {
pub Buffer: D3D11_BUFFER_SRV,
pub Texture1D: D3D11_TEX1D_SRV,
pub Texture1DArray: D3D11_TEX1D_ARRAY_SRV,
pub Texture2D: D3D11_TEX2D_SRV1,
pub Texture2DArray: D3D11_TEX2D_ARRAY_SRV1,
pub Texture2DMS: D3D11_TEX2DMS_SRV,
pub Texture2DMSArray: D3D11_TEX2DMS_ARRAY_SRV,
pub Texture3D: D3D11_TEX3D_SRV,
pub TextureCube: D3D11_TEXCUBE_SRV,
pub TextureCubeArray: D3D11_TEXCUBE_ARRAY_SRV,
pub BufferEx: D3D11_BUFFEREX_SRV,
}
#[cfg(all(
feature = "Win32_Graphics_Direct3D",
feature = "Win32_Graphics_Dxgi_Common"
))]
impl Default for D3D11_SHADER_RESOURCE_VIEW_DESC1_0 {
fn default() -> Self {
unsafe { core::mem::zeroed() }
}
}
#[repr(C)]
#[derive(Clone, Copy)]
pub struct D3D11_SHADER_TRACE_DESC {
pub Type: D3D11_SHADER_TYPE,
pub Flags: u32,
pub Anonymous: D3D11_SHADER_TRACE_DESC_0,
}
impl Default for D3D11_SHADER_TRACE_DESC {
fn default() -> Self {
unsafe { core::mem::zeroed() }
}
}
#[repr(C)]
#[derive(Clone, Copy)]
pub union D3D11_SHADER_TRACE_DESC_0 {
pub VertexShaderTraceDesc: D3D11_VERTEX_SHADER_TRACE_DESC,
pub HullShaderTraceDesc: D3D11_HULL_SHADER_TRACE_DESC,
pub DomainShaderTraceDesc: D3D11_DOMAIN_SHADER_TRACE_DESC,
pub GeometryShaderTraceDesc: D3D11_GEOMETRY_SHADER_TRACE_DESC,
pub PixelShaderTraceDesc: D3D11_PIXEL_SHADER_TRACE_DESC,
pub ComputeShaderTraceDesc: D3D11_COMPUTE_SHADER_TRACE_DESC,
}
impl Default for D3D11_SHADER_TRACE_DESC_0 {
fn default() -> Self {
unsafe { core::mem::zeroed() }
}
}
pub const D3D11_SHADER_TRACE_FLAG_RECORD_REGISTER_READS: u32 = 2u32;
pub const D3D11_SHADER_TRACE_FLAG_RECORD_REGISTER_WRITES: u32 = 1u32;
#[repr(transparent)]
#[derive(Clone, Copy, Debug, Default, Eq, PartialEq)]
pub struct D3D11_SHADER_TRACKING_OPTIONS(pub i32);
pub const D3D11_SHADER_TRACKING_OPTION_ALLOW_SAME: D3D11_SHADER_TRACKING_OPTIONS =
D3D11_SHADER_TRACKING_OPTIONS(16i32);
pub const D3D11_SHADER_TRACKING_OPTION_ALL_HAZARDS: D3D11_SHADER_TRACKING_OPTIONS =
D3D11_SHADER_TRACKING_OPTIONS(1006i32);
pub const D3D11_SHADER_TRACKING_OPTION_ALL_HAZARDS_ALLOWING_SAME: D3D11_SHADER_TRACKING_OPTIONS =
D3D11_SHADER_TRACKING_OPTIONS(1022i32);
pub const D3D11_SHADER_TRACKING_OPTION_ALL_OPTIONS: D3D11_SHADER_TRACKING_OPTIONS =
D3D11_SHADER_TRACKING_OPTIONS(1023i32);
pub const D3D11_SHADER_TRACKING_OPTION_IGNORE: D3D11_SHADER_TRACKING_OPTIONS =
D3D11_SHADER_TRACKING_OPTIONS(0i32);
pub const D3D11_SHADER_TRACKING_OPTION_TRACK_ATOMIC_CONSISTENCY: D3D11_SHADER_TRACKING_OPTIONS =
D3D11_SHADER_TRACKING_OPTIONS(32i32);
pub const D3D11_SHADER_TRACKING_OPTION_TRACK_ATOMIC_CONSISTENCY_ACROSS_THREADGROUPS:
D3D11_SHADER_TRACKING_OPTIONS = D3D11_SHADER_TRACKING_OPTIONS(512i32);
pub const D3D11_SHADER_TRACKING_OPTION_TRACK_RAW: D3D11_SHADER_TRACKING_OPTIONS =
D3D11_SHADER_TRACKING_OPTIONS(2i32);
pub const D3D11_SHADER_TRACKING_OPTION_TRACK_RAW_ACROSS_THREADGROUPS:
D3D11_SHADER_TRACKING_OPTIONS = D3D11_SHADER_TRACKING_OPTIONS(64i32);
pub const D3D11_SHADER_TRACKING_OPTION_TRACK_UNINITIALIZED: D3D11_SHADER_TRACKING_OPTIONS =
D3D11_SHADER_TRACKING_OPTIONS(1i32);
pub const D3D11_SHADER_TRACKING_OPTION_TRACK_WAR: D3D11_SHADER_TRACKING_OPTIONS =
D3D11_SHADER_TRACKING_OPTIONS(4i32);
pub const D3D11_SHADER_TRACKING_OPTION_TRACK_WAR_ACROSS_THREADGROUPS:
D3D11_SHADER_TRACKING_OPTIONS = D3D11_SHADER_TRACKING_OPTIONS(128i32);
pub const D3D11_SHADER_TRACKING_OPTION_TRACK_WAW: D3D11_SHADER_TRACKING_OPTIONS =
D3D11_SHADER_TRACKING_OPTIONS(8i32);
pub const D3D11_SHADER_TRACKING_OPTION_TRACK_WAW_ACROSS_THREADGROUPS:
D3D11_SHADER_TRACKING_OPTIONS = D3D11_SHADER_TRACKING_OPTIONS(256i32);
pub const D3D11_SHADER_TRACKING_OPTION_UAV_SPECIFIC_FLAGS: D3D11_SHADER_TRACKING_OPTIONS =
D3D11_SHADER_TRACKING_OPTIONS(960i32);
#[repr(transparent)]
#[derive(Clone, Copy, Debug, Default, Eq, PartialEq)]
pub struct D3D11_SHADER_TRACKING_RESOURCE_TYPE(pub i32);
pub const D3D11_SHADER_TRACKING_RESOURCE_TYPE_ALL: D3D11_SHADER_TRACKING_RESOURCE_TYPE =
D3D11_SHADER_TRACKING_RESOURCE_TYPE(7i32);
pub const D3D11_SHADER_TRACKING_RESOURCE_TYPE_ALL_DEVICEMEMORY:
D3D11_SHADER_TRACKING_RESOURCE_TYPE = D3D11_SHADER_TRACKING_RESOURCE_TYPE(3i32);
pub const D3D11_SHADER_TRACKING_RESOURCE_TYPE_ALL_SHARED_MEMORY:
D3D11_SHADER_TRACKING_RESOURCE_TYPE = D3D11_SHADER_TRACKING_RESOURCE_TYPE(5i32);
pub const D3D11_SHADER_TRACKING_RESOURCE_TYPE_GROUPSHARED_MEMORY:
D3D11_SHADER_TRACKING_RESOURCE_TYPE = D3D11_SHADER_TRACKING_RESOURCE_TYPE(4i32);
pub const D3D11_SHADER_TRACKING_RESOURCE_TYPE_GROUPSHARED_NON_UAV:
D3D11_SHADER_TRACKING_RESOURCE_TYPE = D3D11_SHADER_TRACKING_RESOURCE_TYPE(6i32);
pub const D3D11_SHADER_TRACKING_RESOURCE_TYPE_NONE: D3D11_SHADER_TRACKING_RESOURCE_TYPE =
D3D11_SHADER_TRACKING_RESOURCE_TYPE(0i32);
pub const D3D11_SHADER_TRACKING_RESOURCE_TYPE_NON_UAV_DEVICEMEMORY:
D3D11_SHADER_TRACKING_RESOURCE_TYPE = D3D11_SHADER_TRACKING_RESOURCE_TYPE(2i32);
pub const D3D11_SHADER_TRACKING_RESOURCE_TYPE_UAV_DEVICEMEMORY:
D3D11_SHADER_TRACKING_RESOURCE_TYPE = D3D11_SHADER_TRACKING_RESOURCE_TYPE(1i32);
#[repr(transparent)]
#[derive(Clone, Copy, Debug, Default, Eq, PartialEq)]
pub struct D3D11_SHADER_TYPE(pub i32);
#[repr(C)]
#[cfg(feature = "Win32_Graphics_Direct3D")]
#[derive(Clone, Copy, Debug, PartialEq)]
pub struct D3D11_SHADER_TYPE_DESC {
pub Class: super::Direct3D::D3D_SHADER_VARIABLE_CLASS,
pub Type: super::Direct3D::D3D_SHADER_VARIABLE_TYPE,
pub Rows: u32,
pub Columns: u32,
pub Elements: u32,
pub Members: u32,
pub Offset: u32,
pub Name: crate::core_supplemental::PCSTR,
}
#[cfg(feature = "Win32_Graphics_Direct3D")]
impl Default for D3D11_SHADER_TYPE_DESC {
fn default() -> Self {
unsafe { core::mem::zeroed() }
}
}
#[repr(C)]
#[derive(Clone, Copy, Debug, PartialEq)]
pub struct D3D11_SHADER_VARIABLE_DESC {
pub Name: crate::core_supplemental::PCSTR,
pub StartOffset: u32,
pub Size: u32,
pub uFlags: u32,
pub DefaultValue: *mut core::ffi::c_void,
pub StartTexture: u32,
pub TextureSize: u32,
pub StartSampler: u32,
pub SamplerSize: u32,
}
impl Default for D3D11_SHADER_VARIABLE_DESC {
fn default() -> Self {
unsafe { core::mem::zeroed() }
}
}
#[repr(transparent)]
#[derive(Clone, Copy, Debug, Default, Eq, PartialEq)]
pub struct D3D11_SHADER_VERSION_TYPE(pub i32);
#[repr(transparent)]
#[derive(Clone, Copy, Debug, Default, Eq, PartialEq)]
pub struct D3D11_SHARED_RESOURCE_TIER(pub i32);
pub const D3D11_SHARED_RESOURCE_TIER_0: D3D11_SHARED_RESOURCE_TIER =
D3D11_SHARED_RESOURCE_TIER(0i32);
pub const D3D11_SHARED_RESOURCE_TIER_1: D3D11_SHARED_RESOURCE_TIER =
D3D11_SHARED_RESOURCE_TIER(1i32);
pub const D3D11_SHARED_RESOURCE_TIER_2: D3D11_SHARED_RESOURCE_TIER =
D3D11_SHARED_RESOURCE_TIER(2i32);
pub const D3D11_SHARED_RESOURCE_TIER_3: D3D11_SHARED_RESOURCE_TIER =
D3D11_SHARED_RESOURCE_TIER(3i32);
pub const D3D11_SHIFT_INSTRUCTION_PAD_VALUE: u32 = 0u32;
pub const D3D11_SHIFT_INSTRUCTION_SHIFT_VALUE_BIT_COUNT: u32 = 5u32;
pub const D3D11_SHVER_COMPUTE_SHADER: D3D11_SHADER_VERSION_TYPE = D3D11_SHADER_VERSION_TYPE(5i32);
pub const D3D11_SHVER_DOMAIN_SHADER: D3D11_SHADER_VERSION_TYPE = D3D11_SHADER_VERSION_TYPE(4i32);
pub const D3D11_SHVER_GEOMETRY_SHADER: D3D11_SHADER_VERSION_TYPE = D3D11_SHADER_VERSION_TYPE(2i32);
pub const D3D11_SHVER_HULL_SHADER: D3D11_SHADER_VERSION_TYPE = D3D11_SHADER_VERSION_TYPE(3i32);
pub const D3D11_SHVER_PIXEL_SHADER: D3D11_SHADER_VERSION_TYPE = D3D11_SHADER_VERSION_TYPE(0i32);
pub const D3D11_SHVER_RESERVED0: D3D11_SHADER_VERSION_TYPE = D3D11_SHADER_VERSION_TYPE(65520i32);
pub const D3D11_SHVER_VERTEX_SHADER: D3D11_SHADER_VERSION_TYPE = D3D11_SHADER_VERSION_TYPE(1i32);
#[repr(C)]
#[cfg(feature = "Win32_Graphics_Direct3D")]
#[derive(Clone, Copy, Debug, PartialEq)]
pub struct D3D11_SIGNATURE_PARAMETER_DESC {
pub SemanticName: crate::core_supplemental::PCSTR,
pub SemanticIndex: u32,
pub Register: u32,
pub SystemValueType: super::Direct3D::D3D_NAME,
pub ComponentType: super::Direct3D::D3D_REGISTER_COMPONENT_TYPE,
pub Mask: u8,
pub ReadWriteMask: u8,
pub Stream: u32,
pub MinPrecision: super::Direct3D::D3D_MIN_PRECISION,
}
#[cfg(feature = "Win32_Graphics_Direct3D")]
impl Default for D3D11_SIGNATURE_PARAMETER_DESC {
fn default() -> Self {
unsafe { core::mem::zeroed() }
}
}
pub const D3D11_SIMULTANEOUS_RENDER_TARGET_COUNT: u32 = 8u32;
pub const D3D11_SO_BUFFER_MAX_STRIDE_IN_BYTES: u32 = 2048u32;
pub const D3D11_SO_BUFFER_MAX_WRITE_WINDOW_IN_BYTES: u32 = 512u32;
pub const D3D11_SO_BUFFER_SLOT_COUNT: u32 = 4u32;
pub const D3D11_SO_DDI_REGISTER_INDEX_DENOTING_GAP: u32 = 4294967295u32;
#[repr(C)]
#[derive(Clone, Copy, Debug, PartialEq)]
pub struct D3D11_SO_DECLARATION_ENTRY {
pub Stream: u32,
pub SemanticName: crate::core_supplemental::PCSTR,
pub SemanticIndex: u32,
pub StartComponent: u8,
pub ComponentCount: u8,
pub OutputSlot: u8,
}
impl Default for D3D11_SO_DECLARATION_ENTRY {
fn default() -> Self {
unsafe { core::mem::zeroed() }
}
}
pub const D3D11_SO_NO_RASTERIZED_STREAM: u32 = 4294967295u32;
pub const D3D11_SO_OUTPUT_COMPONENT_COUNT: u32 = 128u32;
pub const D3D11_SO_STREAM_COUNT: u32 = 4u32;
pub const D3D11_SPEC_DATE_DAY: u32 = 16u32;
pub const D3D11_SPEC_DATE_MONTH: u32 = 5u32;
pub const D3D11_SPEC_DATE_YEAR: u32 = 2011u32;
pub const D3D11_SPEC_VERSION: f64 = 1.07f64;
pub const D3D11_SRGB_GAMMA: f32 = 2.2f32;
pub const D3D11_SRGB_TO_FLOAT_DENOMINATOR_1: f32 = 12.92f32;
pub const D3D11_SRGB_TO_FLOAT_DENOMINATOR_2: f32 = 1.055f32;
pub const D3D11_SRGB_TO_FLOAT_EXPONENT: f32 = 2.4f32;
pub const D3D11_SRGB_TO_FLOAT_OFFSET: f32 = 0.055f32;
pub const D3D11_SRGB_TO_FLOAT_THRESHOLD: f32 = 0.04045f32;
pub const D3D11_SRGB_TO_FLOAT_TOLERANCE_IN_ULP: f32 = 0.5f32;
pub const D3D11_STANDARD_COMPONENT_BIT_COUNT: u32 = 32u32;
pub const D3D11_STANDARD_COMPONENT_BIT_COUNT_DOUBLED: u32 = 64u32;
pub const D3D11_STANDARD_MAXIMUM_ELEMENT_ALIGNMENT_BYTE_MULTIPLE: u32 = 4u32;
pub const D3D11_STANDARD_MULTISAMPLE_PATTERN: D3D11_STANDARD_MULTISAMPLE_QUALITY_LEVELS =
D3D11_STANDARD_MULTISAMPLE_QUALITY_LEVELS(-1i32);
#[repr(transparent)]
#[derive(Clone, Copy, Debug, Default, Eq, PartialEq)]
pub struct D3D11_STANDARD_MULTISAMPLE_QUALITY_LEVELS(pub i32);
pub const D3D11_STANDARD_PIXEL_COMPONENT_COUNT: u32 = 128u32;
pub const D3D11_STANDARD_PIXEL_ELEMENT_COUNT: u32 = 32u32;
pub const D3D11_STANDARD_VECTOR_SIZE: u32 = 4u32;
pub const D3D11_STANDARD_VERTEX_ELEMENT_COUNT: u32 = 32u32;
pub const D3D11_STANDARD_VERTEX_TOTAL_COMPONENT_COUNT: u32 = 64u32;
#[repr(transparent)]
#[derive(Clone, Copy, Debug, Default, Eq, PartialEq)]
pub struct D3D11_STENCIL_OP(pub i32);
pub const D3D11_STENCIL_OP_DECR: D3D11_STENCIL_OP = D3D11_STENCIL_OP(8i32);
pub const D3D11_STENCIL_OP_DECR_SAT: D3D11_STENCIL_OP = D3D11_STENCIL_OP(5i32);
pub const D3D11_STENCIL_OP_INCR: D3D11_STENCIL_OP = D3D11_STENCIL_OP(7i32);
pub const D3D11_STENCIL_OP_INCR_SAT: D3D11_STENCIL_OP = D3D11_STENCIL_OP(4i32);
pub const D3D11_STENCIL_OP_INVERT: D3D11_STENCIL_OP = D3D11_STENCIL_OP(6i32);
pub const D3D11_STENCIL_OP_KEEP: D3D11_STENCIL_OP = D3D11_STENCIL_OP(1i32);
pub const D3D11_STENCIL_OP_REPLACE: D3D11_STENCIL_OP = D3D11_STENCIL_OP(3i32);
pub const D3D11_STENCIL_OP_ZERO: D3D11_STENCIL_OP = D3D11_STENCIL_OP(2i32);
pub const D3D11_SUBPIXEL_FRACTIONAL_BIT_COUNT: u32 = 8u32;
#[repr(C)]
#[derive(Clone, Copy, Debug, PartialEq)]
pub struct D3D11_SUBRESOURCE_DATA {
pub pSysMem: *const core::ffi::c_void,
pub SysMemPitch: u32,
pub SysMemSlicePitch: u32,
}
impl Default for D3D11_SUBRESOURCE_DATA {
fn default() -> Self {
unsafe { core::mem::zeroed() }
}
}
#[repr(C)]
#[derive(Clone, Copy, Debug, PartialEq)]
pub struct D3D11_SUBRESOURCE_TILING {
pub WidthInTiles: u32,
pub HeightInTiles: u16,
pub DepthInTiles: u16,
pub StartTileIndexInOverallResource: u32,
}
impl Default for D3D11_SUBRESOURCE_TILING {
fn default() -> Self {
unsafe { core::mem::zeroed() }
}
}
pub const D3D11_SUBTEXEL_FRACTIONAL_BIT_COUNT: u32 = 8u32;
pub const D3D11_TESSELLATOR_MAX_EVEN_TESSELLATION_FACTOR: u32 = 64u32;
pub const D3D11_TESSELLATOR_MAX_ISOLINE_DENSITY_TESSELLATION_FACTOR: u32 = 64u32;
pub const D3D11_TESSELLATOR_MAX_ODD_TESSELLATION_FACTOR: u32 = 63u32;
pub const D3D11_TESSELLATOR_MAX_TESSELLATION_FACTOR: u32 = 64u32;
pub const D3D11_TESSELLATOR_MIN_EVEN_TESSELLATION_FACTOR: u32 = 2u32;
pub const D3D11_TESSELLATOR_MIN_ISOLINE_DENSITY_TESSELLATION_FACTOR: u32 = 1u32;
pub const D3D11_TESSELLATOR_MIN_ODD_TESSELLATION_FACTOR: u32 = 1u32;
#[repr(C)]
#[derive(Clone, Copy, Debug, PartialEq)]
pub struct D3D11_TEX1D_ARRAY_DSV {
pub MipSlice: u32,
pub FirstArraySlice: u32,
pub ArraySize: u32,
}
impl Default for D3D11_TEX1D_ARRAY_DSV {
fn default() -> Self {
unsafe { core::mem::zeroed() }
}
}
#[repr(C)]
#[derive(Clone, Copy, Debug, PartialEq)]
pub struct D3D11_TEX1D_ARRAY_RTV {
pub MipSlice: u32,
pub FirstArraySlice: u32,
pub ArraySize: u32,
}
impl Default for D3D11_TEX1D_ARRAY_RTV {
fn default() -> Self {
unsafe { core::mem::zeroed() }
}
}
#[repr(C)]
#[derive(Clone, Copy, Debug, PartialEq)]
pub struct D3D11_TEX1D_ARRAY_SRV {
pub MostDetailedMip: u32,
pub MipLevels: u32,
pub FirstArraySlice: u32,
pub ArraySize: u32,
}
impl Default for D3D11_TEX1D_ARRAY_SRV {
fn default() -> Self {
unsafe { core::mem::zeroed() }
}
}
#[repr(C)]
#[derive(Clone, Copy, Debug, PartialEq)]
pub struct D3D11_TEX1D_ARRAY_UAV {
pub MipSlice: u32,
pub FirstArraySlice: u32,
pub ArraySize: u32,
}
impl Default for D3D11_TEX1D_ARRAY_UAV {
fn default() -> Self {
unsafe { core::mem::zeroed() }
}
}
#[repr(C)]
#[derive(Clone, Copy, Debug, PartialEq)]
pub struct D3D11_TEX1D_DSV {
pub MipSlice: u32,
}
impl Default for D3D11_TEX1D_DSV {
fn default() -> Self {
unsafe { core::mem::zeroed() }
}
}
#[repr(C)]
#[derive(Clone, Copy, Debug, PartialEq)]
pub struct D3D11_TEX1D_RTV {
pub MipSlice: u32,
}
impl Default for D3D11_TEX1D_RTV {
fn default() -> Self {
unsafe { core::mem::zeroed() }
}
}
#[repr(C)]
#[derive(Clone, Copy, Debug, PartialEq)]
pub struct D3D11_TEX1D_SRV {
pub MostDetailedMip: u32,
pub MipLevels: u32,
}
impl Default for D3D11_TEX1D_SRV {
fn default() -> Self {
unsafe { core::mem::zeroed() }
}
}
#[repr(C)]
#[derive(Clone, Copy, Debug, PartialEq)]
pub struct D3D11_TEX1D_UAV {
pub MipSlice: u32,
}
impl Default for D3D11_TEX1D_UAV {
fn default() -> Self {
unsafe { core::mem::zeroed() }
}
}
#[repr(C)]
#[derive(Clone, Copy, Debug, PartialEq)]
pub struct D3D11_TEX2DMS_ARRAY_DSV {
pub FirstArraySlice: u32,
pub ArraySize: u32,
}
impl Default for D3D11_TEX2DMS_ARRAY_DSV {
fn default() -> Self {
unsafe { core::mem::zeroed() }
}
}
#[repr(C)]
#[derive(Clone, Copy, Debug, PartialEq)]
pub struct D3D11_TEX2DMS_ARRAY_RTV {
pub FirstArraySlice: u32,
pub ArraySize: u32,
}
impl Default for D3D11_TEX2DMS_ARRAY_RTV {
fn default() -> Self {
unsafe { core::mem::zeroed() }
}
}
#[repr(C)]
#[derive(Clone, Copy, Debug, PartialEq)]
pub struct D3D11_TEX2DMS_ARRAY_SRV {
pub FirstArraySlice: u32,
pub ArraySize: u32,
}
impl Default for D3D11_TEX2DMS_ARRAY_SRV {
fn default() -> Self {
unsafe { core::mem::zeroed() }
}
}
#[repr(C)]
#[derive(Clone, Copy, Debug, PartialEq)]
pub struct D3D11_TEX2DMS_DSV {
pub UnusedField_NothingToDefine: u32,
}
impl Default for D3D11_TEX2DMS_DSV {
fn default() -> Self {
unsafe { core::mem::zeroed() }
}
}
#[repr(C)]
#[derive(Clone, Copy, Debug, PartialEq)]
pub struct D3D11_TEX2DMS_RTV {
pub UnusedField_NothingToDefine: u32,
}
impl Default for D3D11_TEX2DMS_RTV {
fn default() -> Self {
unsafe { core::mem::zeroed() }
}
}
#[repr(C)]
#[derive(Clone, Copy, Debug, PartialEq)]
pub struct D3D11_TEX2DMS_SRV {
pub UnusedField_NothingToDefine: u32,
}
impl Default for D3D11_TEX2DMS_SRV {
fn default() -> Self {
unsafe { core::mem::zeroed() }
}
}
#[repr(C)]
#[derive(Clone, Copy, Debug, PartialEq)]
pub struct D3D11_TEX2D_ARRAY_DSV {
pub MipSlice: u32,
pub FirstArraySlice: u32,
pub ArraySize: u32,
}
impl Default for D3D11_TEX2D_ARRAY_DSV {
fn default() -> Self {
unsafe { core::mem::zeroed() }
}
}
#[repr(C)]
#[derive(Clone, Copy, Debug, PartialEq)]
pub struct D3D11_TEX2D_ARRAY_RTV {
pub MipSlice: u32,
pub FirstArraySlice: u32,
pub ArraySize: u32,
}
impl Default for D3D11_TEX2D_ARRAY_RTV {
fn default() -> Self {
unsafe { core::mem::zeroed() }
}
}
#[repr(C)]
#[derive(Clone, Copy, Debug, PartialEq)]
pub struct D3D11_TEX2D_ARRAY_RTV1 {
pub MipSlice: u32,
pub FirstArraySlice: u32,
pub ArraySize: u32,
pub PlaneSlice: u32,
}
impl Default for D3D11_TEX2D_ARRAY_RTV1 {
fn default() -> Self {
unsafe { core::mem::zeroed() }
}
}
#[repr(C)]
#[derive(Clone, Copy, Debug, PartialEq)]
pub struct D3D11_TEX2D_ARRAY_SRV {
pub MostDetailedMip: u32,
pub MipLevels: u32,
pub FirstArraySlice: u32,
pub ArraySize: u32,
}
impl Default for D3D11_TEX2D_ARRAY_SRV {
fn default() -> Self {
unsafe { core::mem::zeroed() }
}
}
#[repr(C)]
#[derive(Clone, Copy, Debug, PartialEq)]
pub struct D3D11_TEX2D_ARRAY_SRV1 {
pub MostDetailedMip: u32,
pub MipLevels: u32,
pub FirstArraySlice: u32,
pub ArraySize: u32,
pub PlaneSlice: u32,
}
impl Default for D3D11_TEX2D_ARRAY_SRV1 {
fn default() -> Self {
unsafe { core::mem::zeroed() }
}
}
#[repr(C)]
#[derive(Clone, Copy, Debug, PartialEq)]
pub struct D3D11_TEX2D_ARRAY_UAV {
pub MipSlice: u32,
pub FirstArraySlice: u32,
pub ArraySize: u32,
}
impl Default for D3D11_TEX2D_ARRAY_UAV {
fn default() -> Self {
unsafe { core::mem::zeroed() }
}
}
#[repr(C)]
#[derive(Clone, Copy, Debug, PartialEq)]
pub struct D3D11_TEX2D_ARRAY_UAV1 {
pub MipSlice: u32,
pub FirstArraySlice: u32,
pub ArraySize: u32,
pub PlaneSlice: u32,
}
impl Default for D3D11_TEX2D_ARRAY_UAV1 {
fn default() -> Self {
unsafe { core::mem::zeroed() }
}
}
#[repr(C)]
#[derive(Clone, Copy, Debug, PartialEq)]
pub struct D3D11_TEX2D_ARRAY_VPOV {
pub MipSlice: u32,
pub FirstArraySlice: u32,
pub ArraySize: u32,
}
impl Default for D3D11_TEX2D_ARRAY_VPOV {
fn default() -> Self {
unsafe { core::mem::zeroed() }
}
}
#[repr(C)]
#[derive(Clone, Copy, Debug, PartialEq)]
pub struct D3D11_TEX2D_DSV {
pub MipSlice: u32,
}
impl Default for D3D11_TEX2D_DSV {
fn default() -> Self {
unsafe { core::mem::zeroed() }
}
}
#[repr(C)]
#[derive(Clone, Copy, Debug, PartialEq)]
pub struct D3D11_TEX2D_RTV {
pub MipSlice: u32,
}
impl Default for D3D11_TEX2D_RTV {
fn default() -> Self {
unsafe { core::mem::zeroed() }
}
}
#[repr(C)]
#[derive(Clone, Copy, Debug, PartialEq)]
pub struct D3D11_TEX2D_RTV1 {
pub MipSlice: u32,
pub PlaneSlice: u32,
}
impl Default for D3D11_TEX2D_RTV1 {
fn default() -> Self {
unsafe { core::mem::zeroed() }
}
}
#[repr(C)]
#[derive(Clone, Copy, Debug, PartialEq)]
pub struct D3D11_TEX2D_SRV {
pub MostDetailedMip: u32,
pub MipLevels: u32,
}
impl Default for D3D11_TEX2D_SRV {
fn default() -> Self {
unsafe { core::mem::zeroed() }
}
}
#[repr(C)]
#[derive(Clone, Copy, Debug, PartialEq)]
pub struct D3D11_TEX2D_SRV1 {
pub MostDetailedMip: u32,
pub MipLevels: u32,
pub PlaneSlice: u32,
}
impl Default for D3D11_TEX2D_SRV1 {
fn default() -> Self {
unsafe { core::mem::zeroed() }
}
}
#[repr(C)]
#[derive(Clone, Copy, Debug, PartialEq)]
pub struct D3D11_TEX2D_UAV {
pub MipSlice: u32,
}
impl Default for D3D11_TEX2D_UAV {
fn default() -> Self {
unsafe { core::mem::zeroed() }
}
}
#[repr(C)]
#[derive(Clone, Copy, Debug, PartialEq)]
pub struct D3D11_TEX2D_UAV1 {
pub MipSlice: u32,
pub PlaneSlice: u32,
}
impl Default for D3D11_TEX2D_UAV1 {
fn default() -> Self {
unsafe { core::mem::zeroed() }
}
}
#[repr(C)]
#[derive(Clone, Copy, Debug, PartialEq)]
pub struct D3D11_TEX2D_VDOV {
pub ArraySlice: u32,
}
impl Default for D3D11_TEX2D_VDOV {
fn default() -> Self {
unsafe { core::mem::zeroed() }
}
}
#[repr(C)]
#[derive(Clone, Copy, Debug, PartialEq)]
pub struct D3D11_TEX2D_VPIV {
pub MipSlice: u32,
pub ArraySlice: u32,
}
impl Default for D3D11_TEX2D_VPIV {
fn default() -> Self {
unsafe { core::mem::zeroed() }
}
}
#[repr(C)]
#[derive(Clone, Copy, Debug, PartialEq)]
pub struct D3D11_TEX2D_VPOV {
pub MipSlice: u32,
}
impl Default for D3D11_TEX2D_VPOV {
fn default() -> Self {
unsafe { core::mem::zeroed() }
}
}
#[repr(C)]
#[derive(Clone, Copy, Debug, PartialEq)]
pub struct D3D11_TEX3D_RTV {
pub MipSlice: u32,
pub FirstWSlice: u32,
pub WSize: u32,
}
impl Default for D3D11_TEX3D_RTV {
fn default() -> Self {
unsafe { core::mem::zeroed() }
}
}
#[repr(C)]
#[derive(Clone, Copy, Debug, PartialEq)]
pub struct D3D11_TEX3D_SRV {
pub MostDetailedMip: u32,
pub MipLevels: u32,
}
impl Default for D3D11_TEX3D_SRV {
fn default() -> Self {
unsafe { core::mem::zeroed() }
}
}
#[repr(C)]
#[derive(Clone, Copy, Debug, PartialEq)]
pub struct D3D11_TEX3D_UAV {
pub MipSlice: u32,
pub FirstWSlice: u32,
pub WSize: u32,
}
impl Default for D3D11_TEX3D_UAV {
fn default() -> Self {
unsafe { core::mem::zeroed() }
}
}
#[repr(C)]
#[derive(Clone, Copy, Debug, PartialEq)]
pub struct D3D11_TEXCUBE_ARRAY_SRV {
pub MostDetailedMip: u32,
pub MipLevels: u32,
pub First2DArrayFace: u32,
pub NumCubes: u32,
}
impl Default for D3D11_TEXCUBE_ARRAY_SRV {
fn default() -> Self {
unsafe { core::mem::zeroed() }
}
}
#[repr(C)]
#[derive(Clone, Copy, Debug, PartialEq)]
pub struct D3D11_TEXCUBE_SRV {
pub MostDetailedMip: u32,
pub MipLevels: u32,
}
impl Default for D3D11_TEXCUBE_SRV {
fn default() -> Self {
unsafe { core::mem::zeroed() }
}
}
pub const D3D11_TEXEL_ADDRESS_RANGE_BIT_COUNT: u32 = 16u32;
#[repr(C)]
#[cfg(feature = "Win32_Graphics_Dxgi_Common")]
#[derive(Clone, Copy, Debug, PartialEq)]
pub struct D3D11_TEXTURE1D_DESC {
pub Width: u32,
pub MipLevels: u32,
pub ArraySize: u32,
pub Format: crate::Dxgi::Common::DXGI_FORMAT,
pub Usage: D3D11_USAGE,
pub BindFlags: u32,
pub CPUAccessFlags: u32,
pub MiscFlags: u32,
}
#[cfg(feature = "Win32_Graphics_Dxgi_Common")]
impl Default for D3D11_TEXTURE1D_DESC {
fn default() -> Self {
unsafe { core::mem::zeroed() }
}
}
#[repr(C)]
#[cfg(feature = "Win32_Graphics_Dxgi_Common")]
#[derive(Clone, Copy, Debug, PartialEq)]
pub struct D3D11_TEXTURE2D_DESC {
pub Width: u32,
pub Height: u32,
pub MipLevels: u32,
pub ArraySize: u32,
pub Format: crate::Dxgi::Common::DXGI_FORMAT,
pub SampleDesc: crate::Dxgi::Common::DXGI_SAMPLE_DESC,
pub Usage: D3D11_USAGE,
pub BindFlags: u32,
pub CPUAccessFlags: u32,
pub MiscFlags: u32,
}
#[cfg(feature = "Win32_Graphics_Dxgi_Common")]
impl Default for D3D11_TEXTURE2D_DESC {
fn default() -> Self {
unsafe { core::mem::zeroed() }
}
}
#[repr(C)]
#[cfg(feature = "Win32_Graphics_Dxgi_Common")]
#[derive(Clone, Copy, Debug, PartialEq)]
pub struct D3D11_TEXTURE2D_DESC1 {
pub Width: u32,
pub Height: u32,
pub MipLevels: u32,
pub ArraySize: u32,
pub Format: crate::Dxgi::Common::DXGI_FORMAT,
pub SampleDesc: crate::Dxgi::Common::DXGI_SAMPLE_DESC,
pub Usage: D3D11_USAGE,
pub BindFlags: u32,
pub CPUAccessFlags: u32,
pub MiscFlags: u32,
pub TextureLayout: D3D11_TEXTURE_LAYOUT,
}
#[cfg(feature = "Win32_Graphics_Dxgi_Common")]
impl Default for D3D11_TEXTURE2D_DESC1 {
fn default() -> Self {
unsafe { core::mem::zeroed() }
}
}
#[repr(C)]
#[cfg(feature = "Win32_Graphics_Dxgi_Common")]
#[derive(Clone, Copy, Debug, PartialEq)]
pub struct D3D11_TEXTURE3D_DESC {
pub Width: u32,
pub Height: u32,
pub Depth: u32,
pub MipLevels: u32,
pub Format: crate::Dxgi::Common::DXGI_FORMAT,
pub Usage: D3D11_USAGE,
pub BindFlags: u32,
pub CPUAccessFlags: u32,
pub MiscFlags: u32,
}
#[cfg(feature = "Win32_Graphics_Dxgi_Common")]
impl Default for D3D11_TEXTURE3D_DESC {
fn default() -> Self {
unsafe { core::mem::zeroed() }
}
}
#[repr(C)]
#[cfg(feature = "Win32_Graphics_Dxgi_Common")]
#[derive(Clone, Copy, Debug, PartialEq)]
pub struct D3D11_TEXTURE3D_DESC1 {
pub Width: u32,
pub Height: u32,
pub Depth: u32,
pub MipLevels: u32,
pub Format: crate::Dxgi::Common::DXGI_FORMAT,
pub Usage: D3D11_USAGE,
pub BindFlags: u32,
pub CPUAccessFlags: u32,
pub MiscFlags: u32,
pub TextureLayout: D3D11_TEXTURE_LAYOUT,
}
#[cfg(feature = "Win32_Graphics_Dxgi_Common")]
impl Default for D3D11_TEXTURE3D_DESC1 {
fn default() -> Self {
unsafe { core::mem::zeroed() }
}
}
#[repr(transparent)]
#[derive(Clone, Copy, Debug, Default, Eq, PartialEq)]
pub struct D3D11_TEXTURECUBE_FACE(pub i32);
pub const D3D11_TEXTURECUBE_FACE_NEGATIVE_X: D3D11_TEXTURECUBE_FACE = D3D11_TEXTURECUBE_FACE(1i32);
pub const D3D11_TEXTURECUBE_FACE_NEGATIVE_Y: D3D11_TEXTURECUBE_FACE = D3D11_TEXTURECUBE_FACE(3i32);
pub const D3D11_TEXTURECUBE_FACE_NEGATIVE_Z: D3D11_TEXTURECUBE_FACE = D3D11_TEXTURECUBE_FACE(5i32);
pub const D3D11_TEXTURECUBE_FACE_POSITIVE_X: D3D11_TEXTURECUBE_FACE = D3D11_TEXTURECUBE_FACE(0i32);
pub const D3D11_TEXTURECUBE_FACE_POSITIVE_Y: D3D11_TEXTURECUBE_FACE = D3D11_TEXTURECUBE_FACE(2i32);
pub const D3D11_TEXTURECUBE_FACE_POSITIVE_Z: D3D11_TEXTURECUBE_FACE = D3D11_TEXTURECUBE_FACE(4i32);
pub const D3D11_TEXTURE_ADDRESS_BORDER: D3D11_TEXTURE_ADDRESS_MODE =
D3D11_TEXTURE_ADDRESS_MODE(4i32);
pub const D3D11_TEXTURE_ADDRESS_CLAMP: D3D11_TEXTURE_ADDRESS_MODE =
D3D11_TEXTURE_ADDRESS_MODE(3i32);
pub const D3D11_TEXTURE_ADDRESS_MIRROR: D3D11_TEXTURE_ADDRESS_MODE =
D3D11_TEXTURE_ADDRESS_MODE(2i32);
pub const D3D11_TEXTURE_ADDRESS_MIRROR_ONCE: D3D11_TEXTURE_ADDRESS_MODE =
D3D11_TEXTURE_ADDRESS_MODE(5i32);
#[repr(transparent)]
#[derive(Clone, Copy, Debug, Default, Eq, PartialEq)]
pub struct D3D11_TEXTURE_ADDRESS_MODE(pub i32);
pub const D3D11_TEXTURE_ADDRESS_WRAP: D3D11_TEXTURE_ADDRESS_MODE = D3D11_TEXTURE_ADDRESS_MODE(1i32);
#[repr(transparent)]
#[derive(Clone, Copy, Debug, Default, Eq, PartialEq)]
pub struct D3D11_TEXTURE_LAYOUT(pub i32);
pub const D3D11_TEXTURE_LAYOUT_64K_STANDARD_SWIZZLE: D3D11_TEXTURE_LAYOUT =
D3D11_TEXTURE_LAYOUT(2i32);
pub const D3D11_TEXTURE_LAYOUT_ROW_MAJOR: D3D11_TEXTURE_LAYOUT = D3D11_TEXTURE_LAYOUT(1i32);
pub const D3D11_TEXTURE_LAYOUT_UNDEFINED: D3D11_TEXTURE_LAYOUT = D3D11_TEXTURE_LAYOUT(0i32);
pub const D3D11_TILED_RESOURCES_NOT_SUPPORTED: D3D11_TILED_RESOURCES_TIER =
D3D11_TILED_RESOURCES_TIER(0i32);
#[repr(transparent)]
#[derive(Clone, Copy, Debug, Default, Eq, PartialEq)]
pub struct D3D11_TILED_RESOURCES_TIER(pub i32);
pub const D3D11_TILED_RESOURCES_TIER_1: D3D11_TILED_RESOURCES_TIER =
D3D11_TILED_RESOURCES_TIER(1i32);
pub const D3D11_TILED_RESOURCES_TIER_2: D3D11_TILED_RESOURCES_TIER =
D3D11_TILED_RESOURCES_TIER(2i32);
pub const D3D11_TILED_RESOURCES_TIER_3: D3D11_TILED_RESOURCES_TIER =
D3D11_TILED_RESOURCES_TIER(3i32);
#[repr(C)]
#[derive(Clone, Copy, Debug, PartialEq)]
pub struct D3D11_TILED_RESOURCE_COORDINATE {
pub X: u32,
pub Y: u32,
pub Z: u32,
pub Subresource: u32,
}
impl Default for D3D11_TILED_RESOURCE_COORDINATE {
fn default() -> Self {
unsafe { core::mem::zeroed() }
}
}
#[repr(transparent)]
#[derive(Clone, Copy, Debug, Default, Eq, PartialEq)]
pub struct D3D11_TILE_COPY_FLAG(pub i32);
pub const D3D11_TILE_COPY_LINEAR_BUFFER_TO_SWIZZLED_TILED_RESOURCE: D3D11_TILE_COPY_FLAG =
D3D11_TILE_COPY_FLAG(2i32);
pub const D3D11_TILE_COPY_NO_OVERWRITE: D3D11_TILE_COPY_FLAG = D3D11_TILE_COPY_FLAG(1i32);
pub const D3D11_TILE_COPY_SWIZZLED_TILED_RESOURCE_TO_LINEAR_BUFFER: D3D11_TILE_COPY_FLAG =
D3D11_TILE_COPY_FLAG(4i32);
#[repr(transparent)]
#[derive(Clone, Copy, Debug, Default, Eq, PartialEq)]
pub struct D3D11_TILE_MAPPING_FLAG(pub i32);
pub const D3D11_TILE_MAPPING_NO_OVERWRITE: D3D11_TILE_MAPPING_FLAG = D3D11_TILE_MAPPING_FLAG(1i32);
#[repr(transparent)]
#[derive(Clone, Copy, Debug, Default, Eq, PartialEq)]
pub struct D3D11_TILE_RANGE_FLAG(pub i32);
pub const D3D11_TILE_RANGE_NULL: D3D11_TILE_RANGE_FLAG = D3D11_TILE_RANGE_FLAG(1i32);
pub const D3D11_TILE_RANGE_REUSE_SINGLE_TILE: D3D11_TILE_RANGE_FLAG = D3D11_TILE_RANGE_FLAG(4i32);
pub const D3D11_TILE_RANGE_SKIP: D3D11_TILE_RANGE_FLAG = D3D11_TILE_RANGE_FLAG(2i32);
#[repr(C)]
#[derive(Clone, Copy, Debug, PartialEq)]
pub struct D3D11_TILE_REGION_SIZE {
pub NumTiles: u32,
pub bUseBox: crate::Foundation::BOOL,
pub Width: u32,
pub Height: u16,
pub Depth: u16,
}
impl Default for D3D11_TILE_REGION_SIZE {
fn default() -> Self {
unsafe { core::mem::zeroed() }
}
}
#[repr(C)]
#[derive(Clone, Copy, Debug, PartialEq)]
pub struct D3D11_TILE_SHAPE {
pub WidthInTexels: u32,
pub HeightInTexels: u32,
pub DepthInTexels: u32,
}
impl Default for D3D11_TILE_SHAPE {
fn default() -> Self {
unsafe { core::mem::zeroed() }
}
}
pub const D3D11_TRACE_COMPONENT_W: u32 = 8u32;
pub const D3D11_TRACE_COMPONENT_X: u32 = 1u32;
pub const D3D11_TRACE_COMPONENT_Y: u32 = 2u32;
pub const D3D11_TRACE_COMPONENT_Z: u32 = 4u32;
pub const D3D11_TRACE_CONSTANT_BUFFER: D3D11_TRACE_REGISTER_TYPE = D3D11_TRACE_REGISTER_TYPE(8i32);
#[repr(transparent)]
#[derive(Clone, Copy, Debug, Default, Eq, PartialEq)]
pub struct D3D11_TRACE_GS_INPUT_PRIMITIVE(pub i32);
pub const D3D11_TRACE_GS_INPUT_PRIMITIVE_LINE: D3D11_TRACE_GS_INPUT_PRIMITIVE =
D3D11_TRACE_GS_INPUT_PRIMITIVE(2i32);
pub const D3D11_TRACE_GS_INPUT_PRIMITIVE_LINE_ADJ: D3D11_TRACE_GS_INPUT_PRIMITIVE =
D3D11_TRACE_GS_INPUT_PRIMITIVE(6i32);
pub const D3D11_TRACE_GS_INPUT_PRIMITIVE_POINT: D3D11_TRACE_GS_INPUT_PRIMITIVE =
D3D11_TRACE_GS_INPUT_PRIMITIVE(1i32);
pub const D3D11_TRACE_GS_INPUT_PRIMITIVE_TRIANGLE: D3D11_TRACE_GS_INPUT_PRIMITIVE =
D3D11_TRACE_GS_INPUT_PRIMITIVE(3i32);
pub const D3D11_TRACE_GS_INPUT_PRIMITIVE_TRIANGLE_ADJ: D3D11_TRACE_GS_INPUT_PRIMITIVE =
D3D11_TRACE_GS_INPUT_PRIMITIVE(7i32);
pub const D3D11_TRACE_GS_INPUT_PRIMITIVE_UNDEFINED: D3D11_TRACE_GS_INPUT_PRIMITIVE =
D3D11_TRACE_GS_INPUT_PRIMITIVE(0i32);
pub const D3D11_TRACE_IMMEDIATE32: D3D11_TRACE_REGISTER_TYPE = D3D11_TRACE_REGISTER_TYPE(9i32);
pub const D3D11_TRACE_IMMEDIATE64: D3D11_TRACE_REGISTER_TYPE = D3D11_TRACE_REGISTER_TYPE(33i32);
pub const D3D11_TRACE_IMMEDIATE_CONSTANT_BUFFER: D3D11_TRACE_REGISTER_TYPE =
D3D11_TRACE_REGISTER_TYPE(3i32);
pub const D3D11_TRACE_INDEXABLE_TEMP_REGISTER: D3D11_TRACE_REGISTER_TYPE =
D3D11_TRACE_REGISTER_TYPE(5i32);
pub const D3D11_TRACE_INPUT_CONTROL_POINT_REGISTER: D3D11_TRACE_REGISTER_TYPE =
D3D11_TRACE_REGISTER_TYPE(19i32);
pub const D3D11_TRACE_INPUT_COVERAGE_MASK_REGISTER: D3D11_TRACE_REGISTER_TYPE =
D3D11_TRACE_REGISTER_TYPE(28i32);
pub const D3D11_TRACE_INPUT_CYCLE_COUNTER_REGISTER: D3D11_TRACE_REGISTER_TYPE =
D3D11_TRACE_REGISTER_TYPE(34i32);
pub const D3D11_TRACE_INPUT_DOMAIN_POINT_REGISTER: D3D11_TRACE_REGISTER_TYPE =
D3D11_TRACE_REGISTER_TYPE(22i32);
pub const D3D11_TRACE_INPUT_FORK_INSTANCE_ID_REGISTER: D3D11_TRACE_REGISTER_TYPE =
D3D11_TRACE_REGISTER_TYPE(17i32);
pub const D3D11_TRACE_INPUT_GS_INSTANCE_ID_REGISTER: D3D11_TRACE_REGISTER_TYPE =
D3D11_TRACE_REGISTER_TYPE(30i32);
pub const D3D11_TRACE_INPUT_JOIN_INSTANCE_ID_REGISTER: D3D11_TRACE_REGISTER_TYPE =
D3D11_TRACE_REGISTER_TYPE(18i32);
pub const D3D11_TRACE_INPUT_PATCH_CONSTANT_REGISTER: D3D11_TRACE_REGISTER_TYPE =
D3D11_TRACE_REGISTER_TYPE(21i32);
pub const D3D11_TRACE_INPUT_PRIMITIVE_ID_REGISTER: D3D11_TRACE_REGISTER_TYPE =
D3D11_TRACE_REGISTER_TYPE(2i32);
pub const D3D11_TRACE_INPUT_REGISTER: D3D11_TRACE_REGISTER_TYPE = D3D11_TRACE_REGISTER_TYPE(1i32);
pub const D3D11_TRACE_INPUT_THREAD_GROUP_ID_REGISTER: D3D11_TRACE_REGISTER_TYPE =
D3D11_TRACE_REGISTER_TYPE(26i32);
pub const D3D11_TRACE_INPUT_THREAD_ID_IN_GROUP_FLATTENED_REGISTER: D3D11_TRACE_REGISTER_TYPE =
D3D11_TRACE_REGISTER_TYPE(29i32);
pub const D3D11_TRACE_INPUT_THREAD_ID_IN_GROUP_REGISTER: D3D11_TRACE_REGISTER_TYPE =
D3D11_TRACE_REGISTER_TYPE(27i32);
pub const D3D11_TRACE_INPUT_THREAD_ID_REGISTER: D3D11_TRACE_REGISTER_TYPE =
D3D11_TRACE_REGISTER_TYPE(25i32);
pub const D3D11_TRACE_INTERFACE_POINTER: D3D11_TRACE_REGISTER_TYPE =
D3D11_TRACE_REGISTER_TYPE(35i32);
pub const D3D11_TRACE_MISC_GS_CUT: u32 = 2u32;
pub const D3D11_TRACE_MISC_GS_CUT_STREAM: u32 = 16u32;
pub const D3D11_TRACE_MISC_GS_EMIT: u32 = 1u32;
pub const D3D11_TRACE_MISC_GS_EMIT_STREAM: u32 = 8u32;
pub const D3D11_TRACE_MISC_HALT: u32 = 32u32;
pub const D3D11_TRACE_MISC_MESSAGE: u32 = 64u32;
pub const D3D11_TRACE_MISC_PS_DISCARD: u32 = 4u32;
pub const D3D11_TRACE_OUTPUT_CONTROL_POINT_ID_REGISTER: D3D11_TRACE_REGISTER_TYPE =
D3D11_TRACE_REGISTER_TYPE(16i32);
pub const D3D11_TRACE_OUTPUT_CONTROL_POINT_REGISTER: D3D11_TRACE_REGISTER_TYPE =
D3D11_TRACE_REGISTER_TYPE(20i32);
pub const D3D11_TRACE_OUTPUT_COVERAGE_MASK: D3D11_TRACE_REGISTER_TYPE =
D3D11_TRACE_REGISTER_TYPE(13i32);
pub const D3D11_TRACE_OUTPUT_DEPTH_GREATER_EQUAL_REGISTER: D3D11_TRACE_REGISTER_TYPE =
D3D11_TRACE_REGISTER_TYPE(31i32);
pub const D3D11_TRACE_OUTPUT_DEPTH_LESS_EQUAL_REGISTER: D3D11_TRACE_REGISTER_TYPE =
D3D11_TRACE_REGISTER_TYPE(32i32);
pub const D3D11_TRACE_OUTPUT_DEPTH_REGISTER: D3D11_TRACE_REGISTER_TYPE =
D3D11_TRACE_REGISTER_TYPE(7i32);
pub const D3D11_TRACE_OUTPUT_NULL_REGISTER: D3D11_TRACE_REGISTER_TYPE =
D3D11_TRACE_REGISTER_TYPE(0i32);
pub const D3D11_TRACE_OUTPUT_REGISTER: D3D11_TRACE_REGISTER_TYPE = D3D11_TRACE_REGISTER_TYPE(6i32);
pub const D3D11_TRACE_RASTERIZER: D3D11_TRACE_REGISTER_TYPE = D3D11_TRACE_REGISTER_TYPE(12i32);
#[repr(C)]
#[derive(Clone, Copy)]
pub struct D3D11_TRACE_REGISTER {
pub RegType: D3D11_TRACE_REGISTER_TYPE,
pub Anonymous: D3D11_TRACE_REGISTER_0,
pub OperandIndex: u8,
pub Flags: u8,
}
impl Default for D3D11_TRACE_REGISTER {
fn default() -> Self {
unsafe { core::mem::zeroed() }
}
}
#[repr(C)]
#[derive(Clone, Copy)]
pub union D3D11_TRACE_REGISTER_0 {
pub Index1D: u16,
pub Index2D: [u16; 2],
}
impl Default for D3D11_TRACE_REGISTER_0 {
fn default() -> Self {
unsafe { core::mem::zeroed() }
}
}
pub const D3D11_TRACE_REGISTER_FLAGS_RELATIVE_INDEXING: u32 = 1u32;
#[repr(transparent)]
#[derive(Clone, Copy, Debug, Default, Eq, PartialEq)]
pub struct D3D11_TRACE_REGISTER_TYPE(pub i32);
pub const D3D11_TRACE_RESOURCE: D3D11_TRACE_REGISTER_TYPE = D3D11_TRACE_REGISTER_TYPE(11i32);
pub const D3D11_TRACE_SAMPLER: D3D11_TRACE_REGISTER_TYPE = D3D11_TRACE_REGISTER_TYPE(10i32);
#[repr(C)]
#[derive(Clone, Copy)]
pub struct D3D11_TRACE_STATS {
pub TraceDesc: D3D11_SHADER_TRACE_DESC,
pub NumInvocationsInStamp: u8,
pub TargetStampIndex: u8,
pub NumTraceSteps: u32,
pub InputMask: [u8; 32],
pub OutputMask: [u8; 32],
pub NumTemps: u16,
pub MaxIndexableTempIndex: u16,
pub IndexableTempSize: [u16; 4096],
pub ImmediateConstantBufferSize: u16,
pub PixelPosition: [u32; 8],
pub PixelCoverageMask: [u64; 4],
pub PixelDiscardedMask: [u64; 4],
pub PixelCoverageMaskAfterShader: [u64; 4],
pub PixelCoverageMaskAfterA2CSampleMask: [u64; 4],
pub PixelCoverageMaskAfterA2CSampleMaskDepth: [u64; 4],
pub PixelCoverageMaskAfterA2CSampleMaskDepthStencil: [u64; 4],
pub PSOutputsDepth: crate::Foundation::BOOL,
pub PSOutputsMask: crate::Foundation::BOOL,
pub GSInputPrimitive: D3D11_TRACE_GS_INPUT_PRIMITIVE,
pub GSInputsPrimitiveID: crate::Foundation::BOOL,
pub HSOutputPatchConstantMask: [u8; 32],
pub DSInputPatchConstantMask: [u8; 32],
}
impl Default for D3D11_TRACE_STATS {
fn default() -> Self {
unsafe { core::mem::zeroed() }
}
}
#[repr(C)]
#[derive(Clone, Copy, Debug, PartialEq)]
pub struct D3D11_TRACE_STEP {
pub ID: u32,
pub InstructionActive: crate::Foundation::BOOL,
pub NumRegistersWritten: u8,
pub NumRegistersRead: u8,
pub MiscOperations: u16,
pub OpcodeType: u32,
pub CurrentGlobalCycle: u64,
}
impl Default for D3D11_TRACE_STEP {
fn default() -> Self {
unsafe { core::mem::zeroed() }
}
}
pub const D3D11_TRACE_STREAM: D3D11_TRACE_REGISTER_TYPE = D3D11_TRACE_REGISTER_TYPE(14i32);
pub const D3D11_TRACE_TEMP_REGISTER: D3D11_TRACE_REGISTER_TYPE = D3D11_TRACE_REGISTER_TYPE(4i32);
pub const D3D11_TRACE_THIS_POINTER: D3D11_TRACE_REGISTER_TYPE = D3D11_TRACE_REGISTER_TYPE(15i32);
pub const D3D11_TRACE_THREAD_GROUP_SHARED_MEMORY: D3D11_TRACE_REGISTER_TYPE =
D3D11_TRACE_REGISTER_TYPE(24i32);
pub const D3D11_TRACE_UNORDERED_ACCESS_VIEW: D3D11_TRACE_REGISTER_TYPE =
D3D11_TRACE_REGISTER_TYPE(23i32);
#[repr(C)]
#[derive(Clone, Copy, Debug, PartialEq)]
pub struct D3D11_TRACE_VALUE {
pub Bits: [u32; 4],
pub ValidMask: u8,
}
impl Default for D3D11_TRACE_VALUE {
fn default() -> Self {
unsafe { core::mem::zeroed() }
}
}
#[repr(transparent)]
#[derive(Clone, Copy, Debug, Default, Eq, PartialEq)]
pub struct D3D11_UAV_DIMENSION(pub i32);
pub const D3D11_UAV_DIMENSION_BUFFER: D3D11_UAV_DIMENSION = D3D11_UAV_DIMENSION(1i32);
pub const D3D11_UAV_DIMENSION_TEXTURE1D: D3D11_UAV_DIMENSION = D3D11_UAV_DIMENSION(2i32);
pub const D3D11_UAV_DIMENSION_TEXTURE1DARRAY: D3D11_UAV_DIMENSION = D3D11_UAV_DIMENSION(3i32);
pub const D3D11_UAV_DIMENSION_TEXTURE2D: D3D11_UAV_DIMENSION = D3D11_UAV_DIMENSION(4i32);
pub const D3D11_UAV_DIMENSION_TEXTURE2DARRAY: D3D11_UAV_DIMENSION = D3D11_UAV_DIMENSION(5i32);
pub const D3D11_UAV_DIMENSION_TEXTURE3D: D3D11_UAV_DIMENSION = D3D11_UAV_DIMENSION(8i32);
pub const D3D11_UAV_DIMENSION_UNKNOWN: D3D11_UAV_DIMENSION = D3D11_UAV_DIMENSION(0i32);
pub const D3D11_UNBOUND_MEMORY_ACCESS_RESULT: u32 = 0u32;
pub const D3D11_UNMUTE_SEVERITY_INFO: crate::core_supplemental::PCWSTR =
crate::core_supplemental::w!("Unmute_SEVERITY_INFO");
#[repr(C)]
#[cfg(feature = "Win32_Graphics_Dxgi_Common")]
#[derive(Clone, Copy)]
pub struct D3D11_UNORDERED_ACCESS_VIEW_DESC {
pub Format: crate::Dxgi::Common::DXGI_FORMAT,
pub ViewDimension: D3D11_UAV_DIMENSION,
pub Anonymous: D3D11_UNORDERED_ACCESS_VIEW_DESC_0,
}
#[cfg(feature = "Win32_Graphics_Dxgi_Common")]
impl Default for D3D11_UNORDERED_ACCESS_VIEW_DESC {
fn default() -> Self {
unsafe { core::mem::zeroed() }
}
}
#[repr(C)]
#[cfg(feature = "Win32_Graphics_Dxgi_Common")]
#[derive(Clone, Copy)]
pub union D3D11_UNORDERED_ACCESS_VIEW_DESC_0 {
pub Buffer: D3D11_BUFFER_UAV,
pub Texture1D: D3D11_TEX1D_UAV,
pub Texture1DArray: D3D11_TEX1D_ARRAY_UAV,
pub Texture2D: D3D11_TEX2D_UAV,
pub Texture2DArray: D3D11_TEX2D_ARRAY_UAV,
pub Texture3D: D3D11_TEX3D_UAV,
}
#[cfg(feature = "Win32_Graphics_Dxgi_Common")]
impl Default for D3D11_UNORDERED_ACCESS_VIEW_DESC_0 {
fn default() -> Self {
unsafe { core::mem::zeroed() }
}
}
#[repr(C)]
#[cfg(feature = "Win32_Graphics_Dxgi_Common")]
#[derive(Clone, Copy)]
pub struct D3D11_UNORDERED_ACCESS_VIEW_DESC1 {
pub Format: crate::Dxgi::Common::DXGI_FORMAT,
pub ViewDimension: D3D11_UAV_DIMENSION,
pub Anonymous: D3D11_UNORDERED_ACCESS_VIEW_DESC1_0,
}
#[cfg(feature = "Win32_Graphics_Dxgi_Common")]
impl Default for D3D11_UNORDERED_ACCESS_VIEW_DESC1 {
fn default() -> Self {
unsafe { core::mem::zeroed() }
}
}
#[repr(C)]
#[cfg(feature = "Win32_Graphics_Dxgi_Common")]
#[derive(Clone, Copy)]
pub union D3D11_UNORDERED_ACCESS_VIEW_DESC1_0 {
pub Buffer: D3D11_BUFFER_UAV,
pub Texture1D: D3D11_TEX1D_UAV,
pub Texture1DArray: D3D11_TEX1D_ARRAY_UAV,
pub Texture2D: D3D11_TEX2D_UAV1,
pub Texture2DArray: D3D11_TEX2D_ARRAY_UAV1,
pub Texture3D: D3D11_TEX3D_UAV,
}
#[cfg(feature = "Win32_Graphics_Dxgi_Common")]
impl Default for D3D11_UNORDERED_ACCESS_VIEW_DESC1_0 {
fn default() -> Self {
unsafe { core::mem::zeroed() }
}
}
#[repr(transparent)]
#[derive(Clone, Copy, Debug, Default, Eq, PartialEq)]
pub struct D3D11_USAGE(pub i32);
pub const D3D11_USAGE_DEFAULT: D3D11_USAGE = D3D11_USAGE(0i32);
pub const D3D11_USAGE_DYNAMIC: D3D11_USAGE = D3D11_USAGE(2i32);
pub const D3D11_USAGE_IMMUTABLE: D3D11_USAGE = D3D11_USAGE(1i32);
pub const D3D11_USAGE_STAGING: D3D11_USAGE = D3D11_USAGE(3i32);
#[repr(transparent)]
#[derive(Clone, Copy, Debug, Default, Eq, PartialEq)]
pub struct D3D11_VDOV_DIMENSION(pub i32);
pub const D3D11_VDOV_DIMENSION_TEXTURE2D: D3D11_VDOV_DIMENSION = D3D11_VDOV_DIMENSION(1i32);
pub const D3D11_VDOV_DIMENSION_UNKNOWN: D3D11_VDOV_DIMENSION = D3D11_VDOV_DIMENSION(0i32);
pub const D3D11_VERTEX_SHADER: D3D11_SHADER_TYPE = D3D11_SHADER_TYPE(1i32);
#[repr(C)]
#[derive(Clone, Copy, Debug, PartialEq)]
pub struct D3D11_VERTEX_SHADER_TRACE_DESC {
pub Invocation: u64,
}
impl Default for D3D11_VERTEX_SHADER_TRACE_DESC {
fn default() -> Self {
unsafe { core::mem::zeroed() }
}
}
#[repr(C)]
#[derive(Clone, Copy)]
pub struct D3D11_VIDEO_COLOR {
pub Anonymous: D3D11_VIDEO_COLOR_0,
}
impl Default for D3D11_VIDEO_COLOR {
fn default() -> Self {
unsafe { core::mem::zeroed() }
}
}
#[repr(C)]
#[derive(Clone, Copy)]
pub union D3D11_VIDEO_COLOR_0 {
pub YCbCr: D3D11_VIDEO_COLOR_YCbCrA,
pub RGBA: D3D11_VIDEO_COLOR_RGBA,
}
impl Default for D3D11_VIDEO_COLOR_0 {
fn default() -> Self {
unsafe { core::mem::zeroed() }
}
}
#[repr(C)]
#[derive(Clone, Copy, Debug, PartialEq)]
pub struct D3D11_VIDEO_COLOR_RGBA {
pub R: f32,
pub G: f32,
pub B: f32,
pub A: f32,
}
impl Default for D3D11_VIDEO_COLOR_RGBA {
fn default() -> Self {
unsafe { core::mem::zeroed() }
}
}
#[repr(C)]
#[derive(Clone, Copy, Debug, PartialEq)]
pub struct D3D11_VIDEO_COLOR_YCbCrA {
pub Y: f32,
pub Cb: f32,
pub Cr: f32,
pub A: f32,
}
impl Default for D3D11_VIDEO_COLOR_YCbCrA {
fn default() -> Self {
unsafe { core::mem::zeroed() }
}
}
#[repr(C)]
#[derive(Clone, Copy, Debug, PartialEq)]
pub struct D3D11_VIDEO_CONTENT_PROTECTION_CAPS {
pub Caps: u32,
pub KeyExchangeTypeCount: u32,
pub BlockAlignmentSize: u32,
pub ProtectedMemorySize: u64,
}
impl Default for D3D11_VIDEO_CONTENT_PROTECTION_CAPS {
fn default() -> Self {
unsafe { core::mem::zeroed() }
}
}
#[repr(C)]
#[derive(Clone, Debug, PartialEq)]
pub struct D3D11_VIDEO_DECODER_BEGIN_FRAME_CRYPTO_SESSION {
pub pCryptoSession: core::mem::ManuallyDrop<Option<ID3D11CryptoSession>>,
pub BlobSize: u32,
pub pBlob: *mut core::ffi::c_void,
pub pKeyInfoId: *mut windows_core::GUID,
pub PrivateDataSize: u32,
pub pPrivateData: *mut core::ffi::c_void,
}
impl Default for D3D11_VIDEO_DECODER_BEGIN_FRAME_CRYPTO_SESSION {
fn default() -> Self {
unsafe { core::mem::zeroed() }
}
}
pub const D3D11_VIDEO_DECODER_BUFFER_BITSTREAM: D3D11_VIDEO_DECODER_BUFFER_TYPE =
D3D11_VIDEO_DECODER_BUFFER_TYPE(6i32);
pub const D3D11_VIDEO_DECODER_BUFFER_DEBLOCKING_CONTROL: D3D11_VIDEO_DECODER_BUFFER_TYPE =
D3D11_VIDEO_DECODER_BUFFER_TYPE(3i32);
#[repr(C)]
#[derive(Clone, Copy, Debug, PartialEq)]
pub struct D3D11_VIDEO_DECODER_BUFFER_DESC {
pub BufferType: D3D11_VIDEO_DECODER_BUFFER_TYPE,
pub BufferIndex: u32,
pub DataOffset: u32,
pub DataSize: u32,
pub FirstMBaddress: u32,
pub NumMBsInBuffer: u32,
pub Width: u32,
pub Height: u32,
pub Stride: u32,
pub ReservedBits: u32,
pub pIV: *mut core::ffi::c_void,
pub IVSize: u32,
pub PartialEncryption: crate::Foundation::BOOL,
pub EncryptedBlockInfo: D3D11_ENCRYPTED_BLOCK_INFO,
}
impl Default for D3D11_VIDEO_DECODER_BUFFER_DESC {
fn default() -> Self {
unsafe { core::mem::zeroed() }
}
}
#[repr(C)]
#[derive(Clone, Copy, Debug, PartialEq)]
pub struct D3D11_VIDEO_DECODER_BUFFER_DESC1 {
pub BufferType: D3D11_VIDEO_DECODER_BUFFER_TYPE,
pub DataOffset: u32,
pub DataSize: u32,
pub pIV: *mut core::ffi::c_void,
pub IVSize: u32,
pub pSubSampleMappingBlock: *mut D3D11_VIDEO_DECODER_SUB_SAMPLE_MAPPING_BLOCK,
pub SubSampleMappingCount: u32,
}
impl Default for D3D11_VIDEO_DECODER_BUFFER_DESC1 {
fn default() -> Self {
unsafe { core::mem::zeroed() }
}
}
#[repr(C)]
#[derive(Clone, Copy, Debug, PartialEq)]
pub struct D3D11_VIDEO_DECODER_BUFFER_DESC2 {
pub BufferType: D3D11_VIDEO_DECODER_BUFFER_TYPE,
pub DataOffset: u32,
pub DataSize: u32,
pub pIV: *mut core::ffi::c_void,
pub IVSize: u32,
pub pSubSampleMappingBlock: *mut D3D11_VIDEO_DECODER_SUB_SAMPLE_MAPPING_BLOCK,
pub SubSampleMappingCount: u32,
pub cBlocksStripeEncrypted: u32,
pub cBlocksStripeClear: u32,
}
impl Default for D3D11_VIDEO_DECODER_BUFFER_DESC2 {
fn default() -> Self {
unsafe { core::mem::zeroed() }
}
}
pub const D3D11_VIDEO_DECODER_BUFFER_FILM_GRAIN: D3D11_VIDEO_DECODER_BUFFER_TYPE =
D3D11_VIDEO_DECODER_BUFFER_TYPE(8i32);
pub const D3D11_VIDEO_DECODER_BUFFER_INVERSE_QUANTIZATION_MATRIX: D3D11_VIDEO_DECODER_BUFFER_TYPE =
D3D11_VIDEO_DECODER_BUFFER_TYPE(4i32);
pub const D3D11_VIDEO_DECODER_BUFFER_MACROBLOCK_CONTROL: D3D11_VIDEO_DECODER_BUFFER_TYPE =
D3D11_VIDEO_DECODER_BUFFER_TYPE(1i32);
pub const D3D11_VIDEO_DECODER_BUFFER_MOTION_VECTOR: D3D11_VIDEO_DECODER_BUFFER_TYPE =
D3D11_VIDEO_DECODER_BUFFER_TYPE(7i32);
pub const D3D11_VIDEO_DECODER_BUFFER_PICTURE_PARAMETERS: D3D11_VIDEO_DECODER_BUFFER_TYPE =
D3D11_VIDEO_DECODER_BUFFER_TYPE(0i32);
pub const D3D11_VIDEO_DECODER_BUFFER_RESIDUAL_DIFFERENCE: D3D11_VIDEO_DECODER_BUFFER_TYPE =
D3D11_VIDEO_DECODER_BUFFER_TYPE(2i32);
pub const D3D11_VIDEO_DECODER_BUFFER_SLICE_CONTROL: D3D11_VIDEO_DECODER_BUFFER_TYPE =
D3D11_VIDEO_DECODER_BUFFER_TYPE(5i32);
#[repr(transparent)]
#[derive(Clone, Copy, Debug, Default, Eq, PartialEq)]
pub struct D3D11_VIDEO_DECODER_BUFFER_TYPE(pub i32);
#[repr(transparent)]
#[derive(Clone, Copy, Debug, Default, Eq, PartialEq)]
pub struct D3D11_VIDEO_DECODER_CAPS(pub i32);
pub const D3D11_VIDEO_DECODER_CAPS_DOWNSAMPLE: D3D11_VIDEO_DECODER_CAPS =
D3D11_VIDEO_DECODER_CAPS(1i32);
pub const D3D11_VIDEO_DECODER_CAPS_DOWNSAMPLE_DYNAMIC: D3D11_VIDEO_DECODER_CAPS =
D3D11_VIDEO_DECODER_CAPS(4i32);
pub const D3D11_VIDEO_DECODER_CAPS_DOWNSAMPLE_REQUIRED: D3D11_VIDEO_DECODER_CAPS =
D3D11_VIDEO_DECODER_CAPS(8i32);
pub const D3D11_VIDEO_DECODER_CAPS_NON_REAL_TIME: D3D11_VIDEO_DECODER_CAPS =
D3D11_VIDEO_DECODER_CAPS(2i32);
pub const D3D11_VIDEO_DECODER_CAPS_UNSUPPORTED: D3D11_VIDEO_DECODER_CAPS =
D3D11_VIDEO_DECODER_CAPS(16i32);
#[repr(C)]
#[derive(Clone, Copy, Debug, PartialEq)]
pub struct D3D11_VIDEO_DECODER_CONFIG {
pub guidConfigBitstreamEncryption: windows_core::GUID,
pub guidConfigMBcontrolEncryption: windows_core::GUID,
pub guidConfigResidDiffEncryption: windows_core::GUID,
pub ConfigBitstreamRaw: u32,
pub ConfigMBcontrolRasterOrder: u32,
pub ConfigResidDiffHost: u32,
pub ConfigSpatialResid8: u32,
pub ConfigResid8Subtraction: u32,
pub ConfigSpatialHost8or9Clipping: u32,
pub ConfigSpatialResidInterleaved: u32,
pub ConfigIntraResidUnsigned: u32,
pub ConfigResidDiffAccelerator: u32,
pub ConfigHostInverseScan: u32,
pub ConfigSpecificIDCT: u32,
pub Config4GroupedCoefs: u32,
pub ConfigMinRenderTargetBuffCount: u16,
pub ConfigDecoderSpecific: u16,
}
impl Default for D3D11_VIDEO_DECODER_CONFIG {
fn default() -> Self {
unsafe { core::mem::zeroed() }
}
}
#[repr(C)]
#[cfg(feature = "Win32_Graphics_Dxgi_Common")]
#[derive(Clone, Copy, Debug, PartialEq)]
pub struct D3D11_VIDEO_DECODER_DESC {
pub Guid: windows_core::GUID,
pub SampleWidth: u32,
pub SampleHeight: u32,
pub OutputFormat: crate::Dxgi::Common::DXGI_FORMAT,
}
#[cfg(feature = "Win32_Graphics_Dxgi_Common")]
impl Default for D3D11_VIDEO_DECODER_DESC {
fn default() -> Self {
unsafe { core::mem::zeroed() }
}
}
#[repr(C)]
#[derive(Clone, Copy, Debug, PartialEq)]
pub struct D3D11_VIDEO_DECODER_EXTENSION {
pub Function: u32,
pub pPrivateInputData: *mut core::ffi::c_void,
pub PrivateInputDataSize: u32,
pub pPrivateOutputData: *mut core::ffi::c_void,
pub PrivateOutputDataSize: u32,
pub ResourceCount: u32,
pub ppResourceList: *mut Option<ID3D11Resource>,
}
impl Default for D3D11_VIDEO_DECODER_EXTENSION {
fn default() -> Self {
unsafe { core::mem::zeroed() }
}
}
#[repr(transparent)]
#[derive(Clone, Copy, Debug, Default, Eq, PartialEq)]
pub struct D3D11_VIDEO_DECODER_HISTOGRAM_COMPONENT(pub i32);
pub const D3D11_VIDEO_DECODER_HISTOGRAM_COMPONENT_A: D3D11_VIDEO_DECODER_HISTOGRAM_COMPONENT =
D3D11_VIDEO_DECODER_HISTOGRAM_COMPONENT(3i32);
pub const D3D11_VIDEO_DECODER_HISTOGRAM_COMPONENT_B: D3D11_VIDEO_DECODER_HISTOGRAM_COMPONENT =
D3D11_VIDEO_DECODER_HISTOGRAM_COMPONENT(2i32);
#[repr(transparent)]
#[derive(Clone, Copy, Debug, Default, Eq, PartialEq)]
pub struct D3D11_VIDEO_DECODER_HISTOGRAM_COMPONENT_FLAGS(pub i32);
impl D3D11_VIDEO_DECODER_HISTOGRAM_COMPONENT_FLAGS {
pub const fn contains(&self, other: Self) -> bool {
self.0 & other.0 == other.0
}
}
impl core::ops::BitOr for D3D11_VIDEO_DECODER_HISTOGRAM_COMPONENT_FLAGS {
type Output = Self;
fn bitor(self, other: Self) -> Self {
Self(self.0 | other.0)
}
}
impl core::ops::BitAnd for D3D11_VIDEO_DECODER_HISTOGRAM_COMPONENT_FLAGS {
type Output = Self;
fn bitand(self, other: Self) -> Self {
Self(self.0 & other.0)
}
}
impl core::ops::BitOrAssign for D3D11_VIDEO_DECODER_HISTOGRAM_COMPONENT_FLAGS {
fn bitor_assign(&mut self, other: Self) {
self.0.bitor_assign(other.0)
}
}
impl core::ops::BitAndAssign for D3D11_VIDEO_DECODER_HISTOGRAM_COMPONENT_FLAGS {
fn bitand_assign(&mut self, other: Self) {
self.0.bitand_assign(other.0)
}
}
impl core::ops::Not for D3D11_VIDEO_DECODER_HISTOGRAM_COMPONENT_FLAGS {
type Output = Self;
fn not(self) -> Self {
Self(self.0.not())
}
}
pub const D3D11_VIDEO_DECODER_HISTOGRAM_COMPONENT_FLAG_A:
D3D11_VIDEO_DECODER_HISTOGRAM_COMPONENT_FLAGS =
D3D11_VIDEO_DECODER_HISTOGRAM_COMPONENT_FLAGS(8i32);
pub const D3D11_VIDEO_DECODER_HISTOGRAM_COMPONENT_FLAG_B:
D3D11_VIDEO_DECODER_HISTOGRAM_COMPONENT_FLAGS =
D3D11_VIDEO_DECODER_HISTOGRAM_COMPONENT_FLAGS(4i32);
pub const D3D11_VIDEO_DECODER_HISTOGRAM_COMPONENT_FLAG_G:
D3D11_VIDEO_DECODER_HISTOGRAM_COMPONENT_FLAGS =
D3D11_VIDEO_DECODER_HISTOGRAM_COMPONENT_FLAGS(2i32);
pub const D3D11_VIDEO_DECODER_HISTOGRAM_COMPONENT_FLAG_NONE:
D3D11_VIDEO_DECODER_HISTOGRAM_COMPONENT_FLAGS =
D3D11_VIDEO_DECODER_HISTOGRAM_COMPONENT_FLAGS(0i32);
pub const D3D11_VIDEO_DECODER_HISTOGRAM_COMPONENT_FLAG_R:
D3D11_VIDEO_DECODER_HISTOGRAM_COMPONENT_FLAGS =
D3D11_VIDEO_DECODER_HISTOGRAM_COMPONENT_FLAGS(1i32);
pub const D3D11_VIDEO_DECODER_HISTOGRAM_COMPONENT_FLAG_U:
D3D11_VIDEO_DECODER_HISTOGRAM_COMPONENT_FLAGS =
D3D11_VIDEO_DECODER_HISTOGRAM_COMPONENT_FLAGS(2i32);
pub const D3D11_VIDEO_DECODER_HISTOGRAM_COMPONENT_FLAG_V:
D3D11_VIDEO_DECODER_HISTOGRAM_COMPONENT_FLAGS =
D3D11_VIDEO_DECODER_HISTOGRAM_COMPONENT_FLAGS(4i32);
pub const D3D11_VIDEO_DECODER_HISTOGRAM_COMPONENT_FLAG_Y:
D3D11_VIDEO_DECODER_HISTOGRAM_COMPONENT_FLAGS =
D3D11_VIDEO_DECODER_HISTOGRAM_COMPONENT_FLAGS(1i32);
pub const D3D11_VIDEO_DECODER_HISTOGRAM_COMPONENT_G: D3D11_VIDEO_DECODER_HISTOGRAM_COMPONENT =
D3D11_VIDEO_DECODER_HISTOGRAM_COMPONENT(1i32);
pub const D3D11_VIDEO_DECODER_HISTOGRAM_COMPONENT_R: D3D11_VIDEO_DECODER_HISTOGRAM_COMPONENT =
D3D11_VIDEO_DECODER_HISTOGRAM_COMPONENT(0i32);
pub const D3D11_VIDEO_DECODER_HISTOGRAM_COMPONENT_U: D3D11_VIDEO_DECODER_HISTOGRAM_COMPONENT =
D3D11_VIDEO_DECODER_HISTOGRAM_COMPONENT(1i32);
pub const D3D11_VIDEO_DECODER_HISTOGRAM_COMPONENT_V: D3D11_VIDEO_DECODER_HISTOGRAM_COMPONENT =
D3D11_VIDEO_DECODER_HISTOGRAM_COMPONENT(2i32);
pub const D3D11_VIDEO_DECODER_HISTOGRAM_COMPONENT_Y: D3D11_VIDEO_DECODER_HISTOGRAM_COMPONENT =
D3D11_VIDEO_DECODER_HISTOGRAM_COMPONENT(0i32);
#[repr(C)]
#[derive(Clone, Copy)]
pub struct D3D11_VIDEO_DECODER_OUTPUT_VIEW_DESC {
pub DecodeProfile: windows_core::GUID,
pub ViewDimension: D3D11_VDOV_DIMENSION,
pub Anonymous: D3D11_VIDEO_DECODER_OUTPUT_VIEW_DESC_0,
}
impl Default for D3D11_VIDEO_DECODER_OUTPUT_VIEW_DESC {
fn default() -> Self {
unsafe { core::mem::zeroed() }
}
}
#[repr(C)]
#[derive(Clone, Copy)]
pub union D3D11_VIDEO_DECODER_OUTPUT_VIEW_DESC_0 {
pub Texture2D: D3D11_TEX2D_VDOV,
}
impl Default for D3D11_VIDEO_DECODER_OUTPUT_VIEW_DESC_0 {
fn default() -> Self {
unsafe { core::mem::zeroed() }
}
}
#[repr(C)]
#[derive(Clone, Copy, Debug, PartialEq)]
pub struct D3D11_VIDEO_DECODER_SUB_SAMPLE_MAPPING_BLOCK {
pub ClearSize: u32,
pub EncryptedSize: u32,
}
impl Default for D3D11_VIDEO_DECODER_SUB_SAMPLE_MAPPING_BLOCK {
fn default() -> Self {
unsafe { core::mem::zeroed() }
}
}
#[repr(transparent)]
#[derive(Clone, Copy, Debug, Default, Eq, PartialEq)]
pub struct D3D11_VIDEO_FRAME_FORMAT(pub i32);
pub const D3D11_VIDEO_FRAME_FORMAT_INTERLACED_BOTTOM_FIELD_FIRST: D3D11_VIDEO_FRAME_FORMAT =
D3D11_VIDEO_FRAME_FORMAT(2i32);
pub const D3D11_VIDEO_FRAME_FORMAT_INTERLACED_TOP_FIELD_FIRST: D3D11_VIDEO_FRAME_FORMAT =
D3D11_VIDEO_FRAME_FORMAT(1i32);
pub const D3D11_VIDEO_FRAME_FORMAT_PROGRESSIVE: D3D11_VIDEO_FRAME_FORMAT =
D3D11_VIDEO_FRAME_FORMAT(0i32);
#[repr(transparent)]
#[derive(Clone, Copy, Debug, Default, Eq, PartialEq)]
pub struct D3D11_VIDEO_PROCESSOR_ALPHA_FILL_MODE(pub i32);
pub const D3D11_VIDEO_PROCESSOR_ALPHA_FILL_MODE_BACKGROUND: D3D11_VIDEO_PROCESSOR_ALPHA_FILL_MODE =
D3D11_VIDEO_PROCESSOR_ALPHA_FILL_MODE(1i32);
pub const D3D11_VIDEO_PROCESSOR_ALPHA_FILL_MODE_DESTINATION: D3D11_VIDEO_PROCESSOR_ALPHA_FILL_MODE =
D3D11_VIDEO_PROCESSOR_ALPHA_FILL_MODE(2i32);
pub const D3D11_VIDEO_PROCESSOR_ALPHA_FILL_MODE_OPAQUE: D3D11_VIDEO_PROCESSOR_ALPHA_FILL_MODE =
D3D11_VIDEO_PROCESSOR_ALPHA_FILL_MODE(0i32);
pub const D3D11_VIDEO_PROCESSOR_ALPHA_FILL_MODE_SOURCE_STREAM:
D3D11_VIDEO_PROCESSOR_ALPHA_FILL_MODE = D3D11_VIDEO_PROCESSOR_ALPHA_FILL_MODE(3i32);
#[repr(transparent)]
#[derive(Clone, Copy, Debug, Default, Eq, PartialEq)]
pub struct D3D11_VIDEO_PROCESSOR_AUTO_STREAM_CAPS(pub i32);
pub const D3D11_VIDEO_PROCESSOR_AUTO_STREAM_CAPS_ANAMORPHIC_SCALING:
D3D11_VIDEO_PROCESSOR_AUTO_STREAM_CAPS = D3D11_VIDEO_PROCESSOR_AUTO_STREAM_CAPS(128i32);
pub const D3D11_VIDEO_PROCESSOR_AUTO_STREAM_CAPS_COLOR_CORRECTION:
D3D11_VIDEO_PROCESSOR_AUTO_STREAM_CAPS = D3D11_VIDEO_PROCESSOR_AUTO_STREAM_CAPS(8i32);
pub const D3D11_VIDEO_PROCESSOR_AUTO_STREAM_CAPS_DENOISE: D3D11_VIDEO_PROCESSOR_AUTO_STREAM_CAPS =
D3D11_VIDEO_PROCESSOR_AUTO_STREAM_CAPS(1i32);
pub const D3D11_VIDEO_PROCESSOR_AUTO_STREAM_CAPS_DERINGING: D3D11_VIDEO_PROCESSOR_AUTO_STREAM_CAPS =
D3D11_VIDEO_PROCESSOR_AUTO_STREAM_CAPS(2i32);
pub const D3D11_VIDEO_PROCESSOR_AUTO_STREAM_CAPS_EDGE_ENHANCEMENT:
D3D11_VIDEO_PROCESSOR_AUTO_STREAM_CAPS = D3D11_VIDEO_PROCESSOR_AUTO_STREAM_CAPS(4i32);
pub const D3D11_VIDEO_PROCESSOR_AUTO_STREAM_CAPS_FLESH_TONE_MAPPING:
D3D11_VIDEO_PROCESSOR_AUTO_STREAM_CAPS = D3D11_VIDEO_PROCESSOR_AUTO_STREAM_CAPS(16i32);
pub const D3D11_VIDEO_PROCESSOR_AUTO_STREAM_CAPS_IMAGE_STABILIZATION:
D3D11_VIDEO_PROCESSOR_AUTO_STREAM_CAPS = D3D11_VIDEO_PROCESSOR_AUTO_STREAM_CAPS(32i32);
pub const D3D11_VIDEO_PROCESSOR_AUTO_STREAM_CAPS_SUPER_RESOLUTION:
D3D11_VIDEO_PROCESSOR_AUTO_STREAM_CAPS = D3D11_VIDEO_PROCESSOR_AUTO_STREAM_CAPS(64i32);
#[repr(transparent)]
#[derive(Clone, Copy, Debug, Default, Eq, PartialEq)]
pub struct D3D11_VIDEO_PROCESSOR_BEHAVIOR_HINTS(pub i32);
pub const D3D11_VIDEO_PROCESSOR_BEHAVIOR_HINT_MULTIPLANE_OVERLAY_COLOR_SPACE_CONVERSION:
D3D11_VIDEO_PROCESSOR_BEHAVIOR_HINTS = D3D11_VIDEO_PROCESSOR_BEHAVIOR_HINTS(4i32);
pub const D3D11_VIDEO_PROCESSOR_BEHAVIOR_HINT_MULTIPLANE_OVERLAY_RESIZE:
D3D11_VIDEO_PROCESSOR_BEHAVIOR_HINTS = D3D11_VIDEO_PROCESSOR_BEHAVIOR_HINTS(2i32);
pub const D3D11_VIDEO_PROCESSOR_BEHAVIOR_HINT_MULTIPLANE_OVERLAY_ROTATION:
D3D11_VIDEO_PROCESSOR_BEHAVIOR_HINTS = D3D11_VIDEO_PROCESSOR_BEHAVIOR_HINTS(1i32);
pub const D3D11_VIDEO_PROCESSOR_BEHAVIOR_HINT_TRIPLE_BUFFER_OUTPUT:
D3D11_VIDEO_PROCESSOR_BEHAVIOR_HINTS = D3D11_VIDEO_PROCESSOR_BEHAVIOR_HINTS(8i32);
#[repr(C)]
#[derive(Clone, Copy, Debug, PartialEq)]
pub struct D3D11_VIDEO_PROCESSOR_CAPS {
pub DeviceCaps: u32,
pub FeatureCaps: u32,
pub FilterCaps: u32,
pub InputFormatCaps: u32,
pub AutoStreamCaps: u32,
pub StereoCaps: u32,
pub RateConversionCapsCount: u32,
pub MaxInputStreams: u32,
pub MaxStreamStates: u32,
}
impl Default for D3D11_VIDEO_PROCESSOR_CAPS {
fn default() -> Self {
unsafe { core::mem::zeroed() }
}
}
#[repr(C)]
#[derive(Clone, Copy, Debug, PartialEq)]
pub struct D3D11_VIDEO_PROCESSOR_COLOR_SPACE {
pub _bitfield: u32,
}
impl Default for D3D11_VIDEO_PROCESSOR_COLOR_SPACE {
fn default() -> Self {
unsafe { core::mem::zeroed() }
}
}
#[repr(C)]
#[cfg(feature = "Win32_Graphics_Dxgi_Common")]
#[derive(Clone, Copy, Debug, PartialEq)]
pub struct D3D11_VIDEO_PROCESSOR_CONTENT_DESC {
pub InputFrameFormat: D3D11_VIDEO_FRAME_FORMAT,
pub InputFrameRate: crate::Dxgi::Common::DXGI_RATIONAL,
pub InputWidth: u32,
pub InputHeight: u32,
pub OutputFrameRate: crate::Dxgi::Common::DXGI_RATIONAL,
pub OutputWidth: u32,
pub OutputHeight: u32,
pub Usage: D3D11_VIDEO_USAGE,
}
#[cfg(feature = "Win32_Graphics_Dxgi_Common")]
impl Default for D3D11_VIDEO_PROCESSOR_CONTENT_DESC {
fn default() -> Self {
unsafe { core::mem::zeroed() }
}
}
#[repr(C)]
#[cfg(feature = "Win32_Graphics_Dxgi_Common")]
#[derive(Clone, Copy, Debug, PartialEq)]
pub struct D3D11_VIDEO_PROCESSOR_CUSTOM_RATE {
pub CustomRate: crate::Dxgi::Common::DXGI_RATIONAL,
pub OutputFrames: u32,
pub InputInterlaced: crate::Foundation::BOOL,
pub InputFramesOrFields: u32,
}
#[cfg(feature = "Win32_Graphics_Dxgi_Common")]
impl Default for D3D11_VIDEO_PROCESSOR_CUSTOM_RATE {
fn default() -> Self {
unsafe { core::mem::zeroed() }
}
}
#[repr(transparent)]
#[derive(Clone, Copy, Debug, Default, Eq, PartialEq)]
pub struct D3D11_VIDEO_PROCESSOR_DEVICE_CAPS(pub i32);
pub const D3D11_VIDEO_PROCESSOR_DEVICE_CAPS_LINEAR_SPACE: D3D11_VIDEO_PROCESSOR_DEVICE_CAPS =
D3D11_VIDEO_PROCESSOR_DEVICE_CAPS(1i32);
pub const D3D11_VIDEO_PROCESSOR_DEVICE_CAPS_NOMINAL_RANGE: D3D11_VIDEO_PROCESSOR_DEVICE_CAPS =
D3D11_VIDEO_PROCESSOR_DEVICE_CAPS(16i32);
pub const D3D11_VIDEO_PROCESSOR_DEVICE_CAPS_RGB_RANGE_CONVERSION:
D3D11_VIDEO_PROCESSOR_DEVICE_CAPS = D3D11_VIDEO_PROCESSOR_DEVICE_CAPS(4i32);
pub const D3D11_VIDEO_PROCESSOR_DEVICE_CAPS_YCbCr_MATRIX_CONVERSION:
D3D11_VIDEO_PROCESSOR_DEVICE_CAPS = D3D11_VIDEO_PROCESSOR_DEVICE_CAPS(8i32);
pub const D3D11_VIDEO_PROCESSOR_DEVICE_CAPS_xvYCC: D3D11_VIDEO_PROCESSOR_DEVICE_CAPS =
D3D11_VIDEO_PROCESSOR_DEVICE_CAPS(2i32);
#[repr(transparent)]
#[derive(Clone, Copy, Debug, Default, Eq, PartialEq)]
pub struct D3D11_VIDEO_PROCESSOR_FEATURE_CAPS(pub i32);
pub const D3D11_VIDEO_PROCESSOR_FEATURE_CAPS_ALPHA_FILL: D3D11_VIDEO_PROCESSOR_FEATURE_CAPS =
D3D11_VIDEO_PROCESSOR_FEATURE_CAPS(1i32);
pub const D3D11_VIDEO_PROCESSOR_FEATURE_CAPS_ALPHA_PALETTE: D3D11_VIDEO_PROCESSOR_FEATURE_CAPS =
D3D11_VIDEO_PROCESSOR_FEATURE_CAPS(8i32);
pub const D3D11_VIDEO_PROCESSOR_FEATURE_CAPS_ALPHA_STREAM: D3D11_VIDEO_PROCESSOR_FEATURE_CAPS =
D3D11_VIDEO_PROCESSOR_FEATURE_CAPS(128i32);
pub const D3D11_VIDEO_PROCESSOR_FEATURE_CAPS_CONSTRICTION: D3D11_VIDEO_PROCESSOR_FEATURE_CAPS =
D3D11_VIDEO_PROCESSOR_FEATURE_CAPS(2i32);
pub const D3D11_VIDEO_PROCESSOR_FEATURE_CAPS_LEGACY: D3D11_VIDEO_PROCESSOR_FEATURE_CAPS =
D3D11_VIDEO_PROCESSOR_FEATURE_CAPS(16i32);
pub const D3D11_VIDEO_PROCESSOR_FEATURE_CAPS_LUMA_KEY: D3D11_VIDEO_PROCESSOR_FEATURE_CAPS =
D3D11_VIDEO_PROCESSOR_FEATURE_CAPS(4i32);
pub const D3D11_VIDEO_PROCESSOR_FEATURE_CAPS_METADATA_HDR10: D3D11_VIDEO_PROCESSOR_FEATURE_CAPS =
D3D11_VIDEO_PROCESSOR_FEATURE_CAPS(2048i32);
pub const D3D11_VIDEO_PROCESSOR_FEATURE_CAPS_MIRROR: D3D11_VIDEO_PROCESSOR_FEATURE_CAPS =
D3D11_VIDEO_PROCESSOR_FEATURE_CAPS(512i32);
pub const D3D11_VIDEO_PROCESSOR_FEATURE_CAPS_PIXEL_ASPECT_RATIO:
D3D11_VIDEO_PROCESSOR_FEATURE_CAPS = D3D11_VIDEO_PROCESSOR_FEATURE_CAPS(256i32);
pub const D3D11_VIDEO_PROCESSOR_FEATURE_CAPS_ROTATION: D3D11_VIDEO_PROCESSOR_FEATURE_CAPS =
D3D11_VIDEO_PROCESSOR_FEATURE_CAPS(64i32);
pub const D3D11_VIDEO_PROCESSOR_FEATURE_CAPS_SHADER_USAGE: D3D11_VIDEO_PROCESSOR_FEATURE_CAPS =
D3D11_VIDEO_PROCESSOR_FEATURE_CAPS(1024i32);
pub const D3D11_VIDEO_PROCESSOR_FEATURE_CAPS_STEREO: D3D11_VIDEO_PROCESSOR_FEATURE_CAPS =
D3D11_VIDEO_PROCESSOR_FEATURE_CAPS(32i32);
#[repr(transparent)]
#[derive(Clone, Copy, Debug, Default, Eq, PartialEq)]
pub struct D3D11_VIDEO_PROCESSOR_FILTER(pub i32);
pub const D3D11_VIDEO_PROCESSOR_FILTER_ANAMORPHIC_SCALING: D3D11_VIDEO_PROCESSOR_FILTER =
D3D11_VIDEO_PROCESSOR_FILTER(6i32);
pub const D3D11_VIDEO_PROCESSOR_FILTER_BRIGHTNESS: D3D11_VIDEO_PROCESSOR_FILTER =
D3D11_VIDEO_PROCESSOR_FILTER(0i32);
#[repr(transparent)]
#[derive(Clone, Copy, Debug, Default, Eq, PartialEq)]
pub struct D3D11_VIDEO_PROCESSOR_FILTER_CAPS(pub i32);
pub const D3D11_VIDEO_PROCESSOR_FILTER_CAPS_ANAMORPHIC_SCALING: D3D11_VIDEO_PROCESSOR_FILTER_CAPS =
D3D11_VIDEO_PROCESSOR_FILTER_CAPS(64i32);
pub const D3D11_VIDEO_PROCESSOR_FILTER_CAPS_BRIGHTNESS: D3D11_VIDEO_PROCESSOR_FILTER_CAPS =
D3D11_VIDEO_PROCESSOR_FILTER_CAPS(1i32);
pub const D3D11_VIDEO_PROCESSOR_FILTER_CAPS_CONTRAST: D3D11_VIDEO_PROCESSOR_FILTER_CAPS =
D3D11_VIDEO_PROCESSOR_FILTER_CAPS(2i32);
pub const D3D11_VIDEO_PROCESSOR_FILTER_CAPS_EDGE_ENHANCEMENT: D3D11_VIDEO_PROCESSOR_FILTER_CAPS =
D3D11_VIDEO_PROCESSOR_FILTER_CAPS(32i32);
pub const D3D11_VIDEO_PROCESSOR_FILTER_CAPS_HUE: D3D11_VIDEO_PROCESSOR_FILTER_CAPS =
D3D11_VIDEO_PROCESSOR_FILTER_CAPS(4i32);
pub const D3D11_VIDEO_PROCESSOR_FILTER_CAPS_NOISE_REDUCTION: D3D11_VIDEO_PROCESSOR_FILTER_CAPS =
D3D11_VIDEO_PROCESSOR_FILTER_CAPS(16i32);
pub const D3D11_VIDEO_PROCESSOR_FILTER_CAPS_SATURATION: D3D11_VIDEO_PROCESSOR_FILTER_CAPS =
D3D11_VIDEO_PROCESSOR_FILTER_CAPS(8i32);
pub const D3D11_VIDEO_PROCESSOR_FILTER_CAPS_STEREO_ADJUSTMENT: D3D11_VIDEO_PROCESSOR_FILTER_CAPS =
D3D11_VIDEO_PROCESSOR_FILTER_CAPS(128i32);
pub const D3D11_VIDEO_PROCESSOR_FILTER_CONTRAST: D3D11_VIDEO_PROCESSOR_FILTER =
D3D11_VIDEO_PROCESSOR_FILTER(1i32);
pub const D3D11_VIDEO_PROCESSOR_FILTER_EDGE_ENHANCEMENT: D3D11_VIDEO_PROCESSOR_FILTER =
D3D11_VIDEO_PROCESSOR_FILTER(5i32);
pub const D3D11_VIDEO_PROCESSOR_FILTER_HUE: D3D11_VIDEO_PROCESSOR_FILTER =
D3D11_VIDEO_PROCESSOR_FILTER(2i32);
pub const D3D11_VIDEO_PROCESSOR_FILTER_NOISE_REDUCTION: D3D11_VIDEO_PROCESSOR_FILTER =
D3D11_VIDEO_PROCESSOR_FILTER(4i32);
#[repr(C)]
#[derive(Clone, Copy, Debug, PartialEq)]
pub struct D3D11_VIDEO_PROCESSOR_FILTER_RANGE {
pub Minimum: i32,
pub Maximum: i32,
pub Default: i32,
pub Multiplier: f32,
}
impl Default for D3D11_VIDEO_PROCESSOR_FILTER_RANGE {
fn default() -> Self {
unsafe { core::mem::zeroed() }
}
}
pub const D3D11_VIDEO_PROCESSOR_FILTER_SATURATION: D3D11_VIDEO_PROCESSOR_FILTER =
D3D11_VIDEO_PROCESSOR_FILTER(3i32);
pub const D3D11_VIDEO_PROCESSOR_FILTER_STEREO_ADJUSTMENT: D3D11_VIDEO_PROCESSOR_FILTER =
D3D11_VIDEO_PROCESSOR_FILTER(7i32);
#[repr(transparent)]
#[derive(Clone, Copy, Debug, Default, Eq, PartialEq)]
pub struct D3D11_VIDEO_PROCESSOR_FORMAT_CAPS(pub i32);
pub const D3D11_VIDEO_PROCESSOR_FORMAT_CAPS_PALETTE_INTERLACED: D3D11_VIDEO_PROCESSOR_FORMAT_CAPS =
D3D11_VIDEO_PROCESSOR_FORMAT_CAPS(8i32);
pub const D3D11_VIDEO_PROCESSOR_FORMAT_CAPS_RGB_INTERLACED: D3D11_VIDEO_PROCESSOR_FORMAT_CAPS =
D3D11_VIDEO_PROCESSOR_FORMAT_CAPS(1i32);
pub const D3D11_VIDEO_PROCESSOR_FORMAT_CAPS_RGB_LUMA_KEY: D3D11_VIDEO_PROCESSOR_FORMAT_CAPS =
D3D11_VIDEO_PROCESSOR_FORMAT_CAPS(4i32);
pub const D3D11_VIDEO_PROCESSOR_FORMAT_CAPS_RGB_PROCAMP: D3D11_VIDEO_PROCESSOR_FORMAT_CAPS =
D3D11_VIDEO_PROCESSOR_FORMAT_CAPS(2i32);
#[repr(transparent)]
#[derive(Clone, Copy, Debug, Default, Eq, PartialEq)]
pub struct D3D11_VIDEO_PROCESSOR_FORMAT_SUPPORT(pub i32);
pub const D3D11_VIDEO_PROCESSOR_FORMAT_SUPPORT_INPUT: D3D11_VIDEO_PROCESSOR_FORMAT_SUPPORT =
D3D11_VIDEO_PROCESSOR_FORMAT_SUPPORT(1i32);
pub const D3D11_VIDEO_PROCESSOR_FORMAT_SUPPORT_OUTPUT: D3D11_VIDEO_PROCESSOR_FORMAT_SUPPORT =
D3D11_VIDEO_PROCESSOR_FORMAT_SUPPORT(2i32);
#[repr(C)]
#[derive(Clone, Copy)]
pub struct D3D11_VIDEO_PROCESSOR_INPUT_VIEW_DESC {
pub FourCC: u32,
pub ViewDimension: D3D11_VPIV_DIMENSION,
pub Anonymous: D3D11_VIDEO_PROCESSOR_INPUT_VIEW_DESC_0,
}
impl Default for D3D11_VIDEO_PROCESSOR_INPUT_VIEW_DESC {
fn default() -> Self {
unsafe { core::mem::zeroed() }
}
}
#[repr(C)]
#[derive(Clone, Copy)]
pub union D3D11_VIDEO_PROCESSOR_INPUT_VIEW_DESC_0 {
pub Texture2D: D3D11_TEX2D_VPIV,
}
impl Default for D3D11_VIDEO_PROCESSOR_INPUT_VIEW_DESC_0 {
fn default() -> Self {
unsafe { core::mem::zeroed() }
}
}
#[repr(transparent)]
#[derive(Clone, Copy, Debug, Default, Eq, PartialEq)]
pub struct D3D11_VIDEO_PROCESSOR_ITELECINE_CAPS(pub i32);
pub const D3D11_VIDEO_PROCESSOR_ITELECINE_CAPS_22: D3D11_VIDEO_PROCESSOR_ITELECINE_CAPS =
D3D11_VIDEO_PROCESSOR_ITELECINE_CAPS(2i32);
pub const D3D11_VIDEO_PROCESSOR_ITELECINE_CAPS_222222222223: D3D11_VIDEO_PROCESSOR_ITELECINE_CAPS =
D3D11_VIDEO_PROCESSOR_ITELECINE_CAPS(256i32);
pub const D3D11_VIDEO_PROCESSOR_ITELECINE_CAPS_2224: D3D11_VIDEO_PROCESSOR_ITELECINE_CAPS =
D3D11_VIDEO_PROCESSOR_ITELECINE_CAPS(4i32);
pub const D3D11_VIDEO_PROCESSOR_ITELECINE_CAPS_2332: D3D11_VIDEO_PROCESSOR_ITELECINE_CAPS =
D3D11_VIDEO_PROCESSOR_ITELECINE_CAPS(8i32);
pub const D3D11_VIDEO_PROCESSOR_ITELECINE_CAPS_32: D3D11_VIDEO_PROCESSOR_ITELECINE_CAPS =
D3D11_VIDEO_PROCESSOR_ITELECINE_CAPS(1i32);
pub const D3D11_VIDEO_PROCESSOR_ITELECINE_CAPS_32322: D3D11_VIDEO_PROCESSOR_ITELECINE_CAPS =
D3D11_VIDEO_PROCESSOR_ITELECINE_CAPS(16i32);
pub const D3D11_VIDEO_PROCESSOR_ITELECINE_CAPS_55: D3D11_VIDEO_PROCESSOR_ITELECINE_CAPS =
D3D11_VIDEO_PROCESSOR_ITELECINE_CAPS(32i32);
pub const D3D11_VIDEO_PROCESSOR_ITELECINE_CAPS_64: D3D11_VIDEO_PROCESSOR_ITELECINE_CAPS =
D3D11_VIDEO_PROCESSOR_ITELECINE_CAPS(64i32);
pub const D3D11_VIDEO_PROCESSOR_ITELECINE_CAPS_87: D3D11_VIDEO_PROCESSOR_ITELECINE_CAPS =
D3D11_VIDEO_PROCESSOR_ITELECINE_CAPS(128i32);
pub const D3D11_VIDEO_PROCESSOR_ITELECINE_CAPS_OTHER: D3D11_VIDEO_PROCESSOR_ITELECINE_CAPS =
D3D11_VIDEO_PROCESSOR_ITELECINE_CAPS(-2147483648i32);
#[repr(transparent)]
#[derive(Clone, Copy, Debug, Default, Eq, PartialEq)]
pub struct D3D11_VIDEO_PROCESSOR_NOMINAL_RANGE(pub i32);
pub const D3D11_VIDEO_PROCESSOR_NOMINAL_RANGE_0_255: D3D11_VIDEO_PROCESSOR_NOMINAL_RANGE =
D3D11_VIDEO_PROCESSOR_NOMINAL_RANGE(2i32);
pub const D3D11_VIDEO_PROCESSOR_NOMINAL_RANGE_16_235: D3D11_VIDEO_PROCESSOR_NOMINAL_RANGE =
D3D11_VIDEO_PROCESSOR_NOMINAL_RANGE(1i32);
pub const D3D11_VIDEO_PROCESSOR_NOMINAL_RANGE_UNDEFINED: D3D11_VIDEO_PROCESSOR_NOMINAL_RANGE =
D3D11_VIDEO_PROCESSOR_NOMINAL_RANGE(0i32);
#[repr(transparent)]
#[derive(Clone, Copy, Debug, Default, Eq, PartialEq)]
pub struct D3D11_VIDEO_PROCESSOR_OUTPUT_RATE(pub i32);
pub const D3D11_VIDEO_PROCESSOR_OUTPUT_RATE_CUSTOM: D3D11_VIDEO_PROCESSOR_OUTPUT_RATE =
D3D11_VIDEO_PROCESSOR_OUTPUT_RATE(2i32);
pub const D3D11_VIDEO_PROCESSOR_OUTPUT_RATE_HALF: D3D11_VIDEO_PROCESSOR_OUTPUT_RATE =
D3D11_VIDEO_PROCESSOR_OUTPUT_RATE(1i32);
pub const D3D11_VIDEO_PROCESSOR_OUTPUT_RATE_NORMAL: D3D11_VIDEO_PROCESSOR_OUTPUT_RATE =
D3D11_VIDEO_PROCESSOR_OUTPUT_RATE(0i32);
#[repr(C)]
#[derive(Clone, Copy)]
pub struct D3D11_VIDEO_PROCESSOR_OUTPUT_VIEW_DESC {
pub ViewDimension: D3D11_VPOV_DIMENSION,
pub Anonymous: D3D11_VIDEO_PROCESSOR_OUTPUT_VIEW_DESC_0,
}
impl Default for D3D11_VIDEO_PROCESSOR_OUTPUT_VIEW_DESC {
fn default() -> Self {
unsafe { core::mem::zeroed() }
}
}
#[repr(C)]
#[derive(Clone, Copy)]
pub union D3D11_VIDEO_PROCESSOR_OUTPUT_VIEW_DESC_0 {
pub Texture2D: D3D11_TEX2D_VPOV,
pub Texture2DArray: D3D11_TEX2D_ARRAY_VPOV,
}
impl Default for D3D11_VIDEO_PROCESSOR_OUTPUT_VIEW_DESC_0 {
fn default() -> Self {
unsafe { core::mem::zeroed() }
}
}
#[repr(transparent)]
#[derive(Clone, Copy, Debug, Default, Eq, PartialEq)]
pub struct D3D11_VIDEO_PROCESSOR_PROCESSOR_CAPS(pub i32);
pub const D3D11_VIDEO_PROCESSOR_PROCESSOR_CAPS_DEINTERLACE_ADAPTIVE:
D3D11_VIDEO_PROCESSOR_PROCESSOR_CAPS = D3D11_VIDEO_PROCESSOR_PROCESSOR_CAPS(4i32);
pub const D3D11_VIDEO_PROCESSOR_PROCESSOR_CAPS_DEINTERLACE_BLEND:
D3D11_VIDEO_PROCESSOR_PROCESSOR_CAPS = D3D11_VIDEO_PROCESSOR_PROCESSOR_CAPS(1i32);
pub const D3D11_VIDEO_PROCESSOR_PROCESSOR_CAPS_DEINTERLACE_BOB:
D3D11_VIDEO_PROCESSOR_PROCESSOR_CAPS = D3D11_VIDEO_PROCESSOR_PROCESSOR_CAPS(2i32);
pub const D3D11_VIDEO_PROCESSOR_PROCESSOR_CAPS_DEINTERLACE_MOTION_COMPENSATION:
D3D11_VIDEO_PROCESSOR_PROCESSOR_CAPS = D3D11_VIDEO_PROCESSOR_PROCESSOR_CAPS(8i32);
pub const D3D11_VIDEO_PROCESSOR_PROCESSOR_CAPS_FRAME_RATE_CONVERSION:
D3D11_VIDEO_PROCESSOR_PROCESSOR_CAPS = D3D11_VIDEO_PROCESSOR_PROCESSOR_CAPS(32i32);
pub const D3D11_VIDEO_PROCESSOR_PROCESSOR_CAPS_INVERSE_TELECINE:
D3D11_VIDEO_PROCESSOR_PROCESSOR_CAPS = D3D11_VIDEO_PROCESSOR_PROCESSOR_CAPS(16i32);
#[repr(C)]
#[derive(Clone, Copy, Debug, PartialEq)]
pub struct D3D11_VIDEO_PROCESSOR_RATE_CONVERSION_CAPS {
pub PastFrames: u32,
pub FutureFrames: u32,
pub ProcessorCaps: u32,
pub ITelecineCaps: u32,
pub CustomRateCount: u32,
}
impl Default for D3D11_VIDEO_PROCESSOR_RATE_CONVERSION_CAPS {
fn default() -> Self {
unsafe { core::mem::zeroed() }
}
}
#[repr(transparent)]
#[derive(Clone, Copy, Debug, Default, Eq, PartialEq)]
pub struct D3D11_VIDEO_PROCESSOR_ROTATION(pub i32);
pub const D3D11_VIDEO_PROCESSOR_ROTATION_180: D3D11_VIDEO_PROCESSOR_ROTATION =
D3D11_VIDEO_PROCESSOR_ROTATION(2i32);
pub const D3D11_VIDEO_PROCESSOR_ROTATION_270: D3D11_VIDEO_PROCESSOR_ROTATION =
D3D11_VIDEO_PROCESSOR_ROTATION(3i32);
pub const D3D11_VIDEO_PROCESSOR_ROTATION_90: D3D11_VIDEO_PROCESSOR_ROTATION =
D3D11_VIDEO_PROCESSOR_ROTATION(1i32);
pub const D3D11_VIDEO_PROCESSOR_ROTATION_IDENTITY: D3D11_VIDEO_PROCESSOR_ROTATION =
D3D11_VIDEO_PROCESSOR_ROTATION(0i32);
#[repr(transparent)]
#[derive(Clone, Copy, Debug, Default, Eq, PartialEq)]
pub struct D3D11_VIDEO_PROCESSOR_STEREO_CAPS(pub i32);
pub const D3D11_VIDEO_PROCESSOR_STEREO_CAPS_CHECKERBOARD: D3D11_VIDEO_PROCESSOR_STEREO_CAPS =
D3D11_VIDEO_PROCESSOR_STEREO_CAPS(8i32);
pub const D3D11_VIDEO_PROCESSOR_STEREO_CAPS_COLUMN_INTERLEAVED: D3D11_VIDEO_PROCESSOR_STEREO_CAPS =
D3D11_VIDEO_PROCESSOR_STEREO_CAPS(4i32);
pub const D3D11_VIDEO_PROCESSOR_STEREO_CAPS_FLIP_MODE: D3D11_VIDEO_PROCESSOR_STEREO_CAPS =
D3D11_VIDEO_PROCESSOR_STEREO_CAPS(16i32);
pub const D3D11_VIDEO_PROCESSOR_STEREO_CAPS_MONO_OFFSET: D3D11_VIDEO_PROCESSOR_STEREO_CAPS =
D3D11_VIDEO_PROCESSOR_STEREO_CAPS(1i32);
pub const D3D11_VIDEO_PROCESSOR_STEREO_CAPS_ROW_INTERLEAVED: D3D11_VIDEO_PROCESSOR_STEREO_CAPS =
D3D11_VIDEO_PROCESSOR_STEREO_CAPS(2i32);
pub const D3D11_VIDEO_PROCESSOR_STEREO_FLIP_FRAME0: D3D11_VIDEO_PROCESSOR_STEREO_FLIP_MODE =
D3D11_VIDEO_PROCESSOR_STEREO_FLIP_MODE(1i32);
pub const D3D11_VIDEO_PROCESSOR_STEREO_FLIP_FRAME1: D3D11_VIDEO_PROCESSOR_STEREO_FLIP_MODE =
D3D11_VIDEO_PROCESSOR_STEREO_FLIP_MODE(2i32);
#[repr(transparent)]
#[derive(Clone, Copy, Debug, Default, Eq, PartialEq)]
pub struct D3D11_VIDEO_PROCESSOR_STEREO_FLIP_MODE(pub i32);
pub const D3D11_VIDEO_PROCESSOR_STEREO_FLIP_NONE: D3D11_VIDEO_PROCESSOR_STEREO_FLIP_MODE =
D3D11_VIDEO_PROCESSOR_STEREO_FLIP_MODE(0i32);
#[repr(transparent)]
#[derive(Clone, Copy, Debug, Default, Eq, PartialEq)]
pub struct D3D11_VIDEO_PROCESSOR_STEREO_FORMAT(pub i32);
pub const D3D11_VIDEO_PROCESSOR_STEREO_FORMAT_CHECKERBOARD: D3D11_VIDEO_PROCESSOR_STEREO_FORMAT =
D3D11_VIDEO_PROCESSOR_STEREO_FORMAT(7i32);
pub const D3D11_VIDEO_PROCESSOR_STEREO_FORMAT_COLUMN_INTERLEAVED:
D3D11_VIDEO_PROCESSOR_STEREO_FORMAT = D3D11_VIDEO_PROCESSOR_STEREO_FORMAT(6i32);
pub const D3D11_VIDEO_PROCESSOR_STEREO_FORMAT_HORIZONTAL: D3D11_VIDEO_PROCESSOR_STEREO_FORMAT =
D3D11_VIDEO_PROCESSOR_STEREO_FORMAT(1i32);
pub const D3D11_VIDEO_PROCESSOR_STEREO_FORMAT_MONO: D3D11_VIDEO_PROCESSOR_STEREO_FORMAT =
D3D11_VIDEO_PROCESSOR_STEREO_FORMAT(0i32);
pub const D3D11_VIDEO_PROCESSOR_STEREO_FORMAT_MONO_OFFSET: D3D11_VIDEO_PROCESSOR_STEREO_FORMAT =
D3D11_VIDEO_PROCESSOR_STEREO_FORMAT(4i32);
pub const D3D11_VIDEO_PROCESSOR_STEREO_FORMAT_ROW_INTERLEAVED: D3D11_VIDEO_PROCESSOR_STEREO_FORMAT =
D3D11_VIDEO_PROCESSOR_STEREO_FORMAT(5i32);
pub const D3D11_VIDEO_PROCESSOR_STEREO_FORMAT_SEPARATE: D3D11_VIDEO_PROCESSOR_STEREO_FORMAT =
D3D11_VIDEO_PROCESSOR_STEREO_FORMAT(3i32);
pub const D3D11_VIDEO_PROCESSOR_STEREO_FORMAT_VERTICAL: D3D11_VIDEO_PROCESSOR_STEREO_FORMAT =
D3D11_VIDEO_PROCESSOR_STEREO_FORMAT(2i32);
#[repr(C)]
#[derive(Clone, Debug, PartialEq)]
pub struct D3D11_VIDEO_PROCESSOR_STREAM {
pub Enable: crate::Foundation::BOOL,
pub OutputIndex: u32,
pub InputFrameOrField: u32,
pub PastFrames: u32,
pub FutureFrames: u32,
pub ppPastSurfaces: *mut Option<ID3D11VideoProcessorInputView>,
pub pInputSurface: core::mem::ManuallyDrop<Option<ID3D11VideoProcessorInputView>>,
pub ppFutureSurfaces: *mut Option<ID3D11VideoProcessorInputView>,
pub ppPastSurfacesRight: *mut Option<ID3D11VideoProcessorInputView>,
pub pInputSurfaceRight: core::mem::ManuallyDrop<Option<ID3D11VideoProcessorInputView>>,
pub ppFutureSurfacesRight: *mut Option<ID3D11VideoProcessorInputView>,
}
impl Default for D3D11_VIDEO_PROCESSOR_STREAM {
fn default() -> Self {
unsafe { core::mem::zeroed() }
}
}
#[repr(C)]
#[cfg(feature = "Win32_Graphics_Dxgi_Common")]
#[derive(Clone, Copy, Debug, PartialEq)]
pub struct D3D11_VIDEO_PROCESSOR_STREAM_BEHAVIOR_HINT {
pub Enable: crate::Foundation::BOOL,
pub Width: u32,
pub Height: u32,
pub Format: crate::Dxgi::Common::DXGI_FORMAT,
}
#[cfg(feature = "Win32_Graphics_Dxgi_Common")]
impl Default for D3D11_VIDEO_PROCESSOR_STREAM_BEHAVIOR_HINT {
fn default() -> Self {
unsafe { core::mem::zeroed() }
}
}
#[repr(C)]
#[cfg(feature = "Win32_Graphics_Dxgi_Common")]
#[derive(Clone, Copy, Debug, PartialEq)]
pub struct D3D11_VIDEO_SAMPLE_DESC {
pub Width: u32,
pub Height: u32,
pub Format: crate::Dxgi::Common::DXGI_FORMAT,
pub ColorSpace: crate::Dxgi::Common::DXGI_COLOR_SPACE_TYPE,
}
#[cfg(feature = "Win32_Graphics_Dxgi_Common")]
impl Default for D3D11_VIDEO_SAMPLE_DESC {
fn default() -> Self {
unsafe { core::mem::zeroed() }
}
}
#[repr(transparent)]
#[derive(Clone, Copy, Debug, Default, Eq, PartialEq)]
pub struct D3D11_VIDEO_USAGE(pub i32);
pub const D3D11_VIDEO_USAGE_OPTIMAL_QUALITY: D3D11_VIDEO_USAGE = D3D11_VIDEO_USAGE(2i32);
pub const D3D11_VIDEO_USAGE_OPTIMAL_SPEED: D3D11_VIDEO_USAGE = D3D11_VIDEO_USAGE(1i32);
pub const D3D11_VIDEO_USAGE_PLAYBACK_NORMAL: D3D11_VIDEO_USAGE = D3D11_VIDEO_USAGE(0i32);
#[repr(C)]
#[derive(Clone, Copy, Debug, PartialEq)]
pub struct D3D11_VIEWPORT {
pub TopLeftX: f32,
pub TopLeftY: f32,
pub Width: f32,
pub Height: f32,
pub MinDepth: f32,
pub MaxDepth: f32,
}
impl Default for D3D11_VIEWPORT {
fn default() -> Self {
unsafe { core::mem::zeroed() }
}
}
pub const D3D11_VIEWPORT_AND_SCISSORRECT_MAX_INDEX: u32 = 15u32;
pub const D3D11_VIEWPORT_AND_SCISSORRECT_OBJECT_COUNT_PER_PIPELINE: u32 = 16u32;
pub const D3D11_VIEWPORT_BOUNDS_MAX: u32 = 32767u32;
pub const D3D11_VIEWPORT_BOUNDS_MIN: i32 = -32768i32;
#[repr(transparent)]
#[derive(Clone, Copy, Debug, Default, Eq, PartialEq)]
pub struct D3D11_VPIV_DIMENSION(pub i32);
pub const D3D11_VPIV_DIMENSION_TEXTURE2D: D3D11_VPIV_DIMENSION = D3D11_VPIV_DIMENSION(1i32);
pub const D3D11_VPIV_DIMENSION_UNKNOWN: D3D11_VPIV_DIMENSION = D3D11_VPIV_DIMENSION(0i32);
#[repr(transparent)]
#[derive(Clone, Copy, Debug, Default, Eq, PartialEq)]
pub struct D3D11_VPOV_DIMENSION(pub i32);
pub const D3D11_VPOV_DIMENSION_TEXTURE2D: D3D11_VPOV_DIMENSION = D3D11_VPOV_DIMENSION(1i32);
pub const D3D11_VPOV_DIMENSION_TEXTURE2DARRAY: D3D11_VPOV_DIMENSION = D3D11_VPOV_DIMENSION(2i32);
pub const D3D11_VPOV_DIMENSION_UNKNOWN: D3D11_VPOV_DIMENSION = D3D11_VPOV_DIMENSION(0i32);
pub const D3D11_VS_INPUT_REGISTER_COMPONENTS: u32 = 4u32;
pub const D3D11_VS_INPUT_REGISTER_COMPONENT_BIT_COUNT: u32 = 32u32;
pub const D3D11_VS_INPUT_REGISTER_COUNT: u32 = 32u32;
pub const D3D11_VS_INPUT_REGISTER_READS_PER_INST: u32 = 2u32;
pub const D3D11_VS_INPUT_REGISTER_READ_PORTS: u32 = 1u32;
pub const D3D11_VS_OUTPUT_REGISTER_COMPONENTS: u32 = 4u32;
pub const D3D11_VS_OUTPUT_REGISTER_COMPONENT_BIT_COUNT: u32 = 32u32;
pub const D3D11_VS_OUTPUT_REGISTER_COUNT: u32 = 32u32;
pub const D3D11_WHQL_CONTEXT_COUNT_FOR_RESOURCE_LIMIT: u32 = 10u32;
pub const D3D11_WHQL_DRAWINDEXED_INDEX_COUNT_2_TO_EXP: u32 = 25u32;
pub const D3D11_WHQL_DRAW_VERTEX_COUNT_2_TO_EXP: u32 = 25u32;
pub const D3DCSX_DLL: crate::core_supplemental::PCWSTR = crate::core_supplemental::w!("d3dcsx_47.dll");
pub const D3DCSX_DLL_A: crate::core_supplemental::PCSTR = crate::core_supplemental::s!("d3dcsx_47.dll");
pub const D3DCSX_DLL_W: crate::core_supplemental::PCWSTR = crate::core_supplemental::w!("d3dcsx_47.dll");
#[repr(C)]
#[derive(Clone, Copy, Debug, PartialEq)]
pub struct D3DX11_FFT_BUFFER_INFO {
pub NumTempBufferSizes: u32,
pub TempBufferFloatSizes: [u32; 4],
pub NumPrecomputeBufferSizes: u32,
pub PrecomputeBufferFloatSizes: [u32; 4],
}
impl Default for D3DX11_FFT_BUFFER_INFO {
fn default() -> Self {
unsafe { core::mem::zeroed() }
}
}
#[repr(transparent)]
#[derive(Clone, Copy, Debug, Default, Eq, PartialEq)]
pub struct D3DX11_FFT_CREATE_FLAG(pub i32);
pub const D3DX11_FFT_CREATE_FLAG_NO_PRECOMPUTE_BUFFERS: D3DX11_FFT_CREATE_FLAG =
D3DX11_FFT_CREATE_FLAG(1i32);
#[repr(transparent)]
#[derive(Clone, Copy, Debug, Default, Eq, PartialEq)]
pub struct D3DX11_FFT_DATA_TYPE(pub i32);
pub const D3DX11_FFT_DATA_TYPE_COMPLEX: D3DX11_FFT_DATA_TYPE = D3DX11_FFT_DATA_TYPE(1i32);
pub const D3DX11_FFT_DATA_TYPE_REAL: D3DX11_FFT_DATA_TYPE = D3DX11_FFT_DATA_TYPE(0i32);
#[repr(C)]
#[derive(Clone, Copy, Debug, PartialEq)]
pub struct D3DX11_FFT_DESC {
pub NumDimensions: u32,
pub ElementLengths: [u32; 32],
pub DimensionMask: u32,
pub Type: D3DX11_FFT_DATA_TYPE,
}
impl Default for D3DX11_FFT_DESC {
fn default() -> Self {
unsafe { core::mem::zeroed() }
}
}
#[repr(transparent)]
#[derive(Clone, Copy, Debug, Default, Eq, PartialEq)]
pub struct D3DX11_FFT_DIM_MASK(pub i32);
pub const D3DX11_FFT_DIM_MASK_1D: D3DX11_FFT_DIM_MASK = D3DX11_FFT_DIM_MASK(1i32);
pub const D3DX11_FFT_DIM_MASK_2D: D3DX11_FFT_DIM_MASK = D3DX11_FFT_DIM_MASK(3i32);
pub const D3DX11_FFT_DIM_MASK_3D: D3DX11_FFT_DIM_MASK = D3DX11_FFT_DIM_MASK(7i32);
pub const D3DX11_FFT_MAX_DIMENSIONS: u32 = 32u32;
pub const D3DX11_FFT_MAX_PRECOMPUTE_BUFFERS: u32 = 4u32;
pub const D3DX11_FFT_MAX_TEMP_BUFFERS: u32 = 4u32;
#[repr(transparent)]
#[derive(Clone, Copy, Debug, Default, Eq, PartialEq)]
pub struct D3DX11_SCAN_DATA_TYPE(pub i32);
pub const D3DX11_SCAN_DATA_TYPE_FLOAT: D3DX11_SCAN_DATA_TYPE = D3DX11_SCAN_DATA_TYPE(1i32);
pub const D3DX11_SCAN_DATA_TYPE_INT: D3DX11_SCAN_DATA_TYPE = D3DX11_SCAN_DATA_TYPE(2i32);
pub const D3DX11_SCAN_DATA_TYPE_UINT: D3DX11_SCAN_DATA_TYPE = D3DX11_SCAN_DATA_TYPE(3i32);
#[repr(transparent)]
#[derive(Clone, Copy, Debug, Default, Eq, PartialEq)]
pub struct D3DX11_SCAN_DIRECTION(pub i32);
pub const D3DX11_SCAN_DIRECTION_BACKWARD: D3DX11_SCAN_DIRECTION = D3DX11_SCAN_DIRECTION(2i32);
pub const D3DX11_SCAN_DIRECTION_FORWARD: D3DX11_SCAN_DIRECTION = D3DX11_SCAN_DIRECTION(1i32);
#[repr(transparent)]
#[derive(Clone, Copy, Debug, Default, Eq, PartialEq)]
pub struct D3DX11_SCAN_OPCODE(pub i32);
pub const D3DX11_SCAN_OPCODE_ADD: D3DX11_SCAN_OPCODE = D3DX11_SCAN_OPCODE(1i32);
pub const D3DX11_SCAN_OPCODE_AND: D3DX11_SCAN_OPCODE = D3DX11_SCAN_OPCODE(5i32);
pub const D3DX11_SCAN_OPCODE_MAX: D3DX11_SCAN_OPCODE = D3DX11_SCAN_OPCODE(3i32);
pub const D3DX11_SCAN_OPCODE_MIN: D3DX11_SCAN_OPCODE = D3DX11_SCAN_OPCODE(2i32);
pub const D3DX11_SCAN_OPCODE_MUL: D3DX11_SCAN_OPCODE = D3DX11_SCAN_OPCODE(4i32);
pub const D3DX11_SCAN_OPCODE_OR: D3DX11_SCAN_OPCODE = D3DX11_SCAN_OPCODE(6i32);
pub const D3DX11_SCAN_OPCODE_XOR: D3DX11_SCAN_OPCODE = D3DX11_SCAN_OPCODE(7i32);
pub const D3D_RETURN_PARAMETER_INDEX: i32 = -1i32;
pub const D3D_SHADER_REQUIRES_11_1_DOUBLE_EXTENSIONS: u32 = 32u32;
pub const D3D_SHADER_REQUIRES_11_1_SHADER_EXTENSIONS: u32 = 64u32;
pub const D3D_SHADER_REQUIRES_64_UAVS: u32 = 8u32;
pub const D3D_SHADER_REQUIRES_DOUBLES: u32 = 1u32;
pub const D3D_SHADER_REQUIRES_EARLY_DEPTH_STENCIL: u32 = 2u32;
pub const D3D_SHADER_REQUIRES_LEVEL_9_COMPARISON_FILTERING: u32 = 128u32;
pub const D3D_SHADER_REQUIRES_MINIMUM_PRECISION: u32 = 16u32;
pub const D3D_SHADER_REQUIRES_TILED_RESOURCES: u32 = 256u32;
pub const D3D_SHADER_REQUIRES_UAVS_AT_EVERY_STAGE: u32 = 4u32;
pub const DXGI_DEBUG_D3D11: windows_core::GUID =
windows_core::GUID::from_u128(0x4b99317b_ac39_4aa6_bb0b_baa04784798f);
windows_core::imp::define_interface!(
ID3D11Asynchronous,
ID3D11Asynchronous_Vtbl,
0x4b35d0cd_1e15_4258_9c98_1b1333f6dd3b
);
impl core::ops::Deref for ID3D11Asynchronous {
type Target = ID3D11DeviceChild;
fn deref(&self) -> &Self::Target {
unsafe { core::mem::transmute(self) }
}
}
windows_core::imp::interface_hierarchy!(
ID3D11Asynchronous,
windows_core::IUnknown,
ID3D11DeviceChild
);
impl ID3D11Asynchronous {
pub unsafe fn GetDataSize(&self) -> u32 {
unsafe {
(windows_core::Interface::vtable(self).GetDataSize)(windows_core::Interface::as_raw(
self,
))
}
}
}
#[repr(C)]
pub struct ID3D11Asynchronous_Vtbl {
pub base__: ID3D11DeviceChild_Vtbl,
pub GetDataSize: unsafe extern "system" fn(*mut core::ffi::c_void) -> u32,
}
pub trait ID3D11Asynchronous_Impl: ID3D11DeviceChild_Impl {
fn GetDataSize(&self) -> u32;
}
impl ID3D11Asynchronous_Vtbl {
pub const fn new<Identity: ID3D11Asynchronous_Impl, const OFFSET: isize>() -> Self {
unsafe extern "system" fn GetDataSize<
Identity: ID3D11Asynchronous_Impl,
const OFFSET: isize,
>(
this: *mut core::ffi::c_void,
) -> u32 {
unsafe {
let this: &Identity =
&*((this as *const *const ()).offset(OFFSET) as *const Identity);
ID3D11Asynchronous_Impl::GetDataSize(this)
}
}
Self {
base__: ID3D11DeviceChild_Vtbl::new::<Identity, OFFSET>(),
GetDataSize: GetDataSize::<Identity, OFFSET>,
}
}
pub fn matches(iid: &windows_core::GUID) -> bool {
iid == &<ID3D11Asynchronous as windows_core::Interface>::IID
|| iid == &<ID3D11DeviceChild as windows_core::Interface>::IID
}
}
impl windows_core::RuntimeName for ID3D11Asynchronous {}
unsafe impl Send for ID3D11Asynchronous {}
unsafe impl Sync for ID3D11Asynchronous {}
windows_core::imp::define_interface!(
ID3D11AuthenticatedChannel,
ID3D11AuthenticatedChannel_Vtbl,
0x3015a308_dcbd_47aa_a747_192486d14d4a
);
impl core::ops::Deref for ID3D11AuthenticatedChannel {
type Target = ID3D11DeviceChild;
fn deref(&self) -> &Self::Target {
unsafe { core::mem::transmute(self) }
}
}
windows_core::imp::interface_hierarchy!(
ID3D11AuthenticatedChannel,
windows_core::IUnknown,
ID3D11DeviceChild
);
impl ID3D11AuthenticatedChannel {
pub unsafe fn GetCertificateSize(&self) -> windows_core::Result<u32> {
unsafe {
let mut result__ = core::mem::zeroed();
(windows_core::Interface::vtable(self).GetCertificateSize)(
windows_core::Interface::as_raw(self),
&mut result__,
)
.map(|| result__)
}
}
pub unsafe fn GetCertificate(&self, pcertificate: &mut [u8]) -> windows_core::Result<()> {
unsafe {
(windows_core::Interface::vtable(self).GetCertificate)(
windows_core::Interface::as_raw(self),
pcertificate.len().try_into().unwrap(),
core::mem::transmute(pcertificate.as_ptr()),
)
.ok()
}
}
pub unsafe fn GetChannelHandle(&self) -> crate::Foundation::HANDLE {
unsafe {
let mut result__ = core::mem::zeroed();
(windows_core::Interface::vtable(self).GetChannelHandle)(
windows_core::Interface::as_raw(self),
&mut result__,
);
result__
}
}
}
#[repr(C)]
pub struct ID3D11AuthenticatedChannel_Vtbl {
pub base__: ID3D11DeviceChild_Vtbl,
pub GetCertificateSize:
unsafe extern "system" fn(*mut core::ffi::c_void, *mut u32) -> windows_core::HRESULT,
pub GetCertificate:
unsafe extern "system" fn(*mut core::ffi::c_void, u32, *mut u8) -> windows_core::HRESULT,
pub GetChannelHandle:
unsafe extern "system" fn(*mut core::ffi::c_void, *mut crate::Foundation::HANDLE),
}
pub trait ID3D11AuthenticatedChannel_Impl: ID3D11DeviceChild_Impl {
fn GetCertificateSize(&self) -> windows_core::Result<u32>;
fn GetCertificate(
&self,
certificatesize: u32,
pcertificate: *mut u8,
) -> windows_core::Result<()>;
fn GetChannelHandle(&self, pchannelhandle: *mut crate::Foundation::HANDLE);
}
impl ID3D11AuthenticatedChannel_Vtbl {
pub const fn new<Identity: ID3D11AuthenticatedChannel_Impl, const OFFSET: isize>() -> Self {
unsafe extern "system" fn GetCertificateSize<
Identity: ID3D11AuthenticatedChannel_Impl,
const OFFSET: isize,
>(
this: *mut core::ffi::c_void,
pcertificatesize: *mut u32,
) -> windows_core::HRESULT {
unsafe {
let this: &Identity =
&*((this as *const *const ()).offset(OFFSET) as *const Identity);
match ID3D11AuthenticatedChannel_Impl::GetCertificateSize(this) {
Ok(ok__) => {
pcertificatesize.write(core::mem::transmute(ok__));
windows_core::HRESULT(0)
}
Err(err) => err.into(),
}
}
}
unsafe extern "system" fn GetCertificate<
Identity: ID3D11AuthenticatedChannel_Impl,
const OFFSET: isize,
>(
this: *mut core::ffi::c_void,
certificatesize: u32,
pcertificate: *mut u8,
) -> windows_core::HRESULT {
unsafe {
let this: &Identity =
&*((this as *const *const ()).offset(OFFSET) as *const Identity);
ID3D11AuthenticatedChannel_Impl::GetCertificate(
this,
core::mem::transmute_copy(&certificatesize),
core::mem::transmute_copy(&pcertificate),
)
.into()
}
}
unsafe extern "system" fn GetChannelHandle<
Identity: ID3D11AuthenticatedChannel_Impl,
const OFFSET: isize,
>(
this: *mut core::ffi::c_void,
pchannelhandle: *mut crate::Foundation::HANDLE,
) {
unsafe {
let this: &Identity =
&*((this as *const *const ()).offset(OFFSET) as *const Identity);
ID3D11AuthenticatedChannel_Impl::GetChannelHandle(
this,
core::mem::transmute_copy(&pchannelhandle),
)
}
}
Self {
base__: ID3D11DeviceChild_Vtbl::new::<Identity, OFFSET>(),
GetCertificateSize: GetCertificateSize::<Identity, OFFSET>,
GetCertificate: GetCertificate::<Identity, OFFSET>,
GetChannelHandle: GetChannelHandle::<Identity, OFFSET>,
}
}
pub fn matches(iid: &windows_core::GUID) -> bool {
iid == &<ID3D11AuthenticatedChannel as windows_core::Interface>::IID
|| iid == &<ID3D11DeviceChild as windows_core::Interface>::IID
}
}
impl windows_core::RuntimeName for ID3D11AuthenticatedChannel {}
unsafe impl Send for ID3D11AuthenticatedChannel {}
unsafe impl Sync for ID3D11AuthenticatedChannel {}
windows_core::imp::define_interface!(
ID3D11BlendState,
ID3D11BlendState_Vtbl,
0x75b68faa_347d_4159_8f45_a0640f01cd9a
);
impl core::ops::Deref for ID3D11BlendState {
type Target = ID3D11DeviceChild;
fn deref(&self) -> &Self::Target {
unsafe { core::mem::transmute(self) }
}
}
windows_core::imp::interface_hierarchy!(
ID3D11BlendState,
windows_core::IUnknown,
ID3D11DeviceChild
);
impl ID3D11BlendState {
pub unsafe fn GetDesc(&self, pdesc: *mut D3D11_BLEND_DESC) {
unsafe {
(windows_core::Interface::vtable(self).GetDesc)(
windows_core::Interface::as_raw(self),
core::mem::transmute(pdesc),
)
}
}
}
#[repr(C)]
pub struct ID3D11BlendState_Vtbl {
pub base__: ID3D11DeviceChild_Vtbl,
pub GetDesc: unsafe extern "system" fn(*mut core::ffi::c_void, *mut D3D11_BLEND_DESC),
}
pub trait ID3D11BlendState_Impl: ID3D11DeviceChild_Impl {
fn GetDesc(&self, pdesc: *mut D3D11_BLEND_DESC);
}
impl ID3D11BlendState_Vtbl {
pub const fn new<Identity: ID3D11BlendState_Impl, const OFFSET: isize>() -> Self {
unsafe extern "system" fn GetDesc<Identity: ID3D11BlendState_Impl, const OFFSET: isize>(
this: *mut core::ffi::c_void,
pdesc: *mut D3D11_BLEND_DESC,
) {
unsafe {
let this: &Identity =
&*((this as *const *const ()).offset(OFFSET) as *const Identity);
ID3D11BlendState_Impl::GetDesc(this, core::mem::transmute_copy(&pdesc))
}
}
Self {
base__: ID3D11DeviceChild_Vtbl::new::<Identity, OFFSET>(),
GetDesc: GetDesc::<Identity, OFFSET>,
}
}
pub fn matches(iid: &windows_core::GUID) -> bool {
iid == &<ID3D11BlendState as windows_core::Interface>::IID
|| iid == &<ID3D11DeviceChild as windows_core::Interface>::IID
}
}
impl windows_core::RuntimeName for ID3D11BlendState {}
unsafe impl Send for ID3D11BlendState {}
unsafe impl Sync for ID3D11BlendState {}
windows_core::imp::define_interface!(
ID3D11BlendState1,
ID3D11BlendState1_Vtbl,
0xcc86fabe_da55_401d_85e7_e3c9de2877e9
);
impl core::ops::Deref for ID3D11BlendState1 {
type Target = ID3D11BlendState;
fn deref(&self) -> &Self::Target {
unsafe { core::mem::transmute(self) }
}
}
windows_core::imp::interface_hierarchy!(
ID3D11BlendState1,
windows_core::IUnknown,
ID3D11DeviceChild,
ID3D11BlendState
);
impl ID3D11BlendState1 {
pub unsafe fn GetDesc1(&self, pdesc: *mut D3D11_BLEND_DESC1) {
unsafe {
(windows_core::Interface::vtable(self).GetDesc1)(
windows_core::Interface::as_raw(self),
core::mem::transmute(pdesc),
)
}
}
}
#[repr(C)]
pub struct ID3D11BlendState1_Vtbl {
pub base__: ID3D11BlendState_Vtbl,
pub GetDesc1: unsafe extern "system" fn(*mut core::ffi::c_void, *mut D3D11_BLEND_DESC1),
}
pub trait ID3D11BlendState1_Impl: ID3D11BlendState_Impl {
fn GetDesc1(&self, pdesc: *mut D3D11_BLEND_DESC1);
}
impl ID3D11BlendState1_Vtbl {
pub const fn new<Identity: ID3D11BlendState1_Impl, const OFFSET: isize>() -> Self {
unsafe extern "system" fn GetDesc1<
Identity: ID3D11BlendState1_Impl,
const OFFSET: isize,
>(
this: *mut core::ffi::c_void,
pdesc: *mut D3D11_BLEND_DESC1,
) {
unsafe {
let this: &Identity =
&*((this as *const *const ()).offset(OFFSET) as *const Identity);
ID3D11BlendState1_Impl::GetDesc1(this, core::mem::transmute_copy(&pdesc))
}
}
Self {
base__: ID3D11BlendState_Vtbl::new::<Identity, OFFSET>(),
GetDesc1: GetDesc1::<Identity, OFFSET>,
}
}
pub fn matches(iid: &windows_core::GUID) -> bool {
iid == &<ID3D11BlendState1 as windows_core::Interface>::IID
|| iid == &<ID3D11DeviceChild as windows_core::Interface>::IID
|| iid == &<ID3D11BlendState as windows_core::Interface>::IID
}
}
impl windows_core::RuntimeName for ID3D11BlendState1 {}
unsafe impl Send for ID3D11BlendState1 {}
unsafe impl Sync for ID3D11BlendState1 {}
windows_core::imp::define_interface!(
ID3D11Buffer,
ID3D11Buffer_Vtbl,
0x48570b85_d1ee_4fcd_a250_eb350722b037
);
impl core::ops::Deref for ID3D11Buffer {
type Target = ID3D11Resource;
fn deref(&self) -> &Self::Target {
unsafe { core::mem::transmute(self) }
}
}
windows_core::imp::interface_hierarchy!(
ID3D11Buffer,
windows_core::IUnknown,
ID3D11DeviceChild,
ID3D11Resource
);
impl ID3D11Buffer {
pub unsafe fn GetDesc(&self, pdesc: *mut D3D11_BUFFER_DESC) {
unsafe {
(windows_core::Interface::vtable(self).GetDesc)(
windows_core::Interface::as_raw(self),
core::mem::transmute(pdesc),
)
}
}
}
#[repr(C)]
pub struct ID3D11Buffer_Vtbl {
pub base__: ID3D11Resource_Vtbl,
pub GetDesc: unsafe extern "system" fn(*mut core::ffi::c_void, *mut D3D11_BUFFER_DESC),
}
pub trait ID3D11Buffer_Impl: ID3D11Resource_Impl {
fn GetDesc(&self, pdesc: *mut D3D11_BUFFER_DESC);
}
impl ID3D11Buffer_Vtbl {
pub const fn new<Identity: ID3D11Buffer_Impl, const OFFSET: isize>() -> Self {
unsafe extern "system" fn GetDesc<Identity: ID3D11Buffer_Impl, const OFFSET: isize>(
this: *mut core::ffi::c_void,
pdesc: *mut D3D11_BUFFER_DESC,
) {
unsafe {
let this: &Identity =
&*((this as *const *const ()).offset(OFFSET) as *const Identity);
ID3D11Buffer_Impl::GetDesc(this, core::mem::transmute_copy(&pdesc))
}
}
Self {
base__: ID3D11Resource_Vtbl::new::<Identity, OFFSET>(),
GetDesc: GetDesc::<Identity, OFFSET>,
}
}
pub fn matches(iid: &windows_core::GUID) -> bool {
iid == &<ID3D11Buffer as windows_core::Interface>::IID
|| iid == &<ID3D11DeviceChild as windows_core::Interface>::IID
|| iid == &<ID3D11Resource as windows_core::Interface>::IID
}
}
impl windows_core::RuntimeName for ID3D11Buffer {}
unsafe impl Send for ID3D11Buffer {}
unsafe impl Sync for ID3D11Buffer {}
windows_core::imp::define_interface!(
ID3D11ClassInstance,
ID3D11ClassInstance_Vtbl,
0xa6cd7faa_b0b7_4a2f_9436_8662a65797cb
);
impl core::ops::Deref for ID3D11ClassInstance {
type Target = ID3D11DeviceChild;
fn deref(&self) -> &Self::Target {
unsafe { core::mem::transmute(self) }
}
}
windows_core::imp::interface_hierarchy!(
ID3D11ClassInstance,
windows_core::IUnknown,
ID3D11DeviceChild
);
impl ID3D11ClassInstance {
pub unsafe fn GetClassLinkage(&self) -> windows_core::Result<ID3D11ClassLinkage> {
unsafe {
let mut result__ = core::mem::zeroed();
(windows_core::Interface::vtable(self).GetClassLinkage)(
windows_core::Interface::as_raw(self),
&mut result__,
);
windows_core::Type::from_abi(result__)
}
}
pub unsafe fn GetDesc(&self, pdesc: *mut D3D11_CLASS_INSTANCE_DESC) {
unsafe {
(windows_core::Interface::vtable(self).GetDesc)(
windows_core::Interface::as_raw(self),
core::mem::transmute(pdesc),
)
}
}
pub unsafe fn GetInstanceName(
&self,
pinstancename: Option<crate::core_supplemental::PSTR>,
pbufferlength: *mut usize,
) {
unsafe {
(windows_core::Interface::vtable(self).GetInstanceName)(
windows_core::Interface::as_raw(self),
core::mem::transmute(pinstancename.unwrap_or(core::mem::zeroed())),
core::mem::transmute(pbufferlength),
)
}
}
pub unsafe fn GetTypeName(
&self,
ptypename: Option<crate::core_supplemental::PSTR>,
pbufferlength: *mut usize,
) {
unsafe {
(windows_core::Interface::vtable(self).GetTypeName)(
windows_core::Interface::as_raw(self),
core::mem::transmute(ptypename.unwrap_or(core::mem::zeroed())),
core::mem::transmute(pbufferlength),
)
}
}
}
#[repr(C)]
pub struct ID3D11ClassInstance_Vtbl {
pub base__: ID3D11DeviceChild_Vtbl,
pub GetClassLinkage:
unsafe extern "system" fn(*mut core::ffi::c_void, *mut *mut core::ffi::c_void),
pub GetDesc: unsafe extern "system" fn(*mut core::ffi::c_void, *mut D3D11_CLASS_INSTANCE_DESC),
pub GetInstanceName:
unsafe extern "system" fn(*mut core::ffi::c_void, crate::core_supplemental::PSTR, *mut usize),
pub GetTypeName:
unsafe extern "system" fn(*mut core::ffi::c_void, crate::core_supplemental::PSTR, *mut usize),
}
pub trait ID3D11ClassInstance_Impl: ID3D11DeviceChild_Impl {
fn GetClassLinkage(&self, pplinkage: windows_core::OutRef<'_, ID3D11ClassLinkage>);
fn GetDesc(&self, pdesc: *mut D3D11_CLASS_INSTANCE_DESC);
fn GetInstanceName(&self, pinstancename: crate::core_supplemental::PSTR, pbufferlength: *mut usize);
fn GetTypeName(&self, ptypename: crate::core_supplemental::PSTR, pbufferlength: *mut usize);
}
impl ID3D11ClassInstance_Vtbl {
pub const fn new<Identity: ID3D11ClassInstance_Impl, const OFFSET: isize>() -> Self {
unsafe extern "system" fn GetClassLinkage<
Identity: ID3D11ClassInstance_Impl,
const OFFSET: isize,
>(
this: *mut core::ffi::c_void,
pplinkage: *mut *mut core::ffi::c_void,
) {
unsafe {
let this: &Identity =
&*((this as *const *const ()).offset(OFFSET) as *const Identity);
ID3D11ClassInstance_Impl::GetClassLinkage(
this,
core::mem::transmute_copy(&pplinkage),
)
}
}
unsafe extern "system" fn GetDesc<
Identity: ID3D11ClassInstance_Impl,
const OFFSET: isize,
>(
this: *mut core::ffi::c_void,
pdesc: *mut D3D11_CLASS_INSTANCE_DESC,
) {
unsafe {
let this: &Identity =
&*((this as *const *const ()).offset(OFFSET) as *const Identity);
ID3D11ClassInstance_Impl::GetDesc(this, core::mem::transmute_copy(&pdesc))
}
}
unsafe extern "system" fn GetInstanceName<
Identity: ID3D11ClassInstance_Impl,
const OFFSET: isize,
>(
this: *mut core::ffi::c_void,
pinstancename: crate::core_supplemental::PSTR,
pbufferlength: *mut usize,
) {
unsafe {
let this: &Identity =
&*((this as *const *const ()).offset(OFFSET) as *const Identity);
ID3D11ClassInstance_Impl::GetInstanceName(
this,
core::mem::transmute_copy(&pinstancename),
core::mem::transmute_copy(&pbufferlength),
)
}
}
unsafe extern "system" fn GetTypeName<
Identity: ID3D11ClassInstance_Impl,
const OFFSET: isize,
>(
this: *mut core::ffi::c_void,
ptypename: crate::core_supplemental::PSTR,
pbufferlength: *mut usize,
) {
unsafe {
let this: &Identity =
&*((this as *const *const ()).offset(OFFSET) as *const Identity);
ID3D11ClassInstance_Impl::GetTypeName(
this,
core::mem::transmute_copy(&ptypename),
core::mem::transmute_copy(&pbufferlength),
)
}
}
Self {
base__: ID3D11DeviceChild_Vtbl::new::<Identity, OFFSET>(),
GetClassLinkage: GetClassLinkage::<Identity, OFFSET>,
GetDesc: GetDesc::<Identity, OFFSET>,
GetInstanceName: GetInstanceName::<Identity, OFFSET>,
GetTypeName: GetTypeName::<Identity, OFFSET>,
}
}
pub fn matches(iid: &windows_core::GUID) -> bool {
iid == &<ID3D11ClassInstance as windows_core::Interface>::IID
|| iid == &<ID3D11DeviceChild as windows_core::Interface>::IID
}
}
impl windows_core::RuntimeName for ID3D11ClassInstance {}
unsafe impl Send for ID3D11ClassInstance {}
unsafe impl Sync for ID3D11ClassInstance {}
windows_core::imp::define_interface!(
ID3D11ClassLinkage,
ID3D11ClassLinkage_Vtbl,
0xddf57cba_9543_46e4_a12b_f207a0fe7fed
);
impl core::ops::Deref for ID3D11ClassLinkage {
type Target = ID3D11DeviceChild;
fn deref(&self) -> &Self::Target {
unsafe { core::mem::transmute(self) }
}
}
windows_core::imp::interface_hierarchy!(
ID3D11ClassLinkage,
windows_core::IUnknown,
ID3D11DeviceChild
);
impl ID3D11ClassLinkage {
pub unsafe fn GetClassInstance<P0>(
&self,
pclassinstancename: P0,
instanceindex: u32,
) -> windows_core::Result<ID3D11ClassInstance>
where
P0: windows_core::Param<crate::core_supplemental::PCSTR>,
{
unsafe {
let mut result__ = core::mem::zeroed();
(windows_core::Interface::vtable(self).GetClassInstance)(
windows_core::Interface::as_raw(self),
pclassinstancename.param().abi(),
instanceindex,
&mut result__,
)
.and_then(|| windows_core::Type::from_abi(result__))
}
}
pub unsafe fn CreateClassInstance<P0>(
&self,
pclasstypename: P0,
constantbufferoffset: u32,
constantvectoroffset: u32,
textureoffset: u32,
sampleroffset: u32,
) -> windows_core::Result<ID3D11ClassInstance>
where
P0: windows_core::Param<crate::core_supplemental::PCSTR>,
{
unsafe {
let mut result__ = core::mem::zeroed();
(windows_core::Interface::vtable(self).CreateClassInstance)(
windows_core::Interface::as_raw(self),
pclasstypename.param().abi(),
constantbufferoffset,
constantvectoroffset,
textureoffset,
sampleroffset,
&mut result__,
)
.and_then(|| windows_core::Type::from_abi(result__))
}
}
}
#[repr(C)]
pub struct ID3D11ClassLinkage_Vtbl {
pub base__: ID3D11DeviceChild_Vtbl,
pub GetClassInstance: unsafe extern "system" fn(
*mut core::ffi::c_void,
crate::core_supplemental::PCSTR,
u32,
*mut *mut core::ffi::c_void,
) -> windows_core::HRESULT,
pub CreateClassInstance: unsafe extern "system" fn(
*mut core::ffi::c_void,
crate::core_supplemental::PCSTR,
u32,
u32,
u32,
u32,
*mut *mut core::ffi::c_void,
) -> windows_core::HRESULT,
}
pub trait ID3D11ClassLinkage_Impl: ID3D11DeviceChild_Impl {
fn GetClassInstance(
&self,
pclassinstancename: &crate::core_supplemental::PCSTR,
instanceindex: u32,
) -> windows_core::Result<ID3D11ClassInstance>;
fn CreateClassInstance(
&self,
pclasstypename: &crate::core_supplemental::PCSTR,
constantbufferoffset: u32,
constantvectoroffset: u32,
textureoffset: u32,
sampleroffset: u32,
) -> windows_core::Result<ID3D11ClassInstance>;
}
impl ID3D11ClassLinkage_Vtbl {
pub const fn new<Identity: ID3D11ClassLinkage_Impl, const OFFSET: isize>() -> Self {
unsafe extern "system" fn GetClassInstance<
Identity: ID3D11ClassLinkage_Impl,
const OFFSET: isize,
>(
this: *mut core::ffi::c_void,
pclassinstancename: crate::core_supplemental::PCSTR,
instanceindex: u32,
ppinstance: *mut *mut core::ffi::c_void,
) -> windows_core::HRESULT {
unsafe {
let this: &Identity =
&*((this as *const *const ()).offset(OFFSET) as *const Identity);
match ID3D11ClassLinkage_Impl::GetClassInstance(
this,
core::mem::transmute(&pclassinstancename),
core::mem::transmute_copy(&instanceindex),
) {
Ok(ok__) => {
ppinstance.write(core::mem::transmute(ok__));
windows_core::HRESULT(0)
}
Err(err) => err.into(),
}
}
}
unsafe extern "system" fn CreateClassInstance<
Identity: ID3D11ClassLinkage_Impl,
const OFFSET: isize,
>(
this: *mut core::ffi::c_void,
pclasstypename: crate::core_supplemental::PCSTR,
constantbufferoffset: u32,
constantvectoroffset: u32,
textureoffset: u32,
sampleroffset: u32,
ppinstance: *mut *mut core::ffi::c_void,
) -> windows_core::HRESULT {
unsafe {
let this: &Identity =
&*((this as *const *const ()).offset(OFFSET) as *const Identity);
match ID3D11ClassLinkage_Impl::CreateClassInstance(
this,
core::mem::transmute(&pclasstypename),
core::mem::transmute_copy(&constantbufferoffset),
core::mem::transmute_copy(&constantvectoroffset),
core::mem::transmute_copy(&textureoffset),
core::mem::transmute_copy(&sampleroffset),
) {
Ok(ok__) => {
ppinstance.write(core::mem::transmute(ok__));
windows_core::HRESULT(0)
}
Err(err) => err.into(),
}
}
}
Self {
base__: ID3D11DeviceChild_Vtbl::new::<Identity, OFFSET>(),
GetClassInstance: GetClassInstance::<Identity, OFFSET>,
CreateClassInstance: CreateClassInstance::<Identity, OFFSET>,
}
}
pub fn matches(iid: &windows_core::GUID) -> bool {
iid == &<ID3D11ClassLinkage as windows_core::Interface>::IID
|| iid == &<ID3D11DeviceChild as windows_core::Interface>::IID
}
}
impl windows_core::RuntimeName for ID3D11ClassLinkage {}
unsafe impl Send for ID3D11ClassLinkage {}
unsafe impl Sync for ID3D11ClassLinkage {}
windows_core::imp::define_interface!(
ID3D11CommandList,
ID3D11CommandList_Vtbl,
0xa24bc4d1_769e_43f7_8013_98ff566c18e2
);
impl core::ops::Deref for ID3D11CommandList {
type Target = ID3D11DeviceChild;
fn deref(&self) -> &Self::Target {
unsafe { core::mem::transmute(self) }
}
}
windows_core::imp::interface_hierarchy!(
ID3D11CommandList,
windows_core::IUnknown,
ID3D11DeviceChild
);
impl ID3D11CommandList {
pub unsafe fn GetContextFlags(&self) -> u32 {
unsafe {
(windows_core::Interface::vtable(self).GetContextFlags)(
windows_core::Interface::as_raw(self),
)
}
}
}
#[repr(C)]
pub struct ID3D11CommandList_Vtbl {
pub base__: ID3D11DeviceChild_Vtbl,
pub GetContextFlags: unsafe extern "system" fn(*mut core::ffi::c_void) -> u32,
}
pub trait ID3D11CommandList_Impl: ID3D11DeviceChild_Impl {
fn GetContextFlags(&self) -> u32;
}
impl ID3D11CommandList_Vtbl {
pub const fn new<Identity: ID3D11CommandList_Impl, const OFFSET: isize>() -> Self {
unsafe extern "system" fn GetContextFlags<
Identity: ID3D11CommandList_Impl,
const OFFSET: isize,
>(
this: *mut core::ffi::c_void,
) -> u32 {
unsafe {
let this: &Identity =
&*((this as *const *const ()).offset(OFFSET) as *const Identity);
ID3D11CommandList_Impl::GetContextFlags(this)
}
}
Self {
base__: ID3D11DeviceChild_Vtbl::new::<Identity, OFFSET>(),
GetContextFlags: GetContextFlags::<Identity, OFFSET>,
}
}
pub fn matches(iid: &windows_core::GUID) -> bool {
iid == &<ID3D11CommandList as windows_core::Interface>::IID
|| iid == &<ID3D11DeviceChild as windows_core::Interface>::IID
}
}
impl windows_core::RuntimeName for ID3D11CommandList {}
unsafe impl Send for ID3D11CommandList {}
unsafe impl Sync for ID3D11CommandList {}
windows_core::imp::define_interface!(
ID3D11ComputeShader,
ID3D11ComputeShader_Vtbl,
0x4f5b196e_c2bd_495e_bd01_1fded38e4969
);
impl core::ops::Deref for ID3D11ComputeShader {
type Target = ID3D11DeviceChild;
fn deref(&self) -> &Self::Target {
unsafe { core::mem::transmute(self) }
}
}
windows_core::imp::interface_hierarchy!(
ID3D11ComputeShader,
windows_core::IUnknown,
ID3D11DeviceChild
);
#[repr(C)]
pub struct ID3D11ComputeShader_Vtbl {
pub base__: ID3D11DeviceChild_Vtbl,
}
pub trait ID3D11ComputeShader_Impl: ID3D11DeviceChild_Impl {}
impl ID3D11ComputeShader_Vtbl {
pub const fn new<Identity: ID3D11ComputeShader_Impl, const OFFSET: isize>() -> Self {
Self {
base__: ID3D11DeviceChild_Vtbl::new::<Identity, OFFSET>(),
}
}
pub fn matches(iid: &windows_core::GUID) -> bool {
iid == &<ID3D11ComputeShader as windows_core::Interface>::IID
|| iid == &<ID3D11DeviceChild as windows_core::Interface>::IID
}
}
impl windows_core::RuntimeName for ID3D11ComputeShader {}
unsafe impl Send for ID3D11ComputeShader {}
unsafe impl Sync for ID3D11ComputeShader {}
windows_core::imp::define_interface!(
ID3D11Counter,
ID3D11Counter_Vtbl,
0x6e8c49fb_a371_4770_b440_29086022b741
);
impl core::ops::Deref for ID3D11Counter {
type Target = ID3D11Asynchronous;
fn deref(&self) -> &Self::Target {
unsafe { core::mem::transmute(self) }
}
}
windows_core::imp::interface_hierarchy!(
ID3D11Counter,
windows_core::IUnknown,
ID3D11DeviceChild,
ID3D11Asynchronous
);
impl ID3D11Counter {
pub unsafe fn GetDesc(&self) -> D3D11_COUNTER_DESC {
unsafe {
let mut result__ = core::mem::zeroed();
(windows_core::Interface::vtable(self).GetDesc)(
windows_core::Interface::as_raw(self),
&mut result__,
);
result__
}
}
}
#[repr(C)]
pub struct ID3D11Counter_Vtbl {
pub base__: ID3D11Asynchronous_Vtbl,
pub GetDesc: unsafe extern "system" fn(*mut core::ffi::c_void, *mut D3D11_COUNTER_DESC),
}
pub trait ID3D11Counter_Impl: ID3D11Asynchronous_Impl {
fn GetDesc(&self, pdesc: *mut D3D11_COUNTER_DESC);
}
impl ID3D11Counter_Vtbl {
pub const fn new<Identity: ID3D11Counter_Impl, const OFFSET: isize>() -> Self {
unsafe extern "system" fn GetDesc<Identity: ID3D11Counter_Impl, const OFFSET: isize>(
this: *mut core::ffi::c_void,
pdesc: *mut D3D11_COUNTER_DESC,
) {
unsafe {
let this: &Identity =
&*((this as *const *const ()).offset(OFFSET) as *const Identity);
ID3D11Counter_Impl::GetDesc(this, core::mem::transmute_copy(&pdesc))
}
}
Self {
base__: ID3D11Asynchronous_Vtbl::new::<Identity, OFFSET>(),
GetDesc: GetDesc::<Identity, OFFSET>,
}
}
pub fn matches(iid: &windows_core::GUID) -> bool {
iid == &<ID3D11Counter as windows_core::Interface>::IID
|| iid == &<ID3D11DeviceChild as windows_core::Interface>::IID
|| iid == &<ID3D11Asynchronous as windows_core::Interface>::IID
}
}
impl windows_core::RuntimeName for ID3D11Counter {}
unsafe impl Send for ID3D11Counter {}
unsafe impl Sync for ID3D11Counter {}
windows_core::imp::define_interface!(
ID3D11CryptoSession,
ID3D11CryptoSession_Vtbl,
0x9b32f9ad_bdcc_40a6_a39d_d5c865845720
);
impl core::ops::Deref for ID3D11CryptoSession {
type Target = ID3D11DeviceChild;
fn deref(&self) -> &Self::Target {
unsafe { core::mem::transmute(self) }
}
}
windows_core::imp::interface_hierarchy!(
ID3D11CryptoSession,
windows_core::IUnknown,
ID3D11DeviceChild
);
impl ID3D11CryptoSession {
pub unsafe fn GetCryptoType(&self) -> windows_core::GUID {
unsafe {
let mut result__ = core::mem::zeroed();
(windows_core::Interface::vtable(self).GetCryptoType)(
windows_core::Interface::as_raw(self),
&mut result__,
);
result__
}
}
pub unsafe fn GetDecoderProfile(&self) -> windows_core::GUID {
unsafe {
let mut result__ = core::mem::zeroed();
(windows_core::Interface::vtable(self).GetDecoderProfile)(
windows_core::Interface::as_raw(self),
&mut result__,
);
result__
}
}
pub unsafe fn GetCertificateSize(&self) -> windows_core::Result<u32> {
unsafe {
let mut result__ = core::mem::zeroed();
(windows_core::Interface::vtable(self).GetCertificateSize)(
windows_core::Interface::as_raw(self),
&mut result__,
)
.map(|| result__)
}
}
pub unsafe fn GetCertificate(&self, pcertificate: &mut [u8]) -> windows_core::Result<()> {
unsafe {
(windows_core::Interface::vtable(self).GetCertificate)(
windows_core::Interface::as_raw(self),
pcertificate.len().try_into().unwrap(),
core::mem::transmute(pcertificate.as_ptr()),
)
.ok()
}
}
pub unsafe fn GetCryptoSessionHandle(&self) -> crate::Foundation::HANDLE {
unsafe {
let mut result__ = core::mem::zeroed();
(windows_core::Interface::vtable(self).GetCryptoSessionHandle)(
windows_core::Interface::as_raw(self),
&mut result__,
);
result__
}
}
}
#[repr(C)]
pub struct ID3D11CryptoSession_Vtbl {
pub base__: ID3D11DeviceChild_Vtbl,
pub GetCryptoType: unsafe extern "system" fn(*mut core::ffi::c_void, *mut windows_core::GUID),
pub GetDecoderProfile:
unsafe extern "system" fn(*mut core::ffi::c_void, *mut windows_core::GUID),
pub GetCertificateSize:
unsafe extern "system" fn(*mut core::ffi::c_void, *mut u32) -> windows_core::HRESULT,
pub GetCertificate:
unsafe extern "system" fn(*mut core::ffi::c_void, u32, *mut u8) -> windows_core::HRESULT,
pub GetCryptoSessionHandle:
unsafe extern "system" fn(*mut core::ffi::c_void, *mut crate::Foundation::HANDLE),
}
pub trait ID3D11CryptoSession_Impl: ID3D11DeviceChild_Impl {
fn GetCryptoType(&self, pcryptotype: *mut windows_core::GUID);
fn GetDecoderProfile(&self, pdecoderprofile: *mut windows_core::GUID);
fn GetCertificateSize(&self) -> windows_core::Result<u32>;
fn GetCertificate(
&self,
certificatesize: u32,
pcertificate: *mut u8,
) -> windows_core::Result<()>;
fn GetCryptoSessionHandle(&self, pcryptosessionhandle: *mut crate::Foundation::HANDLE);
}
impl ID3D11CryptoSession_Vtbl {
pub const fn new<Identity: ID3D11CryptoSession_Impl, const OFFSET: isize>() -> Self {
unsafe extern "system" fn GetCryptoType<
Identity: ID3D11CryptoSession_Impl,
const OFFSET: isize,
>(
this: *mut core::ffi::c_void,
pcryptotype: *mut windows_core::GUID,
) {
unsafe {
let this: &Identity =
&*((this as *const *const ()).offset(OFFSET) as *const Identity);
ID3D11CryptoSession_Impl::GetCryptoType(
this,
core::mem::transmute_copy(&pcryptotype),
)
}
}
unsafe extern "system" fn GetDecoderProfile<
Identity: ID3D11CryptoSession_Impl,
const OFFSET: isize,
>(
this: *mut core::ffi::c_void,
pdecoderprofile: *mut windows_core::GUID,
) {
unsafe {
let this: &Identity =
&*((this as *const *const ()).offset(OFFSET) as *const Identity);
ID3D11CryptoSession_Impl::GetDecoderProfile(
this,
core::mem::transmute_copy(&pdecoderprofile),
)
}
}
unsafe extern "system" fn GetCertificateSize<
Identity: ID3D11CryptoSession_Impl,
const OFFSET: isize,
>(
this: *mut core::ffi::c_void,
pcertificatesize: *mut u32,
) -> windows_core::HRESULT {
unsafe {
let this: &Identity =
&*((this as *const *const ()).offset(OFFSET) as *const Identity);
match ID3D11CryptoSession_Impl::GetCertificateSize(this) {
Ok(ok__) => {
pcertificatesize.write(core::mem::transmute(ok__));
windows_core::HRESULT(0)
}
Err(err) => err.into(),
}
}
}
unsafe extern "system" fn GetCertificate<
Identity: ID3D11CryptoSession_Impl,
const OFFSET: isize,
>(
this: *mut core::ffi::c_void,
certificatesize: u32,
pcertificate: *mut u8,
) -> windows_core::HRESULT {
unsafe {
let this: &Identity =
&*((this as *const *const ()).offset(OFFSET) as *const Identity);
ID3D11CryptoSession_Impl::GetCertificate(
this,
core::mem::transmute_copy(&certificatesize),
core::mem::transmute_copy(&pcertificate),
)
.into()
}
}
unsafe extern "system" fn GetCryptoSessionHandle<
Identity: ID3D11CryptoSession_Impl,
const OFFSET: isize,
>(
this: *mut core::ffi::c_void,
pcryptosessionhandle: *mut crate::Foundation::HANDLE,
) {
unsafe {
let this: &Identity =
&*((this as *const *const ()).offset(OFFSET) as *const Identity);
ID3D11CryptoSession_Impl::GetCryptoSessionHandle(
this,
core::mem::transmute_copy(&pcryptosessionhandle),
)
}
}
Self {
base__: ID3D11DeviceChild_Vtbl::new::<Identity, OFFSET>(),
GetCryptoType: GetCryptoType::<Identity, OFFSET>,
GetDecoderProfile: GetDecoderProfile::<Identity, OFFSET>,
GetCertificateSize: GetCertificateSize::<Identity, OFFSET>,
GetCertificate: GetCertificate::<Identity, OFFSET>,
GetCryptoSessionHandle: GetCryptoSessionHandle::<Identity, OFFSET>,
}
}
pub fn matches(iid: &windows_core::GUID) -> bool {
iid == &<ID3D11CryptoSession as windows_core::Interface>::IID
|| iid == &<ID3D11DeviceChild as windows_core::Interface>::IID
}
}
impl windows_core::RuntimeName for ID3D11CryptoSession {}
unsafe impl Send for ID3D11CryptoSession {}
unsafe impl Sync for ID3D11CryptoSession {}
windows_core::imp::define_interface!(
ID3D11Debug,
ID3D11Debug_Vtbl,
0x79cf2233_7536_4948_9d36_1e4692dc5760
);
windows_core::imp::interface_hierarchy!(ID3D11Debug, windows_core::IUnknown);
impl ID3D11Debug {
pub unsafe fn SetFeatureMask(&self, mask: u32) -> windows_core::Result<()> {
unsafe {
(windows_core::Interface::vtable(self).SetFeatureMask)(
windows_core::Interface::as_raw(self),
mask,
)
.ok()
}
}
pub unsafe fn GetFeatureMask(&self) -> u32 {
unsafe {
(windows_core::Interface::vtable(self).GetFeatureMask)(windows_core::Interface::as_raw(
self,
))
}
}
pub unsafe fn SetPresentPerRenderOpDelay(&self, milliseconds: u32) -> windows_core::Result<()> {
unsafe {
(windows_core::Interface::vtable(self).SetPresentPerRenderOpDelay)(
windows_core::Interface::as_raw(self),
milliseconds,
)
.ok()
}
}
pub unsafe fn GetPresentPerRenderOpDelay(&self) -> u32 {
unsafe {
(windows_core::Interface::vtable(self).GetPresentPerRenderOpDelay)(
windows_core::Interface::as_raw(self),
)
}
}
#[cfg(feature = "Win32_Graphics_Dxgi")]
pub unsafe fn SetSwapChain<P0>(&self, pswapchain: P0) -> windows_core::Result<()>
where
P0: windows_core::Param<crate::Dxgi::IDXGISwapChain>,
{
unsafe {
(windows_core::Interface::vtable(self).SetSwapChain)(
windows_core::Interface::as_raw(self),
pswapchain.param().abi(),
)
.ok()
}
}
#[cfg(feature = "Win32_Graphics_Dxgi")]
pub unsafe fn GetSwapChain(&self) -> windows_core::Result<crate::Dxgi::IDXGISwapChain> {
unsafe {
let mut result__ = core::mem::zeroed();
(windows_core::Interface::vtable(self).GetSwapChain)(
windows_core::Interface::as_raw(self),
&mut result__,
)
.and_then(|| windows_core::Type::from_abi(result__))
}
}
pub unsafe fn ValidateContext<P0>(&self, pcontext: P0) -> windows_core::Result<()>
where
P0: windows_core::Param<ID3D11DeviceContext>,
{
unsafe {
(windows_core::Interface::vtable(self).ValidateContext)(
windows_core::Interface::as_raw(self),
pcontext.param().abi(),
)
.ok()
}
}
pub unsafe fn ReportLiveDeviceObjects(
&self,
flags: D3D11_RLDO_FLAGS,
) -> windows_core::Result<()> {
unsafe {
(windows_core::Interface::vtable(self).ReportLiveDeviceObjects)(
windows_core::Interface::as_raw(self),
flags,
)
.ok()
}
}
pub unsafe fn ValidateContextForDispatch<P0>(&self, pcontext: P0) -> windows_core::Result<()>
where
P0: windows_core::Param<ID3D11DeviceContext>,
{
unsafe {
(windows_core::Interface::vtable(self).ValidateContextForDispatch)(
windows_core::Interface::as_raw(self),
pcontext.param().abi(),
)
.ok()
}
}
}
#[repr(C)]
pub struct ID3D11Debug_Vtbl {
pub base__: windows_core::IUnknown_Vtbl,
pub SetFeatureMask:
unsafe extern "system" fn(*mut core::ffi::c_void, u32) -> windows_core::HRESULT,
pub GetFeatureMask: unsafe extern "system" fn(*mut core::ffi::c_void) -> u32,
pub SetPresentPerRenderOpDelay:
unsafe extern "system" fn(*mut core::ffi::c_void, u32) -> windows_core::HRESULT,
pub GetPresentPerRenderOpDelay: unsafe extern "system" fn(*mut core::ffi::c_void) -> u32,
#[cfg(feature = "Win32_Graphics_Dxgi")]
pub SetSwapChain: unsafe extern "system" fn(
*mut core::ffi::c_void,
*mut core::ffi::c_void,
) -> windows_core::HRESULT,
#[cfg(not(feature = "Win32_Graphics_Dxgi"))]
SetSwapChain: usize,
#[cfg(feature = "Win32_Graphics_Dxgi")]
pub GetSwapChain: unsafe extern "system" fn(
*mut core::ffi::c_void,
*mut *mut core::ffi::c_void,
) -> windows_core::HRESULT,
#[cfg(not(feature = "Win32_Graphics_Dxgi"))]
GetSwapChain: usize,
pub ValidateContext: unsafe extern "system" fn(
*mut core::ffi::c_void,
*mut core::ffi::c_void,
) -> windows_core::HRESULT,
pub ReportLiveDeviceObjects: unsafe extern "system" fn(
*mut core::ffi::c_void,
D3D11_RLDO_FLAGS,
) -> windows_core::HRESULT,
pub ValidateContextForDispatch: unsafe extern "system" fn(
*mut core::ffi::c_void,
*mut core::ffi::c_void,
) -> windows_core::HRESULT,
}
#[cfg(feature = "Win32_Graphics_Dxgi")]
pub trait ID3D11Debug_Impl: windows_core::IUnknownImpl {
fn SetFeatureMask(&self, mask: u32) -> windows_core::Result<()>;
fn GetFeatureMask(&self) -> u32;
fn SetPresentPerRenderOpDelay(&self, milliseconds: u32) -> windows_core::Result<()>;
fn GetPresentPerRenderOpDelay(&self) -> u32;
fn SetSwapChain(
&self,
pswapchain: windows_core::Ref<'_, crate::Dxgi::IDXGISwapChain>,
) -> windows_core::Result<()>;
fn GetSwapChain(&self) -> windows_core::Result<crate::Dxgi::IDXGISwapChain>;
fn ValidateContext(
&self,
pcontext: windows_core::Ref<'_, ID3D11DeviceContext>,
) -> windows_core::Result<()>;
fn ReportLiveDeviceObjects(&self, flags: D3D11_RLDO_FLAGS) -> windows_core::Result<()>;
fn ValidateContextForDispatch(
&self,
pcontext: windows_core::Ref<'_, ID3D11DeviceContext>,
) -> windows_core::Result<()>;
}
#[cfg(feature = "Win32_Graphics_Dxgi")]
impl ID3D11Debug_Vtbl {
pub const fn new<Identity: ID3D11Debug_Impl, const OFFSET: isize>() -> Self {
unsafe extern "system" fn SetFeatureMask<
Identity: ID3D11Debug_Impl,
const OFFSET: isize,
>(
this: *mut core::ffi::c_void,
mask: u32,
) -> windows_core::HRESULT {
unsafe {
let this: &Identity =
&*((this as *const *const ()).offset(OFFSET) as *const Identity);
ID3D11Debug_Impl::SetFeatureMask(this, core::mem::transmute_copy(&mask)).into()
}
}
unsafe extern "system" fn GetFeatureMask<
Identity: ID3D11Debug_Impl,
const OFFSET: isize,
>(
this: *mut core::ffi::c_void,
) -> u32 {
unsafe {
let this: &Identity =
&*((this as *const *const ()).offset(OFFSET) as *const Identity);
ID3D11Debug_Impl::GetFeatureMask(this)
}
}
unsafe extern "system" fn SetPresentPerRenderOpDelay<
Identity: ID3D11Debug_Impl,
const OFFSET: isize,
>(
this: *mut core::ffi::c_void,
milliseconds: u32,
) -> windows_core::HRESULT {
unsafe {
let this: &Identity =
&*((this as *const *const ()).offset(OFFSET) as *const Identity);
ID3D11Debug_Impl::SetPresentPerRenderOpDelay(
this,
core::mem::transmute_copy(&milliseconds),
)
.into()
}
}
unsafe extern "system" fn GetPresentPerRenderOpDelay<
Identity: ID3D11Debug_Impl,
const OFFSET: isize,
>(
this: *mut core::ffi::c_void,
) -> u32 {
unsafe {
let this: &Identity =
&*((this as *const *const ()).offset(OFFSET) as *const Identity);
ID3D11Debug_Impl::GetPresentPerRenderOpDelay(this)
}
}
unsafe extern "system" fn SetSwapChain<Identity: ID3D11Debug_Impl, const OFFSET: isize>(
this: *mut core::ffi::c_void,
pswapchain: *mut core::ffi::c_void,
) -> windows_core::HRESULT {
unsafe {
let this: &Identity =
&*((this as *const *const ()).offset(OFFSET) as *const Identity);
ID3D11Debug_Impl::SetSwapChain(this, core::mem::transmute_copy(&pswapchain)).into()
}
}
unsafe extern "system" fn GetSwapChain<Identity: ID3D11Debug_Impl, const OFFSET: isize>(
this: *mut core::ffi::c_void,
ppswapchain: *mut *mut core::ffi::c_void,
) -> windows_core::HRESULT {
unsafe {
let this: &Identity =
&*((this as *const *const ()).offset(OFFSET) as *const Identity);
match ID3D11Debug_Impl::GetSwapChain(this) {
Ok(ok__) => {
ppswapchain.write(core::mem::transmute(ok__));
windows_core::HRESULT(0)
}
Err(err) => err.into(),
}
}
}
unsafe extern "system" fn ValidateContext<
Identity: ID3D11Debug_Impl,
const OFFSET: isize,
>(
this: *mut core::ffi::c_void,
pcontext: *mut core::ffi::c_void,
) -> windows_core::HRESULT {
unsafe {
let this: &Identity =
&*((this as *const *const ()).offset(OFFSET) as *const Identity);
ID3D11Debug_Impl::ValidateContext(this, core::mem::transmute_copy(&pcontext)).into()
}
}
unsafe extern "system" fn ReportLiveDeviceObjects<
Identity: ID3D11Debug_Impl,
const OFFSET: isize,
>(
this: *mut core::ffi::c_void,
flags: D3D11_RLDO_FLAGS,
) -> windows_core::HRESULT {
unsafe {
let this: &Identity =
&*((this as *const *const ()).offset(OFFSET) as *const Identity);
ID3D11Debug_Impl::ReportLiveDeviceObjects(this, core::mem::transmute_copy(&flags))
.into()
}
}
unsafe extern "system" fn ValidateContextForDispatch<
Identity: ID3D11Debug_Impl,
const OFFSET: isize,
>(
this: *mut core::ffi::c_void,
pcontext: *mut core::ffi::c_void,
) -> windows_core::HRESULT {
unsafe {
let this: &Identity =
&*((this as *const *const ()).offset(OFFSET) as *const Identity);
ID3D11Debug_Impl::ValidateContextForDispatch(
this,
core::mem::transmute_copy(&pcontext),
)
.into()
}
}
Self {
base__: windows_core::IUnknown_Vtbl::new::<Identity, OFFSET>(),
SetFeatureMask: SetFeatureMask::<Identity, OFFSET>,
GetFeatureMask: GetFeatureMask::<Identity, OFFSET>,
SetPresentPerRenderOpDelay: SetPresentPerRenderOpDelay::<Identity, OFFSET>,
GetPresentPerRenderOpDelay: GetPresentPerRenderOpDelay::<Identity, OFFSET>,
SetSwapChain: SetSwapChain::<Identity, OFFSET>,
GetSwapChain: GetSwapChain::<Identity, OFFSET>,
ValidateContext: ValidateContext::<Identity, OFFSET>,
ReportLiveDeviceObjects: ReportLiveDeviceObjects::<Identity, OFFSET>,
ValidateContextForDispatch: ValidateContextForDispatch::<Identity, OFFSET>,
}
}
pub fn matches(iid: &windows_core::GUID) -> bool {
iid == &<ID3D11Debug as windows_core::Interface>::IID
}
}
#[cfg(feature = "Win32_Graphics_Dxgi")]
impl windows_core::RuntimeName for ID3D11Debug {}
#[cfg(feature = "Win32_Graphics_Dxgi")]
unsafe impl Send for ID3D11Debug {}
#[cfg(feature = "Win32_Graphics_Dxgi")]
unsafe impl Sync for ID3D11Debug {}
windows_core::imp::define_interface!(
ID3D11DepthStencilState,
ID3D11DepthStencilState_Vtbl,
0x03823efb_8d8f_4e1c_9aa2_f64bb2cbfdf1
);
impl core::ops::Deref for ID3D11DepthStencilState {
type Target = ID3D11DeviceChild;
fn deref(&self) -> &Self::Target {
unsafe { core::mem::transmute(self) }
}
}
windows_core::imp::interface_hierarchy!(
ID3D11DepthStencilState,
windows_core::IUnknown,
ID3D11DeviceChild
);
impl ID3D11DepthStencilState {
pub unsafe fn GetDesc(&self, pdesc: *mut D3D11_DEPTH_STENCIL_DESC) {
unsafe {
(windows_core::Interface::vtable(self).GetDesc)(
windows_core::Interface::as_raw(self),
core::mem::transmute(pdesc),
)
}
}
}
#[repr(C)]
pub struct ID3D11DepthStencilState_Vtbl {
pub base__: ID3D11DeviceChild_Vtbl,
pub GetDesc: unsafe extern "system" fn(*mut core::ffi::c_void, *mut D3D11_DEPTH_STENCIL_DESC),
}
pub trait ID3D11DepthStencilState_Impl: ID3D11DeviceChild_Impl {
fn GetDesc(&self, pdesc: *mut D3D11_DEPTH_STENCIL_DESC);
}
impl ID3D11DepthStencilState_Vtbl {
pub const fn new<Identity: ID3D11DepthStencilState_Impl, const OFFSET: isize>() -> Self {
unsafe extern "system" fn GetDesc<
Identity: ID3D11DepthStencilState_Impl,
const OFFSET: isize,
>(
this: *mut core::ffi::c_void,
pdesc: *mut D3D11_DEPTH_STENCIL_DESC,
) {
unsafe {
let this: &Identity =
&*((this as *const *const ()).offset(OFFSET) as *const Identity);
ID3D11DepthStencilState_Impl::GetDesc(this, core::mem::transmute_copy(&pdesc))
}
}
Self {
base__: ID3D11DeviceChild_Vtbl::new::<Identity, OFFSET>(),
GetDesc: GetDesc::<Identity, OFFSET>,
}
}
pub fn matches(iid: &windows_core::GUID) -> bool {
iid == &<ID3D11DepthStencilState as windows_core::Interface>::IID
|| iid == &<ID3D11DeviceChild as windows_core::Interface>::IID
}
}
impl windows_core::RuntimeName for ID3D11DepthStencilState {}
unsafe impl Send for ID3D11DepthStencilState {}
unsafe impl Sync for ID3D11DepthStencilState {}
windows_core::imp::define_interface!(
ID3D11DepthStencilView,
ID3D11DepthStencilView_Vtbl,
0x9fdac92a_1876_48c3_afad_25b94f84a9b6
);
impl core::ops::Deref for ID3D11DepthStencilView {
type Target = ID3D11View;
fn deref(&self) -> &Self::Target {
unsafe { core::mem::transmute(self) }
}
}
windows_core::imp::interface_hierarchy!(
ID3D11DepthStencilView,
windows_core::IUnknown,
ID3D11DeviceChild,
ID3D11View
);
impl ID3D11DepthStencilView {
#[cfg(feature = "Win32_Graphics_Dxgi_Common")]
pub unsafe fn GetDesc(&self, pdesc: *mut D3D11_DEPTH_STENCIL_VIEW_DESC) {
unsafe {
(windows_core::Interface::vtable(self).GetDesc)(
windows_core::Interface::as_raw(self),
core::mem::transmute(pdesc),
)
}
}
}
#[repr(C)]
pub struct ID3D11DepthStencilView_Vtbl {
pub base__: ID3D11View_Vtbl,
#[cfg(feature = "Win32_Graphics_Dxgi_Common")]
pub GetDesc:
unsafe extern "system" fn(*mut core::ffi::c_void, *mut D3D11_DEPTH_STENCIL_VIEW_DESC),
#[cfg(not(feature = "Win32_Graphics_Dxgi_Common"))]
GetDesc: usize,
}
#[cfg(feature = "Win32_Graphics_Dxgi_Common")]
pub trait ID3D11DepthStencilView_Impl: ID3D11View_Impl {
fn GetDesc(&self, pdesc: *mut D3D11_DEPTH_STENCIL_VIEW_DESC);
}
#[cfg(feature = "Win32_Graphics_Dxgi_Common")]
impl ID3D11DepthStencilView_Vtbl {
pub const fn new<Identity: ID3D11DepthStencilView_Impl, const OFFSET: isize>() -> Self {
unsafe extern "system" fn GetDesc<
Identity: ID3D11DepthStencilView_Impl,
const OFFSET: isize,
>(
this: *mut core::ffi::c_void,
pdesc: *mut D3D11_DEPTH_STENCIL_VIEW_DESC,
) {
unsafe {
let this: &Identity =
&*((this as *const *const ()).offset(OFFSET) as *const Identity);
ID3D11DepthStencilView_Impl::GetDesc(this, core::mem::transmute_copy(&pdesc))
}
}
Self {
base__: ID3D11View_Vtbl::new::<Identity, OFFSET>(),
GetDesc: GetDesc::<Identity, OFFSET>,
}
}
pub fn matches(iid: &windows_core::GUID) -> bool {
iid == &<ID3D11DepthStencilView as windows_core::Interface>::IID
|| iid == &<ID3D11DeviceChild as windows_core::Interface>::IID
|| iid == &<ID3D11View as windows_core::Interface>::IID
}
}
#[cfg(feature = "Win32_Graphics_Dxgi_Common")]
impl windows_core::RuntimeName for ID3D11DepthStencilView {}
#[cfg(feature = "Win32_Graphics_Dxgi_Common")]
unsafe impl Send for ID3D11DepthStencilView {}
#[cfg(feature = "Win32_Graphics_Dxgi_Common")]
unsafe impl Sync for ID3D11DepthStencilView {}
windows_core::imp::define_interface!(
ID3D11Device,
ID3D11Device_Vtbl,
0xdb6f6ddb_ac77_4e88_8253_819df9bbf140
);
windows_core::imp::interface_hierarchy!(ID3D11Device, windows_core::IUnknown);
impl ID3D11Device {
pub unsafe fn CreateBuffer(
&self,
pdesc: *const D3D11_BUFFER_DESC,
pinitialdata: Option<*const D3D11_SUBRESOURCE_DATA>,
ppbuffer: Option<*mut Option<ID3D11Buffer>>,
) -> windows_core::Result<()> {
unsafe {
(windows_core::Interface::vtable(self).CreateBuffer)(
windows_core::Interface::as_raw(self),
pdesc,
core::mem::transmute(pinitialdata.unwrap_or(core::mem::zeroed())),
core::mem::transmute(ppbuffer.unwrap_or(core::mem::zeroed())),
)
.ok()
}
}
#[cfg(feature = "Win32_Graphics_Dxgi_Common")]
pub unsafe fn CreateTexture1D(
&self,
pdesc: *const D3D11_TEXTURE1D_DESC,
pinitialdata: Option<*const D3D11_SUBRESOURCE_DATA>,
pptexture1d: Option<*mut Option<ID3D11Texture1D>>,
) -> windows_core::Result<()> {
unsafe {
(windows_core::Interface::vtable(self).CreateTexture1D)(
windows_core::Interface::as_raw(self),
pdesc,
core::mem::transmute(pinitialdata.unwrap_or(core::mem::zeroed())),
core::mem::transmute(pptexture1d.unwrap_or(core::mem::zeroed())),
)
.ok()
}
}
#[cfg(feature = "Win32_Graphics_Dxgi_Common")]
pub unsafe fn CreateTexture2D(
&self,
pdesc: *const D3D11_TEXTURE2D_DESC,
pinitialdata: Option<*const D3D11_SUBRESOURCE_DATA>,
pptexture2d: Option<*mut Option<ID3D11Texture2D>>,
) -> windows_core::Result<()> {
unsafe {
(windows_core::Interface::vtable(self).CreateTexture2D)(
windows_core::Interface::as_raw(self),
pdesc,
core::mem::transmute(pinitialdata.unwrap_or(core::mem::zeroed())),
core::mem::transmute(pptexture2d.unwrap_or(core::mem::zeroed())),
)
.ok()
}
}
#[cfg(feature = "Win32_Graphics_Dxgi_Common")]
pub unsafe fn CreateTexture3D(
&self,
pdesc: *const D3D11_TEXTURE3D_DESC,
pinitialdata: Option<*const D3D11_SUBRESOURCE_DATA>,
pptexture3d: Option<*mut Option<ID3D11Texture3D>>,
) -> windows_core::Result<()> {
unsafe {
(windows_core::Interface::vtable(self).CreateTexture3D)(
windows_core::Interface::as_raw(self),
pdesc,
core::mem::transmute(pinitialdata.unwrap_or(core::mem::zeroed())),
core::mem::transmute(pptexture3d.unwrap_or(core::mem::zeroed())),
)
.ok()
}
}
#[cfg(all(
feature = "Win32_Graphics_Direct3D",
feature = "Win32_Graphics_Dxgi_Common"
))]
pub unsafe fn CreateShaderResourceView<P0>(
&self,
presource: P0,
pdesc: Option<*const D3D11_SHADER_RESOURCE_VIEW_DESC>,
ppsrview: Option<*mut Option<ID3D11ShaderResourceView>>,
) -> windows_core::Result<()>
where
P0: windows_core::Param<ID3D11Resource>,
{
unsafe {
(windows_core::Interface::vtable(self).CreateShaderResourceView)(
windows_core::Interface::as_raw(self),
presource.param().abi(),
core::mem::transmute(pdesc.unwrap_or(core::mem::zeroed())),
core::mem::transmute(ppsrview.unwrap_or(core::mem::zeroed())),
)
.ok()
}
}
#[cfg(feature = "Win32_Graphics_Dxgi_Common")]
pub unsafe fn CreateUnorderedAccessView<P0>(
&self,
presource: P0,
pdesc: Option<*const D3D11_UNORDERED_ACCESS_VIEW_DESC>,
ppuaview: Option<*mut Option<ID3D11UnorderedAccessView>>,
) -> windows_core::Result<()>
where
P0: windows_core::Param<ID3D11Resource>,
{
unsafe {
(windows_core::Interface::vtable(self).CreateUnorderedAccessView)(
windows_core::Interface::as_raw(self),
presource.param().abi(),
core::mem::transmute(pdesc.unwrap_or(core::mem::zeroed())),
core::mem::transmute(ppuaview.unwrap_or(core::mem::zeroed())),
)
.ok()
}
}
#[cfg(feature = "Win32_Graphics_Dxgi_Common")]
pub unsafe fn CreateRenderTargetView<P0>(
&self,
presource: P0,
pdesc: Option<*const D3D11_RENDER_TARGET_VIEW_DESC>,
pprtview: Option<*mut Option<ID3D11RenderTargetView>>,
) -> windows_core::Result<()>
where
P0: windows_core::Param<ID3D11Resource>,
{
unsafe {
(windows_core::Interface::vtable(self).CreateRenderTargetView)(
windows_core::Interface::as_raw(self),
presource.param().abi(),
core::mem::transmute(pdesc.unwrap_or(core::mem::zeroed())),
core::mem::transmute(pprtview.unwrap_or(core::mem::zeroed())),
)
.ok()
}
}
#[cfg(feature = "Win32_Graphics_Dxgi_Common")]
pub unsafe fn CreateDepthStencilView<P0>(
&self,
presource: P0,
pdesc: Option<*const D3D11_DEPTH_STENCIL_VIEW_DESC>,
ppdepthstencilview: Option<*mut Option<ID3D11DepthStencilView>>,
) -> windows_core::Result<()>
where
P0: windows_core::Param<ID3D11Resource>,
{
unsafe {
(windows_core::Interface::vtable(self).CreateDepthStencilView)(
windows_core::Interface::as_raw(self),
presource.param().abi(),
core::mem::transmute(pdesc.unwrap_or(core::mem::zeroed())),
core::mem::transmute(ppdepthstencilview.unwrap_or(core::mem::zeroed())),
)
.ok()
}
}
#[cfg(feature = "Win32_Graphics_Dxgi_Common")]
pub unsafe fn CreateInputLayout(
&self,
pinputelementdescs: &[D3D11_INPUT_ELEMENT_DESC],
pshaderbytecodewithinputsignature: &[u8],
ppinputlayout: Option<*mut Option<ID3D11InputLayout>>,
) -> windows_core::Result<()> {
unsafe {
(windows_core::Interface::vtable(self).CreateInputLayout)(
windows_core::Interface::as_raw(self),
core::mem::transmute(pinputelementdescs.as_ptr()),
pinputelementdescs.len().try_into().unwrap(),
core::mem::transmute(pshaderbytecodewithinputsignature.as_ptr()),
pshaderbytecodewithinputsignature.len().try_into().unwrap(),
core::mem::transmute(ppinputlayout.unwrap_or(core::mem::zeroed())),
)
.ok()
}
}
pub unsafe fn CreateVertexShader<P2>(
&self,
pshaderbytecode: &[u8],
pclasslinkage: P2,
ppvertexshader: Option<*mut Option<ID3D11VertexShader>>,
) -> windows_core::Result<()>
where
P2: windows_core::Param<ID3D11ClassLinkage>,
{
unsafe {
(windows_core::Interface::vtable(self).CreateVertexShader)(
windows_core::Interface::as_raw(self),
core::mem::transmute(pshaderbytecode.as_ptr()),
pshaderbytecode.len().try_into().unwrap(),
pclasslinkage.param().abi(),
core::mem::transmute(ppvertexshader.unwrap_or(core::mem::zeroed())),
)
.ok()
}
}
pub unsafe fn CreateGeometryShader<P2>(
&self,
pshaderbytecode: &[u8],
pclasslinkage: P2,
ppgeometryshader: Option<*mut Option<ID3D11GeometryShader>>,
) -> windows_core::Result<()>
where
P2: windows_core::Param<ID3D11ClassLinkage>,
{
unsafe {
(windows_core::Interface::vtable(self).CreateGeometryShader)(
windows_core::Interface::as_raw(self),
core::mem::transmute(pshaderbytecode.as_ptr()),
pshaderbytecode.len().try_into().unwrap(),
pclasslinkage.param().abi(),
core::mem::transmute(ppgeometryshader.unwrap_or(core::mem::zeroed())),
)
.ok()
}
}
pub unsafe fn CreateGeometryShaderWithStreamOutput<P7>(
&self,
pshaderbytecode: &[u8],
psodeclaration: Option<&[D3D11_SO_DECLARATION_ENTRY]>,
pbufferstrides: Option<&[u32]>,
rasterizedstream: u32,
pclasslinkage: P7,
ppgeometryshader: Option<*mut Option<ID3D11GeometryShader>>,
) -> windows_core::Result<()>
where
P7: windows_core::Param<ID3D11ClassLinkage>,
{
unsafe {
(windows_core::Interface::vtable(self).CreateGeometryShaderWithStreamOutput)(
windows_core::Interface::as_raw(self),
core::mem::transmute(pshaderbytecode.as_ptr()),
pshaderbytecode.len().try_into().unwrap(),
core::mem::transmute(
psodeclaration
.map_or(core::ptr::null(), |slice| slice.as_ptr()),
),
psodeclaration
.map_or(0, |slice| slice.len().try_into().unwrap()),
core::mem::transmute(
pbufferstrides
.map_or(core::ptr::null(), |slice| slice.as_ptr()),
),
pbufferstrides
.map_or(0, |slice| slice.len().try_into().unwrap()),
rasterizedstream,
pclasslinkage.param().abi(),
core::mem::transmute(ppgeometryshader.unwrap_or(core::mem::zeroed())),
)
.ok()
}
}
pub unsafe fn CreatePixelShader<P2>(
&self,
pshaderbytecode: &[u8],
pclasslinkage: P2,
pppixelshader: Option<*mut Option<ID3D11PixelShader>>,
) -> windows_core::Result<()>
where
P2: windows_core::Param<ID3D11ClassLinkage>,
{
unsafe {
(windows_core::Interface::vtable(self).CreatePixelShader)(
windows_core::Interface::as_raw(self),
core::mem::transmute(pshaderbytecode.as_ptr()),
pshaderbytecode.len().try_into().unwrap(),
pclasslinkage.param().abi(),
core::mem::transmute(pppixelshader.unwrap_or(core::mem::zeroed())),
)
.ok()
}
}
pub unsafe fn CreateHullShader<P2>(
&self,
pshaderbytecode: &[u8],
pclasslinkage: P2,
pphullshader: Option<*mut Option<ID3D11HullShader>>,
) -> windows_core::Result<()>
where
P2: windows_core::Param<ID3D11ClassLinkage>,
{
unsafe {
(windows_core::Interface::vtable(self).CreateHullShader)(
windows_core::Interface::as_raw(self),
core::mem::transmute(pshaderbytecode.as_ptr()),
pshaderbytecode.len().try_into().unwrap(),
pclasslinkage.param().abi(),
core::mem::transmute(pphullshader.unwrap_or(core::mem::zeroed())),
)
.ok()
}
}
pub unsafe fn CreateDomainShader<P2>(
&self,
pshaderbytecode: &[u8],
pclasslinkage: P2,
ppdomainshader: Option<*mut Option<ID3D11DomainShader>>,
) -> windows_core::Result<()>
where
P2: windows_core::Param<ID3D11ClassLinkage>,
{
unsafe {
(windows_core::Interface::vtable(self).CreateDomainShader)(
windows_core::Interface::as_raw(self),
core::mem::transmute(pshaderbytecode.as_ptr()),
pshaderbytecode.len().try_into().unwrap(),
pclasslinkage.param().abi(),
core::mem::transmute(ppdomainshader.unwrap_or(core::mem::zeroed())),
)
.ok()
}
}
pub unsafe fn CreateComputeShader<P2>(
&self,
pshaderbytecode: &[u8],
pclasslinkage: P2,
ppcomputeshader: Option<*mut Option<ID3D11ComputeShader>>,
) -> windows_core::Result<()>
where
P2: windows_core::Param<ID3D11ClassLinkage>,
{
unsafe {
(windows_core::Interface::vtable(self).CreateComputeShader)(
windows_core::Interface::as_raw(self),
core::mem::transmute(pshaderbytecode.as_ptr()),
pshaderbytecode.len().try_into().unwrap(),
pclasslinkage.param().abi(),
core::mem::transmute(ppcomputeshader.unwrap_or(core::mem::zeroed())),
)
.ok()
}
}
pub unsafe fn CreateClassLinkage(&self) -> windows_core::Result<ID3D11ClassLinkage> {
unsafe {
let mut result__ = core::mem::zeroed();
(windows_core::Interface::vtable(self).CreateClassLinkage)(
windows_core::Interface::as_raw(self),
&mut result__,
)
.and_then(|| windows_core::Type::from_abi(result__))
}
}
pub unsafe fn CreateBlendState(
&self,
pblendstatedesc: *const D3D11_BLEND_DESC,
ppblendstate: Option<*mut Option<ID3D11BlendState>>,
) -> windows_core::Result<()> {
unsafe {
(windows_core::Interface::vtable(self).CreateBlendState)(
windows_core::Interface::as_raw(self),
pblendstatedesc,
core::mem::transmute(ppblendstate.unwrap_or(core::mem::zeroed())),
)
.ok()
}
}
pub unsafe fn CreateDepthStencilState(
&self,
pdepthstencildesc: *const D3D11_DEPTH_STENCIL_DESC,
ppdepthstencilstate: Option<*mut Option<ID3D11DepthStencilState>>,
) -> windows_core::Result<()> {
unsafe {
(windows_core::Interface::vtable(self).CreateDepthStencilState)(
windows_core::Interface::as_raw(self),
pdepthstencildesc,
core::mem::transmute(ppdepthstencilstate.unwrap_or(core::mem::zeroed())),
)
.ok()
}
}
pub unsafe fn CreateRasterizerState(
&self,
prasterizerdesc: *const D3D11_RASTERIZER_DESC,
pprasterizerstate: Option<*mut Option<ID3D11RasterizerState>>,
) -> windows_core::Result<()> {
unsafe {
(windows_core::Interface::vtable(self).CreateRasterizerState)(
windows_core::Interface::as_raw(self),
prasterizerdesc,
core::mem::transmute(pprasterizerstate.unwrap_or(core::mem::zeroed())),
)
.ok()
}
}
pub unsafe fn CreateSamplerState(
&self,
psamplerdesc: *const D3D11_SAMPLER_DESC,
ppsamplerstate: Option<*mut Option<ID3D11SamplerState>>,
) -> windows_core::Result<()> {
unsafe {
(windows_core::Interface::vtable(self).CreateSamplerState)(
windows_core::Interface::as_raw(self),
psamplerdesc,
core::mem::transmute(ppsamplerstate.unwrap_or(core::mem::zeroed())),
)
.ok()
}
}
pub unsafe fn CreateQuery(
&self,
pquerydesc: *const D3D11_QUERY_DESC,
ppquery: Option<*mut Option<ID3D11Query>>,
) -> windows_core::Result<()> {
unsafe {
(windows_core::Interface::vtable(self).CreateQuery)(
windows_core::Interface::as_raw(self),
pquerydesc,
core::mem::transmute(ppquery.unwrap_or(core::mem::zeroed())),
)
.ok()
}
}
pub unsafe fn CreatePredicate(
&self,
ppredicatedesc: *const D3D11_QUERY_DESC,
pppredicate: Option<*mut Option<ID3D11Predicate>>,
) -> windows_core::Result<()> {
unsafe {
(windows_core::Interface::vtable(self).CreatePredicate)(
windows_core::Interface::as_raw(self),
ppredicatedesc,
core::mem::transmute(pppredicate.unwrap_or(core::mem::zeroed())),
)
.ok()
}
}
pub unsafe fn CreateCounter(
&self,
pcounterdesc: *const D3D11_COUNTER_DESC,
ppcounter: Option<*mut Option<ID3D11Counter>>,
) -> windows_core::Result<()> {
unsafe {
(windows_core::Interface::vtable(self).CreateCounter)(
windows_core::Interface::as_raw(self),
pcounterdesc,
core::mem::transmute(ppcounter.unwrap_or(core::mem::zeroed())),
)
.ok()
}
}
pub unsafe fn CreateDeferredContext(
&self,
contextflags: u32,
ppdeferredcontext: Option<*mut Option<ID3D11DeviceContext>>,
) -> windows_core::Result<()> {
unsafe {
(windows_core::Interface::vtable(self).CreateDeferredContext)(
windows_core::Interface::as_raw(self),
contextflags,
core::mem::transmute(ppdeferredcontext.unwrap_or(core::mem::zeroed())),
)
.ok()
}
}
pub unsafe fn OpenSharedResource<T>(
&self,
hresource: crate::Foundation::HANDLE,
result__: *mut Option<T>,
) -> windows_core::Result<()>
where
T: windows_core::Interface,
{
unsafe {
(windows_core::Interface::vtable(self).OpenSharedResource)(
windows_core::Interface::as_raw(self),
hresource,
&T::IID,
result__ as *mut _ as *mut _,
)
.ok()
}
}
#[cfg(feature = "Win32_Graphics_Dxgi_Common")]
pub unsafe fn CheckFormatSupport(
&self,
format: crate::Dxgi::Common::DXGI_FORMAT,
) -> windows_core::Result<u32> {
unsafe {
let mut result__ = core::mem::zeroed();
(windows_core::Interface::vtable(self).CheckFormatSupport)(
windows_core::Interface::as_raw(self),
format,
&mut result__,
)
.map(|| result__)
}
}
#[cfg(feature = "Win32_Graphics_Dxgi_Common")]
pub unsafe fn CheckMultisampleQualityLevels(
&self,
format: crate::Dxgi::Common::DXGI_FORMAT,
samplecount: u32,
) -> windows_core::Result<u32> {
unsafe {
let mut result__ = core::mem::zeroed();
(windows_core::Interface::vtable(self).CheckMultisampleQualityLevels)(
windows_core::Interface::as_raw(self),
format,
samplecount,
&mut result__,
)
.map(|| result__)
}
}
pub unsafe fn CheckCounterInfo(&self) -> D3D11_COUNTER_INFO {
unsafe {
let mut result__ = core::mem::zeroed();
(windows_core::Interface::vtable(self).CheckCounterInfo)(
windows_core::Interface::as_raw(self),
&mut result__,
);
result__
}
}
pub unsafe fn CheckCounter(
&self,
pdesc: *const D3D11_COUNTER_DESC,
ptype: *mut D3D11_COUNTER_TYPE,
pactivecounters: *mut u32,
szname: Option<crate::core_supplemental::PSTR>,
pnamelength: Option<*mut u32>,
szunits: Option<crate::core_supplemental::PSTR>,
punitslength: Option<*mut u32>,
szdescription: Option<crate::core_supplemental::PSTR>,
pdescriptionlength: Option<*mut u32>,
) -> windows_core::Result<()> {
unsafe {
(windows_core::Interface::vtable(self).CheckCounter)(
windows_core::Interface::as_raw(self),
pdesc,
core::mem::transmute(ptype),
core::mem::transmute(pactivecounters),
core::mem::transmute(szname.unwrap_or(core::mem::zeroed())),
core::mem::transmute(pnamelength.unwrap_or(core::mem::zeroed())),
core::mem::transmute(szunits.unwrap_or(core::mem::zeroed())),
core::mem::transmute(punitslength.unwrap_or(core::mem::zeroed())),
core::mem::transmute(szdescription.unwrap_or(core::mem::zeroed())),
core::mem::transmute(pdescriptionlength.unwrap_or(core::mem::zeroed())),
)
.ok()
}
}
pub unsafe fn CheckFeatureSupport(
&self,
feature: D3D11_FEATURE,
pfeaturesupportdata: *mut core::ffi::c_void,
featuresupportdatasize: u32,
) -> windows_core::Result<()> {
unsafe {
(windows_core::Interface::vtable(self).CheckFeatureSupport)(
windows_core::Interface::as_raw(self),
feature,
core::mem::transmute(pfeaturesupportdata),
featuresupportdatasize,
)
.ok()
}
}
pub unsafe fn GetPrivateData(
&self,
guid: *const windows_core::GUID,
pdatasize: *mut u32,
pdata: Option<*mut core::ffi::c_void>,
) -> windows_core::Result<()> {
unsafe {
(windows_core::Interface::vtable(self).GetPrivateData)(
windows_core::Interface::as_raw(self),
guid,
core::mem::transmute(pdatasize),
core::mem::transmute(pdata.unwrap_or(core::mem::zeroed())),
)
.ok()
}
}
pub unsafe fn SetPrivateData(
&self,
guid: *const windows_core::GUID,
datasize: u32,
pdata: Option<*const core::ffi::c_void>,
) -> windows_core::Result<()> {
unsafe {
(windows_core::Interface::vtable(self).SetPrivateData)(
windows_core::Interface::as_raw(self),
guid,
datasize,
core::mem::transmute(pdata.unwrap_or(core::mem::zeroed())),
)
.ok()
}
}
pub unsafe fn SetPrivateDataInterface<P1>(
&self,
guid: *const windows_core::GUID,
pdata: P1,
) -> windows_core::Result<()>
where
P1: windows_core::Param<windows_core::IUnknown>,
{
unsafe {
(windows_core::Interface::vtable(self).SetPrivateDataInterface)(
windows_core::Interface::as_raw(self),
guid,
pdata.param().abi(),
)
.ok()
}
}
#[cfg(feature = "Win32_Graphics_Direct3D")]
pub unsafe fn GetFeatureLevel(&self) -> super::Direct3D::D3D_FEATURE_LEVEL {
unsafe {
(windows_core::Interface::vtable(self).GetFeatureLevel)(
windows_core::Interface::as_raw(self),
)
}
}
pub unsafe fn GetCreationFlags(&self) -> u32 {
unsafe {
(windows_core::Interface::vtable(self).GetCreationFlags)(
windows_core::Interface::as_raw(self),
)
}
}
pub unsafe fn GetDeviceRemovedReason(&self) -> windows_core::Result<()> {
unsafe {
(windows_core::Interface::vtable(self).GetDeviceRemovedReason)(
windows_core::Interface::as_raw(self),
)
.ok()
}
}
pub unsafe fn GetImmediateContext(&self) -> windows_core::Result<ID3D11DeviceContext> {
unsafe {
let mut result__ = core::mem::zeroed();
(windows_core::Interface::vtable(self).GetImmediateContext)(
windows_core::Interface::as_raw(self),
&mut result__,
);
windows_core::Type::from_abi(result__)
}
}
pub unsafe fn SetExceptionMode(&self, raiseflags: u32) -> windows_core::Result<()> {
unsafe {
(windows_core::Interface::vtable(self).SetExceptionMode)(
windows_core::Interface::as_raw(self),
raiseflags,
)
.ok()
}
}
pub unsafe fn GetExceptionMode(&self) -> u32 {
unsafe {
(windows_core::Interface::vtable(self).GetExceptionMode)(
windows_core::Interface::as_raw(self),
)
}
}
}
#[repr(C)]
pub struct ID3D11Device_Vtbl {
pub base__: windows_core::IUnknown_Vtbl,
pub CreateBuffer: unsafe extern "system" fn(
*mut core::ffi::c_void,
*const D3D11_BUFFER_DESC,
*const D3D11_SUBRESOURCE_DATA,
*mut *mut core::ffi::c_void,
) -> windows_core::HRESULT,
#[cfg(feature = "Win32_Graphics_Dxgi_Common")]
pub CreateTexture1D: unsafe extern "system" fn(
*mut core::ffi::c_void,
*const D3D11_TEXTURE1D_DESC,
*const D3D11_SUBRESOURCE_DATA,
*mut *mut core::ffi::c_void,
) -> windows_core::HRESULT,
#[cfg(not(feature = "Win32_Graphics_Dxgi_Common"))]
CreateTexture1D: usize,
#[cfg(feature = "Win32_Graphics_Dxgi_Common")]
pub CreateTexture2D: unsafe extern "system" fn(
*mut core::ffi::c_void,
*const D3D11_TEXTURE2D_DESC,
*const D3D11_SUBRESOURCE_DATA,
*mut *mut core::ffi::c_void,
) -> windows_core::HRESULT,
#[cfg(not(feature = "Win32_Graphics_Dxgi_Common"))]
CreateTexture2D: usize,
#[cfg(feature = "Win32_Graphics_Dxgi_Common")]
pub CreateTexture3D: unsafe extern "system" fn(
*mut core::ffi::c_void,
*const D3D11_TEXTURE3D_DESC,
*const D3D11_SUBRESOURCE_DATA,
*mut *mut core::ffi::c_void,
) -> windows_core::HRESULT,
#[cfg(not(feature = "Win32_Graphics_Dxgi_Common"))]
CreateTexture3D: usize,
#[cfg(all(
feature = "Win32_Graphics_Direct3D",
feature = "Win32_Graphics_Dxgi_Common"
))]
pub CreateShaderResourceView: unsafe extern "system" fn(
*mut core::ffi::c_void,
*mut core::ffi::c_void,
*const D3D11_SHADER_RESOURCE_VIEW_DESC,
*mut *mut core::ffi::c_void,
) -> windows_core::HRESULT,
#[cfg(not(all(
feature = "Win32_Graphics_Direct3D",
feature = "Win32_Graphics_Dxgi_Common"
)))]
CreateShaderResourceView: usize,
#[cfg(feature = "Win32_Graphics_Dxgi_Common")]
pub CreateUnorderedAccessView: unsafe extern "system" fn(
*mut core::ffi::c_void,
*mut core::ffi::c_void,
*const D3D11_UNORDERED_ACCESS_VIEW_DESC,
*mut *mut core::ffi::c_void,
) -> windows_core::HRESULT,
#[cfg(not(feature = "Win32_Graphics_Dxgi_Common"))]
CreateUnorderedAccessView: usize,
#[cfg(feature = "Win32_Graphics_Dxgi_Common")]
pub CreateRenderTargetView: unsafe extern "system" fn(
*mut core::ffi::c_void,
*mut core::ffi::c_void,
*const D3D11_RENDER_TARGET_VIEW_DESC,
*mut *mut core::ffi::c_void,
) -> windows_core::HRESULT,
#[cfg(not(feature = "Win32_Graphics_Dxgi_Common"))]
CreateRenderTargetView: usize,
#[cfg(feature = "Win32_Graphics_Dxgi_Common")]
pub CreateDepthStencilView: unsafe extern "system" fn(
*mut core::ffi::c_void,
*mut core::ffi::c_void,
*const D3D11_DEPTH_STENCIL_VIEW_DESC,
*mut *mut core::ffi::c_void,
) -> windows_core::HRESULT,
#[cfg(not(feature = "Win32_Graphics_Dxgi_Common"))]
CreateDepthStencilView: usize,
#[cfg(feature = "Win32_Graphics_Dxgi_Common")]
pub CreateInputLayout: unsafe extern "system" fn(
*mut core::ffi::c_void,
*const D3D11_INPUT_ELEMENT_DESC,
u32,
*const core::ffi::c_void,
usize,
*mut *mut core::ffi::c_void,
) -> windows_core::HRESULT,
#[cfg(not(feature = "Win32_Graphics_Dxgi_Common"))]
CreateInputLayout: usize,
pub CreateVertexShader: unsafe extern "system" fn(
*mut core::ffi::c_void,
*const core::ffi::c_void,
usize,
*mut core::ffi::c_void,
*mut *mut core::ffi::c_void,
) -> windows_core::HRESULT,
pub CreateGeometryShader: unsafe extern "system" fn(
*mut core::ffi::c_void,
*const core::ffi::c_void,
usize,
*mut core::ffi::c_void,
*mut *mut core::ffi::c_void,
) -> windows_core::HRESULT,
pub CreateGeometryShaderWithStreamOutput: unsafe extern "system" fn(
*mut core::ffi::c_void,
*const core::ffi::c_void,
usize,
*const D3D11_SO_DECLARATION_ENTRY,
u32,
*const u32,
u32,
u32,
*mut core::ffi::c_void,
*mut *mut core::ffi::c_void,
)
-> windows_core::HRESULT,
pub CreatePixelShader: unsafe extern "system" fn(
*mut core::ffi::c_void,
*const core::ffi::c_void,
usize,
*mut core::ffi::c_void,
*mut *mut core::ffi::c_void,
) -> windows_core::HRESULT,
pub CreateHullShader: unsafe extern "system" fn(
*mut core::ffi::c_void,
*const core::ffi::c_void,
usize,
*mut core::ffi::c_void,
*mut *mut core::ffi::c_void,
) -> windows_core::HRESULT,
pub CreateDomainShader: unsafe extern "system" fn(
*mut core::ffi::c_void,
*const core::ffi::c_void,
usize,
*mut core::ffi::c_void,
*mut *mut core::ffi::c_void,
) -> windows_core::HRESULT,
pub CreateComputeShader: unsafe extern "system" fn(
*mut core::ffi::c_void,
*const core::ffi::c_void,
usize,
*mut core::ffi::c_void,
*mut *mut core::ffi::c_void,
) -> windows_core::HRESULT,
pub CreateClassLinkage: unsafe extern "system" fn(
*mut core::ffi::c_void,
*mut *mut core::ffi::c_void,
) -> windows_core::HRESULT,
pub CreateBlendState: unsafe extern "system" fn(
*mut core::ffi::c_void,
*const D3D11_BLEND_DESC,
*mut *mut core::ffi::c_void,
) -> windows_core::HRESULT,
pub CreateDepthStencilState: unsafe extern "system" fn(
*mut core::ffi::c_void,
*const D3D11_DEPTH_STENCIL_DESC,
*mut *mut core::ffi::c_void,
) -> windows_core::HRESULT,
pub CreateRasterizerState: unsafe extern "system" fn(
*mut core::ffi::c_void,
*const D3D11_RASTERIZER_DESC,
*mut *mut core::ffi::c_void,
) -> windows_core::HRESULT,
pub CreateSamplerState: unsafe extern "system" fn(
*mut core::ffi::c_void,
*const D3D11_SAMPLER_DESC,
*mut *mut core::ffi::c_void,
) -> windows_core::HRESULT,
pub CreateQuery: unsafe extern "system" fn(
*mut core::ffi::c_void,
*const D3D11_QUERY_DESC,
*mut *mut core::ffi::c_void,
) -> windows_core::HRESULT,
pub CreatePredicate: unsafe extern "system" fn(
*mut core::ffi::c_void,
*const D3D11_QUERY_DESC,
*mut *mut core::ffi::c_void,
) -> windows_core::HRESULT,
pub CreateCounter: unsafe extern "system" fn(
*mut core::ffi::c_void,
*const D3D11_COUNTER_DESC,
*mut *mut core::ffi::c_void,
) -> windows_core::HRESULT,
pub CreateDeferredContext: unsafe extern "system" fn(
*mut core::ffi::c_void,
u32,
*mut *mut core::ffi::c_void,
) -> windows_core::HRESULT,
pub OpenSharedResource: unsafe extern "system" fn(
*mut core::ffi::c_void,
crate::Foundation::HANDLE,
*const windows_core::GUID,
*mut *mut core::ffi::c_void,
) -> windows_core::HRESULT,
#[cfg(feature = "Win32_Graphics_Dxgi_Common")]
pub CheckFormatSupport: unsafe extern "system" fn(
*mut core::ffi::c_void,
crate::Dxgi::Common::DXGI_FORMAT,
*mut u32,
) -> windows_core::HRESULT,
#[cfg(not(feature = "Win32_Graphics_Dxgi_Common"))]
CheckFormatSupport: usize,
#[cfg(feature = "Win32_Graphics_Dxgi_Common")]
pub CheckMultisampleQualityLevels: unsafe extern "system" fn(
*mut core::ffi::c_void,
crate::Dxgi::Common::DXGI_FORMAT,
u32,
*mut u32,
) -> windows_core::HRESULT,
#[cfg(not(feature = "Win32_Graphics_Dxgi_Common"))]
CheckMultisampleQualityLevels: usize,
pub CheckCounterInfo:
unsafe extern "system" fn(*mut core::ffi::c_void, *mut D3D11_COUNTER_INFO),
pub CheckCounter: unsafe extern "system" fn(
*mut core::ffi::c_void,
*const D3D11_COUNTER_DESC,
*mut D3D11_COUNTER_TYPE,
*mut u32,
crate::core_supplemental::PSTR,
*mut u32,
crate::core_supplemental::PSTR,
*mut u32,
crate::core_supplemental::PSTR,
*mut u32,
) -> windows_core::HRESULT,
pub CheckFeatureSupport: unsafe extern "system" fn(
*mut core::ffi::c_void,
D3D11_FEATURE,
*mut core::ffi::c_void,
u32,
) -> windows_core::HRESULT,
pub GetPrivateData: unsafe extern "system" fn(
*mut core::ffi::c_void,
*const windows_core::GUID,
*mut u32,
*mut core::ffi::c_void,
) -> windows_core::HRESULT,
pub SetPrivateData: unsafe extern "system" fn(
*mut core::ffi::c_void,
*const windows_core::GUID,
u32,
*const core::ffi::c_void,
) -> windows_core::HRESULT,
pub SetPrivateDataInterface: unsafe extern "system" fn(
*mut core::ffi::c_void,
*const windows_core::GUID,
*mut core::ffi::c_void,
) -> windows_core::HRESULT,
#[cfg(feature = "Win32_Graphics_Direct3D")]
pub GetFeatureLevel:
unsafe extern "system" fn(*mut core::ffi::c_void) -> super::Direct3D::D3D_FEATURE_LEVEL,
#[cfg(not(feature = "Win32_Graphics_Direct3D"))]
GetFeatureLevel: usize,
pub GetCreationFlags: unsafe extern "system" fn(*mut core::ffi::c_void) -> u32,
pub GetDeviceRemovedReason:
unsafe extern "system" fn(*mut core::ffi::c_void) -> windows_core::HRESULT,
pub GetImmediateContext:
unsafe extern "system" fn(*mut core::ffi::c_void, *mut *mut core::ffi::c_void),
pub SetExceptionMode:
unsafe extern "system" fn(*mut core::ffi::c_void, u32) -> windows_core::HRESULT,
pub GetExceptionMode: unsafe extern "system" fn(*mut core::ffi::c_void) -> u32,
}
#[cfg(all(
feature = "Win32_Graphics_Direct3D",
feature = "Win32_Graphics_Dxgi_Common"
))]
pub trait ID3D11Device_Impl: windows_core::IUnknownImpl {
fn CreateBuffer(
&self,
pdesc: *const D3D11_BUFFER_DESC,
pinitialdata: *const D3D11_SUBRESOURCE_DATA,
ppbuffer: windows_core::OutRef<'_, ID3D11Buffer>,
) -> windows_core::Result<()>;
fn CreateTexture1D(
&self,
pdesc: *const D3D11_TEXTURE1D_DESC,
pinitialdata: *const D3D11_SUBRESOURCE_DATA,
pptexture1d: windows_core::OutRef<'_, ID3D11Texture1D>,
) -> windows_core::Result<()>;
fn CreateTexture2D(
&self,
pdesc: *const D3D11_TEXTURE2D_DESC,
pinitialdata: *const D3D11_SUBRESOURCE_DATA,
pptexture2d: windows_core::OutRef<'_, ID3D11Texture2D>,
) -> windows_core::Result<()>;
fn CreateTexture3D(
&self,
pdesc: *const D3D11_TEXTURE3D_DESC,
pinitialdata: *const D3D11_SUBRESOURCE_DATA,
pptexture3d: windows_core::OutRef<'_, ID3D11Texture3D>,
) -> windows_core::Result<()>;
fn CreateShaderResourceView(
&self,
presource: windows_core::Ref<'_, ID3D11Resource>,
pdesc: *const D3D11_SHADER_RESOURCE_VIEW_DESC,
ppsrview: windows_core::OutRef<'_, ID3D11ShaderResourceView>,
) -> windows_core::Result<()>;
fn CreateUnorderedAccessView(
&self,
presource: windows_core::Ref<'_, ID3D11Resource>,
pdesc: *const D3D11_UNORDERED_ACCESS_VIEW_DESC,
ppuaview: windows_core::OutRef<'_, ID3D11UnorderedAccessView>,
) -> windows_core::Result<()>;
fn CreateRenderTargetView(
&self,
presource: windows_core::Ref<'_, ID3D11Resource>,
pdesc: *const D3D11_RENDER_TARGET_VIEW_DESC,
pprtview: windows_core::OutRef<'_, ID3D11RenderTargetView>,
) -> windows_core::Result<()>;
fn CreateDepthStencilView(
&self,
presource: windows_core::Ref<'_, ID3D11Resource>,
pdesc: *const D3D11_DEPTH_STENCIL_VIEW_DESC,
ppdepthstencilview: windows_core::OutRef<'_, ID3D11DepthStencilView>,
) -> windows_core::Result<()>;
fn CreateInputLayout(
&self,
pinputelementdescs: *const D3D11_INPUT_ELEMENT_DESC,
numelements: u32,
pshaderbytecodewithinputsignature: *const core::ffi::c_void,
bytecodelength: usize,
ppinputlayout: windows_core::OutRef<'_, ID3D11InputLayout>,
) -> windows_core::Result<()>;
fn CreateVertexShader(
&self,
pshaderbytecode: *const core::ffi::c_void,
bytecodelength: usize,
pclasslinkage: windows_core::Ref<'_, ID3D11ClassLinkage>,
ppvertexshader: windows_core::OutRef<'_, ID3D11VertexShader>,
) -> windows_core::Result<()>;
fn CreateGeometryShader(
&self,
pshaderbytecode: *const core::ffi::c_void,
bytecodelength: usize,
pclasslinkage: windows_core::Ref<'_, ID3D11ClassLinkage>,
ppgeometryshader: windows_core::OutRef<'_, ID3D11GeometryShader>,
) -> windows_core::Result<()>;
fn CreateGeometryShaderWithStreamOutput(
&self,
pshaderbytecode: *const core::ffi::c_void,
bytecodelength: usize,
psodeclaration: *const D3D11_SO_DECLARATION_ENTRY,
numentries: u32,
pbufferstrides: *const u32,
numstrides: u32,
rasterizedstream: u32,
pclasslinkage: windows_core::Ref<'_, ID3D11ClassLinkage>,
ppgeometryshader: windows_core::OutRef<'_, ID3D11GeometryShader>,
) -> windows_core::Result<()>;
fn CreatePixelShader(
&self,
pshaderbytecode: *const core::ffi::c_void,
bytecodelength: usize,
pclasslinkage: windows_core::Ref<'_, ID3D11ClassLinkage>,
pppixelshader: windows_core::OutRef<'_, ID3D11PixelShader>,
) -> windows_core::Result<()>;
fn CreateHullShader(
&self,
pshaderbytecode: *const core::ffi::c_void,
bytecodelength: usize,
pclasslinkage: windows_core::Ref<'_, ID3D11ClassLinkage>,
pphullshader: windows_core::OutRef<'_, ID3D11HullShader>,
) -> windows_core::Result<()>;
fn CreateDomainShader(
&self,
pshaderbytecode: *const core::ffi::c_void,
bytecodelength: usize,
pclasslinkage: windows_core::Ref<'_, ID3D11ClassLinkage>,
ppdomainshader: windows_core::OutRef<'_, ID3D11DomainShader>,
) -> windows_core::Result<()>;
fn CreateComputeShader(
&self,
pshaderbytecode: *const core::ffi::c_void,
bytecodelength: usize,
pclasslinkage: windows_core::Ref<'_, ID3D11ClassLinkage>,
ppcomputeshader: windows_core::OutRef<'_, ID3D11ComputeShader>,
) -> windows_core::Result<()>;
fn CreateClassLinkage(&self) -> windows_core::Result<ID3D11ClassLinkage>;
fn CreateBlendState(
&self,
pblendstatedesc: *const D3D11_BLEND_DESC,
ppblendstate: windows_core::OutRef<'_, ID3D11BlendState>,
) -> windows_core::Result<()>;
fn CreateDepthStencilState(
&self,
pdepthstencildesc: *const D3D11_DEPTH_STENCIL_DESC,
ppdepthstencilstate: windows_core::OutRef<'_, ID3D11DepthStencilState>,
) -> windows_core::Result<()>;
fn CreateRasterizerState(
&self,
prasterizerdesc: *const D3D11_RASTERIZER_DESC,
pprasterizerstate: windows_core::OutRef<'_, ID3D11RasterizerState>,
) -> windows_core::Result<()>;
fn CreateSamplerState(
&self,
psamplerdesc: *const D3D11_SAMPLER_DESC,
ppsamplerstate: windows_core::OutRef<'_, ID3D11SamplerState>,
) -> windows_core::Result<()>;
fn CreateQuery(
&self,
pquerydesc: *const D3D11_QUERY_DESC,
ppquery: windows_core::OutRef<'_, ID3D11Query>,
) -> windows_core::Result<()>;
fn CreatePredicate(
&self,
ppredicatedesc: *const D3D11_QUERY_DESC,
pppredicate: windows_core::OutRef<'_, ID3D11Predicate>,
) -> windows_core::Result<()>;
fn CreateCounter(
&self,
pcounterdesc: *const D3D11_COUNTER_DESC,
ppcounter: windows_core::OutRef<'_, ID3D11Counter>,
) -> windows_core::Result<()>;
fn CreateDeferredContext(
&self,
contextflags: u32,
ppdeferredcontext: windows_core::OutRef<'_, ID3D11DeviceContext>,
) -> windows_core::Result<()>;
fn OpenSharedResource(
&self,
hresource: crate::Foundation::HANDLE,
returnedinterface: *const windows_core::GUID,
ppresource: *mut *mut core::ffi::c_void,
) -> windows_core::Result<()>;
fn CheckFormatSupport(
&self,
format: crate::Dxgi::Common::DXGI_FORMAT,
) -> windows_core::Result<u32>;
fn CheckMultisampleQualityLevels(
&self,
format: crate::Dxgi::Common::DXGI_FORMAT,
samplecount: u32,
) -> windows_core::Result<u32>;
fn CheckCounterInfo(&self, pcounterinfo: *mut D3D11_COUNTER_INFO);
fn CheckCounter(
&self,
pdesc: *const D3D11_COUNTER_DESC,
ptype: *mut D3D11_COUNTER_TYPE,
pactivecounters: *mut u32,
szname: crate::core_supplemental::PSTR,
pnamelength: *mut u32,
szunits: crate::core_supplemental::PSTR,
punitslength: *mut u32,
szdescription: crate::core_supplemental::PSTR,
pdescriptionlength: *mut u32,
) -> windows_core::Result<()>;
fn CheckFeatureSupport(
&self,
feature: D3D11_FEATURE,
pfeaturesupportdata: *mut core::ffi::c_void,
featuresupportdatasize: u32,
) -> windows_core::Result<()>;
fn GetPrivateData(
&self,
guid: *const windows_core::GUID,
pdatasize: *mut u32,
pdata: *mut core::ffi::c_void,
) -> windows_core::Result<()>;
fn SetPrivateData(
&self,
guid: *const windows_core::GUID,
datasize: u32,
pdata: *const core::ffi::c_void,
) -> windows_core::Result<()>;
fn SetPrivateDataInterface(
&self,
guid: *const windows_core::GUID,
pdata: windows_core::Ref<'_, windows_core::IUnknown>,
) -> windows_core::Result<()>;
fn GetFeatureLevel(&self) -> super::Direct3D::D3D_FEATURE_LEVEL;
fn GetCreationFlags(&self) -> u32;
fn GetDeviceRemovedReason(&self) -> windows_core::Result<()>;
fn GetImmediateContext(
&self,
ppimmediatecontext: windows_core::OutRef<'_, ID3D11DeviceContext>,
);
fn SetExceptionMode(&self, raiseflags: u32) -> windows_core::Result<()>;
fn GetExceptionMode(&self) -> u32;
}
#[cfg(all(
feature = "Win32_Graphics_Direct3D",
feature = "Win32_Graphics_Dxgi_Common"
))]
impl ID3D11Device_Vtbl {
pub const fn new<Identity: ID3D11Device_Impl, const OFFSET: isize>() -> Self {
unsafe extern "system" fn CreateBuffer<Identity: ID3D11Device_Impl, const OFFSET: isize>(
this: *mut core::ffi::c_void,
pdesc: *const D3D11_BUFFER_DESC,
pinitialdata: *const D3D11_SUBRESOURCE_DATA,
ppbuffer: *mut *mut core::ffi::c_void,
) -> windows_core::HRESULT {
unsafe {
let this: &Identity =
&*((this as *const *const ()).offset(OFFSET) as *const Identity);
ID3D11Device_Impl::CreateBuffer(
this,
core::mem::transmute_copy(&pdesc),
core::mem::transmute_copy(&pinitialdata),
core::mem::transmute_copy(&ppbuffer),
)
.into()
}
}
unsafe extern "system" fn CreateTexture1D<
Identity: ID3D11Device_Impl,
const OFFSET: isize,
>(
this: *mut core::ffi::c_void,
pdesc: *const D3D11_TEXTURE1D_DESC,
pinitialdata: *const D3D11_SUBRESOURCE_DATA,
pptexture1d: *mut *mut core::ffi::c_void,
) -> windows_core::HRESULT {
unsafe {
let this: &Identity =
&*((this as *const *const ()).offset(OFFSET) as *const Identity);
ID3D11Device_Impl::CreateTexture1D(
this,
core::mem::transmute_copy(&pdesc),
core::mem::transmute_copy(&pinitialdata),
core::mem::transmute_copy(&pptexture1d),
)
.into()
}
}
unsafe extern "system" fn CreateTexture2D<
Identity: ID3D11Device_Impl,
const OFFSET: isize,
>(
this: *mut core::ffi::c_void,
pdesc: *const D3D11_TEXTURE2D_DESC,
pinitialdata: *const D3D11_SUBRESOURCE_DATA,
pptexture2d: *mut *mut core::ffi::c_void,
) -> windows_core::HRESULT {
unsafe {
let this: &Identity =
&*((this as *const *const ()).offset(OFFSET) as *const Identity);
ID3D11Device_Impl::CreateTexture2D(
this,
core::mem::transmute_copy(&pdesc),
core::mem::transmute_copy(&pinitialdata),
core::mem::transmute_copy(&pptexture2d),
)
.into()
}
}
unsafe extern "system" fn CreateTexture3D<
Identity: ID3D11Device_Impl,
const OFFSET: isize,
>(
this: *mut core::ffi::c_void,
pdesc: *const D3D11_TEXTURE3D_DESC,
pinitialdata: *const D3D11_SUBRESOURCE_DATA,
pptexture3d: *mut *mut core::ffi::c_void,
) -> windows_core::HRESULT {
unsafe {
let this: &Identity =
&*((this as *const *const ()).offset(OFFSET) as *const Identity);
ID3D11Device_Impl::CreateTexture3D(
this,
core::mem::transmute_copy(&pdesc),
core::mem::transmute_copy(&pinitialdata),
core::mem::transmute_copy(&pptexture3d),
)
.into()
}
}
unsafe extern "system" fn CreateShaderResourceView<
Identity: ID3D11Device_Impl,
const OFFSET: isize,
>(
this: *mut core::ffi::c_void,
presource: *mut core::ffi::c_void,
pdesc: *const D3D11_SHADER_RESOURCE_VIEW_DESC,
ppsrview: *mut *mut core::ffi::c_void,
) -> windows_core::HRESULT {
unsafe {
let this: &Identity =
&*((this as *const *const ()).offset(OFFSET) as *const Identity);
ID3D11Device_Impl::CreateShaderResourceView(
this,
core::mem::transmute_copy(&presource),
core::mem::transmute_copy(&pdesc),
core::mem::transmute_copy(&ppsrview),
)
.into()
}
}
unsafe extern "system" fn CreateUnorderedAccessView<
Identity: ID3D11Device_Impl,
const OFFSET: isize,
>(
this: *mut core::ffi::c_void,
presource: *mut core::ffi::c_void,
pdesc: *const D3D11_UNORDERED_ACCESS_VIEW_DESC,
ppuaview: *mut *mut core::ffi::c_void,
) -> windows_core::HRESULT {
unsafe {
let this: &Identity =
&*((this as *const *const ()).offset(OFFSET) as *const Identity);
ID3D11Device_Impl::CreateUnorderedAccessView(
this,
core::mem::transmute_copy(&presource),
core::mem::transmute_copy(&pdesc),
core::mem::transmute_copy(&ppuaview),
)
.into()
}
}
unsafe extern "system" fn CreateRenderTargetView<
Identity: ID3D11Device_Impl,
const OFFSET: isize,
>(
this: *mut core::ffi::c_void,
presource: *mut core::ffi::c_void,
pdesc: *const D3D11_RENDER_TARGET_VIEW_DESC,
pprtview: *mut *mut core::ffi::c_void,
) -> windows_core::HRESULT {
unsafe {
let this: &Identity =
&*((this as *const *const ()).offset(OFFSET) as *const Identity);
ID3D11Device_Impl::CreateRenderTargetView(
this,
core::mem::transmute_copy(&presource),
core::mem::transmute_copy(&pdesc),
core::mem::transmute_copy(&pprtview),
)
.into()
}
}
unsafe extern "system" fn CreateDepthStencilView<
Identity: ID3D11Device_Impl,
const OFFSET: isize,
>(
this: *mut core::ffi::c_void,
presource: *mut core::ffi::c_void,
pdesc: *const D3D11_DEPTH_STENCIL_VIEW_DESC,
ppdepthstencilview: *mut *mut core::ffi::c_void,
) -> windows_core::HRESULT {
unsafe {
let this: &Identity =
&*((this as *const *const ()).offset(OFFSET) as *const Identity);
ID3D11Device_Impl::CreateDepthStencilView(
this,
core::mem::transmute_copy(&presource),
core::mem::transmute_copy(&pdesc),
core::mem::transmute_copy(&ppdepthstencilview),
)
.into()
}
}
unsafe extern "system" fn CreateInputLayout<
Identity: ID3D11Device_Impl,
const OFFSET: isize,
>(
this: *mut core::ffi::c_void,
pinputelementdescs: *const D3D11_INPUT_ELEMENT_DESC,
numelements: u32,
pshaderbytecodewithinputsignature: *const core::ffi::c_void,
bytecodelength: usize,
ppinputlayout: *mut *mut core::ffi::c_void,
) -> windows_core::HRESULT {
unsafe {
let this: &Identity =
&*((this as *const *const ()).offset(OFFSET) as *const Identity);
ID3D11Device_Impl::CreateInputLayout(
this,
core::mem::transmute_copy(&pinputelementdescs),
core::mem::transmute_copy(&numelements),
core::mem::transmute_copy(&pshaderbytecodewithinputsignature),
core::mem::transmute_copy(&bytecodelength),
core::mem::transmute_copy(&ppinputlayout),
)
.into()
}
}
unsafe extern "system" fn CreateVertexShader<
Identity: ID3D11Device_Impl,
const OFFSET: isize,
>(
this: *mut core::ffi::c_void,
pshaderbytecode: *const core::ffi::c_void,
bytecodelength: usize,
pclasslinkage: *mut core::ffi::c_void,
ppvertexshader: *mut *mut core::ffi::c_void,
) -> windows_core::HRESULT {
unsafe {
let this: &Identity =
&*((this as *const *const ()).offset(OFFSET) as *const Identity);
ID3D11Device_Impl::CreateVertexShader(
this,
core::mem::transmute_copy(&pshaderbytecode),
core::mem::transmute_copy(&bytecodelength),
core::mem::transmute_copy(&pclasslinkage),
core::mem::transmute_copy(&ppvertexshader),
)
.into()
}
}
unsafe extern "system" fn CreateGeometryShader<
Identity: ID3D11Device_Impl,
const OFFSET: isize,
>(
this: *mut core::ffi::c_void,
pshaderbytecode: *const core::ffi::c_void,
bytecodelength: usize,
pclasslinkage: *mut core::ffi::c_void,
ppgeometryshader: *mut *mut core::ffi::c_void,
) -> windows_core::HRESULT {
unsafe {
let this: &Identity =
&*((this as *const *const ()).offset(OFFSET) as *const Identity);
ID3D11Device_Impl::CreateGeometryShader(
this,
core::mem::transmute_copy(&pshaderbytecode),
core::mem::transmute_copy(&bytecodelength),
core::mem::transmute_copy(&pclasslinkage),
core::mem::transmute_copy(&ppgeometryshader),
)
.into()
}
}
unsafe extern "system" fn CreateGeometryShaderWithStreamOutput<
Identity: ID3D11Device_Impl,
const OFFSET: isize,
>(
this: *mut core::ffi::c_void,
pshaderbytecode: *const core::ffi::c_void,
bytecodelength: usize,
psodeclaration: *const D3D11_SO_DECLARATION_ENTRY,
numentries: u32,
pbufferstrides: *const u32,
numstrides: u32,
rasterizedstream: u32,
pclasslinkage: *mut core::ffi::c_void,
ppgeometryshader: *mut *mut core::ffi::c_void,
) -> windows_core::HRESULT {
unsafe {
let this: &Identity =
&*((this as *const *const ()).offset(OFFSET) as *const Identity);
ID3D11Device_Impl::CreateGeometryShaderWithStreamOutput(
this,
core::mem::transmute_copy(&pshaderbytecode),
core::mem::transmute_copy(&bytecodelength),
core::mem::transmute_copy(&psodeclaration),
core::mem::transmute_copy(&numentries),
core::mem::transmute_copy(&pbufferstrides),
core::mem::transmute_copy(&numstrides),
core::mem::transmute_copy(&rasterizedstream),
core::mem::transmute_copy(&pclasslinkage),
core::mem::transmute_copy(&ppgeometryshader),
)
.into()
}
}
unsafe extern "system" fn CreatePixelShader<
Identity: ID3D11Device_Impl,
const OFFSET: isize,
>(
this: *mut core::ffi::c_void,
pshaderbytecode: *const core::ffi::c_void,
bytecodelength: usize,
pclasslinkage: *mut core::ffi::c_void,
pppixelshader: *mut *mut core::ffi::c_void,
) -> windows_core::HRESULT {
unsafe {
let this: &Identity =
&*((this as *const *const ()).offset(OFFSET) as *const Identity);
ID3D11Device_Impl::CreatePixelShader(
this,
core::mem::transmute_copy(&pshaderbytecode),
core::mem::transmute_copy(&bytecodelength),
core::mem::transmute_copy(&pclasslinkage),
core::mem::transmute_copy(&pppixelshader),
)
.into()
}
}
unsafe extern "system" fn CreateHullShader<
Identity: ID3D11Device_Impl,
const OFFSET: isize,
>(
this: *mut core::ffi::c_void,
pshaderbytecode: *const core::ffi::c_void,
bytecodelength: usize,
pclasslinkage: *mut core::ffi::c_void,
pphullshader: *mut *mut core::ffi::c_void,
) -> windows_core::HRESULT {
unsafe {
let this: &Identity =
&*((this as *const *const ()).offset(OFFSET) as *const Identity);
ID3D11Device_Impl::CreateHullShader(
this,
core::mem::transmute_copy(&pshaderbytecode),
core::mem::transmute_copy(&bytecodelength),
core::mem::transmute_copy(&pclasslinkage),
core::mem::transmute_copy(&pphullshader),
)
.into()
}
}
unsafe extern "system" fn CreateDomainShader<
Identity: ID3D11Device_Impl,
const OFFSET: isize,
>(
this: *mut core::ffi::c_void,
pshaderbytecode: *const core::ffi::c_void,
bytecodelength: usize,
pclasslinkage: *mut core::ffi::c_void,
ppdomainshader: *mut *mut core::ffi::c_void,
) -> windows_core::HRESULT {
unsafe {
let this: &Identity =
&*((this as *const *const ()).offset(OFFSET) as *const Identity);
ID3D11Device_Impl::CreateDomainShader(
this,
core::mem::transmute_copy(&pshaderbytecode),
core::mem::transmute_copy(&bytecodelength),
core::mem::transmute_copy(&pclasslinkage),
core::mem::transmute_copy(&ppdomainshader),
)
.into()
}
}
unsafe extern "system" fn CreateComputeShader<
Identity: ID3D11Device_Impl,
const OFFSET: isize,
>(
this: *mut core::ffi::c_void,
pshaderbytecode: *const core::ffi::c_void,
bytecodelength: usize,
pclasslinkage: *mut core::ffi::c_void,
ppcomputeshader: *mut *mut core::ffi::c_void,
) -> windows_core::HRESULT {
unsafe {
let this: &Identity =
&*((this as *const *const ()).offset(OFFSET) as *const Identity);
ID3D11Device_Impl::CreateComputeShader(
this,
core::mem::transmute_copy(&pshaderbytecode),
core::mem::transmute_copy(&bytecodelength),
core::mem::transmute_copy(&pclasslinkage),
core::mem::transmute_copy(&ppcomputeshader),
)
.into()
}
}
unsafe extern "system" fn CreateClassLinkage<
Identity: ID3D11Device_Impl,
const OFFSET: isize,
>(
this: *mut core::ffi::c_void,
pplinkage: *mut *mut core::ffi::c_void,
) -> windows_core::HRESULT {
unsafe {
let this: &Identity =
&*((this as *const *const ()).offset(OFFSET) as *const Identity);
match ID3D11Device_Impl::CreateClassLinkage(this) {
Ok(ok__) => {
pplinkage.write(core::mem::transmute(ok__));
windows_core::HRESULT(0)
}
Err(err) => err.into(),
}
}
}
unsafe extern "system" fn CreateBlendState<
Identity: ID3D11Device_Impl,
const OFFSET: isize,
>(
this: *mut core::ffi::c_void,
pblendstatedesc: *const D3D11_BLEND_DESC,
ppblendstate: *mut *mut core::ffi::c_void,
) -> windows_core::HRESULT {
unsafe {
let this: &Identity =
&*((this as *const *const ()).offset(OFFSET) as *const Identity);
ID3D11Device_Impl::CreateBlendState(
this,
core::mem::transmute_copy(&pblendstatedesc),
core::mem::transmute_copy(&ppblendstate),
)
.into()
}
}
unsafe extern "system" fn CreateDepthStencilState<
Identity: ID3D11Device_Impl,
const OFFSET: isize,
>(
this: *mut core::ffi::c_void,
pdepthstencildesc: *const D3D11_DEPTH_STENCIL_DESC,
ppdepthstencilstate: *mut *mut core::ffi::c_void,
) -> windows_core::HRESULT {
unsafe {
let this: &Identity =
&*((this as *const *const ()).offset(OFFSET) as *const Identity);
ID3D11Device_Impl::CreateDepthStencilState(
this,
core::mem::transmute_copy(&pdepthstencildesc),
core::mem::transmute_copy(&ppdepthstencilstate),
)
.into()
}
}
unsafe extern "system" fn CreateRasterizerState<
Identity: ID3D11Device_Impl,
const OFFSET: isize,
>(
this: *mut core::ffi::c_void,
prasterizerdesc: *const D3D11_RASTERIZER_DESC,
pprasterizerstate: *mut *mut core::ffi::c_void,
) -> windows_core::HRESULT {
unsafe {
let this: &Identity =
&*((this as *const *const ()).offset(OFFSET) as *const Identity);
ID3D11Device_Impl::CreateRasterizerState(
this,
core::mem::transmute_copy(&prasterizerdesc),
core::mem::transmute_copy(&pprasterizerstate),
)
.into()
}
}
unsafe extern "system" fn CreateSamplerState<
Identity: ID3D11Device_Impl,
const OFFSET: isize,
>(
this: *mut core::ffi::c_void,
psamplerdesc: *const D3D11_SAMPLER_DESC,
ppsamplerstate: *mut *mut core::ffi::c_void,
) -> windows_core::HRESULT {
unsafe {
let this: &Identity =
&*((this as *const *const ()).offset(OFFSET) as *const Identity);
ID3D11Device_Impl::CreateSamplerState(
this,
core::mem::transmute_copy(&psamplerdesc),
core::mem::transmute_copy(&ppsamplerstate),
)
.into()
}
}
unsafe extern "system" fn CreateQuery<Identity: ID3D11Device_Impl, const OFFSET: isize>(
this: *mut core::ffi::c_void,
pquerydesc: *const D3D11_QUERY_DESC,
ppquery: *mut *mut core::ffi::c_void,
) -> windows_core::HRESULT {
unsafe {
let this: &Identity =
&*((this as *const *const ()).offset(OFFSET) as *const Identity);
ID3D11Device_Impl::CreateQuery(
this,
core::mem::transmute_copy(&pquerydesc),
core::mem::transmute_copy(&ppquery),
)
.into()
}
}
unsafe extern "system" fn CreatePredicate<
Identity: ID3D11Device_Impl,
const OFFSET: isize,
>(
this: *mut core::ffi::c_void,
ppredicatedesc: *const D3D11_QUERY_DESC,
pppredicate: *mut *mut core::ffi::c_void,
) -> windows_core::HRESULT {
unsafe {
let this: &Identity =
&*((this as *const *const ()).offset(OFFSET) as *const Identity);
ID3D11Device_Impl::CreatePredicate(
this,
core::mem::transmute_copy(&ppredicatedesc),
core::mem::transmute_copy(&pppredicate),
)
.into()
}
}
unsafe extern "system" fn CreateCounter<
Identity: ID3D11Device_Impl,
const OFFSET: isize,
>(
this: *mut core::ffi::c_void,
pcounterdesc: *const D3D11_COUNTER_DESC,
ppcounter: *mut *mut core::ffi::c_void,
) -> windows_core::HRESULT {
unsafe {
let this: &Identity =
&*((this as *const *const ()).offset(OFFSET) as *const Identity);
ID3D11Device_Impl::CreateCounter(
this,
core::mem::transmute_copy(&pcounterdesc),
core::mem::transmute_copy(&ppcounter),
)
.into()
}
}
unsafe extern "system" fn CreateDeferredContext<
Identity: ID3D11Device_Impl,
const OFFSET: isize,
>(
this: *mut core::ffi::c_void,
contextflags: u32,
ppdeferredcontext: *mut *mut core::ffi::c_void,
) -> windows_core::HRESULT {
unsafe {
let this: &Identity =
&*((this as *const *const ()).offset(OFFSET) as *const Identity);
ID3D11Device_Impl::CreateDeferredContext(
this,
core::mem::transmute_copy(&contextflags),
core::mem::transmute_copy(&ppdeferredcontext),
)
.into()
}
}
unsafe extern "system" fn OpenSharedResource<
Identity: ID3D11Device_Impl,
const OFFSET: isize,
>(
this: *mut core::ffi::c_void,
hresource: crate::Foundation::HANDLE,
returnedinterface: *const windows_core::GUID,
ppresource: *mut *mut core::ffi::c_void,
) -> windows_core::HRESULT {
unsafe {
let this: &Identity =
&*((this as *const *const ()).offset(OFFSET) as *const Identity);
ID3D11Device_Impl::OpenSharedResource(
this,
core::mem::transmute_copy(&hresource),
core::mem::transmute_copy(&returnedinterface),
core::mem::transmute_copy(&ppresource),
)
.into()
}
}
unsafe extern "system" fn CheckFormatSupport<
Identity: ID3D11Device_Impl,
const OFFSET: isize,
>(
this: *mut core::ffi::c_void,
format: crate::Dxgi::Common::DXGI_FORMAT,
pformatsupport: *mut u32,
) -> windows_core::HRESULT {
unsafe {
let this: &Identity =
&*((this as *const *const ()).offset(OFFSET) as *const Identity);
match ID3D11Device_Impl::CheckFormatSupport(
this,
core::mem::transmute_copy(&format),
) {
Ok(ok__) => {
pformatsupport.write(core::mem::transmute(ok__));
windows_core::HRESULT(0)
}
Err(err) => err.into(),
}
}
}
unsafe extern "system" fn CheckMultisampleQualityLevels<
Identity: ID3D11Device_Impl,
const OFFSET: isize,
>(
this: *mut core::ffi::c_void,
format: crate::Dxgi::Common::DXGI_FORMAT,
samplecount: u32,
pnumqualitylevels: *mut u32,
) -> windows_core::HRESULT {
unsafe {
let this: &Identity =
&*((this as *const *const ()).offset(OFFSET) as *const Identity);
match ID3D11Device_Impl::CheckMultisampleQualityLevels(
this,
core::mem::transmute_copy(&format),
core::mem::transmute_copy(&samplecount),
) {
Ok(ok__) => {
pnumqualitylevels.write(core::mem::transmute(ok__));
windows_core::HRESULT(0)
}
Err(err) => err.into(),
}
}
}
unsafe extern "system" fn CheckCounterInfo<
Identity: ID3D11Device_Impl,
const OFFSET: isize,
>(
this: *mut core::ffi::c_void,
pcounterinfo: *mut D3D11_COUNTER_INFO,
) {
unsafe {
let this: &Identity =
&*((this as *const *const ()).offset(OFFSET) as *const Identity);
ID3D11Device_Impl::CheckCounterInfo(this, core::mem::transmute_copy(&pcounterinfo))
}
}
unsafe extern "system" fn CheckCounter<Identity: ID3D11Device_Impl, const OFFSET: isize>(
this: *mut core::ffi::c_void,
pdesc: *const D3D11_COUNTER_DESC,
ptype: *mut D3D11_COUNTER_TYPE,
pactivecounters: *mut u32,
szname: crate::core_supplemental::PSTR,
pnamelength: *mut u32,
szunits: crate::core_supplemental::PSTR,
punitslength: *mut u32,
szdescription: crate::core_supplemental::PSTR,
pdescriptionlength: *mut u32,
) -> windows_core::HRESULT {
unsafe {
let this: &Identity =
&*((this as *const *const ()).offset(OFFSET) as *const Identity);
ID3D11Device_Impl::CheckCounter(
this,
core::mem::transmute_copy(&pdesc),
core::mem::transmute_copy(&ptype),
core::mem::transmute_copy(&pactivecounters),
core::mem::transmute_copy(&szname),
core::mem::transmute_copy(&pnamelength),
core::mem::transmute_copy(&szunits),
core::mem::transmute_copy(&punitslength),
core::mem::transmute_copy(&szdescription),
core::mem::transmute_copy(&pdescriptionlength),
)
.into()
}
}
unsafe extern "system" fn CheckFeatureSupport<
Identity: ID3D11Device_Impl,
const OFFSET: isize,
>(
this: *mut core::ffi::c_void,
feature: D3D11_FEATURE,
pfeaturesupportdata: *mut core::ffi::c_void,
featuresupportdatasize: u32,
) -> windows_core::HRESULT {
unsafe {
let this: &Identity =
&*((this as *const *const ()).offset(OFFSET) as *const Identity);
ID3D11Device_Impl::CheckFeatureSupport(
this,
core::mem::transmute_copy(&feature),
core::mem::transmute_copy(&pfeaturesupportdata),
core::mem::transmute_copy(&featuresupportdatasize),
)
.into()
}
}
unsafe extern "system" fn GetPrivateData<
Identity: ID3D11Device_Impl,
const OFFSET: isize,
>(
this: *mut core::ffi::c_void,
guid: *const windows_core::GUID,
pdatasize: *mut u32,
pdata: *mut core::ffi::c_void,
) -> windows_core::HRESULT {
unsafe {
let this: &Identity =
&*((this as *const *const ()).offset(OFFSET) as *const Identity);
ID3D11Device_Impl::GetPrivateData(
this,
core::mem::transmute_copy(&guid),
core::mem::transmute_copy(&pdatasize),
core::mem::transmute_copy(&pdata),
)
.into()
}
}
unsafe extern "system" fn SetPrivateData<
Identity: ID3D11Device_Impl,
const OFFSET: isize,
>(
this: *mut core::ffi::c_void,
guid: *const windows_core::GUID,
datasize: u32,
pdata: *const core::ffi::c_void,
) -> windows_core::HRESULT {
unsafe {
let this: &Identity =
&*((this as *const *const ()).offset(OFFSET) as *const Identity);
ID3D11Device_Impl::SetPrivateData(
this,
core::mem::transmute_copy(&guid),
core::mem::transmute_copy(&datasize),
core::mem::transmute_copy(&pdata),
)
.into()
}
}
unsafe extern "system" fn SetPrivateDataInterface<
Identity: ID3D11Device_Impl,
const OFFSET: isize,
>(
this: *mut core::ffi::c_void,
guid: *const windows_core::GUID,
pdata: *mut core::ffi::c_void,
) -> windows_core::HRESULT {
unsafe {
let this: &Identity =
&*((this as *const *const ()).offset(OFFSET) as *const Identity);
ID3D11Device_Impl::SetPrivateDataInterface(
this,
core::mem::transmute_copy(&guid),
core::mem::transmute_copy(&pdata),
)
.into()
}
}
unsafe extern "system" fn GetFeatureLevel<
Identity: ID3D11Device_Impl,
const OFFSET: isize,
>(
this: *mut core::ffi::c_void,
) -> super::Direct3D::D3D_FEATURE_LEVEL {
unsafe {
let this: &Identity =
&*((this as *const *const ()).offset(OFFSET) as *const Identity);
ID3D11Device_Impl::GetFeatureLevel(this)
}
}
unsafe extern "system" fn GetCreationFlags<
Identity: ID3D11Device_Impl,
const OFFSET: isize,
>(
this: *mut core::ffi::c_void,
) -> u32 {
unsafe {
let this: &Identity =
&*((this as *const *const ()).offset(OFFSET) as *const Identity);
ID3D11Device_Impl::GetCreationFlags(this)
}
}
unsafe extern "system" fn GetDeviceRemovedReason<
Identity: ID3D11Device_Impl,
const OFFSET: isize,
>(
this: *mut core::ffi::c_void,
) -> windows_core::HRESULT {
unsafe {
let this: &Identity =
&*((this as *const *const ()).offset(OFFSET) as *const Identity);
ID3D11Device_Impl::GetDeviceRemovedReason(this).into()
}
}
unsafe extern "system" fn GetImmediateContext<
Identity: ID3D11Device_Impl,
const OFFSET: isize,
>(
this: *mut core::ffi::c_void,
ppimmediatecontext: *mut *mut core::ffi::c_void,
) {
unsafe {
let this: &Identity =
&*((this as *const *const ()).offset(OFFSET) as *const Identity);
ID3D11Device_Impl::GetImmediateContext(
this,
core::mem::transmute_copy(&ppimmediatecontext),
)
}
}
unsafe extern "system" fn SetExceptionMode<
Identity: ID3D11Device_Impl,
const OFFSET: isize,
>(
this: *mut core::ffi::c_void,
raiseflags: u32,
) -> windows_core::HRESULT {
unsafe {
let this: &Identity =
&*((this as *const *const ()).offset(OFFSET) as *const Identity);
ID3D11Device_Impl::SetExceptionMode(this, core::mem::transmute_copy(&raiseflags))
.into()
}
}
unsafe extern "system" fn GetExceptionMode<
Identity: ID3D11Device_Impl,
const OFFSET: isize,
>(
this: *mut core::ffi::c_void,
) -> u32 {
unsafe {
let this: &Identity =
&*((this as *const *const ()).offset(OFFSET) as *const Identity);
ID3D11Device_Impl::GetExceptionMode(this)
}
}
Self {
base__: windows_core::IUnknown_Vtbl::new::<Identity, OFFSET>(),
CreateBuffer: CreateBuffer::<Identity, OFFSET>,
CreateTexture1D: CreateTexture1D::<Identity, OFFSET>,
CreateTexture2D: CreateTexture2D::<Identity, OFFSET>,
CreateTexture3D: CreateTexture3D::<Identity, OFFSET>,
CreateShaderResourceView: CreateShaderResourceView::<Identity, OFFSET>,
CreateUnorderedAccessView: CreateUnorderedAccessView::<Identity, OFFSET>,
CreateRenderTargetView: CreateRenderTargetView::<Identity, OFFSET>,
CreateDepthStencilView: CreateDepthStencilView::<Identity, OFFSET>,
CreateInputLayout: CreateInputLayout::<Identity, OFFSET>,
CreateVertexShader: CreateVertexShader::<Identity, OFFSET>,
CreateGeometryShader: CreateGeometryShader::<Identity, OFFSET>,
CreateGeometryShaderWithStreamOutput: CreateGeometryShaderWithStreamOutput::<
Identity,
OFFSET,
>,
CreatePixelShader: CreatePixelShader::<Identity, OFFSET>,
CreateHullShader: CreateHullShader::<Identity, OFFSET>,
CreateDomainShader: CreateDomainShader::<Identity, OFFSET>,
CreateComputeShader: CreateComputeShader::<Identity, OFFSET>,
CreateClassLinkage: CreateClassLinkage::<Identity, OFFSET>,
CreateBlendState: CreateBlendState::<Identity, OFFSET>,
CreateDepthStencilState: CreateDepthStencilState::<Identity, OFFSET>,
CreateRasterizerState: CreateRasterizerState::<Identity, OFFSET>,
CreateSamplerState: CreateSamplerState::<Identity, OFFSET>,
CreateQuery: CreateQuery::<Identity, OFFSET>,
CreatePredicate: CreatePredicate::<Identity, OFFSET>,
CreateCounter: CreateCounter::<Identity, OFFSET>,
CreateDeferredContext: CreateDeferredContext::<Identity, OFFSET>,
OpenSharedResource: OpenSharedResource::<Identity, OFFSET>,
CheckFormatSupport: CheckFormatSupport::<Identity, OFFSET>,
CheckMultisampleQualityLevels: CheckMultisampleQualityLevels::<Identity, OFFSET>,
CheckCounterInfo: CheckCounterInfo::<Identity, OFFSET>,
CheckCounter: CheckCounter::<Identity, OFFSET>,
CheckFeatureSupport: CheckFeatureSupport::<Identity, OFFSET>,
GetPrivateData: GetPrivateData::<Identity, OFFSET>,
SetPrivateData: SetPrivateData::<Identity, OFFSET>,
SetPrivateDataInterface: SetPrivateDataInterface::<Identity, OFFSET>,
GetFeatureLevel: GetFeatureLevel::<Identity, OFFSET>,
GetCreationFlags: GetCreationFlags::<Identity, OFFSET>,
GetDeviceRemovedReason: GetDeviceRemovedReason::<Identity, OFFSET>,
GetImmediateContext: GetImmediateContext::<Identity, OFFSET>,
SetExceptionMode: SetExceptionMode::<Identity, OFFSET>,
GetExceptionMode: GetExceptionMode::<Identity, OFFSET>,
}
}
pub fn matches(iid: &windows_core::GUID) -> bool {
iid == &<ID3D11Device as windows_core::Interface>::IID
}
}
#[cfg(all(
feature = "Win32_Graphics_Direct3D",
feature = "Win32_Graphics_Dxgi_Common"
))]
impl windows_core::RuntimeName for ID3D11Device {}
#[cfg(all(
feature = "Win32_Graphics_Direct3D",
feature = "Win32_Graphics_Dxgi_Common"
))]
unsafe impl Send for ID3D11Device {}
#[cfg(all(
feature = "Win32_Graphics_Direct3D",
feature = "Win32_Graphics_Dxgi_Common"
))]
unsafe impl Sync for ID3D11Device {}
windows_core::imp::define_interface!(
ID3D11Device1,
ID3D11Device1_Vtbl,
0xa04bfb29_08ef_43d6_a49c_a9bdbdcbe686
);
impl core::ops::Deref for ID3D11Device1 {
type Target = ID3D11Device;
fn deref(&self) -> &Self::Target {
unsafe { core::mem::transmute(self) }
}
}
windows_core::imp::interface_hierarchy!(ID3D11Device1, windows_core::IUnknown, ID3D11Device);
impl ID3D11Device1 {
pub unsafe fn GetImmediateContext1(&self) -> windows_core::Result<ID3D11DeviceContext1> {
unsafe {
let mut result__ = core::mem::zeroed();
(windows_core::Interface::vtable(self).GetImmediateContext1)(
windows_core::Interface::as_raw(self),
&mut result__,
);
windows_core::Type::from_abi(result__)
}
}
pub unsafe fn CreateDeferredContext1(
&self,
contextflags: u32,
ppdeferredcontext: Option<*mut Option<ID3D11DeviceContext1>>,
) -> windows_core::Result<()> {
unsafe {
(windows_core::Interface::vtable(self).CreateDeferredContext1)(
windows_core::Interface::as_raw(self),
contextflags,
core::mem::transmute(ppdeferredcontext.unwrap_or(core::mem::zeroed())),
)
.ok()
}
}
pub unsafe fn CreateBlendState1(
&self,
pblendstatedesc: *const D3D11_BLEND_DESC1,
ppblendstate: Option<*mut Option<ID3D11BlendState1>>,
) -> windows_core::Result<()> {
unsafe {
(windows_core::Interface::vtable(self).CreateBlendState1)(
windows_core::Interface::as_raw(self),
pblendstatedesc,
core::mem::transmute(ppblendstate.unwrap_or(core::mem::zeroed())),
)
.ok()
}
}
pub unsafe fn CreateRasterizerState1(
&self,
prasterizerdesc: *const D3D11_RASTERIZER_DESC1,
pprasterizerstate: Option<*mut Option<ID3D11RasterizerState1>>,
) -> windows_core::Result<()> {
unsafe {
(windows_core::Interface::vtable(self).CreateRasterizerState1)(
windows_core::Interface::as_raw(self),
prasterizerdesc,
core::mem::transmute(pprasterizerstate.unwrap_or(core::mem::zeroed())),
)
.ok()
}
}
#[cfg(feature = "Win32_Graphics_Direct3D")]
pub unsafe fn CreateDeviceContextState(
&self,
flags: u32,
pfeaturelevels: &[super::Direct3D::D3D_FEATURE_LEVEL],
sdkversion: u32,
emulatedinterface: *const windows_core::GUID,
pchosenfeaturelevel: Option<*mut super::Direct3D::D3D_FEATURE_LEVEL>,
ppcontextstate: Option<*mut Option<ID3DDeviceContextState>>,
) -> windows_core::Result<()> {
unsafe {
(windows_core::Interface::vtable(self).CreateDeviceContextState)(
windows_core::Interface::as_raw(self),
flags,
core::mem::transmute(pfeaturelevels.as_ptr()),
pfeaturelevels.len().try_into().unwrap(),
sdkversion,
emulatedinterface,
core::mem::transmute(pchosenfeaturelevel.unwrap_or(core::mem::zeroed())),
core::mem::transmute(ppcontextstate.unwrap_or(core::mem::zeroed())),
)
.ok()
}
}
pub unsafe fn OpenSharedResource1<T>(
&self,
hresource: crate::Foundation::HANDLE,
) -> windows_core::Result<T>
where
T: windows_core::Interface,
{
let mut result__ = core::ptr::null_mut();
unsafe {
(windows_core::Interface::vtable(self).OpenSharedResource1)(
windows_core::Interface::as_raw(self),
hresource,
&T::IID,
&mut result__,
)
.and_then(|| windows_core::Type::from_abi(result__))
}
}
pub unsafe fn OpenSharedResourceByName<P0, T>(
&self,
lpname: P0,
dwdesiredaccess: u32,
) -> windows_core::Result<T>
where
P0: windows_core::Param<crate::core_supplemental::PCWSTR>,
T: windows_core::Interface,
{
let mut result__ = core::ptr::null_mut();
unsafe {
(windows_core::Interface::vtable(self).OpenSharedResourceByName)(
windows_core::Interface::as_raw(self),
lpname.param().abi(),
dwdesiredaccess,
&T::IID,
&mut result__,
)
.and_then(|| windows_core::Type::from_abi(result__))
}
}
}
#[repr(C)]
pub struct ID3D11Device1_Vtbl {
pub base__: ID3D11Device_Vtbl,
pub GetImmediateContext1:
unsafe extern "system" fn(*mut core::ffi::c_void, *mut *mut core::ffi::c_void),
pub CreateDeferredContext1: unsafe extern "system" fn(
*mut core::ffi::c_void,
u32,
*mut *mut core::ffi::c_void,
) -> windows_core::HRESULT,
pub CreateBlendState1: unsafe extern "system" fn(
*mut core::ffi::c_void,
*const D3D11_BLEND_DESC1,
*mut *mut core::ffi::c_void,
) -> windows_core::HRESULT,
pub CreateRasterizerState1: unsafe extern "system" fn(
*mut core::ffi::c_void,
*const D3D11_RASTERIZER_DESC1,
*mut *mut core::ffi::c_void,
) -> windows_core::HRESULT,
#[cfg(feature = "Win32_Graphics_Direct3D")]
pub CreateDeviceContextState: unsafe extern "system" fn(
*mut core::ffi::c_void,
u32,
*const super::Direct3D::D3D_FEATURE_LEVEL,
u32,
u32,
*const windows_core::GUID,
*mut super::Direct3D::D3D_FEATURE_LEVEL,
*mut *mut core::ffi::c_void,
) -> windows_core::HRESULT,
#[cfg(not(feature = "Win32_Graphics_Direct3D"))]
CreateDeviceContextState: usize,
pub OpenSharedResource1: unsafe extern "system" fn(
*mut core::ffi::c_void,
crate::Foundation::HANDLE,
*const windows_core::GUID,
*mut *mut core::ffi::c_void,
) -> windows_core::HRESULT,
pub OpenSharedResourceByName: unsafe extern "system" fn(
*mut core::ffi::c_void,
crate::core_supplemental::PCWSTR,
u32,
*const windows_core::GUID,
*mut *mut core::ffi::c_void,
) -> windows_core::HRESULT,
}
#[cfg(all(
feature = "Win32_Graphics_Direct3D",
feature = "Win32_Graphics_Dxgi_Common"
))]
pub trait ID3D11Device1_Impl: ID3D11Device_Impl {
fn GetImmediateContext1(
&self,
ppimmediatecontext: windows_core::OutRef<'_, ID3D11DeviceContext1>,
);
fn CreateDeferredContext1(
&self,
contextflags: u32,
ppdeferredcontext: windows_core::OutRef<'_, ID3D11DeviceContext1>,
) -> windows_core::Result<()>;
fn CreateBlendState1(
&self,
pblendstatedesc: *const D3D11_BLEND_DESC1,
ppblendstate: windows_core::OutRef<'_, ID3D11BlendState1>,
) -> windows_core::Result<()>;
fn CreateRasterizerState1(
&self,
prasterizerdesc: *const D3D11_RASTERIZER_DESC1,
pprasterizerstate: windows_core::OutRef<'_, ID3D11RasterizerState1>,
) -> windows_core::Result<()>;
fn CreateDeviceContextState(
&self,
flags: u32,
pfeaturelevels: *const super::Direct3D::D3D_FEATURE_LEVEL,
featurelevels: u32,
sdkversion: u32,
emulatedinterface: *const windows_core::GUID,
pchosenfeaturelevel: *mut super::Direct3D::D3D_FEATURE_LEVEL,
ppcontextstate: windows_core::OutRef<'_, ID3DDeviceContextState>,
) -> windows_core::Result<()>;
fn OpenSharedResource1(
&self,
hresource: crate::Foundation::HANDLE,
returnedinterface: *const windows_core::GUID,
ppresource: *mut *mut core::ffi::c_void,
) -> windows_core::Result<()>;
fn OpenSharedResourceByName(
&self,
lpname: &crate::core_supplemental::PCWSTR,
dwdesiredaccess: u32,
returnedinterface: *const windows_core::GUID,
ppresource: *mut *mut core::ffi::c_void,
) -> windows_core::Result<()>;
}
#[cfg(all(
feature = "Win32_Graphics_Direct3D",
feature = "Win32_Graphics_Dxgi_Common"
))]
impl ID3D11Device1_Vtbl {
pub const fn new<Identity: ID3D11Device1_Impl, const OFFSET: isize>() -> Self {
unsafe extern "system" fn GetImmediateContext1<
Identity: ID3D11Device1_Impl,
const OFFSET: isize,
>(
this: *mut core::ffi::c_void,
ppimmediatecontext: *mut *mut core::ffi::c_void,
) {
unsafe {
let this: &Identity =
&*((this as *const *const ()).offset(OFFSET) as *const Identity);
ID3D11Device1_Impl::GetImmediateContext1(
this,
core::mem::transmute_copy(&ppimmediatecontext),
)
}
}
unsafe extern "system" fn CreateDeferredContext1<
Identity: ID3D11Device1_Impl,
const OFFSET: isize,
>(
this: *mut core::ffi::c_void,
contextflags: u32,
ppdeferredcontext: *mut *mut core::ffi::c_void,
) -> windows_core::HRESULT {
unsafe {
let this: &Identity =
&*((this as *const *const ()).offset(OFFSET) as *const Identity);
ID3D11Device1_Impl::CreateDeferredContext1(
this,
core::mem::transmute_copy(&contextflags),
core::mem::transmute_copy(&ppdeferredcontext),
)
.into()
}
}
unsafe extern "system" fn CreateBlendState1<
Identity: ID3D11Device1_Impl,
const OFFSET: isize,
>(
this: *mut core::ffi::c_void,
pblendstatedesc: *const D3D11_BLEND_DESC1,
ppblendstate: *mut *mut core::ffi::c_void,
) -> windows_core::HRESULT {
unsafe {
let this: &Identity =
&*((this as *const *const ()).offset(OFFSET) as *const Identity);
ID3D11Device1_Impl::CreateBlendState1(
this,
core::mem::transmute_copy(&pblendstatedesc),
core::mem::transmute_copy(&ppblendstate),
)
.into()
}
}
unsafe extern "system" fn CreateRasterizerState1<
Identity: ID3D11Device1_Impl,
const OFFSET: isize,
>(
this: *mut core::ffi::c_void,
prasterizerdesc: *const D3D11_RASTERIZER_DESC1,
pprasterizerstate: *mut *mut core::ffi::c_void,
) -> windows_core::HRESULT {
unsafe {
let this: &Identity =
&*((this as *const *const ()).offset(OFFSET) as *const Identity);
ID3D11Device1_Impl::CreateRasterizerState1(
this,
core::mem::transmute_copy(&prasterizerdesc),
core::mem::transmute_copy(&pprasterizerstate),
)
.into()
}
}
unsafe extern "system" fn CreateDeviceContextState<
Identity: ID3D11Device1_Impl,
const OFFSET: isize,
>(
this: *mut core::ffi::c_void,
flags: u32,
pfeaturelevels: *const super::Direct3D::D3D_FEATURE_LEVEL,
featurelevels: u32,
sdkversion: u32,
emulatedinterface: *const windows_core::GUID,
pchosenfeaturelevel: *mut super::Direct3D::D3D_FEATURE_LEVEL,
ppcontextstate: *mut *mut core::ffi::c_void,
) -> windows_core::HRESULT {
unsafe {
let this: &Identity =
&*((this as *const *const ()).offset(OFFSET) as *const Identity);
ID3D11Device1_Impl::CreateDeviceContextState(
this,
core::mem::transmute_copy(&flags),
core::mem::transmute_copy(&pfeaturelevels),
core::mem::transmute_copy(&featurelevels),
core::mem::transmute_copy(&sdkversion),
core::mem::transmute_copy(&emulatedinterface),
core::mem::transmute_copy(&pchosenfeaturelevel),
core::mem::transmute_copy(&ppcontextstate),
)
.into()
}
}
unsafe extern "system" fn OpenSharedResource1<
Identity: ID3D11Device1_Impl,
const OFFSET: isize,
>(
this: *mut core::ffi::c_void,
hresource: crate::Foundation::HANDLE,
returnedinterface: *const windows_core::GUID,
ppresource: *mut *mut core::ffi::c_void,
) -> windows_core::HRESULT {
unsafe {
let this: &Identity =
&*((this as *const *const ()).offset(OFFSET) as *const Identity);
ID3D11Device1_Impl::OpenSharedResource1(
this,
core::mem::transmute_copy(&hresource),
core::mem::transmute_copy(&returnedinterface),
core::mem::transmute_copy(&ppresource),
)
.into()
}
}
unsafe extern "system" fn OpenSharedResourceByName<
Identity: ID3D11Device1_Impl,
const OFFSET: isize,
>(
this: *mut core::ffi::c_void,
lpname: crate::core_supplemental::PCWSTR,
dwdesiredaccess: u32,
returnedinterface: *const windows_core::GUID,
ppresource: *mut *mut core::ffi::c_void,
) -> windows_core::HRESULT {
unsafe {
let this: &Identity =
&*((this as *const *const ()).offset(OFFSET) as *const Identity);
ID3D11Device1_Impl::OpenSharedResourceByName(
this,
core::mem::transmute(&lpname),
core::mem::transmute_copy(&dwdesiredaccess),
core::mem::transmute_copy(&returnedinterface),
core::mem::transmute_copy(&ppresource),
)
.into()
}
}
Self {
base__: ID3D11Device_Vtbl::new::<Identity, OFFSET>(),
GetImmediateContext1: GetImmediateContext1::<Identity, OFFSET>,
CreateDeferredContext1: CreateDeferredContext1::<Identity, OFFSET>,
CreateBlendState1: CreateBlendState1::<Identity, OFFSET>,
CreateRasterizerState1: CreateRasterizerState1::<Identity, OFFSET>,
CreateDeviceContextState: CreateDeviceContextState::<Identity, OFFSET>,
OpenSharedResource1: OpenSharedResource1::<Identity, OFFSET>,
OpenSharedResourceByName: OpenSharedResourceByName::<Identity, OFFSET>,
}
}
pub fn matches(iid: &windows_core::GUID) -> bool {
iid == &<ID3D11Device1 as windows_core::Interface>::IID
|| iid == &<ID3D11Device as windows_core::Interface>::IID
}
}
#[cfg(all(
feature = "Win32_Graphics_Direct3D",
feature = "Win32_Graphics_Dxgi_Common"
))]
impl windows_core::RuntimeName for ID3D11Device1 {}
#[cfg(all(
feature = "Win32_Graphics_Direct3D",
feature = "Win32_Graphics_Dxgi_Common"
))]
unsafe impl Send for ID3D11Device1 {}
#[cfg(all(
feature = "Win32_Graphics_Direct3D",
feature = "Win32_Graphics_Dxgi_Common"
))]
unsafe impl Sync for ID3D11Device1 {}
windows_core::imp::define_interface!(
ID3D11Device2,
ID3D11Device2_Vtbl,
0x9d06dffa_d1e5_4d07_83a8_1bb123f2f841
);
impl core::ops::Deref for ID3D11Device2 {
type Target = ID3D11Device1;
fn deref(&self) -> &Self::Target {
unsafe { core::mem::transmute(self) }
}
}
windows_core::imp::interface_hierarchy!(
ID3D11Device2,
windows_core::IUnknown,
ID3D11Device,
ID3D11Device1
);
impl ID3D11Device2 {
pub unsafe fn GetImmediateContext2(&self) -> windows_core::Result<ID3D11DeviceContext2> {
unsafe {
let mut result__ = core::mem::zeroed();
(windows_core::Interface::vtable(self).GetImmediateContext2)(
windows_core::Interface::as_raw(self),
&mut result__,
);
windows_core::Type::from_abi(result__)
}
}
pub unsafe fn CreateDeferredContext2(
&self,
contextflags: u32,
ppdeferredcontext: Option<*mut Option<ID3D11DeviceContext2>>,
) -> windows_core::Result<()> {
unsafe {
(windows_core::Interface::vtable(self).CreateDeferredContext2)(
windows_core::Interface::as_raw(self),
contextflags,
core::mem::transmute(ppdeferredcontext.unwrap_or(core::mem::zeroed())),
)
.ok()
}
}
pub unsafe fn GetResourceTiling<P0>(
&self,
ptiledresource: P0,
pnumtilesforentireresource: Option<*mut u32>,
ppackedmipdesc: Option<*mut D3D11_PACKED_MIP_DESC>,
pstandardtileshapefornonpackedmips: Option<*mut D3D11_TILE_SHAPE>,
pnumsubresourcetilings: Option<*mut u32>,
firstsubresourcetilingtoget: u32,
psubresourcetilingsfornonpackedmips: *mut D3D11_SUBRESOURCE_TILING,
) where
P0: windows_core::Param<ID3D11Resource>,
{
unsafe {
(windows_core::Interface::vtable(self).GetResourceTiling)(
windows_core::Interface::as_raw(self),
ptiledresource.param().abi(),
core::mem::transmute(pnumtilesforentireresource.unwrap_or(core::mem::zeroed())),
core::mem::transmute(ppackedmipdesc.unwrap_or(core::mem::zeroed())),
core::mem::transmute(
pstandardtileshapefornonpackedmips.unwrap_or(core::mem::zeroed()),
),
core::mem::transmute(pnumsubresourcetilings.unwrap_or(core::mem::zeroed())),
firstsubresourcetilingtoget,
core::mem::transmute(psubresourcetilingsfornonpackedmips),
)
}
}
#[cfg(feature = "Win32_Graphics_Dxgi_Common")]
pub unsafe fn CheckMultisampleQualityLevels1(
&self,
format: crate::Dxgi::Common::DXGI_FORMAT,
samplecount: u32,
flags: u32,
) -> windows_core::Result<u32> {
unsafe {
let mut result__ = core::mem::zeroed();
(windows_core::Interface::vtable(self).CheckMultisampleQualityLevels1)(
windows_core::Interface::as_raw(self),
format,
samplecount,
flags,
&mut result__,
)
.map(|| result__)
}
}
}
#[repr(C)]
pub struct ID3D11Device2_Vtbl {
pub base__: ID3D11Device1_Vtbl,
pub GetImmediateContext2:
unsafe extern "system" fn(*mut core::ffi::c_void, *mut *mut core::ffi::c_void),
pub CreateDeferredContext2: unsafe extern "system" fn(
*mut core::ffi::c_void,
u32,
*mut *mut core::ffi::c_void,
) -> windows_core::HRESULT,
pub GetResourceTiling: unsafe extern "system" fn(
*mut core::ffi::c_void,
*mut core::ffi::c_void,
*mut u32,
*mut D3D11_PACKED_MIP_DESC,
*mut D3D11_TILE_SHAPE,
*mut u32,
u32,
*mut D3D11_SUBRESOURCE_TILING,
),
#[cfg(feature = "Win32_Graphics_Dxgi_Common")]
pub CheckMultisampleQualityLevels1: unsafe extern "system" fn(
*mut core::ffi::c_void,
crate::Dxgi::Common::DXGI_FORMAT,
u32,
u32,
*mut u32,
) -> windows_core::HRESULT,
#[cfg(not(feature = "Win32_Graphics_Dxgi_Common"))]
CheckMultisampleQualityLevels1: usize,
}
#[cfg(all(
feature = "Win32_Graphics_Direct3D",
feature = "Win32_Graphics_Dxgi_Common"
))]
pub trait ID3D11Device2_Impl: ID3D11Device1_Impl {
fn GetImmediateContext2(
&self,
ppimmediatecontext: windows_core::OutRef<'_, ID3D11DeviceContext2>,
);
fn CreateDeferredContext2(
&self,
contextflags: u32,
ppdeferredcontext: windows_core::OutRef<'_, ID3D11DeviceContext2>,
) -> windows_core::Result<()>;
fn GetResourceTiling(
&self,
ptiledresource: windows_core::Ref<'_, ID3D11Resource>,
pnumtilesforentireresource: *mut u32,
ppackedmipdesc: *mut D3D11_PACKED_MIP_DESC,
pstandardtileshapefornonpackedmips: *mut D3D11_TILE_SHAPE,
pnumsubresourcetilings: *mut u32,
firstsubresourcetilingtoget: u32,
psubresourcetilingsfornonpackedmips: *mut D3D11_SUBRESOURCE_TILING,
);
fn CheckMultisampleQualityLevels1(
&self,
format: crate::Dxgi::Common::DXGI_FORMAT,
samplecount: u32,
flags: u32,
) -> windows_core::Result<u32>;
}
#[cfg(all(
feature = "Win32_Graphics_Direct3D",
feature = "Win32_Graphics_Dxgi_Common"
))]
impl ID3D11Device2_Vtbl {
pub const fn new<Identity: ID3D11Device2_Impl, const OFFSET: isize>() -> Self {
unsafe extern "system" fn GetImmediateContext2<
Identity: ID3D11Device2_Impl,
const OFFSET: isize,
>(
this: *mut core::ffi::c_void,
ppimmediatecontext: *mut *mut core::ffi::c_void,
) {
unsafe {
let this: &Identity =
&*((this as *const *const ()).offset(OFFSET) as *const Identity);
ID3D11Device2_Impl::GetImmediateContext2(
this,
core::mem::transmute_copy(&ppimmediatecontext),
)
}
}
unsafe extern "system" fn CreateDeferredContext2<
Identity: ID3D11Device2_Impl,
const OFFSET: isize,
>(
this: *mut core::ffi::c_void,
contextflags: u32,
ppdeferredcontext: *mut *mut core::ffi::c_void,
) -> windows_core::HRESULT {
unsafe {
let this: &Identity =
&*((this as *const *const ()).offset(OFFSET) as *const Identity);
ID3D11Device2_Impl::CreateDeferredContext2(
this,
core::mem::transmute_copy(&contextflags),
core::mem::transmute_copy(&ppdeferredcontext),
)
.into()
}
}
unsafe extern "system" fn GetResourceTiling<
Identity: ID3D11Device2_Impl,
const OFFSET: isize,
>(
this: *mut core::ffi::c_void,
ptiledresource: *mut core::ffi::c_void,
pnumtilesforentireresource: *mut u32,
ppackedmipdesc: *mut D3D11_PACKED_MIP_DESC,
pstandardtileshapefornonpackedmips: *mut D3D11_TILE_SHAPE,
pnumsubresourcetilings: *mut u32,
firstsubresourcetilingtoget: u32,
psubresourcetilingsfornonpackedmips: *mut D3D11_SUBRESOURCE_TILING,
) {
unsafe {
let this: &Identity =
&*((this as *const *const ()).offset(OFFSET) as *const Identity);
ID3D11Device2_Impl::GetResourceTiling(
this,
core::mem::transmute_copy(&ptiledresource),
core::mem::transmute_copy(&pnumtilesforentireresource),
core::mem::transmute_copy(&ppackedmipdesc),
core::mem::transmute_copy(&pstandardtileshapefornonpackedmips),
core::mem::transmute_copy(&pnumsubresourcetilings),
core::mem::transmute_copy(&firstsubresourcetilingtoget),
core::mem::transmute_copy(&psubresourcetilingsfornonpackedmips),
)
}
}
unsafe extern "system" fn CheckMultisampleQualityLevels1<
Identity: ID3D11Device2_Impl,
const OFFSET: isize,
>(
this: *mut core::ffi::c_void,
format: crate::Dxgi::Common::DXGI_FORMAT,
samplecount: u32,
flags: u32,
pnumqualitylevels: *mut u32,
) -> windows_core::HRESULT {
unsafe {
let this: &Identity =
&*((this as *const *const ()).offset(OFFSET) as *const Identity);
match ID3D11Device2_Impl::CheckMultisampleQualityLevels1(
this,
core::mem::transmute_copy(&format),
core::mem::transmute_copy(&samplecount),
core::mem::transmute_copy(&flags),
) {
Ok(ok__) => {
pnumqualitylevels.write(core::mem::transmute(ok__));
windows_core::HRESULT(0)
}
Err(err) => err.into(),
}
}
}
Self {
base__: ID3D11Device1_Vtbl::new::<Identity, OFFSET>(),
GetImmediateContext2: GetImmediateContext2::<Identity, OFFSET>,
CreateDeferredContext2: CreateDeferredContext2::<Identity, OFFSET>,
GetResourceTiling: GetResourceTiling::<Identity, OFFSET>,
CheckMultisampleQualityLevels1: CheckMultisampleQualityLevels1::<Identity, OFFSET>,
}
}
pub fn matches(iid: &windows_core::GUID) -> bool {
iid == &<ID3D11Device2 as windows_core::Interface>::IID
|| iid == &<ID3D11Device as windows_core::Interface>::IID
|| iid == &<ID3D11Device1 as windows_core::Interface>::IID
}
}
#[cfg(all(
feature = "Win32_Graphics_Direct3D",
feature = "Win32_Graphics_Dxgi_Common"
))]
impl windows_core::RuntimeName for ID3D11Device2 {}
#[cfg(all(
feature = "Win32_Graphics_Direct3D",
feature = "Win32_Graphics_Dxgi_Common"
))]
unsafe impl Send for ID3D11Device2 {}
#[cfg(all(
feature = "Win32_Graphics_Direct3D",
feature = "Win32_Graphics_Dxgi_Common"
))]
unsafe impl Sync for ID3D11Device2 {}
windows_core::imp::define_interface!(
ID3D11Device3,
ID3D11Device3_Vtbl,
0xa05c8c37_d2c6_4732_b3a0_9ce0b0dc9ae6
);
impl core::ops::Deref for ID3D11Device3 {
type Target = ID3D11Device2;
fn deref(&self) -> &Self::Target {
unsafe { core::mem::transmute(self) }
}
}
windows_core::imp::interface_hierarchy!(
ID3D11Device3,
windows_core::IUnknown,
ID3D11Device,
ID3D11Device1,
ID3D11Device2
);
impl ID3D11Device3 {
#[cfg(feature = "Win32_Graphics_Dxgi_Common")]
pub unsafe fn CreateTexture2D1(
&self,
pdesc1: *const D3D11_TEXTURE2D_DESC1,
pinitialdata: Option<*const D3D11_SUBRESOURCE_DATA>,
pptexture2d: Option<*mut Option<ID3D11Texture2D1>>,
) -> windows_core::Result<()> {
unsafe {
(windows_core::Interface::vtable(self).CreateTexture2D1)(
windows_core::Interface::as_raw(self),
pdesc1,
core::mem::transmute(pinitialdata.unwrap_or(core::mem::zeroed())),
core::mem::transmute(pptexture2d.unwrap_or(core::mem::zeroed())),
)
.ok()
}
}
#[cfg(feature = "Win32_Graphics_Dxgi_Common")]
pub unsafe fn CreateTexture3D1(
&self,
pdesc1: *const D3D11_TEXTURE3D_DESC1,
pinitialdata: Option<*const D3D11_SUBRESOURCE_DATA>,
pptexture3d: Option<*mut Option<ID3D11Texture3D1>>,
) -> windows_core::Result<()> {
unsafe {
(windows_core::Interface::vtable(self).CreateTexture3D1)(
windows_core::Interface::as_raw(self),
pdesc1,
core::mem::transmute(pinitialdata.unwrap_or(core::mem::zeroed())),
core::mem::transmute(pptexture3d.unwrap_or(core::mem::zeroed())),
)
.ok()
}
}
pub unsafe fn CreateRasterizerState2(
&self,
prasterizerdesc: *const D3D11_RASTERIZER_DESC2,
pprasterizerstate: Option<*mut Option<ID3D11RasterizerState2>>,
) -> windows_core::Result<()> {
unsafe {
(windows_core::Interface::vtable(self).CreateRasterizerState2)(
windows_core::Interface::as_raw(self),
prasterizerdesc,
core::mem::transmute(pprasterizerstate.unwrap_or(core::mem::zeroed())),
)
.ok()
}
}
#[cfg(all(
feature = "Win32_Graphics_Direct3D",
feature = "Win32_Graphics_Dxgi_Common"
))]
pub unsafe fn CreateShaderResourceView1<P0>(
&self,
presource: P0,
pdesc1: Option<*const D3D11_SHADER_RESOURCE_VIEW_DESC1>,
ppsrview1: Option<*mut Option<ID3D11ShaderResourceView1>>,
) -> windows_core::Result<()>
where
P0: windows_core::Param<ID3D11Resource>,
{
unsafe {
(windows_core::Interface::vtable(self).CreateShaderResourceView1)(
windows_core::Interface::as_raw(self),
presource.param().abi(),
core::mem::transmute(pdesc1.unwrap_or(core::mem::zeroed())),
core::mem::transmute(ppsrview1.unwrap_or(core::mem::zeroed())),
)
.ok()
}
}
#[cfg(feature = "Win32_Graphics_Dxgi_Common")]
pub unsafe fn CreateUnorderedAccessView1<P0>(
&self,
presource: P0,
pdesc1: Option<*const D3D11_UNORDERED_ACCESS_VIEW_DESC1>,
ppuaview1: Option<*mut Option<ID3D11UnorderedAccessView1>>,
) -> windows_core::Result<()>
where
P0: windows_core::Param<ID3D11Resource>,
{
unsafe {
(windows_core::Interface::vtable(self).CreateUnorderedAccessView1)(
windows_core::Interface::as_raw(self),
presource.param().abi(),
core::mem::transmute(pdesc1.unwrap_or(core::mem::zeroed())),
core::mem::transmute(ppuaview1.unwrap_or(core::mem::zeroed())),
)
.ok()
}
}
#[cfg(feature = "Win32_Graphics_Dxgi_Common")]
pub unsafe fn CreateRenderTargetView1<P0>(
&self,
presource: P0,
pdesc1: Option<*const D3D11_RENDER_TARGET_VIEW_DESC1>,
pprtview1: Option<*mut Option<ID3D11RenderTargetView1>>,
) -> windows_core::Result<()>
where
P0: windows_core::Param<ID3D11Resource>,
{
unsafe {
(windows_core::Interface::vtable(self).CreateRenderTargetView1)(
windows_core::Interface::as_raw(self),
presource.param().abi(),
core::mem::transmute(pdesc1.unwrap_or(core::mem::zeroed())),
core::mem::transmute(pprtview1.unwrap_or(core::mem::zeroed())),
)
.ok()
}
}
pub unsafe fn CreateQuery1(
&self,
pquerydesc1: *const D3D11_QUERY_DESC1,
ppquery1: Option<*mut Option<ID3D11Query1>>,
) -> windows_core::Result<()> {
unsafe {
(windows_core::Interface::vtable(self).CreateQuery1)(
windows_core::Interface::as_raw(self),
pquerydesc1,
core::mem::transmute(ppquery1.unwrap_or(core::mem::zeroed())),
)
.ok()
}
}
pub unsafe fn GetImmediateContext3(&self) -> windows_core::Result<ID3D11DeviceContext3> {
unsafe {
let mut result__ = core::mem::zeroed();
(windows_core::Interface::vtable(self).GetImmediateContext3)(
windows_core::Interface::as_raw(self),
&mut result__,
);
windows_core::Type::from_abi(result__)
}
}
pub unsafe fn CreateDeferredContext3(
&self,
contextflags: u32,
ppdeferredcontext: Option<*mut Option<ID3D11DeviceContext3>>,
) -> windows_core::Result<()> {
unsafe {
(windows_core::Interface::vtable(self).CreateDeferredContext3)(
windows_core::Interface::as_raw(self),
contextflags,
core::mem::transmute(ppdeferredcontext.unwrap_or(core::mem::zeroed())),
)
.ok()
}
}
pub unsafe fn WriteToSubresource<P0>(
&self,
pdstresource: P0,
dstsubresource: u32,
pdstbox: Option<*const D3D11_BOX>,
psrcdata: *const core::ffi::c_void,
srcrowpitch: u32,
srcdepthpitch: u32,
) where
P0: windows_core::Param<ID3D11Resource>,
{
unsafe {
(windows_core::Interface::vtable(self).WriteToSubresource)(
windows_core::Interface::as_raw(self),
pdstresource.param().abi(),
dstsubresource,
core::mem::transmute(pdstbox.unwrap_or(core::mem::zeroed())),
psrcdata,
srcrowpitch,
srcdepthpitch,
)
}
}
pub unsafe fn ReadFromSubresource<P3>(
&self,
pdstdata: *mut core::ffi::c_void,
dstrowpitch: u32,
dstdepthpitch: u32,
psrcresource: P3,
srcsubresource: u32,
psrcbox: Option<*const D3D11_BOX>,
) where
P3: windows_core::Param<ID3D11Resource>,
{
unsafe {
(windows_core::Interface::vtable(self).ReadFromSubresource)(
windows_core::Interface::as_raw(self),
core::mem::transmute(pdstdata),
dstrowpitch,
dstdepthpitch,
psrcresource.param().abi(),
srcsubresource,
core::mem::transmute(psrcbox.unwrap_or(core::mem::zeroed())),
)
}
}
}
#[repr(C)]
pub struct ID3D11Device3_Vtbl {
pub base__: ID3D11Device2_Vtbl,
#[cfg(feature = "Win32_Graphics_Dxgi_Common")]
pub CreateTexture2D1: unsafe extern "system" fn(
*mut core::ffi::c_void,
*const D3D11_TEXTURE2D_DESC1,
*const D3D11_SUBRESOURCE_DATA,
*mut *mut core::ffi::c_void,
) -> windows_core::HRESULT,
#[cfg(not(feature = "Win32_Graphics_Dxgi_Common"))]
CreateTexture2D1: usize,
#[cfg(feature = "Win32_Graphics_Dxgi_Common")]
pub CreateTexture3D1: unsafe extern "system" fn(
*mut core::ffi::c_void,
*const D3D11_TEXTURE3D_DESC1,
*const D3D11_SUBRESOURCE_DATA,
*mut *mut core::ffi::c_void,
) -> windows_core::HRESULT,
#[cfg(not(feature = "Win32_Graphics_Dxgi_Common"))]
CreateTexture3D1: usize,
pub CreateRasterizerState2: unsafe extern "system" fn(
*mut core::ffi::c_void,
*const D3D11_RASTERIZER_DESC2,
*mut *mut core::ffi::c_void,
) -> windows_core::HRESULT,
#[cfg(all(
feature = "Win32_Graphics_Direct3D",
feature = "Win32_Graphics_Dxgi_Common"
))]
pub CreateShaderResourceView1: unsafe extern "system" fn(
*mut core::ffi::c_void,
*mut core::ffi::c_void,
*const D3D11_SHADER_RESOURCE_VIEW_DESC1,
*mut *mut core::ffi::c_void,
) -> windows_core::HRESULT,
#[cfg(not(all(
feature = "Win32_Graphics_Direct3D",
feature = "Win32_Graphics_Dxgi_Common"
)))]
CreateShaderResourceView1: usize,
#[cfg(feature = "Win32_Graphics_Dxgi_Common")]
pub CreateUnorderedAccessView1: unsafe extern "system" fn(
*mut core::ffi::c_void,
*mut core::ffi::c_void,
*const D3D11_UNORDERED_ACCESS_VIEW_DESC1,
*mut *mut core::ffi::c_void,
) -> windows_core::HRESULT,
#[cfg(not(feature = "Win32_Graphics_Dxgi_Common"))]
CreateUnorderedAccessView1: usize,
#[cfg(feature = "Win32_Graphics_Dxgi_Common")]
pub CreateRenderTargetView1: unsafe extern "system" fn(
*mut core::ffi::c_void,
*mut core::ffi::c_void,
*const D3D11_RENDER_TARGET_VIEW_DESC1,
*mut *mut core::ffi::c_void,
) -> windows_core::HRESULT,
#[cfg(not(feature = "Win32_Graphics_Dxgi_Common"))]
CreateRenderTargetView1: usize,
pub CreateQuery1: unsafe extern "system" fn(
*mut core::ffi::c_void,
*const D3D11_QUERY_DESC1,
*mut *mut core::ffi::c_void,
) -> windows_core::HRESULT,
pub GetImmediateContext3:
unsafe extern "system" fn(*mut core::ffi::c_void, *mut *mut core::ffi::c_void),
pub CreateDeferredContext3: unsafe extern "system" fn(
*mut core::ffi::c_void,
u32,
*mut *mut core::ffi::c_void,
) -> windows_core::HRESULT,
pub WriteToSubresource: unsafe extern "system" fn(
*mut core::ffi::c_void,
*mut core::ffi::c_void,
u32,
*const D3D11_BOX,
*const core::ffi::c_void,
u32,
u32,
),
pub ReadFromSubresource: unsafe extern "system" fn(
*mut core::ffi::c_void,
*mut core::ffi::c_void,
u32,
u32,
*mut core::ffi::c_void,
u32,
*const D3D11_BOX,
),
}
#[cfg(all(
feature = "Win32_Graphics_Direct3D",
feature = "Win32_Graphics_Dxgi_Common"
))]
pub trait ID3D11Device3_Impl: ID3D11Device2_Impl {
fn CreateTexture2D1(
&self,
pdesc1: *const D3D11_TEXTURE2D_DESC1,
pinitialdata: *const D3D11_SUBRESOURCE_DATA,
pptexture2d: windows_core::OutRef<'_, ID3D11Texture2D1>,
) -> windows_core::Result<()>;
fn CreateTexture3D1(
&self,
pdesc1: *const D3D11_TEXTURE3D_DESC1,
pinitialdata: *const D3D11_SUBRESOURCE_DATA,
pptexture3d: windows_core::OutRef<'_, ID3D11Texture3D1>,
) -> windows_core::Result<()>;
fn CreateRasterizerState2(
&self,
prasterizerdesc: *const D3D11_RASTERIZER_DESC2,
pprasterizerstate: windows_core::OutRef<'_, ID3D11RasterizerState2>,
) -> windows_core::Result<()>;
fn CreateShaderResourceView1(
&self,
presource: windows_core::Ref<'_, ID3D11Resource>,
pdesc1: *const D3D11_SHADER_RESOURCE_VIEW_DESC1,
ppsrview1: windows_core::OutRef<'_, ID3D11ShaderResourceView1>,
) -> windows_core::Result<()>;
fn CreateUnorderedAccessView1(
&self,
presource: windows_core::Ref<'_, ID3D11Resource>,
pdesc1: *const D3D11_UNORDERED_ACCESS_VIEW_DESC1,
ppuaview1: windows_core::OutRef<'_, ID3D11UnorderedAccessView1>,
) -> windows_core::Result<()>;
fn CreateRenderTargetView1(
&self,
presource: windows_core::Ref<'_, ID3D11Resource>,
pdesc1: *const D3D11_RENDER_TARGET_VIEW_DESC1,
pprtview1: windows_core::OutRef<'_, ID3D11RenderTargetView1>,
) -> windows_core::Result<()>;
fn CreateQuery1(
&self,
pquerydesc1: *const D3D11_QUERY_DESC1,
ppquery1: windows_core::OutRef<'_, ID3D11Query1>,
) -> windows_core::Result<()>;
fn GetImmediateContext3(
&self,
ppimmediatecontext: windows_core::OutRef<'_, ID3D11DeviceContext3>,
);
fn CreateDeferredContext3(
&self,
contextflags: u32,
ppdeferredcontext: windows_core::OutRef<'_, ID3D11DeviceContext3>,
) -> windows_core::Result<()>;
fn WriteToSubresource(
&self,
pdstresource: windows_core::Ref<'_, ID3D11Resource>,
dstsubresource: u32,
pdstbox: *const D3D11_BOX,
psrcdata: *const core::ffi::c_void,
srcrowpitch: u32,
srcdepthpitch: u32,
);
fn ReadFromSubresource(
&self,
pdstdata: *mut core::ffi::c_void,
dstrowpitch: u32,
dstdepthpitch: u32,
psrcresource: windows_core::Ref<'_, ID3D11Resource>,
srcsubresource: u32,
psrcbox: *const D3D11_BOX,
);
}
#[cfg(all(
feature = "Win32_Graphics_Direct3D",
feature = "Win32_Graphics_Dxgi_Common"
))]
impl ID3D11Device3_Vtbl {
pub const fn new<Identity: ID3D11Device3_Impl, const OFFSET: isize>() -> Self {
unsafe extern "system" fn CreateTexture2D1<
Identity: ID3D11Device3_Impl,
const OFFSET: isize,
>(
this: *mut core::ffi::c_void,
pdesc1: *const D3D11_TEXTURE2D_DESC1,
pinitialdata: *const D3D11_SUBRESOURCE_DATA,
pptexture2d: *mut *mut core::ffi::c_void,
) -> windows_core::HRESULT {
unsafe {
let this: &Identity =
&*((this as *const *const ()).offset(OFFSET) as *const Identity);
ID3D11Device3_Impl::CreateTexture2D1(
this,
core::mem::transmute_copy(&pdesc1),
core::mem::transmute_copy(&pinitialdata),
core::mem::transmute_copy(&pptexture2d),
)
.into()
}
}
unsafe extern "system" fn CreateTexture3D1<
Identity: ID3D11Device3_Impl,
const OFFSET: isize,
>(
this: *mut core::ffi::c_void,
pdesc1: *const D3D11_TEXTURE3D_DESC1,
pinitialdata: *const D3D11_SUBRESOURCE_DATA,
pptexture3d: *mut *mut core::ffi::c_void,
) -> windows_core::HRESULT {
unsafe {
let this: &Identity =
&*((this as *const *const ()).offset(OFFSET) as *const Identity);
ID3D11Device3_Impl::CreateTexture3D1(
this,
core::mem::transmute_copy(&pdesc1),
core::mem::transmute_copy(&pinitialdata),
core::mem::transmute_copy(&pptexture3d),
)
.into()
}
}
unsafe extern "system" fn CreateRasterizerState2<
Identity: ID3D11Device3_Impl,
const OFFSET: isize,
>(
this: *mut core::ffi::c_void,
prasterizerdesc: *const D3D11_RASTERIZER_DESC2,
pprasterizerstate: *mut *mut core::ffi::c_void,
) -> windows_core::HRESULT {
unsafe {
let this: &Identity =
&*((this as *const *const ()).offset(OFFSET) as *const Identity);
ID3D11Device3_Impl::CreateRasterizerState2(
this,
core::mem::transmute_copy(&prasterizerdesc),
core::mem::transmute_copy(&pprasterizerstate),
)
.into()
}
}
unsafe extern "system" fn CreateShaderResourceView1<
Identity: ID3D11Device3_Impl,
const OFFSET: isize,
>(
this: *mut core::ffi::c_void,
presource: *mut core::ffi::c_void,
pdesc1: *const D3D11_SHADER_RESOURCE_VIEW_DESC1,
ppsrview1: *mut *mut core::ffi::c_void,
) -> windows_core::HRESULT {
unsafe {
let this: &Identity =
&*((this as *const *const ()).offset(OFFSET) as *const Identity);
ID3D11Device3_Impl::CreateShaderResourceView1(
this,
core::mem::transmute_copy(&presource),
core::mem::transmute_copy(&pdesc1),
core::mem::transmute_copy(&ppsrview1),
)
.into()
}
}
unsafe extern "system" fn CreateUnorderedAccessView1<
Identity: ID3D11Device3_Impl,
const OFFSET: isize,
>(
this: *mut core::ffi::c_void,
presource: *mut core::ffi::c_void,
pdesc1: *const D3D11_UNORDERED_ACCESS_VIEW_DESC1,
ppuaview1: *mut *mut core::ffi::c_void,
) -> windows_core::HRESULT {
unsafe {
let this: &Identity =
&*((this as *const *const ()).offset(OFFSET) as *const Identity);
ID3D11Device3_Impl::CreateUnorderedAccessView1(
this,
core::mem::transmute_copy(&presource),
core::mem::transmute_copy(&pdesc1),
core::mem::transmute_copy(&ppuaview1),
)
.into()
}
}
unsafe extern "system" fn CreateRenderTargetView1<
Identity: ID3D11Device3_Impl,
const OFFSET: isize,
>(
this: *mut core::ffi::c_void,
presource: *mut core::ffi::c_void,
pdesc1: *const D3D11_RENDER_TARGET_VIEW_DESC1,
pprtview1: *mut *mut core::ffi::c_void,
) -> windows_core::HRESULT {
unsafe {
let this: &Identity =
&*((this as *const *const ()).offset(OFFSET) as *const Identity);
ID3D11Device3_Impl::CreateRenderTargetView1(
this,
core::mem::transmute_copy(&presource),
core::mem::transmute_copy(&pdesc1),
core::mem::transmute_copy(&pprtview1),
)
.into()
}
}
unsafe extern "system" fn CreateQuery1<
Identity: ID3D11Device3_Impl,
const OFFSET: isize,
>(
this: *mut core::ffi::c_void,
pquerydesc1: *const D3D11_QUERY_DESC1,
ppquery1: *mut *mut core::ffi::c_void,
) -> windows_core::HRESULT {
unsafe {
let this: &Identity =
&*((this as *const *const ()).offset(OFFSET) as *const Identity);
ID3D11Device3_Impl::CreateQuery1(
this,
core::mem::transmute_copy(&pquerydesc1),
core::mem::transmute_copy(&ppquery1),
)
.into()
}
}
unsafe extern "system" fn GetImmediateContext3<
Identity: ID3D11Device3_Impl,
const OFFSET: isize,
>(
this: *mut core::ffi::c_void,
ppimmediatecontext: *mut *mut core::ffi::c_void,
) {
unsafe {
let this: &Identity =
&*((this as *const *const ()).offset(OFFSET) as *const Identity);
ID3D11Device3_Impl::GetImmediateContext3(
this,
core::mem::transmute_copy(&ppimmediatecontext),
)
}
}
unsafe extern "system" fn CreateDeferredContext3<
Identity: ID3D11Device3_Impl,
const OFFSET: isize,
>(
this: *mut core::ffi::c_void,
contextflags: u32,
ppdeferredcontext: *mut *mut core::ffi::c_void,
) -> windows_core::HRESULT {
unsafe {
let this: &Identity =
&*((this as *const *const ()).offset(OFFSET) as *const Identity);
ID3D11Device3_Impl::CreateDeferredContext3(
this,
core::mem::transmute_copy(&contextflags),
core::mem::transmute_copy(&ppdeferredcontext),
)
.into()
}
}
unsafe extern "system" fn WriteToSubresource<
Identity: ID3D11Device3_Impl,
const OFFSET: isize,
>(
this: *mut core::ffi::c_void,
pdstresource: *mut core::ffi::c_void,
dstsubresource: u32,
pdstbox: *const D3D11_BOX,
psrcdata: *const core::ffi::c_void,
srcrowpitch: u32,
srcdepthpitch: u32,
) {
unsafe {
let this: &Identity =
&*((this as *const *const ()).offset(OFFSET) as *const Identity);
ID3D11Device3_Impl::WriteToSubresource(
this,
core::mem::transmute_copy(&pdstresource),
core::mem::transmute_copy(&dstsubresource),
core::mem::transmute_copy(&pdstbox),
core::mem::transmute_copy(&psrcdata),
core::mem::transmute_copy(&srcrowpitch),
core::mem::transmute_copy(&srcdepthpitch),
)
}
}
unsafe extern "system" fn ReadFromSubresource<
Identity: ID3D11Device3_Impl,
const OFFSET: isize,
>(
this: *mut core::ffi::c_void,
pdstdata: *mut core::ffi::c_void,
dstrowpitch: u32,
dstdepthpitch: u32,
psrcresource: *mut core::ffi::c_void,
srcsubresource: u32,
psrcbox: *const D3D11_BOX,
) {
unsafe {
let this: &Identity =
&*((this as *const *const ()).offset(OFFSET) as *const Identity);
ID3D11Device3_Impl::ReadFromSubresource(
this,
core::mem::transmute_copy(&pdstdata),
core::mem::transmute_copy(&dstrowpitch),
core::mem::transmute_copy(&dstdepthpitch),
core::mem::transmute_copy(&psrcresource),
core::mem::transmute_copy(&srcsubresource),
core::mem::transmute_copy(&psrcbox),
)
}
}
Self {
base__: ID3D11Device2_Vtbl::new::<Identity, OFFSET>(),
CreateTexture2D1: CreateTexture2D1::<Identity, OFFSET>,
CreateTexture3D1: CreateTexture3D1::<Identity, OFFSET>,
CreateRasterizerState2: CreateRasterizerState2::<Identity, OFFSET>,
CreateShaderResourceView1: CreateShaderResourceView1::<Identity, OFFSET>,
CreateUnorderedAccessView1: CreateUnorderedAccessView1::<Identity, OFFSET>,
CreateRenderTargetView1: CreateRenderTargetView1::<Identity, OFFSET>,
CreateQuery1: CreateQuery1::<Identity, OFFSET>,
GetImmediateContext3: GetImmediateContext3::<Identity, OFFSET>,
CreateDeferredContext3: CreateDeferredContext3::<Identity, OFFSET>,
WriteToSubresource: WriteToSubresource::<Identity, OFFSET>,
ReadFromSubresource: ReadFromSubresource::<Identity, OFFSET>,
}
}
pub fn matches(iid: &windows_core::GUID) -> bool {
iid == &<ID3D11Device3 as windows_core::Interface>::IID
|| iid == &<ID3D11Device as windows_core::Interface>::IID
|| iid == &<ID3D11Device1 as windows_core::Interface>::IID
|| iid == &<ID3D11Device2 as windows_core::Interface>::IID
}
}
#[cfg(all(
feature = "Win32_Graphics_Direct3D",
feature = "Win32_Graphics_Dxgi_Common"
))]
impl windows_core::RuntimeName for ID3D11Device3 {}
#[cfg(all(
feature = "Win32_Graphics_Direct3D",
feature = "Win32_Graphics_Dxgi_Common"
))]
unsafe impl Send for ID3D11Device3 {}
#[cfg(all(
feature = "Win32_Graphics_Direct3D",
feature = "Win32_Graphics_Dxgi_Common"
))]
unsafe impl Sync for ID3D11Device3 {}
windows_core::imp::define_interface!(
ID3D11Device4,
ID3D11Device4_Vtbl,
0x8992ab71_02e6_4b8d_ba48_b056dcda42c4
);
impl core::ops::Deref for ID3D11Device4 {
type Target = ID3D11Device3;
fn deref(&self) -> &Self::Target {
unsafe { core::mem::transmute(self) }
}
}
windows_core::imp::interface_hierarchy!(
ID3D11Device4,
windows_core::IUnknown,
ID3D11Device,
ID3D11Device1,
ID3D11Device2,
ID3D11Device3
);
impl ID3D11Device4 {
pub unsafe fn RegisterDeviceRemovedEvent(
&self,
hevent: crate::Foundation::HANDLE,
) -> windows_core::Result<u32> {
unsafe {
let mut result__ = core::mem::zeroed();
(windows_core::Interface::vtable(self).RegisterDeviceRemovedEvent)(
windows_core::Interface::as_raw(self),
hevent,
&mut result__,
)
.map(|| result__)
}
}
pub unsafe fn UnregisterDeviceRemoved(&self, dwcookie: u32) {
unsafe {
(windows_core::Interface::vtable(self).UnregisterDeviceRemoved)(
windows_core::Interface::as_raw(self),
dwcookie,
)
}
}
}
#[repr(C)]
pub struct ID3D11Device4_Vtbl {
pub base__: ID3D11Device3_Vtbl,
pub RegisterDeviceRemovedEvent: unsafe extern "system" fn(
*mut core::ffi::c_void,
crate::Foundation::HANDLE,
*mut u32,
) -> windows_core::HRESULT,
pub UnregisterDeviceRemoved: unsafe extern "system" fn(*mut core::ffi::c_void, u32),
}
#[cfg(all(
feature = "Win32_Graphics_Direct3D",
feature = "Win32_Graphics_Dxgi_Common"
))]
pub trait ID3D11Device4_Impl: ID3D11Device3_Impl {
fn RegisterDeviceRemovedEvent(
&self,
hevent: crate::Foundation::HANDLE,
) -> windows_core::Result<u32>;
fn UnregisterDeviceRemoved(&self, dwcookie: u32);
}
#[cfg(all(
feature = "Win32_Graphics_Direct3D",
feature = "Win32_Graphics_Dxgi_Common"
))]
impl ID3D11Device4_Vtbl {
pub const fn new<Identity: ID3D11Device4_Impl, const OFFSET: isize>() -> Self {
unsafe extern "system" fn RegisterDeviceRemovedEvent<
Identity: ID3D11Device4_Impl,
const OFFSET: isize,
>(
this: *mut core::ffi::c_void,
hevent: crate::Foundation::HANDLE,
pdwcookie: *mut u32,
) -> windows_core::HRESULT {
unsafe {
let this: &Identity =
&*((this as *const *const ()).offset(OFFSET) as *const Identity);
match ID3D11Device4_Impl::RegisterDeviceRemovedEvent(
this,
core::mem::transmute_copy(&hevent),
) {
Ok(ok__) => {
pdwcookie.write(core::mem::transmute(ok__));
windows_core::HRESULT(0)
}
Err(err) => err.into(),
}
}
}
unsafe extern "system" fn UnregisterDeviceRemoved<
Identity: ID3D11Device4_Impl,
const OFFSET: isize,
>(
this: *mut core::ffi::c_void,
dwcookie: u32,
) {
unsafe {
let this: &Identity =
&*((this as *const *const ()).offset(OFFSET) as *const Identity);
ID3D11Device4_Impl::UnregisterDeviceRemoved(
this,
core::mem::transmute_copy(&dwcookie),
)
}
}
Self {
base__: ID3D11Device3_Vtbl::new::<Identity, OFFSET>(),
RegisterDeviceRemovedEvent: RegisterDeviceRemovedEvent::<Identity, OFFSET>,
UnregisterDeviceRemoved: UnregisterDeviceRemoved::<Identity, OFFSET>,
}
}
pub fn matches(iid: &windows_core::GUID) -> bool {
iid == &<ID3D11Device4 as windows_core::Interface>::IID
|| iid == &<ID3D11Device as windows_core::Interface>::IID
|| iid == &<ID3D11Device1 as windows_core::Interface>::IID
|| iid == &<ID3D11Device2 as windows_core::Interface>::IID
|| iid == &<ID3D11Device3 as windows_core::Interface>::IID
}
}
#[cfg(all(
feature = "Win32_Graphics_Direct3D",
feature = "Win32_Graphics_Dxgi_Common"
))]
impl windows_core::RuntimeName for ID3D11Device4 {}
#[cfg(all(
feature = "Win32_Graphics_Direct3D",
feature = "Win32_Graphics_Dxgi_Common"
))]
unsafe impl Send for ID3D11Device4 {}
#[cfg(all(
feature = "Win32_Graphics_Direct3D",
feature = "Win32_Graphics_Dxgi_Common"
))]
unsafe impl Sync for ID3D11Device4 {}
windows_core::imp::define_interface!(
ID3D11Device5,
ID3D11Device5_Vtbl,
0x8ffde202_a0e7_45df_9e01_e837801b5ea0
);
impl core::ops::Deref for ID3D11Device5 {
type Target = ID3D11Device4;
fn deref(&self) -> &Self::Target {
unsafe { core::mem::transmute(self) }
}
}
windows_core::imp::interface_hierarchy!(
ID3D11Device5,
windows_core::IUnknown,
ID3D11Device,
ID3D11Device1,
ID3D11Device2,
ID3D11Device3,
ID3D11Device4
);
impl ID3D11Device5 {
pub unsafe fn OpenSharedFence<T>(
&self,
hfence: crate::Foundation::HANDLE,
result__: *mut Option<T>,
) -> windows_core::Result<()>
where
T: windows_core::Interface,
{
unsafe {
(windows_core::Interface::vtable(self).OpenSharedFence)(
windows_core::Interface::as_raw(self),
hfence,
&T::IID,
result__ as *mut _ as *mut _,
)
.ok()
}
}
pub unsafe fn CreateFence<T>(
&self,
initialvalue: u64,
flags: D3D11_FENCE_FLAG,
result__: *mut Option<T>,
) -> windows_core::Result<()>
where
T: windows_core::Interface,
{
unsafe {
(windows_core::Interface::vtable(self).CreateFence)(
windows_core::Interface::as_raw(self),
initialvalue,
flags,
&T::IID,
result__ as *mut _ as *mut _,
)
.ok()
}
}
}
#[repr(C)]
pub struct ID3D11Device5_Vtbl {
pub base__: ID3D11Device4_Vtbl,
pub OpenSharedFence: unsafe extern "system" fn(
*mut core::ffi::c_void,
crate::Foundation::HANDLE,
*const windows_core::GUID,
*mut *mut core::ffi::c_void,
) -> windows_core::HRESULT,
pub CreateFence: unsafe extern "system" fn(
*mut core::ffi::c_void,
u64,
D3D11_FENCE_FLAG,
*const windows_core::GUID,
*mut *mut core::ffi::c_void,
) -> windows_core::HRESULT,
}
#[cfg(all(
feature = "Win32_Graphics_Direct3D",
feature = "Win32_Graphics_Dxgi_Common"
))]
pub trait ID3D11Device5_Impl: ID3D11Device4_Impl {
fn OpenSharedFence(
&self,
hfence: crate::Foundation::HANDLE,
returnedinterface: *const windows_core::GUID,
ppfence: *mut *mut core::ffi::c_void,
) -> windows_core::Result<()>;
fn CreateFence(
&self,
initialvalue: u64,
flags: D3D11_FENCE_FLAG,
returnedinterface: *const windows_core::GUID,
ppfence: *mut *mut core::ffi::c_void,
) -> windows_core::Result<()>;
}
#[cfg(all(
feature = "Win32_Graphics_Direct3D",
feature = "Win32_Graphics_Dxgi_Common"
))]
impl ID3D11Device5_Vtbl {
pub const fn new<Identity: ID3D11Device5_Impl, const OFFSET: isize>() -> Self {
unsafe extern "system" fn OpenSharedFence<
Identity: ID3D11Device5_Impl,
const OFFSET: isize,
>(
this: *mut core::ffi::c_void,
hfence: crate::Foundation::HANDLE,
returnedinterface: *const windows_core::GUID,
ppfence: *mut *mut core::ffi::c_void,
) -> windows_core::HRESULT {
unsafe {
let this: &Identity =
&*((this as *const *const ()).offset(OFFSET) as *const Identity);
ID3D11Device5_Impl::OpenSharedFence(
this,
core::mem::transmute_copy(&hfence),
core::mem::transmute_copy(&returnedinterface),
core::mem::transmute_copy(&ppfence),
)
.into()
}
}
unsafe extern "system" fn CreateFence<Identity: ID3D11Device5_Impl, const OFFSET: isize>(
this: *mut core::ffi::c_void,
initialvalue: u64,
flags: D3D11_FENCE_FLAG,
returnedinterface: *const windows_core::GUID,
ppfence: *mut *mut core::ffi::c_void,
) -> windows_core::HRESULT {
unsafe {
let this: &Identity =
&*((this as *const *const ()).offset(OFFSET) as *const Identity);
ID3D11Device5_Impl::CreateFence(
this,
core::mem::transmute_copy(&initialvalue),
core::mem::transmute_copy(&flags),
core::mem::transmute_copy(&returnedinterface),
core::mem::transmute_copy(&ppfence),
)
.into()
}
}
Self {
base__: ID3D11Device4_Vtbl::new::<Identity, OFFSET>(),
OpenSharedFence: OpenSharedFence::<Identity, OFFSET>,
CreateFence: CreateFence::<Identity, OFFSET>,
}
}
pub fn matches(iid: &windows_core::GUID) -> bool {
iid == &<ID3D11Device5 as windows_core::Interface>::IID
|| iid == &<ID3D11Device as windows_core::Interface>::IID
|| iid == &<ID3D11Device1 as windows_core::Interface>::IID
|| iid == &<ID3D11Device2 as windows_core::Interface>::IID
|| iid == &<ID3D11Device3 as windows_core::Interface>::IID
|| iid == &<ID3D11Device4 as windows_core::Interface>::IID
}
}
#[cfg(all(
feature = "Win32_Graphics_Direct3D",
feature = "Win32_Graphics_Dxgi_Common"
))]
impl windows_core::RuntimeName for ID3D11Device5 {}
#[cfg(all(
feature = "Win32_Graphics_Direct3D",
feature = "Win32_Graphics_Dxgi_Common"
))]
unsafe impl Send for ID3D11Device5 {}
#[cfg(all(
feature = "Win32_Graphics_Direct3D",
feature = "Win32_Graphics_Dxgi_Common"
))]
unsafe impl Sync for ID3D11Device5 {}
windows_core::imp::define_interface!(
ID3D11DeviceChild,
ID3D11DeviceChild_Vtbl,
0x1841e5c8_16b0_489b_bcc8_44cfb0d5deae
);
windows_core::imp::interface_hierarchy!(ID3D11DeviceChild, windows_core::IUnknown);
impl ID3D11DeviceChild {
pub unsafe fn GetDevice(&self) -> windows_core::Result<ID3D11Device> {
unsafe {
let mut result__ = core::mem::zeroed();
(windows_core::Interface::vtable(self).GetDevice)(
windows_core::Interface::as_raw(self),
&mut result__,
);
windows_core::Type::from_abi(result__)
}
}
pub unsafe fn GetPrivateData(
&self,
guid: *const windows_core::GUID,
pdatasize: *mut u32,
pdata: Option<*mut core::ffi::c_void>,
) -> windows_core::Result<()> {
unsafe {
(windows_core::Interface::vtable(self).GetPrivateData)(
windows_core::Interface::as_raw(self),
guid,
core::mem::transmute(pdatasize),
core::mem::transmute(pdata.unwrap_or(core::mem::zeroed())),
)
.ok()
}
}
pub unsafe fn SetPrivateData(
&self,
guid: *const windows_core::GUID,
datasize: u32,
pdata: Option<*const core::ffi::c_void>,
) -> windows_core::Result<()> {
unsafe {
(windows_core::Interface::vtable(self).SetPrivateData)(
windows_core::Interface::as_raw(self),
guid,
datasize,
core::mem::transmute(pdata.unwrap_or(core::mem::zeroed())),
)
.ok()
}
}
pub unsafe fn SetPrivateDataInterface<P1>(
&self,
guid: *const windows_core::GUID,
pdata: P1,
) -> windows_core::Result<()>
where
P1: windows_core::Param<windows_core::IUnknown>,
{
unsafe {
(windows_core::Interface::vtable(self).SetPrivateDataInterface)(
windows_core::Interface::as_raw(self),
guid,
pdata.param().abi(),
)
.ok()
}
}
}
#[repr(C)]
pub struct ID3D11DeviceChild_Vtbl {
pub base__: windows_core::IUnknown_Vtbl,
pub GetDevice: unsafe extern "system" fn(*mut core::ffi::c_void, *mut *mut core::ffi::c_void),
pub GetPrivateData: unsafe extern "system" fn(
*mut core::ffi::c_void,
*const windows_core::GUID,
*mut u32,
*mut core::ffi::c_void,
) -> windows_core::HRESULT,
pub SetPrivateData: unsafe extern "system" fn(
*mut core::ffi::c_void,
*const windows_core::GUID,
u32,
*const core::ffi::c_void,
) -> windows_core::HRESULT,
pub SetPrivateDataInterface: unsafe extern "system" fn(
*mut core::ffi::c_void,
*const windows_core::GUID,
*mut core::ffi::c_void,
) -> windows_core::HRESULT,
}
pub trait ID3D11DeviceChild_Impl: windows_core::IUnknownImpl {
fn GetDevice(&self, ppdevice: windows_core::OutRef<'_, ID3D11Device>);
fn GetPrivateData(
&self,
guid: *const windows_core::GUID,
pdatasize: *mut u32,
pdata: *mut core::ffi::c_void,
) -> windows_core::Result<()>;
fn SetPrivateData(
&self,
guid: *const windows_core::GUID,
datasize: u32,
pdata: *const core::ffi::c_void,
) -> windows_core::Result<()>;
fn SetPrivateDataInterface(
&self,
guid: *const windows_core::GUID,
pdata: windows_core::Ref<'_, windows_core::IUnknown>,
) -> windows_core::Result<()>;
}
impl ID3D11DeviceChild_Vtbl {
pub const fn new<Identity: ID3D11DeviceChild_Impl, const OFFSET: isize>() -> Self {
unsafe extern "system" fn GetDevice<
Identity: ID3D11DeviceChild_Impl,
const OFFSET: isize,
>(
this: *mut core::ffi::c_void,
ppdevice: *mut *mut core::ffi::c_void,
) {
unsafe {
let this: &Identity =
&*((this as *const *const ()).offset(OFFSET) as *const Identity);
ID3D11DeviceChild_Impl::GetDevice(this, core::mem::transmute_copy(&ppdevice))
}
}
unsafe extern "system" fn GetPrivateData<
Identity: ID3D11DeviceChild_Impl,
const OFFSET: isize,
>(
this: *mut core::ffi::c_void,
guid: *const windows_core::GUID,
pdatasize: *mut u32,
pdata: *mut core::ffi::c_void,
) -> windows_core::HRESULT {
unsafe {
let this: &Identity =
&*((this as *const *const ()).offset(OFFSET) as *const Identity);
ID3D11DeviceChild_Impl::GetPrivateData(
this,
core::mem::transmute_copy(&guid),
core::mem::transmute_copy(&pdatasize),
core::mem::transmute_copy(&pdata),
)
.into()
}
}
unsafe extern "system" fn SetPrivateData<
Identity: ID3D11DeviceChild_Impl,
const OFFSET: isize,
>(
this: *mut core::ffi::c_void,
guid: *const windows_core::GUID,
datasize: u32,
pdata: *const core::ffi::c_void,
) -> windows_core::HRESULT {
unsafe {
let this: &Identity =
&*((this as *const *const ()).offset(OFFSET) as *const Identity);
ID3D11DeviceChild_Impl::SetPrivateData(
this,
core::mem::transmute_copy(&guid),
core::mem::transmute_copy(&datasize),
core::mem::transmute_copy(&pdata),
)
.into()
}
}
unsafe extern "system" fn SetPrivateDataInterface<
Identity: ID3D11DeviceChild_Impl,
const OFFSET: isize,
>(
this: *mut core::ffi::c_void,
guid: *const windows_core::GUID,
pdata: *mut core::ffi::c_void,
) -> windows_core::HRESULT {
unsafe {
let this: &Identity =
&*((this as *const *const ()).offset(OFFSET) as *const Identity);
ID3D11DeviceChild_Impl::SetPrivateDataInterface(
this,
core::mem::transmute_copy(&guid),
core::mem::transmute_copy(&pdata),
)
.into()
}
}
Self {
base__: windows_core::IUnknown_Vtbl::new::<Identity, OFFSET>(),
GetDevice: GetDevice::<Identity, OFFSET>,
GetPrivateData: GetPrivateData::<Identity, OFFSET>,
SetPrivateData: SetPrivateData::<Identity, OFFSET>,
SetPrivateDataInterface: SetPrivateDataInterface::<Identity, OFFSET>,
}
}
pub fn matches(iid: &windows_core::GUID) -> bool {
iid == &<ID3D11DeviceChild as windows_core::Interface>::IID
}
}
impl windows_core::RuntimeName for ID3D11DeviceChild {}
unsafe impl Send for ID3D11DeviceChild {}
unsafe impl Sync for ID3D11DeviceChild {}
windows_core::imp::define_interface!(
ID3D11DeviceContext,
ID3D11DeviceContext_Vtbl,
0xc0bfa96c_e089_44fb_8eaf_26f8796190da
);
impl core::ops::Deref for ID3D11DeviceContext {
type Target = ID3D11DeviceChild;
fn deref(&self) -> &Self::Target {
unsafe { core::mem::transmute(self) }
}
}
windows_core::imp::interface_hierarchy!(
ID3D11DeviceContext,
windows_core::IUnknown,
ID3D11DeviceChild
);
impl ID3D11DeviceContext {
pub unsafe fn VSSetConstantBuffers(
&self,
startslot: u32,
ppconstantbuffers: Option<&[Option<ID3D11Buffer>]>,
) {
unsafe {
(windows_core::Interface::vtable(self).VSSetConstantBuffers)(
windows_core::Interface::as_raw(self),
startslot,
ppconstantbuffers
.map_or(0, |slice| slice.len().try_into().unwrap()),
core::mem::transmute(
ppconstantbuffers
.map_or(core::ptr::null(), |slice| slice.as_ptr()),
),
)
}
}
pub unsafe fn PSSetShaderResources(
&self,
startslot: u32,
ppshaderresourceviews: Option<&[Option<ID3D11ShaderResourceView>]>,
) {
unsafe {
(windows_core::Interface::vtable(self).PSSetShaderResources)(
windows_core::Interface::as_raw(self),
startslot,
ppshaderresourceviews
.map_or(0, |slice| slice.len().try_into().unwrap()),
core::mem::transmute(
ppshaderresourceviews
.map_or(core::ptr::null(), |slice| slice.as_ptr()),
),
)
}
}
pub unsafe fn PSSetShader<P0>(
&self,
ppixelshader: P0,
ppclassinstances: Option<&[Option<ID3D11ClassInstance>]>,
) where
P0: windows_core::Param<ID3D11PixelShader>,
{
unsafe {
(windows_core::Interface::vtable(self).PSSetShader)(
windows_core::Interface::as_raw(self),
ppixelshader.param().abi(),
core::mem::transmute(
ppclassinstances
.map_or(core::ptr::null(), |slice| slice.as_ptr()),
),
ppclassinstances
.map_or(0, |slice| slice.len().try_into().unwrap()),
)
}
}
pub unsafe fn PSSetSamplers(
&self,
startslot: u32,
ppsamplers: Option<&[Option<ID3D11SamplerState>]>,
) {
unsafe {
(windows_core::Interface::vtable(self).PSSetSamplers)(
windows_core::Interface::as_raw(self),
startslot,
ppsamplers
.map_or(0, |slice| slice.len().try_into().unwrap()),
core::mem::transmute(
ppsamplers
.map_or(core::ptr::null(), |slice| slice.as_ptr()),
),
)
}
}
pub unsafe fn VSSetShader<P0>(
&self,
pvertexshader: P0,
ppclassinstances: Option<&[Option<ID3D11ClassInstance>]>,
) where
P0: windows_core::Param<ID3D11VertexShader>,
{
unsafe {
(windows_core::Interface::vtable(self).VSSetShader)(
windows_core::Interface::as_raw(self),
pvertexshader.param().abi(),
core::mem::transmute(
ppclassinstances
.map_or(core::ptr::null(), |slice| slice.as_ptr()),
),
ppclassinstances
.map_or(0, |slice| slice.len().try_into().unwrap()),
)
}
}
pub unsafe fn DrawIndexed(
&self,
indexcount: u32,
startindexlocation: u32,
basevertexlocation: i32,
) {
unsafe {
(windows_core::Interface::vtable(self).DrawIndexed)(
windows_core::Interface::as_raw(self),
indexcount,
startindexlocation,
basevertexlocation,
)
}
}
pub unsafe fn Draw(&self, vertexcount: u32, startvertexlocation: u32) {
unsafe {
(windows_core::Interface::vtable(self).Draw)(
windows_core::Interface::as_raw(self),
vertexcount,
startvertexlocation,
)
}
}
pub unsafe fn Map<P0>(
&self,
presource: P0,
subresource: u32,
maptype: D3D11_MAP,
mapflags: u32,
pmappedresource: Option<*mut D3D11_MAPPED_SUBRESOURCE>,
) -> windows_core::Result<()>
where
P0: windows_core::Param<ID3D11Resource>,
{
unsafe {
(windows_core::Interface::vtable(self).Map)(
windows_core::Interface::as_raw(self),
presource.param().abi(),
subresource,
maptype,
mapflags,
core::mem::transmute(pmappedresource.unwrap_or(core::mem::zeroed())),
)
.ok()
}
}
pub unsafe fn Unmap<P0>(&self, presource: P0, subresource: u32)
where
P0: windows_core::Param<ID3D11Resource>,
{
unsafe {
(windows_core::Interface::vtable(self).Unmap)(
windows_core::Interface::as_raw(self),
presource.param().abi(),
subresource,
)
}
}
pub unsafe fn PSSetConstantBuffers(
&self,
startslot: u32,
ppconstantbuffers: Option<&[Option<ID3D11Buffer>]>,
) {
unsafe {
(windows_core::Interface::vtable(self).PSSetConstantBuffers)(
windows_core::Interface::as_raw(self),
startslot,
ppconstantbuffers
.map_or(0, |slice| slice.len().try_into().unwrap()),
core::mem::transmute(
ppconstantbuffers
.map_or(core::ptr::null(), |slice| slice.as_ptr()),
),
)
}
}
pub unsafe fn IASetInputLayout<P0>(&self, pinputlayout: P0)
where
P0: windows_core::Param<ID3D11InputLayout>,
{
unsafe {
(windows_core::Interface::vtable(self).IASetInputLayout)(
windows_core::Interface::as_raw(self),
pinputlayout.param().abi(),
)
}
}
pub unsafe fn IASetVertexBuffers(
&self,
startslot: u32,
numbuffers: u32,
ppvertexbuffers: Option<*const Option<ID3D11Buffer>>,
pstrides: Option<*const u32>,
poffsets: Option<*const u32>,
) {
unsafe {
(windows_core::Interface::vtable(self).IASetVertexBuffers)(
windows_core::Interface::as_raw(self),
startslot,
numbuffers,
core::mem::transmute(ppvertexbuffers.unwrap_or(core::mem::zeroed())),
core::mem::transmute(pstrides.unwrap_or(core::mem::zeroed())),
core::mem::transmute(poffsets.unwrap_or(core::mem::zeroed())),
)
}
}
#[cfg(feature = "Win32_Graphics_Dxgi_Common")]
pub unsafe fn IASetIndexBuffer<P0>(
&self,
pindexbuffer: P0,
format: crate::Dxgi::Common::DXGI_FORMAT,
offset: u32,
) where
P0: windows_core::Param<ID3D11Buffer>,
{
unsafe {
(windows_core::Interface::vtable(self).IASetIndexBuffer)(
windows_core::Interface::as_raw(self),
pindexbuffer.param().abi(),
format,
offset,
)
}
}
pub unsafe fn DrawIndexedInstanced(
&self,
indexcountperinstance: u32,
instancecount: u32,
startindexlocation: u32,
basevertexlocation: i32,
startinstancelocation: u32,
) {
unsafe {
(windows_core::Interface::vtable(self).DrawIndexedInstanced)(
windows_core::Interface::as_raw(self),
indexcountperinstance,
instancecount,
startindexlocation,
basevertexlocation,
startinstancelocation,
)
}
}
pub unsafe fn DrawInstanced(
&self,
vertexcountperinstance: u32,
instancecount: u32,
startvertexlocation: u32,
startinstancelocation: u32,
) {
unsafe {
(windows_core::Interface::vtable(self).DrawInstanced)(
windows_core::Interface::as_raw(self),
vertexcountperinstance,
instancecount,
startvertexlocation,
startinstancelocation,
)
}
}
pub unsafe fn GSSetConstantBuffers(
&self,
startslot: u32,
ppconstantbuffers: Option<&[Option<ID3D11Buffer>]>,
) {
unsafe {
(windows_core::Interface::vtable(self).GSSetConstantBuffers)(
windows_core::Interface::as_raw(self),
startslot,
ppconstantbuffers
.map_or(0, |slice| slice.len().try_into().unwrap()),
core::mem::transmute(
ppconstantbuffers
.map_or(core::ptr::null(), |slice| slice.as_ptr()),
),
)
}
}
pub unsafe fn GSSetShader<P0>(
&self,
pshader: P0,
ppclassinstances: Option<&[Option<ID3D11ClassInstance>]>,
) where
P0: windows_core::Param<ID3D11GeometryShader>,
{
unsafe {
(windows_core::Interface::vtable(self).GSSetShader)(
windows_core::Interface::as_raw(self),
pshader.param().abi(),
core::mem::transmute(
ppclassinstances
.map_or(core::ptr::null(), |slice| slice.as_ptr()),
),
ppclassinstances
.map_or(0, |slice| slice.len().try_into().unwrap()),
)
}
}
#[cfg(feature = "Win32_Graphics_Direct3D")]
pub unsafe fn IASetPrimitiveTopology(&self, topology: super::Direct3D::D3D_PRIMITIVE_TOPOLOGY) {
unsafe {
(windows_core::Interface::vtable(self).IASetPrimitiveTopology)(
windows_core::Interface::as_raw(self),
topology,
)
}
}
pub unsafe fn VSSetShaderResources(
&self,
startslot: u32,
ppshaderresourceviews: Option<&[Option<ID3D11ShaderResourceView>]>,
) {
unsafe {
(windows_core::Interface::vtable(self).VSSetShaderResources)(
windows_core::Interface::as_raw(self),
startslot,
ppshaderresourceviews
.map_or(0, |slice| slice.len().try_into().unwrap()),
core::mem::transmute(
ppshaderresourceviews
.map_or(core::ptr::null(), |slice| slice.as_ptr()),
),
)
}
}
pub unsafe fn VSSetSamplers(
&self,
startslot: u32,
ppsamplers: Option<&[Option<ID3D11SamplerState>]>,
) {
unsafe {
(windows_core::Interface::vtable(self).VSSetSamplers)(
windows_core::Interface::as_raw(self),
startslot,
ppsamplers
.map_or(0, |slice| slice.len().try_into().unwrap()),
core::mem::transmute(
ppsamplers
.map_or(core::ptr::null(), |slice| slice.as_ptr()),
),
)
}
}
pub unsafe fn Begin<P0>(&self, pasync: P0)
where
P0: windows_core::Param<ID3D11Asynchronous>,
{
unsafe {
(windows_core::Interface::vtable(self).Begin)(
windows_core::Interface::as_raw(self),
pasync.param().abi(),
)
}
}
pub unsafe fn End<P0>(&self, pasync: P0)
where
P0: windows_core::Param<ID3D11Asynchronous>,
{
unsafe {
(windows_core::Interface::vtable(self).End)(
windows_core::Interface::as_raw(self),
pasync.param().abi(),
)
}
}
pub unsafe fn GetData<P0>(
&self,
pasync: P0,
pdata: Option<*mut core::ffi::c_void>,
datasize: u32,
getdataflags: u32,
) -> windows_core::Result<()>
where
P0: windows_core::Param<ID3D11Asynchronous>,
{
unsafe {
(windows_core::Interface::vtable(self).GetData)(
windows_core::Interface::as_raw(self),
pasync.param().abi(),
core::mem::transmute(pdata.unwrap_or(core::mem::zeroed())),
datasize,
getdataflags,
)
.ok()
}
}
pub unsafe fn SetPredication<P0>(&self, ppredicate: P0, predicatevalue: bool)
where
P0: windows_core::Param<ID3D11Predicate>,
{
unsafe {
(windows_core::Interface::vtable(self).SetPredication)(
windows_core::Interface::as_raw(self),
ppredicate.param().abi(),
predicatevalue.into(),
)
}
}
pub unsafe fn GSSetShaderResources(
&self,
startslot: u32,
ppshaderresourceviews: Option<&[Option<ID3D11ShaderResourceView>]>,
) {
unsafe {
(windows_core::Interface::vtable(self).GSSetShaderResources)(
windows_core::Interface::as_raw(self),
startslot,
ppshaderresourceviews
.map_or(0, |slice| slice.len().try_into().unwrap()),
core::mem::transmute(
ppshaderresourceviews
.map_or(core::ptr::null(), |slice| slice.as_ptr()),
),
)
}
}
pub unsafe fn GSSetSamplers(
&self,
startslot: u32,
ppsamplers: Option<&[Option<ID3D11SamplerState>]>,
) {
unsafe {
(windows_core::Interface::vtable(self).GSSetSamplers)(
windows_core::Interface::as_raw(self),
startslot,
ppsamplers
.map_or(0, |slice| slice.len().try_into().unwrap()),
core::mem::transmute(
ppsamplers
.map_or(core::ptr::null(), |slice| slice.as_ptr()),
),
)
}
}
pub unsafe fn OMSetRenderTargets<P2>(
&self,
pprendertargetviews: Option<&[Option<ID3D11RenderTargetView>]>,
pdepthstencilview: P2,
) where
P2: windows_core::Param<ID3D11DepthStencilView>,
{
unsafe {
(windows_core::Interface::vtable(self).OMSetRenderTargets)(
windows_core::Interface::as_raw(self),
pprendertargetviews
.map_or(0, |slice| slice.len().try_into().unwrap()),
core::mem::transmute(
pprendertargetviews
.map_or(core::ptr::null(), |slice| slice.as_ptr()),
),
pdepthstencilview.param().abi(),
)
}
}
pub unsafe fn OMSetRenderTargetsAndUnorderedAccessViews<P2>(
&self,
pprendertargetviews: Option<&[Option<ID3D11RenderTargetView>]>,
pdepthstencilview: P2,
uavstartslot: u32,
numuavs: u32,
ppunorderedaccessviews: Option<*const Option<ID3D11UnorderedAccessView>>,
puavinitialcounts: Option<*const u32>,
) where
P2: windows_core::Param<ID3D11DepthStencilView>,
{
unsafe {
(windows_core::Interface::vtable(self).OMSetRenderTargetsAndUnorderedAccessViews)(
windows_core::Interface::as_raw(self),
pprendertargetviews
.map_or(0, |slice| slice.len().try_into().unwrap()),
core::mem::transmute(
pprendertargetviews
.map_or(core::ptr::null(), |slice| slice.as_ptr()),
),
pdepthstencilview.param().abi(),
uavstartslot,
numuavs,
core::mem::transmute(ppunorderedaccessviews.unwrap_or(core::mem::zeroed())),
core::mem::transmute(puavinitialcounts.unwrap_or(core::mem::zeroed())),
)
}
}
pub unsafe fn OMSetBlendState<P0>(
&self,
pblendstate: P0,
blendfactor: Option<&[f32; 4]>,
samplemask: u32,
) where
P0: windows_core::Param<ID3D11BlendState>,
{
unsafe {
(windows_core::Interface::vtable(self).OMSetBlendState)(
windows_core::Interface::as_raw(self),
pblendstate.param().abi(),
core::mem::transmute(
blendfactor
.map_or(core::ptr::null(), |slice| slice.as_ptr()),
),
samplemask,
)
}
}
pub unsafe fn OMSetDepthStencilState<P0>(&self, pdepthstencilstate: P0, stencilref: u32)
where
P0: windows_core::Param<ID3D11DepthStencilState>,
{
unsafe {
(windows_core::Interface::vtable(self).OMSetDepthStencilState)(
windows_core::Interface::as_raw(self),
pdepthstencilstate.param().abi(),
stencilref,
)
}
}
pub unsafe fn SOSetTargets(
&self,
numbuffers: u32,
ppsotargets: Option<*const Option<ID3D11Buffer>>,
poffsets: Option<*const u32>,
) {
unsafe {
(windows_core::Interface::vtable(self).SOSetTargets)(
windows_core::Interface::as_raw(self),
numbuffers,
core::mem::transmute(ppsotargets.unwrap_or(core::mem::zeroed())),
core::mem::transmute(poffsets.unwrap_or(core::mem::zeroed())),
)
}
}
pub unsafe fn DrawAuto(&self) {
unsafe {
(windows_core::Interface::vtable(self).DrawAuto)(windows_core::Interface::as_raw(self))
}
}
pub unsafe fn DrawIndexedInstancedIndirect<P0>(
&self,
pbufferforargs: P0,
alignedbyteoffsetforargs: u32,
) where
P0: windows_core::Param<ID3D11Buffer>,
{
unsafe {
(windows_core::Interface::vtable(self).DrawIndexedInstancedIndirect)(
windows_core::Interface::as_raw(self),
pbufferforargs.param().abi(),
alignedbyteoffsetforargs,
)
}
}
pub unsafe fn DrawInstancedIndirect<P0>(
&self,
pbufferforargs: P0,
alignedbyteoffsetforargs: u32,
) where
P0: windows_core::Param<ID3D11Buffer>,
{
unsafe {
(windows_core::Interface::vtable(self).DrawInstancedIndirect)(
windows_core::Interface::as_raw(self),
pbufferforargs.param().abi(),
alignedbyteoffsetforargs,
)
}
}
pub unsafe fn Dispatch(
&self,
threadgroupcountx: u32,
threadgroupcounty: u32,
threadgroupcountz: u32,
) {
unsafe {
(windows_core::Interface::vtable(self).Dispatch)(
windows_core::Interface::as_raw(self),
threadgroupcountx,
threadgroupcounty,
threadgroupcountz,
)
}
}
pub unsafe fn DispatchIndirect<P0>(&self, pbufferforargs: P0, alignedbyteoffsetforargs: u32)
where
P0: windows_core::Param<ID3D11Buffer>,
{
unsafe {
(windows_core::Interface::vtable(self).DispatchIndirect)(
windows_core::Interface::as_raw(self),
pbufferforargs.param().abi(),
alignedbyteoffsetforargs,
)
}
}
pub unsafe fn RSSetState<P0>(&self, prasterizerstate: P0)
where
P0: windows_core::Param<ID3D11RasterizerState>,
{
unsafe {
(windows_core::Interface::vtable(self).RSSetState)(
windows_core::Interface::as_raw(self),
prasterizerstate.param().abi(),
)
}
}
pub unsafe fn RSSetViewports(&self, pviewports: Option<&[D3D11_VIEWPORT]>) {
unsafe {
(windows_core::Interface::vtable(self).RSSetViewports)(
windows_core::Interface::as_raw(self),
pviewports
.map_or(0, |slice| slice.len().try_into().unwrap()),
core::mem::transmute(
pviewports
.map_or(core::ptr::null(), |slice| slice.as_ptr()),
),
)
}
}
pub unsafe fn RSSetScissorRects(&self, prects: Option<&[crate::Foundation::RECT]>) {
unsafe {
(windows_core::Interface::vtable(self).RSSetScissorRects)(
windows_core::Interface::as_raw(self),
prects
.map_or(0, |slice| slice.len().try_into().unwrap()),
core::mem::transmute(
prects
.map_or(core::ptr::null(), |slice| slice.as_ptr()),
),
)
}
}
pub unsafe fn CopySubresourceRegion<P0, P5>(
&self,
pdstresource: P0,
dstsubresource: u32,
dstx: u32,
dsty: u32,
dstz: u32,
psrcresource: P5,
srcsubresource: u32,
psrcbox: Option<*const D3D11_BOX>,
) where
P0: windows_core::Param<ID3D11Resource>,
P5: windows_core::Param<ID3D11Resource>,
{
unsafe {
(windows_core::Interface::vtable(self).CopySubresourceRegion)(
windows_core::Interface::as_raw(self),
pdstresource.param().abi(),
dstsubresource,
dstx,
dsty,
dstz,
psrcresource.param().abi(),
srcsubresource,
core::mem::transmute(psrcbox.unwrap_or(core::mem::zeroed())),
)
}
}
pub unsafe fn CopyResource<P0, P1>(&self, pdstresource: P0, psrcresource: P1)
where
P0: windows_core::Param<ID3D11Resource>,
P1: windows_core::Param<ID3D11Resource>,
{
unsafe {
(windows_core::Interface::vtable(self).CopyResource)(
windows_core::Interface::as_raw(self),
pdstresource.param().abi(),
psrcresource.param().abi(),
)
}
}
pub unsafe fn UpdateSubresource<P0>(
&self,
pdstresource: P0,
dstsubresource: u32,
pdstbox: Option<*const D3D11_BOX>,
psrcdata: *const core::ffi::c_void,
srcrowpitch: u32,
srcdepthpitch: u32,
) where
P0: windows_core::Param<ID3D11Resource>,
{
unsafe {
(windows_core::Interface::vtable(self).UpdateSubresource)(
windows_core::Interface::as_raw(self),
pdstresource.param().abi(),
dstsubresource,
core::mem::transmute(pdstbox.unwrap_or(core::mem::zeroed())),
psrcdata,
srcrowpitch,
srcdepthpitch,
)
}
}
pub unsafe fn CopyStructureCount<P0, P2>(
&self,
pdstbuffer: P0,
dstalignedbyteoffset: u32,
psrcview: P2,
) where
P0: windows_core::Param<ID3D11Buffer>,
P2: windows_core::Param<ID3D11UnorderedAccessView>,
{
unsafe {
(windows_core::Interface::vtable(self).CopyStructureCount)(
windows_core::Interface::as_raw(self),
pdstbuffer.param().abi(),
dstalignedbyteoffset,
psrcview.param().abi(),
)
}
}
pub unsafe fn ClearRenderTargetView<P0>(&self, prendertargetview: P0, colorrgba: &[f32; 4])
where
P0: windows_core::Param<ID3D11RenderTargetView>,
{
unsafe {
(windows_core::Interface::vtable(self).ClearRenderTargetView)(
windows_core::Interface::as_raw(self),
prendertargetview.param().abi(),
core::mem::transmute(colorrgba.as_ptr()),
)
}
}
pub unsafe fn ClearUnorderedAccessViewUint<P0>(
&self,
punorderedaccessview: P0,
values: &[u32; 4],
) where
P0: windows_core::Param<ID3D11UnorderedAccessView>,
{
unsafe {
(windows_core::Interface::vtable(self).ClearUnorderedAccessViewUint)(
windows_core::Interface::as_raw(self),
punorderedaccessview.param().abi(),
core::mem::transmute(values.as_ptr()),
)
}
}
pub unsafe fn ClearUnorderedAccessViewFloat<P0>(
&self,
punorderedaccessview: P0,
values: &[f32; 4],
) where
P0: windows_core::Param<ID3D11UnorderedAccessView>,
{
unsafe {
(windows_core::Interface::vtable(self).ClearUnorderedAccessViewFloat)(
windows_core::Interface::as_raw(self),
punorderedaccessview.param().abi(),
core::mem::transmute(values.as_ptr()),
)
}
}
pub unsafe fn ClearDepthStencilView<P0>(
&self,
pdepthstencilview: P0,
clearflags: u32,
depth: f32,
stencil: u8,
) where
P0: windows_core::Param<ID3D11DepthStencilView>,
{
unsafe {
(windows_core::Interface::vtable(self).ClearDepthStencilView)(
windows_core::Interface::as_raw(self),
pdepthstencilview.param().abi(),
clearflags,
depth,
stencil,
)
}
}
pub unsafe fn GenerateMips<P0>(&self, pshaderresourceview: P0)
where
P0: windows_core::Param<ID3D11ShaderResourceView>,
{
unsafe {
(windows_core::Interface::vtable(self).GenerateMips)(
windows_core::Interface::as_raw(self),
pshaderresourceview.param().abi(),
)
}
}
pub unsafe fn SetResourceMinLOD<P0>(&self, presource: P0, minlod: f32)
where
P0: windows_core::Param<ID3D11Resource>,
{
unsafe {
(windows_core::Interface::vtable(self).SetResourceMinLOD)(
windows_core::Interface::as_raw(self),
presource.param().abi(),
minlod,
)
}
}
pub unsafe fn GetResourceMinLOD<P0>(&self, presource: P0) -> f32
where
P0: windows_core::Param<ID3D11Resource>,
{
unsafe {
(windows_core::Interface::vtable(self).GetResourceMinLOD)(
windows_core::Interface::as_raw(self),
presource.param().abi(),
)
}
}
#[cfg(feature = "Win32_Graphics_Dxgi_Common")]
pub unsafe fn ResolveSubresource<P0, P2>(
&self,
pdstresource: P0,
dstsubresource: u32,
psrcresource: P2,
srcsubresource: u32,
format: crate::Dxgi::Common::DXGI_FORMAT,
) where
P0: windows_core::Param<ID3D11Resource>,
P2: windows_core::Param<ID3D11Resource>,
{
unsafe {
(windows_core::Interface::vtable(self).ResolveSubresource)(
windows_core::Interface::as_raw(self),
pdstresource.param().abi(),
dstsubresource,
psrcresource.param().abi(),
srcsubresource,
format,
)
}
}
pub unsafe fn ExecuteCommandList<P0>(&self, pcommandlist: P0, restorecontextstate: bool)
where
P0: windows_core::Param<ID3D11CommandList>,
{
unsafe {
(windows_core::Interface::vtable(self).ExecuteCommandList)(
windows_core::Interface::as_raw(self),
pcommandlist.param().abi(),
restorecontextstate.into(),
)
}
}
pub unsafe fn HSSetShaderResources(
&self,
startslot: u32,
ppshaderresourceviews: Option<&[Option<ID3D11ShaderResourceView>]>,
) {
unsafe {
(windows_core::Interface::vtable(self).HSSetShaderResources)(
windows_core::Interface::as_raw(self),
startslot,
ppshaderresourceviews
.map_or(0, |slice| slice.len().try_into().unwrap()),
core::mem::transmute(
ppshaderresourceviews
.map_or(core::ptr::null(), |slice| slice.as_ptr()),
),
)
}
}
pub unsafe fn HSSetShader<P0>(
&self,
phullshader: P0,
ppclassinstances: Option<&[Option<ID3D11ClassInstance>]>,
) where
P0: windows_core::Param<ID3D11HullShader>,
{
unsafe {
(windows_core::Interface::vtable(self).HSSetShader)(
windows_core::Interface::as_raw(self),
phullshader.param().abi(),
core::mem::transmute(
ppclassinstances
.map_or(core::ptr::null(), |slice| slice.as_ptr()),
),
ppclassinstances
.map_or(0, |slice| slice.len().try_into().unwrap()),
)
}
}
pub unsafe fn HSSetSamplers(
&self,
startslot: u32,
ppsamplers: Option<&[Option<ID3D11SamplerState>]>,
) {
unsafe {
(windows_core::Interface::vtable(self).HSSetSamplers)(
windows_core::Interface::as_raw(self),
startslot,
ppsamplers
.map_or(0, |slice| slice.len().try_into().unwrap()),
core::mem::transmute(
ppsamplers
.map_or(core::ptr::null(), |slice| slice.as_ptr()),
),
)
}
}
pub unsafe fn HSSetConstantBuffers(
&self,
startslot: u32,
ppconstantbuffers: Option<&[Option<ID3D11Buffer>]>,
) {
unsafe {
(windows_core::Interface::vtable(self).HSSetConstantBuffers)(
windows_core::Interface::as_raw(self),
startslot,
ppconstantbuffers
.map_or(0, |slice| slice.len().try_into().unwrap()),
core::mem::transmute(
ppconstantbuffers
.map_or(core::ptr::null(), |slice| slice.as_ptr()),
),
)
}
}
pub unsafe fn DSSetShaderResources(
&self,
startslot: u32,
ppshaderresourceviews: Option<&[Option<ID3D11ShaderResourceView>]>,
) {
unsafe {
(windows_core::Interface::vtable(self).DSSetShaderResources)(
windows_core::Interface::as_raw(self),
startslot,
ppshaderresourceviews
.map_or(0, |slice| slice.len().try_into().unwrap()),
core::mem::transmute(
ppshaderresourceviews
.map_or(core::ptr::null(), |slice| slice.as_ptr()),
),
)
}
}
pub unsafe fn DSSetShader<P0>(
&self,
pdomainshader: P0,
ppclassinstances: Option<&[Option<ID3D11ClassInstance>]>,
) where
P0: windows_core::Param<ID3D11DomainShader>,
{
unsafe {
(windows_core::Interface::vtable(self).DSSetShader)(
windows_core::Interface::as_raw(self),
pdomainshader.param().abi(),
core::mem::transmute(
ppclassinstances
.map_or(core::ptr::null(), |slice| slice.as_ptr()),
),
ppclassinstances
.map_or(0, |slice| slice.len().try_into().unwrap()),
)
}
}
pub unsafe fn DSSetSamplers(
&self,
startslot: u32,
ppsamplers: Option<&[Option<ID3D11SamplerState>]>,
) {
unsafe {
(windows_core::Interface::vtable(self).DSSetSamplers)(
windows_core::Interface::as_raw(self),
startslot,
ppsamplers
.map_or(0, |slice| slice.len().try_into().unwrap()),
core::mem::transmute(
ppsamplers
.map_or(core::ptr::null(), |slice| slice.as_ptr()),
),
)
}
}
pub unsafe fn DSSetConstantBuffers(
&self,
startslot: u32,
ppconstantbuffers: Option<&[Option<ID3D11Buffer>]>,
) {
unsafe {
(windows_core::Interface::vtable(self).DSSetConstantBuffers)(
windows_core::Interface::as_raw(self),
startslot,
ppconstantbuffers
.map_or(0, |slice| slice.len().try_into().unwrap()),
core::mem::transmute(
ppconstantbuffers
.map_or(core::ptr::null(), |slice| slice.as_ptr()),
),
)
}
}
pub unsafe fn CSSetShaderResources(
&self,
startslot: u32,
ppshaderresourceviews: Option<&[Option<ID3D11ShaderResourceView>]>,
) {
unsafe {
(windows_core::Interface::vtable(self).CSSetShaderResources)(
windows_core::Interface::as_raw(self),
startslot,
ppshaderresourceviews
.map_or(0, |slice| slice.len().try_into().unwrap()),
core::mem::transmute(
ppshaderresourceviews
.map_or(core::ptr::null(), |slice| slice.as_ptr()),
),
)
}
}
pub unsafe fn CSSetUnorderedAccessViews(
&self,
startslot: u32,
numuavs: u32,
ppunorderedaccessviews: Option<*const Option<ID3D11UnorderedAccessView>>,
puavinitialcounts: Option<*const u32>,
) {
unsafe {
(windows_core::Interface::vtable(self).CSSetUnorderedAccessViews)(
windows_core::Interface::as_raw(self),
startslot,
numuavs,
core::mem::transmute(ppunorderedaccessviews.unwrap_or(core::mem::zeroed())),
core::mem::transmute(puavinitialcounts.unwrap_or(core::mem::zeroed())),
)
}
}
pub unsafe fn CSSetShader<P0>(
&self,
pcomputeshader: P0,
ppclassinstances: Option<&[Option<ID3D11ClassInstance>]>,
) where
P0: windows_core::Param<ID3D11ComputeShader>,
{
unsafe {
(windows_core::Interface::vtable(self).CSSetShader)(
windows_core::Interface::as_raw(self),
pcomputeshader.param().abi(),
core::mem::transmute(
ppclassinstances
.map_or(core::ptr::null(), |slice| slice.as_ptr()),
),
ppclassinstances
.map_or(0, |slice| slice.len().try_into().unwrap()),
)
}
}
pub unsafe fn CSSetSamplers(
&self,
startslot: u32,
ppsamplers: Option<&[Option<ID3D11SamplerState>]>,
) {
unsafe {
(windows_core::Interface::vtable(self).CSSetSamplers)(
windows_core::Interface::as_raw(self),
startslot,
ppsamplers
.map_or(0, |slice| slice.len().try_into().unwrap()),
core::mem::transmute(
ppsamplers
.map_or(core::ptr::null(), |slice| slice.as_ptr()),
),
)
}
}
pub unsafe fn CSSetConstantBuffers(
&self,
startslot: u32,
ppconstantbuffers: Option<&[Option<ID3D11Buffer>]>,
) {
unsafe {
(windows_core::Interface::vtable(self).CSSetConstantBuffers)(
windows_core::Interface::as_raw(self),
startslot,
ppconstantbuffers
.map_or(0, |slice| slice.len().try_into().unwrap()),
core::mem::transmute(
ppconstantbuffers
.map_or(core::ptr::null(), |slice| slice.as_ptr()),
),
)
}
}
pub unsafe fn VSGetConstantBuffers(
&self,
startslot: u32,
ppconstantbuffers: Option<&mut [Option<ID3D11Buffer>]>,
) {
unsafe {
(windows_core::Interface::vtable(self).VSGetConstantBuffers)(
windows_core::Interface::as_raw(self),
startslot,
ppconstantbuffers
.as_deref()
.map_or(0, |slice| slice.len().try_into().unwrap()),
core::mem::transmute(
ppconstantbuffers
.as_deref()
.map_or(core::ptr::null(), |slice| slice.as_ptr()),
),
)
}
}
pub unsafe fn PSGetShaderResources(
&self,
startslot: u32,
ppshaderresourceviews: Option<&mut [Option<ID3D11ShaderResourceView>]>,
) {
unsafe {
(windows_core::Interface::vtable(self).PSGetShaderResources)(
windows_core::Interface::as_raw(self),
startslot,
ppshaderresourceviews
.as_deref()
.map_or(0, |slice| slice.len().try_into().unwrap()),
core::mem::transmute(
ppshaderresourceviews
.as_deref()
.map_or(core::ptr::null(), |slice| slice.as_ptr()),
),
)
}
}
pub unsafe fn PSGetShader(
&self,
pppixelshader: *mut Option<ID3D11PixelShader>,
ppclassinstances: Option<*mut Option<ID3D11ClassInstance>>,
pnumclassinstances: Option<*mut u32>,
) {
unsafe {
(windows_core::Interface::vtable(self).PSGetShader)(
windows_core::Interface::as_raw(self),
core::mem::transmute(pppixelshader),
core::mem::transmute(ppclassinstances.unwrap_or(core::mem::zeroed())),
core::mem::transmute(pnumclassinstances.unwrap_or(core::mem::zeroed())),
)
}
}
pub unsafe fn PSGetSamplers(
&self,
startslot: u32,
ppsamplers: Option<&mut [Option<ID3D11SamplerState>]>,
) {
unsafe {
(windows_core::Interface::vtable(self).PSGetSamplers)(
windows_core::Interface::as_raw(self),
startslot,
ppsamplers
.as_deref()
.map_or(0, |slice| slice.len().try_into().unwrap()),
core::mem::transmute(
ppsamplers
.as_deref()
.map_or(core::ptr::null(), |slice| slice.as_ptr()),
),
)
}
}
pub unsafe fn VSGetShader(
&self,
ppvertexshader: *mut Option<ID3D11VertexShader>,
ppclassinstances: Option<*mut Option<ID3D11ClassInstance>>,
pnumclassinstances: Option<*mut u32>,
) {
unsafe {
(windows_core::Interface::vtable(self).VSGetShader)(
windows_core::Interface::as_raw(self),
core::mem::transmute(ppvertexshader),
core::mem::transmute(ppclassinstances.unwrap_or(core::mem::zeroed())),
core::mem::transmute(pnumclassinstances.unwrap_or(core::mem::zeroed())),
)
}
}
pub unsafe fn PSGetConstantBuffers(
&self,
startslot: u32,
ppconstantbuffers: Option<&mut [Option<ID3D11Buffer>]>,
) {
unsafe {
(windows_core::Interface::vtable(self).PSGetConstantBuffers)(
windows_core::Interface::as_raw(self),
startslot,
ppconstantbuffers
.as_deref()
.map_or(0, |slice| slice.len().try_into().unwrap()),
core::mem::transmute(
ppconstantbuffers
.as_deref()
.map_or(core::ptr::null(), |slice| slice.as_ptr()),
),
)
}
}
pub unsafe fn IAGetInputLayout(&self) -> windows_core::Result<ID3D11InputLayout> {
unsafe {
let mut result__ = core::mem::zeroed();
(windows_core::Interface::vtable(self).IAGetInputLayout)(
windows_core::Interface::as_raw(self),
&mut result__,
);
windows_core::Type::from_abi(result__)
}
}
pub unsafe fn IAGetVertexBuffers(
&self,
startslot: u32,
numbuffers: u32,
ppvertexbuffers: Option<*mut Option<ID3D11Buffer>>,
pstrides: Option<*mut u32>,
poffsets: Option<*mut u32>,
) {
unsafe {
(windows_core::Interface::vtable(self).IAGetVertexBuffers)(
windows_core::Interface::as_raw(self),
startslot,
numbuffers,
core::mem::transmute(ppvertexbuffers.unwrap_or(core::mem::zeroed())),
core::mem::transmute(pstrides.unwrap_or(core::mem::zeroed())),
core::mem::transmute(poffsets.unwrap_or(core::mem::zeroed())),
)
}
}
#[cfg(feature = "Win32_Graphics_Dxgi_Common")]
pub unsafe fn IAGetIndexBuffer(
&self,
pindexbuffer: Option<*mut Option<ID3D11Buffer>>,
format: Option<*mut crate::Dxgi::Common::DXGI_FORMAT>,
offset: Option<*mut u32>,
) {
unsafe {
(windows_core::Interface::vtable(self).IAGetIndexBuffer)(
windows_core::Interface::as_raw(self),
core::mem::transmute(pindexbuffer.unwrap_or(core::mem::zeroed())),
core::mem::transmute(format.unwrap_or(core::mem::zeroed())),
core::mem::transmute(offset.unwrap_or(core::mem::zeroed())),
)
}
}
pub unsafe fn GSGetConstantBuffers(
&self,
startslot: u32,
ppconstantbuffers: Option<&mut [Option<ID3D11Buffer>]>,
) {
unsafe {
(windows_core::Interface::vtable(self).GSGetConstantBuffers)(
windows_core::Interface::as_raw(self),
startslot,
ppconstantbuffers
.as_deref()
.map_or(0, |slice| slice.len().try_into().unwrap()),
core::mem::transmute(
ppconstantbuffers
.as_deref()
.map_or(core::ptr::null(), |slice| slice.as_ptr()),
),
)
}
}
pub unsafe fn GSGetShader(
&self,
ppgeometryshader: *mut Option<ID3D11GeometryShader>,
ppclassinstances: Option<*mut Option<ID3D11ClassInstance>>,
pnumclassinstances: Option<*mut u32>,
) {
unsafe {
(windows_core::Interface::vtable(self).GSGetShader)(
windows_core::Interface::as_raw(self),
core::mem::transmute(ppgeometryshader),
core::mem::transmute(ppclassinstances.unwrap_or(core::mem::zeroed())),
core::mem::transmute(pnumclassinstances.unwrap_or(core::mem::zeroed())),
)
}
}
#[cfg(feature = "Win32_Graphics_Direct3D")]
pub unsafe fn IAGetPrimitiveTopology(&self) -> super::Direct3D::D3D_PRIMITIVE_TOPOLOGY {
unsafe {
let mut result__ = core::mem::zeroed();
(windows_core::Interface::vtable(self).IAGetPrimitiveTopology)(
windows_core::Interface::as_raw(self),
&mut result__,
);
result__
}
}
pub unsafe fn VSGetShaderResources(
&self,
startslot: u32,
ppshaderresourceviews: Option<&mut [Option<ID3D11ShaderResourceView>]>,
) {
unsafe {
(windows_core::Interface::vtable(self).VSGetShaderResources)(
windows_core::Interface::as_raw(self),
startslot,
ppshaderresourceviews
.as_deref()
.map_or(0, |slice| slice.len().try_into().unwrap()),
core::mem::transmute(
ppshaderresourceviews
.as_deref()
.map_or(core::ptr::null(), |slice| slice.as_ptr()),
),
)
}
}
pub unsafe fn VSGetSamplers(
&self,
startslot: u32,
ppsamplers: Option<&mut [Option<ID3D11SamplerState>]>,
) {
unsafe {
(windows_core::Interface::vtable(self).VSGetSamplers)(
windows_core::Interface::as_raw(self),
startslot,
ppsamplers
.as_deref()
.map_or(0, |slice| slice.len().try_into().unwrap()),
core::mem::transmute(
ppsamplers
.as_deref()
.map_or(core::ptr::null(), |slice| slice.as_ptr()),
),
)
}
}
pub unsafe fn GetPredication(
&self,
pppredicate: Option<*mut Option<ID3D11Predicate>>,
ppredicatevalue: Option<*mut crate::Foundation::BOOL>,
) {
unsafe {
(windows_core::Interface::vtable(self).GetPredication)(
windows_core::Interface::as_raw(self),
core::mem::transmute(pppredicate.unwrap_or(core::mem::zeroed())),
core::mem::transmute(ppredicatevalue.unwrap_or(core::mem::zeroed())),
)
}
}
pub unsafe fn GSGetShaderResources(
&self,
startslot: u32,
ppshaderresourceviews: Option<&mut [Option<ID3D11ShaderResourceView>]>,
) {
unsafe {
(windows_core::Interface::vtable(self).GSGetShaderResources)(
windows_core::Interface::as_raw(self),
startslot,
ppshaderresourceviews
.as_deref()
.map_or(0, |slice| slice.len().try_into().unwrap()),
core::mem::transmute(
ppshaderresourceviews
.as_deref()
.map_or(core::ptr::null(), |slice| slice.as_ptr()),
),
)
}
}
pub unsafe fn GSGetSamplers(
&self,
startslot: u32,
ppsamplers: Option<&mut [Option<ID3D11SamplerState>]>,
) {
unsafe {
(windows_core::Interface::vtable(self).GSGetSamplers)(
windows_core::Interface::as_raw(self),
startslot,
ppsamplers
.as_deref()
.map_or(0, |slice| slice.len().try_into().unwrap()),
core::mem::transmute(
ppsamplers
.as_deref()
.map_or(core::ptr::null(), |slice| slice.as_ptr()),
),
)
}
}
pub unsafe fn OMGetRenderTargets(
&self,
pprendertargetviews: Option<&mut [Option<ID3D11RenderTargetView>]>,
ppdepthstencilview: Option<*mut Option<ID3D11DepthStencilView>>,
) {
unsafe {
(windows_core::Interface::vtable(self).OMGetRenderTargets)(
windows_core::Interface::as_raw(self),
pprendertargetviews
.as_deref()
.map_or(0, |slice| slice.len().try_into().unwrap()),
core::mem::transmute(
pprendertargetviews
.as_deref()
.map_or(core::ptr::null(), |slice| slice.as_ptr()),
),
core::mem::transmute(ppdepthstencilview.unwrap_or(core::mem::zeroed())),
)
}
}
pub unsafe fn OMGetRenderTargetsAndUnorderedAccessViews(
&self,
pprendertargetviews: Option<&mut [Option<ID3D11RenderTargetView>]>,
ppdepthstencilview: Option<*mut Option<ID3D11DepthStencilView>>,
uavstartslot: u32,
ppunorderedaccessviews: Option<&mut [Option<ID3D11UnorderedAccessView>]>,
) {
unsafe {
(windows_core::Interface::vtable(self).OMGetRenderTargetsAndUnorderedAccessViews)(
windows_core::Interface::as_raw(self),
pprendertargetviews
.as_deref()
.map_or(0, |slice| slice.len().try_into().unwrap()),
core::mem::transmute(
pprendertargetviews
.as_deref()
.map_or(core::ptr::null(), |slice| slice.as_ptr()),
),
core::mem::transmute(ppdepthstencilview.unwrap_or(core::mem::zeroed())),
uavstartslot,
ppunorderedaccessviews
.as_deref()
.map_or(0, |slice| slice.len().try_into().unwrap()),
core::mem::transmute(
ppunorderedaccessviews
.as_deref()
.map_or(core::ptr::null(), |slice| slice.as_ptr()),
),
)
}
}
pub unsafe fn OMGetBlendState(
&self,
ppblendstate: Option<*mut Option<ID3D11BlendState>>,
blendfactor: Option<&mut [f32; 4]>,
psamplemask: Option<*mut u32>,
) {
unsafe {
(windows_core::Interface::vtable(self).OMGetBlendState)(
windows_core::Interface::as_raw(self),
core::mem::transmute(ppblendstate.unwrap_or(core::mem::zeroed())),
core::mem::transmute(
blendfactor
.as_deref()
.map_or(core::ptr::null(), |slice| slice.as_ptr()),
),
core::mem::transmute(psamplemask.unwrap_or(core::mem::zeroed())),
)
}
}
pub unsafe fn OMGetDepthStencilState(
&self,
ppdepthstencilstate: Option<*mut Option<ID3D11DepthStencilState>>,
pstencilref: Option<*mut u32>,
) {
unsafe {
(windows_core::Interface::vtable(self).OMGetDepthStencilState)(
windows_core::Interface::as_raw(self),
core::mem::transmute(ppdepthstencilstate.unwrap_or(core::mem::zeroed())),
core::mem::transmute(pstencilref.unwrap_or(core::mem::zeroed())),
)
}
}
pub unsafe fn SOGetTargets(&self, ppsotargets: Option<&mut [Option<ID3D11Buffer>]>) {
unsafe {
(windows_core::Interface::vtable(self).SOGetTargets)(
windows_core::Interface::as_raw(self),
ppsotargets
.as_deref()
.map_or(0, |slice| slice.len().try_into().unwrap()),
core::mem::transmute(
ppsotargets
.as_deref()
.map_or(core::ptr::null(), |slice| slice.as_ptr()),
),
)
}
}
pub unsafe fn RSGetState(&self) -> windows_core::Result<ID3D11RasterizerState> {
unsafe {
let mut result__ = core::mem::zeroed();
(windows_core::Interface::vtable(self).RSGetState)(
windows_core::Interface::as_raw(self),
&mut result__,
);
windows_core::Type::from_abi(result__)
}
}
pub unsafe fn RSGetViewports(
&self,
pnumviewports: *mut u32,
pviewports: Option<*mut D3D11_VIEWPORT>,
) {
unsafe {
(windows_core::Interface::vtable(self).RSGetViewports)(
windows_core::Interface::as_raw(self),
core::mem::transmute(pnumviewports),
core::mem::transmute(pviewports.unwrap_or(core::mem::zeroed())),
)
}
}
pub unsafe fn RSGetScissorRects(
&self,
pnumrects: *mut u32,
prects: Option<*mut crate::Foundation::RECT>,
) {
unsafe {
(windows_core::Interface::vtable(self).RSGetScissorRects)(
windows_core::Interface::as_raw(self),
core::mem::transmute(pnumrects),
core::mem::transmute(prects.unwrap_or(core::mem::zeroed())),
)
}
}
pub unsafe fn HSGetShaderResources(
&self,
startslot: u32,
ppshaderresourceviews: Option<&mut [Option<ID3D11ShaderResourceView>]>,
) {
unsafe {
(windows_core::Interface::vtable(self).HSGetShaderResources)(
windows_core::Interface::as_raw(self),
startslot,
ppshaderresourceviews
.as_deref()
.map_or(0, |slice| slice.len().try_into().unwrap()),
core::mem::transmute(
ppshaderresourceviews
.as_deref()
.map_or(core::ptr::null(), |slice| slice.as_ptr()),
),
)
}
}
pub unsafe fn HSGetShader(
&self,
pphullshader: *mut Option<ID3D11HullShader>,
ppclassinstances: Option<*mut Option<ID3D11ClassInstance>>,
pnumclassinstances: Option<*mut u32>,
) {
unsafe {
(windows_core::Interface::vtable(self).HSGetShader)(
windows_core::Interface::as_raw(self),
core::mem::transmute(pphullshader),
core::mem::transmute(ppclassinstances.unwrap_or(core::mem::zeroed())),
core::mem::transmute(pnumclassinstances.unwrap_or(core::mem::zeroed())),
)
}
}
pub unsafe fn HSGetSamplers(
&self,
startslot: u32,
ppsamplers: Option<&mut [Option<ID3D11SamplerState>]>,
) {
unsafe {
(windows_core::Interface::vtable(self).HSGetSamplers)(
windows_core::Interface::as_raw(self),
startslot,
ppsamplers
.as_deref()
.map_or(0, |slice| slice.len().try_into().unwrap()),
core::mem::transmute(
ppsamplers
.as_deref()
.map_or(core::ptr::null(), |slice| slice.as_ptr()),
),
)
}
}
pub unsafe fn HSGetConstantBuffers(
&self,
startslot: u32,
ppconstantbuffers: Option<&mut [Option<ID3D11Buffer>]>,
) {
unsafe {
(windows_core::Interface::vtable(self).HSGetConstantBuffers)(
windows_core::Interface::as_raw(self),
startslot,
ppconstantbuffers
.as_deref()
.map_or(0, |slice| slice.len().try_into().unwrap()),
core::mem::transmute(
ppconstantbuffers
.as_deref()
.map_or(core::ptr::null(), |slice| slice.as_ptr()),
),
)
}
}
pub unsafe fn DSGetShaderResources(
&self,
startslot: u32,
ppshaderresourceviews: Option<&mut [Option<ID3D11ShaderResourceView>]>,
) {
unsafe {
(windows_core::Interface::vtable(self).DSGetShaderResources)(
windows_core::Interface::as_raw(self),
startslot,
ppshaderresourceviews
.as_deref()
.map_or(0, |slice| slice.len().try_into().unwrap()),
core::mem::transmute(
ppshaderresourceviews
.as_deref()
.map_or(core::ptr::null(), |slice| slice.as_ptr()),
),
)
}
}
pub unsafe fn DSGetShader(
&self,
ppdomainshader: *mut Option<ID3D11DomainShader>,
ppclassinstances: Option<*mut Option<ID3D11ClassInstance>>,
pnumclassinstances: Option<*mut u32>,
) {
unsafe {
(windows_core::Interface::vtable(self).DSGetShader)(
windows_core::Interface::as_raw(self),
core::mem::transmute(ppdomainshader),
core::mem::transmute(ppclassinstances.unwrap_or(core::mem::zeroed())),
core::mem::transmute(pnumclassinstances.unwrap_or(core::mem::zeroed())),
)
}
}
pub unsafe fn DSGetSamplers(
&self,
startslot: u32,
ppsamplers: Option<&mut [Option<ID3D11SamplerState>]>,
) {
unsafe {
(windows_core::Interface::vtable(self).DSGetSamplers)(
windows_core::Interface::as_raw(self),
startslot,
ppsamplers
.as_deref()
.map_or(0, |slice| slice.len().try_into().unwrap()),
core::mem::transmute(
ppsamplers
.as_deref()
.map_or(core::ptr::null(), |slice| slice.as_ptr()),
),
)
}
}
pub unsafe fn DSGetConstantBuffers(
&self,
startslot: u32,
ppconstantbuffers: Option<&mut [Option<ID3D11Buffer>]>,
) {
unsafe {
(windows_core::Interface::vtable(self).DSGetConstantBuffers)(
windows_core::Interface::as_raw(self),
startslot,
ppconstantbuffers
.as_deref()
.map_or(0, |slice| slice.len().try_into().unwrap()),
core::mem::transmute(
ppconstantbuffers
.as_deref()
.map_or(core::ptr::null(), |slice| slice.as_ptr()),
),
)
}
}
pub unsafe fn CSGetShaderResources(
&self,
startslot: u32,
ppshaderresourceviews: Option<&mut [Option<ID3D11ShaderResourceView>]>,
) {
unsafe {
(windows_core::Interface::vtable(self).CSGetShaderResources)(
windows_core::Interface::as_raw(self),
startslot,
ppshaderresourceviews
.as_deref()
.map_or(0, |slice| slice.len().try_into().unwrap()),
core::mem::transmute(
ppshaderresourceviews
.as_deref()
.map_or(core::ptr::null(), |slice| slice.as_ptr()),
),
)
}
}
pub unsafe fn CSGetUnorderedAccessViews(
&self,
startslot: u32,
ppunorderedaccessviews: Option<&mut [Option<ID3D11UnorderedAccessView>]>,
) {
unsafe {
(windows_core::Interface::vtable(self).CSGetUnorderedAccessViews)(
windows_core::Interface::as_raw(self),
startslot,
ppunorderedaccessviews
.as_deref()
.map_or(0, |slice| slice.len().try_into().unwrap()),
core::mem::transmute(
ppunorderedaccessviews
.as_deref()
.map_or(core::ptr::null(), |slice| slice.as_ptr()),
),
)
}
}
pub unsafe fn CSGetShader(
&self,
ppcomputeshader: *mut Option<ID3D11ComputeShader>,
ppclassinstances: Option<*mut Option<ID3D11ClassInstance>>,
pnumclassinstances: Option<*mut u32>,
) {
unsafe {
(windows_core::Interface::vtable(self).CSGetShader)(
windows_core::Interface::as_raw(self),
core::mem::transmute(ppcomputeshader),
core::mem::transmute(ppclassinstances.unwrap_or(core::mem::zeroed())),
core::mem::transmute(pnumclassinstances.unwrap_or(core::mem::zeroed())),
)
}
}
pub unsafe fn CSGetSamplers(
&self,
startslot: u32,
ppsamplers: Option<&mut [Option<ID3D11SamplerState>]>,
) {
unsafe {
(windows_core::Interface::vtable(self).CSGetSamplers)(
windows_core::Interface::as_raw(self),
startslot,
ppsamplers
.as_deref()
.map_or(0, |slice| slice.len().try_into().unwrap()),
core::mem::transmute(
ppsamplers
.as_deref()
.map_or(core::ptr::null(), |slice| slice.as_ptr()),
),
)
}
}
pub unsafe fn CSGetConstantBuffers(
&self,
startslot: u32,
ppconstantbuffers: Option<&mut [Option<ID3D11Buffer>]>,
) {
unsafe {
(windows_core::Interface::vtable(self).CSGetConstantBuffers)(
windows_core::Interface::as_raw(self),
startslot,
ppconstantbuffers
.as_deref()
.map_or(0, |slice| slice.len().try_into().unwrap()),
core::mem::transmute(
ppconstantbuffers
.as_deref()
.map_or(core::ptr::null(), |slice| slice.as_ptr()),
),
)
}
}
pub unsafe fn ClearState(&self) {
unsafe {
(windows_core::Interface::vtable(self).ClearState)(windows_core::Interface::as_raw(
self,
))
}
}
pub unsafe fn Flush(&self) {
unsafe {
(windows_core::Interface::vtable(self).Flush)(windows_core::Interface::as_raw(self))
}
}
pub unsafe fn GetType(&self) -> D3D11_DEVICE_CONTEXT_TYPE {
unsafe {
(windows_core::Interface::vtable(self).GetType)(windows_core::Interface::as_raw(self))
}
}
pub unsafe fn GetContextFlags(&self) -> u32 {
unsafe {
(windows_core::Interface::vtable(self).GetContextFlags)(
windows_core::Interface::as_raw(self),
)
}
}
pub unsafe fn FinishCommandList(
&self,
restoredeferredcontextstate: bool,
ppcommandlist: Option<*mut Option<ID3D11CommandList>>,
) -> windows_core::Result<()> {
unsafe {
(windows_core::Interface::vtable(self).FinishCommandList)(
windows_core::Interface::as_raw(self),
restoredeferredcontextstate.into(),
core::mem::transmute(ppcommandlist.unwrap_or(core::mem::zeroed())),
)
.ok()
}
}
}
#[repr(C)]
pub struct ID3D11DeviceContext_Vtbl {
pub base__: ID3D11DeviceChild_Vtbl,
pub VSSetConstantBuffers:
unsafe extern "system" fn(*mut core::ffi::c_void, u32, u32, *const *mut core::ffi::c_void),
pub PSSetShaderResources:
unsafe extern "system" fn(*mut core::ffi::c_void, u32, u32, *const *mut core::ffi::c_void),
pub PSSetShader: unsafe extern "system" fn(
*mut core::ffi::c_void,
*mut core::ffi::c_void,
*const *mut core::ffi::c_void,
u32,
),
pub PSSetSamplers:
unsafe extern "system" fn(*mut core::ffi::c_void, u32, u32, *const *mut core::ffi::c_void),
pub VSSetShader: unsafe extern "system" fn(
*mut core::ffi::c_void,
*mut core::ffi::c_void,
*const *mut core::ffi::c_void,
u32,
),
pub DrawIndexed: unsafe extern "system" fn(*mut core::ffi::c_void, u32, u32, i32),
pub Draw: unsafe extern "system" fn(*mut core::ffi::c_void, u32, u32),
pub Map: unsafe extern "system" fn(
*mut core::ffi::c_void,
*mut core::ffi::c_void,
u32,
D3D11_MAP,
u32,
*mut D3D11_MAPPED_SUBRESOURCE,
) -> windows_core::HRESULT,
pub Unmap: unsafe extern "system" fn(*mut core::ffi::c_void, *mut core::ffi::c_void, u32),
pub PSSetConstantBuffers:
unsafe extern "system" fn(*mut core::ffi::c_void, u32, u32, *const *mut core::ffi::c_void),
pub IASetInputLayout: unsafe extern "system" fn(*mut core::ffi::c_void, *mut core::ffi::c_void),
pub IASetVertexBuffers: unsafe extern "system" fn(
*mut core::ffi::c_void,
u32,
u32,
*const *mut core::ffi::c_void,
*const u32,
*const u32,
),
#[cfg(feature = "Win32_Graphics_Dxgi_Common")]
pub IASetIndexBuffer: unsafe extern "system" fn(
*mut core::ffi::c_void,
*mut core::ffi::c_void,
crate::Dxgi::Common::DXGI_FORMAT,
u32,
),
#[cfg(not(feature = "Win32_Graphics_Dxgi_Common"))]
IASetIndexBuffer: usize,
pub DrawIndexedInstanced:
unsafe extern "system" fn(*mut core::ffi::c_void, u32, u32, u32, i32, u32),
pub DrawInstanced: unsafe extern "system" fn(*mut core::ffi::c_void, u32, u32, u32, u32),
pub GSSetConstantBuffers:
unsafe extern "system" fn(*mut core::ffi::c_void, u32, u32, *const *mut core::ffi::c_void),
pub GSSetShader: unsafe extern "system" fn(
*mut core::ffi::c_void,
*mut core::ffi::c_void,
*const *mut core::ffi::c_void,
u32,
),
#[cfg(feature = "Win32_Graphics_Direct3D")]
pub IASetPrimitiveTopology:
unsafe extern "system" fn(*mut core::ffi::c_void, super::Direct3D::D3D_PRIMITIVE_TOPOLOGY),
#[cfg(not(feature = "Win32_Graphics_Direct3D"))]
IASetPrimitiveTopology: usize,
pub VSSetShaderResources:
unsafe extern "system" fn(*mut core::ffi::c_void, u32, u32, *const *mut core::ffi::c_void),
pub VSSetSamplers:
unsafe extern "system" fn(*mut core::ffi::c_void, u32, u32, *const *mut core::ffi::c_void),
pub Begin: unsafe extern "system" fn(*mut core::ffi::c_void, *mut core::ffi::c_void),
pub End: unsafe extern "system" fn(*mut core::ffi::c_void, *mut core::ffi::c_void),
pub GetData: unsafe extern "system" fn(
*mut core::ffi::c_void,
*mut core::ffi::c_void,
*mut core::ffi::c_void,
u32,
u32,
) -> windows_core::HRESULT,
pub SetPredication: unsafe extern "system" fn(
*mut core::ffi::c_void,
*mut core::ffi::c_void,
crate::Foundation::BOOL,
),
pub GSSetShaderResources:
unsafe extern "system" fn(*mut core::ffi::c_void, u32, u32, *const *mut core::ffi::c_void),
pub GSSetSamplers:
unsafe extern "system" fn(*mut core::ffi::c_void, u32, u32, *const *mut core::ffi::c_void),
pub OMSetRenderTargets: unsafe extern "system" fn(
*mut core::ffi::c_void,
u32,
*const *mut core::ffi::c_void,
*mut core::ffi::c_void,
),
pub OMSetRenderTargetsAndUnorderedAccessViews: unsafe extern "system" fn(
*mut core::ffi::c_void,
u32,
*const *mut core::ffi::c_void,
*mut core::ffi::c_void,
u32,
u32,
*const *mut core::ffi::c_void,
*const u32,
),
pub OMSetBlendState:
unsafe extern "system" fn(*mut core::ffi::c_void, *mut core::ffi::c_void, *const f32, u32),
pub OMSetDepthStencilState:
unsafe extern "system" fn(*mut core::ffi::c_void, *mut core::ffi::c_void, u32),
pub SOSetTargets: unsafe extern "system" fn(
*mut core::ffi::c_void,
u32,
*const *mut core::ffi::c_void,
*const u32,
),
pub DrawAuto: unsafe extern "system" fn(*mut core::ffi::c_void),
pub DrawIndexedInstancedIndirect:
unsafe extern "system" fn(*mut core::ffi::c_void, *mut core::ffi::c_void, u32),
pub DrawInstancedIndirect:
unsafe extern "system" fn(*mut core::ffi::c_void, *mut core::ffi::c_void, u32),
pub Dispatch: unsafe extern "system" fn(*mut core::ffi::c_void, u32, u32, u32),
pub DispatchIndirect:
unsafe extern "system" fn(*mut core::ffi::c_void, *mut core::ffi::c_void, u32),
pub RSSetState: unsafe extern "system" fn(*mut core::ffi::c_void, *mut core::ffi::c_void),
pub RSSetViewports:
unsafe extern "system" fn(*mut core::ffi::c_void, u32, *const D3D11_VIEWPORT),
pub RSSetScissorRects: unsafe extern "system" fn(
*mut core::ffi::c_void,
u32,
*const crate::Foundation::RECT,
),
pub CopySubresourceRegion: unsafe extern "system" fn(
*mut core::ffi::c_void,
*mut core::ffi::c_void,
u32,
u32,
u32,
u32,
*mut core::ffi::c_void,
u32,
*const D3D11_BOX,
),
pub CopyResource: unsafe extern "system" fn(
*mut core::ffi::c_void,
*mut core::ffi::c_void,
*mut core::ffi::c_void,
),
pub UpdateSubresource: unsafe extern "system" fn(
*mut core::ffi::c_void,
*mut core::ffi::c_void,
u32,
*const D3D11_BOX,
*const core::ffi::c_void,
u32,
u32,
),
pub CopyStructureCount: unsafe extern "system" fn(
*mut core::ffi::c_void,
*mut core::ffi::c_void,
u32,
*mut core::ffi::c_void,
),
pub ClearRenderTargetView:
unsafe extern "system" fn(*mut core::ffi::c_void, *mut core::ffi::c_void, *const f32),
pub ClearUnorderedAccessViewUint:
unsafe extern "system" fn(*mut core::ffi::c_void, *mut core::ffi::c_void, *const u32),
pub ClearUnorderedAccessViewFloat:
unsafe extern "system" fn(*mut core::ffi::c_void, *mut core::ffi::c_void, *const f32),
pub ClearDepthStencilView:
unsafe extern "system" fn(*mut core::ffi::c_void, *mut core::ffi::c_void, u32, f32, u8),
pub GenerateMips: unsafe extern "system" fn(*mut core::ffi::c_void, *mut core::ffi::c_void),
pub SetResourceMinLOD:
unsafe extern "system" fn(*mut core::ffi::c_void, *mut core::ffi::c_void, f32),
pub GetResourceMinLOD:
unsafe extern "system" fn(*mut core::ffi::c_void, *mut core::ffi::c_void) -> f32,
#[cfg(feature = "Win32_Graphics_Dxgi_Common")]
pub ResolveSubresource: unsafe extern "system" fn(
*mut core::ffi::c_void,
*mut core::ffi::c_void,
u32,
*mut core::ffi::c_void,
u32,
crate::Dxgi::Common::DXGI_FORMAT,
),
#[cfg(not(feature = "Win32_Graphics_Dxgi_Common"))]
ResolveSubresource: usize,
pub ExecuteCommandList: unsafe extern "system" fn(
*mut core::ffi::c_void,
*mut core::ffi::c_void,
crate::Foundation::BOOL,
),
pub HSSetShaderResources:
unsafe extern "system" fn(*mut core::ffi::c_void, u32, u32, *const *mut core::ffi::c_void),
pub HSSetShader: unsafe extern "system" fn(
*mut core::ffi::c_void,
*mut core::ffi::c_void,
*const *mut core::ffi::c_void,
u32,
),
pub HSSetSamplers:
unsafe extern "system" fn(*mut core::ffi::c_void, u32, u32, *const *mut core::ffi::c_void),
pub HSSetConstantBuffers:
unsafe extern "system" fn(*mut core::ffi::c_void, u32, u32, *const *mut core::ffi::c_void),
pub DSSetShaderResources:
unsafe extern "system" fn(*mut core::ffi::c_void, u32, u32, *const *mut core::ffi::c_void),
pub DSSetShader: unsafe extern "system" fn(
*mut core::ffi::c_void,
*mut core::ffi::c_void,
*const *mut core::ffi::c_void,
u32,
),
pub DSSetSamplers:
unsafe extern "system" fn(*mut core::ffi::c_void, u32, u32, *const *mut core::ffi::c_void),
pub DSSetConstantBuffers:
unsafe extern "system" fn(*mut core::ffi::c_void, u32, u32, *const *mut core::ffi::c_void),
pub CSSetShaderResources:
unsafe extern "system" fn(*mut core::ffi::c_void, u32, u32, *const *mut core::ffi::c_void),
pub CSSetUnorderedAccessViews: unsafe extern "system" fn(
*mut core::ffi::c_void,
u32,
u32,
*const *mut core::ffi::c_void,
*const u32,
),
pub CSSetShader: unsafe extern "system" fn(
*mut core::ffi::c_void,
*mut core::ffi::c_void,
*const *mut core::ffi::c_void,
u32,
),
pub CSSetSamplers:
unsafe extern "system" fn(*mut core::ffi::c_void, u32, u32, *const *mut core::ffi::c_void),
pub CSSetConstantBuffers:
unsafe extern "system" fn(*mut core::ffi::c_void, u32, u32, *const *mut core::ffi::c_void),
pub VSGetConstantBuffers:
unsafe extern "system" fn(*mut core::ffi::c_void, u32, u32, *mut *mut core::ffi::c_void),
pub PSGetShaderResources:
unsafe extern "system" fn(*mut core::ffi::c_void, u32, u32, *mut *mut core::ffi::c_void),
pub PSGetShader: unsafe extern "system" fn(
*mut core::ffi::c_void,
*mut *mut core::ffi::c_void,
*mut *mut core::ffi::c_void,
*mut u32,
),
pub PSGetSamplers:
unsafe extern "system" fn(*mut core::ffi::c_void, u32, u32, *mut *mut core::ffi::c_void),
pub VSGetShader: unsafe extern "system" fn(
*mut core::ffi::c_void,
*mut *mut core::ffi::c_void,
*mut *mut core::ffi::c_void,
*mut u32,
),
pub PSGetConstantBuffers:
unsafe extern "system" fn(*mut core::ffi::c_void, u32, u32, *mut *mut core::ffi::c_void),
pub IAGetInputLayout:
unsafe extern "system" fn(*mut core::ffi::c_void, *mut *mut core::ffi::c_void),
pub IAGetVertexBuffers: unsafe extern "system" fn(
*mut core::ffi::c_void,
u32,
u32,
*mut *mut core::ffi::c_void,
*mut u32,
*mut u32,
),
#[cfg(feature = "Win32_Graphics_Dxgi_Common")]
pub IAGetIndexBuffer: unsafe extern "system" fn(
*mut core::ffi::c_void,
*mut *mut core::ffi::c_void,
*mut crate::Dxgi::Common::DXGI_FORMAT,
*mut u32,
),
#[cfg(not(feature = "Win32_Graphics_Dxgi_Common"))]
IAGetIndexBuffer: usize,
pub GSGetConstantBuffers:
unsafe extern "system" fn(*mut core::ffi::c_void, u32, u32, *mut *mut core::ffi::c_void),
pub GSGetShader: unsafe extern "system" fn(
*mut core::ffi::c_void,
*mut *mut core::ffi::c_void,
*mut *mut core::ffi::c_void,
*mut u32,
),
#[cfg(feature = "Win32_Graphics_Direct3D")]
pub IAGetPrimitiveTopology: unsafe extern "system" fn(
*mut core::ffi::c_void,
*mut super::Direct3D::D3D_PRIMITIVE_TOPOLOGY,
),
#[cfg(not(feature = "Win32_Graphics_Direct3D"))]
IAGetPrimitiveTopology: usize,
pub VSGetShaderResources:
unsafe extern "system" fn(*mut core::ffi::c_void, u32, u32, *mut *mut core::ffi::c_void),
pub VSGetSamplers:
unsafe extern "system" fn(*mut core::ffi::c_void, u32, u32, *mut *mut core::ffi::c_void),
pub GetPredication: unsafe extern "system" fn(
*mut core::ffi::c_void,
*mut *mut core::ffi::c_void,
*mut crate::Foundation::BOOL,
),
pub GSGetShaderResources:
unsafe extern "system" fn(*mut core::ffi::c_void, u32, u32, *mut *mut core::ffi::c_void),
pub GSGetSamplers:
unsafe extern "system" fn(*mut core::ffi::c_void, u32, u32, *mut *mut core::ffi::c_void),
pub OMGetRenderTargets: unsafe extern "system" fn(
*mut core::ffi::c_void,
u32,
*mut *mut core::ffi::c_void,
*mut *mut core::ffi::c_void,
),
pub OMGetRenderTargetsAndUnorderedAccessViews: unsafe extern "system" fn(
*mut core::ffi::c_void,
u32,
*mut *mut core::ffi::c_void,
*mut *mut core::ffi::c_void,
u32,
u32,
*mut *mut core::ffi::c_void,
),
pub OMGetBlendState: unsafe extern "system" fn(
*mut core::ffi::c_void,
*mut *mut core::ffi::c_void,
*mut f32,
*mut u32,
),
pub OMGetDepthStencilState:
unsafe extern "system" fn(*mut core::ffi::c_void, *mut *mut core::ffi::c_void, *mut u32),
pub SOGetTargets:
unsafe extern "system" fn(*mut core::ffi::c_void, u32, *mut *mut core::ffi::c_void),
pub RSGetState: unsafe extern "system" fn(*mut core::ffi::c_void, *mut *mut core::ffi::c_void),
pub RSGetViewports:
unsafe extern "system" fn(*mut core::ffi::c_void, *mut u32, *mut D3D11_VIEWPORT),
pub RSGetScissorRects: unsafe extern "system" fn(
*mut core::ffi::c_void,
*mut u32,
*mut crate::Foundation::RECT,
),
pub HSGetShaderResources:
unsafe extern "system" fn(*mut core::ffi::c_void, u32, u32, *mut *mut core::ffi::c_void),
pub HSGetShader: unsafe extern "system" fn(
*mut core::ffi::c_void,
*mut *mut core::ffi::c_void,
*mut *mut core::ffi::c_void,
*mut u32,
),
pub HSGetSamplers:
unsafe extern "system" fn(*mut core::ffi::c_void, u32, u32, *mut *mut core::ffi::c_void),
pub HSGetConstantBuffers:
unsafe extern "system" fn(*mut core::ffi::c_void, u32, u32, *mut *mut core::ffi::c_void),
pub DSGetShaderResources:
unsafe extern "system" fn(*mut core::ffi::c_void, u32, u32, *mut *mut core::ffi::c_void),
pub DSGetShader: unsafe extern "system" fn(
*mut core::ffi::c_void,
*mut *mut core::ffi::c_void,
*mut *mut core::ffi::c_void,
*mut u32,
),
pub DSGetSamplers:
unsafe extern "system" fn(*mut core::ffi::c_void, u32, u32, *mut *mut core::ffi::c_void),
pub DSGetConstantBuffers:
unsafe extern "system" fn(*mut core::ffi::c_void, u32, u32, *mut *mut core::ffi::c_void),
pub CSGetShaderResources:
unsafe extern "system" fn(*mut core::ffi::c_void, u32, u32, *mut *mut core::ffi::c_void),
pub CSGetUnorderedAccessViews:
unsafe extern "system" fn(*mut core::ffi::c_void, u32, u32, *mut *mut core::ffi::c_void),
pub CSGetShader: unsafe extern "system" fn(
*mut core::ffi::c_void,
*mut *mut core::ffi::c_void,
*mut *mut core::ffi::c_void,
*mut u32,
),
pub CSGetSamplers:
unsafe extern "system" fn(*mut core::ffi::c_void, u32, u32, *mut *mut core::ffi::c_void),
pub CSGetConstantBuffers:
unsafe extern "system" fn(*mut core::ffi::c_void, u32, u32, *mut *mut core::ffi::c_void),
pub ClearState: unsafe extern "system" fn(*mut core::ffi::c_void),
pub Flush: unsafe extern "system" fn(*mut core::ffi::c_void),
pub GetType: unsafe extern "system" fn(*mut core::ffi::c_void) -> D3D11_DEVICE_CONTEXT_TYPE,
pub GetContextFlags: unsafe extern "system" fn(*mut core::ffi::c_void) -> u32,
pub FinishCommandList: unsafe extern "system" fn(
*mut core::ffi::c_void,
crate::Foundation::BOOL,
*mut *mut core::ffi::c_void,
) -> windows_core::HRESULT,
}
#[cfg(all(
feature = "Win32_Graphics_Direct3D",
feature = "Win32_Graphics_Dxgi_Common"
))]
pub trait ID3D11DeviceContext_Impl: ID3D11DeviceChild_Impl {
fn VSSetConstantBuffers(
&self,
startslot: u32,
numbuffers: u32,
ppconstantbuffers: *const Option<ID3D11Buffer>,
);
fn PSSetShaderResources(
&self,
startslot: u32,
numviews: u32,
ppshaderresourceviews: *const Option<ID3D11ShaderResourceView>,
);
fn PSSetShader(
&self,
ppixelshader: windows_core::Ref<'_, ID3D11PixelShader>,
ppclassinstances: *const Option<ID3D11ClassInstance>,
numclassinstances: u32,
);
fn PSSetSamplers(
&self,
startslot: u32,
numsamplers: u32,
ppsamplers: *const Option<ID3D11SamplerState>,
);
fn VSSetShader(
&self,
pvertexshader: windows_core::Ref<'_, ID3D11VertexShader>,
ppclassinstances: *const Option<ID3D11ClassInstance>,
numclassinstances: u32,
);
fn DrawIndexed(&self, indexcount: u32, startindexlocation: u32, basevertexlocation: i32);
fn Draw(&self, vertexcount: u32, startvertexlocation: u32);
fn Map(
&self,
presource: windows_core::Ref<'_, ID3D11Resource>,
subresource: u32,
maptype: D3D11_MAP,
mapflags: u32,
pmappedresource: *mut D3D11_MAPPED_SUBRESOURCE,
) -> windows_core::Result<()>;
fn Unmap(&self, presource: windows_core::Ref<'_, ID3D11Resource>, subresource: u32);
fn PSSetConstantBuffers(
&self,
startslot: u32,
numbuffers: u32,
ppconstantbuffers: *const Option<ID3D11Buffer>,
);
fn IASetInputLayout(&self, pinputlayout: windows_core::Ref<'_, ID3D11InputLayout>);
fn IASetVertexBuffers(
&self,
startslot: u32,
numbuffers: u32,
ppvertexbuffers: *const Option<ID3D11Buffer>,
pstrides: *const u32,
poffsets: *const u32,
);
fn IASetIndexBuffer(
&self,
pindexbuffer: windows_core::Ref<'_, ID3D11Buffer>,
format: crate::Dxgi::Common::DXGI_FORMAT,
offset: u32,
);
fn DrawIndexedInstanced(
&self,
indexcountperinstance: u32,
instancecount: u32,
startindexlocation: u32,
basevertexlocation: i32,
startinstancelocation: u32,
);
fn DrawInstanced(
&self,
vertexcountperinstance: u32,
instancecount: u32,
startvertexlocation: u32,
startinstancelocation: u32,
);
fn GSSetConstantBuffers(
&self,
startslot: u32,
numbuffers: u32,
ppconstantbuffers: *const Option<ID3D11Buffer>,
);
fn GSSetShader(
&self,
pshader: windows_core::Ref<'_, ID3D11GeometryShader>,
ppclassinstances: *const Option<ID3D11ClassInstance>,
numclassinstances: u32,
);
fn IASetPrimitiveTopology(&self, topology: super::Direct3D::D3D_PRIMITIVE_TOPOLOGY);
fn VSSetShaderResources(
&self,
startslot: u32,
numviews: u32,
ppshaderresourceviews: *const Option<ID3D11ShaderResourceView>,
);
fn VSSetSamplers(
&self,
startslot: u32,
numsamplers: u32,
ppsamplers: *const Option<ID3D11SamplerState>,
);
fn Begin(&self, pasync: windows_core::Ref<'_, ID3D11Asynchronous>);
fn End(&self, pasync: windows_core::Ref<'_, ID3D11Asynchronous>);
fn GetData(
&self,
pasync: windows_core::Ref<'_, ID3D11Asynchronous>,
pdata: *mut core::ffi::c_void,
datasize: u32,
getdataflags: u32,
) -> windows_core::Result<()>;
fn SetPredication(
&self,
ppredicate: windows_core::Ref<'_, ID3D11Predicate>,
predicatevalue: crate::Foundation::BOOL,
);
fn GSSetShaderResources(
&self,
startslot: u32,
numviews: u32,
ppshaderresourceviews: *const Option<ID3D11ShaderResourceView>,
);
fn GSSetSamplers(
&self,
startslot: u32,
numsamplers: u32,
ppsamplers: *const Option<ID3D11SamplerState>,
);
fn OMSetRenderTargets(
&self,
numviews: u32,
pprendertargetviews: *const Option<ID3D11RenderTargetView>,
pdepthstencilview: windows_core::Ref<'_, ID3D11DepthStencilView>,
);
fn OMSetRenderTargetsAndUnorderedAccessViews(
&self,
numrtvs: u32,
pprendertargetviews: *const Option<ID3D11RenderTargetView>,
pdepthstencilview: windows_core::Ref<'_, ID3D11DepthStencilView>,
uavstartslot: u32,
numuavs: u32,
ppunorderedaccessviews: *const Option<ID3D11UnorderedAccessView>,
puavinitialcounts: *const u32,
);
fn OMSetBlendState(
&self,
pblendstate: windows_core::Ref<'_, ID3D11BlendState>,
blendfactor: *const f32,
samplemask: u32,
);
fn OMSetDepthStencilState(
&self,
pdepthstencilstate: windows_core::Ref<'_, ID3D11DepthStencilState>,
stencilref: u32,
);
fn SOSetTargets(
&self,
numbuffers: u32,
ppsotargets: *const Option<ID3D11Buffer>,
poffsets: *const u32,
);
fn DrawAuto(&self);
fn DrawIndexedInstancedIndirect(
&self,
pbufferforargs: windows_core::Ref<'_, ID3D11Buffer>,
alignedbyteoffsetforargs: u32,
);
fn DrawInstancedIndirect(
&self,
pbufferforargs: windows_core::Ref<'_, ID3D11Buffer>,
alignedbyteoffsetforargs: u32,
);
fn Dispatch(&self, threadgroupcountx: u32, threadgroupcounty: u32, threadgroupcountz: u32);
fn DispatchIndirect(
&self,
pbufferforargs: windows_core::Ref<'_, ID3D11Buffer>,
alignedbyteoffsetforargs: u32,
);
fn RSSetState(&self, prasterizerstate: windows_core::Ref<'_, ID3D11RasterizerState>);
fn RSSetViewports(&self, numviewports: u32, pviewports: *const D3D11_VIEWPORT);
fn RSSetScissorRects(&self, numrects: u32, prects: *const crate::Foundation::RECT);
fn CopySubresourceRegion(
&self,
pdstresource: windows_core::Ref<'_, ID3D11Resource>,
dstsubresource: u32,
dstx: u32,
dsty: u32,
dstz: u32,
psrcresource: windows_core::Ref<'_, ID3D11Resource>,
srcsubresource: u32,
psrcbox: *const D3D11_BOX,
);
fn CopyResource(
&self,
pdstresource: windows_core::Ref<'_, ID3D11Resource>,
psrcresource: windows_core::Ref<'_, ID3D11Resource>,
);
fn UpdateSubresource(
&self,
pdstresource: windows_core::Ref<'_, ID3D11Resource>,
dstsubresource: u32,
pdstbox: *const D3D11_BOX,
psrcdata: *const core::ffi::c_void,
srcrowpitch: u32,
srcdepthpitch: u32,
);
fn CopyStructureCount(
&self,
pdstbuffer: windows_core::Ref<'_, ID3D11Buffer>,
dstalignedbyteoffset: u32,
psrcview: windows_core::Ref<'_, ID3D11UnorderedAccessView>,
);
fn ClearRenderTargetView(
&self,
prendertargetview: windows_core::Ref<'_, ID3D11RenderTargetView>,
colorrgba: *const f32,
);
fn ClearUnorderedAccessViewUint(
&self,
punorderedaccessview: windows_core::Ref<'_, ID3D11UnorderedAccessView>,
values: *const u32,
);
fn ClearUnorderedAccessViewFloat(
&self,
punorderedaccessview: windows_core::Ref<'_, ID3D11UnorderedAccessView>,
values: *const f32,
);
fn ClearDepthStencilView(
&self,
pdepthstencilview: windows_core::Ref<'_, ID3D11DepthStencilView>,
clearflags: u32,
depth: f32,
stencil: u8,
);
fn GenerateMips(&self, pshaderresourceview: windows_core::Ref<'_, ID3D11ShaderResourceView>);
fn SetResourceMinLOD(&self, presource: windows_core::Ref<'_, ID3D11Resource>, minlod: f32);
fn GetResourceMinLOD(&self, presource: windows_core::Ref<'_, ID3D11Resource>) -> f32;
fn ResolveSubresource(
&self,
pdstresource: windows_core::Ref<'_, ID3D11Resource>,
dstsubresource: u32,
psrcresource: windows_core::Ref<'_, ID3D11Resource>,
srcsubresource: u32,
format: crate::Dxgi::Common::DXGI_FORMAT,
);
fn ExecuteCommandList(
&self,
pcommandlist: windows_core::Ref<'_, ID3D11CommandList>,
restorecontextstate: crate::Foundation::BOOL,
);
fn HSSetShaderResources(
&self,
startslot: u32,
numviews: u32,
ppshaderresourceviews: *const Option<ID3D11ShaderResourceView>,
);
fn HSSetShader(
&self,
phullshader: windows_core::Ref<'_, ID3D11HullShader>,
ppclassinstances: *const Option<ID3D11ClassInstance>,
numclassinstances: u32,
);
fn HSSetSamplers(
&self,
startslot: u32,
numsamplers: u32,
ppsamplers: *const Option<ID3D11SamplerState>,
);
fn HSSetConstantBuffers(
&self,
startslot: u32,
numbuffers: u32,
ppconstantbuffers: *const Option<ID3D11Buffer>,
);
fn DSSetShaderResources(
&self,
startslot: u32,
numviews: u32,
ppshaderresourceviews: *const Option<ID3D11ShaderResourceView>,
);
fn DSSetShader(
&self,
pdomainshader: windows_core::Ref<'_, ID3D11DomainShader>,
ppclassinstances: *const Option<ID3D11ClassInstance>,
numclassinstances: u32,
);
fn DSSetSamplers(
&self,
startslot: u32,
numsamplers: u32,
ppsamplers: *const Option<ID3D11SamplerState>,
);
fn DSSetConstantBuffers(
&self,
startslot: u32,
numbuffers: u32,
ppconstantbuffers: *const Option<ID3D11Buffer>,
);
fn CSSetShaderResources(
&self,
startslot: u32,
numviews: u32,
ppshaderresourceviews: *const Option<ID3D11ShaderResourceView>,
);
fn CSSetUnorderedAccessViews(
&self,
startslot: u32,
numuavs: u32,
ppunorderedaccessviews: *const Option<ID3D11UnorderedAccessView>,
puavinitialcounts: *const u32,
);
fn CSSetShader(
&self,
pcomputeshader: windows_core::Ref<'_, ID3D11ComputeShader>,
ppclassinstances: *const Option<ID3D11ClassInstance>,
numclassinstances: u32,
);
fn CSSetSamplers(
&self,
startslot: u32,
numsamplers: u32,
ppsamplers: *const Option<ID3D11SamplerState>,
);
fn CSSetConstantBuffers(
&self,
startslot: u32,
numbuffers: u32,
ppconstantbuffers: *const Option<ID3D11Buffer>,
);
fn VSGetConstantBuffers(
&self,
startslot: u32,
numbuffers: u32,
ppconstantbuffers: windows_core::OutRef<'_, ID3D11Buffer>,
);
fn PSGetShaderResources(
&self,
startslot: u32,
numviews: u32,
ppshaderresourceviews: windows_core::OutRef<'_, ID3D11ShaderResourceView>,
);
fn PSGetShader(
&self,
pppixelshader: windows_core::OutRef<'_, ID3D11PixelShader>,
ppclassinstances: windows_core::OutRef<'_, ID3D11ClassInstance>,
pnumclassinstances: *mut u32,
);
fn PSGetSamplers(
&self,
startslot: u32,
numsamplers: u32,
ppsamplers: windows_core::OutRef<'_, ID3D11SamplerState>,
);
fn VSGetShader(
&self,
ppvertexshader: windows_core::OutRef<'_, ID3D11VertexShader>,
ppclassinstances: windows_core::OutRef<'_, ID3D11ClassInstance>,
pnumclassinstances: *mut u32,
);
fn PSGetConstantBuffers(
&self,
startslot: u32,
numbuffers: u32,
ppconstantbuffers: windows_core::OutRef<'_, ID3D11Buffer>,
);
fn IAGetInputLayout(&self, ppinputlayout: windows_core::OutRef<'_, ID3D11InputLayout>);
fn IAGetVertexBuffers(
&self,
startslot: u32,
numbuffers: u32,
ppvertexbuffers: windows_core::OutRef<'_, ID3D11Buffer>,
pstrides: *mut u32,
poffsets: *mut u32,
);
fn IAGetIndexBuffer(
&self,
pindexbuffer: windows_core::OutRef<'_, ID3D11Buffer>,
format: *mut crate::Dxgi::Common::DXGI_FORMAT,
offset: *mut u32,
);
fn GSGetConstantBuffers(
&self,
startslot: u32,
numbuffers: u32,
ppconstantbuffers: windows_core::OutRef<'_, ID3D11Buffer>,
);
fn GSGetShader(
&self,
ppgeometryshader: windows_core::OutRef<'_, ID3D11GeometryShader>,
ppclassinstances: windows_core::OutRef<'_, ID3D11ClassInstance>,
pnumclassinstances: *mut u32,
);
fn IAGetPrimitiveTopology(&self, ptopology: *mut super::Direct3D::D3D_PRIMITIVE_TOPOLOGY);
fn VSGetShaderResources(
&self,
startslot: u32,
numviews: u32,
ppshaderresourceviews: windows_core::OutRef<'_, ID3D11ShaderResourceView>,
);
fn VSGetSamplers(
&self,
startslot: u32,
numsamplers: u32,
ppsamplers: windows_core::OutRef<'_, ID3D11SamplerState>,
);
fn GetPredication(
&self,
pppredicate: windows_core::OutRef<'_, ID3D11Predicate>,
ppredicatevalue: *mut crate::Foundation::BOOL,
);
fn GSGetShaderResources(
&self,
startslot: u32,
numviews: u32,
ppshaderresourceviews: windows_core::OutRef<'_, ID3D11ShaderResourceView>,
);
fn GSGetSamplers(
&self,
startslot: u32,
numsamplers: u32,
ppsamplers: windows_core::OutRef<'_, ID3D11SamplerState>,
);
fn OMGetRenderTargets(
&self,
numviews: u32,
pprendertargetviews: windows_core::OutRef<'_, ID3D11RenderTargetView>,
ppdepthstencilview: windows_core::OutRef<'_, ID3D11DepthStencilView>,
);
fn OMGetRenderTargetsAndUnorderedAccessViews(
&self,
numrtvs: u32,
pprendertargetviews: windows_core::OutRef<'_, ID3D11RenderTargetView>,
ppdepthstencilview: windows_core::OutRef<'_, ID3D11DepthStencilView>,
uavstartslot: u32,
numuavs: u32,
ppunorderedaccessviews: windows_core::OutRef<'_, ID3D11UnorderedAccessView>,
);
fn OMGetBlendState(
&self,
ppblendstate: windows_core::OutRef<'_, ID3D11BlendState>,
blendfactor: *mut f32,
psamplemask: *mut u32,
);
fn OMGetDepthStencilState(
&self,
ppdepthstencilstate: windows_core::OutRef<'_, ID3D11DepthStencilState>,
pstencilref: *mut u32,
);
fn SOGetTargets(&self, numbuffers: u32, ppsotargets: windows_core::OutRef<'_, ID3D11Buffer>);
fn RSGetState(&self, pprasterizerstate: windows_core::OutRef<'_, ID3D11RasterizerState>);
fn RSGetViewports(&self, pnumviewports: *mut u32, pviewports: *mut D3D11_VIEWPORT);
fn RSGetScissorRects(&self, pnumrects: *mut u32, prects: *mut crate::Foundation::RECT);
fn HSGetShaderResources(
&self,
startslot: u32,
numviews: u32,
ppshaderresourceviews: windows_core::OutRef<'_, ID3D11ShaderResourceView>,
);
fn HSGetShader(
&self,
pphullshader: windows_core::OutRef<'_, ID3D11HullShader>,
ppclassinstances: windows_core::OutRef<'_, ID3D11ClassInstance>,
pnumclassinstances: *mut u32,
);
fn HSGetSamplers(
&self,
startslot: u32,
numsamplers: u32,
ppsamplers: windows_core::OutRef<'_, ID3D11SamplerState>,
);
fn HSGetConstantBuffers(
&self,
startslot: u32,
numbuffers: u32,
ppconstantbuffers: windows_core::OutRef<'_, ID3D11Buffer>,
);
fn DSGetShaderResources(
&self,
startslot: u32,
numviews: u32,
ppshaderresourceviews: windows_core::OutRef<'_, ID3D11ShaderResourceView>,
);
fn DSGetShader(
&self,
ppdomainshader: windows_core::OutRef<'_, ID3D11DomainShader>,
ppclassinstances: windows_core::OutRef<'_, ID3D11ClassInstance>,
pnumclassinstances: *mut u32,
);
fn DSGetSamplers(
&self,
startslot: u32,
numsamplers: u32,
ppsamplers: windows_core::OutRef<'_, ID3D11SamplerState>,
);
fn DSGetConstantBuffers(
&self,
startslot: u32,
numbuffers: u32,
ppconstantbuffers: windows_core::OutRef<'_, ID3D11Buffer>,
);
fn CSGetShaderResources(
&self,
startslot: u32,
numviews: u32,
ppshaderresourceviews: windows_core::OutRef<'_, ID3D11ShaderResourceView>,
);
fn CSGetUnorderedAccessViews(
&self,
startslot: u32,
numuavs: u32,
ppunorderedaccessviews: windows_core::OutRef<'_, ID3D11UnorderedAccessView>,
);
fn CSGetShader(
&self,
ppcomputeshader: windows_core::OutRef<'_, ID3D11ComputeShader>,
ppclassinstances: windows_core::OutRef<'_, ID3D11ClassInstance>,
pnumclassinstances: *mut u32,
);
fn CSGetSamplers(
&self,
startslot: u32,
numsamplers: u32,
ppsamplers: windows_core::OutRef<'_, ID3D11SamplerState>,
);
fn CSGetConstantBuffers(
&self,
startslot: u32,
numbuffers: u32,
ppconstantbuffers: windows_core::OutRef<'_, ID3D11Buffer>,
);
fn ClearState(&self);
fn Flush(&self);
fn GetType(&self) -> D3D11_DEVICE_CONTEXT_TYPE;
fn GetContextFlags(&self) -> u32;
fn FinishCommandList(
&self,
restoredeferredcontextstate: crate::Foundation::BOOL,
ppcommandlist: windows_core::OutRef<'_, ID3D11CommandList>,
) -> windows_core::Result<()>;
}
#[cfg(all(
feature = "Win32_Graphics_Direct3D",
feature = "Win32_Graphics_Dxgi_Common"
))]
impl ID3D11DeviceContext_Vtbl {
pub const fn new<Identity: ID3D11DeviceContext_Impl, const OFFSET: isize>() -> Self {
unsafe extern "system" fn VSSetConstantBuffers<
Identity: ID3D11DeviceContext_Impl,
const OFFSET: isize,
>(
this: *mut core::ffi::c_void,
startslot: u32,
numbuffers: u32,
ppconstantbuffers: *const *mut core::ffi::c_void,
) {
unsafe {
let this: &Identity =
&*((this as *const *const ()).offset(OFFSET) as *const Identity);
ID3D11DeviceContext_Impl::VSSetConstantBuffers(
this,
core::mem::transmute_copy(&startslot),
core::mem::transmute_copy(&numbuffers),
core::mem::transmute_copy(&ppconstantbuffers),
)
}
}
unsafe extern "system" fn PSSetShaderResources<
Identity: ID3D11DeviceContext_Impl,
const OFFSET: isize,
>(
this: *mut core::ffi::c_void,
startslot: u32,
numviews: u32,
ppshaderresourceviews: *const *mut core::ffi::c_void,
) {
unsafe {
let this: &Identity =
&*((this as *const *const ()).offset(OFFSET) as *const Identity);
ID3D11DeviceContext_Impl::PSSetShaderResources(
this,
core::mem::transmute_copy(&startslot),
core::mem::transmute_copy(&numviews),
core::mem::transmute_copy(&ppshaderresourceviews),
)
}
}
unsafe extern "system" fn PSSetShader<
Identity: ID3D11DeviceContext_Impl,
const OFFSET: isize,
>(
this: *mut core::ffi::c_void,
ppixelshader: *mut core::ffi::c_void,
ppclassinstances: *const *mut core::ffi::c_void,
numclassinstances: u32,
) {
unsafe {
let this: &Identity =
&*((this as *const *const ()).offset(OFFSET) as *const Identity);
ID3D11DeviceContext_Impl::PSSetShader(
this,
core::mem::transmute_copy(&ppixelshader),
core::mem::transmute_copy(&ppclassinstances),
core::mem::transmute_copy(&numclassinstances),
)
}
}
unsafe extern "system" fn PSSetSamplers<
Identity: ID3D11DeviceContext_Impl,
const OFFSET: isize,
>(
this: *mut core::ffi::c_void,
startslot: u32,
numsamplers: u32,
ppsamplers: *const *mut core::ffi::c_void,
) {
unsafe {
let this: &Identity =
&*((this as *const *const ()).offset(OFFSET) as *const Identity);
ID3D11DeviceContext_Impl::PSSetSamplers(
this,
core::mem::transmute_copy(&startslot),
core::mem::transmute_copy(&numsamplers),
core::mem::transmute_copy(&ppsamplers),
)
}
}
unsafe extern "system" fn VSSetShader<
Identity: ID3D11DeviceContext_Impl,
const OFFSET: isize,
>(
this: *mut core::ffi::c_void,
pvertexshader: *mut core::ffi::c_void,
ppclassinstances: *const *mut core::ffi::c_void,
numclassinstances: u32,
) {
unsafe {
let this: &Identity =
&*((this as *const *const ()).offset(OFFSET) as *const Identity);
ID3D11DeviceContext_Impl::VSSetShader(
this,
core::mem::transmute_copy(&pvertexshader),
core::mem::transmute_copy(&ppclassinstances),
core::mem::transmute_copy(&numclassinstances),
)
}
}
unsafe extern "system" fn DrawIndexed<
Identity: ID3D11DeviceContext_Impl,
const OFFSET: isize,
>(
this: *mut core::ffi::c_void,
indexcount: u32,
startindexlocation: u32,
basevertexlocation: i32,
) {
unsafe {
let this: &Identity =
&*((this as *const *const ()).offset(OFFSET) as *const Identity);
ID3D11DeviceContext_Impl::DrawIndexed(
this,
core::mem::transmute_copy(&indexcount),
core::mem::transmute_copy(&startindexlocation),
core::mem::transmute_copy(&basevertexlocation),
)
}
}
unsafe extern "system" fn Draw<Identity: ID3D11DeviceContext_Impl, const OFFSET: isize>(
this: *mut core::ffi::c_void,
vertexcount: u32,
startvertexlocation: u32,
) {
unsafe {
let this: &Identity =
&*((this as *const *const ()).offset(OFFSET) as *const Identity);
ID3D11DeviceContext_Impl::Draw(
this,
core::mem::transmute_copy(&vertexcount),
core::mem::transmute_copy(&startvertexlocation),
)
}
}
unsafe extern "system" fn Map<Identity: ID3D11DeviceContext_Impl, const OFFSET: isize>(
this: *mut core::ffi::c_void,
presource: *mut core::ffi::c_void,
subresource: u32,
maptype: D3D11_MAP,
mapflags: u32,
pmappedresource: *mut D3D11_MAPPED_SUBRESOURCE,
) -> windows_core::HRESULT {
unsafe {
let this: &Identity =
&*((this as *const *const ()).offset(OFFSET) as *const Identity);
ID3D11DeviceContext_Impl::Map(
this,
core::mem::transmute_copy(&presource),
core::mem::transmute_copy(&subresource),
core::mem::transmute_copy(&maptype),
core::mem::transmute_copy(&mapflags),
core::mem::transmute_copy(&pmappedresource),
)
.into()
}
}
unsafe extern "system" fn Unmap<Identity: ID3D11DeviceContext_Impl, const OFFSET: isize>(
this: *mut core::ffi::c_void,
presource: *mut core::ffi::c_void,
subresource: u32,
) {
unsafe {
let this: &Identity =
&*((this as *const *const ()).offset(OFFSET) as *const Identity);
ID3D11DeviceContext_Impl::Unmap(
this,
core::mem::transmute_copy(&presource),
core::mem::transmute_copy(&subresource),
)
}
}
unsafe extern "system" fn PSSetConstantBuffers<
Identity: ID3D11DeviceContext_Impl,
const OFFSET: isize,
>(
this: *mut core::ffi::c_void,
startslot: u32,
numbuffers: u32,
ppconstantbuffers: *const *mut core::ffi::c_void,
) {
unsafe {
let this: &Identity =
&*((this as *const *const ()).offset(OFFSET) as *const Identity);
ID3D11DeviceContext_Impl::PSSetConstantBuffers(
this,
core::mem::transmute_copy(&startslot),
core::mem::transmute_copy(&numbuffers),
core::mem::transmute_copy(&ppconstantbuffers),
)
}
}
unsafe extern "system" fn IASetInputLayout<
Identity: ID3D11DeviceContext_Impl,
const OFFSET: isize,
>(
this: *mut core::ffi::c_void,
pinputlayout: *mut core::ffi::c_void,
) {
unsafe {
let this: &Identity =
&*((this as *const *const ()).offset(OFFSET) as *const Identity);
ID3D11DeviceContext_Impl::IASetInputLayout(
this,
core::mem::transmute_copy(&pinputlayout),
)
}
}
unsafe extern "system" fn IASetVertexBuffers<
Identity: ID3D11DeviceContext_Impl,
const OFFSET: isize,
>(
this: *mut core::ffi::c_void,
startslot: u32,
numbuffers: u32,
ppvertexbuffers: *const *mut core::ffi::c_void,
pstrides: *const u32,
poffsets: *const u32,
) {
unsafe {
let this: &Identity =
&*((this as *const *const ()).offset(OFFSET) as *const Identity);
ID3D11DeviceContext_Impl::IASetVertexBuffers(
this,
core::mem::transmute_copy(&startslot),
core::mem::transmute_copy(&numbuffers),
core::mem::transmute_copy(&ppvertexbuffers),
core::mem::transmute_copy(&pstrides),
core::mem::transmute_copy(&poffsets),
)
}
}
unsafe extern "system" fn IASetIndexBuffer<
Identity: ID3D11DeviceContext_Impl,
const OFFSET: isize,
>(
this: *mut core::ffi::c_void,
pindexbuffer: *mut core::ffi::c_void,
format: crate::Dxgi::Common::DXGI_FORMAT,
offset: u32,
) {
unsafe {
let this: &Identity =
&*((this as *const *const ()).offset(OFFSET) as *const Identity);
ID3D11DeviceContext_Impl::IASetIndexBuffer(
this,
core::mem::transmute_copy(&pindexbuffer),
core::mem::transmute_copy(&format),
core::mem::transmute_copy(&offset),
)
}
}
unsafe extern "system" fn DrawIndexedInstanced<
Identity: ID3D11DeviceContext_Impl,
const OFFSET: isize,
>(
this: *mut core::ffi::c_void,
indexcountperinstance: u32,
instancecount: u32,
startindexlocation: u32,
basevertexlocation: i32,
startinstancelocation: u32,
) {
unsafe {
let this: &Identity =
&*((this as *const *const ()).offset(OFFSET) as *const Identity);
ID3D11DeviceContext_Impl::DrawIndexedInstanced(
this,
core::mem::transmute_copy(&indexcountperinstance),
core::mem::transmute_copy(&instancecount),
core::mem::transmute_copy(&startindexlocation),
core::mem::transmute_copy(&basevertexlocation),
core::mem::transmute_copy(&startinstancelocation),
)
}
}
unsafe extern "system" fn DrawInstanced<
Identity: ID3D11DeviceContext_Impl,
const OFFSET: isize,
>(
this: *mut core::ffi::c_void,
vertexcountperinstance: u32,
instancecount: u32,
startvertexlocation: u32,
startinstancelocation: u32,
) {
unsafe {
let this: &Identity =
&*((this as *const *const ()).offset(OFFSET) as *const Identity);
ID3D11DeviceContext_Impl::DrawInstanced(
this,
core::mem::transmute_copy(&vertexcountperinstance),
core::mem::transmute_copy(&instancecount),
core::mem::transmute_copy(&startvertexlocation),
core::mem::transmute_copy(&startinstancelocation),
)
}
}
unsafe extern "system" fn GSSetConstantBuffers<
Identity: ID3D11DeviceContext_Impl,
const OFFSET: isize,
>(
this: *mut core::ffi::c_void,
startslot: u32,
numbuffers: u32,
ppconstantbuffers: *const *mut core::ffi::c_void,
) {
unsafe {
let this: &Identity =
&*((this as *const *const ()).offset(OFFSET) as *const Identity);
ID3D11DeviceContext_Impl::GSSetConstantBuffers(
this,
core::mem::transmute_copy(&startslot),
core::mem::transmute_copy(&numbuffers),
core::mem::transmute_copy(&ppconstantbuffers),
)
}
}
unsafe extern "system" fn GSSetShader<
Identity: ID3D11DeviceContext_Impl,
const OFFSET: isize,
>(
this: *mut core::ffi::c_void,
pshader: *mut core::ffi::c_void,
ppclassinstances: *const *mut core::ffi::c_void,
numclassinstances: u32,
) {
unsafe {
let this: &Identity =
&*((this as *const *const ()).offset(OFFSET) as *const Identity);
ID3D11DeviceContext_Impl::GSSetShader(
this,
core::mem::transmute_copy(&pshader),
core::mem::transmute_copy(&ppclassinstances),
core::mem::transmute_copy(&numclassinstances),
)
}
}
unsafe extern "system" fn IASetPrimitiveTopology<
Identity: ID3D11DeviceContext_Impl,
const OFFSET: isize,
>(
this: *mut core::ffi::c_void,
topology: super::Direct3D::D3D_PRIMITIVE_TOPOLOGY,
) {
unsafe {
let this: &Identity =
&*((this as *const *const ()).offset(OFFSET) as *const Identity);
ID3D11DeviceContext_Impl::IASetPrimitiveTopology(
this,
core::mem::transmute_copy(&topology),
)
}
}
unsafe extern "system" fn VSSetShaderResources<
Identity: ID3D11DeviceContext_Impl,
const OFFSET: isize,
>(
this: *mut core::ffi::c_void,
startslot: u32,
numviews: u32,
ppshaderresourceviews: *const *mut core::ffi::c_void,
) {
unsafe {
let this: &Identity =
&*((this as *const *const ()).offset(OFFSET) as *const Identity);
ID3D11DeviceContext_Impl::VSSetShaderResources(
this,
core::mem::transmute_copy(&startslot),
core::mem::transmute_copy(&numviews),
core::mem::transmute_copy(&ppshaderresourceviews),
)
}
}
unsafe extern "system" fn VSSetSamplers<
Identity: ID3D11DeviceContext_Impl,
const OFFSET: isize,
>(
this: *mut core::ffi::c_void,
startslot: u32,
numsamplers: u32,
ppsamplers: *const *mut core::ffi::c_void,
) {
unsafe {
let this: &Identity =
&*((this as *const *const ()).offset(OFFSET) as *const Identity);
ID3D11DeviceContext_Impl::VSSetSamplers(
this,
core::mem::transmute_copy(&startslot),
core::mem::transmute_copy(&numsamplers),
core::mem::transmute_copy(&ppsamplers),
)
}
}
unsafe extern "system" fn Begin<Identity: ID3D11DeviceContext_Impl, const OFFSET: isize>(
this: *mut core::ffi::c_void,
pasync: *mut core::ffi::c_void,
) {
unsafe {
let this: &Identity =
&*((this as *const *const ()).offset(OFFSET) as *const Identity);
ID3D11DeviceContext_Impl::Begin(this, core::mem::transmute_copy(&pasync))
}
}
unsafe extern "system" fn End<Identity: ID3D11DeviceContext_Impl, const OFFSET: isize>(
this: *mut core::ffi::c_void,
pasync: *mut core::ffi::c_void,
) {
unsafe {
let this: &Identity =
&*((this as *const *const ()).offset(OFFSET) as *const Identity);
ID3D11DeviceContext_Impl::End(this, core::mem::transmute_copy(&pasync))
}
}
unsafe extern "system" fn GetData<
Identity: ID3D11DeviceContext_Impl,
const OFFSET: isize,
>(
this: *mut core::ffi::c_void,
pasync: *mut core::ffi::c_void,
pdata: *mut core::ffi::c_void,
datasize: u32,
getdataflags: u32,
) -> windows_core::HRESULT {
unsafe {
let this: &Identity =
&*((this as *const *const ()).offset(OFFSET) as *const Identity);
ID3D11DeviceContext_Impl::GetData(
this,
core::mem::transmute_copy(&pasync),
core::mem::transmute_copy(&pdata),
core::mem::transmute_copy(&datasize),
core::mem::transmute_copy(&getdataflags),
)
.into()
}
}
unsafe extern "system" fn SetPredication<
Identity: ID3D11DeviceContext_Impl,
const OFFSET: isize,
>(
this: *mut core::ffi::c_void,
ppredicate: *mut core::ffi::c_void,
predicatevalue: crate::Foundation::BOOL,
) {
unsafe {
let this: &Identity =
&*((this as *const *const ()).offset(OFFSET) as *const Identity);
ID3D11DeviceContext_Impl::SetPredication(
this,
core::mem::transmute_copy(&ppredicate),
core::mem::transmute_copy(&predicatevalue),
)
}
}
unsafe extern "system" fn GSSetShaderResources<
Identity: ID3D11DeviceContext_Impl,
const OFFSET: isize,
>(
this: *mut core::ffi::c_void,
startslot: u32,
numviews: u32,
ppshaderresourceviews: *const *mut core::ffi::c_void,
) {
unsafe {
let this: &Identity =
&*((this as *const *const ()).offset(OFFSET) as *const Identity);
ID3D11DeviceContext_Impl::GSSetShaderResources(
this,
core::mem::transmute_copy(&startslot),
core::mem::transmute_copy(&numviews),
core::mem::transmute_copy(&ppshaderresourceviews),
)
}
}
unsafe extern "system" fn GSSetSamplers<
Identity: ID3D11DeviceContext_Impl,
const OFFSET: isize,
>(
this: *mut core::ffi::c_void,
startslot: u32,
numsamplers: u32,
ppsamplers: *const *mut core::ffi::c_void,
) {
unsafe {
let this: &Identity =
&*((this as *const *const ()).offset(OFFSET) as *const Identity);
ID3D11DeviceContext_Impl::GSSetSamplers(
this,
core::mem::transmute_copy(&startslot),
core::mem::transmute_copy(&numsamplers),
core::mem::transmute_copy(&ppsamplers),
)
}
}
unsafe extern "system" fn OMSetRenderTargets<
Identity: ID3D11DeviceContext_Impl,
const OFFSET: isize,
>(
this: *mut core::ffi::c_void,
numviews: u32,
pprendertargetviews: *const *mut core::ffi::c_void,
pdepthstencilview: *mut core::ffi::c_void,
) {
unsafe {
let this: &Identity =
&*((this as *const *const ()).offset(OFFSET) as *const Identity);
ID3D11DeviceContext_Impl::OMSetRenderTargets(
this,
core::mem::transmute_copy(&numviews),
core::mem::transmute_copy(&pprendertargetviews),
core::mem::transmute_copy(&pdepthstencilview),
)
}
}
unsafe extern "system" fn OMSetRenderTargetsAndUnorderedAccessViews<
Identity: ID3D11DeviceContext_Impl,
const OFFSET: isize,
>(
this: *mut core::ffi::c_void,
numrtvs: u32,
pprendertargetviews: *const *mut core::ffi::c_void,
pdepthstencilview: *mut core::ffi::c_void,
uavstartslot: u32,
numuavs: u32,
ppunorderedaccessviews: *const *mut core::ffi::c_void,
puavinitialcounts: *const u32,
) {
unsafe {
let this: &Identity =
&*((this as *const *const ()).offset(OFFSET) as *const Identity);
ID3D11DeviceContext_Impl::OMSetRenderTargetsAndUnorderedAccessViews(
this,
core::mem::transmute_copy(&numrtvs),
core::mem::transmute_copy(&pprendertargetviews),
core::mem::transmute_copy(&pdepthstencilview),
core::mem::transmute_copy(&uavstartslot),
core::mem::transmute_copy(&numuavs),
core::mem::transmute_copy(&ppunorderedaccessviews),
core::mem::transmute_copy(&puavinitialcounts),
)
}
}
unsafe extern "system" fn OMSetBlendState<
Identity: ID3D11DeviceContext_Impl,
const OFFSET: isize,
>(
this: *mut core::ffi::c_void,
pblendstate: *mut core::ffi::c_void,
blendfactor: *const f32,
samplemask: u32,
) {
unsafe {
let this: &Identity =
&*((this as *const *const ()).offset(OFFSET) as *const Identity);
ID3D11DeviceContext_Impl::OMSetBlendState(
this,
core::mem::transmute_copy(&pblendstate),
core::mem::transmute_copy(&blendfactor),
core::mem::transmute_copy(&samplemask),
)
}
}
unsafe extern "system" fn OMSetDepthStencilState<
Identity: ID3D11DeviceContext_Impl,
const OFFSET: isize,
>(
this: *mut core::ffi::c_void,
pdepthstencilstate: *mut core::ffi::c_void,
stencilref: u32,
) {
unsafe {
let this: &Identity =
&*((this as *const *const ()).offset(OFFSET) as *const Identity);
ID3D11DeviceContext_Impl::OMSetDepthStencilState(
this,
core::mem::transmute_copy(&pdepthstencilstate),
core::mem::transmute_copy(&stencilref),
)
}
}
unsafe extern "system" fn SOSetTargets<
Identity: ID3D11DeviceContext_Impl,
const OFFSET: isize,
>(
this: *mut core::ffi::c_void,
numbuffers: u32,
ppsotargets: *const *mut core::ffi::c_void,
poffsets: *const u32,
) {
unsafe {
let this: &Identity =
&*((this as *const *const ()).offset(OFFSET) as *const Identity);
ID3D11DeviceContext_Impl::SOSetTargets(
this,
core::mem::transmute_copy(&numbuffers),
core::mem::transmute_copy(&ppsotargets),
core::mem::transmute_copy(&poffsets),
)
}
}
unsafe extern "system" fn DrawAuto<
Identity: ID3D11DeviceContext_Impl,
const OFFSET: isize,
>(
this: *mut core::ffi::c_void,
) {
unsafe {
let this: &Identity =
&*((this as *const *const ()).offset(OFFSET) as *const Identity);
ID3D11DeviceContext_Impl::DrawAuto(this)
}
}
unsafe extern "system" fn DrawIndexedInstancedIndirect<
Identity: ID3D11DeviceContext_Impl,
const OFFSET: isize,
>(
this: *mut core::ffi::c_void,
pbufferforargs: *mut core::ffi::c_void,
alignedbyteoffsetforargs: u32,
) {
unsafe {
let this: &Identity =
&*((this as *const *const ()).offset(OFFSET) as *const Identity);
ID3D11DeviceContext_Impl::DrawIndexedInstancedIndirect(
this,
core::mem::transmute_copy(&pbufferforargs),
core::mem::transmute_copy(&alignedbyteoffsetforargs),
)
}
}
unsafe extern "system" fn DrawInstancedIndirect<
Identity: ID3D11DeviceContext_Impl,
const OFFSET: isize,
>(
this: *mut core::ffi::c_void,
pbufferforargs: *mut core::ffi::c_void,
alignedbyteoffsetforargs: u32,
) {
unsafe {
let this: &Identity =
&*((this as *const *const ()).offset(OFFSET) as *const Identity);
ID3D11DeviceContext_Impl::DrawInstancedIndirect(
this,
core::mem::transmute_copy(&pbufferforargs),
core::mem::transmute_copy(&alignedbyteoffsetforargs),
)
}
}
unsafe extern "system" fn Dispatch<
Identity: ID3D11DeviceContext_Impl,
const OFFSET: isize,
>(
this: *mut core::ffi::c_void,
threadgroupcountx: u32,
threadgroupcounty: u32,
threadgroupcountz: u32,
) {
unsafe {
let this: &Identity =
&*((this as *const *const ()).offset(OFFSET) as *const Identity);
ID3D11DeviceContext_Impl::Dispatch(
this,
core::mem::transmute_copy(&threadgroupcountx),
core::mem::transmute_copy(&threadgroupcounty),
core::mem::transmute_copy(&threadgroupcountz),
)
}
}
unsafe extern "system" fn DispatchIndirect<
Identity: ID3D11DeviceContext_Impl,
const OFFSET: isize,
>(
this: *mut core::ffi::c_void,
pbufferforargs: *mut core::ffi::c_void,
alignedbyteoffsetforargs: u32,
) {
unsafe {
let this: &Identity =
&*((this as *const *const ()).offset(OFFSET) as *const Identity);
ID3D11DeviceContext_Impl::DispatchIndirect(
this,
core::mem::transmute_copy(&pbufferforargs),
core::mem::transmute_copy(&alignedbyteoffsetforargs),
)
}
}
unsafe extern "system" fn RSSetState<
Identity: ID3D11DeviceContext_Impl,
const OFFSET: isize,
>(
this: *mut core::ffi::c_void,
prasterizerstate: *mut core::ffi::c_void,
) {
unsafe {
let this: &Identity =
&*((this as *const *const ()).offset(OFFSET) as *const Identity);
ID3D11DeviceContext_Impl::RSSetState(
this,
core::mem::transmute_copy(&prasterizerstate),
)
}
}
unsafe extern "system" fn RSSetViewports<
Identity: ID3D11DeviceContext_Impl,
const OFFSET: isize,
>(
this: *mut core::ffi::c_void,
numviewports: u32,
pviewports: *const D3D11_VIEWPORT,
) {
unsafe {
let this: &Identity =
&*((this as *const *const ()).offset(OFFSET) as *const Identity);
ID3D11DeviceContext_Impl::RSSetViewports(
this,
core::mem::transmute_copy(&numviewports),
core::mem::transmute_copy(&pviewports),
)
}
}
unsafe extern "system" fn RSSetScissorRects<
Identity: ID3D11DeviceContext_Impl,
const OFFSET: isize,
>(
this: *mut core::ffi::c_void,
numrects: u32,
prects: *const crate::Foundation::RECT,
) {
unsafe {
let this: &Identity =
&*((this as *const *const ()).offset(OFFSET) as *const Identity);
ID3D11DeviceContext_Impl::RSSetScissorRects(
this,
core::mem::transmute_copy(&numrects),
core::mem::transmute_copy(&prects),
)
}
}
unsafe extern "system" fn CopySubresourceRegion<
Identity: ID3D11DeviceContext_Impl,
const OFFSET: isize,
>(
this: *mut core::ffi::c_void,
pdstresource: *mut core::ffi::c_void,
dstsubresource: u32,
dstx: u32,
dsty: u32,
dstz: u32,
psrcresource: *mut core::ffi::c_void,
srcsubresource: u32,
psrcbox: *const D3D11_BOX,
) {
unsafe {
let this: &Identity =
&*((this as *const *const ()).offset(OFFSET) as *const Identity);
ID3D11DeviceContext_Impl::CopySubresourceRegion(
this,
core::mem::transmute_copy(&pdstresource),
core::mem::transmute_copy(&dstsubresource),
core::mem::transmute_copy(&dstx),
core::mem::transmute_copy(&dsty),
core::mem::transmute_copy(&dstz),
core::mem::transmute_copy(&psrcresource),
core::mem::transmute_copy(&srcsubresource),
core::mem::transmute_copy(&psrcbox),
)
}
}
unsafe extern "system" fn CopyResource<
Identity: ID3D11DeviceContext_Impl,
const OFFSET: isize,
>(
this: *mut core::ffi::c_void,
pdstresource: *mut core::ffi::c_void,
psrcresource: *mut core::ffi::c_void,
) {
unsafe {
let this: &Identity =
&*((this as *const *const ()).offset(OFFSET) as *const Identity);
ID3D11DeviceContext_Impl::CopyResource(
this,
core::mem::transmute_copy(&pdstresource),
core::mem::transmute_copy(&psrcresource),
)
}
}
unsafe extern "system" fn UpdateSubresource<
Identity: ID3D11DeviceContext_Impl,
const OFFSET: isize,
>(
this: *mut core::ffi::c_void,
pdstresource: *mut core::ffi::c_void,
dstsubresource: u32,
pdstbox: *const D3D11_BOX,
psrcdata: *const core::ffi::c_void,
srcrowpitch: u32,
srcdepthpitch: u32,
) {
unsafe {
let this: &Identity =
&*((this as *const *const ()).offset(OFFSET) as *const Identity);
ID3D11DeviceContext_Impl::UpdateSubresource(
this,
core::mem::transmute_copy(&pdstresource),
core::mem::transmute_copy(&dstsubresource),
core::mem::transmute_copy(&pdstbox),
core::mem::transmute_copy(&psrcdata),
core::mem::transmute_copy(&srcrowpitch),
core::mem::transmute_copy(&srcdepthpitch),
)
}
}
unsafe extern "system" fn CopyStructureCount<
Identity: ID3D11DeviceContext_Impl,
const OFFSET: isize,
>(
this: *mut core::ffi::c_void,
pdstbuffer: *mut core::ffi::c_void,
dstalignedbyteoffset: u32,
psrcview: *mut core::ffi::c_void,
) {
unsafe {
let this: &Identity =
&*((this as *const *const ()).offset(OFFSET) as *const Identity);
ID3D11DeviceContext_Impl::CopyStructureCount(
this,
core::mem::transmute_copy(&pdstbuffer),
core::mem::transmute_copy(&dstalignedbyteoffset),
core::mem::transmute_copy(&psrcview),
)
}
}
unsafe extern "system" fn ClearRenderTargetView<
Identity: ID3D11DeviceContext_Impl,
const OFFSET: isize,
>(
this: *mut core::ffi::c_void,
prendertargetview: *mut core::ffi::c_void,
colorrgba: *const f32,
) {
unsafe {
let this: &Identity =
&*((this as *const *const ()).offset(OFFSET) as *const Identity);
ID3D11DeviceContext_Impl::ClearRenderTargetView(
this,
core::mem::transmute_copy(&prendertargetview),
core::mem::transmute_copy(&colorrgba),
)
}
}
unsafe extern "system" fn ClearUnorderedAccessViewUint<
Identity: ID3D11DeviceContext_Impl,
const OFFSET: isize,
>(
this: *mut core::ffi::c_void,
punorderedaccessview: *mut core::ffi::c_void,
values: *const u32,
) {
unsafe {
let this: &Identity =
&*((this as *const *const ()).offset(OFFSET) as *const Identity);
ID3D11DeviceContext_Impl::ClearUnorderedAccessViewUint(
this,
core::mem::transmute_copy(&punorderedaccessview),
core::mem::transmute_copy(&values),
)
}
}
unsafe extern "system" fn ClearUnorderedAccessViewFloat<
Identity: ID3D11DeviceContext_Impl,
const OFFSET: isize,
>(
this: *mut core::ffi::c_void,
punorderedaccessview: *mut core::ffi::c_void,
values: *const f32,
) {
unsafe {
let this: &Identity =
&*((this as *const *const ()).offset(OFFSET) as *const Identity);
ID3D11DeviceContext_Impl::ClearUnorderedAccessViewFloat(
this,
core::mem::transmute_copy(&punorderedaccessview),
core::mem::transmute_copy(&values),
)
}
}
unsafe extern "system" fn ClearDepthStencilView<
Identity: ID3D11DeviceContext_Impl,
const OFFSET: isize,
>(
this: *mut core::ffi::c_void,
pdepthstencilview: *mut core::ffi::c_void,
clearflags: u32,
depth: f32,
stencil: u8,
) {
unsafe {
let this: &Identity =
&*((this as *const *const ()).offset(OFFSET) as *const Identity);
ID3D11DeviceContext_Impl::ClearDepthStencilView(
this,
core::mem::transmute_copy(&pdepthstencilview),
core::mem::transmute_copy(&clearflags),
core::mem::transmute_copy(&depth),
core::mem::transmute_copy(&stencil),
)
}
}
unsafe extern "system" fn GenerateMips<
Identity: ID3D11DeviceContext_Impl,
const OFFSET: isize,
>(
this: *mut core::ffi::c_void,
pshaderresourceview: *mut core::ffi::c_void,
) {
unsafe {
let this: &Identity =
&*((this as *const *const ()).offset(OFFSET) as *const Identity);
ID3D11DeviceContext_Impl::GenerateMips(
this,
core::mem::transmute_copy(&pshaderresourceview),
)
}
}
unsafe extern "system" fn SetResourceMinLOD<
Identity: ID3D11DeviceContext_Impl,
const OFFSET: isize,
>(
this: *mut core::ffi::c_void,
presource: *mut core::ffi::c_void,
minlod: f32,
) {
unsafe {
let this: &Identity =
&*((this as *const *const ()).offset(OFFSET) as *const Identity);
ID3D11DeviceContext_Impl::SetResourceMinLOD(
this,
core::mem::transmute_copy(&presource),
core::mem::transmute_copy(&minlod),
)
}
}
unsafe extern "system" fn GetResourceMinLOD<
Identity: ID3D11DeviceContext_Impl,
const OFFSET: isize,
>(
this: *mut core::ffi::c_void,
presource: *mut core::ffi::c_void,
) -> f32 {
unsafe {
let this: &Identity =
&*((this as *const *const ()).offset(OFFSET) as *const Identity);
ID3D11DeviceContext_Impl::GetResourceMinLOD(
this,
core::mem::transmute_copy(&presource),
)
}
}
unsafe extern "system" fn ResolveSubresource<
Identity: ID3D11DeviceContext_Impl,
const OFFSET: isize,
>(
this: *mut core::ffi::c_void,
pdstresource: *mut core::ffi::c_void,
dstsubresource: u32,
psrcresource: *mut core::ffi::c_void,
srcsubresource: u32,
format: crate::Dxgi::Common::DXGI_FORMAT,
) {
unsafe {
let this: &Identity =
&*((this as *const *const ()).offset(OFFSET) as *const Identity);
ID3D11DeviceContext_Impl::ResolveSubresource(
this,
core::mem::transmute_copy(&pdstresource),
core::mem::transmute_copy(&dstsubresource),
core::mem::transmute_copy(&psrcresource),
core::mem::transmute_copy(&srcsubresource),
core::mem::transmute_copy(&format),
)
}
}
unsafe extern "system" fn ExecuteCommandList<
Identity: ID3D11DeviceContext_Impl,
const OFFSET: isize,
>(
this: *mut core::ffi::c_void,
pcommandlist: *mut core::ffi::c_void,
restorecontextstate: crate::Foundation::BOOL,
) {
unsafe {
let this: &Identity =
&*((this as *const *const ()).offset(OFFSET) as *const Identity);
ID3D11DeviceContext_Impl::ExecuteCommandList(
this,
core::mem::transmute_copy(&pcommandlist),
core::mem::transmute_copy(&restorecontextstate),
)
}
}
unsafe extern "system" fn HSSetShaderResources<
Identity: ID3D11DeviceContext_Impl,
const OFFSET: isize,
>(
this: *mut core::ffi::c_void,
startslot: u32,
numviews: u32,
ppshaderresourceviews: *const *mut core::ffi::c_void,
) {
unsafe {
let this: &Identity =
&*((this as *const *const ()).offset(OFFSET) as *const Identity);
ID3D11DeviceContext_Impl::HSSetShaderResources(
this,
core::mem::transmute_copy(&startslot),
core::mem::transmute_copy(&numviews),
core::mem::transmute_copy(&ppshaderresourceviews),
)
}
}
unsafe extern "system" fn HSSetShader<
Identity: ID3D11DeviceContext_Impl,
const OFFSET: isize,
>(
this: *mut core::ffi::c_void,
phullshader: *mut core::ffi::c_void,
ppclassinstances: *const *mut core::ffi::c_void,
numclassinstances: u32,
) {
unsafe {
let this: &Identity =
&*((this as *const *const ()).offset(OFFSET) as *const Identity);
ID3D11DeviceContext_Impl::HSSetShader(
this,
core::mem::transmute_copy(&phullshader),
core::mem::transmute_copy(&ppclassinstances),
core::mem::transmute_copy(&numclassinstances),
)
}
}
unsafe extern "system" fn HSSetSamplers<
Identity: ID3D11DeviceContext_Impl,
const OFFSET: isize,
>(
this: *mut core::ffi::c_void,
startslot: u32,
numsamplers: u32,
ppsamplers: *const *mut core::ffi::c_void,
) {
unsafe {
let this: &Identity =
&*((this as *const *const ()).offset(OFFSET) as *const Identity);
ID3D11DeviceContext_Impl::HSSetSamplers(
this,
core::mem::transmute_copy(&startslot),
core::mem::transmute_copy(&numsamplers),
core::mem::transmute_copy(&ppsamplers),
)
}
}
unsafe extern "system" fn HSSetConstantBuffers<
Identity: ID3D11DeviceContext_Impl,
const OFFSET: isize,
>(
this: *mut core::ffi::c_void,
startslot: u32,
numbuffers: u32,
ppconstantbuffers: *const *mut core::ffi::c_void,
) {
unsafe {
let this: &Identity =
&*((this as *const *const ()).offset(OFFSET) as *const Identity);
ID3D11DeviceContext_Impl::HSSetConstantBuffers(
this,
core::mem::transmute_copy(&startslot),
core::mem::transmute_copy(&numbuffers),
core::mem::transmute_copy(&ppconstantbuffers),
)
}
}
unsafe extern "system" fn DSSetShaderResources<
Identity: ID3D11DeviceContext_Impl,
const OFFSET: isize,
>(
this: *mut core::ffi::c_void,
startslot: u32,
numviews: u32,
ppshaderresourceviews: *const *mut core::ffi::c_void,
) {
unsafe {
let this: &Identity =
&*((this as *const *const ()).offset(OFFSET) as *const Identity);
ID3D11DeviceContext_Impl::DSSetShaderResources(
this,
core::mem::transmute_copy(&startslot),
core::mem::transmute_copy(&numviews),
core::mem::transmute_copy(&ppshaderresourceviews),
)
}
}
unsafe extern "system" fn DSSetShader<
Identity: ID3D11DeviceContext_Impl,
const OFFSET: isize,
>(
this: *mut core::ffi::c_void,
pdomainshader: *mut core::ffi::c_void,
ppclassinstances: *const *mut core::ffi::c_void,
numclassinstances: u32,
) {
unsafe {
let this: &Identity =
&*((this as *const *const ()).offset(OFFSET) as *const Identity);
ID3D11DeviceContext_Impl::DSSetShader(
this,
core::mem::transmute_copy(&pdomainshader),
core::mem::transmute_copy(&ppclassinstances),
core::mem::transmute_copy(&numclassinstances),
)
}
}
unsafe extern "system" fn DSSetSamplers<
Identity: ID3D11DeviceContext_Impl,
const OFFSET: isize,
>(
this: *mut core::ffi::c_void,
startslot: u32,
numsamplers: u32,
ppsamplers: *const *mut core::ffi::c_void,
) {
unsafe {
let this: &Identity =
&*((this as *const *const ()).offset(OFFSET) as *const Identity);
ID3D11DeviceContext_Impl::DSSetSamplers(
this,
core::mem::transmute_copy(&startslot),
core::mem::transmute_copy(&numsamplers),
core::mem::transmute_copy(&ppsamplers),
)
}
}
unsafe extern "system" fn DSSetConstantBuffers<
Identity: ID3D11DeviceContext_Impl,
const OFFSET: isize,
>(
this: *mut core::ffi::c_void,
startslot: u32,
numbuffers: u32,
ppconstantbuffers: *const *mut core::ffi::c_void,
) {
unsafe {
let this: &Identity =
&*((this as *const *const ()).offset(OFFSET) as *const Identity);
ID3D11DeviceContext_Impl::DSSetConstantBuffers(
this,
core::mem::transmute_copy(&startslot),
core::mem::transmute_copy(&numbuffers),
core::mem::transmute_copy(&ppconstantbuffers),
)
}
}
unsafe extern "system" fn CSSetShaderResources<
Identity: ID3D11DeviceContext_Impl,
const OFFSET: isize,
>(
this: *mut core::ffi::c_void,
startslot: u32,
numviews: u32,
ppshaderresourceviews: *const *mut core::ffi::c_void,
) {
unsafe {
let this: &Identity =
&*((this as *const *const ()).offset(OFFSET) as *const Identity);
ID3D11DeviceContext_Impl::CSSetShaderResources(
this,
core::mem::transmute_copy(&startslot),
core::mem::transmute_copy(&numviews),
core::mem::transmute_copy(&ppshaderresourceviews),
)
}
}
unsafe extern "system" fn CSSetUnorderedAccessViews<
Identity: ID3D11DeviceContext_Impl,
const OFFSET: isize,
>(
this: *mut core::ffi::c_void,
startslot: u32,
numuavs: u32,
ppunorderedaccessviews: *const *mut core::ffi::c_void,
puavinitialcounts: *const u32,
) {
unsafe {
let this: &Identity =
&*((this as *const *const ()).offset(OFFSET) as *const Identity);
ID3D11DeviceContext_Impl::CSSetUnorderedAccessViews(
this,
core::mem::transmute_copy(&startslot),
core::mem::transmute_copy(&numuavs),
core::mem::transmute_copy(&ppunorderedaccessviews),
core::mem::transmute_copy(&puavinitialcounts),
)
}
}
unsafe extern "system" fn CSSetShader<
Identity: ID3D11DeviceContext_Impl,
const OFFSET: isize,
>(
this: *mut core::ffi::c_void,
pcomputeshader: *mut core::ffi::c_void,
ppclassinstances: *const *mut core::ffi::c_void,
numclassinstances: u32,
) {
unsafe {
let this: &Identity =
&*((this as *const *const ()).offset(OFFSET) as *const Identity);
ID3D11DeviceContext_Impl::CSSetShader(
this,
core::mem::transmute_copy(&pcomputeshader),
core::mem::transmute_copy(&ppclassinstances),
core::mem::transmute_copy(&numclassinstances),
)
}
}
unsafe extern "system" fn CSSetSamplers<
Identity: ID3D11DeviceContext_Impl,
const OFFSET: isize,
>(
this: *mut core::ffi::c_void,
startslot: u32,
numsamplers: u32,
ppsamplers: *const *mut core::ffi::c_void,
) {
unsafe {
let this: &Identity =
&*((this as *const *const ()).offset(OFFSET) as *const Identity);
ID3D11DeviceContext_Impl::CSSetSamplers(
this,
core::mem::transmute_copy(&startslot),
core::mem::transmute_copy(&numsamplers),
core::mem::transmute_copy(&ppsamplers),
)
}
}
unsafe extern "system" fn CSSetConstantBuffers<
Identity: ID3D11DeviceContext_Impl,
const OFFSET: isize,
>(
this: *mut core::ffi::c_void,
startslot: u32,
numbuffers: u32,
ppconstantbuffers: *const *mut core::ffi::c_void,
) {
unsafe {
let this: &Identity =
&*((this as *const *const ()).offset(OFFSET) as *const Identity);
ID3D11DeviceContext_Impl::CSSetConstantBuffers(
this,
core::mem::transmute_copy(&startslot),
core::mem::transmute_copy(&numbuffers),
core::mem::transmute_copy(&ppconstantbuffers),
)
}
}
unsafe extern "system" fn VSGetConstantBuffers<
Identity: ID3D11DeviceContext_Impl,
const OFFSET: isize,
>(
this: *mut core::ffi::c_void,
startslot: u32,
numbuffers: u32,
ppconstantbuffers: *mut *mut core::ffi::c_void,
) {
unsafe {
let this: &Identity =
&*((this as *const *const ()).offset(OFFSET) as *const Identity);
ID3D11DeviceContext_Impl::VSGetConstantBuffers(
this,
core::mem::transmute_copy(&startslot),
core::mem::transmute_copy(&numbuffers),
core::mem::transmute_copy(&ppconstantbuffers),
)
}
}
unsafe extern "system" fn PSGetShaderResources<
Identity: ID3D11DeviceContext_Impl,
const OFFSET: isize,
>(
this: *mut core::ffi::c_void,
startslot: u32,
numviews: u32,
ppshaderresourceviews: *mut *mut core::ffi::c_void,
) {
unsafe {
let this: &Identity =
&*((this as *const *const ()).offset(OFFSET) as *const Identity);
ID3D11DeviceContext_Impl::PSGetShaderResources(
this,
core::mem::transmute_copy(&startslot),
core::mem::transmute_copy(&numviews),
core::mem::transmute_copy(&ppshaderresourceviews),
)
}
}
unsafe extern "system" fn PSGetShader<
Identity: ID3D11DeviceContext_Impl,
const OFFSET: isize,
>(
this: *mut core::ffi::c_void,
pppixelshader: *mut *mut core::ffi::c_void,
ppclassinstances: *mut *mut core::ffi::c_void,
pnumclassinstances: *mut u32,
) {
unsafe {
let this: &Identity =
&*((this as *const *const ()).offset(OFFSET) as *const Identity);
ID3D11DeviceContext_Impl::PSGetShader(
this,
core::mem::transmute_copy(&pppixelshader),
core::mem::transmute_copy(&ppclassinstances),
core::mem::transmute_copy(&pnumclassinstances),
)
}
}
unsafe extern "system" fn PSGetSamplers<
Identity: ID3D11DeviceContext_Impl,
const OFFSET: isize,
>(
this: *mut core::ffi::c_void,
startslot: u32,
numsamplers: u32,
ppsamplers: *mut *mut core::ffi::c_void,
) {
unsafe {
let this: &Identity =
&*((this as *const *const ()).offset(OFFSET) as *const Identity);
ID3D11DeviceContext_Impl::PSGetSamplers(
this,
core::mem::transmute_copy(&startslot),
core::mem::transmute_copy(&numsamplers),
core::mem::transmute_copy(&ppsamplers),
)
}
}
unsafe extern "system" fn VSGetShader<
Identity: ID3D11DeviceContext_Impl,
const OFFSET: isize,
>(
this: *mut core::ffi::c_void,
ppvertexshader: *mut *mut core::ffi::c_void,
ppclassinstances: *mut *mut core::ffi::c_void,
pnumclassinstances: *mut u32,
) {
unsafe {
let this: &Identity =
&*((this as *const *const ()).offset(OFFSET) as *const Identity);
ID3D11DeviceContext_Impl::VSGetShader(
this,
core::mem::transmute_copy(&ppvertexshader),
core::mem::transmute_copy(&ppclassinstances),
core::mem::transmute_copy(&pnumclassinstances),
)
}
}
unsafe extern "system" fn PSGetConstantBuffers<
Identity: ID3D11DeviceContext_Impl,
const OFFSET: isize,
>(
this: *mut core::ffi::c_void,
startslot: u32,
numbuffers: u32,
ppconstantbuffers: *mut *mut core::ffi::c_void,
) {
unsafe {
let this: &Identity =
&*((this as *const *const ()).offset(OFFSET) as *const Identity);
ID3D11DeviceContext_Impl::PSGetConstantBuffers(
this,
core::mem::transmute_copy(&startslot),
core::mem::transmute_copy(&numbuffers),
core::mem::transmute_copy(&ppconstantbuffers),
)
}
}
unsafe extern "system" fn IAGetInputLayout<
Identity: ID3D11DeviceContext_Impl,
const OFFSET: isize,
>(
this: *mut core::ffi::c_void,
ppinputlayout: *mut *mut core::ffi::c_void,
) {
unsafe {
let this: &Identity =
&*((this as *const *const ()).offset(OFFSET) as *const Identity);
ID3D11DeviceContext_Impl::IAGetInputLayout(
this,
core::mem::transmute_copy(&ppinputlayout),
)
}
}
unsafe extern "system" fn IAGetVertexBuffers<
Identity: ID3D11DeviceContext_Impl,
const OFFSET: isize,
>(
this: *mut core::ffi::c_void,
startslot: u32,
numbuffers: u32,
ppvertexbuffers: *mut *mut core::ffi::c_void,
pstrides: *mut u32,
poffsets: *mut u32,
) {
unsafe {
let this: &Identity =
&*((this as *const *const ()).offset(OFFSET) as *const Identity);
ID3D11DeviceContext_Impl::IAGetVertexBuffers(
this,
core::mem::transmute_copy(&startslot),
core::mem::transmute_copy(&numbuffers),
core::mem::transmute_copy(&ppvertexbuffers),
core::mem::transmute_copy(&pstrides),
core::mem::transmute_copy(&poffsets),
)
}
}
unsafe extern "system" fn IAGetIndexBuffer<
Identity: ID3D11DeviceContext_Impl,
const OFFSET: isize,
>(
this: *mut core::ffi::c_void,
pindexbuffer: *mut *mut core::ffi::c_void,
format: *mut crate::Dxgi::Common::DXGI_FORMAT,
offset: *mut u32,
) {
unsafe {
let this: &Identity =
&*((this as *const *const ()).offset(OFFSET) as *const Identity);
ID3D11DeviceContext_Impl::IAGetIndexBuffer(
this,
core::mem::transmute_copy(&pindexbuffer),
core::mem::transmute_copy(&format),
core::mem::transmute_copy(&offset),
)
}
}
unsafe extern "system" fn GSGetConstantBuffers<
Identity: ID3D11DeviceContext_Impl,
const OFFSET: isize,
>(
this: *mut core::ffi::c_void,
startslot: u32,
numbuffers: u32,
ppconstantbuffers: *mut *mut core::ffi::c_void,
) {
unsafe {
let this: &Identity =
&*((this as *const *const ()).offset(OFFSET) as *const Identity);
ID3D11DeviceContext_Impl::GSGetConstantBuffers(
this,
core::mem::transmute_copy(&startslot),
core::mem::transmute_copy(&numbuffers),
core::mem::transmute_copy(&ppconstantbuffers),
)
}
}
unsafe extern "system" fn GSGetShader<
Identity: ID3D11DeviceContext_Impl,
const OFFSET: isize,
>(
this: *mut core::ffi::c_void,
ppgeometryshader: *mut *mut core::ffi::c_void,
ppclassinstances: *mut *mut core::ffi::c_void,
pnumclassinstances: *mut u32,
) {
unsafe {
let this: &Identity =
&*((this as *const *const ()).offset(OFFSET) as *const Identity);
ID3D11DeviceContext_Impl::GSGetShader(
this,
core::mem::transmute_copy(&ppgeometryshader),
core::mem::transmute_copy(&ppclassinstances),
core::mem::transmute_copy(&pnumclassinstances),
)
}
}
unsafe extern "system" fn IAGetPrimitiveTopology<
Identity: ID3D11DeviceContext_Impl,
const OFFSET: isize,
>(
this: *mut core::ffi::c_void,
ptopology: *mut super::Direct3D::D3D_PRIMITIVE_TOPOLOGY,
) {
unsafe {
let this: &Identity =
&*((this as *const *const ()).offset(OFFSET) as *const Identity);
ID3D11DeviceContext_Impl::IAGetPrimitiveTopology(
this,
core::mem::transmute_copy(&ptopology),
)
}
}
unsafe extern "system" fn VSGetShaderResources<
Identity: ID3D11DeviceContext_Impl,
const OFFSET: isize,
>(
this: *mut core::ffi::c_void,
startslot: u32,
numviews: u32,
ppshaderresourceviews: *mut *mut core::ffi::c_void,
) {
unsafe {
let this: &Identity =
&*((this as *const *const ()).offset(OFFSET) as *const Identity);
ID3D11DeviceContext_Impl::VSGetShaderResources(
this,
core::mem::transmute_copy(&startslot),
core::mem::transmute_copy(&numviews),
core::mem::transmute_copy(&ppshaderresourceviews),
)
}
}
unsafe extern "system" fn VSGetSamplers<
Identity: ID3D11DeviceContext_Impl,
const OFFSET: isize,
>(
this: *mut core::ffi::c_void,
startslot: u32,
numsamplers: u32,
ppsamplers: *mut *mut core::ffi::c_void,
) {
unsafe {
let this: &Identity =
&*((this as *const *const ()).offset(OFFSET) as *const Identity);
ID3D11DeviceContext_Impl::VSGetSamplers(
this,
core::mem::transmute_copy(&startslot),
core::mem::transmute_copy(&numsamplers),
core::mem::transmute_copy(&ppsamplers),
)
}
}
unsafe extern "system" fn GetPredication<
Identity: ID3D11DeviceContext_Impl,
const OFFSET: isize,
>(
this: *mut core::ffi::c_void,
pppredicate: *mut *mut core::ffi::c_void,
ppredicatevalue: *mut crate::Foundation::BOOL,
) {
unsafe {
let this: &Identity =
&*((this as *const *const ()).offset(OFFSET) as *const Identity);
ID3D11DeviceContext_Impl::GetPredication(
this,
core::mem::transmute_copy(&pppredicate),
core::mem::transmute_copy(&ppredicatevalue),
)
}
}
unsafe extern "system" fn GSGetShaderResources<
Identity: ID3D11DeviceContext_Impl,
const OFFSET: isize,
>(
this: *mut core::ffi::c_void,
startslot: u32,
numviews: u32,
ppshaderresourceviews: *mut *mut core::ffi::c_void,
) {
unsafe {
let this: &Identity =
&*((this as *const *const ()).offset(OFFSET) as *const Identity);
ID3D11DeviceContext_Impl::GSGetShaderResources(
this,
core::mem::transmute_copy(&startslot),
core::mem::transmute_copy(&numviews),
core::mem::transmute_copy(&ppshaderresourceviews),
)
}
}
unsafe extern "system" fn GSGetSamplers<
Identity: ID3D11DeviceContext_Impl,
const OFFSET: isize,
>(
this: *mut core::ffi::c_void,
startslot: u32,
numsamplers: u32,
ppsamplers: *mut *mut core::ffi::c_void,
) {
unsafe {
let this: &Identity =
&*((this as *const *const ()).offset(OFFSET) as *const Identity);
ID3D11DeviceContext_Impl::GSGetSamplers(
this,
core::mem::transmute_copy(&startslot),
core::mem::transmute_copy(&numsamplers),
core::mem::transmute_copy(&ppsamplers),
)
}
}
unsafe extern "system" fn OMGetRenderTargets<
Identity: ID3D11DeviceContext_Impl,
const OFFSET: isize,
>(
this: *mut core::ffi::c_void,
numviews: u32,
pprendertargetviews: *mut *mut core::ffi::c_void,
ppdepthstencilview: *mut *mut core::ffi::c_void,
) {
unsafe {
let this: &Identity =
&*((this as *const *const ()).offset(OFFSET) as *const Identity);
ID3D11DeviceContext_Impl::OMGetRenderTargets(
this,
core::mem::transmute_copy(&numviews),
core::mem::transmute_copy(&pprendertargetviews),
core::mem::transmute_copy(&ppdepthstencilview),
)
}
}
unsafe extern "system" fn OMGetRenderTargetsAndUnorderedAccessViews<
Identity: ID3D11DeviceContext_Impl,
const OFFSET: isize,
>(
this: *mut core::ffi::c_void,
numrtvs: u32,
pprendertargetviews: *mut *mut core::ffi::c_void,
ppdepthstencilview: *mut *mut core::ffi::c_void,
uavstartslot: u32,
numuavs: u32,
ppunorderedaccessviews: *mut *mut core::ffi::c_void,
) {
unsafe {
let this: &Identity =
&*((this as *const *const ()).offset(OFFSET) as *const Identity);
ID3D11DeviceContext_Impl::OMGetRenderTargetsAndUnorderedAccessViews(
this,
core::mem::transmute_copy(&numrtvs),
core::mem::transmute_copy(&pprendertargetviews),
core::mem::transmute_copy(&ppdepthstencilview),
core::mem::transmute_copy(&uavstartslot),
core::mem::transmute_copy(&numuavs),
core::mem::transmute_copy(&ppunorderedaccessviews),
)
}
}
unsafe extern "system" fn OMGetBlendState<
Identity: ID3D11DeviceContext_Impl,
const OFFSET: isize,
>(
this: *mut core::ffi::c_void,
ppblendstate: *mut *mut core::ffi::c_void,
blendfactor: *mut f32,
psamplemask: *mut u32,
) {
unsafe {
let this: &Identity =
&*((this as *const *const ()).offset(OFFSET) as *const Identity);
ID3D11DeviceContext_Impl::OMGetBlendState(
this,
core::mem::transmute_copy(&ppblendstate),
core::mem::transmute_copy(&blendfactor),
core::mem::transmute_copy(&psamplemask),
)
}
}
unsafe extern "system" fn OMGetDepthStencilState<
Identity: ID3D11DeviceContext_Impl,
const OFFSET: isize,
>(
this: *mut core::ffi::c_void,
ppdepthstencilstate: *mut *mut core::ffi::c_void,
pstencilref: *mut u32,
) {
unsafe {
let this: &Identity =
&*((this as *const *const ()).offset(OFFSET) as *const Identity);
ID3D11DeviceContext_Impl::OMGetDepthStencilState(
this,
core::mem::transmute_copy(&ppdepthstencilstate),
core::mem::transmute_copy(&pstencilref),
)
}
}
unsafe extern "system" fn SOGetTargets<
Identity: ID3D11DeviceContext_Impl,
const OFFSET: isize,
>(
this: *mut core::ffi::c_void,
numbuffers: u32,
ppsotargets: *mut *mut core::ffi::c_void,
) {
unsafe {
let this: &Identity =
&*((this as *const *const ()).offset(OFFSET) as *const Identity);
ID3D11DeviceContext_Impl::SOGetTargets(
this,
core::mem::transmute_copy(&numbuffers),
core::mem::transmute_copy(&ppsotargets),
)
}
}
unsafe extern "system" fn RSGetState<
Identity: ID3D11DeviceContext_Impl,
const OFFSET: isize,
>(
this: *mut core::ffi::c_void,
pprasterizerstate: *mut *mut core::ffi::c_void,
) {
unsafe {
let this: &Identity =
&*((this as *const *const ()).offset(OFFSET) as *const Identity);
ID3D11DeviceContext_Impl::RSGetState(
this,
core::mem::transmute_copy(&pprasterizerstate),
)
}
}
unsafe extern "system" fn RSGetViewports<
Identity: ID3D11DeviceContext_Impl,
const OFFSET: isize,
>(
this: *mut core::ffi::c_void,
pnumviewports: *mut u32,
pviewports: *mut D3D11_VIEWPORT,
) {
unsafe {
let this: &Identity =
&*((this as *const *const ()).offset(OFFSET) as *const Identity);
ID3D11DeviceContext_Impl::RSGetViewports(
this,
core::mem::transmute_copy(&pnumviewports),
core::mem::transmute_copy(&pviewports),
)
}
}
unsafe extern "system" fn RSGetScissorRects<
Identity: ID3D11DeviceContext_Impl,
const OFFSET: isize,
>(
this: *mut core::ffi::c_void,
pnumrects: *mut u32,
prects: *mut crate::Foundation::RECT,
) {
unsafe {
let this: &Identity =
&*((this as *const *const ()).offset(OFFSET) as *const Identity);
ID3D11DeviceContext_Impl::RSGetScissorRects(
this,
core::mem::transmute_copy(&pnumrects),
core::mem::transmute_copy(&prects),
)
}
}
unsafe extern "system" fn HSGetShaderResources<
Identity: ID3D11DeviceContext_Impl,
const OFFSET: isize,
>(
this: *mut core::ffi::c_void,
startslot: u32,
numviews: u32,
ppshaderresourceviews: *mut *mut core::ffi::c_void,
) {
unsafe {
let this: &Identity =
&*((this as *const *const ()).offset(OFFSET) as *const Identity);
ID3D11DeviceContext_Impl::HSGetShaderResources(
this,
core::mem::transmute_copy(&startslot),
core::mem::transmute_copy(&numviews),
core::mem::transmute_copy(&ppshaderresourceviews),
)
}
}
unsafe extern "system" fn HSGetShader<
Identity: ID3D11DeviceContext_Impl,
const OFFSET: isize,
>(
this: *mut core::ffi::c_void,
pphullshader: *mut *mut core::ffi::c_void,
ppclassinstances: *mut *mut core::ffi::c_void,
pnumclassinstances: *mut u32,
) {
unsafe {
let this: &Identity =
&*((this as *const *const ()).offset(OFFSET) as *const Identity);
ID3D11DeviceContext_Impl::HSGetShader(
this,
core::mem::transmute_copy(&pphullshader),
core::mem::transmute_copy(&ppclassinstances),
core::mem::transmute_copy(&pnumclassinstances),
)
}
}
unsafe extern "system" fn HSGetSamplers<
Identity: ID3D11DeviceContext_Impl,
const OFFSET: isize,
>(
this: *mut core::ffi::c_void,
startslot: u32,
numsamplers: u32,
ppsamplers: *mut *mut core::ffi::c_void,
) {
unsafe {
let this: &Identity =
&*((this as *const *const ()).offset(OFFSET) as *const Identity);
ID3D11DeviceContext_Impl::HSGetSamplers(
this,
core::mem::transmute_copy(&startslot),
core::mem::transmute_copy(&numsamplers),
core::mem::transmute_copy(&ppsamplers),
)
}
}
unsafe extern "system" fn HSGetConstantBuffers<
Identity: ID3D11DeviceContext_Impl,
const OFFSET: isize,
>(
this: *mut core::ffi::c_void,
startslot: u32,
numbuffers: u32,
ppconstantbuffers: *mut *mut core::ffi::c_void,
) {
unsafe {
let this: &Identity =
&*((this as *const *const ()).offset(OFFSET) as *const Identity);
ID3D11DeviceContext_Impl::HSGetConstantBuffers(
this,
core::mem::transmute_copy(&startslot),
core::mem::transmute_copy(&numbuffers),
core::mem::transmute_copy(&ppconstantbuffers),
)
}
}
unsafe extern "system" fn DSGetShaderResources<
Identity: ID3D11DeviceContext_Impl,
const OFFSET: isize,
>(
this: *mut core::ffi::c_void,
startslot: u32,
numviews: u32,
ppshaderresourceviews: *mut *mut core::ffi::c_void,
) {
unsafe {
let this: &Identity =
&*((this as *const *const ()).offset(OFFSET) as *const Identity);
ID3D11DeviceContext_Impl::DSGetShaderResources(
this,
core::mem::transmute_copy(&startslot),
core::mem::transmute_copy(&numviews),
core::mem::transmute_copy(&ppshaderresourceviews),
)
}
}
unsafe extern "system" fn DSGetShader<
Identity: ID3D11DeviceContext_Impl,
const OFFSET: isize,
>(
this: *mut core::ffi::c_void,
ppdomainshader: *mut *mut core::ffi::c_void,
ppclassinstances: *mut *mut core::ffi::c_void,
pnumclassinstances: *mut u32,
) {
unsafe {
let this: &Identity =
&*((this as *const *const ()).offset(OFFSET) as *const Identity);
ID3D11DeviceContext_Impl::DSGetShader(
this,
core::mem::transmute_copy(&ppdomainshader),
core::mem::transmute_copy(&ppclassinstances),
core::mem::transmute_copy(&pnumclassinstances),
)
}
}
unsafe extern "system" fn DSGetSamplers<
Identity: ID3D11DeviceContext_Impl,
const OFFSET: isize,
>(
this: *mut core::ffi::c_void,
startslot: u32,
numsamplers: u32,
ppsamplers: *mut *mut core::ffi::c_void,
) {
unsafe {
let this: &Identity =
&*((this as *const *const ()).offset(OFFSET) as *const Identity);
ID3D11DeviceContext_Impl::DSGetSamplers(
this,
core::mem::transmute_copy(&startslot),
core::mem::transmute_copy(&numsamplers),
core::mem::transmute_copy(&ppsamplers),
)
}
}
unsafe extern "system" fn DSGetConstantBuffers<
Identity: ID3D11DeviceContext_Impl,
const OFFSET: isize,
>(
this: *mut core::ffi::c_void,
startslot: u32,
numbuffers: u32,
ppconstantbuffers: *mut *mut core::ffi::c_void,
) {
unsafe {
let this: &Identity =
&*((this as *const *const ()).offset(OFFSET) as *const Identity);
ID3D11DeviceContext_Impl::DSGetConstantBuffers(
this,
core::mem::transmute_copy(&startslot),
core::mem::transmute_copy(&numbuffers),
core::mem::transmute_copy(&ppconstantbuffers),
)
}
}
unsafe extern "system" fn CSGetShaderResources<
Identity: ID3D11DeviceContext_Impl,
const OFFSET: isize,
>(
this: *mut core::ffi::c_void,
startslot: u32,
numviews: u32,
ppshaderresourceviews: *mut *mut core::ffi::c_void,
) {
unsafe {
let this: &Identity =
&*((this as *const *const ()).offset(OFFSET) as *const Identity);
ID3D11DeviceContext_Impl::CSGetShaderResources(
this,
core::mem::transmute_copy(&startslot),
core::mem::transmute_copy(&numviews),
core::mem::transmute_copy(&ppshaderresourceviews),
)
}
}
unsafe extern "system" fn CSGetUnorderedAccessViews<
Identity: ID3D11DeviceContext_Impl,
const OFFSET: isize,
>(
this: *mut core::ffi::c_void,
startslot: u32,
numuavs: u32,
ppunorderedaccessviews: *mut *mut core::ffi::c_void,
) {
unsafe {
let this: &Identity =
&*((this as *const *const ()).offset(OFFSET) as *const Identity);
ID3D11DeviceContext_Impl::CSGetUnorderedAccessViews(
this,
core::mem::transmute_copy(&startslot),
core::mem::transmute_copy(&numuavs),
core::mem::transmute_copy(&ppunorderedaccessviews),
)
}
}
unsafe extern "system" fn CSGetShader<
Identity: ID3D11DeviceContext_Impl,
const OFFSET: isize,
>(
this: *mut core::ffi::c_void,
ppcomputeshader: *mut *mut core::ffi::c_void,
ppclassinstances: *mut *mut core::ffi::c_void,
pnumclassinstances: *mut u32,
) {
unsafe {
let this: &Identity =
&*((this as *const *const ()).offset(OFFSET) as *const Identity);
ID3D11DeviceContext_Impl::CSGetShader(
this,
core::mem::transmute_copy(&ppcomputeshader),
core::mem::transmute_copy(&ppclassinstances),
core::mem::transmute_copy(&pnumclassinstances),
)
}
}
unsafe extern "system" fn CSGetSamplers<
Identity: ID3D11DeviceContext_Impl,
const OFFSET: isize,
>(
this: *mut core::ffi::c_void,
startslot: u32,
numsamplers: u32,
ppsamplers: *mut *mut core::ffi::c_void,
) {
unsafe {
let this: &Identity =
&*((this as *const *const ()).offset(OFFSET) as *const Identity);
ID3D11DeviceContext_Impl::CSGetSamplers(
this,
core::mem::transmute_copy(&startslot),
core::mem::transmute_copy(&numsamplers),
core::mem::transmute_copy(&ppsamplers),
)
}
}
unsafe extern "system" fn CSGetConstantBuffers<
Identity: ID3D11DeviceContext_Impl,
const OFFSET: isize,
>(
this: *mut core::ffi::c_void,
startslot: u32,
numbuffers: u32,
ppconstantbuffers: *mut *mut core::ffi::c_void,
) {
unsafe {
let this: &Identity =
&*((this as *const *const ()).offset(OFFSET) as *const Identity);
ID3D11DeviceContext_Impl::CSGetConstantBuffers(
this,
core::mem::transmute_copy(&startslot),
core::mem::transmute_copy(&numbuffers),
core::mem::transmute_copy(&ppconstantbuffers),
)
}
}
unsafe extern "system" fn ClearState<
Identity: ID3D11DeviceContext_Impl,
const OFFSET: isize,
>(
this: *mut core::ffi::c_void,
) {
unsafe {
let this: &Identity =
&*((this as *const *const ()).offset(OFFSET) as *const Identity);
ID3D11DeviceContext_Impl::ClearState(this)
}
}
unsafe extern "system" fn Flush<Identity: ID3D11DeviceContext_Impl, const OFFSET: isize>(
this: *mut core::ffi::c_void,
) {
unsafe {
let this: &Identity =
&*((this as *const *const ()).offset(OFFSET) as *const Identity);
ID3D11DeviceContext_Impl::Flush(this)
}
}
unsafe extern "system" fn GetType<
Identity: ID3D11DeviceContext_Impl,
const OFFSET: isize,
>(
this: *mut core::ffi::c_void,
) -> D3D11_DEVICE_CONTEXT_TYPE {
unsafe {
let this: &Identity =
&*((this as *const *const ()).offset(OFFSET) as *const Identity);
ID3D11DeviceContext_Impl::GetType(this)
}
}
unsafe extern "system" fn GetContextFlags<
Identity: ID3D11DeviceContext_Impl,
const OFFSET: isize,
>(
this: *mut core::ffi::c_void,
) -> u32 {
unsafe {
let this: &Identity =
&*((this as *const *const ()).offset(OFFSET) as *const Identity);
ID3D11DeviceContext_Impl::GetContextFlags(this)
}
}
unsafe extern "system" fn FinishCommandList<
Identity: ID3D11DeviceContext_Impl,
const OFFSET: isize,
>(
this: *mut core::ffi::c_void,
restoredeferredcontextstate: crate::Foundation::BOOL,
ppcommandlist: *mut *mut core::ffi::c_void,
) -> windows_core::HRESULT {
unsafe {
let this: &Identity =
&*((this as *const *const ()).offset(OFFSET) as *const Identity);
ID3D11DeviceContext_Impl::FinishCommandList(
this,
core::mem::transmute_copy(&restoredeferredcontextstate),
core::mem::transmute_copy(&ppcommandlist),
)
.into()
}
}
Self {
base__: ID3D11DeviceChild_Vtbl::new::<Identity, OFFSET>(),
VSSetConstantBuffers: VSSetConstantBuffers::<Identity, OFFSET>,
PSSetShaderResources: PSSetShaderResources::<Identity, OFFSET>,
PSSetShader: PSSetShader::<Identity, OFFSET>,
PSSetSamplers: PSSetSamplers::<Identity, OFFSET>,
VSSetShader: VSSetShader::<Identity, OFFSET>,
DrawIndexed: DrawIndexed::<Identity, OFFSET>,
Draw: Draw::<Identity, OFFSET>,
Map: Map::<Identity, OFFSET>,
Unmap: Unmap::<Identity, OFFSET>,
PSSetConstantBuffers: PSSetConstantBuffers::<Identity, OFFSET>,
IASetInputLayout: IASetInputLayout::<Identity, OFFSET>,
IASetVertexBuffers: IASetVertexBuffers::<Identity, OFFSET>,
IASetIndexBuffer: IASetIndexBuffer::<Identity, OFFSET>,
DrawIndexedInstanced: DrawIndexedInstanced::<Identity, OFFSET>,
DrawInstanced: DrawInstanced::<Identity, OFFSET>,
GSSetConstantBuffers: GSSetConstantBuffers::<Identity, OFFSET>,
GSSetShader: GSSetShader::<Identity, OFFSET>,
IASetPrimitiveTopology: IASetPrimitiveTopology::<Identity, OFFSET>,
VSSetShaderResources: VSSetShaderResources::<Identity, OFFSET>,
VSSetSamplers: VSSetSamplers::<Identity, OFFSET>,
Begin: Begin::<Identity, OFFSET>,
End: End::<Identity, OFFSET>,
GetData: GetData::<Identity, OFFSET>,
SetPredication: SetPredication::<Identity, OFFSET>,
GSSetShaderResources: GSSetShaderResources::<Identity, OFFSET>,
GSSetSamplers: GSSetSamplers::<Identity, OFFSET>,
OMSetRenderTargets: OMSetRenderTargets::<Identity, OFFSET>,
OMSetRenderTargetsAndUnorderedAccessViews: OMSetRenderTargetsAndUnorderedAccessViews::<
Identity,
OFFSET,
>,
OMSetBlendState: OMSetBlendState::<Identity, OFFSET>,
OMSetDepthStencilState: OMSetDepthStencilState::<Identity, OFFSET>,
SOSetTargets: SOSetTargets::<Identity, OFFSET>,
DrawAuto: DrawAuto::<Identity, OFFSET>,
DrawIndexedInstancedIndirect: DrawIndexedInstancedIndirect::<Identity, OFFSET>,
DrawInstancedIndirect: DrawInstancedIndirect::<Identity, OFFSET>,
Dispatch: Dispatch::<Identity, OFFSET>,
DispatchIndirect: DispatchIndirect::<Identity, OFFSET>,
RSSetState: RSSetState::<Identity, OFFSET>,
RSSetViewports: RSSetViewports::<Identity, OFFSET>,
RSSetScissorRects: RSSetScissorRects::<Identity, OFFSET>,
CopySubresourceRegion: CopySubresourceRegion::<Identity, OFFSET>,
CopyResource: CopyResource::<Identity, OFFSET>,
UpdateSubresource: UpdateSubresource::<Identity, OFFSET>,
CopyStructureCount: CopyStructureCount::<Identity, OFFSET>,
ClearRenderTargetView: ClearRenderTargetView::<Identity, OFFSET>,
ClearUnorderedAccessViewUint: ClearUnorderedAccessViewUint::<Identity, OFFSET>,
ClearUnorderedAccessViewFloat: ClearUnorderedAccessViewFloat::<Identity, OFFSET>,
ClearDepthStencilView: ClearDepthStencilView::<Identity, OFFSET>,
GenerateMips: GenerateMips::<Identity, OFFSET>,
SetResourceMinLOD: SetResourceMinLOD::<Identity, OFFSET>,
GetResourceMinLOD: GetResourceMinLOD::<Identity, OFFSET>,
ResolveSubresource: ResolveSubresource::<Identity, OFFSET>,
ExecuteCommandList: ExecuteCommandList::<Identity, OFFSET>,
HSSetShaderResources: HSSetShaderResources::<Identity, OFFSET>,
HSSetShader: HSSetShader::<Identity, OFFSET>,
HSSetSamplers: HSSetSamplers::<Identity, OFFSET>,
HSSetConstantBuffers: HSSetConstantBuffers::<Identity, OFFSET>,
DSSetShaderResources: DSSetShaderResources::<Identity, OFFSET>,
DSSetShader: DSSetShader::<Identity, OFFSET>,
DSSetSamplers: DSSetSamplers::<Identity, OFFSET>,
DSSetConstantBuffers: DSSetConstantBuffers::<Identity, OFFSET>,
CSSetShaderResources: CSSetShaderResources::<Identity, OFFSET>,
CSSetUnorderedAccessViews: CSSetUnorderedAccessViews::<Identity, OFFSET>,
CSSetShader: CSSetShader::<Identity, OFFSET>,
CSSetSamplers: CSSetSamplers::<Identity, OFFSET>,
CSSetConstantBuffers: CSSetConstantBuffers::<Identity, OFFSET>,
VSGetConstantBuffers: VSGetConstantBuffers::<Identity, OFFSET>,
PSGetShaderResources: PSGetShaderResources::<Identity, OFFSET>,
PSGetShader: PSGetShader::<Identity, OFFSET>,
PSGetSamplers: PSGetSamplers::<Identity, OFFSET>,
VSGetShader: VSGetShader::<Identity, OFFSET>,
PSGetConstantBuffers: PSGetConstantBuffers::<Identity, OFFSET>,
IAGetInputLayout: IAGetInputLayout::<Identity, OFFSET>,
IAGetVertexBuffers: IAGetVertexBuffers::<Identity, OFFSET>,
IAGetIndexBuffer: IAGetIndexBuffer::<Identity, OFFSET>,
GSGetConstantBuffers: GSGetConstantBuffers::<Identity, OFFSET>,
GSGetShader: GSGetShader::<Identity, OFFSET>,
IAGetPrimitiveTopology: IAGetPrimitiveTopology::<Identity, OFFSET>,
VSGetShaderResources: VSGetShaderResources::<Identity, OFFSET>,
VSGetSamplers: VSGetSamplers::<Identity, OFFSET>,
GetPredication: GetPredication::<Identity, OFFSET>,
GSGetShaderResources: GSGetShaderResources::<Identity, OFFSET>,
GSGetSamplers: GSGetSamplers::<Identity, OFFSET>,
OMGetRenderTargets: OMGetRenderTargets::<Identity, OFFSET>,
OMGetRenderTargetsAndUnorderedAccessViews: OMGetRenderTargetsAndUnorderedAccessViews::<
Identity,
OFFSET,
>,
OMGetBlendState: OMGetBlendState::<Identity, OFFSET>,
OMGetDepthStencilState: OMGetDepthStencilState::<Identity, OFFSET>,
SOGetTargets: SOGetTargets::<Identity, OFFSET>,
RSGetState: RSGetState::<Identity, OFFSET>,
RSGetViewports: RSGetViewports::<Identity, OFFSET>,
RSGetScissorRects: RSGetScissorRects::<Identity, OFFSET>,
HSGetShaderResources: HSGetShaderResources::<Identity, OFFSET>,
HSGetShader: HSGetShader::<Identity, OFFSET>,
HSGetSamplers: HSGetSamplers::<Identity, OFFSET>,
HSGetConstantBuffers: HSGetConstantBuffers::<Identity, OFFSET>,
DSGetShaderResources: DSGetShaderResources::<Identity, OFFSET>,
DSGetShader: DSGetShader::<Identity, OFFSET>,
DSGetSamplers: DSGetSamplers::<Identity, OFFSET>,
DSGetConstantBuffers: DSGetConstantBuffers::<Identity, OFFSET>,
CSGetShaderResources: CSGetShaderResources::<Identity, OFFSET>,
CSGetUnorderedAccessViews: CSGetUnorderedAccessViews::<Identity, OFFSET>,
CSGetShader: CSGetShader::<Identity, OFFSET>,
CSGetSamplers: CSGetSamplers::<Identity, OFFSET>,
CSGetConstantBuffers: CSGetConstantBuffers::<Identity, OFFSET>,
ClearState: ClearState::<Identity, OFFSET>,
Flush: Flush::<Identity, OFFSET>,
GetType: GetType::<Identity, OFFSET>,
GetContextFlags: GetContextFlags::<Identity, OFFSET>,
FinishCommandList: FinishCommandList::<Identity, OFFSET>,
}
}
pub fn matches(iid: &windows_core::GUID) -> bool {
iid == &<ID3D11DeviceContext as windows_core::Interface>::IID
|| iid == &<ID3D11DeviceChild as windows_core::Interface>::IID
}
}
#[cfg(all(
feature = "Win32_Graphics_Direct3D",
feature = "Win32_Graphics_Dxgi_Common"
))]
impl windows_core::RuntimeName for ID3D11DeviceContext {}
#[cfg(all(
feature = "Win32_Graphics_Direct3D",
feature = "Win32_Graphics_Dxgi_Common"
))]
unsafe impl Send for ID3D11DeviceContext {}
#[cfg(all(
feature = "Win32_Graphics_Direct3D",
feature = "Win32_Graphics_Dxgi_Common"
))]
unsafe impl Sync for ID3D11DeviceContext {}
windows_core::imp::define_interface!(
ID3D11DeviceContext1,
ID3D11DeviceContext1_Vtbl,
0xbb2c6faa_b5fb_4082_8e6b_388b8cfa90e1
);
impl core::ops::Deref for ID3D11DeviceContext1 {
type Target = ID3D11DeviceContext;
fn deref(&self) -> &Self::Target {
unsafe { core::mem::transmute(self) }
}
}
windows_core::imp::interface_hierarchy!(
ID3D11DeviceContext1,
windows_core::IUnknown,
ID3D11DeviceChild,
ID3D11DeviceContext
);
impl ID3D11DeviceContext1 {
pub unsafe fn CopySubresourceRegion1<P0, P5>(
&self,
pdstresource: P0,
dstsubresource: u32,
dstx: u32,
dsty: u32,
dstz: u32,
psrcresource: P5,
srcsubresource: u32,
psrcbox: Option<*const D3D11_BOX>,
copyflags: u32,
) where
P0: windows_core::Param<ID3D11Resource>,
P5: windows_core::Param<ID3D11Resource>,
{
unsafe {
(windows_core::Interface::vtable(self).CopySubresourceRegion1)(
windows_core::Interface::as_raw(self),
pdstresource.param().abi(),
dstsubresource,
dstx,
dsty,
dstz,
psrcresource.param().abi(),
srcsubresource,
core::mem::transmute(psrcbox.unwrap_or(core::mem::zeroed())),
copyflags,
)
}
}
pub unsafe fn UpdateSubresource1<P0>(
&self,
pdstresource: P0,
dstsubresource: u32,
pdstbox: Option<*const D3D11_BOX>,
psrcdata: *const core::ffi::c_void,
srcrowpitch: u32,
srcdepthpitch: u32,
copyflags: u32,
) where
P0: windows_core::Param<ID3D11Resource>,
{
unsafe {
(windows_core::Interface::vtable(self).UpdateSubresource1)(
windows_core::Interface::as_raw(self),
pdstresource.param().abi(),
dstsubresource,
core::mem::transmute(pdstbox.unwrap_or(core::mem::zeroed())),
psrcdata,
srcrowpitch,
srcdepthpitch,
copyflags,
)
}
}
pub unsafe fn DiscardResource<P0>(&self, presource: P0)
where
P0: windows_core::Param<ID3D11Resource>,
{
unsafe {
(windows_core::Interface::vtable(self).DiscardResource)(
windows_core::Interface::as_raw(self),
presource.param().abi(),
)
}
}
pub unsafe fn DiscardView<P0>(&self, presourceview: P0)
where
P0: windows_core::Param<ID3D11View>,
{
unsafe {
(windows_core::Interface::vtable(self).DiscardView)(
windows_core::Interface::as_raw(self),
presourceview.param().abi(),
)
}
}
pub unsafe fn VSSetConstantBuffers1(
&self,
startslot: u32,
numbuffers: u32,
ppconstantbuffers: Option<*const Option<ID3D11Buffer>>,
pfirstconstant: Option<*const u32>,
pnumconstants: Option<*const u32>,
) {
unsafe {
(windows_core::Interface::vtable(self).VSSetConstantBuffers1)(
windows_core::Interface::as_raw(self),
startslot,
numbuffers,
core::mem::transmute(ppconstantbuffers.unwrap_or(core::mem::zeroed())),
core::mem::transmute(pfirstconstant.unwrap_or(core::mem::zeroed())),
core::mem::transmute(pnumconstants.unwrap_or(core::mem::zeroed())),
)
}
}
pub unsafe fn HSSetConstantBuffers1(
&self,
startslot: u32,
numbuffers: u32,
ppconstantbuffers: Option<*const Option<ID3D11Buffer>>,
pfirstconstant: Option<*const u32>,
pnumconstants: Option<*const u32>,
) {
unsafe {
(windows_core::Interface::vtable(self).HSSetConstantBuffers1)(
windows_core::Interface::as_raw(self),
startslot,
numbuffers,
core::mem::transmute(ppconstantbuffers.unwrap_or(core::mem::zeroed())),
core::mem::transmute(pfirstconstant.unwrap_or(core::mem::zeroed())),
core::mem::transmute(pnumconstants.unwrap_or(core::mem::zeroed())),
)
}
}
pub unsafe fn DSSetConstantBuffers1(
&self,
startslot: u32,
numbuffers: u32,
ppconstantbuffers: Option<*const Option<ID3D11Buffer>>,
pfirstconstant: Option<*const u32>,
pnumconstants: Option<*const u32>,
) {
unsafe {
(windows_core::Interface::vtable(self).DSSetConstantBuffers1)(
windows_core::Interface::as_raw(self),
startslot,
numbuffers,
core::mem::transmute(ppconstantbuffers.unwrap_or(core::mem::zeroed())),
core::mem::transmute(pfirstconstant.unwrap_or(core::mem::zeroed())),
core::mem::transmute(pnumconstants.unwrap_or(core::mem::zeroed())),
)
}
}
pub unsafe fn GSSetConstantBuffers1(
&self,
startslot: u32,
numbuffers: u32,
ppconstantbuffers: Option<*const Option<ID3D11Buffer>>,
pfirstconstant: Option<*const u32>,
pnumconstants: Option<*const u32>,
) {
unsafe {
(windows_core::Interface::vtable(self).GSSetConstantBuffers1)(
windows_core::Interface::as_raw(self),
startslot,
numbuffers,
core::mem::transmute(ppconstantbuffers.unwrap_or(core::mem::zeroed())),
core::mem::transmute(pfirstconstant.unwrap_or(core::mem::zeroed())),
core::mem::transmute(pnumconstants.unwrap_or(core::mem::zeroed())),
)
}
}
pub unsafe fn PSSetConstantBuffers1(
&self,
startslot: u32,
numbuffers: u32,
ppconstantbuffers: Option<*const Option<ID3D11Buffer>>,
pfirstconstant: Option<*const u32>,
pnumconstants: Option<*const u32>,
) {
unsafe {
(windows_core::Interface::vtable(self).PSSetConstantBuffers1)(
windows_core::Interface::as_raw(self),
startslot,
numbuffers,
core::mem::transmute(ppconstantbuffers.unwrap_or(core::mem::zeroed())),
core::mem::transmute(pfirstconstant.unwrap_or(core::mem::zeroed())),
core::mem::transmute(pnumconstants.unwrap_or(core::mem::zeroed())),
)
}
}
pub unsafe fn CSSetConstantBuffers1(
&self,
startslot: u32,
numbuffers: u32,
ppconstantbuffers: Option<*const Option<ID3D11Buffer>>,
pfirstconstant: Option<*const u32>,
pnumconstants: Option<*const u32>,
) {
unsafe {
(windows_core::Interface::vtable(self).CSSetConstantBuffers1)(
windows_core::Interface::as_raw(self),
startslot,
numbuffers,
core::mem::transmute(ppconstantbuffers.unwrap_or(core::mem::zeroed())),
core::mem::transmute(pfirstconstant.unwrap_or(core::mem::zeroed())),
core::mem::transmute(pnumconstants.unwrap_or(core::mem::zeroed())),
)
}
}
pub unsafe fn VSGetConstantBuffers1(
&self,
startslot: u32,
numbuffers: u32,
ppconstantbuffers: Option<*mut Option<ID3D11Buffer>>,
pfirstconstant: Option<*mut u32>,
pnumconstants: Option<*mut u32>,
) {
unsafe {
(windows_core::Interface::vtable(self).VSGetConstantBuffers1)(
windows_core::Interface::as_raw(self),
startslot,
numbuffers,
core::mem::transmute(ppconstantbuffers.unwrap_or(core::mem::zeroed())),
core::mem::transmute(pfirstconstant.unwrap_or(core::mem::zeroed())),
core::mem::transmute(pnumconstants.unwrap_or(core::mem::zeroed())),
)
}
}
pub unsafe fn HSGetConstantBuffers1(
&self,
startslot: u32,
numbuffers: u32,
ppconstantbuffers: Option<*mut Option<ID3D11Buffer>>,
pfirstconstant: Option<*mut u32>,
pnumconstants: Option<*mut u32>,
) {
unsafe {
(windows_core::Interface::vtable(self).HSGetConstantBuffers1)(
windows_core::Interface::as_raw(self),
startslot,
numbuffers,
core::mem::transmute(ppconstantbuffers.unwrap_or(core::mem::zeroed())),
core::mem::transmute(pfirstconstant.unwrap_or(core::mem::zeroed())),
core::mem::transmute(pnumconstants.unwrap_or(core::mem::zeroed())),
)
}
}
pub unsafe fn DSGetConstantBuffers1(
&self,
startslot: u32,
numbuffers: u32,
ppconstantbuffers: Option<*mut Option<ID3D11Buffer>>,
pfirstconstant: Option<*mut u32>,
pnumconstants: Option<*mut u32>,
) {
unsafe {
(windows_core::Interface::vtable(self).DSGetConstantBuffers1)(
windows_core::Interface::as_raw(self),
startslot,
numbuffers,
core::mem::transmute(ppconstantbuffers.unwrap_or(core::mem::zeroed())),
core::mem::transmute(pfirstconstant.unwrap_or(core::mem::zeroed())),
core::mem::transmute(pnumconstants.unwrap_or(core::mem::zeroed())),
)
}
}
pub unsafe fn GSGetConstantBuffers1(
&self,
startslot: u32,
numbuffers: u32,
ppconstantbuffers: Option<*mut Option<ID3D11Buffer>>,
pfirstconstant: Option<*mut u32>,
pnumconstants: Option<*mut u32>,
) {
unsafe {
(windows_core::Interface::vtable(self).GSGetConstantBuffers1)(
windows_core::Interface::as_raw(self),
startslot,
numbuffers,
core::mem::transmute(ppconstantbuffers.unwrap_or(core::mem::zeroed())),
core::mem::transmute(pfirstconstant.unwrap_or(core::mem::zeroed())),
core::mem::transmute(pnumconstants.unwrap_or(core::mem::zeroed())),
)
}
}
pub unsafe fn PSGetConstantBuffers1(
&self,
startslot: u32,
numbuffers: u32,
ppconstantbuffers: Option<*mut Option<ID3D11Buffer>>,
pfirstconstant: Option<*mut u32>,
pnumconstants: Option<*mut u32>,
) {
unsafe {
(windows_core::Interface::vtable(self).PSGetConstantBuffers1)(
windows_core::Interface::as_raw(self),
startslot,
numbuffers,
core::mem::transmute(ppconstantbuffers.unwrap_or(core::mem::zeroed())),
core::mem::transmute(pfirstconstant.unwrap_or(core::mem::zeroed())),
core::mem::transmute(pnumconstants.unwrap_or(core::mem::zeroed())),
)
}
}
pub unsafe fn CSGetConstantBuffers1(
&self,
startslot: u32,
numbuffers: u32,
ppconstantbuffers: Option<*mut Option<ID3D11Buffer>>,
pfirstconstant: Option<*mut u32>,
pnumconstants: Option<*mut u32>,
) {
unsafe {
(windows_core::Interface::vtable(self).CSGetConstantBuffers1)(
windows_core::Interface::as_raw(self),
startslot,
numbuffers,
core::mem::transmute(ppconstantbuffers.unwrap_or(core::mem::zeroed())),
core::mem::transmute(pfirstconstant.unwrap_or(core::mem::zeroed())),
core::mem::transmute(pnumconstants.unwrap_or(core::mem::zeroed())),
)
}
}
pub unsafe fn SwapDeviceContextState<P0>(
&self,
pstate: P0,
pppreviousstate: Option<*mut Option<ID3DDeviceContextState>>,
) where
P0: windows_core::Param<ID3DDeviceContextState>,
{
unsafe {
(windows_core::Interface::vtable(self).SwapDeviceContextState)(
windows_core::Interface::as_raw(self),
pstate.param().abi(),
core::mem::transmute(pppreviousstate.unwrap_or(core::mem::zeroed())),
)
}
}
pub unsafe fn ClearView<P0>(
&self,
pview: P0,
color: &[f32; 4],
prect: Option<&[crate::Foundation::RECT]>,
) where
P0: windows_core::Param<ID3D11View>,
{
unsafe {
(windows_core::Interface::vtable(self).ClearView)(
windows_core::Interface::as_raw(self),
pview.param().abi(),
core::mem::transmute(color.as_ptr()),
core::mem::transmute(
prect
.map_or(core::ptr::null(), |slice| slice.as_ptr()),
),
prect
.map_or(0, |slice| slice.len().try_into().unwrap()),
)
}
}
pub unsafe fn DiscardView1<P0>(
&self,
presourceview: P0,
prects: Option<&[crate::Foundation::RECT]>,
) where
P0: windows_core::Param<ID3D11View>,
{
unsafe {
(windows_core::Interface::vtable(self).DiscardView1)(
windows_core::Interface::as_raw(self),
presourceview.param().abi(),
core::mem::transmute(
prects
.map_or(core::ptr::null(), |slice| slice.as_ptr()),
),
prects
.map_or(0, |slice| slice.len().try_into().unwrap()),
)
}
}
}
#[repr(C)]
pub struct ID3D11DeviceContext1_Vtbl {
pub base__: ID3D11DeviceContext_Vtbl,
pub CopySubresourceRegion1: unsafe extern "system" fn(
*mut core::ffi::c_void,
*mut core::ffi::c_void,
u32,
u32,
u32,
u32,
*mut core::ffi::c_void,
u32,
*const D3D11_BOX,
u32,
),
pub UpdateSubresource1: unsafe extern "system" fn(
*mut core::ffi::c_void,
*mut core::ffi::c_void,
u32,
*const D3D11_BOX,
*const core::ffi::c_void,
u32,
u32,
u32,
),
pub DiscardResource: unsafe extern "system" fn(*mut core::ffi::c_void, *mut core::ffi::c_void),
pub DiscardView: unsafe extern "system" fn(*mut core::ffi::c_void, *mut core::ffi::c_void),
pub VSSetConstantBuffers1: unsafe extern "system" fn(
*mut core::ffi::c_void,
u32,
u32,
*const *mut core::ffi::c_void,
*const u32,
*const u32,
),
pub HSSetConstantBuffers1: unsafe extern "system" fn(
*mut core::ffi::c_void,
u32,
u32,
*const *mut core::ffi::c_void,
*const u32,
*const u32,
),
pub DSSetConstantBuffers1: unsafe extern "system" fn(
*mut core::ffi::c_void,
u32,
u32,
*const *mut core::ffi::c_void,
*const u32,
*const u32,
),
pub GSSetConstantBuffers1: unsafe extern "system" fn(
*mut core::ffi::c_void,
u32,
u32,
*const *mut core::ffi::c_void,
*const u32,
*const u32,
),
pub PSSetConstantBuffers1: unsafe extern "system" fn(
*mut core::ffi::c_void,
u32,
u32,
*const *mut core::ffi::c_void,
*const u32,
*const u32,
),
pub CSSetConstantBuffers1: unsafe extern "system" fn(
*mut core::ffi::c_void,
u32,
u32,
*const *mut core::ffi::c_void,
*const u32,
*const u32,
),
pub VSGetConstantBuffers1: unsafe extern "system" fn(
*mut core::ffi::c_void,
u32,
u32,
*mut *mut core::ffi::c_void,
*mut u32,
*mut u32,
),
pub HSGetConstantBuffers1: unsafe extern "system" fn(
*mut core::ffi::c_void,
u32,
u32,
*mut *mut core::ffi::c_void,
*mut u32,
*mut u32,
),
pub DSGetConstantBuffers1: unsafe extern "system" fn(
*mut core::ffi::c_void,
u32,
u32,
*mut *mut core::ffi::c_void,
*mut u32,
*mut u32,
),
pub GSGetConstantBuffers1: unsafe extern "system" fn(
*mut core::ffi::c_void,
u32,
u32,
*mut *mut core::ffi::c_void,
*mut u32,
*mut u32,
),
pub PSGetConstantBuffers1: unsafe extern "system" fn(
*mut core::ffi::c_void,
u32,
u32,
*mut *mut core::ffi::c_void,
*mut u32,
*mut u32,
),
pub CSGetConstantBuffers1: unsafe extern "system" fn(
*mut core::ffi::c_void,
u32,
u32,
*mut *mut core::ffi::c_void,
*mut u32,
*mut u32,
),
pub SwapDeviceContextState: unsafe extern "system" fn(
*mut core::ffi::c_void,
*mut core::ffi::c_void,
*mut *mut core::ffi::c_void,
),
pub ClearView: unsafe extern "system" fn(
*mut core::ffi::c_void,
*mut core::ffi::c_void,
*const f32,
*const crate::Foundation::RECT,
u32,
),
pub DiscardView1: unsafe extern "system" fn(
*mut core::ffi::c_void,
*mut core::ffi::c_void,
*const crate::Foundation::RECT,
u32,
),
}
#[cfg(all(
feature = "Win32_Graphics_Direct3D",
feature = "Win32_Graphics_Dxgi_Common"
))]
pub trait ID3D11DeviceContext1_Impl: ID3D11DeviceContext_Impl {
fn CopySubresourceRegion1(
&self,
pdstresource: windows_core::Ref<'_, ID3D11Resource>,
dstsubresource: u32,
dstx: u32,
dsty: u32,
dstz: u32,
psrcresource: windows_core::Ref<'_, ID3D11Resource>,
srcsubresource: u32,
psrcbox: *const D3D11_BOX,
copyflags: u32,
);
fn UpdateSubresource1(
&self,
pdstresource: windows_core::Ref<'_, ID3D11Resource>,
dstsubresource: u32,
pdstbox: *const D3D11_BOX,
psrcdata: *const core::ffi::c_void,
srcrowpitch: u32,
srcdepthpitch: u32,
copyflags: u32,
);
fn DiscardResource(&self, presource: windows_core::Ref<'_, ID3D11Resource>);
fn DiscardView(&self, presourceview: windows_core::Ref<'_, ID3D11View>);
fn VSSetConstantBuffers1(
&self,
startslot: u32,
numbuffers: u32,
ppconstantbuffers: *const Option<ID3D11Buffer>,
pfirstconstant: *const u32,
pnumconstants: *const u32,
);
fn HSSetConstantBuffers1(
&self,
startslot: u32,
numbuffers: u32,
ppconstantbuffers: *const Option<ID3D11Buffer>,
pfirstconstant: *const u32,
pnumconstants: *const u32,
);
fn DSSetConstantBuffers1(
&self,
startslot: u32,
numbuffers: u32,
ppconstantbuffers: *const Option<ID3D11Buffer>,
pfirstconstant: *const u32,
pnumconstants: *const u32,
);
fn GSSetConstantBuffers1(
&self,
startslot: u32,
numbuffers: u32,
ppconstantbuffers: *const Option<ID3D11Buffer>,
pfirstconstant: *const u32,
pnumconstants: *const u32,
);
fn PSSetConstantBuffers1(
&self,
startslot: u32,
numbuffers: u32,
ppconstantbuffers: *const Option<ID3D11Buffer>,
pfirstconstant: *const u32,
pnumconstants: *const u32,
);
fn CSSetConstantBuffers1(
&self,
startslot: u32,
numbuffers: u32,
ppconstantbuffers: *const Option<ID3D11Buffer>,
pfirstconstant: *const u32,
pnumconstants: *const u32,
);
fn VSGetConstantBuffers1(
&self,
startslot: u32,
numbuffers: u32,
ppconstantbuffers: windows_core::OutRef<'_, ID3D11Buffer>,
pfirstconstant: *mut u32,
pnumconstants: *mut u32,
);
fn HSGetConstantBuffers1(
&self,
startslot: u32,
numbuffers: u32,
ppconstantbuffers: windows_core::OutRef<'_, ID3D11Buffer>,
pfirstconstant: *mut u32,
pnumconstants: *mut u32,
);
fn DSGetConstantBuffers1(
&self,
startslot: u32,
numbuffers: u32,
ppconstantbuffers: windows_core::OutRef<'_, ID3D11Buffer>,
pfirstconstant: *mut u32,
pnumconstants: *mut u32,
);
fn GSGetConstantBuffers1(
&self,
startslot: u32,
numbuffers: u32,
ppconstantbuffers: windows_core::OutRef<'_, ID3D11Buffer>,
pfirstconstant: *mut u32,
pnumconstants: *mut u32,
);
fn PSGetConstantBuffers1(
&self,
startslot: u32,
numbuffers: u32,
ppconstantbuffers: windows_core::OutRef<'_, ID3D11Buffer>,
pfirstconstant: *mut u32,
pnumconstants: *mut u32,
);
fn CSGetConstantBuffers1(
&self,
startslot: u32,
numbuffers: u32,
ppconstantbuffers: windows_core::OutRef<'_, ID3D11Buffer>,
pfirstconstant: *mut u32,
pnumconstants: *mut u32,
);
fn SwapDeviceContextState(
&self,
pstate: windows_core::Ref<'_, ID3DDeviceContextState>,
pppreviousstate: windows_core::OutRef<'_, ID3DDeviceContextState>,
);
fn ClearView(
&self,
pview: windows_core::Ref<'_, ID3D11View>,
color: *const f32,
prect: *const crate::Foundation::RECT,
numrects: u32,
);
fn DiscardView1(
&self,
presourceview: windows_core::Ref<'_, ID3D11View>,
prects: *const crate::Foundation::RECT,
numrects: u32,
);
}
#[cfg(all(
feature = "Win32_Graphics_Direct3D",
feature = "Win32_Graphics_Dxgi_Common"
))]
impl ID3D11DeviceContext1_Vtbl {
pub const fn new<Identity: ID3D11DeviceContext1_Impl, const OFFSET: isize>() -> Self {
unsafe extern "system" fn CopySubresourceRegion1<
Identity: ID3D11DeviceContext1_Impl,
const OFFSET: isize,
>(
this: *mut core::ffi::c_void,
pdstresource: *mut core::ffi::c_void,
dstsubresource: u32,
dstx: u32,
dsty: u32,
dstz: u32,
psrcresource: *mut core::ffi::c_void,
srcsubresource: u32,
psrcbox: *const D3D11_BOX,
copyflags: u32,
) {
unsafe {
let this: &Identity =
&*((this as *const *const ()).offset(OFFSET) as *const Identity);
ID3D11DeviceContext1_Impl::CopySubresourceRegion1(
this,
core::mem::transmute_copy(&pdstresource),
core::mem::transmute_copy(&dstsubresource),
core::mem::transmute_copy(&dstx),
core::mem::transmute_copy(&dsty),
core::mem::transmute_copy(&dstz),
core::mem::transmute_copy(&psrcresource),
core::mem::transmute_copy(&srcsubresource),
core::mem::transmute_copy(&psrcbox),
core::mem::transmute_copy(©flags),
)
}
}
unsafe extern "system" fn UpdateSubresource1<
Identity: ID3D11DeviceContext1_Impl,
const OFFSET: isize,
>(
this: *mut core::ffi::c_void,
pdstresource: *mut core::ffi::c_void,
dstsubresource: u32,
pdstbox: *const D3D11_BOX,
psrcdata: *const core::ffi::c_void,
srcrowpitch: u32,
srcdepthpitch: u32,
copyflags: u32,
) {
unsafe {
let this: &Identity =
&*((this as *const *const ()).offset(OFFSET) as *const Identity);
ID3D11DeviceContext1_Impl::UpdateSubresource1(
this,
core::mem::transmute_copy(&pdstresource),
core::mem::transmute_copy(&dstsubresource),
core::mem::transmute_copy(&pdstbox),
core::mem::transmute_copy(&psrcdata),
core::mem::transmute_copy(&srcrowpitch),
core::mem::transmute_copy(&srcdepthpitch),
core::mem::transmute_copy(©flags),
)
}
}
unsafe extern "system" fn DiscardResource<
Identity: ID3D11DeviceContext1_Impl,
const OFFSET: isize,
>(
this: *mut core::ffi::c_void,
presource: *mut core::ffi::c_void,
) {
unsafe {
let this: &Identity =
&*((this as *const *const ()).offset(OFFSET) as *const Identity);
ID3D11DeviceContext1_Impl::DiscardResource(
this,
core::mem::transmute_copy(&presource),
)
}
}
unsafe extern "system" fn DiscardView<
Identity: ID3D11DeviceContext1_Impl,
const OFFSET: isize,
>(
this: *mut core::ffi::c_void,
presourceview: *mut core::ffi::c_void,
) {
unsafe {
let this: &Identity =
&*((this as *const *const ()).offset(OFFSET) as *const Identity);
ID3D11DeviceContext1_Impl::DiscardView(
this,
core::mem::transmute_copy(&presourceview),
)
}
}
unsafe extern "system" fn VSSetConstantBuffers1<
Identity: ID3D11DeviceContext1_Impl,
const OFFSET: isize,
>(
this: *mut core::ffi::c_void,
startslot: u32,
numbuffers: u32,
ppconstantbuffers: *const *mut core::ffi::c_void,
pfirstconstant: *const u32,
pnumconstants: *const u32,
) {
unsafe {
let this: &Identity =
&*((this as *const *const ()).offset(OFFSET) as *const Identity);
ID3D11DeviceContext1_Impl::VSSetConstantBuffers1(
this,
core::mem::transmute_copy(&startslot),
core::mem::transmute_copy(&numbuffers),
core::mem::transmute_copy(&ppconstantbuffers),
core::mem::transmute_copy(&pfirstconstant),
core::mem::transmute_copy(&pnumconstants),
)
}
}
unsafe extern "system" fn HSSetConstantBuffers1<
Identity: ID3D11DeviceContext1_Impl,
const OFFSET: isize,
>(
this: *mut core::ffi::c_void,
startslot: u32,
numbuffers: u32,
ppconstantbuffers: *const *mut core::ffi::c_void,
pfirstconstant: *const u32,
pnumconstants: *const u32,
) {
unsafe {
let this: &Identity =
&*((this as *const *const ()).offset(OFFSET) as *const Identity);
ID3D11DeviceContext1_Impl::HSSetConstantBuffers1(
this,
core::mem::transmute_copy(&startslot),
core::mem::transmute_copy(&numbuffers),
core::mem::transmute_copy(&ppconstantbuffers),
core::mem::transmute_copy(&pfirstconstant),
core::mem::transmute_copy(&pnumconstants),
)
}
}
unsafe extern "system" fn DSSetConstantBuffers1<
Identity: ID3D11DeviceContext1_Impl,
const OFFSET: isize,
>(
this: *mut core::ffi::c_void,
startslot: u32,
numbuffers: u32,
ppconstantbuffers: *const *mut core::ffi::c_void,
pfirstconstant: *const u32,
pnumconstants: *const u32,
) {
unsafe {
let this: &Identity =
&*((this as *const *const ()).offset(OFFSET) as *const Identity);
ID3D11DeviceContext1_Impl::DSSetConstantBuffers1(
this,
core::mem::transmute_copy(&startslot),
core::mem::transmute_copy(&numbuffers),
core::mem::transmute_copy(&ppconstantbuffers),
core::mem::transmute_copy(&pfirstconstant),
core::mem::transmute_copy(&pnumconstants),
)
}
}
unsafe extern "system" fn GSSetConstantBuffers1<
Identity: ID3D11DeviceContext1_Impl,
const OFFSET: isize,
>(
this: *mut core::ffi::c_void,
startslot: u32,
numbuffers: u32,
ppconstantbuffers: *const *mut core::ffi::c_void,
pfirstconstant: *const u32,
pnumconstants: *const u32,
) {
unsafe {
let this: &Identity =
&*((this as *const *const ()).offset(OFFSET) as *const Identity);
ID3D11DeviceContext1_Impl::GSSetConstantBuffers1(
this,
core::mem::transmute_copy(&startslot),
core::mem::transmute_copy(&numbuffers),
core::mem::transmute_copy(&ppconstantbuffers),
core::mem::transmute_copy(&pfirstconstant),
core::mem::transmute_copy(&pnumconstants),
)
}
}
unsafe extern "system" fn PSSetConstantBuffers1<
Identity: ID3D11DeviceContext1_Impl,
const OFFSET: isize,
>(
this: *mut core::ffi::c_void,
startslot: u32,
numbuffers: u32,
ppconstantbuffers: *const *mut core::ffi::c_void,
pfirstconstant: *const u32,
pnumconstants: *const u32,
) {
unsafe {
let this: &Identity =
&*((this as *const *const ()).offset(OFFSET) as *const Identity);
ID3D11DeviceContext1_Impl::PSSetConstantBuffers1(
this,
core::mem::transmute_copy(&startslot),
core::mem::transmute_copy(&numbuffers),
core::mem::transmute_copy(&ppconstantbuffers),
core::mem::transmute_copy(&pfirstconstant),
core::mem::transmute_copy(&pnumconstants),
)
}
}
unsafe extern "system" fn CSSetConstantBuffers1<
Identity: ID3D11DeviceContext1_Impl,
const OFFSET: isize,
>(
this: *mut core::ffi::c_void,
startslot: u32,
numbuffers: u32,
ppconstantbuffers: *const *mut core::ffi::c_void,
pfirstconstant: *const u32,
pnumconstants: *const u32,
) {
unsafe {
let this: &Identity =
&*((this as *const *const ()).offset(OFFSET) as *const Identity);
ID3D11DeviceContext1_Impl::CSSetConstantBuffers1(
this,
core::mem::transmute_copy(&startslot),
core::mem::transmute_copy(&numbuffers),
core::mem::transmute_copy(&ppconstantbuffers),
core::mem::transmute_copy(&pfirstconstant),
core::mem::transmute_copy(&pnumconstants),
)
}
}
unsafe extern "system" fn VSGetConstantBuffers1<
Identity: ID3D11DeviceContext1_Impl,
const OFFSET: isize,
>(
this: *mut core::ffi::c_void,
startslot: u32,
numbuffers: u32,
ppconstantbuffers: *mut *mut core::ffi::c_void,
pfirstconstant: *mut u32,
pnumconstants: *mut u32,
) {
unsafe {
let this: &Identity =
&*((this as *const *const ()).offset(OFFSET) as *const Identity);
ID3D11DeviceContext1_Impl::VSGetConstantBuffers1(
this,
core::mem::transmute_copy(&startslot),
core::mem::transmute_copy(&numbuffers),
core::mem::transmute_copy(&ppconstantbuffers),
core::mem::transmute_copy(&pfirstconstant),
core::mem::transmute_copy(&pnumconstants),
)
}
}
unsafe extern "system" fn HSGetConstantBuffers1<
Identity: ID3D11DeviceContext1_Impl,
const OFFSET: isize,
>(
this: *mut core::ffi::c_void,
startslot: u32,
numbuffers: u32,
ppconstantbuffers: *mut *mut core::ffi::c_void,
pfirstconstant: *mut u32,
pnumconstants: *mut u32,
) {
unsafe {
let this: &Identity =
&*((this as *const *const ()).offset(OFFSET) as *const Identity);
ID3D11DeviceContext1_Impl::HSGetConstantBuffers1(
this,
core::mem::transmute_copy(&startslot),
core::mem::transmute_copy(&numbuffers),
core::mem::transmute_copy(&ppconstantbuffers),
core::mem::transmute_copy(&pfirstconstant),
core::mem::transmute_copy(&pnumconstants),
)
}
}
unsafe extern "system" fn DSGetConstantBuffers1<
Identity: ID3D11DeviceContext1_Impl,
const OFFSET: isize,
>(
this: *mut core::ffi::c_void,
startslot: u32,
numbuffers: u32,
ppconstantbuffers: *mut *mut core::ffi::c_void,
pfirstconstant: *mut u32,
pnumconstants: *mut u32,
) {
unsafe {
let this: &Identity =
&*((this as *const *const ()).offset(OFFSET) as *const Identity);
ID3D11DeviceContext1_Impl::DSGetConstantBuffers1(
this,
core::mem::transmute_copy(&startslot),
core::mem::transmute_copy(&numbuffers),
core::mem::transmute_copy(&ppconstantbuffers),
core::mem::transmute_copy(&pfirstconstant),
core::mem::transmute_copy(&pnumconstants),
)
}
}
unsafe extern "system" fn GSGetConstantBuffers1<
Identity: ID3D11DeviceContext1_Impl,
const OFFSET: isize,
>(
this: *mut core::ffi::c_void,
startslot: u32,
numbuffers: u32,
ppconstantbuffers: *mut *mut core::ffi::c_void,
pfirstconstant: *mut u32,
pnumconstants: *mut u32,
) {
unsafe {
let this: &Identity =
&*((this as *const *const ()).offset(OFFSET) as *const Identity);
ID3D11DeviceContext1_Impl::GSGetConstantBuffers1(
this,
core::mem::transmute_copy(&startslot),
core::mem::transmute_copy(&numbuffers),
core::mem::transmute_copy(&ppconstantbuffers),
core::mem::transmute_copy(&pfirstconstant),
core::mem::transmute_copy(&pnumconstants),
)
}
}
unsafe extern "system" fn PSGetConstantBuffers1<
Identity: ID3D11DeviceContext1_Impl,
const OFFSET: isize,
>(
this: *mut core::ffi::c_void,
startslot: u32,
numbuffers: u32,
ppconstantbuffers: *mut *mut core::ffi::c_void,
pfirstconstant: *mut u32,
pnumconstants: *mut u32,
) {
unsafe {
let this: &Identity =
&*((this as *const *const ()).offset(OFFSET) as *const Identity);
ID3D11DeviceContext1_Impl::PSGetConstantBuffers1(
this,
core::mem::transmute_copy(&startslot),
core::mem::transmute_copy(&numbuffers),
core::mem::transmute_copy(&ppconstantbuffers),
core::mem::transmute_copy(&pfirstconstant),
core::mem::transmute_copy(&pnumconstants),
)
}
}
unsafe extern "system" fn CSGetConstantBuffers1<
Identity: ID3D11DeviceContext1_Impl,
const OFFSET: isize,
>(
this: *mut core::ffi::c_void,
startslot: u32,
numbuffers: u32,
ppconstantbuffers: *mut *mut core::ffi::c_void,
pfirstconstant: *mut u32,
pnumconstants: *mut u32,
) {
unsafe {
let this: &Identity =
&*((this as *const *const ()).offset(OFFSET) as *const Identity);
ID3D11DeviceContext1_Impl::CSGetConstantBuffers1(
this,
core::mem::transmute_copy(&startslot),
core::mem::transmute_copy(&numbuffers),
core::mem::transmute_copy(&ppconstantbuffers),
core::mem::transmute_copy(&pfirstconstant),
core::mem::transmute_copy(&pnumconstants),
)
}
}
unsafe extern "system" fn SwapDeviceContextState<
Identity: ID3D11DeviceContext1_Impl,
const OFFSET: isize,
>(
this: *mut core::ffi::c_void,
pstate: *mut core::ffi::c_void,
pppreviousstate: *mut *mut core::ffi::c_void,
) {
unsafe {
let this: &Identity =
&*((this as *const *const ()).offset(OFFSET) as *const Identity);
ID3D11DeviceContext1_Impl::SwapDeviceContextState(
this,
core::mem::transmute_copy(&pstate),
core::mem::transmute_copy(&pppreviousstate),
)
}
}
unsafe extern "system" fn ClearView<
Identity: ID3D11DeviceContext1_Impl,
const OFFSET: isize,
>(
this: *mut core::ffi::c_void,
pview: *mut core::ffi::c_void,
color: *const f32,
prect: *const crate::Foundation::RECT,
numrects: u32,
) {
unsafe {
let this: &Identity =
&*((this as *const *const ()).offset(OFFSET) as *const Identity);
ID3D11DeviceContext1_Impl::ClearView(
this,
core::mem::transmute_copy(&pview),
core::mem::transmute_copy(&color),
core::mem::transmute_copy(&prect),
core::mem::transmute_copy(&numrects),
)
}
}
unsafe extern "system" fn DiscardView1<
Identity: ID3D11DeviceContext1_Impl,
const OFFSET: isize,
>(
this: *mut core::ffi::c_void,
presourceview: *mut core::ffi::c_void,
prects: *const crate::Foundation::RECT,
numrects: u32,
) {
unsafe {
let this: &Identity =
&*((this as *const *const ()).offset(OFFSET) as *const Identity);
ID3D11DeviceContext1_Impl::DiscardView1(
this,
core::mem::transmute_copy(&presourceview),
core::mem::transmute_copy(&prects),
core::mem::transmute_copy(&numrects),
)
}
}
Self {
base__: ID3D11DeviceContext_Vtbl::new::<Identity, OFFSET>(),
CopySubresourceRegion1: CopySubresourceRegion1::<Identity, OFFSET>,
UpdateSubresource1: UpdateSubresource1::<Identity, OFFSET>,
DiscardResource: DiscardResource::<Identity, OFFSET>,
DiscardView: DiscardView::<Identity, OFFSET>,
VSSetConstantBuffers1: VSSetConstantBuffers1::<Identity, OFFSET>,
HSSetConstantBuffers1: HSSetConstantBuffers1::<Identity, OFFSET>,
DSSetConstantBuffers1: DSSetConstantBuffers1::<Identity, OFFSET>,
GSSetConstantBuffers1: GSSetConstantBuffers1::<Identity, OFFSET>,
PSSetConstantBuffers1: PSSetConstantBuffers1::<Identity, OFFSET>,
CSSetConstantBuffers1: CSSetConstantBuffers1::<Identity, OFFSET>,
VSGetConstantBuffers1: VSGetConstantBuffers1::<Identity, OFFSET>,
HSGetConstantBuffers1: HSGetConstantBuffers1::<Identity, OFFSET>,
DSGetConstantBuffers1: DSGetConstantBuffers1::<Identity, OFFSET>,
GSGetConstantBuffers1: GSGetConstantBuffers1::<Identity, OFFSET>,
PSGetConstantBuffers1: PSGetConstantBuffers1::<Identity, OFFSET>,
CSGetConstantBuffers1: CSGetConstantBuffers1::<Identity, OFFSET>,
SwapDeviceContextState: SwapDeviceContextState::<Identity, OFFSET>,
ClearView: ClearView::<Identity, OFFSET>,
DiscardView1: DiscardView1::<Identity, OFFSET>,
}
}
pub fn matches(iid: &windows_core::GUID) -> bool {
iid == &<ID3D11DeviceContext1 as windows_core::Interface>::IID
|| iid == &<ID3D11DeviceChild as windows_core::Interface>::IID
|| iid == &<ID3D11DeviceContext as windows_core::Interface>::IID
}
}
#[cfg(all(
feature = "Win32_Graphics_Direct3D",
feature = "Win32_Graphics_Dxgi_Common"
))]
impl windows_core::RuntimeName for ID3D11DeviceContext1 {}
#[cfg(all(
feature = "Win32_Graphics_Direct3D",
feature = "Win32_Graphics_Dxgi_Common"
))]
unsafe impl Send for ID3D11DeviceContext1 {}
#[cfg(all(
feature = "Win32_Graphics_Direct3D",
feature = "Win32_Graphics_Dxgi_Common"
))]
unsafe impl Sync for ID3D11DeviceContext1 {}
windows_core::imp::define_interface!(
ID3D11DeviceContext2,
ID3D11DeviceContext2_Vtbl,
0x420d5b32_b90c_4da4_bef0_359f6a24a83a
);
impl core::ops::Deref for ID3D11DeviceContext2 {
type Target = ID3D11DeviceContext1;
fn deref(&self) -> &Self::Target {
unsafe { core::mem::transmute(self) }
}
}
windows_core::imp::interface_hierarchy!(
ID3D11DeviceContext2,
windows_core::IUnknown,
ID3D11DeviceChild,
ID3D11DeviceContext,
ID3D11DeviceContext1
);
impl ID3D11DeviceContext2 {
pub unsafe fn UpdateTileMappings<P0, P4>(
&self,
ptiledresource: P0,
numtiledresourceregions: u32,
ptiledresourceregionstartcoordinates: Option<*const D3D11_TILED_RESOURCE_COORDINATE>,
ptiledresourceregionsizes: Option<*const D3D11_TILE_REGION_SIZE>,
ptilepool: P4,
numranges: u32,
prangeflags: Option<*const u32>,
ptilepoolstartoffsets: Option<*const u32>,
prangetilecounts: Option<*const u32>,
flags: u32,
) -> windows_core::Result<()>
where
P0: windows_core::Param<ID3D11Resource>,
P4: windows_core::Param<ID3D11Buffer>,
{
unsafe {
(windows_core::Interface::vtable(self).UpdateTileMappings)(
windows_core::Interface::as_raw(self),
ptiledresource.param().abi(),
numtiledresourceregions,
core::mem::transmute(
ptiledresourceregionstartcoordinates.unwrap_or(core::mem::zeroed()),
),
core::mem::transmute(ptiledresourceregionsizes.unwrap_or(core::mem::zeroed())),
ptilepool.param().abi(),
numranges,
core::mem::transmute(prangeflags.unwrap_or(core::mem::zeroed())),
core::mem::transmute(ptilepoolstartoffsets.unwrap_or(core::mem::zeroed())),
core::mem::transmute(prangetilecounts.unwrap_or(core::mem::zeroed())),
flags,
)
.ok()
}
}
pub unsafe fn CopyTileMappings<P0, P2>(
&self,
pdesttiledresource: P0,
pdestregionstartcoordinate: *const D3D11_TILED_RESOURCE_COORDINATE,
psourcetiledresource: P2,
psourceregionstartcoordinate: *const D3D11_TILED_RESOURCE_COORDINATE,
ptileregionsize: *const D3D11_TILE_REGION_SIZE,
flags: u32,
) -> windows_core::Result<()>
where
P0: windows_core::Param<ID3D11Resource>,
P2: windows_core::Param<ID3D11Resource>,
{
unsafe {
(windows_core::Interface::vtable(self).CopyTileMappings)(
windows_core::Interface::as_raw(self),
pdesttiledresource.param().abi(),
pdestregionstartcoordinate,
psourcetiledresource.param().abi(),
psourceregionstartcoordinate,
ptileregionsize,
flags,
)
.ok()
}
}
pub unsafe fn CopyTiles<P0, P3>(
&self,
ptiledresource: P0,
ptileregionstartcoordinate: *const D3D11_TILED_RESOURCE_COORDINATE,
ptileregionsize: *const D3D11_TILE_REGION_SIZE,
pbuffer: P3,
bufferstartoffsetinbytes: u64,
flags: u32,
) where
P0: windows_core::Param<ID3D11Resource>,
P3: windows_core::Param<ID3D11Buffer>,
{
unsafe {
(windows_core::Interface::vtable(self).CopyTiles)(
windows_core::Interface::as_raw(self),
ptiledresource.param().abi(),
ptileregionstartcoordinate,
ptileregionsize,
pbuffer.param().abi(),
bufferstartoffsetinbytes,
flags,
)
}
}
pub unsafe fn UpdateTiles<P0>(
&self,
pdesttiledresource: P0,
pdesttileregionstartcoordinate: *const D3D11_TILED_RESOURCE_COORDINATE,
pdesttileregionsize: *const D3D11_TILE_REGION_SIZE,
psourcetiledata: *const core::ffi::c_void,
flags: u32,
) where
P0: windows_core::Param<ID3D11Resource>,
{
unsafe {
(windows_core::Interface::vtable(self).UpdateTiles)(
windows_core::Interface::as_raw(self),
pdesttiledresource.param().abi(),
pdesttileregionstartcoordinate,
pdesttileregionsize,
psourcetiledata,
flags,
)
}
}
pub unsafe fn ResizeTilePool<P0>(
&self,
ptilepool: P0,
newsizeinbytes: u64,
) -> windows_core::Result<()>
where
P0: windows_core::Param<ID3D11Buffer>,
{
unsafe {
(windows_core::Interface::vtable(self).ResizeTilePool)(
windows_core::Interface::as_raw(self),
ptilepool.param().abi(),
newsizeinbytes,
)
.ok()
}
}
pub unsafe fn TiledResourceBarrier<P0, P1>(
&self,
ptiledresourceorviewaccessbeforebarrier: P0,
ptiledresourceorviewaccessafterbarrier: P1,
) where
P0: windows_core::Param<ID3D11DeviceChild>,
P1: windows_core::Param<ID3D11DeviceChild>,
{
unsafe {
(windows_core::Interface::vtable(self).TiledResourceBarrier)(
windows_core::Interface::as_raw(self),
ptiledresourceorviewaccessbeforebarrier.param().abi(),
ptiledresourceorviewaccessafterbarrier.param().abi(),
)
}
}
pub unsafe fn IsAnnotationEnabled(&self) -> crate::Foundation::BOOL {
unsafe {
(windows_core::Interface::vtable(self).IsAnnotationEnabled)(
windows_core::Interface::as_raw(self),
)
}
}
pub unsafe fn SetMarkerInt<P0>(&self, plabel: P0, data: i32)
where
P0: windows_core::Param<crate::core_supplemental::PCWSTR>,
{
unsafe {
(windows_core::Interface::vtable(self).SetMarkerInt)(
windows_core::Interface::as_raw(self),
plabel.param().abi(),
data,
)
}
}
pub unsafe fn BeginEventInt<P0>(&self, plabel: P0, data: i32)
where
P0: windows_core::Param<crate::core_supplemental::PCWSTR>,
{
unsafe {
(windows_core::Interface::vtable(self).BeginEventInt)(
windows_core::Interface::as_raw(self),
plabel.param().abi(),
data,
)
}
}
pub unsafe fn EndEvent(&self) {
unsafe {
(windows_core::Interface::vtable(self).EndEvent)(windows_core::Interface::as_raw(self))
}
}
}
#[repr(C)]
pub struct ID3D11DeviceContext2_Vtbl {
pub base__: ID3D11DeviceContext1_Vtbl,
pub UpdateTileMappings: unsafe extern "system" fn(
*mut core::ffi::c_void,
*mut core::ffi::c_void,
u32,
*const D3D11_TILED_RESOURCE_COORDINATE,
*const D3D11_TILE_REGION_SIZE,
*mut core::ffi::c_void,
u32,
*const u32,
*const u32,
*const u32,
u32,
) -> windows_core::HRESULT,
pub CopyTileMappings: unsafe extern "system" fn(
*mut core::ffi::c_void,
*mut core::ffi::c_void,
*const D3D11_TILED_RESOURCE_COORDINATE,
*mut core::ffi::c_void,
*const D3D11_TILED_RESOURCE_COORDINATE,
*const D3D11_TILE_REGION_SIZE,
u32,
) -> windows_core::HRESULT,
pub CopyTiles: unsafe extern "system" fn(
*mut core::ffi::c_void,
*mut core::ffi::c_void,
*const D3D11_TILED_RESOURCE_COORDINATE,
*const D3D11_TILE_REGION_SIZE,
*mut core::ffi::c_void,
u64,
u32,
),
pub UpdateTiles: unsafe extern "system" fn(
*mut core::ffi::c_void,
*mut core::ffi::c_void,
*const D3D11_TILED_RESOURCE_COORDINATE,
*const D3D11_TILE_REGION_SIZE,
*const core::ffi::c_void,
u32,
),
pub ResizeTilePool: unsafe extern "system" fn(
*mut core::ffi::c_void,
*mut core::ffi::c_void,
u64,
) -> windows_core::HRESULT,
pub TiledResourceBarrier: unsafe extern "system" fn(
*mut core::ffi::c_void,
*mut core::ffi::c_void,
*mut core::ffi::c_void,
),
pub IsAnnotationEnabled:
unsafe extern "system" fn(*mut core::ffi::c_void) -> crate::Foundation::BOOL,
pub SetMarkerInt: unsafe extern "system" fn(*mut core::ffi::c_void, crate::core_supplemental::PCWSTR, i32),
pub BeginEventInt: unsafe extern "system" fn(*mut core::ffi::c_void, crate::core_supplemental::PCWSTR, i32),
pub EndEvent: unsafe extern "system" fn(*mut core::ffi::c_void),
}
#[cfg(all(
feature = "Win32_Graphics_Direct3D",
feature = "Win32_Graphics_Dxgi_Common"
))]
pub trait ID3D11DeviceContext2_Impl: ID3D11DeviceContext1_Impl {
fn UpdateTileMappings(
&self,
ptiledresource: windows_core::Ref<'_, ID3D11Resource>,
numtiledresourceregions: u32,
ptiledresourceregionstartcoordinates: *const D3D11_TILED_RESOURCE_COORDINATE,
ptiledresourceregionsizes: *const D3D11_TILE_REGION_SIZE,
ptilepool: windows_core::Ref<'_, ID3D11Buffer>,
numranges: u32,
prangeflags: *const u32,
ptilepoolstartoffsets: *const u32,
prangetilecounts: *const u32,
flags: u32,
) -> windows_core::Result<()>;
fn CopyTileMappings(
&self,
pdesttiledresource: windows_core::Ref<'_, ID3D11Resource>,
pdestregionstartcoordinate: *const D3D11_TILED_RESOURCE_COORDINATE,
psourcetiledresource: windows_core::Ref<'_, ID3D11Resource>,
psourceregionstartcoordinate: *const D3D11_TILED_RESOURCE_COORDINATE,
ptileregionsize: *const D3D11_TILE_REGION_SIZE,
flags: u32,
) -> windows_core::Result<()>;
fn CopyTiles(
&self,
ptiledresource: windows_core::Ref<'_, ID3D11Resource>,
ptileregionstartcoordinate: *const D3D11_TILED_RESOURCE_COORDINATE,
ptileregionsize: *const D3D11_TILE_REGION_SIZE,
pbuffer: windows_core::Ref<'_, ID3D11Buffer>,
bufferstartoffsetinbytes: u64,
flags: u32,
);
fn UpdateTiles(
&self,
pdesttiledresource: windows_core::Ref<'_, ID3D11Resource>,
pdesttileregionstartcoordinate: *const D3D11_TILED_RESOURCE_COORDINATE,
pdesttileregionsize: *const D3D11_TILE_REGION_SIZE,
psourcetiledata: *const core::ffi::c_void,
flags: u32,
);
fn ResizeTilePool(
&self,
ptilepool: windows_core::Ref<'_, ID3D11Buffer>,
newsizeinbytes: u64,
) -> windows_core::Result<()>;
fn TiledResourceBarrier(
&self,
ptiledresourceorviewaccessbeforebarrier: windows_core::Ref<'_, ID3D11DeviceChild>,
ptiledresourceorviewaccessafterbarrier: windows_core::Ref<'_, ID3D11DeviceChild>,
);
fn IsAnnotationEnabled(&self) -> crate::Foundation::BOOL;
fn SetMarkerInt(&self, plabel: &crate::core_supplemental::PCWSTR, data: i32);
fn BeginEventInt(&self, plabel: &crate::core_supplemental::PCWSTR, data: i32);
fn EndEvent(&self);
}
#[cfg(all(
feature = "Win32_Graphics_Direct3D",
feature = "Win32_Graphics_Dxgi_Common"
))]
impl ID3D11DeviceContext2_Vtbl {
pub const fn new<Identity: ID3D11DeviceContext2_Impl, const OFFSET: isize>() -> Self {
unsafe extern "system" fn UpdateTileMappings<
Identity: ID3D11DeviceContext2_Impl,
const OFFSET: isize,
>(
this: *mut core::ffi::c_void,
ptiledresource: *mut core::ffi::c_void,
numtiledresourceregions: u32,
ptiledresourceregionstartcoordinates: *const D3D11_TILED_RESOURCE_COORDINATE,
ptiledresourceregionsizes: *const D3D11_TILE_REGION_SIZE,
ptilepool: *mut core::ffi::c_void,
numranges: u32,
prangeflags: *const u32,
ptilepoolstartoffsets: *const u32,
prangetilecounts: *const u32,
flags: u32,
) -> windows_core::HRESULT {
unsafe {
let this: &Identity =
&*((this as *const *const ()).offset(OFFSET) as *const Identity);
ID3D11DeviceContext2_Impl::UpdateTileMappings(
this,
core::mem::transmute_copy(&ptiledresource),
core::mem::transmute_copy(&numtiledresourceregions),
core::mem::transmute_copy(&ptiledresourceregionstartcoordinates),
core::mem::transmute_copy(&ptiledresourceregionsizes),
core::mem::transmute_copy(&ptilepool),
core::mem::transmute_copy(&numranges),
core::mem::transmute_copy(&prangeflags),
core::mem::transmute_copy(&ptilepoolstartoffsets),
core::mem::transmute_copy(&prangetilecounts),
core::mem::transmute_copy(&flags),
)
.into()
}
}
unsafe extern "system" fn CopyTileMappings<
Identity: ID3D11DeviceContext2_Impl,
const OFFSET: isize,
>(
this: *mut core::ffi::c_void,
pdesttiledresource: *mut core::ffi::c_void,
pdestregionstartcoordinate: *const D3D11_TILED_RESOURCE_COORDINATE,
psourcetiledresource: *mut core::ffi::c_void,
psourceregionstartcoordinate: *const D3D11_TILED_RESOURCE_COORDINATE,
ptileregionsize: *const D3D11_TILE_REGION_SIZE,
flags: u32,
) -> windows_core::HRESULT {
unsafe {
let this: &Identity =
&*((this as *const *const ()).offset(OFFSET) as *const Identity);
ID3D11DeviceContext2_Impl::CopyTileMappings(
this,
core::mem::transmute_copy(&pdesttiledresource),
core::mem::transmute_copy(&pdestregionstartcoordinate),
core::mem::transmute_copy(&psourcetiledresource),
core::mem::transmute_copy(&psourceregionstartcoordinate),
core::mem::transmute_copy(&ptileregionsize),
core::mem::transmute_copy(&flags),
)
.into()
}
}
unsafe extern "system" fn CopyTiles<
Identity: ID3D11DeviceContext2_Impl,
const OFFSET: isize,
>(
this: *mut core::ffi::c_void,
ptiledresource: *mut core::ffi::c_void,
ptileregionstartcoordinate: *const D3D11_TILED_RESOURCE_COORDINATE,
ptileregionsize: *const D3D11_TILE_REGION_SIZE,
pbuffer: *mut core::ffi::c_void,
bufferstartoffsetinbytes: u64,
flags: u32,
) {
unsafe {
let this: &Identity =
&*((this as *const *const ()).offset(OFFSET) as *const Identity);
ID3D11DeviceContext2_Impl::CopyTiles(
this,
core::mem::transmute_copy(&ptiledresource),
core::mem::transmute_copy(&ptileregionstartcoordinate),
core::mem::transmute_copy(&ptileregionsize),
core::mem::transmute_copy(&pbuffer),
core::mem::transmute_copy(&bufferstartoffsetinbytes),
core::mem::transmute_copy(&flags),
)
}
}
unsafe extern "system" fn UpdateTiles<
Identity: ID3D11DeviceContext2_Impl,
const OFFSET: isize,
>(
this: *mut core::ffi::c_void,
pdesttiledresource: *mut core::ffi::c_void,
pdesttileregionstartcoordinate: *const D3D11_TILED_RESOURCE_COORDINATE,
pdesttileregionsize: *const D3D11_TILE_REGION_SIZE,
psourcetiledata: *const core::ffi::c_void,
flags: u32,
) {
unsafe {
let this: &Identity =
&*((this as *const *const ()).offset(OFFSET) as *const Identity);
ID3D11DeviceContext2_Impl::UpdateTiles(
this,
core::mem::transmute_copy(&pdesttiledresource),
core::mem::transmute_copy(&pdesttileregionstartcoordinate),
core::mem::transmute_copy(&pdesttileregionsize),
core::mem::transmute_copy(&psourcetiledata),
core::mem::transmute_copy(&flags),
)
}
}
unsafe extern "system" fn ResizeTilePool<
Identity: ID3D11DeviceContext2_Impl,
const OFFSET: isize,
>(
this: *mut core::ffi::c_void,
ptilepool: *mut core::ffi::c_void,
newsizeinbytes: u64,
) -> windows_core::HRESULT {
unsafe {
let this: &Identity =
&*((this as *const *const ()).offset(OFFSET) as *const Identity);
ID3D11DeviceContext2_Impl::ResizeTilePool(
this,
core::mem::transmute_copy(&ptilepool),
core::mem::transmute_copy(&newsizeinbytes),
)
.into()
}
}
unsafe extern "system" fn TiledResourceBarrier<
Identity: ID3D11DeviceContext2_Impl,
const OFFSET: isize,
>(
this: *mut core::ffi::c_void,
ptiledresourceorviewaccessbeforebarrier: *mut core::ffi::c_void,
ptiledresourceorviewaccessafterbarrier: *mut core::ffi::c_void,
) {
unsafe {
let this: &Identity =
&*((this as *const *const ()).offset(OFFSET) as *const Identity);
ID3D11DeviceContext2_Impl::TiledResourceBarrier(
this,
core::mem::transmute_copy(&ptiledresourceorviewaccessbeforebarrier),
core::mem::transmute_copy(&ptiledresourceorviewaccessafterbarrier),
)
}
}
unsafe extern "system" fn IsAnnotationEnabled<
Identity: ID3D11DeviceContext2_Impl,
const OFFSET: isize,
>(
this: *mut core::ffi::c_void,
) -> crate::Foundation::BOOL {
unsafe {
let this: &Identity =
&*((this as *const *const ()).offset(OFFSET) as *const Identity);
ID3D11DeviceContext2_Impl::IsAnnotationEnabled(this)
}
}
unsafe extern "system" fn SetMarkerInt<
Identity: ID3D11DeviceContext2_Impl,
const OFFSET: isize,
>(
this: *mut core::ffi::c_void,
plabel: crate::core_supplemental::PCWSTR,
data: i32,
) {
unsafe {
let this: &Identity =
&*((this as *const *const ()).offset(OFFSET) as *const Identity);
ID3D11DeviceContext2_Impl::SetMarkerInt(
this,
core::mem::transmute(&plabel),
core::mem::transmute_copy(&data),
)
}
}
unsafe extern "system" fn BeginEventInt<
Identity: ID3D11DeviceContext2_Impl,
const OFFSET: isize,
>(
this: *mut core::ffi::c_void,
plabel: crate::core_supplemental::PCWSTR,
data: i32,
) {
unsafe {
let this: &Identity =
&*((this as *const *const ()).offset(OFFSET) as *const Identity);
ID3D11DeviceContext2_Impl::BeginEventInt(
this,
core::mem::transmute(&plabel),
core::mem::transmute_copy(&data),
)
}
}
unsafe extern "system" fn EndEvent<
Identity: ID3D11DeviceContext2_Impl,
const OFFSET: isize,
>(
this: *mut core::ffi::c_void,
) {
unsafe {
let this: &Identity =
&*((this as *const *const ()).offset(OFFSET) as *const Identity);
ID3D11DeviceContext2_Impl::EndEvent(this)
}
}
Self {
base__: ID3D11DeviceContext1_Vtbl::new::<Identity, OFFSET>(),
UpdateTileMappings: UpdateTileMappings::<Identity, OFFSET>,
CopyTileMappings: CopyTileMappings::<Identity, OFFSET>,
CopyTiles: CopyTiles::<Identity, OFFSET>,
UpdateTiles: UpdateTiles::<Identity, OFFSET>,
ResizeTilePool: ResizeTilePool::<Identity, OFFSET>,
TiledResourceBarrier: TiledResourceBarrier::<Identity, OFFSET>,
IsAnnotationEnabled: IsAnnotationEnabled::<Identity, OFFSET>,
SetMarkerInt: SetMarkerInt::<Identity, OFFSET>,
BeginEventInt: BeginEventInt::<Identity, OFFSET>,
EndEvent: EndEvent::<Identity, OFFSET>,
}
}
pub fn matches(iid: &windows_core::GUID) -> bool {
iid == &<ID3D11DeviceContext2 as windows_core::Interface>::IID
|| iid == &<ID3D11DeviceChild as windows_core::Interface>::IID
|| iid == &<ID3D11DeviceContext as windows_core::Interface>::IID
|| iid == &<ID3D11DeviceContext1 as windows_core::Interface>::IID
}
}
#[cfg(all(
feature = "Win32_Graphics_Direct3D",
feature = "Win32_Graphics_Dxgi_Common"
))]
impl windows_core::RuntimeName for ID3D11DeviceContext2 {}
#[cfg(all(
feature = "Win32_Graphics_Direct3D",
feature = "Win32_Graphics_Dxgi_Common"
))]
unsafe impl Send for ID3D11DeviceContext2 {}
#[cfg(all(
feature = "Win32_Graphics_Direct3D",
feature = "Win32_Graphics_Dxgi_Common"
))]
unsafe impl Sync for ID3D11DeviceContext2 {}
windows_core::imp::define_interface!(
ID3D11DeviceContext3,
ID3D11DeviceContext3_Vtbl,
0xb4e3c01d_e79e_4637_91b2_510e9f4c9b8f
);
impl core::ops::Deref for ID3D11DeviceContext3 {
type Target = ID3D11DeviceContext2;
fn deref(&self) -> &Self::Target {
unsafe { core::mem::transmute(self) }
}
}
windows_core::imp::interface_hierarchy!(
ID3D11DeviceContext3,
windows_core::IUnknown,
ID3D11DeviceChild,
ID3D11DeviceContext,
ID3D11DeviceContext1,
ID3D11DeviceContext2
);
impl ID3D11DeviceContext3 {
pub unsafe fn Flush1(
&self,
contexttype: D3D11_CONTEXT_TYPE,
hevent: Option<crate::Foundation::HANDLE>,
) {
unsafe {
(windows_core::Interface::vtable(self).Flush1)(
windows_core::Interface::as_raw(self),
contexttype,
core::mem::transmute(hevent.unwrap_or_default()),
)
}
}
pub unsafe fn SetHardwareProtectionState(&self, hwprotectionenable: bool) {
unsafe {
(windows_core::Interface::vtable(self).SetHardwareProtectionState)(
windows_core::Interface::as_raw(self),
hwprotectionenable.into(),
)
}
}
pub unsafe fn GetHardwareProtectionState(&self) -> crate::Foundation::BOOL {
unsafe {
let mut result__ = core::mem::zeroed();
(windows_core::Interface::vtable(self).GetHardwareProtectionState)(
windows_core::Interface::as_raw(self),
&mut result__,
);
result__
}
}
}
#[repr(C)]
pub struct ID3D11DeviceContext3_Vtbl {
pub base__: ID3D11DeviceContext2_Vtbl,
pub Flush1: unsafe extern "system" fn(
*mut core::ffi::c_void,
D3D11_CONTEXT_TYPE,
crate::Foundation::HANDLE,
),
pub SetHardwareProtectionState:
unsafe extern "system" fn(*mut core::ffi::c_void, crate::Foundation::BOOL),
pub GetHardwareProtectionState:
unsafe extern "system" fn(*mut core::ffi::c_void, *mut crate::Foundation::BOOL),
}
#[cfg(all(
feature = "Win32_Graphics_Direct3D",
feature = "Win32_Graphics_Dxgi_Common"
))]
pub trait ID3D11DeviceContext3_Impl: ID3D11DeviceContext2_Impl {
fn Flush1(&self, contexttype: D3D11_CONTEXT_TYPE, hevent: crate::Foundation::HANDLE);
fn SetHardwareProtectionState(&self, hwprotectionenable: crate::Foundation::BOOL);
fn GetHardwareProtectionState(&self, phwprotectionenable: *mut crate::Foundation::BOOL);
}
#[cfg(all(
feature = "Win32_Graphics_Direct3D",
feature = "Win32_Graphics_Dxgi_Common"
))]
impl ID3D11DeviceContext3_Vtbl {
pub const fn new<Identity: ID3D11DeviceContext3_Impl, const OFFSET: isize>() -> Self {
unsafe extern "system" fn Flush1<
Identity: ID3D11DeviceContext3_Impl,
const OFFSET: isize,
>(
this: *mut core::ffi::c_void,
contexttype: D3D11_CONTEXT_TYPE,
hevent: crate::Foundation::HANDLE,
) {
unsafe {
let this: &Identity =
&*((this as *const *const ()).offset(OFFSET) as *const Identity);
ID3D11DeviceContext3_Impl::Flush1(
this,
core::mem::transmute_copy(&contexttype),
core::mem::transmute_copy(&hevent),
)
}
}
unsafe extern "system" fn SetHardwareProtectionState<
Identity: ID3D11DeviceContext3_Impl,
const OFFSET: isize,
>(
this: *mut core::ffi::c_void,
hwprotectionenable: crate::Foundation::BOOL,
) {
unsafe {
let this: &Identity =
&*((this as *const *const ()).offset(OFFSET) as *const Identity);
ID3D11DeviceContext3_Impl::SetHardwareProtectionState(
this,
core::mem::transmute_copy(&hwprotectionenable),
)
}
}
unsafe extern "system" fn GetHardwareProtectionState<
Identity: ID3D11DeviceContext3_Impl,
const OFFSET: isize,
>(
this: *mut core::ffi::c_void,
phwprotectionenable: *mut crate::Foundation::BOOL,
) {
unsafe {
let this: &Identity =
&*((this as *const *const ()).offset(OFFSET) as *const Identity);
ID3D11DeviceContext3_Impl::GetHardwareProtectionState(
this,
core::mem::transmute_copy(&phwprotectionenable),
)
}
}
Self {
base__: ID3D11DeviceContext2_Vtbl::new::<Identity, OFFSET>(),
Flush1: Flush1::<Identity, OFFSET>,
SetHardwareProtectionState: SetHardwareProtectionState::<Identity, OFFSET>,
GetHardwareProtectionState: GetHardwareProtectionState::<Identity, OFFSET>,
}
}
pub fn matches(iid: &windows_core::GUID) -> bool {
iid == &<ID3D11DeviceContext3 as windows_core::Interface>::IID
|| iid == &<ID3D11DeviceChild as windows_core::Interface>::IID
|| iid == &<ID3D11DeviceContext as windows_core::Interface>::IID
|| iid == &<ID3D11DeviceContext1 as windows_core::Interface>::IID
|| iid == &<ID3D11DeviceContext2 as windows_core::Interface>::IID
}
}
#[cfg(all(
feature = "Win32_Graphics_Direct3D",
feature = "Win32_Graphics_Dxgi_Common"
))]
impl windows_core::RuntimeName for ID3D11DeviceContext3 {}
#[cfg(all(
feature = "Win32_Graphics_Direct3D",
feature = "Win32_Graphics_Dxgi_Common"
))]
unsafe impl Send for ID3D11DeviceContext3 {}
#[cfg(all(
feature = "Win32_Graphics_Direct3D",
feature = "Win32_Graphics_Dxgi_Common"
))]
unsafe impl Sync for ID3D11DeviceContext3 {}
windows_core::imp::define_interface!(
ID3D11DeviceContext4,
ID3D11DeviceContext4_Vtbl,
0x917600da_f58c_4c33_98d8_3e15b390fa24
);
impl core::ops::Deref for ID3D11DeviceContext4 {
type Target = ID3D11DeviceContext3;
fn deref(&self) -> &Self::Target {
unsafe { core::mem::transmute(self) }
}
}
windows_core::imp::interface_hierarchy!(
ID3D11DeviceContext4,
windows_core::IUnknown,
ID3D11DeviceChild,
ID3D11DeviceContext,
ID3D11DeviceContext1,
ID3D11DeviceContext2,
ID3D11DeviceContext3
);
impl ID3D11DeviceContext4 {
pub unsafe fn Signal<P0>(&self, pfence: P0, value: u64) -> windows_core::Result<()>
where
P0: windows_core::Param<ID3D11Fence>,
{
unsafe {
(windows_core::Interface::vtable(self).Signal)(
windows_core::Interface::as_raw(self),
pfence.param().abi(),
value,
)
.ok()
}
}
pub unsafe fn Wait<P0>(&self, pfence: P0, value: u64) -> windows_core::Result<()>
where
P0: windows_core::Param<ID3D11Fence>,
{
unsafe {
(windows_core::Interface::vtable(self).Wait)(
windows_core::Interface::as_raw(self),
pfence.param().abi(),
value,
)
.ok()
}
}
}
#[repr(C)]
pub struct ID3D11DeviceContext4_Vtbl {
pub base__: ID3D11DeviceContext3_Vtbl,
pub Signal: unsafe extern "system" fn(
*mut core::ffi::c_void,
*mut core::ffi::c_void,
u64,
) -> windows_core::HRESULT,
pub Wait: unsafe extern "system" fn(
*mut core::ffi::c_void,
*mut core::ffi::c_void,
u64,
) -> windows_core::HRESULT,
}
#[cfg(all(
feature = "Win32_Graphics_Direct3D",
feature = "Win32_Graphics_Dxgi_Common"
))]
pub trait ID3D11DeviceContext4_Impl: ID3D11DeviceContext3_Impl {
fn Signal(
&self,
pfence: windows_core::Ref<'_, ID3D11Fence>,
value: u64,
) -> windows_core::Result<()>;
fn Wait(
&self,
pfence: windows_core::Ref<'_, ID3D11Fence>,
value: u64,
) -> windows_core::Result<()>;
}
#[cfg(all(
feature = "Win32_Graphics_Direct3D",
feature = "Win32_Graphics_Dxgi_Common"
))]
impl ID3D11DeviceContext4_Vtbl {
pub const fn new<Identity: ID3D11DeviceContext4_Impl, const OFFSET: isize>() -> Self {
unsafe extern "system" fn Signal<
Identity: ID3D11DeviceContext4_Impl,
const OFFSET: isize,
>(
this: *mut core::ffi::c_void,
pfence: *mut core::ffi::c_void,
value: u64,
) -> windows_core::HRESULT {
unsafe {
let this: &Identity =
&*((this as *const *const ()).offset(OFFSET) as *const Identity);
ID3D11DeviceContext4_Impl::Signal(
this,
core::mem::transmute_copy(&pfence),
core::mem::transmute_copy(&value),
)
.into()
}
}
unsafe extern "system" fn Wait<Identity: ID3D11DeviceContext4_Impl, const OFFSET: isize>(
this: *mut core::ffi::c_void,
pfence: *mut core::ffi::c_void,
value: u64,
) -> windows_core::HRESULT {
unsafe {
let this: &Identity =
&*((this as *const *const ()).offset(OFFSET) as *const Identity);
ID3D11DeviceContext4_Impl::Wait(
this,
core::mem::transmute_copy(&pfence),
core::mem::transmute_copy(&value),
)
.into()
}
}
Self {
base__: ID3D11DeviceContext3_Vtbl::new::<Identity, OFFSET>(),
Signal: Signal::<Identity, OFFSET>,
Wait: Wait::<Identity, OFFSET>,
}
}
pub fn matches(iid: &windows_core::GUID) -> bool {
iid == &<ID3D11DeviceContext4 as windows_core::Interface>::IID
|| iid == &<ID3D11DeviceChild as windows_core::Interface>::IID
|| iid == &<ID3D11DeviceContext as windows_core::Interface>::IID
|| iid == &<ID3D11DeviceContext1 as windows_core::Interface>::IID
|| iid == &<ID3D11DeviceContext2 as windows_core::Interface>::IID
|| iid == &<ID3D11DeviceContext3 as windows_core::Interface>::IID
}
}
#[cfg(all(
feature = "Win32_Graphics_Direct3D",
feature = "Win32_Graphics_Dxgi_Common"
))]
impl windows_core::RuntimeName for ID3D11DeviceContext4 {}
#[cfg(all(
feature = "Win32_Graphics_Direct3D",
feature = "Win32_Graphics_Dxgi_Common"
))]
unsafe impl Send for ID3D11DeviceContext4 {}
#[cfg(all(
feature = "Win32_Graphics_Direct3D",
feature = "Win32_Graphics_Dxgi_Common"
))]
unsafe impl Sync for ID3D11DeviceContext4 {}
windows_core::imp::define_interface!(
ID3D11DomainShader,
ID3D11DomainShader_Vtbl,
0xf582c508_0f36_490c_9977_31eece268cfa
);
impl core::ops::Deref for ID3D11DomainShader {
type Target = ID3D11DeviceChild;
fn deref(&self) -> &Self::Target {
unsafe { core::mem::transmute(self) }
}
}
windows_core::imp::interface_hierarchy!(
ID3D11DomainShader,
windows_core::IUnknown,
ID3D11DeviceChild
);
#[repr(C)]
pub struct ID3D11DomainShader_Vtbl {
pub base__: ID3D11DeviceChild_Vtbl,
}
pub trait ID3D11DomainShader_Impl: ID3D11DeviceChild_Impl {}
impl ID3D11DomainShader_Vtbl {
pub const fn new<Identity: ID3D11DomainShader_Impl, const OFFSET: isize>() -> Self {
Self {
base__: ID3D11DeviceChild_Vtbl::new::<Identity, OFFSET>(),
}
}
pub fn matches(iid: &windows_core::GUID) -> bool {
iid == &<ID3D11DomainShader as windows_core::Interface>::IID
|| iid == &<ID3D11DeviceChild as windows_core::Interface>::IID
}
}
impl windows_core::RuntimeName for ID3D11DomainShader {}
unsafe impl Send for ID3D11DomainShader {}
unsafe impl Sync for ID3D11DomainShader {}
windows_core::imp::define_interface!(
ID3D11Fence,
ID3D11Fence_Vtbl,
0xaffde9d1_1df7_4bb7_8a34_0f46251dab80
);
impl core::ops::Deref for ID3D11Fence {
type Target = ID3D11DeviceChild;
fn deref(&self) -> &Self::Target {
unsafe { core::mem::transmute(self) }
}
}
windows_core::imp::interface_hierarchy!(ID3D11Fence, windows_core::IUnknown, ID3D11DeviceChild);
impl ID3D11Fence {
#[cfg(feature = "Win32_Security")]
pub unsafe fn CreateSharedHandle<P2>(
&self,
pattributes: Option<*const crate::Security::SECURITY_ATTRIBUTES>,
dwaccess: u32,
lpname: P2,
) -> windows_core::Result<crate::Foundation::HANDLE>
where
P2: windows_core::Param<crate::core_supplemental::PCWSTR>,
{
unsafe {
let mut result__ = core::mem::zeroed();
(windows_core::Interface::vtable(self).CreateSharedHandle)(
windows_core::Interface::as_raw(self),
core::mem::transmute(pattributes.unwrap_or(core::mem::zeroed())),
dwaccess,
lpname.param().abi(),
&mut result__,
)
.map(|| result__)
}
}
pub unsafe fn GetCompletedValue(&self) -> u64 {
unsafe {
(windows_core::Interface::vtable(self).GetCompletedValue)(
windows_core::Interface::as_raw(self),
)
}
}
pub unsafe fn SetEventOnCompletion(
&self,
value: u64,
hevent: crate::Foundation::HANDLE,
) -> windows_core::Result<()> {
unsafe {
(windows_core::Interface::vtable(self).SetEventOnCompletion)(
windows_core::Interface::as_raw(self),
value,
hevent,
)
.ok()
}
}
}
#[repr(C)]
pub struct ID3D11Fence_Vtbl {
pub base__: ID3D11DeviceChild_Vtbl,
#[cfg(feature = "Win32_Security")]
pub CreateSharedHandle: unsafe extern "system" fn(
*mut core::ffi::c_void,
*const crate::Security::SECURITY_ATTRIBUTES,
u32,
crate::core_supplemental::PCWSTR,
*mut crate::Foundation::HANDLE,
) -> windows_core::HRESULT,
#[cfg(not(feature = "Win32_Security"))]
CreateSharedHandle: usize,
pub GetCompletedValue: unsafe extern "system" fn(*mut core::ffi::c_void) -> u64,
pub SetEventOnCompletion: unsafe extern "system" fn(
*mut core::ffi::c_void,
u64,
crate::Foundation::HANDLE,
) -> windows_core::HRESULT,
}
#[cfg(feature = "Win32_Security")]
pub trait ID3D11Fence_Impl: ID3D11DeviceChild_Impl {
fn CreateSharedHandle(
&self,
pattributes: *const crate::Security::SECURITY_ATTRIBUTES,
dwaccess: u32,
lpname: &crate::core_supplemental::PCWSTR,
) -> windows_core::Result<crate::Foundation::HANDLE>;
fn GetCompletedValue(&self) -> u64;
fn SetEventOnCompletion(
&self,
value: u64,
hevent: crate::Foundation::HANDLE,
) -> windows_core::Result<()>;
}
#[cfg(feature = "Win32_Security")]
impl ID3D11Fence_Vtbl {
pub const fn new<Identity: ID3D11Fence_Impl, const OFFSET: isize>() -> Self {
unsafe extern "system" fn CreateSharedHandle<
Identity: ID3D11Fence_Impl,
const OFFSET: isize,
>(
this: *mut core::ffi::c_void,
pattributes: *const crate::Security::SECURITY_ATTRIBUTES,
dwaccess: u32,
lpname: crate::core_supplemental::PCWSTR,
phandle: *mut crate::Foundation::HANDLE,
) -> windows_core::HRESULT {
unsafe {
let this: &Identity =
&*((this as *const *const ()).offset(OFFSET) as *const Identity);
match ID3D11Fence_Impl::CreateSharedHandle(
this,
core::mem::transmute_copy(&pattributes),
core::mem::transmute_copy(&dwaccess),
core::mem::transmute(&lpname),
) {
Ok(ok__) => {
phandle.write(core::mem::transmute(ok__));
windows_core::HRESULT(0)
}
Err(err) => err.into(),
}
}
}
unsafe extern "system" fn GetCompletedValue<
Identity: ID3D11Fence_Impl,
const OFFSET: isize,
>(
this: *mut core::ffi::c_void,
) -> u64 {
unsafe {
let this: &Identity =
&*((this as *const *const ()).offset(OFFSET) as *const Identity);
ID3D11Fence_Impl::GetCompletedValue(this)
}
}
unsafe extern "system" fn SetEventOnCompletion<
Identity: ID3D11Fence_Impl,
const OFFSET: isize,
>(
this: *mut core::ffi::c_void,
value: u64,
hevent: crate::Foundation::HANDLE,
) -> windows_core::HRESULT {
unsafe {
let this: &Identity =
&*((this as *const *const ()).offset(OFFSET) as *const Identity);
ID3D11Fence_Impl::SetEventOnCompletion(
this,
core::mem::transmute_copy(&value),
core::mem::transmute_copy(&hevent),
)
.into()
}
}
Self {
base__: ID3D11DeviceChild_Vtbl::new::<Identity, OFFSET>(),
CreateSharedHandle: CreateSharedHandle::<Identity, OFFSET>,
GetCompletedValue: GetCompletedValue::<Identity, OFFSET>,
SetEventOnCompletion: SetEventOnCompletion::<Identity, OFFSET>,
}
}
pub fn matches(iid: &windows_core::GUID) -> bool {
iid == &<ID3D11Fence as windows_core::Interface>::IID
|| iid == &<ID3D11DeviceChild as windows_core::Interface>::IID
}
}
#[cfg(feature = "Win32_Security")]
impl windows_core::RuntimeName for ID3D11Fence {}
#[cfg(feature = "Win32_Security")]
unsafe impl Send for ID3D11Fence {}
#[cfg(feature = "Win32_Security")]
unsafe impl Sync for ID3D11Fence {}
windows_core::imp::define_interface!(
ID3D11FunctionLinkingGraph,
ID3D11FunctionLinkingGraph_Vtbl,
0x54133220_1ce8_43d3_8236_9855c5ceecff
);
windows_core::imp::interface_hierarchy!(ID3D11FunctionLinkingGraph, windows_core::IUnknown);
impl ID3D11FunctionLinkingGraph {
#[cfg(feature = "Win32_Graphics_Direct3D")]
pub unsafe fn CreateModuleInstance(
&self,
ppmoduleinstance: *mut Option<ID3D11ModuleInstance>,
pperrorbuffer: Option<*mut Option<super::Direct3D::ID3DBlob>>,
) -> windows_core::Result<()> {
unsafe {
(windows_core::Interface::vtable(self).CreateModuleInstance)(
windows_core::Interface::as_raw(self),
core::mem::transmute(ppmoduleinstance),
core::mem::transmute(pperrorbuffer.unwrap_or(core::mem::zeroed())),
)
.ok()
}
}
#[cfg(feature = "Win32_Graphics_Direct3D")]
pub unsafe fn SetInputSignature(
&self,
pinputparameters: &[D3D11_PARAMETER_DESC],
) -> windows_core::Result<ID3D11LinkingNode> {
unsafe {
let mut result__ = core::mem::zeroed();
(windows_core::Interface::vtable(self).SetInputSignature)(
windows_core::Interface::as_raw(self),
core::mem::transmute(pinputparameters.as_ptr()),
pinputparameters.len().try_into().unwrap(),
&mut result__,
)
.and_then(|| windows_core::Type::from_abi(result__))
}
}
#[cfg(feature = "Win32_Graphics_Direct3D")]
pub unsafe fn SetOutputSignature(
&self,
poutputparameters: &[D3D11_PARAMETER_DESC],
) -> windows_core::Result<ID3D11LinkingNode> {
unsafe {
let mut result__ = core::mem::zeroed();
(windows_core::Interface::vtable(self).SetOutputSignature)(
windows_core::Interface::as_raw(self),
core::mem::transmute(poutputparameters.as_ptr()),
poutputparameters.len().try_into().unwrap(),
&mut result__,
)
.and_then(|| windows_core::Type::from_abi(result__))
}
}
pub unsafe fn CallFunction<P0, P1, P2>(
&self,
pmoduleinstancenamespace: P0,
pmodulewithfunctionprototype: P1,
pfunctionname: P2,
) -> windows_core::Result<ID3D11LinkingNode>
where
P0: windows_core::Param<crate::core_supplemental::PCSTR>,
P1: windows_core::Param<ID3D11Module>,
P2: windows_core::Param<crate::core_supplemental::PCSTR>,
{
unsafe {
let mut result__ = core::mem::zeroed();
(windows_core::Interface::vtable(self).CallFunction)(
windows_core::Interface::as_raw(self),
pmoduleinstancenamespace.param().abi(),
pmodulewithfunctionprototype.param().abi(),
pfunctionname.param().abi(),
&mut result__,
)
.and_then(|| windows_core::Type::from_abi(result__))
}
}
pub unsafe fn PassValue<P0, P2>(
&self,
psrcnode: P0,
srcparameterindex: i32,
pdstnode: P2,
dstparameterindex: i32,
) -> windows_core::Result<()>
where
P0: windows_core::Param<ID3D11LinkingNode>,
P2: windows_core::Param<ID3D11LinkingNode>,
{
unsafe {
(windows_core::Interface::vtable(self).PassValue)(
windows_core::Interface::as_raw(self),
psrcnode.param().abi(),
srcparameterindex,
pdstnode.param().abi(),
dstparameterindex,
)
.ok()
}
}
pub unsafe fn PassValueWithSwizzle<P0, P2, P3, P5>(
&self,
psrcnode: P0,
srcparameterindex: i32,
psrcswizzle: P2,
pdstnode: P3,
dstparameterindex: i32,
pdstswizzle: P5,
) -> windows_core::Result<()>
where
P0: windows_core::Param<ID3D11LinkingNode>,
P2: windows_core::Param<crate::core_supplemental::PCSTR>,
P3: windows_core::Param<ID3D11LinkingNode>,
P5: windows_core::Param<crate::core_supplemental::PCSTR>,
{
unsafe {
(windows_core::Interface::vtable(self).PassValueWithSwizzle)(
windows_core::Interface::as_raw(self),
psrcnode.param().abi(),
srcparameterindex,
psrcswizzle.param().abi(),
pdstnode.param().abi(),
dstparameterindex,
pdstswizzle.param().abi(),
)
.ok()
}
}
#[cfg(feature = "Win32_Graphics_Direct3D")]
pub unsafe fn GetLastError(
&self,
pperrorbuffer: Option<*mut Option<super::Direct3D::ID3DBlob>>,
) -> windows_core::Result<()> {
unsafe {
(windows_core::Interface::vtable(self).GetLastError)(
windows_core::Interface::as_raw(self),
core::mem::transmute(pperrorbuffer.unwrap_or(core::mem::zeroed())),
)
.ok()
}
}
#[cfg(feature = "Win32_Graphics_Direct3D")]
pub unsafe fn GenerateHlsl(
&self,
uflags: u32,
) -> windows_core::Result<super::Direct3D::ID3DBlob> {
unsafe {
let mut result__ = core::mem::zeroed();
(windows_core::Interface::vtable(self).GenerateHlsl)(
windows_core::Interface::as_raw(self),
uflags,
&mut result__,
)
.and_then(|| windows_core::Type::from_abi(result__))
}
}
}
#[repr(C)]
pub struct ID3D11FunctionLinkingGraph_Vtbl {
pub base__: windows_core::IUnknown_Vtbl,
#[cfg(feature = "Win32_Graphics_Direct3D")]
pub CreateModuleInstance: unsafe extern "system" fn(
*mut core::ffi::c_void,
*mut *mut core::ffi::c_void,
*mut *mut core::ffi::c_void,
) -> windows_core::HRESULT,
#[cfg(not(feature = "Win32_Graphics_Direct3D"))]
CreateModuleInstance: usize,
#[cfg(feature = "Win32_Graphics_Direct3D")]
pub SetInputSignature: unsafe extern "system" fn(
*mut core::ffi::c_void,
*const D3D11_PARAMETER_DESC,
u32,
*mut *mut core::ffi::c_void,
) -> windows_core::HRESULT,
#[cfg(not(feature = "Win32_Graphics_Direct3D"))]
SetInputSignature: usize,
#[cfg(feature = "Win32_Graphics_Direct3D")]
pub SetOutputSignature: unsafe extern "system" fn(
*mut core::ffi::c_void,
*const D3D11_PARAMETER_DESC,
u32,
*mut *mut core::ffi::c_void,
) -> windows_core::HRESULT,
#[cfg(not(feature = "Win32_Graphics_Direct3D"))]
SetOutputSignature: usize,
pub CallFunction: unsafe extern "system" fn(
*mut core::ffi::c_void,
crate::core_supplemental::PCSTR,
*mut core::ffi::c_void,
crate::core_supplemental::PCSTR,
*mut *mut core::ffi::c_void,
) -> windows_core::HRESULT,
pub PassValue: unsafe extern "system" fn(
*mut core::ffi::c_void,
*mut core::ffi::c_void,
i32,
*mut core::ffi::c_void,
i32,
) -> windows_core::HRESULT,
pub PassValueWithSwizzle: unsafe extern "system" fn(
*mut core::ffi::c_void,
*mut core::ffi::c_void,
i32,
crate::core_supplemental::PCSTR,
*mut core::ffi::c_void,
i32,
crate::core_supplemental::PCSTR,
) -> windows_core::HRESULT,
#[cfg(feature = "Win32_Graphics_Direct3D")]
pub GetLastError: unsafe extern "system" fn(
*mut core::ffi::c_void,
*mut *mut core::ffi::c_void,
) -> windows_core::HRESULT,
#[cfg(not(feature = "Win32_Graphics_Direct3D"))]
GetLastError: usize,
#[cfg(feature = "Win32_Graphics_Direct3D")]
pub GenerateHlsl: unsafe extern "system" fn(
*mut core::ffi::c_void,
u32,
*mut *mut core::ffi::c_void,
) -> windows_core::HRESULT,
#[cfg(not(feature = "Win32_Graphics_Direct3D"))]
GenerateHlsl: usize,
}
#[cfg(feature = "Win32_Graphics_Direct3D")]
pub trait ID3D11FunctionLinkingGraph_Impl: windows_core::IUnknownImpl {
fn CreateModuleInstance(
&self,
ppmoduleinstance: windows_core::OutRef<'_, ID3D11ModuleInstance>,
pperrorbuffer: windows_core::OutRef<'_, super::Direct3D::ID3DBlob>,
) -> windows_core::Result<()>;
fn SetInputSignature(
&self,
pinputparameters: *const D3D11_PARAMETER_DESC,
cinputparameters: u32,
) -> windows_core::Result<ID3D11LinkingNode>;
fn SetOutputSignature(
&self,
poutputparameters: *const D3D11_PARAMETER_DESC,
coutputparameters: u32,
) -> windows_core::Result<ID3D11LinkingNode>;
fn CallFunction(
&self,
pmoduleinstancenamespace: &crate::core_supplemental::PCSTR,
pmodulewithfunctionprototype: windows_core::Ref<'_, ID3D11Module>,
pfunctionname: &crate::core_supplemental::PCSTR,
) -> windows_core::Result<ID3D11LinkingNode>;
fn PassValue(
&self,
psrcnode: windows_core::Ref<'_, ID3D11LinkingNode>,
srcparameterindex: i32,
pdstnode: windows_core::Ref<'_, ID3D11LinkingNode>,
dstparameterindex: i32,
) -> windows_core::Result<()>;
fn PassValueWithSwizzle(
&self,
psrcnode: windows_core::Ref<'_, ID3D11LinkingNode>,
srcparameterindex: i32,
psrcswizzle: &crate::core_supplemental::PCSTR,
pdstnode: windows_core::Ref<'_, ID3D11LinkingNode>,
dstparameterindex: i32,
pdstswizzle: &crate::core_supplemental::PCSTR,
) -> windows_core::Result<()>;
fn GetLastError(
&self,
pperrorbuffer: windows_core::OutRef<'_, super::Direct3D::ID3DBlob>,
) -> windows_core::Result<()>;
fn GenerateHlsl(&self, uflags: u32) -> windows_core::Result<super::Direct3D::ID3DBlob>;
}
#[cfg(feature = "Win32_Graphics_Direct3D")]
impl ID3D11FunctionLinkingGraph_Vtbl {
pub const fn new<Identity: ID3D11FunctionLinkingGraph_Impl, const OFFSET: isize>() -> Self {
unsafe extern "system" fn CreateModuleInstance<
Identity: ID3D11FunctionLinkingGraph_Impl,
const OFFSET: isize,
>(
this: *mut core::ffi::c_void,
ppmoduleinstance: *mut *mut core::ffi::c_void,
pperrorbuffer: *mut *mut core::ffi::c_void,
) -> windows_core::HRESULT {
unsafe {
let this: &Identity =
&*((this as *const *const ()).offset(OFFSET) as *const Identity);
ID3D11FunctionLinkingGraph_Impl::CreateModuleInstance(
this,
core::mem::transmute_copy(&ppmoduleinstance),
core::mem::transmute_copy(&pperrorbuffer),
)
.into()
}
}
unsafe extern "system" fn SetInputSignature<
Identity: ID3D11FunctionLinkingGraph_Impl,
const OFFSET: isize,
>(
this: *mut core::ffi::c_void,
pinputparameters: *const D3D11_PARAMETER_DESC,
cinputparameters: u32,
ppinputnode: *mut *mut core::ffi::c_void,
) -> windows_core::HRESULT {
unsafe {
let this: &Identity =
&*((this as *const *const ()).offset(OFFSET) as *const Identity);
match ID3D11FunctionLinkingGraph_Impl::SetInputSignature(
this,
core::mem::transmute_copy(&pinputparameters),
core::mem::transmute_copy(&cinputparameters),
) {
Ok(ok__) => {
ppinputnode.write(core::mem::transmute(ok__));
windows_core::HRESULT(0)
}
Err(err) => err.into(),
}
}
}
unsafe extern "system" fn SetOutputSignature<
Identity: ID3D11FunctionLinkingGraph_Impl,
const OFFSET: isize,
>(
this: *mut core::ffi::c_void,
poutputparameters: *const D3D11_PARAMETER_DESC,
coutputparameters: u32,
ppoutputnode: *mut *mut core::ffi::c_void,
) -> windows_core::HRESULT {
unsafe {
let this: &Identity =
&*((this as *const *const ()).offset(OFFSET) as *const Identity);
match ID3D11FunctionLinkingGraph_Impl::SetOutputSignature(
this,
core::mem::transmute_copy(&poutputparameters),
core::mem::transmute_copy(&coutputparameters),
) {
Ok(ok__) => {
ppoutputnode.write(core::mem::transmute(ok__));
windows_core::HRESULT(0)
}
Err(err) => err.into(),
}
}
}
unsafe extern "system" fn CallFunction<
Identity: ID3D11FunctionLinkingGraph_Impl,
const OFFSET: isize,
>(
this: *mut core::ffi::c_void,
pmoduleinstancenamespace: crate::core_supplemental::PCSTR,
pmodulewithfunctionprototype: *mut core::ffi::c_void,
pfunctionname: crate::core_supplemental::PCSTR,
ppcallnode: *mut *mut core::ffi::c_void,
) -> windows_core::HRESULT {
unsafe {
let this: &Identity =
&*((this as *const *const ()).offset(OFFSET) as *const Identity);
match ID3D11FunctionLinkingGraph_Impl::CallFunction(
this,
core::mem::transmute(&pmoduleinstancenamespace),
core::mem::transmute_copy(&pmodulewithfunctionprototype),
core::mem::transmute(&pfunctionname),
) {
Ok(ok__) => {
ppcallnode.write(core::mem::transmute(ok__));
windows_core::HRESULT(0)
}
Err(err) => err.into(),
}
}
}
unsafe extern "system" fn PassValue<
Identity: ID3D11FunctionLinkingGraph_Impl,
const OFFSET: isize,
>(
this: *mut core::ffi::c_void,
psrcnode: *mut core::ffi::c_void,
srcparameterindex: i32,
pdstnode: *mut core::ffi::c_void,
dstparameterindex: i32,
) -> windows_core::HRESULT {
unsafe {
let this: &Identity =
&*((this as *const *const ()).offset(OFFSET) as *const Identity);
ID3D11FunctionLinkingGraph_Impl::PassValue(
this,
core::mem::transmute_copy(&psrcnode),
core::mem::transmute_copy(&srcparameterindex),
core::mem::transmute_copy(&pdstnode),
core::mem::transmute_copy(&dstparameterindex),
)
.into()
}
}
unsafe extern "system" fn PassValueWithSwizzle<
Identity: ID3D11FunctionLinkingGraph_Impl,
const OFFSET: isize,
>(
this: *mut core::ffi::c_void,
psrcnode: *mut core::ffi::c_void,
srcparameterindex: i32,
psrcswizzle: crate::core_supplemental::PCSTR,
pdstnode: *mut core::ffi::c_void,
dstparameterindex: i32,
pdstswizzle: crate::core_supplemental::PCSTR,
) -> windows_core::HRESULT {
unsafe {
let this: &Identity =
&*((this as *const *const ()).offset(OFFSET) as *const Identity);
ID3D11FunctionLinkingGraph_Impl::PassValueWithSwizzle(
this,
core::mem::transmute_copy(&psrcnode),
core::mem::transmute_copy(&srcparameterindex),
core::mem::transmute(&psrcswizzle),
core::mem::transmute_copy(&pdstnode),
core::mem::transmute_copy(&dstparameterindex),
core::mem::transmute(&pdstswizzle),
)
.into()
}
}
unsafe extern "system" fn GetLastError<
Identity: ID3D11FunctionLinkingGraph_Impl,
const OFFSET: isize,
>(
this: *mut core::ffi::c_void,
pperrorbuffer: *mut *mut core::ffi::c_void,
) -> windows_core::HRESULT {
unsafe {
let this: &Identity =
&*((this as *const *const ()).offset(OFFSET) as *const Identity);
ID3D11FunctionLinkingGraph_Impl::GetLastError(
this,
core::mem::transmute_copy(&pperrorbuffer),
)
.into()
}
}
unsafe extern "system" fn GenerateHlsl<
Identity: ID3D11FunctionLinkingGraph_Impl,
const OFFSET: isize,
>(
this: *mut core::ffi::c_void,
uflags: u32,
ppbuffer: *mut *mut core::ffi::c_void,
) -> windows_core::HRESULT {
unsafe {
let this: &Identity =
&*((this as *const *const ()).offset(OFFSET) as *const Identity);
match ID3D11FunctionLinkingGraph_Impl::GenerateHlsl(
this,
core::mem::transmute_copy(&uflags),
) {
Ok(ok__) => {
ppbuffer.write(core::mem::transmute(ok__));
windows_core::HRESULT(0)
}
Err(err) => err.into(),
}
}
}
Self {
base__: windows_core::IUnknown_Vtbl::new::<Identity, OFFSET>(),
CreateModuleInstance: CreateModuleInstance::<Identity, OFFSET>,
SetInputSignature: SetInputSignature::<Identity, OFFSET>,
SetOutputSignature: SetOutputSignature::<Identity, OFFSET>,
CallFunction: CallFunction::<Identity, OFFSET>,
PassValue: PassValue::<Identity, OFFSET>,
PassValueWithSwizzle: PassValueWithSwizzle::<Identity, OFFSET>,
GetLastError: GetLastError::<Identity, OFFSET>,
GenerateHlsl: GenerateHlsl::<Identity, OFFSET>,
}
}
pub fn matches(iid: &windows_core::GUID) -> bool {
iid == &<ID3D11FunctionLinkingGraph as windows_core::Interface>::IID
}
}
#[cfg(feature = "Win32_Graphics_Direct3D")]
impl windows_core::RuntimeName for ID3D11FunctionLinkingGraph {}
#[cfg(feature = "Win32_Graphics_Direct3D")]
unsafe impl Send for ID3D11FunctionLinkingGraph {}
#[cfg(feature = "Win32_Graphics_Direct3D")]
unsafe impl Sync for ID3D11FunctionLinkingGraph {}
windows_core::imp::define_interface!(
ID3D11FunctionParameterReflection,
ID3D11FunctionParameterReflection_Vtbl
);
impl ID3D11FunctionParameterReflection {
#[cfg(feature = "Win32_Graphics_Direct3D")]
pub unsafe fn GetDesc(&self, pdesc: *mut D3D11_PARAMETER_DESC) -> windows_core::Result<()> {
unsafe {
(windows_core::Interface::vtable(self).GetDesc)(
windows_core::Interface::as_raw(self),
core::mem::transmute(pdesc),
)
.ok()
}
}
}
#[repr(C)]
pub struct ID3D11FunctionParameterReflection_Vtbl {
#[cfg(feature = "Win32_Graphics_Direct3D")]
pub GetDesc: unsafe extern "system" fn(
*mut core::ffi::c_void,
*mut D3D11_PARAMETER_DESC,
) -> windows_core::HRESULT,
#[cfg(not(feature = "Win32_Graphics_Direct3D"))]
GetDesc: usize,
}
#[cfg(feature = "Win32_Graphics_Direct3D")]
pub trait ID3D11FunctionParameterReflection_Impl {
fn GetDesc(&self, pdesc: *mut D3D11_PARAMETER_DESC) -> windows_core::Result<()>;
}
#[cfg(feature = "Win32_Graphics_Direct3D")]
impl ID3D11FunctionParameterReflection_Vtbl {
pub const fn new<Identity: ID3D11FunctionParameterReflection_Impl>() -> Self {
unsafe extern "system" fn GetDesc<Identity: ID3D11FunctionParameterReflection_Impl>(
this: *mut core::ffi::c_void,
pdesc: *mut D3D11_PARAMETER_DESC,
) -> windows_core::HRESULT {
unsafe {
let this = (this as *mut *mut core::ffi::c_void) as *const windows_core::ScopedHeap;
let this = &*((*this).this as *const Identity);
ID3D11FunctionParameterReflection_Impl::GetDesc(
this,
core::mem::transmute_copy(&pdesc),
)
.into()
}
}
Self {
GetDesc: GetDesc::<Identity>,
}
}
}
#[cfg(feature = "Win32_Graphics_Direct3D")]
struct ID3D11FunctionParameterReflection_ImplVtbl<T: ID3D11FunctionParameterReflection_Impl>(
core::marker::PhantomData<T>,
);
#[cfg(feature = "Win32_Graphics_Direct3D")]
impl<T: ID3D11FunctionParameterReflection_Impl> ID3D11FunctionParameterReflection_ImplVtbl<T> {
const VTABLE: ID3D11FunctionParameterReflection_Vtbl =
ID3D11FunctionParameterReflection_Vtbl::new::<T>();
}
#[cfg(feature = "Win32_Graphics_Direct3D")]
impl ID3D11FunctionParameterReflection {
pub fn new<T: ID3D11FunctionParameterReflection_Impl>(
this: &T,
) -> windows_core::ScopedInterface<'_, Self> {
let this = windows_core::ScopedHeap {
vtable: &ID3D11FunctionParameterReflection_ImplVtbl::<T>::VTABLE as *const _
as *const _,
this: this as *const _ as *const _,
};
let this = core::mem::ManuallyDrop::new(windows_core::imp::Box::new(this));
unsafe { windows_core::ScopedInterface::new(core::mem::transmute(&this.vtable)) }
}
}
#[cfg(feature = "Win32_Graphics_Direct3D")]
unsafe impl Send for ID3D11FunctionParameterReflection {}
#[cfg(feature = "Win32_Graphics_Direct3D")]
unsafe impl Sync for ID3D11FunctionParameterReflection {}
windows_core::imp::define_interface!(ID3D11FunctionReflection, ID3D11FunctionReflection_Vtbl);
impl ID3D11FunctionReflection {
#[cfg(feature = "Win32_Graphics_Direct3D")]
pub unsafe fn GetDesc(&self, pdesc: *mut D3D11_FUNCTION_DESC) -> windows_core::Result<()> {
unsafe {
(windows_core::Interface::vtable(self).GetDesc)(
windows_core::Interface::as_raw(self),
core::mem::transmute(pdesc),
)
.ok()
}
}
pub unsafe fn GetConstantBufferByIndex(
&self,
bufferindex: u32,
) -> Option<ID3D11ShaderReflectionConstantBuffer> {
unsafe {
(windows_core::Interface::vtable(self).GetConstantBufferByIndex)(
windows_core::Interface::as_raw(self),
bufferindex,
)
}
}
pub unsafe fn GetConstantBufferByName<P0>(
&self,
name: P0,
) -> Option<ID3D11ShaderReflectionConstantBuffer>
where
P0: windows_core::Param<crate::core_supplemental::PCSTR>,
{
unsafe {
(windows_core::Interface::vtable(self).GetConstantBufferByName)(
windows_core::Interface::as_raw(self),
name.param().abi(),
)
}
}
#[cfg(feature = "Win32_Graphics_Direct3D")]
pub unsafe fn GetResourceBindingDesc(
&self,
resourceindex: u32,
pdesc: *mut D3D11_SHADER_INPUT_BIND_DESC,
) -> windows_core::Result<()> {
unsafe {
(windows_core::Interface::vtable(self).GetResourceBindingDesc)(
windows_core::Interface::as_raw(self),
resourceindex,
core::mem::transmute(pdesc),
)
.ok()
}
}
pub unsafe fn GetVariableByName<P0>(&self, name: P0) -> Option<ID3D11ShaderReflectionVariable>
where
P0: windows_core::Param<crate::core_supplemental::PCSTR>,
{
unsafe {
(windows_core::Interface::vtable(self).GetVariableByName)(
windows_core::Interface::as_raw(self),
name.param().abi(),
)
}
}
#[cfg(feature = "Win32_Graphics_Direct3D")]
pub unsafe fn GetResourceBindingDescByName<P0>(
&self,
name: P0,
pdesc: *mut D3D11_SHADER_INPUT_BIND_DESC,
) -> windows_core::Result<()>
where
P0: windows_core::Param<crate::core_supplemental::PCSTR>,
{
unsafe {
(windows_core::Interface::vtable(self).GetResourceBindingDescByName)(
windows_core::Interface::as_raw(self),
name.param().abi(),
core::mem::transmute(pdesc),
)
.ok()
}
}
pub unsafe fn GetFunctionParameter(
&self,
parameterindex: i32,
) -> Option<ID3D11FunctionParameterReflection> {
unsafe {
(windows_core::Interface::vtable(self).GetFunctionParameter)(
windows_core::Interface::as_raw(self),
parameterindex,
)
}
}
}
#[repr(C)]
pub struct ID3D11FunctionReflection_Vtbl {
#[cfg(feature = "Win32_Graphics_Direct3D")]
pub GetDesc: unsafe extern "system" fn(
*mut core::ffi::c_void,
*mut D3D11_FUNCTION_DESC,
) -> windows_core::HRESULT,
#[cfg(not(feature = "Win32_Graphics_Direct3D"))]
GetDesc: usize,
pub GetConstantBufferByIndex:
unsafe extern "system" fn(
*mut core::ffi::c_void,
u32,
) -> Option<ID3D11ShaderReflectionConstantBuffer>,
pub GetConstantBufferByName:
unsafe extern "system" fn(
*mut core::ffi::c_void,
crate::core_supplemental::PCSTR,
) -> Option<ID3D11ShaderReflectionConstantBuffer>,
#[cfg(feature = "Win32_Graphics_Direct3D")]
pub GetResourceBindingDesc: unsafe extern "system" fn(
*mut core::ffi::c_void,
u32,
*mut D3D11_SHADER_INPUT_BIND_DESC,
) -> windows_core::HRESULT,
#[cfg(not(feature = "Win32_Graphics_Direct3D"))]
GetResourceBindingDesc: usize,
pub GetVariableByName: unsafe extern "system" fn(
*mut core::ffi::c_void,
crate::core_supplemental::PCSTR,
) -> Option<ID3D11ShaderReflectionVariable>,
#[cfg(feature = "Win32_Graphics_Direct3D")]
pub GetResourceBindingDescByName: unsafe extern "system" fn(
*mut core::ffi::c_void,
crate::core_supplemental::PCSTR,
*mut D3D11_SHADER_INPUT_BIND_DESC,
) -> windows_core::HRESULT,
#[cfg(not(feature = "Win32_Graphics_Direct3D"))]
GetResourceBindingDescByName: usize,
pub GetFunctionParameter:
unsafe extern "system" fn(
*mut core::ffi::c_void,
i32,
) -> Option<ID3D11FunctionParameterReflection>,
}
#[cfg(feature = "Win32_Graphics_Direct3D")]
pub trait ID3D11FunctionReflection_Impl {
fn GetDesc(&self, pdesc: *mut D3D11_FUNCTION_DESC) -> windows_core::Result<()>;
fn GetConstantBufferByIndex(
&self,
bufferindex: u32,
) -> Option<ID3D11ShaderReflectionConstantBuffer>;
fn GetConstantBufferByName(
&self,
name: &crate::core_supplemental::PCSTR,
) -> Option<ID3D11ShaderReflectionConstantBuffer>;
fn GetResourceBindingDesc(
&self,
resourceindex: u32,
pdesc: *mut D3D11_SHADER_INPUT_BIND_DESC,
) -> windows_core::Result<()>;
fn GetVariableByName(
&self,
name: &crate::core_supplemental::PCSTR,
) -> Option<ID3D11ShaderReflectionVariable>;
fn GetResourceBindingDescByName(
&self,
name: &crate::core_supplemental::PCSTR,
pdesc: *mut D3D11_SHADER_INPUT_BIND_DESC,
) -> windows_core::Result<()>;
fn GetFunctionParameter(
&self,
parameterindex: i32,
) -> Option<ID3D11FunctionParameterReflection>;
}
#[cfg(feature = "Win32_Graphics_Direct3D")]
impl ID3D11FunctionReflection_Vtbl {
pub const fn new<Identity: ID3D11FunctionReflection_Impl>() -> Self {
unsafe extern "system" fn GetDesc<Identity: ID3D11FunctionReflection_Impl>(
this: *mut core::ffi::c_void,
pdesc: *mut D3D11_FUNCTION_DESC,
) -> windows_core::HRESULT {
unsafe {
let this = (this as *mut *mut core::ffi::c_void) as *const windows_core::ScopedHeap;
let this = &*((*this).this as *const Identity);
ID3D11FunctionReflection_Impl::GetDesc(this, core::mem::transmute_copy(&pdesc))
.into()
}
}
unsafe extern "system" fn GetConstantBufferByIndex<
Identity: ID3D11FunctionReflection_Impl,
>(
this: *mut core::ffi::c_void,
bufferindex: u32,
) -> Option<ID3D11ShaderReflectionConstantBuffer> {
unsafe {
let this = (this as *mut *mut core::ffi::c_void) as *const windows_core::ScopedHeap;
let this = &*((*this).this as *const Identity);
ID3D11FunctionReflection_Impl::GetConstantBufferByIndex(
this,
core::mem::transmute_copy(&bufferindex),
)
}
}
unsafe extern "system" fn GetConstantBufferByName<
Identity: ID3D11FunctionReflection_Impl,
>(
this: *mut core::ffi::c_void,
name: crate::core_supplemental::PCSTR,
) -> Option<ID3D11ShaderReflectionConstantBuffer> {
unsafe {
let this = (this as *mut *mut core::ffi::c_void) as *const windows_core::ScopedHeap;
let this = &*((*this).this as *const Identity);
ID3D11FunctionReflection_Impl::GetConstantBufferByName(
this,
core::mem::transmute(&name),
)
}
}
unsafe extern "system" fn GetResourceBindingDesc<
Identity: ID3D11FunctionReflection_Impl,
>(
this: *mut core::ffi::c_void,
resourceindex: u32,
pdesc: *mut D3D11_SHADER_INPUT_BIND_DESC,
) -> windows_core::HRESULT {
unsafe {
let this = (this as *mut *mut core::ffi::c_void) as *const windows_core::ScopedHeap;
let this = &*((*this).this as *const Identity);
ID3D11FunctionReflection_Impl::GetResourceBindingDesc(
this,
core::mem::transmute_copy(&resourceindex),
core::mem::transmute_copy(&pdesc),
)
.into()
}
}
unsafe extern "system" fn GetVariableByName<Identity: ID3D11FunctionReflection_Impl>(
this: *mut core::ffi::c_void,
name: crate::core_supplemental::PCSTR,
) -> Option<ID3D11ShaderReflectionVariable> {
unsafe {
let this = (this as *mut *mut core::ffi::c_void) as *const windows_core::ScopedHeap;
let this = &*((*this).this as *const Identity);
ID3D11FunctionReflection_Impl::GetVariableByName(this, core::mem::transmute(&name))
}
}
unsafe extern "system" fn GetResourceBindingDescByName<
Identity: ID3D11FunctionReflection_Impl,
>(
this: *mut core::ffi::c_void,
name: crate::core_supplemental::PCSTR,
pdesc: *mut D3D11_SHADER_INPUT_BIND_DESC,
) -> windows_core::HRESULT {
unsafe {
let this = (this as *mut *mut core::ffi::c_void) as *const windows_core::ScopedHeap;
let this = &*((*this).this as *const Identity);
ID3D11FunctionReflection_Impl::GetResourceBindingDescByName(
this,
core::mem::transmute(&name),
core::mem::transmute_copy(&pdesc),
)
.into()
}
}
unsafe extern "system" fn GetFunctionParameter<Identity: ID3D11FunctionReflection_Impl>(
this: *mut core::ffi::c_void,
parameterindex: i32,
) -> Option<ID3D11FunctionParameterReflection> {
unsafe {
let this = (this as *mut *mut core::ffi::c_void) as *const windows_core::ScopedHeap;
let this = &*((*this).this as *const Identity);
ID3D11FunctionReflection_Impl::GetFunctionParameter(
this,
core::mem::transmute_copy(¶meterindex),
)
}
}
Self {
GetDesc: GetDesc::<Identity>,
GetConstantBufferByIndex: GetConstantBufferByIndex::<Identity>,
GetConstantBufferByName: GetConstantBufferByName::<Identity>,
GetResourceBindingDesc: GetResourceBindingDesc::<Identity>,
GetVariableByName: GetVariableByName::<Identity>,
GetResourceBindingDescByName: GetResourceBindingDescByName::<Identity>,
GetFunctionParameter: GetFunctionParameter::<Identity>,
}
}
}
#[cfg(feature = "Win32_Graphics_Direct3D")]
struct ID3D11FunctionReflection_ImplVtbl<T: ID3D11FunctionReflection_Impl>(
core::marker::PhantomData<T>,
);
#[cfg(feature = "Win32_Graphics_Direct3D")]
impl<T: ID3D11FunctionReflection_Impl> ID3D11FunctionReflection_ImplVtbl<T> {
const VTABLE: ID3D11FunctionReflection_Vtbl = ID3D11FunctionReflection_Vtbl::new::<T>();
}
#[cfg(feature = "Win32_Graphics_Direct3D")]
impl ID3D11FunctionReflection {
pub fn new<T: ID3D11FunctionReflection_Impl>(
this: &T,
) -> windows_core::ScopedInterface<'_, Self> {
let this = windows_core::ScopedHeap {
vtable: &ID3D11FunctionReflection_ImplVtbl::<T>::VTABLE as *const _ as *const _,
this: this as *const _ as *const _,
};
let this = core::mem::ManuallyDrop::new(windows_core::imp::Box::new(this));
unsafe { windows_core::ScopedInterface::new(core::mem::transmute(&this.vtable)) }
}
}
#[cfg(feature = "Win32_Graphics_Direct3D")]
unsafe impl Send for ID3D11FunctionReflection {}
#[cfg(feature = "Win32_Graphics_Direct3D")]
unsafe impl Sync for ID3D11FunctionReflection {}
windows_core::imp::define_interface!(
ID3D11GeometryShader,
ID3D11GeometryShader_Vtbl,
0x38325b96_effb_4022_ba02_2e795b70275c
);
impl core::ops::Deref for ID3D11GeometryShader {
type Target = ID3D11DeviceChild;
fn deref(&self) -> &Self::Target {
unsafe { core::mem::transmute(self) }
}
}
windows_core::imp::interface_hierarchy!(
ID3D11GeometryShader,
windows_core::IUnknown,
ID3D11DeviceChild
);
#[repr(C)]
pub struct ID3D11GeometryShader_Vtbl {
pub base__: ID3D11DeviceChild_Vtbl,
}
pub trait ID3D11GeometryShader_Impl: ID3D11DeviceChild_Impl {}
impl ID3D11GeometryShader_Vtbl {
pub const fn new<Identity: ID3D11GeometryShader_Impl, const OFFSET: isize>() -> Self {
Self {
base__: ID3D11DeviceChild_Vtbl::new::<Identity, OFFSET>(),
}
}
pub fn matches(iid: &windows_core::GUID) -> bool {
iid == &<ID3D11GeometryShader as windows_core::Interface>::IID
|| iid == &<ID3D11DeviceChild as windows_core::Interface>::IID
}
}
impl windows_core::RuntimeName for ID3D11GeometryShader {}
unsafe impl Send for ID3D11GeometryShader {}
unsafe impl Sync for ID3D11GeometryShader {}
windows_core::imp::define_interface!(
ID3D11HullShader,
ID3D11HullShader_Vtbl,
0x8e5c6061_628a_4c8e_8264_bbe45cb3d5dd
);
impl core::ops::Deref for ID3D11HullShader {
type Target = ID3D11DeviceChild;
fn deref(&self) -> &Self::Target {
unsafe { core::mem::transmute(self) }
}
}
windows_core::imp::interface_hierarchy!(
ID3D11HullShader,
windows_core::IUnknown,
ID3D11DeviceChild
);
#[repr(C)]
pub struct ID3D11HullShader_Vtbl {
pub base__: ID3D11DeviceChild_Vtbl,
}
pub trait ID3D11HullShader_Impl: ID3D11DeviceChild_Impl {}
impl ID3D11HullShader_Vtbl {
pub const fn new<Identity: ID3D11HullShader_Impl, const OFFSET: isize>() -> Self {
Self {
base__: ID3D11DeviceChild_Vtbl::new::<Identity, OFFSET>(),
}
}
pub fn matches(iid: &windows_core::GUID) -> bool {
iid == &<ID3D11HullShader as windows_core::Interface>::IID
|| iid == &<ID3D11DeviceChild as windows_core::Interface>::IID
}
}
impl windows_core::RuntimeName for ID3D11HullShader {}
unsafe impl Send for ID3D11HullShader {}
unsafe impl Sync for ID3D11HullShader {}
windows_core::imp::define_interface!(
ID3D11InfoQueue,
ID3D11InfoQueue_Vtbl,
0x6543dbb6_1b48_42f5_ab82_e97ec74326f6
);
windows_core::imp::interface_hierarchy!(ID3D11InfoQueue, windows_core::IUnknown);
impl ID3D11InfoQueue {
pub unsafe fn SetMessageCountLimit(&self, messagecountlimit: u64) -> windows_core::Result<()> {
unsafe {
(windows_core::Interface::vtable(self).SetMessageCountLimit)(
windows_core::Interface::as_raw(self),
messagecountlimit,
)
.ok()
}
}
pub unsafe fn ClearStoredMessages(&self) {
unsafe {
(windows_core::Interface::vtable(self).ClearStoredMessages)(
windows_core::Interface::as_raw(self),
)
}
}
pub unsafe fn GetMessage(
&self,
messageindex: u64,
pmessage: Option<*mut D3D11_MESSAGE>,
pmessagebytelength: *mut usize,
) -> windows_core::Result<()> {
unsafe {
(windows_core::Interface::vtable(self).GetMessage)(
windows_core::Interface::as_raw(self),
messageindex,
core::mem::transmute(pmessage.unwrap_or(core::mem::zeroed())),
core::mem::transmute(pmessagebytelength),
)
.ok()
}
}
pub unsafe fn GetNumMessagesAllowedByStorageFilter(&self) -> u64 {
unsafe {
(windows_core::Interface::vtable(self).GetNumMessagesAllowedByStorageFilter)(
windows_core::Interface::as_raw(self),
)
}
}
pub unsafe fn GetNumMessagesDeniedByStorageFilter(&self) -> u64 {
unsafe {
(windows_core::Interface::vtable(self).GetNumMessagesDeniedByStorageFilter)(
windows_core::Interface::as_raw(self),
)
}
}
pub unsafe fn GetNumStoredMessages(&self) -> u64 {
unsafe {
(windows_core::Interface::vtable(self).GetNumStoredMessages)(
windows_core::Interface::as_raw(self),
)
}
}
pub unsafe fn GetNumStoredMessagesAllowedByRetrievalFilter(&self) -> u64 {
unsafe {
(windows_core::Interface::vtable(self).GetNumStoredMessagesAllowedByRetrievalFilter)(
windows_core::Interface::as_raw(self),
)
}
}
pub unsafe fn GetNumMessagesDiscardedByMessageCountLimit(&self) -> u64 {
unsafe {
(windows_core::Interface::vtable(self).GetNumMessagesDiscardedByMessageCountLimit)(
windows_core::Interface::as_raw(self),
)
}
}
pub unsafe fn GetMessageCountLimit(&self) -> u64 {
unsafe {
(windows_core::Interface::vtable(self).GetMessageCountLimit)(
windows_core::Interface::as_raw(self),
)
}
}
pub unsafe fn AddStorageFilterEntries(
&self,
pfilter: *const D3D11_INFO_QUEUE_FILTER,
) -> windows_core::Result<()> {
unsafe {
(windows_core::Interface::vtable(self).AddStorageFilterEntries)(
windows_core::Interface::as_raw(self),
pfilter,
)
.ok()
}
}
pub unsafe fn GetStorageFilter(
&self,
pfilter: Option<*mut D3D11_INFO_QUEUE_FILTER>,
pfilterbytelength: *mut usize,
) -> windows_core::Result<()> {
unsafe {
(windows_core::Interface::vtable(self).GetStorageFilter)(
windows_core::Interface::as_raw(self),
core::mem::transmute(pfilter.unwrap_or(core::mem::zeroed())),
core::mem::transmute(pfilterbytelength),
)
.ok()
}
}
pub unsafe fn ClearStorageFilter(&self) {
unsafe {
(windows_core::Interface::vtable(self).ClearStorageFilter)(
windows_core::Interface::as_raw(self),
)
}
}
pub unsafe fn PushEmptyStorageFilter(&self) -> windows_core::Result<()> {
unsafe {
(windows_core::Interface::vtable(self).PushEmptyStorageFilter)(
windows_core::Interface::as_raw(self),
)
.ok()
}
}
pub unsafe fn PushCopyOfStorageFilter(&self) -> windows_core::Result<()> {
unsafe {
(windows_core::Interface::vtable(self).PushCopyOfStorageFilter)(
windows_core::Interface::as_raw(self),
)
.ok()
}
}
pub unsafe fn PushStorageFilter(
&self,
pfilter: *const D3D11_INFO_QUEUE_FILTER,
) -> windows_core::Result<()> {
unsafe {
(windows_core::Interface::vtable(self).PushStorageFilter)(
windows_core::Interface::as_raw(self),
pfilter,
)
.ok()
}
}
pub unsafe fn PopStorageFilter(&self) {
unsafe {
(windows_core::Interface::vtable(self).PopStorageFilter)(
windows_core::Interface::as_raw(self),
)
}
}
pub unsafe fn GetStorageFilterStackSize(&self) -> u32 {
unsafe {
(windows_core::Interface::vtable(self).GetStorageFilterStackSize)(
windows_core::Interface::as_raw(self),
)
}
}
pub unsafe fn AddRetrievalFilterEntries(
&self,
pfilter: *const D3D11_INFO_QUEUE_FILTER,
) -> windows_core::Result<()> {
unsafe {
(windows_core::Interface::vtable(self).AddRetrievalFilterEntries)(
windows_core::Interface::as_raw(self),
pfilter,
)
.ok()
}
}
pub unsafe fn GetRetrievalFilter(
&self,
pfilter: Option<*mut D3D11_INFO_QUEUE_FILTER>,
pfilterbytelength: *mut usize,
) -> windows_core::Result<()> {
unsafe {
(windows_core::Interface::vtable(self).GetRetrievalFilter)(
windows_core::Interface::as_raw(self),
core::mem::transmute(pfilter.unwrap_or(core::mem::zeroed())),
core::mem::transmute(pfilterbytelength),
)
.ok()
}
}
pub unsafe fn ClearRetrievalFilter(&self) {
unsafe {
(windows_core::Interface::vtable(self).ClearRetrievalFilter)(
windows_core::Interface::as_raw(self),
)
}
}
pub unsafe fn PushEmptyRetrievalFilter(&self) -> windows_core::Result<()> {
unsafe {
(windows_core::Interface::vtable(self).PushEmptyRetrievalFilter)(
windows_core::Interface::as_raw(self),
)
.ok()
}
}
pub unsafe fn PushCopyOfRetrievalFilter(&self) -> windows_core::Result<()> {
unsafe {
(windows_core::Interface::vtable(self).PushCopyOfRetrievalFilter)(
windows_core::Interface::as_raw(self),
)
.ok()
}
}
pub unsafe fn PushRetrievalFilter(
&self,
pfilter: *const D3D11_INFO_QUEUE_FILTER,
) -> windows_core::Result<()> {
unsafe {
(windows_core::Interface::vtable(self).PushRetrievalFilter)(
windows_core::Interface::as_raw(self),
pfilter,
)
.ok()
}
}
pub unsafe fn PopRetrievalFilter(&self) {
unsafe {
(windows_core::Interface::vtable(self).PopRetrievalFilter)(
windows_core::Interface::as_raw(self),
)
}
}
pub unsafe fn GetRetrievalFilterStackSize(&self) -> u32 {
unsafe {
(windows_core::Interface::vtable(self).GetRetrievalFilterStackSize)(
windows_core::Interface::as_raw(self),
)
}
}
pub unsafe fn AddMessage<P3>(
&self,
category: D3D11_MESSAGE_CATEGORY,
severity: D3D11_MESSAGE_SEVERITY,
id: D3D11_MESSAGE_ID,
pdescription: P3,
) -> windows_core::Result<()>
where
P3: windows_core::Param<crate::core_supplemental::PCSTR>,
{
unsafe {
(windows_core::Interface::vtable(self).AddMessage)(
windows_core::Interface::as_raw(self),
category,
severity,
id,
pdescription.param().abi(),
)
.ok()
}
}
pub unsafe fn AddApplicationMessage<P1>(
&self,
severity: D3D11_MESSAGE_SEVERITY,
pdescription: P1,
) -> windows_core::Result<()>
where
P1: windows_core::Param<crate::core_supplemental::PCSTR>,
{
unsafe {
(windows_core::Interface::vtable(self).AddApplicationMessage)(
windows_core::Interface::as_raw(self),
severity,
pdescription.param().abi(),
)
.ok()
}
}
pub unsafe fn SetBreakOnCategory(
&self,
category: D3D11_MESSAGE_CATEGORY,
benable: bool,
) -> windows_core::Result<()> {
unsafe {
(windows_core::Interface::vtable(self).SetBreakOnCategory)(
windows_core::Interface::as_raw(self),
category,
benable.into(),
)
.ok()
}
}
pub unsafe fn SetBreakOnSeverity(
&self,
severity: D3D11_MESSAGE_SEVERITY,
benable: bool,
) -> windows_core::Result<()> {
unsafe {
(windows_core::Interface::vtable(self).SetBreakOnSeverity)(
windows_core::Interface::as_raw(self),
severity,
benable.into(),
)
.ok()
}
}
pub unsafe fn SetBreakOnID(
&self,
id: D3D11_MESSAGE_ID,
benable: bool,
) -> windows_core::Result<()> {
unsafe {
(windows_core::Interface::vtable(self).SetBreakOnID)(
windows_core::Interface::as_raw(self),
id,
benable.into(),
)
.ok()
}
}
pub unsafe fn GetBreakOnCategory(
&self,
category: D3D11_MESSAGE_CATEGORY,
) -> crate::Foundation::BOOL {
unsafe {
(windows_core::Interface::vtable(self).GetBreakOnCategory)(
windows_core::Interface::as_raw(self),
category,
)
}
}
pub unsafe fn GetBreakOnSeverity(
&self,
severity: D3D11_MESSAGE_SEVERITY,
) -> crate::Foundation::BOOL {
unsafe {
(windows_core::Interface::vtable(self).GetBreakOnSeverity)(
windows_core::Interface::as_raw(self),
severity,
)
}
}
pub unsafe fn GetBreakOnID(&self, id: D3D11_MESSAGE_ID) -> crate::Foundation::BOOL {
unsafe {
(windows_core::Interface::vtable(self).GetBreakOnID)(
windows_core::Interface::as_raw(self),
id,
)
}
}
pub unsafe fn SetMuteDebugOutput(&self, bmute: bool) {
unsafe {
(windows_core::Interface::vtable(self).SetMuteDebugOutput)(
windows_core::Interface::as_raw(self),
bmute.into(),
)
}
}
pub unsafe fn GetMuteDebugOutput(&self) -> crate::Foundation::BOOL {
unsafe {
(windows_core::Interface::vtable(self).GetMuteDebugOutput)(
windows_core::Interface::as_raw(self),
)
}
}
}
#[repr(C)]
pub struct ID3D11InfoQueue_Vtbl {
pub base__: windows_core::IUnknown_Vtbl,
pub SetMessageCountLimit:
unsafe extern "system" fn(*mut core::ffi::c_void, u64) -> windows_core::HRESULT,
pub ClearStoredMessages: unsafe extern "system" fn(*mut core::ffi::c_void),
pub GetMessage: unsafe extern "system" fn(
*mut core::ffi::c_void,
u64,
*mut D3D11_MESSAGE,
*mut usize,
) -> windows_core::HRESULT,
pub GetNumMessagesAllowedByStorageFilter:
unsafe extern "system" fn(*mut core::ffi::c_void) -> u64,
pub GetNumMessagesDeniedByStorageFilter:
unsafe extern "system" fn(*mut core::ffi::c_void) -> u64,
pub GetNumStoredMessages: unsafe extern "system" fn(*mut core::ffi::c_void) -> u64,
pub GetNumStoredMessagesAllowedByRetrievalFilter:
unsafe extern "system" fn(*mut core::ffi::c_void) -> u64,
pub GetNumMessagesDiscardedByMessageCountLimit:
unsafe extern "system" fn(*mut core::ffi::c_void) -> u64,
pub GetMessageCountLimit: unsafe extern "system" fn(*mut core::ffi::c_void) -> u64,
pub AddStorageFilterEntries: unsafe extern "system" fn(
*mut core::ffi::c_void,
*const D3D11_INFO_QUEUE_FILTER,
) -> windows_core::HRESULT,
pub GetStorageFilter: unsafe extern "system" fn(
*mut core::ffi::c_void,
*mut D3D11_INFO_QUEUE_FILTER,
*mut usize,
) -> windows_core::HRESULT,
pub ClearStorageFilter: unsafe extern "system" fn(*mut core::ffi::c_void),
pub PushEmptyStorageFilter:
unsafe extern "system" fn(*mut core::ffi::c_void) -> windows_core::HRESULT,
pub PushCopyOfStorageFilter:
unsafe extern "system" fn(*mut core::ffi::c_void) -> windows_core::HRESULT,
pub PushStorageFilter: unsafe extern "system" fn(
*mut core::ffi::c_void,
*const D3D11_INFO_QUEUE_FILTER,
) -> windows_core::HRESULT,
pub PopStorageFilter: unsafe extern "system" fn(*mut core::ffi::c_void),
pub GetStorageFilterStackSize: unsafe extern "system" fn(*mut core::ffi::c_void) -> u32,
pub AddRetrievalFilterEntries: unsafe extern "system" fn(
*mut core::ffi::c_void,
*const D3D11_INFO_QUEUE_FILTER,
) -> windows_core::HRESULT,
pub GetRetrievalFilter: unsafe extern "system" fn(
*mut core::ffi::c_void,
*mut D3D11_INFO_QUEUE_FILTER,
*mut usize,
) -> windows_core::HRESULT,
pub ClearRetrievalFilter: unsafe extern "system" fn(*mut core::ffi::c_void),
pub PushEmptyRetrievalFilter:
unsafe extern "system" fn(*mut core::ffi::c_void) -> windows_core::HRESULT,
pub PushCopyOfRetrievalFilter:
unsafe extern "system" fn(*mut core::ffi::c_void) -> windows_core::HRESULT,
pub PushRetrievalFilter: unsafe extern "system" fn(
*mut core::ffi::c_void,
*const D3D11_INFO_QUEUE_FILTER,
) -> windows_core::HRESULT,
pub PopRetrievalFilter: unsafe extern "system" fn(*mut core::ffi::c_void),
pub GetRetrievalFilterStackSize: unsafe extern "system" fn(*mut core::ffi::c_void) -> u32,
pub AddMessage: unsafe extern "system" fn(
*mut core::ffi::c_void,
D3D11_MESSAGE_CATEGORY,
D3D11_MESSAGE_SEVERITY,
D3D11_MESSAGE_ID,
crate::core_supplemental::PCSTR,
) -> windows_core::HRESULT,
pub AddApplicationMessage: unsafe extern "system" fn(
*mut core::ffi::c_void,
D3D11_MESSAGE_SEVERITY,
crate::core_supplemental::PCSTR,
) -> windows_core::HRESULT,
pub SetBreakOnCategory: unsafe extern "system" fn(
*mut core::ffi::c_void,
D3D11_MESSAGE_CATEGORY,
crate::Foundation::BOOL,
) -> windows_core::HRESULT,
pub SetBreakOnSeverity: unsafe extern "system" fn(
*mut core::ffi::c_void,
D3D11_MESSAGE_SEVERITY,
crate::Foundation::BOOL,
) -> windows_core::HRESULT,
pub SetBreakOnID: unsafe extern "system" fn(
*mut core::ffi::c_void,
D3D11_MESSAGE_ID,
crate::Foundation::BOOL,
) -> windows_core::HRESULT,
pub GetBreakOnCategory: unsafe extern "system" fn(
*mut core::ffi::c_void,
D3D11_MESSAGE_CATEGORY,
) -> crate::Foundation::BOOL,
pub GetBreakOnSeverity: unsafe extern "system" fn(
*mut core::ffi::c_void,
D3D11_MESSAGE_SEVERITY,
) -> crate::Foundation::BOOL,
pub GetBreakOnID: unsafe extern "system" fn(
*mut core::ffi::c_void,
D3D11_MESSAGE_ID,
) -> crate::Foundation::BOOL,
pub SetMuteDebugOutput:
unsafe extern "system" fn(*mut core::ffi::c_void, crate::Foundation::BOOL),
pub GetMuteDebugOutput:
unsafe extern "system" fn(*mut core::ffi::c_void) -> crate::Foundation::BOOL,
}
pub trait ID3D11InfoQueue_Impl: windows_core::IUnknownImpl {
fn SetMessageCountLimit(&self, messagecountlimit: u64) -> windows_core::Result<()>;
fn ClearStoredMessages(&self);
fn GetMessage(
&self,
messageindex: u64,
pmessage: *mut D3D11_MESSAGE,
pmessagebytelength: *mut usize,
) -> windows_core::Result<()>;
fn GetNumMessagesAllowedByStorageFilter(&self) -> u64;
fn GetNumMessagesDeniedByStorageFilter(&self) -> u64;
fn GetNumStoredMessages(&self) -> u64;
fn GetNumStoredMessagesAllowedByRetrievalFilter(&self) -> u64;
fn GetNumMessagesDiscardedByMessageCountLimit(&self) -> u64;
fn GetMessageCountLimit(&self) -> u64;
fn AddStorageFilterEntries(
&self,
pfilter: *const D3D11_INFO_QUEUE_FILTER,
) -> windows_core::Result<()>;
fn GetStorageFilter(
&self,
pfilter: *mut D3D11_INFO_QUEUE_FILTER,
pfilterbytelength: *mut usize,
) -> windows_core::Result<()>;
fn ClearStorageFilter(&self);
fn PushEmptyStorageFilter(&self) -> windows_core::Result<()>;
fn PushCopyOfStorageFilter(&self) -> windows_core::Result<()>;
fn PushStorageFilter(
&self,
pfilter: *const D3D11_INFO_QUEUE_FILTER,
) -> windows_core::Result<()>;
fn PopStorageFilter(&self);
fn GetStorageFilterStackSize(&self) -> u32;
fn AddRetrievalFilterEntries(
&self,
pfilter: *const D3D11_INFO_QUEUE_FILTER,
) -> windows_core::Result<()>;
fn GetRetrievalFilter(
&self,
pfilter: *mut D3D11_INFO_QUEUE_FILTER,
pfilterbytelength: *mut usize,
) -> windows_core::Result<()>;
fn ClearRetrievalFilter(&self);
fn PushEmptyRetrievalFilter(&self) -> windows_core::Result<()>;
fn PushCopyOfRetrievalFilter(&self) -> windows_core::Result<()>;
fn PushRetrievalFilter(
&self,
pfilter: *const D3D11_INFO_QUEUE_FILTER,
) -> windows_core::Result<()>;
fn PopRetrievalFilter(&self);
fn GetRetrievalFilterStackSize(&self) -> u32;
fn AddMessage(
&self,
category: D3D11_MESSAGE_CATEGORY,
severity: D3D11_MESSAGE_SEVERITY,
id: D3D11_MESSAGE_ID,
pdescription: &crate::core_supplemental::PCSTR,
) -> windows_core::Result<()>;
fn AddApplicationMessage(
&self,
severity: D3D11_MESSAGE_SEVERITY,
pdescription: &crate::core_supplemental::PCSTR,
) -> windows_core::Result<()>;
fn SetBreakOnCategory(
&self,
category: D3D11_MESSAGE_CATEGORY,
benable: crate::Foundation::BOOL,
) -> windows_core::Result<()>;
fn SetBreakOnSeverity(
&self,
severity: D3D11_MESSAGE_SEVERITY,
benable: crate::Foundation::BOOL,
) -> windows_core::Result<()>;
fn SetBreakOnID(
&self,
id: D3D11_MESSAGE_ID,
benable: crate::Foundation::BOOL,
) -> windows_core::Result<()>;
fn GetBreakOnCategory(
&self,
category: D3D11_MESSAGE_CATEGORY,
) -> crate::Foundation::BOOL;
fn GetBreakOnSeverity(
&self,
severity: D3D11_MESSAGE_SEVERITY,
) -> crate::Foundation::BOOL;
fn GetBreakOnID(&self, id: D3D11_MESSAGE_ID) -> crate::Foundation::BOOL;
fn SetMuteDebugOutput(&self, bmute: crate::Foundation::BOOL);
fn GetMuteDebugOutput(&self) -> crate::Foundation::BOOL;
}
impl ID3D11InfoQueue_Vtbl {
pub const fn new<Identity: ID3D11InfoQueue_Impl, const OFFSET: isize>() -> Self {
unsafe extern "system" fn SetMessageCountLimit<
Identity: ID3D11InfoQueue_Impl,
const OFFSET: isize,
>(
this: *mut core::ffi::c_void,
messagecountlimit: u64,
) -> windows_core::HRESULT {
unsafe {
let this: &Identity =
&*((this as *const *const ()).offset(OFFSET) as *const Identity);
ID3D11InfoQueue_Impl::SetMessageCountLimit(
this,
core::mem::transmute_copy(&messagecountlimit),
)
.into()
}
}
unsafe extern "system" fn ClearStoredMessages<
Identity: ID3D11InfoQueue_Impl,
const OFFSET: isize,
>(
this: *mut core::ffi::c_void,
) {
unsafe {
let this: &Identity =
&*((this as *const *const ()).offset(OFFSET) as *const Identity);
ID3D11InfoQueue_Impl::ClearStoredMessages(this)
}
}
unsafe extern "system" fn GetMessage<
Identity: ID3D11InfoQueue_Impl,
const OFFSET: isize,
>(
this: *mut core::ffi::c_void,
messageindex: u64,
pmessage: *mut D3D11_MESSAGE,
pmessagebytelength: *mut usize,
) -> windows_core::HRESULT {
unsafe {
let this: &Identity =
&*((this as *const *const ()).offset(OFFSET) as *const Identity);
ID3D11InfoQueue_Impl::GetMessage(
this,
core::mem::transmute_copy(&messageindex),
core::mem::transmute_copy(&pmessage),
core::mem::transmute_copy(&pmessagebytelength),
)
.into()
}
}
unsafe extern "system" fn GetNumMessagesAllowedByStorageFilter<
Identity: ID3D11InfoQueue_Impl,
const OFFSET: isize,
>(
this: *mut core::ffi::c_void,
) -> u64 {
unsafe {
let this: &Identity =
&*((this as *const *const ()).offset(OFFSET) as *const Identity);
ID3D11InfoQueue_Impl::GetNumMessagesAllowedByStorageFilter(this)
}
}
unsafe extern "system" fn GetNumMessagesDeniedByStorageFilter<
Identity: ID3D11InfoQueue_Impl,
const OFFSET: isize,
>(
this: *mut core::ffi::c_void,
) -> u64 {
unsafe {
let this: &Identity =
&*((this as *const *const ()).offset(OFFSET) as *const Identity);
ID3D11InfoQueue_Impl::GetNumMessagesDeniedByStorageFilter(this)
}
}
unsafe extern "system" fn GetNumStoredMessages<
Identity: ID3D11InfoQueue_Impl,
const OFFSET: isize,
>(
this: *mut core::ffi::c_void,
) -> u64 {
unsafe {
let this: &Identity =
&*((this as *const *const ()).offset(OFFSET) as *const Identity);
ID3D11InfoQueue_Impl::GetNumStoredMessages(this)
}
}
unsafe extern "system" fn GetNumStoredMessagesAllowedByRetrievalFilter<
Identity: ID3D11InfoQueue_Impl,
const OFFSET: isize,
>(
this: *mut core::ffi::c_void,
) -> u64 {
unsafe {
let this: &Identity =
&*((this as *const *const ()).offset(OFFSET) as *const Identity);
ID3D11InfoQueue_Impl::GetNumStoredMessagesAllowedByRetrievalFilter(this)
}
}
unsafe extern "system" fn GetNumMessagesDiscardedByMessageCountLimit<
Identity: ID3D11InfoQueue_Impl,
const OFFSET: isize,
>(
this: *mut core::ffi::c_void,
) -> u64 {
unsafe {
let this: &Identity =
&*((this as *const *const ()).offset(OFFSET) as *const Identity);
ID3D11InfoQueue_Impl::GetNumMessagesDiscardedByMessageCountLimit(this)
}
}
unsafe extern "system" fn GetMessageCountLimit<
Identity: ID3D11InfoQueue_Impl,
const OFFSET: isize,
>(
this: *mut core::ffi::c_void,
) -> u64 {
unsafe {
let this: &Identity =
&*((this as *const *const ()).offset(OFFSET) as *const Identity);
ID3D11InfoQueue_Impl::GetMessageCountLimit(this)
}
}
unsafe extern "system" fn AddStorageFilterEntries<
Identity: ID3D11InfoQueue_Impl,
const OFFSET: isize,
>(
this: *mut core::ffi::c_void,
pfilter: *const D3D11_INFO_QUEUE_FILTER,
) -> windows_core::HRESULT {
unsafe {
let this: &Identity =
&*((this as *const *const ()).offset(OFFSET) as *const Identity);
ID3D11InfoQueue_Impl::AddStorageFilterEntries(
this,
core::mem::transmute_copy(&pfilter),
)
.into()
}
}
unsafe extern "system" fn GetStorageFilter<
Identity: ID3D11InfoQueue_Impl,
const OFFSET: isize,
>(
this: *mut core::ffi::c_void,
pfilter: *mut D3D11_INFO_QUEUE_FILTER,
pfilterbytelength: *mut usize,
) -> windows_core::HRESULT {
unsafe {
let this: &Identity =
&*((this as *const *const ()).offset(OFFSET) as *const Identity);
ID3D11InfoQueue_Impl::GetStorageFilter(
this,
core::mem::transmute_copy(&pfilter),
core::mem::transmute_copy(&pfilterbytelength),
)
.into()
}
}
unsafe extern "system" fn ClearStorageFilter<
Identity: ID3D11InfoQueue_Impl,
const OFFSET: isize,
>(
this: *mut core::ffi::c_void,
) {
unsafe {
let this: &Identity =
&*((this as *const *const ()).offset(OFFSET) as *const Identity);
ID3D11InfoQueue_Impl::ClearStorageFilter(this)
}
}
unsafe extern "system" fn PushEmptyStorageFilter<
Identity: ID3D11InfoQueue_Impl,
const OFFSET: isize,
>(
this: *mut core::ffi::c_void,
) -> windows_core::HRESULT {
unsafe {
let this: &Identity =
&*((this as *const *const ()).offset(OFFSET) as *const Identity);
ID3D11InfoQueue_Impl::PushEmptyStorageFilter(this).into()
}
}
unsafe extern "system" fn PushCopyOfStorageFilter<
Identity: ID3D11InfoQueue_Impl,
const OFFSET: isize,
>(
this: *mut core::ffi::c_void,
) -> windows_core::HRESULT {
unsafe {
let this: &Identity =
&*((this as *const *const ()).offset(OFFSET) as *const Identity);
ID3D11InfoQueue_Impl::PushCopyOfStorageFilter(this).into()
}
}
unsafe extern "system" fn PushStorageFilter<
Identity: ID3D11InfoQueue_Impl,
const OFFSET: isize,
>(
this: *mut core::ffi::c_void,
pfilter: *const D3D11_INFO_QUEUE_FILTER,
) -> windows_core::HRESULT {
unsafe {
let this: &Identity =
&*((this as *const *const ()).offset(OFFSET) as *const Identity);
ID3D11InfoQueue_Impl::PushStorageFilter(this, core::mem::transmute_copy(&pfilter))
.into()
}
}
unsafe extern "system" fn PopStorageFilter<
Identity: ID3D11InfoQueue_Impl,
const OFFSET: isize,
>(
this: *mut core::ffi::c_void,
) {
unsafe {
let this: &Identity =
&*((this as *const *const ()).offset(OFFSET) as *const Identity);
ID3D11InfoQueue_Impl::PopStorageFilter(this)
}
}
unsafe extern "system" fn GetStorageFilterStackSize<
Identity: ID3D11InfoQueue_Impl,
const OFFSET: isize,
>(
this: *mut core::ffi::c_void,
) -> u32 {
unsafe {
let this: &Identity =
&*((this as *const *const ()).offset(OFFSET) as *const Identity);
ID3D11InfoQueue_Impl::GetStorageFilterStackSize(this)
}
}
unsafe extern "system" fn AddRetrievalFilterEntries<
Identity: ID3D11InfoQueue_Impl,
const OFFSET: isize,
>(
this: *mut core::ffi::c_void,
pfilter: *const D3D11_INFO_QUEUE_FILTER,
) -> windows_core::HRESULT {
unsafe {
let this: &Identity =
&*((this as *const *const ()).offset(OFFSET) as *const Identity);
ID3D11InfoQueue_Impl::AddRetrievalFilterEntries(
this,
core::mem::transmute_copy(&pfilter),
)
.into()
}
}
unsafe extern "system" fn GetRetrievalFilter<
Identity: ID3D11InfoQueue_Impl,
const OFFSET: isize,
>(
this: *mut core::ffi::c_void,
pfilter: *mut D3D11_INFO_QUEUE_FILTER,
pfilterbytelength: *mut usize,
) -> windows_core::HRESULT {
unsafe {
let this: &Identity =
&*((this as *const *const ()).offset(OFFSET) as *const Identity);
ID3D11InfoQueue_Impl::GetRetrievalFilter(
this,
core::mem::transmute_copy(&pfilter),
core::mem::transmute_copy(&pfilterbytelength),
)
.into()
}
}
unsafe extern "system" fn ClearRetrievalFilter<
Identity: ID3D11InfoQueue_Impl,
const OFFSET: isize,
>(
this: *mut core::ffi::c_void,
) {
unsafe {
let this: &Identity =
&*((this as *const *const ()).offset(OFFSET) as *const Identity);
ID3D11InfoQueue_Impl::ClearRetrievalFilter(this)
}
}
unsafe extern "system" fn PushEmptyRetrievalFilter<
Identity: ID3D11InfoQueue_Impl,
const OFFSET: isize,
>(
this: *mut core::ffi::c_void,
) -> windows_core::HRESULT {
unsafe {
let this: &Identity =
&*((this as *const *const ()).offset(OFFSET) as *const Identity);
ID3D11InfoQueue_Impl::PushEmptyRetrievalFilter(this).into()
}
}
unsafe extern "system" fn PushCopyOfRetrievalFilter<
Identity: ID3D11InfoQueue_Impl,
const OFFSET: isize,
>(
this: *mut core::ffi::c_void,
) -> windows_core::HRESULT {
unsafe {
let this: &Identity =
&*((this as *const *const ()).offset(OFFSET) as *const Identity);
ID3D11InfoQueue_Impl::PushCopyOfRetrievalFilter(this).into()
}
}
unsafe extern "system" fn PushRetrievalFilter<
Identity: ID3D11InfoQueue_Impl,
const OFFSET: isize,
>(
this: *mut core::ffi::c_void,
pfilter: *const D3D11_INFO_QUEUE_FILTER,
) -> windows_core::HRESULT {
unsafe {
let this: &Identity =
&*((this as *const *const ()).offset(OFFSET) as *const Identity);
ID3D11InfoQueue_Impl::PushRetrievalFilter(this, core::mem::transmute_copy(&pfilter))
.into()
}
}
unsafe extern "system" fn PopRetrievalFilter<
Identity: ID3D11InfoQueue_Impl,
const OFFSET: isize,
>(
this: *mut core::ffi::c_void,
) {
unsafe {
let this: &Identity =
&*((this as *const *const ()).offset(OFFSET) as *const Identity);
ID3D11InfoQueue_Impl::PopRetrievalFilter(this)
}
}
unsafe extern "system" fn GetRetrievalFilterStackSize<
Identity: ID3D11InfoQueue_Impl,
const OFFSET: isize,
>(
this: *mut core::ffi::c_void,
) -> u32 {
unsafe {
let this: &Identity =
&*((this as *const *const ()).offset(OFFSET) as *const Identity);
ID3D11InfoQueue_Impl::GetRetrievalFilterStackSize(this)
}
}
unsafe extern "system" fn AddMessage<
Identity: ID3D11InfoQueue_Impl,
const OFFSET: isize,
>(
this: *mut core::ffi::c_void,
category: D3D11_MESSAGE_CATEGORY,
severity: D3D11_MESSAGE_SEVERITY,
id: D3D11_MESSAGE_ID,
pdescription: crate::core_supplemental::PCSTR,
) -> windows_core::HRESULT {
unsafe {
let this: &Identity =
&*((this as *const *const ()).offset(OFFSET) as *const Identity);
ID3D11InfoQueue_Impl::AddMessage(
this,
core::mem::transmute_copy(&category),
core::mem::transmute_copy(&severity),
core::mem::transmute_copy(&id),
core::mem::transmute(&pdescription),
)
.into()
}
}
unsafe extern "system" fn AddApplicationMessage<
Identity: ID3D11InfoQueue_Impl,
const OFFSET: isize,
>(
this: *mut core::ffi::c_void,
severity: D3D11_MESSAGE_SEVERITY,
pdescription: crate::core_supplemental::PCSTR,
) -> windows_core::HRESULT {
unsafe {
let this: &Identity =
&*((this as *const *const ()).offset(OFFSET) as *const Identity);
ID3D11InfoQueue_Impl::AddApplicationMessage(
this,
core::mem::transmute_copy(&severity),
core::mem::transmute(&pdescription),
)
.into()
}
}
unsafe extern "system" fn SetBreakOnCategory<
Identity: ID3D11InfoQueue_Impl,
const OFFSET: isize,
>(
this: *mut core::ffi::c_void,
category: D3D11_MESSAGE_CATEGORY,
benable: crate::Foundation::BOOL,
) -> windows_core::HRESULT {
unsafe {
let this: &Identity =
&*((this as *const *const ()).offset(OFFSET) as *const Identity);
ID3D11InfoQueue_Impl::SetBreakOnCategory(
this,
core::mem::transmute_copy(&category),
core::mem::transmute_copy(&benable),
)
.into()
}
}
unsafe extern "system" fn SetBreakOnSeverity<
Identity: ID3D11InfoQueue_Impl,
const OFFSET: isize,
>(
this: *mut core::ffi::c_void,
severity: D3D11_MESSAGE_SEVERITY,
benable: crate::Foundation::BOOL,
) -> windows_core::HRESULT {
unsafe {
let this: &Identity =
&*((this as *const *const ()).offset(OFFSET) as *const Identity);
ID3D11InfoQueue_Impl::SetBreakOnSeverity(
this,
core::mem::transmute_copy(&severity),
core::mem::transmute_copy(&benable),
)
.into()
}
}
unsafe extern "system" fn SetBreakOnID<
Identity: ID3D11InfoQueue_Impl,
const OFFSET: isize,
>(
this: *mut core::ffi::c_void,
id: D3D11_MESSAGE_ID,
benable: crate::Foundation::BOOL,
) -> windows_core::HRESULT {
unsafe {
let this: &Identity =
&*((this as *const *const ()).offset(OFFSET) as *const Identity);
ID3D11InfoQueue_Impl::SetBreakOnID(
this,
core::mem::transmute_copy(&id),
core::mem::transmute_copy(&benable),
)
.into()
}
}
unsafe extern "system" fn GetBreakOnCategory<
Identity: ID3D11InfoQueue_Impl,
const OFFSET: isize,
>(
this: *mut core::ffi::c_void,
category: D3D11_MESSAGE_CATEGORY,
) -> crate::Foundation::BOOL {
unsafe {
let this: &Identity =
&*((this as *const *const ()).offset(OFFSET) as *const Identity);
ID3D11InfoQueue_Impl::GetBreakOnCategory(this, core::mem::transmute_copy(&category))
}
}
unsafe extern "system" fn GetBreakOnSeverity<
Identity: ID3D11InfoQueue_Impl,
const OFFSET: isize,
>(
this: *mut core::ffi::c_void,
severity: D3D11_MESSAGE_SEVERITY,
) -> crate::Foundation::BOOL {
unsafe {
let this: &Identity =
&*((this as *const *const ()).offset(OFFSET) as *const Identity);
ID3D11InfoQueue_Impl::GetBreakOnSeverity(this, core::mem::transmute_copy(&severity))
}
}
unsafe extern "system" fn GetBreakOnID<
Identity: ID3D11InfoQueue_Impl,
const OFFSET: isize,
>(
this: *mut core::ffi::c_void,
id: D3D11_MESSAGE_ID,
) -> crate::Foundation::BOOL {
unsafe {
let this: &Identity =
&*((this as *const *const ()).offset(OFFSET) as *const Identity);
ID3D11InfoQueue_Impl::GetBreakOnID(this, core::mem::transmute_copy(&id))
}
}
unsafe extern "system" fn SetMuteDebugOutput<
Identity: ID3D11InfoQueue_Impl,
const OFFSET: isize,
>(
this: *mut core::ffi::c_void,
bmute: crate::Foundation::BOOL,
) {
unsafe {
let this: &Identity =
&*((this as *const *const ()).offset(OFFSET) as *const Identity);
ID3D11InfoQueue_Impl::SetMuteDebugOutput(this, core::mem::transmute_copy(&bmute))
}
}
unsafe extern "system" fn GetMuteDebugOutput<
Identity: ID3D11InfoQueue_Impl,
const OFFSET: isize,
>(
this: *mut core::ffi::c_void,
) -> crate::Foundation::BOOL {
unsafe {
let this: &Identity =
&*((this as *const *const ()).offset(OFFSET) as *const Identity);
ID3D11InfoQueue_Impl::GetMuteDebugOutput(this)
}
}
Self {
base__: windows_core::IUnknown_Vtbl::new::<Identity, OFFSET>(),
SetMessageCountLimit: SetMessageCountLimit::<Identity, OFFSET>,
ClearStoredMessages: ClearStoredMessages::<Identity, OFFSET>,
GetMessage: GetMessage::<Identity, OFFSET>,
GetNumMessagesAllowedByStorageFilter: GetNumMessagesAllowedByStorageFilter::<
Identity,
OFFSET,
>,
GetNumMessagesDeniedByStorageFilter: GetNumMessagesDeniedByStorageFilter::<
Identity,
OFFSET,
>,
GetNumStoredMessages: GetNumStoredMessages::<Identity, OFFSET>,
GetNumStoredMessagesAllowedByRetrievalFilter:
GetNumStoredMessagesAllowedByRetrievalFilter::<Identity, OFFSET>,
GetNumMessagesDiscardedByMessageCountLimit: GetNumMessagesDiscardedByMessageCountLimit::<
Identity,
OFFSET,
>,
GetMessageCountLimit: GetMessageCountLimit::<Identity, OFFSET>,
AddStorageFilterEntries: AddStorageFilterEntries::<Identity, OFFSET>,
GetStorageFilter: GetStorageFilter::<Identity, OFFSET>,
ClearStorageFilter: ClearStorageFilter::<Identity, OFFSET>,
PushEmptyStorageFilter: PushEmptyStorageFilter::<Identity, OFFSET>,
PushCopyOfStorageFilter: PushCopyOfStorageFilter::<Identity, OFFSET>,
PushStorageFilter: PushStorageFilter::<Identity, OFFSET>,
PopStorageFilter: PopStorageFilter::<Identity, OFFSET>,
GetStorageFilterStackSize: GetStorageFilterStackSize::<Identity, OFFSET>,
AddRetrievalFilterEntries: AddRetrievalFilterEntries::<Identity, OFFSET>,
GetRetrievalFilter: GetRetrievalFilter::<Identity, OFFSET>,
ClearRetrievalFilter: ClearRetrievalFilter::<Identity, OFFSET>,
PushEmptyRetrievalFilter: PushEmptyRetrievalFilter::<Identity, OFFSET>,
PushCopyOfRetrievalFilter: PushCopyOfRetrievalFilter::<Identity, OFFSET>,
PushRetrievalFilter: PushRetrievalFilter::<Identity, OFFSET>,
PopRetrievalFilter: PopRetrievalFilter::<Identity, OFFSET>,
GetRetrievalFilterStackSize: GetRetrievalFilterStackSize::<Identity, OFFSET>,
AddMessage: AddMessage::<Identity, OFFSET>,
AddApplicationMessage: AddApplicationMessage::<Identity, OFFSET>,
SetBreakOnCategory: SetBreakOnCategory::<Identity, OFFSET>,
SetBreakOnSeverity: SetBreakOnSeverity::<Identity, OFFSET>,
SetBreakOnID: SetBreakOnID::<Identity, OFFSET>,
GetBreakOnCategory: GetBreakOnCategory::<Identity, OFFSET>,
GetBreakOnSeverity: GetBreakOnSeverity::<Identity, OFFSET>,
GetBreakOnID: GetBreakOnID::<Identity, OFFSET>,
SetMuteDebugOutput: SetMuteDebugOutput::<Identity, OFFSET>,
GetMuteDebugOutput: GetMuteDebugOutput::<Identity, OFFSET>,
}
}
pub fn matches(iid: &windows_core::GUID) -> bool {
iid == &<ID3D11InfoQueue as windows_core::Interface>::IID
}
}
impl windows_core::RuntimeName for ID3D11InfoQueue {}
unsafe impl Send for ID3D11InfoQueue {}
unsafe impl Sync for ID3D11InfoQueue {}
windows_core::imp::define_interface!(
ID3D11InputLayout,
ID3D11InputLayout_Vtbl,
0xe4819ddc_4cf0_4025_bd26_5de82a3e07b7
);
impl core::ops::Deref for ID3D11InputLayout {
type Target = ID3D11DeviceChild;
fn deref(&self) -> &Self::Target {
unsafe { core::mem::transmute(self) }
}
}
windows_core::imp::interface_hierarchy!(
ID3D11InputLayout,
windows_core::IUnknown,
ID3D11DeviceChild
);
#[repr(C)]
pub struct ID3D11InputLayout_Vtbl {
pub base__: ID3D11DeviceChild_Vtbl,
}
pub trait ID3D11InputLayout_Impl: ID3D11DeviceChild_Impl {}
impl ID3D11InputLayout_Vtbl {
pub const fn new<Identity: ID3D11InputLayout_Impl, const OFFSET: isize>() -> Self {
Self {
base__: ID3D11DeviceChild_Vtbl::new::<Identity, OFFSET>(),
}
}
pub fn matches(iid: &windows_core::GUID) -> bool {
iid == &<ID3D11InputLayout as windows_core::Interface>::IID
|| iid == &<ID3D11DeviceChild as windows_core::Interface>::IID
}
}
impl windows_core::RuntimeName for ID3D11InputLayout {}
unsafe impl Send for ID3D11InputLayout {}
unsafe impl Sync for ID3D11InputLayout {}
windows_core::imp::define_interface!(
ID3D11LibraryReflection,
ID3D11LibraryReflection_Vtbl,
0x54384f1b_5b3e_4bb7_ae01_60ba3097cbb6
);
windows_core::imp::interface_hierarchy!(ID3D11LibraryReflection, windows_core::IUnknown);
impl ID3D11LibraryReflection {
pub unsafe fn GetDesc(&self) -> windows_core::Result<D3D11_LIBRARY_DESC> {
unsafe {
let mut result__ = core::mem::zeroed();
(windows_core::Interface::vtable(self).GetDesc)(
windows_core::Interface::as_raw(self),
&mut result__,
)
.map(|| result__)
}
}
pub unsafe fn GetFunctionByIndex(
&self,
functionindex: i32,
) -> Option<ID3D11FunctionReflection> {
unsafe {
(windows_core::Interface::vtable(self).GetFunctionByIndex)(
windows_core::Interface::as_raw(self),
functionindex,
)
}
}
}
#[repr(C)]
pub struct ID3D11LibraryReflection_Vtbl {
pub base__: windows_core::IUnknown_Vtbl,
pub GetDesc: unsafe extern "system" fn(
*mut core::ffi::c_void,
*mut D3D11_LIBRARY_DESC,
) -> windows_core::HRESULT,
pub GetFunctionByIndex:
unsafe extern "system" fn(*mut core::ffi::c_void, i32) -> Option<ID3D11FunctionReflection>,
}
pub trait ID3D11LibraryReflection_Impl: windows_core::IUnknownImpl {
fn GetDesc(&self) -> windows_core::Result<D3D11_LIBRARY_DESC>;
fn GetFunctionByIndex(&self, functionindex: i32) -> Option<ID3D11FunctionReflection>;
}
impl ID3D11LibraryReflection_Vtbl {
pub const fn new<Identity: ID3D11LibraryReflection_Impl, const OFFSET: isize>() -> Self {
unsafe extern "system" fn GetDesc<
Identity: ID3D11LibraryReflection_Impl,
const OFFSET: isize,
>(
this: *mut core::ffi::c_void,
pdesc: *mut D3D11_LIBRARY_DESC,
) -> windows_core::HRESULT {
unsafe {
let this: &Identity =
&*((this as *const *const ()).offset(OFFSET) as *const Identity);
match ID3D11LibraryReflection_Impl::GetDesc(this) {
Ok(ok__) => {
pdesc.write(core::mem::transmute(ok__));
windows_core::HRESULT(0)
}
Err(err) => err.into(),
}
}
}
unsafe extern "system" fn GetFunctionByIndex<
Identity: ID3D11LibraryReflection_Impl,
const OFFSET: isize,
>(
this: *mut core::ffi::c_void,
functionindex: i32,
) -> Option<ID3D11FunctionReflection> {
unsafe {
let this: &Identity =
&*((this as *const *const ()).offset(OFFSET) as *const Identity);
ID3D11LibraryReflection_Impl::GetFunctionByIndex(
this,
core::mem::transmute_copy(&functionindex),
)
}
}
Self {
base__: windows_core::IUnknown_Vtbl::new::<Identity, OFFSET>(),
GetDesc: GetDesc::<Identity, OFFSET>,
GetFunctionByIndex: GetFunctionByIndex::<Identity, OFFSET>,
}
}
pub fn matches(iid: &windows_core::GUID) -> bool {
iid == &<ID3D11LibraryReflection as windows_core::Interface>::IID
}
}
impl windows_core::RuntimeName for ID3D11LibraryReflection {}
unsafe impl Send for ID3D11LibraryReflection {}
unsafe impl Sync for ID3D11LibraryReflection {}
windows_core::imp::define_interface!(
ID3D11Linker,
ID3D11Linker_Vtbl,
0x59a6cd0e_e10d_4c1f_88c0_63aba1daf30e
);
windows_core::imp::interface_hierarchy!(ID3D11Linker, windows_core::IUnknown);
impl ID3D11Linker {
#[cfg(feature = "Win32_Graphics_Direct3D")]
pub unsafe fn Link<P0, P1, P2>(
&self,
pentry: P0,
pentryname: P1,
ptargetname: P2,
uflags: u32,
ppshaderblob: *mut Option<super::Direct3D::ID3DBlob>,
pperrorbuffer: Option<*mut Option<super::Direct3D::ID3DBlob>>,
) -> windows_core::Result<()>
where
P0: windows_core::Param<ID3D11ModuleInstance>,
P1: windows_core::Param<crate::core_supplemental::PCSTR>,
P2: windows_core::Param<crate::core_supplemental::PCSTR>,
{
unsafe {
(windows_core::Interface::vtable(self).Link)(
windows_core::Interface::as_raw(self),
pentry.param().abi(),
pentryname.param().abi(),
ptargetname.param().abi(),
uflags,
core::mem::transmute(ppshaderblob),
core::mem::transmute(pperrorbuffer.unwrap_or(core::mem::zeroed())),
)
.ok()
}
}
pub unsafe fn UseLibrary<P0>(&self, plibrarymi: P0) -> windows_core::Result<()>
where
P0: windows_core::Param<ID3D11ModuleInstance>,
{
unsafe {
(windows_core::Interface::vtable(self).UseLibrary)(
windows_core::Interface::as_raw(self),
plibrarymi.param().abi(),
)
.ok()
}
}
pub unsafe fn AddClipPlaneFromCBuffer(
&self,
ucbufferslot: u32,
ucbufferentry: u32,
) -> windows_core::Result<()> {
unsafe {
(windows_core::Interface::vtable(self).AddClipPlaneFromCBuffer)(
windows_core::Interface::as_raw(self),
ucbufferslot,
ucbufferentry,
)
.ok()
}
}
}
#[repr(C)]
pub struct ID3D11Linker_Vtbl {
pub base__: windows_core::IUnknown_Vtbl,
#[cfg(feature = "Win32_Graphics_Direct3D")]
pub Link: unsafe extern "system" fn(
*mut core::ffi::c_void,
*mut core::ffi::c_void,
crate::core_supplemental::PCSTR,
crate::core_supplemental::PCSTR,
u32,
*mut *mut core::ffi::c_void,
*mut *mut core::ffi::c_void,
) -> windows_core::HRESULT,
#[cfg(not(feature = "Win32_Graphics_Direct3D"))]
Link: usize,
pub UseLibrary: unsafe extern "system" fn(
*mut core::ffi::c_void,
*mut core::ffi::c_void,
) -> windows_core::HRESULT,
pub AddClipPlaneFromCBuffer:
unsafe extern "system" fn(*mut core::ffi::c_void, u32, u32) -> windows_core::HRESULT,
}
#[cfg(feature = "Win32_Graphics_Direct3D")]
pub trait ID3D11Linker_Impl: windows_core::IUnknownImpl {
fn Link(
&self,
pentry: windows_core::Ref<'_, ID3D11ModuleInstance>,
pentryname: &crate::core_supplemental::PCSTR,
ptargetname: &crate::core_supplemental::PCSTR,
uflags: u32,
ppshaderblob: windows_core::OutRef<'_, super::Direct3D::ID3DBlob>,
pperrorbuffer: windows_core::OutRef<'_, super::Direct3D::ID3DBlob>,
) -> windows_core::Result<()>;
fn UseLibrary(
&self,
plibrarymi: windows_core::Ref<'_, ID3D11ModuleInstance>,
) -> windows_core::Result<()>;
fn AddClipPlaneFromCBuffer(
&self,
ucbufferslot: u32,
ucbufferentry: u32,
) -> windows_core::Result<()>;
}
#[cfg(feature = "Win32_Graphics_Direct3D")]
impl ID3D11Linker_Vtbl {
pub const fn new<Identity: ID3D11Linker_Impl, const OFFSET: isize>() -> Self {
unsafe extern "system" fn Link<Identity: ID3D11Linker_Impl, const OFFSET: isize>(
this: *mut core::ffi::c_void,
pentry: *mut core::ffi::c_void,
pentryname: crate::core_supplemental::PCSTR,
ptargetname: crate::core_supplemental::PCSTR,
uflags: u32,
ppshaderblob: *mut *mut core::ffi::c_void,
pperrorbuffer: *mut *mut core::ffi::c_void,
) -> windows_core::HRESULT {
unsafe {
let this: &Identity =
&*((this as *const *const ()).offset(OFFSET) as *const Identity);
ID3D11Linker_Impl::Link(
this,
core::mem::transmute_copy(&pentry),
core::mem::transmute(&pentryname),
core::mem::transmute(&ptargetname),
core::mem::transmute_copy(&uflags),
core::mem::transmute_copy(&ppshaderblob),
core::mem::transmute_copy(&pperrorbuffer),
)
.into()
}
}
unsafe extern "system" fn UseLibrary<Identity: ID3D11Linker_Impl, const OFFSET: isize>(
this: *mut core::ffi::c_void,
plibrarymi: *mut core::ffi::c_void,
) -> windows_core::HRESULT {
unsafe {
let this: &Identity =
&*((this as *const *const ()).offset(OFFSET) as *const Identity);
ID3D11Linker_Impl::UseLibrary(this, core::mem::transmute_copy(&plibrarymi)).into()
}
}
unsafe extern "system" fn AddClipPlaneFromCBuffer<
Identity: ID3D11Linker_Impl,
const OFFSET: isize,
>(
this: *mut core::ffi::c_void,
ucbufferslot: u32,
ucbufferentry: u32,
) -> windows_core::HRESULT {
unsafe {
let this: &Identity =
&*((this as *const *const ()).offset(OFFSET) as *const Identity);
ID3D11Linker_Impl::AddClipPlaneFromCBuffer(
this,
core::mem::transmute_copy(&ucbufferslot),
core::mem::transmute_copy(&ucbufferentry),
)
.into()
}
}
Self {
base__: windows_core::IUnknown_Vtbl::new::<Identity, OFFSET>(),
Link: Link::<Identity, OFFSET>,
UseLibrary: UseLibrary::<Identity, OFFSET>,
AddClipPlaneFromCBuffer: AddClipPlaneFromCBuffer::<Identity, OFFSET>,
}
}
pub fn matches(iid: &windows_core::GUID) -> bool {
iid == &<ID3D11Linker as windows_core::Interface>::IID
}
}
#[cfg(feature = "Win32_Graphics_Direct3D")]
impl windows_core::RuntimeName for ID3D11Linker {}
#[cfg(feature = "Win32_Graphics_Direct3D")]
unsafe impl Send for ID3D11Linker {}
#[cfg(feature = "Win32_Graphics_Direct3D")]
unsafe impl Sync for ID3D11Linker {}
windows_core::imp::define_interface!(
ID3D11LinkingNode,
ID3D11LinkingNode_Vtbl,
0xd80dd70c_8d2f_4751_94a1_03c79b3556db
);
windows_core::imp::interface_hierarchy!(ID3D11LinkingNode, windows_core::IUnknown);
#[repr(C)]
pub struct ID3D11LinkingNode_Vtbl {
pub base__: windows_core::IUnknown_Vtbl,
}
pub trait ID3D11LinkingNode_Impl: windows_core::IUnknownImpl {}
impl ID3D11LinkingNode_Vtbl {
pub const fn new<Identity: ID3D11LinkingNode_Impl, const OFFSET: isize>() -> Self {
Self {
base__: windows_core::IUnknown_Vtbl::new::<Identity, OFFSET>(),
}
}
pub fn matches(iid: &windows_core::GUID) -> bool {
iid == &<ID3D11LinkingNode as windows_core::Interface>::IID
}
}
impl windows_core::RuntimeName for ID3D11LinkingNode {}
unsafe impl Send for ID3D11LinkingNode {}
unsafe impl Sync for ID3D11LinkingNode {}
windows_core::imp::define_interface!(
ID3D11Module,
ID3D11Module_Vtbl,
0xcac701ee_80fc_4122_8242_10b39c8cec34
);
windows_core::imp::interface_hierarchy!(ID3D11Module, windows_core::IUnknown);
impl ID3D11Module {
pub unsafe fn CreateInstance<P0>(
&self,
pnamespace: P0,
) -> windows_core::Result<ID3D11ModuleInstance>
where
P0: windows_core::Param<crate::core_supplemental::PCSTR>,
{
unsafe {
let mut result__ = core::mem::zeroed();
(windows_core::Interface::vtable(self).CreateInstance)(
windows_core::Interface::as_raw(self),
pnamespace.param().abi(),
&mut result__,
)
.and_then(|| windows_core::Type::from_abi(result__))
}
}
}
#[repr(C)]
pub struct ID3D11Module_Vtbl {
pub base__: windows_core::IUnknown_Vtbl,
pub CreateInstance: unsafe extern "system" fn(
*mut core::ffi::c_void,
crate::core_supplemental::PCSTR,
*mut *mut core::ffi::c_void,
) -> windows_core::HRESULT,
}
pub trait ID3D11Module_Impl: windows_core::IUnknownImpl {
fn CreateInstance(
&self,
pnamespace: &crate::core_supplemental::PCSTR,
) -> windows_core::Result<ID3D11ModuleInstance>;
}
impl ID3D11Module_Vtbl {
pub const fn new<Identity: ID3D11Module_Impl, const OFFSET: isize>() -> Self {
unsafe extern "system" fn CreateInstance<
Identity: ID3D11Module_Impl,
const OFFSET: isize,
>(
this: *mut core::ffi::c_void,
pnamespace: crate::core_supplemental::PCSTR,
ppmoduleinstance: *mut *mut core::ffi::c_void,
) -> windows_core::HRESULT {
unsafe {
let this: &Identity =
&*((this as *const *const ()).offset(OFFSET) as *const Identity);
match ID3D11Module_Impl::CreateInstance(this, core::mem::transmute(&pnamespace)) {
Ok(ok__) => {
ppmoduleinstance.write(core::mem::transmute(ok__));
windows_core::HRESULT(0)
}
Err(err) => err.into(),
}
}
}
Self {
base__: windows_core::IUnknown_Vtbl::new::<Identity, OFFSET>(),
CreateInstance: CreateInstance::<Identity, OFFSET>,
}
}
pub fn matches(iid: &windows_core::GUID) -> bool {
iid == &<ID3D11Module as windows_core::Interface>::IID
}
}
impl windows_core::RuntimeName for ID3D11Module {}
unsafe impl Send for ID3D11Module {}
unsafe impl Sync for ID3D11Module {}
windows_core::imp::define_interface!(
ID3D11ModuleInstance,
ID3D11ModuleInstance_Vtbl,
0x469e07f7_045a_48d5_aa12_68a478cdf75d
);
windows_core::imp::interface_hierarchy!(ID3D11ModuleInstance, windows_core::IUnknown);
impl ID3D11ModuleInstance {
pub unsafe fn BindConstantBuffer(
&self,
usrcslot: u32,
udstslot: u32,
cbdstoffset: u32,
) -> windows_core::Result<()> {
unsafe {
(windows_core::Interface::vtable(self).BindConstantBuffer)(
windows_core::Interface::as_raw(self),
usrcslot,
udstslot,
cbdstoffset,
)
.ok()
}
}
pub unsafe fn BindConstantBufferByName<P0>(
&self,
pname: P0,
udstslot: u32,
cbdstoffset: u32,
) -> windows_core::Result<()>
where
P0: windows_core::Param<crate::core_supplemental::PCSTR>,
{
unsafe {
(windows_core::Interface::vtable(self).BindConstantBufferByName)(
windows_core::Interface::as_raw(self),
pname.param().abi(),
udstslot,
cbdstoffset,
)
.ok()
}
}
pub unsafe fn BindResource(
&self,
usrcslot: u32,
udstslot: u32,
ucount: u32,
) -> windows_core::Result<()> {
unsafe {
(windows_core::Interface::vtable(self).BindResource)(
windows_core::Interface::as_raw(self),
usrcslot,
udstslot,
ucount,
)
.ok()
}
}
pub unsafe fn BindResourceByName<P0>(
&self,
pname: P0,
udstslot: u32,
ucount: u32,
) -> windows_core::Result<()>
where
P0: windows_core::Param<crate::core_supplemental::PCSTR>,
{
unsafe {
(windows_core::Interface::vtable(self).BindResourceByName)(
windows_core::Interface::as_raw(self),
pname.param().abi(),
udstslot,
ucount,
)
.ok()
}
}
pub unsafe fn BindSampler(
&self,
usrcslot: u32,
udstslot: u32,
ucount: u32,
) -> windows_core::Result<()> {
unsafe {
(windows_core::Interface::vtable(self).BindSampler)(
windows_core::Interface::as_raw(self),
usrcslot,
udstslot,
ucount,
)
.ok()
}
}
pub unsafe fn BindSamplerByName<P0>(
&self,
pname: P0,
udstslot: u32,
ucount: u32,
) -> windows_core::Result<()>
where
P0: windows_core::Param<crate::core_supplemental::PCSTR>,
{
unsafe {
(windows_core::Interface::vtable(self).BindSamplerByName)(
windows_core::Interface::as_raw(self),
pname.param().abi(),
udstslot,
ucount,
)
.ok()
}
}
pub unsafe fn BindUnorderedAccessView(
&self,
usrcslot: u32,
udstslot: u32,
ucount: u32,
) -> windows_core::Result<()> {
unsafe {
(windows_core::Interface::vtable(self).BindUnorderedAccessView)(
windows_core::Interface::as_raw(self),
usrcslot,
udstslot,
ucount,
)
.ok()
}
}
pub unsafe fn BindUnorderedAccessViewByName<P0>(
&self,
pname: P0,
udstslot: u32,
ucount: u32,
) -> windows_core::Result<()>
where
P0: windows_core::Param<crate::core_supplemental::PCSTR>,
{
unsafe {
(windows_core::Interface::vtable(self).BindUnorderedAccessViewByName)(
windows_core::Interface::as_raw(self),
pname.param().abi(),
udstslot,
ucount,
)
.ok()
}
}
pub unsafe fn BindResourceAsUnorderedAccessView(
&self,
usrcsrvslot: u32,
udstuavslot: u32,
ucount: u32,
) -> windows_core::Result<()> {
unsafe {
(windows_core::Interface::vtable(self).BindResourceAsUnorderedAccessView)(
windows_core::Interface::as_raw(self),
usrcsrvslot,
udstuavslot,
ucount,
)
.ok()
}
}
pub unsafe fn BindResourceAsUnorderedAccessViewByName<P0>(
&self,
psrvname: P0,
udstuavslot: u32,
ucount: u32,
) -> windows_core::Result<()>
where
P0: windows_core::Param<crate::core_supplemental::PCSTR>,
{
unsafe {
(windows_core::Interface::vtable(self).BindResourceAsUnorderedAccessViewByName)(
windows_core::Interface::as_raw(self),
psrvname.param().abi(),
udstuavslot,
ucount,
)
.ok()
}
}
}
#[repr(C)]
pub struct ID3D11ModuleInstance_Vtbl {
pub base__: windows_core::IUnknown_Vtbl,
pub BindConstantBuffer:
unsafe extern "system" fn(*mut core::ffi::c_void, u32, u32, u32) -> windows_core::HRESULT,
pub BindConstantBufferByName: unsafe extern "system" fn(
*mut core::ffi::c_void,
crate::core_supplemental::PCSTR,
u32,
u32,
) -> windows_core::HRESULT,
pub BindResource:
unsafe extern "system" fn(*mut core::ffi::c_void, u32, u32, u32) -> windows_core::HRESULT,
pub BindResourceByName: unsafe extern "system" fn(
*mut core::ffi::c_void,
crate::core_supplemental::PCSTR,
u32,
u32,
) -> windows_core::HRESULT,
pub BindSampler:
unsafe extern "system" fn(*mut core::ffi::c_void, u32, u32, u32) -> windows_core::HRESULT,
pub BindSamplerByName: unsafe extern "system" fn(
*mut core::ffi::c_void,
crate::core_supplemental::PCSTR,
u32,
u32,
) -> windows_core::HRESULT,
pub BindUnorderedAccessView:
unsafe extern "system" fn(*mut core::ffi::c_void, u32, u32, u32) -> windows_core::HRESULT,
pub BindUnorderedAccessViewByName: unsafe extern "system" fn(
*mut core::ffi::c_void,
crate::core_supplemental::PCSTR,
u32,
u32,
) -> windows_core::HRESULT,
pub BindResourceAsUnorderedAccessView:
unsafe extern "system" fn(*mut core::ffi::c_void, u32, u32, u32) -> windows_core::HRESULT,
pub BindResourceAsUnorderedAccessViewByName: unsafe extern "system" fn(
*mut core::ffi::c_void,
crate::core_supplemental::PCSTR,
u32,
u32,
)
-> windows_core::HRESULT,
}
pub trait ID3D11ModuleInstance_Impl: windows_core::IUnknownImpl {
fn BindConstantBuffer(
&self,
usrcslot: u32,
udstslot: u32,
cbdstoffset: u32,
) -> windows_core::Result<()>;
fn BindConstantBufferByName(
&self,
pname: &crate::core_supplemental::PCSTR,
udstslot: u32,
cbdstoffset: u32,
) -> windows_core::Result<()>;
fn BindResource(&self, usrcslot: u32, udstslot: u32, ucount: u32) -> windows_core::Result<()>;
fn BindResourceByName(
&self,
pname: &crate::core_supplemental::PCSTR,
udstslot: u32,
ucount: u32,
) -> windows_core::Result<()>;
fn BindSampler(&self, usrcslot: u32, udstslot: u32, ucount: u32) -> windows_core::Result<()>;
fn BindSamplerByName(
&self,
pname: &crate::core_supplemental::PCSTR,
udstslot: u32,
ucount: u32,
) -> windows_core::Result<()>;
fn BindUnorderedAccessView(
&self,
usrcslot: u32,
udstslot: u32,
ucount: u32,
) -> windows_core::Result<()>;
fn BindUnorderedAccessViewByName(
&self,
pname: &crate::core_supplemental::PCSTR,
udstslot: u32,
ucount: u32,
) -> windows_core::Result<()>;
fn BindResourceAsUnorderedAccessView(
&self,
usrcsrvslot: u32,
udstuavslot: u32,
ucount: u32,
) -> windows_core::Result<()>;
fn BindResourceAsUnorderedAccessViewByName(
&self,
psrvname: &crate::core_supplemental::PCSTR,
udstuavslot: u32,
ucount: u32,
) -> windows_core::Result<()>;
}
impl ID3D11ModuleInstance_Vtbl {
pub const fn new<Identity: ID3D11ModuleInstance_Impl, const OFFSET: isize>() -> Self {
unsafe extern "system" fn BindConstantBuffer<
Identity: ID3D11ModuleInstance_Impl,
const OFFSET: isize,
>(
this: *mut core::ffi::c_void,
usrcslot: u32,
udstslot: u32,
cbdstoffset: u32,
) -> windows_core::HRESULT {
unsafe {
let this: &Identity =
&*((this as *const *const ()).offset(OFFSET) as *const Identity);
ID3D11ModuleInstance_Impl::BindConstantBuffer(
this,
core::mem::transmute_copy(&usrcslot),
core::mem::transmute_copy(&udstslot),
core::mem::transmute_copy(&cbdstoffset),
)
.into()
}
}
unsafe extern "system" fn BindConstantBufferByName<
Identity: ID3D11ModuleInstance_Impl,
const OFFSET: isize,
>(
this: *mut core::ffi::c_void,
pname: crate::core_supplemental::PCSTR,
udstslot: u32,
cbdstoffset: u32,
) -> windows_core::HRESULT {
unsafe {
let this: &Identity =
&*((this as *const *const ()).offset(OFFSET) as *const Identity);
ID3D11ModuleInstance_Impl::BindConstantBufferByName(
this,
core::mem::transmute(&pname),
core::mem::transmute_copy(&udstslot),
core::mem::transmute_copy(&cbdstoffset),
)
.into()
}
}
unsafe extern "system" fn BindResource<
Identity: ID3D11ModuleInstance_Impl,
const OFFSET: isize,
>(
this: *mut core::ffi::c_void,
usrcslot: u32,
udstslot: u32,
ucount: u32,
) -> windows_core::HRESULT {
unsafe {
let this: &Identity =
&*((this as *const *const ()).offset(OFFSET) as *const Identity);
ID3D11ModuleInstance_Impl::BindResource(
this,
core::mem::transmute_copy(&usrcslot),
core::mem::transmute_copy(&udstslot),
core::mem::transmute_copy(&ucount),
)
.into()
}
}
unsafe extern "system" fn BindResourceByName<
Identity: ID3D11ModuleInstance_Impl,
const OFFSET: isize,
>(
this: *mut core::ffi::c_void,
pname: crate::core_supplemental::PCSTR,
udstslot: u32,
ucount: u32,
) -> windows_core::HRESULT {
unsafe {
let this: &Identity =
&*((this as *const *const ()).offset(OFFSET) as *const Identity);
ID3D11ModuleInstance_Impl::BindResourceByName(
this,
core::mem::transmute(&pname),
core::mem::transmute_copy(&udstslot),
core::mem::transmute_copy(&ucount),
)
.into()
}
}
unsafe extern "system" fn BindSampler<
Identity: ID3D11ModuleInstance_Impl,
const OFFSET: isize,
>(
this: *mut core::ffi::c_void,
usrcslot: u32,
udstslot: u32,
ucount: u32,
) -> windows_core::HRESULT {
unsafe {
let this: &Identity =
&*((this as *const *const ()).offset(OFFSET) as *const Identity);
ID3D11ModuleInstance_Impl::BindSampler(
this,
core::mem::transmute_copy(&usrcslot),
core::mem::transmute_copy(&udstslot),
core::mem::transmute_copy(&ucount),
)
.into()
}
}
unsafe extern "system" fn BindSamplerByName<
Identity: ID3D11ModuleInstance_Impl,
const OFFSET: isize,
>(
this: *mut core::ffi::c_void,
pname: crate::core_supplemental::PCSTR,
udstslot: u32,
ucount: u32,
) -> windows_core::HRESULT {
unsafe {
let this: &Identity =
&*((this as *const *const ()).offset(OFFSET) as *const Identity);
ID3D11ModuleInstance_Impl::BindSamplerByName(
this,
core::mem::transmute(&pname),
core::mem::transmute_copy(&udstslot),
core::mem::transmute_copy(&ucount),
)
.into()
}
}
unsafe extern "system" fn BindUnorderedAccessView<
Identity: ID3D11ModuleInstance_Impl,
const OFFSET: isize,
>(
this: *mut core::ffi::c_void,
usrcslot: u32,
udstslot: u32,
ucount: u32,
) -> windows_core::HRESULT {
unsafe {
let this: &Identity =
&*((this as *const *const ()).offset(OFFSET) as *const Identity);
ID3D11ModuleInstance_Impl::BindUnorderedAccessView(
this,
core::mem::transmute_copy(&usrcslot),
core::mem::transmute_copy(&udstslot),
core::mem::transmute_copy(&ucount),
)
.into()
}
}
unsafe extern "system" fn BindUnorderedAccessViewByName<
Identity: ID3D11ModuleInstance_Impl,
const OFFSET: isize,
>(
this: *mut core::ffi::c_void,
pname: crate::core_supplemental::PCSTR,
udstslot: u32,
ucount: u32,
) -> windows_core::HRESULT {
unsafe {
let this: &Identity =
&*((this as *const *const ()).offset(OFFSET) as *const Identity);
ID3D11ModuleInstance_Impl::BindUnorderedAccessViewByName(
this,
core::mem::transmute(&pname),
core::mem::transmute_copy(&udstslot),
core::mem::transmute_copy(&ucount),
)
.into()
}
}
unsafe extern "system" fn BindResourceAsUnorderedAccessView<
Identity: ID3D11ModuleInstance_Impl,
const OFFSET: isize,
>(
this: *mut core::ffi::c_void,
usrcsrvslot: u32,
udstuavslot: u32,
ucount: u32,
) -> windows_core::HRESULT {
unsafe {
let this: &Identity =
&*((this as *const *const ()).offset(OFFSET) as *const Identity);
ID3D11ModuleInstance_Impl::BindResourceAsUnorderedAccessView(
this,
core::mem::transmute_copy(&usrcsrvslot),
core::mem::transmute_copy(&udstuavslot),
core::mem::transmute_copy(&ucount),
)
.into()
}
}
unsafe extern "system" fn BindResourceAsUnorderedAccessViewByName<
Identity: ID3D11ModuleInstance_Impl,
const OFFSET: isize,
>(
this: *mut core::ffi::c_void,
psrvname: crate::core_supplemental::PCSTR,
udstuavslot: u32,
ucount: u32,
) -> windows_core::HRESULT {
unsafe {
let this: &Identity =
&*((this as *const *const ()).offset(OFFSET) as *const Identity);
ID3D11ModuleInstance_Impl::BindResourceAsUnorderedAccessViewByName(
this,
core::mem::transmute(&psrvname),
core::mem::transmute_copy(&udstuavslot),
core::mem::transmute_copy(&ucount),
)
.into()
}
}
Self {
base__: windows_core::IUnknown_Vtbl::new::<Identity, OFFSET>(),
BindConstantBuffer: BindConstantBuffer::<Identity, OFFSET>,
BindConstantBufferByName: BindConstantBufferByName::<Identity, OFFSET>,
BindResource: BindResource::<Identity, OFFSET>,
BindResourceByName: BindResourceByName::<Identity, OFFSET>,
BindSampler: BindSampler::<Identity, OFFSET>,
BindSamplerByName: BindSamplerByName::<Identity, OFFSET>,
BindUnorderedAccessView: BindUnorderedAccessView::<Identity, OFFSET>,
BindUnorderedAccessViewByName: BindUnorderedAccessViewByName::<Identity, OFFSET>,
BindResourceAsUnorderedAccessView: BindResourceAsUnorderedAccessView::<Identity, OFFSET>,
BindResourceAsUnorderedAccessViewByName: BindResourceAsUnorderedAccessViewByName::<
Identity,
OFFSET,
>,
}
}
pub fn matches(iid: &windows_core::GUID) -> bool {
iid == &<ID3D11ModuleInstance as windows_core::Interface>::IID
}
}
impl windows_core::RuntimeName for ID3D11ModuleInstance {}
unsafe impl Send for ID3D11ModuleInstance {}
unsafe impl Sync for ID3D11ModuleInstance {}
windows_core::imp::define_interface!(
ID3D11Multithread,
ID3D11Multithread_Vtbl,
0x9b7e4e00_342c_4106_a19f_4f2704f689f0
);
windows_core::imp::interface_hierarchy!(ID3D11Multithread, windows_core::IUnknown);
impl ID3D11Multithread {
pub unsafe fn Enter(&self) {
unsafe {
(windows_core::Interface::vtable(self).Enter)(windows_core::Interface::as_raw(self))
}
}
pub unsafe fn Leave(&self) {
unsafe {
(windows_core::Interface::vtable(self).Leave)(windows_core::Interface::as_raw(self))
}
}
pub unsafe fn SetMultithreadProtected(
&self,
bmtprotect: bool,
) -> crate::Foundation::BOOL {
unsafe {
(windows_core::Interface::vtable(self).SetMultithreadProtected)(
windows_core::Interface::as_raw(self),
bmtprotect.into(),
)
}
}
pub unsafe fn GetMultithreadProtected(&self) -> crate::Foundation::BOOL {
unsafe {
(windows_core::Interface::vtable(self).GetMultithreadProtected)(
windows_core::Interface::as_raw(self),
)
}
}
}
#[repr(C)]
pub struct ID3D11Multithread_Vtbl {
pub base__: windows_core::IUnknown_Vtbl,
pub Enter: unsafe extern "system" fn(*mut core::ffi::c_void),
pub Leave: unsafe extern "system" fn(*mut core::ffi::c_void),
pub SetMultithreadProtected: unsafe extern "system" fn(
*mut core::ffi::c_void,
crate::Foundation::BOOL,
) -> crate::Foundation::BOOL,
pub GetMultithreadProtected:
unsafe extern "system" fn(*mut core::ffi::c_void) -> crate::Foundation::BOOL,
}
pub trait ID3D11Multithread_Impl: windows_core::IUnknownImpl {
fn Enter(&self);
fn Leave(&self);
fn SetMultithreadProtected(
&self,
bmtprotect: crate::Foundation::BOOL,
) -> crate::Foundation::BOOL;
fn GetMultithreadProtected(&self) -> crate::Foundation::BOOL;
}
impl ID3D11Multithread_Vtbl {
pub const fn new<Identity: ID3D11Multithread_Impl, const OFFSET: isize>() -> Self {
unsafe extern "system" fn Enter<Identity: ID3D11Multithread_Impl, const OFFSET: isize>(
this: *mut core::ffi::c_void,
) {
unsafe {
let this: &Identity =
&*((this as *const *const ()).offset(OFFSET) as *const Identity);
ID3D11Multithread_Impl::Enter(this)
}
}
unsafe extern "system" fn Leave<Identity: ID3D11Multithread_Impl, const OFFSET: isize>(
this: *mut core::ffi::c_void,
) {
unsafe {
let this: &Identity =
&*((this as *const *const ()).offset(OFFSET) as *const Identity);
ID3D11Multithread_Impl::Leave(this)
}
}
unsafe extern "system" fn SetMultithreadProtected<
Identity: ID3D11Multithread_Impl,
const OFFSET: isize,
>(
this: *mut core::ffi::c_void,
bmtprotect: crate::Foundation::BOOL,
) -> crate::Foundation::BOOL {
unsafe {
let this: &Identity =
&*((this as *const *const ()).offset(OFFSET) as *const Identity);
ID3D11Multithread_Impl::SetMultithreadProtected(
this,
core::mem::transmute_copy(&bmtprotect),
)
}
}
unsafe extern "system" fn GetMultithreadProtected<
Identity: ID3D11Multithread_Impl,
const OFFSET: isize,
>(
this: *mut core::ffi::c_void,
) -> crate::Foundation::BOOL {
unsafe {
let this: &Identity =
&*((this as *const *const ()).offset(OFFSET) as *const Identity);
ID3D11Multithread_Impl::GetMultithreadProtected(this)
}
}
Self {
base__: windows_core::IUnknown_Vtbl::new::<Identity, OFFSET>(),
Enter: Enter::<Identity, OFFSET>,
Leave: Leave::<Identity, OFFSET>,
SetMultithreadProtected: SetMultithreadProtected::<Identity, OFFSET>,
GetMultithreadProtected: GetMultithreadProtected::<Identity, OFFSET>,
}
}
pub fn matches(iid: &windows_core::GUID) -> bool {
iid == &<ID3D11Multithread as windows_core::Interface>::IID
}
}
impl windows_core::RuntimeName for ID3D11Multithread {}
unsafe impl Send for ID3D11Multithread {}
unsafe impl Sync for ID3D11Multithread {}
windows_core::imp::define_interface!(
ID3D11PixelShader,
ID3D11PixelShader_Vtbl,
0xea82e40d_51dc_4f33_93d4_db7c9125ae8c
);
impl core::ops::Deref for ID3D11PixelShader {
type Target = ID3D11DeviceChild;
fn deref(&self) -> &Self::Target {
unsafe { core::mem::transmute(self) }
}
}
windows_core::imp::interface_hierarchy!(
ID3D11PixelShader,
windows_core::IUnknown,
ID3D11DeviceChild
);
#[repr(C)]
pub struct ID3D11PixelShader_Vtbl {
pub base__: ID3D11DeviceChild_Vtbl,
}
pub trait ID3D11PixelShader_Impl: ID3D11DeviceChild_Impl {}
impl ID3D11PixelShader_Vtbl {
pub const fn new<Identity: ID3D11PixelShader_Impl, const OFFSET: isize>() -> Self {
Self {
base__: ID3D11DeviceChild_Vtbl::new::<Identity, OFFSET>(),
}
}
pub fn matches(iid: &windows_core::GUID) -> bool {
iid == &<ID3D11PixelShader as windows_core::Interface>::IID
|| iid == &<ID3D11DeviceChild as windows_core::Interface>::IID
}
}
impl windows_core::RuntimeName for ID3D11PixelShader {}
unsafe impl Send for ID3D11PixelShader {}
unsafe impl Sync for ID3D11PixelShader {}
windows_core::imp::define_interface!(
ID3D11Predicate,
ID3D11Predicate_Vtbl,
0x9eb576dd_9f77_4d86_81aa_8bab5fe490e2
);
impl core::ops::Deref for ID3D11Predicate {
type Target = ID3D11Query;
fn deref(&self) -> &Self::Target {
unsafe { core::mem::transmute(self) }
}
}
windows_core::imp::interface_hierarchy!(
ID3D11Predicate,
windows_core::IUnknown,
ID3D11DeviceChild,
ID3D11Asynchronous,
ID3D11Query
);
#[repr(C)]
pub struct ID3D11Predicate_Vtbl {
pub base__: ID3D11Query_Vtbl,
}
pub trait ID3D11Predicate_Impl: ID3D11Query_Impl {}
impl ID3D11Predicate_Vtbl {
pub const fn new<Identity: ID3D11Predicate_Impl, const OFFSET: isize>() -> Self {
Self {
base__: ID3D11Query_Vtbl::new::<Identity, OFFSET>(),
}
}
pub fn matches(iid: &windows_core::GUID) -> bool {
iid == &<ID3D11Predicate as windows_core::Interface>::IID
|| iid == &<ID3D11DeviceChild as windows_core::Interface>::IID
|| iid == &<ID3D11Asynchronous as windows_core::Interface>::IID
|| iid == &<ID3D11Query as windows_core::Interface>::IID
}
}
impl windows_core::RuntimeName for ID3D11Predicate {}
unsafe impl Send for ID3D11Predicate {}
unsafe impl Sync for ID3D11Predicate {}
windows_core::imp::define_interface!(
ID3D11Query,
ID3D11Query_Vtbl,
0xd6c00747_87b7_425e_b84d_44d108560afd
);
impl core::ops::Deref for ID3D11Query {
type Target = ID3D11Asynchronous;
fn deref(&self) -> &Self::Target {
unsafe { core::mem::transmute(self) }
}
}
windows_core::imp::interface_hierarchy!(
ID3D11Query,
windows_core::IUnknown,
ID3D11DeviceChild,
ID3D11Asynchronous
);
impl ID3D11Query {
pub unsafe fn GetDesc(&self) -> D3D11_QUERY_DESC {
unsafe {
let mut result__ = core::mem::zeroed();
(windows_core::Interface::vtable(self).GetDesc)(
windows_core::Interface::as_raw(self),
&mut result__,
);
result__
}
}
}
#[repr(C)]
pub struct ID3D11Query_Vtbl {
pub base__: ID3D11Asynchronous_Vtbl,
pub GetDesc: unsafe extern "system" fn(*mut core::ffi::c_void, *mut D3D11_QUERY_DESC),
}
pub trait ID3D11Query_Impl: ID3D11Asynchronous_Impl {
fn GetDesc(&self, pdesc: *mut D3D11_QUERY_DESC);
}
impl ID3D11Query_Vtbl {
pub const fn new<Identity: ID3D11Query_Impl, const OFFSET: isize>() -> Self {
unsafe extern "system" fn GetDesc<Identity: ID3D11Query_Impl, const OFFSET: isize>(
this: *mut core::ffi::c_void,
pdesc: *mut D3D11_QUERY_DESC,
) {
unsafe {
let this: &Identity =
&*((this as *const *const ()).offset(OFFSET) as *const Identity);
ID3D11Query_Impl::GetDesc(this, core::mem::transmute_copy(&pdesc))
}
}
Self {
base__: ID3D11Asynchronous_Vtbl::new::<Identity, OFFSET>(),
GetDesc: GetDesc::<Identity, OFFSET>,
}
}
pub fn matches(iid: &windows_core::GUID) -> bool {
iid == &<ID3D11Query as windows_core::Interface>::IID
|| iid == &<ID3D11DeviceChild as windows_core::Interface>::IID
|| iid == &<ID3D11Asynchronous as windows_core::Interface>::IID
}
}
impl windows_core::RuntimeName for ID3D11Query {}
unsafe impl Send for ID3D11Query {}
unsafe impl Sync for ID3D11Query {}
windows_core::imp::define_interface!(
ID3D11Query1,
ID3D11Query1_Vtbl,
0x631b4766_36dc_461d_8db6_c47e13e60916
);
impl core::ops::Deref for ID3D11Query1 {
type Target = ID3D11Query;
fn deref(&self) -> &Self::Target {
unsafe { core::mem::transmute(self) }
}
}
windows_core::imp::interface_hierarchy!(
ID3D11Query1,
windows_core::IUnknown,
ID3D11DeviceChild,
ID3D11Asynchronous,
ID3D11Query
);
impl ID3D11Query1 {
pub unsafe fn GetDesc1(&self) -> D3D11_QUERY_DESC1 {
unsafe {
let mut result__ = core::mem::zeroed();
(windows_core::Interface::vtable(self).GetDesc1)(
windows_core::Interface::as_raw(self),
&mut result__,
);
result__
}
}
}
#[repr(C)]
pub struct ID3D11Query1_Vtbl {
pub base__: ID3D11Query_Vtbl,
pub GetDesc1: unsafe extern "system" fn(*mut core::ffi::c_void, *mut D3D11_QUERY_DESC1),
}
pub trait ID3D11Query1_Impl: ID3D11Query_Impl {
fn GetDesc1(&self, pdesc1: *mut D3D11_QUERY_DESC1);
}
impl ID3D11Query1_Vtbl {
pub const fn new<Identity: ID3D11Query1_Impl, const OFFSET: isize>() -> Self {
unsafe extern "system" fn GetDesc1<Identity: ID3D11Query1_Impl, const OFFSET: isize>(
this: *mut core::ffi::c_void,
pdesc1: *mut D3D11_QUERY_DESC1,
) {
unsafe {
let this: &Identity =
&*((this as *const *const ()).offset(OFFSET) as *const Identity);
ID3D11Query1_Impl::GetDesc1(this, core::mem::transmute_copy(&pdesc1))
}
}
Self {
base__: ID3D11Query_Vtbl::new::<Identity, OFFSET>(),
GetDesc1: GetDesc1::<Identity, OFFSET>,
}
}
pub fn matches(iid: &windows_core::GUID) -> bool {
iid == &<ID3D11Query1 as windows_core::Interface>::IID
|| iid == &<ID3D11DeviceChild as windows_core::Interface>::IID
|| iid == &<ID3D11Asynchronous as windows_core::Interface>::IID
|| iid == &<ID3D11Query as windows_core::Interface>::IID
}
}
impl windows_core::RuntimeName for ID3D11Query1 {}
unsafe impl Send for ID3D11Query1 {}
unsafe impl Sync for ID3D11Query1 {}
windows_core::imp::define_interface!(
ID3D11RasterizerState,
ID3D11RasterizerState_Vtbl,
0x9bb4ab81_ab1a_4d8f_b506_fc04200b6ee7
);
impl core::ops::Deref for ID3D11RasterizerState {
type Target = ID3D11DeviceChild;
fn deref(&self) -> &Self::Target {
unsafe { core::mem::transmute(self) }
}
}
windows_core::imp::interface_hierarchy!(
ID3D11RasterizerState,
windows_core::IUnknown,
ID3D11DeviceChild
);
impl ID3D11RasterizerState {
pub unsafe fn GetDesc(&self, pdesc: *mut D3D11_RASTERIZER_DESC) {
unsafe {
(windows_core::Interface::vtable(self).GetDesc)(
windows_core::Interface::as_raw(self),
core::mem::transmute(pdesc),
)
}
}
}
#[repr(C)]
pub struct ID3D11RasterizerState_Vtbl {
pub base__: ID3D11DeviceChild_Vtbl,
pub GetDesc: unsafe extern "system" fn(*mut core::ffi::c_void, *mut D3D11_RASTERIZER_DESC),
}
pub trait ID3D11RasterizerState_Impl: ID3D11DeviceChild_Impl {
fn GetDesc(&self, pdesc: *mut D3D11_RASTERIZER_DESC);
}
impl ID3D11RasterizerState_Vtbl {
pub const fn new<Identity: ID3D11RasterizerState_Impl, const OFFSET: isize>() -> Self {
unsafe extern "system" fn GetDesc<
Identity: ID3D11RasterizerState_Impl,
const OFFSET: isize,
>(
this: *mut core::ffi::c_void,
pdesc: *mut D3D11_RASTERIZER_DESC,
) {
unsafe {
let this: &Identity =
&*((this as *const *const ()).offset(OFFSET) as *const Identity);
ID3D11RasterizerState_Impl::GetDesc(this, core::mem::transmute_copy(&pdesc))
}
}
Self {
base__: ID3D11DeviceChild_Vtbl::new::<Identity, OFFSET>(),
GetDesc: GetDesc::<Identity, OFFSET>,
}
}
pub fn matches(iid: &windows_core::GUID) -> bool {
iid == &<ID3D11RasterizerState as windows_core::Interface>::IID
|| iid == &<ID3D11DeviceChild as windows_core::Interface>::IID
}
}
impl windows_core::RuntimeName for ID3D11RasterizerState {}
unsafe impl Send for ID3D11RasterizerState {}
unsafe impl Sync for ID3D11RasterizerState {}
windows_core::imp::define_interface!(
ID3D11RasterizerState1,
ID3D11RasterizerState1_Vtbl,
0x1217d7a6_5039_418c_b042_9cbe256afd6e
);
impl core::ops::Deref for ID3D11RasterizerState1 {
type Target = ID3D11RasterizerState;
fn deref(&self) -> &Self::Target {
unsafe { core::mem::transmute(self) }
}
}
windows_core::imp::interface_hierarchy!(
ID3D11RasterizerState1,
windows_core::IUnknown,
ID3D11DeviceChild,
ID3D11RasterizerState
);
impl ID3D11RasterizerState1 {
pub unsafe fn GetDesc1(&self, pdesc: *mut D3D11_RASTERIZER_DESC1) {
unsafe {
(windows_core::Interface::vtable(self).GetDesc1)(
windows_core::Interface::as_raw(self),
core::mem::transmute(pdesc),
)
}
}
}
#[repr(C)]
pub struct ID3D11RasterizerState1_Vtbl {
pub base__: ID3D11RasterizerState_Vtbl,
pub GetDesc1: unsafe extern "system" fn(*mut core::ffi::c_void, *mut D3D11_RASTERIZER_DESC1),
}
pub trait ID3D11RasterizerState1_Impl: ID3D11RasterizerState_Impl {
fn GetDesc1(&self, pdesc: *mut D3D11_RASTERIZER_DESC1);
}
impl ID3D11RasterizerState1_Vtbl {
pub const fn new<Identity: ID3D11RasterizerState1_Impl, const OFFSET: isize>() -> Self {
unsafe extern "system" fn GetDesc1<
Identity: ID3D11RasterizerState1_Impl,
const OFFSET: isize,
>(
this: *mut core::ffi::c_void,
pdesc: *mut D3D11_RASTERIZER_DESC1,
) {
unsafe {
let this: &Identity =
&*((this as *const *const ()).offset(OFFSET) as *const Identity);
ID3D11RasterizerState1_Impl::GetDesc1(this, core::mem::transmute_copy(&pdesc))
}
}
Self {
base__: ID3D11RasterizerState_Vtbl::new::<Identity, OFFSET>(),
GetDesc1: GetDesc1::<Identity, OFFSET>,
}
}
pub fn matches(iid: &windows_core::GUID) -> bool {
iid == &<ID3D11RasterizerState1 as windows_core::Interface>::IID
|| iid == &<ID3D11DeviceChild as windows_core::Interface>::IID
|| iid == &<ID3D11RasterizerState as windows_core::Interface>::IID
}
}
impl windows_core::RuntimeName for ID3D11RasterizerState1 {}
unsafe impl Send for ID3D11RasterizerState1 {}
unsafe impl Sync for ID3D11RasterizerState1 {}
windows_core::imp::define_interface!(
ID3D11RasterizerState2,
ID3D11RasterizerState2_Vtbl,
0x6fbd02fb_209f_46c4_b059_2ed15586a6ac
);
impl core::ops::Deref for ID3D11RasterizerState2 {
type Target = ID3D11RasterizerState1;
fn deref(&self) -> &Self::Target {
unsafe { core::mem::transmute(self) }
}
}
windows_core::imp::interface_hierarchy!(
ID3D11RasterizerState2,
windows_core::IUnknown,
ID3D11DeviceChild,
ID3D11RasterizerState,
ID3D11RasterizerState1
);
impl ID3D11RasterizerState2 {
pub unsafe fn GetDesc2(&self, pdesc: *mut D3D11_RASTERIZER_DESC2) {
unsafe {
(windows_core::Interface::vtable(self).GetDesc2)(
windows_core::Interface::as_raw(self),
core::mem::transmute(pdesc),
)
}
}
}
#[repr(C)]
pub struct ID3D11RasterizerState2_Vtbl {
pub base__: ID3D11RasterizerState1_Vtbl,
pub GetDesc2: unsafe extern "system" fn(*mut core::ffi::c_void, *mut D3D11_RASTERIZER_DESC2),
}
pub trait ID3D11RasterizerState2_Impl: ID3D11RasterizerState1_Impl {
fn GetDesc2(&self, pdesc: *mut D3D11_RASTERIZER_DESC2);
}
impl ID3D11RasterizerState2_Vtbl {
pub const fn new<Identity: ID3D11RasterizerState2_Impl, const OFFSET: isize>() -> Self {
unsafe extern "system" fn GetDesc2<
Identity: ID3D11RasterizerState2_Impl,
const OFFSET: isize,
>(
this: *mut core::ffi::c_void,
pdesc: *mut D3D11_RASTERIZER_DESC2,
) {
unsafe {
let this: &Identity =
&*((this as *const *const ()).offset(OFFSET) as *const Identity);
ID3D11RasterizerState2_Impl::GetDesc2(this, core::mem::transmute_copy(&pdesc))
}
}
Self {
base__: ID3D11RasterizerState1_Vtbl::new::<Identity, OFFSET>(),
GetDesc2: GetDesc2::<Identity, OFFSET>,
}
}
pub fn matches(iid: &windows_core::GUID) -> bool {
iid == &<ID3D11RasterizerState2 as windows_core::Interface>::IID
|| iid == &<ID3D11DeviceChild as windows_core::Interface>::IID
|| iid == &<ID3D11RasterizerState as windows_core::Interface>::IID
|| iid == &<ID3D11RasterizerState1 as windows_core::Interface>::IID
}
}
impl windows_core::RuntimeName for ID3D11RasterizerState2 {}
unsafe impl Send for ID3D11RasterizerState2 {}
unsafe impl Sync for ID3D11RasterizerState2 {}
windows_core::imp::define_interface!(
ID3D11RefDefaultTrackingOptions,
ID3D11RefDefaultTrackingOptions_Vtbl,
0x03916615_c644_418c_9bf4_75db5be63ca0
);
windows_core::imp::interface_hierarchy!(ID3D11RefDefaultTrackingOptions, windows_core::IUnknown);
impl ID3D11RefDefaultTrackingOptions {
pub unsafe fn SetTrackingOptions(
&self,
resourcetypeflags: u32,
options: u32,
) -> windows_core::Result<()> {
unsafe {
(windows_core::Interface::vtable(self).SetTrackingOptions)(
windows_core::Interface::as_raw(self),
resourcetypeflags,
options,
)
.ok()
}
}
}
#[repr(C)]
pub struct ID3D11RefDefaultTrackingOptions_Vtbl {
pub base__: windows_core::IUnknown_Vtbl,
pub SetTrackingOptions:
unsafe extern "system" fn(*mut core::ffi::c_void, u32, u32) -> windows_core::HRESULT,
}
pub trait ID3D11RefDefaultTrackingOptions_Impl: windows_core::IUnknownImpl {
fn SetTrackingOptions(&self, resourcetypeflags: u32, options: u32) -> windows_core::Result<()>;
}
impl ID3D11RefDefaultTrackingOptions_Vtbl {
pub const fn new<Identity: ID3D11RefDefaultTrackingOptions_Impl, const OFFSET: isize>() -> Self
{
unsafe extern "system" fn SetTrackingOptions<
Identity: ID3D11RefDefaultTrackingOptions_Impl,
const OFFSET: isize,
>(
this: *mut core::ffi::c_void,
resourcetypeflags: u32,
options: u32,
) -> windows_core::HRESULT {
unsafe {
let this: &Identity =
&*((this as *const *const ()).offset(OFFSET) as *const Identity);
ID3D11RefDefaultTrackingOptions_Impl::SetTrackingOptions(
this,
core::mem::transmute_copy(&resourcetypeflags),
core::mem::transmute_copy(&options),
)
.into()
}
}
Self {
base__: windows_core::IUnknown_Vtbl::new::<Identity, OFFSET>(),
SetTrackingOptions: SetTrackingOptions::<Identity, OFFSET>,
}
}
pub fn matches(iid: &windows_core::GUID) -> bool {
iid == &<ID3D11RefDefaultTrackingOptions as windows_core::Interface>::IID
}
}
impl windows_core::RuntimeName for ID3D11RefDefaultTrackingOptions {}
unsafe impl Send for ID3D11RefDefaultTrackingOptions {}
unsafe impl Sync for ID3D11RefDefaultTrackingOptions {}
windows_core::imp::define_interface!(
ID3D11RefTrackingOptions,
ID3D11RefTrackingOptions_Vtbl,
0x193dacdf_0db2_4c05_a55c_ef06cac56fd9
);
windows_core::imp::interface_hierarchy!(ID3D11RefTrackingOptions, windows_core::IUnknown);
impl ID3D11RefTrackingOptions {
pub unsafe fn SetTrackingOptions(&self, uoptions: u32) -> windows_core::Result<()> {
unsafe {
(windows_core::Interface::vtable(self).SetTrackingOptions)(
windows_core::Interface::as_raw(self),
uoptions,
)
.ok()
}
}
}
#[repr(C)]
pub struct ID3D11RefTrackingOptions_Vtbl {
pub base__: windows_core::IUnknown_Vtbl,
pub SetTrackingOptions:
unsafe extern "system" fn(*mut core::ffi::c_void, u32) -> windows_core::HRESULT,
}
pub trait ID3D11RefTrackingOptions_Impl: windows_core::IUnknownImpl {
fn SetTrackingOptions(&self, uoptions: u32) -> windows_core::Result<()>;
}
impl ID3D11RefTrackingOptions_Vtbl {
pub const fn new<Identity: ID3D11RefTrackingOptions_Impl, const OFFSET: isize>() -> Self {
unsafe extern "system" fn SetTrackingOptions<
Identity: ID3D11RefTrackingOptions_Impl,
const OFFSET: isize,
>(
this: *mut core::ffi::c_void,
uoptions: u32,
) -> windows_core::HRESULT {
unsafe {
let this: &Identity =
&*((this as *const *const ()).offset(OFFSET) as *const Identity);
ID3D11RefTrackingOptions_Impl::SetTrackingOptions(
this,
core::mem::transmute_copy(&uoptions),
)
.into()
}
}
Self {
base__: windows_core::IUnknown_Vtbl::new::<Identity, OFFSET>(),
SetTrackingOptions: SetTrackingOptions::<Identity, OFFSET>,
}
}
pub fn matches(iid: &windows_core::GUID) -> bool {
iid == &<ID3D11RefTrackingOptions as windows_core::Interface>::IID
}
}
impl windows_core::RuntimeName for ID3D11RefTrackingOptions {}
unsafe impl Send for ID3D11RefTrackingOptions {}
unsafe impl Sync for ID3D11RefTrackingOptions {}
windows_core::imp::define_interface!(
ID3D11RenderTargetView,
ID3D11RenderTargetView_Vtbl,
0xdfdba067_0b8d_4865_875b_d7b4516cc164
);
impl core::ops::Deref for ID3D11RenderTargetView {
type Target = ID3D11View;
fn deref(&self) -> &Self::Target {
unsafe { core::mem::transmute(self) }
}
}
windows_core::imp::interface_hierarchy!(
ID3D11RenderTargetView,
windows_core::IUnknown,
ID3D11DeviceChild,
ID3D11View
);
impl ID3D11RenderTargetView {
#[cfg(feature = "Win32_Graphics_Dxgi_Common")]
pub unsafe fn GetDesc(&self, pdesc: *mut D3D11_RENDER_TARGET_VIEW_DESC) {
unsafe {
(windows_core::Interface::vtable(self).GetDesc)(
windows_core::Interface::as_raw(self),
core::mem::transmute(pdesc),
)
}
}
}
#[repr(C)]
pub struct ID3D11RenderTargetView_Vtbl {
pub base__: ID3D11View_Vtbl,
#[cfg(feature = "Win32_Graphics_Dxgi_Common")]
pub GetDesc:
unsafe extern "system" fn(*mut core::ffi::c_void, *mut D3D11_RENDER_TARGET_VIEW_DESC),
#[cfg(not(feature = "Win32_Graphics_Dxgi_Common"))]
GetDesc: usize,
}
#[cfg(feature = "Win32_Graphics_Dxgi_Common")]
pub trait ID3D11RenderTargetView_Impl: ID3D11View_Impl {
fn GetDesc(&self, pdesc: *mut D3D11_RENDER_TARGET_VIEW_DESC);
}
#[cfg(feature = "Win32_Graphics_Dxgi_Common")]
impl ID3D11RenderTargetView_Vtbl {
pub const fn new<Identity: ID3D11RenderTargetView_Impl, const OFFSET: isize>() -> Self {
unsafe extern "system" fn GetDesc<
Identity: ID3D11RenderTargetView_Impl,
const OFFSET: isize,
>(
this: *mut core::ffi::c_void,
pdesc: *mut D3D11_RENDER_TARGET_VIEW_DESC,
) {
unsafe {
let this: &Identity =
&*((this as *const *const ()).offset(OFFSET) as *const Identity);
ID3D11RenderTargetView_Impl::GetDesc(this, core::mem::transmute_copy(&pdesc))
}
}
Self {
base__: ID3D11View_Vtbl::new::<Identity, OFFSET>(),
GetDesc: GetDesc::<Identity, OFFSET>,
}
}
pub fn matches(iid: &windows_core::GUID) -> bool {
iid == &<ID3D11RenderTargetView as windows_core::Interface>::IID
|| iid == &<ID3D11DeviceChild as windows_core::Interface>::IID
|| iid == &<ID3D11View as windows_core::Interface>::IID
}
}
#[cfg(feature = "Win32_Graphics_Dxgi_Common")]
impl windows_core::RuntimeName for ID3D11RenderTargetView {}
#[cfg(feature = "Win32_Graphics_Dxgi_Common")]
unsafe impl Send for ID3D11RenderTargetView {}
#[cfg(feature = "Win32_Graphics_Dxgi_Common")]
unsafe impl Sync for ID3D11RenderTargetView {}
windows_core::imp::define_interface!(
ID3D11RenderTargetView1,
ID3D11RenderTargetView1_Vtbl,
0xffbe2e23_f011_418a_ac56_5ceed7c5b94b
);
impl core::ops::Deref for ID3D11RenderTargetView1 {
type Target = ID3D11RenderTargetView;
fn deref(&self) -> &Self::Target {
unsafe { core::mem::transmute(self) }
}
}
windows_core::imp::interface_hierarchy!(
ID3D11RenderTargetView1,
windows_core::IUnknown,
ID3D11DeviceChild,
ID3D11View,
ID3D11RenderTargetView
);
impl ID3D11RenderTargetView1 {
#[cfg(feature = "Win32_Graphics_Dxgi_Common")]
pub unsafe fn GetDesc1(&self, pdesc1: *mut D3D11_RENDER_TARGET_VIEW_DESC1) {
unsafe {
(windows_core::Interface::vtable(self).GetDesc1)(
windows_core::Interface::as_raw(self),
core::mem::transmute(pdesc1),
)
}
}
}
#[repr(C)]
pub struct ID3D11RenderTargetView1_Vtbl {
pub base__: ID3D11RenderTargetView_Vtbl,
#[cfg(feature = "Win32_Graphics_Dxgi_Common")]
pub GetDesc1:
unsafe extern "system" fn(*mut core::ffi::c_void, *mut D3D11_RENDER_TARGET_VIEW_DESC1),
#[cfg(not(feature = "Win32_Graphics_Dxgi_Common"))]
GetDesc1: usize,
}
#[cfg(feature = "Win32_Graphics_Dxgi_Common")]
pub trait ID3D11RenderTargetView1_Impl: ID3D11RenderTargetView_Impl {
fn GetDesc1(&self, pdesc1: *mut D3D11_RENDER_TARGET_VIEW_DESC1);
}
#[cfg(feature = "Win32_Graphics_Dxgi_Common")]
impl ID3D11RenderTargetView1_Vtbl {
pub const fn new<Identity: ID3D11RenderTargetView1_Impl, const OFFSET: isize>() -> Self {
unsafe extern "system" fn GetDesc1<
Identity: ID3D11RenderTargetView1_Impl,
const OFFSET: isize,
>(
this: *mut core::ffi::c_void,
pdesc1: *mut D3D11_RENDER_TARGET_VIEW_DESC1,
) {
unsafe {
let this: &Identity =
&*((this as *const *const ()).offset(OFFSET) as *const Identity);
ID3D11RenderTargetView1_Impl::GetDesc1(this, core::mem::transmute_copy(&pdesc1))
}
}
Self {
base__: ID3D11RenderTargetView_Vtbl::new::<Identity, OFFSET>(),
GetDesc1: GetDesc1::<Identity, OFFSET>,
}
}
pub fn matches(iid: &windows_core::GUID) -> bool {
iid == &<ID3D11RenderTargetView1 as windows_core::Interface>::IID
|| iid == &<ID3D11DeviceChild as windows_core::Interface>::IID
|| iid == &<ID3D11View as windows_core::Interface>::IID
|| iid == &<ID3D11RenderTargetView as windows_core::Interface>::IID
}
}
#[cfg(feature = "Win32_Graphics_Dxgi_Common")]
impl windows_core::RuntimeName for ID3D11RenderTargetView1 {}
#[cfg(feature = "Win32_Graphics_Dxgi_Common")]
unsafe impl Send for ID3D11RenderTargetView1 {}
#[cfg(feature = "Win32_Graphics_Dxgi_Common")]
unsafe impl Sync for ID3D11RenderTargetView1 {}
windows_core::imp::define_interface!(
ID3D11Resource,
ID3D11Resource_Vtbl,
0xdc8e63f3_d12b_4952_b47b_5e45026a862d
);
impl core::ops::Deref for ID3D11Resource {
type Target = ID3D11DeviceChild;
fn deref(&self) -> &Self::Target {
unsafe { core::mem::transmute(self) }
}
}
windows_core::imp::interface_hierarchy!(ID3D11Resource, windows_core::IUnknown, ID3D11DeviceChild);
impl ID3D11Resource {
pub unsafe fn GetType(&self) -> D3D11_RESOURCE_DIMENSION {
unsafe {
let mut result__ = core::mem::zeroed();
(windows_core::Interface::vtable(self).GetType)(
windows_core::Interface::as_raw(self),
&mut result__,
);
result__
}
}
pub unsafe fn SetEvictionPriority(&self, evictionpriority: u32) {
unsafe {
(windows_core::Interface::vtable(self).SetEvictionPriority)(
windows_core::Interface::as_raw(self),
evictionpriority,
)
}
}
pub unsafe fn GetEvictionPriority(&self) -> u32 {
unsafe {
(windows_core::Interface::vtable(self).GetEvictionPriority)(
windows_core::Interface::as_raw(self),
)
}
}
}
#[repr(C)]
pub struct ID3D11Resource_Vtbl {
pub base__: ID3D11DeviceChild_Vtbl,
pub GetType: unsafe extern "system" fn(*mut core::ffi::c_void, *mut D3D11_RESOURCE_DIMENSION),
pub SetEvictionPriority: unsafe extern "system" fn(*mut core::ffi::c_void, u32),
pub GetEvictionPriority: unsafe extern "system" fn(*mut core::ffi::c_void) -> u32,
}
pub trait ID3D11Resource_Impl: ID3D11DeviceChild_Impl {
fn GetType(&self, presourcedimension: *mut D3D11_RESOURCE_DIMENSION);
fn SetEvictionPriority(&self, evictionpriority: u32);
fn GetEvictionPriority(&self) -> u32;
}
impl ID3D11Resource_Vtbl {
pub const fn new<Identity: ID3D11Resource_Impl, const OFFSET: isize>() -> Self {
unsafe extern "system" fn GetType<Identity: ID3D11Resource_Impl, const OFFSET: isize>(
this: *mut core::ffi::c_void,
presourcedimension: *mut D3D11_RESOURCE_DIMENSION,
) {
unsafe {
let this: &Identity =
&*((this as *const *const ()).offset(OFFSET) as *const Identity);
ID3D11Resource_Impl::GetType(this, core::mem::transmute_copy(&presourcedimension))
}
}
unsafe extern "system" fn SetEvictionPriority<
Identity: ID3D11Resource_Impl,
const OFFSET: isize,
>(
this: *mut core::ffi::c_void,
evictionpriority: u32,
) {
unsafe {
let this: &Identity =
&*((this as *const *const ()).offset(OFFSET) as *const Identity);
ID3D11Resource_Impl::SetEvictionPriority(
this,
core::mem::transmute_copy(&evictionpriority),
)
}
}
unsafe extern "system" fn GetEvictionPriority<
Identity: ID3D11Resource_Impl,
const OFFSET: isize,
>(
this: *mut core::ffi::c_void,
) -> u32 {
unsafe {
let this: &Identity =
&*((this as *const *const ()).offset(OFFSET) as *const Identity);
ID3D11Resource_Impl::GetEvictionPriority(this)
}
}
Self {
base__: ID3D11DeviceChild_Vtbl::new::<Identity, OFFSET>(),
GetType: GetType::<Identity, OFFSET>,
SetEvictionPriority: SetEvictionPriority::<Identity, OFFSET>,
GetEvictionPriority: GetEvictionPriority::<Identity, OFFSET>,
}
}
pub fn matches(iid: &windows_core::GUID) -> bool {
iid == &<ID3D11Resource as windows_core::Interface>::IID
|| iid == &<ID3D11DeviceChild as windows_core::Interface>::IID
}
}
impl windows_core::RuntimeName for ID3D11Resource {}
unsafe impl Send for ID3D11Resource {}
unsafe impl Sync for ID3D11Resource {}
windows_core::imp::define_interface!(
ID3D11SamplerState,
ID3D11SamplerState_Vtbl,
0xda6fea51_564c_4487_9810_f0d0f9b4e3a5
);
impl core::ops::Deref for ID3D11SamplerState {
type Target = ID3D11DeviceChild;
fn deref(&self) -> &Self::Target {
unsafe { core::mem::transmute(self) }
}
}
windows_core::imp::interface_hierarchy!(
ID3D11SamplerState,
windows_core::IUnknown,
ID3D11DeviceChild
);
impl ID3D11SamplerState {
pub unsafe fn GetDesc(&self, pdesc: *mut D3D11_SAMPLER_DESC) {
unsafe {
(windows_core::Interface::vtable(self).GetDesc)(
windows_core::Interface::as_raw(self),
core::mem::transmute(pdesc),
)
}
}
}
#[repr(C)]
pub struct ID3D11SamplerState_Vtbl {
pub base__: ID3D11DeviceChild_Vtbl,
pub GetDesc: unsafe extern "system" fn(*mut core::ffi::c_void, *mut D3D11_SAMPLER_DESC),
}
pub trait ID3D11SamplerState_Impl: ID3D11DeviceChild_Impl {
fn GetDesc(&self, pdesc: *mut D3D11_SAMPLER_DESC);
}
impl ID3D11SamplerState_Vtbl {
pub const fn new<Identity: ID3D11SamplerState_Impl, const OFFSET: isize>() -> Self {
unsafe extern "system" fn GetDesc<
Identity: ID3D11SamplerState_Impl,
const OFFSET: isize,
>(
this: *mut core::ffi::c_void,
pdesc: *mut D3D11_SAMPLER_DESC,
) {
unsafe {
let this: &Identity =
&*((this as *const *const ()).offset(OFFSET) as *const Identity);
ID3D11SamplerState_Impl::GetDesc(this, core::mem::transmute_copy(&pdesc))
}
}
Self {
base__: ID3D11DeviceChild_Vtbl::new::<Identity, OFFSET>(),
GetDesc: GetDesc::<Identity, OFFSET>,
}
}
pub fn matches(iid: &windows_core::GUID) -> bool {
iid == &<ID3D11SamplerState as windows_core::Interface>::IID
|| iid == &<ID3D11DeviceChild as windows_core::Interface>::IID
}
}
impl windows_core::RuntimeName for ID3D11SamplerState {}
unsafe impl Send for ID3D11SamplerState {}
unsafe impl Sync for ID3D11SamplerState {}
windows_core::imp::define_interface!(
ID3D11ShaderReflection,
ID3D11ShaderReflection_Vtbl,
0x8d536ca1_0cca_4956_a837_786963755584
);
windows_core::imp::interface_hierarchy!(ID3D11ShaderReflection, windows_core::IUnknown);
impl ID3D11ShaderReflection {
#[cfg(feature = "Win32_Graphics_Direct3D")]
pub unsafe fn GetDesc(&self, pdesc: *mut D3D11_SHADER_DESC) -> windows_core::Result<()> {
unsafe {
(windows_core::Interface::vtable(self).GetDesc)(
windows_core::Interface::as_raw(self),
core::mem::transmute(pdesc),
)
.ok()
}
}
pub unsafe fn GetConstantBufferByIndex(
&self,
index: u32,
) -> Option<ID3D11ShaderReflectionConstantBuffer> {
unsafe {
(windows_core::Interface::vtable(self).GetConstantBufferByIndex)(
windows_core::Interface::as_raw(self),
index,
)
}
}
pub unsafe fn GetConstantBufferByName<P0>(
&self,
name: P0,
) -> Option<ID3D11ShaderReflectionConstantBuffer>
where
P0: windows_core::Param<crate::core_supplemental::PCSTR>,
{
unsafe {
(windows_core::Interface::vtable(self).GetConstantBufferByName)(
windows_core::Interface::as_raw(self),
name.param().abi(),
)
}
}
#[cfg(feature = "Win32_Graphics_Direct3D")]
pub unsafe fn GetResourceBindingDesc(
&self,
resourceindex: u32,
pdesc: *mut D3D11_SHADER_INPUT_BIND_DESC,
) -> windows_core::Result<()> {
unsafe {
(windows_core::Interface::vtable(self).GetResourceBindingDesc)(
windows_core::Interface::as_raw(self),
resourceindex,
core::mem::transmute(pdesc),
)
.ok()
}
}
#[cfg(feature = "Win32_Graphics_Direct3D")]
pub unsafe fn GetInputParameterDesc(
&self,
parameterindex: u32,
pdesc: *mut D3D11_SIGNATURE_PARAMETER_DESC,
) -> windows_core::Result<()> {
unsafe {
(windows_core::Interface::vtable(self).GetInputParameterDesc)(
windows_core::Interface::as_raw(self),
parameterindex,
core::mem::transmute(pdesc),
)
.ok()
}
}
#[cfg(feature = "Win32_Graphics_Direct3D")]
pub unsafe fn GetOutputParameterDesc(
&self,
parameterindex: u32,
pdesc: *mut D3D11_SIGNATURE_PARAMETER_DESC,
) -> windows_core::Result<()> {
unsafe {
(windows_core::Interface::vtable(self).GetOutputParameterDesc)(
windows_core::Interface::as_raw(self),
parameterindex,
core::mem::transmute(pdesc),
)
.ok()
}
}
#[cfg(feature = "Win32_Graphics_Direct3D")]
pub unsafe fn GetPatchConstantParameterDesc(
&self,
parameterindex: u32,
pdesc: *mut D3D11_SIGNATURE_PARAMETER_DESC,
) -> windows_core::Result<()> {
unsafe {
(windows_core::Interface::vtable(self).GetPatchConstantParameterDesc)(
windows_core::Interface::as_raw(self),
parameterindex,
core::mem::transmute(pdesc),
)
.ok()
}
}
pub unsafe fn GetVariableByName<P0>(&self, name: P0) -> Option<ID3D11ShaderReflectionVariable>
where
P0: windows_core::Param<crate::core_supplemental::PCSTR>,
{
unsafe {
(windows_core::Interface::vtable(self).GetVariableByName)(
windows_core::Interface::as_raw(self),
name.param().abi(),
)
}
}
#[cfg(feature = "Win32_Graphics_Direct3D")]
pub unsafe fn GetResourceBindingDescByName<P0>(
&self,
name: P0,
pdesc: *mut D3D11_SHADER_INPUT_BIND_DESC,
) -> windows_core::Result<()>
where
P0: windows_core::Param<crate::core_supplemental::PCSTR>,
{
unsafe {
(windows_core::Interface::vtable(self).GetResourceBindingDescByName)(
windows_core::Interface::as_raw(self),
name.param().abi(),
core::mem::transmute(pdesc),
)
.ok()
}
}
pub unsafe fn GetMovInstructionCount(&self) -> u32 {
unsafe {
(windows_core::Interface::vtable(self).GetMovInstructionCount)(
windows_core::Interface::as_raw(self),
)
}
}
pub unsafe fn GetMovcInstructionCount(&self) -> u32 {
unsafe {
(windows_core::Interface::vtable(self).GetMovcInstructionCount)(
windows_core::Interface::as_raw(self),
)
}
}
pub unsafe fn GetConversionInstructionCount(&self) -> u32 {
unsafe {
(windows_core::Interface::vtable(self).GetConversionInstructionCount)(
windows_core::Interface::as_raw(self),
)
}
}
pub unsafe fn GetBitwiseInstructionCount(&self) -> u32 {
unsafe {
(windows_core::Interface::vtable(self).GetBitwiseInstructionCount)(
windows_core::Interface::as_raw(self),
)
}
}
#[cfg(feature = "Win32_Graphics_Direct3D")]
pub unsafe fn GetGSInputPrimitive(&self) -> super::Direct3D::D3D_PRIMITIVE {
unsafe {
(windows_core::Interface::vtable(self).GetGSInputPrimitive)(
windows_core::Interface::as_raw(self),
)
}
}
pub unsafe fn IsSampleFrequencyShader(&self) -> crate::Foundation::BOOL {
unsafe {
(windows_core::Interface::vtable(self).IsSampleFrequencyShader)(
windows_core::Interface::as_raw(self),
)
}
}
pub unsafe fn GetNumInterfaceSlots(&self) -> u32 {
unsafe {
(windows_core::Interface::vtable(self).GetNumInterfaceSlots)(
windows_core::Interface::as_raw(self),
)
}
}
#[cfg(feature = "Win32_Graphics_Direct3D")]
pub unsafe fn GetMinFeatureLevel(
&self,
) -> windows_core::Result<super::Direct3D::D3D_FEATURE_LEVEL> {
unsafe {
let mut result__ = core::mem::zeroed();
(windows_core::Interface::vtable(self).GetMinFeatureLevel)(
windows_core::Interface::as_raw(self),
&mut result__,
)
.map(|| result__)
}
}
pub unsafe fn GetThreadGroupSize(
&self,
psizex: Option<*mut u32>,
psizey: Option<*mut u32>,
psizez: Option<*mut u32>,
) -> u32 {
unsafe {
(windows_core::Interface::vtable(self).GetThreadGroupSize)(
windows_core::Interface::as_raw(self),
core::mem::transmute(psizex.unwrap_or(core::mem::zeroed())),
core::mem::transmute(psizey.unwrap_or(core::mem::zeroed())),
core::mem::transmute(psizez.unwrap_or(core::mem::zeroed())),
)
}
}
pub unsafe fn GetRequiresFlags(&self) -> u64 {
unsafe {
(windows_core::Interface::vtable(self).GetRequiresFlags)(
windows_core::Interface::as_raw(self),
)
}
}
}
#[repr(C)]
pub struct ID3D11ShaderReflection_Vtbl {
pub base__: windows_core::IUnknown_Vtbl,
#[cfg(feature = "Win32_Graphics_Direct3D")]
pub GetDesc: unsafe extern "system" fn(
*mut core::ffi::c_void,
*mut D3D11_SHADER_DESC,
) -> windows_core::HRESULT,
#[cfg(not(feature = "Win32_Graphics_Direct3D"))]
GetDesc: usize,
pub GetConstantBufferByIndex:
unsafe extern "system" fn(
*mut core::ffi::c_void,
u32,
) -> Option<ID3D11ShaderReflectionConstantBuffer>,
pub GetConstantBufferByName:
unsafe extern "system" fn(
*mut core::ffi::c_void,
crate::core_supplemental::PCSTR,
) -> Option<ID3D11ShaderReflectionConstantBuffer>,
#[cfg(feature = "Win32_Graphics_Direct3D")]
pub GetResourceBindingDesc: unsafe extern "system" fn(
*mut core::ffi::c_void,
u32,
*mut D3D11_SHADER_INPUT_BIND_DESC,
) -> windows_core::HRESULT,
#[cfg(not(feature = "Win32_Graphics_Direct3D"))]
GetResourceBindingDesc: usize,
#[cfg(feature = "Win32_Graphics_Direct3D")]
pub GetInputParameterDesc: unsafe extern "system" fn(
*mut core::ffi::c_void,
u32,
*mut D3D11_SIGNATURE_PARAMETER_DESC,
) -> windows_core::HRESULT,
#[cfg(not(feature = "Win32_Graphics_Direct3D"))]
GetInputParameterDesc: usize,
#[cfg(feature = "Win32_Graphics_Direct3D")]
pub GetOutputParameterDesc: unsafe extern "system" fn(
*mut core::ffi::c_void,
u32,
*mut D3D11_SIGNATURE_PARAMETER_DESC,
) -> windows_core::HRESULT,
#[cfg(not(feature = "Win32_Graphics_Direct3D"))]
GetOutputParameterDesc: usize,
#[cfg(feature = "Win32_Graphics_Direct3D")]
pub GetPatchConstantParameterDesc: unsafe extern "system" fn(
*mut core::ffi::c_void,
u32,
*mut D3D11_SIGNATURE_PARAMETER_DESC,
) -> windows_core::HRESULT,
#[cfg(not(feature = "Win32_Graphics_Direct3D"))]
GetPatchConstantParameterDesc: usize,
pub GetVariableByName: unsafe extern "system" fn(
*mut core::ffi::c_void,
crate::core_supplemental::PCSTR,
) -> Option<ID3D11ShaderReflectionVariable>,
#[cfg(feature = "Win32_Graphics_Direct3D")]
pub GetResourceBindingDescByName: unsafe extern "system" fn(
*mut core::ffi::c_void,
crate::core_supplemental::PCSTR,
*mut D3D11_SHADER_INPUT_BIND_DESC,
) -> windows_core::HRESULT,
#[cfg(not(feature = "Win32_Graphics_Direct3D"))]
GetResourceBindingDescByName: usize,
pub GetMovInstructionCount: unsafe extern "system" fn(*mut core::ffi::c_void) -> u32,
pub GetMovcInstructionCount: unsafe extern "system" fn(*mut core::ffi::c_void) -> u32,
pub GetConversionInstructionCount: unsafe extern "system" fn(*mut core::ffi::c_void) -> u32,
pub GetBitwiseInstructionCount: unsafe extern "system" fn(*mut core::ffi::c_void) -> u32,
#[cfg(feature = "Win32_Graphics_Direct3D")]
pub GetGSInputPrimitive:
unsafe extern "system" fn(*mut core::ffi::c_void) -> super::Direct3D::D3D_PRIMITIVE,
#[cfg(not(feature = "Win32_Graphics_Direct3D"))]
GetGSInputPrimitive: usize,
pub IsSampleFrequencyShader:
unsafe extern "system" fn(*mut core::ffi::c_void) -> crate::Foundation::BOOL,
pub GetNumInterfaceSlots: unsafe extern "system" fn(*mut core::ffi::c_void) -> u32,
#[cfg(feature = "Win32_Graphics_Direct3D")]
pub GetMinFeatureLevel: unsafe extern "system" fn(
*mut core::ffi::c_void,
*mut super::Direct3D::D3D_FEATURE_LEVEL,
) -> windows_core::HRESULT,
#[cfg(not(feature = "Win32_Graphics_Direct3D"))]
GetMinFeatureLevel: usize,
pub GetThreadGroupSize:
unsafe extern "system" fn(*mut core::ffi::c_void, *mut u32, *mut u32, *mut u32) -> u32,
pub GetRequiresFlags: unsafe extern "system" fn(*mut core::ffi::c_void) -> u64,
}
#[cfg(feature = "Win32_Graphics_Direct3D")]
pub trait ID3D11ShaderReflection_Impl: windows_core::IUnknownImpl {
fn GetDesc(&self, pdesc: *mut D3D11_SHADER_DESC) -> windows_core::Result<()>;
fn GetConstantBufferByIndex(&self, index: u32) -> Option<ID3D11ShaderReflectionConstantBuffer>;
fn GetConstantBufferByName(
&self,
name: &crate::core_supplemental::PCSTR,
) -> Option<ID3D11ShaderReflectionConstantBuffer>;
fn GetResourceBindingDesc(
&self,
resourceindex: u32,
pdesc: *mut D3D11_SHADER_INPUT_BIND_DESC,
) -> windows_core::Result<()>;
fn GetInputParameterDesc(
&self,
parameterindex: u32,
pdesc: *mut D3D11_SIGNATURE_PARAMETER_DESC,
) -> windows_core::Result<()>;
fn GetOutputParameterDesc(
&self,
parameterindex: u32,
pdesc: *mut D3D11_SIGNATURE_PARAMETER_DESC,
) -> windows_core::Result<()>;
fn GetPatchConstantParameterDesc(
&self,
parameterindex: u32,
pdesc: *mut D3D11_SIGNATURE_PARAMETER_DESC,
) -> windows_core::Result<()>;
fn GetVariableByName(
&self,
name: &crate::core_supplemental::PCSTR,
) -> Option<ID3D11ShaderReflectionVariable>;
fn GetResourceBindingDescByName(
&self,
name: &crate::core_supplemental::PCSTR,
pdesc: *mut D3D11_SHADER_INPUT_BIND_DESC,
) -> windows_core::Result<()>;
fn GetMovInstructionCount(&self) -> u32;
fn GetMovcInstructionCount(&self) -> u32;
fn GetConversionInstructionCount(&self) -> u32;
fn GetBitwiseInstructionCount(&self) -> u32;
fn GetGSInputPrimitive(&self) -> super::Direct3D::D3D_PRIMITIVE;
fn IsSampleFrequencyShader(&self) -> crate::Foundation::BOOL;
fn GetNumInterfaceSlots(&self) -> u32;
fn GetMinFeatureLevel(&self) -> windows_core::Result<super::Direct3D::D3D_FEATURE_LEVEL>;
fn GetThreadGroupSize(&self, psizex: *mut u32, psizey: *mut u32, psizez: *mut u32) -> u32;
fn GetRequiresFlags(&self) -> u64;
}
#[cfg(feature = "Win32_Graphics_Direct3D")]
impl ID3D11ShaderReflection_Vtbl {
pub const fn new<Identity: ID3D11ShaderReflection_Impl, const OFFSET: isize>() -> Self {
unsafe extern "system" fn GetDesc<
Identity: ID3D11ShaderReflection_Impl,
const OFFSET: isize,
>(
this: *mut core::ffi::c_void,
pdesc: *mut D3D11_SHADER_DESC,
) -> windows_core::HRESULT {
unsafe {
let this: &Identity =
&*((this as *const *const ()).offset(OFFSET) as *const Identity);
ID3D11ShaderReflection_Impl::GetDesc(this, core::mem::transmute_copy(&pdesc)).into()
}
}
unsafe extern "system" fn GetConstantBufferByIndex<
Identity: ID3D11ShaderReflection_Impl,
const OFFSET: isize,
>(
this: *mut core::ffi::c_void,
index: u32,
) -> Option<ID3D11ShaderReflectionConstantBuffer> {
unsafe {
let this: &Identity =
&*((this as *const *const ()).offset(OFFSET) as *const Identity);
ID3D11ShaderReflection_Impl::GetConstantBufferByIndex(
this,
core::mem::transmute_copy(&index),
)
}
}
unsafe extern "system" fn GetConstantBufferByName<
Identity: ID3D11ShaderReflection_Impl,
const OFFSET: isize,
>(
this: *mut core::ffi::c_void,
name: crate::core_supplemental::PCSTR,
) -> Option<ID3D11ShaderReflectionConstantBuffer> {
unsafe {
let this: &Identity =
&*((this as *const *const ()).offset(OFFSET) as *const Identity);
ID3D11ShaderReflection_Impl::GetConstantBufferByName(
this,
core::mem::transmute(&name),
)
}
}
unsafe extern "system" fn GetResourceBindingDesc<
Identity: ID3D11ShaderReflection_Impl,
const OFFSET: isize,
>(
this: *mut core::ffi::c_void,
resourceindex: u32,
pdesc: *mut D3D11_SHADER_INPUT_BIND_DESC,
) -> windows_core::HRESULT {
unsafe {
let this: &Identity =
&*((this as *const *const ()).offset(OFFSET) as *const Identity);
ID3D11ShaderReflection_Impl::GetResourceBindingDesc(
this,
core::mem::transmute_copy(&resourceindex),
core::mem::transmute_copy(&pdesc),
)
.into()
}
}
unsafe extern "system" fn GetInputParameterDesc<
Identity: ID3D11ShaderReflection_Impl,
const OFFSET: isize,
>(
this: *mut core::ffi::c_void,
parameterindex: u32,
pdesc: *mut D3D11_SIGNATURE_PARAMETER_DESC,
) -> windows_core::HRESULT {
unsafe {
let this: &Identity =
&*((this as *const *const ()).offset(OFFSET) as *const Identity);
ID3D11ShaderReflection_Impl::GetInputParameterDesc(
this,
core::mem::transmute_copy(¶meterindex),
core::mem::transmute_copy(&pdesc),
)
.into()
}
}
unsafe extern "system" fn GetOutputParameterDesc<
Identity: ID3D11ShaderReflection_Impl,
const OFFSET: isize,
>(
this: *mut core::ffi::c_void,
parameterindex: u32,
pdesc: *mut D3D11_SIGNATURE_PARAMETER_DESC,
) -> windows_core::HRESULT {
unsafe {
let this: &Identity =
&*((this as *const *const ()).offset(OFFSET) as *const Identity);
ID3D11ShaderReflection_Impl::GetOutputParameterDesc(
this,
core::mem::transmute_copy(¶meterindex),
core::mem::transmute_copy(&pdesc),
)
.into()
}
}
unsafe extern "system" fn GetPatchConstantParameterDesc<
Identity: ID3D11ShaderReflection_Impl,
const OFFSET: isize,
>(
this: *mut core::ffi::c_void,
parameterindex: u32,
pdesc: *mut D3D11_SIGNATURE_PARAMETER_DESC,
) -> windows_core::HRESULT {
unsafe {
let this: &Identity =
&*((this as *const *const ()).offset(OFFSET) as *const Identity);
ID3D11ShaderReflection_Impl::GetPatchConstantParameterDesc(
this,
core::mem::transmute_copy(¶meterindex),
core::mem::transmute_copy(&pdesc),
)
.into()
}
}
unsafe extern "system" fn GetVariableByName<
Identity: ID3D11ShaderReflection_Impl,
const OFFSET: isize,
>(
this: *mut core::ffi::c_void,
name: crate::core_supplemental::PCSTR,
) -> Option<ID3D11ShaderReflectionVariable> {
unsafe {
let this: &Identity =
&*((this as *const *const ()).offset(OFFSET) as *const Identity);
ID3D11ShaderReflection_Impl::GetVariableByName(this, core::mem::transmute(&name))
}
}
unsafe extern "system" fn GetResourceBindingDescByName<
Identity: ID3D11ShaderReflection_Impl,
const OFFSET: isize,
>(
this: *mut core::ffi::c_void,
name: crate::core_supplemental::PCSTR,
pdesc: *mut D3D11_SHADER_INPUT_BIND_DESC,
) -> windows_core::HRESULT {
unsafe {
let this: &Identity =
&*((this as *const *const ()).offset(OFFSET) as *const Identity);
ID3D11ShaderReflection_Impl::GetResourceBindingDescByName(
this,
core::mem::transmute(&name),
core::mem::transmute_copy(&pdesc),
)
.into()
}
}
unsafe extern "system" fn GetMovInstructionCount<
Identity: ID3D11ShaderReflection_Impl,
const OFFSET: isize,
>(
this: *mut core::ffi::c_void,
) -> u32 {
unsafe {
let this: &Identity =
&*((this as *const *const ()).offset(OFFSET) as *const Identity);
ID3D11ShaderReflection_Impl::GetMovInstructionCount(this)
}
}
unsafe extern "system" fn GetMovcInstructionCount<
Identity: ID3D11ShaderReflection_Impl,
const OFFSET: isize,
>(
this: *mut core::ffi::c_void,
) -> u32 {
unsafe {
let this: &Identity =
&*((this as *const *const ()).offset(OFFSET) as *const Identity);
ID3D11ShaderReflection_Impl::GetMovcInstructionCount(this)
}
}
unsafe extern "system" fn GetConversionInstructionCount<
Identity: ID3D11ShaderReflection_Impl,
const OFFSET: isize,
>(
this: *mut core::ffi::c_void,
) -> u32 {
unsafe {
let this: &Identity =
&*((this as *const *const ()).offset(OFFSET) as *const Identity);
ID3D11ShaderReflection_Impl::GetConversionInstructionCount(this)
}
}
unsafe extern "system" fn GetBitwiseInstructionCount<
Identity: ID3D11ShaderReflection_Impl,
const OFFSET: isize,
>(
this: *mut core::ffi::c_void,
) -> u32 {
unsafe {
let this: &Identity =
&*((this as *const *const ()).offset(OFFSET) as *const Identity);
ID3D11ShaderReflection_Impl::GetBitwiseInstructionCount(this)
}
}
unsafe extern "system" fn GetGSInputPrimitive<
Identity: ID3D11ShaderReflection_Impl,
const OFFSET: isize,
>(
this: *mut core::ffi::c_void,
) -> super::Direct3D::D3D_PRIMITIVE {
unsafe {
let this: &Identity =
&*((this as *const *const ()).offset(OFFSET) as *const Identity);
ID3D11ShaderReflection_Impl::GetGSInputPrimitive(this)
}
}
unsafe extern "system" fn IsSampleFrequencyShader<
Identity: ID3D11ShaderReflection_Impl,
const OFFSET: isize,
>(
this: *mut core::ffi::c_void,
) -> crate::Foundation::BOOL {
unsafe {
let this: &Identity =
&*((this as *const *const ()).offset(OFFSET) as *const Identity);
ID3D11ShaderReflection_Impl::IsSampleFrequencyShader(this)
}
}
unsafe extern "system" fn GetNumInterfaceSlots<
Identity: ID3D11ShaderReflection_Impl,
const OFFSET: isize,
>(
this: *mut core::ffi::c_void,
) -> u32 {
unsafe {
let this: &Identity =
&*((this as *const *const ()).offset(OFFSET) as *const Identity);
ID3D11ShaderReflection_Impl::GetNumInterfaceSlots(this)
}
}
unsafe extern "system" fn GetMinFeatureLevel<
Identity: ID3D11ShaderReflection_Impl,
const OFFSET: isize,
>(
this: *mut core::ffi::c_void,
plevel: *mut super::Direct3D::D3D_FEATURE_LEVEL,
) -> windows_core::HRESULT {
unsafe {
let this: &Identity =
&*((this as *const *const ()).offset(OFFSET) as *const Identity);
match ID3D11ShaderReflection_Impl::GetMinFeatureLevel(this) {
Ok(ok__) => {
plevel.write(core::mem::transmute(ok__));
windows_core::HRESULT(0)
}
Err(err) => err.into(),
}
}
}
unsafe extern "system" fn GetThreadGroupSize<
Identity: ID3D11ShaderReflection_Impl,
const OFFSET: isize,
>(
this: *mut core::ffi::c_void,
psizex: *mut u32,
psizey: *mut u32,
psizez: *mut u32,
) -> u32 {
unsafe {
let this: &Identity =
&*((this as *const *const ()).offset(OFFSET) as *const Identity);
ID3D11ShaderReflection_Impl::GetThreadGroupSize(
this,
core::mem::transmute_copy(&psizex),
core::mem::transmute_copy(&psizey),
core::mem::transmute_copy(&psizez),
)
}
}
unsafe extern "system" fn GetRequiresFlags<
Identity: ID3D11ShaderReflection_Impl,
const OFFSET: isize,
>(
this: *mut core::ffi::c_void,
) -> u64 {
unsafe {
let this: &Identity =
&*((this as *const *const ()).offset(OFFSET) as *const Identity);
ID3D11ShaderReflection_Impl::GetRequiresFlags(this)
}
}
Self {
base__: windows_core::IUnknown_Vtbl::new::<Identity, OFFSET>(),
GetDesc: GetDesc::<Identity, OFFSET>,
GetConstantBufferByIndex: GetConstantBufferByIndex::<Identity, OFFSET>,
GetConstantBufferByName: GetConstantBufferByName::<Identity, OFFSET>,
GetResourceBindingDesc: GetResourceBindingDesc::<Identity, OFFSET>,
GetInputParameterDesc: GetInputParameterDesc::<Identity, OFFSET>,
GetOutputParameterDesc: GetOutputParameterDesc::<Identity, OFFSET>,
GetPatchConstantParameterDesc: GetPatchConstantParameterDesc::<Identity, OFFSET>,
GetVariableByName: GetVariableByName::<Identity, OFFSET>,
GetResourceBindingDescByName: GetResourceBindingDescByName::<Identity, OFFSET>,
GetMovInstructionCount: GetMovInstructionCount::<Identity, OFFSET>,
GetMovcInstructionCount: GetMovcInstructionCount::<Identity, OFFSET>,
GetConversionInstructionCount: GetConversionInstructionCount::<Identity, OFFSET>,
GetBitwiseInstructionCount: GetBitwiseInstructionCount::<Identity, OFFSET>,
GetGSInputPrimitive: GetGSInputPrimitive::<Identity, OFFSET>,
IsSampleFrequencyShader: IsSampleFrequencyShader::<Identity, OFFSET>,
GetNumInterfaceSlots: GetNumInterfaceSlots::<Identity, OFFSET>,
GetMinFeatureLevel: GetMinFeatureLevel::<Identity, OFFSET>,
GetThreadGroupSize: GetThreadGroupSize::<Identity, OFFSET>,
GetRequiresFlags: GetRequiresFlags::<Identity, OFFSET>,
}
}
pub fn matches(iid: &windows_core::GUID) -> bool {
iid == &<ID3D11ShaderReflection as windows_core::Interface>::IID
}
}
#[cfg(feature = "Win32_Graphics_Direct3D")]
impl windows_core::RuntimeName for ID3D11ShaderReflection {}
#[cfg(feature = "Win32_Graphics_Direct3D")]
unsafe impl Send for ID3D11ShaderReflection {}
#[cfg(feature = "Win32_Graphics_Direct3D")]
unsafe impl Sync for ID3D11ShaderReflection {}
windows_core::imp::define_interface!(
ID3D11ShaderReflectionConstantBuffer,
ID3D11ShaderReflectionConstantBuffer_Vtbl
);
impl ID3D11ShaderReflectionConstantBuffer {
#[cfg(feature = "Win32_Graphics_Direct3D")]
pub unsafe fn GetDesc(&self, pdesc: *mut D3D11_SHADER_BUFFER_DESC) -> windows_core::Result<()> {
unsafe {
(windows_core::Interface::vtable(self).GetDesc)(
windows_core::Interface::as_raw(self),
core::mem::transmute(pdesc),
)
.ok()
}
}
pub unsafe fn GetVariableByIndex(&self, index: u32) -> Option<ID3D11ShaderReflectionVariable> {
unsafe {
(windows_core::Interface::vtable(self).GetVariableByIndex)(
windows_core::Interface::as_raw(self),
index,
)
}
}
pub unsafe fn GetVariableByName<P0>(&self, name: P0) -> Option<ID3D11ShaderReflectionVariable>
where
P0: windows_core::Param<crate::core_supplemental::PCSTR>,
{
unsafe {
(windows_core::Interface::vtable(self).GetVariableByName)(
windows_core::Interface::as_raw(self),
name.param().abi(),
)
}
}
}
#[repr(C)]
pub struct ID3D11ShaderReflectionConstantBuffer_Vtbl {
#[cfg(feature = "Win32_Graphics_Direct3D")]
pub GetDesc: unsafe extern "system" fn(
*mut core::ffi::c_void,
*mut D3D11_SHADER_BUFFER_DESC,
) -> windows_core::HRESULT,
#[cfg(not(feature = "Win32_Graphics_Direct3D"))]
GetDesc: usize,
pub GetVariableByIndex: unsafe extern "system" fn(
*mut core::ffi::c_void,
u32,
)
-> Option<ID3D11ShaderReflectionVariable>,
pub GetVariableByName: unsafe extern "system" fn(
*mut core::ffi::c_void,
crate::core_supplemental::PCSTR,
) -> Option<ID3D11ShaderReflectionVariable>,
}
#[cfg(feature = "Win32_Graphics_Direct3D")]
pub trait ID3D11ShaderReflectionConstantBuffer_Impl {
fn GetDesc(&self, pdesc: *mut D3D11_SHADER_BUFFER_DESC) -> windows_core::Result<()>;
fn GetVariableByIndex(&self, index: u32) -> Option<ID3D11ShaderReflectionVariable>;
fn GetVariableByName(
&self,
name: &crate::core_supplemental::PCSTR,
) -> Option<ID3D11ShaderReflectionVariable>;
}
#[cfg(feature = "Win32_Graphics_Direct3D")]
impl ID3D11ShaderReflectionConstantBuffer_Vtbl {
pub const fn new<Identity: ID3D11ShaderReflectionConstantBuffer_Impl>() -> Self {
unsafe extern "system" fn GetDesc<Identity: ID3D11ShaderReflectionConstantBuffer_Impl>(
this: *mut core::ffi::c_void,
pdesc: *mut D3D11_SHADER_BUFFER_DESC,
) -> windows_core::HRESULT {
unsafe {
let this = (this as *mut *mut core::ffi::c_void) as *const windows_core::ScopedHeap;
let this = &*((*this).this as *const Identity);
ID3D11ShaderReflectionConstantBuffer_Impl::GetDesc(
this,
core::mem::transmute_copy(&pdesc),
)
.into()
}
}
unsafe extern "system" fn GetVariableByIndex<
Identity: ID3D11ShaderReflectionConstantBuffer_Impl,
>(
this: *mut core::ffi::c_void,
index: u32,
) -> Option<ID3D11ShaderReflectionVariable> {
unsafe {
let this = (this as *mut *mut core::ffi::c_void) as *const windows_core::ScopedHeap;
let this = &*((*this).this as *const Identity);
ID3D11ShaderReflectionConstantBuffer_Impl::GetVariableByIndex(
this,
core::mem::transmute_copy(&index),
)
}
}
unsafe extern "system" fn GetVariableByName<
Identity: ID3D11ShaderReflectionConstantBuffer_Impl,
>(
this: *mut core::ffi::c_void,
name: crate::core_supplemental::PCSTR,
) -> Option<ID3D11ShaderReflectionVariable> {
unsafe {
let this = (this as *mut *mut core::ffi::c_void) as *const windows_core::ScopedHeap;
let this = &*((*this).this as *const Identity);
ID3D11ShaderReflectionConstantBuffer_Impl::GetVariableByName(
this,
core::mem::transmute(&name),
)
}
}
Self {
GetDesc: GetDesc::<Identity>,
GetVariableByIndex: GetVariableByIndex::<Identity>,
GetVariableByName: GetVariableByName::<Identity>,
}
}
}
#[cfg(feature = "Win32_Graphics_Direct3D")]
struct ID3D11ShaderReflectionConstantBuffer_ImplVtbl<T: ID3D11ShaderReflectionConstantBuffer_Impl>(
core::marker::PhantomData<T>,
);
#[cfg(feature = "Win32_Graphics_Direct3D")]
impl<T: ID3D11ShaderReflectionConstantBuffer_Impl>
ID3D11ShaderReflectionConstantBuffer_ImplVtbl<T>
{
const VTABLE: ID3D11ShaderReflectionConstantBuffer_Vtbl =
ID3D11ShaderReflectionConstantBuffer_Vtbl::new::<T>();
}
#[cfg(feature = "Win32_Graphics_Direct3D")]
impl ID3D11ShaderReflectionConstantBuffer {
pub fn new<T: ID3D11ShaderReflectionConstantBuffer_Impl>(
this: &T,
) -> windows_core::ScopedInterface<'_, Self> {
let this = windows_core::ScopedHeap {
vtable: &ID3D11ShaderReflectionConstantBuffer_ImplVtbl::<T>::VTABLE as *const _
as *const _,
this: this as *const _ as *const _,
};
let this = core::mem::ManuallyDrop::new(windows_core::imp::Box::new(this));
unsafe { windows_core::ScopedInterface::new(core::mem::transmute(&this.vtable)) }
}
}
#[cfg(feature = "Win32_Graphics_Direct3D")]
unsafe impl Send for ID3D11ShaderReflectionConstantBuffer {}
#[cfg(feature = "Win32_Graphics_Direct3D")]
unsafe impl Sync for ID3D11ShaderReflectionConstantBuffer {}
windows_core::imp::define_interface!(ID3D11ShaderReflectionType, ID3D11ShaderReflectionType_Vtbl);
impl ID3D11ShaderReflectionType {
#[cfg(feature = "Win32_Graphics_Direct3D")]
pub unsafe fn GetDesc(&self, pdesc: *mut D3D11_SHADER_TYPE_DESC) -> windows_core::Result<()> {
unsafe {
(windows_core::Interface::vtable(self).GetDesc)(
windows_core::Interface::as_raw(self),
core::mem::transmute(pdesc),
)
.ok()
}
}
pub unsafe fn GetMemberTypeByIndex(&self, index: u32) -> Option<ID3D11ShaderReflectionType> {
unsafe {
(windows_core::Interface::vtable(self).GetMemberTypeByIndex)(
windows_core::Interface::as_raw(self),
index,
)
}
}
pub unsafe fn GetMemberTypeByName<P0>(&self, name: P0) -> Option<ID3D11ShaderReflectionType>
where
P0: windows_core::Param<crate::core_supplemental::PCSTR>,
{
unsafe {
(windows_core::Interface::vtable(self).GetMemberTypeByName)(
windows_core::Interface::as_raw(self),
name.param().abi(),
)
}
}
pub unsafe fn GetMemberTypeName(&self, index: u32) -> crate::core_supplemental::PCSTR {
unsafe {
(windows_core::Interface::vtable(self).GetMemberTypeName)(
windows_core::Interface::as_raw(self),
index,
)
}
}
pub unsafe fn IsEqual<P0>(&self, ptype: P0) -> windows_core::Result<()>
where
P0: windows_core::Param<ID3D11ShaderReflectionType>,
{
unsafe {
(windows_core::Interface::vtable(self).IsEqual)(
windows_core::Interface::as_raw(self),
ptype.param().abi(),
)
.ok()
}
}
pub unsafe fn GetSubType(&self) -> Option<ID3D11ShaderReflectionType> {
unsafe {
(windows_core::Interface::vtable(self).GetSubType)(windows_core::Interface::as_raw(
self,
))
}
}
pub unsafe fn GetBaseClass(&self) -> Option<ID3D11ShaderReflectionType> {
unsafe {
(windows_core::Interface::vtable(self).GetBaseClass)(windows_core::Interface::as_raw(
self,
))
}
}
pub unsafe fn GetNumInterfaces(&self) -> u32 {
unsafe {
(windows_core::Interface::vtable(self).GetNumInterfaces)(
windows_core::Interface::as_raw(self),
)
}
}
pub unsafe fn GetInterfaceByIndex(&self, uindex: u32) -> Option<ID3D11ShaderReflectionType> {
unsafe {
(windows_core::Interface::vtable(self).GetInterfaceByIndex)(
windows_core::Interface::as_raw(self),
uindex,
)
}
}
pub unsafe fn IsOfType<P0>(&self, ptype: P0) -> windows_core::Result<()>
where
P0: windows_core::Param<ID3D11ShaderReflectionType>,
{
unsafe {
(windows_core::Interface::vtable(self).IsOfType)(
windows_core::Interface::as_raw(self),
ptype.param().abi(),
)
.ok()
}
}
pub unsafe fn ImplementsInterface<P0>(&self, pbase: P0) -> windows_core::Result<()>
where
P0: windows_core::Param<ID3D11ShaderReflectionType>,
{
unsafe {
(windows_core::Interface::vtable(self).ImplementsInterface)(
windows_core::Interface::as_raw(self),
pbase.param().abi(),
)
.ok()
}
}
}
#[repr(C)]
pub struct ID3D11ShaderReflectionType_Vtbl {
#[cfg(feature = "Win32_Graphics_Direct3D")]
pub GetDesc: unsafe extern "system" fn(
*mut core::ffi::c_void,
*mut D3D11_SHADER_TYPE_DESC,
) -> windows_core::HRESULT,
#[cfg(not(feature = "Win32_Graphics_Direct3D"))]
GetDesc: usize,
pub GetMemberTypeByIndex: unsafe extern "system" fn(
*mut core::ffi::c_void,
u32,
) -> Option<ID3D11ShaderReflectionType>,
pub GetMemberTypeByName: unsafe extern "system" fn(
*mut core::ffi::c_void,
crate::core_supplemental::PCSTR,
) -> Option<ID3D11ShaderReflectionType>,
pub GetMemberTypeName:
unsafe extern "system" fn(*mut core::ffi::c_void, u32) -> crate::core_supplemental::PCSTR,
pub IsEqual: unsafe extern "system" fn(
*mut core::ffi::c_void,
*mut core::ffi::c_void,
) -> windows_core::HRESULT,
pub GetSubType:
unsafe extern "system" fn(*mut core::ffi::c_void) -> Option<ID3D11ShaderReflectionType>,
pub GetBaseClass:
unsafe extern "system" fn(*mut core::ffi::c_void) -> Option<ID3D11ShaderReflectionType>,
pub GetNumInterfaces: unsafe extern "system" fn(*mut core::ffi::c_void) -> u32,
pub GetInterfaceByIndex: unsafe extern "system" fn(
*mut core::ffi::c_void,
u32,
) -> Option<ID3D11ShaderReflectionType>,
pub IsOfType: unsafe extern "system" fn(
*mut core::ffi::c_void,
*mut core::ffi::c_void,
) -> windows_core::HRESULT,
pub ImplementsInterface: unsafe extern "system" fn(
*mut core::ffi::c_void,
*mut core::ffi::c_void,
) -> windows_core::HRESULT,
}
#[cfg(feature = "Win32_Graphics_Direct3D")]
pub trait ID3D11ShaderReflectionType_Impl {
fn GetDesc(&self, pdesc: *mut D3D11_SHADER_TYPE_DESC) -> windows_core::Result<()>;
fn GetMemberTypeByIndex(&self, index: u32) -> Option<ID3D11ShaderReflectionType>;
fn GetMemberTypeByName(&self, name: &crate::core_supplemental::PCSTR)
-> Option<ID3D11ShaderReflectionType>;
fn GetMemberTypeName(&self, index: u32) -> crate::core_supplemental::PCSTR;
fn IsEqual(
&self,
ptype: windows_core::Ref<'_, ID3D11ShaderReflectionType>,
) -> windows_core::Result<()>;
fn GetSubType(&self) -> Option<ID3D11ShaderReflectionType>;
fn GetBaseClass(&self) -> Option<ID3D11ShaderReflectionType>;
fn GetNumInterfaces(&self) -> u32;
fn GetInterfaceByIndex(&self, uindex: u32) -> Option<ID3D11ShaderReflectionType>;
fn IsOfType(
&self,
ptype: windows_core::Ref<'_, ID3D11ShaderReflectionType>,
) -> windows_core::Result<()>;
fn ImplementsInterface(
&self,
pbase: windows_core::Ref<'_, ID3D11ShaderReflectionType>,
) -> windows_core::Result<()>;
}
#[cfg(feature = "Win32_Graphics_Direct3D")]
impl ID3D11ShaderReflectionType_Vtbl {
pub const fn new<Identity: ID3D11ShaderReflectionType_Impl>() -> Self {
unsafe extern "system" fn GetDesc<Identity: ID3D11ShaderReflectionType_Impl>(
this: *mut core::ffi::c_void,
pdesc: *mut D3D11_SHADER_TYPE_DESC,
) -> windows_core::HRESULT {
unsafe {
let this = (this as *mut *mut core::ffi::c_void) as *const windows_core::ScopedHeap;
let this = &*((*this).this as *const Identity);
ID3D11ShaderReflectionType_Impl::GetDesc(this, core::mem::transmute_copy(&pdesc))
.into()
}
}
unsafe extern "system" fn GetMemberTypeByIndex<
Identity: ID3D11ShaderReflectionType_Impl,
>(
this: *mut core::ffi::c_void,
index: u32,
) -> Option<ID3D11ShaderReflectionType> {
unsafe {
let this = (this as *mut *mut core::ffi::c_void) as *const windows_core::ScopedHeap;
let this = &*((*this).this as *const Identity);
ID3D11ShaderReflectionType_Impl::GetMemberTypeByIndex(
this,
core::mem::transmute_copy(&index),
)
}
}
unsafe extern "system" fn GetMemberTypeByName<Identity: ID3D11ShaderReflectionType_Impl>(
this: *mut core::ffi::c_void,
name: crate::core_supplemental::PCSTR,
) -> Option<ID3D11ShaderReflectionType> {
unsafe {
let this = (this as *mut *mut core::ffi::c_void) as *const windows_core::ScopedHeap;
let this = &*((*this).this as *const Identity);
ID3D11ShaderReflectionType_Impl::GetMemberTypeByName(
this,
core::mem::transmute(&name),
)
}
}
unsafe extern "system" fn GetMemberTypeName<Identity: ID3D11ShaderReflectionType_Impl>(
this: *mut core::ffi::c_void,
index: u32,
) -> crate::core_supplemental::PCSTR {
unsafe {
let this = (this as *mut *mut core::ffi::c_void) as *const windows_core::ScopedHeap;
let this = &*((*this).this as *const Identity);
ID3D11ShaderReflectionType_Impl::GetMemberTypeName(
this,
core::mem::transmute_copy(&index),
)
}
}
unsafe extern "system" fn IsEqual<Identity: ID3D11ShaderReflectionType_Impl>(
this: *mut core::ffi::c_void,
ptype: *mut core::ffi::c_void,
) -> windows_core::HRESULT {
unsafe {
let this = (this as *mut *mut core::ffi::c_void) as *const windows_core::ScopedHeap;
let this = &*((*this).this as *const Identity);
ID3D11ShaderReflectionType_Impl::IsEqual(this, core::mem::transmute_copy(&ptype))
.into()
}
}
unsafe extern "system" fn GetSubType<Identity: ID3D11ShaderReflectionType_Impl>(
this: *mut core::ffi::c_void,
) -> Option<ID3D11ShaderReflectionType> {
unsafe {
let this = (this as *mut *mut core::ffi::c_void) as *const windows_core::ScopedHeap;
let this = &*((*this).this as *const Identity);
ID3D11ShaderReflectionType_Impl::GetSubType(this)
}
}
unsafe extern "system" fn GetBaseClass<Identity: ID3D11ShaderReflectionType_Impl>(
this: *mut core::ffi::c_void,
) -> Option<ID3D11ShaderReflectionType> {
unsafe {
let this = (this as *mut *mut core::ffi::c_void) as *const windows_core::ScopedHeap;
let this = &*((*this).this as *const Identity);
ID3D11ShaderReflectionType_Impl::GetBaseClass(this)
}
}
unsafe extern "system" fn GetNumInterfaces<Identity: ID3D11ShaderReflectionType_Impl>(
this: *mut core::ffi::c_void,
) -> u32 {
unsafe {
let this = (this as *mut *mut core::ffi::c_void) as *const windows_core::ScopedHeap;
let this = &*((*this).this as *const Identity);
ID3D11ShaderReflectionType_Impl::GetNumInterfaces(this)
}
}
unsafe extern "system" fn GetInterfaceByIndex<Identity: ID3D11ShaderReflectionType_Impl>(
this: *mut core::ffi::c_void,
uindex: u32,
) -> Option<ID3D11ShaderReflectionType> {
unsafe {
let this = (this as *mut *mut core::ffi::c_void) as *const windows_core::ScopedHeap;
let this = &*((*this).this as *const Identity);
ID3D11ShaderReflectionType_Impl::GetInterfaceByIndex(
this,
core::mem::transmute_copy(&uindex),
)
}
}
unsafe extern "system" fn IsOfType<Identity: ID3D11ShaderReflectionType_Impl>(
this: *mut core::ffi::c_void,
ptype: *mut core::ffi::c_void,
) -> windows_core::HRESULT {
unsafe {
let this = (this as *mut *mut core::ffi::c_void) as *const windows_core::ScopedHeap;
let this = &*((*this).this as *const Identity);
ID3D11ShaderReflectionType_Impl::IsOfType(this, core::mem::transmute_copy(&ptype))
.into()
}
}
unsafe extern "system" fn ImplementsInterface<Identity: ID3D11ShaderReflectionType_Impl>(
this: *mut core::ffi::c_void,
pbase: *mut core::ffi::c_void,
) -> windows_core::HRESULT {
unsafe {
let this = (this as *mut *mut core::ffi::c_void) as *const windows_core::ScopedHeap;
let this = &*((*this).this as *const Identity);
ID3D11ShaderReflectionType_Impl::ImplementsInterface(
this,
core::mem::transmute_copy(&pbase),
)
.into()
}
}
Self {
GetDesc: GetDesc::<Identity>,
GetMemberTypeByIndex: GetMemberTypeByIndex::<Identity>,
GetMemberTypeByName: GetMemberTypeByName::<Identity>,
GetMemberTypeName: GetMemberTypeName::<Identity>,
IsEqual: IsEqual::<Identity>,
GetSubType: GetSubType::<Identity>,
GetBaseClass: GetBaseClass::<Identity>,
GetNumInterfaces: GetNumInterfaces::<Identity>,
GetInterfaceByIndex: GetInterfaceByIndex::<Identity>,
IsOfType: IsOfType::<Identity>,
ImplementsInterface: ImplementsInterface::<Identity>,
}
}
}
#[cfg(feature = "Win32_Graphics_Direct3D")]
struct ID3D11ShaderReflectionType_ImplVtbl<T: ID3D11ShaderReflectionType_Impl>(
core::marker::PhantomData<T>,
);
#[cfg(feature = "Win32_Graphics_Direct3D")]
impl<T: ID3D11ShaderReflectionType_Impl> ID3D11ShaderReflectionType_ImplVtbl<T> {
const VTABLE: ID3D11ShaderReflectionType_Vtbl = ID3D11ShaderReflectionType_Vtbl::new::<T>();
}
#[cfg(feature = "Win32_Graphics_Direct3D")]
impl ID3D11ShaderReflectionType {
pub fn new<T: ID3D11ShaderReflectionType_Impl>(
this: &T,
) -> windows_core::ScopedInterface<'_, Self> {
let this = windows_core::ScopedHeap {
vtable: &ID3D11ShaderReflectionType_ImplVtbl::<T>::VTABLE as *const _ as *const _,
this: this as *const _ as *const _,
};
let this = core::mem::ManuallyDrop::new(windows_core::imp::Box::new(this));
unsafe { windows_core::ScopedInterface::new(core::mem::transmute(&this.vtable)) }
}
}
#[cfg(feature = "Win32_Graphics_Direct3D")]
unsafe impl Send for ID3D11ShaderReflectionType {}
#[cfg(feature = "Win32_Graphics_Direct3D")]
unsafe impl Sync for ID3D11ShaderReflectionType {}
windows_core::imp::define_interface!(
ID3D11ShaderReflectionVariable,
ID3D11ShaderReflectionVariable_Vtbl
);
impl ID3D11ShaderReflectionVariable {
pub unsafe fn GetDesc(
&self,
pdesc: *mut D3D11_SHADER_VARIABLE_DESC,
) -> windows_core::Result<()> {
unsafe {
(windows_core::Interface::vtable(self).GetDesc)(
windows_core::Interface::as_raw(self),
core::mem::transmute(pdesc),
)
.ok()
}
}
pub unsafe fn GetType(&self) -> Option<ID3D11ShaderReflectionType> {
unsafe {
(windows_core::Interface::vtable(self).GetType)(windows_core::Interface::as_raw(self))
}
}
pub unsafe fn GetBuffer(&self) -> Option<ID3D11ShaderReflectionConstantBuffer> {
unsafe {
(windows_core::Interface::vtable(self).GetBuffer)(windows_core::Interface::as_raw(self))
}
}
pub unsafe fn GetInterfaceSlot(&self, uarrayindex: u32) -> u32 {
unsafe {
(windows_core::Interface::vtable(self).GetInterfaceSlot)(
windows_core::Interface::as_raw(self),
uarrayindex,
)
}
}
}
#[repr(C)]
pub struct ID3D11ShaderReflectionVariable_Vtbl {
pub GetDesc: unsafe extern "system" fn(
*mut core::ffi::c_void,
*mut D3D11_SHADER_VARIABLE_DESC,
) -> windows_core::HRESULT,
pub GetType:
unsafe extern "system" fn(*mut core::ffi::c_void) -> Option<ID3D11ShaderReflectionType>,
pub GetBuffer: unsafe extern "system" fn(
*mut core::ffi::c_void,
) -> Option<ID3D11ShaderReflectionConstantBuffer>,
pub GetInterfaceSlot: unsafe extern "system" fn(*mut core::ffi::c_void, u32) -> u32,
}
pub trait ID3D11ShaderReflectionVariable_Impl {
fn GetDesc(&self, pdesc: *mut D3D11_SHADER_VARIABLE_DESC) -> windows_core::Result<()>;
fn GetType(&self) -> Option<ID3D11ShaderReflectionType>;
fn GetBuffer(&self) -> Option<ID3D11ShaderReflectionConstantBuffer>;
fn GetInterfaceSlot(&self, uarrayindex: u32) -> u32;
}
impl ID3D11ShaderReflectionVariable_Vtbl {
pub const fn new<Identity: ID3D11ShaderReflectionVariable_Impl>() -> Self {
unsafe extern "system" fn GetDesc<Identity: ID3D11ShaderReflectionVariable_Impl>(
this: *mut core::ffi::c_void,
pdesc: *mut D3D11_SHADER_VARIABLE_DESC,
) -> windows_core::HRESULT {
unsafe {
let this = (this as *mut *mut core::ffi::c_void) as *const windows_core::ScopedHeap;
let this = &*((*this).this as *const Identity);
ID3D11ShaderReflectionVariable_Impl::GetDesc(
this,
core::mem::transmute_copy(&pdesc),
)
.into()
}
}
unsafe extern "system" fn GetType<Identity: ID3D11ShaderReflectionVariable_Impl>(
this: *mut core::ffi::c_void,
) -> Option<ID3D11ShaderReflectionType> {
unsafe {
let this = (this as *mut *mut core::ffi::c_void) as *const windows_core::ScopedHeap;
let this = &*((*this).this as *const Identity);
ID3D11ShaderReflectionVariable_Impl::GetType(this)
}
}
unsafe extern "system" fn GetBuffer<Identity: ID3D11ShaderReflectionVariable_Impl>(
this: *mut core::ffi::c_void,
) -> Option<ID3D11ShaderReflectionConstantBuffer> {
unsafe {
let this = (this as *mut *mut core::ffi::c_void) as *const windows_core::ScopedHeap;
let this = &*((*this).this as *const Identity);
ID3D11ShaderReflectionVariable_Impl::GetBuffer(this)
}
}
unsafe extern "system" fn GetInterfaceSlot<
Identity: ID3D11ShaderReflectionVariable_Impl,
>(
this: *mut core::ffi::c_void,
uarrayindex: u32,
) -> u32 {
unsafe {
let this = (this as *mut *mut core::ffi::c_void) as *const windows_core::ScopedHeap;
let this = &*((*this).this as *const Identity);
ID3D11ShaderReflectionVariable_Impl::GetInterfaceSlot(
this,
core::mem::transmute_copy(&uarrayindex),
)
}
}
Self {
GetDesc: GetDesc::<Identity>,
GetType: GetType::<Identity>,
GetBuffer: GetBuffer::<Identity>,
GetInterfaceSlot: GetInterfaceSlot::<Identity>,
}
}
}
struct ID3D11ShaderReflectionVariable_ImplVtbl<T: ID3D11ShaderReflectionVariable_Impl>(
core::marker::PhantomData<T>,
);
impl<T: ID3D11ShaderReflectionVariable_Impl> ID3D11ShaderReflectionVariable_ImplVtbl<T> {
const VTABLE: ID3D11ShaderReflectionVariable_Vtbl =
ID3D11ShaderReflectionVariable_Vtbl::new::<T>();
}
impl ID3D11ShaderReflectionVariable {
pub fn new<T: ID3D11ShaderReflectionVariable_Impl>(
this: &T,
) -> windows_core::ScopedInterface<'_, Self> {
let this = windows_core::ScopedHeap {
vtable: &ID3D11ShaderReflectionVariable_ImplVtbl::<T>::VTABLE as *const _ as *const _,
this: this as *const _ as *const _,
};
let this = core::mem::ManuallyDrop::new(windows_core::imp::Box::new(this));
unsafe { windows_core::ScopedInterface::new(core::mem::transmute(&this.vtable)) }
}
}
unsafe impl Send for ID3D11ShaderReflectionVariable {}
unsafe impl Sync for ID3D11ShaderReflectionVariable {}
windows_core::imp::define_interface!(
ID3D11ShaderResourceView,
ID3D11ShaderResourceView_Vtbl,
0xb0e06fe0_8192_4e1a_b1ca_36d7414710b2
);
impl core::ops::Deref for ID3D11ShaderResourceView {
type Target = ID3D11View;
fn deref(&self) -> &Self::Target {
unsafe { core::mem::transmute(self) }
}
}
windows_core::imp::interface_hierarchy!(
ID3D11ShaderResourceView,
windows_core::IUnknown,
ID3D11DeviceChild,
ID3D11View
);
impl ID3D11ShaderResourceView {
#[cfg(all(
feature = "Win32_Graphics_Direct3D",
feature = "Win32_Graphics_Dxgi_Common"
))]
pub unsafe fn GetDesc(&self, pdesc: *mut D3D11_SHADER_RESOURCE_VIEW_DESC) {
unsafe {
(windows_core::Interface::vtable(self).GetDesc)(
windows_core::Interface::as_raw(self),
core::mem::transmute(pdesc),
)
}
}
}
#[repr(C)]
pub struct ID3D11ShaderResourceView_Vtbl {
pub base__: ID3D11View_Vtbl,
#[cfg(all(
feature = "Win32_Graphics_Direct3D",
feature = "Win32_Graphics_Dxgi_Common"
))]
pub GetDesc:
unsafe extern "system" fn(*mut core::ffi::c_void, *mut D3D11_SHADER_RESOURCE_VIEW_DESC),
#[cfg(not(all(
feature = "Win32_Graphics_Direct3D",
feature = "Win32_Graphics_Dxgi_Common"
)))]
GetDesc: usize,
}
#[cfg(all(
feature = "Win32_Graphics_Direct3D",
feature = "Win32_Graphics_Dxgi_Common"
))]
pub trait ID3D11ShaderResourceView_Impl: ID3D11View_Impl {
fn GetDesc(&self, pdesc: *mut D3D11_SHADER_RESOURCE_VIEW_DESC);
}
#[cfg(all(
feature = "Win32_Graphics_Direct3D",
feature = "Win32_Graphics_Dxgi_Common"
))]
impl ID3D11ShaderResourceView_Vtbl {
pub const fn new<Identity: ID3D11ShaderResourceView_Impl, const OFFSET: isize>() -> Self {
unsafe extern "system" fn GetDesc<
Identity: ID3D11ShaderResourceView_Impl,
const OFFSET: isize,
>(
this: *mut core::ffi::c_void,
pdesc: *mut D3D11_SHADER_RESOURCE_VIEW_DESC,
) {
unsafe {
let this: &Identity =
&*((this as *const *const ()).offset(OFFSET) as *const Identity);
ID3D11ShaderResourceView_Impl::GetDesc(this, core::mem::transmute_copy(&pdesc))
}
}
Self {
base__: ID3D11View_Vtbl::new::<Identity, OFFSET>(),
GetDesc: GetDesc::<Identity, OFFSET>,
}
}
pub fn matches(iid: &windows_core::GUID) -> bool {
iid == &<ID3D11ShaderResourceView as windows_core::Interface>::IID
|| iid == &<ID3D11DeviceChild as windows_core::Interface>::IID
|| iid == &<ID3D11View as windows_core::Interface>::IID
}
}
#[cfg(all(
feature = "Win32_Graphics_Direct3D",
feature = "Win32_Graphics_Dxgi_Common"
))]
impl windows_core::RuntimeName for ID3D11ShaderResourceView {}
#[cfg(all(
feature = "Win32_Graphics_Direct3D",
feature = "Win32_Graphics_Dxgi_Common"
))]
unsafe impl Send for ID3D11ShaderResourceView {}
#[cfg(all(
feature = "Win32_Graphics_Direct3D",
feature = "Win32_Graphics_Dxgi_Common"
))]
unsafe impl Sync for ID3D11ShaderResourceView {}
windows_core::imp::define_interface!(
ID3D11ShaderResourceView1,
ID3D11ShaderResourceView1_Vtbl,
0x91308b87_9040_411d_8c67_c39253ce3802
);
impl core::ops::Deref for ID3D11ShaderResourceView1 {
type Target = ID3D11ShaderResourceView;
fn deref(&self) -> &Self::Target {
unsafe { core::mem::transmute(self) }
}
}
windows_core::imp::interface_hierarchy!(
ID3D11ShaderResourceView1,
windows_core::IUnknown,
ID3D11DeviceChild,
ID3D11View,
ID3D11ShaderResourceView
);
impl ID3D11ShaderResourceView1 {
#[cfg(all(
feature = "Win32_Graphics_Direct3D",
feature = "Win32_Graphics_Dxgi_Common"
))]
pub unsafe fn GetDesc1(&self, pdesc1: *mut D3D11_SHADER_RESOURCE_VIEW_DESC1) {
unsafe {
(windows_core::Interface::vtable(self).GetDesc1)(
windows_core::Interface::as_raw(self),
core::mem::transmute(pdesc1),
)
}
}
}
#[repr(C)]
pub struct ID3D11ShaderResourceView1_Vtbl {
pub base__: ID3D11ShaderResourceView_Vtbl,
#[cfg(all(
feature = "Win32_Graphics_Direct3D",
feature = "Win32_Graphics_Dxgi_Common"
))]
pub GetDesc1:
unsafe extern "system" fn(*mut core::ffi::c_void, *mut D3D11_SHADER_RESOURCE_VIEW_DESC1),
#[cfg(not(all(
feature = "Win32_Graphics_Direct3D",
feature = "Win32_Graphics_Dxgi_Common"
)))]
GetDesc1: usize,
}
#[cfg(all(
feature = "Win32_Graphics_Direct3D",
feature = "Win32_Graphics_Dxgi_Common"
))]
pub trait ID3D11ShaderResourceView1_Impl: ID3D11ShaderResourceView_Impl {
fn GetDesc1(&self, pdesc1: *mut D3D11_SHADER_RESOURCE_VIEW_DESC1);
}
#[cfg(all(
feature = "Win32_Graphics_Direct3D",
feature = "Win32_Graphics_Dxgi_Common"
))]
impl ID3D11ShaderResourceView1_Vtbl {
pub const fn new<Identity: ID3D11ShaderResourceView1_Impl, const OFFSET: isize>() -> Self {
unsafe extern "system" fn GetDesc1<
Identity: ID3D11ShaderResourceView1_Impl,
const OFFSET: isize,
>(
this: *mut core::ffi::c_void,
pdesc1: *mut D3D11_SHADER_RESOURCE_VIEW_DESC1,
) {
unsafe {
let this: &Identity =
&*((this as *const *const ()).offset(OFFSET) as *const Identity);
ID3D11ShaderResourceView1_Impl::GetDesc1(this, core::mem::transmute_copy(&pdesc1))
}
}
Self {
base__: ID3D11ShaderResourceView_Vtbl::new::<Identity, OFFSET>(),
GetDesc1: GetDesc1::<Identity, OFFSET>,
}
}
pub fn matches(iid: &windows_core::GUID) -> bool {
iid == &<ID3D11ShaderResourceView1 as windows_core::Interface>::IID
|| iid == &<ID3D11DeviceChild as windows_core::Interface>::IID
|| iid == &<ID3D11View as windows_core::Interface>::IID
|| iid == &<ID3D11ShaderResourceView as windows_core::Interface>::IID
}
}
#[cfg(all(
feature = "Win32_Graphics_Direct3D",
feature = "Win32_Graphics_Dxgi_Common"
))]
impl windows_core::RuntimeName for ID3D11ShaderResourceView1 {}
#[cfg(all(
feature = "Win32_Graphics_Direct3D",
feature = "Win32_Graphics_Dxgi_Common"
))]
unsafe impl Send for ID3D11ShaderResourceView1 {}
#[cfg(all(
feature = "Win32_Graphics_Direct3D",
feature = "Win32_Graphics_Dxgi_Common"
))]
unsafe impl Sync for ID3D11ShaderResourceView1 {}
windows_core::imp::define_interface!(
ID3D11ShaderTrace,
ID3D11ShaderTrace_Vtbl,
0x36b013e6_2811_4845_baa7_d623fe0df104
);
windows_core::imp::interface_hierarchy!(ID3D11ShaderTrace, windows_core::IUnknown);
impl ID3D11ShaderTrace {
pub unsafe fn TraceReady(&self, ptestcount: Option<*mut u64>) -> windows_core::Result<()> {
unsafe {
(windows_core::Interface::vtable(self).TraceReady)(
windows_core::Interface::as_raw(self),
core::mem::transmute(ptestcount.unwrap_or(core::mem::zeroed())),
)
.ok()
}
}
pub unsafe fn ResetTrace(&self) {
unsafe {
(windows_core::Interface::vtable(self).ResetTrace)(windows_core::Interface::as_raw(
self,
))
}
}
pub unsafe fn GetTraceStats(
&self,
ptracestats: *mut D3D11_TRACE_STATS,
) -> windows_core::Result<()> {
unsafe {
(windows_core::Interface::vtable(self).GetTraceStats)(
windows_core::Interface::as_raw(self),
core::mem::transmute(ptracestats),
)
.ok()
}
}
pub unsafe fn PSSelectStamp(&self, stampindex: u32) -> windows_core::Result<()> {
unsafe {
(windows_core::Interface::vtable(self).PSSelectStamp)(
windows_core::Interface::as_raw(self),
stampindex,
)
.ok()
}
}
pub unsafe fn GetInitialRegisterContents(
&self,
pregister: *const D3D11_TRACE_REGISTER,
pvalue: *mut D3D11_TRACE_VALUE,
) -> windows_core::Result<()> {
unsafe {
(windows_core::Interface::vtable(self).GetInitialRegisterContents)(
windows_core::Interface::as_raw(self),
pregister,
core::mem::transmute(pvalue),
)
.ok()
}
}
pub unsafe fn GetStep(
&self,
stepindex: u32,
ptracestep: *mut D3D11_TRACE_STEP,
) -> windows_core::Result<()> {
unsafe {
(windows_core::Interface::vtable(self).GetStep)(
windows_core::Interface::as_raw(self),
stepindex,
core::mem::transmute(ptracestep),
)
.ok()
}
}
pub unsafe fn GetWrittenRegister(
&self,
stepindex: u32,
writtenregisterindex: u32,
pregister: *mut D3D11_TRACE_REGISTER,
pvalue: *mut D3D11_TRACE_VALUE,
) -> windows_core::Result<()> {
unsafe {
(windows_core::Interface::vtable(self).GetWrittenRegister)(
windows_core::Interface::as_raw(self),
stepindex,
writtenregisterindex,
core::mem::transmute(pregister),
core::mem::transmute(pvalue),
)
.ok()
}
}
pub unsafe fn GetReadRegister(
&self,
stepindex: u32,
readregisterindex: u32,
pregister: *mut D3D11_TRACE_REGISTER,
pvalue: *mut D3D11_TRACE_VALUE,
) -> windows_core::Result<()> {
unsafe {
(windows_core::Interface::vtable(self).GetReadRegister)(
windows_core::Interface::as_raw(self),
stepindex,
readregisterindex,
core::mem::transmute(pregister),
core::mem::transmute(pvalue),
)
.ok()
}
}
}
#[repr(C)]
pub struct ID3D11ShaderTrace_Vtbl {
pub base__: windows_core::IUnknown_Vtbl,
pub TraceReady:
unsafe extern "system" fn(*mut core::ffi::c_void, *mut u64) -> windows_core::HRESULT,
pub ResetTrace: unsafe extern "system" fn(*mut core::ffi::c_void),
pub GetTraceStats: unsafe extern "system" fn(
*mut core::ffi::c_void,
*mut D3D11_TRACE_STATS,
) -> windows_core::HRESULT,
pub PSSelectStamp:
unsafe extern "system" fn(*mut core::ffi::c_void, u32) -> windows_core::HRESULT,
pub GetInitialRegisterContents: unsafe extern "system" fn(
*mut core::ffi::c_void,
*const D3D11_TRACE_REGISTER,
*mut D3D11_TRACE_VALUE,
) -> windows_core::HRESULT,
pub GetStep: unsafe extern "system" fn(
*mut core::ffi::c_void,
u32,
*mut D3D11_TRACE_STEP,
) -> windows_core::HRESULT,
pub GetWrittenRegister: unsafe extern "system" fn(
*mut core::ffi::c_void,
u32,
u32,
*mut D3D11_TRACE_REGISTER,
*mut D3D11_TRACE_VALUE,
) -> windows_core::HRESULT,
pub GetReadRegister: unsafe extern "system" fn(
*mut core::ffi::c_void,
u32,
u32,
*mut D3D11_TRACE_REGISTER,
*mut D3D11_TRACE_VALUE,
) -> windows_core::HRESULT,
}
pub trait ID3D11ShaderTrace_Impl: windows_core::IUnknownImpl {
fn TraceReady(&self, ptestcount: *mut u64) -> windows_core::Result<()>;
fn ResetTrace(&self);
fn GetTraceStats(&self, ptracestats: *mut D3D11_TRACE_STATS) -> windows_core::Result<()>;
fn PSSelectStamp(&self, stampindex: u32) -> windows_core::Result<()>;
fn GetInitialRegisterContents(
&self,
pregister: *const D3D11_TRACE_REGISTER,
pvalue: *mut D3D11_TRACE_VALUE,
) -> windows_core::Result<()>;
fn GetStep(
&self,
stepindex: u32,
ptracestep: *mut D3D11_TRACE_STEP,
) -> windows_core::Result<()>;
fn GetWrittenRegister(
&self,
stepindex: u32,
writtenregisterindex: u32,
pregister: *mut D3D11_TRACE_REGISTER,
pvalue: *mut D3D11_TRACE_VALUE,
) -> windows_core::Result<()>;
fn GetReadRegister(
&self,
stepindex: u32,
readregisterindex: u32,
pregister: *mut D3D11_TRACE_REGISTER,
pvalue: *mut D3D11_TRACE_VALUE,
) -> windows_core::Result<()>;
}
impl ID3D11ShaderTrace_Vtbl {
pub const fn new<Identity: ID3D11ShaderTrace_Impl, const OFFSET: isize>() -> Self {
unsafe extern "system" fn TraceReady<
Identity: ID3D11ShaderTrace_Impl,
const OFFSET: isize,
>(
this: *mut core::ffi::c_void,
ptestcount: *mut u64,
) -> windows_core::HRESULT {
unsafe {
let this: &Identity =
&*((this as *const *const ()).offset(OFFSET) as *const Identity);
ID3D11ShaderTrace_Impl::TraceReady(this, core::mem::transmute_copy(&ptestcount))
.into()
}
}
unsafe extern "system" fn ResetTrace<
Identity: ID3D11ShaderTrace_Impl,
const OFFSET: isize,
>(
this: *mut core::ffi::c_void,
) {
unsafe {
let this: &Identity =
&*((this as *const *const ()).offset(OFFSET) as *const Identity);
ID3D11ShaderTrace_Impl::ResetTrace(this)
}
}
unsafe extern "system" fn GetTraceStats<
Identity: ID3D11ShaderTrace_Impl,
const OFFSET: isize,
>(
this: *mut core::ffi::c_void,
ptracestats: *mut D3D11_TRACE_STATS,
) -> windows_core::HRESULT {
unsafe {
let this: &Identity =
&*((this as *const *const ()).offset(OFFSET) as *const Identity);
ID3D11ShaderTrace_Impl::GetTraceStats(this, core::mem::transmute_copy(&ptracestats))
.into()
}
}
unsafe extern "system" fn PSSelectStamp<
Identity: ID3D11ShaderTrace_Impl,
const OFFSET: isize,
>(
this: *mut core::ffi::c_void,
stampindex: u32,
) -> windows_core::HRESULT {
unsafe {
let this: &Identity =
&*((this as *const *const ()).offset(OFFSET) as *const Identity);
ID3D11ShaderTrace_Impl::PSSelectStamp(this, core::mem::transmute_copy(&stampindex))
.into()
}
}
unsafe extern "system" fn GetInitialRegisterContents<
Identity: ID3D11ShaderTrace_Impl,
const OFFSET: isize,
>(
this: *mut core::ffi::c_void,
pregister: *const D3D11_TRACE_REGISTER,
pvalue: *mut D3D11_TRACE_VALUE,
) -> windows_core::HRESULT {
unsafe {
let this: &Identity =
&*((this as *const *const ()).offset(OFFSET) as *const Identity);
ID3D11ShaderTrace_Impl::GetInitialRegisterContents(
this,
core::mem::transmute_copy(&pregister),
core::mem::transmute_copy(&pvalue),
)
.into()
}
}
unsafe extern "system" fn GetStep<Identity: ID3D11ShaderTrace_Impl, const OFFSET: isize>(
this: *mut core::ffi::c_void,
stepindex: u32,
ptracestep: *mut D3D11_TRACE_STEP,
) -> windows_core::HRESULT {
unsafe {
let this: &Identity =
&*((this as *const *const ()).offset(OFFSET) as *const Identity);
ID3D11ShaderTrace_Impl::GetStep(
this,
core::mem::transmute_copy(&stepindex),
core::mem::transmute_copy(&ptracestep),
)
.into()
}
}
unsafe extern "system" fn GetWrittenRegister<
Identity: ID3D11ShaderTrace_Impl,
const OFFSET: isize,
>(
this: *mut core::ffi::c_void,
stepindex: u32,
writtenregisterindex: u32,
pregister: *mut D3D11_TRACE_REGISTER,
pvalue: *mut D3D11_TRACE_VALUE,
) -> windows_core::HRESULT {
unsafe {
let this: &Identity =
&*((this as *const *const ()).offset(OFFSET) as *const Identity);
ID3D11ShaderTrace_Impl::GetWrittenRegister(
this,
core::mem::transmute_copy(&stepindex),
core::mem::transmute_copy(&writtenregisterindex),
core::mem::transmute_copy(&pregister),
core::mem::transmute_copy(&pvalue),
)
.into()
}
}
unsafe extern "system" fn GetReadRegister<
Identity: ID3D11ShaderTrace_Impl,
const OFFSET: isize,
>(
this: *mut core::ffi::c_void,
stepindex: u32,
readregisterindex: u32,
pregister: *mut D3D11_TRACE_REGISTER,
pvalue: *mut D3D11_TRACE_VALUE,
) -> windows_core::HRESULT {
unsafe {
let this: &Identity =
&*((this as *const *const ()).offset(OFFSET) as *const Identity);
ID3D11ShaderTrace_Impl::GetReadRegister(
this,
core::mem::transmute_copy(&stepindex),
core::mem::transmute_copy(&readregisterindex),
core::mem::transmute_copy(&pregister),
core::mem::transmute_copy(&pvalue),
)
.into()
}
}
Self {
base__: windows_core::IUnknown_Vtbl::new::<Identity, OFFSET>(),
TraceReady: TraceReady::<Identity, OFFSET>,
ResetTrace: ResetTrace::<Identity, OFFSET>,
GetTraceStats: GetTraceStats::<Identity, OFFSET>,
PSSelectStamp: PSSelectStamp::<Identity, OFFSET>,
GetInitialRegisterContents: GetInitialRegisterContents::<Identity, OFFSET>,
GetStep: GetStep::<Identity, OFFSET>,
GetWrittenRegister: GetWrittenRegister::<Identity, OFFSET>,
GetReadRegister: GetReadRegister::<Identity, OFFSET>,
}
}
pub fn matches(iid: &windows_core::GUID) -> bool {
iid == &<ID3D11ShaderTrace as windows_core::Interface>::IID
}
}
impl windows_core::RuntimeName for ID3D11ShaderTrace {}
unsafe impl Send for ID3D11ShaderTrace {}
unsafe impl Sync for ID3D11ShaderTrace {}
windows_core::imp::define_interface!(
ID3D11ShaderTraceFactory,
ID3D11ShaderTraceFactory_Vtbl,
0x1fbad429_66ab_41cc_9617_667ac10e4459
);
windows_core::imp::interface_hierarchy!(ID3D11ShaderTraceFactory, windows_core::IUnknown);
impl ID3D11ShaderTraceFactory {
pub unsafe fn CreateShaderTrace<P0>(
&self,
pshader: P0,
ptracedesc: *const D3D11_SHADER_TRACE_DESC,
) -> windows_core::Result<ID3D11ShaderTrace>
where
P0: windows_core::Param<windows_core::IUnknown>,
{
unsafe {
let mut result__ = core::mem::zeroed();
(windows_core::Interface::vtable(self).CreateShaderTrace)(
windows_core::Interface::as_raw(self),
pshader.param().abi(),
ptracedesc,
&mut result__,
)
.and_then(|| windows_core::Type::from_abi(result__))
}
}
}
#[repr(C)]
pub struct ID3D11ShaderTraceFactory_Vtbl {
pub base__: windows_core::IUnknown_Vtbl,
pub CreateShaderTrace: unsafe extern "system" fn(
*mut core::ffi::c_void,
*mut core::ffi::c_void,
*const D3D11_SHADER_TRACE_DESC,
*mut *mut core::ffi::c_void,
) -> windows_core::HRESULT,
}
pub trait ID3D11ShaderTraceFactory_Impl: windows_core::IUnknownImpl {
fn CreateShaderTrace(
&self,
pshader: windows_core::Ref<'_, windows_core::IUnknown>,
ptracedesc: *const D3D11_SHADER_TRACE_DESC,
) -> windows_core::Result<ID3D11ShaderTrace>;
}
impl ID3D11ShaderTraceFactory_Vtbl {
pub const fn new<Identity: ID3D11ShaderTraceFactory_Impl, const OFFSET: isize>() -> Self {
unsafe extern "system" fn CreateShaderTrace<
Identity: ID3D11ShaderTraceFactory_Impl,
const OFFSET: isize,
>(
this: *mut core::ffi::c_void,
pshader: *mut core::ffi::c_void,
ptracedesc: *const D3D11_SHADER_TRACE_DESC,
ppshadertrace: *mut *mut core::ffi::c_void,
) -> windows_core::HRESULT {
unsafe {
let this: &Identity =
&*((this as *const *const ()).offset(OFFSET) as *const Identity);
match ID3D11ShaderTraceFactory_Impl::CreateShaderTrace(
this,
core::mem::transmute_copy(&pshader),
core::mem::transmute_copy(&ptracedesc),
) {
Ok(ok__) => {
ppshadertrace.write(core::mem::transmute(ok__));
windows_core::HRESULT(0)
}
Err(err) => err.into(),
}
}
}
Self {
base__: windows_core::IUnknown_Vtbl::new::<Identity, OFFSET>(),
CreateShaderTrace: CreateShaderTrace::<Identity, OFFSET>,
}
}
pub fn matches(iid: &windows_core::GUID) -> bool {
iid == &<ID3D11ShaderTraceFactory as windows_core::Interface>::IID
}
}
impl windows_core::RuntimeName for ID3D11ShaderTraceFactory {}
unsafe impl Send for ID3D11ShaderTraceFactory {}
unsafe impl Sync for ID3D11ShaderTraceFactory {}
windows_core::imp::define_interface!(
ID3D11SwitchToRef,
ID3D11SwitchToRef_Vtbl,
0x1ef337e3_58e7_4f83_a692_db221f5ed47e
);
windows_core::imp::interface_hierarchy!(ID3D11SwitchToRef, windows_core::IUnknown);
impl ID3D11SwitchToRef {
pub unsafe fn SetUseRef(&self, useref: bool) -> crate::Foundation::BOOL {
unsafe {
(windows_core::Interface::vtable(self).SetUseRef)(
windows_core::Interface::as_raw(self),
useref.into(),
)
}
}
pub unsafe fn GetUseRef(&self) -> crate::Foundation::BOOL {
unsafe {
(windows_core::Interface::vtable(self).GetUseRef)(windows_core::Interface::as_raw(self))
}
}
}
#[repr(C)]
pub struct ID3D11SwitchToRef_Vtbl {
pub base__: windows_core::IUnknown_Vtbl,
pub SetUseRef: unsafe extern "system" fn(
*mut core::ffi::c_void,
crate::Foundation::BOOL,
) -> crate::Foundation::BOOL,
pub GetUseRef:
unsafe extern "system" fn(*mut core::ffi::c_void) -> crate::Foundation::BOOL,
}
pub trait ID3D11SwitchToRef_Impl: windows_core::IUnknownImpl {
fn SetUseRef(&self, useref: crate::Foundation::BOOL) -> crate::Foundation::BOOL;
fn GetUseRef(&self) -> crate::Foundation::BOOL;
}
impl ID3D11SwitchToRef_Vtbl {
pub const fn new<Identity: ID3D11SwitchToRef_Impl, const OFFSET: isize>() -> Self {
unsafe extern "system" fn SetUseRef<
Identity: ID3D11SwitchToRef_Impl,
const OFFSET: isize,
>(
this: *mut core::ffi::c_void,
useref: crate::Foundation::BOOL,
) -> crate::Foundation::BOOL {
unsafe {
let this: &Identity =
&*((this as *const *const ()).offset(OFFSET) as *const Identity);
ID3D11SwitchToRef_Impl::SetUseRef(this, core::mem::transmute_copy(&useref))
}
}
unsafe extern "system" fn GetUseRef<
Identity: ID3D11SwitchToRef_Impl,
const OFFSET: isize,
>(
this: *mut core::ffi::c_void,
) -> crate::Foundation::BOOL {
unsafe {
let this: &Identity =
&*((this as *const *const ()).offset(OFFSET) as *const Identity);
ID3D11SwitchToRef_Impl::GetUseRef(this)
}
}
Self {
base__: windows_core::IUnknown_Vtbl::new::<Identity, OFFSET>(),
SetUseRef: SetUseRef::<Identity, OFFSET>,
GetUseRef: GetUseRef::<Identity, OFFSET>,
}
}
pub fn matches(iid: &windows_core::GUID) -> bool {
iid == &<ID3D11SwitchToRef as windows_core::Interface>::IID
}
}
impl windows_core::RuntimeName for ID3D11SwitchToRef {}
unsafe impl Send for ID3D11SwitchToRef {}
unsafe impl Sync for ID3D11SwitchToRef {}
windows_core::imp::define_interface!(
ID3D11Texture1D,
ID3D11Texture1D_Vtbl,
0xf8fb5c27_c6b3_4f75_a4c8_439af2ef564c
);
impl core::ops::Deref for ID3D11Texture1D {
type Target = ID3D11Resource;
fn deref(&self) -> &Self::Target {
unsafe { core::mem::transmute(self) }
}
}
windows_core::imp::interface_hierarchy!(
ID3D11Texture1D,
windows_core::IUnknown,
ID3D11DeviceChild,
ID3D11Resource
);
impl ID3D11Texture1D {
#[cfg(feature = "Win32_Graphics_Dxgi_Common")]
pub unsafe fn GetDesc(&self, pdesc: *mut D3D11_TEXTURE1D_DESC) {
unsafe {
(windows_core::Interface::vtable(self).GetDesc)(
windows_core::Interface::as_raw(self),
core::mem::transmute(pdesc),
)
}
}
}
#[repr(C)]
pub struct ID3D11Texture1D_Vtbl {
pub base__: ID3D11Resource_Vtbl,
#[cfg(feature = "Win32_Graphics_Dxgi_Common")]
pub GetDesc: unsafe extern "system" fn(*mut core::ffi::c_void, *mut D3D11_TEXTURE1D_DESC),
#[cfg(not(feature = "Win32_Graphics_Dxgi_Common"))]
GetDesc: usize,
}
#[cfg(feature = "Win32_Graphics_Dxgi_Common")]
pub trait ID3D11Texture1D_Impl: ID3D11Resource_Impl {
fn GetDesc(&self, pdesc: *mut D3D11_TEXTURE1D_DESC);
}
#[cfg(feature = "Win32_Graphics_Dxgi_Common")]
impl ID3D11Texture1D_Vtbl {
pub const fn new<Identity: ID3D11Texture1D_Impl, const OFFSET: isize>() -> Self {
unsafe extern "system" fn GetDesc<Identity: ID3D11Texture1D_Impl, const OFFSET: isize>(
this: *mut core::ffi::c_void,
pdesc: *mut D3D11_TEXTURE1D_DESC,
) {
unsafe {
let this: &Identity =
&*((this as *const *const ()).offset(OFFSET) as *const Identity);
ID3D11Texture1D_Impl::GetDesc(this, core::mem::transmute_copy(&pdesc))
}
}
Self {
base__: ID3D11Resource_Vtbl::new::<Identity, OFFSET>(),
GetDesc: GetDesc::<Identity, OFFSET>,
}
}
pub fn matches(iid: &windows_core::GUID) -> bool {
iid == &<ID3D11Texture1D as windows_core::Interface>::IID
|| iid == &<ID3D11DeviceChild as windows_core::Interface>::IID
|| iid == &<ID3D11Resource as windows_core::Interface>::IID
}
}
#[cfg(feature = "Win32_Graphics_Dxgi_Common")]
impl windows_core::RuntimeName for ID3D11Texture1D {}
#[cfg(feature = "Win32_Graphics_Dxgi_Common")]
unsafe impl Send for ID3D11Texture1D {}
#[cfg(feature = "Win32_Graphics_Dxgi_Common")]
unsafe impl Sync for ID3D11Texture1D {}
windows_core::imp::define_interface!(
ID3D11Texture2D,
ID3D11Texture2D_Vtbl,
0x6f15aaf2_d208_4e89_9ab4_489535d34f9c
);
impl core::ops::Deref for ID3D11Texture2D {
type Target = ID3D11Resource;
fn deref(&self) -> &Self::Target {
unsafe { core::mem::transmute(self) }
}
}
windows_core::imp::interface_hierarchy!(
ID3D11Texture2D,
windows_core::IUnknown,
ID3D11DeviceChild,
ID3D11Resource
);
impl ID3D11Texture2D {
#[cfg(feature = "Win32_Graphics_Dxgi_Common")]
pub unsafe fn GetDesc(&self, pdesc: *mut D3D11_TEXTURE2D_DESC) {
unsafe {
(windows_core::Interface::vtable(self).GetDesc)(
windows_core::Interface::as_raw(self),
core::mem::transmute(pdesc),
)
}
}
}
#[repr(C)]
pub struct ID3D11Texture2D_Vtbl {
pub base__: ID3D11Resource_Vtbl,
#[cfg(feature = "Win32_Graphics_Dxgi_Common")]
pub GetDesc: unsafe extern "system" fn(*mut core::ffi::c_void, *mut D3D11_TEXTURE2D_DESC),
#[cfg(not(feature = "Win32_Graphics_Dxgi_Common"))]
GetDesc: usize,
}
#[cfg(feature = "Win32_Graphics_Dxgi_Common")]
pub trait ID3D11Texture2D_Impl: ID3D11Resource_Impl {
fn GetDesc(&self, pdesc: *mut D3D11_TEXTURE2D_DESC);
}
#[cfg(feature = "Win32_Graphics_Dxgi_Common")]
impl ID3D11Texture2D_Vtbl {
pub const fn new<Identity: ID3D11Texture2D_Impl, const OFFSET: isize>() -> Self {
unsafe extern "system" fn GetDesc<Identity: ID3D11Texture2D_Impl, const OFFSET: isize>(
this: *mut core::ffi::c_void,
pdesc: *mut D3D11_TEXTURE2D_DESC,
) {
unsafe {
let this: &Identity =
&*((this as *const *const ()).offset(OFFSET) as *const Identity);
ID3D11Texture2D_Impl::GetDesc(this, core::mem::transmute_copy(&pdesc))
}
}
Self {
base__: ID3D11Resource_Vtbl::new::<Identity, OFFSET>(),
GetDesc: GetDesc::<Identity, OFFSET>,
}
}
pub fn matches(iid: &windows_core::GUID) -> bool {
iid == &<ID3D11Texture2D as windows_core::Interface>::IID
|| iid == &<ID3D11DeviceChild as windows_core::Interface>::IID
|| iid == &<ID3D11Resource as windows_core::Interface>::IID
}
}
#[cfg(feature = "Win32_Graphics_Dxgi_Common")]
impl windows_core::RuntimeName for ID3D11Texture2D {}
#[cfg(feature = "Win32_Graphics_Dxgi_Common")]
unsafe impl Send for ID3D11Texture2D {}
#[cfg(feature = "Win32_Graphics_Dxgi_Common")]
unsafe impl Sync for ID3D11Texture2D {}
windows_core::imp::define_interface!(
ID3D11Texture2D1,
ID3D11Texture2D1_Vtbl,
0x51218251_1e33_4617_9ccb_4d3a4367e7bb
);
impl core::ops::Deref for ID3D11Texture2D1 {
type Target = ID3D11Texture2D;
fn deref(&self) -> &Self::Target {
unsafe { core::mem::transmute(self) }
}
}
windows_core::imp::interface_hierarchy!(
ID3D11Texture2D1,
windows_core::IUnknown,
ID3D11DeviceChild,
ID3D11Resource,
ID3D11Texture2D
);
impl ID3D11Texture2D1 {
#[cfg(feature = "Win32_Graphics_Dxgi_Common")]
pub unsafe fn GetDesc1(&self, pdesc: *mut D3D11_TEXTURE2D_DESC1) {
unsafe {
(windows_core::Interface::vtable(self).GetDesc1)(
windows_core::Interface::as_raw(self),
core::mem::transmute(pdesc),
)
}
}
}
#[repr(C)]
pub struct ID3D11Texture2D1_Vtbl {
pub base__: ID3D11Texture2D_Vtbl,
#[cfg(feature = "Win32_Graphics_Dxgi_Common")]
pub GetDesc1: unsafe extern "system" fn(*mut core::ffi::c_void, *mut D3D11_TEXTURE2D_DESC1),
#[cfg(not(feature = "Win32_Graphics_Dxgi_Common"))]
GetDesc1: usize,
}
#[cfg(feature = "Win32_Graphics_Dxgi_Common")]
pub trait ID3D11Texture2D1_Impl: ID3D11Texture2D_Impl {
fn GetDesc1(&self, pdesc: *mut D3D11_TEXTURE2D_DESC1);
}
#[cfg(feature = "Win32_Graphics_Dxgi_Common")]
impl ID3D11Texture2D1_Vtbl {
pub const fn new<Identity: ID3D11Texture2D1_Impl, const OFFSET: isize>() -> Self {
unsafe extern "system" fn GetDesc1<Identity: ID3D11Texture2D1_Impl, const OFFSET: isize>(
this: *mut core::ffi::c_void,
pdesc: *mut D3D11_TEXTURE2D_DESC1,
) {
unsafe {
let this: &Identity =
&*((this as *const *const ()).offset(OFFSET) as *const Identity);
ID3D11Texture2D1_Impl::GetDesc1(this, core::mem::transmute_copy(&pdesc))
}
}
Self {
base__: ID3D11Texture2D_Vtbl::new::<Identity, OFFSET>(),
GetDesc1: GetDesc1::<Identity, OFFSET>,
}
}
pub fn matches(iid: &windows_core::GUID) -> bool {
iid == &<ID3D11Texture2D1 as windows_core::Interface>::IID
|| iid == &<ID3D11DeviceChild as windows_core::Interface>::IID
|| iid == &<ID3D11Resource as windows_core::Interface>::IID
|| iid == &<ID3D11Texture2D as windows_core::Interface>::IID
}
}
#[cfg(feature = "Win32_Graphics_Dxgi_Common")]
impl windows_core::RuntimeName for ID3D11Texture2D1 {}
#[cfg(feature = "Win32_Graphics_Dxgi_Common")]
unsafe impl Send for ID3D11Texture2D1 {}
#[cfg(feature = "Win32_Graphics_Dxgi_Common")]
unsafe impl Sync for ID3D11Texture2D1 {}
windows_core::imp::define_interface!(
ID3D11Texture3D,
ID3D11Texture3D_Vtbl,
0x037e866e_f56d_4357_a8af_9dabbe6e250e
);
impl core::ops::Deref for ID3D11Texture3D {
type Target = ID3D11Resource;
fn deref(&self) -> &Self::Target {
unsafe { core::mem::transmute(self) }
}
}
windows_core::imp::interface_hierarchy!(
ID3D11Texture3D,
windows_core::IUnknown,
ID3D11DeviceChild,
ID3D11Resource
);
impl ID3D11Texture3D {
#[cfg(feature = "Win32_Graphics_Dxgi_Common")]
pub unsafe fn GetDesc(&self, pdesc: *mut D3D11_TEXTURE3D_DESC) {
unsafe {
(windows_core::Interface::vtable(self).GetDesc)(
windows_core::Interface::as_raw(self),
core::mem::transmute(pdesc),
)
}
}
}
#[repr(C)]
pub struct ID3D11Texture3D_Vtbl {
pub base__: ID3D11Resource_Vtbl,
#[cfg(feature = "Win32_Graphics_Dxgi_Common")]
pub GetDesc: unsafe extern "system" fn(*mut core::ffi::c_void, *mut D3D11_TEXTURE3D_DESC),
#[cfg(not(feature = "Win32_Graphics_Dxgi_Common"))]
GetDesc: usize,
}
#[cfg(feature = "Win32_Graphics_Dxgi_Common")]
pub trait ID3D11Texture3D_Impl: ID3D11Resource_Impl {
fn GetDesc(&self, pdesc: *mut D3D11_TEXTURE3D_DESC);
}
#[cfg(feature = "Win32_Graphics_Dxgi_Common")]
impl ID3D11Texture3D_Vtbl {
pub const fn new<Identity: ID3D11Texture3D_Impl, const OFFSET: isize>() -> Self {
unsafe extern "system" fn GetDesc<Identity: ID3D11Texture3D_Impl, const OFFSET: isize>(
this: *mut core::ffi::c_void,
pdesc: *mut D3D11_TEXTURE3D_DESC,
) {
unsafe {
let this: &Identity =
&*((this as *const *const ()).offset(OFFSET) as *const Identity);
ID3D11Texture3D_Impl::GetDesc(this, core::mem::transmute_copy(&pdesc))
}
}
Self {
base__: ID3D11Resource_Vtbl::new::<Identity, OFFSET>(),
GetDesc: GetDesc::<Identity, OFFSET>,
}
}
pub fn matches(iid: &windows_core::GUID) -> bool {
iid == &<ID3D11Texture3D as windows_core::Interface>::IID
|| iid == &<ID3D11DeviceChild as windows_core::Interface>::IID
|| iid == &<ID3D11Resource as windows_core::Interface>::IID
}
}
#[cfg(feature = "Win32_Graphics_Dxgi_Common")]
impl windows_core::RuntimeName for ID3D11Texture3D {}
#[cfg(feature = "Win32_Graphics_Dxgi_Common")]
unsafe impl Send for ID3D11Texture3D {}
#[cfg(feature = "Win32_Graphics_Dxgi_Common")]
unsafe impl Sync for ID3D11Texture3D {}
windows_core::imp::define_interface!(
ID3D11Texture3D1,
ID3D11Texture3D1_Vtbl,
0x0c711683_2853_4846_9bb0_f3e60639e46a
);
impl core::ops::Deref for ID3D11Texture3D1 {
type Target = ID3D11Texture3D;
fn deref(&self) -> &Self::Target {
unsafe { core::mem::transmute(self) }
}
}
windows_core::imp::interface_hierarchy!(
ID3D11Texture3D1,
windows_core::IUnknown,
ID3D11DeviceChild,
ID3D11Resource,
ID3D11Texture3D
);
impl ID3D11Texture3D1 {
#[cfg(feature = "Win32_Graphics_Dxgi_Common")]
pub unsafe fn GetDesc1(&self, pdesc: *mut D3D11_TEXTURE3D_DESC1) {
unsafe {
(windows_core::Interface::vtable(self).GetDesc1)(
windows_core::Interface::as_raw(self),
core::mem::transmute(pdesc),
)
}
}
}
#[repr(C)]
pub struct ID3D11Texture3D1_Vtbl {
pub base__: ID3D11Texture3D_Vtbl,
#[cfg(feature = "Win32_Graphics_Dxgi_Common")]
pub GetDesc1: unsafe extern "system" fn(*mut core::ffi::c_void, *mut D3D11_TEXTURE3D_DESC1),
#[cfg(not(feature = "Win32_Graphics_Dxgi_Common"))]
GetDesc1: usize,
}
#[cfg(feature = "Win32_Graphics_Dxgi_Common")]
pub trait ID3D11Texture3D1_Impl: ID3D11Texture3D_Impl {
fn GetDesc1(&self, pdesc: *mut D3D11_TEXTURE3D_DESC1);
}
#[cfg(feature = "Win32_Graphics_Dxgi_Common")]
impl ID3D11Texture3D1_Vtbl {
pub const fn new<Identity: ID3D11Texture3D1_Impl, const OFFSET: isize>() -> Self {
unsafe extern "system" fn GetDesc1<Identity: ID3D11Texture3D1_Impl, const OFFSET: isize>(
this: *mut core::ffi::c_void,
pdesc: *mut D3D11_TEXTURE3D_DESC1,
) {
unsafe {
let this: &Identity =
&*((this as *const *const ()).offset(OFFSET) as *const Identity);
ID3D11Texture3D1_Impl::GetDesc1(this, core::mem::transmute_copy(&pdesc))
}
}
Self {
base__: ID3D11Texture3D_Vtbl::new::<Identity, OFFSET>(),
GetDesc1: GetDesc1::<Identity, OFFSET>,
}
}
pub fn matches(iid: &windows_core::GUID) -> bool {
iid == &<ID3D11Texture3D1 as windows_core::Interface>::IID
|| iid == &<ID3D11DeviceChild as windows_core::Interface>::IID
|| iid == &<ID3D11Resource as windows_core::Interface>::IID
|| iid == &<ID3D11Texture3D as windows_core::Interface>::IID
}
}
#[cfg(feature = "Win32_Graphics_Dxgi_Common")]
impl windows_core::RuntimeName for ID3D11Texture3D1 {}
#[cfg(feature = "Win32_Graphics_Dxgi_Common")]
unsafe impl Send for ID3D11Texture3D1 {}
#[cfg(feature = "Win32_Graphics_Dxgi_Common")]
unsafe impl Sync for ID3D11Texture3D1 {}
windows_core::imp::define_interface!(
ID3D11TracingDevice,
ID3D11TracingDevice_Vtbl,
0x1911c771_1587_413e_a7e0_fb26c3de0268
);
windows_core::imp::interface_hierarchy!(ID3D11TracingDevice, windows_core::IUnknown);
impl ID3D11TracingDevice {
pub unsafe fn SetShaderTrackingOptionsByType(
&self,
resourcetypeflags: u32,
options: u32,
) -> windows_core::Result<()> {
unsafe {
(windows_core::Interface::vtable(self).SetShaderTrackingOptionsByType)(
windows_core::Interface::as_raw(self),
resourcetypeflags,
options,
)
.ok()
}
}
pub unsafe fn SetShaderTrackingOptions<P0>(
&self,
pshader: P0,
options: u32,
) -> windows_core::Result<()>
where
P0: windows_core::Param<windows_core::IUnknown>,
{
unsafe {
(windows_core::Interface::vtable(self).SetShaderTrackingOptions)(
windows_core::Interface::as_raw(self),
pshader.param().abi(),
options,
)
.ok()
}
}
}
#[repr(C)]
pub struct ID3D11TracingDevice_Vtbl {
pub base__: windows_core::IUnknown_Vtbl,
pub SetShaderTrackingOptionsByType:
unsafe extern "system" fn(*mut core::ffi::c_void, u32, u32) -> windows_core::HRESULT,
pub SetShaderTrackingOptions: unsafe extern "system" fn(
*mut core::ffi::c_void,
*mut core::ffi::c_void,
u32,
) -> windows_core::HRESULT,
}
pub trait ID3D11TracingDevice_Impl: windows_core::IUnknownImpl {
fn SetShaderTrackingOptionsByType(
&self,
resourcetypeflags: u32,
options: u32,
) -> windows_core::Result<()>;
fn SetShaderTrackingOptions(
&self,
pshader: windows_core::Ref<'_, windows_core::IUnknown>,
options: u32,
) -> windows_core::Result<()>;
}
impl ID3D11TracingDevice_Vtbl {
pub const fn new<Identity: ID3D11TracingDevice_Impl, const OFFSET: isize>() -> Self {
unsafe extern "system" fn SetShaderTrackingOptionsByType<
Identity: ID3D11TracingDevice_Impl,
const OFFSET: isize,
>(
this: *mut core::ffi::c_void,
resourcetypeflags: u32,
options: u32,
) -> windows_core::HRESULT {
unsafe {
let this: &Identity =
&*((this as *const *const ()).offset(OFFSET) as *const Identity);
ID3D11TracingDevice_Impl::SetShaderTrackingOptionsByType(
this,
core::mem::transmute_copy(&resourcetypeflags),
core::mem::transmute_copy(&options),
)
.into()
}
}
unsafe extern "system" fn SetShaderTrackingOptions<
Identity: ID3D11TracingDevice_Impl,
const OFFSET: isize,
>(
this: *mut core::ffi::c_void,
pshader: *mut core::ffi::c_void,
options: u32,
) -> windows_core::HRESULT {
unsafe {
let this: &Identity =
&*((this as *const *const ()).offset(OFFSET) as *const Identity);
ID3D11TracingDevice_Impl::SetShaderTrackingOptions(
this,
core::mem::transmute_copy(&pshader),
core::mem::transmute_copy(&options),
)
.into()
}
}
Self {
base__: windows_core::IUnknown_Vtbl::new::<Identity, OFFSET>(),
SetShaderTrackingOptionsByType: SetShaderTrackingOptionsByType::<Identity, OFFSET>,
SetShaderTrackingOptions: SetShaderTrackingOptions::<Identity, OFFSET>,
}
}
pub fn matches(iid: &windows_core::GUID) -> bool {
iid == &<ID3D11TracingDevice as windows_core::Interface>::IID
}
}
impl windows_core::RuntimeName for ID3D11TracingDevice {}
unsafe impl Send for ID3D11TracingDevice {}
unsafe impl Sync for ID3D11TracingDevice {}
windows_core::imp::define_interface!(
ID3D11UnorderedAccessView,
ID3D11UnorderedAccessView_Vtbl,
0x28acf509_7f5c_48f6_8611_f316010a6380
);
impl core::ops::Deref for ID3D11UnorderedAccessView {
type Target = ID3D11View;
fn deref(&self) -> &Self::Target {
unsafe { core::mem::transmute(self) }
}
}
windows_core::imp::interface_hierarchy!(
ID3D11UnorderedAccessView,
windows_core::IUnknown,
ID3D11DeviceChild,
ID3D11View
);
impl ID3D11UnorderedAccessView {
#[cfg(feature = "Win32_Graphics_Dxgi_Common")]
pub unsafe fn GetDesc(&self, pdesc: *mut D3D11_UNORDERED_ACCESS_VIEW_DESC) {
unsafe {
(windows_core::Interface::vtable(self).GetDesc)(
windows_core::Interface::as_raw(self),
core::mem::transmute(pdesc),
)
}
}
}
#[repr(C)]
pub struct ID3D11UnorderedAccessView_Vtbl {
pub base__: ID3D11View_Vtbl,
#[cfg(feature = "Win32_Graphics_Dxgi_Common")]
pub GetDesc:
unsafe extern "system" fn(*mut core::ffi::c_void, *mut D3D11_UNORDERED_ACCESS_VIEW_DESC),
#[cfg(not(feature = "Win32_Graphics_Dxgi_Common"))]
GetDesc: usize,
}
#[cfg(feature = "Win32_Graphics_Dxgi_Common")]
pub trait ID3D11UnorderedAccessView_Impl: ID3D11View_Impl {
fn GetDesc(&self, pdesc: *mut D3D11_UNORDERED_ACCESS_VIEW_DESC);
}
#[cfg(feature = "Win32_Graphics_Dxgi_Common")]
impl ID3D11UnorderedAccessView_Vtbl {
pub const fn new<Identity: ID3D11UnorderedAccessView_Impl, const OFFSET: isize>() -> Self {
unsafe extern "system" fn GetDesc<
Identity: ID3D11UnorderedAccessView_Impl,
const OFFSET: isize,
>(
this: *mut core::ffi::c_void,
pdesc: *mut D3D11_UNORDERED_ACCESS_VIEW_DESC,
) {
unsafe {
let this: &Identity =
&*((this as *const *const ()).offset(OFFSET) as *const Identity);
ID3D11UnorderedAccessView_Impl::GetDesc(this, core::mem::transmute_copy(&pdesc))
}
}
Self {
base__: ID3D11View_Vtbl::new::<Identity, OFFSET>(),
GetDesc: GetDesc::<Identity, OFFSET>,
}
}
pub fn matches(iid: &windows_core::GUID) -> bool {
iid == &<ID3D11UnorderedAccessView as windows_core::Interface>::IID
|| iid == &<ID3D11DeviceChild as windows_core::Interface>::IID
|| iid == &<ID3D11View as windows_core::Interface>::IID
}
}
#[cfg(feature = "Win32_Graphics_Dxgi_Common")]
impl windows_core::RuntimeName for ID3D11UnorderedAccessView {}
#[cfg(feature = "Win32_Graphics_Dxgi_Common")]
unsafe impl Send for ID3D11UnorderedAccessView {}
#[cfg(feature = "Win32_Graphics_Dxgi_Common")]
unsafe impl Sync for ID3D11UnorderedAccessView {}
windows_core::imp::define_interface!(
ID3D11UnorderedAccessView1,
ID3D11UnorderedAccessView1_Vtbl,
0x7b3b6153_a886_4544_ab37_6537c8500403
);
impl core::ops::Deref for ID3D11UnorderedAccessView1 {
type Target = ID3D11UnorderedAccessView;
fn deref(&self) -> &Self::Target {
unsafe { core::mem::transmute(self) }
}
}
windows_core::imp::interface_hierarchy!(
ID3D11UnorderedAccessView1,
windows_core::IUnknown,
ID3D11DeviceChild,
ID3D11View,
ID3D11UnorderedAccessView
);
impl ID3D11UnorderedAccessView1 {
#[cfg(feature = "Win32_Graphics_Dxgi_Common")]
pub unsafe fn GetDesc1(&self, pdesc1: *mut D3D11_UNORDERED_ACCESS_VIEW_DESC1) {
unsafe {
(windows_core::Interface::vtable(self).GetDesc1)(
windows_core::Interface::as_raw(self),
core::mem::transmute(pdesc1),
)
}
}
}
#[repr(C)]
pub struct ID3D11UnorderedAccessView1_Vtbl {
pub base__: ID3D11UnorderedAccessView_Vtbl,
#[cfg(feature = "Win32_Graphics_Dxgi_Common")]
pub GetDesc1:
unsafe extern "system" fn(*mut core::ffi::c_void, *mut D3D11_UNORDERED_ACCESS_VIEW_DESC1),
#[cfg(not(feature = "Win32_Graphics_Dxgi_Common"))]
GetDesc1: usize,
}
#[cfg(feature = "Win32_Graphics_Dxgi_Common")]
pub trait ID3D11UnorderedAccessView1_Impl: ID3D11UnorderedAccessView_Impl {
fn GetDesc1(&self, pdesc1: *mut D3D11_UNORDERED_ACCESS_VIEW_DESC1);
}
#[cfg(feature = "Win32_Graphics_Dxgi_Common")]
impl ID3D11UnorderedAccessView1_Vtbl {
pub const fn new<Identity: ID3D11UnorderedAccessView1_Impl, const OFFSET: isize>() -> Self {
unsafe extern "system" fn GetDesc1<
Identity: ID3D11UnorderedAccessView1_Impl,
const OFFSET: isize,
>(
this: *mut core::ffi::c_void,
pdesc1: *mut D3D11_UNORDERED_ACCESS_VIEW_DESC1,
) {
unsafe {
let this: &Identity =
&*((this as *const *const ()).offset(OFFSET) as *const Identity);
ID3D11UnorderedAccessView1_Impl::GetDesc1(this, core::mem::transmute_copy(&pdesc1))
}
}
Self {
base__: ID3D11UnorderedAccessView_Vtbl::new::<Identity, OFFSET>(),
GetDesc1: GetDesc1::<Identity, OFFSET>,
}
}
pub fn matches(iid: &windows_core::GUID) -> bool {
iid == &<ID3D11UnorderedAccessView1 as windows_core::Interface>::IID
|| iid == &<ID3D11DeviceChild as windows_core::Interface>::IID
|| iid == &<ID3D11View as windows_core::Interface>::IID
|| iid == &<ID3D11UnorderedAccessView as windows_core::Interface>::IID
}
}
#[cfg(feature = "Win32_Graphics_Dxgi_Common")]
impl windows_core::RuntimeName for ID3D11UnorderedAccessView1 {}
#[cfg(feature = "Win32_Graphics_Dxgi_Common")]
unsafe impl Send for ID3D11UnorderedAccessView1 {}
#[cfg(feature = "Win32_Graphics_Dxgi_Common")]
unsafe impl Sync for ID3D11UnorderedAccessView1 {}
windows_core::imp::define_interface!(
ID3D11VertexShader,
ID3D11VertexShader_Vtbl,
0x3b301d64_d678_4289_8897_22f8928b72f3
);
impl core::ops::Deref for ID3D11VertexShader {
type Target = ID3D11DeviceChild;
fn deref(&self) -> &Self::Target {
unsafe { core::mem::transmute(self) }
}
}
windows_core::imp::interface_hierarchy!(
ID3D11VertexShader,
windows_core::IUnknown,
ID3D11DeviceChild
);
#[repr(C)]
pub struct ID3D11VertexShader_Vtbl {
pub base__: ID3D11DeviceChild_Vtbl,
}
pub trait ID3D11VertexShader_Impl: ID3D11DeviceChild_Impl {}
impl ID3D11VertexShader_Vtbl {
pub const fn new<Identity: ID3D11VertexShader_Impl, const OFFSET: isize>() -> Self {
Self {
base__: ID3D11DeviceChild_Vtbl::new::<Identity, OFFSET>(),
}
}
pub fn matches(iid: &windows_core::GUID) -> bool {
iid == &<ID3D11VertexShader as windows_core::Interface>::IID
|| iid == &<ID3D11DeviceChild as windows_core::Interface>::IID
}
}
impl windows_core::RuntimeName for ID3D11VertexShader {}
unsafe impl Send for ID3D11VertexShader {}
unsafe impl Sync for ID3D11VertexShader {}
windows_core::imp::define_interface!(
ID3D11VideoContext,
ID3D11VideoContext_Vtbl,
0x61f21c45_3c0e_4a74_9cea_67100d9ad5e4
);
impl core::ops::Deref for ID3D11VideoContext {
type Target = ID3D11DeviceChild;
fn deref(&self) -> &Self::Target {
unsafe { core::mem::transmute(self) }
}
}
windows_core::imp::interface_hierarchy!(
ID3D11VideoContext,
windows_core::IUnknown,
ID3D11DeviceChild
);
impl ID3D11VideoContext {
pub unsafe fn GetDecoderBuffer<P0>(
&self,
pdecoder: P0,
r#type: D3D11_VIDEO_DECODER_BUFFER_TYPE,
pbuffersize: *mut u32,
ppbuffer: *mut *mut core::ffi::c_void,
) -> windows_core::Result<()>
where
P0: windows_core::Param<ID3D11VideoDecoder>,
{
unsafe {
(windows_core::Interface::vtable(self).GetDecoderBuffer)(
windows_core::Interface::as_raw(self),
pdecoder.param().abi(),
r#type,
core::mem::transmute(pbuffersize),
core::mem::transmute(ppbuffer),
)
.ok()
}
}
pub unsafe fn ReleaseDecoderBuffer<P0>(
&self,
pdecoder: P0,
r#type: D3D11_VIDEO_DECODER_BUFFER_TYPE,
) -> windows_core::Result<()>
where
P0: windows_core::Param<ID3D11VideoDecoder>,
{
unsafe {
(windows_core::Interface::vtable(self).ReleaseDecoderBuffer)(
windows_core::Interface::as_raw(self),
pdecoder.param().abi(),
r#type,
)
.ok()
}
}
pub unsafe fn DecoderBeginFrame<P0, P1>(
&self,
pdecoder: P0,
pview: P1,
contentkeysize: u32,
pcontentkey: Option<*const core::ffi::c_void>,
) -> windows_core::Result<()>
where
P0: windows_core::Param<ID3D11VideoDecoder>,
P1: windows_core::Param<ID3D11VideoDecoderOutputView>,
{
unsafe {
(windows_core::Interface::vtable(self).DecoderBeginFrame)(
windows_core::Interface::as_raw(self),
pdecoder.param().abi(),
pview.param().abi(),
contentkeysize,
core::mem::transmute(pcontentkey.unwrap_or(core::mem::zeroed())),
)
.ok()
}
}
pub unsafe fn DecoderEndFrame<P0>(&self, pdecoder: P0) -> windows_core::Result<()>
where
P0: windows_core::Param<ID3D11VideoDecoder>,
{
unsafe {
(windows_core::Interface::vtable(self).DecoderEndFrame)(
windows_core::Interface::as_raw(self),
pdecoder.param().abi(),
)
.ok()
}
}
pub unsafe fn SubmitDecoderBuffers<P0>(
&self,
pdecoder: P0,
pbufferdesc: &[D3D11_VIDEO_DECODER_BUFFER_DESC],
) -> windows_core::Result<()>
where
P0: windows_core::Param<ID3D11VideoDecoder>,
{
unsafe {
(windows_core::Interface::vtable(self).SubmitDecoderBuffers)(
windows_core::Interface::as_raw(self),
pdecoder.param().abi(),
pbufferdesc.len().try_into().unwrap(),
core::mem::transmute(pbufferdesc.as_ptr()),
)
.ok()
}
}
pub unsafe fn DecoderExtension<P0>(
&self,
pdecoder: P0,
pextensiondata: *const D3D11_VIDEO_DECODER_EXTENSION,
) -> i32
where
P0: windows_core::Param<ID3D11VideoDecoder>,
{
unsafe {
(windows_core::Interface::vtable(self).DecoderExtension)(
windows_core::Interface::as_raw(self),
pdecoder.param().abi(),
pextensiondata,
)
}
}
pub unsafe fn VideoProcessorSetOutputTargetRect<P0>(
&self,
pvideoprocessor: P0,
enable: bool,
prect: Option<*const crate::Foundation::RECT>,
) where
P0: windows_core::Param<ID3D11VideoProcessor>,
{
unsafe {
(windows_core::Interface::vtable(self).VideoProcessorSetOutputTargetRect)(
windows_core::Interface::as_raw(self),
pvideoprocessor.param().abi(),
enable.into(),
core::mem::transmute(prect.unwrap_or(core::mem::zeroed())),
)
}
}
pub unsafe fn VideoProcessorSetOutputBackgroundColor<P0>(
&self,
pvideoprocessor: P0,
ycbcr: bool,
pcolor: *const D3D11_VIDEO_COLOR,
) where
P0: windows_core::Param<ID3D11VideoProcessor>,
{
unsafe {
(windows_core::Interface::vtable(self).VideoProcessorSetOutputBackgroundColor)(
windows_core::Interface::as_raw(self),
pvideoprocessor.param().abi(),
ycbcr.into(),
pcolor,
)
}
}
pub unsafe fn VideoProcessorSetOutputColorSpace<P0>(
&self,
pvideoprocessor: P0,
pcolorspace: *const D3D11_VIDEO_PROCESSOR_COLOR_SPACE,
) where
P0: windows_core::Param<ID3D11VideoProcessor>,
{
unsafe {
(windows_core::Interface::vtable(self).VideoProcessorSetOutputColorSpace)(
windows_core::Interface::as_raw(self),
pvideoprocessor.param().abi(),
pcolorspace,
)
}
}
pub unsafe fn VideoProcessorSetOutputAlphaFillMode<P0>(
&self,
pvideoprocessor: P0,
alphafillmode: D3D11_VIDEO_PROCESSOR_ALPHA_FILL_MODE,
streamindex: u32,
) where
P0: windows_core::Param<ID3D11VideoProcessor>,
{
unsafe {
(windows_core::Interface::vtable(self).VideoProcessorSetOutputAlphaFillMode)(
windows_core::Interface::as_raw(self),
pvideoprocessor.param().abi(),
alphafillmode,
streamindex,
)
}
}
pub unsafe fn VideoProcessorSetOutputConstriction<P0>(
&self,
pvideoprocessor: P0,
enable: bool,
size: crate::Foundation::SIZE,
) where
P0: windows_core::Param<ID3D11VideoProcessor>,
{
unsafe {
(windows_core::Interface::vtable(self).VideoProcessorSetOutputConstriction)(
windows_core::Interface::as_raw(self),
pvideoprocessor.param().abi(),
enable.into(),
core::mem::transmute(size),
)
}
}
pub unsafe fn VideoProcessorSetOutputStereoMode<P0>(&self, pvideoprocessor: P0, enable: bool)
where
P0: windows_core::Param<ID3D11VideoProcessor>,
{
unsafe {
(windows_core::Interface::vtable(self).VideoProcessorSetOutputStereoMode)(
windows_core::Interface::as_raw(self),
pvideoprocessor.param().abi(),
enable.into(),
)
}
}
pub unsafe fn VideoProcessorSetOutputExtension<P0>(
&self,
pvideoprocessor: P0,
pextensionguid: *const windows_core::GUID,
datasize: u32,
pdata: *const core::ffi::c_void,
) -> i32
where
P0: windows_core::Param<ID3D11VideoProcessor>,
{
unsafe {
(windows_core::Interface::vtable(self).VideoProcessorSetOutputExtension)(
windows_core::Interface::as_raw(self),
pvideoprocessor.param().abi(),
pextensionguid,
datasize,
pdata,
)
}
}
pub unsafe fn VideoProcessorGetOutputTargetRect<P0>(
&self,
pvideoprocessor: P0,
enabled: *mut crate::Foundation::BOOL,
prect: *mut crate::Foundation::RECT,
) where
P0: windows_core::Param<ID3D11VideoProcessor>,
{
unsafe {
(windows_core::Interface::vtable(self).VideoProcessorGetOutputTargetRect)(
windows_core::Interface::as_raw(self),
pvideoprocessor.param().abi(),
core::mem::transmute(enabled),
core::mem::transmute(prect),
)
}
}
pub unsafe fn VideoProcessorGetOutputBackgroundColor<P0>(
&self,
pvideoprocessor: P0,
pycbcr: *mut crate::Foundation::BOOL,
pcolor: *mut D3D11_VIDEO_COLOR,
) where
P0: windows_core::Param<ID3D11VideoProcessor>,
{
unsafe {
(windows_core::Interface::vtable(self).VideoProcessorGetOutputBackgroundColor)(
windows_core::Interface::as_raw(self),
pvideoprocessor.param().abi(),
core::mem::transmute(pycbcr),
core::mem::transmute(pcolor),
)
}
}
pub unsafe fn VideoProcessorGetOutputColorSpace<P0>(
&self,
pvideoprocessor: P0,
) -> D3D11_VIDEO_PROCESSOR_COLOR_SPACE
where
P0: windows_core::Param<ID3D11VideoProcessor>,
{
unsafe {
let mut result__ = core::mem::zeroed();
(windows_core::Interface::vtable(self).VideoProcessorGetOutputColorSpace)(
windows_core::Interface::as_raw(self),
pvideoprocessor.param().abi(),
&mut result__,
);
result__
}
}
pub unsafe fn VideoProcessorGetOutputAlphaFillMode<P0>(
&self,
pvideoprocessor: P0,
palphafillmode: *mut D3D11_VIDEO_PROCESSOR_ALPHA_FILL_MODE,
pstreamindex: *mut u32,
) where
P0: windows_core::Param<ID3D11VideoProcessor>,
{
unsafe {
(windows_core::Interface::vtable(self).VideoProcessorGetOutputAlphaFillMode)(
windows_core::Interface::as_raw(self),
pvideoprocessor.param().abi(),
core::mem::transmute(palphafillmode),
core::mem::transmute(pstreamindex),
)
}
}
pub unsafe fn VideoProcessorGetOutputConstriction<P0>(
&self,
pvideoprocessor: P0,
penabled: *mut crate::Foundation::BOOL,
psize: *mut crate::Foundation::SIZE,
) where
P0: windows_core::Param<ID3D11VideoProcessor>,
{
unsafe {
(windows_core::Interface::vtable(self).VideoProcessorGetOutputConstriction)(
windows_core::Interface::as_raw(self),
pvideoprocessor.param().abi(),
core::mem::transmute(penabled),
core::mem::transmute(psize),
)
}
}
pub unsafe fn VideoProcessorGetOutputStereoMode<P0>(
&self,
pvideoprocessor: P0,
) -> crate::Foundation::BOOL
where
P0: windows_core::Param<ID3D11VideoProcessor>,
{
unsafe {
let mut result__ = core::mem::zeroed();
(windows_core::Interface::vtable(self).VideoProcessorGetOutputStereoMode)(
windows_core::Interface::as_raw(self),
pvideoprocessor.param().abi(),
&mut result__,
);
result__
}
}
pub unsafe fn VideoProcessorGetOutputExtension<P0>(
&self,
pvideoprocessor: P0,
pextensionguid: *const windows_core::GUID,
datasize: u32,
pdata: *mut core::ffi::c_void,
) -> i32
where
P0: windows_core::Param<ID3D11VideoProcessor>,
{
unsafe {
(windows_core::Interface::vtable(self).VideoProcessorGetOutputExtension)(
windows_core::Interface::as_raw(self),
pvideoprocessor.param().abi(),
pextensionguid,
datasize,
core::mem::transmute(pdata),
)
}
}
pub unsafe fn VideoProcessorSetStreamFrameFormat<P0>(
&self,
pvideoprocessor: P0,
streamindex: u32,
frameformat: D3D11_VIDEO_FRAME_FORMAT,
) where
P0: windows_core::Param<ID3D11VideoProcessor>,
{
unsafe {
(windows_core::Interface::vtable(self).VideoProcessorSetStreamFrameFormat)(
windows_core::Interface::as_raw(self),
pvideoprocessor.param().abi(),
streamindex,
frameformat,
)
}
}
pub unsafe fn VideoProcessorSetStreamColorSpace<P0>(
&self,
pvideoprocessor: P0,
streamindex: u32,
pcolorspace: *const D3D11_VIDEO_PROCESSOR_COLOR_SPACE,
) where
P0: windows_core::Param<ID3D11VideoProcessor>,
{
unsafe {
(windows_core::Interface::vtable(self).VideoProcessorSetStreamColorSpace)(
windows_core::Interface::as_raw(self),
pvideoprocessor.param().abi(),
streamindex,
pcolorspace,
)
}
}
#[cfg(feature = "Win32_Graphics_Dxgi_Common")]
pub unsafe fn VideoProcessorSetStreamOutputRate<P0>(
&self,
pvideoprocessor: P0,
streamindex: u32,
outputrate: D3D11_VIDEO_PROCESSOR_OUTPUT_RATE,
repeatframe: bool,
pcustomrate: Option<*const crate::Dxgi::Common::DXGI_RATIONAL>,
) where
P0: windows_core::Param<ID3D11VideoProcessor>,
{
unsafe {
(windows_core::Interface::vtable(self).VideoProcessorSetStreamOutputRate)(
windows_core::Interface::as_raw(self),
pvideoprocessor.param().abi(),
streamindex,
outputrate,
repeatframe.into(),
core::mem::transmute(pcustomrate.unwrap_or(core::mem::zeroed())),
)
}
}
pub unsafe fn VideoProcessorSetStreamSourceRect<P0>(
&self,
pvideoprocessor: P0,
streamindex: u32,
enable: bool,
prect: Option<*const crate::Foundation::RECT>,
) where
P0: windows_core::Param<ID3D11VideoProcessor>,
{
unsafe {
(windows_core::Interface::vtable(self).VideoProcessorSetStreamSourceRect)(
windows_core::Interface::as_raw(self),
pvideoprocessor.param().abi(),
streamindex,
enable.into(),
core::mem::transmute(prect.unwrap_or(core::mem::zeroed())),
)
}
}
pub unsafe fn VideoProcessorSetStreamDestRect<P0>(
&self,
pvideoprocessor: P0,
streamindex: u32,
enable: bool,
prect: Option<*const crate::Foundation::RECT>,
) where
P0: windows_core::Param<ID3D11VideoProcessor>,
{
unsafe {
(windows_core::Interface::vtable(self).VideoProcessorSetStreamDestRect)(
windows_core::Interface::as_raw(self),
pvideoprocessor.param().abi(),
streamindex,
enable.into(),
core::mem::transmute(prect.unwrap_or(core::mem::zeroed())),
)
}
}
pub unsafe fn VideoProcessorSetStreamAlpha<P0>(
&self,
pvideoprocessor: P0,
streamindex: u32,
enable: bool,
alpha: f32,
) where
P0: windows_core::Param<ID3D11VideoProcessor>,
{
unsafe {
(windows_core::Interface::vtable(self).VideoProcessorSetStreamAlpha)(
windows_core::Interface::as_raw(self),
pvideoprocessor.param().abi(),
streamindex,
enable.into(),
alpha,
)
}
}
pub unsafe fn VideoProcessorSetStreamPalette<P0>(
&self,
pvideoprocessor: P0,
streamindex: u32,
pentries: Option<&[u32]>,
) where
P0: windows_core::Param<ID3D11VideoProcessor>,
{
unsafe {
(windows_core::Interface::vtable(self).VideoProcessorSetStreamPalette)(
windows_core::Interface::as_raw(self),
pvideoprocessor.param().abi(),
streamindex,
pentries
.map_or(0, |slice| slice.len().try_into().unwrap()),
core::mem::transmute(
pentries
.map_or(core::ptr::null(), |slice| slice.as_ptr()),
),
)
}
}
#[cfg(feature = "Win32_Graphics_Dxgi_Common")]
pub unsafe fn VideoProcessorSetStreamPixelAspectRatio<P0>(
&self,
pvideoprocessor: P0,
streamindex: u32,
enable: bool,
psourceaspectratio: Option<*const crate::Dxgi::Common::DXGI_RATIONAL>,
pdestinationaspectratio: Option<*const crate::Dxgi::Common::DXGI_RATIONAL>,
) where
P0: windows_core::Param<ID3D11VideoProcessor>,
{
unsafe {
(windows_core::Interface::vtable(self).VideoProcessorSetStreamPixelAspectRatio)(
windows_core::Interface::as_raw(self),
pvideoprocessor.param().abi(),
streamindex,
enable.into(),
core::mem::transmute(psourceaspectratio.unwrap_or(core::mem::zeroed())),
core::mem::transmute(pdestinationaspectratio.unwrap_or(core::mem::zeroed())),
)
}
}
pub unsafe fn VideoProcessorSetStreamLumaKey<P0>(
&self,
pvideoprocessor: P0,
streamindex: u32,
enable: bool,
lower: f32,
upper: f32,
) where
P0: windows_core::Param<ID3D11VideoProcessor>,
{
unsafe {
(windows_core::Interface::vtable(self).VideoProcessorSetStreamLumaKey)(
windows_core::Interface::as_raw(self),
pvideoprocessor.param().abi(),
streamindex,
enable.into(),
lower,
upper,
)
}
}
pub unsafe fn VideoProcessorSetStreamStereoFormat<P0>(
&self,
pvideoprocessor: P0,
streamindex: u32,
enable: bool,
format: D3D11_VIDEO_PROCESSOR_STEREO_FORMAT,
leftviewframe0: bool,
baseviewframe0: bool,
flipmode: D3D11_VIDEO_PROCESSOR_STEREO_FLIP_MODE,
monooffset: i32,
) where
P0: windows_core::Param<ID3D11VideoProcessor>,
{
unsafe {
(windows_core::Interface::vtable(self).VideoProcessorSetStreamStereoFormat)(
windows_core::Interface::as_raw(self),
pvideoprocessor.param().abi(),
streamindex,
enable.into(),
format,
leftviewframe0.into(),
baseviewframe0.into(),
flipmode,
monooffset,
)
}
}
pub unsafe fn VideoProcessorSetStreamAutoProcessingMode<P0>(
&self,
pvideoprocessor: P0,
streamindex: u32,
enable: bool,
) where
P0: windows_core::Param<ID3D11VideoProcessor>,
{
unsafe {
(windows_core::Interface::vtable(self).VideoProcessorSetStreamAutoProcessingMode)(
windows_core::Interface::as_raw(self),
pvideoprocessor.param().abi(),
streamindex,
enable.into(),
)
}
}
pub unsafe fn VideoProcessorSetStreamFilter<P0>(
&self,
pvideoprocessor: P0,
streamindex: u32,
filter: D3D11_VIDEO_PROCESSOR_FILTER,
enable: bool,
level: i32,
) where
P0: windows_core::Param<ID3D11VideoProcessor>,
{
unsafe {
(windows_core::Interface::vtable(self).VideoProcessorSetStreamFilter)(
windows_core::Interface::as_raw(self),
pvideoprocessor.param().abi(),
streamindex,
filter,
enable.into(),
level,
)
}
}
pub unsafe fn VideoProcessorSetStreamExtension<P0>(
&self,
pvideoprocessor: P0,
streamindex: u32,
pextensionguid: *const windows_core::GUID,
datasize: u32,
pdata: *const core::ffi::c_void,
) -> i32
where
P0: windows_core::Param<ID3D11VideoProcessor>,
{
unsafe {
(windows_core::Interface::vtable(self).VideoProcessorSetStreamExtension)(
windows_core::Interface::as_raw(self),
pvideoprocessor.param().abi(),
streamindex,
pextensionguid,
datasize,
pdata,
)
}
}
pub unsafe fn VideoProcessorGetStreamFrameFormat<P0>(
&self,
pvideoprocessor: P0,
streamindex: u32,
) -> D3D11_VIDEO_FRAME_FORMAT
where
P0: windows_core::Param<ID3D11VideoProcessor>,
{
unsafe {
let mut result__ = core::mem::zeroed();
(windows_core::Interface::vtable(self).VideoProcessorGetStreamFrameFormat)(
windows_core::Interface::as_raw(self),
pvideoprocessor.param().abi(),
streamindex,
&mut result__,
);
result__
}
}
pub unsafe fn VideoProcessorGetStreamColorSpace<P0>(
&self,
pvideoprocessor: P0,
streamindex: u32,
) -> D3D11_VIDEO_PROCESSOR_COLOR_SPACE
where
P0: windows_core::Param<ID3D11VideoProcessor>,
{
unsafe {
let mut result__ = core::mem::zeroed();
(windows_core::Interface::vtable(self).VideoProcessorGetStreamColorSpace)(
windows_core::Interface::as_raw(self),
pvideoprocessor.param().abi(),
streamindex,
&mut result__,
);
result__
}
}
#[cfg(feature = "Win32_Graphics_Dxgi_Common")]
pub unsafe fn VideoProcessorGetStreamOutputRate<P0>(
&self,
pvideoprocessor: P0,
streamindex: u32,
poutputrate: *mut D3D11_VIDEO_PROCESSOR_OUTPUT_RATE,
prepeatframe: *mut crate::Foundation::BOOL,
pcustomrate: *mut crate::Dxgi::Common::DXGI_RATIONAL,
) where
P0: windows_core::Param<ID3D11VideoProcessor>,
{
unsafe {
(windows_core::Interface::vtable(self).VideoProcessorGetStreamOutputRate)(
windows_core::Interface::as_raw(self),
pvideoprocessor.param().abi(),
streamindex,
core::mem::transmute(poutputrate),
core::mem::transmute(prepeatframe),
core::mem::transmute(pcustomrate),
)
}
}
pub unsafe fn VideoProcessorGetStreamSourceRect<P0>(
&self,
pvideoprocessor: P0,
streamindex: u32,
penabled: *mut crate::Foundation::BOOL,
prect: *mut crate::Foundation::RECT,
) where
P0: windows_core::Param<ID3D11VideoProcessor>,
{
unsafe {
(windows_core::Interface::vtable(self).VideoProcessorGetStreamSourceRect)(
windows_core::Interface::as_raw(self),
pvideoprocessor.param().abi(),
streamindex,
core::mem::transmute(penabled),
core::mem::transmute(prect),
)
}
}
pub unsafe fn VideoProcessorGetStreamDestRect<P0>(
&self,
pvideoprocessor: P0,
streamindex: u32,
penabled: *mut crate::Foundation::BOOL,
prect: *mut crate::Foundation::RECT,
) where
P0: windows_core::Param<ID3D11VideoProcessor>,
{
unsafe {
(windows_core::Interface::vtable(self).VideoProcessorGetStreamDestRect)(
windows_core::Interface::as_raw(self),
pvideoprocessor.param().abi(),
streamindex,
core::mem::transmute(penabled),
core::mem::transmute(prect),
)
}
}
pub unsafe fn VideoProcessorGetStreamAlpha<P0>(
&self,
pvideoprocessor: P0,
streamindex: u32,
penabled: *mut crate::Foundation::BOOL,
palpha: *mut f32,
) where
P0: windows_core::Param<ID3D11VideoProcessor>,
{
unsafe {
(windows_core::Interface::vtable(self).VideoProcessorGetStreamAlpha)(
windows_core::Interface::as_raw(self),
pvideoprocessor.param().abi(),
streamindex,
core::mem::transmute(penabled),
core::mem::transmute(palpha),
)
}
}
pub unsafe fn VideoProcessorGetStreamPalette<P0>(
&self,
pvideoprocessor: P0,
streamindex: u32,
pentries: &mut [u32],
) where
P0: windows_core::Param<ID3D11VideoProcessor>,
{
unsafe {
(windows_core::Interface::vtable(self).VideoProcessorGetStreamPalette)(
windows_core::Interface::as_raw(self),
pvideoprocessor.param().abi(),
streamindex,
pentries.len().try_into().unwrap(),
core::mem::transmute(pentries.as_ptr()),
)
}
}
#[cfg(feature = "Win32_Graphics_Dxgi_Common")]
pub unsafe fn VideoProcessorGetStreamPixelAspectRatio<P0>(
&self,
pvideoprocessor: P0,
streamindex: u32,
penabled: *mut crate::Foundation::BOOL,
psourceaspectratio: *mut crate::Dxgi::Common::DXGI_RATIONAL,
pdestinationaspectratio: *mut crate::Dxgi::Common::DXGI_RATIONAL,
) where
P0: windows_core::Param<ID3D11VideoProcessor>,
{
unsafe {
(windows_core::Interface::vtable(self).VideoProcessorGetStreamPixelAspectRatio)(
windows_core::Interface::as_raw(self),
pvideoprocessor.param().abi(),
streamindex,
core::mem::transmute(penabled),
core::mem::transmute(psourceaspectratio),
core::mem::transmute(pdestinationaspectratio),
)
}
}
pub unsafe fn VideoProcessorGetStreamLumaKey<P0>(
&self,
pvideoprocessor: P0,
streamindex: u32,
penabled: *mut crate::Foundation::BOOL,
plower: *mut f32,
pupper: *mut f32,
) where
P0: windows_core::Param<ID3D11VideoProcessor>,
{
unsafe {
(windows_core::Interface::vtable(self).VideoProcessorGetStreamLumaKey)(
windows_core::Interface::as_raw(self),
pvideoprocessor.param().abi(),
streamindex,
core::mem::transmute(penabled),
core::mem::transmute(plower),
core::mem::transmute(pupper),
)
}
}
pub unsafe fn VideoProcessorGetStreamStereoFormat<P0>(
&self,
pvideoprocessor: P0,
streamindex: u32,
penable: *mut crate::Foundation::BOOL,
pformat: *mut D3D11_VIDEO_PROCESSOR_STEREO_FORMAT,
pleftviewframe0: *mut crate::Foundation::BOOL,
pbaseviewframe0: *mut crate::Foundation::BOOL,
pflipmode: *mut D3D11_VIDEO_PROCESSOR_STEREO_FLIP_MODE,
monooffset: *mut i32,
) where
P0: windows_core::Param<ID3D11VideoProcessor>,
{
unsafe {
(windows_core::Interface::vtable(self).VideoProcessorGetStreamStereoFormat)(
windows_core::Interface::as_raw(self),
pvideoprocessor.param().abi(),
streamindex,
core::mem::transmute(penable),
core::mem::transmute(pformat),
core::mem::transmute(pleftviewframe0),
core::mem::transmute(pbaseviewframe0),
core::mem::transmute(pflipmode),
core::mem::transmute(monooffset),
)
}
}
pub unsafe fn VideoProcessorGetStreamAutoProcessingMode<P0>(
&self,
pvideoprocessor: P0,
streamindex: u32,
) -> crate::Foundation::BOOL
where
P0: windows_core::Param<ID3D11VideoProcessor>,
{
unsafe {
let mut result__ = core::mem::zeroed();
(windows_core::Interface::vtable(self).VideoProcessorGetStreamAutoProcessingMode)(
windows_core::Interface::as_raw(self),
pvideoprocessor.param().abi(),
streamindex,
&mut result__,
);
result__
}
}
pub unsafe fn VideoProcessorGetStreamFilter<P0>(
&self,
pvideoprocessor: P0,
streamindex: u32,
filter: D3D11_VIDEO_PROCESSOR_FILTER,
penabled: *mut crate::Foundation::BOOL,
plevel: *mut i32,
) where
P0: windows_core::Param<ID3D11VideoProcessor>,
{
unsafe {
(windows_core::Interface::vtable(self).VideoProcessorGetStreamFilter)(
windows_core::Interface::as_raw(self),
pvideoprocessor.param().abi(),
streamindex,
filter,
core::mem::transmute(penabled),
core::mem::transmute(plevel),
)
}
}
pub unsafe fn VideoProcessorGetStreamExtension<P0>(
&self,
pvideoprocessor: P0,
streamindex: u32,
pextensionguid: *const windows_core::GUID,
datasize: u32,
pdata: *mut core::ffi::c_void,
) -> i32
where
P0: windows_core::Param<ID3D11VideoProcessor>,
{
unsafe {
(windows_core::Interface::vtable(self).VideoProcessorGetStreamExtension)(
windows_core::Interface::as_raw(self),
pvideoprocessor.param().abi(),
streamindex,
pextensionguid,
datasize,
core::mem::transmute(pdata),
)
}
}
pub unsafe fn VideoProcessorBlt<P0, P1>(
&self,
pvideoprocessor: P0,
pview: P1,
outputframe: u32,
pstreams: &[D3D11_VIDEO_PROCESSOR_STREAM],
) -> windows_core::Result<()>
where
P0: windows_core::Param<ID3D11VideoProcessor>,
P1: windows_core::Param<ID3D11VideoProcessorOutputView>,
{
unsafe {
(windows_core::Interface::vtable(self).VideoProcessorBlt)(
windows_core::Interface::as_raw(self),
pvideoprocessor.param().abi(),
pview.param().abi(),
outputframe,
pstreams.len().try_into().unwrap(),
core::mem::transmute(pstreams.as_ptr()),
)
.ok()
}
}
pub unsafe fn NegotiateCryptoSessionKeyExchange<P0>(
&self,
pcryptosession: P0,
datasize: u32,
pdata: *mut core::ffi::c_void,
) -> windows_core::Result<()>
where
P0: windows_core::Param<ID3D11CryptoSession>,
{
unsafe {
(windows_core::Interface::vtable(self).NegotiateCryptoSessionKeyExchange)(
windows_core::Interface::as_raw(self),
pcryptosession.param().abi(),
datasize,
core::mem::transmute(pdata),
)
.ok()
}
}
pub unsafe fn EncryptionBlt<P0, P1, P2>(
&self,
pcryptosession: P0,
psrcsurface: P1,
pdstsurface: P2,
ivsize: u32,
piv: Option<*mut core::ffi::c_void>,
) where
P0: windows_core::Param<ID3D11CryptoSession>,
P1: windows_core::Param<ID3D11Texture2D>,
P2: windows_core::Param<ID3D11Texture2D>,
{
unsafe {
(windows_core::Interface::vtable(self).EncryptionBlt)(
windows_core::Interface::as_raw(self),
pcryptosession.param().abi(),
psrcsurface.param().abi(),
pdstsurface.param().abi(),
ivsize,
core::mem::transmute(piv.unwrap_or(core::mem::zeroed())),
)
}
}
pub unsafe fn DecryptionBlt<P0, P1, P2>(
&self,
pcryptosession: P0,
psrcsurface: P1,
pdstsurface: P2,
pencryptedblockinfo: Option<*const D3D11_ENCRYPTED_BLOCK_INFO>,
contentkeysize: u32,
pcontentkey: Option<*const core::ffi::c_void>,
ivsize: u32,
piv: Option<*mut core::ffi::c_void>,
) where
P0: windows_core::Param<ID3D11CryptoSession>,
P1: windows_core::Param<ID3D11Texture2D>,
P2: windows_core::Param<ID3D11Texture2D>,
{
unsafe {
(windows_core::Interface::vtable(self).DecryptionBlt)(
windows_core::Interface::as_raw(self),
pcryptosession.param().abi(),
psrcsurface.param().abi(),
pdstsurface.param().abi(),
core::mem::transmute(pencryptedblockinfo.unwrap_or(core::mem::zeroed())),
contentkeysize,
core::mem::transmute(pcontentkey.unwrap_or(core::mem::zeroed())),
ivsize,
core::mem::transmute(piv.unwrap_or(core::mem::zeroed())),
)
}
}
pub unsafe fn StartSessionKeyRefresh<P0>(
&self,
pcryptosession: P0,
randomnumbersize: u32,
prandomnumber: *mut core::ffi::c_void,
) where
P0: windows_core::Param<ID3D11CryptoSession>,
{
unsafe {
(windows_core::Interface::vtable(self).StartSessionKeyRefresh)(
windows_core::Interface::as_raw(self),
pcryptosession.param().abi(),
randomnumbersize,
core::mem::transmute(prandomnumber),
)
}
}
pub unsafe fn FinishSessionKeyRefresh<P0>(&self, pcryptosession: P0)
where
P0: windows_core::Param<ID3D11CryptoSession>,
{
unsafe {
(windows_core::Interface::vtable(self).FinishSessionKeyRefresh)(
windows_core::Interface::as_raw(self),
pcryptosession.param().abi(),
)
}
}
pub unsafe fn GetEncryptionBltKey<P0>(
&self,
pcryptosession: P0,
keysize: u32,
preadbackkey: *mut core::ffi::c_void,
) -> windows_core::Result<()>
where
P0: windows_core::Param<ID3D11CryptoSession>,
{
unsafe {
(windows_core::Interface::vtable(self).GetEncryptionBltKey)(
windows_core::Interface::as_raw(self),
pcryptosession.param().abi(),
keysize,
core::mem::transmute(preadbackkey),
)
.ok()
}
}
pub unsafe fn NegotiateAuthenticatedChannelKeyExchange<P0>(
&self,
pchannel: P0,
datasize: u32,
pdata: *mut core::ffi::c_void,
) -> windows_core::Result<()>
where
P0: windows_core::Param<ID3D11AuthenticatedChannel>,
{
unsafe {
(windows_core::Interface::vtable(self).NegotiateAuthenticatedChannelKeyExchange)(
windows_core::Interface::as_raw(self),
pchannel.param().abi(),
datasize,
core::mem::transmute(pdata),
)
.ok()
}
}
pub unsafe fn QueryAuthenticatedChannel<P0>(
&self,
pchannel: P0,
inputsize: u32,
pinput: *const core::ffi::c_void,
outputsize: u32,
poutput: *mut core::ffi::c_void,
) -> windows_core::Result<()>
where
P0: windows_core::Param<ID3D11AuthenticatedChannel>,
{
unsafe {
(windows_core::Interface::vtable(self).QueryAuthenticatedChannel)(
windows_core::Interface::as_raw(self),
pchannel.param().abi(),
inputsize,
pinput,
outputsize,
core::mem::transmute(poutput),
)
.ok()
}
}
pub unsafe fn ConfigureAuthenticatedChannel<P0>(
&self,
pchannel: P0,
inputsize: u32,
pinput: *const core::ffi::c_void,
poutput: *mut D3D11_AUTHENTICATED_CONFIGURE_OUTPUT,
) -> windows_core::Result<()>
where
P0: windows_core::Param<ID3D11AuthenticatedChannel>,
{
unsafe {
(windows_core::Interface::vtable(self).ConfigureAuthenticatedChannel)(
windows_core::Interface::as_raw(self),
pchannel.param().abi(),
inputsize,
pinput,
core::mem::transmute(poutput),
)
.ok()
}
}
pub unsafe fn VideoProcessorSetStreamRotation<P0>(
&self,
pvideoprocessor: P0,
streamindex: u32,
enable: bool,
rotation: D3D11_VIDEO_PROCESSOR_ROTATION,
) where
P0: windows_core::Param<ID3D11VideoProcessor>,
{
unsafe {
(windows_core::Interface::vtable(self).VideoProcessorSetStreamRotation)(
windows_core::Interface::as_raw(self),
pvideoprocessor.param().abi(),
streamindex,
enable.into(),
rotation,
)
}
}
pub unsafe fn VideoProcessorGetStreamRotation<P0>(
&self,
pvideoprocessor: P0,
streamindex: u32,
penable: *mut crate::Foundation::BOOL,
protation: *mut D3D11_VIDEO_PROCESSOR_ROTATION,
) where
P0: windows_core::Param<ID3D11VideoProcessor>,
{
unsafe {
(windows_core::Interface::vtable(self).VideoProcessorGetStreamRotation)(
windows_core::Interface::as_raw(self),
pvideoprocessor.param().abi(),
streamindex,
core::mem::transmute(penable),
core::mem::transmute(protation),
)
}
}
}
#[repr(C)]
pub struct ID3D11VideoContext_Vtbl {
pub base__: ID3D11DeviceChild_Vtbl,
pub GetDecoderBuffer: unsafe extern "system" fn(
*mut core::ffi::c_void,
*mut core::ffi::c_void,
D3D11_VIDEO_DECODER_BUFFER_TYPE,
*mut u32,
*mut *mut core::ffi::c_void,
) -> windows_core::HRESULT,
pub ReleaseDecoderBuffer: unsafe extern "system" fn(
*mut core::ffi::c_void,
*mut core::ffi::c_void,
D3D11_VIDEO_DECODER_BUFFER_TYPE,
) -> windows_core::HRESULT,
pub DecoderBeginFrame: unsafe extern "system" fn(
*mut core::ffi::c_void,
*mut core::ffi::c_void,
*mut core::ffi::c_void,
u32,
*const core::ffi::c_void,
) -> windows_core::HRESULT,
pub DecoderEndFrame: unsafe extern "system" fn(
*mut core::ffi::c_void,
*mut core::ffi::c_void,
) -> windows_core::HRESULT,
pub SubmitDecoderBuffers: unsafe extern "system" fn(
*mut core::ffi::c_void,
*mut core::ffi::c_void,
u32,
*const D3D11_VIDEO_DECODER_BUFFER_DESC,
) -> windows_core::HRESULT,
pub DecoderExtension: unsafe extern "system" fn(
*mut core::ffi::c_void,
*mut core::ffi::c_void,
*const D3D11_VIDEO_DECODER_EXTENSION,
) -> i32,
pub VideoProcessorSetOutputTargetRect: unsafe extern "system" fn(
*mut core::ffi::c_void,
*mut core::ffi::c_void,
crate::Foundation::BOOL,
*const crate::Foundation::RECT,
),
pub VideoProcessorSetOutputBackgroundColor: unsafe extern "system" fn(
*mut core::ffi::c_void,
*mut core::ffi::c_void,
crate::Foundation::BOOL,
*const D3D11_VIDEO_COLOR,
),
pub VideoProcessorSetOutputColorSpace: unsafe extern "system" fn(
*mut core::ffi::c_void,
*mut core::ffi::c_void,
*const D3D11_VIDEO_PROCESSOR_COLOR_SPACE,
),
pub VideoProcessorSetOutputAlphaFillMode: unsafe extern "system" fn(
*mut core::ffi::c_void,
*mut core::ffi::c_void,
D3D11_VIDEO_PROCESSOR_ALPHA_FILL_MODE,
u32,
),
pub VideoProcessorSetOutputConstriction: unsafe extern "system" fn(
*mut core::ffi::c_void,
*mut core::ffi::c_void,
crate::Foundation::BOOL,
crate::Foundation::SIZE,
),
pub VideoProcessorSetOutputStereoMode: unsafe extern "system" fn(
*mut core::ffi::c_void,
*mut core::ffi::c_void,
crate::Foundation::BOOL,
),
pub VideoProcessorSetOutputExtension: unsafe extern "system" fn(
*mut core::ffi::c_void,
*mut core::ffi::c_void,
*const windows_core::GUID,
u32,
*const core::ffi::c_void,
) -> i32,
pub VideoProcessorGetOutputTargetRect: unsafe extern "system" fn(
*mut core::ffi::c_void,
*mut core::ffi::c_void,
*mut crate::Foundation::BOOL,
*mut crate::Foundation::RECT,
),
pub VideoProcessorGetOutputBackgroundColor: unsafe extern "system" fn(
*mut core::ffi::c_void,
*mut core::ffi::c_void,
*mut crate::Foundation::BOOL,
*mut D3D11_VIDEO_COLOR,
),
pub VideoProcessorGetOutputColorSpace: unsafe extern "system" fn(
*mut core::ffi::c_void,
*mut core::ffi::c_void,
*mut D3D11_VIDEO_PROCESSOR_COLOR_SPACE,
),
pub VideoProcessorGetOutputAlphaFillMode: unsafe extern "system" fn(
*mut core::ffi::c_void,
*mut core::ffi::c_void,
*mut D3D11_VIDEO_PROCESSOR_ALPHA_FILL_MODE,
*mut u32,
),
pub VideoProcessorGetOutputConstriction: unsafe extern "system" fn(
*mut core::ffi::c_void,
*mut core::ffi::c_void,
*mut crate::Foundation::BOOL,
*mut crate::Foundation::SIZE,
),
pub VideoProcessorGetOutputStereoMode: unsafe extern "system" fn(
*mut core::ffi::c_void,
*mut core::ffi::c_void,
*mut crate::Foundation::BOOL,
),
pub VideoProcessorGetOutputExtension: unsafe extern "system" fn(
*mut core::ffi::c_void,
*mut core::ffi::c_void,
*const windows_core::GUID,
u32,
*mut core::ffi::c_void,
) -> i32,
pub VideoProcessorSetStreamFrameFormat: unsafe extern "system" fn(
*mut core::ffi::c_void,
*mut core::ffi::c_void,
u32,
D3D11_VIDEO_FRAME_FORMAT,
),
pub VideoProcessorSetStreamColorSpace: unsafe extern "system" fn(
*mut core::ffi::c_void,
*mut core::ffi::c_void,
u32,
*const D3D11_VIDEO_PROCESSOR_COLOR_SPACE,
),
#[cfg(feature = "Win32_Graphics_Dxgi_Common")]
pub VideoProcessorSetStreamOutputRate: unsafe extern "system" fn(
*mut core::ffi::c_void,
*mut core::ffi::c_void,
u32,
D3D11_VIDEO_PROCESSOR_OUTPUT_RATE,
crate::Foundation::BOOL,
*const crate::Dxgi::Common::DXGI_RATIONAL,
),
#[cfg(not(feature = "Win32_Graphics_Dxgi_Common"))]
VideoProcessorSetStreamOutputRate: usize,
pub VideoProcessorSetStreamSourceRect: unsafe extern "system" fn(
*mut core::ffi::c_void,
*mut core::ffi::c_void,
u32,
crate::Foundation::BOOL,
*const crate::Foundation::RECT,
),
pub VideoProcessorSetStreamDestRect: unsafe extern "system" fn(
*mut core::ffi::c_void,
*mut core::ffi::c_void,
u32,
crate::Foundation::BOOL,
*const crate::Foundation::RECT,
),
pub VideoProcessorSetStreamAlpha: unsafe extern "system" fn(
*mut core::ffi::c_void,
*mut core::ffi::c_void,
u32,
crate::Foundation::BOOL,
f32,
),
pub VideoProcessorSetStreamPalette: unsafe extern "system" fn(
*mut core::ffi::c_void,
*mut core::ffi::c_void,
u32,
u32,
*const u32,
),
#[cfg(feature = "Win32_Graphics_Dxgi_Common")]
pub VideoProcessorSetStreamPixelAspectRatio: unsafe extern "system" fn(
*mut core::ffi::c_void,
*mut core::ffi::c_void,
u32,
crate::Foundation::BOOL,
*const crate::Dxgi::Common::DXGI_RATIONAL,
*const crate::Dxgi::Common::DXGI_RATIONAL,
),
#[cfg(not(feature = "Win32_Graphics_Dxgi_Common"))]
VideoProcessorSetStreamPixelAspectRatio: usize,
pub VideoProcessorSetStreamLumaKey: unsafe extern "system" fn(
*mut core::ffi::c_void,
*mut core::ffi::c_void,
u32,
crate::Foundation::BOOL,
f32,
f32,
),
pub VideoProcessorSetStreamStereoFormat: unsafe extern "system" fn(
*mut core::ffi::c_void,
*mut core::ffi::c_void,
u32,
crate::Foundation::BOOL,
D3D11_VIDEO_PROCESSOR_STEREO_FORMAT,
crate::Foundation::BOOL,
crate::Foundation::BOOL,
D3D11_VIDEO_PROCESSOR_STEREO_FLIP_MODE,
i32,
),
pub VideoProcessorSetStreamAutoProcessingMode: unsafe extern "system" fn(
*mut core::ffi::c_void,
*mut core::ffi::c_void,
u32,
crate::Foundation::BOOL,
),
pub VideoProcessorSetStreamFilter: unsafe extern "system" fn(
*mut core::ffi::c_void,
*mut core::ffi::c_void,
u32,
D3D11_VIDEO_PROCESSOR_FILTER,
crate::Foundation::BOOL,
i32,
),
pub VideoProcessorSetStreamExtension: unsafe extern "system" fn(
*mut core::ffi::c_void,
*mut core::ffi::c_void,
u32,
*const windows_core::GUID,
u32,
*const core::ffi::c_void,
) -> i32,
pub VideoProcessorGetStreamFrameFormat: unsafe extern "system" fn(
*mut core::ffi::c_void,
*mut core::ffi::c_void,
u32,
*mut D3D11_VIDEO_FRAME_FORMAT,
),
pub VideoProcessorGetStreamColorSpace: unsafe extern "system" fn(
*mut core::ffi::c_void,
*mut core::ffi::c_void,
u32,
*mut D3D11_VIDEO_PROCESSOR_COLOR_SPACE,
),
#[cfg(feature = "Win32_Graphics_Dxgi_Common")]
pub VideoProcessorGetStreamOutputRate: unsafe extern "system" fn(
*mut core::ffi::c_void,
*mut core::ffi::c_void,
u32,
*mut D3D11_VIDEO_PROCESSOR_OUTPUT_RATE,
*mut crate::Foundation::BOOL,
*mut crate::Dxgi::Common::DXGI_RATIONAL,
),
#[cfg(not(feature = "Win32_Graphics_Dxgi_Common"))]
VideoProcessorGetStreamOutputRate: usize,
pub VideoProcessorGetStreamSourceRect: unsafe extern "system" fn(
*mut core::ffi::c_void,
*mut core::ffi::c_void,
u32,
*mut crate::Foundation::BOOL,
*mut crate::Foundation::RECT,
),
pub VideoProcessorGetStreamDestRect: unsafe extern "system" fn(
*mut core::ffi::c_void,
*mut core::ffi::c_void,
u32,
*mut crate::Foundation::BOOL,
*mut crate::Foundation::RECT,
),
pub VideoProcessorGetStreamAlpha: unsafe extern "system" fn(
*mut core::ffi::c_void,
*mut core::ffi::c_void,
u32,
*mut crate::Foundation::BOOL,
*mut f32,
),
pub VideoProcessorGetStreamPalette: unsafe extern "system" fn(
*mut core::ffi::c_void,
*mut core::ffi::c_void,
u32,
u32,
*mut u32,
),
#[cfg(feature = "Win32_Graphics_Dxgi_Common")]
pub VideoProcessorGetStreamPixelAspectRatio: unsafe extern "system" fn(
*mut core::ffi::c_void,
*mut core::ffi::c_void,
u32,
*mut crate::Foundation::BOOL,
*mut crate::Dxgi::Common::DXGI_RATIONAL,
*mut crate::Dxgi::Common::DXGI_RATIONAL,
),
#[cfg(not(feature = "Win32_Graphics_Dxgi_Common"))]
VideoProcessorGetStreamPixelAspectRatio: usize,
pub VideoProcessorGetStreamLumaKey: unsafe extern "system" fn(
*mut core::ffi::c_void,
*mut core::ffi::c_void,
u32,
*mut crate::Foundation::BOOL,
*mut f32,
*mut f32,
),
pub VideoProcessorGetStreamStereoFormat: unsafe extern "system" fn(
*mut core::ffi::c_void,
*mut core::ffi::c_void,
u32,
*mut crate::Foundation::BOOL,
*mut D3D11_VIDEO_PROCESSOR_STEREO_FORMAT,
*mut crate::Foundation::BOOL,
*mut crate::Foundation::BOOL,
*mut D3D11_VIDEO_PROCESSOR_STEREO_FLIP_MODE,
*mut i32,
),
pub VideoProcessorGetStreamAutoProcessingMode: unsafe extern "system" fn(
*mut core::ffi::c_void,
*mut core::ffi::c_void,
u32,
*mut crate::Foundation::BOOL,
),
pub VideoProcessorGetStreamFilter: unsafe extern "system" fn(
*mut core::ffi::c_void,
*mut core::ffi::c_void,
u32,
D3D11_VIDEO_PROCESSOR_FILTER,
*mut crate::Foundation::BOOL,
*mut i32,
),
pub VideoProcessorGetStreamExtension: unsafe extern "system" fn(
*mut core::ffi::c_void,
*mut core::ffi::c_void,
u32,
*const windows_core::GUID,
u32,
*mut core::ffi::c_void,
) -> i32,
pub VideoProcessorBlt: unsafe extern "system" fn(
*mut core::ffi::c_void,
*mut core::ffi::c_void,
*mut core::ffi::c_void,
u32,
u32,
*const D3D11_VIDEO_PROCESSOR_STREAM,
) -> windows_core::HRESULT,
pub NegotiateCryptoSessionKeyExchange: unsafe extern "system" fn(
*mut core::ffi::c_void,
*mut core::ffi::c_void,
u32,
*mut core::ffi::c_void,
) -> windows_core::HRESULT,
pub EncryptionBlt: unsafe extern "system" fn(
*mut core::ffi::c_void,
*mut core::ffi::c_void,
*mut core::ffi::c_void,
*mut core::ffi::c_void,
u32,
*mut core::ffi::c_void,
),
pub DecryptionBlt: unsafe extern "system" fn(
*mut core::ffi::c_void,
*mut core::ffi::c_void,
*mut core::ffi::c_void,
*mut core::ffi::c_void,
*const D3D11_ENCRYPTED_BLOCK_INFO,
u32,
*const core::ffi::c_void,
u32,
*mut core::ffi::c_void,
),
pub StartSessionKeyRefresh: unsafe extern "system" fn(
*mut core::ffi::c_void,
*mut core::ffi::c_void,
u32,
*mut core::ffi::c_void,
),
pub FinishSessionKeyRefresh:
unsafe extern "system" fn(*mut core::ffi::c_void, *mut core::ffi::c_void),
pub GetEncryptionBltKey: unsafe extern "system" fn(
*mut core::ffi::c_void,
*mut core::ffi::c_void,
u32,
*mut core::ffi::c_void,
) -> windows_core::HRESULT,
pub NegotiateAuthenticatedChannelKeyExchange:
unsafe extern "system" fn(
*mut core::ffi::c_void,
*mut core::ffi::c_void,
u32,
*mut core::ffi::c_void,
) -> windows_core::HRESULT,
pub QueryAuthenticatedChannel: unsafe extern "system" fn(
*mut core::ffi::c_void,
*mut core::ffi::c_void,
u32,
*const core::ffi::c_void,
u32,
*mut core::ffi::c_void,
) -> windows_core::HRESULT,
pub ConfigureAuthenticatedChannel: unsafe extern "system" fn(
*mut core::ffi::c_void,
*mut core::ffi::c_void,
u32,
*const core::ffi::c_void,
*mut D3D11_AUTHENTICATED_CONFIGURE_OUTPUT,
) -> windows_core::HRESULT,
pub VideoProcessorSetStreamRotation: unsafe extern "system" fn(
*mut core::ffi::c_void,
*mut core::ffi::c_void,
u32,
crate::Foundation::BOOL,
D3D11_VIDEO_PROCESSOR_ROTATION,
),
pub VideoProcessorGetStreamRotation: unsafe extern "system" fn(
*mut core::ffi::c_void,
*mut core::ffi::c_void,
u32,
*mut crate::Foundation::BOOL,
*mut D3D11_VIDEO_PROCESSOR_ROTATION,
),
}
#[cfg(feature = "Win32_Graphics_Dxgi_Common")]
pub trait ID3D11VideoContext_Impl: ID3D11DeviceChild_Impl {
fn GetDecoderBuffer(
&self,
pdecoder: windows_core::Ref<'_, ID3D11VideoDecoder>,
r#type: D3D11_VIDEO_DECODER_BUFFER_TYPE,
pbuffersize: *mut u32,
ppbuffer: *mut *mut core::ffi::c_void,
) -> windows_core::Result<()>;
fn ReleaseDecoderBuffer(
&self,
pdecoder: windows_core::Ref<'_, ID3D11VideoDecoder>,
r#type: D3D11_VIDEO_DECODER_BUFFER_TYPE,
) -> windows_core::Result<()>;
fn DecoderBeginFrame(
&self,
pdecoder: windows_core::Ref<'_, ID3D11VideoDecoder>,
pview: windows_core::Ref<'_, ID3D11VideoDecoderOutputView>,
contentkeysize: u32,
pcontentkey: *const core::ffi::c_void,
) -> windows_core::Result<()>;
fn DecoderEndFrame(
&self,
pdecoder: windows_core::Ref<'_, ID3D11VideoDecoder>,
) -> windows_core::Result<()>;
fn SubmitDecoderBuffers(
&self,
pdecoder: windows_core::Ref<'_, ID3D11VideoDecoder>,
numbuffers: u32,
pbufferdesc: *const D3D11_VIDEO_DECODER_BUFFER_DESC,
) -> windows_core::Result<()>;
fn DecoderExtension(
&self,
pdecoder: windows_core::Ref<'_, ID3D11VideoDecoder>,
pextensiondata: *const D3D11_VIDEO_DECODER_EXTENSION,
) -> i32;
fn VideoProcessorSetOutputTargetRect(
&self,
pvideoprocessor: windows_core::Ref<'_, ID3D11VideoProcessor>,
enable: crate::Foundation::BOOL,
prect: *const crate::Foundation::RECT,
);
fn VideoProcessorSetOutputBackgroundColor(
&self,
pvideoprocessor: windows_core::Ref<'_, ID3D11VideoProcessor>,
ycbcr: crate::Foundation::BOOL,
pcolor: *const D3D11_VIDEO_COLOR,
);
fn VideoProcessorSetOutputColorSpace(
&self,
pvideoprocessor: windows_core::Ref<'_, ID3D11VideoProcessor>,
pcolorspace: *const D3D11_VIDEO_PROCESSOR_COLOR_SPACE,
);
fn VideoProcessorSetOutputAlphaFillMode(
&self,
pvideoprocessor: windows_core::Ref<'_, ID3D11VideoProcessor>,
alphafillmode: D3D11_VIDEO_PROCESSOR_ALPHA_FILL_MODE,
streamindex: u32,
);
fn VideoProcessorSetOutputConstriction(
&self,
pvideoprocessor: windows_core::Ref<'_, ID3D11VideoProcessor>,
enable: crate::Foundation::BOOL,
size: &crate::Foundation::SIZE,
);
fn VideoProcessorSetOutputStereoMode(
&self,
pvideoprocessor: windows_core::Ref<'_, ID3D11VideoProcessor>,
enable: crate::Foundation::BOOL,
);
fn VideoProcessorSetOutputExtension(
&self,
pvideoprocessor: windows_core::Ref<'_, ID3D11VideoProcessor>,
pextensionguid: *const windows_core::GUID,
datasize: u32,
pdata: *const core::ffi::c_void,
) -> i32;
fn VideoProcessorGetOutputTargetRect(
&self,
pvideoprocessor: windows_core::Ref<'_, ID3D11VideoProcessor>,
enabled: *mut crate::Foundation::BOOL,
prect: *mut crate::Foundation::RECT,
);
fn VideoProcessorGetOutputBackgroundColor(
&self,
pvideoprocessor: windows_core::Ref<'_, ID3D11VideoProcessor>,
pycbcr: *mut crate::Foundation::BOOL,
pcolor: *mut D3D11_VIDEO_COLOR,
);
fn VideoProcessorGetOutputColorSpace(
&self,
pvideoprocessor: windows_core::Ref<'_, ID3D11VideoProcessor>,
pcolorspace: *mut D3D11_VIDEO_PROCESSOR_COLOR_SPACE,
);
fn VideoProcessorGetOutputAlphaFillMode(
&self,
pvideoprocessor: windows_core::Ref<'_, ID3D11VideoProcessor>,
palphafillmode: *mut D3D11_VIDEO_PROCESSOR_ALPHA_FILL_MODE,
pstreamindex: *mut u32,
);
fn VideoProcessorGetOutputConstriction(
&self,
pvideoprocessor: windows_core::Ref<'_, ID3D11VideoProcessor>,
penabled: *mut crate::Foundation::BOOL,
psize: *mut crate::Foundation::SIZE,
);
fn VideoProcessorGetOutputStereoMode(
&self,
pvideoprocessor: windows_core::Ref<'_, ID3D11VideoProcessor>,
penabled: *mut crate::Foundation::BOOL,
);
fn VideoProcessorGetOutputExtension(
&self,
pvideoprocessor: windows_core::Ref<'_, ID3D11VideoProcessor>,
pextensionguid: *const windows_core::GUID,
datasize: u32,
pdata: *mut core::ffi::c_void,
) -> i32;
fn VideoProcessorSetStreamFrameFormat(
&self,
pvideoprocessor: windows_core::Ref<'_, ID3D11VideoProcessor>,
streamindex: u32,
frameformat: D3D11_VIDEO_FRAME_FORMAT,
);
fn VideoProcessorSetStreamColorSpace(
&self,
pvideoprocessor: windows_core::Ref<'_, ID3D11VideoProcessor>,
streamindex: u32,
pcolorspace: *const D3D11_VIDEO_PROCESSOR_COLOR_SPACE,
);
fn VideoProcessorSetStreamOutputRate(
&self,
pvideoprocessor: windows_core::Ref<'_, ID3D11VideoProcessor>,
streamindex: u32,
outputrate: D3D11_VIDEO_PROCESSOR_OUTPUT_RATE,
repeatframe: crate::Foundation::BOOL,
pcustomrate: *const crate::Dxgi::Common::DXGI_RATIONAL,
);
fn VideoProcessorSetStreamSourceRect(
&self,
pvideoprocessor: windows_core::Ref<'_, ID3D11VideoProcessor>,
streamindex: u32,
enable: crate::Foundation::BOOL,
prect: *const crate::Foundation::RECT,
);
fn VideoProcessorSetStreamDestRect(
&self,
pvideoprocessor: windows_core::Ref<'_, ID3D11VideoProcessor>,
streamindex: u32,
enable: crate::Foundation::BOOL,
prect: *const crate::Foundation::RECT,
);
fn VideoProcessorSetStreamAlpha(
&self,
pvideoprocessor: windows_core::Ref<'_, ID3D11VideoProcessor>,
streamindex: u32,
enable: crate::Foundation::BOOL,
alpha: f32,
);
fn VideoProcessorSetStreamPalette(
&self,
pvideoprocessor: windows_core::Ref<'_, ID3D11VideoProcessor>,
streamindex: u32,
count: u32,
pentries: *const u32,
);
fn VideoProcessorSetStreamPixelAspectRatio(
&self,
pvideoprocessor: windows_core::Ref<'_, ID3D11VideoProcessor>,
streamindex: u32,
enable: crate::Foundation::BOOL,
psourceaspectratio: *const crate::Dxgi::Common::DXGI_RATIONAL,
pdestinationaspectratio: *const crate::Dxgi::Common::DXGI_RATIONAL,
);
fn VideoProcessorSetStreamLumaKey(
&self,
pvideoprocessor: windows_core::Ref<'_, ID3D11VideoProcessor>,
streamindex: u32,
enable: crate::Foundation::BOOL,
lower: f32,
upper: f32,
);
fn VideoProcessorSetStreamStereoFormat(
&self,
pvideoprocessor: windows_core::Ref<'_, ID3D11VideoProcessor>,
streamindex: u32,
enable: crate::Foundation::BOOL,
format: D3D11_VIDEO_PROCESSOR_STEREO_FORMAT,
leftviewframe0: crate::Foundation::BOOL,
baseviewframe0: crate::Foundation::BOOL,
flipmode: D3D11_VIDEO_PROCESSOR_STEREO_FLIP_MODE,
monooffset: i32,
);
fn VideoProcessorSetStreamAutoProcessingMode(
&self,
pvideoprocessor: windows_core::Ref<'_, ID3D11VideoProcessor>,
streamindex: u32,
enable: crate::Foundation::BOOL,
);
fn VideoProcessorSetStreamFilter(
&self,
pvideoprocessor: windows_core::Ref<'_, ID3D11VideoProcessor>,
streamindex: u32,
filter: D3D11_VIDEO_PROCESSOR_FILTER,
enable: crate::Foundation::BOOL,
level: i32,
);
fn VideoProcessorSetStreamExtension(
&self,
pvideoprocessor: windows_core::Ref<'_, ID3D11VideoProcessor>,
streamindex: u32,
pextensionguid: *const windows_core::GUID,
datasize: u32,
pdata: *const core::ffi::c_void,
) -> i32;
fn VideoProcessorGetStreamFrameFormat(
&self,
pvideoprocessor: windows_core::Ref<'_, ID3D11VideoProcessor>,
streamindex: u32,
pframeformat: *mut D3D11_VIDEO_FRAME_FORMAT,
);
fn VideoProcessorGetStreamColorSpace(
&self,
pvideoprocessor: windows_core::Ref<'_, ID3D11VideoProcessor>,
streamindex: u32,
pcolorspace: *mut D3D11_VIDEO_PROCESSOR_COLOR_SPACE,
);
fn VideoProcessorGetStreamOutputRate(
&self,
pvideoprocessor: windows_core::Ref<'_, ID3D11VideoProcessor>,
streamindex: u32,
poutputrate: *mut D3D11_VIDEO_PROCESSOR_OUTPUT_RATE,
prepeatframe: *mut crate::Foundation::BOOL,
pcustomrate: *mut crate::Dxgi::Common::DXGI_RATIONAL,
);
fn VideoProcessorGetStreamSourceRect(
&self,
pvideoprocessor: windows_core::Ref<'_, ID3D11VideoProcessor>,
streamindex: u32,
penabled: *mut crate::Foundation::BOOL,
prect: *mut crate::Foundation::RECT,
);
fn VideoProcessorGetStreamDestRect(
&self,
pvideoprocessor: windows_core::Ref<'_, ID3D11VideoProcessor>,
streamindex: u32,
penabled: *mut crate::Foundation::BOOL,
prect: *mut crate::Foundation::RECT,
);
fn VideoProcessorGetStreamAlpha(
&self,
pvideoprocessor: windows_core::Ref<'_, ID3D11VideoProcessor>,
streamindex: u32,
penabled: *mut crate::Foundation::BOOL,
palpha: *mut f32,
);
fn VideoProcessorGetStreamPalette(
&self,
pvideoprocessor: windows_core::Ref<'_, ID3D11VideoProcessor>,
streamindex: u32,
count: u32,
pentries: *mut u32,
);
fn VideoProcessorGetStreamPixelAspectRatio(
&self,
pvideoprocessor: windows_core::Ref<'_, ID3D11VideoProcessor>,
streamindex: u32,
penabled: *mut crate::Foundation::BOOL,
psourceaspectratio: *mut crate::Dxgi::Common::DXGI_RATIONAL,
pdestinationaspectratio: *mut crate::Dxgi::Common::DXGI_RATIONAL,
);
fn VideoProcessorGetStreamLumaKey(
&self,
pvideoprocessor: windows_core::Ref<'_, ID3D11VideoProcessor>,
streamindex: u32,
penabled: *mut crate::Foundation::BOOL,
plower: *mut f32,
pupper: *mut f32,
);
fn VideoProcessorGetStreamStereoFormat(
&self,
pvideoprocessor: windows_core::Ref<'_, ID3D11VideoProcessor>,
streamindex: u32,
penable: *mut crate::Foundation::BOOL,
pformat: *mut D3D11_VIDEO_PROCESSOR_STEREO_FORMAT,
pleftviewframe0: *mut crate::Foundation::BOOL,
pbaseviewframe0: *mut crate::Foundation::BOOL,
pflipmode: *mut D3D11_VIDEO_PROCESSOR_STEREO_FLIP_MODE,
monooffset: *mut i32,
);
fn VideoProcessorGetStreamAutoProcessingMode(
&self,
pvideoprocessor: windows_core::Ref<'_, ID3D11VideoProcessor>,
streamindex: u32,
penabled: *mut crate::Foundation::BOOL,
);
fn VideoProcessorGetStreamFilter(
&self,
pvideoprocessor: windows_core::Ref<'_, ID3D11VideoProcessor>,
streamindex: u32,
filter: D3D11_VIDEO_PROCESSOR_FILTER,
penabled: *mut crate::Foundation::BOOL,
plevel: *mut i32,
);
fn VideoProcessorGetStreamExtension(
&self,
pvideoprocessor: windows_core::Ref<'_, ID3D11VideoProcessor>,
streamindex: u32,
pextensionguid: *const windows_core::GUID,
datasize: u32,
pdata: *mut core::ffi::c_void,
) -> i32;
fn VideoProcessorBlt(
&self,
pvideoprocessor: windows_core::Ref<'_, ID3D11VideoProcessor>,
pview: windows_core::Ref<'_, ID3D11VideoProcessorOutputView>,
outputframe: u32,
streamcount: u32,
pstreams: *const D3D11_VIDEO_PROCESSOR_STREAM,
) -> windows_core::Result<()>;
fn NegotiateCryptoSessionKeyExchange(
&self,
pcryptosession: windows_core::Ref<'_, ID3D11CryptoSession>,
datasize: u32,
pdata: *mut core::ffi::c_void,
) -> windows_core::Result<()>;
fn EncryptionBlt(
&self,
pcryptosession: windows_core::Ref<'_, ID3D11CryptoSession>,
psrcsurface: windows_core::Ref<'_, ID3D11Texture2D>,
pdstsurface: windows_core::Ref<'_, ID3D11Texture2D>,
ivsize: u32,
piv: *mut core::ffi::c_void,
);
fn DecryptionBlt(
&self,
pcryptosession: windows_core::Ref<'_, ID3D11CryptoSession>,
psrcsurface: windows_core::Ref<'_, ID3D11Texture2D>,
pdstsurface: windows_core::Ref<'_, ID3D11Texture2D>,
pencryptedblockinfo: *const D3D11_ENCRYPTED_BLOCK_INFO,
contentkeysize: u32,
pcontentkey: *const core::ffi::c_void,
ivsize: u32,
piv: *mut core::ffi::c_void,
);
fn StartSessionKeyRefresh(
&self,
pcryptosession: windows_core::Ref<'_, ID3D11CryptoSession>,
randomnumbersize: u32,
prandomnumber: *mut core::ffi::c_void,
);
fn FinishSessionKeyRefresh(&self, pcryptosession: windows_core::Ref<'_, ID3D11CryptoSession>);
fn GetEncryptionBltKey(
&self,
pcryptosession: windows_core::Ref<'_, ID3D11CryptoSession>,
keysize: u32,
preadbackkey: *mut core::ffi::c_void,
) -> windows_core::Result<()>;
fn NegotiateAuthenticatedChannelKeyExchange(
&self,
pchannel: windows_core::Ref<'_, ID3D11AuthenticatedChannel>,
datasize: u32,
pdata: *mut core::ffi::c_void,
) -> windows_core::Result<()>;
fn QueryAuthenticatedChannel(
&self,
pchannel: windows_core::Ref<'_, ID3D11AuthenticatedChannel>,
inputsize: u32,
pinput: *const core::ffi::c_void,
outputsize: u32,
poutput: *mut core::ffi::c_void,
) -> windows_core::Result<()>;
fn ConfigureAuthenticatedChannel(
&self,
pchannel: windows_core::Ref<'_, ID3D11AuthenticatedChannel>,
inputsize: u32,
pinput: *const core::ffi::c_void,
poutput: *mut D3D11_AUTHENTICATED_CONFIGURE_OUTPUT,
) -> windows_core::Result<()>;
fn VideoProcessorSetStreamRotation(
&self,
pvideoprocessor: windows_core::Ref<'_, ID3D11VideoProcessor>,
streamindex: u32,
enable: crate::Foundation::BOOL,
rotation: D3D11_VIDEO_PROCESSOR_ROTATION,
);
fn VideoProcessorGetStreamRotation(
&self,
pvideoprocessor: windows_core::Ref<'_, ID3D11VideoProcessor>,
streamindex: u32,
penable: *mut crate::Foundation::BOOL,
protation: *mut D3D11_VIDEO_PROCESSOR_ROTATION,
);
}
#[cfg(feature = "Win32_Graphics_Dxgi_Common")]
impl ID3D11VideoContext_Vtbl {
pub const fn new<Identity: ID3D11VideoContext_Impl, const OFFSET: isize>() -> Self {
unsafe extern "system" fn GetDecoderBuffer<
Identity: ID3D11VideoContext_Impl,
const OFFSET: isize,
>(
this: *mut core::ffi::c_void,
pdecoder: *mut core::ffi::c_void,
r#type: D3D11_VIDEO_DECODER_BUFFER_TYPE,
pbuffersize: *mut u32,
ppbuffer: *mut *mut core::ffi::c_void,
) -> windows_core::HRESULT {
unsafe {
let this: &Identity =
&*((this as *const *const ()).offset(OFFSET) as *const Identity);
ID3D11VideoContext_Impl::GetDecoderBuffer(
this,
core::mem::transmute_copy(&pdecoder),
core::mem::transmute_copy(&r#type),
core::mem::transmute_copy(&pbuffersize),
core::mem::transmute_copy(&ppbuffer),
)
.into()
}
}
unsafe extern "system" fn ReleaseDecoderBuffer<
Identity: ID3D11VideoContext_Impl,
const OFFSET: isize,
>(
this: *mut core::ffi::c_void,
pdecoder: *mut core::ffi::c_void,
r#type: D3D11_VIDEO_DECODER_BUFFER_TYPE,
) -> windows_core::HRESULT {
unsafe {
let this: &Identity =
&*((this as *const *const ()).offset(OFFSET) as *const Identity);
ID3D11VideoContext_Impl::ReleaseDecoderBuffer(
this,
core::mem::transmute_copy(&pdecoder),
core::mem::transmute_copy(&r#type),
)
.into()
}
}
unsafe extern "system" fn DecoderBeginFrame<
Identity: ID3D11VideoContext_Impl,
const OFFSET: isize,
>(
this: *mut core::ffi::c_void,
pdecoder: *mut core::ffi::c_void,
pview: *mut core::ffi::c_void,
contentkeysize: u32,
pcontentkey: *const core::ffi::c_void,
) -> windows_core::HRESULT {
unsafe {
let this: &Identity =
&*((this as *const *const ()).offset(OFFSET) as *const Identity);
ID3D11VideoContext_Impl::DecoderBeginFrame(
this,
core::mem::transmute_copy(&pdecoder),
core::mem::transmute_copy(&pview),
core::mem::transmute_copy(&contentkeysize),
core::mem::transmute_copy(&pcontentkey),
)
.into()
}
}
unsafe extern "system" fn DecoderEndFrame<
Identity: ID3D11VideoContext_Impl,
const OFFSET: isize,
>(
this: *mut core::ffi::c_void,
pdecoder: *mut core::ffi::c_void,
) -> windows_core::HRESULT {
unsafe {
let this: &Identity =
&*((this as *const *const ()).offset(OFFSET) as *const Identity);
ID3D11VideoContext_Impl::DecoderEndFrame(this, core::mem::transmute_copy(&pdecoder))
.into()
}
}
unsafe extern "system" fn SubmitDecoderBuffers<
Identity: ID3D11VideoContext_Impl,
const OFFSET: isize,
>(
this: *mut core::ffi::c_void,
pdecoder: *mut core::ffi::c_void,
numbuffers: u32,
pbufferdesc: *const D3D11_VIDEO_DECODER_BUFFER_DESC,
) -> windows_core::HRESULT {
unsafe {
let this: &Identity =
&*((this as *const *const ()).offset(OFFSET) as *const Identity);
ID3D11VideoContext_Impl::SubmitDecoderBuffers(
this,
core::mem::transmute_copy(&pdecoder),
core::mem::transmute_copy(&numbuffers),
core::mem::transmute_copy(&pbufferdesc),
)
.into()
}
}
unsafe extern "system" fn DecoderExtension<
Identity: ID3D11VideoContext_Impl,
const OFFSET: isize,
>(
this: *mut core::ffi::c_void,
pdecoder: *mut core::ffi::c_void,
pextensiondata: *const D3D11_VIDEO_DECODER_EXTENSION,
) -> i32 {
unsafe {
let this: &Identity =
&*((this as *const *const ()).offset(OFFSET) as *const Identity);
ID3D11VideoContext_Impl::DecoderExtension(
this,
core::mem::transmute_copy(&pdecoder),
core::mem::transmute_copy(&pextensiondata),
)
}
}
unsafe extern "system" fn VideoProcessorSetOutputTargetRect<
Identity: ID3D11VideoContext_Impl,
const OFFSET: isize,
>(
this: *mut core::ffi::c_void,
pvideoprocessor: *mut core::ffi::c_void,
enable: crate::Foundation::BOOL,
prect: *const crate::Foundation::RECT,
) {
unsafe {
let this: &Identity =
&*((this as *const *const ()).offset(OFFSET) as *const Identity);
ID3D11VideoContext_Impl::VideoProcessorSetOutputTargetRect(
this,
core::mem::transmute_copy(&pvideoprocessor),
core::mem::transmute_copy(&enable),
core::mem::transmute_copy(&prect),
)
}
}
unsafe extern "system" fn VideoProcessorSetOutputBackgroundColor<
Identity: ID3D11VideoContext_Impl,
const OFFSET: isize,
>(
this: *mut core::ffi::c_void,
pvideoprocessor: *mut core::ffi::c_void,
ycbcr: crate::Foundation::BOOL,
pcolor: *const D3D11_VIDEO_COLOR,
) {
unsafe {
let this: &Identity =
&*((this as *const *const ()).offset(OFFSET) as *const Identity);
ID3D11VideoContext_Impl::VideoProcessorSetOutputBackgroundColor(
this,
core::mem::transmute_copy(&pvideoprocessor),
core::mem::transmute_copy(&ycbcr),
core::mem::transmute_copy(&pcolor),
)
}
}
unsafe extern "system" fn VideoProcessorSetOutputColorSpace<
Identity: ID3D11VideoContext_Impl,
const OFFSET: isize,
>(
this: *mut core::ffi::c_void,
pvideoprocessor: *mut core::ffi::c_void,
pcolorspace: *const D3D11_VIDEO_PROCESSOR_COLOR_SPACE,
) {
unsafe {
let this: &Identity =
&*((this as *const *const ()).offset(OFFSET) as *const Identity);
ID3D11VideoContext_Impl::VideoProcessorSetOutputColorSpace(
this,
core::mem::transmute_copy(&pvideoprocessor),
core::mem::transmute_copy(&pcolorspace),
)
}
}
unsafe extern "system" fn VideoProcessorSetOutputAlphaFillMode<
Identity: ID3D11VideoContext_Impl,
const OFFSET: isize,
>(
this: *mut core::ffi::c_void,
pvideoprocessor: *mut core::ffi::c_void,
alphafillmode: D3D11_VIDEO_PROCESSOR_ALPHA_FILL_MODE,
streamindex: u32,
) {
unsafe {
let this: &Identity =
&*((this as *const *const ()).offset(OFFSET) as *const Identity);
ID3D11VideoContext_Impl::VideoProcessorSetOutputAlphaFillMode(
this,
core::mem::transmute_copy(&pvideoprocessor),
core::mem::transmute_copy(&alphafillmode),
core::mem::transmute_copy(&streamindex),
)
}
}
unsafe extern "system" fn VideoProcessorSetOutputConstriction<
Identity: ID3D11VideoContext_Impl,
const OFFSET: isize,
>(
this: *mut core::ffi::c_void,
pvideoprocessor: *mut core::ffi::c_void,
enable: crate::Foundation::BOOL,
size: crate::Foundation::SIZE,
) {
unsafe {
let this: &Identity =
&*((this as *const *const ()).offset(OFFSET) as *const Identity);
ID3D11VideoContext_Impl::VideoProcessorSetOutputConstriction(
this,
core::mem::transmute_copy(&pvideoprocessor),
core::mem::transmute_copy(&enable),
core::mem::transmute(&size),
)
}
}
unsafe extern "system" fn VideoProcessorSetOutputStereoMode<
Identity: ID3D11VideoContext_Impl,
const OFFSET: isize,
>(
this: *mut core::ffi::c_void,
pvideoprocessor: *mut core::ffi::c_void,
enable: crate::Foundation::BOOL,
) {
unsafe {
let this: &Identity =
&*((this as *const *const ()).offset(OFFSET) as *const Identity);
ID3D11VideoContext_Impl::VideoProcessorSetOutputStereoMode(
this,
core::mem::transmute_copy(&pvideoprocessor),
core::mem::transmute_copy(&enable),
)
}
}
unsafe extern "system" fn VideoProcessorSetOutputExtension<
Identity: ID3D11VideoContext_Impl,
const OFFSET: isize,
>(
this: *mut core::ffi::c_void,
pvideoprocessor: *mut core::ffi::c_void,
pextensionguid: *const windows_core::GUID,
datasize: u32,
pdata: *const core::ffi::c_void,
) -> i32 {
unsafe {
let this: &Identity =
&*((this as *const *const ()).offset(OFFSET) as *const Identity);
ID3D11VideoContext_Impl::VideoProcessorSetOutputExtension(
this,
core::mem::transmute_copy(&pvideoprocessor),
core::mem::transmute_copy(&pextensionguid),
core::mem::transmute_copy(&datasize),
core::mem::transmute_copy(&pdata),
)
}
}
unsafe extern "system" fn VideoProcessorGetOutputTargetRect<
Identity: ID3D11VideoContext_Impl,
const OFFSET: isize,
>(
this: *mut core::ffi::c_void,
pvideoprocessor: *mut core::ffi::c_void,
enabled: *mut crate::Foundation::BOOL,
prect: *mut crate::Foundation::RECT,
) {
unsafe {
let this: &Identity =
&*((this as *const *const ()).offset(OFFSET) as *const Identity);
ID3D11VideoContext_Impl::VideoProcessorGetOutputTargetRect(
this,
core::mem::transmute_copy(&pvideoprocessor),
core::mem::transmute_copy(&enabled),
core::mem::transmute_copy(&prect),
)
}
}
unsafe extern "system" fn VideoProcessorGetOutputBackgroundColor<
Identity: ID3D11VideoContext_Impl,
const OFFSET: isize,
>(
this: *mut core::ffi::c_void,
pvideoprocessor: *mut core::ffi::c_void,
pycbcr: *mut crate::Foundation::BOOL,
pcolor: *mut D3D11_VIDEO_COLOR,
) {
unsafe {
let this: &Identity =
&*((this as *const *const ()).offset(OFFSET) as *const Identity);
ID3D11VideoContext_Impl::VideoProcessorGetOutputBackgroundColor(
this,
core::mem::transmute_copy(&pvideoprocessor),
core::mem::transmute_copy(&pycbcr),
core::mem::transmute_copy(&pcolor),
)
}
}
unsafe extern "system" fn VideoProcessorGetOutputColorSpace<
Identity: ID3D11VideoContext_Impl,
const OFFSET: isize,
>(
this: *mut core::ffi::c_void,
pvideoprocessor: *mut core::ffi::c_void,
pcolorspace: *mut D3D11_VIDEO_PROCESSOR_COLOR_SPACE,
) {
unsafe {
let this: &Identity =
&*((this as *const *const ()).offset(OFFSET) as *const Identity);
ID3D11VideoContext_Impl::VideoProcessorGetOutputColorSpace(
this,
core::mem::transmute_copy(&pvideoprocessor),
core::mem::transmute_copy(&pcolorspace),
)
}
}
unsafe extern "system" fn VideoProcessorGetOutputAlphaFillMode<
Identity: ID3D11VideoContext_Impl,
const OFFSET: isize,
>(
this: *mut core::ffi::c_void,
pvideoprocessor: *mut core::ffi::c_void,
palphafillmode: *mut D3D11_VIDEO_PROCESSOR_ALPHA_FILL_MODE,
pstreamindex: *mut u32,
) {
unsafe {
let this: &Identity =
&*((this as *const *const ()).offset(OFFSET) as *const Identity);
ID3D11VideoContext_Impl::VideoProcessorGetOutputAlphaFillMode(
this,
core::mem::transmute_copy(&pvideoprocessor),
core::mem::transmute_copy(&palphafillmode),
core::mem::transmute_copy(&pstreamindex),
)
}
}
unsafe extern "system" fn VideoProcessorGetOutputConstriction<
Identity: ID3D11VideoContext_Impl,
const OFFSET: isize,
>(
this: *mut core::ffi::c_void,
pvideoprocessor: *mut core::ffi::c_void,
penabled: *mut crate::Foundation::BOOL,
psize: *mut crate::Foundation::SIZE,
) {
unsafe {
let this: &Identity =
&*((this as *const *const ()).offset(OFFSET) as *const Identity);
ID3D11VideoContext_Impl::VideoProcessorGetOutputConstriction(
this,
core::mem::transmute_copy(&pvideoprocessor),
core::mem::transmute_copy(&penabled),
core::mem::transmute_copy(&psize),
)
}
}
unsafe extern "system" fn VideoProcessorGetOutputStereoMode<
Identity: ID3D11VideoContext_Impl,
const OFFSET: isize,
>(
this: *mut core::ffi::c_void,
pvideoprocessor: *mut core::ffi::c_void,
penabled: *mut crate::Foundation::BOOL,
) {
unsafe {
let this: &Identity =
&*((this as *const *const ()).offset(OFFSET) as *const Identity);
ID3D11VideoContext_Impl::VideoProcessorGetOutputStereoMode(
this,
core::mem::transmute_copy(&pvideoprocessor),
core::mem::transmute_copy(&penabled),
)
}
}
unsafe extern "system" fn VideoProcessorGetOutputExtension<
Identity: ID3D11VideoContext_Impl,
const OFFSET: isize,
>(
this: *mut core::ffi::c_void,
pvideoprocessor: *mut core::ffi::c_void,
pextensionguid: *const windows_core::GUID,
datasize: u32,
pdata: *mut core::ffi::c_void,
) -> i32 {
unsafe {
let this: &Identity =
&*((this as *const *const ()).offset(OFFSET) as *const Identity);
ID3D11VideoContext_Impl::VideoProcessorGetOutputExtension(
this,
core::mem::transmute_copy(&pvideoprocessor),
core::mem::transmute_copy(&pextensionguid),
core::mem::transmute_copy(&datasize),
core::mem::transmute_copy(&pdata),
)
}
}
unsafe extern "system" fn VideoProcessorSetStreamFrameFormat<
Identity: ID3D11VideoContext_Impl,
const OFFSET: isize,
>(
this: *mut core::ffi::c_void,
pvideoprocessor: *mut core::ffi::c_void,
streamindex: u32,
frameformat: D3D11_VIDEO_FRAME_FORMAT,
) {
unsafe {
let this: &Identity =
&*((this as *const *const ()).offset(OFFSET) as *const Identity);
ID3D11VideoContext_Impl::VideoProcessorSetStreamFrameFormat(
this,
core::mem::transmute_copy(&pvideoprocessor),
core::mem::transmute_copy(&streamindex),
core::mem::transmute_copy(&frameformat),
)
}
}
unsafe extern "system" fn VideoProcessorSetStreamColorSpace<
Identity: ID3D11VideoContext_Impl,
const OFFSET: isize,
>(
this: *mut core::ffi::c_void,
pvideoprocessor: *mut core::ffi::c_void,
streamindex: u32,
pcolorspace: *const D3D11_VIDEO_PROCESSOR_COLOR_SPACE,
) {
unsafe {
let this: &Identity =
&*((this as *const *const ()).offset(OFFSET) as *const Identity);
ID3D11VideoContext_Impl::VideoProcessorSetStreamColorSpace(
this,
core::mem::transmute_copy(&pvideoprocessor),
core::mem::transmute_copy(&streamindex),
core::mem::transmute_copy(&pcolorspace),
)
}
}
unsafe extern "system" fn VideoProcessorSetStreamOutputRate<
Identity: ID3D11VideoContext_Impl,
const OFFSET: isize,
>(
this: *mut core::ffi::c_void,
pvideoprocessor: *mut core::ffi::c_void,
streamindex: u32,
outputrate: D3D11_VIDEO_PROCESSOR_OUTPUT_RATE,
repeatframe: crate::Foundation::BOOL,
pcustomrate: *const crate::Dxgi::Common::DXGI_RATIONAL,
) {
unsafe {
let this: &Identity =
&*((this as *const *const ()).offset(OFFSET) as *const Identity);
ID3D11VideoContext_Impl::VideoProcessorSetStreamOutputRate(
this,
core::mem::transmute_copy(&pvideoprocessor),
core::mem::transmute_copy(&streamindex),
core::mem::transmute_copy(&outputrate),
core::mem::transmute_copy(&repeatframe),
core::mem::transmute_copy(&pcustomrate),
)
}
}
unsafe extern "system" fn VideoProcessorSetStreamSourceRect<
Identity: ID3D11VideoContext_Impl,
const OFFSET: isize,
>(
this: *mut core::ffi::c_void,
pvideoprocessor: *mut core::ffi::c_void,
streamindex: u32,
enable: crate::Foundation::BOOL,
prect: *const crate::Foundation::RECT,
) {
unsafe {
let this: &Identity =
&*((this as *const *const ()).offset(OFFSET) as *const Identity);
ID3D11VideoContext_Impl::VideoProcessorSetStreamSourceRect(
this,
core::mem::transmute_copy(&pvideoprocessor),
core::mem::transmute_copy(&streamindex),
core::mem::transmute_copy(&enable),
core::mem::transmute_copy(&prect),
)
}
}
unsafe extern "system" fn VideoProcessorSetStreamDestRect<
Identity: ID3D11VideoContext_Impl,
const OFFSET: isize,
>(
this: *mut core::ffi::c_void,
pvideoprocessor: *mut core::ffi::c_void,
streamindex: u32,
enable: crate::Foundation::BOOL,
prect: *const crate::Foundation::RECT,
) {
unsafe {
let this: &Identity =
&*((this as *const *const ()).offset(OFFSET) as *const Identity);
ID3D11VideoContext_Impl::VideoProcessorSetStreamDestRect(
this,
core::mem::transmute_copy(&pvideoprocessor),
core::mem::transmute_copy(&streamindex),
core::mem::transmute_copy(&enable),
core::mem::transmute_copy(&prect),
)
}
}
unsafe extern "system" fn VideoProcessorSetStreamAlpha<
Identity: ID3D11VideoContext_Impl,
const OFFSET: isize,
>(
this: *mut core::ffi::c_void,
pvideoprocessor: *mut core::ffi::c_void,
streamindex: u32,
enable: crate::Foundation::BOOL,
alpha: f32,
) {
unsafe {
let this: &Identity =
&*((this as *const *const ()).offset(OFFSET) as *const Identity);
ID3D11VideoContext_Impl::VideoProcessorSetStreamAlpha(
this,
core::mem::transmute_copy(&pvideoprocessor),
core::mem::transmute_copy(&streamindex),
core::mem::transmute_copy(&enable),
core::mem::transmute_copy(&alpha),
)
}
}
unsafe extern "system" fn VideoProcessorSetStreamPalette<
Identity: ID3D11VideoContext_Impl,
const OFFSET: isize,
>(
this: *mut core::ffi::c_void,
pvideoprocessor: *mut core::ffi::c_void,
streamindex: u32,
count: u32,
pentries: *const u32,
) {
unsafe {
let this: &Identity =
&*((this as *const *const ()).offset(OFFSET) as *const Identity);
ID3D11VideoContext_Impl::VideoProcessorSetStreamPalette(
this,
core::mem::transmute_copy(&pvideoprocessor),
core::mem::transmute_copy(&streamindex),
core::mem::transmute_copy(&count),
core::mem::transmute_copy(&pentries),
)
}
}
unsafe extern "system" fn VideoProcessorSetStreamPixelAspectRatio<
Identity: ID3D11VideoContext_Impl,
const OFFSET: isize,
>(
this: *mut core::ffi::c_void,
pvideoprocessor: *mut core::ffi::c_void,
streamindex: u32,
enable: crate::Foundation::BOOL,
psourceaspectratio: *const crate::Dxgi::Common::DXGI_RATIONAL,
pdestinationaspectratio: *const crate::Dxgi::Common::DXGI_RATIONAL,
) {
unsafe {
let this: &Identity =
&*((this as *const *const ()).offset(OFFSET) as *const Identity);
ID3D11VideoContext_Impl::VideoProcessorSetStreamPixelAspectRatio(
this,
core::mem::transmute_copy(&pvideoprocessor),
core::mem::transmute_copy(&streamindex),
core::mem::transmute_copy(&enable),
core::mem::transmute_copy(&psourceaspectratio),
core::mem::transmute_copy(&pdestinationaspectratio),
)
}
}
unsafe extern "system" fn VideoProcessorSetStreamLumaKey<
Identity: ID3D11VideoContext_Impl,
const OFFSET: isize,
>(
this: *mut core::ffi::c_void,
pvideoprocessor: *mut core::ffi::c_void,
streamindex: u32,
enable: crate::Foundation::BOOL,
lower: f32,
upper: f32,
) {
unsafe {
let this: &Identity =
&*((this as *const *const ()).offset(OFFSET) as *const Identity);
ID3D11VideoContext_Impl::VideoProcessorSetStreamLumaKey(
this,
core::mem::transmute_copy(&pvideoprocessor),
core::mem::transmute_copy(&streamindex),
core::mem::transmute_copy(&enable),
core::mem::transmute_copy(&lower),
core::mem::transmute_copy(&upper),
)
}
}
unsafe extern "system" fn VideoProcessorSetStreamStereoFormat<
Identity: ID3D11VideoContext_Impl,
const OFFSET: isize,
>(
this: *mut core::ffi::c_void,
pvideoprocessor: *mut core::ffi::c_void,
streamindex: u32,
enable: crate::Foundation::BOOL,
format: D3D11_VIDEO_PROCESSOR_STEREO_FORMAT,
leftviewframe0: crate::Foundation::BOOL,
baseviewframe0: crate::Foundation::BOOL,
flipmode: D3D11_VIDEO_PROCESSOR_STEREO_FLIP_MODE,
monooffset: i32,
) {
unsafe {
let this: &Identity =
&*((this as *const *const ()).offset(OFFSET) as *const Identity);
ID3D11VideoContext_Impl::VideoProcessorSetStreamStereoFormat(
this,
core::mem::transmute_copy(&pvideoprocessor),
core::mem::transmute_copy(&streamindex),
core::mem::transmute_copy(&enable),
core::mem::transmute_copy(&format),
core::mem::transmute_copy(&leftviewframe0),
core::mem::transmute_copy(&baseviewframe0),
core::mem::transmute_copy(&flipmode),
core::mem::transmute_copy(&monooffset),
)
}
}
unsafe extern "system" fn VideoProcessorSetStreamAutoProcessingMode<
Identity: ID3D11VideoContext_Impl,
const OFFSET: isize,
>(
this: *mut core::ffi::c_void,
pvideoprocessor: *mut core::ffi::c_void,
streamindex: u32,
enable: crate::Foundation::BOOL,
) {
unsafe {
let this: &Identity =
&*((this as *const *const ()).offset(OFFSET) as *const Identity);
ID3D11VideoContext_Impl::VideoProcessorSetStreamAutoProcessingMode(
this,
core::mem::transmute_copy(&pvideoprocessor),
core::mem::transmute_copy(&streamindex),
core::mem::transmute_copy(&enable),
)
}
}
unsafe extern "system" fn VideoProcessorSetStreamFilter<
Identity: ID3D11VideoContext_Impl,
const OFFSET: isize,
>(
this: *mut core::ffi::c_void,
pvideoprocessor: *mut core::ffi::c_void,
streamindex: u32,
filter: D3D11_VIDEO_PROCESSOR_FILTER,
enable: crate::Foundation::BOOL,
level: i32,
) {
unsafe {
let this: &Identity =
&*((this as *const *const ()).offset(OFFSET) as *const Identity);
ID3D11VideoContext_Impl::VideoProcessorSetStreamFilter(
this,
core::mem::transmute_copy(&pvideoprocessor),
core::mem::transmute_copy(&streamindex),
core::mem::transmute_copy(&filter),
core::mem::transmute_copy(&enable),
core::mem::transmute_copy(&level),
)
}
}
unsafe extern "system" fn VideoProcessorSetStreamExtension<
Identity: ID3D11VideoContext_Impl,
const OFFSET: isize,
>(
this: *mut core::ffi::c_void,
pvideoprocessor: *mut core::ffi::c_void,
streamindex: u32,
pextensionguid: *const windows_core::GUID,
datasize: u32,
pdata: *const core::ffi::c_void,
) -> i32 {
unsafe {
let this: &Identity =
&*((this as *const *const ()).offset(OFFSET) as *const Identity);
ID3D11VideoContext_Impl::VideoProcessorSetStreamExtension(
this,
core::mem::transmute_copy(&pvideoprocessor),
core::mem::transmute_copy(&streamindex),
core::mem::transmute_copy(&pextensionguid),
core::mem::transmute_copy(&datasize),
core::mem::transmute_copy(&pdata),
)
}
}
unsafe extern "system" fn VideoProcessorGetStreamFrameFormat<
Identity: ID3D11VideoContext_Impl,
const OFFSET: isize,
>(
this: *mut core::ffi::c_void,
pvideoprocessor: *mut core::ffi::c_void,
streamindex: u32,
pframeformat: *mut D3D11_VIDEO_FRAME_FORMAT,
) {
unsafe {
let this: &Identity =
&*((this as *const *const ()).offset(OFFSET) as *const Identity);
ID3D11VideoContext_Impl::VideoProcessorGetStreamFrameFormat(
this,
core::mem::transmute_copy(&pvideoprocessor),
core::mem::transmute_copy(&streamindex),
core::mem::transmute_copy(&pframeformat),
)
}
}
unsafe extern "system" fn VideoProcessorGetStreamColorSpace<
Identity: ID3D11VideoContext_Impl,
const OFFSET: isize,
>(
this: *mut core::ffi::c_void,
pvideoprocessor: *mut core::ffi::c_void,
streamindex: u32,
pcolorspace: *mut D3D11_VIDEO_PROCESSOR_COLOR_SPACE,
) {
unsafe {
let this: &Identity =
&*((this as *const *const ()).offset(OFFSET) as *const Identity);
ID3D11VideoContext_Impl::VideoProcessorGetStreamColorSpace(
this,
core::mem::transmute_copy(&pvideoprocessor),
core::mem::transmute_copy(&streamindex),
core::mem::transmute_copy(&pcolorspace),
)
}
}
unsafe extern "system" fn VideoProcessorGetStreamOutputRate<
Identity: ID3D11VideoContext_Impl,
const OFFSET: isize,
>(
this: *mut core::ffi::c_void,
pvideoprocessor: *mut core::ffi::c_void,
streamindex: u32,
poutputrate: *mut D3D11_VIDEO_PROCESSOR_OUTPUT_RATE,
prepeatframe: *mut crate::Foundation::BOOL,
pcustomrate: *mut crate::Dxgi::Common::DXGI_RATIONAL,
) {
unsafe {
let this: &Identity =
&*((this as *const *const ()).offset(OFFSET) as *const Identity);
ID3D11VideoContext_Impl::VideoProcessorGetStreamOutputRate(
this,
core::mem::transmute_copy(&pvideoprocessor),
core::mem::transmute_copy(&streamindex),
core::mem::transmute_copy(&poutputrate),
core::mem::transmute_copy(&prepeatframe),
core::mem::transmute_copy(&pcustomrate),
)
}
}
unsafe extern "system" fn VideoProcessorGetStreamSourceRect<
Identity: ID3D11VideoContext_Impl,
const OFFSET: isize,
>(
this: *mut core::ffi::c_void,
pvideoprocessor: *mut core::ffi::c_void,
streamindex: u32,
penabled: *mut crate::Foundation::BOOL,
prect: *mut crate::Foundation::RECT,
) {
unsafe {
let this: &Identity =
&*((this as *const *const ()).offset(OFFSET) as *const Identity);
ID3D11VideoContext_Impl::VideoProcessorGetStreamSourceRect(
this,
core::mem::transmute_copy(&pvideoprocessor),
core::mem::transmute_copy(&streamindex),
core::mem::transmute_copy(&penabled),
core::mem::transmute_copy(&prect),
)
}
}
unsafe extern "system" fn VideoProcessorGetStreamDestRect<
Identity: ID3D11VideoContext_Impl,
const OFFSET: isize,
>(
this: *mut core::ffi::c_void,
pvideoprocessor: *mut core::ffi::c_void,
streamindex: u32,
penabled: *mut crate::Foundation::BOOL,
prect: *mut crate::Foundation::RECT,
) {
unsafe {
let this: &Identity =
&*((this as *const *const ()).offset(OFFSET) as *const Identity);
ID3D11VideoContext_Impl::VideoProcessorGetStreamDestRect(
this,
core::mem::transmute_copy(&pvideoprocessor),
core::mem::transmute_copy(&streamindex),
core::mem::transmute_copy(&penabled),
core::mem::transmute_copy(&prect),
)
}
}
unsafe extern "system" fn VideoProcessorGetStreamAlpha<
Identity: ID3D11VideoContext_Impl,
const OFFSET: isize,
>(
this: *mut core::ffi::c_void,
pvideoprocessor: *mut core::ffi::c_void,
streamindex: u32,
penabled: *mut crate::Foundation::BOOL,
palpha: *mut f32,
) {
unsafe {
let this: &Identity =
&*((this as *const *const ()).offset(OFFSET) as *const Identity);
ID3D11VideoContext_Impl::VideoProcessorGetStreamAlpha(
this,
core::mem::transmute_copy(&pvideoprocessor),
core::mem::transmute_copy(&streamindex),
core::mem::transmute_copy(&penabled),
core::mem::transmute_copy(&palpha),
)
}
}
unsafe extern "system" fn VideoProcessorGetStreamPalette<
Identity: ID3D11VideoContext_Impl,
const OFFSET: isize,
>(
this: *mut core::ffi::c_void,
pvideoprocessor: *mut core::ffi::c_void,
streamindex: u32,
count: u32,
pentries: *mut u32,
) {
unsafe {
let this: &Identity =
&*((this as *const *const ()).offset(OFFSET) as *const Identity);
ID3D11VideoContext_Impl::VideoProcessorGetStreamPalette(
this,
core::mem::transmute_copy(&pvideoprocessor),
core::mem::transmute_copy(&streamindex),
core::mem::transmute_copy(&count),
core::mem::transmute_copy(&pentries),
)
}
}
unsafe extern "system" fn VideoProcessorGetStreamPixelAspectRatio<
Identity: ID3D11VideoContext_Impl,
const OFFSET: isize,
>(
this: *mut core::ffi::c_void,
pvideoprocessor: *mut core::ffi::c_void,
streamindex: u32,
penabled: *mut crate::Foundation::BOOL,
psourceaspectratio: *mut crate::Dxgi::Common::DXGI_RATIONAL,
pdestinationaspectratio: *mut crate::Dxgi::Common::DXGI_RATIONAL,
) {
unsafe {
let this: &Identity =
&*((this as *const *const ()).offset(OFFSET) as *const Identity);
ID3D11VideoContext_Impl::VideoProcessorGetStreamPixelAspectRatio(
this,
core::mem::transmute_copy(&pvideoprocessor),
core::mem::transmute_copy(&streamindex),
core::mem::transmute_copy(&penabled),
core::mem::transmute_copy(&psourceaspectratio),
core::mem::transmute_copy(&pdestinationaspectratio),
)
}
}
unsafe extern "system" fn VideoProcessorGetStreamLumaKey<
Identity: ID3D11VideoContext_Impl,
const OFFSET: isize,
>(
this: *mut core::ffi::c_void,
pvideoprocessor: *mut core::ffi::c_void,
streamindex: u32,
penabled: *mut crate::Foundation::BOOL,
plower: *mut f32,
pupper: *mut f32,
) {
unsafe {
let this: &Identity =
&*((this as *const *const ()).offset(OFFSET) as *const Identity);
ID3D11VideoContext_Impl::VideoProcessorGetStreamLumaKey(
this,
core::mem::transmute_copy(&pvideoprocessor),
core::mem::transmute_copy(&streamindex),
core::mem::transmute_copy(&penabled),
core::mem::transmute_copy(&plower),
core::mem::transmute_copy(&pupper),
)
}
}
unsafe extern "system" fn VideoProcessorGetStreamStereoFormat<
Identity: ID3D11VideoContext_Impl,
const OFFSET: isize,
>(
this: *mut core::ffi::c_void,
pvideoprocessor: *mut core::ffi::c_void,
streamindex: u32,
penable: *mut crate::Foundation::BOOL,
pformat: *mut D3D11_VIDEO_PROCESSOR_STEREO_FORMAT,
pleftviewframe0: *mut crate::Foundation::BOOL,
pbaseviewframe0: *mut crate::Foundation::BOOL,
pflipmode: *mut D3D11_VIDEO_PROCESSOR_STEREO_FLIP_MODE,
monooffset: *mut i32,
) {
unsafe {
let this: &Identity =
&*((this as *const *const ()).offset(OFFSET) as *const Identity);
ID3D11VideoContext_Impl::VideoProcessorGetStreamStereoFormat(
this,
core::mem::transmute_copy(&pvideoprocessor),
core::mem::transmute_copy(&streamindex),
core::mem::transmute_copy(&penable),
core::mem::transmute_copy(&pformat),
core::mem::transmute_copy(&pleftviewframe0),
core::mem::transmute_copy(&pbaseviewframe0),
core::mem::transmute_copy(&pflipmode),
core::mem::transmute_copy(&monooffset),
)
}
}
unsafe extern "system" fn VideoProcessorGetStreamAutoProcessingMode<
Identity: ID3D11VideoContext_Impl,
const OFFSET: isize,
>(
this: *mut core::ffi::c_void,
pvideoprocessor: *mut core::ffi::c_void,
streamindex: u32,
penabled: *mut crate::Foundation::BOOL,
) {
unsafe {
let this: &Identity =
&*((this as *const *const ()).offset(OFFSET) as *const Identity);
ID3D11VideoContext_Impl::VideoProcessorGetStreamAutoProcessingMode(
this,
core::mem::transmute_copy(&pvideoprocessor),
core::mem::transmute_copy(&streamindex),
core::mem::transmute_copy(&penabled),
)
}
}
unsafe extern "system" fn VideoProcessorGetStreamFilter<
Identity: ID3D11VideoContext_Impl,
const OFFSET: isize,
>(
this: *mut core::ffi::c_void,
pvideoprocessor: *mut core::ffi::c_void,
streamindex: u32,
filter: D3D11_VIDEO_PROCESSOR_FILTER,
penabled: *mut crate::Foundation::BOOL,
plevel: *mut i32,
) {
unsafe {
let this: &Identity =
&*((this as *const *const ()).offset(OFFSET) as *const Identity);
ID3D11VideoContext_Impl::VideoProcessorGetStreamFilter(
this,
core::mem::transmute_copy(&pvideoprocessor),
core::mem::transmute_copy(&streamindex),
core::mem::transmute_copy(&filter),
core::mem::transmute_copy(&penabled),
core::mem::transmute_copy(&plevel),
)
}
}
unsafe extern "system" fn VideoProcessorGetStreamExtension<
Identity: ID3D11VideoContext_Impl,
const OFFSET: isize,
>(
this: *mut core::ffi::c_void,
pvideoprocessor: *mut core::ffi::c_void,
streamindex: u32,
pextensionguid: *const windows_core::GUID,
datasize: u32,
pdata: *mut core::ffi::c_void,
) -> i32 {
unsafe {
let this: &Identity =
&*((this as *const *const ()).offset(OFFSET) as *const Identity);
ID3D11VideoContext_Impl::VideoProcessorGetStreamExtension(
this,
core::mem::transmute_copy(&pvideoprocessor),
core::mem::transmute_copy(&streamindex),
core::mem::transmute_copy(&pextensionguid),
core::mem::transmute_copy(&datasize),
core::mem::transmute_copy(&pdata),
)
}
}
unsafe extern "system" fn VideoProcessorBlt<
Identity: ID3D11VideoContext_Impl,
const OFFSET: isize,
>(
this: *mut core::ffi::c_void,
pvideoprocessor: *mut core::ffi::c_void,
pview: *mut core::ffi::c_void,
outputframe: u32,
streamcount: u32,
pstreams: *const D3D11_VIDEO_PROCESSOR_STREAM,
) -> windows_core::HRESULT {
unsafe {
let this: &Identity =
&*((this as *const *const ()).offset(OFFSET) as *const Identity);
ID3D11VideoContext_Impl::VideoProcessorBlt(
this,
core::mem::transmute_copy(&pvideoprocessor),
core::mem::transmute_copy(&pview),
core::mem::transmute_copy(&outputframe),
core::mem::transmute_copy(&streamcount),
core::mem::transmute_copy(&pstreams),
)
.into()
}
}
unsafe extern "system" fn NegotiateCryptoSessionKeyExchange<
Identity: ID3D11VideoContext_Impl,
const OFFSET: isize,
>(
this: *mut core::ffi::c_void,
pcryptosession: *mut core::ffi::c_void,
datasize: u32,
pdata: *mut core::ffi::c_void,
) -> windows_core::HRESULT {
unsafe {
let this: &Identity =
&*((this as *const *const ()).offset(OFFSET) as *const Identity);
ID3D11VideoContext_Impl::NegotiateCryptoSessionKeyExchange(
this,
core::mem::transmute_copy(&pcryptosession),
core::mem::transmute_copy(&datasize),
core::mem::transmute_copy(&pdata),
)
.into()
}
}
unsafe extern "system" fn EncryptionBlt<
Identity: ID3D11VideoContext_Impl,
const OFFSET: isize,
>(
this: *mut core::ffi::c_void,
pcryptosession: *mut core::ffi::c_void,
psrcsurface: *mut core::ffi::c_void,
pdstsurface: *mut core::ffi::c_void,
ivsize: u32,
piv: *mut core::ffi::c_void,
) {
unsafe {
let this: &Identity =
&*((this as *const *const ()).offset(OFFSET) as *const Identity);
ID3D11VideoContext_Impl::EncryptionBlt(
this,
core::mem::transmute_copy(&pcryptosession),
core::mem::transmute_copy(&psrcsurface),
core::mem::transmute_copy(&pdstsurface),
core::mem::transmute_copy(&ivsize),
core::mem::transmute_copy(&piv),
)
}
}
unsafe extern "system" fn DecryptionBlt<
Identity: ID3D11VideoContext_Impl,
const OFFSET: isize,
>(
this: *mut core::ffi::c_void,
pcryptosession: *mut core::ffi::c_void,
psrcsurface: *mut core::ffi::c_void,
pdstsurface: *mut core::ffi::c_void,
pencryptedblockinfo: *const D3D11_ENCRYPTED_BLOCK_INFO,
contentkeysize: u32,
pcontentkey: *const core::ffi::c_void,
ivsize: u32,
piv: *mut core::ffi::c_void,
) {
unsafe {
let this: &Identity =
&*((this as *const *const ()).offset(OFFSET) as *const Identity);
ID3D11VideoContext_Impl::DecryptionBlt(
this,
core::mem::transmute_copy(&pcryptosession),
core::mem::transmute_copy(&psrcsurface),
core::mem::transmute_copy(&pdstsurface),
core::mem::transmute_copy(&pencryptedblockinfo),
core::mem::transmute_copy(&contentkeysize),
core::mem::transmute_copy(&pcontentkey),
core::mem::transmute_copy(&ivsize),
core::mem::transmute_copy(&piv),
)
}
}
unsafe extern "system" fn StartSessionKeyRefresh<
Identity: ID3D11VideoContext_Impl,
const OFFSET: isize,
>(
this: *mut core::ffi::c_void,
pcryptosession: *mut core::ffi::c_void,
randomnumbersize: u32,
prandomnumber: *mut core::ffi::c_void,
) {
unsafe {
let this: &Identity =
&*((this as *const *const ()).offset(OFFSET) as *const Identity);
ID3D11VideoContext_Impl::StartSessionKeyRefresh(
this,
core::mem::transmute_copy(&pcryptosession),
core::mem::transmute_copy(&randomnumbersize),
core::mem::transmute_copy(&prandomnumber),
)
}
}
unsafe extern "system" fn FinishSessionKeyRefresh<
Identity: ID3D11VideoContext_Impl,
const OFFSET: isize,
>(
this: *mut core::ffi::c_void,
pcryptosession: *mut core::ffi::c_void,
) {
unsafe {
let this: &Identity =
&*((this as *const *const ()).offset(OFFSET) as *const Identity);
ID3D11VideoContext_Impl::FinishSessionKeyRefresh(
this,
core::mem::transmute_copy(&pcryptosession),
)
}
}
unsafe extern "system" fn GetEncryptionBltKey<
Identity: ID3D11VideoContext_Impl,
const OFFSET: isize,
>(
this: *mut core::ffi::c_void,
pcryptosession: *mut core::ffi::c_void,
keysize: u32,
preadbackkey: *mut core::ffi::c_void,
) -> windows_core::HRESULT {
unsafe {
let this: &Identity =
&*((this as *const *const ()).offset(OFFSET) as *const Identity);
ID3D11VideoContext_Impl::GetEncryptionBltKey(
this,
core::mem::transmute_copy(&pcryptosession),
core::mem::transmute_copy(&keysize),
core::mem::transmute_copy(&preadbackkey),
)
.into()
}
}
unsafe extern "system" fn NegotiateAuthenticatedChannelKeyExchange<
Identity: ID3D11VideoContext_Impl,
const OFFSET: isize,
>(
this: *mut core::ffi::c_void,
pchannel: *mut core::ffi::c_void,
datasize: u32,
pdata: *mut core::ffi::c_void,
) -> windows_core::HRESULT {
unsafe {
let this: &Identity =
&*((this as *const *const ()).offset(OFFSET) as *const Identity);
ID3D11VideoContext_Impl::NegotiateAuthenticatedChannelKeyExchange(
this,
core::mem::transmute_copy(&pchannel),
core::mem::transmute_copy(&datasize),
core::mem::transmute_copy(&pdata),
)
.into()
}
}
unsafe extern "system" fn QueryAuthenticatedChannel<
Identity: ID3D11VideoContext_Impl,
const OFFSET: isize,
>(
this: *mut core::ffi::c_void,
pchannel: *mut core::ffi::c_void,
inputsize: u32,
pinput: *const core::ffi::c_void,
outputsize: u32,
poutput: *mut core::ffi::c_void,
) -> windows_core::HRESULT {
unsafe {
let this: &Identity =
&*((this as *const *const ()).offset(OFFSET) as *const Identity);
ID3D11VideoContext_Impl::QueryAuthenticatedChannel(
this,
core::mem::transmute_copy(&pchannel),
core::mem::transmute_copy(&inputsize),
core::mem::transmute_copy(&pinput),
core::mem::transmute_copy(&outputsize),
core::mem::transmute_copy(&poutput),
)
.into()
}
}
unsafe extern "system" fn ConfigureAuthenticatedChannel<
Identity: ID3D11VideoContext_Impl,
const OFFSET: isize,
>(
this: *mut core::ffi::c_void,
pchannel: *mut core::ffi::c_void,
inputsize: u32,
pinput: *const core::ffi::c_void,
poutput: *mut D3D11_AUTHENTICATED_CONFIGURE_OUTPUT,
) -> windows_core::HRESULT {
unsafe {
let this: &Identity =
&*((this as *const *const ()).offset(OFFSET) as *const Identity);
ID3D11VideoContext_Impl::ConfigureAuthenticatedChannel(
this,
core::mem::transmute_copy(&pchannel),
core::mem::transmute_copy(&inputsize),
core::mem::transmute_copy(&pinput),
core::mem::transmute_copy(&poutput),
)
.into()
}
}
unsafe extern "system" fn VideoProcessorSetStreamRotation<
Identity: ID3D11VideoContext_Impl,
const OFFSET: isize,
>(
this: *mut core::ffi::c_void,
pvideoprocessor: *mut core::ffi::c_void,
streamindex: u32,
enable: crate::Foundation::BOOL,
rotation: D3D11_VIDEO_PROCESSOR_ROTATION,
) {
unsafe {
let this: &Identity =
&*((this as *const *const ()).offset(OFFSET) as *const Identity);
ID3D11VideoContext_Impl::VideoProcessorSetStreamRotation(
this,
core::mem::transmute_copy(&pvideoprocessor),
core::mem::transmute_copy(&streamindex),
core::mem::transmute_copy(&enable),
core::mem::transmute_copy(&rotation),
)
}
}
unsafe extern "system" fn VideoProcessorGetStreamRotation<
Identity: ID3D11VideoContext_Impl,
const OFFSET: isize,
>(
this: *mut core::ffi::c_void,
pvideoprocessor: *mut core::ffi::c_void,
streamindex: u32,
penable: *mut crate::Foundation::BOOL,
protation: *mut D3D11_VIDEO_PROCESSOR_ROTATION,
) {
unsafe {
let this: &Identity =
&*((this as *const *const ()).offset(OFFSET) as *const Identity);
ID3D11VideoContext_Impl::VideoProcessorGetStreamRotation(
this,
core::mem::transmute_copy(&pvideoprocessor),
core::mem::transmute_copy(&streamindex),
core::mem::transmute_copy(&penable),
core::mem::transmute_copy(&protation),
)
}
}
Self {
base__: ID3D11DeviceChild_Vtbl::new::<Identity, OFFSET>(),
GetDecoderBuffer: GetDecoderBuffer::<Identity, OFFSET>,
ReleaseDecoderBuffer: ReleaseDecoderBuffer::<Identity, OFFSET>,
DecoderBeginFrame: DecoderBeginFrame::<Identity, OFFSET>,
DecoderEndFrame: DecoderEndFrame::<Identity, OFFSET>,
SubmitDecoderBuffers: SubmitDecoderBuffers::<Identity, OFFSET>,
DecoderExtension: DecoderExtension::<Identity, OFFSET>,
VideoProcessorSetOutputTargetRect: VideoProcessorSetOutputTargetRect::<Identity, OFFSET>,
VideoProcessorSetOutputBackgroundColor: VideoProcessorSetOutputBackgroundColor::<
Identity,
OFFSET,
>,
VideoProcessorSetOutputColorSpace: VideoProcessorSetOutputColorSpace::<Identity, OFFSET>,
VideoProcessorSetOutputAlphaFillMode: VideoProcessorSetOutputAlphaFillMode::<
Identity,
OFFSET,
>,
VideoProcessorSetOutputConstriction: VideoProcessorSetOutputConstriction::<
Identity,
OFFSET,
>,
VideoProcessorSetOutputStereoMode: VideoProcessorSetOutputStereoMode::<Identity, OFFSET>,
VideoProcessorSetOutputExtension: VideoProcessorSetOutputExtension::<Identity, OFFSET>,
VideoProcessorGetOutputTargetRect: VideoProcessorGetOutputTargetRect::<Identity, OFFSET>,
VideoProcessorGetOutputBackgroundColor: VideoProcessorGetOutputBackgroundColor::<
Identity,
OFFSET,
>,
VideoProcessorGetOutputColorSpace: VideoProcessorGetOutputColorSpace::<Identity, OFFSET>,
VideoProcessorGetOutputAlphaFillMode: VideoProcessorGetOutputAlphaFillMode::<
Identity,
OFFSET,
>,
VideoProcessorGetOutputConstriction: VideoProcessorGetOutputConstriction::<
Identity,
OFFSET,
>,
VideoProcessorGetOutputStereoMode: VideoProcessorGetOutputStereoMode::<Identity, OFFSET>,
VideoProcessorGetOutputExtension: VideoProcessorGetOutputExtension::<Identity, OFFSET>,
VideoProcessorSetStreamFrameFormat: VideoProcessorSetStreamFrameFormat::<
Identity,
OFFSET,
>,
VideoProcessorSetStreamColorSpace: VideoProcessorSetStreamColorSpace::<Identity, OFFSET>,
VideoProcessorSetStreamOutputRate: VideoProcessorSetStreamOutputRate::<Identity, OFFSET>,
VideoProcessorSetStreamSourceRect: VideoProcessorSetStreamSourceRect::<Identity, OFFSET>,
VideoProcessorSetStreamDestRect: VideoProcessorSetStreamDestRect::<Identity, OFFSET>,
VideoProcessorSetStreamAlpha: VideoProcessorSetStreamAlpha::<Identity, OFFSET>,
VideoProcessorSetStreamPalette: VideoProcessorSetStreamPalette::<Identity, OFFSET>,
VideoProcessorSetStreamPixelAspectRatio: VideoProcessorSetStreamPixelAspectRatio::<
Identity,
OFFSET,
>,
VideoProcessorSetStreamLumaKey: VideoProcessorSetStreamLumaKey::<Identity, OFFSET>,
VideoProcessorSetStreamStereoFormat: VideoProcessorSetStreamStereoFormat::<
Identity,
OFFSET,
>,
VideoProcessorSetStreamAutoProcessingMode: VideoProcessorSetStreamAutoProcessingMode::<
Identity,
OFFSET,
>,
VideoProcessorSetStreamFilter: VideoProcessorSetStreamFilter::<Identity, OFFSET>,
VideoProcessorSetStreamExtension: VideoProcessorSetStreamExtension::<Identity, OFFSET>,
VideoProcessorGetStreamFrameFormat: VideoProcessorGetStreamFrameFormat::<
Identity,
OFFSET,
>,
VideoProcessorGetStreamColorSpace: VideoProcessorGetStreamColorSpace::<Identity, OFFSET>,
VideoProcessorGetStreamOutputRate: VideoProcessorGetStreamOutputRate::<Identity, OFFSET>,
VideoProcessorGetStreamSourceRect: VideoProcessorGetStreamSourceRect::<Identity, OFFSET>,
VideoProcessorGetStreamDestRect: VideoProcessorGetStreamDestRect::<Identity, OFFSET>,
VideoProcessorGetStreamAlpha: VideoProcessorGetStreamAlpha::<Identity, OFFSET>,
VideoProcessorGetStreamPalette: VideoProcessorGetStreamPalette::<Identity, OFFSET>,
VideoProcessorGetStreamPixelAspectRatio: VideoProcessorGetStreamPixelAspectRatio::<
Identity,
OFFSET,
>,
VideoProcessorGetStreamLumaKey: VideoProcessorGetStreamLumaKey::<Identity, OFFSET>,
VideoProcessorGetStreamStereoFormat: VideoProcessorGetStreamStereoFormat::<
Identity,
OFFSET,
>,
VideoProcessorGetStreamAutoProcessingMode: VideoProcessorGetStreamAutoProcessingMode::<
Identity,
OFFSET,
>,
VideoProcessorGetStreamFilter: VideoProcessorGetStreamFilter::<Identity, OFFSET>,
VideoProcessorGetStreamExtension: VideoProcessorGetStreamExtension::<Identity, OFFSET>,
VideoProcessorBlt: VideoProcessorBlt::<Identity, OFFSET>,
NegotiateCryptoSessionKeyExchange: NegotiateCryptoSessionKeyExchange::<Identity, OFFSET>,
EncryptionBlt: EncryptionBlt::<Identity, OFFSET>,
DecryptionBlt: DecryptionBlt::<Identity, OFFSET>,
StartSessionKeyRefresh: StartSessionKeyRefresh::<Identity, OFFSET>,
FinishSessionKeyRefresh: FinishSessionKeyRefresh::<Identity, OFFSET>,
GetEncryptionBltKey: GetEncryptionBltKey::<Identity, OFFSET>,
NegotiateAuthenticatedChannelKeyExchange: NegotiateAuthenticatedChannelKeyExchange::<
Identity,
OFFSET,
>,
QueryAuthenticatedChannel: QueryAuthenticatedChannel::<Identity, OFFSET>,
ConfigureAuthenticatedChannel: ConfigureAuthenticatedChannel::<Identity, OFFSET>,
VideoProcessorSetStreamRotation: VideoProcessorSetStreamRotation::<Identity, OFFSET>,
VideoProcessorGetStreamRotation: VideoProcessorGetStreamRotation::<Identity, OFFSET>,
}
}
pub fn matches(iid: &windows_core::GUID) -> bool {
iid == &<ID3D11VideoContext as windows_core::Interface>::IID
|| iid == &<ID3D11DeviceChild as windows_core::Interface>::IID
}
}
#[cfg(feature = "Win32_Graphics_Dxgi_Common")]
impl windows_core::RuntimeName for ID3D11VideoContext {}
#[cfg(feature = "Win32_Graphics_Dxgi_Common")]
unsafe impl Send for ID3D11VideoContext {}
#[cfg(feature = "Win32_Graphics_Dxgi_Common")]
unsafe impl Sync for ID3D11VideoContext {}
windows_core::imp::define_interface!(
ID3D11VideoContext1,
ID3D11VideoContext1_Vtbl,
0xa7f026da_a5f8_4487_a564_15e34357651e
);
impl core::ops::Deref for ID3D11VideoContext1 {
type Target = ID3D11VideoContext;
fn deref(&self) -> &Self::Target {
unsafe { core::mem::transmute(self) }
}
}
windows_core::imp::interface_hierarchy!(
ID3D11VideoContext1,
windows_core::IUnknown,
ID3D11DeviceChild,
ID3D11VideoContext
);
impl ID3D11VideoContext1 {
pub unsafe fn SubmitDecoderBuffers1<P0>(
&self,
pdecoder: P0,
pbufferdesc: &[D3D11_VIDEO_DECODER_BUFFER_DESC1],
) -> windows_core::Result<()>
where
P0: windows_core::Param<ID3D11VideoDecoder>,
{
unsafe {
(windows_core::Interface::vtable(self).SubmitDecoderBuffers1)(
windows_core::Interface::as_raw(self),
pdecoder.param().abi(),
pbufferdesc.len().try_into().unwrap(),
core::mem::transmute(pbufferdesc.as_ptr()),
)
.ok()
}
}
pub unsafe fn GetDataForNewHardwareKey<P0>(
&self,
pcryptosession: P0,
pprivatinputdata: &[u8],
) -> windows_core::Result<u64>
where
P0: windows_core::Param<ID3D11CryptoSession>,
{
unsafe {
let mut result__ = core::mem::zeroed();
(windows_core::Interface::vtable(self).GetDataForNewHardwareKey)(
windows_core::Interface::as_raw(self),
pcryptosession.param().abi(),
pprivatinputdata.len().try_into().unwrap(),
core::mem::transmute(pprivatinputdata.as_ptr()),
&mut result__,
)
.map(|| result__)
}
}
pub unsafe fn CheckCryptoSessionStatus<P0>(
&self,
pcryptosession: P0,
) -> windows_core::Result<D3D11_CRYPTO_SESSION_STATUS>
where
P0: windows_core::Param<ID3D11CryptoSession>,
{
unsafe {
let mut result__ = core::mem::zeroed();
(windows_core::Interface::vtable(self).CheckCryptoSessionStatus)(
windows_core::Interface::as_raw(self),
pcryptosession.param().abi(),
&mut result__,
)
.map(|| result__)
}
}
#[cfg(feature = "Win32_Graphics_Dxgi_Common")]
pub unsafe fn DecoderEnableDownsampling<P0>(
&self,
pdecoder: P0,
inputcolorspace: crate::Dxgi::Common::DXGI_COLOR_SPACE_TYPE,
poutputdesc: *const D3D11_VIDEO_SAMPLE_DESC,
referenceframecount: u32,
) -> windows_core::Result<()>
where
P0: windows_core::Param<ID3D11VideoDecoder>,
{
unsafe {
(windows_core::Interface::vtable(self).DecoderEnableDownsampling)(
windows_core::Interface::as_raw(self),
pdecoder.param().abi(),
inputcolorspace,
poutputdesc,
referenceframecount,
)
.ok()
}
}
#[cfg(feature = "Win32_Graphics_Dxgi_Common")]
pub unsafe fn DecoderUpdateDownsampling<P0>(
&self,
pdecoder: P0,
poutputdesc: *const D3D11_VIDEO_SAMPLE_DESC,
) -> windows_core::Result<()>
where
P0: windows_core::Param<ID3D11VideoDecoder>,
{
unsafe {
(windows_core::Interface::vtable(self).DecoderUpdateDownsampling)(
windows_core::Interface::as_raw(self),
pdecoder.param().abi(),
poutputdesc,
)
.ok()
}
}
#[cfg(feature = "Win32_Graphics_Dxgi_Common")]
pub unsafe fn VideoProcessorSetOutputColorSpace1<P0>(
&self,
pvideoprocessor: P0,
colorspace: crate::Dxgi::Common::DXGI_COLOR_SPACE_TYPE,
) where
P0: windows_core::Param<ID3D11VideoProcessor>,
{
unsafe {
(windows_core::Interface::vtable(self).VideoProcessorSetOutputColorSpace1)(
windows_core::Interface::as_raw(self),
pvideoprocessor.param().abi(),
colorspace,
)
}
}
pub unsafe fn VideoProcessorSetOutputShaderUsage<P0>(
&self,
pvideoprocessor: P0,
shaderusage: bool,
) where
P0: windows_core::Param<ID3D11VideoProcessor>,
{
unsafe {
(windows_core::Interface::vtable(self).VideoProcessorSetOutputShaderUsage)(
windows_core::Interface::as_raw(self),
pvideoprocessor.param().abi(),
shaderusage.into(),
)
}
}
#[cfg(feature = "Win32_Graphics_Dxgi_Common")]
pub unsafe fn VideoProcessorGetOutputColorSpace1<P0>(
&self,
pvideoprocessor: P0,
) -> crate::Dxgi::Common::DXGI_COLOR_SPACE_TYPE
where
P0: windows_core::Param<ID3D11VideoProcessor>,
{
unsafe {
let mut result__ = core::mem::zeroed();
(windows_core::Interface::vtable(self).VideoProcessorGetOutputColorSpace1)(
windows_core::Interface::as_raw(self),
pvideoprocessor.param().abi(),
&mut result__,
);
result__
}
}
pub unsafe fn VideoProcessorGetOutputShaderUsage<P0>(
&self,
pvideoprocessor: P0,
) -> crate::Foundation::BOOL
where
P0: windows_core::Param<ID3D11VideoProcessor>,
{
unsafe {
let mut result__ = core::mem::zeroed();
(windows_core::Interface::vtable(self).VideoProcessorGetOutputShaderUsage)(
windows_core::Interface::as_raw(self),
pvideoprocessor.param().abi(),
&mut result__,
);
result__
}
}
#[cfg(feature = "Win32_Graphics_Dxgi_Common")]
pub unsafe fn VideoProcessorSetStreamColorSpace1<P0>(
&self,
pvideoprocessor: P0,
streamindex: u32,
colorspace: crate::Dxgi::Common::DXGI_COLOR_SPACE_TYPE,
) where
P0: windows_core::Param<ID3D11VideoProcessor>,
{
unsafe {
(windows_core::Interface::vtable(self).VideoProcessorSetStreamColorSpace1)(
windows_core::Interface::as_raw(self),
pvideoprocessor.param().abi(),
streamindex,
colorspace,
)
}
}
pub unsafe fn VideoProcessorSetStreamMirror<P0>(
&self,
pvideoprocessor: P0,
streamindex: u32,
enable: bool,
fliphorizontal: bool,
flipvertical: bool,
) where
P0: windows_core::Param<ID3D11VideoProcessor>,
{
unsafe {
(windows_core::Interface::vtable(self).VideoProcessorSetStreamMirror)(
windows_core::Interface::as_raw(self),
pvideoprocessor.param().abi(),
streamindex,
enable.into(),
fliphorizontal.into(),
flipvertical.into(),
)
}
}
#[cfg(feature = "Win32_Graphics_Dxgi_Common")]
pub unsafe fn VideoProcessorGetStreamColorSpace1<P0>(
&self,
pvideoprocessor: P0,
streamindex: u32,
) -> crate::Dxgi::Common::DXGI_COLOR_SPACE_TYPE
where
P0: windows_core::Param<ID3D11VideoProcessor>,
{
unsafe {
let mut result__ = core::mem::zeroed();
(windows_core::Interface::vtable(self).VideoProcessorGetStreamColorSpace1)(
windows_core::Interface::as_raw(self),
pvideoprocessor.param().abi(),
streamindex,
&mut result__,
);
result__
}
}
pub unsafe fn VideoProcessorGetStreamMirror<P0>(
&self,
pvideoprocessor: P0,
streamindex: u32,
penable: *mut crate::Foundation::BOOL,
pfliphorizontal: *mut crate::Foundation::BOOL,
pflipvertical: *mut crate::Foundation::BOOL,
) where
P0: windows_core::Param<ID3D11VideoProcessor>,
{
unsafe {
(windows_core::Interface::vtable(self).VideoProcessorGetStreamMirror)(
windows_core::Interface::as_raw(self),
pvideoprocessor.param().abi(),
streamindex,
core::mem::transmute(penable),
core::mem::transmute(pfliphorizontal),
core::mem::transmute(pflipvertical),
)
}
}
#[cfg(feature = "Win32_Graphics_Dxgi_Common")]
pub unsafe fn VideoProcessorGetBehaviorHints<P0>(
&self,
pvideoprocessor: P0,
outputwidth: u32,
outputheight: u32,
outputformat: crate::Dxgi::Common::DXGI_FORMAT,
pstreams: &[D3D11_VIDEO_PROCESSOR_STREAM_BEHAVIOR_HINT],
) -> windows_core::Result<u32>
where
P0: windows_core::Param<ID3D11VideoProcessor>,
{
unsafe {
let mut result__ = core::mem::zeroed();
(windows_core::Interface::vtable(self).VideoProcessorGetBehaviorHints)(
windows_core::Interface::as_raw(self),
pvideoprocessor.param().abi(),
outputwidth,
outputheight,
outputformat,
pstreams.len().try_into().unwrap(),
core::mem::transmute(pstreams.as_ptr()),
&mut result__,
)
.map(|| result__)
}
}
}
#[repr(C)]
pub struct ID3D11VideoContext1_Vtbl {
pub base__: ID3D11VideoContext_Vtbl,
pub SubmitDecoderBuffers1: unsafe extern "system" fn(
*mut core::ffi::c_void,
*mut core::ffi::c_void,
u32,
*const D3D11_VIDEO_DECODER_BUFFER_DESC1,
) -> windows_core::HRESULT,
pub GetDataForNewHardwareKey: unsafe extern "system" fn(
*mut core::ffi::c_void,
*mut core::ffi::c_void,
u32,
*const core::ffi::c_void,
*mut u64,
) -> windows_core::HRESULT,
pub CheckCryptoSessionStatus: unsafe extern "system" fn(
*mut core::ffi::c_void,
*mut core::ffi::c_void,
*mut D3D11_CRYPTO_SESSION_STATUS,
) -> windows_core::HRESULT,
#[cfg(feature = "Win32_Graphics_Dxgi_Common")]
pub DecoderEnableDownsampling: unsafe extern "system" fn(
*mut core::ffi::c_void,
*mut core::ffi::c_void,
crate::Dxgi::Common::DXGI_COLOR_SPACE_TYPE,
*const D3D11_VIDEO_SAMPLE_DESC,
u32,
) -> windows_core::HRESULT,
#[cfg(not(feature = "Win32_Graphics_Dxgi_Common"))]
DecoderEnableDownsampling: usize,
#[cfg(feature = "Win32_Graphics_Dxgi_Common")]
pub DecoderUpdateDownsampling: unsafe extern "system" fn(
*mut core::ffi::c_void,
*mut core::ffi::c_void,
*const D3D11_VIDEO_SAMPLE_DESC,
) -> windows_core::HRESULT,
#[cfg(not(feature = "Win32_Graphics_Dxgi_Common"))]
DecoderUpdateDownsampling: usize,
#[cfg(feature = "Win32_Graphics_Dxgi_Common")]
pub VideoProcessorSetOutputColorSpace1: unsafe extern "system" fn(
*mut core::ffi::c_void,
*mut core::ffi::c_void,
crate::Dxgi::Common::DXGI_COLOR_SPACE_TYPE,
),
#[cfg(not(feature = "Win32_Graphics_Dxgi_Common"))]
VideoProcessorSetOutputColorSpace1: usize,
pub VideoProcessorSetOutputShaderUsage: unsafe extern "system" fn(
*mut core::ffi::c_void,
*mut core::ffi::c_void,
crate::Foundation::BOOL,
),
#[cfg(feature = "Win32_Graphics_Dxgi_Common")]
pub VideoProcessorGetOutputColorSpace1: unsafe extern "system" fn(
*mut core::ffi::c_void,
*mut core::ffi::c_void,
*mut crate::Dxgi::Common::DXGI_COLOR_SPACE_TYPE,
),
#[cfg(not(feature = "Win32_Graphics_Dxgi_Common"))]
VideoProcessorGetOutputColorSpace1: usize,
pub VideoProcessorGetOutputShaderUsage: unsafe extern "system" fn(
*mut core::ffi::c_void,
*mut core::ffi::c_void,
*mut crate::Foundation::BOOL,
),
#[cfg(feature = "Win32_Graphics_Dxgi_Common")]
pub VideoProcessorSetStreamColorSpace1: unsafe extern "system" fn(
*mut core::ffi::c_void,
*mut core::ffi::c_void,
u32,
crate::Dxgi::Common::DXGI_COLOR_SPACE_TYPE,
),
#[cfg(not(feature = "Win32_Graphics_Dxgi_Common"))]
VideoProcessorSetStreamColorSpace1: usize,
pub VideoProcessorSetStreamMirror: unsafe extern "system" fn(
*mut core::ffi::c_void,
*mut core::ffi::c_void,
u32,
crate::Foundation::BOOL,
crate::Foundation::BOOL,
crate::Foundation::BOOL,
),
#[cfg(feature = "Win32_Graphics_Dxgi_Common")]
pub VideoProcessorGetStreamColorSpace1: unsafe extern "system" fn(
*mut core::ffi::c_void,
*mut core::ffi::c_void,
u32,
*mut crate::Dxgi::Common::DXGI_COLOR_SPACE_TYPE,
),
#[cfg(not(feature = "Win32_Graphics_Dxgi_Common"))]
VideoProcessorGetStreamColorSpace1: usize,
pub VideoProcessorGetStreamMirror: unsafe extern "system" fn(
*mut core::ffi::c_void,
*mut core::ffi::c_void,
u32,
*mut crate::Foundation::BOOL,
*mut crate::Foundation::BOOL,
*mut crate::Foundation::BOOL,
),
#[cfg(feature = "Win32_Graphics_Dxgi_Common")]
pub VideoProcessorGetBehaviorHints: unsafe extern "system" fn(
*mut core::ffi::c_void,
*mut core::ffi::c_void,
u32,
u32,
crate::Dxgi::Common::DXGI_FORMAT,
u32,
*const D3D11_VIDEO_PROCESSOR_STREAM_BEHAVIOR_HINT,
*mut u32,
) -> windows_core::HRESULT,
#[cfg(not(feature = "Win32_Graphics_Dxgi_Common"))]
VideoProcessorGetBehaviorHints: usize,
}
#[cfg(feature = "Win32_Graphics_Dxgi_Common")]
pub trait ID3D11VideoContext1_Impl: ID3D11VideoContext_Impl {
fn SubmitDecoderBuffers1(
&self,
pdecoder: windows_core::Ref<'_, ID3D11VideoDecoder>,
numbuffers: u32,
pbufferdesc: *const D3D11_VIDEO_DECODER_BUFFER_DESC1,
) -> windows_core::Result<()>;
fn GetDataForNewHardwareKey(
&self,
pcryptosession: windows_core::Ref<'_, ID3D11CryptoSession>,
privateinputsize: u32,
pprivatinputdata: *const core::ffi::c_void,
) -> windows_core::Result<u64>;
fn CheckCryptoSessionStatus(
&self,
pcryptosession: windows_core::Ref<'_, ID3D11CryptoSession>,
) -> windows_core::Result<D3D11_CRYPTO_SESSION_STATUS>;
fn DecoderEnableDownsampling(
&self,
pdecoder: windows_core::Ref<'_, ID3D11VideoDecoder>,
inputcolorspace: crate::Dxgi::Common::DXGI_COLOR_SPACE_TYPE,
poutputdesc: *const D3D11_VIDEO_SAMPLE_DESC,
referenceframecount: u32,
) -> windows_core::Result<()>;
fn DecoderUpdateDownsampling(
&self,
pdecoder: windows_core::Ref<'_, ID3D11VideoDecoder>,
poutputdesc: *const D3D11_VIDEO_SAMPLE_DESC,
) -> windows_core::Result<()>;
fn VideoProcessorSetOutputColorSpace1(
&self,
pvideoprocessor: windows_core::Ref<'_, ID3D11VideoProcessor>,
colorspace: crate::Dxgi::Common::DXGI_COLOR_SPACE_TYPE,
);
fn VideoProcessorSetOutputShaderUsage(
&self,
pvideoprocessor: windows_core::Ref<'_, ID3D11VideoProcessor>,
shaderusage: crate::Foundation::BOOL,
);
fn VideoProcessorGetOutputColorSpace1(
&self,
pvideoprocessor: windows_core::Ref<'_, ID3D11VideoProcessor>,
pcolorspace: *mut crate::Dxgi::Common::DXGI_COLOR_SPACE_TYPE,
);
fn VideoProcessorGetOutputShaderUsage(
&self,
pvideoprocessor: windows_core::Ref<'_, ID3D11VideoProcessor>,
pshaderusage: *mut crate::Foundation::BOOL,
);
fn VideoProcessorSetStreamColorSpace1(
&self,
pvideoprocessor: windows_core::Ref<'_, ID3D11VideoProcessor>,
streamindex: u32,
colorspace: crate::Dxgi::Common::DXGI_COLOR_SPACE_TYPE,
);
fn VideoProcessorSetStreamMirror(
&self,
pvideoprocessor: windows_core::Ref<'_, ID3D11VideoProcessor>,
streamindex: u32,
enable: crate::Foundation::BOOL,
fliphorizontal: crate::Foundation::BOOL,
flipvertical: crate::Foundation::BOOL,
);
fn VideoProcessorGetStreamColorSpace1(
&self,
pvideoprocessor: windows_core::Ref<'_, ID3D11VideoProcessor>,
streamindex: u32,
pcolorspace: *mut crate::Dxgi::Common::DXGI_COLOR_SPACE_TYPE,
);
fn VideoProcessorGetStreamMirror(
&self,
pvideoprocessor: windows_core::Ref<'_, ID3D11VideoProcessor>,
streamindex: u32,
penable: *mut crate::Foundation::BOOL,
pfliphorizontal: *mut crate::Foundation::BOOL,
pflipvertical: *mut crate::Foundation::BOOL,
);
fn VideoProcessorGetBehaviorHints(
&self,
pvideoprocessor: windows_core::Ref<'_, ID3D11VideoProcessor>,
outputwidth: u32,
outputheight: u32,
outputformat: crate::Dxgi::Common::DXGI_FORMAT,
streamcount: u32,
pstreams: *const D3D11_VIDEO_PROCESSOR_STREAM_BEHAVIOR_HINT,
) -> windows_core::Result<u32>;
}
#[cfg(feature = "Win32_Graphics_Dxgi_Common")]
impl ID3D11VideoContext1_Vtbl {
pub const fn new<Identity: ID3D11VideoContext1_Impl, const OFFSET: isize>() -> Self {
unsafe extern "system" fn SubmitDecoderBuffers1<
Identity: ID3D11VideoContext1_Impl,
const OFFSET: isize,
>(
this: *mut core::ffi::c_void,
pdecoder: *mut core::ffi::c_void,
numbuffers: u32,
pbufferdesc: *const D3D11_VIDEO_DECODER_BUFFER_DESC1,
) -> windows_core::HRESULT {
unsafe {
let this: &Identity =
&*((this as *const *const ()).offset(OFFSET) as *const Identity);
ID3D11VideoContext1_Impl::SubmitDecoderBuffers1(
this,
core::mem::transmute_copy(&pdecoder),
core::mem::transmute_copy(&numbuffers),
core::mem::transmute_copy(&pbufferdesc),
)
.into()
}
}
unsafe extern "system" fn GetDataForNewHardwareKey<
Identity: ID3D11VideoContext1_Impl,
const OFFSET: isize,
>(
this: *mut core::ffi::c_void,
pcryptosession: *mut core::ffi::c_void,
privateinputsize: u32,
pprivatinputdata: *const core::ffi::c_void,
pprivateoutputdata: *mut u64,
) -> windows_core::HRESULT {
unsafe {
let this: &Identity =
&*((this as *const *const ()).offset(OFFSET) as *const Identity);
match ID3D11VideoContext1_Impl::GetDataForNewHardwareKey(
this,
core::mem::transmute_copy(&pcryptosession),
core::mem::transmute_copy(&privateinputsize),
core::mem::transmute_copy(&pprivatinputdata),
) {
Ok(ok__) => {
pprivateoutputdata.write(core::mem::transmute(ok__));
windows_core::HRESULT(0)
}
Err(err) => err.into(),
}
}
}
unsafe extern "system" fn CheckCryptoSessionStatus<
Identity: ID3D11VideoContext1_Impl,
const OFFSET: isize,
>(
this: *mut core::ffi::c_void,
pcryptosession: *mut core::ffi::c_void,
pstatus: *mut D3D11_CRYPTO_SESSION_STATUS,
) -> windows_core::HRESULT {
unsafe {
let this: &Identity =
&*((this as *const *const ()).offset(OFFSET) as *const Identity);
match ID3D11VideoContext1_Impl::CheckCryptoSessionStatus(
this,
core::mem::transmute_copy(&pcryptosession),
) {
Ok(ok__) => {
pstatus.write(core::mem::transmute(ok__));
windows_core::HRESULT(0)
}
Err(err) => err.into(),
}
}
}
unsafe extern "system" fn DecoderEnableDownsampling<
Identity: ID3D11VideoContext1_Impl,
const OFFSET: isize,
>(
this: *mut core::ffi::c_void,
pdecoder: *mut core::ffi::c_void,
inputcolorspace: crate::Dxgi::Common::DXGI_COLOR_SPACE_TYPE,
poutputdesc: *const D3D11_VIDEO_SAMPLE_DESC,
referenceframecount: u32,
) -> windows_core::HRESULT {
unsafe {
let this: &Identity =
&*((this as *const *const ()).offset(OFFSET) as *const Identity);
ID3D11VideoContext1_Impl::DecoderEnableDownsampling(
this,
core::mem::transmute_copy(&pdecoder),
core::mem::transmute_copy(&inputcolorspace),
core::mem::transmute_copy(&poutputdesc),
core::mem::transmute_copy(&referenceframecount),
)
.into()
}
}
unsafe extern "system" fn DecoderUpdateDownsampling<
Identity: ID3D11VideoContext1_Impl,
const OFFSET: isize,
>(
this: *mut core::ffi::c_void,
pdecoder: *mut core::ffi::c_void,
poutputdesc: *const D3D11_VIDEO_SAMPLE_DESC,
) -> windows_core::HRESULT {
unsafe {
let this: &Identity =
&*((this as *const *const ()).offset(OFFSET) as *const Identity);
ID3D11VideoContext1_Impl::DecoderUpdateDownsampling(
this,
core::mem::transmute_copy(&pdecoder),
core::mem::transmute_copy(&poutputdesc),
)
.into()
}
}
unsafe extern "system" fn VideoProcessorSetOutputColorSpace1<
Identity: ID3D11VideoContext1_Impl,
const OFFSET: isize,
>(
this: *mut core::ffi::c_void,
pvideoprocessor: *mut core::ffi::c_void,
colorspace: crate::Dxgi::Common::DXGI_COLOR_SPACE_TYPE,
) {
unsafe {
let this: &Identity =
&*((this as *const *const ()).offset(OFFSET) as *const Identity);
ID3D11VideoContext1_Impl::VideoProcessorSetOutputColorSpace1(
this,
core::mem::transmute_copy(&pvideoprocessor),
core::mem::transmute_copy(&colorspace),
)
}
}
unsafe extern "system" fn VideoProcessorSetOutputShaderUsage<
Identity: ID3D11VideoContext1_Impl,
const OFFSET: isize,
>(
this: *mut core::ffi::c_void,
pvideoprocessor: *mut core::ffi::c_void,
shaderusage: crate::Foundation::BOOL,
) {
unsafe {
let this: &Identity =
&*((this as *const *const ()).offset(OFFSET) as *const Identity);
ID3D11VideoContext1_Impl::VideoProcessorSetOutputShaderUsage(
this,
core::mem::transmute_copy(&pvideoprocessor),
core::mem::transmute_copy(&shaderusage),
)
}
}
unsafe extern "system" fn VideoProcessorGetOutputColorSpace1<
Identity: ID3D11VideoContext1_Impl,
const OFFSET: isize,
>(
this: *mut core::ffi::c_void,
pvideoprocessor: *mut core::ffi::c_void,
pcolorspace: *mut crate::Dxgi::Common::DXGI_COLOR_SPACE_TYPE,
) {
unsafe {
let this: &Identity =
&*((this as *const *const ()).offset(OFFSET) as *const Identity);
ID3D11VideoContext1_Impl::VideoProcessorGetOutputColorSpace1(
this,
core::mem::transmute_copy(&pvideoprocessor),
core::mem::transmute_copy(&pcolorspace),
)
}
}
unsafe extern "system" fn VideoProcessorGetOutputShaderUsage<
Identity: ID3D11VideoContext1_Impl,
const OFFSET: isize,
>(
this: *mut core::ffi::c_void,
pvideoprocessor: *mut core::ffi::c_void,
pshaderusage: *mut crate::Foundation::BOOL,
) {
unsafe {
let this: &Identity =
&*((this as *const *const ()).offset(OFFSET) as *const Identity);
ID3D11VideoContext1_Impl::VideoProcessorGetOutputShaderUsage(
this,
core::mem::transmute_copy(&pvideoprocessor),
core::mem::transmute_copy(&pshaderusage),
)
}
}
unsafe extern "system" fn VideoProcessorSetStreamColorSpace1<
Identity: ID3D11VideoContext1_Impl,
const OFFSET: isize,
>(
this: *mut core::ffi::c_void,
pvideoprocessor: *mut core::ffi::c_void,
streamindex: u32,
colorspace: crate::Dxgi::Common::DXGI_COLOR_SPACE_TYPE,
) {
unsafe {
let this: &Identity =
&*((this as *const *const ()).offset(OFFSET) as *const Identity);
ID3D11VideoContext1_Impl::VideoProcessorSetStreamColorSpace1(
this,
core::mem::transmute_copy(&pvideoprocessor),
core::mem::transmute_copy(&streamindex),
core::mem::transmute_copy(&colorspace),
)
}
}
unsafe extern "system" fn VideoProcessorSetStreamMirror<
Identity: ID3D11VideoContext1_Impl,
const OFFSET: isize,
>(
this: *mut core::ffi::c_void,
pvideoprocessor: *mut core::ffi::c_void,
streamindex: u32,
enable: crate::Foundation::BOOL,
fliphorizontal: crate::Foundation::BOOL,
flipvertical: crate::Foundation::BOOL,
) {
unsafe {
let this: &Identity =
&*((this as *const *const ()).offset(OFFSET) as *const Identity);
ID3D11VideoContext1_Impl::VideoProcessorSetStreamMirror(
this,
core::mem::transmute_copy(&pvideoprocessor),
core::mem::transmute_copy(&streamindex),
core::mem::transmute_copy(&enable),
core::mem::transmute_copy(&fliphorizontal),
core::mem::transmute_copy(&flipvertical),
)
}
}
unsafe extern "system" fn VideoProcessorGetStreamColorSpace1<
Identity: ID3D11VideoContext1_Impl,
const OFFSET: isize,
>(
this: *mut core::ffi::c_void,
pvideoprocessor: *mut core::ffi::c_void,
streamindex: u32,
pcolorspace: *mut crate::Dxgi::Common::DXGI_COLOR_SPACE_TYPE,
) {
unsafe {
let this: &Identity =
&*((this as *const *const ()).offset(OFFSET) as *const Identity);
ID3D11VideoContext1_Impl::VideoProcessorGetStreamColorSpace1(
this,
core::mem::transmute_copy(&pvideoprocessor),
core::mem::transmute_copy(&streamindex),
core::mem::transmute_copy(&pcolorspace),
)
}
}
unsafe extern "system" fn VideoProcessorGetStreamMirror<
Identity: ID3D11VideoContext1_Impl,
const OFFSET: isize,
>(
this: *mut core::ffi::c_void,
pvideoprocessor: *mut core::ffi::c_void,
streamindex: u32,
penable: *mut crate::Foundation::BOOL,
pfliphorizontal: *mut crate::Foundation::BOOL,
pflipvertical: *mut crate::Foundation::BOOL,
) {
unsafe {
let this: &Identity =
&*((this as *const *const ()).offset(OFFSET) as *const Identity);
ID3D11VideoContext1_Impl::VideoProcessorGetStreamMirror(
this,
core::mem::transmute_copy(&pvideoprocessor),
core::mem::transmute_copy(&streamindex),
core::mem::transmute_copy(&penable),
core::mem::transmute_copy(&pfliphorizontal),
core::mem::transmute_copy(&pflipvertical),
)
}
}
unsafe extern "system" fn VideoProcessorGetBehaviorHints<
Identity: ID3D11VideoContext1_Impl,
const OFFSET: isize,
>(
this: *mut core::ffi::c_void,
pvideoprocessor: *mut core::ffi::c_void,
outputwidth: u32,
outputheight: u32,
outputformat: crate::Dxgi::Common::DXGI_FORMAT,
streamcount: u32,
pstreams: *const D3D11_VIDEO_PROCESSOR_STREAM_BEHAVIOR_HINT,
pbehaviorhints: *mut u32,
) -> windows_core::HRESULT {
unsafe {
let this: &Identity =
&*((this as *const *const ()).offset(OFFSET) as *const Identity);
match ID3D11VideoContext1_Impl::VideoProcessorGetBehaviorHints(
this,
core::mem::transmute_copy(&pvideoprocessor),
core::mem::transmute_copy(&outputwidth),
core::mem::transmute_copy(&outputheight),
core::mem::transmute_copy(&outputformat),
core::mem::transmute_copy(&streamcount),
core::mem::transmute_copy(&pstreams),
) {
Ok(ok__) => {
pbehaviorhints.write(core::mem::transmute(ok__));
windows_core::HRESULT(0)
}
Err(err) => err.into(),
}
}
}
Self {
base__: ID3D11VideoContext_Vtbl::new::<Identity, OFFSET>(),
SubmitDecoderBuffers1: SubmitDecoderBuffers1::<Identity, OFFSET>,
GetDataForNewHardwareKey: GetDataForNewHardwareKey::<Identity, OFFSET>,
CheckCryptoSessionStatus: CheckCryptoSessionStatus::<Identity, OFFSET>,
DecoderEnableDownsampling: DecoderEnableDownsampling::<Identity, OFFSET>,
DecoderUpdateDownsampling: DecoderUpdateDownsampling::<Identity, OFFSET>,
VideoProcessorSetOutputColorSpace1: VideoProcessorSetOutputColorSpace1::<
Identity,
OFFSET,
>,
VideoProcessorSetOutputShaderUsage: VideoProcessorSetOutputShaderUsage::<
Identity,
OFFSET,
>,
VideoProcessorGetOutputColorSpace1: VideoProcessorGetOutputColorSpace1::<
Identity,
OFFSET,
>,
VideoProcessorGetOutputShaderUsage: VideoProcessorGetOutputShaderUsage::<
Identity,
OFFSET,
>,
VideoProcessorSetStreamColorSpace1: VideoProcessorSetStreamColorSpace1::<
Identity,
OFFSET,
>,
VideoProcessorSetStreamMirror: VideoProcessorSetStreamMirror::<Identity, OFFSET>,
VideoProcessorGetStreamColorSpace1: VideoProcessorGetStreamColorSpace1::<
Identity,
OFFSET,
>,
VideoProcessorGetStreamMirror: VideoProcessorGetStreamMirror::<Identity, OFFSET>,
VideoProcessorGetBehaviorHints: VideoProcessorGetBehaviorHints::<Identity, OFFSET>,
}
}
pub fn matches(iid: &windows_core::GUID) -> bool {
iid == &<ID3D11VideoContext1 as windows_core::Interface>::IID
|| iid == &<ID3D11DeviceChild as windows_core::Interface>::IID
|| iid == &<ID3D11VideoContext as windows_core::Interface>::IID
}
}
#[cfg(feature = "Win32_Graphics_Dxgi_Common")]
impl windows_core::RuntimeName for ID3D11VideoContext1 {}
#[cfg(feature = "Win32_Graphics_Dxgi_Common")]
unsafe impl Send for ID3D11VideoContext1 {}
#[cfg(feature = "Win32_Graphics_Dxgi_Common")]
unsafe impl Sync for ID3D11VideoContext1 {}
windows_core::imp::define_interface!(
ID3D11VideoContext2,
ID3D11VideoContext2_Vtbl,
0xc4e7374c_6243_4d1b_ae87_52b4f740e261
);
impl core::ops::Deref for ID3D11VideoContext2 {
type Target = ID3D11VideoContext1;
fn deref(&self) -> &Self::Target {
unsafe { core::mem::transmute(self) }
}
}
windows_core::imp::interface_hierarchy!(
ID3D11VideoContext2,
windows_core::IUnknown,
ID3D11DeviceChild,
ID3D11VideoContext,
ID3D11VideoContext1
);
impl ID3D11VideoContext2 {
#[cfg(feature = "Win32_Graphics_Dxgi")]
pub unsafe fn VideoProcessorSetOutputHDRMetaData<P0>(
&self,
pvideoprocessor: P0,
r#type: crate::Dxgi::DXGI_HDR_METADATA_TYPE,
size: u32,
phdrmetadata: Option<*const core::ffi::c_void>,
) where
P0: windows_core::Param<ID3D11VideoProcessor>,
{
unsafe {
(windows_core::Interface::vtable(self).VideoProcessorSetOutputHDRMetaData)(
windows_core::Interface::as_raw(self),
pvideoprocessor.param().abi(),
r#type,
size,
core::mem::transmute(phdrmetadata.unwrap_or(core::mem::zeroed())),
)
}
}
#[cfg(feature = "Win32_Graphics_Dxgi")]
pub unsafe fn VideoProcessorGetOutputHDRMetaData<P0>(
&self,
pvideoprocessor: P0,
ptype: *mut crate::Dxgi::DXGI_HDR_METADATA_TYPE,
size: u32,
pmetadata: Option<*mut core::ffi::c_void>,
) where
P0: windows_core::Param<ID3D11VideoProcessor>,
{
unsafe {
(windows_core::Interface::vtable(self).VideoProcessorGetOutputHDRMetaData)(
windows_core::Interface::as_raw(self),
pvideoprocessor.param().abi(),
core::mem::transmute(ptype),
size,
core::mem::transmute(pmetadata.unwrap_or(core::mem::zeroed())),
)
}
}
#[cfg(feature = "Win32_Graphics_Dxgi")]
pub unsafe fn VideoProcessorSetStreamHDRMetaData<P0>(
&self,
pvideoprocessor: P0,
streamindex: u32,
r#type: crate::Dxgi::DXGI_HDR_METADATA_TYPE,
size: u32,
phdrmetadata: Option<*const core::ffi::c_void>,
) where
P0: windows_core::Param<ID3D11VideoProcessor>,
{
unsafe {
(windows_core::Interface::vtable(self).VideoProcessorSetStreamHDRMetaData)(
windows_core::Interface::as_raw(self),
pvideoprocessor.param().abi(),
streamindex,
r#type,
size,
core::mem::transmute(phdrmetadata.unwrap_or(core::mem::zeroed())),
)
}
}
#[cfg(feature = "Win32_Graphics_Dxgi")]
pub unsafe fn VideoProcessorGetStreamHDRMetaData<P0>(
&self,
pvideoprocessor: P0,
streamindex: u32,
ptype: *mut crate::Dxgi::DXGI_HDR_METADATA_TYPE,
size: u32,
pmetadata: Option<*mut core::ffi::c_void>,
) where
P0: windows_core::Param<ID3D11VideoProcessor>,
{
unsafe {
(windows_core::Interface::vtable(self).VideoProcessorGetStreamHDRMetaData)(
windows_core::Interface::as_raw(self),
pvideoprocessor.param().abi(),
streamindex,
core::mem::transmute(ptype),
size,
core::mem::transmute(pmetadata.unwrap_or(core::mem::zeroed())),
)
}
}
}
#[repr(C)]
pub struct ID3D11VideoContext2_Vtbl {
pub base__: ID3D11VideoContext1_Vtbl,
#[cfg(feature = "Win32_Graphics_Dxgi")]
pub VideoProcessorSetOutputHDRMetaData: unsafe extern "system" fn(
*mut core::ffi::c_void,
*mut core::ffi::c_void,
crate::Dxgi::DXGI_HDR_METADATA_TYPE,
u32,
*const core::ffi::c_void,
),
#[cfg(not(feature = "Win32_Graphics_Dxgi"))]
VideoProcessorSetOutputHDRMetaData: usize,
#[cfg(feature = "Win32_Graphics_Dxgi")]
pub VideoProcessorGetOutputHDRMetaData: unsafe extern "system" fn(
*mut core::ffi::c_void,
*mut core::ffi::c_void,
*mut crate::Dxgi::DXGI_HDR_METADATA_TYPE,
u32,
*mut core::ffi::c_void,
),
#[cfg(not(feature = "Win32_Graphics_Dxgi"))]
VideoProcessorGetOutputHDRMetaData: usize,
#[cfg(feature = "Win32_Graphics_Dxgi")]
pub VideoProcessorSetStreamHDRMetaData: unsafe extern "system" fn(
*mut core::ffi::c_void,
*mut core::ffi::c_void,
u32,
crate::Dxgi::DXGI_HDR_METADATA_TYPE,
u32,
*const core::ffi::c_void,
),
#[cfg(not(feature = "Win32_Graphics_Dxgi"))]
VideoProcessorSetStreamHDRMetaData: usize,
#[cfg(feature = "Win32_Graphics_Dxgi")]
pub VideoProcessorGetStreamHDRMetaData: unsafe extern "system" fn(
*mut core::ffi::c_void,
*mut core::ffi::c_void,
u32,
*mut crate::Dxgi::DXGI_HDR_METADATA_TYPE,
u32,
*mut core::ffi::c_void,
),
#[cfg(not(feature = "Win32_Graphics_Dxgi"))]
VideoProcessorGetStreamHDRMetaData: usize,
}
#[cfg(feature = "Win32_Graphics_Dxgi_Common")]
pub trait ID3D11VideoContext2_Impl: ID3D11VideoContext1_Impl {
fn VideoProcessorSetOutputHDRMetaData(
&self,
pvideoprocessor: windows_core::Ref<'_, ID3D11VideoProcessor>,
r#type: crate::Dxgi::DXGI_HDR_METADATA_TYPE,
size: u32,
phdrmetadata: *const core::ffi::c_void,
);
fn VideoProcessorGetOutputHDRMetaData(
&self,
pvideoprocessor: windows_core::Ref<'_, ID3D11VideoProcessor>,
ptype: *mut crate::Dxgi::DXGI_HDR_METADATA_TYPE,
size: u32,
pmetadata: *mut core::ffi::c_void,
);
fn VideoProcessorSetStreamHDRMetaData(
&self,
pvideoprocessor: windows_core::Ref<'_, ID3D11VideoProcessor>,
streamindex: u32,
r#type: crate::Dxgi::DXGI_HDR_METADATA_TYPE,
size: u32,
phdrmetadata: *const core::ffi::c_void,
);
fn VideoProcessorGetStreamHDRMetaData(
&self,
pvideoprocessor: windows_core::Ref<'_, ID3D11VideoProcessor>,
streamindex: u32,
ptype: *mut crate::Dxgi::DXGI_HDR_METADATA_TYPE,
size: u32,
pmetadata: *mut core::ffi::c_void,
);
}
#[cfg(feature = "Win32_Graphics_Dxgi_Common")]
impl ID3D11VideoContext2_Vtbl {
pub const fn new<Identity: ID3D11VideoContext2_Impl, const OFFSET: isize>() -> Self {
unsafe extern "system" fn VideoProcessorSetOutputHDRMetaData<
Identity: ID3D11VideoContext2_Impl,
const OFFSET: isize,
>(
this: *mut core::ffi::c_void,
pvideoprocessor: *mut core::ffi::c_void,
r#type: crate::Dxgi::DXGI_HDR_METADATA_TYPE,
size: u32,
phdrmetadata: *const core::ffi::c_void,
) {
unsafe {
let this: &Identity =
&*((this as *const *const ()).offset(OFFSET) as *const Identity);
ID3D11VideoContext2_Impl::VideoProcessorSetOutputHDRMetaData(
this,
core::mem::transmute_copy(&pvideoprocessor),
core::mem::transmute_copy(&r#type),
core::mem::transmute_copy(&size),
core::mem::transmute_copy(&phdrmetadata),
)
}
}
unsafe extern "system" fn VideoProcessorGetOutputHDRMetaData<
Identity: ID3D11VideoContext2_Impl,
const OFFSET: isize,
>(
this: *mut core::ffi::c_void,
pvideoprocessor: *mut core::ffi::c_void,
ptype: *mut crate::Dxgi::DXGI_HDR_METADATA_TYPE,
size: u32,
pmetadata: *mut core::ffi::c_void,
) {
unsafe {
let this: &Identity =
&*((this as *const *const ()).offset(OFFSET) as *const Identity);
ID3D11VideoContext2_Impl::VideoProcessorGetOutputHDRMetaData(
this,
core::mem::transmute_copy(&pvideoprocessor),
core::mem::transmute_copy(&ptype),
core::mem::transmute_copy(&size),
core::mem::transmute_copy(&pmetadata),
)
}
}
unsafe extern "system" fn VideoProcessorSetStreamHDRMetaData<
Identity: ID3D11VideoContext2_Impl,
const OFFSET: isize,
>(
this: *mut core::ffi::c_void,
pvideoprocessor: *mut core::ffi::c_void,
streamindex: u32,
r#type: crate::Dxgi::DXGI_HDR_METADATA_TYPE,
size: u32,
phdrmetadata: *const core::ffi::c_void,
) {
unsafe {
let this: &Identity =
&*((this as *const *const ()).offset(OFFSET) as *const Identity);
ID3D11VideoContext2_Impl::VideoProcessorSetStreamHDRMetaData(
this,
core::mem::transmute_copy(&pvideoprocessor),
core::mem::transmute_copy(&streamindex),
core::mem::transmute_copy(&r#type),
core::mem::transmute_copy(&size),
core::mem::transmute_copy(&phdrmetadata),
)
}
}
unsafe extern "system" fn VideoProcessorGetStreamHDRMetaData<
Identity: ID3D11VideoContext2_Impl,
const OFFSET: isize,
>(
this: *mut core::ffi::c_void,
pvideoprocessor: *mut core::ffi::c_void,
streamindex: u32,
ptype: *mut crate::Dxgi::DXGI_HDR_METADATA_TYPE,
size: u32,
pmetadata: *mut core::ffi::c_void,
) {
unsafe {
let this: &Identity =
&*((this as *const *const ()).offset(OFFSET) as *const Identity);
ID3D11VideoContext2_Impl::VideoProcessorGetStreamHDRMetaData(
this,
core::mem::transmute_copy(&pvideoprocessor),
core::mem::transmute_copy(&streamindex),
core::mem::transmute_copy(&ptype),
core::mem::transmute_copy(&size),
core::mem::transmute_copy(&pmetadata),
)
}
}
Self {
base__: ID3D11VideoContext1_Vtbl::new::<Identity, OFFSET>(),
VideoProcessorSetOutputHDRMetaData: VideoProcessorSetOutputHDRMetaData::<
Identity,
OFFSET,
>,
VideoProcessorGetOutputHDRMetaData: VideoProcessorGetOutputHDRMetaData::<
Identity,
OFFSET,
>,
VideoProcessorSetStreamHDRMetaData: VideoProcessorSetStreamHDRMetaData::<
Identity,
OFFSET,
>,
VideoProcessorGetStreamHDRMetaData: VideoProcessorGetStreamHDRMetaData::<
Identity,
OFFSET,
>,
}
}
pub fn matches(iid: &windows_core::GUID) -> bool {
iid == &<ID3D11VideoContext2 as windows_core::Interface>::IID
|| iid == &<ID3D11DeviceChild as windows_core::Interface>::IID
|| iid == &<ID3D11VideoContext as windows_core::Interface>::IID
|| iid == &<ID3D11VideoContext1 as windows_core::Interface>::IID
}
}
#[cfg(feature = "Win32_Graphics_Dxgi_Common")]
impl windows_core::RuntimeName for ID3D11VideoContext2 {}
#[cfg(feature = "Win32_Graphics_Dxgi_Common")]
unsafe impl Send for ID3D11VideoContext2 {}
#[cfg(feature = "Win32_Graphics_Dxgi_Common")]
unsafe impl Sync for ID3D11VideoContext2 {}
windows_core::imp::define_interface!(
ID3D11VideoContext3,
ID3D11VideoContext3_Vtbl,
0xa9e2faa0_cb39_418f_a0b7_d8aad4de672e
);
impl core::ops::Deref for ID3D11VideoContext3 {
type Target = ID3D11VideoContext2;
fn deref(&self) -> &Self::Target {
unsafe { core::mem::transmute(self) }
}
}
windows_core::imp::interface_hierarchy!(
ID3D11VideoContext3,
windows_core::IUnknown,
ID3D11DeviceChild,
ID3D11VideoContext,
ID3D11VideoContext1,
ID3D11VideoContext2
);
impl ID3D11VideoContext3 {
pub unsafe fn DecoderBeginFrame1<P0, P1>(
&self,
pdecoder: P0,
pview: P1,
contentkeysize: u32,
pcontentkey: Option<*const core::ffi::c_void>,
numcomponenthistograms: u32,
phistogramoffsets: Option<*const u32>,
pphistogrambuffers: Option<*const Option<ID3D11Buffer>>,
) -> windows_core::Result<()>
where
P0: windows_core::Param<ID3D11VideoDecoder>,
P1: windows_core::Param<ID3D11VideoDecoderOutputView>,
{
unsafe {
(windows_core::Interface::vtable(self).DecoderBeginFrame1)(
windows_core::Interface::as_raw(self),
pdecoder.param().abi(),
pview.param().abi(),
contentkeysize,
core::mem::transmute(pcontentkey.unwrap_or(core::mem::zeroed())),
numcomponenthistograms,
core::mem::transmute(phistogramoffsets.unwrap_or(core::mem::zeroed())),
core::mem::transmute(pphistogrambuffers.unwrap_or(core::mem::zeroed())),
)
.ok()
}
}
pub unsafe fn SubmitDecoderBuffers2<P0>(
&self,
pdecoder: P0,
pbufferdesc: &[D3D11_VIDEO_DECODER_BUFFER_DESC2],
) -> windows_core::Result<()>
where
P0: windows_core::Param<ID3D11VideoDecoder>,
{
unsafe {
(windows_core::Interface::vtable(self).SubmitDecoderBuffers2)(
windows_core::Interface::as_raw(self),
pdecoder.param().abi(),
pbufferdesc.len().try_into().unwrap(),
core::mem::transmute(pbufferdesc.as_ptr()),
)
.ok()
}
}
}
#[repr(C)]
pub struct ID3D11VideoContext3_Vtbl {
pub base__: ID3D11VideoContext2_Vtbl,
pub DecoderBeginFrame1: unsafe extern "system" fn(
*mut core::ffi::c_void,
*mut core::ffi::c_void,
*mut core::ffi::c_void,
u32,
*const core::ffi::c_void,
u32,
*const u32,
*const *mut core::ffi::c_void,
) -> windows_core::HRESULT,
pub SubmitDecoderBuffers2: unsafe extern "system" fn(
*mut core::ffi::c_void,
*mut core::ffi::c_void,
u32,
*const D3D11_VIDEO_DECODER_BUFFER_DESC2,
) -> windows_core::HRESULT,
}
#[cfg(feature = "Win32_Graphics_Dxgi_Common")]
pub trait ID3D11VideoContext3_Impl: ID3D11VideoContext2_Impl {
fn DecoderBeginFrame1(
&self,
pdecoder: windows_core::Ref<'_, ID3D11VideoDecoder>,
pview: windows_core::Ref<'_, ID3D11VideoDecoderOutputView>,
contentkeysize: u32,
pcontentkey: *const core::ffi::c_void,
numcomponenthistograms: u32,
phistogramoffsets: *const u32,
pphistogrambuffers: *const Option<ID3D11Buffer>,
) -> windows_core::Result<()>;
fn SubmitDecoderBuffers2(
&self,
pdecoder: windows_core::Ref<'_, ID3D11VideoDecoder>,
numbuffers: u32,
pbufferdesc: *const D3D11_VIDEO_DECODER_BUFFER_DESC2,
) -> windows_core::Result<()>;
}
#[cfg(feature = "Win32_Graphics_Dxgi_Common")]
impl ID3D11VideoContext3_Vtbl {
pub const fn new<Identity: ID3D11VideoContext3_Impl, const OFFSET: isize>() -> Self {
unsafe extern "system" fn DecoderBeginFrame1<
Identity: ID3D11VideoContext3_Impl,
const OFFSET: isize,
>(
this: *mut core::ffi::c_void,
pdecoder: *mut core::ffi::c_void,
pview: *mut core::ffi::c_void,
contentkeysize: u32,
pcontentkey: *const core::ffi::c_void,
numcomponenthistograms: u32,
phistogramoffsets: *const u32,
pphistogrambuffers: *const *mut core::ffi::c_void,
) -> windows_core::HRESULT {
unsafe {
let this: &Identity =
&*((this as *const *const ()).offset(OFFSET) as *const Identity);
ID3D11VideoContext3_Impl::DecoderBeginFrame1(
this,
core::mem::transmute_copy(&pdecoder),
core::mem::transmute_copy(&pview),
core::mem::transmute_copy(&contentkeysize),
core::mem::transmute_copy(&pcontentkey),
core::mem::transmute_copy(&numcomponenthistograms),
core::mem::transmute_copy(&phistogramoffsets),
core::mem::transmute_copy(&pphistogrambuffers),
)
.into()
}
}
unsafe extern "system" fn SubmitDecoderBuffers2<
Identity: ID3D11VideoContext3_Impl,
const OFFSET: isize,
>(
this: *mut core::ffi::c_void,
pdecoder: *mut core::ffi::c_void,
numbuffers: u32,
pbufferdesc: *const D3D11_VIDEO_DECODER_BUFFER_DESC2,
) -> windows_core::HRESULT {
unsafe {
let this: &Identity =
&*((this as *const *const ()).offset(OFFSET) as *const Identity);
ID3D11VideoContext3_Impl::SubmitDecoderBuffers2(
this,
core::mem::transmute_copy(&pdecoder),
core::mem::transmute_copy(&numbuffers),
core::mem::transmute_copy(&pbufferdesc),
)
.into()
}
}
Self {
base__: ID3D11VideoContext2_Vtbl::new::<Identity, OFFSET>(),
DecoderBeginFrame1: DecoderBeginFrame1::<Identity, OFFSET>,
SubmitDecoderBuffers2: SubmitDecoderBuffers2::<Identity, OFFSET>,
}
}
pub fn matches(iid: &windows_core::GUID) -> bool {
iid == &<ID3D11VideoContext3 as windows_core::Interface>::IID
|| iid == &<ID3D11DeviceChild as windows_core::Interface>::IID
|| iid == &<ID3D11VideoContext as windows_core::Interface>::IID
|| iid == &<ID3D11VideoContext1 as windows_core::Interface>::IID
|| iid == &<ID3D11VideoContext2 as windows_core::Interface>::IID
}
}
#[cfg(feature = "Win32_Graphics_Dxgi_Common")]
impl windows_core::RuntimeName for ID3D11VideoContext3 {}
#[cfg(feature = "Win32_Graphics_Dxgi_Common")]
unsafe impl Send for ID3D11VideoContext3 {}
#[cfg(feature = "Win32_Graphics_Dxgi_Common")]
unsafe impl Sync for ID3D11VideoContext3 {}
windows_core::imp::define_interface!(
ID3D11VideoDecoder,
ID3D11VideoDecoder_Vtbl,
0x3c9c5b51_995d_48d1_9b8d_fa5caeded65c
);
impl core::ops::Deref for ID3D11VideoDecoder {
type Target = ID3D11DeviceChild;
fn deref(&self) -> &Self::Target {
unsafe { core::mem::transmute(self) }
}
}
windows_core::imp::interface_hierarchy!(
ID3D11VideoDecoder,
windows_core::IUnknown,
ID3D11DeviceChild
);
impl ID3D11VideoDecoder {
#[cfg(feature = "Win32_Graphics_Dxgi_Common")]
pub unsafe fn GetCreationParameters(
&self,
pvideodesc: *mut D3D11_VIDEO_DECODER_DESC,
pconfig: *mut D3D11_VIDEO_DECODER_CONFIG,
) -> windows_core::Result<()> {
unsafe {
(windows_core::Interface::vtable(self).GetCreationParameters)(
windows_core::Interface::as_raw(self),
core::mem::transmute(pvideodesc),
core::mem::transmute(pconfig),
)
.ok()
}
}
pub unsafe fn GetDriverHandle(&self) -> windows_core::Result<crate::Foundation::HANDLE> {
unsafe {
let mut result__ = core::mem::zeroed();
(windows_core::Interface::vtable(self).GetDriverHandle)(
windows_core::Interface::as_raw(self),
&mut result__,
)
.map(|| result__)
}
}
}
#[repr(C)]
pub struct ID3D11VideoDecoder_Vtbl {
pub base__: ID3D11DeviceChild_Vtbl,
#[cfg(feature = "Win32_Graphics_Dxgi_Common")]
pub GetCreationParameters: unsafe extern "system" fn(
*mut core::ffi::c_void,
*mut D3D11_VIDEO_DECODER_DESC,
*mut D3D11_VIDEO_DECODER_CONFIG,
) -> windows_core::HRESULT,
#[cfg(not(feature = "Win32_Graphics_Dxgi_Common"))]
GetCreationParameters: usize,
pub GetDriverHandle: unsafe extern "system" fn(
*mut core::ffi::c_void,
*mut crate::Foundation::HANDLE,
) -> windows_core::HRESULT,
}
#[cfg(feature = "Win32_Graphics_Dxgi_Common")]
pub trait ID3D11VideoDecoder_Impl: ID3D11DeviceChild_Impl {
fn GetCreationParameters(
&self,
pvideodesc: *mut D3D11_VIDEO_DECODER_DESC,
pconfig: *mut D3D11_VIDEO_DECODER_CONFIG,
) -> windows_core::Result<()>;
fn GetDriverHandle(&self) -> windows_core::Result<crate::Foundation::HANDLE>;
}
#[cfg(feature = "Win32_Graphics_Dxgi_Common")]
impl ID3D11VideoDecoder_Vtbl {
pub const fn new<Identity: ID3D11VideoDecoder_Impl, const OFFSET: isize>() -> Self {
unsafe extern "system" fn GetCreationParameters<
Identity: ID3D11VideoDecoder_Impl,
const OFFSET: isize,
>(
this: *mut core::ffi::c_void,
pvideodesc: *mut D3D11_VIDEO_DECODER_DESC,
pconfig: *mut D3D11_VIDEO_DECODER_CONFIG,
) -> windows_core::HRESULT {
unsafe {
let this: &Identity =
&*((this as *const *const ()).offset(OFFSET) as *const Identity);
ID3D11VideoDecoder_Impl::GetCreationParameters(
this,
core::mem::transmute_copy(&pvideodesc),
core::mem::transmute_copy(&pconfig),
)
.into()
}
}
unsafe extern "system" fn GetDriverHandle<
Identity: ID3D11VideoDecoder_Impl,
const OFFSET: isize,
>(
this: *mut core::ffi::c_void,
pdriverhandle: *mut crate::Foundation::HANDLE,
) -> windows_core::HRESULT {
unsafe {
let this: &Identity =
&*((this as *const *const ()).offset(OFFSET) as *const Identity);
match ID3D11VideoDecoder_Impl::GetDriverHandle(this) {
Ok(ok__) => {
pdriverhandle.write(core::mem::transmute(ok__));
windows_core::HRESULT(0)
}
Err(err) => err.into(),
}
}
}
Self {
base__: ID3D11DeviceChild_Vtbl::new::<Identity, OFFSET>(),
GetCreationParameters: GetCreationParameters::<Identity, OFFSET>,
GetDriverHandle: GetDriverHandle::<Identity, OFFSET>,
}
}
pub fn matches(iid: &windows_core::GUID) -> bool {
iid == &<ID3D11VideoDecoder as windows_core::Interface>::IID
|| iid == &<ID3D11DeviceChild as windows_core::Interface>::IID
}
}
#[cfg(feature = "Win32_Graphics_Dxgi_Common")]
impl windows_core::RuntimeName for ID3D11VideoDecoder {}
#[cfg(feature = "Win32_Graphics_Dxgi_Common")]
unsafe impl Send for ID3D11VideoDecoder {}
#[cfg(feature = "Win32_Graphics_Dxgi_Common")]
unsafe impl Sync for ID3D11VideoDecoder {}
windows_core::imp::define_interface!(
ID3D11VideoDecoderOutputView,
ID3D11VideoDecoderOutputView_Vtbl,
0xc2931aea_2a85_4f20_860f_fba1fd256e18
);
impl core::ops::Deref for ID3D11VideoDecoderOutputView {
type Target = ID3D11View;
fn deref(&self) -> &Self::Target {
unsafe { core::mem::transmute(self) }
}
}
windows_core::imp::interface_hierarchy!(
ID3D11VideoDecoderOutputView,
windows_core::IUnknown,
ID3D11DeviceChild,
ID3D11View
);
impl ID3D11VideoDecoderOutputView {
pub unsafe fn GetDesc(&self, pdesc: *mut D3D11_VIDEO_DECODER_OUTPUT_VIEW_DESC) {
unsafe {
(windows_core::Interface::vtable(self).GetDesc)(
windows_core::Interface::as_raw(self),
core::mem::transmute(pdesc),
)
}
}
}
#[repr(C)]
pub struct ID3D11VideoDecoderOutputView_Vtbl {
pub base__: ID3D11View_Vtbl,
pub GetDesc: unsafe extern "system" fn(
*mut core::ffi::c_void,
*mut D3D11_VIDEO_DECODER_OUTPUT_VIEW_DESC,
),
}
pub trait ID3D11VideoDecoderOutputView_Impl: ID3D11View_Impl {
fn GetDesc(&self, pdesc: *mut D3D11_VIDEO_DECODER_OUTPUT_VIEW_DESC);
}
impl ID3D11VideoDecoderOutputView_Vtbl {
pub const fn new<Identity: ID3D11VideoDecoderOutputView_Impl, const OFFSET: isize>() -> Self {
unsafe extern "system" fn GetDesc<
Identity: ID3D11VideoDecoderOutputView_Impl,
const OFFSET: isize,
>(
this: *mut core::ffi::c_void,
pdesc: *mut D3D11_VIDEO_DECODER_OUTPUT_VIEW_DESC,
) {
unsafe {
let this: &Identity =
&*((this as *const *const ()).offset(OFFSET) as *const Identity);
ID3D11VideoDecoderOutputView_Impl::GetDesc(this, core::mem::transmute_copy(&pdesc))
}
}
Self {
base__: ID3D11View_Vtbl::new::<Identity, OFFSET>(),
GetDesc: GetDesc::<Identity, OFFSET>,
}
}
pub fn matches(iid: &windows_core::GUID) -> bool {
iid == &<ID3D11VideoDecoderOutputView as windows_core::Interface>::IID
|| iid == &<ID3D11DeviceChild as windows_core::Interface>::IID
|| iid == &<ID3D11View as windows_core::Interface>::IID
}
}
impl windows_core::RuntimeName for ID3D11VideoDecoderOutputView {}
unsafe impl Send for ID3D11VideoDecoderOutputView {}
unsafe impl Sync for ID3D11VideoDecoderOutputView {}
windows_core::imp::define_interface!(
ID3D11VideoDevice,
ID3D11VideoDevice_Vtbl,
0x10ec4d5b_975a_4689_b9e4_d0aac30fe333
);
windows_core::imp::interface_hierarchy!(ID3D11VideoDevice, windows_core::IUnknown);
impl ID3D11VideoDevice {
#[cfg(feature = "Win32_Graphics_Dxgi_Common")]
pub unsafe fn CreateVideoDecoder(
&self,
pvideodesc: *const D3D11_VIDEO_DECODER_DESC,
pconfig: *const D3D11_VIDEO_DECODER_CONFIG,
) -> windows_core::Result<ID3D11VideoDecoder> {
unsafe {
let mut result__ = core::mem::zeroed();
(windows_core::Interface::vtable(self).CreateVideoDecoder)(
windows_core::Interface::as_raw(self),
pvideodesc,
pconfig,
&mut result__,
)
.and_then(|| windows_core::Type::from_abi(result__))
}
}
pub unsafe fn CreateVideoProcessor<P0>(
&self,
penum: P0,
rateconversionindex: u32,
) -> windows_core::Result<ID3D11VideoProcessor>
where
P0: windows_core::Param<ID3D11VideoProcessorEnumerator>,
{
unsafe {
let mut result__ = core::mem::zeroed();
(windows_core::Interface::vtable(self).CreateVideoProcessor)(
windows_core::Interface::as_raw(self),
penum.param().abi(),
rateconversionindex,
&mut result__,
)
.and_then(|| windows_core::Type::from_abi(result__))
}
}
pub unsafe fn CreateAuthenticatedChannel(
&self,
channeltype: D3D11_AUTHENTICATED_CHANNEL_TYPE,
) -> windows_core::Result<ID3D11AuthenticatedChannel> {
unsafe {
let mut result__ = core::mem::zeroed();
(windows_core::Interface::vtable(self).CreateAuthenticatedChannel)(
windows_core::Interface::as_raw(self),
channeltype,
&mut result__,
)
.and_then(|| windows_core::Type::from_abi(result__))
}
}
pub unsafe fn CreateCryptoSession(
&self,
pcryptotype: *const windows_core::GUID,
pdecoderprofile: Option<*const windows_core::GUID>,
pkeyexchangetype: *const windows_core::GUID,
) -> windows_core::Result<ID3D11CryptoSession> {
unsafe {
let mut result__ = core::mem::zeroed();
(windows_core::Interface::vtable(self).CreateCryptoSession)(
windows_core::Interface::as_raw(self),
pcryptotype,
core::mem::transmute(pdecoderprofile.unwrap_or(core::mem::zeroed())),
pkeyexchangetype,
&mut result__,
)
.and_then(|| windows_core::Type::from_abi(result__))
}
}
pub unsafe fn CreateVideoDecoderOutputView<P0>(
&self,
presource: P0,
pdesc: *const D3D11_VIDEO_DECODER_OUTPUT_VIEW_DESC,
ppvdovview: Option<*mut Option<ID3D11VideoDecoderOutputView>>,
) -> windows_core::Result<()>
where
P0: windows_core::Param<ID3D11Resource>,
{
unsafe {
(windows_core::Interface::vtable(self).CreateVideoDecoderOutputView)(
windows_core::Interface::as_raw(self),
presource.param().abi(),
pdesc,
core::mem::transmute(ppvdovview.unwrap_or(core::mem::zeroed())),
)
.ok()
}
}
pub unsafe fn CreateVideoProcessorInputView<P0, P1>(
&self,
presource: P0,
penum: P1,
pdesc: *const D3D11_VIDEO_PROCESSOR_INPUT_VIEW_DESC,
ppvpiview: Option<*mut Option<ID3D11VideoProcessorInputView>>,
) -> windows_core::Result<()>
where
P0: windows_core::Param<ID3D11Resource>,
P1: windows_core::Param<ID3D11VideoProcessorEnumerator>,
{
unsafe {
(windows_core::Interface::vtable(self).CreateVideoProcessorInputView)(
windows_core::Interface::as_raw(self),
presource.param().abi(),
penum.param().abi(),
pdesc,
core::mem::transmute(ppvpiview.unwrap_or(core::mem::zeroed())),
)
.ok()
}
}
pub unsafe fn CreateVideoProcessorOutputView<P0, P1>(
&self,
presource: P0,
penum: P1,
pdesc: *const D3D11_VIDEO_PROCESSOR_OUTPUT_VIEW_DESC,
ppvpoview: Option<*mut Option<ID3D11VideoProcessorOutputView>>,
) -> windows_core::Result<()>
where
P0: windows_core::Param<ID3D11Resource>,
P1: windows_core::Param<ID3D11VideoProcessorEnumerator>,
{
unsafe {
(windows_core::Interface::vtable(self).CreateVideoProcessorOutputView)(
windows_core::Interface::as_raw(self),
presource.param().abi(),
penum.param().abi(),
pdesc,
core::mem::transmute(ppvpoview.unwrap_or(core::mem::zeroed())),
)
.ok()
}
}
#[cfg(feature = "Win32_Graphics_Dxgi_Common")]
pub unsafe fn CreateVideoProcessorEnumerator(
&self,
pdesc: *const D3D11_VIDEO_PROCESSOR_CONTENT_DESC,
) -> windows_core::Result<ID3D11VideoProcessorEnumerator> {
unsafe {
let mut result__ = core::mem::zeroed();
(windows_core::Interface::vtable(self).CreateVideoProcessorEnumerator)(
windows_core::Interface::as_raw(self),
pdesc,
&mut result__,
)
.and_then(|| windows_core::Type::from_abi(result__))
}
}
pub unsafe fn GetVideoDecoderProfileCount(&self) -> u32 {
unsafe {
(windows_core::Interface::vtable(self).GetVideoDecoderProfileCount)(
windows_core::Interface::as_raw(self),
)
}
}
pub unsafe fn GetVideoDecoderProfile(
&self,
index: u32,
) -> windows_core::Result<windows_core::GUID> {
unsafe {
let mut result__ = core::mem::zeroed();
(windows_core::Interface::vtable(self).GetVideoDecoderProfile)(
windows_core::Interface::as_raw(self),
index,
&mut result__,
)
.map(|| result__)
}
}
#[cfg(feature = "Win32_Graphics_Dxgi_Common")]
pub unsafe fn CheckVideoDecoderFormat(
&self,
pdecoderprofile: *const windows_core::GUID,
format: crate::Dxgi::Common::DXGI_FORMAT,
) -> windows_core::Result<crate::Foundation::BOOL> {
unsafe {
let mut result__ = core::mem::zeroed();
(windows_core::Interface::vtable(self).CheckVideoDecoderFormat)(
windows_core::Interface::as_raw(self),
pdecoderprofile,
format,
&mut result__,
)
.map(|| result__)
}
}
#[cfg(feature = "Win32_Graphics_Dxgi_Common")]
pub unsafe fn GetVideoDecoderConfigCount(
&self,
pdesc: *const D3D11_VIDEO_DECODER_DESC,
) -> windows_core::Result<u32> {
unsafe {
let mut result__ = core::mem::zeroed();
(windows_core::Interface::vtable(self).GetVideoDecoderConfigCount)(
windows_core::Interface::as_raw(self),
pdesc,
&mut result__,
)
.map(|| result__)
}
}
#[cfg(feature = "Win32_Graphics_Dxgi_Common")]
pub unsafe fn GetVideoDecoderConfig(
&self,
pdesc: *const D3D11_VIDEO_DECODER_DESC,
index: u32,
pconfig: *mut D3D11_VIDEO_DECODER_CONFIG,
) -> windows_core::Result<()> {
unsafe {
(windows_core::Interface::vtable(self).GetVideoDecoderConfig)(
windows_core::Interface::as_raw(self),
pdesc,
index,
core::mem::transmute(pconfig),
)
.ok()
}
}
pub unsafe fn GetContentProtectionCaps(
&self,
pcryptotype: Option<*const windows_core::GUID>,
pdecoderprofile: Option<*const windows_core::GUID>,
pcaps: *mut D3D11_VIDEO_CONTENT_PROTECTION_CAPS,
) -> windows_core::Result<()> {
unsafe {
(windows_core::Interface::vtable(self).GetContentProtectionCaps)(
windows_core::Interface::as_raw(self),
core::mem::transmute(pcryptotype.unwrap_or(core::mem::zeroed())),
core::mem::transmute(pdecoderprofile.unwrap_or(core::mem::zeroed())),
core::mem::transmute(pcaps),
)
.ok()
}
}
pub unsafe fn CheckCryptoKeyExchange(
&self,
pcryptotype: *const windows_core::GUID,
pdecoderprofile: Option<*const windows_core::GUID>,
index: u32,
) -> windows_core::Result<windows_core::GUID> {
unsafe {
let mut result__ = core::mem::zeroed();
(windows_core::Interface::vtable(self).CheckCryptoKeyExchange)(
windows_core::Interface::as_raw(self),
pcryptotype,
core::mem::transmute(pdecoderprofile.unwrap_or(core::mem::zeroed())),
index,
&mut result__,
)
.map(|| result__)
}
}
pub unsafe fn SetPrivateData(
&self,
guid: *const windows_core::GUID,
datasize: u32,
pdata: Option<*const core::ffi::c_void>,
) -> windows_core::Result<()> {
unsafe {
(windows_core::Interface::vtable(self).SetPrivateData)(
windows_core::Interface::as_raw(self),
guid,
datasize,
core::mem::transmute(pdata.unwrap_or(core::mem::zeroed())),
)
.ok()
}
}
pub unsafe fn SetPrivateDataInterface<P1>(
&self,
guid: *const windows_core::GUID,
pdata: P1,
) -> windows_core::Result<()>
where
P1: windows_core::Param<windows_core::IUnknown>,
{
unsafe {
(windows_core::Interface::vtable(self).SetPrivateDataInterface)(
windows_core::Interface::as_raw(self),
guid,
pdata.param().abi(),
)
.ok()
}
}
}
#[repr(C)]
pub struct ID3D11VideoDevice_Vtbl {
pub base__: windows_core::IUnknown_Vtbl,
#[cfg(feature = "Win32_Graphics_Dxgi_Common")]
pub CreateVideoDecoder: unsafe extern "system" fn(
*mut core::ffi::c_void,
*const D3D11_VIDEO_DECODER_DESC,
*const D3D11_VIDEO_DECODER_CONFIG,
*mut *mut core::ffi::c_void,
) -> windows_core::HRESULT,
#[cfg(not(feature = "Win32_Graphics_Dxgi_Common"))]
CreateVideoDecoder: usize,
pub CreateVideoProcessor: unsafe extern "system" fn(
*mut core::ffi::c_void,
*mut core::ffi::c_void,
u32,
*mut *mut core::ffi::c_void,
) -> windows_core::HRESULT,
pub CreateAuthenticatedChannel: unsafe extern "system" fn(
*mut core::ffi::c_void,
D3D11_AUTHENTICATED_CHANNEL_TYPE,
*mut *mut core::ffi::c_void,
) -> windows_core::HRESULT,
pub CreateCryptoSession: unsafe extern "system" fn(
*mut core::ffi::c_void,
*const windows_core::GUID,
*const windows_core::GUID,
*const windows_core::GUID,
*mut *mut core::ffi::c_void,
) -> windows_core::HRESULT,
pub CreateVideoDecoderOutputView: unsafe extern "system" fn(
*mut core::ffi::c_void,
*mut core::ffi::c_void,
*const D3D11_VIDEO_DECODER_OUTPUT_VIEW_DESC,
*mut *mut core::ffi::c_void,
) -> windows_core::HRESULT,
pub CreateVideoProcessorInputView: unsafe extern "system" fn(
*mut core::ffi::c_void,
*mut core::ffi::c_void,
*mut core::ffi::c_void,
*const D3D11_VIDEO_PROCESSOR_INPUT_VIEW_DESC,
*mut *mut core::ffi::c_void,
) -> windows_core::HRESULT,
pub CreateVideoProcessorOutputView: unsafe extern "system" fn(
*mut core::ffi::c_void,
*mut core::ffi::c_void,
*mut core::ffi::c_void,
*const D3D11_VIDEO_PROCESSOR_OUTPUT_VIEW_DESC,
*mut *mut core::ffi::c_void,
) -> windows_core::HRESULT,
#[cfg(feature = "Win32_Graphics_Dxgi_Common")]
pub CreateVideoProcessorEnumerator: unsafe extern "system" fn(
*mut core::ffi::c_void,
*const D3D11_VIDEO_PROCESSOR_CONTENT_DESC,
*mut *mut core::ffi::c_void,
) -> windows_core::HRESULT,
#[cfg(not(feature = "Win32_Graphics_Dxgi_Common"))]
CreateVideoProcessorEnumerator: usize,
pub GetVideoDecoderProfileCount: unsafe extern "system" fn(*mut core::ffi::c_void) -> u32,
pub GetVideoDecoderProfile: unsafe extern "system" fn(
*mut core::ffi::c_void,
u32,
*mut windows_core::GUID,
) -> windows_core::HRESULT,
#[cfg(feature = "Win32_Graphics_Dxgi_Common")]
pub CheckVideoDecoderFormat: unsafe extern "system" fn(
*mut core::ffi::c_void,
*const windows_core::GUID,
crate::Dxgi::Common::DXGI_FORMAT,
*mut crate::Foundation::BOOL,
) -> windows_core::HRESULT,
#[cfg(not(feature = "Win32_Graphics_Dxgi_Common"))]
CheckVideoDecoderFormat: usize,
#[cfg(feature = "Win32_Graphics_Dxgi_Common")]
pub GetVideoDecoderConfigCount: unsafe extern "system" fn(
*mut core::ffi::c_void,
*const D3D11_VIDEO_DECODER_DESC,
*mut u32,
) -> windows_core::HRESULT,
#[cfg(not(feature = "Win32_Graphics_Dxgi_Common"))]
GetVideoDecoderConfigCount: usize,
#[cfg(feature = "Win32_Graphics_Dxgi_Common")]
pub GetVideoDecoderConfig: unsafe extern "system" fn(
*mut core::ffi::c_void,
*const D3D11_VIDEO_DECODER_DESC,
u32,
*mut D3D11_VIDEO_DECODER_CONFIG,
) -> windows_core::HRESULT,
#[cfg(not(feature = "Win32_Graphics_Dxgi_Common"))]
GetVideoDecoderConfig: usize,
pub GetContentProtectionCaps: unsafe extern "system" fn(
*mut core::ffi::c_void,
*const windows_core::GUID,
*const windows_core::GUID,
*mut D3D11_VIDEO_CONTENT_PROTECTION_CAPS,
) -> windows_core::HRESULT,
pub CheckCryptoKeyExchange: unsafe extern "system" fn(
*mut core::ffi::c_void,
*const windows_core::GUID,
*const windows_core::GUID,
u32,
*mut windows_core::GUID,
) -> windows_core::HRESULT,
pub SetPrivateData: unsafe extern "system" fn(
*mut core::ffi::c_void,
*const windows_core::GUID,
u32,
*const core::ffi::c_void,
) -> windows_core::HRESULT,
pub SetPrivateDataInterface: unsafe extern "system" fn(
*mut core::ffi::c_void,
*const windows_core::GUID,
*mut core::ffi::c_void,
) -> windows_core::HRESULT,
}
#[cfg(feature = "Win32_Graphics_Dxgi_Common")]
pub trait ID3D11VideoDevice_Impl: windows_core::IUnknownImpl {
fn CreateVideoDecoder(
&self,
pvideodesc: *const D3D11_VIDEO_DECODER_DESC,
pconfig: *const D3D11_VIDEO_DECODER_CONFIG,
) -> windows_core::Result<ID3D11VideoDecoder>;
fn CreateVideoProcessor(
&self,
penum: windows_core::Ref<'_, ID3D11VideoProcessorEnumerator>,
rateconversionindex: u32,
) -> windows_core::Result<ID3D11VideoProcessor>;
fn CreateAuthenticatedChannel(
&self,
channeltype: D3D11_AUTHENTICATED_CHANNEL_TYPE,
) -> windows_core::Result<ID3D11AuthenticatedChannel>;
fn CreateCryptoSession(
&self,
pcryptotype: *const windows_core::GUID,
pdecoderprofile: *const windows_core::GUID,
pkeyexchangetype: *const windows_core::GUID,
) -> windows_core::Result<ID3D11CryptoSession>;
fn CreateVideoDecoderOutputView(
&self,
presource: windows_core::Ref<'_, ID3D11Resource>,
pdesc: *const D3D11_VIDEO_DECODER_OUTPUT_VIEW_DESC,
ppvdovview: windows_core::OutRef<'_, ID3D11VideoDecoderOutputView>,
) -> windows_core::Result<()>;
fn CreateVideoProcessorInputView(
&self,
presource: windows_core::Ref<'_, ID3D11Resource>,
penum: windows_core::Ref<'_, ID3D11VideoProcessorEnumerator>,
pdesc: *const D3D11_VIDEO_PROCESSOR_INPUT_VIEW_DESC,
ppvpiview: windows_core::OutRef<'_, ID3D11VideoProcessorInputView>,
) -> windows_core::Result<()>;
fn CreateVideoProcessorOutputView(
&self,
presource: windows_core::Ref<'_, ID3D11Resource>,
penum: windows_core::Ref<'_, ID3D11VideoProcessorEnumerator>,
pdesc: *const D3D11_VIDEO_PROCESSOR_OUTPUT_VIEW_DESC,
ppvpoview: windows_core::OutRef<'_, ID3D11VideoProcessorOutputView>,
) -> windows_core::Result<()>;
fn CreateVideoProcessorEnumerator(
&self,
pdesc: *const D3D11_VIDEO_PROCESSOR_CONTENT_DESC,
) -> windows_core::Result<ID3D11VideoProcessorEnumerator>;
fn GetVideoDecoderProfileCount(&self) -> u32;
fn GetVideoDecoderProfile(&self, index: u32) -> windows_core::Result<windows_core::GUID>;
fn CheckVideoDecoderFormat(
&self,
pdecoderprofile: *const windows_core::GUID,
format: crate::Dxgi::Common::DXGI_FORMAT,
) -> windows_core::Result<crate::Foundation::BOOL>;
fn GetVideoDecoderConfigCount(
&self,
pdesc: *const D3D11_VIDEO_DECODER_DESC,
) -> windows_core::Result<u32>;
fn GetVideoDecoderConfig(
&self,
pdesc: *const D3D11_VIDEO_DECODER_DESC,
index: u32,
pconfig: *mut D3D11_VIDEO_DECODER_CONFIG,
) -> windows_core::Result<()>;
fn GetContentProtectionCaps(
&self,
pcryptotype: *const windows_core::GUID,
pdecoderprofile: *const windows_core::GUID,
pcaps: *mut D3D11_VIDEO_CONTENT_PROTECTION_CAPS,
) -> windows_core::Result<()>;
fn CheckCryptoKeyExchange(
&self,
pcryptotype: *const windows_core::GUID,
pdecoderprofile: *const windows_core::GUID,
index: u32,
) -> windows_core::Result<windows_core::GUID>;
fn SetPrivateData(
&self,
guid: *const windows_core::GUID,
datasize: u32,
pdata: *const core::ffi::c_void,
) -> windows_core::Result<()>;
fn SetPrivateDataInterface(
&self,
guid: *const windows_core::GUID,
pdata: windows_core::Ref<'_, windows_core::IUnknown>,
) -> windows_core::Result<()>;
}
#[cfg(feature = "Win32_Graphics_Dxgi_Common")]
impl ID3D11VideoDevice_Vtbl {
pub const fn new<Identity: ID3D11VideoDevice_Impl, const OFFSET: isize>() -> Self {
unsafe extern "system" fn CreateVideoDecoder<
Identity: ID3D11VideoDevice_Impl,
const OFFSET: isize,
>(
this: *mut core::ffi::c_void,
pvideodesc: *const D3D11_VIDEO_DECODER_DESC,
pconfig: *const D3D11_VIDEO_DECODER_CONFIG,
ppdecoder: *mut *mut core::ffi::c_void,
) -> windows_core::HRESULT {
unsafe {
let this: &Identity =
&*((this as *const *const ()).offset(OFFSET) as *const Identity);
match ID3D11VideoDevice_Impl::CreateVideoDecoder(
this,
core::mem::transmute_copy(&pvideodesc),
core::mem::transmute_copy(&pconfig),
) {
Ok(ok__) => {
ppdecoder.write(core::mem::transmute(ok__));
windows_core::HRESULT(0)
}
Err(err) => err.into(),
}
}
}
unsafe extern "system" fn CreateVideoProcessor<
Identity: ID3D11VideoDevice_Impl,
const OFFSET: isize,
>(
this: *mut core::ffi::c_void,
penum: *mut core::ffi::c_void,
rateconversionindex: u32,
ppvideoprocessor: *mut *mut core::ffi::c_void,
) -> windows_core::HRESULT {
unsafe {
let this: &Identity =
&*((this as *const *const ()).offset(OFFSET) as *const Identity);
match ID3D11VideoDevice_Impl::CreateVideoProcessor(
this,
core::mem::transmute_copy(&penum),
core::mem::transmute_copy(&rateconversionindex),
) {
Ok(ok__) => {
ppvideoprocessor.write(core::mem::transmute(ok__));
windows_core::HRESULT(0)
}
Err(err) => err.into(),
}
}
}
unsafe extern "system" fn CreateAuthenticatedChannel<
Identity: ID3D11VideoDevice_Impl,
const OFFSET: isize,
>(
this: *mut core::ffi::c_void,
channeltype: D3D11_AUTHENTICATED_CHANNEL_TYPE,
ppauthenticatedchannel: *mut *mut core::ffi::c_void,
) -> windows_core::HRESULT {
unsafe {
let this: &Identity =
&*((this as *const *const ()).offset(OFFSET) as *const Identity);
match ID3D11VideoDevice_Impl::CreateAuthenticatedChannel(
this,
core::mem::transmute_copy(&channeltype),
) {
Ok(ok__) => {
ppauthenticatedchannel.write(core::mem::transmute(ok__));
windows_core::HRESULT(0)
}
Err(err) => err.into(),
}
}
}
unsafe extern "system" fn CreateCryptoSession<
Identity: ID3D11VideoDevice_Impl,
const OFFSET: isize,
>(
this: *mut core::ffi::c_void,
pcryptotype: *const windows_core::GUID,
pdecoderprofile: *const windows_core::GUID,
pkeyexchangetype: *const windows_core::GUID,
ppcryptosession: *mut *mut core::ffi::c_void,
) -> windows_core::HRESULT {
unsafe {
let this: &Identity =
&*((this as *const *const ()).offset(OFFSET) as *const Identity);
match ID3D11VideoDevice_Impl::CreateCryptoSession(
this,
core::mem::transmute_copy(&pcryptotype),
core::mem::transmute_copy(&pdecoderprofile),
core::mem::transmute_copy(&pkeyexchangetype),
) {
Ok(ok__) => {
ppcryptosession.write(core::mem::transmute(ok__));
windows_core::HRESULT(0)
}
Err(err) => err.into(),
}
}
}
unsafe extern "system" fn CreateVideoDecoderOutputView<
Identity: ID3D11VideoDevice_Impl,
const OFFSET: isize,
>(
this: *mut core::ffi::c_void,
presource: *mut core::ffi::c_void,
pdesc: *const D3D11_VIDEO_DECODER_OUTPUT_VIEW_DESC,
ppvdovview: *mut *mut core::ffi::c_void,
) -> windows_core::HRESULT {
unsafe {
let this: &Identity =
&*((this as *const *const ()).offset(OFFSET) as *const Identity);
ID3D11VideoDevice_Impl::CreateVideoDecoderOutputView(
this,
core::mem::transmute_copy(&presource),
core::mem::transmute_copy(&pdesc),
core::mem::transmute_copy(&ppvdovview),
)
.into()
}
}
unsafe extern "system" fn CreateVideoProcessorInputView<
Identity: ID3D11VideoDevice_Impl,
const OFFSET: isize,
>(
this: *mut core::ffi::c_void,
presource: *mut core::ffi::c_void,
penum: *mut core::ffi::c_void,
pdesc: *const D3D11_VIDEO_PROCESSOR_INPUT_VIEW_DESC,
ppvpiview: *mut *mut core::ffi::c_void,
) -> windows_core::HRESULT {
unsafe {
let this: &Identity =
&*((this as *const *const ()).offset(OFFSET) as *const Identity);
ID3D11VideoDevice_Impl::CreateVideoProcessorInputView(
this,
core::mem::transmute_copy(&presource),
core::mem::transmute_copy(&penum),
core::mem::transmute_copy(&pdesc),
core::mem::transmute_copy(&ppvpiview),
)
.into()
}
}
unsafe extern "system" fn CreateVideoProcessorOutputView<
Identity: ID3D11VideoDevice_Impl,
const OFFSET: isize,
>(
this: *mut core::ffi::c_void,
presource: *mut core::ffi::c_void,
penum: *mut core::ffi::c_void,
pdesc: *const D3D11_VIDEO_PROCESSOR_OUTPUT_VIEW_DESC,
ppvpoview: *mut *mut core::ffi::c_void,
) -> windows_core::HRESULT {
unsafe {
let this: &Identity =
&*((this as *const *const ()).offset(OFFSET) as *const Identity);
ID3D11VideoDevice_Impl::CreateVideoProcessorOutputView(
this,
core::mem::transmute_copy(&presource),
core::mem::transmute_copy(&penum),
core::mem::transmute_copy(&pdesc),
core::mem::transmute_copy(&ppvpoview),
)
.into()
}
}
unsafe extern "system" fn CreateVideoProcessorEnumerator<
Identity: ID3D11VideoDevice_Impl,
const OFFSET: isize,
>(
this: *mut core::ffi::c_void,
pdesc: *const D3D11_VIDEO_PROCESSOR_CONTENT_DESC,
ppenum: *mut *mut core::ffi::c_void,
) -> windows_core::HRESULT {
unsafe {
let this: &Identity =
&*((this as *const *const ()).offset(OFFSET) as *const Identity);
match ID3D11VideoDevice_Impl::CreateVideoProcessorEnumerator(
this,
core::mem::transmute_copy(&pdesc),
) {
Ok(ok__) => {
ppenum.write(core::mem::transmute(ok__));
windows_core::HRESULT(0)
}
Err(err) => err.into(),
}
}
}
unsafe extern "system" fn GetVideoDecoderProfileCount<
Identity: ID3D11VideoDevice_Impl,
const OFFSET: isize,
>(
this: *mut core::ffi::c_void,
) -> u32 {
unsafe {
let this: &Identity =
&*((this as *const *const ()).offset(OFFSET) as *const Identity);
ID3D11VideoDevice_Impl::GetVideoDecoderProfileCount(this)
}
}
unsafe extern "system" fn GetVideoDecoderProfile<
Identity: ID3D11VideoDevice_Impl,
const OFFSET: isize,
>(
this: *mut core::ffi::c_void,
index: u32,
pdecoderprofile: *mut windows_core::GUID,
) -> windows_core::HRESULT {
unsafe {
let this: &Identity =
&*((this as *const *const ()).offset(OFFSET) as *const Identity);
match ID3D11VideoDevice_Impl::GetVideoDecoderProfile(
this,
core::mem::transmute_copy(&index),
) {
Ok(ok__) => {
pdecoderprofile.write(core::mem::transmute(ok__));
windows_core::HRESULT(0)
}
Err(err) => err.into(),
}
}
}
unsafe extern "system" fn CheckVideoDecoderFormat<
Identity: ID3D11VideoDevice_Impl,
const OFFSET: isize,
>(
this: *mut core::ffi::c_void,
pdecoderprofile: *const windows_core::GUID,
format: crate::Dxgi::Common::DXGI_FORMAT,
psupported: *mut crate::Foundation::BOOL,
) -> windows_core::HRESULT {
unsafe {
let this: &Identity =
&*((this as *const *const ()).offset(OFFSET) as *const Identity);
match ID3D11VideoDevice_Impl::CheckVideoDecoderFormat(
this,
core::mem::transmute_copy(&pdecoderprofile),
core::mem::transmute_copy(&format),
) {
Ok(ok__) => {
psupported.write(core::mem::transmute(ok__));
windows_core::HRESULT(0)
}
Err(err) => err.into(),
}
}
}
unsafe extern "system" fn GetVideoDecoderConfigCount<
Identity: ID3D11VideoDevice_Impl,
const OFFSET: isize,
>(
this: *mut core::ffi::c_void,
pdesc: *const D3D11_VIDEO_DECODER_DESC,
pcount: *mut u32,
) -> windows_core::HRESULT {
unsafe {
let this: &Identity =
&*((this as *const *const ()).offset(OFFSET) as *const Identity);
match ID3D11VideoDevice_Impl::GetVideoDecoderConfigCount(
this,
core::mem::transmute_copy(&pdesc),
) {
Ok(ok__) => {
pcount.write(core::mem::transmute(ok__));
windows_core::HRESULT(0)
}
Err(err) => err.into(),
}
}
}
unsafe extern "system" fn GetVideoDecoderConfig<
Identity: ID3D11VideoDevice_Impl,
const OFFSET: isize,
>(
this: *mut core::ffi::c_void,
pdesc: *const D3D11_VIDEO_DECODER_DESC,
index: u32,
pconfig: *mut D3D11_VIDEO_DECODER_CONFIG,
) -> windows_core::HRESULT {
unsafe {
let this: &Identity =
&*((this as *const *const ()).offset(OFFSET) as *const Identity);
ID3D11VideoDevice_Impl::GetVideoDecoderConfig(
this,
core::mem::transmute_copy(&pdesc),
core::mem::transmute_copy(&index),
core::mem::transmute_copy(&pconfig),
)
.into()
}
}
unsafe extern "system" fn GetContentProtectionCaps<
Identity: ID3D11VideoDevice_Impl,
const OFFSET: isize,
>(
this: *mut core::ffi::c_void,
pcryptotype: *const windows_core::GUID,
pdecoderprofile: *const windows_core::GUID,
pcaps: *mut D3D11_VIDEO_CONTENT_PROTECTION_CAPS,
) -> windows_core::HRESULT {
unsafe {
let this: &Identity =
&*((this as *const *const ()).offset(OFFSET) as *const Identity);
ID3D11VideoDevice_Impl::GetContentProtectionCaps(
this,
core::mem::transmute_copy(&pcryptotype),
core::mem::transmute_copy(&pdecoderprofile),
core::mem::transmute_copy(&pcaps),
)
.into()
}
}
unsafe extern "system" fn CheckCryptoKeyExchange<
Identity: ID3D11VideoDevice_Impl,
const OFFSET: isize,
>(
this: *mut core::ffi::c_void,
pcryptotype: *const windows_core::GUID,
pdecoderprofile: *const windows_core::GUID,
index: u32,
pkeyexchangetype: *mut windows_core::GUID,
) -> windows_core::HRESULT {
unsafe {
let this: &Identity =
&*((this as *const *const ()).offset(OFFSET) as *const Identity);
match ID3D11VideoDevice_Impl::CheckCryptoKeyExchange(
this,
core::mem::transmute_copy(&pcryptotype),
core::mem::transmute_copy(&pdecoderprofile),
core::mem::transmute_copy(&index),
) {
Ok(ok__) => {
pkeyexchangetype.write(core::mem::transmute(ok__));
windows_core::HRESULT(0)
}
Err(err) => err.into(),
}
}
}
unsafe extern "system" fn SetPrivateData<
Identity: ID3D11VideoDevice_Impl,
const OFFSET: isize,
>(
this: *mut core::ffi::c_void,
guid: *const windows_core::GUID,
datasize: u32,
pdata: *const core::ffi::c_void,
) -> windows_core::HRESULT {
unsafe {
let this: &Identity =
&*((this as *const *const ()).offset(OFFSET) as *const Identity);
ID3D11VideoDevice_Impl::SetPrivateData(
this,
core::mem::transmute_copy(&guid),
core::mem::transmute_copy(&datasize),
core::mem::transmute_copy(&pdata),
)
.into()
}
}
unsafe extern "system" fn SetPrivateDataInterface<
Identity: ID3D11VideoDevice_Impl,
const OFFSET: isize,
>(
this: *mut core::ffi::c_void,
guid: *const windows_core::GUID,
pdata: *mut core::ffi::c_void,
) -> windows_core::HRESULT {
unsafe {
let this: &Identity =
&*((this as *const *const ()).offset(OFFSET) as *const Identity);
ID3D11VideoDevice_Impl::SetPrivateDataInterface(
this,
core::mem::transmute_copy(&guid),
core::mem::transmute_copy(&pdata),
)
.into()
}
}
Self {
base__: windows_core::IUnknown_Vtbl::new::<Identity, OFFSET>(),
CreateVideoDecoder: CreateVideoDecoder::<Identity, OFFSET>,
CreateVideoProcessor: CreateVideoProcessor::<Identity, OFFSET>,
CreateAuthenticatedChannel: CreateAuthenticatedChannel::<Identity, OFFSET>,
CreateCryptoSession: CreateCryptoSession::<Identity, OFFSET>,
CreateVideoDecoderOutputView: CreateVideoDecoderOutputView::<Identity, OFFSET>,
CreateVideoProcessorInputView: CreateVideoProcessorInputView::<Identity, OFFSET>,
CreateVideoProcessorOutputView: CreateVideoProcessorOutputView::<Identity, OFFSET>,
CreateVideoProcessorEnumerator: CreateVideoProcessorEnumerator::<Identity, OFFSET>,
GetVideoDecoderProfileCount: GetVideoDecoderProfileCount::<Identity, OFFSET>,
GetVideoDecoderProfile: GetVideoDecoderProfile::<Identity, OFFSET>,
CheckVideoDecoderFormat: CheckVideoDecoderFormat::<Identity, OFFSET>,
GetVideoDecoderConfigCount: GetVideoDecoderConfigCount::<Identity, OFFSET>,
GetVideoDecoderConfig: GetVideoDecoderConfig::<Identity, OFFSET>,
GetContentProtectionCaps: GetContentProtectionCaps::<Identity, OFFSET>,
CheckCryptoKeyExchange: CheckCryptoKeyExchange::<Identity, OFFSET>,
SetPrivateData: SetPrivateData::<Identity, OFFSET>,
SetPrivateDataInterface: SetPrivateDataInterface::<Identity, OFFSET>,
}
}
pub fn matches(iid: &windows_core::GUID) -> bool {
iid == &<ID3D11VideoDevice as windows_core::Interface>::IID
}
}
#[cfg(feature = "Win32_Graphics_Dxgi_Common")]
impl windows_core::RuntimeName for ID3D11VideoDevice {}
#[cfg(feature = "Win32_Graphics_Dxgi_Common")]
unsafe impl Send for ID3D11VideoDevice {}
#[cfg(feature = "Win32_Graphics_Dxgi_Common")]
unsafe impl Sync for ID3D11VideoDevice {}
windows_core::imp::define_interface!(
ID3D11VideoDevice1,
ID3D11VideoDevice1_Vtbl,
0x29da1d51_1321_4454_804b_f5fc9f861f0f
);
impl core::ops::Deref for ID3D11VideoDevice1 {
type Target = ID3D11VideoDevice;
fn deref(&self) -> &Self::Target {
unsafe { core::mem::transmute(self) }
}
}
windows_core::imp::interface_hierarchy!(
ID3D11VideoDevice1,
windows_core::IUnknown,
ID3D11VideoDevice
);
impl ID3D11VideoDevice1 {
pub unsafe fn GetCryptoSessionPrivateDataSize(
&self,
pcryptotype: *const windows_core::GUID,
pdecoderprofile: Option<*const windows_core::GUID>,
pkeyexchangetype: *const windows_core::GUID,
pprivateinputsize: *mut u32,
pprivateoutputsize: *mut u32,
) -> windows_core::Result<()> {
unsafe {
(windows_core::Interface::vtable(self).GetCryptoSessionPrivateDataSize)(
windows_core::Interface::as_raw(self),
pcryptotype,
core::mem::transmute(pdecoderprofile.unwrap_or(core::mem::zeroed())),
pkeyexchangetype,
core::mem::transmute(pprivateinputsize),
core::mem::transmute(pprivateoutputsize),
)
.ok()
}
}
#[cfg(feature = "Win32_Graphics_Dxgi_Common")]
pub unsafe fn GetVideoDecoderCaps(
&self,
pdecoderprofile: *const windows_core::GUID,
samplewidth: u32,
sampleheight: u32,
pframerate: *const crate::Dxgi::Common::DXGI_RATIONAL,
bitrate: u32,
pcryptotype: Option<*const windows_core::GUID>,
) -> windows_core::Result<u32> {
unsafe {
let mut result__ = core::mem::zeroed();
(windows_core::Interface::vtable(self).GetVideoDecoderCaps)(
windows_core::Interface::as_raw(self),
pdecoderprofile,
samplewidth,
sampleheight,
pframerate,
bitrate,
core::mem::transmute(pcryptotype.unwrap_or(core::mem::zeroed())),
&mut result__,
)
.map(|| result__)
}
}
#[cfg(feature = "Win32_Graphics_Dxgi_Common")]
pub unsafe fn CheckVideoDecoderDownsampling(
&self,
pinputdesc: *const D3D11_VIDEO_DECODER_DESC,
inputcolorspace: crate::Dxgi::Common::DXGI_COLOR_SPACE_TYPE,
pinputconfig: *const D3D11_VIDEO_DECODER_CONFIG,
pframerate: *const crate::Dxgi::Common::DXGI_RATIONAL,
poutputdesc: *const D3D11_VIDEO_SAMPLE_DESC,
psupported: *mut crate::Foundation::BOOL,
prealtimehint: *mut crate::Foundation::BOOL,
) -> windows_core::Result<()> {
unsafe {
(windows_core::Interface::vtable(self).CheckVideoDecoderDownsampling)(
windows_core::Interface::as_raw(self),
pinputdesc,
inputcolorspace,
pinputconfig,
pframerate,
poutputdesc,
core::mem::transmute(psupported),
core::mem::transmute(prealtimehint),
)
.ok()
}
}
#[cfg(feature = "Win32_Graphics_Dxgi_Common")]
pub unsafe fn RecommendVideoDecoderDownsampleParameters(
&self,
pinputdesc: *const D3D11_VIDEO_DECODER_DESC,
inputcolorspace: crate::Dxgi::Common::DXGI_COLOR_SPACE_TYPE,
pinputconfig: *const D3D11_VIDEO_DECODER_CONFIG,
pframerate: *const crate::Dxgi::Common::DXGI_RATIONAL,
) -> windows_core::Result<D3D11_VIDEO_SAMPLE_DESC> {
unsafe {
let mut result__ = core::mem::zeroed();
(windows_core::Interface::vtable(self).RecommendVideoDecoderDownsampleParameters)(
windows_core::Interface::as_raw(self),
pinputdesc,
inputcolorspace,
pinputconfig,
pframerate,
&mut result__,
)
.map(|| result__)
}
}
}
#[repr(C)]
pub struct ID3D11VideoDevice1_Vtbl {
pub base__: ID3D11VideoDevice_Vtbl,
pub GetCryptoSessionPrivateDataSize: unsafe extern "system" fn(
*mut core::ffi::c_void,
*const windows_core::GUID,
*const windows_core::GUID,
*const windows_core::GUID,
*mut u32,
*mut u32,
) -> windows_core::HRESULT,
#[cfg(feature = "Win32_Graphics_Dxgi_Common")]
pub GetVideoDecoderCaps: unsafe extern "system" fn(
*mut core::ffi::c_void,
*const windows_core::GUID,
u32,
u32,
*const crate::Dxgi::Common::DXGI_RATIONAL,
u32,
*const windows_core::GUID,
*mut u32,
) -> windows_core::HRESULT,
#[cfg(not(feature = "Win32_Graphics_Dxgi_Common"))]
GetVideoDecoderCaps: usize,
#[cfg(feature = "Win32_Graphics_Dxgi_Common")]
pub CheckVideoDecoderDownsampling: unsafe extern "system" fn(
*mut core::ffi::c_void,
*const D3D11_VIDEO_DECODER_DESC,
crate::Dxgi::Common::DXGI_COLOR_SPACE_TYPE,
*const D3D11_VIDEO_DECODER_CONFIG,
*const crate::Dxgi::Common::DXGI_RATIONAL,
*const D3D11_VIDEO_SAMPLE_DESC,
*mut crate::Foundation::BOOL,
*mut crate::Foundation::BOOL,
) -> windows_core::HRESULT,
#[cfg(not(feature = "Win32_Graphics_Dxgi_Common"))]
CheckVideoDecoderDownsampling: usize,
#[cfg(feature = "Win32_Graphics_Dxgi_Common")]
pub RecommendVideoDecoderDownsampleParameters:
unsafe extern "system" fn(
*mut core::ffi::c_void,
*const D3D11_VIDEO_DECODER_DESC,
crate::Dxgi::Common::DXGI_COLOR_SPACE_TYPE,
*const D3D11_VIDEO_DECODER_CONFIG,
*const crate::Dxgi::Common::DXGI_RATIONAL,
*mut D3D11_VIDEO_SAMPLE_DESC,
) -> windows_core::HRESULT,
#[cfg(not(feature = "Win32_Graphics_Dxgi_Common"))]
RecommendVideoDecoderDownsampleParameters: usize,
}
#[cfg(feature = "Win32_Graphics_Dxgi_Common")]
pub trait ID3D11VideoDevice1_Impl: ID3D11VideoDevice_Impl {
fn GetCryptoSessionPrivateDataSize(
&self,
pcryptotype: *const windows_core::GUID,
pdecoderprofile: *const windows_core::GUID,
pkeyexchangetype: *const windows_core::GUID,
pprivateinputsize: *mut u32,
pprivateoutputsize: *mut u32,
) -> windows_core::Result<()>;
fn GetVideoDecoderCaps(
&self,
pdecoderprofile: *const windows_core::GUID,
samplewidth: u32,
sampleheight: u32,
pframerate: *const crate::Dxgi::Common::DXGI_RATIONAL,
bitrate: u32,
pcryptotype: *const windows_core::GUID,
) -> windows_core::Result<u32>;
fn CheckVideoDecoderDownsampling(
&self,
pinputdesc: *const D3D11_VIDEO_DECODER_DESC,
inputcolorspace: crate::Dxgi::Common::DXGI_COLOR_SPACE_TYPE,
pinputconfig: *const D3D11_VIDEO_DECODER_CONFIG,
pframerate: *const crate::Dxgi::Common::DXGI_RATIONAL,
poutputdesc: *const D3D11_VIDEO_SAMPLE_DESC,
psupported: *mut crate::Foundation::BOOL,
prealtimehint: *mut crate::Foundation::BOOL,
) -> windows_core::Result<()>;
fn RecommendVideoDecoderDownsampleParameters(
&self,
pinputdesc: *const D3D11_VIDEO_DECODER_DESC,
inputcolorspace: crate::Dxgi::Common::DXGI_COLOR_SPACE_TYPE,
pinputconfig: *const D3D11_VIDEO_DECODER_CONFIG,
pframerate: *const crate::Dxgi::Common::DXGI_RATIONAL,
) -> windows_core::Result<D3D11_VIDEO_SAMPLE_DESC>;
}
#[cfg(feature = "Win32_Graphics_Dxgi_Common")]
impl ID3D11VideoDevice1_Vtbl {
pub const fn new<Identity: ID3D11VideoDevice1_Impl, const OFFSET: isize>() -> Self {
unsafe extern "system" fn GetCryptoSessionPrivateDataSize<
Identity: ID3D11VideoDevice1_Impl,
const OFFSET: isize,
>(
this: *mut core::ffi::c_void,
pcryptotype: *const windows_core::GUID,
pdecoderprofile: *const windows_core::GUID,
pkeyexchangetype: *const windows_core::GUID,
pprivateinputsize: *mut u32,
pprivateoutputsize: *mut u32,
) -> windows_core::HRESULT {
unsafe {
let this: &Identity =
&*((this as *const *const ()).offset(OFFSET) as *const Identity);
ID3D11VideoDevice1_Impl::GetCryptoSessionPrivateDataSize(
this,
core::mem::transmute_copy(&pcryptotype),
core::mem::transmute_copy(&pdecoderprofile),
core::mem::transmute_copy(&pkeyexchangetype),
core::mem::transmute_copy(&pprivateinputsize),
core::mem::transmute_copy(&pprivateoutputsize),
)
.into()
}
}
unsafe extern "system" fn GetVideoDecoderCaps<
Identity: ID3D11VideoDevice1_Impl,
const OFFSET: isize,
>(
this: *mut core::ffi::c_void,
pdecoderprofile: *const windows_core::GUID,
samplewidth: u32,
sampleheight: u32,
pframerate: *const crate::Dxgi::Common::DXGI_RATIONAL,
bitrate: u32,
pcryptotype: *const windows_core::GUID,
pdecodercaps: *mut u32,
) -> windows_core::HRESULT {
unsafe {
let this: &Identity =
&*((this as *const *const ()).offset(OFFSET) as *const Identity);
match ID3D11VideoDevice1_Impl::GetVideoDecoderCaps(
this,
core::mem::transmute_copy(&pdecoderprofile),
core::mem::transmute_copy(&samplewidth),
core::mem::transmute_copy(&sampleheight),
core::mem::transmute_copy(&pframerate),
core::mem::transmute_copy(&bitrate),
core::mem::transmute_copy(&pcryptotype),
) {
Ok(ok__) => {
pdecodercaps.write(core::mem::transmute(ok__));
windows_core::HRESULT(0)
}
Err(err) => err.into(),
}
}
}
unsafe extern "system" fn CheckVideoDecoderDownsampling<
Identity: ID3D11VideoDevice1_Impl,
const OFFSET: isize,
>(
this: *mut core::ffi::c_void,
pinputdesc: *const D3D11_VIDEO_DECODER_DESC,
inputcolorspace: crate::Dxgi::Common::DXGI_COLOR_SPACE_TYPE,
pinputconfig: *const D3D11_VIDEO_DECODER_CONFIG,
pframerate: *const crate::Dxgi::Common::DXGI_RATIONAL,
poutputdesc: *const D3D11_VIDEO_SAMPLE_DESC,
psupported: *mut crate::Foundation::BOOL,
prealtimehint: *mut crate::Foundation::BOOL,
) -> windows_core::HRESULT {
unsafe {
let this: &Identity =
&*((this as *const *const ()).offset(OFFSET) as *const Identity);
ID3D11VideoDevice1_Impl::CheckVideoDecoderDownsampling(
this,
core::mem::transmute_copy(&pinputdesc),
core::mem::transmute_copy(&inputcolorspace),
core::mem::transmute_copy(&pinputconfig),
core::mem::transmute_copy(&pframerate),
core::mem::transmute_copy(&poutputdesc),
core::mem::transmute_copy(&psupported),
core::mem::transmute_copy(&prealtimehint),
)
.into()
}
}
unsafe extern "system" fn RecommendVideoDecoderDownsampleParameters<
Identity: ID3D11VideoDevice1_Impl,
const OFFSET: isize,
>(
this: *mut core::ffi::c_void,
pinputdesc: *const D3D11_VIDEO_DECODER_DESC,
inputcolorspace: crate::Dxgi::Common::DXGI_COLOR_SPACE_TYPE,
pinputconfig: *const D3D11_VIDEO_DECODER_CONFIG,
pframerate: *const crate::Dxgi::Common::DXGI_RATIONAL,
precommendedoutputdesc: *mut D3D11_VIDEO_SAMPLE_DESC,
) -> windows_core::HRESULT {
unsafe {
let this: &Identity =
&*((this as *const *const ()).offset(OFFSET) as *const Identity);
match ID3D11VideoDevice1_Impl::RecommendVideoDecoderDownsampleParameters(
this,
core::mem::transmute_copy(&pinputdesc),
core::mem::transmute_copy(&inputcolorspace),
core::mem::transmute_copy(&pinputconfig),
core::mem::transmute_copy(&pframerate),
) {
Ok(ok__) => {
precommendedoutputdesc.write(core::mem::transmute(ok__));
windows_core::HRESULT(0)
}
Err(err) => err.into(),
}
}
}
Self {
base__: ID3D11VideoDevice_Vtbl::new::<Identity, OFFSET>(),
GetCryptoSessionPrivateDataSize: GetCryptoSessionPrivateDataSize::<Identity, OFFSET>,
GetVideoDecoderCaps: GetVideoDecoderCaps::<Identity, OFFSET>,
CheckVideoDecoderDownsampling: CheckVideoDecoderDownsampling::<Identity, OFFSET>,
RecommendVideoDecoderDownsampleParameters: RecommendVideoDecoderDownsampleParameters::<
Identity,
OFFSET,
>,
}
}
pub fn matches(iid: &windows_core::GUID) -> bool {
iid == &<ID3D11VideoDevice1 as windows_core::Interface>::IID
|| iid == &<ID3D11VideoDevice as windows_core::Interface>::IID
}
}
#[cfg(feature = "Win32_Graphics_Dxgi_Common")]
impl windows_core::RuntimeName for ID3D11VideoDevice1 {}
#[cfg(feature = "Win32_Graphics_Dxgi_Common")]
unsafe impl Send for ID3D11VideoDevice1 {}
#[cfg(feature = "Win32_Graphics_Dxgi_Common")]
unsafe impl Sync for ID3D11VideoDevice1 {}
windows_core::imp::define_interface!(
ID3D11VideoDevice2,
ID3D11VideoDevice2_Vtbl,
0x59c0cb01_35f0_4a70_8f67_87905c906a53
);
impl core::ops::Deref for ID3D11VideoDevice2 {
type Target = ID3D11VideoDevice1;
fn deref(&self) -> &Self::Target {
unsafe { core::mem::transmute(self) }
}
}
windows_core::imp::interface_hierarchy!(
ID3D11VideoDevice2,
windows_core::IUnknown,
ID3D11VideoDevice,
ID3D11VideoDevice1
);
impl ID3D11VideoDevice2 {
pub unsafe fn CheckFeatureSupport(
&self,
feature: D3D11_FEATURE_VIDEO,
pfeaturesupportdata: *mut core::ffi::c_void,
featuresupportdatasize: u32,
) -> windows_core::Result<()> {
unsafe {
(windows_core::Interface::vtable(self).CheckFeatureSupport)(
windows_core::Interface::as_raw(self),
feature,
core::mem::transmute(pfeaturesupportdata),
featuresupportdatasize,
)
.ok()
}
}
pub unsafe fn NegotiateCryptoSessionKeyExchangeMT<P0>(
&self,
pcryptosession: P0,
flags: D3D11_CRYPTO_SESSION_KEY_EXCHANGE_FLAGS,
datasize: u32,
pdata: *mut core::ffi::c_void,
) -> windows_core::Result<()>
where
P0: windows_core::Param<ID3D11CryptoSession>,
{
unsafe {
(windows_core::Interface::vtable(self).NegotiateCryptoSessionKeyExchangeMT)(
windows_core::Interface::as_raw(self),
pcryptosession.param().abi(),
flags,
datasize,
core::mem::transmute(pdata),
)
.ok()
}
}
}
#[repr(C)]
pub struct ID3D11VideoDevice2_Vtbl {
pub base__: ID3D11VideoDevice1_Vtbl,
pub CheckFeatureSupport: unsafe extern "system" fn(
*mut core::ffi::c_void,
D3D11_FEATURE_VIDEO,
*mut core::ffi::c_void,
u32,
) -> windows_core::HRESULT,
pub NegotiateCryptoSessionKeyExchangeMT: unsafe extern "system" fn(
*mut core::ffi::c_void,
*mut core::ffi::c_void,
D3D11_CRYPTO_SESSION_KEY_EXCHANGE_FLAGS,
u32,
*mut core::ffi::c_void,
)
-> windows_core::HRESULT,
}
#[cfg(feature = "Win32_Graphics_Dxgi_Common")]
pub trait ID3D11VideoDevice2_Impl: ID3D11VideoDevice1_Impl {
fn CheckFeatureSupport(
&self,
feature: D3D11_FEATURE_VIDEO,
pfeaturesupportdata: *mut core::ffi::c_void,
featuresupportdatasize: u32,
) -> windows_core::Result<()>;
fn NegotiateCryptoSessionKeyExchangeMT(
&self,
pcryptosession: windows_core::Ref<'_, ID3D11CryptoSession>,
flags: D3D11_CRYPTO_SESSION_KEY_EXCHANGE_FLAGS,
datasize: u32,
pdata: *mut core::ffi::c_void,
) -> windows_core::Result<()>;
}
#[cfg(feature = "Win32_Graphics_Dxgi_Common")]
impl ID3D11VideoDevice2_Vtbl {
pub const fn new<Identity: ID3D11VideoDevice2_Impl, const OFFSET: isize>() -> Self {
unsafe extern "system" fn CheckFeatureSupport<
Identity: ID3D11VideoDevice2_Impl,
const OFFSET: isize,
>(
this: *mut core::ffi::c_void,
feature: D3D11_FEATURE_VIDEO,
pfeaturesupportdata: *mut core::ffi::c_void,
featuresupportdatasize: u32,
) -> windows_core::HRESULT {
unsafe {
let this: &Identity =
&*((this as *const *const ()).offset(OFFSET) as *const Identity);
ID3D11VideoDevice2_Impl::CheckFeatureSupport(
this,
core::mem::transmute_copy(&feature),
core::mem::transmute_copy(&pfeaturesupportdata),
core::mem::transmute_copy(&featuresupportdatasize),
)
.into()
}
}
unsafe extern "system" fn NegotiateCryptoSessionKeyExchangeMT<
Identity: ID3D11VideoDevice2_Impl,
const OFFSET: isize,
>(
this: *mut core::ffi::c_void,
pcryptosession: *mut core::ffi::c_void,
flags: D3D11_CRYPTO_SESSION_KEY_EXCHANGE_FLAGS,
datasize: u32,
pdata: *mut core::ffi::c_void,
) -> windows_core::HRESULT {
unsafe {
let this: &Identity =
&*((this as *const *const ()).offset(OFFSET) as *const Identity);
ID3D11VideoDevice2_Impl::NegotiateCryptoSessionKeyExchangeMT(
this,
core::mem::transmute_copy(&pcryptosession),
core::mem::transmute_copy(&flags),
core::mem::transmute_copy(&datasize),
core::mem::transmute_copy(&pdata),
)
.into()
}
}
Self {
base__: ID3D11VideoDevice1_Vtbl::new::<Identity, OFFSET>(),
CheckFeatureSupport: CheckFeatureSupport::<Identity, OFFSET>,
NegotiateCryptoSessionKeyExchangeMT: NegotiateCryptoSessionKeyExchangeMT::<
Identity,
OFFSET,
>,
}
}
pub fn matches(iid: &windows_core::GUID) -> bool {
iid == &<ID3D11VideoDevice2 as windows_core::Interface>::IID
|| iid == &<ID3D11VideoDevice as windows_core::Interface>::IID
|| iid == &<ID3D11VideoDevice1 as windows_core::Interface>::IID
}
}
#[cfg(feature = "Win32_Graphics_Dxgi_Common")]
impl windows_core::RuntimeName for ID3D11VideoDevice2 {}
#[cfg(feature = "Win32_Graphics_Dxgi_Common")]
unsafe impl Send for ID3D11VideoDevice2 {}
#[cfg(feature = "Win32_Graphics_Dxgi_Common")]
unsafe impl Sync for ID3D11VideoDevice2 {}
windows_core::imp::define_interface!(
ID3D11VideoProcessor,
ID3D11VideoProcessor_Vtbl,
0x1d7b0652_185f_41c6_85ce_0c5be3d4ae6c
);
impl core::ops::Deref for ID3D11VideoProcessor {
type Target = ID3D11DeviceChild;
fn deref(&self) -> &Self::Target {
unsafe { core::mem::transmute(self) }
}
}
windows_core::imp::interface_hierarchy!(
ID3D11VideoProcessor,
windows_core::IUnknown,
ID3D11DeviceChild
);
impl ID3D11VideoProcessor {
#[cfg(feature = "Win32_Graphics_Dxgi_Common")]
pub unsafe fn GetContentDesc(&self, pdesc: *mut D3D11_VIDEO_PROCESSOR_CONTENT_DESC) {
unsafe {
(windows_core::Interface::vtable(self).GetContentDesc)(
windows_core::Interface::as_raw(self),
core::mem::transmute(pdesc),
)
}
}
pub unsafe fn GetRateConversionCaps(
&self,
pcaps: *mut D3D11_VIDEO_PROCESSOR_RATE_CONVERSION_CAPS,
) {
unsafe {
(windows_core::Interface::vtable(self).GetRateConversionCaps)(
windows_core::Interface::as_raw(self),
core::mem::transmute(pcaps),
)
}
}
}
#[repr(C)]
pub struct ID3D11VideoProcessor_Vtbl {
pub base__: ID3D11DeviceChild_Vtbl,
#[cfg(feature = "Win32_Graphics_Dxgi_Common")]
pub GetContentDesc:
unsafe extern "system" fn(*mut core::ffi::c_void, *mut D3D11_VIDEO_PROCESSOR_CONTENT_DESC),
#[cfg(not(feature = "Win32_Graphics_Dxgi_Common"))]
GetContentDesc: usize,
pub GetRateConversionCaps: unsafe extern "system" fn(
*mut core::ffi::c_void,
*mut D3D11_VIDEO_PROCESSOR_RATE_CONVERSION_CAPS,
),
}
#[cfg(feature = "Win32_Graphics_Dxgi_Common")]
pub trait ID3D11VideoProcessor_Impl: ID3D11DeviceChild_Impl {
fn GetContentDesc(&self, pdesc: *mut D3D11_VIDEO_PROCESSOR_CONTENT_DESC);
fn GetRateConversionCaps(&self, pcaps: *mut D3D11_VIDEO_PROCESSOR_RATE_CONVERSION_CAPS);
}
#[cfg(feature = "Win32_Graphics_Dxgi_Common")]
impl ID3D11VideoProcessor_Vtbl {
pub const fn new<Identity: ID3D11VideoProcessor_Impl, const OFFSET: isize>() -> Self {
unsafe extern "system" fn GetContentDesc<
Identity: ID3D11VideoProcessor_Impl,
const OFFSET: isize,
>(
this: *mut core::ffi::c_void,
pdesc: *mut D3D11_VIDEO_PROCESSOR_CONTENT_DESC,
) {
unsafe {
let this: &Identity =
&*((this as *const *const ()).offset(OFFSET) as *const Identity);
ID3D11VideoProcessor_Impl::GetContentDesc(this, core::mem::transmute_copy(&pdesc))
}
}
unsafe extern "system" fn GetRateConversionCaps<
Identity: ID3D11VideoProcessor_Impl,
const OFFSET: isize,
>(
this: *mut core::ffi::c_void,
pcaps: *mut D3D11_VIDEO_PROCESSOR_RATE_CONVERSION_CAPS,
) {
unsafe {
let this: &Identity =
&*((this as *const *const ()).offset(OFFSET) as *const Identity);
ID3D11VideoProcessor_Impl::GetRateConversionCaps(
this,
core::mem::transmute_copy(&pcaps),
)
}
}
Self {
base__: ID3D11DeviceChild_Vtbl::new::<Identity, OFFSET>(),
GetContentDesc: GetContentDesc::<Identity, OFFSET>,
GetRateConversionCaps: GetRateConversionCaps::<Identity, OFFSET>,
}
}
pub fn matches(iid: &windows_core::GUID) -> bool {
iid == &<ID3D11VideoProcessor as windows_core::Interface>::IID
|| iid == &<ID3D11DeviceChild as windows_core::Interface>::IID
}
}
#[cfg(feature = "Win32_Graphics_Dxgi_Common")]
impl windows_core::RuntimeName for ID3D11VideoProcessor {}
#[cfg(feature = "Win32_Graphics_Dxgi_Common")]
unsafe impl Send for ID3D11VideoProcessor {}
#[cfg(feature = "Win32_Graphics_Dxgi_Common")]
unsafe impl Sync for ID3D11VideoProcessor {}
windows_core::imp::define_interface!(
ID3D11VideoProcessorEnumerator,
ID3D11VideoProcessorEnumerator_Vtbl,
0x31627037_53ab_4200_9061_05faa9ab45f9
);
impl core::ops::Deref for ID3D11VideoProcessorEnumerator {
type Target = ID3D11DeviceChild;
fn deref(&self) -> &Self::Target {
unsafe { core::mem::transmute(self) }
}
}
windows_core::imp::interface_hierarchy!(
ID3D11VideoProcessorEnumerator,
windows_core::IUnknown,
ID3D11DeviceChild
);
impl ID3D11VideoProcessorEnumerator {
#[cfg(feature = "Win32_Graphics_Dxgi_Common")]
pub unsafe fn GetVideoProcessorContentDesc(
&self,
pcontentdesc: *mut D3D11_VIDEO_PROCESSOR_CONTENT_DESC,
) -> windows_core::Result<()> {
unsafe {
(windows_core::Interface::vtable(self).GetVideoProcessorContentDesc)(
windows_core::Interface::as_raw(self),
core::mem::transmute(pcontentdesc),
)
.ok()
}
}
#[cfg(feature = "Win32_Graphics_Dxgi_Common")]
pub unsafe fn CheckVideoProcessorFormat(
&self,
format: crate::Dxgi::Common::DXGI_FORMAT,
) -> windows_core::Result<u32> {
unsafe {
let mut result__ = core::mem::zeroed();
(windows_core::Interface::vtable(self).CheckVideoProcessorFormat)(
windows_core::Interface::as_raw(self),
format,
&mut result__,
)
.map(|| result__)
}
}
pub unsafe fn GetVideoProcessorCaps(
&self,
pcaps: *mut D3D11_VIDEO_PROCESSOR_CAPS,
) -> windows_core::Result<()> {
unsafe {
(windows_core::Interface::vtable(self).GetVideoProcessorCaps)(
windows_core::Interface::as_raw(self),
core::mem::transmute(pcaps),
)
.ok()
}
}
pub unsafe fn GetVideoProcessorRateConversionCaps(
&self,
typeindex: u32,
pcaps: *mut D3D11_VIDEO_PROCESSOR_RATE_CONVERSION_CAPS,
) -> windows_core::Result<()> {
unsafe {
(windows_core::Interface::vtable(self).GetVideoProcessorRateConversionCaps)(
windows_core::Interface::as_raw(self),
typeindex,
core::mem::transmute(pcaps),
)
.ok()
}
}
#[cfg(feature = "Win32_Graphics_Dxgi_Common")]
pub unsafe fn GetVideoProcessorCustomRate(
&self,
typeindex: u32,
customrateindex: u32,
prate: *mut D3D11_VIDEO_PROCESSOR_CUSTOM_RATE,
) -> windows_core::Result<()> {
unsafe {
(windows_core::Interface::vtable(self).GetVideoProcessorCustomRate)(
windows_core::Interface::as_raw(self),
typeindex,
customrateindex,
core::mem::transmute(prate),
)
.ok()
}
}
pub unsafe fn GetVideoProcessorFilterRange(
&self,
filter: D3D11_VIDEO_PROCESSOR_FILTER,
) -> windows_core::Result<D3D11_VIDEO_PROCESSOR_FILTER_RANGE> {
unsafe {
let mut result__ = core::mem::zeroed();
(windows_core::Interface::vtable(self).GetVideoProcessorFilterRange)(
windows_core::Interface::as_raw(self),
filter,
&mut result__,
)
.map(|| result__)
}
}
}
#[repr(C)]
pub struct ID3D11VideoProcessorEnumerator_Vtbl {
pub base__: ID3D11DeviceChild_Vtbl,
#[cfg(feature = "Win32_Graphics_Dxgi_Common")]
pub GetVideoProcessorContentDesc: unsafe extern "system" fn(
*mut core::ffi::c_void,
*mut D3D11_VIDEO_PROCESSOR_CONTENT_DESC,
) -> windows_core::HRESULT,
#[cfg(not(feature = "Win32_Graphics_Dxgi_Common"))]
GetVideoProcessorContentDesc: usize,
#[cfg(feature = "Win32_Graphics_Dxgi_Common")]
pub CheckVideoProcessorFormat: unsafe extern "system" fn(
*mut core::ffi::c_void,
crate::Dxgi::Common::DXGI_FORMAT,
*mut u32,
) -> windows_core::HRESULT,
#[cfg(not(feature = "Win32_Graphics_Dxgi_Common"))]
CheckVideoProcessorFormat: usize,
pub GetVideoProcessorCaps: unsafe extern "system" fn(
*mut core::ffi::c_void,
*mut D3D11_VIDEO_PROCESSOR_CAPS,
) -> windows_core::HRESULT,
pub GetVideoProcessorRateConversionCaps: unsafe extern "system" fn(
*mut core::ffi::c_void,
u32,
*mut D3D11_VIDEO_PROCESSOR_RATE_CONVERSION_CAPS,
)
-> windows_core::HRESULT,
#[cfg(feature = "Win32_Graphics_Dxgi_Common")]
pub GetVideoProcessorCustomRate: unsafe extern "system" fn(
*mut core::ffi::c_void,
u32,
u32,
*mut D3D11_VIDEO_PROCESSOR_CUSTOM_RATE,
) -> windows_core::HRESULT,
#[cfg(not(feature = "Win32_Graphics_Dxgi_Common"))]
GetVideoProcessorCustomRate: usize,
pub GetVideoProcessorFilterRange: unsafe extern "system" fn(
*mut core::ffi::c_void,
D3D11_VIDEO_PROCESSOR_FILTER,
*mut D3D11_VIDEO_PROCESSOR_FILTER_RANGE,
) -> windows_core::HRESULT,
}
#[cfg(feature = "Win32_Graphics_Dxgi_Common")]
pub trait ID3D11VideoProcessorEnumerator_Impl: ID3D11DeviceChild_Impl {
fn GetVideoProcessorContentDesc(
&self,
pcontentdesc: *mut D3D11_VIDEO_PROCESSOR_CONTENT_DESC,
) -> windows_core::Result<()>;
fn CheckVideoProcessorFormat(
&self,
format: crate::Dxgi::Common::DXGI_FORMAT,
) -> windows_core::Result<u32>;
fn GetVideoProcessorCaps(
&self,
pcaps: *mut D3D11_VIDEO_PROCESSOR_CAPS,
) -> windows_core::Result<()>;
fn GetVideoProcessorRateConversionCaps(
&self,
typeindex: u32,
pcaps: *mut D3D11_VIDEO_PROCESSOR_RATE_CONVERSION_CAPS,
) -> windows_core::Result<()>;
fn GetVideoProcessorCustomRate(
&self,
typeindex: u32,
customrateindex: u32,
prate: *mut D3D11_VIDEO_PROCESSOR_CUSTOM_RATE,
) -> windows_core::Result<()>;
fn GetVideoProcessorFilterRange(
&self,
filter: D3D11_VIDEO_PROCESSOR_FILTER,
) -> windows_core::Result<D3D11_VIDEO_PROCESSOR_FILTER_RANGE>;
}
#[cfg(feature = "Win32_Graphics_Dxgi_Common")]
impl ID3D11VideoProcessorEnumerator_Vtbl {
pub const fn new<Identity: ID3D11VideoProcessorEnumerator_Impl, const OFFSET: isize>() -> Self {
unsafe extern "system" fn GetVideoProcessorContentDesc<
Identity: ID3D11VideoProcessorEnumerator_Impl,
const OFFSET: isize,
>(
this: *mut core::ffi::c_void,
pcontentdesc: *mut D3D11_VIDEO_PROCESSOR_CONTENT_DESC,
) -> windows_core::HRESULT {
unsafe {
let this: &Identity =
&*((this as *const *const ()).offset(OFFSET) as *const Identity);
ID3D11VideoProcessorEnumerator_Impl::GetVideoProcessorContentDesc(
this,
core::mem::transmute_copy(&pcontentdesc),
)
.into()
}
}
unsafe extern "system" fn CheckVideoProcessorFormat<
Identity: ID3D11VideoProcessorEnumerator_Impl,
const OFFSET: isize,
>(
this: *mut core::ffi::c_void,
format: crate::Dxgi::Common::DXGI_FORMAT,
pflags: *mut u32,
) -> windows_core::HRESULT {
unsafe {
let this: &Identity =
&*((this as *const *const ()).offset(OFFSET) as *const Identity);
match ID3D11VideoProcessorEnumerator_Impl::CheckVideoProcessorFormat(
this,
core::mem::transmute_copy(&format),
) {
Ok(ok__) => {
pflags.write(core::mem::transmute(ok__));
windows_core::HRESULT(0)
}
Err(err) => err.into(),
}
}
}
unsafe extern "system" fn GetVideoProcessorCaps<
Identity: ID3D11VideoProcessorEnumerator_Impl,
const OFFSET: isize,
>(
this: *mut core::ffi::c_void,
pcaps: *mut D3D11_VIDEO_PROCESSOR_CAPS,
) -> windows_core::HRESULT {
unsafe {
let this: &Identity =
&*((this as *const *const ()).offset(OFFSET) as *const Identity);
ID3D11VideoProcessorEnumerator_Impl::GetVideoProcessorCaps(
this,
core::mem::transmute_copy(&pcaps),
)
.into()
}
}
unsafe extern "system" fn GetVideoProcessorRateConversionCaps<
Identity: ID3D11VideoProcessorEnumerator_Impl,
const OFFSET: isize,
>(
this: *mut core::ffi::c_void,
typeindex: u32,
pcaps: *mut D3D11_VIDEO_PROCESSOR_RATE_CONVERSION_CAPS,
) -> windows_core::HRESULT {
unsafe {
let this: &Identity =
&*((this as *const *const ()).offset(OFFSET) as *const Identity);
ID3D11VideoProcessorEnumerator_Impl::GetVideoProcessorRateConversionCaps(
this,
core::mem::transmute_copy(&typeindex),
core::mem::transmute_copy(&pcaps),
)
.into()
}
}
unsafe extern "system" fn GetVideoProcessorCustomRate<
Identity: ID3D11VideoProcessorEnumerator_Impl,
const OFFSET: isize,
>(
this: *mut core::ffi::c_void,
typeindex: u32,
customrateindex: u32,
prate: *mut D3D11_VIDEO_PROCESSOR_CUSTOM_RATE,
) -> windows_core::HRESULT {
unsafe {
let this: &Identity =
&*((this as *const *const ()).offset(OFFSET) as *const Identity);
ID3D11VideoProcessorEnumerator_Impl::GetVideoProcessorCustomRate(
this,
core::mem::transmute_copy(&typeindex),
core::mem::transmute_copy(&customrateindex),
core::mem::transmute_copy(&prate),
)
.into()
}
}
unsafe extern "system" fn GetVideoProcessorFilterRange<
Identity: ID3D11VideoProcessorEnumerator_Impl,
const OFFSET: isize,
>(
this: *mut core::ffi::c_void,
filter: D3D11_VIDEO_PROCESSOR_FILTER,
prange: *mut D3D11_VIDEO_PROCESSOR_FILTER_RANGE,
) -> windows_core::HRESULT {
unsafe {
let this: &Identity =
&*((this as *const *const ()).offset(OFFSET) as *const Identity);
match ID3D11VideoProcessorEnumerator_Impl::GetVideoProcessorFilterRange(
this,
core::mem::transmute_copy(&filter),
) {
Ok(ok__) => {
prange.write(core::mem::transmute(ok__));
windows_core::HRESULT(0)
}
Err(err) => err.into(),
}
}
}
Self {
base__: ID3D11DeviceChild_Vtbl::new::<Identity, OFFSET>(),
GetVideoProcessorContentDesc: GetVideoProcessorContentDesc::<Identity, OFFSET>,
CheckVideoProcessorFormat: CheckVideoProcessorFormat::<Identity, OFFSET>,
GetVideoProcessorCaps: GetVideoProcessorCaps::<Identity, OFFSET>,
GetVideoProcessorRateConversionCaps: GetVideoProcessorRateConversionCaps::<
Identity,
OFFSET,
>,
GetVideoProcessorCustomRate: GetVideoProcessorCustomRate::<Identity, OFFSET>,
GetVideoProcessorFilterRange: GetVideoProcessorFilterRange::<Identity, OFFSET>,
}
}
pub fn matches(iid: &windows_core::GUID) -> bool {
iid == &<ID3D11VideoProcessorEnumerator as windows_core::Interface>::IID
|| iid == &<ID3D11DeviceChild as windows_core::Interface>::IID
}
}
#[cfg(feature = "Win32_Graphics_Dxgi_Common")]
impl windows_core::RuntimeName for ID3D11VideoProcessorEnumerator {}
#[cfg(feature = "Win32_Graphics_Dxgi_Common")]
unsafe impl Send for ID3D11VideoProcessorEnumerator {}
#[cfg(feature = "Win32_Graphics_Dxgi_Common")]
unsafe impl Sync for ID3D11VideoProcessorEnumerator {}
windows_core::imp::define_interface!(
ID3D11VideoProcessorEnumerator1,
ID3D11VideoProcessorEnumerator1_Vtbl,
0x465217f2_5568_43cf_b5b9_f61d54531ca1
);
impl core::ops::Deref for ID3D11VideoProcessorEnumerator1 {
type Target = ID3D11VideoProcessorEnumerator;
fn deref(&self) -> &Self::Target {
unsafe { core::mem::transmute(self) }
}
}
windows_core::imp::interface_hierarchy!(
ID3D11VideoProcessorEnumerator1,
windows_core::IUnknown,
ID3D11DeviceChild,
ID3D11VideoProcessorEnumerator
);
impl ID3D11VideoProcessorEnumerator1 {
#[cfg(feature = "Win32_Graphics_Dxgi_Common")]
pub unsafe fn CheckVideoProcessorFormatConversion(
&self,
inputformat: crate::Dxgi::Common::DXGI_FORMAT,
inputcolorspace: crate::Dxgi::Common::DXGI_COLOR_SPACE_TYPE,
outputformat: crate::Dxgi::Common::DXGI_FORMAT,
outputcolorspace: crate::Dxgi::Common::DXGI_COLOR_SPACE_TYPE,
) -> windows_core::Result<crate::Foundation::BOOL> {
unsafe {
let mut result__ = core::mem::zeroed();
(windows_core::Interface::vtable(self).CheckVideoProcessorFormatConversion)(
windows_core::Interface::as_raw(self),
inputformat,
inputcolorspace,
outputformat,
outputcolorspace,
&mut result__,
)
.map(|| result__)
}
}
}
#[repr(C)]
pub struct ID3D11VideoProcessorEnumerator1_Vtbl {
pub base__: ID3D11VideoProcessorEnumerator_Vtbl,
#[cfg(feature = "Win32_Graphics_Dxgi_Common")]
pub CheckVideoProcessorFormatConversion: unsafe extern "system" fn(
*mut core::ffi::c_void,
crate::Dxgi::Common::DXGI_FORMAT,
crate::Dxgi::Common::DXGI_COLOR_SPACE_TYPE,
crate::Dxgi::Common::DXGI_FORMAT,
crate::Dxgi::Common::DXGI_COLOR_SPACE_TYPE,
*mut crate::Foundation::BOOL,
)
-> windows_core::HRESULT,
#[cfg(not(feature = "Win32_Graphics_Dxgi_Common"))]
CheckVideoProcessorFormatConversion: usize,
}
#[cfg(feature = "Win32_Graphics_Dxgi_Common")]
pub trait ID3D11VideoProcessorEnumerator1_Impl: ID3D11VideoProcessorEnumerator_Impl {
fn CheckVideoProcessorFormatConversion(
&self,
inputformat: crate::Dxgi::Common::DXGI_FORMAT,
inputcolorspace: crate::Dxgi::Common::DXGI_COLOR_SPACE_TYPE,
outputformat: crate::Dxgi::Common::DXGI_FORMAT,
outputcolorspace: crate::Dxgi::Common::DXGI_COLOR_SPACE_TYPE,
) -> windows_core::Result<crate::Foundation::BOOL>;
}
#[cfg(feature = "Win32_Graphics_Dxgi_Common")]
impl ID3D11VideoProcessorEnumerator1_Vtbl {
pub const fn new<Identity: ID3D11VideoProcessorEnumerator1_Impl, const OFFSET: isize>() -> Self
{
unsafe extern "system" fn CheckVideoProcessorFormatConversion<
Identity: ID3D11VideoProcessorEnumerator1_Impl,
const OFFSET: isize,
>(
this: *mut core::ffi::c_void,
inputformat: crate::Dxgi::Common::DXGI_FORMAT,
inputcolorspace: crate::Dxgi::Common::DXGI_COLOR_SPACE_TYPE,
outputformat: crate::Dxgi::Common::DXGI_FORMAT,
outputcolorspace: crate::Dxgi::Common::DXGI_COLOR_SPACE_TYPE,
psupported: *mut crate::Foundation::BOOL,
) -> windows_core::HRESULT {
unsafe {
let this: &Identity =
&*((this as *const *const ()).offset(OFFSET) as *const Identity);
match ID3D11VideoProcessorEnumerator1_Impl::CheckVideoProcessorFormatConversion(
this,
core::mem::transmute_copy(&inputformat),
core::mem::transmute_copy(&inputcolorspace),
core::mem::transmute_copy(&outputformat),
core::mem::transmute_copy(&outputcolorspace),
) {
Ok(ok__) => {
psupported.write(core::mem::transmute(ok__));
windows_core::HRESULT(0)
}
Err(err) => err.into(),
}
}
}
Self {
base__: ID3D11VideoProcessorEnumerator_Vtbl::new::<Identity, OFFSET>(),
CheckVideoProcessorFormatConversion: CheckVideoProcessorFormatConversion::<
Identity,
OFFSET,
>,
}
}
pub fn matches(iid: &windows_core::GUID) -> bool {
iid == &<ID3D11VideoProcessorEnumerator1 as windows_core::Interface>::IID
|| iid == &<ID3D11DeviceChild as windows_core::Interface>::IID
|| iid == &<ID3D11VideoProcessorEnumerator as windows_core::Interface>::IID
}
}
#[cfg(feature = "Win32_Graphics_Dxgi_Common")]
impl windows_core::RuntimeName for ID3D11VideoProcessorEnumerator1 {}
#[cfg(feature = "Win32_Graphics_Dxgi_Common")]
unsafe impl Send for ID3D11VideoProcessorEnumerator1 {}
#[cfg(feature = "Win32_Graphics_Dxgi_Common")]
unsafe impl Sync for ID3D11VideoProcessorEnumerator1 {}
windows_core::imp::define_interface!(
ID3D11VideoProcessorInputView,
ID3D11VideoProcessorInputView_Vtbl,
0x11ec5a5f_51dc_4945_ab34_6e8c21300ea5
);
impl core::ops::Deref for ID3D11VideoProcessorInputView {
type Target = ID3D11View;
fn deref(&self) -> &Self::Target {
unsafe { core::mem::transmute(self) }
}
}
windows_core::imp::interface_hierarchy!(
ID3D11VideoProcessorInputView,
windows_core::IUnknown,
ID3D11DeviceChild,
ID3D11View
);
impl ID3D11VideoProcessorInputView {
pub unsafe fn GetDesc(&self) -> D3D11_VIDEO_PROCESSOR_INPUT_VIEW_DESC {
unsafe {
let mut result__ = core::mem::zeroed();
(windows_core::Interface::vtable(self).GetDesc)(
windows_core::Interface::as_raw(self),
&mut result__,
);
result__
}
}
}
#[repr(C)]
pub struct ID3D11VideoProcessorInputView_Vtbl {
pub base__: ID3D11View_Vtbl,
pub GetDesc: unsafe extern "system" fn(
*mut core::ffi::c_void,
*mut D3D11_VIDEO_PROCESSOR_INPUT_VIEW_DESC,
),
}
pub trait ID3D11VideoProcessorInputView_Impl: ID3D11View_Impl {
fn GetDesc(&self, pdesc: *mut D3D11_VIDEO_PROCESSOR_INPUT_VIEW_DESC);
}
impl ID3D11VideoProcessorInputView_Vtbl {
pub const fn new<Identity: ID3D11VideoProcessorInputView_Impl, const OFFSET: isize>() -> Self {
unsafe extern "system" fn GetDesc<
Identity: ID3D11VideoProcessorInputView_Impl,
const OFFSET: isize,
>(
this: *mut core::ffi::c_void,
pdesc: *mut D3D11_VIDEO_PROCESSOR_INPUT_VIEW_DESC,
) {
unsafe {
let this: &Identity =
&*((this as *const *const ()).offset(OFFSET) as *const Identity);
ID3D11VideoProcessorInputView_Impl::GetDesc(this, core::mem::transmute_copy(&pdesc))
}
}
Self {
base__: ID3D11View_Vtbl::new::<Identity, OFFSET>(),
GetDesc: GetDesc::<Identity, OFFSET>,
}
}
pub fn matches(iid: &windows_core::GUID) -> bool {
iid == &<ID3D11VideoProcessorInputView as windows_core::Interface>::IID
|| iid == &<ID3D11DeviceChild as windows_core::Interface>::IID
|| iid == &<ID3D11View as windows_core::Interface>::IID
}
}
impl windows_core::RuntimeName for ID3D11VideoProcessorInputView {}
unsafe impl Send for ID3D11VideoProcessorInputView {}
unsafe impl Sync for ID3D11VideoProcessorInputView {}
windows_core::imp::define_interface!(
ID3D11VideoProcessorOutputView,
ID3D11VideoProcessorOutputView_Vtbl,
0xa048285e_25a9_4527_bd93_d68b68c44254
);
impl core::ops::Deref for ID3D11VideoProcessorOutputView {
type Target = ID3D11View;
fn deref(&self) -> &Self::Target {
unsafe { core::mem::transmute(self) }
}
}
windows_core::imp::interface_hierarchy!(
ID3D11VideoProcessorOutputView,
windows_core::IUnknown,
ID3D11DeviceChild,
ID3D11View
);
impl ID3D11VideoProcessorOutputView {
pub unsafe fn GetDesc(&self) -> D3D11_VIDEO_PROCESSOR_OUTPUT_VIEW_DESC {
unsafe {
let mut result__ = core::mem::zeroed();
(windows_core::Interface::vtable(self).GetDesc)(
windows_core::Interface::as_raw(self),
&mut result__,
);
result__
}
}
}
#[repr(C)]
pub struct ID3D11VideoProcessorOutputView_Vtbl {
pub base__: ID3D11View_Vtbl,
pub GetDesc: unsafe extern "system" fn(
*mut core::ffi::c_void,
*mut D3D11_VIDEO_PROCESSOR_OUTPUT_VIEW_DESC,
),
}
pub trait ID3D11VideoProcessorOutputView_Impl: ID3D11View_Impl {
fn GetDesc(&self, pdesc: *mut D3D11_VIDEO_PROCESSOR_OUTPUT_VIEW_DESC);
}
impl ID3D11VideoProcessorOutputView_Vtbl {
pub const fn new<Identity: ID3D11VideoProcessorOutputView_Impl, const OFFSET: isize>() -> Self {
unsafe extern "system" fn GetDesc<
Identity: ID3D11VideoProcessorOutputView_Impl,
const OFFSET: isize,
>(
this: *mut core::ffi::c_void,
pdesc: *mut D3D11_VIDEO_PROCESSOR_OUTPUT_VIEW_DESC,
) {
unsafe {
let this: &Identity =
&*((this as *const *const ()).offset(OFFSET) as *const Identity);
ID3D11VideoProcessorOutputView_Impl::GetDesc(
this,
core::mem::transmute_copy(&pdesc),
)
}
}
Self {
base__: ID3D11View_Vtbl::new::<Identity, OFFSET>(),
GetDesc: GetDesc::<Identity, OFFSET>,
}
}
pub fn matches(iid: &windows_core::GUID) -> bool {
iid == &<ID3D11VideoProcessorOutputView as windows_core::Interface>::IID
|| iid == &<ID3D11DeviceChild as windows_core::Interface>::IID
|| iid == &<ID3D11View as windows_core::Interface>::IID
}
}
impl windows_core::RuntimeName for ID3D11VideoProcessorOutputView {}
unsafe impl Send for ID3D11VideoProcessorOutputView {}
unsafe impl Sync for ID3D11VideoProcessorOutputView {}
windows_core::imp::define_interface!(
ID3D11View,
ID3D11View_Vtbl,
0x839d1216_bb2e_412b_b7f4_a9dbebe08ed1
);
impl core::ops::Deref for ID3D11View {
type Target = ID3D11DeviceChild;
fn deref(&self) -> &Self::Target {
unsafe { core::mem::transmute(self) }
}
}
windows_core::imp::interface_hierarchy!(ID3D11View, windows_core::IUnknown, ID3D11DeviceChild);
impl ID3D11View {
pub unsafe fn GetResource(&self) -> windows_core::Result<ID3D11Resource> {
unsafe {
let mut result__ = core::mem::zeroed();
(windows_core::Interface::vtable(self).GetResource)(
windows_core::Interface::as_raw(self),
&mut result__,
);
windows_core::Type::from_abi(result__)
}
}
}
#[repr(C)]
pub struct ID3D11View_Vtbl {
pub base__: ID3D11DeviceChild_Vtbl,
pub GetResource: unsafe extern "system" fn(*mut core::ffi::c_void, *mut *mut core::ffi::c_void),
}
pub trait ID3D11View_Impl: ID3D11DeviceChild_Impl {
fn GetResource(&self, ppresource: windows_core::OutRef<'_, ID3D11Resource>);
}
impl ID3D11View_Vtbl {
pub const fn new<Identity: ID3D11View_Impl, const OFFSET: isize>() -> Self {
unsafe extern "system" fn GetResource<Identity: ID3D11View_Impl, const OFFSET: isize>(
this: *mut core::ffi::c_void,
ppresource: *mut *mut core::ffi::c_void,
) {
unsafe {
let this: &Identity =
&*((this as *const *const ()).offset(OFFSET) as *const Identity);
ID3D11View_Impl::GetResource(this, core::mem::transmute_copy(&ppresource))
}
}
Self {
base__: ID3D11DeviceChild_Vtbl::new::<Identity, OFFSET>(),
GetResource: GetResource::<Identity, OFFSET>,
}
}
pub fn matches(iid: &windows_core::GUID) -> bool {
iid == &<ID3D11View as windows_core::Interface>::IID
|| iid == &<ID3D11DeviceChild as windows_core::Interface>::IID
}
}
impl windows_core::RuntimeName for ID3D11View {}
unsafe impl Send for ID3D11View {}
unsafe impl Sync for ID3D11View {}
windows_core::imp::define_interface!(
ID3DDeviceContextState,
ID3DDeviceContextState_Vtbl,
0x5c1e0d8a_7c23_48f9_8c59_a92958ceff11
);
impl core::ops::Deref for ID3DDeviceContextState {
type Target = ID3D11DeviceChild;
fn deref(&self) -> &Self::Target {
unsafe { core::mem::transmute(self) }
}
}
windows_core::imp::interface_hierarchy!(
ID3DDeviceContextState,
windows_core::IUnknown,
ID3D11DeviceChild
);
#[repr(C)]
pub struct ID3DDeviceContextState_Vtbl {
pub base__: ID3D11DeviceChild_Vtbl,
}
pub trait ID3DDeviceContextState_Impl: ID3D11DeviceChild_Impl {}
impl ID3DDeviceContextState_Vtbl {
pub const fn new<Identity: ID3DDeviceContextState_Impl, const OFFSET: isize>() -> Self {
Self {
base__: ID3D11DeviceChild_Vtbl::new::<Identity, OFFSET>(),
}
}
pub fn matches(iid: &windows_core::GUID) -> bool {
iid == &<ID3DDeviceContextState as windows_core::Interface>::IID
|| iid == &<ID3D11DeviceChild as windows_core::Interface>::IID
}
}
impl windows_core::RuntimeName for ID3DDeviceContextState {}
unsafe impl Send for ID3DDeviceContextState {}
unsafe impl Sync for ID3DDeviceContextState {}
windows_core::imp::define_interface!(
ID3DUserDefinedAnnotation,
ID3DUserDefinedAnnotation_Vtbl,
0xb2daad8b_03d4_4dbf_95eb_32ab4b63d0ab
);
windows_core::imp::interface_hierarchy!(ID3DUserDefinedAnnotation, windows_core::IUnknown);
impl ID3DUserDefinedAnnotation {
pub unsafe fn BeginEvent<P0>(&self, name: P0) -> i32
where
P0: windows_core::Param<crate::core_supplemental::PCWSTR>,
{
unsafe {
(windows_core::Interface::vtable(self).BeginEvent)(
windows_core::Interface::as_raw(self),
name.param().abi(),
)
}
}
pub unsafe fn EndEvent(&self) -> i32 {
unsafe {
(windows_core::Interface::vtable(self).EndEvent)(windows_core::Interface::as_raw(self))
}
}
pub unsafe fn SetMarker<P0>(&self, name: P0)
where
P0: windows_core::Param<crate::core_supplemental::PCWSTR>,
{
unsafe {
(windows_core::Interface::vtable(self).SetMarker)(
windows_core::Interface::as_raw(self),
name.param().abi(),
)
}
}
pub unsafe fn GetStatus(&self) -> crate::Foundation::BOOL {
unsafe {
(windows_core::Interface::vtable(self).GetStatus)(windows_core::Interface::as_raw(self))
}
}
}
#[repr(C)]
pub struct ID3DUserDefinedAnnotation_Vtbl {
pub base__: windows_core::IUnknown_Vtbl,
pub BeginEvent: unsafe extern "system" fn(*mut core::ffi::c_void, crate::core_supplemental::PCWSTR) -> i32,
pub EndEvent: unsafe extern "system" fn(*mut core::ffi::c_void) -> i32,
pub SetMarker: unsafe extern "system" fn(*mut core::ffi::c_void, crate::core_supplemental::PCWSTR),
pub GetStatus:
unsafe extern "system" fn(*mut core::ffi::c_void) -> crate::Foundation::BOOL,
}
pub trait ID3DUserDefinedAnnotation_Impl: windows_core::IUnknownImpl {
fn BeginEvent(&self, name: &crate::core_supplemental::PCWSTR) -> i32;
fn EndEvent(&self) -> i32;
fn SetMarker(&self, name: &crate::core_supplemental::PCWSTR);
fn GetStatus(&self) -> crate::Foundation::BOOL;
}
impl ID3DUserDefinedAnnotation_Vtbl {
pub const fn new<Identity: ID3DUserDefinedAnnotation_Impl, const OFFSET: isize>() -> Self {
unsafe extern "system" fn BeginEvent<
Identity: ID3DUserDefinedAnnotation_Impl,
const OFFSET: isize,
>(
this: *mut core::ffi::c_void,
name: crate::core_supplemental::PCWSTR,
) -> i32 {
unsafe {
let this: &Identity =
&*((this as *const *const ()).offset(OFFSET) as *const Identity);
ID3DUserDefinedAnnotation_Impl::BeginEvent(this, core::mem::transmute(&name))
}
}
unsafe extern "system" fn EndEvent<
Identity: ID3DUserDefinedAnnotation_Impl,
const OFFSET: isize,
>(
this: *mut core::ffi::c_void,
) -> i32 {
unsafe {
let this: &Identity =
&*((this as *const *const ()).offset(OFFSET) as *const Identity);
ID3DUserDefinedAnnotation_Impl::EndEvent(this)
}
}
unsafe extern "system" fn SetMarker<
Identity: ID3DUserDefinedAnnotation_Impl,
const OFFSET: isize,
>(
this: *mut core::ffi::c_void,
name: crate::core_supplemental::PCWSTR,
) {
unsafe {
let this: &Identity =
&*((this as *const *const ()).offset(OFFSET) as *const Identity);
ID3DUserDefinedAnnotation_Impl::SetMarker(this, core::mem::transmute(&name))
}
}
unsafe extern "system" fn GetStatus<
Identity: ID3DUserDefinedAnnotation_Impl,
const OFFSET: isize,
>(
this: *mut core::ffi::c_void,
) -> crate::Foundation::BOOL {
unsafe {
let this: &Identity =
&*((this as *const *const ()).offset(OFFSET) as *const Identity);
ID3DUserDefinedAnnotation_Impl::GetStatus(this)
}
}
Self {
base__: windows_core::IUnknown_Vtbl::new::<Identity, OFFSET>(),
BeginEvent: BeginEvent::<Identity, OFFSET>,
EndEvent: EndEvent::<Identity, OFFSET>,
SetMarker: SetMarker::<Identity, OFFSET>,
GetStatus: GetStatus::<Identity, OFFSET>,
}
}
pub fn matches(iid: &windows_core::GUID) -> bool {
iid == &<ID3DUserDefinedAnnotation as windows_core::Interface>::IID
}
}
impl windows_core::RuntimeName for ID3DUserDefinedAnnotation {}
unsafe impl Send for ID3DUserDefinedAnnotation {}
unsafe impl Sync for ID3DUserDefinedAnnotation {}
windows_core::imp::define_interface!(
ID3DX11FFT,
ID3DX11FFT_Vtbl,
0xb3f7a938_4c93_4310_a675_b30d6de50553
);
windows_core::imp::interface_hierarchy!(ID3DX11FFT, windows_core::IUnknown);
impl ID3DX11FFT {
pub unsafe fn SetForwardScale(&self, forwardscale: f32) -> windows_core::Result<()> {
unsafe {
(windows_core::Interface::vtable(self).SetForwardScale)(
windows_core::Interface::as_raw(self),
forwardscale,
)
.ok()
}
}
pub unsafe fn GetForwardScale(&self) -> f32 {
unsafe {
(windows_core::Interface::vtable(self).GetForwardScale)(
windows_core::Interface::as_raw(self),
)
}
}
pub unsafe fn SetInverseScale(&self, inversescale: f32) -> windows_core::Result<()> {
unsafe {
(windows_core::Interface::vtable(self).SetInverseScale)(
windows_core::Interface::as_raw(self),
inversescale,
)
.ok()
}
}
pub unsafe fn GetInverseScale(&self) -> f32 {
unsafe {
(windows_core::Interface::vtable(self).GetInverseScale)(
windows_core::Interface::as_raw(self),
)
}
}
pub unsafe fn AttachBuffersAndPrecompute(
&self,
pptempbuffers: &[Option<ID3D11UnorderedAccessView>],
ppprecomputebuffersizes: &[Option<ID3D11UnorderedAccessView>],
) -> windows_core::Result<()> {
unsafe {
(windows_core::Interface::vtable(self).AttachBuffersAndPrecompute)(
windows_core::Interface::as_raw(self),
pptempbuffers.len().try_into().unwrap(),
core::mem::transmute(pptempbuffers.as_ptr()),
ppprecomputebuffersizes.len().try_into().unwrap(),
core::mem::transmute(ppprecomputebuffersizes.as_ptr()),
)
.ok()
}
}
pub unsafe fn ForwardTransform<P0>(
&self,
pinputbuffer: P0,
ppoutputbuffer: *mut Option<ID3D11UnorderedAccessView>,
) -> windows_core::Result<()>
where
P0: windows_core::Param<ID3D11UnorderedAccessView>,
{
unsafe {
(windows_core::Interface::vtable(self).ForwardTransform)(
windows_core::Interface::as_raw(self),
pinputbuffer.param().abi(),
core::mem::transmute(ppoutputbuffer),
)
.ok()
}
}
pub unsafe fn InverseTransform<P0>(
&self,
pinputbuffer: P0,
ppoutputbuffer: *mut Option<ID3D11UnorderedAccessView>,
) -> windows_core::Result<()>
where
P0: windows_core::Param<ID3D11UnorderedAccessView>,
{
unsafe {
(windows_core::Interface::vtable(self).InverseTransform)(
windows_core::Interface::as_raw(self),
pinputbuffer.param().abi(),
core::mem::transmute(ppoutputbuffer),
)
.ok()
}
}
}
#[repr(C)]
pub struct ID3DX11FFT_Vtbl {
pub base__: windows_core::IUnknown_Vtbl,
pub SetForwardScale:
unsafe extern "system" fn(*mut core::ffi::c_void, f32) -> windows_core::HRESULT,
pub GetForwardScale: unsafe extern "system" fn(*mut core::ffi::c_void) -> f32,
pub SetInverseScale:
unsafe extern "system" fn(*mut core::ffi::c_void, f32) -> windows_core::HRESULT,
pub GetInverseScale: unsafe extern "system" fn(*mut core::ffi::c_void) -> f32,
pub AttachBuffersAndPrecompute: unsafe extern "system" fn(
*mut core::ffi::c_void,
u32,
*const *mut core::ffi::c_void,
u32,
*const *mut core::ffi::c_void,
) -> windows_core::HRESULT,
pub ForwardTransform: unsafe extern "system" fn(
*mut core::ffi::c_void,
*mut core::ffi::c_void,
*mut *mut core::ffi::c_void,
) -> windows_core::HRESULT,
pub InverseTransform: unsafe extern "system" fn(
*mut core::ffi::c_void,
*mut core::ffi::c_void,
*mut *mut core::ffi::c_void,
) -> windows_core::HRESULT,
}
pub trait ID3DX11FFT_Impl: windows_core::IUnknownImpl {
fn SetForwardScale(&self, forwardscale: f32) -> windows_core::Result<()>;
fn GetForwardScale(&self) -> f32;
fn SetInverseScale(&self, inversescale: f32) -> windows_core::Result<()>;
fn GetInverseScale(&self) -> f32;
fn AttachBuffersAndPrecompute(
&self,
numtempbuffers: u32,
pptempbuffers: *const Option<ID3D11UnorderedAccessView>,
numprecomputebuffers: u32,
ppprecomputebuffersizes: *const Option<ID3D11UnorderedAccessView>,
) -> windows_core::Result<()>;
fn ForwardTransform(
&self,
pinputbuffer: windows_core::Ref<'_, ID3D11UnorderedAccessView>,
ppoutputbuffer: windows_core::OutRef<'_, ID3D11UnorderedAccessView>,
) -> windows_core::Result<()>;
fn InverseTransform(
&self,
pinputbuffer: windows_core::Ref<'_, ID3D11UnorderedAccessView>,
ppoutputbuffer: windows_core::OutRef<'_, ID3D11UnorderedAccessView>,
) -> windows_core::Result<()>;
}
impl ID3DX11FFT_Vtbl {
pub const fn new<Identity: ID3DX11FFT_Impl, const OFFSET: isize>() -> Self {
unsafe extern "system" fn SetForwardScale<
Identity: ID3DX11FFT_Impl,
const OFFSET: isize,
>(
this: *mut core::ffi::c_void,
forwardscale: f32,
) -> windows_core::HRESULT {
unsafe {
let this: &Identity =
&*((this as *const *const ()).offset(OFFSET) as *const Identity);
ID3DX11FFT_Impl::SetForwardScale(this, core::mem::transmute_copy(&forwardscale))
.into()
}
}
unsafe extern "system" fn GetForwardScale<
Identity: ID3DX11FFT_Impl,
const OFFSET: isize,
>(
this: *mut core::ffi::c_void,
) -> f32 {
unsafe {
let this: &Identity =
&*((this as *const *const ()).offset(OFFSET) as *const Identity);
ID3DX11FFT_Impl::GetForwardScale(this)
}
}
unsafe extern "system" fn SetInverseScale<
Identity: ID3DX11FFT_Impl,
const OFFSET: isize,
>(
this: *mut core::ffi::c_void,
inversescale: f32,
) -> windows_core::HRESULT {
unsafe {
let this: &Identity =
&*((this as *const *const ()).offset(OFFSET) as *const Identity);
ID3DX11FFT_Impl::SetInverseScale(this, core::mem::transmute_copy(&inversescale))
.into()
}
}
unsafe extern "system" fn GetInverseScale<
Identity: ID3DX11FFT_Impl,
const OFFSET: isize,
>(
this: *mut core::ffi::c_void,
) -> f32 {
unsafe {
let this: &Identity =
&*((this as *const *const ()).offset(OFFSET) as *const Identity);
ID3DX11FFT_Impl::GetInverseScale(this)
}
}
unsafe extern "system" fn AttachBuffersAndPrecompute<
Identity: ID3DX11FFT_Impl,
const OFFSET: isize,
>(
this: *mut core::ffi::c_void,
numtempbuffers: u32,
pptempbuffers: *const *mut core::ffi::c_void,
numprecomputebuffers: u32,
ppprecomputebuffersizes: *const *mut core::ffi::c_void,
) -> windows_core::HRESULT {
unsafe {
let this: &Identity =
&*((this as *const *const ()).offset(OFFSET) as *const Identity);
ID3DX11FFT_Impl::AttachBuffersAndPrecompute(
this,
core::mem::transmute_copy(&numtempbuffers),
core::mem::transmute_copy(&pptempbuffers),
core::mem::transmute_copy(&numprecomputebuffers),
core::mem::transmute_copy(&ppprecomputebuffersizes),
)
.into()
}
}
unsafe extern "system" fn ForwardTransform<
Identity: ID3DX11FFT_Impl,
const OFFSET: isize,
>(
this: *mut core::ffi::c_void,
pinputbuffer: *mut core::ffi::c_void,
ppoutputbuffer: *mut *mut core::ffi::c_void,
) -> windows_core::HRESULT {
unsafe {
let this: &Identity =
&*((this as *const *const ()).offset(OFFSET) as *const Identity);
ID3DX11FFT_Impl::ForwardTransform(
this,
core::mem::transmute_copy(&pinputbuffer),
core::mem::transmute_copy(&ppoutputbuffer),
)
.into()
}
}
unsafe extern "system" fn InverseTransform<
Identity: ID3DX11FFT_Impl,
const OFFSET: isize,
>(
this: *mut core::ffi::c_void,
pinputbuffer: *mut core::ffi::c_void,
ppoutputbuffer: *mut *mut core::ffi::c_void,
) -> windows_core::HRESULT {
unsafe {
let this: &Identity =
&*((this as *const *const ()).offset(OFFSET) as *const Identity);
ID3DX11FFT_Impl::InverseTransform(
this,
core::mem::transmute_copy(&pinputbuffer),
core::mem::transmute_copy(&ppoutputbuffer),
)
.into()
}
}
Self {
base__: windows_core::IUnknown_Vtbl::new::<Identity, OFFSET>(),
SetForwardScale: SetForwardScale::<Identity, OFFSET>,
GetForwardScale: GetForwardScale::<Identity, OFFSET>,
SetInverseScale: SetInverseScale::<Identity, OFFSET>,
GetInverseScale: GetInverseScale::<Identity, OFFSET>,
AttachBuffersAndPrecompute: AttachBuffersAndPrecompute::<Identity, OFFSET>,
ForwardTransform: ForwardTransform::<Identity, OFFSET>,
InverseTransform: InverseTransform::<Identity, OFFSET>,
}
}
pub fn matches(iid: &windows_core::GUID) -> bool {
iid == &<ID3DX11FFT as windows_core::Interface>::IID
}
}
impl windows_core::RuntimeName for ID3DX11FFT {}
unsafe impl Send for ID3DX11FFT {}
unsafe impl Sync for ID3DX11FFT {}
windows_core::imp::define_interface!(
ID3DX11Scan,
ID3DX11Scan_Vtbl,
0x5089b68f_e71d_4d38_be8e_f363b95a9405
);
windows_core::imp::interface_hierarchy!(ID3DX11Scan, windows_core::IUnknown);
impl ID3DX11Scan {
pub unsafe fn SetScanDirection(
&self,
direction: D3DX11_SCAN_DIRECTION,
) -> windows_core::Result<()> {
unsafe {
(windows_core::Interface::vtable(self).SetScanDirection)(
windows_core::Interface::as_raw(self),
direction,
)
.ok()
}
}
pub unsafe fn Scan<P3, P4>(
&self,
elementtype: D3DX11_SCAN_DATA_TYPE,
opcode: D3DX11_SCAN_OPCODE,
elementscansize: u32,
psrc: P3,
pdst: P4,
) -> windows_core::Result<()>
where
P3: windows_core::Param<ID3D11UnorderedAccessView>,
P4: windows_core::Param<ID3D11UnorderedAccessView>,
{
unsafe {
(windows_core::Interface::vtable(self).Scan)(
windows_core::Interface::as_raw(self),
elementtype,
opcode,
elementscansize,
psrc.param().abi(),
pdst.param().abi(),
)
.ok()
}
}
pub unsafe fn Multiscan<P5, P6>(
&self,
elementtype: D3DX11_SCAN_DATA_TYPE,
opcode: D3DX11_SCAN_OPCODE,
elementscansize: u32,
elementscanpitch: u32,
scancount: u32,
psrc: P5,
pdst: P6,
) -> windows_core::Result<()>
where
P5: windows_core::Param<ID3D11UnorderedAccessView>,
P6: windows_core::Param<ID3D11UnorderedAccessView>,
{
unsafe {
(windows_core::Interface::vtable(self).Multiscan)(
windows_core::Interface::as_raw(self),
elementtype,
opcode,
elementscansize,
elementscanpitch,
scancount,
psrc.param().abi(),
pdst.param().abi(),
)
.ok()
}
}
}
#[repr(C)]
pub struct ID3DX11Scan_Vtbl {
pub base__: windows_core::IUnknown_Vtbl,
pub SetScanDirection: unsafe extern "system" fn(
*mut core::ffi::c_void,
D3DX11_SCAN_DIRECTION,
) -> windows_core::HRESULT,
pub Scan: unsafe extern "system" fn(
*mut core::ffi::c_void,
D3DX11_SCAN_DATA_TYPE,
D3DX11_SCAN_OPCODE,
u32,
*mut core::ffi::c_void,
*mut core::ffi::c_void,
) -> windows_core::HRESULT,
pub Multiscan: unsafe extern "system" fn(
*mut core::ffi::c_void,
D3DX11_SCAN_DATA_TYPE,
D3DX11_SCAN_OPCODE,
u32,
u32,
u32,
*mut core::ffi::c_void,
*mut core::ffi::c_void,
) -> windows_core::HRESULT,
}
pub trait ID3DX11Scan_Impl: windows_core::IUnknownImpl {
fn SetScanDirection(&self, direction: D3DX11_SCAN_DIRECTION) -> windows_core::Result<()>;
fn Scan(
&self,
elementtype: D3DX11_SCAN_DATA_TYPE,
opcode: D3DX11_SCAN_OPCODE,
elementscansize: u32,
psrc: windows_core::Ref<'_, ID3D11UnorderedAccessView>,
pdst: windows_core::Ref<'_, ID3D11UnorderedAccessView>,
) -> windows_core::Result<()>;
fn Multiscan(
&self,
elementtype: D3DX11_SCAN_DATA_TYPE,
opcode: D3DX11_SCAN_OPCODE,
elementscansize: u32,
elementscanpitch: u32,
scancount: u32,
psrc: windows_core::Ref<'_, ID3D11UnorderedAccessView>,
pdst: windows_core::Ref<'_, ID3D11UnorderedAccessView>,
) -> windows_core::Result<()>;
}
impl ID3DX11Scan_Vtbl {
pub const fn new<Identity: ID3DX11Scan_Impl, const OFFSET: isize>() -> Self {
unsafe extern "system" fn SetScanDirection<
Identity: ID3DX11Scan_Impl,
const OFFSET: isize,
>(
this: *mut core::ffi::c_void,
direction: D3DX11_SCAN_DIRECTION,
) -> windows_core::HRESULT {
unsafe {
let this: &Identity =
&*((this as *const *const ()).offset(OFFSET) as *const Identity);
ID3DX11Scan_Impl::SetScanDirection(this, core::mem::transmute_copy(&direction))
.into()
}
}
unsafe extern "system" fn Scan<Identity: ID3DX11Scan_Impl, const OFFSET: isize>(
this: *mut core::ffi::c_void,
elementtype: D3DX11_SCAN_DATA_TYPE,
opcode: D3DX11_SCAN_OPCODE,
elementscansize: u32,
psrc: *mut core::ffi::c_void,
pdst: *mut core::ffi::c_void,
) -> windows_core::HRESULT {
unsafe {
let this: &Identity =
&*((this as *const *const ()).offset(OFFSET) as *const Identity);
ID3DX11Scan_Impl::Scan(
this,
core::mem::transmute_copy(&elementtype),
core::mem::transmute_copy(&opcode),
core::mem::transmute_copy(&elementscansize),
core::mem::transmute_copy(&psrc),
core::mem::transmute_copy(&pdst),
)
.into()
}
}
unsafe extern "system" fn Multiscan<Identity: ID3DX11Scan_Impl, const OFFSET: isize>(
this: *mut core::ffi::c_void,
elementtype: D3DX11_SCAN_DATA_TYPE,
opcode: D3DX11_SCAN_OPCODE,
elementscansize: u32,
elementscanpitch: u32,
scancount: u32,
psrc: *mut core::ffi::c_void,
pdst: *mut core::ffi::c_void,
) -> windows_core::HRESULT {
unsafe {
let this: &Identity =
&*((this as *const *const ()).offset(OFFSET) as *const Identity);
ID3DX11Scan_Impl::Multiscan(
this,
core::mem::transmute_copy(&elementtype),
core::mem::transmute_copy(&opcode),
core::mem::transmute_copy(&elementscansize),
core::mem::transmute_copy(&elementscanpitch),
core::mem::transmute_copy(&scancount),
core::mem::transmute_copy(&psrc),
core::mem::transmute_copy(&pdst),
)
.into()
}
}
Self {
base__: windows_core::IUnknown_Vtbl::new::<Identity, OFFSET>(),
SetScanDirection: SetScanDirection::<Identity, OFFSET>,
Scan: Scan::<Identity, OFFSET>,
Multiscan: Multiscan::<Identity, OFFSET>,
}
}
pub fn matches(iid: &windows_core::GUID) -> bool {
iid == &<ID3DX11Scan as windows_core::Interface>::IID
}
}
impl windows_core::RuntimeName for ID3DX11Scan {}
unsafe impl Send for ID3DX11Scan {}
unsafe impl Sync for ID3DX11Scan {}
windows_core::imp::define_interface!(
ID3DX11SegmentedScan,
ID3DX11SegmentedScan_Vtbl,
0xa915128c_d954_4c79_bfe1_64db923194d6
);
windows_core::imp::interface_hierarchy!(ID3DX11SegmentedScan, windows_core::IUnknown);
impl ID3DX11SegmentedScan {
pub unsafe fn SetScanDirection(
&self,
direction: D3DX11_SCAN_DIRECTION,
) -> windows_core::Result<()> {
unsafe {
(windows_core::Interface::vtable(self).SetScanDirection)(
windows_core::Interface::as_raw(self),
direction,
)
.ok()
}
}
pub unsafe fn SegScan<P3, P4, P5>(
&self,
elementtype: D3DX11_SCAN_DATA_TYPE,
opcode: D3DX11_SCAN_OPCODE,
elementscansize: u32,
psrc: P3,
psrcelementflags: P4,
pdst: P5,
) -> windows_core::Result<()>
where
P3: windows_core::Param<ID3D11UnorderedAccessView>,
P4: windows_core::Param<ID3D11UnorderedAccessView>,
P5: windows_core::Param<ID3D11UnorderedAccessView>,
{
unsafe {
(windows_core::Interface::vtable(self).SegScan)(
windows_core::Interface::as_raw(self),
elementtype,
opcode,
elementscansize,
psrc.param().abi(),
psrcelementflags.param().abi(),
pdst.param().abi(),
)
.ok()
}
}
}
#[repr(C)]
pub struct ID3DX11SegmentedScan_Vtbl {
pub base__: windows_core::IUnknown_Vtbl,
pub SetScanDirection: unsafe extern "system" fn(
*mut core::ffi::c_void,
D3DX11_SCAN_DIRECTION,
) -> windows_core::HRESULT,
pub SegScan: unsafe extern "system" fn(
*mut core::ffi::c_void,
D3DX11_SCAN_DATA_TYPE,
D3DX11_SCAN_OPCODE,
u32,
*mut core::ffi::c_void,
*mut core::ffi::c_void,
*mut core::ffi::c_void,
) -> windows_core::HRESULT,
}
pub trait ID3DX11SegmentedScan_Impl: windows_core::IUnknownImpl {
fn SetScanDirection(&self, direction: D3DX11_SCAN_DIRECTION) -> windows_core::Result<()>;
fn SegScan(
&self,
elementtype: D3DX11_SCAN_DATA_TYPE,
opcode: D3DX11_SCAN_OPCODE,
elementscansize: u32,
psrc: windows_core::Ref<'_, ID3D11UnorderedAccessView>,
psrcelementflags: windows_core::Ref<'_, ID3D11UnorderedAccessView>,
pdst: windows_core::Ref<'_, ID3D11UnorderedAccessView>,
) -> windows_core::Result<()>;
}
impl ID3DX11SegmentedScan_Vtbl {
pub const fn new<Identity: ID3DX11SegmentedScan_Impl, const OFFSET: isize>() -> Self {
unsafe extern "system" fn SetScanDirection<
Identity: ID3DX11SegmentedScan_Impl,
const OFFSET: isize,
>(
this: *mut core::ffi::c_void,
direction: D3DX11_SCAN_DIRECTION,
) -> windows_core::HRESULT {
unsafe {
let this: &Identity =
&*((this as *const *const ()).offset(OFFSET) as *const Identity);
ID3DX11SegmentedScan_Impl::SetScanDirection(
this,
core::mem::transmute_copy(&direction),
)
.into()
}
}
unsafe extern "system" fn SegScan<
Identity: ID3DX11SegmentedScan_Impl,
const OFFSET: isize,
>(
this: *mut core::ffi::c_void,
elementtype: D3DX11_SCAN_DATA_TYPE,
opcode: D3DX11_SCAN_OPCODE,
elementscansize: u32,
psrc: *mut core::ffi::c_void,
psrcelementflags: *mut core::ffi::c_void,
pdst: *mut core::ffi::c_void,
) -> windows_core::HRESULT {
unsafe {
let this: &Identity =
&*((this as *const *const ()).offset(OFFSET) as *const Identity);
ID3DX11SegmentedScan_Impl::SegScan(
this,
core::mem::transmute_copy(&elementtype),
core::mem::transmute_copy(&opcode),
core::mem::transmute_copy(&elementscansize),
core::mem::transmute_copy(&psrc),
core::mem::transmute_copy(&psrcelementflags),
core::mem::transmute_copy(&pdst),
)
.into()
}
}
Self {
base__: windows_core::IUnknown_Vtbl::new::<Identity, OFFSET>(),
SetScanDirection: SetScanDirection::<Identity, OFFSET>,
SegScan: SegScan::<Identity, OFFSET>,
}
}
pub fn matches(iid: &windows_core::GUID) -> bool {
iid == &<ID3DX11SegmentedScan as windows_core::Interface>::IID
}
}
impl windows_core::RuntimeName for ID3DX11SegmentedScan {}
unsafe impl Send for ID3DX11SegmentedScan {}
unsafe impl Sync for ID3DX11SegmentedScan {}
#[cfg(all(feature = "Win32_Graphics_Direct3D", feature = "Win32_Graphics_Dxgi"))]
pub type PFN_D3D11_CREATE_DEVICE = Option<
unsafe extern "system" fn(
param0: Option<crate::Dxgi::IDXGIAdapter>,
param1: super::Direct3D::D3D_DRIVER_TYPE,
param2: crate::Foundation::HMODULE,
param3: u32,
param4: *const super::Direct3D::D3D_FEATURE_LEVEL,
featurelevels: u32,
param6: u32,
param7: *mut Option<ID3D11Device>,
param8: *mut super::Direct3D::D3D_FEATURE_LEVEL,
param9: *mut Option<ID3D11DeviceContext>,
) -> windows_core::HRESULT,
>;
#[cfg(all(
feature = "Win32_Graphics_Direct3D",
feature = "Win32_Graphics_Dxgi_Common"
))]
pub type PFN_D3D11_CREATE_DEVICE_AND_SWAP_CHAIN = Option<
unsafe extern "system" fn(
param0: Option<crate::Dxgi::IDXGIAdapter>,
param1: super::Direct3D::D3D_DRIVER_TYPE,
param2: crate::Foundation::HMODULE,
param3: u32,
param4: *const super::Direct3D::D3D_FEATURE_LEVEL,
featurelevels: u32,
param6: u32,
param7: *const crate::Dxgi::DXGI_SWAP_CHAIN_DESC,
param8: *mut Option<crate::Dxgi::IDXGISwapChain>,
param9: *mut Option<ID3D11Device>,
param10: *mut super::Direct3D::D3D_FEATURE_LEVEL,
param11: *mut Option<ID3D11DeviceContext>,
) -> windows_core::HRESULT,
>;
pub const _FACD3D11: u32 = 2172u32;