1#ifndef __mini_d3d12_h__
2#define __mini_d3d12_h__
6#pragma clang diagnostic push
7#pragma clang diagnostic ignored "-Wunknown-pragmas"
8#pragma clang diagnostic ignored "-Wunused-value"
18#define _STDCALL_SUPPORTED
60#ifndef _COM_Outptr_opt_
61#define _COM_Outptr_opt_
68#ifndef _Null_terminated_
69#define _Null_terminated_
72#ifndef _Return_type_success_
73#define _Return_type_success_(expr)
76#ifndef _Post_equal_to_
77#define _Post_equal_to_(e)
80#ifndef _Post_satisfies_
81#define _Post_satisfies_(expr)
85#define _In_range_(lb, ub)
89#define _In_reads_(size)
93#define _In_reads_opt_(size)
96#ifndef _In_reads_bytes_
97#define _In_reads_bytes_(size)
100#ifndef _In_reads_bytes_opt_
101#define _In_reads_bytes_opt_(size)
105#define _Out_writes_(size)
108#ifndef _Out_writes_opt_
109#define _Out_writes_opt_(size)
112#ifndef _Out_writes_bytes_
113#define _Out_writes_bytes_(size)
116#ifndef _Out_writes_bytes_opt_
117#define _Out_writes_bytes_opt_(size)
120#ifndef _Inout_updates_bytes_
121#define _Inout_updates_bytes_(size)
124#ifndef _Field_size_full_
125#define _Field_size_full_(size)
128#ifndef _Field_size_bytes_full_
129#define _Field_size_bytes_full_(size)
132#ifndef _Outptr_opt_result_bytebuffer_
133#define _Outptr_opt_result_bytebuffer_(size)
136#ifndef _Must_inspect_result_
137#define _Must_inspect_result_
145#define _Always_(annos)
153#ifndef __RPC__deref_out
154#define __RPC__deref_out
163#define WINAPI __stdcall
195typedef unsigned short WCHAR;
201typedef unsigned short WCHAR;
234#if !defined(__midl) && (defined(_X86_) || defined(_M_IX86) || defined(_ARM_) || defined(_M_ARM)) && _MSC_VER >= 1300
247#define __int3264 INT64
256#define __int3264 INT32
284#if defined(_WIN32) || defined(_MPPC_)
289#define STDMETHODCALLTYPE __cdecl
291#define STDMETHODCALLTYPE __stdcall
293#define STDMETHODVCALLTYPE __cdecl
295#define STDAPICALLTYPE __stdcall
296#define STDAPIVCALLTYPE __cdecl
300#define STDMETHODCALLTYPE __export __stdcall
301#define STDMETHODVCALLTYPE __export __cdecl
303#define STDAPICALLTYPE __export __stdcall
304#define STDAPIVCALLTYPE __export __cdecl
308#define DUMMYSTRUCTNAME
323#define EXTERN_C extern "C"
324#define EXTERN_C_START extern "C" {
325#define EXTERN_C_END }
327#define EXTERN_C extern
328#define EXTERN_C_START
332#if (defined(_M_IX86) || defined(_M_IA64) || defined(_M_AMD64) || defined(_M_ARM) || defined(_M_ARM64)) && !defined(MIDL_PASS)
333#define DECLSPEC_IMPORT __declspec(dllimport)
335#define DECLSPEC_IMPORT
351struct _ENUM_FLAG_INTEGER_FOR_SIZE;
354struct _ENUM_FLAG_INTEGER_FOR_SIZE<1> {
359struct _ENUM_FLAG_INTEGER_FOR_SIZE<2> {
364struct _ENUM_FLAG_INTEGER_FOR_SIZE<4> {
370struct _ENUM_FLAG_SIZED_INTEGER {
371 typedef typename _ENUM_FLAG_INTEGER_FOR_SIZE<
sizeof(T)>::type type;
375#define DEFINE_ENUM_FLAG_OPERATORS(ENUMTYPE) \
378 inline ENUMTYPE operator|(ENUMTYPE a, ENUMTYPE b) { \
380 return ENUMTYPE(((_ENUM_FLAG_SIZED_INTEGER<ENUMTYPE>::type)a) | ((_ENUM_FLAG_SIZED_INTEGER<ENUMTYPE>::type)b)); \
383 inline ENUMTYPE &operator|=(ENUMTYPE &a, ENUMTYPE b) { \
385 return (ENUMTYPE &)(((_ENUM_FLAG_SIZED_INTEGER<ENUMTYPE>::type &)a) |= ((_ENUM_FLAG_SIZED_INTEGER<ENUMTYPE>::type)b)); \
388 inline ENUMTYPE operator&(ENUMTYPE a, ENUMTYPE b) { \
390 return ENUMTYPE(((_ENUM_FLAG_SIZED_INTEGER<ENUMTYPE>::type)a) & ((_ENUM_FLAG_SIZED_INTEGER<ENUMTYPE>::type)b)); \
393 inline ENUMTYPE &operator&=(ENUMTYPE &a, ENUMTYPE b) { \
395 return (ENUMTYPE &)(((_ENUM_FLAG_SIZED_INTEGER<ENUMTYPE>::type &)a) &= ((_ENUM_FLAG_SIZED_INTEGER<ENUMTYPE>::type)b)); \
398 inline ENUMTYPE operator~(ENUMTYPE a) { \
400 return ENUMTYPE(~((_ENUM_FLAG_SIZED_INTEGER<ENUMTYPE>::type)a)); \
403 inline ENUMTYPE operator^(ENUMTYPE a, ENUMTYPE b) { \
405 return ENUMTYPE(((_ENUM_FLAG_SIZED_INTEGER<ENUMTYPE>::type)a) ^ ((_ENUM_FLAG_SIZED_INTEGER<ENUMTYPE>::type)b)); \
408 inline ENUMTYPE &operator^=(ENUMTYPE &a, ENUMTYPE b) { \
410 return (ENUMTYPE &)(((_ENUM_FLAG_SIZED_INTEGER<ENUMTYPE>::type &)a) ^= ((_ENUM_FLAG_SIZED_INTEGER<ENUMTYPE>::type)b)); \
414#define DEFINE_ENUM_FLAG_OPERATORS(ENUMTYPE)
417#ifndef DECLSPEC_NOTHROW
418#if (_MSC_VER >= 1200) && !defined(MIDL_PASS)
419#define DECLSPEC_NOTHROW __declspec(nothrow)
421#define DECLSPEC_NOTHROW
427#if 0 && (_MSC_VER > 1000)
428#define DECLARE_HANDLE(name) \
430 typedef struct name##__ *name
432#define DECLARE_HANDLE(name) \
436 typedef struct name##__ *name
440#define DECLARE_HANDLE(name) typedef HANDLE name
459#define _HRESULT_TYPEDEF_(_sc) ((HRESULT)(_sc))
460#define S_OK _HRESULT_TYPEDEF_(0x0L)
461#define E_UNEXPECTED _HRESULT_TYPEDEF_(0x8000FFFFL)
462#define DXGI_ERROR_NOT_FOUND _HRESULT_TYPEDEF_(0x887a0002)
463#define SUCCEEDED(hr) (((HRESULT)(hr)) >= 0)
464#define FAILED(hr) (((HRESULT)(hr)) < 0)
479#define __MIDL_CONST const
483#define REFIID const IID &
485#define REFIID const IID *__MIDL_CONST
489#define REFGUID const GUID &
491#define REFGUID const GUID *__MIDL_CONST
494#ifndef DECLSPEC_SELECTANY
495#if (_MSC_VER >= 1100)
496#define DECLSPEC_SELECTANY __declspec(selectany)
498#define DECLSPEC_SELECTANY
503#define DEFINE_GUID(name, l, w1, w2, b1, b2, b3, b4, b5, b6, b7, b8) \
504 EXTERN_C const GUID DECLSPEC_SELECTANY name = {l, w1, w2, {b1, b2, b3, b4, b5, b6, b7, b8}}
506#define DEFINE_GUID(name, l, w1, w2, b1, b2, b3, b4, b5, b6, b7, b8) \
507 EXTERN_C const GUID FAR name
511#if defined(__specstrings)
514typedef LONG RPC_STATUS;
517#if !defined(__RPC_MAC__) && ((_MSC_VER >= 800) || defined(_STDCALL_SUPPORTED))
518#define __RPC_API __stdcall
519#define __RPC_USER __stdcall
520#define __RPC_STUB __stdcall
521#define RPC_ENTRY __stdcall
544#define rpc_binding_handle_t RPC_BINDING_HANDLE
546#define RPC_MGR_EPV void
578#ifndef DECLSPEC_NOVTABLE
579#if (_MSC_VER >= 1100) && defined(__cplusplus)
580#define DECLSPEC_NOVTABLE __declspec(novtable)
582#define DECLSPEC_NOVTABLE
587#if (_MSC_VER >= 1100) && defined(__cplusplus)
588#define DECLSPEC_UUID(x) __declspec(uuid(x))
590#define DECLSPEC_UUID(x)
594#define MIDL_INTERFACE(x) struct DECLSPEC_UUID(x) DECLSPEC_NOVTABLE
597#define BEGIN_INTERFACE
601#ifndef REQUIRESAPPLEPASCAL
602#define WINOLEAPI EXTERN_C DECLSPEC_IMPORT HRESULT PASCAL
603#define WINOLEAPI_(type) EXTERN_C DECLSPEC_IMPORT type PASCAL
605#define WINOLEAPI EXTERN_C DECLSPEC_IMPORT PASCAL HRESULT
606#define WINOLEAPI_(type) EXTERN_C DECLSPEC_IMPORT PASCAL type
609#define WINOLEAPI EXTERN_C DECLSPEC_IMPORT HRESULT STDAPICALLTYPE
610#define WINOLEAPI_(type) EXTERN_C DECLSPEC_IMPORT type STDAPICALLTYPE
613#ifdef COM_STDMETHOD_CAN_THROW
614#define COM_DECLSPEC_NOTHROW
616#define COM_DECLSPEC_NOTHROW DECLSPEC_NOTHROW
619#if defined(__cplusplus) && !defined(CINTERFACE)
621#ifdef COM_STDMETHOD_CAN_THROW
622#define COM_DECLSPEC_NOTHROW
624#define COM_DECLSPEC_NOTHROW DECLSPEC_NOTHROW
627#define __STRUCT__ struct
628#define interface __STRUCT__
629#define STDMETHOD(method) virtual COM_DECLSPEC_NOTHROW HRESULT STDMETHODCALLTYPE method
630#define STDMETHOD_(type, method) virtual COM_DECLSPEC_NOTHROW type STDMETHODCALLTYPE method
631#define STDMETHODV(method) virtual COM_DECLSPEC_NOTHROW HRESULT STDMETHODVCALLTYPE method
632#define STDMETHODV_(type, method) virtual COM_DECLSPEC_NOTHROW type STDMETHODVCALLTYPE method
636#define DECLARE_INTERFACE(iface) interface DECLSPEC_NOVTABLE iface
637#define DECLARE_INTERFACE_(iface, baseiface) interface DECLSPEC_NOVTABLE iface : public baseiface
638#define DECLARE_INTERFACE_IID(iface, iid) interface DECLSPEC_UUID(iid) DECLSPEC_NOVTABLE iface
639#define DECLARE_INTERFACE_IID_(iface, baseiface, iid) interface DECLSPEC_UUID(iid) DECLSPEC_NOVTABLE iface : public baseiface
641#define IFACEMETHOD(method) __override STDMETHOD(method)
642#define IFACEMETHOD_(type, method) __override STDMETHOD_(type, method)
643#define IFACEMETHODV(method) __override STDMETHODV(method)
644#define IFACEMETHODV_(type, method) __override STDMETHODV_(type, method)
646#if !defined(BEGIN_INTERFACE)
648#if defined(_MPPC_) && ((defined(_MSC_VER) || defined(__SC__) || defined(__MWERKS__)) && !defined(NO_NULL_VTABLE_ENTRY))
649#define BEGIN_INTERFACE \
654#define BEGIN_INTERFACE
667#ifndef __IUnknown_FWD_DEFINED__
668#define __IUnknown_FWD_DEFINED__
676#pragma prefast(suppress : 6269, "Tool issue with unused static_cast")
678 return reinterpret_cast<void **
>(pp);
682#define IID_PPV_ARGS(ppType) __uuidof(**(ppType)), IID_PPV_ARGS_Helper(ppType)
686#define interface struct
688#define STDMETHOD(method) HRESULT(STDMETHODCALLTYPE *method)
689#define STDMETHOD_(type, method) type(STDMETHODCALLTYPE *method)
690#define STDMETHODV(method) HRESULT(STDMETHODVCALLTYPE *method)
691#define STDMETHODV_(type, method) type(STDMETHODVCALLTYPE *method)
693#define IFACEMETHOD(method) __override STDMETHOD(method)
694#define IFACEMETHOD_(type, method) __override STDMETHOD_(type, method)
695#define IFACEMETHODV(method) __override STDMETHODV(method)
696#define IFACEMETHODV_(type, method) __override STDMETHODV_(type, method)
698#if !defined(BEGIN_INTERFACE)
701#define BEGIN_INTERFACE void *b;
704#define BEGIN_INTERFACE
710#define THIS_ INTERFACE FAR *This,
711#define THIS INTERFACE FAR *This
714#define CONST_VTBL const
715#define DECLARE_INTERFACE(iface) \
716 typedef interface iface { \
717 const struct iface##Vtbl FAR *lpVtbl; \
720 typedef const struct iface##Vtbl iface##Vtbl; \
721 const struct iface##Vtbl
725#define DECLARE_INTERFACE(iface) \
726 typedef interface iface { \
727 struct iface##Vtbl FAR *lpVtbl; \
730 typedef struct iface##Vtbl iface##Vtbl; \
733#define DECLARE_INTERFACE_(iface, baseiface) DECLARE_INTERFACE(iface)
734#define DECLARE_INTERFACE_IID(iface, iid) DECLARE_INTERFACE(iface)
735#define DECLARE_INTERFACE_IID_(iface, baseiface, iid) DECLARE_INTERFACE_(iface, baseiface)
742#ifndef __IUnknown_FWD_DEFINED__
743#define __IUnknown_FWD_DEFINED__
748#ifndef __IUnknown_INTERFACE_DEFINED__
749#define __IUnknown_INTERFACE_DEFINED__
761#if (_MSC_VER >= 1100) && defined(__cplusplus) && !defined(CINTERFACE)
784 return QueryInterface(__uuidof(Q), (
void **)pp);
799 DWORD *_pdwStubPhase);
808 DWORD *_pdwStubPhase);
817 DWORD *_pdwStubPhase);
822#if defined(__cplusplus) && !defined(CINTERFACE)
869#define IUnknown_QueryInterface(This, riid, ppvObject) \
870 ((This)->lpVtbl->QueryInterface(This, riid, ppvObject))
872#define IUnknown_AddRef(This) \
873 ((This)->lpVtbl->AddRef(This))
875#define IUnknown_Release(This) \
876 ((This)->lpVtbl->Release(This))
894 DWORD *_pdwStubPhase);
905 DWORD *_pdwStubPhase);
916 DWORD *_pdwStubPhase);
924#if defined(_WIN32) && !defined(OLE2ANSI)
931#define OLESTR(str) L##str
938#define OLESTR(str) str
1197#define INTERFACE ID3DInclude
1212#if defined(__cplusplus) && !defined(CINTERFACE)
1224#ifndef __ID3D10Blob_FWD_DEFINED__
1225#define __ID3D10Blob_FWD_DEFINED__
1265#define ID3D10Blob_QueryInterface(This, riid, ppvObject) \
1266 ((This)->lpVtbl->QueryInterface(This, riid, ppvObject))
1268#define ID3D10Blob_AddRef(This) \
1269 ((This)->lpVtbl->AddRef(This))
1271#define ID3D10Blob_Release(This) \
1272 ((This)->lpVtbl->Release(This))
1274#define ID3D10Blob_GetBufferPointer(This) \
1275 ((This)->lpVtbl->GetBufferPointer(This))
1277#define ID3D10Blob_GetBufferSize(This) \
1278 ((This)->lpVtbl->GetBufferSize(This))
1288#define IID_ID3DBlob IID_ID3D10Blob
1293#ifndef __ID3D12Object_FWD_DEFINED__
1294#define __ID3D12Object_FWD_DEFINED__
1299#ifndef __ID3D12DeviceChild_FWD_DEFINED__
1300#define __ID3D12DeviceChild_FWD_DEFINED__
1305#ifndef __ID3D12RootSignature_FWD_DEFINED__
1306#define __ID3D12RootSignature_FWD_DEFINED__
1311#ifndef __ID3D12RootSignatureDeserializer_FWD_DEFINED__
1312#define __ID3D12RootSignatureDeserializer_FWD_DEFINED__
1317#ifndef __ID3D12VersionedRootSignatureDeserializer_FWD_DEFINED__
1318#define __ID3D12VersionedRootSignatureDeserializer_FWD_DEFINED__
1323#ifndef __ID3D12Pageable_FWD_DEFINED__
1324#define __ID3D12Pageable_FWD_DEFINED__
1329#ifndef __ID3D12Heap_FWD_DEFINED__
1330#define __ID3D12Heap_FWD_DEFINED__
1335#ifndef __ID3D12Resource_FWD_DEFINED__
1336#define __ID3D12Resource_FWD_DEFINED__
1341#ifndef __ID3D12CommandAllocator_FWD_DEFINED__
1342#define __ID3D12CommandAllocator_FWD_DEFINED__
1347#ifndef __ID3D12Fence_FWD_DEFINED__
1348#define __ID3D12Fence_FWD_DEFINED__
1353#ifndef __ID3D12PipelineState_FWD_DEFINED__
1354#define __ID3D12PipelineState_FWD_DEFINED__
1359#ifndef __ID3D12DescriptorHeap_FWD_DEFINED__
1360#define __ID3D12DescriptorHeap_FWD_DEFINED__
1365#ifndef __ID3D12QueryHeap_FWD_DEFINED__
1366#define __ID3D12QueryHeap_FWD_DEFINED__
1371#ifndef __ID3D12CommandSignature_FWD_DEFINED__
1372#define __ID3D12CommandSignature_FWD_DEFINED__
1377#ifndef __ID3D12CommandList_FWD_DEFINED__
1378#define __ID3D12CommandList_FWD_DEFINED__
1383#ifndef __ID3D12GraphicsCommandList_FWD_DEFINED__
1384#define __ID3D12GraphicsCommandList_FWD_DEFINED__
1389#ifndef __ID3D12GraphicsCommandList1_FWD_DEFINED__
1390#define __ID3D12GraphicsCommandList1_FWD_DEFINED__
1395#ifndef __ID3D12CommandQueue_FWD_DEFINED__
1396#define __ID3D12CommandQueue_FWD_DEFINED__
1401#ifndef __ID3D12Device_FWD_DEFINED__
1402#define __ID3D12Device_FWD_DEFINED__
1407#ifndef __ID3D12PipelineLibrary_FWD_DEFINED__
1408#define __ID3D12PipelineLibrary_FWD_DEFINED__
1413#ifndef __ID3D12PipelineLibrary1_FWD_DEFINED__
1414#define __ID3D12PipelineLibrary1_FWD_DEFINED__
1419#ifndef __ID3D12Device1_FWD_DEFINED__
1420#define __ID3D12Device1_FWD_DEFINED__
1425#ifndef __ID3D12Device2_FWD_DEFINED__
1426#define __ID3D12Device2_FWD_DEFINED__
1431#ifndef __ID3D12Tools_FWD_DEFINED__
1432#define __ID3D12Tools_FWD_DEFINED__
1441#if defined(__cplusplus) && !defined(CINTERFACE)
1517#define ID3D12Object_QueryInterface(This, riid, ppvObject) \
1518 ((This)->lpVtbl->QueryInterface(This, riid, ppvObject))
1520#define ID3D12Object_AddRef(This) \
1521 ((This)->lpVtbl->AddRef(This))
1523#define ID3D12Object_Release(This) \
1524 ((This)->lpVtbl->Release(This))
1526#define ID3D12Object_GetPrivateData(This, guid, pDataSize, pData) \
1527 ((This)->lpVtbl->GetPrivateData(This, guid, pDataSize, pData))
1529#define ID3D12Object_SetPrivateData(This, guid, DataSize, pData) \
1530 ((This)->lpVtbl->SetPrivateData(This, guid, DataSize, pData))
1532#define ID3D12Object_SetPrivateDataInterface(This, guid, pData) \
1533 ((This)->lpVtbl->SetPrivateDataInterface(This, guid, pData))
1535#define ID3D12Object_SetName(This, Name) \
1536 ((This)->lpVtbl->SetName(This, Name))
1542#if defined(__cplusplus) && !defined(CINTERFACE)
1611#define ID3D12DeviceChild_QueryInterface(This, riid, ppvObject) \
1612 ((This)->lpVtbl->QueryInterface(This, riid, ppvObject))
1614#define ID3D12DeviceChild_AddRef(This) \
1615 ((This)->lpVtbl->AddRef(This))
1617#define ID3D12DeviceChild_Release(This) \
1618 ((This)->lpVtbl->Release(This))
1620#define ID3D12DeviceChild_GetPrivateData(This, guid, pDataSize, pData) \
1621 ((This)->lpVtbl->GetPrivateData(This, guid, pDataSize, pData))
1623#define ID3D12DeviceChild_SetPrivateData(This, guid, DataSize, pData) \
1624 ((This)->lpVtbl->SetPrivateData(This, guid, DataSize, pData))
1626#define ID3D12DeviceChild_SetPrivateDataInterface(This, guid, pData) \
1627 ((This)->lpVtbl->SetPrivateDataInterface(This, guid, pData))
1629#define ID3D12DeviceChild_SetName(This, Name) \
1630 ((This)->lpVtbl->SetName(This, Name))
1632#define ID3D12DeviceChild_GetDevice(This, riid, ppvDevice) \
1633 ((This)->lpVtbl->GetDevice(This, riid, ppvDevice))
1639#if defined(__cplusplus) && !defined(CINTERFACE)
1705#define ID3D12RootSignature_QueryInterface(This, riid, ppvObject) \
1706 ((This)->lpVtbl->QueryInterface(This, riid, ppvObject))
1708#define ID3D12RootSignature_AddRef(This) \
1709 ((This)->lpVtbl->AddRef(This))
1711#define ID3D12RootSignature_Release(This) \
1712 ((This)->lpVtbl->Release(This))
1714#define ID3D12RootSignature_GetPrivateData(This, guid, pDataSize, pData) \
1715 ((This)->lpVtbl->GetPrivateData(This, guid, pDataSize, pData))
1717#define ID3D12RootSignature_SetPrivateData(This, guid, DataSize, pData) \
1718 ((This)->lpVtbl->SetPrivateData(This, guid, DataSize, pData))
1720#define ID3D12RootSignature_SetPrivateDataInterface(This, guid, pData) \
1721 ((This)->lpVtbl->SetPrivateDataInterface(This, guid, pData))
1723#define ID3D12RootSignature_SetName(This, Name) \
1724 ((This)->lpVtbl->SetName(This, Name))
1726#define ID3D12RootSignature_GetDevice(This, riid, ppvDevice) \
1727 ((This)->lpVtbl->GetDevice(This, riid, ppvDevice))
1733#if defined(__cplusplus) && !defined(CINTERFACE)
1742#ifndef __ID3D12Pageable_FWD_DEFINED__
1743#define __ID3D12Pageable_FWD_DEFINED__
1805#define ID3D12Pageable_QueryInterface(This, riid, ppvObject) \
1806 ((This)->lpVtbl->QueryInterface(This, riid, ppvObject))
1808#define ID3D12Pageable_AddRef(This) \
1809 ((This)->lpVtbl->AddRef(This))
1811#define ID3D12Pageable_Release(This) \
1812 ((This)->lpVtbl->Release(This))
1814#define ID3D12Pageable_GetPrivateData(This, guid, pDataSize, pData) \
1815 ((This)->lpVtbl->GetPrivateData(This, guid, pDataSize, pData))
1817#define ID3D12Pageable_SetPrivateData(This, guid, DataSize, pData) \
1818 ((This)->lpVtbl->SetPrivateData(This, guid, DataSize, pData))
1820#define ID3D12Pageable_SetPrivateDataInterface(This, guid, pData) \
1821 ((This)->lpVtbl->SetPrivateDataInterface(This, guid, pData))
1823#define ID3D12Pageable_SetName(This, Name) \
1824 ((This)->lpVtbl->SetName(This, Name))
1826#define ID3D12Pageable_GetDevice(This, riid, ppvDevice) \
1827 ((This)->lpVtbl->GetDevice(This, riid, ppvDevice))
2301#define D3D12_SHADER_COMPONENT_MAPPING_MASK 0x7
2302#define D3D12_SHADER_COMPONENT_MAPPING_SHIFT 3
2303#define D3D12_SHADER_COMPONENT_MAPPING_ALWAYS_SET_BIT_AVOIDING_ZEROMEM_MISTAKES (1 << (D3D12_SHADER_COMPONENT_MAPPING_SHIFT * 4))
2304#define D3D12_ENCODE_SHADER_4_COMPONENT_MAPPING(Src0, Src1, Src2, Src3) ((((Src0)&D3D12_SHADER_COMPONENT_MAPPING_MASK) | \
2305 (((Src1)&D3D12_SHADER_COMPONENT_MAPPING_MASK) << D3D12_SHADER_COMPONENT_MAPPING_SHIFT) | \
2306 (((Src2)&D3D12_SHADER_COMPONENT_MAPPING_MASK) << (D3D12_SHADER_COMPONENT_MAPPING_SHIFT * 2)) | \
2307 (((Src3)&D3D12_SHADER_COMPONENT_MAPPING_MASK) << (D3D12_SHADER_COMPONENT_MAPPING_SHIFT * 3)) | \
2308 D3D12_SHADER_COMPONENT_MAPPING_ALWAYS_SET_BIT_AVOIDING_ZEROMEM_MISTAKES))
2309#define D3D12_DECODE_SHADER_4_COMPONENT_MAPPING(ComponentToExtract, Mapping) \
2310 ((D3D12_SHADER_COMPONENT_MAPPING)((Mapping) >> (D3D12_SHADER_COMPONENT_MAPPING_SHIFT * (ComponentToExtract)) & D3D12_SHADER_COMPONENT_MAPPING_MASK))
2311#define D3D12_DEFAULT_SHADER_4_COMPONENT_MAPPING D3D12_ENCODE_SHADER_4_COMPONENT_MAPPING(0, 1, 2, 3)
2833#define D3D12_VIEWPORT_AND_SCISSORRECT_OBJECT_COUNT_PER_PIPELINE (16)
3096#define D3D12_DESCRIPTOR_RANGE_OFFSET_APPEND (0xffffffff)
3098#ifndef __ID3D12Resource_INTERFACE_DEFINED__
3099#define __ID3D12Resource_INTERFACE_DEFINED__
3106#if defined(__cplusplus) && !defined(CINTERFACE)
3125 UINT DstSubresource,
3127 _In_ const void *pSrcData,
3129 UINT SrcDepthPitch) = 0;
3132 _Out_ void *pDstData,
3135 UINT SrcSubresource,
3246#define ID3D12Resource_QueryInterface(This, riid, ppvObject) \
3247 ((This)->lpVtbl->QueryInterface(This, riid, ppvObject))
3249#define ID3D12Resource_AddRef(This) \
3250 ((This)->lpVtbl->AddRef(This))
3252#define ID3D12Resource_Release(This) \
3253 ((This)->lpVtbl->Release(This))
3255#define ID3D12Resource_GetPrivateData(This, guid, pDataSize, pData) \
3256 ((This)->lpVtbl->GetPrivateData(This, guid, pDataSize, pData))
3258#define ID3D12Resource_SetPrivateData(This, guid, DataSize, pData) \
3259 ((This)->lpVtbl->SetPrivateData(This, guid, DataSize, pData))
3261#define ID3D12Resource_SetPrivateDataInterface(This, guid, pData) \
3262 ((This)->lpVtbl->SetPrivateDataInterface(This, guid, pData))
3264#define ID3D12Resource_SetName(This, Name) \
3265 ((This)->lpVtbl->SetName(This, Name))
3267#define ID3D12Resource_GetDevice(This, riid, ppvDevice) \
3268 ((This)->lpVtbl->GetDevice(This, riid, ppvDevice))
3270#define ID3D12Resource_Map(This, Subresource, pReadRange, ppData) \
3271 ((This)->lpVtbl->Map(This, Subresource, pReadRange, ppData))
3273#define ID3D12Resource_Unmap(This, Subresource, pWrittenRange) \
3274 ((This)->lpVtbl->Unmap(This, Subresource, pWrittenRange))
3276#define ID3D12Resource_GetDesc(This) \
3277 ((This)->lpVtbl->GetDesc(This))
3279#define ID3D12Resource_GetGPUVirtualAddress(This) \
3280 ((This)->lpVtbl->GetGPUVirtualAddress(This))
3282#define ID3D12Resource_WriteToSubresource(This, DstSubresource, pDstBox, pSrcData, SrcRowPitch, SrcDepthPitch) \
3283 ((This)->lpVtbl->WriteToSubresource(This, DstSubresource, pDstBox, pSrcData, SrcRowPitch, SrcDepthPitch))
3285#define ID3D12Resource_ReadFromSubresource(This, pDstData, DstRowPitch, DstDepthPitch, SrcSubresource, pSrcBox) \
3286 ((This)->lpVtbl->ReadFromSubresource(This, pDstData, DstRowPitch, DstDepthPitch, SrcSubresource, pSrcBox))
3288#define ID3D12Resource_GetHeapProperties(This, pHeapProperties, pHeapFlags) \
3289 ((This)->lpVtbl->GetHeapProperties(This, pHeapProperties, pHeapFlags))
3297#ifndef __ID3D12CommandAllocator_INTERFACE_DEFINED__
3298#define __ID3D12CommandAllocator_INTERFACE_DEFINED__
3305#if defined(__cplusplus) && !defined(CINTERFACE)
3376#define ID3D12CommandAllocator_QueryInterface(This, riid, ppvObject) \
3377 ((This)->lpVtbl->QueryInterface(This, riid, ppvObject))
3379#define ID3D12CommandAllocator_AddRef(This) \
3380 ((This)->lpVtbl->AddRef(This))
3382#define ID3D12CommandAllocator_Release(This) \
3383 ((This)->lpVtbl->Release(This))
3385#define ID3D12CommandAllocator_GetPrivateData(This, guid, pDataSize, pData) \
3386 ((This)->lpVtbl->GetPrivateData(This, guid, pDataSize, pData))
3388#define ID3D12CommandAllocator_SetPrivateData(This, guid, DataSize, pData) \
3389 ((This)->lpVtbl->SetPrivateData(This, guid, DataSize, pData))
3391#define ID3D12CommandAllocator_SetPrivateDataInterface(This, guid, pData) \
3392 ((This)->lpVtbl->SetPrivateDataInterface(This, guid, pData))
3394#define ID3D12CommandAllocator_SetName(This, Name) \
3395 ((This)->lpVtbl->SetName(This, Name))
3397#define ID3D12CommandAllocator_GetDevice(This, riid, ppvDevice) \
3398 ((This)->lpVtbl->GetDevice(This, riid, ppvDevice))
3400#define ID3D12CommandAllocator_Reset(This) \
3401 ((This)->lpVtbl->Reset(This))
3409#ifndef __ID3D12CommandList_INTERFACE_DEFINED__
3410#define __ID3D12CommandList_INTERFACE_DEFINED__
3417#if defined(__cplusplus) && !defined(CINTERFACE)
3488#define ID3D12CommandList_QueryInterface(This, riid, ppvObject) \
3489 ((This)->lpVtbl->QueryInterface(This, riid, ppvObject))
3491#define ID3D12CommandList_AddRef(This) \
3492 ((This)->lpVtbl->AddRef(This))
3494#define ID3D12CommandList_Release(This) \
3495 ((This)->lpVtbl->Release(This))
3497#define ID3D12CommandList_GetPrivateData(This, guid, pDataSize, pData) \
3498 ((This)->lpVtbl->GetPrivateData(This, guid, pDataSize, pData))
3500#define ID3D12CommandList_SetPrivateData(This, guid, DataSize, pData) \
3501 ((This)->lpVtbl->SetPrivateData(This, guid, DataSize, pData))
3503#define ID3D12CommandList_SetPrivateDataInterface(This, guid, pData) \
3504 ((This)->lpVtbl->SetPrivateDataInterface(This, guid, pData))
3506#define ID3D12CommandList_SetName(This, Name) \
3507 ((This)->lpVtbl->SetName(This, Name))
3509#define ID3D12CommandList_GetDevice(This, riid, ppvDevice) \
3510 ((This)->lpVtbl->GetDevice(This, riid, ppvDevice))
3512#define ID3D12CommandList_GetType(This) \
3513 ((This)->lpVtbl->GetType(This))
3521#ifndef __ID3D12GraphicsCommandList_INTERFACE_DEFINED__
3522#define __ID3D12GraphicsCommandList_INTERFACE_DEFINED__
3529#if defined(__cplusplus) && !defined(CINTERFACE)
3547 _In_ UINT StartInstanceLocation) = 0;
3554 _In_ UINT StartInstanceLocation) = 0;
3585 UINT64 BufferStartOffsetInBytes,
3643 _In_ UINT DestOffsetIn32BitValues) = 0;
3648 _In_ UINT DestOffsetIn32BitValues) = 0;
3654 _In_ UINT DestOffsetIn32BitValues) = 0;
3660 _In_ UINT DestOffsetIn32BitValues) = 0;
3700 _In_ UINT NumRenderTargetDescriptors,
3702 _In_ BOOL RTsSingleHandleToDescriptorRange,
3755 _In_ UINT64 AlignedDestinationBufferOffset) = 0;
3979 _In_ UINT DestOffsetIn32BitValues);
3986 _In_ UINT DestOffsetIn32BitValues);
3993 _In_ UINT DestOffsetIn32BitValues);
4147#define ID3D12GraphicsCommandList_QueryInterface(This, riid, ppvObject) \
4148 ((This)->lpVtbl->QueryInterface(This, riid, ppvObject))
4150#define ID3D12GraphicsCommandList_AddRef(This) \
4151 ((This)->lpVtbl->AddRef(This))
4153#define ID3D12GraphicsCommandList_Release(This) \
4154 ((This)->lpVtbl->Release(This))
4156#define ID3D12GraphicsCommandList_GetPrivateData(This, guid, pDataSize, pData) \
4157 ((This)->lpVtbl->GetPrivateData(This, guid, pDataSize, pData))
4159#define ID3D12GraphicsCommandList_SetPrivateData(This, guid, DataSize, pData) \
4160 ((This)->lpVtbl->SetPrivateData(This, guid, DataSize, pData))
4162#define ID3D12GraphicsCommandList_SetPrivateDataInterface(This, guid, pData) \
4163 ((This)->lpVtbl->SetPrivateDataInterface(This, guid, pData))
4165#define ID3D12GraphicsCommandList_SetName(This, Name) \
4166 ((This)->lpVtbl->SetName(This, Name))
4168#define ID3D12GraphicsCommandList_GetDevice(This, riid, ppvDevice) \
4169 ((This)->lpVtbl->GetDevice(This, riid, ppvDevice))
4171#define ID3D12GraphicsCommandList_GetType(This) \
4172 ((This)->lpVtbl->GetType(This))
4174#define ID3D12GraphicsCommandList_Close(This) \
4175 ((This)->lpVtbl->Close(This))
4177#define ID3D12GraphicsCommandList_Reset(This, pAllocator, pInitialState) \
4178 ((This)->lpVtbl->Reset(This, pAllocator, pInitialState))
4180#define ID3D12GraphicsCommandList_ClearState(This, pPipelineState) \
4181 ((This)->lpVtbl->ClearState(This, pPipelineState))
4183#define ID3D12GraphicsCommandList_DrawInstanced(This, VertexCountPerInstance, InstanceCount, StartVertexLocation, StartInstanceLocation) \
4184 ((This)->lpVtbl->DrawInstanced(This, VertexCountPerInstance, InstanceCount, StartVertexLocation, StartInstanceLocation))
4186#define ID3D12GraphicsCommandList_DrawIndexedInstanced(This, IndexCountPerInstance, InstanceCount, StartIndexLocation, BaseVertexLocation, StartInstanceLocation) \
4187 ((This)->lpVtbl->DrawIndexedInstanced(This, IndexCountPerInstance, InstanceCount, StartIndexLocation, BaseVertexLocation, StartInstanceLocation))
4189#define ID3D12GraphicsCommandList_Dispatch(This, ThreadGroupCountX, ThreadGroupCountY, ThreadGroupCountZ) \
4190 ((This)->lpVtbl->Dispatch(This, ThreadGroupCountX, ThreadGroupCountY, ThreadGroupCountZ))
4192#define ID3D12GraphicsCommandList_CopyBufferRegion(This, pDstBuffer, DstOffset, pSrcBuffer, SrcOffset, NumBytes) \
4193 ((This)->lpVtbl->CopyBufferRegion(This, pDstBuffer, DstOffset, pSrcBuffer, SrcOffset, NumBytes))
4195#define ID3D12GraphicsCommandList_CopyTextureRegion(This, pDst, DstX, DstY, DstZ, pSrc, pSrcBox) \
4196 ((This)->lpVtbl->CopyTextureRegion(This, pDst, DstX, DstY, DstZ, pSrc, pSrcBox))
4198#define ID3D12GraphicsCommandList_CopyResource(This, pDstResource, pSrcResource) \
4199 ((This)->lpVtbl->CopyResource(This, pDstResource, pSrcResource))
4201#define ID3D12GraphicsCommandList_CopyTiles(This, pTiledResource, pTileRegionStartCoordinate, pTileRegionSize, pBuffer, BufferStartOffsetInBytes, Flags) \
4202 ((This)->lpVtbl->CopyTiles(This, pTiledResource, pTileRegionStartCoordinate, pTileRegionSize, pBuffer, BufferStartOffsetInBytes, Flags))
4204#define ID3D12GraphicsCommandList_ResolveSubresource(This, pDstResource, DstSubresource, pSrcResource, SrcSubresource, Format) \
4205 ((This)->lpVtbl->ResolveSubresource(This, pDstResource, DstSubresource, pSrcResource, SrcSubresource, Format))
4207#define ID3D12GraphicsCommandList_IASetPrimitiveTopology(This, PrimitiveTopology) \
4208 ((This)->lpVtbl->IASetPrimitiveTopology(This, PrimitiveTopology))
4210#define ID3D12GraphicsCommandList_RSSetViewports(This, NumViewports, pViewports) \
4211 ((This)->lpVtbl->RSSetViewports(This, NumViewports, pViewports))
4213#define ID3D12GraphicsCommandList_RSSetScissorRects(This, NumRects, pRects) \
4214 ((This)->lpVtbl->RSSetScissorRects(This, NumRects, pRects))
4216#define ID3D12GraphicsCommandList_OMSetBlendFactor(This, BlendFactor) \
4217 ((This)->lpVtbl->OMSetBlendFactor(This, BlendFactor))
4219#define ID3D12GraphicsCommandList_OMSetStencilRef(This, StencilRef) \
4220 ((This)->lpVtbl->OMSetStencilRef(This, StencilRef))
4222#define ID3D12GraphicsCommandList_SetPipelineState(This, pPipelineState) \
4223 ((This)->lpVtbl->SetPipelineState(This, pPipelineState))
4225#define ID3D12GraphicsCommandList_ResourceBarrier(This, NumBarriers, pBarriers) \
4226 ((This)->lpVtbl->ResourceBarrier(This, NumBarriers, pBarriers))
4228#define ID3D12GraphicsCommandList_ExecuteBundle(This, pCommandList) \
4229 ((This)->lpVtbl->ExecuteBundle(This, pCommandList))
4231#define ID3D12GraphicsCommandList_SetDescriptorHeaps(This, NumDescriptorHeaps, ppDescriptorHeaps) \
4232 ((This)->lpVtbl->SetDescriptorHeaps(This, NumDescriptorHeaps, ppDescriptorHeaps))
4234#define ID3D12GraphicsCommandList_SetComputeRootSignature(This, pRootSignature) \
4235 ((This)->lpVtbl->SetComputeRootSignature(This, pRootSignature))
4237#define ID3D12GraphicsCommandList_SetGraphicsRootSignature(This, pRootSignature) \
4238 ((This)->lpVtbl->SetGraphicsRootSignature(This, pRootSignature))
4240#define ID3D12GraphicsCommandList_SetComputeRootDescriptorTable(This, RootParameterIndex, BaseDescriptor) \
4241 ((This)->lpVtbl->SetComputeRootDescriptorTable(This, RootParameterIndex, BaseDescriptor))
4243#define ID3D12GraphicsCommandList_SetGraphicsRootDescriptorTable(This, RootParameterIndex, BaseDescriptor) \
4244 ((This)->lpVtbl->SetGraphicsRootDescriptorTable(This, RootParameterIndex, BaseDescriptor))
4246#define ID3D12GraphicsCommandList_SetComputeRoot32BitConstant(This, RootParameterIndex, SrcData, DestOffsetIn32BitValues) \
4247 ((This)->lpVtbl->SetComputeRoot32BitConstant(This, RootParameterIndex, SrcData, DestOffsetIn32BitValues))
4249#define ID3D12GraphicsCommandList_SetGraphicsRoot32BitConstant(This, RootParameterIndex, SrcData, DestOffsetIn32BitValues) \
4250 ((This)->lpVtbl->SetGraphicsRoot32BitConstant(This, RootParameterIndex, SrcData, DestOffsetIn32BitValues))
4252#define ID3D12GraphicsCommandList_SetComputeRoot32BitConstants(This, RootParameterIndex, Num32BitValuesToSet, pSrcData, DestOffsetIn32BitValues) \
4253 ((This)->lpVtbl->SetComputeRoot32BitConstants(This, RootParameterIndex, Num32BitValuesToSet, pSrcData, DestOffsetIn32BitValues))
4255#define ID3D12GraphicsCommandList_SetGraphicsRoot32BitConstants(This, RootParameterIndex, Num32BitValuesToSet, pSrcData, DestOffsetIn32BitValues) \
4256 ((This)->lpVtbl->SetGraphicsRoot32BitConstants(This, RootParameterIndex, Num32BitValuesToSet, pSrcData, DestOffsetIn32BitValues))
4258#define ID3D12GraphicsCommandList_SetComputeRootConstantBufferView(This, RootParameterIndex, BufferLocation) \
4259 ((This)->lpVtbl->SetComputeRootConstantBufferView(This, RootParameterIndex, BufferLocation))
4261#define ID3D12GraphicsCommandList_SetGraphicsRootConstantBufferView(This, RootParameterIndex, BufferLocation) \
4262 ((This)->lpVtbl->SetGraphicsRootConstantBufferView(This, RootParameterIndex, BufferLocation))
4264#define ID3D12GraphicsCommandList_SetComputeRootShaderResourceView(This, RootParameterIndex, BufferLocation) \
4265 ((This)->lpVtbl->SetComputeRootShaderResourceView(This, RootParameterIndex, BufferLocation))
4267#define ID3D12GraphicsCommandList_SetGraphicsRootShaderResourceView(This, RootParameterIndex, BufferLocation) \
4268 ((This)->lpVtbl->SetGraphicsRootShaderResourceView(This, RootParameterIndex, BufferLocation))
4270#define ID3D12GraphicsCommandList_SetComputeRootUnorderedAccessView(This, RootParameterIndex, BufferLocation) \
4271 ((This)->lpVtbl->SetComputeRootUnorderedAccessView(This, RootParameterIndex, BufferLocation))
4273#define ID3D12GraphicsCommandList_SetGraphicsRootUnorderedAccessView(This, RootParameterIndex, BufferLocation) \
4274 ((This)->lpVtbl->SetGraphicsRootUnorderedAccessView(This, RootParameterIndex, BufferLocation))
4276#define ID3D12GraphicsCommandList_IASetIndexBuffer(This, pView) \
4277 ((This)->lpVtbl->IASetIndexBuffer(This, pView))
4279#define ID3D12GraphicsCommandList_IASetVertexBuffers(This, StartSlot, NumViews, pViews) \
4280 ((This)->lpVtbl->IASetVertexBuffers(This, StartSlot, NumViews, pViews))
4282#define ID3D12GraphicsCommandList_SOSetTargets(This, StartSlot, NumViews, pViews) \
4283 ((This)->lpVtbl->SOSetTargets(This, StartSlot, NumViews, pViews))
4285#define ID3D12GraphicsCommandList_OMSetRenderTargets(This, NumRenderTargetDescriptors, pRenderTargetDescriptors, RTsSingleHandleToDescriptorRange, pDepthStencilDescriptor) \
4286 ((This)->lpVtbl->OMSetRenderTargets(This, NumRenderTargetDescriptors, pRenderTargetDescriptors, RTsSingleHandleToDescriptorRange, pDepthStencilDescriptor))
4288#define ID3D12GraphicsCommandList_ClearDepthStencilView(This, DepthStencilView, ClearFlags, Depth, Stencil, NumRects, pRects) \
4289 ((This)->lpVtbl->ClearDepthStencilView(This, DepthStencilView, ClearFlags, Depth, Stencil, NumRects, pRects))
4291#define ID3D12GraphicsCommandList_ClearRenderTargetView(This, RenderTargetView, ColorRGBA, NumRects, pRects) \
4292 ((This)->lpVtbl->ClearRenderTargetView(This, RenderTargetView, ColorRGBA, NumRects, pRects))
4294#define ID3D12GraphicsCommandList_ClearUnorderedAccessViewUint(This, ViewGPUHandleInCurrentHeap, ViewCPUHandle, pResource, Values, NumRects, pRects) \
4295 ((This)->lpVtbl->ClearUnorderedAccessViewUint(This, ViewGPUHandleInCurrentHeap, ViewCPUHandle, pResource, Values, NumRects, pRects))
4297#define ID3D12GraphicsCommandList_ClearUnorderedAccessViewFloat(This, ViewGPUHandleInCurrentHeap, ViewCPUHandle, pResource, Values, NumRects, pRects) \
4298 ((This)->lpVtbl->ClearUnorderedAccessViewFloat(This, ViewGPUHandleInCurrentHeap, ViewCPUHandle, pResource, Values, NumRects, pRects))
4300#define ID3D12GraphicsCommandList_DiscardResource(This, pResource, pRegion) \
4301 ((This)->lpVtbl->DiscardResource(This, pResource, pRegion))
4303#define ID3D12GraphicsCommandList_BeginQuery(This, pQueryHeap, Type, Index) \
4304 ((This)->lpVtbl->BeginQuery(This, pQueryHeap, Type, Index))
4306#define ID3D12GraphicsCommandList_EndQuery(This, pQueryHeap, Type, Index) \
4307 ((This)->lpVtbl->EndQuery(This, pQueryHeap, Type, Index))
4309#define ID3D12GraphicsCommandList_ResolveQueryData(This, pQueryHeap, Type, StartIndex, NumQueries, pDestinationBuffer, AlignedDestinationBufferOffset) \
4310 ((This)->lpVtbl->ResolveQueryData(This, pQueryHeap, Type, StartIndex, NumQueries, pDestinationBuffer, AlignedDestinationBufferOffset))
4312#define ID3D12GraphicsCommandList_SetPredication(This, pBuffer, AlignedBufferOffset, Operation) \
4313 ((This)->lpVtbl->SetPredication(This, pBuffer, AlignedBufferOffset, Operation))
4315#define ID3D12GraphicsCommandList_SetMarker(This, Metadata, pData, Size) \
4316 ((This)->lpVtbl->SetMarker(This, Metadata, pData, Size))
4318#define ID3D12GraphicsCommandList_BeginEvent(This, Metadata, pData, Size) \
4319 ((This)->lpVtbl->BeginEvent(This, Metadata, pData, Size))
4321#define ID3D12GraphicsCommandList_EndEvent(This) \
4322 ((This)->lpVtbl->EndEvent(This))
4324#define ID3D12GraphicsCommandList_ExecuteIndirect(This, pCommandSignature, MaxCommandCount, pArgumentBuffer, ArgumentBufferOffset, pCountBuffer, CountBufferOffset) \
4325 ((This)->lpVtbl->ExecuteIndirect(This, pCommandSignature, MaxCommandCount, pArgumentBuffer, ArgumentBufferOffset, pCountBuffer, CountBufferOffset))
4333#ifndef __ID3D12CommandQueue_INTERFACE_DEFINED__
4334#define __ID3D12CommandQueue_INTERFACE_DEFINED__
4341#if defined(__cplusplus) && !defined(CINTERFACE)
4348 UINT NumResourceRegions,
4528#define ID3D12CommandQueue_QueryInterface(This, riid, ppvObject) \
4529 ((This)->lpVtbl->QueryInterface(This, riid, ppvObject))
4531#define ID3D12CommandQueue_AddRef(This) \
4532 ((This)->lpVtbl->AddRef(This))
4534#define ID3D12CommandQueue_Release(This) \
4535 ((This)->lpVtbl->Release(This))
4537#define ID3D12CommandQueue_GetPrivateData(This, guid, pDataSize, pData) \
4538 ((This)->lpVtbl->GetPrivateData(This, guid, pDataSize, pData))
4540#define ID3D12CommandQueue_SetPrivateData(This, guid, DataSize, pData) \
4541 ((This)->lpVtbl->SetPrivateData(This, guid, DataSize, pData))
4543#define ID3D12CommandQueue_SetPrivateDataInterface(This, guid, pData) \
4544 ((This)->lpVtbl->SetPrivateDataInterface(This, guid, pData))
4546#define ID3D12CommandQueue_SetName(This, Name) \
4547 ((This)->lpVtbl->SetName(This, Name))
4549#define ID3D12CommandQueue_GetDevice(This, riid, ppvDevice) \
4550 ((This)->lpVtbl->GetDevice(This, riid, ppvDevice))
4552#define ID3D12CommandQueue_UpdateTileMappings(This, pResource, NumResourceRegions, pResourceRegionStartCoordinates, pResourceRegionSizes, pHeap, NumRanges, pRangeFlags, pHeapRangeStartOffsets, pRangeTileCounts, Flags) \
4553 ((This)->lpVtbl->UpdateTileMappings(This, pResource, NumResourceRegions, pResourceRegionStartCoordinates, pResourceRegionSizes, pHeap, NumRanges, pRangeFlags, pHeapRangeStartOffsets, pRangeTileCounts, Flags))
4555#define ID3D12CommandQueue_CopyTileMappings(This, pDstResource, pDstRegionStartCoordinate, pSrcResource, pSrcRegionStartCoordinate, pRegionSize, Flags) \
4556 ((This)->lpVtbl->CopyTileMappings(This, pDstResource, pDstRegionStartCoordinate, pSrcResource, pSrcRegionStartCoordinate, pRegionSize, Flags))
4558#define ID3D12CommandQueue_ExecuteCommandLists(This, NumCommandLists, ppCommandLists) \
4559 ((This)->lpVtbl->ExecuteCommandLists(This, NumCommandLists, ppCommandLists))
4561#define ID3D12CommandQueue_SetMarker(This, Metadata, pData, Size) \
4562 ((This)->lpVtbl->SetMarker(This, Metadata, pData, Size))
4564#define ID3D12CommandQueue_BeginEvent(This, Metadata, pData, Size) \
4565 ((This)->lpVtbl->BeginEvent(This, Metadata, pData, Size))
4567#define ID3D12CommandQueue_EndEvent(This) \
4568 ((This)->lpVtbl->EndEvent(This))
4570#define ID3D12CommandQueue_Signal(This, pFence, Value) \
4571 ((This)->lpVtbl->Signal(This, pFence, Value))
4573#define ID3D12CommandQueue_Wait(This, pFence, Value) \
4574 ((This)->lpVtbl->Wait(This, pFence, Value))
4576#define ID3D12CommandQueue_GetTimestampFrequency(This, pFrequency) \
4577 ((This)->lpVtbl->GetTimestampFrequency(This, pFrequency))
4579#define ID3D12CommandQueue_GetClockCalibration(This, pGpuTimestamp, pCpuTimestamp) \
4580 ((This)->lpVtbl->GetClockCalibration(This, pGpuTimestamp, pCpuTimestamp))
4582#define ID3D12CommandQueue_GetDesc(This) \
4583 ((This)->lpVtbl->GetDesc(This))
4593#define LUID_DEFINED 1
4604#define D3D12_REQ_SUBRESOURCES (30720)
4606#ifndef __ID3D12Device_INTERFACE_DEFINED__
4607#define __ID3D12Device_INTERFACE_DEFINED__
4614#if defined(__cplusplus) && !defined(CINTERFACE)
4652 UINT FeatureSupportDataSize) = 0;
4664 _In_reads_(blobLengthInBytes)
const void *pBlobWithRootSignature,
4816 _In_ UINT FirstSubresourceTilingToGet,
4931 _In_reads_(blobLengthInBytes)
const void *pBlobWithRootSignature,
5141#define ID3D12Device_QueryInterface(This, riid, ppvObject) \
5142 ((This)->lpVtbl->QueryInterface(This, riid, ppvObject))
5144#define ID3D12Device_AddRef(This) \
5145 ((This)->lpVtbl->AddRef(This))
5147#define ID3D12Device_Release(This) \
5148 ((This)->lpVtbl->Release(This))
5150#define ID3D12Device_GetPrivateData(This, guid, pDataSize, pData) \
5151 ((This)->lpVtbl->GetPrivateData(This, guid, pDataSize, pData))
5153#define ID3D12Device_SetPrivateData(This, guid, DataSize, pData) \
5154 ((This)->lpVtbl->SetPrivateData(This, guid, DataSize, pData))
5156#define ID3D12Device_SetPrivateDataInterface(This, guid, pData) \
5157 ((This)->lpVtbl->SetPrivateDataInterface(This, guid, pData))
5159#define ID3D12Device_SetName(This, Name) \
5160 ((This)->lpVtbl->SetName(This, Name))
5162#define ID3D12Device_GetNodeCount(This) \
5163 ((This)->lpVtbl->GetNodeCount(This))
5165#define ID3D12Device_CreateCommandQueue(This, pDesc, riid, ppCommandQueue) \
5166 ((This)->lpVtbl->CreateCommandQueue(This, pDesc, riid, ppCommandQueue))
5168#define ID3D12Device_CreateCommandAllocator(This, type, riid, ppCommandAllocator) \
5169 ((This)->lpVtbl->CreateCommandAllocator(This, type, riid, ppCommandAllocator))
5171#define ID3D12Device_CreateGraphicsPipelineState(This, pDesc, riid, ppPipelineState) \
5172 ((This)->lpVtbl->CreateGraphicsPipelineState(This, pDesc, riid, ppPipelineState))
5174#define ID3D12Device_CreateComputePipelineState(This, pDesc, riid, ppPipelineState) \
5175 ((This)->lpVtbl->CreateComputePipelineState(This, pDesc, riid, ppPipelineState))
5177#define ID3D12Device_CreateCommandList(This, nodeMask, type, pCommandAllocator, pInitialState, riid, ppCommandList) \
5178 ((This)->lpVtbl->CreateCommandList(This, nodeMask, type, pCommandAllocator, pInitialState, riid, ppCommandList))
5180#define ID3D12Device_CheckFeatureSupport(This, Feature, pFeatureSupportData, FeatureSupportDataSize) \
5181 ((This)->lpVtbl->CheckFeatureSupport(This, Feature, pFeatureSupportData, FeatureSupportDataSize))
5183#define ID3D12Device_CreateDescriptorHeap(This, pDescriptorHeapDesc, riid, ppvHeap) \
5184 ((This)->lpVtbl->CreateDescriptorHeap(This, pDescriptorHeapDesc, riid, ppvHeap))
5186#define ID3D12Device_GetDescriptorHandleIncrementSize(This, DescriptorHeapType) \
5187 ((This)->lpVtbl->GetDescriptorHandleIncrementSize(This, DescriptorHeapType))
5189#define ID3D12Device_CreateRootSignature(This, nodeMask, pBlobWithRootSignature, blobLengthInBytes, riid, ppvRootSignature) \
5190 ((This)->lpVtbl->CreateRootSignature(This, nodeMask, pBlobWithRootSignature, blobLengthInBytes, riid, ppvRootSignature))
5192#define ID3D12Device_CreateConstantBufferView(This, pDesc, DestDescriptor) \
5193 ((This)->lpVtbl->CreateConstantBufferView(This, pDesc, DestDescriptor))
5195#define ID3D12Device_CreateShaderResourceView(This, pResource, pDesc, DestDescriptor) \
5196 ((This)->lpVtbl->CreateShaderResourceView(This, pResource, pDesc, DestDescriptor))
5198#define ID3D12Device_CreateUnorderedAccessView(This, pResource, pCounterResource, pDesc, DestDescriptor) \
5199 ((This)->lpVtbl->CreateUnorderedAccessView(This, pResource, pCounterResource, pDesc, DestDescriptor))
5201#define ID3D12Device_CreateRenderTargetView(This, pResource, pDesc, DestDescriptor) \
5202 ((This)->lpVtbl->CreateRenderTargetView(This, pResource, pDesc, DestDescriptor))
5204#define ID3D12Device_CreateDepthStencilView(This, pResource, pDesc, DestDescriptor) \
5205 ((This)->lpVtbl->CreateDepthStencilView(This, pResource, pDesc, DestDescriptor))
5207#define ID3D12Device_CreateSampler(This, pDesc, DestDescriptor) \
5208 ((This)->lpVtbl->CreateSampler(This, pDesc, DestDescriptor))
5210#define ID3D12Device_CopyDescriptors(This, NumDestDescriptorRanges, pDestDescriptorRangeStarts, pDestDescriptorRangeSizes, NumSrcDescriptorRanges, pSrcDescriptorRangeStarts, pSrcDescriptorRangeSizes, DescriptorHeapsType) \
5211 ((This)->lpVtbl->CopyDescriptors(This, NumDestDescriptorRanges, pDestDescriptorRangeStarts, pDestDescriptorRangeSizes, NumSrcDescriptorRanges, pSrcDescriptorRangeStarts, pSrcDescriptorRangeSizes, DescriptorHeapsType))
5213#define ID3D12Device_CopyDescriptorsSimple(This, NumDescriptors, DestDescriptorRangeStart, SrcDescriptorRangeStart, DescriptorHeapsType) \
5214 ((This)->lpVtbl->CopyDescriptorsSimple(This, NumDescriptors, DestDescriptorRangeStart, SrcDescriptorRangeStart, DescriptorHeapsType))
5216#define ID3D12Device_GetResourceAllocationInfo(This, visibleMask, numResourceDescs, pResourceDescs) \
5217 ((This)->lpVtbl->GetResourceAllocationInfo(This, visibleMask, numResourceDescs, pResourceDescs))
5219#define ID3D12Device_GetCustomHeapProperties(This, nodeMask, heapType) \
5220 ((This)->lpVtbl->GetCustomHeapProperties(This, nodeMask, heapType))
5222#define ID3D12Device_CreateCommittedResource(This, pHeapProperties, HeapFlags, pDesc, InitialResourceState, pOptimizedClearValue, riidResource, ppvResource) \
5223 ((This)->lpVtbl->CreateCommittedResource(This, pHeapProperties, HeapFlags, pDesc, InitialResourceState, pOptimizedClearValue, riidResource, ppvResource))
5225#define ID3D12Device_CreateHeap(This, pDesc, riid, ppvHeap) \
5226 ((This)->lpVtbl->CreateHeap(This, pDesc, riid, ppvHeap))
5228#define ID3D12Device_CreatePlacedResource(This, pHeap, HeapOffset, pDesc, InitialState, pOptimizedClearValue, riid, ppvResource) \
5229 ((This)->lpVtbl->CreatePlacedResource(This, pHeap, HeapOffset, pDesc, InitialState, pOptimizedClearValue, riid, ppvResource))
5231#define ID3D12Device_CreateReservedResource(This, pDesc, InitialState, pOptimizedClearValue, riid, ppvResource) \
5232 ((This)->lpVtbl->CreateReservedResource(This, pDesc, InitialState, pOptimizedClearValue, riid, ppvResource))
5234#define ID3D12Device_CreateSharedHandle(This, pObject, pAttributes, Access, Name, pHandle) \
5235 ((This)->lpVtbl->CreateSharedHandle(This, pObject, pAttributes, Access, Name, pHandle))
5237#define ID3D12Device_OpenSharedHandle(This, NTHandle, riid, ppvObj) \
5238 ((This)->lpVtbl->OpenSharedHandle(This, NTHandle, riid, ppvObj))
5240#define ID3D12Device_OpenSharedHandleByName(This, Name, Access, pNTHandle) \
5241 ((This)->lpVtbl->OpenSharedHandleByName(This, Name, Access, pNTHandle))
5243#define ID3D12Device_MakeResident(This, NumObjects, ppObjects) \
5244 ((This)->lpVtbl->MakeResident(This, NumObjects, ppObjects))
5246#define ID3D12Device_Evict(This, NumObjects, ppObjects) \
5247 ((This)->lpVtbl->Evict(This, NumObjects, ppObjects))
5249#define ID3D12Device_CreateFence(This, InitialValue, Flags, riid, ppFence) \
5250 ((This)->lpVtbl->CreateFence(This, InitialValue, Flags, riid, ppFence))
5252#define ID3D12Device_GetDeviceRemovedReason(This) \
5253 ((This)->lpVtbl->GetDeviceRemovedReason(This))
5255#define ID3D12Device_GetCopyableFootprints(This, pResourceDesc, FirstSubresource, NumSubresources, BaseOffset, pLayouts, pNumRows, pRowSizeInBytes, pTotalBytes) \
5256 ((This)->lpVtbl->GetCopyableFootprints(This, pResourceDesc, FirstSubresource, NumSubresources, BaseOffset, pLayouts, pNumRows, pRowSizeInBytes, pTotalBytes))
5258#define ID3D12Device_CreateQueryHeap(This, pDesc, riid, ppvHeap) \
5259 ((This)->lpVtbl->CreateQueryHeap(This, pDesc, riid, ppvHeap))
5261#define ID3D12Device_SetStablePowerState(This, Enable) \
5262 ((This)->lpVtbl->SetStablePowerState(This, Enable))
5264#define ID3D12Device_CreateCommandSignature(This, pDesc, pRootSignature, riid, ppvCommandSignature) \
5265 ((This)->lpVtbl->CreateCommandSignature(This, pDesc, pRootSignature, riid, ppvCommandSignature))
5267#define ID3D12Device_GetResourceTiling(This, pTiledResource, pNumTilesForEntireResource, pPackedMipDesc, pStandardTileShapeForNonPackedMips, pNumSubresourceTilings, FirstSubresourceTilingToGet, pSubresourceTilingsForNonPackedMips) \
5268 ((This)->lpVtbl->GetResourceTiling(This, pTiledResource, pNumTilesForEntireResource, pPackedMipDesc, pStandardTileShapeForNonPackedMips, pNumSubresourceTilings, FirstSubresourceTilingToGet, pSubresourceTilingsForNonPackedMips))
5270#define ID3D12Device_GetAdapterLuid(This) \
5271 ((This)->lpVtbl->GetAdapterLuid(This))
5279#ifndef __ID3D12Fence_INTERFACE_DEFINED__
5280#define __ID3D12Fence_INTERFACE_DEFINED__
5287#if defined(__cplusplus) && !defined(CINTERFACE)
5376#define ID3D12Fence_QueryInterface(This, riid, ppvObject) \
5377 ((This)->lpVtbl->QueryInterface(This, riid, ppvObject))
5379#define ID3D12Fence_AddRef(This) \
5380 ((This)->lpVtbl->AddRef(This))
5382#define ID3D12Fence_Release(This) \
5383 ((This)->lpVtbl->Release(This))
5385#define ID3D12Fence_GetPrivateData(This, guid, pDataSize, pData) \
5386 ((This)->lpVtbl->GetPrivateData(This, guid, pDataSize, pData))
5388#define ID3D12Fence_SetPrivateData(This, guid, DataSize, pData) \
5389 ((This)->lpVtbl->SetPrivateData(This, guid, DataSize, pData))
5391#define ID3D12Fence_SetPrivateDataInterface(This, guid, pData) \
5392 ((This)->lpVtbl->SetPrivateDataInterface(This, guid, pData))
5394#define ID3D12Fence_SetName(This, Name) \
5395 ((This)->lpVtbl->SetName(This, Name))
5397#define ID3D12Fence_GetDevice(This, riid, ppvDevice) \
5398 ((This)->lpVtbl->GetDevice(This, riid, ppvDevice))
5400#define ID3D12Fence_GetCompletedValue(This) \
5401 ((This)->lpVtbl->GetCompletedValue(This))
5403#define ID3D12Fence_SetEventOnCompletion(This, Value, hEvent) \
5404 ((This)->lpVtbl->SetEventOnCompletion(This, Value, hEvent))
5406#define ID3D12Fence_Signal(This, Value) \
5407 ((This)->lpVtbl->Signal(This, Value))
5415#ifndef __ID3D12PipelineState_INTERFACE_DEFINED__
5416#define __ID3D12PipelineState_INTERFACE_DEFINED__
5423#if defined(__cplusplus) && !defined(CINTERFACE)
5496#define ID3D12PipelineState_QueryInterface(This, riid, ppvObject) \
5497 ((This)->lpVtbl->QueryInterface(This, riid, ppvObject))
5499#define ID3D12PipelineState_AddRef(This) \
5500 ((This)->lpVtbl->AddRef(This))
5502#define ID3D12PipelineState_Release(This) \
5503 ((This)->lpVtbl->Release(This))
5505#define ID3D12PipelineState_GetPrivateData(This, guid, pDataSize, pData) \
5506 ((This)->lpVtbl->GetPrivateData(This, guid, pDataSize, pData))
5508#define ID3D12PipelineState_SetPrivateData(This, guid, DataSize, pData) \
5509 ((This)->lpVtbl->SetPrivateData(This, guid, DataSize, pData))
5511#define ID3D12PipelineState_SetPrivateDataInterface(This, guid, pData) \
5512 ((This)->lpVtbl->SetPrivateDataInterface(This, guid, pData))
5514#define ID3D12PipelineState_SetName(This, Name) \
5515 ((This)->lpVtbl->SetName(This, Name))
5517#define ID3D12PipelineState_GetDevice(This, riid, ppvDevice) \
5518 ((This)->lpVtbl->GetDevice(This, riid, ppvDevice))
5520#define ID3D12PipelineState_GetCachedBlob(This, ppBlob) \
5521 ((This)->lpVtbl->GetCachedBlob(This, ppBlob))
5529#ifndef __ID3D12DescriptorHeap_INTERFACE_DEFINED__
5530#define __ID3D12DescriptorHeap_INTERFACE_DEFINED__
5537#if defined(__cplusplus) && !defined(CINTERFACE)
5620#define ID3D12DescriptorHeap_QueryInterface(This, riid, ppvObject) \
5621 ((This)->lpVtbl->QueryInterface(This, riid, ppvObject))
5623#define ID3D12DescriptorHeap_AddRef(This) \
5624 ((This)->lpVtbl->AddRef(This))
5626#define ID3D12DescriptorHeap_Release(This) \
5627 ((This)->lpVtbl->Release(This))
5629#define ID3D12DescriptorHeap_GetPrivateData(This, guid, pDataSize, pData) \
5630 ((This)->lpVtbl->GetPrivateData(This, guid, pDataSize, pData))
5632#define ID3D12DescriptorHeap_SetPrivateData(This, guid, DataSize, pData) \
5633 ((This)->lpVtbl->SetPrivateData(This, guid, DataSize, pData))
5635#define ID3D12DescriptorHeap_SetPrivateDataInterface(This, guid, pData) \
5636 ((This)->lpVtbl->SetPrivateDataInterface(This, guid, pData))
5638#define ID3D12DescriptorHeap_SetName(This, Name) \
5639 ((This)->lpVtbl->SetName(This, Name))
5641#define ID3D12DescriptorHeap_GetDevice(This, riid, ppvDevice) \
5642 ((This)->lpVtbl->GetDevice(This, riid, ppvDevice))
5644#define ID3D12DescriptorHeap_GetDesc(This) \
5645 ((This)->lpVtbl->GetDesc(This))
5647#define ID3D12DescriptorHeap_GetCPUDescriptorHandleForHeapStart(This) \
5648 ((This)->lpVtbl->GetCPUDescriptorHandleForHeapStart(This))
5650#define ID3D12DescriptorHeap_GetGPUDescriptorHandleForHeapStart(This) \
5651 ((This)->lpVtbl->GetGPUDescriptorHandleForHeapStart(This))
5659#ifndef __ID3D12QueryHeap_INTERFACE_DEFINED__
5660#define __ID3D12QueryHeap_INTERFACE_DEFINED__
5667#if defined(__cplusplus) && !defined(CINTERFACE)
5733#define ID3D12QueryHeap_QueryInterface(This, riid, ppvObject) \
5734 ((This)->lpVtbl->QueryInterface(This, riid, ppvObject))
5736#define ID3D12QueryHeap_AddRef(This) \
5737 ((This)->lpVtbl->AddRef(This))
5739#define ID3D12QueryHeap_Release(This) \
5740 ((This)->lpVtbl->Release(This))
5742#define ID3D12QueryHeap_GetPrivateData(This, guid, pDataSize, pData) \
5743 ((This)->lpVtbl->GetPrivateData(This, guid, pDataSize, pData))
5745#define ID3D12QueryHeap_SetPrivateData(This, guid, DataSize, pData) \
5746 ((This)->lpVtbl->SetPrivateData(This, guid, DataSize, pData))
5748#define ID3D12QueryHeap_SetPrivateDataInterface(This, guid, pData) \
5749 ((This)->lpVtbl->SetPrivateDataInterface(This, guid, pData))
5751#define ID3D12QueryHeap_SetName(This, Name) \
5752 ((This)->lpVtbl->SetName(This, Name))
5754#define ID3D12QueryHeap_GetDevice(This, riid, ppvDevice) \
5755 ((This)->lpVtbl->GetDevice(This, riid, ppvDevice))
5775DEFINE_GUID(IID_ID3D12Object, 0xc4fec28f, 0x7966, 0x4e95, 0x9f, 0x94, 0xf4, 0x31, 0xcb, 0x56, 0xc3, 0xb8);
5776DEFINE_GUID(IID_ID3D12DeviceChild, 0x905db94b, 0xa00c, 0x4140, 0x9d, 0xf5, 0x2b, 0x64, 0xca, 0x9e, 0xa3, 0x57);
5777DEFINE_GUID(IID_ID3D12RootSignature, 0xc54a6b66, 0x72df, 0x4ee8, 0x8b, 0xe5, 0xa9, 0x46, 0xa1, 0x42, 0x92, 0x14);
5778DEFINE_GUID(IID_ID3D12RootSignatureDeserializer, 0x34AB647B, 0x3CC8, 0x46AC, 0x84, 0x1B, 0xC0, 0x96, 0x56, 0x45, 0xC0, 0x46);
5779DEFINE_GUID(IID_ID3D12VersionedRootSignatureDeserializer, 0x7F91CE67, 0x090C, 0x4BB7, 0xB7, 0x8E, 0xED, 0x8F, 0xF2, 0xE3, 0x1D, 0xA0);
5780DEFINE_GUID(IID_ID3D12Pageable, 0x63ee58fb, 0x1268, 0x4835, 0x86, 0xda, 0xf0, 0x08, 0xce, 0x62, 0xf0, 0xd6);
5781DEFINE_GUID(IID_ID3D12Heap, 0x6b3b2502, 0x6e51, 0x45b3, 0x90, 0xee, 0x98, 0x84, 0x26, 0x5e, 0x8d, 0xf3);
5782DEFINE_GUID(
IID_ID3D12Resource, 0x696442be, 0xa72e, 0x4059, 0xbc, 0x79, 0x5b, 0x5c, 0x98, 0x04, 0x0f, 0xad);
5783DEFINE_GUID(
IID_ID3D12CommandAllocator, 0x6102dee4, 0xaf59, 0x4b09, 0xb9, 0x99, 0xb4, 0x4d, 0x73, 0xf0, 0x9b, 0x24);
5784DEFINE_GUID(
IID_ID3D12Fence, 0x0a753dcf, 0xc4d8, 0x4b91, 0xad, 0xf6, 0xbe, 0x5a, 0x60, 0xd9, 0x5a, 0x76);
5785DEFINE_GUID(
IID_ID3D12PipelineState, 0x765a30f3, 0xf624, 0x4c6f, 0xa8, 0x28, 0xac, 0xe9, 0x48, 0x62, 0x24, 0x45);
5786DEFINE_GUID(
IID_ID3D12DescriptorHeap, 0x8efb471d, 0x616c, 0x4f49, 0x90, 0xf7, 0x12, 0x7b, 0xb7, 0x63, 0xfa, 0x51);
5787DEFINE_GUID(
IID_ID3D12QueryHeap, 0x0d9658ae, 0xed45, 0x469e, 0xa6, 0x1d, 0x97, 0x0e, 0xc5, 0x83, 0xca, 0xb4);
5788DEFINE_GUID(IID_ID3D12CommandSignature, 0xc36a797c, 0xec80, 0x4f0a, 0x89, 0x85, 0xa7, 0xb2, 0x47, 0x50, 0x82, 0xd1);
5789DEFINE_GUID(
IID_ID3D12CommandList, 0x7116d91c, 0xe7e4, 0x47ce, 0xb8, 0xc6, 0xec, 0x81, 0x68, 0xf4, 0x37, 0xe5);
5790DEFINE_GUID(
IID_ID3D12GraphicsCommandList, 0x5b160d0f, 0xac1b, 0x4185, 0x8b, 0xa8, 0xb3, 0xae, 0x42, 0xa5, 0xa4, 0x55);
5791DEFINE_GUID(IID_ID3D12GraphicsCommandList1, 0x553103fb, 0x1fe7, 0x4557, 0xbb, 0x38, 0x94, 0x6d, 0x7d, 0x0e, 0x7c, 0xa7);
5792DEFINE_GUID(
IID_ID3D12CommandQueue, 0x0ec870a6, 0x5d7e, 0x4c22, 0x8c, 0xfc, 0x5b, 0xaa, 0xe0, 0x76, 0x16, 0xed);
5793DEFINE_GUID(
IID_ID3D12Device, 0x189819f1, 0x1db6, 0x4b57, 0xbe, 0x54, 0x18, 0x21, 0x33, 0x9b, 0x85, 0xf7);
5794DEFINE_GUID(IID_ID3D12PipelineLibrary, 0xc64226a8, 0x9201, 0x46af, 0xb4, 0xcc, 0x53, 0xfb, 0x9f, 0xf7, 0x41, 0x4f);
5795DEFINE_GUID(IID_ID3D12PipelineLibrary1, 0x80eabf42, 0x2568, 0x4e5e, 0xbd, 0x82, 0xc3, 0x7f, 0x86, 0x96, 0x1d, 0xc3);
5796DEFINE_GUID(IID_ID3D12Device1, 0x77acce80, 0x638e, 0x4e65, 0x88, 0x95, 0xc1, 0xf2, 0x33, 0x86, 0x86, 0x3e);
5797DEFINE_GUID(IID_ID3D12Device2, 0x30baa41e, 0xb15b, 0x475c, 0xa0, 0xbb, 0x1a, 0xf5, 0xc5, 0xb6, 0x43, 0x28);
5798DEFINE_GUID(IID_ID3D12Tools, 0x7071e1f0, 0xe84b, 0x4b33, 0x97, 0x4f, 0x12, 0xfa, 0x49, 0xde, 0x65, 0xc5);
5805#ifndef __ID3D12Debug_FWD_DEFINED__
5806#define __ID3D12Debug_FWD_DEFINED__
5815#ifndef __ID3D12Debug_INTERFACE_DEFINED__
5816#define __ID3D12Debug_INTERFACE_DEFINED__
5823#if defined(__cplusplus) && !defined(CINTERFACE)
5862#define ID3D12Debug_QueryInterface(This, riid, ppvObject) \
5863 ((This)->lpVtbl->QueryInterface(This, riid, ppvObject))
5865#define ID3D12Debug_AddRef(This) \
5866 ((This)->lpVtbl->AddRef(This))
5868#define ID3D12Debug_Release(This) \
5869 ((This)->lpVtbl->Release(This))
5871#define ID3D12Debug_EnableDebugLayer(This) \
5872 ((This)->lpVtbl->EnableDebugLayer(This))
5880DEFINE_GUID(
IID_ID3D12Debug, 0x344488b7, 0x6846, 0x474b, 0xb9, 0x89, 0xf0, 0x27, 0x44, 0x82, 0x45, 0xe0);
5887#ifndef __IDXGIObject_FWD_DEFINED__
5888#define __IDXGIObject_FWD_DEFINED__
5893#ifndef __IDXGIAdapter_FWD_DEFINED__
5894#define __IDXGIAdapter_FWD_DEFINED__
5899#ifndef __IDXGIOutput_FWD_DEFINED__
5900#define __IDXGIOutput_FWD_DEFINED__
5905#ifndef __IDXGISwapChain_FWD_DEFINED__
5906#define __IDXGISwapChain_FWD_DEFINED__
5911#ifndef __IDXGIFactory_FWD_DEFINED__
5912#define __IDXGIFactory_FWD_DEFINED__
5917#ifndef __IDXGIFactory1_FWD_DEFINED__
5918#define __IDXGIFactory1_FWD_DEFINED__
5923#ifndef __IDXGIAdapter1_FWD_DEFINED__
5924#define __IDXGIAdapter1_FWD_DEFINED__
5963#ifndef __IDXGIObject_INTERFACE_DEFINED__
5964#define __IDXGIObject_INTERFACE_DEFINED__
5971#if defined(__cplusplus) && !defined(CINTERFACE)
6068#define IDXGIObject_QueryInterface(This, riid, ppvObject) \
6069 ((This)->lpVtbl->QueryInterface(This, riid, ppvObject))
6071#define IDXGIObject_AddRef(This) \
6072 ((This)->lpVtbl->AddRef(This))
6074#define IDXGIObject_Release(This) \
6075 ((This)->lpVtbl->Release(This))
6077#define IDXGIObject_SetPrivateData(This, Name, DataSize, pData) \
6078 ((This)->lpVtbl->SetPrivateData(This, Name, DataSize, pData))
6080#define IDXGIObject_SetPrivateDataInterface(This, Name, pUnknown) \
6081 ((This)->lpVtbl->SetPrivateDataInterface(This, Name, pUnknown))
6083#define IDXGIObject_GetPrivateData(This, Name, pDataSize, pData) \
6084 ((This)->lpVtbl->GetPrivateData(This, Name, pDataSize, pData))
6086#define IDXGIObject_GetParent(This, riid, ppParent) \
6087 ((This)->lpVtbl->GetParent(This, riid, ppParent))
6095#ifndef __IDXGIFactory_INTERFACE_DEFINED__
6096#define __IDXGIFactory_INTERFACE_DEFINED__
6103#if defined(__cplusplus) && !defined(CINTERFACE)
6119 _Out_ HWND * pWindowHandle) = 0;
6235#define IDXGIFactory_QueryInterface(This, riid, ppvObject) \
6236 ((This)->lpVtbl->QueryInterface(This, riid, ppvObject))
6238#define IDXGIFactory_AddRef(This) \
6239 ((This)->lpVtbl->AddRef(This))
6241#define IDXGIFactory_Release(This) \
6242 ((This)->lpVtbl->Release(This))
6244#define IDXGIFactory_SetPrivateData(This, Name, DataSize, pData) \
6245 ((This)->lpVtbl->SetPrivateData(This, Name, DataSize, pData))
6247#define IDXGIFactory_SetPrivateDataInterface(This, Name, pUnknown) \
6248 ((This)->lpVtbl->SetPrivateDataInterface(This, Name, pUnknown))
6250#define IDXGIFactory_GetPrivateData(This, Name, pDataSize, pData) \
6251 ((This)->lpVtbl->GetPrivateData(This, Name, pDataSize, pData))
6253#define IDXGIFactory_GetParent(This, riid, ppParent) \
6254 ((This)->lpVtbl->GetParent(This, riid, ppParent))
6256#define IDXGIFactory_EnumAdapters(This, Adapter, ppAdapter) \
6257 ((This)->lpVtbl->EnumAdapters(This, Adapter, ppAdapter))
6259#define IDXGIFactory_MakeWindowAssociation(This, WindowHandle, Flags) \
6260 ((This)->lpVtbl->MakeWindowAssociation(This, WindowHandle, Flags))
6262#define IDXGIFactory_GetWindowAssociation(This, pWindowHandle) \
6263 ((This)->lpVtbl->GetWindowAssociation(This, pWindowHandle))
6265#define IDXGIFactory_CreateSwapChain(This, pDevice, pDesc, ppSwapChain) \
6266 ((This)->lpVtbl->CreateSwapChain(This, pDevice, pDesc, ppSwapChain))
6268#define IDXGIFactory_CreateSoftwareAdapter(This, Module, ppAdapter) \
6269 ((This)->lpVtbl->CreateSoftwareAdapter(This, Module, ppAdapter))
6279#ifndef __IDXGIAdapter_INTERFACE_DEFINED__
6280#define __IDXGIAdapter_INTERFACE_DEFINED__
6287#if defined(__cplusplus) && !defined(CINTERFACE)
6393#define IDXGIAdapter_QueryInterface(This, riid, ppvObject) \
6394 ((This)->lpVtbl->QueryInterface(This, riid, ppvObject))
6396#define IDXGIAdapter_AddRef(This) \
6397 ((This)->lpVtbl->AddRef(This))
6399#define IDXGIAdapter_Release(This) \
6400 ((This)->lpVtbl->Release(This))
6402#define IDXGIAdapter_SetPrivateData(This, Name, DataSize, pData) \
6403 ((This)->lpVtbl->SetPrivateData(This, Name, DataSize, pData))
6405#define IDXGIAdapter_SetPrivateDataInterface(This, Name, pUnknown) \
6406 ((This)->lpVtbl->SetPrivateDataInterface(This, Name, pUnknown))
6408#define IDXGIAdapter_GetPrivateData(This, Name, pDataSize, pData) \
6409 ((This)->lpVtbl->GetPrivateData(This, Name, pDataSize, pData))
6411#define IDXGIAdapter_GetParent(This, riid, ppParent) \
6412 ((This)->lpVtbl->GetParent(This, riid, ppParent))
6414#define IDXGIAdapter_EnumOutputs(This, Output, ppOutput) \
6415 ((This)->lpVtbl->EnumOutputs(This, Output, ppOutput))
6417#define IDXGIAdapter_GetDesc(This, pDesc) \
6418 ((This)->lpVtbl->GetDesc(This, pDesc))
6420#define IDXGIAdapter_CheckInterfaceSupport(This, InterfaceName, pUMDVersion) \
6421 ((This)->lpVtbl->CheckInterfaceSupport(This, InterfaceName, pUMDVersion))
6429#ifndef __IDXGIFactory1_INTERFACE_DEFINED__
6430#define __IDXGIFactory1_INTERFACE_DEFINED__
6437#if defined(__cplusplus) && !defined(CINTERFACE)
6561#define IDXGIFactory1_QueryInterface(This, riid, ppvObject) \
6562 ((This)->lpVtbl->QueryInterface(This, riid, ppvObject))
6564#define IDXGIFactory1_AddRef(This) \
6565 ((This)->lpVtbl->AddRef(This))
6567#define IDXGIFactory1_Release(This) \
6568 ((This)->lpVtbl->Release(This))
6570#define IDXGIFactory1_SetPrivateData(This, Name, DataSize, pData) \
6571 ((This)->lpVtbl->SetPrivateData(This, Name, DataSize, pData))
6573#define IDXGIFactory1_SetPrivateDataInterface(This, Name, pUnknown) \
6574 ((This)->lpVtbl->SetPrivateDataInterface(This, Name, pUnknown))
6576#define IDXGIFactory1_GetPrivateData(This, Name, pDataSize, pData) \
6577 ((This)->lpVtbl->GetPrivateData(This, Name, pDataSize, pData))
6579#define IDXGIFactory1_GetParent(This, riid, ppParent) \
6580 ((This)->lpVtbl->GetParent(This, riid, ppParent))
6582#define IDXGIFactory1_EnumAdapters(This, Adapter, ppAdapter) \
6583 ((This)->lpVtbl->EnumAdapters(This, Adapter, ppAdapter))
6585#define IDXGIFactory1_MakeWindowAssociation(This, WindowHandle, Flags) \
6586 ((This)->lpVtbl->MakeWindowAssociation(This, WindowHandle, Flags))
6588#define IDXGIFactory1_GetWindowAssociation(This, pWindowHandle) \
6589 ((This)->lpVtbl->GetWindowAssociation(This, pWindowHandle))
6591#define IDXGIFactory1_CreateSwapChain(This, pDevice, pDesc, ppSwapChain) \
6592 ((This)->lpVtbl->CreateSwapChain(This, pDevice, pDesc, ppSwapChain))
6594#define IDXGIFactory1_CreateSoftwareAdapter(This, Module, ppAdapter) \
6595 ((This)->lpVtbl->CreateSoftwareAdapter(This, Module, ppAdapter))
6597#define IDXGIFactory1_EnumAdapters1(This, Adapter, ppAdapter) \
6598 ((This)->lpVtbl->EnumAdapters1(This, Adapter, ppAdapter))
6600#define IDXGIFactory1_IsCurrent(This) \
6601 ((This)->lpVtbl->IsCurrent(This))
6609#ifndef __IDXGIAdapter1_INTERFACE_DEFINED__
6610#define __IDXGIAdapter1_INTERFACE_DEFINED__
6617#if defined(__cplusplus) && !defined(CINTERFACE)
6718#define IDXGIAdapter1_QueryInterface(This, riid, ppvObject) \
6719 ((This)->lpVtbl->QueryInterface(This, riid, ppvObject))
6721#define IDXGIAdapter1_AddRef(This) \
6722 ((This)->lpVtbl->AddRef(This))
6724#define IDXGIAdapter1_Release(This) \
6725 ((This)->lpVtbl->Release(This))
6727#define IDXGIAdapter1_SetPrivateData(This, Name, DataSize, pData) \
6728 ((This)->lpVtbl->SetPrivateData(This, Name, DataSize, pData))
6730#define IDXGIAdapter1_SetPrivateDataInterface(This, Name, pUnknown) \
6731 ((This)->lpVtbl->SetPrivateDataInterface(This, Name, pUnknown))
6733#define IDXGIAdapter1_GetPrivateData(This, Name, pDataSize, pData) \
6734 ((This)->lpVtbl->GetPrivateData(This, Name, pDataSize, pData))
6736#define IDXGIAdapter1_GetParent(This, riid, ppParent) \
6737 ((This)->lpVtbl->GetParent(This, riid, ppParent))
6739#define IDXGIAdapter1_EnumOutputs(This, Output, ppOutput) \
6740 ((This)->lpVtbl->EnumOutputs(This, Output, ppOutput))
6742#define IDXGIAdapter1_GetDesc(This, pDesc) \
6743 ((This)->lpVtbl->GetDesc(This, pDesc))
6745#define IDXGIAdapter1_CheckInterfaceSupport(This, InterfaceName, pUMDVersion) \
6746 ((This)->lpVtbl->CheckInterfaceSupport(This, InterfaceName, pUMDVersion))
6748#define IDXGIAdapter1_GetDesc1(This, pDesc) \
6749 ((This)->lpVtbl->GetDesc1(This, pDesc))
6761DEFINE_GUID(
IID_IDXGIObject, 0xaec22fb8, 0x76f3, 0x4639, 0x9b, 0xe0, 0x28, 0xeb, 0x43, 0xa6, 0x7a, 0x2e);
6762DEFINE_GUID(IID_IDXGIDeviceSubObject, 0x3d3e0379, 0xf9de, 0x4d58, 0xbb, 0x6c, 0x18, 0xd6, 0x29, 0x92, 0xf1, 0xa6);
6763DEFINE_GUID(IID_IDXGIResource, 0x035f3ab4, 0x482e, 0x4e50, 0xb4, 0x1f, 0x8a, 0x7f, 0x8b, 0xd8, 0x96, 0x0b);
6764DEFINE_GUID(IID_IDXGIKeyedMutex, 0x9d8e1289, 0xd7b3, 0x465f, 0x81, 0x26, 0x25, 0x0e, 0x34, 0x9a, 0xf8, 0x5d);
6765DEFINE_GUID(IID_IDXGISurface, 0xcafcb56c, 0x6ac3, 0x4889, 0xbf, 0x47, 0x9e, 0x23, 0xbb, 0xd2, 0x60, 0xec);
6766DEFINE_GUID(IID_IDXGISurface1, 0x4AE63092, 0x6327, 0x4c1b, 0x80, 0xAE, 0xBF, 0xE1, 0x2E, 0xA3, 0x2B, 0x86);
6767DEFINE_GUID(
IID_IDXGIAdapter, 0x2411e7e1, 0x12ac, 0x4ccf, 0xbd, 0x14, 0x97, 0x98, 0xe8, 0x53, 0x4d, 0xc0);
6768DEFINE_GUID(IID_IDXGIOutput, 0xae02eedb, 0xc735, 0x4690, 0x8d, 0x52, 0x5a, 0x8d, 0xc2, 0x02, 0x13, 0xaa);
6769DEFINE_GUID(IID_IDXGISwapChain, 0x310d36a0, 0xd2e7, 0x4c0a, 0xaa, 0x04, 0x6a, 0x9d, 0x23, 0xb8, 0x88, 0x6a);
6770DEFINE_GUID(
IID_IDXGIFactory, 0x7b7166ec, 0x21c7, 0x44ae, 0xb2, 0x1a, 0xc9, 0xae, 0x32, 0x1a, 0xe3, 0x69);
6771DEFINE_GUID(IID_IDXGIDevice, 0x54ec77fa, 0x1377, 0x44e6, 0x8c, 0x32, 0x88, 0xfd, 0x5f, 0x44, 0xc8, 0x4c);
6772DEFINE_GUID(
IID_IDXGIFactory1, 0x770aae78, 0xf26f, 0x4dba, 0xa8, 0x29, 0x25, 0x3c, 0x83, 0xd1, 0xb3, 0x87);
6773DEFINE_GUID(
IID_IDXGIAdapter1, 0x29038f61, 0x3839, 0x4626, 0x91, 0xfd, 0x08, 0x68, 0x79, 0x01, 0x1a, 0x05);
6774DEFINE_GUID(IID_IDXGIDevice1, 0x77db970f, 0x6276, 0x48ba, 0xba, 0x28, 0x07, 0x01, 0x43, 0xb4, 0x39, 0x2c);
6790#define D3DCOMPILE_DEBUG (1 << 0)
6791#define D3DCOMPILE_SKIP_VALIDATION (1 << 1)
6792#define D3DCOMPILE_SKIP_OPTIMIZATION (1 << 2)
6793#define D3DCOMPILE_PACK_MATRIX_ROW_MAJOR (1 << 3)
6794#define D3DCOMPILE_PACK_MATRIX_COLUMN_MAJOR (1 << 4)
6795#define D3DCOMPILE_PARTIAL_PRECISION (1 << 5)
6796#define D3DCOMPILE_FORCE_VS_SOFTWARE_NO_OPT (1 << 6)
6797#define D3DCOMPILE_FORCE_PS_SOFTWARE_NO_OPT (1 << 7)
6798#define D3DCOMPILE_NO_PRESHADER (1 << 8)
6799#define D3DCOMPILE_AVOID_FLOW_CONTROL (1 << 9)
6800#define D3DCOMPILE_PREFER_FLOW_CONTROL (1 << 10)
6801#define D3DCOMPILE_ENABLE_STRICTNESS (1 << 11)
6802#define D3DCOMPILE_ENABLE_BACKWARDS_COMPATIBILITY (1 << 12)
6803#define D3DCOMPILE_IEEE_STRICTNESS (1 << 13)
6804#define D3DCOMPILE_OPTIMIZATION_LEVEL0 (1 << 14)
6805#define D3DCOMPILE_OPTIMIZATION_LEVEL1 0
6806#define D3DCOMPILE_OPTIMIZATION_LEVEL2 ((1 << 14) | (1 << 15))
6807#define D3DCOMPILE_OPTIMIZATION_LEVEL3 (1 << 15)
6808#define D3DCOMPILE_RESERVED16 (1 << 16)
6809#define D3DCOMPILE_RESERVED17 (1 << 17)
6810#define D3DCOMPILE_WARNINGS_ARE_ERRORS (1 << 18)
6811#define D3DCOMPILE_RESOURCES_MAY_ALIAS (1 << 19)
6812#define D3DCOMPILE_ENABLE_UNBOUNDED_DESCRIPTOR_TABLES (1 << 20)
6813#define D3DCOMPILE_ALL_RESOURCES_BOUND (1 << 21)
6816#pragma clang diagnostic pop
6821#if !defined(WINBASEAPI)
6822#if !defined(_KERNEL32_)
6823#define WINBASEAPI DECLSPEC_IMPORT
6829#define _Ret_maybenull_
6830#define _Post_ptr_invalid_
6832#define STATUS_WAIT_0 ((DWORD)0x00000000L)
6833#define WAIT_OBJECT_0 ((STATUS_WAIT_0) + 0)
6872#define CreateEvent CreateEventW
6874#define CreateEvent CreateEventA
struct D3D12_RESOURCE_TRANSITION_BARRIER D3D12_RESOURCE_TRANSITION_BARRIER
interface ID3D12Device2 ID3D12Device2
struct D3D12_INPUT_LAYOUT_DESC D3D12_INPUT_LAYOUT_DESC
struct D3D12_SUBRESOURCE_FOOTPRINT D3D12_SUBRESOURCE_FOOTPRINT
_Null_terminated_ CONST CHAR * LPCSTR
struct D3D12_UNORDERED_ACCESS_VIEW_DESC D3D12_UNORDERED_ACCESS_VIEW_DESC
interface ID3D12GraphicsCommandList ID3D12GraphicsCommandList
struct D3D12_TEX2DMS_ARRAY_SRV D3D12_TEX2DMS_ARRAY_SRV
struct D3D12_RENDER_TARGET_VIEW_DESC D3D12_RENDER_TARGET_VIEW_DESC
HRESULT(WINAPI * PFN_D3D12_SERIALIZE_ROOT_SIGNATURE)(_In_ const D3D12_ROOT_SIGNATURE_DESC *pRootSignature, _In_ D3D_ROOT_SIGNATURE_VERSION Version, _Out_ ID3DBlob **ppBlob, _Always_(_Outptr_opt_result_maybenull_) ID3DBlob **ppErrorBlob)
struct ID3D12ObjectVtbl ID3D12ObjectVtbl
struct D3D12_SAMPLER_DESC D3D12_SAMPLER_DESC
EXTERN_C const IID IID_ID3D12PipelineState
struct DXGI_ADAPTER_DESC DXGI_ADAPTER_DESC
struct ID3D12CommandListVtbl ID3D12CommandListVtbl
#define DEFINE_GUID(name, l, w1, w2, b1, b2, b3, b4, b5, b6, b7, b8)
struct D3D12_RESOURCE_ALLOCATION_INFO D3D12_RESOURCE_ALLOCATION_INFO
struct D3D12_RESOURCE_UAV_BARRIER D3D12_RESOURCE_UAV_BARRIER
#define _In_reads_bytes_(size)
struct D3D12_TEX1D_ARRAY_RTV D3D12_TEX1D_ARRAY_RTV
EXTERN_C const IID IID_ID3D12Resource
struct D3D12_HEAP_PROPERTIES D3D12_HEAP_PROPERTIES
@ D3D_INCLUDE_FORCE_DWORD
#define _Post_ptr_invalid_
interface ID3D12DescriptorHeap ID3D12DescriptorHeap
#define _Out_writes_bytes_(size)
interface ID3D12PipelineLibrary1 ID3D12PipelineLibrary1
struct DXGI_SAMPLE_DESC DXGI_SAMPLE_DESC
D3D12_STATIC_BORDER_COLOR
@ D3D12_STATIC_BORDER_COLOR_TRANSPARENT_BLACK
@ D3D12_STATIC_BORDER_COLOR_OPAQUE_WHITE
@ D3D12_STATIC_BORDER_COLOR_OPAQUE_BLACK
struct D3D12_TEX1D_RTV D3D12_TEX1D_RTV
D3D12_DESCRIPTOR_RANGE_TYPE
@ D3D12_DESCRIPTOR_RANGE_TYPE_SRV
@ D3D12_DESCRIPTOR_RANGE_TYPE_SAMPLER
@ D3D12_DESCRIPTOR_RANGE_TYPE_CBV
@ D3D12_DESCRIPTOR_RANGE_TYPE_UAV
EXTERN_C const IID IID_IDXGIObject
@ D3D12_FILL_MODE_WIREFRAME
@ D3D12_RESOURCE_STATE_GENERIC_READ
@ D3D12_RESOURCE_STATE_RESOLVE_DEST
@ D3D12_RESOURCE_STATE_INDEX_BUFFER
@ D3D12_RESOURCE_STATE_COPY_DEST
@ D3D12_RESOURCE_STATE_RENDER_TARGET
@ D3D12_RESOURCE_STATE_COPY_SOURCE
@ D3D12_RESOURCE_STATE_PIXEL_SHADER_RESOURCE
@ D3D12_RESOURCE_STATE_UNORDERED_ACCESS
@ D3D12_RESOURCE_STATE_INDIRECT_ARGUMENT
@ D3D12_RESOURCE_STATE_NON_PIXEL_SHADER_RESOURCE
@ D3D12_RESOURCE_STATE_DEPTH_WRITE
@ D3D12_RESOURCE_STATE_DEPTH_READ
@ D3D12_RESOURCE_STATE_STREAM_OUT
@ D3D12_RESOURCE_STATE_COMMON
@ D3D12_RESOURCE_STATE_PREDICATION
@ D3D12_RESOURCE_STATE_RESOLVE_SOURCE
@ D3D12_RESOURCE_STATE_VERTEX_AND_CONSTANT_BUFFER
@ D3D12_RESOURCE_STATE_PRESENT
WINBASEAPI _Ret_maybenull_ HANDLE WINAPI CreateEventA(_In_opt_ LPSECURITY_ATTRIBUTES lpEventAttributes, _In_ BOOL bManualReset, _In_ BOOL bInitialState, _In_opt_ LPCSTR lpName)
D3D_ROOT_SIGNATURE_VERSION
@ D3D_ROOT_SIGNATURE_VERSION_1_0
@ D3D_ROOT_SIGNATURE_VERSION_1
@ D3D_ROOT_SIGNATURE_VERSION_1_1
struct D3D12_TEX2D_SRV D3D12_TEX2D_SRV
struct D3D12_BOX D3D12_BOX
#define MIDL_INTERFACE(x)
_Null_terminated_ CHAR * NPSTR
D3D12_TEXTURE_ADDRESS_MODE
@ D3D12_TEXTURE_ADDRESS_MODE_BORDER
@ D3D12_TEXTURE_ADDRESS_MODE_WRAP
@ D3D12_TEXTURE_ADDRESS_MODE_CLAMP
@ D3D12_TEXTURE_ADDRESS_MODE_MIRROR
@ D3D12_TEXTURE_ADDRESS_MODE_MIRROR_ONCE
struct D3D12_INDIRECT_ARGUMENT_DESC D3D12_INDIRECT_ARGUMENT_DESC
I_RPC_HANDLE RPC_BINDING_HANDLE
_Null_terminated_ CONST CHAR * PCSTR
struct D3D12_SHADER_BYTECODE D3D12_SHADER_BYTECODE
interface IDXGIFactory1 IDXGIFactory1
struct D3D12_TEX2DMS_SRV D3D12_TEX2DMS_SRV
struct D3D12_BUFFER_RTV D3D12_BUFFER_RTV
struct D3D12_RESOURCE_ALIASING_BARRIER D3D12_RESOURCE_ALIASING_BARRIER
#define DEFINE_ENUM_FLAG_OPERATORS(ENUMTYPE)
struct D3D12_TEX2D_UAV D3D12_TEX2D_UAV
interface ID3D12QueryHeap ID3D12QueryHeap
D3D12_INPUT_CLASSIFICATION
@ D3D12_INPUT_CLASSIFICATION_PER_VERTEX_DATA
@ D3D12_INPUT_CLASSIFICATION_PER_INSTANCE_DATA
EXTERN_C const IID IID_IUnknown
interface ID3D12CommandAllocator ID3D12CommandAllocator
struct _RPC_VERSION RPC_VERSION
struct D3D12_ROOT_DESCRIPTOR_TABLE D3D12_ROOT_DESCRIPTOR_TABLE
struct D3D12_GPU_DESCRIPTOR_HANDLE D3D12_GPU_DESCRIPTOR_HANDLE
@ D3D12_PREDICATION_OP_NOT_EQUAL_ZERO
@ D3D12_PREDICATION_OP_EQUAL_ZERO
interface ID3D12Object ID3D12Object
D3D12_SHADER_COMPONENT_MAPPING
@ D3D12_SHADER_COMPONENT_MAPPING_FROM_MEMORY_COMPONENT_1
@ D3D12_SHADER_COMPONENT_MAPPING_FORCE_VALUE_0
@ D3D12_SHADER_COMPONENT_MAPPING_FROM_MEMORY_COMPONENT_3
@ D3D12_SHADER_COMPONENT_MAPPING_FORCE_VALUE_1
@ D3D12_SHADER_COMPONENT_MAPPING_FROM_MEMORY_COMPONENT_0
@ D3D12_SHADER_COMPONENT_MAPPING_FROM_MEMORY_COMPONENT_2
EXTERN_C const IID IID_ID3D12GraphicsCommandList
struct _SECURITY_ATTRIBUTES SECURITY_ATTRIBUTES
struct IDXGIFactoryVtbl IDXGIFactoryVtbl
interface ID3D12CommandList ID3D12CommandList
struct D3D12_VIEWPORT D3D12_VIEWPORT
EXTERN_C const IID IID_ID3D12Fence
struct IDXGIObjectVtbl IDXGIObjectVtbl
struct D3D12_RESOURCE_DESC D3D12_RESOURCE_DESC
struct D3D12_TEXCUBE_ARRAY_SRV D3D12_TEXCUBE_ARRAY_SRV
interface ID3D12GraphicsCommandList1 ID3D12GraphicsCommandList1
struct D3D12_QUERY_HEAP_DESC D3D12_QUERY_HEAP_DESC
struct D3D12_DESCRIPTOR_HEAP_DESC D3D12_DESCRIPTOR_HEAP_DESC
@ D3D12_RTV_DIMENSION_TEXTURE1D
@ D3D12_RTV_DIMENSION_UNKNOWN
@ D3D12_RTV_DIMENSION_BUFFER
@ D3D12_RTV_DIMENSION_TEXTURE2DMSARRAY
@ D3D12_RTV_DIMENSION_TEXTURE3D
@ D3D12_RTV_DIMENSION_TEXTURE1DARRAY
@ D3D12_RTV_DIMENSION_TEXTURE2D
@ D3D12_RTV_DIMENSION_TEXTURE2DMS
@ D3D12_RTV_DIMENSION_TEXTURE2DARRAY
struct D3D12_TEX1D_ARRAY_SRV D3D12_TEX1D_ARRAY_SRV
struct ID3D12PageableVtbl ID3D12PageableVtbl
struct D3D12_INDEX_BUFFER_VIEW D3D12_INDEX_BUFFER_VIEW
EXTERN_C const IID IID_ID3D12CommandQueue
D3D12_RESOURCE_BARRIER_FLAGS
@ D3D12_RESOURCE_BARRIER_FLAG_NONE
@ D3D12_RESOURCE_BARRIER_FLAG_BEGIN_ONLY
@ D3D12_RESOURCE_BARRIER_FLAG_END_ONLY
struct _RPC_MESSAGE * PRPC_MESSAGE
#define _Outptr_opt_result_bytebuffer_(size)
D3D12_PRIMITIVE_TOPOLOGY_TYPE
@ D3D12_PRIMITIVE_TOPOLOGY_TYPE_TRIANGLE
@ D3D12_PRIMITIVE_TOPOLOGY_TYPE_UNDEFINED
@ D3D12_PRIMITIVE_TOPOLOGY_TYPE_POINT
@ D3D12_PRIMITIVE_TOPOLOGY_TYPE_PATCH
@ D3D12_PRIMITIVE_TOPOLOGY_TYPE_LINE
struct D3D12_PACKED_MIP_INFO D3D12_PACKED_MIP_INFO
struct D3D12_SHADER_RESOURCE_VIEW_DESC D3D12_SHADER_RESOURCE_VIEW_DESC
_Null_terminated_ CHAR * LPSTR
@ D3D12_COMMAND_LIST_TYPE_COPY
@ D3D12_COMMAND_LIST_TYPE_BUNDLE
@ D3D12_COMMAND_LIST_TYPE_DIRECT
@ D3D12_COMMAND_LIST_TYPE_COMPUTE
struct D3D12_ROOT_PARAMETER D3D12_ROOT_PARAMETER
struct IDXGIAdapterVtbl IDXGIAdapterVtbl
@ D3D12_LOGIC_OP_OR_INVERTED
@ D3D12_LOGIC_OP_AND_REVERSE
@ D3D12_LOGIC_OP_OR_REVERSE
@ D3D12_LOGIC_OP_AND_INVERTED
@ D3D12_LOGIC_OP_COPY_INVERTED
struct D3D12_CLEAR_VALUE D3D12_CLEAR_VALUE
struct D3D12_DISCARD_REGION D3D12_DISCARD_REGION
interface IDXGIAdapter1 IDXGIAdapter1
@ D3D12_TILE_MAPPING_FLAG_NONE
@ D3D12_TILE_MAPPING_FLAG_NO_HAZARD
D3D12_COMMAND_QUEUE_PRIORITY
@ D3D12_COMMAND_QUEUE_PRIORITY_HIGH
@ D3D12_COMMAND_QUEUE_PRIORITY_NORMAL
@ D3D12_COMMAND_QUEUE_PRIORITY_GLOBAL_REALTIME
@ D3D12_MEMORY_POOL_UNKNOWN
@ D3D12_TILE_RANGE_FLAG_REUSE_SINGLE_TILE
@ D3D12_TILE_RANGE_FLAG_SKIP
@ D3D12_TILE_RANGE_FLAG_NONE
@ D3D12_TILE_RANGE_FLAG_NULL
D3D12_CONSERVATIVE_RASTERIZATION_MODE
@ D3D12_CONSERVATIVE_RASTERIZATION_MODE_OFF
@ D3D12_CONSERVATIVE_RASTERIZATION_MODE_ON
struct D3D12_GRAPHICS_PIPELINE_STATE_DESC D3D12_GRAPHICS_PIPELINE_STATE_DESC
@ D3D12_RESOURCE_DIMENSION_BUFFER
@ D3D12_RESOURCE_DIMENSION_TEXTURE1D
@ D3D12_RESOURCE_DIMENSION_TEXTURE3D
@ D3D12_RESOURCE_DIMENSION_UNKNOWN
@ D3D12_RESOURCE_DIMENSION_TEXTURE2D
struct D3D12_TEX1D_ARRAY_DSV D3D12_TEX1D_ARRAY_DSV
EXTERN_C const IID IID_ID3D12DescriptorHeap
WINBASEAPI _Ret_maybenull_ HANDLE WINAPI CreateEventW(_In_opt_ LPSECURITY_ATTRIBUTES lpEventAttributes, _In_ BOOL bManualReset, _In_ BOOL bInitialState, _In_opt_ LPCWSTR lpName)
struct D3D12_ROOT_SIGNATURE_DESC1 D3D12_ROOT_SIGNATURE_DESC1
#define _Out_writes_(size)
struct D3D12_TEX3D_SRV D3D12_TEX3D_SRV
struct D3D12_TEX3D_RTV D3D12_TEX3D_RTV
@ D3D12_DEPTH_WRITE_MASK_ALL
@ D3D12_DEPTH_WRITE_MASK_ZERO
interface ID3D12Pageable ID3D12Pageable
@ DXGI_FORMAT_B8G8R8A8_UNORM
@ DXGI_FORMAT_R8_TYPELESS
@ DXGI_FORMAT_BC3_UNORM_SRGB
@ DXGI_FORMAT_R8G8_B8G8_UNORM
@ DXGI_FORMAT_R32G32B32_TYPELESS
@ DXGI_FORMAT_BC3_TYPELESS
@ DXGI_FORMAT_R16G16_SNORM
@ DXGI_FORMAT_D32_FLOAT_S8X24_UINT
@ DXGI_FORMAT_R32G32B32A32_SINT
@ DXGI_FORMAT_R32G32B32A32_UINT
@ DXGI_FORMAT_R16G16B16A16_SNORM
@ DXGI_FORMAT_R16G16B16A16_UNORM
@ DXGI_FORMAT_R16G16_UNORM
@ DXGI_FORMAT_BC1_UNORM_SRGB
@ DXGI_FORMAT_R16G16_SINT
@ DXGI_FORMAT_R24_UNORM_X8_TYPELESS
@ DXGI_FORMAT_R8G8B8A8_TYPELESS
@ DXGI_FORMAT_BC2_TYPELESS
@ DXGI_FORMAT_R32_FLOAT_X8X24_TYPELESS
@ DXGI_FORMAT_R32G32B32_FLOAT
@ DXGI_FORMAT_R32G32B32_SINT
@ DXGI_FORMAT_R32G32B32A32_TYPELESS
@ DXGI_FORMAT_B8G8R8A8_UNORM_SRGB
@ DXGI_FORMAT_B8G8R8X8_TYPELESS
@ DXGI_FORMAT_B8G8R8A8_TYPELESS
@ DXGI_FORMAT_X24_TYPELESS_G8_UINT
@ DXGI_FORMAT_R16G16B16A16_UINT
@ DXGI_FORMAT_R8G8B8A8_SINT
@ DXGI_FORMAT_D24_UNORM_S8_UINT
@ DXGI_FORMAT_R8G8B8A8_SNORM
@ DXGI_FORMAT_R8G8B8A8_UINT
@ DXGI_FORMAT_R10G10B10A2_TYPELESS
@ DXGI_FORMAT_R32G32_FLOAT
@ DXGI_FORMAT_R10G10B10A2_UNORM
@ DXGI_FORMAT_R9G9B9E5_SHAREDEXP
@ DXGI_FORMAT_R16G16B16A16_TYPELESS
@ DXGI_FORMAT_R16G16B16A16_FLOAT
@ DXGI_FORMAT_BC7_TYPELESS
@ DXGI_FORMAT_R32_TYPELESS
@ DXGI_FORMAT_R32G32_UINT
@ DXGI_FORMAT_R11G11B10_FLOAT
@ DXGI_FORMAT_R8G8B8A8_UNORM
@ DXGI_FORMAT_G8R8_G8B8_UNORM
@ DXGI_FORMAT_R10G10B10A2_UINT
@ DXGI_FORMAT_BC6H_TYPELESS
@ DXGI_FORMAT_BC5_TYPELESS
@ DXGI_FORMAT_R32G32_SINT
@ DXGI_FORMAT_BC2_UNORM_SRGB
@ DXGI_FORMAT_BC4_TYPELESS
@ DXGI_FORMAT_R32G32B32A32_FLOAT
@ DXGI_FORMAT_R24G8_TYPELESS
@ DXGI_FORMAT_R16_TYPELESS
@ DXGI_FORMAT_R32G32B32_UINT
@ DXGI_FORMAT_R16G16_TYPELESS
@ DXGI_FORMAT_R8G8B8A8_UNORM_SRGB
@ DXGI_FORMAT_R16G16_UINT
@ DXGI_FORMAT_R8G8_TYPELESS
@ DXGI_FORMAT_R10G10B10_XR_BIAS_A2_UNORM
@ DXGI_FORMAT_R16G16B16A16_SINT
@ DXGI_FORMAT_BC1_TYPELESS
@ DXGI_FORMAT_BC7_UNORM_SRGB
@ DXGI_FORMAT_R32G32_TYPELESS
@ DXGI_FORMAT_R32G8X24_TYPELESS
@ DXGI_FORMAT_B4G4R4A4_UNORM
@ DXGI_FORMAT_R16G16_FLOAT
@ DXGI_FORMAT_B5G6R5_UNORM
@ DXGI_FORMAT_X32_TYPELESS_G8X24_UINT
@ DXGI_FORMAT_B8G8R8X8_UNORM_SRGB
@ DXGI_FORMAT_B5G5R5A1_UNORM
@ DXGI_FORMAT_B8G8R8X8_UNORM
interface IDXGIAdapter IDXGIAdapter
#define _Out_writes_opt_(size)
@ D3D12_RESOURCE_FLAG_ALLOW_UNORDERED_ACCESS
@ D3D12_RESOURCE_FLAG_NONE
@ D3D12_RESOURCE_FLAG_ALLOW_DEPTH_STENCIL
@ D3D12_RESOURCE_FLAG_ALLOW_CROSS_ADAPTER
@ D3D12_RESOURCE_FLAG_DENY_SHADER_RESOURCE
@ D3D12_RESOURCE_FLAG_ALLOW_SIMULTANEOUS_ACCESS
@ D3D12_RESOURCE_FLAG_ALLOW_RENDER_TARGET
struct _SECURITY_ATTRIBUTES * PSECURITY_ATTRIBUTES
struct D3D12_TEX3D_UAV D3D12_TEX3D_UAV
EXTERN_C const IID IID_ID3D12CommandAllocator
struct D3D12_CPU_DESCRIPTOR_HANDLE D3D12_CPU_DESCRIPTOR_HANDLE
struct D3D12_TEX2D_RTV D3D12_TEX2D_RTV
#define DECLARE_INTERFACE(iface)
struct _D3D_SHADER_MACRO * LPD3D_SHADER_MACRO
struct D3D12_TEX1D_SRV D3D12_TEX1D_SRV
struct D3D12_TEXCUBE_SRV D3D12_TEXCUBE_SRV
interface ID3D10Blob ID3D10Blob
struct D3D12_TEX2DMS_ARRAY_RTV D3D12_TEX2DMS_ARRAY_RTV
EXTERN_C const IID IID_IDXGIAdapter
#define _Null_terminated_
interface IDXGIFactory IDXGIFactory
_Null_terminated_ CONST WCHAR * PCWSTR
interface ID3D12Device ID3D12Device
interface IDXGISwapChain IDXGISwapChain
struct D3D12_ROOT_DESCRIPTOR1 D3D12_ROOT_DESCRIPTOR1
@ D3D12_DSV_DIMENSION_UNKNOWN
@ D3D12_DSV_DIMENSION_TEXTURE2DMSARRAY
@ D3D12_DSV_DIMENSION_TEXTURE1D
@ D3D12_DSV_DIMENSION_TEXTURE2DMS
@ D3D12_DSV_DIMENSION_TEXTURE2D
@ D3D12_DSV_DIMENSION_TEXTURE1DARRAY
@ D3D12_DSV_DIMENSION_TEXTURE2DARRAY
struct D3D12_ROOT_DESCRIPTOR_TABLE1 D3D12_ROOT_DESCRIPTOR_TABLE1
struct D3D12_TEX2D_DSV D3D12_TEX2D_DSV
#define STDMETHODCALLTYPE
interface ID3D12DeviceChild ID3D12DeviceChild
@ D3D12_CLEAR_FLAG_STENCIL
struct D3D12_TEX2DMS_ARRAY_DSV D3D12_TEX2DMS_ARRAY_DSV
struct D3D12_DESCRIPTOR_RANGE D3D12_DESCRIPTOR_RANGE
struct _RPC_SYNTAX_IDENTIFIER * PRPC_SYNTAX_IDENTIFIER
interface ID3D12Heap ID3D12Heap
struct D3D12_SO_DECLARATION_ENTRY D3D12_SO_DECLARATION_ENTRY
EXTERN_C const IID IID_ID3D12Debug
#define _Return_type_success_(expr)
D3D12_DESCRIPTOR_HEAP_FLAGS
@ D3D12_DESCRIPTOR_HEAP_FLAG_NONE
@ D3D12_DESCRIPTOR_HEAP_FLAG_SHADER_VISIBLE
interface ID3D12Resource ID3D12Resource
@ D3D12_QUERY_TYPE_OCCLUSION
@ D3D12_QUERY_TYPE_SO_STATISTICS_STREAM3
@ D3D12_QUERY_TYPE_SO_STATISTICS_STREAM2
@ D3D12_QUERY_TYPE_BINARY_OCCLUSION
@ D3D12_QUERY_TYPE_TIMESTAMP
@ D3D12_QUERY_TYPE_SO_STATISTICS_STREAM0
@ D3D12_QUERY_TYPE_SO_STATISTICS_STREAM1
@ D3D12_QUERY_TYPE_PIPELINE_STATISTICS
#define D3D12_VIEWPORT_AND_SCISSORRECT_OBJECT_COUNT_PER_PIPELINE
@ D3D12_BUFFER_UAV_FLAG_NONE
@ D3D12_BUFFER_UAV_FLAG_RAW
struct D3D12_DEPTH_STENCIL_VALUE D3D12_DEPTH_STENCIL_VALUE
#define _Post_satisfies_(expr)
struct D3D12_COMPUTE_PIPELINE_STATE_DESC D3D12_COMPUTE_PIPELINE_STATE_DESC
struct D3D12_COMMAND_SIGNATURE_DESC D3D12_COMMAND_SIGNATURE_DESC
_Null_terminated_ CHAR * PSTR
@ D3D12_BUFFER_SRV_FLAG_NONE
@ D3D12_BUFFER_SRV_FLAG_RAW
struct D3D12_BLEND_DESC D3D12_BLEND_DESC
struct ID3D12FenceVtbl ID3D12FenceVtbl
RPC_BINDING_HANDLE handle_t
interface ID3DInclude ID3DInclude
HRESULT(WINAPI * PFN_D3D12_GET_DEBUG_INTERFACE)(_In_ REFIID, _COM_Outptr_opt_ void **)
struct ID3D12GraphicsCommandListVtbl ID3D12GraphicsCommandListVtbl
struct D3D12_DESCRIPTOR_RANGE1 D3D12_DESCRIPTOR_RANGE1
@ D3D12_TEXTURE_COPY_TYPE_PLACED_FOOTPRINT
@ D3D12_TEXTURE_COPY_TYPE_SUBRESOURCE_INDEX
D3D12_ROOT_SIGNATURE_FLAGS
@ D3D12_ROOT_SIGNATURE_FLAG_DENY_HULL_SHADER_ROOT_ACCESS
@ D3D12_ROOT_SIGNATURE_FLAG_ALLOW_STREAM_OUTPUT
@ D3D12_ROOT_SIGNATURE_FLAG_NONE
@ D3D12_ROOT_SIGNATURE_FLAG_ALLOW_INPUT_ASSEMBLER_INPUT_LAYOUT
@ D3D12_ROOT_SIGNATURE_FLAG_DENY_GEOMETRY_SHADER_ROOT_ACCESS
@ D3D12_ROOT_SIGNATURE_FLAG_DENY_VERTEX_SHADER_ROOT_ACCESS
@ D3D12_ROOT_SIGNATURE_FLAG_DENY_PIXEL_SHADER_ROOT_ACCESS
@ D3D12_ROOT_SIGNATURE_FLAG_DENY_DOMAIN_SHADER_ROOT_ACCESS
struct _SECURITY_ATTRIBUTES * LPSECURITY_ATTRIBUTES
#define _Inout_updates_bytes_(size)
@ D3D12_UAV_DIMENSION_UNKNOWN
@ D3D12_UAV_DIMENSION_TEXTURE2D
@ D3D12_UAV_DIMENSION_TEXTURE1DARRAY
@ D3D12_UAV_DIMENSION_TEXTURE3D
@ D3D12_UAV_DIMENSION_TEXTURE2DARRAY
@ D3D12_UAV_DIMENSION_TEXTURE1D
@ D3D12_UAV_DIMENSION_BUFFER
union _LARGE_INTEGER LARGE_INTEGER
@ D3D12_HEAP_FLAG_ALLOW_WRITE_WATCH
@ D3D12_HEAP_FLAG_DENY_NON_RT_DS_TEXTURES
@ D3D12_HEAP_FLAG_ALLOW_DISPLAY
@ D3D12_HEAP_FLAG_DENY_RT_DS_TEXTURES
@ D3D12_HEAP_FLAG_HARDWARE_PROTECTED
@ D3D12_HEAP_FLAG_ALLOW_ONLY_RT_DS_TEXTURES
@ D3D12_HEAP_FLAG_ALLOW_ONLY_BUFFERS
@ D3D12_HEAP_FLAG_SHARED_CROSS_ADAPTER
@ D3D12_HEAP_FLAG_ALLOW_ALL_BUFFERS_AND_TEXTURES
@ D3D12_HEAP_FLAG_ALLOW_ONLY_NON_RT_DS_TEXTURES
@ D3D12_HEAP_FLAG_DENY_BUFFERS
@ D3D12_DSV_FLAG_READ_ONLY_STENCIL
@ D3D12_DSV_FLAG_READ_ONLY_DEPTH
interface ID3D12CommandSignature ID3D12CommandSignature
HRESULT(WINAPI * PFN_D3D12_CREATE_DEVICE)(_In_opt_ IUnknown *, D3D_FEATURE_LEVEL, _In_ REFIID, _COM_Outptr_opt_ void **)
#define _In_reads_opt_(size)
interface ID3D12Debug ID3D12Debug
struct ID3D12RootSignatureVtbl ID3D12RootSignatureVtbl
struct ID3D12CommandQueueVtbl ID3D12CommandQueueVtbl
struct D3D12_TILED_RESOURCE_COORDINATE D3D12_TILED_RESOURCE_COORDINATE
D3D12_DESCRIPTOR_RANGE_FLAGS
@ D3D12_DESCRIPTOR_RANGE_FLAG_DATA_STATIC
@ D3D12_DESCRIPTOR_RANGE_FLAG_NONE
@ D3D12_DESCRIPTOR_RANGE_FLAG_DATA_STATIC_WHILE_SET_AT_EXECUTE
@ D3D12_DESCRIPTOR_RANGE_FLAG_DATA_VOLATILE
@ D3D12_DESCRIPTOR_RANGE_FLAG_DESCRIPTORS_VOLATILE
@ D3D12_FILTER_MIN_POINT_MAG_MIP_LINEAR
@ D3D12_FILTER_COMPARISON_MIN_MAG_MIP_LINEAR
@ D3D12_FILTER_COMPARISON_MIN_LINEAR_MAG_POINT_MIP_LINEAR
@ D3D12_FILTER_COMPARISON_MIN_MAG_MIP_POINT
@ D3D12_FILTER_MAXIMUM_MIN_POINT_MAG_LINEAR_MIP_POINT
@ D3D12_FILTER_MINIMUM_MIN_MAG_POINT_MIP_LINEAR
@ D3D12_FILTER_MINIMUM_MIN_LINEAR_MAG_POINT_MIP_LINEAR
@ D3D12_FILTER_MIN_LINEAR_MAG_MIP_POINT
@ D3D12_FILTER_MINIMUM_MIN_LINEAR_MAG_MIP_POINT
@ D3D12_FILTER_MINIMUM_MIN_MAG_MIP_POINT
@ D3D12_FILTER_COMPARISON_MIN_LINEAR_MAG_MIP_POINT
@ D3D12_FILTER_COMPARISON_MIN_POINT_MAG_MIP_LINEAR
@ D3D12_FILTER_MINIMUM_ANISOTROPIC
@ D3D12_FILTER_MIN_MAG_POINT_MIP_LINEAR
@ D3D12_FILTER_MINIMUM_MIN_POINT_MAG_LINEAR_MIP_POINT
@ D3D12_FILTER_COMPARISON_MIN_POINT_MAG_LINEAR_MIP_POINT
@ D3D12_FILTER_MAXIMUM_MIN_MAG_MIP_POINT
@ D3D12_FILTER_COMPARISON_MIN_MAG_POINT_MIP_LINEAR
@ D3D12_FILTER_MIN_LINEAR_MAG_POINT_MIP_LINEAR
@ D3D12_FILTER_MAXIMUM_MIN_POINT_MAG_MIP_LINEAR
@ D3D12_FILTER_MINIMUM_MIN_POINT_MAG_MIP_LINEAR
@ D3D12_FILTER_MAXIMUM_MIN_MAG_POINT_MIP_LINEAR
@ D3D12_FILTER_MAXIMUM_MIN_LINEAR_MAG_MIP_POINT
@ D3D12_FILTER_MAXIMUM_MIN_LINEAR_MAG_POINT_MIP_LINEAR
@ D3D12_FILTER_MAXIMUM_MIN_MAG_MIP_LINEAR
@ D3D12_FILTER_MAXIMUM_MIN_MAG_LINEAR_MIP_POINT
@ D3D12_FILTER_COMPARISON_ANISOTROPIC
@ D3D12_FILTER_MINIMUM_MIN_MAG_MIP_LINEAR
@ D3D12_FILTER_COMPARISON_MIN_MAG_LINEAR_MIP_POINT
@ D3D12_FILTER_MIN_MAG_LINEAR_MIP_POINT
@ D3D12_FILTER_MIN_POINT_MAG_LINEAR_MIP_POINT
@ D3D12_FILTER_MINIMUM_MIN_MAG_LINEAR_MIP_POINT
@ D3D12_FILTER_MAXIMUM_ANISOTROPIC
@ D3D12_FILTER_ANISOTROPIC
@ D3D12_FILTER_MIN_MAG_MIP_POINT
@ D3D12_FILTER_MIN_MAG_MIP_LINEAR
HRESULT(WINAPI * PFN_CREATEDXGIFACORY1)(REFIID riid, _COM_Outptr_ void **ppFactory)
struct D3D12_TEX2D_ARRAY_SRV D3D12_TEX2D_ARRAY_SRV
struct D3D12_CACHED_PIPELINE_STATE D3D12_CACHED_PIPELINE_STATE
struct D3D12_TEX1D_ARRAY_UAV D3D12_TEX1D_ARRAY_UAV
@ DXGI_ADAPTER_FLAG_REMOTE
@ DXGI_ADAPTER_FLAG_SOFTWARE
@ DXGI_ADAPTER_FLAG_FORCE_DWORD
struct _RPC_MESSAGE RPC_MESSAGE
struct IUnknownVtbl IUnknownVtbl
interface ID3D12PipelineLibrary ID3D12PipelineLibrary
struct D3D12_TILE_REGION_SIZE D3D12_TILE_REGION_SIZE
interface ID3D12Device1 ID3D12Device1
HRESULT(WINAPI * PFN_D3DCOMPILE)(_In_reads_bytes_(SrcDataSize) LPCVOID pSrcData, _In_ SIZE_T SrcDataSize, _In_opt_ LPCSTR pSourceName, _In_reads_opt_(_Inexpressible_(pDefines->Name !=nullptr)) CONST D3D_SHADER_MACRO *pDefines, _In_opt_ ID3DInclude *pInclude, _In_opt_ LPCSTR pEntrypoint, _In_ LPCSTR pTarget, _In_ UINT Flags1, _In_ UINT Flags2, _Out_ ID3DBlob **ppCode, _Always_(_Outptr_opt_result_maybenull_) ID3DBlob **ppErrorMsgs)
@ D3D12_CPU_PAGE_PROPERTY_UNKNOWN
@ D3D12_CPU_PAGE_PROPERTY_WRITE_BACK
@ D3D12_CPU_PAGE_PROPERTY_WRITE_COMBINE
@ D3D12_CPU_PAGE_PROPERTY_NOT_AVAILABLE
#define _In_reads_bytes_opt_(size)
@ D3D12_TEXTURE_LAYOUT_UNKNOWN
@ D3D12_TEXTURE_LAYOUT_ROW_MAJOR
@ D3D12_TEXTURE_LAYOUT_64KB_STANDARD_SWIZZLE
@ D3D12_TEXTURE_LAYOUT_64KB_UNDEFINED_SWIZZLE
interface ID3D12VersionedRootSignatureDeserializer ID3D12VersionedRootSignatureDeserializer
EXTERN_C const IID IID_ID3D12CommandList
struct D3D12_VERTEX_BUFFER_VIEW D3D12_VERTEX_BUFFER_VIEW
interface IUnknown IUnknown
@ D3D12_SRV_DIMENSION_TEXTURE2DMSARRAY
@ D3D12_SRV_DIMENSION_TEXTURECUBE
@ D3D12_SRV_DIMENSION_TEXTURE3D
@ D3D12_SRV_DIMENSION_TEXTURECUBEARRAY
@ D3D12_SRV_DIMENSION_TEXTURE2DARRAY
@ D3D12_SRV_DIMENSION_TEXTURE2DMS
@ D3D12_SRV_DIMENSION_BUFFER
@ D3D12_SRV_DIMENSION_TEXTURE1D
@ D3D12_SRV_DIMENSION_TEXTURE2D
@ D3D12_SRV_DIMENSION_TEXTURE1DARRAY
@ D3D12_SRV_DIMENSION_UNKNOWN
struct D3D12_DEPTH_STENCILOP_DESC D3D12_DEPTH_STENCILOP_DESC
@ D3D12_STENCIL_OP_INVERT
@ D3D12_STENCIL_OP_REPLACE
@ D3D12_STENCIL_OP_INCR_SAT
@ D3D12_STENCIL_OP_DECR_SAT
struct IDXGIFactory1Vtbl IDXGIFactory1Vtbl
EXTERN_C const IID IID_ID3D12Device
EXTERN_C const IID IID_ID3D12QueryHeap
struct IDXGIAdapter1Vtbl IDXGIAdapter1Vtbl
EXTERN_C const IID IID_IDXGIAdapter1
D3D12_INDIRECT_ARGUMENT_TYPE
@ D3D12_INDIRECT_ARGUMENT_TYPE_VERTEX_BUFFER_VIEW
@ D3D12_INDIRECT_ARGUMENT_TYPE_SHADER_RESOURCE_VIEW
@ D3D12_INDIRECT_ARGUMENT_TYPE_DISPATCH
@ D3D12_INDIRECT_ARGUMENT_TYPE_INDEX_BUFFER_VIEW
@ D3D12_INDIRECT_ARGUMENT_TYPE_DRAW
@ D3D12_INDIRECT_ARGUMENT_TYPE_UNORDERED_ACCESS_VIEW
@ D3D12_INDIRECT_ARGUMENT_TYPE_CONSTANT
@ D3D12_INDIRECT_ARGUMENT_TYPE_DRAW_INDEXED
@ D3D12_INDIRECT_ARGUMENT_TYPE_CONSTANT_BUFFER_VIEW
#define D3D12_REQ_SUBRESOURCES
@ D3D12_BLEND_OP_SUBTRACT
@ D3D12_BLEND_OP_REV_SUBTRACT
struct D3D12_TEX2D_ARRAY_UAV D3D12_TEX2D_ARRAY_UAV
struct DXGI_ADAPTER_DESC1 DXGI_ADAPTER_DESC1
struct ID3D12PipelineStateVtbl ID3D12PipelineStateVtbl
struct D3D12_DEPTH_STENCIL_VIEW_DESC D3D12_DEPTH_STENCIL_VIEW_DESC
struct D3D12_TEX1D_DSV D3D12_TEX1D_DSV
struct D3D12_STREAM_OUTPUT_BUFFER_VIEW D3D12_STREAM_OUTPUT_BUFFER_VIEW
D3D12_ROOT_PARAMETER_TYPE
@ D3D12_ROOT_PARAMETER_TYPE_DESCRIPTOR_TABLE
@ D3D12_ROOT_PARAMETER_TYPE_SRV
@ D3D12_ROOT_PARAMETER_TYPE_UAV
@ D3D12_ROOT_PARAMETER_TYPE_32BIT_CONSTANTS
@ D3D12_ROOT_PARAMETER_TYPE_CBV
struct D3D12_INPUT_ELEMENT_DESC D3D12_INPUT_ELEMENT_DESC
struct D3D12_STREAM_OUTPUT_DESC D3D12_STREAM_OUTPUT_DESC
struct D3D12_STATIC_SAMPLER_DESC D3D12_STATIC_SAMPLER_DESC
struct D3D12_VERSIONED_ROOT_SIGNATURE_DESC D3D12_VERSIONED_ROOT_SIGNATURE_DESC
struct ID3D12CommandAllocatorVtbl ID3D12CommandAllocatorVtbl
_Null_terminated_ CONST WCHAR * LPCWSTR
struct D3D12_RESOURCE_BARRIER D3D12_RESOURCE_BARRIER
@ D3D12_QUERY_HEAP_TYPE_TIMESTAMP
@ D3D12_QUERY_HEAP_TYPE_SO_STATISTICS
@ D3D12_QUERY_HEAP_TYPE_PIPELINE_STATISTICS
@ D3D12_QUERY_HEAP_TYPE_OCCLUSION
struct DXGI_SWAP_CHAIN_DESC DXGI_SWAP_CHAIN_DESC
struct D3D12_RENDER_TARGET_BLEND_DESC D3D12_RENDER_TARGET_BLEND_DESC
struct D3D12_DEPTH_STENCIL_DESC D3D12_DEPTH_STENCIL_DESC
struct D3D12_TEX2D_ARRAY_RTV D3D12_TEX2D_ARRAY_RTV
interface ID3D12RootSignatureDeserializer ID3D12RootSignatureDeserializer
interface ID3D12Fence ID3D12Fence
struct D3D12_SUBRESOURCE_TILING D3D12_SUBRESOURCE_TILING
D3D12_RESOURCE_BARRIER_TYPE
@ D3D12_RESOURCE_BARRIER_TYPE_UAV
@ D3D12_RESOURCE_BARRIER_TYPE_TRANSITION
@ D3D12_RESOURCE_BARRIER_TYPE_ALIASING
enum _D3D_INCLUDE_TYPE D3D_INCLUDE_TYPE
struct D3D12_TEX2DMS_DSV D3D12_TEX2DMS_DSV
interface IDXGIObject IDXGIObject
struct D3D12_TEXTURE_COPY_LOCATION D3D12_TEXTURE_COPY_LOCATION
interface ID3D10Blob * LPD3D10BLOB
struct D3D12_TEX2DMS_RTV D3D12_TEX2DMS_RTV
struct D3D12_BUFFER_SRV D3D12_BUFFER_SRV
struct D3D12_BUFFER_UAV D3D12_BUFFER_UAV
EXTERN_C const IID IID_IDXGIFactory1
unsigned __int64 * PUINT64
@ D3D12_TILE_COPY_FLAG_NONE
@ D3D12_TILE_COPY_FLAG_SWIZZLED_TILED_RESOURCE_TO_LINEAR_BUFFER
@ D3D12_TILE_COPY_FLAG_NO_HAZARD
@ D3D12_TILE_COPY_FLAG_LINEAR_BUFFER_TO_SWIZZLED_TILED_RESOURCE
D3D12_DESCRIPTOR_HEAP_TYPE
@ D3D12_DESCRIPTOR_HEAP_TYPE_CBV_SRV_UAV
@ D3D12_DESCRIPTOR_HEAP_TYPE_NUM_TYPES
@ D3D12_DESCRIPTOR_HEAP_TYPE_SAMPLER
@ D3D12_DESCRIPTOR_HEAP_TYPE_RTV
@ D3D12_DESCRIPTOR_HEAP_TYPE_DSV
interface ID3D12Tools ID3D12Tools
struct ID3D12DescriptorHeapVtbl ID3D12DescriptorHeapVtbl
struct _D3D_SHADER_MACRO D3D_SHADER_MACRO
@ D3D12_COMPARISON_FUNC_GREATER_EQUAL
@ D3D12_COMPARISON_FUNC_ALWAYS
@ D3D12_COMPARISON_FUNC_NOT_EQUAL
@ D3D12_COMPARISON_FUNC_LESS_EQUAL
@ D3D12_COMPARISON_FUNC_LESS
@ D3D12_COMPARISON_FUNC_NEVER
@ D3D12_COMPARISON_FUNC_EQUAL
@ D3D12_COMPARISON_FUNC_GREATER
@ D3D12_SHADER_VISIBILITY_DOMAIN
@ D3D12_SHADER_VISIBILITY_ALL
@ D3D12_SHADER_VISIBILITY_GEOMETRY
@ D3D12_SHADER_VISIBILITY_VERTEX
@ D3D12_SHADER_VISIBILITY_HULL
@ D3D12_SHADER_VISIBILITY_PIXEL
struct D3D12_RANGE D3D12_RANGE
struct D3D12_TEX2D_ARRAY_DSV D3D12_TEX2D_ARRAY_DSV
interface IRpcStubBuffer IRpcStubBuffer
D3D_PRIMITIVE_TOPOLOGY D3D12_PRIMITIVE_TOPOLOGY
D3D12_INDEX_BUFFER_STRIP_CUT_VALUE
@ D3D12_INDEX_BUFFER_STRIP_CUT_VALUE_DISABLED
@ D3D12_INDEX_BUFFER_STRIP_CUT_VALUE_0xFFFF
@ D3D12_INDEX_BUFFER_STRIP_CUT_VALUE_0xFFFFFFFF
#define _Post_equal_to_(e)
struct D3D12_TEX1D_UAV D3D12_TEX1D_UAV
struct D3D12_TILE_SHAPE D3D12_TILE_SHAPE
struct D3D12_COMMAND_QUEUE_DESC D3D12_COMMAND_QUEUE_DESC
struct D3D12_RASTERIZER_DESC D3D12_RASTERIZER_DESC
struct ID3D10BlobVtbl ID3D10BlobVtbl
struct D3D12_PLACED_SUBRESOURCE_FOOTPRINT D3D12_PLACED_SUBRESOURCE_FOOTPRINT
struct D3D12_HEAP_DESC D3D12_HEAP_DESC
@ D3D12_BLEND_INV_SRC_COLOR
@ D3D12_BLEND_INV_SRC1_ALPHA
@ D3D12_BLEND_INV_BLEND_FACTOR
@ D3D12_BLEND_BLEND_FACTOR
@ D3D12_BLEND_INV_DEST_COLOR
@ D3D12_BLEND_INV_SRC1_COLOR
@ D3D12_BLEND_INV_DEST_ALPHA
@ D3D12_BLEND_INV_SRC_ALPHA
@ D3D12_BLEND_SRC_ALPHA_SAT
WINBASEAPI DWORD WINAPI WaitForSingleObject(_In_ HANDLE hHandle, _In_ DWORD dwMilliseconds)
struct D3D12_CONSTANT_BUFFER_VIEW_DESC D3D12_CONSTANT_BUFFER_VIEW_DESC
struct D3D12_ROOT_PARAMETER1 D3D12_ROOT_PARAMETER1
#define DECLARE_HANDLE(name)
#define _In_range_(lb, ub)
struct ID3D12QueryHeapVtbl ID3D12QueryHeapVtbl
#define STDMETHOD(method)
D3D12_ROOT_DESCRIPTOR_FLAGS
@ D3D12_ROOT_DESCRIPTOR_FLAG_DATA_STATIC_WHILE_SET_AT_EXECUTE
@ D3D12_ROOT_DESCRIPTOR_FLAG_NONE
@ D3D12_ROOT_DESCRIPTOR_FLAG_DATA_STATIC
@ D3D12_ROOT_DESCRIPTOR_FLAG_DATA_VOLATILE
WINBASEAPI BOOL WINAPI CloseHandle(_In_ _Post_ptr_invalid_ HANDLE hObject)
struct ID3D12DeviceChildVtbl ID3D12DeviceChildVtbl
struct ID3D12DeviceVtbl ID3D12DeviceVtbl
interface ID3D12RootSignature ID3D12RootSignature
@ D3D10_PRIMITIVE_TOPOLOGY_LINELIST_ADJ
@ D3D11_PRIMITIVE_TOPOLOGY_18_CONTROL_POINT_PATCHLIST
@ D3D11_PRIMITIVE_TOPOLOGY_LINESTRIP
@ D3D11_PRIMITIVE_TOPOLOGY_30_CONTROL_POINT_PATCHLIST
@ D3D_PRIMITIVE_TOPOLOGY_29_CONTROL_POINT_PATCHLIST
@ D3D10_PRIMITIVE_TOPOLOGY_LINESTRIP
@ D3D11_PRIMITIVE_TOPOLOGY_31_CONTROL_POINT_PATCHLIST
@ D3D11_PRIMITIVE_TOPOLOGY_29_CONTROL_POINT_PATCHLIST
@ D3D11_PRIMITIVE_TOPOLOGY_32_CONTROL_POINT_PATCHLIST
@ D3D11_PRIMITIVE_TOPOLOGY_23_CONTROL_POINT_PATCHLIST
@ D3D_PRIMITIVE_TOPOLOGY_15_CONTROL_POINT_PATCHLIST
@ D3D_PRIMITIVE_TOPOLOGY_22_CONTROL_POINT_PATCHLIST
@ D3D_PRIMITIVE_TOPOLOGY_31_CONTROL_POINT_PATCHLIST
@ D3D11_PRIMITIVE_TOPOLOGY_1_CONTROL_POINT_PATCHLIST
@ D3D_PRIMITIVE_TOPOLOGY_TRIANGLELIST
@ D3D11_PRIMITIVE_TOPOLOGY_LINELIST_ADJ
@ D3D_PRIMITIVE_TOPOLOGY_4_CONTROL_POINT_PATCHLIST
@ D3D11_PRIMITIVE_TOPOLOGY_LINESTRIP_ADJ
@ D3D_PRIMITIVE_TOPOLOGY_14_CONTROL_POINT_PATCHLIST
@ D3D_PRIMITIVE_TOPOLOGY_16_CONTROL_POINT_PATCHLIST
@ D3D10_PRIMITIVE_TOPOLOGY_UNDEFINED
@ D3D_PRIMITIVE_TOPOLOGY_5_CONTROL_POINT_PATCHLIST
@ D3D10_PRIMITIVE_TOPOLOGY_LINESTRIP_ADJ
@ D3D_PRIMITIVE_TOPOLOGY_6_CONTROL_POINT_PATCHLIST
@ D3D11_PRIMITIVE_TOPOLOGY_17_CONTROL_POINT_PATCHLIST
@ D3D_PRIMITIVE_TOPOLOGY_21_CONTROL_POINT_PATCHLIST
@ D3D11_PRIMITIVE_TOPOLOGY_UNDEFINED
@ D3D_PRIMITIVE_TOPOLOGY_LINELIST_ADJ
@ D3D11_PRIMITIVE_TOPOLOGY_TRIANGLELIST
@ D3D_PRIMITIVE_TOPOLOGY_8_CONTROL_POINT_PATCHLIST
@ D3D10_PRIMITIVE_TOPOLOGY_POINTLIST
@ D3D_PRIMITIVE_TOPOLOGY_TRIANGLESTRIP
@ D3D_PRIMITIVE_TOPOLOGY_11_CONTROL_POINT_PATCHLIST
@ D3D11_PRIMITIVE_TOPOLOGY_POINTLIST
@ D3D_PRIMITIVE_TOPOLOGY_30_CONTROL_POINT_PATCHLIST
@ D3D_PRIMITIVE_TOPOLOGY_UNDEFINED
@ D3D10_PRIMITIVE_TOPOLOGY_TRIANGLESTRIP_ADJ
@ D3D11_PRIMITIVE_TOPOLOGY_TRIANGLESTRIP
@ D3D_PRIMITIVE_TOPOLOGY_2_CONTROL_POINT_PATCHLIST
@ D3D_PRIMITIVE_TOPOLOGY_3_CONTROL_POINT_PATCHLIST
@ D3D10_PRIMITIVE_TOPOLOGY_LINELIST
@ D3D11_PRIMITIVE_TOPOLOGY_LINELIST
@ D3D_PRIMITIVE_TOPOLOGY_24_CONTROL_POINT_PATCHLIST
@ D3D_PRIMITIVE_TOPOLOGY_12_CONTROL_POINT_PATCHLIST
@ D3D10_PRIMITIVE_TOPOLOGY_TRIANGLELIST
@ D3D11_PRIMITIVE_TOPOLOGY_13_CONTROL_POINT_PATCHLIST
@ D3D_PRIMITIVE_TOPOLOGY_9_CONTROL_POINT_PATCHLIST
@ D3D11_PRIMITIVE_TOPOLOGY_24_CONTROL_POINT_PATCHLIST
@ D3D11_PRIMITIVE_TOPOLOGY_5_CONTROL_POINT_PATCHLIST
@ D3D11_PRIMITIVE_TOPOLOGY_20_CONTROL_POINT_PATCHLIST
@ D3D_PRIMITIVE_TOPOLOGY_26_CONTROL_POINT_PATCHLIST
@ D3D_PRIMITIVE_TOPOLOGY_19_CONTROL_POINT_PATCHLIST
@ D3D11_PRIMITIVE_TOPOLOGY_25_CONTROL_POINT_PATCHLIST
@ D3D11_PRIMITIVE_TOPOLOGY_22_CONTROL_POINT_PATCHLIST
@ D3D11_PRIMITIVE_TOPOLOGY_8_CONTROL_POINT_PATCHLIST
@ D3D10_PRIMITIVE_TOPOLOGY_TRIANGLESTRIP
@ D3D_PRIMITIVE_TOPOLOGY_TRIANGLESTRIP_ADJ
@ D3D11_PRIMITIVE_TOPOLOGY_2_CONTROL_POINT_PATCHLIST
@ D3D11_PRIMITIVE_TOPOLOGY_3_CONTROL_POINT_PATCHLIST
@ D3D_PRIMITIVE_TOPOLOGY_20_CONTROL_POINT_PATCHLIST
@ D3D_PRIMITIVE_TOPOLOGY_27_CONTROL_POINT_PATCHLIST
@ D3D_PRIMITIVE_TOPOLOGY_LINESTRIP
@ D3D11_PRIMITIVE_TOPOLOGY_11_CONTROL_POINT_PATCHLIST
@ D3D_PRIMITIVE_TOPOLOGY_LINELIST
@ D3D_PRIMITIVE_TOPOLOGY_17_CONTROL_POINT_PATCHLIST
@ D3D_PRIMITIVE_TOPOLOGY_10_CONTROL_POINT_PATCHLIST
@ D3D11_PRIMITIVE_TOPOLOGY_21_CONTROL_POINT_PATCHLIST
@ D3D_PRIMITIVE_TOPOLOGY_TRIANGLELIST_ADJ
@ D3D11_PRIMITIVE_TOPOLOGY_12_CONTROL_POINT_PATCHLIST
@ D3D11_PRIMITIVE_TOPOLOGY_19_CONTROL_POINT_PATCHLIST
@ D3D_PRIMITIVE_TOPOLOGY_32_CONTROL_POINT_PATCHLIST
@ D3D11_PRIMITIVE_TOPOLOGY_26_CONTROL_POINT_PATCHLIST
@ D3D_PRIMITIVE_TOPOLOGY_28_CONTROL_POINT_PATCHLIST
@ D3D11_PRIMITIVE_TOPOLOGY_TRIANGLELIST_ADJ
@ D3D_PRIMITIVE_TOPOLOGY_LINESTRIP_ADJ
@ D3D10_PRIMITIVE_TOPOLOGY_TRIANGLELIST_ADJ
@ D3D11_PRIMITIVE_TOPOLOGY_7_CONTROL_POINT_PATCHLIST
@ D3D11_PRIMITIVE_TOPOLOGY_TRIANGLESTRIP_ADJ
@ D3D11_PRIMITIVE_TOPOLOGY_9_CONTROL_POINT_PATCHLIST
@ D3D_PRIMITIVE_TOPOLOGY_POINTLIST
@ D3D11_PRIMITIVE_TOPOLOGY_28_CONTROL_POINT_PATCHLIST
@ D3D_PRIMITIVE_TOPOLOGY_23_CONTROL_POINT_PATCHLIST
@ D3D_PRIMITIVE_TOPOLOGY_1_CONTROL_POINT_PATCHLIST
@ D3D11_PRIMITIVE_TOPOLOGY_4_CONTROL_POINT_PATCHLIST
@ D3D11_PRIMITIVE_TOPOLOGY_10_CONTROL_POINT_PATCHLIST
@ D3D11_PRIMITIVE_TOPOLOGY_6_CONTROL_POINT_PATCHLIST
@ D3D11_PRIMITIVE_TOPOLOGY_14_CONTROL_POINT_PATCHLIST
@ D3D_PRIMITIVE_TOPOLOGY_13_CONTROL_POINT_PATCHLIST
@ D3D_PRIMITIVE_TOPOLOGY_7_CONTROL_POINT_PATCHLIST
@ D3D11_PRIMITIVE_TOPOLOGY_16_CONTROL_POINT_PATCHLIST
@ D3D11_PRIMITIVE_TOPOLOGY_15_CONTROL_POINT_PATCHLIST
@ D3D11_PRIMITIVE_TOPOLOGY_27_CONTROL_POINT_PATCHLIST
@ D3D_PRIMITIVE_TOPOLOGY_25_CONTROL_POINT_PATCHLIST
@ D3D_PRIMITIVE_TOPOLOGY_18_CONTROL_POINT_PATCHLIST
interface IRpcChannelBuffer IRpcChannelBuffer
struct D3D12_ROOT_CONSTANTS D3D12_ROOT_CONSTANTS
#define _Out_writes_bytes_opt_(size)
struct _RPC_SYNTAX_IDENTIFIER RPC_SYNTAX_IDENTIFIER
interface ID3D12PipelineState ID3D12PipelineState
@ D3D12_HEAP_TYPE_DEFAULT
@ D3D12_HEAP_TYPE_READBACK
struct ID3D12DebugVtbl ID3D12DebugVtbl
@ D3D12_FENCE_FLAG_SHARED_CROSS_ADAPTER
@ D3D12_FENCE_FLAG_SHARED
EXTERN_C const IID IID_IDXGIFactory
interface ID3D12CommandQueue ID3D12CommandQueue
D3D12_PIPELINE_STATE_FLAGS
@ D3D12_PIPELINE_STATE_FLAG_NONE
@ D3D12_PIPELINE_STATE_FLAG_TOOL_DEBUG
D3D12_COMMAND_QUEUE_FLAGS
@ D3D12_COMMAND_QUEUE_FLAG_NONE
@ D3D12_COMMAND_QUEUE_FLAG_DISABLE_GPU_TIMEOUT
@ D3D12_FEATURE_FORMAT_SUPPORT
@ D3D12_FEATURE_FEATURE_LEVELS
@ D3D12_FEATURE_FORMAT_INFO
@ D3D12_FEATURE_D3D12_OPTIONS
@ D3D12_FEATURE_D3D12_OPTIONS2
@ D3D12_FEATURE_SHADER_CACHE
@ D3D12_FEATURE_SHADER_MODEL
@ D3D12_FEATURE_ARCHITECTURE
@ D3D12_FEATURE_COMMAND_QUEUE_PRIORITY
@ D3D12_FEATURE_ARCHITECTURE1
@ D3D12_FEATURE_MULTISAMPLE_QUALITY_LEVELS
@ D3D12_FEATURE_GPU_VIRTUAL_ADDRESS_SUPPORT
@ D3D12_FEATURE_ROOT_SIGNATURE
@ D3D12_FEATURE_D3D12_OPTIONS1
interface IDXGIOutput IDXGIOutput
struct D3D12_ROOT_DESCRIPTOR D3D12_ROOT_DESCRIPTOR
UINT64 D3D12_GPU_VIRTUAL_ADDRESS
struct D3D12_ROOT_SIGNATURE_DESC D3D12_ROOT_SIGNATURE_DESC
unsigned __INT64_TYPE__ uint64_t
signed __INT64_TYPE__ int64_t
signed __INT32_TYPE__ int32_t
unsigned __INT32_TYPE__ uint32_t
unsigned int BufferLength
void __RPC_FAR * ImportContext
unsigned long DataRepresentation
PRPC_SYNTAX_IDENTIFIER TransferSyntax
void __RPC_FAR * RpcInterfaceInformation
void __RPC_FAR * ReservedForRuntime
RPC_MGR_EPV __RPC_FAR * ManagerEpv
RPC_BINDING_HANDLE Handle
RPC_VERSION SyntaxVersion
unsigned short MajorVersion
unsigned short MinorVersion
LPVOID lpSecurityDescriptor
BOOL AlphaToCoverageEnable
BOOL IndependentBlendEnable
D3D12_RENDER_TARGET_BLEND_DESC RenderTarget[8]
D3D12_BUFFER_SRV_FLAGS Flags
D3D12_BUFFER_UAV_FLAGS Flags
UINT64 CounterOffsetInBytes
_Field_size_bytes_full_(CachedBlobSizeInBytes) const void *pCachedBlob
SIZE_T CachedBlobSizeInBytes
D3D12_DEPTH_STENCIL_VALUE DepthStencil
D3D12_COMMAND_QUEUE_FLAGS Flags
D3D12_COMMAND_LIST_TYPE Type
_Field_size_full_(NumArgumentDescs) const D3D12_INDIRECT_ARGUMENT_DESC *pArgumentDescs
ID3D12RootSignature * pRootSignature
D3D12_CACHED_PIPELINE_STATE CachedPSO
D3D12_PIPELINE_STATE_FLAGS Flags
D3D12_GPU_VIRTUAL_ADDRESS BufferLocation
D3D12_DEPTH_STENCILOP_DESC FrontFace
D3D12_DEPTH_STENCILOP_DESC BackFace
D3D12_COMPARISON_FUNC DepthFunc
D3D12_DEPTH_WRITE_MASK DepthWriteMask
D3D12_TEX2DMS_DSV Texture2DMS
D3D12_TEX2DMS_ARRAY_DSV Texture2DMSArray
D3D12_TEX2D_ARRAY_DSV Texture2DArray
D3D12_TEX2D_DSV Texture2D
D3D12_TEX1D_DSV Texture1D
D3D12_DSV_DIMENSION ViewDimension
D3D12_TEX1D_ARRAY_DSV Texture1DArray
D3D12_STENCIL_OP StencilFailOp
D3D12_COMPARISON_FUNC StencilFunc
D3D12_STENCIL_OP StencilDepthFailOp
D3D12_STENCIL_OP StencilPassOp
D3D12_DESCRIPTOR_HEAP_TYPE Type
D3D12_DESCRIPTOR_HEAP_FLAGS Flags
D3D12_DESCRIPTOR_RANGE_TYPE RangeType
UINT OffsetInDescriptorsFromTableStart
D3D12_DESCRIPTOR_RANGE_FLAGS Flags
D3D12_DESCRIPTOR_RANGE_TYPE RangeType
UINT OffsetInDescriptorsFromTableStart
_In_reads_(NumRects) const D3D12_RECT *pRects
D3D12_INDEX_BUFFER_STRIP_CUT_VALUE IBStripCutValue
D3D12_INPUT_LAYOUT_DESC InputLayout
ID3D12RootSignature * pRootSignature
D3D12_PRIMITIVE_TOPOLOGY_TYPE PrimitiveTopologyType
DXGI_SAMPLE_DESC SampleDesc
D3D12_BLEND_DESC BlendState
D3D12_STREAM_OUTPUT_DESC StreamOutput
D3D12_DEPTH_STENCIL_DESC DepthStencilState
D3D12_PIPELINE_STATE_FLAGS Flags
DXGI_FORMAT RTVFormats[8]
D3D12_CACHED_PIPELINE_STATE CachedPSO
D3D12_RASTERIZER_DESC RasterizerState
D3D12_HEAP_PROPERTIES Properties
D3D12_CPU_PAGE_PROPERTY CPUPageProperty
D3D12_MEMORY_POOL MemoryPoolPreference
D3D12_GPU_VIRTUAL_ADDRESS BufferLocation
struct D3D12_INDIRECT_ARGUMENT_DESC::@17::@19 VertexBuffer
UINT DestOffsetIn32BitValues
D3D12_INDIRECT_ARGUMENT_TYPE Type
struct D3D12_INDIRECT_ARGUMENT_DESC::@17::@22 ShaderResourceView
struct D3D12_INDIRECT_ARGUMENT_DESC::@17::@21 ConstantBufferView
struct D3D12_INDIRECT_ARGUMENT_DESC::@17::@20 Constant
struct D3D12_INDIRECT_ARGUMENT_DESC::@17::@23 UnorderedAccessView
UINT InstanceDataStepRate
D3D12_INPUT_CLASSIFICATION InputSlotClass
_Field_size_full_(NumElements) const D3D12_INPUT_ELEMENT_DESC *pInputElementDescs
UINT NumTilesForPackedMips
UINT StartTileIndexInOverallResource
D3D12_SUBRESOURCE_FOOTPRINT Footprint
D3D12_QUERY_HEAP_TYPE Type
FLOAT SlopeScaledDepthBias
BOOL FrontCounterClockwise
BOOL AntialiasedLineEnable
D3D12_CONSERVATIVE_RASTERIZATION_MODE ConservativeRaster
D3D12_BLEND_OP BlendOpAlpha
UINT8 RenderTargetWriteMask
D3D12_BLEND SrcBlendAlpha
D3D12_BLEND DestBlendAlpha
D3D12_TEX1D_RTV Texture1D
D3D12_TEX1D_ARRAY_RTV Texture1DArray
D3D12_TEX2DMS_RTV Texture2DMS
D3D12_TEX2D_RTV Texture2D
D3D12_TEX2DMS_ARRAY_RTV Texture2DMSArray
D3D12_TEX3D_RTV Texture3D
D3D12_RTV_DIMENSION ViewDimension
D3D12_TEX2D_ARRAY_RTV Texture2DArray
ID3D12Resource * pResourceAfter
ID3D12Resource * pResourceBefore
D3D12_RESOURCE_BARRIER_FLAGS Flags
D3D12_RESOURCE_BARRIER_TYPE Type
D3D12_RESOURCE_UAV_BARRIER UAV
D3D12_RESOURCE_TRANSITION_BARRIER Transition
D3D12_RESOURCE_ALIASING_BARRIER Aliasing
D3D12_RESOURCE_DIMENSION Dimension
D3D12_TEXTURE_LAYOUT Layout
DXGI_SAMPLE_DESC SampleDesc
D3D12_RESOURCE_FLAGS Flags
D3D12_RESOURCE_STATES StateBefore
ID3D12Resource * pResource
D3D12_RESOURCE_STATES StateAfter
ID3D12Resource * pResource
D3D12_ROOT_DESCRIPTOR_FLAGS Flags
_Field_size_full_(NumDescriptorRanges) const D3D12_DESCRIPTOR_RANGE1 *pDescriptorRanges
_Field_size_full_(NumDescriptorRanges) const D3D12_DESCRIPTOR_RANGE *pDescriptorRanges
D3D12_SHADER_VISIBILITY ShaderVisibility
D3D12_ROOT_DESCRIPTOR1 Descriptor
D3D12_ROOT_CONSTANTS Constants
D3D12_ROOT_DESCRIPTOR_TABLE1 DescriptorTable
D3D12_ROOT_PARAMETER_TYPE ParameterType
D3D12_ROOT_CONSTANTS Constants
D3D12_SHADER_VISIBILITY ShaderVisibility
D3D12_ROOT_PARAMETER_TYPE ParameterType
D3D12_ROOT_DESCRIPTOR Descriptor
D3D12_ROOT_DESCRIPTOR_TABLE DescriptorTable
_Field_size_full_(NumParameters) const D3D12_ROOT_PARAMETER1 *pParameters
_Field_size_full_(NumStaticSamplers) const D3D12_STATIC_SAMPLER_DESC *pStaticSamplers
D3D12_ROOT_SIGNATURE_FLAGS Flags
_Field_size_full_(NumStaticSamplers) const D3D12_STATIC_SAMPLER_DESC *pStaticSamplers
_Field_size_full_(NumParameters) const D3D12_ROOT_PARAMETER *pParameters
D3D12_ROOT_SIGNATURE_FLAGS Flags
D3D12_COMPARISON_FUNC ComparisonFunc
D3D12_TEXTURE_ADDRESS_MODE AddressV
D3D12_TEXTURE_ADDRESS_MODE AddressU
D3D12_TEXTURE_ADDRESS_MODE AddressW
_Field_size_bytes_full_(BytecodeLength) const void *pShaderBytecode
D3D12_SRV_DIMENSION ViewDimension
D3D12_TEXCUBE_SRV TextureCube
D3D12_TEX3D_SRV Texture3D
D3D12_TEX1D_ARRAY_SRV Texture1DArray
D3D12_TEX2DMS_SRV Texture2DMS
D3D12_TEX2D_ARRAY_SRV Texture2DArray
D3D12_TEX2D_SRV Texture2D
D3D12_TEX1D_SRV Texture1D
D3D12_TEXCUBE_ARRAY_SRV TextureCubeArray
D3D12_TEX2DMS_ARRAY_SRV Texture2DMSArray
UINT Shader4ComponentMapping
D3D12_TEXTURE_ADDRESS_MODE AddressW
D3D12_TEXTURE_ADDRESS_MODE AddressU
D3D12_SHADER_VISIBILITY ShaderVisibility
D3D12_TEXTURE_ADDRESS_MODE AddressV
D3D12_STATIC_BORDER_COLOR BorderColor
D3D12_COMPARISON_FUNC ComparisonFunc
D3D12_GPU_VIRTUAL_ADDRESS BufferFilledSizeLocation
D3D12_GPU_VIRTUAL_ADDRESS BufferLocation
_Field_size_full_(NumEntries) const D3D12_SO_DECLARATION_ENTRY *pSODeclaration
_Field_size_full_(NumStrides) const UINT *pBufferStrides
UINT StartTileIndexInOverallResource
FLOAT ResourceMinLODClamp
FLOAT ResourceMinLODClamp
FLOAT ResourceMinLODClamp
FLOAT ResourceMinLODClamp
UINT UnusedField_NothingToDefine
UINT UnusedField_NothingToDefine
UINT UnusedField_NothingToDefine
FLOAT ResourceMinLODClamp
FLOAT ResourceMinLODClamp
FLOAT ResourceMinLODClamp
D3D12_TEXTURE_COPY_TYPE Type
ID3D12Resource * pResource
D3D12_PLACED_SUBRESOURCE_FOOTPRINT PlacedFootprint
D3D12_TEX3D_UAV Texture3D
D3D12_TEX2D_UAV Texture2D
D3D12_UAV_DIMENSION ViewDimension
D3D12_TEX1D_ARRAY_UAV Texture1DArray
D3D12_TEX2D_ARRAY_UAV Texture2DArray
D3D12_TEX1D_UAV Texture1D
D3D12_ROOT_SIGNATURE_DESC Desc_1_0
D3D_ROOT_SIGNATURE_VERSION Version
D3D12_ROOT_SIGNATURE_DESC1 Desc_1_1
D3D12_GPU_VIRTUAL_ADDRESS BufferLocation
SIZE_T DedicatedVideoMemory
SIZE_T SharedSystemMemory
SIZE_T DedicatedSystemMemory
SIZE_T DedicatedVideoMemory
SIZE_T DedicatedSystemMemory
SIZE_T SharedSystemMemory
BEGIN_INTERFACE(ID3D10Blob *This, REFIID riid, _COM_Outptr_ void **ppvObject)
ID3D12CommandAllocator * This
ID3D12CommandAllocator _In_ REFGUID guid
ID3D12CommandAllocator REFIID _COM_Outptr_opt_ void ** ppvDevice
ID3D12CommandAllocator _In_ REFGUID _In_ UINT DataSize
ID3D12CommandAllocator _In_ REFGUID _Inout_ UINT * pDataSize
ID3D12CommandAllocator _In_z_ LPCWSTR Name
ID3D12CommandAllocator _In_ REFGUID _In_opt_ const IUnknown * pData
ID3D12CommandAllocator _In_ REFGUID _In_ UINT _In_reads_bytes_opt_(DataSize) const void *pData)
ID3D12CommandAllocator _In_ REFGUID _Inout_ UINT _Out_writes_bytes_opt_ pDataSize void * pData
ID3D12CommandAllocator REFIID riid
ID3D12CommandList REFIID riid
ID3D12CommandList _In_ REFGUID _Inout_ UINT _Out_writes_bytes_opt_ pDataSize void * pData
ID3D12CommandList _In_ REFGUID _In_opt_ const IUnknown * pData
ID3D12CommandList _In_z_ LPCWSTR Name
ID3D12CommandList REFIID _COM_Outptr_opt_ void ** ppvDevice
ID3D12CommandList _In_ REFGUID _Inout_ UINT * pDataSize
ID3D12CommandList _In_ REFGUID guid
ID3D12CommandList _In_ REFGUID _In_ UINT DataSize
ID3D12CommandList _In_ REFGUID _In_ UINT _In_reads_bytes_opt_(DataSize) const void *pData)
_In_ ID3D12Resource _In_ const D3D12_TILED_RESOURCE_COORDINATE _In_ ID3D12Resource * pSrcResource
void(STDMETHODCALLTYPE *ExecuteCommandLists)(ID3D12CommandQueue *This
_In_ ID3D12Resource _In_ const D3D12_TILED_RESOURCE_COORDINATE _In_ ID3D12Resource _In_ const D3D12_TILED_RESOURCE_COORDINATE * pSrcRegionStartCoordinate
_In_ ID3D12Resource UINT _In_opt_ ID3D12Heap UINT NumRanges
_In_ ID3D12Resource UINT _In_opt_ ID3D12Heap UINT _In_reads_opt_(NumRanges) const D3D12_TILE_RANGE_FLAGS *pRangeFlags
ID3D12CommandQueue ID3D12Fence UINT64 Value
_In_ ID3D12Resource _In_ const D3D12_TILED_RESOURCE_COORDINATE * pDstRegionStartCoordinate
_In_ ID3D12Resource UINT _In_opt_ ID3D12Heap UINT _In_reads_opt_(NumRanges) const UINT *pHeapRangeStartOffsets
ID3D12CommandQueue _In_ REFGUID _In_opt_ const IUnknown * pData
_In_ ID3D12Resource * pResource
ID3D12CommandQueue _In_ REFGUID _In_ UINT _In_reads_bytes_opt_(DataSize) const void *pData)
ID3D12CommandQueue REFIID riid
ID3D12CommandQueue _In_ REFGUID _Inout_ UINT * pDataSize
void(STDMETHODCALLTYPE *BeginEvent)(ID3D12CommandQueue *This
_In_ ID3D12Resource UINT _In_opt_ ID3D12Heap UINT D3D12_TILE_MAPPING_FLAGS Flags
_In_ UINT _In_reads_(NumCommandLists) ID3D12CommandList *const *ppCommandLists)
ID3D12CommandQueue _Out_ UINT64 _Out_ UINT64 * pCpuTimestamp
UINT _In_reads_bytes_opt_(Size) const void *pData
_In_ ID3D12Resource UINT _In_opt_ ID3D12Heap UINT _In_reads_opt_(NumRanges) const UINT *pRangeTileCounts
ID3D12CommandQueue _In_ REFGUID _Inout_ UINT _Out_writes_bytes_opt_ pDataSize void * pData
ID3D12CommandQueue ID3D12Fence * pFence
_In_ ID3D12Resource UINT NumResourceRegions
void(STDMETHODCALLTYPE *CopyTileMappings)(ID3D12CommandQueue *This
void(STDMETHODCALLTYPE *SetMarker)(ID3D12CommandQueue *This
_In_ ID3D12Resource _In_ const D3D12_TILED_RESOURCE_COORDINATE _In_ ID3D12Resource _In_ const D3D12_TILED_RESOURCE_COORDINATE _In_ const D3D12_TILE_REGION_SIZE D3D12_TILE_MAPPING_FLAGS Flags
_In_ ID3D12Resource UINT _In_reads_opt_(NumResourceRegions) const D3D12_TILE_REGION_SIZE *pResourceRegionSizes
void(STDMETHODCALLTYPE *UpdateTileMappings)(ID3D12CommandQueue *This
_In_ UINT NumCommandLists
_In_ ID3D12Resource _In_ const D3D12_TILED_RESOURCE_COORDINATE _In_ ID3D12Resource _In_ const D3D12_TILED_RESOURCE_COORDINATE _In_ const D3D12_TILE_REGION_SIZE * pRegionSize
ID3D12CommandQueue _Out_ UINT64 * pFrequency
_In_ ID3D12Resource UINT _In_reads_opt_(NumResourceRegions) const D3D12_TILED_RESOURCE_COORDINATE *pResourceRegionStartCoordinates
ID3D12CommandQueue _In_z_ LPCWSTR Name
ID3D12CommandQueue _In_ REFGUID guid
void(STDMETHODCALLTYPE *EndEvent)(ID3D12CommandQueue *This)
_In_ ID3D12Resource UINT _In_opt_ ID3D12Heap * pHeap
ID3D12CommandQueue REFIID _COM_Outptr_opt_ void ** ppvDevice
ID3D12CommandQueue _In_ REFGUID _In_ UINT DataSize
ID3D12CommandQueue _Out_ UINT64 * pGpuTimestamp
ID3D12CommandQueue * This
_In_ ID3D12Resource * pDstResource
BEGIN_INTERFACE(ID3D12Debug *This, REFIID riid, _COM_Outptr_ void **ppvObject)
void(STDMETHODCALLTYPE *EnableDebugLayer)(ID3D12Debug *This)
ID3D12DescriptorHeap _In_ REFGUID _In_opt_ const IUnknown * pData
ID3D12DescriptorHeap _In_ REFGUID _Inout_ UINT * pDataSize
ID3D12DescriptorHeap REFIID _COM_Outptr_opt_ void ** ppvDevice
ID3D12DescriptorHeap _In_ REFGUID guid
ID3D12DescriptorHeap _In_ REFGUID _In_ UINT _In_reads_bytes_opt_(DataSize) const void *pData)
ID3D12DescriptorHeap _In_ REFGUID _Inout_ UINT _Out_writes_bytes_opt_ pDataSize void * pData
ID3D12DescriptorHeap _In_ REFGUID _In_ UINT DataSize
ID3D12DescriptorHeap REFIID riid
ID3D12DescriptorHeap * This
ID3D12DescriptorHeap _In_z_ LPCWSTR Name
ID3D12DeviceChild _In_ REFGUID _Inout_ UINT * pDataSize
ID3D12DeviceChild _In_ REFGUID _Inout_ UINT _Out_writes_bytes_opt_ pDataSize void * pData
ID3D12DeviceChild _In_ REFGUID _In_opt_ const IUnknown * pData
ID3D12DeviceChild _In_ REFGUID _In_ UINT _In_reads_bytes_opt_(DataSize) const void *pData)
ID3D12DeviceChild REFIID riid
BEGIN_INTERFACE(ID3D12DeviceChild *This, REFIID riid, _COM_Outptr_ void **ppvObject)
ID3D12DeviceChild REFIID _COM_Outptr_opt_ void ** ppvDevice
ID3D12DeviceChild _In_z_ LPCWSTR Name
ID3D12DeviceChild _In_ REFGUID _In_ UINT DataSize
ID3D12DeviceChild _In_ REFGUID guid
_In_ const D3D12_SAMPLER_DESC * pDesc
ID3D12Device _In_ UINT _In_ D3D12_COMMAND_LIST_TYPE _In_ ID3D12CommandAllocator _In_opt_ ID3D12PipelineState * pInitialState
ID3D12Device _In_ REFGUID _Inout_ UINT _Out_writes_bytes_opt_ pDataSize void * pData
_In_opt_ ID3D12Resource _In_opt_ const D3D12_DEPTH_STENCIL_VIEW_DESC * pDesc
ID3D12Device _In_ ID3D12DeviceChild _In_opt_ const SECURITY_ATTRIBUTES DWORD _In_opt_ LPCWSTR Name
_In_ UINT _In_ UINT _In_reads_(NumSrcDescriptorRanges) const D3D12_CPU_DESCRIPTOR_HANDLE *pSrcDescriptorRangeStarts
ID3D12Device _In_ ID3D12Heap UINT64 _In_ const D3D12_RESOURCE_DESC D3D12_RESOURCE_STATES _In_opt_ const D3D12_CLEAR_VALUE REFIID _COM_Outptr_opt_ void ** ppvResource
ID3D12Device _In_ const D3D12_HEAP_PROPERTIES D3D12_HEAP_FLAGS _In_ const D3D12_RESOURCE_DESC D3D12_RESOURCE_STATES InitialResourceState
_In_opt_ ID3D12Resource _In_opt_ ID3D12Resource _In_opt_ const D3D12_UNORDERED_ACCESS_VIEW_DESC * pDesc
ID3D12Device _In_ ID3D12DeviceChild * pObject
void(STDMETHODCALLTYPE *CopyDescriptorsSimple)(ID3D12Device *This
ID3D12Device _In_ const D3D12_DESCRIPTOR_HEAP_DESC * pDescriptorHeapDesc
ID3D12Device _In_z_ LPCWSTR Name
_In_opt_ const D3D12_CONSTANT_BUFFER_VIEW_DESC * pDesc
_In_ const D3D12_RESOURCE_DESC UINT64 _Out_writes_opt_(NumSubresources) UINT *pNumRows
_In_opt_ ID3D12Resource _In_opt_ const D3D12_RENDER_TARGET_VIEW_DESC * pDesc
void(STDMETHODCALLTYPE *CreateDepthStencilView)(ID3D12Device *This
ID3D12Device _In_ const D3D12_RESOURCE_DESC D3D12_RESOURCE_STATES _In_opt_ const D3D12_CLEAR_VALUE REFIID _COM_Outptr_opt_ void ** ppvResource
ID3D12Device _In_ const D3D12_COMMAND_SIGNATURE_DESC _In_opt_ ID3D12RootSignature REFIID _COM_Outptr_opt_ void ** ppvCommandSignature
ID3D12Device _In_ const D3D12_COMMAND_SIGNATURE_DESC _In_opt_ ID3D12RootSignature * pRootSignature
ID3D12Device _In_ UINT _In_ D3D12_COMMAND_LIST_TYPE type
ID3D12Device _In_ UINT _In_ UINT numResourceDescs
ID3D12Device _In_ const D3D12_COMMAND_QUEUE_DESC REFIID riid
ID3D12Device _In_ ID3D12Heap UINT64 _In_ const D3D12_RESOURCE_DESC D3D12_RESOURCE_STATES _In_opt_ const D3D12_CLEAR_VALUE REFIID riid
ID3D12Device _In_ UINT visibleMask
ID3D12Device _In_ LPCWSTR DWORD Access
void(STDMETHODCALLTYPE *GetCopyableFootprints)(ID3D12Device *This
ID3D12Device _In_ HANDLE NTHandle
_In_opt_ ID3D12Resource * pResource
_In_opt_ ID3D12Resource _In_opt_ ID3D12Resource * pCounterResource
ID3D12Device _In_ const D3D12_COMPUTE_PIPELINE_STATE_DESC REFIID _COM_Outptr_ void ** ppPipelineState
ID3D12Device _In_ const D3D12_HEAP_PROPERTIES D3D12_HEAP_FLAGS _In_ const D3D12_RESOURCE_DESC * pDesc
ID3D12Device _In_ const D3D12_COMMAND_QUEUE_DESC * pDesc
ID3D12Device _In_ const D3D12_COMPUTE_PIPELINE_STATE_DESC REFIID riid
ID3D12Device _In_ const D3D12_HEAP_PROPERTIES D3D12_HEAP_FLAGS _In_ const D3D12_RESOURCE_DESC D3D12_RESOURCE_STATES _In_opt_ const D3D12_CLEAR_VALUE * pOptimizedClearValue
ID3D12Device _In_ D3D12_COMMAND_LIST_TYPE type
ID3D12Device _In_ const D3D12_COMMAND_SIGNATURE_DESC _In_opt_ ID3D12RootSignature REFIID riid
ID3D12Device UINT64 InitialValue
ID3D12Device _In_ ID3D12Heap UINT64 _In_ const D3D12_RESOURCE_DESC D3D12_RESOURCE_STATES _In_opt_ const D3D12_CLEAR_VALUE * pOptimizedClearValue
_In_ UINT _In_ UINT _In_ D3D12_DESCRIPTOR_HEAP_TYPE DescriptorHeapsType
_In_opt_ ID3D12Resource _In_opt_ const D3D12_RENDER_TARGET_VIEW_DESC _In_ D3D12_CPU_DESCRIPTOR_HANDLE DestDescriptor
_In_ UINT _In_reads_opt_(NumDestDescriptorRanges) const UINT *pDestDescriptorRangeSizes
void(STDMETHODCALLTYPE *CopyDescriptors)(ID3D12Device *This
_In_ ID3D12Resource _Out_opt_ UINT _Out_opt_ D3D12_PACKED_MIP_INFO * pPackedMipDesc
ID3D12Device _In_ UINT _In_ SIZE_T REFIID _COM_Outptr_ void ** ppvRootSignature
_In_ UINT NumDestDescriptorRanges
ID3D12Device _In_ ID3D12DeviceChild _In_opt_ const SECURITY_ATTRIBUTES DWORD Access
_In_ const D3D12_RESOURCE_DESC UINT64 _Out_writes_opt_(NumSubresources) UINT64 *pRowSizeInBytes
_In_ ID3D12Resource _Out_opt_ UINT _Out_opt_ D3D12_PACKED_MIP_INFO _Out_opt_ D3D12_TILE_SHAPE _Inout_opt_ UINT * pNumSubresourceTilings
ID3D12Device _In_ const D3D12_RESOURCE_DESC D3D12_RESOURCE_STATES InitialState
ID3D12Device _In_ D3D12_COMMAND_LIST_TYPE REFIID _COM_Outptr_ void ** ppCommandAllocator
ID3D12Device _In_ const D3D12_HEAP_PROPERTIES D3D12_HEAP_FLAGS _In_ const D3D12_RESOURCE_DESC D3D12_RESOURCE_STATES _In_opt_ const D3D12_CLEAR_VALUE REFIID riidResource
_In_opt_ ID3D12Resource _In_opt_ const D3D12_DEPTH_STENCIL_VIEW_DESC _In_ D3D12_CPU_DESCRIPTOR_HANDLE DestDescriptor
ID3D12Device _In_ const D3D12_COMMAND_QUEUE_DESC REFIID _COM_Outptr_ void ** ppCommandQueue
ID3D12Device _In_ UINT _In_ SIZE_T blobLengthInBytes
void(STDMETHODCALLTYPE *CreateRenderTargetView)(ID3D12Device *This
_In_ const D3D12_RESOURCE_DESC UINT64 _Out_writes_opt_(NumSubresources) D3D12_PLACED_SUBRESOURCE_FOOTPRINT *pLayouts
ID3D12Device _In_ const D3D12_HEAP_DESC REFIID _COM_Outptr_opt_ void ** ppvHeap
_In_opt_ ID3D12Resource _In_opt_ ID3D12Resource _In_opt_ const D3D12_UNORDERED_ACCESS_VIEW_DESC _In_ D3D12_CPU_DESCRIPTOR_HANDLE DestDescriptor
ID3D12Device _In_ const D3D12_HEAP_PROPERTIES * pHeapProperties
ID3D12Device _In_ UINT _In_ D3D12_COMMAND_LIST_TYPE _In_ ID3D12CommandAllocator _In_opt_ ID3D12PipelineState REFIID riid
_In_ UINT _In_ D3D12_CPU_DESCRIPTOR_HANDLE _In_ D3D12_CPU_DESCRIPTOR_HANDLE _In_ D3D12_DESCRIPTOR_HEAP_TYPE DescriptorHeapsType
_In_opt_ const D3D12_CONSTANT_BUFFER_VIEW_DESC _In_ D3D12_CPU_DESCRIPTOR_HANDLE DestDescriptor
ID3D12Device _In_ const D3D12_GRAPHICS_PIPELINE_STATE_DESC REFIID _COM_Outptr_ void ** ppPipelineState
ID3D12Device _In_ UINT _In_reads_(blobLengthInBytes) const void *pBlobWithRootSignature
ID3D12Device _In_ const D3D12_RESOURCE_DESC D3D12_RESOURCE_STATES _In_opt_ const D3D12_CLEAR_VALUE REFIID riid
ID3D12Device _In_ const D3D12_HEAP_DESC REFIID riid
ID3D12Device _In_ UINT _In_ D3D12_COMMAND_LIST_TYPE _In_ ID3D12CommandAllocator _In_opt_ ID3D12PipelineState REFIID _COM_Outptr_ void ** ppCommandList
ID3D12Device _In_ const D3D12_DESCRIPTOR_HEAP_DESC REFIID _COM_Outptr_ void ** ppvHeap
ID3D12Device UINT _In_reads_(NumObjects) ID3D12Pageable *const *ppObjects)
ID3D12Device _In_ const D3D12_COMMAND_SIGNATURE_DESC * pDesc
ID3D12Device _In_ const D3D12_HEAP_PROPERTIES D3D12_HEAP_FLAGS _In_ const D3D12_RESOURCE_DESC D3D12_RESOURCE_STATES _In_opt_ const D3D12_CLEAR_VALUE REFIID _COM_Outptr_opt_ void ** ppvResource
ID3D12Device _In_ const D3D12_QUERY_HEAP_DESC REFIID _COM_Outptr_opt_ void ** ppvHeap
void(STDMETHODCALLTYPE *GetResourceTiling)(ID3D12Device *This
ID3D12Device _In_ const D3D12_DESCRIPTOR_HEAP_DESC REFIID riid
ID3D12Device _In_ D3D12_DESCRIPTOR_HEAP_TYPE DescriptorHeapType
ID3D12Device _In_ REFGUID _In_ UINT DataSize
ID3D12Device _In_ ID3D12Heap UINT64 HeapOffset
ID3D12Device D3D12_FEATURE _Inout_updates_bytes_(FeatureSupportDataSize) void *pFeatureSupportData
_In_ const D3D12_RESOURCE_DESC UINT64 BaseOffset
ID3D12Device _In_ const D3D12_QUERY_HEAP_DESC * pDesc
_In_opt_ ID3D12Resource _In_opt_ const D3D12_SHADER_RESOURCE_VIEW_DESC _In_ D3D12_CPU_DESCRIPTOR_HANDLE DestDescriptor
ID3D12Device _In_ REFGUID _In_opt_ const IUnknown * pData
ID3D12Device _In_ ID3D12Heap UINT64 _In_ const D3D12_RESOURCE_DESC D3D12_RESOURCE_STATES InitialState
ID3D12Device _In_ UINT D3D12_HEAP_TYPE heapType
_In_ const D3D12_SAMPLER_DESC _In_ D3D12_CPU_DESCRIPTOR_HANDLE DestDescriptor
ID3D12Device _In_ ID3D12DeviceChild _In_opt_ const SECURITY_ATTRIBUTES * pAttributes
_In_ const D3D12_RESOURCE_DESC _In_range_(0, D3D12_REQ_SUBRESOURCES - FirstSubresource) UINT NumSubresources
ID3D12Device _In_ REFGUID _Inout_ UINT * pDataSize
_In_ ID3D12Resource _Out_opt_ UINT _Out_opt_ D3D12_PACKED_MIP_INFO _Out_opt_ D3D12_TILE_SHAPE _Inout_opt_ UINT _In_ UINT _Out_writes_ pNumSubresourceTilings D3D12_SUBRESOURCE_TILING * pSubresourceTilingsForNonPackedMips
_In_ const D3D12_RESOURCE_DESC * pResourceDesc
ID3D12Device UINT NumObjects
_In_ UINT _In_ UINT NumSrcDescriptorRanges
ID3D12Device _In_ const D3D12_RESOURCE_DESC * pDesc
ID3D12Device UINT64 D3D12_FENCE_FLAGS Flags
_In_opt_ ID3D12Resource _In_opt_ const D3D12_SHADER_RESOURCE_VIEW_DESC * pDesc
ID3D12Device _In_ UINT _In_ UINT _In_reads_(numResourceDescs) const D3D12_RESOURCE_DESC *pResourceDescs)
ID3D12Device _In_ ID3D12Heap * pHeap
_In_ ID3D12Resource _Out_opt_ UINT _Out_opt_ D3D12_PACKED_MIP_INFO _Out_opt_ D3D12_TILE_SHAPE * pStandardTileShapeForNonPackedMips
_In_ UINT _In_reads_(NumDestDescriptorRanges) const D3D12_CPU_DESCRIPTOR_HANDLE *pDestDescriptorRangeStarts
_In_ UINT _In_ D3D12_CPU_DESCRIPTOR_HANDLE _In_ D3D12_CPU_DESCRIPTOR_HANDLE SrcDescriptorRangeStart
ID3D12Device _In_ const D3D12_HEAP_DESC * pDesc
ID3D12Device _In_ UINT nodeMask
ID3D12Device _In_ ID3D12DeviceChild _In_opt_ const SECURITY_ATTRIBUTES DWORD _In_opt_ LPCWSTR _Out_ HANDLE * pHandle
ID3D12Device _In_ ID3D12Heap UINT64 _In_ const D3D12_RESOURCE_DESC * pDesc
ID3D12Device _In_ REFGUID guid
_In_ const D3D12_RESOURCE_DESC UINT64 _Out_opt_ UINT64 * pTotalBytes
ID3D12Device _In_ const D3D12_QUERY_HEAP_DESC REFIID riid
ID3D12Device _In_ const D3D12_GRAPHICS_PIPELINE_STATE_DESC * pDesc
ID3D12Device _In_ const D3D12_HEAP_PROPERTIES D3D12_HEAP_FLAGS HeapFlags
ID3D12Device D3D12_FEATURE UINT FeatureSupportDataSize
ID3D12Device _In_ UINT _In_ D3D12_COMMAND_LIST_TYPE _In_ ID3D12CommandAllocator * pCommandAllocator
_In_ ID3D12Resource _Out_opt_ UINT * pNumTilesForEntireResource
ID3D12Device _In_ HANDLE REFIID riid
ID3D12Device _In_ LPCWSTR DWORD _Out_ HANDLE * pNTHandle
ID3D12Device _In_ const D3D12_COMPUTE_PIPELINE_STATE_DESC * pDesc
_In_ UINT _In_ UINT _In_reads_opt_(NumSrcDescriptorRanges) const UINT *pSrcDescriptorRangeSizes
ID3D12Device UINT64 D3D12_FENCE_FLAGS REFIID riid
ID3D12Device _In_ HANDLE REFIID _COM_Outptr_opt_ void ** ppvObj
ID3D12Device _In_ const D3D12_RESOURCE_DESC D3D12_RESOURCE_STATES _In_opt_ const D3D12_CLEAR_VALUE * pOptimizedClearValue
void(STDMETHODCALLTYPE *CreateSampler)(ID3D12Device *This
ID3D12Device _In_ D3D12_COMMAND_LIST_TYPE REFIID riid
void(STDMETHODCALLTYPE *CreateConstantBufferView)(ID3D12Device *This
_In_ UINT _In_ D3D12_CPU_DESCRIPTOR_HANDLE DestDescriptorRangeStart
ID3D12Device _In_ UINT _In_ SIZE_T REFIID riid
ID3D12Device UINT64 D3D12_FENCE_FLAGS REFIID _COM_Outptr_ void ** ppFence
ID3D12Device _In_ const D3D12_GRAPHICS_PIPELINE_STATE_DESC REFIID riid
_In_ const D3D12_RESOURCE_DESC _In_range_(0, D3D12_REQ_SUBRESOURCES) UINT FirstSubresource
ID3D12Device D3D12_FEATURE Feature
void(STDMETHODCALLTYPE *CreateShaderResourceView)(ID3D12Device *This
ID3D12Device _In_ LPCWSTR Name
_In_ ID3D12Resource _Out_opt_ UINT _Out_opt_ D3D12_PACKED_MIP_INFO _Out_opt_ D3D12_TILE_SHAPE _Inout_opt_ UINT _In_ UINT FirstSubresourceTilingToGet
ID3D12Device _In_ REFGUID _In_ UINT _In_reads_bytes_opt_(DataSize) const void *pData)
_In_ ID3D12Resource * pTiledResource
void(STDMETHODCALLTYPE *CreateUnorderedAccessView)(ID3D12Device *This
ID3D12Fence UINT64 HANDLE hEvent
ID3D12Fence _In_ REFGUID _Inout_ UINT _Out_writes_bytes_opt_ pDataSize void * pData
ID3D12Fence _In_z_ LPCWSTR Name
ID3D12Fence _In_ REFGUID _In_ UINT DataSize
ID3D12Fence _In_ REFGUID _Inout_ UINT * pDataSize
ID3D12Fence _In_ REFGUID _In_ UINT _In_reads_bytes_opt_(DataSize) const void *pData)
ID3D12Fence _In_ REFGUID guid
ID3D12Fence _In_ REFGUID _In_opt_ const IUnknown * pData
ID3D12Fence REFIID _COM_Outptr_opt_ void ** ppvDevice
void(STDMETHODCALLTYPE *ResolveSubresource)(ID3D12GraphicsCommandList *This
void(STDMETHODCALLTYPE *CopyTiles)(ID3D12GraphicsCommandList *This
_In_ UINT _In_ UINT _In_ UINT ThreadGroupCountZ
_In_ ID3D12QueryHeap _In_ D3D12_QUERY_TYPE _In_ UINT _In_ UINT _In_ ID3D12Resource * pDestinationBuffer
_In_ ID3D12GraphicsCommandList * pCommandList
void(STDMETHODCALLTYPE *SetComputeRoot32BitConstants)(ID3D12GraphicsCommandList *This
_In_range_(0, D3D12_VIEWPORT_AND_SCISSORRECT_OBJECT_COUNT_PER_PIPELINE) UINT NumViewports
_In_ UINT _In_ D3D12_GPU_DESCRIPTOR_HANDLE BaseDescriptor
_In_opt_ ID3D12Resource * pBuffer
_In_ ID3D12Resource _In_ const D3D12_TILED_RESOURCE_COORDINATE _In_ const D3D12_TILE_REGION_SIZE _In_ ID3D12Resource UINT64 BufferStartOffsetInBytes
void(STDMETHODCALLTYPE *CopyResource)(ID3D12GraphicsCommandList *This
_In_ ID3D12CommandSignature _In_ UINT MaxCommandCount
_In_ UINT _In_ UINT _In_ UINT StartIndexLocation
_In_ ID3D12Resource _In_ UINT _In_ ID3D12Resource * pSrcResource
_In_ UINT _In_ UINT _In_ UINT _In_ INT _In_ UINT StartInstanceLocation
_In_ D3D12_GPU_DESCRIPTOR_HANDLE _In_ D3D12_CPU_DESCRIPTOR_HANDLE ViewCPUHandle
void(STDMETHODCALLTYPE *SetGraphicsRootShaderResourceView)(ID3D12GraphicsCommandList *This
_In_ D3D12_GPU_DESCRIPTOR_HANDLE _In_ D3D12_CPU_DESCRIPTOR_HANDLE _In_ ID3D12Resource _In_ const UINT _In_ UINT NumRects
ID3D12GraphicsCommandList _In_ REFGUID _In_opt_ const IUnknown * pData
void(STDMETHODCALLTYPE *SetGraphicsRoot32BitConstant)(ID3D12GraphicsCommandList *This
_In_ UINT _In_ UINT _In_ UINT _In_ INT BaseVertexLocation
_In_ D3D12_GPU_DESCRIPTOR_HANDLE _In_ D3D12_CPU_DESCRIPTOR_HANDLE _In_ ID3D12Resource _In_ const UINT _In_ UINT _In_reads_(NumRects) const D3D12_RECT *pRects)
_In_ ID3D12Resource UINT64 _In_ ID3D12Resource UINT64 UINT64 NumBytes
void(STDMETHODCALLTYPE *ExecuteBundle)(ID3D12GraphicsCommandList *This
_In_opt_ ID3D12RootSignature * pRootSignature
void(STDMETHODCALLTYPE *ExecuteIndirect)(ID3D12GraphicsCommandList *This
_In_range_(0, D3D12_VIEWPORT_AND_SCISSORRECT_OBJECT_COUNT_PER_PIPELINE) UINT NumRects
_In_reads_(NumRects) const D3D12_RECT *pRects)
void(STDMETHODCALLTYPE *SetComputeRootSignature)(ID3D12GraphicsCommandList *This
_In_opt_ ID3D12Resource _In_ UINT64 AlignedBufferOffset
_In_ UINT _In_ UINT _In_reads_(Num32BitValuesToSet *sizeof(UINT)) const void *pSrcData
_In_ UINT _In_ UINT _In_ UINT _In_ UINT StartInstanceLocation
void(STDMETHODCALLTYPE *OMSetStencilRef)(ID3D12GraphicsCommandList *This
_In_ ID3D12Resource UINT64 _In_ ID3D12Resource UINT64 SrcOffset
void(STDMETHODCALLTYPE *CopyBufferRegion)(ID3D12GraphicsCommandList *This
_In_ ID3D12Resource * pDstBuffer
_In_ ID3D12CommandSignature _In_ UINT _In_ ID3D12Resource _In_ UINT64 ArgumentBufferOffset
_In_ ID3D12QueryHeap _In_ D3D12_QUERY_TYPE _In_ UINT StartIndex
_In_ D3D12_GPU_DESCRIPTOR_HANDLE _In_ D3D12_CPU_DESCRIPTOR_HANDLE _In_ ID3D12Resource _In_ const FLOAT _In_ UINT _In_reads_(NumRects) const D3D12_RECT *pRects)
void(STDMETHODCALLTYPE *SetPredication)(ID3D12GraphicsCommandList *This
void(STDMETHODCALLTYPE *DrawIndexedInstanced)(ID3D12GraphicsCommandList *This
_In_ UINT _In_reads_(NumBarriers) const D3D12_RESOURCE_BARRIER *pBarriers)
_In_ UINT _In_ UINT NumViews
_In_ D3D12_CPU_DESCRIPTOR_HANDLE _In_ const FLOAT _In_ UINT NumRects
void(STDMETHODCALLTYPE *SetGraphicsRootSignature)(ID3D12GraphicsCommandList *This
_In_ ID3D12QueryHeap _In_ D3D12_QUERY_TYPE Type
_In_opt_ const D3D12_INDEX_BUFFER_VIEW * pView
_In_ ID3D12Resource _In_ UINT _In_ ID3D12Resource _In_ UINT SrcSubresource
void(STDMETHODCALLTYPE *SetGraphicsRoot32BitConstants)(ID3D12GraphicsCommandList *This
_In_ UINT _In_ UINT Num32BitValuesToSet
ID3D12GraphicsCommandList _In_ REFGUID _Inout_ UINT _Out_writes_bytes_opt_ pDataSize void * pData
_In_ D3D12_GPU_DESCRIPTOR_HANDLE _In_ D3D12_CPU_DESCRIPTOR_HANDLE _In_ ID3D12Resource _In_ const FLOAT _In_ UINT NumRects
void(STDMETHODCALLTYPE *SetGraphicsRootUnorderedAccessView)(ID3D12GraphicsCommandList *This
_In_ D3D12_CPU_DESCRIPTOR_HANDLE _In_ D3D12_CLEAR_FLAGS _In_ FLOAT _In_ UINT8 _In_ UINT NumRects
void(STDMETHODCALLTYPE *IASetVertexBuffers)(ID3D12GraphicsCommandList *This
_In_ ID3D12QueryHeap * pQueryHeap
ID3D12GraphicsCommandList _In_ REFGUID guid
void(STDMETHODCALLTYPE *SOSetTargets)(ID3D12GraphicsCommandList *This
_In_ ID3D12Resource UINT64 _In_ ID3D12Resource * pSrcBuffer
void(STDMETHODCALLTYPE *OMSetBlendFactor)(ID3D12GraphicsCommandList *This
_In_ ID3D12Resource UINT64 DstOffset
_In_ ID3D12Resource _In_ ID3D12Resource * pSrcResource
_In_ ID3D12Resource _In_opt_ const D3D12_DISCARD_REGION * pRegion
void(STDMETHODCALLTYPE *RSSetScissorRects)(ID3D12GraphicsCommandList *This
_In_ UINT _In_ UINT _In_ UINT StartVertexLocation
void(STDMETHODCALLTYPE *IASetPrimitiveTopology)(ID3D12GraphicsCommandList *This
void(STDMETHODCALLTYPE *RSSetViewports)(ID3D12GraphicsCommandList *This
_In_ ID3D12QueryHeap _In_ D3D12_QUERY_TYPE _In_ UINT _In_ UINT NumQueries
void(STDMETHODCALLTYPE *SetComputeRootShaderResourceView)(ID3D12GraphicsCommandList *This
void(STDMETHODCALLTYPE *SetComputeRoot32BitConstant)(ID3D12GraphicsCommandList *This
_In_ D3D12_GPU_DESCRIPTOR_HANDLE _In_ D3D12_CPU_DESCRIPTOR_HANDLE _In_ ID3D12Resource * pResource
void(STDMETHODCALLTYPE *SetMarker)(ID3D12GraphicsCommandList *This
_In_ const D3D12_TEXTURE_COPY_LOCATION UINT UINT UINT DstZ
void(STDMETHODCALLTYPE *SetComputeRootUnorderedAccessView)(ID3D12GraphicsCommandList *This
ID3D12GraphicsCommandList _In_ ID3D12CommandAllocator * pAllocator
_In_ D3D12_CPU_DESCRIPTOR_HANDLE _In_ const FLOAT _In_ UINT _In_reads_(NumRects) const D3D12_RECT *pRects)
_In_ UINT NumRenderTargetDescriptors
_In_ const D3D12_TEXTURE_COPY_LOCATION UINT UINT DstY
ID3D12GraphicsCommandList _In_ ID3D12CommandAllocator _In_opt_ ID3D12PipelineState * pInitialState
void(STDMETHODCALLTYPE *ClearRenderTargetView)(ID3D12GraphicsCommandList *This
void(STDMETHODCALLTYPE *CopyTextureRegion)(ID3D12GraphicsCommandList *This
ID3D12GraphicsCommandList _In_ REFGUID _In_ UINT DataSize
_In_ ID3D12Resource _In_ const D3D12_TILED_RESOURCE_COORDINATE _In_ const D3D12_TILE_REGION_SIZE _In_ ID3D12Resource UINT64 D3D12_TILE_COPY_FLAGS Flags
void(STDMETHODCALLTYPE *ClearDepthStencilView)(ID3D12GraphicsCommandList *This
_In_ ID3D12PipelineState * pPipelineState
_In_ ID3D12QueryHeap _In_ D3D12_QUERY_TYPE _In_ UINT Index
void(STDMETHODCALLTYPE *IASetIndexBuffer)(ID3D12GraphicsCommandList *This
_In_ ID3D12Resource * pTiledResource
_In_ ID3D12Resource * pResource
_In_ UINT _In_opt_ const D3D12_CPU_DESCRIPTOR_HANDLE * pRenderTargetDescriptors
_In_ UINT _In_ UINT _In_ UINT DestOffsetIn32BitValues
void(STDMETHODCALLTYPE *ClearUnorderedAccessViewUint)(ID3D12GraphicsCommandList *This
_In_ D3D12_CPU_DESCRIPTOR_HANDLE DepthStencilView
void(STDMETHODCALLTYPE *SetDescriptorHeaps)(ID3D12GraphicsCommandList *This
void(STDMETHODCALLTYPE *ResourceBarrier)(ID3D12GraphicsCommandList *This
_In_ UINT _In_opt_ const D3D12_CPU_DESCRIPTOR_HANDLE _In_ BOOL RTsSingleHandleToDescriptorRange
_In_ UINT _In_ UINT _In_reads_opt_(NumViews) const D3D12_VERTEX_BUFFER_VIEW *pViews)
UINT _In_reads_bytes_opt_(Size) const void *pData
void(STDMETHODCALLTYPE *EndEvent)(ID3D12GraphicsCommandList *This)
_In_ ID3D12CommandSignature _In_ UINT _In_ ID3D12Resource _In_ UINT64 _In_opt_ ID3D12Resource * pCountBuffer
_In_ const D3D12_TEXTURE_COPY_LOCATION * pDst
_In_ ID3D12Resource _In_ const D3D12_TILED_RESOURCE_COORDINATE _In_ const D3D12_TILE_REGION_SIZE * pTileRegionSize
ID3D12GraphicsCommandList * This
_In_ UINT RootParameterIndex
_In_ UINT VertexCountPerInstance
_In_ UINT _In_ UINT SrcData
_In_ const D3D12_TEXTURE_COPY_LOCATION UINT UINT UINT _In_ const D3D12_TEXTURE_COPY_LOCATION * pSrc
void(STDMETHODCALLTYPE *ResolveQueryData)(ID3D12GraphicsCommandList *This
ID3D12GraphicsCommandList _In_ REFGUID _In_ UINT _In_reads_bytes_opt_(DataSize) const void *pData)
_In_opt_ ID3D12PipelineState * pPipelineState
_In_ UINT _In_ UINT ThreadGroupCountY
void(STDMETHODCALLTYPE *EndQuery)(ID3D12GraphicsCommandList *This
_In_ const D3D12_TEXTURE_COPY_LOCATION UINT UINT UINT _In_ const D3D12_TEXTURE_COPY_LOCATION _In_opt_ const D3D12_BOX * pSrcBox
_In_ UINT _In_ UINT _In_reads_opt_(NumViews) const D3D12_STREAM_OUTPUT_BUFFER_VIEW *pViews)
void(STDMETHODCALLTYPE *BeginEvent)(ID3D12GraphicsCommandList *This
void(STDMETHODCALLTYPE *DrawInstanced)(ID3D12GraphicsCommandList *This
void(STDMETHODCALLTYPE *SetComputeRootConstantBufferView)(ID3D12GraphicsCommandList *This
_In_ ID3D12Resource * pDstResource
void(STDMETHODCALLTYPE *OMSetRenderTargets)(ID3D12GraphicsCommandList *This
void(STDMETHODCALLTYPE *Dispatch)(ID3D12GraphicsCommandList *This
void(STDMETHODCALLTYPE *ClearState)(ID3D12GraphicsCommandList *This
ID3D12GraphicsCommandList REFIID riid
_In_ ID3D12Resource _In_ UINT DstSubresource
void(STDMETHODCALLTYPE *SetComputeRootDescriptorTable)(ID3D12GraphicsCommandList *This
_In_ D3D12_GPU_DESCRIPTOR_HANDLE ViewGPUHandleInCurrentHeap
ID3D12GraphicsCommandList _In_ REFGUID _Inout_ UINT * pDataSize
_In_ D3D12_PRIMITIVE_TOPOLOGY PrimitiveTopology
_In_ D3D12_CPU_DESCRIPTOR_HANDLE _In_ D3D12_CLEAR_FLAGS _In_ FLOAT _In_ UINT8 Stencil
_In_ UINT _In_reads_(NumDescriptorHeaps) ID3D12DescriptorHeap *const *ppDescriptorHeaps)
_In_ ID3D12CommandSignature * pCommandSignature
_In_ ID3D12CommandSignature _In_ UINT _In_ ID3D12Resource _In_ UINT64 _In_opt_ ID3D12Resource _In_ UINT64 CountBufferOffset
void(STDMETHODCALLTYPE *BeginQuery)(ID3D12GraphicsCommandList *This
void(STDMETHODCALLTYPE *DiscardResource)(ID3D12GraphicsCommandList *This
_In_ D3D12_CPU_DESCRIPTOR_HANDLE _In_ D3D12_CLEAR_FLAGS _In_ FLOAT _In_ UINT8 _In_ UINT _In_reads_(NumRects) const D3D12_RECT *pRects)
_In_ ID3D12Resource _In_ const D3D12_TILED_RESOURCE_COORDINATE * pTileRegionStartCoordinate
_In_ UINT _In_ UINT InstanceCount
void(STDMETHODCALLTYPE *SetGraphicsRootConstantBufferView)(ID3D12GraphicsCommandList *This
void(STDMETHODCALLTYPE *SetGraphicsRootDescriptorTable)(ID3D12GraphicsCommandList *This
_In_ D3D12_CPU_DESCRIPTOR_HANDLE _In_ D3D12_CLEAR_FLAGS ClearFlags
_In_ ID3D12Resource _In_ UINT _In_ ID3D12Resource _In_ UINT _In_ DXGI_FORMAT Format
_In_ D3D12_CPU_DESCRIPTOR_HANDLE RenderTargetView
_In_ D3D12_CPU_DESCRIPTOR_HANDLE _In_ D3D12_CLEAR_FLAGS _In_ FLOAT Depth
_In_ UINT NumDescriptorHeaps
_In_ ID3D12Resource _In_ const D3D12_TILED_RESOURCE_COORDINATE _In_ const D3D12_TILE_REGION_SIZE _In_ ID3D12Resource * pBuffer
_In_ UINT ThreadGroupCountX
_In_ ID3D12CommandSignature _In_ UINT _In_ ID3D12Resource * pArgumentBuffer
_In_reads_(NumViewports) const D3D12_VIEWPORT *pViewports)
ID3D12GraphicsCommandList REFIID _COM_Outptr_opt_ void ** ppvDevice
void(STDMETHODCALLTYPE *ClearUnorderedAccessViewFloat)(ID3D12GraphicsCommandList *This
_In_ UINT _In_ D3D12_GPU_VIRTUAL_ADDRESS BufferLocation
_In_ const D3D12_TEXTURE_COPY_LOCATION UINT DstX
_In_ UINT IndexCountPerInstance
_In_ UINT _In_opt_ const D3D12_CPU_DESCRIPTOR_HANDLE _In_ BOOL _In_opt_ const D3D12_CPU_DESCRIPTOR_HANDLE * pDepthStencilDescriptor
void(STDMETHODCALLTYPE *SetPipelineState)(ID3D12GraphicsCommandList *This
_In_ ID3D12QueryHeap _In_ D3D12_QUERY_TYPE _In_ UINT _In_ UINT _In_ ID3D12Resource _In_ UINT64 AlignedDestinationBufferOffset
ID3D12GraphicsCommandList _In_z_ LPCWSTR Name
_In_opt_ ID3D12Resource _In_ UINT64 _In_ D3D12_PREDICATION_OP Operation
BEGIN_INTERFACE(ID3D12Object *This, REFIID riid, _COM_Outptr_ void **ppvObject)
ID3D12Object _In_ REFGUID _In_ UINT DataSize
ID3D12Object _In_ REFGUID guid
ID3D12Object _In_ REFGUID _Inout_ UINT * pDataSize
ID3D12Object _In_ REFGUID _In_opt_ const IUnknown * pData
ID3D12Object _In_z_ LPCWSTR Name
ID3D12Object _In_ REFGUID _Inout_ UINT _Out_writes_bytes_opt_ pDataSize void * pData
ID3D12Object _In_ REFGUID _In_ UINT _In_reads_bytes_opt_(DataSize) const void *pData)
ID3D12Pageable REFIID riid
ID3D12Pageable _In_z_ LPCWSTR Name
ID3D12Pageable _In_ REFGUID _Inout_ UINT * pDataSize
ID3D12Pageable REFIID _COM_Outptr_opt_ void ** ppvDevice
BEGIN_INTERFACE(ID3D12Pageable *This, REFIID riid, _COM_Outptr_ void **ppvObject)
ID3D12Pageable _In_ REFGUID _In_ UINT DataSize
ID3D12Pageable _In_ REFGUID _Inout_ UINT _Out_writes_bytes_opt_ pDataSize void * pData
ID3D12Pageable _In_ REFGUID _In_opt_ const IUnknown * pData
ID3D12Pageable _In_ REFGUID _In_ UINT _In_reads_bytes_opt_(DataSize) const void *pData)
ID3D12Pageable _In_ REFGUID guid
ID3D12PipelineState _In_ REFGUID _Inout_ UINT _Out_writes_bytes_opt_ pDataSize void * pData
ID3D12PipelineState REFIID _COM_Outptr_opt_ void ** ppvDevice
ID3D12PipelineState REFIID riid
ID3D12PipelineState _In_ REFGUID _In_ UINT _In_reads_bytes_opt_(DataSize) const void *pData)
ID3D12PipelineState * This
ID3D12PipelineState _COM_Outptr_ ID3DBlob ** ppBlob
ID3D12PipelineState _In_ REFGUID _In_ UINT DataSize
ID3D12PipelineState _In_ REFGUID _Inout_ UINT * pDataSize
ID3D12PipelineState _In_ REFGUID guid
ID3D12PipelineState _In_ REFGUID _In_opt_ const IUnknown * pData
ID3D12PipelineState _In_z_ LPCWSTR Name
ID3D12QueryHeap REFIID riid
ID3D12QueryHeap _In_z_ LPCWSTR Name
ID3D12QueryHeap _In_ REFGUID guid
ID3D12QueryHeap _In_ REFGUID _Inout_ UINT * pDataSize
ID3D12QueryHeap _In_ REFGUID _Inout_ UINT _Out_writes_bytes_opt_ pDataSize void * pData
ID3D12QueryHeap _In_ REFGUID _In_ UINT DataSize
ID3D12QueryHeap _In_ REFGUID _In_opt_ const IUnknown * pData
ID3D12QueryHeap REFIID _COM_Outptr_opt_ void ** ppvDevice
ID3D12QueryHeap _In_ REFGUID _In_ UINT _In_reads_bytes_opt_(DataSize) const void *pData)
BEGIN_INTERFACE(ID3D12Resource *This, REFIID riid, _COM_Outptr_ void **ppvObject)
ID3D12Resource REFIID _COM_Outptr_opt_ void ** ppvDevice
ID3D12Resource UINT _In_opt_ const D3D12_BOX _In_ const void * pSrcData
ID3D12Resource _Out_ void UINT DstRowPitch
ID3D12Resource _Out_ void * pDstData
ID3D12Resource UINT DstSubresource
ID3D12Resource _In_ REFGUID _In_ UINT _In_reads_bytes_opt_(DataSize) const void *pData)
ID3D12Resource _Out_opt_ D3D12_HEAP_PROPERTIES _Out_opt_ D3D12_HEAP_FLAGS * pHeapFlags
ID3D12Resource UINT _In_opt_ const D3D12_RANGE * pReadRange
ID3D12Resource _Out_ void UINT UINT UINT _In_opt_ const D3D12_BOX * pSrcBox
ID3D12Resource _Out_ void UINT UINT DstDepthPitch
ID3D12Resource REFIID riid
ID3D12Resource UINT _In_opt_ const D3D12_BOX _In_ const void UINT UINT SrcDepthPitch
ID3D12Resource _In_ REFGUID _In_ UINT DataSize
ID3D12Resource _In_ REFGUID _Inout_ UINT _Out_writes_bytes_opt_ pDataSize void * pData
void(STDMETHODCALLTYPE *Unmap)(ID3D12Resource *This
ID3D12Resource _Out_opt_ D3D12_HEAP_PROPERTIES * pHeapProperties
ID3D12Resource _In_ REFGUID guid
ID3D12Resource _In_ REFGUID _In_opt_ const IUnknown * pData
ID3D12Resource UINT _In_opt_ const D3D12_RANGE _Outptr_opt_result_bytebuffer_(_Inexpressible_("Dependent on resource")) void **ppData)
ID3D12Resource UINT Subresource
ID3D12Resource _In_z_ LPCWSTR Name
ID3D12Resource UINT _In_opt_ const D3D12_BOX _In_ const void UINT SrcRowPitch
ID3D12Resource _In_ REFGUID _Inout_ UINT * pDataSize
ID3D12Resource UINT _In_opt_ const D3D12_BOX * pDstBox
ID3D12Resource _Out_ void UINT UINT UINT SrcSubresource
UINT _In_opt_ const D3D12_RANGE * pWrittenRange
ID3D12RootSignature _In_ REFGUID _In_ UINT _In_reads_bytes_opt_(DataSize) const void *pData)
ID3D12RootSignature _In_z_ LPCWSTR Name
ID3D12RootSignature REFIID _COM_Outptr_opt_ void ** ppvDevice
ID3D12RootSignature _In_ REFGUID _In_opt_ const IUnknown * pData
ID3D12RootSignature _In_ REFGUID guid
ID3D12RootSignature * This
ID3D12RootSignature _In_ REFGUID _Inout_ UINT _Out_writes_bytes_opt_ pDataSize void * pData
ID3D12RootSignature _In_ REFGUID _In_ UINT DataSize
ID3D12RootSignature REFIID riid
ID3D12RootSignature _In_ REFGUID _Inout_ UINT * pDataSize
BEGIN_INTERFACE(ID3D12RootSignature *This, REFIID riid, _COM_Outptr_ void **ppvObject)
IDXGIAdapter1 _In_ REFGUID Name
IDXGIAdapter1 _Out_ DXGI_ADAPTER_DESC1 * pDesc
IDXGIAdapter1 _In_ REFIID _COM_Outptr_ void ** ppParent
IDXGIAdapter1 _In_ REFGUID _Out_ LARGE_INTEGER * pUMDVersion
IDXGIAdapter1 UINT _COM_Outptr_ IDXGIOutput ** ppOutput
IDXGIAdapter1 _In_ REFGUID _In_opt_ const IUnknown * pUnknown
IDXGIAdapter1 _In_ REFGUID InterfaceName
IDXGIAdapter1 _In_ REFGUID _Inout_ UINT * pDataSize
IDXGIAdapter1 _In_ REFGUID _Inout_ UINT _Out_writes_bytes_ pDataSize void * pData
IDXGIAdapter1 UINT Output
IDXGIAdapter1 _In_ REFIID riid
IDXGIAdapter1 _In_ REFGUID UINT _In_reads_bytes_(DataSize) const void *pData)
BEGIN_INTERFACE(IDXGIAdapter1 *This, REFIID riid, _COM_Outptr_ void **ppvObject)
IDXGIAdapter1 _Out_ DXGI_ADAPTER_DESC * pDesc
IDXGIAdapter1 _In_ REFGUID UINT DataSize
IDXGIAdapter _In_ REFIID _COM_Outptr_ void ** ppParent
IDXGIAdapter _In_ REFGUID InterfaceName
IDXGIAdapter _In_ REFGUID _Inout_ UINT * pDataSize
IDXGIAdapter _In_ REFGUID Name
IDXGIAdapter _In_ REFIID riid
IDXGIAdapter _In_ REFGUID _In_opt_ const IUnknown * pUnknown
IDXGIAdapter _In_ REFGUID UINT _In_reads_bytes_(DataSize) const void *pData)
IDXGIAdapter _Out_ DXGI_ADAPTER_DESC * pDesc
BEGIN_INTERFACE(IDXGIAdapter *This, REFIID riid, _COM_Outptr_ void **ppvObject)
IDXGIAdapter UINT _COM_Outptr_ IDXGIOutput ** ppOutput
IDXGIAdapter _In_ REFGUID UINT DataSize
IDXGIAdapter _In_ REFGUID _Inout_ UINT _Out_writes_bytes_ pDataSize void * pData
IDXGIAdapter _In_ REFGUID _Out_ LARGE_INTEGER * pUMDVersion
IDXGIFactory1 HWND WindowHandle
IDXGIFactory1 HMODULE _COM_Outptr_ IDXGIAdapter ** ppAdapter
IDXGIFactory1 _In_ REFGUID _In_opt_ const IUnknown * pUnknown
IDXGIFactory1 UINT Adapter
IDXGIFactory1 _Out_ HWND * pWindowHandle
IDXGIFactory1 _In_ REFIID _COM_Outptr_ void ** ppParent
IDXGIFactory1 _In_ IUnknown _In_ DXGI_SWAP_CHAIN_DESC * pDesc
IDXGIFactory1 HWND UINT Flags
IDXGIFactory1 _In_ REFGUID Name
IDXGIFactory1 HMODULE Module
IDXGIFactory1 _In_ REFGUID UINT DataSize
IDXGIFactory1 _In_ REFGUID UINT _In_reads_bytes_(DataSize) const void *pData)
IDXGIFactory1 _In_ IUnknown _In_ DXGI_SWAP_CHAIN_DESC _COM_Outptr_ IDXGISwapChain ** ppSwapChain
IDXGIFactory1 _In_ REFIID riid
IDXGIFactory1 _In_ REFGUID _Inout_ UINT _Out_writes_bytes_ pDataSize void * pData
IDXGIFactory1 _In_ IUnknown * pDevice
IDXGIFactory1 UINT _COM_Outptr_ IDXGIAdapter ** ppAdapter
BEGIN_INTERFACE(IDXGIFactory1 *This, REFIID riid, _COM_Outptr_ void **ppvObject)
IDXGIFactory1 _In_ REFGUID _Inout_ UINT * pDataSize
IDXGIFactory1 UINT _COM_Outptr_ IDXGIAdapter1 ** ppAdapter
IDXGIFactory _In_ IUnknown _In_ DXGI_SWAP_CHAIN_DESC _COM_Outptr_ IDXGISwapChain ** ppSwapChain
IDXGIFactory _Out_ HWND * pWindowHandle
IDXGIFactory UINT Adapter
IDXGIFactory _In_ IUnknown _In_ DXGI_SWAP_CHAIN_DESC * pDesc
IDXGIFactory HWND WindowHandle
IDXGIFactory _In_ REFGUID _In_opt_ const IUnknown * pUnknown
IDXGIFactory _In_ REFGUID UINT DataSize
IDXGIFactory _In_ REFIID riid
IDXGIFactory _In_ REFGUID _Inout_ UINT * pDataSize
IDXGIFactory HMODULE Module
BEGIN_INTERFACE(IDXGIFactory *This, REFIID riid, _COM_Outptr_ void **ppvObject)
IDXGIFactory _In_ REFGUID UINT _In_reads_bytes_(DataSize) const void *pData)
IDXGIFactory _In_ REFGUID Name
IDXGIFactory _In_ IUnknown * pDevice
IDXGIFactory UINT _COM_Outptr_ IDXGIAdapter ** ppAdapter
IDXGIFactory _In_ REFIID _COM_Outptr_ void ** ppParent
IDXGIFactory _In_ REFGUID _Inout_ UINT _Out_writes_bytes_ pDataSize void * pData
IDXGIFactory HMODULE _COM_Outptr_ IDXGIAdapter ** ppAdapter
IDXGIFactory HWND UINT Flags
IDXGIObject _In_ REFGUID UINT _In_reads_bytes_(DataSize) const void *pData)
IDXGIObject _In_ REFGUID Name
IDXGIObject _In_ REFIID riid
IDXGIObject _In_ REFGUID _In_opt_ const IUnknown * pUnknown
IDXGIObject _In_ REFGUID UINT DataSize
IDXGIObject _In_ REFIID _COM_Outptr_ void ** ppParent
IDXGIObject _In_ REFGUID _Inout_ UINT * pDataSize
IDXGIObject _In_ REFGUID _Inout_ UINT _Out_writes_bytes_ pDataSize void * pData
BEGIN_INTERFACE(IDXGIObject *This, REFIID riid, _COM_Outptr_ void **ppvObject)
BEGIN_INTERFACE(IUnknown *This, REFIID riid, _COM_Outptr_ void **ppvObject)
struct _LARGE_INTEGER::@6 u
struct _LARGE_INTEGER::@5 DUMMYSTRUCTNAME