From cd755e43f215a16879fe3257430192141ec820c4 Mon Sep 17 00:00:00 2001 From: Damyan Pepper Date: Tue, 24 Jan 2023 19:28:03 -0800 Subject: [PATCH] Override D3D headers with those from D3D12 "Agility SDK" nuget package (#1445) * Use Direct3D12 nuget package for d3d12 headers * Workaround #1369 --- BuildTools/BuildTools.proj | 1 + .../WinSDK/Partitions/Direct3D12/settings.rsp | 4 + .../RecompiledIdlHeaders/um/D3DCommon.idl | 55 +- .../WinSDK/RecompiledIdlHeaders/um/d3d12.h | 12944 +++++++++------- .../WinSDK/RecompiledIdlHeaders/um/d3d12.idl | 548 +- .../RecompiledIdlHeaders/um/d3d12sdklayers.h | 710 +- .../um/d3d12sdklayers.idl | 93 +- .../RecompiledIdlHeaders/um/d3d12shader.h | 30 +- .../RecompiledIdlHeaders/um/d3d12video.h | 2404 +-- .../RecompiledIdlHeaders/um/d3d12video.idl | 61 +- .../RecompiledIdlHeaders/um/d3dcommon.h | 63 +- scripts/RecompileIdlFilesForScraping.ps1 | 6 + 12 files changed, 10252 insertions(+), 6667 deletions(-) diff --git a/BuildTools/BuildTools.proj b/BuildTools/BuildTools.proj index 7c506e00a..9d4a6ca54 100644 --- a/BuildTools/BuildTools.proj +++ b/BuildTools/BuildTools.proj @@ -15,5 +15,6 @@ all + diff --git a/generation/WinSDK/Partitions/Direct3D12/settings.rsp b/generation/WinSDK/Partitions/Direct3D12/settings.rsp index 6c296b9b9..bbe40cc77 100644 --- a/generation/WinSDK/Partitions/Direct3D12/settings.rsp +++ b/generation/WinSDK/Partitions/Direct3D12/settings.rsp @@ -4,3 +4,7 @@ /um/d3d12shader.h --namespace Windows.Win32.Graphics.Direct3D12 +--with-type +D3D12_BARRIER_SYNC=uint +--with-type +D3D12_BARRIER_ACCESS=uint \ No newline at end of file diff --git a/generation/WinSDK/RecompiledIdlHeaders/um/D3DCommon.idl b/generation/WinSDK/RecompiledIdlHeaders/um/D3DCommon.idl index 2492ce476..3f2b76b87 100644 --- a/generation/WinSDK/RecompiledIdlHeaders/um/D3DCommon.idl +++ b/generation/WinSDK/RecompiledIdlHeaders/um/D3DCommon.idl @@ -4,8 +4,8 @@ * Licensed under the MIT license * *-------------------------------------------------------------------------------------*/ -import "OAIdl.idl"; -import "OCIdl.idl"; +import "oaidl.idl"; +import "ocidl.idl"; //---------------------------------------------------------------------------- // @@ -62,7 +62,7 @@ typedef enum D3D_PRIMITIVE_TOPOLOGY D3D_PRIMITIVE_TOPOLOGY_LINESTRIP = 3, D3D_PRIMITIVE_TOPOLOGY_TRIANGLELIST = 4, D3D_PRIMITIVE_TOPOLOGY_TRIANGLESTRIP = 5, - // 6 is reserved for legacy triangle fans + D3D_PRIMITIVE_TOPOLOGY_TRIANGLEFAN = 6, // Adjacency values should be equal to (0x8 & non-adjacency): D3D_PRIMITIVE_TOPOLOGY_LINELIST_ADJ = 10, D3D_PRIMITIVE_TOPOLOGY_LINESTRIP_ADJ = 11, @@ -153,7 +153,7 @@ typedef enum D3D_PRIMITIVE_TOPOLOGY D3D11_PRIMITIVE_TOPOLOGY_29_CONTROL_POINT_PATCHLIST = D3D_PRIMITIVE_TOPOLOGY_29_CONTROL_POINT_PATCHLIST, D3D11_PRIMITIVE_TOPOLOGY_30_CONTROL_POINT_PATCHLIST = D3D_PRIMITIVE_TOPOLOGY_30_CONTROL_POINT_PATCHLIST, D3D11_PRIMITIVE_TOPOLOGY_31_CONTROL_POINT_PATCHLIST = D3D_PRIMITIVE_TOPOLOGY_31_CONTROL_POINT_PATCHLIST, - D3D11_PRIMITIVE_TOPOLOGY_32_CONTROL_POINT_PATCHLIST = D3D_PRIMITIVE_TOPOLOGY_32_CONTROL_POINT_PATCHLIST, + D3D11_PRIMITIVE_TOPOLOGY_32_CONTROL_POINT_PATCHLIST = D3D_PRIMITIVE_TOPOLOGY_32_CONTROL_POINT_PATCHLIST } D3D_PRIMITIVE_TOPOLOGY; typedef enum D3D_PRIMITIVE @@ -327,6 +327,8 @@ cpp_quote("#define D3D_SHADER_FEATURE_RESOURCE_DESCRIPTOR_HEAP_INDEXING cpp_quote("#define D3D_SHADER_FEATURE_SAMPLER_DESCRIPTOR_HEAP_INDEXING 0x4000000") cpp_quote("#define D3D_SHADER_FEATURE_WAVE_MMA 0x8000000") cpp_quote("#define D3D_SHADER_FEATURE_ATOMIC_INT64_ON_DESCRIPTOR_HEAP_RESOURCE 0x10000000") +cpp_quote("#define D3D_SHADER_FEATURE_ADVANCED_TEXTURE_OPS 0x20000000") +cpp_quote("#define D3D_SHADER_FEATURE_WRITEABLE_MSAA_TEXTURES 0x40000000") // Additional internal shader feature flags are listed in dxbcutils.h (not relevant/useful for public to see) // When adding entries here, make sure they don't conflict with what's there. @@ -891,6 +893,51 @@ typedef enum _D3D_PARAMETER_FLAGS D3D_PF_FORCE_DWORD = 0x7fffffff } D3D_PARAMETER_FLAGS; +// Format Layout Properties +typedef enum D3D_FORMAT_LAYOUT +{ + D3DFL_STANDARD = 0, // standard layout + D3DFL_CUSTOM = -1 // custom layout + // Note, 1 bit allocated for this in FORMAT_DETAIL below. If you add fields here, add bits... + // NOTE SIGNED VALUES ARE USED SINCE COMPILER MAKES ENUMS SIGNED, AND BITFIELDS ARE SIGN EXTENDED ON READ +} D3D_FORMAT_LAYOUT; + +typedef enum D3D_FORMAT_TYPE_LEVEL +{ + D3DFTL_NO_TYPE = 0, + D3DFTL_PARTIAL_TYPE = -2, + D3DFTL_FULL_TYPE = -1, + // Note, 2 bits allocated for this in FORMAT_DETAIL below. If you add fields here, add bits... + // NOTE SIGNED VALUES ARE USED SINCE COMPILER MAKES ENUMS SIGNED, AND BITFIELDS ARE SIGN EXTENDED ON READ +} D3D_FORMAT_TYPE_LEVEL; + +typedef enum D3D_FORMAT_COMPONENT_NAME +{ + D3DFCN_R = -4, + D3DFCN_G = -3, + D3DFCN_B = -2, + D3DFCN_A = -1, + D3DFCN_D = 0, + D3DFCN_S = 1, + D3DFCN_X = 2, + // Note, 3 bits allocated for this in FORMAT_DETAIL below. If you add fields here, add bits... + // NOTE SIGNED VALUES ARE USED SINCE COMPILER MAKES ENUMS SIGNED, AND BITFIELDS ARE SIGN EXTENDED ON READ +} D3D_FORMAT_COMPONENT_NAME; + +typedef enum D3D_FORMAT_COMPONENT_INTERPRETATION +{ + D3DFCI_TYPELESS = 0, + D3DFCI_FLOAT = -4, + D3DFCI_SNORM = -3, + D3DFCI_UNORM = -2, + D3DFCI_SINT = -1, + D3DFCI_UINT = 1, + D3DFCI_UNORM_SRGB = 2, + D3DFCI_BIASED_FIXED_2_8 = 3, + // Note, 3 bits allocated for this in FORMAT_DETAIL below. If you add fields here, add bits... + // NOTE SIGNED VALUES ARE USED SINCE COMPILER MAKES ENUMS SIGNED, AND BITFIELDS ARE SIGN EXTENDED ON READ +} D3D_FORMAT_COMPONENT_INTERPRETATION; + // Well-Known Private Data IDs (WKPDID_*): // WKPDID_D3DDebugObjectName provides a unique name to objects in order to assist the developer during debugging. diff --git a/generation/WinSDK/RecompiledIdlHeaders/um/d3d12.h b/generation/WinSDK/RecompiledIdlHeaders/um/d3d12.h index 697582bc0..78ee1f4b5 100644 --- a/generation/WinSDK/RecompiledIdlHeaders/um/d3d12.h +++ b/generation/WinSDK/RecompiledIdlHeaders/um/d3d12.h @@ -1,10 +1,15 @@ +/*------------------------------------------------------------------------------------- + * + * Copyright (c) Microsoft Corporation + * Licensed under the MIT license + * + *-------------------------------------------------------------------------------------*/ /* this ALWAYS GENERATED file contains the definitions for the interfaces */ - /* File created by MIDL compiler version 8.01.0626 */ -/* @@MIDL_FILE_HEADING( ) */ + /* File created by MIDL compiler version 8.01.0628 */ @@ -38,7 +43,7 @@ #endif #ifndef DECLSPEC_XFGVIRT -#if _CONTROL_FLOW_GUARD_XFG +#if defined(_CONTROL_FLOW_GUARD_XFG) #define DECLSPEC_XFGVIRT(base, func) __declspec(xfg_virtual(base, func)) #else #define DECLSPEC_XFGVIRT(base, func) @@ -306,6 +311,13 @@ typedef interface ID3D12DeviceRemovedExtendedDataSettings1 ID3D12DeviceRemovedEx #endif /* __ID3D12DeviceRemovedExtendedDataSettings1_FWD_DEFINED__ */ +#ifndef __ID3D12DeviceRemovedExtendedDataSettings2_FWD_DEFINED__ +#define __ID3D12DeviceRemovedExtendedDataSettings2_FWD_DEFINED__ +typedef interface ID3D12DeviceRemovedExtendedDataSettings2 ID3D12DeviceRemovedExtendedDataSettings2; + +#endif /* __ID3D12DeviceRemovedExtendedDataSettings2_FWD_DEFINED__ */ + + #ifndef __ID3D12DeviceRemovedExtendedData_FWD_DEFINED__ #define __ID3D12DeviceRemovedExtendedData_FWD_DEFINED__ typedef interface ID3D12DeviceRemovedExtendedData ID3D12DeviceRemovedExtendedData; @@ -411,6 +423,27 @@ typedef interface ID3D12Device9 ID3D12Device9; #endif /* __ID3D12Device9_FWD_DEFINED__ */ +#ifndef __ID3D12Device10_FWD_DEFINED__ +#define __ID3D12Device10_FWD_DEFINED__ +typedef interface ID3D12Device10 ID3D12Device10; + +#endif /* __ID3D12Device10_FWD_DEFINED__ */ + + +#ifndef __ID3D12Device11_FWD_DEFINED__ +#define __ID3D12Device11_FWD_DEFINED__ +typedef interface ID3D12Device11 ID3D12Device11; + +#endif /* __ID3D12Device11_FWD_DEFINED__ */ + + +#ifndef __ID3D12VirtualizationGuestDevice_FWD_DEFINED__ +#define __ID3D12VirtualizationGuestDevice_FWD_DEFINED__ +typedef interface ID3D12VirtualizationGuestDevice ID3D12VirtualizationGuestDevice; + +#endif /* __ID3D12VirtualizationGuestDevice_FWD_DEFINED__ */ + + #ifndef __ID3D12Tools_FWD_DEFINED__ #define __ID3D12Tools_FWD_DEFINED__ typedef interface ID3D12Tools ID3D12Tools; @@ -425,6 +458,27 @@ typedef interface ID3D12SDKConfiguration ID3D12SDKConfiguration; #endif /* __ID3D12SDKConfiguration_FWD_DEFINED__ */ +#ifndef __ID3D12SDKConfiguration1_FWD_DEFINED__ +#define __ID3D12SDKConfiguration1_FWD_DEFINED__ +typedef interface ID3D12SDKConfiguration1 ID3D12SDKConfiguration1; + +#endif /* __ID3D12SDKConfiguration1_FWD_DEFINED__ */ + + +#ifndef __ID3D12DeviceFactory_FWD_DEFINED__ +#define __ID3D12DeviceFactory_FWD_DEFINED__ +typedef interface ID3D12DeviceFactory ID3D12DeviceFactory; + +#endif /* __ID3D12DeviceFactory_FWD_DEFINED__ */ + + +#ifndef __ID3D12DeviceConfiguration_FWD_DEFINED__ +#define __ID3D12DeviceConfiguration_FWD_DEFINED__ +typedef interface ID3D12DeviceConfiguration ID3D12DeviceConfiguration; + +#endif /* __ID3D12DeviceConfiguration_FWD_DEFINED__ */ + + #ifndef __ID3D12GraphicsCommandList5_FWD_DEFINED__ #define __ID3D12GraphicsCommandList5_FWD_DEFINED__ typedef interface ID3D12GraphicsCommandList5 ID3D12GraphicsCommandList5; @@ -439,9 +493,30 @@ typedef interface ID3D12GraphicsCommandList6 ID3D12GraphicsCommandList6; #endif /* __ID3D12GraphicsCommandList6_FWD_DEFINED__ */ +#ifndef __ID3D12GraphicsCommandList7_FWD_DEFINED__ +#define __ID3D12GraphicsCommandList7_FWD_DEFINED__ +typedef interface ID3D12GraphicsCommandList7 ID3D12GraphicsCommandList7; + +#endif /* __ID3D12GraphicsCommandList7_FWD_DEFINED__ */ + + +#ifndef __ID3D12GraphicsCommandList8_FWD_DEFINED__ +#define __ID3D12GraphicsCommandList8_FWD_DEFINED__ +typedef interface ID3D12GraphicsCommandList8 ID3D12GraphicsCommandList8; + +#endif /* __ID3D12GraphicsCommandList8_FWD_DEFINED__ */ + + +#ifndef __ID3D12GraphicsCommandList9_FWD_DEFINED__ +#define __ID3D12GraphicsCommandList9_FWD_DEFINED__ +typedef interface ID3D12GraphicsCommandList9 ID3D12GraphicsCommandList9; + +#endif /* __ID3D12GraphicsCommandList9_FWD_DEFINED__ */ + + /* header files for imported files */ -#include "OAIdl.h" -#include "OCIdl.h" +#include "oaidl.h" +#include "ocidl.h" #include "dxgicommon.h" #include "dxgiformat.h" #include "d3dcommon.h" @@ -971,6 +1046,8 @@ extern "C"{ #define D3D12_PIXEL_ADDRESS_RANGE_BIT_COUNT ( 15 ) +#define D3D12_PREVIEW_SDK_VERSION ( 707 ) + #define D3D12_PRE_SCISSOR_PIXEL_ADDRESS_RANGE_BIT_COUNT ( 16 ) #define D3D12_PS_CS_UAV_REGISTER_COMPONENTS ( 1 ) @@ -1102,7 +1179,7 @@ extern "C"{ #define D3D12_RS_SET_SHADING_RATE_COMBINER_COUNT ( 2 ) -#define D3D12_SDK_VERSION ( 5 ) +#define D3D12_SDK_VERSION ( 608 ) #define D3D12_SHADER_IDENTIFIER_SIZE_IN_BYTES ( 32 ) @@ -1267,7 +1344,8 @@ enum D3D12_COMMAND_LIST_TYPE D3D12_COMMAND_LIST_TYPE_COPY = 3, D3D12_COMMAND_LIST_TYPE_VIDEO_DECODE = 4, D3D12_COMMAND_LIST_TYPE_VIDEO_PROCESS = 5, - D3D12_COMMAND_LIST_TYPE_VIDEO_ENCODE = 6 + D3D12_COMMAND_LIST_TYPE_VIDEO_ENCODE = 6, + D3D12_COMMAND_LIST_TYPE_NONE = -1 } D3D12_COMMAND_LIST_TYPE; typedef @@ -1376,6 +1454,7 @@ typedef struct D3D12_BOX typedef enum D3D12_COMPARISON_FUNC { + D3D12_COMPARISON_FUNC_NONE = 0, D3D12_COMPARISON_FUNC_NEVER = 1, D3D12_COMPARISON_FUNC_LESS = 2, D3D12_COMPARISON_FUNC_EQUAL = 3, @@ -1439,6 +1518,27 @@ typedef struct D3D12_DEPTH_STENCIL_DESC1 BOOL DepthBoundsTestEnable; } D3D12_DEPTH_STENCIL_DESC1; +typedef struct D3D12_DEPTH_STENCILOP_DESC1 + { + D3D12_STENCIL_OP StencilFailOp; + D3D12_STENCIL_OP StencilDepthFailOp; + D3D12_STENCIL_OP StencilPassOp; + D3D12_COMPARISON_FUNC StencilFunc; + UINT8 StencilReadMask; + UINT8 StencilWriteMask; + } D3D12_DEPTH_STENCILOP_DESC1; + +typedef struct D3D12_DEPTH_STENCIL_DESC2 + { + BOOL DepthEnable; + D3D12_DEPTH_WRITE_MASK DepthWriteMask; + D3D12_COMPARISON_FUNC DepthFunc; + BOOL StencilEnable; + D3D12_DEPTH_STENCILOP_DESC1 FrontFace; + D3D12_DEPTH_STENCILOP_DESC1 BackFace; + BOOL DepthBoundsTestEnable; + } D3D12_DEPTH_STENCIL_DESC2; + typedef enum D3D12_BLEND { @@ -1458,7 +1558,9 @@ enum D3D12_BLEND D3D12_BLEND_SRC1_COLOR = 16, D3D12_BLEND_INV_SRC1_COLOR = 17, D3D12_BLEND_SRC1_ALPHA = 18, - D3D12_BLEND_INV_SRC1_ALPHA = 19 + D3D12_BLEND_INV_SRC1_ALPHA = 19, + D3D12_BLEND_ALPHA_FACTOR = 20, + D3D12_BLEND_INV_ALPHA_FACTOR = 21 } D3D12_BLEND; typedef @@ -1547,6 +1649,21 @@ typedef struct D3D12_RASTERIZER_DESC D3D12_CONSERVATIVE_RASTERIZATION_MODE ConservativeRaster; } D3D12_RASTERIZER_DESC; +typedef struct D3D12_RASTERIZER_DESC1 + { + D3D12_FILL_MODE FillMode; + D3D12_CULL_MODE CullMode; + BOOL FrontCounterClockwise; + FLOAT DepthBias; + FLOAT DepthBiasClamp; + FLOAT SlopeScaledDepthBias; + BOOL DepthClipEnable; + BOOL MultisampleEnable; + BOOL AntialiasedLineEnable; + UINT ForcedSampleCount; + D3D12_CONSERVATIVE_RASTERIZATION_MODE ConservativeRaster; + } D3D12_RASTERIZER_DESC1; + extern RPC_IF_HANDLE __MIDL_itf_d3d12_0000_0000_v0_0_c_ifspec; @@ -1568,29 +1685,20 @@ EXTERN_C const IID IID_ID3D12Object; { public: virtual HRESULT STDMETHODCALLTYPE GetPrivateData( - /* [annotation] */ _In_ REFGUID guid, - /* [annotation] */ _Inout_ UINT *pDataSize, - /* [annotation] */ _Out_writes_bytes_opt_( *pDataSize ) void *pData) = 0; virtual HRESULT STDMETHODCALLTYPE SetPrivateData( - /* [annotation] */ _In_ REFGUID guid, - /* [annotation] */ _In_ UINT DataSize, - /* [annotation] */ _In_reads_bytes_opt_( DataSize ) const void *pData) = 0; virtual HRESULT STDMETHODCALLTYPE SetPrivateDataInterface( - /* [annotation] */ _In_ REFGUID guid, - /* [annotation] */ _In_opt_ const IUnknown *pData) = 0; virtual HRESULT STDMETHODCALLTYPE SetName( - /* [annotation] */ _In_z_ LPCWSTR Name) = 0; }; @@ -1605,9 +1713,7 @@ EXTERN_C const IID IID_ID3D12Object; DECLSPEC_XFGVIRT(IUnknown, QueryInterface) HRESULT ( STDMETHODCALLTYPE *QueryInterface )( ID3D12Object * This, - /* [annotation][in] */ - _In_ REFIID riid, - /* [annotation][iid_is][out] */ + REFIID riid, _COM_Outptr_ void **ppvObject); DECLSPEC_XFGVIRT(IUnknown, AddRef) @@ -1621,35 +1727,26 @@ EXTERN_C const IID IID_ID3D12Object; DECLSPEC_XFGVIRT(ID3D12Object, GetPrivateData) HRESULT ( STDMETHODCALLTYPE *GetPrivateData )( ID3D12Object * This, - /* [annotation] */ _In_ REFGUID guid, - /* [annotation] */ _Inout_ UINT *pDataSize, - /* [annotation] */ _Out_writes_bytes_opt_( *pDataSize ) void *pData); DECLSPEC_XFGVIRT(ID3D12Object, SetPrivateData) HRESULT ( STDMETHODCALLTYPE *SetPrivateData )( ID3D12Object * This, - /* [annotation] */ _In_ REFGUID guid, - /* [annotation] */ _In_ UINT DataSize, - /* [annotation] */ _In_reads_bytes_opt_( DataSize ) const void *pData); DECLSPEC_XFGVIRT(ID3D12Object, SetPrivateDataInterface) HRESULT ( STDMETHODCALLTYPE *SetPrivateDataInterface )( ID3D12Object * This, - /* [annotation] */ _In_ REFGUID guid, - /* [annotation] */ _In_opt_ const IUnknown *pData); DECLSPEC_XFGVIRT(ID3D12Object, SetName) HRESULT ( STDMETHODCALLTYPE *SetName )( ID3D12Object * This, - /* [annotation] */ _In_z_ LPCWSTR Name); END_INTERFACE @@ -1714,9 +1811,7 @@ EXTERN_C const IID IID_ID3D12DeviceChild; { public: virtual HRESULT STDMETHODCALLTYPE GetDevice( - /* [annotation][in] */ - _In_ REFIID riid, - /* [annotation][iid_is][out] */ + REFIID riid, _COM_Outptr_opt_ void **ppvDevice) = 0; }; @@ -1731,9 +1826,7 @@ EXTERN_C const IID IID_ID3D12DeviceChild; DECLSPEC_XFGVIRT(IUnknown, QueryInterface) HRESULT ( STDMETHODCALLTYPE *QueryInterface )( ID3D12DeviceChild * This, - /* [annotation][in] */ - _In_ REFIID riid, - /* [annotation][iid_is][out] */ + REFIID riid, _COM_Outptr_ void **ppvObject); DECLSPEC_XFGVIRT(IUnknown, AddRef) @@ -1747,43 +1840,32 @@ EXTERN_C const IID IID_ID3D12DeviceChild; DECLSPEC_XFGVIRT(ID3D12Object, GetPrivateData) HRESULT ( STDMETHODCALLTYPE *GetPrivateData )( ID3D12DeviceChild * This, - /* [annotation] */ _In_ REFGUID guid, - /* [annotation] */ _Inout_ UINT *pDataSize, - /* [annotation] */ _Out_writes_bytes_opt_( *pDataSize ) void *pData); DECLSPEC_XFGVIRT(ID3D12Object, SetPrivateData) HRESULT ( STDMETHODCALLTYPE *SetPrivateData )( ID3D12DeviceChild * This, - /* [annotation] */ _In_ REFGUID guid, - /* [annotation] */ _In_ UINT DataSize, - /* [annotation] */ _In_reads_bytes_opt_( DataSize ) const void *pData); DECLSPEC_XFGVIRT(ID3D12Object, SetPrivateDataInterface) HRESULT ( STDMETHODCALLTYPE *SetPrivateDataInterface )( ID3D12DeviceChild * This, - /* [annotation] */ _In_ REFGUID guid, - /* [annotation] */ _In_opt_ const IUnknown *pData); DECLSPEC_XFGVIRT(ID3D12Object, SetName) HRESULT ( STDMETHODCALLTYPE *SetName )( ID3D12DeviceChild * This, - /* [annotation] */ _In_z_ LPCWSTR Name); DECLSPEC_XFGVIRT(ID3D12DeviceChild, GetDevice) HRESULT ( STDMETHODCALLTYPE *GetDevice )( ID3D12DeviceChild * This, - /* [annotation][in] */ - _In_ REFIID riid, - /* [annotation][iid_is][out] */ + REFIID riid, _COM_Outptr_opt_ void **ppvDevice); END_INTERFACE @@ -1863,9 +1945,7 @@ EXTERN_C const IID IID_ID3D12RootSignature; DECLSPEC_XFGVIRT(IUnknown, QueryInterface) HRESULT ( STDMETHODCALLTYPE *QueryInterface )( ID3D12RootSignature * This, - /* [annotation][in] */ - _In_ REFIID riid, - /* [annotation][iid_is][out] */ + REFIID riid, _COM_Outptr_ void **ppvObject); DECLSPEC_XFGVIRT(IUnknown, AddRef) @@ -1879,43 +1959,32 @@ EXTERN_C const IID IID_ID3D12RootSignature; DECLSPEC_XFGVIRT(ID3D12Object, GetPrivateData) HRESULT ( STDMETHODCALLTYPE *GetPrivateData )( ID3D12RootSignature * This, - /* [annotation] */ _In_ REFGUID guid, - /* [annotation] */ _Inout_ UINT *pDataSize, - /* [annotation] */ _Out_writes_bytes_opt_( *pDataSize ) void *pData); DECLSPEC_XFGVIRT(ID3D12Object, SetPrivateData) HRESULT ( STDMETHODCALLTYPE *SetPrivateData )( ID3D12RootSignature * This, - /* [annotation] */ _In_ REFGUID guid, - /* [annotation] */ _In_ UINT DataSize, - /* [annotation] */ _In_reads_bytes_opt_( DataSize ) const void *pData); DECLSPEC_XFGVIRT(ID3D12Object, SetPrivateDataInterface) HRESULT ( STDMETHODCALLTYPE *SetPrivateDataInterface )( ID3D12RootSignature * This, - /* [annotation] */ _In_ REFGUID guid, - /* [annotation] */ _In_opt_ const IUnknown *pData); DECLSPEC_XFGVIRT(ID3D12Object, SetName) HRESULT ( STDMETHODCALLTYPE *SetName )( ID3D12RootSignature * This, - /* [annotation] */ _In_z_ LPCWSTR Name); DECLSPEC_XFGVIRT(ID3D12DeviceChild, GetDevice) HRESULT ( STDMETHODCALLTYPE *GetDevice )( ID3D12RootSignature * This, - /* [annotation][in] */ - _In_ REFIID riid, - /* [annotation][iid_is][out] */ + REFIID riid, _COM_Outptr_opt_ void **ppvDevice); END_INTERFACE @@ -1974,17 +2043,14 @@ EXTERN_C const IID IID_ID3D12RootSignature; typedef struct D3D12_SHADER_BYTECODE { - /* [annotation] */ _Field_size_bytes_full_(BytecodeLength) const void *pShaderBytecode; SIZE_T BytecodeLength; } D3D12_SHADER_BYTECODE; typedef struct D3D12_STREAM_OUTPUT_DESC { - /* [annotation] */ _Field_size_full_(NumEntries) const D3D12_SO_DECLARATION_ENTRY *pSODeclaration; UINT NumEntries; - /* [annotation] */ _Field_size_full_(NumStrides) const UINT *pBufferStrides; UINT NumStrides; UINT RasterizedStream; @@ -1992,7 +2058,6 @@ typedef struct D3D12_STREAM_OUTPUT_DESC typedef struct D3D12_INPUT_LAYOUT_DESC { - /* [annotation] */ _Field_size_full_(NumElements) const D3D12_INPUT_ELEMENT_DESC *pInputElementDescs; UINT NumElements; } D3D12_INPUT_LAYOUT_DESC; @@ -2007,7 +2072,6 @@ enum D3D12_INDEX_BUFFER_STRIP_CUT_VALUE typedef struct D3D12_CACHED_PIPELINE_STATE { - /* [annotation] */ _Field_size_bytes_full_(CachedBlobSizeInBytes) const void *pCachedBlob; SIZE_T CachedBlobSizeInBytes; } D3D12_CACHED_PIPELINE_STATE; @@ -2016,7 +2080,9 @@ typedef enum D3D12_PIPELINE_STATE_FLAGS { D3D12_PIPELINE_STATE_FLAG_NONE = 0, - D3D12_PIPELINE_STATE_FLAG_TOOL_DEBUG = 0x1 + D3D12_PIPELINE_STATE_FLAG_TOOL_DEBUG = 0x1, + D3D12_PIPELINE_STATE_FLAG_DYNAMIC_DEPTH_BIAS = 0x4, + D3D12_PIPELINE_STATE_FLAG_DYNAMIC_INDEX_BUFFER_STRIP_CUT = 0x8 } D3D12_PIPELINE_STATE_FLAGS; DEFINE_ENUM_FLAG_OPERATORS( D3D12_PIPELINE_STATE_FLAGS ); @@ -2061,9 +2127,7 @@ struct D3D12_RT_FORMAT_ARRAY } ; typedef struct D3D12_PIPELINE_STATE_STREAM_DESC { - /* [annotation] */ _In_ SIZE_T SizeInBytes; - /* [annotation] */ _In_reads_(_Inexpressible_("Dependent on size of subobjects")) void *pPipelineStateSubobjectStream; } D3D12_PIPELINE_STATE_STREAM_DESC; @@ -2095,7 +2159,9 @@ enum D3D12_PIPELINE_STATE_SUBOBJECT_TYPE D3D12_PIPELINE_STATE_SUBOBJECT_TYPE_VIEW_INSTANCING = ( D3D12_PIPELINE_STATE_SUBOBJECT_TYPE_DEPTH_STENCIL1 + 1 ) , D3D12_PIPELINE_STATE_SUBOBJECT_TYPE_AS = 24, D3D12_PIPELINE_STATE_SUBOBJECT_TYPE_MS = 25, - D3D12_PIPELINE_STATE_SUBOBJECT_TYPE_MAX_VALID = ( D3D12_PIPELINE_STATE_SUBOBJECT_TYPE_MS + 1 ) + D3D12_PIPELINE_STATE_SUBOBJECT_TYPE_DEPTH_STENCIL2 = 26, + D3D12_PIPELINE_STATE_SUBOBJECT_TYPE_RASTERIZER1 = 27, + D3D12_PIPELINE_STATE_SUBOBJECT_TYPE_MAX_VALID = ( D3D12_PIPELINE_STATE_SUBOBJECT_TYPE_RASTERIZER1 + 1 ) } D3D12_PIPELINE_STATE_SUBOBJECT_TYPE; typedef @@ -2131,7 +2197,12 @@ enum D3D12_FEATURE D3D12_FEATURE_D3D12_OPTIONS8 = 36, D3D12_FEATURE_D3D12_OPTIONS9 = 37, D3D12_FEATURE_D3D12_OPTIONS10 = 39, - D3D12_FEATURE_D3D12_OPTIONS11 = 40 + D3D12_FEATURE_D3D12_OPTIONS11 = 40, + D3D12_FEATURE_D3D12_OPTIONS12 = 41, + D3D12_FEATURE_D3D12_OPTIONS13 = 42, + D3D12_FEATURE_D3D12_OPTIONS14 = 43, + D3D12_FEATURE_D3D12_OPTIONS15 = 44, + D3D12_FEATURE_D3D12_OPTIONS16 = 45 } D3D12_FEATURE; typedef @@ -2269,59 +2340,36 @@ enum D3D12_VIEW_INSTANCING_TIER typedef struct D3D12_FEATURE_DATA_D3D12_OPTIONS { - /* [annotation] */ _Out_ BOOL DoublePrecisionFloatShaderOps; - /* [annotation] */ _Out_ BOOL OutputMergerLogicOp; - /* [annotation] */ _Out_ D3D12_SHADER_MIN_PRECISION_SUPPORT MinPrecisionSupport; - /* [annotation] */ _Out_ D3D12_TILED_RESOURCES_TIER TiledResourcesTier; - /* [annotation] */ _Out_ D3D12_RESOURCE_BINDING_TIER ResourceBindingTier; - /* [annotation] */ _Out_ BOOL PSSpecifiedStencilRefSupported; - /* [annotation] */ _Out_ BOOL TypedUAVLoadAdditionalFormats; - /* [annotation] */ _Out_ BOOL ROVsSupported; - /* [annotation] */ _Out_ D3D12_CONSERVATIVE_RASTERIZATION_TIER ConservativeRasterizationTier; - /* [annotation] */ _Out_ UINT MaxGPUVirtualAddressBitsPerResource; - /* [annotation] */ _Out_ BOOL StandardSwizzle64KBSupported; - /* [annotation] */ _Out_ D3D12_CROSS_NODE_SHARING_TIER CrossNodeSharingTier; - /* [annotation] */ _Out_ BOOL CrossAdapterRowMajorTextureSupported; - /* [annotation] */ _Out_ BOOL VPAndRTArrayIndexFromAnyShaderFeedingRasterizerSupportedWithoutGSEmulation; - /* [annotation] */ _Out_ D3D12_RESOURCE_HEAP_TIER ResourceHeapTier; } D3D12_FEATURE_DATA_D3D12_OPTIONS; typedef struct D3D12_FEATURE_DATA_D3D12_OPTIONS1 { - /* [annotation] */ _Out_ BOOL WaveOps; - /* [annotation] */ _Out_ UINT WaveLaneCountMin; - /* [annotation] */ _Out_ UINT WaveLaneCountMax; - /* [annotation] */ _Out_ UINT TotalLaneCount; - /* [annotation] */ _Out_ BOOL ExpandedComputeResourceStates; - /* [annotation] */ _Out_ BOOL Int64ShaderOps; } D3D12_FEATURE_DATA_D3D12_OPTIONS1; typedef struct D3D12_FEATURE_DATA_D3D12_OPTIONS2 { - /* [annotation] */ _Out_ BOOL DepthBoundsTestSupported; - /* [annotation] */ _Out_ D3D12_PROGRAMMABLE_SAMPLE_POSITIONS_TIER ProgrammableSamplePositionsTier; } D3D12_FEATURE_DATA_D3D12_OPTIONS2; @@ -2335,43 +2383,30 @@ enum D3D_ROOT_SIGNATURE_VERSION typedef struct D3D12_FEATURE_DATA_ROOT_SIGNATURE { - /* [annotation] */ _Inout_ D3D_ROOT_SIGNATURE_VERSION HighestVersion; } D3D12_FEATURE_DATA_ROOT_SIGNATURE; typedef struct D3D12_FEATURE_DATA_ARCHITECTURE { - /* [annotation] */ _In_ UINT NodeIndex; - /* [annotation] */ _Out_ BOOL TileBasedRenderer; - /* [annotation] */ _Out_ BOOL UMA; - /* [annotation] */ _Out_ BOOL CacheCoherentUMA; } D3D12_FEATURE_DATA_ARCHITECTURE; typedef struct D3D12_FEATURE_DATA_ARCHITECTURE1 { - /* [annotation] */ _In_ UINT NodeIndex; - /* [annotation] */ _Out_ BOOL TileBasedRenderer; - /* [annotation] */ _Out_ BOOL UMA; - /* [annotation] */ _Out_ BOOL CacheCoherentUMA; - /* [annotation] */ _Out_ BOOL IsolatedMMU; } D3D12_FEATURE_DATA_ARCHITECTURE1; typedef struct D3D12_FEATURE_DATA_FEATURE_LEVELS { - /* [annotation] */ _In_ UINT NumFeatureLevels; - /* [annotation] */ _In_reads_(NumFeatureLevels) const D3D_FEATURE_LEVEL *pFeatureLevelsRequested; - /* [annotation] */ _Out_ D3D_FEATURE_LEVEL MaxSupportedFeatureLevel; } D3D12_FEATURE_DATA_FEATURE_LEVELS; @@ -2386,34 +2421,28 @@ enum D3D_SHADER_MODEL D3D_SHADER_MODEL_6_4 = 0x64, D3D_SHADER_MODEL_6_5 = 0x65, D3D_SHADER_MODEL_6_6 = 0x66, - D3D_SHADER_MODEL_6_7 = 0x67 + D3D_SHADER_MODEL_6_7 = 0x67, + D3D_SHADER_MODEL_6_8 = 0x68, + D3D_HIGHEST_SHADER_MODEL = D3D_SHADER_MODEL_6_8 } D3D_SHADER_MODEL; typedef struct D3D12_FEATURE_DATA_SHADER_MODEL { - /* [annotation] */ _Inout_ D3D_SHADER_MODEL HighestShaderModel; } D3D12_FEATURE_DATA_SHADER_MODEL; typedef struct D3D12_FEATURE_DATA_FORMAT_SUPPORT { - /* [annotation] */ _In_ DXGI_FORMAT Format; - /* [annotation] */ _Out_ D3D12_FORMAT_SUPPORT1 Support1; - /* [annotation] */ _Out_ D3D12_FORMAT_SUPPORT2 Support2; } D3D12_FEATURE_DATA_FORMAT_SUPPORT; typedef struct D3D12_FEATURE_DATA_MULTISAMPLE_QUALITY_LEVELS { - /* [annotation] */ _In_ DXGI_FORMAT Format; - /* [annotation] */ _In_ UINT SampleCount; - /* [annotation] */ _In_ D3D12_MULTISAMPLE_QUALITY_LEVEL_FLAGS Flags; - /* [annotation] */ _Out_ UINT NumQualityLevels; } D3D12_FEATURE_DATA_MULTISAMPLE_QUALITY_LEVELS; @@ -2445,17 +2474,13 @@ enum D3D12_SHADER_CACHE_SUPPORT_FLAGS DEFINE_ENUM_FLAG_OPERATORS( D3D12_SHADER_CACHE_SUPPORT_FLAGS ); typedef struct D3D12_FEATURE_DATA_SHADER_CACHE { - /* [annotation] */ _Out_ D3D12_SHADER_CACHE_SUPPORT_FLAGS SupportFlags; } D3D12_FEATURE_DATA_SHADER_CACHE; typedef struct D3D12_FEATURE_DATA_COMMAND_QUEUE_PRIORITY { - /* [annotation] */ _In_ D3D12_COMMAND_LIST_TYPE CommandListType; - /* [annotation] */ _In_ UINT Priority; - /* [annotation] */ _Out_ BOOL PriorityForTypeIsSupported; } D3D12_FEATURE_DATA_COMMAND_QUEUE_PRIORITY; @@ -2475,21 +2500,15 @@ enum D3D12_COMMAND_LIST_SUPPORT_FLAGS DEFINE_ENUM_FLAG_OPERATORS( D3D12_COMMAND_LIST_SUPPORT_FLAGS ); typedef struct D3D12_FEATURE_DATA_D3D12_OPTIONS3 { - /* [annotation] */ _Out_ BOOL CopyQueueTimestampQueriesSupported; - /* [annotation] */ _Out_ BOOL CastingFullyTypedFormatSupported; - /* [annotation] */ _Out_ D3D12_COMMAND_LIST_SUPPORT_FLAGS WriteBufferImmediateSupportFlags; - /* [annotation] */ _Out_ D3D12_VIEW_INSTANCING_TIER ViewInstancingTier; - /* [annotation] */ _Out_ BOOL BarycentricsSupported; } D3D12_FEATURE_DATA_D3D12_OPTIONS3; typedef struct D3D12_FEATURE_DATA_EXISTING_HEAPS { - /* [annotation] */ _Out_ BOOL Supported; } D3D12_FEATURE_DATA_EXISTING_HEAPS; @@ -2503,19 +2522,14 @@ enum D3D12_SHARED_RESOURCE_COMPATIBILITY_TIER typedef struct D3D12_FEATURE_DATA_DISPLAYABLE { - /* [annotation] */ _Out_ BOOL DisplayableTexture; - /* [annotation] */ _Out_ D3D12_SHARED_RESOURCE_COMPATIBILITY_TIER SharedResourceCompatibilityTier; } D3D12_FEATURE_DATA_DISPLAYABLE; typedef struct D3D12_FEATURE_DATA_D3D12_OPTIONS4 { - /* [annotation] */ _Out_ BOOL MSAA64KBAlignedTextureSupported; - /* [annotation] */ _Out_ D3D12_SHARED_RESOURCE_COMPATIBILITY_TIER SharedResourceCompatibilityTier; - /* [annotation] */ _Out_ BOOL Native16BitShaderOpsSupported; } D3D12_FEATURE_DATA_D3D12_OPTIONS4; @@ -2528,9 +2542,7 @@ enum D3D12_HEAP_SERIALIZATION_TIER typedef struct D3D12_FEATURE_DATA_SERIALIZATION { - /* [annotation] */ _In_ UINT NodeIndex; - /* [annotation] */ _Out_ D3D12_HEAP_SERIALIZATION_TIER HeapSerializationTier; } D3D12_FEATURE_DATA_SERIALIZATION; @@ -2558,11 +2570,8 @@ enum D3D12_RAYTRACING_TIER typedef struct D3D12_FEATURE_DATA_D3D12_OPTIONS5 { - /* [annotation] */ _Out_ BOOL SRVOnlyTiledResourceTier3; - /* [annotation] */ _Out_ D3D12_RENDER_PASS_TIER RenderPassesTier; - /* [annotation] */ _Out_ D3D12_RAYTRACING_TIER RaytracingTier; } D3D12_FEATURE_DATA_D3D12_OPTIONS5; @@ -2576,15 +2585,10 @@ enum D3D12_VARIABLE_SHADING_RATE_TIER typedef struct D3D12_FEATURE_DATA_D3D12_OPTIONS6 { - /* [annotation] */ _Out_ BOOL AdditionalShadingRatesSupported; - /* [annotation] */ _Out_ BOOL PerPrimitiveShadingRateSupportedWithViewportIndexing; - /* [annotation] */ _Out_ D3D12_VARIABLE_SHADING_RATE_TIER VariableShadingRateTier; - /* [annotation] */ _Out_ UINT ShadingRateImageTileSize; - /* [annotation] */ _Out_ BOOL BackgroundProcessingSupported; } D3D12_FEATURE_DATA_D3D12_OPTIONS6; @@ -2605,31 +2609,22 @@ enum D3D12_SAMPLER_FEEDBACK_TIER typedef struct D3D12_FEATURE_DATA_D3D12_OPTIONS7 { - /* [annotation] */ _Out_ D3D12_MESH_SHADER_TIER MeshShaderTier; - /* [annotation] */ _Out_ D3D12_SAMPLER_FEEDBACK_TIER SamplerFeedbackTier; } D3D12_FEATURE_DATA_D3D12_OPTIONS7; typedef struct D3D12_FEATURE_DATA_QUERY_META_COMMAND { - /* [annotation] */ _In_ GUID CommandId; - /* [annotation] */ _In_ UINT NodeMask; - /* [annotation] */ _Field_size_bytes_full_opt_( QueryInputDataSizeInBytes ) const void *pQueryInputData; - /* [annotation] */ _In_ SIZE_T QueryInputDataSizeInBytes; - /* [annotation] */ _Field_size_bytes_full_( QueryOutputDataSizeInBytes ) void *pQueryOutputData; - /* [annotation] */ _In_ SIZE_T QueryOutputDataSizeInBytes; } D3D12_FEATURE_DATA_QUERY_META_COMMAND; typedef struct D3D12_FEATURE_DATA_D3D12_OPTIONS8 { - /* [annotation] */ _Out_ BOOL UnalignedBlockTexturesSupported; } D3D12_FEATURE_DATA_D3D12_OPTIONS8; @@ -2642,34 +2637,69 @@ enum D3D12_WAVE_MMA_TIER typedef struct D3D12_FEATURE_DATA_D3D12_OPTIONS9 { - /* [annotation] */ _Out_ BOOL MeshShaderPipelineStatsSupported; - /* [annotation] */ _Out_ BOOL MeshShaderSupportsFullRangeRenderTargetArrayIndex; - /* [annotation] */ _Out_ BOOL AtomicInt64OnTypedResourceSupported; - /* [annotation] */ _Out_ BOOL AtomicInt64OnGroupSharedSupported; - /* [annotation] */ _Out_ BOOL DerivativesInMeshAndAmplificationShadersSupported; - /* [annotation] */ _Out_ D3D12_WAVE_MMA_TIER WaveMMATier; } D3D12_FEATURE_DATA_D3D12_OPTIONS9; typedef struct D3D12_FEATURE_DATA_D3D12_OPTIONS10 { - /* [annotation] */ _Out_ BOOL VariableRateShadingSumCombinerSupported; - /* [annotation] */ _Out_ BOOL MeshShaderPerPrimitiveShadingRateSupported; } D3D12_FEATURE_DATA_D3D12_OPTIONS10; typedef struct D3D12_FEATURE_DATA_D3D12_OPTIONS11 { - /* [annotation] */ _Out_ BOOL AtomicInt64OnDescriptorHeapResourceSupported; } D3D12_FEATURE_DATA_D3D12_OPTIONS11; +typedef +enum D3D12_TRI_STATE + { + D3D12_TRI_STATE_UNKNOWN = -1, + D3D12_TRI_STATE_FALSE = 0, + D3D12_TRI_STATE_TRUE = 1 + } D3D12_TRI_STATE; + +typedef struct D3D12_FEATURE_DATA_D3D12_OPTIONS12 + { + _Out_ D3D12_TRI_STATE MSPrimitivesPipelineStatisticIncludesCulledPrimitives; + _Out_ BOOL EnhancedBarriersSupported; + _Out_ BOOL RelaxedFormatCastingSupported; + } D3D12_FEATURE_DATA_D3D12_OPTIONS12; + +typedef struct D3D12_FEATURE_DATA_D3D12_OPTIONS13 + { + _Out_ BOOL UnrestrictedBufferTextureCopyPitchSupported; + _Out_ BOOL UnrestrictedVertexElementAlignmentSupported; + _Out_ BOOL InvertedViewportHeightFlipsYSupported; + _Out_ BOOL InvertedViewportDepthFlipsZSupported; + _Out_ BOOL TextureCopyBetweenDimensionsSupported; + _Out_ BOOL AlphaBlendFactorSupported; + } D3D12_FEATURE_DATA_D3D12_OPTIONS13; + +typedef struct D3D12_FEATURE_DATA_D3D12_OPTIONS14 + { + _Out_ BOOL AdvancedTextureOpsSupported; + _Out_ BOOL WriteableMSAATexturesSupported; + _Out_ BOOL IndependentFrontAndBackStencilRefMaskSupported; + } D3D12_FEATURE_DATA_D3D12_OPTIONS14; + +typedef struct D3D12_FEATURE_DATA_D3D12_OPTIONS15 + { + _Out_ BOOL TriangleFanSupported; + _Out_ BOOL DynamicIndexBufferStripCutSupported; + } D3D12_FEATURE_DATA_D3D12_OPTIONS15; + +typedef struct D3D12_FEATURE_DATA_D3D12_OPTIONS16 + { + _Out_ BOOL DynamicDepthBiasSupported; + _Out_ BOOL Reserved; + } D3D12_FEATURE_DATA_D3D12_OPTIONS16; + typedef struct D3D12_RESOURCE_ALLOCATION_INFO { UINT64 SizeInBytes; @@ -2778,7 +2808,8 @@ enum D3D12_RESOURCE_FLAGS D3D12_RESOURCE_FLAG_ALLOW_CROSS_ADAPTER = 0x10, D3D12_RESOURCE_FLAG_ALLOW_SIMULTANEOUS_ACCESS = 0x20, D3D12_RESOURCE_FLAG_VIDEO_DECODE_REFERENCE_ONLY = 0x40, - D3D12_RESOURCE_FLAG_VIDEO_ENCODE_REFERENCE_ONLY = 0x80 + D3D12_RESOURCE_FLAG_VIDEO_ENCODE_REFERENCE_ONLY = 0x80, + D3D12_RESOURCE_FLAG_RAYTRACING_ACCELERATION_STRUCTURE = 0x100 } D3D12_RESOURCE_FLAGS; DEFINE_ENUM_FLAG_OPERATORS( D3D12_RESOURCE_FLAGS ); @@ -3075,7 +3106,6 @@ DEFINE_ENUM_FLAG_OPERATORS( D3D12_VIEW_INSTANCING_FLAGS ); typedef struct D3D12_VIEW_INSTANCING_DESC { UINT ViewInstanceCount; - /* [annotation] */ _Field_size_full_(ViewInstanceCount) const D3D12_VIEW_INSTANCE_LOCATION *pViewInstanceLocations; D3D12_VIEW_INSTANCING_FLAGS Flags; } D3D12_VIEW_INSTANCING_DESC; @@ -3361,6 +3391,33 @@ typedef struct D3D12_SAMPLER_DESC FLOAT MaxLOD; } D3D12_SAMPLER_DESC; +typedef +enum D3D12_SAMPLER_FLAGS + { + D3D12_SAMPLER_FLAG_NONE = 0, + D3D12_SAMPLER_FLAG_UINT_BORDER_COLOR = 0x1 + } D3D12_SAMPLER_FLAGS; + +DEFINE_ENUM_FLAG_OPERATORS( D3D12_SAMPLER_FLAGS ); +typedef struct D3D12_SAMPLER_DESC2 + { + D3D12_FILTER Filter; + D3D12_TEXTURE_ADDRESS_MODE AddressU; + D3D12_TEXTURE_ADDRESS_MODE AddressV; + D3D12_TEXTURE_ADDRESS_MODE AddressW; + FLOAT MipLODBias; + UINT MaxAnisotropy; + D3D12_COMPARISON_FUNC ComparisonFunc; + union + { + FLOAT FloatBorderColor[ 4 ]; + UINT UintBorderColor[ 4 ]; + } ; + FLOAT MinLOD; + FLOAT MaxLOD; + D3D12_SAMPLER_FLAGS Flags; + } D3D12_SAMPLER_DESC2; + typedef enum D3D12_BUFFER_UAV_FLAGS { @@ -3404,6 +3461,17 @@ typedef struct D3D12_TEX2D_ARRAY_UAV UINT PlaneSlice; } D3D12_TEX2D_ARRAY_UAV; +typedef struct D3D12_TEX2DMS_UAV + { + UINT UnusedField_NothingToDefine; + } D3D12_TEX2DMS_UAV; + +typedef struct D3D12_TEX2DMS_ARRAY_UAV + { + UINT FirstArraySlice; + UINT ArraySize; + } D3D12_TEX2DMS_ARRAY_UAV; + typedef struct D3D12_TEX3D_UAV { UINT MipSlice; @@ -3420,6 +3488,8 @@ enum D3D12_UAV_DIMENSION D3D12_UAV_DIMENSION_TEXTURE1DARRAY = 3, D3D12_UAV_DIMENSION_TEXTURE2D = 4, D3D12_UAV_DIMENSION_TEXTURE2DARRAY = 5, + D3D12_UAV_DIMENSION_TEXTURE2DMS = 6, + D3D12_UAV_DIMENSION_TEXTURE2DMSARRAY = 7, D3D12_UAV_DIMENSION_TEXTURE3D = 8 } D3D12_UAV_DIMENSION; @@ -3434,6 +3504,8 @@ typedef struct D3D12_UNORDERED_ACCESS_VIEW_DESC D3D12_TEX1D_ARRAY_UAV Texture1DArray; D3D12_TEX2D_UAV Texture2D; D3D12_TEX2D_ARRAY_UAV Texture2DArray; + D3D12_TEX2DMS_UAV Texture2DMS; + D3D12_TEX2DMS_ARRAY_UAV Texture2DMSArray; D3D12_TEX3D_UAV Texture3D; } ; } D3D12_UNORDERED_ACCESS_VIEW_DESC; @@ -3656,7 +3728,6 @@ typedef struct D3D12_DESCRIPTOR_RANGE typedef struct D3D12_ROOT_DESCRIPTOR_TABLE { UINT NumDescriptorRanges; - /* [annotation] */ _Field_size_full_(NumDescriptorRanges) const D3D12_DESCRIPTOR_RANGE *pDescriptorRanges; } D3D12_ROOT_DESCRIPTOR_TABLE; @@ -3732,7 +3803,9 @@ enum D3D12_STATIC_BORDER_COLOR { D3D12_STATIC_BORDER_COLOR_TRANSPARENT_BLACK = 0, D3D12_STATIC_BORDER_COLOR_OPAQUE_BLACK = ( D3D12_STATIC_BORDER_COLOR_TRANSPARENT_BLACK + 1 ) , - D3D12_STATIC_BORDER_COLOR_OPAQUE_WHITE = ( D3D12_STATIC_BORDER_COLOR_OPAQUE_BLACK + 1 ) + D3D12_STATIC_BORDER_COLOR_OPAQUE_WHITE = ( D3D12_STATIC_BORDER_COLOR_OPAQUE_BLACK + 1 ) , + D3D12_STATIC_BORDER_COLOR_OPAQUE_BLACK_UINT = ( D3D12_STATIC_BORDER_COLOR_OPAQUE_WHITE + 1 ) , + D3D12_STATIC_BORDER_COLOR_OPAQUE_WHITE_UINT = ( D3D12_STATIC_BORDER_COLOR_OPAQUE_BLACK_UINT + 1 ) } D3D12_STATIC_BORDER_COLOR; typedef struct D3D12_STATIC_SAMPLER_DESC @@ -3755,10 +3828,8 @@ typedef struct D3D12_STATIC_SAMPLER_DESC typedef struct D3D12_ROOT_SIGNATURE_DESC { UINT NumParameters; - /* [annotation] */ _Field_size_full_(NumParameters) const D3D12_ROOT_PARAMETER *pParameters; UINT NumStaticSamplers; - /* [annotation] */ _Field_size_full_(NumStaticSamplers) const D3D12_STATIC_SAMPLER_DESC *pStaticSamplers; D3D12_ROOT_SIGNATURE_FLAGS Flags; } D3D12_ROOT_SIGNATURE_DESC; @@ -3788,7 +3859,6 @@ typedef struct D3D12_DESCRIPTOR_RANGE1 typedef struct D3D12_ROOT_DESCRIPTOR_TABLE1 { UINT NumDescriptorRanges; - /* [annotation] */ _Field_size_full_(NumDescriptorRanges) const D3D12_DESCRIPTOR_RANGE1 *pDescriptorRanges; } D3D12_ROOT_DESCRIPTOR_TABLE1; @@ -3824,10 +3894,8 @@ typedef struct D3D12_ROOT_PARAMETER1 typedef struct D3D12_ROOT_SIGNATURE_DESC1 { UINT NumParameters; - /* [annotation] */ _Field_size_full_(NumParameters) const D3D12_ROOT_PARAMETER1 *pParameters; UINT NumStaticSamplers; - /* [annotation] */ _Field_size_full_(NumStaticSamplers) const D3D12_STATIC_SAMPLER_DESC *pStaticSamplers; D3D12_ROOT_SIGNATURE_FLAGS Flags; } D3D12_ROOT_SIGNATURE_DESC1; @@ -3876,9 +3944,7 @@ EXTERN_C const IID IID_ID3D12RootSignatureDeserializer; DECLSPEC_XFGVIRT(IUnknown, QueryInterface) HRESULT ( STDMETHODCALLTYPE *QueryInterface )( ID3D12RootSignatureDeserializer * This, - /* [annotation][in] */ - _In_ REFIID riid, - /* [annotation][iid_is][out] */ + REFIID riid, _COM_Outptr_ void **ppvObject); DECLSPEC_XFGVIRT(IUnknown, AddRef) @@ -3947,7 +4013,6 @@ EXTERN_C const IID IID_ID3D12VersionedRootSignatureDeserializer; public: virtual HRESULT STDMETHODCALLTYPE GetRootSignatureDescAtVersion( D3D_ROOT_SIGNATURE_VERSION convertToVersion, - /* [annotation] */ _Out_ const D3D12_VERSIONED_ROOT_SIGNATURE_DESC **ppDesc) = 0; virtual const D3D12_VERSIONED_ROOT_SIGNATURE_DESC *STDMETHODCALLTYPE GetUnconvertedRootSignatureDesc( void) = 0; @@ -3964,9 +4029,7 @@ EXTERN_C const IID IID_ID3D12VersionedRootSignatureDeserializer; DECLSPEC_XFGVIRT(IUnknown, QueryInterface) HRESULT ( STDMETHODCALLTYPE *QueryInterface )( ID3D12VersionedRootSignatureDeserializer * This, - /* [annotation][in] */ - _In_ REFIID riid, - /* [annotation][iid_is][out] */ + REFIID riid, _COM_Outptr_ void **ppvObject); DECLSPEC_XFGVIRT(IUnknown, AddRef) @@ -3981,7 +4044,6 @@ EXTERN_C const IID IID_ID3D12VersionedRootSignatureDeserializer; HRESULT ( STDMETHODCALLTYPE *GetRootSignatureDescAtVersion )( ID3D12VersionedRootSignatureDeserializer * This, D3D_ROOT_SIGNATURE_VERSION convertToVersion, - /* [annotation] */ _Out_ const D3D12_VERSIONED_ROOT_SIGNATURE_DESC **ppDesc); DECLSPEC_XFGVIRT(ID3D12VersionedRootSignatureDeserializer, GetUnconvertedRootSignatureDesc) @@ -4092,7 +4154,6 @@ typedef struct D3D12_GPU_DESCRIPTOR_HANDLE typedef struct D3D12_DISCARD_REGION { UINT NumRects; - /* [annotation] */ _In_reads_(NumRects) const D3D12_RECT *pRects; UINT FirstSubresource; UINT NumSubresources; @@ -4273,7 +4334,6 @@ typedef struct D3D12_COMMAND_SIGNATURE_DESC { UINT ByteStride; UINT NumArgumentDescs; - /* [annotation] */ _Field_size_full_(NumArgumentDescs) const D3D12_INDIRECT_ARGUMENT_DESC *pArgumentDescs; UINT NodeMask; } D3D12_COMMAND_SIGNATURE_DESC; @@ -4311,9 +4371,7 @@ EXTERN_C const IID IID_ID3D12Pageable; DECLSPEC_XFGVIRT(IUnknown, QueryInterface) HRESULT ( STDMETHODCALLTYPE *QueryInterface )( ID3D12Pageable * This, - /* [annotation][in] */ - _In_ REFIID riid, - /* [annotation][iid_is][out] */ + REFIID riid, _COM_Outptr_ void **ppvObject); DECLSPEC_XFGVIRT(IUnknown, AddRef) @@ -4327,43 +4385,32 @@ EXTERN_C const IID IID_ID3D12Pageable; DECLSPEC_XFGVIRT(ID3D12Object, GetPrivateData) HRESULT ( STDMETHODCALLTYPE *GetPrivateData )( ID3D12Pageable * This, - /* [annotation] */ _In_ REFGUID guid, - /* [annotation] */ _Inout_ UINT *pDataSize, - /* [annotation] */ _Out_writes_bytes_opt_( *pDataSize ) void *pData); DECLSPEC_XFGVIRT(ID3D12Object, SetPrivateData) HRESULT ( STDMETHODCALLTYPE *SetPrivateData )( ID3D12Pageable * This, - /* [annotation] */ _In_ REFGUID guid, - /* [annotation] */ _In_ UINT DataSize, - /* [annotation] */ _In_reads_bytes_opt_( DataSize ) const void *pData); DECLSPEC_XFGVIRT(ID3D12Object, SetPrivateDataInterface) HRESULT ( STDMETHODCALLTYPE *SetPrivateDataInterface )( ID3D12Pageable * This, - /* [annotation] */ _In_ REFGUID guid, - /* [annotation] */ _In_opt_ const IUnknown *pData); DECLSPEC_XFGVIRT(ID3D12Object, SetName) HRESULT ( STDMETHODCALLTYPE *SetName )( ID3D12Pageable * This, - /* [annotation] */ _In_z_ LPCWSTR Name); DECLSPEC_XFGVIRT(ID3D12DeviceChild, GetDevice) HRESULT ( STDMETHODCALLTYPE *GetDevice )( ID3D12Pageable * This, - /* [annotation][in] */ - _In_ REFIID riid, - /* [annotation][iid_is][out] */ + REFIID riid, _COM_Outptr_opt_ void **ppvDevice); END_INTERFACE @@ -4432,7 +4479,12 @@ EXTERN_C const IID IID_ID3D12Heap; ID3D12Heap : public ID3D12Pageable { public: +#if defined(_MSC_VER) || !defined(_WIN32) virtual D3D12_HEAP_DESC STDMETHODCALLTYPE GetDesc( void) = 0; +#else + virtual D3D12_HEAP_DESC *STDMETHODCALLTYPE GetDesc( + D3D12_HEAP_DESC * RetVal) = 0; +#endif }; @@ -4446,9 +4498,7 @@ EXTERN_C const IID IID_ID3D12Heap; DECLSPEC_XFGVIRT(IUnknown, QueryInterface) HRESULT ( STDMETHODCALLTYPE *QueryInterface )( ID3D12Heap * This, - /* [annotation][in] */ - _In_ REFIID riid, - /* [annotation][iid_is][out] */ + REFIID riid, _COM_Outptr_ void **ppvObject); DECLSPEC_XFGVIRT(IUnknown, AddRef) @@ -4462,49 +4512,46 @@ EXTERN_C const IID IID_ID3D12Heap; DECLSPEC_XFGVIRT(ID3D12Object, GetPrivateData) HRESULT ( STDMETHODCALLTYPE *GetPrivateData )( ID3D12Heap * This, - /* [annotation] */ _In_ REFGUID guid, - /* [annotation] */ _Inout_ UINT *pDataSize, - /* [annotation] */ _Out_writes_bytes_opt_( *pDataSize ) void *pData); DECLSPEC_XFGVIRT(ID3D12Object, SetPrivateData) HRESULT ( STDMETHODCALLTYPE *SetPrivateData )( ID3D12Heap * This, - /* [annotation] */ _In_ REFGUID guid, - /* [annotation] */ _In_ UINT DataSize, - /* [annotation] */ _In_reads_bytes_opt_( DataSize ) const void *pData); DECLSPEC_XFGVIRT(ID3D12Object, SetPrivateDataInterface) HRESULT ( STDMETHODCALLTYPE *SetPrivateDataInterface )( ID3D12Heap * This, - /* [annotation] */ _In_ REFGUID guid, - /* [annotation] */ _In_opt_ const IUnknown *pData); DECLSPEC_XFGVIRT(ID3D12Object, SetName) HRESULT ( STDMETHODCALLTYPE *SetName )( ID3D12Heap * This, - /* [annotation] */ _In_z_ LPCWSTR Name); DECLSPEC_XFGVIRT(ID3D12DeviceChild, GetDevice) HRESULT ( STDMETHODCALLTYPE *GetDevice )( ID3D12Heap * This, - /* [annotation][in] */ - _In_ REFIID riid, - /* [annotation][iid_is][out] */ + REFIID riid, _COM_Outptr_opt_ void **ppvDevice); DECLSPEC_XFGVIRT(ID3D12Heap, GetDesc) +#if !defined(_WIN32) D3D12_HEAP_DESC ( STDMETHODCALLTYPE *GetDesc )( ID3D12Heap * This); +#else + D3D12_HEAP_DESC *( STDMETHODCALLTYPE *GetDesc )( + ID3D12Heap * This, + D3D12_HEAP_DESC * RetVal); + +#endif + END_INTERFACE } ID3D12HeapVtbl; @@ -4545,9 +4592,14 @@ EXTERN_C const IID IID_ID3D12Heap; ( (This)->lpVtbl -> GetDevice(This,riid,ppvDevice) ) +#if !defined(_WIN32) #define ID3D12Heap_GetDesc(This) \ ( (This)->lpVtbl -> GetDesc(This) ) +#else +#define ID3D12Heap_GetDesc(This,RetVal) \ + ( (This)->lpVtbl -> GetDesc(This,RetVal) ) +#endif #endif /* COBJMACROS */ @@ -4556,17 +4608,6 @@ EXTERN_C const IID IID_ID3D12Heap; -D3D12_HEAP_DESC STDMETHODCALLTYPE ID3D12Heap_GetDesc_Proxy( - ID3D12Heap * This); - - -void __RPC_STUB ID3D12Heap_GetDesc_Stub( - IRpcStubBuffer *This, - IRpcChannelBuffer *_pRpcChannelBuffer, - PRPC_MESSAGE _pRpcMessage, - DWORD *_pdwStubPhase); - - #endif /* __ID3D12Heap_INTERFACE_DEFINED__ */ @@ -4588,42 +4629,38 @@ EXTERN_C const IID IID_ID3D12Resource; public: virtual HRESULT STDMETHODCALLTYPE Map( UINT Subresource, - /* [annotation] */ _In_opt_ const D3D12_RANGE *pReadRange, - /* [annotation] */ _Outptr_opt_result_bytebuffer_(_Inexpressible_("Dependent on resource")) void **ppData) = 0; virtual void STDMETHODCALLTYPE Unmap( UINT Subresource, - /* [annotation] */ _In_opt_ const D3D12_RANGE *pWrittenRange) = 0; +#if defined(_MSC_VER) || !defined(_WIN32) virtual D3D12_RESOURCE_DESC STDMETHODCALLTYPE GetDesc( void) = 0; +#else + virtual D3D12_RESOURCE_DESC *STDMETHODCALLTYPE GetDesc( + D3D12_RESOURCE_DESC * RetVal) = 0; +#endif virtual D3D12_GPU_VIRTUAL_ADDRESS STDMETHODCALLTYPE GetGPUVirtualAddress( void) = 0; virtual HRESULT STDMETHODCALLTYPE WriteToSubresource( UINT DstSubresource, - /* [annotation] */ _In_opt_ const D3D12_BOX *pDstBox, - /* [annotation] */ _In_ const void *pSrcData, UINT SrcRowPitch, UINT SrcDepthPitch) = 0; virtual HRESULT STDMETHODCALLTYPE ReadFromSubresource( - /* [annotation] */ _Out_ void *pDstData, UINT DstRowPitch, UINT DstDepthPitch, UINT SrcSubresource, - /* [annotation] */ _In_opt_ const D3D12_BOX *pSrcBox) = 0; virtual HRESULT STDMETHODCALLTYPE GetHeapProperties( - /* [annotation] */ _Out_opt_ D3D12_HEAP_PROPERTIES *pHeapProperties, - /* [annotation] */ _Out_opt_ D3D12_HEAP_FLAGS *pHeapFlags) = 0; }; @@ -4638,9 +4675,7 @@ EXTERN_C const IID IID_ID3D12Resource; DECLSPEC_XFGVIRT(IUnknown, QueryInterface) HRESULT ( STDMETHODCALLTYPE *QueryInterface )( ID3D12Resource * This, - /* [annotation][in] */ - _In_ REFIID riid, - /* [annotation][iid_is][out] */ + REFIID riid, _COM_Outptr_ void **ppvObject); DECLSPEC_XFGVIRT(IUnknown, AddRef) @@ -4654,65 +4689,59 @@ EXTERN_C const IID IID_ID3D12Resource; DECLSPEC_XFGVIRT(ID3D12Object, GetPrivateData) HRESULT ( STDMETHODCALLTYPE *GetPrivateData )( ID3D12Resource * This, - /* [annotation] */ _In_ REFGUID guid, - /* [annotation] */ _Inout_ UINT *pDataSize, - /* [annotation] */ _Out_writes_bytes_opt_( *pDataSize ) void *pData); DECLSPEC_XFGVIRT(ID3D12Object, SetPrivateData) HRESULT ( STDMETHODCALLTYPE *SetPrivateData )( ID3D12Resource * This, - /* [annotation] */ _In_ REFGUID guid, - /* [annotation] */ _In_ UINT DataSize, - /* [annotation] */ _In_reads_bytes_opt_( DataSize ) const void *pData); DECLSPEC_XFGVIRT(ID3D12Object, SetPrivateDataInterface) HRESULT ( STDMETHODCALLTYPE *SetPrivateDataInterface )( ID3D12Resource * This, - /* [annotation] */ _In_ REFGUID guid, - /* [annotation] */ _In_opt_ const IUnknown *pData); DECLSPEC_XFGVIRT(ID3D12Object, SetName) HRESULT ( STDMETHODCALLTYPE *SetName )( ID3D12Resource * This, - /* [annotation] */ _In_z_ LPCWSTR Name); DECLSPEC_XFGVIRT(ID3D12DeviceChild, GetDevice) HRESULT ( STDMETHODCALLTYPE *GetDevice )( ID3D12Resource * This, - /* [annotation][in] */ - _In_ REFIID riid, - /* [annotation][iid_is][out] */ + REFIID riid, _COM_Outptr_opt_ void **ppvDevice); DECLSPEC_XFGVIRT(ID3D12Resource, Map) HRESULT ( STDMETHODCALLTYPE *Map )( ID3D12Resource * This, UINT Subresource, - /* [annotation] */ _In_opt_ const D3D12_RANGE *pReadRange, - /* [annotation] */ _Outptr_opt_result_bytebuffer_(_Inexpressible_("Dependent on resource")) void **ppData); DECLSPEC_XFGVIRT(ID3D12Resource, Unmap) void ( STDMETHODCALLTYPE *Unmap )( ID3D12Resource * This, UINT Subresource, - /* [annotation] */ _In_opt_ const D3D12_RANGE *pWrittenRange); DECLSPEC_XFGVIRT(ID3D12Resource, GetDesc) +#if !defined(_WIN32) D3D12_RESOURCE_DESC ( STDMETHODCALLTYPE *GetDesc )( ID3D12Resource * This); +#else + D3D12_RESOURCE_DESC *( STDMETHODCALLTYPE *GetDesc )( + ID3D12Resource * This, + D3D12_RESOURCE_DESC * RetVal); + +#endif + DECLSPEC_XFGVIRT(ID3D12Resource, GetGPUVirtualAddress) D3D12_GPU_VIRTUAL_ADDRESS ( STDMETHODCALLTYPE *GetGPUVirtualAddress )( ID3D12Resource * This); @@ -4721,9 +4750,7 @@ EXTERN_C const IID IID_ID3D12Resource; HRESULT ( STDMETHODCALLTYPE *WriteToSubresource )( ID3D12Resource * This, UINT DstSubresource, - /* [annotation] */ _In_opt_ const D3D12_BOX *pDstBox, - /* [annotation] */ _In_ const void *pSrcData, UINT SrcRowPitch, UINT SrcDepthPitch); @@ -4731,20 +4758,16 @@ EXTERN_C const IID IID_ID3D12Resource; DECLSPEC_XFGVIRT(ID3D12Resource, ReadFromSubresource) HRESULT ( STDMETHODCALLTYPE *ReadFromSubresource )( ID3D12Resource * This, - /* [annotation] */ _Out_ void *pDstData, UINT DstRowPitch, UINT DstDepthPitch, UINT SrcSubresource, - /* [annotation] */ _In_opt_ const D3D12_BOX *pSrcBox); DECLSPEC_XFGVIRT(ID3D12Resource, GetHeapProperties) HRESULT ( STDMETHODCALLTYPE *GetHeapProperties )( ID3D12Resource * This, - /* [annotation] */ _Out_opt_ D3D12_HEAP_PROPERTIES *pHeapProperties, - /* [annotation] */ _Out_opt_ D3D12_HEAP_FLAGS *pHeapFlags); END_INTERFACE @@ -4793,9 +4816,14 @@ EXTERN_C const IID IID_ID3D12Resource; #define ID3D12Resource_Unmap(This,Subresource,pWrittenRange) \ ( (This)->lpVtbl -> Unmap(This,Subresource,pWrittenRange) ) +#if !defined(_WIN32) #define ID3D12Resource_GetDesc(This) \ ( (This)->lpVtbl -> GetDesc(This) ) +#else +#define ID3D12Resource_GetDesc(This,RetVal) \ + ( (This)->lpVtbl -> GetDesc(This,RetVal) ) +#endif #define ID3D12Resource_GetGPUVirtualAddress(This) \ ( (This)->lpVtbl -> GetGPUVirtualAddress(This) ) @@ -4816,17 +4844,6 @@ EXTERN_C const IID IID_ID3D12Resource; -D3D12_RESOURCE_DESC STDMETHODCALLTYPE ID3D12Resource_GetDesc_Proxy( - ID3D12Resource * This); - - -void __RPC_STUB ID3D12Resource_GetDesc_Stub( - IRpcStubBuffer *This, - IRpcChannelBuffer *_pRpcChannelBuffer, - PRPC_MESSAGE _pRpcMessage, - DWORD *_pdwStubPhase); - - #endif /* __ID3D12Resource_INTERFACE_DEFINED__ */ @@ -4860,9 +4877,7 @@ EXTERN_C const IID IID_ID3D12CommandAllocator; DECLSPEC_XFGVIRT(IUnknown, QueryInterface) HRESULT ( STDMETHODCALLTYPE *QueryInterface )( ID3D12CommandAllocator * This, - /* [annotation][in] */ - _In_ REFIID riid, - /* [annotation][iid_is][out] */ + REFIID riid, _COM_Outptr_ void **ppvObject); DECLSPEC_XFGVIRT(IUnknown, AddRef) @@ -4876,43 +4891,32 @@ EXTERN_C const IID IID_ID3D12CommandAllocator; DECLSPEC_XFGVIRT(ID3D12Object, GetPrivateData) HRESULT ( STDMETHODCALLTYPE *GetPrivateData )( ID3D12CommandAllocator * This, - /* [annotation] */ _In_ REFGUID guid, - /* [annotation] */ _Inout_ UINT *pDataSize, - /* [annotation] */ _Out_writes_bytes_opt_( *pDataSize ) void *pData); DECLSPEC_XFGVIRT(ID3D12Object, SetPrivateData) HRESULT ( STDMETHODCALLTYPE *SetPrivateData )( ID3D12CommandAllocator * This, - /* [annotation] */ _In_ REFGUID guid, - /* [annotation] */ _In_ UINT DataSize, - /* [annotation] */ _In_reads_bytes_opt_( DataSize ) const void *pData); DECLSPEC_XFGVIRT(ID3D12Object, SetPrivateDataInterface) HRESULT ( STDMETHODCALLTYPE *SetPrivateDataInterface )( ID3D12CommandAllocator * This, - /* [annotation] */ _In_ REFGUID guid, - /* [annotation] */ _In_opt_ const IUnknown *pData); DECLSPEC_XFGVIRT(ID3D12Object, SetName) HRESULT ( STDMETHODCALLTYPE *SetName )( ID3D12CommandAllocator * This, - /* [annotation] */ _In_z_ LPCWSTR Name); DECLSPEC_XFGVIRT(ID3D12DeviceChild, GetDevice) HRESULT ( STDMETHODCALLTYPE *GetDevice )( ID3D12CommandAllocator * This, - /* [annotation][in] */ - _In_ REFIID riid, - /* [annotation][iid_is][out] */ + REFIID riid, _COM_Outptr_opt_ void **ppvDevice); DECLSPEC_XFGVIRT(ID3D12CommandAllocator, Reset) @@ -5010,9 +5014,7 @@ EXTERN_C const IID IID_ID3D12Fence; DECLSPEC_XFGVIRT(IUnknown, QueryInterface) HRESULT ( STDMETHODCALLTYPE *QueryInterface )( ID3D12Fence * This, - /* [annotation][in] */ - _In_ REFIID riid, - /* [annotation][iid_is][out] */ + REFIID riid, _COM_Outptr_ void **ppvObject); DECLSPEC_XFGVIRT(IUnknown, AddRef) @@ -5026,43 +5028,32 @@ EXTERN_C const IID IID_ID3D12Fence; DECLSPEC_XFGVIRT(ID3D12Object, GetPrivateData) HRESULT ( STDMETHODCALLTYPE *GetPrivateData )( ID3D12Fence * This, - /* [annotation] */ _In_ REFGUID guid, - /* [annotation] */ _Inout_ UINT *pDataSize, - /* [annotation] */ _Out_writes_bytes_opt_( *pDataSize ) void *pData); DECLSPEC_XFGVIRT(ID3D12Object, SetPrivateData) HRESULT ( STDMETHODCALLTYPE *SetPrivateData )( ID3D12Fence * This, - /* [annotation] */ _In_ REFGUID guid, - /* [annotation] */ _In_ UINT DataSize, - /* [annotation] */ _In_reads_bytes_opt_( DataSize ) const void *pData); DECLSPEC_XFGVIRT(ID3D12Object, SetPrivateDataInterface) HRESULT ( STDMETHODCALLTYPE *SetPrivateDataInterface )( ID3D12Fence * This, - /* [annotation] */ _In_ REFGUID guid, - /* [annotation] */ _In_opt_ const IUnknown *pData); DECLSPEC_XFGVIRT(ID3D12Object, SetName) HRESULT ( STDMETHODCALLTYPE *SetName )( ID3D12Fence * This, - /* [annotation] */ _In_z_ LPCWSTR Name); DECLSPEC_XFGVIRT(ID3D12DeviceChild, GetDevice) HRESULT ( STDMETHODCALLTYPE *GetDevice )( ID3D12Fence * This, - /* [annotation][in] */ - _In_ REFIID riid, - /* [annotation][iid_is][out] */ + REFIID riid, _COM_Outptr_opt_ void **ppvDevice); DECLSPEC_XFGVIRT(ID3D12Fence, GetCompletedValue) @@ -5170,9 +5161,7 @@ EXTERN_C const IID IID_ID3D12Fence1; DECLSPEC_XFGVIRT(IUnknown, QueryInterface) HRESULT ( STDMETHODCALLTYPE *QueryInterface )( ID3D12Fence1 * This, - /* [annotation][in] */ - _In_ REFIID riid, - /* [annotation][iid_is][out] */ + REFIID riid, _COM_Outptr_ void **ppvObject); DECLSPEC_XFGVIRT(IUnknown, AddRef) @@ -5186,43 +5175,32 @@ EXTERN_C const IID IID_ID3D12Fence1; DECLSPEC_XFGVIRT(ID3D12Object, GetPrivateData) HRESULT ( STDMETHODCALLTYPE *GetPrivateData )( ID3D12Fence1 * This, - /* [annotation] */ _In_ REFGUID guid, - /* [annotation] */ _Inout_ UINT *pDataSize, - /* [annotation] */ _Out_writes_bytes_opt_( *pDataSize ) void *pData); DECLSPEC_XFGVIRT(ID3D12Object, SetPrivateData) HRESULT ( STDMETHODCALLTYPE *SetPrivateData )( ID3D12Fence1 * This, - /* [annotation] */ _In_ REFGUID guid, - /* [annotation] */ _In_ UINT DataSize, - /* [annotation] */ _In_reads_bytes_opt_( DataSize ) const void *pData); DECLSPEC_XFGVIRT(ID3D12Object, SetPrivateDataInterface) HRESULT ( STDMETHODCALLTYPE *SetPrivateDataInterface )( ID3D12Fence1 * This, - /* [annotation] */ _In_ REFGUID guid, - /* [annotation] */ _In_opt_ const IUnknown *pData); DECLSPEC_XFGVIRT(ID3D12Object, SetName) HRESULT ( STDMETHODCALLTYPE *SetName )( ID3D12Fence1 * This, - /* [annotation] */ _In_z_ LPCWSTR Name); DECLSPEC_XFGVIRT(ID3D12DeviceChild, GetDevice) HRESULT ( STDMETHODCALLTYPE *GetDevice )( ID3D12Fence1 * This, - /* [annotation][in] */ - _In_ REFIID riid, - /* [annotation][iid_is][out] */ + REFIID riid, _COM_Outptr_opt_ void **ppvDevice); DECLSPEC_XFGVIRT(ID3D12Fence, GetCompletedValue) @@ -5325,7 +5303,6 @@ EXTERN_C const IID IID_ID3D12PipelineState; { public: virtual HRESULT STDMETHODCALLTYPE GetCachedBlob( - /* [annotation] */ _COM_Outptr_ ID3DBlob **ppBlob) = 0; }; @@ -5340,9 +5317,7 @@ EXTERN_C const IID IID_ID3D12PipelineState; DECLSPEC_XFGVIRT(IUnknown, QueryInterface) HRESULT ( STDMETHODCALLTYPE *QueryInterface )( ID3D12PipelineState * This, - /* [annotation][in] */ - _In_ REFIID riid, - /* [annotation][iid_is][out] */ + REFIID riid, _COM_Outptr_ void **ppvObject); DECLSPEC_XFGVIRT(IUnknown, AddRef) @@ -5356,49 +5331,37 @@ EXTERN_C const IID IID_ID3D12PipelineState; DECLSPEC_XFGVIRT(ID3D12Object, GetPrivateData) HRESULT ( STDMETHODCALLTYPE *GetPrivateData )( ID3D12PipelineState * This, - /* [annotation] */ _In_ REFGUID guid, - /* [annotation] */ _Inout_ UINT *pDataSize, - /* [annotation] */ _Out_writes_bytes_opt_( *pDataSize ) void *pData); DECLSPEC_XFGVIRT(ID3D12Object, SetPrivateData) HRESULT ( STDMETHODCALLTYPE *SetPrivateData )( ID3D12PipelineState * This, - /* [annotation] */ _In_ REFGUID guid, - /* [annotation] */ _In_ UINT DataSize, - /* [annotation] */ _In_reads_bytes_opt_( DataSize ) const void *pData); DECLSPEC_XFGVIRT(ID3D12Object, SetPrivateDataInterface) HRESULT ( STDMETHODCALLTYPE *SetPrivateDataInterface )( ID3D12PipelineState * This, - /* [annotation] */ _In_ REFGUID guid, - /* [annotation] */ _In_opt_ const IUnknown *pData); DECLSPEC_XFGVIRT(ID3D12Object, SetName) HRESULT ( STDMETHODCALLTYPE *SetName )( ID3D12PipelineState * This, - /* [annotation] */ _In_z_ LPCWSTR Name); DECLSPEC_XFGVIRT(ID3D12DeviceChild, GetDevice) HRESULT ( STDMETHODCALLTYPE *GetDevice )( ID3D12PipelineState * This, - /* [annotation][in] */ - _In_ REFIID riid, - /* [annotation][iid_is][out] */ + REFIID riid, _COM_Outptr_opt_ void **ppvDevice); DECLSPEC_XFGVIRT(ID3D12PipelineState, GetCachedBlob) HRESULT ( STDMETHODCALLTYPE *GetCachedBlob )( ID3D12PipelineState * This, - /* [annotation] */ _COM_Outptr_ ID3DBlob **ppBlob); END_INTERFACE @@ -5471,11 +5434,26 @@ EXTERN_C const IID IID_ID3D12DescriptorHeap; ID3D12DescriptorHeap : public ID3D12Pageable { public: +#if defined(_MSC_VER) || !defined(_WIN32) virtual D3D12_DESCRIPTOR_HEAP_DESC STDMETHODCALLTYPE GetDesc( void) = 0; +#else + virtual D3D12_DESCRIPTOR_HEAP_DESC *STDMETHODCALLTYPE GetDesc( + D3D12_DESCRIPTOR_HEAP_DESC * RetVal) = 0; +#endif +#if defined(_MSC_VER) || !defined(_WIN32) virtual D3D12_CPU_DESCRIPTOR_HANDLE STDMETHODCALLTYPE GetCPUDescriptorHandleForHeapStart( void) = 0; +#else + virtual D3D12_CPU_DESCRIPTOR_HANDLE *STDMETHODCALLTYPE GetCPUDescriptorHandleForHeapStart( + D3D12_CPU_DESCRIPTOR_HANDLE * RetVal) = 0; +#endif +#if defined(_MSC_VER) || !defined(_WIN32) virtual D3D12_GPU_DESCRIPTOR_HANDLE STDMETHODCALLTYPE GetGPUDescriptorHandleForHeapStart( void) = 0; +#else + virtual D3D12_GPU_DESCRIPTOR_HANDLE *STDMETHODCALLTYPE GetGPUDescriptorHandleForHeapStart( + D3D12_GPU_DESCRIPTOR_HANDLE * RetVal) = 0; +#endif }; @@ -5489,9 +5467,7 @@ EXTERN_C const IID IID_ID3D12DescriptorHeap; DECLSPEC_XFGVIRT(IUnknown, QueryInterface) HRESULT ( STDMETHODCALLTYPE *QueryInterface )( ID3D12DescriptorHeap * This, - /* [annotation][in] */ - _In_ REFIID riid, - /* [annotation][iid_is][out] */ + REFIID riid, _COM_Outptr_ void **ppvObject); DECLSPEC_XFGVIRT(IUnknown, AddRef) @@ -5505,57 +5481,70 @@ EXTERN_C const IID IID_ID3D12DescriptorHeap; DECLSPEC_XFGVIRT(ID3D12Object, GetPrivateData) HRESULT ( STDMETHODCALLTYPE *GetPrivateData )( ID3D12DescriptorHeap * This, - /* [annotation] */ _In_ REFGUID guid, - /* [annotation] */ _Inout_ UINT *pDataSize, - /* [annotation] */ _Out_writes_bytes_opt_( *pDataSize ) void *pData); DECLSPEC_XFGVIRT(ID3D12Object, SetPrivateData) HRESULT ( STDMETHODCALLTYPE *SetPrivateData )( ID3D12DescriptorHeap * This, - /* [annotation] */ _In_ REFGUID guid, - /* [annotation] */ _In_ UINT DataSize, - /* [annotation] */ _In_reads_bytes_opt_( DataSize ) const void *pData); DECLSPEC_XFGVIRT(ID3D12Object, SetPrivateDataInterface) HRESULT ( STDMETHODCALLTYPE *SetPrivateDataInterface )( ID3D12DescriptorHeap * This, - /* [annotation] */ _In_ REFGUID guid, - /* [annotation] */ _In_opt_ const IUnknown *pData); DECLSPEC_XFGVIRT(ID3D12Object, SetName) HRESULT ( STDMETHODCALLTYPE *SetName )( ID3D12DescriptorHeap * This, - /* [annotation] */ _In_z_ LPCWSTR Name); DECLSPEC_XFGVIRT(ID3D12DeviceChild, GetDevice) HRESULT ( STDMETHODCALLTYPE *GetDevice )( ID3D12DescriptorHeap * This, - /* [annotation][in] */ - _In_ REFIID riid, - /* [annotation][iid_is][out] */ + REFIID riid, _COM_Outptr_opt_ void **ppvDevice); DECLSPEC_XFGVIRT(ID3D12DescriptorHeap, GetDesc) +#if !defined(_WIN32) D3D12_DESCRIPTOR_HEAP_DESC ( STDMETHODCALLTYPE *GetDesc )( ID3D12DescriptorHeap * This); +#else + D3D12_DESCRIPTOR_HEAP_DESC *( STDMETHODCALLTYPE *GetDesc )( + ID3D12DescriptorHeap * This, + D3D12_DESCRIPTOR_HEAP_DESC * RetVal); + +#endif + DECLSPEC_XFGVIRT(ID3D12DescriptorHeap, GetCPUDescriptorHandleForHeapStart) +#if !defined(_WIN32) D3D12_CPU_DESCRIPTOR_HANDLE ( STDMETHODCALLTYPE *GetCPUDescriptorHandleForHeapStart )( ID3D12DescriptorHeap * This); +#else + D3D12_CPU_DESCRIPTOR_HANDLE *( STDMETHODCALLTYPE *GetCPUDescriptorHandleForHeapStart )( + ID3D12DescriptorHeap * This, + D3D12_CPU_DESCRIPTOR_HANDLE * RetVal); + +#endif + DECLSPEC_XFGVIRT(ID3D12DescriptorHeap, GetGPUDescriptorHandleForHeapStart) +#if !defined(_WIN32) D3D12_GPU_DESCRIPTOR_HANDLE ( STDMETHODCALLTYPE *GetGPUDescriptorHandleForHeapStart )( ID3D12DescriptorHeap * This); +#else + D3D12_GPU_DESCRIPTOR_HANDLE *( STDMETHODCALLTYPE *GetGPUDescriptorHandleForHeapStart )( + ID3D12DescriptorHeap * This, + D3D12_GPU_DESCRIPTOR_HANDLE * RetVal); + +#endif + END_INTERFACE } ID3D12DescriptorHeapVtbl; @@ -5596,15 +5585,30 @@ EXTERN_C const IID IID_ID3D12DescriptorHeap; ( (This)->lpVtbl -> GetDevice(This,riid,ppvDevice) ) +#if !defined(_WIN32) #define ID3D12DescriptorHeap_GetDesc(This) \ ( (This)->lpVtbl -> GetDesc(This) ) +#else +#define ID3D12DescriptorHeap_GetDesc(This,RetVal) \ + ( (This)->lpVtbl -> GetDesc(This,RetVal) ) +#endif +#if !defined(_WIN32) #define ID3D12DescriptorHeap_GetCPUDescriptorHandleForHeapStart(This) \ ( (This)->lpVtbl -> GetCPUDescriptorHandleForHeapStart(This) ) +#else +#define ID3D12DescriptorHeap_GetCPUDescriptorHandleForHeapStart(This,RetVal) \ + ( (This)->lpVtbl -> GetCPUDescriptorHandleForHeapStart(This,RetVal) ) +#endif +#if !defined(_WIN32) #define ID3D12DescriptorHeap_GetGPUDescriptorHandleForHeapStart(This) \ ( (This)->lpVtbl -> GetGPUDescriptorHandleForHeapStart(This) ) +#else +#define ID3D12DescriptorHeap_GetGPUDescriptorHandleForHeapStart(This,RetVal) \ + ( (This)->lpVtbl -> GetGPUDescriptorHandleForHeapStart(This,RetVal) ) +#endif #endif /* COBJMACROS */ @@ -5613,39 +5617,6 @@ EXTERN_C const IID IID_ID3D12DescriptorHeap; -D3D12_DESCRIPTOR_HEAP_DESC STDMETHODCALLTYPE ID3D12DescriptorHeap_GetDesc_Proxy( - ID3D12DescriptorHeap * This); - - -void __RPC_STUB ID3D12DescriptorHeap_GetDesc_Stub( - IRpcStubBuffer *This, - IRpcChannelBuffer *_pRpcChannelBuffer, - PRPC_MESSAGE _pRpcMessage, - DWORD *_pdwStubPhase); - - -D3D12_CPU_DESCRIPTOR_HANDLE STDMETHODCALLTYPE ID3D12DescriptorHeap_GetCPUDescriptorHandleForHeapStart_Proxy( - ID3D12DescriptorHeap * This); - - -void __RPC_STUB ID3D12DescriptorHeap_GetCPUDescriptorHandleForHeapStart_Stub( - IRpcStubBuffer *This, - IRpcChannelBuffer *_pRpcChannelBuffer, - PRPC_MESSAGE _pRpcMessage, - DWORD *_pdwStubPhase); - - -D3D12_GPU_DESCRIPTOR_HANDLE STDMETHODCALLTYPE ID3D12DescriptorHeap_GetGPUDescriptorHandleForHeapStart_Proxy( - ID3D12DescriptorHeap * This); - - -void __RPC_STUB ID3D12DescriptorHeap_GetGPUDescriptorHandleForHeapStart_Stub( - IRpcStubBuffer *This, - IRpcChannelBuffer *_pRpcChannelBuffer, - PRPC_MESSAGE _pRpcMessage, - DWORD *_pdwStubPhase); - - #endif /* __ID3D12DescriptorHeap_INTERFACE_DEFINED__ */ @@ -5677,9 +5648,7 @@ EXTERN_C const IID IID_ID3D12QueryHeap; DECLSPEC_XFGVIRT(IUnknown, QueryInterface) HRESULT ( STDMETHODCALLTYPE *QueryInterface )( ID3D12QueryHeap * This, - /* [annotation][in] */ - _In_ REFIID riid, - /* [annotation][iid_is][out] */ + REFIID riid, _COM_Outptr_ void **ppvObject); DECLSPEC_XFGVIRT(IUnknown, AddRef) @@ -5693,43 +5662,32 @@ EXTERN_C const IID IID_ID3D12QueryHeap; DECLSPEC_XFGVIRT(ID3D12Object, GetPrivateData) HRESULT ( STDMETHODCALLTYPE *GetPrivateData )( ID3D12QueryHeap * This, - /* [annotation] */ _In_ REFGUID guid, - /* [annotation] */ _Inout_ UINT *pDataSize, - /* [annotation] */ _Out_writes_bytes_opt_( *pDataSize ) void *pData); DECLSPEC_XFGVIRT(ID3D12Object, SetPrivateData) HRESULT ( STDMETHODCALLTYPE *SetPrivateData )( ID3D12QueryHeap * This, - /* [annotation] */ _In_ REFGUID guid, - /* [annotation] */ _In_ UINT DataSize, - /* [annotation] */ _In_reads_bytes_opt_( DataSize ) const void *pData); DECLSPEC_XFGVIRT(ID3D12Object, SetPrivateDataInterface) HRESULT ( STDMETHODCALLTYPE *SetPrivateDataInterface )( ID3D12QueryHeap * This, - /* [annotation] */ _In_ REFGUID guid, - /* [annotation] */ _In_opt_ const IUnknown *pData); DECLSPEC_XFGVIRT(ID3D12Object, SetName) HRESULT ( STDMETHODCALLTYPE *SetName )( ID3D12QueryHeap * This, - /* [annotation] */ _In_z_ LPCWSTR Name); DECLSPEC_XFGVIRT(ID3D12DeviceChild, GetDevice) HRESULT ( STDMETHODCALLTYPE *GetDevice )( ID3D12QueryHeap * This, - /* [annotation][in] */ - _In_ REFIID riid, - /* [annotation][iid_is][out] */ + REFIID riid, _COM_Outptr_opt_ void **ppvDevice); END_INTERFACE @@ -5811,9 +5769,7 @@ EXTERN_C const IID IID_ID3D12CommandSignature; DECLSPEC_XFGVIRT(IUnknown, QueryInterface) HRESULT ( STDMETHODCALLTYPE *QueryInterface )( ID3D12CommandSignature * This, - /* [annotation][in] */ - _In_ REFIID riid, - /* [annotation][iid_is][out] */ + REFIID riid, _COM_Outptr_ void **ppvObject); DECLSPEC_XFGVIRT(IUnknown, AddRef) @@ -5827,43 +5783,32 @@ EXTERN_C const IID IID_ID3D12CommandSignature; DECLSPEC_XFGVIRT(ID3D12Object, GetPrivateData) HRESULT ( STDMETHODCALLTYPE *GetPrivateData )( ID3D12CommandSignature * This, - /* [annotation] */ _In_ REFGUID guid, - /* [annotation] */ _Inout_ UINT *pDataSize, - /* [annotation] */ _Out_writes_bytes_opt_( *pDataSize ) void *pData); DECLSPEC_XFGVIRT(ID3D12Object, SetPrivateData) HRESULT ( STDMETHODCALLTYPE *SetPrivateData )( ID3D12CommandSignature * This, - /* [annotation] */ _In_ REFGUID guid, - /* [annotation] */ _In_ UINT DataSize, - /* [annotation] */ _In_reads_bytes_opt_( DataSize ) const void *pData); DECLSPEC_XFGVIRT(ID3D12Object, SetPrivateDataInterface) HRESULT ( STDMETHODCALLTYPE *SetPrivateDataInterface )( ID3D12CommandSignature * This, - /* [annotation] */ _In_ REFGUID guid, - /* [annotation] */ _In_opt_ const IUnknown *pData); DECLSPEC_XFGVIRT(ID3D12Object, SetName) HRESULT ( STDMETHODCALLTYPE *SetName )( ID3D12CommandSignature * This, - /* [annotation] */ _In_z_ LPCWSTR Name); DECLSPEC_XFGVIRT(ID3D12DeviceChild, GetDevice) HRESULT ( STDMETHODCALLTYPE *GetDevice )( ID3D12CommandSignature * This, - /* [annotation][in] */ - _In_ REFIID riid, - /* [annotation][iid_is][out] */ + REFIID riid, _COM_Outptr_opt_ void **ppvDevice); END_INTERFACE @@ -5947,9 +5892,7 @@ EXTERN_C const IID IID_ID3D12CommandList; DECLSPEC_XFGVIRT(IUnknown, QueryInterface) HRESULT ( STDMETHODCALLTYPE *QueryInterface )( ID3D12CommandList * This, - /* [annotation][in] */ - _In_ REFIID riid, - /* [annotation][iid_is][out] */ + REFIID riid, _COM_Outptr_ void **ppvObject); DECLSPEC_XFGVIRT(IUnknown, AddRef) @@ -5963,43 +5906,32 @@ EXTERN_C const IID IID_ID3D12CommandList; DECLSPEC_XFGVIRT(ID3D12Object, GetPrivateData) HRESULT ( STDMETHODCALLTYPE *GetPrivateData )( ID3D12CommandList * This, - /* [annotation] */ _In_ REFGUID guid, - /* [annotation] */ _Inout_ UINT *pDataSize, - /* [annotation] */ _Out_writes_bytes_opt_( *pDataSize ) void *pData); DECLSPEC_XFGVIRT(ID3D12Object, SetPrivateData) HRESULT ( STDMETHODCALLTYPE *SetPrivateData )( ID3D12CommandList * This, - /* [annotation] */ _In_ REFGUID guid, - /* [annotation] */ _In_ UINT DataSize, - /* [annotation] */ _In_reads_bytes_opt_( DataSize ) const void *pData); DECLSPEC_XFGVIRT(ID3D12Object, SetPrivateDataInterface) HRESULT ( STDMETHODCALLTYPE *SetPrivateDataInterface )( ID3D12CommandList * This, - /* [annotation] */ _In_ REFGUID guid, - /* [annotation] */ _In_opt_ const IUnknown *pData); DECLSPEC_XFGVIRT(ID3D12Object, SetName) HRESULT ( STDMETHODCALLTYPE *SetName )( ID3D12CommandList * This, - /* [annotation] */ _In_z_ LPCWSTR Name); DECLSPEC_XFGVIRT(ID3D12DeviceChild, GetDevice) HRESULT ( STDMETHODCALLTYPE *GetDevice )( ID3D12CommandList * This, - /* [annotation][in] */ - _In_ REFIID riid, - /* [annotation][iid_is][out] */ + REFIID riid, _COM_Outptr_opt_ void **ppvDevice); DECLSPEC_XFGVIRT(ID3D12CommandList, GetType) @@ -6078,383 +6010,249 @@ EXTERN_C const IID IID_ID3D12GraphicsCommandList; virtual HRESULT STDMETHODCALLTYPE Close( void) = 0; virtual HRESULT STDMETHODCALLTYPE Reset( - /* [annotation] */ _In_ ID3D12CommandAllocator *pAllocator, - /* [annotation] */ _In_opt_ ID3D12PipelineState *pInitialState) = 0; virtual void STDMETHODCALLTYPE ClearState( - /* [annotation] */ _In_opt_ ID3D12PipelineState *pPipelineState) = 0; virtual void STDMETHODCALLTYPE DrawInstanced( - /* [annotation] */ _In_ UINT VertexCountPerInstance, - /* [annotation] */ _In_ UINT InstanceCount, - /* [annotation] */ _In_ UINT StartVertexLocation, - /* [annotation] */ _In_ UINT StartInstanceLocation) = 0; virtual void STDMETHODCALLTYPE DrawIndexedInstanced( - /* [annotation] */ _In_ UINT IndexCountPerInstance, - /* [annotation] */ _In_ UINT InstanceCount, - /* [annotation] */ _In_ UINT StartIndexLocation, - /* [annotation] */ _In_ INT BaseVertexLocation, - /* [annotation] */ _In_ UINT StartInstanceLocation) = 0; virtual void STDMETHODCALLTYPE Dispatch( - /* [annotation] */ _In_ UINT ThreadGroupCountX, - /* [annotation] */ _In_ UINT ThreadGroupCountY, - /* [annotation] */ _In_ UINT ThreadGroupCountZ) = 0; virtual void STDMETHODCALLTYPE CopyBufferRegion( - /* [annotation] */ _In_ ID3D12Resource *pDstBuffer, UINT64 DstOffset, - /* [annotation] */ _In_ ID3D12Resource *pSrcBuffer, UINT64 SrcOffset, UINT64 NumBytes) = 0; virtual void STDMETHODCALLTYPE CopyTextureRegion( - /* [annotation] */ _In_ const D3D12_TEXTURE_COPY_LOCATION *pDst, UINT DstX, UINT DstY, UINT DstZ, - /* [annotation] */ _In_ const D3D12_TEXTURE_COPY_LOCATION *pSrc, - /* [annotation] */ _In_opt_ const D3D12_BOX *pSrcBox) = 0; virtual void STDMETHODCALLTYPE CopyResource( - /* [annotation] */ _In_ ID3D12Resource *pDstResource, - /* [annotation] */ _In_ ID3D12Resource *pSrcResource) = 0; virtual void STDMETHODCALLTYPE CopyTiles( - /* [annotation] */ _In_ ID3D12Resource *pTiledResource, - /* [annotation] */ _In_ const D3D12_TILED_RESOURCE_COORDINATE *pTileRegionStartCoordinate, - /* [annotation] */ _In_ const D3D12_TILE_REGION_SIZE *pTileRegionSize, - /* [annotation] */ _In_ ID3D12Resource *pBuffer, UINT64 BufferStartOffsetInBytes, D3D12_TILE_COPY_FLAGS Flags) = 0; virtual void STDMETHODCALLTYPE ResolveSubresource( - /* [annotation] */ _In_ ID3D12Resource *pDstResource, - /* [annotation] */ _In_ UINT DstSubresource, - /* [annotation] */ _In_ ID3D12Resource *pSrcResource, - /* [annotation] */ _In_ UINT SrcSubresource, - /* [annotation] */ _In_ DXGI_FORMAT Format) = 0; virtual void STDMETHODCALLTYPE IASetPrimitiveTopology( - /* [annotation] */ _In_ D3D12_PRIMITIVE_TOPOLOGY PrimitiveTopology) = 0; virtual void STDMETHODCALLTYPE RSSetViewports( - /* [annotation] */ _In_range_(0, D3D12_VIEWPORT_AND_SCISSORRECT_OBJECT_COUNT_PER_PIPELINE) UINT NumViewports, - /* [annotation] */ _In_reads_( NumViewports) const D3D12_VIEWPORT *pViewports) = 0; virtual void STDMETHODCALLTYPE RSSetScissorRects( - /* [annotation] */ _In_range_(0, D3D12_VIEWPORT_AND_SCISSORRECT_OBJECT_COUNT_PER_PIPELINE) UINT NumRects, - /* [annotation] */ _In_reads_( NumRects) const D3D12_RECT *pRects) = 0; virtual void STDMETHODCALLTYPE OMSetBlendFactor( - /* [annotation] */ _In_reads_opt_(4) const FLOAT BlendFactor[ 4 ]) = 0; virtual void STDMETHODCALLTYPE OMSetStencilRef( - /* [annotation] */ _In_ UINT StencilRef) = 0; virtual void STDMETHODCALLTYPE SetPipelineState( - /* [annotation] */ _In_ ID3D12PipelineState *pPipelineState) = 0; virtual void STDMETHODCALLTYPE ResourceBarrier( - /* [annotation] */ _In_ UINT NumBarriers, - /* [annotation] */ _In_reads_(NumBarriers) const D3D12_RESOURCE_BARRIER *pBarriers) = 0; virtual void STDMETHODCALLTYPE ExecuteBundle( - /* [annotation] */ _In_ ID3D12GraphicsCommandList *pCommandList) = 0; virtual void STDMETHODCALLTYPE SetDescriptorHeaps( - /* [annotation] */ _In_ UINT NumDescriptorHeaps, - /* [annotation] */ _In_reads_(NumDescriptorHeaps) ID3D12DescriptorHeap *const *ppDescriptorHeaps) = 0; virtual void STDMETHODCALLTYPE SetComputeRootSignature( - /* [annotation] */ _In_opt_ ID3D12RootSignature *pRootSignature) = 0; virtual void STDMETHODCALLTYPE SetGraphicsRootSignature( - /* [annotation] */ _In_opt_ ID3D12RootSignature *pRootSignature) = 0; virtual void STDMETHODCALLTYPE SetComputeRootDescriptorTable( - /* [annotation] */ _In_ UINT RootParameterIndex, - /* [annotation] */ _In_ D3D12_GPU_DESCRIPTOR_HANDLE BaseDescriptor) = 0; virtual void STDMETHODCALLTYPE SetGraphicsRootDescriptorTable( - /* [annotation] */ _In_ UINT RootParameterIndex, - /* [annotation] */ _In_ D3D12_GPU_DESCRIPTOR_HANDLE BaseDescriptor) = 0; virtual void STDMETHODCALLTYPE SetComputeRoot32BitConstant( - /* [annotation] */ _In_ UINT RootParameterIndex, - /* [annotation] */ _In_ UINT SrcData, - /* [annotation] */ _In_ UINT DestOffsetIn32BitValues) = 0; virtual void STDMETHODCALLTYPE SetGraphicsRoot32BitConstant( - /* [annotation] */ _In_ UINT RootParameterIndex, - /* [annotation] */ _In_ UINT SrcData, - /* [annotation] */ _In_ UINT DestOffsetIn32BitValues) = 0; virtual void STDMETHODCALLTYPE SetComputeRoot32BitConstants( - /* [annotation] */ _In_ UINT RootParameterIndex, - /* [annotation] */ _In_ UINT Num32BitValuesToSet, - /* [annotation] */ _In_reads_(Num32BitValuesToSet*sizeof(UINT)) const void *pSrcData, - /* [annotation] */ _In_ UINT DestOffsetIn32BitValues) = 0; virtual void STDMETHODCALLTYPE SetGraphicsRoot32BitConstants( - /* [annotation] */ _In_ UINT RootParameterIndex, - /* [annotation] */ _In_ UINT Num32BitValuesToSet, - /* [annotation] */ _In_reads_(Num32BitValuesToSet*sizeof(UINT)) const void *pSrcData, - /* [annotation] */ _In_ UINT DestOffsetIn32BitValues) = 0; virtual void STDMETHODCALLTYPE SetComputeRootConstantBufferView( - /* [annotation] */ _In_ UINT RootParameterIndex, - /* [annotation] */ _In_ D3D12_GPU_VIRTUAL_ADDRESS BufferLocation) = 0; virtual void STDMETHODCALLTYPE SetGraphicsRootConstantBufferView( - /* [annotation] */ _In_ UINT RootParameterIndex, - /* [annotation] */ _In_ D3D12_GPU_VIRTUAL_ADDRESS BufferLocation) = 0; virtual void STDMETHODCALLTYPE SetComputeRootShaderResourceView( - /* [annotation] */ _In_ UINT RootParameterIndex, - /* [annotation] */ _In_ D3D12_GPU_VIRTUAL_ADDRESS BufferLocation) = 0; virtual void STDMETHODCALLTYPE SetGraphicsRootShaderResourceView( - /* [annotation] */ _In_ UINT RootParameterIndex, - /* [annotation] */ _In_ D3D12_GPU_VIRTUAL_ADDRESS BufferLocation) = 0; virtual void STDMETHODCALLTYPE SetComputeRootUnorderedAccessView( - /* [annotation] */ _In_ UINT RootParameterIndex, - /* [annotation] */ _In_ D3D12_GPU_VIRTUAL_ADDRESS BufferLocation) = 0; virtual void STDMETHODCALLTYPE SetGraphicsRootUnorderedAccessView( - /* [annotation] */ _In_ UINT RootParameterIndex, - /* [annotation] */ _In_ D3D12_GPU_VIRTUAL_ADDRESS BufferLocation) = 0; virtual void STDMETHODCALLTYPE IASetIndexBuffer( - /* [annotation] */ _In_opt_ const D3D12_INDEX_BUFFER_VIEW *pView) = 0; virtual void STDMETHODCALLTYPE IASetVertexBuffers( - /* [annotation] */ _In_ UINT StartSlot, - /* [annotation] */ _In_ UINT NumViews, - /* [annotation] */ _In_reads_opt_(NumViews) const D3D12_VERTEX_BUFFER_VIEW *pViews) = 0; virtual void STDMETHODCALLTYPE SOSetTargets( - /* [annotation] */ _In_ UINT StartSlot, - /* [annotation] */ _In_ UINT NumViews, - /* [annotation] */ _In_reads_opt_(NumViews) const D3D12_STREAM_OUTPUT_BUFFER_VIEW *pViews) = 0; virtual void STDMETHODCALLTYPE OMSetRenderTargets( - /* [annotation] */ _In_ UINT NumRenderTargetDescriptors, - /* [annotation] */ _In_opt_ const D3D12_CPU_DESCRIPTOR_HANDLE *pRenderTargetDescriptors, - /* [annotation] */ _In_ BOOL RTsSingleHandleToDescriptorRange, - /* [annotation] */ _In_opt_ const D3D12_CPU_DESCRIPTOR_HANDLE *pDepthStencilDescriptor) = 0; virtual void STDMETHODCALLTYPE ClearDepthStencilView( - /* [annotation] */ _In_ D3D12_CPU_DESCRIPTOR_HANDLE DepthStencilView, - /* [annotation] */ _In_ D3D12_CLEAR_FLAGS ClearFlags, - /* [annotation] */ _In_ FLOAT Depth, - /* [annotation] */ _In_ UINT8 Stencil, - /* [annotation] */ _In_ UINT NumRects, - /* [annotation] */ _In_reads_(NumRects) const D3D12_RECT *pRects) = 0; virtual void STDMETHODCALLTYPE ClearRenderTargetView( - /* [annotation] */ _In_ D3D12_CPU_DESCRIPTOR_HANDLE RenderTargetView, - /* [annotation] */ _In_ const FLOAT ColorRGBA[ 4 ], - /* [annotation] */ _In_ UINT NumRects, - /* [annotation] */ _In_reads_(NumRects) const D3D12_RECT *pRects) = 0; virtual void STDMETHODCALLTYPE ClearUnorderedAccessViewUint( - /* [annotation] */ _In_ D3D12_GPU_DESCRIPTOR_HANDLE ViewGPUHandleInCurrentHeap, - /* [annotation] */ _In_ D3D12_CPU_DESCRIPTOR_HANDLE ViewCPUHandle, - /* [annotation] */ _In_ ID3D12Resource *pResource, - /* [annotation] */ _In_ const UINT Values[ 4 ], - /* [annotation] */ _In_ UINT NumRects, - /* [annotation] */ _In_reads_(NumRects) const D3D12_RECT *pRects) = 0; virtual void STDMETHODCALLTYPE ClearUnorderedAccessViewFloat( - /* [annotation] */ _In_ D3D12_GPU_DESCRIPTOR_HANDLE ViewGPUHandleInCurrentHeap, - /* [annotation] */ _In_ D3D12_CPU_DESCRIPTOR_HANDLE ViewCPUHandle, - /* [annotation] */ _In_ ID3D12Resource *pResource, - /* [annotation] */ _In_ const FLOAT Values[ 4 ], - /* [annotation] */ _In_ UINT NumRects, - /* [annotation] */ _In_reads_(NumRects) const D3D12_RECT *pRects) = 0; virtual void STDMETHODCALLTYPE DiscardResource( - /* [annotation] */ _In_ ID3D12Resource *pResource, - /* [annotation] */ _In_opt_ const D3D12_DISCARD_REGION *pRegion) = 0; virtual void STDMETHODCALLTYPE BeginQuery( - /* [annotation] */ _In_ ID3D12QueryHeap *pQueryHeap, - /* [annotation] */ _In_ D3D12_QUERY_TYPE Type, - /* [annotation] */ _In_ UINT Index) = 0; virtual void STDMETHODCALLTYPE EndQuery( - /* [annotation] */ _In_ ID3D12QueryHeap *pQueryHeap, - /* [annotation] */ _In_ D3D12_QUERY_TYPE Type, - /* [annotation] */ _In_ UINT Index) = 0; virtual void STDMETHODCALLTYPE ResolveQueryData( - /* [annotation] */ _In_ ID3D12QueryHeap *pQueryHeap, - /* [annotation] */ _In_ D3D12_QUERY_TYPE Type, - /* [annotation] */ _In_ UINT StartIndex, - /* [annotation] */ _In_ UINT NumQueries, - /* [annotation] */ _In_ ID3D12Resource *pDestinationBuffer, - /* [annotation] */ _In_ UINT64 AlignedDestinationBufferOffset) = 0; virtual void STDMETHODCALLTYPE SetPredication( - /* [annotation] */ _In_opt_ ID3D12Resource *pBuffer, - /* [annotation] */ _In_ UINT64 AlignedBufferOffset, - /* [annotation] */ _In_ D3D12_PREDICATION_OP Operation) = 0; virtual void STDMETHODCALLTYPE SetMarker( UINT Metadata, - /* [annotation] */ _In_reads_bytes_opt_(Size) const void *pData, UINT Size) = 0; virtual void STDMETHODCALLTYPE BeginEvent( UINT Metadata, - /* [annotation] */ _In_reads_bytes_opt_(Size) const void *pData, UINT Size) = 0; virtual void STDMETHODCALLTYPE EndEvent( void) = 0; virtual void STDMETHODCALLTYPE ExecuteIndirect( - /* [annotation] */ _In_ ID3D12CommandSignature *pCommandSignature, - /* [annotation] */ _In_ UINT MaxCommandCount, - /* [annotation] */ _In_ ID3D12Resource *pArgumentBuffer, - /* [annotation] */ _In_ UINT64 ArgumentBufferOffset, - /* [annotation] */ _In_opt_ ID3D12Resource *pCountBuffer, - /* [annotation] */ _In_ UINT64 CountBufferOffset) = 0; }; @@ -6469,9 +6267,7 @@ EXTERN_C const IID IID_ID3D12GraphicsCommandList; DECLSPEC_XFGVIRT(IUnknown, QueryInterface) HRESULT ( STDMETHODCALLTYPE *QueryInterface )( ID3D12GraphicsCommandList * This, - /* [annotation][in] */ - _In_ REFIID riid, - /* [annotation][iid_is][out] */ + REFIID riid, _COM_Outptr_ void **ppvObject); DECLSPEC_XFGVIRT(IUnknown, AddRef) @@ -6485,43 +6281,32 @@ EXTERN_C const IID IID_ID3D12GraphicsCommandList; DECLSPEC_XFGVIRT(ID3D12Object, GetPrivateData) HRESULT ( STDMETHODCALLTYPE *GetPrivateData )( ID3D12GraphicsCommandList * This, - /* [annotation] */ _In_ REFGUID guid, - /* [annotation] */ _Inout_ UINT *pDataSize, - /* [annotation] */ _Out_writes_bytes_opt_( *pDataSize ) void *pData); DECLSPEC_XFGVIRT(ID3D12Object, SetPrivateData) HRESULT ( STDMETHODCALLTYPE *SetPrivateData )( ID3D12GraphicsCommandList * This, - /* [annotation] */ _In_ REFGUID guid, - /* [annotation] */ _In_ UINT DataSize, - /* [annotation] */ _In_reads_bytes_opt_( DataSize ) const void *pData); DECLSPEC_XFGVIRT(ID3D12Object, SetPrivateDataInterface) HRESULT ( STDMETHODCALLTYPE *SetPrivateDataInterface )( ID3D12GraphicsCommandList * This, - /* [annotation] */ _In_ REFGUID guid, - /* [annotation] */ _In_opt_ const IUnknown *pData); DECLSPEC_XFGVIRT(ID3D12Object, SetName) HRESULT ( STDMETHODCALLTYPE *SetName )( ID3D12GraphicsCommandList * This, - /* [annotation] */ _In_z_ LPCWSTR Name); DECLSPEC_XFGVIRT(ID3D12DeviceChild, GetDevice) HRESULT ( STDMETHODCALLTYPE *GetDevice )( ID3D12GraphicsCommandList * This, - /* [annotation][in] */ - _In_ REFIID riid, - /* [annotation][iid_is][out] */ + REFIID riid, _COM_Outptr_opt_ void **ppvDevice); DECLSPEC_XFGVIRT(ID3D12CommandList, GetType) @@ -6535,60 +6320,43 @@ EXTERN_C const IID IID_ID3D12GraphicsCommandList; DECLSPEC_XFGVIRT(ID3D12GraphicsCommandList, Reset) HRESULT ( STDMETHODCALLTYPE *Reset )( ID3D12GraphicsCommandList * This, - /* [annotation] */ _In_ ID3D12CommandAllocator *pAllocator, - /* [annotation] */ _In_opt_ ID3D12PipelineState *pInitialState); DECLSPEC_XFGVIRT(ID3D12GraphicsCommandList, ClearState) void ( STDMETHODCALLTYPE *ClearState )( ID3D12GraphicsCommandList * This, - /* [annotation] */ _In_opt_ ID3D12PipelineState *pPipelineState); DECLSPEC_XFGVIRT(ID3D12GraphicsCommandList, DrawInstanced) void ( STDMETHODCALLTYPE *DrawInstanced )( ID3D12GraphicsCommandList * This, - /* [annotation] */ _In_ UINT VertexCountPerInstance, - /* [annotation] */ _In_ UINT InstanceCount, - /* [annotation] */ _In_ UINT StartVertexLocation, - /* [annotation] */ _In_ UINT StartInstanceLocation); DECLSPEC_XFGVIRT(ID3D12GraphicsCommandList, DrawIndexedInstanced) void ( STDMETHODCALLTYPE *DrawIndexedInstanced )( ID3D12GraphicsCommandList * This, - /* [annotation] */ _In_ UINT IndexCountPerInstance, - /* [annotation] */ _In_ UINT InstanceCount, - /* [annotation] */ _In_ UINT StartIndexLocation, - /* [annotation] */ _In_ INT BaseVertexLocation, - /* [annotation] */ _In_ UINT StartInstanceLocation); DECLSPEC_XFGVIRT(ID3D12GraphicsCommandList, Dispatch) void ( STDMETHODCALLTYPE *Dispatch )( ID3D12GraphicsCommandList * This, - /* [annotation] */ _In_ UINT ThreadGroupCountX, - /* [annotation] */ _In_ UINT ThreadGroupCountY, - /* [annotation] */ _In_ UINT ThreadGroupCountZ); DECLSPEC_XFGVIRT(ID3D12GraphicsCommandList, CopyBufferRegion) void ( STDMETHODCALLTYPE *CopyBufferRegion )( ID3D12GraphicsCommandList * This, - /* [annotation] */ _In_ ID3D12Resource *pDstBuffer, UINT64 DstOffset, - /* [annotation] */ _In_ ID3D12Resource *pSrcBuffer, UINT64 SrcOffset, UINT64 NumBytes); @@ -6596,34 +6364,25 @@ EXTERN_C const IID IID_ID3D12GraphicsCommandList; DECLSPEC_XFGVIRT(ID3D12GraphicsCommandList, CopyTextureRegion) void ( STDMETHODCALLTYPE *CopyTextureRegion )( ID3D12GraphicsCommandList * This, - /* [annotation] */ _In_ const D3D12_TEXTURE_COPY_LOCATION *pDst, UINT DstX, UINT DstY, UINT DstZ, - /* [annotation] */ _In_ const D3D12_TEXTURE_COPY_LOCATION *pSrc, - /* [annotation] */ _In_opt_ const D3D12_BOX *pSrcBox); DECLSPEC_XFGVIRT(ID3D12GraphicsCommandList, CopyResource) void ( STDMETHODCALLTYPE *CopyResource )( ID3D12GraphicsCommandList * This, - /* [annotation] */ _In_ ID3D12Resource *pDstResource, - /* [annotation] */ _In_ ID3D12Resource *pSrcResource); DECLSPEC_XFGVIRT(ID3D12GraphicsCommandList, CopyTiles) void ( STDMETHODCALLTYPE *CopyTiles )( ID3D12GraphicsCommandList * This, - /* [annotation] */ _In_ ID3D12Resource *pTiledResource, - /* [annotation] */ _In_ const D3D12_TILED_RESOURCE_COORDINATE *pTileRegionStartCoordinate, - /* [annotation] */ _In_ const D3D12_TILE_REGION_SIZE *pTileRegionSize, - /* [annotation] */ _In_ ID3D12Resource *pBuffer, UINT64 BufferStartOffsetInBytes, D3D12_TILE_COPY_FLAGS Flags); @@ -6631,356 +6390,255 @@ EXTERN_C const IID IID_ID3D12GraphicsCommandList; DECLSPEC_XFGVIRT(ID3D12GraphicsCommandList, ResolveSubresource) void ( STDMETHODCALLTYPE *ResolveSubresource )( ID3D12GraphicsCommandList * This, - /* [annotation] */ _In_ ID3D12Resource *pDstResource, - /* [annotation] */ _In_ UINT DstSubresource, - /* [annotation] */ _In_ ID3D12Resource *pSrcResource, - /* [annotation] */ _In_ UINT SrcSubresource, - /* [annotation] */ _In_ DXGI_FORMAT Format); DECLSPEC_XFGVIRT(ID3D12GraphicsCommandList, IASetPrimitiveTopology) void ( STDMETHODCALLTYPE *IASetPrimitiveTopology )( ID3D12GraphicsCommandList * This, - /* [annotation] */ _In_ D3D12_PRIMITIVE_TOPOLOGY PrimitiveTopology); DECLSPEC_XFGVIRT(ID3D12GraphicsCommandList, RSSetViewports) void ( STDMETHODCALLTYPE *RSSetViewports )( ID3D12GraphicsCommandList * This, - /* [annotation] */ _In_range_(0, D3D12_VIEWPORT_AND_SCISSORRECT_OBJECT_COUNT_PER_PIPELINE) UINT NumViewports, - /* [annotation] */ _In_reads_( NumViewports) const D3D12_VIEWPORT *pViewports); DECLSPEC_XFGVIRT(ID3D12GraphicsCommandList, RSSetScissorRects) void ( STDMETHODCALLTYPE *RSSetScissorRects )( ID3D12GraphicsCommandList * This, - /* [annotation] */ _In_range_(0, D3D12_VIEWPORT_AND_SCISSORRECT_OBJECT_COUNT_PER_PIPELINE) UINT NumRects, - /* [annotation] */ _In_reads_( NumRects) const D3D12_RECT *pRects); DECLSPEC_XFGVIRT(ID3D12GraphicsCommandList, OMSetBlendFactor) void ( STDMETHODCALLTYPE *OMSetBlendFactor )( ID3D12GraphicsCommandList * This, - /* [annotation] */ _In_reads_opt_(4) const FLOAT BlendFactor[ 4 ]); DECLSPEC_XFGVIRT(ID3D12GraphicsCommandList, OMSetStencilRef) void ( STDMETHODCALLTYPE *OMSetStencilRef )( ID3D12GraphicsCommandList * This, - /* [annotation] */ _In_ UINT StencilRef); DECLSPEC_XFGVIRT(ID3D12GraphicsCommandList, SetPipelineState) void ( STDMETHODCALLTYPE *SetPipelineState )( ID3D12GraphicsCommandList * This, - /* [annotation] */ _In_ ID3D12PipelineState *pPipelineState); DECLSPEC_XFGVIRT(ID3D12GraphicsCommandList, ResourceBarrier) void ( STDMETHODCALLTYPE *ResourceBarrier )( ID3D12GraphicsCommandList * This, - /* [annotation] */ _In_ UINT NumBarriers, - /* [annotation] */ _In_reads_(NumBarriers) const D3D12_RESOURCE_BARRIER *pBarriers); DECLSPEC_XFGVIRT(ID3D12GraphicsCommandList, ExecuteBundle) void ( STDMETHODCALLTYPE *ExecuteBundle )( ID3D12GraphicsCommandList * This, - /* [annotation] */ _In_ ID3D12GraphicsCommandList *pCommandList); DECLSPEC_XFGVIRT(ID3D12GraphicsCommandList, SetDescriptorHeaps) void ( STDMETHODCALLTYPE *SetDescriptorHeaps )( ID3D12GraphicsCommandList * This, - /* [annotation] */ _In_ UINT NumDescriptorHeaps, - /* [annotation] */ _In_reads_(NumDescriptorHeaps) ID3D12DescriptorHeap *const *ppDescriptorHeaps); DECLSPEC_XFGVIRT(ID3D12GraphicsCommandList, SetComputeRootSignature) void ( STDMETHODCALLTYPE *SetComputeRootSignature )( ID3D12GraphicsCommandList * This, - /* [annotation] */ _In_opt_ ID3D12RootSignature *pRootSignature); DECLSPEC_XFGVIRT(ID3D12GraphicsCommandList, SetGraphicsRootSignature) void ( STDMETHODCALLTYPE *SetGraphicsRootSignature )( ID3D12GraphicsCommandList * This, - /* [annotation] */ _In_opt_ ID3D12RootSignature *pRootSignature); DECLSPEC_XFGVIRT(ID3D12GraphicsCommandList, SetComputeRootDescriptorTable) void ( STDMETHODCALLTYPE *SetComputeRootDescriptorTable )( ID3D12GraphicsCommandList * This, - /* [annotation] */ _In_ UINT RootParameterIndex, - /* [annotation] */ _In_ D3D12_GPU_DESCRIPTOR_HANDLE BaseDescriptor); DECLSPEC_XFGVIRT(ID3D12GraphicsCommandList, SetGraphicsRootDescriptorTable) void ( STDMETHODCALLTYPE *SetGraphicsRootDescriptorTable )( ID3D12GraphicsCommandList * This, - /* [annotation] */ _In_ UINT RootParameterIndex, - /* [annotation] */ _In_ D3D12_GPU_DESCRIPTOR_HANDLE BaseDescriptor); DECLSPEC_XFGVIRT(ID3D12GraphicsCommandList, SetComputeRoot32BitConstant) void ( STDMETHODCALLTYPE *SetComputeRoot32BitConstant )( ID3D12GraphicsCommandList * This, - /* [annotation] */ _In_ UINT RootParameterIndex, - /* [annotation] */ _In_ UINT SrcData, - /* [annotation] */ _In_ UINT DestOffsetIn32BitValues); DECLSPEC_XFGVIRT(ID3D12GraphicsCommandList, SetGraphicsRoot32BitConstant) void ( STDMETHODCALLTYPE *SetGraphicsRoot32BitConstant )( ID3D12GraphicsCommandList * This, - /* [annotation] */ _In_ UINT RootParameterIndex, - /* [annotation] */ _In_ UINT SrcData, - /* [annotation] */ _In_ UINT DestOffsetIn32BitValues); DECLSPEC_XFGVIRT(ID3D12GraphicsCommandList, SetComputeRoot32BitConstants) void ( STDMETHODCALLTYPE *SetComputeRoot32BitConstants )( ID3D12GraphicsCommandList * This, - /* [annotation] */ _In_ UINT RootParameterIndex, - /* [annotation] */ _In_ UINT Num32BitValuesToSet, - /* [annotation] */ _In_reads_(Num32BitValuesToSet*sizeof(UINT)) const void *pSrcData, - /* [annotation] */ _In_ UINT DestOffsetIn32BitValues); DECLSPEC_XFGVIRT(ID3D12GraphicsCommandList, SetGraphicsRoot32BitConstants) void ( STDMETHODCALLTYPE *SetGraphicsRoot32BitConstants )( ID3D12GraphicsCommandList * This, - /* [annotation] */ _In_ UINT RootParameterIndex, - /* [annotation] */ _In_ UINT Num32BitValuesToSet, - /* [annotation] */ _In_reads_(Num32BitValuesToSet*sizeof(UINT)) const void *pSrcData, - /* [annotation] */ _In_ UINT DestOffsetIn32BitValues); DECLSPEC_XFGVIRT(ID3D12GraphicsCommandList, SetComputeRootConstantBufferView) void ( STDMETHODCALLTYPE *SetComputeRootConstantBufferView )( ID3D12GraphicsCommandList * This, - /* [annotation] */ _In_ UINT RootParameterIndex, - /* [annotation] */ _In_ D3D12_GPU_VIRTUAL_ADDRESS BufferLocation); DECLSPEC_XFGVIRT(ID3D12GraphicsCommandList, SetGraphicsRootConstantBufferView) void ( STDMETHODCALLTYPE *SetGraphicsRootConstantBufferView )( ID3D12GraphicsCommandList * This, - /* [annotation] */ _In_ UINT RootParameterIndex, - /* [annotation] */ _In_ D3D12_GPU_VIRTUAL_ADDRESS BufferLocation); DECLSPEC_XFGVIRT(ID3D12GraphicsCommandList, SetComputeRootShaderResourceView) void ( STDMETHODCALLTYPE *SetComputeRootShaderResourceView )( ID3D12GraphicsCommandList * This, - /* [annotation] */ _In_ UINT RootParameterIndex, - /* [annotation] */ _In_ D3D12_GPU_VIRTUAL_ADDRESS BufferLocation); DECLSPEC_XFGVIRT(ID3D12GraphicsCommandList, SetGraphicsRootShaderResourceView) void ( STDMETHODCALLTYPE *SetGraphicsRootShaderResourceView )( ID3D12GraphicsCommandList * This, - /* [annotation] */ _In_ UINT RootParameterIndex, - /* [annotation] */ _In_ D3D12_GPU_VIRTUAL_ADDRESS BufferLocation); DECLSPEC_XFGVIRT(ID3D12GraphicsCommandList, SetComputeRootUnorderedAccessView) void ( STDMETHODCALLTYPE *SetComputeRootUnorderedAccessView )( ID3D12GraphicsCommandList * This, - /* [annotation] */ _In_ UINT RootParameterIndex, - /* [annotation] */ _In_ D3D12_GPU_VIRTUAL_ADDRESS BufferLocation); DECLSPEC_XFGVIRT(ID3D12GraphicsCommandList, SetGraphicsRootUnorderedAccessView) void ( STDMETHODCALLTYPE *SetGraphicsRootUnorderedAccessView )( ID3D12GraphicsCommandList * This, - /* [annotation] */ _In_ UINT RootParameterIndex, - /* [annotation] */ _In_ D3D12_GPU_VIRTUAL_ADDRESS BufferLocation); DECLSPEC_XFGVIRT(ID3D12GraphicsCommandList, IASetIndexBuffer) void ( STDMETHODCALLTYPE *IASetIndexBuffer )( ID3D12GraphicsCommandList * This, - /* [annotation] */ _In_opt_ const D3D12_INDEX_BUFFER_VIEW *pView); DECLSPEC_XFGVIRT(ID3D12GraphicsCommandList, IASetVertexBuffers) void ( STDMETHODCALLTYPE *IASetVertexBuffers )( ID3D12GraphicsCommandList * This, - /* [annotation] */ _In_ UINT StartSlot, - /* [annotation] */ _In_ UINT NumViews, - /* [annotation] */ _In_reads_opt_(NumViews) const D3D12_VERTEX_BUFFER_VIEW *pViews); DECLSPEC_XFGVIRT(ID3D12GraphicsCommandList, SOSetTargets) void ( STDMETHODCALLTYPE *SOSetTargets )( ID3D12GraphicsCommandList * This, - /* [annotation] */ _In_ UINT StartSlot, - /* [annotation] */ _In_ UINT NumViews, - /* [annotation] */ _In_reads_opt_(NumViews) const D3D12_STREAM_OUTPUT_BUFFER_VIEW *pViews); DECLSPEC_XFGVIRT(ID3D12GraphicsCommandList, OMSetRenderTargets) void ( STDMETHODCALLTYPE *OMSetRenderTargets )( ID3D12GraphicsCommandList * This, - /* [annotation] */ _In_ UINT NumRenderTargetDescriptors, - /* [annotation] */ _In_opt_ const D3D12_CPU_DESCRIPTOR_HANDLE *pRenderTargetDescriptors, - /* [annotation] */ _In_ BOOL RTsSingleHandleToDescriptorRange, - /* [annotation] */ _In_opt_ const D3D12_CPU_DESCRIPTOR_HANDLE *pDepthStencilDescriptor); DECLSPEC_XFGVIRT(ID3D12GraphicsCommandList, ClearDepthStencilView) void ( STDMETHODCALLTYPE *ClearDepthStencilView )( ID3D12GraphicsCommandList * This, - /* [annotation] */ _In_ D3D12_CPU_DESCRIPTOR_HANDLE DepthStencilView, - /* [annotation] */ _In_ D3D12_CLEAR_FLAGS ClearFlags, - /* [annotation] */ _In_ FLOAT Depth, - /* [annotation] */ _In_ UINT8 Stencil, - /* [annotation] */ _In_ UINT NumRects, - /* [annotation] */ _In_reads_(NumRects) const D3D12_RECT *pRects); DECLSPEC_XFGVIRT(ID3D12GraphicsCommandList, ClearRenderTargetView) void ( STDMETHODCALLTYPE *ClearRenderTargetView )( ID3D12GraphicsCommandList * This, - /* [annotation] */ _In_ D3D12_CPU_DESCRIPTOR_HANDLE RenderTargetView, - /* [annotation] */ _In_ const FLOAT ColorRGBA[ 4 ], - /* [annotation] */ _In_ UINT NumRects, - /* [annotation] */ _In_reads_(NumRects) const D3D12_RECT *pRects); DECLSPEC_XFGVIRT(ID3D12GraphicsCommandList, ClearUnorderedAccessViewUint) void ( STDMETHODCALLTYPE *ClearUnorderedAccessViewUint )( ID3D12GraphicsCommandList * This, - /* [annotation] */ _In_ D3D12_GPU_DESCRIPTOR_HANDLE ViewGPUHandleInCurrentHeap, - /* [annotation] */ _In_ D3D12_CPU_DESCRIPTOR_HANDLE ViewCPUHandle, - /* [annotation] */ _In_ ID3D12Resource *pResource, - /* [annotation] */ _In_ const UINT Values[ 4 ], - /* [annotation] */ _In_ UINT NumRects, - /* [annotation] */ _In_reads_(NumRects) const D3D12_RECT *pRects); DECLSPEC_XFGVIRT(ID3D12GraphicsCommandList, ClearUnorderedAccessViewFloat) void ( STDMETHODCALLTYPE *ClearUnorderedAccessViewFloat )( ID3D12GraphicsCommandList * This, - /* [annotation] */ _In_ D3D12_GPU_DESCRIPTOR_HANDLE ViewGPUHandleInCurrentHeap, - /* [annotation] */ _In_ D3D12_CPU_DESCRIPTOR_HANDLE ViewCPUHandle, - /* [annotation] */ _In_ ID3D12Resource *pResource, - /* [annotation] */ _In_ const FLOAT Values[ 4 ], - /* [annotation] */ _In_ UINT NumRects, - /* [annotation] */ _In_reads_(NumRects) const D3D12_RECT *pRects); DECLSPEC_XFGVIRT(ID3D12GraphicsCommandList, DiscardResource) void ( STDMETHODCALLTYPE *DiscardResource )( ID3D12GraphicsCommandList * This, - /* [annotation] */ _In_ ID3D12Resource *pResource, - /* [annotation] */ _In_opt_ const D3D12_DISCARD_REGION *pRegion); DECLSPEC_XFGVIRT(ID3D12GraphicsCommandList, BeginQuery) void ( STDMETHODCALLTYPE *BeginQuery )( ID3D12GraphicsCommandList * This, - /* [annotation] */ _In_ ID3D12QueryHeap *pQueryHeap, - /* [annotation] */ _In_ D3D12_QUERY_TYPE Type, - /* [annotation] */ _In_ UINT Index); DECLSPEC_XFGVIRT(ID3D12GraphicsCommandList, EndQuery) void ( STDMETHODCALLTYPE *EndQuery )( ID3D12GraphicsCommandList * This, - /* [annotation] */ _In_ ID3D12QueryHeap *pQueryHeap, - /* [annotation] */ _In_ D3D12_QUERY_TYPE Type, - /* [annotation] */ _In_ UINT Index); DECLSPEC_XFGVIRT(ID3D12GraphicsCommandList, ResolveQueryData) void ( STDMETHODCALLTYPE *ResolveQueryData )( ID3D12GraphicsCommandList * This, - /* [annotation] */ _In_ ID3D12QueryHeap *pQueryHeap, - /* [annotation] */ _In_ D3D12_QUERY_TYPE Type, - /* [annotation] */ _In_ UINT StartIndex, - /* [annotation] */ _In_ UINT NumQueries, - /* [annotation] */ _In_ ID3D12Resource *pDestinationBuffer, - /* [annotation] */ _In_ UINT64 AlignedDestinationBufferOffset); DECLSPEC_XFGVIRT(ID3D12GraphicsCommandList, SetPredication) void ( STDMETHODCALLTYPE *SetPredication )( ID3D12GraphicsCommandList * This, - /* [annotation] */ _In_opt_ ID3D12Resource *pBuffer, - /* [annotation] */ _In_ UINT64 AlignedBufferOffset, - /* [annotation] */ _In_ D3D12_PREDICATION_OP Operation); DECLSPEC_XFGVIRT(ID3D12GraphicsCommandList, SetMarker) void ( STDMETHODCALLTYPE *SetMarker )( ID3D12GraphicsCommandList * This, UINT Metadata, - /* [annotation] */ _In_reads_bytes_opt_(Size) const void *pData, UINT Size); @@ -6988,7 +6646,6 @@ EXTERN_C const IID IID_ID3D12GraphicsCommandList; void ( STDMETHODCALLTYPE *BeginEvent )( ID3D12GraphicsCommandList * This, UINT Metadata, - /* [annotation] */ _In_reads_bytes_opt_(Size) const void *pData, UINT Size); @@ -6999,17 +6656,11 @@ EXTERN_C const IID IID_ID3D12GraphicsCommandList; DECLSPEC_XFGVIRT(ID3D12GraphicsCommandList, ExecuteIndirect) void ( STDMETHODCALLTYPE *ExecuteIndirect )( ID3D12GraphicsCommandList * This, - /* [annotation] */ _In_ ID3D12CommandSignature *pCommandSignature, - /* [annotation] */ _In_ UINT MaxCommandCount, - /* [annotation] */ _In_ ID3D12Resource *pArgumentBuffer, - /* [annotation] */ _In_ UINT64 ArgumentBufferOffset, - /* [annotation] */ _In_opt_ ID3D12Resource *pCountBuffer, - /* [annotation] */ _In_ UINT64 CountBufferOffset); END_INTERFACE @@ -7236,67 +6887,44 @@ EXTERN_C const IID IID_ID3D12GraphicsCommandList1; { public: virtual void STDMETHODCALLTYPE AtomicCopyBufferUINT( - /* [annotation] */ _In_ ID3D12Resource *pDstBuffer, UINT64 DstOffset, - /* [annotation] */ _In_ ID3D12Resource *pSrcBuffer, UINT64 SrcOffset, UINT Dependencies, - /* [annotation] */ _In_reads_(Dependencies) ID3D12Resource *const *ppDependentResources, - /* [annotation] */ _In_reads_(Dependencies) const D3D12_SUBRESOURCE_RANGE_UINT64 *pDependentSubresourceRanges) = 0; virtual void STDMETHODCALLTYPE AtomicCopyBufferUINT64( - /* [annotation] */ _In_ ID3D12Resource *pDstBuffer, UINT64 DstOffset, - /* [annotation] */ _In_ ID3D12Resource *pSrcBuffer, UINT64 SrcOffset, UINT Dependencies, - /* [annotation] */ _In_reads_(Dependencies) ID3D12Resource *const *ppDependentResources, - /* [annotation] */ _In_reads_(Dependencies) const D3D12_SUBRESOURCE_RANGE_UINT64 *pDependentSubresourceRanges) = 0; virtual void STDMETHODCALLTYPE OMSetDepthBounds( - /* [annotation] */ _In_ FLOAT Min, - /* [annotation] */ _In_ FLOAT Max) = 0; virtual void STDMETHODCALLTYPE SetSamplePositions( - /* [annotation] */ _In_ UINT NumSamplesPerPixel, - /* [annotation] */ _In_ UINT NumPixels, - /* [annotation] */ _In_reads_(NumSamplesPerPixel*NumPixels) D3D12_SAMPLE_POSITION *pSamplePositions) = 0; virtual void STDMETHODCALLTYPE ResolveSubresourceRegion( - /* [annotation] */ _In_ ID3D12Resource *pDstResource, - /* [annotation] */ _In_ UINT DstSubresource, - /* [annotation] */ _In_ UINT DstX, - /* [annotation] */ _In_ UINT DstY, - /* [annotation] */ _In_ ID3D12Resource *pSrcResource, - /* [annotation] */ _In_ UINT SrcSubresource, - /* [annotation] */ _In_opt_ D3D12_RECT *pSrcRect, - /* [annotation] */ _In_ DXGI_FORMAT Format, - /* [annotation] */ _In_ D3D12_RESOLVE_MODE ResolveMode) = 0; virtual void STDMETHODCALLTYPE SetViewInstanceMask( - /* [annotation] */ _In_ UINT Mask) = 0; }; @@ -7311,9 +6939,7 @@ EXTERN_C const IID IID_ID3D12GraphicsCommandList1; DECLSPEC_XFGVIRT(IUnknown, QueryInterface) HRESULT ( STDMETHODCALLTYPE *QueryInterface )( ID3D12GraphicsCommandList1 * This, - /* [annotation][in] */ - _In_ REFIID riid, - /* [annotation][iid_is][out] */ + REFIID riid, _COM_Outptr_ void **ppvObject); DECLSPEC_XFGVIRT(IUnknown, AddRef) @@ -7327,43 +6953,32 @@ EXTERN_C const IID IID_ID3D12GraphicsCommandList1; DECLSPEC_XFGVIRT(ID3D12Object, GetPrivateData) HRESULT ( STDMETHODCALLTYPE *GetPrivateData )( ID3D12GraphicsCommandList1 * This, - /* [annotation] */ _In_ REFGUID guid, - /* [annotation] */ _Inout_ UINT *pDataSize, - /* [annotation] */ _Out_writes_bytes_opt_( *pDataSize ) void *pData); DECLSPEC_XFGVIRT(ID3D12Object, SetPrivateData) HRESULT ( STDMETHODCALLTYPE *SetPrivateData )( ID3D12GraphicsCommandList1 * This, - /* [annotation] */ _In_ REFGUID guid, - /* [annotation] */ _In_ UINT DataSize, - /* [annotation] */ _In_reads_bytes_opt_( DataSize ) const void *pData); DECLSPEC_XFGVIRT(ID3D12Object, SetPrivateDataInterface) HRESULT ( STDMETHODCALLTYPE *SetPrivateDataInterface )( ID3D12GraphicsCommandList1 * This, - /* [annotation] */ _In_ REFGUID guid, - /* [annotation] */ _In_opt_ const IUnknown *pData); DECLSPEC_XFGVIRT(ID3D12Object, SetName) HRESULT ( STDMETHODCALLTYPE *SetName )( ID3D12GraphicsCommandList1 * This, - /* [annotation] */ _In_z_ LPCWSTR Name); DECLSPEC_XFGVIRT(ID3D12DeviceChild, GetDevice) HRESULT ( STDMETHODCALLTYPE *GetDevice )( ID3D12GraphicsCommandList1 * This, - /* [annotation][in] */ - _In_ REFIID riid, - /* [annotation][iid_is][out] */ + REFIID riid, _COM_Outptr_opt_ void **ppvDevice); DECLSPEC_XFGVIRT(ID3D12CommandList, GetType) @@ -7377,60 +6992,43 @@ EXTERN_C const IID IID_ID3D12GraphicsCommandList1; DECLSPEC_XFGVIRT(ID3D12GraphicsCommandList, Reset) HRESULT ( STDMETHODCALLTYPE *Reset )( ID3D12GraphicsCommandList1 * This, - /* [annotation] */ _In_ ID3D12CommandAllocator *pAllocator, - /* [annotation] */ _In_opt_ ID3D12PipelineState *pInitialState); DECLSPEC_XFGVIRT(ID3D12GraphicsCommandList, ClearState) void ( STDMETHODCALLTYPE *ClearState )( ID3D12GraphicsCommandList1 * This, - /* [annotation] */ _In_opt_ ID3D12PipelineState *pPipelineState); DECLSPEC_XFGVIRT(ID3D12GraphicsCommandList, DrawInstanced) void ( STDMETHODCALLTYPE *DrawInstanced )( ID3D12GraphicsCommandList1 * This, - /* [annotation] */ _In_ UINT VertexCountPerInstance, - /* [annotation] */ _In_ UINT InstanceCount, - /* [annotation] */ _In_ UINT StartVertexLocation, - /* [annotation] */ _In_ UINT StartInstanceLocation); DECLSPEC_XFGVIRT(ID3D12GraphicsCommandList, DrawIndexedInstanced) void ( STDMETHODCALLTYPE *DrawIndexedInstanced )( ID3D12GraphicsCommandList1 * This, - /* [annotation] */ _In_ UINT IndexCountPerInstance, - /* [annotation] */ _In_ UINT InstanceCount, - /* [annotation] */ _In_ UINT StartIndexLocation, - /* [annotation] */ _In_ INT BaseVertexLocation, - /* [annotation] */ _In_ UINT StartInstanceLocation); DECLSPEC_XFGVIRT(ID3D12GraphicsCommandList, Dispatch) void ( STDMETHODCALLTYPE *Dispatch )( ID3D12GraphicsCommandList1 * This, - /* [annotation] */ _In_ UINT ThreadGroupCountX, - /* [annotation] */ _In_ UINT ThreadGroupCountY, - /* [annotation] */ _In_ UINT ThreadGroupCountZ); DECLSPEC_XFGVIRT(ID3D12GraphicsCommandList, CopyBufferRegion) void ( STDMETHODCALLTYPE *CopyBufferRegion )( ID3D12GraphicsCommandList1 * This, - /* [annotation] */ _In_ ID3D12Resource *pDstBuffer, UINT64 DstOffset, - /* [annotation] */ _In_ ID3D12Resource *pSrcBuffer, UINT64 SrcOffset, UINT64 NumBytes); @@ -7438,34 +7036,25 @@ EXTERN_C const IID IID_ID3D12GraphicsCommandList1; DECLSPEC_XFGVIRT(ID3D12GraphicsCommandList, CopyTextureRegion) void ( STDMETHODCALLTYPE *CopyTextureRegion )( ID3D12GraphicsCommandList1 * This, - /* [annotation] */ _In_ const D3D12_TEXTURE_COPY_LOCATION *pDst, UINT DstX, UINT DstY, UINT DstZ, - /* [annotation] */ _In_ const D3D12_TEXTURE_COPY_LOCATION *pSrc, - /* [annotation] */ _In_opt_ const D3D12_BOX *pSrcBox); DECLSPEC_XFGVIRT(ID3D12GraphicsCommandList, CopyResource) void ( STDMETHODCALLTYPE *CopyResource )( ID3D12GraphicsCommandList1 * This, - /* [annotation] */ _In_ ID3D12Resource *pDstResource, - /* [annotation] */ _In_ ID3D12Resource *pSrcResource); DECLSPEC_XFGVIRT(ID3D12GraphicsCommandList, CopyTiles) void ( STDMETHODCALLTYPE *CopyTiles )( ID3D12GraphicsCommandList1 * This, - /* [annotation] */ _In_ ID3D12Resource *pTiledResource, - /* [annotation] */ _In_ const D3D12_TILED_RESOURCE_COORDINATE *pTileRegionStartCoordinate, - /* [annotation] */ _In_ const D3D12_TILE_REGION_SIZE *pTileRegionSize, - /* [annotation] */ _In_ ID3D12Resource *pBuffer, UINT64 BufferStartOffsetInBytes, D3D12_TILE_COPY_FLAGS Flags); @@ -7473,356 +7062,255 @@ EXTERN_C const IID IID_ID3D12GraphicsCommandList1; DECLSPEC_XFGVIRT(ID3D12GraphicsCommandList, ResolveSubresource) void ( STDMETHODCALLTYPE *ResolveSubresource )( ID3D12GraphicsCommandList1 * This, - /* [annotation] */ _In_ ID3D12Resource *pDstResource, - /* [annotation] */ _In_ UINT DstSubresource, - /* [annotation] */ _In_ ID3D12Resource *pSrcResource, - /* [annotation] */ _In_ UINT SrcSubresource, - /* [annotation] */ _In_ DXGI_FORMAT Format); DECLSPEC_XFGVIRT(ID3D12GraphicsCommandList, IASetPrimitiveTopology) void ( STDMETHODCALLTYPE *IASetPrimitiveTopology )( ID3D12GraphicsCommandList1 * This, - /* [annotation] */ _In_ D3D12_PRIMITIVE_TOPOLOGY PrimitiveTopology); DECLSPEC_XFGVIRT(ID3D12GraphicsCommandList, RSSetViewports) void ( STDMETHODCALLTYPE *RSSetViewports )( ID3D12GraphicsCommandList1 * This, - /* [annotation] */ _In_range_(0, D3D12_VIEWPORT_AND_SCISSORRECT_OBJECT_COUNT_PER_PIPELINE) UINT NumViewports, - /* [annotation] */ _In_reads_( NumViewports) const D3D12_VIEWPORT *pViewports); DECLSPEC_XFGVIRT(ID3D12GraphicsCommandList, RSSetScissorRects) void ( STDMETHODCALLTYPE *RSSetScissorRects )( ID3D12GraphicsCommandList1 * This, - /* [annotation] */ _In_range_(0, D3D12_VIEWPORT_AND_SCISSORRECT_OBJECT_COUNT_PER_PIPELINE) UINT NumRects, - /* [annotation] */ _In_reads_( NumRects) const D3D12_RECT *pRects); DECLSPEC_XFGVIRT(ID3D12GraphicsCommandList, OMSetBlendFactor) void ( STDMETHODCALLTYPE *OMSetBlendFactor )( ID3D12GraphicsCommandList1 * This, - /* [annotation] */ _In_reads_opt_(4) const FLOAT BlendFactor[ 4 ]); DECLSPEC_XFGVIRT(ID3D12GraphicsCommandList, OMSetStencilRef) void ( STDMETHODCALLTYPE *OMSetStencilRef )( ID3D12GraphicsCommandList1 * This, - /* [annotation] */ _In_ UINT StencilRef); DECLSPEC_XFGVIRT(ID3D12GraphicsCommandList, SetPipelineState) void ( STDMETHODCALLTYPE *SetPipelineState )( ID3D12GraphicsCommandList1 * This, - /* [annotation] */ _In_ ID3D12PipelineState *pPipelineState); DECLSPEC_XFGVIRT(ID3D12GraphicsCommandList, ResourceBarrier) void ( STDMETHODCALLTYPE *ResourceBarrier )( ID3D12GraphicsCommandList1 * This, - /* [annotation] */ _In_ UINT NumBarriers, - /* [annotation] */ _In_reads_(NumBarriers) const D3D12_RESOURCE_BARRIER *pBarriers); DECLSPEC_XFGVIRT(ID3D12GraphicsCommandList, ExecuteBundle) void ( STDMETHODCALLTYPE *ExecuteBundle )( ID3D12GraphicsCommandList1 * This, - /* [annotation] */ _In_ ID3D12GraphicsCommandList *pCommandList); DECLSPEC_XFGVIRT(ID3D12GraphicsCommandList, SetDescriptorHeaps) void ( STDMETHODCALLTYPE *SetDescriptorHeaps )( ID3D12GraphicsCommandList1 * This, - /* [annotation] */ _In_ UINT NumDescriptorHeaps, - /* [annotation] */ _In_reads_(NumDescriptorHeaps) ID3D12DescriptorHeap *const *ppDescriptorHeaps); DECLSPEC_XFGVIRT(ID3D12GraphicsCommandList, SetComputeRootSignature) void ( STDMETHODCALLTYPE *SetComputeRootSignature )( ID3D12GraphicsCommandList1 * This, - /* [annotation] */ _In_opt_ ID3D12RootSignature *pRootSignature); DECLSPEC_XFGVIRT(ID3D12GraphicsCommandList, SetGraphicsRootSignature) void ( STDMETHODCALLTYPE *SetGraphicsRootSignature )( ID3D12GraphicsCommandList1 * This, - /* [annotation] */ _In_opt_ ID3D12RootSignature *pRootSignature); DECLSPEC_XFGVIRT(ID3D12GraphicsCommandList, SetComputeRootDescriptorTable) void ( STDMETHODCALLTYPE *SetComputeRootDescriptorTable )( ID3D12GraphicsCommandList1 * This, - /* [annotation] */ _In_ UINT RootParameterIndex, - /* [annotation] */ _In_ D3D12_GPU_DESCRIPTOR_HANDLE BaseDescriptor); DECLSPEC_XFGVIRT(ID3D12GraphicsCommandList, SetGraphicsRootDescriptorTable) void ( STDMETHODCALLTYPE *SetGraphicsRootDescriptorTable )( ID3D12GraphicsCommandList1 * This, - /* [annotation] */ _In_ UINT RootParameterIndex, - /* [annotation] */ _In_ D3D12_GPU_DESCRIPTOR_HANDLE BaseDescriptor); DECLSPEC_XFGVIRT(ID3D12GraphicsCommandList, SetComputeRoot32BitConstant) void ( STDMETHODCALLTYPE *SetComputeRoot32BitConstant )( ID3D12GraphicsCommandList1 * This, - /* [annotation] */ _In_ UINT RootParameterIndex, - /* [annotation] */ _In_ UINT SrcData, - /* [annotation] */ _In_ UINT DestOffsetIn32BitValues); DECLSPEC_XFGVIRT(ID3D12GraphicsCommandList, SetGraphicsRoot32BitConstant) void ( STDMETHODCALLTYPE *SetGraphicsRoot32BitConstant )( ID3D12GraphicsCommandList1 * This, - /* [annotation] */ _In_ UINT RootParameterIndex, - /* [annotation] */ _In_ UINT SrcData, - /* [annotation] */ _In_ UINT DestOffsetIn32BitValues); DECLSPEC_XFGVIRT(ID3D12GraphicsCommandList, SetComputeRoot32BitConstants) void ( STDMETHODCALLTYPE *SetComputeRoot32BitConstants )( ID3D12GraphicsCommandList1 * This, - /* [annotation] */ _In_ UINT RootParameterIndex, - /* [annotation] */ _In_ UINT Num32BitValuesToSet, - /* [annotation] */ _In_reads_(Num32BitValuesToSet*sizeof(UINT)) const void *pSrcData, - /* [annotation] */ _In_ UINT DestOffsetIn32BitValues); DECLSPEC_XFGVIRT(ID3D12GraphicsCommandList, SetGraphicsRoot32BitConstants) void ( STDMETHODCALLTYPE *SetGraphicsRoot32BitConstants )( ID3D12GraphicsCommandList1 * This, - /* [annotation] */ _In_ UINT RootParameterIndex, - /* [annotation] */ _In_ UINT Num32BitValuesToSet, - /* [annotation] */ _In_reads_(Num32BitValuesToSet*sizeof(UINT)) const void *pSrcData, - /* [annotation] */ _In_ UINT DestOffsetIn32BitValues); DECLSPEC_XFGVIRT(ID3D12GraphicsCommandList, SetComputeRootConstantBufferView) void ( STDMETHODCALLTYPE *SetComputeRootConstantBufferView )( ID3D12GraphicsCommandList1 * This, - /* [annotation] */ _In_ UINT RootParameterIndex, - /* [annotation] */ _In_ D3D12_GPU_VIRTUAL_ADDRESS BufferLocation); DECLSPEC_XFGVIRT(ID3D12GraphicsCommandList, SetGraphicsRootConstantBufferView) void ( STDMETHODCALLTYPE *SetGraphicsRootConstantBufferView )( ID3D12GraphicsCommandList1 * This, - /* [annotation] */ _In_ UINT RootParameterIndex, - /* [annotation] */ _In_ D3D12_GPU_VIRTUAL_ADDRESS BufferLocation); DECLSPEC_XFGVIRT(ID3D12GraphicsCommandList, SetComputeRootShaderResourceView) void ( STDMETHODCALLTYPE *SetComputeRootShaderResourceView )( ID3D12GraphicsCommandList1 * This, - /* [annotation] */ _In_ UINT RootParameterIndex, - /* [annotation] */ _In_ D3D12_GPU_VIRTUAL_ADDRESS BufferLocation); DECLSPEC_XFGVIRT(ID3D12GraphicsCommandList, SetGraphicsRootShaderResourceView) void ( STDMETHODCALLTYPE *SetGraphicsRootShaderResourceView )( ID3D12GraphicsCommandList1 * This, - /* [annotation] */ _In_ UINT RootParameterIndex, - /* [annotation] */ _In_ D3D12_GPU_VIRTUAL_ADDRESS BufferLocation); DECLSPEC_XFGVIRT(ID3D12GraphicsCommandList, SetComputeRootUnorderedAccessView) void ( STDMETHODCALLTYPE *SetComputeRootUnorderedAccessView )( ID3D12GraphicsCommandList1 * This, - /* [annotation] */ _In_ UINT RootParameterIndex, - /* [annotation] */ _In_ D3D12_GPU_VIRTUAL_ADDRESS BufferLocation); DECLSPEC_XFGVIRT(ID3D12GraphicsCommandList, SetGraphicsRootUnorderedAccessView) void ( STDMETHODCALLTYPE *SetGraphicsRootUnorderedAccessView )( ID3D12GraphicsCommandList1 * This, - /* [annotation] */ _In_ UINT RootParameterIndex, - /* [annotation] */ _In_ D3D12_GPU_VIRTUAL_ADDRESS BufferLocation); DECLSPEC_XFGVIRT(ID3D12GraphicsCommandList, IASetIndexBuffer) void ( STDMETHODCALLTYPE *IASetIndexBuffer )( ID3D12GraphicsCommandList1 * This, - /* [annotation] */ _In_opt_ const D3D12_INDEX_BUFFER_VIEW *pView); DECLSPEC_XFGVIRT(ID3D12GraphicsCommandList, IASetVertexBuffers) void ( STDMETHODCALLTYPE *IASetVertexBuffers )( ID3D12GraphicsCommandList1 * This, - /* [annotation] */ _In_ UINT StartSlot, - /* [annotation] */ _In_ UINT NumViews, - /* [annotation] */ _In_reads_opt_(NumViews) const D3D12_VERTEX_BUFFER_VIEW *pViews); DECLSPEC_XFGVIRT(ID3D12GraphicsCommandList, SOSetTargets) void ( STDMETHODCALLTYPE *SOSetTargets )( ID3D12GraphicsCommandList1 * This, - /* [annotation] */ _In_ UINT StartSlot, - /* [annotation] */ _In_ UINT NumViews, - /* [annotation] */ _In_reads_opt_(NumViews) const D3D12_STREAM_OUTPUT_BUFFER_VIEW *pViews); DECLSPEC_XFGVIRT(ID3D12GraphicsCommandList, OMSetRenderTargets) void ( STDMETHODCALLTYPE *OMSetRenderTargets )( ID3D12GraphicsCommandList1 * This, - /* [annotation] */ _In_ UINT NumRenderTargetDescriptors, - /* [annotation] */ _In_opt_ const D3D12_CPU_DESCRIPTOR_HANDLE *pRenderTargetDescriptors, - /* [annotation] */ _In_ BOOL RTsSingleHandleToDescriptorRange, - /* [annotation] */ _In_opt_ const D3D12_CPU_DESCRIPTOR_HANDLE *pDepthStencilDescriptor); DECLSPEC_XFGVIRT(ID3D12GraphicsCommandList, ClearDepthStencilView) void ( STDMETHODCALLTYPE *ClearDepthStencilView )( ID3D12GraphicsCommandList1 * This, - /* [annotation] */ _In_ D3D12_CPU_DESCRIPTOR_HANDLE DepthStencilView, - /* [annotation] */ _In_ D3D12_CLEAR_FLAGS ClearFlags, - /* [annotation] */ _In_ FLOAT Depth, - /* [annotation] */ _In_ UINT8 Stencil, - /* [annotation] */ _In_ UINT NumRects, - /* [annotation] */ _In_reads_(NumRects) const D3D12_RECT *pRects); DECLSPEC_XFGVIRT(ID3D12GraphicsCommandList, ClearRenderTargetView) void ( STDMETHODCALLTYPE *ClearRenderTargetView )( ID3D12GraphicsCommandList1 * This, - /* [annotation] */ _In_ D3D12_CPU_DESCRIPTOR_HANDLE RenderTargetView, - /* [annotation] */ _In_ const FLOAT ColorRGBA[ 4 ], - /* [annotation] */ _In_ UINT NumRects, - /* [annotation] */ _In_reads_(NumRects) const D3D12_RECT *pRects); DECLSPEC_XFGVIRT(ID3D12GraphicsCommandList, ClearUnorderedAccessViewUint) void ( STDMETHODCALLTYPE *ClearUnorderedAccessViewUint )( ID3D12GraphicsCommandList1 * This, - /* [annotation] */ _In_ D3D12_GPU_DESCRIPTOR_HANDLE ViewGPUHandleInCurrentHeap, - /* [annotation] */ _In_ D3D12_CPU_DESCRIPTOR_HANDLE ViewCPUHandle, - /* [annotation] */ _In_ ID3D12Resource *pResource, - /* [annotation] */ _In_ const UINT Values[ 4 ], - /* [annotation] */ _In_ UINT NumRects, - /* [annotation] */ _In_reads_(NumRects) const D3D12_RECT *pRects); DECLSPEC_XFGVIRT(ID3D12GraphicsCommandList, ClearUnorderedAccessViewFloat) void ( STDMETHODCALLTYPE *ClearUnorderedAccessViewFloat )( ID3D12GraphicsCommandList1 * This, - /* [annotation] */ _In_ D3D12_GPU_DESCRIPTOR_HANDLE ViewGPUHandleInCurrentHeap, - /* [annotation] */ _In_ D3D12_CPU_DESCRIPTOR_HANDLE ViewCPUHandle, - /* [annotation] */ _In_ ID3D12Resource *pResource, - /* [annotation] */ _In_ const FLOAT Values[ 4 ], - /* [annotation] */ _In_ UINT NumRects, - /* [annotation] */ _In_reads_(NumRects) const D3D12_RECT *pRects); DECLSPEC_XFGVIRT(ID3D12GraphicsCommandList, DiscardResource) void ( STDMETHODCALLTYPE *DiscardResource )( ID3D12GraphicsCommandList1 * This, - /* [annotation] */ _In_ ID3D12Resource *pResource, - /* [annotation] */ _In_opt_ const D3D12_DISCARD_REGION *pRegion); DECLSPEC_XFGVIRT(ID3D12GraphicsCommandList, BeginQuery) void ( STDMETHODCALLTYPE *BeginQuery )( ID3D12GraphicsCommandList1 * This, - /* [annotation] */ _In_ ID3D12QueryHeap *pQueryHeap, - /* [annotation] */ _In_ D3D12_QUERY_TYPE Type, - /* [annotation] */ _In_ UINT Index); DECLSPEC_XFGVIRT(ID3D12GraphicsCommandList, EndQuery) void ( STDMETHODCALLTYPE *EndQuery )( ID3D12GraphicsCommandList1 * This, - /* [annotation] */ _In_ ID3D12QueryHeap *pQueryHeap, - /* [annotation] */ _In_ D3D12_QUERY_TYPE Type, - /* [annotation] */ _In_ UINT Index); DECLSPEC_XFGVIRT(ID3D12GraphicsCommandList, ResolveQueryData) void ( STDMETHODCALLTYPE *ResolveQueryData )( ID3D12GraphicsCommandList1 * This, - /* [annotation] */ _In_ ID3D12QueryHeap *pQueryHeap, - /* [annotation] */ _In_ D3D12_QUERY_TYPE Type, - /* [annotation] */ _In_ UINT StartIndex, - /* [annotation] */ _In_ UINT NumQueries, - /* [annotation] */ _In_ ID3D12Resource *pDestinationBuffer, - /* [annotation] */ _In_ UINT64 AlignedDestinationBufferOffset); DECLSPEC_XFGVIRT(ID3D12GraphicsCommandList, SetPredication) void ( STDMETHODCALLTYPE *SetPredication )( ID3D12GraphicsCommandList1 * This, - /* [annotation] */ _In_opt_ ID3D12Resource *pBuffer, - /* [annotation] */ _In_ UINT64 AlignedBufferOffset, - /* [annotation] */ _In_ D3D12_PREDICATION_OP Operation); DECLSPEC_XFGVIRT(ID3D12GraphicsCommandList, SetMarker) void ( STDMETHODCALLTYPE *SetMarker )( ID3D12GraphicsCommandList1 * This, UINT Metadata, - /* [annotation] */ _In_reads_bytes_opt_(Size) const void *pData, UINT Size); @@ -7830,7 +7318,6 @@ EXTERN_C const IID IID_ID3D12GraphicsCommandList1; void ( STDMETHODCALLTYPE *BeginEvent )( ID3D12GraphicsCommandList1 * This, UINT Metadata, - /* [annotation] */ _In_reads_bytes_opt_(Size) const void *pData, UINT Size); @@ -7841,93 +7328,64 @@ EXTERN_C const IID IID_ID3D12GraphicsCommandList1; DECLSPEC_XFGVIRT(ID3D12GraphicsCommandList, ExecuteIndirect) void ( STDMETHODCALLTYPE *ExecuteIndirect )( ID3D12GraphicsCommandList1 * This, - /* [annotation] */ _In_ ID3D12CommandSignature *pCommandSignature, - /* [annotation] */ _In_ UINT MaxCommandCount, - /* [annotation] */ _In_ ID3D12Resource *pArgumentBuffer, - /* [annotation] */ _In_ UINT64 ArgumentBufferOffset, - /* [annotation] */ _In_opt_ ID3D12Resource *pCountBuffer, - /* [annotation] */ _In_ UINT64 CountBufferOffset); DECLSPEC_XFGVIRT(ID3D12GraphicsCommandList1, AtomicCopyBufferUINT) void ( STDMETHODCALLTYPE *AtomicCopyBufferUINT )( ID3D12GraphicsCommandList1 * This, - /* [annotation] */ _In_ ID3D12Resource *pDstBuffer, UINT64 DstOffset, - /* [annotation] */ _In_ ID3D12Resource *pSrcBuffer, UINT64 SrcOffset, UINT Dependencies, - /* [annotation] */ _In_reads_(Dependencies) ID3D12Resource *const *ppDependentResources, - /* [annotation] */ _In_reads_(Dependencies) const D3D12_SUBRESOURCE_RANGE_UINT64 *pDependentSubresourceRanges); DECLSPEC_XFGVIRT(ID3D12GraphicsCommandList1, AtomicCopyBufferUINT64) void ( STDMETHODCALLTYPE *AtomicCopyBufferUINT64 )( ID3D12GraphicsCommandList1 * This, - /* [annotation] */ _In_ ID3D12Resource *pDstBuffer, UINT64 DstOffset, - /* [annotation] */ _In_ ID3D12Resource *pSrcBuffer, UINT64 SrcOffset, UINT Dependencies, - /* [annotation] */ _In_reads_(Dependencies) ID3D12Resource *const *ppDependentResources, - /* [annotation] */ _In_reads_(Dependencies) const D3D12_SUBRESOURCE_RANGE_UINT64 *pDependentSubresourceRanges); DECLSPEC_XFGVIRT(ID3D12GraphicsCommandList1, OMSetDepthBounds) void ( STDMETHODCALLTYPE *OMSetDepthBounds )( ID3D12GraphicsCommandList1 * This, - /* [annotation] */ _In_ FLOAT Min, - /* [annotation] */ _In_ FLOAT Max); DECLSPEC_XFGVIRT(ID3D12GraphicsCommandList1, SetSamplePositions) void ( STDMETHODCALLTYPE *SetSamplePositions )( ID3D12GraphicsCommandList1 * This, - /* [annotation] */ _In_ UINT NumSamplesPerPixel, - /* [annotation] */ _In_ UINT NumPixels, - /* [annotation] */ _In_reads_(NumSamplesPerPixel*NumPixels) D3D12_SAMPLE_POSITION *pSamplePositions); DECLSPEC_XFGVIRT(ID3D12GraphicsCommandList1, ResolveSubresourceRegion) void ( STDMETHODCALLTYPE *ResolveSubresourceRegion )( ID3D12GraphicsCommandList1 * This, - /* [annotation] */ _In_ ID3D12Resource *pDstResource, - /* [annotation] */ _In_ UINT DstSubresource, - /* [annotation] */ _In_ UINT DstX, - /* [annotation] */ _In_ UINT DstY, - /* [annotation] */ _In_ ID3D12Resource *pSrcResource, - /* [annotation] */ _In_ UINT SrcSubresource, - /* [annotation] */ _In_opt_ D3D12_RECT *pSrcRect, - /* [annotation] */ _In_ DXGI_FORMAT Format, - /* [annotation] */ _In_ D3D12_RESOLVE_MODE ResolveMode); DECLSPEC_XFGVIRT(ID3D12GraphicsCommandList1, SetViewInstanceMask) void ( STDMETHODCALLTYPE *SetViewInstanceMask )( ID3D12GraphicsCommandList1 * This, - /* [annotation] */ _In_ UINT Mask); END_INTERFACE @@ -8196,9 +7654,7 @@ EXTERN_C const IID IID_ID3D12GraphicsCommandList2; public: virtual void STDMETHODCALLTYPE WriteBufferImmediate( UINT Count, - /* [annotation] */ _In_reads_(Count) const D3D12_WRITEBUFFERIMMEDIATE_PARAMETER *pParams, - /* [annotation] */ _In_reads_opt_(Count) const D3D12_WRITEBUFFERIMMEDIATE_MODE *pModes) = 0; }; @@ -8213,9 +7669,7 @@ EXTERN_C const IID IID_ID3D12GraphicsCommandList2; DECLSPEC_XFGVIRT(IUnknown, QueryInterface) HRESULT ( STDMETHODCALLTYPE *QueryInterface )( ID3D12GraphicsCommandList2 * This, - /* [annotation][in] */ - _In_ REFIID riid, - /* [annotation][iid_is][out] */ + REFIID riid, _COM_Outptr_ void **ppvObject); DECLSPEC_XFGVIRT(IUnknown, AddRef) @@ -8229,43 +7683,32 @@ EXTERN_C const IID IID_ID3D12GraphicsCommandList2; DECLSPEC_XFGVIRT(ID3D12Object, GetPrivateData) HRESULT ( STDMETHODCALLTYPE *GetPrivateData )( ID3D12GraphicsCommandList2 * This, - /* [annotation] */ _In_ REFGUID guid, - /* [annotation] */ _Inout_ UINT *pDataSize, - /* [annotation] */ _Out_writes_bytes_opt_( *pDataSize ) void *pData); DECLSPEC_XFGVIRT(ID3D12Object, SetPrivateData) HRESULT ( STDMETHODCALLTYPE *SetPrivateData )( ID3D12GraphicsCommandList2 * This, - /* [annotation] */ _In_ REFGUID guid, - /* [annotation] */ _In_ UINT DataSize, - /* [annotation] */ _In_reads_bytes_opt_( DataSize ) const void *pData); DECLSPEC_XFGVIRT(ID3D12Object, SetPrivateDataInterface) HRESULT ( STDMETHODCALLTYPE *SetPrivateDataInterface )( ID3D12GraphicsCommandList2 * This, - /* [annotation] */ _In_ REFGUID guid, - /* [annotation] */ _In_opt_ const IUnknown *pData); DECLSPEC_XFGVIRT(ID3D12Object, SetName) HRESULT ( STDMETHODCALLTYPE *SetName )( ID3D12GraphicsCommandList2 * This, - /* [annotation] */ _In_z_ LPCWSTR Name); DECLSPEC_XFGVIRT(ID3D12DeviceChild, GetDevice) HRESULT ( STDMETHODCALLTYPE *GetDevice )( ID3D12GraphicsCommandList2 * This, - /* [annotation][in] */ - _In_ REFIID riid, - /* [annotation][iid_is][out] */ + REFIID riid, _COM_Outptr_opt_ void **ppvDevice); DECLSPEC_XFGVIRT(ID3D12CommandList, GetType) @@ -8279,60 +7722,43 @@ EXTERN_C const IID IID_ID3D12GraphicsCommandList2; DECLSPEC_XFGVIRT(ID3D12GraphicsCommandList, Reset) HRESULT ( STDMETHODCALLTYPE *Reset )( ID3D12GraphicsCommandList2 * This, - /* [annotation] */ _In_ ID3D12CommandAllocator *pAllocator, - /* [annotation] */ _In_opt_ ID3D12PipelineState *pInitialState); DECLSPEC_XFGVIRT(ID3D12GraphicsCommandList, ClearState) void ( STDMETHODCALLTYPE *ClearState )( ID3D12GraphicsCommandList2 * This, - /* [annotation] */ _In_opt_ ID3D12PipelineState *pPipelineState); DECLSPEC_XFGVIRT(ID3D12GraphicsCommandList, DrawInstanced) void ( STDMETHODCALLTYPE *DrawInstanced )( ID3D12GraphicsCommandList2 * This, - /* [annotation] */ _In_ UINT VertexCountPerInstance, - /* [annotation] */ _In_ UINT InstanceCount, - /* [annotation] */ _In_ UINT StartVertexLocation, - /* [annotation] */ _In_ UINT StartInstanceLocation); DECLSPEC_XFGVIRT(ID3D12GraphicsCommandList, DrawIndexedInstanced) void ( STDMETHODCALLTYPE *DrawIndexedInstanced )( ID3D12GraphicsCommandList2 * This, - /* [annotation] */ _In_ UINT IndexCountPerInstance, - /* [annotation] */ _In_ UINT InstanceCount, - /* [annotation] */ _In_ UINT StartIndexLocation, - /* [annotation] */ _In_ INT BaseVertexLocation, - /* [annotation] */ _In_ UINT StartInstanceLocation); DECLSPEC_XFGVIRT(ID3D12GraphicsCommandList, Dispatch) void ( STDMETHODCALLTYPE *Dispatch )( ID3D12GraphicsCommandList2 * This, - /* [annotation] */ _In_ UINT ThreadGroupCountX, - /* [annotation] */ _In_ UINT ThreadGroupCountY, - /* [annotation] */ _In_ UINT ThreadGroupCountZ); DECLSPEC_XFGVIRT(ID3D12GraphicsCommandList, CopyBufferRegion) void ( STDMETHODCALLTYPE *CopyBufferRegion )( ID3D12GraphicsCommandList2 * This, - /* [annotation] */ _In_ ID3D12Resource *pDstBuffer, UINT64 DstOffset, - /* [annotation] */ _In_ ID3D12Resource *pSrcBuffer, UINT64 SrcOffset, UINT64 NumBytes); @@ -8340,34 +7766,25 @@ EXTERN_C const IID IID_ID3D12GraphicsCommandList2; DECLSPEC_XFGVIRT(ID3D12GraphicsCommandList, CopyTextureRegion) void ( STDMETHODCALLTYPE *CopyTextureRegion )( ID3D12GraphicsCommandList2 * This, - /* [annotation] */ _In_ const D3D12_TEXTURE_COPY_LOCATION *pDst, UINT DstX, UINT DstY, UINT DstZ, - /* [annotation] */ _In_ const D3D12_TEXTURE_COPY_LOCATION *pSrc, - /* [annotation] */ _In_opt_ const D3D12_BOX *pSrcBox); DECLSPEC_XFGVIRT(ID3D12GraphicsCommandList, CopyResource) void ( STDMETHODCALLTYPE *CopyResource )( ID3D12GraphicsCommandList2 * This, - /* [annotation] */ _In_ ID3D12Resource *pDstResource, - /* [annotation] */ _In_ ID3D12Resource *pSrcResource); DECLSPEC_XFGVIRT(ID3D12GraphicsCommandList, CopyTiles) void ( STDMETHODCALLTYPE *CopyTiles )( ID3D12GraphicsCommandList2 * This, - /* [annotation] */ _In_ ID3D12Resource *pTiledResource, - /* [annotation] */ _In_ const D3D12_TILED_RESOURCE_COORDINATE *pTileRegionStartCoordinate, - /* [annotation] */ _In_ const D3D12_TILE_REGION_SIZE *pTileRegionSize, - /* [annotation] */ _In_ ID3D12Resource *pBuffer, UINT64 BufferStartOffsetInBytes, D3D12_TILE_COPY_FLAGS Flags); @@ -8375,356 +7792,255 @@ EXTERN_C const IID IID_ID3D12GraphicsCommandList2; DECLSPEC_XFGVIRT(ID3D12GraphicsCommandList, ResolveSubresource) void ( STDMETHODCALLTYPE *ResolveSubresource )( ID3D12GraphicsCommandList2 * This, - /* [annotation] */ _In_ ID3D12Resource *pDstResource, - /* [annotation] */ _In_ UINT DstSubresource, - /* [annotation] */ _In_ ID3D12Resource *pSrcResource, - /* [annotation] */ _In_ UINT SrcSubresource, - /* [annotation] */ _In_ DXGI_FORMAT Format); DECLSPEC_XFGVIRT(ID3D12GraphicsCommandList, IASetPrimitiveTopology) void ( STDMETHODCALLTYPE *IASetPrimitiveTopology )( ID3D12GraphicsCommandList2 * This, - /* [annotation] */ _In_ D3D12_PRIMITIVE_TOPOLOGY PrimitiveTopology); DECLSPEC_XFGVIRT(ID3D12GraphicsCommandList, RSSetViewports) void ( STDMETHODCALLTYPE *RSSetViewports )( ID3D12GraphicsCommandList2 * This, - /* [annotation] */ _In_range_(0, D3D12_VIEWPORT_AND_SCISSORRECT_OBJECT_COUNT_PER_PIPELINE) UINT NumViewports, - /* [annotation] */ _In_reads_( NumViewports) const D3D12_VIEWPORT *pViewports); DECLSPEC_XFGVIRT(ID3D12GraphicsCommandList, RSSetScissorRects) void ( STDMETHODCALLTYPE *RSSetScissorRects )( ID3D12GraphicsCommandList2 * This, - /* [annotation] */ _In_range_(0, D3D12_VIEWPORT_AND_SCISSORRECT_OBJECT_COUNT_PER_PIPELINE) UINT NumRects, - /* [annotation] */ _In_reads_( NumRects) const D3D12_RECT *pRects); DECLSPEC_XFGVIRT(ID3D12GraphicsCommandList, OMSetBlendFactor) void ( STDMETHODCALLTYPE *OMSetBlendFactor )( ID3D12GraphicsCommandList2 * This, - /* [annotation] */ _In_reads_opt_(4) const FLOAT BlendFactor[ 4 ]); DECLSPEC_XFGVIRT(ID3D12GraphicsCommandList, OMSetStencilRef) void ( STDMETHODCALLTYPE *OMSetStencilRef )( ID3D12GraphicsCommandList2 * This, - /* [annotation] */ _In_ UINT StencilRef); DECLSPEC_XFGVIRT(ID3D12GraphicsCommandList, SetPipelineState) void ( STDMETHODCALLTYPE *SetPipelineState )( ID3D12GraphicsCommandList2 * This, - /* [annotation] */ _In_ ID3D12PipelineState *pPipelineState); DECLSPEC_XFGVIRT(ID3D12GraphicsCommandList, ResourceBarrier) void ( STDMETHODCALLTYPE *ResourceBarrier )( ID3D12GraphicsCommandList2 * This, - /* [annotation] */ _In_ UINT NumBarriers, - /* [annotation] */ _In_reads_(NumBarriers) const D3D12_RESOURCE_BARRIER *pBarriers); DECLSPEC_XFGVIRT(ID3D12GraphicsCommandList, ExecuteBundle) void ( STDMETHODCALLTYPE *ExecuteBundle )( ID3D12GraphicsCommandList2 * This, - /* [annotation] */ _In_ ID3D12GraphicsCommandList *pCommandList); DECLSPEC_XFGVIRT(ID3D12GraphicsCommandList, SetDescriptorHeaps) void ( STDMETHODCALLTYPE *SetDescriptorHeaps )( ID3D12GraphicsCommandList2 * This, - /* [annotation] */ _In_ UINT NumDescriptorHeaps, - /* [annotation] */ _In_reads_(NumDescriptorHeaps) ID3D12DescriptorHeap *const *ppDescriptorHeaps); DECLSPEC_XFGVIRT(ID3D12GraphicsCommandList, SetComputeRootSignature) void ( STDMETHODCALLTYPE *SetComputeRootSignature )( ID3D12GraphicsCommandList2 * This, - /* [annotation] */ _In_opt_ ID3D12RootSignature *pRootSignature); DECLSPEC_XFGVIRT(ID3D12GraphicsCommandList, SetGraphicsRootSignature) void ( STDMETHODCALLTYPE *SetGraphicsRootSignature )( ID3D12GraphicsCommandList2 * This, - /* [annotation] */ _In_opt_ ID3D12RootSignature *pRootSignature); DECLSPEC_XFGVIRT(ID3D12GraphicsCommandList, SetComputeRootDescriptorTable) void ( STDMETHODCALLTYPE *SetComputeRootDescriptorTable )( ID3D12GraphicsCommandList2 * This, - /* [annotation] */ _In_ UINT RootParameterIndex, - /* [annotation] */ _In_ D3D12_GPU_DESCRIPTOR_HANDLE BaseDescriptor); DECLSPEC_XFGVIRT(ID3D12GraphicsCommandList, SetGraphicsRootDescriptorTable) void ( STDMETHODCALLTYPE *SetGraphicsRootDescriptorTable )( ID3D12GraphicsCommandList2 * This, - /* [annotation] */ _In_ UINT RootParameterIndex, - /* [annotation] */ _In_ D3D12_GPU_DESCRIPTOR_HANDLE BaseDescriptor); DECLSPEC_XFGVIRT(ID3D12GraphicsCommandList, SetComputeRoot32BitConstant) void ( STDMETHODCALLTYPE *SetComputeRoot32BitConstant )( ID3D12GraphicsCommandList2 * This, - /* [annotation] */ _In_ UINT RootParameterIndex, - /* [annotation] */ _In_ UINT SrcData, - /* [annotation] */ _In_ UINT DestOffsetIn32BitValues); DECLSPEC_XFGVIRT(ID3D12GraphicsCommandList, SetGraphicsRoot32BitConstant) void ( STDMETHODCALLTYPE *SetGraphicsRoot32BitConstant )( ID3D12GraphicsCommandList2 * This, - /* [annotation] */ _In_ UINT RootParameterIndex, - /* [annotation] */ _In_ UINT SrcData, - /* [annotation] */ _In_ UINT DestOffsetIn32BitValues); DECLSPEC_XFGVIRT(ID3D12GraphicsCommandList, SetComputeRoot32BitConstants) void ( STDMETHODCALLTYPE *SetComputeRoot32BitConstants )( ID3D12GraphicsCommandList2 * This, - /* [annotation] */ _In_ UINT RootParameterIndex, - /* [annotation] */ _In_ UINT Num32BitValuesToSet, - /* [annotation] */ _In_reads_(Num32BitValuesToSet*sizeof(UINT)) const void *pSrcData, - /* [annotation] */ _In_ UINT DestOffsetIn32BitValues); DECLSPEC_XFGVIRT(ID3D12GraphicsCommandList, SetGraphicsRoot32BitConstants) void ( STDMETHODCALLTYPE *SetGraphicsRoot32BitConstants )( ID3D12GraphicsCommandList2 * This, - /* [annotation] */ _In_ UINT RootParameterIndex, - /* [annotation] */ _In_ UINT Num32BitValuesToSet, - /* [annotation] */ _In_reads_(Num32BitValuesToSet*sizeof(UINT)) const void *pSrcData, - /* [annotation] */ _In_ UINT DestOffsetIn32BitValues); DECLSPEC_XFGVIRT(ID3D12GraphicsCommandList, SetComputeRootConstantBufferView) void ( STDMETHODCALLTYPE *SetComputeRootConstantBufferView )( ID3D12GraphicsCommandList2 * This, - /* [annotation] */ _In_ UINT RootParameterIndex, - /* [annotation] */ _In_ D3D12_GPU_VIRTUAL_ADDRESS BufferLocation); DECLSPEC_XFGVIRT(ID3D12GraphicsCommandList, SetGraphicsRootConstantBufferView) void ( STDMETHODCALLTYPE *SetGraphicsRootConstantBufferView )( ID3D12GraphicsCommandList2 * This, - /* [annotation] */ _In_ UINT RootParameterIndex, - /* [annotation] */ _In_ D3D12_GPU_VIRTUAL_ADDRESS BufferLocation); DECLSPEC_XFGVIRT(ID3D12GraphicsCommandList, SetComputeRootShaderResourceView) void ( STDMETHODCALLTYPE *SetComputeRootShaderResourceView )( ID3D12GraphicsCommandList2 * This, - /* [annotation] */ _In_ UINT RootParameterIndex, - /* [annotation] */ _In_ D3D12_GPU_VIRTUAL_ADDRESS BufferLocation); DECLSPEC_XFGVIRT(ID3D12GraphicsCommandList, SetGraphicsRootShaderResourceView) void ( STDMETHODCALLTYPE *SetGraphicsRootShaderResourceView )( ID3D12GraphicsCommandList2 * This, - /* [annotation] */ _In_ UINT RootParameterIndex, - /* [annotation] */ _In_ D3D12_GPU_VIRTUAL_ADDRESS BufferLocation); DECLSPEC_XFGVIRT(ID3D12GraphicsCommandList, SetComputeRootUnorderedAccessView) void ( STDMETHODCALLTYPE *SetComputeRootUnorderedAccessView )( ID3D12GraphicsCommandList2 * This, - /* [annotation] */ _In_ UINT RootParameterIndex, - /* [annotation] */ _In_ D3D12_GPU_VIRTUAL_ADDRESS BufferLocation); DECLSPEC_XFGVIRT(ID3D12GraphicsCommandList, SetGraphicsRootUnorderedAccessView) void ( STDMETHODCALLTYPE *SetGraphicsRootUnorderedAccessView )( ID3D12GraphicsCommandList2 * This, - /* [annotation] */ _In_ UINT RootParameterIndex, - /* [annotation] */ _In_ D3D12_GPU_VIRTUAL_ADDRESS BufferLocation); DECLSPEC_XFGVIRT(ID3D12GraphicsCommandList, IASetIndexBuffer) void ( STDMETHODCALLTYPE *IASetIndexBuffer )( ID3D12GraphicsCommandList2 * This, - /* [annotation] */ _In_opt_ const D3D12_INDEX_BUFFER_VIEW *pView); DECLSPEC_XFGVIRT(ID3D12GraphicsCommandList, IASetVertexBuffers) void ( STDMETHODCALLTYPE *IASetVertexBuffers )( ID3D12GraphicsCommandList2 * This, - /* [annotation] */ _In_ UINT StartSlot, - /* [annotation] */ _In_ UINT NumViews, - /* [annotation] */ _In_reads_opt_(NumViews) const D3D12_VERTEX_BUFFER_VIEW *pViews); DECLSPEC_XFGVIRT(ID3D12GraphicsCommandList, SOSetTargets) void ( STDMETHODCALLTYPE *SOSetTargets )( ID3D12GraphicsCommandList2 * This, - /* [annotation] */ _In_ UINT StartSlot, - /* [annotation] */ _In_ UINT NumViews, - /* [annotation] */ _In_reads_opt_(NumViews) const D3D12_STREAM_OUTPUT_BUFFER_VIEW *pViews); DECLSPEC_XFGVIRT(ID3D12GraphicsCommandList, OMSetRenderTargets) void ( STDMETHODCALLTYPE *OMSetRenderTargets )( ID3D12GraphicsCommandList2 * This, - /* [annotation] */ _In_ UINT NumRenderTargetDescriptors, - /* [annotation] */ _In_opt_ const D3D12_CPU_DESCRIPTOR_HANDLE *pRenderTargetDescriptors, - /* [annotation] */ _In_ BOOL RTsSingleHandleToDescriptorRange, - /* [annotation] */ _In_opt_ const D3D12_CPU_DESCRIPTOR_HANDLE *pDepthStencilDescriptor); DECLSPEC_XFGVIRT(ID3D12GraphicsCommandList, ClearDepthStencilView) void ( STDMETHODCALLTYPE *ClearDepthStencilView )( ID3D12GraphicsCommandList2 * This, - /* [annotation] */ _In_ D3D12_CPU_DESCRIPTOR_HANDLE DepthStencilView, - /* [annotation] */ _In_ D3D12_CLEAR_FLAGS ClearFlags, - /* [annotation] */ _In_ FLOAT Depth, - /* [annotation] */ _In_ UINT8 Stencil, - /* [annotation] */ _In_ UINT NumRects, - /* [annotation] */ _In_reads_(NumRects) const D3D12_RECT *pRects); DECLSPEC_XFGVIRT(ID3D12GraphicsCommandList, ClearRenderTargetView) void ( STDMETHODCALLTYPE *ClearRenderTargetView )( ID3D12GraphicsCommandList2 * This, - /* [annotation] */ _In_ D3D12_CPU_DESCRIPTOR_HANDLE RenderTargetView, - /* [annotation] */ _In_ const FLOAT ColorRGBA[ 4 ], - /* [annotation] */ _In_ UINT NumRects, - /* [annotation] */ _In_reads_(NumRects) const D3D12_RECT *pRects); DECLSPEC_XFGVIRT(ID3D12GraphicsCommandList, ClearUnorderedAccessViewUint) void ( STDMETHODCALLTYPE *ClearUnorderedAccessViewUint )( ID3D12GraphicsCommandList2 * This, - /* [annotation] */ _In_ D3D12_GPU_DESCRIPTOR_HANDLE ViewGPUHandleInCurrentHeap, - /* [annotation] */ _In_ D3D12_CPU_DESCRIPTOR_HANDLE ViewCPUHandle, - /* [annotation] */ _In_ ID3D12Resource *pResource, - /* [annotation] */ _In_ const UINT Values[ 4 ], - /* [annotation] */ _In_ UINT NumRects, - /* [annotation] */ _In_reads_(NumRects) const D3D12_RECT *pRects); DECLSPEC_XFGVIRT(ID3D12GraphicsCommandList, ClearUnorderedAccessViewFloat) void ( STDMETHODCALLTYPE *ClearUnorderedAccessViewFloat )( ID3D12GraphicsCommandList2 * This, - /* [annotation] */ _In_ D3D12_GPU_DESCRIPTOR_HANDLE ViewGPUHandleInCurrentHeap, - /* [annotation] */ _In_ D3D12_CPU_DESCRIPTOR_HANDLE ViewCPUHandle, - /* [annotation] */ _In_ ID3D12Resource *pResource, - /* [annotation] */ _In_ const FLOAT Values[ 4 ], - /* [annotation] */ _In_ UINT NumRects, - /* [annotation] */ _In_reads_(NumRects) const D3D12_RECT *pRects); DECLSPEC_XFGVIRT(ID3D12GraphicsCommandList, DiscardResource) void ( STDMETHODCALLTYPE *DiscardResource )( ID3D12GraphicsCommandList2 * This, - /* [annotation] */ _In_ ID3D12Resource *pResource, - /* [annotation] */ _In_opt_ const D3D12_DISCARD_REGION *pRegion); DECLSPEC_XFGVIRT(ID3D12GraphicsCommandList, BeginQuery) void ( STDMETHODCALLTYPE *BeginQuery )( ID3D12GraphicsCommandList2 * This, - /* [annotation] */ _In_ ID3D12QueryHeap *pQueryHeap, - /* [annotation] */ _In_ D3D12_QUERY_TYPE Type, - /* [annotation] */ _In_ UINT Index); DECLSPEC_XFGVIRT(ID3D12GraphicsCommandList, EndQuery) void ( STDMETHODCALLTYPE *EndQuery )( ID3D12GraphicsCommandList2 * This, - /* [annotation] */ _In_ ID3D12QueryHeap *pQueryHeap, - /* [annotation] */ _In_ D3D12_QUERY_TYPE Type, - /* [annotation] */ _In_ UINT Index); DECLSPEC_XFGVIRT(ID3D12GraphicsCommandList, ResolveQueryData) void ( STDMETHODCALLTYPE *ResolveQueryData )( ID3D12GraphicsCommandList2 * This, - /* [annotation] */ _In_ ID3D12QueryHeap *pQueryHeap, - /* [annotation] */ _In_ D3D12_QUERY_TYPE Type, - /* [annotation] */ _In_ UINT StartIndex, - /* [annotation] */ _In_ UINT NumQueries, - /* [annotation] */ _In_ ID3D12Resource *pDestinationBuffer, - /* [annotation] */ _In_ UINT64 AlignedDestinationBufferOffset); DECLSPEC_XFGVIRT(ID3D12GraphicsCommandList, SetPredication) void ( STDMETHODCALLTYPE *SetPredication )( ID3D12GraphicsCommandList2 * This, - /* [annotation] */ _In_opt_ ID3D12Resource *pBuffer, - /* [annotation] */ _In_ UINT64 AlignedBufferOffset, - /* [annotation] */ _In_ D3D12_PREDICATION_OP Operation); DECLSPEC_XFGVIRT(ID3D12GraphicsCommandList, SetMarker) void ( STDMETHODCALLTYPE *SetMarker )( ID3D12GraphicsCommandList2 * This, UINT Metadata, - /* [annotation] */ _In_reads_bytes_opt_(Size) const void *pData, UINT Size); @@ -8732,7 +8048,6 @@ EXTERN_C const IID IID_ID3D12GraphicsCommandList2; void ( STDMETHODCALLTYPE *BeginEvent )( ID3D12GraphicsCommandList2 * This, UINT Metadata, - /* [annotation] */ _In_reads_bytes_opt_(Size) const void *pData, UINT Size); @@ -8743,102 +8058,71 @@ EXTERN_C const IID IID_ID3D12GraphicsCommandList2; DECLSPEC_XFGVIRT(ID3D12GraphicsCommandList, ExecuteIndirect) void ( STDMETHODCALLTYPE *ExecuteIndirect )( ID3D12GraphicsCommandList2 * This, - /* [annotation] */ _In_ ID3D12CommandSignature *pCommandSignature, - /* [annotation] */ _In_ UINT MaxCommandCount, - /* [annotation] */ _In_ ID3D12Resource *pArgumentBuffer, - /* [annotation] */ _In_ UINT64 ArgumentBufferOffset, - /* [annotation] */ _In_opt_ ID3D12Resource *pCountBuffer, - /* [annotation] */ _In_ UINT64 CountBufferOffset); DECLSPEC_XFGVIRT(ID3D12GraphicsCommandList1, AtomicCopyBufferUINT) void ( STDMETHODCALLTYPE *AtomicCopyBufferUINT )( ID3D12GraphicsCommandList2 * This, - /* [annotation] */ _In_ ID3D12Resource *pDstBuffer, UINT64 DstOffset, - /* [annotation] */ _In_ ID3D12Resource *pSrcBuffer, UINT64 SrcOffset, UINT Dependencies, - /* [annotation] */ _In_reads_(Dependencies) ID3D12Resource *const *ppDependentResources, - /* [annotation] */ _In_reads_(Dependencies) const D3D12_SUBRESOURCE_RANGE_UINT64 *pDependentSubresourceRanges); DECLSPEC_XFGVIRT(ID3D12GraphicsCommandList1, AtomicCopyBufferUINT64) void ( STDMETHODCALLTYPE *AtomicCopyBufferUINT64 )( ID3D12GraphicsCommandList2 * This, - /* [annotation] */ _In_ ID3D12Resource *pDstBuffer, UINT64 DstOffset, - /* [annotation] */ _In_ ID3D12Resource *pSrcBuffer, UINT64 SrcOffset, UINT Dependencies, - /* [annotation] */ _In_reads_(Dependencies) ID3D12Resource *const *ppDependentResources, - /* [annotation] */ _In_reads_(Dependencies) const D3D12_SUBRESOURCE_RANGE_UINT64 *pDependentSubresourceRanges); DECLSPEC_XFGVIRT(ID3D12GraphicsCommandList1, OMSetDepthBounds) void ( STDMETHODCALLTYPE *OMSetDepthBounds )( ID3D12GraphicsCommandList2 * This, - /* [annotation] */ _In_ FLOAT Min, - /* [annotation] */ _In_ FLOAT Max); DECLSPEC_XFGVIRT(ID3D12GraphicsCommandList1, SetSamplePositions) void ( STDMETHODCALLTYPE *SetSamplePositions )( ID3D12GraphicsCommandList2 * This, - /* [annotation] */ _In_ UINT NumSamplesPerPixel, - /* [annotation] */ _In_ UINT NumPixels, - /* [annotation] */ _In_reads_(NumSamplesPerPixel*NumPixels) D3D12_SAMPLE_POSITION *pSamplePositions); DECLSPEC_XFGVIRT(ID3D12GraphicsCommandList1, ResolveSubresourceRegion) void ( STDMETHODCALLTYPE *ResolveSubresourceRegion )( ID3D12GraphicsCommandList2 * This, - /* [annotation] */ _In_ ID3D12Resource *pDstResource, - /* [annotation] */ _In_ UINT DstSubresource, - /* [annotation] */ _In_ UINT DstX, - /* [annotation] */ _In_ UINT DstY, - /* [annotation] */ _In_ ID3D12Resource *pSrcResource, - /* [annotation] */ _In_ UINT SrcSubresource, - /* [annotation] */ _In_opt_ D3D12_RECT *pSrcRect, - /* [annotation] */ _In_ DXGI_FORMAT Format, - /* [annotation] */ _In_ D3D12_RESOLVE_MODE ResolveMode); DECLSPEC_XFGVIRT(ID3D12GraphicsCommandList1, SetViewInstanceMask) void ( STDMETHODCALLTYPE *SetViewInstanceMask )( ID3D12GraphicsCommandList2 * This, - /* [annotation] */ _In_ UINT Mask); DECLSPEC_XFGVIRT(ID3D12GraphicsCommandList2, WriteBufferImmediate) void ( STDMETHODCALLTYPE *WriteBufferImmediate )( ID3D12GraphicsCommandList2 * This, UINT Count, - /* [annotation] */ _In_reads_(Count) const D3D12_WRITEBUFFERIMMEDIATE_PARAMETER *pParams, - /* [annotation] */ _In_reads_opt_(Count) const D3D12_WRITEBUFFERIMMEDIATE_MODE *pModes); END_INTERFACE @@ -9088,52 +8372,36 @@ EXTERN_C const IID IID_ID3D12CommandQueue; { public: virtual void STDMETHODCALLTYPE UpdateTileMappings( - /* [annotation] */ _In_ ID3D12Resource *pResource, UINT NumResourceRegions, - /* [annotation] */ _In_reads_opt_(NumResourceRegions) const D3D12_TILED_RESOURCE_COORDINATE *pResourceRegionStartCoordinates, - /* [annotation] */ _In_reads_opt_(NumResourceRegions) const D3D12_TILE_REGION_SIZE *pResourceRegionSizes, - /* [annotation] */ _In_opt_ ID3D12Heap *pHeap, UINT NumRanges, - /* [annotation] */ _In_reads_opt_(NumRanges) const D3D12_TILE_RANGE_FLAGS *pRangeFlags, - /* [annotation] */ _In_reads_opt_(NumRanges) const UINT *pHeapRangeStartOffsets, - /* [annotation] */ _In_reads_opt_(NumRanges) const UINT *pRangeTileCounts, D3D12_TILE_MAPPING_FLAGS Flags) = 0; virtual void STDMETHODCALLTYPE CopyTileMappings( - /* [annotation] */ _In_ ID3D12Resource *pDstResource, - /* [annotation] */ _In_ const D3D12_TILED_RESOURCE_COORDINATE *pDstRegionStartCoordinate, - /* [annotation] */ _In_ ID3D12Resource *pSrcResource, - /* [annotation] */ _In_ const D3D12_TILED_RESOURCE_COORDINATE *pSrcRegionStartCoordinate, - /* [annotation] */ _In_ const D3D12_TILE_REGION_SIZE *pRegionSize, D3D12_TILE_MAPPING_FLAGS Flags) = 0; virtual void STDMETHODCALLTYPE ExecuteCommandLists( - /* [annotation] */ _In_ UINT NumCommandLists, - /* [annotation] */ _In_reads_(NumCommandLists) ID3D12CommandList *const *ppCommandLists) = 0; virtual void STDMETHODCALLTYPE SetMarker( UINT Metadata, - /* [annotation] */ _In_reads_bytes_opt_(Size) const void *pData, UINT Size) = 0; virtual void STDMETHODCALLTYPE BeginEvent( UINT Metadata, - /* [annotation] */ _In_reads_bytes_opt_(Size) const void *pData, UINT Size) = 0; @@ -9148,16 +8416,18 @@ EXTERN_C const IID IID_ID3D12CommandQueue; UINT64 Value) = 0; virtual HRESULT STDMETHODCALLTYPE GetTimestampFrequency( - /* [annotation] */ _Out_ UINT64 *pFrequency) = 0; virtual HRESULT STDMETHODCALLTYPE GetClockCalibration( - /* [annotation] */ _Out_ UINT64 *pGpuTimestamp, - /* [annotation] */ _Out_ UINT64 *pCpuTimestamp) = 0; +#if defined(_MSC_VER) || !defined(_WIN32) virtual D3D12_COMMAND_QUEUE_DESC STDMETHODCALLTYPE GetDesc( void) = 0; +#else + virtual D3D12_COMMAND_QUEUE_DESC *STDMETHODCALLTYPE GetDesc( + D3D12_COMMAND_QUEUE_DESC * RetVal) = 0; +#endif }; @@ -9171,9 +8441,7 @@ EXTERN_C const IID IID_ID3D12CommandQueue; DECLSPEC_XFGVIRT(IUnknown, QueryInterface) HRESULT ( STDMETHODCALLTYPE *QueryInterface )( ID3D12CommandQueue * This, - /* [annotation][in] */ - _In_ REFIID riid, - /* [annotation][iid_is][out] */ + REFIID riid, _COM_Outptr_ void **ppvObject); DECLSPEC_XFGVIRT(IUnknown, AddRef) @@ -9187,94 +8455,68 @@ EXTERN_C const IID IID_ID3D12CommandQueue; DECLSPEC_XFGVIRT(ID3D12Object, GetPrivateData) HRESULT ( STDMETHODCALLTYPE *GetPrivateData )( ID3D12CommandQueue * This, - /* [annotation] */ _In_ REFGUID guid, - /* [annotation] */ _Inout_ UINT *pDataSize, - /* [annotation] */ _Out_writes_bytes_opt_( *pDataSize ) void *pData); DECLSPEC_XFGVIRT(ID3D12Object, SetPrivateData) HRESULT ( STDMETHODCALLTYPE *SetPrivateData )( ID3D12CommandQueue * This, - /* [annotation] */ _In_ REFGUID guid, - /* [annotation] */ _In_ UINT DataSize, - /* [annotation] */ _In_reads_bytes_opt_( DataSize ) const void *pData); DECLSPEC_XFGVIRT(ID3D12Object, SetPrivateDataInterface) HRESULT ( STDMETHODCALLTYPE *SetPrivateDataInterface )( ID3D12CommandQueue * This, - /* [annotation] */ _In_ REFGUID guid, - /* [annotation] */ _In_opt_ const IUnknown *pData); DECLSPEC_XFGVIRT(ID3D12Object, SetName) HRESULT ( STDMETHODCALLTYPE *SetName )( ID3D12CommandQueue * This, - /* [annotation] */ _In_z_ LPCWSTR Name); DECLSPEC_XFGVIRT(ID3D12DeviceChild, GetDevice) HRESULT ( STDMETHODCALLTYPE *GetDevice )( ID3D12CommandQueue * This, - /* [annotation][in] */ - _In_ REFIID riid, - /* [annotation][iid_is][out] */ + REFIID riid, _COM_Outptr_opt_ void **ppvDevice); DECLSPEC_XFGVIRT(ID3D12CommandQueue, UpdateTileMappings) void ( STDMETHODCALLTYPE *UpdateTileMappings )( ID3D12CommandQueue * This, - /* [annotation] */ _In_ ID3D12Resource *pResource, UINT NumResourceRegions, - /* [annotation] */ _In_reads_opt_(NumResourceRegions) const D3D12_TILED_RESOURCE_COORDINATE *pResourceRegionStartCoordinates, - /* [annotation] */ _In_reads_opt_(NumResourceRegions) const D3D12_TILE_REGION_SIZE *pResourceRegionSizes, - /* [annotation] */ _In_opt_ ID3D12Heap *pHeap, UINT NumRanges, - /* [annotation] */ _In_reads_opt_(NumRanges) const D3D12_TILE_RANGE_FLAGS *pRangeFlags, - /* [annotation] */ _In_reads_opt_(NumRanges) const UINT *pHeapRangeStartOffsets, - /* [annotation] */ _In_reads_opt_(NumRanges) const UINT *pRangeTileCounts, D3D12_TILE_MAPPING_FLAGS Flags); DECLSPEC_XFGVIRT(ID3D12CommandQueue, CopyTileMappings) void ( STDMETHODCALLTYPE *CopyTileMappings )( ID3D12CommandQueue * This, - /* [annotation] */ _In_ ID3D12Resource *pDstResource, - /* [annotation] */ _In_ const D3D12_TILED_RESOURCE_COORDINATE *pDstRegionStartCoordinate, - /* [annotation] */ _In_ ID3D12Resource *pSrcResource, - /* [annotation] */ _In_ const D3D12_TILED_RESOURCE_COORDINATE *pSrcRegionStartCoordinate, - /* [annotation] */ _In_ const D3D12_TILE_REGION_SIZE *pRegionSize, D3D12_TILE_MAPPING_FLAGS Flags); DECLSPEC_XFGVIRT(ID3D12CommandQueue, ExecuteCommandLists) void ( STDMETHODCALLTYPE *ExecuteCommandLists )( ID3D12CommandQueue * This, - /* [annotation] */ _In_ UINT NumCommandLists, - /* [annotation] */ _In_reads_(NumCommandLists) ID3D12CommandList *const *ppCommandLists); DECLSPEC_XFGVIRT(ID3D12CommandQueue, SetMarker) void ( STDMETHODCALLTYPE *SetMarker )( ID3D12CommandQueue * This, UINT Metadata, - /* [annotation] */ _In_reads_bytes_opt_(Size) const void *pData, UINT Size); @@ -9282,7 +8524,6 @@ EXTERN_C const IID IID_ID3D12CommandQueue; void ( STDMETHODCALLTYPE *BeginEvent )( ID3D12CommandQueue * This, UINT Metadata, - /* [annotation] */ _In_reads_bytes_opt_(Size) const void *pData, UINT Size); @@ -9305,21 +8546,26 @@ EXTERN_C const IID IID_ID3D12CommandQueue; DECLSPEC_XFGVIRT(ID3D12CommandQueue, GetTimestampFrequency) HRESULT ( STDMETHODCALLTYPE *GetTimestampFrequency )( ID3D12CommandQueue * This, - /* [annotation] */ _Out_ UINT64 *pFrequency); DECLSPEC_XFGVIRT(ID3D12CommandQueue, GetClockCalibration) HRESULT ( STDMETHODCALLTYPE *GetClockCalibration )( ID3D12CommandQueue * This, - /* [annotation] */ _Out_ UINT64 *pGpuTimestamp, - /* [annotation] */ _Out_ UINT64 *pCpuTimestamp); DECLSPEC_XFGVIRT(ID3D12CommandQueue, GetDesc) +#if !defined(_WIN32) D3D12_COMMAND_QUEUE_DESC ( STDMETHODCALLTYPE *GetDesc )( ID3D12CommandQueue * This); +#else + D3D12_COMMAND_QUEUE_DESC *( STDMETHODCALLTYPE *GetDesc )( + ID3D12CommandQueue * This, + D3D12_COMMAND_QUEUE_DESC * RetVal); + +#endif + END_INTERFACE } ID3D12CommandQueueVtbl; @@ -9390,9 +8636,14 @@ EXTERN_C const IID IID_ID3D12CommandQueue; #define ID3D12CommandQueue_GetClockCalibration(This,pGpuTimestamp,pCpuTimestamp) \ ( (This)->lpVtbl -> GetClockCalibration(This,pGpuTimestamp,pCpuTimestamp) ) +#if !defined(_WIN32) #define ID3D12CommandQueue_GetDesc(This) \ ( (This)->lpVtbl -> GetDesc(This) ) +#else +#define ID3D12CommandQueue_GetDesc(This,RetVal) \ + ( (This)->lpVtbl -> GetDesc(This,RetVal) ) +#endif #endif /* COBJMACROS */ @@ -9401,17 +8652,6 @@ EXTERN_C const IID IID_ID3D12CommandQueue; -D3D12_COMMAND_QUEUE_DESC STDMETHODCALLTYPE ID3D12CommandQueue_GetDesc_Proxy( - ID3D12CommandQueue * This); - - -void __RPC_STUB ID3D12CommandQueue_GetDesc_Stub( - IRpcStubBuffer *This, - IRpcChannelBuffer *_pRpcChannelBuffer, - PRPC_MESSAGE _pRpcMessage, - DWORD *_pdwStubPhase); - - #endif /* __ID3D12CommandQueue_INTERFACE_DEFINED__ */ @@ -9455,234 +8695,164 @@ EXTERN_C const IID IID_ID3D12Device; virtual UINT STDMETHODCALLTYPE GetNodeCount( void) = 0; virtual HRESULT STDMETHODCALLTYPE CreateCommandQueue( - /* [annotation] */ _In_ const D3D12_COMMAND_QUEUE_DESC *pDesc, - /* [annotation][in] */ - _In_ REFIID riid, - /* [annotation][iid_is][out] */ + REFIID riid, _COM_Outptr_ void **ppCommandQueue) = 0; virtual HRESULT STDMETHODCALLTYPE CreateCommandAllocator( - /* [annotation] */ _In_ D3D12_COMMAND_LIST_TYPE type, - /* [annotation][in] */ - _In_ REFIID riid, - /* [annotation][iid_is][out] */ + REFIID riid, _COM_Outptr_ void **ppCommandAllocator) = 0; virtual HRESULT STDMETHODCALLTYPE CreateGraphicsPipelineState( - /* [annotation] */ _In_ const D3D12_GRAPHICS_PIPELINE_STATE_DESC *pDesc, - /* [annotation][in] */ - _In_ REFIID riid, - /* [annotation][iid_is][out] */ + REFIID riid, _COM_Outptr_ void **ppPipelineState) = 0; virtual HRESULT STDMETHODCALLTYPE CreateComputePipelineState( - /* [annotation] */ _In_ const D3D12_COMPUTE_PIPELINE_STATE_DESC *pDesc, - /* [annotation][in] */ - _In_ REFIID riid, - /* [annotation][iid_is][out] */ + REFIID riid, _COM_Outptr_ void **ppPipelineState) = 0; virtual HRESULT STDMETHODCALLTYPE CreateCommandList( - /* [annotation] */ _In_ UINT nodeMask, - /* [annotation] */ _In_ D3D12_COMMAND_LIST_TYPE type, - /* [annotation] */ _In_ ID3D12CommandAllocator *pCommandAllocator, - /* [annotation] */ _In_opt_ ID3D12PipelineState *pInitialState, - /* [annotation][in] */ - _In_ REFIID riid, - /* [annotation][iid_is][out] */ + REFIID riid, _COM_Outptr_ void **ppCommandList) = 0; virtual HRESULT STDMETHODCALLTYPE CheckFeatureSupport( D3D12_FEATURE Feature, - /* [annotation] */ _Inout_updates_bytes_(FeatureSupportDataSize) void *pFeatureSupportData, UINT FeatureSupportDataSize) = 0; virtual HRESULT STDMETHODCALLTYPE CreateDescriptorHeap( - /* [annotation] */ _In_ const D3D12_DESCRIPTOR_HEAP_DESC *pDescriptorHeapDesc, - /* [annotation][in] */ - _In_ REFIID riid, - /* [annotation][iid_is][out] */ + REFIID riid, _COM_Outptr_ void **ppvHeap) = 0; virtual UINT STDMETHODCALLTYPE GetDescriptorHandleIncrementSize( - /* [annotation] */ _In_ D3D12_DESCRIPTOR_HEAP_TYPE DescriptorHeapType) = 0; virtual HRESULT STDMETHODCALLTYPE CreateRootSignature( - /* [annotation] */ _In_ UINT nodeMask, - /* [annotation] */ _In_reads_(blobLengthInBytes) const void *pBlobWithRootSignature, - /* [annotation] */ _In_ SIZE_T blobLengthInBytes, - /* [annotation][in] */ - _In_ REFIID riid, - /* [annotation][iid_is][out] */ + REFIID riid, _COM_Outptr_ void **ppvRootSignature) = 0; virtual void STDMETHODCALLTYPE CreateConstantBufferView( - /* [annotation] */ _In_opt_ const D3D12_CONSTANT_BUFFER_VIEW_DESC *pDesc, - /* [annotation] */ _In_ D3D12_CPU_DESCRIPTOR_HANDLE DestDescriptor) = 0; virtual void STDMETHODCALLTYPE CreateShaderResourceView( - /* [annotation] */ _In_opt_ ID3D12Resource *pResource, - /* [annotation] */ _In_opt_ const D3D12_SHADER_RESOURCE_VIEW_DESC *pDesc, - /* [annotation] */ _In_ D3D12_CPU_DESCRIPTOR_HANDLE DestDescriptor) = 0; virtual void STDMETHODCALLTYPE CreateUnorderedAccessView( - /* [annotation] */ _In_opt_ ID3D12Resource *pResource, - /* [annotation] */ _In_opt_ ID3D12Resource *pCounterResource, - /* [annotation] */ _In_opt_ const D3D12_UNORDERED_ACCESS_VIEW_DESC *pDesc, - /* [annotation] */ _In_ D3D12_CPU_DESCRIPTOR_HANDLE DestDescriptor) = 0; virtual void STDMETHODCALLTYPE CreateRenderTargetView( - /* [annotation] */ _In_opt_ ID3D12Resource *pResource, - /* [annotation] */ _In_opt_ const D3D12_RENDER_TARGET_VIEW_DESC *pDesc, - /* [annotation] */ _In_ D3D12_CPU_DESCRIPTOR_HANDLE DestDescriptor) = 0; virtual void STDMETHODCALLTYPE CreateDepthStencilView( - /* [annotation] */ _In_opt_ ID3D12Resource *pResource, - /* [annotation] */ _In_opt_ const D3D12_DEPTH_STENCIL_VIEW_DESC *pDesc, - /* [annotation] */ _In_ D3D12_CPU_DESCRIPTOR_HANDLE DestDescriptor) = 0; virtual void STDMETHODCALLTYPE CreateSampler( - /* [annotation] */ _In_ const D3D12_SAMPLER_DESC *pDesc, - /* [annotation] */ _In_ D3D12_CPU_DESCRIPTOR_HANDLE DestDescriptor) = 0; virtual void STDMETHODCALLTYPE CopyDescriptors( - /* [annotation] */ _In_ UINT NumDestDescriptorRanges, - /* [annotation] */ _In_reads_(NumDestDescriptorRanges) const D3D12_CPU_DESCRIPTOR_HANDLE *pDestDescriptorRangeStarts, - /* [annotation] */ _In_reads_opt_(NumDestDescriptorRanges) const UINT *pDestDescriptorRangeSizes, - /* [annotation] */ _In_ UINT NumSrcDescriptorRanges, - /* [annotation] */ _In_reads_(NumSrcDescriptorRanges) const D3D12_CPU_DESCRIPTOR_HANDLE *pSrcDescriptorRangeStarts, - /* [annotation] */ _In_reads_opt_(NumSrcDescriptorRanges) const UINT *pSrcDescriptorRangeSizes, - /* [annotation] */ _In_ D3D12_DESCRIPTOR_HEAP_TYPE DescriptorHeapsType) = 0; virtual void STDMETHODCALLTYPE CopyDescriptorsSimple( - /* [annotation] */ _In_ UINT NumDescriptors, - /* [annotation] */ _In_ D3D12_CPU_DESCRIPTOR_HANDLE DestDescriptorRangeStart, - /* [annotation] */ _In_ D3D12_CPU_DESCRIPTOR_HANDLE SrcDescriptorRangeStart, - /* [annotation] */ _In_ D3D12_DESCRIPTOR_HEAP_TYPE DescriptorHeapsType) = 0; +#if defined(_MSC_VER) || !defined(_WIN32) virtual D3D12_RESOURCE_ALLOCATION_INFO STDMETHODCALLTYPE GetResourceAllocationInfo( - /* [annotation] */ _In_ UINT visibleMask, - /* [annotation] */ _In_ UINT numResourceDescs, - /* [annotation] */ _In_reads_(numResourceDescs) const D3D12_RESOURCE_DESC *pResourceDescs) = 0; +#else + virtual D3D12_RESOURCE_ALLOCATION_INFO *STDMETHODCALLTYPE GetResourceAllocationInfo( + D3D12_RESOURCE_ALLOCATION_INFO * RetVal, + _In_ UINT visibleMask, + _In_ UINT numResourceDescs, + _In_reads_(numResourceDescs) const D3D12_RESOURCE_DESC *pResourceDescs) = 0; +#endif +#if defined(_MSC_VER) || !defined(_WIN32) virtual D3D12_HEAP_PROPERTIES STDMETHODCALLTYPE GetCustomHeapProperties( - /* [annotation] */ _In_ UINT nodeMask, D3D12_HEAP_TYPE heapType) = 0; +#else + virtual D3D12_HEAP_PROPERTIES *STDMETHODCALLTYPE GetCustomHeapProperties( + D3D12_HEAP_PROPERTIES * RetVal, + _In_ UINT nodeMask, + D3D12_HEAP_TYPE heapType) = 0; +#endif virtual HRESULT STDMETHODCALLTYPE CreateCommittedResource( - /* [annotation] */ _In_ const D3D12_HEAP_PROPERTIES *pHeapProperties, D3D12_HEAP_FLAGS HeapFlags, - /* [annotation] */ _In_ const D3D12_RESOURCE_DESC *pDesc, D3D12_RESOURCE_STATES InitialResourceState, - /* [annotation] */ _In_opt_ const D3D12_CLEAR_VALUE *pOptimizedClearValue, - /* [annotation][in] */ - _In_ REFIID riidResource, - /* [annotation][iid_is][out] */ + REFIID riidResource, _COM_Outptr_opt_ void **ppvResource) = 0; virtual HRESULT STDMETHODCALLTYPE CreateHeap( - /* [annotation] */ _In_ const D3D12_HEAP_DESC *pDesc, - /* [annotation][in] */ - _In_ REFIID riid, - /* [annotation][iid_is][out] */ + REFIID riid, _COM_Outptr_opt_ void **ppvHeap) = 0; virtual HRESULT STDMETHODCALLTYPE CreatePlacedResource( - /* [annotation] */ _In_ ID3D12Heap *pHeap, UINT64 HeapOffset, - /* [annotation] */ _In_ const D3D12_RESOURCE_DESC *pDesc, D3D12_RESOURCE_STATES InitialState, - /* [annotation] */ _In_opt_ const D3D12_CLEAR_VALUE *pOptimizedClearValue, - /* [annotation][in] */ - _In_ REFIID riid, - /* [annotation][iid_is][out] */ + REFIID riid, _COM_Outptr_opt_ void **ppvResource) = 0; virtual HRESULT STDMETHODCALLTYPE CreateReservedResource( - /* [annotation] */ _In_ const D3D12_RESOURCE_DESC *pDesc, D3D12_RESOURCE_STATES InitialState, - /* [annotation] */ _In_opt_ const D3D12_CLEAR_VALUE *pOptimizedClearValue, - /* [annotation][in] */ - _In_ REFIID riid, - /* [annotation][iid_is][out] */ + REFIID riid, _COM_Outptr_opt_ void **ppvResource) = 0; virtual HRESULT STDMETHODCALLTYPE CreateSharedHandle( - /* [annotation] */ _In_ ID3D12DeviceChild *pObject, - /* [annotation] */ _In_opt_ const SECURITY_ATTRIBUTES *pAttributes, DWORD Access, - /* [annotation] */ _In_opt_ LPCWSTR Name, - /* [annotation] */ _Out_ HANDLE *pHandle) = 0; virtual HRESULT STDMETHODCALLTYPE OpenSharedHandle( - /* [annotation] */ _In_ HANDLE NTHandle, - /* [annotation][in] */ - _In_ REFIID riid, - /* [annotation][iid_is][out] */ + REFIID riid, _COM_Outptr_opt_ void **ppvObj) = 0; virtual HRESULT STDMETHODCALLTYPE OpenSharedHandleByName( - /* [annotation] */ _In_ LPCWSTR Name, DWORD Access, /* [annotation][out] */ @@ -9690,79 +8860,59 @@ EXTERN_C const IID IID_ID3D12Device; virtual HRESULT STDMETHODCALLTYPE MakeResident( UINT NumObjects, - /* [annotation] */ _In_reads_(NumObjects) ID3D12Pageable *const *ppObjects) = 0; virtual HRESULT STDMETHODCALLTYPE Evict( UINT NumObjects, - /* [annotation] */ _In_reads_(NumObjects) ID3D12Pageable *const *ppObjects) = 0; virtual HRESULT STDMETHODCALLTYPE CreateFence( UINT64 InitialValue, D3D12_FENCE_FLAGS Flags, - /* [annotation][in] */ - _In_ REFIID riid, - /* [annotation][iid_is][out] */ + REFIID riid, _COM_Outptr_ void **ppFence) = 0; virtual HRESULT STDMETHODCALLTYPE GetDeviceRemovedReason( void) = 0; virtual void STDMETHODCALLTYPE GetCopyableFootprints( - /* [annotation] */ _In_ const D3D12_RESOURCE_DESC *pResourceDesc, - /* [annotation] */ _In_range_(0,D3D12_REQ_SUBRESOURCES) UINT FirstSubresource, - /* [annotation] */ _In_range_(0,D3D12_REQ_SUBRESOURCES-FirstSubresource) UINT NumSubresources, UINT64 BaseOffset, - /* [annotation] */ _Out_writes_opt_(NumSubresources) D3D12_PLACED_SUBRESOURCE_FOOTPRINT *pLayouts, - /* [annotation] */ _Out_writes_opt_(NumSubresources) UINT *pNumRows, - /* [annotation] */ _Out_writes_opt_(NumSubresources) UINT64 *pRowSizeInBytes, - /* [annotation] */ _Out_opt_ UINT64 *pTotalBytes) = 0; virtual HRESULT STDMETHODCALLTYPE CreateQueryHeap( - /* [annotation] */ _In_ const D3D12_QUERY_HEAP_DESC *pDesc, - /* [annotation][in] */ - _In_ REFIID riid, - /* [annotation][iid_is][out] */ + REFIID riid, _COM_Outptr_opt_ void **ppvHeap) = 0; virtual HRESULT STDMETHODCALLTYPE SetStablePowerState( BOOL Enable) = 0; virtual HRESULT STDMETHODCALLTYPE CreateCommandSignature( - /* [annotation] */ _In_ const D3D12_COMMAND_SIGNATURE_DESC *pDesc, - /* [annotation] */ _In_opt_ ID3D12RootSignature *pRootSignature, - /* [annotation][in] */ - _In_ REFIID riid, - /* [annotation][iid_is][out] */ + REFIID riid, _COM_Outptr_opt_ void **ppvCommandSignature) = 0; virtual void STDMETHODCALLTYPE GetResourceTiling( - /* [annotation] */ _In_ ID3D12Resource *pTiledResource, - /* [annotation] */ _Out_opt_ UINT *pNumTilesForEntireResource, - /* [annotation] */ _Out_opt_ D3D12_PACKED_MIP_INFO *pPackedMipDesc, - /* [annotation] */ _Out_opt_ D3D12_TILE_SHAPE *pStandardTileShapeForNonPackedMips, - /* [annotation] */ _Inout_opt_ UINT *pNumSubresourceTilings, - /* [annotation] */ _In_ UINT FirstSubresourceTilingToGet, - /* [annotation] */ _Out_writes_(*pNumSubresourceTilings) D3D12_SUBRESOURCE_TILING *pSubresourceTilingsForNonPackedMips) = 0; +#if defined(_MSC_VER) || !defined(_WIN32) virtual LUID STDMETHODCALLTYPE GetAdapterLuid( void) = 0; +#else + virtual LUID *STDMETHODCALLTYPE GetAdapterLuid( + LUID * RetVal) = 0; +#endif }; @@ -9776,9 +8926,7 @@ EXTERN_C const IID IID_ID3D12Device; DECLSPEC_XFGVIRT(IUnknown, QueryInterface) HRESULT ( STDMETHODCALLTYPE *QueryInterface )( ID3D12Device * This, - /* [annotation][in] */ - _In_ REFIID riid, - /* [annotation][iid_is][out] */ + REFIID riid, _COM_Outptr_ void **ppvObject); DECLSPEC_XFGVIRT(IUnknown, AddRef) @@ -9792,35 +8940,26 @@ EXTERN_C const IID IID_ID3D12Device; DECLSPEC_XFGVIRT(ID3D12Object, GetPrivateData) HRESULT ( STDMETHODCALLTYPE *GetPrivateData )( ID3D12Device * This, - /* [annotation] */ _In_ REFGUID guid, - /* [annotation] */ _Inout_ UINT *pDataSize, - /* [annotation] */ _Out_writes_bytes_opt_( *pDataSize ) void *pData); DECLSPEC_XFGVIRT(ID3D12Object, SetPrivateData) HRESULT ( STDMETHODCALLTYPE *SetPrivateData )( ID3D12Device * This, - /* [annotation] */ _In_ REFGUID guid, - /* [annotation] */ _In_ UINT DataSize, - /* [annotation] */ _In_reads_bytes_opt_( DataSize ) const void *pData); DECLSPEC_XFGVIRT(ID3D12Object, SetPrivateDataInterface) HRESULT ( STDMETHODCALLTYPE *SetPrivateDataInterface )( ID3D12Device * This, - /* [annotation] */ _In_ REFGUID guid, - /* [annotation] */ _In_opt_ const IUnknown *pData); DECLSPEC_XFGVIRT(ID3D12Object, SetName) HRESULT ( STDMETHODCALLTYPE *SetName )( ID3D12Device * This, - /* [annotation] */ _In_z_ LPCWSTR Name); DECLSPEC_XFGVIRT(ID3D12Device, GetNodeCount) @@ -9830,284 +8969,220 @@ EXTERN_C const IID IID_ID3D12Device; DECLSPEC_XFGVIRT(ID3D12Device, CreateCommandQueue) HRESULT ( STDMETHODCALLTYPE *CreateCommandQueue )( ID3D12Device * This, - /* [annotation] */ _In_ const D3D12_COMMAND_QUEUE_DESC *pDesc, - /* [annotation][in] */ - _In_ REFIID riid, - /* [annotation][iid_is][out] */ + REFIID riid, _COM_Outptr_ void **ppCommandQueue); DECLSPEC_XFGVIRT(ID3D12Device, CreateCommandAllocator) HRESULT ( STDMETHODCALLTYPE *CreateCommandAllocator )( ID3D12Device * This, - /* [annotation] */ _In_ D3D12_COMMAND_LIST_TYPE type, - /* [annotation][in] */ - _In_ REFIID riid, - /* [annotation][iid_is][out] */ + REFIID riid, _COM_Outptr_ void **ppCommandAllocator); DECLSPEC_XFGVIRT(ID3D12Device, CreateGraphicsPipelineState) HRESULT ( STDMETHODCALLTYPE *CreateGraphicsPipelineState )( ID3D12Device * This, - /* [annotation] */ _In_ const D3D12_GRAPHICS_PIPELINE_STATE_DESC *pDesc, - /* [annotation][in] */ - _In_ REFIID riid, - /* [annotation][iid_is][out] */ + REFIID riid, _COM_Outptr_ void **ppPipelineState); DECLSPEC_XFGVIRT(ID3D12Device, CreateComputePipelineState) HRESULT ( STDMETHODCALLTYPE *CreateComputePipelineState )( ID3D12Device * This, - /* [annotation] */ _In_ const D3D12_COMPUTE_PIPELINE_STATE_DESC *pDesc, - /* [annotation][in] */ - _In_ REFIID riid, - /* [annotation][iid_is][out] */ + REFIID riid, _COM_Outptr_ void **ppPipelineState); DECLSPEC_XFGVIRT(ID3D12Device, CreateCommandList) HRESULT ( STDMETHODCALLTYPE *CreateCommandList )( ID3D12Device * This, - /* [annotation] */ _In_ UINT nodeMask, - /* [annotation] */ _In_ D3D12_COMMAND_LIST_TYPE type, - /* [annotation] */ _In_ ID3D12CommandAllocator *pCommandAllocator, - /* [annotation] */ _In_opt_ ID3D12PipelineState *pInitialState, - /* [annotation][in] */ - _In_ REFIID riid, - /* [annotation][iid_is][out] */ + REFIID riid, _COM_Outptr_ void **ppCommandList); DECLSPEC_XFGVIRT(ID3D12Device, CheckFeatureSupport) HRESULT ( STDMETHODCALLTYPE *CheckFeatureSupport )( ID3D12Device * This, D3D12_FEATURE Feature, - /* [annotation] */ _Inout_updates_bytes_(FeatureSupportDataSize) void *pFeatureSupportData, UINT FeatureSupportDataSize); DECLSPEC_XFGVIRT(ID3D12Device, CreateDescriptorHeap) HRESULT ( STDMETHODCALLTYPE *CreateDescriptorHeap )( ID3D12Device * This, - /* [annotation] */ _In_ const D3D12_DESCRIPTOR_HEAP_DESC *pDescriptorHeapDesc, - /* [annotation][in] */ - _In_ REFIID riid, - /* [annotation][iid_is][out] */ + REFIID riid, _COM_Outptr_ void **ppvHeap); DECLSPEC_XFGVIRT(ID3D12Device, GetDescriptorHandleIncrementSize) UINT ( STDMETHODCALLTYPE *GetDescriptorHandleIncrementSize )( ID3D12Device * This, - /* [annotation] */ _In_ D3D12_DESCRIPTOR_HEAP_TYPE DescriptorHeapType); DECLSPEC_XFGVIRT(ID3D12Device, CreateRootSignature) HRESULT ( STDMETHODCALLTYPE *CreateRootSignature )( ID3D12Device * This, - /* [annotation] */ _In_ UINT nodeMask, - /* [annotation] */ _In_reads_(blobLengthInBytes) const void *pBlobWithRootSignature, - /* [annotation] */ _In_ SIZE_T blobLengthInBytes, - /* [annotation][in] */ - _In_ REFIID riid, - /* [annotation][iid_is][out] */ + REFIID riid, _COM_Outptr_ void **ppvRootSignature); DECLSPEC_XFGVIRT(ID3D12Device, CreateConstantBufferView) void ( STDMETHODCALLTYPE *CreateConstantBufferView )( ID3D12Device * This, - /* [annotation] */ _In_opt_ const D3D12_CONSTANT_BUFFER_VIEW_DESC *pDesc, - /* [annotation] */ _In_ D3D12_CPU_DESCRIPTOR_HANDLE DestDescriptor); DECLSPEC_XFGVIRT(ID3D12Device, CreateShaderResourceView) void ( STDMETHODCALLTYPE *CreateShaderResourceView )( ID3D12Device * This, - /* [annotation] */ _In_opt_ ID3D12Resource *pResource, - /* [annotation] */ _In_opt_ const D3D12_SHADER_RESOURCE_VIEW_DESC *pDesc, - /* [annotation] */ _In_ D3D12_CPU_DESCRIPTOR_HANDLE DestDescriptor); DECLSPEC_XFGVIRT(ID3D12Device, CreateUnorderedAccessView) void ( STDMETHODCALLTYPE *CreateUnorderedAccessView )( ID3D12Device * This, - /* [annotation] */ _In_opt_ ID3D12Resource *pResource, - /* [annotation] */ _In_opt_ ID3D12Resource *pCounterResource, - /* [annotation] */ _In_opt_ const D3D12_UNORDERED_ACCESS_VIEW_DESC *pDesc, - /* [annotation] */ _In_ D3D12_CPU_DESCRIPTOR_HANDLE DestDescriptor); DECLSPEC_XFGVIRT(ID3D12Device, CreateRenderTargetView) void ( STDMETHODCALLTYPE *CreateRenderTargetView )( ID3D12Device * This, - /* [annotation] */ _In_opt_ ID3D12Resource *pResource, - /* [annotation] */ _In_opt_ const D3D12_RENDER_TARGET_VIEW_DESC *pDesc, - /* [annotation] */ _In_ D3D12_CPU_DESCRIPTOR_HANDLE DestDescriptor); DECLSPEC_XFGVIRT(ID3D12Device, CreateDepthStencilView) void ( STDMETHODCALLTYPE *CreateDepthStencilView )( ID3D12Device * This, - /* [annotation] */ _In_opt_ ID3D12Resource *pResource, - /* [annotation] */ _In_opt_ const D3D12_DEPTH_STENCIL_VIEW_DESC *pDesc, - /* [annotation] */ _In_ D3D12_CPU_DESCRIPTOR_HANDLE DestDescriptor); DECLSPEC_XFGVIRT(ID3D12Device, CreateSampler) void ( STDMETHODCALLTYPE *CreateSampler )( ID3D12Device * This, - /* [annotation] */ _In_ const D3D12_SAMPLER_DESC *pDesc, - /* [annotation] */ _In_ D3D12_CPU_DESCRIPTOR_HANDLE DestDescriptor); DECLSPEC_XFGVIRT(ID3D12Device, CopyDescriptors) void ( STDMETHODCALLTYPE *CopyDescriptors )( ID3D12Device * This, - /* [annotation] */ _In_ UINT NumDestDescriptorRanges, - /* [annotation] */ _In_reads_(NumDestDescriptorRanges) const D3D12_CPU_DESCRIPTOR_HANDLE *pDestDescriptorRangeStarts, - /* [annotation] */ _In_reads_opt_(NumDestDescriptorRanges) const UINT *pDestDescriptorRangeSizes, - /* [annotation] */ _In_ UINT NumSrcDescriptorRanges, - /* [annotation] */ _In_reads_(NumSrcDescriptorRanges) const D3D12_CPU_DESCRIPTOR_HANDLE *pSrcDescriptorRangeStarts, - /* [annotation] */ _In_reads_opt_(NumSrcDescriptorRanges) const UINT *pSrcDescriptorRangeSizes, - /* [annotation] */ _In_ D3D12_DESCRIPTOR_HEAP_TYPE DescriptorHeapsType); DECLSPEC_XFGVIRT(ID3D12Device, CopyDescriptorsSimple) void ( STDMETHODCALLTYPE *CopyDescriptorsSimple )( ID3D12Device * This, - /* [annotation] */ _In_ UINT NumDescriptors, - /* [annotation] */ _In_ D3D12_CPU_DESCRIPTOR_HANDLE DestDescriptorRangeStart, - /* [annotation] */ _In_ D3D12_CPU_DESCRIPTOR_HANDLE SrcDescriptorRangeStart, - /* [annotation] */ _In_ D3D12_DESCRIPTOR_HEAP_TYPE DescriptorHeapsType); DECLSPEC_XFGVIRT(ID3D12Device, GetResourceAllocationInfo) +#if !defined(_WIN32) D3D12_RESOURCE_ALLOCATION_INFO ( STDMETHODCALLTYPE *GetResourceAllocationInfo )( ID3D12Device * This, - /* [annotation] */ _In_ UINT visibleMask, - /* [annotation] */ _In_ UINT numResourceDescs, - /* [annotation] */ _In_reads_(numResourceDescs) const D3D12_RESOURCE_DESC *pResourceDescs); +#else + D3D12_RESOURCE_ALLOCATION_INFO *( STDMETHODCALLTYPE *GetResourceAllocationInfo )( + ID3D12Device * This, + D3D12_RESOURCE_ALLOCATION_INFO * RetVal, + _In_ UINT visibleMask, + _In_ UINT numResourceDescs, + _In_reads_(numResourceDescs) const D3D12_RESOURCE_DESC *pResourceDescs); + +#endif + DECLSPEC_XFGVIRT(ID3D12Device, GetCustomHeapProperties) +#if !defined(_WIN32) D3D12_HEAP_PROPERTIES ( STDMETHODCALLTYPE *GetCustomHeapProperties )( ID3D12Device * This, - /* [annotation] */ _In_ UINT nodeMask, D3D12_HEAP_TYPE heapType); +#else + D3D12_HEAP_PROPERTIES *( STDMETHODCALLTYPE *GetCustomHeapProperties )( + ID3D12Device * This, + D3D12_HEAP_PROPERTIES * RetVal, + _In_ UINT nodeMask, + D3D12_HEAP_TYPE heapType); + +#endif + DECLSPEC_XFGVIRT(ID3D12Device, CreateCommittedResource) HRESULT ( STDMETHODCALLTYPE *CreateCommittedResource )( ID3D12Device * This, - /* [annotation] */ _In_ const D3D12_HEAP_PROPERTIES *pHeapProperties, D3D12_HEAP_FLAGS HeapFlags, - /* [annotation] */ _In_ const D3D12_RESOURCE_DESC *pDesc, D3D12_RESOURCE_STATES InitialResourceState, - /* [annotation] */ _In_opt_ const D3D12_CLEAR_VALUE *pOptimizedClearValue, - /* [annotation][in] */ - _In_ REFIID riidResource, - /* [annotation][iid_is][out] */ + REFIID riidResource, _COM_Outptr_opt_ void **ppvResource); DECLSPEC_XFGVIRT(ID3D12Device, CreateHeap) HRESULT ( STDMETHODCALLTYPE *CreateHeap )( ID3D12Device * This, - /* [annotation] */ _In_ const D3D12_HEAP_DESC *pDesc, - /* [annotation][in] */ - _In_ REFIID riid, - /* [annotation][iid_is][out] */ + REFIID riid, _COM_Outptr_opt_ void **ppvHeap); DECLSPEC_XFGVIRT(ID3D12Device, CreatePlacedResource) HRESULT ( STDMETHODCALLTYPE *CreatePlacedResource )( ID3D12Device * This, - /* [annotation] */ _In_ ID3D12Heap *pHeap, UINT64 HeapOffset, - /* [annotation] */ _In_ const D3D12_RESOURCE_DESC *pDesc, D3D12_RESOURCE_STATES InitialState, - /* [annotation] */ _In_opt_ const D3D12_CLEAR_VALUE *pOptimizedClearValue, - /* [annotation][in] */ - _In_ REFIID riid, - /* [annotation][iid_is][out] */ + REFIID riid, _COM_Outptr_opt_ void **ppvResource); DECLSPEC_XFGVIRT(ID3D12Device, CreateReservedResource) HRESULT ( STDMETHODCALLTYPE *CreateReservedResource )( ID3D12Device * This, - /* [annotation] */ _In_ const D3D12_RESOURCE_DESC *pDesc, D3D12_RESOURCE_STATES InitialState, - /* [annotation] */ _In_opt_ const D3D12_CLEAR_VALUE *pOptimizedClearValue, - /* [annotation][in] */ - _In_ REFIID riid, - /* [annotation][iid_is][out] */ + REFIID riid, _COM_Outptr_opt_ void **ppvResource); DECLSPEC_XFGVIRT(ID3D12Device, CreateSharedHandle) HRESULT ( STDMETHODCALLTYPE *CreateSharedHandle )( ID3D12Device * This, - /* [annotation] */ _In_ ID3D12DeviceChild *pObject, - /* [annotation] */ _In_opt_ const SECURITY_ATTRIBUTES *pAttributes, DWORD Access, - /* [annotation] */ _In_opt_ LPCWSTR Name, - /* [annotation] */ _Out_ HANDLE *pHandle); DECLSPEC_XFGVIRT(ID3D12Device, OpenSharedHandle) HRESULT ( STDMETHODCALLTYPE *OpenSharedHandle )( ID3D12Device * This, - /* [annotation] */ _In_ HANDLE NTHandle, - /* [annotation][in] */ - _In_ REFIID riid, - /* [annotation][iid_is][out] */ + REFIID riid, _COM_Outptr_opt_ void **ppvObj); DECLSPEC_XFGVIRT(ID3D12Device, OpenSharedHandleByName) HRESULT ( STDMETHODCALLTYPE *OpenSharedHandleByName )( ID3D12Device * This, - /* [annotation] */ _In_ LPCWSTR Name, DWORD Access, /* [annotation][out] */ @@ -10117,14 +9192,12 @@ EXTERN_C const IID IID_ID3D12Device; HRESULT ( STDMETHODCALLTYPE *MakeResident )( ID3D12Device * This, UINT NumObjects, - /* [annotation] */ _In_reads_(NumObjects) ID3D12Pageable *const *ppObjects); DECLSPEC_XFGVIRT(ID3D12Device, Evict) HRESULT ( STDMETHODCALLTYPE *Evict )( ID3D12Device * This, UINT NumObjects, - /* [annotation] */ _In_reads_(NumObjects) ID3D12Pageable *const *ppObjects); DECLSPEC_XFGVIRT(ID3D12Device, CreateFence) @@ -10132,9 +9205,7 @@ EXTERN_C const IID IID_ID3D12Device; ID3D12Device * This, UINT64 InitialValue, D3D12_FENCE_FLAGS Flags, - /* [annotation][in] */ - _In_ REFIID riid, - /* [annotation][iid_is][out] */ + REFIID riid, _COM_Outptr_ void **ppFence); DECLSPEC_XFGVIRT(ID3D12Device, GetDeviceRemovedReason) @@ -10144,30 +9215,20 @@ EXTERN_C const IID IID_ID3D12Device; DECLSPEC_XFGVIRT(ID3D12Device, GetCopyableFootprints) void ( STDMETHODCALLTYPE *GetCopyableFootprints )( ID3D12Device * This, - /* [annotation] */ _In_ const D3D12_RESOURCE_DESC *pResourceDesc, - /* [annotation] */ _In_range_(0,D3D12_REQ_SUBRESOURCES) UINT FirstSubresource, - /* [annotation] */ _In_range_(0,D3D12_REQ_SUBRESOURCES-FirstSubresource) UINT NumSubresources, UINT64 BaseOffset, - /* [annotation] */ _Out_writes_opt_(NumSubresources) D3D12_PLACED_SUBRESOURCE_FOOTPRINT *pLayouts, - /* [annotation] */ _Out_writes_opt_(NumSubresources) UINT *pNumRows, - /* [annotation] */ _Out_writes_opt_(NumSubresources) UINT64 *pRowSizeInBytes, - /* [annotation] */ _Out_opt_ UINT64 *pTotalBytes); DECLSPEC_XFGVIRT(ID3D12Device, CreateQueryHeap) HRESULT ( STDMETHODCALLTYPE *CreateQueryHeap )( ID3D12Device * This, - /* [annotation] */ _In_ const D3D12_QUERY_HEAP_DESC *pDesc, - /* [annotation][in] */ - _In_ REFIID riid, - /* [annotation][iid_is][out] */ + REFIID riid, _COM_Outptr_opt_ void **ppvHeap); DECLSPEC_XFGVIRT(ID3D12Device, SetStablePowerState) @@ -10178,37 +9239,34 @@ EXTERN_C const IID IID_ID3D12Device; DECLSPEC_XFGVIRT(ID3D12Device, CreateCommandSignature) HRESULT ( STDMETHODCALLTYPE *CreateCommandSignature )( ID3D12Device * This, - /* [annotation] */ _In_ const D3D12_COMMAND_SIGNATURE_DESC *pDesc, - /* [annotation] */ _In_opt_ ID3D12RootSignature *pRootSignature, - /* [annotation][in] */ - _In_ REFIID riid, - /* [annotation][iid_is][out] */ + REFIID riid, _COM_Outptr_opt_ void **ppvCommandSignature); DECLSPEC_XFGVIRT(ID3D12Device, GetResourceTiling) void ( STDMETHODCALLTYPE *GetResourceTiling )( ID3D12Device * This, - /* [annotation] */ _In_ ID3D12Resource *pTiledResource, - /* [annotation] */ _Out_opt_ UINT *pNumTilesForEntireResource, - /* [annotation] */ _Out_opt_ D3D12_PACKED_MIP_INFO *pPackedMipDesc, - /* [annotation] */ _Out_opt_ D3D12_TILE_SHAPE *pStandardTileShapeForNonPackedMips, - /* [annotation] */ _Inout_opt_ UINT *pNumSubresourceTilings, - /* [annotation] */ _In_ UINT FirstSubresourceTilingToGet, - /* [annotation] */ _Out_writes_(*pNumSubresourceTilings) D3D12_SUBRESOURCE_TILING *pSubresourceTilingsForNonPackedMips); DECLSPEC_XFGVIRT(ID3D12Device, GetAdapterLuid) +#if !defined(_WIN32) LUID ( STDMETHODCALLTYPE *GetAdapterLuid )( ID3D12Device * This); +#else + LUID *( STDMETHODCALLTYPE *GetAdapterLuid )( + ID3D12Device * This, + LUID * RetVal); + +#endif + END_INTERFACE } ID3D12DeviceVtbl; @@ -10298,12 +9356,22 @@ EXTERN_C const IID IID_ID3D12Device; #define ID3D12Device_CopyDescriptorsSimple(This,NumDescriptors,DestDescriptorRangeStart,SrcDescriptorRangeStart,DescriptorHeapsType) \ ( (This)->lpVtbl -> CopyDescriptorsSimple(This,NumDescriptors,DestDescriptorRangeStart,SrcDescriptorRangeStart,DescriptorHeapsType) ) +#if !defined(_WIN32) #define ID3D12Device_GetResourceAllocationInfo(This,visibleMask,numResourceDescs,pResourceDescs) \ ( (This)->lpVtbl -> GetResourceAllocationInfo(This,visibleMask,numResourceDescs,pResourceDescs) ) +#else +#define ID3D12Device_GetResourceAllocationInfo(This,RetVal,visibleMask,numResourceDescs,pResourceDescs) \ + ( (This)->lpVtbl -> GetResourceAllocationInfo(This,RetVal,visibleMask,numResourceDescs,pResourceDescs) ) +#endif +#if !defined(_WIN32) #define ID3D12Device_GetCustomHeapProperties(This,nodeMask,heapType) \ ( (This)->lpVtbl -> GetCustomHeapProperties(This,nodeMask,heapType) ) +#else +#define ID3D12Device_GetCustomHeapProperties(This,RetVal,nodeMask,heapType) \ + ( (This)->lpVtbl -> GetCustomHeapProperties(This,RetVal,nodeMask,heapType) ) +#endif #define ID3D12Device_CreateCommittedResource(This,pHeapProperties,HeapFlags,pDesc,InitialResourceState,pOptimizedClearValue,riidResource,ppvResource) \ ( (This)->lpVtbl -> CreateCommittedResource(This,pHeapProperties,HeapFlags,pDesc,InitialResourceState,pOptimizedClearValue,riidResource,ppvResource) ) @@ -10352,9 +9420,14 @@ EXTERN_C const IID IID_ID3D12Device; #define ID3D12Device_GetResourceTiling(This,pTiledResource,pNumTilesForEntireResource,pPackedMipDesc,pStandardTileShapeForNonPackedMips,pNumSubresourceTilings,FirstSubresourceTilingToGet,pSubresourceTilingsForNonPackedMips) \ ( (This)->lpVtbl -> GetResourceTiling(This,pTiledResource,pNumTilesForEntireResource,pPackedMipDesc,pStandardTileShapeForNonPackedMips,pNumSubresourceTilings,FirstSubresourceTilingToGet,pSubresourceTilingsForNonPackedMips) ) +#if !defined(_WIN32) #define ID3D12Device_GetAdapterLuid(This) \ ( (This)->lpVtbl -> GetAdapterLuid(This) ) +#else +#define ID3D12Device_GetAdapterLuid(This,RetVal) \ + ( (This)->lpVtbl -> GetAdapterLuid(This,RetVal) ) +#endif #endif /* COBJMACROS */ @@ -10363,48 +9436,6 @@ EXTERN_C const IID IID_ID3D12Device; -D3D12_RESOURCE_ALLOCATION_INFO STDMETHODCALLTYPE ID3D12Device_GetResourceAllocationInfo_Proxy( - ID3D12Device * This, - /* [annotation] */ - _In_ UINT visibleMask, - /* [annotation] */ - _In_ UINT numResourceDescs, - /* [annotation] */ - _In_reads_(numResourceDescs) const D3D12_RESOURCE_DESC *pResourceDescs); - - -void __RPC_STUB ID3D12Device_GetResourceAllocationInfo_Stub( - IRpcStubBuffer *This, - IRpcChannelBuffer *_pRpcChannelBuffer, - PRPC_MESSAGE _pRpcMessage, - DWORD *_pdwStubPhase); - - -D3D12_HEAP_PROPERTIES STDMETHODCALLTYPE ID3D12Device_GetCustomHeapProperties_Proxy( - ID3D12Device * This, - /* [annotation] */ - _In_ UINT nodeMask, - D3D12_HEAP_TYPE heapType); - - -void __RPC_STUB ID3D12Device_GetCustomHeapProperties_Stub( - IRpcStubBuffer *This, - IRpcChannelBuffer *_pRpcChannelBuffer, - PRPC_MESSAGE _pRpcMessage, - DWORD *_pdwStubPhase); - - -LUID STDMETHODCALLTYPE ID3D12Device_GetAdapterLuid_Proxy( - ID3D12Device * This); - - -void __RPC_STUB ID3D12Device_GetAdapterLuid_Stub( - IRpcStubBuffer *This, - IRpcChannelBuffer *_pRpcChannelBuffer, - PRPC_MESSAGE _pRpcMessage, - DWORD *_pdwStubPhase); - - #endif /* __ID3D12Device_INTERFACE_DEFINED__ */ @@ -10425,35 +9456,24 @@ EXTERN_C const IID IID_ID3D12PipelineLibrary; { public: virtual HRESULT STDMETHODCALLTYPE StorePipeline( - /* [annotation] */ _In_opt_ LPCWSTR pName, - /* [annotation] */ _In_ ID3D12PipelineState *pPipeline) = 0; virtual HRESULT STDMETHODCALLTYPE LoadGraphicsPipeline( - /* [annotation] */ _In_ LPCWSTR pName, - /* [annotation] */ _In_ const D3D12_GRAPHICS_PIPELINE_STATE_DESC *pDesc, - /* [annotation][in] */ - _In_ REFIID riid, - /* [annotation][iid_is][out] */ + REFIID riid, _COM_Outptr_ void **ppPipelineState) = 0; virtual HRESULT STDMETHODCALLTYPE LoadComputePipeline( - /* [annotation] */ _In_ LPCWSTR pName, - /* [annotation] */ _In_ const D3D12_COMPUTE_PIPELINE_STATE_DESC *pDesc, - /* [annotation][in] */ - _In_ REFIID riid, - /* [annotation][iid_is][out] */ + REFIID riid, _COM_Outptr_ void **ppPipelineState) = 0; virtual SIZE_T STDMETHODCALLTYPE GetSerializedSize( void) = 0; virtual HRESULT STDMETHODCALLTYPE Serialize( - /* [annotation] */ _Out_writes_(DataSizeInBytes) void *pData, SIZE_T DataSizeInBytes) = 0; @@ -10469,9 +9489,7 @@ EXTERN_C const IID IID_ID3D12PipelineLibrary; DECLSPEC_XFGVIRT(IUnknown, QueryInterface) HRESULT ( STDMETHODCALLTYPE *QueryInterface )( ID3D12PipelineLibrary * This, - /* [annotation][in] */ - _In_ REFIID riid, - /* [annotation][iid_is][out] */ + REFIID riid, _COM_Outptr_ void **ppvObject); DECLSPEC_XFGVIRT(IUnknown, AddRef) @@ -10485,75 +9503,54 @@ EXTERN_C const IID IID_ID3D12PipelineLibrary; DECLSPEC_XFGVIRT(ID3D12Object, GetPrivateData) HRESULT ( STDMETHODCALLTYPE *GetPrivateData )( ID3D12PipelineLibrary * This, - /* [annotation] */ _In_ REFGUID guid, - /* [annotation] */ _Inout_ UINT *pDataSize, - /* [annotation] */ _Out_writes_bytes_opt_( *pDataSize ) void *pData); DECLSPEC_XFGVIRT(ID3D12Object, SetPrivateData) HRESULT ( STDMETHODCALLTYPE *SetPrivateData )( ID3D12PipelineLibrary * This, - /* [annotation] */ _In_ REFGUID guid, - /* [annotation] */ _In_ UINT DataSize, - /* [annotation] */ _In_reads_bytes_opt_( DataSize ) const void *pData); DECLSPEC_XFGVIRT(ID3D12Object, SetPrivateDataInterface) HRESULT ( STDMETHODCALLTYPE *SetPrivateDataInterface )( ID3D12PipelineLibrary * This, - /* [annotation] */ _In_ REFGUID guid, - /* [annotation] */ _In_opt_ const IUnknown *pData); DECLSPEC_XFGVIRT(ID3D12Object, SetName) HRESULT ( STDMETHODCALLTYPE *SetName )( ID3D12PipelineLibrary * This, - /* [annotation] */ _In_z_ LPCWSTR Name); DECLSPEC_XFGVIRT(ID3D12DeviceChild, GetDevice) HRESULT ( STDMETHODCALLTYPE *GetDevice )( ID3D12PipelineLibrary * This, - /* [annotation][in] */ - _In_ REFIID riid, - /* [annotation][iid_is][out] */ + REFIID riid, _COM_Outptr_opt_ void **ppvDevice); DECLSPEC_XFGVIRT(ID3D12PipelineLibrary, StorePipeline) HRESULT ( STDMETHODCALLTYPE *StorePipeline )( ID3D12PipelineLibrary * This, - /* [annotation] */ _In_opt_ LPCWSTR pName, - /* [annotation] */ _In_ ID3D12PipelineState *pPipeline); DECLSPEC_XFGVIRT(ID3D12PipelineLibrary, LoadGraphicsPipeline) HRESULT ( STDMETHODCALLTYPE *LoadGraphicsPipeline )( ID3D12PipelineLibrary * This, - /* [annotation] */ _In_ LPCWSTR pName, - /* [annotation] */ _In_ const D3D12_GRAPHICS_PIPELINE_STATE_DESC *pDesc, - /* [annotation][in] */ - _In_ REFIID riid, - /* [annotation][iid_is][out] */ + REFIID riid, _COM_Outptr_ void **ppPipelineState); DECLSPEC_XFGVIRT(ID3D12PipelineLibrary, LoadComputePipeline) HRESULT ( STDMETHODCALLTYPE *LoadComputePipeline )( ID3D12PipelineLibrary * This, - /* [annotation] */ _In_ LPCWSTR pName, - /* [annotation] */ _In_ const D3D12_COMPUTE_PIPELINE_STATE_DESC *pDesc, - /* [annotation][in] */ - _In_ REFIID riid, - /* [annotation][iid_is][out] */ + REFIID riid, _COM_Outptr_ void **ppPipelineState); DECLSPEC_XFGVIRT(ID3D12PipelineLibrary, GetSerializedSize) @@ -10563,7 +9560,6 @@ EXTERN_C const IID IID_ID3D12PipelineLibrary; DECLSPEC_XFGVIRT(ID3D12PipelineLibrary, Serialize) HRESULT ( STDMETHODCALLTYPE *Serialize )( ID3D12PipelineLibrary * This, - /* [annotation] */ _Out_writes_(DataSizeInBytes) void *pData, SIZE_T DataSizeInBytes); @@ -10649,13 +9645,9 @@ EXTERN_C const IID IID_ID3D12PipelineLibrary1; { public: virtual HRESULT STDMETHODCALLTYPE LoadPipeline( - /* [annotation] */ _In_ LPCWSTR pName, - /* [annotation] */ _In_ const D3D12_PIPELINE_STATE_STREAM_DESC *pDesc, - /* [annotation][in] */ - _In_ REFIID riid, - /* [annotation][iid_is][out] */ + REFIID riid, _COM_Outptr_ void **ppPipelineState) = 0; }; @@ -10670,9 +9662,7 @@ EXTERN_C const IID IID_ID3D12PipelineLibrary1; DECLSPEC_XFGVIRT(IUnknown, QueryInterface) HRESULT ( STDMETHODCALLTYPE *QueryInterface )( ID3D12PipelineLibrary1 * This, - /* [annotation][in] */ - _In_ REFIID riid, - /* [annotation][iid_is][out] */ + REFIID riid, _COM_Outptr_ void **ppvObject); DECLSPEC_XFGVIRT(IUnknown, AddRef) @@ -10686,75 +9676,54 @@ EXTERN_C const IID IID_ID3D12PipelineLibrary1; DECLSPEC_XFGVIRT(ID3D12Object, GetPrivateData) HRESULT ( STDMETHODCALLTYPE *GetPrivateData )( ID3D12PipelineLibrary1 * This, - /* [annotation] */ _In_ REFGUID guid, - /* [annotation] */ _Inout_ UINT *pDataSize, - /* [annotation] */ _Out_writes_bytes_opt_( *pDataSize ) void *pData); DECLSPEC_XFGVIRT(ID3D12Object, SetPrivateData) HRESULT ( STDMETHODCALLTYPE *SetPrivateData )( ID3D12PipelineLibrary1 * This, - /* [annotation] */ _In_ REFGUID guid, - /* [annotation] */ _In_ UINT DataSize, - /* [annotation] */ _In_reads_bytes_opt_( DataSize ) const void *pData); DECLSPEC_XFGVIRT(ID3D12Object, SetPrivateDataInterface) HRESULT ( STDMETHODCALLTYPE *SetPrivateDataInterface )( ID3D12PipelineLibrary1 * This, - /* [annotation] */ _In_ REFGUID guid, - /* [annotation] */ _In_opt_ const IUnknown *pData); DECLSPEC_XFGVIRT(ID3D12Object, SetName) HRESULT ( STDMETHODCALLTYPE *SetName )( ID3D12PipelineLibrary1 * This, - /* [annotation] */ _In_z_ LPCWSTR Name); DECLSPEC_XFGVIRT(ID3D12DeviceChild, GetDevice) HRESULT ( STDMETHODCALLTYPE *GetDevice )( ID3D12PipelineLibrary1 * This, - /* [annotation][in] */ - _In_ REFIID riid, - /* [annotation][iid_is][out] */ + REFIID riid, _COM_Outptr_opt_ void **ppvDevice); DECLSPEC_XFGVIRT(ID3D12PipelineLibrary, StorePipeline) HRESULT ( STDMETHODCALLTYPE *StorePipeline )( ID3D12PipelineLibrary1 * This, - /* [annotation] */ _In_opt_ LPCWSTR pName, - /* [annotation] */ _In_ ID3D12PipelineState *pPipeline); DECLSPEC_XFGVIRT(ID3D12PipelineLibrary, LoadGraphicsPipeline) HRESULT ( STDMETHODCALLTYPE *LoadGraphicsPipeline )( ID3D12PipelineLibrary1 * This, - /* [annotation] */ _In_ LPCWSTR pName, - /* [annotation] */ _In_ const D3D12_GRAPHICS_PIPELINE_STATE_DESC *pDesc, - /* [annotation][in] */ - _In_ REFIID riid, - /* [annotation][iid_is][out] */ + REFIID riid, _COM_Outptr_ void **ppPipelineState); DECLSPEC_XFGVIRT(ID3D12PipelineLibrary, LoadComputePipeline) HRESULT ( STDMETHODCALLTYPE *LoadComputePipeline )( ID3D12PipelineLibrary1 * This, - /* [annotation] */ _In_ LPCWSTR pName, - /* [annotation] */ _In_ const D3D12_COMPUTE_PIPELINE_STATE_DESC *pDesc, - /* [annotation][in] */ - _In_ REFIID riid, - /* [annotation][iid_is][out] */ + REFIID riid, _COM_Outptr_ void **ppPipelineState); DECLSPEC_XFGVIRT(ID3D12PipelineLibrary, GetSerializedSize) @@ -10764,20 +9733,15 @@ EXTERN_C const IID IID_ID3D12PipelineLibrary1; DECLSPEC_XFGVIRT(ID3D12PipelineLibrary, Serialize) HRESULT ( STDMETHODCALLTYPE *Serialize )( ID3D12PipelineLibrary1 * This, - /* [annotation] */ _Out_writes_(DataSizeInBytes) void *pData, SIZE_T DataSizeInBytes); DECLSPEC_XFGVIRT(ID3D12PipelineLibrary1, LoadPipeline) HRESULT ( STDMETHODCALLTYPE *LoadPipeline )( ID3D12PipelineLibrary1 * This, - /* [annotation] */ _In_ LPCWSTR pName, - /* [annotation] */ _In_ const D3D12_PIPELINE_STATE_STREAM_DESC *pDesc, - /* [annotation][in] */ - _In_ REFIID riid, - /* [annotation][iid_is][out] */ + REFIID riid, _COM_Outptr_ void **ppPipelineState); END_INTERFACE @@ -10893,18 +9857,13 @@ EXTERN_C const IID IID_ID3D12Device1; { public: virtual HRESULT STDMETHODCALLTYPE CreatePipelineLibrary( - /* [annotation] */ _In_reads_(BlobLength) const void *pLibraryBlob, SIZE_T BlobLength, - /* [annotation][in] */ - _In_ REFIID riid, - /* [annotation][iid_is][out] */ + REFIID riid, _COM_Outptr_ void **ppPipelineLibrary) = 0; virtual HRESULT STDMETHODCALLTYPE SetEventOnMultipleFenceCompletion( - /* [annotation] */ _In_reads_(NumFences) ID3D12Fence *const *ppFences, - /* [annotation] */ _In_reads_(NumFences) const UINT64 *pFenceValues, UINT NumFences, D3D12_MULTIPLE_FENCE_WAIT_FLAGS Flags, @@ -10912,9 +9871,7 @@ EXTERN_C const IID IID_ID3D12Device1; virtual HRESULT STDMETHODCALLTYPE SetResidencyPriority( UINT NumObjects, - /* [annotation] */ _In_reads_(NumObjects) ID3D12Pageable *const *ppObjects, - /* [annotation] */ _In_reads_(NumObjects) const D3D12_RESIDENCY_PRIORITY *pPriorities) = 0; }; @@ -10929,9 +9886,7 @@ EXTERN_C const IID IID_ID3D12Device1; DECLSPEC_XFGVIRT(IUnknown, QueryInterface) HRESULT ( STDMETHODCALLTYPE *QueryInterface )( ID3D12Device1 * This, - /* [annotation][in] */ - _In_ REFIID riid, - /* [annotation][iid_is][out] */ + REFIID riid, _COM_Outptr_ void **ppvObject); DECLSPEC_XFGVIRT(IUnknown, AddRef) @@ -10945,35 +9900,26 @@ EXTERN_C const IID IID_ID3D12Device1; DECLSPEC_XFGVIRT(ID3D12Object, GetPrivateData) HRESULT ( STDMETHODCALLTYPE *GetPrivateData )( ID3D12Device1 * This, - /* [annotation] */ _In_ REFGUID guid, - /* [annotation] */ _Inout_ UINT *pDataSize, - /* [annotation] */ _Out_writes_bytes_opt_( *pDataSize ) void *pData); DECLSPEC_XFGVIRT(ID3D12Object, SetPrivateData) HRESULT ( STDMETHODCALLTYPE *SetPrivateData )( ID3D12Device1 * This, - /* [annotation] */ _In_ REFGUID guid, - /* [annotation] */ _In_ UINT DataSize, - /* [annotation] */ _In_reads_bytes_opt_( DataSize ) const void *pData); DECLSPEC_XFGVIRT(ID3D12Object, SetPrivateDataInterface) HRESULT ( STDMETHODCALLTYPE *SetPrivateDataInterface )( ID3D12Device1 * This, - /* [annotation] */ _In_ REFGUID guid, - /* [annotation] */ _In_opt_ const IUnknown *pData); DECLSPEC_XFGVIRT(ID3D12Object, SetName) HRESULT ( STDMETHODCALLTYPE *SetName )( ID3D12Device1 * This, - /* [annotation] */ _In_z_ LPCWSTR Name); DECLSPEC_XFGVIRT(ID3D12Device, GetNodeCount) @@ -10983,284 +9929,220 @@ EXTERN_C const IID IID_ID3D12Device1; DECLSPEC_XFGVIRT(ID3D12Device, CreateCommandQueue) HRESULT ( STDMETHODCALLTYPE *CreateCommandQueue )( ID3D12Device1 * This, - /* [annotation] */ _In_ const D3D12_COMMAND_QUEUE_DESC *pDesc, - /* [annotation][in] */ - _In_ REFIID riid, - /* [annotation][iid_is][out] */ + REFIID riid, _COM_Outptr_ void **ppCommandQueue); DECLSPEC_XFGVIRT(ID3D12Device, CreateCommandAllocator) HRESULT ( STDMETHODCALLTYPE *CreateCommandAllocator )( ID3D12Device1 * This, - /* [annotation] */ _In_ D3D12_COMMAND_LIST_TYPE type, - /* [annotation][in] */ - _In_ REFIID riid, - /* [annotation][iid_is][out] */ + REFIID riid, _COM_Outptr_ void **ppCommandAllocator); DECLSPEC_XFGVIRT(ID3D12Device, CreateGraphicsPipelineState) HRESULT ( STDMETHODCALLTYPE *CreateGraphicsPipelineState )( ID3D12Device1 * This, - /* [annotation] */ _In_ const D3D12_GRAPHICS_PIPELINE_STATE_DESC *pDesc, - /* [annotation][in] */ - _In_ REFIID riid, - /* [annotation][iid_is][out] */ + REFIID riid, _COM_Outptr_ void **ppPipelineState); DECLSPEC_XFGVIRT(ID3D12Device, CreateComputePipelineState) HRESULT ( STDMETHODCALLTYPE *CreateComputePipelineState )( ID3D12Device1 * This, - /* [annotation] */ _In_ const D3D12_COMPUTE_PIPELINE_STATE_DESC *pDesc, - /* [annotation][in] */ - _In_ REFIID riid, - /* [annotation][iid_is][out] */ + REFIID riid, _COM_Outptr_ void **ppPipelineState); DECLSPEC_XFGVIRT(ID3D12Device, CreateCommandList) HRESULT ( STDMETHODCALLTYPE *CreateCommandList )( ID3D12Device1 * This, - /* [annotation] */ _In_ UINT nodeMask, - /* [annotation] */ _In_ D3D12_COMMAND_LIST_TYPE type, - /* [annotation] */ _In_ ID3D12CommandAllocator *pCommandAllocator, - /* [annotation] */ _In_opt_ ID3D12PipelineState *pInitialState, - /* [annotation][in] */ - _In_ REFIID riid, - /* [annotation][iid_is][out] */ + REFIID riid, _COM_Outptr_ void **ppCommandList); DECLSPEC_XFGVIRT(ID3D12Device, CheckFeatureSupport) HRESULT ( STDMETHODCALLTYPE *CheckFeatureSupport )( ID3D12Device1 * This, D3D12_FEATURE Feature, - /* [annotation] */ _Inout_updates_bytes_(FeatureSupportDataSize) void *pFeatureSupportData, UINT FeatureSupportDataSize); DECLSPEC_XFGVIRT(ID3D12Device, CreateDescriptorHeap) HRESULT ( STDMETHODCALLTYPE *CreateDescriptorHeap )( ID3D12Device1 * This, - /* [annotation] */ _In_ const D3D12_DESCRIPTOR_HEAP_DESC *pDescriptorHeapDesc, - /* [annotation][in] */ - _In_ REFIID riid, - /* [annotation][iid_is][out] */ + REFIID riid, _COM_Outptr_ void **ppvHeap); DECLSPEC_XFGVIRT(ID3D12Device, GetDescriptorHandleIncrementSize) UINT ( STDMETHODCALLTYPE *GetDescriptorHandleIncrementSize )( ID3D12Device1 * This, - /* [annotation] */ _In_ D3D12_DESCRIPTOR_HEAP_TYPE DescriptorHeapType); DECLSPEC_XFGVIRT(ID3D12Device, CreateRootSignature) HRESULT ( STDMETHODCALLTYPE *CreateRootSignature )( ID3D12Device1 * This, - /* [annotation] */ _In_ UINT nodeMask, - /* [annotation] */ _In_reads_(blobLengthInBytes) const void *pBlobWithRootSignature, - /* [annotation] */ _In_ SIZE_T blobLengthInBytes, - /* [annotation][in] */ - _In_ REFIID riid, - /* [annotation][iid_is][out] */ + REFIID riid, _COM_Outptr_ void **ppvRootSignature); DECLSPEC_XFGVIRT(ID3D12Device, CreateConstantBufferView) void ( STDMETHODCALLTYPE *CreateConstantBufferView )( ID3D12Device1 * This, - /* [annotation] */ _In_opt_ const D3D12_CONSTANT_BUFFER_VIEW_DESC *pDesc, - /* [annotation] */ _In_ D3D12_CPU_DESCRIPTOR_HANDLE DestDescriptor); DECLSPEC_XFGVIRT(ID3D12Device, CreateShaderResourceView) void ( STDMETHODCALLTYPE *CreateShaderResourceView )( ID3D12Device1 * This, - /* [annotation] */ _In_opt_ ID3D12Resource *pResource, - /* [annotation] */ _In_opt_ const D3D12_SHADER_RESOURCE_VIEW_DESC *pDesc, - /* [annotation] */ _In_ D3D12_CPU_DESCRIPTOR_HANDLE DestDescriptor); DECLSPEC_XFGVIRT(ID3D12Device, CreateUnorderedAccessView) void ( STDMETHODCALLTYPE *CreateUnorderedAccessView )( ID3D12Device1 * This, - /* [annotation] */ _In_opt_ ID3D12Resource *pResource, - /* [annotation] */ _In_opt_ ID3D12Resource *pCounterResource, - /* [annotation] */ _In_opt_ const D3D12_UNORDERED_ACCESS_VIEW_DESC *pDesc, - /* [annotation] */ _In_ D3D12_CPU_DESCRIPTOR_HANDLE DestDescriptor); DECLSPEC_XFGVIRT(ID3D12Device, CreateRenderTargetView) void ( STDMETHODCALLTYPE *CreateRenderTargetView )( ID3D12Device1 * This, - /* [annotation] */ _In_opt_ ID3D12Resource *pResource, - /* [annotation] */ _In_opt_ const D3D12_RENDER_TARGET_VIEW_DESC *pDesc, - /* [annotation] */ _In_ D3D12_CPU_DESCRIPTOR_HANDLE DestDescriptor); DECLSPEC_XFGVIRT(ID3D12Device, CreateDepthStencilView) void ( STDMETHODCALLTYPE *CreateDepthStencilView )( ID3D12Device1 * This, - /* [annotation] */ _In_opt_ ID3D12Resource *pResource, - /* [annotation] */ _In_opt_ const D3D12_DEPTH_STENCIL_VIEW_DESC *pDesc, - /* [annotation] */ _In_ D3D12_CPU_DESCRIPTOR_HANDLE DestDescriptor); DECLSPEC_XFGVIRT(ID3D12Device, CreateSampler) void ( STDMETHODCALLTYPE *CreateSampler )( ID3D12Device1 * This, - /* [annotation] */ _In_ const D3D12_SAMPLER_DESC *pDesc, - /* [annotation] */ _In_ D3D12_CPU_DESCRIPTOR_HANDLE DestDescriptor); DECLSPEC_XFGVIRT(ID3D12Device, CopyDescriptors) void ( STDMETHODCALLTYPE *CopyDescriptors )( ID3D12Device1 * This, - /* [annotation] */ _In_ UINT NumDestDescriptorRanges, - /* [annotation] */ _In_reads_(NumDestDescriptorRanges) const D3D12_CPU_DESCRIPTOR_HANDLE *pDestDescriptorRangeStarts, - /* [annotation] */ _In_reads_opt_(NumDestDescriptorRanges) const UINT *pDestDescriptorRangeSizes, - /* [annotation] */ _In_ UINT NumSrcDescriptorRanges, - /* [annotation] */ _In_reads_(NumSrcDescriptorRanges) const D3D12_CPU_DESCRIPTOR_HANDLE *pSrcDescriptorRangeStarts, - /* [annotation] */ _In_reads_opt_(NumSrcDescriptorRanges) const UINT *pSrcDescriptorRangeSizes, - /* [annotation] */ _In_ D3D12_DESCRIPTOR_HEAP_TYPE DescriptorHeapsType); DECLSPEC_XFGVIRT(ID3D12Device, CopyDescriptorsSimple) void ( STDMETHODCALLTYPE *CopyDescriptorsSimple )( ID3D12Device1 * This, - /* [annotation] */ _In_ UINT NumDescriptors, - /* [annotation] */ _In_ D3D12_CPU_DESCRIPTOR_HANDLE DestDescriptorRangeStart, - /* [annotation] */ _In_ D3D12_CPU_DESCRIPTOR_HANDLE SrcDescriptorRangeStart, - /* [annotation] */ _In_ D3D12_DESCRIPTOR_HEAP_TYPE DescriptorHeapsType); DECLSPEC_XFGVIRT(ID3D12Device, GetResourceAllocationInfo) +#if !defined(_WIN32) D3D12_RESOURCE_ALLOCATION_INFO ( STDMETHODCALLTYPE *GetResourceAllocationInfo )( ID3D12Device1 * This, - /* [annotation] */ _In_ UINT visibleMask, - /* [annotation] */ _In_ UINT numResourceDescs, - /* [annotation] */ _In_reads_(numResourceDescs) const D3D12_RESOURCE_DESC *pResourceDescs); +#else + D3D12_RESOURCE_ALLOCATION_INFO *( STDMETHODCALLTYPE *GetResourceAllocationInfo )( + ID3D12Device1 * This, + D3D12_RESOURCE_ALLOCATION_INFO * RetVal, + _In_ UINT visibleMask, + _In_ UINT numResourceDescs, + _In_reads_(numResourceDescs) const D3D12_RESOURCE_DESC *pResourceDescs); + +#endif + DECLSPEC_XFGVIRT(ID3D12Device, GetCustomHeapProperties) +#if !defined(_WIN32) D3D12_HEAP_PROPERTIES ( STDMETHODCALLTYPE *GetCustomHeapProperties )( ID3D12Device1 * This, - /* [annotation] */ _In_ UINT nodeMask, D3D12_HEAP_TYPE heapType); +#else + D3D12_HEAP_PROPERTIES *( STDMETHODCALLTYPE *GetCustomHeapProperties )( + ID3D12Device1 * This, + D3D12_HEAP_PROPERTIES * RetVal, + _In_ UINT nodeMask, + D3D12_HEAP_TYPE heapType); + +#endif + DECLSPEC_XFGVIRT(ID3D12Device, CreateCommittedResource) HRESULT ( STDMETHODCALLTYPE *CreateCommittedResource )( ID3D12Device1 * This, - /* [annotation] */ _In_ const D3D12_HEAP_PROPERTIES *pHeapProperties, D3D12_HEAP_FLAGS HeapFlags, - /* [annotation] */ _In_ const D3D12_RESOURCE_DESC *pDesc, D3D12_RESOURCE_STATES InitialResourceState, - /* [annotation] */ _In_opt_ const D3D12_CLEAR_VALUE *pOptimizedClearValue, - /* [annotation][in] */ - _In_ REFIID riidResource, - /* [annotation][iid_is][out] */ + REFIID riidResource, _COM_Outptr_opt_ void **ppvResource); DECLSPEC_XFGVIRT(ID3D12Device, CreateHeap) HRESULT ( STDMETHODCALLTYPE *CreateHeap )( ID3D12Device1 * This, - /* [annotation] */ _In_ const D3D12_HEAP_DESC *pDesc, - /* [annotation][in] */ - _In_ REFIID riid, - /* [annotation][iid_is][out] */ + REFIID riid, _COM_Outptr_opt_ void **ppvHeap); DECLSPEC_XFGVIRT(ID3D12Device, CreatePlacedResource) HRESULT ( STDMETHODCALLTYPE *CreatePlacedResource )( ID3D12Device1 * This, - /* [annotation] */ _In_ ID3D12Heap *pHeap, UINT64 HeapOffset, - /* [annotation] */ _In_ const D3D12_RESOURCE_DESC *pDesc, D3D12_RESOURCE_STATES InitialState, - /* [annotation] */ _In_opt_ const D3D12_CLEAR_VALUE *pOptimizedClearValue, - /* [annotation][in] */ - _In_ REFIID riid, - /* [annotation][iid_is][out] */ + REFIID riid, _COM_Outptr_opt_ void **ppvResource); DECLSPEC_XFGVIRT(ID3D12Device, CreateReservedResource) HRESULT ( STDMETHODCALLTYPE *CreateReservedResource )( ID3D12Device1 * This, - /* [annotation] */ _In_ const D3D12_RESOURCE_DESC *pDesc, D3D12_RESOURCE_STATES InitialState, - /* [annotation] */ _In_opt_ const D3D12_CLEAR_VALUE *pOptimizedClearValue, - /* [annotation][in] */ - _In_ REFIID riid, - /* [annotation][iid_is][out] */ + REFIID riid, _COM_Outptr_opt_ void **ppvResource); DECLSPEC_XFGVIRT(ID3D12Device, CreateSharedHandle) HRESULT ( STDMETHODCALLTYPE *CreateSharedHandle )( ID3D12Device1 * This, - /* [annotation] */ _In_ ID3D12DeviceChild *pObject, - /* [annotation] */ _In_opt_ const SECURITY_ATTRIBUTES *pAttributes, DWORD Access, - /* [annotation] */ _In_opt_ LPCWSTR Name, - /* [annotation] */ _Out_ HANDLE *pHandle); DECLSPEC_XFGVIRT(ID3D12Device, OpenSharedHandle) HRESULT ( STDMETHODCALLTYPE *OpenSharedHandle )( ID3D12Device1 * This, - /* [annotation] */ _In_ HANDLE NTHandle, - /* [annotation][in] */ - _In_ REFIID riid, - /* [annotation][iid_is][out] */ + REFIID riid, _COM_Outptr_opt_ void **ppvObj); DECLSPEC_XFGVIRT(ID3D12Device, OpenSharedHandleByName) HRESULT ( STDMETHODCALLTYPE *OpenSharedHandleByName )( ID3D12Device1 * This, - /* [annotation] */ _In_ LPCWSTR Name, DWORD Access, /* [annotation][out] */ @@ -11270,14 +10152,12 @@ EXTERN_C const IID IID_ID3D12Device1; HRESULT ( STDMETHODCALLTYPE *MakeResident )( ID3D12Device1 * This, UINT NumObjects, - /* [annotation] */ _In_reads_(NumObjects) ID3D12Pageable *const *ppObjects); DECLSPEC_XFGVIRT(ID3D12Device, Evict) HRESULT ( STDMETHODCALLTYPE *Evict )( ID3D12Device1 * This, UINT NumObjects, - /* [annotation] */ _In_reads_(NumObjects) ID3D12Pageable *const *ppObjects); DECLSPEC_XFGVIRT(ID3D12Device, CreateFence) @@ -11285,9 +10165,7 @@ EXTERN_C const IID IID_ID3D12Device1; ID3D12Device1 * This, UINT64 InitialValue, D3D12_FENCE_FLAGS Flags, - /* [annotation][in] */ - _In_ REFIID riid, - /* [annotation][iid_is][out] */ + REFIID riid, _COM_Outptr_ void **ppFence); DECLSPEC_XFGVIRT(ID3D12Device, GetDeviceRemovedReason) @@ -11297,30 +10175,20 @@ EXTERN_C const IID IID_ID3D12Device1; DECLSPEC_XFGVIRT(ID3D12Device, GetCopyableFootprints) void ( STDMETHODCALLTYPE *GetCopyableFootprints )( ID3D12Device1 * This, - /* [annotation] */ _In_ const D3D12_RESOURCE_DESC *pResourceDesc, - /* [annotation] */ _In_range_(0,D3D12_REQ_SUBRESOURCES) UINT FirstSubresource, - /* [annotation] */ _In_range_(0,D3D12_REQ_SUBRESOURCES-FirstSubresource) UINT NumSubresources, UINT64 BaseOffset, - /* [annotation] */ _Out_writes_opt_(NumSubresources) D3D12_PLACED_SUBRESOURCE_FOOTPRINT *pLayouts, - /* [annotation] */ _Out_writes_opt_(NumSubresources) UINT *pNumRows, - /* [annotation] */ _Out_writes_opt_(NumSubresources) UINT64 *pRowSizeInBytes, - /* [annotation] */ _Out_opt_ UINT64 *pTotalBytes); DECLSPEC_XFGVIRT(ID3D12Device, CreateQueryHeap) HRESULT ( STDMETHODCALLTYPE *CreateQueryHeap )( ID3D12Device1 * This, - /* [annotation] */ _In_ const D3D12_QUERY_HEAP_DESC *pDesc, - /* [annotation][in] */ - _In_ REFIID riid, - /* [annotation][iid_is][out] */ + REFIID riid, _COM_Outptr_opt_ void **ppvHeap); DECLSPEC_XFGVIRT(ID3D12Device, SetStablePowerState) @@ -11331,54 +10199,46 @@ EXTERN_C const IID IID_ID3D12Device1; DECLSPEC_XFGVIRT(ID3D12Device, CreateCommandSignature) HRESULT ( STDMETHODCALLTYPE *CreateCommandSignature )( ID3D12Device1 * This, - /* [annotation] */ _In_ const D3D12_COMMAND_SIGNATURE_DESC *pDesc, - /* [annotation] */ _In_opt_ ID3D12RootSignature *pRootSignature, - /* [annotation][in] */ - _In_ REFIID riid, - /* [annotation][iid_is][out] */ + REFIID riid, _COM_Outptr_opt_ void **ppvCommandSignature); DECLSPEC_XFGVIRT(ID3D12Device, GetResourceTiling) void ( STDMETHODCALLTYPE *GetResourceTiling )( ID3D12Device1 * This, - /* [annotation] */ _In_ ID3D12Resource *pTiledResource, - /* [annotation] */ _Out_opt_ UINT *pNumTilesForEntireResource, - /* [annotation] */ _Out_opt_ D3D12_PACKED_MIP_INFO *pPackedMipDesc, - /* [annotation] */ _Out_opt_ D3D12_TILE_SHAPE *pStandardTileShapeForNonPackedMips, - /* [annotation] */ _Inout_opt_ UINT *pNumSubresourceTilings, - /* [annotation] */ _In_ UINT FirstSubresourceTilingToGet, - /* [annotation] */ _Out_writes_(*pNumSubresourceTilings) D3D12_SUBRESOURCE_TILING *pSubresourceTilingsForNonPackedMips); DECLSPEC_XFGVIRT(ID3D12Device, GetAdapterLuid) +#if !defined(_WIN32) LUID ( STDMETHODCALLTYPE *GetAdapterLuid )( ID3D12Device1 * This); +#else + LUID *( STDMETHODCALLTYPE *GetAdapterLuid )( + ID3D12Device1 * This, + LUID * RetVal); + +#endif + DECLSPEC_XFGVIRT(ID3D12Device1, CreatePipelineLibrary) HRESULT ( STDMETHODCALLTYPE *CreatePipelineLibrary )( ID3D12Device1 * This, - /* [annotation] */ _In_reads_(BlobLength) const void *pLibraryBlob, SIZE_T BlobLength, - /* [annotation][in] */ - _In_ REFIID riid, - /* [annotation][iid_is][out] */ + REFIID riid, _COM_Outptr_ void **ppPipelineLibrary); DECLSPEC_XFGVIRT(ID3D12Device1, SetEventOnMultipleFenceCompletion) HRESULT ( STDMETHODCALLTYPE *SetEventOnMultipleFenceCompletion )( ID3D12Device1 * This, - /* [annotation] */ _In_reads_(NumFences) ID3D12Fence *const *ppFences, - /* [annotation] */ _In_reads_(NumFences) const UINT64 *pFenceValues, UINT NumFences, D3D12_MULTIPLE_FENCE_WAIT_FLAGS Flags, @@ -11388,9 +10248,7 @@ EXTERN_C const IID IID_ID3D12Device1; HRESULT ( STDMETHODCALLTYPE *SetResidencyPriority )( ID3D12Device1 * This, UINT NumObjects, - /* [annotation] */ _In_reads_(NumObjects) ID3D12Pageable *const *ppObjects, - /* [annotation] */ _In_reads_(NumObjects) const D3D12_RESIDENCY_PRIORITY *pPriorities); END_INTERFACE @@ -11482,12 +10340,22 @@ EXTERN_C const IID IID_ID3D12Device1; #define ID3D12Device1_CopyDescriptorsSimple(This,NumDescriptors,DestDescriptorRangeStart,SrcDescriptorRangeStart,DescriptorHeapsType) \ ( (This)->lpVtbl -> CopyDescriptorsSimple(This,NumDescriptors,DestDescriptorRangeStart,SrcDescriptorRangeStart,DescriptorHeapsType) ) +#if !defined(_WIN32) #define ID3D12Device1_GetResourceAllocationInfo(This,visibleMask,numResourceDescs,pResourceDescs) \ ( (This)->lpVtbl -> GetResourceAllocationInfo(This,visibleMask,numResourceDescs,pResourceDescs) ) +#else +#define ID3D12Device1_GetResourceAllocationInfo(This,RetVal,visibleMask,numResourceDescs,pResourceDescs) \ + ( (This)->lpVtbl -> GetResourceAllocationInfo(This,RetVal,visibleMask,numResourceDescs,pResourceDescs) ) +#endif +#if !defined(_WIN32) #define ID3D12Device1_GetCustomHeapProperties(This,nodeMask,heapType) \ ( (This)->lpVtbl -> GetCustomHeapProperties(This,nodeMask,heapType) ) +#else +#define ID3D12Device1_GetCustomHeapProperties(This,RetVal,nodeMask,heapType) \ + ( (This)->lpVtbl -> GetCustomHeapProperties(This,RetVal,nodeMask,heapType) ) +#endif #define ID3D12Device1_CreateCommittedResource(This,pHeapProperties,HeapFlags,pDesc,InitialResourceState,pOptimizedClearValue,riidResource,ppvResource) \ ( (This)->lpVtbl -> CreateCommittedResource(This,pHeapProperties,HeapFlags,pDesc,InitialResourceState,pOptimizedClearValue,riidResource,ppvResource) ) @@ -11536,9 +10404,14 @@ EXTERN_C const IID IID_ID3D12Device1; #define ID3D12Device1_GetResourceTiling(This,pTiledResource,pNumTilesForEntireResource,pPackedMipDesc,pStandardTileShapeForNonPackedMips,pNumSubresourceTilings,FirstSubresourceTilingToGet,pSubresourceTilingsForNonPackedMips) \ ( (This)->lpVtbl -> GetResourceTiling(This,pTiledResource,pNumTilesForEntireResource,pPackedMipDesc,pStandardTileShapeForNonPackedMips,pNumSubresourceTilings,FirstSubresourceTilingToGet,pSubresourceTilingsForNonPackedMips) ) +#if !defined(_WIN32) #define ID3D12Device1_GetAdapterLuid(This) \ ( (This)->lpVtbl -> GetAdapterLuid(This) ) +#else +#define ID3D12Device1_GetAdapterLuid(This,RetVal) \ + ( (This)->lpVtbl -> GetAdapterLuid(This,RetVal) ) +#endif #define ID3D12Device1_CreatePipelineLibrary(This,pLibraryBlob,BlobLength,riid,ppPipelineLibrary) \ @@ -11577,11 +10450,8 @@ EXTERN_C const IID IID_ID3D12Device2; { public: virtual HRESULT STDMETHODCALLTYPE CreatePipelineState( - /* [annotation][in] */ - _In_ const D3D12_PIPELINE_STATE_STREAM_DESC *pDesc, - /* [annotation][in] */ - _In_ REFIID riid, - /* [annotation][iid_is][out] */ + const D3D12_PIPELINE_STATE_STREAM_DESC *pDesc, + REFIID riid, _COM_Outptr_ void **ppPipelineState) = 0; }; @@ -11596,9 +10466,7 @@ EXTERN_C const IID IID_ID3D12Device2; DECLSPEC_XFGVIRT(IUnknown, QueryInterface) HRESULT ( STDMETHODCALLTYPE *QueryInterface )( ID3D12Device2 * This, - /* [annotation][in] */ - _In_ REFIID riid, - /* [annotation][iid_is][out] */ + REFIID riid, _COM_Outptr_ void **ppvObject); DECLSPEC_XFGVIRT(IUnknown, AddRef) @@ -11612,35 +10480,26 @@ EXTERN_C const IID IID_ID3D12Device2; DECLSPEC_XFGVIRT(ID3D12Object, GetPrivateData) HRESULT ( STDMETHODCALLTYPE *GetPrivateData )( ID3D12Device2 * This, - /* [annotation] */ _In_ REFGUID guid, - /* [annotation] */ _Inout_ UINT *pDataSize, - /* [annotation] */ _Out_writes_bytes_opt_( *pDataSize ) void *pData); DECLSPEC_XFGVIRT(ID3D12Object, SetPrivateData) HRESULT ( STDMETHODCALLTYPE *SetPrivateData )( ID3D12Device2 * This, - /* [annotation] */ _In_ REFGUID guid, - /* [annotation] */ _In_ UINT DataSize, - /* [annotation] */ _In_reads_bytes_opt_( DataSize ) const void *pData); DECLSPEC_XFGVIRT(ID3D12Object, SetPrivateDataInterface) HRESULT ( STDMETHODCALLTYPE *SetPrivateDataInterface )( ID3D12Device2 * This, - /* [annotation] */ _In_ REFGUID guid, - /* [annotation] */ _In_opt_ const IUnknown *pData); DECLSPEC_XFGVIRT(ID3D12Object, SetName) HRESULT ( STDMETHODCALLTYPE *SetName )( ID3D12Device2 * This, - /* [annotation] */ _In_z_ LPCWSTR Name); DECLSPEC_XFGVIRT(ID3D12Device, GetNodeCount) @@ -11650,284 +10509,220 @@ EXTERN_C const IID IID_ID3D12Device2; DECLSPEC_XFGVIRT(ID3D12Device, CreateCommandQueue) HRESULT ( STDMETHODCALLTYPE *CreateCommandQueue )( ID3D12Device2 * This, - /* [annotation] */ _In_ const D3D12_COMMAND_QUEUE_DESC *pDesc, - /* [annotation][in] */ - _In_ REFIID riid, - /* [annotation][iid_is][out] */ + REFIID riid, _COM_Outptr_ void **ppCommandQueue); DECLSPEC_XFGVIRT(ID3D12Device, CreateCommandAllocator) HRESULT ( STDMETHODCALLTYPE *CreateCommandAllocator )( ID3D12Device2 * This, - /* [annotation] */ _In_ D3D12_COMMAND_LIST_TYPE type, - /* [annotation][in] */ - _In_ REFIID riid, - /* [annotation][iid_is][out] */ + REFIID riid, _COM_Outptr_ void **ppCommandAllocator); DECLSPEC_XFGVIRT(ID3D12Device, CreateGraphicsPipelineState) HRESULT ( STDMETHODCALLTYPE *CreateGraphicsPipelineState )( ID3D12Device2 * This, - /* [annotation] */ _In_ const D3D12_GRAPHICS_PIPELINE_STATE_DESC *pDesc, - /* [annotation][in] */ - _In_ REFIID riid, - /* [annotation][iid_is][out] */ + REFIID riid, _COM_Outptr_ void **ppPipelineState); DECLSPEC_XFGVIRT(ID3D12Device, CreateComputePipelineState) HRESULT ( STDMETHODCALLTYPE *CreateComputePipelineState )( ID3D12Device2 * This, - /* [annotation] */ _In_ const D3D12_COMPUTE_PIPELINE_STATE_DESC *pDesc, - /* [annotation][in] */ - _In_ REFIID riid, - /* [annotation][iid_is][out] */ + REFIID riid, _COM_Outptr_ void **ppPipelineState); DECLSPEC_XFGVIRT(ID3D12Device, CreateCommandList) HRESULT ( STDMETHODCALLTYPE *CreateCommandList )( ID3D12Device2 * This, - /* [annotation] */ _In_ UINT nodeMask, - /* [annotation] */ _In_ D3D12_COMMAND_LIST_TYPE type, - /* [annotation] */ _In_ ID3D12CommandAllocator *pCommandAllocator, - /* [annotation] */ _In_opt_ ID3D12PipelineState *pInitialState, - /* [annotation][in] */ - _In_ REFIID riid, - /* [annotation][iid_is][out] */ + REFIID riid, _COM_Outptr_ void **ppCommandList); DECLSPEC_XFGVIRT(ID3D12Device, CheckFeatureSupport) HRESULT ( STDMETHODCALLTYPE *CheckFeatureSupport )( ID3D12Device2 * This, D3D12_FEATURE Feature, - /* [annotation] */ _Inout_updates_bytes_(FeatureSupportDataSize) void *pFeatureSupportData, UINT FeatureSupportDataSize); DECLSPEC_XFGVIRT(ID3D12Device, CreateDescriptorHeap) HRESULT ( STDMETHODCALLTYPE *CreateDescriptorHeap )( ID3D12Device2 * This, - /* [annotation] */ _In_ const D3D12_DESCRIPTOR_HEAP_DESC *pDescriptorHeapDesc, - /* [annotation][in] */ - _In_ REFIID riid, - /* [annotation][iid_is][out] */ + REFIID riid, _COM_Outptr_ void **ppvHeap); DECLSPEC_XFGVIRT(ID3D12Device, GetDescriptorHandleIncrementSize) UINT ( STDMETHODCALLTYPE *GetDescriptorHandleIncrementSize )( ID3D12Device2 * This, - /* [annotation] */ _In_ D3D12_DESCRIPTOR_HEAP_TYPE DescriptorHeapType); DECLSPEC_XFGVIRT(ID3D12Device, CreateRootSignature) HRESULT ( STDMETHODCALLTYPE *CreateRootSignature )( ID3D12Device2 * This, - /* [annotation] */ _In_ UINT nodeMask, - /* [annotation] */ _In_reads_(blobLengthInBytes) const void *pBlobWithRootSignature, - /* [annotation] */ _In_ SIZE_T blobLengthInBytes, - /* [annotation][in] */ - _In_ REFIID riid, - /* [annotation][iid_is][out] */ + REFIID riid, _COM_Outptr_ void **ppvRootSignature); DECLSPEC_XFGVIRT(ID3D12Device, CreateConstantBufferView) void ( STDMETHODCALLTYPE *CreateConstantBufferView )( ID3D12Device2 * This, - /* [annotation] */ _In_opt_ const D3D12_CONSTANT_BUFFER_VIEW_DESC *pDesc, - /* [annotation] */ _In_ D3D12_CPU_DESCRIPTOR_HANDLE DestDescriptor); DECLSPEC_XFGVIRT(ID3D12Device, CreateShaderResourceView) void ( STDMETHODCALLTYPE *CreateShaderResourceView )( ID3D12Device2 * This, - /* [annotation] */ _In_opt_ ID3D12Resource *pResource, - /* [annotation] */ _In_opt_ const D3D12_SHADER_RESOURCE_VIEW_DESC *pDesc, - /* [annotation] */ _In_ D3D12_CPU_DESCRIPTOR_HANDLE DestDescriptor); DECLSPEC_XFGVIRT(ID3D12Device, CreateUnorderedAccessView) void ( STDMETHODCALLTYPE *CreateUnorderedAccessView )( ID3D12Device2 * This, - /* [annotation] */ _In_opt_ ID3D12Resource *pResource, - /* [annotation] */ _In_opt_ ID3D12Resource *pCounterResource, - /* [annotation] */ _In_opt_ const D3D12_UNORDERED_ACCESS_VIEW_DESC *pDesc, - /* [annotation] */ _In_ D3D12_CPU_DESCRIPTOR_HANDLE DestDescriptor); DECLSPEC_XFGVIRT(ID3D12Device, CreateRenderTargetView) void ( STDMETHODCALLTYPE *CreateRenderTargetView )( ID3D12Device2 * This, - /* [annotation] */ _In_opt_ ID3D12Resource *pResource, - /* [annotation] */ _In_opt_ const D3D12_RENDER_TARGET_VIEW_DESC *pDesc, - /* [annotation] */ _In_ D3D12_CPU_DESCRIPTOR_HANDLE DestDescriptor); DECLSPEC_XFGVIRT(ID3D12Device, CreateDepthStencilView) void ( STDMETHODCALLTYPE *CreateDepthStencilView )( ID3D12Device2 * This, - /* [annotation] */ _In_opt_ ID3D12Resource *pResource, - /* [annotation] */ _In_opt_ const D3D12_DEPTH_STENCIL_VIEW_DESC *pDesc, - /* [annotation] */ _In_ D3D12_CPU_DESCRIPTOR_HANDLE DestDescriptor); DECLSPEC_XFGVIRT(ID3D12Device, CreateSampler) void ( STDMETHODCALLTYPE *CreateSampler )( ID3D12Device2 * This, - /* [annotation] */ _In_ const D3D12_SAMPLER_DESC *pDesc, - /* [annotation] */ _In_ D3D12_CPU_DESCRIPTOR_HANDLE DestDescriptor); DECLSPEC_XFGVIRT(ID3D12Device, CopyDescriptors) void ( STDMETHODCALLTYPE *CopyDescriptors )( ID3D12Device2 * This, - /* [annotation] */ _In_ UINT NumDestDescriptorRanges, - /* [annotation] */ _In_reads_(NumDestDescriptorRanges) const D3D12_CPU_DESCRIPTOR_HANDLE *pDestDescriptorRangeStarts, - /* [annotation] */ _In_reads_opt_(NumDestDescriptorRanges) const UINT *pDestDescriptorRangeSizes, - /* [annotation] */ _In_ UINT NumSrcDescriptorRanges, - /* [annotation] */ _In_reads_(NumSrcDescriptorRanges) const D3D12_CPU_DESCRIPTOR_HANDLE *pSrcDescriptorRangeStarts, - /* [annotation] */ _In_reads_opt_(NumSrcDescriptorRanges) const UINT *pSrcDescriptorRangeSizes, - /* [annotation] */ _In_ D3D12_DESCRIPTOR_HEAP_TYPE DescriptorHeapsType); DECLSPEC_XFGVIRT(ID3D12Device, CopyDescriptorsSimple) void ( STDMETHODCALLTYPE *CopyDescriptorsSimple )( ID3D12Device2 * This, - /* [annotation] */ _In_ UINT NumDescriptors, - /* [annotation] */ _In_ D3D12_CPU_DESCRIPTOR_HANDLE DestDescriptorRangeStart, - /* [annotation] */ _In_ D3D12_CPU_DESCRIPTOR_HANDLE SrcDescriptorRangeStart, - /* [annotation] */ _In_ D3D12_DESCRIPTOR_HEAP_TYPE DescriptorHeapsType); DECLSPEC_XFGVIRT(ID3D12Device, GetResourceAllocationInfo) +#if !defined(_WIN32) D3D12_RESOURCE_ALLOCATION_INFO ( STDMETHODCALLTYPE *GetResourceAllocationInfo )( ID3D12Device2 * This, - /* [annotation] */ _In_ UINT visibleMask, - /* [annotation] */ _In_ UINT numResourceDescs, - /* [annotation] */ _In_reads_(numResourceDescs) const D3D12_RESOURCE_DESC *pResourceDescs); +#else + D3D12_RESOURCE_ALLOCATION_INFO *( STDMETHODCALLTYPE *GetResourceAllocationInfo )( + ID3D12Device2 * This, + D3D12_RESOURCE_ALLOCATION_INFO * RetVal, + _In_ UINT visibleMask, + _In_ UINT numResourceDescs, + _In_reads_(numResourceDescs) const D3D12_RESOURCE_DESC *pResourceDescs); + +#endif + DECLSPEC_XFGVIRT(ID3D12Device, GetCustomHeapProperties) +#if !defined(_WIN32) D3D12_HEAP_PROPERTIES ( STDMETHODCALLTYPE *GetCustomHeapProperties )( ID3D12Device2 * This, - /* [annotation] */ _In_ UINT nodeMask, D3D12_HEAP_TYPE heapType); +#else + D3D12_HEAP_PROPERTIES *( STDMETHODCALLTYPE *GetCustomHeapProperties )( + ID3D12Device2 * This, + D3D12_HEAP_PROPERTIES * RetVal, + _In_ UINT nodeMask, + D3D12_HEAP_TYPE heapType); + +#endif + DECLSPEC_XFGVIRT(ID3D12Device, CreateCommittedResource) HRESULT ( STDMETHODCALLTYPE *CreateCommittedResource )( ID3D12Device2 * This, - /* [annotation] */ _In_ const D3D12_HEAP_PROPERTIES *pHeapProperties, D3D12_HEAP_FLAGS HeapFlags, - /* [annotation] */ _In_ const D3D12_RESOURCE_DESC *pDesc, D3D12_RESOURCE_STATES InitialResourceState, - /* [annotation] */ _In_opt_ const D3D12_CLEAR_VALUE *pOptimizedClearValue, - /* [annotation][in] */ - _In_ REFIID riidResource, - /* [annotation][iid_is][out] */ + REFIID riidResource, _COM_Outptr_opt_ void **ppvResource); DECLSPEC_XFGVIRT(ID3D12Device, CreateHeap) HRESULT ( STDMETHODCALLTYPE *CreateHeap )( ID3D12Device2 * This, - /* [annotation] */ _In_ const D3D12_HEAP_DESC *pDesc, - /* [annotation][in] */ - _In_ REFIID riid, - /* [annotation][iid_is][out] */ + REFIID riid, _COM_Outptr_opt_ void **ppvHeap); DECLSPEC_XFGVIRT(ID3D12Device, CreatePlacedResource) HRESULT ( STDMETHODCALLTYPE *CreatePlacedResource )( ID3D12Device2 * This, - /* [annotation] */ _In_ ID3D12Heap *pHeap, UINT64 HeapOffset, - /* [annotation] */ _In_ const D3D12_RESOURCE_DESC *pDesc, D3D12_RESOURCE_STATES InitialState, - /* [annotation] */ _In_opt_ const D3D12_CLEAR_VALUE *pOptimizedClearValue, - /* [annotation][in] */ - _In_ REFIID riid, - /* [annotation][iid_is][out] */ + REFIID riid, _COM_Outptr_opt_ void **ppvResource); DECLSPEC_XFGVIRT(ID3D12Device, CreateReservedResource) HRESULT ( STDMETHODCALLTYPE *CreateReservedResource )( ID3D12Device2 * This, - /* [annotation] */ _In_ const D3D12_RESOURCE_DESC *pDesc, D3D12_RESOURCE_STATES InitialState, - /* [annotation] */ _In_opt_ const D3D12_CLEAR_VALUE *pOptimizedClearValue, - /* [annotation][in] */ - _In_ REFIID riid, - /* [annotation][iid_is][out] */ + REFIID riid, _COM_Outptr_opt_ void **ppvResource); DECLSPEC_XFGVIRT(ID3D12Device, CreateSharedHandle) HRESULT ( STDMETHODCALLTYPE *CreateSharedHandle )( ID3D12Device2 * This, - /* [annotation] */ _In_ ID3D12DeviceChild *pObject, - /* [annotation] */ _In_opt_ const SECURITY_ATTRIBUTES *pAttributes, DWORD Access, - /* [annotation] */ _In_opt_ LPCWSTR Name, - /* [annotation] */ _Out_ HANDLE *pHandle); DECLSPEC_XFGVIRT(ID3D12Device, OpenSharedHandle) HRESULT ( STDMETHODCALLTYPE *OpenSharedHandle )( ID3D12Device2 * This, - /* [annotation] */ _In_ HANDLE NTHandle, - /* [annotation][in] */ - _In_ REFIID riid, - /* [annotation][iid_is][out] */ + REFIID riid, _COM_Outptr_opt_ void **ppvObj); DECLSPEC_XFGVIRT(ID3D12Device, OpenSharedHandleByName) HRESULT ( STDMETHODCALLTYPE *OpenSharedHandleByName )( ID3D12Device2 * This, - /* [annotation] */ _In_ LPCWSTR Name, DWORD Access, /* [annotation][out] */ @@ -11937,14 +10732,12 @@ EXTERN_C const IID IID_ID3D12Device2; HRESULT ( STDMETHODCALLTYPE *MakeResident )( ID3D12Device2 * This, UINT NumObjects, - /* [annotation] */ _In_reads_(NumObjects) ID3D12Pageable *const *ppObjects); DECLSPEC_XFGVIRT(ID3D12Device, Evict) HRESULT ( STDMETHODCALLTYPE *Evict )( ID3D12Device2 * This, UINT NumObjects, - /* [annotation] */ _In_reads_(NumObjects) ID3D12Pageable *const *ppObjects); DECLSPEC_XFGVIRT(ID3D12Device, CreateFence) @@ -11952,9 +10745,7 @@ EXTERN_C const IID IID_ID3D12Device2; ID3D12Device2 * This, UINT64 InitialValue, D3D12_FENCE_FLAGS Flags, - /* [annotation][in] */ - _In_ REFIID riid, - /* [annotation][iid_is][out] */ + REFIID riid, _COM_Outptr_ void **ppFence); DECLSPEC_XFGVIRT(ID3D12Device, GetDeviceRemovedReason) @@ -11964,30 +10755,20 @@ EXTERN_C const IID IID_ID3D12Device2; DECLSPEC_XFGVIRT(ID3D12Device, GetCopyableFootprints) void ( STDMETHODCALLTYPE *GetCopyableFootprints )( ID3D12Device2 * This, - /* [annotation] */ _In_ const D3D12_RESOURCE_DESC *pResourceDesc, - /* [annotation] */ _In_range_(0,D3D12_REQ_SUBRESOURCES) UINT FirstSubresource, - /* [annotation] */ _In_range_(0,D3D12_REQ_SUBRESOURCES-FirstSubresource) UINT NumSubresources, UINT64 BaseOffset, - /* [annotation] */ _Out_writes_opt_(NumSubresources) D3D12_PLACED_SUBRESOURCE_FOOTPRINT *pLayouts, - /* [annotation] */ _Out_writes_opt_(NumSubresources) UINT *pNumRows, - /* [annotation] */ _Out_writes_opt_(NumSubresources) UINT64 *pRowSizeInBytes, - /* [annotation] */ _Out_opt_ UINT64 *pTotalBytes); DECLSPEC_XFGVIRT(ID3D12Device, CreateQueryHeap) HRESULT ( STDMETHODCALLTYPE *CreateQueryHeap )( ID3D12Device2 * This, - /* [annotation] */ _In_ const D3D12_QUERY_HEAP_DESC *pDesc, - /* [annotation][in] */ - _In_ REFIID riid, - /* [annotation][iid_is][out] */ + REFIID riid, _COM_Outptr_opt_ void **ppvHeap); DECLSPEC_XFGVIRT(ID3D12Device, SetStablePowerState) @@ -11998,54 +10779,46 @@ EXTERN_C const IID IID_ID3D12Device2; DECLSPEC_XFGVIRT(ID3D12Device, CreateCommandSignature) HRESULT ( STDMETHODCALLTYPE *CreateCommandSignature )( ID3D12Device2 * This, - /* [annotation] */ _In_ const D3D12_COMMAND_SIGNATURE_DESC *pDesc, - /* [annotation] */ _In_opt_ ID3D12RootSignature *pRootSignature, - /* [annotation][in] */ - _In_ REFIID riid, - /* [annotation][iid_is][out] */ + REFIID riid, _COM_Outptr_opt_ void **ppvCommandSignature); DECLSPEC_XFGVIRT(ID3D12Device, GetResourceTiling) void ( STDMETHODCALLTYPE *GetResourceTiling )( ID3D12Device2 * This, - /* [annotation] */ _In_ ID3D12Resource *pTiledResource, - /* [annotation] */ _Out_opt_ UINT *pNumTilesForEntireResource, - /* [annotation] */ _Out_opt_ D3D12_PACKED_MIP_INFO *pPackedMipDesc, - /* [annotation] */ _Out_opt_ D3D12_TILE_SHAPE *pStandardTileShapeForNonPackedMips, - /* [annotation] */ _Inout_opt_ UINT *pNumSubresourceTilings, - /* [annotation] */ _In_ UINT FirstSubresourceTilingToGet, - /* [annotation] */ _Out_writes_(*pNumSubresourceTilings) D3D12_SUBRESOURCE_TILING *pSubresourceTilingsForNonPackedMips); DECLSPEC_XFGVIRT(ID3D12Device, GetAdapterLuid) +#if !defined(_WIN32) LUID ( STDMETHODCALLTYPE *GetAdapterLuid )( ID3D12Device2 * This); +#else + LUID *( STDMETHODCALLTYPE *GetAdapterLuid )( + ID3D12Device2 * This, + LUID * RetVal); + +#endif + DECLSPEC_XFGVIRT(ID3D12Device1, CreatePipelineLibrary) HRESULT ( STDMETHODCALLTYPE *CreatePipelineLibrary )( ID3D12Device2 * This, - /* [annotation] */ _In_reads_(BlobLength) const void *pLibraryBlob, SIZE_T BlobLength, - /* [annotation][in] */ - _In_ REFIID riid, - /* [annotation][iid_is][out] */ + REFIID riid, _COM_Outptr_ void **ppPipelineLibrary); DECLSPEC_XFGVIRT(ID3D12Device1, SetEventOnMultipleFenceCompletion) HRESULT ( STDMETHODCALLTYPE *SetEventOnMultipleFenceCompletion )( ID3D12Device2 * This, - /* [annotation] */ _In_reads_(NumFences) ID3D12Fence *const *ppFences, - /* [annotation] */ _In_reads_(NumFences) const UINT64 *pFenceValues, UINT NumFences, D3D12_MULTIPLE_FENCE_WAIT_FLAGS Flags, @@ -12055,19 +10828,14 @@ EXTERN_C const IID IID_ID3D12Device2; HRESULT ( STDMETHODCALLTYPE *SetResidencyPriority )( ID3D12Device2 * This, UINT NumObjects, - /* [annotation] */ _In_reads_(NumObjects) ID3D12Pageable *const *ppObjects, - /* [annotation] */ _In_reads_(NumObjects) const D3D12_RESIDENCY_PRIORITY *pPriorities); DECLSPEC_XFGVIRT(ID3D12Device2, CreatePipelineState) HRESULT ( STDMETHODCALLTYPE *CreatePipelineState )( ID3D12Device2 * This, - /* [annotation][in] */ - _In_ const D3D12_PIPELINE_STATE_STREAM_DESC *pDesc, - /* [annotation][in] */ - _In_ REFIID riid, - /* [annotation][iid_is][out] */ + const D3D12_PIPELINE_STATE_STREAM_DESC *pDesc, + REFIID riid, _COM_Outptr_ void **ppPipelineState); END_INTERFACE @@ -12159,12 +10927,22 @@ EXTERN_C const IID IID_ID3D12Device2; #define ID3D12Device2_CopyDescriptorsSimple(This,NumDescriptors,DestDescriptorRangeStart,SrcDescriptorRangeStart,DescriptorHeapsType) \ ( (This)->lpVtbl -> CopyDescriptorsSimple(This,NumDescriptors,DestDescriptorRangeStart,SrcDescriptorRangeStart,DescriptorHeapsType) ) +#if !defined(_WIN32) #define ID3D12Device2_GetResourceAllocationInfo(This,visibleMask,numResourceDescs,pResourceDescs) \ ( (This)->lpVtbl -> GetResourceAllocationInfo(This,visibleMask,numResourceDescs,pResourceDescs) ) +#else +#define ID3D12Device2_GetResourceAllocationInfo(This,RetVal,visibleMask,numResourceDescs,pResourceDescs) \ + ( (This)->lpVtbl -> GetResourceAllocationInfo(This,RetVal,visibleMask,numResourceDescs,pResourceDescs) ) +#endif +#if !defined(_WIN32) #define ID3D12Device2_GetCustomHeapProperties(This,nodeMask,heapType) \ ( (This)->lpVtbl -> GetCustomHeapProperties(This,nodeMask,heapType) ) +#else +#define ID3D12Device2_GetCustomHeapProperties(This,RetVal,nodeMask,heapType) \ + ( (This)->lpVtbl -> GetCustomHeapProperties(This,RetVal,nodeMask,heapType) ) +#endif #define ID3D12Device2_CreateCommittedResource(This,pHeapProperties,HeapFlags,pDesc,InitialResourceState,pOptimizedClearValue,riidResource,ppvResource) \ ( (This)->lpVtbl -> CreateCommittedResource(This,pHeapProperties,HeapFlags,pDesc,InitialResourceState,pOptimizedClearValue,riidResource,ppvResource) ) @@ -12213,9 +10991,14 @@ EXTERN_C const IID IID_ID3D12Device2; #define ID3D12Device2_GetResourceTiling(This,pTiledResource,pNumTilesForEntireResource,pPackedMipDesc,pStandardTileShapeForNonPackedMips,pNumSubresourceTilings,FirstSubresourceTilingToGet,pSubresourceTilingsForNonPackedMips) \ ( (This)->lpVtbl -> GetResourceTiling(This,pTiledResource,pNumTilesForEntireResource,pPackedMipDesc,pStandardTileShapeForNonPackedMips,pNumSubresourceTilings,FirstSubresourceTilingToGet,pSubresourceTilingsForNonPackedMips) ) +#if !defined(_WIN32) #define ID3D12Device2_GetAdapterLuid(This) \ ( (This)->lpVtbl -> GetAdapterLuid(This) ) +#else +#define ID3D12Device2_GetAdapterLuid(This,RetVal) \ + ( (This)->lpVtbl -> GetAdapterLuid(This,RetVal) ) +#endif #define ID3D12Device2_CreatePipelineLibrary(This,pLibraryBlob,BlobLength,riid,ppPipelineLibrary) \ @@ -12274,27 +11057,19 @@ EXTERN_C const IID IID_ID3D12Device3; { public: virtual HRESULT STDMETHODCALLTYPE OpenExistingHeapFromAddress( - /* [annotation] */ _In_ const void *pAddress, - /* [annotation][in] */ - _In_ REFIID riid, - /* [annotation][iid_is][out] */ + REFIID riid, _COM_Outptr_ void **ppvHeap) = 0; virtual HRESULT STDMETHODCALLTYPE OpenExistingHeapFromFileMapping( - /* [annotation] */ _In_ HANDLE hFileMapping, - /* [annotation][in] */ - _In_ REFIID riid, - /* [annotation][iid_is][out] */ + REFIID riid, _COM_Outptr_ void **ppvHeap) = 0; virtual HRESULT STDMETHODCALLTYPE EnqueueMakeResident( D3D12_RESIDENCY_FLAGS Flags, UINT NumObjects, - /* [annotation] */ _In_reads_(NumObjects) ID3D12Pageable *const *ppObjects, - /* [annotation] */ _In_ ID3D12Fence *pFenceToSignal, UINT64 FenceValueToSignal) = 0; @@ -12310,9 +11085,7 @@ EXTERN_C const IID IID_ID3D12Device3; DECLSPEC_XFGVIRT(IUnknown, QueryInterface) HRESULT ( STDMETHODCALLTYPE *QueryInterface )( ID3D12Device3 * This, - /* [annotation][in] */ - _In_ REFIID riid, - /* [annotation][iid_is][out] */ + REFIID riid, _COM_Outptr_ void **ppvObject); DECLSPEC_XFGVIRT(IUnknown, AddRef) @@ -12326,35 +11099,26 @@ EXTERN_C const IID IID_ID3D12Device3; DECLSPEC_XFGVIRT(ID3D12Object, GetPrivateData) HRESULT ( STDMETHODCALLTYPE *GetPrivateData )( ID3D12Device3 * This, - /* [annotation] */ _In_ REFGUID guid, - /* [annotation] */ _Inout_ UINT *pDataSize, - /* [annotation] */ _Out_writes_bytes_opt_( *pDataSize ) void *pData); DECLSPEC_XFGVIRT(ID3D12Object, SetPrivateData) HRESULT ( STDMETHODCALLTYPE *SetPrivateData )( ID3D12Device3 * This, - /* [annotation] */ _In_ REFGUID guid, - /* [annotation] */ _In_ UINT DataSize, - /* [annotation] */ _In_reads_bytes_opt_( DataSize ) const void *pData); DECLSPEC_XFGVIRT(ID3D12Object, SetPrivateDataInterface) HRESULT ( STDMETHODCALLTYPE *SetPrivateDataInterface )( ID3D12Device3 * This, - /* [annotation] */ _In_ REFGUID guid, - /* [annotation] */ _In_opt_ const IUnknown *pData); DECLSPEC_XFGVIRT(ID3D12Object, SetName) HRESULT ( STDMETHODCALLTYPE *SetName )( ID3D12Device3 * This, - /* [annotation] */ _In_z_ LPCWSTR Name); DECLSPEC_XFGVIRT(ID3D12Device, GetNodeCount) @@ -12364,284 +11128,220 @@ EXTERN_C const IID IID_ID3D12Device3; DECLSPEC_XFGVIRT(ID3D12Device, CreateCommandQueue) HRESULT ( STDMETHODCALLTYPE *CreateCommandQueue )( ID3D12Device3 * This, - /* [annotation] */ _In_ const D3D12_COMMAND_QUEUE_DESC *pDesc, - /* [annotation][in] */ - _In_ REFIID riid, - /* [annotation][iid_is][out] */ + REFIID riid, _COM_Outptr_ void **ppCommandQueue); DECLSPEC_XFGVIRT(ID3D12Device, CreateCommandAllocator) HRESULT ( STDMETHODCALLTYPE *CreateCommandAllocator )( ID3D12Device3 * This, - /* [annotation] */ _In_ D3D12_COMMAND_LIST_TYPE type, - /* [annotation][in] */ - _In_ REFIID riid, - /* [annotation][iid_is][out] */ + REFIID riid, _COM_Outptr_ void **ppCommandAllocator); DECLSPEC_XFGVIRT(ID3D12Device, CreateGraphicsPipelineState) HRESULT ( STDMETHODCALLTYPE *CreateGraphicsPipelineState )( ID3D12Device3 * This, - /* [annotation] */ _In_ const D3D12_GRAPHICS_PIPELINE_STATE_DESC *pDesc, - /* [annotation][in] */ - _In_ REFIID riid, - /* [annotation][iid_is][out] */ + REFIID riid, _COM_Outptr_ void **ppPipelineState); DECLSPEC_XFGVIRT(ID3D12Device, CreateComputePipelineState) HRESULT ( STDMETHODCALLTYPE *CreateComputePipelineState )( ID3D12Device3 * This, - /* [annotation] */ _In_ const D3D12_COMPUTE_PIPELINE_STATE_DESC *pDesc, - /* [annotation][in] */ - _In_ REFIID riid, - /* [annotation][iid_is][out] */ + REFIID riid, _COM_Outptr_ void **ppPipelineState); DECLSPEC_XFGVIRT(ID3D12Device, CreateCommandList) HRESULT ( STDMETHODCALLTYPE *CreateCommandList )( ID3D12Device3 * This, - /* [annotation] */ _In_ UINT nodeMask, - /* [annotation] */ _In_ D3D12_COMMAND_LIST_TYPE type, - /* [annotation] */ _In_ ID3D12CommandAllocator *pCommandAllocator, - /* [annotation] */ _In_opt_ ID3D12PipelineState *pInitialState, - /* [annotation][in] */ - _In_ REFIID riid, - /* [annotation][iid_is][out] */ + REFIID riid, _COM_Outptr_ void **ppCommandList); DECLSPEC_XFGVIRT(ID3D12Device, CheckFeatureSupport) HRESULT ( STDMETHODCALLTYPE *CheckFeatureSupport )( ID3D12Device3 * This, D3D12_FEATURE Feature, - /* [annotation] */ _Inout_updates_bytes_(FeatureSupportDataSize) void *pFeatureSupportData, UINT FeatureSupportDataSize); DECLSPEC_XFGVIRT(ID3D12Device, CreateDescriptorHeap) HRESULT ( STDMETHODCALLTYPE *CreateDescriptorHeap )( ID3D12Device3 * This, - /* [annotation] */ _In_ const D3D12_DESCRIPTOR_HEAP_DESC *pDescriptorHeapDesc, - /* [annotation][in] */ - _In_ REFIID riid, - /* [annotation][iid_is][out] */ + REFIID riid, _COM_Outptr_ void **ppvHeap); DECLSPEC_XFGVIRT(ID3D12Device, GetDescriptorHandleIncrementSize) UINT ( STDMETHODCALLTYPE *GetDescriptorHandleIncrementSize )( ID3D12Device3 * This, - /* [annotation] */ _In_ D3D12_DESCRIPTOR_HEAP_TYPE DescriptorHeapType); DECLSPEC_XFGVIRT(ID3D12Device, CreateRootSignature) HRESULT ( STDMETHODCALLTYPE *CreateRootSignature )( ID3D12Device3 * This, - /* [annotation] */ _In_ UINT nodeMask, - /* [annotation] */ _In_reads_(blobLengthInBytes) const void *pBlobWithRootSignature, - /* [annotation] */ _In_ SIZE_T blobLengthInBytes, - /* [annotation][in] */ - _In_ REFIID riid, - /* [annotation][iid_is][out] */ + REFIID riid, _COM_Outptr_ void **ppvRootSignature); DECLSPEC_XFGVIRT(ID3D12Device, CreateConstantBufferView) void ( STDMETHODCALLTYPE *CreateConstantBufferView )( ID3D12Device3 * This, - /* [annotation] */ _In_opt_ const D3D12_CONSTANT_BUFFER_VIEW_DESC *pDesc, - /* [annotation] */ _In_ D3D12_CPU_DESCRIPTOR_HANDLE DestDescriptor); DECLSPEC_XFGVIRT(ID3D12Device, CreateShaderResourceView) void ( STDMETHODCALLTYPE *CreateShaderResourceView )( ID3D12Device3 * This, - /* [annotation] */ _In_opt_ ID3D12Resource *pResource, - /* [annotation] */ _In_opt_ const D3D12_SHADER_RESOURCE_VIEW_DESC *pDesc, - /* [annotation] */ _In_ D3D12_CPU_DESCRIPTOR_HANDLE DestDescriptor); DECLSPEC_XFGVIRT(ID3D12Device, CreateUnorderedAccessView) void ( STDMETHODCALLTYPE *CreateUnorderedAccessView )( ID3D12Device3 * This, - /* [annotation] */ _In_opt_ ID3D12Resource *pResource, - /* [annotation] */ _In_opt_ ID3D12Resource *pCounterResource, - /* [annotation] */ _In_opt_ const D3D12_UNORDERED_ACCESS_VIEW_DESC *pDesc, - /* [annotation] */ _In_ D3D12_CPU_DESCRIPTOR_HANDLE DestDescriptor); DECLSPEC_XFGVIRT(ID3D12Device, CreateRenderTargetView) void ( STDMETHODCALLTYPE *CreateRenderTargetView )( ID3D12Device3 * This, - /* [annotation] */ _In_opt_ ID3D12Resource *pResource, - /* [annotation] */ _In_opt_ const D3D12_RENDER_TARGET_VIEW_DESC *pDesc, - /* [annotation] */ _In_ D3D12_CPU_DESCRIPTOR_HANDLE DestDescriptor); DECLSPEC_XFGVIRT(ID3D12Device, CreateDepthStencilView) void ( STDMETHODCALLTYPE *CreateDepthStencilView )( ID3D12Device3 * This, - /* [annotation] */ _In_opt_ ID3D12Resource *pResource, - /* [annotation] */ _In_opt_ const D3D12_DEPTH_STENCIL_VIEW_DESC *pDesc, - /* [annotation] */ _In_ D3D12_CPU_DESCRIPTOR_HANDLE DestDescriptor); DECLSPEC_XFGVIRT(ID3D12Device, CreateSampler) void ( STDMETHODCALLTYPE *CreateSampler )( ID3D12Device3 * This, - /* [annotation] */ _In_ const D3D12_SAMPLER_DESC *pDesc, - /* [annotation] */ _In_ D3D12_CPU_DESCRIPTOR_HANDLE DestDescriptor); DECLSPEC_XFGVIRT(ID3D12Device, CopyDescriptors) void ( STDMETHODCALLTYPE *CopyDescriptors )( ID3D12Device3 * This, - /* [annotation] */ _In_ UINT NumDestDescriptorRanges, - /* [annotation] */ _In_reads_(NumDestDescriptorRanges) const D3D12_CPU_DESCRIPTOR_HANDLE *pDestDescriptorRangeStarts, - /* [annotation] */ _In_reads_opt_(NumDestDescriptorRanges) const UINT *pDestDescriptorRangeSizes, - /* [annotation] */ _In_ UINT NumSrcDescriptorRanges, - /* [annotation] */ _In_reads_(NumSrcDescriptorRanges) const D3D12_CPU_DESCRIPTOR_HANDLE *pSrcDescriptorRangeStarts, - /* [annotation] */ _In_reads_opt_(NumSrcDescriptorRanges) const UINT *pSrcDescriptorRangeSizes, - /* [annotation] */ _In_ D3D12_DESCRIPTOR_HEAP_TYPE DescriptorHeapsType); DECLSPEC_XFGVIRT(ID3D12Device, CopyDescriptorsSimple) void ( STDMETHODCALLTYPE *CopyDescriptorsSimple )( ID3D12Device3 * This, - /* [annotation] */ _In_ UINT NumDescriptors, - /* [annotation] */ _In_ D3D12_CPU_DESCRIPTOR_HANDLE DestDescriptorRangeStart, - /* [annotation] */ _In_ D3D12_CPU_DESCRIPTOR_HANDLE SrcDescriptorRangeStart, - /* [annotation] */ _In_ D3D12_DESCRIPTOR_HEAP_TYPE DescriptorHeapsType); DECLSPEC_XFGVIRT(ID3D12Device, GetResourceAllocationInfo) +#if !defined(_WIN32) D3D12_RESOURCE_ALLOCATION_INFO ( STDMETHODCALLTYPE *GetResourceAllocationInfo )( ID3D12Device3 * This, - /* [annotation] */ _In_ UINT visibleMask, - /* [annotation] */ _In_ UINT numResourceDescs, - /* [annotation] */ _In_reads_(numResourceDescs) const D3D12_RESOURCE_DESC *pResourceDescs); +#else + D3D12_RESOURCE_ALLOCATION_INFO *( STDMETHODCALLTYPE *GetResourceAllocationInfo )( + ID3D12Device3 * This, + D3D12_RESOURCE_ALLOCATION_INFO * RetVal, + _In_ UINT visibleMask, + _In_ UINT numResourceDescs, + _In_reads_(numResourceDescs) const D3D12_RESOURCE_DESC *pResourceDescs); + +#endif + DECLSPEC_XFGVIRT(ID3D12Device, GetCustomHeapProperties) +#if !defined(_WIN32) D3D12_HEAP_PROPERTIES ( STDMETHODCALLTYPE *GetCustomHeapProperties )( ID3D12Device3 * This, - /* [annotation] */ _In_ UINT nodeMask, D3D12_HEAP_TYPE heapType); +#else + D3D12_HEAP_PROPERTIES *( STDMETHODCALLTYPE *GetCustomHeapProperties )( + ID3D12Device3 * This, + D3D12_HEAP_PROPERTIES * RetVal, + _In_ UINT nodeMask, + D3D12_HEAP_TYPE heapType); + +#endif + DECLSPEC_XFGVIRT(ID3D12Device, CreateCommittedResource) HRESULT ( STDMETHODCALLTYPE *CreateCommittedResource )( ID3D12Device3 * This, - /* [annotation] */ _In_ const D3D12_HEAP_PROPERTIES *pHeapProperties, D3D12_HEAP_FLAGS HeapFlags, - /* [annotation] */ _In_ const D3D12_RESOURCE_DESC *pDesc, D3D12_RESOURCE_STATES InitialResourceState, - /* [annotation] */ _In_opt_ const D3D12_CLEAR_VALUE *pOptimizedClearValue, - /* [annotation][in] */ - _In_ REFIID riidResource, - /* [annotation][iid_is][out] */ + REFIID riidResource, _COM_Outptr_opt_ void **ppvResource); DECLSPEC_XFGVIRT(ID3D12Device, CreateHeap) HRESULT ( STDMETHODCALLTYPE *CreateHeap )( ID3D12Device3 * This, - /* [annotation] */ _In_ const D3D12_HEAP_DESC *pDesc, - /* [annotation][in] */ - _In_ REFIID riid, - /* [annotation][iid_is][out] */ + REFIID riid, _COM_Outptr_opt_ void **ppvHeap); DECLSPEC_XFGVIRT(ID3D12Device, CreatePlacedResource) HRESULT ( STDMETHODCALLTYPE *CreatePlacedResource )( ID3D12Device3 * This, - /* [annotation] */ _In_ ID3D12Heap *pHeap, UINT64 HeapOffset, - /* [annotation] */ _In_ const D3D12_RESOURCE_DESC *pDesc, D3D12_RESOURCE_STATES InitialState, - /* [annotation] */ _In_opt_ const D3D12_CLEAR_VALUE *pOptimizedClearValue, - /* [annotation][in] */ - _In_ REFIID riid, - /* [annotation][iid_is][out] */ + REFIID riid, _COM_Outptr_opt_ void **ppvResource); DECLSPEC_XFGVIRT(ID3D12Device, CreateReservedResource) HRESULT ( STDMETHODCALLTYPE *CreateReservedResource )( ID3D12Device3 * This, - /* [annotation] */ _In_ const D3D12_RESOURCE_DESC *pDesc, D3D12_RESOURCE_STATES InitialState, - /* [annotation] */ _In_opt_ const D3D12_CLEAR_VALUE *pOptimizedClearValue, - /* [annotation][in] */ - _In_ REFIID riid, - /* [annotation][iid_is][out] */ + REFIID riid, _COM_Outptr_opt_ void **ppvResource); DECLSPEC_XFGVIRT(ID3D12Device, CreateSharedHandle) HRESULT ( STDMETHODCALLTYPE *CreateSharedHandle )( ID3D12Device3 * This, - /* [annotation] */ _In_ ID3D12DeviceChild *pObject, - /* [annotation] */ _In_opt_ const SECURITY_ATTRIBUTES *pAttributes, DWORD Access, - /* [annotation] */ _In_opt_ LPCWSTR Name, - /* [annotation] */ _Out_ HANDLE *pHandle); DECLSPEC_XFGVIRT(ID3D12Device, OpenSharedHandle) HRESULT ( STDMETHODCALLTYPE *OpenSharedHandle )( ID3D12Device3 * This, - /* [annotation] */ _In_ HANDLE NTHandle, - /* [annotation][in] */ - _In_ REFIID riid, - /* [annotation][iid_is][out] */ + REFIID riid, _COM_Outptr_opt_ void **ppvObj); DECLSPEC_XFGVIRT(ID3D12Device, OpenSharedHandleByName) HRESULT ( STDMETHODCALLTYPE *OpenSharedHandleByName )( ID3D12Device3 * This, - /* [annotation] */ _In_ LPCWSTR Name, DWORD Access, /* [annotation][out] */ @@ -12651,14 +11351,12 @@ EXTERN_C const IID IID_ID3D12Device3; HRESULT ( STDMETHODCALLTYPE *MakeResident )( ID3D12Device3 * This, UINT NumObjects, - /* [annotation] */ _In_reads_(NumObjects) ID3D12Pageable *const *ppObjects); DECLSPEC_XFGVIRT(ID3D12Device, Evict) HRESULT ( STDMETHODCALLTYPE *Evict )( ID3D12Device3 * This, UINT NumObjects, - /* [annotation] */ _In_reads_(NumObjects) ID3D12Pageable *const *ppObjects); DECLSPEC_XFGVIRT(ID3D12Device, CreateFence) @@ -12666,9 +11364,7 @@ EXTERN_C const IID IID_ID3D12Device3; ID3D12Device3 * This, UINT64 InitialValue, D3D12_FENCE_FLAGS Flags, - /* [annotation][in] */ - _In_ REFIID riid, - /* [annotation][iid_is][out] */ + REFIID riid, _COM_Outptr_ void **ppFence); DECLSPEC_XFGVIRT(ID3D12Device, GetDeviceRemovedReason) @@ -12678,30 +11374,20 @@ EXTERN_C const IID IID_ID3D12Device3; DECLSPEC_XFGVIRT(ID3D12Device, GetCopyableFootprints) void ( STDMETHODCALLTYPE *GetCopyableFootprints )( ID3D12Device3 * This, - /* [annotation] */ _In_ const D3D12_RESOURCE_DESC *pResourceDesc, - /* [annotation] */ _In_range_(0,D3D12_REQ_SUBRESOURCES) UINT FirstSubresource, - /* [annotation] */ _In_range_(0,D3D12_REQ_SUBRESOURCES-FirstSubresource) UINT NumSubresources, UINT64 BaseOffset, - /* [annotation] */ _Out_writes_opt_(NumSubresources) D3D12_PLACED_SUBRESOURCE_FOOTPRINT *pLayouts, - /* [annotation] */ _Out_writes_opt_(NumSubresources) UINT *pNumRows, - /* [annotation] */ _Out_writes_opt_(NumSubresources) UINT64 *pRowSizeInBytes, - /* [annotation] */ _Out_opt_ UINT64 *pTotalBytes); DECLSPEC_XFGVIRT(ID3D12Device, CreateQueryHeap) HRESULT ( STDMETHODCALLTYPE *CreateQueryHeap )( ID3D12Device3 * This, - /* [annotation] */ _In_ const D3D12_QUERY_HEAP_DESC *pDesc, - /* [annotation][in] */ - _In_ REFIID riid, - /* [annotation][iid_is][out] */ + REFIID riid, _COM_Outptr_opt_ void **ppvHeap); DECLSPEC_XFGVIRT(ID3D12Device, SetStablePowerState) @@ -12712,54 +11398,46 @@ EXTERN_C const IID IID_ID3D12Device3; DECLSPEC_XFGVIRT(ID3D12Device, CreateCommandSignature) HRESULT ( STDMETHODCALLTYPE *CreateCommandSignature )( ID3D12Device3 * This, - /* [annotation] */ _In_ const D3D12_COMMAND_SIGNATURE_DESC *pDesc, - /* [annotation] */ _In_opt_ ID3D12RootSignature *pRootSignature, - /* [annotation][in] */ - _In_ REFIID riid, - /* [annotation][iid_is][out] */ + REFIID riid, _COM_Outptr_opt_ void **ppvCommandSignature); DECLSPEC_XFGVIRT(ID3D12Device, GetResourceTiling) void ( STDMETHODCALLTYPE *GetResourceTiling )( ID3D12Device3 * This, - /* [annotation] */ _In_ ID3D12Resource *pTiledResource, - /* [annotation] */ _Out_opt_ UINT *pNumTilesForEntireResource, - /* [annotation] */ _Out_opt_ D3D12_PACKED_MIP_INFO *pPackedMipDesc, - /* [annotation] */ _Out_opt_ D3D12_TILE_SHAPE *pStandardTileShapeForNonPackedMips, - /* [annotation] */ _Inout_opt_ UINT *pNumSubresourceTilings, - /* [annotation] */ _In_ UINT FirstSubresourceTilingToGet, - /* [annotation] */ _Out_writes_(*pNumSubresourceTilings) D3D12_SUBRESOURCE_TILING *pSubresourceTilingsForNonPackedMips); DECLSPEC_XFGVIRT(ID3D12Device, GetAdapterLuid) +#if !defined(_WIN32) LUID ( STDMETHODCALLTYPE *GetAdapterLuid )( ID3D12Device3 * This); +#else + LUID *( STDMETHODCALLTYPE *GetAdapterLuid )( + ID3D12Device3 * This, + LUID * RetVal); + +#endif + DECLSPEC_XFGVIRT(ID3D12Device1, CreatePipelineLibrary) HRESULT ( STDMETHODCALLTYPE *CreatePipelineLibrary )( ID3D12Device3 * This, - /* [annotation] */ _In_reads_(BlobLength) const void *pLibraryBlob, SIZE_T BlobLength, - /* [annotation][in] */ - _In_ REFIID riid, - /* [annotation][iid_is][out] */ + REFIID riid, _COM_Outptr_ void **ppPipelineLibrary); DECLSPEC_XFGVIRT(ID3D12Device1, SetEventOnMultipleFenceCompletion) HRESULT ( STDMETHODCALLTYPE *SetEventOnMultipleFenceCompletion )( ID3D12Device3 * This, - /* [annotation] */ _In_reads_(NumFences) ID3D12Fence *const *ppFences, - /* [annotation] */ _In_reads_(NumFences) const UINT64 *pFenceValues, UINT NumFences, D3D12_MULTIPLE_FENCE_WAIT_FLAGS Flags, @@ -12769,39 +11447,28 @@ EXTERN_C const IID IID_ID3D12Device3; HRESULT ( STDMETHODCALLTYPE *SetResidencyPriority )( ID3D12Device3 * This, UINT NumObjects, - /* [annotation] */ _In_reads_(NumObjects) ID3D12Pageable *const *ppObjects, - /* [annotation] */ _In_reads_(NumObjects) const D3D12_RESIDENCY_PRIORITY *pPriorities); DECLSPEC_XFGVIRT(ID3D12Device2, CreatePipelineState) HRESULT ( STDMETHODCALLTYPE *CreatePipelineState )( ID3D12Device3 * This, - /* [annotation][in] */ - _In_ const D3D12_PIPELINE_STATE_STREAM_DESC *pDesc, - /* [annotation][in] */ - _In_ REFIID riid, - /* [annotation][iid_is][out] */ + const D3D12_PIPELINE_STATE_STREAM_DESC *pDesc, + REFIID riid, _COM_Outptr_ void **ppPipelineState); DECLSPEC_XFGVIRT(ID3D12Device3, OpenExistingHeapFromAddress) HRESULT ( STDMETHODCALLTYPE *OpenExistingHeapFromAddress )( ID3D12Device3 * This, - /* [annotation] */ _In_ const void *pAddress, - /* [annotation][in] */ - _In_ REFIID riid, - /* [annotation][iid_is][out] */ + REFIID riid, _COM_Outptr_ void **ppvHeap); DECLSPEC_XFGVIRT(ID3D12Device3, OpenExistingHeapFromFileMapping) HRESULT ( STDMETHODCALLTYPE *OpenExistingHeapFromFileMapping )( ID3D12Device3 * This, - /* [annotation] */ _In_ HANDLE hFileMapping, - /* [annotation][in] */ - _In_ REFIID riid, - /* [annotation][iid_is][out] */ + REFIID riid, _COM_Outptr_ void **ppvHeap); DECLSPEC_XFGVIRT(ID3D12Device3, EnqueueMakeResident) @@ -12809,9 +11476,7 @@ EXTERN_C const IID IID_ID3D12Device3; ID3D12Device3 * This, D3D12_RESIDENCY_FLAGS Flags, UINT NumObjects, - /* [annotation] */ _In_reads_(NumObjects) ID3D12Pageable *const *ppObjects, - /* [annotation] */ _In_ ID3D12Fence *pFenceToSignal, UINT64 FenceValueToSignal); @@ -12904,12 +11569,22 @@ EXTERN_C const IID IID_ID3D12Device3; #define ID3D12Device3_CopyDescriptorsSimple(This,NumDescriptors,DestDescriptorRangeStart,SrcDescriptorRangeStart,DescriptorHeapsType) \ ( (This)->lpVtbl -> CopyDescriptorsSimple(This,NumDescriptors,DestDescriptorRangeStart,SrcDescriptorRangeStart,DescriptorHeapsType) ) +#if !defined(_WIN32) #define ID3D12Device3_GetResourceAllocationInfo(This,visibleMask,numResourceDescs,pResourceDescs) \ ( (This)->lpVtbl -> GetResourceAllocationInfo(This,visibleMask,numResourceDescs,pResourceDescs) ) +#else +#define ID3D12Device3_GetResourceAllocationInfo(This,RetVal,visibleMask,numResourceDescs,pResourceDescs) \ + ( (This)->lpVtbl -> GetResourceAllocationInfo(This,RetVal,visibleMask,numResourceDescs,pResourceDescs) ) +#endif +#if !defined(_WIN32) #define ID3D12Device3_GetCustomHeapProperties(This,nodeMask,heapType) \ ( (This)->lpVtbl -> GetCustomHeapProperties(This,nodeMask,heapType) ) +#else +#define ID3D12Device3_GetCustomHeapProperties(This,RetVal,nodeMask,heapType) \ + ( (This)->lpVtbl -> GetCustomHeapProperties(This,RetVal,nodeMask,heapType) ) +#endif #define ID3D12Device3_CreateCommittedResource(This,pHeapProperties,HeapFlags,pDesc,InitialResourceState,pOptimizedClearValue,riidResource,ppvResource) \ ( (This)->lpVtbl -> CreateCommittedResource(This,pHeapProperties,HeapFlags,pDesc,InitialResourceState,pOptimizedClearValue,riidResource,ppvResource) ) @@ -12958,9 +11633,14 @@ EXTERN_C const IID IID_ID3D12Device3; #define ID3D12Device3_GetResourceTiling(This,pTiledResource,pNumTilesForEntireResource,pPackedMipDesc,pStandardTileShapeForNonPackedMips,pNumSubresourceTilings,FirstSubresourceTilingToGet,pSubresourceTilingsForNonPackedMips) \ ( (This)->lpVtbl -> GetResourceTiling(This,pTiledResource,pNumTilesForEntireResource,pPackedMipDesc,pStandardTileShapeForNonPackedMips,pNumSubresourceTilings,FirstSubresourceTilingToGet,pSubresourceTilingsForNonPackedMips) ) +#if !defined(_WIN32) #define ID3D12Device3_GetAdapterLuid(This) \ ( (This)->lpVtbl -> GetAdapterLuid(This) ) +#else +#define ID3D12Device3_GetAdapterLuid(This,RetVal) \ + ( (This)->lpVtbl -> GetAdapterLuid(This,RetVal) ) +#endif #define ID3D12Device3_CreatePipelineLibrary(This,pLibraryBlob,BlobLength,riid,ppPipelineLibrary) \ @@ -13049,9 +11729,7 @@ EXTERN_C const IID IID_ID3D12ProtectedSession; { public: virtual HRESULT STDMETHODCALLTYPE GetStatusFence( - /* [annotation][in] */ - _In_ REFIID riid, - /* [annotation][iid_is][out] */ + REFIID riid, _COM_Outptr_opt_ void **ppFence) = 0; virtual D3D12_PROTECTED_SESSION_STATUS STDMETHODCALLTYPE GetSessionStatus( void) = 0; @@ -13068,9 +11746,7 @@ EXTERN_C const IID IID_ID3D12ProtectedSession; DECLSPEC_XFGVIRT(IUnknown, QueryInterface) HRESULT ( STDMETHODCALLTYPE *QueryInterface )( ID3D12ProtectedSession * This, - /* [annotation][in] */ - _In_ REFIID riid, - /* [annotation][iid_is][out] */ + REFIID riid, _COM_Outptr_ void **ppvObject); DECLSPEC_XFGVIRT(IUnknown, AddRef) @@ -13084,51 +11760,38 @@ EXTERN_C const IID IID_ID3D12ProtectedSession; DECLSPEC_XFGVIRT(ID3D12Object, GetPrivateData) HRESULT ( STDMETHODCALLTYPE *GetPrivateData )( ID3D12ProtectedSession * This, - /* [annotation] */ _In_ REFGUID guid, - /* [annotation] */ _Inout_ UINT *pDataSize, - /* [annotation] */ _Out_writes_bytes_opt_( *pDataSize ) void *pData); DECLSPEC_XFGVIRT(ID3D12Object, SetPrivateData) HRESULT ( STDMETHODCALLTYPE *SetPrivateData )( ID3D12ProtectedSession * This, - /* [annotation] */ _In_ REFGUID guid, - /* [annotation] */ _In_ UINT DataSize, - /* [annotation] */ _In_reads_bytes_opt_( DataSize ) const void *pData); DECLSPEC_XFGVIRT(ID3D12Object, SetPrivateDataInterface) HRESULT ( STDMETHODCALLTYPE *SetPrivateDataInterface )( ID3D12ProtectedSession * This, - /* [annotation] */ _In_ REFGUID guid, - /* [annotation] */ _In_opt_ const IUnknown *pData); DECLSPEC_XFGVIRT(ID3D12Object, SetName) HRESULT ( STDMETHODCALLTYPE *SetName )( ID3D12ProtectedSession * This, - /* [annotation] */ _In_z_ LPCWSTR Name); DECLSPEC_XFGVIRT(ID3D12DeviceChild, GetDevice) HRESULT ( STDMETHODCALLTYPE *GetDevice )( ID3D12ProtectedSession * This, - /* [annotation][in] */ - _In_ REFIID riid, - /* [annotation][iid_is][out] */ + REFIID riid, _COM_Outptr_opt_ void **ppvDevice); DECLSPEC_XFGVIRT(ID3D12ProtectedSession, GetStatusFence) HRESULT ( STDMETHODCALLTYPE *GetStatusFence )( ID3D12ProtectedSession * This, - /* [annotation][in] */ - _In_ REFIID riid, - /* [annotation][iid_is][out] */ + REFIID riid, _COM_Outptr_opt_ void **ppFence); DECLSPEC_XFGVIRT(ID3D12ProtectedSession, GetSessionStatus) @@ -13242,7 +11905,12 @@ EXTERN_C const IID IID_ID3D12ProtectedResourceSession; ID3D12ProtectedResourceSession : public ID3D12ProtectedSession { public: +#if defined(_MSC_VER) || !defined(_WIN32) virtual D3D12_PROTECTED_RESOURCE_SESSION_DESC STDMETHODCALLTYPE GetDesc( void) = 0; +#else + virtual D3D12_PROTECTED_RESOURCE_SESSION_DESC *STDMETHODCALLTYPE GetDesc( + D3D12_PROTECTED_RESOURCE_SESSION_DESC * RetVal) = 0; +#endif }; @@ -13256,9 +11924,7 @@ EXTERN_C const IID IID_ID3D12ProtectedResourceSession; DECLSPEC_XFGVIRT(IUnknown, QueryInterface) HRESULT ( STDMETHODCALLTYPE *QueryInterface )( ID3D12ProtectedResourceSession * This, - /* [annotation][in] */ - _In_ REFIID riid, - /* [annotation][iid_is][out] */ + REFIID riid, _COM_Outptr_ void **ppvObject); DECLSPEC_XFGVIRT(IUnknown, AddRef) @@ -13272,51 +11938,38 @@ EXTERN_C const IID IID_ID3D12ProtectedResourceSession; DECLSPEC_XFGVIRT(ID3D12Object, GetPrivateData) HRESULT ( STDMETHODCALLTYPE *GetPrivateData )( ID3D12ProtectedResourceSession * This, - /* [annotation] */ _In_ REFGUID guid, - /* [annotation] */ _Inout_ UINT *pDataSize, - /* [annotation] */ _Out_writes_bytes_opt_( *pDataSize ) void *pData); DECLSPEC_XFGVIRT(ID3D12Object, SetPrivateData) HRESULT ( STDMETHODCALLTYPE *SetPrivateData )( ID3D12ProtectedResourceSession * This, - /* [annotation] */ _In_ REFGUID guid, - /* [annotation] */ _In_ UINT DataSize, - /* [annotation] */ _In_reads_bytes_opt_( DataSize ) const void *pData); DECLSPEC_XFGVIRT(ID3D12Object, SetPrivateDataInterface) HRESULT ( STDMETHODCALLTYPE *SetPrivateDataInterface )( ID3D12ProtectedResourceSession * This, - /* [annotation] */ _In_ REFGUID guid, - /* [annotation] */ _In_opt_ const IUnknown *pData); DECLSPEC_XFGVIRT(ID3D12Object, SetName) HRESULT ( STDMETHODCALLTYPE *SetName )( ID3D12ProtectedResourceSession * This, - /* [annotation] */ _In_z_ LPCWSTR Name); DECLSPEC_XFGVIRT(ID3D12DeviceChild, GetDevice) HRESULT ( STDMETHODCALLTYPE *GetDevice )( ID3D12ProtectedResourceSession * This, - /* [annotation][in] */ - _In_ REFIID riid, - /* [annotation][iid_is][out] */ + REFIID riid, _COM_Outptr_opt_ void **ppvDevice); DECLSPEC_XFGVIRT(ID3D12ProtectedSession, GetStatusFence) HRESULT ( STDMETHODCALLTYPE *GetStatusFence )( ID3D12ProtectedResourceSession * This, - /* [annotation][in] */ - _In_ REFIID riid, - /* [annotation][iid_is][out] */ + REFIID riid, _COM_Outptr_opt_ void **ppFence); DECLSPEC_XFGVIRT(ID3D12ProtectedSession, GetSessionStatus) @@ -13324,9 +11977,17 @@ EXTERN_C const IID IID_ID3D12ProtectedResourceSession; ID3D12ProtectedResourceSession * This); DECLSPEC_XFGVIRT(ID3D12ProtectedResourceSession, GetDesc) +#if !defined(_WIN32) D3D12_PROTECTED_RESOURCE_SESSION_DESC ( STDMETHODCALLTYPE *GetDesc )( ID3D12ProtectedResourceSession * This); +#else + D3D12_PROTECTED_RESOURCE_SESSION_DESC *( STDMETHODCALLTYPE *GetDesc )( + ID3D12ProtectedResourceSession * This, + D3D12_PROTECTED_RESOURCE_SESSION_DESC * RetVal); + +#endif + END_INTERFACE } ID3D12ProtectedResourceSessionVtbl; @@ -13373,9 +12034,14 @@ EXTERN_C const IID IID_ID3D12ProtectedResourceSession; #define ID3D12ProtectedResourceSession_GetSessionStatus(This) \ ( (This)->lpVtbl -> GetSessionStatus(This) ) +#if !defined(_WIN32) #define ID3D12ProtectedResourceSession_GetDesc(This) \ ( (This)->lpVtbl -> GetDesc(This) ) +#else +#define ID3D12ProtectedResourceSession_GetDesc(This,RetVal) \ + ( (This)->lpVtbl -> GetDesc(This,RetVal) ) +#endif #endif /* COBJMACROS */ @@ -13384,17 +12050,6 @@ EXTERN_C const IID IID_ID3D12ProtectedResourceSession; -D3D12_PROTECTED_RESOURCE_SESSION_DESC STDMETHODCALLTYPE ID3D12ProtectedResourceSession_GetDesc_Proxy( - ID3D12ProtectedResourceSession * This); - - -void __RPC_STUB ID3D12ProtectedResourceSession_GetDesc_Stub( - IRpcStubBuffer *This, - IRpcChannelBuffer *_pRpcChannelBuffer, - PRPC_MESSAGE _pRpcMessage, - DWORD *_pdwStubPhase); - - #endif /* __ID3D12ProtectedResourceSession_INTERFACE_DEFINED__ */ @@ -13415,73 +12070,57 @@ EXTERN_C const IID IID_ID3D12Device4; { public: virtual HRESULT STDMETHODCALLTYPE CreateCommandList1( - /* [annotation] */ _In_ UINT nodeMask, - /* [annotation] */ _In_ D3D12_COMMAND_LIST_TYPE type, - /* [annotation] */ _In_ D3D12_COMMAND_LIST_FLAGS flags, - /* [annotation][in] */ - _In_ REFIID riid, - /* [annotation][iid_is][out] */ + REFIID riid, _COM_Outptr_ void **ppCommandList) = 0; virtual HRESULT STDMETHODCALLTYPE CreateProtectedResourceSession( - /* [annotation] */ _In_ const D3D12_PROTECTED_RESOURCE_SESSION_DESC *pDesc, - /* [annotation] */ _In_ REFIID riid, - /* [annotation][iid_is][out] */ _COM_Outptr_ void **ppSession) = 0; virtual HRESULT STDMETHODCALLTYPE CreateCommittedResource1( - /* [annotation] */ _In_ const D3D12_HEAP_PROPERTIES *pHeapProperties, D3D12_HEAP_FLAGS HeapFlags, - /* [annotation] */ _In_ const D3D12_RESOURCE_DESC *pDesc, D3D12_RESOURCE_STATES InitialResourceState, - /* [annotation] */ _In_opt_ const D3D12_CLEAR_VALUE *pOptimizedClearValue, - /* [annotation] */ _In_opt_ ID3D12ProtectedResourceSession *pProtectedSession, - /* [annotation][in] */ - _In_ REFIID riidResource, - /* [annotation][iid_is][out] */ + REFIID riidResource, _COM_Outptr_opt_ void **ppvResource) = 0; virtual HRESULT STDMETHODCALLTYPE CreateHeap1( - /* [annotation] */ _In_ const D3D12_HEAP_DESC *pDesc, - /* [annotation] */ _In_opt_ ID3D12ProtectedResourceSession *pProtectedSession, - /* [annotation][in] */ - _In_ REFIID riid, - /* [annotation][iid_is][out] */ + REFIID riid, _COM_Outptr_opt_ void **ppvHeap) = 0; virtual HRESULT STDMETHODCALLTYPE CreateReservedResource1( - /* [annotation] */ _In_ const D3D12_RESOURCE_DESC *pDesc, D3D12_RESOURCE_STATES InitialState, - /* [annotation] */ _In_opt_ const D3D12_CLEAR_VALUE *pOptimizedClearValue, - /* [annotation] */ _In_opt_ ID3D12ProtectedResourceSession *pProtectedSession, - /* [annotation][in] */ - _In_ REFIID riid, - /* [annotation][iid_is][out] */ + REFIID riid, _COM_Outptr_opt_ void **ppvResource) = 0; +#if defined(_MSC_VER) || !defined(_WIN32) virtual D3D12_RESOURCE_ALLOCATION_INFO STDMETHODCALLTYPE GetResourceAllocationInfo1( UINT visibleMask, UINT numResourceDescs, - /* [annotation] */ _In_reads_(numResourceDescs) const D3D12_RESOURCE_DESC *pResourceDescs, - /* [annotation] */ _Out_writes_opt_(numResourceDescs) D3D12_RESOURCE_ALLOCATION_INFO1 *pResourceAllocationInfo1) = 0; - - }; +#else + virtual D3D12_RESOURCE_ALLOCATION_INFO *STDMETHODCALLTYPE GetResourceAllocationInfo1( + D3D12_RESOURCE_ALLOCATION_INFO * RetVal, + UINT visibleMask, + UINT numResourceDescs, + _In_reads_(numResourceDescs) const D3D12_RESOURCE_DESC *pResourceDescs, + _Out_writes_opt_(numResourceDescs) D3D12_RESOURCE_ALLOCATION_INFO1 *pResourceAllocationInfo1) = 0; +#endif + + }; #else /* C style interface */ @@ -13493,9 +12132,7 @@ EXTERN_C const IID IID_ID3D12Device4; DECLSPEC_XFGVIRT(IUnknown, QueryInterface) HRESULT ( STDMETHODCALLTYPE *QueryInterface )( ID3D12Device4 * This, - /* [annotation][in] */ - _In_ REFIID riid, - /* [annotation][iid_is][out] */ + REFIID riid, _COM_Outptr_ void **ppvObject); DECLSPEC_XFGVIRT(IUnknown, AddRef) @@ -13509,35 +12146,26 @@ EXTERN_C const IID IID_ID3D12Device4; DECLSPEC_XFGVIRT(ID3D12Object, GetPrivateData) HRESULT ( STDMETHODCALLTYPE *GetPrivateData )( ID3D12Device4 * This, - /* [annotation] */ _In_ REFGUID guid, - /* [annotation] */ _Inout_ UINT *pDataSize, - /* [annotation] */ _Out_writes_bytes_opt_( *pDataSize ) void *pData); DECLSPEC_XFGVIRT(ID3D12Object, SetPrivateData) HRESULT ( STDMETHODCALLTYPE *SetPrivateData )( ID3D12Device4 * This, - /* [annotation] */ _In_ REFGUID guid, - /* [annotation] */ _In_ UINT DataSize, - /* [annotation] */ _In_reads_bytes_opt_( DataSize ) const void *pData); DECLSPEC_XFGVIRT(ID3D12Object, SetPrivateDataInterface) HRESULT ( STDMETHODCALLTYPE *SetPrivateDataInterface )( ID3D12Device4 * This, - /* [annotation] */ _In_ REFGUID guid, - /* [annotation] */ _In_opt_ const IUnknown *pData); DECLSPEC_XFGVIRT(ID3D12Object, SetName) HRESULT ( STDMETHODCALLTYPE *SetName )( ID3D12Device4 * This, - /* [annotation] */ _In_z_ LPCWSTR Name); DECLSPEC_XFGVIRT(ID3D12Device, GetNodeCount) @@ -13547,284 +12175,220 @@ EXTERN_C const IID IID_ID3D12Device4; DECLSPEC_XFGVIRT(ID3D12Device, CreateCommandQueue) HRESULT ( STDMETHODCALLTYPE *CreateCommandQueue )( ID3D12Device4 * This, - /* [annotation] */ _In_ const D3D12_COMMAND_QUEUE_DESC *pDesc, - /* [annotation][in] */ - _In_ REFIID riid, - /* [annotation][iid_is][out] */ + REFIID riid, _COM_Outptr_ void **ppCommandQueue); DECLSPEC_XFGVIRT(ID3D12Device, CreateCommandAllocator) HRESULT ( STDMETHODCALLTYPE *CreateCommandAllocator )( ID3D12Device4 * This, - /* [annotation] */ _In_ D3D12_COMMAND_LIST_TYPE type, - /* [annotation][in] */ - _In_ REFIID riid, - /* [annotation][iid_is][out] */ + REFIID riid, _COM_Outptr_ void **ppCommandAllocator); DECLSPEC_XFGVIRT(ID3D12Device, CreateGraphicsPipelineState) HRESULT ( STDMETHODCALLTYPE *CreateGraphicsPipelineState )( ID3D12Device4 * This, - /* [annotation] */ _In_ const D3D12_GRAPHICS_PIPELINE_STATE_DESC *pDesc, - /* [annotation][in] */ - _In_ REFIID riid, - /* [annotation][iid_is][out] */ + REFIID riid, _COM_Outptr_ void **ppPipelineState); DECLSPEC_XFGVIRT(ID3D12Device, CreateComputePipelineState) HRESULT ( STDMETHODCALLTYPE *CreateComputePipelineState )( ID3D12Device4 * This, - /* [annotation] */ _In_ const D3D12_COMPUTE_PIPELINE_STATE_DESC *pDesc, - /* [annotation][in] */ - _In_ REFIID riid, - /* [annotation][iid_is][out] */ + REFIID riid, _COM_Outptr_ void **ppPipelineState); DECLSPEC_XFGVIRT(ID3D12Device, CreateCommandList) HRESULT ( STDMETHODCALLTYPE *CreateCommandList )( ID3D12Device4 * This, - /* [annotation] */ _In_ UINT nodeMask, - /* [annotation] */ _In_ D3D12_COMMAND_LIST_TYPE type, - /* [annotation] */ _In_ ID3D12CommandAllocator *pCommandAllocator, - /* [annotation] */ _In_opt_ ID3D12PipelineState *pInitialState, - /* [annotation][in] */ - _In_ REFIID riid, - /* [annotation][iid_is][out] */ + REFIID riid, _COM_Outptr_ void **ppCommandList); DECLSPEC_XFGVIRT(ID3D12Device, CheckFeatureSupport) HRESULT ( STDMETHODCALLTYPE *CheckFeatureSupport )( ID3D12Device4 * This, D3D12_FEATURE Feature, - /* [annotation] */ _Inout_updates_bytes_(FeatureSupportDataSize) void *pFeatureSupportData, UINT FeatureSupportDataSize); DECLSPEC_XFGVIRT(ID3D12Device, CreateDescriptorHeap) HRESULT ( STDMETHODCALLTYPE *CreateDescriptorHeap )( ID3D12Device4 * This, - /* [annotation] */ _In_ const D3D12_DESCRIPTOR_HEAP_DESC *pDescriptorHeapDesc, - /* [annotation][in] */ - _In_ REFIID riid, - /* [annotation][iid_is][out] */ + REFIID riid, _COM_Outptr_ void **ppvHeap); DECLSPEC_XFGVIRT(ID3D12Device, GetDescriptorHandleIncrementSize) UINT ( STDMETHODCALLTYPE *GetDescriptorHandleIncrementSize )( ID3D12Device4 * This, - /* [annotation] */ _In_ D3D12_DESCRIPTOR_HEAP_TYPE DescriptorHeapType); DECLSPEC_XFGVIRT(ID3D12Device, CreateRootSignature) HRESULT ( STDMETHODCALLTYPE *CreateRootSignature )( ID3D12Device4 * This, - /* [annotation] */ _In_ UINT nodeMask, - /* [annotation] */ _In_reads_(blobLengthInBytes) const void *pBlobWithRootSignature, - /* [annotation] */ _In_ SIZE_T blobLengthInBytes, - /* [annotation][in] */ - _In_ REFIID riid, - /* [annotation][iid_is][out] */ + REFIID riid, _COM_Outptr_ void **ppvRootSignature); DECLSPEC_XFGVIRT(ID3D12Device, CreateConstantBufferView) void ( STDMETHODCALLTYPE *CreateConstantBufferView )( ID3D12Device4 * This, - /* [annotation] */ _In_opt_ const D3D12_CONSTANT_BUFFER_VIEW_DESC *pDesc, - /* [annotation] */ _In_ D3D12_CPU_DESCRIPTOR_HANDLE DestDescriptor); DECLSPEC_XFGVIRT(ID3D12Device, CreateShaderResourceView) void ( STDMETHODCALLTYPE *CreateShaderResourceView )( ID3D12Device4 * This, - /* [annotation] */ _In_opt_ ID3D12Resource *pResource, - /* [annotation] */ _In_opt_ const D3D12_SHADER_RESOURCE_VIEW_DESC *pDesc, - /* [annotation] */ _In_ D3D12_CPU_DESCRIPTOR_HANDLE DestDescriptor); DECLSPEC_XFGVIRT(ID3D12Device, CreateUnorderedAccessView) void ( STDMETHODCALLTYPE *CreateUnorderedAccessView )( ID3D12Device4 * This, - /* [annotation] */ _In_opt_ ID3D12Resource *pResource, - /* [annotation] */ _In_opt_ ID3D12Resource *pCounterResource, - /* [annotation] */ _In_opt_ const D3D12_UNORDERED_ACCESS_VIEW_DESC *pDesc, - /* [annotation] */ _In_ D3D12_CPU_DESCRIPTOR_HANDLE DestDescriptor); DECLSPEC_XFGVIRT(ID3D12Device, CreateRenderTargetView) void ( STDMETHODCALLTYPE *CreateRenderTargetView )( ID3D12Device4 * This, - /* [annotation] */ _In_opt_ ID3D12Resource *pResource, - /* [annotation] */ _In_opt_ const D3D12_RENDER_TARGET_VIEW_DESC *pDesc, - /* [annotation] */ _In_ D3D12_CPU_DESCRIPTOR_HANDLE DestDescriptor); DECLSPEC_XFGVIRT(ID3D12Device, CreateDepthStencilView) void ( STDMETHODCALLTYPE *CreateDepthStencilView )( ID3D12Device4 * This, - /* [annotation] */ _In_opt_ ID3D12Resource *pResource, - /* [annotation] */ _In_opt_ const D3D12_DEPTH_STENCIL_VIEW_DESC *pDesc, - /* [annotation] */ _In_ D3D12_CPU_DESCRIPTOR_HANDLE DestDescriptor); DECLSPEC_XFGVIRT(ID3D12Device, CreateSampler) void ( STDMETHODCALLTYPE *CreateSampler )( ID3D12Device4 * This, - /* [annotation] */ _In_ const D3D12_SAMPLER_DESC *pDesc, - /* [annotation] */ _In_ D3D12_CPU_DESCRIPTOR_HANDLE DestDescriptor); DECLSPEC_XFGVIRT(ID3D12Device, CopyDescriptors) void ( STDMETHODCALLTYPE *CopyDescriptors )( ID3D12Device4 * This, - /* [annotation] */ _In_ UINT NumDestDescriptorRanges, - /* [annotation] */ _In_reads_(NumDestDescriptorRanges) const D3D12_CPU_DESCRIPTOR_HANDLE *pDestDescriptorRangeStarts, - /* [annotation] */ _In_reads_opt_(NumDestDescriptorRanges) const UINT *pDestDescriptorRangeSizes, - /* [annotation] */ _In_ UINT NumSrcDescriptorRanges, - /* [annotation] */ _In_reads_(NumSrcDescriptorRanges) const D3D12_CPU_DESCRIPTOR_HANDLE *pSrcDescriptorRangeStarts, - /* [annotation] */ _In_reads_opt_(NumSrcDescriptorRanges) const UINT *pSrcDescriptorRangeSizes, - /* [annotation] */ _In_ D3D12_DESCRIPTOR_HEAP_TYPE DescriptorHeapsType); DECLSPEC_XFGVIRT(ID3D12Device, CopyDescriptorsSimple) void ( STDMETHODCALLTYPE *CopyDescriptorsSimple )( ID3D12Device4 * This, - /* [annotation] */ _In_ UINT NumDescriptors, - /* [annotation] */ _In_ D3D12_CPU_DESCRIPTOR_HANDLE DestDescriptorRangeStart, - /* [annotation] */ _In_ D3D12_CPU_DESCRIPTOR_HANDLE SrcDescriptorRangeStart, - /* [annotation] */ _In_ D3D12_DESCRIPTOR_HEAP_TYPE DescriptorHeapsType); DECLSPEC_XFGVIRT(ID3D12Device, GetResourceAllocationInfo) +#if !defined(_WIN32) D3D12_RESOURCE_ALLOCATION_INFO ( STDMETHODCALLTYPE *GetResourceAllocationInfo )( ID3D12Device4 * This, - /* [annotation] */ _In_ UINT visibleMask, - /* [annotation] */ _In_ UINT numResourceDescs, - /* [annotation] */ _In_reads_(numResourceDescs) const D3D12_RESOURCE_DESC *pResourceDescs); +#else + D3D12_RESOURCE_ALLOCATION_INFO *( STDMETHODCALLTYPE *GetResourceAllocationInfo )( + ID3D12Device4 * This, + D3D12_RESOURCE_ALLOCATION_INFO * RetVal, + _In_ UINT visibleMask, + _In_ UINT numResourceDescs, + _In_reads_(numResourceDescs) const D3D12_RESOURCE_DESC *pResourceDescs); + +#endif + DECLSPEC_XFGVIRT(ID3D12Device, GetCustomHeapProperties) +#if !defined(_WIN32) D3D12_HEAP_PROPERTIES ( STDMETHODCALLTYPE *GetCustomHeapProperties )( ID3D12Device4 * This, - /* [annotation] */ _In_ UINT nodeMask, D3D12_HEAP_TYPE heapType); +#else + D3D12_HEAP_PROPERTIES *( STDMETHODCALLTYPE *GetCustomHeapProperties )( + ID3D12Device4 * This, + D3D12_HEAP_PROPERTIES * RetVal, + _In_ UINT nodeMask, + D3D12_HEAP_TYPE heapType); + +#endif + DECLSPEC_XFGVIRT(ID3D12Device, CreateCommittedResource) HRESULT ( STDMETHODCALLTYPE *CreateCommittedResource )( ID3D12Device4 * This, - /* [annotation] */ _In_ const D3D12_HEAP_PROPERTIES *pHeapProperties, D3D12_HEAP_FLAGS HeapFlags, - /* [annotation] */ _In_ const D3D12_RESOURCE_DESC *pDesc, D3D12_RESOURCE_STATES InitialResourceState, - /* [annotation] */ _In_opt_ const D3D12_CLEAR_VALUE *pOptimizedClearValue, - /* [annotation][in] */ - _In_ REFIID riidResource, - /* [annotation][iid_is][out] */ + REFIID riidResource, _COM_Outptr_opt_ void **ppvResource); DECLSPEC_XFGVIRT(ID3D12Device, CreateHeap) HRESULT ( STDMETHODCALLTYPE *CreateHeap )( ID3D12Device4 * This, - /* [annotation] */ _In_ const D3D12_HEAP_DESC *pDesc, - /* [annotation][in] */ - _In_ REFIID riid, - /* [annotation][iid_is][out] */ + REFIID riid, _COM_Outptr_opt_ void **ppvHeap); DECLSPEC_XFGVIRT(ID3D12Device, CreatePlacedResource) HRESULT ( STDMETHODCALLTYPE *CreatePlacedResource )( ID3D12Device4 * This, - /* [annotation] */ _In_ ID3D12Heap *pHeap, UINT64 HeapOffset, - /* [annotation] */ _In_ const D3D12_RESOURCE_DESC *pDesc, D3D12_RESOURCE_STATES InitialState, - /* [annotation] */ _In_opt_ const D3D12_CLEAR_VALUE *pOptimizedClearValue, - /* [annotation][in] */ - _In_ REFIID riid, - /* [annotation][iid_is][out] */ + REFIID riid, _COM_Outptr_opt_ void **ppvResource); DECLSPEC_XFGVIRT(ID3D12Device, CreateReservedResource) HRESULT ( STDMETHODCALLTYPE *CreateReservedResource )( ID3D12Device4 * This, - /* [annotation] */ _In_ const D3D12_RESOURCE_DESC *pDesc, D3D12_RESOURCE_STATES InitialState, - /* [annotation] */ _In_opt_ const D3D12_CLEAR_VALUE *pOptimizedClearValue, - /* [annotation][in] */ - _In_ REFIID riid, - /* [annotation][iid_is][out] */ + REFIID riid, _COM_Outptr_opt_ void **ppvResource); DECLSPEC_XFGVIRT(ID3D12Device, CreateSharedHandle) HRESULT ( STDMETHODCALLTYPE *CreateSharedHandle )( ID3D12Device4 * This, - /* [annotation] */ _In_ ID3D12DeviceChild *pObject, - /* [annotation] */ _In_opt_ const SECURITY_ATTRIBUTES *pAttributes, DWORD Access, - /* [annotation] */ _In_opt_ LPCWSTR Name, - /* [annotation] */ _Out_ HANDLE *pHandle); DECLSPEC_XFGVIRT(ID3D12Device, OpenSharedHandle) HRESULT ( STDMETHODCALLTYPE *OpenSharedHandle )( ID3D12Device4 * This, - /* [annotation] */ _In_ HANDLE NTHandle, - /* [annotation][in] */ - _In_ REFIID riid, - /* [annotation][iid_is][out] */ + REFIID riid, _COM_Outptr_opt_ void **ppvObj); DECLSPEC_XFGVIRT(ID3D12Device, OpenSharedHandleByName) HRESULT ( STDMETHODCALLTYPE *OpenSharedHandleByName )( ID3D12Device4 * This, - /* [annotation] */ _In_ LPCWSTR Name, DWORD Access, /* [annotation][out] */ @@ -13834,14 +12398,12 @@ EXTERN_C const IID IID_ID3D12Device4; HRESULT ( STDMETHODCALLTYPE *MakeResident )( ID3D12Device4 * This, UINT NumObjects, - /* [annotation] */ _In_reads_(NumObjects) ID3D12Pageable *const *ppObjects); DECLSPEC_XFGVIRT(ID3D12Device, Evict) HRESULT ( STDMETHODCALLTYPE *Evict )( ID3D12Device4 * This, UINT NumObjects, - /* [annotation] */ _In_reads_(NumObjects) ID3D12Pageable *const *ppObjects); DECLSPEC_XFGVIRT(ID3D12Device, CreateFence) @@ -13849,9 +12411,7 @@ EXTERN_C const IID IID_ID3D12Device4; ID3D12Device4 * This, UINT64 InitialValue, D3D12_FENCE_FLAGS Flags, - /* [annotation][in] */ - _In_ REFIID riid, - /* [annotation][iid_is][out] */ + REFIID riid, _COM_Outptr_ void **ppFence); DECLSPEC_XFGVIRT(ID3D12Device, GetDeviceRemovedReason) @@ -13861,30 +12421,20 @@ EXTERN_C const IID IID_ID3D12Device4; DECLSPEC_XFGVIRT(ID3D12Device, GetCopyableFootprints) void ( STDMETHODCALLTYPE *GetCopyableFootprints )( ID3D12Device4 * This, - /* [annotation] */ _In_ const D3D12_RESOURCE_DESC *pResourceDesc, - /* [annotation] */ _In_range_(0,D3D12_REQ_SUBRESOURCES) UINT FirstSubresource, - /* [annotation] */ _In_range_(0,D3D12_REQ_SUBRESOURCES-FirstSubresource) UINT NumSubresources, UINT64 BaseOffset, - /* [annotation] */ _Out_writes_opt_(NumSubresources) D3D12_PLACED_SUBRESOURCE_FOOTPRINT *pLayouts, - /* [annotation] */ _Out_writes_opt_(NumSubresources) UINT *pNumRows, - /* [annotation] */ _Out_writes_opt_(NumSubresources) UINT64 *pRowSizeInBytes, - /* [annotation] */ _Out_opt_ UINT64 *pTotalBytes); DECLSPEC_XFGVIRT(ID3D12Device, CreateQueryHeap) HRESULT ( STDMETHODCALLTYPE *CreateQueryHeap )( ID3D12Device4 * This, - /* [annotation] */ _In_ const D3D12_QUERY_HEAP_DESC *pDesc, - /* [annotation][in] */ - _In_ REFIID riid, - /* [annotation][iid_is][out] */ + REFIID riid, _COM_Outptr_opt_ void **ppvHeap); DECLSPEC_XFGVIRT(ID3D12Device, SetStablePowerState) @@ -13895,54 +12445,46 @@ EXTERN_C const IID IID_ID3D12Device4; DECLSPEC_XFGVIRT(ID3D12Device, CreateCommandSignature) HRESULT ( STDMETHODCALLTYPE *CreateCommandSignature )( ID3D12Device4 * This, - /* [annotation] */ _In_ const D3D12_COMMAND_SIGNATURE_DESC *pDesc, - /* [annotation] */ _In_opt_ ID3D12RootSignature *pRootSignature, - /* [annotation][in] */ - _In_ REFIID riid, - /* [annotation][iid_is][out] */ + REFIID riid, _COM_Outptr_opt_ void **ppvCommandSignature); DECLSPEC_XFGVIRT(ID3D12Device, GetResourceTiling) void ( STDMETHODCALLTYPE *GetResourceTiling )( ID3D12Device4 * This, - /* [annotation] */ _In_ ID3D12Resource *pTiledResource, - /* [annotation] */ _Out_opt_ UINT *pNumTilesForEntireResource, - /* [annotation] */ _Out_opt_ D3D12_PACKED_MIP_INFO *pPackedMipDesc, - /* [annotation] */ _Out_opt_ D3D12_TILE_SHAPE *pStandardTileShapeForNonPackedMips, - /* [annotation] */ _Inout_opt_ UINT *pNumSubresourceTilings, - /* [annotation] */ _In_ UINT FirstSubresourceTilingToGet, - /* [annotation] */ _Out_writes_(*pNumSubresourceTilings) D3D12_SUBRESOURCE_TILING *pSubresourceTilingsForNonPackedMips); DECLSPEC_XFGVIRT(ID3D12Device, GetAdapterLuid) +#if !defined(_WIN32) LUID ( STDMETHODCALLTYPE *GetAdapterLuid )( ID3D12Device4 * This); +#else + LUID *( STDMETHODCALLTYPE *GetAdapterLuid )( + ID3D12Device4 * This, + LUID * RetVal); + +#endif + DECLSPEC_XFGVIRT(ID3D12Device1, CreatePipelineLibrary) HRESULT ( STDMETHODCALLTYPE *CreatePipelineLibrary )( ID3D12Device4 * This, - /* [annotation] */ _In_reads_(BlobLength) const void *pLibraryBlob, SIZE_T BlobLength, - /* [annotation][in] */ - _In_ REFIID riid, - /* [annotation][iid_is][out] */ + REFIID riid, _COM_Outptr_ void **ppPipelineLibrary); DECLSPEC_XFGVIRT(ID3D12Device1, SetEventOnMultipleFenceCompletion) HRESULT ( STDMETHODCALLTYPE *SetEventOnMultipleFenceCompletion )( ID3D12Device4 * This, - /* [annotation] */ _In_reads_(NumFences) ID3D12Fence *const *ppFences, - /* [annotation] */ _In_reads_(NumFences) const UINT64 *pFenceValues, UINT NumFences, D3D12_MULTIPLE_FENCE_WAIT_FLAGS Flags, @@ -13952,39 +12494,28 @@ EXTERN_C const IID IID_ID3D12Device4; HRESULT ( STDMETHODCALLTYPE *SetResidencyPriority )( ID3D12Device4 * This, UINT NumObjects, - /* [annotation] */ _In_reads_(NumObjects) ID3D12Pageable *const *ppObjects, - /* [annotation] */ _In_reads_(NumObjects) const D3D12_RESIDENCY_PRIORITY *pPriorities); DECLSPEC_XFGVIRT(ID3D12Device2, CreatePipelineState) HRESULT ( STDMETHODCALLTYPE *CreatePipelineState )( ID3D12Device4 * This, - /* [annotation][in] */ - _In_ const D3D12_PIPELINE_STATE_STREAM_DESC *pDesc, - /* [annotation][in] */ - _In_ REFIID riid, - /* [annotation][iid_is][out] */ + const D3D12_PIPELINE_STATE_STREAM_DESC *pDesc, + REFIID riid, _COM_Outptr_ void **ppPipelineState); DECLSPEC_XFGVIRT(ID3D12Device3, OpenExistingHeapFromAddress) HRESULT ( STDMETHODCALLTYPE *OpenExistingHeapFromAddress )( ID3D12Device4 * This, - /* [annotation] */ _In_ const void *pAddress, - /* [annotation][in] */ - _In_ REFIID riid, - /* [annotation][iid_is][out] */ + REFIID riid, _COM_Outptr_ void **ppvHeap); DECLSPEC_XFGVIRT(ID3D12Device3, OpenExistingHeapFromFileMapping) HRESULT ( STDMETHODCALLTYPE *OpenExistingHeapFromFileMapping )( ID3D12Device4 * This, - /* [annotation] */ _In_ HANDLE hFileMapping, - /* [annotation][in] */ - _In_ REFIID riid, - /* [annotation][iid_is][out] */ + REFIID riid, _COM_Outptr_ void **ppvHeap); DECLSPEC_XFGVIRT(ID3D12Device3, EnqueueMakeResident) @@ -13992,91 +12523,76 @@ EXTERN_C const IID IID_ID3D12Device4; ID3D12Device4 * This, D3D12_RESIDENCY_FLAGS Flags, UINT NumObjects, - /* [annotation] */ _In_reads_(NumObjects) ID3D12Pageable *const *ppObjects, - /* [annotation] */ _In_ ID3D12Fence *pFenceToSignal, UINT64 FenceValueToSignal); DECLSPEC_XFGVIRT(ID3D12Device4, CreateCommandList1) HRESULT ( STDMETHODCALLTYPE *CreateCommandList1 )( ID3D12Device4 * This, - /* [annotation] */ _In_ UINT nodeMask, - /* [annotation] */ _In_ D3D12_COMMAND_LIST_TYPE type, - /* [annotation] */ _In_ D3D12_COMMAND_LIST_FLAGS flags, - /* [annotation][in] */ - _In_ REFIID riid, - /* [annotation][iid_is][out] */ + REFIID riid, _COM_Outptr_ void **ppCommandList); DECLSPEC_XFGVIRT(ID3D12Device4, CreateProtectedResourceSession) HRESULT ( STDMETHODCALLTYPE *CreateProtectedResourceSession )( ID3D12Device4 * This, - /* [annotation] */ _In_ const D3D12_PROTECTED_RESOURCE_SESSION_DESC *pDesc, - /* [annotation] */ _In_ REFIID riid, - /* [annotation][iid_is][out] */ _COM_Outptr_ void **ppSession); DECLSPEC_XFGVIRT(ID3D12Device4, CreateCommittedResource1) HRESULT ( STDMETHODCALLTYPE *CreateCommittedResource1 )( ID3D12Device4 * This, - /* [annotation] */ _In_ const D3D12_HEAP_PROPERTIES *pHeapProperties, D3D12_HEAP_FLAGS HeapFlags, - /* [annotation] */ _In_ const D3D12_RESOURCE_DESC *pDesc, D3D12_RESOURCE_STATES InitialResourceState, - /* [annotation] */ _In_opt_ const D3D12_CLEAR_VALUE *pOptimizedClearValue, - /* [annotation] */ _In_opt_ ID3D12ProtectedResourceSession *pProtectedSession, - /* [annotation][in] */ - _In_ REFIID riidResource, - /* [annotation][iid_is][out] */ + REFIID riidResource, _COM_Outptr_opt_ void **ppvResource); DECLSPEC_XFGVIRT(ID3D12Device4, CreateHeap1) HRESULT ( STDMETHODCALLTYPE *CreateHeap1 )( ID3D12Device4 * This, - /* [annotation] */ _In_ const D3D12_HEAP_DESC *pDesc, - /* [annotation] */ _In_opt_ ID3D12ProtectedResourceSession *pProtectedSession, - /* [annotation][in] */ - _In_ REFIID riid, - /* [annotation][iid_is][out] */ + REFIID riid, _COM_Outptr_opt_ void **ppvHeap); DECLSPEC_XFGVIRT(ID3D12Device4, CreateReservedResource1) HRESULT ( STDMETHODCALLTYPE *CreateReservedResource1 )( ID3D12Device4 * This, - /* [annotation] */ _In_ const D3D12_RESOURCE_DESC *pDesc, D3D12_RESOURCE_STATES InitialState, - /* [annotation] */ _In_opt_ const D3D12_CLEAR_VALUE *pOptimizedClearValue, - /* [annotation] */ _In_opt_ ID3D12ProtectedResourceSession *pProtectedSession, - /* [annotation][in] */ - _In_ REFIID riid, - /* [annotation][iid_is][out] */ + REFIID riid, _COM_Outptr_opt_ void **ppvResource); DECLSPEC_XFGVIRT(ID3D12Device4, GetResourceAllocationInfo1) +#if !defined(_WIN32) D3D12_RESOURCE_ALLOCATION_INFO ( STDMETHODCALLTYPE *GetResourceAllocationInfo1 )( ID3D12Device4 * This, UINT visibleMask, UINT numResourceDescs, - /* [annotation] */ _In_reads_(numResourceDescs) const D3D12_RESOURCE_DESC *pResourceDescs, - /* [annotation] */ _Out_writes_opt_(numResourceDescs) D3D12_RESOURCE_ALLOCATION_INFO1 *pResourceAllocationInfo1); +#else + D3D12_RESOURCE_ALLOCATION_INFO *( STDMETHODCALLTYPE *GetResourceAllocationInfo1 )( + ID3D12Device4 * This, + D3D12_RESOURCE_ALLOCATION_INFO * RetVal, + UINT visibleMask, + UINT numResourceDescs, + _In_reads_(numResourceDescs) const D3D12_RESOURCE_DESC *pResourceDescs, + _Out_writes_opt_(numResourceDescs) D3D12_RESOURCE_ALLOCATION_INFO1 *pResourceAllocationInfo1); + +#endif + END_INTERFACE } ID3D12Device4Vtbl; @@ -14166,12 +12682,22 @@ EXTERN_C const IID IID_ID3D12Device4; #define ID3D12Device4_CopyDescriptorsSimple(This,NumDescriptors,DestDescriptorRangeStart,SrcDescriptorRangeStart,DescriptorHeapsType) \ ( (This)->lpVtbl -> CopyDescriptorsSimple(This,NumDescriptors,DestDescriptorRangeStart,SrcDescriptorRangeStart,DescriptorHeapsType) ) +#if !defined(_WIN32) #define ID3D12Device4_GetResourceAllocationInfo(This,visibleMask,numResourceDescs,pResourceDescs) \ ( (This)->lpVtbl -> GetResourceAllocationInfo(This,visibleMask,numResourceDescs,pResourceDescs) ) +#else +#define ID3D12Device4_GetResourceAllocationInfo(This,RetVal,visibleMask,numResourceDescs,pResourceDescs) \ + ( (This)->lpVtbl -> GetResourceAllocationInfo(This,RetVal,visibleMask,numResourceDescs,pResourceDescs) ) +#endif +#if !defined(_WIN32) #define ID3D12Device4_GetCustomHeapProperties(This,nodeMask,heapType) \ ( (This)->lpVtbl -> GetCustomHeapProperties(This,nodeMask,heapType) ) +#else +#define ID3D12Device4_GetCustomHeapProperties(This,RetVal,nodeMask,heapType) \ + ( (This)->lpVtbl -> GetCustomHeapProperties(This,RetVal,nodeMask,heapType) ) +#endif #define ID3D12Device4_CreateCommittedResource(This,pHeapProperties,HeapFlags,pDesc,InitialResourceState,pOptimizedClearValue,riidResource,ppvResource) \ ( (This)->lpVtbl -> CreateCommittedResource(This,pHeapProperties,HeapFlags,pDesc,InitialResourceState,pOptimizedClearValue,riidResource,ppvResource) ) @@ -14220,9 +12746,14 @@ EXTERN_C const IID IID_ID3D12Device4; #define ID3D12Device4_GetResourceTiling(This,pTiledResource,pNumTilesForEntireResource,pPackedMipDesc,pStandardTileShapeForNonPackedMips,pNumSubresourceTilings,FirstSubresourceTilingToGet,pSubresourceTilingsForNonPackedMips) \ ( (This)->lpVtbl -> GetResourceTiling(This,pTiledResource,pNumTilesForEntireResource,pPackedMipDesc,pStandardTileShapeForNonPackedMips,pNumSubresourceTilings,FirstSubresourceTilingToGet,pSubresourceTilingsForNonPackedMips) ) +#if !defined(_WIN32) #define ID3D12Device4_GetAdapterLuid(This) \ ( (This)->lpVtbl -> GetAdapterLuid(This) ) +#else +#define ID3D12Device4_GetAdapterLuid(This,RetVal) \ + ( (This)->lpVtbl -> GetAdapterLuid(This,RetVal) ) +#endif #define ID3D12Device4_CreatePipelineLibrary(This,pLibraryBlob,BlobLength,riid,ppPipelineLibrary) \ @@ -14263,9 +12794,14 @@ EXTERN_C const IID IID_ID3D12Device4; #define ID3D12Device4_CreateReservedResource1(This,pDesc,InitialState,pOptimizedClearValue,pProtectedSession,riid,ppvResource) \ ( (This)->lpVtbl -> CreateReservedResource1(This,pDesc,InitialState,pOptimizedClearValue,pProtectedSession,riid,ppvResource) ) +#if !defined(_WIN32) #define ID3D12Device4_GetResourceAllocationInfo1(This,visibleMask,numResourceDescs,pResourceDescs,pResourceAllocationInfo1) \ ( (This)->lpVtbl -> GetResourceAllocationInfo1(This,visibleMask,numResourceDescs,pResourceDescs,pResourceAllocationInfo1) ) +#else +#define ID3D12Device4_GetResourceAllocationInfo1(This,RetVal,visibleMask,numResourceDescs,pResourceDescs,pResourceAllocationInfo1) \ + ( (This)->lpVtbl -> GetResourceAllocationInfo1(This,RetVal,visibleMask,numResourceDescs,pResourceDescs,pResourceAllocationInfo1) ) +#endif #endif /* COBJMACROS */ @@ -14274,23 +12810,6 @@ EXTERN_C const IID IID_ID3D12Device4; -D3D12_RESOURCE_ALLOCATION_INFO STDMETHODCALLTYPE ID3D12Device4_GetResourceAllocationInfo1_Proxy( - ID3D12Device4 * This, - UINT visibleMask, - UINT numResourceDescs, - /* [annotation] */ - _In_reads_(numResourceDescs) const D3D12_RESOURCE_DESC *pResourceDescs, - /* [annotation] */ - _Out_writes_opt_(numResourceDescs) D3D12_RESOURCE_ALLOCATION_INFO1 *pResourceAllocationInfo1); - - -void __RPC_STUB ID3D12Device4_GetResourceAllocationInfo1_Stub( - IRpcStubBuffer *This, - IRpcChannelBuffer *_pRpcChannelBuffer, - PRPC_MESSAGE _pRpcMessage, - DWORD *_pdwStubPhase); - - #endif /* __ID3D12Device4_INTERFACE_DEFINED__ */ @@ -14341,9 +12860,7 @@ EXTERN_C const IID IID_ID3D12LifetimeOwner; DECLSPEC_XFGVIRT(IUnknown, QueryInterface) HRESULT ( STDMETHODCALLTYPE *QueryInterface )( ID3D12LifetimeOwner * This, - /* [annotation][in] */ - _In_ REFIID riid, - /* [annotation][iid_is][out] */ + REFIID riid, _COM_Outptr_ void **ppvObject); DECLSPEC_XFGVIRT(IUnknown, AddRef) @@ -14411,19 +12928,21 @@ EXTERN_C const IID IID_ID3D12SwapChainAssistant; ID3D12SwapChainAssistant : public IUnknown { public: +#if defined(_MSC_VER) || !defined(_WIN32) virtual LUID STDMETHODCALLTYPE GetLUID( void) = 0; +#else + virtual LUID *STDMETHODCALLTYPE GetLUID( + LUID * RetVal) = 0; +#endif virtual HRESULT STDMETHODCALLTYPE GetSwapChainObject( REFIID riid, - /* [annotation][iid_is][out] */ _COM_Outptr_ void **ppv) = 0; virtual HRESULT STDMETHODCALLTYPE GetCurrentResourceAndCommandQueue( REFIID riidResource, - /* [annotation][iid_is][out] */ _COM_Outptr_ void **ppvResource, REFIID riidQueue, - /* [annotation][iid_is][out] */ _COM_Outptr_ void **ppvQueue) = 0; virtual HRESULT STDMETHODCALLTYPE InsertImplicitSync( void) = 0; @@ -14440,9 +12959,7 @@ EXTERN_C const IID IID_ID3D12SwapChainAssistant; DECLSPEC_XFGVIRT(IUnknown, QueryInterface) HRESULT ( STDMETHODCALLTYPE *QueryInterface )( ID3D12SwapChainAssistant * This, - /* [annotation][in] */ - _In_ REFIID riid, - /* [annotation][iid_is][out] */ + REFIID riid, _COM_Outptr_ void **ppvObject); DECLSPEC_XFGVIRT(IUnknown, AddRef) @@ -14454,24 +12971,29 @@ EXTERN_C const IID IID_ID3D12SwapChainAssistant; ID3D12SwapChainAssistant * This); DECLSPEC_XFGVIRT(ID3D12SwapChainAssistant, GetLUID) +#if !defined(_WIN32) LUID ( STDMETHODCALLTYPE *GetLUID )( ID3D12SwapChainAssistant * This); +#else + LUID *( STDMETHODCALLTYPE *GetLUID )( + ID3D12SwapChainAssistant * This, + LUID * RetVal); + +#endif + DECLSPEC_XFGVIRT(ID3D12SwapChainAssistant, GetSwapChainObject) HRESULT ( STDMETHODCALLTYPE *GetSwapChainObject )( ID3D12SwapChainAssistant * This, REFIID riid, - /* [annotation][iid_is][out] */ _COM_Outptr_ void **ppv); DECLSPEC_XFGVIRT(ID3D12SwapChainAssistant, GetCurrentResourceAndCommandQueue) HRESULT ( STDMETHODCALLTYPE *GetCurrentResourceAndCommandQueue )( ID3D12SwapChainAssistant * This, REFIID riidResource, - /* [annotation][iid_is][out] */ _COM_Outptr_ void **ppvResource, REFIID riidQueue, - /* [annotation][iid_is][out] */ _COM_Outptr_ void **ppvQueue); DECLSPEC_XFGVIRT(ID3D12SwapChainAssistant, InsertImplicitSync) @@ -14500,9 +13022,14 @@ EXTERN_C const IID IID_ID3D12SwapChainAssistant; #define ID3D12SwapChainAssistant_Release(This) \ ( (This)->lpVtbl -> Release(This) ) +#if !defined(_WIN32) #define ID3D12SwapChainAssistant_GetLUID(This) \ ( (This)->lpVtbl -> GetLUID(This) ) +#else +#define ID3D12SwapChainAssistant_GetLUID(This,RetVal) \ + ( (This)->lpVtbl -> GetLUID(This,RetVal) ) +#endif #define ID3D12SwapChainAssistant_GetSwapChainObject(This,riid,ppv) \ ( (This)->lpVtbl -> GetSwapChainObject(This,riid,ppv) ) @@ -14520,17 +13047,6 @@ EXTERN_C const IID IID_ID3D12SwapChainAssistant; -LUID STDMETHODCALLTYPE ID3D12SwapChainAssistant_GetLUID_Proxy( - ID3D12SwapChainAssistant * This); - - -void __RPC_STUB ID3D12SwapChainAssistant_GetLUID_Stub( - IRpcStubBuffer *This, - IRpcChannelBuffer *_pRpcChannelBuffer, - PRPC_MESSAGE _pRpcMessage, - DWORD *_pdwStubPhase); - - #endif /* __ID3D12SwapChainAssistant_INTERFACE_DEFINED__ */ @@ -14551,7 +13067,6 @@ EXTERN_C const IID IID_ID3D12LifetimeTracker; { public: virtual HRESULT STDMETHODCALLTYPE DestroyOwnedObject( - /* [annotation] */ _In_ ID3D12DeviceChild *pObject) = 0; }; @@ -14566,9 +13081,7 @@ EXTERN_C const IID IID_ID3D12LifetimeTracker; DECLSPEC_XFGVIRT(IUnknown, QueryInterface) HRESULT ( STDMETHODCALLTYPE *QueryInterface )( ID3D12LifetimeTracker * This, - /* [annotation][in] */ - _In_ REFIID riid, - /* [annotation][iid_is][out] */ + REFIID riid, _COM_Outptr_ void **ppvObject); DECLSPEC_XFGVIRT(IUnknown, AddRef) @@ -14582,49 +13095,37 @@ EXTERN_C const IID IID_ID3D12LifetimeTracker; DECLSPEC_XFGVIRT(ID3D12Object, GetPrivateData) HRESULT ( STDMETHODCALLTYPE *GetPrivateData )( ID3D12LifetimeTracker * This, - /* [annotation] */ _In_ REFGUID guid, - /* [annotation] */ _Inout_ UINT *pDataSize, - /* [annotation] */ _Out_writes_bytes_opt_( *pDataSize ) void *pData); DECLSPEC_XFGVIRT(ID3D12Object, SetPrivateData) HRESULT ( STDMETHODCALLTYPE *SetPrivateData )( ID3D12LifetimeTracker * This, - /* [annotation] */ _In_ REFGUID guid, - /* [annotation] */ _In_ UINT DataSize, - /* [annotation] */ _In_reads_bytes_opt_( DataSize ) const void *pData); DECLSPEC_XFGVIRT(ID3D12Object, SetPrivateDataInterface) HRESULT ( STDMETHODCALLTYPE *SetPrivateDataInterface )( ID3D12LifetimeTracker * This, - /* [annotation] */ _In_ REFGUID guid, - /* [annotation] */ _In_opt_ const IUnknown *pData); DECLSPEC_XFGVIRT(ID3D12Object, SetName) HRESULT ( STDMETHODCALLTYPE *SetName )( ID3D12LifetimeTracker * This, - /* [annotation] */ _In_z_ LPCWSTR Name); DECLSPEC_XFGVIRT(ID3D12DeviceChild, GetDevice) HRESULT ( STDMETHODCALLTYPE *GetDevice )( ID3D12LifetimeTracker * This, - /* [annotation][in] */ - _In_ REFIID riid, - /* [annotation][iid_is][out] */ + REFIID riid, _COM_Outptr_opt_ void **ppvDevice); DECLSPEC_XFGVIRT(ID3D12LifetimeTracker, DestroyOwnedObject) HRESULT ( STDMETHODCALLTYPE *DestroyOwnedObject )( ID3D12LifetimeTracker * This, - /* [annotation] */ _In_ ID3D12DeviceChild *pObject); END_INTERFACE @@ -14783,9 +13284,7 @@ EXTERN_C const IID IID_ID3D12StateObject; DECLSPEC_XFGVIRT(IUnknown, QueryInterface) HRESULT ( STDMETHODCALLTYPE *QueryInterface )( ID3D12StateObject * This, - /* [annotation][in] */ - _In_ REFIID riid, - /* [annotation][iid_is][out] */ + REFIID riid, _COM_Outptr_ void **ppvObject); DECLSPEC_XFGVIRT(IUnknown, AddRef) @@ -14799,43 +13298,32 @@ EXTERN_C const IID IID_ID3D12StateObject; DECLSPEC_XFGVIRT(ID3D12Object, GetPrivateData) HRESULT ( STDMETHODCALLTYPE *GetPrivateData )( ID3D12StateObject * This, - /* [annotation] */ _In_ REFGUID guid, - /* [annotation] */ _Inout_ UINT *pDataSize, - /* [annotation] */ _Out_writes_bytes_opt_( *pDataSize ) void *pData); DECLSPEC_XFGVIRT(ID3D12Object, SetPrivateData) HRESULT ( STDMETHODCALLTYPE *SetPrivateData )( ID3D12StateObject * This, - /* [annotation] */ _In_ REFGUID guid, - /* [annotation] */ _In_ UINT DataSize, - /* [annotation] */ _In_reads_bytes_opt_( DataSize ) const void *pData); DECLSPEC_XFGVIRT(ID3D12Object, SetPrivateDataInterface) HRESULT ( STDMETHODCALLTYPE *SetPrivateDataInterface )( ID3D12StateObject * This, - /* [annotation] */ _In_ REFGUID guid, - /* [annotation] */ _In_opt_ const IUnknown *pData); DECLSPEC_XFGVIRT(ID3D12Object, SetName) HRESULT ( STDMETHODCALLTYPE *SetName )( ID3D12StateObject * This, - /* [annotation] */ _In_z_ LPCWSTR Name); DECLSPEC_XFGVIRT(ID3D12DeviceChild, GetDevice) HRESULT ( STDMETHODCALLTYPE *GetDevice )( ID3D12StateObject * This, - /* [annotation][in] */ - _In_ REFIID riid, - /* [annotation][iid_is][out] */ + REFIID riid, _COM_Outptr_opt_ void **ppvDevice); END_INTERFACE @@ -14906,11 +13394,9 @@ EXTERN_C const IID IID_ID3D12StateObjectProperties; { public: virtual void *STDMETHODCALLTYPE GetShaderIdentifier( - /* [annotation] */ _In_ LPCWSTR pExportName) = 0; virtual UINT64 STDMETHODCALLTYPE GetShaderStackSize( - /* [annotation] */ _In_ LPCWSTR pExportName) = 0; virtual UINT64 STDMETHODCALLTYPE GetPipelineStackSize( void) = 0; @@ -14930,9 +13416,7 @@ EXTERN_C const IID IID_ID3D12StateObjectProperties; DECLSPEC_XFGVIRT(IUnknown, QueryInterface) HRESULT ( STDMETHODCALLTYPE *QueryInterface )( ID3D12StateObjectProperties * This, - /* [annotation][in] */ - _In_ REFIID riid, - /* [annotation][iid_is][out] */ + REFIID riid, _COM_Outptr_ void **ppvObject); DECLSPEC_XFGVIRT(IUnknown, AddRef) @@ -14946,13 +13430,11 @@ EXTERN_C const IID IID_ID3D12StateObjectProperties; DECLSPEC_XFGVIRT(ID3D12StateObjectProperties, GetShaderIdentifier) void *( STDMETHODCALLTYPE *GetShaderIdentifier )( ID3D12StateObjectProperties * This, - /* [annotation] */ _In_ LPCWSTR pExportName); DECLSPEC_XFGVIRT(ID3D12StateObjectProperties, GetShaderStackSize) UINT64 ( STDMETHODCALLTYPE *GetShaderStackSize )( ID3D12StateObjectProperties * This, - /* [annotation] */ _In_ LPCWSTR pExportName); DECLSPEC_XFGVIRT(ID3D12StateObjectProperties, GetPipelineStackSize) @@ -15077,7 +13559,6 @@ DEFINE_ENUM_FLAG_OPERATORS( D3D12_EXPORT_FLAGS ); typedef struct D3D12_EXPORT_DESC { LPCWSTR Name; - /* [annotation] */ _In_opt_ LPCWSTR ExportToRename; D3D12_EXPORT_FLAGS Flags; } D3D12_EXPORT_DESC; @@ -15086,7 +13567,6 @@ typedef struct D3D12_DXIL_LIBRARY_DESC { D3D12_SHADER_BYTECODE DXILLibrary; UINT NumExports; - /* [annotation] */ _In_reads_(NumExports) D3D12_EXPORT_DESC *pExports; } D3D12_DXIL_LIBRARY_DESC; @@ -15094,7 +13574,6 @@ typedef struct D3D12_EXISTING_COLLECTION_DESC { ID3D12StateObject *pExistingCollection; UINT NumExports; - /* [annotation] */ _In_reads_(NumExports) D3D12_EXPORT_DESC *pExports; } D3D12_EXISTING_COLLECTION_DESC; @@ -15102,7 +13581,6 @@ typedef struct D3D12_SUBOBJECT_TO_EXPORTS_ASSOCIATION { const D3D12_STATE_SUBOBJECT *pSubobjectToAssociate; UINT NumExports; - /* [annotation] */ _In_reads_(NumExports) LPCWSTR *pExports; } D3D12_SUBOBJECT_TO_EXPORTS_ASSOCIATION; @@ -15110,7 +13588,6 @@ typedef struct D3D12_DXIL_SUBOBJECT_TO_EXPORTS_ASSOCIATION { LPCWSTR SubobjectToAssociate; UINT NumExports; - /* [annotation] */ _In_reads_(NumExports) LPCWSTR *pExports; } D3D12_DXIL_SUBOBJECT_TO_EXPORTS_ASSOCIATION; @@ -15125,11 +13602,8 @@ typedef struct D3D12_HIT_GROUP_DESC { LPCWSTR HitGroupExport; D3D12_HIT_GROUP_TYPE Type; - /* [annotation] */ _In_opt_ LPCWSTR AnyHitShaderImport; - /* [annotation] */ _In_opt_ LPCWSTR ClosestHitShaderImport; - /* [annotation] */ _In_opt_ LPCWSTR IntersectionShaderImport; } D3D12_HIT_GROUP_DESC; @@ -15170,7 +13644,6 @@ typedef struct D3D12_STATE_OBJECT_DESC { D3D12_STATE_OBJECT_TYPE Type; UINT NumSubobjects; - /* [annotation] */ _In_reads_(NumSubobjects) const D3D12_STATE_SUBOBJECT *pSubobjects; } D3D12_STATE_OBJECT_DESC; @@ -15401,7 +13874,6 @@ typedef struct D3D12_BUILD_RAYTRACING_ACCELERATION_STRUCTURE_DESC { D3D12_GPU_VIRTUAL_ADDRESS DestAccelerationStructureData; D3D12_BUILD_RAYTRACING_ACCELERATION_STRUCTURE_INPUTS Inputs; - /* [annotation] */ _In_opt_ D3D12_GPU_VIRTUAL_ADDRESS SourceAccelerationStructureData; D3D12_GPU_VIRTUAL_ADDRESS ScratchAccelerationStructureData; } D3D12_BUILD_RAYTRACING_ACCELERATION_STRUCTURE_DESC; @@ -15458,65 +13930,42 @@ EXTERN_C const IID IID_ID3D12Device5; { public: virtual HRESULT STDMETHODCALLTYPE CreateLifetimeTracker( - /* [annotation] */ _In_ ID3D12LifetimeOwner *pOwner, - /* [annotation][in] */ - _In_ REFIID riid, - /* [annotation][iid_is][out] */ + REFIID riid, _COM_Outptr_ void **ppvTracker) = 0; virtual void STDMETHODCALLTYPE RemoveDevice( void) = 0; virtual HRESULT STDMETHODCALLTYPE EnumerateMetaCommands( - /* [annotation] */ _Inout_ UINT *pNumMetaCommands, - /* [annotation] */ _Out_writes_opt_(*pNumMetaCommands) D3D12_META_COMMAND_DESC *pDescs) = 0; virtual HRESULT STDMETHODCALLTYPE EnumerateMetaCommandParameters( - /* [annotation] */ _In_ REFGUID CommandId, - /* [annotation] */ _In_ D3D12_META_COMMAND_PARAMETER_STAGE Stage, - /* [annotation] */ _Out_opt_ UINT *pTotalStructureSizeInBytes, - /* [annotation] */ _Inout_ UINT *pParameterCount, - /* [annotation] */ _Out_writes_opt_(*pParameterCount) D3D12_META_COMMAND_PARAMETER_DESC *pParameterDescs) = 0; virtual HRESULT STDMETHODCALLTYPE CreateMetaCommand( - /* [annotation] */ _In_ REFGUID CommandId, - /* [annotation] */ _In_ UINT NodeMask, - /* [annotation] */ _In_reads_bytes_opt_(CreationParametersDataSizeInBytes) const void *pCreationParametersData, - /* [annotation] */ _In_ SIZE_T CreationParametersDataSizeInBytes, - /* [annotation][in] */ - _In_ REFIID riid, - /* [annotation][iid_is][out] */ + REFIID riid, _COM_Outptr_ void **ppMetaCommand) = 0; virtual HRESULT STDMETHODCALLTYPE CreateStateObject( - /* [annotation][in] */ - _In_ const D3D12_STATE_OBJECT_DESC *pDesc, - /* [annotation][in] */ - _In_ REFIID riid, - /* [annotation][iid_is][out] */ + const D3D12_STATE_OBJECT_DESC *pDesc, + REFIID riid, _COM_Outptr_ void **ppStateObject) = 0; virtual void STDMETHODCALLTYPE GetRaytracingAccelerationStructurePrebuildInfo( - /* [annotation] */ _In_ const D3D12_BUILD_RAYTRACING_ACCELERATION_STRUCTURE_INPUTS *pDesc, - /* [annotation] */ _Out_ D3D12_RAYTRACING_ACCELERATION_STRUCTURE_PREBUILD_INFO *pInfo) = 0; virtual D3D12_DRIVER_MATCHING_IDENTIFIER_STATUS STDMETHODCALLTYPE CheckDriverMatchingIdentifier( - /* [annotation] */ _In_ D3D12_SERIALIZED_DATA_TYPE SerializedDataType, - /* [annotation] */ _In_ const D3D12_SERIALIZED_DATA_DRIVER_MATCHING_IDENTIFIER *pIdentifierToCheck) = 0; }; @@ -15531,9 +13980,7 @@ EXTERN_C const IID IID_ID3D12Device5; DECLSPEC_XFGVIRT(IUnknown, QueryInterface) HRESULT ( STDMETHODCALLTYPE *QueryInterface )( ID3D12Device5 * This, - /* [annotation][in] */ - _In_ REFIID riid, - /* [annotation][iid_is][out] */ + REFIID riid, _COM_Outptr_ void **ppvObject); DECLSPEC_XFGVIRT(IUnknown, AddRef) @@ -15547,35 +13994,26 @@ EXTERN_C const IID IID_ID3D12Device5; DECLSPEC_XFGVIRT(ID3D12Object, GetPrivateData) HRESULT ( STDMETHODCALLTYPE *GetPrivateData )( ID3D12Device5 * This, - /* [annotation] */ _In_ REFGUID guid, - /* [annotation] */ _Inout_ UINT *pDataSize, - /* [annotation] */ _Out_writes_bytes_opt_( *pDataSize ) void *pData); DECLSPEC_XFGVIRT(ID3D12Object, SetPrivateData) HRESULT ( STDMETHODCALLTYPE *SetPrivateData )( ID3D12Device5 * This, - /* [annotation] */ _In_ REFGUID guid, - /* [annotation] */ _In_ UINT DataSize, - /* [annotation] */ _In_reads_bytes_opt_( DataSize ) const void *pData); DECLSPEC_XFGVIRT(ID3D12Object, SetPrivateDataInterface) HRESULT ( STDMETHODCALLTYPE *SetPrivateDataInterface )( ID3D12Device5 * This, - /* [annotation] */ _In_ REFGUID guid, - /* [annotation] */ _In_opt_ const IUnknown *pData); DECLSPEC_XFGVIRT(ID3D12Object, SetName) HRESULT ( STDMETHODCALLTYPE *SetName )( ID3D12Device5 * This, - /* [annotation] */ _In_z_ LPCWSTR Name); DECLSPEC_XFGVIRT(ID3D12Device, GetNodeCount) @@ -15585,284 +14023,220 @@ EXTERN_C const IID IID_ID3D12Device5; DECLSPEC_XFGVIRT(ID3D12Device, CreateCommandQueue) HRESULT ( STDMETHODCALLTYPE *CreateCommandQueue )( ID3D12Device5 * This, - /* [annotation] */ _In_ const D3D12_COMMAND_QUEUE_DESC *pDesc, - /* [annotation][in] */ - _In_ REFIID riid, - /* [annotation][iid_is][out] */ + REFIID riid, _COM_Outptr_ void **ppCommandQueue); DECLSPEC_XFGVIRT(ID3D12Device, CreateCommandAllocator) HRESULT ( STDMETHODCALLTYPE *CreateCommandAllocator )( ID3D12Device5 * This, - /* [annotation] */ _In_ D3D12_COMMAND_LIST_TYPE type, - /* [annotation][in] */ - _In_ REFIID riid, - /* [annotation][iid_is][out] */ + REFIID riid, _COM_Outptr_ void **ppCommandAllocator); DECLSPEC_XFGVIRT(ID3D12Device, CreateGraphicsPipelineState) HRESULT ( STDMETHODCALLTYPE *CreateGraphicsPipelineState )( ID3D12Device5 * This, - /* [annotation] */ _In_ const D3D12_GRAPHICS_PIPELINE_STATE_DESC *pDesc, - /* [annotation][in] */ - _In_ REFIID riid, - /* [annotation][iid_is][out] */ + REFIID riid, _COM_Outptr_ void **ppPipelineState); DECLSPEC_XFGVIRT(ID3D12Device, CreateComputePipelineState) HRESULT ( STDMETHODCALLTYPE *CreateComputePipelineState )( ID3D12Device5 * This, - /* [annotation] */ _In_ const D3D12_COMPUTE_PIPELINE_STATE_DESC *pDesc, - /* [annotation][in] */ - _In_ REFIID riid, - /* [annotation][iid_is][out] */ + REFIID riid, _COM_Outptr_ void **ppPipelineState); DECLSPEC_XFGVIRT(ID3D12Device, CreateCommandList) HRESULT ( STDMETHODCALLTYPE *CreateCommandList )( ID3D12Device5 * This, - /* [annotation] */ _In_ UINT nodeMask, - /* [annotation] */ _In_ D3D12_COMMAND_LIST_TYPE type, - /* [annotation] */ _In_ ID3D12CommandAllocator *pCommandAllocator, - /* [annotation] */ _In_opt_ ID3D12PipelineState *pInitialState, - /* [annotation][in] */ - _In_ REFIID riid, - /* [annotation][iid_is][out] */ + REFIID riid, _COM_Outptr_ void **ppCommandList); DECLSPEC_XFGVIRT(ID3D12Device, CheckFeatureSupport) HRESULT ( STDMETHODCALLTYPE *CheckFeatureSupport )( ID3D12Device5 * This, D3D12_FEATURE Feature, - /* [annotation] */ _Inout_updates_bytes_(FeatureSupportDataSize) void *pFeatureSupportData, UINT FeatureSupportDataSize); DECLSPEC_XFGVIRT(ID3D12Device, CreateDescriptorHeap) HRESULT ( STDMETHODCALLTYPE *CreateDescriptorHeap )( ID3D12Device5 * This, - /* [annotation] */ _In_ const D3D12_DESCRIPTOR_HEAP_DESC *pDescriptorHeapDesc, - /* [annotation][in] */ - _In_ REFIID riid, - /* [annotation][iid_is][out] */ + REFIID riid, _COM_Outptr_ void **ppvHeap); DECLSPEC_XFGVIRT(ID3D12Device, GetDescriptorHandleIncrementSize) UINT ( STDMETHODCALLTYPE *GetDescriptorHandleIncrementSize )( ID3D12Device5 * This, - /* [annotation] */ _In_ D3D12_DESCRIPTOR_HEAP_TYPE DescriptorHeapType); DECLSPEC_XFGVIRT(ID3D12Device, CreateRootSignature) HRESULT ( STDMETHODCALLTYPE *CreateRootSignature )( ID3D12Device5 * This, - /* [annotation] */ _In_ UINT nodeMask, - /* [annotation] */ _In_reads_(blobLengthInBytes) const void *pBlobWithRootSignature, - /* [annotation] */ _In_ SIZE_T blobLengthInBytes, - /* [annotation][in] */ - _In_ REFIID riid, - /* [annotation][iid_is][out] */ + REFIID riid, _COM_Outptr_ void **ppvRootSignature); DECLSPEC_XFGVIRT(ID3D12Device, CreateConstantBufferView) void ( STDMETHODCALLTYPE *CreateConstantBufferView )( ID3D12Device5 * This, - /* [annotation] */ _In_opt_ const D3D12_CONSTANT_BUFFER_VIEW_DESC *pDesc, - /* [annotation] */ _In_ D3D12_CPU_DESCRIPTOR_HANDLE DestDescriptor); DECLSPEC_XFGVIRT(ID3D12Device, CreateShaderResourceView) void ( STDMETHODCALLTYPE *CreateShaderResourceView )( ID3D12Device5 * This, - /* [annotation] */ _In_opt_ ID3D12Resource *pResource, - /* [annotation] */ _In_opt_ const D3D12_SHADER_RESOURCE_VIEW_DESC *pDesc, - /* [annotation] */ _In_ D3D12_CPU_DESCRIPTOR_HANDLE DestDescriptor); DECLSPEC_XFGVIRT(ID3D12Device, CreateUnorderedAccessView) void ( STDMETHODCALLTYPE *CreateUnorderedAccessView )( ID3D12Device5 * This, - /* [annotation] */ _In_opt_ ID3D12Resource *pResource, - /* [annotation] */ _In_opt_ ID3D12Resource *pCounterResource, - /* [annotation] */ _In_opt_ const D3D12_UNORDERED_ACCESS_VIEW_DESC *pDesc, - /* [annotation] */ _In_ D3D12_CPU_DESCRIPTOR_HANDLE DestDescriptor); DECLSPEC_XFGVIRT(ID3D12Device, CreateRenderTargetView) void ( STDMETHODCALLTYPE *CreateRenderTargetView )( ID3D12Device5 * This, - /* [annotation] */ _In_opt_ ID3D12Resource *pResource, - /* [annotation] */ _In_opt_ const D3D12_RENDER_TARGET_VIEW_DESC *pDesc, - /* [annotation] */ _In_ D3D12_CPU_DESCRIPTOR_HANDLE DestDescriptor); DECLSPEC_XFGVIRT(ID3D12Device, CreateDepthStencilView) void ( STDMETHODCALLTYPE *CreateDepthStencilView )( ID3D12Device5 * This, - /* [annotation] */ _In_opt_ ID3D12Resource *pResource, - /* [annotation] */ _In_opt_ const D3D12_DEPTH_STENCIL_VIEW_DESC *pDesc, - /* [annotation] */ _In_ D3D12_CPU_DESCRIPTOR_HANDLE DestDescriptor); DECLSPEC_XFGVIRT(ID3D12Device, CreateSampler) void ( STDMETHODCALLTYPE *CreateSampler )( ID3D12Device5 * This, - /* [annotation] */ _In_ const D3D12_SAMPLER_DESC *pDesc, - /* [annotation] */ _In_ D3D12_CPU_DESCRIPTOR_HANDLE DestDescriptor); DECLSPEC_XFGVIRT(ID3D12Device, CopyDescriptors) void ( STDMETHODCALLTYPE *CopyDescriptors )( ID3D12Device5 * This, - /* [annotation] */ _In_ UINT NumDestDescriptorRanges, - /* [annotation] */ _In_reads_(NumDestDescriptorRanges) const D3D12_CPU_DESCRIPTOR_HANDLE *pDestDescriptorRangeStarts, - /* [annotation] */ _In_reads_opt_(NumDestDescriptorRanges) const UINT *pDestDescriptorRangeSizes, - /* [annotation] */ _In_ UINT NumSrcDescriptorRanges, - /* [annotation] */ _In_reads_(NumSrcDescriptorRanges) const D3D12_CPU_DESCRIPTOR_HANDLE *pSrcDescriptorRangeStarts, - /* [annotation] */ _In_reads_opt_(NumSrcDescriptorRanges) const UINT *pSrcDescriptorRangeSizes, - /* [annotation] */ _In_ D3D12_DESCRIPTOR_HEAP_TYPE DescriptorHeapsType); DECLSPEC_XFGVIRT(ID3D12Device, CopyDescriptorsSimple) void ( STDMETHODCALLTYPE *CopyDescriptorsSimple )( ID3D12Device5 * This, - /* [annotation] */ _In_ UINT NumDescriptors, - /* [annotation] */ _In_ D3D12_CPU_DESCRIPTOR_HANDLE DestDescriptorRangeStart, - /* [annotation] */ _In_ D3D12_CPU_DESCRIPTOR_HANDLE SrcDescriptorRangeStart, - /* [annotation] */ _In_ D3D12_DESCRIPTOR_HEAP_TYPE DescriptorHeapsType); DECLSPEC_XFGVIRT(ID3D12Device, GetResourceAllocationInfo) +#if !defined(_WIN32) D3D12_RESOURCE_ALLOCATION_INFO ( STDMETHODCALLTYPE *GetResourceAllocationInfo )( ID3D12Device5 * This, - /* [annotation] */ _In_ UINT visibleMask, - /* [annotation] */ _In_ UINT numResourceDescs, - /* [annotation] */ _In_reads_(numResourceDescs) const D3D12_RESOURCE_DESC *pResourceDescs); +#else + D3D12_RESOURCE_ALLOCATION_INFO *( STDMETHODCALLTYPE *GetResourceAllocationInfo )( + ID3D12Device5 * This, + D3D12_RESOURCE_ALLOCATION_INFO * RetVal, + _In_ UINT visibleMask, + _In_ UINT numResourceDescs, + _In_reads_(numResourceDescs) const D3D12_RESOURCE_DESC *pResourceDescs); + +#endif + DECLSPEC_XFGVIRT(ID3D12Device, GetCustomHeapProperties) +#if !defined(_WIN32) D3D12_HEAP_PROPERTIES ( STDMETHODCALLTYPE *GetCustomHeapProperties )( ID3D12Device5 * This, - /* [annotation] */ _In_ UINT nodeMask, D3D12_HEAP_TYPE heapType); +#else + D3D12_HEAP_PROPERTIES *( STDMETHODCALLTYPE *GetCustomHeapProperties )( + ID3D12Device5 * This, + D3D12_HEAP_PROPERTIES * RetVal, + _In_ UINT nodeMask, + D3D12_HEAP_TYPE heapType); + +#endif + DECLSPEC_XFGVIRT(ID3D12Device, CreateCommittedResource) HRESULT ( STDMETHODCALLTYPE *CreateCommittedResource )( ID3D12Device5 * This, - /* [annotation] */ _In_ const D3D12_HEAP_PROPERTIES *pHeapProperties, D3D12_HEAP_FLAGS HeapFlags, - /* [annotation] */ _In_ const D3D12_RESOURCE_DESC *pDesc, D3D12_RESOURCE_STATES InitialResourceState, - /* [annotation] */ _In_opt_ const D3D12_CLEAR_VALUE *pOptimizedClearValue, - /* [annotation][in] */ - _In_ REFIID riidResource, - /* [annotation][iid_is][out] */ + REFIID riidResource, _COM_Outptr_opt_ void **ppvResource); DECLSPEC_XFGVIRT(ID3D12Device, CreateHeap) HRESULT ( STDMETHODCALLTYPE *CreateHeap )( ID3D12Device5 * This, - /* [annotation] */ _In_ const D3D12_HEAP_DESC *pDesc, - /* [annotation][in] */ - _In_ REFIID riid, - /* [annotation][iid_is][out] */ + REFIID riid, _COM_Outptr_opt_ void **ppvHeap); DECLSPEC_XFGVIRT(ID3D12Device, CreatePlacedResource) HRESULT ( STDMETHODCALLTYPE *CreatePlacedResource )( ID3D12Device5 * This, - /* [annotation] */ _In_ ID3D12Heap *pHeap, UINT64 HeapOffset, - /* [annotation] */ _In_ const D3D12_RESOURCE_DESC *pDesc, D3D12_RESOURCE_STATES InitialState, - /* [annotation] */ _In_opt_ const D3D12_CLEAR_VALUE *pOptimizedClearValue, - /* [annotation][in] */ - _In_ REFIID riid, - /* [annotation][iid_is][out] */ + REFIID riid, _COM_Outptr_opt_ void **ppvResource); DECLSPEC_XFGVIRT(ID3D12Device, CreateReservedResource) HRESULT ( STDMETHODCALLTYPE *CreateReservedResource )( ID3D12Device5 * This, - /* [annotation] */ _In_ const D3D12_RESOURCE_DESC *pDesc, D3D12_RESOURCE_STATES InitialState, - /* [annotation] */ _In_opt_ const D3D12_CLEAR_VALUE *pOptimizedClearValue, - /* [annotation][in] */ - _In_ REFIID riid, - /* [annotation][iid_is][out] */ + REFIID riid, _COM_Outptr_opt_ void **ppvResource); DECLSPEC_XFGVIRT(ID3D12Device, CreateSharedHandle) HRESULT ( STDMETHODCALLTYPE *CreateSharedHandle )( ID3D12Device5 * This, - /* [annotation] */ _In_ ID3D12DeviceChild *pObject, - /* [annotation] */ _In_opt_ const SECURITY_ATTRIBUTES *pAttributes, DWORD Access, - /* [annotation] */ _In_opt_ LPCWSTR Name, - /* [annotation] */ _Out_ HANDLE *pHandle); DECLSPEC_XFGVIRT(ID3D12Device, OpenSharedHandle) HRESULT ( STDMETHODCALLTYPE *OpenSharedHandle )( ID3D12Device5 * This, - /* [annotation] */ _In_ HANDLE NTHandle, - /* [annotation][in] */ - _In_ REFIID riid, - /* [annotation][iid_is][out] */ + REFIID riid, _COM_Outptr_opt_ void **ppvObj); DECLSPEC_XFGVIRT(ID3D12Device, OpenSharedHandleByName) HRESULT ( STDMETHODCALLTYPE *OpenSharedHandleByName )( ID3D12Device5 * This, - /* [annotation] */ _In_ LPCWSTR Name, DWORD Access, /* [annotation][out] */ @@ -15872,14 +14246,12 @@ EXTERN_C const IID IID_ID3D12Device5; HRESULT ( STDMETHODCALLTYPE *MakeResident )( ID3D12Device5 * This, UINT NumObjects, - /* [annotation] */ _In_reads_(NumObjects) ID3D12Pageable *const *ppObjects); DECLSPEC_XFGVIRT(ID3D12Device, Evict) HRESULT ( STDMETHODCALLTYPE *Evict )( ID3D12Device5 * This, UINT NumObjects, - /* [annotation] */ _In_reads_(NumObjects) ID3D12Pageable *const *ppObjects); DECLSPEC_XFGVIRT(ID3D12Device, CreateFence) @@ -15887,9 +14259,7 @@ EXTERN_C const IID IID_ID3D12Device5; ID3D12Device5 * This, UINT64 InitialValue, D3D12_FENCE_FLAGS Flags, - /* [annotation][in] */ - _In_ REFIID riid, - /* [annotation][iid_is][out] */ + REFIID riid, _COM_Outptr_ void **ppFence); DECLSPEC_XFGVIRT(ID3D12Device, GetDeviceRemovedReason) @@ -15899,30 +14269,20 @@ EXTERN_C const IID IID_ID3D12Device5; DECLSPEC_XFGVIRT(ID3D12Device, GetCopyableFootprints) void ( STDMETHODCALLTYPE *GetCopyableFootprints )( ID3D12Device5 * This, - /* [annotation] */ _In_ const D3D12_RESOURCE_DESC *pResourceDesc, - /* [annotation] */ _In_range_(0,D3D12_REQ_SUBRESOURCES) UINT FirstSubresource, - /* [annotation] */ _In_range_(0,D3D12_REQ_SUBRESOURCES-FirstSubresource) UINT NumSubresources, UINT64 BaseOffset, - /* [annotation] */ _Out_writes_opt_(NumSubresources) D3D12_PLACED_SUBRESOURCE_FOOTPRINT *pLayouts, - /* [annotation] */ _Out_writes_opt_(NumSubresources) UINT *pNumRows, - /* [annotation] */ _Out_writes_opt_(NumSubresources) UINT64 *pRowSizeInBytes, - /* [annotation] */ _Out_opt_ UINT64 *pTotalBytes); DECLSPEC_XFGVIRT(ID3D12Device, CreateQueryHeap) HRESULT ( STDMETHODCALLTYPE *CreateQueryHeap )( ID3D12Device5 * This, - /* [annotation] */ _In_ const D3D12_QUERY_HEAP_DESC *pDesc, - /* [annotation][in] */ - _In_ REFIID riid, - /* [annotation][iid_is][out] */ + REFIID riid, _COM_Outptr_opt_ void **ppvHeap); DECLSPEC_XFGVIRT(ID3D12Device, SetStablePowerState) @@ -15933,54 +14293,46 @@ EXTERN_C const IID IID_ID3D12Device5; DECLSPEC_XFGVIRT(ID3D12Device, CreateCommandSignature) HRESULT ( STDMETHODCALLTYPE *CreateCommandSignature )( ID3D12Device5 * This, - /* [annotation] */ _In_ const D3D12_COMMAND_SIGNATURE_DESC *pDesc, - /* [annotation] */ _In_opt_ ID3D12RootSignature *pRootSignature, - /* [annotation][in] */ - _In_ REFIID riid, - /* [annotation][iid_is][out] */ + REFIID riid, _COM_Outptr_opt_ void **ppvCommandSignature); DECLSPEC_XFGVIRT(ID3D12Device, GetResourceTiling) void ( STDMETHODCALLTYPE *GetResourceTiling )( ID3D12Device5 * This, - /* [annotation] */ _In_ ID3D12Resource *pTiledResource, - /* [annotation] */ _Out_opt_ UINT *pNumTilesForEntireResource, - /* [annotation] */ _Out_opt_ D3D12_PACKED_MIP_INFO *pPackedMipDesc, - /* [annotation] */ _Out_opt_ D3D12_TILE_SHAPE *pStandardTileShapeForNonPackedMips, - /* [annotation] */ _Inout_opt_ UINT *pNumSubresourceTilings, - /* [annotation] */ _In_ UINT FirstSubresourceTilingToGet, - /* [annotation] */ _Out_writes_(*pNumSubresourceTilings) D3D12_SUBRESOURCE_TILING *pSubresourceTilingsForNonPackedMips); DECLSPEC_XFGVIRT(ID3D12Device, GetAdapterLuid) +#if !defined(_WIN32) LUID ( STDMETHODCALLTYPE *GetAdapterLuid )( ID3D12Device5 * This); +#else + LUID *( STDMETHODCALLTYPE *GetAdapterLuid )( + ID3D12Device5 * This, + LUID * RetVal); + +#endif + DECLSPEC_XFGVIRT(ID3D12Device1, CreatePipelineLibrary) HRESULT ( STDMETHODCALLTYPE *CreatePipelineLibrary )( ID3D12Device5 * This, - /* [annotation] */ _In_reads_(BlobLength) const void *pLibraryBlob, SIZE_T BlobLength, - /* [annotation][in] */ - _In_ REFIID riid, - /* [annotation][iid_is][out] */ + REFIID riid, _COM_Outptr_ void **ppPipelineLibrary); DECLSPEC_XFGVIRT(ID3D12Device1, SetEventOnMultipleFenceCompletion) HRESULT ( STDMETHODCALLTYPE *SetEventOnMultipleFenceCompletion )( ID3D12Device5 * This, - /* [annotation] */ _In_reads_(NumFences) ID3D12Fence *const *ppFences, - /* [annotation] */ _In_reads_(NumFences) const UINT64 *pFenceValues, UINT NumFences, D3D12_MULTIPLE_FENCE_WAIT_FLAGS Flags, @@ -15990,39 +14342,28 @@ EXTERN_C const IID IID_ID3D12Device5; HRESULT ( STDMETHODCALLTYPE *SetResidencyPriority )( ID3D12Device5 * This, UINT NumObjects, - /* [annotation] */ _In_reads_(NumObjects) ID3D12Pageable *const *ppObjects, - /* [annotation] */ _In_reads_(NumObjects) const D3D12_RESIDENCY_PRIORITY *pPriorities); DECLSPEC_XFGVIRT(ID3D12Device2, CreatePipelineState) HRESULT ( STDMETHODCALLTYPE *CreatePipelineState )( ID3D12Device5 * This, - /* [annotation][in] */ - _In_ const D3D12_PIPELINE_STATE_STREAM_DESC *pDesc, - /* [annotation][in] */ - _In_ REFIID riid, - /* [annotation][iid_is][out] */ + const D3D12_PIPELINE_STATE_STREAM_DESC *pDesc, + REFIID riid, _COM_Outptr_ void **ppPipelineState); DECLSPEC_XFGVIRT(ID3D12Device3, OpenExistingHeapFromAddress) HRESULT ( STDMETHODCALLTYPE *OpenExistingHeapFromAddress )( ID3D12Device5 * This, - /* [annotation] */ _In_ const void *pAddress, - /* [annotation][in] */ - _In_ REFIID riid, - /* [annotation][iid_is][out] */ + REFIID riid, _COM_Outptr_ void **ppvHeap); DECLSPEC_XFGVIRT(ID3D12Device3, OpenExistingHeapFromFileMapping) HRESULT ( STDMETHODCALLTYPE *OpenExistingHeapFromFileMapping )( ID3D12Device5 * This, - /* [annotation] */ _In_ HANDLE hFileMapping, - /* [annotation][in] */ - _In_ REFIID riid, - /* [annotation][iid_is][out] */ + REFIID riid, _COM_Outptr_ void **ppvHeap); DECLSPEC_XFGVIRT(ID3D12Device3, EnqueueMakeResident) @@ -16030,99 +14371,81 @@ EXTERN_C const IID IID_ID3D12Device5; ID3D12Device5 * This, D3D12_RESIDENCY_FLAGS Flags, UINT NumObjects, - /* [annotation] */ _In_reads_(NumObjects) ID3D12Pageable *const *ppObjects, - /* [annotation] */ _In_ ID3D12Fence *pFenceToSignal, UINT64 FenceValueToSignal); DECLSPEC_XFGVIRT(ID3D12Device4, CreateCommandList1) HRESULT ( STDMETHODCALLTYPE *CreateCommandList1 )( ID3D12Device5 * This, - /* [annotation] */ _In_ UINT nodeMask, - /* [annotation] */ _In_ D3D12_COMMAND_LIST_TYPE type, - /* [annotation] */ _In_ D3D12_COMMAND_LIST_FLAGS flags, - /* [annotation][in] */ - _In_ REFIID riid, - /* [annotation][iid_is][out] */ + REFIID riid, _COM_Outptr_ void **ppCommandList); DECLSPEC_XFGVIRT(ID3D12Device4, CreateProtectedResourceSession) HRESULT ( STDMETHODCALLTYPE *CreateProtectedResourceSession )( ID3D12Device5 * This, - /* [annotation] */ _In_ const D3D12_PROTECTED_RESOURCE_SESSION_DESC *pDesc, - /* [annotation] */ _In_ REFIID riid, - /* [annotation][iid_is][out] */ _COM_Outptr_ void **ppSession); DECLSPEC_XFGVIRT(ID3D12Device4, CreateCommittedResource1) HRESULT ( STDMETHODCALLTYPE *CreateCommittedResource1 )( ID3D12Device5 * This, - /* [annotation] */ _In_ const D3D12_HEAP_PROPERTIES *pHeapProperties, D3D12_HEAP_FLAGS HeapFlags, - /* [annotation] */ _In_ const D3D12_RESOURCE_DESC *pDesc, D3D12_RESOURCE_STATES InitialResourceState, - /* [annotation] */ _In_opt_ const D3D12_CLEAR_VALUE *pOptimizedClearValue, - /* [annotation] */ _In_opt_ ID3D12ProtectedResourceSession *pProtectedSession, - /* [annotation][in] */ - _In_ REFIID riidResource, - /* [annotation][iid_is][out] */ + REFIID riidResource, _COM_Outptr_opt_ void **ppvResource); DECLSPEC_XFGVIRT(ID3D12Device4, CreateHeap1) HRESULT ( STDMETHODCALLTYPE *CreateHeap1 )( ID3D12Device5 * This, - /* [annotation] */ _In_ const D3D12_HEAP_DESC *pDesc, - /* [annotation] */ _In_opt_ ID3D12ProtectedResourceSession *pProtectedSession, - /* [annotation][in] */ - _In_ REFIID riid, - /* [annotation][iid_is][out] */ + REFIID riid, _COM_Outptr_opt_ void **ppvHeap); DECLSPEC_XFGVIRT(ID3D12Device4, CreateReservedResource1) HRESULT ( STDMETHODCALLTYPE *CreateReservedResource1 )( ID3D12Device5 * This, - /* [annotation] */ _In_ const D3D12_RESOURCE_DESC *pDesc, D3D12_RESOURCE_STATES InitialState, - /* [annotation] */ _In_opt_ const D3D12_CLEAR_VALUE *pOptimizedClearValue, - /* [annotation] */ _In_opt_ ID3D12ProtectedResourceSession *pProtectedSession, - /* [annotation][in] */ - _In_ REFIID riid, - /* [annotation][iid_is][out] */ + REFIID riid, _COM_Outptr_opt_ void **ppvResource); DECLSPEC_XFGVIRT(ID3D12Device4, GetResourceAllocationInfo1) +#if !defined(_WIN32) D3D12_RESOURCE_ALLOCATION_INFO ( STDMETHODCALLTYPE *GetResourceAllocationInfo1 )( ID3D12Device5 * This, UINT visibleMask, UINT numResourceDescs, - /* [annotation] */ _In_reads_(numResourceDescs) const D3D12_RESOURCE_DESC *pResourceDescs, - /* [annotation] */ _Out_writes_opt_(numResourceDescs) D3D12_RESOURCE_ALLOCATION_INFO1 *pResourceAllocationInfo1); +#else + D3D12_RESOURCE_ALLOCATION_INFO *( STDMETHODCALLTYPE *GetResourceAllocationInfo1 )( + ID3D12Device5 * This, + D3D12_RESOURCE_ALLOCATION_INFO * RetVal, + UINT visibleMask, + UINT numResourceDescs, + _In_reads_(numResourceDescs) const D3D12_RESOURCE_DESC *pResourceDescs, + _Out_writes_opt_(numResourceDescs) D3D12_RESOURCE_ALLOCATION_INFO1 *pResourceAllocationInfo1); + +#endif + DECLSPEC_XFGVIRT(ID3D12Device5, CreateLifetimeTracker) HRESULT ( STDMETHODCALLTYPE *CreateLifetimeTracker )( ID3D12Device5 * This, - /* [annotation] */ _In_ ID3D12LifetimeOwner *pOwner, - /* [annotation][in] */ - _In_ REFIID riid, - /* [annotation][iid_is][out] */ + REFIID riid, _COM_Outptr_ void **ppvTracker); DECLSPEC_XFGVIRT(ID3D12Device5, RemoveDevice) @@ -16132,65 +14455,45 @@ EXTERN_C const IID IID_ID3D12Device5; DECLSPEC_XFGVIRT(ID3D12Device5, EnumerateMetaCommands) HRESULT ( STDMETHODCALLTYPE *EnumerateMetaCommands )( ID3D12Device5 * This, - /* [annotation] */ _Inout_ UINT *pNumMetaCommands, - /* [annotation] */ _Out_writes_opt_(*pNumMetaCommands) D3D12_META_COMMAND_DESC *pDescs); DECLSPEC_XFGVIRT(ID3D12Device5, EnumerateMetaCommandParameters) HRESULT ( STDMETHODCALLTYPE *EnumerateMetaCommandParameters )( ID3D12Device5 * This, - /* [annotation] */ _In_ REFGUID CommandId, - /* [annotation] */ _In_ D3D12_META_COMMAND_PARAMETER_STAGE Stage, - /* [annotation] */ _Out_opt_ UINT *pTotalStructureSizeInBytes, - /* [annotation] */ _Inout_ UINT *pParameterCount, - /* [annotation] */ _Out_writes_opt_(*pParameterCount) D3D12_META_COMMAND_PARAMETER_DESC *pParameterDescs); DECLSPEC_XFGVIRT(ID3D12Device5, CreateMetaCommand) HRESULT ( STDMETHODCALLTYPE *CreateMetaCommand )( ID3D12Device5 * This, - /* [annotation] */ _In_ REFGUID CommandId, - /* [annotation] */ _In_ UINT NodeMask, - /* [annotation] */ _In_reads_bytes_opt_(CreationParametersDataSizeInBytes) const void *pCreationParametersData, - /* [annotation] */ _In_ SIZE_T CreationParametersDataSizeInBytes, - /* [annotation][in] */ - _In_ REFIID riid, - /* [annotation][iid_is][out] */ + REFIID riid, _COM_Outptr_ void **ppMetaCommand); DECLSPEC_XFGVIRT(ID3D12Device5, CreateStateObject) HRESULT ( STDMETHODCALLTYPE *CreateStateObject )( ID3D12Device5 * This, - /* [annotation][in] */ - _In_ const D3D12_STATE_OBJECT_DESC *pDesc, - /* [annotation][in] */ - _In_ REFIID riid, - /* [annotation][iid_is][out] */ + const D3D12_STATE_OBJECT_DESC *pDesc, + REFIID riid, _COM_Outptr_ void **ppStateObject); DECLSPEC_XFGVIRT(ID3D12Device5, GetRaytracingAccelerationStructurePrebuildInfo) void ( STDMETHODCALLTYPE *GetRaytracingAccelerationStructurePrebuildInfo )( ID3D12Device5 * This, - /* [annotation] */ _In_ const D3D12_BUILD_RAYTRACING_ACCELERATION_STRUCTURE_INPUTS *pDesc, - /* [annotation] */ _Out_ D3D12_RAYTRACING_ACCELERATION_STRUCTURE_PREBUILD_INFO *pInfo); DECLSPEC_XFGVIRT(ID3D12Device5, CheckDriverMatchingIdentifier) D3D12_DRIVER_MATCHING_IDENTIFIER_STATUS ( STDMETHODCALLTYPE *CheckDriverMatchingIdentifier )( ID3D12Device5 * This, - /* [annotation] */ _In_ D3D12_SERIALIZED_DATA_TYPE SerializedDataType, - /* [annotation] */ _In_ const D3D12_SERIALIZED_DATA_DRIVER_MATCHING_IDENTIFIER *pIdentifierToCheck); END_INTERFACE @@ -16282,12 +14585,22 @@ EXTERN_C const IID IID_ID3D12Device5; #define ID3D12Device5_CopyDescriptorsSimple(This,NumDescriptors,DestDescriptorRangeStart,SrcDescriptorRangeStart,DescriptorHeapsType) \ ( (This)->lpVtbl -> CopyDescriptorsSimple(This,NumDescriptors,DestDescriptorRangeStart,SrcDescriptorRangeStart,DescriptorHeapsType) ) +#if !defined(_WIN32) #define ID3D12Device5_GetResourceAllocationInfo(This,visibleMask,numResourceDescs,pResourceDescs) \ ( (This)->lpVtbl -> GetResourceAllocationInfo(This,visibleMask,numResourceDescs,pResourceDescs) ) +#else +#define ID3D12Device5_GetResourceAllocationInfo(This,RetVal,visibleMask,numResourceDescs,pResourceDescs) \ + ( (This)->lpVtbl -> GetResourceAllocationInfo(This,RetVal,visibleMask,numResourceDescs,pResourceDescs) ) +#endif +#if !defined(_WIN32) #define ID3D12Device5_GetCustomHeapProperties(This,nodeMask,heapType) \ ( (This)->lpVtbl -> GetCustomHeapProperties(This,nodeMask,heapType) ) +#else +#define ID3D12Device5_GetCustomHeapProperties(This,RetVal,nodeMask,heapType) \ + ( (This)->lpVtbl -> GetCustomHeapProperties(This,RetVal,nodeMask,heapType) ) +#endif #define ID3D12Device5_CreateCommittedResource(This,pHeapProperties,HeapFlags,pDesc,InitialResourceState,pOptimizedClearValue,riidResource,ppvResource) \ ( (This)->lpVtbl -> CreateCommittedResource(This,pHeapProperties,HeapFlags,pDesc,InitialResourceState,pOptimizedClearValue,riidResource,ppvResource) ) @@ -16336,9 +14649,14 @@ EXTERN_C const IID IID_ID3D12Device5; #define ID3D12Device5_GetResourceTiling(This,pTiledResource,pNumTilesForEntireResource,pPackedMipDesc,pStandardTileShapeForNonPackedMips,pNumSubresourceTilings,FirstSubresourceTilingToGet,pSubresourceTilingsForNonPackedMips) \ ( (This)->lpVtbl -> GetResourceTiling(This,pTiledResource,pNumTilesForEntireResource,pPackedMipDesc,pStandardTileShapeForNonPackedMips,pNumSubresourceTilings,FirstSubresourceTilingToGet,pSubresourceTilingsForNonPackedMips) ) +#if !defined(_WIN32) #define ID3D12Device5_GetAdapterLuid(This) \ ( (This)->lpVtbl -> GetAdapterLuid(This) ) +#else +#define ID3D12Device5_GetAdapterLuid(This,RetVal) \ + ( (This)->lpVtbl -> GetAdapterLuid(This,RetVal) ) +#endif #define ID3D12Device5_CreatePipelineLibrary(This,pLibraryBlob,BlobLength,riid,ppPipelineLibrary) \ @@ -16379,9 +14697,14 @@ EXTERN_C const IID IID_ID3D12Device5; #define ID3D12Device5_CreateReservedResource1(This,pDesc,InitialState,pOptimizedClearValue,pProtectedSession,riid,ppvResource) \ ( (This)->lpVtbl -> CreateReservedResource1(This,pDesc,InitialState,pOptimizedClearValue,pProtectedSession,riid,ppvResource) ) +#if !defined(_WIN32) #define ID3D12Device5_GetResourceAllocationInfo1(This,visibleMask,numResourceDescs,pResourceDescs,pResourceAllocationInfo1) \ ( (This)->lpVtbl -> GetResourceAllocationInfo1(This,visibleMask,numResourceDescs,pResourceDescs,pResourceAllocationInfo1) ) +#else +#define ID3D12Device5_GetResourceAllocationInfo1(This,RetVal,visibleMask,numResourceDescs,pResourceDescs,pResourceAllocationInfo1) \ + ( (This)->lpVtbl -> GetResourceAllocationInfo1(This,RetVal,visibleMask,numResourceDescs,pResourceDescs,pResourceAllocationInfo1) ) +#endif #define ID3D12Device5_CreateLifetimeTracker(This,pOwner,riid,ppvTracker) \ @@ -16474,9 +14797,9 @@ enum D3D12_AUTO_BREADCRUMB_OP typedef struct D3D12_AUTO_BREADCRUMB_NODE { - const unsigned char *pCommandListDebugNameA; + const char *pCommandListDebugNameA; const wchar_t *pCommandListDebugNameW; - const unsigned char *pCommandQueueDebugNameA; + const char *pCommandQueueDebugNameA; const wchar_t *pCommandQueueDebugNameW; ID3D12GraphicsCommandList *pCommandList; ID3D12CommandQueue *pCommandQueue; @@ -16494,9 +14817,9 @@ typedef struct D3D12_DRED_BREADCRUMB_CONTEXT typedef struct D3D12_AUTO_BREADCRUMB_NODE1 { - const unsigned char *pCommandListDebugNameA; + const char *pCommandListDebugNameA; const wchar_t *pCommandListDebugNameW; - const unsigned char *pCommandQueueDebugNameA; + const char *pCommandQueueDebugNameA; const wchar_t *pCommandQueueDebugNameW; ID3D12GraphicsCommandList *pCommandList; ID3D12CommandQueue *pCommandQueue; @@ -16536,9 +14859,7 @@ enum D3D12_DRED_ENABLEMENT typedef struct D3D12_DEVICE_REMOVED_EXTENDED_DATA { - /* [annotation] */ _In_ D3D12_DRED_FLAGS Flags; - /* [annotation] */ _Out_ D3D12_AUTO_BREADCRUMB_NODE *pHeadAutoBreadcrumbNode; } D3D12_DEVICE_REMOVED_EXTENDED_DATA; @@ -16578,7 +14899,7 @@ enum D3D12_DRED_ALLOCATION_TYPE typedef struct D3D12_DRED_ALLOCATION_NODE { - const unsigned char *ObjectNameA; + const char *ObjectNameA; const wchar_t *ObjectNameW; D3D12_DRED_ALLOCATION_TYPE AllocationType; const struct D3D12_DRED_ALLOCATION_NODE *pNext; @@ -16586,7 +14907,7 @@ typedef struct D3D12_DRED_ALLOCATION_NODE typedef struct D3D12_DRED_ALLOCATION_NODE1 { - const unsigned char *ObjectNameA; + const char *ObjectNameA; const wchar_t *ObjectNameW; D3D12_DRED_ALLOCATION_TYPE AllocationType; const struct D3D12_DRED_ALLOCATION_NODE1 *pNext; @@ -16595,31 +14916,25 @@ typedef struct D3D12_DRED_ALLOCATION_NODE1 typedef struct D3D12_DRED_AUTO_BREADCRUMBS_OUTPUT { - /* [annotation] */ _Out_ const D3D12_AUTO_BREADCRUMB_NODE *pHeadAutoBreadcrumbNode; } D3D12_DRED_AUTO_BREADCRUMBS_OUTPUT; typedef struct D3D12_DRED_AUTO_BREADCRUMBS_OUTPUT1 { - /* [annotation] */ _Out_ const D3D12_AUTO_BREADCRUMB_NODE1 *pHeadAutoBreadcrumbNode; } D3D12_DRED_AUTO_BREADCRUMBS_OUTPUT1; typedef struct D3D12_DRED_PAGE_FAULT_OUTPUT { D3D12_GPU_VIRTUAL_ADDRESS PageFaultVA; - /* [annotation] */ _Out_ const D3D12_DRED_ALLOCATION_NODE *pHeadExistingAllocationNode; - /* [annotation] */ _Out_ const D3D12_DRED_ALLOCATION_NODE *pHeadRecentFreedAllocationNode; } D3D12_DRED_PAGE_FAULT_OUTPUT; typedef struct D3D12_DRED_PAGE_FAULT_OUTPUT1 { D3D12_GPU_VIRTUAL_ADDRESS PageFaultVA; - /* [annotation] */ _Out_ const D3D12_DRED_ALLOCATION_NODE1 *pHeadExistingAllocationNode; - /* [annotation] */ _Out_ const D3D12_DRED_ALLOCATION_NODE1 *pHeadRecentFreedAllocationNode; } D3D12_DRED_PAGE_FAULT_OUTPUT1; @@ -16642,9 +14957,7 @@ enum D3D12_DRED_DEVICE_STATE typedef struct D3D12_DRED_PAGE_FAULT_OUTPUT2 { D3D12_GPU_VIRTUAL_ADDRESS PageFaultVA; - /* [annotation] */ _Out_ const D3D12_DRED_ALLOCATION_NODE1 *pHeadExistingAllocationNode; - /* [annotation] */ _Out_ const D3D12_DRED_ALLOCATION_NODE1 *pHeadRecentFreedAllocationNode; D3D12_DRED_PAGE_FAULT_FLAGS PageFaultFlags; } D3D12_DRED_PAGE_FAULT_OUTPUT2; @@ -16724,9 +15037,7 @@ EXTERN_C const IID IID_ID3D12DeviceRemovedExtendedDataSettings; DECLSPEC_XFGVIRT(IUnknown, QueryInterface) HRESULT ( STDMETHODCALLTYPE *QueryInterface )( ID3D12DeviceRemovedExtendedDataSettings * This, - /* [annotation][in] */ - _In_ REFIID riid, - /* [annotation][iid_is][out] */ + REFIID riid, _COM_Outptr_ void **ppvObject); DECLSPEC_XFGVIRT(IUnknown, AddRef) @@ -16825,9 +15136,7 @@ EXTERN_C const IID IID_ID3D12DeviceRemovedExtendedDataSettings1; DECLSPEC_XFGVIRT(IUnknown, QueryInterface) HRESULT ( STDMETHODCALLTYPE *QueryInterface )( ID3D12DeviceRemovedExtendedDataSettings1 * This, - /* [annotation][in] */ - _In_ REFIID riid, - /* [annotation][iid_is][out] */ + REFIID riid, _COM_Outptr_ void **ppvObject); DECLSPEC_XFGVIRT(IUnknown, AddRef) @@ -16905,6 +15214,123 @@ EXTERN_C const IID IID_ID3D12DeviceRemovedExtendedDataSettings1; #endif /* __ID3D12DeviceRemovedExtendedDataSettings1_INTERFACE_DEFINED__ */ +#ifndef __ID3D12DeviceRemovedExtendedDataSettings2_INTERFACE_DEFINED__ +#define __ID3D12DeviceRemovedExtendedDataSettings2_INTERFACE_DEFINED__ + +/* interface ID3D12DeviceRemovedExtendedDataSettings2 */ +/* [unique][local][object][uuid] */ + + +EXTERN_C const IID IID_ID3D12DeviceRemovedExtendedDataSettings2; + +#if defined(__cplusplus) && !defined(CINTERFACE) + + MIDL_INTERFACE("61552388-01ab-4008-a436-83db189566ea") + ID3D12DeviceRemovedExtendedDataSettings2 : public ID3D12DeviceRemovedExtendedDataSettings1 + { + public: + virtual void STDMETHODCALLTYPE UseMarkersOnlyAutoBreadcrumbs( + BOOL MarkersOnly) = 0; + + }; + + +#else /* C style interface */ + + typedef struct ID3D12DeviceRemovedExtendedDataSettings2Vtbl + { + BEGIN_INTERFACE + + DECLSPEC_XFGVIRT(IUnknown, QueryInterface) + HRESULT ( STDMETHODCALLTYPE *QueryInterface )( + ID3D12DeviceRemovedExtendedDataSettings2 * This, + REFIID riid, + _COM_Outptr_ void **ppvObject); + + DECLSPEC_XFGVIRT(IUnknown, AddRef) + ULONG ( STDMETHODCALLTYPE *AddRef )( + ID3D12DeviceRemovedExtendedDataSettings2 * This); + + DECLSPEC_XFGVIRT(IUnknown, Release) + ULONG ( STDMETHODCALLTYPE *Release )( + ID3D12DeviceRemovedExtendedDataSettings2 * This); + + DECLSPEC_XFGVIRT(ID3D12DeviceRemovedExtendedDataSettings, SetAutoBreadcrumbsEnablement) + void ( STDMETHODCALLTYPE *SetAutoBreadcrumbsEnablement )( + ID3D12DeviceRemovedExtendedDataSettings2 * This, + D3D12_DRED_ENABLEMENT Enablement); + + DECLSPEC_XFGVIRT(ID3D12DeviceRemovedExtendedDataSettings, SetPageFaultEnablement) + void ( STDMETHODCALLTYPE *SetPageFaultEnablement )( + ID3D12DeviceRemovedExtendedDataSettings2 * This, + D3D12_DRED_ENABLEMENT Enablement); + + DECLSPEC_XFGVIRT(ID3D12DeviceRemovedExtendedDataSettings, SetWatsonDumpEnablement) + void ( STDMETHODCALLTYPE *SetWatsonDumpEnablement )( + ID3D12DeviceRemovedExtendedDataSettings2 * This, + D3D12_DRED_ENABLEMENT Enablement); + + DECLSPEC_XFGVIRT(ID3D12DeviceRemovedExtendedDataSettings1, SetBreadcrumbContextEnablement) + void ( STDMETHODCALLTYPE *SetBreadcrumbContextEnablement )( + ID3D12DeviceRemovedExtendedDataSettings2 * This, + D3D12_DRED_ENABLEMENT Enablement); + + DECLSPEC_XFGVIRT(ID3D12DeviceRemovedExtendedDataSettings2, UseMarkersOnlyAutoBreadcrumbs) + void ( STDMETHODCALLTYPE *UseMarkersOnlyAutoBreadcrumbs )( + ID3D12DeviceRemovedExtendedDataSettings2 * This, + BOOL MarkersOnly); + + END_INTERFACE + } ID3D12DeviceRemovedExtendedDataSettings2Vtbl; + + interface ID3D12DeviceRemovedExtendedDataSettings2 + { + CONST_VTBL struct ID3D12DeviceRemovedExtendedDataSettings2Vtbl *lpVtbl; + }; + + + +#ifdef COBJMACROS + + +#define ID3D12DeviceRemovedExtendedDataSettings2_QueryInterface(This,riid,ppvObject) \ + ( (This)->lpVtbl -> QueryInterface(This,riid,ppvObject) ) + +#define ID3D12DeviceRemovedExtendedDataSettings2_AddRef(This) \ + ( (This)->lpVtbl -> AddRef(This) ) + +#define ID3D12DeviceRemovedExtendedDataSettings2_Release(This) \ + ( (This)->lpVtbl -> Release(This) ) + + +#define ID3D12DeviceRemovedExtendedDataSettings2_SetAutoBreadcrumbsEnablement(This,Enablement) \ + ( (This)->lpVtbl -> SetAutoBreadcrumbsEnablement(This,Enablement) ) + +#define ID3D12DeviceRemovedExtendedDataSettings2_SetPageFaultEnablement(This,Enablement) \ + ( (This)->lpVtbl -> SetPageFaultEnablement(This,Enablement) ) + +#define ID3D12DeviceRemovedExtendedDataSettings2_SetWatsonDumpEnablement(This,Enablement) \ + ( (This)->lpVtbl -> SetWatsonDumpEnablement(This,Enablement) ) + + +#define ID3D12DeviceRemovedExtendedDataSettings2_SetBreadcrumbContextEnablement(This,Enablement) \ + ( (This)->lpVtbl -> SetBreadcrumbContextEnablement(This,Enablement) ) + + +#define ID3D12DeviceRemovedExtendedDataSettings2_UseMarkersOnlyAutoBreadcrumbs(This,MarkersOnly) \ + ( (This)->lpVtbl -> UseMarkersOnlyAutoBreadcrumbs(This,MarkersOnly) ) + +#endif /* COBJMACROS */ + + +#endif /* C style interface */ + + + + +#endif /* __ID3D12DeviceRemovedExtendedDataSettings2_INTERFACE_DEFINED__ */ + + #ifndef __ID3D12DeviceRemovedExtendedData_INTERFACE_DEFINED__ #define __ID3D12DeviceRemovedExtendedData_INTERFACE_DEFINED__ @@ -16921,11 +15347,9 @@ EXTERN_C const IID IID_ID3D12DeviceRemovedExtendedData; { public: virtual HRESULT STDMETHODCALLTYPE GetAutoBreadcrumbsOutput( - /* [annotation] */ _Out_ D3D12_DRED_AUTO_BREADCRUMBS_OUTPUT *pOutput) = 0; virtual HRESULT STDMETHODCALLTYPE GetPageFaultAllocationOutput( - /* [annotation] */ _Out_ D3D12_DRED_PAGE_FAULT_OUTPUT *pOutput) = 0; }; @@ -16940,9 +15364,7 @@ EXTERN_C const IID IID_ID3D12DeviceRemovedExtendedData; DECLSPEC_XFGVIRT(IUnknown, QueryInterface) HRESULT ( STDMETHODCALLTYPE *QueryInterface )( ID3D12DeviceRemovedExtendedData * This, - /* [annotation][in] */ - _In_ REFIID riid, - /* [annotation][iid_is][out] */ + REFIID riid, _COM_Outptr_ void **ppvObject); DECLSPEC_XFGVIRT(IUnknown, AddRef) @@ -16956,13 +15378,11 @@ EXTERN_C const IID IID_ID3D12DeviceRemovedExtendedData; DECLSPEC_XFGVIRT(ID3D12DeviceRemovedExtendedData, GetAutoBreadcrumbsOutput) HRESULT ( STDMETHODCALLTYPE *GetAutoBreadcrumbsOutput )( ID3D12DeviceRemovedExtendedData * This, - /* [annotation] */ _Out_ D3D12_DRED_AUTO_BREADCRUMBS_OUTPUT *pOutput); DECLSPEC_XFGVIRT(ID3D12DeviceRemovedExtendedData, GetPageFaultAllocationOutput) HRESULT ( STDMETHODCALLTYPE *GetPageFaultAllocationOutput )( ID3D12DeviceRemovedExtendedData * This, - /* [annotation] */ _Out_ D3D12_DRED_PAGE_FAULT_OUTPUT *pOutput); END_INTERFACE @@ -17021,11 +15441,9 @@ EXTERN_C const IID IID_ID3D12DeviceRemovedExtendedData1; { public: virtual HRESULT STDMETHODCALLTYPE GetAutoBreadcrumbsOutput1( - /* [annotation] */ _Out_ D3D12_DRED_AUTO_BREADCRUMBS_OUTPUT1 *pOutput) = 0; virtual HRESULT STDMETHODCALLTYPE GetPageFaultAllocationOutput1( - /* [annotation] */ _Out_ D3D12_DRED_PAGE_FAULT_OUTPUT1 *pOutput) = 0; }; @@ -17040,9 +15458,7 @@ EXTERN_C const IID IID_ID3D12DeviceRemovedExtendedData1; DECLSPEC_XFGVIRT(IUnknown, QueryInterface) HRESULT ( STDMETHODCALLTYPE *QueryInterface )( ID3D12DeviceRemovedExtendedData1 * This, - /* [annotation][in] */ - _In_ REFIID riid, - /* [annotation][iid_is][out] */ + REFIID riid, _COM_Outptr_ void **ppvObject); DECLSPEC_XFGVIRT(IUnknown, AddRef) @@ -17056,25 +15472,21 @@ EXTERN_C const IID IID_ID3D12DeviceRemovedExtendedData1; DECLSPEC_XFGVIRT(ID3D12DeviceRemovedExtendedData, GetAutoBreadcrumbsOutput) HRESULT ( STDMETHODCALLTYPE *GetAutoBreadcrumbsOutput )( ID3D12DeviceRemovedExtendedData1 * This, - /* [annotation] */ _Out_ D3D12_DRED_AUTO_BREADCRUMBS_OUTPUT *pOutput); DECLSPEC_XFGVIRT(ID3D12DeviceRemovedExtendedData, GetPageFaultAllocationOutput) HRESULT ( STDMETHODCALLTYPE *GetPageFaultAllocationOutput )( ID3D12DeviceRemovedExtendedData1 * This, - /* [annotation] */ _Out_ D3D12_DRED_PAGE_FAULT_OUTPUT *pOutput); DECLSPEC_XFGVIRT(ID3D12DeviceRemovedExtendedData1, GetAutoBreadcrumbsOutput1) HRESULT ( STDMETHODCALLTYPE *GetAutoBreadcrumbsOutput1 )( ID3D12DeviceRemovedExtendedData1 * This, - /* [annotation] */ _Out_ D3D12_DRED_AUTO_BREADCRUMBS_OUTPUT1 *pOutput); DECLSPEC_XFGVIRT(ID3D12DeviceRemovedExtendedData1, GetPageFaultAllocationOutput1) HRESULT ( STDMETHODCALLTYPE *GetPageFaultAllocationOutput1 )( ID3D12DeviceRemovedExtendedData1 * This, - /* [annotation] */ _Out_ D3D12_DRED_PAGE_FAULT_OUTPUT1 *pOutput); END_INTERFACE @@ -17140,7 +15552,6 @@ EXTERN_C const IID IID_ID3D12DeviceRemovedExtendedData2; { public: virtual HRESULT STDMETHODCALLTYPE GetPageFaultAllocationOutput2( - /* [annotation] */ _Out_ D3D12_DRED_PAGE_FAULT_OUTPUT2 *pOutput) = 0; virtual D3D12_DRED_DEVICE_STATE STDMETHODCALLTYPE GetDeviceState( void) = 0; @@ -17157,9 +15568,7 @@ EXTERN_C const IID IID_ID3D12DeviceRemovedExtendedData2; DECLSPEC_XFGVIRT(IUnknown, QueryInterface) HRESULT ( STDMETHODCALLTYPE *QueryInterface )( ID3D12DeviceRemovedExtendedData2 * This, - /* [annotation][in] */ - _In_ REFIID riid, - /* [annotation][iid_is][out] */ + REFIID riid, _COM_Outptr_ void **ppvObject); DECLSPEC_XFGVIRT(IUnknown, AddRef) @@ -17173,31 +15582,26 @@ EXTERN_C const IID IID_ID3D12DeviceRemovedExtendedData2; DECLSPEC_XFGVIRT(ID3D12DeviceRemovedExtendedData, GetAutoBreadcrumbsOutput) HRESULT ( STDMETHODCALLTYPE *GetAutoBreadcrumbsOutput )( ID3D12DeviceRemovedExtendedData2 * This, - /* [annotation] */ _Out_ D3D12_DRED_AUTO_BREADCRUMBS_OUTPUT *pOutput); DECLSPEC_XFGVIRT(ID3D12DeviceRemovedExtendedData, GetPageFaultAllocationOutput) HRESULT ( STDMETHODCALLTYPE *GetPageFaultAllocationOutput )( ID3D12DeviceRemovedExtendedData2 * This, - /* [annotation] */ _Out_ D3D12_DRED_PAGE_FAULT_OUTPUT *pOutput); DECLSPEC_XFGVIRT(ID3D12DeviceRemovedExtendedData1, GetAutoBreadcrumbsOutput1) HRESULT ( STDMETHODCALLTYPE *GetAutoBreadcrumbsOutput1 )( ID3D12DeviceRemovedExtendedData2 * This, - /* [annotation] */ _Out_ D3D12_DRED_AUTO_BREADCRUMBS_OUTPUT1 *pOutput); DECLSPEC_XFGVIRT(ID3D12DeviceRemovedExtendedData1, GetPageFaultAllocationOutput1) HRESULT ( STDMETHODCALLTYPE *GetPageFaultAllocationOutput1 )( ID3D12DeviceRemovedExtendedData2 * This, - /* [annotation] */ _Out_ D3D12_DRED_PAGE_FAULT_OUTPUT1 *pOutput); DECLSPEC_XFGVIRT(ID3D12DeviceRemovedExtendedData2, GetPageFaultAllocationOutput2) HRESULT ( STDMETHODCALLTYPE *GetPageFaultAllocationOutput2 )( ID3D12DeviceRemovedExtendedData2 * This, - /* [annotation] */ _Out_ D3D12_DRED_PAGE_FAULT_OUTPUT2 *pOutput); DECLSPEC_XFGVIRT(ID3D12DeviceRemovedExtendedData2, GetDeviceState) @@ -17258,7 +15662,7 @@ EXTERN_C const IID IID_ID3D12DeviceRemovedExtendedData2; #endif /* __ID3D12DeviceRemovedExtendedData2_INTERFACE_DEFINED__ */ -/* interface __MIDL_itf_d3d12_0000_0040 */ +/* interface __MIDL_itf_d3d12_0000_0041 */ /* [local] */ typedef @@ -17281,8 +15685,8 @@ enum D3D12_MEASUREMENTS_ACTION -extern RPC_IF_HANDLE __MIDL_itf_d3d12_0000_0040_v0_0_c_ifspec; -extern RPC_IF_HANDLE __MIDL_itf_d3d12_0000_0040_v0_0_s_ifspec; +extern RPC_IF_HANDLE __MIDL_itf_d3d12_0000_0041_v0_0_c_ifspec; +extern RPC_IF_HANDLE __MIDL_itf_d3d12_0000_0041_v0_0_s_ifspec; #ifndef __ID3D12Device6_INTERFACE_DEFINED__ #define __ID3D12Device6_INTERFACE_DEFINED__ @@ -17302,9 +15706,7 @@ EXTERN_C const IID IID_ID3D12Device6; virtual HRESULT STDMETHODCALLTYPE SetBackgroundProcessingMode( D3D12_BACKGROUND_PROCESSING_MODE Mode, D3D12_MEASUREMENTS_ACTION MeasurementsAction, - /* [annotation] */ _In_opt_ HANDLE hEventToSignalUponCompletion, - /* [annotation] */ _Out_opt_ BOOL *pbFurtherMeasurementsDesired) = 0; }; @@ -17319,9 +15721,7 @@ EXTERN_C const IID IID_ID3D12Device6; DECLSPEC_XFGVIRT(IUnknown, QueryInterface) HRESULT ( STDMETHODCALLTYPE *QueryInterface )( ID3D12Device6 * This, - /* [annotation][in] */ - _In_ REFIID riid, - /* [annotation][iid_is][out] */ + REFIID riid, _COM_Outptr_ void **ppvObject); DECLSPEC_XFGVIRT(IUnknown, AddRef) @@ -17335,35 +15735,26 @@ EXTERN_C const IID IID_ID3D12Device6; DECLSPEC_XFGVIRT(ID3D12Object, GetPrivateData) HRESULT ( STDMETHODCALLTYPE *GetPrivateData )( ID3D12Device6 * This, - /* [annotation] */ _In_ REFGUID guid, - /* [annotation] */ _Inout_ UINT *pDataSize, - /* [annotation] */ _Out_writes_bytes_opt_( *pDataSize ) void *pData); DECLSPEC_XFGVIRT(ID3D12Object, SetPrivateData) HRESULT ( STDMETHODCALLTYPE *SetPrivateData )( ID3D12Device6 * This, - /* [annotation] */ _In_ REFGUID guid, - /* [annotation] */ _In_ UINT DataSize, - /* [annotation] */ _In_reads_bytes_opt_( DataSize ) const void *pData); DECLSPEC_XFGVIRT(ID3D12Object, SetPrivateDataInterface) HRESULT ( STDMETHODCALLTYPE *SetPrivateDataInterface )( ID3D12Device6 * This, - /* [annotation] */ _In_ REFGUID guid, - /* [annotation] */ _In_opt_ const IUnknown *pData); DECLSPEC_XFGVIRT(ID3D12Object, SetName) HRESULT ( STDMETHODCALLTYPE *SetName )( ID3D12Device6 * This, - /* [annotation] */ _In_z_ LPCWSTR Name); DECLSPEC_XFGVIRT(ID3D12Device, GetNodeCount) @@ -17373,284 +15764,220 @@ EXTERN_C const IID IID_ID3D12Device6; DECLSPEC_XFGVIRT(ID3D12Device, CreateCommandQueue) HRESULT ( STDMETHODCALLTYPE *CreateCommandQueue )( ID3D12Device6 * This, - /* [annotation] */ _In_ const D3D12_COMMAND_QUEUE_DESC *pDesc, - /* [annotation][in] */ - _In_ REFIID riid, - /* [annotation][iid_is][out] */ + REFIID riid, _COM_Outptr_ void **ppCommandQueue); DECLSPEC_XFGVIRT(ID3D12Device, CreateCommandAllocator) HRESULT ( STDMETHODCALLTYPE *CreateCommandAllocator )( ID3D12Device6 * This, - /* [annotation] */ _In_ D3D12_COMMAND_LIST_TYPE type, - /* [annotation][in] */ - _In_ REFIID riid, - /* [annotation][iid_is][out] */ + REFIID riid, _COM_Outptr_ void **ppCommandAllocator); DECLSPEC_XFGVIRT(ID3D12Device, CreateGraphicsPipelineState) HRESULT ( STDMETHODCALLTYPE *CreateGraphicsPipelineState )( ID3D12Device6 * This, - /* [annotation] */ _In_ const D3D12_GRAPHICS_PIPELINE_STATE_DESC *pDesc, - /* [annotation][in] */ - _In_ REFIID riid, - /* [annotation][iid_is][out] */ + REFIID riid, _COM_Outptr_ void **ppPipelineState); DECLSPEC_XFGVIRT(ID3D12Device, CreateComputePipelineState) HRESULT ( STDMETHODCALLTYPE *CreateComputePipelineState )( ID3D12Device6 * This, - /* [annotation] */ _In_ const D3D12_COMPUTE_PIPELINE_STATE_DESC *pDesc, - /* [annotation][in] */ - _In_ REFIID riid, - /* [annotation][iid_is][out] */ + REFIID riid, _COM_Outptr_ void **ppPipelineState); DECLSPEC_XFGVIRT(ID3D12Device, CreateCommandList) HRESULT ( STDMETHODCALLTYPE *CreateCommandList )( ID3D12Device6 * This, - /* [annotation] */ _In_ UINT nodeMask, - /* [annotation] */ _In_ D3D12_COMMAND_LIST_TYPE type, - /* [annotation] */ _In_ ID3D12CommandAllocator *pCommandAllocator, - /* [annotation] */ _In_opt_ ID3D12PipelineState *pInitialState, - /* [annotation][in] */ - _In_ REFIID riid, - /* [annotation][iid_is][out] */ + REFIID riid, _COM_Outptr_ void **ppCommandList); DECLSPEC_XFGVIRT(ID3D12Device, CheckFeatureSupport) HRESULT ( STDMETHODCALLTYPE *CheckFeatureSupport )( ID3D12Device6 * This, D3D12_FEATURE Feature, - /* [annotation] */ _Inout_updates_bytes_(FeatureSupportDataSize) void *pFeatureSupportData, UINT FeatureSupportDataSize); DECLSPEC_XFGVIRT(ID3D12Device, CreateDescriptorHeap) HRESULT ( STDMETHODCALLTYPE *CreateDescriptorHeap )( ID3D12Device6 * This, - /* [annotation] */ _In_ const D3D12_DESCRIPTOR_HEAP_DESC *pDescriptorHeapDesc, - /* [annotation][in] */ - _In_ REFIID riid, - /* [annotation][iid_is][out] */ + REFIID riid, _COM_Outptr_ void **ppvHeap); DECLSPEC_XFGVIRT(ID3D12Device, GetDescriptorHandleIncrementSize) UINT ( STDMETHODCALLTYPE *GetDescriptorHandleIncrementSize )( ID3D12Device6 * This, - /* [annotation] */ _In_ D3D12_DESCRIPTOR_HEAP_TYPE DescriptorHeapType); DECLSPEC_XFGVIRT(ID3D12Device, CreateRootSignature) HRESULT ( STDMETHODCALLTYPE *CreateRootSignature )( ID3D12Device6 * This, - /* [annotation] */ _In_ UINT nodeMask, - /* [annotation] */ _In_reads_(blobLengthInBytes) const void *pBlobWithRootSignature, - /* [annotation] */ _In_ SIZE_T blobLengthInBytes, - /* [annotation][in] */ - _In_ REFIID riid, - /* [annotation][iid_is][out] */ + REFIID riid, _COM_Outptr_ void **ppvRootSignature); DECLSPEC_XFGVIRT(ID3D12Device, CreateConstantBufferView) void ( STDMETHODCALLTYPE *CreateConstantBufferView )( ID3D12Device6 * This, - /* [annotation] */ _In_opt_ const D3D12_CONSTANT_BUFFER_VIEW_DESC *pDesc, - /* [annotation] */ _In_ D3D12_CPU_DESCRIPTOR_HANDLE DestDescriptor); DECLSPEC_XFGVIRT(ID3D12Device, CreateShaderResourceView) void ( STDMETHODCALLTYPE *CreateShaderResourceView )( ID3D12Device6 * This, - /* [annotation] */ _In_opt_ ID3D12Resource *pResource, - /* [annotation] */ _In_opt_ const D3D12_SHADER_RESOURCE_VIEW_DESC *pDesc, - /* [annotation] */ _In_ D3D12_CPU_DESCRIPTOR_HANDLE DestDescriptor); DECLSPEC_XFGVIRT(ID3D12Device, CreateUnorderedAccessView) void ( STDMETHODCALLTYPE *CreateUnorderedAccessView )( ID3D12Device6 * This, - /* [annotation] */ _In_opt_ ID3D12Resource *pResource, - /* [annotation] */ _In_opt_ ID3D12Resource *pCounterResource, - /* [annotation] */ _In_opt_ const D3D12_UNORDERED_ACCESS_VIEW_DESC *pDesc, - /* [annotation] */ _In_ D3D12_CPU_DESCRIPTOR_HANDLE DestDescriptor); DECLSPEC_XFGVIRT(ID3D12Device, CreateRenderTargetView) void ( STDMETHODCALLTYPE *CreateRenderTargetView )( ID3D12Device6 * This, - /* [annotation] */ _In_opt_ ID3D12Resource *pResource, - /* [annotation] */ _In_opt_ const D3D12_RENDER_TARGET_VIEW_DESC *pDesc, - /* [annotation] */ _In_ D3D12_CPU_DESCRIPTOR_HANDLE DestDescriptor); DECLSPEC_XFGVIRT(ID3D12Device, CreateDepthStencilView) void ( STDMETHODCALLTYPE *CreateDepthStencilView )( ID3D12Device6 * This, - /* [annotation] */ _In_opt_ ID3D12Resource *pResource, - /* [annotation] */ _In_opt_ const D3D12_DEPTH_STENCIL_VIEW_DESC *pDesc, - /* [annotation] */ _In_ D3D12_CPU_DESCRIPTOR_HANDLE DestDescriptor); DECLSPEC_XFGVIRT(ID3D12Device, CreateSampler) void ( STDMETHODCALLTYPE *CreateSampler )( ID3D12Device6 * This, - /* [annotation] */ _In_ const D3D12_SAMPLER_DESC *pDesc, - /* [annotation] */ _In_ D3D12_CPU_DESCRIPTOR_HANDLE DestDescriptor); DECLSPEC_XFGVIRT(ID3D12Device, CopyDescriptors) void ( STDMETHODCALLTYPE *CopyDescriptors )( ID3D12Device6 * This, - /* [annotation] */ _In_ UINT NumDestDescriptorRanges, - /* [annotation] */ _In_reads_(NumDestDescriptorRanges) const D3D12_CPU_DESCRIPTOR_HANDLE *pDestDescriptorRangeStarts, - /* [annotation] */ _In_reads_opt_(NumDestDescriptorRanges) const UINT *pDestDescriptorRangeSizes, - /* [annotation] */ _In_ UINT NumSrcDescriptorRanges, - /* [annotation] */ _In_reads_(NumSrcDescriptorRanges) const D3D12_CPU_DESCRIPTOR_HANDLE *pSrcDescriptorRangeStarts, - /* [annotation] */ _In_reads_opt_(NumSrcDescriptorRanges) const UINT *pSrcDescriptorRangeSizes, - /* [annotation] */ _In_ D3D12_DESCRIPTOR_HEAP_TYPE DescriptorHeapsType); DECLSPEC_XFGVIRT(ID3D12Device, CopyDescriptorsSimple) void ( STDMETHODCALLTYPE *CopyDescriptorsSimple )( ID3D12Device6 * This, - /* [annotation] */ _In_ UINT NumDescriptors, - /* [annotation] */ _In_ D3D12_CPU_DESCRIPTOR_HANDLE DestDescriptorRangeStart, - /* [annotation] */ _In_ D3D12_CPU_DESCRIPTOR_HANDLE SrcDescriptorRangeStart, - /* [annotation] */ _In_ D3D12_DESCRIPTOR_HEAP_TYPE DescriptorHeapsType); DECLSPEC_XFGVIRT(ID3D12Device, GetResourceAllocationInfo) +#if !defined(_WIN32) D3D12_RESOURCE_ALLOCATION_INFO ( STDMETHODCALLTYPE *GetResourceAllocationInfo )( ID3D12Device6 * This, - /* [annotation] */ _In_ UINT visibleMask, - /* [annotation] */ _In_ UINT numResourceDescs, - /* [annotation] */ _In_reads_(numResourceDescs) const D3D12_RESOURCE_DESC *pResourceDescs); +#else + D3D12_RESOURCE_ALLOCATION_INFO *( STDMETHODCALLTYPE *GetResourceAllocationInfo )( + ID3D12Device6 * This, + D3D12_RESOURCE_ALLOCATION_INFO * RetVal, + _In_ UINT visibleMask, + _In_ UINT numResourceDescs, + _In_reads_(numResourceDescs) const D3D12_RESOURCE_DESC *pResourceDescs); + +#endif + DECLSPEC_XFGVIRT(ID3D12Device, GetCustomHeapProperties) +#if !defined(_WIN32) D3D12_HEAP_PROPERTIES ( STDMETHODCALLTYPE *GetCustomHeapProperties )( ID3D12Device6 * This, - /* [annotation] */ _In_ UINT nodeMask, D3D12_HEAP_TYPE heapType); +#else + D3D12_HEAP_PROPERTIES *( STDMETHODCALLTYPE *GetCustomHeapProperties )( + ID3D12Device6 * This, + D3D12_HEAP_PROPERTIES * RetVal, + _In_ UINT nodeMask, + D3D12_HEAP_TYPE heapType); + +#endif + DECLSPEC_XFGVIRT(ID3D12Device, CreateCommittedResource) HRESULT ( STDMETHODCALLTYPE *CreateCommittedResource )( ID3D12Device6 * This, - /* [annotation] */ _In_ const D3D12_HEAP_PROPERTIES *pHeapProperties, D3D12_HEAP_FLAGS HeapFlags, - /* [annotation] */ _In_ const D3D12_RESOURCE_DESC *pDesc, D3D12_RESOURCE_STATES InitialResourceState, - /* [annotation] */ _In_opt_ const D3D12_CLEAR_VALUE *pOptimizedClearValue, - /* [annotation][in] */ - _In_ REFIID riidResource, - /* [annotation][iid_is][out] */ + REFIID riidResource, _COM_Outptr_opt_ void **ppvResource); DECLSPEC_XFGVIRT(ID3D12Device, CreateHeap) HRESULT ( STDMETHODCALLTYPE *CreateHeap )( ID3D12Device6 * This, - /* [annotation] */ _In_ const D3D12_HEAP_DESC *pDesc, - /* [annotation][in] */ - _In_ REFIID riid, - /* [annotation][iid_is][out] */ + REFIID riid, _COM_Outptr_opt_ void **ppvHeap); DECLSPEC_XFGVIRT(ID3D12Device, CreatePlacedResource) HRESULT ( STDMETHODCALLTYPE *CreatePlacedResource )( ID3D12Device6 * This, - /* [annotation] */ _In_ ID3D12Heap *pHeap, UINT64 HeapOffset, - /* [annotation] */ _In_ const D3D12_RESOURCE_DESC *pDesc, D3D12_RESOURCE_STATES InitialState, - /* [annotation] */ _In_opt_ const D3D12_CLEAR_VALUE *pOptimizedClearValue, - /* [annotation][in] */ - _In_ REFIID riid, - /* [annotation][iid_is][out] */ + REFIID riid, _COM_Outptr_opt_ void **ppvResource); DECLSPEC_XFGVIRT(ID3D12Device, CreateReservedResource) HRESULT ( STDMETHODCALLTYPE *CreateReservedResource )( ID3D12Device6 * This, - /* [annotation] */ _In_ const D3D12_RESOURCE_DESC *pDesc, D3D12_RESOURCE_STATES InitialState, - /* [annotation] */ _In_opt_ const D3D12_CLEAR_VALUE *pOptimizedClearValue, - /* [annotation][in] */ - _In_ REFIID riid, - /* [annotation][iid_is][out] */ + REFIID riid, _COM_Outptr_opt_ void **ppvResource); DECLSPEC_XFGVIRT(ID3D12Device, CreateSharedHandle) HRESULT ( STDMETHODCALLTYPE *CreateSharedHandle )( ID3D12Device6 * This, - /* [annotation] */ _In_ ID3D12DeviceChild *pObject, - /* [annotation] */ _In_opt_ const SECURITY_ATTRIBUTES *pAttributes, DWORD Access, - /* [annotation] */ _In_opt_ LPCWSTR Name, - /* [annotation] */ _Out_ HANDLE *pHandle); DECLSPEC_XFGVIRT(ID3D12Device, OpenSharedHandle) HRESULT ( STDMETHODCALLTYPE *OpenSharedHandle )( ID3D12Device6 * This, - /* [annotation] */ _In_ HANDLE NTHandle, - /* [annotation][in] */ - _In_ REFIID riid, - /* [annotation][iid_is][out] */ + REFIID riid, _COM_Outptr_opt_ void **ppvObj); DECLSPEC_XFGVIRT(ID3D12Device, OpenSharedHandleByName) HRESULT ( STDMETHODCALLTYPE *OpenSharedHandleByName )( ID3D12Device6 * This, - /* [annotation] */ _In_ LPCWSTR Name, DWORD Access, /* [annotation][out] */ @@ -17660,14 +15987,12 @@ EXTERN_C const IID IID_ID3D12Device6; HRESULT ( STDMETHODCALLTYPE *MakeResident )( ID3D12Device6 * This, UINT NumObjects, - /* [annotation] */ _In_reads_(NumObjects) ID3D12Pageable *const *ppObjects); DECLSPEC_XFGVIRT(ID3D12Device, Evict) HRESULT ( STDMETHODCALLTYPE *Evict )( ID3D12Device6 * This, UINT NumObjects, - /* [annotation] */ _In_reads_(NumObjects) ID3D12Pageable *const *ppObjects); DECLSPEC_XFGVIRT(ID3D12Device, CreateFence) @@ -17675,9 +16000,7 @@ EXTERN_C const IID IID_ID3D12Device6; ID3D12Device6 * This, UINT64 InitialValue, D3D12_FENCE_FLAGS Flags, - /* [annotation][in] */ - _In_ REFIID riid, - /* [annotation][iid_is][out] */ + REFIID riid, _COM_Outptr_ void **ppFence); DECLSPEC_XFGVIRT(ID3D12Device, GetDeviceRemovedReason) @@ -17687,30 +16010,20 @@ EXTERN_C const IID IID_ID3D12Device6; DECLSPEC_XFGVIRT(ID3D12Device, GetCopyableFootprints) void ( STDMETHODCALLTYPE *GetCopyableFootprints )( ID3D12Device6 * This, - /* [annotation] */ _In_ const D3D12_RESOURCE_DESC *pResourceDesc, - /* [annotation] */ _In_range_(0,D3D12_REQ_SUBRESOURCES) UINT FirstSubresource, - /* [annotation] */ _In_range_(0,D3D12_REQ_SUBRESOURCES-FirstSubresource) UINT NumSubresources, UINT64 BaseOffset, - /* [annotation] */ _Out_writes_opt_(NumSubresources) D3D12_PLACED_SUBRESOURCE_FOOTPRINT *pLayouts, - /* [annotation] */ _Out_writes_opt_(NumSubresources) UINT *pNumRows, - /* [annotation] */ _Out_writes_opt_(NumSubresources) UINT64 *pRowSizeInBytes, - /* [annotation] */ _Out_opt_ UINT64 *pTotalBytes); DECLSPEC_XFGVIRT(ID3D12Device, CreateQueryHeap) HRESULT ( STDMETHODCALLTYPE *CreateQueryHeap )( ID3D12Device6 * This, - /* [annotation] */ _In_ const D3D12_QUERY_HEAP_DESC *pDesc, - /* [annotation][in] */ - _In_ REFIID riid, - /* [annotation][iid_is][out] */ + REFIID riid, _COM_Outptr_opt_ void **ppvHeap); DECLSPEC_XFGVIRT(ID3D12Device, SetStablePowerState) @@ -17721,54 +16034,46 @@ EXTERN_C const IID IID_ID3D12Device6; DECLSPEC_XFGVIRT(ID3D12Device, CreateCommandSignature) HRESULT ( STDMETHODCALLTYPE *CreateCommandSignature )( ID3D12Device6 * This, - /* [annotation] */ _In_ const D3D12_COMMAND_SIGNATURE_DESC *pDesc, - /* [annotation] */ _In_opt_ ID3D12RootSignature *pRootSignature, - /* [annotation][in] */ - _In_ REFIID riid, - /* [annotation][iid_is][out] */ + REFIID riid, _COM_Outptr_opt_ void **ppvCommandSignature); DECLSPEC_XFGVIRT(ID3D12Device, GetResourceTiling) void ( STDMETHODCALLTYPE *GetResourceTiling )( ID3D12Device6 * This, - /* [annotation] */ _In_ ID3D12Resource *pTiledResource, - /* [annotation] */ _Out_opt_ UINT *pNumTilesForEntireResource, - /* [annotation] */ _Out_opt_ D3D12_PACKED_MIP_INFO *pPackedMipDesc, - /* [annotation] */ _Out_opt_ D3D12_TILE_SHAPE *pStandardTileShapeForNonPackedMips, - /* [annotation] */ _Inout_opt_ UINT *pNumSubresourceTilings, - /* [annotation] */ _In_ UINT FirstSubresourceTilingToGet, - /* [annotation] */ _Out_writes_(*pNumSubresourceTilings) D3D12_SUBRESOURCE_TILING *pSubresourceTilingsForNonPackedMips); DECLSPEC_XFGVIRT(ID3D12Device, GetAdapterLuid) +#if !defined(_WIN32) LUID ( STDMETHODCALLTYPE *GetAdapterLuid )( ID3D12Device6 * This); +#else + LUID *( STDMETHODCALLTYPE *GetAdapterLuid )( + ID3D12Device6 * This, + LUID * RetVal); + +#endif + DECLSPEC_XFGVIRT(ID3D12Device1, CreatePipelineLibrary) HRESULT ( STDMETHODCALLTYPE *CreatePipelineLibrary )( ID3D12Device6 * This, - /* [annotation] */ _In_reads_(BlobLength) const void *pLibraryBlob, SIZE_T BlobLength, - /* [annotation][in] */ - _In_ REFIID riid, - /* [annotation][iid_is][out] */ + REFIID riid, _COM_Outptr_ void **ppPipelineLibrary); DECLSPEC_XFGVIRT(ID3D12Device1, SetEventOnMultipleFenceCompletion) HRESULT ( STDMETHODCALLTYPE *SetEventOnMultipleFenceCompletion )( ID3D12Device6 * This, - /* [annotation] */ _In_reads_(NumFences) ID3D12Fence *const *ppFences, - /* [annotation] */ _In_reads_(NumFences) const UINT64 *pFenceValues, UINT NumFences, D3D12_MULTIPLE_FENCE_WAIT_FLAGS Flags, @@ -17778,39 +16083,28 @@ EXTERN_C const IID IID_ID3D12Device6; HRESULT ( STDMETHODCALLTYPE *SetResidencyPriority )( ID3D12Device6 * This, UINT NumObjects, - /* [annotation] */ _In_reads_(NumObjects) ID3D12Pageable *const *ppObjects, - /* [annotation] */ _In_reads_(NumObjects) const D3D12_RESIDENCY_PRIORITY *pPriorities); DECLSPEC_XFGVIRT(ID3D12Device2, CreatePipelineState) HRESULT ( STDMETHODCALLTYPE *CreatePipelineState )( ID3D12Device6 * This, - /* [annotation][in] */ - _In_ const D3D12_PIPELINE_STATE_STREAM_DESC *pDesc, - /* [annotation][in] */ - _In_ REFIID riid, - /* [annotation][iid_is][out] */ + const D3D12_PIPELINE_STATE_STREAM_DESC *pDesc, + REFIID riid, _COM_Outptr_ void **ppPipelineState); DECLSPEC_XFGVIRT(ID3D12Device3, OpenExistingHeapFromAddress) HRESULT ( STDMETHODCALLTYPE *OpenExistingHeapFromAddress )( ID3D12Device6 * This, - /* [annotation] */ _In_ const void *pAddress, - /* [annotation][in] */ - _In_ REFIID riid, - /* [annotation][iid_is][out] */ + REFIID riid, _COM_Outptr_ void **ppvHeap); DECLSPEC_XFGVIRT(ID3D12Device3, OpenExistingHeapFromFileMapping) HRESULT ( STDMETHODCALLTYPE *OpenExistingHeapFromFileMapping )( ID3D12Device6 * This, - /* [annotation] */ _In_ HANDLE hFileMapping, - /* [annotation][in] */ - _In_ REFIID riid, - /* [annotation][iid_is][out] */ + REFIID riid, _COM_Outptr_ void **ppvHeap); DECLSPEC_XFGVIRT(ID3D12Device3, EnqueueMakeResident) @@ -17818,99 +16112,81 @@ EXTERN_C const IID IID_ID3D12Device6; ID3D12Device6 * This, D3D12_RESIDENCY_FLAGS Flags, UINT NumObjects, - /* [annotation] */ _In_reads_(NumObjects) ID3D12Pageable *const *ppObjects, - /* [annotation] */ _In_ ID3D12Fence *pFenceToSignal, UINT64 FenceValueToSignal); DECLSPEC_XFGVIRT(ID3D12Device4, CreateCommandList1) HRESULT ( STDMETHODCALLTYPE *CreateCommandList1 )( ID3D12Device6 * This, - /* [annotation] */ _In_ UINT nodeMask, - /* [annotation] */ _In_ D3D12_COMMAND_LIST_TYPE type, - /* [annotation] */ _In_ D3D12_COMMAND_LIST_FLAGS flags, - /* [annotation][in] */ - _In_ REFIID riid, - /* [annotation][iid_is][out] */ + REFIID riid, _COM_Outptr_ void **ppCommandList); DECLSPEC_XFGVIRT(ID3D12Device4, CreateProtectedResourceSession) HRESULT ( STDMETHODCALLTYPE *CreateProtectedResourceSession )( ID3D12Device6 * This, - /* [annotation] */ _In_ const D3D12_PROTECTED_RESOURCE_SESSION_DESC *pDesc, - /* [annotation] */ _In_ REFIID riid, - /* [annotation][iid_is][out] */ _COM_Outptr_ void **ppSession); DECLSPEC_XFGVIRT(ID3D12Device4, CreateCommittedResource1) HRESULT ( STDMETHODCALLTYPE *CreateCommittedResource1 )( ID3D12Device6 * This, - /* [annotation] */ _In_ const D3D12_HEAP_PROPERTIES *pHeapProperties, D3D12_HEAP_FLAGS HeapFlags, - /* [annotation] */ _In_ const D3D12_RESOURCE_DESC *pDesc, D3D12_RESOURCE_STATES InitialResourceState, - /* [annotation] */ _In_opt_ const D3D12_CLEAR_VALUE *pOptimizedClearValue, - /* [annotation] */ _In_opt_ ID3D12ProtectedResourceSession *pProtectedSession, - /* [annotation][in] */ - _In_ REFIID riidResource, - /* [annotation][iid_is][out] */ + REFIID riidResource, _COM_Outptr_opt_ void **ppvResource); DECLSPEC_XFGVIRT(ID3D12Device4, CreateHeap1) HRESULT ( STDMETHODCALLTYPE *CreateHeap1 )( ID3D12Device6 * This, - /* [annotation] */ _In_ const D3D12_HEAP_DESC *pDesc, - /* [annotation] */ _In_opt_ ID3D12ProtectedResourceSession *pProtectedSession, - /* [annotation][in] */ - _In_ REFIID riid, - /* [annotation][iid_is][out] */ + REFIID riid, _COM_Outptr_opt_ void **ppvHeap); DECLSPEC_XFGVIRT(ID3D12Device4, CreateReservedResource1) HRESULT ( STDMETHODCALLTYPE *CreateReservedResource1 )( ID3D12Device6 * This, - /* [annotation] */ _In_ const D3D12_RESOURCE_DESC *pDesc, D3D12_RESOURCE_STATES InitialState, - /* [annotation] */ _In_opt_ const D3D12_CLEAR_VALUE *pOptimizedClearValue, - /* [annotation] */ _In_opt_ ID3D12ProtectedResourceSession *pProtectedSession, - /* [annotation][in] */ - _In_ REFIID riid, - /* [annotation][iid_is][out] */ + REFIID riid, _COM_Outptr_opt_ void **ppvResource); DECLSPEC_XFGVIRT(ID3D12Device4, GetResourceAllocationInfo1) +#if !defined(_WIN32) D3D12_RESOURCE_ALLOCATION_INFO ( STDMETHODCALLTYPE *GetResourceAllocationInfo1 )( ID3D12Device6 * This, UINT visibleMask, UINT numResourceDescs, - /* [annotation] */ _In_reads_(numResourceDescs) const D3D12_RESOURCE_DESC *pResourceDescs, - /* [annotation] */ _Out_writes_opt_(numResourceDescs) D3D12_RESOURCE_ALLOCATION_INFO1 *pResourceAllocationInfo1); +#else + D3D12_RESOURCE_ALLOCATION_INFO *( STDMETHODCALLTYPE *GetResourceAllocationInfo1 )( + ID3D12Device6 * This, + D3D12_RESOURCE_ALLOCATION_INFO * RetVal, + UINT visibleMask, + UINT numResourceDescs, + _In_reads_(numResourceDescs) const D3D12_RESOURCE_DESC *pResourceDescs, + _Out_writes_opt_(numResourceDescs) D3D12_RESOURCE_ALLOCATION_INFO1 *pResourceAllocationInfo1); + +#endif + DECLSPEC_XFGVIRT(ID3D12Device5, CreateLifetimeTracker) HRESULT ( STDMETHODCALLTYPE *CreateLifetimeTracker )( ID3D12Device6 * This, - /* [annotation] */ _In_ ID3D12LifetimeOwner *pOwner, - /* [annotation][in] */ - _In_ REFIID riid, - /* [annotation][iid_is][out] */ + REFIID riid, _COM_Outptr_ void **ppvTracker); DECLSPEC_XFGVIRT(ID3D12Device5, RemoveDevice) @@ -17920,65 +16196,45 @@ EXTERN_C const IID IID_ID3D12Device6; DECLSPEC_XFGVIRT(ID3D12Device5, EnumerateMetaCommands) HRESULT ( STDMETHODCALLTYPE *EnumerateMetaCommands )( ID3D12Device6 * This, - /* [annotation] */ _Inout_ UINT *pNumMetaCommands, - /* [annotation] */ _Out_writes_opt_(*pNumMetaCommands) D3D12_META_COMMAND_DESC *pDescs); DECLSPEC_XFGVIRT(ID3D12Device5, EnumerateMetaCommandParameters) HRESULT ( STDMETHODCALLTYPE *EnumerateMetaCommandParameters )( ID3D12Device6 * This, - /* [annotation] */ _In_ REFGUID CommandId, - /* [annotation] */ _In_ D3D12_META_COMMAND_PARAMETER_STAGE Stage, - /* [annotation] */ _Out_opt_ UINT *pTotalStructureSizeInBytes, - /* [annotation] */ _Inout_ UINT *pParameterCount, - /* [annotation] */ _Out_writes_opt_(*pParameterCount) D3D12_META_COMMAND_PARAMETER_DESC *pParameterDescs); DECLSPEC_XFGVIRT(ID3D12Device5, CreateMetaCommand) HRESULT ( STDMETHODCALLTYPE *CreateMetaCommand )( ID3D12Device6 * This, - /* [annotation] */ _In_ REFGUID CommandId, - /* [annotation] */ _In_ UINT NodeMask, - /* [annotation] */ _In_reads_bytes_opt_(CreationParametersDataSizeInBytes) const void *pCreationParametersData, - /* [annotation] */ _In_ SIZE_T CreationParametersDataSizeInBytes, - /* [annotation][in] */ - _In_ REFIID riid, - /* [annotation][iid_is][out] */ + REFIID riid, _COM_Outptr_ void **ppMetaCommand); DECLSPEC_XFGVIRT(ID3D12Device5, CreateStateObject) HRESULT ( STDMETHODCALLTYPE *CreateStateObject )( ID3D12Device6 * This, - /* [annotation][in] */ - _In_ const D3D12_STATE_OBJECT_DESC *pDesc, - /* [annotation][in] */ - _In_ REFIID riid, - /* [annotation][iid_is][out] */ + const D3D12_STATE_OBJECT_DESC *pDesc, + REFIID riid, _COM_Outptr_ void **ppStateObject); DECLSPEC_XFGVIRT(ID3D12Device5, GetRaytracingAccelerationStructurePrebuildInfo) void ( STDMETHODCALLTYPE *GetRaytracingAccelerationStructurePrebuildInfo )( ID3D12Device6 * This, - /* [annotation] */ _In_ const D3D12_BUILD_RAYTRACING_ACCELERATION_STRUCTURE_INPUTS *pDesc, - /* [annotation] */ _Out_ D3D12_RAYTRACING_ACCELERATION_STRUCTURE_PREBUILD_INFO *pInfo); DECLSPEC_XFGVIRT(ID3D12Device5, CheckDriverMatchingIdentifier) D3D12_DRIVER_MATCHING_IDENTIFIER_STATUS ( STDMETHODCALLTYPE *CheckDriverMatchingIdentifier )( ID3D12Device6 * This, - /* [annotation] */ _In_ D3D12_SERIALIZED_DATA_TYPE SerializedDataType, - /* [annotation] */ _In_ const D3D12_SERIALIZED_DATA_DRIVER_MATCHING_IDENTIFIER *pIdentifierToCheck); DECLSPEC_XFGVIRT(ID3D12Device6, SetBackgroundProcessingMode) @@ -17986,9 +16242,7 @@ EXTERN_C const IID IID_ID3D12Device6; ID3D12Device6 * This, D3D12_BACKGROUND_PROCESSING_MODE Mode, D3D12_MEASUREMENTS_ACTION MeasurementsAction, - /* [annotation] */ _In_opt_ HANDLE hEventToSignalUponCompletion, - /* [annotation] */ _Out_opt_ BOOL *pbFurtherMeasurementsDesired); END_INTERFACE @@ -18080,12 +16334,22 @@ EXTERN_C const IID IID_ID3D12Device6; #define ID3D12Device6_CopyDescriptorsSimple(This,NumDescriptors,DestDescriptorRangeStart,SrcDescriptorRangeStart,DescriptorHeapsType) \ ( (This)->lpVtbl -> CopyDescriptorsSimple(This,NumDescriptors,DestDescriptorRangeStart,SrcDescriptorRangeStart,DescriptorHeapsType) ) +#if !defined(_WIN32) #define ID3D12Device6_GetResourceAllocationInfo(This,visibleMask,numResourceDescs,pResourceDescs) \ ( (This)->lpVtbl -> GetResourceAllocationInfo(This,visibleMask,numResourceDescs,pResourceDescs) ) +#else +#define ID3D12Device6_GetResourceAllocationInfo(This,RetVal,visibleMask,numResourceDescs,pResourceDescs) \ + ( (This)->lpVtbl -> GetResourceAllocationInfo(This,RetVal,visibleMask,numResourceDescs,pResourceDescs) ) +#endif +#if !defined(_WIN32) #define ID3D12Device6_GetCustomHeapProperties(This,nodeMask,heapType) \ ( (This)->lpVtbl -> GetCustomHeapProperties(This,nodeMask,heapType) ) +#else +#define ID3D12Device6_GetCustomHeapProperties(This,RetVal,nodeMask,heapType) \ + ( (This)->lpVtbl -> GetCustomHeapProperties(This,RetVal,nodeMask,heapType) ) +#endif #define ID3D12Device6_CreateCommittedResource(This,pHeapProperties,HeapFlags,pDesc,InitialResourceState,pOptimizedClearValue,riidResource,ppvResource) \ ( (This)->lpVtbl -> CreateCommittedResource(This,pHeapProperties,HeapFlags,pDesc,InitialResourceState,pOptimizedClearValue,riidResource,ppvResource) ) @@ -18134,9 +16398,14 @@ EXTERN_C const IID IID_ID3D12Device6; #define ID3D12Device6_GetResourceTiling(This,pTiledResource,pNumTilesForEntireResource,pPackedMipDesc,pStandardTileShapeForNonPackedMips,pNumSubresourceTilings,FirstSubresourceTilingToGet,pSubresourceTilingsForNonPackedMips) \ ( (This)->lpVtbl -> GetResourceTiling(This,pTiledResource,pNumTilesForEntireResource,pPackedMipDesc,pStandardTileShapeForNonPackedMips,pNumSubresourceTilings,FirstSubresourceTilingToGet,pSubresourceTilingsForNonPackedMips) ) +#if !defined(_WIN32) #define ID3D12Device6_GetAdapterLuid(This) \ ( (This)->lpVtbl -> GetAdapterLuid(This) ) +#else +#define ID3D12Device6_GetAdapterLuid(This,RetVal) \ + ( (This)->lpVtbl -> GetAdapterLuid(This,RetVal) ) +#endif #define ID3D12Device6_CreatePipelineLibrary(This,pLibraryBlob,BlobLength,riid,ppPipelineLibrary) \ @@ -18177,9 +16446,14 @@ EXTERN_C const IID IID_ID3D12Device6; #define ID3D12Device6_CreateReservedResource1(This,pDesc,InitialState,pOptimizedClearValue,pProtectedSession,riid,ppvResource) \ ( (This)->lpVtbl -> CreateReservedResource1(This,pDesc,InitialState,pOptimizedClearValue,pProtectedSession,riid,ppvResource) ) +#if !defined(_WIN32) #define ID3D12Device6_GetResourceAllocationInfo1(This,visibleMask,numResourceDescs,pResourceDescs,pResourceAllocationInfo1) \ ( (This)->lpVtbl -> GetResourceAllocationInfo1(This,visibleMask,numResourceDescs,pResourceDescs,pResourceAllocationInfo1) ) +#else +#define ID3D12Device6_GetResourceAllocationInfo1(This,RetVal,visibleMask,numResourceDescs,pResourceDescs,pResourceAllocationInfo1) \ + ( (This)->lpVtbl -> GetResourceAllocationInfo1(This,RetVal,visibleMask,numResourceDescs,pResourceDescs,pResourceAllocationInfo1) ) +#endif #define ID3D12Device6_CreateLifetimeTracker(This,pOwner,riid,ppvTracker) \ @@ -18221,7 +16495,7 @@ EXTERN_C const IID IID_ID3D12Device6; #endif /* __ID3D12Device6_INTERFACE_DEFINED__ */ -/* interface __MIDL_itf_d3d12_0000_0041 */ +/* interface __MIDL_itf_d3d12_0000_0042 */ /* [local] */ DEFINE_GUID(D3D12_PROTECTED_RESOURCES_SESSION_HARDWARE_PROTECTED, 0x62B0084E, 0xC70E, 0x4DAA, 0xA1, 0x09, 0x30, 0xFF, 0x8D, 0x5A, 0x04, 0x82); @@ -18247,8 +16521,8 @@ typedef struct D3D12_PROTECTED_RESOURCE_SESSION_DESC1 -extern RPC_IF_HANDLE __MIDL_itf_d3d12_0000_0041_v0_0_c_ifspec; -extern RPC_IF_HANDLE __MIDL_itf_d3d12_0000_0041_v0_0_s_ifspec; +extern RPC_IF_HANDLE __MIDL_itf_d3d12_0000_0042_v0_0_c_ifspec; +extern RPC_IF_HANDLE __MIDL_itf_d3d12_0000_0042_v0_0_s_ifspec; #ifndef __ID3D12ProtectedResourceSession1_INTERFACE_DEFINED__ #define __ID3D12ProtectedResourceSession1_INTERFACE_DEFINED__ @@ -18265,7 +16539,12 @@ EXTERN_C const IID IID_ID3D12ProtectedResourceSession1; ID3D12ProtectedResourceSession1 : public ID3D12ProtectedResourceSession { public: +#if defined(_MSC_VER) || !defined(_WIN32) virtual D3D12_PROTECTED_RESOURCE_SESSION_DESC1 STDMETHODCALLTYPE GetDesc1( void) = 0; +#else + virtual D3D12_PROTECTED_RESOURCE_SESSION_DESC1 *STDMETHODCALLTYPE GetDesc1( + D3D12_PROTECTED_RESOURCE_SESSION_DESC1 * RetVal) = 0; +#endif }; @@ -18279,9 +16558,7 @@ EXTERN_C const IID IID_ID3D12ProtectedResourceSession1; DECLSPEC_XFGVIRT(IUnknown, QueryInterface) HRESULT ( STDMETHODCALLTYPE *QueryInterface )( ID3D12ProtectedResourceSession1 * This, - /* [annotation][in] */ - _In_ REFIID riid, - /* [annotation][iid_is][out] */ + REFIID riid, _COM_Outptr_ void **ppvObject); DECLSPEC_XFGVIRT(IUnknown, AddRef) @@ -18295,51 +16572,38 @@ EXTERN_C const IID IID_ID3D12ProtectedResourceSession1; DECLSPEC_XFGVIRT(ID3D12Object, GetPrivateData) HRESULT ( STDMETHODCALLTYPE *GetPrivateData )( ID3D12ProtectedResourceSession1 * This, - /* [annotation] */ _In_ REFGUID guid, - /* [annotation] */ _Inout_ UINT *pDataSize, - /* [annotation] */ _Out_writes_bytes_opt_( *pDataSize ) void *pData); DECLSPEC_XFGVIRT(ID3D12Object, SetPrivateData) HRESULT ( STDMETHODCALLTYPE *SetPrivateData )( ID3D12ProtectedResourceSession1 * This, - /* [annotation] */ _In_ REFGUID guid, - /* [annotation] */ _In_ UINT DataSize, - /* [annotation] */ _In_reads_bytes_opt_( DataSize ) const void *pData); DECLSPEC_XFGVIRT(ID3D12Object, SetPrivateDataInterface) HRESULT ( STDMETHODCALLTYPE *SetPrivateDataInterface )( ID3D12ProtectedResourceSession1 * This, - /* [annotation] */ _In_ REFGUID guid, - /* [annotation] */ _In_opt_ const IUnknown *pData); DECLSPEC_XFGVIRT(ID3D12Object, SetName) HRESULT ( STDMETHODCALLTYPE *SetName )( ID3D12ProtectedResourceSession1 * This, - /* [annotation] */ _In_z_ LPCWSTR Name); DECLSPEC_XFGVIRT(ID3D12DeviceChild, GetDevice) HRESULT ( STDMETHODCALLTYPE *GetDevice )( ID3D12ProtectedResourceSession1 * This, - /* [annotation][in] */ - _In_ REFIID riid, - /* [annotation][iid_is][out] */ + REFIID riid, _COM_Outptr_opt_ void **ppvDevice); DECLSPEC_XFGVIRT(ID3D12ProtectedSession, GetStatusFence) HRESULT ( STDMETHODCALLTYPE *GetStatusFence )( ID3D12ProtectedResourceSession1 * This, - /* [annotation][in] */ - _In_ REFIID riid, - /* [annotation][iid_is][out] */ + REFIID riid, _COM_Outptr_opt_ void **ppFence); DECLSPEC_XFGVIRT(ID3D12ProtectedSession, GetSessionStatus) @@ -18347,13 +16611,29 @@ EXTERN_C const IID IID_ID3D12ProtectedResourceSession1; ID3D12ProtectedResourceSession1 * This); DECLSPEC_XFGVIRT(ID3D12ProtectedResourceSession, GetDesc) +#if !defined(_WIN32) D3D12_PROTECTED_RESOURCE_SESSION_DESC ( STDMETHODCALLTYPE *GetDesc )( ID3D12ProtectedResourceSession1 * This); +#else + D3D12_PROTECTED_RESOURCE_SESSION_DESC *( STDMETHODCALLTYPE *GetDesc )( + ID3D12ProtectedResourceSession1 * This, + D3D12_PROTECTED_RESOURCE_SESSION_DESC * RetVal); + +#endif + DECLSPEC_XFGVIRT(ID3D12ProtectedResourceSession1, GetDesc1) +#if !defined(_WIN32) D3D12_PROTECTED_RESOURCE_SESSION_DESC1 ( STDMETHODCALLTYPE *GetDesc1 )( ID3D12ProtectedResourceSession1 * This); +#else + D3D12_PROTECTED_RESOURCE_SESSION_DESC1 *( STDMETHODCALLTYPE *GetDesc1 )( + ID3D12ProtectedResourceSession1 * This, + D3D12_PROTECTED_RESOURCE_SESSION_DESC1 * RetVal); + +#endif + END_INTERFACE } ID3D12ProtectedResourceSession1Vtbl; @@ -18400,13 +16680,23 @@ EXTERN_C const IID IID_ID3D12ProtectedResourceSession1; #define ID3D12ProtectedResourceSession1_GetSessionStatus(This) \ ( (This)->lpVtbl -> GetSessionStatus(This) ) +#if !defined(_WIN32) #define ID3D12ProtectedResourceSession1_GetDesc(This) \ ( (This)->lpVtbl -> GetDesc(This) ) +#else +#define ID3D12ProtectedResourceSession1_GetDesc(This,RetVal) \ + ( (This)->lpVtbl -> GetDesc(This,RetVal) ) +#endif +#if !defined(_WIN32) #define ID3D12ProtectedResourceSession1_GetDesc1(This) \ ( (This)->lpVtbl -> GetDesc1(This) ) +#else +#define ID3D12ProtectedResourceSession1_GetDesc1(This,RetVal) \ + ( (This)->lpVtbl -> GetDesc1(This,RetVal) ) +#endif #endif /* COBJMACROS */ @@ -18415,17 +16705,6 @@ EXTERN_C const IID IID_ID3D12ProtectedResourceSession1; -D3D12_PROTECTED_RESOURCE_SESSION_DESC1 STDMETHODCALLTYPE ID3D12ProtectedResourceSession1_GetDesc1_Proxy( - ID3D12ProtectedResourceSession1 * This); - - -void __RPC_STUB ID3D12ProtectedResourceSession1_GetDesc1_Stub( - IRpcStubBuffer *This, - IRpcChannelBuffer *_pRpcChannelBuffer, - PRPC_MESSAGE _pRpcMessage, - DWORD *_pdwStubPhase); - - #endif /* __ID3D12ProtectedResourceSession1_INTERFACE_DEFINED__ */ @@ -18446,21 +16725,14 @@ EXTERN_C const IID IID_ID3D12Device7; { public: virtual HRESULT STDMETHODCALLTYPE AddToStateObject( - /* [annotation][in] */ - _In_ const D3D12_STATE_OBJECT_DESC *pAddition, - /* [annotation][in] */ - _In_ ID3D12StateObject *pStateObjectToGrowFrom, - /* [annotation][in] */ - _In_ REFIID riid, - /* [annotation][iid_is][out] */ + const D3D12_STATE_OBJECT_DESC *pAddition, + ID3D12StateObject *pStateObjectToGrowFrom, + REFIID riid, _COM_Outptr_ void **ppNewStateObject) = 0; virtual HRESULT STDMETHODCALLTYPE CreateProtectedResourceSession1( - /* [annotation] */ _In_ const D3D12_PROTECTED_RESOURCE_SESSION_DESC1 *pDesc, - /* [annotation] */ _In_ REFIID riid, - /* [annotation][iid_is][out] */ _COM_Outptr_ void **ppSession) = 0; }; @@ -18475,9 +16747,7 @@ EXTERN_C const IID IID_ID3D12Device7; DECLSPEC_XFGVIRT(IUnknown, QueryInterface) HRESULT ( STDMETHODCALLTYPE *QueryInterface )( ID3D12Device7 * This, - /* [annotation][in] */ - _In_ REFIID riid, - /* [annotation][iid_is][out] */ + REFIID riid, _COM_Outptr_ void **ppvObject); DECLSPEC_XFGVIRT(IUnknown, AddRef) @@ -18491,35 +16761,26 @@ EXTERN_C const IID IID_ID3D12Device7; DECLSPEC_XFGVIRT(ID3D12Object, GetPrivateData) HRESULT ( STDMETHODCALLTYPE *GetPrivateData )( ID3D12Device7 * This, - /* [annotation] */ _In_ REFGUID guid, - /* [annotation] */ _Inout_ UINT *pDataSize, - /* [annotation] */ _Out_writes_bytes_opt_( *pDataSize ) void *pData); DECLSPEC_XFGVIRT(ID3D12Object, SetPrivateData) HRESULT ( STDMETHODCALLTYPE *SetPrivateData )( ID3D12Device7 * This, - /* [annotation] */ _In_ REFGUID guid, - /* [annotation] */ _In_ UINT DataSize, - /* [annotation] */ _In_reads_bytes_opt_( DataSize ) const void *pData); DECLSPEC_XFGVIRT(ID3D12Object, SetPrivateDataInterface) HRESULT ( STDMETHODCALLTYPE *SetPrivateDataInterface )( ID3D12Device7 * This, - /* [annotation] */ _In_ REFGUID guid, - /* [annotation] */ _In_opt_ const IUnknown *pData); DECLSPEC_XFGVIRT(ID3D12Object, SetName) HRESULT ( STDMETHODCALLTYPE *SetName )( ID3D12Device7 * This, - /* [annotation] */ _In_z_ LPCWSTR Name); DECLSPEC_XFGVIRT(ID3D12Device, GetNodeCount) @@ -18529,284 +16790,220 @@ EXTERN_C const IID IID_ID3D12Device7; DECLSPEC_XFGVIRT(ID3D12Device, CreateCommandQueue) HRESULT ( STDMETHODCALLTYPE *CreateCommandQueue )( ID3D12Device7 * This, - /* [annotation] */ _In_ const D3D12_COMMAND_QUEUE_DESC *pDesc, - /* [annotation][in] */ - _In_ REFIID riid, - /* [annotation][iid_is][out] */ + REFIID riid, _COM_Outptr_ void **ppCommandQueue); DECLSPEC_XFGVIRT(ID3D12Device, CreateCommandAllocator) HRESULT ( STDMETHODCALLTYPE *CreateCommandAllocator )( ID3D12Device7 * This, - /* [annotation] */ _In_ D3D12_COMMAND_LIST_TYPE type, - /* [annotation][in] */ - _In_ REFIID riid, - /* [annotation][iid_is][out] */ + REFIID riid, _COM_Outptr_ void **ppCommandAllocator); DECLSPEC_XFGVIRT(ID3D12Device, CreateGraphicsPipelineState) HRESULT ( STDMETHODCALLTYPE *CreateGraphicsPipelineState )( ID3D12Device7 * This, - /* [annotation] */ _In_ const D3D12_GRAPHICS_PIPELINE_STATE_DESC *pDesc, - /* [annotation][in] */ - _In_ REFIID riid, - /* [annotation][iid_is][out] */ + REFIID riid, _COM_Outptr_ void **ppPipelineState); DECLSPEC_XFGVIRT(ID3D12Device, CreateComputePipelineState) HRESULT ( STDMETHODCALLTYPE *CreateComputePipelineState )( ID3D12Device7 * This, - /* [annotation] */ _In_ const D3D12_COMPUTE_PIPELINE_STATE_DESC *pDesc, - /* [annotation][in] */ - _In_ REFIID riid, - /* [annotation][iid_is][out] */ + REFIID riid, _COM_Outptr_ void **ppPipelineState); DECLSPEC_XFGVIRT(ID3D12Device, CreateCommandList) HRESULT ( STDMETHODCALLTYPE *CreateCommandList )( ID3D12Device7 * This, - /* [annotation] */ _In_ UINT nodeMask, - /* [annotation] */ _In_ D3D12_COMMAND_LIST_TYPE type, - /* [annotation] */ _In_ ID3D12CommandAllocator *pCommandAllocator, - /* [annotation] */ _In_opt_ ID3D12PipelineState *pInitialState, - /* [annotation][in] */ - _In_ REFIID riid, - /* [annotation][iid_is][out] */ + REFIID riid, _COM_Outptr_ void **ppCommandList); DECLSPEC_XFGVIRT(ID3D12Device, CheckFeatureSupport) HRESULT ( STDMETHODCALLTYPE *CheckFeatureSupport )( ID3D12Device7 * This, D3D12_FEATURE Feature, - /* [annotation] */ _Inout_updates_bytes_(FeatureSupportDataSize) void *pFeatureSupportData, UINT FeatureSupportDataSize); DECLSPEC_XFGVIRT(ID3D12Device, CreateDescriptorHeap) HRESULT ( STDMETHODCALLTYPE *CreateDescriptorHeap )( ID3D12Device7 * This, - /* [annotation] */ _In_ const D3D12_DESCRIPTOR_HEAP_DESC *pDescriptorHeapDesc, - /* [annotation][in] */ - _In_ REFIID riid, - /* [annotation][iid_is][out] */ + REFIID riid, _COM_Outptr_ void **ppvHeap); DECLSPEC_XFGVIRT(ID3D12Device, GetDescriptorHandleIncrementSize) UINT ( STDMETHODCALLTYPE *GetDescriptorHandleIncrementSize )( ID3D12Device7 * This, - /* [annotation] */ _In_ D3D12_DESCRIPTOR_HEAP_TYPE DescriptorHeapType); DECLSPEC_XFGVIRT(ID3D12Device, CreateRootSignature) HRESULT ( STDMETHODCALLTYPE *CreateRootSignature )( ID3D12Device7 * This, - /* [annotation] */ _In_ UINT nodeMask, - /* [annotation] */ _In_reads_(blobLengthInBytes) const void *pBlobWithRootSignature, - /* [annotation] */ _In_ SIZE_T blobLengthInBytes, - /* [annotation][in] */ - _In_ REFIID riid, - /* [annotation][iid_is][out] */ + REFIID riid, _COM_Outptr_ void **ppvRootSignature); DECLSPEC_XFGVIRT(ID3D12Device, CreateConstantBufferView) void ( STDMETHODCALLTYPE *CreateConstantBufferView )( ID3D12Device7 * This, - /* [annotation] */ _In_opt_ const D3D12_CONSTANT_BUFFER_VIEW_DESC *pDesc, - /* [annotation] */ _In_ D3D12_CPU_DESCRIPTOR_HANDLE DestDescriptor); DECLSPEC_XFGVIRT(ID3D12Device, CreateShaderResourceView) void ( STDMETHODCALLTYPE *CreateShaderResourceView )( ID3D12Device7 * This, - /* [annotation] */ _In_opt_ ID3D12Resource *pResource, - /* [annotation] */ _In_opt_ const D3D12_SHADER_RESOURCE_VIEW_DESC *pDesc, - /* [annotation] */ _In_ D3D12_CPU_DESCRIPTOR_HANDLE DestDescriptor); DECLSPEC_XFGVIRT(ID3D12Device, CreateUnorderedAccessView) void ( STDMETHODCALLTYPE *CreateUnorderedAccessView )( ID3D12Device7 * This, - /* [annotation] */ _In_opt_ ID3D12Resource *pResource, - /* [annotation] */ _In_opt_ ID3D12Resource *pCounterResource, - /* [annotation] */ _In_opt_ const D3D12_UNORDERED_ACCESS_VIEW_DESC *pDesc, - /* [annotation] */ _In_ D3D12_CPU_DESCRIPTOR_HANDLE DestDescriptor); DECLSPEC_XFGVIRT(ID3D12Device, CreateRenderTargetView) void ( STDMETHODCALLTYPE *CreateRenderTargetView )( ID3D12Device7 * This, - /* [annotation] */ _In_opt_ ID3D12Resource *pResource, - /* [annotation] */ _In_opt_ const D3D12_RENDER_TARGET_VIEW_DESC *pDesc, - /* [annotation] */ _In_ D3D12_CPU_DESCRIPTOR_HANDLE DestDescriptor); DECLSPEC_XFGVIRT(ID3D12Device, CreateDepthStencilView) void ( STDMETHODCALLTYPE *CreateDepthStencilView )( ID3D12Device7 * This, - /* [annotation] */ _In_opt_ ID3D12Resource *pResource, - /* [annotation] */ _In_opt_ const D3D12_DEPTH_STENCIL_VIEW_DESC *pDesc, - /* [annotation] */ _In_ D3D12_CPU_DESCRIPTOR_HANDLE DestDescriptor); DECLSPEC_XFGVIRT(ID3D12Device, CreateSampler) void ( STDMETHODCALLTYPE *CreateSampler )( ID3D12Device7 * This, - /* [annotation] */ _In_ const D3D12_SAMPLER_DESC *pDesc, - /* [annotation] */ _In_ D3D12_CPU_DESCRIPTOR_HANDLE DestDescriptor); DECLSPEC_XFGVIRT(ID3D12Device, CopyDescriptors) void ( STDMETHODCALLTYPE *CopyDescriptors )( ID3D12Device7 * This, - /* [annotation] */ _In_ UINT NumDestDescriptorRanges, - /* [annotation] */ _In_reads_(NumDestDescriptorRanges) const D3D12_CPU_DESCRIPTOR_HANDLE *pDestDescriptorRangeStarts, - /* [annotation] */ _In_reads_opt_(NumDestDescriptorRanges) const UINT *pDestDescriptorRangeSizes, - /* [annotation] */ _In_ UINT NumSrcDescriptorRanges, - /* [annotation] */ _In_reads_(NumSrcDescriptorRanges) const D3D12_CPU_DESCRIPTOR_HANDLE *pSrcDescriptorRangeStarts, - /* [annotation] */ _In_reads_opt_(NumSrcDescriptorRanges) const UINT *pSrcDescriptorRangeSizes, - /* [annotation] */ _In_ D3D12_DESCRIPTOR_HEAP_TYPE DescriptorHeapsType); DECLSPEC_XFGVIRT(ID3D12Device, CopyDescriptorsSimple) void ( STDMETHODCALLTYPE *CopyDescriptorsSimple )( ID3D12Device7 * This, - /* [annotation] */ _In_ UINT NumDescriptors, - /* [annotation] */ _In_ D3D12_CPU_DESCRIPTOR_HANDLE DestDescriptorRangeStart, - /* [annotation] */ _In_ D3D12_CPU_DESCRIPTOR_HANDLE SrcDescriptorRangeStart, - /* [annotation] */ _In_ D3D12_DESCRIPTOR_HEAP_TYPE DescriptorHeapsType); DECLSPEC_XFGVIRT(ID3D12Device, GetResourceAllocationInfo) +#if !defined(_WIN32) D3D12_RESOURCE_ALLOCATION_INFO ( STDMETHODCALLTYPE *GetResourceAllocationInfo )( ID3D12Device7 * This, - /* [annotation] */ _In_ UINT visibleMask, - /* [annotation] */ _In_ UINT numResourceDescs, - /* [annotation] */ _In_reads_(numResourceDescs) const D3D12_RESOURCE_DESC *pResourceDescs); +#else + D3D12_RESOURCE_ALLOCATION_INFO *( STDMETHODCALLTYPE *GetResourceAllocationInfo )( + ID3D12Device7 * This, + D3D12_RESOURCE_ALLOCATION_INFO * RetVal, + _In_ UINT visibleMask, + _In_ UINT numResourceDescs, + _In_reads_(numResourceDescs) const D3D12_RESOURCE_DESC *pResourceDescs); + +#endif + DECLSPEC_XFGVIRT(ID3D12Device, GetCustomHeapProperties) +#if !defined(_WIN32) D3D12_HEAP_PROPERTIES ( STDMETHODCALLTYPE *GetCustomHeapProperties )( ID3D12Device7 * This, - /* [annotation] */ _In_ UINT nodeMask, D3D12_HEAP_TYPE heapType); +#else + D3D12_HEAP_PROPERTIES *( STDMETHODCALLTYPE *GetCustomHeapProperties )( + ID3D12Device7 * This, + D3D12_HEAP_PROPERTIES * RetVal, + _In_ UINT nodeMask, + D3D12_HEAP_TYPE heapType); + +#endif + DECLSPEC_XFGVIRT(ID3D12Device, CreateCommittedResource) HRESULT ( STDMETHODCALLTYPE *CreateCommittedResource )( ID3D12Device7 * This, - /* [annotation] */ _In_ const D3D12_HEAP_PROPERTIES *pHeapProperties, D3D12_HEAP_FLAGS HeapFlags, - /* [annotation] */ _In_ const D3D12_RESOURCE_DESC *pDesc, D3D12_RESOURCE_STATES InitialResourceState, - /* [annotation] */ _In_opt_ const D3D12_CLEAR_VALUE *pOptimizedClearValue, - /* [annotation][in] */ - _In_ REFIID riidResource, - /* [annotation][iid_is][out] */ + REFIID riidResource, _COM_Outptr_opt_ void **ppvResource); DECLSPEC_XFGVIRT(ID3D12Device, CreateHeap) HRESULT ( STDMETHODCALLTYPE *CreateHeap )( ID3D12Device7 * This, - /* [annotation] */ _In_ const D3D12_HEAP_DESC *pDesc, - /* [annotation][in] */ - _In_ REFIID riid, - /* [annotation][iid_is][out] */ + REFIID riid, _COM_Outptr_opt_ void **ppvHeap); DECLSPEC_XFGVIRT(ID3D12Device, CreatePlacedResource) HRESULT ( STDMETHODCALLTYPE *CreatePlacedResource )( ID3D12Device7 * This, - /* [annotation] */ _In_ ID3D12Heap *pHeap, UINT64 HeapOffset, - /* [annotation] */ _In_ const D3D12_RESOURCE_DESC *pDesc, D3D12_RESOURCE_STATES InitialState, - /* [annotation] */ _In_opt_ const D3D12_CLEAR_VALUE *pOptimizedClearValue, - /* [annotation][in] */ - _In_ REFIID riid, - /* [annotation][iid_is][out] */ + REFIID riid, _COM_Outptr_opt_ void **ppvResource); DECLSPEC_XFGVIRT(ID3D12Device, CreateReservedResource) HRESULT ( STDMETHODCALLTYPE *CreateReservedResource )( ID3D12Device7 * This, - /* [annotation] */ _In_ const D3D12_RESOURCE_DESC *pDesc, D3D12_RESOURCE_STATES InitialState, - /* [annotation] */ _In_opt_ const D3D12_CLEAR_VALUE *pOptimizedClearValue, - /* [annotation][in] */ - _In_ REFIID riid, - /* [annotation][iid_is][out] */ + REFIID riid, _COM_Outptr_opt_ void **ppvResource); DECLSPEC_XFGVIRT(ID3D12Device, CreateSharedHandle) HRESULT ( STDMETHODCALLTYPE *CreateSharedHandle )( ID3D12Device7 * This, - /* [annotation] */ _In_ ID3D12DeviceChild *pObject, - /* [annotation] */ _In_opt_ const SECURITY_ATTRIBUTES *pAttributes, DWORD Access, - /* [annotation] */ _In_opt_ LPCWSTR Name, - /* [annotation] */ _Out_ HANDLE *pHandle); DECLSPEC_XFGVIRT(ID3D12Device, OpenSharedHandle) HRESULT ( STDMETHODCALLTYPE *OpenSharedHandle )( ID3D12Device7 * This, - /* [annotation] */ _In_ HANDLE NTHandle, - /* [annotation][in] */ - _In_ REFIID riid, - /* [annotation][iid_is][out] */ + REFIID riid, _COM_Outptr_opt_ void **ppvObj); DECLSPEC_XFGVIRT(ID3D12Device, OpenSharedHandleByName) HRESULT ( STDMETHODCALLTYPE *OpenSharedHandleByName )( ID3D12Device7 * This, - /* [annotation] */ _In_ LPCWSTR Name, DWORD Access, /* [annotation][out] */ @@ -18816,14 +17013,12 @@ EXTERN_C const IID IID_ID3D12Device7; HRESULT ( STDMETHODCALLTYPE *MakeResident )( ID3D12Device7 * This, UINT NumObjects, - /* [annotation] */ _In_reads_(NumObjects) ID3D12Pageable *const *ppObjects); DECLSPEC_XFGVIRT(ID3D12Device, Evict) HRESULT ( STDMETHODCALLTYPE *Evict )( ID3D12Device7 * This, UINT NumObjects, - /* [annotation] */ _In_reads_(NumObjects) ID3D12Pageable *const *ppObjects); DECLSPEC_XFGVIRT(ID3D12Device, CreateFence) @@ -18831,9 +17026,7 @@ EXTERN_C const IID IID_ID3D12Device7; ID3D12Device7 * This, UINT64 InitialValue, D3D12_FENCE_FLAGS Flags, - /* [annotation][in] */ - _In_ REFIID riid, - /* [annotation][iid_is][out] */ + REFIID riid, _COM_Outptr_ void **ppFence); DECLSPEC_XFGVIRT(ID3D12Device, GetDeviceRemovedReason) @@ -18843,30 +17036,20 @@ EXTERN_C const IID IID_ID3D12Device7; DECLSPEC_XFGVIRT(ID3D12Device, GetCopyableFootprints) void ( STDMETHODCALLTYPE *GetCopyableFootprints )( ID3D12Device7 * This, - /* [annotation] */ _In_ const D3D12_RESOURCE_DESC *pResourceDesc, - /* [annotation] */ _In_range_(0,D3D12_REQ_SUBRESOURCES) UINT FirstSubresource, - /* [annotation] */ _In_range_(0,D3D12_REQ_SUBRESOURCES-FirstSubresource) UINT NumSubresources, UINT64 BaseOffset, - /* [annotation] */ _Out_writes_opt_(NumSubresources) D3D12_PLACED_SUBRESOURCE_FOOTPRINT *pLayouts, - /* [annotation] */ _Out_writes_opt_(NumSubresources) UINT *pNumRows, - /* [annotation] */ _Out_writes_opt_(NumSubresources) UINT64 *pRowSizeInBytes, - /* [annotation] */ _Out_opt_ UINT64 *pTotalBytes); DECLSPEC_XFGVIRT(ID3D12Device, CreateQueryHeap) HRESULT ( STDMETHODCALLTYPE *CreateQueryHeap )( ID3D12Device7 * This, - /* [annotation] */ _In_ const D3D12_QUERY_HEAP_DESC *pDesc, - /* [annotation][in] */ - _In_ REFIID riid, - /* [annotation][iid_is][out] */ + REFIID riid, _COM_Outptr_opt_ void **ppvHeap); DECLSPEC_XFGVIRT(ID3D12Device, SetStablePowerState) @@ -18877,54 +17060,46 @@ EXTERN_C const IID IID_ID3D12Device7; DECLSPEC_XFGVIRT(ID3D12Device, CreateCommandSignature) HRESULT ( STDMETHODCALLTYPE *CreateCommandSignature )( ID3D12Device7 * This, - /* [annotation] */ _In_ const D3D12_COMMAND_SIGNATURE_DESC *pDesc, - /* [annotation] */ _In_opt_ ID3D12RootSignature *pRootSignature, - /* [annotation][in] */ - _In_ REFIID riid, - /* [annotation][iid_is][out] */ + REFIID riid, _COM_Outptr_opt_ void **ppvCommandSignature); DECLSPEC_XFGVIRT(ID3D12Device, GetResourceTiling) void ( STDMETHODCALLTYPE *GetResourceTiling )( ID3D12Device7 * This, - /* [annotation] */ _In_ ID3D12Resource *pTiledResource, - /* [annotation] */ _Out_opt_ UINT *pNumTilesForEntireResource, - /* [annotation] */ _Out_opt_ D3D12_PACKED_MIP_INFO *pPackedMipDesc, - /* [annotation] */ _Out_opt_ D3D12_TILE_SHAPE *pStandardTileShapeForNonPackedMips, - /* [annotation] */ _Inout_opt_ UINT *pNumSubresourceTilings, - /* [annotation] */ _In_ UINT FirstSubresourceTilingToGet, - /* [annotation] */ _Out_writes_(*pNumSubresourceTilings) D3D12_SUBRESOURCE_TILING *pSubresourceTilingsForNonPackedMips); DECLSPEC_XFGVIRT(ID3D12Device, GetAdapterLuid) +#if !defined(_WIN32) LUID ( STDMETHODCALLTYPE *GetAdapterLuid )( ID3D12Device7 * This); +#else + LUID *( STDMETHODCALLTYPE *GetAdapterLuid )( + ID3D12Device7 * This, + LUID * RetVal); + +#endif + DECLSPEC_XFGVIRT(ID3D12Device1, CreatePipelineLibrary) HRESULT ( STDMETHODCALLTYPE *CreatePipelineLibrary )( ID3D12Device7 * This, - /* [annotation] */ _In_reads_(BlobLength) const void *pLibraryBlob, SIZE_T BlobLength, - /* [annotation][in] */ - _In_ REFIID riid, - /* [annotation][iid_is][out] */ + REFIID riid, _COM_Outptr_ void **ppPipelineLibrary); DECLSPEC_XFGVIRT(ID3D12Device1, SetEventOnMultipleFenceCompletion) HRESULT ( STDMETHODCALLTYPE *SetEventOnMultipleFenceCompletion )( ID3D12Device7 * This, - /* [annotation] */ _In_reads_(NumFences) ID3D12Fence *const *ppFences, - /* [annotation] */ _In_reads_(NumFences) const UINT64 *pFenceValues, UINT NumFences, D3D12_MULTIPLE_FENCE_WAIT_FLAGS Flags, @@ -18934,39 +17109,28 @@ EXTERN_C const IID IID_ID3D12Device7; HRESULT ( STDMETHODCALLTYPE *SetResidencyPriority )( ID3D12Device7 * This, UINT NumObjects, - /* [annotation] */ _In_reads_(NumObjects) ID3D12Pageable *const *ppObjects, - /* [annotation] */ _In_reads_(NumObjects) const D3D12_RESIDENCY_PRIORITY *pPriorities); DECLSPEC_XFGVIRT(ID3D12Device2, CreatePipelineState) HRESULT ( STDMETHODCALLTYPE *CreatePipelineState )( ID3D12Device7 * This, - /* [annotation][in] */ - _In_ const D3D12_PIPELINE_STATE_STREAM_DESC *pDesc, - /* [annotation][in] */ - _In_ REFIID riid, - /* [annotation][iid_is][out] */ + const D3D12_PIPELINE_STATE_STREAM_DESC *pDesc, + REFIID riid, _COM_Outptr_ void **ppPipelineState); DECLSPEC_XFGVIRT(ID3D12Device3, OpenExistingHeapFromAddress) HRESULT ( STDMETHODCALLTYPE *OpenExistingHeapFromAddress )( ID3D12Device7 * This, - /* [annotation] */ _In_ const void *pAddress, - /* [annotation][in] */ - _In_ REFIID riid, - /* [annotation][iid_is][out] */ + REFIID riid, _COM_Outptr_ void **ppvHeap); DECLSPEC_XFGVIRT(ID3D12Device3, OpenExistingHeapFromFileMapping) HRESULT ( STDMETHODCALLTYPE *OpenExistingHeapFromFileMapping )( ID3D12Device7 * This, - /* [annotation] */ _In_ HANDLE hFileMapping, - /* [annotation][in] */ - _In_ REFIID riid, - /* [annotation][iid_is][out] */ + REFIID riid, _COM_Outptr_ void **ppvHeap); DECLSPEC_XFGVIRT(ID3D12Device3, EnqueueMakeResident) @@ -18974,99 +17138,81 @@ EXTERN_C const IID IID_ID3D12Device7; ID3D12Device7 * This, D3D12_RESIDENCY_FLAGS Flags, UINT NumObjects, - /* [annotation] */ _In_reads_(NumObjects) ID3D12Pageable *const *ppObjects, - /* [annotation] */ _In_ ID3D12Fence *pFenceToSignal, UINT64 FenceValueToSignal); DECLSPEC_XFGVIRT(ID3D12Device4, CreateCommandList1) HRESULT ( STDMETHODCALLTYPE *CreateCommandList1 )( ID3D12Device7 * This, - /* [annotation] */ _In_ UINT nodeMask, - /* [annotation] */ _In_ D3D12_COMMAND_LIST_TYPE type, - /* [annotation] */ _In_ D3D12_COMMAND_LIST_FLAGS flags, - /* [annotation][in] */ - _In_ REFIID riid, - /* [annotation][iid_is][out] */ + REFIID riid, _COM_Outptr_ void **ppCommandList); DECLSPEC_XFGVIRT(ID3D12Device4, CreateProtectedResourceSession) HRESULT ( STDMETHODCALLTYPE *CreateProtectedResourceSession )( ID3D12Device7 * This, - /* [annotation] */ _In_ const D3D12_PROTECTED_RESOURCE_SESSION_DESC *pDesc, - /* [annotation] */ _In_ REFIID riid, - /* [annotation][iid_is][out] */ _COM_Outptr_ void **ppSession); DECLSPEC_XFGVIRT(ID3D12Device4, CreateCommittedResource1) HRESULT ( STDMETHODCALLTYPE *CreateCommittedResource1 )( ID3D12Device7 * This, - /* [annotation] */ _In_ const D3D12_HEAP_PROPERTIES *pHeapProperties, D3D12_HEAP_FLAGS HeapFlags, - /* [annotation] */ _In_ const D3D12_RESOURCE_DESC *pDesc, D3D12_RESOURCE_STATES InitialResourceState, - /* [annotation] */ _In_opt_ const D3D12_CLEAR_VALUE *pOptimizedClearValue, - /* [annotation] */ _In_opt_ ID3D12ProtectedResourceSession *pProtectedSession, - /* [annotation][in] */ - _In_ REFIID riidResource, - /* [annotation][iid_is][out] */ + REFIID riidResource, _COM_Outptr_opt_ void **ppvResource); DECLSPEC_XFGVIRT(ID3D12Device4, CreateHeap1) HRESULT ( STDMETHODCALLTYPE *CreateHeap1 )( ID3D12Device7 * This, - /* [annotation] */ _In_ const D3D12_HEAP_DESC *pDesc, - /* [annotation] */ _In_opt_ ID3D12ProtectedResourceSession *pProtectedSession, - /* [annotation][in] */ - _In_ REFIID riid, - /* [annotation][iid_is][out] */ + REFIID riid, _COM_Outptr_opt_ void **ppvHeap); DECLSPEC_XFGVIRT(ID3D12Device4, CreateReservedResource1) HRESULT ( STDMETHODCALLTYPE *CreateReservedResource1 )( ID3D12Device7 * This, - /* [annotation] */ _In_ const D3D12_RESOURCE_DESC *pDesc, D3D12_RESOURCE_STATES InitialState, - /* [annotation] */ _In_opt_ const D3D12_CLEAR_VALUE *pOptimizedClearValue, - /* [annotation] */ _In_opt_ ID3D12ProtectedResourceSession *pProtectedSession, - /* [annotation][in] */ - _In_ REFIID riid, - /* [annotation][iid_is][out] */ + REFIID riid, _COM_Outptr_opt_ void **ppvResource); DECLSPEC_XFGVIRT(ID3D12Device4, GetResourceAllocationInfo1) +#if !defined(_WIN32) D3D12_RESOURCE_ALLOCATION_INFO ( STDMETHODCALLTYPE *GetResourceAllocationInfo1 )( ID3D12Device7 * This, UINT visibleMask, UINT numResourceDescs, - /* [annotation] */ _In_reads_(numResourceDescs) const D3D12_RESOURCE_DESC *pResourceDescs, - /* [annotation] */ _Out_writes_opt_(numResourceDescs) D3D12_RESOURCE_ALLOCATION_INFO1 *pResourceAllocationInfo1); +#else + D3D12_RESOURCE_ALLOCATION_INFO *( STDMETHODCALLTYPE *GetResourceAllocationInfo1 )( + ID3D12Device7 * This, + D3D12_RESOURCE_ALLOCATION_INFO * RetVal, + UINT visibleMask, + UINT numResourceDescs, + _In_reads_(numResourceDescs) const D3D12_RESOURCE_DESC *pResourceDescs, + _Out_writes_opt_(numResourceDescs) D3D12_RESOURCE_ALLOCATION_INFO1 *pResourceAllocationInfo1); + +#endif + DECLSPEC_XFGVIRT(ID3D12Device5, CreateLifetimeTracker) HRESULT ( STDMETHODCALLTYPE *CreateLifetimeTracker )( ID3D12Device7 * This, - /* [annotation] */ _In_ ID3D12LifetimeOwner *pOwner, - /* [annotation][in] */ - _In_ REFIID riid, - /* [annotation][iid_is][out] */ + REFIID riid, _COM_Outptr_ void **ppvTracker); DECLSPEC_XFGVIRT(ID3D12Device5, RemoveDevice) @@ -19076,65 +17222,45 @@ EXTERN_C const IID IID_ID3D12Device7; DECLSPEC_XFGVIRT(ID3D12Device5, EnumerateMetaCommands) HRESULT ( STDMETHODCALLTYPE *EnumerateMetaCommands )( ID3D12Device7 * This, - /* [annotation] */ _Inout_ UINT *pNumMetaCommands, - /* [annotation] */ _Out_writes_opt_(*pNumMetaCommands) D3D12_META_COMMAND_DESC *pDescs); DECLSPEC_XFGVIRT(ID3D12Device5, EnumerateMetaCommandParameters) HRESULT ( STDMETHODCALLTYPE *EnumerateMetaCommandParameters )( ID3D12Device7 * This, - /* [annotation] */ _In_ REFGUID CommandId, - /* [annotation] */ _In_ D3D12_META_COMMAND_PARAMETER_STAGE Stage, - /* [annotation] */ _Out_opt_ UINT *pTotalStructureSizeInBytes, - /* [annotation] */ _Inout_ UINT *pParameterCount, - /* [annotation] */ _Out_writes_opt_(*pParameterCount) D3D12_META_COMMAND_PARAMETER_DESC *pParameterDescs); DECLSPEC_XFGVIRT(ID3D12Device5, CreateMetaCommand) HRESULT ( STDMETHODCALLTYPE *CreateMetaCommand )( ID3D12Device7 * This, - /* [annotation] */ _In_ REFGUID CommandId, - /* [annotation] */ _In_ UINT NodeMask, - /* [annotation] */ _In_reads_bytes_opt_(CreationParametersDataSizeInBytes) const void *pCreationParametersData, - /* [annotation] */ _In_ SIZE_T CreationParametersDataSizeInBytes, - /* [annotation][in] */ - _In_ REFIID riid, - /* [annotation][iid_is][out] */ + REFIID riid, _COM_Outptr_ void **ppMetaCommand); DECLSPEC_XFGVIRT(ID3D12Device5, CreateStateObject) HRESULT ( STDMETHODCALLTYPE *CreateStateObject )( ID3D12Device7 * This, - /* [annotation][in] */ - _In_ const D3D12_STATE_OBJECT_DESC *pDesc, - /* [annotation][in] */ - _In_ REFIID riid, - /* [annotation][iid_is][out] */ + const D3D12_STATE_OBJECT_DESC *pDesc, + REFIID riid, _COM_Outptr_ void **ppStateObject); DECLSPEC_XFGVIRT(ID3D12Device5, GetRaytracingAccelerationStructurePrebuildInfo) void ( STDMETHODCALLTYPE *GetRaytracingAccelerationStructurePrebuildInfo )( ID3D12Device7 * This, - /* [annotation] */ _In_ const D3D12_BUILD_RAYTRACING_ACCELERATION_STRUCTURE_INPUTS *pDesc, - /* [annotation] */ _Out_ D3D12_RAYTRACING_ACCELERATION_STRUCTURE_PREBUILD_INFO *pInfo); DECLSPEC_XFGVIRT(ID3D12Device5, CheckDriverMatchingIdentifier) D3D12_DRIVER_MATCHING_IDENTIFIER_STATUS ( STDMETHODCALLTYPE *CheckDriverMatchingIdentifier )( ID3D12Device7 * This, - /* [annotation] */ _In_ D3D12_SERIALIZED_DATA_TYPE SerializedDataType, - /* [annotation] */ _In_ const D3D12_SERIALIZED_DATA_DRIVER_MATCHING_IDENTIFIER *pIdentifierToCheck); DECLSPEC_XFGVIRT(ID3D12Device6, SetBackgroundProcessingMode) @@ -19142,31 +17268,22 @@ EXTERN_C const IID IID_ID3D12Device7; ID3D12Device7 * This, D3D12_BACKGROUND_PROCESSING_MODE Mode, D3D12_MEASUREMENTS_ACTION MeasurementsAction, - /* [annotation] */ _In_opt_ HANDLE hEventToSignalUponCompletion, - /* [annotation] */ _Out_opt_ BOOL *pbFurtherMeasurementsDesired); DECLSPEC_XFGVIRT(ID3D12Device7, AddToStateObject) HRESULT ( STDMETHODCALLTYPE *AddToStateObject )( ID3D12Device7 * This, - /* [annotation][in] */ - _In_ const D3D12_STATE_OBJECT_DESC *pAddition, - /* [annotation][in] */ - _In_ ID3D12StateObject *pStateObjectToGrowFrom, - /* [annotation][in] */ - _In_ REFIID riid, - /* [annotation][iid_is][out] */ + const D3D12_STATE_OBJECT_DESC *pAddition, + ID3D12StateObject *pStateObjectToGrowFrom, + REFIID riid, _COM_Outptr_ void **ppNewStateObject); DECLSPEC_XFGVIRT(ID3D12Device7, CreateProtectedResourceSession1) HRESULT ( STDMETHODCALLTYPE *CreateProtectedResourceSession1 )( ID3D12Device7 * This, - /* [annotation] */ _In_ const D3D12_PROTECTED_RESOURCE_SESSION_DESC1 *pDesc, - /* [annotation] */ _In_ REFIID riid, - /* [annotation][iid_is][out] */ _COM_Outptr_ void **ppSession); END_INTERFACE @@ -19258,12 +17375,22 @@ EXTERN_C const IID IID_ID3D12Device7; #define ID3D12Device7_CopyDescriptorsSimple(This,NumDescriptors,DestDescriptorRangeStart,SrcDescriptorRangeStart,DescriptorHeapsType) \ ( (This)->lpVtbl -> CopyDescriptorsSimple(This,NumDescriptors,DestDescriptorRangeStart,SrcDescriptorRangeStart,DescriptorHeapsType) ) +#if !defined(_WIN32) #define ID3D12Device7_GetResourceAllocationInfo(This,visibleMask,numResourceDescs,pResourceDescs) \ ( (This)->lpVtbl -> GetResourceAllocationInfo(This,visibleMask,numResourceDescs,pResourceDescs) ) +#else +#define ID3D12Device7_GetResourceAllocationInfo(This,RetVal,visibleMask,numResourceDescs,pResourceDescs) \ + ( (This)->lpVtbl -> GetResourceAllocationInfo(This,RetVal,visibleMask,numResourceDescs,pResourceDescs) ) +#endif +#if !defined(_WIN32) #define ID3D12Device7_GetCustomHeapProperties(This,nodeMask,heapType) \ ( (This)->lpVtbl -> GetCustomHeapProperties(This,nodeMask,heapType) ) +#else +#define ID3D12Device7_GetCustomHeapProperties(This,RetVal,nodeMask,heapType) \ + ( (This)->lpVtbl -> GetCustomHeapProperties(This,RetVal,nodeMask,heapType) ) +#endif #define ID3D12Device7_CreateCommittedResource(This,pHeapProperties,HeapFlags,pDesc,InitialResourceState,pOptimizedClearValue,riidResource,ppvResource) \ ( (This)->lpVtbl -> CreateCommittedResource(This,pHeapProperties,HeapFlags,pDesc,InitialResourceState,pOptimizedClearValue,riidResource,ppvResource) ) @@ -19312,9 +17439,14 @@ EXTERN_C const IID IID_ID3D12Device7; #define ID3D12Device7_GetResourceTiling(This,pTiledResource,pNumTilesForEntireResource,pPackedMipDesc,pStandardTileShapeForNonPackedMips,pNumSubresourceTilings,FirstSubresourceTilingToGet,pSubresourceTilingsForNonPackedMips) \ ( (This)->lpVtbl -> GetResourceTiling(This,pTiledResource,pNumTilesForEntireResource,pPackedMipDesc,pStandardTileShapeForNonPackedMips,pNumSubresourceTilings,FirstSubresourceTilingToGet,pSubresourceTilingsForNonPackedMips) ) +#if !defined(_WIN32) #define ID3D12Device7_GetAdapterLuid(This) \ ( (This)->lpVtbl -> GetAdapterLuid(This) ) +#else +#define ID3D12Device7_GetAdapterLuid(This,RetVal) \ + ( (This)->lpVtbl -> GetAdapterLuid(This,RetVal) ) +#endif #define ID3D12Device7_CreatePipelineLibrary(This,pLibraryBlob,BlobLength,riid,ppPipelineLibrary) \ @@ -19355,9 +17487,14 @@ EXTERN_C const IID IID_ID3D12Device7; #define ID3D12Device7_CreateReservedResource1(This,pDesc,InitialState,pOptimizedClearValue,pProtectedSession,riid,ppvResource) \ ( (This)->lpVtbl -> CreateReservedResource1(This,pDesc,InitialState,pOptimizedClearValue,pProtectedSession,riid,ppvResource) ) +#if !defined(_WIN32) #define ID3D12Device7_GetResourceAllocationInfo1(This,visibleMask,numResourceDescs,pResourceDescs,pResourceAllocationInfo1) \ ( (This)->lpVtbl -> GetResourceAllocationInfo1(This,visibleMask,numResourceDescs,pResourceDescs,pResourceAllocationInfo1) ) +#else +#define ID3D12Device7_GetResourceAllocationInfo1(This,RetVal,visibleMask,numResourceDescs,pResourceDescs,pResourceAllocationInfo1) \ + ( (This)->lpVtbl -> GetResourceAllocationInfo1(This,RetVal,visibleMask,numResourceDescs,pResourceDescs,pResourceAllocationInfo1) ) +#endif #define ID3D12Device7_CreateLifetimeTracker(This,pOwner,riid,ppvTracker) \ @@ -19421,67 +17558,53 @@ EXTERN_C const IID IID_ID3D12Device8; ID3D12Device8 : public ID3D12Device7 { public: +#if defined(_MSC_VER) || !defined(_WIN32) virtual D3D12_RESOURCE_ALLOCATION_INFO STDMETHODCALLTYPE GetResourceAllocationInfo2( UINT visibleMask, UINT numResourceDescs, - /* [annotation] */ _In_reads_(numResourceDescs) const D3D12_RESOURCE_DESC1 *pResourceDescs, - /* [annotation] */ _Out_writes_opt_(numResourceDescs) D3D12_RESOURCE_ALLOCATION_INFO1 *pResourceAllocationInfo1) = 0; +#else + virtual D3D12_RESOURCE_ALLOCATION_INFO *STDMETHODCALLTYPE GetResourceAllocationInfo2( + D3D12_RESOURCE_ALLOCATION_INFO * RetVal, + UINT visibleMask, + UINT numResourceDescs, + _In_reads_(numResourceDescs) const D3D12_RESOURCE_DESC1 *pResourceDescs, + _Out_writes_opt_(numResourceDescs) D3D12_RESOURCE_ALLOCATION_INFO1 *pResourceAllocationInfo1) = 0; +#endif virtual HRESULT STDMETHODCALLTYPE CreateCommittedResource2( - /* [annotation] */ _In_ const D3D12_HEAP_PROPERTIES *pHeapProperties, D3D12_HEAP_FLAGS HeapFlags, - /* [annotation] */ _In_ const D3D12_RESOURCE_DESC1 *pDesc, D3D12_RESOURCE_STATES InitialResourceState, - /* [annotation] */ _In_opt_ const D3D12_CLEAR_VALUE *pOptimizedClearValue, - /* [annotation] */ _In_opt_ ID3D12ProtectedResourceSession *pProtectedSession, - /* [annotation][in] */ - _In_ REFIID riidResource, - /* [annotation][iid_is][out] */ + REFIID riidResource, _COM_Outptr_opt_ void **ppvResource) = 0; virtual HRESULT STDMETHODCALLTYPE CreatePlacedResource1( - /* [annotation] */ _In_ ID3D12Heap *pHeap, UINT64 HeapOffset, - /* [annotation] */ _In_ const D3D12_RESOURCE_DESC1 *pDesc, D3D12_RESOURCE_STATES InitialState, - /* [annotation] */ _In_opt_ const D3D12_CLEAR_VALUE *pOptimizedClearValue, - /* [annotation][in] */ - _In_ REFIID riid, - /* [annotation][iid_is][out] */ + REFIID riid, _COM_Outptr_opt_ void **ppvResource) = 0; virtual void STDMETHODCALLTYPE CreateSamplerFeedbackUnorderedAccessView( - /* [annotation] */ _In_opt_ ID3D12Resource *pTargetedResource, - /* [annotation] */ _In_opt_ ID3D12Resource *pFeedbackResource, - /* [annotation] */ _In_ D3D12_CPU_DESCRIPTOR_HANDLE DestDescriptor) = 0; virtual void STDMETHODCALLTYPE GetCopyableFootprints1( - /* [annotation] */ _In_ const D3D12_RESOURCE_DESC1 *pResourceDesc, - /* [annotation] */ _In_range_(0,D3D12_REQ_SUBRESOURCES) UINT FirstSubresource, - /* [annotation] */ _In_range_(0,D3D12_REQ_SUBRESOURCES-FirstSubresource) UINT NumSubresources, UINT64 BaseOffset, - /* [annotation] */ _Out_writes_opt_(NumSubresources) D3D12_PLACED_SUBRESOURCE_FOOTPRINT *pLayouts, - /* [annotation] */ _Out_writes_opt_(NumSubresources) UINT *pNumRows, - /* [annotation] */ _Out_writes_opt_(NumSubresources) UINT64 *pRowSizeInBytes, - /* [annotation] */ _Out_opt_ UINT64 *pTotalBytes) = 0; }; @@ -19496,9 +17619,7 @@ EXTERN_C const IID IID_ID3D12Device8; DECLSPEC_XFGVIRT(IUnknown, QueryInterface) HRESULT ( STDMETHODCALLTYPE *QueryInterface )( ID3D12Device8 * This, - /* [annotation][in] */ - _In_ REFIID riid, - /* [annotation][iid_is][out] */ + REFIID riid, _COM_Outptr_ void **ppvObject); DECLSPEC_XFGVIRT(IUnknown, AddRef) @@ -19512,35 +17633,26 @@ EXTERN_C const IID IID_ID3D12Device8; DECLSPEC_XFGVIRT(ID3D12Object, GetPrivateData) HRESULT ( STDMETHODCALLTYPE *GetPrivateData )( ID3D12Device8 * This, - /* [annotation] */ _In_ REFGUID guid, - /* [annotation] */ _Inout_ UINT *pDataSize, - /* [annotation] */ _Out_writes_bytes_opt_( *pDataSize ) void *pData); DECLSPEC_XFGVIRT(ID3D12Object, SetPrivateData) HRESULT ( STDMETHODCALLTYPE *SetPrivateData )( ID3D12Device8 * This, - /* [annotation] */ _In_ REFGUID guid, - /* [annotation] */ _In_ UINT DataSize, - /* [annotation] */ _In_reads_bytes_opt_( DataSize ) const void *pData); DECLSPEC_XFGVIRT(ID3D12Object, SetPrivateDataInterface) HRESULT ( STDMETHODCALLTYPE *SetPrivateDataInterface )( ID3D12Device8 * This, - /* [annotation] */ _In_ REFGUID guid, - /* [annotation] */ _In_opt_ const IUnknown *pData); DECLSPEC_XFGVIRT(ID3D12Object, SetName) HRESULT ( STDMETHODCALLTYPE *SetName )( ID3D12Device8 * This, - /* [annotation] */ _In_z_ LPCWSTR Name); DECLSPEC_XFGVIRT(ID3D12Device, GetNodeCount) @@ -19550,284 +17662,220 @@ EXTERN_C const IID IID_ID3D12Device8; DECLSPEC_XFGVIRT(ID3D12Device, CreateCommandQueue) HRESULT ( STDMETHODCALLTYPE *CreateCommandQueue )( ID3D12Device8 * This, - /* [annotation] */ _In_ const D3D12_COMMAND_QUEUE_DESC *pDesc, - /* [annotation][in] */ - _In_ REFIID riid, - /* [annotation][iid_is][out] */ + REFIID riid, _COM_Outptr_ void **ppCommandQueue); DECLSPEC_XFGVIRT(ID3D12Device, CreateCommandAllocator) HRESULT ( STDMETHODCALLTYPE *CreateCommandAllocator )( ID3D12Device8 * This, - /* [annotation] */ _In_ D3D12_COMMAND_LIST_TYPE type, - /* [annotation][in] */ - _In_ REFIID riid, - /* [annotation][iid_is][out] */ + REFIID riid, _COM_Outptr_ void **ppCommandAllocator); DECLSPEC_XFGVIRT(ID3D12Device, CreateGraphicsPipelineState) HRESULT ( STDMETHODCALLTYPE *CreateGraphicsPipelineState )( ID3D12Device8 * This, - /* [annotation] */ _In_ const D3D12_GRAPHICS_PIPELINE_STATE_DESC *pDesc, - /* [annotation][in] */ - _In_ REFIID riid, - /* [annotation][iid_is][out] */ + REFIID riid, _COM_Outptr_ void **ppPipelineState); DECLSPEC_XFGVIRT(ID3D12Device, CreateComputePipelineState) HRESULT ( STDMETHODCALLTYPE *CreateComputePipelineState )( ID3D12Device8 * This, - /* [annotation] */ _In_ const D3D12_COMPUTE_PIPELINE_STATE_DESC *pDesc, - /* [annotation][in] */ - _In_ REFIID riid, - /* [annotation][iid_is][out] */ + REFIID riid, _COM_Outptr_ void **ppPipelineState); DECLSPEC_XFGVIRT(ID3D12Device, CreateCommandList) HRESULT ( STDMETHODCALLTYPE *CreateCommandList )( ID3D12Device8 * This, - /* [annotation] */ _In_ UINT nodeMask, - /* [annotation] */ _In_ D3D12_COMMAND_LIST_TYPE type, - /* [annotation] */ _In_ ID3D12CommandAllocator *pCommandAllocator, - /* [annotation] */ _In_opt_ ID3D12PipelineState *pInitialState, - /* [annotation][in] */ - _In_ REFIID riid, - /* [annotation][iid_is][out] */ + REFIID riid, _COM_Outptr_ void **ppCommandList); DECLSPEC_XFGVIRT(ID3D12Device, CheckFeatureSupport) HRESULT ( STDMETHODCALLTYPE *CheckFeatureSupport )( ID3D12Device8 * This, D3D12_FEATURE Feature, - /* [annotation] */ _Inout_updates_bytes_(FeatureSupportDataSize) void *pFeatureSupportData, UINT FeatureSupportDataSize); DECLSPEC_XFGVIRT(ID3D12Device, CreateDescriptorHeap) HRESULT ( STDMETHODCALLTYPE *CreateDescriptorHeap )( ID3D12Device8 * This, - /* [annotation] */ _In_ const D3D12_DESCRIPTOR_HEAP_DESC *pDescriptorHeapDesc, - /* [annotation][in] */ - _In_ REFIID riid, - /* [annotation][iid_is][out] */ + REFIID riid, _COM_Outptr_ void **ppvHeap); DECLSPEC_XFGVIRT(ID3D12Device, GetDescriptorHandleIncrementSize) UINT ( STDMETHODCALLTYPE *GetDescriptorHandleIncrementSize )( ID3D12Device8 * This, - /* [annotation] */ _In_ D3D12_DESCRIPTOR_HEAP_TYPE DescriptorHeapType); DECLSPEC_XFGVIRT(ID3D12Device, CreateRootSignature) HRESULT ( STDMETHODCALLTYPE *CreateRootSignature )( ID3D12Device8 * This, - /* [annotation] */ _In_ UINT nodeMask, - /* [annotation] */ _In_reads_(blobLengthInBytes) const void *pBlobWithRootSignature, - /* [annotation] */ _In_ SIZE_T blobLengthInBytes, - /* [annotation][in] */ - _In_ REFIID riid, - /* [annotation][iid_is][out] */ + REFIID riid, _COM_Outptr_ void **ppvRootSignature); DECLSPEC_XFGVIRT(ID3D12Device, CreateConstantBufferView) void ( STDMETHODCALLTYPE *CreateConstantBufferView )( ID3D12Device8 * This, - /* [annotation] */ _In_opt_ const D3D12_CONSTANT_BUFFER_VIEW_DESC *pDesc, - /* [annotation] */ _In_ D3D12_CPU_DESCRIPTOR_HANDLE DestDescriptor); DECLSPEC_XFGVIRT(ID3D12Device, CreateShaderResourceView) void ( STDMETHODCALLTYPE *CreateShaderResourceView )( ID3D12Device8 * This, - /* [annotation] */ _In_opt_ ID3D12Resource *pResource, - /* [annotation] */ _In_opt_ const D3D12_SHADER_RESOURCE_VIEW_DESC *pDesc, - /* [annotation] */ _In_ D3D12_CPU_DESCRIPTOR_HANDLE DestDescriptor); DECLSPEC_XFGVIRT(ID3D12Device, CreateUnorderedAccessView) void ( STDMETHODCALLTYPE *CreateUnorderedAccessView )( ID3D12Device8 * This, - /* [annotation] */ _In_opt_ ID3D12Resource *pResource, - /* [annotation] */ _In_opt_ ID3D12Resource *pCounterResource, - /* [annotation] */ _In_opt_ const D3D12_UNORDERED_ACCESS_VIEW_DESC *pDesc, - /* [annotation] */ _In_ D3D12_CPU_DESCRIPTOR_HANDLE DestDescriptor); DECLSPEC_XFGVIRT(ID3D12Device, CreateRenderTargetView) void ( STDMETHODCALLTYPE *CreateRenderTargetView )( ID3D12Device8 * This, - /* [annotation] */ _In_opt_ ID3D12Resource *pResource, - /* [annotation] */ _In_opt_ const D3D12_RENDER_TARGET_VIEW_DESC *pDesc, - /* [annotation] */ _In_ D3D12_CPU_DESCRIPTOR_HANDLE DestDescriptor); DECLSPEC_XFGVIRT(ID3D12Device, CreateDepthStencilView) void ( STDMETHODCALLTYPE *CreateDepthStencilView )( ID3D12Device8 * This, - /* [annotation] */ _In_opt_ ID3D12Resource *pResource, - /* [annotation] */ _In_opt_ const D3D12_DEPTH_STENCIL_VIEW_DESC *pDesc, - /* [annotation] */ _In_ D3D12_CPU_DESCRIPTOR_HANDLE DestDescriptor); DECLSPEC_XFGVIRT(ID3D12Device, CreateSampler) void ( STDMETHODCALLTYPE *CreateSampler )( ID3D12Device8 * This, - /* [annotation] */ _In_ const D3D12_SAMPLER_DESC *pDesc, - /* [annotation] */ _In_ D3D12_CPU_DESCRIPTOR_HANDLE DestDescriptor); DECLSPEC_XFGVIRT(ID3D12Device, CopyDescriptors) void ( STDMETHODCALLTYPE *CopyDescriptors )( ID3D12Device8 * This, - /* [annotation] */ _In_ UINT NumDestDescriptorRanges, - /* [annotation] */ _In_reads_(NumDestDescriptorRanges) const D3D12_CPU_DESCRIPTOR_HANDLE *pDestDescriptorRangeStarts, - /* [annotation] */ _In_reads_opt_(NumDestDescriptorRanges) const UINT *pDestDescriptorRangeSizes, - /* [annotation] */ _In_ UINT NumSrcDescriptorRanges, - /* [annotation] */ _In_reads_(NumSrcDescriptorRanges) const D3D12_CPU_DESCRIPTOR_HANDLE *pSrcDescriptorRangeStarts, - /* [annotation] */ _In_reads_opt_(NumSrcDescriptorRanges) const UINT *pSrcDescriptorRangeSizes, - /* [annotation] */ _In_ D3D12_DESCRIPTOR_HEAP_TYPE DescriptorHeapsType); DECLSPEC_XFGVIRT(ID3D12Device, CopyDescriptorsSimple) void ( STDMETHODCALLTYPE *CopyDescriptorsSimple )( ID3D12Device8 * This, - /* [annotation] */ _In_ UINT NumDescriptors, - /* [annotation] */ _In_ D3D12_CPU_DESCRIPTOR_HANDLE DestDescriptorRangeStart, - /* [annotation] */ _In_ D3D12_CPU_DESCRIPTOR_HANDLE SrcDescriptorRangeStart, - /* [annotation] */ _In_ D3D12_DESCRIPTOR_HEAP_TYPE DescriptorHeapsType); DECLSPEC_XFGVIRT(ID3D12Device, GetResourceAllocationInfo) +#if !defined(_WIN32) D3D12_RESOURCE_ALLOCATION_INFO ( STDMETHODCALLTYPE *GetResourceAllocationInfo )( ID3D12Device8 * This, - /* [annotation] */ _In_ UINT visibleMask, - /* [annotation] */ _In_ UINT numResourceDescs, - /* [annotation] */ _In_reads_(numResourceDescs) const D3D12_RESOURCE_DESC *pResourceDescs); +#else + D3D12_RESOURCE_ALLOCATION_INFO *( STDMETHODCALLTYPE *GetResourceAllocationInfo )( + ID3D12Device8 * This, + D3D12_RESOURCE_ALLOCATION_INFO * RetVal, + _In_ UINT visibleMask, + _In_ UINT numResourceDescs, + _In_reads_(numResourceDescs) const D3D12_RESOURCE_DESC *pResourceDescs); + +#endif + DECLSPEC_XFGVIRT(ID3D12Device, GetCustomHeapProperties) +#if !defined(_WIN32) D3D12_HEAP_PROPERTIES ( STDMETHODCALLTYPE *GetCustomHeapProperties )( ID3D12Device8 * This, - /* [annotation] */ _In_ UINT nodeMask, D3D12_HEAP_TYPE heapType); +#else + D3D12_HEAP_PROPERTIES *( STDMETHODCALLTYPE *GetCustomHeapProperties )( + ID3D12Device8 * This, + D3D12_HEAP_PROPERTIES * RetVal, + _In_ UINT nodeMask, + D3D12_HEAP_TYPE heapType); + +#endif + DECLSPEC_XFGVIRT(ID3D12Device, CreateCommittedResource) HRESULT ( STDMETHODCALLTYPE *CreateCommittedResource )( ID3D12Device8 * This, - /* [annotation] */ _In_ const D3D12_HEAP_PROPERTIES *pHeapProperties, D3D12_HEAP_FLAGS HeapFlags, - /* [annotation] */ _In_ const D3D12_RESOURCE_DESC *pDesc, D3D12_RESOURCE_STATES InitialResourceState, - /* [annotation] */ _In_opt_ const D3D12_CLEAR_VALUE *pOptimizedClearValue, - /* [annotation][in] */ - _In_ REFIID riidResource, - /* [annotation][iid_is][out] */ + REFIID riidResource, _COM_Outptr_opt_ void **ppvResource); DECLSPEC_XFGVIRT(ID3D12Device, CreateHeap) HRESULT ( STDMETHODCALLTYPE *CreateHeap )( ID3D12Device8 * This, - /* [annotation] */ _In_ const D3D12_HEAP_DESC *pDesc, - /* [annotation][in] */ - _In_ REFIID riid, - /* [annotation][iid_is][out] */ + REFIID riid, _COM_Outptr_opt_ void **ppvHeap); DECLSPEC_XFGVIRT(ID3D12Device, CreatePlacedResource) HRESULT ( STDMETHODCALLTYPE *CreatePlacedResource )( ID3D12Device8 * This, - /* [annotation] */ _In_ ID3D12Heap *pHeap, UINT64 HeapOffset, - /* [annotation] */ _In_ const D3D12_RESOURCE_DESC *pDesc, D3D12_RESOURCE_STATES InitialState, - /* [annotation] */ _In_opt_ const D3D12_CLEAR_VALUE *pOptimizedClearValue, - /* [annotation][in] */ - _In_ REFIID riid, - /* [annotation][iid_is][out] */ + REFIID riid, _COM_Outptr_opt_ void **ppvResource); DECLSPEC_XFGVIRT(ID3D12Device, CreateReservedResource) HRESULT ( STDMETHODCALLTYPE *CreateReservedResource )( ID3D12Device8 * This, - /* [annotation] */ _In_ const D3D12_RESOURCE_DESC *pDesc, D3D12_RESOURCE_STATES InitialState, - /* [annotation] */ _In_opt_ const D3D12_CLEAR_VALUE *pOptimizedClearValue, - /* [annotation][in] */ - _In_ REFIID riid, - /* [annotation][iid_is][out] */ + REFIID riid, _COM_Outptr_opt_ void **ppvResource); DECLSPEC_XFGVIRT(ID3D12Device, CreateSharedHandle) HRESULT ( STDMETHODCALLTYPE *CreateSharedHandle )( ID3D12Device8 * This, - /* [annotation] */ _In_ ID3D12DeviceChild *pObject, - /* [annotation] */ _In_opt_ const SECURITY_ATTRIBUTES *pAttributes, DWORD Access, - /* [annotation] */ _In_opt_ LPCWSTR Name, - /* [annotation] */ _Out_ HANDLE *pHandle); DECLSPEC_XFGVIRT(ID3D12Device, OpenSharedHandle) HRESULT ( STDMETHODCALLTYPE *OpenSharedHandle )( ID3D12Device8 * This, - /* [annotation] */ _In_ HANDLE NTHandle, - /* [annotation][in] */ - _In_ REFIID riid, - /* [annotation][iid_is][out] */ + REFIID riid, _COM_Outptr_opt_ void **ppvObj); DECLSPEC_XFGVIRT(ID3D12Device, OpenSharedHandleByName) HRESULT ( STDMETHODCALLTYPE *OpenSharedHandleByName )( ID3D12Device8 * This, - /* [annotation] */ _In_ LPCWSTR Name, DWORD Access, /* [annotation][out] */ @@ -19837,14 +17885,12 @@ EXTERN_C const IID IID_ID3D12Device8; HRESULT ( STDMETHODCALLTYPE *MakeResident )( ID3D12Device8 * This, UINT NumObjects, - /* [annotation] */ _In_reads_(NumObjects) ID3D12Pageable *const *ppObjects); DECLSPEC_XFGVIRT(ID3D12Device, Evict) HRESULT ( STDMETHODCALLTYPE *Evict )( ID3D12Device8 * This, UINT NumObjects, - /* [annotation] */ _In_reads_(NumObjects) ID3D12Pageable *const *ppObjects); DECLSPEC_XFGVIRT(ID3D12Device, CreateFence) @@ -19852,9 +17898,7 @@ EXTERN_C const IID IID_ID3D12Device8; ID3D12Device8 * This, UINT64 InitialValue, D3D12_FENCE_FLAGS Flags, - /* [annotation][in] */ - _In_ REFIID riid, - /* [annotation][iid_is][out] */ + REFIID riid, _COM_Outptr_ void **ppFence); DECLSPEC_XFGVIRT(ID3D12Device, GetDeviceRemovedReason) @@ -19864,30 +17908,20 @@ EXTERN_C const IID IID_ID3D12Device8; DECLSPEC_XFGVIRT(ID3D12Device, GetCopyableFootprints) void ( STDMETHODCALLTYPE *GetCopyableFootprints )( ID3D12Device8 * This, - /* [annotation] */ _In_ const D3D12_RESOURCE_DESC *pResourceDesc, - /* [annotation] */ _In_range_(0,D3D12_REQ_SUBRESOURCES) UINT FirstSubresource, - /* [annotation] */ _In_range_(0,D3D12_REQ_SUBRESOURCES-FirstSubresource) UINT NumSubresources, UINT64 BaseOffset, - /* [annotation] */ _Out_writes_opt_(NumSubresources) D3D12_PLACED_SUBRESOURCE_FOOTPRINT *pLayouts, - /* [annotation] */ _Out_writes_opt_(NumSubresources) UINT *pNumRows, - /* [annotation] */ _Out_writes_opt_(NumSubresources) UINT64 *pRowSizeInBytes, - /* [annotation] */ _Out_opt_ UINT64 *pTotalBytes); DECLSPEC_XFGVIRT(ID3D12Device, CreateQueryHeap) HRESULT ( STDMETHODCALLTYPE *CreateQueryHeap )( ID3D12Device8 * This, - /* [annotation] */ _In_ const D3D12_QUERY_HEAP_DESC *pDesc, - /* [annotation][in] */ - _In_ REFIID riid, - /* [annotation][iid_is][out] */ + REFIID riid, _COM_Outptr_opt_ void **ppvHeap); DECLSPEC_XFGVIRT(ID3D12Device, SetStablePowerState) @@ -19898,54 +17932,46 @@ EXTERN_C const IID IID_ID3D12Device8; DECLSPEC_XFGVIRT(ID3D12Device, CreateCommandSignature) HRESULT ( STDMETHODCALLTYPE *CreateCommandSignature )( ID3D12Device8 * This, - /* [annotation] */ _In_ const D3D12_COMMAND_SIGNATURE_DESC *pDesc, - /* [annotation] */ _In_opt_ ID3D12RootSignature *pRootSignature, - /* [annotation][in] */ - _In_ REFIID riid, - /* [annotation][iid_is][out] */ + REFIID riid, _COM_Outptr_opt_ void **ppvCommandSignature); DECLSPEC_XFGVIRT(ID3D12Device, GetResourceTiling) void ( STDMETHODCALLTYPE *GetResourceTiling )( ID3D12Device8 * This, - /* [annotation] */ _In_ ID3D12Resource *pTiledResource, - /* [annotation] */ _Out_opt_ UINT *pNumTilesForEntireResource, - /* [annotation] */ _Out_opt_ D3D12_PACKED_MIP_INFO *pPackedMipDesc, - /* [annotation] */ _Out_opt_ D3D12_TILE_SHAPE *pStandardTileShapeForNonPackedMips, - /* [annotation] */ _Inout_opt_ UINT *pNumSubresourceTilings, - /* [annotation] */ _In_ UINT FirstSubresourceTilingToGet, - /* [annotation] */ _Out_writes_(*pNumSubresourceTilings) D3D12_SUBRESOURCE_TILING *pSubresourceTilingsForNonPackedMips); DECLSPEC_XFGVIRT(ID3D12Device, GetAdapterLuid) +#if !defined(_WIN32) LUID ( STDMETHODCALLTYPE *GetAdapterLuid )( ID3D12Device8 * This); +#else + LUID *( STDMETHODCALLTYPE *GetAdapterLuid )( + ID3D12Device8 * This, + LUID * RetVal); + +#endif + DECLSPEC_XFGVIRT(ID3D12Device1, CreatePipelineLibrary) HRESULT ( STDMETHODCALLTYPE *CreatePipelineLibrary )( ID3D12Device8 * This, - /* [annotation] */ _In_reads_(BlobLength) const void *pLibraryBlob, SIZE_T BlobLength, - /* [annotation][in] */ - _In_ REFIID riid, - /* [annotation][iid_is][out] */ + REFIID riid, _COM_Outptr_ void **ppPipelineLibrary); DECLSPEC_XFGVIRT(ID3D12Device1, SetEventOnMultipleFenceCompletion) HRESULT ( STDMETHODCALLTYPE *SetEventOnMultipleFenceCompletion )( ID3D12Device8 * This, - /* [annotation] */ _In_reads_(NumFences) ID3D12Fence *const *ppFences, - /* [annotation] */ _In_reads_(NumFences) const UINT64 *pFenceValues, UINT NumFences, D3D12_MULTIPLE_FENCE_WAIT_FLAGS Flags, @@ -19955,39 +17981,28 @@ EXTERN_C const IID IID_ID3D12Device8; HRESULT ( STDMETHODCALLTYPE *SetResidencyPriority )( ID3D12Device8 * This, UINT NumObjects, - /* [annotation] */ _In_reads_(NumObjects) ID3D12Pageable *const *ppObjects, - /* [annotation] */ _In_reads_(NumObjects) const D3D12_RESIDENCY_PRIORITY *pPriorities); DECLSPEC_XFGVIRT(ID3D12Device2, CreatePipelineState) HRESULT ( STDMETHODCALLTYPE *CreatePipelineState )( ID3D12Device8 * This, - /* [annotation][in] */ - _In_ const D3D12_PIPELINE_STATE_STREAM_DESC *pDesc, - /* [annotation][in] */ - _In_ REFIID riid, - /* [annotation][iid_is][out] */ + const D3D12_PIPELINE_STATE_STREAM_DESC *pDesc, + REFIID riid, _COM_Outptr_ void **ppPipelineState); DECLSPEC_XFGVIRT(ID3D12Device3, OpenExistingHeapFromAddress) HRESULT ( STDMETHODCALLTYPE *OpenExistingHeapFromAddress )( ID3D12Device8 * This, - /* [annotation] */ _In_ const void *pAddress, - /* [annotation][in] */ - _In_ REFIID riid, - /* [annotation][iid_is][out] */ + REFIID riid, _COM_Outptr_ void **ppvHeap); DECLSPEC_XFGVIRT(ID3D12Device3, OpenExistingHeapFromFileMapping) HRESULT ( STDMETHODCALLTYPE *OpenExistingHeapFromFileMapping )( ID3D12Device8 * This, - /* [annotation] */ _In_ HANDLE hFileMapping, - /* [annotation][in] */ - _In_ REFIID riid, - /* [annotation][iid_is][out] */ + REFIID riid, _COM_Outptr_ void **ppvHeap); DECLSPEC_XFGVIRT(ID3D12Device3, EnqueueMakeResident) @@ -19995,99 +18010,81 @@ EXTERN_C const IID IID_ID3D12Device8; ID3D12Device8 * This, D3D12_RESIDENCY_FLAGS Flags, UINT NumObjects, - /* [annotation] */ _In_reads_(NumObjects) ID3D12Pageable *const *ppObjects, - /* [annotation] */ _In_ ID3D12Fence *pFenceToSignal, UINT64 FenceValueToSignal); DECLSPEC_XFGVIRT(ID3D12Device4, CreateCommandList1) HRESULT ( STDMETHODCALLTYPE *CreateCommandList1 )( ID3D12Device8 * This, - /* [annotation] */ _In_ UINT nodeMask, - /* [annotation] */ _In_ D3D12_COMMAND_LIST_TYPE type, - /* [annotation] */ _In_ D3D12_COMMAND_LIST_FLAGS flags, - /* [annotation][in] */ - _In_ REFIID riid, - /* [annotation][iid_is][out] */ + REFIID riid, _COM_Outptr_ void **ppCommandList); DECLSPEC_XFGVIRT(ID3D12Device4, CreateProtectedResourceSession) HRESULT ( STDMETHODCALLTYPE *CreateProtectedResourceSession )( ID3D12Device8 * This, - /* [annotation] */ _In_ const D3D12_PROTECTED_RESOURCE_SESSION_DESC *pDesc, - /* [annotation] */ _In_ REFIID riid, - /* [annotation][iid_is][out] */ _COM_Outptr_ void **ppSession); DECLSPEC_XFGVIRT(ID3D12Device4, CreateCommittedResource1) HRESULT ( STDMETHODCALLTYPE *CreateCommittedResource1 )( ID3D12Device8 * This, - /* [annotation] */ _In_ const D3D12_HEAP_PROPERTIES *pHeapProperties, D3D12_HEAP_FLAGS HeapFlags, - /* [annotation] */ _In_ const D3D12_RESOURCE_DESC *pDesc, D3D12_RESOURCE_STATES InitialResourceState, - /* [annotation] */ _In_opt_ const D3D12_CLEAR_VALUE *pOptimizedClearValue, - /* [annotation] */ _In_opt_ ID3D12ProtectedResourceSession *pProtectedSession, - /* [annotation][in] */ - _In_ REFIID riidResource, - /* [annotation][iid_is][out] */ + REFIID riidResource, _COM_Outptr_opt_ void **ppvResource); DECLSPEC_XFGVIRT(ID3D12Device4, CreateHeap1) HRESULT ( STDMETHODCALLTYPE *CreateHeap1 )( ID3D12Device8 * This, - /* [annotation] */ _In_ const D3D12_HEAP_DESC *pDesc, - /* [annotation] */ _In_opt_ ID3D12ProtectedResourceSession *pProtectedSession, - /* [annotation][in] */ - _In_ REFIID riid, - /* [annotation][iid_is][out] */ + REFIID riid, _COM_Outptr_opt_ void **ppvHeap); DECLSPEC_XFGVIRT(ID3D12Device4, CreateReservedResource1) HRESULT ( STDMETHODCALLTYPE *CreateReservedResource1 )( ID3D12Device8 * This, - /* [annotation] */ _In_ const D3D12_RESOURCE_DESC *pDesc, D3D12_RESOURCE_STATES InitialState, - /* [annotation] */ _In_opt_ const D3D12_CLEAR_VALUE *pOptimizedClearValue, - /* [annotation] */ _In_opt_ ID3D12ProtectedResourceSession *pProtectedSession, - /* [annotation][in] */ - _In_ REFIID riid, - /* [annotation][iid_is][out] */ + REFIID riid, _COM_Outptr_opt_ void **ppvResource); DECLSPEC_XFGVIRT(ID3D12Device4, GetResourceAllocationInfo1) +#if !defined(_WIN32) D3D12_RESOURCE_ALLOCATION_INFO ( STDMETHODCALLTYPE *GetResourceAllocationInfo1 )( ID3D12Device8 * This, UINT visibleMask, UINT numResourceDescs, - /* [annotation] */ _In_reads_(numResourceDescs) const D3D12_RESOURCE_DESC *pResourceDescs, - /* [annotation] */ _Out_writes_opt_(numResourceDescs) D3D12_RESOURCE_ALLOCATION_INFO1 *pResourceAllocationInfo1); +#else + D3D12_RESOURCE_ALLOCATION_INFO *( STDMETHODCALLTYPE *GetResourceAllocationInfo1 )( + ID3D12Device8 * This, + D3D12_RESOURCE_ALLOCATION_INFO * RetVal, + UINT visibleMask, + UINT numResourceDescs, + _In_reads_(numResourceDescs) const D3D12_RESOURCE_DESC *pResourceDescs, + _Out_writes_opt_(numResourceDescs) D3D12_RESOURCE_ALLOCATION_INFO1 *pResourceAllocationInfo1); + +#endif + DECLSPEC_XFGVIRT(ID3D12Device5, CreateLifetimeTracker) HRESULT ( STDMETHODCALLTYPE *CreateLifetimeTracker )( ID3D12Device8 * This, - /* [annotation] */ _In_ ID3D12LifetimeOwner *pOwner, - /* [annotation][in] */ - _In_ REFIID riid, - /* [annotation][iid_is][out] */ + REFIID riid, _COM_Outptr_ void **ppvTracker); DECLSPEC_XFGVIRT(ID3D12Device5, RemoveDevice) @@ -20097,65 +18094,45 @@ EXTERN_C const IID IID_ID3D12Device8; DECLSPEC_XFGVIRT(ID3D12Device5, EnumerateMetaCommands) HRESULT ( STDMETHODCALLTYPE *EnumerateMetaCommands )( ID3D12Device8 * This, - /* [annotation] */ _Inout_ UINT *pNumMetaCommands, - /* [annotation] */ _Out_writes_opt_(*pNumMetaCommands) D3D12_META_COMMAND_DESC *pDescs); DECLSPEC_XFGVIRT(ID3D12Device5, EnumerateMetaCommandParameters) HRESULT ( STDMETHODCALLTYPE *EnumerateMetaCommandParameters )( ID3D12Device8 * This, - /* [annotation] */ _In_ REFGUID CommandId, - /* [annotation] */ _In_ D3D12_META_COMMAND_PARAMETER_STAGE Stage, - /* [annotation] */ _Out_opt_ UINT *pTotalStructureSizeInBytes, - /* [annotation] */ _Inout_ UINT *pParameterCount, - /* [annotation] */ _Out_writes_opt_(*pParameterCount) D3D12_META_COMMAND_PARAMETER_DESC *pParameterDescs); DECLSPEC_XFGVIRT(ID3D12Device5, CreateMetaCommand) HRESULT ( STDMETHODCALLTYPE *CreateMetaCommand )( ID3D12Device8 * This, - /* [annotation] */ _In_ REFGUID CommandId, - /* [annotation] */ _In_ UINT NodeMask, - /* [annotation] */ _In_reads_bytes_opt_(CreationParametersDataSizeInBytes) const void *pCreationParametersData, - /* [annotation] */ _In_ SIZE_T CreationParametersDataSizeInBytes, - /* [annotation][in] */ - _In_ REFIID riid, - /* [annotation][iid_is][out] */ + REFIID riid, _COM_Outptr_ void **ppMetaCommand); DECLSPEC_XFGVIRT(ID3D12Device5, CreateStateObject) HRESULT ( STDMETHODCALLTYPE *CreateStateObject )( ID3D12Device8 * This, - /* [annotation][in] */ - _In_ const D3D12_STATE_OBJECT_DESC *pDesc, - /* [annotation][in] */ - _In_ REFIID riid, - /* [annotation][iid_is][out] */ + const D3D12_STATE_OBJECT_DESC *pDesc, + REFIID riid, _COM_Outptr_ void **ppStateObject); DECLSPEC_XFGVIRT(ID3D12Device5, GetRaytracingAccelerationStructurePrebuildInfo) void ( STDMETHODCALLTYPE *GetRaytracingAccelerationStructurePrebuildInfo )( ID3D12Device8 * This, - /* [annotation] */ _In_ const D3D12_BUILD_RAYTRACING_ACCELERATION_STRUCTURE_INPUTS *pDesc, - /* [annotation] */ _Out_ D3D12_RAYTRACING_ACCELERATION_STRUCTURE_PREBUILD_INFO *pInfo); DECLSPEC_XFGVIRT(ID3D12Device5, CheckDriverMatchingIdentifier) D3D12_DRIVER_MATCHING_IDENTIFIER_STATUS ( STDMETHODCALLTYPE *CheckDriverMatchingIdentifier )( ID3D12Device8 * This, - /* [annotation] */ _In_ D3D12_SERIALIZED_DATA_TYPE SerializedDataType, - /* [annotation] */ _In_ const D3D12_SERIALIZED_DATA_DRIVER_MATCHING_IDENTIFIER *pIdentifierToCheck); DECLSPEC_XFGVIRT(ID3D12Device6, SetBackgroundProcessingMode) @@ -20163,104 +18140,84 @@ EXTERN_C const IID IID_ID3D12Device8; ID3D12Device8 * This, D3D12_BACKGROUND_PROCESSING_MODE Mode, D3D12_MEASUREMENTS_ACTION MeasurementsAction, - /* [annotation] */ _In_opt_ HANDLE hEventToSignalUponCompletion, - /* [annotation] */ _Out_opt_ BOOL *pbFurtherMeasurementsDesired); DECLSPEC_XFGVIRT(ID3D12Device7, AddToStateObject) HRESULT ( STDMETHODCALLTYPE *AddToStateObject )( ID3D12Device8 * This, - /* [annotation][in] */ - _In_ const D3D12_STATE_OBJECT_DESC *pAddition, - /* [annotation][in] */ - _In_ ID3D12StateObject *pStateObjectToGrowFrom, - /* [annotation][in] */ - _In_ REFIID riid, - /* [annotation][iid_is][out] */ + const D3D12_STATE_OBJECT_DESC *pAddition, + ID3D12StateObject *pStateObjectToGrowFrom, + REFIID riid, _COM_Outptr_ void **ppNewStateObject); DECLSPEC_XFGVIRT(ID3D12Device7, CreateProtectedResourceSession1) HRESULT ( STDMETHODCALLTYPE *CreateProtectedResourceSession1 )( ID3D12Device8 * This, - /* [annotation] */ _In_ const D3D12_PROTECTED_RESOURCE_SESSION_DESC1 *pDesc, - /* [annotation] */ _In_ REFIID riid, - /* [annotation][iid_is][out] */ _COM_Outptr_ void **ppSession); DECLSPEC_XFGVIRT(ID3D12Device8, GetResourceAllocationInfo2) +#if !defined(_WIN32) D3D12_RESOURCE_ALLOCATION_INFO ( STDMETHODCALLTYPE *GetResourceAllocationInfo2 )( ID3D12Device8 * This, UINT visibleMask, UINT numResourceDescs, - /* [annotation] */ _In_reads_(numResourceDescs) const D3D12_RESOURCE_DESC1 *pResourceDescs, - /* [annotation] */ _Out_writes_opt_(numResourceDescs) D3D12_RESOURCE_ALLOCATION_INFO1 *pResourceAllocationInfo1); +#else + D3D12_RESOURCE_ALLOCATION_INFO *( STDMETHODCALLTYPE *GetResourceAllocationInfo2 )( + ID3D12Device8 * This, + D3D12_RESOURCE_ALLOCATION_INFO * RetVal, + UINT visibleMask, + UINT numResourceDescs, + _In_reads_(numResourceDescs) const D3D12_RESOURCE_DESC1 *pResourceDescs, + _Out_writes_opt_(numResourceDescs) D3D12_RESOURCE_ALLOCATION_INFO1 *pResourceAllocationInfo1); + +#endif + DECLSPEC_XFGVIRT(ID3D12Device8, CreateCommittedResource2) HRESULT ( STDMETHODCALLTYPE *CreateCommittedResource2 )( ID3D12Device8 * This, - /* [annotation] */ _In_ const D3D12_HEAP_PROPERTIES *pHeapProperties, D3D12_HEAP_FLAGS HeapFlags, - /* [annotation] */ _In_ const D3D12_RESOURCE_DESC1 *pDesc, D3D12_RESOURCE_STATES InitialResourceState, - /* [annotation] */ _In_opt_ const D3D12_CLEAR_VALUE *pOptimizedClearValue, - /* [annotation] */ _In_opt_ ID3D12ProtectedResourceSession *pProtectedSession, - /* [annotation][in] */ - _In_ REFIID riidResource, - /* [annotation][iid_is][out] */ + REFIID riidResource, _COM_Outptr_opt_ void **ppvResource); DECLSPEC_XFGVIRT(ID3D12Device8, CreatePlacedResource1) HRESULT ( STDMETHODCALLTYPE *CreatePlacedResource1 )( ID3D12Device8 * This, - /* [annotation] */ _In_ ID3D12Heap *pHeap, UINT64 HeapOffset, - /* [annotation] */ _In_ const D3D12_RESOURCE_DESC1 *pDesc, D3D12_RESOURCE_STATES InitialState, - /* [annotation] */ _In_opt_ const D3D12_CLEAR_VALUE *pOptimizedClearValue, - /* [annotation][in] */ - _In_ REFIID riid, - /* [annotation][iid_is][out] */ + REFIID riid, _COM_Outptr_opt_ void **ppvResource); DECLSPEC_XFGVIRT(ID3D12Device8, CreateSamplerFeedbackUnorderedAccessView) void ( STDMETHODCALLTYPE *CreateSamplerFeedbackUnorderedAccessView )( ID3D12Device8 * This, - /* [annotation] */ _In_opt_ ID3D12Resource *pTargetedResource, - /* [annotation] */ _In_opt_ ID3D12Resource *pFeedbackResource, - /* [annotation] */ _In_ D3D12_CPU_DESCRIPTOR_HANDLE DestDescriptor); DECLSPEC_XFGVIRT(ID3D12Device8, GetCopyableFootprints1) void ( STDMETHODCALLTYPE *GetCopyableFootprints1 )( ID3D12Device8 * This, - /* [annotation] */ _In_ const D3D12_RESOURCE_DESC1 *pResourceDesc, - /* [annotation] */ _In_range_(0,D3D12_REQ_SUBRESOURCES) UINT FirstSubresource, - /* [annotation] */ _In_range_(0,D3D12_REQ_SUBRESOURCES-FirstSubresource) UINT NumSubresources, UINT64 BaseOffset, - /* [annotation] */ _Out_writes_opt_(NumSubresources) D3D12_PLACED_SUBRESOURCE_FOOTPRINT *pLayouts, - /* [annotation] */ _Out_writes_opt_(NumSubresources) UINT *pNumRows, - /* [annotation] */ _Out_writes_opt_(NumSubresources) UINT64 *pRowSizeInBytes, - /* [annotation] */ _Out_opt_ UINT64 *pTotalBytes); END_INTERFACE @@ -20352,12 +18309,22 @@ EXTERN_C const IID IID_ID3D12Device8; #define ID3D12Device8_CopyDescriptorsSimple(This,NumDescriptors,DestDescriptorRangeStart,SrcDescriptorRangeStart,DescriptorHeapsType) \ ( (This)->lpVtbl -> CopyDescriptorsSimple(This,NumDescriptors,DestDescriptorRangeStart,SrcDescriptorRangeStart,DescriptorHeapsType) ) +#if !defined(_WIN32) #define ID3D12Device8_GetResourceAllocationInfo(This,visibleMask,numResourceDescs,pResourceDescs) \ ( (This)->lpVtbl -> GetResourceAllocationInfo(This,visibleMask,numResourceDescs,pResourceDescs) ) +#else +#define ID3D12Device8_GetResourceAllocationInfo(This,RetVal,visibleMask,numResourceDescs,pResourceDescs) \ + ( (This)->lpVtbl -> GetResourceAllocationInfo(This,RetVal,visibleMask,numResourceDescs,pResourceDescs) ) +#endif +#if !defined(_WIN32) #define ID3D12Device8_GetCustomHeapProperties(This,nodeMask,heapType) \ ( (This)->lpVtbl -> GetCustomHeapProperties(This,nodeMask,heapType) ) +#else +#define ID3D12Device8_GetCustomHeapProperties(This,RetVal,nodeMask,heapType) \ + ( (This)->lpVtbl -> GetCustomHeapProperties(This,RetVal,nodeMask,heapType) ) +#endif #define ID3D12Device8_CreateCommittedResource(This,pHeapProperties,HeapFlags,pDesc,InitialResourceState,pOptimizedClearValue,riidResource,ppvResource) \ ( (This)->lpVtbl -> CreateCommittedResource(This,pHeapProperties,HeapFlags,pDesc,InitialResourceState,pOptimizedClearValue,riidResource,ppvResource) ) @@ -20406,9 +18373,14 @@ EXTERN_C const IID IID_ID3D12Device8; #define ID3D12Device8_GetResourceTiling(This,pTiledResource,pNumTilesForEntireResource,pPackedMipDesc,pStandardTileShapeForNonPackedMips,pNumSubresourceTilings,FirstSubresourceTilingToGet,pSubresourceTilingsForNonPackedMips) \ ( (This)->lpVtbl -> GetResourceTiling(This,pTiledResource,pNumTilesForEntireResource,pPackedMipDesc,pStandardTileShapeForNonPackedMips,pNumSubresourceTilings,FirstSubresourceTilingToGet,pSubresourceTilingsForNonPackedMips) ) +#if !defined(_WIN32) #define ID3D12Device8_GetAdapterLuid(This) \ ( (This)->lpVtbl -> GetAdapterLuid(This) ) +#else +#define ID3D12Device8_GetAdapterLuid(This,RetVal) \ + ( (This)->lpVtbl -> GetAdapterLuid(This,RetVal) ) +#endif #define ID3D12Device8_CreatePipelineLibrary(This,pLibraryBlob,BlobLength,riid,ppPipelineLibrary) \ @@ -20449,9 +18421,14 @@ EXTERN_C const IID IID_ID3D12Device8; #define ID3D12Device8_CreateReservedResource1(This,pDesc,InitialState,pOptimizedClearValue,pProtectedSession,riid,ppvResource) \ ( (This)->lpVtbl -> CreateReservedResource1(This,pDesc,InitialState,pOptimizedClearValue,pProtectedSession,riid,ppvResource) ) +#if !defined(_WIN32) #define ID3D12Device8_GetResourceAllocationInfo1(This,visibleMask,numResourceDescs,pResourceDescs,pResourceAllocationInfo1) \ ( (This)->lpVtbl -> GetResourceAllocationInfo1(This,visibleMask,numResourceDescs,pResourceDescs,pResourceAllocationInfo1) ) +#else +#define ID3D12Device8_GetResourceAllocationInfo1(This,RetVal,visibleMask,numResourceDescs,pResourceDescs,pResourceAllocationInfo1) \ + ( (This)->lpVtbl -> GetResourceAllocationInfo1(This,RetVal,visibleMask,numResourceDescs,pResourceDescs,pResourceAllocationInfo1) ) +#endif #define ID3D12Device8_CreateLifetimeTracker(This,pOwner,riid,ppvTracker) \ @@ -20489,9 +18466,14 @@ EXTERN_C const IID IID_ID3D12Device8; #define ID3D12Device8_CreateProtectedResourceSession1(This,pDesc,riid,ppSession) \ ( (This)->lpVtbl -> CreateProtectedResourceSession1(This,pDesc,riid,ppSession) ) +#if !defined(_WIN32) #define ID3D12Device8_GetResourceAllocationInfo2(This,visibleMask,numResourceDescs,pResourceDescs,pResourceAllocationInfo1) \ ( (This)->lpVtbl -> GetResourceAllocationInfo2(This,visibleMask,numResourceDescs,pResourceDescs,pResourceAllocationInfo1) ) +#else +#define ID3D12Device8_GetResourceAllocationInfo2(This,RetVal,visibleMask,numResourceDescs,pResourceDescs,pResourceAllocationInfo1) \ + ( (This)->lpVtbl -> GetResourceAllocationInfo2(This,RetVal,visibleMask,numResourceDescs,pResourceDescs,pResourceAllocationInfo1) ) +#endif #define ID3D12Device8_CreateCommittedResource2(This,pHeapProperties,HeapFlags,pDesc,InitialResourceState,pOptimizedClearValue,pProtectedSession,riidResource,ppvResource) \ ( (This)->lpVtbl -> CreateCommittedResource2(This,pHeapProperties,HeapFlags,pDesc,InitialResourceState,pOptimizedClearValue,pProtectedSession,riidResource,ppvResource) ) @@ -20512,23 +18494,6 @@ EXTERN_C const IID IID_ID3D12Device8; -D3D12_RESOURCE_ALLOCATION_INFO STDMETHODCALLTYPE ID3D12Device8_GetResourceAllocationInfo2_Proxy( - ID3D12Device8 * This, - UINT visibleMask, - UINT numResourceDescs, - /* [annotation] */ - _In_reads_(numResourceDescs) const D3D12_RESOURCE_DESC1 *pResourceDescs, - /* [annotation] */ - _Out_writes_opt_(numResourceDescs) D3D12_RESOURCE_ALLOCATION_INFO1 *pResourceAllocationInfo1); - - -void __RPC_STUB ID3D12Device8_GetResourceAllocationInfo2_Stub( - IRpcStubBuffer *This, - IRpcChannelBuffer *_pRpcChannelBuffer, - PRPC_MESSAGE _pRpcMessage, - DWORD *_pdwStubPhase); - - #endif /* __ID3D12Device8_INTERFACE_DEFINED__ */ @@ -20549,9 +18514,7 @@ EXTERN_C const IID IID_ID3D12Resource1; { public: virtual HRESULT STDMETHODCALLTYPE GetProtectedResourceSession( - /* [annotation][in] */ - _In_ REFIID riid, - /* [annotation][iid_is][out] */ + REFIID riid, _COM_Outptr_opt_ void **ppProtectedSession) = 0; }; @@ -20566,9 +18529,7 @@ EXTERN_C const IID IID_ID3D12Resource1; DECLSPEC_XFGVIRT(IUnknown, QueryInterface) HRESULT ( STDMETHODCALLTYPE *QueryInterface )( ID3D12Resource1 * This, - /* [annotation][in] */ - _In_ REFIID riid, - /* [annotation][iid_is][out] */ + REFIID riid, _COM_Outptr_ void **ppvObject); DECLSPEC_XFGVIRT(IUnknown, AddRef) @@ -20582,65 +18543,59 @@ EXTERN_C const IID IID_ID3D12Resource1; DECLSPEC_XFGVIRT(ID3D12Object, GetPrivateData) HRESULT ( STDMETHODCALLTYPE *GetPrivateData )( ID3D12Resource1 * This, - /* [annotation] */ _In_ REFGUID guid, - /* [annotation] */ _Inout_ UINT *pDataSize, - /* [annotation] */ _Out_writes_bytes_opt_( *pDataSize ) void *pData); DECLSPEC_XFGVIRT(ID3D12Object, SetPrivateData) HRESULT ( STDMETHODCALLTYPE *SetPrivateData )( ID3D12Resource1 * This, - /* [annotation] */ _In_ REFGUID guid, - /* [annotation] */ _In_ UINT DataSize, - /* [annotation] */ _In_reads_bytes_opt_( DataSize ) const void *pData); DECLSPEC_XFGVIRT(ID3D12Object, SetPrivateDataInterface) HRESULT ( STDMETHODCALLTYPE *SetPrivateDataInterface )( ID3D12Resource1 * This, - /* [annotation] */ _In_ REFGUID guid, - /* [annotation] */ _In_opt_ const IUnknown *pData); DECLSPEC_XFGVIRT(ID3D12Object, SetName) HRESULT ( STDMETHODCALLTYPE *SetName )( ID3D12Resource1 * This, - /* [annotation] */ _In_z_ LPCWSTR Name); DECLSPEC_XFGVIRT(ID3D12DeviceChild, GetDevice) HRESULT ( STDMETHODCALLTYPE *GetDevice )( ID3D12Resource1 * This, - /* [annotation][in] */ - _In_ REFIID riid, - /* [annotation][iid_is][out] */ + REFIID riid, _COM_Outptr_opt_ void **ppvDevice); DECLSPEC_XFGVIRT(ID3D12Resource, Map) HRESULT ( STDMETHODCALLTYPE *Map )( ID3D12Resource1 * This, UINT Subresource, - /* [annotation] */ _In_opt_ const D3D12_RANGE *pReadRange, - /* [annotation] */ _Outptr_opt_result_bytebuffer_(_Inexpressible_("Dependent on resource")) void **ppData); DECLSPEC_XFGVIRT(ID3D12Resource, Unmap) void ( STDMETHODCALLTYPE *Unmap )( ID3D12Resource1 * This, UINT Subresource, - /* [annotation] */ _In_opt_ const D3D12_RANGE *pWrittenRange); DECLSPEC_XFGVIRT(ID3D12Resource, GetDesc) +#if !defined(_WIN32) D3D12_RESOURCE_DESC ( STDMETHODCALLTYPE *GetDesc )( ID3D12Resource1 * This); +#else + D3D12_RESOURCE_DESC *( STDMETHODCALLTYPE *GetDesc )( + ID3D12Resource1 * This, + D3D12_RESOURCE_DESC * RetVal); + +#endif + DECLSPEC_XFGVIRT(ID3D12Resource, GetGPUVirtualAddress) D3D12_GPU_VIRTUAL_ADDRESS ( STDMETHODCALLTYPE *GetGPUVirtualAddress )( ID3D12Resource1 * This); @@ -20649,9 +18604,7 @@ EXTERN_C const IID IID_ID3D12Resource1; HRESULT ( STDMETHODCALLTYPE *WriteToSubresource )( ID3D12Resource1 * This, UINT DstSubresource, - /* [annotation] */ _In_opt_ const D3D12_BOX *pDstBox, - /* [annotation] */ _In_ const void *pSrcData, UINT SrcRowPitch, UINT SrcDepthPitch); @@ -20659,28 +18612,22 @@ EXTERN_C const IID IID_ID3D12Resource1; DECLSPEC_XFGVIRT(ID3D12Resource, ReadFromSubresource) HRESULT ( STDMETHODCALLTYPE *ReadFromSubresource )( ID3D12Resource1 * This, - /* [annotation] */ _Out_ void *pDstData, UINT DstRowPitch, UINT DstDepthPitch, UINT SrcSubresource, - /* [annotation] */ _In_opt_ const D3D12_BOX *pSrcBox); DECLSPEC_XFGVIRT(ID3D12Resource, GetHeapProperties) HRESULT ( STDMETHODCALLTYPE *GetHeapProperties )( ID3D12Resource1 * This, - /* [annotation] */ _Out_opt_ D3D12_HEAP_PROPERTIES *pHeapProperties, - /* [annotation] */ _Out_opt_ D3D12_HEAP_FLAGS *pHeapFlags); DECLSPEC_XFGVIRT(ID3D12Resource1, GetProtectedResourceSession) HRESULT ( STDMETHODCALLTYPE *GetProtectedResourceSession )( ID3D12Resource1 * This, - /* [annotation][in] */ - _In_ REFIID riid, - /* [annotation][iid_is][out] */ + REFIID riid, _COM_Outptr_opt_ void **ppProtectedSession); END_INTERFACE @@ -20729,9 +18676,14 @@ EXTERN_C const IID IID_ID3D12Resource1; #define ID3D12Resource1_Unmap(This,Subresource,pWrittenRange) \ ( (This)->lpVtbl -> Unmap(This,Subresource,pWrittenRange) ) +#if !defined(_WIN32) #define ID3D12Resource1_GetDesc(This) \ ( (This)->lpVtbl -> GetDesc(This) ) +#else +#define ID3D12Resource1_GetDesc(This,RetVal) \ + ( (This)->lpVtbl -> GetDesc(This,RetVal) ) +#endif #define ID3D12Resource1_GetGPUVirtualAddress(This) \ ( (This)->lpVtbl -> GetGPUVirtualAddress(This) ) @@ -20775,7 +18727,12 @@ EXTERN_C const IID IID_ID3D12Resource2; ID3D12Resource2 : public ID3D12Resource1 { public: +#if defined(_MSC_VER) || !defined(_WIN32) virtual D3D12_RESOURCE_DESC1 STDMETHODCALLTYPE GetDesc1( void) = 0; +#else + virtual D3D12_RESOURCE_DESC1 *STDMETHODCALLTYPE GetDesc1( + D3D12_RESOURCE_DESC1 * RetVal) = 0; +#endif }; @@ -20789,9 +18746,7 @@ EXTERN_C const IID IID_ID3D12Resource2; DECLSPEC_XFGVIRT(IUnknown, QueryInterface) HRESULT ( STDMETHODCALLTYPE *QueryInterface )( ID3D12Resource2 * This, - /* [annotation][in] */ - _In_ REFIID riid, - /* [annotation][iid_is][out] */ + REFIID riid, _COM_Outptr_ void **ppvObject); DECLSPEC_XFGVIRT(IUnknown, AddRef) @@ -20805,65 +18760,59 @@ EXTERN_C const IID IID_ID3D12Resource2; DECLSPEC_XFGVIRT(ID3D12Object, GetPrivateData) HRESULT ( STDMETHODCALLTYPE *GetPrivateData )( ID3D12Resource2 * This, - /* [annotation] */ _In_ REFGUID guid, - /* [annotation] */ _Inout_ UINT *pDataSize, - /* [annotation] */ _Out_writes_bytes_opt_( *pDataSize ) void *pData); DECLSPEC_XFGVIRT(ID3D12Object, SetPrivateData) HRESULT ( STDMETHODCALLTYPE *SetPrivateData )( ID3D12Resource2 * This, - /* [annotation] */ _In_ REFGUID guid, - /* [annotation] */ _In_ UINT DataSize, - /* [annotation] */ _In_reads_bytes_opt_( DataSize ) const void *pData); DECLSPEC_XFGVIRT(ID3D12Object, SetPrivateDataInterface) HRESULT ( STDMETHODCALLTYPE *SetPrivateDataInterface )( ID3D12Resource2 * This, - /* [annotation] */ _In_ REFGUID guid, - /* [annotation] */ _In_opt_ const IUnknown *pData); DECLSPEC_XFGVIRT(ID3D12Object, SetName) HRESULT ( STDMETHODCALLTYPE *SetName )( ID3D12Resource2 * This, - /* [annotation] */ _In_z_ LPCWSTR Name); DECLSPEC_XFGVIRT(ID3D12DeviceChild, GetDevice) HRESULT ( STDMETHODCALLTYPE *GetDevice )( ID3D12Resource2 * This, - /* [annotation][in] */ - _In_ REFIID riid, - /* [annotation][iid_is][out] */ + REFIID riid, _COM_Outptr_opt_ void **ppvDevice); DECLSPEC_XFGVIRT(ID3D12Resource, Map) HRESULT ( STDMETHODCALLTYPE *Map )( ID3D12Resource2 * This, UINT Subresource, - /* [annotation] */ _In_opt_ const D3D12_RANGE *pReadRange, - /* [annotation] */ _Outptr_opt_result_bytebuffer_(_Inexpressible_("Dependent on resource")) void **ppData); DECLSPEC_XFGVIRT(ID3D12Resource, Unmap) void ( STDMETHODCALLTYPE *Unmap )( ID3D12Resource2 * This, UINT Subresource, - /* [annotation] */ _In_opt_ const D3D12_RANGE *pWrittenRange); DECLSPEC_XFGVIRT(ID3D12Resource, GetDesc) +#if !defined(_WIN32) D3D12_RESOURCE_DESC ( STDMETHODCALLTYPE *GetDesc )( ID3D12Resource2 * This); +#else + D3D12_RESOURCE_DESC *( STDMETHODCALLTYPE *GetDesc )( + ID3D12Resource2 * This, + D3D12_RESOURCE_DESC * RetVal); + +#endif + DECLSPEC_XFGVIRT(ID3D12Resource, GetGPUVirtualAddress) D3D12_GPU_VIRTUAL_ADDRESS ( STDMETHODCALLTYPE *GetGPUVirtualAddress )( ID3D12Resource2 * This); @@ -20872,9 +18821,7 @@ EXTERN_C const IID IID_ID3D12Resource2; HRESULT ( STDMETHODCALLTYPE *WriteToSubresource )( ID3D12Resource2 * This, UINT DstSubresource, - /* [annotation] */ _In_opt_ const D3D12_BOX *pDstBox, - /* [annotation] */ _In_ const void *pSrcData, UINT SrcRowPitch, UINT SrcDepthPitch); @@ -20882,34 +18829,36 @@ EXTERN_C const IID IID_ID3D12Resource2; DECLSPEC_XFGVIRT(ID3D12Resource, ReadFromSubresource) HRESULT ( STDMETHODCALLTYPE *ReadFromSubresource )( ID3D12Resource2 * This, - /* [annotation] */ _Out_ void *pDstData, UINT DstRowPitch, UINT DstDepthPitch, UINT SrcSubresource, - /* [annotation] */ _In_opt_ const D3D12_BOX *pSrcBox); DECLSPEC_XFGVIRT(ID3D12Resource, GetHeapProperties) HRESULT ( STDMETHODCALLTYPE *GetHeapProperties )( ID3D12Resource2 * This, - /* [annotation] */ _Out_opt_ D3D12_HEAP_PROPERTIES *pHeapProperties, - /* [annotation] */ _Out_opt_ D3D12_HEAP_FLAGS *pHeapFlags); DECLSPEC_XFGVIRT(ID3D12Resource1, GetProtectedResourceSession) HRESULT ( STDMETHODCALLTYPE *GetProtectedResourceSession )( ID3D12Resource2 * This, - /* [annotation][in] */ - _In_ REFIID riid, - /* [annotation][iid_is][out] */ + REFIID riid, _COM_Outptr_opt_ void **ppProtectedSession); DECLSPEC_XFGVIRT(ID3D12Resource2, GetDesc1) +#if !defined(_WIN32) D3D12_RESOURCE_DESC1 ( STDMETHODCALLTYPE *GetDesc1 )( ID3D12Resource2 * This); +#else + D3D12_RESOURCE_DESC1 *( STDMETHODCALLTYPE *GetDesc1 )( + ID3D12Resource2 * This, + D3D12_RESOURCE_DESC1 * RetVal); + +#endif + END_INTERFACE } ID3D12Resource2Vtbl; @@ -20956,9 +18905,14 @@ EXTERN_C const IID IID_ID3D12Resource2; #define ID3D12Resource2_Unmap(This,Subresource,pWrittenRange) \ ( (This)->lpVtbl -> Unmap(This,Subresource,pWrittenRange) ) +#if !defined(_WIN32) #define ID3D12Resource2_GetDesc(This) \ ( (This)->lpVtbl -> GetDesc(This) ) +#else +#define ID3D12Resource2_GetDesc(This,RetVal) \ + ( (This)->lpVtbl -> GetDesc(This,RetVal) ) +#endif #define ID3D12Resource2_GetGPUVirtualAddress(This) \ ( (This)->lpVtbl -> GetGPUVirtualAddress(This) ) @@ -20976,9 +18930,14 @@ EXTERN_C const IID IID_ID3D12Resource2; #define ID3D12Resource2_GetProtectedResourceSession(This,riid,ppProtectedSession) \ ( (This)->lpVtbl -> GetProtectedResourceSession(This,riid,ppProtectedSession) ) +#if !defined(_WIN32) #define ID3D12Resource2_GetDesc1(This) \ ( (This)->lpVtbl -> GetDesc1(This) ) +#else +#define ID3D12Resource2_GetDesc1(This,RetVal) \ + ( (This)->lpVtbl -> GetDesc1(This,RetVal) ) +#endif #endif /* COBJMACROS */ @@ -20987,17 +18946,6 @@ EXTERN_C const IID IID_ID3D12Resource2; -D3D12_RESOURCE_DESC1 STDMETHODCALLTYPE ID3D12Resource2_GetDesc1_Proxy( - ID3D12Resource2 * This); - - -void __RPC_STUB ID3D12Resource2_GetDesc1_Stub( - IRpcStubBuffer *This, - IRpcChannelBuffer *_pRpcChannelBuffer, - PRPC_MESSAGE _pRpcMessage, - DWORD *_pdwStubPhase); - - #endif /* __ID3D12Resource2_INTERFACE_DEFINED__ */ @@ -21018,9 +18966,7 @@ EXTERN_C const IID IID_ID3D12Heap1; { public: virtual HRESULT STDMETHODCALLTYPE GetProtectedResourceSession( - /* [annotation][in] */ - _In_ REFIID riid, - /* [annotation][iid_is][out] */ + REFIID riid, _COM_Outptr_opt_ void **ppProtectedSession) = 0; }; @@ -21035,9 +18981,7 @@ EXTERN_C const IID IID_ID3D12Heap1; DECLSPEC_XFGVIRT(IUnknown, QueryInterface) HRESULT ( STDMETHODCALLTYPE *QueryInterface )( ID3D12Heap1 * This, - /* [annotation][in] */ - _In_ REFIID riid, - /* [annotation][iid_is][out] */ + REFIID riid, _COM_Outptr_ void **ppvObject); DECLSPEC_XFGVIRT(IUnknown, AddRef) @@ -21051,55 +18995,50 @@ EXTERN_C const IID IID_ID3D12Heap1; DECLSPEC_XFGVIRT(ID3D12Object, GetPrivateData) HRESULT ( STDMETHODCALLTYPE *GetPrivateData )( ID3D12Heap1 * This, - /* [annotation] */ _In_ REFGUID guid, - /* [annotation] */ _Inout_ UINT *pDataSize, - /* [annotation] */ _Out_writes_bytes_opt_( *pDataSize ) void *pData); DECLSPEC_XFGVIRT(ID3D12Object, SetPrivateData) HRESULT ( STDMETHODCALLTYPE *SetPrivateData )( ID3D12Heap1 * This, - /* [annotation] */ _In_ REFGUID guid, - /* [annotation] */ _In_ UINT DataSize, - /* [annotation] */ _In_reads_bytes_opt_( DataSize ) const void *pData); DECLSPEC_XFGVIRT(ID3D12Object, SetPrivateDataInterface) HRESULT ( STDMETHODCALLTYPE *SetPrivateDataInterface )( ID3D12Heap1 * This, - /* [annotation] */ _In_ REFGUID guid, - /* [annotation] */ _In_opt_ const IUnknown *pData); DECLSPEC_XFGVIRT(ID3D12Object, SetName) HRESULT ( STDMETHODCALLTYPE *SetName )( ID3D12Heap1 * This, - /* [annotation] */ _In_z_ LPCWSTR Name); DECLSPEC_XFGVIRT(ID3D12DeviceChild, GetDevice) HRESULT ( STDMETHODCALLTYPE *GetDevice )( ID3D12Heap1 * This, - /* [annotation][in] */ - _In_ REFIID riid, - /* [annotation][iid_is][out] */ + REFIID riid, _COM_Outptr_opt_ void **ppvDevice); DECLSPEC_XFGVIRT(ID3D12Heap, GetDesc) +#if !defined(_WIN32) D3D12_HEAP_DESC ( STDMETHODCALLTYPE *GetDesc )( ID3D12Heap1 * This); +#else + D3D12_HEAP_DESC *( STDMETHODCALLTYPE *GetDesc )( + ID3D12Heap1 * This, + D3D12_HEAP_DESC * RetVal); + +#endif + DECLSPEC_XFGVIRT(ID3D12Heap1, GetProtectedResourceSession) HRESULT ( STDMETHODCALLTYPE *GetProtectedResourceSession )( ID3D12Heap1 * This, - /* [annotation][in] */ - _In_ REFIID riid, - /* [annotation][iid_is][out] */ + REFIID riid, _COM_Outptr_opt_ void **ppProtectedSession); END_INTERFACE @@ -21142,9 +19081,14 @@ EXTERN_C const IID IID_ID3D12Heap1; ( (This)->lpVtbl -> GetDevice(This,riid,ppvDevice) ) +#if !defined(_WIN32) #define ID3D12Heap1_GetDesc(This) \ ( (This)->lpVtbl -> GetDesc(This) ) +#else +#define ID3D12Heap1_GetDesc(This,RetVal) \ + ( (This)->lpVtbl -> GetDesc(This,RetVal) ) +#endif #define ID3D12Heap1_GetProtectedResourceSession(This,riid,ppProtectedSession) \ @@ -21177,7 +19121,6 @@ EXTERN_C const IID IID_ID3D12GraphicsCommandList3; { public: virtual void STDMETHODCALLTYPE SetProtectedResourceSession( - /* [annotation] */ _In_opt_ ID3D12ProtectedResourceSession *pProtectedResourceSession) = 0; }; @@ -21192,9 +19135,7 @@ EXTERN_C const IID IID_ID3D12GraphicsCommandList3; DECLSPEC_XFGVIRT(IUnknown, QueryInterface) HRESULT ( STDMETHODCALLTYPE *QueryInterface )( ID3D12GraphicsCommandList3 * This, - /* [annotation][in] */ - _In_ REFIID riid, - /* [annotation][iid_is][out] */ + REFIID riid, _COM_Outptr_ void **ppvObject); DECLSPEC_XFGVIRT(IUnknown, AddRef) @@ -21208,43 +19149,32 @@ EXTERN_C const IID IID_ID3D12GraphicsCommandList3; DECLSPEC_XFGVIRT(ID3D12Object, GetPrivateData) HRESULT ( STDMETHODCALLTYPE *GetPrivateData )( ID3D12GraphicsCommandList3 * This, - /* [annotation] */ _In_ REFGUID guid, - /* [annotation] */ _Inout_ UINT *pDataSize, - /* [annotation] */ _Out_writes_bytes_opt_( *pDataSize ) void *pData); DECLSPEC_XFGVIRT(ID3D12Object, SetPrivateData) HRESULT ( STDMETHODCALLTYPE *SetPrivateData )( ID3D12GraphicsCommandList3 * This, - /* [annotation] */ _In_ REFGUID guid, - /* [annotation] */ _In_ UINT DataSize, - /* [annotation] */ _In_reads_bytes_opt_( DataSize ) const void *pData); DECLSPEC_XFGVIRT(ID3D12Object, SetPrivateDataInterface) HRESULT ( STDMETHODCALLTYPE *SetPrivateDataInterface )( ID3D12GraphicsCommandList3 * This, - /* [annotation] */ _In_ REFGUID guid, - /* [annotation] */ _In_opt_ const IUnknown *pData); DECLSPEC_XFGVIRT(ID3D12Object, SetName) HRESULT ( STDMETHODCALLTYPE *SetName )( ID3D12GraphicsCommandList3 * This, - /* [annotation] */ _In_z_ LPCWSTR Name); DECLSPEC_XFGVIRT(ID3D12DeviceChild, GetDevice) HRESULT ( STDMETHODCALLTYPE *GetDevice )( ID3D12GraphicsCommandList3 * This, - /* [annotation][in] */ - _In_ REFIID riid, - /* [annotation][iid_is][out] */ + REFIID riid, _COM_Outptr_opt_ void **ppvDevice); DECLSPEC_XFGVIRT(ID3D12CommandList, GetType) @@ -21258,60 +19188,43 @@ EXTERN_C const IID IID_ID3D12GraphicsCommandList3; DECLSPEC_XFGVIRT(ID3D12GraphicsCommandList, Reset) HRESULT ( STDMETHODCALLTYPE *Reset )( ID3D12GraphicsCommandList3 * This, - /* [annotation] */ _In_ ID3D12CommandAllocator *pAllocator, - /* [annotation] */ _In_opt_ ID3D12PipelineState *pInitialState); DECLSPEC_XFGVIRT(ID3D12GraphicsCommandList, ClearState) void ( STDMETHODCALLTYPE *ClearState )( ID3D12GraphicsCommandList3 * This, - /* [annotation] */ _In_opt_ ID3D12PipelineState *pPipelineState); DECLSPEC_XFGVIRT(ID3D12GraphicsCommandList, DrawInstanced) void ( STDMETHODCALLTYPE *DrawInstanced )( ID3D12GraphicsCommandList3 * This, - /* [annotation] */ _In_ UINT VertexCountPerInstance, - /* [annotation] */ _In_ UINT InstanceCount, - /* [annotation] */ _In_ UINT StartVertexLocation, - /* [annotation] */ _In_ UINT StartInstanceLocation); DECLSPEC_XFGVIRT(ID3D12GraphicsCommandList, DrawIndexedInstanced) void ( STDMETHODCALLTYPE *DrawIndexedInstanced )( ID3D12GraphicsCommandList3 * This, - /* [annotation] */ _In_ UINT IndexCountPerInstance, - /* [annotation] */ _In_ UINT InstanceCount, - /* [annotation] */ _In_ UINT StartIndexLocation, - /* [annotation] */ _In_ INT BaseVertexLocation, - /* [annotation] */ _In_ UINT StartInstanceLocation); DECLSPEC_XFGVIRT(ID3D12GraphicsCommandList, Dispatch) void ( STDMETHODCALLTYPE *Dispatch )( ID3D12GraphicsCommandList3 * This, - /* [annotation] */ _In_ UINT ThreadGroupCountX, - /* [annotation] */ _In_ UINT ThreadGroupCountY, - /* [annotation] */ _In_ UINT ThreadGroupCountZ); DECLSPEC_XFGVIRT(ID3D12GraphicsCommandList, CopyBufferRegion) void ( STDMETHODCALLTYPE *CopyBufferRegion )( ID3D12GraphicsCommandList3 * This, - /* [annotation] */ _In_ ID3D12Resource *pDstBuffer, UINT64 DstOffset, - /* [annotation] */ _In_ ID3D12Resource *pSrcBuffer, UINT64 SrcOffset, UINT64 NumBytes); @@ -21319,34 +19232,25 @@ EXTERN_C const IID IID_ID3D12GraphicsCommandList3; DECLSPEC_XFGVIRT(ID3D12GraphicsCommandList, CopyTextureRegion) void ( STDMETHODCALLTYPE *CopyTextureRegion )( ID3D12GraphicsCommandList3 * This, - /* [annotation] */ _In_ const D3D12_TEXTURE_COPY_LOCATION *pDst, UINT DstX, UINT DstY, UINT DstZ, - /* [annotation] */ _In_ const D3D12_TEXTURE_COPY_LOCATION *pSrc, - /* [annotation] */ _In_opt_ const D3D12_BOX *pSrcBox); DECLSPEC_XFGVIRT(ID3D12GraphicsCommandList, CopyResource) void ( STDMETHODCALLTYPE *CopyResource )( ID3D12GraphicsCommandList3 * This, - /* [annotation] */ _In_ ID3D12Resource *pDstResource, - /* [annotation] */ _In_ ID3D12Resource *pSrcResource); DECLSPEC_XFGVIRT(ID3D12GraphicsCommandList, CopyTiles) void ( STDMETHODCALLTYPE *CopyTiles )( ID3D12GraphicsCommandList3 * This, - /* [annotation] */ _In_ ID3D12Resource *pTiledResource, - /* [annotation] */ _In_ const D3D12_TILED_RESOURCE_COORDINATE *pTileRegionStartCoordinate, - /* [annotation] */ _In_ const D3D12_TILE_REGION_SIZE *pTileRegionSize, - /* [annotation] */ _In_ ID3D12Resource *pBuffer, UINT64 BufferStartOffsetInBytes, D3D12_TILE_COPY_FLAGS Flags); @@ -21354,356 +19258,255 @@ EXTERN_C const IID IID_ID3D12GraphicsCommandList3; DECLSPEC_XFGVIRT(ID3D12GraphicsCommandList, ResolveSubresource) void ( STDMETHODCALLTYPE *ResolveSubresource )( ID3D12GraphicsCommandList3 * This, - /* [annotation] */ _In_ ID3D12Resource *pDstResource, - /* [annotation] */ _In_ UINT DstSubresource, - /* [annotation] */ _In_ ID3D12Resource *pSrcResource, - /* [annotation] */ _In_ UINT SrcSubresource, - /* [annotation] */ _In_ DXGI_FORMAT Format); DECLSPEC_XFGVIRT(ID3D12GraphicsCommandList, IASetPrimitiveTopology) void ( STDMETHODCALLTYPE *IASetPrimitiveTopology )( ID3D12GraphicsCommandList3 * This, - /* [annotation] */ _In_ D3D12_PRIMITIVE_TOPOLOGY PrimitiveTopology); DECLSPEC_XFGVIRT(ID3D12GraphicsCommandList, RSSetViewports) void ( STDMETHODCALLTYPE *RSSetViewports )( ID3D12GraphicsCommandList3 * This, - /* [annotation] */ _In_range_(0, D3D12_VIEWPORT_AND_SCISSORRECT_OBJECT_COUNT_PER_PIPELINE) UINT NumViewports, - /* [annotation] */ _In_reads_( NumViewports) const D3D12_VIEWPORT *pViewports); DECLSPEC_XFGVIRT(ID3D12GraphicsCommandList, RSSetScissorRects) void ( STDMETHODCALLTYPE *RSSetScissorRects )( ID3D12GraphicsCommandList3 * This, - /* [annotation] */ _In_range_(0, D3D12_VIEWPORT_AND_SCISSORRECT_OBJECT_COUNT_PER_PIPELINE) UINT NumRects, - /* [annotation] */ _In_reads_( NumRects) const D3D12_RECT *pRects); DECLSPEC_XFGVIRT(ID3D12GraphicsCommandList, OMSetBlendFactor) void ( STDMETHODCALLTYPE *OMSetBlendFactor )( ID3D12GraphicsCommandList3 * This, - /* [annotation] */ _In_reads_opt_(4) const FLOAT BlendFactor[ 4 ]); DECLSPEC_XFGVIRT(ID3D12GraphicsCommandList, OMSetStencilRef) void ( STDMETHODCALLTYPE *OMSetStencilRef )( ID3D12GraphicsCommandList3 * This, - /* [annotation] */ _In_ UINT StencilRef); DECLSPEC_XFGVIRT(ID3D12GraphicsCommandList, SetPipelineState) void ( STDMETHODCALLTYPE *SetPipelineState )( ID3D12GraphicsCommandList3 * This, - /* [annotation] */ _In_ ID3D12PipelineState *pPipelineState); DECLSPEC_XFGVIRT(ID3D12GraphicsCommandList, ResourceBarrier) void ( STDMETHODCALLTYPE *ResourceBarrier )( ID3D12GraphicsCommandList3 * This, - /* [annotation] */ _In_ UINT NumBarriers, - /* [annotation] */ _In_reads_(NumBarriers) const D3D12_RESOURCE_BARRIER *pBarriers); DECLSPEC_XFGVIRT(ID3D12GraphicsCommandList, ExecuteBundle) void ( STDMETHODCALLTYPE *ExecuteBundle )( ID3D12GraphicsCommandList3 * This, - /* [annotation] */ _In_ ID3D12GraphicsCommandList *pCommandList); DECLSPEC_XFGVIRT(ID3D12GraphicsCommandList, SetDescriptorHeaps) void ( STDMETHODCALLTYPE *SetDescriptorHeaps )( ID3D12GraphicsCommandList3 * This, - /* [annotation] */ _In_ UINT NumDescriptorHeaps, - /* [annotation] */ _In_reads_(NumDescriptorHeaps) ID3D12DescriptorHeap *const *ppDescriptorHeaps); DECLSPEC_XFGVIRT(ID3D12GraphicsCommandList, SetComputeRootSignature) void ( STDMETHODCALLTYPE *SetComputeRootSignature )( ID3D12GraphicsCommandList3 * This, - /* [annotation] */ _In_opt_ ID3D12RootSignature *pRootSignature); DECLSPEC_XFGVIRT(ID3D12GraphicsCommandList, SetGraphicsRootSignature) void ( STDMETHODCALLTYPE *SetGraphicsRootSignature )( ID3D12GraphicsCommandList3 * This, - /* [annotation] */ _In_opt_ ID3D12RootSignature *pRootSignature); DECLSPEC_XFGVIRT(ID3D12GraphicsCommandList, SetComputeRootDescriptorTable) void ( STDMETHODCALLTYPE *SetComputeRootDescriptorTable )( ID3D12GraphicsCommandList3 * This, - /* [annotation] */ _In_ UINT RootParameterIndex, - /* [annotation] */ _In_ D3D12_GPU_DESCRIPTOR_HANDLE BaseDescriptor); DECLSPEC_XFGVIRT(ID3D12GraphicsCommandList, SetGraphicsRootDescriptorTable) void ( STDMETHODCALLTYPE *SetGraphicsRootDescriptorTable )( ID3D12GraphicsCommandList3 * This, - /* [annotation] */ _In_ UINT RootParameterIndex, - /* [annotation] */ _In_ D3D12_GPU_DESCRIPTOR_HANDLE BaseDescriptor); DECLSPEC_XFGVIRT(ID3D12GraphicsCommandList, SetComputeRoot32BitConstant) void ( STDMETHODCALLTYPE *SetComputeRoot32BitConstant )( ID3D12GraphicsCommandList3 * This, - /* [annotation] */ _In_ UINT RootParameterIndex, - /* [annotation] */ _In_ UINT SrcData, - /* [annotation] */ _In_ UINT DestOffsetIn32BitValues); DECLSPEC_XFGVIRT(ID3D12GraphicsCommandList, SetGraphicsRoot32BitConstant) void ( STDMETHODCALLTYPE *SetGraphicsRoot32BitConstant )( ID3D12GraphicsCommandList3 * This, - /* [annotation] */ _In_ UINT RootParameterIndex, - /* [annotation] */ _In_ UINT SrcData, - /* [annotation] */ _In_ UINT DestOffsetIn32BitValues); DECLSPEC_XFGVIRT(ID3D12GraphicsCommandList, SetComputeRoot32BitConstants) void ( STDMETHODCALLTYPE *SetComputeRoot32BitConstants )( ID3D12GraphicsCommandList3 * This, - /* [annotation] */ _In_ UINT RootParameterIndex, - /* [annotation] */ _In_ UINT Num32BitValuesToSet, - /* [annotation] */ _In_reads_(Num32BitValuesToSet*sizeof(UINT)) const void *pSrcData, - /* [annotation] */ _In_ UINT DestOffsetIn32BitValues); DECLSPEC_XFGVIRT(ID3D12GraphicsCommandList, SetGraphicsRoot32BitConstants) void ( STDMETHODCALLTYPE *SetGraphicsRoot32BitConstants )( ID3D12GraphicsCommandList3 * This, - /* [annotation] */ _In_ UINT RootParameterIndex, - /* [annotation] */ _In_ UINT Num32BitValuesToSet, - /* [annotation] */ _In_reads_(Num32BitValuesToSet*sizeof(UINT)) const void *pSrcData, - /* [annotation] */ _In_ UINT DestOffsetIn32BitValues); DECLSPEC_XFGVIRT(ID3D12GraphicsCommandList, SetComputeRootConstantBufferView) void ( STDMETHODCALLTYPE *SetComputeRootConstantBufferView )( ID3D12GraphicsCommandList3 * This, - /* [annotation] */ _In_ UINT RootParameterIndex, - /* [annotation] */ _In_ D3D12_GPU_VIRTUAL_ADDRESS BufferLocation); DECLSPEC_XFGVIRT(ID3D12GraphicsCommandList, SetGraphicsRootConstantBufferView) void ( STDMETHODCALLTYPE *SetGraphicsRootConstantBufferView )( ID3D12GraphicsCommandList3 * This, - /* [annotation] */ _In_ UINT RootParameterIndex, - /* [annotation] */ _In_ D3D12_GPU_VIRTUAL_ADDRESS BufferLocation); DECLSPEC_XFGVIRT(ID3D12GraphicsCommandList, SetComputeRootShaderResourceView) void ( STDMETHODCALLTYPE *SetComputeRootShaderResourceView )( ID3D12GraphicsCommandList3 * This, - /* [annotation] */ _In_ UINT RootParameterIndex, - /* [annotation] */ _In_ D3D12_GPU_VIRTUAL_ADDRESS BufferLocation); DECLSPEC_XFGVIRT(ID3D12GraphicsCommandList, SetGraphicsRootShaderResourceView) void ( STDMETHODCALLTYPE *SetGraphicsRootShaderResourceView )( ID3D12GraphicsCommandList3 * This, - /* [annotation] */ _In_ UINT RootParameterIndex, - /* [annotation] */ _In_ D3D12_GPU_VIRTUAL_ADDRESS BufferLocation); DECLSPEC_XFGVIRT(ID3D12GraphicsCommandList, SetComputeRootUnorderedAccessView) void ( STDMETHODCALLTYPE *SetComputeRootUnorderedAccessView )( ID3D12GraphicsCommandList3 * This, - /* [annotation] */ _In_ UINT RootParameterIndex, - /* [annotation] */ _In_ D3D12_GPU_VIRTUAL_ADDRESS BufferLocation); DECLSPEC_XFGVIRT(ID3D12GraphicsCommandList, SetGraphicsRootUnorderedAccessView) void ( STDMETHODCALLTYPE *SetGraphicsRootUnorderedAccessView )( ID3D12GraphicsCommandList3 * This, - /* [annotation] */ _In_ UINT RootParameterIndex, - /* [annotation] */ _In_ D3D12_GPU_VIRTUAL_ADDRESS BufferLocation); DECLSPEC_XFGVIRT(ID3D12GraphicsCommandList, IASetIndexBuffer) void ( STDMETHODCALLTYPE *IASetIndexBuffer )( ID3D12GraphicsCommandList3 * This, - /* [annotation] */ _In_opt_ const D3D12_INDEX_BUFFER_VIEW *pView); DECLSPEC_XFGVIRT(ID3D12GraphicsCommandList, IASetVertexBuffers) void ( STDMETHODCALLTYPE *IASetVertexBuffers )( ID3D12GraphicsCommandList3 * This, - /* [annotation] */ _In_ UINT StartSlot, - /* [annotation] */ _In_ UINT NumViews, - /* [annotation] */ _In_reads_opt_(NumViews) const D3D12_VERTEX_BUFFER_VIEW *pViews); DECLSPEC_XFGVIRT(ID3D12GraphicsCommandList, SOSetTargets) void ( STDMETHODCALLTYPE *SOSetTargets )( ID3D12GraphicsCommandList3 * This, - /* [annotation] */ _In_ UINT StartSlot, - /* [annotation] */ _In_ UINT NumViews, - /* [annotation] */ _In_reads_opt_(NumViews) const D3D12_STREAM_OUTPUT_BUFFER_VIEW *pViews); DECLSPEC_XFGVIRT(ID3D12GraphicsCommandList, OMSetRenderTargets) void ( STDMETHODCALLTYPE *OMSetRenderTargets )( ID3D12GraphicsCommandList3 * This, - /* [annotation] */ _In_ UINT NumRenderTargetDescriptors, - /* [annotation] */ _In_opt_ const D3D12_CPU_DESCRIPTOR_HANDLE *pRenderTargetDescriptors, - /* [annotation] */ _In_ BOOL RTsSingleHandleToDescriptorRange, - /* [annotation] */ _In_opt_ const D3D12_CPU_DESCRIPTOR_HANDLE *pDepthStencilDescriptor); DECLSPEC_XFGVIRT(ID3D12GraphicsCommandList, ClearDepthStencilView) void ( STDMETHODCALLTYPE *ClearDepthStencilView )( ID3D12GraphicsCommandList3 * This, - /* [annotation] */ _In_ D3D12_CPU_DESCRIPTOR_HANDLE DepthStencilView, - /* [annotation] */ _In_ D3D12_CLEAR_FLAGS ClearFlags, - /* [annotation] */ _In_ FLOAT Depth, - /* [annotation] */ _In_ UINT8 Stencil, - /* [annotation] */ _In_ UINT NumRects, - /* [annotation] */ _In_reads_(NumRects) const D3D12_RECT *pRects); DECLSPEC_XFGVIRT(ID3D12GraphicsCommandList, ClearRenderTargetView) void ( STDMETHODCALLTYPE *ClearRenderTargetView )( ID3D12GraphicsCommandList3 * This, - /* [annotation] */ _In_ D3D12_CPU_DESCRIPTOR_HANDLE RenderTargetView, - /* [annotation] */ _In_ const FLOAT ColorRGBA[ 4 ], - /* [annotation] */ _In_ UINT NumRects, - /* [annotation] */ _In_reads_(NumRects) const D3D12_RECT *pRects); DECLSPEC_XFGVIRT(ID3D12GraphicsCommandList, ClearUnorderedAccessViewUint) void ( STDMETHODCALLTYPE *ClearUnorderedAccessViewUint )( ID3D12GraphicsCommandList3 * This, - /* [annotation] */ _In_ D3D12_GPU_DESCRIPTOR_HANDLE ViewGPUHandleInCurrentHeap, - /* [annotation] */ _In_ D3D12_CPU_DESCRIPTOR_HANDLE ViewCPUHandle, - /* [annotation] */ _In_ ID3D12Resource *pResource, - /* [annotation] */ _In_ const UINT Values[ 4 ], - /* [annotation] */ _In_ UINT NumRects, - /* [annotation] */ _In_reads_(NumRects) const D3D12_RECT *pRects); DECLSPEC_XFGVIRT(ID3D12GraphicsCommandList, ClearUnorderedAccessViewFloat) void ( STDMETHODCALLTYPE *ClearUnorderedAccessViewFloat )( ID3D12GraphicsCommandList3 * This, - /* [annotation] */ _In_ D3D12_GPU_DESCRIPTOR_HANDLE ViewGPUHandleInCurrentHeap, - /* [annotation] */ _In_ D3D12_CPU_DESCRIPTOR_HANDLE ViewCPUHandle, - /* [annotation] */ _In_ ID3D12Resource *pResource, - /* [annotation] */ _In_ const FLOAT Values[ 4 ], - /* [annotation] */ _In_ UINT NumRects, - /* [annotation] */ _In_reads_(NumRects) const D3D12_RECT *pRects); DECLSPEC_XFGVIRT(ID3D12GraphicsCommandList, DiscardResource) void ( STDMETHODCALLTYPE *DiscardResource )( ID3D12GraphicsCommandList3 * This, - /* [annotation] */ _In_ ID3D12Resource *pResource, - /* [annotation] */ _In_opt_ const D3D12_DISCARD_REGION *pRegion); DECLSPEC_XFGVIRT(ID3D12GraphicsCommandList, BeginQuery) void ( STDMETHODCALLTYPE *BeginQuery )( ID3D12GraphicsCommandList3 * This, - /* [annotation] */ _In_ ID3D12QueryHeap *pQueryHeap, - /* [annotation] */ _In_ D3D12_QUERY_TYPE Type, - /* [annotation] */ _In_ UINT Index); DECLSPEC_XFGVIRT(ID3D12GraphicsCommandList, EndQuery) void ( STDMETHODCALLTYPE *EndQuery )( ID3D12GraphicsCommandList3 * This, - /* [annotation] */ _In_ ID3D12QueryHeap *pQueryHeap, - /* [annotation] */ _In_ D3D12_QUERY_TYPE Type, - /* [annotation] */ _In_ UINT Index); DECLSPEC_XFGVIRT(ID3D12GraphicsCommandList, ResolveQueryData) void ( STDMETHODCALLTYPE *ResolveQueryData )( ID3D12GraphicsCommandList3 * This, - /* [annotation] */ _In_ ID3D12QueryHeap *pQueryHeap, - /* [annotation] */ _In_ D3D12_QUERY_TYPE Type, - /* [annotation] */ _In_ UINT StartIndex, - /* [annotation] */ _In_ UINT NumQueries, - /* [annotation] */ _In_ ID3D12Resource *pDestinationBuffer, - /* [annotation] */ _In_ UINT64 AlignedDestinationBufferOffset); DECLSPEC_XFGVIRT(ID3D12GraphicsCommandList, SetPredication) void ( STDMETHODCALLTYPE *SetPredication )( ID3D12GraphicsCommandList3 * This, - /* [annotation] */ _In_opt_ ID3D12Resource *pBuffer, - /* [annotation] */ _In_ UINT64 AlignedBufferOffset, - /* [annotation] */ _In_ D3D12_PREDICATION_OP Operation); DECLSPEC_XFGVIRT(ID3D12GraphicsCommandList, SetMarker) void ( STDMETHODCALLTYPE *SetMarker )( ID3D12GraphicsCommandList3 * This, UINT Metadata, - /* [annotation] */ _In_reads_bytes_opt_(Size) const void *pData, UINT Size); @@ -21711,7 +19514,6 @@ EXTERN_C const IID IID_ID3D12GraphicsCommandList3; void ( STDMETHODCALLTYPE *BeginEvent )( ID3D12GraphicsCommandList3 * This, UINT Metadata, - /* [annotation] */ _In_reads_bytes_opt_(Size) const void *pData, UINT Size); @@ -21722,108 +19524,76 @@ EXTERN_C const IID IID_ID3D12GraphicsCommandList3; DECLSPEC_XFGVIRT(ID3D12GraphicsCommandList, ExecuteIndirect) void ( STDMETHODCALLTYPE *ExecuteIndirect )( ID3D12GraphicsCommandList3 * This, - /* [annotation] */ _In_ ID3D12CommandSignature *pCommandSignature, - /* [annotation] */ _In_ UINT MaxCommandCount, - /* [annotation] */ _In_ ID3D12Resource *pArgumentBuffer, - /* [annotation] */ _In_ UINT64 ArgumentBufferOffset, - /* [annotation] */ _In_opt_ ID3D12Resource *pCountBuffer, - /* [annotation] */ _In_ UINT64 CountBufferOffset); DECLSPEC_XFGVIRT(ID3D12GraphicsCommandList1, AtomicCopyBufferUINT) void ( STDMETHODCALLTYPE *AtomicCopyBufferUINT )( ID3D12GraphicsCommandList3 * This, - /* [annotation] */ _In_ ID3D12Resource *pDstBuffer, UINT64 DstOffset, - /* [annotation] */ _In_ ID3D12Resource *pSrcBuffer, UINT64 SrcOffset, UINT Dependencies, - /* [annotation] */ _In_reads_(Dependencies) ID3D12Resource *const *ppDependentResources, - /* [annotation] */ _In_reads_(Dependencies) const D3D12_SUBRESOURCE_RANGE_UINT64 *pDependentSubresourceRanges); DECLSPEC_XFGVIRT(ID3D12GraphicsCommandList1, AtomicCopyBufferUINT64) void ( STDMETHODCALLTYPE *AtomicCopyBufferUINT64 )( ID3D12GraphicsCommandList3 * This, - /* [annotation] */ _In_ ID3D12Resource *pDstBuffer, UINT64 DstOffset, - /* [annotation] */ _In_ ID3D12Resource *pSrcBuffer, UINT64 SrcOffset, UINT Dependencies, - /* [annotation] */ _In_reads_(Dependencies) ID3D12Resource *const *ppDependentResources, - /* [annotation] */ _In_reads_(Dependencies) const D3D12_SUBRESOURCE_RANGE_UINT64 *pDependentSubresourceRanges); DECLSPEC_XFGVIRT(ID3D12GraphicsCommandList1, OMSetDepthBounds) void ( STDMETHODCALLTYPE *OMSetDepthBounds )( ID3D12GraphicsCommandList3 * This, - /* [annotation] */ _In_ FLOAT Min, - /* [annotation] */ _In_ FLOAT Max); DECLSPEC_XFGVIRT(ID3D12GraphicsCommandList1, SetSamplePositions) void ( STDMETHODCALLTYPE *SetSamplePositions )( ID3D12GraphicsCommandList3 * This, - /* [annotation] */ _In_ UINT NumSamplesPerPixel, - /* [annotation] */ _In_ UINT NumPixels, - /* [annotation] */ _In_reads_(NumSamplesPerPixel*NumPixels) D3D12_SAMPLE_POSITION *pSamplePositions); DECLSPEC_XFGVIRT(ID3D12GraphicsCommandList1, ResolveSubresourceRegion) void ( STDMETHODCALLTYPE *ResolveSubresourceRegion )( ID3D12GraphicsCommandList3 * This, - /* [annotation] */ _In_ ID3D12Resource *pDstResource, - /* [annotation] */ _In_ UINT DstSubresource, - /* [annotation] */ _In_ UINT DstX, - /* [annotation] */ _In_ UINT DstY, - /* [annotation] */ _In_ ID3D12Resource *pSrcResource, - /* [annotation] */ _In_ UINT SrcSubresource, - /* [annotation] */ _In_opt_ D3D12_RECT *pSrcRect, - /* [annotation] */ _In_ DXGI_FORMAT Format, - /* [annotation] */ _In_ D3D12_RESOLVE_MODE ResolveMode); DECLSPEC_XFGVIRT(ID3D12GraphicsCommandList1, SetViewInstanceMask) void ( STDMETHODCALLTYPE *SetViewInstanceMask )( ID3D12GraphicsCommandList3 * This, - /* [annotation] */ _In_ UINT Mask); DECLSPEC_XFGVIRT(ID3D12GraphicsCommandList2, WriteBufferImmediate) void ( STDMETHODCALLTYPE *WriteBufferImmediate )( ID3D12GraphicsCommandList3 * This, UINT Count, - /* [annotation] */ _In_reads_(Count) const D3D12_WRITEBUFFERIMMEDIATE_PARAMETER *pParams, - /* [annotation] */ _In_reads_opt_(Count) const D3D12_WRITEBUFFERIMMEDIATE_MODE *pModes); DECLSPEC_XFGVIRT(ID3D12GraphicsCommandList3, SetProtectedResourceSession) void ( STDMETHODCALLTYPE *SetProtectedResourceSession )( ID3D12GraphicsCommandList3 * This, - /* [annotation] */ _In_opt_ ID3D12ProtectedResourceSession *pProtectedResourceSession); END_INTERFACE @@ -22061,7 +19831,7 @@ EXTERN_C const IID IID_ID3D12GraphicsCommandList3; #endif /* __ID3D12GraphicsCommandList3_INTERFACE_DEFINED__ */ -/* interface __MIDL_itf_d3d12_0000_0048 */ +/* interface __MIDL_itf_d3d12_0000_0049 */ /* [local] */ typedef @@ -22110,7 +19880,6 @@ typedef struct D3D12_RENDER_PASS_ENDING_ACCESS_RESOLVE_PARAMETERS ID3D12Resource *pSrcResource; ID3D12Resource *pDstResource; UINT SubresourceCount; - /* [annotation] */ _Field_size_full_(SubresourceCount) const D3D12_RENDER_PASS_ENDING_ACCESS_RESOLVE_SUBRESOURCE_PARAMETERS *pSubresourceParameters; DXGI_FORMAT Format; D3D12_RESOLVE_MODE ResolveMode; @@ -22154,8 +19923,8 @@ enum D3D12_RENDER_PASS_FLAGS DEFINE_ENUM_FLAG_OPERATORS( D3D12_RENDER_PASS_FLAGS ); -extern RPC_IF_HANDLE __MIDL_itf_d3d12_0000_0048_v0_0_c_ifspec; -extern RPC_IF_HANDLE __MIDL_itf_d3d12_0000_0048_v0_0_s_ifspec; +extern RPC_IF_HANDLE __MIDL_itf_d3d12_0000_0049_v0_0_c_ifspec; +extern RPC_IF_HANDLE __MIDL_itf_d3d12_0000_0049_v0_0_s_ifspec; #ifndef __ID3D12MetaCommand_INTERFACE_DEFINED__ #define __ID3D12MetaCommand_INTERFACE_DEFINED__ @@ -22173,9 +19942,7 @@ EXTERN_C const IID IID_ID3D12MetaCommand; { public: virtual UINT64 STDMETHODCALLTYPE GetRequiredParameterResourceSize( - /* [annotation] */ _In_ D3D12_META_COMMAND_PARAMETER_STAGE Stage, - /* [annotation] */ _In_ UINT ParameterIndex) = 0; }; @@ -22190,9 +19957,7 @@ EXTERN_C const IID IID_ID3D12MetaCommand; DECLSPEC_XFGVIRT(IUnknown, QueryInterface) HRESULT ( STDMETHODCALLTYPE *QueryInterface )( ID3D12MetaCommand * This, - /* [annotation][in] */ - _In_ REFIID riid, - /* [annotation][iid_is][out] */ + REFIID riid, _COM_Outptr_ void **ppvObject); DECLSPEC_XFGVIRT(IUnknown, AddRef) @@ -22206,51 +19971,38 @@ EXTERN_C const IID IID_ID3D12MetaCommand; DECLSPEC_XFGVIRT(ID3D12Object, GetPrivateData) HRESULT ( STDMETHODCALLTYPE *GetPrivateData )( ID3D12MetaCommand * This, - /* [annotation] */ _In_ REFGUID guid, - /* [annotation] */ _Inout_ UINT *pDataSize, - /* [annotation] */ _Out_writes_bytes_opt_( *pDataSize ) void *pData); DECLSPEC_XFGVIRT(ID3D12Object, SetPrivateData) HRESULT ( STDMETHODCALLTYPE *SetPrivateData )( ID3D12MetaCommand * This, - /* [annotation] */ _In_ REFGUID guid, - /* [annotation] */ _In_ UINT DataSize, - /* [annotation] */ _In_reads_bytes_opt_( DataSize ) const void *pData); DECLSPEC_XFGVIRT(ID3D12Object, SetPrivateDataInterface) HRESULT ( STDMETHODCALLTYPE *SetPrivateDataInterface )( ID3D12MetaCommand * This, - /* [annotation] */ _In_ REFGUID guid, - /* [annotation] */ _In_opt_ const IUnknown *pData); DECLSPEC_XFGVIRT(ID3D12Object, SetName) HRESULT ( STDMETHODCALLTYPE *SetName )( ID3D12MetaCommand * This, - /* [annotation] */ _In_z_ LPCWSTR Name); DECLSPEC_XFGVIRT(ID3D12DeviceChild, GetDevice) HRESULT ( STDMETHODCALLTYPE *GetDevice )( ID3D12MetaCommand * This, - /* [annotation][in] */ - _In_ REFIID riid, - /* [annotation][iid_is][out] */ + REFIID riid, _COM_Outptr_opt_ void **ppvDevice); DECLSPEC_XFGVIRT(ID3D12MetaCommand, GetRequiredParameterResourceSize) UINT64 ( STDMETHODCALLTYPE *GetRequiredParameterResourceSize )( ID3D12MetaCommand * This, - /* [annotation] */ _In_ D3D12_META_COMMAND_PARAMETER_STAGE Stage, - /* [annotation] */ _In_ UINT ParameterIndex); END_INTERFACE @@ -22308,7 +20060,7 @@ EXTERN_C const IID IID_ID3D12MetaCommand; #endif /* __ID3D12MetaCommand_INTERFACE_DEFINED__ */ -/* interface __MIDL_itf_d3d12_0000_0049 */ +/* interface __MIDL_itf_d3d12_0000_0050 */ /* [local] */ typedef struct D3D12_DISPATCH_RAYS_DESC @@ -22324,8 +20076,8 @@ typedef struct D3D12_DISPATCH_RAYS_DESC -extern RPC_IF_HANDLE __MIDL_itf_d3d12_0000_0049_v0_0_c_ifspec; -extern RPC_IF_HANDLE __MIDL_itf_d3d12_0000_0049_v0_0_s_ifspec; +extern RPC_IF_HANDLE __MIDL_itf_d3d12_0000_0050_v0_0_c_ifspec; +extern RPC_IF_HANDLE __MIDL_itf_d3d12_0000_0050_v0_0_s_ifspec; #ifndef __ID3D12GraphicsCommandList4_INTERFACE_DEFINED__ #define __ID3D12GraphicsCommandList4_INTERFACE_DEFINED__ @@ -22343,62 +20095,42 @@ EXTERN_C const IID IID_ID3D12GraphicsCommandList4; { public: virtual void STDMETHODCALLTYPE BeginRenderPass( - /* [annotation] */ _In_ UINT NumRenderTargets, - /* [annotation] */ _In_reads_opt_(NumRenderTargets) const D3D12_RENDER_PASS_RENDER_TARGET_DESC *pRenderTargets, - /* [annotation] */ _In_opt_ const D3D12_RENDER_PASS_DEPTH_STENCIL_DESC *pDepthStencil, D3D12_RENDER_PASS_FLAGS Flags) = 0; virtual void STDMETHODCALLTYPE EndRenderPass( void) = 0; virtual void STDMETHODCALLTYPE InitializeMetaCommand( - /* [annotation] */ _In_ ID3D12MetaCommand *pMetaCommand, - /* [annotation] */ _In_reads_bytes_opt_(InitializationParametersDataSizeInBytes) const void *pInitializationParametersData, - /* [annotation] */ _In_ SIZE_T InitializationParametersDataSizeInBytes) = 0; virtual void STDMETHODCALLTYPE ExecuteMetaCommand( - /* [annotation] */ _In_ ID3D12MetaCommand *pMetaCommand, - /* [annotation] */ _In_reads_bytes_opt_(ExecutionParametersDataSizeInBytes) const void *pExecutionParametersData, - /* [annotation] */ _In_ SIZE_T ExecutionParametersDataSizeInBytes) = 0; virtual void STDMETHODCALLTYPE BuildRaytracingAccelerationStructure( - /* [annotation] */ _In_ const D3D12_BUILD_RAYTRACING_ACCELERATION_STRUCTURE_DESC *pDesc, - /* [annotation] */ _In_ UINT NumPostbuildInfoDescs, - /* [annotation] */ _In_reads_opt_(NumPostbuildInfoDescs) const D3D12_RAYTRACING_ACCELERATION_STRUCTURE_POSTBUILD_INFO_DESC *pPostbuildInfoDescs) = 0; virtual void STDMETHODCALLTYPE EmitRaytracingAccelerationStructurePostbuildInfo( - /* [annotation] */ _In_ const D3D12_RAYTRACING_ACCELERATION_STRUCTURE_POSTBUILD_INFO_DESC *pDesc, - /* [annotation] */ _In_ UINT NumSourceAccelerationStructures, - /* [annotation] */ _In_reads_( NumSourceAccelerationStructures ) const D3D12_GPU_VIRTUAL_ADDRESS *pSourceAccelerationStructureData) = 0; virtual void STDMETHODCALLTYPE CopyRaytracingAccelerationStructure( - /* [annotation] */ _In_ D3D12_GPU_VIRTUAL_ADDRESS DestAccelerationStructureData, - /* [annotation] */ _In_ D3D12_GPU_VIRTUAL_ADDRESS SourceAccelerationStructureData, - /* [annotation] */ _In_ D3D12_RAYTRACING_ACCELERATION_STRUCTURE_COPY_MODE Mode) = 0; virtual void STDMETHODCALLTYPE SetPipelineState1( - /* [annotation] */ _In_ ID3D12StateObject *pStateObject) = 0; virtual void STDMETHODCALLTYPE DispatchRays( - /* [annotation] */ _In_ const D3D12_DISPATCH_RAYS_DESC *pDesc) = 0; }; @@ -22413,9 +20145,7 @@ EXTERN_C const IID IID_ID3D12GraphicsCommandList4; DECLSPEC_XFGVIRT(IUnknown, QueryInterface) HRESULT ( STDMETHODCALLTYPE *QueryInterface )( ID3D12GraphicsCommandList4 * This, - /* [annotation][in] */ - _In_ REFIID riid, - /* [annotation][iid_is][out] */ + REFIID riid, _COM_Outptr_ void **ppvObject); DECLSPEC_XFGVIRT(IUnknown, AddRef) @@ -22429,43 +20159,32 @@ EXTERN_C const IID IID_ID3D12GraphicsCommandList4; DECLSPEC_XFGVIRT(ID3D12Object, GetPrivateData) HRESULT ( STDMETHODCALLTYPE *GetPrivateData )( ID3D12GraphicsCommandList4 * This, - /* [annotation] */ _In_ REFGUID guid, - /* [annotation] */ _Inout_ UINT *pDataSize, - /* [annotation] */ _Out_writes_bytes_opt_( *pDataSize ) void *pData); DECLSPEC_XFGVIRT(ID3D12Object, SetPrivateData) HRESULT ( STDMETHODCALLTYPE *SetPrivateData )( ID3D12GraphicsCommandList4 * This, - /* [annotation] */ _In_ REFGUID guid, - /* [annotation] */ _In_ UINT DataSize, - /* [annotation] */ _In_reads_bytes_opt_( DataSize ) const void *pData); DECLSPEC_XFGVIRT(ID3D12Object, SetPrivateDataInterface) HRESULT ( STDMETHODCALLTYPE *SetPrivateDataInterface )( ID3D12GraphicsCommandList4 * This, - /* [annotation] */ _In_ REFGUID guid, - /* [annotation] */ _In_opt_ const IUnknown *pData); DECLSPEC_XFGVIRT(ID3D12Object, SetName) HRESULT ( STDMETHODCALLTYPE *SetName )( ID3D12GraphicsCommandList4 * This, - /* [annotation] */ _In_z_ LPCWSTR Name); DECLSPEC_XFGVIRT(ID3D12DeviceChild, GetDevice) HRESULT ( STDMETHODCALLTYPE *GetDevice )( ID3D12GraphicsCommandList4 * This, - /* [annotation][in] */ - _In_ REFIID riid, - /* [annotation][iid_is][out] */ + REFIID riid, _COM_Outptr_opt_ void **ppvDevice); DECLSPEC_XFGVIRT(ID3D12CommandList, GetType) @@ -22479,60 +20198,43 @@ EXTERN_C const IID IID_ID3D12GraphicsCommandList4; DECLSPEC_XFGVIRT(ID3D12GraphicsCommandList, Reset) HRESULT ( STDMETHODCALLTYPE *Reset )( ID3D12GraphicsCommandList4 * This, - /* [annotation] */ _In_ ID3D12CommandAllocator *pAllocator, - /* [annotation] */ _In_opt_ ID3D12PipelineState *pInitialState); DECLSPEC_XFGVIRT(ID3D12GraphicsCommandList, ClearState) void ( STDMETHODCALLTYPE *ClearState )( ID3D12GraphicsCommandList4 * This, - /* [annotation] */ _In_opt_ ID3D12PipelineState *pPipelineState); DECLSPEC_XFGVIRT(ID3D12GraphicsCommandList, DrawInstanced) void ( STDMETHODCALLTYPE *DrawInstanced )( ID3D12GraphicsCommandList4 * This, - /* [annotation] */ _In_ UINT VertexCountPerInstance, - /* [annotation] */ _In_ UINT InstanceCount, - /* [annotation] */ _In_ UINT StartVertexLocation, - /* [annotation] */ _In_ UINT StartInstanceLocation); DECLSPEC_XFGVIRT(ID3D12GraphicsCommandList, DrawIndexedInstanced) void ( STDMETHODCALLTYPE *DrawIndexedInstanced )( ID3D12GraphicsCommandList4 * This, - /* [annotation] */ _In_ UINT IndexCountPerInstance, - /* [annotation] */ _In_ UINT InstanceCount, - /* [annotation] */ _In_ UINT StartIndexLocation, - /* [annotation] */ _In_ INT BaseVertexLocation, - /* [annotation] */ _In_ UINT StartInstanceLocation); DECLSPEC_XFGVIRT(ID3D12GraphicsCommandList, Dispatch) void ( STDMETHODCALLTYPE *Dispatch )( ID3D12GraphicsCommandList4 * This, - /* [annotation] */ _In_ UINT ThreadGroupCountX, - /* [annotation] */ _In_ UINT ThreadGroupCountY, - /* [annotation] */ _In_ UINT ThreadGroupCountZ); DECLSPEC_XFGVIRT(ID3D12GraphicsCommandList, CopyBufferRegion) void ( STDMETHODCALLTYPE *CopyBufferRegion )( ID3D12GraphicsCommandList4 * This, - /* [annotation] */ _In_ ID3D12Resource *pDstBuffer, UINT64 DstOffset, - /* [annotation] */ _In_ ID3D12Resource *pSrcBuffer, UINT64 SrcOffset, UINT64 NumBytes); @@ -22540,34 +20242,25 @@ EXTERN_C const IID IID_ID3D12GraphicsCommandList4; DECLSPEC_XFGVIRT(ID3D12GraphicsCommandList, CopyTextureRegion) void ( STDMETHODCALLTYPE *CopyTextureRegion )( ID3D12GraphicsCommandList4 * This, - /* [annotation] */ _In_ const D3D12_TEXTURE_COPY_LOCATION *pDst, UINT DstX, UINT DstY, UINT DstZ, - /* [annotation] */ _In_ const D3D12_TEXTURE_COPY_LOCATION *pSrc, - /* [annotation] */ _In_opt_ const D3D12_BOX *pSrcBox); DECLSPEC_XFGVIRT(ID3D12GraphicsCommandList, CopyResource) void ( STDMETHODCALLTYPE *CopyResource )( ID3D12GraphicsCommandList4 * This, - /* [annotation] */ _In_ ID3D12Resource *pDstResource, - /* [annotation] */ _In_ ID3D12Resource *pSrcResource); DECLSPEC_XFGVIRT(ID3D12GraphicsCommandList, CopyTiles) void ( STDMETHODCALLTYPE *CopyTiles )( ID3D12GraphicsCommandList4 * This, - /* [annotation] */ _In_ ID3D12Resource *pTiledResource, - /* [annotation] */ _In_ const D3D12_TILED_RESOURCE_COORDINATE *pTileRegionStartCoordinate, - /* [annotation] */ _In_ const D3D12_TILE_REGION_SIZE *pTileRegionSize, - /* [annotation] */ _In_ ID3D12Resource *pBuffer, UINT64 BufferStartOffsetInBytes, D3D12_TILE_COPY_FLAGS Flags); @@ -22575,356 +20268,255 @@ EXTERN_C const IID IID_ID3D12GraphicsCommandList4; DECLSPEC_XFGVIRT(ID3D12GraphicsCommandList, ResolveSubresource) void ( STDMETHODCALLTYPE *ResolveSubresource )( ID3D12GraphicsCommandList4 * This, - /* [annotation] */ _In_ ID3D12Resource *pDstResource, - /* [annotation] */ _In_ UINT DstSubresource, - /* [annotation] */ _In_ ID3D12Resource *pSrcResource, - /* [annotation] */ _In_ UINT SrcSubresource, - /* [annotation] */ _In_ DXGI_FORMAT Format); DECLSPEC_XFGVIRT(ID3D12GraphicsCommandList, IASetPrimitiveTopology) void ( STDMETHODCALLTYPE *IASetPrimitiveTopology )( ID3D12GraphicsCommandList4 * This, - /* [annotation] */ _In_ D3D12_PRIMITIVE_TOPOLOGY PrimitiveTopology); DECLSPEC_XFGVIRT(ID3D12GraphicsCommandList, RSSetViewports) void ( STDMETHODCALLTYPE *RSSetViewports )( ID3D12GraphicsCommandList4 * This, - /* [annotation] */ _In_range_(0, D3D12_VIEWPORT_AND_SCISSORRECT_OBJECT_COUNT_PER_PIPELINE) UINT NumViewports, - /* [annotation] */ _In_reads_( NumViewports) const D3D12_VIEWPORT *pViewports); DECLSPEC_XFGVIRT(ID3D12GraphicsCommandList, RSSetScissorRects) void ( STDMETHODCALLTYPE *RSSetScissorRects )( ID3D12GraphicsCommandList4 * This, - /* [annotation] */ _In_range_(0, D3D12_VIEWPORT_AND_SCISSORRECT_OBJECT_COUNT_PER_PIPELINE) UINT NumRects, - /* [annotation] */ _In_reads_( NumRects) const D3D12_RECT *pRects); DECLSPEC_XFGVIRT(ID3D12GraphicsCommandList, OMSetBlendFactor) void ( STDMETHODCALLTYPE *OMSetBlendFactor )( ID3D12GraphicsCommandList4 * This, - /* [annotation] */ _In_reads_opt_(4) const FLOAT BlendFactor[ 4 ]); DECLSPEC_XFGVIRT(ID3D12GraphicsCommandList, OMSetStencilRef) void ( STDMETHODCALLTYPE *OMSetStencilRef )( ID3D12GraphicsCommandList4 * This, - /* [annotation] */ _In_ UINT StencilRef); DECLSPEC_XFGVIRT(ID3D12GraphicsCommandList, SetPipelineState) void ( STDMETHODCALLTYPE *SetPipelineState )( ID3D12GraphicsCommandList4 * This, - /* [annotation] */ _In_ ID3D12PipelineState *pPipelineState); DECLSPEC_XFGVIRT(ID3D12GraphicsCommandList, ResourceBarrier) void ( STDMETHODCALLTYPE *ResourceBarrier )( ID3D12GraphicsCommandList4 * This, - /* [annotation] */ _In_ UINT NumBarriers, - /* [annotation] */ _In_reads_(NumBarriers) const D3D12_RESOURCE_BARRIER *pBarriers); DECLSPEC_XFGVIRT(ID3D12GraphicsCommandList, ExecuteBundle) void ( STDMETHODCALLTYPE *ExecuteBundle )( ID3D12GraphicsCommandList4 * This, - /* [annotation] */ _In_ ID3D12GraphicsCommandList *pCommandList); DECLSPEC_XFGVIRT(ID3D12GraphicsCommandList, SetDescriptorHeaps) void ( STDMETHODCALLTYPE *SetDescriptorHeaps )( ID3D12GraphicsCommandList4 * This, - /* [annotation] */ _In_ UINT NumDescriptorHeaps, - /* [annotation] */ _In_reads_(NumDescriptorHeaps) ID3D12DescriptorHeap *const *ppDescriptorHeaps); DECLSPEC_XFGVIRT(ID3D12GraphicsCommandList, SetComputeRootSignature) void ( STDMETHODCALLTYPE *SetComputeRootSignature )( ID3D12GraphicsCommandList4 * This, - /* [annotation] */ _In_opt_ ID3D12RootSignature *pRootSignature); DECLSPEC_XFGVIRT(ID3D12GraphicsCommandList, SetGraphicsRootSignature) void ( STDMETHODCALLTYPE *SetGraphicsRootSignature )( ID3D12GraphicsCommandList4 * This, - /* [annotation] */ _In_opt_ ID3D12RootSignature *pRootSignature); DECLSPEC_XFGVIRT(ID3D12GraphicsCommandList, SetComputeRootDescriptorTable) void ( STDMETHODCALLTYPE *SetComputeRootDescriptorTable )( ID3D12GraphicsCommandList4 * This, - /* [annotation] */ _In_ UINT RootParameterIndex, - /* [annotation] */ _In_ D3D12_GPU_DESCRIPTOR_HANDLE BaseDescriptor); DECLSPEC_XFGVIRT(ID3D12GraphicsCommandList, SetGraphicsRootDescriptorTable) void ( STDMETHODCALLTYPE *SetGraphicsRootDescriptorTable )( ID3D12GraphicsCommandList4 * This, - /* [annotation] */ _In_ UINT RootParameterIndex, - /* [annotation] */ _In_ D3D12_GPU_DESCRIPTOR_HANDLE BaseDescriptor); DECLSPEC_XFGVIRT(ID3D12GraphicsCommandList, SetComputeRoot32BitConstant) void ( STDMETHODCALLTYPE *SetComputeRoot32BitConstant )( ID3D12GraphicsCommandList4 * This, - /* [annotation] */ _In_ UINT RootParameterIndex, - /* [annotation] */ _In_ UINT SrcData, - /* [annotation] */ _In_ UINT DestOffsetIn32BitValues); DECLSPEC_XFGVIRT(ID3D12GraphicsCommandList, SetGraphicsRoot32BitConstant) void ( STDMETHODCALLTYPE *SetGraphicsRoot32BitConstant )( ID3D12GraphicsCommandList4 * This, - /* [annotation] */ _In_ UINT RootParameterIndex, - /* [annotation] */ _In_ UINT SrcData, - /* [annotation] */ _In_ UINT DestOffsetIn32BitValues); DECLSPEC_XFGVIRT(ID3D12GraphicsCommandList, SetComputeRoot32BitConstants) void ( STDMETHODCALLTYPE *SetComputeRoot32BitConstants )( ID3D12GraphicsCommandList4 * This, - /* [annotation] */ _In_ UINT RootParameterIndex, - /* [annotation] */ _In_ UINT Num32BitValuesToSet, - /* [annotation] */ _In_reads_(Num32BitValuesToSet*sizeof(UINT)) const void *pSrcData, - /* [annotation] */ _In_ UINT DestOffsetIn32BitValues); DECLSPEC_XFGVIRT(ID3D12GraphicsCommandList, SetGraphicsRoot32BitConstants) void ( STDMETHODCALLTYPE *SetGraphicsRoot32BitConstants )( ID3D12GraphicsCommandList4 * This, - /* [annotation] */ _In_ UINT RootParameterIndex, - /* [annotation] */ _In_ UINT Num32BitValuesToSet, - /* [annotation] */ _In_reads_(Num32BitValuesToSet*sizeof(UINT)) const void *pSrcData, - /* [annotation] */ _In_ UINT DestOffsetIn32BitValues); DECLSPEC_XFGVIRT(ID3D12GraphicsCommandList, SetComputeRootConstantBufferView) void ( STDMETHODCALLTYPE *SetComputeRootConstantBufferView )( ID3D12GraphicsCommandList4 * This, - /* [annotation] */ _In_ UINT RootParameterIndex, - /* [annotation] */ _In_ D3D12_GPU_VIRTUAL_ADDRESS BufferLocation); DECLSPEC_XFGVIRT(ID3D12GraphicsCommandList, SetGraphicsRootConstantBufferView) void ( STDMETHODCALLTYPE *SetGraphicsRootConstantBufferView )( ID3D12GraphicsCommandList4 * This, - /* [annotation] */ _In_ UINT RootParameterIndex, - /* [annotation] */ _In_ D3D12_GPU_VIRTUAL_ADDRESS BufferLocation); DECLSPEC_XFGVIRT(ID3D12GraphicsCommandList, SetComputeRootShaderResourceView) void ( STDMETHODCALLTYPE *SetComputeRootShaderResourceView )( ID3D12GraphicsCommandList4 * This, - /* [annotation] */ _In_ UINT RootParameterIndex, - /* [annotation] */ _In_ D3D12_GPU_VIRTUAL_ADDRESS BufferLocation); DECLSPEC_XFGVIRT(ID3D12GraphicsCommandList, SetGraphicsRootShaderResourceView) void ( STDMETHODCALLTYPE *SetGraphicsRootShaderResourceView )( ID3D12GraphicsCommandList4 * This, - /* [annotation] */ _In_ UINT RootParameterIndex, - /* [annotation] */ _In_ D3D12_GPU_VIRTUAL_ADDRESS BufferLocation); DECLSPEC_XFGVIRT(ID3D12GraphicsCommandList, SetComputeRootUnorderedAccessView) void ( STDMETHODCALLTYPE *SetComputeRootUnorderedAccessView )( ID3D12GraphicsCommandList4 * This, - /* [annotation] */ _In_ UINT RootParameterIndex, - /* [annotation] */ _In_ D3D12_GPU_VIRTUAL_ADDRESS BufferLocation); DECLSPEC_XFGVIRT(ID3D12GraphicsCommandList, SetGraphicsRootUnorderedAccessView) void ( STDMETHODCALLTYPE *SetGraphicsRootUnorderedAccessView )( ID3D12GraphicsCommandList4 * This, - /* [annotation] */ _In_ UINT RootParameterIndex, - /* [annotation] */ _In_ D3D12_GPU_VIRTUAL_ADDRESS BufferLocation); DECLSPEC_XFGVIRT(ID3D12GraphicsCommandList, IASetIndexBuffer) void ( STDMETHODCALLTYPE *IASetIndexBuffer )( ID3D12GraphicsCommandList4 * This, - /* [annotation] */ _In_opt_ const D3D12_INDEX_BUFFER_VIEW *pView); DECLSPEC_XFGVIRT(ID3D12GraphicsCommandList, IASetVertexBuffers) void ( STDMETHODCALLTYPE *IASetVertexBuffers )( ID3D12GraphicsCommandList4 * This, - /* [annotation] */ _In_ UINT StartSlot, - /* [annotation] */ _In_ UINT NumViews, - /* [annotation] */ _In_reads_opt_(NumViews) const D3D12_VERTEX_BUFFER_VIEW *pViews); DECLSPEC_XFGVIRT(ID3D12GraphicsCommandList, SOSetTargets) void ( STDMETHODCALLTYPE *SOSetTargets )( ID3D12GraphicsCommandList4 * This, - /* [annotation] */ _In_ UINT StartSlot, - /* [annotation] */ _In_ UINT NumViews, - /* [annotation] */ _In_reads_opt_(NumViews) const D3D12_STREAM_OUTPUT_BUFFER_VIEW *pViews); DECLSPEC_XFGVIRT(ID3D12GraphicsCommandList, OMSetRenderTargets) void ( STDMETHODCALLTYPE *OMSetRenderTargets )( ID3D12GraphicsCommandList4 * This, - /* [annotation] */ _In_ UINT NumRenderTargetDescriptors, - /* [annotation] */ _In_opt_ const D3D12_CPU_DESCRIPTOR_HANDLE *pRenderTargetDescriptors, - /* [annotation] */ _In_ BOOL RTsSingleHandleToDescriptorRange, - /* [annotation] */ _In_opt_ const D3D12_CPU_DESCRIPTOR_HANDLE *pDepthStencilDescriptor); DECLSPEC_XFGVIRT(ID3D12GraphicsCommandList, ClearDepthStencilView) void ( STDMETHODCALLTYPE *ClearDepthStencilView )( ID3D12GraphicsCommandList4 * This, - /* [annotation] */ _In_ D3D12_CPU_DESCRIPTOR_HANDLE DepthStencilView, - /* [annotation] */ _In_ D3D12_CLEAR_FLAGS ClearFlags, - /* [annotation] */ _In_ FLOAT Depth, - /* [annotation] */ _In_ UINT8 Stencil, - /* [annotation] */ _In_ UINT NumRects, - /* [annotation] */ _In_reads_(NumRects) const D3D12_RECT *pRects); DECLSPEC_XFGVIRT(ID3D12GraphicsCommandList, ClearRenderTargetView) void ( STDMETHODCALLTYPE *ClearRenderTargetView )( ID3D12GraphicsCommandList4 * This, - /* [annotation] */ _In_ D3D12_CPU_DESCRIPTOR_HANDLE RenderTargetView, - /* [annotation] */ _In_ const FLOAT ColorRGBA[ 4 ], - /* [annotation] */ _In_ UINT NumRects, - /* [annotation] */ _In_reads_(NumRects) const D3D12_RECT *pRects); DECLSPEC_XFGVIRT(ID3D12GraphicsCommandList, ClearUnorderedAccessViewUint) void ( STDMETHODCALLTYPE *ClearUnorderedAccessViewUint )( ID3D12GraphicsCommandList4 * This, - /* [annotation] */ _In_ D3D12_GPU_DESCRIPTOR_HANDLE ViewGPUHandleInCurrentHeap, - /* [annotation] */ _In_ D3D12_CPU_DESCRIPTOR_HANDLE ViewCPUHandle, - /* [annotation] */ _In_ ID3D12Resource *pResource, - /* [annotation] */ _In_ const UINT Values[ 4 ], - /* [annotation] */ _In_ UINT NumRects, - /* [annotation] */ _In_reads_(NumRects) const D3D12_RECT *pRects); DECLSPEC_XFGVIRT(ID3D12GraphicsCommandList, ClearUnorderedAccessViewFloat) void ( STDMETHODCALLTYPE *ClearUnorderedAccessViewFloat )( ID3D12GraphicsCommandList4 * This, - /* [annotation] */ _In_ D3D12_GPU_DESCRIPTOR_HANDLE ViewGPUHandleInCurrentHeap, - /* [annotation] */ _In_ D3D12_CPU_DESCRIPTOR_HANDLE ViewCPUHandle, - /* [annotation] */ _In_ ID3D12Resource *pResource, - /* [annotation] */ _In_ const FLOAT Values[ 4 ], - /* [annotation] */ _In_ UINT NumRects, - /* [annotation] */ _In_reads_(NumRects) const D3D12_RECT *pRects); DECLSPEC_XFGVIRT(ID3D12GraphicsCommandList, DiscardResource) void ( STDMETHODCALLTYPE *DiscardResource )( ID3D12GraphicsCommandList4 * This, - /* [annotation] */ _In_ ID3D12Resource *pResource, - /* [annotation] */ _In_opt_ const D3D12_DISCARD_REGION *pRegion); DECLSPEC_XFGVIRT(ID3D12GraphicsCommandList, BeginQuery) void ( STDMETHODCALLTYPE *BeginQuery )( ID3D12GraphicsCommandList4 * This, - /* [annotation] */ _In_ ID3D12QueryHeap *pQueryHeap, - /* [annotation] */ _In_ D3D12_QUERY_TYPE Type, - /* [annotation] */ _In_ UINT Index); DECLSPEC_XFGVIRT(ID3D12GraphicsCommandList, EndQuery) void ( STDMETHODCALLTYPE *EndQuery )( ID3D12GraphicsCommandList4 * This, - /* [annotation] */ _In_ ID3D12QueryHeap *pQueryHeap, - /* [annotation] */ _In_ D3D12_QUERY_TYPE Type, - /* [annotation] */ _In_ UINT Index); DECLSPEC_XFGVIRT(ID3D12GraphicsCommandList, ResolveQueryData) void ( STDMETHODCALLTYPE *ResolveQueryData )( ID3D12GraphicsCommandList4 * This, - /* [annotation] */ _In_ ID3D12QueryHeap *pQueryHeap, - /* [annotation] */ _In_ D3D12_QUERY_TYPE Type, - /* [annotation] */ _In_ UINT StartIndex, - /* [annotation] */ _In_ UINT NumQueries, - /* [annotation] */ _In_ ID3D12Resource *pDestinationBuffer, - /* [annotation] */ _In_ UINT64 AlignedDestinationBufferOffset); DECLSPEC_XFGVIRT(ID3D12GraphicsCommandList, SetPredication) void ( STDMETHODCALLTYPE *SetPredication )( ID3D12GraphicsCommandList4 * This, - /* [annotation] */ _In_opt_ ID3D12Resource *pBuffer, - /* [annotation] */ _In_ UINT64 AlignedBufferOffset, - /* [annotation] */ _In_ D3D12_PREDICATION_OP Operation); DECLSPEC_XFGVIRT(ID3D12GraphicsCommandList, SetMarker) void ( STDMETHODCALLTYPE *SetMarker )( ID3D12GraphicsCommandList4 * This, UINT Metadata, - /* [annotation] */ _In_reads_bytes_opt_(Size) const void *pData, UINT Size); @@ -22932,7 +20524,6 @@ EXTERN_C const IID IID_ID3D12GraphicsCommandList4; void ( STDMETHODCALLTYPE *BeginEvent )( ID3D12GraphicsCommandList4 * This, UINT Metadata, - /* [annotation] */ _In_reads_bytes_opt_(Size) const void *pData, UINT Size); @@ -22943,118 +20534,83 @@ EXTERN_C const IID IID_ID3D12GraphicsCommandList4; DECLSPEC_XFGVIRT(ID3D12GraphicsCommandList, ExecuteIndirect) void ( STDMETHODCALLTYPE *ExecuteIndirect )( ID3D12GraphicsCommandList4 * This, - /* [annotation] */ _In_ ID3D12CommandSignature *pCommandSignature, - /* [annotation] */ _In_ UINT MaxCommandCount, - /* [annotation] */ _In_ ID3D12Resource *pArgumentBuffer, - /* [annotation] */ _In_ UINT64 ArgumentBufferOffset, - /* [annotation] */ _In_opt_ ID3D12Resource *pCountBuffer, - /* [annotation] */ _In_ UINT64 CountBufferOffset); DECLSPEC_XFGVIRT(ID3D12GraphicsCommandList1, AtomicCopyBufferUINT) void ( STDMETHODCALLTYPE *AtomicCopyBufferUINT )( ID3D12GraphicsCommandList4 * This, - /* [annotation] */ _In_ ID3D12Resource *pDstBuffer, UINT64 DstOffset, - /* [annotation] */ _In_ ID3D12Resource *pSrcBuffer, UINT64 SrcOffset, UINT Dependencies, - /* [annotation] */ _In_reads_(Dependencies) ID3D12Resource *const *ppDependentResources, - /* [annotation] */ _In_reads_(Dependencies) const D3D12_SUBRESOURCE_RANGE_UINT64 *pDependentSubresourceRanges); DECLSPEC_XFGVIRT(ID3D12GraphicsCommandList1, AtomicCopyBufferUINT64) void ( STDMETHODCALLTYPE *AtomicCopyBufferUINT64 )( ID3D12GraphicsCommandList4 * This, - /* [annotation] */ _In_ ID3D12Resource *pDstBuffer, UINT64 DstOffset, - /* [annotation] */ _In_ ID3D12Resource *pSrcBuffer, UINT64 SrcOffset, UINT Dependencies, - /* [annotation] */ _In_reads_(Dependencies) ID3D12Resource *const *ppDependentResources, - /* [annotation] */ _In_reads_(Dependencies) const D3D12_SUBRESOURCE_RANGE_UINT64 *pDependentSubresourceRanges); DECLSPEC_XFGVIRT(ID3D12GraphicsCommandList1, OMSetDepthBounds) void ( STDMETHODCALLTYPE *OMSetDepthBounds )( ID3D12GraphicsCommandList4 * This, - /* [annotation] */ _In_ FLOAT Min, - /* [annotation] */ _In_ FLOAT Max); DECLSPEC_XFGVIRT(ID3D12GraphicsCommandList1, SetSamplePositions) void ( STDMETHODCALLTYPE *SetSamplePositions )( ID3D12GraphicsCommandList4 * This, - /* [annotation] */ _In_ UINT NumSamplesPerPixel, - /* [annotation] */ _In_ UINT NumPixels, - /* [annotation] */ _In_reads_(NumSamplesPerPixel*NumPixels) D3D12_SAMPLE_POSITION *pSamplePositions); DECLSPEC_XFGVIRT(ID3D12GraphicsCommandList1, ResolveSubresourceRegion) void ( STDMETHODCALLTYPE *ResolveSubresourceRegion )( ID3D12GraphicsCommandList4 * This, - /* [annotation] */ _In_ ID3D12Resource *pDstResource, - /* [annotation] */ _In_ UINT DstSubresource, - /* [annotation] */ _In_ UINT DstX, - /* [annotation] */ _In_ UINT DstY, - /* [annotation] */ _In_ ID3D12Resource *pSrcResource, - /* [annotation] */ _In_ UINT SrcSubresource, - /* [annotation] */ _In_opt_ D3D12_RECT *pSrcRect, - /* [annotation] */ _In_ DXGI_FORMAT Format, - /* [annotation] */ _In_ D3D12_RESOLVE_MODE ResolveMode); DECLSPEC_XFGVIRT(ID3D12GraphicsCommandList1, SetViewInstanceMask) void ( STDMETHODCALLTYPE *SetViewInstanceMask )( ID3D12GraphicsCommandList4 * This, - /* [annotation] */ _In_ UINT Mask); DECLSPEC_XFGVIRT(ID3D12GraphicsCommandList2, WriteBufferImmediate) void ( STDMETHODCALLTYPE *WriteBufferImmediate )( ID3D12GraphicsCommandList4 * This, UINT Count, - /* [annotation] */ _In_reads_(Count) const D3D12_WRITEBUFFERIMMEDIATE_PARAMETER *pParams, - /* [annotation] */ _In_reads_opt_(Count) const D3D12_WRITEBUFFERIMMEDIATE_MODE *pModes); DECLSPEC_XFGVIRT(ID3D12GraphicsCommandList3, SetProtectedResourceSession) void ( STDMETHODCALLTYPE *SetProtectedResourceSession )( ID3D12GraphicsCommandList4 * This, - /* [annotation] */ _In_opt_ ID3D12ProtectedResourceSession *pProtectedResourceSession); DECLSPEC_XFGVIRT(ID3D12GraphicsCommandList4, BeginRenderPass) void ( STDMETHODCALLTYPE *BeginRenderPass )( ID3D12GraphicsCommandList4 * This, - /* [annotation] */ _In_ UINT NumRenderTargets, - /* [annotation] */ _In_reads_opt_(NumRenderTargets) const D3D12_RENDER_PASS_RENDER_TARGET_DESC *pRenderTargets, - /* [annotation] */ _In_opt_ const D3D12_RENDER_PASS_DEPTH_STENCIL_DESC *pDepthStencil, D3D12_RENDER_PASS_FLAGS Flags); @@ -23065,63 +20621,46 @@ EXTERN_C const IID IID_ID3D12GraphicsCommandList4; DECLSPEC_XFGVIRT(ID3D12GraphicsCommandList4, InitializeMetaCommand) void ( STDMETHODCALLTYPE *InitializeMetaCommand )( ID3D12GraphicsCommandList4 * This, - /* [annotation] */ _In_ ID3D12MetaCommand *pMetaCommand, - /* [annotation] */ _In_reads_bytes_opt_(InitializationParametersDataSizeInBytes) const void *pInitializationParametersData, - /* [annotation] */ _In_ SIZE_T InitializationParametersDataSizeInBytes); DECLSPEC_XFGVIRT(ID3D12GraphicsCommandList4, ExecuteMetaCommand) void ( STDMETHODCALLTYPE *ExecuteMetaCommand )( ID3D12GraphicsCommandList4 * This, - /* [annotation] */ _In_ ID3D12MetaCommand *pMetaCommand, - /* [annotation] */ _In_reads_bytes_opt_(ExecutionParametersDataSizeInBytes) const void *pExecutionParametersData, - /* [annotation] */ _In_ SIZE_T ExecutionParametersDataSizeInBytes); DECLSPEC_XFGVIRT(ID3D12GraphicsCommandList4, BuildRaytracingAccelerationStructure) void ( STDMETHODCALLTYPE *BuildRaytracingAccelerationStructure )( ID3D12GraphicsCommandList4 * This, - /* [annotation] */ _In_ const D3D12_BUILD_RAYTRACING_ACCELERATION_STRUCTURE_DESC *pDesc, - /* [annotation] */ _In_ UINT NumPostbuildInfoDescs, - /* [annotation] */ _In_reads_opt_(NumPostbuildInfoDescs) const D3D12_RAYTRACING_ACCELERATION_STRUCTURE_POSTBUILD_INFO_DESC *pPostbuildInfoDescs); DECLSPEC_XFGVIRT(ID3D12GraphicsCommandList4, EmitRaytracingAccelerationStructurePostbuildInfo) void ( STDMETHODCALLTYPE *EmitRaytracingAccelerationStructurePostbuildInfo )( ID3D12GraphicsCommandList4 * This, - /* [annotation] */ _In_ const D3D12_RAYTRACING_ACCELERATION_STRUCTURE_POSTBUILD_INFO_DESC *pDesc, - /* [annotation] */ _In_ UINT NumSourceAccelerationStructures, - /* [annotation] */ _In_reads_( NumSourceAccelerationStructures ) const D3D12_GPU_VIRTUAL_ADDRESS *pSourceAccelerationStructureData); DECLSPEC_XFGVIRT(ID3D12GraphicsCommandList4, CopyRaytracingAccelerationStructure) void ( STDMETHODCALLTYPE *CopyRaytracingAccelerationStructure )( ID3D12GraphicsCommandList4 * This, - /* [annotation] */ _In_ D3D12_GPU_VIRTUAL_ADDRESS DestAccelerationStructureData, - /* [annotation] */ _In_ D3D12_GPU_VIRTUAL_ADDRESS SourceAccelerationStructureData, - /* [annotation] */ _In_ D3D12_RAYTRACING_ACCELERATION_STRUCTURE_COPY_MODE Mode); DECLSPEC_XFGVIRT(ID3D12GraphicsCommandList4, SetPipelineState1) void ( STDMETHODCALLTYPE *SetPipelineState1 )( ID3D12GraphicsCommandList4 * This, - /* [annotation] */ _In_ ID3D12StateObject *pStateObject); DECLSPEC_XFGVIRT(ID3D12GraphicsCommandList4, DispatchRays) void ( STDMETHODCALLTYPE *DispatchRays )( ID3D12GraphicsCommandList4 * This, - /* [annotation] */ _In_ const D3D12_DISPATCH_RAYS_DESC *pDesc); END_INTERFACE @@ -23387,7 +20926,7 @@ EXTERN_C const IID IID_ID3D12GraphicsCommandList4; #endif /* __ID3D12GraphicsCommandList4_INTERFACE_DEFINED__ */ -/* interface __MIDL_itf_d3d12_0000_0050 */ +/* interface __MIDL_itf_d3d12_0000_0051 */ /* [local] */ typedef @@ -23417,10 +20956,180 @@ typedef struct D3D12_SHADER_CACHE_SESSION_DESC UINT64 Version; } D3D12_SHADER_CACHE_SESSION_DESC; +typedef +enum D3D12_BARRIER_LAYOUT + { + D3D12_BARRIER_LAYOUT_UNDEFINED = 0xffffffff, + D3D12_BARRIER_LAYOUT_COMMON = 0, + D3D12_BARRIER_LAYOUT_PRESENT = 0, + D3D12_BARRIER_LAYOUT_GENERIC_READ = ( D3D12_BARRIER_LAYOUT_PRESENT + 1 ) , + D3D12_BARRIER_LAYOUT_RENDER_TARGET = ( D3D12_BARRIER_LAYOUT_GENERIC_READ + 1 ) , + D3D12_BARRIER_LAYOUT_UNORDERED_ACCESS = ( D3D12_BARRIER_LAYOUT_RENDER_TARGET + 1 ) , + D3D12_BARRIER_LAYOUT_DEPTH_STENCIL_WRITE = ( D3D12_BARRIER_LAYOUT_UNORDERED_ACCESS + 1 ) , + D3D12_BARRIER_LAYOUT_DEPTH_STENCIL_READ = ( D3D12_BARRIER_LAYOUT_DEPTH_STENCIL_WRITE + 1 ) , + D3D12_BARRIER_LAYOUT_SHADER_RESOURCE = ( D3D12_BARRIER_LAYOUT_DEPTH_STENCIL_READ + 1 ) , + D3D12_BARRIER_LAYOUT_COPY_SOURCE = ( D3D12_BARRIER_LAYOUT_SHADER_RESOURCE + 1 ) , + D3D12_BARRIER_LAYOUT_COPY_DEST = ( D3D12_BARRIER_LAYOUT_COPY_SOURCE + 1 ) , + D3D12_BARRIER_LAYOUT_RESOLVE_SOURCE = ( D3D12_BARRIER_LAYOUT_COPY_DEST + 1 ) , + D3D12_BARRIER_LAYOUT_RESOLVE_DEST = ( D3D12_BARRIER_LAYOUT_RESOLVE_SOURCE + 1 ) , + D3D12_BARRIER_LAYOUT_SHADING_RATE_SOURCE = ( D3D12_BARRIER_LAYOUT_RESOLVE_DEST + 1 ) , + D3D12_BARRIER_LAYOUT_VIDEO_DECODE_READ = ( D3D12_BARRIER_LAYOUT_SHADING_RATE_SOURCE + 1 ) , + D3D12_BARRIER_LAYOUT_VIDEO_DECODE_WRITE = ( D3D12_BARRIER_LAYOUT_VIDEO_DECODE_READ + 1 ) , + D3D12_BARRIER_LAYOUT_VIDEO_PROCESS_READ = ( D3D12_BARRIER_LAYOUT_VIDEO_DECODE_WRITE + 1 ) , + D3D12_BARRIER_LAYOUT_VIDEO_PROCESS_WRITE = ( D3D12_BARRIER_LAYOUT_VIDEO_PROCESS_READ + 1 ) , + D3D12_BARRIER_LAYOUT_VIDEO_ENCODE_READ = ( D3D12_BARRIER_LAYOUT_VIDEO_PROCESS_WRITE + 1 ) , + D3D12_BARRIER_LAYOUT_VIDEO_ENCODE_WRITE = ( D3D12_BARRIER_LAYOUT_VIDEO_ENCODE_READ + 1 ) , + D3D12_BARRIER_LAYOUT_DIRECT_QUEUE_COMMON = ( D3D12_BARRIER_LAYOUT_VIDEO_ENCODE_WRITE + 1 ) , + D3D12_BARRIER_LAYOUT_DIRECT_QUEUE_GENERIC_READ = ( D3D12_BARRIER_LAYOUT_DIRECT_QUEUE_COMMON + 1 ) , + D3D12_BARRIER_LAYOUT_DIRECT_QUEUE_UNORDERED_ACCESS = ( D3D12_BARRIER_LAYOUT_DIRECT_QUEUE_GENERIC_READ + 1 ) , + D3D12_BARRIER_LAYOUT_DIRECT_QUEUE_SHADER_RESOURCE = ( D3D12_BARRIER_LAYOUT_DIRECT_QUEUE_UNORDERED_ACCESS + 1 ) , + D3D12_BARRIER_LAYOUT_DIRECT_QUEUE_COPY_SOURCE = ( D3D12_BARRIER_LAYOUT_DIRECT_QUEUE_SHADER_RESOURCE + 1 ) , + D3D12_BARRIER_LAYOUT_DIRECT_QUEUE_COPY_DEST = ( D3D12_BARRIER_LAYOUT_DIRECT_QUEUE_COPY_SOURCE + 1 ) , + D3D12_BARRIER_LAYOUT_COMPUTE_QUEUE_COMMON = ( D3D12_BARRIER_LAYOUT_DIRECT_QUEUE_COPY_DEST + 1 ) , + D3D12_BARRIER_LAYOUT_COMPUTE_QUEUE_GENERIC_READ = ( D3D12_BARRIER_LAYOUT_COMPUTE_QUEUE_COMMON + 1 ) , + D3D12_BARRIER_LAYOUT_COMPUTE_QUEUE_UNORDERED_ACCESS = ( D3D12_BARRIER_LAYOUT_COMPUTE_QUEUE_GENERIC_READ + 1 ) , + D3D12_BARRIER_LAYOUT_COMPUTE_QUEUE_SHADER_RESOURCE = ( D3D12_BARRIER_LAYOUT_COMPUTE_QUEUE_UNORDERED_ACCESS + 1 ) , + D3D12_BARRIER_LAYOUT_COMPUTE_QUEUE_COPY_SOURCE = ( D3D12_BARRIER_LAYOUT_COMPUTE_QUEUE_SHADER_RESOURCE + 1 ) , + D3D12_BARRIER_LAYOUT_COMPUTE_QUEUE_COPY_DEST = ( D3D12_BARRIER_LAYOUT_COMPUTE_QUEUE_COPY_SOURCE + 1 ) , + D3D12_BARRIER_LAYOUT_VIDEO_QUEUE_COMMON = ( D3D12_BARRIER_LAYOUT_COMPUTE_QUEUE_COPY_DEST + 1 ) + } D3D12_BARRIER_LAYOUT; + +typedef +enum D3D12_BARRIER_SYNC + { + D3D12_BARRIER_SYNC_NONE = 0, + D3D12_BARRIER_SYNC_ALL = 0x1, + D3D12_BARRIER_SYNC_DRAW = 0x2, + D3D12_BARRIER_SYNC_INDEX_INPUT = 0x4, + D3D12_BARRIER_SYNC_VERTEX_SHADING = 0x8, + D3D12_BARRIER_SYNC_PIXEL_SHADING = 0x10, + D3D12_BARRIER_SYNC_DEPTH_STENCIL = 0x20, + D3D12_BARRIER_SYNC_RENDER_TARGET = 0x40, + D3D12_BARRIER_SYNC_COMPUTE_SHADING = 0x80, + D3D12_BARRIER_SYNC_RAYTRACING = 0x100, + D3D12_BARRIER_SYNC_COPY = 0x200, + D3D12_BARRIER_SYNC_RESOLVE = 0x400, + D3D12_BARRIER_SYNC_EXECUTE_INDIRECT = 0x800, + D3D12_BARRIER_SYNC_PREDICATION = 0x800, + D3D12_BARRIER_SYNC_ALL_SHADING = 0x1000, + D3D12_BARRIER_SYNC_NON_PIXEL_SHADING = 0x2000, + D3D12_BARRIER_SYNC_EMIT_RAYTRACING_ACCELERATION_STRUCTURE_POSTBUILD_INFO = 0x4000, + D3D12_BARRIER_SYNC_CLEAR_UNORDERED_ACCESS_VIEW = 0x8000, + D3D12_BARRIER_SYNC_VIDEO_DECODE = 0x100000, + D3D12_BARRIER_SYNC_VIDEO_PROCESS = 0x200000, + D3D12_BARRIER_SYNC_VIDEO_ENCODE = 0x400000, + D3D12_BARRIER_SYNC_BUILD_RAYTRACING_ACCELERATION_STRUCTURE = 0x800000, + D3D12_BARRIER_SYNC_COPY_RAYTRACING_ACCELERATION_STRUCTURE = 0x1000000, + D3D12_BARRIER_SYNC_SPLIT = 0x80000000 + } D3D12_BARRIER_SYNC; + +DEFINE_ENUM_FLAG_OPERATORS( D3D12_BARRIER_SYNC ); +typedef +enum D3D12_BARRIER_ACCESS + { + D3D12_BARRIER_ACCESS_COMMON = 0, + D3D12_BARRIER_ACCESS_VERTEX_BUFFER = 0x1, + D3D12_BARRIER_ACCESS_CONSTANT_BUFFER = 0x2, + D3D12_BARRIER_ACCESS_INDEX_BUFFER = 0x4, + D3D12_BARRIER_ACCESS_RENDER_TARGET = 0x8, + D3D12_BARRIER_ACCESS_UNORDERED_ACCESS = 0x10, + D3D12_BARRIER_ACCESS_DEPTH_STENCIL_WRITE = 0x20, + D3D12_BARRIER_ACCESS_DEPTH_STENCIL_READ = 0x40, + D3D12_BARRIER_ACCESS_SHADER_RESOURCE = 0x80, + D3D12_BARRIER_ACCESS_STREAM_OUTPUT = 0x100, + D3D12_BARRIER_ACCESS_INDIRECT_ARGUMENT = 0x200, + D3D12_BARRIER_ACCESS_PREDICATION = 0x200, + D3D12_BARRIER_ACCESS_COPY_DEST = 0x400, + D3D12_BARRIER_ACCESS_COPY_SOURCE = 0x800, + D3D12_BARRIER_ACCESS_RESOLVE_DEST = 0x1000, + D3D12_BARRIER_ACCESS_RESOLVE_SOURCE = 0x2000, + D3D12_BARRIER_ACCESS_RAYTRACING_ACCELERATION_STRUCTURE_READ = 0x4000, + D3D12_BARRIER_ACCESS_RAYTRACING_ACCELERATION_STRUCTURE_WRITE = 0x8000, + D3D12_BARRIER_ACCESS_SHADING_RATE_SOURCE = 0x10000, + D3D12_BARRIER_ACCESS_VIDEO_DECODE_READ = 0x20000, + D3D12_BARRIER_ACCESS_VIDEO_DECODE_WRITE = 0x40000, + D3D12_BARRIER_ACCESS_VIDEO_PROCESS_READ = 0x80000, + D3D12_BARRIER_ACCESS_VIDEO_PROCESS_WRITE = 0x100000, + D3D12_BARRIER_ACCESS_VIDEO_ENCODE_READ = 0x200000, + D3D12_BARRIER_ACCESS_VIDEO_ENCODE_WRITE = 0x400000, + D3D12_BARRIER_ACCESS_NO_ACCESS = 0x80000000 + } D3D12_BARRIER_ACCESS; + +DEFINE_ENUM_FLAG_OPERATORS( D3D12_BARRIER_ACCESS ); +typedef +enum D3D12_BARRIER_TYPE + { + D3D12_BARRIER_TYPE_GLOBAL = 0, + D3D12_BARRIER_TYPE_TEXTURE = ( D3D12_BARRIER_TYPE_GLOBAL + 1 ) , + D3D12_BARRIER_TYPE_BUFFER = ( D3D12_BARRIER_TYPE_TEXTURE + 1 ) + } D3D12_BARRIER_TYPE; +typedef +enum D3D12_TEXTURE_BARRIER_FLAGS + { + D3D12_TEXTURE_BARRIER_FLAG_NONE = 0, + D3D12_TEXTURE_BARRIER_FLAG_DISCARD = 0x1 + } D3D12_TEXTURE_BARRIER_FLAGS; + +DEFINE_ENUM_FLAG_OPERATORS( D3D12_TEXTURE_BARRIER_FLAGS ); +typedef struct D3D12_BARRIER_SUBRESOURCE_RANGE + { + UINT IndexOrFirstMipLevel; + UINT NumMipLevels; + UINT FirstArraySlice; + UINT NumArraySlices; + UINT FirstPlane; + UINT NumPlanes; + } D3D12_BARRIER_SUBRESOURCE_RANGE; + +typedef struct D3D12_GLOBAL_BARRIER + { + D3D12_BARRIER_SYNC SyncBefore; + D3D12_BARRIER_SYNC SyncAfter; + D3D12_BARRIER_ACCESS AccessBefore; + D3D12_BARRIER_ACCESS AccessAfter; + } D3D12_GLOBAL_BARRIER; + +typedef struct D3D12_TEXTURE_BARRIER + { + D3D12_BARRIER_SYNC SyncBefore; + D3D12_BARRIER_SYNC SyncAfter; + D3D12_BARRIER_ACCESS AccessBefore; + D3D12_BARRIER_ACCESS AccessAfter; + D3D12_BARRIER_LAYOUT LayoutBefore; + D3D12_BARRIER_LAYOUT LayoutAfter; + _In_ ID3D12Resource *pResource; + D3D12_BARRIER_SUBRESOURCE_RANGE Subresources; + D3D12_TEXTURE_BARRIER_FLAGS Flags; + } D3D12_TEXTURE_BARRIER; + +typedef struct D3D12_BUFFER_BARRIER + { + D3D12_BARRIER_SYNC SyncBefore; + D3D12_BARRIER_SYNC SyncAfter; + D3D12_BARRIER_ACCESS AccessBefore; + D3D12_BARRIER_ACCESS AccessAfter; + _In_ ID3D12Resource *pResource; + UINT64 Offset; + UINT64 Size; + } D3D12_BUFFER_BARRIER; + +typedef struct D3D12_BARRIER_GROUP + { + D3D12_BARRIER_TYPE Type; + UINT32 NumBarriers; + union + { + _In_reads_(NumBarriers) const D3D12_GLOBAL_BARRIER *pGlobalBarriers; + _In_reads_(NumBarriers) const D3D12_TEXTURE_BARRIER *pTextureBarriers; + _In_reads_(NumBarriers) const D3D12_BUFFER_BARRIER *pBufferBarriers; + } ; + } D3D12_BARRIER_GROUP; -extern RPC_IF_HANDLE __MIDL_itf_d3d12_0000_0050_v0_0_c_ifspec; -extern RPC_IF_HANDLE __MIDL_itf_d3d12_0000_0050_v0_0_s_ifspec; + + +extern RPC_IF_HANDLE __MIDL_itf_d3d12_0000_0051_v0_0_c_ifspec; +extern RPC_IF_HANDLE __MIDL_itf_d3d12_0000_0051_v0_0_s_ifspec; #ifndef __ID3D12ShaderCacheSession_INTERFACE_DEFINED__ #define __ID3D12ShaderCacheSession_INTERFACE_DEFINED__ @@ -23443,7 +21152,6 @@ EXTERN_C const IID IID_ID3D12ShaderCacheSession; UINT KeySize, /* [annotation][out] */ _Out_writes_bytes_(*pValueSize) void *pValue, - /* [annotation] */ _Inout_ UINT *pValueSize) = 0; virtual HRESULT STDMETHODCALLTYPE StoreValue( @@ -23456,7 +21164,12 @@ EXTERN_C const IID IID_ID3D12ShaderCacheSession; virtual void STDMETHODCALLTYPE SetDeleteOnDestroy( void) = 0; +#if defined(_MSC_VER) || !defined(_WIN32) virtual D3D12_SHADER_CACHE_SESSION_DESC STDMETHODCALLTYPE GetDesc( void) = 0; +#else + virtual D3D12_SHADER_CACHE_SESSION_DESC *STDMETHODCALLTYPE GetDesc( + D3D12_SHADER_CACHE_SESSION_DESC * RetVal) = 0; +#endif }; @@ -23470,9 +21183,7 @@ EXTERN_C const IID IID_ID3D12ShaderCacheSession; DECLSPEC_XFGVIRT(IUnknown, QueryInterface) HRESULT ( STDMETHODCALLTYPE *QueryInterface )( ID3D12ShaderCacheSession * This, - /* [annotation][in] */ - _In_ REFIID riid, - /* [annotation][iid_is][out] */ + REFIID riid, _COM_Outptr_ void **ppvObject); DECLSPEC_XFGVIRT(IUnknown, AddRef) @@ -23486,43 +21197,32 @@ EXTERN_C const IID IID_ID3D12ShaderCacheSession; DECLSPEC_XFGVIRT(ID3D12Object, GetPrivateData) HRESULT ( STDMETHODCALLTYPE *GetPrivateData )( ID3D12ShaderCacheSession * This, - /* [annotation] */ _In_ REFGUID guid, - /* [annotation] */ _Inout_ UINT *pDataSize, - /* [annotation] */ _Out_writes_bytes_opt_( *pDataSize ) void *pData); DECLSPEC_XFGVIRT(ID3D12Object, SetPrivateData) HRESULT ( STDMETHODCALLTYPE *SetPrivateData )( ID3D12ShaderCacheSession * This, - /* [annotation] */ _In_ REFGUID guid, - /* [annotation] */ _In_ UINT DataSize, - /* [annotation] */ _In_reads_bytes_opt_( DataSize ) const void *pData); DECLSPEC_XFGVIRT(ID3D12Object, SetPrivateDataInterface) HRESULT ( STDMETHODCALLTYPE *SetPrivateDataInterface )( ID3D12ShaderCacheSession * This, - /* [annotation] */ _In_ REFGUID guid, - /* [annotation] */ _In_opt_ const IUnknown *pData); DECLSPEC_XFGVIRT(ID3D12Object, SetName) HRESULT ( STDMETHODCALLTYPE *SetName )( ID3D12ShaderCacheSession * This, - /* [annotation] */ _In_z_ LPCWSTR Name); DECLSPEC_XFGVIRT(ID3D12DeviceChild, GetDevice) HRESULT ( STDMETHODCALLTYPE *GetDevice )( ID3D12ShaderCacheSession * This, - /* [annotation][in] */ - _In_ REFIID riid, - /* [annotation][iid_is][out] */ + REFIID riid, _COM_Outptr_opt_ void **ppvDevice); DECLSPEC_XFGVIRT(ID3D12ShaderCacheSession, FindValue) @@ -23533,7 +21233,6 @@ EXTERN_C const IID IID_ID3D12ShaderCacheSession; UINT KeySize, /* [annotation][out] */ _Out_writes_bytes_(*pValueSize) void *pValue, - /* [annotation] */ _Inout_ UINT *pValueSize); DECLSPEC_XFGVIRT(ID3D12ShaderCacheSession, StoreValue) @@ -23551,9 +21250,17 @@ EXTERN_C const IID IID_ID3D12ShaderCacheSession; ID3D12ShaderCacheSession * This); DECLSPEC_XFGVIRT(ID3D12ShaderCacheSession, GetDesc) +#if !defined(_WIN32) D3D12_SHADER_CACHE_SESSION_DESC ( STDMETHODCALLTYPE *GetDesc )( ID3D12ShaderCacheSession * This); +#else + D3D12_SHADER_CACHE_SESSION_DESC *( STDMETHODCALLTYPE *GetDesc )( + ID3D12ShaderCacheSession * This, + D3D12_SHADER_CACHE_SESSION_DESC * RetVal); + +#endif + END_INTERFACE } ID3D12ShaderCacheSessionVtbl; @@ -23602,9 +21309,14 @@ EXTERN_C const IID IID_ID3D12ShaderCacheSession; #define ID3D12ShaderCacheSession_SetDeleteOnDestroy(This) \ ( (This)->lpVtbl -> SetDeleteOnDestroy(This) ) +#if !defined(_WIN32) #define ID3D12ShaderCacheSession_GetDesc(This) \ ( (This)->lpVtbl -> GetDesc(This) ) +#else +#define ID3D12ShaderCacheSession_GetDesc(This,RetVal) \ + ( (This)->lpVtbl -> GetDesc(This,RetVal) ) +#endif #endif /* COBJMACROS */ @@ -23613,22 +21325,11 @@ EXTERN_C const IID IID_ID3D12ShaderCacheSession; -D3D12_SHADER_CACHE_SESSION_DESC STDMETHODCALLTYPE ID3D12ShaderCacheSession_GetDesc_Proxy( - ID3D12ShaderCacheSession * This); - - -void __RPC_STUB ID3D12ShaderCacheSession_GetDesc_Stub( - IRpcStubBuffer *This, - IRpcChannelBuffer *_pRpcChannelBuffer, - PRPC_MESSAGE _pRpcMessage, - DWORD *_pdwStubPhase); - - #endif /* __ID3D12ShaderCacheSession_INTERFACE_DEFINED__ */ -/* interface __MIDL_itf_d3d12_0000_0051 */ +/* interface __MIDL_itf_d3d12_0000_0052 */ /* [local] */ typedef @@ -23652,8 +21353,8 @@ enum D3D12_SHADER_CACHE_CONTROL_FLAGS DEFINE_ENUM_FLAG_OPERATORS( D3D12_SHADER_CACHE_CONTROL_FLAGS ); -extern RPC_IF_HANDLE __MIDL_itf_d3d12_0000_0051_v0_0_c_ifspec; -extern RPC_IF_HANDLE __MIDL_itf_d3d12_0000_0051_v0_0_s_ifspec; +extern RPC_IF_HANDLE __MIDL_itf_d3d12_0000_0052_v0_0_c_ifspec; +extern RPC_IF_HANDLE __MIDL_itf_d3d12_0000_0052_v0_0_s_ifspec; #ifndef __ID3D12Device9_INTERFACE_DEFINED__ #define __ID3D12Device9_INTERFACE_DEFINED__ @@ -23671,10 +21372,8 @@ EXTERN_C const IID IID_ID3D12Device9; { public: virtual HRESULT STDMETHODCALLTYPE CreateShaderCacheSession( - /* [annotation] */ _In_ const D3D12_SHADER_CACHE_SESSION_DESC *pDesc, REFIID riid, - /* [annotation] */ _COM_Outptr_opt_ void **ppvSession) = 0; virtual HRESULT STDMETHODCALLTYPE ShaderCacheControl( @@ -23682,12 +21381,9 @@ EXTERN_C const IID IID_ID3D12Device9; D3D12_SHADER_CACHE_CONTROL_FLAGS Control) = 0; virtual HRESULT STDMETHODCALLTYPE CreateCommandQueue1( - /* [annotation] */ _In_ const D3D12_COMMAND_QUEUE_DESC *pDesc, REFIID CreatorID, - /* [annotation][in] */ - _In_ REFIID riid, - /* [annotation][iid_is][out] */ + REFIID riid, _COM_Outptr_ void **ppCommandQueue) = 0; }; @@ -23702,9 +21398,7 @@ EXTERN_C const IID IID_ID3D12Device9; DECLSPEC_XFGVIRT(IUnknown, QueryInterface) HRESULT ( STDMETHODCALLTYPE *QueryInterface )( ID3D12Device9 * This, - /* [annotation][in] */ - _In_ REFIID riid, - /* [annotation][iid_is][out] */ + REFIID riid, _COM_Outptr_ void **ppvObject); DECLSPEC_XFGVIRT(IUnknown, AddRef) @@ -23718,35 +21412,26 @@ EXTERN_C const IID IID_ID3D12Device9; DECLSPEC_XFGVIRT(ID3D12Object, GetPrivateData) HRESULT ( STDMETHODCALLTYPE *GetPrivateData )( ID3D12Device9 * This, - /* [annotation] */ _In_ REFGUID guid, - /* [annotation] */ _Inout_ UINT *pDataSize, - /* [annotation] */ _Out_writes_bytes_opt_( *pDataSize ) void *pData); DECLSPEC_XFGVIRT(ID3D12Object, SetPrivateData) HRESULT ( STDMETHODCALLTYPE *SetPrivateData )( ID3D12Device9 * This, - /* [annotation] */ _In_ REFGUID guid, - /* [annotation] */ _In_ UINT DataSize, - /* [annotation] */ _In_reads_bytes_opt_( DataSize ) const void *pData); DECLSPEC_XFGVIRT(ID3D12Object, SetPrivateDataInterface) HRESULT ( STDMETHODCALLTYPE *SetPrivateDataInterface )( ID3D12Device9 * This, - /* [annotation] */ _In_ REFGUID guid, - /* [annotation] */ _In_opt_ const IUnknown *pData); DECLSPEC_XFGVIRT(ID3D12Object, SetName) HRESULT ( STDMETHODCALLTYPE *SetName )( ID3D12Device9 * This, - /* [annotation] */ _In_z_ LPCWSTR Name); DECLSPEC_XFGVIRT(ID3D12Device, GetNodeCount) @@ -23756,284 +21441,220 @@ EXTERN_C const IID IID_ID3D12Device9; DECLSPEC_XFGVIRT(ID3D12Device, CreateCommandQueue) HRESULT ( STDMETHODCALLTYPE *CreateCommandQueue )( ID3D12Device9 * This, - /* [annotation] */ _In_ const D3D12_COMMAND_QUEUE_DESC *pDesc, - /* [annotation][in] */ - _In_ REFIID riid, - /* [annotation][iid_is][out] */ + REFIID riid, _COM_Outptr_ void **ppCommandQueue); DECLSPEC_XFGVIRT(ID3D12Device, CreateCommandAllocator) HRESULT ( STDMETHODCALLTYPE *CreateCommandAllocator )( ID3D12Device9 * This, - /* [annotation] */ _In_ D3D12_COMMAND_LIST_TYPE type, - /* [annotation][in] */ - _In_ REFIID riid, - /* [annotation][iid_is][out] */ + REFIID riid, _COM_Outptr_ void **ppCommandAllocator); DECLSPEC_XFGVIRT(ID3D12Device, CreateGraphicsPipelineState) HRESULT ( STDMETHODCALLTYPE *CreateGraphicsPipelineState )( ID3D12Device9 * This, - /* [annotation] */ _In_ const D3D12_GRAPHICS_PIPELINE_STATE_DESC *pDesc, - /* [annotation][in] */ - _In_ REFIID riid, - /* [annotation][iid_is][out] */ + REFIID riid, _COM_Outptr_ void **ppPipelineState); DECLSPEC_XFGVIRT(ID3D12Device, CreateComputePipelineState) HRESULT ( STDMETHODCALLTYPE *CreateComputePipelineState )( ID3D12Device9 * This, - /* [annotation] */ _In_ const D3D12_COMPUTE_PIPELINE_STATE_DESC *pDesc, - /* [annotation][in] */ - _In_ REFIID riid, - /* [annotation][iid_is][out] */ + REFIID riid, _COM_Outptr_ void **ppPipelineState); DECLSPEC_XFGVIRT(ID3D12Device, CreateCommandList) HRESULT ( STDMETHODCALLTYPE *CreateCommandList )( ID3D12Device9 * This, - /* [annotation] */ _In_ UINT nodeMask, - /* [annotation] */ _In_ D3D12_COMMAND_LIST_TYPE type, - /* [annotation] */ _In_ ID3D12CommandAllocator *pCommandAllocator, - /* [annotation] */ _In_opt_ ID3D12PipelineState *pInitialState, - /* [annotation][in] */ - _In_ REFIID riid, - /* [annotation][iid_is][out] */ + REFIID riid, _COM_Outptr_ void **ppCommandList); DECLSPEC_XFGVIRT(ID3D12Device, CheckFeatureSupport) HRESULT ( STDMETHODCALLTYPE *CheckFeatureSupport )( ID3D12Device9 * This, D3D12_FEATURE Feature, - /* [annotation] */ _Inout_updates_bytes_(FeatureSupportDataSize) void *pFeatureSupportData, UINT FeatureSupportDataSize); DECLSPEC_XFGVIRT(ID3D12Device, CreateDescriptorHeap) HRESULT ( STDMETHODCALLTYPE *CreateDescriptorHeap )( ID3D12Device9 * This, - /* [annotation] */ _In_ const D3D12_DESCRIPTOR_HEAP_DESC *pDescriptorHeapDesc, - /* [annotation][in] */ - _In_ REFIID riid, - /* [annotation][iid_is][out] */ + REFIID riid, _COM_Outptr_ void **ppvHeap); DECLSPEC_XFGVIRT(ID3D12Device, GetDescriptorHandleIncrementSize) UINT ( STDMETHODCALLTYPE *GetDescriptorHandleIncrementSize )( ID3D12Device9 * This, - /* [annotation] */ _In_ D3D12_DESCRIPTOR_HEAP_TYPE DescriptorHeapType); DECLSPEC_XFGVIRT(ID3D12Device, CreateRootSignature) HRESULT ( STDMETHODCALLTYPE *CreateRootSignature )( ID3D12Device9 * This, - /* [annotation] */ _In_ UINT nodeMask, - /* [annotation] */ _In_reads_(blobLengthInBytes) const void *pBlobWithRootSignature, - /* [annotation] */ _In_ SIZE_T blobLengthInBytes, - /* [annotation][in] */ - _In_ REFIID riid, - /* [annotation][iid_is][out] */ + REFIID riid, _COM_Outptr_ void **ppvRootSignature); DECLSPEC_XFGVIRT(ID3D12Device, CreateConstantBufferView) void ( STDMETHODCALLTYPE *CreateConstantBufferView )( ID3D12Device9 * This, - /* [annotation] */ _In_opt_ const D3D12_CONSTANT_BUFFER_VIEW_DESC *pDesc, - /* [annotation] */ _In_ D3D12_CPU_DESCRIPTOR_HANDLE DestDescriptor); DECLSPEC_XFGVIRT(ID3D12Device, CreateShaderResourceView) void ( STDMETHODCALLTYPE *CreateShaderResourceView )( ID3D12Device9 * This, - /* [annotation] */ _In_opt_ ID3D12Resource *pResource, - /* [annotation] */ _In_opt_ const D3D12_SHADER_RESOURCE_VIEW_DESC *pDesc, - /* [annotation] */ _In_ D3D12_CPU_DESCRIPTOR_HANDLE DestDescriptor); DECLSPEC_XFGVIRT(ID3D12Device, CreateUnorderedAccessView) void ( STDMETHODCALLTYPE *CreateUnorderedAccessView )( ID3D12Device9 * This, - /* [annotation] */ _In_opt_ ID3D12Resource *pResource, - /* [annotation] */ _In_opt_ ID3D12Resource *pCounterResource, - /* [annotation] */ _In_opt_ const D3D12_UNORDERED_ACCESS_VIEW_DESC *pDesc, - /* [annotation] */ _In_ D3D12_CPU_DESCRIPTOR_HANDLE DestDescriptor); DECLSPEC_XFGVIRT(ID3D12Device, CreateRenderTargetView) void ( STDMETHODCALLTYPE *CreateRenderTargetView )( ID3D12Device9 * This, - /* [annotation] */ _In_opt_ ID3D12Resource *pResource, - /* [annotation] */ _In_opt_ const D3D12_RENDER_TARGET_VIEW_DESC *pDesc, - /* [annotation] */ _In_ D3D12_CPU_DESCRIPTOR_HANDLE DestDescriptor); DECLSPEC_XFGVIRT(ID3D12Device, CreateDepthStencilView) void ( STDMETHODCALLTYPE *CreateDepthStencilView )( ID3D12Device9 * This, - /* [annotation] */ _In_opt_ ID3D12Resource *pResource, - /* [annotation] */ _In_opt_ const D3D12_DEPTH_STENCIL_VIEW_DESC *pDesc, - /* [annotation] */ _In_ D3D12_CPU_DESCRIPTOR_HANDLE DestDescriptor); DECLSPEC_XFGVIRT(ID3D12Device, CreateSampler) void ( STDMETHODCALLTYPE *CreateSampler )( ID3D12Device9 * This, - /* [annotation] */ _In_ const D3D12_SAMPLER_DESC *pDesc, - /* [annotation] */ _In_ D3D12_CPU_DESCRIPTOR_HANDLE DestDescriptor); DECLSPEC_XFGVIRT(ID3D12Device, CopyDescriptors) void ( STDMETHODCALLTYPE *CopyDescriptors )( ID3D12Device9 * This, - /* [annotation] */ _In_ UINT NumDestDescriptorRanges, - /* [annotation] */ _In_reads_(NumDestDescriptorRanges) const D3D12_CPU_DESCRIPTOR_HANDLE *pDestDescriptorRangeStarts, - /* [annotation] */ _In_reads_opt_(NumDestDescriptorRanges) const UINT *pDestDescriptorRangeSizes, - /* [annotation] */ _In_ UINT NumSrcDescriptorRanges, - /* [annotation] */ _In_reads_(NumSrcDescriptorRanges) const D3D12_CPU_DESCRIPTOR_HANDLE *pSrcDescriptorRangeStarts, - /* [annotation] */ _In_reads_opt_(NumSrcDescriptorRanges) const UINT *pSrcDescriptorRangeSizes, - /* [annotation] */ _In_ D3D12_DESCRIPTOR_HEAP_TYPE DescriptorHeapsType); DECLSPEC_XFGVIRT(ID3D12Device, CopyDescriptorsSimple) void ( STDMETHODCALLTYPE *CopyDescriptorsSimple )( ID3D12Device9 * This, - /* [annotation] */ _In_ UINT NumDescriptors, - /* [annotation] */ _In_ D3D12_CPU_DESCRIPTOR_HANDLE DestDescriptorRangeStart, - /* [annotation] */ _In_ D3D12_CPU_DESCRIPTOR_HANDLE SrcDescriptorRangeStart, - /* [annotation] */ _In_ D3D12_DESCRIPTOR_HEAP_TYPE DescriptorHeapsType); DECLSPEC_XFGVIRT(ID3D12Device, GetResourceAllocationInfo) +#if !defined(_WIN32) D3D12_RESOURCE_ALLOCATION_INFO ( STDMETHODCALLTYPE *GetResourceAllocationInfo )( ID3D12Device9 * This, - /* [annotation] */ _In_ UINT visibleMask, - /* [annotation] */ _In_ UINT numResourceDescs, - /* [annotation] */ _In_reads_(numResourceDescs) const D3D12_RESOURCE_DESC *pResourceDescs); +#else + D3D12_RESOURCE_ALLOCATION_INFO *( STDMETHODCALLTYPE *GetResourceAllocationInfo )( + ID3D12Device9 * This, + D3D12_RESOURCE_ALLOCATION_INFO * RetVal, + _In_ UINT visibleMask, + _In_ UINT numResourceDescs, + _In_reads_(numResourceDescs) const D3D12_RESOURCE_DESC *pResourceDescs); + +#endif + DECLSPEC_XFGVIRT(ID3D12Device, GetCustomHeapProperties) +#if !defined(_WIN32) D3D12_HEAP_PROPERTIES ( STDMETHODCALLTYPE *GetCustomHeapProperties )( ID3D12Device9 * This, - /* [annotation] */ _In_ UINT nodeMask, D3D12_HEAP_TYPE heapType); +#else + D3D12_HEAP_PROPERTIES *( STDMETHODCALLTYPE *GetCustomHeapProperties )( + ID3D12Device9 * This, + D3D12_HEAP_PROPERTIES * RetVal, + _In_ UINT nodeMask, + D3D12_HEAP_TYPE heapType); + +#endif + DECLSPEC_XFGVIRT(ID3D12Device, CreateCommittedResource) HRESULT ( STDMETHODCALLTYPE *CreateCommittedResource )( ID3D12Device9 * This, - /* [annotation] */ _In_ const D3D12_HEAP_PROPERTIES *pHeapProperties, D3D12_HEAP_FLAGS HeapFlags, - /* [annotation] */ _In_ const D3D12_RESOURCE_DESC *pDesc, D3D12_RESOURCE_STATES InitialResourceState, - /* [annotation] */ _In_opt_ const D3D12_CLEAR_VALUE *pOptimizedClearValue, - /* [annotation][in] */ - _In_ REFIID riidResource, - /* [annotation][iid_is][out] */ + REFIID riidResource, _COM_Outptr_opt_ void **ppvResource); DECLSPEC_XFGVIRT(ID3D12Device, CreateHeap) HRESULT ( STDMETHODCALLTYPE *CreateHeap )( ID3D12Device9 * This, - /* [annotation] */ _In_ const D3D12_HEAP_DESC *pDesc, - /* [annotation][in] */ - _In_ REFIID riid, - /* [annotation][iid_is][out] */ + REFIID riid, _COM_Outptr_opt_ void **ppvHeap); DECLSPEC_XFGVIRT(ID3D12Device, CreatePlacedResource) HRESULT ( STDMETHODCALLTYPE *CreatePlacedResource )( ID3D12Device9 * This, - /* [annotation] */ _In_ ID3D12Heap *pHeap, UINT64 HeapOffset, - /* [annotation] */ _In_ const D3D12_RESOURCE_DESC *pDesc, D3D12_RESOURCE_STATES InitialState, - /* [annotation] */ _In_opt_ const D3D12_CLEAR_VALUE *pOptimizedClearValue, - /* [annotation][in] */ - _In_ REFIID riid, - /* [annotation][iid_is][out] */ + REFIID riid, _COM_Outptr_opt_ void **ppvResource); DECLSPEC_XFGVIRT(ID3D12Device, CreateReservedResource) HRESULT ( STDMETHODCALLTYPE *CreateReservedResource )( ID3D12Device9 * This, - /* [annotation] */ _In_ const D3D12_RESOURCE_DESC *pDesc, D3D12_RESOURCE_STATES InitialState, - /* [annotation] */ _In_opt_ const D3D12_CLEAR_VALUE *pOptimizedClearValue, - /* [annotation][in] */ - _In_ REFIID riid, - /* [annotation][iid_is][out] */ + REFIID riid, _COM_Outptr_opt_ void **ppvResource); DECLSPEC_XFGVIRT(ID3D12Device, CreateSharedHandle) HRESULT ( STDMETHODCALLTYPE *CreateSharedHandle )( ID3D12Device9 * This, - /* [annotation] */ _In_ ID3D12DeviceChild *pObject, - /* [annotation] */ _In_opt_ const SECURITY_ATTRIBUTES *pAttributes, DWORD Access, - /* [annotation] */ _In_opt_ LPCWSTR Name, - /* [annotation] */ _Out_ HANDLE *pHandle); DECLSPEC_XFGVIRT(ID3D12Device, OpenSharedHandle) HRESULT ( STDMETHODCALLTYPE *OpenSharedHandle )( ID3D12Device9 * This, - /* [annotation] */ _In_ HANDLE NTHandle, - /* [annotation][in] */ - _In_ REFIID riid, - /* [annotation][iid_is][out] */ + REFIID riid, _COM_Outptr_opt_ void **ppvObj); DECLSPEC_XFGVIRT(ID3D12Device, OpenSharedHandleByName) HRESULT ( STDMETHODCALLTYPE *OpenSharedHandleByName )( ID3D12Device9 * This, - /* [annotation] */ _In_ LPCWSTR Name, DWORD Access, /* [annotation][out] */ @@ -24043,14 +21664,12 @@ EXTERN_C const IID IID_ID3D12Device9; HRESULT ( STDMETHODCALLTYPE *MakeResident )( ID3D12Device9 * This, UINT NumObjects, - /* [annotation] */ _In_reads_(NumObjects) ID3D12Pageable *const *ppObjects); DECLSPEC_XFGVIRT(ID3D12Device, Evict) HRESULT ( STDMETHODCALLTYPE *Evict )( ID3D12Device9 * This, UINT NumObjects, - /* [annotation] */ _In_reads_(NumObjects) ID3D12Pageable *const *ppObjects); DECLSPEC_XFGVIRT(ID3D12Device, CreateFence) @@ -24058,9 +21677,7 @@ EXTERN_C const IID IID_ID3D12Device9; ID3D12Device9 * This, UINT64 InitialValue, D3D12_FENCE_FLAGS Flags, - /* [annotation][in] */ - _In_ REFIID riid, - /* [annotation][iid_is][out] */ + REFIID riid, _COM_Outptr_ void **ppFence); DECLSPEC_XFGVIRT(ID3D12Device, GetDeviceRemovedReason) @@ -24070,30 +21687,20 @@ EXTERN_C const IID IID_ID3D12Device9; DECLSPEC_XFGVIRT(ID3D12Device, GetCopyableFootprints) void ( STDMETHODCALLTYPE *GetCopyableFootprints )( ID3D12Device9 * This, - /* [annotation] */ _In_ const D3D12_RESOURCE_DESC *pResourceDesc, - /* [annotation] */ _In_range_(0,D3D12_REQ_SUBRESOURCES) UINT FirstSubresource, - /* [annotation] */ _In_range_(0,D3D12_REQ_SUBRESOURCES-FirstSubresource) UINT NumSubresources, UINT64 BaseOffset, - /* [annotation] */ _Out_writes_opt_(NumSubresources) D3D12_PLACED_SUBRESOURCE_FOOTPRINT *pLayouts, - /* [annotation] */ _Out_writes_opt_(NumSubresources) UINT *pNumRows, - /* [annotation] */ _Out_writes_opt_(NumSubresources) UINT64 *pRowSizeInBytes, - /* [annotation] */ _Out_opt_ UINT64 *pTotalBytes); DECLSPEC_XFGVIRT(ID3D12Device, CreateQueryHeap) HRESULT ( STDMETHODCALLTYPE *CreateQueryHeap )( ID3D12Device9 * This, - /* [annotation] */ _In_ const D3D12_QUERY_HEAP_DESC *pDesc, - /* [annotation][in] */ - _In_ REFIID riid, - /* [annotation][iid_is][out] */ + REFIID riid, _COM_Outptr_opt_ void **ppvHeap); DECLSPEC_XFGVIRT(ID3D12Device, SetStablePowerState) @@ -24104,54 +21711,46 @@ EXTERN_C const IID IID_ID3D12Device9; DECLSPEC_XFGVIRT(ID3D12Device, CreateCommandSignature) HRESULT ( STDMETHODCALLTYPE *CreateCommandSignature )( ID3D12Device9 * This, - /* [annotation] */ _In_ const D3D12_COMMAND_SIGNATURE_DESC *pDesc, - /* [annotation] */ _In_opt_ ID3D12RootSignature *pRootSignature, - /* [annotation][in] */ - _In_ REFIID riid, - /* [annotation][iid_is][out] */ + REFIID riid, _COM_Outptr_opt_ void **ppvCommandSignature); DECLSPEC_XFGVIRT(ID3D12Device, GetResourceTiling) void ( STDMETHODCALLTYPE *GetResourceTiling )( ID3D12Device9 * This, - /* [annotation] */ _In_ ID3D12Resource *pTiledResource, - /* [annotation] */ _Out_opt_ UINT *pNumTilesForEntireResource, - /* [annotation] */ _Out_opt_ D3D12_PACKED_MIP_INFO *pPackedMipDesc, - /* [annotation] */ _Out_opt_ D3D12_TILE_SHAPE *pStandardTileShapeForNonPackedMips, - /* [annotation] */ _Inout_opt_ UINT *pNumSubresourceTilings, - /* [annotation] */ _In_ UINT FirstSubresourceTilingToGet, - /* [annotation] */ _Out_writes_(*pNumSubresourceTilings) D3D12_SUBRESOURCE_TILING *pSubresourceTilingsForNonPackedMips); DECLSPEC_XFGVIRT(ID3D12Device, GetAdapterLuid) +#if !defined(_WIN32) LUID ( STDMETHODCALLTYPE *GetAdapterLuid )( ID3D12Device9 * This); +#else + LUID *( STDMETHODCALLTYPE *GetAdapterLuid )( + ID3D12Device9 * This, + LUID * RetVal); + +#endif + DECLSPEC_XFGVIRT(ID3D12Device1, CreatePipelineLibrary) HRESULT ( STDMETHODCALLTYPE *CreatePipelineLibrary )( ID3D12Device9 * This, - /* [annotation] */ _In_reads_(BlobLength) const void *pLibraryBlob, SIZE_T BlobLength, - /* [annotation][in] */ - _In_ REFIID riid, - /* [annotation][iid_is][out] */ + REFIID riid, _COM_Outptr_ void **ppPipelineLibrary); DECLSPEC_XFGVIRT(ID3D12Device1, SetEventOnMultipleFenceCompletion) HRESULT ( STDMETHODCALLTYPE *SetEventOnMultipleFenceCompletion )( ID3D12Device9 * This, - /* [annotation] */ _In_reads_(NumFences) ID3D12Fence *const *ppFences, - /* [annotation] */ _In_reads_(NumFences) const UINT64 *pFenceValues, UINT NumFences, D3D12_MULTIPLE_FENCE_WAIT_FLAGS Flags, @@ -24161,39 +21760,28 @@ EXTERN_C const IID IID_ID3D12Device9; HRESULT ( STDMETHODCALLTYPE *SetResidencyPriority )( ID3D12Device9 * This, UINT NumObjects, - /* [annotation] */ _In_reads_(NumObjects) ID3D12Pageable *const *ppObjects, - /* [annotation] */ _In_reads_(NumObjects) const D3D12_RESIDENCY_PRIORITY *pPriorities); DECLSPEC_XFGVIRT(ID3D12Device2, CreatePipelineState) HRESULT ( STDMETHODCALLTYPE *CreatePipelineState )( ID3D12Device9 * This, - /* [annotation][in] */ - _In_ const D3D12_PIPELINE_STATE_STREAM_DESC *pDesc, - /* [annotation][in] */ - _In_ REFIID riid, - /* [annotation][iid_is][out] */ + const D3D12_PIPELINE_STATE_STREAM_DESC *pDesc, + REFIID riid, _COM_Outptr_ void **ppPipelineState); DECLSPEC_XFGVIRT(ID3D12Device3, OpenExistingHeapFromAddress) HRESULT ( STDMETHODCALLTYPE *OpenExistingHeapFromAddress )( ID3D12Device9 * This, - /* [annotation] */ _In_ const void *pAddress, - /* [annotation][in] */ - _In_ REFIID riid, - /* [annotation][iid_is][out] */ + REFIID riid, _COM_Outptr_ void **ppvHeap); DECLSPEC_XFGVIRT(ID3D12Device3, OpenExistingHeapFromFileMapping) HRESULT ( STDMETHODCALLTYPE *OpenExistingHeapFromFileMapping )( ID3D12Device9 * This, - /* [annotation] */ _In_ HANDLE hFileMapping, - /* [annotation][in] */ - _In_ REFIID riid, - /* [annotation][iid_is][out] */ + REFIID riid, _COM_Outptr_ void **ppvHeap); DECLSPEC_XFGVIRT(ID3D12Device3, EnqueueMakeResident) @@ -24201,99 +21789,81 @@ EXTERN_C const IID IID_ID3D12Device9; ID3D12Device9 * This, D3D12_RESIDENCY_FLAGS Flags, UINT NumObjects, - /* [annotation] */ _In_reads_(NumObjects) ID3D12Pageable *const *ppObjects, - /* [annotation] */ _In_ ID3D12Fence *pFenceToSignal, UINT64 FenceValueToSignal); DECLSPEC_XFGVIRT(ID3D12Device4, CreateCommandList1) HRESULT ( STDMETHODCALLTYPE *CreateCommandList1 )( ID3D12Device9 * This, - /* [annotation] */ _In_ UINT nodeMask, - /* [annotation] */ _In_ D3D12_COMMAND_LIST_TYPE type, - /* [annotation] */ _In_ D3D12_COMMAND_LIST_FLAGS flags, - /* [annotation][in] */ - _In_ REFIID riid, - /* [annotation][iid_is][out] */ + REFIID riid, _COM_Outptr_ void **ppCommandList); DECLSPEC_XFGVIRT(ID3D12Device4, CreateProtectedResourceSession) HRESULT ( STDMETHODCALLTYPE *CreateProtectedResourceSession )( ID3D12Device9 * This, - /* [annotation] */ _In_ const D3D12_PROTECTED_RESOURCE_SESSION_DESC *pDesc, - /* [annotation] */ _In_ REFIID riid, - /* [annotation][iid_is][out] */ _COM_Outptr_ void **ppSession); DECLSPEC_XFGVIRT(ID3D12Device4, CreateCommittedResource1) HRESULT ( STDMETHODCALLTYPE *CreateCommittedResource1 )( ID3D12Device9 * This, - /* [annotation] */ _In_ const D3D12_HEAP_PROPERTIES *pHeapProperties, D3D12_HEAP_FLAGS HeapFlags, - /* [annotation] */ _In_ const D3D12_RESOURCE_DESC *pDesc, D3D12_RESOURCE_STATES InitialResourceState, - /* [annotation] */ _In_opt_ const D3D12_CLEAR_VALUE *pOptimizedClearValue, - /* [annotation] */ _In_opt_ ID3D12ProtectedResourceSession *pProtectedSession, - /* [annotation][in] */ - _In_ REFIID riidResource, - /* [annotation][iid_is][out] */ + REFIID riidResource, _COM_Outptr_opt_ void **ppvResource); DECLSPEC_XFGVIRT(ID3D12Device4, CreateHeap1) HRESULT ( STDMETHODCALLTYPE *CreateHeap1 )( ID3D12Device9 * This, - /* [annotation] */ _In_ const D3D12_HEAP_DESC *pDesc, - /* [annotation] */ _In_opt_ ID3D12ProtectedResourceSession *pProtectedSession, - /* [annotation][in] */ - _In_ REFIID riid, - /* [annotation][iid_is][out] */ + REFIID riid, _COM_Outptr_opt_ void **ppvHeap); DECLSPEC_XFGVIRT(ID3D12Device4, CreateReservedResource1) HRESULT ( STDMETHODCALLTYPE *CreateReservedResource1 )( ID3D12Device9 * This, - /* [annotation] */ _In_ const D3D12_RESOURCE_DESC *pDesc, D3D12_RESOURCE_STATES InitialState, - /* [annotation] */ _In_opt_ const D3D12_CLEAR_VALUE *pOptimizedClearValue, - /* [annotation] */ _In_opt_ ID3D12ProtectedResourceSession *pProtectedSession, - /* [annotation][in] */ - _In_ REFIID riid, - /* [annotation][iid_is][out] */ + REFIID riid, _COM_Outptr_opt_ void **ppvResource); DECLSPEC_XFGVIRT(ID3D12Device4, GetResourceAllocationInfo1) +#if !defined(_WIN32) D3D12_RESOURCE_ALLOCATION_INFO ( STDMETHODCALLTYPE *GetResourceAllocationInfo1 )( ID3D12Device9 * This, UINT visibleMask, UINT numResourceDescs, - /* [annotation] */ _In_reads_(numResourceDescs) const D3D12_RESOURCE_DESC *pResourceDescs, - /* [annotation] */ _Out_writes_opt_(numResourceDescs) D3D12_RESOURCE_ALLOCATION_INFO1 *pResourceAllocationInfo1); +#else + D3D12_RESOURCE_ALLOCATION_INFO *( STDMETHODCALLTYPE *GetResourceAllocationInfo1 )( + ID3D12Device9 * This, + D3D12_RESOURCE_ALLOCATION_INFO * RetVal, + UINT visibleMask, + UINT numResourceDescs, + _In_reads_(numResourceDescs) const D3D12_RESOURCE_DESC *pResourceDescs, + _Out_writes_opt_(numResourceDescs) D3D12_RESOURCE_ALLOCATION_INFO1 *pResourceAllocationInfo1); + +#endif + DECLSPEC_XFGVIRT(ID3D12Device5, CreateLifetimeTracker) HRESULT ( STDMETHODCALLTYPE *CreateLifetimeTracker )( ID3D12Device9 * This, - /* [annotation] */ _In_ ID3D12LifetimeOwner *pOwner, - /* [annotation][in] */ - _In_ REFIID riid, - /* [annotation][iid_is][out] */ + REFIID riid, _COM_Outptr_ void **ppvTracker); DECLSPEC_XFGVIRT(ID3D12Device5, RemoveDevice) @@ -24303,65 +21873,45 @@ EXTERN_C const IID IID_ID3D12Device9; DECLSPEC_XFGVIRT(ID3D12Device5, EnumerateMetaCommands) HRESULT ( STDMETHODCALLTYPE *EnumerateMetaCommands )( ID3D12Device9 * This, - /* [annotation] */ _Inout_ UINT *pNumMetaCommands, - /* [annotation] */ _Out_writes_opt_(*pNumMetaCommands) D3D12_META_COMMAND_DESC *pDescs); DECLSPEC_XFGVIRT(ID3D12Device5, EnumerateMetaCommandParameters) HRESULT ( STDMETHODCALLTYPE *EnumerateMetaCommandParameters )( ID3D12Device9 * This, - /* [annotation] */ _In_ REFGUID CommandId, - /* [annotation] */ _In_ D3D12_META_COMMAND_PARAMETER_STAGE Stage, - /* [annotation] */ _Out_opt_ UINT *pTotalStructureSizeInBytes, - /* [annotation] */ _Inout_ UINT *pParameterCount, - /* [annotation] */ _Out_writes_opt_(*pParameterCount) D3D12_META_COMMAND_PARAMETER_DESC *pParameterDescs); DECLSPEC_XFGVIRT(ID3D12Device5, CreateMetaCommand) HRESULT ( STDMETHODCALLTYPE *CreateMetaCommand )( ID3D12Device9 * This, - /* [annotation] */ _In_ REFGUID CommandId, - /* [annotation] */ _In_ UINT NodeMask, - /* [annotation] */ _In_reads_bytes_opt_(CreationParametersDataSizeInBytes) const void *pCreationParametersData, - /* [annotation] */ _In_ SIZE_T CreationParametersDataSizeInBytes, - /* [annotation][in] */ - _In_ REFIID riid, - /* [annotation][iid_is][out] */ + REFIID riid, _COM_Outptr_ void **ppMetaCommand); DECLSPEC_XFGVIRT(ID3D12Device5, CreateStateObject) HRESULT ( STDMETHODCALLTYPE *CreateStateObject )( ID3D12Device9 * This, - /* [annotation][in] */ - _In_ const D3D12_STATE_OBJECT_DESC *pDesc, - /* [annotation][in] */ - _In_ REFIID riid, - /* [annotation][iid_is][out] */ + const D3D12_STATE_OBJECT_DESC *pDesc, + REFIID riid, _COM_Outptr_ void **ppStateObject); DECLSPEC_XFGVIRT(ID3D12Device5, GetRaytracingAccelerationStructurePrebuildInfo) void ( STDMETHODCALLTYPE *GetRaytracingAccelerationStructurePrebuildInfo )( ID3D12Device9 * This, - /* [annotation] */ _In_ const D3D12_BUILD_RAYTRACING_ACCELERATION_STRUCTURE_INPUTS *pDesc, - /* [annotation] */ _Out_ D3D12_RAYTRACING_ACCELERATION_STRUCTURE_PREBUILD_INFO *pInfo); DECLSPEC_XFGVIRT(ID3D12Device5, CheckDriverMatchingIdentifier) D3D12_DRIVER_MATCHING_IDENTIFIER_STATUS ( STDMETHODCALLTYPE *CheckDriverMatchingIdentifier )( ID3D12Device9 * This, - /* [annotation] */ _In_ D3D12_SERIALIZED_DATA_TYPE SerializedDataType, - /* [annotation] */ _In_ const D3D12_SERIALIZED_DATA_DRIVER_MATCHING_IDENTIFIER *pIdentifierToCheck); DECLSPEC_XFGVIRT(ID3D12Device6, SetBackgroundProcessingMode) @@ -24369,113 +21919,91 @@ EXTERN_C const IID IID_ID3D12Device9; ID3D12Device9 * This, D3D12_BACKGROUND_PROCESSING_MODE Mode, D3D12_MEASUREMENTS_ACTION MeasurementsAction, - /* [annotation] */ _In_opt_ HANDLE hEventToSignalUponCompletion, - /* [annotation] */ _Out_opt_ BOOL *pbFurtherMeasurementsDesired); DECLSPEC_XFGVIRT(ID3D12Device7, AddToStateObject) HRESULT ( STDMETHODCALLTYPE *AddToStateObject )( ID3D12Device9 * This, - /* [annotation][in] */ - _In_ const D3D12_STATE_OBJECT_DESC *pAddition, - /* [annotation][in] */ - _In_ ID3D12StateObject *pStateObjectToGrowFrom, - /* [annotation][in] */ - _In_ REFIID riid, - /* [annotation][iid_is][out] */ + const D3D12_STATE_OBJECT_DESC *pAddition, + ID3D12StateObject *pStateObjectToGrowFrom, + REFIID riid, _COM_Outptr_ void **ppNewStateObject); DECLSPEC_XFGVIRT(ID3D12Device7, CreateProtectedResourceSession1) HRESULT ( STDMETHODCALLTYPE *CreateProtectedResourceSession1 )( ID3D12Device9 * This, - /* [annotation] */ _In_ const D3D12_PROTECTED_RESOURCE_SESSION_DESC1 *pDesc, - /* [annotation] */ _In_ REFIID riid, - /* [annotation][iid_is][out] */ _COM_Outptr_ void **ppSession); DECLSPEC_XFGVIRT(ID3D12Device8, GetResourceAllocationInfo2) +#if !defined(_WIN32) D3D12_RESOURCE_ALLOCATION_INFO ( STDMETHODCALLTYPE *GetResourceAllocationInfo2 )( ID3D12Device9 * This, UINT visibleMask, UINT numResourceDescs, - /* [annotation] */ _In_reads_(numResourceDescs) const D3D12_RESOURCE_DESC1 *pResourceDescs, - /* [annotation] */ _Out_writes_opt_(numResourceDescs) D3D12_RESOURCE_ALLOCATION_INFO1 *pResourceAllocationInfo1); +#else + D3D12_RESOURCE_ALLOCATION_INFO *( STDMETHODCALLTYPE *GetResourceAllocationInfo2 )( + ID3D12Device9 * This, + D3D12_RESOURCE_ALLOCATION_INFO * RetVal, + UINT visibleMask, + UINT numResourceDescs, + _In_reads_(numResourceDescs) const D3D12_RESOURCE_DESC1 *pResourceDescs, + _Out_writes_opt_(numResourceDescs) D3D12_RESOURCE_ALLOCATION_INFO1 *pResourceAllocationInfo1); + +#endif + DECLSPEC_XFGVIRT(ID3D12Device8, CreateCommittedResource2) HRESULT ( STDMETHODCALLTYPE *CreateCommittedResource2 )( ID3D12Device9 * This, - /* [annotation] */ _In_ const D3D12_HEAP_PROPERTIES *pHeapProperties, D3D12_HEAP_FLAGS HeapFlags, - /* [annotation] */ _In_ const D3D12_RESOURCE_DESC1 *pDesc, D3D12_RESOURCE_STATES InitialResourceState, - /* [annotation] */ _In_opt_ const D3D12_CLEAR_VALUE *pOptimizedClearValue, - /* [annotation] */ _In_opt_ ID3D12ProtectedResourceSession *pProtectedSession, - /* [annotation][in] */ - _In_ REFIID riidResource, - /* [annotation][iid_is][out] */ + REFIID riidResource, _COM_Outptr_opt_ void **ppvResource); DECLSPEC_XFGVIRT(ID3D12Device8, CreatePlacedResource1) HRESULT ( STDMETHODCALLTYPE *CreatePlacedResource1 )( ID3D12Device9 * This, - /* [annotation] */ _In_ ID3D12Heap *pHeap, UINT64 HeapOffset, - /* [annotation] */ _In_ const D3D12_RESOURCE_DESC1 *pDesc, D3D12_RESOURCE_STATES InitialState, - /* [annotation] */ _In_opt_ const D3D12_CLEAR_VALUE *pOptimizedClearValue, - /* [annotation][in] */ - _In_ REFIID riid, - /* [annotation][iid_is][out] */ + REFIID riid, _COM_Outptr_opt_ void **ppvResource); DECLSPEC_XFGVIRT(ID3D12Device8, CreateSamplerFeedbackUnorderedAccessView) void ( STDMETHODCALLTYPE *CreateSamplerFeedbackUnorderedAccessView )( ID3D12Device9 * This, - /* [annotation] */ _In_opt_ ID3D12Resource *pTargetedResource, - /* [annotation] */ _In_opt_ ID3D12Resource *pFeedbackResource, - /* [annotation] */ _In_ D3D12_CPU_DESCRIPTOR_HANDLE DestDescriptor); DECLSPEC_XFGVIRT(ID3D12Device8, GetCopyableFootprints1) void ( STDMETHODCALLTYPE *GetCopyableFootprints1 )( ID3D12Device9 * This, - /* [annotation] */ _In_ const D3D12_RESOURCE_DESC1 *pResourceDesc, - /* [annotation] */ _In_range_(0,D3D12_REQ_SUBRESOURCES) UINT FirstSubresource, - /* [annotation] */ _In_range_(0,D3D12_REQ_SUBRESOURCES-FirstSubresource) UINT NumSubresources, UINT64 BaseOffset, - /* [annotation] */ _Out_writes_opt_(NumSubresources) D3D12_PLACED_SUBRESOURCE_FOOTPRINT *pLayouts, - /* [annotation] */ _Out_writes_opt_(NumSubresources) UINT *pNumRows, - /* [annotation] */ _Out_writes_opt_(NumSubresources) UINT64 *pRowSizeInBytes, - /* [annotation] */ _Out_opt_ UINT64 *pTotalBytes); DECLSPEC_XFGVIRT(ID3D12Device9, CreateShaderCacheSession) HRESULT ( STDMETHODCALLTYPE *CreateShaderCacheSession )( ID3D12Device9 * This, - /* [annotation] */ _In_ const D3D12_SHADER_CACHE_SESSION_DESC *pDesc, REFIID riid, - /* [annotation] */ _COM_Outptr_opt_ void **ppvSession); DECLSPEC_XFGVIRT(ID3D12Device9, ShaderCacheControl) @@ -24487,12 +22015,9 @@ EXTERN_C const IID IID_ID3D12Device9; DECLSPEC_XFGVIRT(ID3D12Device9, CreateCommandQueue1) HRESULT ( STDMETHODCALLTYPE *CreateCommandQueue1 )( ID3D12Device9 * This, - /* [annotation] */ _In_ const D3D12_COMMAND_QUEUE_DESC *pDesc, REFIID CreatorID, - /* [annotation][in] */ - _In_ REFIID riid, - /* [annotation][iid_is][out] */ + REFIID riid, _COM_Outptr_ void **ppCommandQueue); END_INTERFACE @@ -24584,12 +22109,22 @@ EXTERN_C const IID IID_ID3D12Device9; #define ID3D12Device9_CopyDescriptorsSimple(This,NumDescriptors,DestDescriptorRangeStart,SrcDescriptorRangeStart,DescriptorHeapsType) \ ( (This)->lpVtbl -> CopyDescriptorsSimple(This,NumDescriptors,DestDescriptorRangeStart,SrcDescriptorRangeStart,DescriptorHeapsType) ) +#if !defined(_WIN32) #define ID3D12Device9_GetResourceAllocationInfo(This,visibleMask,numResourceDescs,pResourceDescs) \ ( (This)->lpVtbl -> GetResourceAllocationInfo(This,visibleMask,numResourceDescs,pResourceDescs) ) +#else +#define ID3D12Device9_GetResourceAllocationInfo(This,RetVal,visibleMask,numResourceDescs,pResourceDescs) \ + ( (This)->lpVtbl -> GetResourceAllocationInfo(This,RetVal,visibleMask,numResourceDescs,pResourceDescs) ) +#endif +#if !defined(_WIN32) #define ID3D12Device9_GetCustomHeapProperties(This,nodeMask,heapType) \ ( (This)->lpVtbl -> GetCustomHeapProperties(This,nodeMask,heapType) ) +#else +#define ID3D12Device9_GetCustomHeapProperties(This,RetVal,nodeMask,heapType) \ + ( (This)->lpVtbl -> GetCustomHeapProperties(This,RetVal,nodeMask,heapType) ) +#endif #define ID3D12Device9_CreateCommittedResource(This,pHeapProperties,HeapFlags,pDesc,InitialResourceState,pOptimizedClearValue,riidResource,ppvResource) \ ( (This)->lpVtbl -> CreateCommittedResource(This,pHeapProperties,HeapFlags,pDesc,InitialResourceState,pOptimizedClearValue,riidResource,ppvResource) ) @@ -24638,9 +22173,14 @@ EXTERN_C const IID IID_ID3D12Device9; #define ID3D12Device9_GetResourceTiling(This,pTiledResource,pNumTilesForEntireResource,pPackedMipDesc,pStandardTileShapeForNonPackedMips,pNumSubresourceTilings,FirstSubresourceTilingToGet,pSubresourceTilingsForNonPackedMips) \ ( (This)->lpVtbl -> GetResourceTiling(This,pTiledResource,pNumTilesForEntireResource,pPackedMipDesc,pStandardTileShapeForNonPackedMips,pNumSubresourceTilings,FirstSubresourceTilingToGet,pSubresourceTilingsForNonPackedMips) ) +#if !defined(_WIN32) #define ID3D12Device9_GetAdapterLuid(This) \ ( (This)->lpVtbl -> GetAdapterLuid(This) ) +#else +#define ID3D12Device9_GetAdapterLuid(This,RetVal) \ + ( (This)->lpVtbl -> GetAdapterLuid(This,RetVal) ) +#endif #define ID3D12Device9_CreatePipelineLibrary(This,pLibraryBlob,BlobLength,riid,ppPipelineLibrary) \ @@ -24681,9 +22221,14 @@ EXTERN_C const IID IID_ID3D12Device9; #define ID3D12Device9_CreateReservedResource1(This,pDesc,InitialState,pOptimizedClearValue,pProtectedSession,riid,ppvResource) \ ( (This)->lpVtbl -> CreateReservedResource1(This,pDesc,InitialState,pOptimizedClearValue,pProtectedSession,riid,ppvResource) ) +#if !defined(_WIN32) #define ID3D12Device9_GetResourceAllocationInfo1(This,visibleMask,numResourceDescs,pResourceDescs,pResourceAllocationInfo1) \ ( (This)->lpVtbl -> GetResourceAllocationInfo1(This,visibleMask,numResourceDescs,pResourceDescs,pResourceAllocationInfo1) ) +#else +#define ID3D12Device9_GetResourceAllocationInfo1(This,RetVal,visibleMask,numResourceDescs,pResourceDescs,pResourceAllocationInfo1) \ + ( (This)->lpVtbl -> GetResourceAllocationInfo1(This,RetVal,visibleMask,numResourceDescs,pResourceDescs,pResourceAllocationInfo1) ) +#endif #define ID3D12Device9_CreateLifetimeTracker(This,pOwner,riid,ppvTracker) \ @@ -24721,9 +22266,14 @@ EXTERN_C const IID IID_ID3D12Device9; #define ID3D12Device9_CreateProtectedResourceSession1(This,pDesc,riid,ppSession) \ ( (This)->lpVtbl -> CreateProtectedResourceSession1(This,pDesc,riid,ppSession) ) +#if !defined(_WIN32) #define ID3D12Device9_GetResourceAllocationInfo2(This,visibleMask,numResourceDescs,pResourceDescs,pResourceAllocationInfo1) \ ( (This)->lpVtbl -> GetResourceAllocationInfo2(This,visibleMask,numResourceDescs,pResourceDescs,pResourceAllocationInfo1) ) +#else +#define ID3D12Device9_GetResourceAllocationInfo2(This,RetVal,visibleMask,numResourceDescs,pResourceDescs,pResourceAllocationInfo1) \ + ( (This)->lpVtbl -> GetResourceAllocationInfo2(This,RetVal,visibleMask,numResourceDescs,pResourceDescs,pResourceAllocationInfo1) ) +#endif #define ID3D12Device9_CreateCommittedResource2(This,pHeapProperties,HeapFlags,pDesc,InitialResourceState,pOptimizedClearValue,pProtectedSession,riidResource,ppvResource) \ ( (This)->lpVtbl -> CreateCommittedResource2(This,pHeapProperties,HeapFlags,pDesc,InitialResourceState,pOptimizedClearValue,pProtectedSession,riidResource,ppvResource) ) @@ -24758,1151 +22308,6072 @@ EXTERN_C const IID IID_ID3D12Device9; #endif /* __ID3D12Device9_INTERFACE_DEFINED__ */ -#ifndef __ID3D12Tools_INTERFACE_DEFINED__ -#define __ID3D12Tools_INTERFACE_DEFINED__ +#ifndef __ID3D12Device10_INTERFACE_DEFINED__ +#define __ID3D12Device10_INTERFACE_DEFINED__ -/* interface ID3D12Tools */ +/* interface ID3D12Device10 */ /* [unique][local][object][uuid] */ -EXTERN_C const IID IID_ID3D12Tools; +EXTERN_C const IID IID_ID3D12Device10; #if defined(__cplusplus) && !defined(CINTERFACE) - MIDL_INTERFACE("7071e1f0-e84b-4b33-974f-12fa49de65c5") - ID3D12Tools : public IUnknown + MIDL_INTERFACE("517f8718-aa66-49f9-b02b-a7ab89c06031") + ID3D12Device10 : public ID3D12Device9 { public: - virtual void STDMETHODCALLTYPE EnableShaderInstrumentation( - BOOL bEnable) = 0; + virtual HRESULT STDMETHODCALLTYPE CreateCommittedResource3( + _In_ const D3D12_HEAP_PROPERTIES *pHeapProperties, + D3D12_HEAP_FLAGS HeapFlags, + _In_ const D3D12_RESOURCE_DESC1 *pDesc, + D3D12_BARRIER_LAYOUT InitialLayout, + _In_opt_ const D3D12_CLEAR_VALUE *pOptimizedClearValue, + _In_opt_ ID3D12ProtectedResourceSession *pProtectedSession, + UINT32 NumCastableFormats, + _In_opt_count_(NumCastableFormats) DXGI_FORMAT *pCastableFormats, + REFIID riidResource, + _COM_Outptr_opt_ void **ppvResource) = 0; - virtual BOOL STDMETHODCALLTYPE ShaderInstrumentationEnabled( void) = 0; + virtual HRESULT STDMETHODCALLTYPE CreatePlacedResource2( + _In_ ID3D12Heap *pHeap, + UINT64 HeapOffset, + _In_ const D3D12_RESOURCE_DESC1 *pDesc, + D3D12_BARRIER_LAYOUT InitialLayout, + _In_opt_ const D3D12_CLEAR_VALUE *pOptimizedClearValue, + UINT32 NumCastableFormats, + _In_opt_count_(NumCastableFormats) DXGI_FORMAT *pCastableFormats, + REFIID riid, + _COM_Outptr_opt_ void **ppvResource) = 0; + + virtual HRESULT STDMETHODCALLTYPE CreateReservedResource2( + _In_ const D3D12_RESOURCE_DESC *pDesc, + D3D12_BARRIER_LAYOUT InitialLayout, + _In_opt_ const D3D12_CLEAR_VALUE *pOptimizedClearValue, + _In_opt_ ID3D12ProtectedResourceSession *pProtectedSession, + UINT32 NumCastableFormats, + _In_opt_count_(NumCastableFormats) DXGI_FORMAT *pCastableFormats, + REFIID riid, + _COM_Outptr_opt_ void **ppvResource) = 0; }; #else /* C style interface */ - typedef struct ID3D12ToolsVtbl + typedef struct ID3D12Device10Vtbl { BEGIN_INTERFACE DECLSPEC_XFGVIRT(IUnknown, QueryInterface) HRESULT ( STDMETHODCALLTYPE *QueryInterface )( - ID3D12Tools * This, - /* [annotation][in] */ - _In_ REFIID riid, - /* [annotation][iid_is][out] */ + ID3D12Device10 * This, + REFIID riid, _COM_Outptr_ void **ppvObject); DECLSPEC_XFGVIRT(IUnknown, AddRef) ULONG ( STDMETHODCALLTYPE *AddRef )( - ID3D12Tools * This); + ID3D12Device10 * This); DECLSPEC_XFGVIRT(IUnknown, Release) ULONG ( STDMETHODCALLTYPE *Release )( - ID3D12Tools * This); + ID3D12Device10 * This); - DECLSPEC_XFGVIRT(ID3D12Tools, EnableShaderInstrumentation) - void ( STDMETHODCALLTYPE *EnableShaderInstrumentation )( - ID3D12Tools * This, - BOOL bEnable); + DECLSPEC_XFGVIRT(ID3D12Object, GetPrivateData) + HRESULT ( STDMETHODCALLTYPE *GetPrivateData )( + ID3D12Device10 * This, + _In_ REFGUID guid, + _Inout_ UINT *pDataSize, + _Out_writes_bytes_opt_( *pDataSize ) void *pData); - DECLSPEC_XFGVIRT(ID3D12Tools, ShaderInstrumentationEnabled) - BOOL ( STDMETHODCALLTYPE *ShaderInstrumentationEnabled )( - ID3D12Tools * This); + DECLSPEC_XFGVIRT(ID3D12Object, SetPrivateData) + HRESULT ( STDMETHODCALLTYPE *SetPrivateData )( + ID3D12Device10 * This, + _In_ REFGUID guid, + _In_ UINT DataSize, + _In_reads_bytes_opt_( DataSize ) const void *pData); - END_INTERFACE - } ID3D12ToolsVtbl; - - interface ID3D12Tools - { - CONST_VTBL struct ID3D12ToolsVtbl *lpVtbl; - }; - - - -#ifdef COBJMACROS - - -#define ID3D12Tools_QueryInterface(This,riid,ppvObject) \ - ( (This)->lpVtbl -> QueryInterface(This,riid,ppvObject) ) - -#define ID3D12Tools_AddRef(This) \ - ( (This)->lpVtbl -> AddRef(This) ) - -#define ID3D12Tools_Release(This) \ - ( (This)->lpVtbl -> Release(This) ) - - -#define ID3D12Tools_EnableShaderInstrumentation(This,bEnable) \ - ( (This)->lpVtbl -> EnableShaderInstrumentation(This,bEnable) ) - -#define ID3D12Tools_ShaderInstrumentationEnabled(This) \ - ( (This)->lpVtbl -> ShaderInstrumentationEnabled(This) ) - -#endif /* COBJMACROS */ - - -#endif /* C style interface */ - - - - -#endif /* __ID3D12Tools_INTERFACE_DEFINED__ */ - - -/* interface __MIDL_itf_d3d12_0000_0053 */ -/* [local] */ - -typedef struct D3D12_SUBRESOURCE_DATA - { - const void *pData; - LONG_PTR RowPitch; - LONG_PTR SlicePitch; - } D3D12_SUBRESOURCE_DATA; - -typedef struct D3D12_MEMCPY_DEST - { - void *pData; - SIZE_T RowPitch; - SIZE_T SlicePitch; - } D3D12_MEMCPY_DEST; - -#if !defined( D3D12_IGNORE_SDK_LAYERS ) -#include "d3d12sdklayers.h" -#endif - -/////////////////////////////////////////////////////////////////////////// -// D3D12CreateDevice -// ------------------ -// -// pAdapter -// If NULL, D3D12CreateDevice will choose the primary adapter. -// If non-NULL, D3D12CreateDevice will use the provided adapter. -// MinimumFeatureLevel -// The minimum feature level required for successful device creation. -// riid -// The interface IID of the device to be returned. Expected: ID3D12Device. -// ppDevice -// Pointer to returned interface. May be NULL. -// -// Return Values -// Any of those documented for -// CreateDXGIFactory1 -// IDXGIFactory::EnumAdapters -// D3D12CreateDevice -// -/////////////////////////////////////////////////////////////////////////// -typedef HRESULT (WINAPI* PFN_D3D12_CREATE_DEVICE)( _In_opt_ IUnknown*, - D3D_FEATURE_LEVEL, - _In_ REFIID, _COM_Outptr_opt_ void** ); - -HRESULT WINAPI D3D12CreateDevice( - _In_opt_ IUnknown* pAdapter, - D3D_FEATURE_LEVEL MinimumFeatureLevel, - _In_ REFIID riid, // Expected: ID3D12Device - _COM_Outptr_opt_ void** ppDevice ); - - -typedef HRESULT (WINAPI* PFN_D3D12_GET_DEBUG_INTERFACE)( _In_ REFIID, _COM_Outptr_opt_ void** ); - -HRESULT WINAPI D3D12GetDebugInterface( _In_ REFIID riid, _COM_Outptr_opt_ void** ppvDebug ); - -// -------------------------------------------------------------------------------------------------------------------------------- -// D3D12EnableExperimentalFeatures -// -// Pass in a list of feature GUIDs to be enabled together. -// -// If a particular feature requires some configuration information on enablement, it will have -// a configuration struct that can be passed alongside the GUID. -// -// Some features might use an interface IID as the GUID. For these, once the feature is enabled via -// D3D12EnableExperimentalFeatures, D3D12GetDebugInterface can then be called with the IID to retrieve the interface -// for manipulating the feature. This allows for control that might not cleanly be expressed by just -// the configuration struct that D3D12EnableExperimentalFeatures provides. -// -// If this method is called and a change to existing feature enablement is made, -// all current D3D12 devices are set to DEVICE_REMOVED state, since under the covers there is really only one -// singleton device for a process. Removing the devices when configuration changes prevents -// mismatched expectations of how a device is supposed to work after it has been created from the app's point of view. -// -// The call returns E_NOINTERFACE if an unrecognized feature is passed in or Windows Developer mode is not on. -// The call returns E_INVALIDARG if the configuration of a feature is incorrect, the set of features passed -// in are known to be incompatible with each other, or other errors. -// Returns S_OK otherwise. -// -// -------------------------------------------------------------------------------------------------------------------------------- + DECLSPEC_XFGVIRT(ID3D12Object, SetPrivateDataInterface) + HRESULT ( STDMETHODCALLTYPE *SetPrivateDataInterface )( + ID3D12Device10 * This, + _In_ REFGUID guid, + _In_opt_ const IUnknown *pData); + + DECLSPEC_XFGVIRT(ID3D12Object, SetName) + HRESULT ( STDMETHODCALLTYPE *SetName )( + ID3D12Device10 * This, + _In_z_ LPCWSTR Name); + + DECLSPEC_XFGVIRT(ID3D12Device, GetNodeCount) + UINT ( STDMETHODCALLTYPE *GetNodeCount )( + ID3D12Device10 * This); + + DECLSPEC_XFGVIRT(ID3D12Device, CreateCommandQueue) + HRESULT ( STDMETHODCALLTYPE *CreateCommandQueue )( + ID3D12Device10 * This, + _In_ const D3D12_COMMAND_QUEUE_DESC *pDesc, + REFIID riid, + _COM_Outptr_ void **ppCommandQueue); + + DECLSPEC_XFGVIRT(ID3D12Device, CreateCommandAllocator) + HRESULT ( STDMETHODCALLTYPE *CreateCommandAllocator )( + ID3D12Device10 * This, + _In_ D3D12_COMMAND_LIST_TYPE type, + REFIID riid, + _COM_Outptr_ void **ppCommandAllocator); + + DECLSPEC_XFGVIRT(ID3D12Device, CreateGraphicsPipelineState) + HRESULT ( STDMETHODCALLTYPE *CreateGraphicsPipelineState )( + ID3D12Device10 * This, + _In_ const D3D12_GRAPHICS_PIPELINE_STATE_DESC *pDesc, + REFIID riid, + _COM_Outptr_ void **ppPipelineState); + + DECLSPEC_XFGVIRT(ID3D12Device, CreateComputePipelineState) + HRESULT ( STDMETHODCALLTYPE *CreateComputePipelineState )( + ID3D12Device10 * This, + _In_ const D3D12_COMPUTE_PIPELINE_STATE_DESC *pDesc, + REFIID riid, + _COM_Outptr_ void **ppPipelineState); + + DECLSPEC_XFGVIRT(ID3D12Device, CreateCommandList) + HRESULT ( STDMETHODCALLTYPE *CreateCommandList )( + ID3D12Device10 * This, + _In_ UINT nodeMask, + _In_ D3D12_COMMAND_LIST_TYPE type, + _In_ ID3D12CommandAllocator *pCommandAllocator, + _In_opt_ ID3D12PipelineState *pInitialState, + REFIID riid, + _COM_Outptr_ void **ppCommandList); + + DECLSPEC_XFGVIRT(ID3D12Device, CheckFeatureSupport) + HRESULT ( STDMETHODCALLTYPE *CheckFeatureSupport )( + ID3D12Device10 * This, + D3D12_FEATURE Feature, + _Inout_updates_bytes_(FeatureSupportDataSize) void *pFeatureSupportData, + UINT FeatureSupportDataSize); + + DECLSPEC_XFGVIRT(ID3D12Device, CreateDescriptorHeap) + HRESULT ( STDMETHODCALLTYPE *CreateDescriptorHeap )( + ID3D12Device10 * This, + _In_ const D3D12_DESCRIPTOR_HEAP_DESC *pDescriptorHeapDesc, + REFIID riid, + _COM_Outptr_ void **ppvHeap); + + DECLSPEC_XFGVIRT(ID3D12Device, GetDescriptorHandleIncrementSize) + UINT ( STDMETHODCALLTYPE *GetDescriptorHandleIncrementSize )( + ID3D12Device10 * This, + _In_ D3D12_DESCRIPTOR_HEAP_TYPE DescriptorHeapType); + + DECLSPEC_XFGVIRT(ID3D12Device, CreateRootSignature) + HRESULT ( STDMETHODCALLTYPE *CreateRootSignature )( + ID3D12Device10 * This, + _In_ UINT nodeMask, + _In_reads_(blobLengthInBytes) const void *pBlobWithRootSignature, + _In_ SIZE_T blobLengthInBytes, + REFIID riid, + _COM_Outptr_ void **ppvRootSignature); + + DECLSPEC_XFGVIRT(ID3D12Device, CreateConstantBufferView) + void ( STDMETHODCALLTYPE *CreateConstantBufferView )( + ID3D12Device10 * This, + _In_opt_ const D3D12_CONSTANT_BUFFER_VIEW_DESC *pDesc, + _In_ D3D12_CPU_DESCRIPTOR_HANDLE DestDescriptor); + + DECLSPEC_XFGVIRT(ID3D12Device, CreateShaderResourceView) + void ( STDMETHODCALLTYPE *CreateShaderResourceView )( + ID3D12Device10 * This, + _In_opt_ ID3D12Resource *pResource, + _In_opt_ const D3D12_SHADER_RESOURCE_VIEW_DESC *pDesc, + _In_ D3D12_CPU_DESCRIPTOR_HANDLE DestDescriptor); + + DECLSPEC_XFGVIRT(ID3D12Device, CreateUnorderedAccessView) + void ( STDMETHODCALLTYPE *CreateUnorderedAccessView )( + ID3D12Device10 * This, + _In_opt_ ID3D12Resource *pResource, + _In_opt_ ID3D12Resource *pCounterResource, + _In_opt_ const D3D12_UNORDERED_ACCESS_VIEW_DESC *pDesc, + _In_ D3D12_CPU_DESCRIPTOR_HANDLE DestDescriptor); + + DECLSPEC_XFGVIRT(ID3D12Device, CreateRenderTargetView) + void ( STDMETHODCALLTYPE *CreateRenderTargetView )( + ID3D12Device10 * This, + _In_opt_ ID3D12Resource *pResource, + _In_opt_ const D3D12_RENDER_TARGET_VIEW_DESC *pDesc, + _In_ D3D12_CPU_DESCRIPTOR_HANDLE DestDescriptor); + + DECLSPEC_XFGVIRT(ID3D12Device, CreateDepthStencilView) + void ( STDMETHODCALLTYPE *CreateDepthStencilView )( + ID3D12Device10 * This, + _In_opt_ ID3D12Resource *pResource, + _In_opt_ const D3D12_DEPTH_STENCIL_VIEW_DESC *pDesc, + _In_ D3D12_CPU_DESCRIPTOR_HANDLE DestDescriptor); + + DECLSPEC_XFGVIRT(ID3D12Device, CreateSampler) + void ( STDMETHODCALLTYPE *CreateSampler )( + ID3D12Device10 * This, + _In_ const D3D12_SAMPLER_DESC *pDesc, + _In_ D3D12_CPU_DESCRIPTOR_HANDLE DestDescriptor); + + DECLSPEC_XFGVIRT(ID3D12Device, CopyDescriptors) + void ( STDMETHODCALLTYPE *CopyDescriptors )( + ID3D12Device10 * This, + _In_ UINT NumDestDescriptorRanges, + _In_reads_(NumDestDescriptorRanges) const D3D12_CPU_DESCRIPTOR_HANDLE *pDestDescriptorRangeStarts, + _In_reads_opt_(NumDestDescriptorRanges) const UINT *pDestDescriptorRangeSizes, + _In_ UINT NumSrcDescriptorRanges, + _In_reads_(NumSrcDescriptorRanges) const D3D12_CPU_DESCRIPTOR_HANDLE *pSrcDescriptorRangeStarts, + _In_reads_opt_(NumSrcDescriptorRanges) const UINT *pSrcDescriptorRangeSizes, + _In_ D3D12_DESCRIPTOR_HEAP_TYPE DescriptorHeapsType); + + DECLSPEC_XFGVIRT(ID3D12Device, CopyDescriptorsSimple) + void ( STDMETHODCALLTYPE *CopyDescriptorsSimple )( + ID3D12Device10 * This, + _In_ UINT NumDescriptors, + _In_ D3D12_CPU_DESCRIPTOR_HANDLE DestDescriptorRangeStart, + _In_ D3D12_CPU_DESCRIPTOR_HANDLE SrcDescriptorRangeStart, + _In_ D3D12_DESCRIPTOR_HEAP_TYPE DescriptorHeapsType); + + DECLSPEC_XFGVIRT(ID3D12Device, GetResourceAllocationInfo) +#if !defined(_WIN32) + D3D12_RESOURCE_ALLOCATION_INFO ( STDMETHODCALLTYPE *GetResourceAllocationInfo )( + ID3D12Device10 * This, + _In_ UINT visibleMask, + _In_ UINT numResourceDescs, + _In_reads_(numResourceDescs) const D3D12_RESOURCE_DESC *pResourceDescs); + +#else + D3D12_RESOURCE_ALLOCATION_INFO *( STDMETHODCALLTYPE *GetResourceAllocationInfo )( + ID3D12Device10 * This, + D3D12_RESOURCE_ALLOCATION_INFO * RetVal, + _In_ UINT visibleMask, + _In_ UINT numResourceDescs, + _In_reads_(numResourceDescs) const D3D12_RESOURCE_DESC *pResourceDescs); + +#endif + + DECLSPEC_XFGVIRT(ID3D12Device, GetCustomHeapProperties) +#if !defined(_WIN32) + D3D12_HEAP_PROPERTIES ( STDMETHODCALLTYPE *GetCustomHeapProperties )( + ID3D12Device10 * This, + _In_ UINT nodeMask, + D3D12_HEAP_TYPE heapType); + +#else + D3D12_HEAP_PROPERTIES *( STDMETHODCALLTYPE *GetCustomHeapProperties )( + ID3D12Device10 * This, + D3D12_HEAP_PROPERTIES * RetVal, + _In_ UINT nodeMask, + D3D12_HEAP_TYPE heapType); + +#endif + + DECLSPEC_XFGVIRT(ID3D12Device, CreateCommittedResource) + HRESULT ( STDMETHODCALLTYPE *CreateCommittedResource )( + ID3D12Device10 * This, + _In_ const D3D12_HEAP_PROPERTIES *pHeapProperties, + D3D12_HEAP_FLAGS HeapFlags, + _In_ const D3D12_RESOURCE_DESC *pDesc, + D3D12_RESOURCE_STATES InitialResourceState, + _In_opt_ const D3D12_CLEAR_VALUE *pOptimizedClearValue, + REFIID riidResource, + _COM_Outptr_opt_ void **ppvResource); + + DECLSPEC_XFGVIRT(ID3D12Device, CreateHeap) + HRESULT ( STDMETHODCALLTYPE *CreateHeap )( + ID3D12Device10 * This, + _In_ const D3D12_HEAP_DESC *pDesc, + REFIID riid, + _COM_Outptr_opt_ void **ppvHeap); + + DECLSPEC_XFGVIRT(ID3D12Device, CreatePlacedResource) + HRESULT ( STDMETHODCALLTYPE *CreatePlacedResource )( + ID3D12Device10 * This, + _In_ ID3D12Heap *pHeap, + UINT64 HeapOffset, + _In_ const D3D12_RESOURCE_DESC *pDesc, + D3D12_RESOURCE_STATES InitialState, + _In_opt_ const D3D12_CLEAR_VALUE *pOptimizedClearValue, + REFIID riid, + _COM_Outptr_opt_ void **ppvResource); + + DECLSPEC_XFGVIRT(ID3D12Device, CreateReservedResource) + HRESULT ( STDMETHODCALLTYPE *CreateReservedResource )( + ID3D12Device10 * This, + _In_ const D3D12_RESOURCE_DESC *pDesc, + D3D12_RESOURCE_STATES InitialState, + _In_opt_ const D3D12_CLEAR_VALUE *pOptimizedClearValue, + REFIID riid, + _COM_Outptr_opt_ void **ppvResource); + + DECLSPEC_XFGVIRT(ID3D12Device, CreateSharedHandle) + HRESULT ( STDMETHODCALLTYPE *CreateSharedHandle )( + ID3D12Device10 * This, + _In_ ID3D12DeviceChild *pObject, + _In_opt_ const SECURITY_ATTRIBUTES *pAttributes, + DWORD Access, + _In_opt_ LPCWSTR Name, + _Out_ HANDLE *pHandle); + + DECLSPEC_XFGVIRT(ID3D12Device, OpenSharedHandle) + HRESULT ( STDMETHODCALLTYPE *OpenSharedHandle )( + ID3D12Device10 * This, + _In_ HANDLE NTHandle, + REFIID riid, + _COM_Outptr_opt_ void **ppvObj); + + DECLSPEC_XFGVIRT(ID3D12Device, OpenSharedHandleByName) + HRESULT ( STDMETHODCALLTYPE *OpenSharedHandleByName )( + ID3D12Device10 * This, + _In_ LPCWSTR Name, + DWORD Access, + /* [annotation][out] */ + _Out_ HANDLE *pNTHandle); + + DECLSPEC_XFGVIRT(ID3D12Device, MakeResident) + HRESULT ( STDMETHODCALLTYPE *MakeResident )( + ID3D12Device10 * This, + UINT NumObjects, + _In_reads_(NumObjects) ID3D12Pageable *const *ppObjects); + + DECLSPEC_XFGVIRT(ID3D12Device, Evict) + HRESULT ( STDMETHODCALLTYPE *Evict )( + ID3D12Device10 * This, + UINT NumObjects, + _In_reads_(NumObjects) ID3D12Pageable *const *ppObjects); + + DECLSPEC_XFGVIRT(ID3D12Device, CreateFence) + HRESULT ( STDMETHODCALLTYPE *CreateFence )( + ID3D12Device10 * This, + UINT64 InitialValue, + D3D12_FENCE_FLAGS Flags, + REFIID riid, + _COM_Outptr_ void **ppFence); + + DECLSPEC_XFGVIRT(ID3D12Device, GetDeviceRemovedReason) + HRESULT ( STDMETHODCALLTYPE *GetDeviceRemovedReason )( + ID3D12Device10 * This); + + DECLSPEC_XFGVIRT(ID3D12Device, GetCopyableFootprints) + void ( STDMETHODCALLTYPE *GetCopyableFootprints )( + ID3D12Device10 * This, + _In_ const D3D12_RESOURCE_DESC *pResourceDesc, + _In_range_(0,D3D12_REQ_SUBRESOURCES) UINT FirstSubresource, + _In_range_(0,D3D12_REQ_SUBRESOURCES-FirstSubresource) UINT NumSubresources, + UINT64 BaseOffset, + _Out_writes_opt_(NumSubresources) D3D12_PLACED_SUBRESOURCE_FOOTPRINT *pLayouts, + _Out_writes_opt_(NumSubresources) UINT *pNumRows, + _Out_writes_opt_(NumSubresources) UINT64 *pRowSizeInBytes, + _Out_opt_ UINT64 *pTotalBytes); + + DECLSPEC_XFGVIRT(ID3D12Device, CreateQueryHeap) + HRESULT ( STDMETHODCALLTYPE *CreateQueryHeap )( + ID3D12Device10 * This, + _In_ const D3D12_QUERY_HEAP_DESC *pDesc, + REFIID riid, + _COM_Outptr_opt_ void **ppvHeap); + + DECLSPEC_XFGVIRT(ID3D12Device, SetStablePowerState) + HRESULT ( STDMETHODCALLTYPE *SetStablePowerState )( + ID3D12Device10 * This, + BOOL Enable); + + DECLSPEC_XFGVIRT(ID3D12Device, CreateCommandSignature) + HRESULT ( STDMETHODCALLTYPE *CreateCommandSignature )( + ID3D12Device10 * This, + _In_ const D3D12_COMMAND_SIGNATURE_DESC *pDesc, + _In_opt_ ID3D12RootSignature *pRootSignature, + REFIID riid, + _COM_Outptr_opt_ void **ppvCommandSignature); + + DECLSPEC_XFGVIRT(ID3D12Device, GetResourceTiling) + void ( STDMETHODCALLTYPE *GetResourceTiling )( + ID3D12Device10 * This, + _In_ ID3D12Resource *pTiledResource, + _Out_opt_ UINT *pNumTilesForEntireResource, + _Out_opt_ D3D12_PACKED_MIP_INFO *pPackedMipDesc, + _Out_opt_ D3D12_TILE_SHAPE *pStandardTileShapeForNonPackedMips, + _Inout_opt_ UINT *pNumSubresourceTilings, + _In_ UINT FirstSubresourceTilingToGet, + _Out_writes_(*pNumSubresourceTilings) D3D12_SUBRESOURCE_TILING *pSubresourceTilingsForNonPackedMips); + + DECLSPEC_XFGVIRT(ID3D12Device, GetAdapterLuid) +#if !defined(_WIN32) + LUID ( STDMETHODCALLTYPE *GetAdapterLuid )( + ID3D12Device10 * This); + +#else + LUID *( STDMETHODCALLTYPE *GetAdapterLuid )( + ID3D12Device10 * This, + LUID * RetVal); + +#endif + + DECLSPEC_XFGVIRT(ID3D12Device1, CreatePipelineLibrary) + HRESULT ( STDMETHODCALLTYPE *CreatePipelineLibrary )( + ID3D12Device10 * This, + _In_reads_(BlobLength) const void *pLibraryBlob, + SIZE_T BlobLength, + REFIID riid, + _COM_Outptr_ void **ppPipelineLibrary); + + DECLSPEC_XFGVIRT(ID3D12Device1, SetEventOnMultipleFenceCompletion) + HRESULT ( STDMETHODCALLTYPE *SetEventOnMultipleFenceCompletion )( + ID3D12Device10 * This, + _In_reads_(NumFences) ID3D12Fence *const *ppFences, + _In_reads_(NumFences) const UINT64 *pFenceValues, + UINT NumFences, + D3D12_MULTIPLE_FENCE_WAIT_FLAGS Flags, + HANDLE hEvent); + + DECLSPEC_XFGVIRT(ID3D12Device1, SetResidencyPriority) + HRESULT ( STDMETHODCALLTYPE *SetResidencyPriority )( + ID3D12Device10 * This, + UINT NumObjects, + _In_reads_(NumObjects) ID3D12Pageable *const *ppObjects, + _In_reads_(NumObjects) const D3D12_RESIDENCY_PRIORITY *pPriorities); + + DECLSPEC_XFGVIRT(ID3D12Device2, CreatePipelineState) + HRESULT ( STDMETHODCALLTYPE *CreatePipelineState )( + ID3D12Device10 * This, + const D3D12_PIPELINE_STATE_STREAM_DESC *pDesc, + REFIID riid, + _COM_Outptr_ void **ppPipelineState); + + DECLSPEC_XFGVIRT(ID3D12Device3, OpenExistingHeapFromAddress) + HRESULT ( STDMETHODCALLTYPE *OpenExistingHeapFromAddress )( + ID3D12Device10 * This, + _In_ const void *pAddress, + REFIID riid, + _COM_Outptr_ void **ppvHeap); + + DECLSPEC_XFGVIRT(ID3D12Device3, OpenExistingHeapFromFileMapping) + HRESULT ( STDMETHODCALLTYPE *OpenExistingHeapFromFileMapping )( + ID3D12Device10 * This, + _In_ HANDLE hFileMapping, + REFIID riid, + _COM_Outptr_ void **ppvHeap); + + DECLSPEC_XFGVIRT(ID3D12Device3, EnqueueMakeResident) + HRESULT ( STDMETHODCALLTYPE *EnqueueMakeResident )( + ID3D12Device10 * This, + D3D12_RESIDENCY_FLAGS Flags, + UINT NumObjects, + _In_reads_(NumObjects) ID3D12Pageable *const *ppObjects, + _In_ ID3D12Fence *pFenceToSignal, + UINT64 FenceValueToSignal); + + DECLSPEC_XFGVIRT(ID3D12Device4, CreateCommandList1) + HRESULT ( STDMETHODCALLTYPE *CreateCommandList1 )( + ID3D12Device10 * This, + _In_ UINT nodeMask, + _In_ D3D12_COMMAND_LIST_TYPE type, + _In_ D3D12_COMMAND_LIST_FLAGS flags, + REFIID riid, + _COM_Outptr_ void **ppCommandList); + + DECLSPEC_XFGVIRT(ID3D12Device4, CreateProtectedResourceSession) + HRESULT ( STDMETHODCALLTYPE *CreateProtectedResourceSession )( + ID3D12Device10 * This, + _In_ const D3D12_PROTECTED_RESOURCE_SESSION_DESC *pDesc, + _In_ REFIID riid, + _COM_Outptr_ void **ppSession); + + DECLSPEC_XFGVIRT(ID3D12Device4, CreateCommittedResource1) + HRESULT ( STDMETHODCALLTYPE *CreateCommittedResource1 )( + ID3D12Device10 * This, + _In_ const D3D12_HEAP_PROPERTIES *pHeapProperties, + D3D12_HEAP_FLAGS HeapFlags, + _In_ const D3D12_RESOURCE_DESC *pDesc, + D3D12_RESOURCE_STATES InitialResourceState, + _In_opt_ const D3D12_CLEAR_VALUE *pOptimizedClearValue, + _In_opt_ ID3D12ProtectedResourceSession *pProtectedSession, + REFIID riidResource, + _COM_Outptr_opt_ void **ppvResource); + + DECLSPEC_XFGVIRT(ID3D12Device4, CreateHeap1) + HRESULT ( STDMETHODCALLTYPE *CreateHeap1 )( + ID3D12Device10 * This, + _In_ const D3D12_HEAP_DESC *pDesc, + _In_opt_ ID3D12ProtectedResourceSession *pProtectedSession, + REFIID riid, + _COM_Outptr_opt_ void **ppvHeap); + + DECLSPEC_XFGVIRT(ID3D12Device4, CreateReservedResource1) + HRESULT ( STDMETHODCALLTYPE *CreateReservedResource1 )( + ID3D12Device10 * This, + _In_ const D3D12_RESOURCE_DESC *pDesc, + D3D12_RESOURCE_STATES InitialState, + _In_opt_ const D3D12_CLEAR_VALUE *pOptimizedClearValue, + _In_opt_ ID3D12ProtectedResourceSession *pProtectedSession, + REFIID riid, + _COM_Outptr_opt_ void **ppvResource); + + DECLSPEC_XFGVIRT(ID3D12Device4, GetResourceAllocationInfo1) +#if !defined(_WIN32) + D3D12_RESOURCE_ALLOCATION_INFO ( STDMETHODCALLTYPE *GetResourceAllocationInfo1 )( + ID3D12Device10 * This, + UINT visibleMask, + UINT numResourceDescs, + _In_reads_(numResourceDescs) const D3D12_RESOURCE_DESC *pResourceDescs, + _Out_writes_opt_(numResourceDescs) D3D12_RESOURCE_ALLOCATION_INFO1 *pResourceAllocationInfo1); + +#else + D3D12_RESOURCE_ALLOCATION_INFO *( STDMETHODCALLTYPE *GetResourceAllocationInfo1 )( + ID3D12Device10 * This, + D3D12_RESOURCE_ALLOCATION_INFO * RetVal, + UINT visibleMask, + UINT numResourceDescs, + _In_reads_(numResourceDescs) const D3D12_RESOURCE_DESC *pResourceDescs, + _Out_writes_opt_(numResourceDescs) D3D12_RESOURCE_ALLOCATION_INFO1 *pResourceAllocationInfo1); + +#endif + + DECLSPEC_XFGVIRT(ID3D12Device5, CreateLifetimeTracker) + HRESULT ( STDMETHODCALLTYPE *CreateLifetimeTracker )( + ID3D12Device10 * This, + _In_ ID3D12LifetimeOwner *pOwner, + REFIID riid, + _COM_Outptr_ void **ppvTracker); + + DECLSPEC_XFGVIRT(ID3D12Device5, RemoveDevice) + void ( STDMETHODCALLTYPE *RemoveDevice )( + ID3D12Device10 * This); + + DECLSPEC_XFGVIRT(ID3D12Device5, EnumerateMetaCommands) + HRESULT ( STDMETHODCALLTYPE *EnumerateMetaCommands )( + ID3D12Device10 * This, + _Inout_ UINT *pNumMetaCommands, + _Out_writes_opt_(*pNumMetaCommands) D3D12_META_COMMAND_DESC *pDescs); + + DECLSPEC_XFGVIRT(ID3D12Device5, EnumerateMetaCommandParameters) + HRESULT ( STDMETHODCALLTYPE *EnumerateMetaCommandParameters )( + ID3D12Device10 * This, + _In_ REFGUID CommandId, + _In_ D3D12_META_COMMAND_PARAMETER_STAGE Stage, + _Out_opt_ UINT *pTotalStructureSizeInBytes, + _Inout_ UINT *pParameterCount, + _Out_writes_opt_(*pParameterCount) D3D12_META_COMMAND_PARAMETER_DESC *pParameterDescs); + + DECLSPEC_XFGVIRT(ID3D12Device5, CreateMetaCommand) + HRESULT ( STDMETHODCALLTYPE *CreateMetaCommand )( + ID3D12Device10 * This, + _In_ REFGUID CommandId, + _In_ UINT NodeMask, + _In_reads_bytes_opt_(CreationParametersDataSizeInBytes) const void *pCreationParametersData, + _In_ SIZE_T CreationParametersDataSizeInBytes, + REFIID riid, + _COM_Outptr_ void **ppMetaCommand); + + DECLSPEC_XFGVIRT(ID3D12Device5, CreateStateObject) + HRESULT ( STDMETHODCALLTYPE *CreateStateObject )( + ID3D12Device10 * This, + const D3D12_STATE_OBJECT_DESC *pDesc, + REFIID riid, + _COM_Outptr_ void **ppStateObject); + + DECLSPEC_XFGVIRT(ID3D12Device5, GetRaytracingAccelerationStructurePrebuildInfo) + void ( STDMETHODCALLTYPE *GetRaytracingAccelerationStructurePrebuildInfo )( + ID3D12Device10 * This, + _In_ const D3D12_BUILD_RAYTRACING_ACCELERATION_STRUCTURE_INPUTS *pDesc, + _Out_ D3D12_RAYTRACING_ACCELERATION_STRUCTURE_PREBUILD_INFO *pInfo); + + DECLSPEC_XFGVIRT(ID3D12Device5, CheckDriverMatchingIdentifier) + D3D12_DRIVER_MATCHING_IDENTIFIER_STATUS ( STDMETHODCALLTYPE *CheckDriverMatchingIdentifier )( + ID3D12Device10 * This, + _In_ D3D12_SERIALIZED_DATA_TYPE SerializedDataType, + _In_ const D3D12_SERIALIZED_DATA_DRIVER_MATCHING_IDENTIFIER *pIdentifierToCheck); + + DECLSPEC_XFGVIRT(ID3D12Device6, SetBackgroundProcessingMode) + HRESULT ( STDMETHODCALLTYPE *SetBackgroundProcessingMode )( + ID3D12Device10 * This, + D3D12_BACKGROUND_PROCESSING_MODE Mode, + D3D12_MEASUREMENTS_ACTION MeasurementsAction, + _In_opt_ HANDLE hEventToSignalUponCompletion, + _Out_opt_ BOOL *pbFurtherMeasurementsDesired); + + DECLSPEC_XFGVIRT(ID3D12Device7, AddToStateObject) + HRESULT ( STDMETHODCALLTYPE *AddToStateObject )( + ID3D12Device10 * This, + const D3D12_STATE_OBJECT_DESC *pAddition, + ID3D12StateObject *pStateObjectToGrowFrom, + REFIID riid, + _COM_Outptr_ void **ppNewStateObject); + + DECLSPEC_XFGVIRT(ID3D12Device7, CreateProtectedResourceSession1) + HRESULT ( STDMETHODCALLTYPE *CreateProtectedResourceSession1 )( + ID3D12Device10 * This, + _In_ const D3D12_PROTECTED_RESOURCE_SESSION_DESC1 *pDesc, + _In_ REFIID riid, + _COM_Outptr_ void **ppSession); + + DECLSPEC_XFGVIRT(ID3D12Device8, GetResourceAllocationInfo2) +#if !defined(_WIN32) + D3D12_RESOURCE_ALLOCATION_INFO ( STDMETHODCALLTYPE *GetResourceAllocationInfo2 )( + ID3D12Device10 * This, + UINT visibleMask, + UINT numResourceDescs, + _In_reads_(numResourceDescs) const D3D12_RESOURCE_DESC1 *pResourceDescs, + _Out_writes_opt_(numResourceDescs) D3D12_RESOURCE_ALLOCATION_INFO1 *pResourceAllocationInfo1); + +#else + D3D12_RESOURCE_ALLOCATION_INFO *( STDMETHODCALLTYPE *GetResourceAllocationInfo2 )( + ID3D12Device10 * This, + D3D12_RESOURCE_ALLOCATION_INFO * RetVal, + UINT visibleMask, + UINT numResourceDescs, + _In_reads_(numResourceDescs) const D3D12_RESOURCE_DESC1 *pResourceDescs, + _Out_writes_opt_(numResourceDescs) D3D12_RESOURCE_ALLOCATION_INFO1 *pResourceAllocationInfo1); + +#endif + + DECLSPEC_XFGVIRT(ID3D12Device8, CreateCommittedResource2) + HRESULT ( STDMETHODCALLTYPE *CreateCommittedResource2 )( + ID3D12Device10 * This, + _In_ const D3D12_HEAP_PROPERTIES *pHeapProperties, + D3D12_HEAP_FLAGS HeapFlags, + _In_ const D3D12_RESOURCE_DESC1 *pDesc, + D3D12_RESOURCE_STATES InitialResourceState, + _In_opt_ const D3D12_CLEAR_VALUE *pOptimizedClearValue, + _In_opt_ ID3D12ProtectedResourceSession *pProtectedSession, + REFIID riidResource, + _COM_Outptr_opt_ void **ppvResource); + + DECLSPEC_XFGVIRT(ID3D12Device8, CreatePlacedResource1) + HRESULT ( STDMETHODCALLTYPE *CreatePlacedResource1 )( + ID3D12Device10 * This, + _In_ ID3D12Heap *pHeap, + UINT64 HeapOffset, + _In_ const D3D12_RESOURCE_DESC1 *pDesc, + D3D12_RESOURCE_STATES InitialState, + _In_opt_ const D3D12_CLEAR_VALUE *pOptimizedClearValue, + REFIID riid, + _COM_Outptr_opt_ void **ppvResource); + + DECLSPEC_XFGVIRT(ID3D12Device8, CreateSamplerFeedbackUnorderedAccessView) + void ( STDMETHODCALLTYPE *CreateSamplerFeedbackUnorderedAccessView )( + ID3D12Device10 * This, + _In_opt_ ID3D12Resource *pTargetedResource, + _In_opt_ ID3D12Resource *pFeedbackResource, + _In_ D3D12_CPU_DESCRIPTOR_HANDLE DestDescriptor); + + DECLSPEC_XFGVIRT(ID3D12Device8, GetCopyableFootprints1) + void ( STDMETHODCALLTYPE *GetCopyableFootprints1 )( + ID3D12Device10 * This, + _In_ const D3D12_RESOURCE_DESC1 *pResourceDesc, + _In_range_(0,D3D12_REQ_SUBRESOURCES) UINT FirstSubresource, + _In_range_(0,D3D12_REQ_SUBRESOURCES-FirstSubresource) UINT NumSubresources, + UINT64 BaseOffset, + _Out_writes_opt_(NumSubresources) D3D12_PLACED_SUBRESOURCE_FOOTPRINT *pLayouts, + _Out_writes_opt_(NumSubresources) UINT *pNumRows, + _Out_writes_opt_(NumSubresources) UINT64 *pRowSizeInBytes, + _Out_opt_ UINT64 *pTotalBytes); + + DECLSPEC_XFGVIRT(ID3D12Device9, CreateShaderCacheSession) + HRESULT ( STDMETHODCALLTYPE *CreateShaderCacheSession )( + ID3D12Device10 * This, + _In_ const D3D12_SHADER_CACHE_SESSION_DESC *pDesc, + REFIID riid, + _COM_Outptr_opt_ void **ppvSession); + + DECLSPEC_XFGVIRT(ID3D12Device9, ShaderCacheControl) + HRESULT ( STDMETHODCALLTYPE *ShaderCacheControl )( + ID3D12Device10 * This, + D3D12_SHADER_CACHE_KIND_FLAGS Kinds, + D3D12_SHADER_CACHE_CONTROL_FLAGS Control); + + DECLSPEC_XFGVIRT(ID3D12Device9, CreateCommandQueue1) + HRESULT ( STDMETHODCALLTYPE *CreateCommandQueue1 )( + ID3D12Device10 * This, + _In_ const D3D12_COMMAND_QUEUE_DESC *pDesc, + REFIID CreatorID, + REFIID riid, + _COM_Outptr_ void **ppCommandQueue); + + DECLSPEC_XFGVIRT(ID3D12Device10, CreateCommittedResource3) + HRESULT ( STDMETHODCALLTYPE *CreateCommittedResource3 )( + ID3D12Device10 * This, + _In_ const D3D12_HEAP_PROPERTIES *pHeapProperties, + D3D12_HEAP_FLAGS HeapFlags, + _In_ const D3D12_RESOURCE_DESC1 *pDesc, + D3D12_BARRIER_LAYOUT InitialLayout, + _In_opt_ const D3D12_CLEAR_VALUE *pOptimizedClearValue, + _In_opt_ ID3D12ProtectedResourceSession *pProtectedSession, + UINT32 NumCastableFormats, + _In_opt_count_(NumCastableFormats) DXGI_FORMAT *pCastableFormats, + REFIID riidResource, + _COM_Outptr_opt_ void **ppvResource); + + DECLSPEC_XFGVIRT(ID3D12Device10, CreatePlacedResource2) + HRESULT ( STDMETHODCALLTYPE *CreatePlacedResource2 )( + ID3D12Device10 * This, + _In_ ID3D12Heap *pHeap, + UINT64 HeapOffset, + _In_ const D3D12_RESOURCE_DESC1 *pDesc, + D3D12_BARRIER_LAYOUT InitialLayout, + _In_opt_ const D3D12_CLEAR_VALUE *pOptimizedClearValue, + UINT32 NumCastableFormats, + _In_opt_count_(NumCastableFormats) DXGI_FORMAT *pCastableFormats, + REFIID riid, + _COM_Outptr_opt_ void **ppvResource); + + DECLSPEC_XFGVIRT(ID3D12Device10, CreateReservedResource2) + HRESULT ( STDMETHODCALLTYPE *CreateReservedResource2 )( + ID3D12Device10 * This, + _In_ const D3D12_RESOURCE_DESC *pDesc, + D3D12_BARRIER_LAYOUT InitialLayout, + _In_opt_ const D3D12_CLEAR_VALUE *pOptimizedClearValue, + _In_opt_ ID3D12ProtectedResourceSession *pProtectedSession, + UINT32 NumCastableFormats, + _In_opt_count_(NumCastableFormats) DXGI_FORMAT *pCastableFormats, + REFIID riid, + _COM_Outptr_opt_ void **ppvResource); + + END_INTERFACE + } ID3D12Device10Vtbl; + + interface ID3D12Device10 + { + CONST_VTBL struct ID3D12Device10Vtbl *lpVtbl; + }; + + + +#ifdef COBJMACROS + + +#define ID3D12Device10_QueryInterface(This,riid,ppvObject) \ + ( (This)->lpVtbl -> QueryInterface(This,riid,ppvObject) ) + +#define ID3D12Device10_AddRef(This) \ + ( (This)->lpVtbl -> AddRef(This) ) + +#define ID3D12Device10_Release(This) \ + ( (This)->lpVtbl -> Release(This) ) + + +#define ID3D12Device10_GetPrivateData(This,guid,pDataSize,pData) \ + ( (This)->lpVtbl -> GetPrivateData(This,guid,pDataSize,pData) ) + +#define ID3D12Device10_SetPrivateData(This,guid,DataSize,pData) \ + ( (This)->lpVtbl -> SetPrivateData(This,guid,DataSize,pData) ) + +#define ID3D12Device10_SetPrivateDataInterface(This,guid,pData) \ + ( (This)->lpVtbl -> SetPrivateDataInterface(This,guid,pData) ) + +#define ID3D12Device10_SetName(This,Name) \ + ( (This)->lpVtbl -> SetName(This,Name) ) + + +#define ID3D12Device10_GetNodeCount(This) \ + ( (This)->lpVtbl -> GetNodeCount(This) ) + +#define ID3D12Device10_CreateCommandQueue(This,pDesc,riid,ppCommandQueue) \ + ( (This)->lpVtbl -> CreateCommandQueue(This,pDesc,riid,ppCommandQueue) ) + +#define ID3D12Device10_CreateCommandAllocator(This,type,riid,ppCommandAllocator) \ + ( (This)->lpVtbl -> CreateCommandAllocator(This,type,riid,ppCommandAllocator) ) + +#define ID3D12Device10_CreateGraphicsPipelineState(This,pDesc,riid,ppPipelineState) \ + ( (This)->lpVtbl -> CreateGraphicsPipelineState(This,pDesc,riid,ppPipelineState) ) + +#define ID3D12Device10_CreateComputePipelineState(This,pDesc,riid,ppPipelineState) \ + ( (This)->lpVtbl -> CreateComputePipelineState(This,pDesc,riid,ppPipelineState) ) + +#define ID3D12Device10_CreateCommandList(This,nodeMask,type,pCommandAllocator,pInitialState,riid,ppCommandList) \ + ( (This)->lpVtbl -> CreateCommandList(This,nodeMask,type,pCommandAllocator,pInitialState,riid,ppCommandList) ) + +#define ID3D12Device10_CheckFeatureSupport(This,Feature,pFeatureSupportData,FeatureSupportDataSize) \ + ( (This)->lpVtbl -> CheckFeatureSupport(This,Feature,pFeatureSupportData,FeatureSupportDataSize) ) + +#define ID3D12Device10_CreateDescriptorHeap(This,pDescriptorHeapDesc,riid,ppvHeap) \ + ( (This)->lpVtbl -> CreateDescriptorHeap(This,pDescriptorHeapDesc,riid,ppvHeap) ) + +#define ID3D12Device10_GetDescriptorHandleIncrementSize(This,DescriptorHeapType) \ + ( (This)->lpVtbl -> GetDescriptorHandleIncrementSize(This,DescriptorHeapType) ) + +#define ID3D12Device10_CreateRootSignature(This,nodeMask,pBlobWithRootSignature,blobLengthInBytes,riid,ppvRootSignature) \ + ( (This)->lpVtbl -> CreateRootSignature(This,nodeMask,pBlobWithRootSignature,blobLengthInBytes,riid,ppvRootSignature) ) + +#define ID3D12Device10_CreateConstantBufferView(This,pDesc,DestDescriptor) \ + ( (This)->lpVtbl -> CreateConstantBufferView(This,pDesc,DestDescriptor) ) + +#define ID3D12Device10_CreateShaderResourceView(This,pResource,pDesc,DestDescriptor) \ + ( (This)->lpVtbl -> CreateShaderResourceView(This,pResource,pDesc,DestDescriptor) ) + +#define ID3D12Device10_CreateUnorderedAccessView(This,pResource,pCounterResource,pDesc,DestDescriptor) \ + ( (This)->lpVtbl -> CreateUnorderedAccessView(This,pResource,pCounterResource,pDesc,DestDescriptor) ) + +#define ID3D12Device10_CreateRenderTargetView(This,pResource,pDesc,DestDescriptor) \ + ( (This)->lpVtbl -> CreateRenderTargetView(This,pResource,pDesc,DestDescriptor) ) + +#define ID3D12Device10_CreateDepthStencilView(This,pResource,pDesc,DestDescriptor) \ + ( (This)->lpVtbl -> CreateDepthStencilView(This,pResource,pDesc,DestDescriptor) ) + +#define ID3D12Device10_CreateSampler(This,pDesc,DestDescriptor) \ + ( (This)->lpVtbl -> CreateSampler(This,pDesc,DestDescriptor) ) + +#define ID3D12Device10_CopyDescriptors(This,NumDestDescriptorRanges,pDestDescriptorRangeStarts,pDestDescriptorRangeSizes,NumSrcDescriptorRanges,pSrcDescriptorRangeStarts,pSrcDescriptorRangeSizes,DescriptorHeapsType) \ + ( (This)->lpVtbl -> CopyDescriptors(This,NumDestDescriptorRanges,pDestDescriptorRangeStarts,pDestDescriptorRangeSizes,NumSrcDescriptorRanges,pSrcDescriptorRangeStarts,pSrcDescriptorRangeSizes,DescriptorHeapsType) ) + +#define ID3D12Device10_CopyDescriptorsSimple(This,NumDescriptors,DestDescriptorRangeStart,SrcDescriptorRangeStart,DescriptorHeapsType) \ + ( (This)->lpVtbl -> CopyDescriptorsSimple(This,NumDescriptors,DestDescriptorRangeStart,SrcDescriptorRangeStart,DescriptorHeapsType) ) +#if !defined(_WIN32) + +#define ID3D12Device10_GetResourceAllocationInfo(This,visibleMask,numResourceDescs,pResourceDescs) \ + ( (This)->lpVtbl -> GetResourceAllocationInfo(This,visibleMask,numResourceDescs,pResourceDescs) ) +#else +#define ID3D12Device10_GetResourceAllocationInfo(This,RetVal,visibleMask,numResourceDescs,pResourceDescs) \ + ( (This)->lpVtbl -> GetResourceAllocationInfo(This,RetVal,visibleMask,numResourceDescs,pResourceDescs) ) +#endif +#if !defined(_WIN32) + +#define ID3D12Device10_GetCustomHeapProperties(This,nodeMask,heapType) \ + ( (This)->lpVtbl -> GetCustomHeapProperties(This,nodeMask,heapType) ) +#else +#define ID3D12Device10_GetCustomHeapProperties(This,RetVal,nodeMask,heapType) \ + ( (This)->lpVtbl -> GetCustomHeapProperties(This,RetVal,nodeMask,heapType) ) +#endif + +#define ID3D12Device10_CreateCommittedResource(This,pHeapProperties,HeapFlags,pDesc,InitialResourceState,pOptimizedClearValue,riidResource,ppvResource) \ + ( (This)->lpVtbl -> CreateCommittedResource(This,pHeapProperties,HeapFlags,pDesc,InitialResourceState,pOptimizedClearValue,riidResource,ppvResource) ) + +#define ID3D12Device10_CreateHeap(This,pDesc,riid,ppvHeap) \ + ( (This)->lpVtbl -> CreateHeap(This,pDesc,riid,ppvHeap) ) + +#define ID3D12Device10_CreatePlacedResource(This,pHeap,HeapOffset,pDesc,InitialState,pOptimizedClearValue,riid,ppvResource) \ + ( (This)->lpVtbl -> CreatePlacedResource(This,pHeap,HeapOffset,pDesc,InitialState,pOptimizedClearValue,riid,ppvResource) ) + +#define ID3D12Device10_CreateReservedResource(This,pDesc,InitialState,pOptimizedClearValue,riid,ppvResource) \ + ( (This)->lpVtbl -> CreateReservedResource(This,pDesc,InitialState,pOptimizedClearValue,riid,ppvResource) ) + +#define ID3D12Device10_CreateSharedHandle(This,pObject,pAttributes,Access,Name,pHandle) \ + ( (This)->lpVtbl -> CreateSharedHandle(This,pObject,pAttributes,Access,Name,pHandle) ) + +#define ID3D12Device10_OpenSharedHandle(This,NTHandle,riid,ppvObj) \ + ( (This)->lpVtbl -> OpenSharedHandle(This,NTHandle,riid,ppvObj) ) + +#define ID3D12Device10_OpenSharedHandleByName(This,Name,Access,pNTHandle) \ + ( (This)->lpVtbl -> OpenSharedHandleByName(This,Name,Access,pNTHandle) ) + +#define ID3D12Device10_MakeResident(This,NumObjects,ppObjects) \ + ( (This)->lpVtbl -> MakeResident(This,NumObjects,ppObjects) ) + +#define ID3D12Device10_Evict(This,NumObjects,ppObjects) \ + ( (This)->lpVtbl -> Evict(This,NumObjects,ppObjects) ) + +#define ID3D12Device10_CreateFence(This,InitialValue,Flags,riid,ppFence) \ + ( (This)->lpVtbl -> CreateFence(This,InitialValue,Flags,riid,ppFence) ) + +#define ID3D12Device10_GetDeviceRemovedReason(This) \ + ( (This)->lpVtbl -> GetDeviceRemovedReason(This) ) + +#define ID3D12Device10_GetCopyableFootprints(This,pResourceDesc,FirstSubresource,NumSubresources,BaseOffset,pLayouts,pNumRows,pRowSizeInBytes,pTotalBytes) \ + ( (This)->lpVtbl -> GetCopyableFootprints(This,pResourceDesc,FirstSubresource,NumSubresources,BaseOffset,pLayouts,pNumRows,pRowSizeInBytes,pTotalBytes) ) + +#define ID3D12Device10_CreateQueryHeap(This,pDesc,riid,ppvHeap) \ + ( (This)->lpVtbl -> CreateQueryHeap(This,pDesc,riid,ppvHeap) ) + +#define ID3D12Device10_SetStablePowerState(This,Enable) \ + ( (This)->lpVtbl -> SetStablePowerState(This,Enable) ) + +#define ID3D12Device10_CreateCommandSignature(This,pDesc,pRootSignature,riid,ppvCommandSignature) \ + ( (This)->lpVtbl -> CreateCommandSignature(This,pDesc,pRootSignature,riid,ppvCommandSignature) ) + +#define ID3D12Device10_GetResourceTiling(This,pTiledResource,pNumTilesForEntireResource,pPackedMipDesc,pStandardTileShapeForNonPackedMips,pNumSubresourceTilings,FirstSubresourceTilingToGet,pSubresourceTilingsForNonPackedMips) \ + ( (This)->lpVtbl -> GetResourceTiling(This,pTiledResource,pNumTilesForEntireResource,pPackedMipDesc,pStandardTileShapeForNonPackedMips,pNumSubresourceTilings,FirstSubresourceTilingToGet,pSubresourceTilingsForNonPackedMips) ) +#if !defined(_WIN32) + +#define ID3D12Device10_GetAdapterLuid(This) \ + ( (This)->lpVtbl -> GetAdapterLuid(This) ) +#else +#define ID3D12Device10_GetAdapterLuid(This,RetVal) \ + ( (This)->lpVtbl -> GetAdapterLuid(This,RetVal) ) +#endif + + +#define ID3D12Device10_CreatePipelineLibrary(This,pLibraryBlob,BlobLength,riid,ppPipelineLibrary) \ + ( (This)->lpVtbl -> CreatePipelineLibrary(This,pLibraryBlob,BlobLength,riid,ppPipelineLibrary) ) + +#define ID3D12Device10_SetEventOnMultipleFenceCompletion(This,ppFences,pFenceValues,NumFences,Flags,hEvent) \ + ( (This)->lpVtbl -> SetEventOnMultipleFenceCompletion(This,ppFences,pFenceValues,NumFences,Flags,hEvent) ) + +#define ID3D12Device10_SetResidencyPriority(This,NumObjects,ppObjects,pPriorities) \ + ( (This)->lpVtbl -> SetResidencyPriority(This,NumObjects,ppObjects,pPriorities) ) + + +#define ID3D12Device10_CreatePipelineState(This,pDesc,riid,ppPipelineState) \ + ( (This)->lpVtbl -> CreatePipelineState(This,pDesc,riid,ppPipelineState) ) + + +#define ID3D12Device10_OpenExistingHeapFromAddress(This,pAddress,riid,ppvHeap) \ + ( (This)->lpVtbl -> OpenExistingHeapFromAddress(This,pAddress,riid,ppvHeap) ) + +#define ID3D12Device10_OpenExistingHeapFromFileMapping(This,hFileMapping,riid,ppvHeap) \ + ( (This)->lpVtbl -> OpenExistingHeapFromFileMapping(This,hFileMapping,riid,ppvHeap) ) + +#define ID3D12Device10_EnqueueMakeResident(This,Flags,NumObjects,ppObjects,pFenceToSignal,FenceValueToSignal) \ + ( (This)->lpVtbl -> EnqueueMakeResident(This,Flags,NumObjects,ppObjects,pFenceToSignal,FenceValueToSignal) ) + + +#define ID3D12Device10_CreateCommandList1(This,nodeMask,type,flags,riid,ppCommandList) \ + ( (This)->lpVtbl -> CreateCommandList1(This,nodeMask,type,flags,riid,ppCommandList) ) + +#define ID3D12Device10_CreateProtectedResourceSession(This,pDesc,riid,ppSession) \ + ( (This)->lpVtbl -> CreateProtectedResourceSession(This,pDesc,riid,ppSession) ) + +#define ID3D12Device10_CreateCommittedResource1(This,pHeapProperties,HeapFlags,pDesc,InitialResourceState,pOptimizedClearValue,pProtectedSession,riidResource,ppvResource) \ + ( (This)->lpVtbl -> CreateCommittedResource1(This,pHeapProperties,HeapFlags,pDesc,InitialResourceState,pOptimizedClearValue,pProtectedSession,riidResource,ppvResource) ) + +#define ID3D12Device10_CreateHeap1(This,pDesc,pProtectedSession,riid,ppvHeap) \ + ( (This)->lpVtbl -> CreateHeap1(This,pDesc,pProtectedSession,riid,ppvHeap) ) + +#define ID3D12Device10_CreateReservedResource1(This,pDesc,InitialState,pOptimizedClearValue,pProtectedSession,riid,ppvResource) \ + ( (This)->lpVtbl -> CreateReservedResource1(This,pDesc,InitialState,pOptimizedClearValue,pProtectedSession,riid,ppvResource) ) +#if !defined(_WIN32) + +#define ID3D12Device10_GetResourceAllocationInfo1(This,visibleMask,numResourceDescs,pResourceDescs,pResourceAllocationInfo1) \ + ( (This)->lpVtbl -> GetResourceAllocationInfo1(This,visibleMask,numResourceDescs,pResourceDescs,pResourceAllocationInfo1) ) +#else +#define ID3D12Device10_GetResourceAllocationInfo1(This,RetVal,visibleMask,numResourceDescs,pResourceDescs,pResourceAllocationInfo1) \ + ( (This)->lpVtbl -> GetResourceAllocationInfo1(This,RetVal,visibleMask,numResourceDescs,pResourceDescs,pResourceAllocationInfo1) ) +#endif + + +#define ID3D12Device10_CreateLifetimeTracker(This,pOwner,riid,ppvTracker) \ + ( (This)->lpVtbl -> CreateLifetimeTracker(This,pOwner,riid,ppvTracker) ) + +#define ID3D12Device10_RemoveDevice(This) \ + ( (This)->lpVtbl -> RemoveDevice(This) ) + +#define ID3D12Device10_EnumerateMetaCommands(This,pNumMetaCommands,pDescs) \ + ( (This)->lpVtbl -> EnumerateMetaCommands(This,pNumMetaCommands,pDescs) ) + +#define ID3D12Device10_EnumerateMetaCommandParameters(This,CommandId,Stage,pTotalStructureSizeInBytes,pParameterCount,pParameterDescs) \ + ( (This)->lpVtbl -> EnumerateMetaCommandParameters(This,CommandId,Stage,pTotalStructureSizeInBytes,pParameterCount,pParameterDescs) ) + +#define ID3D12Device10_CreateMetaCommand(This,CommandId,NodeMask,pCreationParametersData,CreationParametersDataSizeInBytes,riid,ppMetaCommand) \ + ( (This)->lpVtbl -> CreateMetaCommand(This,CommandId,NodeMask,pCreationParametersData,CreationParametersDataSizeInBytes,riid,ppMetaCommand) ) + +#define ID3D12Device10_CreateStateObject(This,pDesc,riid,ppStateObject) \ + ( (This)->lpVtbl -> CreateStateObject(This,pDesc,riid,ppStateObject) ) + +#define ID3D12Device10_GetRaytracingAccelerationStructurePrebuildInfo(This,pDesc,pInfo) \ + ( (This)->lpVtbl -> GetRaytracingAccelerationStructurePrebuildInfo(This,pDesc,pInfo) ) + +#define ID3D12Device10_CheckDriverMatchingIdentifier(This,SerializedDataType,pIdentifierToCheck) \ + ( (This)->lpVtbl -> CheckDriverMatchingIdentifier(This,SerializedDataType,pIdentifierToCheck) ) + + +#define ID3D12Device10_SetBackgroundProcessingMode(This,Mode,MeasurementsAction,hEventToSignalUponCompletion,pbFurtherMeasurementsDesired) \ + ( (This)->lpVtbl -> SetBackgroundProcessingMode(This,Mode,MeasurementsAction,hEventToSignalUponCompletion,pbFurtherMeasurementsDesired) ) + + +#define ID3D12Device10_AddToStateObject(This,pAddition,pStateObjectToGrowFrom,riid,ppNewStateObject) \ + ( (This)->lpVtbl -> AddToStateObject(This,pAddition,pStateObjectToGrowFrom,riid,ppNewStateObject) ) + +#define ID3D12Device10_CreateProtectedResourceSession1(This,pDesc,riid,ppSession) \ + ( (This)->lpVtbl -> CreateProtectedResourceSession1(This,pDesc,riid,ppSession) ) + +#if !defined(_WIN32) + +#define ID3D12Device10_GetResourceAllocationInfo2(This,visibleMask,numResourceDescs,pResourceDescs,pResourceAllocationInfo1) \ + ( (This)->lpVtbl -> GetResourceAllocationInfo2(This,visibleMask,numResourceDescs,pResourceDescs,pResourceAllocationInfo1) ) +#else +#define ID3D12Device10_GetResourceAllocationInfo2(This,RetVal,visibleMask,numResourceDescs,pResourceDescs,pResourceAllocationInfo1) \ + ( (This)->lpVtbl -> GetResourceAllocationInfo2(This,RetVal,visibleMask,numResourceDescs,pResourceDescs,pResourceAllocationInfo1) ) +#endif + +#define ID3D12Device10_CreateCommittedResource2(This,pHeapProperties,HeapFlags,pDesc,InitialResourceState,pOptimizedClearValue,pProtectedSession,riidResource,ppvResource) \ + ( (This)->lpVtbl -> CreateCommittedResource2(This,pHeapProperties,HeapFlags,pDesc,InitialResourceState,pOptimizedClearValue,pProtectedSession,riidResource,ppvResource) ) + +#define ID3D12Device10_CreatePlacedResource1(This,pHeap,HeapOffset,pDesc,InitialState,pOptimizedClearValue,riid,ppvResource) \ + ( (This)->lpVtbl -> CreatePlacedResource1(This,pHeap,HeapOffset,pDesc,InitialState,pOptimizedClearValue,riid,ppvResource) ) + +#define ID3D12Device10_CreateSamplerFeedbackUnorderedAccessView(This,pTargetedResource,pFeedbackResource,DestDescriptor) \ + ( (This)->lpVtbl -> CreateSamplerFeedbackUnorderedAccessView(This,pTargetedResource,pFeedbackResource,DestDescriptor) ) + +#define ID3D12Device10_GetCopyableFootprints1(This,pResourceDesc,FirstSubresource,NumSubresources,BaseOffset,pLayouts,pNumRows,pRowSizeInBytes,pTotalBytes) \ + ( (This)->lpVtbl -> GetCopyableFootprints1(This,pResourceDesc,FirstSubresource,NumSubresources,BaseOffset,pLayouts,pNumRows,pRowSizeInBytes,pTotalBytes) ) + + +#define ID3D12Device10_CreateShaderCacheSession(This,pDesc,riid,ppvSession) \ + ( (This)->lpVtbl -> CreateShaderCacheSession(This,pDesc,riid,ppvSession) ) + +#define ID3D12Device10_ShaderCacheControl(This,Kinds,Control) \ + ( (This)->lpVtbl -> ShaderCacheControl(This,Kinds,Control) ) + +#define ID3D12Device10_CreateCommandQueue1(This,pDesc,CreatorID,riid,ppCommandQueue) \ + ( (This)->lpVtbl -> CreateCommandQueue1(This,pDesc,CreatorID,riid,ppCommandQueue) ) + + +#define ID3D12Device10_CreateCommittedResource3(This,pHeapProperties,HeapFlags,pDesc,InitialLayout,pOptimizedClearValue,pProtectedSession,NumCastableFormats,pCastableFormats,riidResource,ppvResource) \ + ( (This)->lpVtbl -> CreateCommittedResource3(This,pHeapProperties,HeapFlags,pDesc,InitialLayout,pOptimizedClearValue,pProtectedSession,NumCastableFormats,pCastableFormats,riidResource,ppvResource) ) + +#define ID3D12Device10_CreatePlacedResource2(This,pHeap,HeapOffset,pDesc,InitialLayout,pOptimizedClearValue,NumCastableFormats,pCastableFormats,riid,ppvResource) \ + ( (This)->lpVtbl -> CreatePlacedResource2(This,pHeap,HeapOffset,pDesc,InitialLayout,pOptimizedClearValue,NumCastableFormats,pCastableFormats,riid,ppvResource) ) + +#define ID3D12Device10_CreateReservedResource2(This,pDesc,InitialLayout,pOptimizedClearValue,pProtectedSession,NumCastableFormats,pCastableFormats,riid,ppvResource) \ + ( (This)->lpVtbl -> CreateReservedResource2(This,pDesc,InitialLayout,pOptimizedClearValue,pProtectedSession,NumCastableFormats,pCastableFormats,riid,ppvResource) ) + +#endif /* COBJMACROS */ + + +#endif /* C style interface */ + + + + +#endif /* __ID3D12Device10_INTERFACE_DEFINED__ */ + + +#ifndef __ID3D12Device11_INTERFACE_DEFINED__ +#define __ID3D12Device11_INTERFACE_DEFINED__ + +/* interface ID3D12Device11 */ +/* [unique][local][object][uuid] */ + + +EXTERN_C const IID IID_ID3D12Device11; + +#if defined(__cplusplus) && !defined(CINTERFACE) + + MIDL_INTERFACE("5405c344-d457-444e-b4dd-2366e45aee39") + ID3D12Device11 : public ID3D12Device10 + { + public: + virtual void STDMETHODCALLTYPE CreateSampler2( + _In_ const D3D12_SAMPLER_DESC2 *pDesc, + _In_ D3D12_CPU_DESCRIPTOR_HANDLE DestDescriptor) = 0; + + }; + + +#else /* C style interface */ + + typedef struct ID3D12Device11Vtbl + { + BEGIN_INTERFACE + + DECLSPEC_XFGVIRT(IUnknown, QueryInterface) + HRESULT ( STDMETHODCALLTYPE *QueryInterface )( + ID3D12Device11 * This, + REFIID riid, + _COM_Outptr_ void **ppvObject); + + DECLSPEC_XFGVIRT(IUnknown, AddRef) + ULONG ( STDMETHODCALLTYPE *AddRef )( + ID3D12Device11 * This); + + DECLSPEC_XFGVIRT(IUnknown, Release) + ULONG ( STDMETHODCALLTYPE *Release )( + ID3D12Device11 * This); + + DECLSPEC_XFGVIRT(ID3D12Object, GetPrivateData) + HRESULT ( STDMETHODCALLTYPE *GetPrivateData )( + ID3D12Device11 * This, + _In_ REFGUID guid, + _Inout_ UINT *pDataSize, + _Out_writes_bytes_opt_( *pDataSize ) void *pData); + + DECLSPEC_XFGVIRT(ID3D12Object, SetPrivateData) + HRESULT ( STDMETHODCALLTYPE *SetPrivateData )( + ID3D12Device11 * This, + _In_ REFGUID guid, + _In_ UINT DataSize, + _In_reads_bytes_opt_( DataSize ) const void *pData); + + DECLSPEC_XFGVIRT(ID3D12Object, SetPrivateDataInterface) + HRESULT ( STDMETHODCALLTYPE *SetPrivateDataInterface )( + ID3D12Device11 * This, + _In_ REFGUID guid, + _In_opt_ const IUnknown *pData); + + DECLSPEC_XFGVIRT(ID3D12Object, SetName) + HRESULT ( STDMETHODCALLTYPE *SetName )( + ID3D12Device11 * This, + _In_z_ LPCWSTR Name); + + DECLSPEC_XFGVIRT(ID3D12Device, GetNodeCount) + UINT ( STDMETHODCALLTYPE *GetNodeCount )( + ID3D12Device11 * This); + + DECLSPEC_XFGVIRT(ID3D12Device, CreateCommandQueue) + HRESULT ( STDMETHODCALLTYPE *CreateCommandQueue )( + ID3D12Device11 * This, + _In_ const D3D12_COMMAND_QUEUE_DESC *pDesc, + REFIID riid, + _COM_Outptr_ void **ppCommandQueue); + + DECLSPEC_XFGVIRT(ID3D12Device, CreateCommandAllocator) + HRESULT ( STDMETHODCALLTYPE *CreateCommandAllocator )( + ID3D12Device11 * This, + _In_ D3D12_COMMAND_LIST_TYPE type, + REFIID riid, + _COM_Outptr_ void **ppCommandAllocator); + + DECLSPEC_XFGVIRT(ID3D12Device, CreateGraphicsPipelineState) + HRESULT ( STDMETHODCALLTYPE *CreateGraphicsPipelineState )( + ID3D12Device11 * This, + _In_ const D3D12_GRAPHICS_PIPELINE_STATE_DESC *pDesc, + REFIID riid, + _COM_Outptr_ void **ppPipelineState); + + DECLSPEC_XFGVIRT(ID3D12Device, CreateComputePipelineState) + HRESULT ( STDMETHODCALLTYPE *CreateComputePipelineState )( + ID3D12Device11 * This, + _In_ const D3D12_COMPUTE_PIPELINE_STATE_DESC *pDesc, + REFIID riid, + _COM_Outptr_ void **ppPipelineState); + + DECLSPEC_XFGVIRT(ID3D12Device, CreateCommandList) + HRESULT ( STDMETHODCALLTYPE *CreateCommandList )( + ID3D12Device11 * This, + _In_ UINT nodeMask, + _In_ D3D12_COMMAND_LIST_TYPE type, + _In_ ID3D12CommandAllocator *pCommandAllocator, + _In_opt_ ID3D12PipelineState *pInitialState, + REFIID riid, + _COM_Outptr_ void **ppCommandList); + + DECLSPEC_XFGVIRT(ID3D12Device, CheckFeatureSupport) + HRESULT ( STDMETHODCALLTYPE *CheckFeatureSupport )( + ID3D12Device11 * This, + D3D12_FEATURE Feature, + _Inout_updates_bytes_(FeatureSupportDataSize) void *pFeatureSupportData, + UINT FeatureSupportDataSize); + + DECLSPEC_XFGVIRT(ID3D12Device, CreateDescriptorHeap) + HRESULT ( STDMETHODCALLTYPE *CreateDescriptorHeap )( + ID3D12Device11 * This, + _In_ const D3D12_DESCRIPTOR_HEAP_DESC *pDescriptorHeapDesc, + REFIID riid, + _COM_Outptr_ void **ppvHeap); + + DECLSPEC_XFGVIRT(ID3D12Device, GetDescriptorHandleIncrementSize) + UINT ( STDMETHODCALLTYPE *GetDescriptorHandleIncrementSize )( + ID3D12Device11 * This, + _In_ D3D12_DESCRIPTOR_HEAP_TYPE DescriptorHeapType); + + DECLSPEC_XFGVIRT(ID3D12Device, CreateRootSignature) + HRESULT ( STDMETHODCALLTYPE *CreateRootSignature )( + ID3D12Device11 * This, + _In_ UINT nodeMask, + _In_reads_(blobLengthInBytes) const void *pBlobWithRootSignature, + _In_ SIZE_T blobLengthInBytes, + REFIID riid, + _COM_Outptr_ void **ppvRootSignature); + + DECLSPEC_XFGVIRT(ID3D12Device, CreateConstantBufferView) + void ( STDMETHODCALLTYPE *CreateConstantBufferView )( + ID3D12Device11 * This, + _In_opt_ const D3D12_CONSTANT_BUFFER_VIEW_DESC *pDesc, + _In_ D3D12_CPU_DESCRIPTOR_HANDLE DestDescriptor); + + DECLSPEC_XFGVIRT(ID3D12Device, CreateShaderResourceView) + void ( STDMETHODCALLTYPE *CreateShaderResourceView )( + ID3D12Device11 * This, + _In_opt_ ID3D12Resource *pResource, + _In_opt_ const D3D12_SHADER_RESOURCE_VIEW_DESC *pDesc, + _In_ D3D12_CPU_DESCRIPTOR_HANDLE DestDescriptor); + + DECLSPEC_XFGVIRT(ID3D12Device, CreateUnorderedAccessView) + void ( STDMETHODCALLTYPE *CreateUnorderedAccessView )( + ID3D12Device11 * This, + _In_opt_ ID3D12Resource *pResource, + _In_opt_ ID3D12Resource *pCounterResource, + _In_opt_ const D3D12_UNORDERED_ACCESS_VIEW_DESC *pDesc, + _In_ D3D12_CPU_DESCRIPTOR_HANDLE DestDescriptor); + + DECLSPEC_XFGVIRT(ID3D12Device, CreateRenderTargetView) + void ( STDMETHODCALLTYPE *CreateRenderTargetView )( + ID3D12Device11 * This, + _In_opt_ ID3D12Resource *pResource, + _In_opt_ const D3D12_RENDER_TARGET_VIEW_DESC *pDesc, + _In_ D3D12_CPU_DESCRIPTOR_HANDLE DestDescriptor); + + DECLSPEC_XFGVIRT(ID3D12Device, CreateDepthStencilView) + void ( STDMETHODCALLTYPE *CreateDepthStencilView )( + ID3D12Device11 * This, + _In_opt_ ID3D12Resource *pResource, + _In_opt_ const D3D12_DEPTH_STENCIL_VIEW_DESC *pDesc, + _In_ D3D12_CPU_DESCRIPTOR_HANDLE DestDescriptor); + + DECLSPEC_XFGVIRT(ID3D12Device, CreateSampler) + void ( STDMETHODCALLTYPE *CreateSampler )( + ID3D12Device11 * This, + _In_ const D3D12_SAMPLER_DESC *pDesc, + _In_ D3D12_CPU_DESCRIPTOR_HANDLE DestDescriptor); + + DECLSPEC_XFGVIRT(ID3D12Device, CopyDescriptors) + void ( STDMETHODCALLTYPE *CopyDescriptors )( + ID3D12Device11 * This, + _In_ UINT NumDestDescriptorRanges, + _In_reads_(NumDestDescriptorRanges) const D3D12_CPU_DESCRIPTOR_HANDLE *pDestDescriptorRangeStarts, + _In_reads_opt_(NumDestDescriptorRanges) const UINT *pDestDescriptorRangeSizes, + _In_ UINT NumSrcDescriptorRanges, + _In_reads_(NumSrcDescriptorRanges) const D3D12_CPU_DESCRIPTOR_HANDLE *pSrcDescriptorRangeStarts, + _In_reads_opt_(NumSrcDescriptorRanges) const UINT *pSrcDescriptorRangeSizes, + _In_ D3D12_DESCRIPTOR_HEAP_TYPE DescriptorHeapsType); + + DECLSPEC_XFGVIRT(ID3D12Device, CopyDescriptorsSimple) + void ( STDMETHODCALLTYPE *CopyDescriptorsSimple )( + ID3D12Device11 * This, + _In_ UINT NumDescriptors, + _In_ D3D12_CPU_DESCRIPTOR_HANDLE DestDescriptorRangeStart, + _In_ D3D12_CPU_DESCRIPTOR_HANDLE SrcDescriptorRangeStart, + _In_ D3D12_DESCRIPTOR_HEAP_TYPE DescriptorHeapsType); + + DECLSPEC_XFGVIRT(ID3D12Device, GetResourceAllocationInfo) +#if !defined(_WIN32) + D3D12_RESOURCE_ALLOCATION_INFO ( STDMETHODCALLTYPE *GetResourceAllocationInfo )( + ID3D12Device11 * This, + _In_ UINT visibleMask, + _In_ UINT numResourceDescs, + _In_reads_(numResourceDescs) const D3D12_RESOURCE_DESC *pResourceDescs); + +#else + D3D12_RESOURCE_ALLOCATION_INFO *( STDMETHODCALLTYPE *GetResourceAllocationInfo )( + ID3D12Device11 * This, + D3D12_RESOURCE_ALLOCATION_INFO * RetVal, + _In_ UINT visibleMask, + _In_ UINT numResourceDescs, + _In_reads_(numResourceDescs) const D3D12_RESOURCE_DESC *pResourceDescs); + +#endif + + DECLSPEC_XFGVIRT(ID3D12Device, GetCustomHeapProperties) +#if !defined(_WIN32) + D3D12_HEAP_PROPERTIES ( STDMETHODCALLTYPE *GetCustomHeapProperties )( + ID3D12Device11 * This, + _In_ UINT nodeMask, + D3D12_HEAP_TYPE heapType); + +#else + D3D12_HEAP_PROPERTIES *( STDMETHODCALLTYPE *GetCustomHeapProperties )( + ID3D12Device11 * This, + D3D12_HEAP_PROPERTIES * RetVal, + _In_ UINT nodeMask, + D3D12_HEAP_TYPE heapType); + +#endif + + DECLSPEC_XFGVIRT(ID3D12Device, CreateCommittedResource) + HRESULT ( STDMETHODCALLTYPE *CreateCommittedResource )( + ID3D12Device11 * This, + _In_ const D3D12_HEAP_PROPERTIES *pHeapProperties, + D3D12_HEAP_FLAGS HeapFlags, + _In_ const D3D12_RESOURCE_DESC *pDesc, + D3D12_RESOURCE_STATES InitialResourceState, + _In_opt_ const D3D12_CLEAR_VALUE *pOptimizedClearValue, + REFIID riidResource, + _COM_Outptr_opt_ void **ppvResource); + + DECLSPEC_XFGVIRT(ID3D12Device, CreateHeap) + HRESULT ( STDMETHODCALLTYPE *CreateHeap )( + ID3D12Device11 * This, + _In_ const D3D12_HEAP_DESC *pDesc, + REFIID riid, + _COM_Outptr_opt_ void **ppvHeap); + + DECLSPEC_XFGVIRT(ID3D12Device, CreatePlacedResource) + HRESULT ( STDMETHODCALLTYPE *CreatePlacedResource )( + ID3D12Device11 * This, + _In_ ID3D12Heap *pHeap, + UINT64 HeapOffset, + _In_ const D3D12_RESOURCE_DESC *pDesc, + D3D12_RESOURCE_STATES InitialState, + _In_opt_ const D3D12_CLEAR_VALUE *pOptimizedClearValue, + REFIID riid, + _COM_Outptr_opt_ void **ppvResource); + + DECLSPEC_XFGVIRT(ID3D12Device, CreateReservedResource) + HRESULT ( STDMETHODCALLTYPE *CreateReservedResource )( + ID3D12Device11 * This, + _In_ const D3D12_RESOURCE_DESC *pDesc, + D3D12_RESOURCE_STATES InitialState, + _In_opt_ const D3D12_CLEAR_VALUE *pOptimizedClearValue, + REFIID riid, + _COM_Outptr_opt_ void **ppvResource); + + DECLSPEC_XFGVIRT(ID3D12Device, CreateSharedHandle) + HRESULT ( STDMETHODCALLTYPE *CreateSharedHandle )( + ID3D12Device11 * This, + _In_ ID3D12DeviceChild *pObject, + _In_opt_ const SECURITY_ATTRIBUTES *pAttributes, + DWORD Access, + _In_opt_ LPCWSTR Name, + _Out_ HANDLE *pHandle); + + DECLSPEC_XFGVIRT(ID3D12Device, OpenSharedHandle) + HRESULT ( STDMETHODCALLTYPE *OpenSharedHandle )( + ID3D12Device11 * This, + _In_ HANDLE NTHandle, + REFIID riid, + _COM_Outptr_opt_ void **ppvObj); + + DECLSPEC_XFGVIRT(ID3D12Device, OpenSharedHandleByName) + HRESULT ( STDMETHODCALLTYPE *OpenSharedHandleByName )( + ID3D12Device11 * This, + _In_ LPCWSTR Name, + DWORD Access, + /* [annotation][out] */ + _Out_ HANDLE *pNTHandle); + + DECLSPEC_XFGVIRT(ID3D12Device, MakeResident) + HRESULT ( STDMETHODCALLTYPE *MakeResident )( + ID3D12Device11 * This, + UINT NumObjects, + _In_reads_(NumObjects) ID3D12Pageable *const *ppObjects); + + DECLSPEC_XFGVIRT(ID3D12Device, Evict) + HRESULT ( STDMETHODCALLTYPE *Evict )( + ID3D12Device11 * This, + UINT NumObjects, + _In_reads_(NumObjects) ID3D12Pageable *const *ppObjects); + + DECLSPEC_XFGVIRT(ID3D12Device, CreateFence) + HRESULT ( STDMETHODCALLTYPE *CreateFence )( + ID3D12Device11 * This, + UINT64 InitialValue, + D3D12_FENCE_FLAGS Flags, + REFIID riid, + _COM_Outptr_ void **ppFence); + + DECLSPEC_XFGVIRT(ID3D12Device, GetDeviceRemovedReason) + HRESULT ( STDMETHODCALLTYPE *GetDeviceRemovedReason )( + ID3D12Device11 * This); + + DECLSPEC_XFGVIRT(ID3D12Device, GetCopyableFootprints) + void ( STDMETHODCALLTYPE *GetCopyableFootprints )( + ID3D12Device11 * This, + _In_ const D3D12_RESOURCE_DESC *pResourceDesc, + _In_range_(0,D3D12_REQ_SUBRESOURCES) UINT FirstSubresource, + _In_range_(0,D3D12_REQ_SUBRESOURCES-FirstSubresource) UINT NumSubresources, + UINT64 BaseOffset, + _Out_writes_opt_(NumSubresources) D3D12_PLACED_SUBRESOURCE_FOOTPRINT *pLayouts, + _Out_writes_opt_(NumSubresources) UINT *pNumRows, + _Out_writes_opt_(NumSubresources) UINT64 *pRowSizeInBytes, + _Out_opt_ UINT64 *pTotalBytes); + + DECLSPEC_XFGVIRT(ID3D12Device, CreateQueryHeap) + HRESULT ( STDMETHODCALLTYPE *CreateQueryHeap )( + ID3D12Device11 * This, + _In_ const D3D12_QUERY_HEAP_DESC *pDesc, + REFIID riid, + _COM_Outptr_opt_ void **ppvHeap); + + DECLSPEC_XFGVIRT(ID3D12Device, SetStablePowerState) + HRESULT ( STDMETHODCALLTYPE *SetStablePowerState )( + ID3D12Device11 * This, + BOOL Enable); + + DECLSPEC_XFGVIRT(ID3D12Device, CreateCommandSignature) + HRESULT ( STDMETHODCALLTYPE *CreateCommandSignature )( + ID3D12Device11 * This, + _In_ const D3D12_COMMAND_SIGNATURE_DESC *pDesc, + _In_opt_ ID3D12RootSignature *pRootSignature, + REFIID riid, + _COM_Outptr_opt_ void **ppvCommandSignature); + + DECLSPEC_XFGVIRT(ID3D12Device, GetResourceTiling) + void ( STDMETHODCALLTYPE *GetResourceTiling )( + ID3D12Device11 * This, + _In_ ID3D12Resource *pTiledResource, + _Out_opt_ UINT *pNumTilesForEntireResource, + _Out_opt_ D3D12_PACKED_MIP_INFO *pPackedMipDesc, + _Out_opt_ D3D12_TILE_SHAPE *pStandardTileShapeForNonPackedMips, + _Inout_opt_ UINT *pNumSubresourceTilings, + _In_ UINT FirstSubresourceTilingToGet, + _Out_writes_(*pNumSubresourceTilings) D3D12_SUBRESOURCE_TILING *pSubresourceTilingsForNonPackedMips); + + DECLSPEC_XFGVIRT(ID3D12Device, GetAdapterLuid) +#if !defined(_WIN32) + LUID ( STDMETHODCALLTYPE *GetAdapterLuid )( + ID3D12Device11 * This); + +#else + LUID *( STDMETHODCALLTYPE *GetAdapterLuid )( + ID3D12Device11 * This, + LUID * RetVal); + +#endif + + DECLSPEC_XFGVIRT(ID3D12Device1, CreatePipelineLibrary) + HRESULT ( STDMETHODCALLTYPE *CreatePipelineLibrary )( + ID3D12Device11 * This, + _In_reads_(BlobLength) const void *pLibraryBlob, + SIZE_T BlobLength, + REFIID riid, + _COM_Outptr_ void **ppPipelineLibrary); + + DECLSPEC_XFGVIRT(ID3D12Device1, SetEventOnMultipleFenceCompletion) + HRESULT ( STDMETHODCALLTYPE *SetEventOnMultipleFenceCompletion )( + ID3D12Device11 * This, + _In_reads_(NumFences) ID3D12Fence *const *ppFences, + _In_reads_(NumFences) const UINT64 *pFenceValues, + UINT NumFences, + D3D12_MULTIPLE_FENCE_WAIT_FLAGS Flags, + HANDLE hEvent); + + DECLSPEC_XFGVIRT(ID3D12Device1, SetResidencyPriority) + HRESULT ( STDMETHODCALLTYPE *SetResidencyPriority )( + ID3D12Device11 * This, + UINT NumObjects, + _In_reads_(NumObjects) ID3D12Pageable *const *ppObjects, + _In_reads_(NumObjects) const D3D12_RESIDENCY_PRIORITY *pPriorities); + + DECLSPEC_XFGVIRT(ID3D12Device2, CreatePipelineState) + HRESULT ( STDMETHODCALLTYPE *CreatePipelineState )( + ID3D12Device11 * This, + const D3D12_PIPELINE_STATE_STREAM_DESC *pDesc, + REFIID riid, + _COM_Outptr_ void **ppPipelineState); + + DECLSPEC_XFGVIRT(ID3D12Device3, OpenExistingHeapFromAddress) + HRESULT ( STDMETHODCALLTYPE *OpenExistingHeapFromAddress )( + ID3D12Device11 * This, + _In_ const void *pAddress, + REFIID riid, + _COM_Outptr_ void **ppvHeap); + + DECLSPEC_XFGVIRT(ID3D12Device3, OpenExistingHeapFromFileMapping) + HRESULT ( STDMETHODCALLTYPE *OpenExistingHeapFromFileMapping )( + ID3D12Device11 * This, + _In_ HANDLE hFileMapping, + REFIID riid, + _COM_Outptr_ void **ppvHeap); + + DECLSPEC_XFGVIRT(ID3D12Device3, EnqueueMakeResident) + HRESULT ( STDMETHODCALLTYPE *EnqueueMakeResident )( + ID3D12Device11 * This, + D3D12_RESIDENCY_FLAGS Flags, + UINT NumObjects, + _In_reads_(NumObjects) ID3D12Pageable *const *ppObjects, + _In_ ID3D12Fence *pFenceToSignal, + UINT64 FenceValueToSignal); + + DECLSPEC_XFGVIRT(ID3D12Device4, CreateCommandList1) + HRESULT ( STDMETHODCALLTYPE *CreateCommandList1 )( + ID3D12Device11 * This, + _In_ UINT nodeMask, + _In_ D3D12_COMMAND_LIST_TYPE type, + _In_ D3D12_COMMAND_LIST_FLAGS flags, + REFIID riid, + _COM_Outptr_ void **ppCommandList); + + DECLSPEC_XFGVIRT(ID3D12Device4, CreateProtectedResourceSession) + HRESULT ( STDMETHODCALLTYPE *CreateProtectedResourceSession )( + ID3D12Device11 * This, + _In_ const D3D12_PROTECTED_RESOURCE_SESSION_DESC *pDesc, + _In_ REFIID riid, + _COM_Outptr_ void **ppSession); + + DECLSPEC_XFGVIRT(ID3D12Device4, CreateCommittedResource1) + HRESULT ( STDMETHODCALLTYPE *CreateCommittedResource1 )( + ID3D12Device11 * This, + _In_ const D3D12_HEAP_PROPERTIES *pHeapProperties, + D3D12_HEAP_FLAGS HeapFlags, + _In_ const D3D12_RESOURCE_DESC *pDesc, + D3D12_RESOURCE_STATES InitialResourceState, + _In_opt_ const D3D12_CLEAR_VALUE *pOptimizedClearValue, + _In_opt_ ID3D12ProtectedResourceSession *pProtectedSession, + REFIID riidResource, + _COM_Outptr_opt_ void **ppvResource); + + DECLSPEC_XFGVIRT(ID3D12Device4, CreateHeap1) + HRESULT ( STDMETHODCALLTYPE *CreateHeap1 )( + ID3D12Device11 * This, + _In_ const D3D12_HEAP_DESC *pDesc, + _In_opt_ ID3D12ProtectedResourceSession *pProtectedSession, + REFIID riid, + _COM_Outptr_opt_ void **ppvHeap); + + DECLSPEC_XFGVIRT(ID3D12Device4, CreateReservedResource1) + HRESULT ( STDMETHODCALLTYPE *CreateReservedResource1 )( + ID3D12Device11 * This, + _In_ const D3D12_RESOURCE_DESC *pDesc, + D3D12_RESOURCE_STATES InitialState, + _In_opt_ const D3D12_CLEAR_VALUE *pOptimizedClearValue, + _In_opt_ ID3D12ProtectedResourceSession *pProtectedSession, + REFIID riid, + _COM_Outptr_opt_ void **ppvResource); + + DECLSPEC_XFGVIRT(ID3D12Device4, GetResourceAllocationInfo1) +#if !defined(_WIN32) + D3D12_RESOURCE_ALLOCATION_INFO ( STDMETHODCALLTYPE *GetResourceAllocationInfo1 )( + ID3D12Device11 * This, + UINT visibleMask, + UINT numResourceDescs, + _In_reads_(numResourceDescs) const D3D12_RESOURCE_DESC *pResourceDescs, + _Out_writes_opt_(numResourceDescs) D3D12_RESOURCE_ALLOCATION_INFO1 *pResourceAllocationInfo1); + +#else + D3D12_RESOURCE_ALLOCATION_INFO *( STDMETHODCALLTYPE *GetResourceAllocationInfo1 )( + ID3D12Device11 * This, + D3D12_RESOURCE_ALLOCATION_INFO * RetVal, + UINT visibleMask, + UINT numResourceDescs, + _In_reads_(numResourceDescs) const D3D12_RESOURCE_DESC *pResourceDescs, + _Out_writes_opt_(numResourceDescs) D3D12_RESOURCE_ALLOCATION_INFO1 *pResourceAllocationInfo1); + +#endif + + DECLSPEC_XFGVIRT(ID3D12Device5, CreateLifetimeTracker) + HRESULT ( STDMETHODCALLTYPE *CreateLifetimeTracker )( + ID3D12Device11 * This, + _In_ ID3D12LifetimeOwner *pOwner, + REFIID riid, + _COM_Outptr_ void **ppvTracker); + + DECLSPEC_XFGVIRT(ID3D12Device5, RemoveDevice) + void ( STDMETHODCALLTYPE *RemoveDevice )( + ID3D12Device11 * This); + + DECLSPEC_XFGVIRT(ID3D12Device5, EnumerateMetaCommands) + HRESULT ( STDMETHODCALLTYPE *EnumerateMetaCommands )( + ID3D12Device11 * This, + _Inout_ UINT *pNumMetaCommands, + _Out_writes_opt_(*pNumMetaCommands) D3D12_META_COMMAND_DESC *pDescs); + + DECLSPEC_XFGVIRT(ID3D12Device5, EnumerateMetaCommandParameters) + HRESULT ( STDMETHODCALLTYPE *EnumerateMetaCommandParameters )( + ID3D12Device11 * This, + _In_ REFGUID CommandId, + _In_ D3D12_META_COMMAND_PARAMETER_STAGE Stage, + _Out_opt_ UINT *pTotalStructureSizeInBytes, + _Inout_ UINT *pParameterCount, + _Out_writes_opt_(*pParameterCount) D3D12_META_COMMAND_PARAMETER_DESC *pParameterDescs); + + DECLSPEC_XFGVIRT(ID3D12Device5, CreateMetaCommand) + HRESULT ( STDMETHODCALLTYPE *CreateMetaCommand )( + ID3D12Device11 * This, + _In_ REFGUID CommandId, + _In_ UINT NodeMask, + _In_reads_bytes_opt_(CreationParametersDataSizeInBytes) const void *pCreationParametersData, + _In_ SIZE_T CreationParametersDataSizeInBytes, + REFIID riid, + _COM_Outptr_ void **ppMetaCommand); + + DECLSPEC_XFGVIRT(ID3D12Device5, CreateStateObject) + HRESULT ( STDMETHODCALLTYPE *CreateStateObject )( + ID3D12Device11 * This, + const D3D12_STATE_OBJECT_DESC *pDesc, + REFIID riid, + _COM_Outptr_ void **ppStateObject); + + DECLSPEC_XFGVIRT(ID3D12Device5, GetRaytracingAccelerationStructurePrebuildInfo) + void ( STDMETHODCALLTYPE *GetRaytracingAccelerationStructurePrebuildInfo )( + ID3D12Device11 * This, + _In_ const D3D12_BUILD_RAYTRACING_ACCELERATION_STRUCTURE_INPUTS *pDesc, + _Out_ D3D12_RAYTRACING_ACCELERATION_STRUCTURE_PREBUILD_INFO *pInfo); + + DECLSPEC_XFGVIRT(ID3D12Device5, CheckDriverMatchingIdentifier) + D3D12_DRIVER_MATCHING_IDENTIFIER_STATUS ( STDMETHODCALLTYPE *CheckDriverMatchingIdentifier )( + ID3D12Device11 * This, + _In_ D3D12_SERIALIZED_DATA_TYPE SerializedDataType, + _In_ const D3D12_SERIALIZED_DATA_DRIVER_MATCHING_IDENTIFIER *pIdentifierToCheck); + + DECLSPEC_XFGVIRT(ID3D12Device6, SetBackgroundProcessingMode) + HRESULT ( STDMETHODCALLTYPE *SetBackgroundProcessingMode )( + ID3D12Device11 * This, + D3D12_BACKGROUND_PROCESSING_MODE Mode, + D3D12_MEASUREMENTS_ACTION MeasurementsAction, + _In_opt_ HANDLE hEventToSignalUponCompletion, + _Out_opt_ BOOL *pbFurtherMeasurementsDesired); + + DECLSPEC_XFGVIRT(ID3D12Device7, AddToStateObject) + HRESULT ( STDMETHODCALLTYPE *AddToStateObject )( + ID3D12Device11 * This, + const D3D12_STATE_OBJECT_DESC *pAddition, + ID3D12StateObject *pStateObjectToGrowFrom, + REFIID riid, + _COM_Outptr_ void **ppNewStateObject); + + DECLSPEC_XFGVIRT(ID3D12Device7, CreateProtectedResourceSession1) + HRESULT ( STDMETHODCALLTYPE *CreateProtectedResourceSession1 )( + ID3D12Device11 * This, + _In_ const D3D12_PROTECTED_RESOURCE_SESSION_DESC1 *pDesc, + _In_ REFIID riid, + _COM_Outptr_ void **ppSession); + + DECLSPEC_XFGVIRT(ID3D12Device8, GetResourceAllocationInfo2) +#if !defined(_WIN32) + D3D12_RESOURCE_ALLOCATION_INFO ( STDMETHODCALLTYPE *GetResourceAllocationInfo2 )( + ID3D12Device11 * This, + UINT visibleMask, + UINT numResourceDescs, + _In_reads_(numResourceDescs) const D3D12_RESOURCE_DESC1 *pResourceDescs, + _Out_writes_opt_(numResourceDescs) D3D12_RESOURCE_ALLOCATION_INFO1 *pResourceAllocationInfo1); + +#else + D3D12_RESOURCE_ALLOCATION_INFO *( STDMETHODCALLTYPE *GetResourceAllocationInfo2 )( + ID3D12Device11 * This, + D3D12_RESOURCE_ALLOCATION_INFO * RetVal, + UINT visibleMask, + UINT numResourceDescs, + _In_reads_(numResourceDescs) const D3D12_RESOURCE_DESC1 *pResourceDescs, + _Out_writes_opt_(numResourceDescs) D3D12_RESOURCE_ALLOCATION_INFO1 *pResourceAllocationInfo1); + +#endif + + DECLSPEC_XFGVIRT(ID3D12Device8, CreateCommittedResource2) + HRESULT ( STDMETHODCALLTYPE *CreateCommittedResource2 )( + ID3D12Device11 * This, + _In_ const D3D12_HEAP_PROPERTIES *pHeapProperties, + D3D12_HEAP_FLAGS HeapFlags, + _In_ const D3D12_RESOURCE_DESC1 *pDesc, + D3D12_RESOURCE_STATES InitialResourceState, + _In_opt_ const D3D12_CLEAR_VALUE *pOptimizedClearValue, + _In_opt_ ID3D12ProtectedResourceSession *pProtectedSession, + REFIID riidResource, + _COM_Outptr_opt_ void **ppvResource); + + DECLSPEC_XFGVIRT(ID3D12Device8, CreatePlacedResource1) + HRESULT ( STDMETHODCALLTYPE *CreatePlacedResource1 )( + ID3D12Device11 * This, + _In_ ID3D12Heap *pHeap, + UINT64 HeapOffset, + _In_ const D3D12_RESOURCE_DESC1 *pDesc, + D3D12_RESOURCE_STATES InitialState, + _In_opt_ const D3D12_CLEAR_VALUE *pOptimizedClearValue, + REFIID riid, + _COM_Outptr_opt_ void **ppvResource); + + DECLSPEC_XFGVIRT(ID3D12Device8, CreateSamplerFeedbackUnorderedAccessView) + void ( STDMETHODCALLTYPE *CreateSamplerFeedbackUnorderedAccessView )( + ID3D12Device11 * This, + _In_opt_ ID3D12Resource *pTargetedResource, + _In_opt_ ID3D12Resource *pFeedbackResource, + _In_ D3D12_CPU_DESCRIPTOR_HANDLE DestDescriptor); + + DECLSPEC_XFGVIRT(ID3D12Device8, GetCopyableFootprints1) + void ( STDMETHODCALLTYPE *GetCopyableFootprints1 )( + ID3D12Device11 * This, + _In_ const D3D12_RESOURCE_DESC1 *pResourceDesc, + _In_range_(0,D3D12_REQ_SUBRESOURCES) UINT FirstSubresource, + _In_range_(0,D3D12_REQ_SUBRESOURCES-FirstSubresource) UINT NumSubresources, + UINT64 BaseOffset, + _Out_writes_opt_(NumSubresources) D3D12_PLACED_SUBRESOURCE_FOOTPRINT *pLayouts, + _Out_writes_opt_(NumSubresources) UINT *pNumRows, + _Out_writes_opt_(NumSubresources) UINT64 *pRowSizeInBytes, + _Out_opt_ UINT64 *pTotalBytes); + + DECLSPEC_XFGVIRT(ID3D12Device9, CreateShaderCacheSession) + HRESULT ( STDMETHODCALLTYPE *CreateShaderCacheSession )( + ID3D12Device11 * This, + _In_ const D3D12_SHADER_CACHE_SESSION_DESC *pDesc, + REFIID riid, + _COM_Outptr_opt_ void **ppvSession); + + DECLSPEC_XFGVIRT(ID3D12Device9, ShaderCacheControl) + HRESULT ( STDMETHODCALLTYPE *ShaderCacheControl )( + ID3D12Device11 * This, + D3D12_SHADER_CACHE_KIND_FLAGS Kinds, + D3D12_SHADER_CACHE_CONTROL_FLAGS Control); + + DECLSPEC_XFGVIRT(ID3D12Device9, CreateCommandQueue1) + HRESULT ( STDMETHODCALLTYPE *CreateCommandQueue1 )( + ID3D12Device11 * This, + _In_ const D3D12_COMMAND_QUEUE_DESC *pDesc, + REFIID CreatorID, + REFIID riid, + _COM_Outptr_ void **ppCommandQueue); + + DECLSPEC_XFGVIRT(ID3D12Device10, CreateCommittedResource3) + HRESULT ( STDMETHODCALLTYPE *CreateCommittedResource3 )( + ID3D12Device11 * This, + _In_ const D3D12_HEAP_PROPERTIES *pHeapProperties, + D3D12_HEAP_FLAGS HeapFlags, + _In_ const D3D12_RESOURCE_DESC1 *pDesc, + D3D12_BARRIER_LAYOUT InitialLayout, + _In_opt_ const D3D12_CLEAR_VALUE *pOptimizedClearValue, + _In_opt_ ID3D12ProtectedResourceSession *pProtectedSession, + UINT32 NumCastableFormats, + _In_opt_count_(NumCastableFormats) DXGI_FORMAT *pCastableFormats, + REFIID riidResource, + _COM_Outptr_opt_ void **ppvResource); + + DECLSPEC_XFGVIRT(ID3D12Device10, CreatePlacedResource2) + HRESULT ( STDMETHODCALLTYPE *CreatePlacedResource2 )( + ID3D12Device11 * This, + _In_ ID3D12Heap *pHeap, + UINT64 HeapOffset, + _In_ const D3D12_RESOURCE_DESC1 *pDesc, + D3D12_BARRIER_LAYOUT InitialLayout, + _In_opt_ const D3D12_CLEAR_VALUE *pOptimizedClearValue, + UINT32 NumCastableFormats, + _In_opt_count_(NumCastableFormats) DXGI_FORMAT *pCastableFormats, + REFIID riid, + _COM_Outptr_opt_ void **ppvResource); + + DECLSPEC_XFGVIRT(ID3D12Device10, CreateReservedResource2) + HRESULT ( STDMETHODCALLTYPE *CreateReservedResource2 )( + ID3D12Device11 * This, + _In_ const D3D12_RESOURCE_DESC *pDesc, + D3D12_BARRIER_LAYOUT InitialLayout, + _In_opt_ const D3D12_CLEAR_VALUE *pOptimizedClearValue, + _In_opt_ ID3D12ProtectedResourceSession *pProtectedSession, + UINT32 NumCastableFormats, + _In_opt_count_(NumCastableFormats) DXGI_FORMAT *pCastableFormats, + REFIID riid, + _COM_Outptr_opt_ void **ppvResource); + + DECLSPEC_XFGVIRT(ID3D12Device11, CreateSampler2) + void ( STDMETHODCALLTYPE *CreateSampler2 )( + ID3D12Device11 * This, + _In_ const D3D12_SAMPLER_DESC2 *pDesc, + _In_ D3D12_CPU_DESCRIPTOR_HANDLE DestDescriptor); + + END_INTERFACE + } ID3D12Device11Vtbl; + + interface ID3D12Device11 + { + CONST_VTBL struct ID3D12Device11Vtbl *lpVtbl; + }; + + + +#ifdef COBJMACROS + + +#define ID3D12Device11_QueryInterface(This,riid,ppvObject) \ + ( (This)->lpVtbl -> QueryInterface(This,riid,ppvObject) ) + +#define ID3D12Device11_AddRef(This) \ + ( (This)->lpVtbl -> AddRef(This) ) + +#define ID3D12Device11_Release(This) \ + ( (This)->lpVtbl -> Release(This) ) + + +#define ID3D12Device11_GetPrivateData(This,guid,pDataSize,pData) \ + ( (This)->lpVtbl -> GetPrivateData(This,guid,pDataSize,pData) ) + +#define ID3D12Device11_SetPrivateData(This,guid,DataSize,pData) \ + ( (This)->lpVtbl -> SetPrivateData(This,guid,DataSize,pData) ) + +#define ID3D12Device11_SetPrivateDataInterface(This,guid,pData) \ + ( (This)->lpVtbl -> SetPrivateDataInterface(This,guid,pData) ) + +#define ID3D12Device11_SetName(This,Name) \ + ( (This)->lpVtbl -> SetName(This,Name) ) + + +#define ID3D12Device11_GetNodeCount(This) \ + ( (This)->lpVtbl -> GetNodeCount(This) ) + +#define ID3D12Device11_CreateCommandQueue(This,pDesc,riid,ppCommandQueue) \ + ( (This)->lpVtbl -> CreateCommandQueue(This,pDesc,riid,ppCommandQueue) ) + +#define ID3D12Device11_CreateCommandAllocator(This,type,riid,ppCommandAllocator) \ + ( (This)->lpVtbl -> CreateCommandAllocator(This,type,riid,ppCommandAllocator) ) + +#define ID3D12Device11_CreateGraphicsPipelineState(This,pDesc,riid,ppPipelineState) \ + ( (This)->lpVtbl -> CreateGraphicsPipelineState(This,pDesc,riid,ppPipelineState) ) + +#define ID3D12Device11_CreateComputePipelineState(This,pDesc,riid,ppPipelineState) \ + ( (This)->lpVtbl -> CreateComputePipelineState(This,pDesc,riid,ppPipelineState) ) + +#define ID3D12Device11_CreateCommandList(This,nodeMask,type,pCommandAllocator,pInitialState,riid,ppCommandList) \ + ( (This)->lpVtbl -> CreateCommandList(This,nodeMask,type,pCommandAllocator,pInitialState,riid,ppCommandList) ) + +#define ID3D12Device11_CheckFeatureSupport(This,Feature,pFeatureSupportData,FeatureSupportDataSize) \ + ( (This)->lpVtbl -> CheckFeatureSupport(This,Feature,pFeatureSupportData,FeatureSupportDataSize) ) + +#define ID3D12Device11_CreateDescriptorHeap(This,pDescriptorHeapDesc,riid,ppvHeap) \ + ( (This)->lpVtbl -> CreateDescriptorHeap(This,pDescriptorHeapDesc,riid,ppvHeap) ) + +#define ID3D12Device11_GetDescriptorHandleIncrementSize(This,DescriptorHeapType) \ + ( (This)->lpVtbl -> GetDescriptorHandleIncrementSize(This,DescriptorHeapType) ) + +#define ID3D12Device11_CreateRootSignature(This,nodeMask,pBlobWithRootSignature,blobLengthInBytes,riid,ppvRootSignature) \ + ( (This)->lpVtbl -> CreateRootSignature(This,nodeMask,pBlobWithRootSignature,blobLengthInBytes,riid,ppvRootSignature) ) + +#define ID3D12Device11_CreateConstantBufferView(This,pDesc,DestDescriptor) \ + ( (This)->lpVtbl -> CreateConstantBufferView(This,pDesc,DestDescriptor) ) + +#define ID3D12Device11_CreateShaderResourceView(This,pResource,pDesc,DestDescriptor) \ + ( (This)->lpVtbl -> CreateShaderResourceView(This,pResource,pDesc,DestDescriptor) ) + +#define ID3D12Device11_CreateUnorderedAccessView(This,pResource,pCounterResource,pDesc,DestDescriptor) \ + ( (This)->lpVtbl -> CreateUnorderedAccessView(This,pResource,pCounterResource,pDesc,DestDescriptor) ) + +#define ID3D12Device11_CreateRenderTargetView(This,pResource,pDesc,DestDescriptor) \ + ( (This)->lpVtbl -> CreateRenderTargetView(This,pResource,pDesc,DestDescriptor) ) + +#define ID3D12Device11_CreateDepthStencilView(This,pResource,pDesc,DestDescriptor) \ + ( (This)->lpVtbl -> CreateDepthStencilView(This,pResource,pDesc,DestDescriptor) ) + +#define ID3D12Device11_CreateSampler(This,pDesc,DestDescriptor) \ + ( (This)->lpVtbl -> CreateSampler(This,pDesc,DestDescriptor) ) + +#define ID3D12Device11_CopyDescriptors(This,NumDestDescriptorRanges,pDestDescriptorRangeStarts,pDestDescriptorRangeSizes,NumSrcDescriptorRanges,pSrcDescriptorRangeStarts,pSrcDescriptorRangeSizes,DescriptorHeapsType) \ + ( (This)->lpVtbl -> CopyDescriptors(This,NumDestDescriptorRanges,pDestDescriptorRangeStarts,pDestDescriptorRangeSizes,NumSrcDescriptorRanges,pSrcDescriptorRangeStarts,pSrcDescriptorRangeSizes,DescriptorHeapsType) ) + +#define ID3D12Device11_CopyDescriptorsSimple(This,NumDescriptors,DestDescriptorRangeStart,SrcDescriptorRangeStart,DescriptorHeapsType) \ + ( (This)->lpVtbl -> CopyDescriptorsSimple(This,NumDescriptors,DestDescriptorRangeStart,SrcDescriptorRangeStart,DescriptorHeapsType) ) +#if !defined(_WIN32) + +#define ID3D12Device11_GetResourceAllocationInfo(This,visibleMask,numResourceDescs,pResourceDescs) \ + ( (This)->lpVtbl -> GetResourceAllocationInfo(This,visibleMask,numResourceDescs,pResourceDescs) ) +#else +#define ID3D12Device11_GetResourceAllocationInfo(This,RetVal,visibleMask,numResourceDescs,pResourceDescs) \ + ( (This)->lpVtbl -> GetResourceAllocationInfo(This,RetVal,visibleMask,numResourceDescs,pResourceDescs) ) +#endif +#if !defined(_WIN32) + +#define ID3D12Device11_GetCustomHeapProperties(This,nodeMask,heapType) \ + ( (This)->lpVtbl -> GetCustomHeapProperties(This,nodeMask,heapType) ) +#else +#define ID3D12Device11_GetCustomHeapProperties(This,RetVal,nodeMask,heapType) \ + ( (This)->lpVtbl -> GetCustomHeapProperties(This,RetVal,nodeMask,heapType) ) +#endif + +#define ID3D12Device11_CreateCommittedResource(This,pHeapProperties,HeapFlags,pDesc,InitialResourceState,pOptimizedClearValue,riidResource,ppvResource) \ + ( (This)->lpVtbl -> CreateCommittedResource(This,pHeapProperties,HeapFlags,pDesc,InitialResourceState,pOptimizedClearValue,riidResource,ppvResource) ) + +#define ID3D12Device11_CreateHeap(This,pDesc,riid,ppvHeap) \ + ( (This)->lpVtbl -> CreateHeap(This,pDesc,riid,ppvHeap) ) + +#define ID3D12Device11_CreatePlacedResource(This,pHeap,HeapOffset,pDesc,InitialState,pOptimizedClearValue,riid,ppvResource) \ + ( (This)->lpVtbl -> CreatePlacedResource(This,pHeap,HeapOffset,pDesc,InitialState,pOptimizedClearValue,riid,ppvResource) ) + +#define ID3D12Device11_CreateReservedResource(This,pDesc,InitialState,pOptimizedClearValue,riid,ppvResource) \ + ( (This)->lpVtbl -> CreateReservedResource(This,pDesc,InitialState,pOptimizedClearValue,riid,ppvResource) ) + +#define ID3D12Device11_CreateSharedHandle(This,pObject,pAttributes,Access,Name,pHandle) \ + ( (This)->lpVtbl -> CreateSharedHandle(This,pObject,pAttributes,Access,Name,pHandle) ) + +#define ID3D12Device11_OpenSharedHandle(This,NTHandle,riid,ppvObj) \ + ( (This)->lpVtbl -> OpenSharedHandle(This,NTHandle,riid,ppvObj) ) + +#define ID3D12Device11_OpenSharedHandleByName(This,Name,Access,pNTHandle) \ + ( (This)->lpVtbl -> OpenSharedHandleByName(This,Name,Access,pNTHandle) ) + +#define ID3D12Device11_MakeResident(This,NumObjects,ppObjects) \ + ( (This)->lpVtbl -> MakeResident(This,NumObjects,ppObjects) ) + +#define ID3D12Device11_Evict(This,NumObjects,ppObjects) \ + ( (This)->lpVtbl -> Evict(This,NumObjects,ppObjects) ) + +#define ID3D12Device11_CreateFence(This,InitialValue,Flags,riid,ppFence) \ + ( (This)->lpVtbl -> CreateFence(This,InitialValue,Flags,riid,ppFence) ) + +#define ID3D12Device11_GetDeviceRemovedReason(This) \ + ( (This)->lpVtbl -> GetDeviceRemovedReason(This) ) + +#define ID3D12Device11_GetCopyableFootprints(This,pResourceDesc,FirstSubresource,NumSubresources,BaseOffset,pLayouts,pNumRows,pRowSizeInBytes,pTotalBytes) \ + ( (This)->lpVtbl -> GetCopyableFootprints(This,pResourceDesc,FirstSubresource,NumSubresources,BaseOffset,pLayouts,pNumRows,pRowSizeInBytes,pTotalBytes) ) + +#define ID3D12Device11_CreateQueryHeap(This,pDesc,riid,ppvHeap) \ + ( (This)->lpVtbl -> CreateQueryHeap(This,pDesc,riid,ppvHeap) ) + +#define ID3D12Device11_SetStablePowerState(This,Enable) \ + ( (This)->lpVtbl -> SetStablePowerState(This,Enable) ) + +#define ID3D12Device11_CreateCommandSignature(This,pDesc,pRootSignature,riid,ppvCommandSignature) \ + ( (This)->lpVtbl -> CreateCommandSignature(This,pDesc,pRootSignature,riid,ppvCommandSignature) ) + +#define ID3D12Device11_GetResourceTiling(This,pTiledResource,pNumTilesForEntireResource,pPackedMipDesc,pStandardTileShapeForNonPackedMips,pNumSubresourceTilings,FirstSubresourceTilingToGet,pSubresourceTilingsForNonPackedMips) \ + ( (This)->lpVtbl -> GetResourceTiling(This,pTiledResource,pNumTilesForEntireResource,pPackedMipDesc,pStandardTileShapeForNonPackedMips,pNumSubresourceTilings,FirstSubresourceTilingToGet,pSubresourceTilingsForNonPackedMips) ) +#if !defined(_WIN32) + +#define ID3D12Device11_GetAdapterLuid(This) \ + ( (This)->lpVtbl -> GetAdapterLuid(This) ) +#else +#define ID3D12Device11_GetAdapterLuid(This,RetVal) \ + ( (This)->lpVtbl -> GetAdapterLuid(This,RetVal) ) +#endif + + +#define ID3D12Device11_CreatePipelineLibrary(This,pLibraryBlob,BlobLength,riid,ppPipelineLibrary) \ + ( (This)->lpVtbl -> CreatePipelineLibrary(This,pLibraryBlob,BlobLength,riid,ppPipelineLibrary) ) + +#define ID3D12Device11_SetEventOnMultipleFenceCompletion(This,ppFences,pFenceValues,NumFences,Flags,hEvent) \ + ( (This)->lpVtbl -> SetEventOnMultipleFenceCompletion(This,ppFences,pFenceValues,NumFences,Flags,hEvent) ) + +#define ID3D12Device11_SetResidencyPriority(This,NumObjects,ppObjects,pPriorities) \ + ( (This)->lpVtbl -> SetResidencyPriority(This,NumObjects,ppObjects,pPriorities) ) + + +#define ID3D12Device11_CreatePipelineState(This,pDesc,riid,ppPipelineState) \ + ( (This)->lpVtbl -> CreatePipelineState(This,pDesc,riid,ppPipelineState) ) + + +#define ID3D12Device11_OpenExistingHeapFromAddress(This,pAddress,riid,ppvHeap) \ + ( (This)->lpVtbl -> OpenExistingHeapFromAddress(This,pAddress,riid,ppvHeap) ) + +#define ID3D12Device11_OpenExistingHeapFromFileMapping(This,hFileMapping,riid,ppvHeap) \ + ( (This)->lpVtbl -> OpenExistingHeapFromFileMapping(This,hFileMapping,riid,ppvHeap) ) + +#define ID3D12Device11_EnqueueMakeResident(This,Flags,NumObjects,ppObjects,pFenceToSignal,FenceValueToSignal) \ + ( (This)->lpVtbl -> EnqueueMakeResident(This,Flags,NumObjects,ppObjects,pFenceToSignal,FenceValueToSignal) ) + + +#define ID3D12Device11_CreateCommandList1(This,nodeMask,type,flags,riid,ppCommandList) \ + ( (This)->lpVtbl -> CreateCommandList1(This,nodeMask,type,flags,riid,ppCommandList) ) + +#define ID3D12Device11_CreateProtectedResourceSession(This,pDesc,riid,ppSession) \ + ( (This)->lpVtbl -> CreateProtectedResourceSession(This,pDesc,riid,ppSession) ) + +#define ID3D12Device11_CreateCommittedResource1(This,pHeapProperties,HeapFlags,pDesc,InitialResourceState,pOptimizedClearValue,pProtectedSession,riidResource,ppvResource) \ + ( (This)->lpVtbl -> CreateCommittedResource1(This,pHeapProperties,HeapFlags,pDesc,InitialResourceState,pOptimizedClearValue,pProtectedSession,riidResource,ppvResource) ) + +#define ID3D12Device11_CreateHeap1(This,pDesc,pProtectedSession,riid,ppvHeap) \ + ( (This)->lpVtbl -> CreateHeap1(This,pDesc,pProtectedSession,riid,ppvHeap) ) + +#define ID3D12Device11_CreateReservedResource1(This,pDesc,InitialState,pOptimizedClearValue,pProtectedSession,riid,ppvResource) \ + ( (This)->lpVtbl -> CreateReservedResource1(This,pDesc,InitialState,pOptimizedClearValue,pProtectedSession,riid,ppvResource) ) +#if !defined(_WIN32) + +#define ID3D12Device11_GetResourceAllocationInfo1(This,visibleMask,numResourceDescs,pResourceDescs,pResourceAllocationInfo1) \ + ( (This)->lpVtbl -> GetResourceAllocationInfo1(This,visibleMask,numResourceDescs,pResourceDescs,pResourceAllocationInfo1) ) +#else +#define ID3D12Device11_GetResourceAllocationInfo1(This,RetVal,visibleMask,numResourceDescs,pResourceDescs,pResourceAllocationInfo1) \ + ( (This)->lpVtbl -> GetResourceAllocationInfo1(This,RetVal,visibleMask,numResourceDescs,pResourceDescs,pResourceAllocationInfo1) ) +#endif + + +#define ID3D12Device11_CreateLifetimeTracker(This,pOwner,riid,ppvTracker) \ + ( (This)->lpVtbl -> CreateLifetimeTracker(This,pOwner,riid,ppvTracker) ) + +#define ID3D12Device11_RemoveDevice(This) \ + ( (This)->lpVtbl -> RemoveDevice(This) ) + +#define ID3D12Device11_EnumerateMetaCommands(This,pNumMetaCommands,pDescs) \ + ( (This)->lpVtbl -> EnumerateMetaCommands(This,pNumMetaCommands,pDescs) ) + +#define ID3D12Device11_EnumerateMetaCommandParameters(This,CommandId,Stage,pTotalStructureSizeInBytes,pParameterCount,pParameterDescs) \ + ( (This)->lpVtbl -> EnumerateMetaCommandParameters(This,CommandId,Stage,pTotalStructureSizeInBytes,pParameterCount,pParameterDescs) ) + +#define ID3D12Device11_CreateMetaCommand(This,CommandId,NodeMask,pCreationParametersData,CreationParametersDataSizeInBytes,riid,ppMetaCommand) \ + ( (This)->lpVtbl -> CreateMetaCommand(This,CommandId,NodeMask,pCreationParametersData,CreationParametersDataSizeInBytes,riid,ppMetaCommand) ) + +#define ID3D12Device11_CreateStateObject(This,pDesc,riid,ppStateObject) \ + ( (This)->lpVtbl -> CreateStateObject(This,pDesc,riid,ppStateObject) ) + +#define ID3D12Device11_GetRaytracingAccelerationStructurePrebuildInfo(This,pDesc,pInfo) \ + ( (This)->lpVtbl -> GetRaytracingAccelerationStructurePrebuildInfo(This,pDesc,pInfo) ) + +#define ID3D12Device11_CheckDriverMatchingIdentifier(This,SerializedDataType,pIdentifierToCheck) \ + ( (This)->lpVtbl -> CheckDriverMatchingIdentifier(This,SerializedDataType,pIdentifierToCheck) ) + + +#define ID3D12Device11_SetBackgroundProcessingMode(This,Mode,MeasurementsAction,hEventToSignalUponCompletion,pbFurtherMeasurementsDesired) \ + ( (This)->lpVtbl -> SetBackgroundProcessingMode(This,Mode,MeasurementsAction,hEventToSignalUponCompletion,pbFurtherMeasurementsDesired) ) + + +#define ID3D12Device11_AddToStateObject(This,pAddition,pStateObjectToGrowFrom,riid,ppNewStateObject) \ + ( (This)->lpVtbl -> AddToStateObject(This,pAddition,pStateObjectToGrowFrom,riid,ppNewStateObject) ) + +#define ID3D12Device11_CreateProtectedResourceSession1(This,pDesc,riid,ppSession) \ + ( (This)->lpVtbl -> CreateProtectedResourceSession1(This,pDesc,riid,ppSession) ) + +#if !defined(_WIN32) + +#define ID3D12Device11_GetResourceAllocationInfo2(This,visibleMask,numResourceDescs,pResourceDescs,pResourceAllocationInfo1) \ + ( (This)->lpVtbl -> GetResourceAllocationInfo2(This,visibleMask,numResourceDescs,pResourceDescs,pResourceAllocationInfo1) ) +#else +#define ID3D12Device11_GetResourceAllocationInfo2(This,RetVal,visibleMask,numResourceDescs,pResourceDescs,pResourceAllocationInfo1) \ + ( (This)->lpVtbl -> GetResourceAllocationInfo2(This,RetVal,visibleMask,numResourceDescs,pResourceDescs,pResourceAllocationInfo1) ) +#endif + +#define ID3D12Device11_CreateCommittedResource2(This,pHeapProperties,HeapFlags,pDesc,InitialResourceState,pOptimizedClearValue,pProtectedSession,riidResource,ppvResource) \ + ( (This)->lpVtbl -> CreateCommittedResource2(This,pHeapProperties,HeapFlags,pDesc,InitialResourceState,pOptimizedClearValue,pProtectedSession,riidResource,ppvResource) ) + +#define ID3D12Device11_CreatePlacedResource1(This,pHeap,HeapOffset,pDesc,InitialState,pOptimizedClearValue,riid,ppvResource) \ + ( (This)->lpVtbl -> CreatePlacedResource1(This,pHeap,HeapOffset,pDesc,InitialState,pOptimizedClearValue,riid,ppvResource) ) + +#define ID3D12Device11_CreateSamplerFeedbackUnorderedAccessView(This,pTargetedResource,pFeedbackResource,DestDescriptor) \ + ( (This)->lpVtbl -> CreateSamplerFeedbackUnorderedAccessView(This,pTargetedResource,pFeedbackResource,DestDescriptor) ) + +#define ID3D12Device11_GetCopyableFootprints1(This,pResourceDesc,FirstSubresource,NumSubresources,BaseOffset,pLayouts,pNumRows,pRowSizeInBytes,pTotalBytes) \ + ( (This)->lpVtbl -> GetCopyableFootprints1(This,pResourceDesc,FirstSubresource,NumSubresources,BaseOffset,pLayouts,pNumRows,pRowSizeInBytes,pTotalBytes) ) + + +#define ID3D12Device11_CreateShaderCacheSession(This,pDesc,riid,ppvSession) \ + ( (This)->lpVtbl -> CreateShaderCacheSession(This,pDesc,riid,ppvSession) ) + +#define ID3D12Device11_ShaderCacheControl(This,Kinds,Control) \ + ( (This)->lpVtbl -> ShaderCacheControl(This,Kinds,Control) ) + +#define ID3D12Device11_CreateCommandQueue1(This,pDesc,CreatorID,riid,ppCommandQueue) \ + ( (This)->lpVtbl -> CreateCommandQueue1(This,pDesc,CreatorID,riid,ppCommandQueue) ) + + +#define ID3D12Device11_CreateCommittedResource3(This,pHeapProperties,HeapFlags,pDesc,InitialLayout,pOptimizedClearValue,pProtectedSession,NumCastableFormats,pCastableFormats,riidResource,ppvResource) \ + ( (This)->lpVtbl -> CreateCommittedResource3(This,pHeapProperties,HeapFlags,pDesc,InitialLayout,pOptimizedClearValue,pProtectedSession,NumCastableFormats,pCastableFormats,riidResource,ppvResource) ) + +#define ID3D12Device11_CreatePlacedResource2(This,pHeap,HeapOffset,pDesc,InitialLayout,pOptimizedClearValue,NumCastableFormats,pCastableFormats,riid,ppvResource) \ + ( (This)->lpVtbl -> CreatePlacedResource2(This,pHeap,HeapOffset,pDesc,InitialLayout,pOptimizedClearValue,NumCastableFormats,pCastableFormats,riid,ppvResource) ) + +#define ID3D12Device11_CreateReservedResource2(This,pDesc,InitialLayout,pOptimizedClearValue,pProtectedSession,NumCastableFormats,pCastableFormats,riid,ppvResource) \ + ( (This)->lpVtbl -> CreateReservedResource2(This,pDesc,InitialLayout,pOptimizedClearValue,pProtectedSession,NumCastableFormats,pCastableFormats,riid,ppvResource) ) + + +#define ID3D12Device11_CreateSampler2(This,pDesc,DestDescriptor) \ + ( (This)->lpVtbl -> CreateSampler2(This,pDesc,DestDescriptor) ) + +#endif /* COBJMACROS */ + + +#endif /* C style interface */ + + + + +#endif /* __ID3D12Device11_INTERFACE_DEFINED__ */ + + +#ifndef __ID3D12VirtualizationGuestDevice_INTERFACE_DEFINED__ +#define __ID3D12VirtualizationGuestDevice_INTERFACE_DEFINED__ + +/* interface ID3D12VirtualizationGuestDevice */ +/* [unique][local][object][uuid] */ + + +EXTERN_C const IID IID_ID3D12VirtualizationGuestDevice; + +#if defined(__cplusplus) && !defined(CINTERFACE) + + MIDL_INTERFACE("bc66d368-7373-4943-8757-fc87dc79e476") + ID3D12VirtualizationGuestDevice : public IUnknown + { + public: + virtual HRESULT STDMETHODCALLTYPE ShareWithHost( + _In_ ID3D12DeviceChild *pObject, + _Out_ HANDLE *pHandle) = 0; + + virtual HRESULT STDMETHODCALLTYPE CreateFenceFd( + _In_ ID3D12Fence *pFence, + UINT64 FenceValue, + _Out_ int *pFenceFd) = 0; + + }; + + +#else /* C style interface */ + + typedef struct ID3D12VirtualizationGuestDeviceVtbl + { + BEGIN_INTERFACE + + DECLSPEC_XFGVIRT(IUnknown, QueryInterface) + HRESULT ( STDMETHODCALLTYPE *QueryInterface )( + ID3D12VirtualizationGuestDevice * This, + REFIID riid, + _COM_Outptr_ void **ppvObject); + + DECLSPEC_XFGVIRT(IUnknown, AddRef) + ULONG ( STDMETHODCALLTYPE *AddRef )( + ID3D12VirtualizationGuestDevice * This); + + DECLSPEC_XFGVIRT(IUnknown, Release) + ULONG ( STDMETHODCALLTYPE *Release )( + ID3D12VirtualizationGuestDevice * This); + + DECLSPEC_XFGVIRT(ID3D12VirtualizationGuestDevice, ShareWithHost) + HRESULT ( STDMETHODCALLTYPE *ShareWithHost )( + ID3D12VirtualizationGuestDevice * This, + _In_ ID3D12DeviceChild *pObject, + _Out_ HANDLE *pHandle); + + DECLSPEC_XFGVIRT(ID3D12VirtualizationGuestDevice, CreateFenceFd) + HRESULT ( STDMETHODCALLTYPE *CreateFenceFd )( + ID3D12VirtualizationGuestDevice * This, + _In_ ID3D12Fence *pFence, + UINT64 FenceValue, + _Out_ int *pFenceFd); + + END_INTERFACE + } ID3D12VirtualizationGuestDeviceVtbl; + + interface ID3D12VirtualizationGuestDevice + { + CONST_VTBL struct ID3D12VirtualizationGuestDeviceVtbl *lpVtbl; + }; + + + +#ifdef COBJMACROS + + +#define ID3D12VirtualizationGuestDevice_QueryInterface(This,riid,ppvObject) \ + ( (This)->lpVtbl -> QueryInterface(This,riid,ppvObject) ) + +#define ID3D12VirtualizationGuestDevice_AddRef(This) \ + ( (This)->lpVtbl -> AddRef(This) ) + +#define ID3D12VirtualizationGuestDevice_Release(This) \ + ( (This)->lpVtbl -> Release(This) ) + + +#define ID3D12VirtualizationGuestDevice_ShareWithHost(This,pObject,pHandle) \ + ( (This)->lpVtbl -> ShareWithHost(This,pObject,pHandle) ) + +#define ID3D12VirtualizationGuestDevice_CreateFenceFd(This,pFence,FenceValue,pFenceFd) \ + ( (This)->lpVtbl -> CreateFenceFd(This,pFence,FenceValue,pFenceFd) ) + +#endif /* COBJMACROS */ + + +#endif /* C style interface */ + + + + +#endif /* __ID3D12VirtualizationGuestDevice_INTERFACE_DEFINED__ */ + + +#ifndef __ID3D12Tools_INTERFACE_DEFINED__ +#define __ID3D12Tools_INTERFACE_DEFINED__ + +/* interface ID3D12Tools */ +/* [unique][local][object][uuid] */ + + +EXTERN_C const IID IID_ID3D12Tools; + +#if defined(__cplusplus) && !defined(CINTERFACE) + + MIDL_INTERFACE("7071e1f0-e84b-4b33-974f-12fa49de65c5") + ID3D12Tools : public IUnknown + { + public: + virtual void STDMETHODCALLTYPE EnableShaderInstrumentation( + BOOL bEnable) = 0; + + virtual BOOL STDMETHODCALLTYPE ShaderInstrumentationEnabled( void) = 0; + + }; + + +#else /* C style interface */ + + typedef struct ID3D12ToolsVtbl + { + BEGIN_INTERFACE + + DECLSPEC_XFGVIRT(IUnknown, QueryInterface) + HRESULT ( STDMETHODCALLTYPE *QueryInterface )( + ID3D12Tools * This, + REFIID riid, + _COM_Outptr_ void **ppvObject); + + DECLSPEC_XFGVIRT(IUnknown, AddRef) + ULONG ( STDMETHODCALLTYPE *AddRef )( + ID3D12Tools * This); + + DECLSPEC_XFGVIRT(IUnknown, Release) + ULONG ( STDMETHODCALLTYPE *Release )( + ID3D12Tools * This); + + DECLSPEC_XFGVIRT(ID3D12Tools, EnableShaderInstrumentation) + void ( STDMETHODCALLTYPE *EnableShaderInstrumentation )( + ID3D12Tools * This, + BOOL bEnable); + + DECLSPEC_XFGVIRT(ID3D12Tools, ShaderInstrumentationEnabled) + BOOL ( STDMETHODCALLTYPE *ShaderInstrumentationEnabled )( + ID3D12Tools * This); + + END_INTERFACE + } ID3D12ToolsVtbl; + + interface ID3D12Tools + { + CONST_VTBL struct ID3D12ToolsVtbl *lpVtbl; + }; + + + +#ifdef COBJMACROS + + +#define ID3D12Tools_QueryInterface(This,riid,ppvObject) \ + ( (This)->lpVtbl -> QueryInterface(This,riid,ppvObject) ) + +#define ID3D12Tools_AddRef(This) \ + ( (This)->lpVtbl -> AddRef(This) ) + +#define ID3D12Tools_Release(This) \ + ( (This)->lpVtbl -> Release(This) ) + + +#define ID3D12Tools_EnableShaderInstrumentation(This,bEnable) \ + ( (This)->lpVtbl -> EnableShaderInstrumentation(This,bEnable) ) + +#define ID3D12Tools_ShaderInstrumentationEnabled(This) \ + ( (This)->lpVtbl -> ShaderInstrumentationEnabled(This) ) + +#endif /* COBJMACROS */ + + +#endif /* C style interface */ + + + + +#endif /* __ID3D12Tools_INTERFACE_DEFINED__ */ + + +/* interface __MIDL_itf_d3d12_0000_0057 */ +/* [local] */ + +typedef struct D3D12_SUBRESOURCE_DATA + { + const void *pData; + LONG_PTR RowPitch; + LONG_PTR SlicePitch; + } D3D12_SUBRESOURCE_DATA; + +typedef struct D3D12_MEMCPY_DEST + { + void *pData; + SIZE_T RowPitch; + SIZE_T SlicePitch; + } D3D12_MEMCPY_DEST; + +#if !defined( D3D12_IGNORE_SDK_LAYERS ) +#include "d3d12sdklayers.h" +#endif + +/////////////////////////////////////////////////////////////////////////// +// D3D12CreateDevice +// ------------------ +// +// pAdapter +// If NULL, D3D12CreateDevice will choose the primary adapter. +// If non-NULL, D3D12CreateDevice will use the provided adapter. +// MinimumFeatureLevel +// The minimum feature level required for successful device creation. +// riid +// The interface IID of the device to be returned. Expected: ID3D12Device. +// ppDevice +// Pointer to returned interface. May be NULL. +// +// Return Values +// Any of those documented for +// CreateDXGIFactory1 +// IDXGIFactory::EnumAdapters +// D3D12CreateDevice +// +/////////////////////////////////////////////////////////////////////////// +typedef HRESULT (WINAPI* PFN_D3D12_CREATE_DEVICE)( _In_opt_ IUnknown*, + D3D_FEATURE_LEVEL, + _In_ REFIID, _COM_Outptr_opt_ void** ); + +HRESULT WINAPI D3D12CreateDevice( + _In_opt_ IUnknown* pAdapter, + D3D_FEATURE_LEVEL MinimumFeatureLevel, + _In_ REFIID riid, // Expected: ID3D12Device + _COM_Outptr_opt_ void** ppDevice ); + + +typedef HRESULT (WINAPI* PFN_D3D12_GET_DEBUG_INTERFACE)( _In_ REFIID, _COM_Outptr_opt_ void** ); + +HRESULT WINAPI D3D12GetDebugInterface( _In_ REFIID riid, _COM_Outptr_opt_ void** ppvDebug ); + +// -------------------------------------------------------------------------------------------------------------------------------- +// D3D12EnableExperimentalFeatures +// +// Pass in a list of feature GUIDs to be enabled together. +// +// If a particular feature requires some configuration information on enablement, it will have +// a configuration struct that can be passed alongside the GUID. +// +// Some features might use an interface IID as the GUID. For these, once the feature is enabled via +// D3D12EnableExperimentalFeatures, D3D12GetDebugInterface can then be called with the IID to retrieve the interface +// for manipulating the feature. This allows for control that might not cleanly be expressed by just +// the configuration struct that D3D12EnableExperimentalFeatures provides. +// +// If this method is called and a change to existing feature enablement is made, +// all current D3D12 devices are set to DEVICE_REMOVED state, since under the covers there is really only one +// singleton device for a process. Removing the devices when configuration changes prevents +// mismatched expectations of how a device is supposed to work after it has been created from the app's point of view. +// +// The call returns E_NOINTERFACE if an unrecognized feature is passed in or Windows Developer mode is not on. +// The call returns E_INVALIDARG if the configuration of a feature is incorrect, the set of features passed +// in are known to be incompatible with each other, or other errors. +// Returns S_OK otherwise. +// +// -------------------------------------------------------------------------------------------------------------------------------- HRESULT WINAPI D3D12EnableExperimentalFeatures( UINT NumFeatures, _In_count_(NumFeatures) const IID* pIIDs, _In_opt_count_(NumFeatures) void* pConfigurationStructs, _In_opt_count_(NumFeatures) UINT* pConfigurationStructSizes); -// -------------------------------------------------------------------------------------------------------------------------------- -// Experimental Feature: D3D12ExperimentalShaderModels -// -// Use with D3D12EnableExperimentalFeatures to enable experimental shader model support, -// meaning shader models that haven't been finalized for use in retail. -// -// Enabling D3D12ExperimentalShaderModels needs no configuration struct, pass NULL in the pConfigurationStructs array. -// -// -------------------------------------------------------------------------------------------------------------------------------- -static const UUID D3D12ExperimentalShaderModels = { /* 76f5573e-f13a-40f5-b297-81ce9e18933f */ - 0x76f5573e, - 0xf13a, - 0x40f5, - { 0xb2, 0x97, 0x81, 0xce, 0x9e, 0x18, 0x93, 0x3f } -}; -// -------------------------------------------------------------------------------------------------------------------------------- -// Experimental Feature: D3D12TiledResourceTier4 -// -// Use with D3D12EnableExperimentalFeatures to enable tiled resource tier 4 support, -// meaning texture tile data-inheritance is allowed. -// -// Enabling D3D12TiledResourceTier4 needs no configuration struct, pass NULL in the pConfigurationStructs array. -// -// -------------------------------------------------------------------------------------------------------------------------------- -static const UUID D3D12TiledResourceTier4 = { /* c9c4725f-a81a-4f56-8c5b-c51039d694fb */ - 0xc9c4725f, - 0xa81a, - 0x4f56, - { 0x8c, 0x5b, 0xc5, 0x10, 0x39, 0xd6, 0x94, 0xfb } -}; -// -------------------------------------------------------------------------------------------------------------------------------- -// Experimental Feature: D3D12MetaCommand -// -// Use with D3D12EnableExperimentalFeatures to enable the D3D12 Meta Command. -// -// Enabling D3D12MetaCommand needs no configuration struct, pass NULL in the pConfigurationStructs array. -// -// -------------------------------------------------------------------------------------------------------------------------------- -static const UUID D3D12MetaCommand = { /* C734C97E-8077-48C8-9FDC-D9D1DD31DD77 */ - 0xc734c97e, - 0x8077, - 0x48c8, - { 0x9f, 0xdc, 0xd9, 0xd1, 0xdd, 0x31, 0xdd, 0x77 } -}; -// -------------------------------------------------------------------------------------------------------------------------------- -// D3D12GetInterface -// -// Retrieve Global D3D12 Interface. -// +// -------------------------------------------------------------------------------------------------------------------------------- +// Experimental Feature: D3D12ExperimentalShaderModels +// +// Use with D3D12EnableExperimentalFeatures to enable experimental shader model support, +// meaning shader models that haven't been finalized for use in retail. +// +// Enabling D3D12ExperimentalShaderModels needs no configuration struct, pass NULL in the pConfigurationStructs array. +// +// -------------------------------------------------------------------------------------------------------------------------------- +static const UUID D3D12ExperimentalShaderModels = { /* 76f5573e-f13a-40f5-b297-81ce9e18933f */ + 0x76f5573e, + 0xf13a, + 0x40f5, + { 0xb2, 0x97, 0x81, 0xce, 0x9e, 0x18, 0x93, 0x3f } +}; +// -------------------------------------------------------------------------------------------------------------------------------- +// Experimental Feature: D3D12TiledResourceTier4 +// +// Use with D3D12EnableExperimentalFeatures to enable tiled resource tier 4 support, +// meaning texture tile data-inheritance is allowed. +// +// Enabling D3D12TiledResourceTier4 needs no configuration struct, pass NULL in the pConfigurationStructs array. +// +// -------------------------------------------------------------------------------------------------------------------------------- +static const UUID D3D12TiledResourceTier4 = { /* c9c4725f-a81a-4f56-8c5b-c51039d694fb */ + 0xc9c4725f, + 0xa81a, + 0x4f56, + { 0x8c, 0x5b, 0xc5, 0x10, 0x39, 0xd6, 0x94, 0xfb } +}; +// -------------------------------------------------------------------------------------------------------------------------------- +// D3D12GetInterface +// +// Retrieve Global D3D12 Interface. +// + +DEFINE_GUID(CLSID_D3D12Debug, 0xf2352aeb, 0xdd84, 0x49fe, 0xb9, 0x7b, 0xa9, 0xdc, 0xfd, 0xcc, 0x1b, 0x4f); +DEFINE_GUID(CLSID_D3D12Tools, 0xe38216b1, 0x3c8c, 0x4833, 0xaa, 0x09, 0x0a, 0x06, 0xb6, 0x5d, 0x96, 0xc8); +DEFINE_GUID(CLSID_D3D12DeviceRemovedExtendedData, 0x4a75bbc4, 0x9ff4, 0x4ad8, 0x9f, 0x18, 0xab, 0xae, 0x84, 0xdc, 0x5f, 0xf2); +DEFINE_GUID(CLSID_D3D12SDKConfiguration, 0x7cda6aca, 0xa03e, 0x49c8, 0x94, 0x58, 0x03, 0x34, 0xd2, 0x0e, 0x07, 0xce); +DEFINE_GUID(CLSID_D3D12DeviceFactory, 0x114863bf, 0xc386, 0x4aee, 0xb3, 0x9d, 0x8f, 0x0b, 0xbb, 0x06, 0x29, 0x55); + +typedef HRESULT (WINAPI* PFN_D3D12_GET_INTERFACE)( _In_ REFCLSID, _In_ REFIID, _COM_Outptr_opt_ void** ); + +HRESULT WINAPI D3D12GetInterface( _In_ REFCLSID rclsid, _In_ REFIID riid, _COM_Outptr_opt_ void** ppvDebug ); + + + +extern RPC_IF_HANDLE __MIDL_itf_d3d12_0000_0057_v0_0_c_ifspec; +extern RPC_IF_HANDLE __MIDL_itf_d3d12_0000_0057_v0_0_s_ifspec; + +#ifndef __ID3D12SDKConfiguration_INTERFACE_DEFINED__ +#define __ID3D12SDKConfiguration_INTERFACE_DEFINED__ + +/* interface ID3D12SDKConfiguration */ +/* [unique][local][object][uuid] */ + + +EXTERN_C const IID IID_ID3D12SDKConfiguration; + +#if defined(__cplusplus) && !defined(CINTERFACE) + + MIDL_INTERFACE("e9eb5314-33aa-42b2-a718-d77f58b1f1c7") + ID3D12SDKConfiguration : public IUnknown + { + public: + virtual HRESULT STDMETHODCALLTYPE SetSDKVersion( + UINT SDKVersion, + _In_z_ LPCSTR SDKPath) = 0; + + }; + + +#else /* C style interface */ + + typedef struct ID3D12SDKConfigurationVtbl + { + BEGIN_INTERFACE + + DECLSPEC_XFGVIRT(IUnknown, QueryInterface) + HRESULT ( STDMETHODCALLTYPE *QueryInterface )( + ID3D12SDKConfiguration * This, + REFIID riid, + _COM_Outptr_ void **ppvObject); + + DECLSPEC_XFGVIRT(IUnknown, AddRef) + ULONG ( STDMETHODCALLTYPE *AddRef )( + ID3D12SDKConfiguration * This); + + DECLSPEC_XFGVIRT(IUnknown, Release) + ULONG ( STDMETHODCALLTYPE *Release )( + ID3D12SDKConfiguration * This); + + DECLSPEC_XFGVIRT(ID3D12SDKConfiguration, SetSDKVersion) + HRESULT ( STDMETHODCALLTYPE *SetSDKVersion )( + ID3D12SDKConfiguration * This, + UINT SDKVersion, + _In_z_ LPCSTR SDKPath); + + END_INTERFACE + } ID3D12SDKConfigurationVtbl; + + interface ID3D12SDKConfiguration + { + CONST_VTBL struct ID3D12SDKConfigurationVtbl *lpVtbl; + }; + + + +#ifdef COBJMACROS + + +#define ID3D12SDKConfiguration_QueryInterface(This,riid,ppvObject) \ + ( (This)->lpVtbl -> QueryInterface(This,riid,ppvObject) ) + +#define ID3D12SDKConfiguration_AddRef(This) \ + ( (This)->lpVtbl -> AddRef(This) ) + +#define ID3D12SDKConfiguration_Release(This) \ + ( (This)->lpVtbl -> Release(This) ) + + +#define ID3D12SDKConfiguration_SetSDKVersion(This,SDKVersion,SDKPath) \ + ( (This)->lpVtbl -> SetSDKVersion(This,SDKVersion,SDKPath) ) + +#endif /* COBJMACROS */ + + +#endif /* C style interface */ + + + + +#endif /* __ID3D12SDKConfiguration_INTERFACE_DEFINED__ */ + + +#ifndef __ID3D12SDKConfiguration1_INTERFACE_DEFINED__ +#define __ID3D12SDKConfiguration1_INTERFACE_DEFINED__ + +/* interface ID3D12SDKConfiguration1 */ +/* [unique][local][object][uuid] */ + + +EXTERN_C const IID IID_ID3D12SDKConfiguration1; + +#if defined(__cplusplus) && !defined(CINTERFACE) + + MIDL_INTERFACE("8aaf9303-ad25-48b9-9a57-d9c37e009d9f") + ID3D12SDKConfiguration1 : public ID3D12SDKConfiguration + { + public: + virtual HRESULT STDMETHODCALLTYPE CreateDeviceFactory( + UINT SDKVersion, + _In_ LPCSTR SDKPath, + REFIID riid, + _COM_Outptr_ void **ppvFactory) = 0; + + virtual void STDMETHODCALLTYPE FreeUnusedSDKs( void) = 0; + + }; + + +#else /* C style interface */ + + typedef struct ID3D12SDKConfiguration1Vtbl + { + BEGIN_INTERFACE + + DECLSPEC_XFGVIRT(IUnknown, QueryInterface) + HRESULT ( STDMETHODCALLTYPE *QueryInterface )( + ID3D12SDKConfiguration1 * This, + REFIID riid, + _COM_Outptr_ void **ppvObject); + + DECLSPEC_XFGVIRT(IUnknown, AddRef) + ULONG ( STDMETHODCALLTYPE *AddRef )( + ID3D12SDKConfiguration1 * This); + + DECLSPEC_XFGVIRT(IUnknown, Release) + ULONG ( STDMETHODCALLTYPE *Release )( + ID3D12SDKConfiguration1 * This); + + DECLSPEC_XFGVIRT(ID3D12SDKConfiguration, SetSDKVersion) + HRESULT ( STDMETHODCALLTYPE *SetSDKVersion )( + ID3D12SDKConfiguration1 * This, + UINT SDKVersion, + _In_z_ LPCSTR SDKPath); + + DECLSPEC_XFGVIRT(ID3D12SDKConfiguration1, CreateDeviceFactory) + HRESULT ( STDMETHODCALLTYPE *CreateDeviceFactory )( + ID3D12SDKConfiguration1 * This, + UINT SDKVersion, + _In_ LPCSTR SDKPath, + REFIID riid, + _COM_Outptr_ void **ppvFactory); + + DECLSPEC_XFGVIRT(ID3D12SDKConfiguration1, FreeUnusedSDKs) + void ( STDMETHODCALLTYPE *FreeUnusedSDKs )( + ID3D12SDKConfiguration1 * This); + + END_INTERFACE + } ID3D12SDKConfiguration1Vtbl; + + interface ID3D12SDKConfiguration1 + { + CONST_VTBL struct ID3D12SDKConfiguration1Vtbl *lpVtbl; + }; + + + +#ifdef COBJMACROS + + +#define ID3D12SDKConfiguration1_QueryInterface(This,riid,ppvObject) \ + ( (This)->lpVtbl -> QueryInterface(This,riid,ppvObject) ) + +#define ID3D12SDKConfiguration1_AddRef(This) \ + ( (This)->lpVtbl -> AddRef(This) ) + +#define ID3D12SDKConfiguration1_Release(This) \ + ( (This)->lpVtbl -> Release(This) ) + + +#define ID3D12SDKConfiguration1_SetSDKVersion(This,SDKVersion,SDKPath) \ + ( (This)->lpVtbl -> SetSDKVersion(This,SDKVersion,SDKPath) ) + + +#define ID3D12SDKConfiguration1_CreateDeviceFactory(This,SDKVersion,SDKPath,riid,ppvFactory) \ + ( (This)->lpVtbl -> CreateDeviceFactory(This,SDKVersion,SDKPath,riid,ppvFactory) ) + +#define ID3D12SDKConfiguration1_FreeUnusedSDKs(This) \ + ( (This)->lpVtbl -> FreeUnusedSDKs(This) ) + +#endif /* COBJMACROS */ + + +#endif /* C style interface */ + + + + +#endif /* __ID3D12SDKConfiguration1_INTERFACE_DEFINED__ */ + + +/* interface __MIDL_itf_d3d12_0000_0059 */ +/* [local] */ + +typedef +enum D3D12_DEVICE_FACTORY_FLAGS + { + D3D12_DEVICE_FACTORY_FLAG_NONE = 0, + D3D12_DEVICE_FACTORY_FLAG_ALLOW_RETURNING_EXISTING_DEVICE = 0x1, + D3D12_DEVICE_FACTORY_FLAG_ALLOW_RETURNING_INCOMPATIBLE_EXISTING_DEVICE = 0x2, + D3D12_DEVICE_FACTORY_FLAG_DISALLOW_STORING_NEW_DEVICE_AS_SINGLETON = 0x4 + } D3D12_DEVICE_FACTORY_FLAGS; + +DEFINE_ENUM_FLAG_OPERATORS( D3D12_DEVICE_FACTORY_FLAGS ); + + +extern RPC_IF_HANDLE __MIDL_itf_d3d12_0000_0059_v0_0_c_ifspec; +extern RPC_IF_HANDLE __MIDL_itf_d3d12_0000_0059_v0_0_s_ifspec; + +#ifndef __ID3D12DeviceFactory_INTERFACE_DEFINED__ +#define __ID3D12DeviceFactory_INTERFACE_DEFINED__ + +/* interface ID3D12DeviceFactory */ +/* [unique][local][object][uuid] */ + + +EXTERN_C const IID IID_ID3D12DeviceFactory; + +#if defined(__cplusplus) && !defined(CINTERFACE) + + MIDL_INTERFACE("61f307d3-d34e-4e7c-8374-3ba4de23cccb") + ID3D12DeviceFactory : public IUnknown + { + public: + virtual HRESULT STDMETHODCALLTYPE InitializeFromGlobalState( void) = 0; + + virtual HRESULT STDMETHODCALLTYPE ApplyToGlobalState( void) = 0; + + virtual HRESULT STDMETHODCALLTYPE SetFlags( + D3D12_DEVICE_FACTORY_FLAGS flags) = 0; + + virtual D3D12_DEVICE_FACTORY_FLAGS STDMETHODCALLTYPE GetFlags( void) = 0; + + virtual HRESULT STDMETHODCALLTYPE GetConfigurationInterface( + REFCLSID clsid, + REFIID iid, + _COM_Outptr_ void **ppv) = 0; + + virtual HRESULT STDMETHODCALLTYPE EnableExperimentalFeatures( + UINT NumFeatures, + _In_reads_(NumFeatures) const IID *pIIDs, + _In_reads_opt_(NumFeatures) void *pConfigurationStructs, + _In_reads_opt_(NumFeatures) UINT *pConfigurationStructSizes) = 0; + + virtual HRESULT STDMETHODCALLTYPE CreateDevice( + _In_opt_ IUnknown *adapter, + D3D_FEATURE_LEVEL FeatureLevel, + REFIID riid, + _COM_Outptr_opt_ void **ppvDevice) = 0; + + }; + + +#else /* C style interface */ + + typedef struct ID3D12DeviceFactoryVtbl + { + BEGIN_INTERFACE + + DECLSPEC_XFGVIRT(IUnknown, QueryInterface) + HRESULT ( STDMETHODCALLTYPE *QueryInterface )( + ID3D12DeviceFactory * This, + REFIID riid, + _COM_Outptr_ void **ppvObject); + + DECLSPEC_XFGVIRT(IUnknown, AddRef) + ULONG ( STDMETHODCALLTYPE *AddRef )( + ID3D12DeviceFactory * This); + + DECLSPEC_XFGVIRT(IUnknown, Release) + ULONG ( STDMETHODCALLTYPE *Release )( + ID3D12DeviceFactory * This); + + DECLSPEC_XFGVIRT(ID3D12DeviceFactory, InitializeFromGlobalState) + HRESULT ( STDMETHODCALLTYPE *InitializeFromGlobalState )( + ID3D12DeviceFactory * This); + + DECLSPEC_XFGVIRT(ID3D12DeviceFactory, ApplyToGlobalState) + HRESULT ( STDMETHODCALLTYPE *ApplyToGlobalState )( + ID3D12DeviceFactory * This); + + DECLSPEC_XFGVIRT(ID3D12DeviceFactory, SetFlags) + HRESULT ( STDMETHODCALLTYPE *SetFlags )( + ID3D12DeviceFactory * This, + D3D12_DEVICE_FACTORY_FLAGS flags); + + DECLSPEC_XFGVIRT(ID3D12DeviceFactory, GetFlags) + D3D12_DEVICE_FACTORY_FLAGS ( STDMETHODCALLTYPE *GetFlags )( + ID3D12DeviceFactory * This); + + DECLSPEC_XFGVIRT(ID3D12DeviceFactory, GetConfigurationInterface) + HRESULT ( STDMETHODCALLTYPE *GetConfigurationInterface )( + ID3D12DeviceFactory * This, + REFCLSID clsid, + REFIID iid, + _COM_Outptr_ void **ppv); + + DECLSPEC_XFGVIRT(ID3D12DeviceFactory, EnableExperimentalFeatures) + HRESULT ( STDMETHODCALLTYPE *EnableExperimentalFeatures )( + ID3D12DeviceFactory * This, + UINT NumFeatures, + _In_reads_(NumFeatures) const IID *pIIDs, + _In_reads_opt_(NumFeatures) void *pConfigurationStructs, + _In_reads_opt_(NumFeatures) UINT *pConfigurationStructSizes); + + DECLSPEC_XFGVIRT(ID3D12DeviceFactory, CreateDevice) + HRESULT ( STDMETHODCALLTYPE *CreateDevice )( + ID3D12DeviceFactory * This, + _In_opt_ IUnknown *adapter, + D3D_FEATURE_LEVEL FeatureLevel, + REFIID riid, + _COM_Outptr_opt_ void **ppvDevice); + + END_INTERFACE + } ID3D12DeviceFactoryVtbl; + + interface ID3D12DeviceFactory + { + CONST_VTBL struct ID3D12DeviceFactoryVtbl *lpVtbl; + }; + + + +#ifdef COBJMACROS + + +#define ID3D12DeviceFactory_QueryInterface(This,riid,ppvObject) \ + ( (This)->lpVtbl -> QueryInterface(This,riid,ppvObject) ) + +#define ID3D12DeviceFactory_AddRef(This) \ + ( (This)->lpVtbl -> AddRef(This) ) + +#define ID3D12DeviceFactory_Release(This) \ + ( (This)->lpVtbl -> Release(This) ) + + +#define ID3D12DeviceFactory_InitializeFromGlobalState(This) \ + ( (This)->lpVtbl -> InitializeFromGlobalState(This) ) + +#define ID3D12DeviceFactory_ApplyToGlobalState(This) \ + ( (This)->lpVtbl -> ApplyToGlobalState(This) ) + +#define ID3D12DeviceFactory_SetFlags(This,flags) \ + ( (This)->lpVtbl -> SetFlags(This,flags) ) + +#define ID3D12DeviceFactory_GetFlags(This) \ + ( (This)->lpVtbl -> GetFlags(This) ) + +#define ID3D12DeviceFactory_GetConfigurationInterface(This,clsid,iid,ppv) \ + ( (This)->lpVtbl -> GetConfigurationInterface(This,clsid,iid,ppv) ) + +#define ID3D12DeviceFactory_EnableExperimentalFeatures(This,NumFeatures,pIIDs,pConfigurationStructs,pConfigurationStructSizes) \ + ( (This)->lpVtbl -> EnableExperimentalFeatures(This,NumFeatures,pIIDs,pConfigurationStructs,pConfigurationStructSizes) ) + +#define ID3D12DeviceFactory_CreateDevice(This,adapter,FeatureLevel,riid,ppvDevice) \ + ( (This)->lpVtbl -> CreateDevice(This,adapter,FeatureLevel,riid,ppvDevice) ) + +#endif /* COBJMACROS */ + + +#endif /* C style interface */ + + + + +#endif /* __ID3D12DeviceFactory_INTERFACE_DEFINED__ */ + + +/* interface __MIDL_itf_d3d12_0000_0060 */ +/* [local] */ + +typedef +enum D3D12_DEVICE_FLAGS + { + D3D12_DEVICE_FLAG_NONE = 0, + D3D12_DEVICE_FLAG_DEBUG_LAYER_ENABLED = 0x1, + D3D12_DEVICE_FLAG_GPU_BASED_VALIDATION_ENABLED = 0x2, + D3D12_DEVICE_FLAG_SYNCHRONIZED_COMMAND_QUEUE_VALIDATION_DISABLED = 0x4, + D3D12_DEVICE_FLAG_DRED_AUTO_BREADCRUMBS_ENABLED = 0x8, + D3D12_DEVICE_FLAG_DRED_PAGE_FAULT_REPORTING_ENABLED = 0x10, + D3D12_DEVICE_FLAG_DRED_WATSON_REPORTING_ENABLED = 0x20, + D3D12_DEVICE_FLAG_DRED_BREADCRUMB_CONTEXT_ENABLED = 0x40, + D3D12_DEVICE_FLAG_DRED_USE_MARKERS_ONLY_BREADCRUMBS = 0x80, + D3D12_DEVICE_FLAG_SHADER_INSTRUMENTATION_ENABLED = 0x100, + D3D12_DEVICE_FLAG_AUTO_DEBUG_NAME_ENABLED = 0x200, + D3D12_DEVICE_FLAG_FORCE_LEGACY_STATE_VALIDATION = 0x400 + } D3D12_DEVICE_FLAGS; + +DEFINE_ENUM_FLAG_OPERATORS( D3D12_DEVICE_FLAGS ); +typedef struct D3D12_DEVICE_CONFIGURATION_DESC + { + D3D12_DEVICE_FLAGS Flags; + UINT GpuBasedValidationFlags; + UINT SDKVersion; + UINT NumEnabledExperimentalFeatures; + } D3D12_DEVICE_CONFIGURATION_DESC; + + + +extern RPC_IF_HANDLE __MIDL_itf_d3d12_0000_0060_v0_0_c_ifspec; +extern RPC_IF_HANDLE __MIDL_itf_d3d12_0000_0060_v0_0_s_ifspec; + +#ifndef __ID3D12DeviceConfiguration_INTERFACE_DEFINED__ +#define __ID3D12DeviceConfiguration_INTERFACE_DEFINED__ + +/* interface ID3D12DeviceConfiguration */ +/* [unique][local][object][uuid] */ + + +EXTERN_C const IID IID_ID3D12DeviceConfiguration; + +#if defined(__cplusplus) && !defined(CINTERFACE) + + MIDL_INTERFACE("78dbf87b-f766-422b-a61c-c8c446bdb9ad") + ID3D12DeviceConfiguration : public IUnknown + { + public: +#if defined(_MSC_VER) || !defined(_WIN32) + virtual D3D12_DEVICE_CONFIGURATION_DESC STDMETHODCALLTYPE GetDesc( void) = 0; +#else + virtual D3D12_DEVICE_CONFIGURATION_DESC *STDMETHODCALLTYPE GetDesc( + D3D12_DEVICE_CONFIGURATION_DESC * RetVal) = 0; +#endif + + virtual HRESULT STDMETHODCALLTYPE GetEnabledExperimentalFeatures( + _Out_writes_(NumGuids) GUID *pGuids, + UINT NumGuids) = 0; + + virtual HRESULT STDMETHODCALLTYPE SerializeVersionedRootSignature( + _In_ const D3D12_VERSIONED_ROOT_SIGNATURE_DESC *pDesc, + _COM_Outptr_ ID3DBlob **ppResult, + _Always_(_Outptr_opt_result_maybenull_) ID3DBlob **ppError) = 0; + + virtual HRESULT STDMETHODCALLTYPE CreateVersionedRootSignatureDeserializer( + _In_reads_bytes_(Size) const void *pBlob, + SIZE_T Size, + REFIID riid, + _COM_Outptr_ void **ppvDeserializer) = 0; + + }; + + +#else /* C style interface */ + + typedef struct ID3D12DeviceConfigurationVtbl + { + BEGIN_INTERFACE + + DECLSPEC_XFGVIRT(IUnknown, QueryInterface) + HRESULT ( STDMETHODCALLTYPE *QueryInterface )( + ID3D12DeviceConfiguration * This, + REFIID riid, + _COM_Outptr_ void **ppvObject); + + DECLSPEC_XFGVIRT(IUnknown, AddRef) + ULONG ( STDMETHODCALLTYPE *AddRef )( + ID3D12DeviceConfiguration * This); + + DECLSPEC_XFGVIRT(IUnknown, Release) + ULONG ( STDMETHODCALLTYPE *Release )( + ID3D12DeviceConfiguration * This); + + DECLSPEC_XFGVIRT(ID3D12DeviceConfiguration, GetDesc) +#if !defined(_WIN32) + D3D12_DEVICE_CONFIGURATION_DESC ( STDMETHODCALLTYPE *GetDesc )( + ID3D12DeviceConfiguration * This); + +#else + D3D12_DEVICE_CONFIGURATION_DESC *( STDMETHODCALLTYPE *GetDesc )( + ID3D12DeviceConfiguration * This, + D3D12_DEVICE_CONFIGURATION_DESC * RetVal); + +#endif + + DECLSPEC_XFGVIRT(ID3D12DeviceConfiguration, GetEnabledExperimentalFeatures) + HRESULT ( STDMETHODCALLTYPE *GetEnabledExperimentalFeatures )( + ID3D12DeviceConfiguration * This, + _Out_writes_(NumGuids) GUID *pGuids, + UINT NumGuids); + + DECLSPEC_XFGVIRT(ID3D12DeviceConfiguration, SerializeVersionedRootSignature) + HRESULT ( STDMETHODCALLTYPE *SerializeVersionedRootSignature )( + ID3D12DeviceConfiguration * This, + _In_ const D3D12_VERSIONED_ROOT_SIGNATURE_DESC *pDesc, + _COM_Outptr_ ID3DBlob **ppResult, + _Always_(_Outptr_opt_result_maybenull_) ID3DBlob **ppError); + + DECLSPEC_XFGVIRT(ID3D12DeviceConfiguration, CreateVersionedRootSignatureDeserializer) + HRESULT ( STDMETHODCALLTYPE *CreateVersionedRootSignatureDeserializer )( + ID3D12DeviceConfiguration * This, + _In_reads_bytes_(Size) const void *pBlob, + SIZE_T Size, + REFIID riid, + _COM_Outptr_ void **ppvDeserializer); + + END_INTERFACE + } ID3D12DeviceConfigurationVtbl; + + interface ID3D12DeviceConfiguration + { + CONST_VTBL struct ID3D12DeviceConfigurationVtbl *lpVtbl; + }; + + + +#ifdef COBJMACROS + + +#define ID3D12DeviceConfiguration_QueryInterface(This,riid,ppvObject) \ + ( (This)->lpVtbl -> QueryInterface(This,riid,ppvObject) ) + +#define ID3D12DeviceConfiguration_AddRef(This) \ + ( (This)->lpVtbl -> AddRef(This) ) + +#define ID3D12DeviceConfiguration_Release(This) \ + ( (This)->lpVtbl -> Release(This) ) + +#if !defined(_WIN32) + +#define ID3D12DeviceConfiguration_GetDesc(This) \ + ( (This)->lpVtbl -> GetDesc(This) ) +#else +#define ID3D12DeviceConfiguration_GetDesc(This,RetVal) \ + ( (This)->lpVtbl -> GetDesc(This,RetVal) ) +#endif + +#define ID3D12DeviceConfiguration_GetEnabledExperimentalFeatures(This,pGuids,NumGuids) \ + ( (This)->lpVtbl -> GetEnabledExperimentalFeatures(This,pGuids,NumGuids) ) + +#define ID3D12DeviceConfiguration_SerializeVersionedRootSignature(This,pDesc,ppResult,ppError) \ + ( (This)->lpVtbl -> SerializeVersionedRootSignature(This,pDesc,ppResult,ppError) ) + +#define ID3D12DeviceConfiguration_CreateVersionedRootSignatureDeserializer(This,pBlob,Size,riid,ppvDeserializer) \ + ( (This)->lpVtbl -> CreateVersionedRootSignatureDeserializer(This,pBlob,Size,riid,ppvDeserializer) ) + +#endif /* COBJMACROS */ + + +#endif /* C style interface */ + + + + +#endif /* __ID3D12DeviceConfiguration_INTERFACE_DEFINED__ */ + + +/* interface __MIDL_itf_d3d12_0000_0061 */ +/* [local] */ + +typedef +enum D3D12_AXIS_SHADING_RATE + { + D3D12_AXIS_SHADING_RATE_1X = 0, + D3D12_AXIS_SHADING_RATE_2X = 0x1, + D3D12_AXIS_SHADING_RATE_4X = 0x2 + } D3D12_AXIS_SHADING_RATE; + +#define D3D12_SHADING_RATE_X_AXIS_SHIFT 2 +#define D3D12_SHADING_RATE_VALID_MASK 3 +#define D3D12_MAKE_COARSE_SHADING_RATE(x,y) ((x) << D3D12_SHADING_RATE_X_AXIS_SHIFT | (y)) +#define D3D12_GET_COARSE_SHADING_RATE_X_AXIS(x) (((x) >> D3D12_SHADING_RATE_X_AXIS_SHIFT) & D3D12_SHADING_RATE_VALID_MASK) +#define D3D12_GET_COARSE_SHADING_RATE_Y_AXIS(y) ((y) & D3D12_SHADING_RATE_VALID_MASK) +typedef +enum D3D12_SHADING_RATE + { + D3D12_SHADING_RATE_1X1 = 0, + D3D12_SHADING_RATE_1X2 = 0x1, + D3D12_SHADING_RATE_2X1 = 0x4, + D3D12_SHADING_RATE_2X2 = 0x5, + D3D12_SHADING_RATE_2X4 = 0x6, + D3D12_SHADING_RATE_4X2 = 0x9, + D3D12_SHADING_RATE_4X4 = 0xa + } D3D12_SHADING_RATE; + +typedef +enum D3D12_SHADING_RATE_COMBINER + { + D3D12_SHADING_RATE_COMBINER_PASSTHROUGH = 0, + D3D12_SHADING_RATE_COMBINER_OVERRIDE = 1, + D3D12_SHADING_RATE_COMBINER_MIN = 2, + D3D12_SHADING_RATE_COMBINER_MAX = 3, + D3D12_SHADING_RATE_COMBINER_SUM = 4 + } D3D12_SHADING_RATE_COMBINER; + + + +extern RPC_IF_HANDLE __MIDL_itf_d3d12_0000_0061_v0_0_c_ifspec; +extern RPC_IF_HANDLE __MIDL_itf_d3d12_0000_0061_v0_0_s_ifspec; + +#ifndef __ID3D12GraphicsCommandList5_INTERFACE_DEFINED__ +#define __ID3D12GraphicsCommandList5_INTERFACE_DEFINED__ + +/* interface ID3D12GraphicsCommandList5 */ +/* [unique][local][object][uuid] */ + + +EXTERN_C const IID IID_ID3D12GraphicsCommandList5; + +#if defined(__cplusplus) && !defined(CINTERFACE) + + MIDL_INTERFACE("55050859-4024-474c-87f5-6472eaee44ea") + ID3D12GraphicsCommandList5 : public ID3D12GraphicsCommandList4 + { + public: + virtual void STDMETHODCALLTYPE RSSetShadingRate( + _In_ D3D12_SHADING_RATE baseShadingRate, + _In_reads_opt_(D3D12_RS_SET_SHADING_RATE_COMBINER_COUNT) const D3D12_SHADING_RATE_COMBINER *combiners) = 0; + + virtual void STDMETHODCALLTYPE RSSetShadingRateImage( + _In_opt_ ID3D12Resource *shadingRateImage) = 0; + + }; + + +#else /* C style interface */ + + typedef struct ID3D12GraphicsCommandList5Vtbl + { + BEGIN_INTERFACE + + DECLSPEC_XFGVIRT(IUnknown, QueryInterface) + HRESULT ( STDMETHODCALLTYPE *QueryInterface )( + ID3D12GraphicsCommandList5 * This, + REFIID riid, + _COM_Outptr_ void **ppvObject); + + DECLSPEC_XFGVIRT(IUnknown, AddRef) + ULONG ( STDMETHODCALLTYPE *AddRef )( + ID3D12GraphicsCommandList5 * This); + + DECLSPEC_XFGVIRT(IUnknown, Release) + ULONG ( STDMETHODCALLTYPE *Release )( + ID3D12GraphicsCommandList5 * This); + + DECLSPEC_XFGVIRT(ID3D12Object, GetPrivateData) + HRESULT ( STDMETHODCALLTYPE *GetPrivateData )( + ID3D12GraphicsCommandList5 * This, + _In_ REFGUID guid, + _Inout_ UINT *pDataSize, + _Out_writes_bytes_opt_( *pDataSize ) void *pData); + + DECLSPEC_XFGVIRT(ID3D12Object, SetPrivateData) + HRESULT ( STDMETHODCALLTYPE *SetPrivateData )( + ID3D12GraphicsCommandList5 * This, + _In_ REFGUID guid, + _In_ UINT DataSize, + _In_reads_bytes_opt_( DataSize ) const void *pData); + + DECLSPEC_XFGVIRT(ID3D12Object, SetPrivateDataInterface) + HRESULT ( STDMETHODCALLTYPE *SetPrivateDataInterface )( + ID3D12GraphicsCommandList5 * This, + _In_ REFGUID guid, + _In_opt_ const IUnknown *pData); + + DECLSPEC_XFGVIRT(ID3D12Object, SetName) + HRESULT ( STDMETHODCALLTYPE *SetName )( + ID3D12GraphicsCommandList5 * This, + _In_z_ LPCWSTR Name); + + DECLSPEC_XFGVIRT(ID3D12DeviceChild, GetDevice) + HRESULT ( STDMETHODCALLTYPE *GetDevice )( + ID3D12GraphicsCommandList5 * This, + REFIID riid, + _COM_Outptr_opt_ void **ppvDevice); + + DECLSPEC_XFGVIRT(ID3D12CommandList, GetType) + D3D12_COMMAND_LIST_TYPE ( STDMETHODCALLTYPE *GetType )( + ID3D12GraphicsCommandList5 * This); + + DECLSPEC_XFGVIRT(ID3D12GraphicsCommandList, Close) + HRESULT ( STDMETHODCALLTYPE *Close )( + ID3D12GraphicsCommandList5 * This); + + DECLSPEC_XFGVIRT(ID3D12GraphicsCommandList, Reset) + HRESULT ( STDMETHODCALLTYPE *Reset )( + ID3D12GraphicsCommandList5 * This, + _In_ ID3D12CommandAllocator *pAllocator, + _In_opt_ ID3D12PipelineState *pInitialState); + + DECLSPEC_XFGVIRT(ID3D12GraphicsCommandList, ClearState) + void ( STDMETHODCALLTYPE *ClearState )( + ID3D12GraphicsCommandList5 * This, + _In_opt_ ID3D12PipelineState *pPipelineState); + + DECLSPEC_XFGVIRT(ID3D12GraphicsCommandList, DrawInstanced) + void ( STDMETHODCALLTYPE *DrawInstanced )( + ID3D12GraphicsCommandList5 * This, + _In_ UINT VertexCountPerInstance, + _In_ UINT InstanceCount, + _In_ UINT StartVertexLocation, + _In_ UINT StartInstanceLocation); + + DECLSPEC_XFGVIRT(ID3D12GraphicsCommandList, DrawIndexedInstanced) + void ( STDMETHODCALLTYPE *DrawIndexedInstanced )( + ID3D12GraphicsCommandList5 * This, + _In_ UINT IndexCountPerInstance, + _In_ UINT InstanceCount, + _In_ UINT StartIndexLocation, + _In_ INT BaseVertexLocation, + _In_ UINT StartInstanceLocation); + + DECLSPEC_XFGVIRT(ID3D12GraphicsCommandList, Dispatch) + void ( STDMETHODCALLTYPE *Dispatch )( + ID3D12GraphicsCommandList5 * This, + _In_ UINT ThreadGroupCountX, + _In_ UINT ThreadGroupCountY, + _In_ UINT ThreadGroupCountZ); + + DECLSPEC_XFGVIRT(ID3D12GraphicsCommandList, CopyBufferRegion) + void ( STDMETHODCALLTYPE *CopyBufferRegion )( + ID3D12GraphicsCommandList5 * This, + _In_ ID3D12Resource *pDstBuffer, + UINT64 DstOffset, + _In_ ID3D12Resource *pSrcBuffer, + UINT64 SrcOffset, + UINT64 NumBytes); + + DECLSPEC_XFGVIRT(ID3D12GraphicsCommandList, CopyTextureRegion) + void ( STDMETHODCALLTYPE *CopyTextureRegion )( + ID3D12GraphicsCommandList5 * This, + _In_ const D3D12_TEXTURE_COPY_LOCATION *pDst, + UINT DstX, + UINT DstY, + UINT DstZ, + _In_ const D3D12_TEXTURE_COPY_LOCATION *pSrc, + _In_opt_ const D3D12_BOX *pSrcBox); + + DECLSPEC_XFGVIRT(ID3D12GraphicsCommandList, CopyResource) + void ( STDMETHODCALLTYPE *CopyResource )( + ID3D12GraphicsCommandList5 * This, + _In_ ID3D12Resource *pDstResource, + _In_ ID3D12Resource *pSrcResource); + + DECLSPEC_XFGVIRT(ID3D12GraphicsCommandList, CopyTiles) + void ( STDMETHODCALLTYPE *CopyTiles )( + ID3D12GraphicsCommandList5 * This, + _In_ ID3D12Resource *pTiledResource, + _In_ const D3D12_TILED_RESOURCE_COORDINATE *pTileRegionStartCoordinate, + _In_ const D3D12_TILE_REGION_SIZE *pTileRegionSize, + _In_ ID3D12Resource *pBuffer, + UINT64 BufferStartOffsetInBytes, + D3D12_TILE_COPY_FLAGS Flags); + + DECLSPEC_XFGVIRT(ID3D12GraphicsCommandList, ResolveSubresource) + void ( STDMETHODCALLTYPE *ResolveSubresource )( + ID3D12GraphicsCommandList5 * This, + _In_ ID3D12Resource *pDstResource, + _In_ UINT DstSubresource, + _In_ ID3D12Resource *pSrcResource, + _In_ UINT SrcSubresource, + _In_ DXGI_FORMAT Format); + + DECLSPEC_XFGVIRT(ID3D12GraphicsCommandList, IASetPrimitiveTopology) + void ( STDMETHODCALLTYPE *IASetPrimitiveTopology )( + ID3D12GraphicsCommandList5 * This, + _In_ D3D12_PRIMITIVE_TOPOLOGY PrimitiveTopology); + + DECLSPEC_XFGVIRT(ID3D12GraphicsCommandList, RSSetViewports) + void ( STDMETHODCALLTYPE *RSSetViewports )( + ID3D12GraphicsCommandList5 * This, + _In_range_(0, D3D12_VIEWPORT_AND_SCISSORRECT_OBJECT_COUNT_PER_PIPELINE) UINT NumViewports, + _In_reads_( NumViewports) const D3D12_VIEWPORT *pViewports); + + DECLSPEC_XFGVIRT(ID3D12GraphicsCommandList, RSSetScissorRects) + void ( STDMETHODCALLTYPE *RSSetScissorRects )( + ID3D12GraphicsCommandList5 * This, + _In_range_(0, D3D12_VIEWPORT_AND_SCISSORRECT_OBJECT_COUNT_PER_PIPELINE) UINT NumRects, + _In_reads_( NumRects) const D3D12_RECT *pRects); + + DECLSPEC_XFGVIRT(ID3D12GraphicsCommandList, OMSetBlendFactor) + void ( STDMETHODCALLTYPE *OMSetBlendFactor )( + ID3D12GraphicsCommandList5 * This, + _In_reads_opt_(4) const FLOAT BlendFactor[ 4 ]); + + DECLSPEC_XFGVIRT(ID3D12GraphicsCommandList, OMSetStencilRef) + void ( STDMETHODCALLTYPE *OMSetStencilRef )( + ID3D12GraphicsCommandList5 * This, + _In_ UINT StencilRef); + + DECLSPEC_XFGVIRT(ID3D12GraphicsCommandList, SetPipelineState) + void ( STDMETHODCALLTYPE *SetPipelineState )( + ID3D12GraphicsCommandList5 * This, + _In_ ID3D12PipelineState *pPipelineState); + + DECLSPEC_XFGVIRT(ID3D12GraphicsCommandList, ResourceBarrier) + void ( STDMETHODCALLTYPE *ResourceBarrier )( + ID3D12GraphicsCommandList5 * This, + _In_ UINT NumBarriers, + _In_reads_(NumBarriers) const D3D12_RESOURCE_BARRIER *pBarriers); + + DECLSPEC_XFGVIRT(ID3D12GraphicsCommandList, ExecuteBundle) + void ( STDMETHODCALLTYPE *ExecuteBundle )( + ID3D12GraphicsCommandList5 * This, + _In_ ID3D12GraphicsCommandList *pCommandList); + + DECLSPEC_XFGVIRT(ID3D12GraphicsCommandList, SetDescriptorHeaps) + void ( STDMETHODCALLTYPE *SetDescriptorHeaps )( + ID3D12GraphicsCommandList5 * This, + _In_ UINT NumDescriptorHeaps, + _In_reads_(NumDescriptorHeaps) ID3D12DescriptorHeap *const *ppDescriptorHeaps); + + DECLSPEC_XFGVIRT(ID3D12GraphicsCommandList, SetComputeRootSignature) + void ( STDMETHODCALLTYPE *SetComputeRootSignature )( + ID3D12GraphicsCommandList5 * This, + _In_opt_ ID3D12RootSignature *pRootSignature); + + DECLSPEC_XFGVIRT(ID3D12GraphicsCommandList, SetGraphicsRootSignature) + void ( STDMETHODCALLTYPE *SetGraphicsRootSignature )( + ID3D12GraphicsCommandList5 * This, + _In_opt_ ID3D12RootSignature *pRootSignature); + + DECLSPEC_XFGVIRT(ID3D12GraphicsCommandList, SetComputeRootDescriptorTable) + void ( STDMETHODCALLTYPE *SetComputeRootDescriptorTable )( + ID3D12GraphicsCommandList5 * This, + _In_ UINT RootParameterIndex, + _In_ D3D12_GPU_DESCRIPTOR_HANDLE BaseDescriptor); + + DECLSPEC_XFGVIRT(ID3D12GraphicsCommandList, SetGraphicsRootDescriptorTable) + void ( STDMETHODCALLTYPE *SetGraphicsRootDescriptorTable )( + ID3D12GraphicsCommandList5 * This, + _In_ UINT RootParameterIndex, + _In_ D3D12_GPU_DESCRIPTOR_HANDLE BaseDescriptor); + + DECLSPEC_XFGVIRT(ID3D12GraphicsCommandList, SetComputeRoot32BitConstant) + void ( STDMETHODCALLTYPE *SetComputeRoot32BitConstant )( + ID3D12GraphicsCommandList5 * This, + _In_ UINT RootParameterIndex, + _In_ UINT SrcData, + _In_ UINT DestOffsetIn32BitValues); + + DECLSPEC_XFGVIRT(ID3D12GraphicsCommandList, SetGraphicsRoot32BitConstant) + void ( STDMETHODCALLTYPE *SetGraphicsRoot32BitConstant )( + ID3D12GraphicsCommandList5 * This, + _In_ UINT RootParameterIndex, + _In_ UINT SrcData, + _In_ UINT DestOffsetIn32BitValues); + + DECLSPEC_XFGVIRT(ID3D12GraphicsCommandList, SetComputeRoot32BitConstants) + void ( STDMETHODCALLTYPE *SetComputeRoot32BitConstants )( + ID3D12GraphicsCommandList5 * This, + _In_ UINT RootParameterIndex, + _In_ UINT Num32BitValuesToSet, + _In_reads_(Num32BitValuesToSet*sizeof(UINT)) const void *pSrcData, + _In_ UINT DestOffsetIn32BitValues); + + DECLSPEC_XFGVIRT(ID3D12GraphicsCommandList, SetGraphicsRoot32BitConstants) + void ( STDMETHODCALLTYPE *SetGraphicsRoot32BitConstants )( + ID3D12GraphicsCommandList5 * This, + _In_ UINT RootParameterIndex, + _In_ UINT Num32BitValuesToSet, + _In_reads_(Num32BitValuesToSet*sizeof(UINT)) const void *pSrcData, + _In_ UINT DestOffsetIn32BitValues); + + DECLSPEC_XFGVIRT(ID3D12GraphicsCommandList, SetComputeRootConstantBufferView) + void ( STDMETHODCALLTYPE *SetComputeRootConstantBufferView )( + ID3D12GraphicsCommandList5 * This, + _In_ UINT RootParameterIndex, + _In_ D3D12_GPU_VIRTUAL_ADDRESS BufferLocation); + + DECLSPEC_XFGVIRT(ID3D12GraphicsCommandList, SetGraphicsRootConstantBufferView) + void ( STDMETHODCALLTYPE *SetGraphicsRootConstantBufferView )( + ID3D12GraphicsCommandList5 * This, + _In_ UINT RootParameterIndex, + _In_ D3D12_GPU_VIRTUAL_ADDRESS BufferLocation); + + DECLSPEC_XFGVIRT(ID3D12GraphicsCommandList, SetComputeRootShaderResourceView) + void ( STDMETHODCALLTYPE *SetComputeRootShaderResourceView )( + ID3D12GraphicsCommandList5 * This, + _In_ UINT RootParameterIndex, + _In_ D3D12_GPU_VIRTUAL_ADDRESS BufferLocation); + + DECLSPEC_XFGVIRT(ID3D12GraphicsCommandList, SetGraphicsRootShaderResourceView) + void ( STDMETHODCALLTYPE *SetGraphicsRootShaderResourceView )( + ID3D12GraphicsCommandList5 * This, + _In_ UINT RootParameterIndex, + _In_ D3D12_GPU_VIRTUAL_ADDRESS BufferLocation); + + DECLSPEC_XFGVIRT(ID3D12GraphicsCommandList, SetComputeRootUnorderedAccessView) + void ( STDMETHODCALLTYPE *SetComputeRootUnorderedAccessView )( + ID3D12GraphicsCommandList5 * This, + _In_ UINT RootParameterIndex, + _In_ D3D12_GPU_VIRTUAL_ADDRESS BufferLocation); + + DECLSPEC_XFGVIRT(ID3D12GraphicsCommandList, SetGraphicsRootUnorderedAccessView) + void ( STDMETHODCALLTYPE *SetGraphicsRootUnorderedAccessView )( + ID3D12GraphicsCommandList5 * This, + _In_ UINT RootParameterIndex, + _In_ D3D12_GPU_VIRTUAL_ADDRESS BufferLocation); + + DECLSPEC_XFGVIRT(ID3D12GraphicsCommandList, IASetIndexBuffer) + void ( STDMETHODCALLTYPE *IASetIndexBuffer )( + ID3D12GraphicsCommandList5 * This, + _In_opt_ const D3D12_INDEX_BUFFER_VIEW *pView); + + DECLSPEC_XFGVIRT(ID3D12GraphicsCommandList, IASetVertexBuffers) + void ( STDMETHODCALLTYPE *IASetVertexBuffers )( + ID3D12GraphicsCommandList5 * This, + _In_ UINT StartSlot, + _In_ UINT NumViews, + _In_reads_opt_(NumViews) const D3D12_VERTEX_BUFFER_VIEW *pViews); + + DECLSPEC_XFGVIRT(ID3D12GraphicsCommandList, SOSetTargets) + void ( STDMETHODCALLTYPE *SOSetTargets )( + ID3D12GraphicsCommandList5 * This, + _In_ UINT StartSlot, + _In_ UINT NumViews, + _In_reads_opt_(NumViews) const D3D12_STREAM_OUTPUT_BUFFER_VIEW *pViews); + + DECLSPEC_XFGVIRT(ID3D12GraphicsCommandList, OMSetRenderTargets) + void ( STDMETHODCALLTYPE *OMSetRenderTargets )( + ID3D12GraphicsCommandList5 * This, + _In_ UINT NumRenderTargetDescriptors, + _In_opt_ const D3D12_CPU_DESCRIPTOR_HANDLE *pRenderTargetDescriptors, + _In_ BOOL RTsSingleHandleToDescriptorRange, + _In_opt_ const D3D12_CPU_DESCRIPTOR_HANDLE *pDepthStencilDescriptor); + + DECLSPEC_XFGVIRT(ID3D12GraphicsCommandList, ClearDepthStencilView) + void ( STDMETHODCALLTYPE *ClearDepthStencilView )( + ID3D12GraphicsCommandList5 * This, + _In_ D3D12_CPU_DESCRIPTOR_HANDLE DepthStencilView, + _In_ D3D12_CLEAR_FLAGS ClearFlags, + _In_ FLOAT Depth, + _In_ UINT8 Stencil, + _In_ UINT NumRects, + _In_reads_(NumRects) const D3D12_RECT *pRects); + + DECLSPEC_XFGVIRT(ID3D12GraphicsCommandList, ClearRenderTargetView) + void ( STDMETHODCALLTYPE *ClearRenderTargetView )( + ID3D12GraphicsCommandList5 * This, + _In_ D3D12_CPU_DESCRIPTOR_HANDLE RenderTargetView, + _In_ const FLOAT ColorRGBA[ 4 ], + _In_ UINT NumRects, + _In_reads_(NumRects) const D3D12_RECT *pRects); + + DECLSPEC_XFGVIRT(ID3D12GraphicsCommandList, ClearUnorderedAccessViewUint) + void ( STDMETHODCALLTYPE *ClearUnorderedAccessViewUint )( + ID3D12GraphicsCommandList5 * This, + _In_ D3D12_GPU_DESCRIPTOR_HANDLE ViewGPUHandleInCurrentHeap, + _In_ D3D12_CPU_DESCRIPTOR_HANDLE ViewCPUHandle, + _In_ ID3D12Resource *pResource, + _In_ const UINT Values[ 4 ], + _In_ UINT NumRects, + _In_reads_(NumRects) const D3D12_RECT *pRects); + + DECLSPEC_XFGVIRT(ID3D12GraphicsCommandList, ClearUnorderedAccessViewFloat) + void ( STDMETHODCALLTYPE *ClearUnorderedAccessViewFloat )( + ID3D12GraphicsCommandList5 * This, + _In_ D3D12_GPU_DESCRIPTOR_HANDLE ViewGPUHandleInCurrentHeap, + _In_ D3D12_CPU_DESCRIPTOR_HANDLE ViewCPUHandle, + _In_ ID3D12Resource *pResource, + _In_ const FLOAT Values[ 4 ], + _In_ UINT NumRects, + _In_reads_(NumRects) const D3D12_RECT *pRects); + + DECLSPEC_XFGVIRT(ID3D12GraphicsCommandList, DiscardResource) + void ( STDMETHODCALLTYPE *DiscardResource )( + ID3D12GraphicsCommandList5 * This, + _In_ ID3D12Resource *pResource, + _In_opt_ const D3D12_DISCARD_REGION *pRegion); + + DECLSPEC_XFGVIRT(ID3D12GraphicsCommandList, BeginQuery) + void ( STDMETHODCALLTYPE *BeginQuery )( + ID3D12GraphicsCommandList5 * This, + _In_ ID3D12QueryHeap *pQueryHeap, + _In_ D3D12_QUERY_TYPE Type, + _In_ UINT Index); + + DECLSPEC_XFGVIRT(ID3D12GraphicsCommandList, EndQuery) + void ( STDMETHODCALLTYPE *EndQuery )( + ID3D12GraphicsCommandList5 * This, + _In_ ID3D12QueryHeap *pQueryHeap, + _In_ D3D12_QUERY_TYPE Type, + _In_ UINT Index); + + DECLSPEC_XFGVIRT(ID3D12GraphicsCommandList, ResolveQueryData) + void ( STDMETHODCALLTYPE *ResolveQueryData )( + ID3D12GraphicsCommandList5 * This, + _In_ ID3D12QueryHeap *pQueryHeap, + _In_ D3D12_QUERY_TYPE Type, + _In_ UINT StartIndex, + _In_ UINT NumQueries, + _In_ ID3D12Resource *pDestinationBuffer, + _In_ UINT64 AlignedDestinationBufferOffset); + + DECLSPEC_XFGVIRT(ID3D12GraphicsCommandList, SetPredication) + void ( STDMETHODCALLTYPE *SetPredication )( + ID3D12GraphicsCommandList5 * This, + _In_opt_ ID3D12Resource *pBuffer, + _In_ UINT64 AlignedBufferOffset, + _In_ D3D12_PREDICATION_OP Operation); + + DECLSPEC_XFGVIRT(ID3D12GraphicsCommandList, SetMarker) + void ( STDMETHODCALLTYPE *SetMarker )( + ID3D12GraphicsCommandList5 * This, + UINT Metadata, + _In_reads_bytes_opt_(Size) const void *pData, + UINT Size); + + DECLSPEC_XFGVIRT(ID3D12GraphicsCommandList, BeginEvent) + void ( STDMETHODCALLTYPE *BeginEvent )( + ID3D12GraphicsCommandList5 * This, + UINT Metadata, + _In_reads_bytes_opt_(Size) const void *pData, + UINT Size); + + DECLSPEC_XFGVIRT(ID3D12GraphicsCommandList, EndEvent) + void ( STDMETHODCALLTYPE *EndEvent )( + ID3D12GraphicsCommandList5 * This); + + DECLSPEC_XFGVIRT(ID3D12GraphicsCommandList, ExecuteIndirect) + void ( STDMETHODCALLTYPE *ExecuteIndirect )( + ID3D12GraphicsCommandList5 * This, + _In_ ID3D12CommandSignature *pCommandSignature, + _In_ UINT MaxCommandCount, + _In_ ID3D12Resource *pArgumentBuffer, + _In_ UINT64 ArgumentBufferOffset, + _In_opt_ ID3D12Resource *pCountBuffer, + _In_ UINT64 CountBufferOffset); + + DECLSPEC_XFGVIRT(ID3D12GraphicsCommandList1, AtomicCopyBufferUINT) + void ( STDMETHODCALLTYPE *AtomicCopyBufferUINT )( + ID3D12GraphicsCommandList5 * This, + _In_ ID3D12Resource *pDstBuffer, + UINT64 DstOffset, + _In_ ID3D12Resource *pSrcBuffer, + UINT64 SrcOffset, + UINT Dependencies, + _In_reads_(Dependencies) ID3D12Resource *const *ppDependentResources, + _In_reads_(Dependencies) const D3D12_SUBRESOURCE_RANGE_UINT64 *pDependentSubresourceRanges); + + DECLSPEC_XFGVIRT(ID3D12GraphicsCommandList1, AtomicCopyBufferUINT64) + void ( STDMETHODCALLTYPE *AtomicCopyBufferUINT64 )( + ID3D12GraphicsCommandList5 * This, + _In_ ID3D12Resource *pDstBuffer, + UINT64 DstOffset, + _In_ ID3D12Resource *pSrcBuffer, + UINT64 SrcOffset, + UINT Dependencies, + _In_reads_(Dependencies) ID3D12Resource *const *ppDependentResources, + _In_reads_(Dependencies) const D3D12_SUBRESOURCE_RANGE_UINT64 *pDependentSubresourceRanges); + + DECLSPEC_XFGVIRT(ID3D12GraphicsCommandList1, OMSetDepthBounds) + void ( STDMETHODCALLTYPE *OMSetDepthBounds )( + ID3D12GraphicsCommandList5 * This, + _In_ FLOAT Min, + _In_ FLOAT Max); + + DECLSPEC_XFGVIRT(ID3D12GraphicsCommandList1, SetSamplePositions) + void ( STDMETHODCALLTYPE *SetSamplePositions )( + ID3D12GraphicsCommandList5 * This, + _In_ UINT NumSamplesPerPixel, + _In_ UINT NumPixels, + _In_reads_(NumSamplesPerPixel*NumPixels) D3D12_SAMPLE_POSITION *pSamplePositions); + + DECLSPEC_XFGVIRT(ID3D12GraphicsCommandList1, ResolveSubresourceRegion) + void ( STDMETHODCALLTYPE *ResolveSubresourceRegion )( + ID3D12GraphicsCommandList5 * This, + _In_ ID3D12Resource *pDstResource, + _In_ UINT DstSubresource, + _In_ UINT DstX, + _In_ UINT DstY, + _In_ ID3D12Resource *pSrcResource, + _In_ UINT SrcSubresource, + _In_opt_ D3D12_RECT *pSrcRect, + _In_ DXGI_FORMAT Format, + _In_ D3D12_RESOLVE_MODE ResolveMode); + + DECLSPEC_XFGVIRT(ID3D12GraphicsCommandList1, SetViewInstanceMask) + void ( STDMETHODCALLTYPE *SetViewInstanceMask )( + ID3D12GraphicsCommandList5 * This, + _In_ UINT Mask); + + DECLSPEC_XFGVIRT(ID3D12GraphicsCommandList2, WriteBufferImmediate) + void ( STDMETHODCALLTYPE *WriteBufferImmediate )( + ID3D12GraphicsCommandList5 * This, + UINT Count, + _In_reads_(Count) const D3D12_WRITEBUFFERIMMEDIATE_PARAMETER *pParams, + _In_reads_opt_(Count) const D3D12_WRITEBUFFERIMMEDIATE_MODE *pModes); + + DECLSPEC_XFGVIRT(ID3D12GraphicsCommandList3, SetProtectedResourceSession) + void ( STDMETHODCALLTYPE *SetProtectedResourceSession )( + ID3D12GraphicsCommandList5 * This, + _In_opt_ ID3D12ProtectedResourceSession *pProtectedResourceSession); + + DECLSPEC_XFGVIRT(ID3D12GraphicsCommandList4, BeginRenderPass) + void ( STDMETHODCALLTYPE *BeginRenderPass )( + ID3D12GraphicsCommandList5 * This, + _In_ UINT NumRenderTargets, + _In_reads_opt_(NumRenderTargets) const D3D12_RENDER_PASS_RENDER_TARGET_DESC *pRenderTargets, + _In_opt_ const D3D12_RENDER_PASS_DEPTH_STENCIL_DESC *pDepthStencil, + D3D12_RENDER_PASS_FLAGS Flags); + + DECLSPEC_XFGVIRT(ID3D12GraphicsCommandList4, EndRenderPass) + void ( STDMETHODCALLTYPE *EndRenderPass )( + ID3D12GraphicsCommandList5 * This); + + DECLSPEC_XFGVIRT(ID3D12GraphicsCommandList4, InitializeMetaCommand) + void ( STDMETHODCALLTYPE *InitializeMetaCommand )( + ID3D12GraphicsCommandList5 * This, + _In_ ID3D12MetaCommand *pMetaCommand, + _In_reads_bytes_opt_(InitializationParametersDataSizeInBytes) const void *pInitializationParametersData, + _In_ SIZE_T InitializationParametersDataSizeInBytes); + + DECLSPEC_XFGVIRT(ID3D12GraphicsCommandList4, ExecuteMetaCommand) + void ( STDMETHODCALLTYPE *ExecuteMetaCommand )( + ID3D12GraphicsCommandList5 * This, + _In_ ID3D12MetaCommand *pMetaCommand, + _In_reads_bytes_opt_(ExecutionParametersDataSizeInBytes) const void *pExecutionParametersData, + _In_ SIZE_T ExecutionParametersDataSizeInBytes); + + DECLSPEC_XFGVIRT(ID3D12GraphicsCommandList4, BuildRaytracingAccelerationStructure) + void ( STDMETHODCALLTYPE *BuildRaytracingAccelerationStructure )( + ID3D12GraphicsCommandList5 * This, + _In_ const D3D12_BUILD_RAYTRACING_ACCELERATION_STRUCTURE_DESC *pDesc, + _In_ UINT NumPostbuildInfoDescs, + _In_reads_opt_(NumPostbuildInfoDescs) const D3D12_RAYTRACING_ACCELERATION_STRUCTURE_POSTBUILD_INFO_DESC *pPostbuildInfoDescs); + + DECLSPEC_XFGVIRT(ID3D12GraphicsCommandList4, EmitRaytracingAccelerationStructurePostbuildInfo) + void ( STDMETHODCALLTYPE *EmitRaytracingAccelerationStructurePostbuildInfo )( + ID3D12GraphicsCommandList5 * This, + _In_ const D3D12_RAYTRACING_ACCELERATION_STRUCTURE_POSTBUILD_INFO_DESC *pDesc, + _In_ UINT NumSourceAccelerationStructures, + _In_reads_( NumSourceAccelerationStructures ) const D3D12_GPU_VIRTUAL_ADDRESS *pSourceAccelerationStructureData); + + DECLSPEC_XFGVIRT(ID3D12GraphicsCommandList4, CopyRaytracingAccelerationStructure) + void ( STDMETHODCALLTYPE *CopyRaytracingAccelerationStructure )( + ID3D12GraphicsCommandList5 * This, + _In_ D3D12_GPU_VIRTUAL_ADDRESS DestAccelerationStructureData, + _In_ D3D12_GPU_VIRTUAL_ADDRESS SourceAccelerationStructureData, + _In_ D3D12_RAYTRACING_ACCELERATION_STRUCTURE_COPY_MODE Mode); + + DECLSPEC_XFGVIRT(ID3D12GraphicsCommandList4, SetPipelineState1) + void ( STDMETHODCALLTYPE *SetPipelineState1 )( + ID3D12GraphicsCommandList5 * This, + _In_ ID3D12StateObject *pStateObject); + + DECLSPEC_XFGVIRT(ID3D12GraphicsCommandList4, DispatchRays) + void ( STDMETHODCALLTYPE *DispatchRays )( + ID3D12GraphicsCommandList5 * This, + _In_ const D3D12_DISPATCH_RAYS_DESC *pDesc); + + DECLSPEC_XFGVIRT(ID3D12GraphicsCommandList5, RSSetShadingRate) + void ( STDMETHODCALLTYPE *RSSetShadingRate )( + ID3D12GraphicsCommandList5 * This, + _In_ D3D12_SHADING_RATE baseShadingRate, + _In_reads_opt_(D3D12_RS_SET_SHADING_RATE_COMBINER_COUNT) const D3D12_SHADING_RATE_COMBINER *combiners); + + DECLSPEC_XFGVIRT(ID3D12GraphicsCommandList5, RSSetShadingRateImage) + void ( STDMETHODCALLTYPE *RSSetShadingRateImage )( + ID3D12GraphicsCommandList5 * This, + _In_opt_ ID3D12Resource *shadingRateImage); + + END_INTERFACE + } ID3D12GraphicsCommandList5Vtbl; + + interface ID3D12GraphicsCommandList5 + { + CONST_VTBL struct ID3D12GraphicsCommandList5Vtbl *lpVtbl; + }; + + + +#ifdef COBJMACROS + + +#define ID3D12GraphicsCommandList5_QueryInterface(This,riid,ppvObject) \ + ( (This)->lpVtbl -> QueryInterface(This,riid,ppvObject) ) + +#define ID3D12GraphicsCommandList5_AddRef(This) \ + ( (This)->lpVtbl -> AddRef(This) ) + +#define ID3D12GraphicsCommandList5_Release(This) \ + ( (This)->lpVtbl -> Release(This) ) + + +#define ID3D12GraphicsCommandList5_GetPrivateData(This,guid,pDataSize,pData) \ + ( (This)->lpVtbl -> GetPrivateData(This,guid,pDataSize,pData) ) + +#define ID3D12GraphicsCommandList5_SetPrivateData(This,guid,DataSize,pData) \ + ( (This)->lpVtbl -> SetPrivateData(This,guid,DataSize,pData) ) + +#define ID3D12GraphicsCommandList5_SetPrivateDataInterface(This,guid,pData) \ + ( (This)->lpVtbl -> SetPrivateDataInterface(This,guid,pData) ) + +#define ID3D12GraphicsCommandList5_SetName(This,Name) \ + ( (This)->lpVtbl -> SetName(This,Name) ) + + +#define ID3D12GraphicsCommandList5_GetDevice(This,riid,ppvDevice) \ + ( (This)->lpVtbl -> GetDevice(This,riid,ppvDevice) ) + + +#define ID3D12GraphicsCommandList5_GetType(This) \ + ( (This)->lpVtbl -> GetType(This) ) + + +#define ID3D12GraphicsCommandList5_Close(This) \ + ( (This)->lpVtbl -> Close(This) ) + +#define ID3D12GraphicsCommandList5_Reset(This,pAllocator,pInitialState) \ + ( (This)->lpVtbl -> Reset(This,pAllocator,pInitialState) ) + +#define ID3D12GraphicsCommandList5_ClearState(This,pPipelineState) \ + ( (This)->lpVtbl -> ClearState(This,pPipelineState) ) + +#define ID3D12GraphicsCommandList5_DrawInstanced(This,VertexCountPerInstance,InstanceCount,StartVertexLocation,StartInstanceLocation) \ + ( (This)->lpVtbl -> DrawInstanced(This,VertexCountPerInstance,InstanceCount,StartVertexLocation,StartInstanceLocation) ) + +#define ID3D12GraphicsCommandList5_DrawIndexedInstanced(This,IndexCountPerInstance,InstanceCount,StartIndexLocation,BaseVertexLocation,StartInstanceLocation) \ + ( (This)->lpVtbl -> DrawIndexedInstanced(This,IndexCountPerInstance,InstanceCount,StartIndexLocation,BaseVertexLocation,StartInstanceLocation) ) + +#define ID3D12GraphicsCommandList5_Dispatch(This,ThreadGroupCountX,ThreadGroupCountY,ThreadGroupCountZ) \ + ( (This)->lpVtbl -> Dispatch(This,ThreadGroupCountX,ThreadGroupCountY,ThreadGroupCountZ) ) + +#define ID3D12GraphicsCommandList5_CopyBufferRegion(This,pDstBuffer,DstOffset,pSrcBuffer,SrcOffset,NumBytes) \ + ( (This)->lpVtbl -> CopyBufferRegion(This,pDstBuffer,DstOffset,pSrcBuffer,SrcOffset,NumBytes) ) + +#define ID3D12GraphicsCommandList5_CopyTextureRegion(This,pDst,DstX,DstY,DstZ,pSrc,pSrcBox) \ + ( (This)->lpVtbl -> CopyTextureRegion(This,pDst,DstX,DstY,DstZ,pSrc,pSrcBox) ) + +#define ID3D12GraphicsCommandList5_CopyResource(This,pDstResource,pSrcResource) \ + ( (This)->lpVtbl -> CopyResource(This,pDstResource,pSrcResource) ) + +#define ID3D12GraphicsCommandList5_CopyTiles(This,pTiledResource,pTileRegionStartCoordinate,pTileRegionSize,pBuffer,BufferStartOffsetInBytes,Flags) \ + ( (This)->lpVtbl -> CopyTiles(This,pTiledResource,pTileRegionStartCoordinate,pTileRegionSize,pBuffer,BufferStartOffsetInBytes,Flags) ) + +#define ID3D12GraphicsCommandList5_ResolveSubresource(This,pDstResource,DstSubresource,pSrcResource,SrcSubresource,Format) \ + ( (This)->lpVtbl -> ResolveSubresource(This,pDstResource,DstSubresource,pSrcResource,SrcSubresource,Format) ) + +#define ID3D12GraphicsCommandList5_IASetPrimitiveTopology(This,PrimitiveTopology) \ + ( (This)->lpVtbl -> IASetPrimitiveTopology(This,PrimitiveTopology) ) + +#define ID3D12GraphicsCommandList5_RSSetViewports(This,NumViewports,pViewports) \ + ( (This)->lpVtbl -> RSSetViewports(This,NumViewports,pViewports) ) + +#define ID3D12GraphicsCommandList5_RSSetScissorRects(This,NumRects,pRects) \ + ( (This)->lpVtbl -> RSSetScissorRects(This,NumRects,pRects) ) + +#define ID3D12GraphicsCommandList5_OMSetBlendFactor(This,BlendFactor) \ + ( (This)->lpVtbl -> OMSetBlendFactor(This,BlendFactor) ) + +#define ID3D12GraphicsCommandList5_OMSetStencilRef(This,StencilRef) \ + ( (This)->lpVtbl -> OMSetStencilRef(This,StencilRef) ) + +#define ID3D12GraphicsCommandList5_SetPipelineState(This,pPipelineState) \ + ( (This)->lpVtbl -> SetPipelineState(This,pPipelineState) ) + +#define ID3D12GraphicsCommandList5_ResourceBarrier(This,NumBarriers,pBarriers) \ + ( (This)->lpVtbl -> ResourceBarrier(This,NumBarriers,pBarriers) ) + +#define ID3D12GraphicsCommandList5_ExecuteBundle(This,pCommandList) \ + ( (This)->lpVtbl -> ExecuteBundle(This,pCommandList) ) + +#define ID3D12GraphicsCommandList5_SetDescriptorHeaps(This,NumDescriptorHeaps,ppDescriptorHeaps) \ + ( (This)->lpVtbl -> SetDescriptorHeaps(This,NumDescriptorHeaps,ppDescriptorHeaps) ) + +#define ID3D12GraphicsCommandList5_SetComputeRootSignature(This,pRootSignature) \ + ( (This)->lpVtbl -> SetComputeRootSignature(This,pRootSignature) ) + +#define ID3D12GraphicsCommandList5_SetGraphicsRootSignature(This,pRootSignature) \ + ( (This)->lpVtbl -> SetGraphicsRootSignature(This,pRootSignature) ) + +#define ID3D12GraphicsCommandList5_SetComputeRootDescriptorTable(This,RootParameterIndex,BaseDescriptor) \ + ( (This)->lpVtbl -> SetComputeRootDescriptorTable(This,RootParameterIndex,BaseDescriptor) ) + +#define ID3D12GraphicsCommandList5_SetGraphicsRootDescriptorTable(This,RootParameterIndex,BaseDescriptor) \ + ( (This)->lpVtbl -> SetGraphicsRootDescriptorTable(This,RootParameterIndex,BaseDescriptor) ) + +#define ID3D12GraphicsCommandList5_SetComputeRoot32BitConstant(This,RootParameterIndex,SrcData,DestOffsetIn32BitValues) \ + ( (This)->lpVtbl -> SetComputeRoot32BitConstant(This,RootParameterIndex,SrcData,DestOffsetIn32BitValues) ) + +#define ID3D12GraphicsCommandList5_SetGraphicsRoot32BitConstant(This,RootParameterIndex,SrcData,DestOffsetIn32BitValues) \ + ( (This)->lpVtbl -> SetGraphicsRoot32BitConstant(This,RootParameterIndex,SrcData,DestOffsetIn32BitValues) ) + +#define ID3D12GraphicsCommandList5_SetComputeRoot32BitConstants(This,RootParameterIndex,Num32BitValuesToSet,pSrcData,DestOffsetIn32BitValues) \ + ( (This)->lpVtbl -> SetComputeRoot32BitConstants(This,RootParameterIndex,Num32BitValuesToSet,pSrcData,DestOffsetIn32BitValues) ) + +#define ID3D12GraphicsCommandList5_SetGraphicsRoot32BitConstants(This,RootParameterIndex,Num32BitValuesToSet,pSrcData,DestOffsetIn32BitValues) \ + ( (This)->lpVtbl -> SetGraphicsRoot32BitConstants(This,RootParameterIndex,Num32BitValuesToSet,pSrcData,DestOffsetIn32BitValues) ) + +#define ID3D12GraphicsCommandList5_SetComputeRootConstantBufferView(This,RootParameterIndex,BufferLocation) \ + ( (This)->lpVtbl -> SetComputeRootConstantBufferView(This,RootParameterIndex,BufferLocation) ) + +#define ID3D12GraphicsCommandList5_SetGraphicsRootConstantBufferView(This,RootParameterIndex,BufferLocation) \ + ( (This)->lpVtbl -> SetGraphicsRootConstantBufferView(This,RootParameterIndex,BufferLocation) ) + +#define ID3D12GraphicsCommandList5_SetComputeRootShaderResourceView(This,RootParameterIndex,BufferLocation) \ + ( (This)->lpVtbl -> SetComputeRootShaderResourceView(This,RootParameterIndex,BufferLocation) ) + +#define ID3D12GraphicsCommandList5_SetGraphicsRootShaderResourceView(This,RootParameterIndex,BufferLocation) \ + ( (This)->lpVtbl -> SetGraphicsRootShaderResourceView(This,RootParameterIndex,BufferLocation) ) + +#define ID3D12GraphicsCommandList5_SetComputeRootUnorderedAccessView(This,RootParameterIndex,BufferLocation) \ + ( (This)->lpVtbl -> SetComputeRootUnorderedAccessView(This,RootParameterIndex,BufferLocation) ) + +#define ID3D12GraphicsCommandList5_SetGraphicsRootUnorderedAccessView(This,RootParameterIndex,BufferLocation) \ + ( (This)->lpVtbl -> SetGraphicsRootUnorderedAccessView(This,RootParameterIndex,BufferLocation) ) + +#define ID3D12GraphicsCommandList5_IASetIndexBuffer(This,pView) \ + ( (This)->lpVtbl -> IASetIndexBuffer(This,pView) ) + +#define ID3D12GraphicsCommandList5_IASetVertexBuffers(This,StartSlot,NumViews,pViews) \ + ( (This)->lpVtbl -> IASetVertexBuffers(This,StartSlot,NumViews,pViews) ) + +#define ID3D12GraphicsCommandList5_SOSetTargets(This,StartSlot,NumViews,pViews) \ + ( (This)->lpVtbl -> SOSetTargets(This,StartSlot,NumViews,pViews) ) + +#define ID3D12GraphicsCommandList5_OMSetRenderTargets(This,NumRenderTargetDescriptors,pRenderTargetDescriptors,RTsSingleHandleToDescriptorRange,pDepthStencilDescriptor) \ + ( (This)->lpVtbl -> OMSetRenderTargets(This,NumRenderTargetDescriptors,pRenderTargetDescriptors,RTsSingleHandleToDescriptorRange,pDepthStencilDescriptor) ) + +#define ID3D12GraphicsCommandList5_ClearDepthStencilView(This,DepthStencilView,ClearFlags,Depth,Stencil,NumRects,pRects) \ + ( (This)->lpVtbl -> ClearDepthStencilView(This,DepthStencilView,ClearFlags,Depth,Stencil,NumRects,pRects) ) + +#define ID3D12GraphicsCommandList5_ClearRenderTargetView(This,RenderTargetView,ColorRGBA,NumRects,pRects) \ + ( (This)->lpVtbl -> ClearRenderTargetView(This,RenderTargetView,ColorRGBA,NumRects,pRects) ) + +#define ID3D12GraphicsCommandList5_ClearUnorderedAccessViewUint(This,ViewGPUHandleInCurrentHeap,ViewCPUHandle,pResource,Values,NumRects,pRects) \ + ( (This)->lpVtbl -> ClearUnorderedAccessViewUint(This,ViewGPUHandleInCurrentHeap,ViewCPUHandle,pResource,Values,NumRects,pRects) ) + +#define ID3D12GraphicsCommandList5_ClearUnorderedAccessViewFloat(This,ViewGPUHandleInCurrentHeap,ViewCPUHandle,pResource,Values,NumRects,pRects) \ + ( (This)->lpVtbl -> ClearUnorderedAccessViewFloat(This,ViewGPUHandleInCurrentHeap,ViewCPUHandle,pResource,Values,NumRects,pRects) ) + +#define ID3D12GraphicsCommandList5_DiscardResource(This,pResource,pRegion) \ + ( (This)->lpVtbl -> DiscardResource(This,pResource,pRegion) ) + +#define ID3D12GraphicsCommandList5_BeginQuery(This,pQueryHeap,Type,Index) \ + ( (This)->lpVtbl -> BeginQuery(This,pQueryHeap,Type,Index) ) + +#define ID3D12GraphicsCommandList5_EndQuery(This,pQueryHeap,Type,Index) \ + ( (This)->lpVtbl -> EndQuery(This,pQueryHeap,Type,Index) ) + +#define ID3D12GraphicsCommandList5_ResolveQueryData(This,pQueryHeap,Type,StartIndex,NumQueries,pDestinationBuffer,AlignedDestinationBufferOffset) \ + ( (This)->lpVtbl -> ResolveQueryData(This,pQueryHeap,Type,StartIndex,NumQueries,pDestinationBuffer,AlignedDestinationBufferOffset) ) + +#define ID3D12GraphicsCommandList5_SetPredication(This,pBuffer,AlignedBufferOffset,Operation) \ + ( (This)->lpVtbl -> SetPredication(This,pBuffer,AlignedBufferOffset,Operation) ) + +#define ID3D12GraphicsCommandList5_SetMarker(This,Metadata,pData,Size) \ + ( (This)->lpVtbl -> SetMarker(This,Metadata,pData,Size) ) + +#define ID3D12GraphicsCommandList5_BeginEvent(This,Metadata,pData,Size) \ + ( (This)->lpVtbl -> BeginEvent(This,Metadata,pData,Size) ) + +#define ID3D12GraphicsCommandList5_EndEvent(This) \ + ( (This)->lpVtbl -> EndEvent(This) ) + +#define ID3D12GraphicsCommandList5_ExecuteIndirect(This,pCommandSignature,MaxCommandCount,pArgumentBuffer,ArgumentBufferOffset,pCountBuffer,CountBufferOffset) \ + ( (This)->lpVtbl -> ExecuteIndirect(This,pCommandSignature,MaxCommandCount,pArgumentBuffer,ArgumentBufferOffset,pCountBuffer,CountBufferOffset) ) + + +#define ID3D12GraphicsCommandList5_AtomicCopyBufferUINT(This,pDstBuffer,DstOffset,pSrcBuffer,SrcOffset,Dependencies,ppDependentResources,pDependentSubresourceRanges) \ + ( (This)->lpVtbl -> AtomicCopyBufferUINT(This,pDstBuffer,DstOffset,pSrcBuffer,SrcOffset,Dependencies,ppDependentResources,pDependentSubresourceRanges) ) + +#define ID3D12GraphicsCommandList5_AtomicCopyBufferUINT64(This,pDstBuffer,DstOffset,pSrcBuffer,SrcOffset,Dependencies,ppDependentResources,pDependentSubresourceRanges) \ + ( (This)->lpVtbl -> AtomicCopyBufferUINT64(This,pDstBuffer,DstOffset,pSrcBuffer,SrcOffset,Dependencies,ppDependentResources,pDependentSubresourceRanges) ) + +#define ID3D12GraphicsCommandList5_OMSetDepthBounds(This,Min,Max) \ + ( (This)->lpVtbl -> OMSetDepthBounds(This,Min,Max) ) + +#define ID3D12GraphicsCommandList5_SetSamplePositions(This,NumSamplesPerPixel,NumPixels,pSamplePositions) \ + ( (This)->lpVtbl -> SetSamplePositions(This,NumSamplesPerPixel,NumPixels,pSamplePositions) ) + +#define ID3D12GraphicsCommandList5_ResolveSubresourceRegion(This,pDstResource,DstSubresource,DstX,DstY,pSrcResource,SrcSubresource,pSrcRect,Format,ResolveMode) \ + ( (This)->lpVtbl -> ResolveSubresourceRegion(This,pDstResource,DstSubresource,DstX,DstY,pSrcResource,SrcSubresource,pSrcRect,Format,ResolveMode) ) + +#define ID3D12GraphicsCommandList5_SetViewInstanceMask(This,Mask) \ + ( (This)->lpVtbl -> SetViewInstanceMask(This,Mask) ) + + +#define ID3D12GraphicsCommandList5_WriteBufferImmediate(This,Count,pParams,pModes) \ + ( (This)->lpVtbl -> WriteBufferImmediate(This,Count,pParams,pModes) ) + + +#define ID3D12GraphicsCommandList5_SetProtectedResourceSession(This,pProtectedResourceSession) \ + ( (This)->lpVtbl -> SetProtectedResourceSession(This,pProtectedResourceSession) ) + + +#define ID3D12GraphicsCommandList5_BeginRenderPass(This,NumRenderTargets,pRenderTargets,pDepthStencil,Flags) \ + ( (This)->lpVtbl -> BeginRenderPass(This,NumRenderTargets,pRenderTargets,pDepthStencil,Flags) ) + +#define ID3D12GraphicsCommandList5_EndRenderPass(This) \ + ( (This)->lpVtbl -> EndRenderPass(This) ) + +#define ID3D12GraphicsCommandList5_InitializeMetaCommand(This,pMetaCommand,pInitializationParametersData,InitializationParametersDataSizeInBytes) \ + ( (This)->lpVtbl -> InitializeMetaCommand(This,pMetaCommand,pInitializationParametersData,InitializationParametersDataSizeInBytes) ) + +#define ID3D12GraphicsCommandList5_ExecuteMetaCommand(This,pMetaCommand,pExecutionParametersData,ExecutionParametersDataSizeInBytes) \ + ( (This)->lpVtbl -> ExecuteMetaCommand(This,pMetaCommand,pExecutionParametersData,ExecutionParametersDataSizeInBytes) ) + +#define ID3D12GraphicsCommandList5_BuildRaytracingAccelerationStructure(This,pDesc,NumPostbuildInfoDescs,pPostbuildInfoDescs) \ + ( (This)->lpVtbl -> BuildRaytracingAccelerationStructure(This,pDesc,NumPostbuildInfoDescs,pPostbuildInfoDescs) ) + +#define ID3D12GraphicsCommandList5_EmitRaytracingAccelerationStructurePostbuildInfo(This,pDesc,NumSourceAccelerationStructures,pSourceAccelerationStructureData) \ + ( (This)->lpVtbl -> EmitRaytracingAccelerationStructurePostbuildInfo(This,pDesc,NumSourceAccelerationStructures,pSourceAccelerationStructureData) ) + +#define ID3D12GraphicsCommandList5_CopyRaytracingAccelerationStructure(This,DestAccelerationStructureData,SourceAccelerationStructureData,Mode) \ + ( (This)->lpVtbl -> CopyRaytracingAccelerationStructure(This,DestAccelerationStructureData,SourceAccelerationStructureData,Mode) ) + +#define ID3D12GraphicsCommandList5_SetPipelineState1(This,pStateObject) \ + ( (This)->lpVtbl -> SetPipelineState1(This,pStateObject) ) + +#define ID3D12GraphicsCommandList5_DispatchRays(This,pDesc) \ + ( (This)->lpVtbl -> DispatchRays(This,pDesc) ) + + +#define ID3D12GraphicsCommandList5_RSSetShadingRate(This,baseShadingRate,combiners) \ + ( (This)->lpVtbl -> RSSetShadingRate(This,baseShadingRate,combiners) ) + +#define ID3D12GraphicsCommandList5_RSSetShadingRateImage(This,shadingRateImage) \ + ( (This)->lpVtbl -> RSSetShadingRateImage(This,shadingRateImage) ) + +#endif /* COBJMACROS */ + + +#endif /* C style interface */ + + + + +#endif /* __ID3D12GraphicsCommandList5_INTERFACE_DEFINED__ */ + + +/* interface __MIDL_itf_d3d12_0000_0062 */ +/* [local] */ + +typedef struct D3D12_DISPATCH_MESH_ARGUMENTS + { + UINT ThreadGroupCountX; + UINT ThreadGroupCountY; + UINT ThreadGroupCountZ; + } D3D12_DISPATCH_MESH_ARGUMENTS; + + + +extern RPC_IF_HANDLE __MIDL_itf_d3d12_0000_0062_v0_0_c_ifspec; +extern RPC_IF_HANDLE __MIDL_itf_d3d12_0000_0062_v0_0_s_ifspec; + +#ifndef __ID3D12GraphicsCommandList6_INTERFACE_DEFINED__ +#define __ID3D12GraphicsCommandList6_INTERFACE_DEFINED__ + +/* interface ID3D12GraphicsCommandList6 */ +/* [unique][local][object][uuid] */ + + +EXTERN_C const IID IID_ID3D12GraphicsCommandList6; + +#if defined(__cplusplus) && !defined(CINTERFACE) + + MIDL_INTERFACE("c3827890-e548-4cfa-96cf-5689a9370f80") + ID3D12GraphicsCommandList6 : public ID3D12GraphicsCommandList5 + { + public: + virtual void STDMETHODCALLTYPE DispatchMesh( + _In_ UINT ThreadGroupCountX, + _In_ UINT ThreadGroupCountY, + _In_ UINT ThreadGroupCountZ) = 0; + + }; + + +#else /* C style interface */ + + typedef struct ID3D12GraphicsCommandList6Vtbl + { + BEGIN_INTERFACE + + DECLSPEC_XFGVIRT(IUnknown, QueryInterface) + HRESULT ( STDMETHODCALLTYPE *QueryInterface )( + ID3D12GraphicsCommandList6 * This, + REFIID riid, + _COM_Outptr_ void **ppvObject); + + DECLSPEC_XFGVIRT(IUnknown, AddRef) + ULONG ( STDMETHODCALLTYPE *AddRef )( + ID3D12GraphicsCommandList6 * This); + + DECLSPEC_XFGVIRT(IUnknown, Release) + ULONG ( STDMETHODCALLTYPE *Release )( + ID3D12GraphicsCommandList6 * This); + + DECLSPEC_XFGVIRT(ID3D12Object, GetPrivateData) + HRESULT ( STDMETHODCALLTYPE *GetPrivateData )( + ID3D12GraphicsCommandList6 * This, + _In_ REFGUID guid, + _Inout_ UINT *pDataSize, + _Out_writes_bytes_opt_( *pDataSize ) void *pData); + + DECLSPEC_XFGVIRT(ID3D12Object, SetPrivateData) + HRESULT ( STDMETHODCALLTYPE *SetPrivateData )( + ID3D12GraphicsCommandList6 * This, + _In_ REFGUID guid, + _In_ UINT DataSize, + _In_reads_bytes_opt_( DataSize ) const void *pData); + + DECLSPEC_XFGVIRT(ID3D12Object, SetPrivateDataInterface) + HRESULT ( STDMETHODCALLTYPE *SetPrivateDataInterface )( + ID3D12GraphicsCommandList6 * This, + _In_ REFGUID guid, + _In_opt_ const IUnknown *pData); + + DECLSPEC_XFGVIRT(ID3D12Object, SetName) + HRESULT ( STDMETHODCALLTYPE *SetName )( + ID3D12GraphicsCommandList6 * This, + _In_z_ LPCWSTR Name); + + DECLSPEC_XFGVIRT(ID3D12DeviceChild, GetDevice) + HRESULT ( STDMETHODCALLTYPE *GetDevice )( + ID3D12GraphicsCommandList6 * This, + REFIID riid, + _COM_Outptr_opt_ void **ppvDevice); + + DECLSPEC_XFGVIRT(ID3D12CommandList, GetType) + D3D12_COMMAND_LIST_TYPE ( STDMETHODCALLTYPE *GetType )( + ID3D12GraphicsCommandList6 * This); + + DECLSPEC_XFGVIRT(ID3D12GraphicsCommandList, Close) + HRESULT ( STDMETHODCALLTYPE *Close )( + ID3D12GraphicsCommandList6 * This); + + DECLSPEC_XFGVIRT(ID3D12GraphicsCommandList, Reset) + HRESULT ( STDMETHODCALLTYPE *Reset )( + ID3D12GraphicsCommandList6 * This, + _In_ ID3D12CommandAllocator *pAllocator, + _In_opt_ ID3D12PipelineState *pInitialState); + + DECLSPEC_XFGVIRT(ID3D12GraphicsCommandList, ClearState) + void ( STDMETHODCALLTYPE *ClearState )( + ID3D12GraphicsCommandList6 * This, + _In_opt_ ID3D12PipelineState *pPipelineState); + + DECLSPEC_XFGVIRT(ID3D12GraphicsCommandList, DrawInstanced) + void ( STDMETHODCALLTYPE *DrawInstanced )( + ID3D12GraphicsCommandList6 * This, + _In_ UINT VertexCountPerInstance, + _In_ UINT InstanceCount, + _In_ UINT StartVertexLocation, + _In_ UINT StartInstanceLocation); + + DECLSPEC_XFGVIRT(ID3D12GraphicsCommandList, DrawIndexedInstanced) + void ( STDMETHODCALLTYPE *DrawIndexedInstanced )( + ID3D12GraphicsCommandList6 * This, + _In_ UINT IndexCountPerInstance, + _In_ UINT InstanceCount, + _In_ UINT StartIndexLocation, + _In_ INT BaseVertexLocation, + _In_ UINT StartInstanceLocation); + + DECLSPEC_XFGVIRT(ID3D12GraphicsCommandList, Dispatch) + void ( STDMETHODCALLTYPE *Dispatch )( + ID3D12GraphicsCommandList6 * This, + _In_ UINT ThreadGroupCountX, + _In_ UINT ThreadGroupCountY, + _In_ UINT ThreadGroupCountZ); + + DECLSPEC_XFGVIRT(ID3D12GraphicsCommandList, CopyBufferRegion) + void ( STDMETHODCALLTYPE *CopyBufferRegion )( + ID3D12GraphicsCommandList6 * This, + _In_ ID3D12Resource *pDstBuffer, + UINT64 DstOffset, + _In_ ID3D12Resource *pSrcBuffer, + UINT64 SrcOffset, + UINT64 NumBytes); + + DECLSPEC_XFGVIRT(ID3D12GraphicsCommandList, CopyTextureRegion) + void ( STDMETHODCALLTYPE *CopyTextureRegion )( + ID3D12GraphicsCommandList6 * This, + _In_ const D3D12_TEXTURE_COPY_LOCATION *pDst, + UINT DstX, + UINT DstY, + UINT DstZ, + _In_ const D3D12_TEXTURE_COPY_LOCATION *pSrc, + _In_opt_ const D3D12_BOX *pSrcBox); + + DECLSPEC_XFGVIRT(ID3D12GraphicsCommandList, CopyResource) + void ( STDMETHODCALLTYPE *CopyResource )( + ID3D12GraphicsCommandList6 * This, + _In_ ID3D12Resource *pDstResource, + _In_ ID3D12Resource *pSrcResource); + + DECLSPEC_XFGVIRT(ID3D12GraphicsCommandList, CopyTiles) + void ( STDMETHODCALLTYPE *CopyTiles )( + ID3D12GraphicsCommandList6 * This, + _In_ ID3D12Resource *pTiledResource, + _In_ const D3D12_TILED_RESOURCE_COORDINATE *pTileRegionStartCoordinate, + _In_ const D3D12_TILE_REGION_SIZE *pTileRegionSize, + _In_ ID3D12Resource *pBuffer, + UINT64 BufferStartOffsetInBytes, + D3D12_TILE_COPY_FLAGS Flags); + + DECLSPEC_XFGVIRT(ID3D12GraphicsCommandList, ResolveSubresource) + void ( STDMETHODCALLTYPE *ResolveSubresource )( + ID3D12GraphicsCommandList6 * This, + _In_ ID3D12Resource *pDstResource, + _In_ UINT DstSubresource, + _In_ ID3D12Resource *pSrcResource, + _In_ UINT SrcSubresource, + _In_ DXGI_FORMAT Format); + + DECLSPEC_XFGVIRT(ID3D12GraphicsCommandList, IASetPrimitiveTopology) + void ( STDMETHODCALLTYPE *IASetPrimitiveTopology )( + ID3D12GraphicsCommandList6 * This, + _In_ D3D12_PRIMITIVE_TOPOLOGY PrimitiveTopology); + + DECLSPEC_XFGVIRT(ID3D12GraphicsCommandList, RSSetViewports) + void ( STDMETHODCALLTYPE *RSSetViewports )( + ID3D12GraphicsCommandList6 * This, + _In_range_(0, D3D12_VIEWPORT_AND_SCISSORRECT_OBJECT_COUNT_PER_PIPELINE) UINT NumViewports, + _In_reads_( NumViewports) const D3D12_VIEWPORT *pViewports); + + DECLSPEC_XFGVIRT(ID3D12GraphicsCommandList, RSSetScissorRects) + void ( STDMETHODCALLTYPE *RSSetScissorRects )( + ID3D12GraphicsCommandList6 * This, + _In_range_(0, D3D12_VIEWPORT_AND_SCISSORRECT_OBJECT_COUNT_PER_PIPELINE) UINT NumRects, + _In_reads_( NumRects) const D3D12_RECT *pRects); + + DECLSPEC_XFGVIRT(ID3D12GraphicsCommandList, OMSetBlendFactor) + void ( STDMETHODCALLTYPE *OMSetBlendFactor )( + ID3D12GraphicsCommandList6 * This, + _In_reads_opt_(4) const FLOAT BlendFactor[ 4 ]); + + DECLSPEC_XFGVIRT(ID3D12GraphicsCommandList, OMSetStencilRef) + void ( STDMETHODCALLTYPE *OMSetStencilRef )( + ID3D12GraphicsCommandList6 * This, + _In_ UINT StencilRef); + + DECLSPEC_XFGVIRT(ID3D12GraphicsCommandList, SetPipelineState) + void ( STDMETHODCALLTYPE *SetPipelineState )( + ID3D12GraphicsCommandList6 * This, + _In_ ID3D12PipelineState *pPipelineState); + + DECLSPEC_XFGVIRT(ID3D12GraphicsCommandList, ResourceBarrier) + void ( STDMETHODCALLTYPE *ResourceBarrier )( + ID3D12GraphicsCommandList6 * This, + _In_ UINT NumBarriers, + _In_reads_(NumBarriers) const D3D12_RESOURCE_BARRIER *pBarriers); + + DECLSPEC_XFGVIRT(ID3D12GraphicsCommandList, ExecuteBundle) + void ( STDMETHODCALLTYPE *ExecuteBundle )( + ID3D12GraphicsCommandList6 * This, + _In_ ID3D12GraphicsCommandList *pCommandList); + + DECLSPEC_XFGVIRT(ID3D12GraphicsCommandList, SetDescriptorHeaps) + void ( STDMETHODCALLTYPE *SetDescriptorHeaps )( + ID3D12GraphicsCommandList6 * This, + _In_ UINT NumDescriptorHeaps, + _In_reads_(NumDescriptorHeaps) ID3D12DescriptorHeap *const *ppDescriptorHeaps); + + DECLSPEC_XFGVIRT(ID3D12GraphicsCommandList, SetComputeRootSignature) + void ( STDMETHODCALLTYPE *SetComputeRootSignature )( + ID3D12GraphicsCommandList6 * This, + _In_opt_ ID3D12RootSignature *pRootSignature); + + DECLSPEC_XFGVIRT(ID3D12GraphicsCommandList, SetGraphicsRootSignature) + void ( STDMETHODCALLTYPE *SetGraphicsRootSignature )( + ID3D12GraphicsCommandList6 * This, + _In_opt_ ID3D12RootSignature *pRootSignature); + + DECLSPEC_XFGVIRT(ID3D12GraphicsCommandList, SetComputeRootDescriptorTable) + void ( STDMETHODCALLTYPE *SetComputeRootDescriptorTable )( + ID3D12GraphicsCommandList6 * This, + _In_ UINT RootParameterIndex, + _In_ D3D12_GPU_DESCRIPTOR_HANDLE BaseDescriptor); + + DECLSPEC_XFGVIRT(ID3D12GraphicsCommandList, SetGraphicsRootDescriptorTable) + void ( STDMETHODCALLTYPE *SetGraphicsRootDescriptorTable )( + ID3D12GraphicsCommandList6 * This, + _In_ UINT RootParameterIndex, + _In_ D3D12_GPU_DESCRIPTOR_HANDLE BaseDescriptor); + + DECLSPEC_XFGVIRT(ID3D12GraphicsCommandList, SetComputeRoot32BitConstant) + void ( STDMETHODCALLTYPE *SetComputeRoot32BitConstant )( + ID3D12GraphicsCommandList6 * This, + _In_ UINT RootParameterIndex, + _In_ UINT SrcData, + _In_ UINT DestOffsetIn32BitValues); + + DECLSPEC_XFGVIRT(ID3D12GraphicsCommandList, SetGraphicsRoot32BitConstant) + void ( STDMETHODCALLTYPE *SetGraphicsRoot32BitConstant )( + ID3D12GraphicsCommandList6 * This, + _In_ UINT RootParameterIndex, + _In_ UINT SrcData, + _In_ UINT DestOffsetIn32BitValues); + + DECLSPEC_XFGVIRT(ID3D12GraphicsCommandList, SetComputeRoot32BitConstants) + void ( STDMETHODCALLTYPE *SetComputeRoot32BitConstants )( + ID3D12GraphicsCommandList6 * This, + _In_ UINT RootParameterIndex, + _In_ UINT Num32BitValuesToSet, + _In_reads_(Num32BitValuesToSet*sizeof(UINT)) const void *pSrcData, + _In_ UINT DestOffsetIn32BitValues); + + DECLSPEC_XFGVIRT(ID3D12GraphicsCommandList, SetGraphicsRoot32BitConstants) + void ( STDMETHODCALLTYPE *SetGraphicsRoot32BitConstants )( + ID3D12GraphicsCommandList6 * This, + _In_ UINT RootParameterIndex, + _In_ UINT Num32BitValuesToSet, + _In_reads_(Num32BitValuesToSet*sizeof(UINT)) const void *pSrcData, + _In_ UINT DestOffsetIn32BitValues); + + DECLSPEC_XFGVIRT(ID3D12GraphicsCommandList, SetComputeRootConstantBufferView) + void ( STDMETHODCALLTYPE *SetComputeRootConstantBufferView )( + ID3D12GraphicsCommandList6 * This, + _In_ UINT RootParameterIndex, + _In_ D3D12_GPU_VIRTUAL_ADDRESS BufferLocation); + + DECLSPEC_XFGVIRT(ID3D12GraphicsCommandList, SetGraphicsRootConstantBufferView) + void ( STDMETHODCALLTYPE *SetGraphicsRootConstantBufferView )( + ID3D12GraphicsCommandList6 * This, + _In_ UINT RootParameterIndex, + _In_ D3D12_GPU_VIRTUAL_ADDRESS BufferLocation); + + DECLSPEC_XFGVIRT(ID3D12GraphicsCommandList, SetComputeRootShaderResourceView) + void ( STDMETHODCALLTYPE *SetComputeRootShaderResourceView )( + ID3D12GraphicsCommandList6 * This, + _In_ UINT RootParameterIndex, + _In_ D3D12_GPU_VIRTUAL_ADDRESS BufferLocation); + + DECLSPEC_XFGVIRT(ID3D12GraphicsCommandList, SetGraphicsRootShaderResourceView) + void ( STDMETHODCALLTYPE *SetGraphicsRootShaderResourceView )( + ID3D12GraphicsCommandList6 * This, + _In_ UINT RootParameterIndex, + _In_ D3D12_GPU_VIRTUAL_ADDRESS BufferLocation); + + DECLSPEC_XFGVIRT(ID3D12GraphicsCommandList, SetComputeRootUnorderedAccessView) + void ( STDMETHODCALLTYPE *SetComputeRootUnorderedAccessView )( + ID3D12GraphicsCommandList6 * This, + _In_ UINT RootParameterIndex, + _In_ D3D12_GPU_VIRTUAL_ADDRESS BufferLocation); + + DECLSPEC_XFGVIRT(ID3D12GraphicsCommandList, SetGraphicsRootUnorderedAccessView) + void ( STDMETHODCALLTYPE *SetGraphicsRootUnorderedAccessView )( + ID3D12GraphicsCommandList6 * This, + _In_ UINT RootParameterIndex, + _In_ D3D12_GPU_VIRTUAL_ADDRESS BufferLocation); + + DECLSPEC_XFGVIRT(ID3D12GraphicsCommandList, IASetIndexBuffer) + void ( STDMETHODCALLTYPE *IASetIndexBuffer )( + ID3D12GraphicsCommandList6 * This, + _In_opt_ const D3D12_INDEX_BUFFER_VIEW *pView); + + DECLSPEC_XFGVIRT(ID3D12GraphicsCommandList, IASetVertexBuffers) + void ( STDMETHODCALLTYPE *IASetVertexBuffers )( + ID3D12GraphicsCommandList6 * This, + _In_ UINT StartSlot, + _In_ UINT NumViews, + _In_reads_opt_(NumViews) const D3D12_VERTEX_BUFFER_VIEW *pViews); + + DECLSPEC_XFGVIRT(ID3D12GraphicsCommandList, SOSetTargets) + void ( STDMETHODCALLTYPE *SOSetTargets )( + ID3D12GraphicsCommandList6 * This, + _In_ UINT StartSlot, + _In_ UINT NumViews, + _In_reads_opt_(NumViews) const D3D12_STREAM_OUTPUT_BUFFER_VIEW *pViews); + + DECLSPEC_XFGVIRT(ID3D12GraphicsCommandList, OMSetRenderTargets) + void ( STDMETHODCALLTYPE *OMSetRenderTargets )( + ID3D12GraphicsCommandList6 * This, + _In_ UINT NumRenderTargetDescriptors, + _In_opt_ const D3D12_CPU_DESCRIPTOR_HANDLE *pRenderTargetDescriptors, + _In_ BOOL RTsSingleHandleToDescriptorRange, + _In_opt_ const D3D12_CPU_DESCRIPTOR_HANDLE *pDepthStencilDescriptor); + + DECLSPEC_XFGVIRT(ID3D12GraphicsCommandList, ClearDepthStencilView) + void ( STDMETHODCALLTYPE *ClearDepthStencilView )( + ID3D12GraphicsCommandList6 * This, + _In_ D3D12_CPU_DESCRIPTOR_HANDLE DepthStencilView, + _In_ D3D12_CLEAR_FLAGS ClearFlags, + _In_ FLOAT Depth, + _In_ UINT8 Stencil, + _In_ UINT NumRects, + _In_reads_(NumRects) const D3D12_RECT *pRects); + + DECLSPEC_XFGVIRT(ID3D12GraphicsCommandList, ClearRenderTargetView) + void ( STDMETHODCALLTYPE *ClearRenderTargetView )( + ID3D12GraphicsCommandList6 * This, + _In_ D3D12_CPU_DESCRIPTOR_HANDLE RenderTargetView, + _In_ const FLOAT ColorRGBA[ 4 ], + _In_ UINT NumRects, + _In_reads_(NumRects) const D3D12_RECT *pRects); + + DECLSPEC_XFGVIRT(ID3D12GraphicsCommandList, ClearUnorderedAccessViewUint) + void ( STDMETHODCALLTYPE *ClearUnorderedAccessViewUint )( + ID3D12GraphicsCommandList6 * This, + _In_ D3D12_GPU_DESCRIPTOR_HANDLE ViewGPUHandleInCurrentHeap, + _In_ D3D12_CPU_DESCRIPTOR_HANDLE ViewCPUHandle, + _In_ ID3D12Resource *pResource, + _In_ const UINT Values[ 4 ], + _In_ UINT NumRects, + _In_reads_(NumRects) const D3D12_RECT *pRects); + + DECLSPEC_XFGVIRT(ID3D12GraphicsCommandList, ClearUnorderedAccessViewFloat) + void ( STDMETHODCALLTYPE *ClearUnorderedAccessViewFloat )( + ID3D12GraphicsCommandList6 * This, + _In_ D3D12_GPU_DESCRIPTOR_HANDLE ViewGPUHandleInCurrentHeap, + _In_ D3D12_CPU_DESCRIPTOR_HANDLE ViewCPUHandle, + _In_ ID3D12Resource *pResource, + _In_ const FLOAT Values[ 4 ], + _In_ UINT NumRects, + _In_reads_(NumRects) const D3D12_RECT *pRects); + + DECLSPEC_XFGVIRT(ID3D12GraphicsCommandList, DiscardResource) + void ( STDMETHODCALLTYPE *DiscardResource )( + ID3D12GraphicsCommandList6 * This, + _In_ ID3D12Resource *pResource, + _In_opt_ const D3D12_DISCARD_REGION *pRegion); + + DECLSPEC_XFGVIRT(ID3D12GraphicsCommandList, BeginQuery) + void ( STDMETHODCALLTYPE *BeginQuery )( + ID3D12GraphicsCommandList6 * This, + _In_ ID3D12QueryHeap *pQueryHeap, + _In_ D3D12_QUERY_TYPE Type, + _In_ UINT Index); + + DECLSPEC_XFGVIRT(ID3D12GraphicsCommandList, EndQuery) + void ( STDMETHODCALLTYPE *EndQuery )( + ID3D12GraphicsCommandList6 * This, + _In_ ID3D12QueryHeap *pQueryHeap, + _In_ D3D12_QUERY_TYPE Type, + _In_ UINT Index); + + DECLSPEC_XFGVIRT(ID3D12GraphicsCommandList, ResolveQueryData) + void ( STDMETHODCALLTYPE *ResolveQueryData )( + ID3D12GraphicsCommandList6 * This, + _In_ ID3D12QueryHeap *pQueryHeap, + _In_ D3D12_QUERY_TYPE Type, + _In_ UINT StartIndex, + _In_ UINT NumQueries, + _In_ ID3D12Resource *pDestinationBuffer, + _In_ UINT64 AlignedDestinationBufferOffset); + + DECLSPEC_XFGVIRT(ID3D12GraphicsCommandList, SetPredication) + void ( STDMETHODCALLTYPE *SetPredication )( + ID3D12GraphicsCommandList6 * This, + _In_opt_ ID3D12Resource *pBuffer, + _In_ UINT64 AlignedBufferOffset, + _In_ D3D12_PREDICATION_OP Operation); + + DECLSPEC_XFGVIRT(ID3D12GraphicsCommandList, SetMarker) + void ( STDMETHODCALLTYPE *SetMarker )( + ID3D12GraphicsCommandList6 * This, + UINT Metadata, + _In_reads_bytes_opt_(Size) const void *pData, + UINT Size); + + DECLSPEC_XFGVIRT(ID3D12GraphicsCommandList, BeginEvent) + void ( STDMETHODCALLTYPE *BeginEvent )( + ID3D12GraphicsCommandList6 * This, + UINT Metadata, + _In_reads_bytes_opt_(Size) const void *pData, + UINT Size); + + DECLSPEC_XFGVIRT(ID3D12GraphicsCommandList, EndEvent) + void ( STDMETHODCALLTYPE *EndEvent )( + ID3D12GraphicsCommandList6 * This); + + DECLSPEC_XFGVIRT(ID3D12GraphicsCommandList, ExecuteIndirect) + void ( STDMETHODCALLTYPE *ExecuteIndirect )( + ID3D12GraphicsCommandList6 * This, + _In_ ID3D12CommandSignature *pCommandSignature, + _In_ UINT MaxCommandCount, + _In_ ID3D12Resource *pArgumentBuffer, + _In_ UINT64 ArgumentBufferOffset, + _In_opt_ ID3D12Resource *pCountBuffer, + _In_ UINT64 CountBufferOffset); + + DECLSPEC_XFGVIRT(ID3D12GraphicsCommandList1, AtomicCopyBufferUINT) + void ( STDMETHODCALLTYPE *AtomicCopyBufferUINT )( + ID3D12GraphicsCommandList6 * This, + _In_ ID3D12Resource *pDstBuffer, + UINT64 DstOffset, + _In_ ID3D12Resource *pSrcBuffer, + UINT64 SrcOffset, + UINT Dependencies, + _In_reads_(Dependencies) ID3D12Resource *const *ppDependentResources, + _In_reads_(Dependencies) const D3D12_SUBRESOURCE_RANGE_UINT64 *pDependentSubresourceRanges); + + DECLSPEC_XFGVIRT(ID3D12GraphicsCommandList1, AtomicCopyBufferUINT64) + void ( STDMETHODCALLTYPE *AtomicCopyBufferUINT64 )( + ID3D12GraphicsCommandList6 * This, + _In_ ID3D12Resource *pDstBuffer, + UINT64 DstOffset, + _In_ ID3D12Resource *pSrcBuffer, + UINT64 SrcOffset, + UINT Dependencies, + _In_reads_(Dependencies) ID3D12Resource *const *ppDependentResources, + _In_reads_(Dependencies) const D3D12_SUBRESOURCE_RANGE_UINT64 *pDependentSubresourceRanges); + + DECLSPEC_XFGVIRT(ID3D12GraphicsCommandList1, OMSetDepthBounds) + void ( STDMETHODCALLTYPE *OMSetDepthBounds )( + ID3D12GraphicsCommandList6 * This, + _In_ FLOAT Min, + _In_ FLOAT Max); + + DECLSPEC_XFGVIRT(ID3D12GraphicsCommandList1, SetSamplePositions) + void ( STDMETHODCALLTYPE *SetSamplePositions )( + ID3D12GraphicsCommandList6 * This, + _In_ UINT NumSamplesPerPixel, + _In_ UINT NumPixels, + _In_reads_(NumSamplesPerPixel*NumPixels) D3D12_SAMPLE_POSITION *pSamplePositions); + + DECLSPEC_XFGVIRT(ID3D12GraphicsCommandList1, ResolveSubresourceRegion) + void ( STDMETHODCALLTYPE *ResolveSubresourceRegion )( + ID3D12GraphicsCommandList6 * This, + _In_ ID3D12Resource *pDstResource, + _In_ UINT DstSubresource, + _In_ UINT DstX, + _In_ UINT DstY, + _In_ ID3D12Resource *pSrcResource, + _In_ UINT SrcSubresource, + _In_opt_ D3D12_RECT *pSrcRect, + _In_ DXGI_FORMAT Format, + _In_ D3D12_RESOLVE_MODE ResolveMode); + + DECLSPEC_XFGVIRT(ID3D12GraphicsCommandList1, SetViewInstanceMask) + void ( STDMETHODCALLTYPE *SetViewInstanceMask )( + ID3D12GraphicsCommandList6 * This, + _In_ UINT Mask); + + DECLSPEC_XFGVIRT(ID3D12GraphicsCommandList2, WriteBufferImmediate) + void ( STDMETHODCALLTYPE *WriteBufferImmediate )( + ID3D12GraphicsCommandList6 * This, + UINT Count, + _In_reads_(Count) const D3D12_WRITEBUFFERIMMEDIATE_PARAMETER *pParams, + _In_reads_opt_(Count) const D3D12_WRITEBUFFERIMMEDIATE_MODE *pModes); + + DECLSPEC_XFGVIRT(ID3D12GraphicsCommandList3, SetProtectedResourceSession) + void ( STDMETHODCALLTYPE *SetProtectedResourceSession )( + ID3D12GraphicsCommandList6 * This, + _In_opt_ ID3D12ProtectedResourceSession *pProtectedResourceSession); + + DECLSPEC_XFGVIRT(ID3D12GraphicsCommandList4, BeginRenderPass) + void ( STDMETHODCALLTYPE *BeginRenderPass )( + ID3D12GraphicsCommandList6 * This, + _In_ UINT NumRenderTargets, + _In_reads_opt_(NumRenderTargets) const D3D12_RENDER_PASS_RENDER_TARGET_DESC *pRenderTargets, + _In_opt_ const D3D12_RENDER_PASS_DEPTH_STENCIL_DESC *pDepthStencil, + D3D12_RENDER_PASS_FLAGS Flags); + + DECLSPEC_XFGVIRT(ID3D12GraphicsCommandList4, EndRenderPass) + void ( STDMETHODCALLTYPE *EndRenderPass )( + ID3D12GraphicsCommandList6 * This); + + DECLSPEC_XFGVIRT(ID3D12GraphicsCommandList4, InitializeMetaCommand) + void ( STDMETHODCALLTYPE *InitializeMetaCommand )( + ID3D12GraphicsCommandList6 * This, + _In_ ID3D12MetaCommand *pMetaCommand, + _In_reads_bytes_opt_(InitializationParametersDataSizeInBytes) const void *pInitializationParametersData, + _In_ SIZE_T InitializationParametersDataSizeInBytes); + + DECLSPEC_XFGVIRT(ID3D12GraphicsCommandList4, ExecuteMetaCommand) + void ( STDMETHODCALLTYPE *ExecuteMetaCommand )( + ID3D12GraphicsCommandList6 * This, + _In_ ID3D12MetaCommand *pMetaCommand, + _In_reads_bytes_opt_(ExecutionParametersDataSizeInBytes) const void *pExecutionParametersData, + _In_ SIZE_T ExecutionParametersDataSizeInBytes); + + DECLSPEC_XFGVIRT(ID3D12GraphicsCommandList4, BuildRaytracingAccelerationStructure) + void ( STDMETHODCALLTYPE *BuildRaytracingAccelerationStructure )( + ID3D12GraphicsCommandList6 * This, + _In_ const D3D12_BUILD_RAYTRACING_ACCELERATION_STRUCTURE_DESC *pDesc, + _In_ UINT NumPostbuildInfoDescs, + _In_reads_opt_(NumPostbuildInfoDescs) const D3D12_RAYTRACING_ACCELERATION_STRUCTURE_POSTBUILD_INFO_DESC *pPostbuildInfoDescs); + + DECLSPEC_XFGVIRT(ID3D12GraphicsCommandList4, EmitRaytracingAccelerationStructurePostbuildInfo) + void ( STDMETHODCALLTYPE *EmitRaytracingAccelerationStructurePostbuildInfo )( + ID3D12GraphicsCommandList6 * This, + _In_ const D3D12_RAYTRACING_ACCELERATION_STRUCTURE_POSTBUILD_INFO_DESC *pDesc, + _In_ UINT NumSourceAccelerationStructures, + _In_reads_( NumSourceAccelerationStructures ) const D3D12_GPU_VIRTUAL_ADDRESS *pSourceAccelerationStructureData); + + DECLSPEC_XFGVIRT(ID3D12GraphicsCommandList4, CopyRaytracingAccelerationStructure) + void ( STDMETHODCALLTYPE *CopyRaytracingAccelerationStructure )( + ID3D12GraphicsCommandList6 * This, + _In_ D3D12_GPU_VIRTUAL_ADDRESS DestAccelerationStructureData, + _In_ D3D12_GPU_VIRTUAL_ADDRESS SourceAccelerationStructureData, + _In_ D3D12_RAYTRACING_ACCELERATION_STRUCTURE_COPY_MODE Mode); + + DECLSPEC_XFGVIRT(ID3D12GraphicsCommandList4, SetPipelineState1) + void ( STDMETHODCALLTYPE *SetPipelineState1 )( + ID3D12GraphicsCommandList6 * This, + _In_ ID3D12StateObject *pStateObject); + + DECLSPEC_XFGVIRT(ID3D12GraphicsCommandList4, DispatchRays) + void ( STDMETHODCALLTYPE *DispatchRays )( + ID3D12GraphicsCommandList6 * This, + _In_ const D3D12_DISPATCH_RAYS_DESC *pDesc); + + DECLSPEC_XFGVIRT(ID3D12GraphicsCommandList5, RSSetShadingRate) + void ( STDMETHODCALLTYPE *RSSetShadingRate )( + ID3D12GraphicsCommandList6 * This, + _In_ D3D12_SHADING_RATE baseShadingRate, + _In_reads_opt_(D3D12_RS_SET_SHADING_RATE_COMBINER_COUNT) const D3D12_SHADING_RATE_COMBINER *combiners); + + DECLSPEC_XFGVIRT(ID3D12GraphicsCommandList5, RSSetShadingRateImage) + void ( STDMETHODCALLTYPE *RSSetShadingRateImage )( + ID3D12GraphicsCommandList6 * This, + _In_opt_ ID3D12Resource *shadingRateImage); + + DECLSPEC_XFGVIRT(ID3D12GraphicsCommandList6, DispatchMesh) + void ( STDMETHODCALLTYPE *DispatchMesh )( + ID3D12GraphicsCommandList6 * This, + _In_ UINT ThreadGroupCountX, + _In_ UINT ThreadGroupCountY, + _In_ UINT ThreadGroupCountZ); + + END_INTERFACE + } ID3D12GraphicsCommandList6Vtbl; + + interface ID3D12GraphicsCommandList6 + { + CONST_VTBL struct ID3D12GraphicsCommandList6Vtbl *lpVtbl; + }; + + + +#ifdef COBJMACROS + + +#define ID3D12GraphicsCommandList6_QueryInterface(This,riid,ppvObject) \ + ( (This)->lpVtbl -> QueryInterface(This,riid,ppvObject) ) + +#define ID3D12GraphicsCommandList6_AddRef(This) \ + ( (This)->lpVtbl -> AddRef(This) ) + +#define ID3D12GraphicsCommandList6_Release(This) \ + ( (This)->lpVtbl -> Release(This) ) + + +#define ID3D12GraphicsCommandList6_GetPrivateData(This,guid,pDataSize,pData) \ + ( (This)->lpVtbl -> GetPrivateData(This,guid,pDataSize,pData) ) + +#define ID3D12GraphicsCommandList6_SetPrivateData(This,guid,DataSize,pData) \ + ( (This)->lpVtbl -> SetPrivateData(This,guid,DataSize,pData) ) + +#define ID3D12GraphicsCommandList6_SetPrivateDataInterface(This,guid,pData) \ + ( (This)->lpVtbl -> SetPrivateDataInterface(This,guid,pData) ) + +#define ID3D12GraphicsCommandList6_SetName(This,Name) \ + ( (This)->lpVtbl -> SetName(This,Name) ) + + +#define ID3D12GraphicsCommandList6_GetDevice(This,riid,ppvDevice) \ + ( (This)->lpVtbl -> GetDevice(This,riid,ppvDevice) ) + + +#define ID3D12GraphicsCommandList6_GetType(This) \ + ( (This)->lpVtbl -> GetType(This) ) + + +#define ID3D12GraphicsCommandList6_Close(This) \ + ( (This)->lpVtbl -> Close(This) ) + +#define ID3D12GraphicsCommandList6_Reset(This,pAllocator,pInitialState) \ + ( (This)->lpVtbl -> Reset(This,pAllocator,pInitialState) ) + +#define ID3D12GraphicsCommandList6_ClearState(This,pPipelineState) \ + ( (This)->lpVtbl -> ClearState(This,pPipelineState) ) + +#define ID3D12GraphicsCommandList6_DrawInstanced(This,VertexCountPerInstance,InstanceCount,StartVertexLocation,StartInstanceLocation) \ + ( (This)->lpVtbl -> DrawInstanced(This,VertexCountPerInstance,InstanceCount,StartVertexLocation,StartInstanceLocation) ) + +#define ID3D12GraphicsCommandList6_DrawIndexedInstanced(This,IndexCountPerInstance,InstanceCount,StartIndexLocation,BaseVertexLocation,StartInstanceLocation) \ + ( (This)->lpVtbl -> DrawIndexedInstanced(This,IndexCountPerInstance,InstanceCount,StartIndexLocation,BaseVertexLocation,StartInstanceLocation) ) + +#define ID3D12GraphicsCommandList6_Dispatch(This,ThreadGroupCountX,ThreadGroupCountY,ThreadGroupCountZ) \ + ( (This)->lpVtbl -> Dispatch(This,ThreadGroupCountX,ThreadGroupCountY,ThreadGroupCountZ) ) + +#define ID3D12GraphicsCommandList6_CopyBufferRegion(This,pDstBuffer,DstOffset,pSrcBuffer,SrcOffset,NumBytes) \ + ( (This)->lpVtbl -> CopyBufferRegion(This,pDstBuffer,DstOffset,pSrcBuffer,SrcOffset,NumBytes) ) + +#define ID3D12GraphicsCommandList6_CopyTextureRegion(This,pDst,DstX,DstY,DstZ,pSrc,pSrcBox) \ + ( (This)->lpVtbl -> CopyTextureRegion(This,pDst,DstX,DstY,DstZ,pSrc,pSrcBox) ) + +#define ID3D12GraphicsCommandList6_CopyResource(This,pDstResource,pSrcResource) \ + ( (This)->lpVtbl -> CopyResource(This,pDstResource,pSrcResource) ) + +#define ID3D12GraphicsCommandList6_CopyTiles(This,pTiledResource,pTileRegionStartCoordinate,pTileRegionSize,pBuffer,BufferStartOffsetInBytes,Flags) \ + ( (This)->lpVtbl -> CopyTiles(This,pTiledResource,pTileRegionStartCoordinate,pTileRegionSize,pBuffer,BufferStartOffsetInBytes,Flags) ) + +#define ID3D12GraphicsCommandList6_ResolveSubresource(This,pDstResource,DstSubresource,pSrcResource,SrcSubresource,Format) \ + ( (This)->lpVtbl -> ResolveSubresource(This,pDstResource,DstSubresource,pSrcResource,SrcSubresource,Format) ) + +#define ID3D12GraphicsCommandList6_IASetPrimitiveTopology(This,PrimitiveTopology) \ + ( (This)->lpVtbl -> IASetPrimitiveTopology(This,PrimitiveTopology) ) + +#define ID3D12GraphicsCommandList6_RSSetViewports(This,NumViewports,pViewports) \ + ( (This)->lpVtbl -> RSSetViewports(This,NumViewports,pViewports) ) + +#define ID3D12GraphicsCommandList6_RSSetScissorRects(This,NumRects,pRects) \ + ( (This)->lpVtbl -> RSSetScissorRects(This,NumRects,pRects) ) + +#define ID3D12GraphicsCommandList6_OMSetBlendFactor(This,BlendFactor) \ + ( (This)->lpVtbl -> OMSetBlendFactor(This,BlendFactor) ) + +#define ID3D12GraphicsCommandList6_OMSetStencilRef(This,StencilRef) \ + ( (This)->lpVtbl -> OMSetStencilRef(This,StencilRef) ) + +#define ID3D12GraphicsCommandList6_SetPipelineState(This,pPipelineState) \ + ( (This)->lpVtbl -> SetPipelineState(This,pPipelineState) ) + +#define ID3D12GraphicsCommandList6_ResourceBarrier(This,NumBarriers,pBarriers) \ + ( (This)->lpVtbl -> ResourceBarrier(This,NumBarriers,pBarriers) ) + +#define ID3D12GraphicsCommandList6_ExecuteBundle(This,pCommandList) \ + ( (This)->lpVtbl -> ExecuteBundle(This,pCommandList) ) + +#define ID3D12GraphicsCommandList6_SetDescriptorHeaps(This,NumDescriptorHeaps,ppDescriptorHeaps) \ + ( (This)->lpVtbl -> SetDescriptorHeaps(This,NumDescriptorHeaps,ppDescriptorHeaps) ) + +#define ID3D12GraphicsCommandList6_SetComputeRootSignature(This,pRootSignature) \ + ( (This)->lpVtbl -> SetComputeRootSignature(This,pRootSignature) ) + +#define ID3D12GraphicsCommandList6_SetGraphicsRootSignature(This,pRootSignature) \ + ( (This)->lpVtbl -> SetGraphicsRootSignature(This,pRootSignature) ) + +#define ID3D12GraphicsCommandList6_SetComputeRootDescriptorTable(This,RootParameterIndex,BaseDescriptor) \ + ( (This)->lpVtbl -> SetComputeRootDescriptorTable(This,RootParameterIndex,BaseDescriptor) ) + +#define ID3D12GraphicsCommandList6_SetGraphicsRootDescriptorTable(This,RootParameterIndex,BaseDescriptor) \ + ( (This)->lpVtbl -> SetGraphicsRootDescriptorTable(This,RootParameterIndex,BaseDescriptor) ) + +#define ID3D12GraphicsCommandList6_SetComputeRoot32BitConstant(This,RootParameterIndex,SrcData,DestOffsetIn32BitValues) \ + ( (This)->lpVtbl -> SetComputeRoot32BitConstant(This,RootParameterIndex,SrcData,DestOffsetIn32BitValues) ) + +#define ID3D12GraphicsCommandList6_SetGraphicsRoot32BitConstant(This,RootParameterIndex,SrcData,DestOffsetIn32BitValues) \ + ( (This)->lpVtbl -> SetGraphicsRoot32BitConstant(This,RootParameterIndex,SrcData,DestOffsetIn32BitValues) ) + +#define ID3D12GraphicsCommandList6_SetComputeRoot32BitConstants(This,RootParameterIndex,Num32BitValuesToSet,pSrcData,DestOffsetIn32BitValues) \ + ( (This)->lpVtbl -> SetComputeRoot32BitConstants(This,RootParameterIndex,Num32BitValuesToSet,pSrcData,DestOffsetIn32BitValues) ) + +#define ID3D12GraphicsCommandList6_SetGraphicsRoot32BitConstants(This,RootParameterIndex,Num32BitValuesToSet,pSrcData,DestOffsetIn32BitValues) \ + ( (This)->lpVtbl -> SetGraphicsRoot32BitConstants(This,RootParameterIndex,Num32BitValuesToSet,pSrcData,DestOffsetIn32BitValues) ) + +#define ID3D12GraphicsCommandList6_SetComputeRootConstantBufferView(This,RootParameterIndex,BufferLocation) \ + ( (This)->lpVtbl -> SetComputeRootConstantBufferView(This,RootParameterIndex,BufferLocation) ) + +#define ID3D12GraphicsCommandList6_SetGraphicsRootConstantBufferView(This,RootParameterIndex,BufferLocation) \ + ( (This)->lpVtbl -> SetGraphicsRootConstantBufferView(This,RootParameterIndex,BufferLocation) ) + +#define ID3D12GraphicsCommandList6_SetComputeRootShaderResourceView(This,RootParameterIndex,BufferLocation) \ + ( (This)->lpVtbl -> SetComputeRootShaderResourceView(This,RootParameterIndex,BufferLocation) ) + +#define ID3D12GraphicsCommandList6_SetGraphicsRootShaderResourceView(This,RootParameterIndex,BufferLocation) \ + ( (This)->lpVtbl -> SetGraphicsRootShaderResourceView(This,RootParameterIndex,BufferLocation) ) + +#define ID3D12GraphicsCommandList6_SetComputeRootUnorderedAccessView(This,RootParameterIndex,BufferLocation) \ + ( (This)->lpVtbl -> SetComputeRootUnorderedAccessView(This,RootParameterIndex,BufferLocation) ) + +#define ID3D12GraphicsCommandList6_SetGraphicsRootUnorderedAccessView(This,RootParameterIndex,BufferLocation) \ + ( (This)->lpVtbl -> SetGraphicsRootUnorderedAccessView(This,RootParameterIndex,BufferLocation) ) + +#define ID3D12GraphicsCommandList6_IASetIndexBuffer(This,pView) \ + ( (This)->lpVtbl -> IASetIndexBuffer(This,pView) ) + +#define ID3D12GraphicsCommandList6_IASetVertexBuffers(This,StartSlot,NumViews,pViews) \ + ( (This)->lpVtbl -> IASetVertexBuffers(This,StartSlot,NumViews,pViews) ) + +#define ID3D12GraphicsCommandList6_SOSetTargets(This,StartSlot,NumViews,pViews) \ + ( (This)->lpVtbl -> SOSetTargets(This,StartSlot,NumViews,pViews) ) + +#define ID3D12GraphicsCommandList6_OMSetRenderTargets(This,NumRenderTargetDescriptors,pRenderTargetDescriptors,RTsSingleHandleToDescriptorRange,pDepthStencilDescriptor) \ + ( (This)->lpVtbl -> OMSetRenderTargets(This,NumRenderTargetDescriptors,pRenderTargetDescriptors,RTsSingleHandleToDescriptorRange,pDepthStencilDescriptor) ) + +#define ID3D12GraphicsCommandList6_ClearDepthStencilView(This,DepthStencilView,ClearFlags,Depth,Stencil,NumRects,pRects) \ + ( (This)->lpVtbl -> ClearDepthStencilView(This,DepthStencilView,ClearFlags,Depth,Stencil,NumRects,pRects) ) + +#define ID3D12GraphicsCommandList6_ClearRenderTargetView(This,RenderTargetView,ColorRGBA,NumRects,pRects) \ + ( (This)->lpVtbl -> ClearRenderTargetView(This,RenderTargetView,ColorRGBA,NumRects,pRects) ) + +#define ID3D12GraphicsCommandList6_ClearUnorderedAccessViewUint(This,ViewGPUHandleInCurrentHeap,ViewCPUHandle,pResource,Values,NumRects,pRects) \ + ( (This)->lpVtbl -> ClearUnorderedAccessViewUint(This,ViewGPUHandleInCurrentHeap,ViewCPUHandle,pResource,Values,NumRects,pRects) ) + +#define ID3D12GraphicsCommandList6_ClearUnorderedAccessViewFloat(This,ViewGPUHandleInCurrentHeap,ViewCPUHandle,pResource,Values,NumRects,pRects) \ + ( (This)->lpVtbl -> ClearUnorderedAccessViewFloat(This,ViewGPUHandleInCurrentHeap,ViewCPUHandle,pResource,Values,NumRects,pRects) ) + +#define ID3D12GraphicsCommandList6_DiscardResource(This,pResource,pRegion) \ + ( (This)->lpVtbl -> DiscardResource(This,pResource,pRegion) ) + +#define ID3D12GraphicsCommandList6_BeginQuery(This,pQueryHeap,Type,Index) \ + ( (This)->lpVtbl -> BeginQuery(This,pQueryHeap,Type,Index) ) + +#define ID3D12GraphicsCommandList6_EndQuery(This,pQueryHeap,Type,Index) \ + ( (This)->lpVtbl -> EndQuery(This,pQueryHeap,Type,Index) ) + +#define ID3D12GraphicsCommandList6_ResolveQueryData(This,pQueryHeap,Type,StartIndex,NumQueries,pDestinationBuffer,AlignedDestinationBufferOffset) \ + ( (This)->lpVtbl -> ResolveQueryData(This,pQueryHeap,Type,StartIndex,NumQueries,pDestinationBuffer,AlignedDestinationBufferOffset) ) + +#define ID3D12GraphicsCommandList6_SetPredication(This,pBuffer,AlignedBufferOffset,Operation) \ + ( (This)->lpVtbl -> SetPredication(This,pBuffer,AlignedBufferOffset,Operation) ) + +#define ID3D12GraphicsCommandList6_SetMarker(This,Metadata,pData,Size) \ + ( (This)->lpVtbl -> SetMarker(This,Metadata,pData,Size) ) + +#define ID3D12GraphicsCommandList6_BeginEvent(This,Metadata,pData,Size) \ + ( (This)->lpVtbl -> BeginEvent(This,Metadata,pData,Size) ) + +#define ID3D12GraphicsCommandList6_EndEvent(This) \ + ( (This)->lpVtbl -> EndEvent(This) ) + +#define ID3D12GraphicsCommandList6_ExecuteIndirect(This,pCommandSignature,MaxCommandCount,pArgumentBuffer,ArgumentBufferOffset,pCountBuffer,CountBufferOffset) \ + ( (This)->lpVtbl -> ExecuteIndirect(This,pCommandSignature,MaxCommandCount,pArgumentBuffer,ArgumentBufferOffset,pCountBuffer,CountBufferOffset) ) + + +#define ID3D12GraphicsCommandList6_AtomicCopyBufferUINT(This,pDstBuffer,DstOffset,pSrcBuffer,SrcOffset,Dependencies,ppDependentResources,pDependentSubresourceRanges) \ + ( (This)->lpVtbl -> AtomicCopyBufferUINT(This,pDstBuffer,DstOffset,pSrcBuffer,SrcOffset,Dependencies,ppDependentResources,pDependentSubresourceRanges) ) + +#define ID3D12GraphicsCommandList6_AtomicCopyBufferUINT64(This,pDstBuffer,DstOffset,pSrcBuffer,SrcOffset,Dependencies,ppDependentResources,pDependentSubresourceRanges) \ + ( (This)->lpVtbl -> AtomicCopyBufferUINT64(This,pDstBuffer,DstOffset,pSrcBuffer,SrcOffset,Dependencies,ppDependentResources,pDependentSubresourceRanges) ) + +#define ID3D12GraphicsCommandList6_OMSetDepthBounds(This,Min,Max) \ + ( (This)->lpVtbl -> OMSetDepthBounds(This,Min,Max) ) + +#define ID3D12GraphicsCommandList6_SetSamplePositions(This,NumSamplesPerPixel,NumPixels,pSamplePositions) \ + ( (This)->lpVtbl -> SetSamplePositions(This,NumSamplesPerPixel,NumPixels,pSamplePositions) ) + +#define ID3D12GraphicsCommandList6_ResolveSubresourceRegion(This,pDstResource,DstSubresource,DstX,DstY,pSrcResource,SrcSubresource,pSrcRect,Format,ResolveMode) \ + ( (This)->lpVtbl -> ResolveSubresourceRegion(This,pDstResource,DstSubresource,DstX,DstY,pSrcResource,SrcSubresource,pSrcRect,Format,ResolveMode) ) + +#define ID3D12GraphicsCommandList6_SetViewInstanceMask(This,Mask) \ + ( (This)->lpVtbl -> SetViewInstanceMask(This,Mask) ) + + +#define ID3D12GraphicsCommandList6_WriteBufferImmediate(This,Count,pParams,pModes) \ + ( (This)->lpVtbl -> WriteBufferImmediate(This,Count,pParams,pModes) ) + + +#define ID3D12GraphicsCommandList6_SetProtectedResourceSession(This,pProtectedResourceSession) \ + ( (This)->lpVtbl -> SetProtectedResourceSession(This,pProtectedResourceSession) ) + + +#define ID3D12GraphicsCommandList6_BeginRenderPass(This,NumRenderTargets,pRenderTargets,pDepthStencil,Flags) \ + ( (This)->lpVtbl -> BeginRenderPass(This,NumRenderTargets,pRenderTargets,pDepthStencil,Flags) ) + +#define ID3D12GraphicsCommandList6_EndRenderPass(This) \ + ( (This)->lpVtbl -> EndRenderPass(This) ) + +#define ID3D12GraphicsCommandList6_InitializeMetaCommand(This,pMetaCommand,pInitializationParametersData,InitializationParametersDataSizeInBytes) \ + ( (This)->lpVtbl -> InitializeMetaCommand(This,pMetaCommand,pInitializationParametersData,InitializationParametersDataSizeInBytes) ) + +#define ID3D12GraphicsCommandList6_ExecuteMetaCommand(This,pMetaCommand,pExecutionParametersData,ExecutionParametersDataSizeInBytes) \ + ( (This)->lpVtbl -> ExecuteMetaCommand(This,pMetaCommand,pExecutionParametersData,ExecutionParametersDataSizeInBytes) ) + +#define ID3D12GraphicsCommandList6_BuildRaytracingAccelerationStructure(This,pDesc,NumPostbuildInfoDescs,pPostbuildInfoDescs) \ + ( (This)->lpVtbl -> BuildRaytracingAccelerationStructure(This,pDesc,NumPostbuildInfoDescs,pPostbuildInfoDescs) ) + +#define ID3D12GraphicsCommandList6_EmitRaytracingAccelerationStructurePostbuildInfo(This,pDesc,NumSourceAccelerationStructures,pSourceAccelerationStructureData) \ + ( (This)->lpVtbl -> EmitRaytracingAccelerationStructurePostbuildInfo(This,pDesc,NumSourceAccelerationStructures,pSourceAccelerationStructureData) ) + +#define ID3D12GraphicsCommandList6_CopyRaytracingAccelerationStructure(This,DestAccelerationStructureData,SourceAccelerationStructureData,Mode) \ + ( (This)->lpVtbl -> CopyRaytracingAccelerationStructure(This,DestAccelerationStructureData,SourceAccelerationStructureData,Mode) ) + +#define ID3D12GraphicsCommandList6_SetPipelineState1(This,pStateObject) \ + ( (This)->lpVtbl -> SetPipelineState1(This,pStateObject) ) + +#define ID3D12GraphicsCommandList6_DispatchRays(This,pDesc) \ + ( (This)->lpVtbl -> DispatchRays(This,pDesc) ) + + +#define ID3D12GraphicsCommandList6_RSSetShadingRate(This,baseShadingRate,combiners) \ + ( (This)->lpVtbl -> RSSetShadingRate(This,baseShadingRate,combiners) ) + +#define ID3D12GraphicsCommandList6_RSSetShadingRateImage(This,shadingRateImage) \ + ( (This)->lpVtbl -> RSSetShadingRateImage(This,shadingRateImage) ) + + +#define ID3D12GraphicsCommandList6_DispatchMesh(This,ThreadGroupCountX,ThreadGroupCountY,ThreadGroupCountZ) \ + ( (This)->lpVtbl -> DispatchMesh(This,ThreadGroupCountX,ThreadGroupCountY,ThreadGroupCountZ) ) + +#endif /* COBJMACROS */ + + +#endif /* C style interface */ + + + + +#endif /* __ID3D12GraphicsCommandList6_INTERFACE_DEFINED__ */ + + +#ifndef __ID3D12GraphicsCommandList7_INTERFACE_DEFINED__ +#define __ID3D12GraphicsCommandList7_INTERFACE_DEFINED__ + +/* interface ID3D12GraphicsCommandList7 */ +/* [unique][local][object][uuid] */ + + +EXTERN_C const IID IID_ID3D12GraphicsCommandList7; + +#if defined(__cplusplus) && !defined(CINTERFACE) + + MIDL_INTERFACE("dd171223-8b61-4769-90e3-160ccde4e2c1") + ID3D12GraphicsCommandList7 : public ID3D12GraphicsCommandList6 + { + public: + virtual void STDMETHODCALLTYPE Barrier( + UINT32 NumBarrierGroups, + _In_reads_(NumBarrierGroups) const D3D12_BARRIER_GROUP *pBarrierGroups) = 0; + + }; + + +#else /* C style interface */ + + typedef struct ID3D12GraphicsCommandList7Vtbl + { + BEGIN_INTERFACE + + DECLSPEC_XFGVIRT(IUnknown, QueryInterface) + HRESULT ( STDMETHODCALLTYPE *QueryInterface )( + ID3D12GraphicsCommandList7 * This, + REFIID riid, + _COM_Outptr_ void **ppvObject); + + DECLSPEC_XFGVIRT(IUnknown, AddRef) + ULONG ( STDMETHODCALLTYPE *AddRef )( + ID3D12GraphicsCommandList7 * This); + + DECLSPEC_XFGVIRT(IUnknown, Release) + ULONG ( STDMETHODCALLTYPE *Release )( + ID3D12GraphicsCommandList7 * This); + + DECLSPEC_XFGVIRT(ID3D12Object, GetPrivateData) + HRESULT ( STDMETHODCALLTYPE *GetPrivateData )( + ID3D12GraphicsCommandList7 * This, + _In_ REFGUID guid, + _Inout_ UINT *pDataSize, + _Out_writes_bytes_opt_( *pDataSize ) void *pData); + + DECLSPEC_XFGVIRT(ID3D12Object, SetPrivateData) + HRESULT ( STDMETHODCALLTYPE *SetPrivateData )( + ID3D12GraphicsCommandList7 * This, + _In_ REFGUID guid, + _In_ UINT DataSize, + _In_reads_bytes_opt_( DataSize ) const void *pData); + + DECLSPEC_XFGVIRT(ID3D12Object, SetPrivateDataInterface) + HRESULT ( STDMETHODCALLTYPE *SetPrivateDataInterface )( + ID3D12GraphicsCommandList7 * This, + _In_ REFGUID guid, + _In_opt_ const IUnknown *pData); + + DECLSPEC_XFGVIRT(ID3D12Object, SetName) + HRESULT ( STDMETHODCALLTYPE *SetName )( + ID3D12GraphicsCommandList7 * This, + _In_z_ LPCWSTR Name); + + DECLSPEC_XFGVIRT(ID3D12DeviceChild, GetDevice) + HRESULT ( STDMETHODCALLTYPE *GetDevice )( + ID3D12GraphicsCommandList7 * This, + REFIID riid, + _COM_Outptr_opt_ void **ppvDevice); + + DECLSPEC_XFGVIRT(ID3D12CommandList, GetType) + D3D12_COMMAND_LIST_TYPE ( STDMETHODCALLTYPE *GetType )( + ID3D12GraphicsCommandList7 * This); + + DECLSPEC_XFGVIRT(ID3D12GraphicsCommandList, Close) + HRESULT ( STDMETHODCALLTYPE *Close )( + ID3D12GraphicsCommandList7 * This); + + DECLSPEC_XFGVIRT(ID3D12GraphicsCommandList, Reset) + HRESULT ( STDMETHODCALLTYPE *Reset )( + ID3D12GraphicsCommandList7 * This, + _In_ ID3D12CommandAllocator *pAllocator, + _In_opt_ ID3D12PipelineState *pInitialState); + + DECLSPEC_XFGVIRT(ID3D12GraphicsCommandList, ClearState) + void ( STDMETHODCALLTYPE *ClearState )( + ID3D12GraphicsCommandList7 * This, + _In_opt_ ID3D12PipelineState *pPipelineState); + + DECLSPEC_XFGVIRT(ID3D12GraphicsCommandList, DrawInstanced) + void ( STDMETHODCALLTYPE *DrawInstanced )( + ID3D12GraphicsCommandList7 * This, + _In_ UINT VertexCountPerInstance, + _In_ UINT InstanceCount, + _In_ UINT StartVertexLocation, + _In_ UINT StartInstanceLocation); + + DECLSPEC_XFGVIRT(ID3D12GraphicsCommandList, DrawIndexedInstanced) + void ( STDMETHODCALLTYPE *DrawIndexedInstanced )( + ID3D12GraphicsCommandList7 * This, + _In_ UINT IndexCountPerInstance, + _In_ UINT InstanceCount, + _In_ UINT StartIndexLocation, + _In_ INT BaseVertexLocation, + _In_ UINT StartInstanceLocation); + + DECLSPEC_XFGVIRT(ID3D12GraphicsCommandList, Dispatch) + void ( STDMETHODCALLTYPE *Dispatch )( + ID3D12GraphicsCommandList7 * This, + _In_ UINT ThreadGroupCountX, + _In_ UINT ThreadGroupCountY, + _In_ UINT ThreadGroupCountZ); + + DECLSPEC_XFGVIRT(ID3D12GraphicsCommandList, CopyBufferRegion) + void ( STDMETHODCALLTYPE *CopyBufferRegion )( + ID3D12GraphicsCommandList7 * This, + _In_ ID3D12Resource *pDstBuffer, + UINT64 DstOffset, + _In_ ID3D12Resource *pSrcBuffer, + UINT64 SrcOffset, + UINT64 NumBytes); + + DECLSPEC_XFGVIRT(ID3D12GraphicsCommandList, CopyTextureRegion) + void ( STDMETHODCALLTYPE *CopyTextureRegion )( + ID3D12GraphicsCommandList7 * This, + _In_ const D3D12_TEXTURE_COPY_LOCATION *pDst, + UINT DstX, + UINT DstY, + UINT DstZ, + _In_ const D3D12_TEXTURE_COPY_LOCATION *pSrc, + _In_opt_ const D3D12_BOX *pSrcBox); + + DECLSPEC_XFGVIRT(ID3D12GraphicsCommandList, CopyResource) + void ( STDMETHODCALLTYPE *CopyResource )( + ID3D12GraphicsCommandList7 * This, + _In_ ID3D12Resource *pDstResource, + _In_ ID3D12Resource *pSrcResource); + + DECLSPEC_XFGVIRT(ID3D12GraphicsCommandList, CopyTiles) + void ( STDMETHODCALLTYPE *CopyTiles )( + ID3D12GraphicsCommandList7 * This, + _In_ ID3D12Resource *pTiledResource, + _In_ const D3D12_TILED_RESOURCE_COORDINATE *pTileRegionStartCoordinate, + _In_ const D3D12_TILE_REGION_SIZE *pTileRegionSize, + _In_ ID3D12Resource *pBuffer, + UINT64 BufferStartOffsetInBytes, + D3D12_TILE_COPY_FLAGS Flags); + + DECLSPEC_XFGVIRT(ID3D12GraphicsCommandList, ResolveSubresource) + void ( STDMETHODCALLTYPE *ResolveSubresource )( + ID3D12GraphicsCommandList7 * This, + _In_ ID3D12Resource *pDstResource, + _In_ UINT DstSubresource, + _In_ ID3D12Resource *pSrcResource, + _In_ UINT SrcSubresource, + _In_ DXGI_FORMAT Format); + + DECLSPEC_XFGVIRT(ID3D12GraphicsCommandList, IASetPrimitiveTopology) + void ( STDMETHODCALLTYPE *IASetPrimitiveTopology )( + ID3D12GraphicsCommandList7 * This, + _In_ D3D12_PRIMITIVE_TOPOLOGY PrimitiveTopology); + + DECLSPEC_XFGVIRT(ID3D12GraphicsCommandList, RSSetViewports) + void ( STDMETHODCALLTYPE *RSSetViewports )( + ID3D12GraphicsCommandList7 * This, + _In_range_(0, D3D12_VIEWPORT_AND_SCISSORRECT_OBJECT_COUNT_PER_PIPELINE) UINT NumViewports, + _In_reads_( NumViewports) const D3D12_VIEWPORT *pViewports); + + DECLSPEC_XFGVIRT(ID3D12GraphicsCommandList, RSSetScissorRects) + void ( STDMETHODCALLTYPE *RSSetScissorRects )( + ID3D12GraphicsCommandList7 * This, + _In_range_(0, D3D12_VIEWPORT_AND_SCISSORRECT_OBJECT_COUNT_PER_PIPELINE) UINT NumRects, + _In_reads_( NumRects) const D3D12_RECT *pRects); + + DECLSPEC_XFGVIRT(ID3D12GraphicsCommandList, OMSetBlendFactor) + void ( STDMETHODCALLTYPE *OMSetBlendFactor )( + ID3D12GraphicsCommandList7 * This, + _In_reads_opt_(4) const FLOAT BlendFactor[ 4 ]); + + DECLSPEC_XFGVIRT(ID3D12GraphicsCommandList, OMSetStencilRef) + void ( STDMETHODCALLTYPE *OMSetStencilRef )( + ID3D12GraphicsCommandList7 * This, + _In_ UINT StencilRef); + + DECLSPEC_XFGVIRT(ID3D12GraphicsCommandList, SetPipelineState) + void ( STDMETHODCALLTYPE *SetPipelineState )( + ID3D12GraphicsCommandList7 * This, + _In_ ID3D12PipelineState *pPipelineState); + + DECLSPEC_XFGVIRT(ID3D12GraphicsCommandList, ResourceBarrier) + void ( STDMETHODCALLTYPE *ResourceBarrier )( + ID3D12GraphicsCommandList7 * This, + _In_ UINT NumBarriers, + _In_reads_(NumBarriers) const D3D12_RESOURCE_BARRIER *pBarriers); + + DECLSPEC_XFGVIRT(ID3D12GraphicsCommandList, ExecuteBundle) + void ( STDMETHODCALLTYPE *ExecuteBundle )( + ID3D12GraphicsCommandList7 * This, + _In_ ID3D12GraphicsCommandList *pCommandList); + + DECLSPEC_XFGVIRT(ID3D12GraphicsCommandList, SetDescriptorHeaps) + void ( STDMETHODCALLTYPE *SetDescriptorHeaps )( + ID3D12GraphicsCommandList7 * This, + _In_ UINT NumDescriptorHeaps, + _In_reads_(NumDescriptorHeaps) ID3D12DescriptorHeap *const *ppDescriptorHeaps); + + DECLSPEC_XFGVIRT(ID3D12GraphicsCommandList, SetComputeRootSignature) + void ( STDMETHODCALLTYPE *SetComputeRootSignature )( + ID3D12GraphicsCommandList7 * This, + _In_opt_ ID3D12RootSignature *pRootSignature); + + DECLSPEC_XFGVIRT(ID3D12GraphicsCommandList, SetGraphicsRootSignature) + void ( STDMETHODCALLTYPE *SetGraphicsRootSignature )( + ID3D12GraphicsCommandList7 * This, + _In_opt_ ID3D12RootSignature *pRootSignature); + + DECLSPEC_XFGVIRT(ID3D12GraphicsCommandList, SetComputeRootDescriptorTable) + void ( STDMETHODCALLTYPE *SetComputeRootDescriptorTable )( + ID3D12GraphicsCommandList7 * This, + _In_ UINT RootParameterIndex, + _In_ D3D12_GPU_DESCRIPTOR_HANDLE BaseDescriptor); + + DECLSPEC_XFGVIRT(ID3D12GraphicsCommandList, SetGraphicsRootDescriptorTable) + void ( STDMETHODCALLTYPE *SetGraphicsRootDescriptorTable )( + ID3D12GraphicsCommandList7 * This, + _In_ UINT RootParameterIndex, + _In_ D3D12_GPU_DESCRIPTOR_HANDLE BaseDescriptor); + + DECLSPEC_XFGVIRT(ID3D12GraphicsCommandList, SetComputeRoot32BitConstant) + void ( STDMETHODCALLTYPE *SetComputeRoot32BitConstant )( + ID3D12GraphicsCommandList7 * This, + _In_ UINT RootParameterIndex, + _In_ UINT SrcData, + _In_ UINT DestOffsetIn32BitValues); + + DECLSPEC_XFGVIRT(ID3D12GraphicsCommandList, SetGraphicsRoot32BitConstant) + void ( STDMETHODCALLTYPE *SetGraphicsRoot32BitConstant )( + ID3D12GraphicsCommandList7 * This, + _In_ UINT RootParameterIndex, + _In_ UINT SrcData, + _In_ UINT DestOffsetIn32BitValues); + + DECLSPEC_XFGVIRT(ID3D12GraphicsCommandList, SetComputeRoot32BitConstants) + void ( STDMETHODCALLTYPE *SetComputeRoot32BitConstants )( + ID3D12GraphicsCommandList7 * This, + _In_ UINT RootParameterIndex, + _In_ UINT Num32BitValuesToSet, + _In_reads_(Num32BitValuesToSet*sizeof(UINT)) const void *pSrcData, + _In_ UINT DestOffsetIn32BitValues); + + DECLSPEC_XFGVIRT(ID3D12GraphicsCommandList, SetGraphicsRoot32BitConstants) + void ( STDMETHODCALLTYPE *SetGraphicsRoot32BitConstants )( + ID3D12GraphicsCommandList7 * This, + _In_ UINT RootParameterIndex, + _In_ UINT Num32BitValuesToSet, + _In_reads_(Num32BitValuesToSet*sizeof(UINT)) const void *pSrcData, + _In_ UINT DestOffsetIn32BitValues); + + DECLSPEC_XFGVIRT(ID3D12GraphicsCommandList, SetComputeRootConstantBufferView) + void ( STDMETHODCALLTYPE *SetComputeRootConstantBufferView )( + ID3D12GraphicsCommandList7 * This, + _In_ UINT RootParameterIndex, + _In_ D3D12_GPU_VIRTUAL_ADDRESS BufferLocation); + + DECLSPEC_XFGVIRT(ID3D12GraphicsCommandList, SetGraphicsRootConstantBufferView) + void ( STDMETHODCALLTYPE *SetGraphicsRootConstantBufferView )( + ID3D12GraphicsCommandList7 * This, + _In_ UINT RootParameterIndex, + _In_ D3D12_GPU_VIRTUAL_ADDRESS BufferLocation); + + DECLSPEC_XFGVIRT(ID3D12GraphicsCommandList, SetComputeRootShaderResourceView) + void ( STDMETHODCALLTYPE *SetComputeRootShaderResourceView )( + ID3D12GraphicsCommandList7 * This, + _In_ UINT RootParameterIndex, + _In_ D3D12_GPU_VIRTUAL_ADDRESS BufferLocation); + + DECLSPEC_XFGVIRT(ID3D12GraphicsCommandList, SetGraphicsRootShaderResourceView) + void ( STDMETHODCALLTYPE *SetGraphicsRootShaderResourceView )( + ID3D12GraphicsCommandList7 * This, + _In_ UINT RootParameterIndex, + _In_ D3D12_GPU_VIRTUAL_ADDRESS BufferLocation); + + DECLSPEC_XFGVIRT(ID3D12GraphicsCommandList, SetComputeRootUnorderedAccessView) + void ( STDMETHODCALLTYPE *SetComputeRootUnorderedAccessView )( + ID3D12GraphicsCommandList7 * This, + _In_ UINT RootParameterIndex, + _In_ D3D12_GPU_VIRTUAL_ADDRESS BufferLocation); + + DECLSPEC_XFGVIRT(ID3D12GraphicsCommandList, SetGraphicsRootUnorderedAccessView) + void ( STDMETHODCALLTYPE *SetGraphicsRootUnorderedAccessView )( + ID3D12GraphicsCommandList7 * This, + _In_ UINT RootParameterIndex, + _In_ D3D12_GPU_VIRTUAL_ADDRESS BufferLocation); + + DECLSPEC_XFGVIRT(ID3D12GraphicsCommandList, IASetIndexBuffer) + void ( STDMETHODCALLTYPE *IASetIndexBuffer )( + ID3D12GraphicsCommandList7 * This, + _In_opt_ const D3D12_INDEX_BUFFER_VIEW *pView); + + DECLSPEC_XFGVIRT(ID3D12GraphicsCommandList, IASetVertexBuffers) + void ( STDMETHODCALLTYPE *IASetVertexBuffers )( + ID3D12GraphicsCommandList7 * This, + _In_ UINT StartSlot, + _In_ UINT NumViews, + _In_reads_opt_(NumViews) const D3D12_VERTEX_BUFFER_VIEW *pViews); + + DECLSPEC_XFGVIRT(ID3D12GraphicsCommandList, SOSetTargets) + void ( STDMETHODCALLTYPE *SOSetTargets )( + ID3D12GraphicsCommandList7 * This, + _In_ UINT StartSlot, + _In_ UINT NumViews, + _In_reads_opt_(NumViews) const D3D12_STREAM_OUTPUT_BUFFER_VIEW *pViews); + + DECLSPEC_XFGVIRT(ID3D12GraphicsCommandList, OMSetRenderTargets) + void ( STDMETHODCALLTYPE *OMSetRenderTargets )( + ID3D12GraphicsCommandList7 * This, + _In_ UINT NumRenderTargetDescriptors, + _In_opt_ const D3D12_CPU_DESCRIPTOR_HANDLE *pRenderTargetDescriptors, + _In_ BOOL RTsSingleHandleToDescriptorRange, + _In_opt_ const D3D12_CPU_DESCRIPTOR_HANDLE *pDepthStencilDescriptor); + + DECLSPEC_XFGVIRT(ID3D12GraphicsCommandList, ClearDepthStencilView) + void ( STDMETHODCALLTYPE *ClearDepthStencilView )( + ID3D12GraphicsCommandList7 * This, + _In_ D3D12_CPU_DESCRIPTOR_HANDLE DepthStencilView, + _In_ D3D12_CLEAR_FLAGS ClearFlags, + _In_ FLOAT Depth, + _In_ UINT8 Stencil, + _In_ UINT NumRects, + _In_reads_(NumRects) const D3D12_RECT *pRects); + + DECLSPEC_XFGVIRT(ID3D12GraphicsCommandList, ClearRenderTargetView) + void ( STDMETHODCALLTYPE *ClearRenderTargetView )( + ID3D12GraphicsCommandList7 * This, + _In_ D3D12_CPU_DESCRIPTOR_HANDLE RenderTargetView, + _In_ const FLOAT ColorRGBA[ 4 ], + _In_ UINT NumRects, + _In_reads_(NumRects) const D3D12_RECT *pRects); + + DECLSPEC_XFGVIRT(ID3D12GraphicsCommandList, ClearUnorderedAccessViewUint) + void ( STDMETHODCALLTYPE *ClearUnorderedAccessViewUint )( + ID3D12GraphicsCommandList7 * This, + _In_ D3D12_GPU_DESCRIPTOR_HANDLE ViewGPUHandleInCurrentHeap, + _In_ D3D12_CPU_DESCRIPTOR_HANDLE ViewCPUHandle, + _In_ ID3D12Resource *pResource, + _In_ const UINT Values[ 4 ], + _In_ UINT NumRects, + _In_reads_(NumRects) const D3D12_RECT *pRects); + + DECLSPEC_XFGVIRT(ID3D12GraphicsCommandList, ClearUnorderedAccessViewFloat) + void ( STDMETHODCALLTYPE *ClearUnorderedAccessViewFloat )( + ID3D12GraphicsCommandList7 * This, + _In_ D3D12_GPU_DESCRIPTOR_HANDLE ViewGPUHandleInCurrentHeap, + _In_ D3D12_CPU_DESCRIPTOR_HANDLE ViewCPUHandle, + _In_ ID3D12Resource *pResource, + _In_ const FLOAT Values[ 4 ], + _In_ UINT NumRects, + _In_reads_(NumRects) const D3D12_RECT *pRects); + + DECLSPEC_XFGVIRT(ID3D12GraphicsCommandList, DiscardResource) + void ( STDMETHODCALLTYPE *DiscardResource )( + ID3D12GraphicsCommandList7 * This, + _In_ ID3D12Resource *pResource, + _In_opt_ const D3D12_DISCARD_REGION *pRegion); + + DECLSPEC_XFGVIRT(ID3D12GraphicsCommandList, BeginQuery) + void ( STDMETHODCALLTYPE *BeginQuery )( + ID3D12GraphicsCommandList7 * This, + _In_ ID3D12QueryHeap *pQueryHeap, + _In_ D3D12_QUERY_TYPE Type, + _In_ UINT Index); + + DECLSPEC_XFGVIRT(ID3D12GraphicsCommandList, EndQuery) + void ( STDMETHODCALLTYPE *EndQuery )( + ID3D12GraphicsCommandList7 * This, + _In_ ID3D12QueryHeap *pQueryHeap, + _In_ D3D12_QUERY_TYPE Type, + _In_ UINT Index); + + DECLSPEC_XFGVIRT(ID3D12GraphicsCommandList, ResolveQueryData) + void ( STDMETHODCALLTYPE *ResolveQueryData )( + ID3D12GraphicsCommandList7 * This, + _In_ ID3D12QueryHeap *pQueryHeap, + _In_ D3D12_QUERY_TYPE Type, + _In_ UINT StartIndex, + _In_ UINT NumQueries, + _In_ ID3D12Resource *pDestinationBuffer, + _In_ UINT64 AlignedDestinationBufferOffset); + + DECLSPEC_XFGVIRT(ID3D12GraphicsCommandList, SetPredication) + void ( STDMETHODCALLTYPE *SetPredication )( + ID3D12GraphicsCommandList7 * This, + _In_opt_ ID3D12Resource *pBuffer, + _In_ UINT64 AlignedBufferOffset, + _In_ D3D12_PREDICATION_OP Operation); + + DECLSPEC_XFGVIRT(ID3D12GraphicsCommandList, SetMarker) + void ( STDMETHODCALLTYPE *SetMarker )( + ID3D12GraphicsCommandList7 * This, + UINT Metadata, + _In_reads_bytes_opt_(Size) const void *pData, + UINT Size); + + DECLSPEC_XFGVIRT(ID3D12GraphicsCommandList, BeginEvent) + void ( STDMETHODCALLTYPE *BeginEvent )( + ID3D12GraphicsCommandList7 * This, + UINT Metadata, + _In_reads_bytes_opt_(Size) const void *pData, + UINT Size); + + DECLSPEC_XFGVIRT(ID3D12GraphicsCommandList, EndEvent) + void ( STDMETHODCALLTYPE *EndEvent )( + ID3D12GraphicsCommandList7 * This); + + DECLSPEC_XFGVIRT(ID3D12GraphicsCommandList, ExecuteIndirect) + void ( STDMETHODCALLTYPE *ExecuteIndirect )( + ID3D12GraphicsCommandList7 * This, + _In_ ID3D12CommandSignature *pCommandSignature, + _In_ UINT MaxCommandCount, + _In_ ID3D12Resource *pArgumentBuffer, + _In_ UINT64 ArgumentBufferOffset, + _In_opt_ ID3D12Resource *pCountBuffer, + _In_ UINT64 CountBufferOffset); + + DECLSPEC_XFGVIRT(ID3D12GraphicsCommandList1, AtomicCopyBufferUINT) + void ( STDMETHODCALLTYPE *AtomicCopyBufferUINT )( + ID3D12GraphicsCommandList7 * This, + _In_ ID3D12Resource *pDstBuffer, + UINT64 DstOffset, + _In_ ID3D12Resource *pSrcBuffer, + UINT64 SrcOffset, + UINT Dependencies, + _In_reads_(Dependencies) ID3D12Resource *const *ppDependentResources, + _In_reads_(Dependencies) const D3D12_SUBRESOURCE_RANGE_UINT64 *pDependentSubresourceRanges); + + DECLSPEC_XFGVIRT(ID3D12GraphicsCommandList1, AtomicCopyBufferUINT64) + void ( STDMETHODCALLTYPE *AtomicCopyBufferUINT64 )( + ID3D12GraphicsCommandList7 * This, + _In_ ID3D12Resource *pDstBuffer, + UINT64 DstOffset, + _In_ ID3D12Resource *pSrcBuffer, + UINT64 SrcOffset, + UINT Dependencies, + _In_reads_(Dependencies) ID3D12Resource *const *ppDependentResources, + _In_reads_(Dependencies) const D3D12_SUBRESOURCE_RANGE_UINT64 *pDependentSubresourceRanges); + + DECLSPEC_XFGVIRT(ID3D12GraphicsCommandList1, OMSetDepthBounds) + void ( STDMETHODCALLTYPE *OMSetDepthBounds )( + ID3D12GraphicsCommandList7 * This, + _In_ FLOAT Min, + _In_ FLOAT Max); + + DECLSPEC_XFGVIRT(ID3D12GraphicsCommandList1, SetSamplePositions) + void ( STDMETHODCALLTYPE *SetSamplePositions )( + ID3D12GraphicsCommandList7 * This, + _In_ UINT NumSamplesPerPixel, + _In_ UINT NumPixels, + _In_reads_(NumSamplesPerPixel*NumPixels) D3D12_SAMPLE_POSITION *pSamplePositions); + + DECLSPEC_XFGVIRT(ID3D12GraphicsCommandList1, ResolveSubresourceRegion) + void ( STDMETHODCALLTYPE *ResolveSubresourceRegion )( + ID3D12GraphicsCommandList7 * This, + _In_ ID3D12Resource *pDstResource, + _In_ UINT DstSubresource, + _In_ UINT DstX, + _In_ UINT DstY, + _In_ ID3D12Resource *pSrcResource, + _In_ UINT SrcSubresource, + _In_opt_ D3D12_RECT *pSrcRect, + _In_ DXGI_FORMAT Format, + _In_ D3D12_RESOLVE_MODE ResolveMode); + + DECLSPEC_XFGVIRT(ID3D12GraphicsCommandList1, SetViewInstanceMask) + void ( STDMETHODCALLTYPE *SetViewInstanceMask )( + ID3D12GraphicsCommandList7 * This, + _In_ UINT Mask); + + DECLSPEC_XFGVIRT(ID3D12GraphicsCommandList2, WriteBufferImmediate) + void ( STDMETHODCALLTYPE *WriteBufferImmediate )( + ID3D12GraphicsCommandList7 * This, + UINT Count, + _In_reads_(Count) const D3D12_WRITEBUFFERIMMEDIATE_PARAMETER *pParams, + _In_reads_opt_(Count) const D3D12_WRITEBUFFERIMMEDIATE_MODE *pModes); + + DECLSPEC_XFGVIRT(ID3D12GraphicsCommandList3, SetProtectedResourceSession) + void ( STDMETHODCALLTYPE *SetProtectedResourceSession )( + ID3D12GraphicsCommandList7 * This, + _In_opt_ ID3D12ProtectedResourceSession *pProtectedResourceSession); + + DECLSPEC_XFGVIRT(ID3D12GraphicsCommandList4, BeginRenderPass) + void ( STDMETHODCALLTYPE *BeginRenderPass )( + ID3D12GraphicsCommandList7 * This, + _In_ UINT NumRenderTargets, + _In_reads_opt_(NumRenderTargets) const D3D12_RENDER_PASS_RENDER_TARGET_DESC *pRenderTargets, + _In_opt_ const D3D12_RENDER_PASS_DEPTH_STENCIL_DESC *pDepthStencil, + D3D12_RENDER_PASS_FLAGS Flags); + + DECLSPEC_XFGVIRT(ID3D12GraphicsCommandList4, EndRenderPass) + void ( STDMETHODCALLTYPE *EndRenderPass )( + ID3D12GraphicsCommandList7 * This); + + DECLSPEC_XFGVIRT(ID3D12GraphicsCommandList4, InitializeMetaCommand) + void ( STDMETHODCALLTYPE *InitializeMetaCommand )( + ID3D12GraphicsCommandList7 * This, + _In_ ID3D12MetaCommand *pMetaCommand, + _In_reads_bytes_opt_(InitializationParametersDataSizeInBytes) const void *pInitializationParametersData, + _In_ SIZE_T InitializationParametersDataSizeInBytes); + + DECLSPEC_XFGVIRT(ID3D12GraphicsCommandList4, ExecuteMetaCommand) + void ( STDMETHODCALLTYPE *ExecuteMetaCommand )( + ID3D12GraphicsCommandList7 * This, + _In_ ID3D12MetaCommand *pMetaCommand, + _In_reads_bytes_opt_(ExecutionParametersDataSizeInBytes) const void *pExecutionParametersData, + _In_ SIZE_T ExecutionParametersDataSizeInBytes); + + DECLSPEC_XFGVIRT(ID3D12GraphicsCommandList4, BuildRaytracingAccelerationStructure) + void ( STDMETHODCALLTYPE *BuildRaytracingAccelerationStructure )( + ID3D12GraphicsCommandList7 * This, + _In_ const D3D12_BUILD_RAYTRACING_ACCELERATION_STRUCTURE_DESC *pDesc, + _In_ UINT NumPostbuildInfoDescs, + _In_reads_opt_(NumPostbuildInfoDescs) const D3D12_RAYTRACING_ACCELERATION_STRUCTURE_POSTBUILD_INFO_DESC *pPostbuildInfoDescs); + + DECLSPEC_XFGVIRT(ID3D12GraphicsCommandList4, EmitRaytracingAccelerationStructurePostbuildInfo) + void ( STDMETHODCALLTYPE *EmitRaytracingAccelerationStructurePostbuildInfo )( + ID3D12GraphicsCommandList7 * This, + _In_ const D3D12_RAYTRACING_ACCELERATION_STRUCTURE_POSTBUILD_INFO_DESC *pDesc, + _In_ UINT NumSourceAccelerationStructures, + _In_reads_( NumSourceAccelerationStructures ) const D3D12_GPU_VIRTUAL_ADDRESS *pSourceAccelerationStructureData); + + DECLSPEC_XFGVIRT(ID3D12GraphicsCommandList4, CopyRaytracingAccelerationStructure) + void ( STDMETHODCALLTYPE *CopyRaytracingAccelerationStructure )( + ID3D12GraphicsCommandList7 * This, + _In_ D3D12_GPU_VIRTUAL_ADDRESS DestAccelerationStructureData, + _In_ D3D12_GPU_VIRTUAL_ADDRESS SourceAccelerationStructureData, + _In_ D3D12_RAYTRACING_ACCELERATION_STRUCTURE_COPY_MODE Mode); + + DECLSPEC_XFGVIRT(ID3D12GraphicsCommandList4, SetPipelineState1) + void ( STDMETHODCALLTYPE *SetPipelineState1 )( + ID3D12GraphicsCommandList7 * This, + _In_ ID3D12StateObject *pStateObject); + + DECLSPEC_XFGVIRT(ID3D12GraphicsCommandList4, DispatchRays) + void ( STDMETHODCALLTYPE *DispatchRays )( + ID3D12GraphicsCommandList7 * This, + _In_ const D3D12_DISPATCH_RAYS_DESC *pDesc); + + DECLSPEC_XFGVIRT(ID3D12GraphicsCommandList5, RSSetShadingRate) + void ( STDMETHODCALLTYPE *RSSetShadingRate )( + ID3D12GraphicsCommandList7 * This, + _In_ D3D12_SHADING_RATE baseShadingRate, + _In_reads_opt_(D3D12_RS_SET_SHADING_RATE_COMBINER_COUNT) const D3D12_SHADING_RATE_COMBINER *combiners); + + DECLSPEC_XFGVIRT(ID3D12GraphicsCommandList5, RSSetShadingRateImage) + void ( STDMETHODCALLTYPE *RSSetShadingRateImage )( + ID3D12GraphicsCommandList7 * This, + _In_opt_ ID3D12Resource *shadingRateImage); + + DECLSPEC_XFGVIRT(ID3D12GraphicsCommandList6, DispatchMesh) + void ( STDMETHODCALLTYPE *DispatchMesh )( + ID3D12GraphicsCommandList7 * This, + _In_ UINT ThreadGroupCountX, + _In_ UINT ThreadGroupCountY, + _In_ UINT ThreadGroupCountZ); + + DECLSPEC_XFGVIRT(ID3D12GraphicsCommandList7, Barrier) + void ( STDMETHODCALLTYPE *Barrier )( + ID3D12GraphicsCommandList7 * This, + UINT32 NumBarrierGroups, + _In_reads_(NumBarrierGroups) const D3D12_BARRIER_GROUP *pBarrierGroups); + + END_INTERFACE + } ID3D12GraphicsCommandList7Vtbl; + + interface ID3D12GraphicsCommandList7 + { + CONST_VTBL struct ID3D12GraphicsCommandList7Vtbl *lpVtbl; + }; + + + +#ifdef COBJMACROS + + +#define ID3D12GraphicsCommandList7_QueryInterface(This,riid,ppvObject) \ + ( (This)->lpVtbl -> QueryInterface(This,riid,ppvObject) ) + +#define ID3D12GraphicsCommandList7_AddRef(This) \ + ( (This)->lpVtbl -> AddRef(This) ) + +#define ID3D12GraphicsCommandList7_Release(This) \ + ( (This)->lpVtbl -> Release(This) ) + + +#define ID3D12GraphicsCommandList7_GetPrivateData(This,guid,pDataSize,pData) \ + ( (This)->lpVtbl -> GetPrivateData(This,guid,pDataSize,pData) ) + +#define ID3D12GraphicsCommandList7_SetPrivateData(This,guid,DataSize,pData) \ + ( (This)->lpVtbl -> SetPrivateData(This,guid,DataSize,pData) ) + +#define ID3D12GraphicsCommandList7_SetPrivateDataInterface(This,guid,pData) \ + ( (This)->lpVtbl -> SetPrivateDataInterface(This,guid,pData) ) + +#define ID3D12GraphicsCommandList7_SetName(This,Name) \ + ( (This)->lpVtbl -> SetName(This,Name) ) + + +#define ID3D12GraphicsCommandList7_GetDevice(This,riid,ppvDevice) \ + ( (This)->lpVtbl -> GetDevice(This,riid,ppvDevice) ) + + +#define ID3D12GraphicsCommandList7_GetType(This) \ + ( (This)->lpVtbl -> GetType(This) ) + + +#define ID3D12GraphicsCommandList7_Close(This) \ + ( (This)->lpVtbl -> Close(This) ) + +#define ID3D12GraphicsCommandList7_Reset(This,pAllocator,pInitialState) \ + ( (This)->lpVtbl -> Reset(This,pAllocator,pInitialState) ) + +#define ID3D12GraphicsCommandList7_ClearState(This,pPipelineState) \ + ( (This)->lpVtbl -> ClearState(This,pPipelineState) ) + +#define ID3D12GraphicsCommandList7_DrawInstanced(This,VertexCountPerInstance,InstanceCount,StartVertexLocation,StartInstanceLocation) \ + ( (This)->lpVtbl -> DrawInstanced(This,VertexCountPerInstance,InstanceCount,StartVertexLocation,StartInstanceLocation) ) + +#define ID3D12GraphicsCommandList7_DrawIndexedInstanced(This,IndexCountPerInstance,InstanceCount,StartIndexLocation,BaseVertexLocation,StartInstanceLocation) \ + ( (This)->lpVtbl -> DrawIndexedInstanced(This,IndexCountPerInstance,InstanceCount,StartIndexLocation,BaseVertexLocation,StartInstanceLocation) ) + +#define ID3D12GraphicsCommandList7_Dispatch(This,ThreadGroupCountX,ThreadGroupCountY,ThreadGroupCountZ) \ + ( (This)->lpVtbl -> Dispatch(This,ThreadGroupCountX,ThreadGroupCountY,ThreadGroupCountZ) ) + +#define ID3D12GraphicsCommandList7_CopyBufferRegion(This,pDstBuffer,DstOffset,pSrcBuffer,SrcOffset,NumBytes) \ + ( (This)->lpVtbl -> CopyBufferRegion(This,pDstBuffer,DstOffset,pSrcBuffer,SrcOffset,NumBytes) ) + +#define ID3D12GraphicsCommandList7_CopyTextureRegion(This,pDst,DstX,DstY,DstZ,pSrc,pSrcBox) \ + ( (This)->lpVtbl -> CopyTextureRegion(This,pDst,DstX,DstY,DstZ,pSrc,pSrcBox) ) + +#define ID3D12GraphicsCommandList7_CopyResource(This,pDstResource,pSrcResource) \ + ( (This)->lpVtbl -> CopyResource(This,pDstResource,pSrcResource) ) + +#define ID3D12GraphicsCommandList7_CopyTiles(This,pTiledResource,pTileRegionStartCoordinate,pTileRegionSize,pBuffer,BufferStartOffsetInBytes,Flags) \ + ( (This)->lpVtbl -> CopyTiles(This,pTiledResource,pTileRegionStartCoordinate,pTileRegionSize,pBuffer,BufferStartOffsetInBytes,Flags) ) + +#define ID3D12GraphicsCommandList7_ResolveSubresource(This,pDstResource,DstSubresource,pSrcResource,SrcSubresource,Format) \ + ( (This)->lpVtbl -> ResolveSubresource(This,pDstResource,DstSubresource,pSrcResource,SrcSubresource,Format) ) + +#define ID3D12GraphicsCommandList7_IASetPrimitiveTopology(This,PrimitiveTopology) \ + ( (This)->lpVtbl -> IASetPrimitiveTopology(This,PrimitiveTopology) ) + +#define ID3D12GraphicsCommandList7_RSSetViewports(This,NumViewports,pViewports) \ + ( (This)->lpVtbl -> RSSetViewports(This,NumViewports,pViewports) ) + +#define ID3D12GraphicsCommandList7_RSSetScissorRects(This,NumRects,pRects) \ + ( (This)->lpVtbl -> RSSetScissorRects(This,NumRects,pRects) ) + +#define ID3D12GraphicsCommandList7_OMSetBlendFactor(This,BlendFactor) \ + ( (This)->lpVtbl -> OMSetBlendFactor(This,BlendFactor) ) + +#define ID3D12GraphicsCommandList7_OMSetStencilRef(This,StencilRef) \ + ( (This)->lpVtbl -> OMSetStencilRef(This,StencilRef) ) + +#define ID3D12GraphicsCommandList7_SetPipelineState(This,pPipelineState) \ + ( (This)->lpVtbl -> SetPipelineState(This,pPipelineState) ) + +#define ID3D12GraphicsCommandList7_ResourceBarrier(This,NumBarriers,pBarriers) \ + ( (This)->lpVtbl -> ResourceBarrier(This,NumBarriers,pBarriers) ) + +#define ID3D12GraphicsCommandList7_ExecuteBundle(This,pCommandList) \ + ( (This)->lpVtbl -> ExecuteBundle(This,pCommandList) ) + +#define ID3D12GraphicsCommandList7_SetDescriptorHeaps(This,NumDescriptorHeaps,ppDescriptorHeaps) \ + ( (This)->lpVtbl -> SetDescriptorHeaps(This,NumDescriptorHeaps,ppDescriptorHeaps) ) + +#define ID3D12GraphicsCommandList7_SetComputeRootSignature(This,pRootSignature) \ + ( (This)->lpVtbl -> SetComputeRootSignature(This,pRootSignature) ) + +#define ID3D12GraphicsCommandList7_SetGraphicsRootSignature(This,pRootSignature) \ + ( (This)->lpVtbl -> SetGraphicsRootSignature(This,pRootSignature) ) + +#define ID3D12GraphicsCommandList7_SetComputeRootDescriptorTable(This,RootParameterIndex,BaseDescriptor) \ + ( (This)->lpVtbl -> SetComputeRootDescriptorTable(This,RootParameterIndex,BaseDescriptor) ) + +#define ID3D12GraphicsCommandList7_SetGraphicsRootDescriptorTable(This,RootParameterIndex,BaseDescriptor) \ + ( (This)->lpVtbl -> SetGraphicsRootDescriptorTable(This,RootParameterIndex,BaseDescriptor) ) + +#define ID3D12GraphicsCommandList7_SetComputeRoot32BitConstant(This,RootParameterIndex,SrcData,DestOffsetIn32BitValues) \ + ( (This)->lpVtbl -> SetComputeRoot32BitConstant(This,RootParameterIndex,SrcData,DestOffsetIn32BitValues) ) + +#define ID3D12GraphicsCommandList7_SetGraphicsRoot32BitConstant(This,RootParameterIndex,SrcData,DestOffsetIn32BitValues) \ + ( (This)->lpVtbl -> SetGraphicsRoot32BitConstant(This,RootParameterIndex,SrcData,DestOffsetIn32BitValues) ) + +#define ID3D12GraphicsCommandList7_SetComputeRoot32BitConstants(This,RootParameterIndex,Num32BitValuesToSet,pSrcData,DestOffsetIn32BitValues) \ + ( (This)->lpVtbl -> SetComputeRoot32BitConstants(This,RootParameterIndex,Num32BitValuesToSet,pSrcData,DestOffsetIn32BitValues) ) + +#define ID3D12GraphicsCommandList7_SetGraphicsRoot32BitConstants(This,RootParameterIndex,Num32BitValuesToSet,pSrcData,DestOffsetIn32BitValues) \ + ( (This)->lpVtbl -> SetGraphicsRoot32BitConstants(This,RootParameterIndex,Num32BitValuesToSet,pSrcData,DestOffsetIn32BitValues) ) + +#define ID3D12GraphicsCommandList7_SetComputeRootConstantBufferView(This,RootParameterIndex,BufferLocation) \ + ( (This)->lpVtbl -> SetComputeRootConstantBufferView(This,RootParameterIndex,BufferLocation) ) + +#define ID3D12GraphicsCommandList7_SetGraphicsRootConstantBufferView(This,RootParameterIndex,BufferLocation) \ + ( (This)->lpVtbl -> SetGraphicsRootConstantBufferView(This,RootParameterIndex,BufferLocation) ) + +#define ID3D12GraphicsCommandList7_SetComputeRootShaderResourceView(This,RootParameterIndex,BufferLocation) \ + ( (This)->lpVtbl -> SetComputeRootShaderResourceView(This,RootParameterIndex,BufferLocation) ) + +#define ID3D12GraphicsCommandList7_SetGraphicsRootShaderResourceView(This,RootParameterIndex,BufferLocation) \ + ( (This)->lpVtbl -> SetGraphicsRootShaderResourceView(This,RootParameterIndex,BufferLocation) ) + +#define ID3D12GraphicsCommandList7_SetComputeRootUnorderedAccessView(This,RootParameterIndex,BufferLocation) \ + ( (This)->lpVtbl -> SetComputeRootUnorderedAccessView(This,RootParameterIndex,BufferLocation) ) + +#define ID3D12GraphicsCommandList7_SetGraphicsRootUnorderedAccessView(This,RootParameterIndex,BufferLocation) \ + ( (This)->lpVtbl -> SetGraphicsRootUnorderedAccessView(This,RootParameterIndex,BufferLocation) ) + +#define ID3D12GraphicsCommandList7_IASetIndexBuffer(This,pView) \ + ( (This)->lpVtbl -> IASetIndexBuffer(This,pView) ) + +#define ID3D12GraphicsCommandList7_IASetVertexBuffers(This,StartSlot,NumViews,pViews) \ + ( (This)->lpVtbl -> IASetVertexBuffers(This,StartSlot,NumViews,pViews) ) + +#define ID3D12GraphicsCommandList7_SOSetTargets(This,StartSlot,NumViews,pViews) \ + ( (This)->lpVtbl -> SOSetTargets(This,StartSlot,NumViews,pViews) ) + +#define ID3D12GraphicsCommandList7_OMSetRenderTargets(This,NumRenderTargetDescriptors,pRenderTargetDescriptors,RTsSingleHandleToDescriptorRange,pDepthStencilDescriptor) \ + ( (This)->lpVtbl -> OMSetRenderTargets(This,NumRenderTargetDescriptors,pRenderTargetDescriptors,RTsSingleHandleToDescriptorRange,pDepthStencilDescriptor) ) + +#define ID3D12GraphicsCommandList7_ClearDepthStencilView(This,DepthStencilView,ClearFlags,Depth,Stencil,NumRects,pRects) \ + ( (This)->lpVtbl -> ClearDepthStencilView(This,DepthStencilView,ClearFlags,Depth,Stencil,NumRects,pRects) ) + +#define ID3D12GraphicsCommandList7_ClearRenderTargetView(This,RenderTargetView,ColorRGBA,NumRects,pRects) \ + ( (This)->lpVtbl -> ClearRenderTargetView(This,RenderTargetView,ColorRGBA,NumRects,pRects) ) + +#define ID3D12GraphicsCommandList7_ClearUnorderedAccessViewUint(This,ViewGPUHandleInCurrentHeap,ViewCPUHandle,pResource,Values,NumRects,pRects) \ + ( (This)->lpVtbl -> ClearUnorderedAccessViewUint(This,ViewGPUHandleInCurrentHeap,ViewCPUHandle,pResource,Values,NumRects,pRects) ) + +#define ID3D12GraphicsCommandList7_ClearUnorderedAccessViewFloat(This,ViewGPUHandleInCurrentHeap,ViewCPUHandle,pResource,Values,NumRects,pRects) \ + ( (This)->lpVtbl -> ClearUnorderedAccessViewFloat(This,ViewGPUHandleInCurrentHeap,ViewCPUHandle,pResource,Values,NumRects,pRects) ) + +#define ID3D12GraphicsCommandList7_DiscardResource(This,pResource,pRegion) \ + ( (This)->lpVtbl -> DiscardResource(This,pResource,pRegion) ) + +#define ID3D12GraphicsCommandList7_BeginQuery(This,pQueryHeap,Type,Index) \ + ( (This)->lpVtbl -> BeginQuery(This,pQueryHeap,Type,Index) ) + +#define ID3D12GraphicsCommandList7_EndQuery(This,pQueryHeap,Type,Index) \ + ( (This)->lpVtbl -> EndQuery(This,pQueryHeap,Type,Index) ) + +#define ID3D12GraphicsCommandList7_ResolveQueryData(This,pQueryHeap,Type,StartIndex,NumQueries,pDestinationBuffer,AlignedDestinationBufferOffset) \ + ( (This)->lpVtbl -> ResolveQueryData(This,pQueryHeap,Type,StartIndex,NumQueries,pDestinationBuffer,AlignedDestinationBufferOffset) ) + +#define ID3D12GraphicsCommandList7_SetPredication(This,pBuffer,AlignedBufferOffset,Operation) \ + ( (This)->lpVtbl -> SetPredication(This,pBuffer,AlignedBufferOffset,Operation) ) + +#define ID3D12GraphicsCommandList7_SetMarker(This,Metadata,pData,Size) \ + ( (This)->lpVtbl -> SetMarker(This,Metadata,pData,Size) ) + +#define ID3D12GraphicsCommandList7_BeginEvent(This,Metadata,pData,Size) \ + ( (This)->lpVtbl -> BeginEvent(This,Metadata,pData,Size) ) + +#define ID3D12GraphicsCommandList7_EndEvent(This) \ + ( (This)->lpVtbl -> EndEvent(This) ) + +#define ID3D12GraphicsCommandList7_ExecuteIndirect(This,pCommandSignature,MaxCommandCount,pArgumentBuffer,ArgumentBufferOffset,pCountBuffer,CountBufferOffset) \ + ( (This)->lpVtbl -> ExecuteIndirect(This,pCommandSignature,MaxCommandCount,pArgumentBuffer,ArgumentBufferOffset,pCountBuffer,CountBufferOffset) ) -DEFINE_GUID(CLSID_D3D12Debug, 0xf2352aeb, 0xdd84, 0x49fe, 0xb9, 0x7b, 0xa9, 0xdc, 0xfd, 0xcc, 0x1b, 0x4f); -DEFINE_GUID(CLSID_D3D12Tools, 0xe38216b1, 0x3c8c, 0x4833, 0xaa, 0x09, 0x0a, 0x06, 0xb6, 0x5d, 0x96, 0xc8); -DEFINE_GUID(CLSID_D3D12DeviceRemovedExtendedData, 0x4a75bbc4, 0x9ff4, 0x4ad8, 0x9f, 0x18, 0xab, 0xae, 0x84, 0xdc, 0x5f, 0xf2); -DEFINE_GUID(CLSID_D3D12SDKConfiguration, 0x7cda6aca, 0xa03e, 0x49c8, 0x94, 0x58, 0x03, 0x34, 0xd2, 0x0e, 0x07, 0xce); -typedef HRESULT (WINAPI* PFN_D3D12_GET_INTERFACE)( _In_ REFCLSID, _In_ REFIID, _COM_Outptr_opt_ void** ); +#define ID3D12GraphicsCommandList7_AtomicCopyBufferUINT(This,pDstBuffer,DstOffset,pSrcBuffer,SrcOffset,Dependencies,ppDependentResources,pDependentSubresourceRanges) \ + ( (This)->lpVtbl -> AtomicCopyBufferUINT(This,pDstBuffer,DstOffset,pSrcBuffer,SrcOffset,Dependencies,ppDependentResources,pDependentSubresourceRanges) ) -HRESULT WINAPI D3D12GetInterface( _In_ REFCLSID rclsid, _In_ REFIID riid, _COM_Outptr_opt_ void** ppvDebug ); +#define ID3D12GraphicsCommandList7_AtomicCopyBufferUINT64(This,pDstBuffer,DstOffset,pSrcBuffer,SrcOffset,Dependencies,ppDependentResources,pDependentSubresourceRanges) \ + ( (This)->lpVtbl -> AtomicCopyBufferUINT64(This,pDstBuffer,DstOffset,pSrcBuffer,SrcOffset,Dependencies,ppDependentResources,pDependentSubresourceRanges) ) +#define ID3D12GraphicsCommandList7_OMSetDepthBounds(This,Min,Max) \ + ( (This)->lpVtbl -> OMSetDepthBounds(This,Min,Max) ) +#define ID3D12GraphicsCommandList7_SetSamplePositions(This,NumSamplesPerPixel,NumPixels,pSamplePositions) \ + ( (This)->lpVtbl -> SetSamplePositions(This,NumSamplesPerPixel,NumPixels,pSamplePositions) ) -extern RPC_IF_HANDLE __MIDL_itf_d3d12_0000_0053_v0_0_c_ifspec; -extern RPC_IF_HANDLE __MIDL_itf_d3d12_0000_0053_v0_0_s_ifspec; +#define ID3D12GraphicsCommandList7_ResolveSubresourceRegion(This,pDstResource,DstSubresource,DstX,DstY,pSrcResource,SrcSubresource,pSrcRect,Format,ResolveMode) \ + ( (This)->lpVtbl -> ResolveSubresourceRegion(This,pDstResource,DstSubresource,DstX,DstY,pSrcResource,SrcSubresource,pSrcRect,Format,ResolveMode) ) -#ifndef __ID3D12SDKConfiguration_INTERFACE_DEFINED__ -#define __ID3D12SDKConfiguration_INTERFACE_DEFINED__ +#define ID3D12GraphicsCommandList7_SetViewInstanceMask(This,Mask) \ + ( (This)->lpVtbl -> SetViewInstanceMask(This,Mask) ) -/* interface ID3D12SDKConfiguration */ -/* [unique][local][object][uuid] */ +#define ID3D12GraphicsCommandList7_WriteBufferImmediate(This,Count,pParams,pModes) \ + ( (This)->lpVtbl -> WriteBufferImmediate(This,Count,pParams,pModes) ) -EXTERN_C const IID IID_ID3D12SDKConfiguration; -#if defined(__cplusplus) && !defined(CINTERFACE) - - MIDL_INTERFACE("e9eb5314-33aa-42b2-a718-d77f58b1f1c7") - ID3D12SDKConfiguration : public IUnknown - { - public: - virtual HRESULT STDMETHODCALLTYPE SetSDKVersion( - UINT SDKVersion, - /* [annotation] */ - _In_z_ LPCSTR SDKPath) = 0; - - }; - - -#else /* C style interface */ +#define ID3D12GraphicsCommandList7_SetProtectedResourceSession(This,pProtectedResourceSession) \ + ( (This)->lpVtbl -> SetProtectedResourceSession(This,pProtectedResourceSession) ) - typedef struct ID3D12SDKConfigurationVtbl - { - BEGIN_INTERFACE - - DECLSPEC_XFGVIRT(IUnknown, QueryInterface) - HRESULT ( STDMETHODCALLTYPE *QueryInterface )( - ID3D12SDKConfiguration * This, - /* [annotation][in] */ - _In_ REFIID riid, - /* [annotation][iid_is][out] */ - _COM_Outptr_ void **ppvObject); - - DECLSPEC_XFGVIRT(IUnknown, AddRef) - ULONG ( STDMETHODCALLTYPE *AddRef )( - ID3D12SDKConfiguration * This); - - DECLSPEC_XFGVIRT(IUnknown, Release) - ULONG ( STDMETHODCALLTYPE *Release )( - ID3D12SDKConfiguration * This); - - DECLSPEC_XFGVIRT(ID3D12SDKConfiguration, SetSDKVersion) - HRESULT ( STDMETHODCALLTYPE *SetSDKVersion )( - ID3D12SDKConfiguration * This, - UINT SDKVersion, - /* [annotation] */ - _In_z_ LPCSTR SDKPath); - - END_INTERFACE - } ID3D12SDKConfigurationVtbl; - interface ID3D12SDKConfiguration - { - CONST_VTBL struct ID3D12SDKConfigurationVtbl *lpVtbl; - }; +#define ID3D12GraphicsCommandList7_BeginRenderPass(This,NumRenderTargets,pRenderTargets,pDepthStencil,Flags) \ + ( (This)->lpVtbl -> BeginRenderPass(This,NumRenderTargets,pRenderTargets,pDepthStencil,Flags) ) - +#define ID3D12GraphicsCommandList7_EndRenderPass(This) \ + ( (This)->lpVtbl -> EndRenderPass(This) ) -#ifdef COBJMACROS +#define ID3D12GraphicsCommandList7_InitializeMetaCommand(This,pMetaCommand,pInitializationParametersData,InitializationParametersDataSizeInBytes) \ + ( (This)->lpVtbl -> InitializeMetaCommand(This,pMetaCommand,pInitializationParametersData,InitializationParametersDataSizeInBytes) ) +#define ID3D12GraphicsCommandList7_ExecuteMetaCommand(This,pMetaCommand,pExecutionParametersData,ExecutionParametersDataSizeInBytes) \ + ( (This)->lpVtbl -> ExecuteMetaCommand(This,pMetaCommand,pExecutionParametersData,ExecutionParametersDataSizeInBytes) ) -#define ID3D12SDKConfiguration_QueryInterface(This,riid,ppvObject) \ - ( (This)->lpVtbl -> QueryInterface(This,riid,ppvObject) ) +#define ID3D12GraphicsCommandList7_BuildRaytracingAccelerationStructure(This,pDesc,NumPostbuildInfoDescs,pPostbuildInfoDescs) \ + ( (This)->lpVtbl -> BuildRaytracingAccelerationStructure(This,pDesc,NumPostbuildInfoDescs,pPostbuildInfoDescs) ) -#define ID3D12SDKConfiguration_AddRef(This) \ - ( (This)->lpVtbl -> AddRef(This) ) +#define ID3D12GraphicsCommandList7_EmitRaytracingAccelerationStructurePostbuildInfo(This,pDesc,NumSourceAccelerationStructures,pSourceAccelerationStructureData) \ + ( (This)->lpVtbl -> EmitRaytracingAccelerationStructurePostbuildInfo(This,pDesc,NumSourceAccelerationStructures,pSourceAccelerationStructureData) ) -#define ID3D12SDKConfiguration_Release(This) \ - ( (This)->lpVtbl -> Release(This) ) +#define ID3D12GraphicsCommandList7_CopyRaytracingAccelerationStructure(This,DestAccelerationStructureData,SourceAccelerationStructureData,Mode) \ + ( (This)->lpVtbl -> CopyRaytracingAccelerationStructure(This,DestAccelerationStructureData,SourceAccelerationStructureData,Mode) ) +#define ID3D12GraphicsCommandList7_SetPipelineState1(This,pStateObject) \ + ( (This)->lpVtbl -> SetPipelineState1(This,pStateObject) ) -#define ID3D12SDKConfiguration_SetSDKVersion(This,SDKVersion,SDKPath) \ - ( (This)->lpVtbl -> SetSDKVersion(This,SDKVersion,SDKPath) ) +#define ID3D12GraphicsCommandList7_DispatchRays(This,pDesc) \ + ( (This)->lpVtbl -> DispatchRays(This,pDesc) ) -#endif /* COBJMACROS */ +#define ID3D12GraphicsCommandList7_RSSetShadingRate(This,baseShadingRate,combiners) \ + ( (This)->lpVtbl -> RSSetShadingRate(This,baseShadingRate,combiners) ) -#endif /* C style interface */ +#define ID3D12GraphicsCommandList7_RSSetShadingRateImage(This,shadingRateImage) \ + ( (This)->lpVtbl -> RSSetShadingRateImage(This,shadingRateImage) ) +#define ID3D12GraphicsCommandList7_DispatchMesh(This,ThreadGroupCountX,ThreadGroupCountY,ThreadGroupCountZ) \ + ( (This)->lpVtbl -> DispatchMesh(This,ThreadGroupCountX,ThreadGroupCountY,ThreadGroupCountZ) ) -#endif /* __ID3D12SDKConfiguration_INTERFACE_DEFINED__ */ +#define ID3D12GraphicsCommandList7_Barrier(This,NumBarrierGroups,pBarrierGroups) \ + ( (This)->lpVtbl -> Barrier(This,NumBarrierGroups,pBarrierGroups) ) +#endif /* COBJMACROS */ -/* interface __MIDL_itf_d3d12_0000_0054 */ -/* [local] */ -typedef -enum D3D12_AXIS_SHADING_RATE - { - D3D12_AXIS_SHADING_RATE_1X = 0, - D3D12_AXIS_SHADING_RATE_2X = 0x1, - D3D12_AXIS_SHADING_RATE_4X = 0x2 - } D3D12_AXIS_SHADING_RATE; +#endif /* C style interface */ -#define D3D12_SHADING_RATE_X_AXIS_SHIFT 2 -#define D3D12_SHADING_RATE_VALID_MASK 3 -#define D3D12_MAKE_COARSE_SHADING_RATE(x,y) ((x) << D3D12_SHADING_RATE_X_AXIS_SHIFT | (y)) -#define D3D12_GET_COARSE_SHADING_RATE_X_AXIS(x) (((x) >> D3D12_SHADING_RATE_X_AXIS_SHIFT) & D3D12_SHADING_RATE_VALID_MASK) -#define D3D12_GET_COARSE_SHADING_RATE_Y_AXIS(y) ((y) & D3D12_SHADING_RATE_VALID_MASK) -typedef -enum D3D12_SHADING_RATE - { - D3D12_SHADING_RATE_1X1 = 0, - D3D12_SHADING_RATE_1X2 = 0x1, - D3D12_SHADING_RATE_2X1 = 0x4, - D3D12_SHADING_RATE_2X2 = 0x5, - D3D12_SHADING_RATE_2X4 = 0x6, - D3D12_SHADING_RATE_4X2 = 0x9, - D3D12_SHADING_RATE_4X4 = 0xa - } D3D12_SHADING_RATE; -typedef -enum D3D12_SHADING_RATE_COMBINER - { - D3D12_SHADING_RATE_COMBINER_PASSTHROUGH = 0, - D3D12_SHADING_RATE_COMBINER_OVERRIDE = 1, - D3D12_SHADING_RATE_COMBINER_MIN = 2, - D3D12_SHADING_RATE_COMBINER_MAX = 3, - D3D12_SHADING_RATE_COMBINER_SUM = 4 - } D3D12_SHADING_RATE_COMBINER; +#endif /* __ID3D12GraphicsCommandList7_INTERFACE_DEFINED__ */ -extern RPC_IF_HANDLE __MIDL_itf_d3d12_0000_0054_v0_0_c_ifspec; -extern RPC_IF_HANDLE __MIDL_itf_d3d12_0000_0054_v0_0_s_ifspec; -#ifndef __ID3D12GraphicsCommandList5_INTERFACE_DEFINED__ -#define __ID3D12GraphicsCommandList5_INTERFACE_DEFINED__ +#ifndef __ID3D12GraphicsCommandList8_INTERFACE_DEFINED__ +#define __ID3D12GraphicsCommandList8_INTERFACE_DEFINED__ -/* interface ID3D12GraphicsCommandList5 */ +/* interface ID3D12GraphicsCommandList8 */ /* [unique][local][object][uuid] */ -EXTERN_C const IID IID_ID3D12GraphicsCommandList5; +EXTERN_C const IID IID_ID3D12GraphicsCommandList8; #if defined(__cplusplus) && !defined(CINTERFACE) - MIDL_INTERFACE("55050859-4024-474c-87f5-6472eaee44ea") - ID3D12GraphicsCommandList5 : public ID3D12GraphicsCommandList4 + MIDL_INTERFACE("ee936ef9-599d-4d28-938e-23c4ad05ce51") + ID3D12GraphicsCommandList8 : public ID3D12GraphicsCommandList7 { public: - virtual void STDMETHODCALLTYPE RSSetShadingRate( - /* [annotation] */ - _In_ D3D12_SHADING_RATE baseShadingRate, - /* [annotation] */ - _In_reads_opt_(D3D12_RS_SET_SHADING_RATE_COMBINER_COUNT) const D3D12_SHADING_RATE_COMBINER *combiners) = 0; - - virtual void STDMETHODCALLTYPE RSSetShadingRateImage( - /* [annotation] */ - _In_opt_ ID3D12Resource *shadingRateImage) = 0; + virtual void STDMETHODCALLTYPE OMSetFrontAndBackStencilRef( + _In_ UINT FrontStencilRef, + _In_ UINT BackStencilRef) = 0; }; #else /* C style interface */ - typedef struct ID3D12GraphicsCommandList5Vtbl + typedef struct ID3D12GraphicsCommandList8Vtbl { BEGIN_INTERFACE DECLSPEC_XFGVIRT(IUnknown, QueryInterface) HRESULT ( STDMETHODCALLTYPE *QueryInterface )( - ID3D12GraphicsCommandList5 * This, - /* [annotation][in] */ - _In_ REFIID riid, - /* [annotation][iid_is][out] */ + ID3D12GraphicsCommandList8 * This, + REFIID riid, _COM_Outptr_ void **ppvObject); DECLSPEC_XFGVIRT(IUnknown, AddRef) ULONG ( STDMETHODCALLTYPE *AddRef )( - ID3D12GraphicsCommandList5 * This); + ID3D12GraphicsCommandList8 * This); DECLSPEC_XFGVIRT(IUnknown, Release) ULONG ( STDMETHODCALLTYPE *Release )( - ID3D12GraphicsCommandList5 * This); + ID3D12GraphicsCommandList8 * This); DECLSPEC_XFGVIRT(ID3D12Object, GetPrivateData) HRESULT ( STDMETHODCALLTYPE *GetPrivateData )( - ID3D12GraphicsCommandList5 * This, - /* [annotation] */ + ID3D12GraphicsCommandList8 * This, _In_ REFGUID guid, - /* [annotation] */ _Inout_ UINT *pDataSize, - /* [annotation] */ _Out_writes_bytes_opt_( *pDataSize ) void *pData); DECLSPEC_XFGVIRT(ID3D12Object, SetPrivateData) HRESULT ( STDMETHODCALLTYPE *SetPrivateData )( - ID3D12GraphicsCommandList5 * This, - /* [annotation] */ + ID3D12GraphicsCommandList8 * This, _In_ REFGUID guid, - /* [annotation] */ _In_ UINT DataSize, - /* [annotation] */ _In_reads_bytes_opt_( DataSize ) const void *pData); DECLSPEC_XFGVIRT(ID3D12Object, SetPrivateDataInterface) HRESULT ( STDMETHODCALLTYPE *SetPrivateDataInterface )( - ID3D12GraphicsCommandList5 * This, - /* [annotation] */ + ID3D12GraphicsCommandList8 * This, _In_ REFGUID guid, - /* [annotation] */ _In_opt_ const IUnknown *pData); DECLSPEC_XFGVIRT(ID3D12Object, SetName) HRESULT ( STDMETHODCALLTYPE *SetName )( - ID3D12GraphicsCommandList5 * This, - /* [annotation] */ + ID3D12GraphicsCommandList8 * This, _In_z_ LPCWSTR Name); DECLSPEC_XFGVIRT(ID3D12DeviceChild, GetDevice) HRESULT ( STDMETHODCALLTYPE *GetDevice )( - ID3D12GraphicsCommandList5 * This, - /* [annotation][in] */ - _In_ REFIID riid, - /* [annotation][iid_is][out] */ + ID3D12GraphicsCommandList8 * This, + REFIID riid, _COM_Outptr_opt_ void **ppvDevice); DECLSPEC_XFGVIRT(ID3D12CommandList, GetType) D3D12_COMMAND_LIST_TYPE ( STDMETHODCALLTYPE *GetType )( - ID3D12GraphicsCommandList5 * This); + ID3D12GraphicsCommandList8 * This); DECLSPEC_XFGVIRT(ID3D12GraphicsCommandList, Close) HRESULT ( STDMETHODCALLTYPE *Close )( - ID3D12GraphicsCommandList5 * This); + ID3D12GraphicsCommandList8 * This); DECLSPEC_XFGVIRT(ID3D12GraphicsCommandList, Reset) HRESULT ( STDMETHODCALLTYPE *Reset )( - ID3D12GraphicsCommandList5 * This, - /* [annotation] */ + ID3D12GraphicsCommandList8 * This, _In_ ID3D12CommandAllocator *pAllocator, - /* [annotation] */ _In_opt_ ID3D12PipelineState *pInitialState); DECLSPEC_XFGVIRT(ID3D12GraphicsCommandList, ClearState) void ( STDMETHODCALLTYPE *ClearState )( - ID3D12GraphicsCommandList5 * This, - /* [annotation] */ + ID3D12GraphicsCommandList8 * This, _In_opt_ ID3D12PipelineState *pPipelineState); DECLSPEC_XFGVIRT(ID3D12GraphicsCommandList, DrawInstanced) void ( STDMETHODCALLTYPE *DrawInstanced )( - ID3D12GraphicsCommandList5 * This, - /* [annotation] */ + ID3D12GraphicsCommandList8 * This, _In_ UINT VertexCountPerInstance, - /* [annotation] */ _In_ UINT InstanceCount, - /* [annotation] */ _In_ UINT StartVertexLocation, - /* [annotation] */ _In_ UINT StartInstanceLocation); DECLSPEC_XFGVIRT(ID3D12GraphicsCommandList, DrawIndexedInstanced) void ( STDMETHODCALLTYPE *DrawIndexedInstanced )( - ID3D12GraphicsCommandList5 * This, - /* [annotation] */ + ID3D12GraphicsCommandList8 * This, _In_ UINT IndexCountPerInstance, - /* [annotation] */ _In_ UINT InstanceCount, - /* [annotation] */ _In_ UINT StartIndexLocation, - /* [annotation] */ _In_ INT BaseVertexLocation, - /* [annotation] */ _In_ UINT StartInstanceLocation); DECLSPEC_XFGVIRT(ID3D12GraphicsCommandList, Dispatch) void ( STDMETHODCALLTYPE *Dispatch )( - ID3D12GraphicsCommandList5 * This, - /* [annotation] */ + ID3D12GraphicsCommandList8 * This, _In_ UINT ThreadGroupCountX, - /* [annotation] */ _In_ UINT ThreadGroupCountY, - /* [annotation] */ _In_ UINT ThreadGroupCountZ); DECLSPEC_XFGVIRT(ID3D12GraphicsCommandList, CopyBufferRegion) void ( STDMETHODCALLTYPE *CopyBufferRegion )( - ID3D12GraphicsCommandList5 * This, - /* [annotation] */ + ID3D12GraphicsCommandList8 * This, _In_ ID3D12Resource *pDstBuffer, UINT64 DstOffset, - /* [annotation] */ _In_ ID3D12Resource *pSrcBuffer, UINT64 SrcOffset, UINT64 NumBytes); DECLSPEC_XFGVIRT(ID3D12GraphicsCommandList, CopyTextureRegion) void ( STDMETHODCALLTYPE *CopyTextureRegion )( - ID3D12GraphicsCommandList5 * This, - /* [annotation] */ + ID3D12GraphicsCommandList8 * This, _In_ const D3D12_TEXTURE_COPY_LOCATION *pDst, UINT DstX, UINT DstY, UINT DstZ, - /* [annotation] */ _In_ const D3D12_TEXTURE_COPY_LOCATION *pSrc, - /* [annotation] */ _In_opt_ const D3D12_BOX *pSrcBox); DECLSPEC_XFGVIRT(ID3D12GraphicsCommandList, CopyResource) void ( STDMETHODCALLTYPE *CopyResource )( - ID3D12GraphicsCommandList5 * This, - /* [annotation] */ + ID3D12GraphicsCommandList8 * This, _In_ ID3D12Resource *pDstResource, - /* [annotation] */ _In_ ID3D12Resource *pSrcResource); DECLSPEC_XFGVIRT(ID3D12GraphicsCommandList, CopyTiles) void ( STDMETHODCALLTYPE *CopyTiles )( - ID3D12GraphicsCommandList5 * This, - /* [annotation] */ + ID3D12GraphicsCommandList8 * This, _In_ ID3D12Resource *pTiledResource, - /* [annotation] */ _In_ const D3D12_TILED_RESOURCE_COORDINATE *pTileRegionStartCoordinate, - /* [annotation] */ _In_ const D3D12_TILE_REGION_SIZE *pTileRegionSize, - /* [annotation] */ _In_ ID3D12Resource *pBuffer, UINT64 BufferStartOffsetInBytes, D3D12_TILE_COPY_FLAGS Flags); DECLSPEC_XFGVIRT(ID3D12GraphicsCommandList, ResolveSubresource) void ( STDMETHODCALLTYPE *ResolveSubresource )( - ID3D12GraphicsCommandList5 * This, - /* [annotation] */ + ID3D12GraphicsCommandList8 * This, _In_ ID3D12Resource *pDstResource, - /* [annotation] */ _In_ UINT DstSubresource, - /* [annotation] */ _In_ ID3D12Resource *pSrcResource, - /* [annotation] */ _In_ UINT SrcSubresource, - /* [annotation] */ _In_ DXGI_FORMAT Format); DECLSPEC_XFGVIRT(ID3D12GraphicsCommandList, IASetPrimitiveTopology) void ( STDMETHODCALLTYPE *IASetPrimitiveTopology )( - ID3D12GraphicsCommandList5 * This, - /* [annotation] */ + ID3D12GraphicsCommandList8 * This, _In_ D3D12_PRIMITIVE_TOPOLOGY PrimitiveTopology); DECLSPEC_XFGVIRT(ID3D12GraphicsCommandList, RSSetViewports) void ( STDMETHODCALLTYPE *RSSetViewports )( - ID3D12GraphicsCommandList5 * This, - /* [annotation] */ + ID3D12GraphicsCommandList8 * This, _In_range_(0, D3D12_VIEWPORT_AND_SCISSORRECT_OBJECT_COUNT_PER_PIPELINE) UINT NumViewports, - /* [annotation] */ _In_reads_( NumViewports) const D3D12_VIEWPORT *pViewports); DECLSPEC_XFGVIRT(ID3D12GraphicsCommandList, RSSetScissorRects) void ( STDMETHODCALLTYPE *RSSetScissorRects )( - ID3D12GraphicsCommandList5 * This, - /* [annotation] */ + ID3D12GraphicsCommandList8 * This, _In_range_(0, D3D12_VIEWPORT_AND_SCISSORRECT_OBJECT_COUNT_PER_PIPELINE) UINT NumRects, - /* [annotation] */ _In_reads_( NumRects) const D3D12_RECT *pRects); DECLSPEC_XFGVIRT(ID3D12GraphicsCommandList, OMSetBlendFactor) void ( STDMETHODCALLTYPE *OMSetBlendFactor )( - ID3D12GraphicsCommandList5 * This, - /* [annotation] */ + ID3D12GraphicsCommandList8 * This, _In_reads_opt_(4) const FLOAT BlendFactor[ 4 ]); DECLSPEC_XFGVIRT(ID3D12GraphicsCommandList, OMSetStencilRef) void ( STDMETHODCALLTYPE *OMSetStencilRef )( - ID3D12GraphicsCommandList5 * This, - /* [annotation] */ + ID3D12GraphicsCommandList8 * This, _In_ UINT StencilRef); DECLSPEC_XFGVIRT(ID3D12GraphicsCommandList, SetPipelineState) void ( STDMETHODCALLTYPE *SetPipelineState )( - ID3D12GraphicsCommandList5 * This, - /* [annotation] */ + ID3D12GraphicsCommandList8 * This, _In_ ID3D12PipelineState *pPipelineState); DECLSPEC_XFGVIRT(ID3D12GraphicsCommandList, ResourceBarrier) void ( STDMETHODCALLTYPE *ResourceBarrier )( - ID3D12GraphicsCommandList5 * This, - /* [annotation] */ + ID3D12GraphicsCommandList8 * This, _In_ UINT NumBarriers, - /* [annotation] */ _In_reads_(NumBarriers) const D3D12_RESOURCE_BARRIER *pBarriers); DECLSPEC_XFGVIRT(ID3D12GraphicsCommandList, ExecuteBundle) void ( STDMETHODCALLTYPE *ExecuteBundle )( - ID3D12GraphicsCommandList5 * This, - /* [annotation] */ + ID3D12GraphicsCommandList8 * This, _In_ ID3D12GraphicsCommandList *pCommandList); DECLSPEC_XFGVIRT(ID3D12GraphicsCommandList, SetDescriptorHeaps) void ( STDMETHODCALLTYPE *SetDescriptorHeaps )( - ID3D12GraphicsCommandList5 * This, - /* [annotation] */ + ID3D12GraphicsCommandList8 * This, _In_ UINT NumDescriptorHeaps, - /* [annotation] */ _In_reads_(NumDescriptorHeaps) ID3D12DescriptorHeap *const *ppDescriptorHeaps); DECLSPEC_XFGVIRT(ID3D12GraphicsCommandList, SetComputeRootSignature) void ( STDMETHODCALLTYPE *SetComputeRootSignature )( - ID3D12GraphicsCommandList5 * This, - /* [annotation] */ + ID3D12GraphicsCommandList8 * This, _In_opt_ ID3D12RootSignature *pRootSignature); DECLSPEC_XFGVIRT(ID3D12GraphicsCommandList, SetGraphicsRootSignature) void ( STDMETHODCALLTYPE *SetGraphicsRootSignature )( - ID3D12GraphicsCommandList5 * This, - /* [annotation] */ + ID3D12GraphicsCommandList8 * This, _In_opt_ ID3D12RootSignature *pRootSignature); DECLSPEC_XFGVIRT(ID3D12GraphicsCommandList, SetComputeRootDescriptorTable) void ( STDMETHODCALLTYPE *SetComputeRootDescriptorTable )( - ID3D12GraphicsCommandList5 * This, - /* [annotation] */ + ID3D12GraphicsCommandList8 * This, _In_ UINT RootParameterIndex, - /* [annotation] */ _In_ D3D12_GPU_DESCRIPTOR_HANDLE BaseDescriptor); DECLSPEC_XFGVIRT(ID3D12GraphicsCommandList, SetGraphicsRootDescriptorTable) void ( STDMETHODCALLTYPE *SetGraphicsRootDescriptorTable )( - ID3D12GraphicsCommandList5 * This, - /* [annotation] */ + ID3D12GraphicsCommandList8 * This, _In_ UINT RootParameterIndex, - /* [annotation] */ _In_ D3D12_GPU_DESCRIPTOR_HANDLE BaseDescriptor); DECLSPEC_XFGVIRT(ID3D12GraphicsCommandList, SetComputeRoot32BitConstant) void ( STDMETHODCALLTYPE *SetComputeRoot32BitConstant )( - ID3D12GraphicsCommandList5 * This, - /* [annotation] */ + ID3D12GraphicsCommandList8 * This, _In_ UINT RootParameterIndex, - /* [annotation] */ _In_ UINT SrcData, - /* [annotation] */ _In_ UINT DestOffsetIn32BitValues); DECLSPEC_XFGVIRT(ID3D12GraphicsCommandList, SetGraphicsRoot32BitConstant) void ( STDMETHODCALLTYPE *SetGraphicsRoot32BitConstant )( - ID3D12GraphicsCommandList5 * This, - /* [annotation] */ + ID3D12GraphicsCommandList8 * This, _In_ UINT RootParameterIndex, - /* [annotation] */ _In_ UINT SrcData, - /* [annotation] */ _In_ UINT DestOffsetIn32BitValues); DECLSPEC_XFGVIRT(ID3D12GraphicsCommandList, SetComputeRoot32BitConstants) void ( STDMETHODCALLTYPE *SetComputeRoot32BitConstants )( - ID3D12GraphicsCommandList5 * This, - /* [annotation] */ + ID3D12GraphicsCommandList8 * This, _In_ UINT RootParameterIndex, - /* [annotation] */ _In_ UINT Num32BitValuesToSet, - /* [annotation] */ _In_reads_(Num32BitValuesToSet*sizeof(UINT)) const void *pSrcData, - /* [annotation] */ _In_ UINT DestOffsetIn32BitValues); DECLSPEC_XFGVIRT(ID3D12GraphicsCommandList, SetGraphicsRoot32BitConstants) void ( STDMETHODCALLTYPE *SetGraphicsRoot32BitConstants )( - ID3D12GraphicsCommandList5 * This, - /* [annotation] */ + ID3D12GraphicsCommandList8 * This, _In_ UINT RootParameterIndex, - /* [annotation] */ _In_ UINT Num32BitValuesToSet, - /* [annotation] */ _In_reads_(Num32BitValuesToSet*sizeof(UINT)) const void *pSrcData, - /* [annotation] */ _In_ UINT DestOffsetIn32BitValues); DECLSPEC_XFGVIRT(ID3D12GraphicsCommandList, SetComputeRootConstantBufferView) void ( STDMETHODCALLTYPE *SetComputeRootConstantBufferView )( - ID3D12GraphicsCommandList5 * This, - /* [annotation] */ + ID3D12GraphicsCommandList8 * This, _In_ UINT RootParameterIndex, - /* [annotation] */ _In_ D3D12_GPU_VIRTUAL_ADDRESS BufferLocation); DECLSPEC_XFGVIRT(ID3D12GraphicsCommandList, SetGraphicsRootConstantBufferView) void ( STDMETHODCALLTYPE *SetGraphicsRootConstantBufferView )( - ID3D12GraphicsCommandList5 * This, - /* [annotation] */ + ID3D12GraphicsCommandList8 * This, _In_ UINT RootParameterIndex, - /* [annotation] */ _In_ D3D12_GPU_VIRTUAL_ADDRESS BufferLocation); DECLSPEC_XFGVIRT(ID3D12GraphicsCommandList, SetComputeRootShaderResourceView) void ( STDMETHODCALLTYPE *SetComputeRootShaderResourceView )( - ID3D12GraphicsCommandList5 * This, - /* [annotation] */ + ID3D12GraphicsCommandList8 * This, _In_ UINT RootParameterIndex, - /* [annotation] */ _In_ D3D12_GPU_VIRTUAL_ADDRESS BufferLocation); DECLSPEC_XFGVIRT(ID3D12GraphicsCommandList, SetGraphicsRootShaderResourceView) void ( STDMETHODCALLTYPE *SetGraphicsRootShaderResourceView )( - ID3D12GraphicsCommandList5 * This, - /* [annotation] */ + ID3D12GraphicsCommandList8 * This, _In_ UINT RootParameterIndex, - /* [annotation] */ _In_ D3D12_GPU_VIRTUAL_ADDRESS BufferLocation); DECLSPEC_XFGVIRT(ID3D12GraphicsCommandList, SetComputeRootUnorderedAccessView) void ( STDMETHODCALLTYPE *SetComputeRootUnorderedAccessView )( - ID3D12GraphicsCommandList5 * This, - /* [annotation] */ + ID3D12GraphicsCommandList8 * This, _In_ UINT RootParameterIndex, - /* [annotation] */ _In_ D3D12_GPU_VIRTUAL_ADDRESS BufferLocation); DECLSPEC_XFGVIRT(ID3D12GraphicsCommandList, SetGraphicsRootUnorderedAccessView) void ( STDMETHODCALLTYPE *SetGraphicsRootUnorderedAccessView )( - ID3D12GraphicsCommandList5 * This, - /* [annotation] */ + ID3D12GraphicsCommandList8 * This, _In_ UINT RootParameterIndex, - /* [annotation] */ _In_ D3D12_GPU_VIRTUAL_ADDRESS BufferLocation); DECLSPEC_XFGVIRT(ID3D12GraphicsCommandList, IASetIndexBuffer) void ( STDMETHODCALLTYPE *IASetIndexBuffer )( - ID3D12GraphicsCommandList5 * This, - /* [annotation] */ + ID3D12GraphicsCommandList8 * This, _In_opt_ const D3D12_INDEX_BUFFER_VIEW *pView); DECLSPEC_XFGVIRT(ID3D12GraphicsCommandList, IASetVertexBuffers) void ( STDMETHODCALLTYPE *IASetVertexBuffers )( - ID3D12GraphicsCommandList5 * This, - /* [annotation] */ + ID3D12GraphicsCommandList8 * This, _In_ UINT StartSlot, - /* [annotation] */ _In_ UINT NumViews, - /* [annotation] */ _In_reads_opt_(NumViews) const D3D12_VERTEX_BUFFER_VIEW *pViews); DECLSPEC_XFGVIRT(ID3D12GraphicsCommandList, SOSetTargets) void ( STDMETHODCALLTYPE *SOSetTargets )( - ID3D12GraphicsCommandList5 * This, - /* [annotation] */ + ID3D12GraphicsCommandList8 * This, _In_ UINT StartSlot, - /* [annotation] */ _In_ UINT NumViews, - /* [annotation] */ _In_reads_opt_(NumViews) const D3D12_STREAM_OUTPUT_BUFFER_VIEW *pViews); DECLSPEC_XFGVIRT(ID3D12GraphicsCommandList, OMSetRenderTargets) void ( STDMETHODCALLTYPE *OMSetRenderTargets )( - ID3D12GraphicsCommandList5 * This, - /* [annotation] */ + ID3D12GraphicsCommandList8 * This, _In_ UINT NumRenderTargetDescriptors, - /* [annotation] */ _In_opt_ const D3D12_CPU_DESCRIPTOR_HANDLE *pRenderTargetDescriptors, - /* [annotation] */ _In_ BOOL RTsSingleHandleToDescriptorRange, - /* [annotation] */ _In_opt_ const D3D12_CPU_DESCRIPTOR_HANDLE *pDepthStencilDescriptor); DECLSPEC_XFGVIRT(ID3D12GraphicsCommandList, ClearDepthStencilView) void ( STDMETHODCALLTYPE *ClearDepthStencilView )( - ID3D12GraphicsCommandList5 * This, - /* [annotation] */ + ID3D12GraphicsCommandList8 * This, _In_ D3D12_CPU_DESCRIPTOR_HANDLE DepthStencilView, - /* [annotation] */ _In_ D3D12_CLEAR_FLAGS ClearFlags, - /* [annotation] */ _In_ FLOAT Depth, - /* [annotation] */ _In_ UINT8 Stencil, - /* [annotation] */ _In_ UINT NumRects, - /* [annotation] */ _In_reads_(NumRects) const D3D12_RECT *pRects); DECLSPEC_XFGVIRT(ID3D12GraphicsCommandList, ClearRenderTargetView) void ( STDMETHODCALLTYPE *ClearRenderTargetView )( - ID3D12GraphicsCommandList5 * This, - /* [annotation] */ + ID3D12GraphicsCommandList8 * This, _In_ D3D12_CPU_DESCRIPTOR_HANDLE RenderTargetView, - /* [annotation] */ _In_ const FLOAT ColorRGBA[ 4 ], - /* [annotation] */ _In_ UINT NumRects, - /* [annotation] */ _In_reads_(NumRects) const D3D12_RECT *pRects); DECLSPEC_XFGVIRT(ID3D12GraphicsCommandList, ClearUnorderedAccessViewUint) void ( STDMETHODCALLTYPE *ClearUnorderedAccessViewUint )( - ID3D12GraphicsCommandList5 * This, - /* [annotation] */ + ID3D12GraphicsCommandList8 * This, _In_ D3D12_GPU_DESCRIPTOR_HANDLE ViewGPUHandleInCurrentHeap, - /* [annotation] */ _In_ D3D12_CPU_DESCRIPTOR_HANDLE ViewCPUHandle, - /* [annotation] */ _In_ ID3D12Resource *pResource, - /* [annotation] */ _In_ const UINT Values[ 4 ], - /* [annotation] */ _In_ UINT NumRects, - /* [annotation] */ _In_reads_(NumRects) const D3D12_RECT *pRects); DECLSPEC_XFGVIRT(ID3D12GraphicsCommandList, ClearUnorderedAccessViewFloat) void ( STDMETHODCALLTYPE *ClearUnorderedAccessViewFloat )( - ID3D12GraphicsCommandList5 * This, - /* [annotation] */ + ID3D12GraphicsCommandList8 * This, _In_ D3D12_GPU_DESCRIPTOR_HANDLE ViewGPUHandleInCurrentHeap, - /* [annotation] */ _In_ D3D12_CPU_DESCRIPTOR_HANDLE ViewCPUHandle, - /* [annotation] */ _In_ ID3D12Resource *pResource, - /* [annotation] */ _In_ const FLOAT Values[ 4 ], - /* [annotation] */ _In_ UINT NumRects, - /* [annotation] */ _In_reads_(NumRects) const D3D12_RECT *pRects); DECLSPEC_XFGVIRT(ID3D12GraphicsCommandList, DiscardResource) void ( STDMETHODCALLTYPE *DiscardResource )( - ID3D12GraphicsCommandList5 * This, - /* [annotation] */ + ID3D12GraphicsCommandList8 * This, _In_ ID3D12Resource *pResource, - /* [annotation] */ _In_opt_ const D3D12_DISCARD_REGION *pRegion); DECLSPEC_XFGVIRT(ID3D12GraphicsCommandList, BeginQuery) void ( STDMETHODCALLTYPE *BeginQuery )( - ID3D12GraphicsCommandList5 * This, - /* [annotation] */ + ID3D12GraphicsCommandList8 * This, _In_ ID3D12QueryHeap *pQueryHeap, - /* [annotation] */ _In_ D3D12_QUERY_TYPE Type, - /* [annotation] */ _In_ UINT Index); DECLSPEC_XFGVIRT(ID3D12GraphicsCommandList, EndQuery) void ( STDMETHODCALLTYPE *EndQuery )( - ID3D12GraphicsCommandList5 * This, - /* [annotation] */ + ID3D12GraphicsCommandList8 * This, _In_ ID3D12QueryHeap *pQueryHeap, - /* [annotation] */ _In_ D3D12_QUERY_TYPE Type, - /* [annotation] */ _In_ UINT Index); DECLSPEC_XFGVIRT(ID3D12GraphicsCommandList, ResolveQueryData) void ( STDMETHODCALLTYPE *ResolveQueryData )( - ID3D12GraphicsCommandList5 * This, - /* [annotation] */ + ID3D12GraphicsCommandList8 * This, _In_ ID3D12QueryHeap *pQueryHeap, - /* [annotation] */ _In_ D3D12_QUERY_TYPE Type, - /* [annotation] */ _In_ UINT StartIndex, - /* [annotation] */ _In_ UINT NumQueries, - /* [annotation] */ _In_ ID3D12Resource *pDestinationBuffer, - /* [annotation] */ _In_ UINT64 AlignedDestinationBufferOffset); DECLSPEC_XFGVIRT(ID3D12GraphicsCommandList, SetPredication) void ( STDMETHODCALLTYPE *SetPredication )( - ID3D12GraphicsCommandList5 * This, - /* [annotation] */ + ID3D12GraphicsCommandList8 * This, _In_opt_ ID3D12Resource *pBuffer, - /* [annotation] */ _In_ UINT64 AlignedBufferOffset, - /* [annotation] */ _In_ D3D12_PREDICATION_OP Operation); DECLSPEC_XFGVIRT(ID3D12GraphicsCommandList, SetMarker) void ( STDMETHODCALLTYPE *SetMarker )( - ID3D12GraphicsCommandList5 * This, + ID3D12GraphicsCommandList8 * This, UINT Metadata, - /* [annotation] */ _In_reads_bytes_opt_(Size) const void *pData, UINT Size); DECLSPEC_XFGVIRT(ID3D12GraphicsCommandList, BeginEvent) void ( STDMETHODCALLTYPE *BeginEvent )( - ID3D12GraphicsCommandList5 * This, + ID3D12GraphicsCommandList8 * This, UINT Metadata, - /* [annotation] */ _In_reads_bytes_opt_(Size) const void *pData, UINT Size); DECLSPEC_XFGVIRT(ID3D12GraphicsCommandList, EndEvent) void ( STDMETHODCALLTYPE *EndEvent )( - ID3D12GraphicsCommandList5 * This); + ID3D12GraphicsCommandList8 * This); DECLSPEC_XFGVIRT(ID3D12GraphicsCommandList, ExecuteIndirect) void ( STDMETHODCALLTYPE *ExecuteIndirect )( - ID3D12GraphicsCommandList5 * This, - /* [annotation] */ + ID3D12GraphicsCommandList8 * This, _In_ ID3D12CommandSignature *pCommandSignature, - /* [annotation] */ _In_ UINT MaxCommandCount, - /* [annotation] */ _In_ ID3D12Resource *pArgumentBuffer, - /* [annotation] */ _In_ UINT64 ArgumentBufferOffset, - /* [annotation] */ _In_opt_ ID3D12Resource *pCountBuffer, - /* [annotation] */ _In_ UINT64 CountBufferOffset); DECLSPEC_XFGVIRT(ID3D12GraphicsCommandList1, AtomicCopyBufferUINT) void ( STDMETHODCALLTYPE *AtomicCopyBufferUINT )( - ID3D12GraphicsCommandList5 * This, - /* [annotation] */ + ID3D12GraphicsCommandList8 * This, _In_ ID3D12Resource *pDstBuffer, UINT64 DstOffset, - /* [annotation] */ _In_ ID3D12Resource *pSrcBuffer, UINT64 SrcOffset, UINT Dependencies, - /* [annotation] */ _In_reads_(Dependencies) ID3D12Resource *const *ppDependentResources, - /* [annotation] */ _In_reads_(Dependencies) const D3D12_SUBRESOURCE_RANGE_UINT64 *pDependentSubresourceRanges); DECLSPEC_XFGVIRT(ID3D12GraphicsCommandList1, AtomicCopyBufferUINT64) void ( STDMETHODCALLTYPE *AtomicCopyBufferUINT64 )( - ID3D12GraphicsCommandList5 * This, - /* [annotation] */ + ID3D12GraphicsCommandList8 * This, _In_ ID3D12Resource *pDstBuffer, UINT64 DstOffset, - /* [annotation] */ _In_ ID3D12Resource *pSrcBuffer, UINT64 SrcOffset, UINT Dependencies, - /* [annotation] */ _In_reads_(Dependencies) ID3D12Resource *const *ppDependentResources, - /* [annotation] */ _In_reads_(Dependencies) const D3D12_SUBRESOURCE_RANGE_UINT64 *pDependentSubresourceRanges); DECLSPEC_XFGVIRT(ID3D12GraphicsCommandList1, OMSetDepthBounds) void ( STDMETHODCALLTYPE *OMSetDepthBounds )( - ID3D12GraphicsCommandList5 * This, - /* [annotation] */ + ID3D12GraphicsCommandList8 * This, _In_ FLOAT Min, - /* [annotation] */ _In_ FLOAT Max); DECLSPEC_XFGVIRT(ID3D12GraphicsCommandList1, SetSamplePositions) void ( STDMETHODCALLTYPE *SetSamplePositions )( - ID3D12GraphicsCommandList5 * This, - /* [annotation] */ + ID3D12GraphicsCommandList8 * This, _In_ UINT NumSamplesPerPixel, - /* [annotation] */ _In_ UINT NumPixels, - /* [annotation] */ _In_reads_(NumSamplesPerPixel*NumPixels) D3D12_SAMPLE_POSITION *pSamplePositions); DECLSPEC_XFGVIRT(ID3D12GraphicsCommandList1, ResolveSubresourceRegion) void ( STDMETHODCALLTYPE *ResolveSubresourceRegion )( - ID3D12GraphicsCommandList5 * This, - /* [annotation] */ + ID3D12GraphicsCommandList8 * This, _In_ ID3D12Resource *pDstResource, - /* [annotation] */ _In_ UINT DstSubresource, - /* [annotation] */ _In_ UINT DstX, - /* [annotation] */ _In_ UINT DstY, - /* [annotation] */ _In_ ID3D12Resource *pSrcResource, - /* [annotation] */ _In_ UINT SrcSubresource, - /* [annotation] */ _In_opt_ D3D12_RECT *pSrcRect, - /* [annotation] */ _In_ DXGI_FORMAT Format, - /* [annotation] */ _In_ D3D12_RESOLVE_MODE ResolveMode); DECLSPEC_XFGVIRT(ID3D12GraphicsCommandList1, SetViewInstanceMask) void ( STDMETHODCALLTYPE *SetViewInstanceMask )( - ID3D12GraphicsCommandList5 * This, - /* [annotation] */ + ID3D12GraphicsCommandList8 * This, _In_ UINT Mask); DECLSPEC_XFGVIRT(ID3D12GraphicsCommandList2, WriteBufferImmediate) void ( STDMETHODCALLTYPE *WriteBufferImmediate )( - ID3D12GraphicsCommandList5 * This, + ID3D12GraphicsCommandList8 * This, UINT Count, - /* [annotation] */ _In_reads_(Count) const D3D12_WRITEBUFFERIMMEDIATE_PARAMETER *pParams, - /* [annotation] */ _In_reads_opt_(Count) const D3D12_WRITEBUFFERIMMEDIATE_MODE *pModes); DECLSPEC_XFGVIRT(ID3D12GraphicsCommandList3, SetProtectedResourceSession) void ( STDMETHODCALLTYPE *SetProtectedResourceSession )( - ID3D12GraphicsCommandList5 * This, - /* [annotation] */ + ID3D12GraphicsCommandList8 * This, _In_opt_ ID3D12ProtectedResourceSession *pProtectedResourceSession); DECLSPEC_XFGVIRT(ID3D12GraphicsCommandList4, BeginRenderPass) void ( STDMETHODCALLTYPE *BeginRenderPass )( - ID3D12GraphicsCommandList5 * This, - /* [annotation] */ + ID3D12GraphicsCommandList8 * This, _In_ UINT NumRenderTargets, - /* [annotation] */ _In_reads_opt_(NumRenderTargets) const D3D12_RENDER_PASS_RENDER_TARGET_DESC *pRenderTargets, - /* [annotation] */ _In_opt_ const D3D12_RENDER_PASS_DEPTH_STENCIL_DESC *pDepthStencil, D3D12_RENDER_PASS_FLAGS Flags); DECLSPEC_XFGVIRT(ID3D12GraphicsCommandList4, EndRenderPass) void ( STDMETHODCALLTYPE *EndRenderPass )( - ID3D12GraphicsCommandList5 * This); + ID3D12GraphicsCommandList8 * This); DECLSPEC_XFGVIRT(ID3D12GraphicsCommandList4, InitializeMetaCommand) void ( STDMETHODCALLTYPE *InitializeMetaCommand )( - ID3D12GraphicsCommandList5 * This, - /* [annotation] */ + ID3D12GraphicsCommandList8 * This, _In_ ID3D12MetaCommand *pMetaCommand, - /* [annotation] */ _In_reads_bytes_opt_(InitializationParametersDataSizeInBytes) const void *pInitializationParametersData, - /* [annotation] */ _In_ SIZE_T InitializationParametersDataSizeInBytes); DECLSPEC_XFGVIRT(ID3D12GraphicsCommandList4, ExecuteMetaCommand) void ( STDMETHODCALLTYPE *ExecuteMetaCommand )( - ID3D12GraphicsCommandList5 * This, - /* [annotation] */ + ID3D12GraphicsCommandList8 * This, _In_ ID3D12MetaCommand *pMetaCommand, - /* [annotation] */ _In_reads_bytes_opt_(ExecutionParametersDataSizeInBytes) const void *pExecutionParametersData, - /* [annotation] */ _In_ SIZE_T ExecutionParametersDataSizeInBytes); DECLSPEC_XFGVIRT(ID3D12GraphicsCommandList4, BuildRaytracingAccelerationStructure) void ( STDMETHODCALLTYPE *BuildRaytracingAccelerationStructure )( - ID3D12GraphicsCommandList5 * This, - /* [annotation] */ + ID3D12GraphicsCommandList8 * This, _In_ const D3D12_BUILD_RAYTRACING_ACCELERATION_STRUCTURE_DESC *pDesc, - /* [annotation] */ _In_ UINT NumPostbuildInfoDescs, - /* [annotation] */ _In_reads_opt_(NumPostbuildInfoDescs) const D3D12_RAYTRACING_ACCELERATION_STRUCTURE_POSTBUILD_INFO_DESC *pPostbuildInfoDescs); DECLSPEC_XFGVIRT(ID3D12GraphicsCommandList4, EmitRaytracingAccelerationStructurePostbuildInfo) void ( STDMETHODCALLTYPE *EmitRaytracingAccelerationStructurePostbuildInfo )( - ID3D12GraphicsCommandList5 * This, - /* [annotation] */ + ID3D12GraphicsCommandList8 * This, _In_ const D3D12_RAYTRACING_ACCELERATION_STRUCTURE_POSTBUILD_INFO_DESC *pDesc, - /* [annotation] */ _In_ UINT NumSourceAccelerationStructures, - /* [annotation] */ _In_reads_( NumSourceAccelerationStructures ) const D3D12_GPU_VIRTUAL_ADDRESS *pSourceAccelerationStructureData); DECLSPEC_XFGVIRT(ID3D12GraphicsCommandList4, CopyRaytracingAccelerationStructure) void ( STDMETHODCALLTYPE *CopyRaytracingAccelerationStructure )( - ID3D12GraphicsCommandList5 * This, - /* [annotation] */ + ID3D12GraphicsCommandList8 * This, _In_ D3D12_GPU_VIRTUAL_ADDRESS DestAccelerationStructureData, - /* [annotation] */ _In_ D3D12_GPU_VIRTUAL_ADDRESS SourceAccelerationStructureData, - /* [annotation] */ _In_ D3D12_RAYTRACING_ACCELERATION_STRUCTURE_COPY_MODE Mode); DECLSPEC_XFGVIRT(ID3D12GraphicsCommandList4, SetPipelineState1) void ( STDMETHODCALLTYPE *SetPipelineState1 )( - ID3D12GraphicsCommandList5 * This, - /* [annotation] */ + ID3D12GraphicsCommandList8 * This, _In_ ID3D12StateObject *pStateObject); DECLSPEC_XFGVIRT(ID3D12GraphicsCommandList4, DispatchRays) void ( STDMETHODCALLTYPE *DispatchRays )( - ID3D12GraphicsCommandList5 * This, - /* [annotation] */ + ID3D12GraphicsCommandList8 * This, _In_ const D3D12_DISPATCH_RAYS_DESC *pDesc); DECLSPEC_XFGVIRT(ID3D12GraphicsCommandList5, RSSetShadingRate) void ( STDMETHODCALLTYPE *RSSetShadingRate )( - ID3D12GraphicsCommandList5 * This, - /* [annotation] */ + ID3D12GraphicsCommandList8 * This, _In_ D3D12_SHADING_RATE baseShadingRate, - /* [annotation] */ _In_reads_opt_(D3D12_RS_SET_SHADING_RATE_COMBINER_COUNT) const D3D12_SHADING_RATE_COMBINER *combiners); DECLSPEC_XFGVIRT(ID3D12GraphicsCommandList5, RSSetShadingRateImage) void ( STDMETHODCALLTYPE *RSSetShadingRateImage )( - ID3D12GraphicsCommandList5 * This, - /* [annotation] */ + ID3D12GraphicsCommandList8 * This, _In_opt_ ID3D12Resource *shadingRateImage); + DECLSPEC_XFGVIRT(ID3D12GraphicsCommandList6, DispatchMesh) + void ( STDMETHODCALLTYPE *DispatchMesh )( + ID3D12GraphicsCommandList8 * This, + _In_ UINT ThreadGroupCountX, + _In_ UINT ThreadGroupCountY, + _In_ UINT ThreadGroupCountZ); + + DECLSPEC_XFGVIRT(ID3D12GraphicsCommandList7, Barrier) + void ( STDMETHODCALLTYPE *Barrier )( + ID3D12GraphicsCommandList8 * This, + UINT32 NumBarrierGroups, + _In_reads_(NumBarrierGroups) const D3D12_BARRIER_GROUP *pBarrierGroups); + + DECLSPEC_XFGVIRT(ID3D12GraphicsCommandList8, OMSetFrontAndBackStencilRef) + void ( STDMETHODCALLTYPE *OMSetFrontAndBackStencilRef )( + ID3D12GraphicsCommandList8 * This, + _In_ UINT FrontStencilRef, + _In_ UINT BackStencilRef); + END_INTERFACE - } ID3D12GraphicsCommandList5Vtbl; + } ID3D12GraphicsCommandList8Vtbl; - interface ID3D12GraphicsCommandList5 + interface ID3D12GraphicsCommandList8 { - CONST_VTBL struct ID3D12GraphicsCommandList5Vtbl *lpVtbl; + CONST_VTBL struct ID3D12GraphicsCommandList8Vtbl *lpVtbl; }; @@ -25910,1054 +28381,876 @@ EXTERN_C const IID IID_ID3D12GraphicsCommandList5; #ifdef COBJMACROS -#define ID3D12GraphicsCommandList5_QueryInterface(This,riid,ppvObject) \ +#define ID3D12GraphicsCommandList8_QueryInterface(This,riid,ppvObject) \ ( (This)->lpVtbl -> QueryInterface(This,riid,ppvObject) ) -#define ID3D12GraphicsCommandList5_AddRef(This) \ +#define ID3D12GraphicsCommandList8_AddRef(This) \ ( (This)->lpVtbl -> AddRef(This) ) -#define ID3D12GraphicsCommandList5_Release(This) \ +#define ID3D12GraphicsCommandList8_Release(This) \ ( (This)->lpVtbl -> Release(This) ) -#define ID3D12GraphicsCommandList5_GetPrivateData(This,guid,pDataSize,pData) \ +#define ID3D12GraphicsCommandList8_GetPrivateData(This,guid,pDataSize,pData) \ ( (This)->lpVtbl -> GetPrivateData(This,guid,pDataSize,pData) ) -#define ID3D12GraphicsCommandList5_SetPrivateData(This,guid,DataSize,pData) \ +#define ID3D12GraphicsCommandList8_SetPrivateData(This,guid,DataSize,pData) \ ( (This)->lpVtbl -> SetPrivateData(This,guid,DataSize,pData) ) -#define ID3D12GraphicsCommandList5_SetPrivateDataInterface(This,guid,pData) \ +#define ID3D12GraphicsCommandList8_SetPrivateDataInterface(This,guid,pData) \ ( (This)->lpVtbl -> SetPrivateDataInterface(This,guid,pData) ) -#define ID3D12GraphicsCommandList5_SetName(This,Name) \ +#define ID3D12GraphicsCommandList8_SetName(This,Name) \ ( (This)->lpVtbl -> SetName(This,Name) ) -#define ID3D12GraphicsCommandList5_GetDevice(This,riid,ppvDevice) \ +#define ID3D12GraphicsCommandList8_GetDevice(This,riid,ppvDevice) \ ( (This)->lpVtbl -> GetDevice(This,riid,ppvDevice) ) -#define ID3D12GraphicsCommandList5_GetType(This) \ +#define ID3D12GraphicsCommandList8_GetType(This) \ ( (This)->lpVtbl -> GetType(This) ) -#define ID3D12GraphicsCommandList5_Close(This) \ +#define ID3D12GraphicsCommandList8_Close(This) \ ( (This)->lpVtbl -> Close(This) ) -#define ID3D12GraphicsCommandList5_Reset(This,pAllocator,pInitialState) \ +#define ID3D12GraphicsCommandList8_Reset(This,pAllocator,pInitialState) \ ( (This)->lpVtbl -> Reset(This,pAllocator,pInitialState) ) -#define ID3D12GraphicsCommandList5_ClearState(This,pPipelineState) \ +#define ID3D12GraphicsCommandList8_ClearState(This,pPipelineState) \ ( (This)->lpVtbl -> ClearState(This,pPipelineState) ) -#define ID3D12GraphicsCommandList5_DrawInstanced(This,VertexCountPerInstance,InstanceCount,StartVertexLocation,StartInstanceLocation) \ +#define ID3D12GraphicsCommandList8_DrawInstanced(This,VertexCountPerInstance,InstanceCount,StartVertexLocation,StartInstanceLocation) \ ( (This)->lpVtbl -> DrawInstanced(This,VertexCountPerInstance,InstanceCount,StartVertexLocation,StartInstanceLocation) ) -#define ID3D12GraphicsCommandList5_DrawIndexedInstanced(This,IndexCountPerInstance,InstanceCount,StartIndexLocation,BaseVertexLocation,StartInstanceLocation) \ +#define ID3D12GraphicsCommandList8_DrawIndexedInstanced(This,IndexCountPerInstance,InstanceCount,StartIndexLocation,BaseVertexLocation,StartInstanceLocation) \ ( (This)->lpVtbl -> DrawIndexedInstanced(This,IndexCountPerInstance,InstanceCount,StartIndexLocation,BaseVertexLocation,StartInstanceLocation) ) -#define ID3D12GraphicsCommandList5_Dispatch(This,ThreadGroupCountX,ThreadGroupCountY,ThreadGroupCountZ) \ +#define ID3D12GraphicsCommandList8_Dispatch(This,ThreadGroupCountX,ThreadGroupCountY,ThreadGroupCountZ) \ ( (This)->lpVtbl -> Dispatch(This,ThreadGroupCountX,ThreadGroupCountY,ThreadGroupCountZ) ) -#define ID3D12GraphicsCommandList5_CopyBufferRegion(This,pDstBuffer,DstOffset,pSrcBuffer,SrcOffset,NumBytes) \ +#define ID3D12GraphicsCommandList8_CopyBufferRegion(This,pDstBuffer,DstOffset,pSrcBuffer,SrcOffset,NumBytes) \ ( (This)->lpVtbl -> CopyBufferRegion(This,pDstBuffer,DstOffset,pSrcBuffer,SrcOffset,NumBytes) ) -#define ID3D12GraphicsCommandList5_CopyTextureRegion(This,pDst,DstX,DstY,DstZ,pSrc,pSrcBox) \ +#define ID3D12GraphicsCommandList8_CopyTextureRegion(This,pDst,DstX,DstY,DstZ,pSrc,pSrcBox) \ ( (This)->lpVtbl -> CopyTextureRegion(This,pDst,DstX,DstY,DstZ,pSrc,pSrcBox) ) -#define ID3D12GraphicsCommandList5_CopyResource(This,pDstResource,pSrcResource) \ +#define ID3D12GraphicsCommandList8_CopyResource(This,pDstResource,pSrcResource) \ ( (This)->lpVtbl -> CopyResource(This,pDstResource,pSrcResource) ) -#define ID3D12GraphicsCommandList5_CopyTiles(This,pTiledResource,pTileRegionStartCoordinate,pTileRegionSize,pBuffer,BufferStartOffsetInBytes,Flags) \ +#define ID3D12GraphicsCommandList8_CopyTiles(This,pTiledResource,pTileRegionStartCoordinate,pTileRegionSize,pBuffer,BufferStartOffsetInBytes,Flags) \ ( (This)->lpVtbl -> CopyTiles(This,pTiledResource,pTileRegionStartCoordinate,pTileRegionSize,pBuffer,BufferStartOffsetInBytes,Flags) ) -#define ID3D12GraphicsCommandList5_ResolveSubresource(This,pDstResource,DstSubresource,pSrcResource,SrcSubresource,Format) \ +#define ID3D12GraphicsCommandList8_ResolveSubresource(This,pDstResource,DstSubresource,pSrcResource,SrcSubresource,Format) \ ( (This)->lpVtbl -> ResolveSubresource(This,pDstResource,DstSubresource,pSrcResource,SrcSubresource,Format) ) -#define ID3D12GraphicsCommandList5_IASetPrimitiveTopology(This,PrimitiveTopology) \ +#define ID3D12GraphicsCommandList8_IASetPrimitiveTopology(This,PrimitiveTopology) \ ( (This)->lpVtbl -> IASetPrimitiveTopology(This,PrimitiveTopology) ) -#define ID3D12GraphicsCommandList5_RSSetViewports(This,NumViewports,pViewports) \ +#define ID3D12GraphicsCommandList8_RSSetViewports(This,NumViewports,pViewports) \ ( (This)->lpVtbl -> RSSetViewports(This,NumViewports,pViewports) ) -#define ID3D12GraphicsCommandList5_RSSetScissorRects(This,NumRects,pRects) \ +#define ID3D12GraphicsCommandList8_RSSetScissorRects(This,NumRects,pRects) \ ( (This)->lpVtbl -> RSSetScissorRects(This,NumRects,pRects) ) -#define ID3D12GraphicsCommandList5_OMSetBlendFactor(This,BlendFactor) \ +#define ID3D12GraphicsCommandList8_OMSetBlendFactor(This,BlendFactor) \ ( (This)->lpVtbl -> OMSetBlendFactor(This,BlendFactor) ) -#define ID3D12GraphicsCommandList5_OMSetStencilRef(This,StencilRef) \ +#define ID3D12GraphicsCommandList8_OMSetStencilRef(This,StencilRef) \ ( (This)->lpVtbl -> OMSetStencilRef(This,StencilRef) ) -#define ID3D12GraphicsCommandList5_SetPipelineState(This,pPipelineState) \ +#define ID3D12GraphicsCommandList8_SetPipelineState(This,pPipelineState) \ ( (This)->lpVtbl -> SetPipelineState(This,pPipelineState) ) -#define ID3D12GraphicsCommandList5_ResourceBarrier(This,NumBarriers,pBarriers) \ +#define ID3D12GraphicsCommandList8_ResourceBarrier(This,NumBarriers,pBarriers) \ ( (This)->lpVtbl -> ResourceBarrier(This,NumBarriers,pBarriers) ) -#define ID3D12GraphicsCommandList5_ExecuteBundle(This,pCommandList) \ +#define ID3D12GraphicsCommandList8_ExecuteBundle(This,pCommandList) \ ( (This)->lpVtbl -> ExecuteBundle(This,pCommandList) ) -#define ID3D12GraphicsCommandList5_SetDescriptorHeaps(This,NumDescriptorHeaps,ppDescriptorHeaps) \ +#define ID3D12GraphicsCommandList8_SetDescriptorHeaps(This,NumDescriptorHeaps,ppDescriptorHeaps) \ ( (This)->lpVtbl -> SetDescriptorHeaps(This,NumDescriptorHeaps,ppDescriptorHeaps) ) -#define ID3D12GraphicsCommandList5_SetComputeRootSignature(This,pRootSignature) \ +#define ID3D12GraphicsCommandList8_SetComputeRootSignature(This,pRootSignature) \ ( (This)->lpVtbl -> SetComputeRootSignature(This,pRootSignature) ) -#define ID3D12GraphicsCommandList5_SetGraphicsRootSignature(This,pRootSignature) \ +#define ID3D12GraphicsCommandList8_SetGraphicsRootSignature(This,pRootSignature) \ ( (This)->lpVtbl -> SetGraphicsRootSignature(This,pRootSignature) ) -#define ID3D12GraphicsCommandList5_SetComputeRootDescriptorTable(This,RootParameterIndex,BaseDescriptor) \ +#define ID3D12GraphicsCommandList8_SetComputeRootDescriptorTable(This,RootParameterIndex,BaseDescriptor) \ ( (This)->lpVtbl -> SetComputeRootDescriptorTable(This,RootParameterIndex,BaseDescriptor) ) -#define ID3D12GraphicsCommandList5_SetGraphicsRootDescriptorTable(This,RootParameterIndex,BaseDescriptor) \ +#define ID3D12GraphicsCommandList8_SetGraphicsRootDescriptorTable(This,RootParameterIndex,BaseDescriptor) \ ( (This)->lpVtbl -> SetGraphicsRootDescriptorTable(This,RootParameterIndex,BaseDescriptor) ) -#define ID3D12GraphicsCommandList5_SetComputeRoot32BitConstant(This,RootParameterIndex,SrcData,DestOffsetIn32BitValues) \ +#define ID3D12GraphicsCommandList8_SetComputeRoot32BitConstant(This,RootParameterIndex,SrcData,DestOffsetIn32BitValues) \ ( (This)->lpVtbl -> SetComputeRoot32BitConstant(This,RootParameterIndex,SrcData,DestOffsetIn32BitValues) ) -#define ID3D12GraphicsCommandList5_SetGraphicsRoot32BitConstant(This,RootParameterIndex,SrcData,DestOffsetIn32BitValues) \ +#define ID3D12GraphicsCommandList8_SetGraphicsRoot32BitConstant(This,RootParameterIndex,SrcData,DestOffsetIn32BitValues) \ ( (This)->lpVtbl -> SetGraphicsRoot32BitConstant(This,RootParameterIndex,SrcData,DestOffsetIn32BitValues) ) -#define ID3D12GraphicsCommandList5_SetComputeRoot32BitConstants(This,RootParameterIndex,Num32BitValuesToSet,pSrcData,DestOffsetIn32BitValues) \ +#define ID3D12GraphicsCommandList8_SetComputeRoot32BitConstants(This,RootParameterIndex,Num32BitValuesToSet,pSrcData,DestOffsetIn32BitValues) \ ( (This)->lpVtbl -> SetComputeRoot32BitConstants(This,RootParameterIndex,Num32BitValuesToSet,pSrcData,DestOffsetIn32BitValues) ) -#define ID3D12GraphicsCommandList5_SetGraphicsRoot32BitConstants(This,RootParameterIndex,Num32BitValuesToSet,pSrcData,DestOffsetIn32BitValues) \ +#define ID3D12GraphicsCommandList8_SetGraphicsRoot32BitConstants(This,RootParameterIndex,Num32BitValuesToSet,pSrcData,DestOffsetIn32BitValues) \ ( (This)->lpVtbl -> SetGraphicsRoot32BitConstants(This,RootParameterIndex,Num32BitValuesToSet,pSrcData,DestOffsetIn32BitValues) ) -#define ID3D12GraphicsCommandList5_SetComputeRootConstantBufferView(This,RootParameterIndex,BufferLocation) \ +#define ID3D12GraphicsCommandList8_SetComputeRootConstantBufferView(This,RootParameterIndex,BufferLocation) \ ( (This)->lpVtbl -> SetComputeRootConstantBufferView(This,RootParameterIndex,BufferLocation) ) -#define ID3D12GraphicsCommandList5_SetGraphicsRootConstantBufferView(This,RootParameterIndex,BufferLocation) \ +#define ID3D12GraphicsCommandList8_SetGraphicsRootConstantBufferView(This,RootParameterIndex,BufferLocation) \ ( (This)->lpVtbl -> SetGraphicsRootConstantBufferView(This,RootParameterIndex,BufferLocation) ) -#define ID3D12GraphicsCommandList5_SetComputeRootShaderResourceView(This,RootParameterIndex,BufferLocation) \ +#define ID3D12GraphicsCommandList8_SetComputeRootShaderResourceView(This,RootParameterIndex,BufferLocation) \ ( (This)->lpVtbl -> SetComputeRootShaderResourceView(This,RootParameterIndex,BufferLocation) ) -#define ID3D12GraphicsCommandList5_SetGraphicsRootShaderResourceView(This,RootParameterIndex,BufferLocation) \ +#define ID3D12GraphicsCommandList8_SetGraphicsRootShaderResourceView(This,RootParameterIndex,BufferLocation) \ ( (This)->lpVtbl -> SetGraphicsRootShaderResourceView(This,RootParameterIndex,BufferLocation) ) -#define ID3D12GraphicsCommandList5_SetComputeRootUnorderedAccessView(This,RootParameterIndex,BufferLocation) \ +#define ID3D12GraphicsCommandList8_SetComputeRootUnorderedAccessView(This,RootParameterIndex,BufferLocation) \ ( (This)->lpVtbl -> SetComputeRootUnorderedAccessView(This,RootParameterIndex,BufferLocation) ) -#define ID3D12GraphicsCommandList5_SetGraphicsRootUnorderedAccessView(This,RootParameterIndex,BufferLocation) \ +#define ID3D12GraphicsCommandList8_SetGraphicsRootUnorderedAccessView(This,RootParameterIndex,BufferLocation) \ ( (This)->lpVtbl -> SetGraphicsRootUnorderedAccessView(This,RootParameterIndex,BufferLocation) ) -#define ID3D12GraphicsCommandList5_IASetIndexBuffer(This,pView) \ +#define ID3D12GraphicsCommandList8_IASetIndexBuffer(This,pView) \ ( (This)->lpVtbl -> IASetIndexBuffer(This,pView) ) -#define ID3D12GraphicsCommandList5_IASetVertexBuffers(This,StartSlot,NumViews,pViews) \ +#define ID3D12GraphicsCommandList8_IASetVertexBuffers(This,StartSlot,NumViews,pViews) \ ( (This)->lpVtbl -> IASetVertexBuffers(This,StartSlot,NumViews,pViews) ) -#define ID3D12GraphicsCommandList5_SOSetTargets(This,StartSlot,NumViews,pViews) \ +#define ID3D12GraphicsCommandList8_SOSetTargets(This,StartSlot,NumViews,pViews) \ ( (This)->lpVtbl -> SOSetTargets(This,StartSlot,NumViews,pViews) ) -#define ID3D12GraphicsCommandList5_OMSetRenderTargets(This,NumRenderTargetDescriptors,pRenderTargetDescriptors,RTsSingleHandleToDescriptorRange,pDepthStencilDescriptor) \ +#define ID3D12GraphicsCommandList8_OMSetRenderTargets(This,NumRenderTargetDescriptors,pRenderTargetDescriptors,RTsSingleHandleToDescriptorRange,pDepthStencilDescriptor) \ ( (This)->lpVtbl -> OMSetRenderTargets(This,NumRenderTargetDescriptors,pRenderTargetDescriptors,RTsSingleHandleToDescriptorRange,pDepthStencilDescriptor) ) -#define ID3D12GraphicsCommandList5_ClearDepthStencilView(This,DepthStencilView,ClearFlags,Depth,Stencil,NumRects,pRects) \ +#define ID3D12GraphicsCommandList8_ClearDepthStencilView(This,DepthStencilView,ClearFlags,Depth,Stencil,NumRects,pRects) \ ( (This)->lpVtbl -> ClearDepthStencilView(This,DepthStencilView,ClearFlags,Depth,Stencil,NumRects,pRects) ) -#define ID3D12GraphicsCommandList5_ClearRenderTargetView(This,RenderTargetView,ColorRGBA,NumRects,pRects) \ +#define ID3D12GraphicsCommandList8_ClearRenderTargetView(This,RenderTargetView,ColorRGBA,NumRects,pRects) \ ( (This)->lpVtbl -> ClearRenderTargetView(This,RenderTargetView,ColorRGBA,NumRects,pRects) ) -#define ID3D12GraphicsCommandList5_ClearUnorderedAccessViewUint(This,ViewGPUHandleInCurrentHeap,ViewCPUHandle,pResource,Values,NumRects,pRects) \ +#define ID3D12GraphicsCommandList8_ClearUnorderedAccessViewUint(This,ViewGPUHandleInCurrentHeap,ViewCPUHandle,pResource,Values,NumRects,pRects) \ ( (This)->lpVtbl -> ClearUnorderedAccessViewUint(This,ViewGPUHandleInCurrentHeap,ViewCPUHandle,pResource,Values,NumRects,pRects) ) -#define ID3D12GraphicsCommandList5_ClearUnorderedAccessViewFloat(This,ViewGPUHandleInCurrentHeap,ViewCPUHandle,pResource,Values,NumRects,pRects) \ +#define ID3D12GraphicsCommandList8_ClearUnorderedAccessViewFloat(This,ViewGPUHandleInCurrentHeap,ViewCPUHandle,pResource,Values,NumRects,pRects) \ ( (This)->lpVtbl -> ClearUnorderedAccessViewFloat(This,ViewGPUHandleInCurrentHeap,ViewCPUHandle,pResource,Values,NumRects,pRects) ) -#define ID3D12GraphicsCommandList5_DiscardResource(This,pResource,pRegion) \ +#define ID3D12GraphicsCommandList8_DiscardResource(This,pResource,pRegion) \ ( (This)->lpVtbl -> DiscardResource(This,pResource,pRegion) ) -#define ID3D12GraphicsCommandList5_BeginQuery(This,pQueryHeap,Type,Index) \ +#define ID3D12GraphicsCommandList8_BeginQuery(This,pQueryHeap,Type,Index) \ ( (This)->lpVtbl -> BeginQuery(This,pQueryHeap,Type,Index) ) -#define ID3D12GraphicsCommandList5_EndQuery(This,pQueryHeap,Type,Index) \ +#define ID3D12GraphicsCommandList8_EndQuery(This,pQueryHeap,Type,Index) \ ( (This)->lpVtbl -> EndQuery(This,pQueryHeap,Type,Index) ) -#define ID3D12GraphicsCommandList5_ResolveQueryData(This,pQueryHeap,Type,StartIndex,NumQueries,pDestinationBuffer,AlignedDestinationBufferOffset) \ +#define ID3D12GraphicsCommandList8_ResolveQueryData(This,pQueryHeap,Type,StartIndex,NumQueries,pDestinationBuffer,AlignedDestinationBufferOffset) \ ( (This)->lpVtbl -> ResolveQueryData(This,pQueryHeap,Type,StartIndex,NumQueries,pDestinationBuffer,AlignedDestinationBufferOffset) ) -#define ID3D12GraphicsCommandList5_SetPredication(This,pBuffer,AlignedBufferOffset,Operation) \ +#define ID3D12GraphicsCommandList8_SetPredication(This,pBuffer,AlignedBufferOffset,Operation) \ ( (This)->lpVtbl -> SetPredication(This,pBuffer,AlignedBufferOffset,Operation) ) -#define ID3D12GraphicsCommandList5_SetMarker(This,Metadata,pData,Size) \ +#define ID3D12GraphicsCommandList8_SetMarker(This,Metadata,pData,Size) \ ( (This)->lpVtbl -> SetMarker(This,Metadata,pData,Size) ) -#define ID3D12GraphicsCommandList5_BeginEvent(This,Metadata,pData,Size) \ +#define ID3D12GraphicsCommandList8_BeginEvent(This,Metadata,pData,Size) \ ( (This)->lpVtbl -> BeginEvent(This,Metadata,pData,Size) ) -#define ID3D12GraphicsCommandList5_EndEvent(This) \ +#define ID3D12GraphicsCommandList8_EndEvent(This) \ ( (This)->lpVtbl -> EndEvent(This) ) -#define ID3D12GraphicsCommandList5_ExecuteIndirect(This,pCommandSignature,MaxCommandCount,pArgumentBuffer,ArgumentBufferOffset,pCountBuffer,CountBufferOffset) \ +#define ID3D12GraphicsCommandList8_ExecuteIndirect(This,pCommandSignature,MaxCommandCount,pArgumentBuffer,ArgumentBufferOffset,pCountBuffer,CountBufferOffset) \ ( (This)->lpVtbl -> ExecuteIndirect(This,pCommandSignature,MaxCommandCount,pArgumentBuffer,ArgumentBufferOffset,pCountBuffer,CountBufferOffset) ) -#define ID3D12GraphicsCommandList5_AtomicCopyBufferUINT(This,pDstBuffer,DstOffset,pSrcBuffer,SrcOffset,Dependencies,ppDependentResources,pDependentSubresourceRanges) \ +#define ID3D12GraphicsCommandList8_AtomicCopyBufferUINT(This,pDstBuffer,DstOffset,pSrcBuffer,SrcOffset,Dependencies,ppDependentResources,pDependentSubresourceRanges) \ ( (This)->lpVtbl -> AtomicCopyBufferUINT(This,pDstBuffer,DstOffset,pSrcBuffer,SrcOffset,Dependencies,ppDependentResources,pDependentSubresourceRanges) ) -#define ID3D12GraphicsCommandList5_AtomicCopyBufferUINT64(This,pDstBuffer,DstOffset,pSrcBuffer,SrcOffset,Dependencies,ppDependentResources,pDependentSubresourceRanges) \ +#define ID3D12GraphicsCommandList8_AtomicCopyBufferUINT64(This,pDstBuffer,DstOffset,pSrcBuffer,SrcOffset,Dependencies,ppDependentResources,pDependentSubresourceRanges) \ ( (This)->lpVtbl -> AtomicCopyBufferUINT64(This,pDstBuffer,DstOffset,pSrcBuffer,SrcOffset,Dependencies,ppDependentResources,pDependentSubresourceRanges) ) -#define ID3D12GraphicsCommandList5_OMSetDepthBounds(This,Min,Max) \ +#define ID3D12GraphicsCommandList8_OMSetDepthBounds(This,Min,Max) \ ( (This)->lpVtbl -> OMSetDepthBounds(This,Min,Max) ) -#define ID3D12GraphicsCommandList5_SetSamplePositions(This,NumSamplesPerPixel,NumPixels,pSamplePositions) \ +#define ID3D12GraphicsCommandList8_SetSamplePositions(This,NumSamplesPerPixel,NumPixels,pSamplePositions) \ ( (This)->lpVtbl -> SetSamplePositions(This,NumSamplesPerPixel,NumPixels,pSamplePositions) ) -#define ID3D12GraphicsCommandList5_ResolveSubresourceRegion(This,pDstResource,DstSubresource,DstX,DstY,pSrcResource,SrcSubresource,pSrcRect,Format,ResolveMode) \ +#define ID3D12GraphicsCommandList8_ResolveSubresourceRegion(This,pDstResource,DstSubresource,DstX,DstY,pSrcResource,SrcSubresource,pSrcRect,Format,ResolveMode) \ ( (This)->lpVtbl -> ResolveSubresourceRegion(This,pDstResource,DstSubresource,DstX,DstY,pSrcResource,SrcSubresource,pSrcRect,Format,ResolveMode) ) -#define ID3D12GraphicsCommandList5_SetViewInstanceMask(This,Mask) \ +#define ID3D12GraphicsCommandList8_SetViewInstanceMask(This,Mask) \ ( (This)->lpVtbl -> SetViewInstanceMask(This,Mask) ) -#define ID3D12GraphicsCommandList5_WriteBufferImmediate(This,Count,pParams,pModes) \ +#define ID3D12GraphicsCommandList8_WriteBufferImmediate(This,Count,pParams,pModes) \ ( (This)->lpVtbl -> WriteBufferImmediate(This,Count,pParams,pModes) ) -#define ID3D12GraphicsCommandList5_SetProtectedResourceSession(This,pProtectedResourceSession) \ +#define ID3D12GraphicsCommandList8_SetProtectedResourceSession(This,pProtectedResourceSession) \ ( (This)->lpVtbl -> SetProtectedResourceSession(This,pProtectedResourceSession) ) -#define ID3D12GraphicsCommandList5_BeginRenderPass(This,NumRenderTargets,pRenderTargets,pDepthStencil,Flags) \ +#define ID3D12GraphicsCommandList8_BeginRenderPass(This,NumRenderTargets,pRenderTargets,pDepthStencil,Flags) \ ( (This)->lpVtbl -> BeginRenderPass(This,NumRenderTargets,pRenderTargets,pDepthStencil,Flags) ) -#define ID3D12GraphicsCommandList5_EndRenderPass(This) \ +#define ID3D12GraphicsCommandList8_EndRenderPass(This) \ ( (This)->lpVtbl -> EndRenderPass(This) ) -#define ID3D12GraphicsCommandList5_InitializeMetaCommand(This,pMetaCommand,pInitializationParametersData,InitializationParametersDataSizeInBytes) \ +#define ID3D12GraphicsCommandList8_InitializeMetaCommand(This,pMetaCommand,pInitializationParametersData,InitializationParametersDataSizeInBytes) \ ( (This)->lpVtbl -> InitializeMetaCommand(This,pMetaCommand,pInitializationParametersData,InitializationParametersDataSizeInBytes) ) -#define ID3D12GraphicsCommandList5_ExecuteMetaCommand(This,pMetaCommand,pExecutionParametersData,ExecutionParametersDataSizeInBytes) \ +#define ID3D12GraphicsCommandList8_ExecuteMetaCommand(This,pMetaCommand,pExecutionParametersData,ExecutionParametersDataSizeInBytes) \ ( (This)->lpVtbl -> ExecuteMetaCommand(This,pMetaCommand,pExecutionParametersData,ExecutionParametersDataSizeInBytes) ) -#define ID3D12GraphicsCommandList5_BuildRaytracingAccelerationStructure(This,pDesc,NumPostbuildInfoDescs,pPostbuildInfoDescs) \ +#define ID3D12GraphicsCommandList8_BuildRaytracingAccelerationStructure(This,pDesc,NumPostbuildInfoDescs,pPostbuildInfoDescs) \ ( (This)->lpVtbl -> BuildRaytracingAccelerationStructure(This,pDesc,NumPostbuildInfoDescs,pPostbuildInfoDescs) ) -#define ID3D12GraphicsCommandList5_EmitRaytracingAccelerationStructurePostbuildInfo(This,pDesc,NumSourceAccelerationStructures,pSourceAccelerationStructureData) \ +#define ID3D12GraphicsCommandList8_EmitRaytracingAccelerationStructurePostbuildInfo(This,pDesc,NumSourceAccelerationStructures,pSourceAccelerationStructureData) \ ( (This)->lpVtbl -> EmitRaytracingAccelerationStructurePostbuildInfo(This,pDesc,NumSourceAccelerationStructures,pSourceAccelerationStructureData) ) -#define ID3D12GraphicsCommandList5_CopyRaytracingAccelerationStructure(This,DestAccelerationStructureData,SourceAccelerationStructureData,Mode) \ +#define ID3D12GraphicsCommandList8_CopyRaytracingAccelerationStructure(This,DestAccelerationStructureData,SourceAccelerationStructureData,Mode) \ ( (This)->lpVtbl -> CopyRaytracingAccelerationStructure(This,DestAccelerationStructureData,SourceAccelerationStructureData,Mode) ) -#define ID3D12GraphicsCommandList5_SetPipelineState1(This,pStateObject) \ +#define ID3D12GraphicsCommandList8_SetPipelineState1(This,pStateObject) \ ( (This)->lpVtbl -> SetPipelineState1(This,pStateObject) ) -#define ID3D12GraphicsCommandList5_DispatchRays(This,pDesc) \ +#define ID3D12GraphicsCommandList8_DispatchRays(This,pDesc) \ ( (This)->lpVtbl -> DispatchRays(This,pDesc) ) -#define ID3D12GraphicsCommandList5_RSSetShadingRate(This,baseShadingRate,combiners) \ +#define ID3D12GraphicsCommandList8_RSSetShadingRate(This,baseShadingRate,combiners) \ ( (This)->lpVtbl -> RSSetShadingRate(This,baseShadingRate,combiners) ) -#define ID3D12GraphicsCommandList5_RSSetShadingRateImage(This,shadingRateImage) \ +#define ID3D12GraphicsCommandList8_RSSetShadingRateImage(This,shadingRateImage) \ ( (This)->lpVtbl -> RSSetShadingRateImage(This,shadingRateImage) ) -#endif /* COBJMACROS */ +#define ID3D12GraphicsCommandList8_DispatchMesh(This,ThreadGroupCountX,ThreadGroupCountY,ThreadGroupCountZ) \ + ( (This)->lpVtbl -> DispatchMesh(This,ThreadGroupCountX,ThreadGroupCountY,ThreadGroupCountZ) ) -#endif /* C style interface */ +#define ID3D12GraphicsCommandList8_Barrier(This,NumBarrierGroups,pBarrierGroups) \ + ( (This)->lpVtbl -> Barrier(This,NumBarrierGroups,pBarrierGroups) ) +#define ID3D12GraphicsCommandList8_OMSetFrontAndBackStencilRef(This,FrontStencilRef,BackStencilRef) \ + ( (This)->lpVtbl -> OMSetFrontAndBackStencilRef(This,FrontStencilRef,BackStencilRef) ) -#endif /* __ID3D12GraphicsCommandList5_INTERFACE_DEFINED__ */ +#endif /* COBJMACROS */ -/* interface __MIDL_itf_d3d12_0000_0055 */ -/* [local] */ +#endif /* C style interface */ -typedef struct D3D12_DISPATCH_MESH_ARGUMENTS - { - UINT ThreadGroupCountX; - UINT ThreadGroupCountY; - UINT ThreadGroupCountZ; - } D3D12_DISPATCH_MESH_ARGUMENTS; -extern RPC_IF_HANDLE __MIDL_itf_d3d12_0000_0055_v0_0_c_ifspec; -extern RPC_IF_HANDLE __MIDL_itf_d3d12_0000_0055_v0_0_s_ifspec; +#endif /* __ID3D12GraphicsCommandList8_INTERFACE_DEFINED__ */ -#ifndef __ID3D12GraphicsCommandList6_INTERFACE_DEFINED__ -#define __ID3D12GraphicsCommandList6_INTERFACE_DEFINED__ -/* interface ID3D12GraphicsCommandList6 */ +#ifndef __ID3D12GraphicsCommandList9_INTERFACE_DEFINED__ +#define __ID3D12GraphicsCommandList9_INTERFACE_DEFINED__ + +/* interface ID3D12GraphicsCommandList9 */ /* [unique][local][object][uuid] */ -EXTERN_C const IID IID_ID3D12GraphicsCommandList6; +EXTERN_C const IID IID_ID3D12GraphicsCommandList9; #if defined(__cplusplus) && !defined(CINTERFACE) - MIDL_INTERFACE("c3827890-e548-4cfa-96cf-5689a9370f80") - ID3D12GraphicsCommandList6 : public ID3D12GraphicsCommandList5 + MIDL_INTERFACE("34ed2808-ffe6-4c2b-b11a-cabd2b0c59e1") + ID3D12GraphicsCommandList9 : public ID3D12GraphicsCommandList8 { public: - virtual void STDMETHODCALLTYPE DispatchMesh( - /* [annotation] */ - _In_ UINT ThreadGroupCountX, - /* [annotation] */ - _In_ UINT ThreadGroupCountY, - /* [annotation] */ - _In_ UINT ThreadGroupCountZ) = 0; + virtual void STDMETHODCALLTYPE RSSetDepthBias( + _In_ FLOAT DepthBias, + _In_ FLOAT DepthBiasClamp, + _In_ FLOAT SlopeScaledDepthBias) = 0; + + virtual void STDMETHODCALLTYPE IASetIndexBufferStripCutValue( + _In_ D3D12_INDEX_BUFFER_STRIP_CUT_VALUE IBStripCutValue) = 0; }; #else /* C style interface */ - typedef struct ID3D12GraphicsCommandList6Vtbl + typedef struct ID3D12GraphicsCommandList9Vtbl { BEGIN_INTERFACE DECLSPEC_XFGVIRT(IUnknown, QueryInterface) HRESULT ( STDMETHODCALLTYPE *QueryInterface )( - ID3D12GraphicsCommandList6 * This, - /* [annotation][in] */ - _In_ REFIID riid, - /* [annotation][iid_is][out] */ + ID3D12GraphicsCommandList9 * This, + REFIID riid, _COM_Outptr_ void **ppvObject); DECLSPEC_XFGVIRT(IUnknown, AddRef) ULONG ( STDMETHODCALLTYPE *AddRef )( - ID3D12GraphicsCommandList6 * This); + ID3D12GraphicsCommandList9 * This); DECLSPEC_XFGVIRT(IUnknown, Release) ULONG ( STDMETHODCALLTYPE *Release )( - ID3D12GraphicsCommandList6 * This); + ID3D12GraphicsCommandList9 * This); DECLSPEC_XFGVIRT(ID3D12Object, GetPrivateData) HRESULT ( STDMETHODCALLTYPE *GetPrivateData )( - ID3D12GraphicsCommandList6 * This, - /* [annotation] */ + ID3D12GraphicsCommandList9 * This, _In_ REFGUID guid, - /* [annotation] */ _Inout_ UINT *pDataSize, - /* [annotation] */ _Out_writes_bytes_opt_( *pDataSize ) void *pData); DECLSPEC_XFGVIRT(ID3D12Object, SetPrivateData) HRESULT ( STDMETHODCALLTYPE *SetPrivateData )( - ID3D12GraphicsCommandList6 * This, - /* [annotation] */ + ID3D12GraphicsCommandList9 * This, _In_ REFGUID guid, - /* [annotation] */ _In_ UINT DataSize, - /* [annotation] */ _In_reads_bytes_opt_( DataSize ) const void *pData); DECLSPEC_XFGVIRT(ID3D12Object, SetPrivateDataInterface) HRESULT ( STDMETHODCALLTYPE *SetPrivateDataInterface )( - ID3D12GraphicsCommandList6 * This, - /* [annotation] */ + ID3D12GraphicsCommandList9 * This, _In_ REFGUID guid, - /* [annotation] */ _In_opt_ const IUnknown *pData); DECLSPEC_XFGVIRT(ID3D12Object, SetName) HRESULT ( STDMETHODCALLTYPE *SetName )( - ID3D12GraphicsCommandList6 * This, - /* [annotation] */ + ID3D12GraphicsCommandList9 * This, _In_z_ LPCWSTR Name); DECLSPEC_XFGVIRT(ID3D12DeviceChild, GetDevice) HRESULT ( STDMETHODCALLTYPE *GetDevice )( - ID3D12GraphicsCommandList6 * This, - /* [annotation][in] */ - _In_ REFIID riid, - /* [annotation][iid_is][out] */ + ID3D12GraphicsCommandList9 * This, + REFIID riid, _COM_Outptr_opt_ void **ppvDevice); DECLSPEC_XFGVIRT(ID3D12CommandList, GetType) D3D12_COMMAND_LIST_TYPE ( STDMETHODCALLTYPE *GetType )( - ID3D12GraphicsCommandList6 * This); + ID3D12GraphicsCommandList9 * This); DECLSPEC_XFGVIRT(ID3D12GraphicsCommandList, Close) HRESULT ( STDMETHODCALLTYPE *Close )( - ID3D12GraphicsCommandList6 * This); + ID3D12GraphicsCommandList9 * This); DECLSPEC_XFGVIRT(ID3D12GraphicsCommandList, Reset) HRESULT ( STDMETHODCALLTYPE *Reset )( - ID3D12GraphicsCommandList6 * This, - /* [annotation] */ + ID3D12GraphicsCommandList9 * This, _In_ ID3D12CommandAllocator *pAllocator, - /* [annotation] */ _In_opt_ ID3D12PipelineState *pInitialState); DECLSPEC_XFGVIRT(ID3D12GraphicsCommandList, ClearState) void ( STDMETHODCALLTYPE *ClearState )( - ID3D12GraphicsCommandList6 * This, - /* [annotation] */ + ID3D12GraphicsCommandList9 * This, _In_opt_ ID3D12PipelineState *pPipelineState); DECLSPEC_XFGVIRT(ID3D12GraphicsCommandList, DrawInstanced) void ( STDMETHODCALLTYPE *DrawInstanced )( - ID3D12GraphicsCommandList6 * This, - /* [annotation] */ + ID3D12GraphicsCommandList9 * This, _In_ UINT VertexCountPerInstance, - /* [annotation] */ _In_ UINT InstanceCount, - /* [annotation] */ _In_ UINT StartVertexLocation, - /* [annotation] */ _In_ UINT StartInstanceLocation); DECLSPEC_XFGVIRT(ID3D12GraphicsCommandList, DrawIndexedInstanced) void ( STDMETHODCALLTYPE *DrawIndexedInstanced )( - ID3D12GraphicsCommandList6 * This, - /* [annotation] */ + ID3D12GraphicsCommandList9 * This, _In_ UINT IndexCountPerInstance, - /* [annotation] */ _In_ UINT InstanceCount, - /* [annotation] */ _In_ UINT StartIndexLocation, - /* [annotation] */ _In_ INT BaseVertexLocation, - /* [annotation] */ _In_ UINT StartInstanceLocation); DECLSPEC_XFGVIRT(ID3D12GraphicsCommandList, Dispatch) void ( STDMETHODCALLTYPE *Dispatch )( - ID3D12GraphicsCommandList6 * This, - /* [annotation] */ + ID3D12GraphicsCommandList9 * This, _In_ UINT ThreadGroupCountX, - /* [annotation] */ _In_ UINT ThreadGroupCountY, - /* [annotation] */ _In_ UINT ThreadGroupCountZ); DECLSPEC_XFGVIRT(ID3D12GraphicsCommandList, CopyBufferRegion) void ( STDMETHODCALLTYPE *CopyBufferRegion )( - ID3D12GraphicsCommandList6 * This, - /* [annotation] */ + ID3D12GraphicsCommandList9 * This, _In_ ID3D12Resource *pDstBuffer, UINT64 DstOffset, - /* [annotation] */ _In_ ID3D12Resource *pSrcBuffer, UINT64 SrcOffset, UINT64 NumBytes); DECLSPEC_XFGVIRT(ID3D12GraphicsCommandList, CopyTextureRegion) void ( STDMETHODCALLTYPE *CopyTextureRegion )( - ID3D12GraphicsCommandList6 * This, - /* [annotation] */ + ID3D12GraphicsCommandList9 * This, _In_ const D3D12_TEXTURE_COPY_LOCATION *pDst, UINT DstX, UINT DstY, UINT DstZ, - /* [annotation] */ _In_ const D3D12_TEXTURE_COPY_LOCATION *pSrc, - /* [annotation] */ _In_opt_ const D3D12_BOX *pSrcBox); DECLSPEC_XFGVIRT(ID3D12GraphicsCommandList, CopyResource) void ( STDMETHODCALLTYPE *CopyResource )( - ID3D12GraphicsCommandList6 * This, - /* [annotation] */ + ID3D12GraphicsCommandList9 * This, _In_ ID3D12Resource *pDstResource, - /* [annotation] */ _In_ ID3D12Resource *pSrcResource); DECLSPEC_XFGVIRT(ID3D12GraphicsCommandList, CopyTiles) void ( STDMETHODCALLTYPE *CopyTiles )( - ID3D12GraphicsCommandList6 * This, - /* [annotation] */ + ID3D12GraphicsCommandList9 * This, _In_ ID3D12Resource *pTiledResource, - /* [annotation] */ _In_ const D3D12_TILED_RESOURCE_COORDINATE *pTileRegionStartCoordinate, - /* [annotation] */ _In_ const D3D12_TILE_REGION_SIZE *pTileRegionSize, - /* [annotation] */ _In_ ID3D12Resource *pBuffer, UINT64 BufferStartOffsetInBytes, D3D12_TILE_COPY_FLAGS Flags); DECLSPEC_XFGVIRT(ID3D12GraphicsCommandList, ResolveSubresource) void ( STDMETHODCALLTYPE *ResolveSubresource )( - ID3D12GraphicsCommandList6 * This, - /* [annotation] */ + ID3D12GraphicsCommandList9 * This, _In_ ID3D12Resource *pDstResource, - /* [annotation] */ _In_ UINT DstSubresource, - /* [annotation] */ _In_ ID3D12Resource *pSrcResource, - /* [annotation] */ _In_ UINT SrcSubresource, - /* [annotation] */ _In_ DXGI_FORMAT Format); DECLSPEC_XFGVIRT(ID3D12GraphicsCommandList, IASetPrimitiveTopology) void ( STDMETHODCALLTYPE *IASetPrimitiveTopology )( - ID3D12GraphicsCommandList6 * This, - /* [annotation] */ + ID3D12GraphicsCommandList9 * This, _In_ D3D12_PRIMITIVE_TOPOLOGY PrimitiveTopology); DECLSPEC_XFGVIRT(ID3D12GraphicsCommandList, RSSetViewports) void ( STDMETHODCALLTYPE *RSSetViewports )( - ID3D12GraphicsCommandList6 * This, - /* [annotation] */ + ID3D12GraphicsCommandList9 * This, _In_range_(0, D3D12_VIEWPORT_AND_SCISSORRECT_OBJECT_COUNT_PER_PIPELINE) UINT NumViewports, - /* [annotation] */ _In_reads_( NumViewports) const D3D12_VIEWPORT *pViewports); DECLSPEC_XFGVIRT(ID3D12GraphicsCommandList, RSSetScissorRects) void ( STDMETHODCALLTYPE *RSSetScissorRects )( - ID3D12GraphicsCommandList6 * This, - /* [annotation] */ + ID3D12GraphicsCommandList9 * This, _In_range_(0, D3D12_VIEWPORT_AND_SCISSORRECT_OBJECT_COUNT_PER_PIPELINE) UINT NumRects, - /* [annotation] */ _In_reads_( NumRects) const D3D12_RECT *pRects); DECLSPEC_XFGVIRT(ID3D12GraphicsCommandList, OMSetBlendFactor) void ( STDMETHODCALLTYPE *OMSetBlendFactor )( - ID3D12GraphicsCommandList6 * This, - /* [annotation] */ + ID3D12GraphicsCommandList9 * This, _In_reads_opt_(4) const FLOAT BlendFactor[ 4 ]); DECLSPEC_XFGVIRT(ID3D12GraphicsCommandList, OMSetStencilRef) void ( STDMETHODCALLTYPE *OMSetStencilRef )( - ID3D12GraphicsCommandList6 * This, - /* [annotation] */ + ID3D12GraphicsCommandList9 * This, _In_ UINT StencilRef); DECLSPEC_XFGVIRT(ID3D12GraphicsCommandList, SetPipelineState) void ( STDMETHODCALLTYPE *SetPipelineState )( - ID3D12GraphicsCommandList6 * This, - /* [annotation] */ + ID3D12GraphicsCommandList9 * This, _In_ ID3D12PipelineState *pPipelineState); DECLSPEC_XFGVIRT(ID3D12GraphicsCommandList, ResourceBarrier) void ( STDMETHODCALLTYPE *ResourceBarrier )( - ID3D12GraphicsCommandList6 * This, - /* [annotation] */ + ID3D12GraphicsCommandList9 * This, _In_ UINT NumBarriers, - /* [annotation] */ _In_reads_(NumBarriers) const D3D12_RESOURCE_BARRIER *pBarriers); DECLSPEC_XFGVIRT(ID3D12GraphicsCommandList, ExecuteBundle) void ( STDMETHODCALLTYPE *ExecuteBundle )( - ID3D12GraphicsCommandList6 * This, - /* [annotation] */ + ID3D12GraphicsCommandList9 * This, _In_ ID3D12GraphicsCommandList *pCommandList); DECLSPEC_XFGVIRT(ID3D12GraphicsCommandList, SetDescriptorHeaps) void ( STDMETHODCALLTYPE *SetDescriptorHeaps )( - ID3D12GraphicsCommandList6 * This, - /* [annotation] */ + ID3D12GraphicsCommandList9 * This, _In_ UINT NumDescriptorHeaps, - /* [annotation] */ _In_reads_(NumDescriptorHeaps) ID3D12DescriptorHeap *const *ppDescriptorHeaps); DECLSPEC_XFGVIRT(ID3D12GraphicsCommandList, SetComputeRootSignature) void ( STDMETHODCALLTYPE *SetComputeRootSignature )( - ID3D12GraphicsCommandList6 * This, - /* [annotation] */ + ID3D12GraphicsCommandList9 * This, _In_opt_ ID3D12RootSignature *pRootSignature); DECLSPEC_XFGVIRT(ID3D12GraphicsCommandList, SetGraphicsRootSignature) void ( STDMETHODCALLTYPE *SetGraphicsRootSignature )( - ID3D12GraphicsCommandList6 * This, - /* [annotation] */ + ID3D12GraphicsCommandList9 * This, _In_opt_ ID3D12RootSignature *pRootSignature); DECLSPEC_XFGVIRT(ID3D12GraphicsCommandList, SetComputeRootDescriptorTable) void ( STDMETHODCALLTYPE *SetComputeRootDescriptorTable )( - ID3D12GraphicsCommandList6 * This, - /* [annotation] */ + ID3D12GraphicsCommandList9 * This, _In_ UINT RootParameterIndex, - /* [annotation] */ _In_ D3D12_GPU_DESCRIPTOR_HANDLE BaseDescriptor); DECLSPEC_XFGVIRT(ID3D12GraphicsCommandList, SetGraphicsRootDescriptorTable) void ( STDMETHODCALLTYPE *SetGraphicsRootDescriptorTable )( - ID3D12GraphicsCommandList6 * This, - /* [annotation] */ + ID3D12GraphicsCommandList9 * This, _In_ UINT RootParameterIndex, - /* [annotation] */ _In_ D3D12_GPU_DESCRIPTOR_HANDLE BaseDescriptor); DECLSPEC_XFGVIRT(ID3D12GraphicsCommandList, SetComputeRoot32BitConstant) void ( STDMETHODCALLTYPE *SetComputeRoot32BitConstant )( - ID3D12GraphicsCommandList6 * This, - /* [annotation] */ + ID3D12GraphicsCommandList9 * This, _In_ UINT RootParameterIndex, - /* [annotation] */ _In_ UINT SrcData, - /* [annotation] */ _In_ UINT DestOffsetIn32BitValues); DECLSPEC_XFGVIRT(ID3D12GraphicsCommandList, SetGraphicsRoot32BitConstant) void ( STDMETHODCALLTYPE *SetGraphicsRoot32BitConstant )( - ID3D12GraphicsCommandList6 * This, - /* [annotation] */ + ID3D12GraphicsCommandList9 * This, _In_ UINT RootParameterIndex, - /* [annotation] */ _In_ UINT SrcData, - /* [annotation] */ _In_ UINT DestOffsetIn32BitValues); DECLSPEC_XFGVIRT(ID3D12GraphicsCommandList, SetComputeRoot32BitConstants) void ( STDMETHODCALLTYPE *SetComputeRoot32BitConstants )( - ID3D12GraphicsCommandList6 * This, - /* [annotation] */ + ID3D12GraphicsCommandList9 * This, _In_ UINT RootParameterIndex, - /* [annotation] */ _In_ UINT Num32BitValuesToSet, - /* [annotation] */ _In_reads_(Num32BitValuesToSet*sizeof(UINT)) const void *pSrcData, - /* [annotation] */ _In_ UINT DestOffsetIn32BitValues); DECLSPEC_XFGVIRT(ID3D12GraphicsCommandList, SetGraphicsRoot32BitConstants) void ( STDMETHODCALLTYPE *SetGraphicsRoot32BitConstants )( - ID3D12GraphicsCommandList6 * This, - /* [annotation] */ + ID3D12GraphicsCommandList9 * This, _In_ UINT RootParameterIndex, - /* [annotation] */ _In_ UINT Num32BitValuesToSet, - /* [annotation] */ _In_reads_(Num32BitValuesToSet*sizeof(UINT)) const void *pSrcData, - /* [annotation] */ _In_ UINT DestOffsetIn32BitValues); DECLSPEC_XFGVIRT(ID3D12GraphicsCommandList, SetComputeRootConstantBufferView) void ( STDMETHODCALLTYPE *SetComputeRootConstantBufferView )( - ID3D12GraphicsCommandList6 * This, - /* [annotation] */ + ID3D12GraphicsCommandList9 * This, _In_ UINT RootParameterIndex, - /* [annotation] */ _In_ D3D12_GPU_VIRTUAL_ADDRESS BufferLocation); DECLSPEC_XFGVIRT(ID3D12GraphicsCommandList, SetGraphicsRootConstantBufferView) void ( STDMETHODCALLTYPE *SetGraphicsRootConstantBufferView )( - ID3D12GraphicsCommandList6 * This, - /* [annotation] */ + ID3D12GraphicsCommandList9 * This, _In_ UINT RootParameterIndex, - /* [annotation] */ _In_ D3D12_GPU_VIRTUAL_ADDRESS BufferLocation); DECLSPEC_XFGVIRT(ID3D12GraphicsCommandList, SetComputeRootShaderResourceView) void ( STDMETHODCALLTYPE *SetComputeRootShaderResourceView )( - ID3D12GraphicsCommandList6 * This, - /* [annotation] */ + ID3D12GraphicsCommandList9 * This, _In_ UINT RootParameterIndex, - /* [annotation] */ _In_ D3D12_GPU_VIRTUAL_ADDRESS BufferLocation); DECLSPEC_XFGVIRT(ID3D12GraphicsCommandList, SetGraphicsRootShaderResourceView) void ( STDMETHODCALLTYPE *SetGraphicsRootShaderResourceView )( - ID3D12GraphicsCommandList6 * This, - /* [annotation] */ + ID3D12GraphicsCommandList9 * This, _In_ UINT RootParameterIndex, - /* [annotation] */ _In_ D3D12_GPU_VIRTUAL_ADDRESS BufferLocation); DECLSPEC_XFGVIRT(ID3D12GraphicsCommandList, SetComputeRootUnorderedAccessView) void ( STDMETHODCALLTYPE *SetComputeRootUnorderedAccessView )( - ID3D12GraphicsCommandList6 * This, - /* [annotation] */ + ID3D12GraphicsCommandList9 * This, _In_ UINT RootParameterIndex, - /* [annotation] */ _In_ D3D12_GPU_VIRTUAL_ADDRESS BufferLocation); DECLSPEC_XFGVIRT(ID3D12GraphicsCommandList, SetGraphicsRootUnorderedAccessView) void ( STDMETHODCALLTYPE *SetGraphicsRootUnorderedAccessView )( - ID3D12GraphicsCommandList6 * This, - /* [annotation] */ + ID3D12GraphicsCommandList9 * This, _In_ UINT RootParameterIndex, - /* [annotation] */ _In_ D3D12_GPU_VIRTUAL_ADDRESS BufferLocation); DECLSPEC_XFGVIRT(ID3D12GraphicsCommandList, IASetIndexBuffer) void ( STDMETHODCALLTYPE *IASetIndexBuffer )( - ID3D12GraphicsCommandList6 * This, - /* [annotation] */ + ID3D12GraphicsCommandList9 * This, _In_opt_ const D3D12_INDEX_BUFFER_VIEW *pView); DECLSPEC_XFGVIRT(ID3D12GraphicsCommandList, IASetVertexBuffers) void ( STDMETHODCALLTYPE *IASetVertexBuffers )( - ID3D12GraphicsCommandList6 * This, - /* [annotation] */ + ID3D12GraphicsCommandList9 * This, _In_ UINT StartSlot, - /* [annotation] */ _In_ UINT NumViews, - /* [annotation] */ _In_reads_opt_(NumViews) const D3D12_VERTEX_BUFFER_VIEW *pViews); DECLSPEC_XFGVIRT(ID3D12GraphicsCommandList, SOSetTargets) void ( STDMETHODCALLTYPE *SOSetTargets )( - ID3D12GraphicsCommandList6 * This, - /* [annotation] */ + ID3D12GraphicsCommandList9 * This, _In_ UINT StartSlot, - /* [annotation] */ _In_ UINT NumViews, - /* [annotation] */ _In_reads_opt_(NumViews) const D3D12_STREAM_OUTPUT_BUFFER_VIEW *pViews); DECLSPEC_XFGVIRT(ID3D12GraphicsCommandList, OMSetRenderTargets) void ( STDMETHODCALLTYPE *OMSetRenderTargets )( - ID3D12GraphicsCommandList6 * This, - /* [annotation] */ + ID3D12GraphicsCommandList9 * This, _In_ UINT NumRenderTargetDescriptors, - /* [annotation] */ _In_opt_ const D3D12_CPU_DESCRIPTOR_HANDLE *pRenderTargetDescriptors, - /* [annotation] */ _In_ BOOL RTsSingleHandleToDescriptorRange, - /* [annotation] */ _In_opt_ const D3D12_CPU_DESCRIPTOR_HANDLE *pDepthStencilDescriptor); DECLSPEC_XFGVIRT(ID3D12GraphicsCommandList, ClearDepthStencilView) void ( STDMETHODCALLTYPE *ClearDepthStencilView )( - ID3D12GraphicsCommandList6 * This, - /* [annotation] */ + ID3D12GraphicsCommandList9 * This, _In_ D3D12_CPU_DESCRIPTOR_HANDLE DepthStencilView, - /* [annotation] */ _In_ D3D12_CLEAR_FLAGS ClearFlags, - /* [annotation] */ _In_ FLOAT Depth, - /* [annotation] */ _In_ UINT8 Stencil, - /* [annotation] */ _In_ UINT NumRects, - /* [annotation] */ _In_reads_(NumRects) const D3D12_RECT *pRects); DECLSPEC_XFGVIRT(ID3D12GraphicsCommandList, ClearRenderTargetView) void ( STDMETHODCALLTYPE *ClearRenderTargetView )( - ID3D12GraphicsCommandList6 * This, - /* [annotation] */ + ID3D12GraphicsCommandList9 * This, _In_ D3D12_CPU_DESCRIPTOR_HANDLE RenderTargetView, - /* [annotation] */ _In_ const FLOAT ColorRGBA[ 4 ], - /* [annotation] */ _In_ UINT NumRects, - /* [annotation] */ _In_reads_(NumRects) const D3D12_RECT *pRects); DECLSPEC_XFGVIRT(ID3D12GraphicsCommandList, ClearUnorderedAccessViewUint) void ( STDMETHODCALLTYPE *ClearUnorderedAccessViewUint )( - ID3D12GraphicsCommandList6 * This, - /* [annotation] */ + ID3D12GraphicsCommandList9 * This, _In_ D3D12_GPU_DESCRIPTOR_HANDLE ViewGPUHandleInCurrentHeap, - /* [annotation] */ _In_ D3D12_CPU_DESCRIPTOR_HANDLE ViewCPUHandle, - /* [annotation] */ _In_ ID3D12Resource *pResource, - /* [annotation] */ _In_ const UINT Values[ 4 ], - /* [annotation] */ _In_ UINT NumRects, - /* [annotation] */ _In_reads_(NumRects) const D3D12_RECT *pRects); DECLSPEC_XFGVIRT(ID3D12GraphicsCommandList, ClearUnorderedAccessViewFloat) void ( STDMETHODCALLTYPE *ClearUnorderedAccessViewFloat )( - ID3D12GraphicsCommandList6 * This, - /* [annotation] */ + ID3D12GraphicsCommandList9 * This, _In_ D3D12_GPU_DESCRIPTOR_HANDLE ViewGPUHandleInCurrentHeap, - /* [annotation] */ _In_ D3D12_CPU_DESCRIPTOR_HANDLE ViewCPUHandle, - /* [annotation] */ _In_ ID3D12Resource *pResource, - /* [annotation] */ _In_ const FLOAT Values[ 4 ], - /* [annotation] */ _In_ UINT NumRects, - /* [annotation] */ _In_reads_(NumRects) const D3D12_RECT *pRects); DECLSPEC_XFGVIRT(ID3D12GraphicsCommandList, DiscardResource) void ( STDMETHODCALLTYPE *DiscardResource )( - ID3D12GraphicsCommandList6 * This, - /* [annotation] */ + ID3D12GraphicsCommandList9 * This, _In_ ID3D12Resource *pResource, - /* [annotation] */ _In_opt_ const D3D12_DISCARD_REGION *pRegion); DECLSPEC_XFGVIRT(ID3D12GraphicsCommandList, BeginQuery) void ( STDMETHODCALLTYPE *BeginQuery )( - ID3D12GraphicsCommandList6 * This, - /* [annotation] */ + ID3D12GraphicsCommandList9 * This, _In_ ID3D12QueryHeap *pQueryHeap, - /* [annotation] */ _In_ D3D12_QUERY_TYPE Type, - /* [annotation] */ _In_ UINT Index); DECLSPEC_XFGVIRT(ID3D12GraphicsCommandList, EndQuery) void ( STDMETHODCALLTYPE *EndQuery )( - ID3D12GraphicsCommandList6 * This, - /* [annotation] */ + ID3D12GraphicsCommandList9 * This, _In_ ID3D12QueryHeap *pQueryHeap, - /* [annotation] */ _In_ D3D12_QUERY_TYPE Type, - /* [annotation] */ _In_ UINT Index); DECLSPEC_XFGVIRT(ID3D12GraphicsCommandList, ResolveQueryData) void ( STDMETHODCALLTYPE *ResolveQueryData )( - ID3D12GraphicsCommandList6 * This, - /* [annotation] */ + ID3D12GraphicsCommandList9 * This, _In_ ID3D12QueryHeap *pQueryHeap, - /* [annotation] */ _In_ D3D12_QUERY_TYPE Type, - /* [annotation] */ _In_ UINT StartIndex, - /* [annotation] */ _In_ UINT NumQueries, - /* [annotation] */ _In_ ID3D12Resource *pDestinationBuffer, - /* [annotation] */ _In_ UINT64 AlignedDestinationBufferOffset); DECLSPEC_XFGVIRT(ID3D12GraphicsCommandList, SetPredication) void ( STDMETHODCALLTYPE *SetPredication )( - ID3D12GraphicsCommandList6 * This, - /* [annotation] */ + ID3D12GraphicsCommandList9 * This, _In_opt_ ID3D12Resource *pBuffer, - /* [annotation] */ _In_ UINT64 AlignedBufferOffset, - /* [annotation] */ _In_ D3D12_PREDICATION_OP Operation); DECLSPEC_XFGVIRT(ID3D12GraphicsCommandList, SetMarker) void ( STDMETHODCALLTYPE *SetMarker )( - ID3D12GraphicsCommandList6 * This, + ID3D12GraphicsCommandList9 * This, UINT Metadata, - /* [annotation] */ _In_reads_bytes_opt_(Size) const void *pData, UINT Size); DECLSPEC_XFGVIRT(ID3D12GraphicsCommandList, BeginEvent) void ( STDMETHODCALLTYPE *BeginEvent )( - ID3D12GraphicsCommandList6 * This, + ID3D12GraphicsCommandList9 * This, UINT Metadata, - /* [annotation] */ _In_reads_bytes_opt_(Size) const void *pData, UINT Size); DECLSPEC_XFGVIRT(ID3D12GraphicsCommandList, EndEvent) void ( STDMETHODCALLTYPE *EndEvent )( - ID3D12GraphicsCommandList6 * This); + ID3D12GraphicsCommandList9 * This); DECLSPEC_XFGVIRT(ID3D12GraphicsCommandList, ExecuteIndirect) void ( STDMETHODCALLTYPE *ExecuteIndirect )( - ID3D12GraphicsCommandList6 * This, - /* [annotation] */ + ID3D12GraphicsCommandList9 * This, _In_ ID3D12CommandSignature *pCommandSignature, - /* [annotation] */ _In_ UINT MaxCommandCount, - /* [annotation] */ _In_ ID3D12Resource *pArgumentBuffer, - /* [annotation] */ _In_ UINT64 ArgumentBufferOffset, - /* [annotation] */ _In_opt_ ID3D12Resource *pCountBuffer, - /* [annotation] */ _In_ UINT64 CountBufferOffset); DECLSPEC_XFGVIRT(ID3D12GraphicsCommandList1, AtomicCopyBufferUINT) void ( STDMETHODCALLTYPE *AtomicCopyBufferUINT )( - ID3D12GraphicsCommandList6 * This, - /* [annotation] */ + ID3D12GraphicsCommandList9 * This, _In_ ID3D12Resource *pDstBuffer, UINT64 DstOffset, - /* [annotation] */ _In_ ID3D12Resource *pSrcBuffer, UINT64 SrcOffset, UINT Dependencies, - /* [annotation] */ _In_reads_(Dependencies) ID3D12Resource *const *ppDependentResources, - /* [annotation] */ _In_reads_(Dependencies) const D3D12_SUBRESOURCE_RANGE_UINT64 *pDependentSubresourceRanges); DECLSPEC_XFGVIRT(ID3D12GraphicsCommandList1, AtomicCopyBufferUINT64) void ( STDMETHODCALLTYPE *AtomicCopyBufferUINT64 )( - ID3D12GraphicsCommandList6 * This, - /* [annotation] */ + ID3D12GraphicsCommandList9 * This, _In_ ID3D12Resource *pDstBuffer, UINT64 DstOffset, - /* [annotation] */ _In_ ID3D12Resource *pSrcBuffer, UINT64 SrcOffset, UINT Dependencies, - /* [annotation] */ _In_reads_(Dependencies) ID3D12Resource *const *ppDependentResources, - /* [annotation] */ _In_reads_(Dependencies) const D3D12_SUBRESOURCE_RANGE_UINT64 *pDependentSubresourceRanges); DECLSPEC_XFGVIRT(ID3D12GraphicsCommandList1, OMSetDepthBounds) void ( STDMETHODCALLTYPE *OMSetDepthBounds )( - ID3D12GraphicsCommandList6 * This, - /* [annotation] */ + ID3D12GraphicsCommandList9 * This, _In_ FLOAT Min, - /* [annotation] */ _In_ FLOAT Max); DECLSPEC_XFGVIRT(ID3D12GraphicsCommandList1, SetSamplePositions) void ( STDMETHODCALLTYPE *SetSamplePositions )( - ID3D12GraphicsCommandList6 * This, - /* [annotation] */ + ID3D12GraphicsCommandList9 * This, _In_ UINT NumSamplesPerPixel, - /* [annotation] */ _In_ UINT NumPixels, - /* [annotation] */ _In_reads_(NumSamplesPerPixel*NumPixels) D3D12_SAMPLE_POSITION *pSamplePositions); DECLSPEC_XFGVIRT(ID3D12GraphicsCommandList1, ResolveSubresourceRegion) void ( STDMETHODCALLTYPE *ResolveSubresourceRegion )( - ID3D12GraphicsCommandList6 * This, - /* [annotation] */ + ID3D12GraphicsCommandList9 * This, _In_ ID3D12Resource *pDstResource, - /* [annotation] */ _In_ UINT DstSubresource, - /* [annotation] */ _In_ UINT DstX, - /* [annotation] */ _In_ UINT DstY, - /* [annotation] */ _In_ ID3D12Resource *pSrcResource, - /* [annotation] */ _In_ UINT SrcSubresource, - /* [annotation] */ _In_opt_ D3D12_RECT *pSrcRect, - /* [annotation] */ _In_ DXGI_FORMAT Format, - /* [annotation] */ _In_ D3D12_RESOLVE_MODE ResolveMode); DECLSPEC_XFGVIRT(ID3D12GraphicsCommandList1, SetViewInstanceMask) void ( STDMETHODCALLTYPE *SetViewInstanceMask )( - ID3D12GraphicsCommandList6 * This, - /* [annotation] */ + ID3D12GraphicsCommandList9 * This, _In_ UINT Mask); DECLSPEC_XFGVIRT(ID3D12GraphicsCommandList2, WriteBufferImmediate) void ( STDMETHODCALLTYPE *WriteBufferImmediate )( - ID3D12GraphicsCommandList6 * This, + ID3D12GraphicsCommandList9 * This, UINT Count, - /* [annotation] */ _In_reads_(Count) const D3D12_WRITEBUFFERIMMEDIATE_PARAMETER *pParams, - /* [annotation] */ _In_reads_opt_(Count) const D3D12_WRITEBUFFERIMMEDIATE_MODE *pModes); DECLSPEC_XFGVIRT(ID3D12GraphicsCommandList3, SetProtectedResourceSession) void ( STDMETHODCALLTYPE *SetProtectedResourceSession )( - ID3D12GraphicsCommandList6 * This, - /* [annotation] */ + ID3D12GraphicsCommandList9 * This, _In_opt_ ID3D12ProtectedResourceSession *pProtectedResourceSession); DECLSPEC_XFGVIRT(ID3D12GraphicsCommandList4, BeginRenderPass) void ( STDMETHODCALLTYPE *BeginRenderPass )( - ID3D12GraphicsCommandList6 * This, - /* [annotation] */ + ID3D12GraphicsCommandList9 * This, _In_ UINT NumRenderTargets, - /* [annotation] */ _In_reads_opt_(NumRenderTargets) const D3D12_RENDER_PASS_RENDER_TARGET_DESC *pRenderTargets, - /* [annotation] */ _In_opt_ const D3D12_RENDER_PASS_DEPTH_STENCIL_DESC *pDepthStencil, D3D12_RENDER_PASS_FLAGS Flags); DECLSPEC_XFGVIRT(ID3D12GraphicsCommandList4, EndRenderPass) void ( STDMETHODCALLTYPE *EndRenderPass )( - ID3D12GraphicsCommandList6 * This); + ID3D12GraphicsCommandList9 * This); DECLSPEC_XFGVIRT(ID3D12GraphicsCommandList4, InitializeMetaCommand) void ( STDMETHODCALLTYPE *InitializeMetaCommand )( - ID3D12GraphicsCommandList6 * This, - /* [annotation] */ + ID3D12GraphicsCommandList9 * This, _In_ ID3D12MetaCommand *pMetaCommand, - /* [annotation] */ _In_reads_bytes_opt_(InitializationParametersDataSizeInBytes) const void *pInitializationParametersData, - /* [annotation] */ _In_ SIZE_T InitializationParametersDataSizeInBytes); DECLSPEC_XFGVIRT(ID3D12GraphicsCommandList4, ExecuteMetaCommand) void ( STDMETHODCALLTYPE *ExecuteMetaCommand )( - ID3D12GraphicsCommandList6 * This, - /* [annotation] */ + ID3D12GraphicsCommandList9 * This, _In_ ID3D12MetaCommand *pMetaCommand, - /* [annotation] */ _In_reads_bytes_opt_(ExecutionParametersDataSizeInBytes) const void *pExecutionParametersData, - /* [annotation] */ _In_ SIZE_T ExecutionParametersDataSizeInBytes); DECLSPEC_XFGVIRT(ID3D12GraphicsCommandList4, BuildRaytracingAccelerationStructure) void ( STDMETHODCALLTYPE *BuildRaytracingAccelerationStructure )( - ID3D12GraphicsCommandList6 * This, - /* [annotation] */ + ID3D12GraphicsCommandList9 * This, _In_ const D3D12_BUILD_RAYTRACING_ACCELERATION_STRUCTURE_DESC *pDesc, - /* [annotation] */ _In_ UINT NumPostbuildInfoDescs, - /* [annotation] */ _In_reads_opt_(NumPostbuildInfoDescs) const D3D12_RAYTRACING_ACCELERATION_STRUCTURE_POSTBUILD_INFO_DESC *pPostbuildInfoDescs); DECLSPEC_XFGVIRT(ID3D12GraphicsCommandList4, EmitRaytracingAccelerationStructurePostbuildInfo) void ( STDMETHODCALLTYPE *EmitRaytracingAccelerationStructurePostbuildInfo )( - ID3D12GraphicsCommandList6 * This, - /* [annotation] */ + ID3D12GraphicsCommandList9 * This, _In_ const D3D12_RAYTRACING_ACCELERATION_STRUCTURE_POSTBUILD_INFO_DESC *pDesc, - /* [annotation] */ _In_ UINT NumSourceAccelerationStructures, - /* [annotation] */ _In_reads_( NumSourceAccelerationStructures ) const D3D12_GPU_VIRTUAL_ADDRESS *pSourceAccelerationStructureData); DECLSPEC_XFGVIRT(ID3D12GraphicsCommandList4, CopyRaytracingAccelerationStructure) void ( STDMETHODCALLTYPE *CopyRaytracingAccelerationStructure )( - ID3D12GraphicsCommandList6 * This, - /* [annotation] */ + ID3D12GraphicsCommandList9 * This, _In_ D3D12_GPU_VIRTUAL_ADDRESS DestAccelerationStructureData, - /* [annotation] */ _In_ D3D12_GPU_VIRTUAL_ADDRESS SourceAccelerationStructureData, - /* [annotation] */ _In_ D3D12_RAYTRACING_ACCELERATION_STRUCTURE_COPY_MODE Mode); DECLSPEC_XFGVIRT(ID3D12GraphicsCommandList4, SetPipelineState1) void ( STDMETHODCALLTYPE *SetPipelineState1 )( - ID3D12GraphicsCommandList6 * This, - /* [annotation] */ + ID3D12GraphicsCommandList9 * This, _In_ ID3D12StateObject *pStateObject); DECLSPEC_XFGVIRT(ID3D12GraphicsCommandList4, DispatchRays) void ( STDMETHODCALLTYPE *DispatchRays )( - ID3D12GraphicsCommandList6 * This, - /* [annotation] */ + ID3D12GraphicsCommandList9 * This, _In_ const D3D12_DISPATCH_RAYS_DESC *pDesc); DECLSPEC_XFGVIRT(ID3D12GraphicsCommandList5, RSSetShadingRate) void ( STDMETHODCALLTYPE *RSSetShadingRate )( - ID3D12GraphicsCommandList6 * This, - /* [annotation] */ + ID3D12GraphicsCommandList9 * This, _In_ D3D12_SHADING_RATE baseShadingRate, - /* [annotation] */ _In_reads_opt_(D3D12_RS_SET_SHADING_RATE_COMBINER_COUNT) const D3D12_SHADING_RATE_COMBINER *combiners); DECLSPEC_XFGVIRT(ID3D12GraphicsCommandList5, RSSetShadingRateImage) void ( STDMETHODCALLTYPE *RSSetShadingRateImage )( - ID3D12GraphicsCommandList6 * This, - /* [annotation] */ + ID3D12GraphicsCommandList9 * This, _In_opt_ ID3D12Resource *shadingRateImage); DECLSPEC_XFGVIRT(ID3D12GraphicsCommandList6, DispatchMesh) void ( STDMETHODCALLTYPE *DispatchMesh )( - ID3D12GraphicsCommandList6 * This, - /* [annotation] */ + ID3D12GraphicsCommandList9 * This, _In_ UINT ThreadGroupCountX, - /* [annotation] */ _In_ UINT ThreadGroupCountY, - /* [annotation] */ _In_ UINT ThreadGroupCountZ); + DECLSPEC_XFGVIRT(ID3D12GraphicsCommandList7, Barrier) + void ( STDMETHODCALLTYPE *Barrier )( + ID3D12GraphicsCommandList9 * This, + UINT32 NumBarrierGroups, + _In_reads_(NumBarrierGroups) const D3D12_BARRIER_GROUP *pBarrierGroups); + + DECLSPEC_XFGVIRT(ID3D12GraphicsCommandList8, OMSetFrontAndBackStencilRef) + void ( STDMETHODCALLTYPE *OMSetFrontAndBackStencilRef )( + ID3D12GraphicsCommandList9 * This, + _In_ UINT FrontStencilRef, + _In_ UINT BackStencilRef); + + DECLSPEC_XFGVIRT(ID3D12GraphicsCommandList9, RSSetDepthBias) + void ( STDMETHODCALLTYPE *RSSetDepthBias )( + ID3D12GraphicsCommandList9 * This, + _In_ FLOAT DepthBias, + _In_ FLOAT DepthBiasClamp, + _In_ FLOAT SlopeScaledDepthBias); + + DECLSPEC_XFGVIRT(ID3D12GraphicsCommandList9, IASetIndexBufferStripCutValue) + void ( STDMETHODCALLTYPE *IASetIndexBufferStripCutValue )( + ID3D12GraphicsCommandList9 * This, + _In_ D3D12_INDEX_BUFFER_STRIP_CUT_VALUE IBStripCutValue); + END_INTERFACE - } ID3D12GraphicsCommandList6Vtbl; + } ID3D12GraphicsCommandList9Vtbl; - interface ID3D12GraphicsCommandList6 + interface ID3D12GraphicsCommandList9 { - CONST_VTBL struct ID3D12GraphicsCommandList6Vtbl *lpVtbl; + CONST_VTBL struct ID3D12GraphicsCommandList9Vtbl *lpVtbl; }; @@ -26965,256 +29258,271 @@ EXTERN_C const IID IID_ID3D12GraphicsCommandList6; #ifdef COBJMACROS -#define ID3D12GraphicsCommandList6_QueryInterface(This,riid,ppvObject) \ +#define ID3D12GraphicsCommandList9_QueryInterface(This,riid,ppvObject) \ ( (This)->lpVtbl -> QueryInterface(This,riid,ppvObject) ) -#define ID3D12GraphicsCommandList6_AddRef(This) \ +#define ID3D12GraphicsCommandList9_AddRef(This) \ ( (This)->lpVtbl -> AddRef(This) ) -#define ID3D12GraphicsCommandList6_Release(This) \ +#define ID3D12GraphicsCommandList9_Release(This) \ ( (This)->lpVtbl -> Release(This) ) -#define ID3D12GraphicsCommandList6_GetPrivateData(This,guid,pDataSize,pData) \ +#define ID3D12GraphicsCommandList9_GetPrivateData(This,guid,pDataSize,pData) \ ( (This)->lpVtbl -> GetPrivateData(This,guid,pDataSize,pData) ) -#define ID3D12GraphicsCommandList6_SetPrivateData(This,guid,DataSize,pData) \ +#define ID3D12GraphicsCommandList9_SetPrivateData(This,guid,DataSize,pData) \ ( (This)->lpVtbl -> SetPrivateData(This,guid,DataSize,pData) ) -#define ID3D12GraphicsCommandList6_SetPrivateDataInterface(This,guid,pData) \ +#define ID3D12GraphicsCommandList9_SetPrivateDataInterface(This,guid,pData) \ ( (This)->lpVtbl -> SetPrivateDataInterface(This,guid,pData) ) -#define ID3D12GraphicsCommandList6_SetName(This,Name) \ +#define ID3D12GraphicsCommandList9_SetName(This,Name) \ ( (This)->lpVtbl -> SetName(This,Name) ) -#define ID3D12GraphicsCommandList6_GetDevice(This,riid,ppvDevice) \ +#define ID3D12GraphicsCommandList9_GetDevice(This,riid,ppvDevice) \ ( (This)->lpVtbl -> GetDevice(This,riid,ppvDevice) ) -#define ID3D12GraphicsCommandList6_GetType(This) \ +#define ID3D12GraphicsCommandList9_GetType(This) \ ( (This)->lpVtbl -> GetType(This) ) -#define ID3D12GraphicsCommandList6_Close(This) \ +#define ID3D12GraphicsCommandList9_Close(This) \ ( (This)->lpVtbl -> Close(This) ) -#define ID3D12GraphicsCommandList6_Reset(This,pAllocator,pInitialState) \ +#define ID3D12GraphicsCommandList9_Reset(This,pAllocator,pInitialState) \ ( (This)->lpVtbl -> Reset(This,pAllocator,pInitialState) ) -#define ID3D12GraphicsCommandList6_ClearState(This,pPipelineState) \ +#define ID3D12GraphicsCommandList9_ClearState(This,pPipelineState) \ ( (This)->lpVtbl -> ClearState(This,pPipelineState) ) -#define ID3D12GraphicsCommandList6_DrawInstanced(This,VertexCountPerInstance,InstanceCount,StartVertexLocation,StartInstanceLocation) \ +#define ID3D12GraphicsCommandList9_DrawInstanced(This,VertexCountPerInstance,InstanceCount,StartVertexLocation,StartInstanceLocation) \ ( (This)->lpVtbl -> DrawInstanced(This,VertexCountPerInstance,InstanceCount,StartVertexLocation,StartInstanceLocation) ) -#define ID3D12GraphicsCommandList6_DrawIndexedInstanced(This,IndexCountPerInstance,InstanceCount,StartIndexLocation,BaseVertexLocation,StartInstanceLocation) \ +#define ID3D12GraphicsCommandList9_DrawIndexedInstanced(This,IndexCountPerInstance,InstanceCount,StartIndexLocation,BaseVertexLocation,StartInstanceLocation) \ ( (This)->lpVtbl -> DrawIndexedInstanced(This,IndexCountPerInstance,InstanceCount,StartIndexLocation,BaseVertexLocation,StartInstanceLocation) ) -#define ID3D12GraphicsCommandList6_Dispatch(This,ThreadGroupCountX,ThreadGroupCountY,ThreadGroupCountZ) \ +#define ID3D12GraphicsCommandList9_Dispatch(This,ThreadGroupCountX,ThreadGroupCountY,ThreadGroupCountZ) \ ( (This)->lpVtbl -> Dispatch(This,ThreadGroupCountX,ThreadGroupCountY,ThreadGroupCountZ) ) -#define ID3D12GraphicsCommandList6_CopyBufferRegion(This,pDstBuffer,DstOffset,pSrcBuffer,SrcOffset,NumBytes) \ +#define ID3D12GraphicsCommandList9_CopyBufferRegion(This,pDstBuffer,DstOffset,pSrcBuffer,SrcOffset,NumBytes) \ ( (This)->lpVtbl -> CopyBufferRegion(This,pDstBuffer,DstOffset,pSrcBuffer,SrcOffset,NumBytes) ) -#define ID3D12GraphicsCommandList6_CopyTextureRegion(This,pDst,DstX,DstY,DstZ,pSrc,pSrcBox) \ +#define ID3D12GraphicsCommandList9_CopyTextureRegion(This,pDst,DstX,DstY,DstZ,pSrc,pSrcBox) \ ( (This)->lpVtbl -> CopyTextureRegion(This,pDst,DstX,DstY,DstZ,pSrc,pSrcBox) ) -#define ID3D12GraphicsCommandList6_CopyResource(This,pDstResource,pSrcResource) \ +#define ID3D12GraphicsCommandList9_CopyResource(This,pDstResource,pSrcResource) \ ( (This)->lpVtbl -> CopyResource(This,pDstResource,pSrcResource) ) -#define ID3D12GraphicsCommandList6_CopyTiles(This,pTiledResource,pTileRegionStartCoordinate,pTileRegionSize,pBuffer,BufferStartOffsetInBytes,Flags) \ +#define ID3D12GraphicsCommandList9_CopyTiles(This,pTiledResource,pTileRegionStartCoordinate,pTileRegionSize,pBuffer,BufferStartOffsetInBytes,Flags) \ ( (This)->lpVtbl -> CopyTiles(This,pTiledResource,pTileRegionStartCoordinate,pTileRegionSize,pBuffer,BufferStartOffsetInBytes,Flags) ) -#define ID3D12GraphicsCommandList6_ResolveSubresource(This,pDstResource,DstSubresource,pSrcResource,SrcSubresource,Format) \ +#define ID3D12GraphicsCommandList9_ResolveSubresource(This,pDstResource,DstSubresource,pSrcResource,SrcSubresource,Format) \ ( (This)->lpVtbl -> ResolveSubresource(This,pDstResource,DstSubresource,pSrcResource,SrcSubresource,Format) ) -#define ID3D12GraphicsCommandList6_IASetPrimitiveTopology(This,PrimitiveTopology) \ +#define ID3D12GraphicsCommandList9_IASetPrimitiveTopology(This,PrimitiveTopology) \ ( (This)->lpVtbl -> IASetPrimitiveTopology(This,PrimitiveTopology) ) -#define ID3D12GraphicsCommandList6_RSSetViewports(This,NumViewports,pViewports) \ +#define ID3D12GraphicsCommandList9_RSSetViewports(This,NumViewports,pViewports) \ ( (This)->lpVtbl -> RSSetViewports(This,NumViewports,pViewports) ) -#define ID3D12GraphicsCommandList6_RSSetScissorRects(This,NumRects,pRects) \ +#define ID3D12GraphicsCommandList9_RSSetScissorRects(This,NumRects,pRects) \ ( (This)->lpVtbl -> RSSetScissorRects(This,NumRects,pRects) ) -#define ID3D12GraphicsCommandList6_OMSetBlendFactor(This,BlendFactor) \ +#define ID3D12GraphicsCommandList9_OMSetBlendFactor(This,BlendFactor) \ ( (This)->lpVtbl -> OMSetBlendFactor(This,BlendFactor) ) -#define ID3D12GraphicsCommandList6_OMSetStencilRef(This,StencilRef) \ +#define ID3D12GraphicsCommandList9_OMSetStencilRef(This,StencilRef) \ ( (This)->lpVtbl -> OMSetStencilRef(This,StencilRef) ) -#define ID3D12GraphicsCommandList6_SetPipelineState(This,pPipelineState) \ +#define ID3D12GraphicsCommandList9_SetPipelineState(This,pPipelineState) \ ( (This)->lpVtbl -> SetPipelineState(This,pPipelineState) ) -#define ID3D12GraphicsCommandList6_ResourceBarrier(This,NumBarriers,pBarriers) \ +#define ID3D12GraphicsCommandList9_ResourceBarrier(This,NumBarriers,pBarriers) \ ( (This)->lpVtbl -> ResourceBarrier(This,NumBarriers,pBarriers) ) -#define ID3D12GraphicsCommandList6_ExecuteBundle(This,pCommandList) \ +#define ID3D12GraphicsCommandList9_ExecuteBundle(This,pCommandList) \ ( (This)->lpVtbl -> ExecuteBundle(This,pCommandList) ) -#define ID3D12GraphicsCommandList6_SetDescriptorHeaps(This,NumDescriptorHeaps,ppDescriptorHeaps) \ +#define ID3D12GraphicsCommandList9_SetDescriptorHeaps(This,NumDescriptorHeaps,ppDescriptorHeaps) \ ( (This)->lpVtbl -> SetDescriptorHeaps(This,NumDescriptorHeaps,ppDescriptorHeaps) ) -#define ID3D12GraphicsCommandList6_SetComputeRootSignature(This,pRootSignature) \ +#define ID3D12GraphicsCommandList9_SetComputeRootSignature(This,pRootSignature) \ ( (This)->lpVtbl -> SetComputeRootSignature(This,pRootSignature) ) -#define ID3D12GraphicsCommandList6_SetGraphicsRootSignature(This,pRootSignature) \ +#define ID3D12GraphicsCommandList9_SetGraphicsRootSignature(This,pRootSignature) \ ( (This)->lpVtbl -> SetGraphicsRootSignature(This,pRootSignature) ) -#define ID3D12GraphicsCommandList6_SetComputeRootDescriptorTable(This,RootParameterIndex,BaseDescriptor) \ +#define ID3D12GraphicsCommandList9_SetComputeRootDescriptorTable(This,RootParameterIndex,BaseDescriptor) \ ( (This)->lpVtbl -> SetComputeRootDescriptorTable(This,RootParameterIndex,BaseDescriptor) ) -#define ID3D12GraphicsCommandList6_SetGraphicsRootDescriptorTable(This,RootParameterIndex,BaseDescriptor) \ +#define ID3D12GraphicsCommandList9_SetGraphicsRootDescriptorTable(This,RootParameterIndex,BaseDescriptor) \ ( (This)->lpVtbl -> SetGraphicsRootDescriptorTable(This,RootParameterIndex,BaseDescriptor) ) -#define ID3D12GraphicsCommandList6_SetComputeRoot32BitConstant(This,RootParameterIndex,SrcData,DestOffsetIn32BitValues) \ +#define ID3D12GraphicsCommandList9_SetComputeRoot32BitConstant(This,RootParameterIndex,SrcData,DestOffsetIn32BitValues) \ ( (This)->lpVtbl -> SetComputeRoot32BitConstant(This,RootParameterIndex,SrcData,DestOffsetIn32BitValues) ) -#define ID3D12GraphicsCommandList6_SetGraphicsRoot32BitConstant(This,RootParameterIndex,SrcData,DestOffsetIn32BitValues) \ +#define ID3D12GraphicsCommandList9_SetGraphicsRoot32BitConstant(This,RootParameterIndex,SrcData,DestOffsetIn32BitValues) \ ( (This)->lpVtbl -> SetGraphicsRoot32BitConstant(This,RootParameterIndex,SrcData,DestOffsetIn32BitValues) ) -#define ID3D12GraphicsCommandList6_SetComputeRoot32BitConstants(This,RootParameterIndex,Num32BitValuesToSet,pSrcData,DestOffsetIn32BitValues) \ +#define ID3D12GraphicsCommandList9_SetComputeRoot32BitConstants(This,RootParameterIndex,Num32BitValuesToSet,pSrcData,DestOffsetIn32BitValues) \ ( (This)->lpVtbl -> SetComputeRoot32BitConstants(This,RootParameterIndex,Num32BitValuesToSet,pSrcData,DestOffsetIn32BitValues) ) -#define ID3D12GraphicsCommandList6_SetGraphicsRoot32BitConstants(This,RootParameterIndex,Num32BitValuesToSet,pSrcData,DestOffsetIn32BitValues) \ +#define ID3D12GraphicsCommandList9_SetGraphicsRoot32BitConstants(This,RootParameterIndex,Num32BitValuesToSet,pSrcData,DestOffsetIn32BitValues) \ ( (This)->lpVtbl -> SetGraphicsRoot32BitConstants(This,RootParameterIndex,Num32BitValuesToSet,pSrcData,DestOffsetIn32BitValues) ) -#define ID3D12GraphicsCommandList6_SetComputeRootConstantBufferView(This,RootParameterIndex,BufferLocation) \ +#define ID3D12GraphicsCommandList9_SetComputeRootConstantBufferView(This,RootParameterIndex,BufferLocation) \ ( (This)->lpVtbl -> SetComputeRootConstantBufferView(This,RootParameterIndex,BufferLocation) ) -#define ID3D12GraphicsCommandList6_SetGraphicsRootConstantBufferView(This,RootParameterIndex,BufferLocation) \ +#define ID3D12GraphicsCommandList9_SetGraphicsRootConstantBufferView(This,RootParameterIndex,BufferLocation) \ ( (This)->lpVtbl -> SetGraphicsRootConstantBufferView(This,RootParameterIndex,BufferLocation) ) -#define ID3D12GraphicsCommandList6_SetComputeRootShaderResourceView(This,RootParameterIndex,BufferLocation) \ +#define ID3D12GraphicsCommandList9_SetComputeRootShaderResourceView(This,RootParameterIndex,BufferLocation) \ ( (This)->lpVtbl -> SetComputeRootShaderResourceView(This,RootParameterIndex,BufferLocation) ) -#define ID3D12GraphicsCommandList6_SetGraphicsRootShaderResourceView(This,RootParameterIndex,BufferLocation) \ +#define ID3D12GraphicsCommandList9_SetGraphicsRootShaderResourceView(This,RootParameterIndex,BufferLocation) \ ( (This)->lpVtbl -> SetGraphicsRootShaderResourceView(This,RootParameterIndex,BufferLocation) ) -#define ID3D12GraphicsCommandList6_SetComputeRootUnorderedAccessView(This,RootParameterIndex,BufferLocation) \ +#define ID3D12GraphicsCommandList9_SetComputeRootUnorderedAccessView(This,RootParameterIndex,BufferLocation) \ ( (This)->lpVtbl -> SetComputeRootUnorderedAccessView(This,RootParameterIndex,BufferLocation) ) -#define ID3D12GraphicsCommandList6_SetGraphicsRootUnorderedAccessView(This,RootParameterIndex,BufferLocation) \ +#define ID3D12GraphicsCommandList9_SetGraphicsRootUnorderedAccessView(This,RootParameterIndex,BufferLocation) \ ( (This)->lpVtbl -> SetGraphicsRootUnorderedAccessView(This,RootParameterIndex,BufferLocation) ) -#define ID3D12GraphicsCommandList6_IASetIndexBuffer(This,pView) \ +#define ID3D12GraphicsCommandList9_IASetIndexBuffer(This,pView) \ ( (This)->lpVtbl -> IASetIndexBuffer(This,pView) ) -#define ID3D12GraphicsCommandList6_IASetVertexBuffers(This,StartSlot,NumViews,pViews) \ +#define ID3D12GraphicsCommandList9_IASetVertexBuffers(This,StartSlot,NumViews,pViews) \ ( (This)->lpVtbl -> IASetVertexBuffers(This,StartSlot,NumViews,pViews) ) -#define ID3D12GraphicsCommandList6_SOSetTargets(This,StartSlot,NumViews,pViews) \ +#define ID3D12GraphicsCommandList9_SOSetTargets(This,StartSlot,NumViews,pViews) \ ( (This)->lpVtbl -> SOSetTargets(This,StartSlot,NumViews,pViews) ) -#define ID3D12GraphicsCommandList6_OMSetRenderTargets(This,NumRenderTargetDescriptors,pRenderTargetDescriptors,RTsSingleHandleToDescriptorRange,pDepthStencilDescriptor) \ +#define ID3D12GraphicsCommandList9_OMSetRenderTargets(This,NumRenderTargetDescriptors,pRenderTargetDescriptors,RTsSingleHandleToDescriptorRange,pDepthStencilDescriptor) \ ( (This)->lpVtbl -> OMSetRenderTargets(This,NumRenderTargetDescriptors,pRenderTargetDescriptors,RTsSingleHandleToDescriptorRange,pDepthStencilDescriptor) ) -#define ID3D12GraphicsCommandList6_ClearDepthStencilView(This,DepthStencilView,ClearFlags,Depth,Stencil,NumRects,pRects) \ +#define ID3D12GraphicsCommandList9_ClearDepthStencilView(This,DepthStencilView,ClearFlags,Depth,Stencil,NumRects,pRects) \ ( (This)->lpVtbl -> ClearDepthStencilView(This,DepthStencilView,ClearFlags,Depth,Stencil,NumRects,pRects) ) -#define ID3D12GraphicsCommandList6_ClearRenderTargetView(This,RenderTargetView,ColorRGBA,NumRects,pRects) \ +#define ID3D12GraphicsCommandList9_ClearRenderTargetView(This,RenderTargetView,ColorRGBA,NumRects,pRects) \ ( (This)->lpVtbl -> ClearRenderTargetView(This,RenderTargetView,ColorRGBA,NumRects,pRects) ) -#define ID3D12GraphicsCommandList6_ClearUnorderedAccessViewUint(This,ViewGPUHandleInCurrentHeap,ViewCPUHandle,pResource,Values,NumRects,pRects) \ +#define ID3D12GraphicsCommandList9_ClearUnorderedAccessViewUint(This,ViewGPUHandleInCurrentHeap,ViewCPUHandle,pResource,Values,NumRects,pRects) \ ( (This)->lpVtbl -> ClearUnorderedAccessViewUint(This,ViewGPUHandleInCurrentHeap,ViewCPUHandle,pResource,Values,NumRects,pRects) ) -#define ID3D12GraphicsCommandList6_ClearUnorderedAccessViewFloat(This,ViewGPUHandleInCurrentHeap,ViewCPUHandle,pResource,Values,NumRects,pRects) \ +#define ID3D12GraphicsCommandList9_ClearUnorderedAccessViewFloat(This,ViewGPUHandleInCurrentHeap,ViewCPUHandle,pResource,Values,NumRects,pRects) \ ( (This)->lpVtbl -> ClearUnorderedAccessViewFloat(This,ViewGPUHandleInCurrentHeap,ViewCPUHandle,pResource,Values,NumRects,pRects) ) -#define ID3D12GraphicsCommandList6_DiscardResource(This,pResource,pRegion) \ +#define ID3D12GraphicsCommandList9_DiscardResource(This,pResource,pRegion) \ ( (This)->lpVtbl -> DiscardResource(This,pResource,pRegion) ) -#define ID3D12GraphicsCommandList6_BeginQuery(This,pQueryHeap,Type,Index) \ +#define ID3D12GraphicsCommandList9_BeginQuery(This,pQueryHeap,Type,Index) \ ( (This)->lpVtbl -> BeginQuery(This,pQueryHeap,Type,Index) ) -#define ID3D12GraphicsCommandList6_EndQuery(This,pQueryHeap,Type,Index) \ +#define ID3D12GraphicsCommandList9_EndQuery(This,pQueryHeap,Type,Index) \ ( (This)->lpVtbl -> EndQuery(This,pQueryHeap,Type,Index) ) -#define ID3D12GraphicsCommandList6_ResolveQueryData(This,pQueryHeap,Type,StartIndex,NumQueries,pDestinationBuffer,AlignedDestinationBufferOffset) \ +#define ID3D12GraphicsCommandList9_ResolveQueryData(This,pQueryHeap,Type,StartIndex,NumQueries,pDestinationBuffer,AlignedDestinationBufferOffset) \ ( (This)->lpVtbl -> ResolveQueryData(This,pQueryHeap,Type,StartIndex,NumQueries,pDestinationBuffer,AlignedDestinationBufferOffset) ) -#define ID3D12GraphicsCommandList6_SetPredication(This,pBuffer,AlignedBufferOffset,Operation) \ +#define ID3D12GraphicsCommandList9_SetPredication(This,pBuffer,AlignedBufferOffset,Operation) \ ( (This)->lpVtbl -> SetPredication(This,pBuffer,AlignedBufferOffset,Operation) ) -#define ID3D12GraphicsCommandList6_SetMarker(This,Metadata,pData,Size) \ +#define ID3D12GraphicsCommandList9_SetMarker(This,Metadata,pData,Size) \ ( (This)->lpVtbl -> SetMarker(This,Metadata,pData,Size) ) -#define ID3D12GraphicsCommandList6_BeginEvent(This,Metadata,pData,Size) \ +#define ID3D12GraphicsCommandList9_BeginEvent(This,Metadata,pData,Size) \ ( (This)->lpVtbl -> BeginEvent(This,Metadata,pData,Size) ) -#define ID3D12GraphicsCommandList6_EndEvent(This) \ +#define ID3D12GraphicsCommandList9_EndEvent(This) \ ( (This)->lpVtbl -> EndEvent(This) ) -#define ID3D12GraphicsCommandList6_ExecuteIndirect(This,pCommandSignature,MaxCommandCount,pArgumentBuffer,ArgumentBufferOffset,pCountBuffer,CountBufferOffset) \ +#define ID3D12GraphicsCommandList9_ExecuteIndirect(This,pCommandSignature,MaxCommandCount,pArgumentBuffer,ArgumentBufferOffset,pCountBuffer,CountBufferOffset) \ ( (This)->lpVtbl -> ExecuteIndirect(This,pCommandSignature,MaxCommandCount,pArgumentBuffer,ArgumentBufferOffset,pCountBuffer,CountBufferOffset) ) -#define ID3D12GraphicsCommandList6_AtomicCopyBufferUINT(This,pDstBuffer,DstOffset,pSrcBuffer,SrcOffset,Dependencies,ppDependentResources,pDependentSubresourceRanges) \ +#define ID3D12GraphicsCommandList9_AtomicCopyBufferUINT(This,pDstBuffer,DstOffset,pSrcBuffer,SrcOffset,Dependencies,ppDependentResources,pDependentSubresourceRanges) \ ( (This)->lpVtbl -> AtomicCopyBufferUINT(This,pDstBuffer,DstOffset,pSrcBuffer,SrcOffset,Dependencies,ppDependentResources,pDependentSubresourceRanges) ) -#define ID3D12GraphicsCommandList6_AtomicCopyBufferUINT64(This,pDstBuffer,DstOffset,pSrcBuffer,SrcOffset,Dependencies,ppDependentResources,pDependentSubresourceRanges) \ +#define ID3D12GraphicsCommandList9_AtomicCopyBufferUINT64(This,pDstBuffer,DstOffset,pSrcBuffer,SrcOffset,Dependencies,ppDependentResources,pDependentSubresourceRanges) \ ( (This)->lpVtbl -> AtomicCopyBufferUINT64(This,pDstBuffer,DstOffset,pSrcBuffer,SrcOffset,Dependencies,ppDependentResources,pDependentSubresourceRanges) ) -#define ID3D12GraphicsCommandList6_OMSetDepthBounds(This,Min,Max) \ +#define ID3D12GraphicsCommandList9_OMSetDepthBounds(This,Min,Max) \ ( (This)->lpVtbl -> OMSetDepthBounds(This,Min,Max) ) -#define ID3D12GraphicsCommandList6_SetSamplePositions(This,NumSamplesPerPixel,NumPixels,pSamplePositions) \ +#define ID3D12GraphicsCommandList9_SetSamplePositions(This,NumSamplesPerPixel,NumPixels,pSamplePositions) \ ( (This)->lpVtbl -> SetSamplePositions(This,NumSamplesPerPixel,NumPixels,pSamplePositions) ) -#define ID3D12GraphicsCommandList6_ResolveSubresourceRegion(This,pDstResource,DstSubresource,DstX,DstY,pSrcResource,SrcSubresource,pSrcRect,Format,ResolveMode) \ +#define ID3D12GraphicsCommandList9_ResolveSubresourceRegion(This,pDstResource,DstSubresource,DstX,DstY,pSrcResource,SrcSubresource,pSrcRect,Format,ResolveMode) \ ( (This)->lpVtbl -> ResolveSubresourceRegion(This,pDstResource,DstSubresource,DstX,DstY,pSrcResource,SrcSubresource,pSrcRect,Format,ResolveMode) ) -#define ID3D12GraphicsCommandList6_SetViewInstanceMask(This,Mask) \ +#define ID3D12GraphicsCommandList9_SetViewInstanceMask(This,Mask) \ ( (This)->lpVtbl -> SetViewInstanceMask(This,Mask) ) -#define ID3D12GraphicsCommandList6_WriteBufferImmediate(This,Count,pParams,pModes) \ +#define ID3D12GraphicsCommandList9_WriteBufferImmediate(This,Count,pParams,pModes) \ ( (This)->lpVtbl -> WriteBufferImmediate(This,Count,pParams,pModes) ) -#define ID3D12GraphicsCommandList6_SetProtectedResourceSession(This,pProtectedResourceSession) \ +#define ID3D12GraphicsCommandList9_SetProtectedResourceSession(This,pProtectedResourceSession) \ ( (This)->lpVtbl -> SetProtectedResourceSession(This,pProtectedResourceSession) ) -#define ID3D12GraphicsCommandList6_BeginRenderPass(This,NumRenderTargets,pRenderTargets,pDepthStencil,Flags) \ +#define ID3D12GraphicsCommandList9_BeginRenderPass(This,NumRenderTargets,pRenderTargets,pDepthStencil,Flags) \ ( (This)->lpVtbl -> BeginRenderPass(This,NumRenderTargets,pRenderTargets,pDepthStencil,Flags) ) -#define ID3D12GraphicsCommandList6_EndRenderPass(This) \ +#define ID3D12GraphicsCommandList9_EndRenderPass(This) \ ( (This)->lpVtbl -> EndRenderPass(This) ) -#define ID3D12GraphicsCommandList6_InitializeMetaCommand(This,pMetaCommand,pInitializationParametersData,InitializationParametersDataSizeInBytes) \ +#define ID3D12GraphicsCommandList9_InitializeMetaCommand(This,pMetaCommand,pInitializationParametersData,InitializationParametersDataSizeInBytes) \ ( (This)->lpVtbl -> InitializeMetaCommand(This,pMetaCommand,pInitializationParametersData,InitializationParametersDataSizeInBytes) ) -#define ID3D12GraphicsCommandList6_ExecuteMetaCommand(This,pMetaCommand,pExecutionParametersData,ExecutionParametersDataSizeInBytes) \ +#define ID3D12GraphicsCommandList9_ExecuteMetaCommand(This,pMetaCommand,pExecutionParametersData,ExecutionParametersDataSizeInBytes) \ ( (This)->lpVtbl -> ExecuteMetaCommand(This,pMetaCommand,pExecutionParametersData,ExecutionParametersDataSizeInBytes) ) -#define ID3D12GraphicsCommandList6_BuildRaytracingAccelerationStructure(This,pDesc,NumPostbuildInfoDescs,pPostbuildInfoDescs) \ +#define ID3D12GraphicsCommandList9_BuildRaytracingAccelerationStructure(This,pDesc,NumPostbuildInfoDescs,pPostbuildInfoDescs) \ ( (This)->lpVtbl -> BuildRaytracingAccelerationStructure(This,pDesc,NumPostbuildInfoDescs,pPostbuildInfoDescs) ) -#define ID3D12GraphicsCommandList6_EmitRaytracingAccelerationStructurePostbuildInfo(This,pDesc,NumSourceAccelerationStructures,pSourceAccelerationStructureData) \ +#define ID3D12GraphicsCommandList9_EmitRaytracingAccelerationStructurePostbuildInfo(This,pDesc,NumSourceAccelerationStructures,pSourceAccelerationStructureData) \ ( (This)->lpVtbl -> EmitRaytracingAccelerationStructurePostbuildInfo(This,pDesc,NumSourceAccelerationStructures,pSourceAccelerationStructureData) ) -#define ID3D12GraphicsCommandList6_CopyRaytracingAccelerationStructure(This,DestAccelerationStructureData,SourceAccelerationStructureData,Mode) \ +#define ID3D12GraphicsCommandList9_CopyRaytracingAccelerationStructure(This,DestAccelerationStructureData,SourceAccelerationStructureData,Mode) \ ( (This)->lpVtbl -> CopyRaytracingAccelerationStructure(This,DestAccelerationStructureData,SourceAccelerationStructureData,Mode) ) -#define ID3D12GraphicsCommandList6_SetPipelineState1(This,pStateObject) \ +#define ID3D12GraphicsCommandList9_SetPipelineState1(This,pStateObject) \ ( (This)->lpVtbl -> SetPipelineState1(This,pStateObject) ) -#define ID3D12GraphicsCommandList6_DispatchRays(This,pDesc) \ +#define ID3D12GraphicsCommandList9_DispatchRays(This,pDesc) \ ( (This)->lpVtbl -> DispatchRays(This,pDesc) ) -#define ID3D12GraphicsCommandList6_RSSetShadingRate(This,baseShadingRate,combiners) \ +#define ID3D12GraphicsCommandList9_RSSetShadingRate(This,baseShadingRate,combiners) \ ( (This)->lpVtbl -> RSSetShadingRate(This,baseShadingRate,combiners) ) -#define ID3D12GraphicsCommandList6_RSSetShadingRateImage(This,shadingRateImage) \ +#define ID3D12GraphicsCommandList9_RSSetShadingRateImage(This,shadingRateImage) \ ( (This)->lpVtbl -> RSSetShadingRateImage(This,shadingRateImage) ) -#define ID3D12GraphicsCommandList6_DispatchMesh(This,ThreadGroupCountX,ThreadGroupCountY,ThreadGroupCountZ) \ +#define ID3D12GraphicsCommandList9_DispatchMesh(This,ThreadGroupCountX,ThreadGroupCountY,ThreadGroupCountZ) \ ( (This)->lpVtbl -> DispatchMesh(This,ThreadGroupCountX,ThreadGroupCountY,ThreadGroupCountZ) ) + +#define ID3D12GraphicsCommandList9_Barrier(This,NumBarrierGroups,pBarrierGroups) \ + ( (This)->lpVtbl -> Barrier(This,NumBarrierGroups,pBarrierGroups) ) + + +#define ID3D12GraphicsCommandList9_OMSetFrontAndBackStencilRef(This,FrontStencilRef,BackStencilRef) \ + ( (This)->lpVtbl -> OMSetFrontAndBackStencilRef(This,FrontStencilRef,BackStencilRef) ) + + +#define ID3D12GraphicsCommandList9_RSSetDepthBias(This,DepthBias,DepthBiasClamp,SlopeScaledDepthBias) \ + ( (This)->lpVtbl -> RSSetDepthBias(This,DepthBias,DepthBiasClamp,SlopeScaledDepthBias) ) + +#define ID3D12GraphicsCommandList9_IASetIndexBufferStripCutValue(This,IBStripCutValue) \ + ( (This)->lpVtbl -> IASetIndexBufferStripCutValue(This,IBStripCutValue) ) + #endif /* COBJMACROS */ @@ -27223,10 +29531,10 @@ EXTERN_C const IID IID_ID3D12GraphicsCommandList6; -#endif /* __ID3D12GraphicsCommandList6_INTERFACE_DEFINED__ */ +#endif /* __ID3D12GraphicsCommandList9_INTERFACE_DEFINED__ */ -/* interface __MIDL_itf_d3d12_0000_0056 */ +/* interface __MIDL_itf_d3d12_0000_0066 */ /* [local] */ #endif /* WINAPI_FAMILY_PARTITION(WINAPI_PARTITION_APP | WINAPI_PARTITION_GAMES) */ @@ -27268,6 +29576,7 @@ DEFINE_GUID(IID_ID3D12StateObjectProperties,0xde5fa827,0x9bf9,0x4f26,0x89,0xff,0 DEFINE_GUID(IID_ID3D12Device5,0x8b4f173b,0x2fea,0x4b80,0x8f,0x58,0x43,0x07,0x19,0x1a,0xb9,0x5d); DEFINE_GUID(IID_ID3D12DeviceRemovedExtendedDataSettings,0x82BC481C,0x6B9B,0x4030,0xAE,0xDB,0x7E,0xE3,0xD1,0xDF,0x1E,0x63); DEFINE_GUID(IID_ID3D12DeviceRemovedExtendedDataSettings1,0xDBD5AE51,0x3317,0x4F0A,0xAD,0xF9,0x1D,0x7C,0xED,0xCA,0xAE,0x0B); +DEFINE_GUID(IID_ID3D12DeviceRemovedExtendedDataSettings2,0x61552388,0x01ab,0x4008,0xa4,0x36,0x83,0xdb,0x18,0x95,0x66,0xea); DEFINE_GUID(IID_ID3D12DeviceRemovedExtendedData,0x98931D33,0x5AE8,0x4791,0xAA,0x3C,0x1A,0x73,0xA2,0x93,0x4E,0x71); DEFINE_GUID(IID_ID3D12DeviceRemovedExtendedData1,0x9727A022,0xCF1D,0x4DDA,0x9E,0xBA,0xEF,0xFA,0x65,0x3F,0xC5,0x06); DEFINE_GUID(IID_ID3D12DeviceRemovedExtendedData2,0x67FC5816,0xE4CA,0x4915,0xBF,0x18,0x42,0x54,0x12,0x72,0xDA,0x54); @@ -27283,14 +29592,23 @@ DEFINE_GUID(IID_ID3D12MetaCommand,0xDBB84C27,0x36CE,0x4FC9,0xB8,0x01,0xF0,0x48,0 DEFINE_GUID(IID_ID3D12GraphicsCommandList4,0x8754318e,0xd3a9,0x4541,0x98,0xcf,0x64,0x5b,0x50,0xdc,0x48,0x74); DEFINE_GUID(IID_ID3D12ShaderCacheSession,0x28e2495d,0x0f64,0x4ae4,0xa6,0xec,0x12,0x92,0x55,0xdc,0x49,0xa8); DEFINE_GUID(IID_ID3D12Device9,0x4c80e962,0xf032,0x4f60,0xbc,0x9e,0xeb,0xc2,0xcf,0xa1,0xd8,0x3c); +DEFINE_GUID(IID_ID3D12Device10,0x517f8718,0xaa66,0x49f9,0xb0,0x2b,0xa7,0xab,0x89,0xc0,0x60,0x31); +DEFINE_GUID(IID_ID3D12Device11,0x5405c344,0xd457,0x444e,0xb4,0xdd,0x23,0x66,0xe4,0x5a,0xee,0x39); +DEFINE_GUID(IID_ID3D12VirtualizationGuestDevice,0xbc66d368,0x7373,0x4943,0x87,0x57,0xfc,0x87,0xdc,0x79,0xe4,0x76); DEFINE_GUID(IID_ID3D12Tools,0x7071e1f0,0xe84b,0x4b33,0x97,0x4f,0x12,0xfa,0x49,0xde,0x65,0xc5); DEFINE_GUID(IID_ID3D12SDKConfiguration,0xe9eb5314,0x33aa,0x42b2,0xa7,0x18,0xd7,0x7f,0x58,0xb1,0xf1,0xc7); +DEFINE_GUID(IID_ID3D12SDKConfiguration1,0x8aaf9303,0xad25,0x48b9,0x9a,0x57,0xd9,0xc3,0x7e,0x00,0x9d,0x9f); +DEFINE_GUID(IID_ID3D12DeviceFactory,0x61f307d3,0xd34e,0x4e7c,0x83,0x74,0x3b,0xa4,0xde,0x23,0xcc,0xcb); +DEFINE_GUID(IID_ID3D12DeviceConfiguration,0x78dbf87b,0xf766,0x422b,0xa6,0x1c,0xc8,0xc4,0x46,0xbd,0xb9,0xad); DEFINE_GUID(IID_ID3D12GraphicsCommandList5,0x55050859,0x4024,0x474c,0x87,0xf5,0x64,0x72,0xea,0xee,0x44,0xea); DEFINE_GUID(IID_ID3D12GraphicsCommandList6,0xc3827890,0xe548,0x4cfa,0x96,0xcf,0x56,0x89,0xa9,0x37,0x0f,0x80); +DEFINE_GUID(IID_ID3D12GraphicsCommandList7,0xdd171223,0x8b61,0x4769,0x90,0xe3,0x16,0x0c,0xcd,0xe4,0xe2,0xc1); +DEFINE_GUID(IID_ID3D12GraphicsCommandList8,0xee936ef9,0x599d,0x4d28,0x93,0x8e,0x23,0xc4,0xad,0x05,0xce,0x51); +DEFINE_GUID(IID_ID3D12GraphicsCommandList9,0x34ed2808,0xffe6,0x4c2b,0xb1,0x1a,0xca,0xbd,0x2b,0x0c,0x59,0xe1); -extern RPC_IF_HANDLE __MIDL_itf_d3d12_0000_0056_v0_0_c_ifspec; -extern RPC_IF_HANDLE __MIDL_itf_d3d12_0000_0056_v0_0_s_ifspec; +extern RPC_IF_HANDLE __MIDL_itf_d3d12_0000_0066_v0_0_c_ifspec; +extern RPC_IF_HANDLE __MIDL_itf_d3d12_0000_0066_v0_0_s_ifspec; /* Additional Prototypes for ALL interfaces */ diff --git a/generation/WinSDK/RecompiledIdlHeaders/um/d3d12.idl b/generation/WinSDK/RecompiledIdlHeaders/um/d3d12.idl index 81b72af55..9cbec3292 100644 --- a/generation/WinSDK/RecompiledIdlHeaders/um/d3d12.idl +++ b/generation/WinSDK/RecompiledIdlHeaders/um/d3d12.idl @@ -4,8 +4,8 @@ * Licensed under the MIT license * *-------------------------------------------------------------------------------------*/ -import "OAIdl.idl"; -import "OCIdl.idl"; +import "oaidl.idl"; +import "ocidl.idl"; import "dxgicommon.idl"; import "dxgiformat.idl"; @@ -293,6 +293,7 @@ const UINT D3D12_OS_RESERVED_REGISTER_SPACE_VALUES_END = 0xffffffff; const UINT D3D12_OS_RESERVED_REGISTER_SPACE_VALUES_START = 0xfffffff8; const UINT D3D12_PACKED_TILE = 0xffffffff; const UINT D3D12_PIXEL_ADDRESS_RANGE_BIT_COUNT = 15; +const UINT D3D12_PREVIEW_SDK_VERSION = 707; const UINT D3D12_PRE_SCISSOR_PIXEL_ADDRESS_RANGE_BIT_COUNT = 16; const UINT D3D12_PS_CS_UAV_REGISTER_COMPONENTS = 1; const UINT D3D12_PS_CS_UAV_REGISTER_COUNT = 8; @@ -360,7 +361,7 @@ const UINT D3D12_REQ_TEXTURECUBE_DIMENSION = 16384; const UINT D3D12_RESINFO_INSTRUCTION_MISSING_COMPONENT_RETVAL = 0; const UINT D3D12_RESOURCE_BARRIER_ALL_SUBRESOURCES = 0xffffffff; const UINT D3D12_RS_SET_SHADING_RATE_COMBINER_COUNT = 2; -const UINT D3D12_SDK_VERSION = 5; +const UINT D3D12_SDK_VERSION = 608; const UINT D3D12_SHADER_IDENTIFIER_SIZE_IN_BYTES = 32; const UINT D3D12_SHADER_MAJOR_VERSION = 5; const UINT D3D12_SHADER_MAX_INSTANCES = 65535; @@ -459,6 +460,8 @@ typedef enum D3D12_COMMAND_LIST_TYPE D3D12_COMMAND_LIST_TYPE_VIDEO_PROCESS = 5, D3D12_COMMAND_LIST_TYPE_VIDEO_ENCODE = 6, + D3D12_COMMAND_LIST_TYPE_NONE = -1, + } D3D12_COMMAND_LIST_TYPE; typedef enum D3D12_COMMAND_QUEUE_FLAGS @@ -573,6 +576,7 @@ typedef struct D3D12_BOX // Keep COMPARISON_FUNC values in sync with earlier DX versions (HW consumes values directly). typedef enum D3D12_COMPARISON_FUNC { + D3D12_COMPARISON_FUNC_NONE = 0, D3D12_COMPARISON_FUNC_NEVER = 1, D3D12_COMPARISON_FUNC_LESS = 2, D3D12_COMPARISON_FUNC_EQUAL = 3, @@ -635,6 +639,28 @@ typedef struct D3D12_DEPTH_STENCIL_DESC1 BOOL DepthBoundsTestEnable; } D3D12_DEPTH_STENCIL_DESC1; +// Front/back face independent stencil masks +typedef struct D3D12_DEPTH_STENCILOP_DESC1 +{ + D3D12_STENCIL_OP StencilFailOp; + D3D12_STENCIL_OP StencilDepthFailOp; + D3D12_STENCIL_OP StencilPassOp; + D3D12_COMPARISON_FUNC StencilFunc; + UINT8 StencilReadMask; + UINT8 StencilWriteMask; +} D3D12_DEPTH_STENCILOP_DESC1; + +typedef struct D3D12_DEPTH_STENCIL_DESC2 +{ + BOOL DepthEnable; + D3D12_DEPTH_WRITE_MASK DepthWriteMask; + D3D12_COMPARISON_FUNC DepthFunc; + BOOL StencilEnable; + D3D12_DEPTH_STENCILOP_DESC1 FrontFace; + D3D12_DEPTH_STENCILOP_DESC1 BackFace; + BOOL DepthBoundsTestEnable; +} D3D12_DEPTH_STENCIL_DESC2; + //////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////// // @@ -664,6 +690,8 @@ typedef enum D3D12_BLEND D3D12_BLEND_INV_SRC1_COLOR = 17, // 1.0f - PS output o1.rgb D3D12_BLEND_SRC1_ALPHA = 18, // PS output o1.a D3D12_BLEND_INV_SRC1_ALPHA = 19, // 1.0f - PS output o1.a + D3D12_BLEND_ALPHA_FACTOR = 20, + D3D12_BLEND_INV_ALPHA_FACTOR = 21 } D3D12_BLEND; // Keep BLENDOP values in sync with earlier DX versions (HW consumes values directly). @@ -760,6 +788,21 @@ typedef struct D3D12_RASTERIZER_DESC D3D12_CONSERVATIVE_RASTERIZATION_MODE ConservativeRaster; } D3D12_RASTERIZER_DESC; +typedef struct D3D12_RASTERIZER_DESC1 +{ + D3D12_FILL_MODE FillMode; + D3D12_CULL_MODE CullMode; + BOOL FrontCounterClockwise; + FLOAT DepthBias; + FLOAT DepthBiasClamp; + FLOAT SlopeScaledDepthBias; + BOOL DepthClipEnable; + BOOL MultisampleEnable; + BOOL AntialiasedLineEnable; + UINT ForcedSampleCount; + D3D12_CONSERVATIVE_RASTERIZATION_MODE ConservativeRaster; +} D3D12_RASTERIZER_DESC1; + //////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////// // // Pipeline State v1 @@ -810,6 +853,8 @@ typedef enum D3D12_PIPELINE_STATE_FLAGS { D3D12_PIPELINE_STATE_FLAG_NONE = 0x0, D3D12_PIPELINE_STATE_FLAG_TOOL_DEBUG = 0x1, + D3D12_PIPELINE_STATE_FLAG_DYNAMIC_DEPTH_BIAS = 0x4, + D3D12_PIPELINE_STATE_FLAG_DYNAMIC_INDEX_BUFFER_STRIP_CUT = 0x8, } D3D12_PIPELINE_STATE_FLAGS; cpp_quote( "DEFINE_ENUM_FLAG_OPERATORS( D3D12_PIPELINE_STATE_FLAGS );" ) @@ -893,6 +938,8 @@ typedef enum D3D12_PIPELINE_STATE_SUBOBJECT_TYPE D3D12_PIPELINE_STATE_SUBOBJECT_TYPE_VIEW_INSTANCING, // D3D12_VIEW_INSTANCING_DESC D3D12_PIPELINE_STATE_SUBOBJECT_TYPE_AS = 24, // D3D12_SHADER_BYTECODE D3D12_PIPELINE_STATE_SUBOBJECT_TYPE_MS = 25, // D3D12_SHADER_BYTECODE + D3D12_PIPELINE_STATE_SUBOBJECT_TYPE_DEPTH_STENCIL2 = 26, // D3D12_DEPTH_STENCIL_DESC2 + D3D12_PIPELINE_STATE_SUBOBJECT_TYPE_RASTERIZER1 = 27, // D3D12_RASTERIZER_DESC1 D3D12_PIPELINE_STATE_SUBOBJECT_TYPE_MAX_VALID, } D3D12_PIPELINE_STATE_SUBOBJECT_TYPE; @@ -935,6 +982,11 @@ typedef enum D3D12_FEATURE D3D12_FEATURE_D3D12_OPTIONS9 = 37, D3D12_FEATURE_D3D12_OPTIONS10 = 39, D3D12_FEATURE_D3D12_OPTIONS11 = 40, + D3D12_FEATURE_D3D12_OPTIONS12 = 41, + D3D12_FEATURE_D3D12_OPTIONS13 = 42, + D3D12_FEATURE_D3D12_OPTIONS14 = 43, + D3D12_FEATURE_D3D12_OPTIONS15 = 44, + D3D12_FEATURE_D3D12_OPTIONS16 = 45 } D3D12_FEATURE; typedef enum D3D12_SHADER_MIN_PRECISION_SUPPORT @@ -1149,6 +1201,8 @@ typedef enum D3D_SHADER_MODEL D3D_SHADER_MODEL_6_5 = 0x65, D3D_SHADER_MODEL_6_6 = 0x66, D3D_SHADER_MODEL_6_7 = 0x67, + D3D_SHADER_MODEL_6_8 = 0x68, + D3D_HIGHEST_SHADER_MODEL = D3D_SHADER_MODEL_6_8 } D3D_SHADER_MODEL; typedef struct D3D12_FEATURE_DATA_SHADER_MODEL @@ -1394,6 +1448,53 @@ typedef struct D3D12_FEATURE_DATA_D3D12_OPTIONS11 [annotation("_Out_")] BOOL AtomicInt64OnDescriptorHeapResourceSupported; } D3D12_FEATURE_DATA_D3D12_OPTIONS11; +typedef enum D3D12_TRI_STATE { + D3D12_TRI_STATE_UNKNOWN = -1, + D3D12_TRI_STATE_FALSE = 0, + D3D12_TRI_STATE_TRUE = 1, +} D3D12_TRI_STATE; + +// D3D12_FEATURE_D3D12_OPTIONS12 +typedef struct D3D12_FEATURE_DATA_D3D12_OPTIONS12 +{ + [annotation("_Out_")] D3D12_TRI_STATE MSPrimitivesPipelineStatisticIncludesCulledPrimitives; + [annotation("_Out_")] BOOL EnhancedBarriersSupported; + [annotation("_Out_")] BOOL RelaxedFormatCastingSupported; +} D3D12_FEATURE_DATA_D3D12_OPTIONS12; + +// D3D12_FEATURE_D3D12_OPTIONS13 +typedef struct D3D12_FEATURE_DATA_D3D12_OPTIONS13 +{ + [annotation("_Out_")] BOOL UnrestrictedBufferTextureCopyPitchSupported; + [annotation("_Out_")] BOOL UnrestrictedVertexElementAlignmentSupported; + [annotation("_Out_")] BOOL InvertedViewportHeightFlipsYSupported; + [annotation("_Out_")] BOOL InvertedViewportDepthFlipsZSupported; + [annotation("_Out_")] BOOL TextureCopyBetweenDimensionsSupported; + [annotation("_Out_")] BOOL AlphaBlendFactorSupported; +} D3D12_FEATURE_DATA_D3D12_OPTIONS13; + +// D3D12_FEATURE_D3D12_OPTIONS14 +typedef struct D3D12_FEATURE_DATA_D3D12_OPTIONS14 +{ + [annotation("_Out_")] BOOL AdvancedTextureOpsSupported; + [annotation("_Out_")] BOOL WriteableMSAATexturesSupported; + [annotation("_Out_")] BOOL IndependentFrontAndBackStencilRefMaskSupported; +} D3D12_FEATURE_DATA_D3D12_OPTIONS14; + +// D3D12_FEATURE_D3D12_OPTIONS15 +typedef struct D3D12_FEATURE_DATA_D3D12_OPTIONS15 +{ + [annotation("_Out_")] BOOL TriangleFanSupported; + [annotation("_Out_")] BOOL DynamicIndexBufferStripCutSupported; +} D3D12_FEATURE_DATA_D3D12_OPTIONS15; + +// D3D12_FEATURE_D3D12_OPTIONS16 +typedef struct D3D12_FEATURE_DATA_D3D12_OPTIONS16 +{ + [annotation("_Out_")] BOOL DynamicDepthBiasSupported; + [annotation("_Out_")] BOOL Reserved; // +} D3D12_FEATURE_DATA_D3D12_OPTIONS16; + typedef struct D3D12_RESOURCE_ALLOCATION_INFO { @@ -1501,6 +1602,7 @@ typedef enum D3D12_RESOURCE_FLAGS D3D12_RESOURCE_FLAG_ALLOW_SIMULTANEOUS_ACCESS = 0x20, D3D12_RESOURCE_FLAG_VIDEO_DECODE_REFERENCE_ONLY = 0x40, D3D12_RESOURCE_FLAG_VIDEO_ENCODE_REFERENCE_ONLY = 0x80, + D3D12_RESOURCE_FLAG_RAYTRACING_ACCELERATION_STRUCTURE = 0x100, } D3D12_RESOURCE_FLAGS; cpp_quote( "DEFINE_ENUM_FLAG_OPERATORS( D3D12_RESOURCE_FLAGS );" ) @@ -2097,6 +2199,8 @@ typedef enum D3D12_TEXTURE_ADDRESS_MODE D3D12_TEXTURE_ADDRESS_MODE_MIRROR_ONCE = 5 } D3D12_TEXTURE_ADDRESS_MODE; + + typedef struct D3D12_SAMPLER_DESC { D3D12_FILTER Filter; @@ -2111,6 +2215,35 @@ typedef struct D3D12_SAMPLER_DESC FLOAT MaxLOD; } D3D12_SAMPLER_DESC; + +typedef enum D3D12_SAMPLER_FLAGS +{ + D3D12_SAMPLER_FLAG_NONE = 0x0, + D3D12_SAMPLER_FLAG_UINT_BORDER_COLOR = 0x01 +} D3D12_SAMPLER_FLAGS; +cpp_quote("DEFINE_ENUM_FLAG_OPERATORS( D3D12_SAMPLER_FLAGS );") + +typedef struct D3D12_SAMPLER_DESC2 +{ + D3D12_FILTER Filter; + D3D12_TEXTURE_ADDRESS_MODE AddressU; + D3D12_TEXTURE_ADDRESS_MODE AddressV; + D3D12_TEXTURE_ADDRESS_MODE AddressW; + FLOAT MipLODBias; + UINT MaxAnisotropy; + D3D12_COMPARISON_FUNC ComparisonFunc; + union + { + FLOAT FloatBorderColor[4]; // RGBA + UINT UintBorderColor[4]; + }; + FLOAT MinLOD; + FLOAT MaxLOD; + D3D12_SAMPLER_FLAGS Flags; +} D3D12_SAMPLER_DESC2; + + + typedef enum D3D12_BUFFER_UAV_FLAGS { D3D12_BUFFER_UAV_FLAG_NONE = 0, @@ -2153,6 +2286,18 @@ typedef struct D3D12_TEX2D_ARRAY_UAV UINT PlaneSlice; } D3D12_TEX2D_ARRAY_UAV; +typedef struct D3D12_TEX2DMS_UAV +{ + // don't need to define anything specific for this view dimension + UINT UnusedField_NothingToDefine; +} D3D12_TEX2DMS_UAV; + +typedef struct D3D12_TEX2DMS_ARRAY_UAV +{ + UINT FirstArraySlice; + UINT ArraySize; +} D3D12_TEX2DMS_ARRAY_UAV; + typedef struct D3D12_TEX3D_UAV { UINT MipSlice; @@ -2168,6 +2313,8 @@ typedef enum D3D12_UAV_DIMENSION D3D12_UAV_DIMENSION_TEXTURE1DARRAY = 3, D3D12_UAV_DIMENSION_TEXTURE2D = 4, D3D12_UAV_DIMENSION_TEXTURE2DARRAY = 5, + D3D12_UAV_DIMENSION_TEXTURE2DMS = 6, + D3D12_UAV_DIMENSION_TEXTURE2DMSARRAY = 7, D3D12_UAV_DIMENSION_TEXTURE3D = 8, } D3D12_UAV_DIMENSION; @@ -2183,6 +2330,8 @@ typedef struct D3D12_UNORDERED_ACCESS_VIEW_DESC D3D12_TEX1D_ARRAY_UAV Texture1DArray; D3D12_TEX2D_UAV Texture2D; D3D12_TEX2D_ARRAY_UAV Texture2DArray; + D3D12_TEX2DMS_UAV Texture2DMS; + D3D12_TEX2DMS_ARRAY_UAV Texture2DMSArray; D3D12_TEX3D_UAV Texture3D; }; } D3D12_UNORDERED_ACCESS_VIEW_DESC; @@ -2469,11 +2618,14 @@ typedef enum D3D12_ROOT_SIGNATURE_FLAGS } D3D12_ROOT_SIGNATURE_FLAGS; cpp_quote( "DEFINE_ENUM_FLAG_OPERATORS( D3D12_ROOT_SIGNATURE_FLAGS );" ) + typedef enum D3D12_STATIC_BORDER_COLOR { D3D12_STATIC_BORDER_COLOR_TRANSPARENT_BLACK, // 0.0f,0.0f,0.0f,0.0f D3D12_STATIC_BORDER_COLOR_OPAQUE_BLACK, // 0.0f,0.0f,0.0f,1.0f D3D12_STATIC_BORDER_COLOR_OPAQUE_WHITE, // 1.0f,1.0f,1.0f,1.0f + D3D12_STATIC_BORDER_COLOR_OPAQUE_BLACK_UINT, // 0,0,0,1 + D3D12_STATIC_BORDER_COLOR_OPAQUE_WHITE_UINT // 1,1,1,1 } D3D12_STATIC_BORDER_COLOR; typedef struct D3D12_STATIC_SAMPLER_DESC @@ -4718,6 +4870,13 @@ interface ID3D12DeviceRemovedExtendedDataSettings1 void SetBreadcrumbContextEnablement(D3D12_DRED_ENABLEMENT Enablement); }; +[uuid(61552388-01ab-4008-a436-83db189566ea), object, local, pointer_default(unique)] +interface ID3D12DeviceRemovedExtendedDataSettings2 + : ID3D12DeviceRemovedExtendedDataSettings1 +{ + void UseMarkersOnlyAutoBreadcrumbs(BOOL MarkersOnly); +}; + [uuid(98931D33-5AE8-4791-AA3C-1A73A2934E71), object, local, pointer_default(unique)] interface ID3D12DeviceRemovedExtendedData @@ -4862,7 +5021,6 @@ interface ID3D12Device8 : ID3D12Device7 }; - [uuid(9D5E227A-4430-4161-88B3-3ECA6BB16E19), object, local, pointer_default(unique)] interface ID3D12Resource1 : ID3D12Resource @@ -5093,6 +5251,172 @@ typedef struct D3D12_SHADER_CACHE_SESSION_DESC UINT64 Version; } D3D12_SHADER_CACHE_SESSION_DESC; +typedef enum D3D12_BARRIER_LAYOUT +{ + D3D12_BARRIER_LAYOUT_UNDEFINED = 0xffffffff, + D3D12_BARRIER_LAYOUT_COMMON = 0, + D3D12_BARRIER_LAYOUT_PRESENT = 0, + D3D12_BARRIER_LAYOUT_GENERIC_READ, + D3D12_BARRIER_LAYOUT_RENDER_TARGET, + D3D12_BARRIER_LAYOUT_UNORDERED_ACCESS, + D3D12_BARRIER_LAYOUT_DEPTH_STENCIL_WRITE, + D3D12_BARRIER_LAYOUT_DEPTH_STENCIL_READ, + D3D12_BARRIER_LAYOUT_SHADER_RESOURCE, + D3D12_BARRIER_LAYOUT_COPY_SOURCE, + D3D12_BARRIER_LAYOUT_COPY_DEST, + D3D12_BARRIER_LAYOUT_RESOLVE_SOURCE, + D3D12_BARRIER_LAYOUT_RESOLVE_DEST, + D3D12_BARRIER_LAYOUT_SHADING_RATE_SOURCE, + D3D12_BARRIER_LAYOUT_VIDEO_DECODE_READ, + D3D12_BARRIER_LAYOUT_VIDEO_DECODE_WRITE, + D3D12_BARRIER_LAYOUT_VIDEO_PROCESS_READ, + D3D12_BARRIER_LAYOUT_VIDEO_PROCESS_WRITE, + D3D12_BARRIER_LAYOUT_VIDEO_ENCODE_READ, + D3D12_BARRIER_LAYOUT_VIDEO_ENCODE_WRITE, + D3D12_BARRIER_LAYOUT_DIRECT_QUEUE_COMMON, + D3D12_BARRIER_LAYOUT_DIRECT_QUEUE_GENERIC_READ, + D3D12_BARRIER_LAYOUT_DIRECT_QUEUE_UNORDERED_ACCESS, + D3D12_BARRIER_LAYOUT_DIRECT_QUEUE_SHADER_RESOURCE, + D3D12_BARRIER_LAYOUT_DIRECT_QUEUE_COPY_SOURCE, + D3D12_BARRIER_LAYOUT_DIRECT_QUEUE_COPY_DEST, + D3D12_BARRIER_LAYOUT_COMPUTE_QUEUE_COMMON, + D3D12_BARRIER_LAYOUT_COMPUTE_QUEUE_GENERIC_READ, + D3D12_BARRIER_LAYOUT_COMPUTE_QUEUE_UNORDERED_ACCESS, + D3D12_BARRIER_LAYOUT_COMPUTE_QUEUE_SHADER_RESOURCE, + D3D12_BARRIER_LAYOUT_COMPUTE_QUEUE_COPY_SOURCE, + D3D12_BARRIER_LAYOUT_COMPUTE_QUEUE_COPY_DEST, + D3D12_BARRIER_LAYOUT_VIDEO_QUEUE_COMMON, + +} D3D12_BARRIER_LAYOUT; + +typedef enum D3D12_BARRIER_SYNC +{ + D3D12_BARRIER_SYNC_NONE = 0x0, + D3D12_BARRIER_SYNC_ALL = 0x1, + D3D12_BARRIER_SYNC_DRAW = 0x2, + D3D12_BARRIER_SYNC_INDEX_INPUT = 0x4, + D3D12_BARRIER_SYNC_VERTEX_SHADING = 0x8, + D3D12_BARRIER_SYNC_PIXEL_SHADING = 0x10, + D3D12_BARRIER_SYNC_DEPTH_STENCIL = 0x20, + D3D12_BARRIER_SYNC_RENDER_TARGET = 0x40, + D3D12_BARRIER_SYNC_COMPUTE_SHADING = 0x80, + D3D12_BARRIER_SYNC_RAYTRACING = 0x100, + D3D12_BARRIER_SYNC_COPY = 0x200, + D3D12_BARRIER_SYNC_RESOLVE = 0x400, + D3D12_BARRIER_SYNC_EXECUTE_INDIRECT = 0x800, + D3D12_BARRIER_SYNC_PREDICATION = 0x800, // Aliased with SYNC_EXECUTE_INDIRECT + D3D12_BARRIER_SYNC_ALL_SHADING = 0x1000, + D3D12_BARRIER_SYNC_NON_PIXEL_SHADING = 0x2000, + D3D12_BARRIER_SYNC_EMIT_RAYTRACING_ACCELERATION_STRUCTURE_POSTBUILD_INFO = 0x4000, + D3D12_BARRIER_SYNC_CLEAR_UNORDERED_ACCESS_VIEW = 0x8000, + D3D12_BARRIER_SYNC_VIDEO_DECODE = 0x100000, + D3D12_BARRIER_SYNC_VIDEO_PROCESS = 0x200000, + D3D12_BARRIER_SYNC_VIDEO_ENCODE = 0x400000, + D3D12_BARRIER_SYNC_BUILD_RAYTRACING_ACCELERATION_STRUCTURE = 0x800000, + D3D12_BARRIER_SYNC_COPY_RAYTRACING_ACCELERATION_STRUCTURE = 0x1000000, + D3D12_BARRIER_SYNC_SPLIT = 0x80000000, +} D3D12_BARRIER_SYNC; +cpp_quote( "DEFINE_ENUM_FLAG_OPERATORS( D3D12_BARRIER_SYNC );" ) + +typedef enum D3D12_BARRIER_ACCESS +{ + D3D12_BARRIER_ACCESS_COMMON = 0, + D3D12_BARRIER_ACCESS_VERTEX_BUFFER = 0x1, + D3D12_BARRIER_ACCESS_CONSTANT_BUFFER = 0x2, + D3D12_BARRIER_ACCESS_INDEX_BUFFER = 0x4, + D3D12_BARRIER_ACCESS_RENDER_TARGET = 0x8, + D3D12_BARRIER_ACCESS_UNORDERED_ACCESS = 0x10, + D3D12_BARRIER_ACCESS_DEPTH_STENCIL_WRITE = 0x20, + D3D12_BARRIER_ACCESS_DEPTH_STENCIL_READ = 0x40, + D3D12_BARRIER_ACCESS_SHADER_RESOURCE = 0x80, + D3D12_BARRIER_ACCESS_STREAM_OUTPUT = 0x100, + D3D12_BARRIER_ACCESS_INDIRECT_ARGUMENT = 0x200, + D3D12_BARRIER_ACCESS_PREDICATION = 0x200, // Aliased with ACCESS_INDIRECT_ARGUMENT + D3D12_BARRIER_ACCESS_COPY_DEST = 0x400, + D3D12_BARRIER_ACCESS_COPY_SOURCE = 0x800, + D3D12_BARRIER_ACCESS_RESOLVE_DEST = 0x1000, + D3D12_BARRIER_ACCESS_RESOLVE_SOURCE = 0x2000, + D3D12_BARRIER_ACCESS_RAYTRACING_ACCELERATION_STRUCTURE_READ = 0x4000, + D3D12_BARRIER_ACCESS_RAYTRACING_ACCELERATION_STRUCTURE_WRITE = 0x8000, + D3D12_BARRIER_ACCESS_SHADING_RATE_SOURCE = 0x10000, + D3D12_BARRIER_ACCESS_VIDEO_DECODE_READ = 0x20000, + D3D12_BARRIER_ACCESS_VIDEO_DECODE_WRITE = 0x40000, + D3D12_BARRIER_ACCESS_VIDEO_PROCESS_READ = 0x80000, + D3D12_BARRIER_ACCESS_VIDEO_PROCESS_WRITE = 0x100000, + D3D12_BARRIER_ACCESS_VIDEO_ENCODE_READ = 0x200000, + D3D12_BARRIER_ACCESS_VIDEO_ENCODE_WRITE = 0x400000, + D3D12_BARRIER_ACCESS_NO_ACCESS = 0x80000000, +} D3D12_BARRIER_ACCESS; +cpp_quote( "DEFINE_ENUM_FLAG_OPERATORS( D3D12_BARRIER_ACCESS );" ) + +typedef enum D3D12_BARRIER_TYPE +{ + D3D12_BARRIER_TYPE_GLOBAL, + D3D12_BARRIER_TYPE_TEXTURE, + D3D12_BARRIER_TYPE_BUFFER, +} D3D12_BARRIER_TYPE; + +typedef enum D3D12_TEXTURE_BARRIER_FLAGS +{ + D3D12_TEXTURE_BARRIER_FLAG_NONE = 0x0, + D3D12_TEXTURE_BARRIER_FLAG_DISCARD = 0x1, +} D3D12_TEXTURE_BARRIER_FLAGS; +cpp_quote("DEFINE_ENUM_FLAG_OPERATORS( D3D12_TEXTURE_BARRIER_FLAGS );") + +typedef struct D3D12_BARRIER_SUBRESOURCE_RANGE +{ + UINT IndexOrFirstMipLevel; + UINT NumMipLevels; + UINT FirstArraySlice; + UINT NumArraySlices; + UINT FirstPlane; + UINT NumPlanes; +} D3D12_BARRIER_SUBRESOURCE_RANGE; + +typedef struct D3D12_GLOBAL_BARRIER +{ + D3D12_BARRIER_SYNC SyncBefore; + D3D12_BARRIER_SYNC SyncAfter; + D3D12_BARRIER_ACCESS AccessBefore; + D3D12_BARRIER_ACCESS AccessAfter; +} D3D12_GLOBAL_BARRIER; + +typedef struct D3D12_TEXTURE_BARRIER +{ + D3D12_BARRIER_SYNC SyncBefore; + D3D12_BARRIER_SYNC SyncAfter; + D3D12_BARRIER_ACCESS AccessBefore; + D3D12_BARRIER_ACCESS AccessAfter; + D3D12_BARRIER_LAYOUT LayoutBefore; + D3D12_BARRIER_LAYOUT LayoutAfter; + [annotation("_In_")] ID3D12Resource *pResource; + D3D12_BARRIER_SUBRESOURCE_RANGE Subresources; + D3D12_TEXTURE_BARRIER_FLAGS Flags; +} D3D12_TEXTURE_BARRIER; + +typedef struct D3D12_BUFFER_BARRIER +{ + D3D12_BARRIER_SYNC SyncBefore; + D3D12_BARRIER_SYNC SyncAfter; + D3D12_BARRIER_ACCESS AccessBefore; + D3D12_BARRIER_ACCESS AccessAfter; + [annotation("_In_")] ID3D12Resource *pResource; + UINT64 Offset; + UINT64 Size; +} D3D12_BUFFER_BARRIER; + +typedef struct D3D12_BARRIER_GROUP +{ + D3D12_BARRIER_TYPE Type; + UINT32 NumBarriers; + union + { + [annotation("_In_reads_(NumBarriers)")] const D3D12_GLOBAL_BARRIER *pGlobalBarriers; + [annotation("_In_reads_(NumBarriers)")] const D3D12_TEXTURE_BARRIER *pTextureBarriers; + [annotation("_In_reads_(NumBarriers)")] const D3D12_BUFFER_BARRIER *pBufferBarriers; + }; +} D3D12_BARRIER_GROUP; + [uuid(28e2495d-0f64-4ae4-a6ec-129255dc49a8), object, local, pointer_default(unique)] interface ID3D12ShaderCacheSession : ID3D12DeviceChild @@ -5150,6 +5474,71 @@ interface ID3D12Device9 ); }; +[uuid(5405c344-d457-444e-b4dd-2366e45aee39), object, local, pointer_default(unique)] +interface ID3D12Device11 + : ID3D12Device10 +{ + void CreateSampler2( + [annotation("_In_")] const D3D12_SAMPLER_DESC2* pDesc, + [annotation("_In_")] D3D12_CPU_DESCRIPTOR_HANDLE DestDescriptor); +}; + +[uuid(517f8718-aa66-49f9-b02b-a7ab89c06031), object, local, pointer_default(unique)] +interface ID3D12Device10 + : ID3D12Device9 +{ + HRESULT CreateCommittedResource3( + [annotation("_In_")] const D3D12_HEAP_PROPERTIES* pHeapProperties, + D3D12_HEAP_FLAGS HeapFlags, + [annotation("_In_")] const D3D12_RESOURCE_DESC1* pDesc, + D3D12_BARRIER_LAYOUT InitialLayout, + [annotation("_In_opt_")] const D3D12_CLEAR_VALUE* pOptimizedClearValue, + [annotation("_In_opt_")] ID3D12ProtectedResourceSession* pProtectedSession, + UINT32 NumCastableFormats, + [annotation("_In_opt_count_(NumCastableFormats)")] DXGI_FORMAT *pCastableFormats, + [in] REFIID riidResource, // Expected: ID3D12Resource1* + [out, iid_is(riidResource), annotation("_COM_Outptr_opt_")] void** ppvResource); + + HRESULT CreatePlacedResource2( + [annotation("_In_")] ID3D12Heap* pHeap, + UINT64 HeapOffset, + [annotation("_In_")] const D3D12_RESOURCE_DESC1* pDesc, + D3D12_BARRIER_LAYOUT InitialLayout, + [annotation("_In_opt_")] const D3D12_CLEAR_VALUE* pOptimizedClearValue, + UINT32 NumCastableFormats, + [annotation("_In_opt_count_(NumCastableFormats)")] DXGI_FORMAT *pCastableFormats, + [in] REFIID riid, // Expected: ID3D12Resource* + [out, iid_is(riid), annotation("_COM_Outptr_opt_")] void** ppvResource); + + HRESULT CreateReservedResource2( + [annotation("_In_")] const D3D12_RESOURCE_DESC* pDesc, + D3D12_BARRIER_LAYOUT InitialLayout, + [annotation("_In_opt_")] const D3D12_CLEAR_VALUE* pOptimizedClearValue, + [annotation("_In_opt_")] ID3D12ProtectedResourceSession *pProtectedSession, + UINT32 NumCastableFormats, + [annotation("_In_opt_count_(NumCastableFormats)")] DXGI_FORMAT *pCastableFormats, + [in] REFIID riid, // Expected: ID3D12Resource1* + [out, iid_is(riid), annotation("_COM_Outptr_opt_")] void** ppvResource + ); +}; + +[uuid(bc66d368-7373-4943-8757-fc87dc79e476), object, local, pointer_default(unique)] +interface ID3D12VirtualizationGuestDevice + : IUnknown +{ + HRESULT ShareWithHost( + [annotation("_In_")] ID3D12DeviceChild* pObject, + [annotation("_Out_")] HANDLE* pHandle + ); + + HRESULT CreateFenceFd( + [annotation("_In_")] ID3D12Fence *pFence, + UINT64 FenceValue, + [annotation("_Out_")] int *pFenceFd + ); +}; + + [uuid(7071e1f0-e84b-4b33-974f-12fa49de65c5), object, local, pointer_default(unique)] interface ID3D12Tools @@ -5279,20 +5668,6 @@ cpp_quote(" 0xa81a,") cpp_quote(" 0x4f56,") cpp_quote(" { 0x8c, 0x5b, 0xc5, 0x10, 0x39, 0xd6, 0x94, 0xfb }") cpp_quote("};") -cpp_quote("// --------------------------------------------------------------------------------------------------------------------------------") -cpp_quote("// Experimental Feature: D3D12MetaCommand") -cpp_quote("//") -cpp_quote("// Use with D3D12EnableExperimentalFeatures to enable the D3D12 Meta Command.") -cpp_quote("//") -cpp_quote("// Enabling D3D12MetaCommand needs no configuration struct, pass NULL in the pConfigurationStructs array.") -cpp_quote("//") -cpp_quote("// --------------------------------------------------------------------------------------------------------------------------------") -cpp_quote("static const UUID D3D12MetaCommand = { /* C734C97E-8077-48C8-9FDC-D9D1DD31DD77 */") -cpp_quote(" 0xc734c97e,") -cpp_quote(" 0x8077,") -cpp_quote(" 0x48c8,") -cpp_quote(" { 0x9f, 0xdc, 0xd9, 0xd1, 0xdd, 0x31, 0xdd, 0x77 }") -cpp_quote("};") cpp_quote("// --------------------------------------------------------------------------------------------------------------------------------") cpp_quote("// D3D12GetInterface") @@ -5304,6 +5679,7 @@ cpp_quote("DEFINE_GUID(CLSID_D3D12Debug, 0xf2352aeb, 0xdd cpp_quote("DEFINE_GUID(CLSID_D3D12Tools, 0xe38216b1, 0x3c8c, 0x4833, 0xaa, 0x09, 0x0a, 0x06, 0xb6, 0x5d, 0x96, 0xc8);") cpp_quote("DEFINE_GUID(CLSID_D3D12DeviceRemovedExtendedData, 0x4a75bbc4, 0x9ff4, 0x4ad8, 0x9f, 0x18, 0xab, 0xae, 0x84, 0xdc, 0x5f, 0xf2);") cpp_quote("DEFINE_GUID(CLSID_D3D12SDKConfiguration, 0x7cda6aca, 0xa03e, 0x49c8, 0x94, 0x58, 0x03, 0x34, 0xd2, 0x0e, 0x07, 0xce);") +cpp_quote("DEFINE_GUID(CLSID_D3D12DeviceFactory, 0x114863bf, 0xc386, 0x4aee, 0xb3, 0x9d, 0x8f, 0x0b, 0xbb, 0x06, 0x29, 0x55);") cpp_quote("") cpp_quote("typedef HRESULT (WINAPI* PFN_D3D12_GET_INTERFACE)( _In_ REFCLSID, _In_ REFIID, _COM_Outptr_opt_ void** );") cpp_quote("") @@ -5326,6 +5702,100 @@ interface ID3D12SDKConfiguration ); } +[uuid(8aaf9303-ad25-48b9-9a57-d9c37e009d9f), object, local, pointer_default(unique)] +interface ID3D12SDKConfiguration1 + : ID3D12SDKConfiguration +{ + HRESULT CreateDeviceFactory( + UINT SDKVersion, + [annotation("_In_")] LPCSTR SDKPath, + REFIID riid, // Expected: ID3D12DeviceFactory + [annotation("_COM_Outptr_")] void **ppvFactory + ); + void FreeUnusedSDKs(); +} + +typedef enum D3D12_DEVICE_FACTORY_FLAGS +{ + D3D12_DEVICE_FACTORY_FLAG_NONE = 0, + D3D12_DEVICE_FACTORY_FLAG_ALLOW_RETURNING_EXISTING_DEVICE = 0x1, + D3D12_DEVICE_FACTORY_FLAG_ALLOW_RETURNING_INCOMPATIBLE_EXISTING_DEVICE = 0x2, + D3D12_DEVICE_FACTORY_FLAG_DISALLOW_STORING_NEW_DEVICE_AS_SINGLETON = 0x4, +} D3D12_DEVICE_FACTORY_FLAGS; +cpp_quote("DEFINE_ENUM_FLAG_OPERATORS( D3D12_DEVICE_FACTORY_FLAGS );") + +[uuid(61f307d3-d34e-4e7c-8374-3ba4de23cccb), object, local, pointer_default(unique)] +interface ID3D12DeviceFactory + : IUnknown +{ + HRESULT InitializeFromGlobalState(); + HRESULT ApplyToGlobalState(); + + HRESULT SetFlags(D3D12_DEVICE_FACTORY_FLAGS flags); + D3D12_DEVICE_FACTORY_FLAGS GetFlags(); + + HRESULT GetConfigurationInterface( + REFCLSID clsid, + REFIID iid, + [annotation("_COM_Outptr_")] void **ppv); + + HRESULT EnableExperimentalFeatures( + UINT NumFeatures, + [annotation("_In_reads_(NumFeatures)")] const IID *pIIDs, + [annotation("_In_reads_opt_(NumFeatures)")] void *pConfigurationStructs, + [annotation("_In_reads_opt_(NumFeatures)")] UINT *pConfigurationStructSizes); + + HRESULT CreateDevice( + [annotation("_In_opt_")] IUnknown *adapter, + D3D_FEATURE_LEVEL FeatureLevel, + REFIID riid, + [annotation("_COM_Outptr_opt_")] void **ppvDevice); +}; + +typedef enum D3D12_DEVICE_FLAGS +{ + D3D12_DEVICE_FLAG_NONE = 0, + D3D12_DEVICE_FLAG_DEBUG_LAYER_ENABLED = 0x1, + D3D12_DEVICE_FLAG_GPU_BASED_VALIDATION_ENABLED = 0x2, + D3D12_DEVICE_FLAG_SYNCHRONIZED_COMMAND_QUEUE_VALIDATION_DISABLED = 0x4, + D3D12_DEVICE_FLAG_DRED_AUTO_BREADCRUMBS_ENABLED = 0x8, + D3D12_DEVICE_FLAG_DRED_PAGE_FAULT_REPORTING_ENABLED = 0x10, + D3D12_DEVICE_FLAG_DRED_WATSON_REPORTING_ENABLED = 0x20, + D3D12_DEVICE_FLAG_DRED_BREADCRUMB_CONTEXT_ENABLED = 0x40, + D3D12_DEVICE_FLAG_DRED_USE_MARKERS_ONLY_BREADCRUMBS = 0x80, + D3D12_DEVICE_FLAG_SHADER_INSTRUMENTATION_ENABLED = 0x100, + D3D12_DEVICE_FLAG_AUTO_DEBUG_NAME_ENABLED = 0x200, + D3D12_DEVICE_FLAG_FORCE_LEGACY_STATE_VALIDATION = 0x400, +} D3D12_DEVICE_FLAGS; +cpp_quote("DEFINE_ENUM_FLAG_OPERATORS( D3D12_DEVICE_FLAGS );") + +typedef struct D3D12_DEVICE_CONFIGURATION_DESC +{ + D3D12_DEVICE_FLAGS Flags; + UINT GpuBasedValidationFlags; // D3D12_GPU_BASED_VALIDATION_FLAGS from d3d12sdklayers.h + UINT SDKVersion; + UINT NumEnabledExperimentalFeatures; +} D3D12_DEVICE_CONFIGURATION_DESC; + +[uuid(78dbf87b-f766-422b-a61c-c8c446bdb9ad), object, local, pointer_default(unique)] +interface ID3D12DeviceConfiguration + : IUnknown +{ + D3D12_DEVICE_CONFIGURATION_DESC GetDesc(); + HRESULT GetEnabledExperimentalFeatures([annotation("_Out_writes_(NumGuids)")] GUID *pGuids, UINT NumGuids); + + HRESULT SerializeVersionedRootSignature( + [annotation("_In_")] const D3D12_VERSIONED_ROOT_SIGNATURE_DESC *pDesc, + [annotation("_COM_Outptr_")] ID3DBlob **ppResult, + [annotation("_Always_(_Outptr_opt_result_maybenull_)")] ID3DBlob **ppError); + + HRESULT CreateVersionedRootSignatureDeserializer( + [annotation("_In_reads_bytes_(Size)")] const void *pBlob, + SIZE_T Size, + REFIID riid, + [annotation("_COM_Outptr_")] void **ppvDeserializer); +}; + typedef enum D3D12_AXIS_SHADING_RATE { @@ -5391,6 +5861,38 @@ interface ID3D12GraphicsCommandList6 : ID3D12GraphicsCommandList5 ); } +[uuid(dd171223-8b61-4769-90e3-160ccde4e2c1), object, local, pointer_default(unique)] +interface ID3D12GraphicsCommandList7 : ID3D12GraphicsCommandList6 +{ + void Barrier( + UINT32 NumBarrierGroups, + [annotation("_In_reads_(NumBarrierGroups)")] const D3D12_BARRIER_GROUP *pBarrierGroups + ); +}; + +[uuid(ee936ef9-599d-4d28-938e-23c4ad05ce51), object, local, pointer_default(unique)] +interface ID3D12GraphicsCommandList8 : ID3D12GraphicsCommandList7 +{ + void OMSetFrontAndBackStencilRef( + [annotation("_In_")] UINT FrontStencilRef, + [annotation("_In_")] UINT BackStencilRef + ); +}; + +[uuid(34ed2808-ffe6-4c2b-b11a-cabd2b0c59e1), object, local, pointer_default(unique)] +interface ID3D12GraphicsCommandList9 : ID3D12GraphicsCommandList8 +{ + void RSSetDepthBias( + [annotation("_In_")] FLOAT DepthBias, + [annotation("_In_")] FLOAT DepthBiasClamp, + [annotation("_In_")] FLOAT SlopeScaledDepthBias + ); + + void IASetIndexBufferStripCutValue( + [annotation("_In_")] D3D12_INDEX_BUFFER_STRIP_CUT_VALUE IBStripCutValue + ); +}; + //---------------------------------------------------------------------------------------------------------- // Old types which are still supported by the runtime for app-compat @@ -5435,6 +5937,7 @@ cpp_quote( "DEFINE_GUID(IID_ID3D12StateObjectProperties,0xde5fa827,0x9bf9,0x4f26 cpp_quote( "DEFINE_GUID(IID_ID3D12Device5,0x8b4f173b,0x2fea,0x4b80,0x8f,0x58,0x43,0x07,0x19,0x1a,0xb9,0x5d);" ) cpp_quote( "DEFINE_GUID(IID_ID3D12DeviceRemovedExtendedDataSettings,0x82BC481C,0x6B9B,0x4030,0xAE,0xDB,0x7E,0xE3,0xD1,0xDF,0x1E,0x63);" ) cpp_quote( "DEFINE_GUID(IID_ID3D12DeviceRemovedExtendedDataSettings1,0xDBD5AE51,0x3317,0x4F0A,0xAD,0xF9,0x1D,0x7C,0xED,0xCA,0xAE,0x0B);" ) +cpp_quote( "DEFINE_GUID(IID_ID3D12DeviceRemovedExtendedDataSettings2,0x61552388,0x01ab,0x4008,0xa4,0x36,0x83,0xdb,0x18,0x95,0x66,0xea);" ) cpp_quote( "DEFINE_GUID(IID_ID3D12DeviceRemovedExtendedData,0x98931D33,0x5AE8,0x4791,0xAA,0x3C,0x1A,0x73,0xA2,0x93,0x4E,0x71);" ) cpp_quote( "DEFINE_GUID(IID_ID3D12DeviceRemovedExtendedData1,0x9727A022,0xCF1D,0x4DDA,0x9E,0xBA,0xEF,0xFA,0x65,0x3F,0xC5,0x06);" ) cpp_quote( "DEFINE_GUID(IID_ID3D12DeviceRemovedExtendedData2,0x67FC5816,0xE4CA,0x4915,0xBF,0x18,0x42,0x54,0x12,0x72,0xDA,0x54);" ) @@ -5450,7 +5953,16 @@ cpp_quote( "DEFINE_GUID(IID_ID3D12MetaCommand,0xDBB84C27,0x36CE,0x4FC9,0xB8,0x01 cpp_quote( "DEFINE_GUID(IID_ID3D12GraphicsCommandList4,0x8754318e,0xd3a9,0x4541,0x98,0xcf,0x64,0x5b,0x50,0xdc,0x48,0x74);" ) cpp_quote( "DEFINE_GUID(IID_ID3D12ShaderCacheSession,0x28e2495d,0x0f64,0x4ae4,0xa6,0xec,0x12,0x92,0x55,0xdc,0x49,0xa8);" ) cpp_quote( "DEFINE_GUID(IID_ID3D12Device9,0x4c80e962,0xf032,0x4f60,0xbc,0x9e,0xeb,0xc2,0xcf,0xa1,0xd8,0x3c);" ) +cpp_quote( "DEFINE_GUID(IID_ID3D12Device10,0x517f8718,0xaa66,0x49f9,0xb0,0x2b,0xa7,0xab,0x89,0xc0,0x60,0x31);" ) +cpp_quote( "DEFINE_GUID(IID_ID3D12Device11,0x5405c344,0xd457,0x444e,0xb4,0xdd,0x23,0x66,0xe4,0x5a,0xee,0x39);" ) +cpp_quote( "DEFINE_GUID(IID_ID3D12VirtualizationGuestDevice,0xbc66d368,0x7373,0x4943,0x87,0x57,0xfc,0x87,0xdc,0x79,0xe4,0x76);" ) cpp_quote( "DEFINE_GUID(IID_ID3D12Tools,0x7071e1f0,0xe84b,0x4b33,0x97,0x4f,0x12,0xfa,0x49,0xde,0x65,0xc5);" ) cpp_quote( "DEFINE_GUID(IID_ID3D12SDKConfiguration,0xe9eb5314,0x33aa,0x42b2,0xa7,0x18,0xd7,0x7f,0x58,0xb1,0xf1,0xc7);" ) +cpp_quote( "DEFINE_GUID(IID_ID3D12SDKConfiguration1,0x8aaf9303,0xad25,0x48b9,0x9a,0x57,0xd9,0xc3,0x7e,0x00,0x9d,0x9f);" ) +cpp_quote( "DEFINE_GUID(IID_ID3D12DeviceFactory,0x61f307d3,0xd34e,0x4e7c,0x83,0x74,0x3b,0xa4,0xde,0x23,0xcc,0xcb);" ) +cpp_quote( "DEFINE_GUID(IID_ID3D12DeviceConfiguration,0x78dbf87b,0xf766,0x422b,0xa6,0x1c,0xc8,0xc4,0x46,0xbd,0xb9,0xad);" ) cpp_quote( "DEFINE_GUID(IID_ID3D12GraphicsCommandList5,0x55050859,0x4024,0x474c,0x87,0xf5,0x64,0x72,0xea,0xee,0x44,0xea);" ) cpp_quote( "DEFINE_GUID(IID_ID3D12GraphicsCommandList6,0xc3827890,0xe548,0x4cfa,0x96,0xcf,0x56,0x89,0xa9,0x37,0x0f,0x80);" ) +cpp_quote( "DEFINE_GUID(IID_ID3D12GraphicsCommandList7,0xdd171223,0x8b61,0x4769,0x90,0xe3,0x16,0x0c,0xcd,0xe4,0xe2,0xc1);" ) +cpp_quote( "DEFINE_GUID(IID_ID3D12GraphicsCommandList8,0xee936ef9,0x599d,0x4d28,0x93,0x8e,0x23,0xc4,0xad,0x05,0xce,0x51);" ) +cpp_quote( "DEFINE_GUID(IID_ID3D12GraphicsCommandList9,0x34ed2808,0xffe6,0x4c2b,0xb1,0x1a,0xca,0xbd,0x2b,0x0c,0x59,0xe1);" ) diff --git a/generation/WinSDK/RecompiledIdlHeaders/um/d3d12sdklayers.h b/generation/WinSDK/RecompiledIdlHeaders/um/d3d12sdklayers.h index 197889ab7..08388d9ae 100644 --- a/generation/WinSDK/RecompiledIdlHeaders/um/d3d12sdklayers.h +++ b/generation/WinSDK/RecompiledIdlHeaders/um/d3d12sdklayers.h @@ -1,10 +1,15 @@ +/*------------------------------------------------------------------------------------- + * + * Copyright (c) Microsoft Corporation + * Licensed under the MIT license + * + *-------------------------------------------------------------------------------------*/ /* this ALWAYS GENERATED file contains the definitions for the interfaces */ - /* File created by MIDL compiler version 8.01.0626 */ -/* @@MIDL_FILE_HEADING( ) */ + /* File created by MIDL compiler version 8.01.0628 */ @@ -38,7 +43,7 @@ #endif #ifndef DECLSPEC_XFGVIRT -#if _CONTROL_FLOW_GUARD_XFG +#if defined(_CONTROL_FLOW_GUARD_XFG) #define DECLSPEC_XFGVIRT(base, func) __declspec(xfg_virtual(base, func)) #else #define DECLSPEC_XFGVIRT(base, func) @@ -89,6 +94,13 @@ typedef interface ID3D12Debug5 ID3D12Debug5; #endif /* __ID3D12Debug5_FWD_DEFINED__ */ +#ifndef __ID3D12Debug6_FWD_DEFINED__ +#define __ID3D12Debug6_FWD_DEFINED__ +typedef interface ID3D12Debug6 ID3D12Debug6; + +#endif /* __ID3D12Debug6_FWD_DEFINED__ */ + + #ifndef __ID3D12DebugDevice1_FWD_DEFINED__ #define __ID3D12DebugDevice1_FWD_DEFINED__ typedef interface ID3D12DebugDevice1 ID3D12DebugDevice1; @@ -117,6 +129,13 @@ typedef interface ID3D12DebugCommandQueue ID3D12DebugCommandQueue; #endif /* __ID3D12DebugCommandQueue_FWD_DEFINED__ */ +#ifndef __ID3D12DebugCommandQueue1_FWD_DEFINED__ +#define __ID3D12DebugCommandQueue1_FWD_DEFINED__ +typedef interface ID3D12DebugCommandQueue1 ID3D12DebugCommandQueue1; + +#endif /* __ID3D12DebugCommandQueue1_FWD_DEFINED__ */ + + #ifndef __ID3D12DebugCommandList1_FWD_DEFINED__ #define __ID3D12DebugCommandList1_FWD_DEFINED__ typedef interface ID3D12DebugCommandList1 ID3D12DebugCommandList1; @@ -138,6 +157,13 @@ typedef interface ID3D12DebugCommandList2 ID3D12DebugCommandList2; #endif /* __ID3D12DebugCommandList2_FWD_DEFINED__ */ +#ifndef __ID3D12DebugCommandList3_FWD_DEFINED__ +#define __ID3D12DebugCommandList3_FWD_DEFINED__ +typedef interface ID3D12DebugCommandList3 ID3D12DebugCommandList3; + +#endif /* __ID3D12DebugCommandList3_FWD_DEFINED__ */ + + #ifndef __ID3D12SharingContract_FWD_DEFINED__ #define __ID3D12SharingContract_FWD_DEFINED__ typedef interface ID3D12SharingContract ID3D12SharingContract; @@ -160,8 +186,8 @@ typedef interface ID3D12InfoQueue1 ID3D12InfoQueue1; /* header files for imported files */ -#include "OAIdl.h" -#include "OCIdl.h" +#include "oaidl.h" +#include "ocidl.h" #include "d3d12.h" #ifdef __cplusplus @@ -209,9 +235,7 @@ EXTERN_C const IID IID_ID3D12Debug; DECLSPEC_XFGVIRT(IUnknown, QueryInterface) HRESULT ( STDMETHODCALLTYPE *QueryInterface )( ID3D12Debug * This, - /* [annotation][in] */ - _In_ REFIID riid, - /* [annotation][iid_is][out] */ + REFIID riid, _COM_Outptr_ void **ppvObject); DECLSPEC_XFGVIRT(IUnknown, AddRef) @@ -314,9 +338,7 @@ EXTERN_C const IID IID_ID3D12Debug1; DECLSPEC_XFGVIRT(IUnknown, QueryInterface) HRESULT ( STDMETHODCALLTYPE *QueryInterface )( ID3D12Debug1 * This, - /* [annotation][in] */ - _In_ REFIID riid, - /* [annotation][iid_is][out] */ + REFIID riid, _COM_Outptr_ void **ppvObject); DECLSPEC_XFGVIRT(IUnknown, AddRef) @@ -414,9 +436,7 @@ EXTERN_C const IID IID_ID3D12Debug2; DECLSPEC_XFGVIRT(IUnknown, QueryInterface) HRESULT ( STDMETHODCALLTYPE *QueryInterface )( ID3D12Debug2 * This, - /* [annotation][in] */ - _In_ REFIID riid, - /* [annotation][iid_is][out] */ + REFIID riid, _COM_Outptr_ void **ppvObject); DECLSPEC_XFGVIRT(IUnknown, AddRef) @@ -505,9 +525,7 @@ EXTERN_C const IID IID_ID3D12Debug3; DECLSPEC_XFGVIRT(IUnknown, QueryInterface) HRESULT ( STDMETHODCALLTYPE *QueryInterface )( ID3D12Debug3 * This, - /* [annotation][in] */ - _In_ REFIID riid, - /* [annotation][iid_is][out] */ + REFIID riid, _COM_Outptr_ void **ppvObject); DECLSPEC_XFGVIRT(IUnknown, AddRef) @@ -613,9 +631,7 @@ EXTERN_C const IID IID_ID3D12Debug4; DECLSPEC_XFGVIRT(IUnknown, QueryInterface) HRESULT ( STDMETHODCALLTYPE *QueryInterface )( ID3D12Debug4 * This, - /* [annotation][in] */ - _In_ REFIID riid, - /* [annotation][iid_is][out] */ + REFIID riid, _COM_Outptr_ void **ppvObject); DECLSPEC_XFGVIRT(IUnknown, AddRef) @@ -730,9 +746,7 @@ EXTERN_C const IID IID_ID3D12Debug5; DECLSPEC_XFGVIRT(IUnknown, QueryInterface) HRESULT ( STDMETHODCALLTYPE *QueryInterface )( ID3D12Debug5 * This, - /* [annotation][in] */ - _In_ REFIID riid, - /* [annotation][iid_is][out] */ + REFIID riid, _COM_Outptr_ void **ppvObject); DECLSPEC_XFGVIRT(IUnknown, AddRef) @@ -826,7 +840,140 @@ EXTERN_C const IID IID_ID3D12Debug5; #endif /* __ID3D12Debug5_INTERFACE_DEFINED__ */ -/* interface __MIDL_itf_d3d12sdklayers_0000_0006 */ +#ifndef __ID3D12Debug6_INTERFACE_DEFINED__ +#define __ID3D12Debug6_INTERFACE_DEFINED__ + +/* interface ID3D12Debug6 */ +/* [unique][local][object][uuid] */ + + +EXTERN_C const IID IID_ID3D12Debug6; + +#if defined(__cplusplus) && !defined(CINTERFACE) + + MIDL_INTERFACE("82a816d6-5d01-4157-97d0-4975463fd1ed") + ID3D12Debug6 : public ID3D12Debug5 + { + public: + virtual void STDMETHODCALLTYPE SetForceLegacyBarrierValidation( + BOOL Enable) = 0; + + }; + + +#else /* C style interface */ + + typedef struct ID3D12Debug6Vtbl + { + BEGIN_INTERFACE + + DECLSPEC_XFGVIRT(IUnknown, QueryInterface) + HRESULT ( STDMETHODCALLTYPE *QueryInterface )( + ID3D12Debug6 * This, + REFIID riid, + _COM_Outptr_ void **ppvObject); + + DECLSPEC_XFGVIRT(IUnknown, AddRef) + ULONG ( STDMETHODCALLTYPE *AddRef )( + ID3D12Debug6 * This); + + DECLSPEC_XFGVIRT(IUnknown, Release) + ULONG ( STDMETHODCALLTYPE *Release )( + ID3D12Debug6 * This); + + DECLSPEC_XFGVIRT(ID3D12Debug, EnableDebugLayer) + void ( STDMETHODCALLTYPE *EnableDebugLayer )( + ID3D12Debug6 * This); + + DECLSPEC_XFGVIRT(ID3D12Debug3, SetEnableGPUBasedValidation) + void ( STDMETHODCALLTYPE *SetEnableGPUBasedValidation )( + ID3D12Debug6 * This, + BOOL Enable); + + DECLSPEC_XFGVIRT(ID3D12Debug3, SetEnableSynchronizedCommandQueueValidation) + void ( STDMETHODCALLTYPE *SetEnableSynchronizedCommandQueueValidation )( + ID3D12Debug6 * This, + BOOL Enable); + + DECLSPEC_XFGVIRT(ID3D12Debug3, SetGPUBasedValidationFlags) + void ( STDMETHODCALLTYPE *SetGPUBasedValidationFlags )( + ID3D12Debug6 * This, + D3D12_GPU_BASED_VALIDATION_FLAGS Flags); + + DECLSPEC_XFGVIRT(ID3D12Debug4, DisableDebugLayer) + void ( STDMETHODCALLTYPE *DisableDebugLayer )( + ID3D12Debug6 * This); + + DECLSPEC_XFGVIRT(ID3D12Debug5, SetEnableAutoName) + void ( STDMETHODCALLTYPE *SetEnableAutoName )( + ID3D12Debug6 * This, + BOOL Enable); + + DECLSPEC_XFGVIRT(ID3D12Debug6, SetForceLegacyBarrierValidation) + void ( STDMETHODCALLTYPE *SetForceLegacyBarrierValidation )( + ID3D12Debug6 * This, + BOOL Enable); + + END_INTERFACE + } ID3D12Debug6Vtbl; + + interface ID3D12Debug6 + { + CONST_VTBL struct ID3D12Debug6Vtbl *lpVtbl; + }; + + + +#ifdef COBJMACROS + + +#define ID3D12Debug6_QueryInterface(This,riid,ppvObject) \ + ( (This)->lpVtbl -> QueryInterface(This,riid,ppvObject) ) + +#define ID3D12Debug6_AddRef(This) \ + ( (This)->lpVtbl -> AddRef(This) ) + +#define ID3D12Debug6_Release(This) \ + ( (This)->lpVtbl -> Release(This) ) + + +#define ID3D12Debug6_EnableDebugLayer(This) \ + ( (This)->lpVtbl -> EnableDebugLayer(This) ) + + +#define ID3D12Debug6_SetEnableGPUBasedValidation(This,Enable) \ + ( (This)->lpVtbl -> SetEnableGPUBasedValidation(This,Enable) ) + +#define ID3D12Debug6_SetEnableSynchronizedCommandQueueValidation(This,Enable) \ + ( (This)->lpVtbl -> SetEnableSynchronizedCommandQueueValidation(This,Enable) ) + +#define ID3D12Debug6_SetGPUBasedValidationFlags(This,Flags) \ + ( (This)->lpVtbl -> SetGPUBasedValidationFlags(This,Flags) ) + + +#define ID3D12Debug6_DisableDebugLayer(This) \ + ( (This)->lpVtbl -> DisableDebugLayer(This) ) + + +#define ID3D12Debug6_SetEnableAutoName(This,Enable) \ + ( (This)->lpVtbl -> SetEnableAutoName(This,Enable) ) + + +#define ID3D12Debug6_SetForceLegacyBarrierValidation(This,Enable) \ + ( (This)->lpVtbl -> SetForceLegacyBarrierValidation(This,Enable) ) + +#endif /* COBJMACROS */ + + +#endif /* C style interface */ + + + + +#endif /* __ID3D12Debug6_INTERFACE_DEFINED__ */ + + +/* interface __MIDL_itf_d3d12sdklayers_0000_0007 */ /* [local] */ DEFINE_GUID(WKPDID_D3DAutoDebugObjectNameW, 0xd4902e36, 0x757a, 0x4942, 0x95, 0x94, 0xb6, 0x76, 0x9a, 0xfa, 0x43, 0xcd); @@ -894,8 +1041,8 @@ typedef struct D3D12_DEBUG_DEVICE_GPU_SLOWDOWN_PERFORMANCE_FACTOR -extern RPC_IF_HANDLE __MIDL_itf_d3d12sdklayers_0000_0006_v0_0_c_ifspec; -extern RPC_IF_HANDLE __MIDL_itf_d3d12sdklayers_0000_0006_v0_0_s_ifspec; +extern RPC_IF_HANDLE __MIDL_itf_d3d12sdklayers_0000_0007_v0_0_c_ifspec; +extern RPC_IF_HANDLE __MIDL_itf_d3d12sdklayers_0000_0007_v0_0_s_ifspec; #ifndef __ID3D12DebugDevice1_INTERFACE_DEFINED__ #define __ID3D12DebugDevice1_INTERFACE_DEFINED__ @@ -914,13 +1061,11 @@ EXTERN_C const IID IID_ID3D12DebugDevice1; public: virtual HRESULT STDMETHODCALLTYPE SetDebugParameter( D3D12_DEBUG_DEVICE_PARAMETER_TYPE Type, - /* [annotation] */ _In_reads_bytes_(DataSize) const void *pData, UINT DataSize) = 0; virtual HRESULT STDMETHODCALLTYPE GetDebugParameter( D3D12_DEBUG_DEVICE_PARAMETER_TYPE Type, - /* [annotation] */ _Out_writes_bytes_(DataSize) void *pData, UINT DataSize) = 0; @@ -939,9 +1084,7 @@ EXTERN_C const IID IID_ID3D12DebugDevice1; DECLSPEC_XFGVIRT(IUnknown, QueryInterface) HRESULT ( STDMETHODCALLTYPE *QueryInterface )( ID3D12DebugDevice1 * This, - /* [annotation][in] */ - _In_ REFIID riid, - /* [annotation][iid_is][out] */ + REFIID riid, _COM_Outptr_ void **ppvObject); DECLSPEC_XFGVIRT(IUnknown, AddRef) @@ -956,7 +1099,6 @@ EXTERN_C const IID IID_ID3D12DebugDevice1; HRESULT ( STDMETHODCALLTYPE *SetDebugParameter )( ID3D12DebugDevice1 * This, D3D12_DEBUG_DEVICE_PARAMETER_TYPE Type, - /* [annotation] */ _In_reads_bytes_(DataSize) const void *pData, UINT DataSize); @@ -964,7 +1106,6 @@ EXTERN_C const IID IID_ID3D12DebugDevice1; HRESULT ( STDMETHODCALLTYPE *GetDebugParameter )( ID3D12DebugDevice1 * This, D3D12_DEBUG_DEVICE_PARAMETER_TYPE Type, - /* [annotation] */ _Out_writes_bytes_(DataSize) void *pData, UINT DataSize); @@ -1051,9 +1192,7 @@ EXTERN_C const IID IID_ID3D12DebugDevice; DECLSPEC_XFGVIRT(IUnknown, QueryInterface) HRESULT ( STDMETHODCALLTYPE *QueryInterface )( ID3D12DebugDevice * This, - /* [annotation][in] */ - _In_ REFIID riid, - /* [annotation][iid_is][out] */ + REFIID riid, _COM_Outptr_ void **ppvObject); DECLSPEC_XFGVIRT(IUnknown, AddRef) @@ -1138,13 +1277,11 @@ EXTERN_C const IID IID_ID3D12DebugDevice2; public: virtual HRESULT STDMETHODCALLTYPE SetDebugParameter( D3D12_DEBUG_DEVICE_PARAMETER_TYPE Type, - /* [annotation] */ _In_reads_bytes_(DataSize) const void *pData, UINT DataSize) = 0; virtual HRESULT STDMETHODCALLTYPE GetDebugParameter( D3D12_DEBUG_DEVICE_PARAMETER_TYPE Type, - /* [annotation] */ _Out_writes_bytes_(DataSize) void *pData, UINT DataSize) = 0; @@ -1160,9 +1297,7 @@ EXTERN_C const IID IID_ID3D12DebugDevice2; DECLSPEC_XFGVIRT(IUnknown, QueryInterface) HRESULT ( STDMETHODCALLTYPE *QueryInterface )( ID3D12DebugDevice2 * This, - /* [annotation][in] */ - _In_ REFIID riid, - /* [annotation][iid_is][out] */ + REFIID riid, _COM_Outptr_ void **ppvObject); DECLSPEC_XFGVIRT(IUnknown, AddRef) @@ -1191,7 +1326,6 @@ EXTERN_C const IID IID_ID3D12DebugDevice2; HRESULT ( STDMETHODCALLTYPE *SetDebugParameter )( ID3D12DebugDevice2 * This, D3D12_DEBUG_DEVICE_PARAMETER_TYPE Type, - /* [annotation] */ _In_reads_bytes_(DataSize) const void *pData, UINT DataSize); @@ -1199,7 +1333,6 @@ EXTERN_C const IID IID_ID3D12DebugDevice2; HRESULT ( STDMETHODCALLTYPE *GetDebugParameter )( ID3D12DebugDevice2 * This, D3D12_DEBUG_DEVICE_PARAMETER_TYPE Type, - /* [annotation] */ _Out_writes_bytes_(DataSize) void *pData, UINT DataSize); @@ -1253,14 +1386,14 @@ EXTERN_C const IID IID_ID3D12DebugDevice2; #endif /* __ID3D12DebugDevice2_INTERFACE_DEFINED__ */ -/* interface __MIDL_itf_d3d12sdklayers_0000_0009 */ +/* interface __MIDL_itf_d3d12sdklayers_0000_0010 */ /* [local] */ DEFINE_GUID(DXGI_DEBUG_D3D12, 0xcf59a98c, 0xa950, 0x4326, 0x91, 0xef, 0x9b, 0xba, 0xa1, 0x7b, 0xfd, 0x95); -extern RPC_IF_HANDLE __MIDL_itf_d3d12sdklayers_0000_0009_v0_0_c_ifspec; -extern RPC_IF_HANDLE __MIDL_itf_d3d12sdklayers_0000_0009_v0_0_s_ifspec; +extern RPC_IF_HANDLE __MIDL_itf_d3d12sdklayers_0000_0010_v0_0_c_ifspec; +extern RPC_IF_HANDLE __MIDL_itf_d3d12sdklayers_0000_0010_v0_0_s_ifspec; #ifndef __ID3D12DebugCommandQueue_INTERFACE_DEFINED__ #define __ID3D12DebugCommandQueue_INTERFACE_DEFINED__ @@ -1278,7 +1411,6 @@ EXTERN_C const IID IID_ID3D12DebugCommandQueue; { public: virtual BOOL STDMETHODCALLTYPE AssertResourceState( - /* [annotation] */ _In_ ID3D12Resource *pResource, UINT Subresource, UINT State) = 0; @@ -1295,9 +1427,7 @@ EXTERN_C const IID IID_ID3D12DebugCommandQueue; DECLSPEC_XFGVIRT(IUnknown, QueryInterface) HRESULT ( STDMETHODCALLTYPE *QueryInterface )( ID3D12DebugCommandQueue * This, - /* [annotation][in] */ - _In_ REFIID riid, - /* [annotation][iid_is][out] */ + REFIID riid, _COM_Outptr_ void **ppvObject); DECLSPEC_XFGVIRT(IUnknown, AddRef) @@ -1311,7 +1441,6 @@ EXTERN_C const IID IID_ID3D12DebugCommandQueue; DECLSPEC_XFGVIRT(ID3D12DebugCommandQueue, AssertResourceState) BOOL ( STDMETHODCALLTYPE *AssertResourceState )( ID3D12DebugCommandQueue * This, - /* [annotation] */ _In_ ID3D12Resource *pResource, UINT Subresource, UINT State); @@ -1353,7 +1482,120 @@ EXTERN_C const IID IID_ID3D12DebugCommandQueue; #endif /* __ID3D12DebugCommandQueue_INTERFACE_DEFINED__ */ -/* interface __MIDL_itf_d3d12sdklayers_0000_0010 */ +#ifndef __ID3D12DebugCommandQueue1_INTERFACE_DEFINED__ +#define __ID3D12DebugCommandQueue1_INTERFACE_DEFINED__ + +/* interface ID3D12DebugCommandQueue1 */ +/* [unique][local][object][uuid] */ + + +EXTERN_C const IID IID_ID3D12DebugCommandQueue1; + +#if defined(__cplusplus) && !defined(CINTERFACE) + + MIDL_INTERFACE("16be35a2-bfd6-49f2-bcae-eaae4aff862d") + ID3D12DebugCommandQueue1 : public ID3D12DebugCommandQueue + { + public: + virtual void STDMETHODCALLTYPE AssertResourceAccess( + _In_ ID3D12Resource *pResource, + UINT Subresource, + D3D12_BARRIER_ACCESS Access) = 0; + + virtual void STDMETHODCALLTYPE AssertTextureLayout( + _In_ ID3D12Resource *pResource, + UINT Subresource, + D3D12_BARRIER_LAYOUT Layout) = 0; + + }; + + +#else /* C style interface */ + + typedef struct ID3D12DebugCommandQueue1Vtbl + { + BEGIN_INTERFACE + + DECLSPEC_XFGVIRT(IUnknown, QueryInterface) + HRESULT ( STDMETHODCALLTYPE *QueryInterface )( + ID3D12DebugCommandQueue1 * This, + REFIID riid, + _COM_Outptr_ void **ppvObject); + + DECLSPEC_XFGVIRT(IUnknown, AddRef) + ULONG ( STDMETHODCALLTYPE *AddRef )( + ID3D12DebugCommandQueue1 * This); + + DECLSPEC_XFGVIRT(IUnknown, Release) + ULONG ( STDMETHODCALLTYPE *Release )( + ID3D12DebugCommandQueue1 * This); + + DECLSPEC_XFGVIRT(ID3D12DebugCommandQueue, AssertResourceState) + BOOL ( STDMETHODCALLTYPE *AssertResourceState )( + ID3D12DebugCommandQueue1 * This, + _In_ ID3D12Resource *pResource, + UINT Subresource, + UINT State); + + DECLSPEC_XFGVIRT(ID3D12DebugCommandQueue1, AssertResourceAccess) + void ( STDMETHODCALLTYPE *AssertResourceAccess )( + ID3D12DebugCommandQueue1 * This, + _In_ ID3D12Resource *pResource, + UINT Subresource, + D3D12_BARRIER_ACCESS Access); + + DECLSPEC_XFGVIRT(ID3D12DebugCommandQueue1, AssertTextureLayout) + void ( STDMETHODCALLTYPE *AssertTextureLayout )( + ID3D12DebugCommandQueue1 * This, + _In_ ID3D12Resource *pResource, + UINT Subresource, + D3D12_BARRIER_LAYOUT Layout); + + END_INTERFACE + } ID3D12DebugCommandQueue1Vtbl; + + interface ID3D12DebugCommandQueue1 + { + CONST_VTBL struct ID3D12DebugCommandQueue1Vtbl *lpVtbl; + }; + + + +#ifdef COBJMACROS + + +#define ID3D12DebugCommandQueue1_QueryInterface(This,riid,ppvObject) \ + ( (This)->lpVtbl -> QueryInterface(This,riid,ppvObject) ) + +#define ID3D12DebugCommandQueue1_AddRef(This) \ + ( (This)->lpVtbl -> AddRef(This) ) + +#define ID3D12DebugCommandQueue1_Release(This) \ + ( (This)->lpVtbl -> Release(This) ) + + +#define ID3D12DebugCommandQueue1_AssertResourceState(This,pResource,Subresource,State) \ + ( (This)->lpVtbl -> AssertResourceState(This,pResource,Subresource,State) ) + + +#define ID3D12DebugCommandQueue1_AssertResourceAccess(This,pResource,Subresource,Access) \ + ( (This)->lpVtbl -> AssertResourceAccess(This,pResource,Subresource,Access) ) + +#define ID3D12DebugCommandQueue1_AssertTextureLayout(This,pResource,Subresource,Layout) \ + ( (This)->lpVtbl -> AssertTextureLayout(This,pResource,Subresource,Layout) ) + +#endif /* COBJMACROS */ + + +#endif /* C style interface */ + + + + +#endif /* __ID3D12DebugCommandQueue1_INTERFACE_DEFINED__ */ + + +/* interface __MIDL_itf_d3d12sdklayers_0000_0012 */ /* [local] */ typedef @@ -1369,8 +1611,8 @@ typedef struct D3D12_DEBUG_COMMAND_LIST_GPU_BASED_VALIDATION_SETTINGS -extern RPC_IF_HANDLE __MIDL_itf_d3d12sdklayers_0000_0010_v0_0_c_ifspec; -extern RPC_IF_HANDLE __MIDL_itf_d3d12sdklayers_0000_0010_v0_0_s_ifspec; +extern RPC_IF_HANDLE __MIDL_itf_d3d12sdklayers_0000_0012_v0_0_c_ifspec; +extern RPC_IF_HANDLE __MIDL_itf_d3d12sdklayers_0000_0012_v0_0_s_ifspec; #ifndef __ID3D12DebugCommandList1_INTERFACE_DEFINED__ #define __ID3D12DebugCommandList1_INTERFACE_DEFINED__ @@ -1388,20 +1630,17 @@ EXTERN_C const IID IID_ID3D12DebugCommandList1; { public: virtual BOOL STDMETHODCALLTYPE AssertResourceState( - /* [annotation] */ _In_ ID3D12Resource *pResource, UINT Subresource, UINT State) = 0; virtual HRESULT STDMETHODCALLTYPE SetDebugParameter( D3D12_DEBUG_COMMAND_LIST_PARAMETER_TYPE Type, - /* [annotation] */ _In_reads_bytes_(DataSize) const void *pData, UINT DataSize) = 0; virtual HRESULT STDMETHODCALLTYPE GetDebugParameter( D3D12_DEBUG_COMMAND_LIST_PARAMETER_TYPE Type, - /* [annotation] */ _Out_writes_bytes_(DataSize) void *pData, UINT DataSize) = 0; @@ -1417,9 +1656,7 @@ EXTERN_C const IID IID_ID3D12DebugCommandList1; DECLSPEC_XFGVIRT(IUnknown, QueryInterface) HRESULT ( STDMETHODCALLTYPE *QueryInterface )( ID3D12DebugCommandList1 * This, - /* [annotation][in] */ - _In_ REFIID riid, - /* [annotation][iid_is][out] */ + REFIID riid, _COM_Outptr_ void **ppvObject); DECLSPEC_XFGVIRT(IUnknown, AddRef) @@ -1433,7 +1670,6 @@ EXTERN_C const IID IID_ID3D12DebugCommandList1; DECLSPEC_XFGVIRT(ID3D12DebugCommandList1, AssertResourceState) BOOL ( STDMETHODCALLTYPE *AssertResourceState )( ID3D12DebugCommandList1 * This, - /* [annotation] */ _In_ ID3D12Resource *pResource, UINT Subresource, UINT State); @@ -1442,7 +1678,6 @@ EXTERN_C const IID IID_ID3D12DebugCommandList1; HRESULT ( STDMETHODCALLTYPE *SetDebugParameter )( ID3D12DebugCommandList1 * This, D3D12_DEBUG_COMMAND_LIST_PARAMETER_TYPE Type, - /* [annotation] */ _In_reads_bytes_(DataSize) const void *pData, UINT DataSize); @@ -1450,7 +1685,6 @@ EXTERN_C const IID IID_ID3D12DebugCommandList1; HRESULT ( STDMETHODCALLTYPE *GetDebugParameter )( ID3D12DebugCommandList1 * This, D3D12_DEBUG_COMMAND_LIST_PARAMETER_TYPE Type, - /* [annotation] */ _Out_writes_bytes_(DataSize) void *pData, UINT DataSize); @@ -1513,7 +1747,6 @@ EXTERN_C const IID IID_ID3D12DebugCommandList; { public: virtual BOOL STDMETHODCALLTYPE AssertResourceState( - /* [annotation] */ _In_ ID3D12Resource *pResource, UINT Subresource, UINT State) = 0; @@ -1535,9 +1768,7 @@ EXTERN_C const IID IID_ID3D12DebugCommandList; DECLSPEC_XFGVIRT(IUnknown, QueryInterface) HRESULT ( STDMETHODCALLTYPE *QueryInterface )( ID3D12DebugCommandList * This, - /* [annotation][in] */ - _In_ REFIID riid, - /* [annotation][iid_is][out] */ + REFIID riid, _COM_Outptr_ void **ppvObject); DECLSPEC_XFGVIRT(IUnknown, AddRef) @@ -1551,7 +1782,6 @@ EXTERN_C const IID IID_ID3D12DebugCommandList; DECLSPEC_XFGVIRT(ID3D12DebugCommandList, AssertResourceState) BOOL ( STDMETHODCALLTYPE *AssertResourceState )( ID3D12DebugCommandList * This, - /* [annotation] */ _In_ ID3D12Resource *pResource, UINT Subresource, UINT State); @@ -1625,13 +1855,11 @@ EXTERN_C const IID IID_ID3D12DebugCommandList2; public: virtual HRESULT STDMETHODCALLTYPE SetDebugParameter( D3D12_DEBUG_COMMAND_LIST_PARAMETER_TYPE Type, - /* [annotation] */ _In_reads_bytes_(DataSize) const void *pData, UINT DataSize) = 0; virtual HRESULT STDMETHODCALLTYPE GetDebugParameter( D3D12_DEBUG_COMMAND_LIST_PARAMETER_TYPE Type, - /* [annotation] */ _Out_writes_bytes_(DataSize) void *pData, UINT DataSize) = 0; @@ -1647,9 +1875,7 @@ EXTERN_C const IID IID_ID3D12DebugCommandList2; DECLSPEC_XFGVIRT(IUnknown, QueryInterface) HRESULT ( STDMETHODCALLTYPE *QueryInterface )( ID3D12DebugCommandList2 * This, - /* [annotation][in] */ - _In_ REFIID riid, - /* [annotation][iid_is][out] */ + REFIID riid, _COM_Outptr_ void **ppvObject); DECLSPEC_XFGVIRT(IUnknown, AddRef) @@ -1663,7 +1889,6 @@ EXTERN_C const IID IID_ID3D12DebugCommandList2; DECLSPEC_XFGVIRT(ID3D12DebugCommandList, AssertResourceState) BOOL ( STDMETHODCALLTYPE *AssertResourceState )( ID3D12DebugCommandList2 * This, - /* [annotation] */ _In_ ID3D12Resource *pResource, UINT Subresource, UINT State); @@ -1681,7 +1906,6 @@ EXTERN_C const IID IID_ID3D12DebugCommandList2; HRESULT ( STDMETHODCALLTYPE *SetDebugParameter )( ID3D12DebugCommandList2 * This, D3D12_DEBUG_COMMAND_LIST_PARAMETER_TYPE Type, - /* [annotation] */ _In_reads_bytes_(DataSize) const void *pData, UINT DataSize); @@ -1689,7 +1913,6 @@ EXTERN_C const IID IID_ID3D12DebugCommandList2; HRESULT ( STDMETHODCALLTYPE *GetDebugParameter )( ID3D12DebugCommandList2 * This, D3D12_DEBUG_COMMAND_LIST_PARAMETER_TYPE Type, - /* [annotation] */ _Out_writes_bytes_(DataSize) void *pData, UINT DataSize); @@ -1743,6 +1966,155 @@ EXTERN_C const IID IID_ID3D12DebugCommandList2; #endif /* __ID3D12DebugCommandList2_INTERFACE_DEFINED__ */ +#ifndef __ID3D12DebugCommandList3_INTERFACE_DEFINED__ +#define __ID3D12DebugCommandList3_INTERFACE_DEFINED__ + +/* interface ID3D12DebugCommandList3 */ +/* [unique][local][object][uuid] */ + + +EXTERN_C const IID IID_ID3D12DebugCommandList3; + +#if defined(__cplusplus) && !defined(CINTERFACE) + + MIDL_INTERFACE("197d5e15-4d37-4d34-af78-724cd70fdb1f") + ID3D12DebugCommandList3 : public ID3D12DebugCommandList2 + { + public: + virtual void STDMETHODCALLTYPE AssertResourceAccess( + _In_ ID3D12Resource *pResource, + UINT Subresource, + D3D12_BARRIER_ACCESS Access) = 0; + + virtual void STDMETHODCALLTYPE AssertTextureLayout( + _In_ ID3D12Resource *pResource, + UINT Subresource, + D3D12_BARRIER_LAYOUT Layout) = 0; + + }; + + +#else /* C style interface */ + + typedef struct ID3D12DebugCommandList3Vtbl + { + BEGIN_INTERFACE + + DECLSPEC_XFGVIRT(IUnknown, QueryInterface) + HRESULT ( STDMETHODCALLTYPE *QueryInterface )( + ID3D12DebugCommandList3 * This, + REFIID riid, + _COM_Outptr_ void **ppvObject); + + DECLSPEC_XFGVIRT(IUnknown, AddRef) + ULONG ( STDMETHODCALLTYPE *AddRef )( + ID3D12DebugCommandList3 * This); + + DECLSPEC_XFGVIRT(IUnknown, Release) + ULONG ( STDMETHODCALLTYPE *Release )( + ID3D12DebugCommandList3 * This); + + DECLSPEC_XFGVIRT(ID3D12DebugCommandList, AssertResourceState) + BOOL ( STDMETHODCALLTYPE *AssertResourceState )( + ID3D12DebugCommandList3 * This, + _In_ ID3D12Resource *pResource, + UINT Subresource, + UINT State); + + DECLSPEC_XFGVIRT(ID3D12DebugCommandList, SetFeatureMask) + HRESULT ( STDMETHODCALLTYPE *SetFeatureMask )( + ID3D12DebugCommandList3 * This, + D3D12_DEBUG_FEATURE Mask); + + DECLSPEC_XFGVIRT(ID3D12DebugCommandList, GetFeatureMask) + D3D12_DEBUG_FEATURE ( STDMETHODCALLTYPE *GetFeatureMask )( + ID3D12DebugCommandList3 * This); + + DECLSPEC_XFGVIRT(ID3D12DebugCommandList2, SetDebugParameter) + HRESULT ( STDMETHODCALLTYPE *SetDebugParameter )( + ID3D12DebugCommandList3 * This, + D3D12_DEBUG_COMMAND_LIST_PARAMETER_TYPE Type, + _In_reads_bytes_(DataSize) const void *pData, + UINT DataSize); + + DECLSPEC_XFGVIRT(ID3D12DebugCommandList2, GetDebugParameter) + HRESULT ( STDMETHODCALLTYPE *GetDebugParameter )( + ID3D12DebugCommandList3 * This, + D3D12_DEBUG_COMMAND_LIST_PARAMETER_TYPE Type, + _Out_writes_bytes_(DataSize) void *pData, + UINT DataSize); + + DECLSPEC_XFGVIRT(ID3D12DebugCommandList3, AssertResourceAccess) + void ( STDMETHODCALLTYPE *AssertResourceAccess )( + ID3D12DebugCommandList3 * This, + _In_ ID3D12Resource *pResource, + UINT Subresource, + D3D12_BARRIER_ACCESS Access); + + DECLSPEC_XFGVIRT(ID3D12DebugCommandList3, AssertTextureLayout) + void ( STDMETHODCALLTYPE *AssertTextureLayout )( + ID3D12DebugCommandList3 * This, + _In_ ID3D12Resource *pResource, + UINT Subresource, + D3D12_BARRIER_LAYOUT Layout); + + END_INTERFACE + } ID3D12DebugCommandList3Vtbl; + + interface ID3D12DebugCommandList3 + { + CONST_VTBL struct ID3D12DebugCommandList3Vtbl *lpVtbl; + }; + + + +#ifdef COBJMACROS + + +#define ID3D12DebugCommandList3_QueryInterface(This,riid,ppvObject) \ + ( (This)->lpVtbl -> QueryInterface(This,riid,ppvObject) ) + +#define ID3D12DebugCommandList3_AddRef(This) \ + ( (This)->lpVtbl -> AddRef(This) ) + +#define ID3D12DebugCommandList3_Release(This) \ + ( (This)->lpVtbl -> Release(This) ) + + +#define ID3D12DebugCommandList3_AssertResourceState(This,pResource,Subresource,State) \ + ( (This)->lpVtbl -> AssertResourceState(This,pResource,Subresource,State) ) + +#define ID3D12DebugCommandList3_SetFeatureMask(This,Mask) \ + ( (This)->lpVtbl -> SetFeatureMask(This,Mask) ) + +#define ID3D12DebugCommandList3_GetFeatureMask(This) \ + ( (This)->lpVtbl -> GetFeatureMask(This) ) + + +#define ID3D12DebugCommandList3_SetDebugParameter(This,Type,pData,DataSize) \ + ( (This)->lpVtbl -> SetDebugParameter(This,Type,pData,DataSize) ) + +#define ID3D12DebugCommandList3_GetDebugParameter(This,Type,pData,DataSize) \ + ( (This)->lpVtbl -> GetDebugParameter(This,Type,pData,DataSize) ) + + +#define ID3D12DebugCommandList3_AssertResourceAccess(This,pResource,Subresource,Access) \ + ( (This)->lpVtbl -> AssertResourceAccess(This,pResource,Subresource,Access) ) + +#define ID3D12DebugCommandList3_AssertTextureLayout(This,pResource,Subresource,Layout) \ + ( (This)->lpVtbl -> AssertTextureLayout(This,pResource,Subresource,Layout) ) + +#endif /* COBJMACROS */ + + +#endif /* C style interface */ + + + + +#endif /* __ID3D12DebugCommandList3_INTERFACE_DEFINED__ */ + + #ifndef __ID3D12SharingContract_INTERFACE_DEFINED__ #define __ID3D12SharingContract_INTERFACE_DEFINED__ @@ -1759,23 +2131,18 @@ EXTERN_C const IID IID_ID3D12SharingContract; { public: virtual void STDMETHODCALLTYPE Present( - /* [annotation] */ _In_ ID3D12Resource *pResource, UINT Subresource, - /* [annotation] */ _In_ HWND window) = 0; virtual void STDMETHODCALLTYPE SharedFenceSignal( - /* [annotation] */ _In_ ID3D12Fence *pFence, UINT64 FenceValue) = 0; virtual void STDMETHODCALLTYPE BeginCapturableWork( - /* [annotation] */ _In_ REFGUID guid) = 0; virtual void STDMETHODCALLTYPE EndCapturableWork( - /* [annotation] */ _In_ REFGUID guid) = 0; }; @@ -1790,9 +2157,7 @@ EXTERN_C const IID IID_ID3D12SharingContract; DECLSPEC_XFGVIRT(IUnknown, QueryInterface) HRESULT ( STDMETHODCALLTYPE *QueryInterface )( ID3D12SharingContract * This, - /* [annotation][in] */ - _In_ REFIID riid, - /* [annotation][iid_is][out] */ + REFIID riid, _COM_Outptr_ void **ppvObject); DECLSPEC_XFGVIRT(IUnknown, AddRef) @@ -1806,29 +2171,24 @@ EXTERN_C const IID IID_ID3D12SharingContract; DECLSPEC_XFGVIRT(ID3D12SharingContract, Present) void ( STDMETHODCALLTYPE *Present )( ID3D12SharingContract * This, - /* [annotation] */ _In_ ID3D12Resource *pResource, UINT Subresource, - /* [annotation] */ _In_ HWND window); DECLSPEC_XFGVIRT(ID3D12SharingContract, SharedFenceSignal) void ( STDMETHODCALLTYPE *SharedFenceSignal )( ID3D12SharingContract * This, - /* [annotation] */ _In_ ID3D12Fence *pFence, UINT64 FenceValue); DECLSPEC_XFGVIRT(ID3D12SharingContract, BeginCapturableWork) void ( STDMETHODCALLTYPE *BeginCapturableWork )( ID3D12SharingContract * This, - /* [annotation] */ _In_ REFGUID guid); DECLSPEC_XFGVIRT(ID3D12SharingContract, EndCapturableWork) void ( STDMETHODCALLTYPE *EndCapturableWork )( ID3D12SharingContract * This, - /* [annotation] */ _In_ REFGUID guid); END_INTERFACE @@ -1877,7 +2237,7 @@ EXTERN_C const IID IID_ID3D12SharingContract; #endif /* __ID3D12SharingContract_INTERFACE_DEFINED__ */ -/* interface __MIDL_itf_d3d12sdklayers_0000_0014 */ +/* interface __MIDL_itf_d3d12sdklayers_0000_0017 */ /* [local] */ typedef @@ -2800,7 +3160,48 @@ enum D3D12_MESSAGE_ID D3D12_MESSAGE_ID_SETTING_SHADING_RATE_FROM_MS_REQUIRES_CAPABILITY = 1325, D3D12_MESSAGE_ID_SHADERCACHESESSION_SHADERCACHEDELETE_NOTSUPPORTED = 1326, D3D12_MESSAGE_ID_SHADERCACHECONTROL_SHADERCACHECLEAR_NOTSUPPORTED = 1327, - D3D12_MESSAGE_ID_D3D12_MESSAGES_END = ( D3D12_MESSAGE_ID_SHADERCACHECONTROL_SHADERCACHECLEAR_NOTSUPPORTED + 1 ) + D3D12_MESSAGE_ID_CREATERESOURCE_STATE_IGNORED = 1328, + D3D12_MESSAGE_ID_UNUSED_CROSS_EXECUTE_SPLIT_BARRIER = 1329, + D3D12_MESSAGE_ID_DEVICE_OPEN_SHARED_HANDLE_ACCESS_DENIED = 1330, + D3D12_MESSAGE_ID_INCOMPATIBLE_BARRIER_VALUES = 1331, + D3D12_MESSAGE_ID_INCOMPATIBLE_BARRIER_ACCESS = 1332, + D3D12_MESSAGE_ID_INCOMPATIBLE_BARRIER_SYNC = 1333, + D3D12_MESSAGE_ID_INCOMPATIBLE_BARRIER_LAYOUT = 1334, + D3D12_MESSAGE_ID_INCOMPATIBLE_BARRIER_TYPE = 1335, + D3D12_MESSAGE_ID_OUT_OF_BOUNDS_BARRIER_SUBRESOURCE_RANGE = 1336, + D3D12_MESSAGE_ID_INCOMPATIBLE_BARRIER_RESOURCE_DIMENSION = 1337, + D3D12_MESSAGE_ID_SET_SCISSOR_RECTS_INVALID_RECT = 1338, + D3D12_MESSAGE_ID_SHADING_RATE_SOURCE_REQUIRES_DIMENSION_TEXTURE2D = 1339, + D3D12_MESSAGE_ID_BUFFER_BARRIER_SUBREGION_OUT_OF_BOUNDS = 1340, + D3D12_MESSAGE_ID_UNSUPPORTED_BARRIER_LAYOUT = 1341, + D3D12_MESSAGE_ID_CREATERESOURCEANDHEAP_INVALID_PARAMETERS = 1342, + D3D12_MESSAGE_ID_ENHANCED_BARRIERS_NOT_SUPPORTED = 1343, + D3D12_MESSAGE_ID_LEGACY_BARRIER_VALIDATION_FORCED_ON = 1346, + D3D12_MESSAGE_ID_EMPTY_ROOT_DESCRIPTOR_TABLE = 1347, + D3D12_MESSAGE_ID_COMMAND_LIST_DRAW_ELEMENT_OFFSET_UNALIGNED = 1348, + D3D12_MESSAGE_ID_ALPHA_BLEND_FACTOR_NOT_SUPPORTED = 1349, + D3D12_MESSAGE_ID_BARRIER_INTEROP_INVALID_LAYOUT = 1350, + D3D12_MESSAGE_ID_BARRIER_INTEROP_INVALID_STATE = 1351, + D3D12_MESSAGE_ID_GRAPHICS_PIPELINE_STATE_DESC_ZERO_SAMPLE_MASK = 1352, + D3D12_MESSAGE_ID_INDEPENDENT_STENCIL_REF_NOT_SUPPORTED = 1353, + D3D12_MESSAGE_ID_CREATEDEPTHSTENCILSTATE_INDEPENDENT_MASKS_UNSUPPORTED = 1354, + D3D12_MESSAGE_ID_TEXTURE_BARRIER_SUBRESOURCES_OUT_OF_BOUNDS = 1355, + D3D12_MESSAGE_ID_NON_OPTIMAL_BARRIER_ONLY_EXECUTE_COMMAND_LISTS = 1356, + D3D12_MESSAGE_ID_EXECUTE_INDIRECT_ZERO_COMMAND_COUNT = 1357, + D3D12_MESSAGE_ID_GPU_BASED_VALIDATION_INCOMPATIBLE_TEXTURE_LAYOUT = 1358, + D3D12_MESSAGE_ID_DYNAMIC_INDEX_BUFFER_STRIP_CUT_NOT_SUPPORTED = 1359, + D3D12_MESSAGE_ID_PRIMITIVE_TOPOLOGY_TRIANGLE_FANS_NOT_SUPPORTED = 1360, + D3D12_MESSAGE_ID_CREATE_SAMPLER_COMPARISON_FUNC_IGNORED = 1361, + D3D12_MESSAGE_ID_CREATEHEAP_INVALIDHEAPTYPE = 1362, + D3D12_MESSAGE_ID_CREATERESOURCEANDHEAP_INVALIDHEAPTYPE = 1363, + D3D12_MESSAGE_ID_DYNAMIC_DEPTH_BIAS_NOT_SUPPORTED = 1364, + D3D12_MESSAGE_ID_CREATERASTERIZERSTATE_NON_WHOLE_DYNAMIC_DEPTH_BIAS = 1365, + D3D12_MESSAGE_ID_DYNAMIC_DEPTH_BIAS_FLAG_MISSING = 1366, + D3D12_MESSAGE_ID_DYNAMIC_DEPTH_BIAS_NO_PIPELINE = 1367, + D3D12_MESSAGE_ID_DYNAMIC_INDEX_BUFFER_STRIP_CUT_FLAG_MISSING = 1368, + D3D12_MESSAGE_ID_DYNAMIC_INDEX_BUFFER_STRIP_CUT_NO_PIPELINE = 1369, + D3D12_MESSAGE_ID_INVALID_CAST_TARGET = 1371, + D3D12_MESSAGE_ID_D3D12_MESSAGES_END = ( D3D12_MESSAGE_ID_INVALID_CAST_TARGET + 1 ) } D3D12_MESSAGE_ID; typedef struct D3D12_MESSAGE @@ -2808,21 +3209,17 @@ typedef struct D3D12_MESSAGE D3D12_MESSAGE_CATEGORY Category; D3D12_MESSAGE_SEVERITY Severity; D3D12_MESSAGE_ID ID; - /* [annotation] */ - _Field_size_(DescriptionByteLength) const unsigned char *pDescription; + _Field_size_(DescriptionByteLength) const char *pDescription; SIZE_T DescriptionByteLength; } D3D12_MESSAGE; typedef struct D3D12_INFO_QUEUE_FILTER_DESC { UINT NumCategories; - /* [annotation] */ _Field_size_(NumCategories) D3D12_MESSAGE_CATEGORY *pCategoryList; UINT NumSeverities; - /* [annotation] */ _Field_size_(NumSeverities) D3D12_MESSAGE_SEVERITY *pSeverityList; UINT NumIDs; - /* [annotation] */ _Field_size_(NumIDs) D3D12_MESSAGE_ID *pIDList; } D3D12_INFO_QUEUE_FILTER_DESC; @@ -2835,8 +3232,8 @@ typedef struct D3D12_INFO_QUEUE_FILTER #define D3D12_INFO_QUEUE_DEFAULT_MESSAGE_COUNT_LIMIT 1024 -extern RPC_IF_HANDLE __MIDL_itf_d3d12sdklayers_0000_0014_v0_0_c_ifspec; -extern RPC_IF_HANDLE __MIDL_itf_d3d12sdklayers_0000_0014_v0_0_s_ifspec; +extern RPC_IF_HANDLE __MIDL_itf_d3d12sdklayers_0000_0017_v0_0_c_ifspec; +extern RPC_IF_HANDLE __MIDL_itf_d3d12sdklayers_0000_0017_v0_0_s_ifspec; #ifndef __ID3D12InfoQueue_INTERFACE_DEFINED__ #define __ID3D12InfoQueue_INTERFACE_DEFINED__ @@ -2854,17 +3251,13 @@ EXTERN_C const IID IID_ID3D12InfoQueue; { public: virtual HRESULT STDMETHODCALLTYPE SetMessageCountLimit( - /* [annotation] */ _In_ UINT64 MessageCountLimit) = 0; virtual void STDMETHODCALLTYPE ClearStoredMessages( void) = 0; virtual HRESULT STDMETHODCALLTYPE GetMessage( - /* [annotation] */ _In_ UINT64 MessageIndex, - /* [annotation] */ _Out_writes_bytes_opt_(*pMessageByteLength) D3D12_MESSAGE *pMessage, - /* [annotation] */ _Inout_ SIZE_T *pMessageByteLength) = 0; virtual UINT64 STDMETHODCALLTYPE GetNumMessagesAllowedByStorageFilter( void) = 0; @@ -2880,13 +3273,10 @@ EXTERN_C const IID IID_ID3D12InfoQueue; virtual UINT64 STDMETHODCALLTYPE GetMessageCountLimit( void) = 0; virtual HRESULT STDMETHODCALLTYPE AddStorageFilterEntries( - /* [annotation] */ _In_ D3D12_INFO_QUEUE_FILTER *pFilter) = 0; virtual HRESULT STDMETHODCALLTYPE GetStorageFilter( - /* [annotation] */ _Out_writes_bytes_opt_(*pFilterByteLength) D3D12_INFO_QUEUE_FILTER *pFilter, - /* [annotation] */ _Inout_ SIZE_T *pFilterByteLength) = 0; virtual void STDMETHODCALLTYPE ClearStorageFilter( void) = 0; @@ -2896,7 +3286,6 @@ EXTERN_C const IID IID_ID3D12InfoQueue; virtual HRESULT STDMETHODCALLTYPE PushCopyOfStorageFilter( void) = 0; virtual HRESULT STDMETHODCALLTYPE PushStorageFilter( - /* [annotation] */ _In_ D3D12_INFO_QUEUE_FILTER *pFilter) = 0; virtual void STDMETHODCALLTYPE PopStorageFilter( void) = 0; @@ -2904,13 +3293,10 @@ EXTERN_C const IID IID_ID3D12InfoQueue; virtual UINT STDMETHODCALLTYPE GetStorageFilterStackSize( void) = 0; virtual HRESULT STDMETHODCALLTYPE AddRetrievalFilterEntries( - /* [annotation] */ _In_ D3D12_INFO_QUEUE_FILTER *pFilter) = 0; virtual HRESULT STDMETHODCALLTYPE GetRetrievalFilter( - /* [annotation] */ _Out_writes_bytes_opt_(*pFilterByteLength) D3D12_INFO_QUEUE_FILTER *pFilter, - /* [annotation] */ _Inout_ SIZE_T *pFilterByteLength) = 0; virtual void STDMETHODCALLTYPE ClearRetrievalFilter( void) = 0; @@ -2920,7 +3306,6 @@ EXTERN_C const IID IID_ID3D12InfoQueue; virtual HRESULT STDMETHODCALLTYPE PushCopyOfRetrievalFilter( void) = 0; virtual HRESULT STDMETHODCALLTYPE PushRetrievalFilter( - /* [annotation] */ _In_ D3D12_INFO_QUEUE_FILTER *pFilter) = 0; virtual void STDMETHODCALLTYPE PopRetrievalFilter( void) = 0; @@ -2928,53 +3313,37 @@ EXTERN_C const IID IID_ID3D12InfoQueue; virtual UINT STDMETHODCALLTYPE GetRetrievalFilterStackSize( void) = 0; virtual HRESULT STDMETHODCALLTYPE AddMessage( - /* [annotation] */ _In_ D3D12_MESSAGE_CATEGORY Category, - /* [annotation] */ _In_ D3D12_MESSAGE_SEVERITY Severity, - /* [annotation] */ _In_ D3D12_MESSAGE_ID ID, - /* [annotation] */ _In_ LPCSTR pDescription) = 0; virtual HRESULT STDMETHODCALLTYPE AddApplicationMessage( - /* [annotation] */ _In_ D3D12_MESSAGE_SEVERITY Severity, - /* [annotation] */ _In_ LPCSTR pDescription) = 0; virtual HRESULT STDMETHODCALLTYPE SetBreakOnCategory( - /* [annotation] */ _In_ D3D12_MESSAGE_CATEGORY Category, - /* [annotation] */ _In_ BOOL bEnable) = 0; virtual HRESULT STDMETHODCALLTYPE SetBreakOnSeverity( - /* [annotation] */ _In_ D3D12_MESSAGE_SEVERITY Severity, - /* [annotation] */ _In_ BOOL bEnable) = 0; virtual HRESULT STDMETHODCALLTYPE SetBreakOnID( - /* [annotation] */ _In_ D3D12_MESSAGE_ID ID, - /* [annotation] */ _In_ BOOL bEnable) = 0; virtual BOOL STDMETHODCALLTYPE GetBreakOnCategory( - /* [annotation] */ _In_ D3D12_MESSAGE_CATEGORY Category) = 0; virtual BOOL STDMETHODCALLTYPE GetBreakOnSeverity( - /* [annotation] */ _In_ D3D12_MESSAGE_SEVERITY Severity) = 0; virtual BOOL STDMETHODCALLTYPE GetBreakOnID( - /* [annotation] */ _In_ D3D12_MESSAGE_ID ID) = 0; virtual void STDMETHODCALLTYPE SetMuteDebugOutput( - /* [annotation] */ _In_ BOOL bMute) = 0; virtual BOOL STDMETHODCALLTYPE GetMuteDebugOutput( void) = 0; @@ -2991,9 +3360,7 @@ EXTERN_C const IID IID_ID3D12InfoQueue; DECLSPEC_XFGVIRT(IUnknown, QueryInterface) HRESULT ( STDMETHODCALLTYPE *QueryInterface )( ID3D12InfoQueue * This, - /* [annotation][in] */ - _In_ REFIID riid, - /* [annotation][iid_is][out] */ + REFIID riid, _COM_Outptr_ void **ppvObject); DECLSPEC_XFGVIRT(IUnknown, AddRef) @@ -3007,7 +3374,6 @@ EXTERN_C const IID IID_ID3D12InfoQueue; DECLSPEC_XFGVIRT(ID3D12InfoQueue, SetMessageCountLimit) HRESULT ( STDMETHODCALLTYPE *SetMessageCountLimit )( ID3D12InfoQueue * This, - /* [annotation] */ _In_ UINT64 MessageCountLimit); DECLSPEC_XFGVIRT(ID3D12InfoQueue, ClearStoredMessages) @@ -3017,11 +3383,8 @@ EXTERN_C const IID IID_ID3D12InfoQueue; DECLSPEC_XFGVIRT(ID3D12InfoQueue, GetMessage) HRESULT ( STDMETHODCALLTYPE *GetMessage )( ID3D12InfoQueue * This, - /* [annotation] */ _In_ UINT64 MessageIndex, - /* [annotation] */ _Out_writes_bytes_opt_(*pMessageByteLength) D3D12_MESSAGE *pMessage, - /* [annotation] */ _Inout_ SIZE_T *pMessageByteLength); DECLSPEC_XFGVIRT(ID3D12InfoQueue, GetNumMessagesAllowedByStorageFilter) @@ -3051,15 +3414,12 @@ EXTERN_C const IID IID_ID3D12InfoQueue; DECLSPEC_XFGVIRT(ID3D12InfoQueue, AddStorageFilterEntries) HRESULT ( STDMETHODCALLTYPE *AddStorageFilterEntries )( ID3D12InfoQueue * This, - /* [annotation] */ _In_ D3D12_INFO_QUEUE_FILTER *pFilter); DECLSPEC_XFGVIRT(ID3D12InfoQueue, GetStorageFilter) HRESULT ( STDMETHODCALLTYPE *GetStorageFilter )( ID3D12InfoQueue * This, - /* [annotation] */ _Out_writes_bytes_opt_(*pFilterByteLength) D3D12_INFO_QUEUE_FILTER *pFilter, - /* [annotation] */ _Inout_ SIZE_T *pFilterByteLength); DECLSPEC_XFGVIRT(ID3D12InfoQueue, ClearStorageFilter) @@ -3077,7 +3437,6 @@ EXTERN_C const IID IID_ID3D12InfoQueue; DECLSPEC_XFGVIRT(ID3D12InfoQueue, PushStorageFilter) HRESULT ( STDMETHODCALLTYPE *PushStorageFilter )( ID3D12InfoQueue * This, - /* [annotation] */ _In_ D3D12_INFO_QUEUE_FILTER *pFilter); DECLSPEC_XFGVIRT(ID3D12InfoQueue, PopStorageFilter) @@ -3091,15 +3450,12 @@ EXTERN_C const IID IID_ID3D12InfoQueue; DECLSPEC_XFGVIRT(ID3D12InfoQueue, AddRetrievalFilterEntries) HRESULT ( STDMETHODCALLTYPE *AddRetrievalFilterEntries )( ID3D12InfoQueue * This, - /* [annotation] */ _In_ D3D12_INFO_QUEUE_FILTER *pFilter); DECLSPEC_XFGVIRT(ID3D12InfoQueue, GetRetrievalFilter) HRESULT ( STDMETHODCALLTYPE *GetRetrievalFilter )( ID3D12InfoQueue * This, - /* [annotation] */ _Out_writes_bytes_opt_(*pFilterByteLength) D3D12_INFO_QUEUE_FILTER *pFilter, - /* [annotation] */ _Inout_ SIZE_T *pFilterByteLength); DECLSPEC_XFGVIRT(ID3D12InfoQueue, ClearRetrievalFilter) @@ -3117,7 +3473,6 @@ EXTERN_C const IID IID_ID3D12InfoQueue; DECLSPEC_XFGVIRT(ID3D12InfoQueue, PushRetrievalFilter) HRESULT ( STDMETHODCALLTYPE *PushRetrievalFilter )( ID3D12InfoQueue * This, - /* [annotation] */ _In_ D3D12_INFO_QUEUE_FILTER *pFilter); DECLSPEC_XFGVIRT(ID3D12InfoQueue, PopRetrievalFilter) @@ -3131,69 +3486,53 @@ EXTERN_C const IID IID_ID3D12InfoQueue; DECLSPEC_XFGVIRT(ID3D12InfoQueue, AddMessage) HRESULT ( STDMETHODCALLTYPE *AddMessage )( ID3D12InfoQueue * This, - /* [annotation] */ _In_ D3D12_MESSAGE_CATEGORY Category, - /* [annotation] */ _In_ D3D12_MESSAGE_SEVERITY Severity, - /* [annotation] */ _In_ D3D12_MESSAGE_ID ID, - /* [annotation] */ _In_ LPCSTR pDescription); DECLSPEC_XFGVIRT(ID3D12InfoQueue, AddApplicationMessage) HRESULT ( STDMETHODCALLTYPE *AddApplicationMessage )( ID3D12InfoQueue * This, - /* [annotation] */ _In_ D3D12_MESSAGE_SEVERITY Severity, - /* [annotation] */ _In_ LPCSTR pDescription); DECLSPEC_XFGVIRT(ID3D12InfoQueue, SetBreakOnCategory) HRESULT ( STDMETHODCALLTYPE *SetBreakOnCategory )( ID3D12InfoQueue * This, - /* [annotation] */ _In_ D3D12_MESSAGE_CATEGORY Category, - /* [annotation] */ _In_ BOOL bEnable); DECLSPEC_XFGVIRT(ID3D12InfoQueue, SetBreakOnSeverity) HRESULT ( STDMETHODCALLTYPE *SetBreakOnSeverity )( ID3D12InfoQueue * This, - /* [annotation] */ _In_ D3D12_MESSAGE_SEVERITY Severity, - /* [annotation] */ _In_ BOOL bEnable); DECLSPEC_XFGVIRT(ID3D12InfoQueue, SetBreakOnID) HRESULT ( STDMETHODCALLTYPE *SetBreakOnID )( ID3D12InfoQueue * This, - /* [annotation] */ _In_ D3D12_MESSAGE_ID ID, - /* [annotation] */ _In_ BOOL bEnable); DECLSPEC_XFGVIRT(ID3D12InfoQueue, GetBreakOnCategory) BOOL ( STDMETHODCALLTYPE *GetBreakOnCategory )( ID3D12InfoQueue * This, - /* [annotation] */ _In_ D3D12_MESSAGE_CATEGORY Category); DECLSPEC_XFGVIRT(ID3D12InfoQueue, GetBreakOnSeverity) BOOL ( STDMETHODCALLTYPE *GetBreakOnSeverity )( ID3D12InfoQueue * This, - /* [annotation] */ _In_ D3D12_MESSAGE_SEVERITY Severity); DECLSPEC_XFGVIRT(ID3D12InfoQueue, GetBreakOnID) BOOL ( STDMETHODCALLTYPE *GetBreakOnID )( ID3D12InfoQueue * This, - /* [annotation] */ _In_ D3D12_MESSAGE_ID ID); DECLSPEC_XFGVIRT(ID3D12InfoQueue, SetMuteDebugOutput) void ( STDMETHODCALLTYPE *SetMuteDebugOutput )( ID3D12InfoQueue * This, - /* [annotation] */ _In_ BOOL bMute); DECLSPEC_XFGVIRT(ID3D12InfoQueue, GetMuteDebugOutput) @@ -3339,7 +3678,7 @@ EXTERN_C const IID IID_ID3D12InfoQueue; #endif /* __ID3D12InfoQueue_INTERFACE_DEFINED__ */ -/* interface __MIDL_itf_d3d12sdklayers_0000_0015 */ +/* interface __MIDL_itf_d3d12sdklayers_0000_0018 */ /* [local] */ typedef @@ -3359,8 +3698,8 @@ typedef void ( __stdcall *D3D12MessageFunc )( -extern RPC_IF_HANDLE __MIDL_itf_d3d12sdklayers_0000_0015_v0_0_c_ifspec; -extern RPC_IF_HANDLE __MIDL_itf_d3d12sdklayers_0000_0015_v0_0_s_ifspec; +extern RPC_IF_HANDLE __MIDL_itf_d3d12sdklayers_0000_0018_v0_0_c_ifspec; +extern RPC_IF_HANDLE __MIDL_itf_d3d12sdklayers_0000_0018_v0_0_s_ifspec; #ifndef __ID3D12InfoQueue1_INTERFACE_DEFINED__ #define __ID3D12InfoQueue1_INTERFACE_DEFINED__ @@ -3378,17 +3717,12 @@ EXTERN_C const IID IID_ID3D12InfoQueue1; { public: virtual HRESULT STDMETHODCALLTYPE RegisterMessageCallback( - /* [annotation] */ _In_ D3D12MessageFunc CallbackFunc, - /* [annotation] */ _In_ D3D12_MESSAGE_CALLBACK_FLAGS CallbackFilterFlags, - /* [annotation] */ _In_ void *pContext, - /* [annotation] */ _Inout_ DWORD *pCallbackCookie) = 0; virtual HRESULT STDMETHODCALLTYPE UnregisterMessageCallback( - /* [annotation] */ _In_ DWORD CallbackCookie) = 0; }; @@ -3403,9 +3737,7 @@ EXTERN_C const IID IID_ID3D12InfoQueue1; DECLSPEC_XFGVIRT(IUnknown, QueryInterface) HRESULT ( STDMETHODCALLTYPE *QueryInterface )( ID3D12InfoQueue1 * This, - /* [annotation][in] */ - _In_ REFIID riid, - /* [annotation][iid_is][out] */ + REFIID riid, _COM_Outptr_ void **ppvObject); DECLSPEC_XFGVIRT(IUnknown, AddRef) @@ -3419,7 +3751,6 @@ EXTERN_C const IID IID_ID3D12InfoQueue1; DECLSPEC_XFGVIRT(ID3D12InfoQueue, SetMessageCountLimit) HRESULT ( STDMETHODCALLTYPE *SetMessageCountLimit )( ID3D12InfoQueue1 * This, - /* [annotation] */ _In_ UINT64 MessageCountLimit); DECLSPEC_XFGVIRT(ID3D12InfoQueue, ClearStoredMessages) @@ -3429,11 +3760,8 @@ EXTERN_C const IID IID_ID3D12InfoQueue1; DECLSPEC_XFGVIRT(ID3D12InfoQueue, GetMessage) HRESULT ( STDMETHODCALLTYPE *GetMessage )( ID3D12InfoQueue1 * This, - /* [annotation] */ _In_ UINT64 MessageIndex, - /* [annotation] */ _Out_writes_bytes_opt_(*pMessageByteLength) D3D12_MESSAGE *pMessage, - /* [annotation] */ _Inout_ SIZE_T *pMessageByteLength); DECLSPEC_XFGVIRT(ID3D12InfoQueue, GetNumMessagesAllowedByStorageFilter) @@ -3463,15 +3791,12 @@ EXTERN_C const IID IID_ID3D12InfoQueue1; DECLSPEC_XFGVIRT(ID3D12InfoQueue, AddStorageFilterEntries) HRESULT ( STDMETHODCALLTYPE *AddStorageFilterEntries )( ID3D12InfoQueue1 * This, - /* [annotation] */ _In_ D3D12_INFO_QUEUE_FILTER *pFilter); DECLSPEC_XFGVIRT(ID3D12InfoQueue, GetStorageFilter) HRESULT ( STDMETHODCALLTYPE *GetStorageFilter )( ID3D12InfoQueue1 * This, - /* [annotation] */ _Out_writes_bytes_opt_(*pFilterByteLength) D3D12_INFO_QUEUE_FILTER *pFilter, - /* [annotation] */ _Inout_ SIZE_T *pFilterByteLength); DECLSPEC_XFGVIRT(ID3D12InfoQueue, ClearStorageFilter) @@ -3489,7 +3814,6 @@ EXTERN_C const IID IID_ID3D12InfoQueue1; DECLSPEC_XFGVIRT(ID3D12InfoQueue, PushStorageFilter) HRESULT ( STDMETHODCALLTYPE *PushStorageFilter )( ID3D12InfoQueue1 * This, - /* [annotation] */ _In_ D3D12_INFO_QUEUE_FILTER *pFilter); DECLSPEC_XFGVIRT(ID3D12InfoQueue, PopStorageFilter) @@ -3503,15 +3827,12 @@ EXTERN_C const IID IID_ID3D12InfoQueue1; DECLSPEC_XFGVIRT(ID3D12InfoQueue, AddRetrievalFilterEntries) HRESULT ( STDMETHODCALLTYPE *AddRetrievalFilterEntries )( ID3D12InfoQueue1 * This, - /* [annotation] */ _In_ D3D12_INFO_QUEUE_FILTER *pFilter); DECLSPEC_XFGVIRT(ID3D12InfoQueue, GetRetrievalFilter) HRESULT ( STDMETHODCALLTYPE *GetRetrievalFilter )( ID3D12InfoQueue1 * This, - /* [annotation] */ _Out_writes_bytes_opt_(*pFilterByteLength) D3D12_INFO_QUEUE_FILTER *pFilter, - /* [annotation] */ _Inout_ SIZE_T *pFilterByteLength); DECLSPEC_XFGVIRT(ID3D12InfoQueue, ClearRetrievalFilter) @@ -3529,7 +3850,6 @@ EXTERN_C const IID IID_ID3D12InfoQueue1; DECLSPEC_XFGVIRT(ID3D12InfoQueue, PushRetrievalFilter) HRESULT ( STDMETHODCALLTYPE *PushRetrievalFilter )( ID3D12InfoQueue1 * This, - /* [annotation] */ _In_ D3D12_INFO_QUEUE_FILTER *pFilter); DECLSPEC_XFGVIRT(ID3D12InfoQueue, PopRetrievalFilter) @@ -3543,69 +3863,53 @@ EXTERN_C const IID IID_ID3D12InfoQueue1; DECLSPEC_XFGVIRT(ID3D12InfoQueue, AddMessage) HRESULT ( STDMETHODCALLTYPE *AddMessage )( ID3D12InfoQueue1 * This, - /* [annotation] */ _In_ D3D12_MESSAGE_CATEGORY Category, - /* [annotation] */ _In_ D3D12_MESSAGE_SEVERITY Severity, - /* [annotation] */ _In_ D3D12_MESSAGE_ID ID, - /* [annotation] */ _In_ LPCSTR pDescription); DECLSPEC_XFGVIRT(ID3D12InfoQueue, AddApplicationMessage) HRESULT ( STDMETHODCALLTYPE *AddApplicationMessage )( ID3D12InfoQueue1 * This, - /* [annotation] */ _In_ D3D12_MESSAGE_SEVERITY Severity, - /* [annotation] */ _In_ LPCSTR pDescription); DECLSPEC_XFGVIRT(ID3D12InfoQueue, SetBreakOnCategory) HRESULT ( STDMETHODCALLTYPE *SetBreakOnCategory )( ID3D12InfoQueue1 * This, - /* [annotation] */ _In_ D3D12_MESSAGE_CATEGORY Category, - /* [annotation] */ _In_ BOOL bEnable); DECLSPEC_XFGVIRT(ID3D12InfoQueue, SetBreakOnSeverity) HRESULT ( STDMETHODCALLTYPE *SetBreakOnSeverity )( ID3D12InfoQueue1 * This, - /* [annotation] */ _In_ D3D12_MESSAGE_SEVERITY Severity, - /* [annotation] */ _In_ BOOL bEnable); DECLSPEC_XFGVIRT(ID3D12InfoQueue, SetBreakOnID) HRESULT ( STDMETHODCALLTYPE *SetBreakOnID )( ID3D12InfoQueue1 * This, - /* [annotation] */ _In_ D3D12_MESSAGE_ID ID, - /* [annotation] */ _In_ BOOL bEnable); DECLSPEC_XFGVIRT(ID3D12InfoQueue, GetBreakOnCategory) BOOL ( STDMETHODCALLTYPE *GetBreakOnCategory )( ID3D12InfoQueue1 * This, - /* [annotation] */ _In_ D3D12_MESSAGE_CATEGORY Category); DECLSPEC_XFGVIRT(ID3D12InfoQueue, GetBreakOnSeverity) BOOL ( STDMETHODCALLTYPE *GetBreakOnSeverity )( ID3D12InfoQueue1 * This, - /* [annotation] */ _In_ D3D12_MESSAGE_SEVERITY Severity); DECLSPEC_XFGVIRT(ID3D12InfoQueue, GetBreakOnID) BOOL ( STDMETHODCALLTYPE *GetBreakOnID )( ID3D12InfoQueue1 * This, - /* [annotation] */ _In_ D3D12_MESSAGE_ID ID); DECLSPEC_XFGVIRT(ID3D12InfoQueue, SetMuteDebugOutput) void ( STDMETHODCALLTYPE *SetMuteDebugOutput )( ID3D12InfoQueue1 * This, - /* [annotation] */ _In_ BOOL bMute); DECLSPEC_XFGVIRT(ID3D12InfoQueue, GetMuteDebugOutput) @@ -3615,19 +3919,14 @@ EXTERN_C const IID IID_ID3D12InfoQueue1; DECLSPEC_XFGVIRT(ID3D12InfoQueue1, RegisterMessageCallback) HRESULT ( STDMETHODCALLTYPE *RegisterMessageCallback )( ID3D12InfoQueue1 * This, - /* [annotation] */ _In_ D3D12MessageFunc CallbackFunc, - /* [annotation] */ _In_ D3D12_MESSAGE_CALLBACK_FLAGS CallbackFilterFlags, - /* [annotation] */ _In_ void *pContext, - /* [annotation] */ _Inout_ DWORD *pCallbackCookie); DECLSPEC_XFGVIRT(ID3D12InfoQueue1, UnregisterMessageCallback) HRESULT ( STDMETHODCALLTYPE *UnregisterMessageCallback )( ID3D12InfoQueue1 * This, - /* [annotation] */ _In_ DWORD CallbackCookie); END_INTERFACE @@ -3776,7 +4075,7 @@ EXTERN_C const IID IID_ID3D12InfoQueue1; #endif /* __ID3D12InfoQueue1_INTERFACE_DEFINED__ */ -/* interface __MIDL_itf_d3d12sdklayers_0000_0016 */ +/* interface __MIDL_itf_d3d12sdklayers_0000_0019 */ /* [local] */ #endif /* WINAPI_FAMILY_PARTITION(WINAPI_PARTITION_APP | WINAPI_PARTITION_GAMES) */ @@ -3787,20 +4086,23 @@ DEFINE_GUID(IID_ID3D12Debug2,0x93a665c4,0xa3b2,0x4e5d,0xb6,0x92,0xa2,0x6a,0xe1,0 DEFINE_GUID(IID_ID3D12Debug3,0x5cf4e58f,0xf671,0x4ff1,0xa5,0x42,0x36,0x86,0xe3,0xd1,0x53,0xd1); DEFINE_GUID(IID_ID3D12Debug4,0x014b816e,0x9ec5,0x4a2f,0xa8,0x45,0xff,0xbe,0x44,0x1c,0xe1,0x3a); DEFINE_GUID(IID_ID3D12Debug5,0x548d6b12,0x09fa,0x40e0,0x90,0x69,0x5d,0xcd,0x58,0x9a,0x52,0xc9); +DEFINE_GUID(IID_ID3D12Debug6,0x82a816d6,0x5d01,0x4157,0x97,0xd0,0x49,0x75,0x46,0x3f,0xd1,0xed); DEFINE_GUID(IID_ID3D12DebugDevice1,0xa9b71770,0xd099,0x4a65,0xa6,0x98,0x3d,0xee,0x10,0x02,0x0f,0x88); DEFINE_GUID(IID_ID3D12DebugDevice,0x3febd6dd,0x4973,0x4787,0x81,0x94,0xe4,0x5f,0x9e,0x28,0x92,0x3e); DEFINE_GUID(IID_ID3D12DebugDevice2,0x60eccbc1,0x378d,0x4df1,0x89,0x4c,0xf8,0xac,0x5c,0xe4,0xd7,0xdd); DEFINE_GUID(IID_ID3D12DebugCommandQueue,0x09e0bf36,0x54ac,0x484f,0x88,0x47,0x4b,0xae,0xea,0xb6,0x05,0x3a); +DEFINE_GUID(IID_ID3D12DebugCommandQueue1,0x16be35a2,0xbfd6,0x49f2,0xbc,0xae,0xea,0xae,0x4a,0xff,0x86,0x2d); DEFINE_GUID(IID_ID3D12DebugCommandList1,0x102ca951,0x311b,0x4b01,0xb1,0x1f,0xec,0xb8,0x3e,0x06,0x1b,0x37); DEFINE_GUID(IID_ID3D12DebugCommandList,0x09e0bf36,0x54ac,0x484f,0x88,0x47,0x4b,0xae,0xea,0xb6,0x05,0x3f); DEFINE_GUID(IID_ID3D12DebugCommandList2,0xaeb575cf,0x4e06,0x48be,0xba,0x3b,0xc4,0x50,0xfc,0x96,0x65,0x2e); +DEFINE_GUID(IID_ID3D12DebugCommandList3,0x197d5e15,0x4d37,0x4d34,0xaf,0x78,0x72,0x4c,0xd7,0x0f,0xdb,0x1f); DEFINE_GUID(IID_ID3D12SharingContract,0x0adf7d52,0x929c,0x4e61,0xad,0xdb,0xff,0xed,0x30,0xde,0x66,0xef); DEFINE_GUID(IID_ID3D12InfoQueue,0x0742a90b,0xc387,0x483f,0xb9,0x46,0x30,0xa7,0xe4,0xe6,0x14,0x58); DEFINE_GUID(IID_ID3D12InfoQueue1,0x2852dd88,0xb484,0x4c0c,0xb6,0xb1,0x67,0x16,0x85,0x00,0xe6,0x00); -extern RPC_IF_HANDLE __MIDL_itf_d3d12sdklayers_0000_0016_v0_0_c_ifspec; -extern RPC_IF_HANDLE __MIDL_itf_d3d12sdklayers_0000_0016_v0_0_s_ifspec; +extern RPC_IF_HANDLE __MIDL_itf_d3d12sdklayers_0000_0019_v0_0_c_ifspec; +extern RPC_IF_HANDLE __MIDL_itf_d3d12sdklayers_0000_0019_v0_0_s_ifspec; /* Additional Prototypes for ALL interfaces */ diff --git a/generation/WinSDK/RecompiledIdlHeaders/um/d3d12sdklayers.idl b/generation/WinSDK/RecompiledIdlHeaders/um/d3d12sdklayers.idl index 3557ce1c3..f4809beec 100644 --- a/generation/WinSDK/RecompiledIdlHeaders/um/d3d12sdklayers.idl +++ b/generation/WinSDK/RecompiledIdlHeaders/um/d3d12sdklayers.idl @@ -4,8 +4,8 @@ * Licensed under the MIT license * *-------------------------------------------------------------------------------------*/ -import "OAIdl.idl"; -import "OCIdl.idl"; +import "oaidl.idl"; +import "ocidl.idl"; import "d3d12.idl"; @@ -75,6 +75,13 @@ interface ID3D12Debug5 void SetEnableAutoName(BOOL Enable); } +[uuid(82a816d6-5d01-4157-97d0-4975463fd1ed), object, local, pointer_default(unique)] +interface ID3D12Debug6 + : ID3D12Debug5 +{ + void SetForceLegacyBarrierValidation(BOOL Enable); +} + cpp_quote("DEFINE_GUID(WKPDID_D3DAutoDebugObjectNameW, 0xd4902e36, 0x757a, 0x4942, 0x95, 0x94, 0xb6, 0x76, 0x9a, 0xfa, 0x43, 0xcd);") typedef enum D3D12_RLDO_FLAGS @@ -175,6 +182,14 @@ interface ID3D12DebugCommandQueue // TODO: Stale BOOL AssertResourceStateThroughView( [annotation("_In_")] ID3D12View* pView, UINT State ); }; +[ uuid( 16be35a2-bfd6-49f2-bcae-eaae4aff862d ), object, local, pointer_default( unique ) ] +interface ID3D12DebugCommandQueue1 + : ID3D12DebugCommandQueue +{ + void AssertResourceAccess([annotation("_In_")] ID3D12Resource* pResource, UINT Subresource, D3D12_BARRIER_ACCESS Access); + void AssertTextureLayout([annotation("_In_")] ID3D12Resource* pResource, UINT Subresource, D3D12_BARRIER_LAYOUT Layout); +}; + typedef enum D3D12_DEBUG_COMMAND_LIST_PARAMETER_TYPE { D3D12_DEBUG_COMMAND_LIST_PARAMETER_GPU_BASED_VALIDATION_SETTINGS, @@ -211,6 +226,14 @@ interface ID3D12DebugCommandList2 HRESULT GetDebugParameter(D3D12_DEBUG_COMMAND_LIST_PARAMETER_TYPE Type, [annotation("_Out_writes_bytes_(DataSize)")] void *pData, UINT DataSize); }; +[ uuid(197d5e15-4d37-4d34-af78-724cd70fdb1f), object, local, pointer_default( unique ) ] +interface ID3D12DebugCommandList3 + : ID3D12DebugCommandList2 +{ + void AssertResourceAccess([annotation("_In_")] ID3D12Resource* pResource, UINT Subresource, D3D12_BARRIER_ACCESS Access); + void AssertTextureLayout([annotation("_In_")] ID3D12Resource* pResource, UINT Subresource, D3D12_BARRIER_LAYOUT Layout); +}; + [uuid(0adf7d52-929c-4e61-addb-ffed30de66ef), object, local, pointer_default(unique)] interface ID3D12SharingContract : IUnknown @@ -1335,6 +1358,69 @@ typedef enum D3D12_MESSAGE_ID { D3D12_MESSAGE_ID_SETTING_SHADING_RATE_FROM_MS_REQUIRES_CAPABILITY = 1325, D3D12_MESSAGE_ID_SHADERCACHESESSION_SHADERCACHEDELETE_NOTSUPPORTED = 1326, D3D12_MESSAGE_ID_SHADERCACHECONTROL_SHADERCACHECLEAR_NOTSUPPORTED = 1327, + D3D12_MESSAGE_ID_CREATERESOURCE_STATE_IGNORED = 1328, + D3D12_MESSAGE_ID_UNUSED_CROSS_EXECUTE_SPLIT_BARRIER = 1329, + D3D12_MESSAGE_ID_DEVICE_OPEN_SHARED_HANDLE_ACCESS_DENIED = 1330, + + D3D12_MESSAGE_ID_INCOMPATIBLE_BARRIER_VALUES = 1331, + D3D12_MESSAGE_ID_INCOMPATIBLE_BARRIER_ACCESS = 1332, + D3D12_MESSAGE_ID_INCOMPATIBLE_BARRIER_SYNC = 1333, + D3D12_MESSAGE_ID_INCOMPATIBLE_BARRIER_LAYOUT = 1334, + D3D12_MESSAGE_ID_INCOMPATIBLE_BARRIER_TYPE = 1335, + D3D12_MESSAGE_ID_OUT_OF_BOUNDS_BARRIER_SUBRESOURCE_RANGE = 1336, + D3D12_MESSAGE_ID_INCOMPATIBLE_BARRIER_RESOURCE_DIMENSION = 1337, + + D3D12_MESSAGE_ID_SET_SCISSOR_RECTS_INVALID_RECT = 1338, + + D3D12_MESSAGE_ID_SHADING_RATE_SOURCE_REQUIRES_DIMENSION_TEXTURE2D = 1339, + + D3D12_MESSAGE_ID_BUFFER_BARRIER_SUBREGION_OUT_OF_BOUNDS = 1340, + + D3D12_MESSAGE_ID_UNSUPPORTED_BARRIER_LAYOUT = 1341, + + D3D12_MESSAGE_ID_CREATERESOURCEANDHEAP_INVALID_PARAMETERS = 1342, + + D3D12_MESSAGE_ID_ENHANCED_BARRIERS_NOT_SUPPORTED = 1343, + + D3D12_MESSAGE_ID_LEGACY_BARRIER_VALIDATION_FORCED_ON = 1346, + + D3D12_MESSAGE_ID_EMPTY_ROOT_DESCRIPTOR_TABLE = 1347, + + D3D12_MESSAGE_ID_COMMAND_LIST_DRAW_ELEMENT_OFFSET_UNALIGNED = 1348, + + D3D12_MESSAGE_ID_ALPHA_BLEND_FACTOR_NOT_SUPPORTED = 1349, + + D3D12_MESSAGE_ID_BARRIER_INTEROP_INVALID_LAYOUT = 1350, + D3D12_MESSAGE_ID_BARRIER_INTEROP_INVALID_STATE = 1351, + + D3D12_MESSAGE_ID_GRAPHICS_PIPELINE_STATE_DESC_ZERO_SAMPLE_MASK = 1352, + + D3D12_MESSAGE_ID_INDEPENDENT_STENCIL_REF_NOT_SUPPORTED = 1353, + D3D12_MESSAGE_ID_CREATEDEPTHSTENCILSTATE_INDEPENDENT_MASKS_UNSUPPORTED = 1354, + + D3D12_MESSAGE_ID_TEXTURE_BARRIER_SUBRESOURCES_OUT_OF_BOUNDS = 1355, + + D3D12_MESSAGE_ID_NON_OPTIMAL_BARRIER_ONLY_EXECUTE_COMMAND_LISTS = 1356, + + D3D12_MESSAGE_ID_EXECUTE_INDIRECT_ZERO_COMMAND_COUNT = 1357, + + D3D12_MESSAGE_ID_GPU_BASED_VALIDATION_INCOMPATIBLE_TEXTURE_LAYOUT = 1358, + + D3D12_MESSAGE_ID_DYNAMIC_INDEX_BUFFER_STRIP_CUT_NOT_SUPPORTED = 1359, + D3D12_MESSAGE_ID_PRIMITIVE_TOPOLOGY_TRIANGLE_FANS_NOT_SUPPORTED = 1360, + + D3D12_MESSAGE_ID_CREATE_SAMPLER_COMPARISON_FUNC_IGNORED = 1361, + + D3D12_MESSAGE_ID_CREATEHEAP_INVALIDHEAPTYPE = 1362, + D3D12_MESSAGE_ID_CREATERESOURCEANDHEAP_INVALIDHEAPTYPE = 1363, + D3D12_MESSAGE_ID_DYNAMIC_DEPTH_BIAS_NOT_SUPPORTED = 1364, + D3D12_MESSAGE_ID_CREATERASTERIZERSTATE_NON_WHOLE_DYNAMIC_DEPTH_BIAS = 1365, + + D3D12_MESSAGE_ID_DYNAMIC_DEPTH_BIAS_FLAG_MISSING = 1366, + D3D12_MESSAGE_ID_DYNAMIC_DEPTH_BIAS_NO_PIPELINE = 1367, + D3D12_MESSAGE_ID_DYNAMIC_INDEX_BUFFER_STRIP_CUT_FLAG_MISSING = 1368, + D3D12_MESSAGE_ID_DYNAMIC_INDEX_BUFFER_STRIP_CUT_NO_PIPELINE = 1369, + D3D12_MESSAGE_ID_INVALID_CAST_TARGET = 1371, D3D12_MESSAGE_ID_D3D12_MESSAGES_END } D3D12_MESSAGE_ID; @@ -1667,13 +1753,16 @@ cpp_quote( "DEFINE_GUID(IID_ID3D12Debug2,0x93a665c4,0xa3b2,0x4e5d,0xb6,0x92,0xa2 cpp_quote( "DEFINE_GUID(IID_ID3D12Debug3,0x5cf4e58f,0xf671,0x4ff1,0xa5,0x42,0x36,0x86,0xe3,0xd1,0x53,0xd1);" ) cpp_quote( "DEFINE_GUID(IID_ID3D12Debug4,0x014b816e,0x9ec5,0x4a2f,0xa8,0x45,0xff,0xbe,0x44,0x1c,0xe1,0x3a);" ) cpp_quote( "DEFINE_GUID(IID_ID3D12Debug5,0x548d6b12,0x09fa,0x40e0,0x90,0x69,0x5d,0xcd,0x58,0x9a,0x52,0xc9);" ) +cpp_quote( "DEFINE_GUID(IID_ID3D12Debug6,0x82a816d6,0x5d01,0x4157,0x97,0xd0,0x49,0x75,0x46,0x3f,0xd1,0xed);" ) cpp_quote( "DEFINE_GUID(IID_ID3D12DebugDevice1,0xa9b71770,0xd099,0x4a65,0xa6,0x98,0x3d,0xee,0x10,0x02,0x0f,0x88);" ) cpp_quote( "DEFINE_GUID(IID_ID3D12DebugDevice,0x3febd6dd,0x4973,0x4787,0x81,0x94,0xe4,0x5f,0x9e,0x28,0x92,0x3e);" ) cpp_quote( "DEFINE_GUID(IID_ID3D12DebugDevice2,0x60eccbc1,0x378d,0x4df1,0x89,0x4c,0xf8,0xac,0x5c,0xe4,0xd7,0xdd);" ) cpp_quote( "DEFINE_GUID(IID_ID3D12DebugCommandQueue,0x09e0bf36,0x54ac,0x484f,0x88,0x47,0x4b,0xae,0xea,0xb6,0x05,0x3a);" ) +cpp_quote( "DEFINE_GUID(IID_ID3D12DebugCommandQueue1,0x16be35a2,0xbfd6,0x49f2,0xbc,0xae,0xea,0xae,0x4a,0xff,0x86,0x2d);" ) cpp_quote( "DEFINE_GUID(IID_ID3D12DebugCommandList1,0x102ca951,0x311b,0x4b01,0xb1,0x1f,0xec,0xb8,0x3e,0x06,0x1b,0x37);" ) cpp_quote( "DEFINE_GUID(IID_ID3D12DebugCommandList,0x09e0bf36,0x54ac,0x484f,0x88,0x47,0x4b,0xae,0xea,0xb6,0x05,0x3f);" ) cpp_quote( "DEFINE_GUID(IID_ID3D12DebugCommandList2,0xaeb575cf,0x4e06,0x48be,0xba,0x3b,0xc4,0x50,0xfc,0x96,0x65,0x2e);" ) +cpp_quote( "DEFINE_GUID(IID_ID3D12DebugCommandList3,0x197d5e15,0x4d37,0x4d34,0xaf,0x78,0x72,0x4c,0xd7,0x0f,0xdb,0x1f);" ) cpp_quote( "DEFINE_GUID(IID_ID3D12SharingContract,0x0adf7d52,0x929c,0x4e61,0xad,0xdb,0xff,0xed,0x30,0xde,0x66,0xef);" ) cpp_quote( "DEFINE_GUID(IID_ID3D12InfoQueue,0x0742a90b,0xc387,0x483f,0xb9,0x46,0x30,0xa7,0xe4,0xe6,0x14,0x58);" ) cpp_quote( "DEFINE_GUID(IID_ID3D12InfoQueue1,0x2852dd88,0xb484,0x4c0c,0xb6,0xb1,0x67,0x16,0x85,0x00,0xe6,0x00);" ) diff --git a/generation/WinSDK/RecompiledIdlHeaders/um/d3d12shader.h b/generation/WinSDK/RecompiledIdlHeaders/um/d3d12shader.h index 4ff639bb2..0acf584e3 100644 --- a/generation/WinSDK/RecompiledIdlHeaders/um/d3d12shader.h +++ b/generation/WinSDK/RecompiledIdlHeaders/um/d3d12shader.h @@ -15,16 +15,29 @@ typedef enum D3D12_SHADER_VERSION_TYPE { - D3D12_SHVER_PIXEL_SHADER = 0, - D3D12_SHVER_VERTEX_SHADER = 1, - D3D12_SHVER_GEOMETRY_SHADER = 2, + D3D12_SHVER_PIXEL_SHADER = 0, + D3D12_SHVER_VERTEX_SHADER = 1, + D3D12_SHVER_GEOMETRY_SHADER = 2, // D3D11 Shaders - D3D12_SHVER_HULL_SHADER = 3, - D3D12_SHVER_DOMAIN_SHADER = 4, - D3D12_SHVER_COMPUTE_SHADER = 5, + D3D12_SHVER_HULL_SHADER = 3, + D3D12_SHVER_DOMAIN_SHADER = 4, + D3D12_SHVER_COMPUTE_SHADER = 5, - D3D12_SHVER_RESERVED0 = 0xFFF0, + // D3D12 Shaders + D3D12_SHVER_LIBRARY = 6, + + D3D12_SHVER_RAY_GENERATION_SHADER = 7, + D3D12_SHVER_INTERSECTION_SHADER = 8, + D3D12_SHVER_ANY_HIT_SHADER = 9, + D3D12_SHVER_CLOSEST_HIT_SHADER = 10, + D3D12_SHVER_MISS_SHADER = 11, + D3D12_SHVER_CALLABLE_SHADER = 12, + + D3D12_SHVER_MESH_SHADER = 13, + D3D12_SHVER_AMPLIFICATION_SHADER = 14, + + D3D12_SHVER_RESERVED0 = 0xFFF0, } D3D12_SHADER_VERSION_TYPE; #define D3D12_SHVER_GET_TYPE(_Version) \ @@ -188,6 +201,9 @@ typedef struct _D3D12_SHADER_INPUT_BIND_DESC #define D3D_SHADER_REQUIRES_SAMPLER_DESCRIPTOR_HEAP_INDEXING 0x04000000 #define D3D_SHADER_REQUIRES_WAVE_MMA 0x08000000 #define D3D_SHADER_REQUIRES_ATOMIC_INT64_ON_DESCRIPTOR_HEAP_RESOURCE 0x10000000 +#define D3D_SHADER_FEATURE_ADVANCED_TEXTURE_OPS 0x20000000 +#define D3D_SHADER_FEATURE_WRITEABLE_MSAA_TEXTURES 0x40000000 + typedef struct _D3D12_LIBRARY_DESC { diff --git a/generation/WinSDK/RecompiledIdlHeaders/um/d3d12video.h b/generation/WinSDK/RecompiledIdlHeaders/um/d3d12video.h index 744c1eced..add372e38 100644 --- a/generation/WinSDK/RecompiledIdlHeaders/um/d3d12video.h +++ b/generation/WinSDK/RecompiledIdlHeaders/um/d3d12video.h @@ -1,10 +1,15 @@ +/*------------------------------------------------------------------------------------- + * + * Copyright (c) Microsoft Corporation + * Licensed under the MIT license + * + *-------------------------------------------------------------------------------------*/ /* this ALWAYS GENERATED file contains the definitions for the interfaces */ - /* File created by MIDL compiler version 8.01.0626 */ -/* @@MIDL_FILE_HEADING( ) */ + /* File created by MIDL compiler version 8.01.0628 */ @@ -38,7 +43,7 @@ #endif #ifndef DECLSPEC_XFGVIRT -#if _CONTROL_FLOW_GUARD_XFG +#if defined(_CONTROL_FLOW_GUARD_XFG) #define DECLSPEC_XFGVIRT(base, func) __declspec(xfg_virtual(base, func)) #else #define DECLSPEC_XFGVIRT(base, func) @@ -173,6 +178,13 @@ typedef interface ID3D12VideoDecodeCommandList2 ID3D12VideoDecodeCommandList2; #endif /* __ID3D12VideoDecodeCommandList2_FWD_DEFINED__ */ +#ifndef __ID3D12VideoDecodeCommandList3_FWD_DEFINED__ +#define __ID3D12VideoDecodeCommandList3_FWD_DEFINED__ +typedef interface ID3D12VideoDecodeCommandList3 ID3D12VideoDecodeCommandList3; + +#endif /* __ID3D12VideoDecodeCommandList3_FWD_DEFINED__ */ + + #ifndef __ID3D12VideoProcessCommandList2_FWD_DEFINED__ #define __ID3D12VideoProcessCommandList2_FWD_DEFINED__ typedef interface ID3D12VideoProcessCommandList2 ID3D12VideoProcessCommandList2; @@ -180,6 +192,13 @@ typedef interface ID3D12VideoProcessCommandList2 ID3D12VideoProcessCommandList2; #endif /* __ID3D12VideoProcessCommandList2_FWD_DEFINED__ */ +#ifndef __ID3D12VideoProcessCommandList3_FWD_DEFINED__ +#define __ID3D12VideoProcessCommandList3_FWD_DEFINED__ +typedef interface ID3D12VideoProcessCommandList3 ID3D12VideoProcessCommandList3; + +#endif /* __ID3D12VideoProcessCommandList3_FWD_DEFINED__ */ + + #ifndef __ID3D12VideoEncodeCommandList1_FWD_DEFINED__ #define __ID3D12VideoEncodeCommandList1_FWD_DEFINED__ typedef interface ID3D12VideoEncodeCommandList1 ID3D12VideoEncodeCommandList1; @@ -215,9 +234,16 @@ typedef interface ID3D12VideoEncodeCommandList2 ID3D12VideoEncodeCommandList2; #endif /* __ID3D12VideoEncodeCommandList2_FWD_DEFINED__ */ +#ifndef __ID3D12VideoEncodeCommandList3_FWD_DEFINED__ +#define __ID3D12VideoEncodeCommandList3_FWD_DEFINED__ +typedef interface ID3D12VideoEncodeCommandList3 ID3D12VideoEncodeCommandList3; + +#endif /* __ID3D12VideoEncodeCommandList3_FWD_DEFINED__ */ + + /* header files for imported files */ -#include "OAIdl.h" -#include "OCIdl.h" +#include "oaidl.h" +#include "ocidl.h" #include "dxgicommon.h" #include "d3d12.h" @@ -299,7 +325,20 @@ enum D3D12_FEATURE_VIDEO D3D12_FEATURE_VIDEO_PROCESS_PROTECTED_RESOURCES = 29, D3D12_FEATURE_VIDEO_MOTION_ESTIMATOR_PROTECTED_RESOURCES = 30, D3D12_FEATURE_VIDEO_DECODER_HEAP_SIZE1 = 31, - D3D12_FEATURE_VIDEO_PROCESSOR_SIZE1 = 32 + D3D12_FEATURE_VIDEO_PROCESSOR_SIZE1 = 32, + D3D12_FEATURE_VIDEO_ENCODER_CODEC = 33, + D3D12_FEATURE_VIDEO_ENCODER_PROFILE_LEVEL = 34, + D3D12_FEATURE_VIDEO_ENCODER_OUTPUT_RESOLUTION_RATIOS_COUNT = 35, + D3D12_FEATURE_VIDEO_ENCODER_OUTPUT_RESOLUTION = 36, + D3D12_FEATURE_VIDEO_ENCODER_INPUT_FORMAT = 37, + D3D12_FEATURE_VIDEO_ENCODER_RATE_CONTROL_MODE = 38, + D3D12_FEATURE_VIDEO_ENCODER_INTRA_REFRESH_MODE = 39, + D3D12_FEATURE_VIDEO_ENCODER_FRAME_SUBREGION_LAYOUT_MODE = 40, + D3D12_FEATURE_VIDEO_ENCODER_HEAP_SIZE = 41, + D3D12_FEATURE_VIDEO_ENCODER_CODEC_CONFIGURATION_SUPPORT = 42, + D3D12_FEATURE_VIDEO_ENCODER_SUPPORT = 43, + D3D12_FEATURE_VIDEO_ENCODER_CODEC_PICTURE_CONTROL_SUPPORT = 44, + D3D12_FEATURE_VIDEO_ENCODER_RESOURCE_REQUIREMENTS = 45 } D3D12_FEATURE_VIDEO; typedef @@ -452,7 +491,12 @@ EXTERN_C const IID IID_ID3D12VideoDecoderHeap; ID3D12VideoDecoderHeap : public ID3D12Pageable { public: +#if defined(_MSC_VER) || !defined(_WIN32) virtual D3D12_VIDEO_DECODER_HEAP_DESC STDMETHODCALLTYPE GetDesc( void) = 0; +#else + virtual D3D12_VIDEO_DECODER_HEAP_DESC *STDMETHODCALLTYPE GetDesc( + D3D12_VIDEO_DECODER_HEAP_DESC * RetVal) = 0; +#endif }; @@ -466,9 +510,7 @@ EXTERN_C const IID IID_ID3D12VideoDecoderHeap; DECLSPEC_XFGVIRT(IUnknown, QueryInterface) HRESULT ( STDMETHODCALLTYPE *QueryInterface )( ID3D12VideoDecoderHeap * This, - /* [annotation][in] */ - _In_ REFIID riid, - /* [annotation][iid_is][out] */ + REFIID riid, _COM_Outptr_ void **ppvObject); DECLSPEC_XFGVIRT(IUnknown, AddRef) @@ -482,49 +524,46 @@ EXTERN_C const IID IID_ID3D12VideoDecoderHeap; DECLSPEC_XFGVIRT(ID3D12Object, GetPrivateData) HRESULT ( STDMETHODCALLTYPE *GetPrivateData )( ID3D12VideoDecoderHeap * This, - /* [annotation] */ _In_ REFGUID guid, - /* [annotation] */ _Inout_ UINT *pDataSize, - /* [annotation] */ _Out_writes_bytes_opt_( *pDataSize ) void *pData); DECLSPEC_XFGVIRT(ID3D12Object, SetPrivateData) HRESULT ( STDMETHODCALLTYPE *SetPrivateData )( ID3D12VideoDecoderHeap * This, - /* [annotation] */ _In_ REFGUID guid, - /* [annotation] */ _In_ UINT DataSize, - /* [annotation] */ _In_reads_bytes_opt_( DataSize ) const void *pData); DECLSPEC_XFGVIRT(ID3D12Object, SetPrivateDataInterface) HRESULT ( STDMETHODCALLTYPE *SetPrivateDataInterface )( ID3D12VideoDecoderHeap * This, - /* [annotation] */ _In_ REFGUID guid, - /* [annotation] */ _In_opt_ const IUnknown *pData); DECLSPEC_XFGVIRT(ID3D12Object, SetName) HRESULT ( STDMETHODCALLTYPE *SetName )( ID3D12VideoDecoderHeap * This, - /* [annotation] */ _In_z_ LPCWSTR Name); DECLSPEC_XFGVIRT(ID3D12DeviceChild, GetDevice) HRESULT ( STDMETHODCALLTYPE *GetDevice )( ID3D12VideoDecoderHeap * This, - /* [annotation][in] */ - _In_ REFIID riid, - /* [annotation][iid_is][out] */ + REFIID riid, _COM_Outptr_opt_ void **ppvDevice); DECLSPEC_XFGVIRT(ID3D12VideoDecoderHeap, GetDesc) +#if !defined(_WIN32) D3D12_VIDEO_DECODER_HEAP_DESC ( STDMETHODCALLTYPE *GetDesc )( ID3D12VideoDecoderHeap * This); +#else + D3D12_VIDEO_DECODER_HEAP_DESC *( STDMETHODCALLTYPE *GetDesc )( + ID3D12VideoDecoderHeap * This, + D3D12_VIDEO_DECODER_HEAP_DESC * RetVal); + +#endif + END_INTERFACE } ID3D12VideoDecoderHeapVtbl; @@ -565,9 +604,14 @@ EXTERN_C const IID IID_ID3D12VideoDecoderHeap; ( (This)->lpVtbl -> GetDevice(This,riid,ppvDevice) ) +#if !defined(_WIN32) #define ID3D12VideoDecoderHeap_GetDesc(This) \ ( (This)->lpVtbl -> GetDesc(This) ) +#else +#define ID3D12VideoDecoderHeap_GetDesc(This,RetVal) \ + ( (This)->lpVtbl -> GetDesc(This,RetVal) ) +#endif #endif /* COBJMACROS */ @@ -576,17 +620,6 @@ EXTERN_C const IID IID_ID3D12VideoDecoderHeap; -D3D12_VIDEO_DECODER_HEAP_DESC STDMETHODCALLTYPE ID3D12VideoDecoderHeap_GetDesc_Proxy( - ID3D12VideoDecoderHeap * This); - - -void __RPC_STUB ID3D12VideoDecoderHeap_GetDesc_Stub( - IRpcStubBuffer *This, - IRpcChannelBuffer *_pRpcChannelBuffer, - PRPC_MESSAGE _pRpcMessage, - DWORD *_pdwStubPhase); - - #endif /* __ID3D12VideoDecoderHeap_INTERFACE_DEFINED__ */ @@ -608,36 +641,25 @@ EXTERN_C const IID IID_ID3D12VideoDevice; public: virtual HRESULT STDMETHODCALLTYPE CheckFeatureSupport( D3D12_FEATURE_VIDEO FeatureVideo, - /* [annotation] */ _Inout_updates_bytes_(FeatureSupportDataSize) void *pFeatureSupportData, UINT FeatureSupportDataSize) = 0; virtual HRESULT STDMETHODCALLTYPE CreateVideoDecoder( - /* [annotation] */ _In_ const D3D12_VIDEO_DECODER_DESC *pDesc, - /* [annotation] */ _In_ REFIID riid, - /* [annotation][iid_is][out] */ _COM_Outptr_ void **ppVideoDecoder) = 0; virtual HRESULT STDMETHODCALLTYPE CreateVideoDecoderHeap( - /* [annotation] */ _In_ const D3D12_VIDEO_DECODER_HEAP_DESC *pVideoDecoderHeapDesc, - /* [annotation] */ _In_ REFIID riid, - /* [annotation][iid_is][out] */ _COM_Outptr_ void **ppVideoDecoderHeap) = 0; virtual HRESULT STDMETHODCALLTYPE CreateVideoProcessor( UINT NodeMask, - /* [annotation] */ _In_ const D3D12_VIDEO_PROCESS_OUTPUT_STREAM_DESC *pOutputStreamDesc, UINT NumInputStreamDescs, - /* [annotation] */ _In_reads_(NumInputStreamDescs) const D3D12_VIDEO_PROCESS_INPUT_STREAM_DESC *pInputStreamDescs, - /* [annotation] */ _In_ REFIID riid, - /* [annotation][iid_is][out] */ _COM_Outptr_ void **ppVideoProcessor) = 0; }; @@ -652,9 +674,7 @@ EXTERN_C const IID IID_ID3D12VideoDevice; DECLSPEC_XFGVIRT(IUnknown, QueryInterface) HRESULT ( STDMETHODCALLTYPE *QueryInterface )( ID3D12VideoDevice * This, - /* [annotation][in] */ - _In_ REFIID riid, - /* [annotation][iid_is][out] */ + REFIID riid, _COM_Outptr_ void **ppvObject); DECLSPEC_XFGVIRT(IUnknown, AddRef) @@ -669,42 +689,31 @@ EXTERN_C const IID IID_ID3D12VideoDevice; HRESULT ( STDMETHODCALLTYPE *CheckFeatureSupport )( ID3D12VideoDevice * This, D3D12_FEATURE_VIDEO FeatureVideo, - /* [annotation] */ _Inout_updates_bytes_(FeatureSupportDataSize) void *pFeatureSupportData, UINT FeatureSupportDataSize); DECLSPEC_XFGVIRT(ID3D12VideoDevice, CreateVideoDecoder) HRESULT ( STDMETHODCALLTYPE *CreateVideoDecoder )( ID3D12VideoDevice * This, - /* [annotation] */ _In_ const D3D12_VIDEO_DECODER_DESC *pDesc, - /* [annotation] */ _In_ REFIID riid, - /* [annotation][iid_is][out] */ _COM_Outptr_ void **ppVideoDecoder); DECLSPEC_XFGVIRT(ID3D12VideoDevice, CreateVideoDecoderHeap) HRESULT ( STDMETHODCALLTYPE *CreateVideoDecoderHeap )( ID3D12VideoDevice * This, - /* [annotation] */ _In_ const D3D12_VIDEO_DECODER_HEAP_DESC *pVideoDecoderHeapDesc, - /* [annotation] */ _In_ REFIID riid, - /* [annotation][iid_is][out] */ _COM_Outptr_ void **ppVideoDecoderHeap); DECLSPEC_XFGVIRT(ID3D12VideoDevice, CreateVideoProcessor) HRESULT ( STDMETHODCALLTYPE *CreateVideoProcessor )( ID3D12VideoDevice * This, UINT NodeMask, - /* [annotation] */ _In_ const D3D12_VIDEO_PROCESS_OUTPUT_STREAM_DESC *pOutputStreamDesc, UINT NumInputStreamDescs, - /* [annotation] */ _In_reads_(NumInputStreamDescs) const D3D12_VIDEO_PROCESS_INPUT_STREAM_DESC *pInputStreamDescs, - /* [annotation] */ _In_ REFIID riid, - /* [annotation][iid_is][out] */ _COM_Outptr_ void **ppVideoProcessor); END_INTERFACE @@ -768,7 +777,12 @@ EXTERN_C const IID IID_ID3D12VideoDecoder; ID3D12VideoDecoder : public ID3D12Pageable { public: +#if defined(_MSC_VER) || !defined(_WIN32) virtual D3D12_VIDEO_DECODER_DESC STDMETHODCALLTYPE GetDesc( void) = 0; +#else + virtual D3D12_VIDEO_DECODER_DESC *STDMETHODCALLTYPE GetDesc( + D3D12_VIDEO_DECODER_DESC * RetVal) = 0; +#endif }; @@ -782,9 +796,7 @@ EXTERN_C const IID IID_ID3D12VideoDecoder; DECLSPEC_XFGVIRT(IUnknown, QueryInterface) HRESULT ( STDMETHODCALLTYPE *QueryInterface )( ID3D12VideoDecoder * This, - /* [annotation][in] */ - _In_ REFIID riid, - /* [annotation][iid_is][out] */ + REFIID riid, _COM_Outptr_ void **ppvObject); DECLSPEC_XFGVIRT(IUnknown, AddRef) @@ -798,49 +810,46 @@ EXTERN_C const IID IID_ID3D12VideoDecoder; DECLSPEC_XFGVIRT(ID3D12Object, GetPrivateData) HRESULT ( STDMETHODCALLTYPE *GetPrivateData )( ID3D12VideoDecoder * This, - /* [annotation] */ _In_ REFGUID guid, - /* [annotation] */ _Inout_ UINT *pDataSize, - /* [annotation] */ _Out_writes_bytes_opt_( *pDataSize ) void *pData); DECLSPEC_XFGVIRT(ID3D12Object, SetPrivateData) HRESULT ( STDMETHODCALLTYPE *SetPrivateData )( ID3D12VideoDecoder * This, - /* [annotation] */ _In_ REFGUID guid, - /* [annotation] */ _In_ UINT DataSize, - /* [annotation] */ _In_reads_bytes_opt_( DataSize ) const void *pData); DECLSPEC_XFGVIRT(ID3D12Object, SetPrivateDataInterface) HRESULT ( STDMETHODCALLTYPE *SetPrivateDataInterface )( ID3D12VideoDecoder * This, - /* [annotation] */ _In_ REFGUID guid, - /* [annotation] */ _In_opt_ const IUnknown *pData); DECLSPEC_XFGVIRT(ID3D12Object, SetName) HRESULT ( STDMETHODCALLTYPE *SetName )( ID3D12VideoDecoder * This, - /* [annotation] */ _In_z_ LPCWSTR Name); DECLSPEC_XFGVIRT(ID3D12DeviceChild, GetDevice) HRESULT ( STDMETHODCALLTYPE *GetDevice )( ID3D12VideoDecoder * This, - /* [annotation][in] */ - _In_ REFIID riid, - /* [annotation][iid_is][out] */ + REFIID riid, _COM_Outptr_opt_ void **ppvDevice); DECLSPEC_XFGVIRT(ID3D12VideoDecoder, GetDesc) +#if !defined(_WIN32) D3D12_VIDEO_DECODER_DESC ( STDMETHODCALLTYPE *GetDesc )( ID3D12VideoDecoder * This); +#else + D3D12_VIDEO_DECODER_DESC *( STDMETHODCALLTYPE *GetDesc )( + ID3D12VideoDecoder * This, + D3D12_VIDEO_DECODER_DESC * RetVal); + +#endif + END_INTERFACE } ID3D12VideoDecoderVtbl; @@ -881,9 +890,14 @@ EXTERN_C const IID IID_ID3D12VideoDecoder; ( (This)->lpVtbl -> GetDevice(This,riid,ppvDevice) ) +#if !defined(_WIN32) #define ID3D12VideoDecoder_GetDesc(This) \ ( (This)->lpVtbl -> GetDesc(This) ) +#else +#define ID3D12VideoDecoder_GetDesc(This,RetVal) \ + ( (This)->lpVtbl -> GetDesc(This,RetVal) ) +#endif #endif /* COBJMACROS */ @@ -892,17 +906,6 @@ EXTERN_C const IID IID_ID3D12VideoDecoder; -D3D12_VIDEO_DECODER_DESC STDMETHODCALLTYPE ID3D12VideoDecoder_GetDesc_Proxy( - ID3D12VideoDecoder * This); - - -void __RPC_STUB ID3D12VideoDecoder_GetDesc_Stub( - IRpcStubBuffer *This, - IRpcChannelBuffer *_pRpcChannelBuffer, - PRPC_MESSAGE _pRpcMessage, - DWORD *_pdwStubPhase); - - #endif /* __ID3D12VideoDecoder_INTERFACE_DEFINED__ */ @@ -981,7 +984,6 @@ typedef struct D3D12_FEATURE_DATA_VIDEO_DECODE_PROFILES { UINT NodeIndex; UINT ProfileCount; - /* [annotation] */ _Field_size_full_(ProfileCount) GUID *pProfiles; } D3D12_FEATURE_DATA_VIDEO_DECODE_PROFILES; @@ -997,7 +999,6 @@ typedef struct D3D12_FEATURE_DATA_VIDEO_DECODE_FORMATS UINT NodeIndex; D3D12_VIDEO_DECODE_CONFIGURATION Configuration; UINT FormatCount; - /* [annotation] */ _Field_size_full_(FormatCount) DXGI_FORMAT *pOutputFormats; } D3D12_FEATURE_DATA_VIDEO_DECODE_FORMATS; @@ -1108,18 +1109,14 @@ typedef struct D3D12_VIDEO_DECODE_FRAME_ARGUMENT { D3D12_VIDEO_DECODE_ARGUMENT_TYPE Type; UINT Size; - /* [annotation] */ _Field_size_bytes_full_(Size) void *pData; } D3D12_VIDEO_DECODE_FRAME_ARGUMENT; typedef struct D3D12_VIDEO_DECODE_REFERENCE_FRAMES { UINT NumTexture2Ds; - /* [annotation] */ _Field_size_full_(NumTexture2Ds) ID3D12Resource **ppTexture2Ds; - /* [annotation] */ _Field_size_full_(NumTexture2Ds) UINT *pSubresources; - /* [annotation] */ _Field_size_full_opt_(NumTexture2Ds) ID3D12VideoDecoderHeap **ppHeaps; } D3D12_VIDEO_DECODE_REFERENCE_FRAMES; @@ -1181,10 +1178,14 @@ EXTERN_C const IID IID_ID3D12VideoProcessor; virtual HRESULT STDMETHODCALLTYPE GetInputStreamDescs( UINT NumInputStreamDescs, - /* [annotation] */ _Out_writes_(NumInputStreamDescs) D3D12_VIDEO_PROCESS_INPUT_STREAM_DESC *pInputStreamDescs) = 0; +#if defined(_MSC_VER) || !defined(_WIN32) virtual D3D12_VIDEO_PROCESS_OUTPUT_STREAM_DESC STDMETHODCALLTYPE GetOutputStreamDesc( void) = 0; +#else + virtual D3D12_VIDEO_PROCESS_OUTPUT_STREAM_DESC *STDMETHODCALLTYPE GetOutputStreamDesc( + D3D12_VIDEO_PROCESS_OUTPUT_STREAM_DESC * RetVal) = 0; +#endif }; @@ -1198,9 +1199,7 @@ EXTERN_C const IID IID_ID3D12VideoProcessor; DECLSPEC_XFGVIRT(IUnknown, QueryInterface) HRESULT ( STDMETHODCALLTYPE *QueryInterface )( ID3D12VideoProcessor * This, - /* [annotation][in] */ - _In_ REFIID riid, - /* [annotation][iid_is][out] */ + REFIID riid, _COM_Outptr_ void **ppvObject); DECLSPEC_XFGVIRT(IUnknown, AddRef) @@ -1214,43 +1213,32 @@ EXTERN_C const IID IID_ID3D12VideoProcessor; DECLSPEC_XFGVIRT(ID3D12Object, GetPrivateData) HRESULT ( STDMETHODCALLTYPE *GetPrivateData )( ID3D12VideoProcessor * This, - /* [annotation] */ _In_ REFGUID guid, - /* [annotation] */ _Inout_ UINT *pDataSize, - /* [annotation] */ _Out_writes_bytes_opt_( *pDataSize ) void *pData); DECLSPEC_XFGVIRT(ID3D12Object, SetPrivateData) HRESULT ( STDMETHODCALLTYPE *SetPrivateData )( ID3D12VideoProcessor * This, - /* [annotation] */ _In_ REFGUID guid, - /* [annotation] */ _In_ UINT DataSize, - /* [annotation] */ _In_reads_bytes_opt_( DataSize ) const void *pData); DECLSPEC_XFGVIRT(ID3D12Object, SetPrivateDataInterface) HRESULT ( STDMETHODCALLTYPE *SetPrivateDataInterface )( ID3D12VideoProcessor * This, - /* [annotation] */ _In_ REFGUID guid, - /* [annotation] */ _In_opt_ const IUnknown *pData); DECLSPEC_XFGVIRT(ID3D12Object, SetName) HRESULT ( STDMETHODCALLTYPE *SetName )( ID3D12VideoProcessor * This, - /* [annotation] */ _In_z_ LPCWSTR Name); DECLSPEC_XFGVIRT(ID3D12DeviceChild, GetDevice) HRESULT ( STDMETHODCALLTYPE *GetDevice )( ID3D12VideoProcessor * This, - /* [annotation][in] */ - _In_ REFIID riid, - /* [annotation][iid_is][out] */ + REFIID riid, _COM_Outptr_opt_ void **ppvDevice); DECLSPEC_XFGVIRT(ID3D12VideoProcessor, GetNodeMask) @@ -1265,13 +1253,20 @@ EXTERN_C const IID IID_ID3D12VideoProcessor; HRESULT ( STDMETHODCALLTYPE *GetInputStreamDescs )( ID3D12VideoProcessor * This, UINT NumInputStreamDescs, - /* [annotation] */ _Out_writes_(NumInputStreamDescs) D3D12_VIDEO_PROCESS_INPUT_STREAM_DESC *pInputStreamDescs); DECLSPEC_XFGVIRT(ID3D12VideoProcessor, GetOutputStreamDesc) +#if !defined(_WIN32) D3D12_VIDEO_PROCESS_OUTPUT_STREAM_DESC ( STDMETHODCALLTYPE *GetOutputStreamDesc )( ID3D12VideoProcessor * This); +#else + D3D12_VIDEO_PROCESS_OUTPUT_STREAM_DESC *( STDMETHODCALLTYPE *GetOutputStreamDesc )( + ID3D12VideoProcessor * This, + D3D12_VIDEO_PROCESS_OUTPUT_STREAM_DESC * RetVal); + +#endif + END_INTERFACE } ID3D12VideoProcessorVtbl; @@ -1321,9 +1316,14 @@ EXTERN_C const IID IID_ID3D12VideoProcessor; #define ID3D12VideoProcessor_GetInputStreamDescs(This,NumInputStreamDescs,pInputStreamDescs) \ ( (This)->lpVtbl -> GetInputStreamDescs(This,NumInputStreamDescs,pInputStreamDescs) ) +#if !defined(_WIN32) #define ID3D12VideoProcessor_GetOutputStreamDesc(This) \ ( (This)->lpVtbl -> GetOutputStreamDesc(This) ) +#else +#define ID3D12VideoProcessor_GetOutputStreamDesc(This,RetVal) \ + ( (This)->lpVtbl -> GetOutputStreamDesc(This,RetVal) ) +#endif #endif /* COBJMACROS */ @@ -1332,17 +1332,6 @@ EXTERN_C const IID IID_ID3D12VideoProcessor; -D3D12_VIDEO_PROCESS_OUTPUT_STREAM_DESC STDMETHODCALLTYPE ID3D12VideoProcessor_GetOutputStreamDesc_Proxy( - ID3D12VideoProcessor * This); - - -void __RPC_STUB ID3D12VideoProcessor_GetOutputStreamDesc_Stub( - IRpcStubBuffer *This, - IRpcChannelBuffer *_pRpcChannelBuffer, - PRPC_MESSAGE _pRpcMessage, - DWORD *_pdwStubPhase); - - #endif /* __ID3D12VideoProcessor_INTERFACE_DEFINED__ */ @@ -1531,88 +1520,61 @@ EXTERN_C const IID IID_ID3D12VideoDecodeCommandList; virtual HRESULT STDMETHODCALLTYPE Close( void) = 0; virtual HRESULT STDMETHODCALLTYPE Reset( - /* [annotation] */ _In_ ID3D12CommandAllocator *pAllocator) = 0; virtual void STDMETHODCALLTYPE ClearState( void) = 0; virtual void STDMETHODCALLTYPE ResourceBarrier( - /* [annotation] */ _In_ UINT NumBarriers, - /* [annotation] */ _In_reads_(NumBarriers) const D3D12_RESOURCE_BARRIER *pBarriers) = 0; virtual void STDMETHODCALLTYPE DiscardResource( - /* [annotation] */ _In_ ID3D12Resource *pResource, - /* [annotation] */ _In_opt_ const D3D12_DISCARD_REGION *pRegion) = 0; virtual void STDMETHODCALLTYPE BeginQuery( - /* [annotation] */ _In_ ID3D12QueryHeap *pQueryHeap, - /* [annotation] */ _In_ D3D12_QUERY_TYPE Type, - /* [annotation] */ _In_ UINT Index) = 0; virtual void STDMETHODCALLTYPE EndQuery( - /* [annotation] */ _In_ ID3D12QueryHeap *pQueryHeap, - /* [annotation] */ _In_ D3D12_QUERY_TYPE Type, - /* [annotation] */ _In_ UINT Index) = 0; virtual void STDMETHODCALLTYPE ResolveQueryData( - /* [annotation] */ _In_ ID3D12QueryHeap *pQueryHeap, - /* [annotation] */ _In_ D3D12_QUERY_TYPE Type, - /* [annotation] */ _In_ UINT StartIndex, - /* [annotation] */ _In_ UINT NumQueries, - /* [annotation] */ _In_ ID3D12Resource *pDestinationBuffer, - /* [annotation] */ _In_ UINT64 AlignedDestinationBufferOffset) = 0; virtual void STDMETHODCALLTYPE SetPredication( - /* [annotation] */ _In_opt_ ID3D12Resource *pBuffer, - /* [annotation] */ _In_ UINT64 AlignedBufferOffset, - /* [annotation] */ _In_ D3D12_PREDICATION_OP Operation) = 0; virtual void STDMETHODCALLTYPE SetMarker( UINT Metadata, - /* [annotation] */ _In_reads_bytes_opt_(Size) const void *pData, UINT Size) = 0; virtual void STDMETHODCALLTYPE BeginEvent( UINT Metadata, - /* [annotation] */ _In_reads_bytes_opt_(Size) const void *pData, UINT Size) = 0; virtual void STDMETHODCALLTYPE EndEvent( void) = 0; virtual void STDMETHODCALLTYPE DecodeFrame( - /* [annotation] */ _In_ ID3D12VideoDecoder *pDecoder, - /* [annotation] */ _In_ const D3D12_VIDEO_DECODE_OUTPUT_STREAM_ARGUMENTS *pOutputArguments, - /* [annotation] */ _In_ const D3D12_VIDEO_DECODE_INPUT_STREAM_ARGUMENTS *pInputArguments) = 0; virtual void STDMETHODCALLTYPE WriteBufferImmediate( UINT Count, - /* [annotation] */ _In_reads_(Count) const D3D12_WRITEBUFFERIMMEDIATE_PARAMETER *pParams, - /* [annotation] */ _In_reads_opt_(Count) const D3D12_WRITEBUFFERIMMEDIATE_MODE *pModes) = 0; }; @@ -1627,9 +1589,7 @@ EXTERN_C const IID IID_ID3D12VideoDecodeCommandList; DECLSPEC_XFGVIRT(IUnknown, QueryInterface) HRESULT ( STDMETHODCALLTYPE *QueryInterface )( ID3D12VideoDecodeCommandList * This, - /* [annotation][in] */ - _In_ REFIID riid, - /* [annotation][iid_is][out] */ + REFIID riid, _COM_Outptr_ void **ppvObject); DECLSPEC_XFGVIRT(IUnknown, AddRef) @@ -1643,43 +1603,32 @@ EXTERN_C const IID IID_ID3D12VideoDecodeCommandList; DECLSPEC_XFGVIRT(ID3D12Object, GetPrivateData) HRESULT ( STDMETHODCALLTYPE *GetPrivateData )( ID3D12VideoDecodeCommandList * This, - /* [annotation] */ _In_ REFGUID guid, - /* [annotation] */ _Inout_ UINT *pDataSize, - /* [annotation] */ _Out_writes_bytes_opt_( *pDataSize ) void *pData); DECLSPEC_XFGVIRT(ID3D12Object, SetPrivateData) HRESULT ( STDMETHODCALLTYPE *SetPrivateData )( ID3D12VideoDecodeCommandList * This, - /* [annotation] */ _In_ REFGUID guid, - /* [annotation] */ _In_ UINT DataSize, - /* [annotation] */ _In_reads_bytes_opt_( DataSize ) const void *pData); DECLSPEC_XFGVIRT(ID3D12Object, SetPrivateDataInterface) HRESULT ( STDMETHODCALLTYPE *SetPrivateDataInterface )( ID3D12VideoDecodeCommandList * This, - /* [annotation] */ _In_ REFGUID guid, - /* [annotation] */ _In_opt_ const IUnknown *pData); DECLSPEC_XFGVIRT(ID3D12Object, SetName) HRESULT ( STDMETHODCALLTYPE *SetName )( ID3D12VideoDecodeCommandList * This, - /* [annotation] */ _In_z_ LPCWSTR Name); DECLSPEC_XFGVIRT(ID3D12DeviceChild, GetDevice) HRESULT ( STDMETHODCALLTYPE *GetDevice )( ID3D12VideoDecodeCommandList * This, - /* [annotation][in] */ - _In_ REFIID riid, - /* [annotation][iid_is][out] */ + REFIID riid, _COM_Outptr_opt_ void **ppvDevice); DECLSPEC_XFGVIRT(ID3D12CommandList, GetType) @@ -1693,7 +1642,6 @@ EXTERN_C const IID IID_ID3D12VideoDecodeCommandList; DECLSPEC_XFGVIRT(ID3D12VideoDecodeCommandList, Reset) HRESULT ( STDMETHODCALLTYPE *Reset )( ID3D12VideoDecodeCommandList * This, - /* [annotation] */ _In_ ID3D12CommandAllocator *pAllocator); DECLSPEC_XFGVIRT(ID3D12VideoDecodeCommandList, ClearState) @@ -1703,70 +1651,50 @@ EXTERN_C const IID IID_ID3D12VideoDecodeCommandList; DECLSPEC_XFGVIRT(ID3D12VideoDecodeCommandList, ResourceBarrier) void ( STDMETHODCALLTYPE *ResourceBarrier )( ID3D12VideoDecodeCommandList * This, - /* [annotation] */ _In_ UINT NumBarriers, - /* [annotation] */ _In_reads_(NumBarriers) const D3D12_RESOURCE_BARRIER *pBarriers); DECLSPEC_XFGVIRT(ID3D12VideoDecodeCommandList, DiscardResource) void ( STDMETHODCALLTYPE *DiscardResource )( ID3D12VideoDecodeCommandList * This, - /* [annotation] */ _In_ ID3D12Resource *pResource, - /* [annotation] */ _In_opt_ const D3D12_DISCARD_REGION *pRegion); DECLSPEC_XFGVIRT(ID3D12VideoDecodeCommandList, BeginQuery) void ( STDMETHODCALLTYPE *BeginQuery )( ID3D12VideoDecodeCommandList * This, - /* [annotation] */ _In_ ID3D12QueryHeap *pQueryHeap, - /* [annotation] */ _In_ D3D12_QUERY_TYPE Type, - /* [annotation] */ _In_ UINT Index); DECLSPEC_XFGVIRT(ID3D12VideoDecodeCommandList, EndQuery) void ( STDMETHODCALLTYPE *EndQuery )( ID3D12VideoDecodeCommandList * This, - /* [annotation] */ _In_ ID3D12QueryHeap *pQueryHeap, - /* [annotation] */ _In_ D3D12_QUERY_TYPE Type, - /* [annotation] */ _In_ UINT Index); DECLSPEC_XFGVIRT(ID3D12VideoDecodeCommandList, ResolveQueryData) void ( STDMETHODCALLTYPE *ResolveQueryData )( ID3D12VideoDecodeCommandList * This, - /* [annotation] */ _In_ ID3D12QueryHeap *pQueryHeap, - /* [annotation] */ _In_ D3D12_QUERY_TYPE Type, - /* [annotation] */ _In_ UINT StartIndex, - /* [annotation] */ _In_ UINT NumQueries, - /* [annotation] */ _In_ ID3D12Resource *pDestinationBuffer, - /* [annotation] */ _In_ UINT64 AlignedDestinationBufferOffset); DECLSPEC_XFGVIRT(ID3D12VideoDecodeCommandList, SetPredication) void ( STDMETHODCALLTYPE *SetPredication )( ID3D12VideoDecodeCommandList * This, - /* [annotation] */ _In_opt_ ID3D12Resource *pBuffer, - /* [annotation] */ _In_ UINT64 AlignedBufferOffset, - /* [annotation] */ _In_ D3D12_PREDICATION_OP Operation); DECLSPEC_XFGVIRT(ID3D12VideoDecodeCommandList, SetMarker) void ( STDMETHODCALLTYPE *SetMarker )( ID3D12VideoDecodeCommandList * This, UINT Metadata, - /* [annotation] */ _In_reads_bytes_opt_(Size) const void *pData, UINT Size); @@ -1774,7 +1702,6 @@ EXTERN_C const IID IID_ID3D12VideoDecodeCommandList; void ( STDMETHODCALLTYPE *BeginEvent )( ID3D12VideoDecodeCommandList * This, UINT Metadata, - /* [annotation] */ _In_reads_bytes_opt_(Size) const void *pData, UINT Size); @@ -1785,20 +1712,15 @@ EXTERN_C const IID IID_ID3D12VideoDecodeCommandList; DECLSPEC_XFGVIRT(ID3D12VideoDecodeCommandList, DecodeFrame) void ( STDMETHODCALLTYPE *DecodeFrame )( ID3D12VideoDecodeCommandList * This, - /* [annotation] */ _In_ ID3D12VideoDecoder *pDecoder, - /* [annotation] */ _In_ const D3D12_VIDEO_DECODE_OUTPUT_STREAM_ARGUMENTS *pOutputArguments, - /* [annotation] */ _In_ const D3D12_VIDEO_DECODE_INPUT_STREAM_ARGUMENTS *pInputArguments); DECLSPEC_XFGVIRT(ID3D12VideoDecodeCommandList, WriteBufferImmediate) void ( STDMETHODCALLTYPE *WriteBufferImmediate )( ID3D12VideoDecodeCommandList * This, UINT Count, - /* [annotation] */ _In_reads_(Count) const D3D12_WRITEBUFFERIMMEDIATE_PARAMETER *pParams, - /* [annotation] */ _In_reads_opt_(Count) const D3D12_WRITEBUFFERIMMEDIATE_MODE *pModes); END_INTERFACE @@ -1916,89 +1838,62 @@ EXTERN_C const IID IID_ID3D12VideoProcessCommandList; virtual HRESULT STDMETHODCALLTYPE Close( void) = 0; virtual HRESULT STDMETHODCALLTYPE Reset( - /* [annotation] */ _In_ ID3D12CommandAllocator *pAllocator) = 0; virtual void STDMETHODCALLTYPE ClearState( void) = 0; virtual void STDMETHODCALLTYPE ResourceBarrier( - /* [annotation] */ _In_ UINT NumBarriers, - /* [annotation] */ _In_reads_(NumBarriers) const D3D12_RESOURCE_BARRIER *pBarriers) = 0; virtual void STDMETHODCALLTYPE DiscardResource( - /* [annotation] */ _In_ ID3D12Resource *pResource, - /* [annotation] */ _In_opt_ const D3D12_DISCARD_REGION *pRegion) = 0; virtual void STDMETHODCALLTYPE BeginQuery( - /* [annotation] */ _In_ ID3D12QueryHeap *pQueryHeap, - /* [annotation] */ _In_ D3D12_QUERY_TYPE Type, - /* [annotation] */ _In_ UINT Index) = 0; virtual void STDMETHODCALLTYPE EndQuery( - /* [annotation] */ _In_ ID3D12QueryHeap *pQueryHeap, - /* [annotation] */ _In_ D3D12_QUERY_TYPE Type, - /* [annotation] */ _In_ UINT Index) = 0; virtual void STDMETHODCALLTYPE ResolveQueryData( - /* [annotation] */ _In_ ID3D12QueryHeap *pQueryHeap, - /* [annotation] */ _In_ D3D12_QUERY_TYPE Type, - /* [annotation] */ _In_ UINT StartIndex, - /* [annotation] */ _In_ UINT NumQueries, - /* [annotation] */ _In_ ID3D12Resource *pDestinationBuffer, - /* [annotation] */ _In_ UINT64 AlignedDestinationBufferOffset) = 0; virtual void STDMETHODCALLTYPE SetPredication( - /* [annotation] */ _In_opt_ ID3D12Resource *pBuffer, - /* [annotation] */ _In_ UINT64 AlignedBufferOffset, - /* [annotation] */ _In_ D3D12_PREDICATION_OP Operation) = 0; virtual void STDMETHODCALLTYPE SetMarker( UINT Metadata, - /* [annotation] */ _In_reads_bytes_opt_(Size) const void *pData, UINT Size) = 0; virtual void STDMETHODCALLTYPE BeginEvent( UINT Metadata, - /* [annotation] */ _In_reads_bytes_opt_(Size) const void *pData, UINT Size) = 0; virtual void STDMETHODCALLTYPE EndEvent( void) = 0; virtual void STDMETHODCALLTYPE ProcessFrames( - /* [annotation] */ _In_ ID3D12VideoProcessor *pVideoProcessor, - /* [annotation] */ _In_ const D3D12_VIDEO_PROCESS_OUTPUT_STREAM_ARGUMENTS *pOutputArguments, UINT NumInputStreams, - /* [annotation] */ _In_reads_(NumInputStreams) const D3D12_VIDEO_PROCESS_INPUT_STREAM_ARGUMENTS *pInputArguments) = 0; virtual void STDMETHODCALLTYPE WriteBufferImmediate( UINT Count, - /* [annotation] */ _In_reads_(Count) const D3D12_WRITEBUFFERIMMEDIATE_PARAMETER *pParams, - /* [annotation] */ _In_reads_opt_(Count) const D3D12_WRITEBUFFERIMMEDIATE_MODE *pModes) = 0; }; @@ -2013,9 +1908,7 @@ EXTERN_C const IID IID_ID3D12VideoProcessCommandList; DECLSPEC_XFGVIRT(IUnknown, QueryInterface) HRESULT ( STDMETHODCALLTYPE *QueryInterface )( ID3D12VideoProcessCommandList * This, - /* [annotation][in] */ - _In_ REFIID riid, - /* [annotation][iid_is][out] */ + REFIID riid, _COM_Outptr_ void **ppvObject); DECLSPEC_XFGVIRT(IUnknown, AddRef) @@ -2029,43 +1922,32 @@ EXTERN_C const IID IID_ID3D12VideoProcessCommandList; DECLSPEC_XFGVIRT(ID3D12Object, GetPrivateData) HRESULT ( STDMETHODCALLTYPE *GetPrivateData )( ID3D12VideoProcessCommandList * This, - /* [annotation] */ _In_ REFGUID guid, - /* [annotation] */ _Inout_ UINT *pDataSize, - /* [annotation] */ _Out_writes_bytes_opt_( *pDataSize ) void *pData); DECLSPEC_XFGVIRT(ID3D12Object, SetPrivateData) HRESULT ( STDMETHODCALLTYPE *SetPrivateData )( ID3D12VideoProcessCommandList * This, - /* [annotation] */ _In_ REFGUID guid, - /* [annotation] */ _In_ UINT DataSize, - /* [annotation] */ _In_reads_bytes_opt_( DataSize ) const void *pData); DECLSPEC_XFGVIRT(ID3D12Object, SetPrivateDataInterface) HRESULT ( STDMETHODCALLTYPE *SetPrivateDataInterface )( ID3D12VideoProcessCommandList * This, - /* [annotation] */ _In_ REFGUID guid, - /* [annotation] */ _In_opt_ const IUnknown *pData); DECLSPEC_XFGVIRT(ID3D12Object, SetName) HRESULT ( STDMETHODCALLTYPE *SetName )( ID3D12VideoProcessCommandList * This, - /* [annotation] */ _In_z_ LPCWSTR Name); DECLSPEC_XFGVIRT(ID3D12DeviceChild, GetDevice) HRESULT ( STDMETHODCALLTYPE *GetDevice )( ID3D12VideoProcessCommandList * This, - /* [annotation][in] */ - _In_ REFIID riid, - /* [annotation][iid_is][out] */ + REFIID riid, _COM_Outptr_opt_ void **ppvDevice); DECLSPEC_XFGVIRT(ID3D12CommandList, GetType) @@ -2079,7 +1961,6 @@ EXTERN_C const IID IID_ID3D12VideoProcessCommandList; DECLSPEC_XFGVIRT(ID3D12VideoProcessCommandList, Reset) HRESULT ( STDMETHODCALLTYPE *Reset )( ID3D12VideoProcessCommandList * This, - /* [annotation] */ _In_ ID3D12CommandAllocator *pAllocator); DECLSPEC_XFGVIRT(ID3D12VideoProcessCommandList, ClearState) @@ -2089,70 +1970,50 @@ EXTERN_C const IID IID_ID3D12VideoProcessCommandList; DECLSPEC_XFGVIRT(ID3D12VideoProcessCommandList, ResourceBarrier) void ( STDMETHODCALLTYPE *ResourceBarrier )( ID3D12VideoProcessCommandList * This, - /* [annotation] */ _In_ UINT NumBarriers, - /* [annotation] */ _In_reads_(NumBarriers) const D3D12_RESOURCE_BARRIER *pBarriers); DECLSPEC_XFGVIRT(ID3D12VideoProcessCommandList, DiscardResource) void ( STDMETHODCALLTYPE *DiscardResource )( ID3D12VideoProcessCommandList * This, - /* [annotation] */ _In_ ID3D12Resource *pResource, - /* [annotation] */ _In_opt_ const D3D12_DISCARD_REGION *pRegion); DECLSPEC_XFGVIRT(ID3D12VideoProcessCommandList, BeginQuery) void ( STDMETHODCALLTYPE *BeginQuery )( ID3D12VideoProcessCommandList * This, - /* [annotation] */ _In_ ID3D12QueryHeap *pQueryHeap, - /* [annotation] */ _In_ D3D12_QUERY_TYPE Type, - /* [annotation] */ _In_ UINT Index); DECLSPEC_XFGVIRT(ID3D12VideoProcessCommandList, EndQuery) void ( STDMETHODCALLTYPE *EndQuery )( ID3D12VideoProcessCommandList * This, - /* [annotation] */ _In_ ID3D12QueryHeap *pQueryHeap, - /* [annotation] */ _In_ D3D12_QUERY_TYPE Type, - /* [annotation] */ _In_ UINT Index); DECLSPEC_XFGVIRT(ID3D12VideoProcessCommandList, ResolveQueryData) void ( STDMETHODCALLTYPE *ResolveQueryData )( ID3D12VideoProcessCommandList * This, - /* [annotation] */ _In_ ID3D12QueryHeap *pQueryHeap, - /* [annotation] */ _In_ D3D12_QUERY_TYPE Type, - /* [annotation] */ _In_ UINT StartIndex, - /* [annotation] */ _In_ UINT NumQueries, - /* [annotation] */ _In_ ID3D12Resource *pDestinationBuffer, - /* [annotation] */ _In_ UINT64 AlignedDestinationBufferOffset); DECLSPEC_XFGVIRT(ID3D12VideoProcessCommandList, SetPredication) void ( STDMETHODCALLTYPE *SetPredication )( ID3D12VideoProcessCommandList * This, - /* [annotation] */ _In_opt_ ID3D12Resource *pBuffer, - /* [annotation] */ _In_ UINT64 AlignedBufferOffset, - /* [annotation] */ _In_ D3D12_PREDICATION_OP Operation); DECLSPEC_XFGVIRT(ID3D12VideoProcessCommandList, SetMarker) void ( STDMETHODCALLTYPE *SetMarker )( ID3D12VideoProcessCommandList * This, UINT Metadata, - /* [annotation] */ _In_reads_bytes_opt_(Size) const void *pData, UINT Size); @@ -2160,7 +2021,6 @@ EXTERN_C const IID IID_ID3D12VideoProcessCommandList; void ( STDMETHODCALLTYPE *BeginEvent )( ID3D12VideoProcessCommandList * This, UINT Metadata, - /* [annotation] */ _In_reads_bytes_opt_(Size) const void *pData, UINT Size); @@ -2171,21 +2031,16 @@ EXTERN_C const IID IID_ID3D12VideoProcessCommandList; DECLSPEC_XFGVIRT(ID3D12VideoProcessCommandList, ProcessFrames) void ( STDMETHODCALLTYPE *ProcessFrames )( ID3D12VideoProcessCommandList * This, - /* [annotation] */ _In_ ID3D12VideoProcessor *pVideoProcessor, - /* [annotation] */ _In_ const D3D12_VIDEO_PROCESS_OUTPUT_STREAM_ARGUMENTS *pOutputArguments, UINT NumInputStreams, - /* [annotation] */ _In_reads_(NumInputStreams) const D3D12_VIDEO_PROCESS_INPUT_STREAM_ARGUMENTS *pInputArguments); DECLSPEC_XFGVIRT(ID3D12VideoProcessCommandList, WriteBufferImmediate) void ( STDMETHODCALLTYPE *WriteBufferImmediate )( ID3D12VideoProcessCommandList * This, UINT Count, - /* [annotation] */ _In_reads_(Count) const D3D12_WRITEBUFFERIMMEDIATE_PARAMETER *pParams, - /* [annotation] */ _In_reads_opt_(Count) const D3D12_WRITEBUFFERIMMEDIATE_MODE *pModes); END_INTERFACE @@ -2334,11 +2189,8 @@ EXTERN_C const IID IID_ID3D12VideoDecodeCommandList1; { public: virtual void STDMETHODCALLTYPE DecodeFrame1( - /* [annotation] */ _In_ ID3D12VideoDecoder *pDecoder, - /* [annotation] */ _In_ const D3D12_VIDEO_DECODE_OUTPUT_STREAM_ARGUMENTS1 *pOutputArguments, - /* [annotation] */ _In_ const D3D12_VIDEO_DECODE_INPUT_STREAM_ARGUMENTS *pInputArguments) = 0; }; @@ -2353,9 +2205,7 @@ EXTERN_C const IID IID_ID3D12VideoDecodeCommandList1; DECLSPEC_XFGVIRT(IUnknown, QueryInterface) HRESULT ( STDMETHODCALLTYPE *QueryInterface )( ID3D12VideoDecodeCommandList1 * This, - /* [annotation][in] */ - _In_ REFIID riid, - /* [annotation][iid_is][out] */ + REFIID riid, _COM_Outptr_ void **ppvObject); DECLSPEC_XFGVIRT(IUnknown, AddRef) @@ -2369,43 +2219,32 @@ EXTERN_C const IID IID_ID3D12VideoDecodeCommandList1; DECLSPEC_XFGVIRT(ID3D12Object, GetPrivateData) HRESULT ( STDMETHODCALLTYPE *GetPrivateData )( ID3D12VideoDecodeCommandList1 * This, - /* [annotation] */ _In_ REFGUID guid, - /* [annotation] */ _Inout_ UINT *pDataSize, - /* [annotation] */ _Out_writes_bytes_opt_( *pDataSize ) void *pData); DECLSPEC_XFGVIRT(ID3D12Object, SetPrivateData) HRESULT ( STDMETHODCALLTYPE *SetPrivateData )( ID3D12VideoDecodeCommandList1 * This, - /* [annotation] */ _In_ REFGUID guid, - /* [annotation] */ _In_ UINT DataSize, - /* [annotation] */ _In_reads_bytes_opt_( DataSize ) const void *pData); DECLSPEC_XFGVIRT(ID3D12Object, SetPrivateDataInterface) HRESULT ( STDMETHODCALLTYPE *SetPrivateDataInterface )( ID3D12VideoDecodeCommandList1 * This, - /* [annotation] */ _In_ REFGUID guid, - /* [annotation] */ _In_opt_ const IUnknown *pData); DECLSPEC_XFGVIRT(ID3D12Object, SetName) HRESULT ( STDMETHODCALLTYPE *SetName )( ID3D12VideoDecodeCommandList1 * This, - /* [annotation] */ _In_z_ LPCWSTR Name); DECLSPEC_XFGVIRT(ID3D12DeviceChild, GetDevice) HRESULT ( STDMETHODCALLTYPE *GetDevice )( ID3D12VideoDecodeCommandList1 * This, - /* [annotation][in] */ - _In_ REFIID riid, - /* [annotation][iid_is][out] */ + REFIID riid, _COM_Outptr_opt_ void **ppvDevice); DECLSPEC_XFGVIRT(ID3D12CommandList, GetType) @@ -2419,7 +2258,6 @@ EXTERN_C const IID IID_ID3D12VideoDecodeCommandList1; DECLSPEC_XFGVIRT(ID3D12VideoDecodeCommandList, Reset) HRESULT ( STDMETHODCALLTYPE *Reset )( ID3D12VideoDecodeCommandList1 * This, - /* [annotation] */ _In_ ID3D12CommandAllocator *pAllocator); DECLSPEC_XFGVIRT(ID3D12VideoDecodeCommandList, ClearState) @@ -2429,70 +2267,50 @@ EXTERN_C const IID IID_ID3D12VideoDecodeCommandList1; DECLSPEC_XFGVIRT(ID3D12VideoDecodeCommandList, ResourceBarrier) void ( STDMETHODCALLTYPE *ResourceBarrier )( ID3D12VideoDecodeCommandList1 * This, - /* [annotation] */ _In_ UINT NumBarriers, - /* [annotation] */ _In_reads_(NumBarriers) const D3D12_RESOURCE_BARRIER *pBarriers); DECLSPEC_XFGVIRT(ID3D12VideoDecodeCommandList, DiscardResource) void ( STDMETHODCALLTYPE *DiscardResource )( ID3D12VideoDecodeCommandList1 * This, - /* [annotation] */ _In_ ID3D12Resource *pResource, - /* [annotation] */ _In_opt_ const D3D12_DISCARD_REGION *pRegion); DECLSPEC_XFGVIRT(ID3D12VideoDecodeCommandList, BeginQuery) void ( STDMETHODCALLTYPE *BeginQuery )( ID3D12VideoDecodeCommandList1 * This, - /* [annotation] */ _In_ ID3D12QueryHeap *pQueryHeap, - /* [annotation] */ _In_ D3D12_QUERY_TYPE Type, - /* [annotation] */ _In_ UINT Index); DECLSPEC_XFGVIRT(ID3D12VideoDecodeCommandList, EndQuery) void ( STDMETHODCALLTYPE *EndQuery )( ID3D12VideoDecodeCommandList1 * This, - /* [annotation] */ _In_ ID3D12QueryHeap *pQueryHeap, - /* [annotation] */ _In_ D3D12_QUERY_TYPE Type, - /* [annotation] */ _In_ UINT Index); DECLSPEC_XFGVIRT(ID3D12VideoDecodeCommandList, ResolveQueryData) void ( STDMETHODCALLTYPE *ResolveQueryData )( ID3D12VideoDecodeCommandList1 * This, - /* [annotation] */ _In_ ID3D12QueryHeap *pQueryHeap, - /* [annotation] */ _In_ D3D12_QUERY_TYPE Type, - /* [annotation] */ _In_ UINT StartIndex, - /* [annotation] */ _In_ UINT NumQueries, - /* [annotation] */ _In_ ID3D12Resource *pDestinationBuffer, - /* [annotation] */ _In_ UINT64 AlignedDestinationBufferOffset); DECLSPEC_XFGVIRT(ID3D12VideoDecodeCommandList, SetPredication) void ( STDMETHODCALLTYPE *SetPredication )( ID3D12VideoDecodeCommandList1 * This, - /* [annotation] */ _In_opt_ ID3D12Resource *pBuffer, - /* [annotation] */ _In_ UINT64 AlignedBufferOffset, - /* [annotation] */ _In_ D3D12_PREDICATION_OP Operation); DECLSPEC_XFGVIRT(ID3D12VideoDecodeCommandList, SetMarker) void ( STDMETHODCALLTYPE *SetMarker )( ID3D12VideoDecodeCommandList1 * This, UINT Metadata, - /* [annotation] */ _In_reads_bytes_opt_(Size) const void *pData, UINT Size); @@ -2500,7 +2318,6 @@ EXTERN_C const IID IID_ID3D12VideoDecodeCommandList1; void ( STDMETHODCALLTYPE *BeginEvent )( ID3D12VideoDecodeCommandList1 * This, UINT Metadata, - /* [annotation] */ _In_reads_bytes_opt_(Size) const void *pData, UINT Size); @@ -2511,30 +2328,22 @@ EXTERN_C const IID IID_ID3D12VideoDecodeCommandList1; DECLSPEC_XFGVIRT(ID3D12VideoDecodeCommandList, DecodeFrame) void ( STDMETHODCALLTYPE *DecodeFrame )( ID3D12VideoDecodeCommandList1 * This, - /* [annotation] */ _In_ ID3D12VideoDecoder *pDecoder, - /* [annotation] */ _In_ const D3D12_VIDEO_DECODE_OUTPUT_STREAM_ARGUMENTS *pOutputArguments, - /* [annotation] */ _In_ const D3D12_VIDEO_DECODE_INPUT_STREAM_ARGUMENTS *pInputArguments); DECLSPEC_XFGVIRT(ID3D12VideoDecodeCommandList, WriteBufferImmediate) void ( STDMETHODCALLTYPE *WriteBufferImmediate )( ID3D12VideoDecodeCommandList1 * This, UINT Count, - /* [annotation] */ _In_reads_(Count) const D3D12_WRITEBUFFERIMMEDIATE_PARAMETER *pParams, - /* [annotation] */ _In_reads_opt_(Count) const D3D12_WRITEBUFFERIMMEDIATE_MODE *pModes); DECLSPEC_XFGVIRT(ID3D12VideoDecodeCommandList1, DecodeFrame1) void ( STDMETHODCALLTYPE *DecodeFrame1 )( ID3D12VideoDecodeCommandList1 * This, - /* [annotation] */ _In_ ID3D12VideoDecoder *pDecoder, - /* [annotation] */ _In_ const D3D12_VIDEO_DECODE_OUTPUT_STREAM_ARGUMENTS1 *pOutputArguments, - /* [annotation] */ _In_ const D3D12_VIDEO_DECODE_INPUT_STREAM_ARGUMENTS *pInputArguments); END_INTERFACE @@ -2673,12 +2482,9 @@ EXTERN_C const IID IID_ID3D12VideoProcessCommandList1; { public: virtual void STDMETHODCALLTYPE ProcessFrames1( - /* [annotation] */ _In_ ID3D12VideoProcessor *pVideoProcessor, - /* [annotation] */ _In_ const D3D12_VIDEO_PROCESS_OUTPUT_STREAM_ARGUMENTS *pOutputArguments, UINT NumInputStreams, - /* [annotation] */ _In_reads_(NumInputStreams) const D3D12_VIDEO_PROCESS_INPUT_STREAM_ARGUMENTS1 *pInputArguments) = 0; }; @@ -2693,9 +2499,7 @@ EXTERN_C const IID IID_ID3D12VideoProcessCommandList1; DECLSPEC_XFGVIRT(IUnknown, QueryInterface) HRESULT ( STDMETHODCALLTYPE *QueryInterface )( ID3D12VideoProcessCommandList1 * This, - /* [annotation][in] */ - _In_ REFIID riid, - /* [annotation][iid_is][out] */ + REFIID riid, _COM_Outptr_ void **ppvObject); DECLSPEC_XFGVIRT(IUnknown, AddRef) @@ -2709,43 +2513,32 @@ EXTERN_C const IID IID_ID3D12VideoProcessCommandList1; DECLSPEC_XFGVIRT(ID3D12Object, GetPrivateData) HRESULT ( STDMETHODCALLTYPE *GetPrivateData )( ID3D12VideoProcessCommandList1 * This, - /* [annotation] */ _In_ REFGUID guid, - /* [annotation] */ _Inout_ UINT *pDataSize, - /* [annotation] */ _Out_writes_bytes_opt_( *pDataSize ) void *pData); DECLSPEC_XFGVIRT(ID3D12Object, SetPrivateData) HRESULT ( STDMETHODCALLTYPE *SetPrivateData )( ID3D12VideoProcessCommandList1 * This, - /* [annotation] */ _In_ REFGUID guid, - /* [annotation] */ _In_ UINT DataSize, - /* [annotation] */ _In_reads_bytes_opt_( DataSize ) const void *pData); DECLSPEC_XFGVIRT(ID3D12Object, SetPrivateDataInterface) HRESULT ( STDMETHODCALLTYPE *SetPrivateDataInterface )( ID3D12VideoProcessCommandList1 * This, - /* [annotation] */ _In_ REFGUID guid, - /* [annotation] */ _In_opt_ const IUnknown *pData); DECLSPEC_XFGVIRT(ID3D12Object, SetName) HRESULT ( STDMETHODCALLTYPE *SetName )( ID3D12VideoProcessCommandList1 * This, - /* [annotation] */ _In_z_ LPCWSTR Name); DECLSPEC_XFGVIRT(ID3D12DeviceChild, GetDevice) HRESULT ( STDMETHODCALLTYPE *GetDevice )( ID3D12VideoProcessCommandList1 * This, - /* [annotation][in] */ - _In_ REFIID riid, - /* [annotation][iid_is][out] */ + REFIID riid, _COM_Outptr_opt_ void **ppvDevice); DECLSPEC_XFGVIRT(ID3D12CommandList, GetType) @@ -2759,7 +2552,6 @@ EXTERN_C const IID IID_ID3D12VideoProcessCommandList1; DECLSPEC_XFGVIRT(ID3D12VideoProcessCommandList, Reset) HRESULT ( STDMETHODCALLTYPE *Reset )( ID3D12VideoProcessCommandList1 * This, - /* [annotation] */ _In_ ID3D12CommandAllocator *pAllocator); DECLSPEC_XFGVIRT(ID3D12VideoProcessCommandList, ClearState) @@ -2769,70 +2561,50 @@ EXTERN_C const IID IID_ID3D12VideoProcessCommandList1; DECLSPEC_XFGVIRT(ID3D12VideoProcessCommandList, ResourceBarrier) void ( STDMETHODCALLTYPE *ResourceBarrier )( ID3D12VideoProcessCommandList1 * This, - /* [annotation] */ _In_ UINT NumBarriers, - /* [annotation] */ _In_reads_(NumBarriers) const D3D12_RESOURCE_BARRIER *pBarriers); DECLSPEC_XFGVIRT(ID3D12VideoProcessCommandList, DiscardResource) void ( STDMETHODCALLTYPE *DiscardResource )( ID3D12VideoProcessCommandList1 * This, - /* [annotation] */ _In_ ID3D12Resource *pResource, - /* [annotation] */ _In_opt_ const D3D12_DISCARD_REGION *pRegion); DECLSPEC_XFGVIRT(ID3D12VideoProcessCommandList, BeginQuery) void ( STDMETHODCALLTYPE *BeginQuery )( ID3D12VideoProcessCommandList1 * This, - /* [annotation] */ _In_ ID3D12QueryHeap *pQueryHeap, - /* [annotation] */ _In_ D3D12_QUERY_TYPE Type, - /* [annotation] */ _In_ UINT Index); DECLSPEC_XFGVIRT(ID3D12VideoProcessCommandList, EndQuery) void ( STDMETHODCALLTYPE *EndQuery )( ID3D12VideoProcessCommandList1 * This, - /* [annotation] */ _In_ ID3D12QueryHeap *pQueryHeap, - /* [annotation] */ _In_ D3D12_QUERY_TYPE Type, - /* [annotation] */ _In_ UINT Index); DECLSPEC_XFGVIRT(ID3D12VideoProcessCommandList, ResolveQueryData) void ( STDMETHODCALLTYPE *ResolveQueryData )( ID3D12VideoProcessCommandList1 * This, - /* [annotation] */ _In_ ID3D12QueryHeap *pQueryHeap, - /* [annotation] */ _In_ D3D12_QUERY_TYPE Type, - /* [annotation] */ _In_ UINT StartIndex, - /* [annotation] */ _In_ UINT NumQueries, - /* [annotation] */ _In_ ID3D12Resource *pDestinationBuffer, - /* [annotation] */ _In_ UINT64 AlignedDestinationBufferOffset); DECLSPEC_XFGVIRT(ID3D12VideoProcessCommandList, SetPredication) void ( STDMETHODCALLTYPE *SetPredication )( ID3D12VideoProcessCommandList1 * This, - /* [annotation] */ _In_opt_ ID3D12Resource *pBuffer, - /* [annotation] */ _In_ UINT64 AlignedBufferOffset, - /* [annotation] */ _In_ D3D12_PREDICATION_OP Operation); DECLSPEC_XFGVIRT(ID3D12VideoProcessCommandList, SetMarker) void ( STDMETHODCALLTYPE *SetMarker )( ID3D12VideoProcessCommandList1 * This, UINT Metadata, - /* [annotation] */ _In_reads_bytes_opt_(Size) const void *pData, UINT Size); @@ -2840,7 +2612,6 @@ EXTERN_C const IID IID_ID3D12VideoProcessCommandList1; void ( STDMETHODCALLTYPE *BeginEvent )( ID3D12VideoProcessCommandList1 * This, UINT Metadata, - /* [annotation] */ _In_reads_bytes_opt_(Size) const void *pData, UINT Size); @@ -2851,32 +2622,24 @@ EXTERN_C const IID IID_ID3D12VideoProcessCommandList1; DECLSPEC_XFGVIRT(ID3D12VideoProcessCommandList, ProcessFrames) void ( STDMETHODCALLTYPE *ProcessFrames )( ID3D12VideoProcessCommandList1 * This, - /* [annotation] */ _In_ ID3D12VideoProcessor *pVideoProcessor, - /* [annotation] */ _In_ const D3D12_VIDEO_PROCESS_OUTPUT_STREAM_ARGUMENTS *pOutputArguments, UINT NumInputStreams, - /* [annotation] */ _In_reads_(NumInputStreams) const D3D12_VIDEO_PROCESS_INPUT_STREAM_ARGUMENTS *pInputArguments); DECLSPEC_XFGVIRT(ID3D12VideoProcessCommandList, WriteBufferImmediate) void ( STDMETHODCALLTYPE *WriteBufferImmediate )( ID3D12VideoProcessCommandList1 * This, UINT Count, - /* [annotation] */ _In_reads_(Count) const D3D12_WRITEBUFFERIMMEDIATE_PARAMETER *pParams, - /* [annotation] */ _In_reads_opt_(Count) const D3D12_WRITEBUFFERIMMEDIATE_MODE *pModes); DECLSPEC_XFGVIRT(ID3D12VideoProcessCommandList1, ProcessFrames1) void ( STDMETHODCALLTYPE *ProcessFrames1 )( ID3D12VideoProcessCommandList1 * This, - /* [annotation] */ _In_ ID3D12VideoProcessor *pVideoProcessor, - /* [annotation] */ _In_ const D3D12_VIDEO_PROCESS_OUTPUT_STREAM_ARGUMENTS *pOutputArguments, UINT NumInputStreams, - /* [annotation] */ _In_reads_(NumInputStreams) const D3D12_VIDEO_PROCESS_INPUT_STREAM_ARGUMENTS1 *pInputArguments); END_INTERFACE @@ -3073,12 +2836,15 @@ EXTERN_C const IID IID_ID3D12VideoMotionEstimator; ID3D12VideoMotionEstimator : public ID3D12Pageable { public: +#if defined(_MSC_VER) || !defined(_WIN32) virtual D3D12_VIDEO_MOTION_ESTIMATOR_DESC STDMETHODCALLTYPE GetDesc( void) = 0; +#else + virtual D3D12_VIDEO_MOTION_ESTIMATOR_DESC *STDMETHODCALLTYPE GetDesc( + D3D12_VIDEO_MOTION_ESTIMATOR_DESC * RetVal) = 0; +#endif virtual HRESULT STDMETHODCALLTYPE GetProtectedResourceSession( - /* [annotation][in] */ - _In_ REFIID riid, - /* [annotation][iid_is][out] */ + REFIID riid, _COM_Outptr_opt_ void **ppProtectedSession) = 0; }; @@ -3093,9 +2859,7 @@ EXTERN_C const IID IID_ID3D12VideoMotionEstimator; DECLSPEC_XFGVIRT(IUnknown, QueryInterface) HRESULT ( STDMETHODCALLTYPE *QueryInterface )( ID3D12VideoMotionEstimator * This, - /* [annotation][in] */ - _In_ REFIID riid, - /* [annotation][iid_is][out] */ + REFIID riid, _COM_Outptr_ void **ppvObject); DECLSPEC_XFGVIRT(IUnknown, AddRef) @@ -3109,55 +2873,50 @@ EXTERN_C const IID IID_ID3D12VideoMotionEstimator; DECLSPEC_XFGVIRT(ID3D12Object, GetPrivateData) HRESULT ( STDMETHODCALLTYPE *GetPrivateData )( ID3D12VideoMotionEstimator * This, - /* [annotation] */ _In_ REFGUID guid, - /* [annotation] */ _Inout_ UINT *pDataSize, - /* [annotation] */ _Out_writes_bytes_opt_( *pDataSize ) void *pData); DECLSPEC_XFGVIRT(ID3D12Object, SetPrivateData) HRESULT ( STDMETHODCALLTYPE *SetPrivateData )( ID3D12VideoMotionEstimator * This, - /* [annotation] */ _In_ REFGUID guid, - /* [annotation] */ _In_ UINT DataSize, - /* [annotation] */ _In_reads_bytes_opt_( DataSize ) const void *pData); DECLSPEC_XFGVIRT(ID3D12Object, SetPrivateDataInterface) HRESULT ( STDMETHODCALLTYPE *SetPrivateDataInterface )( ID3D12VideoMotionEstimator * This, - /* [annotation] */ _In_ REFGUID guid, - /* [annotation] */ _In_opt_ const IUnknown *pData); DECLSPEC_XFGVIRT(ID3D12Object, SetName) HRESULT ( STDMETHODCALLTYPE *SetName )( ID3D12VideoMotionEstimator * This, - /* [annotation] */ _In_z_ LPCWSTR Name); DECLSPEC_XFGVIRT(ID3D12DeviceChild, GetDevice) HRESULT ( STDMETHODCALLTYPE *GetDevice )( ID3D12VideoMotionEstimator * This, - /* [annotation][in] */ - _In_ REFIID riid, - /* [annotation][iid_is][out] */ + REFIID riid, _COM_Outptr_opt_ void **ppvDevice); DECLSPEC_XFGVIRT(ID3D12VideoMotionEstimator, GetDesc) +#if !defined(_WIN32) D3D12_VIDEO_MOTION_ESTIMATOR_DESC ( STDMETHODCALLTYPE *GetDesc )( ID3D12VideoMotionEstimator * This); +#else + D3D12_VIDEO_MOTION_ESTIMATOR_DESC *( STDMETHODCALLTYPE *GetDesc )( + ID3D12VideoMotionEstimator * This, + D3D12_VIDEO_MOTION_ESTIMATOR_DESC * RetVal); + +#endif + DECLSPEC_XFGVIRT(ID3D12VideoMotionEstimator, GetProtectedResourceSession) HRESULT ( STDMETHODCALLTYPE *GetProtectedResourceSession )( ID3D12VideoMotionEstimator * This, - /* [annotation][in] */ - _In_ REFIID riid, - /* [annotation][iid_is][out] */ + REFIID riid, _COM_Outptr_opt_ void **ppProtectedSession); END_INTERFACE @@ -3200,9 +2959,14 @@ EXTERN_C const IID IID_ID3D12VideoMotionEstimator; ( (This)->lpVtbl -> GetDevice(This,riid,ppvDevice) ) +#if !defined(_WIN32) #define ID3D12VideoMotionEstimator_GetDesc(This) \ ( (This)->lpVtbl -> GetDesc(This) ) +#else +#define ID3D12VideoMotionEstimator_GetDesc(This,RetVal) \ + ( (This)->lpVtbl -> GetDesc(This,RetVal) ) +#endif #define ID3D12VideoMotionEstimator_GetProtectedResourceSession(This,riid,ppProtectedSession) \ ( (This)->lpVtbl -> GetProtectedResourceSession(This,riid,ppProtectedSession) ) @@ -3214,17 +2978,6 @@ EXTERN_C const IID IID_ID3D12VideoMotionEstimator; -D3D12_VIDEO_MOTION_ESTIMATOR_DESC STDMETHODCALLTYPE ID3D12VideoMotionEstimator_GetDesc_Proxy( - ID3D12VideoMotionEstimator * This); - - -void __RPC_STUB ID3D12VideoMotionEstimator_GetDesc_Stub( - IRpcStubBuffer *This, - IRpcChannelBuffer *_pRpcChannelBuffer, - PRPC_MESSAGE _pRpcMessage, - DWORD *_pdwStubPhase); - - #endif /* __ID3D12VideoMotionEstimator_INTERFACE_DEFINED__ */ @@ -3261,12 +3014,15 @@ EXTERN_C const IID IID_ID3D12VideoMotionVectorHeap; ID3D12VideoMotionVectorHeap : public ID3D12Pageable { public: +#if defined(_MSC_VER) || !defined(_WIN32) virtual D3D12_VIDEO_MOTION_VECTOR_HEAP_DESC STDMETHODCALLTYPE GetDesc( void) = 0; +#else + virtual D3D12_VIDEO_MOTION_VECTOR_HEAP_DESC *STDMETHODCALLTYPE GetDesc( + D3D12_VIDEO_MOTION_VECTOR_HEAP_DESC * RetVal) = 0; +#endif virtual HRESULT STDMETHODCALLTYPE GetProtectedResourceSession( - /* [annotation][in] */ - _In_ REFIID riid, - /* [annotation][iid_is][out] */ + REFIID riid, _COM_Outptr_opt_ void **ppProtectedSession) = 0; }; @@ -3281,9 +3037,7 @@ EXTERN_C const IID IID_ID3D12VideoMotionVectorHeap; DECLSPEC_XFGVIRT(IUnknown, QueryInterface) HRESULT ( STDMETHODCALLTYPE *QueryInterface )( ID3D12VideoMotionVectorHeap * This, - /* [annotation][in] */ - _In_ REFIID riid, - /* [annotation][iid_is][out] */ + REFIID riid, _COM_Outptr_ void **ppvObject); DECLSPEC_XFGVIRT(IUnknown, AddRef) @@ -3297,55 +3051,50 @@ EXTERN_C const IID IID_ID3D12VideoMotionVectorHeap; DECLSPEC_XFGVIRT(ID3D12Object, GetPrivateData) HRESULT ( STDMETHODCALLTYPE *GetPrivateData )( ID3D12VideoMotionVectorHeap * This, - /* [annotation] */ _In_ REFGUID guid, - /* [annotation] */ _Inout_ UINT *pDataSize, - /* [annotation] */ _Out_writes_bytes_opt_( *pDataSize ) void *pData); DECLSPEC_XFGVIRT(ID3D12Object, SetPrivateData) HRESULT ( STDMETHODCALLTYPE *SetPrivateData )( ID3D12VideoMotionVectorHeap * This, - /* [annotation] */ _In_ REFGUID guid, - /* [annotation] */ _In_ UINT DataSize, - /* [annotation] */ _In_reads_bytes_opt_( DataSize ) const void *pData); DECLSPEC_XFGVIRT(ID3D12Object, SetPrivateDataInterface) HRESULT ( STDMETHODCALLTYPE *SetPrivateDataInterface )( ID3D12VideoMotionVectorHeap * This, - /* [annotation] */ _In_ REFGUID guid, - /* [annotation] */ _In_opt_ const IUnknown *pData); DECLSPEC_XFGVIRT(ID3D12Object, SetName) HRESULT ( STDMETHODCALLTYPE *SetName )( ID3D12VideoMotionVectorHeap * This, - /* [annotation] */ _In_z_ LPCWSTR Name); DECLSPEC_XFGVIRT(ID3D12DeviceChild, GetDevice) HRESULT ( STDMETHODCALLTYPE *GetDevice )( ID3D12VideoMotionVectorHeap * This, - /* [annotation][in] */ - _In_ REFIID riid, - /* [annotation][iid_is][out] */ + REFIID riid, _COM_Outptr_opt_ void **ppvDevice); DECLSPEC_XFGVIRT(ID3D12VideoMotionVectorHeap, GetDesc) +#if !defined(_WIN32) D3D12_VIDEO_MOTION_VECTOR_HEAP_DESC ( STDMETHODCALLTYPE *GetDesc )( ID3D12VideoMotionVectorHeap * This); +#else + D3D12_VIDEO_MOTION_VECTOR_HEAP_DESC *( STDMETHODCALLTYPE *GetDesc )( + ID3D12VideoMotionVectorHeap * This, + D3D12_VIDEO_MOTION_VECTOR_HEAP_DESC * RetVal); + +#endif + DECLSPEC_XFGVIRT(ID3D12VideoMotionVectorHeap, GetProtectedResourceSession) HRESULT ( STDMETHODCALLTYPE *GetProtectedResourceSession )( ID3D12VideoMotionVectorHeap * This, - /* [annotation][in] */ - _In_ REFIID riid, - /* [annotation][iid_is][out] */ + REFIID riid, _COM_Outptr_opt_ void **ppProtectedSession); END_INTERFACE @@ -3388,9 +3137,14 @@ EXTERN_C const IID IID_ID3D12VideoMotionVectorHeap; ( (This)->lpVtbl -> GetDevice(This,riid,ppvDevice) ) +#if !defined(_WIN32) #define ID3D12VideoMotionVectorHeap_GetDesc(This) \ ( (This)->lpVtbl -> GetDesc(This) ) +#else +#define ID3D12VideoMotionVectorHeap_GetDesc(This,RetVal) \ + ( (This)->lpVtbl -> GetDesc(This,RetVal) ) +#endif #define ID3D12VideoMotionVectorHeap_GetProtectedResourceSession(This,riid,ppProtectedSession) \ ( (This)->lpVtbl -> GetProtectedResourceSession(This,riid,ppProtectedSession) ) @@ -3402,17 +3156,6 @@ EXTERN_C const IID IID_ID3D12VideoMotionVectorHeap; -D3D12_VIDEO_MOTION_VECTOR_HEAP_DESC STDMETHODCALLTYPE ID3D12VideoMotionVectorHeap_GetDesc_Proxy( - ID3D12VideoMotionVectorHeap * This); - - -void __RPC_STUB ID3D12VideoMotionVectorHeap_GetDesc_Stub( - IRpcStubBuffer *This, - IRpcChannelBuffer *_pRpcChannelBuffer, - PRPC_MESSAGE _pRpcMessage, - DWORD *_pdwStubPhase); - - #endif /* __ID3D12VideoMotionVectorHeap_INTERFACE_DEFINED__ */ @@ -3433,23 +3176,15 @@ EXTERN_C const IID IID_ID3D12VideoDevice1; { public: virtual HRESULT STDMETHODCALLTYPE CreateVideoMotionEstimator( - /* [annotation] */ _In_ const D3D12_VIDEO_MOTION_ESTIMATOR_DESC *pDesc, - /* [annotation] */ _In_opt_ ID3D12ProtectedResourceSession *pProtectedResourceSession, - /* [annotation] */ _In_ REFIID riid, - /* [annotation][iid_is][out] */ _COM_Outptr_ void **ppVideoMotionEstimator) = 0; virtual HRESULT STDMETHODCALLTYPE CreateVideoMotionVectorHeap( - /* [annotation] */ _In_ const D3D12_VIDEO_MOTION_VECTOR_HEAP_DESC *pDesc, - /* [annotation] */ _In_opt_ ID3D12ProtectedResourceSession *pProtectedResourceSession, - /* [annotation] */ _In_ REFIID riid, - /* [annotation][iid_is][out] */ _COM_Outptr_ void **ppVideoMotionVectorHeap) = 0; }; @@ -3464,9 +3199,7 @@ EXTERN_C const IID IID_ID3D12VideoDevice1; DECLSPEC_XFGVIRT(IUnknown, QueryInterface) HRESULT ( STDMETHODCALLTYPE *QueryInterface )( ID3D12VideoDevice1 * This, - /* [annotation][in] */ - _In_ REFIID riid, - /* [annotation][iid_is][out] */ + REFIID riid, _COM_Outptr_ void **ppvObject); DECLSPEC_XFGVIRT(IUnknown, AddRef) @@ -3481,66 +3214,47 @@ EXTERN_C const IID IID_ID3D12VideoDevice1; HRESULT ( STDMETHODCALLTYPE *CheckFeatureSupport )( ID3D12VideoDevice1 * This, D3D12_FEATURE_VIDEO FeatureVideo, - /* [annotation] */ _Inout_updates_bytes_(FeatureSupportDataSize) void *pFeatureSupportData, UINT FeatureSupportDataSize); DECLSPEC_XFGVIRT(ID3D12VideoDevice, CreateVideoDecoder) HRESULT ( STDMETHODCALLTYPE *CreateVideoDecoder )( ID3D12VideoDevice1 * This, - /* [annotation] */ _In_ const D3D12_VIDEO_DECODER_DESC *pDesc, - /* [annotation] */ _In_ REFIID riid, - /* [annotation][iid_is][out] */ _COM_Outptr_ void **ppVideoDecoder); DECLSPEC_XFGVIRT(ID3D12VideoDevice, CreateVideoDecoderHeap) HRESULT ( STDMETHODCALLTYPE *CreateVideoDecoderHeap )( ID3D12VideoDevice1 * This, - /* [annotation] */ _In_ const D3D12_VIDEO_DECODER_HEAP_DESC *pVideoDecoderHeapDesc, - /* [annotation] */ _In_ REFIID riid, - /* [annotation][iid_is][out] */ _COM_Outptr_ void **ppVideoDecoderHeap); DECLSPEC_XFGVIRT(ID3D12VideoDevice, CreateVideoProcessor) HRESULT ( STDMETHODCALLTYPE *CreateVideoProcessor )( ID3D12VideoDevice1 * This, UINT NodeMask, - /* [annotation] */ _In_ const D3D12_VIDEO_PROCESS_OUTPUT_STREAM_DESC *pOutputStreamDesc, UINT NumInputStreamDescs, - /* [annotation] */ _In_reads_(NumInputStreamDescs) const D3D12_VIDEO_PROCESS_INPUT_STREAM_DESC *pInputStreamDescs, - /* [annotation] */ _In_ REFIID riid, - /* [annotation][iid_is][out] */ _COM_Outptr_ void **ppVideoProcessor); DECLSPEC_XFGVIRT(ID3D12VideoDevice1, CreateVideoMotionEstimator) HRESULT ( STDMETHODCALLTYPE *CreateVideoMotionEstimator )( ID3D12VideoDevice1 * This, - /* [annotation] */ _In_ const D3D12_VIDEO_MOTION_ESTIMATOR_DESC *pDesc, - /* [annotation] */ _In_opt_ ID3D12ProtectedResourceSession *pProtectedResourceSession, - /* [annotation] */ _In_ REFIID riid, - /* [annotation][iid_is][out] */ _COM_Outptr_ void **ppVideoMotionEstimator); DECLSPEC_XFGVIRT(ID3D12VideoDevice1, CreateVideoMotionVectorHeap) HRESULT ( STDMETHODCALLTYPE *CreateVideoMotionVectorHeap )( ID3D12VideoDevice1 * This, - /* [annotation] */ _In_ const D3D12_VIDEO_MOTION_VECTOR_HEAP_DESC *pDesc, - /* [annotation] */ _In_opt_ ID3D12ProtectedResourceSession *pProtectedResourceSession, - /* [annotation] */ _In_ REFIID riid, - /* [annotation][iid_is][out] */ _COM_Outptr_ void **ppVideoMotionVectorHeap); END_INTERFACE @@ -3657,81 +3371,56 @@ EXTERN_C const IID IID_ID3D12VideoEncodeCommandList; virtual HRESULT STDMETHODCALLTYPE Close( void) = 0; virtual HRESULT STDMETHODCALLTYPE Reset( - /* [annotation] */ _In_ ID3D12CommandAllocator *pAllocator) = 0; virtual void STDMETHODCALLTYPE ClearState( void) = 0; virtual void STDMETHODCALLTYPE ResourceBarrier( - /* [annotation] */ _In_ UINT NumBarriers, - /* [annotation] */ _In_reads_(NumBarriers) const D3D12_RESOURCE_BARRIER *pBarriers) = 0; virtual void STDMETHODCALLTYPE DiscardResource( - /* [annotation] */ _In_ ID3D12Resource *pResource, - /* [annotation] */ _In_opt_ const D3D12_DISCARD_REGION *pRegion) = 0; virtual void STDMETHODCALLTYPE BeginQuery( - /* [annotation] */ _In_ ID3D12QueryHeap *pQueryHeap, - /* [annotation] */ _In_ D3D12_QUERY_TYPE Type, - /* [annotation] */ _In_ UINT Index) = 0; virtual void STDMETHODCALLTYPE EndQuery( - /* [annotation] */ _In_ ID3D12QueryHeap *pQueryHeap, - /* [annotation] */ _In_ D3D12_QUERY_TYPE Type, - /* [annotation] */ _In_ UINT Index) = 0; virtual void STDMETHODCALLTYPE ResolveQueryData( - /* [annotation] */ _In_ ID3D12QueryHeap *pQueryHeap, - /* [annotation] */ _In_ D3D12_QUERY_TYPE Type, - /* [annotation] */ _In_ UINT StartIndex, - /* [annotation] */ _In_ UINT NumQueries, - /* [annotation] */ _In_ ID3D12Resource *pDestinationBuffer, - /* [annotation] */ _In_ UINT64 AlignedDestinationBufferOffset) = 0; virtual void STDMETHODCALLTYPE SetPredication( - /* [annotation] */ _In_opt_ ID3D12Resource *pBuffer, - /* [annotation] */ _In_ UINT64 AlignedBufferOffset, - /* [annotation] */ _In_ D3D12_PREDICATION_OP Operation) = 0; virtual void STDMETHODCALLTYPE SetMarker( UINT Metadata, - /* [annotation] */ _In_reads_bytes_opt_(Size) const void *pData, UINT Size) = 0; virtual void STDMETHODCALLTYPE BeginEvent( UINT Metadata, - /* [annotation] */ _In_reads_bytes_opt_(Size) const void *pData, UINT Size) = 0; virtual void STDMETHODCALLTYPE EndEvent( void) = 0; virtual void STDMETHODCALLTYPE EstimateMotion( - /* [annotation] */ _In_ ID3D12VideoMotionEstimator *pMotionEstimator, - /* [annotation] */ _In_ const D3D12_VIDEO_MOTION_ESTIMATOR_OUTPUT *pOutputArguments, - /* [annotation] */ _In_ const D3D12_VIDEO_MOTION_ESTIMATOR_INPUT *pInputArguments) = 0; virtual void STDMETHODCALLTYPE ResolveMotionVectorHeap( @@ -3740,13 +3429,10 @@ EXTERN_C const IID IID_ID3D12VideoEncodeCommandList; virtual void STDMETHODCALLTYPE WriteBufferImmediate( UINT Count, - /* [annotation] */ _In_reads_(Count) const D3D12_WRITEBUFFERIMMEDIATE_PARAMETER *pParams, - /* [annotation] */ _In_reads_opt_(Count) const D3D12_WRITEBUFFERIMMEDIATE_MODE *pModes) = 0; virtual void STDMETHODCALLTYPE SetProtectedResourceSession( - /* [annotation] */ _In_opt_ ID3D12ProtectedResourceSession *pProtectedResourceSession) = 0; }; @@ -3761,9 +3447,7 @@ EXTERN_C const IID IID_ID3D12VideoEncodeCommandList; DECLSPEC_XFGVIRT(IUnknown, QueryInterface) HRESULT ( STDMETHODCALLTYPE *QueryInterface )( ID3D12VideoEncodeCommandList * This, - /* [annotation][in] */ - _In_ REFIID riid, - /* [annotation][iid_is][out] */ + REFIID riid, _COM_Outptr_ void **ppvObject); DECLSPEC_XFGVIRT(IUnknown, AddRef) @@ -3777,43 +3461,32 @@ EXTERN_C const IID IID_ID3D12VideoEncodeCommandList; DECLSPEC_XFGVIRT(ID3D12Object, GetPrivateData) HRESULT ( STDMETHODCALLTYPE *GetPrivateData )( ID3D12VideoEncodeCommandList * This, - /* [annotation] */ _In_ REFGUID guid, - /* [annotation] */ _Inout_ UINT *pDataSize, - /* [annotation] */ _Out_writes_bytes_opt_( *pDataSize ) void *pData); DECLSPEC_XFGVIRT(ID3D12Object, SetPrivateData) HRESULT ( STDMETHODCALLTYPE *SetPrivateData )( ID3D12VideoEncodeCommandList * This, - /* [annotation] */ _In_ REFGUID guid, - /* [annotation] */ _In_ UINT DataSize, - /* [annotation] */ _In_reads_bytes_opt_( DataSize ) const void *pData); DECLSPEC_XFGVIRT(ID3D12Object, SetPrivateDataInterface) HRESULT ( STDMETHODCALLTYPE *SetPrivateDataInterface )( ID3D12VideoEncodeCommandList * This, - /* [annotation] */ _In_ REFGUID guid, - /* [annotation] */ _In_opt_ const IUnknown *pData); DECLSPEC_XFGVIRT(ID3D12Object, SetName) HRESULT ( STDMETHODCALLTYPE *SetName )( ID3D12VideoEncodeCommandList * This, - /* [annotation] */ _In_z_ LPCWSTR Name); DECLSPEC_XFGVIRT(ID3D12DeviceChild, GetDevice) HRESULT ( STDMETHODCALLTYPE *GetDevice )( ID3D12VideoEncodeCommandList * This, - /* [annotation][in] */ - _In_ REFIID riid, - /* [annotation][iid_is][out] */ + REFIID riid, _COM_Outptr_opt_ void **ppvDevice); DECLSPEC_XFGVIRT(ID3D12CommandList, GetType) @@ -3827,7 +3500,6 @@ EXTERN_C const IID IID_ID3D12VideoEncodeCommandList; DECLSPEC_XFGVIRT(ID3D12VideoEncodeCommandList, Reset) HRESULT ( STDMETHODCALLTYPE *Reset )( ID3D12VideoEncodeCommandList * This, - /* [annotation] */ _In_ ID3D12CommandAllocator *pAllocator); DECLSPEC_XFGVIRT(ID3D12VideoEncodeCommandList, ClearState) @@ -3837,70 +3509,50 @@ EXTERN_C const IID IID_ID3D12VideoEncodeCommandList; DECLSPEC_XFGVIRT(ID3D12VideoEncodeCommandList, ResourceBarrier) void ( STDMETHODCALLTYPE *ResourceBarrier )( ID3D12VideoEncodeCommandList * This, - /* [annotation] */ _In_ UINT NumBarriers, - /* [annotation] */ _In_reads_(NumBarriers) const D3D12_RESOURCE_BARRIER *pBarriers); DECLSPEC_XFGVIRT(ID3D12VideoEncodeCommandList, DiscardResource) void ( STDMETHODCALLTYPE *DiscardResource )( ID3D12VideoEncodeCommandList * This, - /* [annotation] */ _In_ ID3D12Resource *pResource, - /* [annotation] */ _In_opt_ const D3D12_DISCARD_REGION *pRegion); DECLSPEC_XFGVIRT(ID3D12VideoEncodeCommandList, BeginQuery) void ( STDMETHODCALLTYPE *BeginQuery )( ID3D12VideoEncodeCommandList * This, - /* [annotation] */ _In_ ID3D12QueryHeap *pQueryHeap, - /* [annotation] */ _In_ D3D12_QUERY_TYPE Type, - /* [annotation] */ _In_ UINT Index); DECLSPEC_XFGVIRT(ID3D12VideoEncodeCommandList, EndQuery) void ( STDMETHODCALLTYPE *EndQuery )( ID3D12VideoEncodeCommandList * This, - /* [annotation] */ _In_ ID3D12QueryHeap *pQueryHeap, - /* [annotation] */ _In_ D3D12_QUERY_TYPE Type, - /* [annotation] */ _In_ UINT Index); DECLSPEC_XFGVIRT(ID3D12VideoEncodeCommandList, ResolveQueryData) void ( STDMETHODCALLTYPE *ResolveQueryData )( ID3D12VideoEncodeCommandList * This, - /* [annotation] */ _In_ ID3D12QueryHeap *pQueryHeap, - /* [annotation] */ _In_ D3D12_QUERY_TYPE Type, - /* [annotation] */ _In_ UINT StartIndex, - /* [annotation] */ _In_ UINT NumQueries, - /* [annotation] */ _In_ ID3D12Resource *pDestinationBuffer, - /* [annotation] */ _In_ UINT64 AlignedDestinationBufferOffset); DECLSPEC_XFGVIRT(ID3D12VideoEncodeCommandList, SetPredication) void ( STDMETHODCALLTYPE *SetPredication )( ID3D12VideoEncodeCommandList * This, - /* [annotation] */ _In_opt_ ID3D12Resource *pBuffer, - /* [annotation] */ _In_ UINT64 AlignedBufferOffset, - /* [annotation] */ _In_ D3D12_PREDICATION_OP Operation); DECLSPEC_XFGVIRT(ID3D12VideoEncodeCommandList, SetMarker) void ( STDMETHODCALLTYPE *SetMarker )( ID3D12VideoEncodeCommandList * This, UINT Metadata, - /* [annotation] */ _In_reads_bytes_opt_(Size) const void *pData, UINT Size); @@ -3908,7 +3560,6 @@ EXTERN_C const IID IID_ID3D12VideoEncodeCommandList; void ( STDMETHODCALLTYPE *BeginEvent )( ID3D12VideoEncodeCommandList * This, UINT Metadata, - /* [annotation] */ _In_reads_bytes_opt_(Size) const void *pData, UINT Size); @@ -3919,11 +3570,8 @@ EXTERN_C const IID IID_ID3D12VideoEncodeCommandList; DECLSPEC_XFGVIRT(ID3D12VideoEncodeCommandList, EstimateMotion) void ( STDMETHODCALLTYPE *EstimateMotion )( ID3D12VideoEncodeCommandList * This, - /* [annotation] */ _In_ ID3D12VideoMotionEstimator *pMotionEstimator, - /* [annotation] */ _In_ const D3D12_VIDEO_MOTION_ESTIMATOR_OUTPUT *pOutputArguments, - /* [annotation] */ _In_ const D3D12_VIDEO_MOTION_ESTIMATOR_INPUT *pInputArguments); DECLSPEC_XFGVIRT(ID3D12VideoEncodeCommandList, ResolveMotionVectorHeap) @@ -3936,15 +3584,12 @@ EXTERN_C const IID IID_ID3D12VideoEncodeCommandList; void ( STDMETHODCALLTYPE *WriteBufferImmediate )( ID3D12VideoEncodeCommandList * This, UINT Count, - /* [annotation] */ _In_reads_(Count) const D3D12_WRITEBUFFERIMMEDIATE_PARAMETER *pParams, - /* [annotation] */ _In_reads_opt_(Count) const D3D12_WRITEBUFFERIMMEDIATE_MODE *pModes); DECLSPEC_XFGVIRT(ID3D12VideoEncodeCommandList, SetProtectedResourceSession) void ( STDMETHODCALLTYPE *SetProtectedResourceSession )( ID3D12VideoEncodeCommandList * This, - /* [annotation] */ _In_opt_ ID3D12ProtectedResourceSession *pProtectedResourceSession); END_INTERFACE @@ -4153,7 +3798,6 @@ typedef struct D3D12_FEATURE_DATA_VIDEO_EXTENSION_COMMANDS { UINT NodeIndex; UINT CommandCount; - /* [annotation] */ _Field_size_full_(CommandCount) D3D12_VIDEO_EXTENSION_COMMAND_INFO *pCommandInfos; } D3D12_FEATURE_DATA_VIDEO_EXTENSION_COMMANDS; @@ -4177,7 +3821,6 @@ typedef struct D3D12_FEATURE_DATA_VIDEO_EXTENSION_COMMAND_PARAMETERS GUID CommandId; D3D12_VIDEO_EXTENSION_COMMAND_PARAMETER_STAGE Stage; UINT ParameterCount; - /* [annotation] */ _Field_size_full_(ParameterCount) D3D12_VIDEO_EXTENSION_COMMAND_PARAMETER_INFO *pParameterInfos; } D3D12_FEATURE_DATA_VIDEO_EXTENSION_COMMAND_PARAMETERS; @@ -4185,10 +3828,8 @@ typedef struct D3D12_FEATURE_DATA_VIDEO_EXTENSION_COMMAND_SUPPORT { UINT NodeIndex; GUID CommandId; - /* [annotation] */ _Field_size_bytes_full_opt_(InputDataSizeInBytes) const void *pInputData; SIZE_T InputDataSizeInBytes; - /* [annotation] */ _Field_size_bytes_full_opt_(OutputDataSizeInBytes) void *pOutputData; SIZE_T OutputDataSizeInBytes; } D3D12_FEATURE_DATA_VIDEO_EXTENSION_COMMAND_SUPPORT; @@ -4197,7 +3838,6 @@ typedef struct D3D12_FEATURE_DATA_VIDEO_EXTENSION_COMMAND_SIZE { UINT NodeIndex; GUID CommandId; - /* [annotation] */ _Field_size_bytes_full_(CreationParametersDataSizeInBytes) const void *pCreationParameters; SIZE_T CreationParametersSizeInBytes; UINT64 MemoryPoolL0Size; @@ -4231,9 +3871,7 @@ EXTERN_C const IID IID_ID3D12VideoDecoder1; { public: virtual HRESULT STDMETHODCALLTYPE GetProtectedResourceSession( - /* [annotation][in] */ - _In_ REFIID riid, - /* [annotation][iid_is][out] */ + REFIID riid, _COM_Outptr_opt_ void **ppProtectedSession) = 0; }; @@ -4248,9 +3886,7 @@ EXTERN_C const IID IID_ID3D12VideoDecoder1; DECLSPEC_XFGVIRT(IUnknown, QueryInterface) HRESULT ( STDMETHODCALLTYPE *QueryInterface )( ID3D12VideoDecoder1 * This, - /* [annotation][in] */ - _In_ REFIID riid, - /* [annotation][iid_is][out] */ + REFIID riid, _COM_Outptr_ void **ppvObject); DECLSPEC_XFGVIRT(IUnknown, AddRef) @@ -4264,55 +3900,50 @@ EXTERN_C const IID IID_ID3D12VideoDecoder1; DECLSPEC_XFGVIRT(ID3D12Object, GetPrivateData) HRESULT ( STDMETHODCALLTYPE *GetPrivateData )( ID3D12VideoDecoder1 * This, - /* [annotation] */ _In_ REFGUID guid, - /* [annotation] */ _Inout_ UINT *pDataSize, - /* [annotation] */ _Out_writes_bytes_opt_( *pDataSize ) void *pData); DECLSPEC_XFGVIRT(ID3D12Object, SetPrivateData) HRESULT ( STDMETHODCALLTYPE *SetPrivateData )( ID3D12VideoDecoder1 * This, - /* [annotation] */ _In_ REFGUID guid, - /* [annotation] */ _In_ UINT DataSize, - /* [annotation] */ _In_reads_bytes_opt_( DataSize ) const void *pData); DECLSPEC_XFGVIRT(ID3D12Object, SetPrivateDataInterface) HRESULT ( STDMETHODCALLTYPE *SetPrivateDataInterface )( ID3D12VideoDecoder1 * This, - /* [annotation] */ _In_ REFGUID guid, - /* [annotation] */ _In_opt_ const IUnknown *pData); DECLSPEC_XFGVIRT(ID3D12Object, SetName) HRESULT ( STDMETHODCALLTYPE *SetName )( ID3D12VideoDecoder1 * This, - /* [annotation] */ _In_z_ LPCWSTR Name); DECLSPEC_XFGVIRT(ID3D12DeviceChild, GetDevice) HRESULT ( STDMETHODCALLTYPE *GetDevice )( ID3D12VideoDecoder1 * This, - /* [annotation][in] */ - _In_ REFIID riid, - /* [annotation][iid_is][out] */ + REFIID riid, _COM_Outptr_opt_ void **ppvDevice); DECLSPEC_XFGVIRT(ID3D12VideoDecoder, GetDesc) +#if !defined(_WIN32) D3D12_VIDEO_DECODER_DESC ( STDMETHODCALLTYPE *GetDesc )( ID3D12VideoDecoder1 * This); +#else + D3D12_VIDEO_DECODER_DESC *( STDMETHODCALLTYPE *GetDesc )( + ID3D12VideoDecoder1 * This, + D3D12_VIDEO_DECODER_DESC * RetVal); + +#endif + DECLSPEC_XFGVIRT(ID3D12VideoDecoder1, GetProtectedResourceSession) HRESULT ( STDMETHODCALLTYPE *GetProtectedResourceSession )( ID3D12VideoDecoder1 * This, - /* [annotation][in] */ - _In_ REFIID riid, - /* [annotation][iid_is][out] */ + REFIID riid, _COM_Outptr_opt_ void **ppProtectedSession); END_INTERFACE @@ -4355,9 +3986,14 @@ EXTERN_C const IID IID_ID3D12VideoDecoder1; ( (This)->lpVtbl -> GetDevice(This,riid,ppvDevice) ) +#if !defined(_WIN32) #define ID3D12VideoDecoder1_GetDesc(This) \ ( (This)->lpVtbl -> GetDesc(This) ) +#else +#define ID3D12VideoDecoder1_GetDesc(This,RetVal) \ + ( (This)->lpVtbl -> GetDesc(This,RetVal) ) +#endif #define ID3D12VideoDecoder1_GetProtectedResourceSession(This,riid,ppProtectedSession) \ @@ -4390,9 +4026,7 @@ EXTERN_C const IID IID_ID3D12VideoDecoderHeap1; { public: virtual HRESULT STDMETHODCALLTYPE GetProtectedResourceSession( - /* [annotation][in] */ - _In_ REFIID riid, - /* [annotation][iid_is][out] */ + REFIID riid, _COM_Outptr_opt_ void **ppProtectedSession) = 0; }; @@ -4407,9 +4041,7 @@ EXTERN_C const IID IID_ID3D12VideoDecoderHeap1; DECLSPEC_XFGVIRT(IUnknown, QueryInterface) HRESULT ( STDMETHODCALLTYPE *QueryInterface )( ID3D12VideoDecoderHeap1 * This, - /* [annotation][in] */ - _In_ REFIID riid, - /* [annotation][iid_is][out] */ + REFIID riid, _COM_Outptr_ void **ppvObject); DECLSPEC_XFGVIRT(IUnknown, AddRef) @@ -4423,55 +4055,50 @@ EXTERN_C const IID IID_ID3D12VideoDecoderHeap1; DECLSPEC_XFGVIRT(ID3D12Object, GetPrivateData) HRESULT ( STDMETHODCALLTYPE *GetPrivateData )( ID3D12VideoDecoderHeap1 * This, - /* [annotation] */ _In_ REFGUID guid, - /* [annotation] */ _Inout_ UINT *pDataSize, - /* [annotation] */ _Out_writes_bytes_opt_( *pDataSize ) void *pData); DECLSPEC_XFGVIRT(ID3D12Object, SetPrivateData) HRESULT ( STDMETHODCALLTYPE *SetPrivateData )( ID3D12VideoDecoderHeap1 * This, - /* [annotation] */ _In_ REFGUID guid, - /* [annotation] */ _In_ UINT DataSize, - /* [annotation] */ _In_reads_bytes_opt_( DataSize ) const void *pData); DECLSPEC_XFGVIRT(ID3D12Object, SetPrivateDataInterface) HRESULT ( STDMETHODCALLTYPE *SetPrivateDataInterface )( ID3D12VideoDecoderHeap1 * This, - /* [annotation] */ _In_ REFGUID guid, - /* [annotation] */ _In_opt_ const IUnknown *pData); DECLSPEC_XFGVIRT(ID3D12Object, SetName) HRESULT ( STDMETHODCALLTYPE *SetName )( ID3D12VideoDecoderHeap1 * This, - /* [annotation] */ _In_z_ LPCWSTR Name); DECLSPEC_XFGVIRT(ID3D12DeviceChild, GetDevice) HRESULT ( STDMETHODCALLTYPE *GetDevice )( ID3D12VideoDecoderHeap1 * This, - /* [annotation][in] */ - _In_ REFIID riid, - /* [annotation][iid_is][out] */ + REFIID riid, _COM_Outptr_opt_ void **ppvDevice); DECLSPEC_XFGVIRT(ID3D12VideoDecoderHeap, GetDesc) +#if !defined(_WIN32) D3D12_VIDEO_DECODER_HEAP_DESC ( STDMETHODCALLTYPE *GetDesc )( ID3D12VideoDecoderHeap1 * This); +#else + D3D12_VIDEO_DECODER_HEAP_DESC *( STDMETHODCALLTYPE *GetDesc )( + ID3D12VideoDecoderHeap1 * This, + D3D12_VIDEO_DECODER_HEAP_DESC * RetVal); + +#endif + DECLSPEC_XFGVIRT(ID3D12VideoDecoderHeap1, GetProtectedResourceSession) HRESULT ( STDMETHODCALLTYPE *GetProtectedResourceSession )( ID3D12VideoDecoderHeap1 * This, - /* [annotation][in] */ - _In_ REFIID riid, - /* [annotation][iid_is][out] */ + REFIID riid, _COM_Outptr_opt_ void **ppProtectedSession); END_INTERFACE @@ -4514,9 +4141,14 @@ EXTERN_C const IID IID_ID3D12VideoDecoderHeap1; ( (This)->lpVtbl -> GetDevice(This,riid,ppvDevice) ) +#if !defined(_WIN32) #define ID3D12VideoDecoderHeap1_GetDesc(This) \ ( (This)->lpVtbl -> GetDesc(This) ) +#else +#define ID3D12VideoDecoderHeap1_GetDesc(This,RetVal) \ + ( (This)->lpVtbl -> GetDesc(This,RetVal) ) +#endif #define ID3D12VideoDecoderHeap1_GetProtectedResourceSession(This,riid,ppProtectedSession) \ @@ -4549,9 +4181,7 @@ EXTERN_C const IID IID_ID3D12VideoProcessor1; { public: virtual HRESULT STDMETHODCALLTYPE GetProtectedResourceSession( - /* [annotation][in] */ - _In_ REFIID riid, - /* [annotation][iid_is][out] */ + REFIID riid, _COM_Outptr_opt_ void **ppProtectedSession) = 0; }; @@ -4566,9 +4196,7 @@ EXTERN_C const IID IID_ID3D12VideoProcessor1; DECLSPEC_XFGVIRT(IUnknown, QueryInterface) HRESULT ( STDMETHODCALLTYPE *QueryInterface )( ID3D12VideoProcessor1 * This, - /* [annotation][in] */ - _In_ REFIID riid, - /* [annotation][iid_is][out] */ + REFIID riid, _COM_Outptr_ void **ppvObject); DECLSPEC_XFGVIRT(IUnknown, AddRef) @@ -4582,43 +4210,32 @@ EXTERN_C const IID IID_ID3D12VideoProcessor1; DECLSPEC_XFGVIRT(ID3D12Object, GetPrivateData) HRESULT ( STDMETHODCALLTYPE *GetPrivateData )( ID3D12VideoProcessor1 * This, - /* [annotation] */ _In_ REFGUID guid, - /* [annotation] */ _Inout_ UINT *pDataSize, - /* [annotation] */ _Out_writes_bytes_opt_( *pDataSize ) void *pData); DECLSPEC_XFGVIRT(ID3D12Object, SetPrivateData) HRESULT ( STDMETHODCALLTYPE *SetPrivateData )( ID3D12VideoProcessor1 * This, - /* [annotation] */ _In_ REFGUID guid, - /* [annotation] */ _In_ UINT DataSize, - /* [annotation] */ _In_reads_bytes_opt_( DataSize ) const void *pData); DECLSPEC_XFGVIRT(ID3D12Object, SetPrivateDataInterface) HRESULT ( STDMETHODCALLTYPE *SetPrivateDataInterface )( ID3D12VideoProcessor1 * This, - /* [annotation] */ _In_ REFGUID guid, - /* [annotation] */ _In_opt_ const IUnknown *pData); DECLSPEC_XFGVIRT(ID3D12Object, SetName) HRESULT ( STDMETHODCALLTYPE *SetName )( ID3D12VideoProcessor1 * This, - /* [annotation] */ _In_z_ LPCWSTR Name); DECLSPEC_XFGVIRT(ID3D12DeviceChild, GetDevice) HRESULT ( STDMETHODCALLTYPE *GetDevice )( ID3D12VideoProcessor1 * This, - /* [annotation][in] */ - _In_ REFIID riid, - /* [annotation][iid_is][out] */ + REFIID riid, _COM_Outptr_opt_ void **ppvDevice); DECLSPEC_XFGVIRT(ID3D12VideoProcessor, GetNodeMask) @@ -4633,19 +4250,24 @@ EXTERN_C const IID IID_ID3D12VideoProcessor1; HRESULT ( STDMETHODCALLTYPE *GetInputStreamDescs )( ID3D12VideoProcessor1 * This, UINT NumInputStreamDescs, - /* [annotation] */ _Out_writes_(NumInputStreamDescs) D3D12_VIDEO_PROCESS_INPUT_STREAM_DESC *pInputStreamDescs); DECLSPEC_XFGVIRT(ID3D12VideoProcessor, GetOutputStreamDesc) +#if !defined(_WIN32) D3D12_VIDEO_PROCESS_OUTPUT_STREAM_DESC ( STDMETHODCALLTYPE *GetOutputStreamDesc )( ID3D12VideoProcessor1 * This); +#else + D3D12_VIDEO_PROCESS_OUTPUT_STREAM_DESC *( STDMETHODCALLTYPE *GetOutputStreamDesc )( + ID3D12VideoProcessor1 * This, + D3D12_VIDEO_PROCESS_OUTPUT_STREAM_DESC * RetVal); + +#endif + DECLSPEC_XFGVIRT(ID3D12VideoProcessor1, GetProtectedResourceSession) HRESULT ( STDMETHODCALLTYPE *GetProtectedResourceSession )( ID3D12VideoProcessor1 * This, - /* [annotation][in] */ - _In_ REFIID riid, - /* [annotation][iid_is][out] */ + REFIID riid, _COM_Outptr_opt_ void **ppProtectedSession); END_INTERFACE @@ -4697,9 +4319,14 @@ EXTERN_C const IID IID_ID3D12VideoProcessor1; #define ID3D12VideoProcessor1_GetInputStreamDescs(This,NumInputStreamDescs,pInputStreamDescs) \ ( (This)->lpVtbl -> GetInputStreamDescs(This,NumInputStreamDescs,pInputStreamDescs) ) +#if !defined(_WIN32) #define ID3D12VideoProcessor1_GetOutputStreamDesc(This) \ ( (This)->lpVtbl -> GetOutputStreamDesc(This) ) +#else +#define ID3D12VideoProcessor1_GetOutputStreamDesc(This,RetVal) \ + ( (This)->lpVtbl -> GetOutputStreamDesc(This,RetVal) ) +#endif #define ID3D12VideoProcessor1_GetProtectedResourceSession(This,riid,ppProtectedSession) \ @@ -4731,12 +4358,15 @@ EXTERN_C const IID IID_ID3D12VideoExtensionCommand; ID3D12VideoExtensionCommand : public ID3D12Pageable { public: +#if defined(_MSC_VER) || !defined(_WIN32) virtual D3D12_VIDEO_EXTENSION_COMMAND_DESC STDMETHODCALLTYPE GetDesc( void) = 0; +#else + virtual D3D12_VIDEO_EXTENSION_COMMAND_DESC *STDMETHODCALLTYPE GetDesc( + D3D12_VIDEO_EXTENSION_COMMAND_DESC * RetVal) = 0; +#endif virtual HRESULT STDMETHODCALLTYPE GetProtectedResourceSession( - /* [annotation][in] */ - _In_ REFIID riid, - /* [annotation][iid_is][out] */ + REFIID riid, _COM_Outptr_opt_ void **ppProtectedSession) = 0; }; @@ -4751,9 +4381,7 @@ EXTERN_C const IID IID_ID3D12VideoExtensionCommand; DECLSPEC_XFGVIRT(IUnknown, QueryInterface) HRESULT ( STDMETHODCALLTYPE *QueryInterface )( ID3D12VideoExtensionCommand * This, - /* [annotation][in] */ - _In_ REFIID riid, - /* [annotation][iid_is][out] */ + REFIID riid, _COM_Outptr_ void **ppvObject); DECLSPEC_XFGVIRT(IUnknown, AddRef) @@ -4767,55 +4395,50 @@ EXTERN_C const IID IID_ID3D12VideoExtensionCommand; DECLSPEC_XFGVIRT(ID3D12Object, GetPrivateData) HRESULT ( STDMETHODCALLTYPE *GetPrivateData )( ID3D12VideoExtensionCommand * This, - /* [annotation] */ _In_ REFGUID guid, - /* [annotation] */ _Inout_ UINT *pDataSize, - /* [annotation] */ _Out_writes_bytes_opt_( *pDataSize ) void *pData); DECLSPEC_XFGVIRT(ID3D12Object, SetPrivateData) HRESULT ( STDMETHODCALLTYPE *SetPrivateData )( ID3D12VideoExtensionCommand * This, - /* [annotation] */ _In_ REFGUID guid, - /* [annotation] */ _In_ UINT DataSize, - /* [annotation] */ _In_reads_bytes_opt_( DataSize ) const void *pData); DECLSPEC_XFGVIRT(ID3D12Object, SetPrivateDataInterface) HRESULT ( STDMETHODCALLTYPE *SetPrivateDataInterface )( ID3D12VideoExtensionCommand * This, - /* [annotation] */ _In_ REFGUID guid, - /* [annotation] */ _In_opt_ const IUnknown *pData); DECLSPEC_XFGVIRT(ID3D12Object, SetName) HRESULT ( STDMETHODCALLTYPE *SetName )( ID3D12VideoExtensionCommand * This, - /* [annotation] */ _In_z_ LPCWSTR Name); DECLSPEC_XFGVIRT(ID3D12DeviceChild, GetDevice) HRESULT ( STDMETHODCALLTYPE *GetDevice )( ID3D12VideoExtensionCommand * This, - /* [annotation][in] */ - _In_ REFIID riid, - /* [annotation][iid_is][out] */ + REFIID riid, _COM_Outptr_opt_ void **ppvDevice); DECLSPEC_XFGVIRT(ID3D12VideoExtensionCommand, GetDesc) +#if !defined(_WIN32) D3D12_VIDEO_EXTENSION_COMMAND_DESC ( STDMETHODCALLTYPE *GetDesc )( ID3D12VideoExtensionCommand * This); +#else + D3D12_VIDEO_EXTENSION_COMMAND_DESC *( STDMETHODCALLTYPE *GetDesc )( + ID3D12VideoExtensionCommand * This, + D3D12_VIDEO_EXTENSION_COMMAND_DESC * RetVal); + +#endif + DECLSPEC_XFGVIRT(ID3D12VideoExtensionCommand, GetProtectedResourceSession) HRESULT ( STDMETHODCALLTYPE *GetProtectedResourceSession )( ID3D12VideoExtensionCommand * This, - /* [annotation][in] */ - _In_ REFIID riid, - /* [annotation][iid_is][out] */ + REFIID riid, _COM_Outptr_opt_ void **ppProtectedSession); END_INTERFACE @@ -4858,9 +4481,14 @@ EXTERN_C const IID IID_ID3D12VideoExtensionCommand; ( (This)->lpVtbl -> GetDevice(This,riid,ppvDevice) ) +#if !defined(_WIN32) #define ID3D12VideoExtensionCommand_GetDesc(This) \ ( (This)->lpVtbl -> GetDesc(This) ) +#else +#define ID3D12VideoExtensionCommand_GetDesc(This,RetVal) \ + ( (This)->lpVtbl -> GetDesc(This,RetVal) ) +#endif #define ID3D12VideoExtensionCommand_GetProtectedResourceSession(This,riid,ppProtectedSession) \ ( (This)->lpVtbl -> GetProtectedResourceSession(This,riid,ppProtectedSession) ) @@ -4872,17 +4500,6 @@ EXTERN_C const IID IID_ID3D12VideoExtensionCommand; -D3D12_VIDEO_EXTENSION_COMMAND_DESC STDMETHODCALLTYPE ID3D12VideoExtensionCommand_GetDesc_Proxy( - ID3D12VideoExtensionCommand * This); - - -void __RPC_STUB ID3D12VideoExtensionCommand_GetDesc_Stub( - IRpcStubBuffer *This, - IRpcChannelBuffer *_pRpcChannelBuffer, - PRPC_MESSAGE _pRpcMessage, - DWORD *_pdwStubPhase); - - #endif /* __ID3D12VideoExtensionCommand_INTERFACE_DEFINED__ */ @@ -4903,59 +4520,38 @@ EXTERN_C const IID IID_ID3D12VideoDevice2; { public: virtual HRESULT STDMETHODCALLTYPE CreateVideoDecoder1( - /* [annotation] */ _In_ const D3D12_VIDEO_DECODER_DESC *pDesc, - /* [annotation] */ _In_opt_ ID3D12ProtectedResourceSession *pProtectedResourceSession, - /* [annotation] */ _In_ REFIID riid, - /* [annotation][iid_is][out] */ _COM_Outptr_ void **ppVideoDecoder) = 0; virtual HRESULT STDMETHODCALLTYPE CreateVideoDecoderHeap1( - /* [annotation] */ _In_ const D3D12_VIDEO_DECODER_HEAP_DESC *pVideoDecoderHeapDesc, - /* [annotation] */ _In_opt_ ID3D12ProtectedResourceSession *pProtectedResourceSession, - /* [annotation] */ _In_ REFIID riid, - /* [annotation][iid_is][out] */ _COM_Outptr_ void **ppVideoDecoderHeap) = 0; virtual HRESULT STDMETHODCALLTYPE CreateVideoProcessor1( UINT NodeMask, - /* [annotation] */ _In_ const D3D12_VIDEO_PROCESS_OUTPUT_STREAM_DESC *pOutputStreamDesc, UINT NumInputStreamDescs, - /* [annotation] */ _In_reads_(NumInputStreamDescs) const D3D12_VIDEO_PROCESS_INPUT_STREAM_DESC *pInputStreamDescs, - /* [annotation] */ _In_opt_ ID3D12ProtectedResourceSession *pProtectedResourceSession, - /* [annotation] */ _In_ REFIID riid, - /* [annotation][iid_is][out] */ _COM_Outptr_ void **ppVideoProcessor) = 0; virtual HRESULT STDMETHODCALLTYPE CreateVideoExtensionCommand( - /* [annotation] */ _In_ const D3D12_VIDEO_EXTENSION_COMMAND_DESC *pDesc, - /* [annotation] */ _In_reads_bytes_(CreationParametersDataSizeInBytes) const void *pCreationParameters, SIZE_T CreationParametersDataSizeInBytes, - /* [annotation] */ _In_opt_ ID3D12ProtectedResourceSession *pProtectedResourceSession, - /* [annotation] */ _In_ REFIID riid, - /* [annotation] */ _COM_Outptr_ void **ppVideoExtensionCommand) = 0; virtual HRESULT STDMETHODCALLTYPE ExecuteExtensionCommand( - /* [annotation] */ _In_ ID3D12VideoExtensionCommand *pExtensionCommand, - /* [annotation] */ _In_reads_bytes_(ExecutionParametersSizeInBytes) const void *pExecutionParameters, SIZE_T ExecutionParametersSizeInBytes, - /* [annotation] */ _Out_writes_bytes_(OutputDataSizeInBytes) void *pOutputData, SIZE_T OutputDataSizeInBytes) = 0; @@ -4971,9 +4567,7 @@ EXTERN_C const IID IID_ID3D12VideoDevice2; DECLSPEC_XFGVIRT(IUnknown, QueryInterface) HRESULT ( STDMETHODCALLTYPE *QueryInterface )( ID3D12VideoDevice2 * This, - /* [annotation][in] */ - _In_ REFIID riid, - /* [annotation][iid_is][out] */ + REFIID riid, _COM_Outptr_ void **ppvObject); DECLSPEC_XFGVIRT(IUnknown, AddRef) @@ -4988,132 +4582,92 @@ EXTERN_C const IID IID_ID3D12VideoDevice2; HRESULT ( STDMETHODCALLTYPE *CheckFeatureSupport )( ID3D12VideoDevice2 * This, D3D12_FEATURE_VIDEO FeatureVideo, - /* [annotation] */ _Inout_updates_bytes_(FeatureSupportDataSize) void *pFeatureSupportData, UINT FeatureSupportDataSize); DECLSPEC_XFGVIRT(ID3D12VideoDevice, CreateVideoDecoder) HRESULT ( STDMETHODCALLTYPE *CreateVideoDecoder )( ID3D12VideoDevice2 * This, - /* [annotation] */ _In_ const D3D12_VIDEO_DECODER_DESC *pDesc, - /* [annotation] */ _In_ REFIID riid, - /* [annotation][iid_is][out] */ _COM_Outptr_ void **ppVideoDecoder); DECLSPEC_XFGVIRT(ID3D12VideoDevice, CreateVideoDecoderHeap) HRESULT ( STDMETHODCALLTYPE *CreateVideoDecoderHeap )( ID3D12VideoDevice2 * This, - /* [annotation] */ _In_ const D3D12_VIDEO_DECODER_HEAP_DESC *pVideoDecoderHeapDesc, - /* [annotation] */ _In_ REFIID riid, - /* [annotation][iid_is][out] */ _COM_Outptr_ void **ppVideoDecoderHeap); DECLSPEC_XFGVIRT(ID3D12VideoDevice, CreateVideoProcessor) HRESULT ( STDMETHODCALLTYPE *CreateVideoProcessor )( ID3D12VideoDevice2 * This, UINT NodeMask, - /* [annotation] */ _In_ const D3D12_VIDEO_PROCESS_OUTPUT_STREAM_DESC *pOutputStreamDesc, UINT NumInputStreamDescs, - /* [annotation] */ _In_reads_(NumInputStreamDescs) const D3D12_VIDEO_PROCESS_INPUT_STREAM_DESC *pInputStreamDescs, - /* [annotation] */ _In_ REFIID riid, - /* [annotation][iid_is][out] */ _COM_Outptr_ void **ppVideoProcessor); DECLSPEC_XFGVIRT(ID3D12VideoDevice1, CreateVideoMotionEstimator) HRESULT ( STDMETHODCALLTYPE *CreateVideoMotionEstimator )( ID3D12VideoDevice2 * This, - /* [annotation] */ _In_ const D3D12_VIDEO_MOTION_ESTIMATOR_DESC *pDesc, - /* [annotation] */ _In_opt_ ID3D12ProtectedResourceSession *pProtectedResourceSession, - /* [annotation] */ _In_ REFIID riid, - /* [annotation][iid_is][out] */ _COM_Outptr_ void **ppVideoMotionEstimator); DECLSPEC_XFGVIRT(ID3D12VideoDevice1, CreateVideoMotionVectorHeap) HRESULT ( STDMETHODCALLTYPE *CreateVideoMotionVectorHeap )( ID3D12VideoDevice2 * This, - /* [annotation] */ _In_ const D3D12_VIDEO_MOTION_VECTOR_HEAP_DESC *pDesc, - /* [annotation] */ _In_opt_ ID3D12ProtectedResourceSession *pProtectedResourceSession, - /* [annotation] */ _In_ REFIID riid, - /* [annotation][iid_is][out] */ _COM_Outptr_ void **ppVideoMotionVectorHeap); DECLSPEC_XFGVIRT(ID3D12VideoDevice2, CreateVideoDecoder1) HRESULT ( STDMETHODCALLTYPE *CreateVideoDecoder1 )( ID3D12VideoDevice2 * This, - /* [annotation] */ _In_ const D3D12_VIDEO_DECODER_DESC *pDesc, - /* [annotation] */ _In_opt_ ID3D12ProtectedResourceSession *pProtectedResourceSession, - /* [annotation] */ _In_ REFIID riid, - /* [annotation][iid_is][out] */ _COM_Outptr_ void **ppVideoDecoder); DECLSPEC_XFGVIRT(ID3D12VideoDevice2, CreateVideoDecoderHeap1) HRESULT ( STDMETHODCALLTYPE *CreateVideoDecoderHeap1 )( ID3D12VideoDevice2 * This, - /* [annotation] */ _In_ const D3D12_VIDEO_DECODER_HEAP_DESC *pVideoDecoderHeapDesc, - /* [annotation] */ _In_opt_ ID3D12ProtectedResourceSession *pProtectedResourceSession, - /* [annotation] */ _In_ REFIID riid, - /* [annotation][iid_is][out] */ _COM_Outptr_ void **ppVideoDecoderHeap); DECLSPEC_XFGVIRT(ID3D12VideoDevice2, CreateVideoProcessor1) HRESULT ( STDMETHODCALLTYPE *CreateVideoProcessor1 )( ID3D12VideoDevice2 * This, UINT NodeMask, - /* [annotation] */ _In_ const D3D12_VIDEO_PROCESS_OUTPUT_STREAM_DESC *pOutputStreamDesc, UINT NumInputStreamDescs, - /* [annotation] */ _In_reads_(NumInputStreamDescs) const D3D12_VIDEO_PROCESS_INPUT_STREAM_DESC *pInputStreamDescs, - /* [annotation] */ _In_opt_ ID3D12ProtectedResourceSession *pProtectedResourceSession, - /* [annotation] */ _In_ REFIID riid, - /* [annotation][iid_is][out] */ _COM_Outptr_ void **ppVideoProcessor); DECLSPEC_XFGVIRT(ID3D12VideoDevice2, CreateVideoExtensionCommand) HRESULT ( STDMETHODCALLTYPE *CreateVideoExtensionCommand )( ID3D12VideoDevice2 * This, - /* [annotation] */ _In_ const D3D12_VIDEO_EXTENSION_COMMAND_DESC *pDesc, - /* [annotation] */ _In_reads_bytes_(CreationParametersDataSizeInBytes) const void *pCreationParameters, SIZE_T CreationParametersDataSizeInBytes, - /* [annotation] */ _In_opt_ ID3D12ProtectedResourceSession *pProtectedResourceSession, - /* [annotation] */ _In_ REFIID riid, - /* [annotation] */ _COM_Outptr_ void **ppVideoExtensionCommand); DECLSPEC_XFGVIRT(ID3D12VideoDevice2, ExecuteExtensionCommand) HRESULT ( STDMETHODCALLTYPE *ExecuteExtensionCommand )( ID3D12VideoDevice2 * This, - /* [annotation] */ _In_ ID3D12VideoExtensionCommand *pExtensionCommand, - /* [annotation] */ _In_reads_bytes_(ExecutionParametersSizeInBytes) const void *pExecutionParameters, SIZE_T ExecutionParametersSizeInBytes, - /* [annotation] */ _Out_writes_bytes_(OutputDataSizeInBytes) void *pOutputData, SIZE_T OutputDataSizeInBytes); @@ -5202,20 +4756,15 @@ EXTERN_C const IID IID_ID3D12VideoDecodeCommandList2; { public: virtual void STDMETHODCALLTYPE SetProtectedResourceSession( - /* [annotation] */ _In_opt_ ID3D12ProtectedResourceSession *pProtectedResourceSession) = 0; virtual void STDMETHODCALLTYPE InitializeExtensionCommand( - /* [annotation] */ _In_ ID3D12VideoExtensionCommand *pExtensionCommand, - /* [annotation] */ _In_reads_bytes_(InitializationParametersSizeInBytes) const void *pInitializationParameters, SIZE_T InitializationParametersSizeInBytes) = 0; virtual void STDMETHODCALLTYPE ExecuteExtensionCommand( - /* [annotation] */ _In_ ID3D12VideoExtensionCommand *pExtensionCommand, - /* [annotation] */ _In_reads_bytes_(ExecutionParametersSizeInBytes) const void *pExecutionParameters, SIZE_T ExecutionParametersSizeInBytes) = 0; @@ -5231,9 +4780,7 @@ EXTERN_C const IID IID_ID3D12VideoDecodeCommandList2; DECLSPEC_XFGVIRT(IUnknown, QueryInterface) HRESULT ( STDMETHODCALLTYPE *QueryInterface )( ID3D12VideoDecodeCommandList2 * This, - /* [annotation][in] */ - _In_ REFIID riid, - /* [annotation][iid_is][out] */ + REFIID riid, _COM_Outptr_ void **ppvObject); DECLSPEC_XFGVIRT(IUnknown, AddRef) @@ -5247,43 +4794,32 @@ EXTERN_C const IID IID_ID3D12VideoDecodeCommandList2; DECLSPEC_XFGVIRT(ID3D12Object, GetPrivateData) HRESULT ( STDMETHODCALLTYPE *GetPrivateData )( ID3D12VideoDecodeCommandList2 * This, - /* [annotation] */ _In_ REFGUID guid, - /* [annotation] */ _Inout_ UINT *pDataSize, - /* [annotation] */ _Out_writes_bytes_opt_( *pDataSize ) void *pData); DECLSPEC_XFGVIRT(ID3D12Object, SetPrivateData) HRESULT ( STDMETHODCALLTYPE *SetPrivateData )( ID3D12VideoDecodeCommandList2 * This, - /* [annotation] */ _In_ REFGUID guid, - /* [annotation] */ _In_ UINT DataSize, - /* [annotation] */ _In_reads_bytes_opt_( DataSize ) const void *pData); DECLSPEC_XFGVIRT(ID3D12Object, SetPrivateDataInterface) HRESULT ( STDMETHODCALLTYPE *SetPrivateDataInterface )( ID3D12VideoDecodeCommandList2 * This, - /* [annotation] */ _In_ REFGUID guid, - /* [annotation] */ _In_opt_ const IUnknown *pData); DECLSPEC_XFGVIRT(ID3D12Object, SetName) HRESULT ( STDMETHODCALLTYPE *SetName )( ID3D12VideoDecodeCommandList2 * This, - /* [annotation] */ _In_z_ LPCWSTR Name); DECLSPEC_XFGVIRT(ID3D12DeviceChild, GetDevice) HRESULT ( STDMETHODCALLTYPE *GetDevice )( ID3D12VideoDecodeCommandList2 * This, - /* [annotation][in] */ - _In_ REFIID riid, - /* [annotation][iid_is][out] */ + REFIID riid, _COM_Outptr_opt_ void **ppvDevice); DECLSPEC_XFGVIRT(ID3D12CommandList, GetType) @@ -5297,7 +4833,6 @@ EXTERN_C const IID IID_ID3D12VideoDecodeCommandList2; DECLSPEC_XFGVIRT(ID3D12VideoDecodeCommandList, Reset) HRESULT ( STDMETHODCALLTYPE *Reset )( ID3D12VideoDecodeCommandList2 * This, - /* [annotation] */ _In_ ID3D12CommandAllocator *pAllocator); DECLSPEC_XFGVIRT(ID3D12VideoDecodeCommandList, ClearState) @@ -5307,70 +4842,50 @@ EXTERN_C const IID IID_ID3D12VideoDecodeCommandList2; DECLSPEC_XFGVIRT(ID3D12VideoDecodeCommandList, ResourceBarrier) void ( STDMETHODCALLTYPE *ResourceBarrier )( ID3D12VideoDecodeCommandList2 * This, - /* [annotation] */ _In_ UINT NumBarriers, - /* [annotation] */ _In_reads_(NumBarriers) const D3D12_RESOURCE_BARRIER *pBarriers); DECLSPEC_XFGVIRT(ID3D12VideoDecodeCommandList, DiscardResource) void ( STDMETHODCALLTYPE *DiscardResource )( ID3D12VideoDecodeCommandList2 * This, - /* [annotation] */ _In_ ID3D12Resource *pResource, - /* [annotation] */ _In_opt_ const D3D12_DISCARD_REGION *pRegion); DECLSPEC_XFGVIRT(ID3D12VideoDecodeCommandList, BeginQuery) void ( STDMETHODCALLTYPE *BeginQuery )( ID3D12VideoDecodeCommandList2 * This, - /* [annotation] */ _In_ ID3D12QueryHeap *pQueryHeap, - /* [annotation] */ _In_ D3D12_QUERY_TYPE Type, - /* [annotation] */ _In_ UINT Index); DECLSPEC_XFGVIRT(ID3D12VideoDecodeCommandList, EndQuery) void ( STDMETHODCALLTYPE *EndQuery )( ID3D12VideoDecodeCommandList2 * This, - /* [annotation] */ _In_ ID3D12QueryHeap *pQueryHeap, - /* [annotation] */ _In_ D3D12_QUERY_TYPE Type, - /* [annotation] */ _In_ UINT Index); DECLSPEC_XFGVIRT(ID3D12VideoDecodeCommandList, ResolveQueryData) void ( STDMETHODCALLTYPE *ResolveQueryData )( ID3D12VideoDecodeCommandList2 * This, - /* [annotation] */ _In_ ID3D12QueryHeap *pQueryHeap, - /* [annotation] */ _In_ D3D12_QUERY_TYPE Type, - /* [annotation] */ _In_ UINT StartIndex, - /* [annotation] */ _In_ UINT NumQueries, - /* [annotation] */ _In_ ID3D12Resource *pDestinationBuffer, - /* [annotation] */ _In_ UINT64 AlignedDestinationBufferOffset); DECLSPEC_XFGVIRT(ID3D12VideoDecodeCommandList, SetPredication) void ( STDMETHODCALLTYPE *SetPredication )( ID3D12VideoDecodeCommandList2 * This, - /* [annotation] */ _In_opt_ ID3D12Resource *pBuffer, - /* [annotation] */ _In_ UINT64 AlignedBufferOffset, - /* [annotation] */ _In_ D3D12_PREDICATION_OP Operation); DECLSPEC_XFGVIRT(ID3D12VideoDecodeCommandList, SetMarker) void ( STDMETHODCALLTYPE *SetMarker )( ID3D12VideoDecodeCommandList2 * This, UINT Metadata, - /* [annotation] */ _In_reads_bytes_opt_(Size) const void *pData, UINT Size); @@ -5378,7 +4893,6 @@ EXTERN_C const IID IID_ID3D12VideoDecodeCommandList2; void ( STDMETHODCALLTYPE *BeginEvent )( ID3D12VideoDecodeCommandList2 * This, UINT Metadata, - /* [annotation] */ _In_reads_bytes_opt_(Size) const void *pData, UINT Size); @@ -5389,53 +4903,40 @@ EXTERN_C const IID IID_ID3D12VideoDecodeCommandList2; DECLSPEC_XFGVIRT(ID3D12VideoDecodeCommandList, DecodeFrame) void ( STDMETHODCALLTYPE *DecodeFrame )( ID3D12VideoDecodeCommandList2 * This, - /* [annotation] */ _In_ ID3D12VideoDecoder *pDecoder, - /* [annotation] */ _In_ const D3D12_VIDEO_DECODE_OUTPUT_STREAM_ARGUMENTS *pOutputArguments, - /* [annotation] */ _In_ const D3D12_VIDEO_DECODE_INPUT_STREAM_ARGUMENTS *pInputArguments); DECLSPEC_XFGVIRT(ID3D12VideoDecodeCommandList, WriteBufferImmediate) void ( STDMETHODCALLTYPE *WriteBufferImmediate )( ID3D12VideoDecodeCommandList2 * This, UINT Count, - /* [annotation] */ _In_reads_(Count) const D3D12_WRITEBUFFERIMMEDIATE_PARAMETER *pParams, - /* [annotation] */ _In_reads_opt_(Count) const D3D12_WRITEBUFFERIMMEDIATE_MODE *pModes); DECLSPEC_XFGVIRT(ID3D12VideoDecodeCommandList1, DecodeFrame1) void ( STDMETHODCALLTYPE *DecodeFrame1 )( ID3D12VideoDecodeCommandList2 * This, - /* [annotation] */ _In_ ID3D12VideoDecoder *pDecoder, - /* [annotation] */ _In_ const D3D12_VIDEO_DECODE_OUTPUT_STREAM_ARGUMENTS1 *pOutputArguments, - /* [annotation] */ _In_ const D3D12_VIDEO_DECODE_INPUT_STREAM_ARGUMENTS *pInputArguments); DECLSPEC_XFGVIRT(ID3D12VideoDecodeCommandList2, SetProtectedResourceSession) void ( STDMETHODCALLTYPE *SetProtectedResourceSession )( ID3D12VideoDecodeCommandList2 * This, - /* [annotation] */ _In_opt_ ID3D12ProtectedResourceSession *pProtectedResourceSession); DECLSPEC_XFGVIRT(ID3D12VideoDecodeCommandList2, InitializeExtensionCommand) void ( STDMETHODCALLTYPE *InitializeExtensionCommand )( ID3D12VideoDecodeCommandList2 * This, - /* [annotation] */ _In_ ID3D12VideoExtensionCommand *pExtensionCommand, - /* [annotation] */ _In_reads_bytes_(InitializationParametersSizeInBytes) const void *pInitializationParameters, SIZE_T InitializationParametersSizeInBytes); DECLSPEC_XFGVIRT(ID3D12VideoDecodeCommandList2, ExecuteExtensionCommand) void ( STDMETHODCALLTYPE *ExecuteExtensionCommand )( ID3D12VideoDecodeCommandList2 * This, - /* [annotation] */ _In_ ID3D12VideoExtensionCommand *pExtensionCommand, - /* [annotation] */ _In_reads_bytes_(ExecutionParametersSizeInBytes) const void *pExecutionParameters, SIZE_T ExecutionParametersSizeInBytes); @@ -5550,258 +5051,517 @@ EXTERN_C const IID IID_ID3D12VideoDecodeCommandList2; #endif /* __ID3D12VideoDecodeCommandList2_INTERFACE_DEFINED__ */ -#ifndef __ID3D12VideoProcessCommandList2_INTERFACE_DEFINED__ -#define __ID3D12VideoProcessCommandList2_INTERFACE_DEFINED__ +#ifndef __ID3D12VideoDecodeCommandList3_INTERFACE_DEFINED__ +#define __ID3D12VideoDecodeCommandList3_INTERFACE_DEFINED__ -/* interface ID3D12VideoProcessCommandList2 */ +/* interface ID3D12VideoDecodeCommandList3 */ /* [unique][local][object][uuid] */ -EXTERN_C const IID IID_ID3D12VideoProcessCommandList2; +EXTERN_C const IID IID_ID3D12VideoDecodeCommandList3; #if defined(__cplusplus) && !defined(CINTERFACE) - MIDL_INTERFACE("db525ae4-6ad6-473c-baa7-59b2e37082e4") - ID3D12VideoProcessCommandList2 : public ID3D12VideoProcessCommandList1 + MIDL_INTERFACE("2aee8c37-9562-42da-8abf-61efeb2e4513") + ID3D12VideoDecodeCommandList3 : public ID3D12VideoDecodeCommandList2 { public: - virtual void STDMETHODCALLTYPE SetProtectedResourceSession( - /* [annotation] */ - _In_opt_ ID3D12ProtectedResourceSession *pProtectedResourceSession) = 0; - - virtual void STDMETHODCALLTYPE InitializeExtensionCommand( - /* [annotation] */ - _In_ ID3D12VideoExtensionCommand *pExtensionCommand, - /* [annotation] */ - _In_reads_bytes_(InitializationParametersSizeInBytes) const void *pInitializationParameters, - SIZE_T InitializationParametersSizeInBytes) = 0; - - virtual void STDMETHODCALLTYPE ExecuteExtensionCommand( - /* [annotation] */ - _In_ ID3D12VideoExtensionCommand *pExtensionCommand, - /* [annotation] */ - _In_reads_bytes_(ExecutionParametersSizeInBytes) const void *pExecutionParameters, - SIZE_T ExecutionParametersSizeInBytes) = 0; + virtual void STDMETHODCALLTYPE Barrier( + UINT32 NumBarrierGroups, + _In_reads_(NumBarrierGroups) const D3D12_BARRIER_GROUP *pBarrierGroups) = 0; }; #else /* C style interface */ - typedef struct ID3D12VideoProcessCommandList2Vtbl + typedef struct ID3D12VideoDecodeCommandList3Vtbl { BEGIN_INTERFACE DECLSPEC_XFGVIRT(IUnknown, QueryInterface) HRESULT ( STDMETHODCALLTYPE *QueryInterface )( - ID3D12VideoProcessCommandList2 * This, - /* [annotation][in] */ - _In_ REFIID riid, - /* [annotation][iid_is][out] */ + ID3D12VideoDecodeCommandList3 * This, + REFIID riid, _COM_Outptr_ void **ppvObject); DECLSPEC_XFGVIRT(IUnknown, AddRef) ULONG ( STDMETHODCALLTYPE *AddRef )( - ID3D12VideoProcessCommandList2 * This); + ID3D12VideoDecodeCommandList3 * This); DECLSPEC_XFGVIRT(IUnknown, Release) ULONG ( STDMETHODCALLTYPE *Release )( - ID3D12VideoProcessCommandList2 * This); + ID3D12VideoDecodeCommandList3 * This); DECLSPEC_XFGVIRT(ID3D12Object, GetPrivateData) HRESULT ( STDMETHODCALLTYPE *GetPrivateData )( - ID3D12VideoProcessCommandList2 * This, - /* [annotation] */ + ID3D12VideoDecodeCommandList3 * This, _In_ REFGUID guid, - /* [annotation] */ _Inout_ UINT *pDataSize, - /* [annotation] */ _Out_writes_bytes_opt_( *pDataSize ) void *pData); DECLSPEC_XFGVIRT(ID3D12Object, SetPrivateData) HRESULT ( STDMETHODCALLTYPE *SetPrivateData )( - ID3D12VideoProcessCommandList2 * This, - /* [annotation] */ + ID3D12VideoDecodeCommandList3 * This, _In_ REFGUID guid, - /* [annotation] */ _In_ UINT DataSize, - /* [annotation] */ _In_reads_bytes_opt_( DataSize ) const void *pData); DECLSPEC_XFGVIRT(ID3D12Object, SetPrivateDataInterface) HRESULT ( STDMETHODCALLTYPE *SetPrivateDataInterface )( - ID3D12VideoProcessCommandList2 * This, - /* [annotation] */ + ID3D12VideoDecodeCommandList3 * This, _In_ REFGUID guid, - /* [annotation] */ _In_opt_ const IUnknown *pData); DECLSPEC_XFGVIRT(ID3D12Object, SetName) HRESULT ( STDMETHODCALLTYPE *SetName )( - ID3D12VideoProcessCommandList2 * This, - /* [annotation] */ + ID3D12VideoDecodeCommandList3 * This, _In_z_ LPCWSTR Name); DECLSPEC_XFGVIRT(ID3D12DeviceChild, GetDevice) HRESULT ( STDMETHODCALLTYPE *GetDevice )( - ID3D12VideoProcessCommandList2 * This, - /* [annotation][in] */ - _In_ REFIID riid, - /* [annotation][iid_is][out] */ + ID3D12VideoDecodeCommandList3 * This, + REFIID riid, _COM_Outptr_opt_ void **ppvDevice); DECLSPEC_XFGVIRT(ID3D12CommandList, GetType) D3D12_COMMAND_LIST_TYPE ( STDMETHODCALLTYPE *GetType )( - ID3D12VideoProcessCommandList2 * This); + ID3D12VideoDecodeCommandList3 * This); - DECLSPEC_XFGVIRT(ID3D12VideoProcessCommandList, Close) + DECLSPEC_XFGVIRT(ID3D12VideoDecodeCommandList, Close) HRESULT ( STDMETHODCALLTYPE *Close )( - ID3D12VideoProcessCommandList2 * This); + ID3D12VideoDecodeCommandList3 * This); - DECLSPEC_XFGVIRT(ID3D12VideoProcessCommandList, Reset) + DECLSPEC_XFGVIRT(ID3D12VideoDecodeCommandList, Reset) HRESULT ( STDMETHODCALLTYPE *Reset )( - ID3D12VideoProcessCommandList2 * This, - /* [annotation] */ + ID3D12VideoDecodeCommandList3 * This, _In_ ID3D12CommandAllocator *pAllocator); - DECLSPEC_XFGVIRT(ID3D12VideoProcessCommandList, ClearState) + DECLSPEC_XFGVIRT(ID3D12VideoDecodeCommandList, ClearState) void ( STDMETHODCALLTYPE *ClearState )( - ID3D12VideoProcessCommandList2 * This); + ID3D12VideoDecodeCommandList3 * This); - DECLSPEC_XFGVIRT(ID3D12VideoProcessCommandList, ResourceBarrier) + DECLSPEC_XFGVIRT(ID3D12VideoDecodeCommandList, ResourceBarrier) void ( STDMETHODCALLTYPE *ResourceBarrier )( - ID3D12VideoProcessCommandList2 * This, - /* [annotation] */ + ID3D12VideoDecodeCommandList3 * This, _In_ UINT NumBarriers, - /* [annotation] */ _In_reads_(NumBarriers) const D3D12_RESOURCE_BARRIER *pBarriers); - DECLSPEC_XFGVIRT(ID3D12VideoProcessCommandList, DiscardResource) + DECLSPEC_XFGVIRT(ID3D12VideoDecodeCommandList, DiscardResource) void ( STDMETHODCALLTYPE *DiscardResource )( - ID3D12VideoProcessCommandList2 * This, - /* [annotation] */ + ID3D12VideoDecodeCommandList3 * This, _In_ ID3D12Resource *pResource, - /* [annotation] */ _In_opt_ const D3D12_DISCARD_REGION *pRegion); - DECLSPEC_XFGVIRT(ID3D12VideoProcessCommandList, BeginQuery) + DECLSPEC_XFGVIRT(ID3D12VideoDecodeCommandList, BeginQuery) void ( STDMETHODCALLTYPE *BeginQuery )( - ID3D12VideoProcessCommandList2 * This, - /* [annotation] */ + ID3D12VideoDecodeCommandList3 * This, _In_ ID3D12QueryHeap *pQueryHeap, - /* [annotation] */ _In_ D3D12_QUERY_TYPE Type, - /* [annotation] */ _In_ UINT Index); - DECLSPEC_XFGVIRT(ID3D12VideoProcessCommandList, EndQuery) + DECLSPEC_XFGVIRT(ID3D12VideoDecodeCommandList, EndQuery) void ( STDMETHODCALLTYPE *EndQuery )( - ID3D12VideoProcessCommandList2 * This, - /* [annotation] */ + ID3D12VideoDecodeCommandList3 * This, _In_ ID3D12QueryHeap *pQueryHeap, - /* [annotation] */ _In_ D3D12_QUERY_TYPE Type, - /* [annotation] */ _In_ UINT Index); - DECLSPEC_XFGVIRT(ID3D12VideoProcessCommandList, ResolveQueryData) + DECLSPEC_XFGVIRT(ID3D12VideoDecodeCommandList, ResolveQueryData) void ( STDMETHODCALLTYPE *ResolveQueryData )( - ID3D12VideoProcessCommandList2 * This, - /* [annotation] */ + ID3D12VideoDecodeCommandList3 * This, _In_ ID3D12QueryHeap *pQueryHeap, - /* [annotation] */ _In_ D3D12_QUERY_TYPE Type, - /* [annotation] */ _In_ UINT StartIndex, - /* [annotation] */ _In_ UINT NumQueries, - /* [annotation] */ _In_ ID3D12Resource *pDestinationBuffer, - /* [annotation] */ _In_ UINT64 AlignedDestinationBufferOffset); - DECLSPEC_XFGVIRT(ID3D12VideoProcessCommandList, SetPredication) + DECLSPEC_XFGVIRT(ID3D12VideoDecodeCommandList, SetPredication) void ( STDMETHODCALLTYPE *SetPredication )( - ID3D12VideoProcessCommandList2 * This, - /* [annotation] */ + ID3D12VideoDecodeCommandList3 * This, _In_opt_ ID3D12Resource *pBuffer, - /* [annotation] */ _In_ UINT64 AlignedBufferOffset, - /* [annotation] */ _In_ D3D12_PREDICATION_OP Operation); - DECLSPEC_XFGVIRT(ID3D12VideoProcessCommandList, SetMarker) + DECLSPEC_XFGVIRT(ID3D12VideoDecodeCommandList, SetMarker) void ( STDMETHODCALLTYPE *SetMarker )( - ID3D12VideoProcessCommandList2 * This, + ID3D12VideoDecodeCommandList3 * This, UINT Metadata, - /* [annotation] */ _In_reads_bytes_opt_(Size) const void *pData, UINT Size); - DECLSPEC_XFGVIRT(ID3D12VideoProcessCommandList, BeginEvent) + DECLSPEC_XFGVIRT(ID3D12VideoDecodeCommandList, BeginEvent) void ( STDMETHODCALLTYPE *BeginEvent )( - ID3D12VideoProcessCommandList2 * This, + ID3D12VideoDecodeCommandList3 * This, UINT Metadata, - /* [annotation] */ _In_reads_bytes_opt_(Size) const void *pData, UINT Size); - DECLSPEC_XFGVIRT(ID3D12VideoProcessCommandList, EndEvent) + DECLSPEC_XFGVIRT(ID3D12VideoDecodeCommandList, EndEvent) void ( STDMETHODCALLTYPE *EndEvent )( - ID3D12VideoProcessCommandList2 * This); + ID3D12VideoDecodeCommandList3 * This); - DECLSPEC_XFGVIRT(ID3D12VideoProcessCommandList, ProcessFrames) - void ( STDMETHODCALLTYPE *ProcessFrames )( - ID3D12VideoProcessCommandList2 * This, - /* [annotation] */ - _In_ ID3D12VideoProcessor *pVideoProcessor, - /* [annotation] */ - _In_ const D3D12_VIDEO_PROCESS_OUTPUT_STREAM_ARGUMENTS *pOutputArguments, - UINT NumInputStreams, - /* [annotation] */ - _In_reads_(NumInputStreams) const D3D12_VIDEO_PROCESS_INPUT_STREAM_ARGUMENTS *pInputArguments); + DECLSPEC_XFGVIRT(ID3D12VideoDecodeCommandList, DecodeFrame) + void ( STDMETHODCALLTYPE *DecodeFrame )( + ID3D12VideoDecodeCommandList3 * This, + _In_ ID3D12VideoDecoder *pDecoder, + _In_ const D3D12_VIDEO_DECODE_OUTPUT_STREAM_ARGUMENTS *pOutputArguments, + _In_ const D3D12_VIDEO_DECODE_INPUT_STREAM_ARGUMENTS *pInputArguments); - DECLSPEC_XFGVIRT(ID3D12VideoProcessCommandList, WriteBufferImmediate) + DECLSPEC_XFGVIRT(ID3D12VideoDecodeCommandList, WriteBufferImmediate) void ( STDMETHODCALLTYPE *WriteBufferImmediate )( - ID3D12VideoProcessCommandList2 * This, + ID3D12VideoDecodeCommandList3 * This, UINT Count, - /* [annotation] */ _In_reads_(Count) const D3D12_WRITEBUFFERIMMEDIATE_PARAMETER *pParams, - /* [annotation] */ _In_reads_opt_(Count) const D3D12_WRITEBUFFERIMMEDIATE_MODE *pModes); - DECLSPEC_XFGVIRT(ID3D12VideoProcessCommandList1, ProcessFrames1) - void ( STDMETHODCALLTYPE *ProcessFrames1 )( - ID3D12VideoProcessCommandList2 * This, - /* [annotation] */ - _In_ ID3D12VideoProcessor *pVideoProcessor, - /* [annotation] */ - _In_ const D3D12_VIDEO_PROCESS_OUTPUT_STREAM_ARGUMENTS *pOutputArguments, - UINT NumInputStreams, - /* [annotation] */ - _In_reads_(NumInputStreams) const D3D12_VIDEO_PROCESS_INPUT_STREAM_ARGUMENTS1 *pInputArguments); + DECLSPEC_XFGVIRT(ID3D12VideoDecodeCommandList1, DecodeFrame1) + void ( STDMETHODCALLTYPE *DecodeFrame1 )( + ID3D12VideoDecodeCommandList3 * This, + _In_ ID3D12VideoDecoder *pDecoder, + _In_ const D3D12_VIDEO_DECODE_OUTPUT_STREAM_ARGUMENTS1 *pOutputArguments, + _In_ const D3D12_VIDEO_DECODE_INPUT_STREAM_ARGUMENTS *pInputArguments); - DECLSPEC_XFGVIRT(ID3D12VideoProcessCommandList2, SetProtectedResourceSession) + DECLSPEC_XFGVIRT(ID3D12VideoDecodeCommandList2, SetProtectedResourceSession) void ( STDMETHODCALLTYPE *SetProtectedResourceSession )( - ID3D12VideoProcessCommandList2 * This, - /* [annotation] */ + ID3D12VideoDecodeCommandList3 * This, _In_opt_ ID3D12ProtectedResourceSession *pProtectedResourceSession); - DECLSPEC_XFGVIRT(ID3D12VideoProcessCommandList2, InitializeExtensionCommand) + DECLSPEC_XFGVIRT(ID3D12VideoDecodeCommandList2, InitializeExtensionCommand) void ( STDMETHODCALLTYPE *InitializeExtensionCommand )( - ID3D12VideoProcessCommandList2 * This, - /* [annotation] */ + ID3D12VideoDecodeCommandList3 * This, _In_ ID3D12VideoExtensionCommand *pExtensionCommand, - /* [annotation] */ _In_reads_bytes_(InitializationParametersSizeInBytes) const void *pInitializationParameters, SIZE_T InitializationParametersSizeInBytes); - DECLSPEC_XFGVIRT(ID3D12VideoProcessCommandList2, ExecuteExtensionCommand) + DECLSPEC_XFGVIRT(ID3D12VideoDecodeCommandList2, ExecuteExtensionCommand) void ( STDMETHODCALLTYPE *ExecuteExtensionCommand )( - ID3D12VideoProcessCommandList2 * This, - /* [annotation] */ + ID3D12VideoDecodeCommandList3 * This, + _In_ ID3D12VideoExtensionCommand *pExtensionCommand, + _In_reads_bytes_(ExecutionParametersSizeInBytes) const void *pExecutionParameters, + SIZE_T ExecutionParametersSizeInBytes); + + DECLSPEC_XFGVIRT(ID3D12VideoDecodeCommandList3, Barrier) + void ( STDMETHODCALLTYPE *Barrier )( + ID3D12VideoDecodeCommandList3 * This, + UINT32 NumBarrierGroups, + _In_reads_(NumBarrierGroups) const D3D12_BARRIER_GROUP *pBarrierGroups); + + END_INTERFACE + } ID3D12VideoDecodeCommandList3Vtbl; + + interface ID3D12VideoDecodeCommandList3 + { + CONST_VTBL struct ID3D12VideoDecodeCommandList3Vtbl *lpVtbl; + }; + + + +#ifdef COBJMACROS + + +#define ID3D12VideoDecodeCommandList3_QueryInterface(This,riid,ppvObject) \ + ( (This)->lpVtbl -> QueryInterface(This,riid,ppvObject) ) + +#define ID3D12VideoDecodeCommandList3_AddRef(This) \ + ( (This)->lpVtbl -> AddRef(This) ) + +#define ID3D12VideoDecodeCommandList3_Release(This) \ + ( (This)->lpVtbl -> Release(This) ) + + +#define ID3D12VideoDecodeCommandList3_GetPrivateData(This,guid,pDataSize,pData) \ + ( (This)->lpVtbl -> GetPrivateData(This,guid,pDataSize,pData) ) + +#define ID3D12VideoDecodeCommandList3_SetPrivateData(This,guid,DataSize,pData) \ + ( (This)->lpVtbl -> SetPrivateData(This,guid,DataSize,pData) ) + +#define ID3D12VideoDecodeCommandList3_SetPrivateDataInterface(This,guid,pData) \ + ( (This)->lpVtbl -> SetPrivateDataInterface(This,guid,pData) ) + +#define ID3D12VideoDecodeCommandList3_SetName(This,Name) \ + ( (This)->lpVtbl -> SetName(This,Name) ) + + +#define ID3D12VideoDecodeCommandList3_GetDevice(This,riid,ppvDevice) \ + ( (This)->lpVtbl -> GetDevice(This,riid,ppvDevice) ) + + +#define ID3D12VideoDecodeCommandList3_GetType(This) \ + ( (This)->lpVtbl -> GetType(This) ) + + +#define ID3D12VideoDecodeCommandList3_Close(This) \ + ( (This)->lpVtbl -> Close(This) ) + +#define ID3D12VideoDecodeCommandList3_Reset(This,pAllocator) \ + ( (This)->lpVtbl -> Reset(This,pAllocator) ) + +#define ID3D12VideoDecodeCommandList3_ClearState(This) \ + ( (This)->lpVtbl -> ClearState(This) ) + +#define ID3D12VideoDecodeCommandList3_ResourceBarrier(This,NumBarriers,pBarriers) \ + ( (This)->lpVtbl -> ResourceBarrier(This,NumBarriers,pBarriers) ) + +#define ID3D12VideoDecodeCommandList3_DiscardResource(This,pResource,pRegion) \ + ( (This)->lpVtbl -> DiscardResource(This,pResource,pRegion) ) + +#define ID3D12VideoDecodeCommandList3_BeginQuery(This,pQueryHeap,Type,Index) \ + ( (This)->lpVtbl -> BeginQuery(This,pQueryHeap,Type,Index) ) + +#define ID3D12VideoDecodeCommandList3_EndQuery(This,pQueryHeap,Type,Index) \ + ( (This)->lpVtbl -> EndQuery(This,pQueryHeap,Type,Index) ) + +#define ID3D12VideoDecodeCommandList3_ResolveQueryData(This,pQueryHeap,Type,StartIndex,NumQueries,pDestinationBuffer,AlignedDestinationBufferOffset) \ + ( (This)->lpVtbl -> ResolveQueryData(This,pQueryHeap,Type,StartIndex,NumQueries,pDestinationBuffer,AlignedDestinationBufferOffset) ) + +#define ID3D12VideoDecodeCommandList3_SetPredication(This,pBuffer,AlignedBufferOffset,Operation) \ + ( (This)->lpVtbl -> SetPredication(This,pBuffer,AlignedBufferOffset,Operation) ) + +#define ID3D12VideoDecodeCommandList3_SetMarker(This,Metadata,pData,Size) \ + ( (This)->lpVtbl -> SetMarker(This,Metadata,pData,Size) ) + +#define ID3D12VideoDecodeCommandList3_BeginEvent(This,Metadata,pData,Size) \ + ( (This)->lpVtbl -> BeginEvent(This,Metadata,pData,Size) ) + +#define ID3D12VideoDecodeCommandList3_EndEvent(This) \ + ( (This)->lpVtbl -> EndEvent(This) ) + +#define ID3D12VideoDecodeCommandList3_DecodeFrame(This,pDecoder,pOutputArguments,pInputArguments) \ + ( (This)->lpVtbl -> DecodeFrame(This,pDecoder,pOutputArguments,pInputArguments) ) + +#define ID3D12VideoDecodeCommandList3_WriteBufferImmediate(This,Count,pParams,pModes) \ + ( (This)->lpVtbl -> WriteBufferImmediate(This,Count,pParams,pModes) ) + + +#define ID3D12VideoDecodeCommandList3_DecodeFrame1(This,pDecoder,pOutputArguments,pInputArguments) \ + ( (This)->lpVtbl -> DecodeFrame1(This,pDecoder,pOutputArguments,pInputArguments) ) + + +#define ID3D12VideoDecodeCommandList3_SetProtectedResourceSession(This,pProtectedResourceSession) \ + ( (This)->lpVtbl -> SetProtectedResourceSession(This,pProtectedResourceSession) ) + +#define ID3D12VideoDecodeCommandList3_InitializeExtensionCommand(This,pExtensionCommand,pInitializationParameters,InitializationParametersSizeInBytes) \ + ( (This)->lpVtbl -> InitializeExtensionCommand(This,pExtensionCommand,pInitializationParameters,InitializationParametersSizeInBytes) ) + +#define ID3D12VideoDecodeCommandList3_ExecuteExtensionCommand(This,pExtensionCommand,pExecutionParameters,ExecutionParametersSizeInBytes) \ + ( (This)->lpVtbl -> ExecuteExtensionCommand(This,pExtensionCommand,pExecutionParameters,ExecutionParametersSizeInBytes) ) + + +#define ID3D12VideoDecodeCommandList3_Barrier(This,NumBarrierGroups,pBarrierGroups) \ + ( (This)->lpVtbl -> Barrier(This,NumBarrierGroups,pBarrierGroups) ) + +#endif /* COBJMACROS */ + + +#endif /* C style interface */ + + + + +#endif /* __ID3D12VideoDecodeCommandList3_INTERFACE_DEFINED__ */ + + +#ifndef __ID3D12VideoProcessCommandList2_INTERFACE_DEFINED__ +#define __ID3D12VideoProcessCommandList2_INTERFACE_DEFINED__ + +/* interface ID3D12VideoProcessCommandList2 */ +/* [unique][local][object][uuid] */ + + +EXTERN_C const IID IID_ID3D12VideoProcessCommandList2; + +#if defined(__cplusplus) && !defined(CINTERFACE) + + MIDL_INTERFACE("db525ae4-6ad6-473c-baa7-59b2e37082e4") + ID3D12VideoProcessCommandList2 : public ID3D12VideoProcessCommandList1 + { + public: + virtual void STDMETHODCALLTYPE SetProtectedResourceSession( + _In_opt_ ID3D12ProtectedResourceSession *pProtectedResourceSession) = 0; + + virtual void STDMETHODCALLTYPE InitializeExtensionCommand( + _In_ ID3D12VideoExtensionCommand *pExtensionCommand, + _In_reads_bytes_(InitializationParametersSizeInBytes) const void *pInitializationParameters, + SIZE_T InitializationParametersSizeInBytes) = 0; + + virtual void STDMETHODCALLTYPE ExecuteExtensionCommand( + _In_ ID3D12VideoExtensionCommand *pExtensionCommand, + _In_reads_bytes_(ExecutionParametersSizeInBytes) const void *pExecutionParameters, + SIZE_T ExecutionParametersSizeInBytes) = 0; + + }; + + +#else /* C style interface */ + + typedef struct ID3D12VideoProcessCommandList2Vtbl + { + BEGIN_INTERFACE + + DECLSPEC_XFGVIRT(IUnknown, QueryInterface) + HRESULT ( STDMETHODCALLTYPE *QueryInterface )( + ID3D12VideoProcessCommandList2 * This, + REFIID riid, + _COM_Outptr_ void **ppvObject); + + DECLSPEC_XFGVIRT(IUnknown, AddRef) + ULONG ( STDMETHODCALLTYPE *AddRef )( + ID3D12VideoProcessCommandList2 * This); + + DECLSPEC_XFGVIRT(IUnknown, Release) + ULONG ( STDMETHODCALLTYPE *Release )( + ID3D12VideoProcessCommandList2 * This); + + DECLSPEC_XFGVIRT(ID3D12Object, GetPrivateData) + HRESULT ( STDMETHODCALLTYPE *GetPrivateData )( + ID3D12VideoProcessCommandList2 * This, + _In_ REFGUID guid, + _Inout_ UINT *pDataSize, + _Out_writes_bytes_opt_( *pDataSize ) void *pData); + + DECLSPEC_XFGVIRT(ID3D12Object, SetPrivateData) + HRESULT ( STDMETHODCALLTYPE *SetPrivateData )( + ID3D12VideoProcessCommandList2 * This, + _In_ REFGUID guid, + _In_ UINT DataSize, + _In_reads_bytes_opt_( DataSize ) const void *pData); + + DECLSPEC_XFGVIRT(ID3D12Object, SetPrivateDataInterface) + HRESULT ( STDMETHODCALLTYPE *SetPrivateDataInterface )( + ID3D12VideoProcessCommandList2 * This, + _In_ REFGUID guid, + _In_opt_ const IUnknown *pData); + + DECLSPEC_XFGVIRT(ID3D12Object, SetName) + HRESULT ( STDMETHODCALLTYPE *SetName )( + ID3D12VideoProcessCommandList2 * This, + _In_z_ LPCWSTR Name); + + DECLSPEC_XFGVIRT(ID3D12DeviceChild, GetDevice) + HRESULT ( STDMETHODCALLTYPE *GetDevice )( + ID3D12VideoProcessCommandList2 * This, + REFIID riid, + _COM_Outptr_opt_ void **ppvDevice); + + DECLSPEC_XFGVIRT(ID3D12CommandList, GetType) + D3D12_COMMAND_LIST_TYPE ( STDMETHODCALLTYPE *GetType )( + ID3D12VideoProcessCommandList2 * This); + + DECLSPEC_XFGVIRT(ID3D12VideoProcessCommandList, Close) + HRESULT ( STDMETHODCALLTYPE *Close )( + ID3D12VideoProcessCommandList2 * This); + + DECLSPEC_XFGVIRT(ID3D12VideoProcessCommandList, Reset) + HRESULT ( STDMETHODCALLTYPE *Reset )( + ID3D12VideoProcessCommandList2 * This, + _In_ ID3D12CommandAllocator *pAllocator); + + DECLSPEC_XFGVIRT(ID3D12VideoProcessCommandList, ClearState) + void ( STDMETHODCALLTYPE *ClearState )( + ID3D12VideoProcessCommandList2 * This); + + DECLSPEC_XFGVIRT(ID3D12VideoProcessCommandList, ResourceBarrier) + void ( STDMETHODCALLTYPE *ResourceBarrier )( + ID3D12VideoProcessCommandList2 * This, + _In_ UINT NumBarriers, + _In_reads_(NumBarriers) const D3D12_RESOURCE_BARRIER *pBarriers); + + DECLSPEC_XFGVIRT(ID3D12VideoProcessCommandList, DiscardResource) + void ( STDMETHODCALLTYPE *DiscardResource )( + ID3D12VideoProcessCommandList2 * This, + _In_ ID3D12Resource *pResource, + _In_opt_ const D3D12_DISCARD_REGION *pRegion); + + DECLSPEC_XFGVIRT(ID3D12VideoProcessCommandList, BeginQuery) + void ( STDMETHODCALLTYPE *BeginQuery )( + ID3D12VideoProcessCommandList2 * This, + _In_ ID3D12QueryHeap *pQueryHeap, + _In_ D3D12_QUERY_TYPE Type, + _In_ UINT Index); + + DECLSPEC_XFGVIRT(ID3D12VideoProcessCommandList, EndQuery) + void ( STDMETHODCALLTYPE *EndQuery )( + ID3D12VideoProcessCommandList2 * This, + _In_ ID3D12QueryHeap *pQueryHeap, + _In_ D3D12_QUERY_TYPE Type, + _In_ UINT Index); + + DECLSPEC_XFGVIRT(ID3D12VideoProcessCommandList, ResolveQueryData) + void ( STDMETHODCALLTYPE *ResolveQueryData )( + ID3D12VideoProcessCommandList2 * This, + _In_ ID3D12QueryHeap *pQueryHeap, + _In_ D3D12_QUERY_TYPE Type, + _In_ UINT StartIndex, + _In_ UINT NumQueries, + _In_ ID3D12Resource *pDestinationBuffer, + _In_ UINT64 AlignedDestinationBufferOffset); + + DECLSPEC_XFGVIRT(ID3D12VideoProcessCommandList, SetPredication) + void ( STDMETHODCALLTYPE *SetPredication )( + ID3D12VideoProcessCommandList2 * This, + _In_opt_ ID3D12Resource *pBuffer, + _In_ UINT64 AlignedBufferOffset, + _In_ D3D12_PREDICATION_OP Operation); + + DECLSPEC_XFGVIRT(ID3D12VideoProcessCommandList, SetMarker) + void ( STDMETHODCALLTYPE *SetMarker )( + ID3D12VideoProcessCommandList2 * This, + UINT Metadata, + _In_reads_bytes_opt_(Size) const void *pData, + UINT Size); + + DECLSPEC_XFGVIRT(ID3D12VideoProcessCommandList, BeginEvent) + void ( STDMETHODCALLTYPE *BeginEvent )( + ID3D12VideoProcessCommandList2 * This, + UINT Metadata, + _In_reads_bytes_opt_(Size) const void *pData, + UINT Size); + + DECLSPEC_XFGVIRT(ID3D12VideoProcessCommandList, EndEvent) + void ( STDMETHODCALLTYPE *EndEvent )( + ID3D12VideoProcessCommandList2 * This); + + DECLSPEC_XFGVIRT(ID3D12VideoProcessCommandList, ProcessFrames) + void ( STDMETHODCALLTYPE *ProcessFrames )( + ID3D12VideoProcessCommandList2 * This, + _In_ ID3D12VideoProcessor *pVideoProcessor, + _In_ const D3D12_VIDEO_PROCESS_OUTPUT_STREAM_ARGUMENTS *pOutputArguments, + UINT NumInputStreams, + _In_reads_(NumInputStreams) const D3D12_VIDEO_PROCESS_INPUT_STREAM_ARGUMENTS *pInputArguments); + + DECLSPEC_XFGVIRT(ID3D12VideoProcessCommandList, WriteBufferImmediate) + void ( STDMETHODCALLTYPE *WriteBufferImmediate )( + ID3D12VideoProcessCommandList2 * This, + UINT Count, + _In_reads_(Count) const D3D12_WRITEBUFFERIMMEDIATE_PARAMETER *pParams, + _In_reads_opt_(Count) const D3D12_WRITEBUFFERIMMEDIATE_MODE *pModes); + + DECLSPEC_XFGVIRT(ID3D12VideoProcessCommandList1, ProcessFrames1) + void ( STDMETHODCALLTYPE *ProcessFrames1 )( + ID3D12VideoProcessCommandList2 * This, + _In_ ID3D12VideoProcessor *pVideoProcessor, + _In_ const D3D12_VIDEO_PROCESS_OUTPUT_STREAM_ARGUMENTS *pOutputArguments, + UINT NumInputStreams, + _In_reads_(NumInputStreams) const D3D12_VIDEO_PROCESS_INPUT_STREAM_ARGUMENTS1 *pInputArguments); + + DECLSPEC_XFGVIRT(ID3D12VideoProcessCommandList2, SetProtectedResourceSession) + void ( STDMETHODCALLTYPE *SetProtectedResourceSession )( + ID3D12VideoProcessCommandList2 * This, + _In_opt_ ID3D12ProtectedResourceSession *pProtectedResourceSession); + + DECLSPEC_XFGVIRT(ID3D12VideoProcessCommandList2, InitializeExtensionCommand) + void ( STDMETHODCALLTYPE *InitializeExtensionCommand )( + ID3D12VideoProcessCommandList2 * This, + _In_ ID3D12VideoExtensionCommand *pExtensionCommand, + _In_reads_bytes_(InitializationParametersSizeInBytes) const void *pInitializationParameters, + SIZE_T InitializationParametersSizeInBytes); + + DECLSPEC_XFGVIRT(ID3D12VideoProcessCommandList2, ExecuteExtensionCommand) + void ( STDMETHODCALLTYPE *ExecuteExtensionCommand )( + ID3D12VideoProcessCommandList2 * This, _In_ ID3D12VideoExtensionCommand *pExtensionCommand, - /* [annotation] */ _In_reads_bytes_(ExecutionParametersSizeInBytes) const void *pExecutionParameters, SIZE_T ExecutionParametersSizeInBytes); @@ -5916,6 +5676,320 @@ EXTERN_C const IID IID_ID3D12VideoProcessCommandList2; #endif /* __ID3D12VideoProcessCommandList2_INTERFACE_DEFINED__ */ +#ifndef __ID3D12VideoProcessCommandList3_INTERFACE_DEFINED__ +#define __ID3D12VideoProcessCommandList3_INTERFACE_DEFINED__ + +/* interface ID3D12VideoProcessCommandList3 */ +/* [unique][local][object][uuid] */ + + +EXTERN_C const IID IID_ID3D12VideoProcessCommandList3; + +#if defined(__cplusplus) && !defined(CINTERFACE) + + MIDL_INTERFACE("1a0a4ca4-9f08-40ce-9558-b411fd2666ff") + ID3D12VideoProcessCommandList3 : public ID3D12VideoProcessCommandList2 + { + public: + virtual void STDMETHODCALLTYPE Barrier( + UINT32 NumBarrierGroups, + _In_reads_(NumBarrierGroups) const D3D12_BARRIER_GROUP *pBarrierGroups) = 0; + + }; + + +#else /* C style interface */ + + typedef struct ID3D12VideoProcessCommandList3Vtbl + { + BEGIN_INTERFACE + + DECLSPEC_XFGVIRT(IUnknown, QueryInterface) + HRESULT ( STDMETHODCALLTYPE *QueryInterface )( + ID3D12VideoProcessCommandList3 * This, + REFIID riid, + _COM_Outptr_ void **ppvObject); + + DECLSPEC_XFGVIRT(IUnknown, AddRef) + ULONG ( STDMETHODCALLTYPE *AddRef )( + ID3D12VideoProcessCommandList3 * This); + + DECLSPEC_XFGVIRT(IUnknown, Release) + ULONG ( STDMETHODCALLTYPE *Release )( + ID3D12VideoProcessCommandList3 * This); + + DECLSPEC_XFGVIRT(ID3D12Object, GetPrivateData) + HRESULT ( STDMETHODCALLTYPE *GetPrivateData )( + ID3D12VideoProcessCommandList3 * This, + _In_ REFGUID guid, + _Inout_ UINT *pDataSize, + _Out_writes_bytes_opt_( *pDataSize ) void *pData); + + DECLSPEC_XFGVIRT(ID3D12Object, SetPrivateData) + HRESULT ( STDMETHODCALLTYPE *SetPrivateData )( + ID3D12VideoProcessCommandList3 * This, + _In_ REFGUID guid, + _In_ UINT DataSize, + _In_reads_bytes_opt_( DataSize ) const void *pData); + + DECLSPEC_XFGVIRT(ID3D12Object, SetPrivateDataInterface) + HRESULT ( STDMETHODCALLTYPE *SetPrivateDataInterface )( + ID3D12VideoProcessCommandList3 * This, + _In_ REFGUID guid, + _In_opt_ const IUnknown *pData); + + DECLSPEC_XFGVIRT(ID3D12Object, SetName) + HRESULT ( STDMETHODCALLTYPE *SetName )( + ID3D12VideoProcessCommandList3 * This, + _In_z_ LPCWSTR Name); + + DECLSPEC_XFGVIRT(ID3D12DeviceChild, GetDevice) + HRESULT ( STDMETHODCALLTYPE *GetDevice )( + ID3D12VideoProcessCommandList3 * This, + REFIID riid, + _COM_Outptr_opt_ void **ppvDevice); + + DECLSPEC_XFGVIRT(ID3D12CommandList, GetType) + D3D12_COMMAND_LIST_TYPE ( STDMETHODCALLTYPE *GetType )( + ID3D12VideoProcessCommandList3 * This); + + DECLSPEC_XFGVIRT(ID3D12VideoProcessCommandList, Close) + HRESULT ( STDMETHODCALLTYPE *Close )( + ID3D12VideoProcessCommandList3 * This); + + DECLSPEC_XFGVIRT(ID3D12VideoProcessCommandList, Reset) + HRESULT ( STDMETHODCALLTYPE *Reset )( + ID3D12VideoProcessCommandList3 * This, + _In_ ID3D12CommandAllocator *pAllocator); + + DECLSPEC_XFGVIRT(ID3D12VideoProcessCommandList, ClearState) + void ( STDMETHODCALLTYPE *ClearState )( + ID3D12VideoProcessCommandList3 * This); + + DECLSPEC_XFGVIRT(ID3D12VideoProcessCommandList, ResourceBarrier) + void ( STDMETHODCALLTYPE *ResourceBarrier )( + ID3D12VideoProcessCommandList3 * This, + _In_ UINT NumBarriers, + _In_reads_(NumBarriers) const D3D12_RESOURCE_BARRIER *pBarriers); + + DECLSPEC_XFGVIRT(ID3D12VideoProcessCommandList, DiscardResource) + void ( STDMETHODCALLTYPE *DiscardResource )( + ID3D12VideoProcessCommandList3 * This, + _In_ ID3D12Resource *pResource, + _In_opt_ const D3D12_DISCARD_REGION *pRegion); + + DECLSPEC_XFGVIRT(ID3D12VideoProcessCommandList, BeginQuery) + void ( STDMETHODCALLTYPE *BeginQuery )( + ID3D12VideoProcessCommandList3 * This, + _In_ ID3D12QueryHeap *pQueryHeap, + _In_ D3D12_QUERY_TYPE Type, + _In_ UINT Index); + + DECLSPEC_XFGVIRT(ID3D12VideoProcessCommandList, EndQuery) + void ( STDMETHODCALLTYPE *EndQuery )( + ID3D12VideoProcessCommandList3 * This, + _In_ ID3D12QueryHeap *pQueryHeap, + _In_ D3D12_QUERY_TYPE Type, + _In_ UINT Index); + + DECLSPEC_XFGVIRT(ID3D12VideoProcessCommandList, ResolveQueryData) + void ( STDMETHODCALLTYPE *ResolveQueryData )( + ID3D12VideoProcessCommandList3 * This, + _In_ ID3D12QueryHeap *pQueryHeap, + _In_ D3D12_QUERY_TYPE Type, + _In_ UINT StartIndex, + _In_ UINT NumQueries, + _In_ ID3D12Resource *pDestinationBuffer, + _In_ UINT64 AlignedDestinationBufferOffset); + + DECLSPEC_XFGVIRT(ID3D12VideoProcessCommandList, SetPredication) + void ( STDMETHODCALLTYPE *SetPredication )( + ID3D12VideoProcessCommandList3 * This, + _In_opt_ ID3D12Resource *pBuffer, + _In_ UINT64 AlignedBufferOffset, + _In_ D3D12_PREDICATION_OP Operation); + + DECLSPEC_XFGVIRT(ID3D12VideoProcessCommandList, SetMarker) + void ( STDMETHODCALLTYPE *SetMarker )( + ID3D12VideoProcessCommandList3 * This, + UINT Metadata, + _In_reads_bytes_opt_(Size) const void *pData, + UINT Size); + + DECLSPEC_XFGVIRT(ID3D12VideoProcessCommandList, BeginEvent) + void ( STDMETHODCALLTYPE *BeginEvent )( + ID3D12VideoProcessCommandList3 * This, + UINT Metadata, + _In_reads_bytes_opt_(Size) const void *pData, + UINT Size); + + DECLSPEC_XFGVIRT(ID3D12VideoProcessCommandList, EndEvent) + void ( STDMETHODCALLTYPE *EndEvent )( + ID3D12VideoProcessCommandList3 * This); + + DECLSPEC_XFGVIRT(ID3D12VideoProcessCommandList, ProcessFrames) + void ( STDMETHODCALLTYPE *ProcessFrames )( + ID3D12VideoProcessCommandList3 * This, + _In_ ID3D12VideoProcessor *pVideoProcessor, + _In_ const D3D12_VIDEO_PROCESS_OUTPUT_STREAM_ARGUMENTS *pOutputArguments, + UINT NumInputStreams, + _In_reads_(NumInputStreams) const D3D12_VIDEO_PROCESS_INPUT_STREAM_ARGUMENTS *pInputArguments); + + DECLSPEC_XFGVIRT(ID3D12VideoProcessCommandList, WriteBufferImmediate) + void ( STDMETHODCALLTYPE *WriteBufferImmediate )( + ID3D12VideoProcessCommandList3 * This, + UINT Count, + _In_reads_(Count) const D3D12_WRITEBUFFERIMMEDIATE_PARAMETER *pParams, + _In_reads_opt_(Count) const D3D12_WRITEBUFFERIMMEDIATE_MODE *pModes); + + DECLSPEC_XFGVIRT(ID3D12VideoProcessCommandList1, ProcessFrames1) + void ( STDMETHODCALLTYPE *ProcessFrames1 )( + ID3D12VideoProcessCommandList3 * This, + _In_ ID3D12VideoProcessor *pVideoProcessor, + _In_ const D3D12_VIDEO_PROCESS_OUTPUT_STREAM_ARGUMENTS *pOutputArguments, + UINT NumInputStreams, + _In_reads_(NumInputStreams) const D3D12_VIDEO_PROCESS_INPUT_STREAM_ARGUMENTS1 *pInputArguments); + + DECLSPEC_XFGVIRT(ID3D12VideoProcessCommandList2, SetProtectedResourceSession) + void ( STDMETHODCALLTYPE *SetProtectedResourceSession )( + ID3D12VideoProcessCommandList3 * This, + _In_opt_ ID3D12ProtectedResourceSession *pProtectedResourceSession); + + DECLSPEC_XFGVIRT(ID3D12VideoProcessCommandList2, InitializeExtensionCommand) + void ( STDMETHODCALLTYPE *InitializeExtensionCommand )( + ID3D12VideoProcessCommandList3 * This, + _In_ ID3D12VideoExtensionCommand *pExtensionCommand, + _In_reads_bytes_(InitializationParametersSizeInBytes) const void *pInitializationParameters, + SIZE_T InitializationParametersSizeInBytes); + + DECLSPEC_XFGVIRT(ID3D12VideoProcessCommandList2, ExecuteExtensionCommand) + void ( STDMETHODCALLTYPE *ExecuteExtensionCommand )( + ID3D12VideoProcessCommandList3 * This, + _In_ ID3D12VideoExtensionCommand *pExtensionCommand, + _In_reads_bytes_(ExecutionParametersSizeInBytes) const void *pExecutionParameters, + SIZE_T ExecutionParametersSizeInBytes); + + DECLSPEC_XFGVIRT(ID3D12VideoProcessCommandList3, Barrier) + void ( STDMETHODCALLTYPE *Barrier )( + ID3D12VideoProcessCommandList3 * This, + UINT32 NumBarrierGroups, + _In_reads_(NumBarrierGroups) const D3D12_BARRIER_GROUP *pBarrierGroups); + + END_INTERFACE + } ID3D12VideoProcessCommandList3Vtbl; + + interface ID3D12VideoProcessCommandList3 + { + CONST_VTBL struct ID3D12VideoProcessCommandList3Vtbl *lpVtbl; + }; + + + +#ifdef COBJMACROS + + +#define ID3D12VideoProcessCommandList3_QueryInterface(This,riid,ppvObject) \ + ( (This)->lpVtbl -> QueryInterface(This,riid,ppvObject) ) + +#define ID3D12VideoProcessCommandList3_AddRef(This) \ + ( (This)->lpVtbl -> AddRef(This) ) + +#define ID3D12VideoProcessCommandList3_Release(This) \ + ( (This)->lpVtbl -> Release(This) ) + + +#define ID3D12VideoProcessCommandList3_GetPrivateData(This,guid,pDataSize,pData) \ + ( (This)->lpVtbl -> GetPrivateData(This,guid,pDataSize,pData) ) + +#define ID3D12VideoProcessCommandList3_SetPrivateData(This,guid,DataSize,pData) \ + ( (This)->lpVtbl -> SetPrivateData(This,guid,DataSize,pData) ) + +#define ID3D12VideoProcessCommandList3_SetPrivateDataInterface(This,guid,pData) \ + ( (This)->lpVtbl -> SetPrivateDataInterface(This,guid,pData) ) + +#define ID3D12VideoProcessCommandList3_SetName(This,Name) \ + ( (This)->lpVtbl -> SetName(This,Name) ) + + +#define ID3D12VideoProcessCommandList3_GetDevice(This,riid,ppvDevice) \ + ( (This)->lpVtbl -> GetDevice(This,riid,ppvDevice) ) + + +#define ID3D12VideoProcessCommandList3_GetType(This) \ + ( (This)->lpVtbl -> GetType(This) ) + + +#define ID3D12VideoProcessCommandList3_Close(This) \ + ( (This)->lpVtbl -> Close(This) ) + +#define ID3D12VideoProcessCommandList3_Reset(This,pAllocator) \ + ( (This)->lpVtbl -> Reset(This,pAllocator) ) + +#define ID3D12VideoProcessCommandList3_ClearState(This) \ + ( (This)->lpVtbl -> ClearState(This) ) + +#define ID3D12VideoProcessCommandList3_ResourceBarrier(This,NumBarriers,pBarriers) \ + ( (This)->lpVtbl -> ResourceBarrier(This,NumBarriers,pBarriers) ) + +#define ID3D12VideoProcessCommandList3_DiscardResource(This,pResource,pRegion) \ + ( (This)->lpVtbl -> DiscardResource(This,pResource,pRegion) ) + +#define ID3D12VideoProcessCommandList3_BeginQuery(This,pQueryHeap,Type,Index) \ + ( (This)->lpVtbl -> BeginQuery(This,pQueryHeap,Type,Index) ) + +#define ID3D12VideoProcessCommandList3_EndQuery(This,pQueryHeap,Type,Index) \ + ( (This)->lpVtbl -> EndQuery(This,pQueryHeap,Type,Index) ) + +#define ID3D12VideoProcessCommandList3_ResolveQueryData(This,pQueryHeap,Type,StartIndex,NumQueries,pDestinationBuffer,AlignedDestinationBufferOffset) \ + ( (This)->lpVtbl -> ResolveQueryData(This,pQueryHeap,Type,StartIndex,NumQueries,pDestinationBuffer,AlignedDestinationBufferOffset) ) + +#define ID3D12VideoProcessCommandList3_SetPredication(This,pBuffer,AlignedBufferOffset,Operation) \ + ( (This)->lpVtbl -> SetPredication(This,pBuffer,AlignedBufferOffset,Operation) ) + +#define ID3D12VideoProcessCommandList3_SetMarker(This,Metadata,pData,Size) \ + ( (This)->lpVtbl -> SetMarker(This,Metadata,pData,Size) ) + +#define ID3D12VideoProcessCommandList3_BeginEvent(This,Metadata,pData,Size) \ + ( (This)->lpVtbl -> BeginEvent(This,Metadata,pData,Size) ) + +#define ID3D12VideoProcessCommandList3_EndEvent(This) \ + ( (This)->lpVtbl -> EndEvent(This) ) + +#define ID3D12VideoProcessCommandList3_ProcessFrames(This,pVideoProcessor,pOutputArguments,NumInputStreams,pInputArguments) \ + ( (This)->lpVtbl -> ProcessFrames(This,pVideoProcessor,pOutputArguments,NumInputStreams,pInputArguments) ) + +#define ID3D12VideoProcessCommandList3_WriteBufferImmediate(This,Count,pParams,pModes) \ + ( (This)->lpVtbl -> WriteBufferImmediate(This,Count,pParams,pModes) ) + + +#define ID3D12VideoProcessCommandList3_ProcessFrames1(This,pVideoProcessor,pOutputArguments,NumInputStreams,pInputArguments) \ + ( (This)->lpVtbl -> ProcessFrames1(This,pVideoProcessor,pOutputArguments,NumInputStreams,pInputArguments) ) + + +#define ID3D12VideoProcessCommandList3_SetProtectedResourceSession(This,pProtectedResourceSession) \ + ( (This)->lpVtbl -> SetProtectedResourceSession(This,pProtectedResourceSession) ) + +#define ID3D12VideoProcessCommandList3_InitializeExtensionCommand(This,pExtensionCommand,pInitializationParameters,InitializationParametersSizeInBytes) \ + ( (This)->lpVtbl -> InitializeExtensionCommand(This,pExtensionCommand,pInitializationParameters,InitializationParametersSizeInBytes) ) + +#define ID3D12VideoProcessCommandList3_ExecuteExtensionCommand(This,pExtensionCommand,pExecutionParameters,ExecutionParametersSizeInBytes) \ + ( (This)->lpVtbl -> ExecuteExtensionCommand(This,pExtensionCommand,pExecutionParameters,ExecutionParametersSizeInBytes) ) + + +#define ID3D12VideoProcessCommandList3_Barrier(This,NumBarrierGroups,pBarrierGroups) \ + ( (This)->lpVtbl -> Barrier(This,NumBarrierGroups,pBarrierGroups) ) + +#endif /* COBJMACROS */ + + +#endif /* C style interface */ + + + + +#endif /* __ID3D12VideoProcessCommandList3_INTERFACE_DEFINED__ */ + + #ifndef __ID3D12VideoEncodeCommandList1_INTERFACE_DEFINED__ #define __ID3D12VideoEncodeCommandList1_INTERFACE_DEFINED__ @@ -5932,16 +6006,12 @@ EXTERN_C const IID IID_ID3D12VideoEncodeCommandList1; { public: virtual void STDMETHODCALLTYPE InitializeExtensionCommand( - /* [annotation] */ _In_ ID3D12VideoExtensionCommand *pExtensionCommand, - /* [annotation] */ _In_reads_bytes_(InitializationParametersSizeInBytes) const void *pInitializationParameters, SIZE_T InitializationParametersSizeInBytes) = 0; virtual void STDMETHODCALLTYPE ExecuteExtensionCommand( - /* [annotation] */ _In_ ID3D12VideoExtensionCommand *pExtensionCommand, - /* [annotation] */ _In_reads_bytes_(ExecutionParametersSizeInBytes) const void *pExecutionParameters, SIZE_T ExecutionParametersSizeInBytes) = 0; @@ -5957,9 +6027,7 @@ EXTERN_C const IID IID_ID3D12VideoEncodeCommandList1; DECLSPEC_XFGVIRT(IUnknown, QueryInterface) HRESULT ( STDMETHODCALLTYPE *QueryInterface )( ID3D12VideoEncodeCommandList1 * This, - /* [annotation][in] */ - _In_ REFIID riid, - /* [annotation][iid_is][out] */ + REFIID riid, _COM_Outptr_ void **ppvObject); DECLSPEC_XFGVIRT(IUnknown, AddRef) @@ -5973,43 +6041,32 @@ EXTERN_C const IID IID_ID3D12VideoEncodeCommandList1; DECLSPEC_XFGVIRT(ID3D12Object, GetPrivateData) HRESULT ( STDMETHODCALLTYPE *GetPrivateData )( ID3D12VideoEncodeCommandList1 * This, - /* [annotation] */ _In_ REFGUID guid, - /* [annotation] */ _Inout_ UINT *pDataSize, - /* [annotation] */ _Out_writes_bytes_opt_( *pDataSize ) void *pData); DECLSPEC_XFGVIRT(ID3D12Object, SetPrivateData) HRESULT ( STDMETHODCALLTYPE *SetPrivateData )( ID3D12VideoEncodeCommandList1 * This, - /* [annotation] */ _In_ REFGUID guid, - /* [annotation] */ _In_ UINT DataSize, - /* [annotation] */ _In_reads_bytes_opt_( DataSize ) const void *pData); DECLSPEC_XFGVIRT(ID3D12Object, SetPrivateDataInterface) HRESULT ( STDMETHODCALLTYPE *SetPrivateDataInterface )( ID3D12VideoEncodeCommandList1 * This, - /* [annotation] */ _In_ REFGUID guid, - /* [annotation] */ _In_opt_ const IUnknown *pData); DECLSPEC_XFGVIRT(ID3D12Object, SetName) HRESULT ( STDMETHODCALLTYPE *SetName )( ID3D12VideoEncodeCommandList1 * This, - /* [annotation] */ _In_z_ LPCWSTR Name); DECLSPEC_XFGVIRT(ID3D12DeviceChild, GetDevice) HRESULT ( STDMETHODCALLTYPE *GetDevice )( ID3D12VideoEncodeCommandList1 * This, - /* [annotation][in] */ - _In_ REFIID riid, - /* [annotation][iid_is][out] */ + REFIID riid, _COM_Outptr_opt_ void **ppvDevice); DECLSPEC_XFGVIRT(ID3D12CommandList, GetType) @@ -6023,7 +6080,6 @@ EXTERN_C const IID IID_ID3D12VideoEncodeCommandList1; DECLSPEC_XFGVIRT(ID3D12VideoEncodeCommandList, Reset) HRESULT ( STDMETHODCALLTYPE *Reset )( ID3D12VideoEncodeCommandList1 * This, - /* [annotation] */ _In_ ID3D12CommandAllocator *pAllocator); DECLSPEC_XFGVIRT(ID3D12VideoEncodeCommandList, ClearState) @@ -6033,70 +6089,50 @@ EXTERN_C const IID IID_ID3D12VideoEncodeCommandList1; DECLSPEC_XFGVIRT(ID3D12VideoEncodeCommandList, ResourceBarrier) void ( STDMETHODCALLTYPE *ResourceBarrier )( ID3D12VideoEncodeCommandList1 * This, - /* [annotation] */ _In_ UINT NumBarriers, - /* [annotation] */ _In_reads_(NumBarriers) const D3D12_RESOURCE_BARRIER *pBarriers); DECLSPEC_XFGVIRT(ID3D12VideoEncodeCommandList, DiscardResource) void ( STDMETHODCALLTYPE *DiscardResource )( ID3D12VideoEncodeCommandList1 * This, - /* [annotation] */ _In_ ID3D12Resource *pResource, - /* [annotation] */ _In_opt_ const D3D12_DISCARD_REGION *pRegion); DECLSPEC_XFGVIRT(ID3D12VideoEncodeCommandList, BeginQuery) void ( STDMETHODCALLTYPE *BeginQuery )( ID3D12VideoEncodeCommandList1 * This, - /* [annotation] */ _In_ ID3D12QueryHeap *pQueryHeap, - /* [annotation] */ _In_ D3D12_QUERY_TYPE Type, - /* [annotation] */ _In_ UINT Index); DECLSPEC_XFGVIRT(ID3D12VideoEncodeCommandList, EndQuery) void ( STDMETHODCALLTYPE *EndQuery )( ID3D12VideoEncodeCommandList1 * This, - /* [annotation] */ _In_ ID3D12QueryHeap *pQueryHeap, - /* [annotation] */ _In_ D3D12_QUERY_TYPE Type, - /* [annotation] */ _In_ UINT Index); DECLSPEC_XFGVIRT(ID3D12VideoEncodeCommandList, ResolveQueryData) void ( STDMETHODCALLTYPE *ResolveQueryData )( ID3D12VideoEncodeCommandList1 * This, - /* [annotation] */ _In_ ID3D12QueryHeap *pQueryHeap, - /* [annotation] */ _In_ D3D12_QUERY_TYPE Type, - /* [annotation] */ _In_ UINT StartIndex, - /* [annotation] */ _In_ UINT NumQueries, - /* [annotation] */ _In_ ID3D12Resource *pDestinationBuffer, - /* [annotation] */ _In_ UINT64 AlignedDestinationBufferOffset); DECLSPEC_XFGVIRT(ID3D12VideoEncodeCommandList, SetPredication) void ( STDMETHODCALLTYPE *SetPredication )( ID3D12VideoEncodeCommandList1 * This, - /* [annotation] */ _In_opt_ ID3D12Resource *pBuffer, - /* [annotation] */ _In_ UINT64 AlignedBufferOffset, - /* [annotation] */ _In_ D3D12_PREDICATION_OP Operation); DECLSPEC_XFGVIRT(ID3D12VideoEncodeCommandList, SetMarker) void ( STDMETHODCALLTYPE *SetMarker )( ID3D12VideoEncodeCommandList1 * This, UINT Metadata, - /* [annotation] */ _In_reads_bytes_opt_(Size) const void *pData, UINT Size); @@ -6104,7 +6140,6 @@ EXTERN_C const IID IID_ID3D12VideoEncodeCommandList1; void ( STDMETHODCALLTYPE *BeginEvent )( ID3D12VideoEncodeCommandList1 * This, UINT Metadata, - /* [annotation] */ _In_reads_bytes_opt_(Size) const void *pData, UINT Size); @@ -6115,11 +6150,8 @@ EXTERN_C const IID IID_ID3D12VideoEncodeCommandList1; DECLSPEC_XFGVIRT(ID3D12VideoEncodeCommandList, EstimateMotion) void ( STDMETHODCALLTYPE *EstimateMotion )( ID3D12VideoEncodeCommandList1 * This, - /* [annotation] */ _In_ ID3D12VideoMotionEstimator *pMotionEstimator, - /* [annotation] */ _In_ const D3D12_VIDEO_MOTION_ESTIMATOR_OUTPUT *pOutputArguments, - /* [annotation] */ _In_ const D3D12_VIDEO_MOTION_ESTIMATOR_INPUT *pInputArguments); DECLSPEC_XFGVIRT(ID3D12VideoEncodeCommandList, ResolveMotionVectorHeap) @@ -6132,32 +6164,25 @@ EXTERN_C const IID IID_ID3D12VideoEncodeCommandList1; void ( STDMETHODCALLTYPE *WriteBufferImmediate )( ID3D12VideoEncodeCommandList1 * This, UINT Count, - /* [annotation] */ _In_reads_(Count) const D3D12_WRITEBUFFERIMMEDIATE_PARAMETER *pParams, - /* [annotation] */ _In_reads_opt_(Count) const D3D12_WRITEBUFFERIMMEDIATE_MODE *pModes); DECLSPEC_XFGVIRT(ID3D12VideoEncodeCommandList, SetProtectedResourceSession) void ( STDMETHODCALLTYPE *SetProtectedResourceSession )( ID3D12VideoEncodeCommandList1 * This, - /* [annotation] */ _In_opt_ ID3D12ProtectedResourceSession *pProtectedResourceSession); DECLSPEC_XFGVIRT(ID3D12VideoEncodeCommandList1, InitializeExtensionCommand) void ( STDMETHODCALLTYPE *InitializeExtensionCommand )( ID3D12VideoEncodeCommandList1 * This, - /* [annotation] */ _In_ ID3D12VideoExtensionCommand *pExtensionCommand, - /* [annotation] */ _In_reads_bytes_(InitializationParametersSizeInBytes) const void *pInitializationParameters, SIZE_T InitializationParametersSizeInBytes); DECLSPEC_XFGVIRT(ID3D12VideoEncodeCommandList1, ExecuteExtensionCommand) void ( STDMETHODCALLTYPE *ExecuteExtensionCommand )( ID3D12VideoEncodeCommandList1 * This, - /* [annotation] */ _In_ ID3D12VideoExtensionCommand *pExtensionCommand, - /* [annotation] */ _In_reads_bytes_(ExecutionParametersSizeInBytes) const void *pExecutionParameters, SIZE_T ExecutionParametersSizeInBytes); @@ -6271,7 +6296,7 @@ EXTERN_C const IID IID_ID3D12VideoEncodeCommandList1; #endif /* __ID3D12VideoEncodeCommandList1_INTERFACE_DEFINED__ */ -/* interface __MIDL_itf_d3d12video_0000_0020 */ +/* interface __MIDL_itf_d3d12video_0000_0022 */ /* [local] */ DEFINE_GUID(D3D12_VIDEO_DECODE_PROFILE_MPEG2, 0xee27417f, 0x5e28, 0x4e65, 0xbe, 0xea, 0x1d, 0x26, 0xb5, 0x08, 0xad, 0xc9); @@ -6522,7 +6547,6 @@ typedef struct D3D12_FEATURE_DATA_VIDEO_ENCODER_OUTPUT_RESOLUTION D3D12_VIDEO_ENCODER_PICTURE_RESOLUTION_DESC MaxResolutionSupported; UINT ResolutionWidthMultipleRequirement; UINT ResolutionHeightMultipleRequirement; - /* [annotation] */ _Field_size_full_(ResolutionRatiosCount) D3D12_VIDEO_ENCODER_PICTURE_RESOLUTION_RATIO_DESC *pResolutionRatios; } D3D12_FEATURE_DATA_VIDEO_ENCODER_OUTPUT_RESOLUTION; @@ -6595,7 +6619,6 @@ typedef struct D3D12_VIDEO_ENCODER_HEAP_DESC D3D12_VIDEO_ENCODER_PROFILE_DESC EncodeProfile; D3D12_VIDEO_ENCODER_LEVEL_SETTING EncodeLevel; UINT ResolutionsListCount; - /* [annotation] */ _Field_size_full_(ResolutionsListCount) const D3D12_VIDEO_ENCODER_PICTURE_RESOLUTION_DESC *pResolutionList; } D3D12_VIDEO_ENCODER_HEAP_DESC; @@ -6917,7 +6940,6 @@ typedef struct D3D12_FEATURE_DATA_VIDEO_ENCODER_SUPPORT D3D12_VIDEO_ENCODER_SUPPORT_FLAGS SupportFlags; D3D12_VIDEO_ENCODER_PROFILE_DESC SuggestedProfile; D3D12_VIDEO_ENCODER_LEVEL_SETTING SuggestedLevel; - /* [annotation] */ _Field_size_full_(ResolutionsListCount) D3D12_FEATURE_DATA_VIDEO_ENCODER_RESOLUTION_SUPPORT_LIMITS *pResolutionDependentSupport; } D3D12_FEATURE_DATA_VIDEO_ENCODER_SUPPORT; @@ -6954,8 +6976,8 @@ typedef struct D3D12_VIDEO_ENCODER_DESC -extern RPC_IF_HANDLE __MIDL_itf_d3d12video_0000_0020_v0_0_c_ifspec; -extern RPC_IF_HANDLE __MIDL_itf_d3d12video_0000_0020_v0_0_s_ifspec; +extern RPC_IF_HANDLE __MIDL_itf_d3d12video_0000_0022_v0_0_c_ifspec; +extern RPC_IF_HANDLE __MIDL_itf_d3d12video_0000_0022_v0_0_s_ifspec; #ifndef __ID3D12VideoEncoder_INTERFACE_DEFINED__ #define __ID3D12VideoEncoder_INTERFACE_DEFINED__ @@ -6979,12 +7001,10 @@ EXTERN_C const IID IID_ID3D12VideoEncoder; virtual D3D12_VIDEO_ENCODER_CODEC STDMETHODCALLTYPE GetCodec( void) = 0; virtual HRESULT STDMETHODCALLTYPE GetCodecProfile( - /* [annotation] */ - _Out_ D3D12_VIDEO_ENCODER_PROFILE_DESC dstProfile) = 0; + _Inout_ D3D12_VIDEO_ENCODER_PROFILE_DESC dstProfile) = 0; virtual HRESULT STDMETHODCALLTYPE GetCodecConfiguration( - /* [annotation] */ - _Out_ D3D12_VIDEO_ENCODER_CODEC_CONFIGURATION dstCodecConfig) = 0; + _Inout_ D3D12_VIDEO_ENCODER_CODEC_CONFIGURATION dstCodecConfig) = 0; virtual DXGI_FORMAT STDMETHODCALLTYPE GetInputFormat( void) = 0; @@ -7002,9 +7022,7 @@ EXTERN_C const IID IID_ID3D12VideoEncoder; DECLSPEC_XFGVIRT(IUnknown, QueryInterface) HRESULT ( STDMETHODCALLTYPE *QueryInterface )( ID3D12VideoEncoder * This, - /* [annotation][in] */ - _In_ REFIID riid, - /* [annotation][iid_is][out] */ + REFIID riid, _COM_Outptr_ void **ppvObject); DECLSPEC_XFGVIRT(IUnknown, AddRef) @@ -7018,43 +7036,32 @@ EXTERN_C const IID IID_ID3D12VideoEncoder; DECLSPEC_XFGVIRT(ID3D12Object, GetPrivateData) HRESULT ( STDMETHODCALLTYPE *GetPrivateData )( ID3D12VideoEncoder * This, - /* [annotation] */ _In_ REFGUID guid, - /* [annotation] */ _Inout_ UINT *pDataSize, - /* [annotation] */ _Out_writes_bytes_opt_( *pDataSize ) void *pData); DECLSPEC_XFGVIRT(ID3D12Object, SetPrivateData) HRESULT ( STDMETHODCALLTYPE *SetPrivateData )( ID3D12VideoEncoder * This, - /* [annotation] */ _In_ REFGUID guid, - /* [annotation] */ _In_ UINT DataSize, - /* [annotation] */ _In_reads_bytes_opt_( DataSize ) const void *pData); DECLSPEC_XFGVIRT(ID3D12Object, SetPrivateDataInterface) HRESULT ( STDMETHODCALLTYPE *SetPrivateDataInterface )( ID3D12VideoEncoder * This, - /* [annotation] */ _In_ REFGUID guid, - /* [annotation] */ _In_opt_ const IUnknown *pData); DECLSPEC_XFGVIRT(ID3D12Object, SetName) HRESULT ( STDMETHODCALLTYPE *SetName )( ID3D12VideoEncoder * This, - /* [annotation] */ _In_z_ LPCWSTR Name); DECLSPEC_XFGVIRT(ID3D12DeviceChild, GetDevice) HRESULT ( STDMETHODCALLTYPE *GetDevice )( ID3D12VideoEncoder * This, - /* [annotation][in] */ - _In_ REFIID riid, - /* [annotation][iid_is][out] */ + REFIID riid, _COM_Outptr_opt_ void **ppvDevice); DECLSPEC_XFGVIRT(ID3D12VideoEncoder, GetNodeMask) @@ -7072,14 +7079,12 @@ EXTERN_C const IID IID_ID3D12VideoEncoder; DECLSPEC_XFGVIRT(ID3D12VideoEncoder, GetCodecProfile) HRESULT ( STDMETHODCALLTYPE *GetCodecProfile )( ID3D12VideoEncoder * This, - /* [annotation] */ - _Out_ D3D12_VIDEO_ENCODER_PROFILE_DESC dstProfile); + _Inout_ D3D12_VIDEO_ENCODER_PROFILE_DESC dstProfile); DECLSPEC_XFGVIRT(ID3D12VideoEncoder, GetCodecConfiguration) HRESULT ( STDMETHODCALLTYPE *GetCodecConfiguration )( ID3D12VideoEncoder * This, - /* [annotation] */ - _Out_ D3D12_VIDEO_ENCODER_CODEC_CONFIGURATION dstCodecConfig); + _Inout_ D3D12_VIDEO_ENCODER_CODEC_CONFIGURATION dstCodecConfig); DECLSPEC_XFGVIRT(ID3D12VideoEncoder, GetInputFormat) DXGI_FORMAT ( STDMETHODCALLTYPE *GetInputFormat )( @@ -7184,18 +7189,15 @@ EXTERN_C const IID IID_ID3D12VideoEncoderHeap; virtual D3D12_VIDEO_ENCODER_CODEC STDMETHODCALLTYPE GetCodec( void) = 0; virtual HRESULT STDMETHODCALLTYPE GetCodecProfile( - /* [annotation] */ - _Out_ D3D12_VIDEO_ENCODER_PROFILE_DESC dstProfile) = 0; + _Inout_ D3D12_VIDEO_ENCODER_PROFILE_DESC dstProfile) = 0; virtual HRESULT STDMETHODCALLTYPE GetCodecLevel( - /* [annotation] */ - _Out_ D3D12_VIDEO_ENCODER_LEVEL_SETTING dstLevel) = 0; + _Inout_ D3D12_VIDEO_ENCODER_LEVEL_SETTING dstLevel) = 0; virtual UINT STDMETHODCALLTYPE GetResolutionListCount( void) = 0; virtual HRESULT STDMETHODCALLTYPE GetResolutionList( const UINT ResolutionsListCount, - /* [annotation] */ _Out_writes_(ResolutionsListCount) D3D12_VIDEO_ENCODER_PICTURE_RESOLUTION_DESC *pResolutionList) = 0; }; @@ -7210,9 +7212,7 @@ EXTERN_C const IID IID_ID3D12VideoEncoderHeap; DECLSPEC_XFGVIRT(IUnknown, QueryInterface) HRESULT ( STDMETHODCALLTYPE *QueryInterface )( ID3D12VideoEncoderHeap * This, - /* [annotation][in] */ - _In_ REFIID riid, - /* [annotation][iid_is][out] */ + REFIID riid, _COM_Outptr_ void **ppvObject); DECLSPEC_XFGVIRT(IUnknown, AddRef) @@ -7226,43 +7226,32 @@ EXTERN_C const IID IID_ID3D12VideoEncoderHeap; DECLSPEC_XFGVIRT(ID3D12Object, GetPrivateData) HRESULT ( STDMETHODCALLTYPE *GetPrivateData )( ID3D12VideoEncoderHeap * This, - /* [annotation] */ _In_ REFGUID guid, - /* [annotation] */ _Inout_ UINT *pDataSize, - /* [annotation] */ _Out_writes_bytes_opt_( *pDataSize ) void *pData); DECLSPEC_XFGVIRT(ID3D12Object, SetPrivateData) HRESULT ( STDMETHODCALLTYPE *SetPrivateData )( ID3D12VideoEncoderHeap * This, - /* [annotation] */ _In_ REFGUID guid, - /* [annotation] */ _In_ UINT DataSize, - /* [annotation] */ _In_reads_bytes_opt_( DataSize ) const void *pData); DECLSPEC_XFGVIRT(ID3D12Object, SetPrivateDataInterface) HRESULT ( STDMETHODCALLTYPE *SetPrivateDataInterface )( ID3D12VideoEncoderHeap * This, - /* [annotation] */ _In_ REFGUID guid, - /* [annotation] */ _In_opt_ const IUnknown *pData); DECLSPEC_XFGVIRT(ID3D12Object, SetName) HRESULT ( STDMETHODCALLTYPE *SetName )( ID3D12VideoEncoderHeap * This, - /* [annotation] */ _In_z_ LPCWSTR Name); DECLSPEC_XFGVIRT(ID3D12DeviceChild, GetDevice) HRESULT ( STDMETHODCALLTYPE *GetDevice )( ID3D12VideoEncoderHeap * This, - /* [annotation][in] */ - _In_ REFIID riid, - /* [annotation][iid_is][out] */ + REFIID riid, _COM_Outptr_opt_ void **ppvDevice); DECLSPEC_XFGVIRT(ID3D12VideoEncoderHeap, GetNodeMask) @@ -7280,14 +7269,12 @@ EXTERN_C const IID IID_ID3D12VideoEncoderHeap; DECLSPEC_XFGVIRT(ID3D12VideoEncoderHeap, GetCodecProfile) HRESULT ( STDMETHODCALLTYPE *GetCodecProfile )( ID3D12VideoEncoderHeap * This, - /* [annotation] */ - _Out_ D3D12_VIDEO_ENCODER_PROFILE_DESC dstProfile); + _Inout_ D3D12_VIDEO_ENCODER_PROFILE_DESC dstProfile); DECLSPEC_XFGVIRT(ID3D12VideoEncoderHeap, GetCodecLevel) HRESULT ( STDMETHODCALLTYPE *GetCodecLevel )( ID3D12VideoEncoderHeap * This, - /* [annotation] */ - _Out_ D3D12_VIDEO_ENCODER_LEVEL_SETTING dstLevel); + _Inout_ D3D12_VIDEO_ENCODER_LEVEL_SETTING dstLevel); DECLSPEC_XFGVIRT(ID3D12VideoEncoderHeap, GetResolutionListCount) UINT ( STDMETHODCALLTYPE *GetResolutionListCount )( @@ -7297,7 +7284,6 @@ EXTERN_C const IID IID_ID3D12VideoEncoderHeap; HRESULT ( STDMETHODCALLTYPE *GetResolutionList )( ID3D12VideoEncoderHeap * This, const UINT ResolutionsListCount, - /* [annotation] */ _Out_writes_(ResolutionsListCount) D3D12_VIDEO_ENCODER_PICTURE_RESOLUTION_DESC *pResolutionList); END_INTERFACE @@ -7389,19 +7375,13 @@ EXTERN_C const IID IID_ID3D12VideoDevice3; { public: virtual HRESULT STDMETHODCALLTYPE CreateVideoEncoder( - /* [annotation] */ _In_ const D3D12_VIDEO_ENCODER_DESC *pDesc, - /* [annotation] */ _In_ REFIID riid, - /* [annotation] */ _COM_Outptr_ void **ppVideoEncoder) = 0; virtual HRESULT STDMETHODCALLTYPE CreateVideoEncoderHeap( - /* [annotation] */ _In_ const D3D12_VIDEO_ENCODER_HEAP_DESC *pDesc, - /* [annotation] */ _In_ REFIID riid, - /* [annotation] */ _COM_Outptr_ void **ppVideoEncoderHeap) = 0; }; @@ -7416,9 +7396,7 @@ EXTERN_C const IID IID_ID3D12VideoDevice3; DECLSPEC_XFGVIRT(IUnknown, QueryInterface) HRESULT ( STDMETHODCALLTYPE *QueryInterface )( ID3D12VideoDevice3 * This, - /* [annotation][in] */ - _In_ REFIID riid, - /* [annotation][iid_is][out] */ + REFIID riid, _COM_Outptr_ void **ppvObject); DECLSPEC_XFGVIRT(IUnknown, AddRef) @@ -7433,153 +7411,107 @@ EXTERN_C const IID IID_ID3D12VideoDevice3; HRESULT ( STDMETHODCALLTYPE *CheckFeatureSupport )( ID3D12VideoDevice3 * This, D3D12_FEATURE_VIDEO FeatureVideo, - /* [annotation] */ _Inout_updates_bytes_(FeatureSupportDataSize) void *pFeatureSupportData, UINT FeatureSupportDataSize); DECLSPEC_XFGVIRT(ID3D12VideoDevice, CreateVideoDecoder) HRESULT ( STDMETHODCALLTYPE *CreateVideoDecoder )( ID3D12VideoDevice3 * This, - /* [annotation] */ _In_ const D3D12_VIDEO_DECODER_DESC *pDesc, - /* [annotation] */ _In_ REFIID riid, - /* [annotation][iid_is][out] */ _COM_Outptr_ void **ppVideoDecoder); DECLSPEC_XFGVIRT(ID3D12VideoDevice, CreateVideoDecoderHeap) HRESULT ( STDMETHODCALLTYPE *CreateVideoDecoderHeap )( ID3D12VideoDevice3 * This, - /* [annotation] */ _In_ const D3D12_VIDEO_DECODER_HEAP_DESC *pVideoDecoderHeapDesc, - /* [annotation] */ _In_ REFIID riid, - /* [annotation][iid_is][out] */ _COM_Outptr_ void **ppVideoDecoderHeap); DECLSPEC_XFGVIRT(ID3D12VideoDevice, CreateVideoProcessor) HRESULT ( STDMETHODCALLTYPE *CreateVideoProcessor )( ID3D12VideoDevice3 * This, UINT NodeMask, - /* [annotation] */ _In_ const D3D12_VIDEO_PROCESS_OUTPUT_STREAM_DESC *pOutputStreamDesc, UINT NumInputStreamDescs, - /* [annotation] */ _In_reads_(NumInputStreamDescs) const D3D12_VIDEO_PROCESS_INPUT_STREAM_DESC *pInputStreamDescs, - /* [annotation] */ _In_ REFIID riid, - /* [annotation][iid_is][out] */ _COM_Outptr_ void **ppVideoProcessor); DECLSPEC_XFGVIRT(ID3D12VideoDevice1, CreateVideoMotionEstimator) HRESULT ( STDMETHODCALLTYPE *CreateVideoMotionEstimator )( ID3D12VideoDevice3 * This, - /* [annotation] */ _In_ const D3D12_VIDEO_MOTION_ESTIMATOR_DESC *pDesc, - /* [annotation] */ _In_opt_ ID3D12ProtectedResourceSession *pProtectedResourceSession, - /* [annotation] */ _In_ REFIID riid, - /* [annotation][iid_is][out] */ _COM_Outptr_ void **ppVideoMotionEstimator); DECLSPEC_XFGVIRT(ID3D12VideoDevice1, CreateVideoMotionVectorHeap) HRESULT ( STDMETHODCALLTYPE *CreateVideoMotionVectorHeap )( ID3D12VideoDevice3 * This, - /* [annotation] */ _In_ const D3D12_VIDEO_MOTION_VECTOR_HEAP_DESC *pDesc, - /* [annotation] */ _In_opt_ ID3D12ProtectedResourceSession *pProtectedResourceSession, - /* [annotation] */ _In_ REFIID riid, - /* [annotation][iid_is][out] */ _COM_Outptr_ void **ppVideoMotionVectorHeap); DECLSPEC_XFGVIRT(ID3D12VideoDevice2, CreateVideoDecoder1) HRESULT ( STDMETHODCALLTYPE *CreateVideoDecoder1 )( ID3D12VideoDevice3 * This, - /* [annotation] */ _In_ const D3D12_VIDEO_DECODER_DESC *pDesc, - /* [annotation] */ _In_opt_ ID3D12ProtectedResourceSession *pProtectedResourceSession, - /* [annotation] */ _In_ REFIID riid, - /* [annotation][iid_is][out] */ _COM_Outptr_ void **ppVideoDecoder); DECLSPEC_XFGVIRT(ID3D12VideoDevice2, CreateVideoDecoderHeap1) HRESULT ( STDMETHODCALLTYPE *CreateVideoDecoderHeap1 )( ID3D12VideoDevice3 * This, - /* [annotation] */ _In_ const D3D12_VIDEO_DECODER_HEAP_DESC *pVideoDecoderHeapDesc, - /* [annotation] */ _In_opt_ ID3D12ProtectedResourceSession *pProtectedResourceSession, - /* [annotation] */ _In_ REFIID riid, - /* [annotation][iid_is][out] */ _COM_Outptr_ void **ppVideoDecoderHeap); DECLSPEC_XFGVIRT(ID3D12VideoDevice2, CreateVideoProcessor1) HRESULT ( STDMETHODCALLTYPE *CreateVideoProcessor1 )( ID3D12VideoDevice3 * This, UINT NodeMask, - /* [annotation] */ _In_ const D3D12_VIDEO_PROCESS_OUTPUT_STREAM_DESC *pOutputStreamDesc, UINT NumInputStreamDescs, - /* [annotation] */ _In_reads_(NumInputStreamDescs) const D3D12_VIDEO_PROCESS_INPUT_STREAM_DESC *pInputStreamDescs, - /* [annotation] */ _In_opt_ ID3D12ProtectedResourceSession *pProtectedResourceSession, - /* [annotation] */ _In_ REFIID riid, - /* [annotation][iid_is][out] */ _COM_Outptr_ void **ppVideoProcessor); DECLSPEC_XFGVIRT(ID3D12VideoDevice2, CreateVideoExtensionCommand) HRESULT ( STDMETHODCALLTYPE *CreateVideoExtensionCommand )( ID3D12VideoDevice3 * This, - /* [annotation] */ _In_ const D3D12_VIDEO_EXTENSION_COMMAND_DESC *pDesc, - /* [annotation] */ _In_reads_bytes_(CreationParametersDataSizeInBytes) const void *pCreationParameters, SIZE_T CreationParametersDataSizeInBytes, - /* [annotation] */ _In_opt_ ID3D12ProtectedResourceSession *pProtectedResourceSession, - /* [annotation] */ _In_ REFIID riid, - /* [annotation] */ _COM_Outptr_ void **ppVideoExtensionCommand); DECLSPEC_XFGVIRT(ID3D12VideoDevice2, ExecuteExtensionCommand) HRESULT ( STDMETHODCALLTYPE *ExecuteExtensionCommand )( ID3D12VideoDevice3 * This, - /* [annotation] */ _In_ ID3D12VideoExtensionCommand *pExtensionCommand, - /* [annotation] */ _In_reads_bytes_(ExecutionParametersSizeInBytes) const void *pExecutionParameters, SIZE_T ExecutionParametersSizeInBytes, - /* [annotation] */ _Out_writes_bytes_(OutputDataSizeInBytes) void *pOutputData, SIZE_T OutputDataSizeInBytes); DECLSPEC_XFGVIRT(ID3D12VideoDevice3, CreateVideoEncoder) HRESULT ( STDMETHODCALLTYPE *CreateVideoEncoder )( ID3D12VideoDevice3 * This, - /* [annotation] */ _In_ const D3D12_VIDEO_ENCODER_DESC *pDesc, - /* [annotation] */ _In_ REFIID riid, - /* [annotation] */ _COM_Outptr_ void **ppVideoEncoder); DECLSPEC_XFGVIRT(ID3D12VideoDevice3, CreateVideoEncoderHeap) HRESULT ( STDMETHODCALLTYPE *CreateVideoEncoderHeap )( ID3D12VideoDevice3 * This, - /* [annotation] */ _In_ const D3D12_VIDEO_ENCODER_HEAP_DESC *pDesc, - /* [annotation] */ _In_ REFIID riid, - /* [annotation] */ _COM_Outptr_ void **ppVideoEncoderHeap); END_INTERFACE @@ -7658,7 +7590,7 @@ EXTERN_C const IID IID_ID3D12VideoDevice3; #endif /* __ID3D12VideoDevice3_INTERFACE_DEFINED__ */ -/* interface __MIDL_itf_d3d12video_0000_0023 */ +/* interface __MIDL_itf_d3d12video_0000_0025 */ /* [local] */ typedef @@ -7714,26 +7646,19 @@ typedef struct D3D12_VIDEO_ENCODER_PICTURE_CONTROL_CODEC_DATA_H264 UINT FrameDecodingOrderNumber; UINT TemporalLayerIndex; UINT List0ReferenceFramesCount; - /* [annotation] */ _Field_size_full_(List0ReferenceFramesCount) UINT *pList0ReferenceFrames; UINT List1ReferenceFramesCount; - /* [annotation] */ _Field_size_full_(List1ReferenceFramesCount) UINT *pList1ReferenceFrames; UINT ReferenceFramesReconPictureDescriptorsCount; - /* [annotation] */ _Field_size_full_(ReferenceFramesReconPictureDescriptorsCount) D3D12_VIDEO_ENCODER_REFERENCE_PICTURE_DESCRIPTOR_H264 *pReferenceFramesReconPictureDescriptors; UCHAR adaptive_ref_pic_marking_mode_flag; UINT RefPicMarkingOperationsCommandsCount; - /* [annotation] */ _Field_size_full_(RefPicMarkingOperationsCommandsCount) D3D12_VIDEO_ENCODER_PICTURE_CONTROL_CODEC_DATA_H264_REFERENCE_PICTURE_MARKING_OPERATION *pRefPicMarkingOperationsCommands; UINT List0RefPicModificationsCount; - /* [annotation] */ _Field_size_full_(List0RefPicModificationsCount) D3D12_VIDEO_ENCODER_PICTURE_CONTROL_CODEC_DATA_H264_REFERENCE_PICTURE_LIST_MODIFICATION_OPERATION *pList0RefPicModifications; UINT List1RefPicModificationsCount; - /* [annotation] */ _Field_size_full_(List1RefPicModificationsCount) D3D12_VIDEO_ENCODER_PICTURE_CONTROL_CODEC_DATA_H264_REFERENCE_PICTURE_LIST_MODIFICATION_OPERATION *pList1RefPicModifications; UINT QPMapValuesCount; - /* [annotation] */ _Field_size_full_(QPMapValuesCount) INT8 *pRateControlQPMap; } D3D12_VIDEO_ENCODER_PICTURE_CONTROL_CODEC_DATA_H264; @@ -7771,22 +7696,16 @@ typedef struct D3D12_VIDEO_ENCODER_PICTURE_CONTROL_CODEC_DATA_HEVC UINT PictureOrderCountNumber; UINT TemporalLayerIndex; UINT List0ReferenceFramesCount; - /* [annotation] */ _Field_size_full_(List0ReferenceFramesCount) UINT *pList0ReferenceFrames; UINT List1ReferenceFramesCount; - /* [annotation] */ _Field_size_full_(List1ReferenceFramesCount) UINT *pList1ReferenceFrames; UINT ReferenceFramesReconPictureDescriptorsCount; - /* [annotation] */ _Field_size_full_(ReferenceFramesReconPictureDescriptorsCount) D3D12_VIDEO_ENCODER_REFERENCE_PICTURE_DESCRIPTOR_HEVC *pReferenceFramesReconPictureDescriptors; UINT List0RefPicModificationsCount; - /* [annotation] */ _Field_size_full_(List0RefPicModificationsCount) UINT *pList0RefPicModifications; UINT List1RefPicModificationsCount; - /* [annotation] */ _Field_size_full_(List1RefPicModificationsCount) UINT *pList1RefPicModifications; UINT QPMapValuesCount; - /* [annotation] */ _Field_size_full_(QPMapValuesCount) INT8 *pRateControlQPMap; } D3D12_VIDEO_ENCODER_PICTURE_CONTROL_CODEC_DATA_HEVC; @@ -7803,9 +7722,7 @@ typedef struct D3D12_VIDEO_ENCODER_PICTURE_CONTROL_CODEC_DATA typedef struct D3D12_VIDEO_ENCODE_REFERENCE_FRAMES { UINT NumTexture2Ds; - /* [annotation] */ _Field_size_full_(NumTexture2Ds) ID3D12Resource **ppTexture2Ds; - /* [annotation] */ _Field_size_full_(NumTexture2Ds) UINT *pSubresources; } D3D12_VIDEO_ENCODE_REFERENCE_FRAMES; @@ -7956,8 +7873,8 @@ typedef struct D3D12_VIDEO_ENCODER_ENCODEFRAME_OUTPUT_ARGUMENTS -extern RPC_IF_HANDLE __MIDL_itf_d3d12video_0000_0023_v0_0_c_ifspec; -extern RPC_IF_HANDLE __MIDL_itf_d3d12video_0000_0023_v0_0_s_ifspec; +extern RPC_IF_HANDLE __MIDL_itf_d3d12video_0000_0025_v0_0_c_ifspec; +extern RPC_IF_HANDLE __MIDL_itf_d3d12video_0000_0025_v0_0_s_ifspec; #ifndef __ID3D12VideoEncodeCommandList2_INTERFACE_DEFINED__ #define __ID3D12VideoEncodeCommandList2_INTERFACE_DEFINED__ @@ -7975,19 +7892,13 @@ EXTERN_C const IID IID_ID3D12VideoEncodeCommandList2; { public: virtual void STDMETHODCALLTYPE EncodeFrame( - /* [annotation] */ _In_ ID3D12VideoEncoder *pEncoder, - /* [annotation] */ _In_ ID3D12VideoEncoderHeap *pHeap, - /* [annotation] */ _In_ const D3D12_VIDEO_ENCODER_ENCODEFRAME_INPUT_ARGUMENTS *pInputArguments, - /* [annotation] */ _In_ const D3D12_VIDEO_ENCODER_ENCODEFRAME_OUTPUT_ARGUMENTS *pOutputArguments) = 0; virtual void STDMETHODCALLTYPE ResolveEncoderOutputMetadata( - /* [annotation] */ _In_ const D3D12_VIDEO_ENCODER_RESOLVE_METADATA_INPUT_ARGUMENTS *pInputArguments, - /* [annotation] */ _In_ const D3D12_VIDEO_ENCODER_RESOLVE_METADATA_OUTPUT_ARGUMENTS *pOutputArguments) = 0; }; @@ -8002,9 +7913,7 @@ EXTERN_C const IID IID_ID3D12VideoEncodeCommandList2; DECLSPEC_XFGVIRT(IUnknown, QueryInterface) HRESULT ( STDMETHODCALLTYPE *QueryInterface )( ID3D12VideoEncodeCommandList2 * This, - /* [annotation][in] */ - _In_ REFIID riid, - /* [annotation][iid_is][out] */ + REFIID riid, _COM_Outptr_ void **ppvObject); DECLSPEC_XFGVIRT(IUnknown, AddRef) @@ -8018,43 +7927,32 @@ EXTERN_C const IID IID_ID3D12VideoEncodeCommandList2; DECLSPEC_XFGVIRT(ID3D12Object, GetPrivateData) HRESULT ( STDMETHODCALLTYPE *GetPrivateData )( ID3D12VideoEncodeCommandList2 * This, - /* [annotation] */ _In_ REFGUID guid, - /* [annotation] */ _Inout_ UINT *pDataSize, - /* [annotation] */ _Out_writes_bytes_opt_( *pDataSize ) void *pData); DECLSPEC_XFGVIRT(ID3D12Object, SetPrivateData) HRESULT ( STDMETHODCALLTYPE *SetPrivateData )( ID3D12VideoEncodeCommandList2 * This, - /* [annotation] */ _In_ REFGUID guid, - /* [annotation] */ _In_ UINT DataSize, - /* [annotation] */ _In_reads_bytes_opt_( DataSize ) const void *pData); DECLSPEC_XFGVIRT(ID3D12Object, SetPrivateDataInterface) HRESULT ( STDMETHODCALLTYPE *SetPrivateDataInterface )( ID3D12VideoEncodeCommandList2 * This, - /* [annotation] */ _In_ REFGUID guid, - /* [annotation] */ _In_opt_ const IUnknown *pData); DECLSPEC_XFGVIRT(ID3D12Object, SetName) HRESULT ( STDMETHODCALLTYPE *SetName )( ID3D12VideoEncodeCommandList2 * This, - /* [annotation] */ _In_z_ LPCWSTR Name); DECLSPEC_XFGVIRT(ID3D12DeviceChild, GetDevice) HRESULT ( STDMETHODCALLTYPE *GetDevice )( ID3D12VideoEncodeCommandList2 * This, - /* [annotation][in] */ - _In_ REFIID riid, - /* [annotation][iid_is][out] */ + REFIID riid, _COM_Outptr_opt_ void **ppvDevice); DECLSPEC_XFGVIRT(ID3D12CommandList, GetType) @@ -8068,7 +7966,6 @@ EXTERN_C const IID IID_ID3D12VideoEncodeCommandList2; DECLSPEC_XFGVIRT(ID3D12VideoEncodeCommandList, Reset) HRESULT ( STDMETHODCALLTYPE *Reset )( ID3D12VideoEncodeCommandList2 * This, - /* [annotation] */ _In_ ID3D12CommandAllocator *pAllocator); DECLSPEC_XFGVIRT(ID3D12VideoEncodeCommandList, ClearState) @@ -8078,70 +7975,50 @@ EXTERN_C const IID IID_ID3D12VideoEncodeCommandList2; DECLSPEC_XFGVIRT(ID3D12VideoEncodeCommandList, ResourceBarrier) void ( STDMETHODCALLTYPE *ResourceBarrier )( ID3D12VideoEncodeCommandList2 * This, - /* [annotation] */ _In_ UINT NumBarriers, - /* [annotation] */ _In_reads_(NumBarriers) const D3D12_RESOURCE_BARRIER *pBarriers); DECLSPEC_XFGVIRT(ID3D12VideoEncodeCommandList, DiscardResource) void ( STDMETHODCALLTYPE *DiscardResource )( ID3D12VideoEncodeCommandList2 * This, - /* [annotation] */ _In_ ID3D12Resource *pResource, - /* [annotation] */ _In_opt_ const D3D12_DISCARD_REGION *pRegion); DECLSPEC_XFGVIRT(ID3D12VideoEncodeCommandList, BeginQuery) void ( STDMETHODCALLTYPE *BeginQuery )( ID3D12VideoEncodeCommandList2 * This, - /* [annotation] */ _In_ ID3D12QueryHeap *pQueryHeap, - /* [annotation] */ _In_ D3D12_QUERY_TYPE Type, - /* [annotation] */ _In_ UINT Index); DECLSPEC_XFGVIRT(ID3D12VideoEncodeCommandList, EndQuery) void ( STDMETHODCALLTYPE *EndQuery )( ID3D12VideoEncodeCommandList2 * This, - /* [annotation] */ _In_ ID3D12QueryHeap *pQueryHeap, - /* [annotation] */ _In_ D3D12_QUERY_TYPE Type, - /* [annotation] */ _In_ UINT Index); DECLSPEC_XFGVIRT(ID3D12VideoEncodeCommandList, ResolveQueryData) void ( STDMETHODCALLTYPE *ResolveQueryData )( ID3D12VideoEncodeCommandList2 * This, - /* [annotation] */ _In_ ID3D12QueryHeap *pQueryHeap, - /* [annotation] */ _In_ D3D12_QUERY_TYPE Type, - /* [annotation] */ _In_ UINT StartIndex, - /* [annotation] */ _In_ UINT NumQueries, - /* [annotation] */ _In_ ID3D12Resource *pDestinationBuffer, - /* [annotation] */ _In_ UINT64 AlignedDestinationBufferOffset); DECLSPEC_XFGVIRT(ID3D12VideoEncodeCommandList, SetPredication) void ( STDMETHODCALLTYPE *SetPredication )( ID3D12VideoEncodeCommandList2 * This, - /* [annotation] */ _In_opt_ ID3D12Resource *pBuffer, - /* [annotation] */ _In_ UINT64 AlignedBufferOffset, - /* [annotation] */ _In_ D3D12_PREDICATION_OP Operation); DECLSPEC_XFGVIRT(ID3D12VideoEncodeCommandList, SetMarker) void ( STDMETHODCALLTYPE *SetMarker )( ID3D12VideoEncodeCommandList2 * This, UINT Metadata, - /* [annotation] */ _In_reads_bytes_opt_(Size) const void *pData, UINT Size); @@ -8149,7 +8026,6 @@ EXTERN_C const IID IID_ID3D12VideoEncodeCommandList2; void ( STDMETHODCALLTYPE *BeginEvent )( ID3D12VideoEncodeCommandList2 * This, UINT Metadata, - /* [annotation] */ _In_reads_bytes_opt_(Size) const void *pData, UINT Size); @@ -8160,11 +8036,8 @@ EXTERN_C const IID IID_ID3D12VideoEncodeCommandList2; DECLSPEC_XFGVIRT(ID3D12VideoEncodeCommandList, EstimateMotion) void ( STDMETHODCALLTYPE *EstimateMotion )( ID3D12VideoEncodeCommandList2 * This, - /* [annotation] */ _In_ ID3D12VideoMotionEstimator *pMotionEstimator, - /* [annotation] */ _In_ const D3D12_VIDEO_MOTION_ESTIMATOR_OUTPUT *pOutputArguments, - /* [annotation] */ _In_ const D3D12_VIDEO_MOTION_ESTIMATOR_INPUT *pInputArguments); DECLSPEC_XFGVIRT(ID3D12VideoEncodeCommandList, ResolveMotionVectorHeap) @@ -8177,53 +8050,40 @@ EXTERN_C const IID IID_ID3D12VideoEncodeCommandList2; void ( STDMETHODCALLTYPE *WriteBufferImmediate )( ID3D12VideoEncodeCommandList2 * This, UINT Count, - /* [annotation] */ _In_reads_(Count) const D3D12_WRITEBUFFERIMMEDIATE_PARAMETER *pParams, - /* [annotation] */ _In_reads_opt_(Count) const D3D12_WRITEBUFFERIMMEDIATE_MODE *pModes); DECLSPEC_XFGVIRT(ID3D12VideoEncodeCommandList, SetProtectedResourceSession) void ( STDMETHODCALLTYPE *SetProtectedResourceSession )( ID3D12VideoEncodeCommandList2 * This, - /* [annotation] */ _In_opt_ ID3D12ProtectedResourceSession *pProtectedResourceSession); DECLSPEC_XFGVIRT(ID3D12VideoEncodeCommandList1, InitializeExtensionCommand) void ( STDMETHODCALLTYPE *InitializeExtensionCommand )( ID3D12VideoEncodeCommandList2 * This, - /* [annotation] */ _In_ ID3D12VideoExtensionCommand *pExtensionCommand, - /* [annotation] */ _In_reads_bytes_(InitializationParametersSizeInBytes) const void *pInitializationParameters, SIZE_T InitializationParametersSizeInBytes); DECLSPEC_XFGVIRT(ID3D12VideoEncodeCommandList1, ExecuteExtensionCommand) void ( STDMETHODCALLTYPE *ExecuteExtensionCommand )( ID3D12VideoEncodeCommandList2 * This, - /* [annotation] */ _In_ ID3D12VideoExtensionCommand *pExtensionCommand, - /* [annotation] */ _In_reads_bytes_(ExecutionParametersSizeInBytes) const void *pExecutionParameters, SIZE_T ExecutionParametersSizeInBytes); DECLSPEC_XFGVIRT(ID3D12VideoEncodeCommandList2, EncodeFrame) void ( STDMETHODCALLTYPE *EncodeFrame )( ID3D12VideoEncodeCommandList2 * This, - /* [annotation] */ _In_ ID3D12VideoEncoder *pEncoder, - /* [annotation] */ _In_ ID3D12VideoEncoderHeap *pHeap, - /* [annotation] */ _In_ const D3D12_VIDEO_ENCODER_ENCODEFRAME_INPUT_ARGUMENTS *pInputArguments, - /* [annotation] */ _In_ const D3D12_VIDEO_ENCODER_ENCODEFRAME_OUTPUT_ARGUMENTS *pOutputArguments); DECLSPEC_XFGVIRT(ID3D12VideoEncodeCommandList2, ResolveEncoderOutputMetadata) void ( STDMETHODCALLTYPE *ResolveEncoderOutputMetadata )( ID3D12VideoEncodeCommandList2 * This, - /* [annotation] */ _In_ const D3D12_VIDEO_ENCODER_RESOLVE_METADATA_INPUT_ARGUMENTS *pInputArguments, - /* [annotation] */ _In_ const D3D12_VIDEO_ENCODER_RESOLVE_METADATA_OUTPUT_ARGUMENTS *pOutputArguments); END_INTERFACE @@ -8343,7 +8203,338 @@ EXTERN_C const IID IID_ID3D12VideoEncodeCommandList2; #endif /* __ID3D12VideoEncodeCommandList2_INTERFACE_DEFINED__ */ -/* interface __MIDL_itf_d3d12video_0000_0024 */ +#ifndef __ID3D12VideoEncodeCommandList3_INTERFACE_DEFINED__ +#define __ID3D12VideoEncodeCommandList3_INTERFACE_DEFINED__ + +/* interface ID3D12VideoEncodeCommandList3 */ +/* [unique][local][object][uuid] */ + + +EXTERN_C const IID IID_ID3D12VideoEncodeCommandList3; + +#if defined(__cplusplus) && !defined(CINTERFACE) + + MIDL_INTERFACE("7f027b22-1515-4e85-aa0d-026486580576") + ID3D12VideoEncodeCommandList3 : public ID3D12VideoEncodeCommandList2 + { + public: + virtual void STDMETHODCALLTYPE Barrier( + UINT32 NumBarrierGroups, + _In_reads_(NumBarrierGroups) const D3D12_BARRIER_GROUP *pBarrierGroups) = 0; + + }; + + +#else /* C style interface */ + + typedef struct ID3D12VideoEncodeCommandList3Vtbl + { + BEGIN_INTERFACE + + DECLSPEC_XFGVIRT(IUnknown, QueryInterface) + HRESULT ( STDMETHODCALLTYPE *QueryInterface )( + ID3D12VideoEncodeCommandList3 * This, + REFIID riid, + _COM_Outptr_ void **ppvObject); + + DECLSPEC_XFGVIRT(IUnknown, AddRef) + ULONG ( STDMETHODCALLTYPE *AddRef )( + ID3D12VideoEncodeCommandList3 * This); + + DECLSPEC_XFGVIRT(IUnknown, Release) + ULONG ( STDMETHODCALLTYPE *Release )( + ID3D12VideoEncodeCommandList3 * This); + + DECLSPEC_XFGVIRT(ID3D12Object, GetPrivateData) + HRESULT ( STDMETHODCALLTYPE *GetPrivateData )( + ID3D12VideoEncodeCommandList3 * This, + _In_ REFGUID guid, + _Inout_ UINT *pDataSize, + _Out_writes_bytes_opt_( *pDataSize ) void *pData); + + DECLSPEC_XFGVIRT(ID3D12Object, SetPrivateData) + HRESULT ( STDMETHODCALLTYPE *SetPrivateData )( + ID3D12VideoEncodeCommandList3 * This, + _In_ REFGUID guid, + _In_ UINT DataSize, + _In_reads_bytes_opt_( DataSize ) const void *pData); + + DECLSPEC_XFGVIRT(ID3D12Object, SetPrivateDataInterface) + HRESULT ( STDMETHODCALLTYPE *SetPrivateDataInterface )( + ID3D12VideoEncodeCommandList3 * This, + _In_ REFGUID guid, + _In_opt_ const IUnknown *pData); + + DECLSPEC_XFGVIRT(ID3D12Object, SetName) + HRESULT ( STDMETHODCALLTYPE *SetName )( + ID3D12VideoEncodeCommandList3 * This, + _In_z_ LPCWSTR Name); + + DECLSPEC_XFGVIRT(ID3D12DeviceChild, GetDevice) + HRESULT ( STDMETHODCALLTYPE *GetDevice )( + ID3D12VideoEncodeCommandList3 * This, + REFIID riid, + _COM_Outptr_opt_ void **ppvDevice); + + DECLSPEC_XFGVIRT(ID3D12CommandList, GetType) + D3D12_COMMAND_LIST_TYPE ( STDMETHODCALLTYPE *GetType )( + ID3D12VideoEncodeCommandList3 * This); + + DECLSPEC_XFGVIRT(ID3D12VideoEncodeCommandList, Close) + HRESULT ( STDMETHODCALLTYPE *Close )( + ID3D12VideoEncodeCommandList3 * This); + + DECLSPEC_XFGVIRT(ID3D12VideoEncodeCommandList, Reset) + HRESULT ( STDMETHODCALLTYPE *Reset )( + ID3D12VideoEncodeCommandList3 * This, + _In_ ID3D12CommandAllocator *pAllocator); + + DECLSPEC_XFGVIRT(ID3D12VideoEncodeCommandList, ClearState) + void ( STDMETHODCALLTYPE *ClearState )( + ID3D12VideoEncodeCommandList3 * This); + + DECLSPEC_XFGVIRT(ID3D12VideoEncodeCommandList, ResourceBarrier) + void ( STDMETHODCALLTYPE *ResourceBarrier )( + ID3D12VideoEncodeCommandList3 * This, + _In_ UINT NumBarriers, + _In_reads_(NumBarriers) const D3D12_RESOURCE_BARRIER *pBarriers); + + DECLSPEC_XFGVIRT(ID3D12VideoEncodeCommandList, DiscardResource) + void ( STDMETHODCALLTYPE *DiscardResource )( + ID3D12VideoEncodeCommandList3 * This, + _In_ ID3D12Resource *pResource, + _In_opt_ const D3D12_DISCARD_REGION *pRegion); + + DECLSPEC_XFGVIRT(ID3D12VideoEncodeCommandList, BeginQuery) + void ( STDMETHODCALLTYPE *BeginQuery )( + ID3D12VideoEncodeCommandList3 * This, + _In_ ID3D12QueryHeap *pQueryHeap, + _In_ D3D12_QUERY_TYPE Type, + _In_ UINT Index); + + DECLSPEC_XFGVIRT(ID3D12VideoEncodeCommandList, EndQuery) + void ( STDMETHODCALLTYPE *EndQuery )( + ID3D12VideoEncodeCommandList3 * This, + _In_ ID3D12QueryHeap *pQueryHeap, + _In_ D3D12_QUERY_TYPE Type, + _In_ UINT Index); + + DECLSPEC_XFGVIRT(ID3D12VideoEncodeCommandList, ResolveQueryData) + void ( STDMETHODCALLTYPE *ResolveQueryData )( + ID3D12VideoEncodeCommandList3 * This, + _In_ ID3D12QueryHeap *pQueryHeap, + _In_ D3D12_QUERY_TYPE Type, + _In_ UINT StartIndex, + _In_ UINT NumQueries, + _In_ ID3D12Resource *pDestinationBuffer, + _In_ UINT64 AlignedDestinationBufferOffset); + + DECLSPEC_XFGVIRT(ID3D12VideoEncodeCommandList, SetPredication) + void ( STDMETHODCALLTYPE *SetPredication )( + ID3D12VideoEncodeCommandList3 * This, + _In_opt_ ID3D12Resource *pBuffer, + _In_ UINT64 AlignedBufferOffset, + _In_ D3D12_PREDICATION_OP Operation); + + DECLSPEC_XFGVIRT(ID3D12VideoEncodeCommandList, SetMarker) + void ( STDMETHODCALLTYPE *SetMarker )( + ID3D12VideoEncodeCommandList3 * This, + UINT Metadata, + _In_reads_bytes_opt_(Size) const void *pData, + UINT Size); + + DECLSPEC_XFGVIRT(ID3D12VideoEncodeCommandList, BeginEvent) + void ( STDMETHODCALLTYPE *BeginEvent )( + ID3D12VideoEncodeCommandList3 * This, + UINT Metadata, + _In_reads_bytes_opt_(Size) const void *pData, + UINT Size); + + DECLSPEC_XFGVIRT(ID3D12VideoEncodeCommandList, EndEvent) + void ( STDMETHODCALLTYPE *EndEvent )( + ID3D12VideoEncodeCommandList3 * This); + + DECLSPEC_XFGVIRT(ID3D12VideoEncodeCommandList, EstimateMotion) + void ( STDMETHODCALLTYPE *EstimateMotion )( + ID3D12VideoEncodeCommandList3 * This, + _In_ ID3D12VideoMotionEstimator *pMotionEstimator, + _In_ const D3D12_VIDEO_MOTION_ESTIMATOR_OUTPUT *pOutputArguments, + _In_ const D3D12_VIDEO_MOTION_ESTIMATOR_INPUT *pInputArguments); + + DECLSPEC_XFGVIRT(ID3D12VideoEncodeCommandList, ResolveMotionVectorHeap) + void ( STDMETHODCALLTYPE *ResolveMotionVectorHeap )( + ID3D12VideoEncodeCommandList3 * This, + const D3D12_RESOLVE_VIDEO_MOTION_VECTOR_HEAP_OUTPUT *pOutputArguments, + const D3D12_RESOLVE_VIDEO_MOTION_VECTOR_HEAP_INPUT *pInputArguments); + + DECLSPEC_XFGVIRT(ID3D12VideoEncodeCommandList, WriteBufferImmediate) + void ( STDMETHODCALLTYPE *WriteBufferImmediate )( + ID3D12VideoEncodeCommandList3 * This, + UINT Count, + _In_reads_(Count) const D3D12_WRITEBUFFERIMMEDIATE_PARAMETER *pParams, + _In_reads_opt_(Count) const D3D12_WRITEBUFFERIMMEDIATE_MODE *pModes); + + DECLSPEC_XFGVIRT(ID3D12VideoEncodeCommandList, SetProtectedResourceSession) + void ( STDMETHODCALLTYPE *SetProtectedResourceSession )( + ID3D12VideoEncodeCommandList3 * This, + _In_opt_ ID3D12ProtectedResourceSession *pProtectedResourceSession); + + DECLSPEC_XFGVIRT(ID3D12VideoEncodeCommandList1, InitializeExtensionCommand) + void ( STDMETHODCALLTYPE *InitializeExtensionCommand )( + ID3D12VideoEncodeCommandList3 * This, + _In_ ID3D12VideoExtensionCommand *pExtensionCommand, + _In_reads_bytes_(InitializationParametersSizeInBytes) const void *pInitializationParameters, + SIZE_T InitializationParametersSizeInBytes); + + DECLSPEC_XFGVIRT(ID3D12VideoEncodeCommandList1, ExecuteExtensionCommand) + void ( STDMETHODCALLTYPE *ExecuteExtensionCommand )( + ID3D12VideoEncodeCommandList3 * This, + _In_ ID3D12VideoExtensionCommand *pExtensionCommand, + _In_reads_bytes_(ExecutionParametersSizeInBytes) const void *pExecutionParameters, + SIZE_T ExecutionParametersSizeInBytes); + + DECLSPEC_XFGVIRT(ID3D12VideoEncodeCommandList2, EncodeFrame) + void ( STDMETHODCALLTYPE *EncodeFrame )( + ID3D12VideoEncodeCommandList3 * This, + _In_ ID3D12VideoEncoder *pEncoder, + _In_ ID3D12VideoEncoderHeap *pHeap, + _In_ const D3D12_VIDEO_ENCODER_ENCODEFRAME_INPUT_ARGUMENTS *pInputArguments, + _In_ const D3D12_VIDEO_ENCODER_ENCODEFRAME_OUTPUT_ARGUMENTS *pOutputArguments); + + DECLSPEC_XFGVIRT(ID3D12VideoEncodeCommandList2, ResolveEncoderOutputMetadata) + void ( STDMETHODCALLTYPE *ResolveEncoderOutputMetadata )( + ID3D12VideoEncodeCommandList3 * This, + _In_ const D3D12_VIDEO_ENCODER_RESOLVE_METADATA_INPUT_ARGUMENTS *pInputArguments, + _In_ const D3D12_VIDEO_ENCODER_RESOLVE_METADATA_OUTPUT_ARGUMENTS *pOutputArguments); + + DECLSPEC_XFGVIRT(ID3D12VideoEncodeCommandList3, Barrier) + void ( STDMETHODCALLTYPE *Barrier )( + ID3D12VideoEncodeCommandList3 * This, + UINT32 NumBarrierGroups, + _In_reads_(NumBarrierGroups) const D3D12_BARRIER_GROUP *pBarrierGroups); + + END_INTERFACE + } ID3D12VideoEncodeCommandList3Vtbl; + + interface ID3D12VideoEncodeCommandList3 + { + CONST_VTBL struct ID3D12VideoEncodeCommandList3Vtbl *lpVtbl; + }; + + + +#ifdef COBJMACROS + + +#define ID3D12VideoEncodeCommandList3_QueryInterface(This,riid,ppvObject) \ + ( (This)->lpVtbl -> QueryInterface(This,riid,ppvObject) ) + +#define ID3D12VideoEncodeCommandList3_AddRef(This) \ + ( (This)->lpVtbl -> AddRef(This) ) + +#define ID3D12VideoEncodeCommandList3_Release(This) \ + ( (This)->lpVtbl -> Release(This) ) + + +#define ID3D12VideoEncodeCommandList3_GetPrivateData(This,guid,pDataSize,pData) \ + ( (This)->lpVtbl -> GetPrivateData(This,guid,pDataSize,pData) ) + +#define ID3D12VideoEncodeCommandList3_SetPrivateData(This,guid,DataSize,pData) \ + ( (This)->lpVtbl -> SetPrivateData(This,guid,DataSize,pData) ) + +#define ID3D12VideoEncodeCommandList3_SetPrivateDataInterface(This,guid,pData) \ + ( (This)->lpVtbl -> SetPrivateDataInterface(This,guid,pData) ) + +#define ID3D12VideoEncodeCommandList3_SetName(This,Name) \ + ( (This)->lpVtbl -> SetName(This,Name) ) + + +#define ID3D12VideoEncodeCommandList3_GetDevice(This,riid,ppvDevice) \ + ( (This)->lpVtbl -> GetDevice(This,riid,ppvDevice) ) + + +#define ID3D12VideoEncodeCommandList3_GetType(This) \ + ( (This)->lpVtbl -> GetType(This) ) + + +#define ID3D12VideoEncodeCommandList3_Close(This) \ + ( (This)->lpVtbl -> Close(This) ) + +#define ID3D12VideoEncodeCommandList3_Reset(This,pAllocator) \ + ( (This)->lpVtbl -> Reset(This,pAllocator) ) + +#define ID3D12VideoEncodeCommandList3_ClearState(This) \ + ( (This)->lpVtbl -> ClearState(This) ) + +#define ID3D12VideoEncodeCommandList3_ResourceBarrier(This,NumBarriers,pBarriers) \ + ( (This)->lpVtbl -> ResourceBarrier(This,NumBarriers,pBarriers) ) + +#define ID3D12VideoEncodeCommandList3_DiscardResource(This,pResource,pRegion) \ + ( (This)->lpVtbl -> DiscardResource(This,pResource,pRegion) ) + +#define ID3D12VideoEncodeCommandList3_BeginQuery(This,pQueryHeap,Type,Index) \ + ( (This)->lpVtbl -> BeginQuery(This,pQueryHeap,Type,Index) ) + +#define ID3D12VideoEncodeCommandList3_EndQuery(This,pQueryHeap,Type,Index) \ + ( (This)->lpVtbl -> EndQuery(This,pQueryHeap,Type,Index) ) + +#define ID3D12VideoEncodeCommandList3_ResolveQueryData(This,pQueryHeap,Type,StartIndex,NumQueries,pDestinationBuffer,AlignedDestinationBufferOffset) \ + ( (This)->lpVtbl -> ResolveQueryData(This,pQueryHeap,Type,StartIndex,NumQueries,pDestinationBuffer,AlignedDestinationBufferOffset) ) + +#define ID3D12VideoEncodeCommandList3_SetPredication(This,pBuffer,AlignedBufferOffset,Operation) \ + ( (This)->lpVtbl -> SetPredication(This,pBuffer,AlignedBufferOffset,Operation) ) + +#define ID3D12VideoEncodeCommandList3_SetMarker(This,Metadata,pData,Size) \ + ( (This)->lpVtbl -> SetMarker(This,Metadata,pData,Size) ) + +#define ID3D12VideoEncodeCommandList3_BeginEvent(This,Metadata,pData,Size) \ + ( (This)->lpVtbl -> BeginEvent(This,Metadata,pData,Size) ) + +#define ID3D12VideoEncodeCommandList3_EndEvent(This) \ + ( (This)->lpVtbl -> EndEvent(This) ) + +#define ID3D12VideoEncodeCommandList3_EstimateMotion(This,pMotionEstimator,pOutputArguments,pInputArguments) \ + ( (This)->lpVtbl -> EstimateMotion(This,pMotionEstimator,pOutputArguments,pInputArguments) ) + +#define ID3D12VideoEncodeCommandList3_ResolveMotionVectorHeap(This,pOutputArguments,pInputArguments) \ + ( (This)->lpVtbl -> ResolveMotionVectorHeap(This,pOutputArguments,pInputArguments) ) + +#define ID3D12VideoEncodeCommandList3_WriteBufferImmediate(This,Count,pParams,pModes) \ + ( (This)->lpVtbl -> WriteBufferImmediate(This,Count,pParams,pModes) ) + +#define ID3D12VideoEncodeCommandList3_SetProtectedResourceSession(This,pProtectedResourceSession) \ + ( (This)->lpVtbl -> SetProtectedResourceSession(This,pProtectedResourceSession) ) + + +#define ID3D12VideoEncodeCommandList3_InitializeExtensionCommand(This,pExtensionCommand,pInitializationParameters,InitializationParametersSizeInBytes) \ + ( (This)->lpVtbl -> InitializeExtensionCommand(This,pExtensionCommand,pInitializationParameters,InitializationParametersSizeInBytes) ) + +#define ID3D12VideoEncodeCommandList3_ExecuteExtensionCommand(This,pExtensionCommand,pExecutionParameters,ExecutionParametersSizeInBytes) \ + ( (This)->lpVtbl -> ExecuteExtensionCommand(This,pExtensionCommand,pExecutionParameters,ExecutionParametersSizeInBytes) ) + + +#define ID3D12VideoEncodeCommandList3_EncodeFrame(This,pEncoder,pHeap,pInputArguments,pOutputArguments) \ + ( (This)->lpVtbl -> EncodeFrame(This,pEncoder,pHeap,pInputArguments,pOutputArguments) ) + +#define ID3D12VideoEncodeCommandList3_ResolveEncoderOutputMetadata(This,pInputArguments,pOutputArguments) \ + ( (This)->lpVtbl -> ResolveEncoderOutputMetadata(This,pInputArguments,pOutputArguments) ) + + +#define ID3D12VideoEncodeCommandList3_Barrier(This,NumBarrierGroups,pBarrierGroups) \ + ( (This)->lpVtbl -> Barrier(This,NumBarrierGroups,pBarrierGroups) ) + +#endif /* COBJMACROS */ + + +#endif /* C style interface */ + + + + +#endif /* __ID3D12VideoEncodeCommandList3_INTERFACE_DEFINED__ */ + + +/* interface __MIDL_itf_d3d12video_0000_0027 */ /* [local] */ #endif /* WINAPI_FAMILY_PARTITION(WINAPI_PARTITION_APP | WINAPI_PARTITION_GAMES) */ @@ -8366,16 +8557,19 @@ DEFINE_GUID(IID_ID3D12VideoProcessor1,0xF3CFE615,0x553F,0x425C,0x86,0xD8,0xEE,0x DEFINE_GUID(IID_ID3D12VideoExtensionCommand,0x554E41E8,0xAE8E,0x4A8C,0xB7,0xD2,0x5B,0x4F,0x27,0x4A,0x30,0xE4); DEFINE_GUID(IID_ID3D12VideoDevice2,0xF019AC49,0xF838,0x4A95,0x9B,0x17,0x57,0x94,0x37,0xC8,0xF5,0x13); DEFINE_GUID(IID_ID3D12VideoDecodeCommandList2,0x6e120880,0xc114,0x4153,0x80,0x36,0xd2,0x47,0x05,0x1e,0x17,0x29); +DEFINE_GUID(IID_ID3D12VideoDecodeCommandList3,0x2aee8c37,0x9562,0x42da,0x8a,0xbf,0x61,0xef,0xeb,0x2e,0x45,0x13); DEFINE_GUID(IID_ID3D12VideoProcessCommandList2,0xdb525ae4,0x6ad6,0x473c,0xba,0xa7,0x59,0xb2,0xe3,0x70,0x82,0xe4); +DEFINE_GUID(IID_ID3D12VideoProcessCommandList3,0x1a0a4ca4,0x9f08,0x40ce,0x95,0x58,0xb4,0x11,0xfd,0x26,0x66,0xff); DEFINE_GUID(IID_ID3D12VideoEncodeCommandList1,0x94971eca,0x2bdb,0x4769,0x88,0xcf,0x36,0x75,0xea,0x75,0x7e,0xbc); DEFINE_GUID(IID_ID3D12VideoEncoder,0x2E0D212D,0x8DF9,0x44A6,0xA7,0x70,0xBB,0x28,0x9B,0x18,0x27,0x37); DEFINE_GUID(IID_ID3D12VideoEncoderHeap,0x22B35D96,0x876A,0x44C0,0xB2,0x5E,0xFB,0x8C,0x9C,0x7F,0x1C,0x4A); DEFINE_GUID(IID_ID3D12VideoDevice3,0x4243ADB4,0x3A32,0x4666,0x97,0x3C,0x0C,0xCC,0x56,0x25,0xDC,0x44); DEFINE_GUID(IID_ID3D12VideoEncodeCommandList2,0x895491e2,0xe701,0x46a9,0x9a,0x1f,0x8d,0x34,0x80,0xed,0x86,0x7a); +DEFINE_GUID(IID_ID3D12VideoEncodeCommandList3,0x7f027b22,0x1515,0x4e85,0xaa,0x0d,0x02,0x64,0x86,0x58,0x05,0x76); -extern RPC_IF_HANDLE __MIDL_itf_d3d12video_0000_0024_v0_0_c_ifspec; -extern RPC_IF_HANDLE __MIDL_itf_d3d12video_0000_0024_v0_0_s_ifspec; +extern RPC_IF_HANDLE __MIDL_itf_d3d12video_0000_0027_v0_0_c_ifspec; +extern RPC_IF_HANDLE __MIDL_itf_d3d12video_0000_0027_v0_0_s_ifspec; /* Additional Prototypes for ALL interfaces */ diff --git a/generation/WinSDK/RecompiledIdlHeaders/um/d3d12video.idl b/generation/WinSDK/RecompiledIdlHeaders/um/d3d12video.idl index 18dc2ad0f..d2f9a622b 100644 --- a/generation/WinSDK/RecompiledIdlHeaders/um/d3d12video.idl +++ b/generation/WinSDK/RecompiledIdlHeaders/um/d3d12video.idl @@ -4,8 +4,8 @@ * Licensed under the MIT license * *-------------------------------------------------------------------------------------*/ -import "OAIdl.idl"; -import "OCIdl.idl"; +import "oaidl.idl"; +import "ocidl.idl"; import "dxgicommon.idl"; import "d3d12.idl"; @@ -79,6 +79,20 @@ typedef enum D3D12_FEATURE_VIDEO D3D12_FEATURE_VIDEO_MOTION_ESTIMATOR_PROTECTED_RESOURCES = 30, D3D12_FEATURE_VIDEO_DECODER_HEAP_SIZE1 = 31, D3D12_FEATURE_VIDEO_PROCESSOR_SIZE1 = 32, + D3D12_FEATURE_VIDEO_ENCODER_CODEC = 33, + D3D12_FEATURE_VIDEO_ENCODER_PROFILE_LEVEL = 34, + D3D12_FEATURE_VIDEO_ENCODER_OUTPUT_RESOLUTION_RATIOS_COUNT = 35, + D3D12_FEATURE_VIDEO_ENCODER_OUTPUT_RESOLUTION = 36, + D3D12_FEATURE_VIDEO_ENCODER_INPUT_FORMAT = 37, + D3D12_FEATURE_VIDEO_ENCODER_RATE_CONTROL_MODE = 38, + D3D12_FEATURE_VIDEO_ENCODER_INTRA_REFRESH_MODE = 39, + D3D12_FEATURE_VIDEO_ENCODER_FRAME_SUBREGION_LAYOUT_MODE = 40, + D3D12_FEATURE_VIDEO_ENCODER_HEAP_SIZE = 41, + D3D12_FEATURE_VIDEO_ENCODER_CODEC_CONFIGURATION_SUPPORT = 42, + D3D12_FEATURE_VIDEO_ENCODER_SUPPORT = 43, + D3D12_FEATURE_VIDEO_ENCODER_CODEC_PICTURE_CONTROL_SUPPORT = 44, + D3D12_FEATURE_VIDEO_ENCODER_RESOURCE_REQUIREMENTS = 45, + } D3D12_FEATURE_VIDEO; @@ -1367,6 +1381,16 @@ interface ID3D12VideoDecodeCommandList2 SIZE_T ExecutionParametersSizeInBytes); } +[uuid(2aee8c37-9562-42da-8abf-61efeb2e4513), object, local, pointer_default(unique)] +interface ID3D12VideoDecodeCommandList3 + : ID3D12VideoDecodeCommandList2 +{ + void Barrier( + UINT32 NumBarrierGroups, + [annotation("_In_reads_(NumBarrierGroups)")] const D3D12_BARRIER_GROUP *pBarrierGroups + ); +} + [uuid(db525ae4-6ad6-473c-baa7-59b2e37082e4), object, local, pointer_default(unique)] interface ID3D12VideoProcessCommandList2 : ID3D12VideoProcessCommandList1 @@ -1387,6 +1411,16 @@ interface ID3D12VideoProcessCommandList2 SIZE_T ExecutionParametersSizeInBytes); } +[uuid(1a0a4ca4-9f08-40ce-9558-b411fd2666ff), object, local, pointer_default(unique)] +interface ID3D12VideoProcessCommandList3 + : ID3D12VideoProcessCommandList2 +{ + void Barrier( + UINT32 NumBarrierGroups, + [annotation("_In_reads_(NumBarrierGroups)")] const D3D12_BARRIER_GROUP *pBarrierGroups + ); +} + [uuid(94971eca-2bdb-4769-88cf-3675ea757ebc), object, local, pointer_default(unique)] interface ID3D12VideoEncodeCommandList1 : ID3D12VideoEncodeCommandList @@ -2065,8 +2099,8 @@ interface ID3D12VideoEncoder UINT GetNodeMask(); D3D12_VIDEO_ENCODER_FLAGS GetEncoderFlags(); D3D12_VIDEO_ENCODER_CODEC GetCodec(); - HRESULT GetCodecProfile([annotation("_Out_")] D3D12_VIDEO_ENCODER_PROFILE_DESC dstProfile); - HRESULT GetCodecConfiguration([annotation("_Out_")] D3D12_VIDEO_ENCODER_CODEC_CONFIGURATION dstCodecConfig); + HRESULT GetCodecProfile([annotation("_Inout_")] D3D12_VIDEO_ENCODER_PROFILE_DESC dstProfile); + HRESULT GetCodecConfiguration([annotation("_Inout_")] D3D12_VIDEO_ENCODER_CODEC_CONFIGURATION dstCodecConfig); DXGI_FORMAT GetInputFormat(); D3D12_VIDEO_ENCODER_MOTION_ESTIMATION_PRECISION_MODE GetMaxMotionEstimationPrecision(); } @@ -2078,8 +2112,8 @@ interface ID3D12VideoEncoderHeap UINT GetNodeMask(); D3D12_VIDEO_ENCODER_HEAP_FLAGS GetEncoderHeapFlags(); D3D12_VIDEO_ENCODER_CODEC GetCodec(); - HRESULT GetCodecProfile([annotation("_Out_")] D3D12_VIDEO_ENCODER_PROFILE_DESC dstProfile); - HRESULT GetCodecLevel([annotation("_Out_")] D3D12_VIDEO_ENCODER_LEVEL_SETTING dstLevel); + HRESULT GetCodecProfile([annotation("_Inout_")] D3D12_VIDEO_ENCODER_PROFILE_DESC dstProfile); + HRESULT GetCodecLevel([annotation("_Inout_")] D3D12_VIDEO_ENCODER_LEVEL_SETTING dstLevel); UINT GetResolutionListCount(); HRESULT GetResolutionList( const UINT ResolutionsListCount, @@ -2408,6 +2442,18 @@ interface ID3D12VideoEncodeCommandList2 [annotation("_In_")] const D3D12_VIDEO_ENCODER_RESOLVE_METADATA_OUTPUT_ARGUMENTS* pOutputArguments); } + +[uuid(7f027b22-1515-4e85-aa0d-026486580576), object, local, pointer_default(unique)] +interface ID3D12VideoEncodeCommandList3 + : ID3D12VideoEncodeCommandList2 +{ + + void Barrier( + UINT32 NumBarrierGroups, + [annotation("_In_reads_(NumBarrierGroups)")] const D3D12_BARRIER_GROUP *pBarrierGroups + ); +} + cpp_quote("#endif /* WINAPI_FAMILY_PARTITION(WINAPI_PARTITION_APP | WINAPI_PARTITION_GAMES) */") #pragma endregion @@ -2429,9 +2475,12 @@ cpp_quote( "DEFINE_GUID(IID_ID3D12VideoProcessor1,0xF3CFE615,0x553F,0x425C,0x86, cpp_quote( "DEFINE_GUID(IID_ID3D12VideoExtensionCommand,0x554E41E8,0xAE8E,0x4A8C,0xB7,0xD2,0x5B,0x4F,0x27,0x4A,0x30,0xE4);" ) cpp_quote( "DEFINE_GUID(IID_ID3D12VideoDevice2,0xF019AC49,0xF838,0x4A95,0x9B,0x17,0x57,0x94,0x37,0xC8,0xF5,0x13);" ) cpp_quote( "DEFINE_GUID(IID_ID3D12VideoDecodeCommandList2,0x6e120880,0xc114,0x4153,0x80,0x36,0xd2,0x47,0x05,0x1e,0x17,0x29);" ) +cpp_quote( "DEFINE_GUID(IID_ID3D12VideoDecodeCommandList3,0x2aee8c37,0x9562,0x42da,0x8a,0xbf,0x61,0xef,0xeb,0x2e,0x45,0x13);" ) cpp_quote( "DEFINE_GUID(IID_ID3D12VideoProcessCommandList2,0xdb525ae4,0x6ad6,0x473c,0xba,0xa7,0x59,0xb2,0xe3,0x70,0x82,0xe4);" ) +cpp_quote( "DEFINE_GUID(IID_ID3D12VideoProcessCommandList3,0x1a0a4ca4,0x9f08,0x40ce,0x95,0x58,0xb4,0x11,0xfd,0x26,0x66,0xff);" ) cpp_quote( "DEFINE_GUID(IID_ID3D12VideoEncodeCommandList1,0x94971eca,0x2bdb,0x4769,0x88,0xcf,0x36,0x75,0xea,0x75,0x7e,0xbc);" ) cpp_quote( "DEFINE_GUID(IID_ID3D12VideoEncoder,0x2E0D212D,0x8DF9,0x44A6,0xA7,0x70,0xBB,0x28,0x9B,0x18,0x27,0x37);" ) cpp_quote( "DEFINE_GUID(IID_ID3D12VideoEncoderHeap,0x22B35D96,0x876A,0x44C0,0xB2,0x5E,0xFB,0x8C,0x9C,0x7F,0x1C,0x4A);" ) cpp_quote( "DEFINE_GUID(IID_ID3D12VideoDevice3,0x4243ADB4,0x3A32,0x4666,0x97,0x3C,0x0C,0xCC,0x56,0x25,0xDC,0x44);" ) cpp_quote( "DEFINE_GUID(IID_ID3D12VideoEncodeCommandList2,0x895491e2,0xe701,0x46a9,0x9a,0x1f,0x8d,0x34,0x80,0xed,0x86,0x7a);" ) +cpp_quote( "DEFINE_GUID(IID_ID3D12VideoEncodeCommandList3,0x7f027b22,0x1515,0x4e85,0xaa,0x0d,0x02,0x64,0x86,0x58,0x05,0x76);" ) diff --git a/generation/WinSDK/RecompiledIdlHeaders/um/d3dcommon.h b/generation/WinSDK/RecompiledIdlHeaders/um/d3dcommon.h index eb3e38a48..33e776237 100644 --- a/generation/WinSDK/RecompiledIdlHeaders/um/d3dcommon.h +++ b/generation/WinSDK/RecompiledIdlHeaders/um/d3dcommon.h @@ -1,9 +1,15 @@ +/*------------------------------------------------------------------------------------- + * + * Copyright (c) Microsoft Corporation + * Licensed under the MIT license + * + *-------------------------------------------------------------------------------------*/ /* this ALWAYS GENERATED file contains the definitions for the interfaces */ - /* File created by MIDL compiler version 8.01.0626 */ + /* File created by MIDL compiler version 8.01.0628 */ /* @@MIDL_FILE_HEADING( ) */ @@ -38,7 +44,7 @@ #endif #ifndef DECLSPEC_XFGVIRT -#if _CONTROL_FLOW_GUARD_XFG +#if defined(_CONTROL_FLOW_GUARD_XFG) #define DECLSPEC_XFGVIRT(base, func) __declspec(xfg_virtual(base, func)) #else #define DECLSPEC_XFGVIRT(base, func) @@ -62,8 +68,8 @@ typedef interface ID3DDestructionNotifier ID3DDestructionNotifier; /* header files for imported files */ -#include "OAIdl.h" -#include "OCIdl.h" +#include "oaidl.h" +#include "ocidl.h" #ifdef __cplusplus extern "C"{ @@ -124,6 +130,7 @@ enum D3D_PRIMITIVE_TOPOLOGY D3D_PRIMITIVE_TOPOLOGY_LINESTRIP = 3, D3D_PRIMITIVE_TOPOLOGY_TRIANGLELIST = 4, D3D_PRIMITIVE_TOPOLOGY_TRIANGLESTRIP = 5, + D3D_PRIMITIVE_TOPOLOGY_TRIANGLEFAN = 6, D3D_PRIMITIVE_TOPOLOGY_LINELIST_ADJ = 10, D3D_PRIMITIVE_TOPOLOGY_LINESTRIP_ADJ = 11, D3D_PRIMITIVE_TOPOLOGY_TRIANGLELIST_ADJ = 12, @@ -380,6 +387,8 @@ enum D3D_SRV_DIMENSION #define D3D_SHADER_FEATURE_SAMPLER_DESCRIPTOR_HEAP_INDEXING 0x4000000 #define D3D_SHADER_FEATURE_WAVE_MMA 0x8000000 #define D3D_SHADER_FEATURE_ATOMIC_INT64_ON_DESCRIPTOR_HEAP_RESOURCE 0x10000000 +#define D3D_SHADER_FEATURE_ADVANCED_TEXTURE_OPS 0x20000000 +#define D3D_SHADER_FEATURE_WRITEABLE_MSAA_TEXTURES 0x40000000 typedef struct _D3D_SHADER_MACRO { LPCSTR Name; @@ -425,8 +434,7 @@ EXTERN_C const IID IID_ID3D10Blob; DECLSPEC_XFGVIRT(IUnknown, QueryInterface) HRESULT ( STDMETHODCALLTYPE *QueryInterface )( ID3D10Blob * This, - /* [annotation][in] */ - _In_ REFIID riid, + /* [in] */ REFIID riid, /* [annotation][iid_is][out] */ _COM_Outptr_ void **ppvObject); @@ -541,8 +549,7 @@ EXTERN_C const IID IID_ID3DDestructionNotifier; DECLSPEC_XFGVIRT(IUnknown, QueryInterface) HRESULT ( STDMETHODCALLTYPE *QueryInterface )( ID3DDestructionNotifier * This, - /* [annotation][in] */ - _In_ REFIID riid, + /* [in] */ REFIID riid, /* [annotation][iid_is][out] */ _COM_Outptr_ void **ppvObject); @@ -1037,6 +1044,46 @@ enum _D3D_PARAMETER_FLAGS D3D_PF_FORCE_DWORD = 0x7fffffff } D3D_PARAMETER_FLAGS; +typedef +enum D3D_FORMAT_LAYOUT + { + D3DFL_STANDARD = 0, + D3DFL_CUSTOM = -1 + } D3D_FORMAT_LAYOUT; + +typedef +enum D3D_FORMAT_TYPE_LEVEL + { + D3DFTL_NO_TYPE = 0, + D3DFTL_PARTIAL_TYPE = -2, + D3DFTL_FULL_TYPE = -1 + } D3D_FORMAT_TYPE_LEVEL; + +typedef +enum D3D_FORMAT_COMPONENT_NAME + { + D3DFCN_R = -4, + D3DFCN_G = -3, + D3DFCN_B = -2, + D3DFCN_A = -1, + D3DFCN_D = 0, + D3DFCN_S = 1, + D3DFCN_X = 2 + } D3D_FORMAT_COMPONENT_NAME; + +typedef +enum D3D_FORMAT_COMPONENT_INTERPRETATION + { + D3DFCI_TYPELESS = 0, + D3DFCI_FLOAT = -4, + D3DFCI_SNORM = -3, + D3DFCI_UNORM = -2, + D3DFCI_SINT = -1, + D3DFCI_UINT = 1, + D3DFCI_UNORM_SRGB = 2, + D3DFCI_BIASED_FIXED_2_8 = 3 + } D3D_FORMAT_COMPONENT_INTERPRETATION; + DEFINE_GUID(WKPDID_D3DDebugObjectName,0x429b8c22,0x9188,0x4b0c,0x87,0x42,0xac,0xb0,0xbf,0x85,0xc2,0x00); DEFINE_GUID(WKPDID_D3DDebugObjectNameW,0x4cca5fd8,0x921f,0x42c8,0x85,0x66,0x70,0xca,0xf2,0xa9,0xb7,0x41); DEFINE_GUID(WKPDID_CommentStringW,0xd0149dc0,0x90e8,0x4ec8,0x81, 0x44, 0xe9, 0x00, 0xad, 0x26, 0x6b, 0xb2); diff --git a/scripts/RecompileIdlFilesForScraping.ps1 b/scripts/RecompileIdlFilesForScraping.ps1 index 91d7c644b..181c73e21 100644 --- a/scripts/RecompileIdlFilesForScraping.ps1 +++ b/scripts/RecompileIdlFilesForScraping.ps1 @@ -22,6 +22,12 @@ copy-item -Path "$sdkIncludeDir\shared" -destination "$recompiledIdlHeadersDir" copy-item -Path "$sdkIncludeDir\winrt" -destination "$recompiledIdlHeadersDir" -recurse copy-item -Path "$sdkIncludeDir\ucrt" -destination "$recompiledIdlHeadersDir" -recurse +$d3dPkgPath = Get-BuildToolsNugetPropsProperty("PkgMicrosoft_Direct3D_D3D12") +$d3dIncludeDir = Join-Path $d3dPkgPath "build/native/include/" +Write-Host "Updating to latest Direct3D headers...$d3dIncludeDir to $recompiledIdlHeadersDir" +copy-item -Path "$d3dIncludeDir\*.*" -destination "$recompiledIdlHeadersDir\um" -Exclude dxgiformat.* -recurse +copy-item -Path "$d3dIncludeDir\dxgiformat.*" -destination "$recompiledIdlHeadersDir\shared" -recurse + Write-Host "Recompiling midl headers with SAL annotations in $recompiledIdlHeadersDir" $version = [System.IO.Path]::GetFileName($cppPkgPath)