master
   1/*** Autogenerated by WIDL 10.4 from include/d3d12sdklayers.idl - Do not edit ***/
   2
   3#ifdef _WIN32
   4#ifndef __REQUIRED_RPCNDR_H_VERSION__
   5#define __REQUIRED_RPCNDR_H_VERSION__ 475
   6#endif
   7#include <rpc.h>
   8#include <rpcndr.h>
   9#endif
  10
  11#ifndef COM_NO_WINDOWS_H
  12#include <windows.h>
  13#include <ole2.h>
  14#endif
  15
  16#ifndef __d3d12sdklayers_h__
  17#define __d3d12sdklayers_h__
  18
  19/* Forward declarations */
  20
  21#ifndef __ID3D12Debug_FWD_DEFINED__
  22#define __ID3D12Debug_FWD_DEFINED__
  23typedef interface ID3D12Debug ID3D12Debug;
  24#ifdef __cplusplus
  25interface ID3D12Debug;
  26#endif /* __cplusplus */
  27#endif
  28
  29#ifndef __ID3D12Debug1_FWD_DEFINED__
  30#define __ID3D12Debug1_FWD_DEFINED__
  31typedef interface ID3D12Debug1 ID3D12Debug1;
  32#ifdef __cplusplus
  33interface ID3D12Debug1;
  34#endif /* __cplusplus */
  35#endif
  36
  37#ifndef __ID3D12Debug2_FWD_DEFINED__
  38#define __ID3D12Debug2_FWD_DEFINED__
  39typedef interface ID3D12Debug2 ID3D12Debug2;
  40#ifdef __cplusplus
  41interface ID3D12Debug2;
  42#endif /* __cplusplus */
  43#endif
  44
  45#ifndef __ID3D12Debug3_FWD_DEFINED__
  46#define __ID3D12Debug3_FWD_DEFINED__
  47typedef interface ID3D12Debug3 ID3D12Debug3;
  48#ifdef __cplusplus
  49interface ID3D12Debug3;
  50#endif /* __cplusplus */
  51#endif
  52
  53#ifndef __ID3D12Debug4_FWD_DEFINED__
  54#define __ID3D12Debug4_FWD_DEFINED__
  55typedef interface ID3D12Debug4 ID3D12Debug4;
  56#ifdef __cplusplus
  57interface ID3D12Debug4;
  58#endif /* __cplusplus */
  59#endif
  60
  61#ifndef __ID3D12Debug5_FWD_DEFINED__
  62#define __ID3D12Debug5_FWD_DEFINED__
  63typedef interface ID3D12Debug5 ID3D12Debug5;
  64#ifdef __cplusplus
  65interface ID3D12Debug5;
  66#endif /* __cplusplus */
  67#endif
  68
  69#ifndef __ID3D12DebugDevice_FWD_DEFINED__
  70#define __ID3D12DebugDevice_FWD_DEFINED__
  71typedef interface ID3D12DebugDevice ID3D12DebugDevice;
  72#ifdef __cplusplus
  73interface ID3D12DebugDevice;
  74#endif /* __cplusplus */
  75#endif
  76
  77#ifndef __ID3D12DebugDevice1_FWD_DEFINED__
  78#define __ID3D12DebugDevice1_FWD_DEFINED__
  79typedef interface ID3D12DebugDevice1 ID3D12DebugDevice1;
  80#ifdef __cplusplus
  81interface ID3D12DebugDevice1;
  82#endif /* __cplusplus */
  83#endif
  84
  85#ifndef __ID3D12DebugDevice2_FWD_DEFINED__
  86#define __ID3D12DebugDevice2_FWD_DEFINED__
  87typedef interface ID3D12DebugDevice2 ID3D12DebugDevice2;
  88#ifdef __cplusplus
  89interface ID3D12DebugDevice2;
  90#endif /* __cplusplus */
  91#endif
  92
  93#ifndef __ID3D12SharingContract_FWD_DEFINED__
  94#define __ID3D12SharingContract_FWD_DEFINED__
  95typedef interface ID3D12SharingContract ID3D12SharingContract;
  96#ifdef __cplusplus
  97interface ID3D12SharingContract;
  98#endif /* __cplusplus */
  99#endif
 100
 101#ifndef __ID3D12InfoQueue_FWD_DEFINED__
 102#define __ID3D12InfoQueue_FWD_DEFINED__
 103typedef interface ID3D12InfoQueue ID3D12InfoQueue;
 104#ifdef __cplusplus
 105interface ID3D12InfoQueue;
 106#endif /* __cplusplus */
 107#endif
 108
 109#ifndef __ID3D12InfoQueue1_FWD_DEFINED__
 110#define __ID3D12InfoQueue1_FWD_DEFINED__
 111typedef interface ID3D12InfoQueue1 ID3D12InfoQueue1;
 112#ifdef __cplusplus
 113interface ID3D12InfoQueue1;
 114#endif /* __cplusplus */
 115#endif
 116
 117/* Headers for imported files */
 118
 119#include <d3d12.h>
 120
 121#ifdef __cplusplus
 122extern "C" {
 123#endif
 124
 125#ifdef WINE_NO_UNICODE_MACROS
 126#undef GetMessage
 127#endif
 128typedef enum D3D12_MESSAGE_CATEGORY {
 129    D3D12_MESSAGE_CATEGORY_APPLICATION_DEFINED = 0x0,
 130    D3D12_MESSAGE_CATEGORY_MISCELLANEOUS = 0x1,
 131    D3D12_MESSAGE_CATEGORY_INITIALIZATION = 0x2,
 132    D3D12_MESSAGE_CATEGORY_CLEANUP = 0x3,
 133    D3D12_MESSAGE_CATEGORY_COMPILATION = 0x4,
 134    D3D12_MESSAGE_CATEGORY_STATE_CREATION = 0x5,
 135    D3D12_MESSAGE_CATEGORY_STATE_SETTING = 0x6,
 136    D3D12_MESSAGE_CATEGORY_STATE_GETTING = 0x7,
 137    D3D12_MESSAGE_CATEGORY_RESOURCE_MANIPULATION = 0x8,
 138    D3D12_MESSAGE_CATEGORY_EXECUTION = 0x9,
 139    D3D12_MESSAGE_CATEGORY_SHADER = 0xa
 140} D3D12_MESSAGE_CATEGORY;
 141typedef enum D3D12_MESSAGE_SEVERITY {
 142    D3D12_MESSAGE_SEVERITY_CORRUPTION = 0x0,
 143    D3D12_MESSAGE_SEVERITY_ERROR = 0x1,
 144    D3D12_MESSAGE_SEVERITY_WARNING = 0x2,
 145    D3D12_MESSAGE_SEVERITY_INFO = 0x3,
 146    D3D12_MESSAGE_SEVERITY_MESSAGE = 0x4
 147} D3D12_MESSAGE_SEVERITY;
 148typedef enum D3D12_MESSAGE_ID {
 149    D3D12_MESSAGE_ID_UNKNOWN = 0x0,
 150    D3D12_MESSAGE_ID_STRING_FROM_APPLICATION = 0x1,
 151    D3D12_MESSAGE_ID_CORRUPTED_THIS = 0x2,
 152    D3D12_MESSAGE_ID_CORRUPTED_PARAMETER1 = 0x3,
 153    D3D12_MESSAGE_ID_CORRUPTED_PARAMETER2 = 0x4,
 154    D3D12_MESSAGE_ID_CORRUPTED_PARAMETER3 = 0x5,
 155    D3D12_MESSAGE_ID_CORRUPTED_PARAMETER4 = 0x6,
 156    D3D12_MESSAGE_ID_CORRUPTED_PARAMETER5 = 0x7,
 157    D3D12_MESSAGE_ID_CORRUPTED_PARAMETER6 = 0x8,
 158    D3D12_MESSAGE_ID_CORRUPTED_PARAMETER7 = 0x9,
 159    D3D12_MESSAGE_ID_CORRUPTED_PARAMETER8 = 0xa,
 160    D3D12_MESSAGE_ID_CORRUPTED_PARAMETER9 = 0xb,
 161    D3D12_MESSAGE_ID_CORRUPTED_PARAMETER10 = 0xc,
 162    D3D12_MESSAGE_ID_CORRUPTED_PARAMETER11 = 0xd,
 163    D3D12_MESSAGE_ID_CORRUPTED_PARAMETER12 = 0xe,
 164    D3D12_MESSAGE_ID_CORRUPTED_PARAMETER13 = 0xf,
 165    D3D12_MESSAGE_ID_CORRUPTED_PARAMETER14 = 0x10,
 166    D3D12_MESSAGE_ID_CORRUPTED_PARAMETER15 = 0x11,
 167    D3D12_MESSAGE_ID_CORRUPTED_MULTITHREADING = 0x12,
 168    D3D12_MESSAGE_ID_MESSAGE_REPORTING_OUTOFMEMORY = 0x13,
 169    D3D12_MESSAGE_ID_GETPRIVATEDATA_MOREDATA = 0x14,
 170    D3D12_MESSAGE_ID_SETPRIVATEDATA_INVALIDFREEDATA = 0x15,
 171    D3D12_MESSAGE_ID_SETPRIVATEDATA_CHANGINGPARAMS = 0x18,
 172    D3D12_MESSAGE_ID_SETPRIVATEDATA_OUTOFMEMORY = 0x19,
 173    D3D12_MESSAGE_ID_CREATESHADERRESOURCEVIEW_UNRECOGNIZEDFORMAT = 0x1a,
 174    D3D12_MESSAGE_ID_CREATESHADERRESOURCEVIEW_INVALIDDESC = 0x1b,
 175    D3D12_MESSAGE_ID_CREATESHADERRESOURCEVIEW_INVALIDFORMAT = 0x1c,
 176    D3D12_MESSAGE_ID_CREATESHADERRESOURCEVIEW_INVALIDVIDEOPLANESLICE = 0x1d,
 177    D3D12_MESSAGE_ID_CREATESHADERRESOURCEVIEW_INVALIDPLANESLICE = 0x1e,
 178    D3D12_MESSAGE_ID_CREATESHADERRESOURCEVIEW_INVALIDDIMENSIONS = 0x1f,
 179    D3D12_MESSAGE_ID_CREATESHADERRESOURCEVIEW_INVALIDRESOURCE = 0x20,
 180    D3D12_MESSAGE_ID_CREATERENDERTARGETVIEW_UNRECOGNIZEDFORMAT = 0x23,
 181    D3D12_MESSAGE_ID_CREATERENDERTARGETVIEW_UNSUPPORTEDFORMAT = 0x24,
 182    D3D12_MESSAGE_ID_CREATERENDERTARGETVIEW_INVALIDDESC = 0x25,
 183    D3D12_MESSAGE_ID_CREATERENDERTARGETVIEW_INVALIDFORMAT = 0x26,
 184    D3D12_MESSAGE_ID_CREATERENDERTARGETVIEW_INVALIDVIDEOPLANESLICE = 0x27,
 185    D3D12_MESSAGE_ID_CREATERENDERTARGETVIEW_INVALIDPLANESLICE = 0x28,
 186    D3D12_MESSAGE_ID_CREATERENDERTARGETVIEW_INVALIDDIMENSIONS = 0x29,
 187    D3D12_MESSAGE_ID_CREATERENDERTARGETVIEW_INVALIDRESOURCE = 0x2a,
 188    D3D12_MESSAGE_ID_CREATEDEPTHSTENCILVIEW_UNRECOGNIZEDFORMAT = 0x2d,
 189    D3D12_MESSAGE_ID_CREATEDEPTHSTENCILVIEW_INVALIDDESC = 0x2e,
 190    D3D12_MESSAGE_ID_CREATEDEPTHSTENCILVIEW_INVALIDFORMAT = 0x2f,
 191    D3D12_MESSAGE_ID_CREATEDEPTHSTENCILVIEW_INVALIDDIMENSIONS = 0x30,
 192    D3D12_MESSAGE_ID_CREATEDEPTHSTENCILVIEW_INVALIDRESOURCE = 0x31,
 193    D3D12_MESSAGE_ID_CREATEINPUTLAYOUT_OUTOFMEMORY = 0x34,
 194    D3D12_MESSAGE_ID_CREATEINPUTLAYOUT_TOOMANYELEMENTS = 0x35,
 195    D3D12_MESSAGE_ID_CREATEINPUTLAYOUT_INVALIDFORMAT = 0x36,
 196    D3D12_MESSAGE_ID_CREATEINPUTLAYOUT_INCOMPATIBLEFORMAT = 0x37,
 197    D3D12_MESSAGE_ID_CREATEINPUTLAYOUT_INVALIDSLOT = 0x38,
 198    D3D12_MESSAGE_ID_CREATEINPUTLAYOUT_INVALIDINPUTSLOTCLASS = 0x39,
 199    D3D12_MESSAGE_ID_CREATEINPUTLAYOUT_STEPRATESLOTCLASSMISMATCH = 0x3a,
 200    D3D12_MESSAGE_ID_CREATEINPUTLAYOUT_INVALIDSLOTCLASSCHANGE = 0x3b,
 201    D3D12_MESSAGE_ID_CREATEINPUTLAYOUT_INVALIDSTEPRATECHANGE = 0x3c,
 202    D3D12_MESSAGE_ID_CREATEINPUTLAYOUT_INVALIDALIGNMENT = 0x3d,
 203    D3D12_MESSAGE_ID_CREATEINPUTLAYOUT_DUPLICATESEMANTIC = 0x3e,
 204    D3D12_MESSAGE_ID_CREATEINPUTLAYOUT_UNPARSEABLEINPUTSIGNATURE = 0x3f,
 205    D3D12_MESSAGE_ID_CREATEINPUTLAYOUT_NULLSEMANTIC = 0x40,
 206    D3D12_MESSAGE_ID_CREATEINPUTLAYOUT_MISSINGELEMENT = 0x41,
 207    D3D12_MESSAGE_ID_CREATEVERTEXSHADER_OUTOFMEMORY = 0x42,
 208    D3D12_MESSAGE_ID_CREATEVERTEXSHADER_INVALIDSHADERBYTECODE = 0x43,
 209    D3D12_MESSAGE_ID_CREATEVERTEXSHADER_INVALIDSHADERTYPE = 0x44,
 210    D3D12_MESSAGE_ID_CREATEGEOMETRYSHADER_OUTOFMEMORY = 0x45,
 211    D3D12_MESSAGE_ID_CREATEGEOMETRYSHADER_INVALIDSHADERBYTECODE = 0x46,
 212    D3D12_MESSAGE_ID_CREATEGEOMETRYSHADER_INVALIDSHADERTYPE = 0x47,
 213    D3D12_MESSAGE_ID_CREATEGEOMETRYSHADERWITHSTREAMOUTPUT_OUTOFMEMORY = 0x48,
 214    D3D12_MESSAGE_ID_CREATEGEOMETRYSHADERWITHSTREAMOUTPUT_INVALIDSHADERBYTECODE = 0x49,
 215    D3D12_MESSAGE_ID_CREATEGEOMETRYSHADERWITHSTREAMOUTPUT_INVALIDSHADERTYPE = 0x4a,
 216    D3D12_MESSAGE_ID_CREATEGEOMETRYSHADERWITHSTREAMOUTPUT_INVALIDNUMENTRIES = 0x4b,
 217    D3D12_MESSAGE_ID_CREATEGEOMETRYSHADERWITHSTREAMOUTPUT_OUTPUTSTREAMSTRIDEUNUSED = 0x4c,
 218    D3D12_MESSAGE_ID_CREATEGEOMETRYSHADERWITHSTREAMOUTPUT_OUTPUTSLOT0EXPECTED = 0x4f,
 219    D3D12_MESSAGE_ID_CREATEGEOMETRYSHADERWITHSTREAMOUTPUT_INVALIDOUTPUTSLOT = 0x50,
 220    D3D12_MESSAGE_ID_CREATEGEOMETRYSHADERWITHSTREAMOUTPUT_ONLYONEELEMENTPERSLOT = 0x51,
 221    D3D12_MESSAGE_ID_CREATEGEOMETRYSHADERWITHSTREAMOUTPUT_INVALIDCOMPONENTCOUNT = 0x52,
 222    D3D12_MESSAGE_ID_CREATEGEOMETRYSHADERWITHSTREAMOUTPUT_INVALIDSTARTCOMPONENTANDCOMPONENTCOUNT = 0x53,
 223    D3D12_MESSAGE_ID_CREATEGEOMETRYSHADERWITHSTREAMOUTPUT_INVALIDGAPDEFINITION = 0x54,
 224    D3D12_MESSAGE_ID_CREATEGEOMETRYSHADERWITHSTREAMOUTPUT_REPEATEDOUTPUT = 0x55,
 225    D3D12_MESSAGE_ID_CREATEGEOMETRYSHADERWITHSTREAMOUTPUT_INVALIDOUTPUTSTREAMSTRIDE = 0x56,
 226    D3D12_MESSAGE_ID_CREATEGEOMETRYSHADERWITHSTREAMOUTPUT_MISSINGSEMANTIC = 0x57,
 227    D3D12_MESSAGE_ID_CREATEGEOMETRYSHADERWITHSTREAMOUTPUT_MASKMISMATCH = 0x58,
 228    D3D12_MESSAGE_ID_CREATEGEOMETRYSHADERWITHSTREAMOUTPUT_CANTHAVEONLYGAPS = 0x59,
 229    D3D12_MESSAGE_ID_CREATEGEOMETRYSHADERWITHSTREAMOUTPUT_DECLTOOCOMPLEX = 0x5a,
 230    D3D12_MESSAGE_ID_CREATEGEOMETRYSHADERWITHSTREAMOUTPUT_MISSINGOUTPUTSIGNATURE = 0x5b,
 231    D3D12_MESSAGE_ID_CREATEPIXELSHADER_OUTOFMEMORY = 0x5c,
 232    D3D12_MESSAGE_ID_CREATEPIXELSHADER_INVALIDSHADERBYTECODE = 0x5d,
 233    D3D12_MESSAGE_ID_CREATEPIXELSHADER_INVALIDSHADERTYPE = 0x5e,
 234    D3D12_MESSAGE_ID_CREATERASTERIZERSTATE_INVALIDFILLMODE = 0x5f,
 235    D3D12_MESSAGE_ID_CREATERASTERIZERSTATE_INVALIDCULLMODE = 0x60,
 236    D3D12_MESSAGE_ID_CREATERASTERIZERSTATE_INVALIDDEPTHBIASCLAMP = 0x61,
 237    D3D12_MESSAGE_ID_CREATERASTERIZERSTATE_INVALIDSLOPESCALEDDEPTHBIAS = 0x62,
 238    D3D12_MESSAGE_ID_CREATEDEPTHSTENCILSTATE_INVALIDDEPTHWRITEMASK = 0x64,
 239    D3D12_MESSAGE_ID_CREATEDEPTHSTENCILSTATE_INVALIDDEPTHFUNC = 0x65,
 240    D3D12_MESSAGE_ID_CREATEDEPTHSTENCILSTATE_INVALIDFRONTFACESTENCILFAILOP = 0x66,
 241    D3D12_MESSAGE_ID_CREATEDEPTHSTENCILSTATE_INVALIDFRONTFACESTENCILZFAILOP = 0x67,
 242    D3D12_MESSAGE_ID_CREATEDEPTHSTENCILSTATE_INVALIDFRONTFACESTENCILPASSOP = 0x68,
 243    D3D12_MESSAGE_ID_CREATEDEPTHSTENCILSTATE_INVALIDFRONTFACESTENCILFUNC = 0x69,
 244    D3D12_MESSAGE_ID_CREATEDEPTHSTENCILSTATE_INVALIDBACKFACESTENCILFAILOP = 0x6a,
 245    D3D12_MESSAGE_ID_CREATEDEPTHSTENCILSTATE_INVALIDBACKFACESTENCILZFAILOP = 0x6b,
 246    D3D12_MESSAGE_ID_CREATEDEPTHSTENCILSTATE_INVALIDBACKFACESTENCILPASSOP = 0x6c,
 247    D3D12_MESSAGE_ID_CREATEDEPTHSTENCILSTATE_INVALIDBACKFACESTENCILFUNC = 0x6d,
 248    D3D12_MESSAGE_ID_CREATEBLENDSTATE_INVALIDSRCBLEND = 0x6f,
 249    D3D12_MESSAGE_ID_CREATEBLENDSTATE_INVALIDDESTBLEND = 0x70,
 250    D3D12_MESSAGE_ID_CREATEBLENDSTATE_INVALIDBLENDOP = 0x71,
 251    D3D12_MESSAGE_ID_CREATEBLENDSTATE_INVALIDSRCBLENDALPHA = 0x72,
 252    D3D12_MESSAGE_ID_CREATEBLENDSTATE_INVALIDDESTBLENDALPHA = 0x73,
 253    D3D12_MESSAGE_ID_CREATEBLENDSTATE_INVALIDBLENDOPALPHA = 0x74,
 254    D3D12_MESSAGE_ID_CREATEBLENDSTATE_INVALIDRENDERTARGETWRITEMASK = 0x75,
 255    D3D12_MESSAGE_ID_CLEARDEPTHSTENCILVIEW_INVALID = 0x87,
 256    D3D12_MESSAGE_ID_COMMAND_LIST_DRAW_ROOT_SIGNATURE_NOT_SET = 0xc8,
 257    D3D12_MESSAGE_ID_COMMAND_LIST_DRAW_ROOT_SIGNATURE_MISMATCH = 0xc9,
 258    D3D12_MESSAGE_ID_COMMAND_LIST_DRAW_VERTEX_BUFFER_NOT_SET = 0xca,
 259    D3D12_MESSAGE_ID_COMMAND_LIST_DRAW_VERTEX_BUFFER_STRIDE_TOO_SMALL = 0xd1,
 260    D3D12_MESSAGE_ID_COMMAND_LIST_DRAW_VERTEX_BUFFER_TOO_SMALL = 0xd2,
 261    D3D12_MESSAGE_ID_COMMAND_LIST_DRAW_INDEX_BUFFER_NOT_SET = 0xd3,
 262    D3D12_MESSAGE_ID_COMMAND_LIST_DRAW_INDEX_BUFFER_FORMAT_INVALID = 0xd4,
 263    D3D12_MESSAGE_ID_COMMAND_LIST_DRAW_INDEX_BUFFER_TOO_SMALL = 0xd5,
 264    D3D12_MESSAGE_ID_COMMAND_LIST_DRAW_INVALID_PRIMITIVETOPOLOGY = 0xdb,
 265    D3D12_MESSAGE_ID_COMMAND_LIST_DRAW_VERTEX_STRIDE_UNALIGNED = 0xdd,
 266    D3D12_MESSAGE_ID_COMMAND_LIST_DRAW_INDEX_OFFSET_UNALIGNED = 0xde,
 267    D3D12_MESSAGE_ID_DEVICE_REMOVAL_PROCESS_AT_FAULT = 0xe8,
 268    D3D12_MESSAGE_ID_DEVICE_REMOVAL_PROCESS_POSSIBLY_AT_FAULT = 0xe9,
 269    D3D12_MESSAGE_ID_DEVICE_REMOVAL_PROCESS_NOT_AT_FAULT = 0xea,
 270    D3D12_MESSAGE_ID_CREATEINPUTLAYOUT_TRAILING_DIGIT_IN_SEMANTIC = 0xef,
 271    D3D12_MESSAGE_ID_CREATEGEOMETRYSHADERWITHSTREAMOUTPUT_TRAILING_DIGIT_IN_SEMANTIC = 0xf0,
 272    D3D12_MESSAGE_ID_CREATEINPUTLAYOUT_TYPE_MISMATCH = 0xf5,
 273    D3D12_MESSAGE_ID_CREATEINPUTLAYOUT_EMPTY_LAYOUT = 0xfd,
 274    D3D12_MESSAGE_ID_LIVE_OBJECT_SUMMARY = 0xff,
 275    D3D12_MESSAGE_ID_LIVE_DEVICE = 0x112,
 276    D3D12_MESSAGE_ID_LIVE_SWAPCHAIN = 0x113,
 277    D3D12_MESSAGE_ID_CREATEDEPTHSTENCILVIEW_INVALIDFLAGS = 0x114,
 278    D3D12_MESSAGE_ID_CREATEVERTEXSHADER_INVALIDCLASSLINKAGE = 0x115,
 279    D3D12_MESSAGE_ID_CREATEGEOMETRYSHADER_INVALIDCLASSLINKAGE = 0x116,
 280    D3D12_MESSAGE_ID_CREATEGEOMETRYSHADERWITHSTREAMOUTPUT_INVALIDSTREAMTORASTERIZER = 0x118,
 281    D3D12_MESSAGE_ID_CREATEPIXELSHADER_INVALIDCLASSLINKAGE = 0x11b,
 282    D3D12_MESSAGE_ID_CREATEGEOMETRYSHADERWITHSTREAMOUTPUT_INVALIDSTREAM = 0x11c,
 283    D3D12_MESSAGE_ID_CREATEGEOMETRYSHADERWITHSTREAMOUTPUT_UNEXPECTEDENTRIES = 0x11d,
 284    D3D12_MESSAGE_ID_CREATEGEOMETRYSHADERWITHSTREAMOUTPUT_UNEXPECTEDSTRIDES = 0x11e,
 285    D3D12_MESSAGE_ID_CREATEGEOMETRYSHADERWITHSTREAMOUTPUT_INVALIDNUMSTRIDES = 0x11f,
 286    D3D12_MESSAGE_ID_CREATEHULLSHADER_OUTOFMEMORY = 0x121,
 287    D3D12_MESSAGE_ID_CREATEHULLSHADER_INVALIDSHADERBYTECODE = 0x122,
 288    D3D12_MESSAGE_ID_CREATEHULLSHADER_INVALIDSHADERTYPE = 0x123,
 289    D3D12_MESSAGE_ID_CREATEHULLSHADER_INVALIDCLASSLINKAGE = 0x124,
 290    D3D12_MESSAGE_ID_CREATEDOMAINSHADER_OUTOFMEMORY = 0x126,
 291    D3D12_MESSAGE_ID_CREATEDOMAINSHADER_INVALIDSHADERBYTECODE = 0x127,
 292    D3D12_MESSAGE_ID_CREATEDOMAINSHADER_INVALIDSHADERTYPE = 0x128,
 293    D3D12_MESSAGE_ID_CREATEDOMAINSHADER_INVALIDCLASSLINKAGE = 0x129,
 294    D3D12_MESSAGE_ID_RESOURCE_UNMAP_NOTMAPPED = 0x136,
 295    D3D12_MESSAGE_ID_DEVICE_CHECKFEATURESUPPORT_MISMATCHED_DATA_SIZE = 0x13e,
 296    D3D12_MESSAGE_ID_CREATECOMPUTESHADER_OUTOFMEMORY = 0x141,
 297    D3D12_MESSAGE_ID_CREATECOMPUTESHADER_INVALIDSHADERBYTECODE = 0x142,
 298    D3D12_MESSAGE_ID_CREATECOMPUTESHADER_INVALIDCLASSLINKAGE = 0x143,
 299    D3D12_MESSAGE_ID_DEVICE_CREATEVERTEXSHADER_DOUBLEFLOATOPSNOTSUPPORTED = 0x14b,
 300    D3D12_MESSAGE_ID_DEVICE_CREATEHULLSHADER_DOUBLEFLOATOPSNOTSUPPORTED = 0x14c,
 301    D3D12_MESSAGE_ID_DEVICE_CREATEDOMAINSHADER_DOUBLEFLOATOPSNOTSUPPORTED = 0x14d,
 302    D3D12_MESSAGE_ID_DEVICE_CREATEGEOMETRYSHADER_DOUBLEFLOATOPSNOTSUPPORTED = 0x14e,
 303    D3D12_MESSAGE_ID_DEVICE_CREATEGEOMETRYSHADERWITHSTREAMOUTPUT_DOUBLEFLOATOPSNOTSUPPORTED = 0x14f,
 304    D3D12_MESSAGE_ID_DEVICE_CREATEPIXELSHADER_DOUBLEFLOATOPSNOTSUPPORTED = 0x150,
 305    D3D12_MESSAGE_ID_DEVICE_CREATECOMPUTESHADER_DOUBLEFLOATOPSNOTSUPPORTED = 0x151,
 306    D3D12_MESSAGE_ID_CREATEUNORDEREDACCESSVIEW_INVALIDRESOURCE = 0x154,
 307    D3D12_MESSAGE_ID_CREATEUNORDEREDACCESSVIEW_INVALIDDESC = 0x155,
 308    D3D12_MESSAGE_ID_CREATEUNORDEREDACCESSVIEW_INVALIDFORMAT = 0x156,
 309    D3D12_MESSAGE_ID_CREATEUNORDEREDACCESSVIEW_INVALIDVIDEOPLANESLICE = 0x157,
 310    D3D12_MESSAGE_ID_CREATEUNORDEREDACCESSVIEW_INVALIDPLANESLICE = 0x158,
 311    D3D12_MESSAGE_ID_CREATEUNORDEREDACCESSVIEW_INVALIDDIMENSIONS = 0x159,
 312    D3D12_MESSAGE_ID_CREATEUNORDEREDACCESSVIEW_UNRECOGNIZEDFORMAT = 0x15a,
 313    D3D12_MESSAGE_ID_CREATEUNORDEREDACCESSVIEW_INVALIDFLAGS = 0x162,
 314    D3D12_MESSAGE_ID_CREATERASTERIZERSTATE_INVALIDFORCEDSAMPLECOUNT = 0x191,
 315    D3D12_MESSAGE_ID_CREATEBLENDSTATE_INVALIDLOGICOPS = 0x193,
 316    D3D12_MESSAGE_ID_DEVICE_CREATEVERTEXSHADER_DOUBLEEXTENSIONSNOTSUPPORTED = 0x19a,
 317    D3D12_MESSAGE_ID_DEVICE_CREATEHULLSHADER_DOUBLEEXTENSIONSNOTSUPPORTED = 0x19c,
 318    D3D12_MESSAGE_ID_DEVICE_CREATEDOMAINSHADER_DOUBLEEXTENSIONSNOTSUPPORTED = 0x19e,
 319    D3D12_MESSAGE_ID_DEVICE_CREATEGEOMETRYSHADER_DOUBLEEXTENSIONSNOTSUPPORTED = 0x1a0,
 320    D3D12_MESSAGE_ID_DEVICE_CREATEGEOMETRYSHADERWITHSTREAMOUTPUT_DOUBLEEXTENSIONSNOTSUPPORTED = 0x1a2,
 321    D3D12_MESSAGE_ID_DEVICE_CREATEPIXELSHADER_DOUBLEEXTENSIONSNOTSUPPORTED = 0x1a4,
 322    D3D12_MESSAGE_ID_DEVICE_CREATECOMPUTESHADER_DOUBLEEXTENSIONSNOTSUPPORTED = 0x1a6,
 323    D3D12_MESSAGE_ID_DEVICE_CREATEVERTEXSHADER_UAVSNOTSUPPORTED = 0x1a9,
 324    D3D12_MESSAGE_ID_DEVICE_CREATEHULLSHADER_UAVSNOTSUPPORTED = 0x1aa,
 325    D3D12_MESSAGE_ID_DEVICE_CREATEDOMAINSHADER_UAVSNOTSUPPORTED = 0x1ab,
 326    D3D12_MESSAGE_ID_DEVICE_CREATEGEOMETRYSHADER_UAVSNOTSUPPORTED = 0x1ac,
 327    D3D12_MESSAGE_ID_DEVICE_CREATEGEOMETRYSHADERWITHSTREAMOUTPUT_UAVSNOTSUPPORTED = 0x1ad,
 328    D3D12_MESSAGE_ID_DEVICE_CREATEPIXELSHADER_UAVSNOTSUPPORTED = 0x1ae,
 329    D3D12_MESSAGE_ID_DEVICE_CREATECOMPUTESHADER_UAVSNOTSUPPORTED = 0x1af,
 330    D3D12_MESSAGE_ID_DEVICE_CLEARVIEW_INVALIDSOURCERECT = 0x1bf,
 331    D3D12_MESSAGE_ID_DEVICE_CLEARVIEW_EMPTYRECT = 0x1c0,
 332    D3D12_MESSAGE_ID_UPDATETILEMAPPINGS_INVALID_PARAMETER = 0x1ed,
 333    D3D12_MESSAGE_ID_COPYTILEMAPPINGS_INVALID_PARAMETER = 0x1ee,
 334    D3D12_MESSAGE_ID_CREATEDEVICE_INVALIDARGS = 0x1fa,
 335    D3D12_MESSAGE_ID_CREATEDEVICE_WARNING = 0x1fb,
 336    D3D12_MESSAGE_ID_RESOURCE_BARRIER_INVALID_TYPE = 0x207,
 337    D3D12_MESSAGE_ID_RESOURCE_BARRIER_NULL_POINTER = 0x208,
 338    D3D12_MESSAGE_ID_RESOURCE_BARRIER_INVALID_SUBRESOURCE = 0x209,
 339    D3D12_MESSAGE_ID_RESOURCE_BARRIER_RESERVED_BITS = 0x20a,
 340    D3D12_MESSAGE_ID_RESOURCE_BARRIER_MISSING_BIND_FLAGS = 0x20b,
 341    D3D12_MESSAGE_ID_RESOURCE_BARRIER_MISMATCHING_MISC_FLAGS = 0x20c,
 342    D3D12_MESSAGE_ID_RESOURCE_BARRIER_MATCHING_STATES = 0x20d,
 343    D3D12_MESSAGE_ID_RESOURCE_BARRIER_INVALID_COMBINATION = 0x20e,
 344    D3D12_MESSAGE_ID_RESOURCE_BARRIER_BEFORE_AFTER_MISMATCH = 0x20f,
 345    D3D12_MESSAGE_ID_RESOURCE_BARRIER_INVALID_RESOURCE = 0x210,
 346    D3D12_MESSAGE_ID_RESOURCE_BARRIER_SAMPLE_COUNT = 0x211,
 347    D3D12_MESSAGE_ID_RESOURCE_BARRIER_INVALID_FLAGS = 0x212,
 348    D3D12_MESSAGE_ID_RESOURCE_BARRIER_INVALID_COMBINED_FLAGS = 0x213,
 349    D3D12_MESSAGE_ID_RESOURCE_BARRIER_INVALID_FLAGS_FOR_FORMAT = 0x214,
 350    D3D12_MESSAGE_ID_RESOURCE_BARRIER_INVALID_SPLIT_BARRIER = 0x215,
 351    D3D12_MESSAGE_ID_RESOURCE_BARRIER_UNMATCHED_END = 0x216,
 352    D3D12_MESSAGE_ID_RESOURCE_BARRIER_UNMATCHED_BEGIN = 0x217,
 353    D3D12_MESSAGE_ID_RESOURCE_BARRIER_INVALID_FLAG = 0x218,
 354    D3D12_MESSAGE_ID_RESOURCE_BARRIER_INVALID_COMMAND_LIST_TYPE = 0x219,
 355    D3D12_MESSAGE_ID_INVALID_SUBRESOURCE_STATE = 0x21a,
 356    D3D12_MESSAGE_ID_COMMAND_ALLOCATOR_CONTENTION = 0x21c,
 357    D3D12_MESSAGE_ID_COMMAND_ALLOCATOR_RESET = 0x21d,
 358    D3D12_MESSAGE_ID_COMMAND_ALLOCATOR_RESET_BUNDLE = 0x21e,
 359    D3D12_MESSAGE_ID_COMMAND_ALLOCATOR_CANNOT_RESET = 0x21f,
 360    D3D12_MESSAGE_ID_COMMAND_LIST_OPEN = 0x220,
 361    D3D12_MESSAGE_ID_INVALID_BUNDLE_API = 0x222,
 362    D3D12_MESSAGE_ID_COMMAND_LIST_CLOSED = 0x223,
 363    D3D12_MESSAGE_ID_WRONG_COMMAND_ALLOCATOR_TYPE = 0x225,
 364    D3D12_MESSAGE_ID_COMMAND_ALLOCATOR_SYNC = 0x228,
 365    D3D12_MESSAGE_ID_COMMAND_LIST_SYNC = 0x229,
 366    D3D12_MESSAGE_ID_SET_DESCRIPTOR_HEAP_INVALID = 0x22a,
 367    D3D12_MESSAGE_ID_CREATE_COMMANDQUEUE = 0x22d,
 368    D3D12_MESSAGE_ID_CREATE_COMMANDALLOCATOR = 0x22e,
 369    D3D12_MESSAGE_ID_CREATE_PIPELINESTATE = 0x22f,
 370    D3D12_MESSAGE_ID_CREATE_COMMANDLIST12 = 0x230,
 371    D3D12_MESSAGE_ID_CREATE_RESOURCE = 0x232,
 372    D3D12_MESSAGE_ID_CREATE_DESCRIPTORHEAP = 0x233,
 373    D3D12_MESSAGE_ID_CREATE_ROOTSIGNATURE = 0x234,
 374    D3D12_MESSAGE_ID_CREATE_LIBRARY = 0x235,
 375    D3D12_MESSAGE_ID_CREATE_HEAP = 0x236,
 376    D3D12_MESSAGE_ID_CREATE_MONITOREDFENCE = 0x237,
 377    D3D12_MESSAGE_ID_CREATE_QUERYHEAP = 0x238,
 378    D3D12_MESSAGE_ID_CREATE_COMMANDSIGNATURE = 0x239,
 379    D3D12_MESSAGE_ID_LIVE_COMMANDQUEUE = 0x23a,
 380    D3D12_MESSAGE_ID_LIVE_COMMANDALLOCATOR = 0x23b,
 381    D3D12_MESSAGE_ID_LIVE_PIPELINESTATE = 0x23c,
 382    D3D12_MESSAGE_ID_LIVE_COMMANDLIST12 = 0x23d,
 383    D3D12_MESSAGE_ID_LIVE_RESOURCE = 0x23f,
 384    D3D12_MESSAGE_ID_LIVE_DESCRIPTORHEAP = 0x240,
 385    D3D12_MESSAGE_ID_LIVE_ROOTSIGNATURE = 0x241,
 386    D3D12_MESSAGE_ID_LIVE_LIBRARY = 0x242,
 387    D3D12_MESSAGE_ID_LIVE_HEAP = 0x243,
 388    D3D12_MESSAGE_ID_LIVE_MONITOREDFENCE = 0x244,
 389    D3D12_MESSAGE_ID_LIVE_QUERYHEAP = 0x245,
 390    D3D12_MESSAGE_ID_LIVE_COMMANDSIGNATURE = 0x246,
 391    D3D12_MESSAGE_ID_DESTROY_COMMANDQUEUE = 0x247,
 392    D3D12_MESSAGE_ID_DESTROY_COMMANDALLOCATOR = 0x248,
 393    D3D12_MESSAGE_ID_DESTROY_PIPELINESTATE = 0x249,
 394    D3D12_MESSAGE_ID_DESTROY_COMMANDLIST12 = 0x24a,
 395    D3D12_MESSAGE_ID_DESTROY_RESOURCE = 0x24c,
 396    D3D12_MESSAGE_ID_DESTROY_DESCRIPTORHEAP = 0x24d,
 397    D3D12_MESSAGE_ID_DESTROY_ROOTSIGNATURE = 0x24e,
 398    D3D12_MESSAGE_ID_DESTROY_LIBRARY = 0x24f,
 399    D3D12_MESSAGE_ID_DESTROY_HEAP = 0x250,
 400    D3D12_MESSAGE_ID_DESTROY_MONITOREDFENCE = 0x251,
 401    D3D12_MESSAGE_ID_DESTROY_QUERYHEAP = 0x252,
 402    D3D12_MESSAGE_ID_DESTROY_COMMANDSIGNATURE = 0x253,
 403    D3D12_MESSAGE_ID_CREATERESOURCE_INVALIDDIMENSIONS = 0x255,
 404    D3D12_MESSAGE_ID_CREATERESOURCE_INVALIDMISCFLAGS = 0x257,
 405    D3D12_MESSAGE_ID_CREATERESOURCE_INVALIDARG_RETURN = 0x25a,
 406    D3D12_MESSAGE_ID_CREATERESOURCE_OUTOFMEMORY_RETURN = 0x25b,
 407    D3D12_MESSAGE_ID_CREATERESOURCE_INVALIDDESC = 0x25c,
 408    D3D12_MESSAGE_ID_POSSIBLY_INVALID_SUBRESOURCE_STATE = 0x25f,
 409    D3D12_MESSAGE_ID_INVALID_USE_OF_NON_RESIDENT_RESOURCE = 0x260,
 410    D3D12_MESSAGE_ID_POSSIBLE_INVALID_USE_OF_NON_RESIDENT_RESOURCE = 0x261,
 411    D3D12_MESSAGE_ID_BUNDLE_PIPELINE_STATE_MISMATCH = 0x262,
 412    D3D12_MESSAGE_ID_PRIMITIVE_TOPOLOGY_MISMATCH_PIPELINE_STATE = 0x263,
 413    D3D12_MESSAGE_ID_RENDER_TARGET_FORMAT_MISMATCH_PIPELINE_STATE = 0x265,
 414    D3D12_MESSAGE_ID_RENDER_TARGET_SAMPLE_DESC_MISMATCH_PIPELINE_STATE = 0x266,
 415    D3D12_MESSAGE_ID_DEPTH_STENCIL_FORMAT_MISMATCH_PIPELINE_STATE = 0x267,
 416    D3D12_MESSAGE_ID_DEPTH_STENCIL_SAMPLE_DESC_MISMATCH_PIPELINE_STATE = 0x268,
 417    D3D12_MESSAGE_ID_CREATESHADER_INVALIDBYTECODE = 0x26e,
 418    D3D12_MESSAGE_ID_CREATEHEAP_NULLDESC = 0x26f,
 419    D3D12_MESSAGE_ID_CREATEHEAP_INVALIDSIZE = 0x270,
 420    D3D12_MESSAGE_ID_CREATEHEAP_UNRECOGNIZEDHEAPTYPE = 0x271,
 421    D3D12_MESSAGE_ID_CREATEHEAP_UNRECOGNIZEDCPUPAGEPROPERTIES = 0x272,
 422    D3D12_MESSAGE_ID_CREATEHEAP_UNRECOGNIZEDMEMORYPOOL = 0x273,
 423    D3D12_MESSAGE_ID_CREATEHEAP_INVALIDPROPERTIES = 0x274,
 424    D3D12_MESSAGE_ID_CREATEHEAP_INVALIDALIGNMENT = 0x275,
 425    D3D12_MESSAGE_ID_CREATEHEAP_UNRECOGNIZEDMISCFLAGS = 0x276,
 426    D3D12_MESSAGE_ID_CREATEHEAP_INVALIDMISCFLAGS = 0x277,
 427    D3D12_MESSAGE_ID_CREATEHEAP_INVALIDARG_RETURN = 0x278,
 428    D3D12_MESSAGE_ID_CREATEHEAP_OUTOFMEMORY_RETURN = 0x279,
 429    D3D12_MESSAGE_ID_CREATERESOURCEANDHEAP_NULLHEAPPROPERTIES = 0x27a,
 430    D3D12_MESSAGE_ID_CREATERESOURCEANDHEAP_UNRECOGNIZEDHEAPTYPE = 0x27b,
 431    D3D12_MESSAGE_ID_CREATERESOURCEANDHEAP_UNRECOGNIZEDCPUPAGEPROPERTIES = 0x27c,
 432    D3D12_MESSAGE_ID_CREATERESOURCEANDHEAP_UNRECOGNIZEDMEMORYPOOL = 0x27d,
 433    D3D12_MESSAGE_ID_CREATERESOURCEANDHEAP_INVALIDHEAPPROPERTIES = 0x27e,
 434    D3D12_MESSAGE_ID_CREATERESOURCEANDHEAP_UNRECOGNIZEDHEAPMISCFLAGS = 0x27f,
 435    D3D12_MESSAGE_ID_CREATERESOURCEANDHEAP_INVALIDHEAPMISCFLAGS = 0x280,
 436    D3D12_MESSAGE_ID_CREATERESOURCEANDHEAP_INVALIDARG_RETURN = 0x281,
 437    D3D12_MESSAGE_ID_CREATERESOURCEANDHEAP_OUTOFMEMORY_RETURN = 0x282,
 438    D3D12_MESSAGE_ID_GETCUSTOMHEAPPROPERTIES_UNRECOGNIZEDHEAPTYPE = 0x283,
 439    D3D12_MESSAGE_ID_GETCUSTOMHEAPPROPERTIES_INVALIDHEAPTYPE = 0x284,
 440    D3D12_MESSAGE_ID_CREATE_DESCRIPTOR_HEAP_INVALID_DESC = 0x285,
 441    D3D12_MESSAGE_ID_INVALID_DESCRIPTOR_HANDLE = 0x286,
 442    D3D12_MESSAGE_ID_CREATERASTERIZERSTATE_INVALID_CONSERVATIVERASTERMODE = 0x287,
 443    D3D12_MESSAGE_ID_CREATE_CONSTANT_BUFFER_VIEW_INVALID_RESOURCE = 0x289,
 444    D3D12_MESSAGE_ID_CREATE_CONSTANT_BUFFER_VIEW_INVALID_DESC = 0x28a,
 445    D3D12_MESSAGE_ID_CREATE_UNORDEREDACCESS_VIEW_INVALID_COUNTER_USAGE = 0x28c,
 446    D3D12_MESSAGE_ID_COPY_DESCRIPTORS_INVALID_RANGES = 0x28d,
 447    D3D12_MESSAGE_ID_COPY_DESCRIPTORS_WRITE_ONLY_DESCRIPTOR = 0x28e,
 448    D3D12_MESSAGE_ID_CREATEGRAPHICSPIPELINESTATE_RTV_FORMAT_NOT_UNKNOWN = 0x28f,
 449    D3D12_MESSAGE_ID_CREATEGRAPHICSPIPELINESTATE_INVALID_RENDER_TARGET_COUNT = 0x290,
 450    D3D12_MESSAGE_ID_CREATEGRAPHICSPIPELINESTATE_VERTEX_SHADER_NOT_SET = 0x291,
 451    D3D12_MESSAGE_ID_CREATEGRAPHICSPIPELINESTATE_INPUTLAYOUT_NOT_SET = 0x292,
 452    D3D12_MESSAGE_ID_CREATEGRAPHICSPIPELINESTATE_SHADER_LINKAGE_HS_DS_SIGNATURE_MISMATCH = 0x293,
 453    D3D12_MESSAGE_ID_CREATEGRAPHICSPIPELINESTATE_SHADER_LINKAGE_REGISTERINDEX = 0x294,
 454    D3D12_MESSAGE_ID_CREATEGRAPHICSPIPELINESTATE_SHADER_LINKAGE_COMPONENTTYPE = 0x295,
 455    D3D12_MESSAGE_ID_CREATEGRAPHICSPIPELINESTATE_SHADER_LINKAGE_REGISTERMASK = 0x296,
 456    D3D12_MESSAGE_ID_CREATEGRAPHICSPIPELINESTATE_SHADER_LINKAGE_SYSTEMVALUE = 0x297,
 457    D3D12_MESSAGE_ID_CREATEGRAPHICSPIPELINESTATE_SHADER_LINKAGE_NEVERWRITTEN_ALWAYSREADS = 0x298,
 458    D3D12_MESSAGE_ID_CREATEGRAPHICSPIPELINESTATE_SHADER_LINKAGE_MINPRECISION = 0x299,
 459    D3D12_MESSAGE_ID_CREATEGRAPHICSPIPELINESTATE_SHADER_LINKAGE_SEMANTICNAME_NOT_FOUND = 0x29a,
 460    D3D12_MESSAGE_ID_CREATEGRAPHICSPIPELINESTATE_HS_XOR_DS_MISMATCH = 0x29b,
 461    D3D12_MESSAGE_ID_CREATEGRAPHICSPIPELINESTATE_HULL_SHADER_INPUT_TOPOLOGY_MISMATCH = 0x29c,
 462    D3D12_MESSAGE_ID_CREATEGRAPHICSPIPELINESTATE_HS_DS_CONTROL_POINT_COUNT_MISMATCH = 0x29d,
 463    D3D12_MESSAGE_ID_CREATEGRAPHICSPIPELINESTATE_HS_DS_TESSELLATOR_DOMAIN_MISMATCH = 0x29e,
 464    D3D12_MESSAGE_ID_CREATEGRAPHICSPIPELINESTATE_INVALID_USE_OF_CENTER_MULTISAMPLE_PATTERN = 0x29f,
 465    D3D12_MESSAGE_ID_CREATEGRAPHICSPIPELINESTATE_INVALID_USE_OF_FORCED_SAMPLE_COUNT = 0x2a0,
 466    D3D12_MESSAGE_ID_CREATEGRAPHICSPIPELINESTATE_INVALID_PRIMITIVETOPOLOGY = 0x2a1,
 467    D3D12_MESSAGE_ID_CREATEGRAPHICSPIPELINESTATE_INVALID_SYSTEMVALUE = 0x2a2,
 468    D3D12_MESSAGE_ID_CREATEGRAPHICSPIPELINESTATE_OM_DUAL_SOURCE_BLENDING_CAN_ONLY_HAVE_RENDER_TARGET_0 = 0x2a3,
 469    D3D12_MESSAGE_ID_CREATEGRAPHICSPIPELINESTATE_OM_RENDER_TARGET_DOES_NOT_SUPPORT_BLENDING = 0x2a4,
 470    D3D12_MESSAGE_ID_CREATEGRAPHICSPIPELINESTATE_PS_OUTPUT_TYPE_MISMATCH = 0x2a5,
 471    D3D12_MESSAGE_ID_CREATEGRAPHICSPIPELINESTATE_OM_RENDER_TARGET_DOES_NOT_SUPPORT_LOGIC_OPS = 0x2a6,
 472    D3D12_MESSAGE_ID_CREATEGRAPHICSPIPELINESTATE_RENDERTARGETVIEW_NOT_SET = 0x2a7,
 473    D3D12_MESSAGE_ID_CREATEGRAPHICSPIPELINESTATE_DEPTHSTENCILVIEW_NOT_SET = 0x2a8,
 474    D3D12_MESSAGE_ID_CREATEGRAPHICSPIPELINESTATE_GS_INPUT_PRIMITIVE_MISMATCH = 0x2a9,
 475    D3D12_MESSAGE_ID_CREATEGRAPHICSPIPELINESTATE_POSITION_NOT_PRESENT = 0x2aa,
 476    D3D12_MESSAGE_ID_CREATEGRAPHICSPIPELINESTATE_MISSING_ROOT_SIGNATURE_FLAGS = 0x2ab,
 477    D3D12_MESSAGE_ID_CREATEGRAPHICSPIPELINESTATE_INVALID_INDEX_BUFFER_PROPERTIES = 0x2ac,
 478    D3D12_MESSAGE_ID_CREATEGRAPHICSPIPELINESTATE_INVALID_SAMPLE_DESC = 0x2ad,
 479    D3D12_MESSAGE_ID_CREATEGRAPHICSPIPELINESTATE_HS_ROOT_SIGNATURE_MISMATCH = 0x2ae,
 480    D3D12_MESSAGE_ID_CREATEGRAPHICSPIPELINESTATE_DS_ROOT_SIGNATURE_MISMATCH = 0x2af,
 481    D3D12_MESSAGE_ID_CREATEGRAPHICSPIPELINESTATE_VS_ROOT_SIGNATURE_MISMATCH = 0x2b0,
 482    D3D12_MESSAGE_ID_CREATEGRAPHICSPIPELINESTATE_GS_ROOT_SIGNATURE_MISMATCH = 0x2b1,
 483    D3D12_MESSAGE_ID_CREATEGRAPHICSPIPELINESTATE_PS_ROOT_SIGNATURE_MISMATCH = 0x2b2,
 484    D3D12_MESSAGE_ID_CREATEGRAPHICSPIPELINESTATE_MISSING_ROOT_SIGNATURE = 0x2b3,
 485    D3D12_MESSAGE_ID_EXECUTE_BUNDLE_OPEN_BUNDLE = 0x2b4,
 486    D3D12_MESSAGE_ID_EXECUTE_BUNDLE_DESCRIPTOR_HEAP_MISMATCH = 0x2b5,
 487    D3D12_MESSAGE_ID_EXECUTE_BUNDLE_TYPE = 0x2b6,
 488    D3D12_MESSAGE_ID_DRAW_EMPTY_SCISSOR_RECTANGLE = 0x2b7,
 489    D3D12_MESSAGE_ID_CREATE_ROOT_SIGNATURE_BLOB_NOT_FOUND = 0x2b8,
 490    D3D12_MESSAGE_ID_CREATE_ROOT_SIGNATURE_DESERIALIZE_FAILED = 0x2b9,
 491    D3D12_MESSAGE_ID_CREATE_ROOT_SIGNATURE_INVALID_CONFIGURATION = 0x2ba,
 492    D3D12_MESSAGE_ID_CREATE_ROOT_SIGNATURE_NOT_SUPPORTED_ON_DEVICE = 0x2bb,
 493    D3D12_MESSAGE_ID_CREATERESOURCEANDHEAP_NULLRESOURCEPROPERTIES = 0x2bc,
 494    D3D12_MESSAGE_ID_CREATERESOURCEANDHEAP_NULLHEAP = 0x2bd,
 495    D3D12_MESSAGE_ID_GETRESOURCEALLOCATIONINFO_INVALIDRDESCS = 0x2be,
 496    D3D12_MESSAGE_ID_MAKERESIDENT_NULLOBJECTARRAY = 0x2bf,
 497    D3D12_MESSAGE_ID_EVICT_NULLOBJECTARRAY = 0x2c1,
 498    D3D12_MESSAGE_ID_SET_DESCRIPTOR_TABLE_INVALID = 0x2c4,
 499    D3D12_MESSAGE_ID_SET_ROOT_CONSTANT_INVALID = 0x2c5,
 500    D3D12_MESSAGE_ID_SET_ROOT_CONSTANT_BUFFER_VIEW_INVALID = 0x2c6,
 501    D3D12_MESSAGE_ID_SET_ROOT_SHADER_RESOURCE_VIEW_INVALID = 0x2c7,
 502    D3D12_MESSAGE_ID_SET_ROOT_UNORDERED_ACCESS_VIEW_INVALID = 0x2c8,
 503    D3D12_MESSAGE_ID_SET_VERTEX_BUFFERS_INVALID_DESC = 0x2c9,
 504    D3D12_MESSAGE_ID_SET_INDEX_BUFFER_INVALID_DESC = 0x2cb,
 505    D3D12_MESSAGE_ID_SET_STREAM_OUTPUT_BUFFERS_INVALID_DESC = 0x2cd,
 506    D3D12_MESSAGE_ID_CREATERESOURCE_UNRECOGNIZEDDIMENSIONALITY = 0x2ce,
 507    D3D12_MESSAGE_ID_CREATERESOURCE_UNRECOGNIZEDLAYOUT = 0x2cf,
 508    D3D12_MESSAGE_ID_CREATERESOURCE_INVALIDDIMENSIONALITY = 0x2d0,
 509    D3D12_MESSAGE_ID_CREATERESOURCE_INVALIDALIGNMENT = 0x2d1,
 510    D3D12_MESSAGE_ID_CREATERESOURCE_INVALIDMIPLEVELS = 0x2d2,
 511    D3D12_MESSAGE_ID_CREATERESOURCE_INVALIDSAMPLEDESC = 0x2d3,
 512    D3D12_MESSAGE_ID_CREATERESOURCE_INVALIDLAYOUT = 0x2d4,
 513    D3D12_MESSAGE_ID_SET_INDEX_BUFFER_INVALID = 0x2d5,
 514    D3D12_MESSAGE_ID_SET_VERTEX_BUFFERS_INVALID = 0x2d6,
 515    D3D12_MESSAGE_ID_SET_STREAM_OUTPUT_BUFFERS_INVALID = 0x2d7,
 516    D3D12_MESSAGE_ID_SET_RENDER_TARGETS_INVALID = 0x2d8,
 517    D3D12_MESSAGE_ID_CREATEQUERY_HEAP_INVALID_PARAMETERS = 0x2d9,
 518    D3D12_MESSAGE_ID_BEGIN_END_QUERY_INVALID_PARAMETERS = 0x2db,
 519    D3D12_MESSAGE_ID_CLOSE_COMMAND_LIST_OPEN_QUERY = 0x2dc,
 520    D3D12_MESSAGE_ID_RESOLVE_QUERY_DATA_INVALID_PARAMETERS = 0x2dd,
 521    D3D12_MESSAGE_ID_SET_PREDICATION_INVALID_PARAMETERS = 0x2de,
 522    D3D12_MESSAGE_ID_TIMESTAMPS_NOT_SUPPORTED = 0x2df,
 523    D3D12_MESSAGE_ID_CREATERESOURCE_UNRECOGNIZEDFORMAT = 0x2e1,
 524    D3D12_MESSAGE_ID_CREATERESOURCE_INVALIDFORMAT = 0x2e2,
 525    D3D12_MESSAGE_ID_GETCOPYABLEFOOTPRINTS_INVALIDSUBRESOURCERANGE = 0x2e3,
 526    D3D12_MESSAGE_ID_GETCOPYABLEFOOTPRINTS_INVALIDBASEOFFSET = 0x2e4,
 527    D3D12_MESSAGE_ID_GETCOPYABLELAYOUT_INVALIDSUBRESOURCERANGE = 0x2e3,
 528    D3D12_MESSAGE_ID_GETCOPYABLELAYOUT_INVALIDBASEOFFSET = 0x2e4,
 529    D3D12_MESSAGE_ID_RESOURCE_BARRIER_INVALID_HEAP = 0x2e5,
 530    D3D12_MESSAGE_ID_CREATE_SAMPLER_INVALID = 0x2e6,
 531    D3D12_MESSAGE_ID_CREATECOMMANDSIGNATURE_INVALID = 0x2e7,
 532    D3D12_MESSAGE_ID_EXECUTE_INDIRECT_INVALID_PARAMETERS = 0x2e8,
 533    D3D12_MESSAGE_ID_GETGPUVIRTUALADDRESS_INVALID_RESOURCE_DIMENSION = 0x2e9,
 534    D3D12_MESSAGE_ID_CREATERESOURCE_INVALIDCLEARVALUE = 0x32f,
 535    D3D12_MESSAGE_ID_CREATERESOURCE_UNRECOGNIZEDCLEARVALUEFORMAT = 0x330,
 536    D3D12_MESSAGE_ID_CREATERESOURCE_INVALIDCLEARVALUEFORMAT = 0x331,
 537    D3D12_MESSAGE_ID_CREATERESOURCE_CLEARVALUEDENORMFLUSH = 0x332,
 538    D3D12_MESSAGE_ID_CLEARRENDERTARGETVIEW_MISMATCHINGCLEARVALUE = 0x334,
 539    D3D12_MESSAGE_ID_CLEARDEPTHSTENCILVIEW_MISMATCHINGCLEARVALUE = 0x335,
 540    D3D12_MESSAGE_ID_MAP_INVALIDHEAP = 0x336,
 541    D3D12_MESSAGE_ID_UNMAP_INVALIDHEAP = 0x337,
 542    D3D12_MESSAGE_ID_MAP_INVALIDRESOURCE = 0x338,
 543    D3D12_MESSAGE_ID_UNMAP_INVALIDRESOURCE = 0x339,
 544    D3D12_MESSAGE_ID_MAP_INVALIDSUBRESOURCE = 0x33a,
 545    D3D12_MESSAGE_ID_UNMAP_INVALIDSUBRESOURCE = 0x33b,
 546    D3D12_MESSAGE_ID_MAP_INVALIDRANGE = 0x33c,
 547    D3D12_MESSAGE_ID_UNMAP_INVALIDRANGE = 0x33d,
 548    D3D12_MESSAGE_ID_MAP_INVALIDDATAPOINTER = 0x340,
 549    D3D12_MESSAGE_ID_MAP_INVALIDARG_RETURN = 0x341,
 550    D3D12_MESSAGE_ID_MAP_OUTOFMEMORY_RETURN = 0x342,
 551    D3D12_MESSAGE_ID_EXECUTECOMMANDLISTS_BUNDLENOTSUPPORTED = 0x343,
 552    D3D12_MESSAGE_ID_EXECUTECOMMANDLISTS_COMMANDLISTMISMATCH = 0x344,
 553    D3D12_MESSAGE_ID_EXECUTECOMMANDLISTS_OPENCOMMANDLIST = 0x345,
 554    D3D12_MESSAGE_ID_EXECUTECOMMANDLISTS_FAILEDCOMMANDLIST = 0x346,
 555    D3D12_MESSAGE_ID_COPYBUFFERREGION_NULLDST = 0x347,
 556    D3D12_MESSAGE_ID_COPYBUFFERREGION_INVALIDDSTRESOURCEDIMENSION = 0x348,
 557    D3D12_MESSAGE_ID_COPYBUFFERREGION_DSTRANGEOUTOFBOUNDS = 0x349,
 558    D3D12_MESSAGE_ID_COPYBUFFERREGION_NULLSRC = 0x34a,
 559    D3D12_MESSAGE_ID_COPYBUFFERREGION_INVALIDSRCRESOURCEDIMENSION = 0x34b,
 560    D3D12_MESSAGE_ID_COPYBUFFERREGION_SRCRANGEOUTOFBOUNDS = 0x34c,
 561    D3D12_MESSAGE_ID_COPYBUFFERREGION_INVALIDCOPYFLAGS = 0x34d,
 562    D3D12_MESSAGE_ID_COPYTEXTUREREGION_NULLDST = 0x34e,
 563    D3D12_MESSAGE_ID_COPYTEXTUREREGION_UNRECOGNIZEDDSTTYPE = 0x34f,
 564    D3D12_MESSAGE_ID_COPYTEXTUREREGION_INVALIDDSTRESOURCEDIMENSION = 0x350,
 565    D3D12_MESSAGE_ID_COPYTEXTUREREGION_INVALIDDSTRESOURCE = 0x351,
 566    D3D12_MESSAGE_ID_COPYTEXTUREREGION_INVALIDDSTSUBRESOURCE = 0x352,
 567    D3D12_MESSAGE_ID_COPYTEXTUREREGION_INVALIDDSTOFFSET = 0x353,
 568    D3D12_MESSAGE_ID_COPYTEXTUREREGION_UNRECOGNIZEDDSTFORMAT = 0x354,
 569    D3D12_MESSAGE_ID_COPYTEXTUREREGION_INVALIDDSTFORMAT = 0x355,
 570    D3D12_MESSAGE_ID_COPYTEXTUREREGION_INVALIDDSTDIMENSIONS = 0x356,
 571    D3D12_MESSAGE_ID_COPYTEXTUREREGION_INVALIDDSTROWPITCH = 0x357,
 572    D3D12_MESSAGE_ID_COPYTEXTUREREGION_INVALIDDSTPLACEMENT = 0x358,
 573    D3D12_MESSAGE_ID_COPYTEXTUREREGION_INVALIDDSTDSPLACEDFOOTPRINTFORMAT = 0x359,
 574    D3D12_MESSAGE_ID_COPYTEXTUREREGION_DSTREGIONOUTOFBOUNDS = 0x35a,
 575    D3D12_MESSAGE_ID_COPYTEXTUREREGION_NULLSRC = 0x35b,
 576    D3D12_MESSAGE_ID_COPYTEXTUREREGION_UNRECOGNIZEDSRCTYPE = 0x35c,
 577    D3D12_MESSAGE_ID_COPYTEXTUREREGION_INVALIDSRCRESOURCEDIMENSION = 0x35d,
 578    D3D12_MESSAGE_ID_COPYTEXTUREREGION_INVALIDSRCRESOURCE = 0x35e,
 579    D3D12_MESSAGE_ID_COPYTEXTUREREGION_INVALIDSRCSUBRESOURCE = 0x35f,
 580    D3D12_MESSAGE_ID_COPYTEXTUREREGION_INVALIDSRCOFFSET = 0x360,
 581    D3D12_MESSAGE_ID_COPYTEXTUREREGION_UNRECOGNIZEDSRCFORMAT = 0x361,
 582    D3D12_MESSAGE_ID_COPYTEXTUREREGION_INVALIDSRCFORMAT = 0x362,
 583    D3D12_MESSAGE_ID_COPYTEXTUREREGION_INVALIDSRCDIMENSIONS = 0x363,
 584    D3D12_MESSAGE_ID_COPYTEXTUREREGION_INVALIDSRCROWPITCH = 0x364,
 585    D3D12_MESSAGE_ID_COPYTEXTUREREGION_INVALIDSRCPLACEMENT = 0x365,
 586    D3D12_MESSAGE_ID_COPYTEXTUREREGION_INVALIDSRCDSPLACEDFOOTPRINTFORMAT = 0x366,
 587    D3D12_MESSAGE_ID_COPYTEXTUREREGION_SRCREGIONOUTOFBOUNDS = 0x367,
 588    D3D12_MESSAGE_ID_COPYTEXTUREREGION_INVALIDDSTCOORDINATES = 0x368,
 589    D3D12_MESSAGE_ID_COPYTEXTUREREGION_INVALIDSRCBOX = 0x369,
 590    D3D12_MESSAGE_ID_COPYTEXTUREREGION_FORMATMISMATCH = 0x36a,
 591    D3D12_MESSAGE_ID_COPYTEXTUREREGION_EMPTYBOX = 0x36b,
 592    D3D12_MESSAGE_ID_COPYTEXTUREREGION_INVALIDCOPYFLAGS = 0x36c,
 593    D3D12_MESSAGE_ID_RESOLVESUBRESOURCE_INVALID_SUBRESOURCE_INDEX = 0x36d,
 594    D3D12_MESSAGE_ID_RESOLVESUBRESOURCE_INVALID_FORMAT = 0x36e,
 595    D3D12_MESSAGE_ID_RESOLVESUBRESOURCE_RESOURCE_MISMATCH = 0x36f,
 596    D3D12_MESSAGE_ID_RESOLVESUBRESOURCE_INVALID_SAMPLE_COUNT = 0x370,
 597    D3D12_MESSAGE_ID_CREATECOMPUTEPIPELINESTATE_INVALID_SHADER = 0x371,
 598    D3D12_MESSAGE_ID_CREATECOMPUTEPIPELINESTATE_CS_ROOT_SIGNATURE_MISMATCH = 0x372,
 599    D3D12_MESSAGE_ID_CREATECOMPUTEPIPELINESTATE_MISSING_ROOT_SIGNATURE = 0x373,
 600    D3D12_MESSAGE_ID_CREATEPIPELINESTATE_INVALIDCACHEDBLOB = 0x374,
 601    D3D12_MESSAGE_ID_CREATEPIPELINESTATE_CACHEDBLOBADAPTERMISMATCH = 0x375,
 602    D3D12_MESSAGE_ID_CREATEPIPELINESTATE_CACHEDBLOBDRIVERVERSIONMISMATCH = 0x376,
 603    D3D12_MESSAGE_ID_CREATEPIPELINESTATE_CACHEDBLOBDESCMISMATCH = 0x377,
 604    D3D12_MESSAGE_ID_CREATEPIPELINESTATE_CACHEDBLOBIGNORED = 0x378,
 605    D3D12_MESSAGE_ID_WRITETOSUBRESOURCE_INVALIDHEAP = 0x379,
 606    D3D12_MESSAGE_ID_WRITETOSUBRESOURCE_INVALIDRESOURCE = 0x37a,
 607    D3D12_MESSAGE_ID_WRITETOSUBRESOURCE_INVALIDBOX = 0x37b,
 608    D3D12_MESSAGE_ID_WRITETOSUBRESOURCE_INVALIDSUBRESOURCE = 0x37c,
 609    D3D12_MESSAGE_ID_WRITETOSUBRESOURCE_EMPTYBOX = 0x37d,
 610    D3D12_MESSAGE_ID_READFROMSUBRESOURCE_INVALIDHEAP = 0x37e,
 611    D3D12_MESSAGE_ID_READFROMSUBRESOURCE_INVALIDRESOURCE = 0x37f,
 612    D3D12_MESSAGE_ID_READFROMSUBRESOURCE_INVALIDBOX = 0x380,
 613    D3D12_MESSAGE_ID_READFROMSUBRESOURCE_INVALIDSUBRESOURCE = 0x381,
 614    D3D12_MESSAGE_ID_READFROMSUBRESOURCE_EMPTYBOX = 0x382,
 615    D3D12_MESSAGE_ID_TOO_MANY_NODES_SPECIFIED = 0x383,
 616    D3D12_MESSAGE_ID_INVALID_NODE_INDEX = 0x384,
 617    D3D12_MESSAGE_ID_GETHEAPPROPERTIES_INVALIDRESOURCE = 0x385,
 618    D3D12_MESSAGE_ID_NODE_MASK_MISMATCH = 0x386,
 619    D3D12_MESSAGE_ID_COMMAND_LIST_OUTOFMEMORY = 0x387,
 620    D3D12_MESSAGE_ID_COMMAND_LIST_MULTIPLE_SWAPCHAIN_BUFFER_REFERENCES = 0x388,
 621    D3D12_MESSAGE_ID_COMMAND_LIST_TOO_MANY_SWAPCHAIN_REFERENCES = 0x389,
 622    D3D12_MESSAGE_ID_COMMAND_QUEUE_TOO_MANY_SWAPCHAIN_REFERENCES = 0x38a,
 623    D3D12_MESSAGE_ID_EXECUTECOMMANDLISTS_WRONGSWAPCHAINBUFFERREFERENCE = 0x38b,
 624    D3D12_MESSAGE_ID_COMMAND_LIST_SETRENDERTARGETS_INVALIDNUMRENDERTARGETS = 0x38c,
 625    D3D12_MESSAGE_ID_CREATE_QUEUE_INVALID_TYPE = 0x38d,
 626    D3D12_MESSAGE_ID_CREATE_QUEUE_INVALID_FLAGS = 0x38e,
 627    D3D12_MESSAGE_ID_CREATESHAREDRESOURCE_INVALIDFLAGS = 0x38f,
 628    D3D12_MESSAGE_ID_CREATESHAREDRESOURCE_INVALIDFORMAT = 0x390,
 629    D3D12_MESSAGE_ID_CREATESHAREDHEAP_INVALIDFLAGS = 0x391,
 630    D3D12_MESSAGE_ID_REFLECTSHAREDPROPERTIES_UNRECOGNIZEDPROPERTIES = 0x392,
 631    D3D12_MESSAGE_ID_REFLECTSHAREDPROPERTIES_INVALIDSIZE = 0x393,
 632    D3D12_MESSAGE_ID_REFLECTSHAREDPROPERTIES_INVALIDOBJECT = 0x394,
 633    D3D12_MESSAGE_ID_KEYEDMUTEX_INVALIDOBJECT = 0x395,
 634    D3D12_MESSAGE_ID_KEYEDMUTEX_INVALIDKEY = 0x396,
 635    D3D12_MESSAGE_ID_KEYEDMUTEX_WRONGSTATE = 0x397,
 636    D3D12_MESSAGE_ID_CREATE_QUEUE_INVALID_PRIORITY = 0x398,
 637    D3D12_MESSAGE_ID_OBJECT_DELETED_WHILE_STILL_IN_USE = 0x399,
 638    D3D12_MESSAGE_ID_CREATEPIPELINESTATE_INVALID_FLAGS = 0x39a,
 639    D3D12_MESSAGE_ID_HEAP_ADDRESS_RANGE_HAS_NO_RESOURCE = 0x39b,
 640    D3D12_MESSAGE_ID_COMMAND_LIST_DRAW_RENDER_TARGET_DELETED = 0x39c,
 641    D3D12_MESSAGE_ID_CREATEGRAPHICSPIPELINESTATE_ALL_RENDER_TARGETS_HAVE_UNKNOWN_FORMAT = 0x39d,
 642    D3D12_MESSAGE_ID_HEAP_ADDRESS_RANGE_INTERSECTS_MULTIPLE_BUFFERS = 0x39e,
 643    D3D12_MESSAGE_ID_EXECUTECOMMANDLISTS_GPU_WRITTEN_READBACK_RESOURCE_MAPPED = 0x39f,
 644    D3D12_MESSAGE_ID_UNMAP_RANGE_NOT_EMPTY = 0x3a1,
 645    D3D12_MESSAGE_ID_MAP_INVALID_NULLRANGE = 0x3a2,
 646    D3D12_MESSAGE_ID_UNMAP_INVALID_NULLRANGE = 0x3a3,
 647    D3D12_MESSAGE_ID_NO_GRAPHICS_API_SUPPORT = 0x3a4,
 648    D3D12_MESSAGE_ID_NO_COMPUTE_API_SUPPORT = 0x3a5,
 649    D3D12_MESSAGE_ID_RESOLVESUBRESOURCE_RESOURCE_FLAGS_NOT_SUPPORTED = 0x3a6,
 650    D3D12_MESSAGE_ID_GPU_BASED_VALIDATION_ROOT_ARGUMENT_UNINITIALIZED = 0x3a7,
 651    D3D12_MESSAGE_ID_GPU_BASED_VALIDATION_DESCRIPTOR_HEAP_INDEX_OUT_OF_BOUNDS = 0x3a8,
 652    D3D12_MESSAGE_ID_GPU_BASED_VALIDATION_DESCRIPTOR_TABLE_REGISTER_INDEX_OUT_OF_BOUNDS = 0x3a9,
 653    D3D12_MESSAGE_ID_GPU_BASED_VALIDATION_DESCRIPTOR_UNINITIALIZED = 0x3aa,
 654    D3D12_MESSAGE_ID_GPU_BASED_VALIDATION_DESCRIPTOR_TYPE_MISMATCH = 0x3ab,
 655    D3D12_MESSAGE_ID_GPU_BASED_VALIDATION_SRV_RESOURCE_DIMENSION_MISMATCH = 0x3ac,
 656    D3D12_MESSAGE_ID_GPU_BASED_VALIDATION_UAV_RESOURCE_DIMENSION_MISMATCH = 0x3ad,
 657    D3D12_MESSAGE_ID_GPU_BASED_VALIDATION_INCOMPATIBLE_RESOURCE_STATE = 0x3ae,
 658    D3D12_MESSAGE_ID_COPYRESOURCE_NULLDST = 0x3af,
 659    D3D12_MESSAGE_ID_COPYRESOURCE_INVALIDDSTRESOURCE = 0x3b0,
 660    D3D12_MESSAGE_ID_COPYRESOURCE_NULLSRC = 0x3b1,
 661    D3D12_MESSAGE_ID_COPYRESOURCE_INVALIDSRCRESOURCE = 0x3b2,
 662    D3D12_MESSAGE_ID_RESOLVESUBRESOURCE_NULLDST = 0x3b3,
 663    D3D12_MESSAGE_ID_RESOLVESUBRESOURCE_INVALIDDSTRESOURCE = 0x3b4,
 664    D3D12_MESSAGE_ID_RESOLVESUBRESOURCE_NULLSRC = 0x3b5,
 665    D3D12_MESSAGE_ID_RESOLVESUBRESOURCE_INVALIDSRCRESOURCE = 0x3b6,
 666    D3D12_MESSAGE_ID_PIPELINE_STATE_TYPE_MISMATCH = 0x3b7,
 667    D3D12_MESSAGE_ID_COMMAND_LIST_DISPATCH_ROOT_SIGNATURE_NOT_SET = 0x3b8,
 668    D3D12_MESSAGE_ID_COMMAND_LIST_DISPATCH_ROOT_SIGNATURE_MISMATCH = 0x3b9,
 669    D3D12_MESSAGE_ID_RESOURCE_BARRIER_ZERO_BARRIERS = 0x3ba,
 670    D3D12_MESSAGE_ID_BEGIN_END_EVENT_MISMATCH = 0x3bb,
 671    D3D12_MESSAGE_ID_RESOURCE_BARRIER_POSSIBLE_BEFORE_AFTER_MISMATCH = 0x3bc,
 672    D3D12_MESSAGE_ID_RESOURCE_BARRIER_MISMATCHING_BEGIN_END = 0x3bd,
 673    D3D12_MESSAGE_ID_GPU_BASED_VALIDATION_INVALID_RESOURCE = 0x3be,
 674    D3D12_MESSAGE_ID_USE_OF_ZERO_REFCOUNT_OBJECT = 0x3bf,
 675    D3D12_MESSAGE_ID_OBJECT_EVICTED_WHILE_STILL_IN_USE = 0x3c0,
 676    D3D12_MESSAGE_ID_GPU_BASED_VALIDATION_ROOT_DESCRIPTOR_ACCESS_OUT_OF_BOUNDS = 0x3c1,
 677    D3D12_MESSAGE_ID_CREATEPIPELINELIBRARY_INVALIDLIBRARYBLOB = 0x3c2,
 678    D3D12_MESSAGE_ID_CREATEPIPELINELIBRARY_DRIVERVERSIONMISMATCH = 0x3c3,
 679    D3D12_MESSAGE_ID_CREATEPIPELINELIBRARY_ADAPTERVERSIONMISMATCH = 0x3c4,
 680    D3D12_MESSAGE_ID_CREATEPIPELINELIBRARY_UNSUPPORTED = 0x3c5,
 681    D3D12_MESSAGE_ID_CREATE_PIPELINELIBRARY = 0x3c6,
 682    D3D12_MESSAGE_ID_LIVE_PIPELINELIBRARY = 0x3c7,
 683    D3D12_MESSAGE_ID_DESTROY_PIPELINELIBRARY = 0x3c8,
 684    D3D12_MESSAGE_ID_STOREPIPELINE_NONAME = 0x3c9,
 685    D3D12_MESSAGE_ID_STOREPIPELINE_DUPLICATENAME = 0x3ca,
 686    D3D12_MESSAGE_ID_LOADPIPELINE_NAMENOTFOUND = 0x3cb,
 687    D3D12_MESSAGE_ID_LOADPIPELINE_INVALIDDESC = 0x3cc,
 688    D3D12_MESSAGE_ID_PIPELINELIBRARY_SERIALIZE_NOTENOUGHMEMORY = 0x3cd,
 689    D3D12_MESSAGE_ID_CREATEGRAPHICSPIPELINESTATE_PS_OUTPUT_RT_OUTPUT_MISMATCH = 0x3ce,
 690    D3D12_MESSAGE_ID_SETEVENTONMULTIPLEFENCECOMPLETION_INVALIDFLAGS = 0x3cf,
 691    D3D12_MESSAGE_ID_CREATE_QUEUE_VIDEO_NOT_SUPPORTED = 0x3d0,
 692    D3D12_MESSAGE_ID_CREATE_COMMAND_ALLOCATOR_VIDEO_NOT_SUPPORTED = 0x3d1,
 693    D3D12_MESSAGE_ID_CREATEQUERY_HEAP_VIDEO_DECODE_STATISTICS_NOT_SUPPORTED = 0x3d2,
 694    D3D12_MESSAGE_ID_CREATE_VIDEODECODECOMMANDLIST = 0x3d3,
 695    D3D12_MESSAGE_ID_CREATE_VIDEODECODER = 0x3d4,
 696    D3D12_MESSAGE_ID_CREATE_VIDEODECODESTREAM = 0x3d5,
 697    D3D12_MESSAGE_ID_LIVE_VIDEODECODECOMMANDLIST = 0x3d6,
 698    D3D12_MESSAGE_ID_LIVE_VIDEODECODER = 0x3d7,
 699    D3D12_MESSAGE_ID_LIVE_VIDEODECODESTREAM = 0x3d8,
 700    D3D12_MESSAGE_ID_DESTROY_VIDEODECODECOMMANDLIST = 0x3d9,
 701    D3D12_MESSAGE_ID_DESTROY_VIDEODECODER = 0x3da,
 702    D3D12_MESSAGE_ID_DESTROY_VIDEODECODESTREAM = 0x3db,
 703    D3D12_MESSAGE_ID_DECODE_FRAME_INVALID_PARAMETERS = 0x3dc,
 704    D3D12_MESSAGE_ID_DEPRECATED_API = 0x3dd,
 705    D3D12_MESSAGE_ID_RESOURCE_BARRIER_MISMATCHING_COMMAND_LIST_TYPE = 0x3de,
 706    D3D12_MESSAGE_ID_COMMAND_LIST_DESCRIPTOR_TABLE_NOT_SET = 0x3df,
 707    D3D12_MESSAGE_ID_COMMAND_LIST_ROOT_CONSTANT_BUFFER_VIEW_NOT_SET = 0x3e0,
 708    D3D12_MESSAGE_ID_COMMAND_LIST_ROOT_SHADER_RESOURCE_VIEW_NOT_SET = 0x3e1,
 709    D3D12_MESSAGE_ID_COMMAND_LIST_ROOT_UNORDERED_ACCESS_VIEW_NOT_SET = 0x3e2,
 710    D3D12_MESSAGE_ID_DISCARD_INVALID_SUBRESOURCE_RANGE = 0x3e3,
 711    D3D12_MESSAGE_ID_DISCARD_ONE_SUBRESOURCE_FOR_MIPS_WITH_RECTS = 0x3e4,
 712    D3D12_MESSAGE_ID_DISCARD_NO_RECTS_FOR_NON_TEXTURE2D = 0x3e5,
 713    D3D12_MESSAGE_ID_COPY_ON_SAME_SUBRESOURCE = 0x3e6,
 714    D3D12_MESSAGE_ID_SETRESIDENCYPRIORITY_INVALID_PAGEABLE = 0x3e7,
 715    D3D12_MESSAGE_ID_GPU_BASED_VALIDATION_UNSUPPORTED = 0x3e8,
 716    D3D12_MESSAGE_ID_STATIC_DESCRIPTOR_INVALID_DESCRIPTOR_CHANGE = 0x3e9,
 717    D3D12_MESSAGE_ID_DATA_STATIC_DESCRIPTOR_INVALID_DATA_CHANGE = 0x3ea,
 718    D3D12_MESSAGE_ID_DATA_STATIC_WHILE_SET_AT_EXECUTE_DESCRIPTOR_INVALID_DATA_CHANGE = 0x3eb,
 719    D3D12_MESSAGE_ID_EXECUTE_BUNDLE_STATIC_DESCRIPTOR_DATA_STATIC_NOT_SET = 0x3ec,
 720    D3D12_MESSAGE_ID_GPU_BASED_VALIDATION_RESOURCE_ACCESS_OUT_OF_BOUNDS = 0x3ed,
 721    D3D12_MESSAGE_ID_GPU_BASED_VALIDATION_SAMPLER_MODE_MISMATCH = 0x3ee,
 722    D3D12_MESSAGE_ID_CREATE_FENCE_INVALID_FLAGS = 0x3ef,
 723    D3D12_MESSAGE_ID_RESOURCE_BARRIER_DUPLICATE_SUBRESOURCE_TRANSITIONS = 0x3f0,
 724    D3D12_MESSAGE_ID_SETRESIDENCYPRIORITY_INVALID_PRIORITY = 0x3f1,
 725    D3D12_MESSAGE_ID_CREATE_DESCRIPTOR_HEAP_LARGE_NUM_DESCRIPTORS = 0x3f5,
 726    D3D12_MESSAGE_ID_BEGIN_EVENT = 0x3f6,
 727    D3D12_MESSAGE_ID_END_EVENT = 0x3f7,
 728    D3D12_MESSAGE_ID_CREATEDEVICE_DEBUG_LAYER_STARTUP_OPTIONS = 0x3f8,
 729    D3D12_MESSAGE_ID_CREATEDEPTHSTENCILSTATE_DEPTHBOUNDSTEST_UNSUPPORTED = 0x3f9,
 730    D3D12_MESSAGE_ID_CREATEPIPELINESTATE_DUPLICATE_SUBOBJECT = 0x3fa,
 731    D3D12_MESSAGE_ID_CREATEPIPELINESTATE_UNKNOWN_SUBOBJECT = 0x3fb,
 732    D3D12_MESSAGE_ID_CREATEPIPELINESTATE_ZERO_SIZE_STREAM = 0x3fc,
 733    D3D12_MESSAGE_ID_CREATEPIPELINESTATE_INVALID_STREAM = 0x3fd,
 734    D3D12_MESSAGE_ID_CREATEPIPELINESTATE_CANNOT_DEDUCE_TYPE = 0x3fe,
 735    D3D12_MESSAGE_ID_COMMAND_LIST_STATIC_DESCRIPTOR_RESOURCE_DIMENSION_MISMATCH = 0x3ff,
 736    D3D12_MESSAGE_ID_CREATE_COMMAND_QUEUE_INSUFFICIENT_PRIVILEGE_FOR_GLOBAL_REALTIME = 0x400,
 737    D3D12_MESSAGE_ID_CREATE_COMMAND_QUEUE_INSUFFICIENT_HARDWARE_SUPPORT_FOR_GLOBAL_REALTIME = 0x401,
 738    D3D12_MESSAGE_ID_ATOMICCOPYBUFFER_INVALID_ARCHITECTURE = 0x402,
 739    D3D12_MESSAGE_ID_ATOMICCOPYBUFFER_NULL_DST = 0x403,
 740    D3D12_MESSAGE_ID_ATOMICCOPYBUFFER_INVALID_DST_RESOURCE_DIMENSION = 0x404,
 741    D3D12_MESSAGE_ID_ATOMICCOPYBUFFER_DST_RANGE_OUT_OF_BOUNDS = 0x405,
 742    D3D12_MESSAGE_ID_ATOMICCOPYBUFFER_NULL_SRC = 0x406,
 743    D3D12_MESSAGE_ID_ATOMICCOPYBUFFER_INVALID_SRC_RESOURCE_DIMENSION = 0x407,
 744    D3D12_MESSAGE_ID_ATOMICCOPYBUFFER_SRC_RANGE_OUT_OF_BOUNDS = 0x408,
 745    D3D12_MESSAGE_ID_ATOMICCOPYBUFFER_INVALID_OFFSET_ALIGNMENT = 0x409,
 746    D3D12_MESSAGE_ID_ATOMICCOPYBUFFER_NULL_DEPENDENT_RESOURCES = 0x40a,
 747    D3D12_MESSAGE_ID_ATOMICCOPYBUFFER_NULL_DEPENDENT_SUBRESOURCE_RANGES = 0x40b,
 748    D3D12_MESSAGE_ID_ATOMICCOPYBUFFER_INVALID_DEPENDENT_RESOURCE = 0x40c,
 749    D3D12_MESSAGE_ID_ATOMICCOPYBUFFER_INVALID_DEPENDENT_SUBRESOURCE_RANGE = 0x40d,
 750    D3D12_MESSAGE_ID_ATOMICCOPYBUFFER_DEPENDENT_SUBRESOURCE_OUT_OF_BOUNDS = 0x40e,
 751    D3D12_MESSAGE_ID_ATOMICCOPYBUFFER_DEPENDENT_RANGE_OUT_OF_BOUNDS = 0x40f,
 752    D3D12_MESSAGE_ID_ATOMICCOPYBUFFER_ZERO_DEPENDENCIES = 0x410,
 753    D3D12_MESSAGE_ID_DEVICE_CREATE_SHARED_HANDLE_INVALIDARG = 0x411,
 754    D3D12_MESSAGE_ID_DESCRIPTOR_HANDLE_WITH_INVALID_RESOURCE = 0x412,
 755    D3D12_MESSAGE_ID_SETDEPTHBOUNDS_INVALIDARGS = 0x413,
 756    D3D12_MESSAGE_ID_GPU_BASED_VALIDATION_RESOURCE_STATE_IMPRECISE = 0x414,
 757    D3D12_MESSAGE_ID_COMMAND_LIST_PIPELINE_STATE_NOT_SET = 0x415,
 758    D3D12_MESSAGE_ID_CREATEGRAPHICSPIPELINESTATE_SHADER_MODEL_MISMATCH = 0x416,
 759    D3D12_MESSAGE_ID_OBJECT_ACCESSED_WHILE_STILL_IN_USE = 0x417,
 760    D3D12_MESSAGE_ID_PROGRAMMABLE_MSAA_UNSUPPORTED = 0x418,
 761    D3D12_MESSAGE_ID_SETSAMPLEPOSITIONS_INVALIDARGS = 0x419,
 762    D3D12_MESSAGE_ID_RESOLVESUBRESOURCEREGION_INVALID_RECT = 0x41a,
 763    D3D12_MESSAGE_ID_CREATE_VIDEODECODECOMMANDQUEUE = 0x41b,
 764    D3D12_MESSAGE_ID_CREATE_VIDEOPROCESSCOMMANDLIST = 0x41c,
 765    D3D12_MESSAGE_ID_CREATE_VIDEOPROCESSCOMMANDQUEUE = 0x41d,
 766    D3D12_MESSAGE_ID_LIVE_VIDEODECODECOMMANDQUEUE = 0x41e,
 767    D3D12_MESSAGE_ID_LIVE_VIDEOPROCESSCOMMANDLIST = 0x41f,
 768    D3D12_MESSAGE_ID_LIVE_VIDEOPROCESSCOMMANDQUEUE = 0x420,
 769    D3D12_MESSAGE_ID_DESTROY_VIDEODECODECOMMANDQUEUE = 0x421,
 770    D3D12_MESSAGE_ID_DESTROY_VIDEOPROCESSCOMMANDLIST = 0x422,
 771    D3D12_MESSAGE_ID_DESTROY_VIDEOPROCESSCOMMANDQUEUE = 0x423,
 772    D3D12_MESSAGE_ID_CREATE_VIDEOPROCESSOR = 0x424,
 773    D3D12_MESSAGE_ID_CREATE_VIDEOPROCESSSTREAM = 0x425,
 774    D3D12_MESSAGE_ID_LIVE_VIDEOPROCESSOR = 0x426,
 775    D3D12_MESSAGE_ID_LIVE_VIDEOPROCESSSTREAM = 0x427,
 776    D3D12_MESSAGE_ID_DESTROY_VIDEOPROCESSOR = 0x428,
 777    D3D12_MESSAGE_ID_DESTROY_VIDEOPROCESSSTREAM = 0x429,
 778    D3D12_MESSAGE_ID_PROCESS_FRAME_INVALID_PARAMETERS = 0x42a,
 779    D3D12_MESSAGE_ID_COPY_INVALIDLAYOUT = 0x42b,
 780    D3D12_MESSAGE_ID_CREATE_CRYPTO_SESSION = 0x42c,
 781    D3D12_MESSAGE_ID_CREATE_CRYPTO_SESSION_POLICY = 0x42d,
 782    D3D12_MESSAGE_ID_CREATE_PROTECTED_RESOURCE_SESSION = 0x42e,
 783    D3D12_MESSAGE_ID_LIVE_CRYPTO_SESSION = 0x42f,
 784    D3D12_MESSAGE_ID_LIVE_CRYPTO_SESSION_POLICY = 0x430,
 785    D3D12_MESSAGE_ID_LIVE_PROTECTED_RESOURCE_SESSION = 0x431,
 786    D3D12_MESSAGE_ID_DESTROY_CRYPTO_SESSION = 0x432,
 787    D3D12_MESSAGE_ID_DESTROY_CRYPTO_SESSION_POLICY = 0x433,
 788    D3D12_MESSAGE_ID_DESTROY_PROTECTED_RESOURCE_SESSION = 0x434,
 789    D3D12_MESSAGE_ID_PROTECTED_RESOURCE_SESSION_UNSUPPORTED = 0x435,
 790    D3D12_MESSAGE_ID_FENCE_INVALIDOPERATION = 0x436,
 791    D3D12_MESSAGE_ID_CREATEQUERY_HEAP_COPY_QUEUE_TIMESTAMPS_NOT_SUPPORTED = 0x437,
 792    D3D12_MESSAGE_ID_SAMPLEPOSITIONS_MISMATCH_DEFERRED = 0x438,
 793    D3D12_MESSAGE_ID_SAMPLEPOSITIONS_MISMATCH_RECORDTIME_ASSUMEDFROMFIRSTUSE = 0x439,
 794    D3D12_MESSAGE_ID_SAMPLEPOSITIONS_MISMATCH_RECORDTIME_ASSUMEDFROMCLEAR = 0x43a,
 795    D3D12_MESSAGE_ID_CREATE_VIDEODECODERHEAP = 0x43b,
 796    D3D12_MESSAGE_ID_LIVE_VIDEODECODERHEAP = 0x43c,
 797    D3D12_MESSAGE_ID_DESTROY_VIDEODECODERHEAP = 0x43d,
 798    D3D12_MESSAGE_ID_OPENEXISTINGHEAP_INVALIDARG_RETURN = 0x43e,
 799    D3D12_MESSAGE_ID_OPENEXISTINGHEAP_OUTOFMEMORY_RETURN = 0x43f,
 800    D3D12_MESSAGE_ID_OPENEXISTINGHEAP_INVALIDADDRESS = 0x440,
 801    D3D12_MESSAGE_ID_OPENEXISTINGHEAP_INVALIDHANDLE = 0x441,
 802    D3D12_MESSAGE_ID_WRITEBUFFERIMMEDIATE_INVALID_DEST = 0x442,
 803    D3D12_MESSAGE_ID_WRITEBUFFERIMMEDIATE_INVALID_MODE = 0x443,
 804    D3D12_MESSAGE_ID_WRITEBUFFERIMMEDIATE_INVALID_ALIGNMENT = 0x444,
 805    D3D12_MESSAGE_ID_WRITEBUFFERIMMEDIATE_NOT_SUPPORTED = 0x445,
 806    D3D12_MESSAGE_ID_SETVIEWINSTANCEMASK_INVALIDARGS = 0x446,
 807    D3D12_MESSAGE_ID_VIEW_INSTANCING_UNSUPPORTED = 0x447,
 808    D3D12_MESSAGE_ID_VIEW_INSTANCING_INVALIDARGS = 0x448,
 809    D3D12_MESSAGE_ID_COPYTEXTUREREGION_MISMATCH_DECODE_REFERENCE_ONLY_FLAG = 0x449,
 810    D3D12_MESSAGE_ID_COPYRESOURCE_MISMATCH_DECODE_REFERENCE_ONLY_FLAG = 0x44a,
 811    D3D12_MESSAGE_ID_CREATE_VIDEO_DECODE_HEAP_CAPS_FAILURE = 0x44b,
 812    D3D12_MESSAGE_ID_CREATE_VIDEO_DECODE_HEAP_CAPS_UNSUPPORTED = 0x44c,
 813    D3D12_MESSAGE_ID_VIDEO_DECODE_SUPPORT_INVALID_INPUT = 0x44d,
 814    D3D12_MESSAGE_ID_CREATE_VIDEO_DECODER_UNSUPPORTED = 0x44e,
 815    D3D12_MESSAGE_ID_CREATEGRAPHICSPIPELINESTATE_METADATA_ERROR = 0x44f,
 816    D3D12_MESSAGE_ID_CREATEGRAPHICSPIPELINESTATE_VIEW_INSTANCING_VERTEX_SIZE_EXCEEDED = 0x450,
 817    D3D12_MESSAGE_ID_CREATEGRAPHICSPIPELINESTATE_RUNTIME_INTERNAL_ERROR = 0x451,
 818    D3D12_MESSAGE_ID_NO_VIDEO_API_SUPPORT = 0x452,
 819    D3D12_MESSAGE_ID_VIDEO_PROCESS_SUPPORT_INVALID_INPUT = 0x453,
 820    D3D12_MESSAGE_ID_CREATE_VIDEO_PROCESSOR_CAPS_FAILURE = 0x454,
 821    D3D12_MESSAGE_ID_VIDEO_PROCESS_SUPPORT_UNSUPPORTED_FORMAT = 0x455,
 822    D3D12_MESSAGE_ID_VIDEO_DECODE_FRAME_INVALID_ARGUMENT = 0x456,
 823    D3D12_MESSAGE_ID_ENQUEUE_MAKE_RESIDENT_INVALID_FLAGS = 0x457,
 824    D3D12_MESSAGE_ID_OPENEXISTINGHEAP_UNSUPPORTED = 0x458,
 825    D3D12_MESSAGE_ID_VIDEO_PROCESS_FRAMES_INVALID_ARGUMENT = 0x459,
 826    D3D12_MESSAGE_ID_VIDEO_DECODE_SUPPORT_UNSUPPORTED = 0x45a,
 827    D3D12_MESSAGE_ID_CREATE_COMMANDRECORDER = 0x45b,
 828    D3D12_MESSAGE_ID_LIVE_COMMANDRECORDER = 0x45c,
 829    D3D12_MESSAGE_ID_DESTROY_COMMANDRECORDER = 0x45d,
 830    D3D12_MESSAGE_ID_CREATE_COMMAND_RECORDER_VIDEO_NOT_SUPPORTED = 0x45e,
 831    D3D12_MESSAGE_ID_CREATE_COMMAND_RECORDER_INVALID_SUPPORT_FLAGS = 0x45f,
 832    D3D12_MESSAGE_ID_CREATE_COMMAND_RECORDER_INVALID_FLAGS = 0x460,
 833    D3D12_MESSAGE_ID_CREATE_COMMAND_RECORDER_MORE_RECORDERS_THAN_LOGICAL_PROCESSORS = 0x461,
 834    D3D12_MESSAGE_ID_CREATE_COMMANDPOOL = 0x462,
 835    D3D12_MESSAGE_ID_LIVE_COMMANDPOOL = 0x463,
 836    D3D12_MESSAGE_ID_DESTROY_COMMANDPOOL = 0x464,
 837    D3D12_MESSAGE_ID_CREATE_COMMAND_POOL_INVALID_FLAGS = 0x465,
 838    D3D12_MESSAGE_ID_CREATE_COMMAND_LIST_VIDEO_NOT_SUPPORTED = 0x466,
 839    D3D12_MESSAGE_ID_COMMAND_RECORDER_SUPPORT_FLAGS_MISMATCH = 0x467,
 840    D3D12_MESSAGE_ID_COMMAND_RECORDER_CONTENTION = 0x468,
 841    D3D12_MESSAGE_ID_COMMAND_RECORDER_USAGE_WITH_CREATECOMMANDLIST_COMMAND_LIST = 0x469,
 842    D3D12_MESSAGE_ID_COMMAND_ALLOCATOR_USAGE_WITH_CREATECOMMANDLIST1_COMMAND_LIST = 0x46a,
 843    D3D12_MESSAGE_ID_CANNOT_EXECUTE_EMPTY_COMMAND_LIST = 0x46b,
 844    D3D12_MESSAGE_ID_CANNOT_RESET_COMMAND_POOL_WITH_OPEN_COMMAND_LISTS = 0x46c,
 845    D3D12_MESSAGE_ID_CANNOT_USE_COMMAND_RECORDER_WITHOUT_CURRENT_TARGET = 0x46d,
 846    D3D12_MESSAGE_ID_CANNOT_CHANGE_COMMAND_RECORDER_TARGET_WHILE_RECORDING = 0x46e,
 847    D3D12_MESSAGE_ID_COMMAND_POOL_SYNC = 0x46f,
 848    D3D12_MESSAGE_ID_EVICT_UNDERFLOW = 0x470,
 849    D3D12_MESSAGE_ID_CREATE_META_COMMAND = 0x471,
 850    D3D12_MESSAGE_ID_LIVE_META_COMMAND = 0x472,
 851    D3D12_MESSAGE_ID_DESTROY_META_COMMAND = 0x473,
 852    D3D12_MESSAGE_ID_COPYBUFFERREGION_INVALID_DST_RESOURCE = 0x474,
 853    D3D12_MESSAGE_ID_COPYBUFFERREGION_INVALID_SRC_RESOURCE = 0x475,
 854    D3D12_MESSAGE_ID_ATOMICCOPYBUFFER_INVALID_DST_RESOURCE = 0x476,
 855    D3D12_MESSAGE_ID_ATOMICCOPYBUFFER_INVALID_SRC_RESOURCE = 0x477,
 856    D3D12_MESSAGE_ID_CREATEPLACEDRESOURCEONBUFFER_NULL_BUFFER = 0x478,
 857    D3D12_MESSAGE_ID_CREATEPLACEDRESOURCEONBUFFER_NULL_RESOURCE_DESC = 0x479,
 858    D3D12_MESSAGE_ID_CREATEPLACEDRESOURCEONBUFFER_UNSUPPORTED = 0x47a,
 859    D3D12_MESSAGE_ID_CREATEPLACEDRESOURCEONBUFFER_INVALID_BUFFER_DIMENSION = 0x47b,
 860    D3D12_MESSAGE_ID_CREATEPLACEDRESOURCEONBUFFER_INVALID_BUFFER_FLAGS = 0x47c,
 861    D3D12_MESSAGE_ID_CREATEPLACEDRESOURCEONBUFFER_INVALID_BUFFER_OFFSET = 0x47d,
 862    D3D12_MESSAGE_ID_CREATEPLACEDRESOURCEONBUFFER_INVALID_RESOURCE_DIMENSION = 0x47e,
 863    D3D12_MESSAGE_ID_CREATEPLACEDRESOURCEONBUFFER_INVALID_RESOURCE_FLAGS = 0x47f,
 864    D3D12_MESSAGE_ID_CREATEPLACEDRESOURCEONBUFFER_OUTOFMEMORY_RETURN = 0x480,
 865    D3D12_MESSAGE_ID_CANNOT_CREATE_GRAPHICS_AND_VIDEO_COMMAND_RECORDER = 0x481,
 866    D3D12_MESSAGE_ID_UPDATETILEMAPPINGS_POSSIBLY_MISMATCHING_PROPERTIES = 0x482,
 867    D3D12_MESSAGE_ID_CREATE_COMMAND_LIST_INVALID_COMMAND_LIST_TYPE = 0x483,
 868    D3D12_MESSAGE_ID_CLEARUNORDEREDACCESSVIEW_INCOMPATIBLE_WITH_STRUCTURED_BUFFERS = 0x484,
 869    D3D12_MESSAGE_ID_COMPUTE_ONLY_DEVICE_OPERATION_UNSUPPORTED = 0x485,
 870    D3D12_MESSAGE_ID_BUILD_RAYTRACING_ACCELERATION_STRUCTURE_INVALID = 0x486,
 871    D3D12_MESSAGE_ID_EMIT_RAYTRACING_ACCELERATION_STRUCTURE_POSTBUILD_INFO_INVALID = 0x487,
 872    D3D12_MESSAGE_ID_COPY_RAYTRACING_ACCELERATION_STRUCTURE_INVALID = 0x488,
 873    D3D12_MESSAGE_ID_DISPATCH_RAYS_INVALID = 0x489,
 874    D3D12_MESSAGE_ID_GET_RAYTRACING_ACCELERATION_STRUCTURE_PREBUILD_INFO_INVALID = 0x48a,
 875    D3D12_MESSAGE_ID_CREATE_LIFETIMETRACKER = 0x48b,
 876    D3D12_MESSAGE_ID_LIVE_LIFETIMETRACKER = 0x48c,
 877    D3D12_MESSAGE_ID_DESTROY_LIFETIMETRACKER = 0x48d,
 878    D3D12_MESSAGE_ID_DESTROYOWNEDOBJECT_OBJECTNOTOWNED = 0x48e,
 879    D3D12_MESSAGE_ID_CREATE_TRACKEDWORKLOAD = 0x48f,
 880    D3D12_MESSAGE_ID_LIVE_TRACKEDWORKLOAD = 0x490,
 881    D3D12_MESSAGE_ID_DESTROY_TRACKEDWORKLOAD = 0x491,
 882    D3D12_MESSAGE_ID_RENDER_PASS_ERROR = 0x492,
 883    D3D12_MESSAGE_ID_META_COMMAND_ID_INVALID = 0x493,
 884    D3D12_MESSAGE_ID_META_COMMAND_UNSUPPORTED_PARAMS = 0x494,
 885    D3D12_MESSAGE_ID_META_COMMAND_FAILED_ENUMERATION = 0x495,
 886    D3D12_MESSAGE_ID_META_COMMAND_PARAMETER_SIZE_MISMATCH = 0x496,
 887    D3D12_MESSAGE_ID_UNINITIALIZED_META_COMMAND = 0x497,
 888    D3D12_MESSAGE_ID_META_COMMAND_INVALID_GPU_VIRTUAL_ADDRESS = 0x498,
 889    D3D12_MESSAGE_ID_CREATE_VIDEOENCODECOMMANDLIST = 0x499,
 890    D3D12_MESSAGE_ID_LIVE_VIDEOENCODECOMMANDLIST = 0x49a,
 891    D3D12_MESSAGE_ID_DESTROY_VIDEOENCODECOMMANDLIST = 0x49b,
 892    D3D12_MESSAGE_ID_CREATE_VIDEOENCODECOMMANDQUEUE = 0x49c,
 893    D3D12_MESSAGE_ID_LIVE_VIDEOENCODECOMMANDQUEUE = 0x49d,
 894    D3D12_MESSAGE_ID_DESTROY_VIDEOENCODECOMMANDQUEUE = 0x49e,
 895    D3D12_MESSAGE_ID_CREATE_VIDEOMOTIONESTIMATOR = 0x49f,
 896    D3D12_MESSAGE_ID_LIVE_VIDEOMOTIONESTIMATOR = 0x4a0,
 897    D3D12_MESSAGE_ID_DESTROY_VIDEOMOTIONESTIMATOR = 0x4a1,
 898    D3D12_MESSAGE_ID_CREATE_VIDEOMOTIONVECTORHEAP = 0x4a2,
 899    D3D12_MESSAGE_ID_LIVE_VIDEOMOTIONVECTORHEAP = 0x4a3,
 900    D3D12_MESSAGE_ID_DESTROY_VIDEOMOTIONVECTORHEAP = 0x4a4,
 901    D3D12_MESSAGE_ID_MULTIPLE_TRACKED_WORKLOADS = 0x4a5,
 902    D3D12_MESSAGE_ID_MULTIPLE_TRACKED_WORKLOAD_PAIRS = 0x4a6,
 903    D3D12_MESSAGE_ID_OUT_OF_ORDER_TRACKED_WORKLOAD_PAIR = 0x4a7,
 904    D3D12_MESSAGE_ID_CANNOT_ADD_TRACKED_WORKLOAD = 0x4a8,
 905    D3D12_MESSAGE_ID_INCOMPLETE_TRACKED_WORKLOAD_PAIR = 0x4a9,
 906    D3D12_MESSAGE_ID_CREATE_STATE_OBJECT_ERROR = 0x4aa,
 907    D3D12_MESSAGE_ID_GET_SHADER_IDENTIFIER_ERROR = 0x4ab,
 908    D3D12_MESSAGE_ID_GET_SHADER_STACK_SIZE_ERROR = 0x4ac,
 909    D3D12_MESSAGE_ID_GET_PIPELINE_STACK_SIZE_ERROR = 0x4ad,
 910    D3D12_MESSAGE_ID_SET_PIPELINE_STACK_SIZE_ERROR = 0x4ae,
 911    D3D12_MESSAGE_ID_GET_SHADER_IDENTIFIER_SIZE_INVALID = 0x4af,
 912    D3D12_MESSAGE_ID_CHECK_DRIVER_MATCHING_IDENTIFIER_INVALID = 0x4b0,
 913    D3D12_MESSAGE_ID_CHECK_DRIVER_MATCHING_IDENTIFIER_DRIVER_REPORTED_ISSUE = 0x4b1,
 914    D3D12_MESSAGE_ID_RENDER_PASS_INVALID_RESOURCE_BARRIER = 0x4b2,
 915    D3D12_MESSAGE_ID_RENDER_PASS_DISALLOWED_API_CALLED = 0x4b3,
 916    D3D12_MESSAGE_ID_RENDER_PASS_CANNOT_NEST_RENDER_PASSES = 0x4b4,
 917    D3D12_MESSAGE_ID_RENDER_PASS_CANNOT_END_WITHOUT_BEGIN = 0x4b5,
 918    D3D12_MESSAGE_ID_RENDER_PASS_CANNOT_CLOSE_COMMAND_LIST = 0x4b6,
 919    D3D12_MESSAGE_ID_RENDER_PASS_GPU_WORK_WHILE_SUSPENDED = 0x4b7,
 920    D3D12_MESSAGE_ID_RENDER_PASS_MISMATCHING_SUSPEND_RESUME = 0x4b8,
 921    D3D12_MESSAGE_ID_RENDER_PASS_NO_PRIOR_SUSPEND_WITHIN_EXECUTECOMMANDLISTS = 0x4b9,
 922    D3D12_MESSAGE_ID_RENDER_PASS_NO_SUBSEQUENT_RESUME_WITHIN_EXECUTECOMMANDLISTS = 0x4ba,
 923    D3D12_MESSAGE_ID_TRACKED_WORKLOAD_COMMAND_QUEUE_MISMATCH = 0x4bb,
 924    D3D12_MESSAGE_ID_TRACKED_WORKLOAD_NOT_SUPPORTED = 0x4bc,
 925    D3D12_MESSAGE_ID_RENDER_PASS_MISMATCHING_NO_ACCESS = 0x4bd,
 926    D3D12_MESSAGE_ID_RENDER_PASS_UNSUPPORTED_RESOLVE = 0x4be,
 927    D3D12_MESSAGE_ID_CLEARUNORDEREDACCESSVIEW_INVALID_RESOURCE_PTR = 0x4bf,
 928    D3D12_MESSAGE_ID_WINDOWS7_FENCE_OUTOFORDER_SIGNAL = 0x4c0,
 929    D3D12_MESSAGE_ID_WINDOWS7_FENCE_OUTOFORDER_WAIT = 0x4c1,
 930    D3D12_MESSAGE_ID_VIDEO_CREATE_MOTION_ESTIMATOR_INVALID_ARGUMENT = 0x4c2,
 931    D3D12_MESSAGE_ID_VIDEO_CREATE_MOTION_VECTOR_HEAP_INVALID_ARGUMENT = 0x4c3,
 932    D3D12_MESSAGE_ID_ESTIMATE_MOTION_INVALID_ARGUMENT = 0x4c4,
 933    D3D12_MESSAGE_ID_RESOLVE_MOTION_VECTOR_HEAP_INVALID_ARGUMENT = 0x4c5,
 934    D3D12_MESSAGE_ID_GETGPUVIRTUALADDRESS_INVALID_HEAP_TYPE = 0x4c6,
 935    D3D12_MESSAGE_ID_SET_BACKGROUND_PROCESSING_MODE_INVALID_ARGUMENT = 0x4c7,
 936    D3D12_MESSAGE_ID_CREATE_COMMAND_LIST_INVALID_COMMAND_LIST_TYPE_FOR_FEATURE_LEVEL = 0x4c8,
 937    D3D12_MESSAGE_ID_CREATE_VIDEOEXTENSIONCOMMAND = 0x4c9,
 938    D3D12_MESSAGE_ID_LIVE_VIDEOEXTENSIONCOMMAND = 0x4ca,
 939    D3D12_MESSAGE_ID_DESTROY_VIDEOEXTENSIONCOMMAND = 0x4cb,
 940    D3D12_MESSAGE_ID_INVALID_VIDEO_EXTENSION_COMMAND_ID = 0x4cc,
 941    D3D12_MESSAGE_ID_VIDEO_EXTENSION_COMMAND_INVALID_ARGUMENT = 0x4cd,
 942    D3D12_MESSAGE_ID_CREATE_ROOT_SIGNATURE_NOT_UNIQUE_IN_DXIL_LIBRARY = 0x4ce,
 943    D3D12_MESSAGE_ID_VARIABLE_SHADING_RATE_NOT_ALLOWED_WITH_TIR = 0x4cf,
 944    D3D12_MESSAGE_ID_GEOMETRY_SHADER_OUTPUTTING_BOTH_VIEWPORT_ARRAY_INDEX_AND_SHADING_RATE_NOT_SUPPORTED_ON_DEVICE = 0x4d0,
 945    D3D12_MESSAGE_ID_RSSETSHADING_RATE_INVALID_SHADING_RATE = 0x4d1,
 946    D3D12_MESSAGE_ID_RSSETSHADING_RATE_SHADING_RATE_NOT_PERMITTED_BY_CAP = 0x4d2,
 947    D3D12_MESSAGE_ID_RSSETSHADING_RATE_INVALID_COMBINER = 0x4d3,
 948    D3D12_MESSAGE_ID_RSSETSHADINGRATEIMAGE_REQUIRES_TIER_2 = 0x4d4,
 949    D3D12_MESSAGE_ID_RSSETSHADINGRATE_REQUIRES_TIER_1 = 0x4d5,
 950    D3D12_MESSAGE_ID_SHADING_RATE_IMAGE_INCORRECT_FORMAT = 0x4d6,
 951    D3D12_MESSAGE_ID_SHADING_RATE_IMAGE_INCORRECT_ARRAY_SIZE = 0x4d7,
 952    D3D12_MESSAGE_ID_SHADING_RATE_IMAGE_INCORRECT_MIP_LEVEL = 0x4d8,
 953    D3D12_MESSAGE_ID_SHADING_RATE_IMAGE_INCORRECT_SAMPLE_COUNT = 0x4d9,
 954    D3D12_MESSAGE_ID_SHADING_RATE_IMAGE_INCORRECT_SAMPLE_QUALITY = 0x4da,
 955    D3D12_MESSAGE_ID_NON_RETAIL_SHADER_MODEL_WONT_VALIDATE = 0x4db,
 956    D3D12_MESSAGE_ID_CREATEGRAPHICSPIPELINESTATE_AS_ROOT_SIGNATURE_MISMATCH = 0x4dc,
 957    D3D12_MESSAGE_ID_CREATEGRAPHICSPIPELINESTATE_MS_ROOT_SIGNATURE_MISMATCH = 0x4dd,
 958    D3D12_MESSAGE_ID_ADD_TO_STATE_OBJECT_ERROR = 0x4de,
 959    D3D12_MESSAGE_ID_CREATE_PROTECTED_RESOURCE_SESSION_INVALID_ARGUMENT = 0x4df,
 960    D3D12_MESSAGE_ID_CREATEGRAPHICSPIPELINESTATE_MS_PSO_DESC_MISMATCH = 0x4e0,
 961    D3D12_MESSAGE_ID_CREATEPIPELINESTATE_MS_INCOMPLETE_TYPE = 0x4e1,
 962    D3D12_MESSAGE_ID_CREATEGRAPHICSPIPELINESTATE_AS_NOT_MS_MISMATCH = 0x4e2,
 963    D3D12_MESSAGE_ID_CREATEGRAPHICSPIPELINESTATE_MS_NOT_PS_MISMATCH = 0x4e3,
 964    D3D12_MESSAGE_ID_NONZERO_SAMPLER_FEEDBACK_MIP_REGION_WITH_INCOMPATIBLE_FORMAT = 0x4e4,
 965    D3D12_MESSAGE_ID_CREATEGRAPHICSPIPELINESTATE_INPUTLAYOUT_SHADER_MISMATCH = 0x4e5,
 966    D3D12_MESSAGE_ID_EMPTY_DISPATCH = 0x4e6,
 967    D3D12_MESSAGE_ID_RESOURCE_FORMAT_REQUIRES_SAMPLER_FEEDBACK_CAPABILITY = 0x4e7,
 968    D3D12_MESSAGE_ID_SAMPLER_FEEDBACK_MAP_INVALID_MIP_REGION = 0x4e8,
 969    D3D12_MESSAGE_ID_SAMPLER_FEEDBACK_MAP_INVALID_DIMENSION = 0x4e9,
 970    D3D12_MESSAGE_ID_SAMPLER_FEEDBACK_MAP_INVALID_SAMPLE_COUNT = 0x4ea,
 971    D3D12_MESSAGE_ID_SAMPLER_FEEDBACK_MAP_INVALID_SAMPLE_QUALITY = 0x4eb,
 972    D3D12_MESSAGE_ID_SAMPLER_FEEDBACK_MAP_INVALID_LAYOUT = 0x4ec,
 973    D3D12_MESSAGE_ID_SAMPLER_FEEDBACK_MAP_REQUIRES_UNORDERED_ACCESS_FLAG = 0x4ed,
 974    D3D12_MESSAGE_ID_SAMPLER_FEEDBACK_CREATE_UAV_NULL_ARGUMENTS = 0x4ee,
 975    D3D12_MESSAGE_ID_SAMPLER_FEEDBACK_UAV_REQUIRES_SAMPLER_FEEDBACK_CAPABILITY = 0x4ef,
 976    D3D12_MESSAGE_ID_SAMPLER_FEEDBACK_CREATE_UAV_REQUIRES_FEEDBACK_MAP_FORMAT = 0x4f0,
 977    D3D12_MESSAGE_ID_CREATEMESHSHADER_INVALIDSHADERBYTECODE = 0x4f1,
 978    D3D12_MESSAGE_ID_CREATEMESHSHADER_OUTOFMEMORY = 0x4f2,
 979    D3D12_MESSAGE_ID_CREATEMESHSHADERWITHSTREAMOUTPUT_INVALIDSHADERTYPE = 0x4f3,
 980    D3D12_MESSAGE_ID_RESOLVESUBRESOURCE_SAMPLER_FEEDBACK_TRANSCODE_INVALID_FORMAT = 0x4f4,
 981    D3D12_MESSAGE_ID_RESOLVESUBRESOURCE_SAMPLER_FEEDBACK_INVALID_MIP_LEVEL_COUNT = 0x4f5,
 982    D3D12_MESSAGE_ID_RESOLVESUBRESOURCE_SAMPLER_FEEDBACK_TRANSCODE_ARRAY_SIZE_MISMATCH = 0x4f6,
 983    D3D12_MESSAGE_ID_SAMPLER_FEEDBACK_CREATE_UAV_MISMATCHING_TARGETED_RESOURCE = 0x4f7,
 984    D3D12_MESSAGE_ID_CREATEMESHSHADER_OUTPUTEXCEEDSMAXSIZE = 0x4f8,
 985    D3D12_MESSAGE_ID_CREATEMESHSHADER_GROUPSHAREDEXCEEDSMAXSIZE = 0x4f9,
 986    D3D12_MESSAGE_ID_VERTEX_SHADER_OUTPUTTING_BOTH_VIEWPORT_ARRAY_INDEX_AND_SHADING_RATE_NOT_SUPPORTED_ON_DEVICE = 0x4fa,
 987    D3D12_MESSAGE_ID_MESH_SHADER_OUTPUTTING_BOTH_VIEWPORT_ARRAY_INDEX_AND_SHADING_RATE_NOT_SUPPORTED_ON_DEVICE = 0x4fb,
 988    D3D12_MESSAGE_ID_CREATEMESHSHADER_MISMATCHEDASMSPAYLOADSIZE = 0x4fc,
 989    D3D12_MESSAGE_ID_CREATE_ROOT_SIGNATURE_UNBOUNDED_STATIC_DESCRIPTORS = 0x4fd,
 990    D3D12_MESSAGE_ID_CREATEAMPLIFICATIONSHADER_INVALIDSHADERBYTECODE = 0x4fe,
 991    D3D12_MESSAGE_ID_CREATEAMPLIFICATIONSHADER_OUTOFMEMORY = 0x4ff,
 992    D3D12_MESSAGE_ID_D3D12_MESSAGES_END = 0x500
 993} D3D12_MESSAGE_ID;
 994typedef enum D3D12_GPU_BASED_VALIDATION_SHADER_PATCH_MODE {
 995    D3D12_GPU_BASED_VALIDATION_SHADER_PATCH_MODE_NONE = 0x0,
 996    D3D12_GPU_BASED_VALIDATION_SHADER_PATCH_MODE_STATE_TRACKING_ONLY = 0x1,
 997    D3D12_GPU_BASED_VALIDATION_SHADER_PATCH_MODE_UNGUARDED_VALIDATION = 0x2,
 998    D3D12_GPU_BASED_VALIDATION_SHADER_PATCH_MODE_GUARDED_VALIDATION = 0x3,
 999    NUM_D3D12_GPU_BASED_VALIDATION_SHADER_PATCH_MODES = 0x4
1000} D3D12_GPU_BASED_VALIDATION_SHADER_PATCH_MODE;
1001typedef enum D3D12_GPU_BASED_VALIDATION_FLAGS {
1002    D3D12_GPU_BASED_VALIDATION_FLAGS_NONE = 0x0,
1003    D3D12_GPU_BASED_VALIDATION_FLAGS_DISABLE_STATE_TRACKING = 0x1
1004} D3D12_GPU_BASED_VALIDATION_FLAGS;
1005DEFINE_ENUM_FLAG_OPERATORS(D3D12_GPU_BASED_VALIDATION_FLAGS)
1006typedef enum D3D12_RLDO_FLAGS {
1007    D3D12_RLDO_NONE = 0x0,
1008    D3D12_RLDO_SUMMARY = 0x1,
1009    D3D12_RLDO_DETAIL = 0x2,
1010    D3D12_RLDO_IGNORE_INTERNAL = 0x4
1011} D3D12_RLDO_FLAGS;
1012DEFINE_ENUM_FLAG_OPERATORS(D3D12_RLDO_FLAGS)
1013typedef enum D3D12_DEBUG_DEVICE_PARAMETER_TYPE {
1014    D3D12_DEBUG_DEVICE_PARAMETER_FEATURE_FLAGS = 0,
1015    D3D12_DEBUG_DEVICE_PARAMETER_GPU_BASED_VALIDATION_SETTINGS = 1,
1016    D3D12_DEBUG_DEVICE_PARAMETER_GPU_SLOWDOWN_PERFORMANCE_FACTOR = 2
1017} D3D12_DEBUG_DEVICE_PARAMETER_TYPE;
1018typedef enum D3D12_DEBUG_FEATURE {
1019    D3D12_DEBUG_FEATURE_NONE = 0x0,
1020    D3D12_DEBUG_FEATURE_ALLOW_BEHAVIOR_CHANGING_DEBUG_AIDS = 0x1,
1021    D3D12_DEBUG_FEATURE_CONSERVATIVE_RESOURCE_STATE_TRACKING = 0x2,
1022    D3D12_DEBUG_FEATURE_DISABLE_VIRTUALIZED_BUNDLES_VALIDATION = 0x4,
1023    D3D12_DEBUG_FEATURE_EMULATE_WINDOWS7 = 0x8
1024} D3D12_DEBUG_FEATURE;
1025DEFINE_ENUM_FLAG_OPERATORS(D3D12_DEBUG_FEATURE)
1026typedef enum D3D12_GPU_BASED_VALIDATION_PIPELINE_STATE_CREATE_FLAGS {
1027    D3D12_GPU_BASED_VALIDATION_PIPELINE_STATE_CREATE_FLAG_NONE = 0x0,
1028    D3D12_GPU_BASED_VALIDATION_PIPELINE_STATE_CREATE_FLAG_FRONT_LOAD_CREATE_TRACKING_ONLY_SHADERS = 0x1,
1029    D3D12_GPU_BASED_VALIDATION_PIPELINE_STATE_CREATE_FLAG_FRONT_LOAD_CREATE_UNGUARDED_VALIDATION_SHADERS = 0x2,
1030    D3D12_GPU_BASED_VALIDATION_PIPELINE_STATE_CREATE_FLAG_FRONT_LOAD_CREATE_GUARDED_VALIDATION_SHADERS = 0x4,
1031    D3D12_GPU_BASED_VALIDATION_PIPELINE_STATE_CREATE_FLAGS_VALID_MASK = 0x7
1032} D3D12_GPU_BASED_VALIDATION_PIPELINE_STATE_CREATE_FLAGS;
1033DEFINE_ENUM_FLAG_OPERATORS(D3D12_GPU_BASED_VALIDATION_PIPELINE_STATE_CREATE_FLAGS)
1034typedef enum D3D12_MESSAGE_CALLBACK_FLAGS {
1035    D3D12_MESSAGE_CALLBACK_FLAG_NONE = 0x0,
1036    D3D12_MESSAGE_CALLBACK_IGNORE_FILTERS = 0x1
1037} D3D12_MESSAGE_CALLBACK_FLAGS;
1038DEFINE_ENUM_FLAG_OPERATORS(D3D12_MESSAGE_CALLBACK_FLAGS)
1039typedef struct D3D12_DEBUG_DEVICE_GPU_BASED_VALIDATION_SETTINGS {
1040    UINT MaxMessagesPerCommandList;
1041    D3D12_GPU_BASED_VALIDATION_SHADER_PATCH_MODE DefaultShaderPatchMode;
1042    D3D12_GPU_BASED_VALIDATION_PIPELINE_STATE_CREATE_FLAGS PipelineStateCreateFlags;
1043} D3D12_DEBUG_DEVICE_GPU_BASED_VALIDATION_SETTINGS;
1044typedef struct D3D12_DEBUG_DEVICE_GPU_SLOWDOWN_PERFORMANCE_FACTOR {
1045    FLOAT SlowdownFactor;
1046} D3D12_DEBUG_DEVICE_GPU_SLOWDOWN_PERFORMANCE_FACTOR;
1047typedef struct D3D12_MESSAGE {
1048    D3D12_MESSAGE_CATEGORY Category;
1049    D3D12_MESSAGE_SEVERITY Severity;
1050    D3D12_MESSAGE_ID ID;
1051    const char *pDescription;
1052    SIZE_T DescriptionByteLength;
1053} D3D12_MESSAGE;
1054typedef struct D3D12_INFO_QUEUE_FILTER_DESC {
1055    UINT NumCategories;
1056    D3D12_MESSAGE_CATEGORY *pCategoryList;
1057    UINT NumSeverities;
1058    D3D12_MESSAGE_SEVERITY *pSeverityList;
1059    UINT NumIDs;
1060    D3D12_MESSAGE_ID *pIDList;
1061} D3D12_INFO_QUEUE_FILTER_DESC;
1062typedef struct D3D12_INFO_QUEUE_FILTER {
1063    D3D12_INFO_QUEUE_FILTER_DESC AllowList;
1064    D3D12_INFO_QUEUE_FILTER_DESC DenyList;
1065} D3D12_INFO_QUEUE_FILTER;
1066/*****************************************************************************
1067 * ID3D12Debug interface
1068 */
1069#ifndef __ID3D12Debug_INTERFACE_DEFINED__
1070#define __ID3D12Debug_INTERFACE_DEFINED__
1071
1072DEFINE_GUID(IID_ID3D12Debug, 0x344488b7, 0x6846, 0x474b, 0xb9,0x89, 0xf0,0x27,0x44,0x82,0x45,0xe0);
1073#if defined(__cplusplus) && !defined(CINTERFACE)
1074MIDL_INTERFACE("344488b7-6846-474b-b989-f027448245e0")
1075ID3D12Debug : public IUnknown
1076{
1077    virtual void STDMETHODCALLTYPE EnableDebugLayer(
1078        ) = 0;
1079
1080};
1081#ifdef __CRT_UUID_DECL
1082__CRT_UUID_DECL(ID3D12Debug, 0x344488b7, 0x6846, 0x474b, 0xb9,0x89, 0xf0,0x27,0x44,0x82,0x45,0xe0)
1083#endif
1084#else
1085typedef struct ID3D12DebugVtbl {
1086    BEGIN_INTERFACE
1087
1088    /*** IUnknown methods ***/
1089    HRESULT (STDMETHODCALLTYPE *QueryInterface)(
1090        ID3D12Debug *This,
1091        REFIID riid,
1092        void **ppvObject);
1093
1094    ULONG (STDMETHODCALLTYPE *AddRef)(
1095        ID3D12Debug *This);
1096
1097    ULONG (STDMETHODCALLTYPE *Release)(
1098        ID3D12Debug *This);
1099
1100    /*** ID3D12Debug methods ***/
1101    void (STDMETHODCALLTYPE *EnableDebugLayer)(
1102        ID3D12Debug *This);
1103
1104    END_INTERFACE
1105} ID3D12DebugVtbl;
1106
1107interface ID3D12Debug {
1108    CONST_VTBL ID3D12DebugVtbl* lpVtbl;
1109};
1110
1111#ifdef COBJMACROS
1112#ifndef WIDL_C_INLINE_WRAPPERS
1113/*** IUnknown methods ***/
1114#define ID3D12Debug_QueryInterface(This,riid,ppvObject) (This)->lpVtbl->QueryInterface(This,riid,ppvObject)
1115#define ID3D12Debug_AddRef(This) (This)->lpVtbl->AddRef(This)
1116#define ID3D12Debug_Release(This) (This)->lpVtbl->Release(This)
1117/*** ID3D12Debug methods ***/
1118#define ID3D12Debug_EnableDebugLayer(This) (This)->lpVtbl->EnableDebugLayer(This)
1119#else
1120/*** IUnknown methods ***/
1121static inline HRESULT ID3D12Debug_QueryInterface(ID3D12Debug* This,REFIID riid,void **ppvObject) {
1122    return This->lpVtbl->QueryInterface(This,riid,ppvObject);
1123}
1124static inline ULONG ID3D12Debug_AddRef(ID3D12Debug* This) {
1125    return This->lpVtbl->AddRef(This);
1126}
1127static inline ULONG ID3D12Debug_Release(ID3D12Debug* This) {
1128    return This->lpVtbl->Release(This);
1129}
1130/*** ID3D12Debug methods ***/
1131static inline void ID3D12Debug_EnableDebugLayer(ID3D12Debug* This) {
1132    This->lpVtbl->EnableDebugLayer(This);
1133}
1134#endif
1135#endif
1136
1137#endif
1138
1139
1140#endif  /* __ID3D12Debug_INTERFACE_DEFINED__ */
1141
1142/*****************************************************************************
1143 * ID3D12Debug1 interface
1144 */
1145#ifndef __ID3D12Debug1_INTERFACE_DEFINED__
1146#define __ID3D12Debug1_INTERFACE_DEFINED__
1147
1148DEFINE_GUID(IID_ID3D12Debug1, 0xaffaa4ca, 0x63fe, 0x4d8e, 0xb8,0xad, 0x15,0x90,0x00,0xaf,0x43,0x04);
1149#if defined(__cplusplus) && !defined(CINTERFACE)
1150MIDL_INTERFACE("affaa4ca-63fe-4d8e-b8ad-159000af4304")
1151ID3D12Debug1 : public IUnknown
1152{
1153    virtual void STDMETHODCALLTYPE EnableDebugLayer(
1154        ) = 0;
1155
1156    virtual void STDMETHODCALLTYPE SetEnableGPUBasedValidation(
1157        WINBOOL enable) = 0;
1158
1159    virtual void STDMETHODCALLTYPE SetEnableSynchronizedCommandQueueValidation(
1160        WINBOOL enable) = 0;
1161
1162};
1163#ifdef __CRT_UUID_DECL
1164__CRT_UUID_DECL(ID3D12Debug1, 0xaffaa4ca, 0x63fe, 0x4d8e, 0xb8,0xad, 0x15,0x90,0x00,0xaf,0x43,0x04)
1165#endif
1166#else
1167typedef struct ID3D12Debug1Vtbl {
1168    BEGIN_INTERFACE
1169
1170    /*** IUnknown methods ***/
1171    HRESULT (STDMETHODCALLTYPE *QueryInterface)(
1172        ID3D12Debug1 *This,
1173        REFIID riid,
1174        void **ppvObject);
1175
1176    ULONG (STDMETHODCALLTYPE *AddRef)(
1177        ID3D12Debug1 *This);
1178
1179    ULONG (STDMETHODCALLTYPE *Release)(
1180        ID3D12Debug1 *This);
1181
1182    /*** ID3D12Debug1 methods ***/
1183    void (STDMETHODCALLTYPE *EnableDebugLayer)(
1184        ID3D12Debug1 *This);
1185
1186    void (STDMETHODCALLTYPE *SetEnableGPUBasedValidation)(
1187        ID3D12Debug1 *This,
1188        WINBOOL enable);
1189
1190    void (STDMETHODCALLTYPE *SetEnableSynchronizedCommandQueueValidation)(
1191        ID3D12Debug1 *This,
1192        WINBOOL enable);
1193
1194    END_INTERFACE
1195} ID3D12Debug1Vtbl;
1196
1197interface ID3D12Debug1 {
1198    CONST_VTBL ID3D12Debug1Vtbl* lpVtbl;
1199};
1200
1201#ifdef COBJMACROS
1202#ifndef WIDL_C_INLINE_WRAPPERS
1203/*** IUnknown methods ***/
1204#define ID3D12Debug1_QueryInterface(This,riid,ppvObject) (This)->lpVtbl->QueryInterface(This,riid,ppvObject)
1205#define ID3D12Debug1_AddRef(This) (This)->lpVtbl->AddRef(This)
1206#define ID3D12Debug1_Release(This) (This)->lpVtbl->Release(This)
1207/*** ID3D12Debug1 methods ***/
1208#define ID3D12Debug1_EnableDebugLayer(This) (This)->lpVtbl->EnableDebugLayer(This)
1209#define ID3D12Debug1_SetEnableGPUBasedValidation(This,enable) (This)->lpVtbl->SetEnableGPUBasedValidation(This,enable)
1210#define ID3D12Debug1_SetEnableSynchronizedCommandQueueValidation(This,enable) (This)->lpVtbl->SetEnableSynchronizedCommandQueueValidation(This,enable)
1211#else
1212/*** IUnknown methods ***/
1213static inline HRESULT ID3D12Debug1_QueryInterface(ID3D12Debug1* This,REFIID riid,void **ppvObject) {
1214    return This->lpVtbl->QueryInterface(This,riid,ppvObject);
1215}
1216static inline ULONG ID3D12Debug1_AddRef(ID3D12Debug1* This) {
1217    return This->lpVtbl->AddRef(This);
1218}
1219static inline ULONG ID3D12Debug1_Release(ID3D12Debug1* This) {
1220    return This->lpVtbl->Release(This);
1221}
1222/*** ID3D12Debug1 methods ***/
1223static inline void ID3D12Debug1_EnableDebugLayer(ID3D12Debug1* This) {
1224    This->lpVtbl->EnableDebugLayer(This);
1225}
1226static inline void ID3D12Debug1_SetEnableGPUBasedValidation(ID3D12Debug1* This,WINBOOL enable) {
1227    This->lpVtbl->SetEnableGPUBasedValidation(This,enable);
1228}
1229static inline void ID3D12Debug1_SetEnableSynchronizedCommandQueueValidation(ID3D12Debug1* This,WINBOOL enable) {
1230    This->lpVtbl->SetEnableSynchronizedCommandQueueValidation(This,enable);
1231}
1232#endif
1233#endif
1234
1235#endif
1236
1237
1238#endif  /* __ID3D12Debug1_INTERFACE_DEFINED__ */
1239
1240/*****************************************************************************
1241 * ID3D12Debug2 interface
1242 */
1243#ifndef __ID3D12Debug2_INTERFACE_DEFINED__
1244#define __ID3D12Debug2_INTERFACE_DEFINED__
1245
1246DEFINE_GUID(IID_ID3D12Debug2, 0x93a665c4, 0xa3b2, 0x4e5d, 0xb6,0x92, 0xa2,0x6a,0xe1,0x4e,0x33,0x74);
1247#if defined(__cplusplus) && !defined(CINTERFACE)
1248MIDL_INTERFACE("93a665c4-a3b2-4e5d-b692-a26ae14e3374")
1249ID3D12Debug2 : public IUnknown
1250{
1251    virtual void STDMETHODCALLTYPE SetGPUBasedValidationFlags(
1252        D3D12_GPU_BASED_VALIDATION_FLAGS flags) = 0;
1253
1254};
1255#ifdef __CRT_UUID_DECL
1256__CRT_UUID_DECL(ID3D12Debug2, 0x93a665c4, 0xa3b2, 0x4e5d, 0xb6,0x92, 0xa2,0x6a,0xe1,0x4e,0x33,0x74)
1257#endif
1258#else
1259typedef struct ID3D12Debug2Vtbl {
1260    BEGIN_INTERFACE
1261
1262    /*** IUnknown methods ***/
1263    HRESULT (STDMETHODCALLTYPE *QueryInterface)(
1264        ID3D12Debug2 *This,
1265        REFIID riid,
1266        void **ppvObject);
1267
1268    ULONG (STDMETHODCALLTYPE *AddRef)(
1269        ID3D12Debug2 *This);
1270
1271    ULONG (STDMETHODCALLTYPE *Release)(
1272        ID3D12Debug2 *This);
1273
1274    /*** ID3D12Debug2 methods ***/
1275    void (STDMETHODCALLTYPE *SetGPUBasedValidationFlags)(
1276        ID3D12Debug2 *This,
1277        D3D12_GPU_BASED_VALIDATION_FLAGS flags);
1278
1279    END_INTERFACE
1280} ID3D12Debug2Vtbl;
1281
1282interface ID3D12Debug2 {
1283    CONST_VTBL ID3D12Debug2Vtbl* lpVtbl;
1284};
1285
1286#ifdef COBJMACROS
1287#ifndef WIDL_C_INLINE_WRAPPERS
1288/*** IUnknown methods ***/
1289#define ID3D12Debug2_QueryInterface(This,riid,ppvObject) (This)->lpVtbl->QueryInterface(This,riid,ppvObject)
1290#define ID3D12Debug2_AddRef(This) (This)->lpVtbl->AddRef(This)
1291#define ID3D12Debug2_Release(This) (This)->lpVtbl->Release(This)
1292/*** ID3D12Debug2 methods ***/
1293#define ID3D12Debug2_SetGPUBasedValidationFlags(This,flags) (This)->lpVtbl->SetGPUBasedValidationFlags(This,flags)
1294#else
1295/*** IUnknown methods ***/
1296static inline HRESULT ID3D12Debug2_QueryInterface(ID3D12Debug2* This,REFIID riid,void **ppvObject) {
1297    return This->lpVtbl->QueryInterface(This,riid,ppvObject);
1298}
1299static inline ULONG ID3D12Debug2_AddRef(ID3D12Debug2* This) {
1300    return This->lpVtbl->AddRef(This);
1301}
1302static inline ULONG ID3D12Debug2_Release(ID3D12Debug2* This) {
1303    return This->lpVtbl->Release(This);
1304}
1305/*** ID3D12Debug2 methods ***/
1306static inline void ID3D12Debug2_SetGPUBasedValidationFlags(ID3D12Debug2* This,D3D12_GPU_BASED_VALIDATION_FLAGS flags) {
1307    This->lpVtbl->SetGPUBasedValidationFlags(This,flags);
1308}
1309#endif
1310#endif
1311
1312#endif
1313
1314
1315#endif  /* __ID3D12Debug2_INTERFACE_DEFINED__ */
1316
1317/*****************************************************************************
1318 * ID3D12Debug3 interface
1319 */
1320#ifndef __ID3D12Debug3_INTERFACE_DEFINED__
1321#define __ID3D12Debug3_INTERFACE_DEFINED__
1322
1323DEFINE_GUID(IID_ID3D12Debug3, 0x5cf4e58f, 0xf671, 0x4ff1, 0xa5,0x42, 0x36,0x86,0xe3,0xd1,0x53,0xd1);
1324#if defined(__cplusplus) && !defined(CINTERFACE)
1325MIDL_INTERFACE("5cf4e58f-f671-4ff1-a542-3686e3d153d1")
1326ID3D12Debug3 : public ID3D12Debug
1327{
1328    virtual void STDMETHODCALLTYPE SetEnableGPUBasedValidation(
1329        WINBOOL enable) = 0;
1330
1331    virtual void STDMETHODCALLTYPE SetEnableSynchronizedCommandQueueValidation(
1332        WINBOOL enable) = 0;
1333
1334    virtual void STDMETHODCALLTYPE SetGPUBasedValidationFlags(
1335        D3D12_GPU_BASED_VALIDATION_FLAGS flags) = 0;
1336
1337};
1338#ifdef __CRT_UUID_DECL
1339__CRT_UUID_DECL(ID3D12Debug3, 0x5cf4e58f, 0xf671, 0x4ff1, 0xa5,0x42, 0x36,0x86,0xe3,0xd1,0x53,0xd1)
1340#endif
1341#else
1342typedef struct ID3D12Debug3Vtbl {
1343    BEGIN_INTERFACE
1344
1345    /*** IUnknown methods ***/
1346    HRESULT (STDMETHODCALLTYPE *QueryInterface)(
1347        ID3D12Debug3 *This,
1348        REFIID riid,
1349        void **ppvObject);
1350
1351    ULONG (STDMETHODCALLTYPE *AddRef)(
1352        ID3D12Debug3 *This);
1353
1354    ULONG (STDMETHODCALLTYPE *Release)(
1355        ID3D12Debug3 *This);
1356
1357    /*** ID3D12Debug methods ***/
1358    void (STDMETHODCALLTYPE *EnableDebugLayer)(
1359        ID3D12Debug3 *This);
1360
1361    /*** ID3D12Debug3 methods ***/
1362    void (STDMETHODCALLTYPE *SetEnableGPUBasedValidation)(
1363        ID3D12Debug3 *This,
1364        WINBOOL enable);
1365
1366    void (STDMETHODCALLTYPE *SetEnableSynchronizedCommandQueueValidation)(
1367        ID3D12Debug3 *This,
1368        WINBOOL enable);
1369
1370    void (STDMETHODCALLTYPE *SetGPUBasedValidationFlags)(
1371        ID3D12Debug3 *This,
1372        D3D12_GPU_BASED_VALIDATION_FLAGS flags);
1373
1374    END_INTERFACE
1375} ID3D12Debug3Vtbl;
1376
1377interface ID3D12Debug3 {
1378    CONST_VTBL ID3D12Debug3Vtbl* lpVtbl;
1379};
1380
1381#ifdef COBJMACROS
1382#ifndef WIDL_C_INLINE_WRAPPERS
1383/*** IUnknown methods ***/
1384#define ID3D12Debug3_QueryInterface(This,riid,ppvObject) (This)->lpVtbl->QueryInterface(This,riid,ppvObject)
1385#define ID3D12Debug3_AddRef(This) (This)->lpVtbl->AddRef(This)
1386#define ID3D12Debug3_Release(This) (This)->lpVtbl->Release(This)
1387/*** ID3D12Debug methods ***/
1388#define ID3D12Debug3_EnableDebugLayer(This) (This)->lpVtbl->EnableDebugLayer(This)
1389/*** ID3D12Debug3 methods ***/
1390#define ID3D12Debug3_SetEnableGPUBasedValidation(This,enable) (This)->lpVtbl->SetEnableGPUBasedValidation(This,enable)
1391#define ID3D12Debug3_SetEnableSynchronizedCommandQueueValidation(This,enable) (This)->lpVtbl->SetEnableSynchronizedCommandQueueValidation(This,enable)
1392#define ID3D12Debug3_SetGPUBasedValidationFlags(This,flags) (This)->lpVtbl->SetGPUBasedValidationFlags(This,flags)
1393#else
1394/*** IUnknown methods ***/
1395static inline HRESULT ID3D12Debug3_QueryInterface(ID3D12Debug3* This,REFIID riid,void **ppvObject) {
1396    return This->lpVtbl->QueryInterface(This,riid,ppvObject);
1397}
1398static inline ULONG ID3D12Debug3_AddRef(ID3D12Debug3* This) {
1399    return This->lpVtbl->AddRef(This);
1400}
1401static inline ULONG ID3D12Debug3_Release(ID3D12Debug3* This) {
1402    return This->lpVtbl->Release(This);
1403}
1404/*** ID3D12Debug methods ***/
1405static inline void ID3D12Debug3_EnableDebugLayer(ID3D12Debug3* This) {
1406    This->lpVtbl->EnableDebugLayer(This);
1407}
1408/*** ID3D12Debug3 methods ***/
1409static inline void ID3D12Debug3_SetEnableGPUBasedValidation(ID3D12Debug3* This,WINBOOL enable) {
1410    This->lpVtbl->SetEnableGPUBasedValidation(This,enable);
1411}
1412static inline void ID3D12Debug3_SetEnableSynchronizedCommandQueueValidation(ID3D12Debug3* This,WINBOOL enable) {
1413    This->lpVtbl->SetEnableSynchronizedCommandQueueValidation(This,enable);
1414}
1415static inline void ID3D12Debug3_SetGPUBasedValidationFlags(ID3D12Debug3* This,D3D12_GPU_BASED_VALIDATION_FLAGS flags) {
1416    This->lpVtbl->SetGPUBasedValidationFlags(This,flags);
1417}
1418#endif
1419#endif
1420
1421#endif
1422
1423
1424#endif  /* __ID3D12Debug3_INTERFACE_DEFINED__ */
1425
1426/*****************************************************************************
1427 * ID3D12Debug4 interface
1428 */
1429#ifndef __ID3D12Debug4_INTERFACE_DEFINED__
1430#define __ID3D12Debug4_INTERFACE_DEFINED__
1431
1432DEFINE_GUID(IID_ID3D12Debug4, 0x014b816e, 0x9ec5, 0x4a2f, 0xa8,0x45, 0xff,0xbe,0x44,0x1c,0xe1,0x3a);
1433#if defined(__cplusplus) && !defined(CINTERFACE)
1434MIDL_INTERFACE("014b816e-9ec5-4a2f-a845-ffbe441ce13a")
1435ID3D12Debug4 : public ID3D12Debug3
1436{
1437    virtual void STDMETHODCALLTYPE DisableDebugLayer(
1438        ) = 0;
1439
1440};
1441#ifdef __CRT_UUID_DECL
1442__CRT_UUID_DECL(ID3D12Debug4, 0x014b816e, 0x9ec5, 0x4a2f, 0xa8,0x45, 0xff,0xbe,0x44,0x1c,0xe1,0x3a)
1443#endif
1444#else
1445typedef struct ID3D12Debug4Vtbl {
1446    BEGIN_INTERFACE
1447
1448    /*** IUnknown methods ***/
1449    HRESULT (STDMETHODCALLTYPE *QueryInterface)(
1450        ID3D12Debug4 *This,
1451        REFIID riid,
1452        void **ppvObject);
1453
1454    ULONG (STDMETHODCALLTYPE *AddRef)(
1455        ID3D12Debug4 *This);
1456
1457    ULONG (STDMETHODCALLTYPE *Release)(
1458        ID3D12Debug4 *This);
1459
1460    /*** ID3D12Debug methods ***/
1461    void (STDMETHODCALLTYPE *EnableDebugLayer)(
1462        ID3D12Debug4 *This);
1463
1464    /*** ID3D12Debug3 methods ***/
1465    void (STDMETHODCALLTYPE *SetEnableGPUBasedValidation)(
1466        ID3D12Debug4 *This,
1467        WINBOOL enable);
1468
1469    void (STDMETHODCALLTYPE *SetEnableSynchronizedCommandQueueValidation)(
1470        ID3D12Debug4 *This,
1471        WINBOOL enable);
1472
1473    void (STDMETHODCALLTYPE *SetGPUBasedValidationFlags)(
1474        ID3D12Debug4 *This,
1475        D3D12_GPU_BASED_VALIDATION_FLAGS flags);
1476
1477    /*** ID3D12Debug4 methods ***/
1478    void (STDMETHODCALLTYPE *DisableDebugLayer)(
1479        ID3D12Debug4 *This);
1480
1481    END_INTERFACE
1482} ID3D12Debug4Vtbl;
1483
1484interface ID3D12Debug4 {
1485    CONST_VTBL ID3D12Debug4Vtbl* lpVtbl;
1486};
1487
1488#ifdef COBJMACROS
1489#ifndef WIDL_C_INLINE_WRAPPERS
1490/*** IUnknown methods ***/
1491#define ID3D12Debug4_QueryInterface(This,riid,ppvObject) (This)->lpVtbl->QueryInterface(This,riid,ppvObject)
1492#define ID3D12Debug4_AddRef(This) (This)->lpVtbl->AddRef(This)
1493#define ID3D12Debug4_Release(This) (This)->lpVtbl->Release(This)
1494/*** ID3D12Debug methods ***/
1495#define ID3D12Debug4_EnableDebugLayer(This) (This)->lpVtbl->EnableDebugLayer(This)
1496/*** ID3D12Debug3 methods ***/
1497#define ID3D12Debug4_SetEnableGPUBasedValidation(This,enable) (This)->lpVtbl->SetEnableGPUBasedValidation(This,enable)
1498#define ID3D12Debug4_SetEnableSynchronizedCommandQueueValidation(This,enable) (This)->lpVtbl->SetEnableSynchronizedCommandQueueValidation(This,enable)
1499#define ID3D12Debug4_SetGPUBasedValidationFlags(This,flags) (This)->lpVtbl->SetGPUBasedValidationFlags(This,flags)
1500/*** ID3D12Debug4 methods ***/
1501#define ID3D12Debug4_DisableDebugLayer(This) (This)->lpVtbl->DisableDebugLayer(This)
1502#else
1503/*** IUnknown methods ***/
1504static inline HRESULT ID3D12Debug4_QueryInterface(ID3D12Debug4* This,REFIID riid,void **ppvObject) {
1505    return This->lpVtbl->QueryInterface(This,riid,ppvObject);
1506}
1507static inline ULONG ID3D12Debug4_AddRef(ID3D12Debug4* This) {
1508    return This->lpVtbl->AddRef(This);
1509}
1510static inline ULONG ID3D12Debug4_Release(ID3D12Debug4* This) {
1511    return This->lpVtbl->Release(This);
1512}
1513/*** ID3D12Debug methods ***/
1514static inline void ID3D12Debug4_EnableDebugLayer(ID3D12Debug4* This) {
1515    This->lpVtbl->EnableDebugLayer(This);
1516}
1517/*** ID3D12Debug3 methods ***/
1518static inline void ID3D12Debug4_SetEnableGPUBasedValidation(ID3D12Debug4* This,WINBOOL enable) {
1519    This->lpVtbl->SetEnableGPUBasedValidation(This,enable);
1520}
1521static inline void ID3D12Debug4_SetEnableSynchronizedCommandQueueValidation(ID3D12Debug4* This,WINBOOL enable) {
1522    This->lpVtbl->SetEnableSynchronizedCommandQueueValidation(This,enable);
1523}
1524static inline void ID3D12Debug4_SetGPUBasedValidationFlags(ID3D12Debug4* This,D3D12_GPU_BASED_VALIDATION_FLAGS flags) {
1525    This->lpVtbl->SetGPUBasedValidationFlags(This,flags);
1526}
1527/*** ID3D12Debug4 methods ***/
1528static inline void ID3D12Debug4_DisableDebugLayer(ID3D12Debug4* This) {
1529    This->lpVtbl->DisableDebugLayer(This);
1530}
1531#endif
1532#endif
1533
1534#endif
1535
1536
1537#endif  /* __ID3D12Debug4_INTERFACE_DEFINED__ */
1538
1539/*****************************************************************************
1540 * ID3D12Debug5 interface
1541 */
1542#ifndef __ID3D12Debug5_INTERFACE_DEFINED__
1543#define __ID3D12Debug5_INTERFACE_DEFINED__
1544
1545DEFINE_GUID(IID_ID3D12Debug5, 0x548d6b12, 0x09fa, 0x40e0, 0x90,0x69, 0x5d,0xcd,0x58,0x9a,0x52,0xc9);
1546#if defined(__cplusplus) && !defined(CINTERFACE)
1547MIDL_INTERFACE("548d6b12-09fa-40e0-9069-5dcd589a52c9")
1548ID3D12Debug5 : public ID3D12Debug4
1549{
1550    virtual void STDMETHODCALLTYPE SetEnableAutoName(
1551        WINBOOL enable) = 0;
1552
1553};
1554#ifdef __CRT_UUID_DECL
1555__CRT_UUID_DECL(ID3D12Debug5, 0x548d6b12, 0x09fa, 0x40e0, 0x90,0x69, 0x5d,0xcd,0x58,0x9a,0x52,0xc9)
1556#endif
1557#else
1558typedef struct ID3D12Debug5Vtbl {
1559    BEGIN_INTERFACE
1560
1561    /*** IUnknown methods ***/
1562    HRESULT (STDMETHODCALLTYPE *QueryInterface)(
1563        ID3D12Debug5 *This,
1564        REFIID riid,
1565        void **ppvObject);
1566
1567    ULONG (STDMETHODCALLTYPE *AddRef)(
1568        ID3D12Debug5 *This);
1569
1570    ULONG (STDMETHODCALLTYPE *Release)(
1571        ID3D12Debug5 *This);
1572
1573    /*** ID3D12Debug methods ***/
1574    void (STDMETHODCALLTYPE *EnableDebugLayer)(
1575        ID3D12Debug5 *This);
1576
1577    /*** ID3D12Debug3 methods ***/
1578    void (STDMETHODCALLTYPE *SetEnableGPUBasedValidation)(
1579        ID3D12Debug5 *This,
1580        WINBOOL enable);
1581
1582    void (STDMETHODCALLTYPE *SetEnableSynchronizedCommandQueueValidation)(
1583        ID3D12Debug5 *This,
1584        WINBOOL enable);
1585
1586    void (STDMETHODCALLTYPE *SetGPUBasedValidationFlags)(
1587        ID3D12Debug5 *This,
1588        D3D12_GPU_BASED_VALIDATION_FLAGS flags);
1589
1590    /*** ID3D12Debug4 methods ***/
1591    void (STDMETHODCALLTYPE *DisableDebugLayer)(
1592        ID3D12Debug5 *This);
1593
1594    /*** ID3D12Debug5 methods ***/
1595    void (STDMETHODCALLTYPE *SetEnableAutoName)(
1596        ID3D12Debug5 *This,
1597        WINBOOL enable);
1598
1599    END_INTERFACE
1600} ID3D12Debug5Vtbl;
1601
1602interface ID3D12Debug5 {
1603    CONST_VTBL ID3D12Debug5Vtbl* lpVtbl;
1604};
1605
1606#ifdef COBJMACROS
1607#ifndef WIDL_C_INLINE_WRAPPERS
1608/*** IUnknown methods ***/
1609#define ID3D12Debug5_QueryInterface(This,riid,ppvObject) (This)->lpVtbl->QueryInterface(This,riid,ppvObject)
1610#define ID3D12Debug5_AddRef(This) (This)->lpVtbl->AddRef(This)
1611#define ID3D12Debug5_Release(This) (This)->lpVtbl->Release(This)
1612/*** ID3D12Debug methods ***/
1613#define ID3D12Debug5_EnableDebugLayer(This) (This)->lpVtbl->EnableDebugLayer(This)
1614/*** ID3D12Debug3 methods ***/
1615#define ID3D12Debug5_SetEnableGPUBasedValidation(This,enable) (This)->lpVtbl->SetEnableGPUBasedValidation(This,enable)
1616#define ID3D12Debug5_SetEnableSynchronizedCommandQueueValidation(This,enable) (This)->lpVtbl->SetEnableSynchronizedCommandQueueValidation(This,enable)
1617#define ID3D12Debug5_SetGPUBasedValidationFlags(This,flags) (This)->lpVtbl->SetGPUBasedValidationFlags(This,flags)
1618/*** ID3D12Debug4 methods ***/
1619#define ID3D12Debug5_DisableDebugLayer(This) (This)->lpVtbl->DisableDebugLayer(This)
1620/*** ID3D12Debug5 methods ***/
1621#define ID3D12Debug5_SetEnableAutoName(This,enable) (This)->lpVtbl->SetEnableAutoName(This,enable)
1622#else
1623/*** IUnknown methods ***/
1624static inline HRESULT ID3D12Debug5_QueryInterface(ID3D12Debug5* This,REFIID riid,void **ppvObject) {
1625    return This->lpVtbl->QueryInterface(This,riid,ppvObject);
1626}
1627static inline ULONG ID3D12Debug5_AddRef(ID3D12Debug5* This) {
1628    return This->lpVtbl->AddRef(This);
1629}
1630static inline ULONG ID3D12Debug5_Release(ID3D12Debug5* This) {
1631    return This->lpVtbl->Release(This);
1632}
1633/*** ID3D12Debug methods ***/
1634static inline void ID3D12Debug5_EnableDebugLayer(ID3D12Debug5* This) {
1635    This->lpVtbl->EnableDebugLayer(This);
1636}
1637/*** ID3D12Debug3 methods ***/
1638static inline void ID3D12Debug5_SetEnableGPUBasedValidation(ID3D12Debug5* This,WINBOOL enable) {
1639    This->lpVtbl->SetEnableGPUBasedValidation(This,enable);
1640}
1641static inline void ID3D12Debug5_SetEnableSynchronizedCommandQueueValidation(ID3D12Debug5* This,WINBOOL enable) {
1642    This->lpVtbl->SetEnableSynchronizedCommandQueueValidation(This,enable);
1643}
1644static inline void ID3D12Debug5_SetGPUBasedValidationFlags(ID3D12Debug5* This,D3D12_GPU_BASED_VALIDATION_FLAGS flags) {
1645    This->lpVtbl->SetGPUBasedValidationFlags(This,flags);
1646}
1647/*** ID3D12Debug4 methods ***/
1648static inline void ID3D12Debug5_DisableDebugLayer(ID3D12Debug5* This) {
1649    This->lpVtbl->DisableDebugLayer(This);
1650}
1651/*** ID3D12Debug5 methods ***/
1652static inline void ID3D12Debug5_SetEnableAutoName(ID3D12Debug5* This,WINBOOL enable) {
1653    This->lpVtbl->SetEnableAutoName(This,enable);
1654}
1655#endif
1656#endif
1657
1658#endif
1659
1660
1661#endif  /* __ID3D12Debug5_INTERFACE_DEFINED__ */
1662
1663/*****************************************************************************
1664 * ID3D12DebugDevice interface
1665 */
1666#ifndef __ID3D12DebugDevice_INTERFACE_DEFINED__
1667#define __ID3D12DebugDevice_INTERFACE_DEFINED__
1668
1669DEFINE_GUID(IID_ID3D12DebugDevice, 0x3febd6dd, 0x4973, 0x4787, 0x81,0x94, 0xe4,0x5f,0x9e,0x28,0x92,0x3e);
1670#if defined(__cplusplus) && !defined(CINTERFACE)
1671MIDL_INTERFACE("3febd6dd-4973-4787-8194-e45f9e28923e")
1672ID3D12DebugDevice : public IUnknown
1673{
1674    virtual HRESULT STDMETHODCALLTYPE SetFeatureMask(
1675        D3D12_DEBUG_FEATURE mask) = 0;
1676
1677    virtual D3D12_DEBUG_FEATURE STDMETHODCALLTYPE GetFeatureMask(
1678        ) = 0;
1679
1680    virtual HRESULT STDMETHODCALLTYPE ReportLiveDeviceObjects(
1681        D3D12_RLDO_FLAGS flags) = 0;
1682
1683};
1684#ifdef __CRT_UUID_DECL
1685__CRT_UUID_DECL(ID3D12DebugDevice, 0x3febd6dd, 0x4973, 0x4787, 0x81,0x94, 0xe4,0x5f,0x9e,0x28,0x92,0x3e)
1686#endif
1687#else
1688typedef struct ID3D12DebugDeviceVtbl {
1689    BEGIN_INTERFACE
1690
1691    /*** IUnknown methods ***/
1692    HRESULT (STDMETHODCALLTYPE *QueryInterface)(
1693        ID3D12DebugDevice *This,
1694        REFIID riid,
1695        void **ppvObject);
1696
1697    ULONG (STDMETHODCALLTYPE *AddRef)(
1698        ID3D12DebugDevice *This);
1699
1700    ULONG (STDMETHODCALLTYPE *Release)(
1701        ID3D12DebugDevice *This);
1702
1703    /*** ID3D12DebugDevice methods ***/
1704    HRESULT (STDMETHODCALLTYPE *SetFeatureMask)(
1705        ID3D12DebugDevice *This,
1706        D3D12_DEBUG_FEATURE mask);
1707
1708    D3D12_DEBUG_FEATURE (STDMETHODCALLTYPE *GetFeatureMask)(
1709        ID3D12DebugDevice *This);
1710
1711    HRESULT (STDMETHODCALLTYPE *ReportLiveDeviceObjects)(
1712        ID3D12DebugDevice *This,
1713        D3D12_RLDO_FLAGS flags);
1714
1715    END_INTERFACE
1716} ID3D12DebugDeviceVtbl;
1717
1718interface ID3D12DebugDevice {
1719    CONST_VTBL ID3D12DebugDeviceVtbl* lpVtbl;
1720};
1721
1722#ifdef COBJMACROS
1723#ifndef WIDL_C_INLINE_WRAPPERS
1724/*** IUnknown methods ***/
1725#define ID3D12DebugDevice_QueryInterface(This,riid,ppvObject) (This)->lpVtbl->QueryInterface(This,riid,ppvObject)
1726#define ID3D12DebugDevice_AddRef(This) (This)->lpVtbl->AddRef(This)
1727#define ID3D12DebugDevice_Release(This) (This)->lpVtbl->Release(This)
1728/*** ID3D12DebugDevice methods ***/
1729#define ID3D12DebugDevice_SetFeatureMask(This,mask) (This)->lpVtbl->SetFeatureMask(This,mask)
1730#define ID3D12DebugDevice_GetFeatureMask(This) (This)->lpVtbl->GetFeatureMask(This)
1731#define ID3D12DebugDevice_ReportLiveDeviceObjects(This,flags) (This)->lpVtbl->ReportLiveDeviceObjects(This,flags)
1732#else
1733/*** IUnknown methods ***/
1734static inline HRESULT ID3D12DebugDevice_QueryInterface(ID3D12DebugDevice* This,REFIID riid,void **ppvObject) {
1735    return This->lpVtbl->QueryInterface(This,riid,ppvObject);
1736}
1737static inline ULONG ID3D12DebugDevice_AddRef(ID3D12DebugDevice* This) {
1738    return This->lpVtbl->AddRef(This);
1739}
1740static inline ULONG ID3D12DebugDevice_Release(ID3D12DebugDevice* This) {
1741    return This->lpVtbl->Release(This);
1742}
1743/*** ID3D12DebugDevice methods ***/
1744static inline HRESULT ID3D12DebugDevice_SetFeatureMask(ID3D12DebugDevice* This,D3D12_DEBUG_FEATURE mask) {
1745    return This->lpVtbl->SetFeatureMask(This,mask);
1746}
1747static inline D3D12_DEBUG_FEATURE ID3D12DebugDevice_GetFeatureMask(ID3D12DebugDevice* This) {
1748    return This->lpVtbl->GetFeatureMask(This);
1749}
1750static inline HRESULT ID3D12DebugDevice_ReportLiveDeviceObjects(ID3D12DebugDevice* This,D3D12_RLDO_FLAGS flags) {
1751    return This->lpVtbl->ReportLiveDeviceObjects(This,flags);
1752}
1753#endif
1754#endif
1755
1756#endif
1757
1758
1759#endif  /* __ID3D12DebugDevice_INTERFACE_DEFINED__ */
1760
1761/*****************************************************************************
1762 * ID3D12DebugDevice1 interface
1763 */
1764#ifndef __ID3D12DebugDevice1_INTERFACE_DEFINED__
1765#define __ID3D12DebugDevice1_INTERFACE_DEFINED__
1766
1767DEFINE_GUID(IID_ID3D12DebugDevice1, 0xa9b71770, 0xd099, 0x4a65, 0xa6,0x98, 0x3d,0xee,0x10,0x02,0x0f,0x88);
1768#if defined(__cplusplus) && !defined(CINTERFACE)
1769MIDL_INTERFACE("a9b71770-d099-4a65-a698-3dee10020f88")
1770ID3D12DebugDevice1 : public IUnknown
1771{
1772    virtual HRESULT STDMETHODCALLTYPE SetDebugParameter(
1773        D3D12_DEBUG_DEVICE_PARAMETER_TYPE type,
1774        const void *data,
1775        UINT size) = 0;
1776
1777    virtual HRESULT STDMETHODCALLTYPE GetDebugParameter(
1778        D3D12_DEBUG_DEVICE_PARAMETER_TYPE type,
1779        void *data,
1780        UINT size) = 0;
1781
1782    virtual HRESULT STDMETHODCALLTYPE ReportLiveDeviceObjects(
1783        D3D12_RLDO_FLAGS flags) = 0;
1784
1785};
1786#ifdef __CRT_UUID_DECL
1787__CRT_UUID_DECL(ID3D12DebugDevice1, 0xa9b71770, 0xd099, 0x4a65, 0xa6,0x98, 0x3d,0xee,0x10,0x02,0x0f,0x88)
1788#endif
1789#else
1790typedef struct ID3D12DebugDevice1Vtbl {
1791    BEGIN_INTERFACE
1792
1793    /*** IUnknown methods ***/
1794    HRESULT (STDMETHODCALLTYPE *QueryInterface)(
1795        ID3D12DebugDevice1 *This,
1796        REFIID riid,
1797        void **ppvObject);
1798
1799    ULONG (STDMETHODCALLTYPE *AddRef)(
1800        ID3D12DebugDevice1 *This);
1801
1802    ULONG (STDMETHODCALLTYPE *Release)(
1803        ID3D12DebugDevice1 *This);
1804
1805    /*** ID3D12DebugDevice1 methods ***/
1806    HRESULT (STDMETHODCALLTYPE *SetDebugParameter)(
1807        ID3D12DebugDevice1 *This,
1808        D3D12_DEBUG_DEVICE_PARAMETER_TYPE type,
1809        const void *data,
1810        UINT size);
1811
1812    HRESULT (STDMETHODCALLTYPE *GetDebugParameter)(
1813        ID3D12DebugDevice1 *This,
1814        D3D12_DEBUG_DEVICE_PARAMETER_TYPE type,
1815        void *data,
1816        UINT size);
1817
1818    HRESULT (STDMETHODCALLTYPE *ReportLiveDeviceObjects)(
1819        ID3D12DebugDevice1 *This,
1820        D3D12_RLDO_FLAGS flags);
1821
1822    END_INTERFACE
1823} ID3D12DebugDevice1Vtbl;
1824
1825interface ID3D12DebugDevice1 {
1826    CONST_VTBL ID3D12DebugDevice1Vtbl* lpVtbl;
1827};
1828
1829#ifdef COBJMACROS
1830#ifndef WIDL_C_INLINE_WRAPPERS
1831/*** IUnknown methods ***/
1832#define ID3D12DebugDevice1_QueryInterface(This,riid,ppvObject) (This)->lpVtbl->QueryInterface(This,riid,ppvObject)
1833#define ID3D12DebugDevice1_AddRef(This) (This)->lpVtbl->AddRef(This)
1834#define ID3D12DebugDevice1_Release(This) (This)->lpVtbl->Release(This)
1835/*** ID3D12DebugDevice1 methods ***/
1836#define ID3D12DebugDevice1_SetDebugParameter(This,type,data,size) (This)->lpVtbl->SetDebugParameter(This,type,data,size)
1837#define ID3D12DebugDevice1_GetDebugParameter(This,type,data,size) (This)->lpVtbl->GetDebugParameter(This,type,data,size)
1838#define ID3D12DebugDevice1_ReportLiveDeviceObjects(This,flags) (This)->lpVtbl->ReportLiveDeviceObjects(This,flags)
1839#else
1840/*** IUnknown methods ***/
1841static inline HRESULT ID3D12DebugDevice1_QueryInterface(ID3D12DebugDevice1* This,REFIID riid,void **ppvObject) {
1842    return This->lpVtbl->QueryInterface(This,riid,ppvObject);
1843}
1844static inline ULONG ID3D12DebugDevice1_AddRef(ID3D12DebugDevice1* This) {
1845    return This->lpVtbl->AddRef(This);
1846}
1847static inline ULONG ID3D12DebugDevice1_Release(ID3D12DebugDevice1* This) {
1848    return This->lpVtbl->Release(This);
1849}
1850/*** ID3D12DebugDevice1 methods ***/
1851static inline HRESULT ID3D12DebugDevice1_SetDebugParameter(ID3D12DebugDevice1* This,D3D12_DEBUG_DEVICE_PARAMETER_TYPE type,const void *data,UINT size) {
1852    return This->lpVtbl->SetDebugParameter(This,type,data,size);
1853}
1854static inline HRESULT ID3D12DebugDevice1_GetDebugParameter(ID3D12DebugDevice1* This,D3D12_DEBUG_DEVICE_PARAMETER_TYPE type,void *data,UINT size) {
1855    return This->lpVtbl->GetDebugParameter(This,type,data,size);
1856}
1857static inline HRESULT ID3D12DebugDevice1_ReportLiveDeviceObjects(ID3D12DebugDevice1* This,D3D12_RLDO_FLAGS flags) {
1858    return This->lpVtbl->ReportLiveDeviceObjects(This,flags);
1859}
1860#endif
1861#endif
1862
1863#endif
1864
1865
1866#endif  /* __ID3D12DebugDevice1_INTERFACE_DEFINED__ */
1867
1868/*****************************************************************************
1869 * ID3D12DebugDevice2 interface
1870 */
1871#ifndef __ID3D12DebugDevice2_INTERFACE_DEFINED__
1872#define __ID3D12DebugDevice2_INTERFACE_DEFINED__
1873
1874DEFINE_GUID(IID_ID3D12DebugDevice2, 0x60eccbc1, 0x378d, 0x4df1, 0x89,0x4c, 0xf8,0xac,0x5c,0xe4,0xd7,0xdd);
1875#if defined(__cplusplus) && !defined(CINTERFACE)
1876MIDL_INTERFACE("60eccbc1-378d-4df1-894c-f8ac5ce4d7dd")
1877ID3D12DebugDevice2 : public ID3D12DebugDevice
1878{
1879    virtual HRESULT STDMETHODCALLTYPE SetDebugParameter(
1880        D3D12_DEBUG_DEVICE_PARAMETER_TYPE type,
1881        const void *data,
1882        UINT size) = 0;
1883
1884    virtual HRESULT STDMETHODCALLTYPE GetDebugParameter(
1885        D3D12_DEBUG_DEVICE_PARAMETER_TYPE type,
1886        void *data,
1887        UINT size) = 0;
1888
1889};
1890#ifdef __CRT_UUID_DECL
1891__CRT_UUID_DECL(ID3D12DebugDevice2, 0x60eccbc1, 0x378d, 0x4df1, 0x89,0x4c, 0xf8,0xac,0x5c,0xe4,0xd7,0xdd)
1892#endif
1893#else
1894typedef struct ID3D12DebugDevice2Vtbl {
1895    BEGIN_INTERFACE
1896
1897    /*** IUnknown methods ***/
1898    HRESULT (STDMETHODCALLTYPE *QueryInterface)(
1899        ID3D12DebugDevice2 *This,
1900        REFIID riid,
1901        void **ppvObject);
1902
1903    ULONG (STDMETHODCALLTYPE *AddRef)(
1904        ID3D12DebugDevice2 *This);
1905
1906    ULONG (STDMETHODCALLTYPE *Release)(
1907        ID3D12DebugDevice2 *This);
1908
1909    /*** ID3D12DebugDevice methods ***/
1910    HRESULT (STDMETHODCALLTYPE *SetFeatureMask)(
1911        ID3D12DebugDevice2 *This,
1912        D3D12_DEBUG_FEATURE mask);
1913
1914    D3D12_DEBUG_FEATURE (STDMETHODCALLTYPE *GetFeatureMask)(
1915        ID3D12DebugDevice2 *This);
1916
1917    HRESULT (STDMETHODCALLTYPE *ReportLiveDeviceObjects)(
1918        ID3D12DebugDevice2 *This,
1919        D3D12_RLDO_FLAGS flags);
1920
1921    /*** ID3D12DebugDevice2 methods ***/
1922    HRESULT (STDMETHODCALLTYPE *SetDebugParameter)(
1923        ID3D12DebugDevice2 *This,
1924        D3D12_DEBUG_DEVICE_PARAMETER_TYPE type,
1925        const void *data,
1926        UINT size);
1927
1928    HRESULT (STDMETHODCALLTYPE *GetDebugParameter)(
1929        ID3D12DebugDevice2 *This,
1930        D3D12_DEBUG_DEVICE_PARAMETER_TYPE type,
1931        void *data,
1932        UINT size);
1933
1934    END_INTERFACE
1935} ID3D12DebugDevice2Vtbl;
1936
1937interface ID3D12DebugDevice2 {
1938    CONST_VTBL ID3D12DebugDevice2Vtbl* lpVtbl;
1939};
1940
1941#ifdef COBJMACROS
1942#ifndef WIDL_C_INLINE_WRAPPERS
1943/*** IUnknown methods ***/
1944#define ID3D12DebugDevice2_QueryInterface(This,riid,ppvObject) (This)->lpVtbl->QueryInterface(This,riid,ppvObject)
1945#define ID3D12DebugDevice2_AddRef(This) (This)->lpVtbl->AddRef(This)
1946#define ID3D12DebugDevice2_Release(This) (This)->lpVtbl->Release(This)
1947/*** ID3D12DebugDevice methods ***/
1948#define ID3D12DebugDevice2_SetFeatureMask(This,mask) (This)->lpVtbl->SetFeatureMask(This,mask)
1949#define ID3D12DebugDevice2_GetFeatureMask(This) (This)->lpVtbl->GetFeatureMask(This)
1950#define ID3D12DebugDevice2_ReportLiveDeviceObjects(This,flags) (This)->lpVtbl->ReportLiveDeviceObjects(This,flags)
1951/*** ID3D12DebugDevice2 methods ***/
1952#define ID3D12DebugDevice2_SetDebugParameter(This,type,data,size) (This)->lpVtbl->SetDebugParameter(This,type,data,size)
1953#define ID3D12DebugDevice2_GetDebugParameter(This,type,data,size) (This)->lpVtbl->GetDebugParameter(This,type,data,size)
1954#else
1955/*** IUnknown methods ***/
1956static inline HRESULT ID3D12DebugDevice2_QueryInterface(ID3D12DebugDevice2* This,REFIID riid,void **ppvObject) {
1957    return This->lpVtbl->QueryInterface(This,riid,ppvObject);
1958}
1959static inline ULONG ID3D12DebugDevice2_AddRef(ID3D12DebugDevice2* This) {
1960    return This->lpVtbl->AddRef(This);
1961}
1962static inline ULONG ID3D12DebugDevice2_Release(ID3D12DebugDevice2* This) {
1963    return This->lpVtbl->Release(This);
1964}
1965/*** ID3D12DebugDevice methods ***/
1966static inline HRESULT ID3D12DebugDevice2_SetFeatureMask(ID3D12DebugDevice2* This,D3D12_DEBUG_FEATURE mask) {
1967    return This->lpVtbl->SetFeatureMask(This,mask);
1968}
1969static inline D3D12_DEBUG_FEATURE ID3D12DebugDevice2_GetFeatureMask(ID3D12DebugDevice2* This) {
1970    return This->lpVtbl->GetFeatureMask(This);
1971}
1972static inline HRESULT ID3D12DebugDevice2_ReportLiveDeviceObjects(ID3D12DebugDevice2* This,D3D12_RLDO_FLAGS flags) {
1973    return This->lpVtbl->ReportLiveDeviceObjects(This,flags);
1974}
1975/*** ID3D12DebugDevice2 methods ***/
1976static inline HRESULT ID3D12DebugDevice2_SetDebugParameter(ID3D12DebugDevice2* This,D3D12_DEBUG_DEVICE_PARAMETER_TYPE type,const void *data,UINT size) {
1977    return This->lpVtbl->SetDebugParameter(This,type,data,size);
1978}
1979static inline HRESULT ID3D12DebugDevice2_GetDebugParameter(ID3D12DebugDevice2* This,D3D12_DEBUG_DEVICE_PARAMETER_TYPE type,void *data,UINT size) {
1980    return This->lpVtbl->GetDebugParameter(This,type,data,size);
1981}
1982#endif
1983#endif
1984
1985#endif
1986
1987
1988#endif  /* __ID3D12DebugDevice2_INTERFACE_DEFINED__ */
1989
1990/*****************************************************************************
1991 * ID3D12SharingContract interface
1992 */
1993#ifndef __ID3D12SharingContract_INTERFACE_DEFINED__
1994#define __ID3D12SharingContract_INTERFACE_DEFINED__
1995
1996DEFINE_GUID(IID_ID3D12SharingContract, 0x0adf7d52, 0x929c, 0x4e61, 0xad,0xdb, 0xff,0xed,0x30,0xde,0x66,0xef);
1997#if defined(__cplusplus) && !defined(CINTERFACE)
1998MIDL_INTERFACE("0adf7d52-929c-4e61-addb-ffed30de66ef")
1999ID3D12SharingContract : public IUnknown
2000{
2001    virtual void STDMETHODCALLTYPE Present(
2002        ID3D12Resource *resource,
2003        UINT sub_resource,
2004        HWND window) = 0;
2005
2006    virtual void STDMETHODCALLTYPE SharedFenceSignal(
2007        ID3D12Fence *fence,
2008        UINT64 fence_value) = 0;
2009
2010    virtual void STDMETHODCALLTYPE BeginCapturableWork(
2011        REFGUID guid) = 0;
2012
2013    virtual void STDMETHODCALLTYPE EndCapturableWork(
2014        REFGUID guid) = 0;
2015
2016};
2017#ifdef __CRT_UUID_DECL
2018__CRT_UUID_DECL(ID3D12SharingContract, 0x0adf7d52, 0x929c, 0x4e61, 0xad,0xdb, 0xff,0xed,0x30,0xde,0x66,0xef)
2019#endif
2020#else
2021typedef struct ID3D12SharingContractVtbl {
2022    BEGIN_INTERFACE
2023
2024    /*** IUnknown methods ***/
2025    HRESULT (STDMETHODCALLTYPE *QueryInterface)(
2026        ID3D12SharingContract *This,
2027        REFIID riid,
2028        void **ppvObject);
2029
2030    ULONG (STDMETHODCALLTYPE *AddRef)(
2031        ID3D12SharingContract *This);
2032
2033    ULONG (STDMETHODCALLTYPE *Release)(
2034        ID3D12SharingContract *This);
2035
2036    /*** ID3D12SharingContract methods ***/
2037    void (STDMETHODCALLTYPE *Present)(
2038        ID3D12SharingContract *This,
2039        ID3D12Resource *resource,
2040        UINT sub_resource,
2041        HWND window);
2042
2043    void (STDMETHODCALLTYPE *SharedFenceSignal)(
2044        ID3D12SharingContract *This,
2045        ID3D12Fence *fence,
2046        UINT64 fence_value);
2047
2048    void (STDMETHODCALLTYPE *BeginCapturableWork)(
2049        ID3D12SharingContract *This,
2050        REFGUID guid);
2051
2052    void (STDMETHODCALLTYPE *EndCapturableWork)(
2053        ID3D12SharingContract *This,
2054        REFGUID guid);
2055
2056    END_INTERFACE
2057} ID3D12SharingContractVtbl;
2058
2059interface ID3D12SharingContract {
2060    CONST_VTBL ID3D12SharingContractVtbl* lpVtbl;
2061};
2062
2063#ifdef COBJMACROS
2064#ifndef WIDL_C_INLINE_WRAPPERS
2065/*** IUnknown methods ***/
2066#define ID3D12SharingContract_QueryInterface(This,riid,ppvObject) (This)->lpVtbl->QueryInterface(This,riid,ppvObject)
2067#define ID3D12SharingContract_AddRef(This) (This)->lpVtbl->AddRef(This)
2068#define ID3D12SharingContract_Release(This) (This)->lpVtbl->Release(This)
2069/*** ID3D12SharingContract methods ***/
2070#define ID3D12SharingContract_Present(This,resource,sub_resource,window) (This)->lpVtbl->Present(This,resource,sub_resource,window)
2071#define ID3D12SharingContract_SharedFenceSignal(This,fence,fence_value) (This)->lpVtbl->SharedFenceSignal(This,fence,fence_value)
2072#define ID3D12SharingContract_BeginCapturableWork(This,guid) (This)->lpVtbl->BeginCapturableWork(This,guid)
2073#define ID3D12SharingContract_EndCapturableWork(This,guid) (This)->lpVtbl->EndCapturableWork(This,guid)
2074#else
2075/*** IUnknown methods ***/
2076static inline HRESULT ID3D12SharingContract_QueryInterface(ID3D12SharingContract* This,REFIID riid,void **ppvObject) {
2077    return This->lpVtbl->QueryInterface(This,riid,ppvObject);
2078}
2079static inline ULONG ID3D12SharingContract_AddRef(ID3D12SharingContract* This) {
2080    return This->lpVtbl->AddRef(This);
2081}
2082static inline ULONG ID3D12SharingContract_Release(ID3D12SharingContract* This) {
2083    return This->lpVtbl->Release(This);
2084}
2085/*** ID3D12SharingContract methods ***/
2086static inline void ID3D12SharingContract_Present(ID3D12SharingContract* This,ID3D12Resource *resource,UINT sub_resource,HWND window) {
2087    This->lpVtbl->Present(This,resource,sub_resource,window);
2088}
2089static inline void ID3D12SharingContract_SharedFenceSignal(ID3D12SharingContract* This,ID3D12Fence *fence,UINT64 fence_value) {
2090    This->lpVtbl->SharedFenceSignal(This,fence,fence_value);
2091}
2092static inline void ID3D12SharingContract_BeginCapturableWork(ID3D12SharingContract* This,REFGUID guid) {
2093    This->lpVtbl->BeginCapturableWork(This,guid);
2094}
2095static inline void ID3D12SharingContract_EndCapturableWork(ID3D12SharingContract* This,REFGUID guid) {
2096    This->lpVtbl->EndCapturableWork(This,guid);
2097}
2098#endif
2099#endif
2100
2101#endif
2102
2103
2104#endif  /* __ID3D12SharingContract_INTERFACE_DEFINED__ */
2105
2106/*****************************************************************************
2107 * ID3D12InfoQueue interface
2108 */
2109#ifndef __ID3D12InfoQueue_INTERFACE_DEFINED__
2110#define __ID3D12InfoQueue_INTERFACE_DEFINED__
2111
2112DEFINE_GUID(IID_ID3D12InfoQueue, 0x0742a90b, 0xc387, 0x483f, 0xb9,0x46, 0x30,0xa7,0xe4,0xe6,0x14,0x58);
2113#if defined(__cplusplus) && !defined(CINTERFACE)
2114MIDL_INTERFACE("0742a90b-c387-483f-b946-30a7e4e61458")
2115ID3D12InfoQueue : public IUnknown
2116{
2117    virtual HRESULT STDMETHODCALLTYPE SetMessageCountLimit(
2118        UINT64 limit) = 0;
2119
2120    virtual void STDMETHODCALLTYPE ClearStoredMessages(
2121        ) = 0;
2122
2123    virtual HRESULT STDMETHODCALLTYPE GetMessage(
2124        UINT64 index,
2125        D3D12_MESSAGE *message,
2126        SIZE_T *length) = 0;
2127
2128    virtual UINT64 STDMETHODCALLTYPE GetNumMessagesAllowedByStorageFilter(
2129        ) = 0;
2130
2131    virtual UINT64 STDMETHODCALLTYPE GetNumMessagesDeniedByStorageFilter(
2132        ) = 0;
2133
2134    virtual UINT64 STDMETHODCALLTYPE GetNumStoredMessages(
2135        ) = 0;
2136
2137    virtual UINT64 STDMETHODCALLTYPE GetNumStoredMessagesAllowedByRetrievalFilter(
2138        ) = 0;
2139
2140    virtual UINT64 STDMETHODCALLTYPE GetNumMessagesDiscardedByMessageCountLimit(
2141        ) = 0;
2142
2143    virtual UINT64 STDMETHODCALLTYPE GetMessageCountLimit(
2144        ) = 0;
2145
2146    virtual HRESULT STDMETHODCALLTYPE AddStorageFilterEntries(
2147        D3D12_INFO_QUEUE_FILTER *filter) = 0;
2148
2149    virtual HRESULT STDMETHODCALLTYPE GetStorageFilter(
2150        D3D12_INFO_QUEUE_FILTER *filter,
2151        SIZE_T *length) = 0;
2152
2153    virtual void STDMETHODCALLTYPE ClearStorageFilter(
2154        ) = 0;
2155
2156    virtual HRESULT STDMETHODCALLTYPE PushEmptyStorageFilter(
2157        ) = 0;
2158
2159    virtual HRESULT STDMETHODCALLTYPE PushCopyOfStorageFilter(
2160        ) = 0;
2161
2162    virtual HRESULT STDMETHODCALLTYPE PushStorageFilter(
2163        D3D12_INFO_QUEUE_FILTER *filter) = 0;
2164
2165    virtual void STDMETHODCALLTYPE PopStorageFilter(
2166        ) = 0;
2167
2168    virtual UINT STDMETHODCALLTYPE GetStorageFilterStackSize(
2169        ) = 0;
2170
2171    virtual HRESULT STDMETHODCALLTYPE AddRetrievalFilterEntries(
2172        D3D12_INFO_QUEUE_FILTER *filter) = 0;
2173
2174    virtual HRESULT STDMETHODCALLTYPE GetRetrievalFilter(
2175        D3D12_INFO_QUEUE_FILTER *filter,
2176        SIZE_T *length) = 0;
2177
2178    virtual void STDMETHODCALLTYPE ClearRetrievalFilter(
2179        ) = 0;
2180
2181    virtual HRESULT STDMETHODCALLTYPE PushEmptyRetrievalFilter(
2182        ) = 0;
2183
2184    virtual HRESULT STDMETHODCALLTYPE PushCopyOfRetrievalFilter(
2185        ) = 0;
2186
2187    virtual HRESULT STDMETHODCALLTYPE PushRetrievalFilter(
2188        D3D12_INFO_QUEUE_FILTER *filter) = 0;
2189
2190    virtual void STDMETHODCALLTYPE PopRetrievalFilter(
2191        ) = 0;
2192
2193    virtual UINT STDMETHODCALLTYPE GetRetrievalFilterStackSize(
2194        ) = 0;
2195
2196    virtual HRESULT STDMETHODCALLTYPE AddMessage(
2197        D3D12_MESSAGE_CATEGORY category,
2198        D3D12_MESSAGE_SEVERITY severity,
2199        D3D12_MESSAGE_ID id,
2200        const char *description) = 0;
2201
2202    virtual HRESULT STDMETHODCALLTYPE AddApplicationMessage(
2203        D3D12_MESSAGE_SEVERITY severity,
2204        const char *description) = 0;
2205
2206    virtual HRESULT STDMETHODCALLTYPE SetBreakOnCategory(
2207        D3D12_MESSAGE_CATEGORY category,
2208        WINBOOL enable) = 0;
2209
2210    virtual HRESULT STDMETHODCALLTYPE SetBreakOnSeverity(
2211        D3D12_MESSAGE_SEVERITY severity,
2212        WINBOOL enable) = 0;
2213
2214    virtual HRESULT STDMETHODCALLTYPE SetBreakOnID(
2215        D3D12_MESSAGE_ID id,
2216        WINBOOL enable) = 0;
2217
2218    virtual WINBOOL STDMETHODCALLTYPE GetBreakOnCategory(
2219        D3D12_MESSAGE_CATEGORY category) = 0;
2220
2221    virtual WINBOOL STDMETHODCALLTYPE GetBreakOnSeverity(
2222        D3D12_MESSAGE_SEVERITY severity) = 0;
2223
2224    virtual WINBOOL STDMETHODCALLTYPE GetBreakOnID(
2225        D3D12_MESSAGE_ID id) = 0;
2226
2227    virtual void STDMETHODCALLTYPE SetMuteDebugOutput(
2228        WINBOOL mute) = 0;
2229
2230    virtual WINBOOL STDMETHODCALLTYPE GetMuteDebugOutput(
2231        ) = 0;
2232
2233};
2234#ifdef __CRT_UUID_DECL
2235__CRT_UUID_DECL(ID3D12InfoQueue, 0x0742a90b, 0xc387, 0x483f, 0xb9,0x46, 0x30,0xa7,0xe4,0xe6,0x14,0x58)
2236#endif
2237#else
2238typedef struct ID3D12InfoQueueVtbl {
2239    BEGIN_INTERFACE
2240
2241    /*** IUnknown methods ***/
2242    HRESULT (STDMETHODCALLTYPE *QueryInterface)(
2243        ID3D12InfoQueue *This,
2244        REFIID riid,
2245        void **ppvObject);
2246
2247    ULONG (STDMETHODCALLTYPE *AddRef)(
2248        ID3D12InfoQueue *This);
2249
2250    ULONG (STDMETHODCALLTYPE *Release)(
2251        ID3D12InfoQueue *This);
2252
2253    /*** ID3D12InfoQueue methods ***/
2254    HRESULT (STDMETHODCALLTYPE *SetMessageCountLimit)(
2255        ID3D12InfoQueue *This,
2256        UINT64 limit);
2257
2258    void (STDMETHODCALLTYPE *ClearStoredMessages)(
2259        ID3D12InfoQueue *This);
2260
2261    HRESULT (STDMETHODCALLTYPE *GetMessage)(
2262        ID3D12InfoQueue *This,
2263        UINT64 index,
2264        D3D12_MESSAGE *message,
2265        SIZE_T *length);
2266
2267    UINT64 (STDMETHODCALLTYPE *GetNumMessagesAllowedByStorageFilter)(
2268        ID3D12InfoQueue *This);
2269
2270    UINT64 (STDMETHODCALLTYPE *GetNumMessagesDeniedByStorageFilter)(
2271        ID3D12InfoQueue *This);
2272
2273    UINT64 (STDMETHODCALLTYPE *GetNumStoredMessages)(
2274        ID3D12InfoQueue *This);
2275
2276    UINT64 (STDMETHODCALLTYPE *GetNumStoredMessagesAllowedByRetrievalFilter)(
2277        ID3D12InfoQueue *This);
2278
2279    UINT64 (STDMETHODCALLTYPE *GetNumMessagesDiscardedByMessageCountLimit)(
2280        ID3D12InfoQueue *This);
2281
2282    UINT64 (STDMETHODCALLTYPE *GetMessageCountLimit)(
2283        ID3D12InfoQueue *This);
2284
2285    HRESULT (STDMETHODCALLTYPE *AddStorageFilterEntries)(
2286        ID3D12InfoQueue *This,
2287        D3D12_INFO_QUEUE_FILTER *filter);
2288
2289    HRESULT (STDMETHODCALLTYPE *GetStorageFilter)(
2290        ID3D12InfoQueue *This,
2291        D3D12_INFO_QUEUE_FILTER *filter,
2292        SIZE_T *length);
2293
2294    void (STDMETHODCALLTYPE *ClearStorageFilter)(
2295        ID3D12InfoQueue *This);
2296
2297    HRESULT (STDMETHODCALLTYPE *PushEmptyStorageFilter)(
2298        ID3D12InfoQueue *This);
2299
2300    HRESULT (STDMETHODCALLTYPE *PushCopyOfStorageFilter)(
2301        ID3D12InfoQueue *This);
2302
2303    HRESULT (STDMETHODCALLTYPE *PushStorageFilter)(
2304        ID3D12InfoQueue *This,
2305        D3D12_INFO_QUEUE_FILTER *filter);
2306
2307    void (STDMETHODCALLTYPE *PopStorageFilter)(
2308        ID3D12InfoQueue *This);
2309
2310    UINT (STDMETHODCALLTYPE *GetStorageFilterStackSize)(
2311        ID3D12InfoQueue *This);
2312
2313    HRESULT (STDMETHODCALLTYPE *AddRetrievalFilterEntries)(
2314        ID3D12InfoQueue *This,
2315        D3D12_INFO_QUEUE_FILTER *filter);
2316
2317    HRESULT (STDMETHODCALLTYPE *GetRetrievalFilter)(
2318        ID3D12InfoQueue *This,
2319        D3D12_INFO_QUEUE_FILTER *filter,
2320        SIZE_T *length);
2321
2322    void (STDMETHODCALLTYPE *ClearRetrievalFilter)(
2323        ID3D12InfoQueue *This);
2324
2325    HRESULT (STDMETHODCALLTYPE *PushEmptyRetrievalFilter)(
2326        ID3D12InfoQueue *This);
2327
2328    HRESULT (STDMETHODCALLTYPE *PushCopyOfRetrievalFilter)(
2329        ID3D12InfoQueue *This);
2330
2331    HRESULT (STDMETHODCALLTYPE *PushRetrievalFilter)(
2332        ID3D12InfoQueue *This,
2333        D3D12_INFO_QUEUE_FILTER *filter);
2334
2335    void (STDMETHODCALLTYPE *PopRetrievalFilter)(
2336        ID3D12InfoQueue *This);
2337
2338    UINT (STDMETHODCALLTYPE *GetRetrievalFilterStackSize)(
2339        ID3D12InfoQueue *This);
2340
2341    HRESULT (STDMETHODCALLTYPE *AddMessage)(
2342        ID3D12InfoQueue *This,
2343        D3D12_MESSAGE_CATEGORY category,
2344        D3D12_MESSAGE_SEVERITY severity,
2345        D3D12_MESSAGE_ID id,
2346        const char *description);
2347
2348    HRESULT (STDMETHODCALLTYPE *AddApplicationMessage)(
2349        ID3D12InfoQueue *This,
2350        D3D12_MESSAGE_SEVERITY severity,
2351        const char *description);
2352
2353    HRESULT (STDMETHODCALLTYPE *SetBreakOnCategory)(
2354        ID3D12InfoQueue *This,
2355        D3D12_MESSAGE_CATEGORY category,
2356        WINBOOL enable);
2357
2358    HRESULT (STDMETHODCALLTYPE *SetBreakOnSeverity)(
2359        ID3D12InfoQueue *This,
2360        D3D12_MESSAGE_SEVERITY severity,
2361        WINBOOL enable);
2362
2363    HRESULT (STDMETHODCALLTYPE *SetBreakOnID)(
2364        ID3D12InfoQueue *This,
2365        D3D12_MESSAGE_ID id,
2366        WINBOOL enable);
2367
2368    WINBOOL (STDMETHODCALLTYPE *GetBreakOnCategory)(
2369        ID3D12InfoQueue *This,
2370        D3D12_MESSAGE_CATEGORY category);
2371
2372    WINBOOL (STDMETHODCALLTYPE *GetBreakOnSeverity)(
2373        ID3D12InfoQueue *This,
2374        D3D12_MESSAGE_SEVERITY severity);
2375
2376    WINBOOL (STDMETHODCALLTYPE *GetBreakOnID)(
2377        ID3D12InfoQueue *This,
2378        D3D12_MESSAGE_ID id);
2379
2380    void (STDMETHODCALLTYPE *SetMuteDebugOutput)(
2381        ID3D12InfoQueue *This,
2382        WINBOOL mute);
2383
2384    WINBOOL (STDMETHODCALLTYPE *GetMuteDebugOutput)(
2385        ID3D12InfoQueue *This);
2386
2387    END_INTERFACE
2388} ID3D12InfoQueueVtbl;
2389
2390interface ID3D12InfoQueue {
2391    CONST_VTBL ID3D12InfoQueueVtbl* lpVtbl;
2392};
2393
2394#ifdef COBJMACROS
2395#ifndef WIDL_C_INLINE_WRAPPERS
2396/*** IUnknown methods ***/
2397#define ID3D12InfoQueue_QueryInterface(This,riid,ppvObject) (This)->lpVtbl->QueryInterface(This,riid,ppvObject)
2398#define ID3D12InfoQueue_AddRef(This) (This)->lpVtbl->AddRef(This)
2399#define ID3D12InfoQueue_Release(This) (This)->lpVtbl->Release(This)
2400/*** ID3D12InfoQueue methods ***/
2401#define ID3D12InfoQueue_SetMessageCountLimit(This,limit) (This)->lpVtbl->SetMessageCountLimit(This,limit)
2402#define ID3D12InfoQueue_ClearStoredMessages(This) (This)->lpVtbl->ClearStoredMessages(This)
2403#define ID3D12InfoQueue_GetMessage(This,index,message,length) (This)->lpVtbl->GetMessage(This,index,message,length)
2404#define ID3D12InfoQueue_GetNumMessagesAllowedByStorageFilter(This) (This)->lpVtbl->GetNumMessagesAllowedByStorageFilter(This)
2405#define ID3D12InfoQueue_GetNumMessagesDeniedByStorageFilter(This) (This)->lpVtbl->GetNumMessagesDeniedByStorageFilter(This)
2406#define ID3D12InfoQueue_GetNumStoredMessages(This) (This)->lpVtbl->GetNumStoredMessages(This)
2407#define ID3D12InfoQueue_GetNumStoredMessagesAllowedByRetrievalFilter(This) (This)->lpVtbl->GetNumStoredMessagesAllowedByRetrievalFilter(This)
2408#define ID3D12InfoQueue_GetNumMessagesDiscardedByMessageCountLimit(This) (This)->lpVtbl->GetNumMessagesDiscardedByMessageCountLimit(This)
2409#define ID3D12InfoQueue_GetMessageCountLimit(This) (This)->lpVtbl->GetMessageCountLimit(This)
2410#define ID3D12InfoQueue_AddStorageFilterEntries(This,filter) (This)->lpVtbl->AddStorageFilterEntries(This,filter)
2411#define ID3D12InfoQueue_GetStorageFilter(This,filter,length) (This)->lpVtbl->GetStorageFilter(This,filter,length)
2412#define ID3D12InfoQueue_ClearStorageFilter(This) (This)->lpVtbl->ClearStorageFilter(This)
2413#define ID3D12InfoQueue_PushEmptyStorageFilter(This) (This)->lpVtbl->PushEmptyStorageFilter(This)
2414#define ID3D12InfoQueue_PushCopyOfStorageFilter(This) (This)->lpVtbl->PushCopyOfStorageFilter(This)
2415#define ID3D12InfoQueue_PushStorageFilter(This,filter) (This)->lpVtbl->PushStorageFilter(This,filter)
2416#define ID3D12InfoQueue_PopStorageFilter(This) (This)->lpVtbl->PopStorageFilter(This)
2417#define ID3D12InfoQueue_GetStorageFilterStackSize(This) (This)->lpVtbl->GetStorageFilterStackSize(This)
2418#define ID3D12InfoQueue_AddRetrievalFilterEntries(This,filter) (This)->lpVtbl->AddRetrievalFilterEntries(This,filter)
2419#define ID3D12InfoQueue_GetRetrievalFilter(This,filter,length) (This)->lpVtbl->GetRetrievalFilter(This,filter,length)
2420#define ID3D12InfoQueue_ClearRetrievalFilter(This) (This)->lpVtbl->ClearRetrievalFilter(This)
2421#define ID3D12InfoQueue_PushEmptyRetrievalFilter(This) (This)->lpVtbl->PushEmptyRetrievalFilter(This)
2422#define ID3D12InfoQueue_PushCopyOfRetrievalFilter(This) (This)->lpVtbl->PushCopyOfRetrievalFilter(This)
2423#define ID3D12InfoQueue_PushRetrievalFilter(This,filter) (This)->lpVtbl->PushRetrievalFilter(This,filter)
2424#define ID3D12InfoQueue_PopRetrievalFilter(This) (This)->lpVtbl->PopRetrievalFilter(This)
2425#define ID3D12InfoQueue_GetRetrievalFilterStackSize(This) (This)->lpVtbl->GetRetrievalFilterStackSize(This)
2426#define ID3D12InfoQueue_AddMessage(This,category,severity,id,description) (This)->lpVtbl->AddMessage(This,category,severity,id,description)
2427#define ID3D12InfoQueue_AddApplicationMessage(This,severity,description) (This)->lpVtbl->AddApplicationMessage(This,severity,description)
2428#define ID3D12InfoQueue_SetBreakOnCategory(This,category,enable) (This)->lpVtbl->SetBreakOnCategory(This,category,enable)
2429#define ID3D12InfoQueue_SetBreakOnSeverity(This,severity,enable) (This)->lpVtbl->SetBreakOnSeverity(This,severity,enable)
2430#define ID3D12InfoQueue_SetBreakOnID(This,id,enable) (This)->lpVtbl->SetBreakOnID(This,id,enable)
2431#define ID3D12InfoQueue_GetBreakOnCategory(This,category) (This)->lpVtbl->GetBreakOnCategory(This,category)
2432#define ID3D12InfoQueue_GetBreakOnSeverity(This,severity) (This)->lpVtbl->GetBreakOnSeverity(This,severity)
2433#define ID3D12InfoQueue_GetBreakOnID(This,id) (This)->lpVtbl->GetBreakOnID(This,id)
2434#define ID3D12InfoQueue_SetMuteDebugOutput(This,mute) (This)->lpVtbl->SetMuteDebugOutput(This,mute)
2435#define ID3D12InfoQueue_GetMuteDebugOutput(This) (This)->lpVtbl->GetMuteDebugOutput(This)
2436#else
2437/*** IUnknown methods ***/
2438static inline HRESULT ID3D12InfoQueue_QueryInterface(ID3D12InfoQueue* This,REFIID riid,void **ppvObject) {
2439    return This->lpVtbl->QueryInterface(This,riid,ppvObject);
2440}
2441static inline ULONG ID3D12InfoQueue_AddRef(ID3D12InfoQueue* This) {
2442    return This->lpVtbl->AddRef(This);
2443}
2444static inline ULONG ID3D12InfoQueue_Release(ID3D12InfoQueue* This) {
2445    return This->lpVtbl->Release(This);
2446}
2447/*** ID3D12InfoQueue methods ***/
2448static inline HRESULT ID3D12InfoQueue_SetMessageCountLimit(ID3D12InfoQueue* This,UINT64 limit) {
2449    return This->lpVtbl->SetMessageCountLimit(This,limit);
2450}
2451static inline void ID3D12InfoQueue_ClearStoredMessages(ID3D12InfoQueue* This) {
2452    This->lpVtbl->ClearStoredMessages(This);
2453}
2454static inline HRESULT ID3D12InfoQueue_GetMessage(ID3D12InfoQueue* This,UINT64 index,D3D12_MESSAGE *message,SIZE_T *length) {
2455    return This->lpVtbl->GetMessage(This,index,message,length);
2456}
2457static inline UINT64 ID3D12InfoQueue_GetNumMessagesAllowedByStorageFilter(ID3D12InfoQueue* This) {
2458    return This->lpVtbl->GetNumMessagesAllowedByStorageFilter(This);
2459}
2460static inline UINT64 ID3D12InfoQueue_GetNumMessagesDeniedByStorageFilter(ID3D12InfoQueue* This) {
2461    return This->lpVtbl->GetNumMessagesDeniedByStorageFilter(This);
2462}
2463static inline UINT64 ID3D12InfoQueue_GetNumStoredMessages(ID3D12InfoQueue* This) {
2464    return This->lpVtbl->GetNumStoredMessages(This);
2465}
2466static inline UINT64 ID3D12InfoQueue_GetNumStoredMessagesAllowedByRetrievalFilter(ID3D12InfoQueue* This) {
2467    return This->lpVtbl->GetNumStoredMessagesAllowedByRetrievalFilter(This);
2468}
2469static inline UINT64 ID3D12InfoQueue_GetNumMessagesDiscardedByMessageCountLimit(ID3D12InfoQueue* This) {
2470    return This->lpVtbl->GetNumMessagesDiscardedByMessageCountLimit(This);
2471}
2472static inline UINT64 ID3D12InfoQueue_GetMessageCountLimit(ID3D12InfoQueue* This) {
2473    return This->lpVtbl->GetMessageCountLimit(This);
2474}
2475static inline HRESULT ID3D12InfoQueue_AddStorageFilterEntries(ID3D12InfoQueue* This,D3D12_INFO_QUEUE_FILTER *filter) {
2476    return This->lpVtbl->AddStorageFilterEntries(This,filter);
2477}
2478static inline HRESULT ID3D12InfoQueue_GetStorageFilter(ID3D12InfoQueue* This,D3D12_INFO_QUEUE_FILTER *filter,SIZE_T *length) {
2479    return This->lpVtbl->GetStorageFilter(This,filter,length);
2480}
2481static inline void ID3D12InfoQueue_ClearStorageFilter(ID3D12InfoQueue* This) {
2482    This->lpVtbl->ClearStorageFilter(This);
2483}
2484static inline HRESULT ID3D12InfoQueue_PushEmptyStorageFilter(ID3D12InfoQueue* This) {
2485    return This->lpVtbl->PushEmptyStorageFilter(This);
2486}
2487static inline HRESULT ID3D12InfoQueue_PushCopyOfStorageFilter(ID3D12InfoQueue* This) {
2488    return This->lpVtbl->PushCopyOfStorageFilter(This);
2489}
2490static inline HRESULT ID3D12InfoQueue_PushStorageFilter(ID3D12InfoQueue* This,D3D12_INFO_QUEUE_FILTER *filter) {
2491    return This->lpVtbl->PushStorageFilter(This,filter);
2492}
2493static inline void ID3D12InfoQueue_PopStorageFilter(ID3D12InfoQueue* This) {
2494    This->lpVtbl->PopStorageFilter(This);
2495}
2496static inline UINT ID3D12InfoQueue_GetStorageFilterStackSize(ID3D12InfoQueue* This) {
2497    return This->lpVtbl->GetStorageFilterStackSize(This);
2498}
2499static inline HRESULT ID3D12InfoQueue_AddRetrievalFilterEntries(ID3D12InfoQueue* This,D3D12_INFO_QUEUE_FILTER *filter) {
2500    return This->lpVtbl->AddRetrievalFilterEntries(This,filter);
2501}
2502static inline HRESULT ID3D12InfoQueue_GetRetrievalFilter(ID3D12InfoQueue* This,D3D12_INFO_QUEUE_FILTER *filter,SIZE_T *length) {
2503    return This->lpVtbl->GetRetrievalFilter(This,filter,length);
2504}
2505static inline void ID3D12InfoQueue_ClearRetrievalFilter(ID3D12InfoQueue* This) {
2506    This->lpVtbl->ClearRetrievalFilter(This);
2507}
2508static inline HRESULT ID3D12InfoQueue_PushEmptyRetrievalFilter(ID3D12InfoQueue* This) {
2509    return This->lpVtbl->PushEmptyRetrievalFilter(This);
2510}
2511static inline HRESULT ID3D12InfoQueue_PushCopyOfRetrievalFilter(ID3D12InfoQueue* This) {
2512    return This->lpVtbl->PushCopyOfRetrievalFilter(This);
2513}
2514static inline HRESULT ID3D12InfoQueue_PushRetrievalFilter(ID3D12InfoQueue* This,D3D12_INFO_QUEUE_FILTER *filter) {
2515    return This->lpVtbl->PushRetrievalFilter(This,filter);
2516}
2517static inline void ID3D12InfoQueue_PopRetrievalFilter(ID3D12InfoQueue* This) {
2518    This->lpVtbl->PopRetrievalFilter(This);
2519}
2520static inline UINT ID3D12InfoQueue_GetRetrievalFilterStackSize(ID3D12InfoQueue* This) {
2521    return This->lpVtbl->GetRetrievalFilterStackSize(This);
2522}
2523static inline HRESULT ID3D12InfoQueue_AddMessage(ID3D12InfoQueue* This,D3D12_MESSAGE_CATEGORY category,D3D12_MESSAGE_SEVERITY severity,D3D12_MESSAGE_ID id,const char *description) {
2524    return This->lpVtbl->AddMessage(This,category,severity,id,description);
2525}
2526static inline HRESULT ID3D12InfoQueue_AddApplicationMessage(ID3D12InfoQueue* This,D3D12_MESSAGE_SEVERITY severity,const char *description) {
2527    return This->lpVtbl->AddApplicationMessage(This,severity,description);
2528}
2529static inline HRESULT ID3D12InfoQueue_SetBreakOnCategory(ID3D12InfoQueue* This,D3D12_MESSAGE_CATEGORY category,WINBOOL enable) {
2530    return This->lpVtbl->SetBreakOnCategory(This,category,enable);
2531}
2532static inline HRESULT ID3D12InfoQueue_SetBreakOnSeverity(ID3D12InfoQueue* This,D3D12_MESSAGE_SEVERITY severity,WINBOOL enable) {
2533    return This->lpVtbl->SetBreakOnSeverity(This,severity,enable);
2534}
2535static inline HRESULT ID3D12InfoQueue_SetBreakOnID(ID3D12InfoQueue* This,D3D12_MESSAGE_ID id,WINBOOL enable) {
2536    return This->lpVtbl->SetBreakOnID(This,id,enable);
2537}
2538static inline WINBOOL ID3D12InfoQueue_GetBreakOnCategory(ID3D12InfoQueue* This,D3D12_MESSAGE_CATEGORY category) {
2539    return This->lpVtbl->GetBreakOnCategory(This,category);
2540}
2541static inline WINBOOL ID3D12InfoQueue_GetBreakOnSeverity(ID3D12InfoQueue* This,D3D12_MESSAGE_SEVERITY severity) {
2542    return This->lpVtbl->GetBreakOnSeverity(This,severity);
2543}
2544static inline WINBOOL ID3D12InfoQueue_GetBreakOnID(ID3D12InfoQueue* This,D3D12_MESSAGE_ID id) {
2545    return This->lpVtbl->GetBreakOnID(This,id);
2546}
2547static inline void ID3D12InfoQueue_SetMuteDebugOutput(ID3D12InfoQueue* This,WINBOOL mute) {
2548    This->lpVtbl->SetMuteDebugOutput(This,mute);
2549}
2550static inline WINBOOL ID3D12InfoQueue_GetMuteDebugOutput(ID3D12InfoQueue* This) {
2551    return This->lpVtbl->GetMuteDebugOutput(This);
2552}
2553#endif
2554#endif
2555
2556#endif
2557
2558
2559#endif  /* __ID3D12InfoQueue_INTERFACE_DEFINED__ */
2560
2561typedef void (__stdcall *D3D12MessageFunc)(D3D12_MESSAGE_CATEGORY category,D3D12_MESSAGE_SEVERITY severity,D3D12_MESSAGE_ID id,const char *description,void *context);
2562/*****************************************************************************
2563 * ID3D12InfoQueue1 interface
2564 */
2565#ifndef __ID3D12InfoQueue1_INTERFACE_DEFINED__
2566#define __ID3D12InfoQueue1_INTERFACE_DEFINED__
2567
2568DEFINE_GUID(IID_ID3D12InfoQueue1, 0x2852dd88, 0xb484, 0x4c0c, 0xb6,0xb1, 0x67,0x16,0x85,0x00,0xe6,0x00);
2569#if defined(__cplusplus) && !defined(CINTERFACE)
2570MIDL_INTERFACE("2852dd88-b484-4c0c-b6b1-67168500e600")
2571ID3D12InfoQueue1 : public ID3D12InfoQueue
2572{
2573    virtual HRESULT STDMETHODCALLTYPE RegisterMessageCallback(
2574        D3D12MessageFunc func,
2575        D3D12_MESSAGE_CALLBACK_FLAGS flags,
2576        void *context,
2577        DWORD *cookie) = 0;
2578
2579    virtual HRESULT STDMETHODCALLTYPE UnregisterMessageCallback(
2580        DWORD cookie) = 0;
2581
2582};
2583#ifdef __CRT_UUID_DECL
2584__CRT_UUID_DECL(ID3D12InfoQueue1, 0x2852dd88, 0xb484, 0x4c0c, 0xb6,0xb1, 0x67,0x16,0x85,0x00,0xe6,0x00)
2585#endif
2586#else
2587typedef struct ID3D12InfoQueue1Vtbl {
2588    BEGIN_INTERFACE
2589
2590    /*** IUnknown methods ***/
2591    HRESULT (STDMETHODCALLTYPE *QueryInterface)(
2592        ID3D12InfoQueue1 *This,
2593        REFIID riid,
2594        void **ppvObject);
2595
2596    ULONG (STDMETHODCALLTYPE *AddRef)(
2597        ID3D12InfoQueue1 *This);
2598
2599    ULONG (STDMETHODCALLTYPE *Release)(
2600        ID3D12InfoQueue1 *This);
2601
2602    /*** ID3D12InfoQueue methods ***/
2603    HRESULT (STDMETHODCALLTYPE *SetMessageCountLimit)(
2604        ID3D12InfoQueue1 *This,
2605        UINT64 limit);
2606
2607    void (STDMETHODCALLTYPE *ClearStoredMessages)(
2608        ID3D12InfoQueue1 *This);
2609
2610    HRESULT (STDMETHODCALLTYPE *GetMessage)(
2611        ID3D12InfoQueue1 *This,
2612        UINT64 index,
2613        D3D12_MESSAGE *message,
2614        SIZE_T *length);
2615
2616    UINT64 (STDMETHODCALLTYPE *GetNumMessagesAllowedByStorageFilter)(
2617        ID3D12InfoQueue1 *This);
2618
2619    UINT64 (STDMETHODCALLTYPE *GetNumMessagesDeniedByStorageFilter)(
2620        ID3D12InfoQueue1 *This);
2621
2622    UINT64 (STDMETHODCALLTYPE *GetNumStoredMessages)(
2623        ID3D12InfoQueue1 *This);
2624
2625    UINT64 (STDMETHODCALLTYPE *GetNumStoredMessagesAllowedByRetrievalFilter)(
2626        ID3D12InfoQueue1 *This);
2627
2628    UINT64 (STDMETHODCALLTYPE *GetNumMessagesDiscardedByMessageCountLimit)(
2629        ID3D12InfoQueue1 *This);
2630
2631    UINT64 (STDMETHODCALLTYPE *GetMessageCountLimit)(
2632        ID3D12InfoQueue1 *This);
2633
2634    HRESULT (STDMETHODCALLTYPE *AddStorageFilterEntries)(
2635        ID3D12InfoQueue1 *This,
2636        D3D12_INFO_QUEUE_FILTER *filter);
2637
2638    HRESULT (STDMETHODCALLTYPE *GetStorageFilter)(
2639        ID3D12InfoQueue1 *This,
2640        D3D12_INFO_QUEUE_FILTER *filter,
2641        SIZE_T *length);
2642
2643    void (STDMETHODCALLTYPE *ClearStorageFilter)(
2644        ID3D12InfoQueue1 *This);
2645
2646    HRESULT (STDMETHODCALLTYPE *PushEmptyStorageFilter)(
2647        ID3D12InfoQueue1 *This);
2648
2649    HRESULT (STDMETHODCALLTYPE *PushCopyOfStorageFilter)(
2650        ID3D12InfoQueue1 *This);
2651
2652    HRESULT (STDMETHODCALLTYPE *PushStorageFilter)(
2653        ID3D12InfoQueue1 *This,
2654        D3D12_INFO_QUEUE_FILTER *filter);
2655
2656    void (STDMETHODCALLTYPE *PopStorageFilter)(
2657        ID3D12InfoQueue1 *This);
2658
2659    UINT (STDMETHODCALLTYPE *GetStorageFilterStackSize)(
2660        ID3D12InfoQueue1 *This);
2661
2662    HRESULT (STDMETHODCALLTYPE *AddRetrievalFilterEntries)(
2663        ID3D12InfoQueue1 *This,
2664        D3D12_INFO_QUEUE_FILTER *filter);
2665
2666    HRESULT (STDMETHODCALLTYPE *GetRetrievalFilter)(
2667        ID3D12InfoQueue1 *This,
2668        D3D12_INFO_QUEUE_FILTER *filter,
2669        SIZE_T *length);
2670
2671    void (STDMETHODCALLTYPE *ClearRetrievalFilter)(
2672        ID3D12InfoQueue1 *This);
2673
2674    HRESULT (STDMETHODCALLTYPE *PushEmptyRetrievalFilter)(
2675        ID3D12InfoQueue1 *This);
2676
2677    HRESULT (STDMETHODCALLTYPE *PushCopyOfRetrievalFilter)(
2678        ID3D12InfoQueue1 *This);
2679
2680    HRESULT (STDMETHODCALLTYPE *PushRetrievalFilter)(
2681        ID3D12InfoQueue1 *This,
2682        D3D12_INFO_QUEUE_FILTER *filter);
2683
2684    void (STDMETHODCALLTYPE *PopRetrievalFilter)(
2685        ID3D12InfoQueue1 *This);
2686
2687    UINT (STDMETHODCALLTYPE *GetRetrievalFilterStackSize)(
2688        ID3D12InfoQueue1 *This);
2689
2690    HRESULT (STDMETHODCALLTYPE *AddMessage)(
2691        ID3D12InfoQueue1 *This,
2692        D3D12_MESSAGE_CATEGORY category,
2693        D3D12_MESSAGE_SEVERITY severity,
2694        D3D12_MESSAGE_ID id,
2695        const char *description);
2696
2697    HRESULT (STDMETHODCALLTYPE *AddApplicationMessage)(
2698        ID3D12InfoQueue1 *This,
2699        D3D12_MESSAGE_SEVERITY severity,
2700        const char *description);
2701
2702    HRESULT (STDMETHODCALLTYPE *SetBreakOnCategory)(
2703        ID3D12InfoQueue1 *This,
2704        D3D12_MESSAGE_CATEGORY category,
2705        WINBOOL enable);
2706
2707    HRESULT (STDMETHODCALLTYPE *SetBreakOnSeverity)(
2708        ID3D12InfoQueue1 *This,
2709        D3D12_MESSAGE_SEVERITY severity,
2710        WINBOOL enable);
2711
2712    HRESULT (STDMETHODCALLTYPE *SetBreakOnID)(
2713        ID3D12InfoQueue1 *This,
2714        D3D12_MESSAGE_ID id,
2715        WINBOOL enable);
2716
2717    WINBOOL (STDMETHODCALLTYPE *GetBreakOnCategory)(
2718        ID3D12InfoQueue1 *This,
2719        D3D12_MESSAGE_CATEGORY category);
2720
2721    WINBOOL (STDMETHODCALLTYPE *GetBreakOnSeverity)(
2722        ID3D12InfoQueue1 *This,
2723        D3D12_MESSAGE_SEVERITY severity);
2724
2725    WINBOOL (STDMETHODCALLTYPE *GetBreakOnID)(
2726        ID3D12InfoQueue1 *This,
2727        D3D12_MESSAGE_ID id);
2728
2729    void (STDMETHODCALLTYPE *SetMuteDebugOutput)(
2730        ID3D12InfoQueue1 *This,
2731        WINBOOL mute);
2732
2733    WINBOOL (STDMETHODCALLTYPE *GetMuteDebugOutput)(
2734        ID3D12InfoQueue1 *This);
2735
2736    /*** ID3D12InfoQueue1 methods ***/
2737    HRESULT (STDMETHODCALLTYPE *RegisterMessageCallback)(
2738        ID3D12InfoQueue1 *This,
2739        D3D12MessageFunc func,
2740        D3D12_MESSAGE_CALLBACK_FLAGS flags,
2741        void *context,
2742        DWORD *cookie);
2743
2744    HRESULT (STDMETHODCALLTYPE *UnregisterMessageCallback)(
2745        ID3D12InfoQueue1 *This,
2746        DWORD cookie);
2747
2748    END_INTERFACE
2749} ID3D12InfoQueue1Vtbl;
2750
2751interface ID3D12InfoQueue1 {
2752    CONST_VTBL ID3D12InfoQueue1Vtbl* lpVtbl;
2753};
2754
2755#ifdef COBJMACROS
2756#ifndef WIDL_C_INLINE_WRAPPERS
2757/*** IUnknown methods ***/
2758#define ID3D12InfoQueue1_QueryInterface(This,riid,ppvObject) (This)->lpVtbl->QueryInterface(This,riid,ppvObject)
2759#define ID3D12InfoQueue1_AddRef(This) (This)->lpVtbl->AddRef(This)
2760#define ID3D12InfoQueue1_Release(This) (This)->lpVtbl->Release(This)
2761/*** ID3D12InfoQueue methods ***/
2762#define ID3D12InfoQueue1_SetMessageCountLimit(This,limit) (This)->lpVtbl->SetMessageCountLimit(This,limit)
2763#define ID3D12InfoQueue1_ClearStoredMessages(This) (This)->lpVtbl->ClearStoredMessages(This)
2764#define ID3D12InfoQueue1_GetMessage(This,index,message,length) (This)->lpVtbl->GetMessage(This,index,message,length)
2765#define ID3D12InfoQueue1_GetNumMessagesAllowedByStorageFilter(This) (This)->lpVtbl->GetNumMessagesAllowedByStorageFilter(This)
2766#define ID3D12InfoQueue1_GetNumMessagesDeniedByStorageFilter(This) (This)->lpVtbl->GetNumMessagesDeniedByStorageFilter(This)
2767#define ID3D12InfoQueue1_GetNumStoredMessages(This) (This)->lpVtbl->GetNumStoredMessages(This)
2768#define ID3D12InfoQueue1_GetNumStoredMessagesAllowedByRetrievalFilter(This) (This)->lpVtbl->GetNumStoredMessagesAllowedByRetrievalFilter(This)
2769#define ID3D12InfoQueue1_GetNumMessagesDiscardedByMessageCountLimit(This) (This)->lpVtbl->GetNumMessagesDiscardedByMessageCountLimit(This)
2770#define ID3D12InfoQueue1_GetMessageCountLimit(This) (This)->lpVtbl->GetMessageCountLimit(This)
2771#define ID3D12InfoQueue1_AddStorageFilterEntries(This,filter) (This)->lpVtbl->AddStorageFilterEntries(This,filter)
2772#define ID3D12InfoQueue1_GetStorageFilter(This,filter,length) (This)->lpVtbl->GetStorageFilter(This,filter,length)
2773#define ID3D12InfoQueue1_ClearStorageFilter(This) (This)->lpVtbl->ClearStorageFilter(This)
2774#define ID3D12InfoQueue1_PushEmptyStorageFilter(This) (This)->lpVtbl->PushEmptyStorageFilter(This)
2775#define ID3D12InfoQueue1_PushCopyOfStorageFilter(This) (This)->lpVtbl->PushCopyOfStorageFilter(This)
2776#define ID3D12InfoQueue1_PushStorageFilter(This,filter) (This)->lpVtbl->PushStorageFilter(This,filter)
2777#define ID3D12InfoQueue1_PopStorageFilter(This) (This)->lpVtbl->PopStorageFilter(This)
2778#define ID3D12InfoQueue1_GetStorageFilterStackSize(This) (This)->lpVtbl->GetStorageFilterStackSize(This)
2779#define ID3D12InfoQueue1_AddRetrievalFilterEntries(This,filter) (This)->lpVtbl->AddRetrievalFilterEntries(This,filter)
2780#define ID3D12InfoQueue1_GetRetrievalFilter(This,filter,length) (This)->lpVtbl->GetRetrievalFilter(This,filter,length)
2781#define ID3D12InfoQueue1_ClearRetrievalFilter(This) (This)->lpVtbl->ClearRetrievalFilter(This)
2782#define ID3D12InfoQueue1_PushEmptyRetrievalFilter(This) (This)->lpVtbl->PushEmptyRetrievalFilter(This)
2783#define ID3D12InfoQueue1_PushCopyOfRetrievalFilter(This) (This)->lpVtbl->PushCopyOfRetrievalFilter(This)
2784#define ID3D12InfoQueue1_PushRetrievalFilter(This,filter) (This)->lpVtbl->PushRetrievalFilter(This,filter)
2785#define ID3D12InfoQueue1_PopRetrievalFilter(This) (This)->lpVtbl->PopRetrievalFilter(This)
2786#define ID3D12InfoQueue1_GetRetrievalFilterStackSize(This) (This)->lpVtbl->GetRetrievalFilterStackSize(This)
2787#define ID3D12InfoQueue1_AddMessage(This,category,severity,id,description) (This)->lpVtbl->AddMessage(This,category,severity,id,description)
2788#define ID3D12InfoQueue1_AddApplicationMessage(This,severity,description) (This)->lpVtbl->AddApplicationMessage(This,severity,description)
2789#define ID3D12InfoQueue1_SetBreakOnCategory(This,category,enable) (This)->lpVtbl->SetBreakOnCategory(This,category,enable)
2790#define ID3D12InfoQueue1_SetBreakOnSeverity(This,severity,enable) (This)->lpVtbl->SetBreakOnSeverity(This,severity,enable)
2791#define ID3D12InfoQueue1_SetBreakOnID(This,id,enable) (This)->lpVtbl->SetBreakOnID(This,id,enable)
2792#define ID3D12InfoQueue1_GetBreakOnCategory(This,category) (This)->lpVtbl->GetBreakOnCategory(This,category)
2793#define ID3D12InfoQueue1_GetBreakOnSeverity(This,severity) (This)->lpVtbl->GetBreakOnSeverity(This,severity)
2794#define ID3D12InfoQueue1_GetBreakOnID(This,id) (This)->lpVtbl->GetBreakOnID(This,id)
2795#define ID3D12InfoQueue1_SetMuteDebugOutput(This,mute) (This)->lpVtbl->SetMuteDebugOutput(This,mute)
2796#define ID3D12InfoQueue1_GetMuteDebugOutput(This) (This)->lpVtbl->GetMuteDebugOutput(This)
2797/*** ID3D12InfoQueue1 methods ***/
2798#define ID3D12InfoQueue1_RegisterMessageCallback(This,func,flags,context,cookie) (This)->lpVtbl->RegisterMessageCallback(This,func,flags,context,cookie)
2799#define ID3D12InfoQueue1_UnregisterMessageCallback(This,cookie) (This)->lpVtbl->UnregisterMessageCallback(This,cookie)
2800#else
2801/*** IUnknown methods ***/
2802static inline HRESULT ID3D12InfoQueue1_QueryInterface(ID3D12InfoQueue1* This,REFIID riid,void **ppvObject) {
2803    return This->lpVtbl->QueryInterface(This,riid,ppvObject);
2804}
2805static inline ULONG ID3D12InfoQueue1_AddRef(ID3D12InfoQueue1* This) {
2806    return This->lpVtbl->AddRef(This);
2807}
2808static inline ULONG ID3D12InfoQueue1_Release(ID3D12InfoQueue1* This) {
2809    return This->lpVtbl->Release(This);
2810}
2811/*** ID3D12InfoQueue methods ***/
2812static inline HRESULT ID3D12InfoQueue1_SetMessageCountLimit(ID3D12InfoQueue1* This,UINT64 limit) {
2813    return This->lpVtbl->SetMessageCountLimit(This,limit);
2814}
2815static inline void ID3D12InfoQueue1_ClearStoredMessages(ID3D12InfoQueue1* This) {
2816    This->lpVtbl->ClearStoredMessages(This);
2817}
2818static inline HRESULT ID3D12InfoQueue1_GetMessage(ID3D12InfoQueue1* This,UINT64 index,D3D12_MESSAGE *message,SIZE_T *length) {
2819    return This->lpVtbl->GetMessage(This,index,message,length);
2820}
2821static inline UINT64 ID3D12InfoQueue1_GetNumMessagesAllowedByStorageFilter(ID3D12InfoQueue1* This) {
2822    return This->lpVtbl->GetNumMessagesAllowedByStorageFilter(This);
2823}
2824static inline UINT64 ID3D12InfoQueue1_GetNumMessagesDeniedByStorageFilter(ID3D12InfoQueue1* This) {
2825    return This->lpVtbl->GetNumMessagesDeniedByStorageFilter(This);
2826}
2827static inline UINT64 ID3D12InfoQueue1_GetNumStoredMessages(ID3D12InfoQueue1* This) {
2828    return This->lpVtbl->GetNumStoredMessages(This);
2829}
2830static inline UINT64 ID3D12InfoQueue1_GetNumStoredMessagesAllowedByRetrievalFilter(ID3D12InfoQueue1* This) {
2831    return This->lpVtbl->GetNumStoredMessagesAllowedByRetrievalFilter(This);
2832}
2833static inline UINT64 ID3D12InfoQueue1_GetNumMessagesDiscardedByMessageCountLimit(ID3D12InfoQueue1* This) {
2834    return This->lpVtbl->GetNumMessagesDiscardedByMessageCountLimit(This);
2835}
2836static inline UINT64 ID3D12InfoQueue1_GetMessageCountLimit(ID3D12InfoQueue1* This) {
2837    return This->lpVtbl->GetMessageCountLimit(This);
2838}
2839static inline HRESULT ID3D12InfoQueue1_AddStorageFilterEntries(ID3D12InfoQueue1* This,D3D12_INFO_QUEUE_FILTER *filter) {
2840    return This->lpVtbl->AddStorageFilterEntries(This,filter);
2841}
2842static inline HRESULT ID3D12InfoQueue1_GetStorageFilter(ID3D12InfoQueue1* This,D3D12_INFO_QUEUE_FILTER *filter,SIZE_T *length) {
2843    return This->lpVtbl->GetStorageFilter(This,filter,length);
2844}
2845static inline void ID3D12InfoQueue1_ClearStorageFilter(ID3D12InfoQueue1* This) {
2846    This->lpVtbl->ClearStorageFilter(This);
2847}
2848static inline HRESULT ID3D12InfoQueue1_PushEmptyStorageFilter(ID3D12InfoQueue1* This) {
2849    return This->lpVtbl->PushEmptyStorageFilter(This);
2850}
2851static inline HRESULT ID3D12InfoQueue1_PushCopyOfStorageFilter(ID3D12InfoQueue1* This) {
2852    return This->lpVtbl->PushCopyOfStorageFilter(This);
2853}
2854static inline HRESULT ID3D12InfoQueue1_PushStorageFilter(ID3D12InfoQueue1* This,D3D12_INFO_QUEUE_FILTER *filter) {
2855    return This->lpVtbl->PushStorageFilter(This,filter);
2856}
2857static inline void ID3D12InfoQueue1_PopStorageFilter(ID3D12InfoQueue1* This) {
2858    This->lpVtbl->PopStorageFilter(This);
2859}
2860static inline UINT ID3D12InfoQueue1_GetStorageFilterStackSize(ID3D12InfoQueue1* This) {
2861    return This->lpVtbl->GetStorageFilterStackSize(This);
2862}
2863static inline HRESULT ID3D12InfoQueue1_AddRetrievalFilterEntries(ID3D12InfoQueue1* This,D3D12_INFO_QUEUE_FILTER *filter) {
2864    return This->lpVtbl->AddRetrievalFilterEntries(This,filter);
2865}
2866static inline HRESULT ID3D12InfoQueue1_GetRetrievalFilter(ID3D12InfoQueue1* This,D3D12_INFO_QUEUE_FILTER *filter,SIZE_T *length) {
2867    return This->lpVtbl->GetRetrievalFilter(This,filter,length);
2868}
2869static inline void ID3D12InfoQueue1_ClearRetrievalFilter(ID3D12InfoQueue1* This) {
2870    This->lpVtbl->ClearRetrievalFilter(This);
2871}
2872static inline HRESULT ID3D12InfoQueue1_PushEmptyRetrievalFilter(ID3D12InfoQueue1* This) {
2873    return This->lpVtbl->PushEmptyRetrievalFilter(This);
2874}
2875static inline HRESULT ID3D12InfoQueue1_PushCopyOfRetrievalFilter(ID3D12InfoQueue1* This) {
2876    return This->lpVtbl->PushCopyOfRetrievalFilter(This);
2877}
2878static inline HRESULT ID3D12InfoQueue1_PushRetrievalFilter(ID3D12InfoQueue1* This,D3D12_INFO_QUEUE_FILTER *filter) {
2879    return This->lpVtbl->PushRetrievalFilter(This,filter);
2880}
2881static inline void ID3D12InfoQueue1_PopRetrievalFilter(ID3D12InfoQueue1* This) {
2882    This->lpVtbl->PopRetrievalFilter(This);
2883}
2884static inline UINT ID3D12InfoQueue1_GetRetrievalFilterStackSize(ID3D12InfoQueue1* This) {
2885    return This->lpVtbl->GetRetrievalFilterStackSize(This);
2886}
2887static inline HRESULT ID3D12InfoQueue1_AddMessage(ID3D12InfoQueue1* This,D3D12_MESSAGE_CATEGORY category,D3D12_MESSAGE_SEVERITY severity,D3D12_MESSAGE_ID id,const char *description) {
2888    return This->lpVtbl->AddMessage(This,category,severity,id,description);
2889}
2890static inline HRESULT ID3D12InfoQueue1_AddApplicationMessage(ID3D12InfoQueue1* This,D3D12_MESSAGE_SEVERITY severity,const char *description) {
2891    return This->lpVtbl->AddApplicationMessage(This,severity,description);
2892}
2893static inline HRESULT ID3D12InfoQueue1_SetBreakOnCategory(ID3D12InfoQueue1* This,D3D12_MESSAGE_CATEGORY category,WINBOOL enable) {
2894    return This->lpVtbl->SetBreakOnCategory(This,category,enable);
2895}
2896static inline HRESULT ID3D12InfoQueue1_SetBreakOnSeverity(ID3D12InfoQueue1* This,D3D12_MESSAGE_SEVERITY severity,WINBOOL enable) {
2897    return This->lpVtbl->SetBreakOnSeverity(This,severity,enable);
2898}
2899static inline HRESULT ID3D12InfoQueue1_SetBreakOnID(ID3D12InfoQueue1* This,D3D12_MESSAGE_ID id,WINBOOL enable) {
2900    return This->lpVtbl->SetBreakOnID(This,id,enable);
2901}
2902static inline WINBOOL ID3D12InfoQueue1_GetBreakOnCategory(ID3D12InfoQueue1* This,D3D12_MESSAGE_CATEGORY category) {
2903    return This->lpVtbl->GetBreakOnCategory(This,category);
2904}
2905static inline WINBOOL ID3D12InfoQueue1_GetBreakOnSeverity(ID3D12InfoQueue1* This,D3D12_MESSAGE_SEVERITY severity) {
2906    return This->lpVtbl->GetBreakOnSeverity(This,severity);
2907}
2908static inline WINBOOL ID3D12InfoQueue1_GetBreakOnID(ID3D12InfoQueue1* This,D3D12_MESSAGE_ID id) {
2909    return This->lpVtbl->GetBreakOnID(This,id);
2910}
2911static inline void ID3D12InfoQueue1_SetMuteDebugOutput(ID3D12InfoQueue1* This,WINBOOL mute) {
2912    This->lpVtbl->SetMuteDebugOutput(This,mute);
2913}
2914static inline WINBOOL ID3D12InfoQueue1_GetMuteDebugOutput(ID3D12InfoQueue1* This) {
2915    return This->lpVtbl->GetMuteDebugOutput(This);
2916}
2917/*** ID3D12InfoQueue1 methods ***/
2918static inline HRESULT ID3D12InfoQueue1_RegisterMessageCallback(ID3D12InfoQueue1* This,D3D12MessageFunc func,D3D12_MESSAGE_CALLBACK_FLAGS flags,void *context,DWORD *cookie) {
2919    return This->lpVtbl->RegisterMessageCallback(This,func,flags,context,cookie);
2920}
2921static inline HRESULT ID3D12InfoQueue1_UnregisterMessageCallback(ID3D12InfoQueue1* This,DWORD cookie) {
2922    return This->lpVtbl->UnregisterMessageCallback(This,cookie);
2923}
2924#endif
2925#endif
2926
2927#endif
2928
2929
2930#endif  /* __ID3D12InfoQueue1_INTERFACE_DEFINED__ */
2931
2932/* Begin additional prototypes for all interfaces */
2933
2934
2935/* End additional prototypes */
2936
2937#ifdef __cplusplus
2938}
2939#endif
2940
2941#endif /* __d3d12sdklayers_h__ */