using System;

// namespace Graphics.Direct3D11
namespace Win32
{
	extension Win32
	{
		// --- Constants ---
		
		public const uint32 D3D11_16BIT_INDEX_STRIP_CUT_VALUE = 65535;
		public const uint32 D3D11_32BIT_INDEX_STRIP_CUT_VALUE = 4294967295;
		public const uint32 D3D11_8BIT_INDEX_STRIP_CUT_VALUE = 255;
		public const uint32 D3D11_ARRAY_AXIS_ADDRESS_RANGE_BIT_COUNT = 9;
		public const uint32 D3D11_CLIP_OR_CULL_DISTANCE_COUNT = 8;
		public const uint32 D3D11_CLIP_OR_CULL_DISTANCE_ELEMENT_COUNT = 2;
		public const uint32 D3D11_COMMONSHADER_CONSTANT_BUFFER_API_SLOT_COUNT = 14;
		public const uint32 D3D11_COMMONSHADER_CONSTANT_BUFFER_COMPONENTS = 4;
		public const uint32 D3D11_COMMONSHADER_CONSTANT_BUFFER_COMPONENT_BIT_COUNT = 32;
		public const uint32 D3D11_COMMONSHADER_CONSTANT_BUFFER_HW_SLOT_COUNT = 15;
		public const uint32 D3D11_COMMONSHADER_CONSTANT_BUFFER_PARTIAL_UPDATE_EXTENTS_BYTE_ALIGNMENT = 16;
		public const uint32 D3D11_COMMONSHADER_CONSTANT_BUFFER_REGISTER_COMPONENTS = 4;
		public const uint32 D3D11_COMMONSHADER_CONSTANT_BUFFER_REGISTER_COUNT = 15;
		public const uint32 D3D11_COMMONSHADER_CONSTANT_BUFFER_REGISTER_READS_PER_INST = 1;
		public const uint32 D3D11_COMMONSHADER_CONSTANT_BUFFER_REGISTER_READ_PORTS = 1;
		public const uint32 D3D11_COMMONSHADER_FLOWCONTROL_NESTING_LIMIT = 64;
		public const uint32 D3D11_COMMONSHADER_IMMEDIATE_CONSTANT_BUFFER_REGISTER_COMPONENTS = 4;
		public const uint32 D3D11_COMMONSHADER_IMMEDIATE_CONSTANT_BUFFER_REGISTER_COUNT = 1;
		public const uint32 D3D11_COMMONSHADER_IMMEDIATE_CONSTANT_BUFFER_REGISTER_READS_PER_INST = 1;
		public const uint32 D3D11_COMMONSHADER_IMMEDIATE_CONSTANT_BUFFER_REGISTER_READ_PORTS = 1;
		public const uint32 D3D11_COMMONSHADER_IMMEDIATE_VALUE_COMPONENT_BIT_COUNT = 32;
		public const uint32 D3D11_COMMONSHADER_INPUT_RESOURCE_REGISTER_COMPONENTS = 1;
		public const uint32 D3D11_COMMONSHADER_INPUT_RESOURCE_REGISTER_COUNT = 128;
		public const uint32 D3D11_COMMONSHADER_INPUT_RESOURCE_REGISTER_READS_PER_INST = 1;
		public const uint32 D3D11_COMMONSHADER_INPUT_RESOURCE_REGISTER_READ_PORTS = 1;
		public const uint32 D3D11_COMMONSHADER_INPUT_RESOURCE_SLOT_COUNT = 128;
		public const uint32 D3D11_COMMONSHADER_SAMPLER_REGISTER_COMPONENTS = 1;
		public const uint32 D3D11_COMMONSHADER_SAMPLER_REGISTER_COUNT = 16;
		public const uint32 D3D11_COMMONSHADER_SAMPLER_REGISTER_READS_PER_INST = 1;
		public const uint32 D3D11_COMMONSHADER_SAMPLER_REGISTER_READ_PORTS = 1;
		public const uint32 D3D11_COMMONSHADER_SAMPLER_SLOT_COUNT = 16;
		public const uint32 D3D11_COMMONSHADER_SUBROUTINE_NESTING_LIMIT = 32;
		public const uint32 D3D11_COMMONSHADER_TEMP_REGISTER_COMPONENTS = 4;
		public const uint32 D3D11_COMMONSHADER_TEMP_REGISTER_COMPONENT_BIT_COUNT = 32;
		public const uint32 D3D11_COMMONSHADER_TEMP_REGISTER_COUNT = 4096;
		public const uint32 D3D11_COMMONSHADER_TEMP_REGISTER_READS_PER_INST = 3;
		public const uint32 D3D11_COMMONSHADER_TEMP_REGISTER_READ_PORTS = 3;
		public const uint32 D3D11_COMMONSHADER_TEXCOORD_RANGE_REDUCTION_MAX = 10;
		public const int32 D3D11_COMMONSHADER_TEXCOORD_RANGE_REDUCTION_MIN = -10;
		public const int32 D3D11_COMMONSHADER_TEXEL_OFFSET_MAX_NEGATIVE = -8;
		public const uint32 D3D11_COMMONSHADER_TEXEL_OFFSET_MAX_POSITIVE = 7;
		public const uint32 D3D11_CS_4_X_BUCKET00_MAX_BYTES_TGSM_WRITABLE_PER_THREAD = 256;
		public const uint32 D3D11_CS_4_X_BUCKET00_MAX_NUM_THREADS_PER_GROUP = 64;
		public const uint32 D3D11_CS_4_X_BUCKET01_MAX_BYTES_TGSM_WRITABLE_PER_THREAD = 240;
		public const uint32 D3D11_CS_4_X_BUCKET01_MAX_NUM_THREADS_PER_GROUP = 68;
		public const uint32 D3D11_CS_4_X_BUCKET02_MAX_BYTES_TGSM_WRITABLE_PER_THREAD = 224;
		public const uint32 D3D11_CS_4_X_BUCKET02_MAX_NUM_THREADS_PER_GROUP = 72;
		public const uint32 D3D11_CS_4_X_BUCKET03_MAX_BYTES_TGSM_WRITABLE_PER_THREAD = 208;
		public const uint32 D3D11_CS_4_X_BUCKET03_MAX_NUM_THREADS_PER_GROUP = 76;
		public const uint32 D3D11_CS_4_X_BUCKET04_MAX_BYTES_TGSM_WRITABLE_PER_THREAD = 192;
		public const uint32 D3D11_CS_4_X_BUCKET04_MAX_NUM_THREADS_PER_GROUP = 84;
		public const uint32 D3D11_CS_4_X_BUCKET05_MAX_BYTES_TGSM_WRITABLE_PER_THREAD = 176;
		public const uint32 D3D11_CS_4_X_BUCKET05_MAX_NUM_THREADS_PER_GROUP = 92;
		public const uint32 D3D11_CS_4_X_BUCKET06_MAX_BYTES_TGSM_WRITABLE_PER_THREAD = 160;
		public const uint32 D3D11_CS_4_X_BUCKET06_MAX_NUM_THREADS_PER_GROUP = 100;
		public const uint32 D3D11_CS_4_X_BUCKET07_MAX_BYTES_TGSM_WRITABLE_PER_THREAD = 144;
		public const uint32 D3D11_CS_4_X_BUCKET07_MAX_NUM_THREADS_PER_GROUP = 112;
		public const uint32 D3D11_CS_4_X_BUCKET08_MAX_BYTES_TGSM_WRITABLE_PER_THREAD = 128;
		public const uint32 D3D11_CS_4_X_BUCKET08_MAX_NUM_THREADS_PER_GROUP = 128;
		public const uint32 D3D11_CS_4_X_BUCKET09_MAX_BYTES_TGSM_WRITABLE_PER_THREAD = 112;
		public const uint32 D3D11_CS_4_X_BUCKET09_MAX_NUM_THREADS_PER_GROUP = 144;
		public const uint32 D3D11_CS_4_X_BUCKET10_MAX_BYTES_TGSM_WRITABLE_PER_THREAD = 96;
		public const uint32 D3D11_CS_4_X_BUCKET10_MAX_NUM_THREADS_PER_GROUP = 168;
		public const uint32 D3D11_CS_4_X_BUCKET11_MAX_BYTES_TGSM_WRITABLE_PER_THREAD = 80;
		public const uint32 D3D11_CS_4_X_BUCKET11_MAX_NUM_THREADS_PER_GROUP = 204;
		public const uint32 D3D11_CS_4_X_BUCKET12_MAX_BYTES_TGSM_WRITABLE_PER_THREAD = 64;
		public const uint32 D3D11_CS_4_X_BUCKET12_MAX_NUM_THREADS_PER_GROUP = 256;
		public const uint32 D3D11_CS_4_X_BUCKET13_MAX_BYTES_TGSM_WRITABLE_PER_THREAD = 48;
		public const uint32 D3D11_CS_4_X_BUCKET13_MAX_NUM_THREADS_PER_GROUP = 340;
		public const uint32 D3D11_CS_4_X_BUCKET14_MAX_BYTES_TGSM_WRITABLE_PER_THREAD = 32;
		public const uint32 D3D11_CS_4_X_BUCKET14_MAX_NUM_THREADS_PER_GROUP = 512;
		public const uint32 D3D11_CS_4_X_BUCKET15_MAX_BYTES_TGSM_WRITABLE_PER_THREAD = 16;
		public const uint32 D3D11_CS_4_X_BUCKET15_MAX_NUM_THREADS_PER_GROUP = 768;
		public const uint32 D3D11_CS_4_X_DISPATCH_MAX_THREAD_GROUPS_IN_Z_DIMENSION = 1;
		public const uint32 D3D11_CS_4_X_RAW_UAV_BYTE_ALIGNMENT = 256;
		public const uint32 D3D11_CS_4_X_THREAD_GROUP_MAX_THREADS_PER_GROUP = 768;
		public const uint32 D3D11_CS_4_X_THREAD_GROUP_MAX_X = 768;
		public const uint32 D3D11_CS_4_X_THREAD_GROUP_MAX_Y = 768;
		public const uint32 D3D11_CS_4_X_UAV_REGISTER_COUNT = 1;
		public const uint32 D3D11_CS_DISPATCH_MAX_THREAD_GROUPS_PER_DIMENSION = 65535;
		public const uint32 D3D11_CS_TGSM_REGISTER_COUNT = 8192;
		public const uint32 D3D11_CS_TGSM_REGISTER_READS_PER_INST = 1;
		public const uint32 D3D11_CS_TGSM_RESOURCE_REGISTER_COMPONENTS = 1;
		public const uint32 D3D11_CS_TGSM_RESOURCE_REGISTER_READ_PORTS = 1;
		public const uint32 D3D11_CS_THREADGROUPID_REGISTER_COMPONENTS = 3;
		public const uint32 D3D11_CS_THREADGROUPID_REGISTER_COUNT = 1;
		public const uint32 D3D11_CS_THREADIDINGROUPFLATTENED_REGISTER_COMPONENTS = 1;
		public const uint32 D3D11_CS_THREADIDINGROUPFLATTENED_REGISTER_COUNT = 1;
		public const uint32 D3D11_CS_THREADIDINGROUP_REGISTER_COMPONENTS = 3;
		public const uint32 D3D11_CS_THREADIDINGROUP_REGISTER_COUNT = 1;
		public const uint32 D3D11_CS_THREADID_REGISTER_COMPONENTS = 3;
		public const uint32 D3D11_CS_THREADID_REGISTER_COUNT = 1;
		public const uint32 D3D11_CS_THREAD_GROUP_MAX_THREADS_PER_GROUP = 1024;
		public const uint32 D3D11_CS_THREAD_GROUP_MAX_X = 1024;
		public const uint32 D3D11_CS_THREAD_GROUP_MAX_Y = 1024;
		public const uint32 D3D11_CS_THREAD_GROUP_MAX_Z = 64;
		public const uint32 D3D11_CS_THREAD_GROUP_MIN_X = 1;
		public const uint32 D3D11_CS_THREAD_GROUP_MIN_Y = 1;
		public const uint32 D3D11_CS_THREAD_GROUP_MIN_Z = 1;
		public const uint32 D3D11_CS_THREAD_LOCAL_TEMP_REGISTER_POOL = 16384;
		public const float D3D11_DEFAULT_BLEND_FACTOR_ALPHA = 1f;
		public const float D3D11_DEFAULT_BLEND_FACTOR_BLUE = 1f;
		public const float D3D11_DEFAULT_BLEND_FACTOR_GREEN = 1f;
		public const float D3D11_DEFAULT_BLEND_FACTOR_RED = 1f;
		public const float D3D11_DEFAULT_BORDER_COLOR_COMPONENT = 0f;
		public const uint32 D3D11_DEFAULT_DEPTH_BIAS = 0;
		public const float D3D11_DEFAULT_DEPTH_BIAS_CLAMP = 0f;
		public const uint32 D3D11_DEFAULT_MAX_ANISOTROPY = 16;
		public const float D3D11_DEFAULT_MIP_LOD_BIAS = 0f;
		public const uint32 D3D11_DEFAULT_RENDER_TARGET_ARRAY_INDEX = 0;
		public const uint32 D3D11_DEFAULT_SAMPLE_MASK = 4294967295;
		public const uint32 D3D11_DEFAULT_SCISSOR_ENDX = 0;
		public const uint32 D3D11_DEFAULT_SCISSOR_ENDY = 0;
		public const uint32 D3D11_DEFAULT_SCISSOR_STARTX = 0;
		public const uint32 D3D11_DEFAULT_SCISSOR_STARTY = 0;
		public const float D3D11_DEFAULT_SLOPE_SCALED_DEPTH_BIAS = 0f;
		public const uint32 D3D11_DEFAULT_STENCIL_READ_MASK = 255;
		public const uint32 D3D11_DEFAULT_STENCIL_REFERENCE = 0;
		public const uint32 D3D11_DEFAULT_STENCIL_WRITE_MASK = 255;
		public const uint32 D3D11_DEFAULT_VIEWPORT_AND_SCISSORRECT_INDEX = 0;
		public const uint32 D3D11_DEFAULT_VIEWPORT_HEIGHT = 0;
		public const float D3D11_DEFAULT_VIEWPORT_MAX_DEPTH = 0f;
		public const float D3D11_DEFAULT_VIEWPORT_MIN_DEPTH = 0f;
		public const uint32 D3D11_DEFAULT_VIEWPORT_TOPLEFTX = 0;
		public const uint32 D3D11_DEFAULT_VIEWPORT_TOPLEFTY = 0;
		public const uint32 D3D11_DEFAULT_VIEWPORT_WIDTH = 0;
		public const uint32 D3D11_DS_INPUT_CONTROL_POINTS_MAX_TOTAL_SCALARS = 3968;
		public const uint32 D3D11_DS_INPUT_CONTROL_POINT_REGISTER_COMPONENTS = 4;
		public const uint32 D3D11_DS_INPUT_CONTROL_POINT_REGISTER_COMPONENT_BIT_COUNT = 32;
		public const uint32 D3D11_DS_INPUT_CONTROL_POINT_REGISTER_COUNT = 32;
		public const uint32 D3D11_DS_INPUT_CONTROL_POINT_REGISTER_READS_PER_INST = 2;
		public const uint32 D3D11_DS_INPUT_CONTROL_POINT_REGISTER_READ_PORTS = 1;
		public const uint32 D3D11_DS_INPUT_DOMAIN_POINT_REGISTER_COMPONENTS = 3;
		public const uint32 D3D11_DS_INPUT_DOMAIN_POINT_REGISTER_COMPONENT_BIT_COUNT = 32;
		public const uint32 D3D11_DS_INPUT_DOMAIN_POINT_REGISTER_COUNT = 1;
		public const uint32 D3D11_DS_INPUT_DOMAIN_POINT_REGISTER_READS_PER_INST = 2;
		public const uint32 D3D11_DS_INPUT_DOMAIN_POINT_REGISTER_READ_PORTS = 1;
		public const uint32 D3D11_DS_INPUT_PATCH_CONSTANT_REGISTER_COMPONENTS = 4;
		public const uint32 D3D11_DS_INPUT_PATCH_CONSTANT_REGISTER_COMPONENT_BIT_COUNT = 32;
		public const uint32 D3D11_DS_INPUT_PATCH_CONSTANT_REGISTER_COUNT = 32;
		public const uint32 D3D11_DS_INPUT_PATCH_CONSTANT_REGISTER_READS_PER_INST = 2;
		public const uint32 D3D11_DS_INPUT_PATCH_CONSTANT_REGISTER_READ_PORTS = 1;
		public const uint32 D3D11_DS_INPUT_PRIMITIVE_ID_REGISTER_COMPONENTS = 1;
		public const uint32 D3D11_DS_INPUT_PRIMITIVE_ID_REGISTER_COMPONENT_BIT_COUNT = 32;
		public const uint32 D3D11_DS_INPUT_PRIMITIVE_ID_REGISTER_COUNT = 1;
		public const uint32 D3D11_DS_INPUT_PRIMITIVE_ID_REGISTER_READS_PER_INST = 2;
		public const uint32 D3D11_DS_INPUT_PRIMITIVE_ID_REGISTER_READ_PORTS = 1;
		public const uint32 D3D11_DS_OUTPUT_REGISTER_COMPONENTS = 4;
		public const uint32 D3D11_DS_OUTPUT_REGISTER_COMPONENT_BIT_COUNT = 32;
		public const uint32 D3D11_DS_OUTPUT_REGISTER_COUNT = 32;
		public const double D3D11_FLOAT16_FUSED_TOLERANCE_IN_ULP = 0.6;
		public const float D3D11_FLOAT32_MAX = 3.4028235e+38f;
		public const float D3D11_FLOAT32_TO_INTEGER_TOLERANCE_IN_ULP = 0.6f;
		public const float D3D11_FLOAT_TO_SRGB_EXPONENT_DENOMINATOR = 2.4f;
		public const float D3D11_FLOAT_TO_SRGB_EXPONENT_NUMERATOR = 1f;
		public const float D3D11_FLOAT_TO_SRGB_OFFSET = 0.055f;
		public const float D3D11_FLOAT_TO_SRGB_SCALE_1 = 12.92f;
		public const float D3D11_FLOAT_TO_SRGB_SCALE_2 = 1.055f;
		public const float D3D11_FLOAT_TO_SRGB_THRESHOLD = 0.0031308f;
		public const float D3D11_FTOI_INSTRUCTION_MAX_INPUT = 2147483600.0f;
		public const float D3D11_FTOI_INSTRUCTION_MIN_INPUT = -2147483600.0f;
		public const float D3D11_FTOU_INSTRUCTION_MAX_INPUT = 4294967300.0f;
		public const float D3D11_FTOU_INSTRUCTION_MIN_INPUT = 0f;
		public const uint32 D3D11_GS_INPUT_INSTANCE_ID_READS_PER_INST = 2;
		public const uint32 D3D11_GS_INPUT_INSTANCE_ID_READ_PORTS = 1;
		public const uint32 D3D11_GS_INPUT_INSTANCE_ID_REGISTER_COMPONENTS = 1;
		public const uint32 D3D11_GS_INPUT_INSTANCE_ID_REGISTER_COMPONENT_BIT_COUNT = 32;
		public const uint32 D3D11_GS_INPUT_INSTANCE_ID_REGISTER_COUNT = 1;
		public const uint32 D3D11_GS_INPUT_PRIM_CONST_REGISTER_COMPONENTS = 1;
		public const uint32 D3D11_GS_INPUT_PRIM_CONST_REGISTER_COMPONENT_BIT_COUNT = 32;
		public const uint32 D3D11_GS_INPUT_PRIM_CONST_REGISTER_COUNT = 1;
		public const uint32 D3D11_GS_INPUT_PRIM_CONST_REGISTER_READS_PER_INST = 2;
		public const uint32 D3D11_GS_INPUT_PRIM_CONST_REGISTER_READ_PORTS = 1;
		public const uint32 D3D11_GS_INPUT_REGISTER_COMPONENTS = 4;
		public const uint32 D3D11_GS_INPUT_REGISTER_COMPONENT_BIT_COUNT = 32;
		public const uint32 D3D11_GS_INPUT_REGISTER_COUNT = 32;
		public const uint32 D3D11_GS_INPUT_REGISTER_READS_PER_INST = 2;
		public const uint32 D3D11_GS_INPUT_REGISTER_READ_PORTS = 1;
		public const uint32 D3D11_GS_INPUT_REGISTER_VERTICES = 32;
		public const uint32 D3D11_GS_MAX_INSTANCE_COUNT = 32;
		public const uint32 D3D11_GS_MAX_OUTPUT_VERTEX_COUNT_ACROSS_INSTANCES = 1024;
		public const uint32 D3D11_GS_OUTPUT_ELEMENTS = 32;
		public const uint32 D3D11_GS_OUTPUT_REGISTER_COMPONENTS = 4;
		public const uint32 D3D11_GS_OUTPUT_REGISTER_COMPONENT_BIT_COUNT = 32;
		public const uint32 D3D11_GS_OUTPUT_REGISTER_COUNT = 32;
		public const uint32 D3D11_HS_CONTROL_POINT_PHASE_INPUT_REGISTER_COUNT = 32;
		public const uint32 D3D11_HS_CONTROL_POINT_PHASE_OUTPUT_REGISTER_COUNT = 32;
		public const uint32 D3D11_HS_CONTROL_POINT_REGISTER_COMPONENTS = 4;
		public const uint32 D3D11_HS_CONTROL_POINT_REGISTER_COMPONENT_BIT_COUNT = 32;
		public const uint32 D3D11_HS_CONTROL_POINT_REGISTER_READS_PER_INST = 2;
		public const uint32 D3D11_HS_CONTROL_POINT_REGISTER_READ_PORTS = 1;
		public const uint32 D3D11_HS_FORK_PHASE_INSTANCE_COUNT_UPPER_BOUND = 4294967295;
		public const uint32 D3D11_HS_INPUT_FORK_INSTANCE_ID_REGISTER_COMPONENTS = 1;
		public const uint32 D3D11_HS_INPUT_FORK_INSTANCE_ID_REGISTER_COMPONENT_BIT_COUNT = 32;
		public const uint32 D3D11_HS_INPUT_FORK_INSTANCE_ID_REGISTER_COUNT = 1;
		public const uint32 D3D11_HS_INPUT_FORK_INSTANCE_ID_REGISTER_READS_PER_INST = 2;
		public const uint32 D3D11_HS_INPUT_FORK_INSTANCE_ID_REGISTER_READ_PORTS = 1;
		public const uint32 D3D11_HS_INPUT_JOIN_INSTANCE_ID_REGISTER_COMPONENTS = 1;
		public const uint32 D3D11_HS_INPUT_JOIN_INSTANCE_ID_REGISTER_COMPONENT_BIT_COUNT = 32;
		public const uint32 D3D11_HS_INPUT_JOIN_INSTANCE_ID_REGISTER_COUNT = 1;
		public const uint32 D3D11_HS_INPUT_JOIN_INSTANCE_ID_REGISTER_READS_PER_INST = 2;
		public const uint32 D3D11_HS_INPUT_JOIN_INSTANCE_ID_REGISTER_READ_PORTS = 1;
		public const uint32 D3D11_HS_INPUT_PRIMITIVE_ID_REGISTER_COMPONENTS = 1;
		public const uint32 D3D11_HS_INPUT_PRIMITIVE_ID_REGISTER_COMPONENT_BIT_COUNT = 32;
		public const uint32 D3D11_HS_INPUT_PRIMITIVE_ID_REGISTER_COUNT = 1;
		public const uint32 D3D11_HS_INPUT_PRIMITIVE_ID_REGISTER_READS_PER_INST = 2;
		public const uint32 D3D11_HS_INPUT_PRIMITIVE_ID_REGISTER_READ_PORTS = 1;
		public const uint32 D3D11_HS_JOIN_PHASE_INSTANCE_COUNT_UPPER_BOUND = 4294967295;
		public const float D3D11_HS_MAXTESSFACTOR_LOWER_BOUND = 1f;
		public const float D3D11_HS_MAXTESSFACTOR_UPPER_BOUND = 64f;
		public const uint32 D3D11_HS_OUTPUT_CONTROL_POINTS_MAX_TOTAL_SCALARS = 3968;
		public const uint32 D3D11_HS_OUTPUT_CONTROL_POINT_ID_REGISTER_COMPONENTS = 1;
		public const uint32 D3D11_HS_OUTPUT_CONTROL_POINT_ID_REGISTER_COMPONENT_BIT_COUNT = 32;
		public const uint32 D3D11_HS_OUTPUT_CONTROL_POINT_ID_REGISTER_COUNT = 1;
		public const uint32 D3D11_HS_OUTPUT_CONTROL_POINT_ID_REGISTER_READS_PER_INST = 2;
		public const uint32 D3D11_HS_OUTPUT_CONTROL_POINT_ID_REGISTER_READ_PORTS = 1;
		public const uint32 D3D11_HS_OUTPUT_PATCH_CONSTANT_REGISTER_COMPONENTS = 4;
		public const uint32 D3D11_HS_OUTPUT_PATCH_CONSTANT_REGISTER_COMPONENT_BIT_COUNT = 32;
		public const uint32 D3D11_HS_OUTPUT_PATCH_CONSTANT_REGISTER_COUNT = 32;
		public const uint32 D3D11_HS_OUTPUT_PATCH_CONSTANT_REGISTER_READS_PER_INST = 2;
		public const uint32 D3D11_HS_OUTPUT_PATCH_CONSTANT_REGISTER_READ_PORTS = 1;
		public const uint32 D3D11_HS_OUTPUT_PATCH_CONSTANT_REGISTER_SCALAR_COMPONENTS = 128;
		public const uint32 D3D11_IA_DEFAULT_INDEX_BUFFER_OFFSET_IN_BYTES = 0;
		public const uint32 D3D11_IA_DEFAULT_PRIMITIVE_TOPOLOGY = 0;
		public const uint32 D3D11_IA_DEFAULT_VERTEX_BUFFER_OFFSET_IN_BYTES = 0;
		public const uint32 D3D11_IA_INDEX_INPUT_RESOURCE_SLOT_COUNT = 1;
		public const uint32 D3D11_IA_INSTANCE_ID_BIT_COUNT = 32;
		public const uint32 D3D11_IA_INTEGER_ARITHMETIC_BIT_COUNT = 32;
		public const uint32 D3D11_IA_PATCH_MAX_CONTROL_POINT_COUNT = 32;
		public const uint32 D3D11_IA_PRIMITIVE_ID_BIT_COUNT = 32;
		public const uint32 D3D11_IA_VERTEX_ID_BIT_COUNT = 32;
		public const uint32 D3D11_IA_VERTEX_INPUT_RESOURCE_SLOT_COUNT = 32;
		public const uint32 D3D11_IA_VERTEX_INPUT_STRUCTURE_ELEMENTS_COMPONENTS = 128;
		public const uint32 D3D11_IA_VERTEX_INPUT_STRUCTURE_ELEMENT_COUNT = 32;
		public const uint32 D3D11_INTEGER_DIVIDE_BY_ZERO_QUOTIENT = 4294967295;
		public const uint32 D3D11_INTEGER_DIVIDE_BY_ZERO_REMAINDER = 4294967295;
		public const uint32 D3D11_KEEP_RENDER_TARGETS_AND_DEPTH_STENCIL = 4294967295;
		public const uint32 D3D11_KEEP_UNORDERED_ACCESS_VIEWS = 4294967295;
		public const float D3D11_LINEAR_GAMMA = 1f;
		public const uint32 D3D11_MAJOR_VERSION = 11;
		public const float D3D11_MAX_BORDER_COLOR_COMPONENT = 1f;
		public const float D3D11_MAX_DEPTH = 1f;
		public const uint32 D3D11_MAX_MAXANISOTROPY = 16;
		public const uint32 D3D11_MAX_MULTISAMPLE_SAMPLE_COUNT = 32;
		public const float D3D11_MAX_POSITION_VALUE = 3.4028236e+34f;
		public const uint32 D3D11_MAX_TEXTURE_DIMENSION_2_TO_EXP = 17;
		public const uint32 D3D11_MINOR_VERSION = 0;
		public const float D3D11_MIN_BORDER_COLOR_COMPONENT = 0f;
		public const float D3D11_MIN_DEPTH = 0f;
		public const uint32 D3D11_MIN_MAXANISOTROPY = 0;
		public const float D3D11_MIP_LOD_BIAS_MAX = 15.99f;
		public const float D3D11_MIP_LOD_BIAS_MIN = -16f;
		public const uint32 D3D11_MIP_LOD_FRACTIONAL_BIT_COUNT = 8;
		public const uint32 D3D11_MIP_LOD_RANGE_BIT_COUNT = 8;
		public const float D3D11_MULTISAMPLE_ANTIALIAS_LINE_WIDTH = 1.4f;
		public const uint32 D3D11_NONSAMPLE_FETCH_OUT_OF_RANGE_ACCESS_RESULT = 0;
		public const uint32 D3D11_PIXEL_ADDRESS_RANGE_BIT_COUNT = 15;
		public const uint32 D3D11_PRE_SCISSOR_PIXEL_ADDRESS_RANGE_BIT_COUNT = 16;
		public const uint32 D3D11_PS_CS_UAV_REGISTER_COMPONENTS = 1;
		public const uint32 D3D11_PS_CS_UAV_REGISTER_COUNT = 8;
		public const uint32 D3D11_PS_CS_UAV_REGISTER_READS_PER_INST = 1;
		public const uint32 D3D11_PS_CS_UAV_REGISTER_READ_PORTS = 1;
		public const uint32 D3D11_PS_FRONTFACING_DEFAULT_VALUE = 4294967295;
		public const uint32 D3D11_PS_FRONTFACING_FALSE_VALUE = 0;
		public const uint32 D3D11_PS_FRONTFACING_TRUE_VALUE = 4294967295;
		public const uint32 D3D11_PS_INPUT_REGISTER_COMPONENTS = 4;
		public const uint32 D3D11_PS_INPUT_REGISTER_COMPONENT_BIT_COUNT = 32;
		public const uint32 D3D11_PS_INPUT_REGISTER_COUNT = 32;
		public const uint32 D3D11_PS_INPUT_REGISTER_READS_PER_INST = 2;
		public const uint32 D3D11_PS_INPUT_REGISTER_READ_PORTS = 1;
		public const float D3D11_PS_LEGACY_PIXEL_CENTER_FRACTIONAL_COMPONENT = 0f;
		public const uint32 D3D11_PS_OUTPUT_DEPTH_REGISTER_COMPONENTS = 1;
		public const uint32 D3D11_PS_OUTPUT_DEPTH_REGISTER_COMPONENT_BIT_COUNT = 32;
		public const uint32 D3D11_PS_OUTPUT_DEPTH_REGISTER_COUNT = 1;
		public const uint32 D3D11_PS_OUTPUT_MASK_REGISTER_COMPONENTS = 1;
		public const uint32 D3D11_PS_OUTPUT_MASK_REGISTER_COMPONENT_BIT_COUNT = 32;
		public const uint32 D3D11_PS_OUTPUT_MASK_REGISTER_COUNT = 1;
		public const uint32 D3D11_PS_OUTPUT_REGISTER_COMPONENTS = 4;
		public const uint32 D3D11_PS_OUTPUT_REGISTER_COMPONENT_BIT_COUNT = 32;
		public const uint32 D3D11_PS_OUTPUT_REGISTER_COUNT = 8;
		public const float D3D11_PS_PIXEL_CENTER_FRACTIONAL_COMPONENT = 0.5f;
		public const uint32 D3D11_RAW_UAV_SRV_BYTE_ALIGNMENT = 16;
		public const uint32 D3D11_REQ_BLEND_OBJECT_COUNT_PER_DEVICE = 4096;
		public const uint32 D3D11_REQ_BUFFER_RESOURCE_TEXEL_COUNT_2_TO_EXP = 27;
		public const uint32 D3D11_REQ_CONSTANT_BUFFER_ELEMENT_COUNT = 4096;
		public const uint32 D3D11_REQ_DEPTH_STENCIL_OBJECT_COUNT_PER_DEVICE = 4096;
		public const uint32 D3D11_REQ_DRAWINDEXED_INDEX_COUNT_2_TO_EXP = 32;
		public const uint32 D3D11_REQ_DRAW_VERTEX_COUNT_2_TO_EXP = 32;
		public const uint32 D3D11_REQ_FILTERING_HW_ADDRESSABLE_RESOURCE_DIMENSION = 16384;
		public const uint32 D3D11_REQ_GS_INVOCATION_32BIT_OUTPUT_COMPONENT_LIMIT = 1024;
		public const uint32 D3D11_REQ_IMMEDIATE_CONSTANT_BUFFER_ELEMENT_COUNT = 4096;
		public const uint32 D3D11_REQ_MAXANISOTROPY = 16;
		public const uint32 D3D11_REQ_MIP_LEVELS = 15;
		public const uint32 D3D11_REQ_MULTI_ELEMENT_STRUCTURE_SIZE_IN_BYTES = 2048;
		public const uint32 D3D11_REQ_RASTERIZER_OBJECT_COUNT_PER_DEVICE = 4096;
		public const uint32 D3D11_REQ_RENDER_TO_BUFFER_WINDOW_WIDTH = 16384;
		public const uint32 D3D11_REQ_RESOURCE_SIZE_IN_MEGABYTES_EXPRESSION_A_TERM = 128;
		public const float D3D11_REQ_RESOURCE_SIZE_IN_MEGABYTES_EXPRESSION_B_TERM = 0.25f;
		public const uint32 D3D11_REQ_RESOURCE_SIZE_IN_MEGABYTES_EXPRESSION_C_TERM = 2048;
		public const uint32 D3D11_REQ_RESOURCE_VIEW_COUNT_PER_DEVICE_2_TO_EXP = 20;
		public const uint32 D3D11_REQ_SAMPLER_OBJECT_COUNT_PER_DEVICE = 4096;
		public const uint32 D3D11_REQ_TEXTURE1D_ARRAY_AXIS_DIMENSION = 2048;
		public const uint32 D3D11_REQ_TEXTURE1D_U_DIMENSION = 16384;
		public const uint32 D3D11_REQ_TEXTURE2D_ARRAY_AXIS_DIMENSION = 2048;
		public const uint32 D3D11_REQ_TEXTURE2D_U_OR_V_DIMENSION = 16384;
		public const uint32 D3D11_REQ_TEXTURE3D_U_V_OR_W_DIMENSION = 2048;
		public const uint32 D3D11_REQ_TEXTURECUBE_DIMENSION = 16384;
		public const uint32 D3D11_RESINFO_INSTRUCTION_MISSING_COMPONENT_RETVAL = 0;
		public const uint32 D3D11_SHADER_MAJOR_VERSION = 5;
		public const uint32 D3D11_SHADER_MAX_INSTANCES = 65535;
		public const uint32 D3D11_SHADER_MAX_INTERFACES = 253;
		public const uint32 D3D11_SHADER_MAX_INTERFACE_CALL_SITES = 4096;
		public const uint32 D3D11_SHADER_MAX_TYPES = 65535;
		public const uint32 D3D11_SHADER_MINOR_VERSION = 0;
		public const uint32 D3D11_SHIFT_INSTRUCTION_PAD_VALUE = 0;
		public const uint32 D3D11_SHIFT_INSTRUCTION_SHIFT_VALUE_BIT_COUNT = 5;
		public const uint32 D3D11_SIMULTANEOUS_RENDER_TARGET_COUNT = 8;
		public const uint32 D3D11_SO_BUFFER_MAX_STRIDE_IN_BYTES = 2048;
		public const uint32 D3D11_SO_BUFFER_MAX_WRITE_WINDOW_IN_BYTES = 512;
		public const uint32 D3D11_SO_BUFFER_SLOT_COUNT = 4;
		public const uint32 D3D11_SO_DDI_REGISTER_INDEX_DENOTING_GAP = 4294967295;
		public const uint32 D3D11_SO_NO_RASTERIZED_STREAM = 4294967295;
		public const uint32 D3D11_SO_OUTPUT_COMPONENT_COUNT = 128;
		public const uint32 D3D11_SO_STREAM_COUNT = 4;
		public const uint32 D3D11_SPEC_DATE_DAY = 16;
		public const uint32 D3D11_SPEC_DATE_MONTH = 5;
		public const uint32 D3D11_SPEC_DATE_YEAR = 2011;
		public const double D3D11_SPEC_VERSION = 1.07;
		public const float D3D11_SRGB_GAMMA = 2.2f;
		public const float D3D11_SRGB_TO_FLOAT_DENOMINATOR_1 = 12.92f;
		public const float D3D11_SRGB_TO_FLOAT_DENOMINATOR_2 = 1.055f;
		public const float D3D11_SRGB_TO_FLOAT_EXPONENT = 2.4f;
		public const float D3D11_SRGB_TO_FLOAT_OFFSET = 0.055f;
		public const float D3D11_SRGB_TO_FLOAT_THRESHOLD = 0.04045f;
		public const float D3D11_SRGB_TO_FLOAT_TOLERANCE_IN_ULP = 0.5f;
		public const uint32 D3D11_STANDARD_COMPONENT_BIT_COUNT = 32;
		public const uint32 D3D11_STANDARD_COMPONENT_BIT_COUNT_DOUBLED = 64;
		public const uint32 D3D11_STANDARD_MAXIMUM_ELEMENT_ALIGNMENT_BYTE_MULTIPLE = 4;
		public const uint32 D3D11_STANDARD_PIXEL_COMPONENT_COUNT = 128;
		public const uint32 D3D11_STANDARD_PIXEL_ELEMENT_COUNT = 32;
		public const uint32 D3D11_STANDARD_VECTOR_SIZE = 4;
		public const uint32 D3D11_STANDARD_VERTEX_ELEMENT_COUNT = 32;
		public const uint32 D3D11_STANDARD_VERTEX_TOTAL_COMPONENT_COUNT = 64;
		public const uint32 D3D11_SUBPIXEL_FRACTIONAL_BIT_COUNT = 8;
		public const uint32 D3D11_SUBTEXEL_FRACTIONAL_BIT_COUNT = 8;
		public const uint32 D3D11_TESSELLATOR_MAX_EVEN_TESSELLATION_FACTOR = 64;
		public const uint32 D3D11_TESSELLATOR_MAX_ISOLINE_DENSITY_TESSELLATION_FACTOR = 64;
		public const uint32 D3D11_TESSELLATOR_MAX_ODD_TESSELLATION_FACTOR = 63;
		public const uint32 D3D11_TESSELLATOR_MAX_TESSELLATION_FACTOR = 64;
		public const uint32 D3D11_TESSELLATOR_MIN_EVEN_TESSELLATION_FACTOR = 2;
		public const uint32 D3D11_TESSELLATOR_MIN_ISOLINE_DENSITY_TESSELLATION_FACTOR = 1;
		public const uint32 D3D11_TESSELLATOR_MIN_ODD_TESSELLATION_FACTOR = 1;
		public const uint32 D3D11_TEXEL_ADDRESS_RANGE_BIT_COUNT = 16;
		public const uint32 D3D11_UNBOUND_MEMORY_ACCESS_RESULT = 0;
		public const uint32 D3D11_VIEWPORT_AND_SCISSORRECT_MAX_INDEX = 15;
		public const uint32 D3D11_VIEWPORT_AND_SCISSORRECT_OBJECT_COUNT_PER_PIPELINE = 16;
		public const uint32 D3D11_VIEWPORT_BOUNDS_MAX = 32767;
		public const int32 D3D11_VIEWPORT_BOUNDS_MIN = -32768;
		public const uint32 D3D11_VS_INPUT_REGISTER_COMPONENTS = 4;
		public const uint32 D3D11_VS_INPUT_REGISTER_COMPONENT_BIT_COUNT = 32;
		public const uint32 D3D11_VS_INPUT_REGISTER_COUNT = 32;
		public const uint32 D3D11_VS_INPUT_REGISTER_READS_PER_INST = 2;
		public const uint32 D3D11_VS_INPUT_REGISTER_READ_PORTS = 1;
		public const uint32 D3D11_VS_OUTPUT_REGISTER_COMPONENTS = 4;
		public const uint32 D3D11_VS_OUTPUT_REGISTER_COMPONENT_BIT_COUNT = 32;
		public const uint32 D3D11_VS_OUTPUT_REGISTER_COUNT = 32;
		public const uint32 D3D11_WHQL_CONTEXT_COUNT_FOR_RESOURCE_LIMIT = 10;
		public const uint32 D3D11_WHQL_DRAWINDEXED_INDEX_COUNT_2_TO_EXP = 25;
		public const uint32 D3D11_WHQL_DRAW_VERTEX_COUNT_2_TO_EXP = 25;
		public const uint32 D3D11_1_UAV_SLOT_COUNT = 64;
		public const uint32 D3D11_2_TILED_RESOURCE_TILE_SIZE_IN_BYTES = 65536;
		public const uint32 D3D11_4_VIDEO_DECODER_MAX_HISTOGRAM_COMPONENTS = 4;
		public const uint32 D3D11_4_VIDEO_DECODER_HISTOGRAM_OFFSET_ALIGNMENT = 256;
		public const uint32 _FACD3D11 = 2172;
		public const uint32 D3D11_APPEND_ALIGNED_ELEMENT = 4294967295;
		public const uint32 D3D11_FILTER_REDUCTION_TYPE_MASK = 3;
		public const uint32 D3D11_FILTER_REDUCTION_TYPE_SHIFT = 7;
		public const uint32 D3D11_FILTER_TYPE_MASK = 3;
		public const uint32 D3D11_MIN_FILTER_SHIFT = 4;
		public const uint32 D3D11_MAG_FILTER_SHIFT = 2;
		public const uint32 D3D11_MIP_FILTER_SHIFT = 0;
		public const uint32 D3D11_COMPARISON_FILTERING_BIT = 128;
		public const uint32 D3D11_ANISOTROPIC_FILTERING_BIT = 64;
		public const Guid D3D11_DECODER_PROFILE_MPEG2_MOCOMP = .(0xe6a9f44b, 0x61b0, 0x4563, 0x9e, 0xa4, 0x63, 0xd2, 0xa3, 0xc6, 0xfe, 0x66);
		public const Guid D3D11_DECODER_PROFILE_MPEG2_IDCT = .(0xbf22ad00, 0x03ea, 0x4690, 0x80, 0x77, 0x47, 0x33, 0x46, 0x20, 0x9b, 0x7e);
		public const Guid D3D11_DECODER_PROFILE_MPEG2_VLD = .(0xee27417f, 0x5e28, 0x4e65, 0xbe, 0xea, 0x1d, 0x26, 0xb5, 0x08, 0xad, 0xc9);
		public const Guid D3D11_DECODER_PROFILE_MPEG1_VLD = .(0x6f3ec719, 0x3735, 0x42cc, 0x80, 0x63, 0x65, 0xcc, 0x3c, 0xb3, 0x66, 0x16);
		public const Guid D3D11_DECODER_PROFILE_MPEG2and1_VLD = .(0x86695f12, 0x340e, 0x4f04, 0x9f, 0xd3, 0x92, 0x53, 0xdd, 0x32, 0x74, 0x60);
		public const Guid D3D11_DECODER_PROFILE_H264_MOCOMP_NOFGT = .(0x1b81be64, 0xa0c7, 0x11d3, 0xb9, 0x84, 0x00, 0xc0, 0x4f, 0x2e, 0x73, 0xc5);
		public const Guid D3D11_DECODER_PROFILE_H264_MOCOMP_FGT = .(0x1b81be65, 0xa0c7, 0x11d3, 0xb9, 0x84, 0x00, 0xc0, 0x4f, 0x2e, 0x73, 0xc5);
		public const Guid D3D11_DECODER_PROFILE_H264_IDCT_NOFGT = .(0x1b81be66, 0xa0c7, 0x11d3, 0xb9, 0x84, 0x00, 0xc0, 0x4f, 0x2e, 0x73, 0xc5);
		public const Guid D3D11_DECODER_PROFILE_H264_IDCT_FGT = .(0x1b81be67, 0xa0c7, 0x11d3, 0xb9, 0x84, 0x00, 0xc0, 0x4f, 0x2e, 0x73, 0xc5);
		public const Guid D3D11_DECODER_PROFILE_H264_VLD_NOFGT = .(0x1b81be68, 0xa0c7, 0x11d3, 0xb9, 0x84, 0x00, 0xc0, 0x4f, 0x2e, 0x73, 0xc5);
		public const Guid D3D11_DECODER_PROFILE_H264_VLD_FGT = .(0x1b81be69, 0xa0c7, 0x11d3, 0xb9, 0x84, 0x00, 0xc0, 0x4f, 0x2e, 0x73, 0xc5);
		public const Guid D3D11_DECODER_PROFILE_H264_VLD_WITHFMOASO_NOFGT = .(0xd5f04ff9, 0x3418, 0x45d8, 0x95, 0x61, 0x32, 0xa7, 0x6a, 0xae, 0x2d, 0xdd);
		public const Guid D3D11_DECODER_PROFILE_H264_VLD_STEREO_PROGRESSIVE_NOFGT = .(0xd79be8da, 0x0cf1, 0x4c81, 0xb8, 0x2a, 0x69, 0xa4, 0xe2, 0x36, 0xf4, 0x3d);
		public const Guid D3D11_DECODER_PROFILE_H264_VLD_STEREO_NOFGT = .(0xf9aaccbb, 0xc2b6, 0x4cfc, 0x87, 0x79, 0x57, 0x07, 0xb1, 0x76, 0x05, 0x52);
		public const Guid D3D11_DECODER_PROFILE_H264_VLD_MULTIVIEW_NOFGT = .(0x705b9d82, 0x76cf, 0x49d6, 0xb7, 0xe6, 0xac, 0x88, 0x72, 0xdb, 0x01, 0x3c);
		public const Guid D3D11_DECODER_PROFILE_WMV8_POSTPROC = .(0x1b81be80, 0xa0c7, 0x11d3, 0xb9, 0x84, 0x00, 0xc0, 0x4f, 0x2e, 0x73, 0xc5);
		public const Guid D3D11_DECODER_PROFILE_WMV8_MOCOMP = .(0x1b81be81, 0xa0c7, 0x11d3, 0xb9, 0x84, 0x00, 0xc0, 0x4f, 0x2e, 0x73, 0xc5);
		public const Guid D3D11_DECODER_PROFILE_WMV9_POSTPROC = .(0x1b81be90, 0xa0c7, 0x11d3, 0xb9, 0x84, 0x00, 0xc0, 0x4f, 0x2e, 0x73, 0xc5);
		public const Guid D3D11_DECODER_PROFILE_WMV9_MOCOMP = .(0x1b81be91, 0xa0c7, 0x11d3, 0xb9, 0x84, 0x00, 0xc0, 0x4f, 0x2e, 0x73, 0xc5);
		public const Guid D3D11_DECODER_PROFILE_WMV9_IDCT = .(0x1b81be94, 0xa0c7, 0x11d3, 0xb9, 0x84, 0x00, 0xc0, 0x4f, 0x2e, 0x73, 0xc5);
		public const Guid D3D11_DECODER_PROFILE_VC1_POSTPROC = .(0x1b81bea0, 0xa0c7, 0x11d3, 0xb9, 0x84, 0x00, 0xc0, 0x4f, 0x2e, 0x73, 0xc5);
		public const Guid D3D11_DECODER_PROFILE_VC1_MOCOMP = .(0x1b81bea1, 0xa0c7, 0x11d3, 0xb9, 0x84, 0x00, 0xc0, 0x4f, 0x2e, 0x73, 0xc5);
		public const Guid D3D11_DECODER_PROFILE_VC1_IDCT = .(0x1b81bea2, 0xa0c7, 0x11d3, 0xb9, 0x84, 0x00, 0xc0, 0x4f, 0x2e, 0x73, 0xc5);
		public const Guid D3D11_DECODER_PROFILE_VC1_VLD = .(0x1b81bea3, 0xa0c7, 0x11d3, 0xb9, 0x84, 0x00, 0xc0, 0x4f, 0x2e, 0x73, 0xc5);
		public const Guid D3D11_DECODER_PROFILE_VC1_D2010 = .(0x1b81bea4, 0xa0c7, 0x11d3, 0xb9, 0x84, 0x00, 0xc0, 0x4f, 0x2e, 0x73, 0xc5);
		public const Guid D3D11_DECODER_PROFILE_MPEG4PT2_VLD_SIMPLE = .(0xefd64d74, 0xc9e8, 0x41d7, 0xa5, 0xe9, 0xe9, 0xb0, 0xe3, 0x9f, 0xa3, 0x19);
		public const Guid D3D11_DECODER_PROFILE_MPEG4PT2_VLD_ADVSIMPLE_NOGMC = .(0xed418a9f, 0x010d, 0x4eda, 0x9a, 0xe3, 0x9a, 0x65, 0x35, 0x8d, 0x8d, 0x2e);
		public const Guid D3D11_DECODER_PROFILE_MPEG4PT2_VLD_ADVSIMPLE_GMC = .(0xab998b5b, 0x4258, 0x44a9, 0x9f, 0xeb, 0x94, 0xe5, 0x97, 0xa6, 0xba, 0xae);
		public const Guid D3D11_DECODER_PROFILE_HEVC_VLD_MAIN = .(0x5b11d51b, 0x2f4c, 0x4452, 0xbc, 0xc3, 0x09, 0xf2, 0xa1, 0x16, 0x0c, 0xc0);
		public const Guid D3D11_DECODER_PROFILE_HEVC_VLD_MAIN10 = .(0x107af0e0, 0xef1a, 0x4d19, 0xab, 0xa8, 0x67, 0xa1, 0x63, 0x07, 0x3d, 0x13);
		public const Guid D3D11_DECODER_PROFILE_VP9_VLD_PROFILE0 = .(0x463707f8, 0xa1d0, 0x4585, 0x87, 0x6d, 0x83, 0xaa, 0x6d, 0x60, 0xb8, 0x9e);
		public const Guid D3D11_DECODER_PROFILE_VP9_VLD_10BIT_PROFILE2 = .(0xa4c749ef, 0x6ecf, 0x48aa, 0x84, 0x48, 0x50, 0xa7, 0xa1, 0x16, 0x5f, 0xf7);
		public const Guid D3D11_DECODER_PROFILE_VP8_VLD = .(0x90b899ea, 0x3a62, 0x4705, 0x88, 0xb3, 0x8d, 0xf0, 0x4b, 0x27, 0x44, 0xe7);
		public const Guid D3D11_DECODER_PROFILE_AV1_VLD_PROFILE0 = .(0xb8be4ccb, 0xcf53, 0x46ba, 0x8d, 0x59, 0xd6, 0xb8, 0xa6, 0xda, 0x5d, 0x2a);
		public const Guid D3D11_DECODER_PROFILE_AV1_VLD_PROFILE1 = .(0x6936ff0f, 0x45b1, 0x4163, 0x9c, 0xc1, 0x64, 0x6e, 0xf6, 0x94, 0x61, 0x08);
		public const Guid D3D11_DECODER_PROFILE_AV1_VLD_PROFILE2 = .(0x0c5f2aa1, 0xe541, 0x4089, 0xbb, 0x7b, 0x98, 0x11, 0x0a, 0x19, 0xd7, 0xc8);
		public const Guid D3D11_DECODER_PROFILE_AV1_VLD_12BIT_PROFILE2 = .(0x17127009, 0xa00f, 0x4ce1, 0x99, 0x4e, 0xbf, 0x40, 0x81, 0xf6, 0xf3, 0xf0);
		public const Guid D3D11_DECODER_PROFILE_AV1_VLD_12BIT_PROFILE2_420 = .(0x2d80bed6, 0x9cac, 0x4835, 0x9e, 0x91, 0x32, 0x7b, 0xbc, 0x4f, 0x9e, 0xe8);
		public const Guid D3D11_CRYPTO_TYPE_AES128_CTR = .(0x9b6bd711, 0x4f74, 0x41c9, 0x9e, 0x7b, 0x0b, 0xe2, 0xd7, 0xd9, 0x3b, 0x4f);
		public const Guid D3D11_DECODER_ENCRYPTION_HW_CENC = .(0x89d6ac4f, 0x09f2, 0x4229, 0xb2, 0xcd, 0x37, 0x74, 0x0a, 0x6d, 0xfd, 0x81);
		public const Guid D3D11_DECODER_BITSTREAM_ENCRYPTION_TYPE_CENC = .(0xb0405235, 0xc13d, 0x44f2, 0x9a, 0xe5, 0xdd, 0x48, 0xe0, 0x8e, 0x5b, 0x67);
		public const Guid D3D11_DECODER_BITSTREAM_ENCRYPTION_TYPE_CBCS = .(0x422d9319, 0x9d21, 0x4bb7, 0x93, 0x71, 0xfa, 0xf5, 0xa8, 0x2c, 0x3e, 0x04);
		public const Guid D3D11_KEY_EXCHANGE_HW_PROTECTION = .(0xb1170d8a, 0x628d, 0x4da3, 0xad, 0x3b, 0x82, 0xdd, 0xb0, 0x8b, 0x49, 0x70);
		public const Guid D3D11_AUTHENTICATED_QUERY_PROTECTION = .(0xa84eb584, 0xc495, 0x48aa, 0xb9, 0x4d, 0x8b, 0xd2, 0xd6, 0xfb, 0xce, 0x05);
		public const Guid D3D11_AUTHENTICATED_QUERY_CHANNEL_TYPE = .(0xbc1b18a5, 0xb1fb, 0x42ab, 0xbd, 0x94, 0xb5, 0x82, 0x8b, 0x4b, 0xf7, 0xbe);
		public const Guid D3D11_AUTHENTICATED_QUERY_DEVICE_HANDLE = .(0xec1c539d, 0x8cff, 0x4e2a, 0xbc, 0xc4, 0xf5, 0x69, 0x2f, 0x99, 0xf4, 0x80);
		public const Guid D3D11_AUTHENTICATED_QUERY_CRYPTO_SESSION = .(0x2634499e, 0xd018, 0x4d74, 0xac, 0x17, 0x7f, 0x72, 0x40, 0x59, 0x52, 0x8d);
		public const Guid D3D11_AUTHENTICATED_QUERY_RESTRICTED_SHARED_RESOURCE_PROCESS_COUNT = .(0x0db207b3, 0x9450, 0x46a6, 0x82, 0xde, 0x1b, 0x96, 0xd4, 0x4f, 0x9c, 0xf2);
		public const Guid D3D11_AUTHENTICATED_QUERY_RESTRICTED_SHARED_RESOURCE_PROCESS = .(0x649bbadb, 0xf0f4, 0x4639, 0xa1, 0x5b, 0x24, 0x39, 0x3f, 0xc3, 0xab, 0xac);
		public const Guid D3D11_AUTHENTICATED_QUERY_UNRESTRICTED_PROTECTED_SHARED_RESOURCE_COUNT = .(0x012f0bd6, 0xe662, 0x4474, 0xbe, 0xfd, 0xaa, 0x53, 0xe5, 0x14, 0x3c, 0x6d);
		public const Guid D3D11_AUTHENTICATED_QUERY_OUTPUT_ID_COUNT = .(0x2c042b5e, 0x8c07, 0x46d5, 0xaa, 0xbe, 0x8f, 0x75, 0xcb, 0xad, 0x4c, 0x31);
		public const Guid D3D11_AUTHENTICATED_QUERY_OUTPUT_ID = .(0x839ddca3, 0x9b4e, 0x41e4, 0xb0, 0x53, 0x89, 0x2b, 0xd2, 0xa1, 0x1e, 0xe7);
		public const Guid D3D11_AUTHENTICATED_QUERY_ACCESSIBILITY_ATTRIBUTES = .(0x6214d9d2, 0x432c, 0x4abb, 0x9f, 0xce, 0x21, 0x6e, 0xea, 0x26, 0x9e, 0x3b);
		public const Guid D3D11_AUTHENTICATED_QUERY_ENCRYPTION_WHEN_ACCESSIBLE_GUID_COUNT = .(0xb30f7066, 0x203c, 0x4b07, 0x93, 0xfc, 0xce, 0xaa, 0xfd, 0x61, 0x24, 0x1e);
		public const Guid D3D11_AUTHENTICATED_QUERY_ENCRYPTION_WHEN_ACCESSIBLE_GUID = .(0xf83a5958, 0xe986, 0x4bda, 0xbe, 0xb0, 0x41, 0x1f, 0x6a, 0x7a, 0x01, 0xb7);
		public const Guid D3D11_AUTHENTICATED_QUERY_CURRENT_ENCRYPTION_WHEN_ACCESSIBLE = .(0xec1791c7, 0xdad3, 0x4f15, 0x9e, 0xc3, 0xfa, 0xa9, 0x3d, 0x60, 0xd4, 0xf0);
		public const Guid D3D11_AUTHENTICATED_CONFIGURE_INITIALIZE = .(0x06114bdb, 0x3523, 0x470a, 0x8d, 0xca, 0xfb, 0xc2, 0x84, 0x51, 0x54, 0xf0);
		public const Guid D3D11_AUTHENTICATED_CONFIGURE_PROTECTION = .(0x50455658, 0x3f47, 0x4362, 0xbf, 0x99, 0xbf, 0xdf, 0xcd, 0xe9, 0xed, 0x29);
		public const Guid D3D11_AUTHENTICATED_CONFIGURE_CRYPTO_SESSION = .(0x6346cc54, 0x2cfc, 0x4ad4, 0x82, 0x24, 0xd1, 0x58, 0x37, 0xde, 0x77, 0x00);
		public const Guid D3D11_AUTHENTICATED_CONFIGURE_SHARED_RESOURCE = .(0x0772d047, 0x1b40, 0x48e8, 0x9c, 0xa6, 0xb5, 0xf5, 0x10, 0xde, 0x9f, 0x01);
		public const Guid D3D11_AUTHENTICATED_CONFIGURE_ENCRYPTION_WHEN_ACCESSIBLE = .(0x41fff286, 0x6ae0, 0x4d43, 0x9d, 0x55, 0xa4, 0x6e, 0x9e, 0xfd, 0x15, 0x8a);
		public const Guid D3D11_KEY_EXCHANGE_RSAES_OAEP = .(0xc1949895, 0xd72a, 0x4a1d, 0x8e, 0x5d, 0xed, 0x85, 0x7d, 0x17, 0x15, 0x20);
		public const uint32 D3D11_SDK_VERSION = 7;
		public const uint32 D3D11_PACKED_TILE = 4294967295;
		public const uint32 D3D11_SDK_LAYERS_VERSION = 1;
		public const uint32 D3D11_DEBUG_FEATURE_FLUSH_PER_RENDER_OP = 1;
		public const uint32 D3D11_DEBUG_FEATURE_FINISH_PER_RENDER_OP = 2;
		public const uint32 D3D11_DEBUG_FEATURE_PRESENT_PER_RENDER_OP = 4;
		public const uint32 D3D11_DEBUG_FEATURE_ALWAYS_DISCARD_OFFERED_RESOURCE = 8;
		public const uint32 D3D11_DEBUG_FEATURE_NEVER_DISCARD_OFFERED_RESOURCE = 16;
		public const uint32 D3D11_DEBUG_FEATURE_AVOID_BEHAVIOR_CHANGING_DEBUG_AIDS = 64;
		public const uint32 D3D11_DEBUG_FEATURE_DISABLE_TILED_RESOURCE_MAPPING_TRACKING_AND_VALIDATION = 128;
		public const Guid DXGI_DEBUG_D3D11 = .(0x4b99317b, 0xac39, 0x4aa6, 0xbb, 0x0b, 0xba, 0xa0, 0x47, 0x84, 0x79, 0x8f);
		public const uint32 D3D11_INFO_QUEUE_DEFAULT_MESSAGE_COUNT_LIMIT = 1024;
		public const int32 D3D_RETURN_PARAMETER_INDEX = -1;
		public const uint32 D3D_SHADER_REQUIRES_DOUBLES = 1;
		public const uint32 D3D_SHADER_REQUIRES_EARLY_DEPTH_STENCIL = 2;
		public const uint32 D3D_SHADER_REQUIRES_UAVS_AT_EVERY_STAGE = 4;
		public const uint32 D3D_SHADER_REQUIRES_64_UAVS = 8;
		public const uint32 D3D_SHADER_REQUIRES_MINIMUM_PRECISION = 16;
		public const uint32 D3D_SHADER_REQUIRES_11_1_DOUBLE_EXTENSIONS = 32;
		public const uint32 D3D_SHADER_REQUIRES_11_1_SHADER_EXTENSIONS = 64;
		public const uint32 D3D_SHADER_REQUIRES_LEVEL_9_COMPARISON_FILTERING = 128;
		public const uint32 D3D_SHADER_REQUIRES_TILED_RESOURCES = 256;
		public const uint32 D3D11_TRACE_COMPONENT_X = 1;
		public const uint32 D3D11_TRACE_COMPONENT_Y = 2;
		public const uint32 D3D11_TRACE_COMPONENT_Z = 4;
		public const uint32 D3D11_TRACE_COMPONENT_W = 8;
		public const uint32 D3D11_SHADER_TRACE_FLAG_RECORD_REGISTER_WRITES = 1;
		public const uint32 D3D11_SHADER_TRACE_FLAG_RECORD_REGISTER_READS = 2;
		public const uint32 D3D11_TRACE_REGISTER_FLAGS_RELATIVE_INDEXING = 1;
		public const uint32 D3D11_TRACE_MISC_GS_EMIT = 1;
		public const uint32 D3D11_TRACE_MISC_GS_CUT = 2;
		public const uint32 D3D11_TRACE_MISC_PS_DISCARD = 4;
		public const uint32 D3D11_TRACE_MISC_GS_EMIT_STREAM = 8;
		public const uint32 D3D11_TRACE_MISC_GS_CUT_STREAM = 16;
		public const uint32 D3D11_TRACE_MISC_HALT = 32;
		public const uint32 D3D11_TRACE_MISC_MESSAGE = 64;
		public const uint32 D3DX11_FFT_MAX_PRECOMPUTE_BUFFERS = 4;
		public const uint32 D3DX11_FFT_MAX_TEMP_BUFFERS = 4;
		public const uint32 D3DX11_FFT_MAX_DIMENSIONS = 32;
		
		// --- Enums ---
		
		public enum D3D11_INPUT_CLASSIFICATION : int32
		{
			VERTEX_DATA = 0,
			INSTANCE_DATA = 1,
		}
		public enum D3D11_FILL_MODE : int32
		{
			WIREFRAME = 2,
			SOLID = 3,
		}
		public enum D3D11_CULL_MODE : int32
		{
			NONE = 1,
			FRONT = 2,
			BACK = 3,
		}
		public enum D3D11_RESOURCE_DIMENSION : int32
		{
			UNKNOWN = 0,
			BUFFER = 1,
			TEXTURE1D = 2,
			TEXTURE2D = 3,
			TEXTURE3D = 4,
		}
		public enum D3D11_DSV_DIMENSION : int32
		{
			UNKNOWN = 0,
			TEXTURE1D = 1,
			TEXTURE1DARRAY = 2,
			TEXTURE2D = 3,
			TEXTURE2DARRAY = 4,
			TEXTURE2DMS = 5,
			TEXTURE2DMSARRAY = 6,
		}
		public enum D3D11_RTV_DIMENSION : int32
		{
			UNKNOWN = 0,
			BUFFER = 1,
			TEXTURE1D = 2,
			TEXTURE1DARRAY = 3,
			TEXTURE2D = 4,
			TEXTURE2DARRAY = 5,
			TEXTURE2DMS = 6,
			TEXTURE2DMSARRAY = 7,
			TEXTURE3D = 8,
		}
		public enum D3D11_UAV_DIMENSION : int32
		{
			UNKNOWN = 0,
			BUFFER = 1,
			TEXTURE1D = 2,
			TEXTURE1DARRAY = 3,
			TEXTURE2D = 4,
			TEXTURE2DARRAY = 5,
			TEXTURE3D = 8,
		}
		public enum D3D11_USAGE : int32
		{
			DEFAULT = 0,
			IMMUTABLE = 1,
			DYNAMIC = 2,
			STAGING = 3,
		}
		public enum D3D11_BIND_FLAG : uint32
		{
			VERTEX_BUFFER = 1,
			INDEX_BUFFER = 2,
			CONSTANT_BUFFER = 4,
			SHADER_RESOURCE = 8,
			STREAM_OUTPUT = 16,
			RENDER_TARGET = 32,
			DEPTH_STENCIL = 64,
			UNORDERED_ACCESS = 128,
			DECODER = 512,
			VIDEO_ENCODER = 1024,
		}
		public enum D3D11_CPU_ACCESS_FLAG : uint32
		{
			WRITE = 65536,
			READ = 131072,
		}
		public enum D3D11_RESOURCE_MISC_FLAG : uint32
		{
			GENERATE_MIPS = 1,
			SHARED = 2,
			TEXTURECUBE = 4,
			DRAWINDIRECT_ARGS = 16,
			BUFFER_ALLOW_RAW_VIEWS = 32,
			BUFFER_STRUCTURED = 64,
			RESOURCE_CLAMP = 128,
			SHARED_KEYEDMUTEX = 256,
			GDI_COMPATIBLE = 512,
			SHARED_NTHANDLE = 2048,
			RESTRICTED_CONTENT = 4096,
			RESTRICT_SHARED_RESOURCE = 8192,
			RESTRICT_SHARED_RESOURCE_DRIVER = 16384,
			GUARDED = 32768,
			TILE_POOL = 131072,
			TILED = 262144,
			HW_PROTECTED = 524288,
			SHARED_DISPLAYABLE = 1048576,
			SHARED_EXCLUSIVE_WRITER = 2097152,
		}
		public enum D3D11_MAP : int32
		{
			READ = 1,
			WRITE = 2,
			READ_WRITE = 3,
			WRITE_DISCARD = 4,
			WRITE_NO_OVERWRITE = 5,
		}
		public enum D3D11_MAP_FLAG : int32
		{
			FLAG_DO_NOT_WAIT = 1048576,
		}
		public enum D3D11_RAISE_FLAG : int32
		{
			FLAG_DRIVER_INTERNAL_ERROR = 1,
		}
		public enum D3D11_CLEAR_FLAG : int32
		{
			DEPTH = 1,
			STENCIL = 2,
		}
		public enum D3D11_COMPARISON_FUNC : int32
		{
			NEVER = 1,
			LESS = 2,
			EQUAL = 3,
			LESS_EQUAL = 4,
			GREATER = 5,
			NOT_EQUAL = 6,
			GREATER_EQUAL = 7,
			ALWAYS = 8,
		}
		public enum D3D11_DEPTH_WRITE_MASK : int32
		{
			ZERO = 0,
			ALL = 1,
		}
		public enum D3D11_STENCIL_OP : int32
		{
			KEEP = 1,
			ZERO = 2,
			REPLACE = 3,
			INCR_SAT = 4,
			DECR_SAT = 5,
			INVERT = 6,
			INCR = 7,
			DECR = 8,
		}
		public enum D3D11_BLEND : int32
		{
			ZERO = 1,
			ONE = 2,
			SRC_COLOR = 3,
			INV_SRC_COLOR = 4,
			SRC_ALPHA = 5,
			INV_SRC_ALPHA = 6,
			DEST_ALPHA = 7,
			INV_DEST_ALPHA = 8,
			DEST_COLOR = 9,
			INV_DEST_COLOR = 10,
			SRC_ALPHA_SAT = 11,
			BLEND_FACTOR = 14,
			INV_BLEND_FACTOR = 15,
			SRC1_COLOR = 16,
			INV_SRC1_COLOR = 17,
			SRC1_ALPHA = 18,
			INV_SRC1_ALPHA = 19,
		}
		public enum D3D11_BLEND_OP : int32
		{
			ADD = 1,
			SUBTRACT = 2,
			REV_SUBTRACT = 3,
			MIN = 4,
			MAX = 5,
		}
		public enum D3D11_COLOR_WRITE_ENABLE : int32
		{
			RED = 1,
			GREEN = 2,
			BLUE = 4,
			ALPHA = 8,
			ALL = 15,
		}
		public enum D3D11_TEXTURECUBE_FACE : int32
		{
			POSITIVE_X = 0,
			NEGATIVE_X = 1,
			POSITIVE_Y = 2,
			NEGATIVE_Y = 3,
			POSITIVE_Z = 4,
			NEGATIVE_Z = 5,
		}
		public enum D3D11_BUFFEREX_SRV_FLAG : int32
		{
			FLAG_RAW = 1,
		}
		public enum D3D11_DSV_FLAG : int32
		{
			DEPTH = 1,
			STENCIL = 2,
		}
		public enum D3D11_BUFFER_UAV_FLAG : int32
		{
			RAW = 1,
			APPEND = 2,
			COUNTER = 4,
		}
		public enum D3D11_FILTER : int32
		{
			MIN_MAG_MIP_POINT = 0,
			MIN_MAG_POINT_MIP_LINEAR = 1,
			MIN_POINT_MAG_LINEAR_MIP_POINT = 4,
			MIN_POINT_MAG_MIP_LINEAR = 5,
			MIN_LINEAR_MAG_MIP_POINT = 16,
			MIN_LINEAR_MAG_POINT_MIP_LINEAR = 17,
			MIN_MAG_LINEAR_MIP_POINT = 20,
			MIN_MAG_MIP_LINEAR = 21,
			ANISOTROPIC = 85,
			COMPARISON_MIN_MAG_MIP_POINT = 128,
			COMPARISON_MIN_MAG_POINT_MIP_LINEAR = 129,
			COMPARISON_MIN_POINT_MAG_LINEAR_MIP_POINT = 132,
			COMPARISON_MIN_POINT_MAG_MIP_LINEAR = 133,
			COMPARISON_MIN_LINEAR_MAG_MIP_POINT = 144,
			COMPARISON_MIN_LINEAR_MAG_POINT_MIP_LINEAR = 145,
			COMPARISON_MIN_MAG_LINEAR_MIP_POINT = 148,
			COMPARISON_MIN_MAG_MIP_LINEAR = 149,
			COMPARISON_ANISOTROPIC = 213,
			MINIMUM_MIN_MAG_MIP_POINT = 256,
			MINIMUM_MIN_MAG_POINT_MIP_LINEAR = 257,
			MINIMUM_MIN_POINT_MAG_LINEAR_MIP_POINT = 260,
			MINIMUM_MIN_POINT_MAG_MIP_LINEAR = 261,
			MINIMUM_MIN_LINEAR_MAG_MIP_POINT = 272,
			MINIMUM_MIN_LINEAR_MAG_POINT_MIP_LINEAR = 273,
			MINIMUM_MIN_MAG_LINEAR_MIP_POINT = 276,
			MINIMUM_MIN_MAG_MIP_LINEAR = 277,
			MINIMUM_ANISOTROPIC = 341,
			MAXIMUM_MIN_MAG_MIP_POINT = 384,
			MAXIMUM_MIN_MAG_POINT_MIP_LINEAR = 385,
			MAXIMUM_MIN_POINT_MAG_LINEAR_MIP_POINT = 388,
			MAXIMUM_MIN_POINT_MAG_MIP_LINEAR = 389,
			MAXIMUM_MIN_LINEAR_MAG_MIP_POINT = 400,
			MAXIMUM_MIN_LINEAR_MAG_POINT_MIP_LINEAR = 401,
			MAXIMUM_MIN_MAG_LINEAR_MIP_POINT = 404,
			MAXIMUM_MIN_MAG_MIP_LINEAR = 405,
			MAXIMUM_ANISOTROPIC = 469,
		}
		public enum D3D11_FILTER_TYPE : int32
		{
			POINT = 0,
			LINEAR = 1,
		}
		public enum D3D11_FILTER_REDUCTION_TYPE : int32
		{
			STANDARD = 0,
			COMPARISON = 1,
			MINIMUM = 2,
			MAXIMUM = 3,
		}
		public enum D3D11_TEXTURE_ADDRESS_MODE : int32
		{
			WRAP = 1,
			MIRROR = 2,
			CLAMP = 3,
			BORDER = 4,
			MIRROR_ONCE = 5,
		}
		public enum D3D11_FORMAT_SUPPORT : int32
		{
			BUFFER = 1,
			IA_VERTEX_BUFFER = 2,
			IA_INDEX_BUFFER = 4,
			SO_BUFFER = 8,
			TEXTURE1D = 16,
			TEXTURE2D = 32,
			TEXTURE3D = 64,
			TEXTURECUBE = 128,
			SHADER_LOAD = 256,
			SHADER_SAMPLE = 512,
			SHADER_SAMPLE_COMPARISON = 1024,
			SHADER_SAMPLE_MONO_TEXT = 2048,
			MIP = 4096,
			MIP_AUTOGEN = 8192,
			RENDER_TARGET = 16384,
			BLENDABLE = 32768,
			DEPTH_STENCIL = 65536,
			CPU_LOCKABLE = 131072,
			MULTISAMPLE_RESOLVE = 262144,
			DISPLAY = 524288,
			CAST_WITHIN_BIT_LAYOUT = 1048576,
			MULTISAMPLE_RENDERTARGET = 2097152,
			MULTISAMPLE_LOAD = 4194304,
			SHADER_GATHER = 8388608,
			BACK_BUFFER_CAST = 16777216,
			TYPED_UNORDERED_ACCESS_VIEW = 33554432,
			SHADER_GATHER_COMPARISON = 67108864,
			DECODER_OUTPUT = 134217728,
			VIDEO_PROCESSOR_OUTPUT = 268435456,
			VIDEO_PROCESSOR_INPUT = 536870912,
			VIDEO_ENCODER = 1073741824,
		}
		public enum D3D11_FORMAT_SUPPORT2 : int32
		{
			UAV_ATOMIC_ADD = 1,
			UAV_ATOMIC_BITWISE_OPS = 2,
			UAV_ATOMIC_COMPARE_STORE_OR_COMPARE_EXCHANGE = 4,
			UAV_ATOMIC_EXCHANGE = 8,
			UAV_ATOMIC_SIGNED_MIN_OR_MAX = 16,
			UAV_ATOMIC_UNSIGNED_MIN_OR_MAX = 32,
			UAV_TYPED_LOAD = 64,
			UAV_TYPED_STORE = 128,
			OUTPUT_MERGER_LOGIC_OP = 256,
			TILED = 512,
			SHAREABLE = 1024,
			MULTIPLANE_OVERLAY = 16384,
		}
		public enum D3D11_ASYNC_GETDATA_FLAG : int32
		{
			DONOTFLUSH = 1,
		}
		public enum D3D11_QUERY : int32
		{
			EVENT = 0,
			OCCLUSION = 1,
			TIMESTAMP = 2,
			TIMESTAMP_DISJOINT = 3,
			PIPELINE_STATISTICS = 4,
			OCCLUSION_PREDICATE = 5,
			SO_STATISTICS = 6,
			SO_OVERFLOW_PREDICATE = 7,
			SO_STATISTICS_STREAM0 = 8,
			SO_OVERFLOW_PREDICATE_STREAM0 = 9,
			SO_STATISTICS_STREAM1 = 10,
			SO_OVERFLOW_PREDICATE_STREAM1 = 11,
			SO_STATISTICS_STREAM2 = 12,
			SO_OVERFLOW_PREDICATE_STREAM2 = 13,
			SO_STATISTICS_STREAM3 = 14,
			SO_OVERFLOW_PREDICATE_STREAM3 = 15,
		}
		public enum D3D11_QUERY_MISC_FLAG : int32
		{
			PREDICATEHINT = 1,
		}
		public enum D3D11_COUNTER : int32
		{
			COUNTER_DEVICE_DEPENDENT_0 = 1073741824,
		}
		public enum D3D11_COUNTER_TYPE : int32
		{
			FLOAT32 = 0,
			UINT16 = 1,
			UINT32 = 2,
			UINT64 = 3,
		}
		public enum D3D11_STANDARD_MULTISAMPLE_QUALITY_LEVELS : int32
		{
			STANDARD_MULTISAMPLE_PATTERN = -1,
			CENTER_MULTISAMPLE_PATTERN = -2,
		}
		public enum D3D11_DEVICE_CONTEXT_TYPE : int32
		{
			IMMEDIATE = 0,
			DEFERRED = 1,
		}
		public enum D3D11_FEATURE : int32
		{
			THREADING = 0,
			DOUBLES = 1,
			FORMAT_SUPPORT = 2,
			FORMAT_SUPPORT2 = 3,
			D3D10_X_HARDWARE_OPTIONS = 4,
			D3D11_OPTIONS = 5,
			ARCHITECTURE_INFO = 6,
			D3D9_OPTIONS = 7,
			SHADER_MIN_PRECISION_SUPPORT = 8,
			D3D9_SHADOW_SUPPORT = 9,
			D3D11_OPTIONS1 = 10,
			D3D9_SIMPLE_INSTANCING_SUPPORT = 11,
			MARKER_SUPPORT = 12,
			D3D9_OPTIONS1 = 13,
			D3D11_OPTIONS2 = 14,
			D3D11_OPTIONS3 = 15,
			GPU_VIRTUAL_ADDRESS_SUPPORT = 16,
			D3D11_OPTIONS4 = 17,
			SHADER_CACHE = 18,
			D3D11_OPTIONS5 = 19,
			DISPLAYABLE = 20,
		}
		public enum D3D11_SHADER_MIN_PRECISION_SUPPORT : int32
		{
			_10_BIT = 1,
			_16_BIT = 2,
		}
		public enum D3D11_TILED_RESOURCES_TIER : int32
		{
			NOT_SUPPORTED = 0,
			TIER_1 = 1,
			TIER_2 = 2,
			TIER_3 = 3,
		}
		public enum D3D11_CONSERVATIVE_RASTERIZATION_TIER : int32
		{
			NOT_SUPPORTED = 0,
			TIER_1 = 1,
			TIER_2 = 2,
			TIER_3 = 3,
		}
		public enum D3D11_SHADER_CACHE_SUPPORT_FLAGS : int32
		{
			NONE = 0,
			AUTOMATIC_INPROC_CACHE = 1,
			AUTOMATIC_DISK_CACHE = 2,
		}
		public enum D3D11_SHARED_RESOURCE_TIER : int32
		{
			_0 = 0,
			_1 = 1,
			_2 = 2,
			_3 = 3,
		}
		public enum D3D11_VIDEO_DECODER_BUFFER_TYPE : int32
		{
			PICTURE_PARAMETERS = 0,
			MACROBLOCK_CONTROL = 1,
			RESIDUAL_DIFFERENCE = 2,
			DEBLOCKING_CONTROL = 3,
			INVERSE_QUANTIZATION_MATRIX = 4,
			SLICE_CONTROL = 5,
			BITSTREAM = 6,
			MOTION_VECTOR = 7,
			FILM_GRAIN = 8,
		}
		public enum D3D11_VIDEO_PROCESSOR_FORMAT_SUPPORT : int32
		{
			INPUT = 1,
			OUTPUT = 2,
		}
		public enum D3D11_VIDEO_PROCESSOR_DEVICE_CAPS : int32
		{
			LINEAR_SPACE = 1,
			xvYCC = 2,
			RGB_RANGE_CONVERSION = 4,
			YCbCr_MATRIX_CONVERSION = 8,
			NOMINAL_RANGE = 16,
		}
		public enum D3D11_VIDEO_PROCESSOR_FEATURE_CAPS : int32
		{
			ALPHA_FILL = 1,
			CONSTRICTION = 2,
			LUMA_KEY = 4,
			ALPHA_PALETTE = 8,
			LEGACY = 16,
			STEREO = 32,
			ROTATION = 64,
			ALPHA_STREAM = 128,
			PIXEL_ASPECT_RATIO = 256,
			MIRROR = 512,
			SHADER_USAGE = 1024,
			METADATA_HDR10 = 2048,
		}
		public enum D3D11_VIDEO_PROCESSOR_FILTER_CAPS : int32
		{
			BRIGHTNESS = 1,
			CONTRAST = 2,
			HUE = 4,
			SATURATION = 8,
			NOISE_REDUCTION = 16,
			EDGE_ENHANCEMENT = 32,
			ANAMORPHIC_SCALING = 64,
			STEREO_ADJUSTMENT = 128,
		}
		public enum D3D11_VIDEO_PROCESSOR_FORMAT_CAPS : int32
		{
			RGB_INTERLACED = 1,
			RGB_PROCAMP = 2,
			RGB_LUMA_KEY = 4,
			PALETTE_INTERLACED = 8,
		}
		public enum D3D11_VIDEO_PROCESSOR_AUTO_STREAM_CAPS : int32
		{
			DENOISE = 1,
			DERINGING = 2,
			EDGE_ENHANCEMENT = 4,
			COLOR_CORRECTION = 8,
			FLESH_TONE_MAPPING = 16,
			IMAGE_STABILIZATION = 32,
			SUPER_RESOLUTION = 64,
			ANAMORPHIC_SCALING = 128,
		}
		public enum D3D11_VIDEO_PROCESSOR_STEREO_CAPS : int32
		{
			MONO_OFFSET = 1,
			ROW_INTERLEAVED = 2,
			COLUMN_INTERLEAVED = 4,
			CHECKERBOARD = 8,
			FLIP_MODE = 16,
		}
		public enum D3D11_VIDEO_PROCESSOR_PROCESSOR_CAPS : int32
		{
			DEINTERLACE_BLEND = 1,
			DEINTERLACE_BOB = 2,
			DEINTERLACE_ADAPTIVE = 4,
			DEINTERLACE_MOTION_COMPENSATION = 8,
			INVERSE_TELECINE = 16,
			FRAME_RATE_CONVERSION = 32,
		}
		public enum D3D11_VIDEO_PROCESSOR_ITELECINE_CAPS : int32
		{
			_32 = 1,
			_22 = 2,
			_2224 = 4,
			_2332 = 8,
			_32322 = 16,
			_55 = 32,
			_64 = 64,
			_87 = 128,
			_222222222223 = 256,
			OTHER = -2147483648,
		}
		public enum D3D11_CONTENT_PROTECTION_CAPS : int32
		{
			SOFTWARE = 1,
			HARDWARE = 2,
			PROTECTION_ALWAYS_ON = 4,
			PARTIAL_DECRYPTION = 8,
			CONTENT_KEY = 16,
			FRESHEN_SESSION_KEY = 32,
			ENCRYPTED_READ_BACK = 64,
			ENCRYPTED_READ_BACK_KEY = 128,
			SEQUENTIAL_CTR_IV = 256,
			ENCRYPT_SLICEDATA_ONLY = 512,
			DECRYPTION_BLT = 1024,
			HARDWARE_PROTECT_UNCOMPRESSED = 2048,
			HARDWARE_PROTECTED_MEMORY_PAGEABLE = 4096,
			HARDWARE_TEARDOWN = 8192,
			HARDWARE_DRM_COMMUNICATION = 16384,
			HARDWARE_DRM_COMMUNICATION_MULTI_THREADED = 32768,
		}
		public enum D3D11_VIDEO_PROCESSOR_FILTER : int32
		{
			BRIGHTNESS = 0,
			CONTRAST = 1,
			HUE = 2,
			SATURATION = 3,
			NOISE_REDUCTION = 4,
			EDGE_ENHANCEMENT = 5,
			ANAMORPHIC_SCALING = 6,
			STEREO_ADJUSTMENT = 7,
		}
		public enum D3D11_VIDEO_FRAME_FORMAT : int32
		{
			PROGRESSIVE = 0,
			INTERLACED_TOP_FIELD_FIRST = 1,
			INTERLACED_BOTTOM_FIELD_FIRST = 2,
		}
		public enum D3D11_VIDEO_USAGE : int32
		{
			PLAYBACK_NORMAL = 0,
			OPTIMAL_SPEED = 1,
			OPTIMAL_QUALITY = 2,
		}
		public enum D3D11_VIDEO_PROCESSOR_NOMINAL_RANGE : int32
		{
			UNDEFINED = 0,
			_16_235 = 1,
			_0_255 = 2,
		}
		public enum D3D11_VIDEO_PROCESSOR_ALPHA_FILL_MODE : int32
		{
			OPAQUE = 0,
			BACKGROUND = 1,
			DESTINATION = 2,
			SOURCE_STREAM = 3,
		}
		public enum D3D11_VIDEO_PROCESSOR_OUTPUT_RATE : int32
		{
			NORMAL = 0,
			HALF = 1,
			CUSTOM = 2,
		}
		public enum D3D11_VIDEO_PROCESSOR_STEREO_FORMAT : int32
		{
			MONO = 0,
			HORIZONTAL = 1,
			VERTICAL = 2,
			SEPARATE = 3,
			MONO_OFFSET = 4,
			ROW_INTERLEAVED = 5,
			COLUMN_INTERLEAVED = 6,
			CHECKERBOARD = 7,
		}
		public enum D3D11_VIDEO_PROCESSOR_STEREO_FLIP_MODE : int32
		{
			NONE = 0,
			FRAME0 = 1,
			FRAME1 = 2,
		}
		public enum D3D11_VIDEO_PROCESSOR_ROTATION : int32
		{
			IDENTITY = 0,
			_90 = 1,
			_180 = 2,
			_270 = 3,
		}
		public enum D3D11_AUTHENTICATED_CHANNEL_TYPE : int32
		{
			D3D11 = 1,
			DRIVER_SOFTWARE = 2,
			DRIVER_HARDWARE = 3,
		}
		public enum D3D11_AUTHENTICATED_PROCESS_IDENTIFIER_TYPE : int32
		{
			UNKNOWN = 0,
			DWM = 1,
			HANDLE = 2,
		}
		public enum D3D11_BUS_TYPE : int32
		{
			TYPE_OTHER = 0,
			TYPE_PCI = 1,
			TYPE_PCIX = 2,
			TYPE_PCIEXPRESS = 3,
			TYPE_AGP = 4,
			IMPL_MODIFIER_INSIDE_OF_CHIPSET = 65536,
			IMPL_MODIFIER_TRACKS_ON_MOTHER_BOARD_TO_CHIP = 131072,
			IMPL_MODIFIER_TRACKS_ON_MOTHER_BOARD_TO_SOCKET = 196608,
			IMPL_MODIFIER_DAUGHTER_BOARD_CONNECTOR = 262144,
			IMPL_MODIFIER_DAUGHTER_BOARD_CONNECTOR_INSIDE_OF_NUAE = 327680,
			IMPL_MODIFIER_NON_STANDARD = -2147483648,
		}
		public enum D3D11_VDOV_DIMENSION : int32
		{
			UNKNOWN = 0,
			TEXTURE2D = 1,
		}
		public enum D3D11_VPIV_DIMENSION : int32
		{
			UNKNOWN = 0,
			TEXTURE2D = 1,
		}
		public enum D3D11_VPOV_DIMENSION : int32
		{
			UNKNOWN = 0,
			TEXTURE2D = 1,
			TEXTURE2DARRAY = 2,
		}
		public enum D3D11_CREATE_DEVICE_FLAG : uint32
		{
			SINGLETHREADED = 1,
			DEBUG = 2,
			SWITCH_TO_REF = 4,
			PREVENT_INTERNAL_THREADING_OPTIMIZATIONS = 8,
			BGRA_SUPPORT = 32,
			DEBUGGABLE = 64,
			PREVENT_ALTERING_LAYER_SETTINGS_FROM_REGISTRY = 128,
			DISABLE_GPU_TIMEOUT = 256,
			VIDEO_SUPPORT = 2048,
		}
		public enum D3D11_RLDO_FLAGS : int32
		{
			SUMMARY = 1,
			DETAIL = 2,
			IGNORE_INTERNAL = 4,
		}
		public enum D3D11_SHADER_TRACKING_RESOURCE_TYPE : int32
		{
			NONE = 0,
			UAV_DEVICEMEMORY = 1,
			NON_UAV_DEVICEMEMORY = 2,
			ALL_DEVICEMEMORY = 3,
			GROUPSHARED_MEMORY = 4,
			ALL_SHARED_MEMORY = 5,
			GROUPSHARED_NON_UAV = 6,
			ALL = 7,
		}
		public enum D3D11_SHADER_TRACKING_OPTIONS : int32
		{
			IGNORE = 0,
			TRACK_UNINITIALIZED = 1,
			TRACK_RAW = 2,
			TRACK_WAR = 4,
			TRACK_WAW = 8,
			ALLOW_SAME = 16,
			TRACK_ATOMIC_CONSISTENCY = 32,
			TRACK_RAW_ACROSS_THREADGROUPS = 64,
			TRACK_WAR_ACROSS_THREADGROUPS = 128,
			TRACK_WAW_ACROSS_THREADGROUPS = 256,
			TRACK_ATOMIC_CONSISTENCY_ACROSS_THREADGROUPS = 512,
			UAV_SPECIFIC_FLAGS = 960,
			ALL_HAZARDS = 1006,
			ALL_HAZARDS_ALLOWING_SAME = 1022,
			ALL_OPTIONS = 1023,
		}
		public enum D3D11_MESSAGE_CATEGORY : int32
		{
			APPLICATION_DEFINED = 0,
			MISCELLANEOUS = 1,
			INITIALIZATION = 2,
			CLEANUP = 3,
			COMPILATION = 4,
			STATE_CREATION = 5,
			STATE_SETTING = 6,
			STATE_GETTING = 7,
			RESOURCE_MANIPULATION = 8,
			EXECUTION = 9,
			SHADER = 10,
		}
		public enum D3D11_MESSAGE_SEVERITY : int32
		{
			CORRUPTION = 0,
			ERROR = 1,
			WARNING = 2,
			INFO = 3,
			MESSAGE = 4,
		}
		public enum D3D11_MESSAGE_ID : int32
		{
			UNKNOWN = 0,
			DEVICE_IASETVERTEXBUFFERS_HAZARD = 1,
			DEVICE_IASETINDEXBUFFER_HAZARD = 2,
			DEVICE_VSSETSHADERRESOURCES_HAZARD = 3,
			DEVICE_VSSETCONSTANTBUFFERS_HAZARD = 4,
			DEVICE_GSSETSHADERRESOURCES_HAZARD = 5,
			DEVICE_GSSETCONSTANTBUFFERS_HAZARD = 6,
			DEVICE_PSSETSHADERRESOURCES_HAZARD = 7,
			DEVICE_PSSETCONSTANTBUFFERS_HAZARD = 8,
			DEVICE_OMSETRENDERTARGETS_HAZARD = 9,
			DEVICE_SOSETTARGETS_HAZARD = 10,
			STRING_FROM_APPLICATION = 11,
			CORRUPTED_THIS = 12,
			CORRUPTED_PARAMETER1 = 13,
			CORRUPTED_PARAMETER2 = 14,
			CORRUPTED_PARAMETER3 = 15,
			CORRUPTED_PARAMETER4 = 16,
			CORRUPTED_PARAMETER5 = 17,
			CORRUPTED_PARAMETER6 = 18,
			CORRUPTED_PARAMETER7 = 19,
			CORRUPTED_PARAMETER8 = 20,
			CORRUPTED_PARAMETER9 = 21,
			CORRUPTED_PARAMETER10 = 22,
			CORRUPTED_PARAMETER11 = 23,
			CORRUPTED_PARAMETER12 = 24,
			CORRUPTED_PARAMETER13 = 25,
			CORRUPTED_PARAMETER14 = 26,
			CORRUPTED_PARAMETER15 = 27,
			CORRUPTED_MULTITHREADING = 28,
			MESSAGE_REPORTING_OUTOFMEMORY = 29,
			IASETINPUTLAYOUT_UNBINDDELETINGOBJECT = 30,
			IASETVERTEXBUFFERS_UNBINDDELETINGOBJECT = 31,
			IASETINDEXBUFFER_UNBINDDELETINGOBJECT = 32,
			VSSETSHADER_UNBINDDELETINGOBJECT = 33,
			VSSETSHADERRESOURCES_UNBINDDELETINGOBJECT = 34,
			VSSETCONSTANTBUFFERS_UNBINDDELETINGOBJECT = 35,
			VSSETSAMPLERS_UNBINDDELETINGOBJECT = 36,
			GSSETSHADER_UNBINDDELETINGOBJECT = 37,
			GSSETSHADERRESOURCES_UNBINDDELETINGOBJECT = 38,
			GSSETCONSTANTBUFFERS_UNBINDDELETINGOBJECT = 39,
			GSSETSAMPLERS_UNBINDDELETINGOBJECT = 40,
			SOSETTARGETS_UNBINDDELETINGOBJECT = 41,
			PSSETSHADER_UNBINDDELETINGOBJECT = 42,
			PSSETSHADERRESOURCES_UNBINDDELETINGOBJECT = 43,
			PSSETCONSTANTBUFFERS_UNBINDDELETINGOBJECT = 44,
			PSSETSAMPLERS_UNBINDDELETINGOBJECT = 45,
			RSSETSTATE_UNBINDDELETINGOBJECT = 46,
			OMSETBLENDSTATE_UNBINDDELETINGOBJECT = 47,
			OMSETDEPTHSTENCILSTATE_UNBINDDELETINGOBJECT = 48,
			OMSETRENDERTARGETS_UNBINDDELETINGOBJECT = 49,
			SETPREDICATION_UNBINDDELETINGOBJECT = 50,
			GETPRIVATEDATA_MOREDATA = 51,
			SETPRIVATEDATA_INVALIDFREEDATA = 52,
			SETPRIVATEDATA_INVALIDIUNKNOWN = 53,
			SETPRIVATEDATA_INVALIDFLAGS = 54,
			SETPRIVATEDATA_CHANGINGPARAMS = 55,
			SETPRIVATEDATA_OUTOFMEMORY = 56,
			CREATEBUFFER_UNRECOGNIZEDFORMAT = 57,
			CREATEBUFFER_INVALIDSAMPLES = 58,
			CREATEBUFFER_UNRECOGNIZEDUSAGE = 59,
			CREATEBUFFER_UNRECOGNIZEDBINDFLAGS = 60,
			CREATEBUFFER_UNRECOGNIZEDCPUACCESSFLAGS = 61,
			CREATEBUFFER_UNRECOGNIZEDMISCFLAGS = 62,
			CREATEBUFFER_INVALIDCPUACCESSFLAGS = 63,
			CREATEBUFFER_INVALIDBINDFLAGS = 64,
			CREATEBUFFER_INVALIDINITIALDATA = 65,
			CREATEBUFFER_INVALIDDIMENSIONS = 66,
			CREATEBUFFER_INVALIDMIPLEVELS = 67,
			CREATEBUFFER_INVALIDMISCFLAGS = 68,
			CREATEBUFFER_INVALIDARG_RETURN = 69,
			CREATEBUFFER_OUTOFMEMORY_RETURN = 70,
			CREATEBUFFER_NULLDESC = 71,
			CREATEBUFFER_INVALIDCONSTANTBUFFERBINDINGS = 72,
			CREATEBUFFER_LARGEALLOCATION = 73,
			CREATETEXTURE1D_UNRECOGNIZEDFORMAT = 74,
			CREATETEXTURE1D_UNSUPPORTEDFORMAT = 75,
			CREATETEXTURE1D_INVALIDSAMPLES = 76,
			CREATETEXTURE1D_UNRECOGNIZEDUSAGE = 77,
			CREATETEXTURE1D_UNRECOGNIZEDBINDFLAGS = 78,
			CREATETEXTURE1D_UNRECOGNIZEDCPUACCESSFLAGS = 79,
			CREATETEXTURE1D_UNRECOGNIZEDMISCFLAGS = 80,
			CREATETEXTURE1D_INVALIDCPUACCESSFLAGS = 81,
			CREATETEXTURE1D_INVALIDBINDFLAGS = 82,
			CREATETEXTURE1D_INVALIDINITIALDATA = 83,
			CREATETEXTURE1D_INVALIDDIMENSIONS = 84,
			CREATETEXTURE1D_INVALIDMIPLEVELS = 85,
			CREATETEXTURE1D_INVALIDMISCFLAGS = 86,
			CREATETEXTURE1D_INVALIDARG_RETURN = 87,
			CREATETEXTURE1D_OUTOFMEMORY_RETURN = 88,
			CREATETEXTURE1D_NULLDESC = 89,
			CREATETEXTURE1D_LARGEALLOCATION = 90,
			CREATETEXTURE2D_UNRECOGNIZEDFORMAT = 91,
			CREATETEXTURE2D_UNSUPPORTEDFORMAT = 92,
			CREATETEXTURE2D_INVALIDSAMPLES = 93,
			CREATETEXTURE2D_UNRECOGNIZEDUSAGE = 94,
			CREATETEXTURE2D_UNRECOGNIZEDBINDFLAGS = 95,
			CREATETEXTURE2D_UNRECOGNIZEDCPUACCESSFLAGS = 96,
			CREATETEXTURE2D_UNRECOGNIZEDMISCFLAGS = 97,
			CREATETEXTURE2D_INVALIDCPUACCESSFLAGS = 98,
			CREATETEXTURE2D_INVALIDBINDFLAGS = 99,
			CREATETEXTURE2D_INVALIDINITIALDATA = 100,
			CREATETEXTURE2D_INVALIDDIMENSIONS = 101,
			CREATETEXTURE2D_INVALIDMIPLEVELS = 102,
			CREATETEXTURE2D_INVALIDMISCFLAGS = 103,
			CREATETEXTURE2D_INVALIDARG_RETURN = 104,
			CREATETEXTURE2D_OUTOFMEMORY_RETURN = 105,
			CREATETEXTURE2D_NULLDESC = 106,
			CREATETEXTURE2D_LARGEALLOCATION = 107,
			CREATETEXTURE3D_UNRECOGNIZEDFORMAT = 108,
			CREATETEXTURE3D_UNSUPPORTEDFORMAT = 109,
			CREATETEXTURE3D_INVALIDSAMPLES = 110,
			CREATETEXTURE3D_UNRECOGNIZEDUSAGE = 111,
			CREATETEXTURE3D_UNRECOGNIZEDBINDFLAGS = 112,
			CREATETEXTURE3D_UNRECOGNIZEDCPUACCESSFLAGS = 113,
			CREATETEXTURE3D_UNRECOGNIZEDMISCFLAGS = 114,
			CREATETEXTURE3D_INVALIDCPUACCESSFLAGS = 115,
			CREATETEXTURE3D_INVALIDBINDFLAGS = 116,
			CREATETEXTURE3D_INVALIDINITIALDATA = 117,
			CREATETEXTURE3D_INVALIDDIMENSIONS = 118,
			CREATETEXTURE3D_INVALIDMIPLEVELS = 119,
			CREATETEXTURE3D_INVALIDMISCFLAGS = 120,
			CREATETEXTURE3D_INVALIDARG_RETURN = 121,
			CREATETEXTURE3D_OUTOFMEMORY_RETURN = 122,
			CREATETEXTURE3D_NULLDESC = 123,
			CREATETEXTURE3D_LARGEALLOCATION = 124,
			CREATESHADERRESOURCEVIEW_UNRECOGNIZEDFORMAT = 125,
			CREATESHADERRESOURCEVIEW_INVALIDDESC = 126,
			CREATESHADERRESOURCEVIEW_INVALIDFORMAT = 127,
			CREATESHADERRESOURCEVIEW_INVALIDDIMENSIONS = 128,
			CREATESHADERRESOURCEVIEW_INVALIDRESOURCE = 129,
			CREATESHADERRESOURCEVIEW_TOOMANYOBJECTS = 130,
			CREATESHADERRESOURCEVIEW_INVALIDARG_RETURN = 131,
			CREATESHADERRESOURCEVIEW_OUTOFMEMORY_RETURN = 132,
			CREATERENDERTARGETVIEW_UNRECOGNIZEDFORMAT = 133,
			CREATERENDERTARGETVIEW_UNSUPPORTEDFORMAT = 134,
			CREATERENDERTARGETVIEW_INVALIDDESC = 135,
			CREATERENDERTARGETVIEW_INVALIDFORMAT = 136,
			CREATERENDERTARGETVIEW_INVALIDDIMENSIONS = 137,
			CREATERENDERTARGETVIEW_INVALIDRESOURCE = 138,
			CREATERENDERTARGETVIEW_TOOMANYOBJECTS = 139,
			CREATERENDERTARGETVIEW_INVALIDARG_RETURN = 140,
			CREATERENDERTARGETVIEW_OUTOFMEMORY_RETURN = 141,
			CREATEDEPTHSTENCILVIEW_UNRECOGNIZEDFORMAT = 142,
			CREATEDEPTHSTENCILVIEW_INVALIDDESC = 143,
			CREATEDEPTHSTENCILVIEW_INVALIDFORMAT = 144,
			CREATEDEPTHSTENCILVIEW_INVALIDDIMENSIONS = 145,
			CREATEDEPTHSTENCILVIEW_INVALIDRESOURCE = 146,
			CREATEDEPTHSTENCILVIEW_TOOMANYOBJECTS = 147,
			CREATEDEPTHSTENCILVIEW_INVALIDARG_RETURN = 148,
			CREATEDEPTHSTENCILVIEW_OUTOFMEMORY_RETURN = 149,
			CREATEINPUTLAYOUT_OUTOFMEMORY = 150,
			CREATEINPUTLAYOUT_TOOMANYELEMENTS = 151,
			CREATEINPUTLAYOUT_INVALIDFORMAT = 152,
			CREATEINPUTLAYOUT_INCOMPATIBLEFORMAT = 153,
			CREATEINPUTLAYOUT_INVALIDSLOT = 154,
			CREATEINPUTLAYOUT_INVALIDINPUTSLOTCLASS = 155,
			CREATEINPUTLAYOUT_STEPRATESLOTCLASSMISMATCH = 156,
			CREATEINPUTLAYOUT_INVALIDSLOTCLASSCHANGE = 157,
			CREATEINPUTLAYOUT_INVALIDSTEPRATECHANGE = 158,
			CREATEINPUTLAYOUT_INVALIDALIGNMENT = 159,
			CREATEINPUTLAYOUT_DUPLICATESEMANTIC = 160,
			CREATEINPUTLAYOUT_UNPARSEABLEINPUTSIGNATURE = 161,
			CREATEINPUTLAYOUT_NULLSEMANTIC = 162,
			CREATEINPUTLAYOUT_MISSINGELEMENT = 163,
			CREATEINPUTLAYOUT_NULLDESC = 164,
			CREATEVERTEXSHADER_OUTOFMEMORY = 165,
			CREATEVERTEXSHADER_INVALIDSHADERBYTECODE = 166,
			CREATEVERTEXSHADER_INVALIDSHADERTYPE = 167,
			CREATEGEOMETRYSHADER_OUTOFMEMORY = 168,
			CREATEGEOMETRYSHADER_INVALIDSHADERBYTECODE = 169,
			CREATEGEOMETRYSHADER_INVALIDSHADERTYPE = 170,
			CREATEGEOMETRYSHADERWITHSTREAMOUTPUT_OUTOFMEMORY = 171,
			CREATEGEOMETRYSHADERWITHSTREAMOUTPUT_INVALIDSHADERBYTECODE = 172,
			CREATEGEOMETRYSHADERWITHSTREAMOUTPUT_INVALIDSHADERTYPE = 173,
			CREATEGEOMETRYSHADERWITHSTREAMOUTPUT_INVALIDNUMENTRIES = 174,
			CREATEGEOMETRYSHADERWITHSTREAMOUTPUT_OUTPUTSTREAMSTRIDEUNUSED = 175,
			CREATEGEOMETRYSHADERWITHSTREAMOUTPUT_UNEXPECTEDDECL = 176,
			CREATEGEOMETRYSHADERWITHSTREAMOUTPUT_EXPECTEDDECL = 177,
			CREATEGEOMETRYSHADERWITHSTREAMOUTPUT_OUTPUTSLOT0EXPECTED = 178,
			CREATEGEOMETRYSHADERWITHSTREAMOUTPUT_INVALIDOUTPUTSLOT = 179,
			CREATEGEOMETRYSHADERWITHSTREAMOUTPUT_ONLYONEELEMENTPERSLOT = 180,
			CREATEGEOMETRYSHADERWITHSTREAMOUTPUT_INVALIDCOMPONENTCOUNT = 181,
			CREATEGEOMETRYSHADERWITHSTREAMOUTPUT_INVALIDSTARTCOMPONENTANDCOMPONENTCOUNT = 182,
			CREATEGEOMETRYSHADERWITHSTREAMOUTPUT_INVALIDGAPDEFINITION = 183,
			CREATEGEOMETRYSHADERWITHSTREAMOUTPUT_REPEATEDOUTPUT = 184,
			CREATEGEOMETRYSHADERWITHSTREAMOUTPUT_INVALIDOUTPUTSTREAMSTRIDE = 185,
			CREATEGEOMETRYSHADERWITHSTREAMOUTPUT_MISSINGSEMANTIC = 186,
			CREATEGEOMETRYSHADERWITHSTREAMOUTPUT_MASKMISMATCH = 187,
			CREATEGEOMETRYSHADERWITHSTREAMOUTPUT_CANTHAVEONLYGAPS = 188,
			CREATEGEOMETRYSHADERWITHSTREAMOUTPUT_DECLTOOCOMPLEX = 189,
			CREATEGEOMETRYSHADERWITHSTREAMOUTPUT_MISSINGOUTPUTSIGNATURE = 190,
			CREATEPIXELSHADER_OUTOFMEMORY = 191,
			CREATEPIXELSHADER_INVALIDSHADERBYTECODE = 192,
			CREATEPIXELSHADER_INVALIDSHADERTYPE = 193,
			CREATERASTERIZERSTATE_INVALIDFILLMODE = 194,
			CREATERASTERIZERSTATE_INVALIDCULLMODE = 195,
			CREATERASTERIZERSTATE_INVALIDDEPTHBIASCLAMP = 196,
			CREATERASTERIZERSTATE_INVALIDSLOPESCALEDDEPTHBIAS = 197,
			CREATERASTERIZERSTATE_TOOMANYOBJECTS = 198,
			CREATERASTERIZERSTATE_NULLDESC = 199,
			CREATEDEPTHSTENCILSTATE_INVALIDDEPTHWRITEMASK = 200,
			CREATEDEPTHSTENCILSTATE_INVALIDDEPTHFUNC = 201,
			CREATEDEPTHSTENCILSTATE_INVALIDFRONTFACESTENCILFAILOP = 202,
			CREATEDEPTHSTENCILSTATE_INVALIDFRONTFACESTENCILZFAILOP = 203,
			CREATEDEPTHSTENCILSTATE_INVALIDFRONTFACESTENCILPASSOP = 204,
			CREATEDEPTHSTENCILSTATE_INVALIDFRONTFACESTENCILFUNC = 205,
			CREATEDEPTHSTENCILSTATE_INVALIDBACKFACESTENCILFAILOP = 206,
			CREATEDEPTHSTENCILSTATE_INVALIDBACKFACESTENCILZFAILOP = 207,
			CREATEDEPTHSTENCILSTATE_INVALIDBACKFACESTENCILPASSOP = 208,
			CREATEDEPTHSTENCILSTATE_INVALIDBACKFACESTENCILFUNC = 209,
			CREATEDEPTHSTENCILSTATE_TOOMANYOBJECTS = 210,
			CREATEDEPTHSTENCILSTATE_NULLDESC = 211,
			CREATEBLENDSTATE_INVALIDSRCBLEND = 212,
			CREATEBLENDSTATE_INVALIDDESTBLEND = 213,
			CREATEBLENDSTATE_INVALIDBLENDOP = 214,
			CREATEBLENDSTATE_INVALIDSRCBLENDALPHA = 215,
			CREATEBLENDSTATE_INVALIDDESTBLENDALPHA = 216,
			CREATEBLENDSTATE_INVALIDBLENDOPALPHA = 217,
			CREATEBLENDSTATE_INVALIDRENDERTARGETWRITEMASK = 218,
			CREATEBLENDSTATE_TOOMANYOBJECTS = 219,
			CREATEBLENDSTATE_NULLDESC = 220,
			CREATESAMPLERSTATE_INVALIDFILTER = 221,
			CREATESAMPLERSTATE_INVALIDADDRESSU = 222,
			CREATESAMPLERSTATE_INVALIDADDRESSV = 223,
			CREATESAMPLERSTATE_INVALIDADDRESSW = 224,
			CREATESAMPLERSTATE_INVALIDMIPLODBIAS = 225,
			CREATESAMPLERSTATE_INVALIDMAXANISOTROPY = 226,
			CREATESAMPLERSTATE_INVALIDCOMPARISONFUNC = 227,
			CREATESAMPLERSTATE_INVALIDMINLOD = 228,
			CREATESAMPLERSTATE_INVALIDMAXLOD = 229,
			CREATESAMPLERSTATE_TOOMANYOBJECTS = 230,
			CREATESAMPLERSTATE_NULLDESC = 231,
			CREATEQUERYORPREDICATE_INVALIDQUERY = 232,
			CREATEQUERYORPREDICATE_INVALIDMISCFLAGS = 233,
			CREATEQUERYORPREDICATE_UNEXPECTEDMISCFLAG = 234,
			CREATEQUERYORPREDICATE_NULLDESC = 235,
			DEVICE_IASETPRIMITIVETOPOLOGY_TOPOLOGY_UNRECOGNIZED = 236,
			DEVICE_IASETPRIMITIVETOPOLOGY_TOPOLOGY_UNDEFINED = 237,
			IASETVERTEXBUFFERS_INVALIDBUFFER = 238,
			DEVICE_IASETVERTEXBUFFERS_OFFSET_TOO_LARGE = 239,
			DEVICE_IASETVERTEXBUFFERS_BUFFERS_EMPTY = 240,
			IASETINDEXBUFFER_INVALIDBUFFER = 241,
			DEVICE_IASETINDEXBUFFER_FORMAT_INVALID = 242,
			DEVICE_IASETINDEXBUFFER_OFFSET_TOO_LARGE = 243,
			DEVICE_IASETINDEXBUFFER_OFFSET_UNALIGNED = 244,
			DEVICE_VSSETSHADERRESOURCES_VIEWS_EMPTY = 245,
			VSSETCONSTANTBUFFERS_INVALIDBUFFER = 246,
			DEVICE_VSSETCONSTANTBUFFERS_BUFFERS_EMPTY = 247,
			DEVICE_VSSETSAMPLERS_SAMPLERS_EMPTY = 248,
			DEVICE_GSSETSHADERRESOURCES_VIEWS_EMPTY = 249,
			GSSETCONSTANTBUFFERS_INVALIDBUFFER = 250,
			DEVICE_GSSETCONSTANTBUFFERS_BUFFERS_EMPTY = 251,
			DEVICE_GSSETSAMPLERS_SAMPLERS_EMPTY = 252,
			SOSETTARGETS_INVALIDBUFFER = 253,
			DEVICE_SOSETTARGETS_OFFSET_UNALIGNED = 254,
			DEVICE_PSSETSHADERRESOURCES_VIEWS_EMPTY = 255,
			PSSETCONSTANTBUFFERS_INVALIDBUFFER = 256,
			DEVICE_PSSETCONSTANTBUFFERS_BUFFERS_EMPTY = 257,
			DEVICE_PSSETSAMPLERS_SAMPLERS_EMPTY = 258,
			DEVICE_RSSETVIEWPORTS_INVALIDVIEWPORT = 259,
			DEVICE_RSSETSCISSORRECTS_INVALIDSCISSOR = 260,
			CLEARRENDERTARGETVIEW_DENORMFLUSH = 261,
			CLEARDEPTHSTENCILVIEW_DENORMFLUSH = 262,
			CLEARDEPTHSTENCILVIEW_INVALID = 263,
			DEVICE_IAGETVERTEXBUFFERS_BUFFERS_EMPTY = 264,
			DEVICE_VSGETSHADERRESOURCES_VIEWS_EMPTY = 265,
			DEVICE_VSGETCONSTANTBUFFERS_BUFFERS_EMPTY = 266,
			DEVICE_VSGETSAMPLERS_SAMPLERS_EMPTY = 267,
			DEVICE_GSGETSHADERRESOURCES_VIEWS_EMPTY = 268,
			DEVICE_GSGETCONSTANTBUFFERS_BUFFERS_EMPTY = 269,
			DEVICE_GSGETSAMPLERS_SAMPLERS_EMPTY = 270,
			DEVICE_SOGETTARGETS_BUFFERS_EMPTY = 271,
			DEVICE_PSGETSHADERRESOURCES_VIEWS_EMPTY = 272,
			DEVICE_PSGETCONSTANTBUFFERS_BUFFERS_EMPTY = 273,
			DEVICE_PSGETSAMPLERS_SAMPLERS_EMPTY = 274,
			DEVICE_RSGETVIEWPORTS_VIEWPORTS_EMPTY = 275,
			DEVICE_RSGETSCISSORRECTS_RECTS_EMPTY = 276,
			DEVICE_GENERATEMIPS_RESOURCE_INVALID = 277,
			COPYSUBRESOURCEREGION_INVALIDDESTINATIONSUBRESOURCE = 278,
			COPYSUBRESOURCEREGION_INVALIDSOURCESUBRESOURCE = 279,
			COPYSUBRESOURCEREGION_INVALIDSOURCEBOX = 280,
			COPYSUBRESOURCEREGION_INVALIDSOURCE = 281,
			COPYSUBRESOURCEREGION_INVALIDDESTINATIONSTATE = 282,
			COPYSUBRESOURCEREGION_INVALIDSOURCESTATE = 283,
			COPYRESOURCE_INVALIDSOURCE = 284,
			COPYRESOURCE_INVALIDDESTINATIONSTATE = 285,
			COPYRESOURCE_INVALIDSOURCESTATE = 286,
			UPDATESUBRESOURCE_INVALIDDESTINATIONSUBRESOURCE = 287,
			UPDATESUBRESOURCE_INVALIDDESTINATIONBOX = 288,
			UPDATESUBRESOURCE_INVALIDDESTINATIONSTATE = 289,
			DEVICE_RESOLVESUBRESOURCE_DESTINATION_INVALID = 290,
			DEVICE_RESOLVESUBRESOURCE_DESTINATION_SUBRESOURCE_INVALID = 291,
			DEVICE_RESOLVESUBRESOURCE_SOURCE_INVALID = 292,
			DEVICE_RESOLVESUBRESOURCE_SOURCE_SUBRESOURCE_INVALID = 293,
			DEVICE_RESOLVESUBRESOURCE_FORMAT_INVALID = 294,
			BUFFER_MAP_INVALIDMAPTYPE = 295,
			BUFFER_MAP_INVALIDFLAGS = 296,
			BUFFER_MAP_ALREADYMAPPED = 297,
			BUFFER_MAP_DEVICEREMOVED_RETURN = 298,
			BUFFER_UNMAP_NOTMAPPED = 299,
			TEXTURE1D_MAP_INVALIDMAPTYPE = 300,
			TEXTURE1D_MAP_INVALIDSUBRESOURCE = 301,
			TEXTURE1D_MAP_INVALIDFLAGS = 302,
			TEXTURE1D_MAP_ALREADYMAPPED = 303,
			TEXTURE1D_MAP_DEVICEREMOVED_RETURN = 304,
			TEXTURE1D_UNMAP_INVALIDSUBRESOURCE = 305,
			TEXTURE1D_UNMAP_NOTMAPPED = 306,
			TEXTURE2D_MAP_INVALIDMAPTYPE = 307,
			TEXTURE2D_MAP_INVALIDSUBRESOURCE = 308,
			TEXTURE2D_MAP_INVALIDFLAGS = 309,
			TEXTURE2D_MAP_ALREADYMAPPED = 310,
			TEXTURE2D_MAP_DEVICEREMOVED_RETURN = 311,
			TEXTURE2D_UNMAP_INVALIDSUBRESOURCE = 312,
			TEXTURE2D_UNMAP_NOTMAPPED = 313,
			TEXTURE3D_MAP_INVALIDMAPTYPE = 314,
			TEXTURE3D_MAP_INVALIDSUBRESOURCE = 315,
			TEXTURE3D_MAP_INVALIDFLAGS = 316,
			TEXTURE3D_MAP_ALREADYMAPPED = 317,
			TEXTURE3D_MAP_DEVICEREMOVED_RETURN = 318,
			TEXTURE3D_UNMAP_INVALIDSUBRESOURCE = 319,
			TEXTURE3D_UNMAP_NOTMAPPED = 320,
			CHECKFORMATSUPPORT_FORMAT_DEPRECATED = 321,
			CHECKMULTISAMPLEQUALITYLEVELS_FORMAT_DEPRECATED = 322,
			SETEXCEPTIONMODE_UNRECOGNIZEDFLAGS = 323,
			SETEXCEPTIONMODE_INVALIDARG_RETURN = 324,
			SETEXCEPTIONMODE_DEVICEREMOVED_RETURN = 325,
			REF_SIMULATING_INFINITELY_FAST_HARDWARE = 326,
			REF_THREADING_MODE = 327,
			REF_UMDRIVER_EXCEPTION = 328,
			REF_KMDRIVER_EXCEPTION = 329,
			REF_HARDWARE_EXCEPTION = 330,
			REF_ACCESSING_INDEXABLE_TEMP_OUT_OF_RANGE = 331,
			REF_PROBLEM_PARSING_SHADER = 332,
			REF_OUT_OF_MEMORY = 333,
			REF_INFO = 334,
			DEVICE_DRAW_VERTEXPOS_OVERFLOW = 335,
			DEVICE_DRAWINDEXED_INDEXPOS_OVERFLOW = 336,
			DEVICE_DRAWINSTANCED_VERTEXPOS_OVERFLOW = 337,
			DEVICE_DRAWINSTANCED_INSTANCEPOS_OVERFLOW = 338,
			DEVICE_DRAWINDEXEDINSTANCED_INSTANCEPOS_OVERFLOW = 339,
			DEVICE_DRAWINDEXEDINSTANCED_INDEXPOS_OVERFLOW = 340,
			DEVICE_DRAW_VERTEX_SHADER_NOT_SET = 341,
			DEVICE_SHADER_LINKAGE_SEMANTICNAME_NOT_FOUND = 342,
			DEVICE_SHADER_LINKAGE_REGISTERINDEX = 343,
			DEVICE_SHADER_LINKAGE_COMPONENTTYPE = 344,
			DEVICE_SHADER_LINKAGE_REGISTERMASK = 345,
			DEVICE_SHADER_LINKAGE_SYSTEMVALUE = 346,
			DEVICE_SHADER_LINKAGE_NEVERWRITTEN_ALWAYSREADS = 347,
			DEVICE_DRAW_VERTEX_BUFFER_NOT_SET = 348,
			DEVICE_DRAW_INPUTLAYOUT_NOT_SET = 349,
			DEVICE_DRAW_CONSTANT_BUFFER_NOT_SET = 350,
			DEVICE_DRAW_CONSTANT_BUFFER_TOO_SMALL = 351,
			DEVICE_DRAW_SAMPLER_NOT_SET = 352,
			DEVICE_DRAW_SHADERRESOURCEVIEW_NOT_SET = 353,
			DEVICE_DRAW_VIEW_DIMENSION_MISMATCH = 354,
			DEVICE_DRAW_VERTEX_BUFFER_STRIDE_TOO_SMALL = 355,
			DEVICE_DRAW_VERTEX_BUFFER_TOO_SMALL = 356,
			DEVICE_DRAW_INDEX_BUFFER_NOT_SET = 357,
			DEVICE_DRAW_INDEX_BUFFER_FORMAT_INVALID = 358,
			DEVICE_DRAW_INDEX_BUFFER_TOO_SMALL = 359,
			DEVICE_DRAW_GS_INPUT_PRIMITIVE_MISMATCH = 360,
			DEVICE_DRAW_RESOURCE_RETURN_TYPE_MISMATCH = 361,
			DEVICE_DRAW_POSITION_NOT_PRESENT = 362,
			DEVICE_DRAW_OUTPUT_STREAM_NOT_SET = 363,
			DEVICE_DRAW_BOUND_RESOURCE_MAPPED = 364,
			DEVICE_DRAW_INVALID_PRIMITIVETOPOLOGY = 365,
			DEVICE_DRAW_VERTEX_OFFSET_UNALIGNED = 366,
			DEVICE_DRAW_VERTEX_STRIDE_UNALIGNED = 367,
			DEVICE_DRAW_INDEX_OFFSET_UNALIGNED = 368,
			DEVICE_DRAW_OUTPUT_STREAM_OFFSET_UNALIGNED = 369,
			DEVICE_DRAW_RESOURCE_FORMAT_LD_UNSUPPORTED = 370,
			DEVICE_DRAW_RESOURCE_FORMAT_SAMPLE_UNSUPPORTED = 371,
			DEVICE_DRAW_RESOURCE_FORMAT_SAMPLE_C_UNSUPPORTED = 372,
			DEVICE_DRAW_RESOURCE_MULTISAMPLE_UNSUPPORTED = 373,
			DEVICE_DRAW_SO_TARGETS_BOUND_WITHOUT_SOURCE = 374,
			DEVICE_DRAW_SO_STRIDE_LARGER_THAN_BUFFER = 375,
			DEVICE_DRAW_OM_RENDER_TARGET_DOES_NOT_SUPPORT_BLENDING = 376,
			DEVICE_DRAW_OM_DUAL_SOURCE_BLENDING_CAN_ONLY_HAVE_RENDER_TARGET_0 = 377,
			DEVICE_REMOVAL_PROCESS_AT_FAULT = 378,
			DEVICE_REMOVAL_PROCESS_POSSIBLY_AT_FAULT = 379,
			DEVICE_REMOVAL_PROCESS_NOT_AT_FAULT = 380,
			DEVICE_OPEN_SHARED_RESOURCE_INVALIDARG_RETURN = 381,
			DEVICE_OPEN_SHARED_RESOURCE_OUTOFMEMORY_RETURN = 382,
			DEVICE_OPEN_SHARED_RESOURCE_BADINTERFACE_RETURN = 383,
			DEVICE_DRAW_VIEWPORT_NOT_SET = 384,
			CREATEINPUTLAYOUT_TRAILING_DIGIT_IN_SEMANTIC = 385,
			CREATEGEOMETRYSHADERWITHSTREAMOUTPUT_TRAILING_DIGIT_IN_SEMANTIC = 386,
			DEVICE_RSSETVIEWPORTS_DENORMFLUSH = 387,
			OMSETRENDERTARGETS_INVALIDVIEW = 388,
			DEVICE_SETTEXTFILTERSIZE_INVALIDDIMENSIONS = 389,
			DEVICE_DRAW_SAMPLER_MISMATCH = 390,
			CREATEINPUTLAYOUT_TYPE_MISMATCH = 391,
			BLENDSTATE_GETDESC_LEGACY = 392,
			SHADERRESOURCEVIEW_GETDESC_LEGACY = 393,
			CREATEQUERY_OUTOFMEMORY_RETURN = 394,
			CREATEPREDICATE_OUTOFMEMORY_RETURN = 395,
			CREATECOUNTER_OUTOFRANGE_COUNTER = 396,
			CREATECOUNTER_SIMULTANEOUS_ACTIVE_COUNTERS_EXHAUSTED = 397,
			CREATECOUNTER_UNSUPPORTED_WELLKNOWN_COUNTER = 398,
			CREATECOUNTER_OUTOFMEMORY_RETURN = 399,
			CREATECOUNTER_NONEXCLUSIVE_RETURN = 400,
			CREATECOUNTER_NULLDESC = 401,
			CHECKCOUNTER_OUTOFRANGE_COUNTER = 402,
			CHECKCOUNTER_UNSUPPORTED_WELLKNOWN_COUNTER = 403,
			SETPREDICATION_INVALID_PREDICATE_STATE = 404,
			QUERY_BEGIN_UNSUPPORTED = 405,
			PREDICATE_BEGIN_DURING_PREDICATION = 406,
			QUERY_BEGIN_DUPLICATE = 407,
			QUERY_BEGIN_ABANDONING_PREVIOUS_RESULTS = 408,
			PREDICATE_END_DURING_PREDICATION = 409,
			QUERY_END_ABANDONING_PREVIOUS_RESULTS = 410,
			QUERY_END_WITHOUT_BEGIN = 411,
			QUERY_GETDATA_INVALID_DATASIZE = 412,
			QUERY_GETDATA_INVALID_FLAGS = 413,
			QUERY_GETDATA_INVALID_CALL = 414,
			DEVICE_DRAW_PS_OUTPUT_TYPE_MISMATCH = 415,
			DEVICE_DRAW_RESOURCE_FORMAT_GATHER_UNSUPPORTED = 416,
			DEVICE_DRAW_INVALID_USE_OF_CENTER_MULTISAMPLE_PATTERN = 417,
			DEVICE_IASETVERTEXBUFFERS_STRIDE_TOO_LARGE = 418,
			DEVICE_IASETVERTEXBUFFERS_INVALIDRANGE = 419,
			CREATEINPUTLAYOUT_EMPTY_LAYOUT = 420,
			DEVICE_DRAW_RESOURCE_SAMPLE_COUNT_MISMATCH = 421,
			LIVE_OBJECT_SUMMARY = 422,
			LIVE_BUFFER = 423,
			LIVE_TEXTURE1D = 424,
			LIVE_TEXTURE2D = 425,
			LIVE_TEXTURE3D = 426,
			LIVE_SHADERRESOURCEVIEW = 427,
			LIVE_RENDERTARGETVIEW = 428,
			LIVE_DEPTHSTENCILVIEW = 429,
			LIVE_VERTEXSHADER = 430,
			LIVE_GEOMETRYSHADER = 431,
			LIVE_PIXELSHADER = 432,
			LIVE_INPUTLAYOUT = 433,
			LIVE_SAMPLER = 434,
			LIVE_BLENDSTATE = 435,
			LIVE_DEPTHSTENCILSTATE = 436,
			LIVE_RASTERIZERSTATE = 437,
			LIVE_QUERY = 438,
			LIVE_PREDICATE = 439,
			LIVE_COUNTER = 440,
			LIVE_DEVICE = 441,
			LIVE_SWAPCHAIN = 442,
			D3D10_MESSAGES_END = 443,
			D3D10L9_MESSAGES_START = 1048576,
			CREATEDEPTHSTENCILSTATE_STENCIL_NO_TWO_SIDED = 1048577,
			CREATERASTERIZERSTATE_DepthBiasClamp_NOT_SUPPORTED = 1048578,
			CREATESAMPLERSTATE_NO_COMPARISON_SUPPORT = 1048579,
			CREATESAMPLERSTATE_EXCESSIVE_ANISOTROPY = 1048580,
			CREATESAMPLERSTATE_BORDER_OUT_OF_RANGE = 1048581,
			VSSETSAMPLERS_NOT_SUPPORTED = 1048582,
			VSSETSAMPLERS_TOO_MANY_SAMPLERS = 1048583,
			PSSETSAMPLERS_TOO_MANY_SAMPLERS = 1048584,
			CREATERESOURCE_NO_ARRAYS = 1048585,
			CREATERESOURCE_NO_VB_AND_IB_BIND = 1048586,
			CREATERESOURCE_NO_TEXTURE_1D = 1048587,
			CREATERESOURCE_DIMENSION_OUT_OF_RANGE = 1048588,
			CREATERESOURCE_NOT_BINDABLE_AS_SHADER_RESOURCE = 1048589,
			OMSETRENDERTARGETS_TOO_MANY_RENDER_TARGETS = 1048590,
			OMSETRENDERTARGETS_NO_DIFFERING_BIT_DEPTHS = 1048591,
			IASETVERTEXBUFFERS_BAD_BUFFER_INDEX = 1048592,
			DEVICE_RSSETVIEWPORTS_TOO_MANY_VIEWPORTS = 1048593,
			DEVICE_IASETPRIMITIVETOPOLOGY_ADJACENCY_UNSUPPORTED = 1048594,
			DEVICE_RSSETSCISSORRECTS_TOO_MANY_SCISSORS = 1048595,
			COPYRESOURCE_ONLY_TEXTURE_2D_WITHIN_GPU_MEMORY = 1048596,
			COPYRESOURCE_NO_TEXTURE_3D_READBACK = 1048597,
			COPYRESOURCE_NO_TEXTURE_ONLY_READBACK = 1048598,
			CREATEINPUTLAYOUT_UNSUPPORTED_FORMAT = 1048599,
			CREATEBLENDSTATE_NO_ALPHA_TO_COVERAGE = 1048600,
			CREATERASTERIZERSTATE_DepthClipEnable_MUST_BE_TRUE = 1048601,
			DRAWINDEXED_STARTINDEXLOCATION_MUST_BE_POSITIVE = 1048602,
			CREATESHADERRESOURCEVIEW_MUST_USE_LOWEST_LOD = 1048603,
			CREATESAMPLERSTATE_MINLOD_MUST_NOT_BE_FRACTIONAL = 1048604,
			CREATESAMPLERSTATE_MAXLOD_MUST_BE_FLT_MAX = 1048605,
			CREATESHADERRESOURCEVIEW_FIRSTARRAYSLICE_MUST_BE_ZERO = 1048606,
			CREATESHADERRESOURCEVIEW_CUBES_MUST_HAVE_6_SIDES = 1048607,
			CREATERESOURCE_NOT_BINDABLE_AS_RENDER_TARGET = 1048608,
			CREATERESOURCE_NO_DWORD_INDEX_BUFFER = 1048609,
			CREATERESOURCE_MSAA_PRECLUDES_SHADER_RESOURCE = 1048610,
			CREATERESOURCE_PRESENTATION_PRECLUDES_SHADER_RESOURCE = 1048611,
			CREATEBLENDSTATE_NO_INDEPENDENT_BLEND_ENABLE = 1048612,
			CREATEBLENDSTATE_NO_INDEPENDENT_WRITE_MASKS = 1048613,
			CREATERESOURCE_NO_STREAM_OUT = 1048614,
			CREATERESOURCE_ONLY_VB_IB_FOR_BUFFERS = 1048615,
			CREATERESOURCE_NO_AUTOGEN_FOR_VOLUMES = 1048616,
			CREATERESOURCE_DXGI_FORMAT_R8G8B8A8_CANNOT_BE_SHARED = 1048617,
			VSSHADERRESOURCES_NOT_SUPPORTED = 1048618,
			GEOMETRY_SHADER_NOT_SUPPORTED = 1048619,
			STREAM_OUT_NOT_SUPPORTED = 1048620,
			TEXT_FILTER_NOT_SUPPORTED = 1048621,
			CREATEBLENDSTATE_NO_SEPARATE_ALPHA_BLEND = 1048622,
			CREATEBLENDSTATE_NO_MRT_BLEND = 1048623,
			CREATEBLENDSTATE_OPERATION_NOT_SUPPORTED = 1048624,
			CREATESAMPLERSTATE_NO_MIRRORONCE = 1048625,
			DRAWINSTANCED_NOT_SUPPORTED = 1048626,
			DRAWINDEXEDINSTANCED_NOT_SUPPORTED_BELOW_9_3 = 1048627,
			DRAWINDEXED_POINTLIST_UNSUPPORTED = 1048628,
			SETBLENDSTATE_SAMPLE_MASK_CANNOT_BE_ZERO = 1048629,
			CREATERESOURCE_DIMENSION_EXCEEDS_FEATURE_LEVEL_DEFINITION = 1048630,
			CREATERESOURCE_ONLY_SINGLE_MIP_LEVEL_DEPTH_STENCIL_SUPPORTED = 1048631,
			DEVICE_RSSETSCISSORRECTS_NEGATIVESCISSOR = 1048632,
			SLOT_ZERO_MUST_BE_D3D10_INPUT_PER_VERTEX_DATA = 1048633,
			CREATERESOURCE_NON_POW_2_MIPMAP = 1048634,
			CREATESAMPLERSTATE_BORDER_NOT_SUPPORTED = 1048635,
			OMSETRENDERTARGETS_NO_SRGB_MRT = 1048636,
			COPYRESOURCE_NO_3D_MISMATCHED_UPDATES = 1048637,
			D3D10L9_MESSAGES_END = 1048638,
			D3D11_MESSAGES_START = 2097152,
			CREATEDEPTHSTENCILVIEW_INVALIDFLAGS = 2097153,
			CREATEVERTEXSHADER_INVALIDCLASSLINKAGE = 2097154,
			CREATEGEOMETRYSHADER_INVALIDCLASSLINKAGE = 2097155,
			CREATEGEOMETRYSHADERWITHSTREAMOUTPUT_INVALIDNUMSTREAMS = 2097156,
			CREATEGEOMETRYSHADERWITHSTREAMOUTPUT_INVALIDSTREAMTORASTERIZER = 2097157,
			CREATEGEOMETRYSHADERWITHSTREAMOUTPUT_UNEXPECTEDSTREAMS = 2097158,
			CREATEGEOMETRYSHADERWITHSTREAMOUTPUT_INVALIDCLASSLINKAGE = 2097159,
			CREATEPIXELSHADER_INVALIDCLASSLINKAGE = 2097160,
			CREATEDEFERREDCONTEXT_INVALID_COMMANDLISTFLAGS = 2097161,
			CREATEDEFERREDCONTEXT_SINGLETHREADED = 2097162,
			CREATEDEFERREDCONTEXT_INVALIDARG_RETURN = 2097163,
			CREATEDEFERREDCONTEXT_INVALID_CALL_RETURN = 2097164,
			CREATEDEFERREDCONTEXT_OUTOFMEMORY_RETURN = 2097165,
			FINISHDISPLAYLIST_ONIMMEDIATECONTEXT = 2097166,
			FINISHDISPLAYLIST_OUTOFMEMORY_RETURN = 2097167,
			FINISHDISPLAYLIST_INVALID_CALL_RETURN = 2097168,
			CREATEGEOMETRYSHADERWITHSTREAMOUTPUT_INVALIDSTREAM = 2097169,
			CREATEGEOMETRYSHADERWITHSTREAMOUTPUT_UNEXPECTEDENTRIES = 2097170,
			CREATEGEOMETRYSHADERWITHSTREAMOUTPUT_UNEXPECTEDSTRIDES = 2097171,
			CREATEGEOMETRYSHADERWITHSTREAMOUTPUT_INVALIDNUMSTRIDES = 2097172,
			DEVICE_HSSETSHADERRESOURCES_HAZARD = 2097173,
			DEVICE_HSSETCONSTANTBUFFERS_HAZARD = 2097174,
			HSSETSHADERRESOURCES_UNBINDDELETINGOBJECT = 2097175,
			HSSETCONSTANTBUFFERS_UNBINDDELETINGOBJECT = 2097176,
			CREATEHULLSHADER_INVALIDCALL = 2097177,
			CREATEHULLSHADER_OUTOFMEMORY = 2097178,
			CREATEHULLSHADER_INVALIDSHADERBYTECODE = 2097179,
			CREATEHULLSHADER_INVALIDSHADERTYPE = 2097180,
			CREATEHULLSHADER_INVALIDCLASSLINKAGE = 2097181,
			DEVICE_HSSETSHADERRESOURCES_VIEWS_EMPTY = 2097182,
			HSSETCONSTANTBUFFERS_INVALIDBUFFER = 2097183,
			DEVICE_HSSETCONSTANTBUFFERS_BUFFERS_EMPTY = 2097184,
			DEVICE_HSSETSAMPLERS_SAMPLERS_EMPTY = 2097185,
			DEVICE_HSGETSHADERRESOURCES_VIEWS_EMPTY = 2097186,
			DEVICE_HSGETCONSTANTBUFFERS_BUFFERS_EMPTY = 2097187,
			DEVICE_HSGETSAMPLERS_SAMPLERS_EMPTY = 2097188,
			DEVICE_DSSETSHADERRESOURCES_HAZARD = 2097189,
			DEVICE_DSSETCONSTANTBUFFERS_HAZARD = 2097190,
			DSSETSHADERRESOURCES_UNBINDDELETINGOBJECT = 2097191,
			DSSETCONSTANTBUFFERS_UNBINDDELETINGOBJECT = 2097192,
			CREATEDOMAINSHADER_INVALIDCALL = 2097193,
			CREATEDOMAINSHADER_OUTOFMEMORY = 2097194,
			CREATEDOMAINSHADER_INVALIDSHADERBYTECODE = 2097195,
			CREATEDOMAINSHADER_INVALIDSHADERTYPE = 2097196,
			CREATEDOMAINSHADER_INVALIDCLASSLINKAGE = 2097197,
			DEVICE_DSSETSHADERRESOURCES_VIEWS_EMPTY = 2097198,
			DSSETCONSTANTBUFFERS_INVALIDBUFFER = 2097199,
			DEVICE_DSSETCONSTANTBUFFERS_BUFFERS_EMPTY = 2097200,
			DEVICE_DSSETSAMPLERS_SAMPLERS_EMPTY = 2097201,
			DEVICE_DSGETSHADERRESOURCES_VIEWS_EMPTY = 2097202,
			DEVICE_DSGETCONSTANTBUFFERS_BUFFERS_EMPTY = 2097203,
			DEVICE_DSGETSAMPLERS_SAMPLERS_EMPTY = 2097204,
			DEVICE_DRAW_HS_XOR_DS_MISMATCH = 2097205,
			DEFERRED_CONTEXT_REMOVAL_PROCESS_AT_FAULT = 2097206,
			DEVICE_DRAWINDIRECT_INVALID_ARG_BUFFER = 2097207,
			DEVICE_DRAWINDIRECT_OFFSET_UNALIGNED = 2097208,
			DEVICE_DRAWINDIRECT_OFFSET_OVERFLOW = 2097209,
			RESOURCE_MAP_INVALIDMAPTYPE = 2097210,
			RESOURCE_MAP_INVALIDSUBRESOURCE = 2097211,
			RESOURCE_MAP_INVALIDFLAGS = 2097212,
			RESOURCE_MAP_ALREADYMAPPED = 2097213,
			RESOURCE_MAP_DEVICEREMOVED_RETURN = 2097214,
			RESOURCE_MAP_OUTOFMEMORY_RETURN = 2097215,
			RESOURCE_MAP_WITHOUT_INITIAL_DISCARD = 2097216,
			RESOURCE_UNMAP_INVALIDSUBRESOURCE = 2097217,
			RESOURCE_UNMAP_NOTMAPPED = 2097218,
			DEVICE_DRAW_RASTERIZING_CONTROL_POINTS = 2097219,
			DEVICE_IASETPRIMITIVETOPOLOGY_TOPOLOGY_UNSUPPORTED = 2097220,
			DEVICE_DRAW_HS_DS_SIGNATURE_MISMATCH = 2097221,
			DEVICE_DRAW_HULL_SHADER_INPUT_TOPOLOGY_MISMATCH = 2097222,
			DEVICE_DRAW_HS_DS_CONTROL_POINT_COUNT_MISMATCH = 2097223,
			DEVICE_DRAW_HS_DS_TESSELLATOR_DOMAIN_MISMATCH = 2097224,
			CREATE_CONTEXT = 2097225,
			LIVE_CONTEXT = 2097226,
			DESTROY_CONTEXT = 2097227,
			CREATE_BUFFER = 2097228,
			LIVE_BUFFER_WIN7 = 2097229,
			DESTROY_BUFFER = 2097230,
			CREATE_TEXTURE1D = 2097231,
			LIVE_TEXTURE1D_WIN7 = 2097232,
			DESTROY_TEXTURE1D = 2097233,
			CREATE_TEXTURE2D = 2097234,
			LIVE_TEXTURE2D_WIN7 = 2097235,
			DESTROY_TEXTURE2D = 2097236,
			CREATE_TEXTURE3D = 2097237,
			LIVE_TEXTURE3D_WIN7 = 2097238,
			DESTROY_TEXTURE3D = 2097239,
			CREATE_SHADERRESOURCEVIEW = 2097240,
			LIVE_SHADERRESOURCEVIEW_WIN7 = 2097241,
			DESTROY_SHADERRESOURCEVIEW = 2097242,
			CREATE_RENDERTARGETVIEW = 2097243,
			LIVE_RENDERTARGETVIEW_WIN7 = 2097244,
			DESTROY_RENDERTARGETVIEW = 2097245,
			CREATE_DEPTHSTENCILVIEW = 2097246,
			LIVE_DEPTHSTENCILVIEW_WIN7 = 2097247,
			DESTROY_DEPTHSTENCILVIEW = 2097248,
			CREATE_VERTEXSHADER = 2097249,
			LIVE_VERTEXSHADER_WIN7 = 2097250,
			DESTROY_VERTEXSHADER = 2097251,
			CREATE_HULLSHADER = 2097252,
			LIVE_HULLSHADER = 2097253,
			DESTROY_HULLSHADER = 2097254,
			CREATE_DOMAINSHADER = 2097255,
			LIVE_DOMAINSHADER = 2097256,
			DESTROY_DOMAINSHADER = 2097257,
			CREATE_GEOMETRYSHADER = 2097258,
			LIVE_GEOMETRYSHADER_WIN7 = 2097259,
			DESTROY_GEOMETRYSHADER = 2097260,
			CREATE_PIXELSHADER = 2097261,
			LIVE_PIXELSHADER_WIN7 = 2097262,
			DESTROY_PIXELSHADER = 2097263,
			CREATE_INPUTLAYOUT = 2097264,
			LIVE_INPUTLAYOUT_WIN7 = 2097265,
			DESTROY_INPUTLAYOUT = 2097266,
			CREATE_SAMPLER = 2097267,
			LIVE_SAMPLER_WIN7 = 2097268,
			DESTROY_SAMPLER = 2097269,
			CREATE_BLENDSTATE = 2097270,
			LIVE_BLENDSTATE_WIN7 = 2097271,
			DESTROY_BLENDSTATE = 2097272,
			CREATE_DEPTHSTENCILSTATE = 2097273,
			LIVE_DEPTHSTENCILSTATE_WIN7 = 2097274,
			DESTROY_DEPTHSTENCILSTATE = 2097275,
			CREATE_RASTERIZERSTATE = 2097276,
			LIVE_RASTERIZERSTATE_WIN7 = 2097277,
			DESTROY_RASTERIZERSTATE = 2097278,
			CREATE_QUERY = 2097279,
			LIVE_QUERY_WIN7 = 2097280,
			DESTROY_QUERY = 2097281,
			CREATE_PREDICATE = 2097282,
			LIVE_PREDICATE_WIN7 = 2097283,
			DESTROY_PREDICATE = 2097284,
			CREATE_COUNTER = 2097285,
			DESTROY_COUNTER = 2097286,
			CREATE_COMMANDLIST = 2097287,
			LIVE_COMMANDLIST = 2097288,
			DESTROY_COMMANDLIST = 2097289,
			CREATE_CLASSINSTANCE = 2097290,
			LIVE_CLASSINSTANCE = 2097291,
			DESTROY_CLASSINSTANCE = 2097292,
			CREATE_CLASSLINKAGE = 2097293,
			LIVE_CLASSLINKAGE = 2097294,
			DESTROY_CLASSLINKAGE = 2097295,
			LIVE_DEVICE_WIN7 = 2097296,
			LIVE_OBJECT_SUMMARY_WIN7 = 2097297,
			CREATE_COMPUTESHADER = 2097298,
			LIVE_COMPUTESHADER = 2097299,
			DESTROY_COMPUTESHADER = 2097300,
			CREATE_UNORDEREDACCESSVIEW = 2097301,
			LIVE_UNORDEREDACCESSVIEW = 2097302,
			DESTROY_UNORDEREDACCESSVIEW = 2097303,
			DEVICE_SETSHADER_INTERFACES_FEATURELEVEL = 2097304,
			DEVICE_SETSHADER_INTERFACE_COUNT_MISMATCH = 2097305,
			DEVICE_SETSHADER_INVALID_INSTANCE = 2097306,
			DEVICE_SETSHADER_INVALID_INSTANCE_INDEX = 2097307,
			DEVICE_SETSHADER_INVALID_INSTANCE_TYPE = 2097308,
			DEVICE_SETSHADER_INVALID_INSTANCE_DATA = 2097309,
			DEVICE_SETSHADER_UNBOUND_INSTANCE_DATA = 2097310,
			DEVICE_SETSHADER_INSTANCE_DATA_BINDINGS = 2097311,
			DEVICE_CREATESHADER_CLASSLINKAGE_FULL = 2097312,
			DEVICE_CHECKFEATURESUPPORT_UNRECOGNIZED_FEATURE = 2097313,
			DEVICE_CHECKFEATURESUPPORT_MISMATCHED_DATA_SIZE = 2097314,
			DEVICE_CHECKFEATURESUPPORT_INVALIDARG_RETURN = 2097315,
			DEVICE_CSSETSHADERRESOURCES_HAZARD = 2097316,
			DEVICE_CSSETCONSTANTBUFFERS_HAZARD = 2097317,
			CSSETSHADERRESOURCES_UNBINDDELETINGOBJECT = 2097318,
			CSSETCONSTANTBUFFERS_UNBINDDELETINGOBJECT = 2097319,
			CREATECOMPUTESHADER_INVALIDCALL = 2097320,
			CREATECOMPUTESHADER_OUTOFMEMORY = 2097321,
			CREATECOMPUTESHADER_INVALIDSHADERBYTECODE = 2097322,
			CREATECOMPUTESHADER_INVALIDSHADERTYPE = 2097323,
			CREATECOMPUTESHADER_INVALIDCLASSLINKAGE = 2097324,
			DEVICE_CSSETSHADERRESOURCES_VIEWS_EMPTY = 2097325,
			CSSETCONSTANTBUFFERS_INVALIDBUFFER = 2097326,
			DEVICE_CSSETCONSTANTBUFFERS_BUFFERS_EMPTY = 2097327,
			DEVICE_CSSETSAMPLERS_SAMPLERS_EMPTY = 2097328,
			DEVICE_CSGETSHADERRESOURCES_VIEWS_EMPTY = 2097329,
			DEVICE_CSGETCONSTANTBUFFERS_BUFFERS_EMPTY = 2097330,
			DEVICE_CSGETSAMPLERS_SAMPLERS_EMPTY = 2097331,
			DEVICE_CREATEVERTEXSHADER_DOUBLEFLOATOPSNOTSUPPORTED = 2097332,
			DEVICE_CREATEHULLSHADER_DOUBLEFLOATOPSNOTSUPPORTED = 2097333,
			DEVICE_CREATEDOMAINSHADER_DOUBLEFLOATOPSNOTSUPPORTED = 2097334,
			DEVICE_CREATEGEOMETRYSHADER_DOUBLEFLOATOPSNOTSUPPORTED = 2097335,
			DEVICE_CREATEGEOMETRYSHADERWITHSTREAMOUTPUT_DOUBLEFLOATOPSNOTSUPPORTED = 2097336,
			DEVICE_CREATEPIXELSHADER_DOUBLEFLOATOPSNOTSUPPORTED = 2097337,
			DEVICE_CREATECOMPUTESHADER_DOUBLEFLOATOPSNOTSUPPORTED = 2097338,
			CREATEBUFFER_INVALIDSTRUCTURESTRIDE = 2097339,
			CREATESHADERRESOURCEVIEW_INVALIDFLAGS = 2097340,
			CREATEUNORDEREDACCESSVIEW_INVALIDRESOURCE = 2097341,
			CREATEUNORDEREDACCESSVIEW_INVALIDDESC = 2097342,
			CREATEUNORDEREDACCESSVIEW_INVALIDFORMAT = 2097343,
			CREATEUNORDEREDACCESSVIEW_INVALIDDIMENSIONS = 2097344,
			CREATEUNORDEREDACCESSVIEW_UNRECOGNIZEDFORMAT = 2097345,
			DEVICE_OMSETRENDERTARGETSANDUNORDEREDACCESSVIEWS_HAZARD = 2097346,
			DEVICE_OMSETRENDERTARGETSANDUNORDEREDACCESSVIEWS_OVERLAPPING_OLD_SLOTS = 2097347,
			DEVICE_OMSETRENDERTARGETSANDUNORDEREDACCESSVIEWS_NO_OP = 2097348,
			CSSETUNORDEREDACCESSVIEWS_UNBINDDELETINGOBJECT = 2097349,
			PSSETUNORDEREDACCESSVIEWS_UNBINDDELETINGOBJECT = 2097350,
			CREATEUNORDEREDACCESSVIEW_INVALIDARG_RETURN = 2097351,
			CREATEUNORDEREDACCESSVIEW_OUTOFMEMORY_RETURN = 2097352,
			CREATEUNORDEREDACCESSVIEW_TOOMANYOBJECTS = 2097353,
			DEVICE_CSSETUNORDEREDACCESSVIEWS_HAZARD = 2097354,
			CLEARUNORDEREDACCESSVIEW_DENORMFLUSH = 2097355,
			DEVICE_CSSETUNORDEREDACCESSS_VIEWS_EMPTY = 2097356,
			DEVICE_CSGETUNORDEREDACCESSS_VIEWS_EMPTY = 2097357,
			CREATEUNORDEREDACCESSVIEW_INVALIDFLAGS = 2097358,
			CREATESHADERRESESOURCEVIEW_TOOMANYOBJECTS = 2097359,
			DEVICE_DISPATCHINDIRECT_INVALID_ARG_BUFFER = 2097360,
			DEVICE_DISPATCHINDIRECT_OFFSET_UNALIGNED = 2097361,
			DEVICE_DISPATCHINDIRECT_OFFSET_OVERFLOW = 2097362,
			DEVICE_SETRESOURCEMINLOD_INVALIDCONTEXT = 2097363,
			DEVICE_SETRESOURCEMINLOD_INVALIDRESOURCE = 2097364,
			DEVICE_SETRESOURCEMINLOD_INVALIDMINLOD = 2097365,
			DEVICE_GETRESOURCEMINLOD_INVALIDCONTEXT = 2097366,
			DEVICE_GETRESOURCEMINLOD_INVALIDRESOURCE = 2097367,
			OMSETDEPTHSTENCIL_UNBINDDELETINGOBJECT = 2097368,
			CLEARDEPTHSTENCILVIEW_DEPTH_READONLY = 2097369,
			CLEARDEPTHSTENCILVIEW_STENCIL_READONLY = 2097370,
			CHECKFEATURESUPPORT_FORMAT_DEPRECATED = 2097371,
			DEVICE_UNORDEREDACCESSVIEW_RETURN_TYPE_MISMATCH = 2097372,
			DEVICE_UNORDEREDACCESSVIEW_NOT_SET = 2097373,
			DEVICE_DRAW_UNORDEREDACCESSVIEW_RENDERTARGETVIEW_OVERLAP = 2097374,
			DEVICE_UNORDEREDACCESSVIEW_DIMENSION_MISMATCH = 2097375,
			DEVICE_UNORDEREDACCESSVIEW_APPEND_UNSUPPORTED = 2097376,
			DEVICE_UNORDEREDACCESSVIEW_ATOMICS_UNSUPPORTED = 2097377,
			DEVICE_UNORDEREDACCESSVIEW_STRUCTURE_STRIDE_MISMATCH = 2097378,
			DEVICE_UNORDEREDACCESSVIEW_BUFFER_TYPE_MISMATCH = 2097379,
			DEVICE_UNORDEREDACCESSVIEW_RAW_UNSUPPORTED = 2097380,
			DEVICE_UNORDEREDACCESSVIEW_FORMAT_LD_UNSUPPORTED = 2097381,
			DEVICE_UNORDEREDACCESSVIEW_FORMAT_STORE_UNSUPPORTED = 2097382,
			DEVICE_UNORDEREDACCESSVIEW_ATOMIC_ADD_UNSUPPORTED = 2097383,
			DEVICE_UNORDEREDACCESSVIEW_ATOMIC_BITWISE_OPS_UNSUPPORTED = 2097384,
			DEVICE_UNORDEREDACCESSVIEW_ATOMIC_CMPSTORE_CMPEXCHANGE_UNSUPPORTED = 2097385,
			DEVICE_UNORDEREDACCESSVIEW_ATOMIC_EXCHANGE_UNSUPPORTED = 2097386,
			DEVICE_UNORDEREDACCESSVIEW_ATOMIC_SIGNED_MINMAX_UNSUPPORTED = 2097387,
			DEVICE_UNORDEREDACCESSVIEW_ATOMIC_UNSIGNED_MINMAX_UNSUPPORTED = 2097388,
			DEVICE_DISPATCH_BOUND_RESOURCE_MAPPED = 2097389,
			DEVICE_DISPATCH_THREADGROUPCOUNT_OVERFLOW = 2097390,
			DEVICE_DISPATCH_THREADGROUPCOUNT_ZERO = 2097391,
			DEVICE_SHADERRESOURCEVIEW_STRUCTURE_STRIDE_MISMATCH = 2097392,
			DEVICE_SHADERRESOURCEVIEW_BUFFER_TYPE_MISMATCH = 2097393,
			DEVICE_SHADERRESOURCEVIEW_RAW_UNSUPPORTED = 2097394,
			DEVICE_DISPATCH_UNSUPPORTED = 2097395,
			DEVICE_DISPATCHINDIRECT_UNSUPPORTED = 2097396,
			COPYSTRUCTURECOUNT_INVALIDOFFSET = 2097397,
			COPYSTRUCTURECOUNT_LARGEOFFSET = 2097398,
			COPYSTRUCTURECOUNT_INVALIDDESTINATIONSTATE = 2097399,
			COPYSTRUCTURECOUNT_INVALIDSOURCESTATE = 2097400,
			CHECKFORMATSUPPORT_FORMAT_NOT_SUPPORTED = 2097401,
			DEVICE_CSSETUNORDEREDACCESSVIEWS_INVALIDVIEW = 2097402,
			DEVICE_CSSETUNORDEREDACCESSVIEWS_INVALIDOFFSET = 2097403,
			DEVICE_CSSETUNORDEREDACCESSVIEWS_TOOMANYVIEWS = 2097404,
			CLEARUNORDEREDACCESSVIEWFLOAT_INVALIDFORMAT = 2097405,
			DEVICE_UNORDEREDACCESSVIEW_COUNTER_UNSUPPORTED = 2097406,
			REF_WARNING = 2097407,
			DEVICE_DRAW_PIXEL_SHADER_WITHOUT_RTV_OR_DSV = 2097408,
			SHADER_ABORT = 2097409,
			SHADER_MESSAGE = 2097410,
			SHADER_ERROR = 2097411,
			OFFERRESOURCES_INVALIDRESOURCE = 2097412,
			HSSETSAMPLERS_UNBINDDELETINGOBJECT = 2097413,
			DSSETSAMPLERS_UNBINDDELETINGOBJECT = 2097414,
			CSSETSAMPLERS_UNBINDDELETINGOBJECT = 2097415,
			HSSETSHADER_UNBINDDELETINGOBJECT = 2097416,
			DSSETSHADER_UNBINDDELETINGOBJECT = 2097417,
			CSSETSHADER_UNBINDDELETINGOBJECT = 2097418,
			ENQUEUESETEVENT_INVALIDARG_RETURN = 2097419,
			ENQUEUESETEVENT_OUTOFMEMORY_RETURN = 2097420,
			ENQUEUESETEVENT_ACCESSDENIED_RETURN = 2097421,
			DEVICE_OMSETRENDERTARGETSANDUNORDEREDACCESSVIEWS_NUMUAVS_INVALIDRANGE = 2097422,
			USE_OF_ZERO_REFCOUNT_OBJECT = 2097423,
			D3D11_MESSAGES_END = 2097424,
			D3D11_1_MESSAGES_START = 3145728,
			CREATE_VIDEODECODER = 3145729,
			CREATE_VIDEOPROCESSORENUM = 3145730,
			CREATE_VIDEOPROCESSOR = 3145731,
			CREATE_DECODEROUTPUTVIEW = 3145732,
			CREATE_PROCESSORINPUTVIEW = 3145733,
			CREATE_PROCESSOROUTPUTVIEW = 3145734,
			CREATE_DEVICECONTEXTSTATE = 3145735,
			LIVE_VIDEODECODER = 3145736,
			LIVE_VIDEOPROCESSORENUM = 3145737,
			LIVE_VIDEOPROCESSOR = 3145738,
			LIVE_DECODEROUTPUTVIEW = 3145739,
			LIVE_PROCESSORINPUTVIEW = 3145740,
			LIVE_PROCESSOROUTPUTVIEW = 3145741,
			LIVE_DEVICECONTEXTSTATE = 3145742,
			DESTROY_VIDEODECODER = 3145743,
			DESTROY_VIDEOPROCESSORENUM = 3145744,
			DESTROY_VIDEOPROCESSOR = 3145745,
			DESTROY_DECODEROUTPUTVIEW = 3145746,
			DESTROY_PROCESSORINPUTVIEW = 3145747,
			DESTROY_PROCESSOROUTPUTVIEW = 3145748,
			DESTROY_DEVICECONTEXTSTATE = 3145749,
			CREATEDEVICECONTEXTSTATE_INVALIDFLAGS = 3145750,
			CREATEDEVICECONTEXTSTATE_INVALIDFEATURELEVEL = 3145751,
			CREATEDEVICECONTEXTSTATE_FEATURELEVELS_NOT_SUPPORTED = 3145752,
			CREATEDEVICECONTEXTSTATE_INVALIDREFIID = 3145753,
			DEVICE_DISCARDVIEW_INVALIDVIEW = 3145754,
			COPYSUBRESOURCEREGION1_INVALIDCOPYFLAGS = 3145755,
			UPDATESUBRESOURCE1_INVALIDCOPYFLAGS = 3145756,
			CREATERASTERIZERSTATE_INVALIDFORCEDSAMPLECOUNT = 3145757,
			CREATEVIDEODECODER_OUTOFMEMORY_RETURN = 3145758,
			CREATEVIDEODECODER_NULLPARAM = 3145759,
			CREATEVIDEODECODER_INVALIDFORMAT = 3145760,
			CREATEVIDEODECODER_ZEROWIDTHHEIGHT = 3145761,
			CREATEVIDEODECODER_DRIVER_INVALIDBUFFERSIZE = 3145762,
			CREATEVIDEODECODER_DRIVER_INVALIDBUFFERUSAGE = 3145763,
			GETVIDEODECODERPROFILECOUNT_OUTOFMEMORY = 3145764,
			GETVIDEODECODERPROFILE_NULLPARAM = 3145765,
			GETVIDEODECODERPROFILE_INVALIDINDEX = 3145766,
			GETVIDEODECODERPROFILE_OUTOFMEMORY_RETURN = 3145767,
			CHECKVIDEODECODERFORMAT_NULLPARAM = 3145768,
			CHECKVIDEODECODERFORMAT_OUTOFMEMORY_RETURN = 3145769,
			GETVIDEODECODERCONFIGCOUNT_NULLPARAM = 3145770,
			GETVIDEODECODERCONFIGCOUNT_OUTOFMEMORY_RETURN = 3145771,
			GETVIDEODECODERCONFIG_NULLPARAM = 3145772,
			GETVIDEODECODERCONFIG_INVALIDINDEX = 3145773,
			GETVIDEODECODERCONFIG_OUTOFMEMORY_RETURN = 3145774,
			GETDECODERCREATIONPARAMS_NULLPARAM = 3145775,
			GETDECODERDRIVERHANDLE_NULLPARAM = 3145776,
			GETDECODERBUFFER_NULLPARAM = 3145777,
			GETDECODERBUFFER_INVALIDBUFFER = 3145778,
			GETDECODERBUFFER_INVALIDTYPE = 3145779,
			GETDECODERBUFFER_LOCKED = 3145780,
			RELEASEDECODERBUFFER_NULLPARAM = 3145781,
			RELEASEDECODERBUFFER_INVALIDTYPE = 3145782,
			RELEASEDECODERBUFFER_NOTLOCKED = 3145783,
			DECODERBEGINFRAME_NULLPARAM = 3145784,
			DECODERBEGINFRAME_HAZARD = 3145785,
			DECODERENDFRAME_NULLPARAM = 3145786,
			SUBMITDECODERBUFFERS_NULLPARAM = 3145787,
			SUBMITDECODERBUFFERS_INVALIDTYPE = 3145788,
			DECODEREXTENSION_NULLPARAM = 3145789,
			DECODEREXTENSION_INVALIDRESOURCE = 3145790,
			CREATEVIDEOPROCESSORENUMERATOR_OUTOFMEMORY_RETURN = 3145791,
			CREATEVIDEOPROCESSORENUMERATOR_NULLPARAM = 3145792,
			CREATEVIDEOPROCESSORENUMERATOR_INVALIDFRAMEFORMAT = 3145793,
			CREATEVIDEOPROCESSORENUMERATOR_INVALIDUSAGE = 3145794,
			CREATEVIDEOPROCESSORENUMERATOR_INVALIDINPUTFRAMERATE = 3145795,
			CREATEVIDEOPROCESSORENUMERATOR_INVALIDOUTPUTFRAMERATE = 3145796,
			CREATEVIDEOPROCESSORENUMERATOR_INVALIDWIDTHHEIGHT = 3145797,
			GETVIDEOPROCESSORCONTENTDESC_NULLPARAM = 3145798,
			CHECKVIDEOPROCESSORFORMAT_NULLPARAM = 3145799,
			GETVIDEOPROCESSORCAPS_NULLPARAM = 3145800,
			GETVIDEOPROCESSORRATECONVERSIONCAPS_NULLPARAM = 3145801,
			GETVIDEOPROCESSORRATECONVERSIONCAPS_INVALIDINDEX = 3145802,
			GETVIDEOPROCESSORCUSTOMRATE_NULLPARAM = 3145803,
			GETVIDEOPROCESSORCUSTOMRATE_INVALIDINDEX = 3145804,
			GETVIDEOPROCESSORFILTERRANGE_NULLPARAM = 3145805,
			GETVIDEOPROCESSORFILTERRANGE_UNSUPPORTED = 3145806,
			CREATEVIDEOPROCESSOR_OUTOFMEMORY_RETURN = 3145807,
			CREATEVIDEOPROCESSOR_NULLPARAM = 3145808,
			VIDEOPROCESSORSETOUTPUTTARGETRECT_NULLPARAM = 3145809,
			VIDEOPROCESSORSETOUTPUTBACKGROUNDCOLOR_NULLPARAM = 3145810,
			VIDEOPROCESSORSETOUTPUTBACKGROUNDCOLOR_INVALIDALPHA = 3145811,
			VIDEOPROCESSORSETOUTPUTCOLORSPACE_NULLPARAM = 3145812,
			VIDEOPROCESSORSETOUTPUTALPHAFILLMODE_NULLPARAM = 3145813,
			VIDEOPROCESSORSETOUTPUTALPHAFILLMODE_UNSUPPORTED = 3145814,
			VIDEOPROCESSORSETOUTPUTALPHAFILLMODE_INVALIDSTREAM = 3145815,
			VIDEOPROCESSORSETOUTPUTALPHAFILLMODE_INVALIDFILLMODE = 3145816,
			VIDEOPROCESSORSETOUTPUTCONSTRICTION_NULLPARAM = 3145817,
			VIDEOPROCESSORSETOUTPUTSTEREOMODE_NULLPARAM = 3145818,
			VIDEOPROCESSORSETOUTPUTSTEREOMODE_UNSUPPORTED = 3145819,
			VIDEOPROCESSORSETOUTPUTEXTENSION_NULLPARAM = 3145820,
			VIDEOPROCESSORGETOUTPUTTARGETRECT_NULLPARAM = 3145821,
			VIDEOPROCESSORGETOUTPUTBACKGROUNDCOLOR_NULLPARAM = 3145822,
			VIDEOPROCESSORGETOUTPUTCOLORSPACE_NULLPARAM = 3145823,
			VIDEOPROCESSORGETOUTPUTALPHAFILLMODE_NULLPARAM = 3145824,
			VIDEOPROCESSORGETOUTPUTCONSTRICTION_NULLPARAM = 3145825,
			VIDEOPROCESSORSETOUTPUTCONSTRICTION_UNSUPPORTED = 3145826,
			VIDEOPROCESSORSETOUTPUTCONSTRICTION_INVALIDSIZE = 3145827,
			VIDEOPROCESSORGETOUTPUTSTEREOMODE_NULLPARAM = 3145828,
			VIDEOPROCESSORGETOUTPUTEXTENSION_NULLPARAM = 3145829,
			VIDEOPROCESSORSETSTREAMFRAMEFORMAT_NULLPARAM = 3145830,
			VIDEOPROCESSORSETSTREAMFRAMEFORMAT_INVALIDFORMAT = 3145831,
			VIDEOPROCESSORSETSTREAMFRAMEFORMAT_INVALIDSTREAM = 3145832,
			VIDEOPROCESSORSETSTREAMCOLORSPACE_NULLPARAM = 3145833,
			VIDEOPROCESSORSETSTREAMCOLORSPACE_INVALIDSTREAM = 3145834,
			VIDEOPROCESSORSETSTREAMOUTPUTRATE_NULLPARAM = 3145835,
			VIDEOPROCESSORSETSTREAMOUTPUTRATE_INVALIDRATE = 3145836,
			VIDEOPROCESSORSETSTREAMOUTPUTRATE_INVALIDFLAG = 3145837,
			VIDEOPROCESSORSETSTREAMOUTPUTRATE_INVALIDSTREAM = 3145838,
			VIDEOPROCESSORSETSTREAMSOURCERECT_NULLPARAM = 3145839,
			VIDEOPROCESSORSETSTREAMSOURCERECT_INVALIDSTREAM = 3145840,
			VIDEOPROCESSORSETSTREAMSOURCERECT_INVALIDRECT = 3145841,
			VIDEOPROCESSORSETSTREAMDESTRECT_NULLPARAM = 3145842,
			VIDEOPROCESSORSETSTREAMDESTRECT_INVALIDSTREAM = 3145843,
			VIDEOPROCESSORSETSTREAMDESTRECT_INVALIDRECT = 3145844,
			VIDEOPROCESSORSETSTREAMALPHA_NULLPARAM = 3145845,
			VIDEOPROCESSORSETSTREAMALPHA_INVALIDSTREAM = 3145846,
			VIDEOPROCESSORSETSTREAMALPHA_INVALIDALPHA = 3145847,
			VIDEOPROCESSORSETSTREAMPALETTE_NULLPARAM = 3145848,
			VIDEOPROCESSORSETSTREAMPALETTE_INVALIDSTREAM = 3145849,
			VIDEOPROCESSORSETSTREAMPALETTE_INVALIDCOUNT = 3145850,
			VIDEOPROCESSORSETSTREAMPALETTE_INVALIDALPHA = 3145851,
			VIDEOPROCESSORSETSTREAMPIXELASPECTRATIO_NULLPARAM = 3145852,
			VIDEOPROCESSORSETSTREAMPIXELASPECTRATIO_INVALIDSTREAM = 3145853,
			VIDEOPROCESSORSETSTREAMPIXELASPECTRATIO_INVALIDRATIO = 3145854,
			VIDEOPROCESSORSETSTREAMLUMAKEY_NULLPARAM = 3145855,
			VIDEOPROCESSORSETSTREAMLUMAKEY_INVALIDSTREAM = 3145856,
			VIDEOPROCESSORSETSTREAMLUMAKEY_INVALIDRANGE = 3145857,
			VIDEOPROCESSORSETSTREAMLUMAKEY_UNSUPPORTED = 3145858,
			VIDEOPROCESSORSETSTREAMSTEREOFORMAT_NULLPARAM = 3145859,
			VIDEOPROCESSORSETSTREAMSTEREOFORMAT_INVALIDSTREAM = 3145860,
			VIDEOPROCESSORSETSTREAMSTEREOFORMAT_UNSUPPORTED = 3145861,
			VIDEOPROCESSORSETSTREAMSTEREOFORMAT_FLIPUNSUPPORTED = 3145862,
			VIDEOPROCESSORSETSTREAMSTEREOFORMAT_MONOOFFSETUNSUPPORTED = 3145863,
			VIDEOPROCESSORSETSTREAMSTEREOFORMAT_FORMATUNSUPPORTED = 3145864,
			VIDEOPROCESSORSETSTREAMSTEREOFORMAT_INVALIDFORMAT = 3145865,
			VIDEOPROCESSORSETSTREAMAUTOPROCESSINGMODE_NULLPARAM = 3145866,
			VIDEOPROCESSORSETSTREAMAUTOPROCESSINGMODE_INVALIDSTREAM = 3145867,
			VIDEOPROCESSORSETSTREAMFILTER_NULLPARAM = 3145868,
			VIDEOPROCESSORSETSTREAMFILTER_INVALIDSTREAM = 3145869,
			VIDEOPROCESSORSETSTREAMFILTER_INVALIDFILTER = 3145870,
			VIDEOPROCESSORSETSTREAMFILTER_UNSUPPORTED = 3145871,
			VIDEOPROCESSORSETSTREAMFILTER_INVALIDLEVEL = 3145872,
			VIDEOPROCESSORSETSTREAMEXTENSION_NULLPARAM = 3145873,
			VIDEOPROCESSORSETSTREAMEXTENSION_INVALIDSTREAM = 3145874,
			VIDEOPROCESSORGETSTREAMFRAMEFORMAT_NULLPARAM = 3145875,
			VIDEOPROCESSORGETSTREAMCOLORSPACE_NULLPARAM = 3145876,
			VIDEOPROCESSORGETSTREAMOUTPUTRATE_NULLPARAM = 3145877,
			VIDEOPROCESSORGETSTREAMSOURCERECT_NULLPARAM = 3145878,
			VIDEOPROCESSORGETSTREAMDESTRECT_NULLPARAM = 3145879,
			VIDEOPROCESSORGETSTREAMALPHA_NULLPARAM = 3145880,
			VIDEOPROCESSORGETSTREAMPALETTE_NULLPARAM = 3145881,
			VIDEOPROCESSORGETSTREAMPIXELASPECTRATIO_NULLPARAM = 3145882,
			VIDEOPROCESSORGETSTREAMLUMAKEY_NULLPARAM = 3145883,
			VIDEOPROCESSORGETSTREAMSTEREOFORMAT_NULLPARAM = 3145884,
			VIDEOPROCESSORGETSTREAMAUTOPROCESSINGMODE_NULLPARAM = 3145885,
			VIDEOPROCESSORGETSTREAMFILTER_NULLPARAM = 3145886,
			VIDEOPROCESSORGETSTREAMEXTENSION_NULLPARAM = 3145887,
			VIDEOPROCESSORGETSTREAMEXTENSION_INVALIDSTREAM = 3145888,
			VIDEOPROCESSORBLT_NULLPARAM = 3145889,
			VIDEOPROCESSORBLT_INVALIDSTREAMCOUNT = 3145890,
			VIDEOPROCESSORBLT_TARGETRECT = 3145891,
			VIDEOPROCESSORBLT_INVALIDOUTPUT = 3145892,
			VIDEOPROCESSORBLT_INVALIDPASTFRAMES = 3145893,
			VIDEOPROCESSORBLT_INVALIDFUTUREFRAMES = 3145894,
			VIDEOPROCESSORBLT_INVALIDSOURCERECT = 3145895,
			VIDEOPROCESSORBLT_INVALIDDESTRECT = 3145896,
			VIDEOPROCESSORBLT_INVALIDINPUTRESOURCE = 3145897,
			VIDEOPROCESSORBLT_INVALIDARRAYSIZE = 3145898,
			VIDEOPROCESSORBLT_INVALIDARRAY = 3145899,
			VIDEOPROCESSORBLT_RIGHTEXPECTED = 3145900,
			VIDEOPROCESSORBLT_RIGHTNOTEXPECTED = 3145901,
			VIDEOPROCESSORBLT_STEREONOTENABLED = 3145902,
			VIDEOPROCESSORBLT_INVALIDRIGHTRESOURCE = 3145903,
			VIDEOPROCESSORBLT_NOSTEREOSTREAMS = 3145904,
			VIDEOPROCESSORBLT_INPUTHAZARD = 3145905,
			VIDEOPROCESSORBLT_OUTPUTHAZARD = 3145906,
			CREATEVIDEODECODEROUTPUTVIEW_OUTOFMEMORY_RETURN = 3145907,
			CREATEVIDEODECODEROUTPUTVIEW_NULLPARAM = 3145908,
			CREATEVIDEODECODEROUTPUTVIEW_INVALIDTYPE = 3145909,
			CREATEVIDEODECODEROUTPUTVIEW_INVALIDBIND = 3145910,
			CREATEVIDEODECODEROUTPUTVIEW_UNSUPPORTEDFORMAT = 3145911,
			CREATEVIDEODECODEROUTPUTVIEW_INVALIDMIP = 3145912,
			CREATEVIDEODECODEROUTPUTVIEW_UNSUPPORTEMIP = 3145913,
			CREATEVIDEODECODEROUTPUTVIEW_INVALIDARRAYSIZE = 3145914,
			CREATEVIDEODECODEROUTPUTVIEW_INVALIDARRAY = 3145915,
			CREATEVIDEODECODEROUTPUTVIEW_INVALIDDIMENSION = 3145916,
			CREATEVIDEOPROCESSORINPUTVIEW_OUTOFMEMORY_RETURN = 3145917,
			CREATEVIDEOPROCESSORINPUTVIEW_NULLPARAM = 3145918,
			CREATEVIDEOPROCESSORINPUTVIEW_INVALIDTYPE = 3145919,
			CREATEVIDEOPROCESSORINPUTVIEW_INVALIDBIND = 3145920,
			CREATEVIDEOPROCESSORINPUTVIEW_INVALIDMISC = 3145921,
			CREATEVIDEOPROCESSORINPUTVIEW_INVALIDUSAGE = 3145922,
			CREATEVIDEOPROCESSORINPUTVIEW_INVALIDFORMAT = 3145923,
			CREATEVIDEOPROCESSORINPUTVIEW_INVALIDFOURCC = 3145924,
			CREATEVIDEOPROCESSORINPUTVIEW_INVALIDMIP = 3145925,
			CREATEVIDEOPROCESSORINPUTVIEW_UNSUPPORTEDMIP = 3145926,
			CREATEVIDEOPROCESSORINPUTVIEW_INVALIDARRAYSIZE = 3145927,
			CREATEVIDEOPROCESSORINPUTVIEW_INVALIDARRAY = 3145928,
			CREATEVIDEOPROCESSORINPUTVIEW_INVALIDDIMENSION = 3145929,
			CREATEVIDEOPROCESSOROUTPUTVIEW_OUTOFMEMORY_RETURN = 3145930,
			CREATEVIDEOPROCESSOROUTPUTVIEW_NULLPARAM = 3145931,
			CREATEVIDEOPROCESSOROUTPUTVIEW_INVALIDTYPE = 3145932,
			CREATEVIDEOPROCESSOROUTPUTVIEW_INVALIDBIND = 3145933,
			CREATEVIDEOPROCESSOROUTPUTVIEW_INVALIDFORMAT = 3145934,
			CREATEVIDEOPROCESSOROUTPUTVIEW_INVALIDMIP = 3145935,
			CREATEVIDEOPROCESSOROUTPUTVIEW_UNSUPPORTEDMIP = 3145936,
			CREATEVIDEOPROCESSOROUTPUTVIEW_UNSUPPORTEDARRAY = 3145937,
			CREATEVIDEOPROCESSOROUTPUTVIEW_INVALIDARRAY = 3145938,
			CREATEVIDEOPROCESSOROUTPUTVIEW_INVALIDDIMENSION = 3145939,
			DEVICE_DRAW_INVALID_USE_OF_FORCED_SAMPLE_COUNT = 3145940,
			CREATEBLENDSTATE_INVALIDLOGICOPS = 3145941,
			CREATESHADERRESOURCEVIEW_INVALIDDARRAYWITHDECODER = 3145942,
			CREATEUNORDEREDACCESSVIEW_INVALIDDARRAYWITHDECODER = 3145943,
			CREATERENDERTARGETVIEW_INVALIDDARRAYWITHDECODER = 3145944,
			DEVICE_LOCKEDOUT_INTERFACE = 3145945,
			REF_WARNING_ATOMIC_INCONSISTENT = 3145946,
			REF_WARNING_READING_UNINITIALIZED_RESOURCE = 3145947,
			REF_WARNING_RAW_HAZARD = 3145948,
			REF_WARNING_WAR_HAZARD = 3145949,
			REF_WARNING_WAW_HAZARD = 3145950,
			CREATECRYPTOSESSION_NULLPARAM = 3145951,
			CREATECRYPTOSESSION_OUTOFMEMORY_RETURN = 3145952,
			GETCRYPTOTYPE_NULLPARAM = 3145953,
			GETDECODERPROFILE_NULLPARAM = 3145954,
			GETCRYPTOSESSIONCERTIFICATESIZE_NULLPARAM = 3145955,
			GETCRYPTOSESSIONCERTIFICATE_NULLPARAM = 3145956,
			GETCRYPTOSESSIONCERTIFICATE_WRONGSIZE = 3145957,
			GETCRYPTOSESSIONHANDLE_WRONGSIZE = 3145958,
			NEGOTIATECRPYTOSESSIONKEYEXCHANGE_NULLPARAM = 3145959,
			ENCRYPTIONBLT_UNSUPPORTED = 3145960,
			ENCRYPTIONBLT_NULLPARAM = 3145961,
			ENCRYPTIONBLT_SRC_WRONGDEVICE = 3145962,
			ENCRYPTIONBLT_DST_WRONGDEVICE = 3145963,
			ENCRYPTIONBLT_FORMAT_MISMATCH = 3145964,
			ENCRYPTIONBLT_SIZE_MISMATCH = 3145965,
			ENCRYPTIONBLT_SRC_MULTISAMPLED = 3145966,
			ENCRYPTIONBLT_DST_NOT_STAGING = 3145967,
			ENCRYPTIONBLT_SRC_MAPPED = 3145968,
			ENCRYPTIONBLT_DST_MAPPED = 3145969,
			ENCRYPTIONBLT_SRC_OFFERED = 3145970,
			ENCRYPTIONBLT_DST_OFFERED = 3145971,
			ENCRYPTIONBLT_SRC_CONTENT_UNDEFINED = 3145972,
			DECRYPTIONBLT_UNSUPPORTED = 3145973,
			DECRYPTIONBLT_NULLPARAM = 3145974,
			DECRYPTIONBLT_SRC_WRONGDEVICE = 3145975,
			DECRYPTIONBLT_DST_WRONGDEVICE = 3145976,
			DECRYPTIONBLT_FORMAT_MISMATCH = 3145977,
			DECRYPTIONBLT_SIZE_MISMATCH = 3145978,
			DECRYPTIONBLT_DST_MULTISAMPLED = 3145979,
			DECRYPTIONBLT_SRC_NOT_STAGING = 3145980,
			DECRYPTIONBLT_DST_NOT_RENDER_TARGET = 3145981,
			DECRYPTIONBLT_SRC_MAPPED = 3145982,
			DECRYPTIONBLT_DST_MAPPED = 3145983,
			DECRYPTIONBLT_SRC_OFFERED = 3145984,
			DECRYPTIONBLT_DST_OFFERED = 3145985,
			DECRYPTIONBLT_SRC_CONTENT_UNDEFINED = 3145986,
			STARTSESSIONKEYREFRESH_NULLPARAM = 3145987,
			STARTSESSIONKEYREFRESH_INVALIDSIZE = 3145988,
			FINISHSESSIONKEYREFRESH_NULLPARAM = 3145989,
			GETENCRYPTIONBLTKEY_NULLPARAM = 3145990,
			GETENCRYPTIONBLTKEY_INVALIDSIZE = 3145991,
			GETCONTENTPROTECTIONCAPS_NULLPARAM = 3145992,
			CHECKCRYPTOKEYEXCHANGE_NULLPARAM = 3145993,
			CHECKCRYPTOKEYEXCHANGE_INVALIDINDEX = 3145994,
			CREATEAUTHENTICATEDCHANNEL_NULLPARAM = 3145995,
			CREATEAUTHENTICATEDCHANNEL_UNSUPPORTED = 3145996,
			CREATEAUTHENTICATEDCHANNEL_INVALIDTYPE = 3145997,
			CREATEAUTHENTICATEDCHANNEL_OUTOFMEMORY_RETURN = 3145998,
			GETAUTHENTICATEDCHANNELCERTIFICATESIZE_INVALIDCHANNEL = 3145999,
			GETAUTHENTICATEDCHANNELCERTIFICATESIZE_NULLPARAM = 3146000,
			GETAUTHENTICATEDCHANNELCERTIFICATE_INVALIDCHANNEL = 3146001,
			GETAUTHENTICATEDCHANNELCERTIFICATE_NULLPARAM = 3146002,
			GETAUTHENTICATEDCHANNELCERTIFICATE_WRONGSIZE = 3146003,
			NEGOTIATEAUTHENTICATEDCHANNELKEYEXCHANGE_INVALIDCHANNEL = 3146004,
			NEGOTIATEAUTHENTICATEDCHANNELKEYEXCHANGE_NULLPARAM = 3146005,
			QUERYAUTHENTICATEDCHANNEL_NULLPARAM = 3146006,
			QUERYAUTHENTICATEDCHANNEL_WRONGCHANNEL = 3146007,
			QUERYAUTHENTICATEDCHANNEL_UNSUPPORTEDQUERY = 3146008,
			QUERYAUTHENTICATEDCHANNEL_WRONGSIZE = 3146009,
			QUERYAUTHENTICATEDCHANNEL_INVALIDPROCESSINDEX = 3146010,
			CONFIGUREAUTHENTICATEDCHANNEL_NULLPARAM = 3146011,
			CONFIGUREAUTHENTICATEDCHANNEL_WRONGCHANNEL = 3146012,
			CONFIGUREAUTHENTICATEDCHANNEL_UNSUPPORTEDCONFIGURE = 3146013,
			CONFIGUREAUTHENTICATEDCHANNEL_WRONGSIZE = 3146014,
			CONFIGUREAUTHENTICATEDCHANNEL_INVALIDPROCESSIDTYPE = 3146015,
			VSSETCONSTANTBUFFERS_INVALIDBUFFEROFFSETORCOUNT = 3146016,
			DSSETCONSTANTBUFFERS_INVALIDBUFFEROFFSETORCOUNT = 3146017,
			HSSETCONSTANTBUFFERS_INVALIDBUFFEROFFSETORCOUNT = 3146018,
			GSSETCONSTANTBUFFERS_INVALIDBUFFEROFFSETORCOUNT = 3146019,
			PSSETCONSTANTBUFFERS_INVALIDBUFFEROFFSETORCOUNT = 3146020,
			CSSETCONSTANTBUFFERS_INVALIDBUFFEROFFSETORCOUNT = 3146021,
			NEGOTIATECRPYTOSESSIONKEYEXCHANGE_INVALIDSIZE = 3146022,
			NEGOTIATEAUTHENTICATEDCHANNELKEYEXCHANGE_INVALIDSIZE = 3146023,
			OFFERRESOURCES_INVALIDPRIORITY = 3146024,
			GETCRYPTOSESSIONHANDLE_OUTOFMEMORY = 3146025,
			ACQUIREHANDLEFORCAPTURE_NULLPARAM = 3146026,
			ACQUIREHANDLEFORCAPTURE_INVALIDTYPE = 3146027,
			ACQUIREHANDLEFORCAPTURE_INVALIDBIND = 3146028,
			ACQUIREHANDLEFORCAPTURE_INVALIDARRAY = 3146029,
			VIDEOPROCESSORSETSTREAMROTATION_NULLPARAM = 3146030,
			VIDEOPROCESSORSETSTREAMROTATION_INVALIDSTREAM = 3146031,
			VIDEOPROCESSORSETSTREAMROTATION_INVALID = 3146032,
			VIDEOPROCESSORSETSTREAMROTATION_UNSUPPORTED = 3146033,
			VIDEOPROCESSORGETSTREAMROTATION_NULLPARAM = 3146034,
			DEVICE_CLEARVIEW_INVALIDVIEW = 3146035,
			DEVICE_CREATEVERTEXSHADER_DOUBLEEXTENSIONSNOTSUPPORTED = 3146036,
			DEVICE_CREATEVERTEXSHADER_SHADEREXTENSIONSNOTSUPPORTED = 3146037,
			DEVICE_CREATEHULLSHADER_DOUBLEEXTENSIONSNOTSUPPORTED = 3146038,
			DEVICE_CREATEHULLSHADER_SHADEREXTENSIONSNOTSUPPORTED = 3146039,
			DEVICE_CREATEDOMAINSHADER_DOUBLEEXTENSIONSNOTSUPPORTED = 3146040,
			DEVICE_CREATEDOMAINSHADER_SHADEREXTENSIONSNOTSUPPORTED = 3146041,
			DEVICE_CREATEGEOMETRYSHADER_DOUBLEEXTENSIONSNOTSUPPORTED = 3146042,
			DEVICE_CREATEGEOMETRYSHADER_SHADEREXTENSIONSNOTSUPPORTED = 3146043,
			DEVICE_CREATEGEOMETRYSHADERWITHSTREAMOUTPUT_DOUBLEEXTENSIONSNOTSUPPORTED = 3146044,
			DEVICE_CREATEGEOMETRYSHADERWITHSTREAMOUTPUT_SHADEREXTENSIONSNOTSUPPORTED = 3146045,
			DEVICE_CREATEPIXELSHADER_DOUBLEEXTENSIONSNOTSUPPORTED = 3146046,
			DEVICE_CREATEPIXELSHADER_SHADEREXTENSIONSNOTSUPPORTED = 3146047,
			DEVICE_CREATECOMPUTESHADER_DOUBLEEXTENSIONSNOTSUPPORTED = 3146048,
			DEVICE_CREATECOMPUTESHADER_SHADEREXTENSIONSNOTSUPPORTED = 3146049,
			DEVICE_SHADER_LINKAGE_MINPRECISION = 3146050,
			VIDEOPROCESSORSETSTREAMALPHA_UNSUPPORTED = 3146051,
			VIDEOPROCESSORSETSTREAMPIXELASPECTRATIO_UNSUPPORTED = 3146052,
			DEVICE_CREATEVERTEXSHADER_UAVSNOTSUPPORTED = 3146053,
			DEVICE_CREATEHULLSHADER_UAVSNOTSUPPORTED = 3146054,
			DEVICE_CREATEDOMAINSHADER_UAVSNOTSUPPORTED = 3146055,
			DEVICE_CREATEGEOMETRYSHADER_UAVSNOTSUPPORTED = 3146056,
			DEVICE_CREATEGEOMETRYSHADERWITHSTREAMOUTPUT_UAVSNOTSUPPORTED = 3146057,
			DEVICE_CREATEPIXELSHADER_UAVSNOTSUPPORTED = 3146058,
			DEVICE_CREATECOMPUTESHADER_UAVSNOTSUPPORTED = 3146059,
			DEVICE_OMSETRENDERTARGETSANDUNORDEREDACCESSVIEWS_INVALIDOFFSET = 3146060,
			DEVICE_OMSETRENDERTARGETSANDUNORDEREDACCESSVIEWS_TOOMANYVIEWS = 3146061,
			DEVICE_CLEARVIEW_NOTSUPPORTED = 3146062,
			SWAPDEVICECONTEXTSTATE_NOTSUPPORTED = 3146063,
			UPDATESUBRESOURCE_PREFERUPDATESUBRESOURCE1 = 3146064,
			GETDC_INACCESSIBLE = 3146065,
			DEVICE_CLEARVIEW_INVALIDRECT = 3146066,
			DEVICE_DRAW_SAMPLE_MASK_IGNORED_ON_FL9 = 3146067,
			DEVICE_OPEN_SHARED_RESOURCE1_NOT_SUPPORTED = 3146068,
			DEVICE_OPEN_SHARED_RESOURCE_BY_NAME_NOT_SUPPORTED = 3146069,
			ENQUEUESETEVENT_NOT_SUPPORTED = 3146070,
			OFFERRELEASE_NOT_SUPPORTED = 3146071,
			OFFERRESOURCES_INACCESSIBLE = 3146072,
			CREATEVIDEOPROCESSORINPUTVIEW_INVALIDMSAA = 3146073,
			CREATEVIDEOPROCESSOROUTPUTVIEW_INVALIDMSAA = 3146074,
			DEVICE_CLEARVIEW_INVALIDSOURCERECT = 3146075,
			DEVICE_CLEARVIEW_EMPTYRECT = 3146076,
			UPDATESUBRESOURCE_EMPTYDESTBOX = 3146077,
			COPYSUBRESOURCEREGION_EMPTYSOURCEBOX = 3146078,
			DEVICE_DRAW_OM_RENDER_TARGET_DOES_NOT_SUPPORT_LOGIC_OPS = 3146079,
			DEVICE_DRAW_DEPTHSTENCILVIEW_NOT_SET = 3146080,
			DEVICE_DRAW_RENDERTARGETVIEW_NOT_SET = 3146081,
			DEVICE_DRAW_RENDERTARGETVIEW_NOT_SET_DUE_TO_FLIP_PRESENT = 3146082,
			DEVICE_UNORDEREDACCESSVIEW_NOT_SET_DUE_TO_FLIP_PRESENT = 3146083,
			GETDATAFORNEWHARDWAREKEY_NULLPARAM = 3146084,
			CHECKCRYPTOSESSIONSTATUS_NULLPARAM = 3146085,
			GETCRYPTOSESSIONPRIVATEDATASIZE_NULLPARAM = 3146086,
			GETVIDEODECODERCAPS_NULLPARAM = 3146087,
			GETVIDEODECODERCAPS_ZEROWIDTHHEIGHT = 3146088,
			CHECKVIDEODECODERDOWNSAMPLING_NULLPARAM = 3146089,
			CHECKVIDEODECODERDOWNSAMPLING_INVALIDCOLORSPACE = 3146090,
			CHECKVIDEODECODERDOWNSAMPLING_ZEROWIDTHHEIGHT = 3146091,
			VIDEODECODERENABLEDOWNSAMPLING_NULLPARAM = 3146092,
			VIDEODECODERENABLEDOWNSAMPLING_UNSUPPORTED = 3146093,
			VIDEODECODERUPDATEDOWNSAMPLING_NULLPARAM = 3146094,
			VIDEODECODERUPDATEDOWNSAMPLING_UNSUPPORTED = 3146095,
			CHECKVIDEOPROCESSORFORMATCONVERSION_NULLPARAM = 3146096,
			VIDEOPROCESSORSETOUTPUTCOLORSPACE1_NULLPARAM = 3146097,
			VIDEOPROCESSORGETOUTPUTCOLORSPACE1_NULLPARAM = 3146098,
			VIDEOPROCESSORSETSTREAMCOLORSPACE1_NULLPARAM = 3146099,
			VIDEOPROCESSORSETSTREAMCOLORSPACE1_INVALIDSTREAM = 3146100,
			VIDEOPROCESSORSETSTREAMMIRROR_NULLPARAM = 3146101,
			VIDEOPROCESSORSETSTREAMMIRROR_INVALIDSTREAM = 3146102,
			VIDEOPROCESSORSETSTREAMMIRROR_UNSUPPORTED = 3146103,
			VIDEOPROCESSORGETSTREAMCOLORSPACE1_NULLPARAM = 3146104,
			VIDEOPROCESSORGETSTREAMMIRROR_NULLPARAM = 3146105,
			RECOMMENDVIDEODECODERDOWNSAMPLING_NULLPARAM = 3146106,
			RECOMMENDVIDEODECODERDOWNSAMPLING_INVALIDCOLORSPACE = 3146107,
			RECOMMENDVIDEODECODERDOWNSAMPLING_ZEROWIDTHHEIGHT = 3146108,
			VIDEOPROCESSORSETOUTPUTSHADERUSAGE_NULLPARAM = 3146109,
			VIDEOPROCESSORGETOUTPUTSHADERUSAGE_NULLPARAM = 3146110,
			VIDEOPROCESSORGETBEHAVIORHINTS_NULLPARAM = 3146111,
			VIDEOPROCESSORGETBEHAVIORHINTS_INVALIDSTREAMCOUNT = 3146112,
			VIDEOPROCESSORGETBEHAVIORHINTS_TARGETRECT = 3146113,
			VIDEOPROCESSORGETBEHAVIORHINTS_INVALIDSOURCERECT = 3146114,
			VIDEOPROCESSORGETBEHAVIORHINTS_INVALIDDESTRECT = 3146115,
			GETCRYPTOSESSIONPRIVATEDATASIZE_INVALID_KEY_EXCHANGE_TYPE = 3146116,
			D3D11_1_MESSAGES_END = 3146117,
			D3D11_2_MESSAGES_START = 3146118,
			CREATEBUFFER_INVALIDUSAGE = 3146119,
			CREATETEXTURE1D_INVALIDUSAGE = 3146120,
			CREATETEXTURE2D_INVALIDUSAGE = 3146121,
			CREATEINPUTLAYOUT_LEVEL9_STEPRATE_NOT_1 = 3146122,
			CREATEINPUTLAYOUT_LEVEL9_INSTANCING_NOT_SUPPORTED = 3146123,
			UPDATETILEMAPPINGS_INVALID_PARAMETER = 3146124,
			COPYTILEMAPPINGS_INVALID_PARAMETER = 3146125,
			COPYTILES_INVALID_PARAMETER = 3146126,
			UPDATETILES_INVALID_PARAMETER = 3146127,
			RESIZETILEPOOL_INVALID_PARAMETER = 3146128,
			TILEDRESOURCEBARRIER_INVALID_PARAMETER = 3146129,
			NULL_TILE_MAPPING_ACCESS_WARNING = 3146130,
			NULL_TILE_MAPPING_ACCESS_ERROR = 3146131,
			DIRTY_TILE_MAPPING_ACCESS = 3146132,
			DUPLICATE_TILE_MAPPINGS_IN_COVERED_AREA = 3146133,
			TILE_MAPPINGS_IN_COVERED_AREA_DUPLICATED_OUTSIDE = 3146134,
			TILE_MAPPINGS_SHARED_BETWEEN_INCOMPATIBLE_RESOURCES = 3146135,
			TILE_MAPPINGS_SHARED_BETWEEN_INPUT_AND_OUTPUT = 3146136,
			CHECKMULTISAMPLEQUALITYLEVELS_INVALIDFLAGS = 3146137,
			GETRESOURCETILING_NONTILED_RESOURCE = 3146138,
			RESIZETILEPOOL_SHRINK_WITH_MAPPINGS_STILL_DEFINED_PAST_END = 3146139,
			NEED_TO_CALL_TILEDRESOURCEBARRIER = 3146140,
			CREATEDEVICE_INVALIDARGS = 3146141,
			CREATEDEVICE_WARNING = 3146142,
			CLEARUNORDEREDACCESSVIEWUINT_HAZARD = 3146143,
			CLEARUNORDEREDACCESSVIEWFLOAT_HAZARD = 3146144,
			TILED_RESOURCE_TIER_1_BUFFER_TEXTURE_MISMATCH = 3146145,
			CREATE_CRYPTOSESSION = 3146146,
			CREATE_AUTHENTICATEDCHANNEL = 3146147,
			LIVE_CRYPTOSESSION = 3146148,
			LIVE_AUTHENTICATEDCHANNEL = 3146149,
			DESTROY_CRYPTOSESSION = 3146150,
			DESTROY_AUTHENTICATEDCHANNEL = 3146151,
			D3D11_2_MESSAGES_END = 3146152,
			D3D11_3_MESSAGES_START = 3146153,
			CREATERASTERIZERSTATE_INVALID_CONSERVATIVERASTERMODE = 3146154,
			DEVICE_DRAW_INVALID_SYSTEMVALUE = 3146155,
			CREATEQUERYORPREDICATE_INVALIDCONTEXTTYPE = 3146156,
			CREATEQUERYORPREDICATE_DECODENOTSUPPORTED = 3146157,
			CREATEQUERYORPREDICATE_ENCODENOTSUPPORTED = 3146158,
			CREATESHADERRESOURCEVIEW_INVALIDPLANEINDEX = 3146159,
			CREATESHADERRESOURCEVIEW_INVALIDVIDEOPLANEINDEX = 3146160,
			CREATESHADERRESOURCEVIEW_AMBIGUOUSVIDEOPLANEINDEX = 3146161,
			CREATERENDERTARGETVIEW_INVALIDPLANEINDEX = 3146162,
			CREATERENDERTARGETVIEW_INVALIDVIDEOPLANEINDEX = 3146163,
			CREATERENDERTARGETVIEW_AMBIGUOUSVIDEOPLANEINDEX = 3146164,
			CREATEUNORDEREDACCESSVIEW_INVALIDPLANEINDEX = 3146165,
			CREATEUNORDEREDACCESSVIEW_INVALIDVIDEOPLANEINDEX = 3146166,
			CREATEUNORDEREDACCESSVIEW_AMBIGUOUSVIDEOPLANEINDEX = 3146167,
			JPEGDECODE_INVALIDSCANDATAOFFSET = 3146168,
			JPEGDECODE_NOTSUPPORTED = 3146169,
			JPEGDECODE_DIMENSIONSTOOLARGE = 3146170,
			JPEGDECODE_INVALIDCOMPONENTS = 3146171,
			JPEGDECODE_DESTINATIONNOT2D = 3146172,
			JPEGDECODE_TILEDRESOURCESUNSUPPORTED = 3146173,
			JPEGDECODE_GUARDRECTSUNSUPPORTED = 3146174,
			JPEGDECODE_FORMATUNSUPPORTED = 3146175,
			JPEGDECODE_INVALIDSUBRESOURCE = 3146176,
			JPEGDECODE_INVALIDMIPLEVEL = 3146177,
			JPEGDECODE_EMPTYDESTBOX = 3146178,
			JPEGDECODE_DESTBOXNOT2D = 3146179,
			JPEGDECODE_DESTBOXNOTSUB = 3146180,
			JPEGDECODE_DESTBOXESINTERSECT = 3146181,
			JPEGDECODE_XSUBSAMPLEMISMATCH = 3146182,
			JPEGDECODE_YSUBSAMPLEMISMATCH = 3146183,
			JPEGDECODE_XSUBSAMPLEODD = 3146184,
			JPEGDECODE_YSUBSAMPLEODD = 3146185,
			JPEGDECODE_OUTPUTDIMENSIONSTOOLARGE = 3146186,
			JPEGDECODE_NONPOW2SCALEUNSUPPORTED = 3146187,
			JPEGDECODE_FRACTIONALDOWNSCALETOLARGE = 3146188,
			JPEGDECODE_CHROMASIZEMISMATCH = 3146189,
			JPEGDECODE_LUMACHROMASIZEMISMATCH = 3146190,
			JPEGDECODE_INVALIDNUMDESTINATIONS = 3146191,
			JPEGDECODE_SUBBOXUNSUPPORTED = 3146192,
			JPEGDECODE_1DESTUNSUPPORTEDFORMAT = 3146193,
			JPEGDECODE_3DESTUNSUPPORTEDFORMAT = 3146194,
			JPEGDECODE_SCALEUNSUPPORTED = 3146195,
			JPEGDECODE_INVALIDSOURCESIZE = 3146196,
			JPEGDECODE_INVALIDCOPYFLAGS = 3146197,
			JPEGDECODE_HAZARD = 3146198,
			JPEGDECODE_UNSUPPORTEDSRCBUFFERUSAGE = 3146199,
			JPEGDECODE_UNSUPPORTEDSRCBUFFERMISCFLAGS = 3146200,
			JPEGDECODE_UNSUPPORTEDDSTTEXTUREUSAGE = 3146201,
			JPEGDECODE_BACKBUFFERNOTSUPPORTED = 3146202,
			JPEGDECODE_UNSUPPRTEDCOPYFLAGS = 3146203,
			JPEGENCODE_NOTSUPPORTED = 3146204,
			JPEGENCODE_INVALIDSCANDATAOFFSET = 3146205,
			JPEGENCODE_INVALIDCOMPONENTS = 3146206,
			JPEGENCODE_SOURCENOT2D = 3146207,
			JPEGENCODE_TILEDRESOURCESUNSUPPORTED = 3146208,
			JPEGENCODE_GUARDRECTSUNSUPPORTED = 3146209,
			JPEGENCODE_XSUBSAMPLEMISMATCH = 3146210,
			JPEGENCODE_YSUBSAMPLEMISMATCH = 3146211,
			JPEGENCODE_FORMATUNSUPPORTED = 3146212,
			JPEGENCODE_INVALIDSUBRESOURCE = 3146213,
			JPEGENCODE_INVALIDMIPLEVEL = 3146214,
			JPEGENCODE_DIMENSIONSTOOLARGE = 3146215,
			JPEGENCODE_HAZARD = 3146216,
			JPEGENCODE_UNSUPPORTEDDSTBUFFERUSAGE = 3146217,
			JPEGENCODE_UNSUPPORTEDDSTBUFFERMISCFLAGS = 3146218,
			JPEGENCODE_UNSUPPORTEDSRCTEXTUREUSAGE = 3146219,
			JPEGENCODE_BACKBUFFERNOTSUPPORTED = 3146220,
			CREATEQUERYORPREDICATE_UNSUPPORTEDCONTEXTTTYPEFORQUERY = 3146221,
			FLUSH1_INVALIDCONTEXTTYPE = 3146222,
			DEVICE_SETHARDWAREPROTECTION_INVALIDCONTEXT = 3146223,
			VIDEOPROCESSORSETOUTPUTHDRMETADATA_NULLPARAM = 3146224,
			VIDEOPROCESSORSETOUTPUTHDRMETADATA_INVALIDSIZE = 3146225,
			VIDEOPROCESSORGETOUTPUTHDRMETADATA_NULLPARAM = 3146226,
			VIDEOPROCESSORGETOUTPUTHDRMETADATA_INVALIDSIZE = 3146227,
			VIDEOPROCESSORSETSTREAMHDRMETADATA_NULLPARAM = 3146228,
			VIDEOPROCESSORSETSTREAMHDRMETADATA_INVALIDSTREAM = 3146229,
			VIDEOPROCESSORSETSTREAMHDRMETADATA_INVALIDSIZE = 3146230,
			VIDEOPROCESSORGETSTREAMHDRMETADATA_NULLPARAM = 3146231,
			VIDEOPROCESSORGETSTREAMHDRMETADATA_INVALIDSTREAM = 3146232,
			VIDEOPROCESSORGETSTREAMHDRMETADATA_INVALIDSIZE = 3146233,
			VIDEOPROCESSORGETSTREAMFRAMEFORMAT_INVALIDSTREAM = 3146234,
			VIDEOPROCESSORGETSTREAMCOLORSPACE_INVALIDSTREAM = 3146235,
			VIDEOPROCESSORGETSTREAMOUTPUTRATE_INVALIDSTREAM = 3146236,
			VIDEOPROCESSORGETSTREAMSOURCERECT_INVALIDSTREAM = 3146237,
			VIDEOPROCESSORGETSTREAMDESTRECT_INVALIDSTREAM = 3146238,
			VIDEOPROCESSORGETSTREAMALPHA_INVALIDSTREAM = 3146239,
			VIDEOPROCESSORGETSTREAMPALETTE_INVALIDSTREAM = 3146240,
			VIDEOPROCESSORGETSTREAMPIXELASPECTRATIO_INVALIDSTREAM = 3146241,
			VIDEOPROCESSORGETSTREAMLUMAKEY_INVALIDSTREAM = 3146242,
			VIDEOPROCESSORGETSTREAMSTEREOFORMAT_INVALIDSTREAM = 3146243,
			VIDEOPROCESSORGETSTREAMAUTOPROCESSINGMODE_INVALIDSTREAM = 3146244,
			VIDEOPROCESSORGETSTREAMFILTER_INVALIDSTREAM = 3146245,
			VIDEOPROCESSORGETSTREAMROTATION_INVALIDSTREAM = 3146246,
			VIDEOPROCESSORGETSTREAMCOLORSPACE1_INVALIDSTREAM = 3146247,
			VIDEOPROCESSORGETSTREAMMIRROR_INVALIDSTREAM = 3146248,
			CREATE_FENCE = 3146249,
			LIVE_FENCE = 3146250,
			DESTROY_FENCE = 3146251,
			CREATE_SYNCHRONIZEDCHANNEL = 3146252,
			LIVE_SYNCHRONIZEDCHANNEL = 3146253,
			DESTROY_SYNCHRONIZEDCHANNEL = 3146254,
			CREATEFENCE_INVALIDFLAGS = 3146255,
			D3D11_3_MESSAGES_END = 3146256,
			D3D11_5_MESSAGES_START = 3146257,
			NEGOTIATECRYPTOSESSIONKEYEXCHANGEMT_INVALIDKEYEXCHANGETYPE = 3146258,
			NEGOTIATECRYPTOSESSIONKEYEXCHANGEMT_NOT_SUPPORTED = 3146259,
			DECODERBEGINFRAME_INVALID_HISTOGRAM_COMPONENT_COUNT = 3146260,
			DECODERBEGINFRAME_INVALID_HISTOGRAM_COMPONENT = 3146261,
			DECODERBEGINFRAME_INVALID_HISTOGRAM_BUFFER_SIZE = 3146262,
			DECODERBEGINFRAME_INVALID_HISTOGRAM_BUFFER_USAGE = 3146263,
			DECODERBEGINFRAME_INVALID_HISTOGRAM_BUFFER_MISC_FLAGS = 3146264,
			DECODERBEGINFRAME_INVALID_HISTOGRAM_BUFFER_OFFSET = 3146265,
			CREATE_TRACKEDWORKLOAD = 3146266,
			LIVE_TRACKEDWORKLOAD = 3146267,
			DESTROY_TRACKEDWORKLOAD = 3146268,
			CREATE_TRACKED_WORKLOAD_NULLPARAM = 3146269,
			CREATE_TRACKED_WORKLOAD_INVALID_MAX_INSTANCES = 3146270,
			CREATE_TRACKED_WORKLOAD_INVALID_DEADLINE_TYPE = 3146271,
			CREATE_TRACKED_WORKLOAD_INVALID_ENGINE_TYPE = 3146272,
			MULTIPLE_TRACKED_WORKLOADS = 3146273,
			MULTIPLE_TRACKED_WORKLOAD_PAIRS = 3146274,
			INCOMPLETE_TRACKED_WORKLOAD_PAIR = 3146275,
			OUT_OF_ORDER_TRACKED_WORKLOAD_PAIR = 3146276,
			CANNOT_ADD_TRACKED_WORKLOAD = 3146277,
			TRACKED_WORKLOAD_NOT_SUPPORTED = 3146278,
			TRACKED_WORKLOAD_ENGINE_TYPE_NOT_FOUND = 3146279,
			NO_TRACKED_WORKLOAD_SLOT_AVAILABLE = 3146280,
			END_TRACKED_WORKLOAD_INVALID_ARG = 3146281,
			TRACKED_WORKLOAD_DISJOINT_FAILURE = 3146282,
			D3D11_5_MESSAGES_END = 3146283,
		}
		public enum D3D11_COPY_FLAGS : int32
		{
			NO_OVERWRITE = 1,
			DISCARD = 2,
		}
		public enum D3D11_LOGIC_OP : int32
		{
			CLEAR = 0,
			SET = 1,
			COPY = 2,
			COPY_INVERTED = 3,
			NOOP = 4,
			INVERT = 5,
			AND = 6,
			NAND = 7,
			OR = 8,
			NOR = 9,
			XOR = 10,
			EQUIV = 11,
			AND_REVERSE = 12,
			AND_INVERTED = 13,
			OR_REVERSE = 14,
			OR_INVERTED = 15,
		}
		public enum D3D11_1_CREATE_DEVICE_CONTEXT_STATE_FLAG : int32
		{
			SINGLETHREADED = 1,
		}
		public enum D3D11_VIDEO_DECODER_CAPS : int32
		{
			DOWNSAMPLE = 1,
			NON_REAL_TIME = 2,
			DOWNSAMPLE_DYNAMIC = 4,
			DOWNSAMPLE_REQUIRED = 8,
			UNSUPPORTED = 16,
		}
		public enum D3D11_VIDEO_PROCESSOR_BEHAVIOR_HINTS : int32
		{
			MULTIPLANE_OVERLAY_ROTATION = 1,
			MULTIPLANE_OVERLAY_RESIZE = 2,
			MULTIPLANE_OVERLAY_COLOR_SPACE_CONVERSION = 4,
			TRIPLE_BUFFER_OUTPUT = 8,
		}
		public enum D3D11_CRYPTO_SESSION_STATUS : int32
		{
			OK = 0,
			KEY_LOST = 1,
			KEY_AND_CONTENT_LOST = 2,
		}
		public enum D3D11_TILE_MAPPING_FLAG : int32
		{
			NO_OVERWRITE = 1,
		}
		public enum D3D11_TILE_RANGE_FLAG : int32
		{
			NULL = 1,
			SKIP = 2,
			REUSE_SINGLE_TILE = 4,
		}
		public enum D3D11_CHECK_MULTISAMPLE_QUALITY_LEVELS_FLAG : int32
		{
			TILED_RESOURCE = 1,
		}
		public enum D3D11_TILE_COPY_FLAG : int32
		{
			NO_OVERWRITE = 1,
			LINEAR_BUFFER_TO_SWIZZLED_TILED_RESOURCE = 2,
			SWIZZLED_TILED_RESOURCE_TO_LINEAR_BUFFER = 4,
		}
		public enum D3D11_CONTEXT_TYPE : int32
		{
			ALL = 0,
			_3D = 1,
			COMPUTE = 2,
			COPY = 3,
			VIDEO = 4,
		}
		public enum D3D11_TEXTURE_LAYOUT : int32
		{
			UNDEFINED = 0,
			ROW_MAJOR = 1,
			_64K_STANDARD_SWIZZLE = 2,
		}
		public enum D3D11_CONSERVATIVE_RASTERIZATION_MODE : int32
		{
			OFF = 0,
			ON = 1,
		}
		public enum D3D11_FENCE_FLAG : uint32
		{
			NONE = 0,
			SHARED = 2,
			SHARED_CROSS_ADAPTER = 4,
			NON_MONITORED = 8,
		}
		public enum D3D11_FEATURE_VIDEO : int32
		{
			VIDEO_DECODER_HISTOGRAM = 0,
		}
		[AllowDuplicates]
		public enum D3D11_VIDEO_DECODER_HISTOGRAM_COMPONENT : int32
		{
			Y = 0,
			U = 1,
			V = 2,
			R = 0,
			G = 1,
			B = 2,
			A = 3,
		}
		[AllowDuplicates]
		public enum D3D11_VIDEO_DECODER_HISTOGRAM_COMPONENT_FLAGS : uint32
		{
			NONE = 0,
			Y = 1,
			U = 2,
			V = 4,
			R = 1,
			G = 2,
			B = 4,
			A = 8,
		}
		public enum D3D11_CRYPTO_SESSION_KEY_EXCHANGE_FLAGS : uint32
		{
			FLAG_NONE = 0,
		}
		public enum D3D11_SHADER_VERSION_TYPE : int32
		{
			PIXEL_SHADER = 0,
			VERTEX_SHADER = 1,
			GEOMETRY_SHADER = 2,
			HULL_SHADER = 3,
			DOMAIN_SHADER = 4,
			COMPUTE_SHADER = 5,
			RESERVED0 = 65520,
		}
		public enum D3D11_SHADER_TYPE : int32
		{
			VERTEX_SHADER = 1,
			HULL_SHADER = 2,
			DOMAIN_SHADER = 3,
			GEOMETRY_SHADER = 4,
			PIXEL_SHADER = 5,
			COMPUTE_SHADER = 6,
		}
		public enum D3D11_TRACE_GS_INPUT_PRIMITIVE : int32
		{
			UNDEFINED = 0,
			POINT = 1,
			LINE = 2,
			TRIANGLE = 3,
			LINE_ADJ = 6,
			TRIANGLE_ADJ = 7,
		}
		public enum D3D11_TRACE_REGISTER_TYPE : int32
		{
			OUTPUT_NULL_REGISTER = 0,
			INPUT_REGISTER = 1,
			INPUT_PRIMITIVE_ID_REGISTER = 2,
			IMMEDIATE_CONSTANT_BUFFER = 3,
			TEMP_REGISTER = 4,
			INDEXABLE_TEMP_REGISTER = 5,
			OUTPUT_REGISTER = 6,
			OUTPUT_DEPTH_REGISTER = 7,
			CONSTANT_BUFFER = 8,
			IMMEDIATE32 = 9,
			SAMPLER = 10,
			RESOURCE = 11,
			RASTERIZER = 12,
			OUTPUT_COVERAGE_MASK = 13,
			STREAM = 14,
			THIS_POINTER = 15,
			OUTPUT_CONTROL_POINT_ID_REGISTER = 16,
			INPUT_FORK_INSTANCE_ID_REGISTER = 17,
			INPUT_JOIN_INSTANCE_ID_REGISTER = 18,
			INPUT_CONTROL_POINT_REGISTER = 19,
			OUTPUT_CONTROL_POINT_REGISTER = 20,
			INPUT_PATCH_CONSTANT_REGISTER = 21,
			INPUT_DOMAIN_POINT_REGISTER = 22,
			UNORDERED_ACCESS_VIEW = 23,
			THREAD_GROUP_SHARED_MEMORY = 24,
			INPUT_THREAD_ID_REGISTER = 25,
			INPUT_THREAD_GROUP_ID_REGISTER = 26,
			INPUT_THREAD_ID_IN_GROUP_REGISTER = 27,
			INPUT_COVERAGE_MASK_REGISTER = 28,
			INPUT_THREAD_ID_IN_GROUP_FLATTENED_REGISTER = 29,
			INPUT_GS_INSTANCE_ID_REGISTER = 30,
			OUTPUT_DEPTH_GREATER_EQUAL_REGISTER = 31,
			OUTPUT_DEPTH_LESS_EQUAL_REGISTER = 32,
			IMMEDIATE64 = 33,
			INPUT_CYCLE_COUNTER_REGISTER = 34,
			INTERFACE_POINTER = 35,
		}
		public enum D3DX11_SCAN_DATA_TYPE : int32
		{
			FLOAT = 1,
			INT = 2,
			UINT = 3,
		}
		public enum D3DX11_SCAN_OPCODE : int32
		{
			ADD = 1,
			MIN = 2,
			MAX = 3,
			MUL = 4,
			AND = 5,
			OR = 6,
			XOR = 7,
		}
		public enum D3DX11_SCAN_DIRECTION : int32
		{
			FORWARD = 1,
			BACKWARD = 2,
		}
		public enum D3DX11_FFT_DATA_TYPE : int32
		{
			REAL = 0,
			COMPLEX = 1,
		}
		public enum D3DX11_FFT_DIM_MASK : int32
		{
			_1D = 1,
			_2D = 3,
			_3D = 7,
		}
		public enum D3DX11_FFT_CREATE_FLAG : int32
		{
			FLAG_NO_PRECOMPUTE_BUFFERS = 1,
		}
		
		// --- Function Pointers ---
		
		public function HRESULT PFN_D3D11_CREATE_DEVICE(IDXGIAdapter* param0, D3D_DRIVER_TYPE param1, HINSTANCE param2, uint32 param3, D3D_FEATURE_LEVEL* param4, uint32 FeatureLevels, uint32 param6, ID3D11Device** param7, D3D_FEATURE_LEVEL* param8, ID3D11DeviceContext** param9);
		public function HRESULT PFN_D3D11_CREATE_DEVICE_AND_SWAP_CHAIN(IDXGIAdapter* param0, D3D_DRIVER_TYPE param1, HINSTANCE param2, uint32 param3, D3D_FEATURE_LEVEL* param4, uint32 FeatureLevels, uint32 param6, DXGI_SWAP_CHAIN_DESC* param7, IDXGISwapChain** param8, ID3D11Device** param9, D3D_FEATURE_LEVEL* param10, ID3D11DeviceContext** param11);
		
		// --- Structs ---
		
		[CRepr]
		public struct D3D11_INPUT_ELEMENT_DESC
		{
			public PSTR SemanticName;
			public uint32 SemanticIndex;
			public DXGI_FORMAT Format;
			public uint32 InputSlot;
			public uint32 AlignedByteOffset;
			public D3D11_INPUT_CLASSIFICATION InputSlotClass;
			public uint32 InstanceDataStepRate;
		}
		[CRepr]
		public struct D3D11_SO_DECLARATION_ENTRY
		{
			public uint32 Stream;
			public PSTR SemanticName;
			public uint32 SemanticIndex;
			public uint8 StartComponent;
			public uint8 ComponentCount;
			public uint8 OutputSlot;
		}
		[CRepr]
		public struct D3D11_VIEWPORT
		{
			public float TopLeftX;
			public float TopLeftY;
			public float Width;
			public float Height;
			public float MinDepth;
			public float MaxDepth;
		}
		[CRepr]
		public struct D3D11_DRAW_INSTANCED_INDIRECT_ARGS
		{
			public uint32 VertexCountPerInstance;
			public uint32 InstanceCount;
			public uint32 StartVertexLocation;
			public uint32 StartInstanceLocation;
		}
		[CRepr]
		public struct D3D11_DRAW_INDEXED_INSTANCED_INDIRECT_ARGS
		{
			public uint32 IndexCountPerInstance;
			public uint32 InstanceCount;
			public uint32 StartIndexLocation;
			public int32 BaseVertexLocation;
			public uint32 StartInstanceLocation;
		}
		[CRepr]
		public struct D3D11_BOX
		{
			public uint32 left;
			public uint32 top;
			public uint32 front;
			public uint32 right;
			public uint32 bottom;
			public uint32 back;
		}
		[CRepr]
		public struct D3D11_DEPTH_STENCILOP_DESC
		{
			public D3D11_STENCIL_OP StencilFailOp;
			public D3D11_STENCIL_OP StencilDepthFailOp;
			public D3D11_STENCIL_OP StencilPassOp;
			public D3D11_COMPARISON_FUNC StencilFunc;
		}
		[CRepr]
		public struct D3D11_DEPTH_STENCIL_DESC
		{
			public BOOL DepthEnable;
			public D3D11_DEPTH_WRITE_MASK DepthWriteMask;
			public D3D11_COMPARISON_FUNC DepthFunc;
			public BOOL StencilEnable;
			public uint8 StencilReadMask;
			public uint8 StencilWriteMask;
			public D3D11_DEPTH_STENCILOP_DESC FrontFace;
			public D3D11_DEPTH_STENCILOP_DESC BackFace;
		}
		[CRepr]
		public struct D3D11_RENDER_TARGET_BLEND_DESC
		{
			public BOOL BlendEnable;
			public D3D11_BLEND SrcBlend;
			public D3D11_BLEND DestBlend;
			public D3D11_BLEND_OP BlendOp;
			public D3D11_BLEND SrcBlendAlpha;
			public D3D11_BLEND DestBlendAlpha;
			public D3D11_BLEND_OP BlendOpAlpha;
			public uint8 RenderTargetWriteMask;
		}
		[CRepr]
		public struct D3D11_BLEND_DESC
		{
			public BOOL AlphaToCoverageEnable;
			public BOOL IndependentBlendEnable;
			public D3D11_RENDER_TARGET_BLEND_DESC[8] RenderTarget;
		}
		[CRepr]
		public struct D3D11_RASTERIZER_DESC
		{
			public D3D11_FILL_MODE FillMode;
			public D3D11_CULL_MODE CullMode;
			public BOOL FrontCounterClockwise;
			public int32 DepthBias;
			public float DepthBiasClamp;
			public float SlopeScaledDepthBias;
			public BOOL DepthClipEnable;
			public BOOL ScissorEnable;
			public BOOL MultisampleEnable;
			public BOOL AntialiasedLineEnable;
		}
		[CRepr]
		public struct D3D11_SUBRESOURCE_DATA
		{
			public void* pSysMem;
			public uint32 SysMemPitch;
			public uint32 SysMemSlicePitch;
		}
		[CRepr]
		public struct D3D11_MAPPED_SUBRESOURCE
		{
			public void* pData;
			public uint32 RowPitch;
			public uint32 DepthPitch;
		}
		[CRepr]
		public struct D3D11_BUFFER_DESC
		{
			public uint32 ByteWidth;
			public D3D11_USAGE Usage;
			public uint32 BindFlags;
			public uint32 CPUAccessFlags;
			public uint32 MiscFlags;
			public uint32 StructureByteStride;
		}
		[CRepr]
		public struct D3D11_TEXTURE1D_DESC
		{
			public uint32 Width;
			public uint32 MipLevels;
			public uint32 ArraySize;
			public DXGI_FORMAT Format;
			public D3D11_USAGE Usage;
			public uint32 BindFlags;
			public uint32 CPUAccessFlags;
			public uint32 MiscFlags;
		}
		[CRepr]
		public struct D3D11_TEXTURE2D_DESC
		{
			public uint32 Width;
			public uint32 Height;
			public uint32 MipLevels;
			public uint32 ArraySize;
			public DXGI_FORMAT Format;
			public DXGI_SAMPLE_DESC SampleDesc;
			public D3D11_USAGE Usage;
			public D3D11_BIND_FLAG BindFlags;
			public D3D11_CPU_ACCESS_FLAG CPUAccessFlags;
			public D3D11_RESOURCE_MISC_FLAG MiscFlags;
		}
		[CRepr]
		public struct D3D11_TEXTURE3D_DESC
		{
			public uint32 Width;
			public uint32 Height;
			public uint32 Depth;
			public uint32 MipLevels;
			public DXGI_FORMAT Format;
			public D3D11_USAGE Usage;
			public uint32 BindFlags;
			public uint32 CPUAccessFlags;
			public uint32 MiscFlags;
		}
		[CRepr]
		public struct D3D11_BUFFER_SRV
		{
			public _Anonymous1_e__Union Anonymous1;
			public _Anonymous2_e__Union Anonymous2;
			
			[CRepr, Union]
			public struct _Anonymous1_e__Union
			{
				public uint32 FirstElement;
				public uint32 ElementOffset;
			}
			[CRepr, Union]
			public struct _Anonymous2_e__Union
			{
				public uint32 NumElements;
				public uint32 ElementWidth;
			}
		}
		[CRepr]
		public struct D3D11_BUFFEREX_SRV
		{
			public uint32 FirstElement;
			public uint32 NumElements;
			public uint32 Flags;
		}
		[CRepr]
		public struct D3D11_TEX1D_SRV
		{
			public uint32 MostDetailedMip;
			public uint32 MipLevels;
		}
		[CRepr]
		public struct D3D11_TEX1D_ARRAY_SRV
		{
			public uint32 MostDetailedMip;
			public uint32 MipLevels;
			public uint32 FirstArraySlice;
			public uint32 ArraySize;
		}
		[CRepr]
		public struct D3D11_TEX2D_SRV
		{
			public uint32 MostDetailedMip;
			public uint32 MipLevels;
		}
		[CRepr]
		public struct D3D11_TEX2D_ARRAY_SRV
		{
			public uint32 MostDetailedMip;
			public uint32 MipLevels;
			public uint32 FirstArraySlice;
			public uint32 ArraySize;
		}
		[CRepr]
		public struct D3D11_TEX3D_SRV
		{
			public uint32 MostDetailedMip;
			public uint32 MipLevels;
		}
		[CRepr]
		public struct D3D11_TEXCUBE_SRV
		{
			public uint32 MostDetailedMip;
			public uint32 MipLevels;
		}
		[CRepr]
		public struct D3D11_TEXCUBE_ARRAY_SRV
		{
			public uint32 MostDetailedMip;
			public uint32 MipLevels;
			public uint32 First2DArrayFace;
			public uint32 NumCubes;
		}
		[CRepr]
		public struct D3D11_TEX2DMS_SRV
		{
			public uint32 UnusedField_NothingToDefine;
		}
		[CRepr]
		public struct D3D11_TEX2DMS_ARRAY_SRV
		{
			public uint32 FirstArraySlice;
			public uint32 ArraySize;
		}
		[CRepr]
		public struct D3D11_SHADER_RESOURCE_VIEW_DESC
		{
			public DXGI_FORMAT Format;
			public D3D_SRV_DIMENSION ViewDimension;
			public _Anonymous_e__Union Anonymous;
			
			public D3D11_BUFFER_SRV Buffer { get => Anonymous.Buffer; set mut => Anonymous.Buffer = value; }
			public D3D11_TEX1D_SRV Texture1D { get => Anonymous.Texture1D; set mut => Anonymous.Texture1D = value; }
			public D3D11_TEX1D_ARRAY_SRV Texture1DArray { get => Anonymous.Texture1DArray; set mut => Anonymous.Texture1DArray = value; }
			public D3D11_TEX2D_SRV Texture2D { get => Anonymous.Texture2D; set mut => Anonymous.Texture2D = value; }
			public D3D11_TEX2D_ARRAY_SRV Texture2DArray { get => Anonymous.Texture2DArray; set mut => Anonymous.Texture2DArray = value; }
			public D3D11_TEX2DMS_SRV Texture2DMS { get => Anonymous.Texture2DMS; set mut => Anonymous.Texture2DMS = value; }
			public D3D11_TEX2DMS_ARRAY_SRV Texture2DMSArray { get => Anonymous.Texture2DMSArray; set mut => Anonymous.Texture2DMSArray = value; }
			public D3D11_TEX3D_SRV Texture3D { get => Anonymous.Texture3D; set mut => Anonymous.Texture3D = value; }
			public D3D11_TEXCUBE_SRV TextureCube { get => Anonymous.TextureCube; set mut => Anonymous.TextureCube = value; }
			public D3D11_TEXCUBE_ARRAY_SRV TextureCubeArray { get => Anonymous.TextureCubeArray; set mut => Anonymous.TextureCubeArray = value; }
			public D3D11_BUFFEREX_SRV BufferEx { get => Anonymous.BufferEx; set mut => Anonymous.BufferEx = value; }
			
			[CRepr, Union]
			public struct _Anonymous_e__Union
			{
				public D3D11_BUFFER_SRV Buffer;
				public D3D11_TEX1D_SRV Texture1D;
				public D3D11_TEX1D_ARRAY_SRV Texture1DArray;
				public D3D11_TEX2D_SRV Texture2D;
				public D3D11_TEX2D_ARRAY_SRV Texture2DArray;
				public D3D11_TEX2DMS_SRV Texture2DMS;
				public D3D11_TEX2DMS_ARRAY_SRV Texture2DMSArray;
				public D3D11_TEX3D_SRV Texture3D;
				public D3D11_TEXCUBE_SRV TextureCube;
				public D3D11_TEXCUBE_ARRAY_SRV TextureCubeArray;
				public D3D11_BUFFEREX_SRV BufferEx;
			}
		}
		[CRepr]
		public struct D3D11_BUFFER_RTV
		{
			public _Anonymous1_e__Union Anonymous1;
			public _Anonymous2_e__Union Anonymous2;
			
			[CRepr, Union]
			public struct _Anonymous2_e__Union
			{
				public uint32 NumElements;
				public uint32 ElementWidth;
			}
			[CRepr, Union]
			public struct _Anonymous1_e__Union
			{
				public uint32 FirstElement;
				public uint32 ElementOffset;
			}
		}
		[CRepr]
		public struct D3D11_TEX1D_RTV
		{
			public uint32 MipSlice;
		}
		[CRepr]
		public struct D3D11_TEX1D_ARRAY_RTV
		{
			public uint32 MipSlice;
			public uint32 FirstArraySlice;
			public uint32 ArraySize;
		}
		[CRepr]
		public struct D3D11_TEX2D_RTV
		{
			public uint32 MipSlice;
		}
		[CRepr]
		public struct D3D11_TEX2DMS_RTV
		{
			public uint32 UnusedField_NothingToDefine;
		}
		[CRepr]
		public struct D3D11_TEX2D_ARRAY_RTV
		{
			public uint32 MipSlice;
			public uint32 FirstArraySlice;
			public uint32 ArraySize;
		}
		[CRepr]
		public struct D3D11_TEX2DMS_ARRAY_RTV
		{
			public uint32 FirstArraySlice;
			public uint32 ArraySize;
		}
		[CRepr]
		public struct D3D11_TEX3D_RTV
		{
			public uint32 MipSlice;
			public uint32 FirstWSlice;
			public uint32 WSize;
		}
		[CRepr]
		public struct D3D11_RENDER_TARGET_VIEW_DESC
		{
			public DXGI_FORMAT Format;
			public D3D11_RTV_DIMENSION ViewDimension;
			public _Anonymous_e__Union Anonymous;
			
			public D3D11_BUFFER_RTV Buffer { get => Anonymous.Buffer; set mut => Anonymous.Buffer = value; }
			public D3D11_TEX1D_RTV Texture1D { get => Anonymous.Texture1D; set mut => Anonymous.Texture1D = value; }
			public D3D11_TEX1D_ARRAY_RTV Texture1DArray { get => Anonymous.Texture1DArray; set mut => Anonymous.Texture1DArray = value; }
			public D3D11_TEX2D_RTV Texture2D { get => Anonymous.Texture2D; set mut => Anonymous.Texture2D = value; }
			public D3D11_TEX2D_ARRAY_RTV Texture2DArray { get => Anonymous.Texture2DArray; set mut => Anonymous.Texture2DArray = value; }
			public D3D11_TEX2DMS_RTV Texture2DMS { get => Anonymous.Texture2DMS; set mut => Anonymous.Texture2DMS = value; }
			public D3D11_TEX2DMS_ARRAY_RTV Texture2DMSArray { get => Anonymous.Texture2DMSArray; set mut => Anonymous.Texture2DMSArray = value; }
			public D3D11_TEX3D_RTV Texture3D { get => Anonymous.Texture3D; set mut => Anonymous.Texture3D = value; }
			
			[CRepr, Union]
			public struct _Anonymous_e__Union
			{
				public D3D11_BUFFER_RTV Buffer;
				public D3D11_TEX1D_RTV Texture1D;
				public D3D11_TEX1D_ARRAY_RTV Texture1DArray;
				public D3D11_TEX2D_RTV Texture2D;
				public D3D11_TEX2D_ARRAY_RTV Texture2DArray;
				public D3D11_TEX2DMS_RTV Texture2DMS;
				public D3D11_TEX2DMS_ARRAY_RTV Texture2DMSArray;
				public D3D11_TEX3D_RTV Texture3D;
			}
		}
		[CRepr]
		public struct D3D11_TEX1D_DSV
		{
			public uint32 MipSlice;
		}
		[CRepr]
		public struct D3D11_TEX1D_ARRAY_DSV
		{
			public uint32 MipSlice;
			public uint32 FirstArraySlice;
			public uint32 ArraySize;
		}
		[CRepr]
		public struct D3D11_TEX2D_DSV
		{
			public uint32 MipSlice;
		}
		[CRepr]
		public struct D3D11_TEX2D_ARRAY_DSV
		{
			public uint32 MipSlice;
			public uint32 FirstArraySlice;
			public uint32 ArraySize;
		}
		[CRepr]
		public struct D3D11_TEX2DMS_DSV
		{
			public uint32 UnusedField_NothingToDefine;
		}
		[CRepr]
		public struct D3D11_TEX2DMS_ARRAY_DSV
		{
			public uint32 FirstArraySlice;
			public uint32 ArraySize;
		}
		[CRepr]
		public struct D3D11_DEPTH_STENCIL_VIEW_DESC
		{
			public DXGI_FORMAT Format;
			public D3D11_DSV_DIMENSION ViewDimension;
			public uint32 Flags;
			public _Anonymous_e__Union Anonymous;
			
			public D3D11_TEX1D_DSV Texture1D { get => Anonymous.Texture1D; set mut => Anonymous.Texture1D = value; }
			public D3D11_TEX1D_ARRAY_DSV Texture1DArray { get => Anonymous.Texture1DArray; set mut => Anonymous.Texture1DArray = value; }
			public D3D11_TEX2D_DSV Texture2D { get => Anonymous.Texture2D; set mut => Anonymous.Texture2D = value; }
			public D3D11_TEX2D_ARRAY_DSV Texture2DArray { get => Anonymous.Texture2DArray; set mut => Anonymous.Texture2DArray = value; }
			public D3D11_TEX2DMS_DSV Texture2DMS { get => Anonymous.Texture2DMS; set mut => Anonymous.Texture2DMS = value; }
			public D3D11_TEX2DMS_ARRAY_DSV Texture2DMSArray { get => Anonymous.Texture2DMSArray; set mut => Anonymous.Texture2DMSArray = value; }
			
			[CRepr, Union]
			public struct _Anonymous_e__Union
			{
				public D3D11_TEX1D_DSV Texture1D;
				public D3D11_TEX1D_ARRAY_DSV Texture1DArray;
				public D3D11_TEX2D_DSV Texture2D;
				public D3D11_TEX2D_ARRAY_DSV Texture2DArray;
				public D3D11_TEX2DMS_DSV Texture2DMS;
				public D3D11_TEX2DMS_ARRAY_DSV Texture2DMSArray;
			}
		}
		[CRepr]
		public struct D3D11_BUFFER_UAV
		{
			public uint32 FirstElement;
			public uint32 NumElements;
			public uint32 Flags;
		}
		[CRepr]
		public struct D3D11_TEX1D_UAV
		{
			public uint32 MipSlice;
		}
		[CRepr]
		public struct D3D11_TEX1D_ARRAY_UAV
		{
			public uint32 MipSlice;
			public uint32 FirstArraySlice;
			public uint32 ArraySize;
		}
		[CRepr]
		public struct D3D11_TEX2D_UAV
		{
			public uint32 MipSlice;
		}
		[CRepr]
		public struct D3D11_TEX2D_ARRAY_UAV
		{
			public uint32 MipSlice;
			public uint32 FirstArraySlice;
			public uint32 ArraySize;
		}
		[CRepr]
		public struct D3D11_TEX3D_UAV
		{
			public uint32 MipSlice;
			public uint32 FirstWSlice;
			public uint32 WSize;
		}
		[CRepr]
		public struct D3D11_UNORDERED_ACCESS_VIEW_DESC
		{
			public DXGI_FORMAT Format;
			public D3D11_UAV_DIMENSION ViewDimension;
			public _Anonymous_e__Union Anonymous;
			
			public D3D11_BUFFER_UAV Buffer { get => Anonymous.Buffer; set mut => Anonymous.Buffer = value; }
			public D3D11_TEX1D_UAV Texture1D { get => Anonymous.Texture1D; set mut => Anonymous.Texture1D = value; }
			public D3D11_TEX1D_ARRAY_UAV Texture1DArray { get => Anonymous.Texture1DArray; set mut => Anonymous.Texture1DArray = value; }
			public D3D11_TEX2D_UAV Texture2D { get => Anonymous.Texture2D; set mut => Anonymous.Texture2D = value; }
			public D3D11_TEX2D_ARRAY_UAV Texture2DArray { get => Anonymous.Texture2DArray; set mut => Anonymous.Texture2DArray = value; }
			public D3D11_TEX3D_UAV Texture3D { get => Anonymous.Texture3D; set mut => Anonymous.Texture3D = value; }
			
			[CRepr, Union]
			public struct _Anonymous_e__Union
			{
				public D3D11_BUFFER_UAV Buffer;
				public D3D11_TEX1D_UAV Texture1D;
				public D3D11_TEX1D_ARRAY_UAV Texture1DArray;
				public D3D11_TEX2D_UAV Texture2D;
				public D3D11_TEX2D_ARRAY_UAV Texture2DArray;
				public D3D11_TEX3D_UAV Texture3D;
			}
		}
		[CRepr]
		public struct D3D11_SAMPLER_DESC
		{
			public D3D11_FILTER Filter;
			public D3D11_TEXTURE_ADDRESS_MODE AddressU;
			public D3D11_TEXTURE_ADDRESS_MODE AddressV;
			public D3D11_TEXTURE_ADDRESS_MODE AddressW;
			public float MipLODBias;
			public uint32 MaxAnisotropy;
			public D3D11_COMPARISON_FUNC ComparisonFunc;
			public float[4] BorderColor;
			public float MinLOD;
			public float MaxLOD;
		}
		[CRepr]
		public struct D3D11_QUERY_DESC
		{
			public D3D11_QUERY Query;
			public uint32 MiscFlags;
		}
		[CRepr]
		public struct D3D11_QUERY_DATA_TIMESTAMP_DISJOINT
		{
			public uint64 Frequency;
			public BOOL Disjoint;
		}
		[CRepr]
		public struct D3D11_QUERY_DATA_PIPELINE_STATISTICS
		{
			public uint64 IAVertices;
			public uint64 IAPrimitives;
			public uint64 VSInvocations;
			public uint64 GSInvocations;
			public uint64 GSPrimitives;
			public uint64 CInvocations;
			public uint64 CPrimitives;
			public uint64 PSInvocations;
			public uint64 HSInvocations;
			public uint64 DSInvocations;
			public uint64 CSInvocations;
		}
		[CRepr]
		public struct D3D11_QUERY_DATA_SO_STATISTICS
		{
			public uint64 NumPrimitivesWritten;
			public uint64 PrimitivesStorageNeeded;
		}
		[CRepr]
		public struct D3D11_COUNTER_DESC
		{
			public D3D11_COUNTER Counter;
			public uint32 MiscFlags;
		}
		[CRepr]
		public struct D3D11_COUNTER_INFO
		{
			public D3D11_COUNTER LastDeviceDependentCounter;
			public uint32 NumSimultaneousCounters;
			public uint8 NumDetectableParallelUnits;
		}
		[CRepr]
		public struct D3D11_CLASS_INSTANCE_DESC
		{
			public uint32 InstanceId;
			public uint32 InstanceIndex;
			public uint32 TypeId;
			public uint32 ConstantBuffer;
			public uint32 BaseConstantBufferOffset;
			public uint32 BaseTexture;
			public uint32 BaseSampler;
			public BOOL Created;
		}
		[CRepr]
		public struct D3D11_FEATURE_DATA_THREADING
		{
			public BOOL DriverConcurrentCreates;
			public BOOL DriverCommandLists;
		}
		[CRepr]
		public struct D3D11_FEATURE_DATA_DOUBLES
		{
			public BOOL DoublePrecisionFloatShaderOps;
		}
		[CRepr]
		public struct D3D11_FEATURE_DATA_FORMAT_SUPPORT
		{
			public DXGI_FORMAT InFormat;
			public uint32 OutFormatSupport;
		}
		[CRepr]
		public struct D3D11_FEATURE_DATA_FORMAT_SUPPORT2
		{
			public DXGI_FORMAT InFormat;
			public uint32 OutFormatSupport2;
		}
		[CRepr]
		public struct D3D11_FEATURE_DATA_D3D10_X_HARDWARE_OPTIONS
		{
			public BOOL ComputeShaders_Plus_RawAndStructuredBuffers_Via_Shader_4_x;
		}
		[CRepr]
		public struct D3D11_FEATURE_DATA_D3D11_OPTIONS
		{
			public BOOL OutputMergerLogicOp;
			public BOOL UAVOnlyRenderingForcedSampleCount;
			public BOOL DiscardAPIsSeenByDriver;
			public BOOL FlagsForUpdateAndCopySeenByDriver;
			public BOOL ClearView;
			public BOOL CopyWithOverlap;
			public BOOL ConstantBufferPartialUpdate;
			public BOOL ConstantBufferOffsetting;
			public BOOL MapNoOverwriteOnDynamicConstantBuffer;
			public BOOL MapNoOverwriteOnDynamicBufferSRV;
			public BOOL MultisampleRTVWithForcedSampleCountOne;
			public BOOL SAD4ShaderInstructions;
			public BOOL ExtendedDoublesShaderInstructions;
			public BOOL ExtendedResourceSharing;
		}
		[CRepr]
		public struct D3D11_FEATURE_DATA_ARCHITECTURE_INFO
		{
			public BOOL TileBasedDeferredRenderer;
		}
		[CRepr]
		public struct D3D11_FEATURE_DATA_D3D9_OPTIONS
		{
			public BOOL FullNonPow2TextureSupport;
		}
		[CRepr]
		public struct D3D11_FEATURE_DATA_D3D9_SHADOW_SUPPORT
		{
			public BOOL SupportsDepthAsTextureWithLessEqualComparisonFilter;
		}
		[CRepr]
		public struct D3D11_FEATURE_DATA_SHADER_MIN_PRECISION_SUPPORT
		{
			public uint32 PixelShaderMinPrecision;
			public uint32 AllOtherShaderStagesMinPrecision;
		}
		[CRepr]
		public struct D3D11_FEATURE_DATA_D3D11_OPTIONS1
		{
			public D3D11_TILED_RESOURCES_TIER TiledResourcesTier;
			public BOOL MinMaxFiltering;
			public BOOL ClearViewAlsoSupportsDepthOnlyFormats;
			public BOOL MapOnDefaultBuffers;
		}
		[CRepr]
		public struct D3D11_FEATURE_DATA_D3D9_SIMPLE_INSTANCING_SUPPORT
		{
			public BOOL SimpleInstancingSupported;
		}
		[CRepr]
		public struct D3D11_FEATURE_DATA_MARKER_SUPPORT
		{
			public BOOL Profile;
		}
		[CRepr]
		public struct D3D11_FEATURE_DATA_D3D9_OPTIONS1
		{
			public BOOL FullNonPow2TextureSupported;
			public BOOL DepthAsTextureWithLessEqualComparisonFilterSupported;
			public BOOL SimpleInstancingSupported;
			public BOOL TextureCubeFaceRenderTargetWithNonCubeDepthStencilSupported;
		}
		[CRepr]
		public struct D3D11_FEATURE_DATA_D3D11_OPTIONS2
		{
			public BOOL PSSpecifiedStencilRefSupported;
			public BOOL TypedUAVLoadAdditionalFormats;
			public BOOL ROVsSupported;
			public D3D11_CONSERVATIVE_RASTERIZATION_TIER ConservativeRasterizationTier;
			public D3D11_TILED_RESOURCES_TIER TiledResourcesTier;
			public BOOL MapOnDefaultTextures;
			public BOOL StandardSwizzle;
			public BOOL UnifiedMemoryArchitecture;
		}
		[CRepr]
		public struct D3D11_FEATURE_DATA_D3D11_OPTIONS3
		{
			public BOOL VPAndRTArrayIndexFromAnyShaderFeedingRasterizer;
		}
		[CRepr]
		public struct D3D11_FEATURE_DATA_GPU_VIRTUAL_ADDRESS_SUPPORT
		{
			public uint32 MaxGPUVirtualAddressBitsPerResource;
			public uint32 MaxGPUVirtualAddressBitsPerProcess;
		}
		[CRepr]
		public struct D3D11_FEATURE_DATA_SHADER_CACHE
		{
			public uint32 SupportFlags;
		}
		[CRepr]
		public struct D3D11_FEATURE_DATA_DISPLAYABLE
		{
			public BOOL DisplayableTexture;
			public D3D11_SHARED_RESOURCE_TIER SharedResourceTier;
		}
		[CRepr]
		public struct D3D11_FEATURE_DATA_D3D11_OPTIONS5
		{
			public D3D11_SHARED_RESOURCE_TIER SharedResourceTier;
		}
		[CRepr]
		public struct CD3D11_VIDEO_DEFAULT {}
		[CRepr]
		public struct D3D11_VIDEO_DECODER_DESC
		{
			public Guid Guid;
			public uint32 SampleWidth;
			public uint32 SampleHeight;
			public DXGI_FORMAT OutputFormat;
		}
		[CRepr]
		public struct D3D11_VIDEO_DECODER_CONFIG
		{
			public Guid guidConfigBitstreamEncryption;
			public Guid guidConfigMBcontrolEncryption;
			public Guid guidConfigResidDiffEncryption;
			public uint32 ConfigBitstreamRaw;
			public uint32 ConfigMBcontrolRasterOrder;
			public uint32 ConfigResidDiffHost;
			public uint32 ConfigSpatialResid8;
			public uint32 ConfigResid8Subtraction;
			public uint32 ConfigSpatialHost8or9Clipping;
			public uint32 ConfigSpatialResidInterleaved;
			public uint32 ConfigIntraResidUnsigned;
			public uint32 ConfigResidDiffAccelerator;
			public uint32 ConfigHostInverseScan;
			public uint32 ConfigSpecificIDCT;
			public uint32 Config4GroupedCoefs;
			public uint16 ConfigMinRenderTargetBuffCount;
			public uint16 ConfigDecoderSpecific;
		}
		[CRepr]
		public struct D3D11_AES_CTR_IV
		{
			public uint64 IV;
			public uint64 Count;
		}
		[CRepr]
		public struct D3D11_ENCRYPTED_BLOCK_INFO
		{
			public uint32 NumEncryptedBytesAtBeginning;
			public uint32 NumBytesInSkipPattern;
			public uint32 NumBytesInEncryptPattern;
		}
		[CRepr]
		public struct D3D11_VIDEO_DECODER_BUFFER_DESC
		{
			public D3D11_VIDEO_DECODER_BUFFER_TYPE BufferType;
			public uint32 BufferIndex;
			public uint32 DataOffset;
			public uint32 DataSize;
			public uint32 FirstMBaddress;
			public uint32 NumMBsInBuffer;
			public uint32 Width;
			public uint32 Height;
			public uint32 Stride;
			public uint32 ReservedBits;
			public void* pIV;
			public uint32 IVSize;
			public BOOL PartialEncryption;
			public D3D11_ENCRYPTED_BLOCK_INFO EncryptedBlockInfo;
		}
		[CRepr]
		public struct D3D11_VIDEO_DECODER_EXTENSION
		{
			public uint32 Function;
			public void* pPrivateInputData;
			public uint32 PrivateInputDataSize;
			public void* pPrivateOutputData;
			public uint32 PrivateOutputDataSize;
			public uint32 ResourceCount;
			public ID3D11Resource** ppResourceList;
		}
		[CRepr]
		public struct D3D11_VIDEO_PROCESSOR_CAPS
		{
			public uint32 DeviceCaps;
			public uint32 FeatureCaps;
			public uint32 FilterCaps;
			public uint32 InputFormatCaps;
			public uint32 AutoStreamCaps;
			public uint32 StereoCaps;
			public uint32 RateConversionCapsCount;
			public uint32 MaxInputStreams;
			public uint32 MaxStreamStates;
		}
		[CRepr]
		public struct D3D11_VIDEO_PROCESSOR_RATE_CONVERSION_CAPS
		{
			public uint32 PastFrames;
			public uint32 FutureFrames;
			public uint32 ProcessorCaps;
			public uint32 ITelecineCaps;
			public uint32 CustomRateCount;
		}
		[CRepr]
		public struct D3D11_VIDEO_CONTENT_PROTECTION_CAPS
		{
			public uint32 Caps;
			public uint32 KeyExchangeTypeCount;
			public uint32 BlockAlignmentSize;
			public uint64 ProtectedMemorySize;
		}
		[CRepr]
		public struct D3D11_VIDEO_PROCESSOR_CUSTOM_RATE
		{
			public DXGI_RATIONAL CustomRate;
			public uint32 OutputFrames;
			public BOOL InputInterlaced;
			public uint32 InputFramesOrFields;
		}
		[CRepr]
		public struct D3D11_VIDEO_PROCESSOR_FILTER_RANGE
		{
			public int32 Minimum;
			public int32 Maximum;
			public int32 Default;
			public float Multiplier;
		}
		[CRepr]
		public struct D3D11_VIDEO_PROCESSOR_CONTENT_DESC
		{
			public D3D11_VIDEO_FRAME_FORMAT InputFrameFormat;
			public DXGI_RATIONAL InputFrameRate;
			public uint32 InputWidth;
			public uint32 InputHeight;
			public DXGI_RATIONAL OutputFrameRate;
			public uint32 OutputWidth;
			public uint32 OutputHeight;
			public D3D11_VIDEO_USAGE Usage;
		}
		[CRepr]
		public struct D3D11_VIDEO_COLOR_RGBA
		{
			public float R;
			public float G;
			public float B;
			public float A;
		}
		[CRepr]
		public struct D3D11_VIDEO_COLOR_YCbCrA
		{
			public float Y;
			public float Cb;
			public float Cr;
			public float A;
		}
		[CRepr]
		public struct D3D11_VIDEO_COLOR
		{
			public _Anonymous_e__Union Anonymous;
			
			public D3D11_VIDEO_COLOR_YCbCrA YCbCr { get => Anonymous.YCbCr; set mut => Anonymous.YCbCr = value; }
			public D3D11_VIDEO_COLOR_RGBA RGBA { get => Anonymous.RGBA; set mut => Anonymous.RGBA = value; }
			
			[CRepr, Union]
			public struct _Anonymous_e__Union
			{
				public D3D11_VIDEO_COLOR_YCbCrA YCbCr;
				public D3D11_VIDEO_COLOR_RGBA RGBA;
			}
		}
		[CRepr]
		public struct D3D11_VIDEO_PROCESSOR_COLOR_SPACE
		{
			public uint32 _bitfield;
		}
		[CRepr]
		public struct D3D11_VIDEO_PROCESSOR_STREAM
		{
			public BOOL Enable;
			public uint32 OutputIndex;
			public uint32 InputFrameOrField;
			public uint32 PastFrames;
			public uint32 FutureFrames;
			public ID3D11VideoProcessorInputView** ppPastSurfaces;
			public ID3D11VideoProcessorInputView* pInputSurface;
			public ID3D11VideoProcessorInputView** ppFutureSurfaces;
			public ID3D11VideoProcessorInputView** ppPastSurfacesRight;
			public ID3D11VideoProcessorInputView* pInputSurfaceRight;
			public ID3D11VideoProcessorInputView** ppFutureSurfacesRight;
		}
		[CRepr]
		public struct D3D11_OMAC
		{
			public uint8[16] Omac;
		}
		[CRepr]
		public struct D3D11_AUTHENTICATED_QUERY_INPUT
		{
			public Guid QueryType;
			public HANDLE hChannel;
			public uint32 SequenceNumber;
		}
		[CRepr]
		public struct D3D11_AUTHENTICATED_QUERY_OUTPUT
		{
			public D3D11_OMAC omac;
			public Guid QueryType;
			public HANDLE hChannel;
			public uint32 SequenceNumber;
			public HRESULT ReturnCode;
		}
		[CRepr, Union]
		public struct D3D11_AUTHENTICATED_PROTECTION_FLAGS
		{
			public _Flags_e__Struct Flags;
			public uint32 Value;
			
			[CRepr]
			public struct _Flags_e__Struct
			{
				public uint32 _bitfield;
			}
		}
		[CRepr]
		public struct D3D11_AUTHENTICATED_QUERY_PROTECTION_OUTPUT
		{
			public D3D11_AUTHENTICATED_QUERY_OUTPUT Output;
			public D3D11_AUTHENTICATED_PROTECTION_FLAGS ProtectionFlags;
		}
		[CRepr]
		public struct D3D11_AUTHENTICATED_QUERY_CHANNEL_TYPE_OUTPUT
		{
			public D3D11_AUTHENTICATED_QUERY_OUTPUT Output;
			public D3D11_AUTHENTICATED_CHANNEL_TYPE ChannelType;
		}
		[CRepr]
		public struct D3D11_AUTHENTICATED_QUERY_DEVICE_HANDLE_OUTPUT
		{
			public D3D11_AUTHENTICATED_QUERY_OUTPUT Output;
			public HANDLE DeviceHandle;
		}
		[CRepr]
		public struct D3D11_AUTHENTICATED_QUERY_CRYPTO_SESSION_INPUT
		{
			public D3D11_AUTHENTICATED_QUERY_INPUT Input;
			public HANDLE DecoderHandle;
		}
		[CRepr]
		public struct D3D11_AUTHENTICATED_QUERY_CRYPTO_SESSION_OUTPUT
		{
			public D3D11_AUTHENTICATED_QUERY_OUTPUT Output;
			public HANDLE DecoderHandle;
			public HANDLE CryptoSessionHandle;
			public HANDLE DeviceHandle;
		}
		[CRepr]
		public struct D3D11_AUTHENTICATED_QUERY_RESTRICTED_SHARED_RESOURCE_PROCESS_COUNT_OUTPUT
		{
			public D3D11_AUTHENTICATED_QUERY_OUTPUT Output;
			public uint32 RestrictedSharedResourceProcessCount;
		}
		[CRepr]
		public struct D3D11_AUTHENTICATED_QUERY_RESTRICTED_SHARED_RESOURCE_PROCESS_INPUT
		{
			public D3D11_AUTHENTICATED_QUERY_INPUT Input;
			public uint32 ProcessIndex;
		}
		[CRepr]
		public struct D3D11_AUTHENTICATED_QUERY_RESTRICTED_SHARED_RESOURCE_PROCESS_OUTPUT
		{
			public D3D11_AUTHENTICATED_QUERY_OUTPUT Output;
			public uint32 ProcessIndex;
			public D3D11_AUTHENTICATED_PROCESS_IDENTIFIER_TYPE ProcessIdentifier;
			public HANDLE ProcessHandle;
		}
		[CRepr]
		public struct D3D11_AUTHENTICATED_QUERY_UNRESTRICTED_PROTECTED_SHARED_RESOURCE_COUNT_OUTPUT
		{
			public D3D11_AUTHENTICATED_QUERY_OUTPUT Output;
			public uint32 UnrestrictedProtectedSharedResourceCount;
		}
		[CRepr]
		public struct D3D11_AUTHENTICATED_QUERY_OUTPUT_ID_COUNT_INPUT
		{
			public D3D11_AUTHENTICATED_QUERY_INPUT Input;
			public HANDLE DeviceHandle;
			public HANDLE CryptoSessionHandle;
		}
		[CRepr]
		public struct D3D11_AUTHENTICATED_QUERY_OUTPUT_ID_COUNT_OUTPUT
		{
			public D3D11_AUTHENTICATED_QUERY_OUTPUT Output;
			public HANDLE DeviceHandle;
			public HANDLE CryptoSessionHandle;
			public uint32 OutputIDCount;
		}
		[CRepr]
		public struct D3D11_AUTHENTICATED_QUERY_OUTPUT_ID_INPUT
		{
			public D3D11_AUTHENTICATED_QUERY_INPUT Input;
			public HANDLE DeviceHandle;
			public HANDLE CryptoSessionHandle;
			public uint32 OutputIDIndex;
		}
		[CRepr]
		public struct D3D11_AUTHENTICATED_QUERY_OUTPUT_ID_OUTPUT
		{
			public D3D11_AUTHENTICATED_QUERY_OUTPUT Output;
			public HANDLE DeviceHandle;
			public HANDLE CryptoSessionHandle;
			public uint32 OutputIDIndex;
			public uint64 OutputID;
		}
		[CRepr]
		public struct D3D11_AUTHENTICATED_QUERY_ACCESSIBILITY_OUTPUT
		{
			public D3D11_AUTHENTICATED_QUERY_OUTPUT Output;
			public D3D11_BUS_TYPE BusType;
			public BOOL AccessibleInContiguousBlocks;
			public BOOL AccessibleInNonContiguousBlocks;
		}
		[CRepr]
		public struct D3D11_AUTHENTICATED_QUERY_ACCESSIBILITY_ENCRYPTION_GUID_COUNT_OUTPUT
		{
			public D3D11_AUTHENTICATED_QUERY_OUTPUT Output;
			public uint32 EncryptionGuidCount;
		}
		[CRepr]
		public struct D3D11_AUTHENTICATED_QUERY_ACCESSIBILITY_ENCRYPTION_GUID_INPUT
		{
			public D3D11_AUTHENTICATED_QUERY_INPUT Input;
			public uint32 EncryptionGuidIndex;
		}
		[CRepr]
		public struct D3D11_AUTHENTICATED_QUERY_ACCESSIBILITY_ENCRYPTION_GUID_OUTPUT
		{
			public D3D11_AUTHENTICATED_QUERY_OUTPUT Output;
			public uint32 EncryptionGuidIndex;
			public Guid EncryptionGuid;
		}
		[CRepr]
		public struct D3D11_AUTHENTICATED_QUERY_CURRENT_ACCESSIBILITY_ENCRYPTION_OUTPUT
		{
			public D3D11_AUTHENTICATED_QUERY_OUTPUT Output;
			public Guid EncryptionGuid;
		}
		[CRepr]
		public struct D3D11_AUTHENTICATED_CONFIGURE_INPUT
		{
			public D3D11_OMAC omac;
			public Guid ConfigureType;
			public HANDLE hChannel;
			public uint32 SequenceNumber;
		}
		[CRepr]
		public struct D3D11_AUTHENTICATED_CONFIGURE_OUTPUT
		{
			public D3D11_OMAC omac;
			public Guid ConfigureType;
			public HANDLE hChannel;
			public uint32 SequenceNumber;
			public HRESULT ReturnCode;
		}
		[CRepr]
		public struct D3D11_AUTHENTICATED_CONFIGURE_INITIALIZE_INPUT
		{
			public D3D11_AUTHENTICATED_CONFIGURE_INPUT Parameters;
			public uint32 StartSequenceQuery;
			public uint32 StartSequenceConfigure;
		}
		[CRepr]
		public struct D3D11_AUTHENTICATED_CONFIGURE_PROTECTION_INPUT
		{
			public D3D11_AUTHENTICATED_CONFIGURE_INPUT Parameters;
			public D3D11_AUTHENTICATED_PROTECTION_FLAGS Protections;
		}
		[CRepr]
		public struct D3D11_AUTHENTICATED_CONFIGURE_CRYPTO_SESSION_INPUT
		{
			public D3D11_AUTHENTICATED_CONFIGURE_INPUT Parameters;
			public HANDLE DecoderHandle;
			public HANDLE CryptoSessionHandle;
			public HANDLE DeviceHandle;
		}
		[CRepr]
		public struct D3D11_AUTHENTICATED_CONFIGURE_SHARED_RESOURCE_INPUT
		{
			public D3D11_AUTHENTICATED_CONFIGURE_INPUT Parameters;
			public D3D11_AUTHENTICATED_PROCESS_IDENTIFIER_TYPE ProcessType;
			public HANDLE ProcessHandle;
			public BOOL AllowAccess;
		}
		[CRepr]
		public struct D3D11_AUTHENTICATED_CONFIGURE_ACCESSIBLE_ENCRYPTION_INPUT
		{
			public D3D11_AUTHENTICATED_CONFIGURE_INPUT Parameters;
			public Guid EncryptionGuid;
		}
		[CRepr]
		public struct D3D11_TEX2D_VDOV
		{
			public uint32 ArraySlice;
		}
		[CRepr]
		public struct D3D11_VIDEO_DECODER_OUTPUT_VIEW_DESC
		{
			public Guid DecodeProfile;
			public D3D11_VDOV_DIMENSION ViewDimension;
			public _Anonymous_e__Union Anonymous;
			
			public D3D11_TEX2D_VDOV Texture2D { get => Anonymous.Texture2D; set mut => Anonymous.Texture2D = value; }
			
			[CRepr, Union]
			public struct _Anonymous_e__Union
			{
				public D3D11_TEX2D_VDOV Texture2D;
			}
		}
		[CRepr]
		public struct D3D11_TEX2D_VPIV
		{
			public uint32 MipSlice;
			public uint32 ArraySlice;
		}
		[CRepr]
		public struct D3D11_VIDEO_PROCESSOR_INPUT_VIEW_DESC
		{
			public uint32 FourCC;
			public D3D11_VPIV_DIMENSION ViewDimension;
			public _Anonymous_e__Union Anonymous;
			
			public D3D11_TEX2D_VPIV Texture2D { get => Anonymous.Texture2D; set mut => Anonymous.Texture2D = value; }
			
			[CRepr, Union]
			public struct _Anonymous_e__Union
			{
				public D3D11_TEX2D_VPIV Texture2D;
			}
		}
		[CRepr]
		public struct D3D11_TEX2D_VPOV
		{
			public uint32 MipSlice;
		}
		[CRepr]
		public struct D3D11_TEX2D_ARRAY_VPOV
		{
			public uint32 MipSlice;
			public uint32 FirstArraySlice;
			public uint32 ArraySize;
		}
		[CRepr]
		public struct D3D11_VIDEO_PROCESSOR_OUTPUT_VIEW_DESC
		{
			public D3D11_VPOV_DIMENSION ViewDimension;
			public _Anonymous_e__Union Anonymous;
			
			public D3D11_TEX2D_VPOV Texture2D { get => Anonymous.Texture2D; set mut => Anonymous.Texture2D = value; }
			public D3D11_TEX2D_ARRAY_VPOV Texture2DArray { get => Anonymous.Texture2DArray; set mut => Anonymous.Texture2DArray = value; }
			
			[CRepr, Union]
			public struct _Anonymous_e__Union
			{
				public D3D11_TEX2D_VPOV Texture2D;
				public D3D11_TEX2D_ARRAY_VPOV Texture2DArray;
			}
		}
		[CRepr]
		public struct D3D11_MESSAGE
		{
			public D3D11_MESSAGE_CATEGORY Category;
			public D3D11_MESSAGE_SEVERITY Severity;
			public D3D11_MESSAGE_ID ID;
			public uint8* pDescription;
			public uint DescriptionByteLength;
		}
		[CRepr]
		public struct D3D11_INFO_QUEUE_FILTER_DESC
		{
			public uint32 NumCategories;
			public D3D11_MESSAGE_CATEGORY* pCategoryList;
			public uint32 NumSeverities;
			public D3D11_MESSAGE_SEVERITY* pSeverityList;
			public uint32 NumIDs;
			public D3D11_MESSAGE_ID* pIDList;
		}
		[CRepr]
		public struct D3D11_INFO_QUEUE_FILTER
		{
			public D3D11_INFO_QUEUE_FILTER_DESC AllowList;
			public D3D11_INFO_QUEUE_FILTER_DESC DenyList;
		}
		[CRepr]
		public struct D3D11_RENDER_TARGET_BLEND_DESC1
		{
			public BOOL BlendEnable;
			public BOOL LogicOpEnable;
			public D3D11_BLEND SrcBlend;
			public D3D11_BLEND DestBlend;
			public D3D11_BLEND_OP BlendOp;
			public D3D11_BLEND SrcBlendAlpha;
			public D3D11_BLEND DestBlendAlpha;
			public D3D11_BLEND_OP BlendOpAlpha;
			public D3D11_LOGIC_OP LogicOp;
			public uint8 RenderTargetWriteMask;
		}
		[CRepr]
		public struct D3D11_BLEND_DESC1
		{
			public BOOL AlphaToCoverageEnable;
			public BOOL IndependentBlendEnable;
			public D3D11_RENDER_TARGET_BLEND_DESC1[8] RenderTarget;
		}
		[CRepr]
		public struct D3D11_RASTERIZER_DESC1
		{
			public D3D11_FILL_MODE FillMode;
			public D3D11_CULL_MODE CullMode;
			public BOOL FrontCounterClockwise;
			public int32 DepthBias;
			public float DepthBiasClamp;
			public float SlopeScaledDepthBias;
			public BOOL DepthClipEnable;
			public BOOL ScissorEnable;
			public BOOL MultisampleEnable;
			public BOOL AntialiasedLineEnable;
			public uint32 ForcedSampleCount;
		}
		[CRepr]
		public struct D3D11_VIDEO_DECODER_SUB_SAMPLE_MAPPING_BLOCK
		{
			public uint32 ClearSize;
			public uint32 EncryptedSize;
		}
		[CRepr]
		public struct D3D11_VIDEO_DECODER_BUFFER_DESC1
		{
			public D3D11_VIDEO_DECODER_BUFFER_TYPE BufferType;
			public uint32 DataOffset;
			public uint32 DataSize;
			public void* pIV;
			public uint32 IVSize;
			public D3D11_VIDEO_DECODER_SUB_SAMPLE_MAPPING_BLOCK* pSubSampleMappingBlock;
			public uint32 SubSampleMappingCount;
		}
		[CRepr]
		public struct D3D11_VIDEO_DECODER_BEGIN_FRAME_CRYPTO_SESSION
		{
			public ID3D11CryptoSession* pCryptoSession;
			public uint32 BlobSize;
			public void* pBlob;
			public Guid* pKeyInfoId;
			public uint32 PrivateDataSize;
			public void* pPrivateData;
		}
		[CRepr]
		public struct D3D11_VIDEO_PROCESSOR_STREAM_BEHAVIOR_HINT
		{
			public BOOL Enable;
			public uint32 Width;
			public uint32 Height;
			public DXGI_FORMAT Format;
		}
		[CRepr]
		public struct D3D11_KEY_EXCHANGE_HW_PROTECTION_INPUT_DATA
		{
			public uint32 PrivateDataSize;
			public uint32 HWProtectionDataSize;
			public uint8[4] pbInput;
		}
		[CRepr]
		public struct D3D11_KEY_EXCHANGE_HW_PROTECTION_OUTPUT_DATA
		{
			public uint32 PrivateDataSize;
			public uint32 MaxHWProtectionDataSize;
			public uint32 HWProtectionDataSize;
			public uint64 TransportTime;
			public uint64 ExecutionTime;
			public uint8[4] pbOutput;
		}
		[CRepr]
		public struct D3D11_KEY_EXCHANGE_HW_PROTECTION_DATA
		{
			public uint32 HWProtectionFunctionID;
			public D3D11_KEY_EXCHANGE_HW_PROTECTION_INPUT_DATA* pInputData;
			public D3D11_KEY_EXCHANGE_HW_PROTECTION_OUTPUT_DATA* pOutputData;
			public HRESULT Status;
		}
		[CRepr]
		public struct D3D11_VIDEO_SAMPLE_DESC
		{
			public uint32 Width;
			public uint32 Height;
			public DXGI_FORMAT Format;
			public DXGI_COLOR_SPACE_TYPE ColorSpace;
		}
		[CRepr]
		public struct D3D11_TILED_RESOURCE_COORDINATE
		{
			public uint32 X;
			public uint32 Y;
			public uint32 Z;
			public uint32 Subresource;
		}
		[CRepr]
		public struct D3D11_TILE_REGION_SIZE
		{
			public uint32 NumTiles;
			public BOOL bUseBox;
			public uint32 Width;
			public uint16 Height;
			public uint16 Depth;
		}
		[CRepr]
		public struct D3D11_SUBRESOURCE_TILING
		{
			public uint32 WidthInTiles;
			public uint16 HeightInTiles;
			public uint16 DepthInTiles;
			public uint32 StartTileIndexInOverallResource;
		}
		[CRepr]
		public struct D3D11_TILE_SHAPE
		{
			public uint32 WidthInTexels;
			public uint32 HeightInTexels;
			public uint32 DepthInTexels;
		}
		[CRepr]
		public struct D3D11_PACKED_MIP_DESC
		{
			public uint8 NumStandardMips;
			public uint8 NumPackedMips;
			public uint32 NumTilesForPackedMips;
			public uint32 StartTileIndexInOverallResource;
		}
		[CRepr]
		public struct D3D11_TEXTURE2D_DESC1
		{
			public uint32 Width;
			public uint32 Height;
			public uint32 MipLevels;
			public uint32 ArraySize;
			public DXGI_FORMAT Format;
			public DXGI_SAMPLE_DESC SampleDesc;
			public D3D11_USAGE Usage;
			public uint32 BindFlags;
			public uint32 CPUAccessFlags;
			public uint32 MiscFlags;
			public D3D11_TEXTURE_LAYOUT TextureLayout;
		}
		[CRepr]
		public struct D3D11_TEXTURE3D_DESC1
		{
			public uint32 Width;
			public uint32 Height;
			public uint32 Depth;
			public uint32 MipLevels;
			public DXGI_FORMAT Format;
			public D3D11_USAGE Usage;
			public uint32 BindFlags;
			public uint32 CPUAccessFlags;
			public uint32 MiscFlags;
			public D3D11_TEXTURE_LAYOUT TextureLayout;
		}
		[CRepr]
		public struct D3D11_RASTERIZER_DESC2
		{
			public D3D11_FILL_MODE FillMode;
			public D3D11_CULL_MODE CullMode;
			public BOOL FrontCounterClockwise;
			public int32 DepthBias;
			public float DepthBiasClamp;
			public float SlopeScaledDepthBias;
			public BOOL DepthClipEnable;
			public BOOL ScissorEnable;
			public BOOL MultisampleEnable;
			public BOOL AntialiasedLineEnable;
			public uint32 ForcedSampleCount;
			public D3D11_CONSERVATIVE_RASTERIZATION_MODE ConservativeRaster;
		}
		[CRepr]
		public struct D3D11_TEX2D_SRV1
		{
			public uint32 MostDetailedMip;
			public uint32 MipLevels;
			public uint32 PlaneSlice;
		}
		[CRepr]
		public struct D3D11_TEX2D_ARRAY_SRV1
		{
			public uint32 MostDetailedMip;
			public uint32 MipLevels;
			public uint32 FirstArraySlice;
			public uint32 ArraySize;
			public uint32 PlaneSlice;
		}
		[CRepr]
		public struct D3D11_SHADER_RESOURCE_VIEW_DESC1
		{
			public DXGI_FORMAT Format;
			public D3D_SRV_DIMENSION ViewDimension;
			public _Anonymous_e__Union Anonymous;
			
			public D3D11_BUFFER_SRV Buffer { get => Anonymous.Buffer; set mut => Anonymous.Buffer = value; }
			public D3D11_TEX1D_SRV Texture1D { get => Anonymous.Texture1D; set mut => Anonymous.Texture1D = value; }
			public D3D11_TEX1D_ARRAY_SRV Texture1DArray { get => Anonymous.Texture1DArray; set mut => Anonymous.Texture1DArray = value; }
			public D3D11_TEX2D_SRV1 Texture2D { get => Anonymous.Texture2D; set mut => Anonymous.Texture2D = value; }
			public D3D11_TEX2D_ARRAY_SRV1 Texture2DArray { get => Anonymous.Texture2DArray; set mut => Anonymous.Texture2DArray = value; }
			public D3D11_TEX2DMS_SRV Texture2DMS { get => Anonymous.Texture2DMS; set mut => Anonymous.Texture2DMS = value; }
			public D3D11_TEX2DMS_ARRAY_SRV Texture2DMSArray { get => Anonymous.Texture2DMSArray; set mut => Anonymous.Texture2DMSArray = value; }
			public D3D11_TEX3D_SRV Texture3D { get => Anonymous.Texture3D; set mut => Anonymous.Texture3D = value; }
			public D3D11_TEXCUBE_SRV TextureCube { get => Anonymous.TextureCube; set mut => Anonymous.TextureCube = value; }
			public D3D11_TEXCUBE_ARRAY_SRV TextureCubeArray { get => Anonymous.TextureCubeArray; set mut => Anonymous.TextureCubeArray = value; }
			public D3D11_BUFFEREX_SRV BufferEx { get => Anonymous.BufferEx; set mut => Anonymous.BufferEx = value; }
			
			[CRepr, Union]
			public struct _Anonymous_e__Union
			{
				public D3D11_BUFFER_SRV Buffer;
				public D3D11_TEX1D_SRV Texture1D;
				public D3D11_TEX1D_ARRAY_SRV Texture1DArray;
				public D3D11_TEX2D_SRV1 Texture2D;
				public D3D11_TEX2D_ARRAY_SRV1 Texture2DArray;
				public D3D11_TEX2DMS_SRV Texture2DMS;
				public D3D11_TEX2DMS_ARRAY_SRV Texture2DMSArray;
				public D3D11_TEX3D_SRV Texture3D;
				public D3D11_TEXCUBE_SRV TextureCube;
				public D3D11_TEXCUBE_ARRAY_SRV TextureCubeArray;
				public D3D11_BUFFEREX_SRV BufferEx;
			}
		}
		[CRepr]
		public struct D3D11_TEX2D_RTV1
		{
			public uint32 MipSlice;
			public uint32 PlaneSlice;
		}
		[CRepr]
		public struct D3D11_TEX2D_ARRAY_RTV1
		{
			public uint32 MipSlice;
			public uint32 FirstArraySlice;
			public uint32 ArraySize;
			public uint32 PlaneSlice;
		}
		[CRepr]
		public struct D3D11_RENDER_TARGET_VIEW_DESC1
		{
			public DXGI_FORMAT Format;
			public D3D11_RTV_DIMENSION ViewDimension;
			public _Anonymous_e__Union Anonymous;
			
			public D3D11_BUFFER_RTV Buffer { get => Anonymous.Buffer; set mut => Anonymous.Buffer = value; }
			public D3D11_TEX1D_RTV Texture1D { get => Anonymous.Texture1D; set mut => Anonymous.Texture1D = value; }
			public D3D11_TEX1D_ARRAY_RTV Texture1DArray { get => Anonymous.Texture1DArray; set mut => Anonymous.Texture1DArray = value; }
			public D3D11_TEX2D_RTV1 Texture2D { get => Anonymous.Texture2D; set mut => Anonymous.Texture2D = value; }
			public D3D11_TEX2D_ARRAY_RTV1 Texture2DArray { get => Anonymous.Texture2DArray; set mut => Anonymous.Texture2DArray = value; }
			public D3D11_TEX2DMS_RTV Texture2DMS { get => Anonymous.Texture2DMS; set mut => Anonymous.Texture2DMS = value; }
			public D3D11_TEX2DMS_ARRAY_RTV Texture2DMSArray { get => Anonymous.Texture2DMSArray; set mut => Anonymous.Texture2DMSArray = value; }
			public D3D11_TEX3D_RTV Texture3D { get => Anonymous.Texture3D; set mut => Anonymous.Texture3D = value; }
			
			[CRepr, Union]
			public struct _Anonymous_e__Union
			{
				public D3D11_BUFFER_RTV Buffer;
				public D3D11_TEX1D_RTV Texture1D;
				public D3D11_TEX1D_ARRAY_RTV Texture1DArray;
				public D3D11_TEX2D_RTV1 Texture2D;
				public D3D11_TEX2D_ARRAY_RTV1 Texture2DArray;
				public D3D11_TEX2DMS_RTV Texture2DMS;
				public D3D11_TEX2DMS_ARRAY_RTV Texture2DMSArray;
				public D3D11_TEX3D_RTV Texture3D;
			}
		}
		[CRepr]
		public struct D3D11_TEX2D_UAV1
		{
			public uint32 MipSlice;
			public uint32 PlaneSlice;
		}
		[CRepr]
		public struct D3D11_TEX2D_ARRAY_UAV1
		{
			public uint32 MipSlice;
			public uint32 FirstArraySlice;
			public uint32 ArraySize;
			public uint32 PlaneSlice;
		}
		[CRepr]
		public struct D3D11_UNORDERED_ACCESS_VIEW_DESC1
		{
			public DXGI_FORMAT Format;
			public D3D11_UAV_DIMENSION ViewDimension;
			public _Anonymous_e__Union Anonymous;
			
			public D3D11_BUFFER_UAV Buffer { get => Anonymous.Buffer; set mut => Anonymous.Buffer = value; }
			public D3D11_TEX1D_UAV Texture1D { get => Anonymous.Texture1D; set mut => Anonymous.Texture1D = value; }
			public D3D11_TEX1D_ARRAY_UAV Texture1DArray { get => Anonymous.Texture1DArray; set mut => Anonymous.Texture1DArray = value; }
			public D3D11_TEX2D_UAV1 Texture2D { get => Anonymous.Texture2D; set mut => Anonymous.Texture2D = value; }
			public D3D11_TEX2D_ARRAY_UAV1 Texture2DArray { get => Anonymous.Texture2DArray; set mut => Anonymous.Texture2DArray = value; }
			public D3D11_TEX3D_UAV Texture3D { get => Anonymous.Texture3D; set mut => Anonymous.Texture3D = value; }
			
			[CRepr, Union]
			public struct _Anonymous_e__Union
			{
				public D3D11_BUFFER_UAV Buffer;
				public D3D11_TEX1D_UAV Texture1D;
				public D3D11_TEX1D_ARRAY_UAV Texture1DArray;
				public D3D11_TEX2D_UAV1 Texture2D;
				public D3D11_TEX2D_ARRAY_UAV1 Texture2DArray;
				public D3D11_TEX3D_UAV Texture3D;
			}
		}
		[CRepr]
		public struct D3D11_QUERY_DESC1
		{
			public D3D11_QUERY Query;
			public uint32 MiscFlags;
			public D3D11_CONTEXT_TYPE ContextType;
		}
		[CRepr]
		public struct D3D11_FEATURE_DATA_VIDEO_DECODER_HISTOGRAM
		{
			public D3D11_VIDEO_DECODER_DESC DecoderDesc;
			public D3D11_VIDEO_DECODER_HISTOGRAM_COMPONENT_FLAGS Components;
			public uint32 BinCount;
			public uint32 CounterBitDepth;
		}
		[CRepr]
		public struct D3D11_VIDEO_DECODER_BUFFER_DESC2
		{
			public D3D11_VIDEO_DECODER_BUFFER_TYPE BufferType;
			public uint32 DataOffset;
			public uint32 DataSize;
			public void* pIV;
			public uint32 IVSize;
			public D3D11_VIDEO_DECODER_SUB_SAMPLE_MAPPING_BLOCK* pSubSampleMappingBlock;
			public uint32 SubSampleMappingCount;
			public uint32 cBlocksStripeEncrypted;
			public uint32 cBlocksStripeClear;
		}
		[CRepr]
		public struct D3D11_FEATURE_DATA_D3D11_OPTIONS4
		{
			public BOOL ExtendedNV12SharedTextureSupported;
		}
		[CRepr]
		public struct D3D11_SIGNATURE_PARAMETER_DESC
		{
			public PSTR SemanticName;
			public uint32 SemanticIndex;
			public uint32 Register;
			public D3D_NAME SystemValueType;
			public D3D_REGISTER_COMPONENT_TYPE ComponentType;
			public uint8 Mask;
			public uint8 ReadWriteMask;
			public uint32 Stream;
			public D3D_MIN_PRECISION MinPrecision;
		}
		[CRepr]
		public struct D3D11_SHADER_BUFFER_DESC
		{
			public PSTR Name;
			public D3D_CBUFFER_TYPE Type;
			public uint32 Variables;
			public uint32 Size;
			public uint32 uFlags;
		}
		[CRepr]
		public struct D3D11_SHADER_VARIABLE_DESC
		{
			public PSTR Name;
			public uint32 StartOffset;
			public uint32 Size;
			public uint32 uFlags;
			public void* DefaultValue;
			public uint32 StartTexture;
			public uint32 TextureSize;
			public uint32 StartSampler;
			public uint32 SamplerSize;
		}
		[CRepr]
		public struct D3D11_SHADER_TYPE_DESC
		{
			public D3D_SHADER_VARIABLE_CLASS Class;
			public D3D_SHADER_VARIABLE_TYPE Type;
			public uint32 Rows;
			public uint32 Columns;
			public uint32 Elements;
			public uint32 Members;
			public uint32 Offset;
			public PSTR Name;
		}
		[CRepr]
		public struct D3D11_SHADER_DESC
		{
			public uint32 Version;
			public PSTR Creator;
			public uint32 Flags;
			public uint32 ConstantBuffers;
			public uint32 BoundResources;
			public uint32 InputParameters;
			public uint32 OutputParameters;
			public uint32 InstructionCount;
			public uint32 TempRegisterCount;
			public uint32 TempArrayCount;
			public uint32 DefCount;
			public uint32 DclCount;
			public uint32 TextureNormalInstructions;
			public uint32 TextureLoadInstructions;
			public uint32 TextureCompInstructions;
			public uint32 TextureBiasInstructions;
			public uint32 TextureGradientInstructions;
			public uint32 FloatInstructionCount;
			public uint32 IntInstructionCount;
			public uint32 UintInstructionCount;
			public uint32 StaticFlowControlCount;
			public uint32 DynamicFlowControlCount;
			public uint32 MacroInstructionCount;
			public uint32 ArrayInstructionCount;
			public uint32 CutInstructionCount;
			public uint32 EmitInstructionCount;
			public D3D_PRIMITIVE_TOPOLOGY GSOutputTopology;
			public uint32 GSMaxOutputVertexCount;
			public D3D_PRIMITIVE InputPrimitive;
			public uint32 PatchConstantParameters;
			public uint32 cGSInstanceCount;
			public uint32 cControlPoints;
			public D3D_TESSELLATOR_OUTPUT_PRIMITIVE HSOutputPrimitive;
			public D3D_TESSELLATOR_PARTITIONING HSPartitioning;
			public D3D_TESSELLATOR_DOMAIN TessellatorDomain;
			public uint32 cBarrierInstructions;
			public uint32 cInterlockedInstructions;
			public uint32 cTextureStoreInstructions;
		}
		[CRepr]
		public struct D3D11_SHADER_INPUT_BIND_DESC
		{
			public PSTR Name;
			public D3D_SHADER_INPUT_TYPE Type;
			public uint32 BindPoint;
			public uint32 BindCount;
			public uint32 uFlags;
			public D3D_RESOURCE_RETURN_TYPE ReturnType;
			public D3D_SRV_DIMENSION Dimension;
			public uint32 NumSamples;
		}
		[CRepr]
		public struct D3D11_LIBRARY_DESC
		{
			public PSTR Creator;
			public uint32 Flags;
			public uint32 FunctionCount;
		}
		[CRepr]
		public struct D3D11_FUNCTION_DESC
		{
			public uint32 Version;
			public PSTR Creator;
			public uint32 Flags;
			public uint32 ConstantBuffers;
			public uint32 BoundResources;
			public uint32 InstructionCount;
			public uint32 TempRegisterCount;
			public uint32 TempArrayCount;
			public uint32 DefCount;
			public uint32 DclCount;
			public uint32 TextureNormalInstructions;
			public uint32 TextureLoadInstructions;
			public uint32 TextureCompInstructions;
			public uint32 TextureBiasInstructions;
			public uint32 TextureGradientInstructions;
			public uint32 FloatInstructionCount;
			public uint32 IntInstructionCount;
			public uint32 UintInstructionCount;
			public uint32 StaticFlowControlCount;
			public uint32 DynamicFlowControlCount;
			public uint32 MacroInstructionCount;
			public uint32 ArrayInstructionCount;
			public uint32 MovInstructionCount;
			public uint32 MovcInstructionCount;
			public uint32 ConversionInstructionCount;
			public uint32 BitwiseInstructionCount;
			public D3D_FEATURE_LEVEL MinFeatureLevel;
			public uint64 RequiredFeatureFlags;
			public PSTR Name;
			public int32 FunctionParameterCount;
			public BOOL HasReturn;
			public BOOL Has10Level9VertexShader;
			public BOOL Has10Level9PixelShader;
		}
		[CRepr]
		public struct D3D11_PARAMETER_DESC
		{
			public PSTR Name;
			public PSTR SemanticName;
			public D3D_SHADER_VARIABLE_TYPE Type;
			public D3D_SHADER_VARIABLE_CLASS Class;
			public uint32 Rows;
			public uint32 Columns;
			public D3D_INTERPOLATION_MODE InterpolationMode;
			public D3D_PARAMETER_FLAGS Flags;
			public uint32 FirstInRegister;
			public uint32 FirstInComponent;
			public uint32 FirstOutRegister;
			public uint32 FirstOutComponent;
		}
		[CRepr]
		public struct D3D11_VERTEX_SHADER_TRACE_DESC
		{
			public uint64 Invocation;
		}
		[CRepr]
		public struct D3D11_HULL_SHADER_TRACE_DESC
		{
			public uint64 Invocation;
		}
		[CRepr]
		public struct D3D11_DOMAIN_SHADER_TRACE_DESC
		{
			public uint64 Invocation;
		}
		[CRepr]
		public struct D3D11_GEOMETRY_SHADER_TRACE_DESC
		{
			public uint64 Invocation;
		}
		[CRepr]
		public struct D3D11_PIXEL_SHADER_TRACE_DESC
		{
			public uint64 Invocation;
			public int32 X;
			public int32 Y;
			public uint64 SampleMask;
		}
		[CRepr]
		public struct D3D11_COMPUTE_SHADER_TRACE_DESC
		{
			public uint64 Invocation;
			public uint32[3] ThreadIDInGroup;
			public uint32[3] ThreadGroupID;
		}
		[CRepr]
		public struct D3D11_SHADER_TRACE_DESC
		{
			public D3D11_SHADER_TYPE Type;
			public uint32 Flags;
			public _Anonymous_e__Union Anonymous;
			
			public D3D11_VERTEX_SHADER_TRACE_DESC VertexShaderTraceDesc { get => Anonymous.VertexShaderTraceDesc; set mut => Anonymous.VertexShaderTraceDesc = value; }
			public D3D11_HULL_SHADER_TRACE_DESC HullShaderTraceDesc { get => Anonymous.HullShaderTraceDesc; set mut => Anonymous.HullShaderTraceDesc = value; }
			public D3D11_DOMAIN_SHADER_TRACE_DESC DomainShaderTraceDesc { get => Anonymous.DomainShaderTraceDesc; set mut => Anonymous.DomainShaderTraceDesc = value; }
			public D3D11_GEOMETRY_SHADER_TRACE_DESC GeometryShaderTraceDesc { get => Anonymous.GeometryShaderTraceDesc; set mut => Anonymous.GeometryShaderTraceDesc = value; }
			public D3D11_PIXEL_SHADER_TRACE_DESC PixelShaderTraceDesc { get => Anonymous.PixelShaderTraceDesc; set mut => Anonymous.PixelShaderTraceDesc = value; }
			public D3D11_COMPUTE_SHADER_TRACE_DESC ComputeShaderTraceDesc { get => Anonymous.ComputeShaderTraceDesc; set mut => Anonymous.ComputeShaderTraceDesc = value; }
			
			[CRepr, Union]
			public struct _Anonymous_e__Union
			{
				public D3D11_VERTEX_SHADER_TRACE_DESC VertexShaderTraceDesc;
				public D3D11_HULL_SHADER_TRACE_DESC HullShaderTraceDesc;
				public D3D11_DOMAIN_SHADER_TRACE_DESC DomainShaderTraceDesc;
				public D3D11_GEOMETRY_SHADER_TRACE_DESC GeometryShaderTraceDesc;
				public D3D11_PIXEL_SHADER_TRACE_DESC PixelShaderTraceDesc;
				public D3D11_COMPUTE_SHADER_TRACE_DESC ComputeShaderTraceDesc;
			}
		}
		[CRepr]
		public struct D3D11_TRACE_STATS
		{
			public D3D11_SHADER_TRACE_DESC TraceDesc;
			public uint8 NumInvocationsInStamp;
			public uint8 TargetStampIndex;
			public uint32 NumTraceSteps;
			public uint8[32] InputMask;
			public uint8[32] OutputMask;
			public uint16 NumTemps;
			public uint16 MaxIndexableTempIndex;
			public uint16[4096] IndexableTempSize;
			public uint16 ImmediateConstantBufferSize;
			public uint32[8] PixelPosition;
			public uint64[4] PixelCoverageMask;
			public uint64[4] PixelDiscardedMask;
			public uint64[4] PixelCoverageMaskAfterShader;
			public uint64[4] PixelCoverageMaskAfterA2CSampleMask;
			public uint64[4] PixelCoverageMaskAfterA2CSampleMaskDepth;
			public uint64[4] PixelCoverageMaskAfterA2CSampleMaskDepthStencil;
			public BOOL PSOutputsDepth;
			public BOOL PSOutputsMask;
			public D3D11_TRACE_GS_INPUT_PRIMITIVE GSInputPrimitive;
			public BOOL GSInputsPrimitiveID;
			public uint8[32] HSOutputPatchConstantMask;
			public uint8[32] DSInputPatchConstantMask;
		}
		[CRepr]
		public struct D3D11_TRACE_VALUE
		{
			public uint32[4] Bits;
			public uint8 ValidMask;
		}
		[CRepr]
		public struct D3D11_TRACE_REGISTER
		{
			public D3D11_TRACE_REGISTER_TYPE RegType;
			public _Anonymous_e__Union Anonymous;
			public uint8 OperandIndex;
			public uint8 Flags;
			
			public uint16 Index1D { get => Anonymous.Index1D; set mut => Anonymous.Index1D = value; }
			public uint16[2] Index2D { get => Anonymous.Index2D; set mut => Anonymous.Index2D = value; }
			
			[CRepr, Union]
			public struct _Anonymous_e__Union
			{
				public uint16 Index1D;
				public uint16[2] Index2D;
			}
		}
		[CRepr]
		public struct D3D11_TRACE_STEP
		{
			public uint32 ID;
			public BOOL InstructionActive;
			public uint8 NumRegistersWritten;
			public uint8 NumRegistersRead;
			public uint16 MiscOperations;
			public uint32 OpcodeType;
			public uint64 CurrentGlobalCycle;
		}
		[CRepr]
		public struct D3DX11_FFT_DESC
		{
			public uint32 NumDimensions;
			public uint32[32] ElementLengths;
			public uint32 DimensionMask;
			public D3DX11_FFT_DATA_TYPE Type;
		}
		[CRepr]
		public struct D3DX11_FFT_BUFFER_INFO
		{
			public uint32 NumTempBufferSizes;
			public uint32[4] TempBufferFloatSizes;
			public uint32 NumPrecomputeBufferSizes;
			public uint32[4] PrecomputeBufferFloatSizes;
		}
		
		// --- COM Interfaces ---
		
		[CRepr]
		public struct ID3D11DeviceChild : IUnknown
		{
			public const new Guid IID = .(0x1841e5c8, 0x16b0, 0x489b, 0xbc, 0xc8, 0x44, 0xcf, 0xb0, 0xd5, 0xde, 0xae);
			
			public new VTable* VT { get => (.)vt; }
			
			public void GetDevice(out ID3D11Device* ppDevice) mut => VT.GetDevice(ref this, out ppDevice);
			public HRESULT GetPrivateData(in Guid guid, out uint32 pDataSize, void* pData) mut => VT.GetPrivateData(ref this, guid, out pDataSize, pData);
			public HRESULT SetPrivateData(in Guid guid, uint32 DataSize, void* pData) mut => VT.SetPrivateData(ref this, guid, DataSize, pData);
			public HRESULT SetPrivateDataInterface(in Guid guid, IUnknown* pData) mut => VT.SetPrivateDataInterface(ref this, guid, pData);

			[CRepr]
			public struct VTable : IUnknown.VTable
			{
				public new function [CallingConvention(.Stdcall)] void(ref ID3D11DeviceChild self, out ID3D11Device* ppDevice) GetDevice;
				public new function [CallingConvention(.Stdcall)] HRESULT(ref ID3D11DeviceChild self, in Guid guid, out uint32 pDataSize, void* pData) GetPrivateData;
				public new function [CallingConvention(.Stdcall)] HRESULT(ref ID3D11DeviceChild self, in Guid guid, uint32 DataSize, void* pData) SetPrivateData;
				public new function [CallingConvention(.Stdcall)] HRESULT(ref ID3D11DeviceChild self, in Guid guid, IUnknown* pData) SetPrivateDataInterface;
			}
		}
		[CRepr]
		public struct ID3D11DepthStencilState : ID3D11DeviceChild
		{
			public const new Guid IID = .(0x03823efb, 0x8d8f, 0x4e1c, 0x9a, 0xa2, 0xf6, 0x4b, 0xb2, 0xcb, 0xfd, 0xf1);
			
			public new VTable* VT { get => (.)vt; }
			
			public void GetDesc(out D3D11_DEPTH_STENCIL_DESC pDesc) mut => VT.GetDesc(ref this, out pDesc);

			[CRepr]
			public struct VTable : ID3D11DeviceChild.VTable
			{
				public new function [CallingConvention(.Stdcall)] void(ref ID3D11DepthStencilState self, out D3D11_DEPTH_STENCIL_DESC pDesc) GetDesc;
			}
		}
		[CRepr]
		public struct ID3D11BlendState : ID3D11DeviceChild
		{
			public const new Guid IID = .(0x75b68faa, 0x347d, 0x4159, 0x8f, 0x45, 0xa0, 0x64, 0x0f, 0x01, 0xcd, 0x9a);
			
			public new VTable* VT { get => (.)vt; }
			
			public void GetDesc(out D3D11_BLEND_DESC pDesc) mut => VT.GetDesc(ref this, out pDesc);

			[CRepr]
			public struct VTable : ID3D11DeviceChild.VTable
			{
				public new function [CallingConvention(.Stdcall)] void(ref ID3D11BlendState self, out D3D11_BLEND_DESC pDesc) GetDesc;
			}
		}
		[CRepr]
		public struct ID3D11RasterizerState : ID3D11DeviceChild
		{
			public const new Guid IID = .(0x9bb4ab81, 0xab1a, 0x4d8f, 0xb5, 0x06, 0xfc, 0x04, 0x20, 0x0b, 0x6e, 0xe7);
			
			public new VTable* VT { get => (.)vt; }
			
			public void GetDesc(out D3D11_RASTERIZER_DESC pDesc) mut => VT.GetDesc(ref this, out pDesc);

			[CRepr]
			public struct VTable : ID3D11DeviceChild.VTable
			{
				public new function [CallingConvention(.Stdcall)] void(ref ID3D11RasterizerState self, out D3D11_RASTERIZER_DESC pDesc) GetDesc;
			}
		}
		[CRepr]
		public struct ID3D11Resource : ID3D11DeviceChild
		{
			public const new Guid IID = .(0xdc8e63f3, 0xd12b, 0x4952, 0xb4, 0x7b, 0x5e, 0x45, 0x02, 0x6a, 0x86, 0x2d);
			
			public new VTable* VT { get => (.)vt; }
			
			public void ComGetType(out D3D11_RESOURCE_DIMENSION pResourceDimension) mut => VT.ComGetType(ref this, out pResourceDimension);
			public void SetEvictionPriority(uint32 EvictionPriority) mut => VT.SetEvictionPriority(ref this, EvictionPriority);
			public uint32 GetEvictionPriority() mut => VT.GetEvictionPriority(ref this);

			[CRepr]
			public struct VTable : ID3D11DeviceChild.VTable
			{
				public new function [CallingConvention(.Stdcall)] void(ref ID3D11Resource self, out D3D11_RESOURCE_DIMENSION pResourceDimension) ComGetType;
				public new function [CallingConvention(.Stdcall)] void(ref ID3D11Resource self, uint32 EvictionPriority) SetEvictionPriority;
				public new function [CallingConvention(.Stdcall)] uint32(ref ID3D11Resource self) GetEvictionPriority;
			}
		}
		[CRepr]
		public struct ID3D11Buffer : ID3D11Resource
		{
			public const new Guid IID = .(0x48570b85, 0xd1ee, 0x4fcd, 0xa2, 0x50, 0xeb, 0x35, 0x07, 0x22, 0xb0, 0x37);
			
			public new VTable* VT { get => (.)vt; }
			
			public void GetDesc(out D3D11_BUFFER_DESC pDesc) mut => VT.GetDesc(ref this, out pDesc);

			[CRepr]
			public struct VTable : ID3D11Resource.VTable
			{
				public new function [CallingConvention(.Stdcall)] void(ref ID3D11Buffer self, out D3D11_BUFFER_DESC pDesc) GetDesc;
			}
		}
		[CRepr]
		public struct ID3D11Texture1D : ID3D11Resource
		{
			public const new Guid IID = .(0xf8fb5c27, 0xc6b3, 0x4f75, 0xa4, 0xc8, 0x43, 0x9a, 0xf2, 0xef, 0x56, 0x4c);
			
			public new VTable* VT { get => (.)vt; }
			
			public void GetDesc(out D3D11_TEXTURE1D_DESC pDesc) mut => VT.GetDesc(ref this, out pDesc);

			[CRepr]
			public struct VTable : ID3D11Resource.VTable
			{
				public new function [CallingConvention(.Stdcall)] void(ref ID3D11Texture1D self, out D3D11_TEXTURE1D_DESC pDesc) GetDesc;
			}
		}
		[CRepr]
		public struct ID3D11Texture2D : ID3D11Resource
		{
			public const new Guid IID = .(0x6f15aaf2, 0xd208, 0x4e89, 0x9a, 0xb4, 0x48, 0x95, 0x35, 0xd3, 0x4f, 0x9c);
			
			public new VTable* VT { get => (.)vt; }
			
			public void GetDesc(out D3D11_TEXTURE2D_DESC pDesc) mut => VT.GetDesc(ref this, out pDesc);

			[CRepr]
			public struct VTable : ID3D11Resource.VTable
			{
				public new function [CallingConvention(.Stdcall)] void(ref ID3D11Texture2D self, out D3D11_TEXTURE2D_DESC pDesc) GetDesc;
			}
		}
		[CRepr]
		public struct ID3D11Texture3D : ID3D11Resource
		{
			public const new Guid IID = .(0x037e866e, 0xf56d, 0x4357, 0xa8, 0xaf, 0x9d, 0xab, 0xbe, 0x6e, 0x25, 0x0e);
			
			public new VTable* VT { get => (.)vt; }
			
			public void GetDesc(out D3D11_TEXTURE3D_DESC pDesc) mut => VT.GetDesc(ref this, out pDesc);

			[CRepr]
			public struct VTable : ID3D11Resource.VTable
			{
				public new function [CallingConvention(.Stdcall)] void(ref ID3D11Texture3D self, out D3D11_TEXTURE3D_DESC pDesc) GetDesc;
			}
		}
		[CRepr]
		public struct ID3D11View : ID3D11DeviceChild
		{
			public const new Guid IID = .(0x839d1216, 0xbb2e, 0x412b, 0xb7, 0xf4, 0xa9, 0xdb, 0xeb, 0xe0, 0x8e, 0xd1);
			
			public new VTable* VT { get => (.)vt; }
			
			public void GetResource(out ID3D11Resource* ppResource) mut => VT.GetResource(ref this, out ppResource);

			[CRepr]
			public struct VTable : ID3D11DeviceChild.VTable
			{
				public new function [CallingConvention(.Stdcall)] void(ref ID3D11View self, out ID3D11Resource* ppResource) GetResource;
			}
		}
		[CRepr]
		public struct ID3D11ShaderResourceView : ID3D11View
		{
			public const new Guid IID = .(0xb0e06fe0, 0x8192, 0x4e1a, 0xb1, 0xca, 0x36, 0xd7, 0x41, 0x47, 0x10, 0xb2);
			
			public new VTable* VT { get => (.)vt; }
			
			public void GetDesc(out D3D11_SHADER_RESOURCE_VIEW_DESC pDesc) mut => VT.GetDesc(ref this, out pDesc);

			[CRepr]
			public struct VTable : ID3D11View.VTable
			{
				public new function [CallingConvention(.Stdcall)] void(ref ID3D11ShaderResourceView self, out D3D11_SHADER_RESOURCE_VIEW_DESC pDesc) GetDesc;
			}
		}
		[CRepr]
		public struct ID3D11RenderTargetView : ID3D11View
		{
			public const new Guid IID = .(0xdfdba067, 0x0b8d, 0x4865, 0x87, 0x5b, 0xd7, 0xb4, 0x51, 0x6c, 0xc1, 0x64);
			
			public new VTable* VT { get => (.)vt; }
			
			public void GetDesc(out D3D11_RENDER_TARGET_VIEW_DESC pDesc) mut => VT.GetDesc(ref this, out pDesc);

			[CRepr]
			public struct VTable : ID3D11View.VTable
			{
				public new function [CallingConvention(.Stdcall)] void(ref ID3D11RenderTargetView self, out D3D11_RENDER_TARGET_VIEW_DESC pDesc) GetDesc;
			}
		}
		[CRepr]
		public struct ID3D11DepthStencilView : ID3D11View
		{
			public const new Guid IID = .(0x9fdac92a, 0x1876, 0x48c3, 0xaf, 0xad, 0x25, 0xb9, 0x4f, 0x84, 0xa9, 0xb6);
			
			public new VTable* VT { get => (.)vt; }
			
			public void GetDesc(out D3D11_DEPTH_STENCIL_VIEW_DESC pDesc) mut => VT.GetDesc(ref this, out pDesc);

			[CRepr]
			public struct VTable : ID3D11View.VTable
			{
				public new function [CallingConvention(.Stdcall)] void(ref ID3D11DepthStencilView self, out D3D11_DEPTH_STENCIL_VIEW_DESC pDesc) GetDesc;
			}
		}
		[CRepr]
		public struct ID3D11UnorderedAccessView : ID3D11View
		{
			public const new Guid IID = .(0x28acf509, 0x7f5c, 0x48f6, 0x86, 0x11, 0xf3, 0x16, 0x01, 0x0a, 0x63, 0x80);
			
			public new VTable* VT { get => (.)vt; }
			
			public void GetDesc(out D3D11_UNORDERED_ACCESS_VIEW_DESC pDesc) mut => VT.GetDesc(ref this, out pDesc);

			[CRepr]
			public struct VTable : ID3D11View.VTable
			{
				public new function [CallingConvention(.Stdcall)] void(ref ID3D11UnorderedAccessView self, out D3D11_UNORDERED_ACCESS_VIEW_DESC pDesc) GetDesc;
			}
		}
		[CRepr]
		public struct ID3D11VertexShader : ID3D11DeviceChild
		{
			public const new Guid IID = .(0x3b301d64, 0xd678, 0x4289, 0x88, 0x97, 0x22, 0xf8, 0x92, 0x8b, 0x72, 0xf3);
			
			public new VTable* VT { get => (.)vt; }
			
			[CRepr]
			public struct VTable : ID3D11DeviceChild.VTable {}
		}
		[CRepr]
		public struct ID3D11HullShader : ID3D11DeviceChild
		{
			public const new Guid IID = .(0x8e5c6061, 0x628a, 0x4c8e, 0x82, 0x64, 0xbb, 0xe4, 0x5c, 0xb3, 0xd5, 0xdd);
			
			public new VTable* VT { get => (.)vt; }
			
			[CRepr]
			public struct VTable : ID3D11DeviceChild.VTable {}
		}
		[CRepr]
		public struct ID3D11DomainShader : ID3D11DeviceChild
		{
			public const new Guid IID = .(0xf582c508, 0x0f36, 0x490c, 0x99, 0x77, 0x31, 0xee, 0xce, 0x26, 0x8c, 0xfa);
			
			public new VTable* VT { get => (.)vt; }
			
			[CRepr]
			public struct VTable : ID3D11DeviceChild.VTable {}
		}
		[CRepr]
		public struct ID3D11GeometryShader : ID3D11DeviceChild
		{
			public const new Guid IID = .(0x38325b96, 0xeffb, 0x4022, 0xba, 0x02, 0x2e, 0x79, 0x5b, 0x70, 0x27, 0x5c);
			
			public new VTable* VT { get => (.)vt; }
			
			[CRepr]
			public struct VTable : ID3D11DeviceChild.VTable {}
		}
		[CRepr]
		public struct ID3D11PixelShader : ID3D11DeviceChild
		{
			public const new Guid IID = .(0xea82e40d, 0x51dc, 0x4f33, 0x93, 0xd4, 0xdb, 0x7c, 0x91, 0x25, 0xae, 0x8c);
			
			public new VTable* VT { get => (.)vt; }
			
			[CRepr]
			public struct VTable : ID3D11DeviceChild.VTable {}
		}
		[CRepr]
		public struct ID3D11ComputeShader : ID3D11DeviceChild
		{
			public const new Guid IID = .(0x4f5b196e, 0xc2bd, 0x495e, 0xbd, 0x01, 0x1f, 0xde, 0xd3, 0x8e, 0x49, 0x69);
			
			public new VTable* VT { get => (.)vt; }
			
			[CRepr]
			public struct VTable : ID3D11DeviceChild.VTable {}
		}
		[CRepr]
		public struct ID3D11InputLayout : ID3D11DeviceChild
		{
			public const new Guid IID = .(0xe4819ddc, 0x4cf0, 0x4025, 0xbd, 0x26, 0x5d, 0xe8, 0x2a, 0x3e, 0x07, 0xb7);
			
			public new VTable* VT { get => (.)vt; }
			
			[CRepr]
			public struct VTable : ID3D11DeviceChild.VTable {}
		}
		[CRepr]
		public struct ID3D11SamplerState : ID3D11DeviceChild
		{
			public const new Guid IID = .(0xda6fea51, 0x564c, 0x4487, 0x98, 0x10, 0xf0, 0xd0, 0xf9, 0xb4, 0xe3, 0xa5);
			
			public new VTable* VT { get => (.)vt; }
			
			public void GetDesc(out D3D11_SAMPLER_DESC pDesc) mut => VT.GetDesc(ref this, out pDesc);

			[CRepr]
			public struct VTable : ID3D11DeviceChild.VTable
			{
				public new function [CallingConvention(.Stdcall)] void(ref ID3D11SamplerState self, out D3D11_SAMPLER_DESC pDesc) GetDesc;
			}
		}
		[CRepr]
		public struct ID3D11Asynchronous : ID3D11DeviceChild
		{
			public const new Guid IID = .(0x4b35d0cd, 0x1e15, 0x4258, 0x9c, 0x98, 0x1b, 0x13, 0x33, 0xf6, 0xdd, 0x3b);
			
			public new VTable* VT { get => (.)vt; }
			
			public uint32 GetDataSize() mut => VT.GetDataSize(ref this);

			[CRepr]
			public struct VTable : ID3D11DeviceChild.VTable
			{
				public new function [CallingConvention(.Stdcall)] uint32(ref ID3D11Asynchronous self) GetDataSize;
			}
		}
		[CRepr]
		public struct ID3D11Query : ID3D11Asynchronous
		{
			public const new Guid IID = .(0xd6c00747, 0x87b7, 0x425e, 0xb8, 0x4d, 0x44, 0xd1, 0x08, 0x56, 0x0a, 0xfd);
			
			public new VTable* VT { get => (.)vt; }
			
			public void GetDesc(out D3D11_QUERY_DESC pDesc) mut => VT.GetDesc(ref this, out pDesc);

			[CRepr]
			public struct VTable : ID3D11Asynchronous.VTable
			{
				public new function [CallingConvention(.Stdcall)] void(ref ID3D11Query self, out D3D11_QUERY_DESC pDesc) GetDesc;
			}
		}
		[CRepr]
		public struct ID3D11Predicate : ID3D11Query
		{
			public const new Guid IID = .(0x9eb576dd, 0x9f77, 0x4d86, 0x81, 0xaa, 0x8b, 0xab, 0x5f, 0xe4, 0x90, 0xe2);
			
			public new VTable* VT { get => (.)vt; }
			
			[CRepr]
			public struct VTable : ID3D11Query.VTable {}
		}
		[CRepr]
		public struct ID3D11Counter : ID3D11Asynchronous
		{
			public const new Guid IID = .(0x6e8c49fb, 0xa371, 0x4770, 0xb4, 0x40, 0x29, 0x08, 0x60, 0x22, 0xb7, 0x41);
			
			public new VTable* VT { get => (.)vt; }
			
			public void GetDesc(out D3D11_COUNTER_DESC pDesc) mut => VT.GetDesc(ref this, out pDesc);

			[CRepr]
			public struct VTable : ID3D11Asynchronous.VTable
			{
				public new function [CallingConvention(.Stdcall)] void(ref ID3D11Counter self, out D3D11_COUNTER_DESC pDesc) GetDesc;
			}
		}
		[CRepr]
		public struct ID3D11ClassInstance : ID3D11DeviceChild
		{
			public const new Guid IID = .(0xa6cd7faa, 0xb0b7, 0x4a2f, 0x94, 0x36, 0x86, 0x62, 0xa6, 0x57, 0x97, 0xcb);
			
			public new VTable* VT { get => (.)vt; }
			
			public void GetClassLinkage(out ID3D11ClassLinkage* ppLinkage) mut => VT.GetClassLinkage(ref this, out ppLinkage);
			public void GetDesc(out D3D11_CLASS_INSTANCE_DESC pDesc) mut => VT.GetDesc(ref this, out pDesc);
			public void GetInstanceName(uint8* pInstanceName, out uint pBufferLength) mut => VT.GetInstanceName(ref this, pInstanceName, out pBufferLength);
			public void GetTypeName(uint8* pTypeName, out uint pBufferLength) mut => VT.GetTypeName(ref this, pTypeName, out pBufferLength);

			[CRepr]
			public struct VTable : ID3D11DeviceChild.VTable
			{
				public new function [CallingConvention(.Stdcall)] void(ref ID3D11ClassInstance self, out ID3D11ClassLinkage* ppLinkage) GetClassLinkage;
				public new function [CallingConvention(.Stdcall)] void(ref ID3D11ClassInstance self, out D3D11_CLASS_INSTANCE_DESC pDesc) GetDesc;
				public new function [CallingConvention(.Stdcall)] void(ref ID3D11ClassInstance self, uint8* pInstanceName, out uint pBufferLength) GetInstanceName;
				public new function [CallingConvention(.Stdcall)] void(ref ID3D11ClassInstance self, uint8* pTypeName, out uint pBufferLength) GetTypeName;
			}
		}
		[CRepr]
		public struct ID3D11ClassLinkage : ID3D11DeviceChild
		{
			public const new Guid IID = .(0xddf57cba, 0x9543, 0x46e4, 0xa1, 0x2b, 0xf2, 0x07, 0xa0, 0xfe, 0x7f, 0xed);
			
			public new VTable* VT { get => (.)vt; }
			
			public HRESULT GetClassInstance(PSTR pClassInstanceName, uint32 InstanceIndex, out ID3D11ClassInstance* ppInstance) mut => VT.GetClassInstance(ref this, pClassInstanceName, InstanceIndex, out ppInstance);
			public HRESULT CreateClassInstance(PSTR pClassTypeName, uint32 ConstantBufferOffset, uint32 ConstantVectorOffset, uint32 TextureOffset, uint32 SamplerOffset, out ID3D11ClassInstance* ppInstance) mut => VT.CreateClassInstance(ref this, pClassTypeName, ConstantBufferOffset, ConstantVectorOffset, TextureOffset, SamplerOffset, out ppInstance);

			[CRepr]
			public struct VTable : ID3D11DeviceChild.VTable
			{
				public new function [CallingConvention(.Stdcall)] HRESULT(ref ID3D11ClassLinkage self, PSTR pClassInstanceName, uint32 InstanceIndex, out ID3D11ClassInstance* ppInstance) GetClassInstance;
				public new function [CallingConvention(.Stdcall)] HRESULT(ref ID3D11ClassLinkage self, PSTR pClassTypeName, uint32 ConstantBufferOffset, uint32 ConstantVectorOffset, uint32 TextureOffset, uint32 SamplerOffset, out ID3D11ClassInstance* ppInstance) CreateClassInstance;
			}
		}
		[CRepr]
		public struct ID3D11CommandList : ID3D11DeviceChild
		{
			public const new Guid IID = .(0xa24bc4d1, 0x769e, 0x43f7, 0x80, 0x13, 0x98, 0xff, 0x56, 0x6c, 0x18, 0xe2);
			
			public new VTable* VT { get => (.)vt; }
			
			public uint32 GetContextFlags() mut => VT.GetContextFlags(ref this);

			[CRepr]
			public struct VTable : ID3D11DeviceChild.VTable
			{
				public new function [CallingConvention(.Stdcall)] uint32(ref ID3D11CommandList self) GetContextFlags;
			}
		}
		[CRepr]
		public struct ID3D11DeviceContext : ID3D11DeviceChild
		{
			public const new Guid IID = .(0xc0bfa96c, 0xe089, 0x44fb, 0x8e, 0xaf, 0x26, 0xf8, 0x79, 0x61, 0x90, 0xda);
			
			public new VTable* VT { get => (.)vt; }
			
			public void VSSetConstantBuffers(uint32 StartSlot, uint32 NumBuffers, ID3D11Buffer** ppConstantBuffers) mut => VT.VSSetConstantBuffers(ref this, StartSlot, NumBuffers, ppConstantBuffers);
			public void PSSetShaderResources(uint32 StartSlot, uint32 NumViews, ID3D11ShaderResourceView** ppShaderResourceViews) mut => VT.PSSetShaderResources(ref this, StartSlot, NumViews, ppShaderResourceViews);
			public void PSSetShader(ID3D11PixelShader* pPixelShader, ID3D11ClassInstance** ppClassInstances, uint32 NumClassInstances) mut => VT.PSSetShader(ref this, pPixelShader, ppClassInstances, NumClassInstances);
			public void PSSetSamplers(uint32 StartSlot, uint32 NumSamplers, ID3D11SamplerState** ppSamplers) mut => VT.PSSetSamplers(ref this, StartSlot, NumSamplers, ppSamplers);
			public void VSSetShader(ID3D11VertexShader* pVertexShader, ID3D11ClassInstance** ppClassInstances, uint32 NumClassInstances) mut => VT.VSSetShader(ref this, pVertexShader, ppClassInstances, NumClassInstances);
			public void DrawIndexed(uint32 IndexCount, uint32 StartIndexLocation, int32 BaseVertexLocation) mut => VT.DrawIndexed(ref this, IndexCount, StartIndexLocation, BaseVertexLocation);
			public void Draw(uint32 VertexCount, uint32 StartVertexLocation) mut => VT.Draw(ref this, VertexCount, StartVertexLocation);
			public HRESULT Map(ref ID3D11Resource pResource, uint32 Subresource, D3D11_MAP MapType, uint32 MapFlags, D3D11_MAPPED_SUBRESOURCE* pMappedResource) mut => VT.Map(ref this, ref pResource, Subresource, MapType, MapFlags, pMappedResource);
			public void Unmap(ref ID3D11Resource pResource, uint32 Subresource) mut => VT.Unmap(ref this, ref pResource, Subresource);
			public void PSSetConstantBuffers(uint32 StartSlot, uint32 NumBuffers, ID3D11Buffer** ppConstantBuffers) mut => VT.PSSetConstantBuffers(ref this, StartSlot, NumBuffers, ppConstantBuffers);
			public void IASetInputLayout(ID3D11InputLayout* pInputLayout) mut => VT.IASetInputLayout(ref this, pInputLayout);
			public void IASetVertexBuffers(uint32 StartSlot, uint32 NumBuffers, ID3D11Buffer** ppVertexBuffers, uint32* pStrides, uint32* pOffsets) mut => VT.IASetVertexBuffers(ref this, StartSlot, NumBuffers, ppVertexBuffers, pStrides, pOffsets);
			public void IASetIndexBuffer(ID3D11Buffer* pIndexBuffer, DXGI_FORMAT Format, uint32 Offset) mut => VT.IASetIndexBuffer(ref this, pIndexBuffer, Format, Offset);
			public void DrawIndexedInstanced(uint32 IndexCountPerInstance, uint32 InstanceCount, uint32 StartIndexLocation, int32 BaseVertexLocation, uint32 StartInstanceLocation) mut => VT.DrawIndexedInstanced(ref this, IndexCountPerInstance, InstanceCount, StartIndexLocation, BaseVertexLocation, StartInstanceLocation);
			public void DrawInstanced(uint32 VertexCountPerInstance, uint32 InstanceCount, uint32 StartVertexLocation, uint32 StartInstanceLocation) mut => VT.DrawInstanced(ref this, VertexCountPerInstance, InstanceCount, StartVertexLocation, StartInstanceLocation);
			public void GSSetConstantBuffers(uint32 StartSlot, uint32 NumBuffers, ID3D11Buffer** ppConstantBuffers) mut => VT.GSSetConstantBuffers(ref this, StartSlot, NumBuffers, ppConstantBuffers);
			public void GSSetShader(ID3D11GeometryShader* pShader, ID3D11ClassInstance** ppClassInstances, uint32 NumClassInstances) mut => VT.GSSetShader(ref this, pShader, ppClassInstances, NumClassInstances);
			public void IASetPrimitiveTopology(D3D_PRIMITIVE_TOPOLOGY Topology) mut => VT.IASetPrimitiveTopology(ref this, Topology);
			public void VSSetShaderResources(uint32 StartSlot, uint32 NumViews, ID3D11ShaderResourceView** ppShaderResourceViews) mut => VT.VSSetShaderResources(ref this, StartSlot, NumViews, ppShaderResourceViews);
			public void VSSetSamplers(uint32 StartSlot, uint32 NumSamplers, ID3D11SamplerState** ppSamplers) mut => VT.VSSetSamplers(ref this, StartSlot, NumSamplers, ppSamplers);
			public void Begin(ref ID3D11Asynchronous pAsync) mut => VT.Begin(ref this, ref pAsync);
			public void End(ref ID3D11Asynchronous pAsync) mut => VT.End(ref this, ref pAsync);
			public HRESULT GetData(ref ID3D11Asynchronous pAsync, void* pData, uint32 DataSize, uint32 GetDataFlags) mut => VT.GetData(ref this, ref pAsync, pData, DataSize, GetDataFlags);
			public void SetPredication(ID3D11Predicate* pPredicate, BOOL PredicateValue) mut => VT.SetPredication(ref this, pPredicate, PredicateValue);
			public void GSSetShaderResources(uint32 StartSlot, uint32 NumViews, ID3D11ShaderResourceView** ppShaderResourceViews) mut => VT.GSSetShaderResources(ref this, StartSlot, NumViews, ppShaderResourceViews);
			public void GSSetSamplers(uint32 StartSlot, uint32 NumSamplers, ID3D11SamplerState** ppSamplers) mut => VT.GSSetSamplers(ref this, StartSlot, NumSamplers, ppSamplers);
			public void OMSetRenderTargets(uint32 NumViews, ID3D11RenderTargetView** ppRenderTargetViews, ID3D11DepthStencilView* pDepthStencilView) mut => VT.OMSetRenderTargets(ref this, NumViews, ppRenderTargetViews, pDepthStencilView);
			public void OMSetRenderTargetsAndUnorderedAccessViews(uint32 NumRTVs, ID3D11RenderTargetView** ppRenderTargetViews, ID3D11DepthStencilView* pDepthStencilView, uint32 UAVStartSlot, uint32 NumUAVs, ID3D11UnorderedAccessView** ppUnorderedAccessViews, uint32* pUAVInitialCounts) mut => VT.OMSetRenderTargetsAndUnorderedAccessViews(ref this, NumRTVs, ppRenderTargetViews, pDepthStencilView, UAVStartSlot, NumUAVs, ppUnorderedAccessViews, pUAVInitialCounts);
			public void OMSetBlendState(ID3D11BlendState* pBlendState, float* BlendFactor, uint32 SampleMask) mut => VT.OMSetBlendState(ref this, pBlendState, BlendFactor, SampleMask);
			public void OMSetDepthStencilState(ID3D11DepthStencilState* pDepthStencilState, uint32 StencilRef) mut => VT.OMSetDepthStencilState(ref this, pDepthStencilState, StencilRef);
			public void SOSetTargets(uint32 NumBuffers, ID3D11Buffer** ppSOTargets, uint32* pOffsets) mut => VT.SOSetTargets(ref this, NumBuffers, ppSOTargets, pOffsets);
			public void DrawAuto() mut => VT.DrawAuto(ref this);
			public void DrawIndexedInstancedIndirect(ref ID3D11Buffer pBufferForArgs, uint32 AlignedByteOffsetForArgs) mut => VT.DrawIndexedInstancedIndirect(ref this, ref pBufferForArgs, AlignedByteOffsetForArgs);
			public void DrawInstancedIndirect(ref ID3D11Buffer pBufferForArgs, uint32 AlignedByteOffsetForArgs) mut => VT.DrawInstancedIndirect(ref this, ref pBufferForArgs, AlignedByteOffsetForArgs);
			public void Dispatch(uint32 ThreadGroupCountX, uint32 ThreadGroupCountY, uint32 ThreadGroupCountZ) mut => VT.Dispatch(ref this, ThreadGroupCountX, ThreadGroupCountY, ThreadGroupCountZ);
			public void DispatchIndirect(ref ID3D11Buffer pBufferForArgs, uint32 AlignedByteOffsetForArgs) mut => VT.DispatchIndirect(ref this, ref pBufferForArgs, AlignedByteOffsetForArgs);
			public void RSSetState(ID3D11RasterizerState* pRasterizerState) mut => VT.RSSetState(ref this, pRasterizerState);
			public void RSSetViewports(uint32 NumViewports, D3D11_VIEWPORT* pViewports) mut => VT.RSSetViewports(ref this, NumViewports, pViewports);
			public void RSSetScissorRects(uint32 NumRects, RECT* pRects) mut => VT.RSSetScissorRects(ref this, NumRects, pRects);
			public void CopySubresourceRegion(ref ID3D11Resource pDstResource, uint32 DstSubresource, uint32 DstX, uint32 DstY, uint32 DstZ, ref ID3D11Resource pSrcResource, uint32 SrcSubresource, D3D11_BOX* pSrcBox) mut => VT.CopySubresourceRegion(ref this, ref pDstResource, DstSubresource, DstX, DstY, DstZ, ref pSrcResource, SrcSubresource, pSrcBox);
			public void CopyResource(ref ID3D11Resource pDstResource, ref ID3D11Resource pSrcResource) mut => VT.CopyResource(ref this, ref pDstResource, ref pSrcResource);
			public void UpdateSubresource(ref ID3D11Resource pDstResource, uint32 DstSubresource, D3D11_BOX* pDstBox, void* pSrcData, uint32 SrcRowPitch, uint32 SrcDepthPitch) mut => VT.UpdateSubresource(ref this, ref pDstResource, DstSubresource, pDstBox, pSrcData, SrcRowPitch, SrcDepthPitch);
			public void CopyStructureCount(ref ID3D11Buffer pDstBuffer, uint32 DstAlignedByteOffset, ref ID3D11UnorderedAccessView pSrcView) mut => VT.CopyStructureCount(ref this, ref pDstBuffer, DstAlignedByteOffset, ref pSrcView);
			public void ClearRenderTargetView(ref ID3D11RenderTargetView pRenderTargetView, in float ColorRGBA) mut => VT.ClearRenderTargetView(ref this, ref pRenderTargetView, ColorRGBA);
			public void ClearUnorderedAccessViewUint(ref ID3D11UnorderedAccessView pUnorderedAccessView, in uint32 Values) mut => VT.ClearUnorderedAccessViewUint(ref this, ref pUnorderedAccessView, Values);
			public void ClearUnorderedAccessViewFloat(ref ID3D11UnorderedAccessView pUnorderedAccessView, in float Values) mut => VT.ClearUnorderedAccessViewFloat(ref this, ref pUnorderedAccessView, Values);
			public void ClearDepthStencilView(ref ID3D11DepthStencilView pDepthStencilView, uint32 ClearFlags, float Depth, uint8 Stencil) mut => VT.ClearDepthStencilView(ref this, ref pDepthStencilView, ClearFlags, Depth, Stencil);
			public void GenerateMips(ref ID3D11ShaderResourceView pShaderResourceView) mut => VT.GenerateMips(ref this, ref pShaderResourceView);
			public void SetResourceMinLOD(ref ID3D11Resource pResource, float MinLOD) mut => VT.SetResourceMinLOD(ref this, ref pResource, MinLOD);
			public float GetResourceMinLOD(ref ID3D11Resource pResource) mut => VT.GetResourceMinLOD(ref this, ref pResource);
			public void ResolveSubresource(ref ID3D11Resource pDstResource, uint32 DstSubresource, ref ID3D11Resource pSrcResource, uint32 SrcSubresource, DXGI_FORMAT Format) mut => VT.ResolveSubresource(ref this, ref pDstResource, DstSubresource, ref pSrcResource, SrcSubresource, Format);
			public void ExecuteCommandList(ref ID3D11CommandList pCommandList, BOOL RestoreContextState) mut => VT.ExecuteCommandList(ref this, ref pCommandList, RestoreContextState);
			public void HSSetShaderResources(uint32 StartSlot, uint32 NumViews, ID3D11ShaderResourceView** ppShaderResourceViews) mut => VT.HSSetShaderResources(ref this, StartSlot, NumViews, ppShaderResourceViews);
			public void HSSetShader(ID3D11HullShader* pHullShader, ID3D11ClassInstance** ppClassInstances, uint32 NumClassInstances) mut => VT.HSSetShader(ref this, pHullShader, ppClassInstances, NumClassInstances);
			public void HSSetSamplers(uint32 StartSlot, uint32 NumSamplers, ID3D11SamplerState** ppSamplers) mut => VT.HSSetSamplers(ref this, StartSlot, NumSamplers, ppSamplers);
			public void HSSetConstantBuffers(uint32 StartSlot, uint32 NumBuffers, ID3D11Buffer** ppConstantBuffers) mut => VT.HSSetConstantBuffers(ref this, StartSlot, NumBuffers, ppConstantBuffers);
			public void DSSetShaderResources(uint32 StartSlot, uint32 NumViews, ID3D11ShaderResourceView** ppShaderResourceViews) mut => VT.DSSetShaderResources(ref this, StartSlot, NumViews, ppShaderResourceViews);
			public void DSSetShader(ID3D11DomainShader* pDomainShader, ID3D11ClassInstance** ppClassInstances, uint32 NumClassInstances) mut => VT.DSSetShader(ref this, pDomainShader, ppClassInstances, NumClassInstances);
			public void DSSetSamplers(uint32 StartSlot, uint32 NumSamplers, ID3D11SamplerState** ppSamplers) mut => VT.DSSetSamplers(ref this, StartSlot, NumSamplers, ppSamplers);
			public void DSSetConstantBuffers(uint32 StartSlot, uint32 NumBuffers, ID3D11Buffer** ppConstantBuffers) mut => VT.DSSetConstantBuffers(ref this, StartSlot, NumBuffers, ppConstantBuffers);
			public void CSSetShaderResources(uint32 StartSlot, uint32 NumViews, ID3D11ShaderResourceView** ppShaderResourceViews) mut => VT.CSSetShaderResources(ref this, StartSlot, NumViews, ppShaderResourceViews);
			public void CSSetUnorderedAccessViews(uint32 StartSlot, uint32 NumUAVs, ID3D11UnorderedAccessView** ppUnorderedAccessViews, uint32* pUAVInitialCounts) mut => VT.CSSetUnorderedAccessViews(ref this, StartSlot, NumUAVs, ppUnorderedAccessViews, pUAVInitialCounts);
			public void CSSetShader(ID3D11ComputeShader* pComputeShader, ID3D11ClassInstance** ppClassInstances, uint32 NumClassInstances) mut => VT.CSSetShader(ref this, pComputeShader, ppClassInstances, NumClassInstances);
			public void CSSetSamplers(uint32 StartSlot, uint32 NumSamplers, ID3D11SamplerState** ppSamplers) mut => VT.CSSetSamplers(ref this, StartSlot, NumSamplers, ppSamplers);
			public void CSSetConstantBuffers(uint32 StartSlot, uint32 NumBuffers, ID3D11Buffer** ppConstantBuffers) mut => VT.CSSetConstantBuffers(ref this, StartSlot, NumBuffers, ppConstantBuffers);
			public void VSGetConstantBuffers(uint32 StartSlot, uint32 NumBuffers, ID3D11Buffer** ppConstantBuffers) mut => VT.VSGetConstantBuffers(ref this, StartSlot, NumBuffers, ppConstantBuffers);
			public void PSGetShaderResources(uint32 StartSlot, uint32 NumViews, ID3D11ShaderResourceView** ppShaderResourceViews) mut => VT.PSGetShaderResources(ref this, StartSlot, NumViews, ppShaderResourceViews);
			public void PSGetShader(ID3D11PixelShader** ppPixelShader, ID3D11ClassInstance** ppClassInstances, uint32* pNumClassInstances) mut => VT.PSGetShader(ref this, ppPixelShader, ppClassInstances, pNumClassInstances);
			public void PSGetSamplers(uint32 StartSlot, uint32 NumSamplers, ID3D11SamplerState** ppSamplers) mut => VT.PSGetSamplers(ref this, StartSlot, NumSamplers, ppSamplers);
			public void VSGetShader(ID3D11VertexShader** ppVertexShader, ID3D11ClassInstance** ppClassInstances, uint32* pNumClassInstances) mut => VT.VSGetShader(ref this, ppVertexShader, ppClassInstances, pNumClassInstances);
			public void PSGetConstantBuffers(uint32 StartSlot, uint32 NumBuffers, ID3D11Buffer** ppConstantBuffers) mut => VT.PSGetConstantBuffers(ref this, StartSlot, NumBuffers, ppConstantBuffers);
			public void IAGetInputLayout(ID3D11InputLayout** ppInputLayout) mut => VT.IAGetInputLayout(ref this, ppInputLayout);
			public void IAGetVertexBuffers(uint32 StartSlot, uint32 NumBuffers, ID3D11Buffer** ppVertexBuffers, uint32* pStrides, uint32* pOffsets) mut => VT.IAGetVertexBuffers(ref this, StartSlot, NumBuffers, ppVertexBuffers, pStrides, pOffsets);
			public void IAGetIndexBuffer(ID3D11Buffer** pIndexBuffer, DXGI_FORMAT* Format, uint32* Offset) mut => VT.IAGetIndexBuffer(ref this, pIndexBuffer, Format, Offset);
			public void GSGetConstantBuffers(uint32 StartSlot, uint32 NumBuffers, ID3D11Buffer** ppConstantBuffers) mut => VT.GSGetConstantBuffers(ref this, StartSlot, NumBuffers, ppConstantBuffers);
			public void GSGetShader(ID3D11GeometryShader** ppGeometryShader, ID3D11ClassInstance** ppClassInstances, uint32* pNumClassInstances) mut => VT.GSGetShader(ref this, ppGeometryShader, ppClassInstances, pNumClassInstances);
			public void IAGetPrimitiveTopology(out D3D_PRIMITIVE_TOPOLOGY pTopology) mut => VT.IAGetPrimitiveTopology(ref this, out pTopology);
			public void VSGetShaderResources(uint32 StartSlot, uint32 NumViews, ID3D11ShaderResourceView** ppShaderResourceViews) mut => VT.VSGetShaderResources(ref this, StartSlot, NumViews, ppShaderResourceViews);
			public void VSGetSamplers(uint32 StartSlot, uint32 NumSamplers, ID3D11SamplerState** ppSamplers) mut => VT.VSGetSamplers(ref this, StartSlot, NumSamplers, ppSamplers);
			public void GetPredication(ID3D11Predicate** ppPredicate, BOOL* pPredicateValue) mut => VT.GetPredication(ref this, ppPredicate, pPredicateValue);
			public void GSGetShaderResources(uint32 StartSlot, uint32 NumViews, ID3D11ShaderResourceView** ppShaderResourceViews) mut => VT.GSGetShaderResources(ref this, StartSlot, NumViews, ppShaderResourceViews);
			public void GSGetSamplers(uint32 StartSlot, uint32 NumSamplers, ID3D11SamplerState** ppSamplers) mut => VT.GSGetSamplers(ref this, StartSlot, NumSamplers, ppSamplers);
			public void OMGetRenderTargets(uint32 NumViews, ID3D11RenderTargetView** ppRenderTargetViews, ID3D11DepthStencilView** ppDepthStencilView) mut => VT.OMGetRenderTargets(ref this, NumViews, ppRenderTargetViews, ppDepthStencilView);
			public void OMGetRenderTargetsAndUnorderedAccessViews(uint32 NumRTVs, ID3D11RenderTargetView** ppRenderTargetViews, ID3D11DepthStencilView** ppDepthStencilView, uint32 UAVStartSlot, uint32 NumUAVs, ID3D11UnorderedAccessView** ppUnorderedAccessViews) mut => VT.OMGetRenderTargetsAndUnorderedAccessViews(ref this, NumRTVs, ppRenderTargetViews, ppDepthStencilView, UAVStartSlot, NumUAVs, ppUnorderedAccessViews);
			public void OMGetBlendState(ID3D11BlendState** ppBlendState, float* BlendFactor, uint32* pSampleMask) mut => VT.OMGetBlendState(ref this, ppBlendState, BlendFactor, pSampleMask);
			public void OMGetDepthStencilState(ID3D11DepthStencilState** ppDepthStencilState, uint32* pStencilRef) mut => VT.OMGetDepthStencilState(ref this, ppDepthStencilState, pStencilRef);
			public void SOGetTargets(uint32 NumBuffers, ID3D11Buffer** ppSOTargets) mut => VT.SOGetTargets(ref this, NumBuffers, ppSOTargets);
			public void RSGetState(ID3D11RasterizerState** ppRasterizerState) mut => VT.RSGetState(ref this, ppRasterizerState);
			public void RSGetViewports(out uint32 pNumViewports, D3D11_VIEWPORT* pViewports) mut => VT.RSGetViewports(ref this, out pNumViewports, pViewports);
			public void RSGetScissorRects(out uint32 pNumRects, RECT* pRects) mut => VT.RSGetScissorRects(ref this, out pNumRects, pRects);
			public void HSGetShaderResources(uint32 StartSlot, uint32 NumViews, ID3D11ShaderResourceView** ppShaderResourceViews) mut => VT.HSGetShaderResources(ref this, StartSlot, NumViews, ppShaderResourceViews);
			public void HSGetShader(ID3D11HullShader** ppHullShader, ID3D11ClassInstance** ppClassInstances, uint32* pNumClassInstances) mut => VT.HSGetShader(ref this, ppHullShader, ppClassInstances, pNumClassInstances);
			public void HSGetSamplers(uint32 StartSlot, uint32 NumSamplers, ID3D11SamplerState** ppSamplers) mut => VT.HSGetSamplers(ref this, StartSlot, NumSamplers, ppSamplers);
			public void HSGetConstantBuffers(uint32 StartSlot, uint32 NumBuffers, ID3D11Buffer** ppConstantBuffers) mut => VT.HSGetConstantBuffers(ref this, StartSlot, NumBuffers, ppConstantBuffers);
			public void DSGetShaderResources(uint32 StartSlot, uint32 NumViews, ID3D11ShaderResourceView** ppShaderResourceViews) mut => VT.DSGetShaderResources(ref this, StartSlot, NumViews, ppShaderResourceViews);
			public void DSGetShader(ID3D11DomainShader** ppDomainShader, ID3D11ClassInstance** ppClassInstances, uint32* pNumClassInstances) mut => VT.DSGetShader(ref this, ppDomainShader, ppClassInstances, pNumClassInstances);
			public void DSGetSamplers(uint32 StartSlot, uint32 NumSamplers, ID3D11SamplerState** ppSamplers) mut => VT.DSGetSamplers(ref this, StartSlot, NumSamplers, ppSamplers);
			public void DSGetConstantBuffers(uint32 StartSlot, uint32 NumBuffers, ID3D11Buffer** ppConstantBuffers) mut => VT.DSGetConstantBuffers(ref this, StartSlot, NumBuffers, ppConstantBuffers);
			public void CSGetShaderResources(uint32 StartSlot, uint32 NumViews, ID3D11ShaderResourceView** ppShaderResourceViews) mut => VT.CSGetShaderResources(ref this, StartSlot, NumViews, ppShaderResourceViews);
			public void CSGetUnorderedAccessViews(uint32 StartSlot, uint32 NumUAVs, ID3D11UnorderedAccessView** ppUnorderedAccessViews) mut => VT.CSGetUnorderedAccessViews(ref this, StartSlot, NumUAVs, ppUnorderedAccessViews);
			public void CSGetShader(ID3D11ComputeShader** ppComputeShader, ID3D11ClassInstance** ppClassInstances, uint32* pNumClassInstances) mut => VT.CSGetShader(ref this, ppComputeShader, ppClassInstances, pNumClassInstances);
			public void CSGetSamplers(uint32 StartSlot, uint32 NumSamplers, ID3D11SamplerState** ppSamplers) mut => VT.CSGetSamplers(ref this, StartSlot, NumSamplers, ppSamplers);
			public void CSGetConstantBuffers(uint32 StartSlot, uint32 NumBuffers, ID3D11Buffer** ppConstantBuffers) mut => VT.CSGetConstantBuffers(ref this, StartSlot, NumBuffers, ppConstantBuffers);
			public void ClearState() mut => VT.ClearState(ref this);
			public void Flush() mut => VT.Flush(ref this);
			public D3D11_DEVICE_CONTEXT_TYPE ComGetType() mut => VT.ComGetType(ref this);
			public uint32 GetContextFlags() mut => VT.GetContextFlags(ref this);
			public HRESULT FinishCommandList(BOOL RestoreDeferredContextState, ID3D11CommandList** ppCommandList) mut => VT.FinishCommandList(ref this, RestoreDeferredContextState, ppCommandList);

			[CRepr]
			public struct VTable : ID3D11DeviceChild.VTable
			{
				public new function [CallingConvention(.Stdcall)] void(ref ID3D11DeviceContext self, uint32 StartSlot, uint32 NumBuffers, ID3D11Buffer** ppConstantBuffers) VSSetConstantBuffers;
				public new function [CallingConvention(.Stdcall)] void(ref ID3D11DeviceContext self, uint32 StartSlot, uint32 NumViews, ID3D11ShaderResourceView** ppShaderResourceViews) PSSetShaderResources;
				public new function [CallingConvention(.Stdcall)] void(ref ID3D11DeviceContext self, ID3D11PixelShader* pPixelShader, ID3D11ClassInstance** ppClassInstances, uint32 NumClassInstances) PSSetShader;
				public new function [CallingConvention(.Stdcall)] void(ref ID3D11DeviceContext self, uint32 StartSlot, uint32 NumSamplers, ID3D11SamplerState** ppSamplers) PSSetSamplers;
				public new function [CallingConvention(.Stdcall)] void(ref ID3D11DeviceContext self, ID3D11VertexShader* pVertexShader, ID3D11ClassInstance** ppClassInstances, uint32 NumClassInstances) VSSetShader;
				public new function [CallingConvention(.Stdcall)] void(ref ID3D11DeviceContext self, uint32 IndexCount, uint32 StartIndexLocation, int32 BaseVertexLocation) DrawIndexed;
				public new function [CallingConvention(.Stdcall)] void(ref ID3D11DeviceContext self, uint32 VertexCount, uint32 StartVertexLocation) Draw;
				public new function [CallingConvention(.Stdcall)] HRESULT(ref ID3D11DeviceContext self, ref ID3D11Resource pResource, uint32 Subresource, D3D11_MAP MapType, uint32 MapFlags, D3D11_MAPPED_SUBRESOURCE* pMappedResource) Map;
				public new function [CallingConvention(.Stdcall)] void(ref ID3D11DeviceContext self, ref ID3D11Resource pResource, uint32 Subresource) Unmap;
				public new function [CallingConvention(.Stdcall)] void(ref ID3D11DeviceContext self, uint32 StartSlot, uint32 NumBuffers, ID3D11Buffer** ppConstantBuffers) PSSetConstantBuffers;
				public new function [CallingConvention(.Stdcall)] void(ref ID3D11DeviceContext self, ID3D11InputLayout* pInputLayout) IASetInputLayout;
				public new function [CallingConvention(.Stdcall)] void(ref ID3D11DeviceContext self, uint32 StartSlot, uint32 NumBuffers, ID3D11Buffer** ppVertexBuffers, uint32* pStrides, uint32* pOffsets) IASetVertexBuffers;
				public new function [CallingConvention(.Stdcall)] void(ref ID3D11DeviceContext self, ID3D11Buffer* pIndexBuffer, DXGI_FORMAT Format, uint32 Offset) IASetIndexBuffer;
				public new function [CallingConvention(.Stdcall)] void(ref ID3D11DeviceContext self, uint32 IndexCountPerInstance, uint32 InstanceCount, uint32 StartIndexLocation, int32 BaseVertexLocation, uint32 StartInstanceLocation) DrawIndexedInstanced;
				public new function [CallingConvention(.Stdcall)] void(ref ID3D11DeviceContext self, uint32 VertexCountPerInstance, uint32 InstanceCount, uint32 StartVertexLocation, uint32 StartInstanceLocation) DrawInstanced;
				public new function [CallingConvention(.Stdcall)] void(ref ID3D11DeviceContext self, uint32 StartSlot, uint32 NumBuffers, ID3D11Buffer** ppConstantBuffers) GSSetConstantBuffers;
				public new function [CallingConvention(.Stdcall)] void(ref ID3D11DeviceContext self, ID3D11GeometryShader* pShader, ID3D11ClassInstance** ppClassInstances, uint32 NumClassInstances) GSSetShader;
				public new function [CallingConvention(.Stdcall)] void(ref ID3D11DeviceContext self, D3D_PRIMITIVE_TOPOLOGY Topology) IASetPrimitiveTopology;
				public new function [CallingConvention(.Stdcall)] void(ref ID3D11DeviceContext self, uint32 StartSlot, uint32 NumViews, ID3D11ShaderResourceView** ppShaderResourceViews) VSSetShaderResources;
				public new function [CallingConvention(.Stdcall)] void(ref ID3D11DeviceContext self, uint32 StartSlot, uint32 NumSamplers, ID3D11SamplerState** ppSamplers) VSSetSamplers;
				public new function [CallingConvention(.Stdcall)] void(ref ID3D11DeviceContext self, ref ID3D11Asynchronous pAsync) Begin;
				public new function [CallingConvention(.Stdcall)] void(ref ID3D11DeviceContext self, ref ID3D11Asynchronous pAsync) End;
				public new function [CallingConvention(.Stdcall)] HRESULT(ref ID3D11DeviceContext self, ref ID3D11Asynchronous pAsync, void* pData, uint32 DataSize, uint32 GetDataFlags) GetData;
				public new function [CallingConvention(.Stdcall)] void(ref ID3D11DeviceContext self, ID3D11Predicate* pPredicate, BOOL PredicateValue) SetPredication;
				public new function [CallingConvention(.Stdcall)] void(ref ID3D11DeviceContext self, uint32 StartSlot, uint32 NumViews, ID3D11ShaderResourceView** ppShaderResourceViews) GSSetShaderResources;
				public new function [CallingConvention(.Stdcall)] void(ref ID3D11DeviceContext self, uint32 StartSlot, uint32 NumSamplers, ID3D11SamplerState** ppSamplers) GSSetSamplers;
				public new function [CallingConvention(.Stdcall)] void(ref ID3D11DeviceContext self, uint32 NumViews, ID3D11RenderTargetView** ppRenderTargetViews, ID3D11DepthStencilView* pDepthStencilView) OMSetRenderTargets;
				public new function [CallingConvention(.Stdcall)] void(ref ID3D11DeviceContext self, uint32 NumRTVs, ID3D11RenderTargetView** ppRenderTargetViews, ID3D11DepthStencilView* pDepthStencilView, uint32 UAVStartSlot, uint32 NumUAVs, ID3D11UnorderedAccessView** ppUnorderedAccessViews, uint32* pUAVInitialCounts) OMSetRenderTargetsAndUnorderedAccessViews;
				public new function [CallingConvention(.Stdcall)] void(ref ID3D11DeviceContext self, ID3D11BlendState* pBlendState, float* BlendFactor, uint32 SampleMask) OMSetBlendState;
				public new function [CallingConvention(.Stdcall)] void(ref ID3D11DeviceContext self, ID3D11DepthStencilState* pDepthStencilState, uint32 StencilRef) OMSetDepthStencilState;
				public new function [CallingConvention(.Stdcall)] void(ref ID3D11DeviceContext self, uint32 NumBuffers, ID3D11Buffer** ppSOTargets, uint32* pOffsets) SOSetTargets;
				public new function [CallingConvention(.Stdcall)] void(ref ID3D11DeviceContext self) DrawAuto;
				public new function [CallingConvention(.Stdcall)] void(ref ID3D11DeviceContext self, ref ID3D11Buffer pBufferForArgs, uint32 AlignedByteOffsetForArgs) DrawIndexedInstancedIndirect;
				public new function [CallingConvention(.Stdcall)] void(ref ID3D11DeviceContext self, ref ID3D11Buffer pBufferForArgs, uint32 AlignedByteOffsetForArgs) DrawInstancedIndirect;
				public new function [CallingConvention(.Stdcall)] void(ref ID3D11DeviceContext self, uint32 ThreadGroupCountX, uint32 ThreadGroupCountY, uint32 ThreadGroupCountZ) Dispatch;
				public new function [CallingConvention(.Stdcall)] void(ref ID3D11DeviceContext self, ref ID3D11Buffer pBufferForArgs, uint32 AlignedByteOffsetForArgs) DispatchIndirect;
				public new function [CallingConvention(.Stdcall)] void(ref ID3D11DeviceContext self, ID3D11RasterizerState* pRasterizerState) RSSetState;
				public new function [CallingConvention(.Stdcall)] void(ref ID3D11DeviceContext self, uint32 NumViewports, D3D11_VIEWPORT* pViewports) RSSetViewports;
				public new function [CallingConvention(.Stdcall)] void(ref ID3D11DeviceContext self, uint32 NumRects, RECT* pRects) RSSetScissorRects;
				public new function [CallingConvention(.Stdcall)] void(ref ID3D11DeviceContext self, ref ID3D11Resource pDstResource, uint32 DstSubresource, uint32 DstX, uint32 DstY, uint32 DstZ, ref ID3D11Resource pSrcResource, uint32 SrcSubresource, D3D11_BOX* pSrcBox) CopySubresourceRegion;
				public new function [CallingConvention(.Stdcall)] void(ref ID3D11DeviceContext self, ref ID3D11Resource pDstResource, ref ID3D11Resource pSrcResource) CopyResource;
				public new function [CallingConvention(.Stdcall)] void(ref ID3D11DeviceContext self, ref ID3D11Resource pDstResource, uint32 DstSubresource, D3D11_BOX* pDstBox, void* pSrcData, uint32 SrcRowPitch, uint32 SrcDepthPitch) UpdateSubresource;
				public new function [CallingConvention(.Stdcall)] void(ref ID3D11DeviceContext self, ref ID3D11Buffer pDstBuffer, uint32 DstAlignedByteOffset, ref ID3D11UnorderedAccessView pSrcView) CopyStructureCount;
				public new function [CallingConvention(.Stdcall)] void(ref ID3D11DeviceContext self, ref ID3D11RenderTargetView pRenderTargetView, in float ColorRGBA) ClearRenderTargetView;
				public new function [CallingConvention(.Stdcall)] void(ref ID3D11DeviceContext self, ref ID3D11UnorderedAccessView pUnorderedAccessView, in uint32 Values) ClearUnorderedAccessViewUint;
				public new function [CallingConvention(.Stdcall)] void(ref ID3D11DeviceContext self, ref ID3D11UnorderedAccessView pUnorderedAccessView, in float Values) ClearUnorderedAccessViewFloat;
				public new function [CallingConvention(.Stdcall)] void(ref ID3D11DeviceContext self, ref ID3D11DepthStencilView pDepthStencilView, uint32 ClearFlags, float Depth, uint8 Stencil) ClearDepthStencilView;
				public new function [CallingConvention(.Stdcall)] void(ref ID3D11DeviceContext self, ref ID3D11ShaderResourceView pShaderResourceView) GenerateMips;
				public new function [CallingConvention(.Stdcall)] void(ref ID3D11DeviceContext self, ref ID3D11Resource pResource, float MinLOD) SetResourceMinLOD;
				public new function [CallingConvention(.Stdcall)] float(ref ID3D11DeviceContext self, ref ID3D11Resource pResource) GetResourceMinLOD;
				public new function [CallingConvention(.Stdcall)] void(ref ID3D11DeviceContext self, ref ID3D11Resource pDstResource, uint32 DstSubresource, ref ID3D11Resource pSrcResource, uint32 SrcSubresource, DXGI_FORMAT Format) ResolveSubresource;
				public new function [CallingConvention(.Stdcall)] void(ref ID3D11DeviceContext self, ref ID3D11CommandList pCommandList, BOOL RestoreContextState) ExecuteCommandList;
				public new function [CallingConvention(.Stdcall)] void(ref ID3D11DeviceContext self, uint32 StartSlot, uint32 NumViews, ID3D11ShaderResourceView** ppShaderResourceViews) HSSetShaderResources;
				public new function [CallingConvention(.Stdcall)] void(ref ID3D11DeviceContext self, ID3D11HullShader* pHullShader, ID3D11ClassInstance** ppClassInstances, uint32 NumClassInstances) HSSetShader;
				public new function [CallingConvention(.Stdcall)] void(ref ID3D11DeviceContext self, uint32 StartSlot, uint32 NumSamplers, ID3D11SamplerState** ppSamplers) HSSetSamplers;
				public new function [CallingConvention(.Stdcall)] void(ref ID3D11DeviceContext self, uint32 StartSlot, uint32 NumBuffers, ID3D11Buffer** ppConstantBuffers) HSSetConstantBuffers;
				public new function [CallingConvention(.Stdcall)] void(ref ID3D11DeviceContext self, uint32 StartSlot, uint32 NumViews, ID3D11ShaderResourceView** ppShaderResourceViews) DSSetShaderResources;
				public new function [CallingConvention(.Stdcall)] void(ref ID3D11DeviceContext self, ID3D11DomainShader* pDomainShader, ID3D11ClassInstance** ppClassInstances, uint32 NumClassInstances) DSSetShader;
				public new function [CallingConvention(.Stdcall)] void(ref ID3D11DeviceContext self, uint32 StartSlot, uint32 NumSamplers, ID3D11SamplerState** ppSamplers) DSSetSamplers;
				public new function [CallingConvention(.Stdcall)] void(ref ID3D11DeviceContext self, uint32 StartSlot, uint32 NumBuffers, ID3D11Buffer** ppConstantBuffers) DSSetConstantBuffers;
				public new function [CallingConvention(.Stdcall)] void(ref ID3D11DeviceContext self, uint32 StartSlot, uint32 NumViews, ID3D11ShaderResourceView** ppShaderResourceViews) CSSetShaderResources;
				public new function [CallingConvention(.Stdcall)] void(ref ID3D11DeviceContext self, uint32 StartSlot, uint32 NumUAVs, ID3D11UnorderedAccessView** ppUnorderedAccessViews, uint32* pUAVInitialCounts) CSSetUnorderedAccessViews;
				public new function [CallingConvention(.Stdcall)] void(ref ID3D11DeviceContext self, ID3D11ComputeShader* pComputeShader, ID3D11ClassInstance** ppClassInstances, uint32 NumClassInstances) CSSetShader;
				public new function [CallingConvention(.Stdcall)] void(ref ID3D11DeviceContext self, uint32 StartSlot, uint32 NumSamplers, ID3D11SamplerState** ppSamplers) CSSetSamplers;
				public new function [CallingConvention(.Stdcall)] void(ref ID3D11DeviceContext self, uint32 StartSlot, uint32 NumBuffers, ID3D11Buffer** ppConstantBuffers) CSSetConstantBuffers;
				public new function [CallingConvention(.Stdcall)] void(ref ID3D11DeviceContext self, uint32 StartSlot, uint32 NumBuffers, ID3D11Buffer** ppConstantBuffers) VSGetConstantBuffers;
				public new function [CallingConvention(.Stdcall)] void(ref ID3D11DeviceContext self, uint32 StartSlot, uint32 NumViews, ID3D11ShaderResourceView** ppShaderResourceViews) PSGetShaderResources;
				public new function [CallingConvention(.Stdcall)] void(ref ID3D11DeviceContext self, ID3D11PixelShader** ppPixelShader, ID3D11ClassInstance** ppClassInstances, uint32* pNumClassInstances) PSGetShader;
				public new function [CallingConvention(.Stdcall)] void(ref ID3D11DeviceContext self, uint32 StartSlot, uint32 NumSamplers, ID3D11SamplerState** ppSamplers) PSGetSamplers;
				public new function [CallingConvention(.Stdcall)] void(ref ID3D11DeviceContext self, ID3D11VertexShader** ppVertexShader, ID3D11ClassInstance** ppClassInstances, uint32* pNumClassInstances) VSGetShader;
				public new function [CallingConvention(.Stdcall)] void(ref ID3D11DeviceContext self, uint32 StartSlot, uint32 NumBuffers, ID3D11Buffer** ppConstantBuffers) PSGetConstantBuffers;
				public new function [CallingConvention(.Stdcall)] void(ref ID3D11DeviceContext self, ID3D11InputLayout** ppInputLayout) IAGetInputLayout;
				public new function [CallingConvention(.Stdcall)] void(ref ID3D11DeviceContext self, uint32 StartSlot, uint32 NumBuffers, ID3D11Buffer** ppVertexBuffers, uint32* pStrides, uint32* pOffsets) IAGetVertexBuffers;
				public new function [CallingConvention(.Stdcall)] void(ref ID3D11DeviceContext self, ID3D11Buffer** pIndexBuffer, DXGI_FORMAT* Format, uint32* Offset) IAGetIndexBuffer;
				public new function [CallingConvention(.Stdcall)] void(ref ID3D11DeviceContext self, uint32 StartSlot, uint32 NumBuffers, ID3D11Buffer** ppConstantBuffers) GSGetConstantBuffers;
				public new function [CallingConvention(.Stdcall)] void(ref ID3D11DeviceContext self, ID3D11GeometryShader** ppGeometryShader, ID3D11ClassInstance** ppClassInstances, uint32* pNumClassInstances) GSGetShader;
				public new function [CallingConvention(.Stdcall)] void(ref ID3D11DeviceContext self, out D3D_PRIMITIVE_TOPOLOGY pTopology) IAGetPrimitiveTopology;
				public new function [CallingConvention(.Stdcall)] void(ref ID3D11DeviceContext self, uint32 StartSlot, uint32 NumViews, ID3D11ShaderResourceView** ppShaderResourceViews) VSGetShaderResources;
				public new function [CallingConvention(.Stdcall)] void(ref ID3D11DeviceContext self, uint32 StartSlot, uint32 NumSamplers, ID3D11SamplerState** ppSamplers) VSGetSamplers;
				public new function [CallingConvention(.Stdcall)] void(ref ID3D11DeviceContext self, ID3D11Predicate** ppPredicate, BOOL* pPredicateValue) GetPredication;
				public new function [CallingConvention(.Stdcall)] void(ref ID3D11DeviceContext self, uint32 StartSlot, uint32 NumViews, ID3D11ShaderResourceView** ppShaderResourceViews) GSGetShaderResources;
				public new function [CallingConvention(.Stdcall)] void(ref ID3D11DeviceContext self, uint32 StartSlot, uint32 NumSamplers, ID3D11SamplerState** ppSamplers) GSGetSamplers;
				public new function [CallingConvention(.Stdcall)] void(ref ID3D11DeviceContext self, uint32 NumViews, ID3D11RenderTargetView** ppRenderTargetViews, ID3D11DepthStencilView** ppDepthStencilView) OMGetRenderTargets;
				public new function [CallingConvention(.Stdcall)] void(ref ID3D11DeviceContext self, uint32 NumRTVs, ID3D11RenderTargetView** ppRenderTargetViews, ID3D11DepthStencilView** ppDepthStencilView, uint32 UAVStartSlot, uint32 NumUAVs, ID3D11UnorderedAccessView** ppUnorderedAccessViews) OMGetRenderTargetsAndUnorderedAccessViews;
				public new function [CallingConvention(.Stdcall)] void(ref ID3D11DeviceContext self, ID3D11BlendState** ppBlendState, float* BlendFactor, uint32* pSampleMask) OMGetBlendState;
				public new function [CallingConvention(.Stdcall)] void(ref ID3D11DeviceContext self, ID3D11DepthStencilState** ppDepthStencilState, uint32* pStencilRef) OMGetDepthStencilState;
				public new function [CallingConvention(.Stdcall)] void(ref ID3D11DeviceContext self, uint32 NumBuffers, ID3D11Buffer** ppSOTargets) SOGetTargets;
				public new function [CallingConvention(.Stdcall)] void(ref ID3D11DeviceContext self, ID3D11RasterizerState** ppRasterizerState) RSGetState;
				public new function [CallingConvention(.Stdcall)] void(ref ID3D11DeviceContext self, out uint32 pNumViewports, D3D11_VIEWPORT* pViewports) RSGetViewports;
				public new function [CallingConvention(.Stdcall)] void(ref ID3D11DeviceContext self, out uint32 pNumRects, RECT* pRects) RSGetScissorRects;
				public new function [CallingConvention(.Stdcall)] void(ref ID3D11DeviceContext self, uint32 StartSlot, uint32 NumViews, ID3D11ShaderResourceView** ppShaderResourceViews) HSGetShaderResources;
				public new function [CallingConvention(.Stdcall)] void(ref ID3D11DeviceContext self, ID3D11HullShader** ppHullShader, ID3D11ClassInstance** ppClassInstances, uint32* pNumClassInstances) HSGetShader;
				public new function [CallingConvention(.Stdcall)] void(ref ID3D11DeviceContext self, uint32 StartSlot, uint32 NumSamplers, ID3D11SamplerState** ppSamplers) HSGetSamplers;
				public new function [CallingConvention(.Stdcall)] void(ref ID3D11DeviceContext self, uint32 StartSlot, uint32 NumBuffers, ID3D11Buffer** ppConstantBuffers) HSGetConstantBuffers;
				public new function [CallingConvention(.Stdcall)] void(ref ID3D11DeviceContext self, uint32 StartSlot, uint32 NumViews, ID3D11ShaderResourceView** ppShaderResourceViews) DSGetShaderResources;
				public new function [CallingConvention(.Stdcall)] void(ref ID3D11DeviceContext self, ID3D11DomainShader** ppDomainShader, ID3D11ClassInstance** ppClassInstances, uint32* pNumClassInstances) DSGetShader;
				public new function [CallingConvention(.Stdcall)] void(ref ID3D11DeviceContext self, uint32 StartSlot, uint32 NumSamplers, ID3D11SamplerState** ppSamplers) DSGetSamplers;
				public new function [CallingConvention(.Stdcall)] void(ref ID3D11DeviceContext self, uint32 StartSlot, uint32 NumBuffers, ID3D11Buffer** ppConstantBuffers) DSGetConstantBuffers;
				public new function [CallingConvention(.Stdcall)] void(ref ID3D11DeviceContext self, uint32 StartSlot, uint32 NumViews, ID3D11ShaderResourceView** ppShaderResourceViews) CSGetShaderResources;
				public new function [CallingConvention(.Stdcall)] void(ref ID3D11DeviceContext self, uint32 StartSlot, uint32 NumUAVs, ID3D11UnorderedAccessView** ppUnorderedAccessViews) CSGetUnorderedAccessViews;
				public new function [CallingConvention(.Stdcall)] void(ref ID3D11DeviceContext self, ID3D11ComputeShader** ppComputeShader, ID3D11ClassInstance** ppClassInstances, uint32* pNumClassInstances) CSGetShader;
				public new function [CallingConvention(.Stdcall)] void(ref ID3D11DeviceContext self, uint32 StartSlot, uint32 NumSamplers, ID3D11SamplerState** ppSamplers) CSGetSamplers;
				public new function [CallingConvention(.Stdcall)] void(ref ID3D11DeviceContext self, uint32 StartSlot, uint32 NumBuffers, ID3D11Buffer** ppConstantBuffers) CSGetConstantBuffers;
				public new function [CallingConvention(.Stdcall)] void(ref ID3D11DeviceContext self) ClearState;
				public new function [CallingConvention(.Stdcall)] void(ref ID3D11DeviceContext self) Flush;
				public new function [CallingConvention(.Stdcall)] D3D11_DEVICE_CONTEXT_TYPE(ref ID3D11DeviceContext self) ComGetType;
				public new function [CallingConvention(.Stdcall)] uint32(ref ID3D11DeviceContext self) GetContextFlags;
				public new function [CallingConvention(.Stdcall)] HRESULT(ref ID3D11DeviceContext self, BOOL RestoreDeferredContextState, ID3D11CommandList** ppCommandList) FinishCommandList;
			}
		}
		[CRepr]
		public struct ID3D11VideoDecoder : ID3D11DeviceChild
		{
			public const new Guid IID = .(0x3c9c5b51, 0x995d, 0x48d1, 0x9b, 0x8d, 0xfa, 0x5c, 0xae, 0xde, 0xd6, 0x5c);
			
			public new VTable* VT { get => (.)vt; }
			
			public HRESULT GetCreationParameters(out D3D11_VIDEO_DECODER_DESC pVideoDesc, out D3D11_VIDEO_DECODER_CONFIG pConfig) mut => VT.GetCreationParameters(ref this, out pVideoDesc, out pConfig);
			public HRESULT GetDriverHandle(out HANDLE pDriverHandle) mut => VT.GetDriverHandle(ref this, out pDriverHandle);

			[CRepr]
			public struct VTable : ID3D11DeviceChild.VTable
			{
				public new function [CallingConvention(.Stdcall)] HRESULT(ref ID3D11VideoDecoder self, out D3D11_VIDEO_DECODER_DESC pVideoDesc, out D3D11_VIDEO_DECODER_CONFIG pConfig) GetCreationParameters;
				public new function [CallingConvention(.Stdcall)] HRESULT(ref ID3D11VideoDecoder self, out HANDLE pDriverHandle) GetDriverHandle;
			}
		}
		[CRepr]
		public struct ID3D11VideoProcessorEnumerator : ID3D11DeviceChild
		{
			public const new Guid IID = .(0x31627037, 0x53ab, 0x4200, 0x90, 0x61, 0x05, 0xfa, 0xa9, 0xab, 0x45, 0xf9);
			
			public new VTable* VT { get => (.)vt; }
			
			public HRESULT GetVideoProcessorContentDesc(out D3D11_VIDEO_PROCESSOR_CONTENT_DESC pContentDesc) mut => VT.GetVideoProcessorContentDesc(ref this, out pContentDesc);
			public HRESULT CheckVideoProcessorFormat(DXGI_FORMAT Format, out uint32 pFlags) mut => VT.CheckVideoProcessorFormat(ref this, Format, out pFlags);
			public HRESULT GetVideoProcessorCaps(out D3D11_VIDEO_PROCESSOR_CAPS pCaps) mut => VT.GetVideoProcessorCaps(ref this, out pCaps);
			public HRESULT GetVideoProcessorRateConversionCaps(uint32 TypeIndex, out D3D11_VIDEO_PROCESSOR_RATE_CONVERSION_CAPS pCaps) mut => VT.GetVideoProcessorRateConversionCaps(ref this, TypeIndex, out pCaps);
			public HRESULT GetVideoProcessorCustomRate(uint32 TypeIndex, uint32 CustomRateIndex, out D3D11_VIDEO_PROCESSOR_CUSTOM_RATE pRate) mut => VT.GetVideoProcessorCustomRate(ref this, TypeIndex, CustomRateIndex, out pRate);
			public HRESULT GetVideoProcessorFilterRange(D3D11_VIDEO_PROCESSOR_FILTER Filter, out D3D11_VIDEO_PROCESSOR_FILTER_RANGE pRange) mut => VT.GetVideoProcessorFilterRange(ref this, Filter, out pRange);

			[CRepr]
			public struct VTable : ID3D11DeviceChild.VTable
			{
				public new function [CallingConvention(.Stdcall)] HRESULT(ref ID3D11VideoProcessorEnumerator self, out D3D11_VIDEO_PROCESSOR_CONTENT_DESC pContentDesc) GetVideoProcessorContentDesc;
				public new function [CallingConvention(.Stdcall)] HRESULT(ref ID3D11VideoProcessorEnumerator self, DXGI_FORMAT Format, out uint32 pFlags) CheckVideoProcessorFormat;
				public new function [CallingConvention(.Stdcall)] HRESULT(ref ID3D11VideoProcessorEnumerator self, out D3D11_VIDEO_PROCESSOR_CAPS pCaps) GetVideoProcessorCaps;
				public new function [CallingConvention(.Stdcall)] HRESULT(ref ID3D11VideoProcessorEnumerator self, uint32 TypeIndex, out D3D11_VIDEO_PROCESSOR_RATE_CONVERSION_CAPS pCaps) GetVideoProcessorRateConversionCaps;
				public new function [CallingConvention(.Stdcall)] HRESULT(ref ID3D11VideoProcessorEnumerator self, uint32 TypeIndex, uint32 CustomRateIndex, out D3D11_VIDEO_PROCESSOR_CUSTOM_RATE pRate) GetVideoProcessorCustomRate;
				public new function [CallingConvention(.Stdcall)] HRESULT(ref ID3D11VideoProcessorEnumerator self, D3D11_VIDEO_PROCESSOR_FILTER Filter, out D3D11_VIDEO_PROCESSOR_FILTER_RANGE pRange) GetVideoProcessorFilterRange;
			}
		}
		[CRepr]
		public struct ID3D11VideoProcessor : ID3D11DeviceChild
		{
			public const new Guid IID = .(0x1d7b0652, 0x185f, 0x41c6, 0x85, 0xce, 0x0c, 0x5b, 0xe3, 0xd4, 0xae, 0x6c);
			
			public new VTable* VT { get => (.)vt; }
			
			public void GetContentDesc(out D3D11_VIDEO_PROCESSOR_CONTENT_DESC pDesc) mut => VT.GetContentDesc(ref this, out pDesc);
			public void GetRateConversionCaps(out D3D11_VIDEO_PROCESSOR_RATE_CONVERSION_CAPS pCaps) mut => VT.GetRateConversionCaps(ref this, out pCaps);

			[CRepr]
			public struct VTable : ID3D11DeviceChild.VTable
			{
				public new function [CallingConvention(.Stdcall)] void(ref ID3D11VideoProcessor self, out D3D11_VIDEO_PROCESSOR_CONTENT_DESC pDesc) GetContentDesc;
				public new function [CallingConvention(.Stdcall)] void(ref ID3D11VideoProcessor self, out D3D11_VIDEO_PROCESSOR_RATE_CONVERSION_CAPS pCaps) GetRateConversionCaps;
			}
		}
		[CRepr]
		public struct ID3D11AuthenticatedChannel : ID3D11DeviceChild
		{
			public const new Guid IID = .(0x3015a308, 0xdcbd, 0x47aa, 0xa7, 0x47, 0x19, 0x24, 0x86, 0xd1, 0x4d, 0x4a);
			
			public new VTable* VT { get => (.)vt; }
			
			public HRESULT GetCertificateSize(out uint32 pCertificateSize) mut => VT.GetCertificateSize(ref this, out pCertificateSize);
			public HRESULT GetCertificate(uint32 CertificateSize, out uint8 pCertificate) mut => VT.GetCertificate(ref this, CertificateSize, out pCertificate);
			public void GetChannelHandle(out HANDLE pChannelHandle) mut => VT.GetChannelHandle(ref this, out pChannelHandle);

			[CRepr]
			public struct VTable : ID3D11DeviceChild.VTable
			{
				public new function [CallingConvention(.Stdcall)] HRESULT(ref ID3D11AuthenticatedChannel self, out uint32 pCertificateSize) GetCertificateSize;
				public new function [CallingConvention(.Stdcall)] HRESULT(ref ID3D11AuthenticatedChannel self, uint32 CertificateSize, out uint8 pCertificate) GetCertificate;
				public new function [CallingConvention(.Stdcall)] void(ref ID3D11AuthenticatedChannel self, out HANDLE pChannelHandle) GetChannelHandle;
			}
		}
		[CRepr]
		public struct ID3D11CryptoSession : ID3D11DeviceChild
		{
			public const new Guid IID = .(0x9b32f9ad, 0xbdcc, 0x40a6, 0xa3, 0x9d, 0xd5, 0xc8, 0x65, 0x84, 0x57, 0x20);
			
			public new VTable* VT { get => (.)vt; }
			
			public void GetCryptoType(out Guid pCryptoType) mut => VT.GetCryptoType(ref this, out pCryptoType);
			public void GetDecoderProfile(out Guid pDecoderProfile) mut => VT.GetDecoderProfile(ref this, out pDecoderProfile);
			public HRESULT GetCertificateSize(out uint32 pCertificateSize) mut => VT.GetCertificateSize(ref this, out pCertificateSize);
			public HRESULT GetCertificate(uint32 CertificateSize, out uint8 pCertificate) mut => VT.GetCertificate(ref this, CertificateSize, out pCertificate);
			public void GetCryptoSessionHandle(out HANDLE pCryptoSessionHandle) mut => VT.GetCryptoSessionHandle(ref this, out pCryptoSessionHandle);

			[CRepr]
			public struct VTable : ID3D11DeviceChild.VTable
			{
				public new function [CallingConvention(.Stdcall)] void(ref ID3D11CryptoSession self, out Guid pCryptoType) GetCryptoType;
				public new function [CallingConvention(.Stdcall)] void(ref ID3D11CryptoSession self, out Guid pDecoderProfile) GetDecoderProfile;
				public new function [CallingConvention(.Stdcall)] HRESULT(ref ID3D11CryptoSession self, out uint32 pCertificateSize) GetCertificateSize;
				public new function [CallingConvention(.Stdcall)] HRESULT(ref ID3D11CryptoSession self, uint32 CertificateSize, out uint8 pCertificate) GetCertificate;
				public new function [CallingConvention(.Stdcall)] void(ref ID3D11CryptoSession self, out HANDLE pCryptoSessionHandle) GetCryptoSessionHandle;
			}
		}
		[CRepr]
		public struct ID3D11VideoDecoderOutputView : ID3D11View
		{
			public const new Guid IID = .(0xc2931aea, 0x2a85, 0x4f20, 0x86, 0x0f, 0xfb, 0xa1, 0xfd, 0x25, 0x6e, 0x18);
			
			public new VTable* VT { get => (.)vt; }
			
			public void GetDesc(out D3D11_VIDEO_DECODER_OUTPUT_VIEW_DESC pDesc) mut => VT.GetDesc(ref this, out pDesc);

			[CRepr]
			public struct VTable : ID3D11View.VTable
			{
				public new function [CallingConvention(.Stdcall)] void(ref ID3D11VideoDecoderOutputView self, out D3D11_VIDEO_DECODER_OUTPUT_VIEW_DESC pDesc) GetDesc;
			}
		}
		[CRepr]
		public struct ID3D11VideoProcessorInputView : ID3D11View
		{
			public const new Guid IID = .(0x11ec5a5f, 0x51dc, 0x4945, 0xab, 0x34, 0x6e, 0x8c, 0x21, 0x30, 0x0e, 0xa5);
			
			public new VTable* VT { get => (.)vt; }
			
			public void GetDesc(out D3D11_VIDEO_PROCESSOR_INPUT_VIEW_DESC pDesc) mut => VT.GetDesc(ref this, out pDesc);

			[CRepr]
			public struct VTable : ID3D11View.VTable
			{
				public new function [CallingConvention(.Stdcall)] void(ref ID3D11VideoProcessorInputView self, out D3D11_VIDEO_PROCESSOR_INPUT_VIEW_DESC pDesc) GetDesc;
			}
		}
		[CRepr]
		public struct ID3D11VideoProcessorOutputView : ID3D11View
		{
			public const new Guid IID = .(0xa048285e, 0x25a9, 0x4527, 0xbd, 0x93, 0xd6, 0x8b, 0x68, 0xc4, 0x42, 0x54);
			
			public new VTable* VT { get => (.)vt; }
			
			public void GetDesc(out D3D11_VIDEO_PROCESSOR_OUTPUT_VIEW_DESC pDesc) mut => VT.GetDesc(ref this, out pDesc);

			[CRepr]
			public struct VTable : ID3D11View.VTable
			{
				public new function [CallingConvention(.Stdcall)] void(ref ID3D11VideoProcessorOutputView self, out D3D11_VIDEO_PROCESSOR_OUTPUT_VIEW_DESC pDesc) GetDesc;
			}
		}
		[CRepr]
		public struct ID3D11VideoContext : ID3D11DeviceChild
		{
			public const new Guid IID = .(0x61f21c45, 0x3c0e, 0x4a74, 0x9c, 0xea, 0x67, 0x10, 0x0d, 0x9a, 0xd5, 0xe4);
			
			public new VTable* VT { get => (.)vt; }
			
			public HRESULT GetDecoderBuffer(ref ID3D11VideoDecoder pDecoder, D3D11_VIDEO_DECODER_BUFFER_TYPE Type, out uint32 pBufferSize, void** ppBuffer) mut => VT.GetDecoderBuffer(ref this, ref pDecoder, Type, out pBufferSize, ppBuffer);
			public HRESULT ReleaseDecoderBuffer(ref ID3D11VideoDecoder pDecoder, D3D11_VIDEO_DECODER_BUFFER_TYPE Type) mut => VT.ReleaseDecoderBuffer(ref this, ref pDecoder, Type);
			public HRESULT DecoderBeginFrame(ref ID3D11VideoDecoder pDecoder, ref ID3D11VideoDecoderOutputView pView, uint32 ContentKeySize, void* pContentKey) mut => VT.DecoderBeginFrame(ref this, ref pDecoder, ref pView, ContentKeySize, pContentKey);
			public HRESULT DecoderEndFrame(ref ID3D11VideoDecoder pDecoder) mut => VT.DecoderEndFrame(ref this, ref pDecoder);
			public HRESULT SubmitDecoderBuffers(ref ID3D11VideoDecoder pDecoder, uint32 NumBuffers, D3D11_VIDEO_DECODER_BUFFER_DESC* pBufferDesc) mut => VT.SubmitDecoderBuffers(ref this, ref pDecoder, NumBuffers, pBufferDesc);
			public int32 DecoderExtension(ref ID3D11VideoDecoder pDecoder, in D3D11_VIDEO_DECODER_EXTENSION pExtensionData) mut => VT.DecoderExtension(ref this, ref pDecoder, pExtensionData);
			public void VideoProcessorSetOutputTargetRect(ref ID3D11VideoProcessor pVideoProcessor, BOOL Enable, RECT* pRect) mut => VT.VideoProcessorSetOutputTargetRect(ref this, ref pVideoProcessor, Enable, pRect);
			public void VideoProcessorSetOutputBackgroundColor(ref ID3D11VideoProcessor pVideoProcessor, BOOL YCbCr, in D3D11_VIDEO_COLOR pColor) mut => VT.VideoProcessorSetOutputBackgroundColor(ref this, ref pVideoProcessor, YCbCr, pColor);
			public void VideoProcessorSetOutputColorSpace(ref ID3D11VideoProcessor pVideoProcessor, in D3D11_VIDEO_PROCESSOR_COLOR_SPACE pColorSpace) mut => VT.VideoProcessorSetOutputColorSpace(ref this, ref pVideoProcessor, pColorSpace);
			public void VideoProcessorSetOutputAlphaFillMode(ref ID3D11VideoProcessor pVideoProcessor, D3D11_VIDEO_PROCESSOR_ALPHA_FILL_MODE AlphaFillMode, uint32 StreamIndex) mut => VT.VideoProcessorSetOutputAlphaFillMode(ref this, ref pVideoProcessor, AlphaFillMode, StreamIndex);
			public void VideoProcessorSetOutputConstriction(ref ID3D11VideoProcessor pVideoProcessor, BOOL Enable, SIZE Size) mut => VT.VideoProcessorSetOutputConstriction(ref this, ref pVideoProcessor, Enable, Size);
			public void VideoProcessorSetOutputStereoMode(ref ID3D11VideoProcessor pVideoProcessor, BOOL Enable) mut => VT.VideoProcessorSetOutputStereoMode(ref this, ref pVideoProcessor, Enable);
			public int32 VideoProcessorSetOutputExtension(ref ID3D11VideoProcessor pVideoProcessor, in Guid pExtensionGuid, uint32 DataSize, void* pData) mut => VT.VideoProcessorSetOutputExtension(ref this, ref pVideoProcessor, pExtensionGuid, DataSize, pData);
			public void VideoProcessorGetOutputTargetRect(ref ID3D11VideoProcessor pVideoProcessor, out BOOL Enabled, out RECT pRect) mut => VT.VideoProcessorGetOutputTargetRect(ref this, ref pVideoProcessor, out Enabled, out pRect);
			public void VideoProcessorGetOutputBackgroundColor(ref ID3D11VideoProcessor pVideoProcessor, out BOOL pYCbCr, out D3D11_VIDEO_COLOR pColor) mut => VT.VideoProcessorGetOutputBackgroundColor(ref this, ref pVideoProcessor, out pYCbCr, out pColor);
			public void VideoProcessorGetOutputColorSpace(ref ID3D11VideoProcessor pVideoProcessor, out D3D11_VIDEO_PROCESSOR_COLOR_SPACE pColorSpace) mut => VT.VideoProcessorGetOutputColorSpace(ref this, ref pVideoProcessor, out pColorSpace);
			public void VideoProcessorGetOutputAlphaFillMode(ref ID3D11VideoProcessor pVideoProcessor, out D3D11_VIDEO_PROCESSOR_ALPHA_FILL_MODE pAlphaFillMode, out uint32 pStreamIndex) mut => VT.VideoProcessorGetOutputAlphaFillMode(ref this, ref pVideoProcessor, out pAlphaFillMode, out pStreamIndex);
			public void VideoProcessorGetOutputConstriction(ref ID3D11VideoProcessor pVideoProcessor, out BOOL pEnabled, out SIZE pSize) mut => VT.VideoProcessorGetOutputConstriction(ref this, ref pVideoProcessor, out pEnabled, out pSize);
			public void VideoProcessorGetOutputStereoMode(ref ID3D11VideoProcessor pVideoProcessor, out BOOL pEnabled) mut => VT.VideoProcessorGetOutputStereoMode(ref this, ref pVideoProcessor, out pEnabled);
			public int32 VideoProcessorGetOutputExtension(ref ID3D11VideoProcessor pVideoProcessor, in Guid pExtensionGuid, uint32 DataSize, void* pData) mut => VT.VideoProcessorGetOutputExtension(ref this, ref pVideoProcessor, pExtensionGuid, DataSize, pData);
			public void VideoProcessorSetStreamFrameFormat(ref ID3D11VideoProcessor pVideoProcessor, uint32 StreamIndex, D3D11_VIDEO_FRAME_FORMAT FrameFormat) mut => VT.VideoProcessorSetStreamFrameFormat(ref this, ref pVideoProcessor, StreamIndex, FrameFormat);
			public void VideoProcessorSetStreamColorSpace(ref ID3D11VideoProcessor pVideoProcessor, uint32 StreamIndex, in D3D11_VIDEO_PROCESSOR_COLOR_SPACE pColorSpace) mut => VT.VideoProcessorSetStreamColorSpace(ref this, ref pVideoProcessor, StreamIndex, pColorSpace);
			public void VideoProcessorSetStreamOutputRate(ref ID3D11VideoProcessor pVideoProcessor, uint32 StreamIndex, D3D11_VIDEO_PROCESSOR_OUTPUT_RATE OutputRate, BOOL RepeatFrame, DXGI_RATIONAL* pCustomRate) mut => VT.VideoProcessorSetStreamOutputRate(ref this, ref pVideoProcessor, StreamIndex, OutputRate, RepeatFrame, pCustomRate);
			public void VideoProcessorSetStreamSourceRect(ref ID3D11VideoProcessor pVideoProcessor, uint32 StreamIndex, BOOL Enable, RECT* pRect) mut => VT.VideoProcessorSetStreamSourceRect(ref this, ref pVideoProcessor, StreamIndex, Enable, pRect);
			public void VideoProcessorSetStreamDestRect(ref ID3D11VideoProcessor pVideoProcessor, uint32 StreamIndex, BOOL Enable, RECT* pRect) mut => VT.VideoProcessorSetStreamDestRect(ref this, ref pVideoProcessor, StreamIndex, Enable, pRect);
			public void VideoProcessorSetStreamAlpha(ref ID3D11VideoProcessor pVideoProcessor, uint32 StreamIndex, BOOL Enable, float Alpha) mut => VT.VideoProcessorSetStreamAlpha(ref this, ref pVideoProcessor, StreamIndex, Enable, Alpha);
			public void VideoProcessorSetStreamPalette(ref ID3D11VideoProcessor pVideoProcessor, uint32 StreamIndex, uint32 Count, uint32* pEntries) mut => VT.VideoProcessorSetStreamPalette(ref this, ref pVideoProcessor, StreamIndex, Count, pEntries);
			public void VideoProcessorSetStreamPixelAspectRatio(ref ID3D11VideoProcessor pVideoProcessor, uint32 StreamIndex, BOOL Enable, DXGI_RATIONAL* pSourceAspectRatio, DXGI_RATIONAL* pDestinationAspectRatio) mut => VT.VideoProcessorSetStreamPixelAspectRatio(ref this, ref pVideoProcessor, StreamIndex, Enable, pSourceAspectRatio, pDestinationAspectRatio);
			public void VideoProcessorSetStreamLumaKey(ref ID3D11VideoProcessor pVideoProcessor, uint32 StreamIndex, BOOL Enable, float Lower, float Upper) mut => VT.VideoProcessorSetStreamLumaKey(ref this, ref pVideoProcessor, StreamIndex, Enable, Lower, Upper);
			public void VideoProcessorSetStreamStereoFormat(ref ID3D11VideoProcessor pVideoProcessor, uint32 StreamIndex, BOOL Enable, D3D11_VIDEO_PROCESSOR_STEREO_FORMAT Format, BOOL LeftViewFrame0, BOOL BaseViewFrame0, D3D11_VIDEO_PROCESSOR_STEREO_FLIP_MODE FlipMode, int32 MonoOffset) mut => VT.VideoProcessorSetStreamStereoFormat(ref this, ref pVideoProcessor, StreamIndex, Enable, Format, LeftViewFrame0, BaseViewFrame0, FlipMode, MonoOffset);
			public void VideoProcessorSetStreamAutoProcessingMode(ref ID3D11VideoProcessor pVideoProcessor, uint32 StreamIndex, BOOL Enable) mut => VT.VideoProcessorSetStreamAutoProcessingMode(ref this, ref pVideoProcessor, StreamIndex, Enable);
			public void VideoProcessorSetStreamFilter(ref ID3D11VideoProcessor pVideoProcessor, uint32 StreamIndex, D3D11_VIDEO_PROCESSOR_FILTER Filter, BOOL Enable, int32 Level) mut => VT.VideoProcessorSetStreamFilter(ref this, ref pVideoProcessor, StreamIndex, Filter, Enable, Level);
			public int32 VideoProcessorSetStreamExtension(ref ID3D11VideoProcessor pVideoProcessor, uint32 StreamIndex, in Guid pExtensionGuid, uint32 DataSize, void* pData) mut => VT.VideoProcessorSetStreamExtension(ref this, ref pVideoProcessor, StreamIndex, pExtensionGuid, DataSize, pData);
			public void VideoProcessorGetStreamFrameFormat(ref ID3D11VideoProcessor pVideoProcessor, uint32 StreamIndex, out D3D11_VIDEO_FRAME_FORMAT pFrameFormat) mut => VT.VideoProcessorGetStreamFrameFormat(ref this, ref pVideoProcessor, StreamIndex, out pFrameFormat);
			public void VideoProcessorGetStreamColorSpace(ref ID3D11VideoProcessor pVideoProcessor, uint32 StreamIndex, out D3D11_VIDEO_PROCESSOR_COLOR_SPACE pColorSpace) mut => VT.VideoProcessorGetStreamColorSpace(ref this, ref pVideoProcessor, StreamIndex, out pColorSpace);
			public void VideoProcessorGetStreamOutputRate(ref ID3D11VideoProcessor pVideoProcessor, uint32 StreamIndex, out D3D11_VIDEO_PROCESSOR_OUTPUT_RATE pOutputRate, out BOOL pRepeatFrame, out DXGI_RATIONAL pCustomRate) mut => VT.VideoProcessorGetStreamOutputRate(ref this, ref pVideoProcessor, StreamIndex, out pOutputRate, out pRepeatFrame, out pCustomRate);
			public void VideoProcessorGetStreamSourceRect(ref ID3D11VideoProcessor pVideoProcessor, uint32 StreamIndex, out BOOL pEnabled, out RECT pRect) mut => VT.VideoProcessorGetStreamSourceRect(ref this, ref pVideoProcessor, StreamIndex, out pEnabled, out pRect);
			public void VideoProcessorGetStreamDestRect(ref ID3D11VideoProcessor pVideoProcessor, uint32 StreamIndex, out BOOL pEnabled, out RECT pRect) mut => VT.VideoProcessorGetStreamDestRect(ref this, ref pVideoProcessor, StreamIndex, out pEnabled, out pRect);
			public void VideoProcessorGetStreamAlpha(ref ID3D11VideoProcessor pVideoProcessor, uint32 StreamIndex, out BOOL pEnabled, out float pAlpha) mut => VT.VideoProcessorGetStreamAlpha(ref this, ref pVideoProcessor, StreamIndex, out pEnabled, out pAlpha);
			public void VideoProcessorGetStreamPalette(ref ID3D11VideoProcessor pVideoProcessor, uint32 StreamIndex, uint32 Count, uint32* pEntries) mut => VT.VideoProcessorGetStreamPalette(ref this, ref pVideoProcessor, StreamIndex, Count, pEntries);
			public void VideoProcessorGetStreamPixelAspectRatio(ref ID3D11VideoProcessor pVideoProcessor, uint32 StreamIndex, out BOOL pEnabled, out DXGI_RATIONAL pSourceAspectRatio, out DXGI_RATIONAL pDestinationAspectRatio) mut => VT.VideoProcessorGetStreamPixelAspectRatio(ref this, ref pVideoProcessor, StreamIndex, out pEnabled, out pSourceAspectRatio, out pDestinationAspectRatio);
			public void VideoProcessorGetStreamLumaKey(ref ID3D11VideoProcessor pVideoProcessor, uint32 StreamIndex, out BOOL pEnabled, out float pLower, out float pUpper) mut => VT.VideoProcessorGetStreamLumaKey(ref this, ref pVideoProcessor, StreamIndex, out pEnabled, out pLower, out pUpper);
			public void VideoProcessorGetStreamStereoFormat(ref ID3D11VideoProcessor pVideoProcessor, uint32 StreamIndex, out BOOL pEnable, out D3D11_VIDEO_PROCESSOR_STEREO_FORMAT pFormat, out BOOL pLeftViewFrame0, out BOOL pBaseViewFrame0, out D3D11_VIDEO_PROCESSOR_STEREO_FLIP_MODE pFlipMode, out int32 MonoOffset) mut => VT.VideoProcessorGetStreamStereoFormat(ref this, ref pVideoProcessor, StreamIndex, out pEnable, out pFormat, out pLeftViewFrame0, out pBaseViewFrame0, out pFlipMode, out MonoOffset);
			public void VideoProcessorGetStreamAutoProcessingMode(ref ID3D11VideoProcessor pVideoProcessor, uint32 StreamIndex, out BOOL pEnabled) mut => VT.VideoProcessorGetStreamAutoProcessingMode(ref this, ref pVideoProcessor, StreamIndex, out pEnabled);
			public void VideoProcessorGetStreamFilter(ref ID3D11VideoProcessor pVideoProcessor, uint32 StreamIndex, D3D11_VIDEO_PROCESSOR_FILTER Filter, out BOOL pEnabled, out int32 pLevel) mut => VT.VideoProcessorGetStreamFilter(ref this, ref pVideoProcessor, StreamIndex, Filter, out pEnabled, out pLevel);
			public int32 VideoProcessorGetStreamExtension(ref ID3D11VideoProcessor pVideoProcessor, uint32 StreamIndex, in Guid pExtensionGuid, uint32 DataSize, void* pData) mut => VT.VideoProcessorGetStreamExtension(ref this, ref pVideoProcessor, StreamIndex, pExtensionGuid, DataSize, pData);
			public HRESULT VideoProcessorBlt(ref ID3D11VideoProcessor pVideoProcessor, ref ID3D11VideoProcessorOutputView pView, uint32 OutputFrame, uint32 StreamCount, D3D11_VIDEO_PROCESSOR_STREAM* pStreams) mut => VT.VideoProcessorBlt(ref this, ref pVideoProcessor, ref pView, OutputFrame, StreamCount, pStreams);
			public HRESULT NegotiateCryptoSessionKeyExchange(ref ID3D11CryptoSession pCryptoSession, uint32 DataSize, void* pData) mut => VT.NegotiateCryptoSessionKeyExchange(ref this, ref pCryptoSession, DataSize, pData);
			public void EncryptionBlt(ref ID3D11CryptoSession pCryptoSession, ref ID3D11Texture2D pSrcSurface, ref ID3D11Texture2D pDstSurface, uint32 IVSize, void* pIV) mut => VT.EncryptionBlt(ref this, ref pCryptoSession, ref pSrcSurface, ref pDstSurface, IVSize, pIV);
			public void DecryptionBlt(ref ID3D11CryptoSession pCryptoSession, ref ID3D11Texture2D pSrcSurface, ref ID3D11Texture2D pDstSurface, D3D11_ENCRYPTED_BLOCK_INFO* pEncryptedBlockInfo, uint32 ContentKeySize, void* pContentKey, uint32 IVSize, void* pIV) mut => VT.DecryptionBlt(ref this, ref pCryptoSession, ref pSrcSurface, ref pDstSurface, pEncryptedBlockInfo, ContentKeySize, pContentKey, IVSize, pIV);
			public void StartSessionKeyRefresh(ref ID3D11CryptoSession pCryptoSession, uint32 RandomNumberSize, void* pRandomNumber) mut => VT.StartSessionKeyRefresh(ref this, ref pCryptoSession, RandomNumberSize, pRandomNumber);
			public void FinishSessionKeyRefresh(ref ID3D11CryptoSession pCryptoSession) mut => VT.FinishSessionKeyRefresh(ref this, ref pCryptoSession);
			public HRESULT GetEncryptionBltKey(ref ID3D11CryptoSession pCryptoSession, uint32 KeySize, void* pReadbackKey) mut => VT.GetEncryptionBltKey(ref this, ref pCryptoSession, KeySize, pReadbackKey);
			public HRESULT NegotiateAuthenticatedChannelKeyExchange(ref ID3D11AuthenticatedChannel pChannel, uint32 DataSize, void* pData) mut => VT.NegotiateAuthenticatedChannelKeyExchange(ref this, ref pChannel, DataSize, pData);
			public HRESULT QueryAuthenticatedChannel(ref ID3D11AuthenticatedChannel pChannel, uint32 InputSize, void* pInput, uint32 OutputSize, void* pOutput) mut => VT.QueryAuthenticatedChannel(ref this, ref pChannel, InputSize, pInput, OutputSize, pOutput);
			public HRESULT ConfigureAuthenticatedChannel(ref ID3D11AuthenticatedChannel pChannel, uint32 InputSize, void* pInput, out D3D11_AUTHENTICATED_CONFIGURE_OUTPUT pOutput) mut => VT.ConfigureAuthenticatedChannel(ref this, ref pChannel, InputSize, pInput, out pOutput);
			public void VideoProcessorSetStreamRotation(ref ID3D11VideoProcessor pVideoProcessor, uint32 StreamIndex, BOOL Enable, D3D11_VIDEO_PROCESSOR_ROTATION Rotation) mut => VT.VideoProcessorSetStreamRotation(ref this, ref pVideoProcessor, StreamIndex, Enable, Rotation);
			public void VideoProcessorGetStreamRotation(ref ID3D11VideoProcessor pVideoProcessor, uint32 StreamIndex, out BOOL pEnable, out D3D11_VIDEO_PROCESSOR_ROTATION pRotation) mut => VT.VideoProcessorGetStreamRotation(ref this, ref pVideoProcessor, StreamIndex, out pEnable, out pRotation);

			[CRepr]
			public struct VTable : ID3D11DeviceChild.VTable
			{
				public new function [CallingConvention(.Stdcall)] HRESULT(ref ID3D11VideoContext self, ref ID3D11VideoDecoder pDecoder, D3D11_VIDEO_DECODER_BUFFER_TYPE Type, out uint32 pBufferSize, void** ppBuffer) GetDecoderBuffer;
				public new function [CallingConvention(.Stdcall)] HRESULT(ref ID3D11VideoContext self, ref ID3D11VideoDecoder pDecoder, D3D11_VIDEO_DECODER_BUFFER_TYPE Type) ReleaseDecoderBuffer;
				public new function [CallingConvention(.Stdcall)] HRESULT(ref ID3D11VideoContext self, ref ID3D11VideoDecoder pDecoder, ref ID3D11VideoDecoderOutputView pView, uint32 ContentKeySize, void* pContentKey) DecoderBeginFrame;
				public new function [CallingConvention(.Stdcall)] HRESULT(ref ID3D11VideoContext self, ref ID3D11VideoDecoder pDecoder) DecoderEndFrame;
				public new function [CallingConvention(.Stdcall)] HRESULT(ref ID3D11VideoContext self, ref ID3D11VideoDecoder pDecoder, uint32 NumBuffers, D3D11_VIDEO_DECODER_BUFFER_DESC* pBufferDesc) SubmitDecoderBuffers;
				public new function [CallingConvention(.Stdcall)] int32(ref ID3D11VideoContext self, ref ID3D11VideoDecoder pDecoder, in D3D11_VIDEO_DECODER_EXTENSION pExtensionData) DecoderExtension;
				public new function [CallingConvention(.Stdcall)] void(ref ID3D11VideoContext self, ref ID3D11VideoProcessor pVideoProcessor, BOOL Enable, RECT* pRect) VideoProcessorSetOutputTargetRect;
				public new function [CallingConvention(.Stdcall)] void(ref ID3D11VideoContext self, ref ID3D11VideoProcessor pVideoProcessor, BOOL YCbCr, in D3D11_VIDEO_COLOR pColor) VideoProcessorSetOutputBackgroundColor;
				public new function [CallingConvention(.Stdcall)] void(ref ID3D11VideoContext self, ref ID3D11VideoProcessor pVideoProcessor, in D3D11_VIDEO_PROCESSOR_COLOR_SPACE pColorSpace) VideoProcessorSetOutputColorSpace;
				public new function [CallingConvention(.Stdcall)] void(ref ID3D11VideoContext self, ref ID3D11VideoProcessor pVideoProcessor, D3D11_VIDEO_PROCESSOR_ALPHA_FILL_MODE AlphaFillMode, uint32 StreamIndex) VideoProcessorSetOutputAlphaFillMode;
				public new function [CallingConvention(.Stdcall)] void(ref ID3D11VideoContext self, ref ID3D11VideoProcessor pVideoProcessor, BOOL Enable, SIZE Size) VideoProcessorSetOutputConstriction;
				public new function [CallingConvention(.Stdcall)] void(ref ID3D11VideoContext self, ref ID3D11VideoProcessor pVideoProcessor, BOOL Enable) VideoProcessorSetOutputStereoMode;
				public new function [CallingConvention(.Stdcall)] int32(ref ID3D11VideoContext self, ref ID3D11VideoProcessor pVideoProcessor, in Guid pExtensionGuid, uint32 DataSize, void* pData) VideoProcessorSetOutputExtension;
				public new function [CallingConvention(.Stdcall)] void(ref ID3D11VideoContext self, ref ID3D11VideoProcessor pVideoProcessor, out BOOL Enabled, out RECT pRect) VideoProcessorGetOutputTargetRect;
				public new function [CallingConvention(.Stdcall)] void(ref ID3D11VideoContext self, ref ID3D11VideoProcessor pVideoProcessor, out BOOL pYCbCr, out D3D11_VIDEO_COLOR pColor) VideoProcessorGetOutputBackgroundColor;
				public new function [CallingConvention(.Stdcall)] void(ref ID3D11VideoContext self, ref ID3D11VideoProcessor pVideoProcessor, out D3D11_VIDEO_PROCESSOR_COLOR_SPACE pColorSpace) VideoProcessorGetOutputColorSpace;
				public new function [CallingConvention(.Stdcall)] void(ref ID3D11VideoContext self, ref ID3D11VideoProcessor pVideoProcessor, out D3D11_VIDEO_PROCESSOR_ALPHA_FILL_MODE pAlphaFillMode, out uint32 pStreamIndex) VideoProcessorGetOutputAlphaFillMode;
				public new function [CallingConvention(.Stdcall)] void(ref ID3D11VideoContext self, ref ID3D11VideoProcessor pVideoProcessor, out BOOL pEnabled, out SIZE pSize) VideoProcessorGetOutputConstriction;
				public new function [CallingConvention(.Stdcall)] void(ref ID3D11VideoContext self, ref ID3D11VideoProcessor pVideoProcessor, out BOOL pEnabled) VideoProcessorGetOutputStereoMode;
				public new function [CallingConvention(.Stdcall)] int32(ref ID3D11VideoContext self, ref ID3D11VideoProcessor pVideoProcessor, in Guid pExtensionGuid, uint32 DataSize, void* pData) VideoProcessorGetOutputExtension;
				public new function [CallingConvention(.Stdcall)] void(ref ID3D11VideoContext self, ref ID3D11VideoProcessor pVideoProcessor, uint32 StreamIndex, D3D11_VIDEO_FRAME_FORMAT FrameFormat) VideoProcessorSetStreamFrameFormat;
				public new function [CallingConvention(.Stdcall)] void(ref ID3D11VideoContext self, ref ID3D11VideoProcessor pVideoProcessor, uint32 StreamIndex, in D3D11_VIDEO_PROCESSOR_COLOR_SPACE pColorSpace) VideoProcessorSetStreamColorSpace;
				public new function [CallingConvention(.Stdcall)] void(ref ID3D11VideoContext self, ref ID3D11VideoProcessor pVideoProcessor, uint32 StreamIndex, D3D11_VIDEO_PROCESSOR_OUTPUT_RATE OutputRate, BOOL RepeatFrame, DXGI_RATIONAL* pCustomRate) VideoProcessorSetStreamOutputRate;
				public new function [CallingConvention(.Stdcall)] void(ref ID3D11VideoContext self, ref ID3D11VideoProcessor pVideoProcessor, uint32 StreamIndex, BOOL Enable, RECT* pRect) VideoProcessorSetStreamSourceRect;
				public new function [CallingConvention(.Stdcall)] void(ref ID3D11VideoContext self, ref ID3D11VideoProcessor pVideoProcessor, uint32 StreamIndex, BOOL Enable, RECT* pRect) VideoProcessorSetStreamDestRect;
				public new function [CallingConvention(.Stdcall)] void(ref ID3D11VideoContext self, ref ID3D11VideoProcessor pVideoProcessor, uint32 StreamIndex, BOOL Enable, float Alpha) VideoProcessorSetStreamAlpha;
				public new function [CallingConvention(.Stdcall)] void(ref ID3D11VideoContext self, ref ID3D11VideoProcessor pVideoProcessor, uint32 StreamIndex, uint32 Count, uint32* pEntries) VideoProcessorSetStreamPalette;
				public new function [CallingConvention(.Stdcall)] void(ref ID3D11VideoContext self, ref ID3D11VideoProcessor pVideoProcessor, uint32 StreamIndex, BOOL Enable, DXGI_RATIONAL* pSourceAspectRatio, DXGI_RATIONAL* pDestinationAspectRatio) VideoProcessorSetStreamPixelAspectRatio;
				public new function [CallingConvention(.Stdcall)] void(ref ID3D11VideoContext self, ref ID3D11VideoProcessor pVideoProcessor, uint32 StreamIndex, BOOL Enable, float Lower, float Upper) VideoProcessorSetStreamLumaKey;
				public new function [CallingConvention(.Stdcall)] void(ref ID3D11VideoContext self, ref ID3D11VideoProcessor pVideoProcessor, uint32 StreamIndex, BOOL Enable, D3D11_VIDEO_PROCESSOR_STEREO_FORMAT Format, BOOL LeftViewFrame0, BOOL BaseViewFrame0, D3D11_VIDEO_PROCESSOR_STEREO_FLIP_MODE FlipMode, int32 MonoOffset) VideoProcessorSetStreamStereoFormat;
				public new function [CallingConvention(.Stdcall)] void(ref ID3D11VideoContext self, ref ID3D11VideoProcessor pVideoProcessor, uint32 StreamIndex, BOOL Enable) VideoProcessorSetStreamAutoProcessingMode;
				public new function [CallingConvention(.Stdcall)] void(ref ID3D11VideoContext self, ref ID3D11VideoProcessor pVideoProcessor, uint32 StreamIndex, D3D11_VIDEO_PROCESSOR_FILTER Filter, BOOL Enable, int32 Level) VideoProcessorSetStreamFilter;
				public new function [CallingConvention(.Stdcall)] int32(ref ID3D11VideoContext self, ref ID3D11VideoProcessor pVideoProcessor, uint32 StreamIndex, in Guid pExtensionGuid, uint32 DataSize, void* pData) VideoProcessorSetStreamExtension;
				public new function [CallingConvention(.Stdcall)] void(ref ID3D11VideoContext self, ref ID3D11VideoProcessor pVideoProcessor, uint32 StreamIndex, out D3D11_VIDEO_FRAME_FORMAT pFrameFormat) VideoProcessorGetStreamFrameFormat;
				public new function [CallingConvention(.Stdcall)] void(ref ID3D11VideoContext self, ref ID3D11VideoProcessor pVideoProcessor, uint32 StreamIndex, out D3D11_VIDEO_PROCESSOR_COLOR_SPACE pColorSpace) VideoProcessorGetStreamColorSpace;
				public new function [CallingConvention(.Stdcall)] void(ref ID3D11VideoContext self, ref ID3D11VideoProcessor pVideoProcessor, uint32 StreamIndex, out D3D11_VIDEO_PROCESSOR_OUTPUT_RATE pOutputRate, out BOOL pRepeatFrame, out DXGI_RATIONAL pCustomRate) VideoProcessorGetStreamOutputRate;
				public new function [CallingConvention(.Stdcall)] void(ref ID3D11VideoContext self, ref ID3D11VideoProcessor pVideoProcessor, uint32 StreamIndex, out BOOL pEnabled, out RECT pRect) VideoProcessorGetStreamSourceRect;
				public new function [CallingConvention(.Stdcall)] void(ref ID3D11VideoContext self, ref ID3D11VideoProcessor pVideoProcessor, uint32 StreamIndex, out BOOL pEnabled, out RECT pRect) VideoProcessorGetStreamDestRect;
				public new function [CallingConvention(.Stdcall)] void(ref ID3D11VideoContext self, ref ID3D11VideoProcessor pVideoProcessor, uint32 StreamIndex, out BOOL pEnabled, out float pAlpha) VideoProcessorGetStreamAlpha;
				public new function [CallingConvention(.Stdcall)] void(ref ID3D11VideoContext self, ref ID3D11VideoProcessor pVideoProcessor, uint32 StreamIndex, uint32 Count, uint32* pEntries) VideoProcessorGetStreamPalette;
				public new function [CallingConvention(.Stdcall)] void(ref ID3D11VideoContext self, ref ID3D11VideoProcessor pVideoProcessor, uint32 StreamIndex, out BOOL pEnabled, out DXGI_RATIONAL pSourceAspectRatio, out DXGI_RATIONAL pDestinationAspectRatio) VideoProcessorGetStreamPixelAspectRatio;
				public new function [CallingConvention(.Stdcall)] void(ref ID3D11VideoContext self, ref ID3D11VideoProcessor pVideoProcessor, uint32 StreamIndex, out BOOL pEnabled, out float pLower, out float pUpper) VideoProcessorGetStreamLumaKey;
				public new function [CallingConvention(.Stdcall)] void(ref ID3D11VideoContext self, ref ID3D11VideoProcessor pVideoProcessor, uint32 StreamIndex, out BOOL pEnable, out D3D11_VIDEO_PROCESSOR_STEREO_FORMAT pFormat, out BOOL pLeftViewFrame0, out BOOL pBaseViewFrame0, out D3D11_VIDEO_PROCESSOR_STEREO_FLIP_MODE pFlipMode, out int32 MonoOffset) VideoProcessorGetStreamStereoFormat;
				public new function [CallingConvention(.Stdcall)] void(ref ID3D11VideoContext self, ref ID3D11VideoProcessor pVideoProcessor, uint32 StreamIndex, out BOOL pEnabled) VideoProcessorGetStreamAutoProcessingMode;
				public new function [CallingConvention(.Stdcall)] void(ref ID3D11VideoContext self, ref ID3D11VideoProcessor pVideoProcessor, uint32 StreamIndex, D3D11_VIDEO_PROCESSOR_FILTER Filter, out BOOL pEnabled, out int32 pLevel) VideoProcessorGetStreamFilter;
				public new function [CallingConvention(.Stdcall)] int32(ref ID3D11VideoContext self, ref ID3D11VideoProcessor pVideoProcessor, uint32 StreamIndex, in Guid pExtensionGuid, uint32 DataSize, void* pData) VideoProcessorGetStreamExtension;
				public new function [CallingConvention(.Stdcall)] HRESULT(ref ID3D11VideoContext self, ref ID3D11VideoProcessor pVideoProcessor, ref ID3D11VideoProcessorOutputView pView, uint32 OutputFrame, uint32 StreamCount, D3D11_VIDEO_PROCESSOR_STREAM* pStreams) VideoProcessorBlt;
				public new function [CallingConvention(.Stdcall)] HRESULT(ref ID3D11VideoContext self, ref ID3D11CryptoSession pCryptoSession, uint32 DataSize, void* pData) NegotiateCryptoSessionKeyExchange;
				public new function [CallingConvention(.Stdcall)] void(ref ID3D11VideoContext self, ref ID3D11CryptoSession pCryptoSession, ref ID3D11Texture2D pSrcSurface, ref ID3D11Texture2D pDstSurface, uint32 IVSize, void* pIV) EncryptionBlt;
				public new function [CallingConvention(.Stdcall)] void(ref ID3D11VideoContext self, ref ID3D11CryptoSession pCryptoSession, ref ID3D11Texture2D pSrcSurface, ref ID3D11Texture2D pDstSurface, D3D11_ENCRYPTED_BLOCK_INFO* pEncryptedBlockInfo, uint32 ContentKeySize, void* pContentKey, uint32 IVSize, void* pIV) DecryptionBlt;
				public new function [CallingConvention(.Stdcall)] void(ref ID3D11VideoContext self, ref ID3D11CryptoSession pCryptoSession, uint32 RandomNumberSize, void* pRandomNumber) StartSessionKeyRefresh;
				public new function [CallingConvention(.Stdcall)] void(ref ID3D11VideoContext self, ref ID3D11CryptoSession pCryptoSession) FinishSessionKeyRefresh;
				public new function [CallingConvention(.Stdcall)] HRESULT(ref ID3D11VideoContext self, ref ID3D11CryptoSession pCryptoSession, uint32 KeySize, void* pReadbackKey) GetEncryptionBltKey;
				public new function [CallingConvention(.Stdcall)] HRESULT(ref ID3D11VideoContext self, ref ID3D11AuthenticatedChannel pChannel, uint32 DataSize, void* pData) NegotiateAuthenticatedChannelKeyExchange;
				public new function [CallingConvention(.Stdcall)] HRESULT(ref ID3D11VideoContext self, ref ID3D11AuthenticatedChannel pChannel, uint32 InputSize, void* pInput, uint32 OutputSize, void* pOutput) QueryAuthenticatedChannel;
				public new function [CallingConvention(.Stdcall)] HRESULT(ref ID3D11VideoContext self, ref ID3D11AuthenticatedChannel pChannel, uint32 InputSize, void* pInput, out D3D11_AUTHENTICATED_CONFIGURE_OUTPUT pOutput) ConfigureAuthenticatedChannel;
				public new function [CallingConvention(.Stdcall)] void(ref ID3D11VideoContext self, ref ID3D11VideoProcessor pVideoProcessor, uint32 StreamIndex, BOOL Enable, D3D11_VIDEO_PROCESSOR_ROTATION Rotation) VideoProcessorSetStreamRotation;
				public new function [CallingConvention(.Stdcall)] void(ref ID3D11VideoContext self, ref ID3D11VideoProcessor pVideoProcessor, uint32 StreamIndex, out BOOL pEnable, out D3D11_VIDEO_PROCESSOR_ROTATION pRotation) VideoProcessorGetStreamRotation;
			}
		}
		[CRepr]
		public struct ID3D11VideoDevice : IUnknown
		{
			public const new Guid IID = .(0x10ec4d5b, 0x975a, 0x4689, 0xb9, 0xe4, 0xd0, 0xaa, 0xc3, 0x0f, 0xe3, 0x33);
			
			public new VTable* VT { get => (.)vt; }
			
			public HRESULT CreateVideoDecoder(in D3D11_VIDEO_DECODER_DESC pVideoDesc, in D3D11_VIDEO_DECODER_CONFIG pConfig, out ID3D11VideoDecoder* ppDecoder) mut => VT.CreateVideoDecoder(ref this, pVideoDesc, pConfig, out ppDecoder);
			public HRESULT CreateVideoProcessor(ref ID3D11VideoProcessorEnumerator pEnum, uint32 RateConversionIndex, out ID3D11VideoProcessor* ppVideoProcessor) mut => VT.CreateVideoProcessor(ref this, ref pEnum, RateConversionIndex, out ppVideoProcessor);
			public HRESULT CreateAuthenticatedChannel(D3D11_AUTHENTICATED_CHANNEL_TYPE ChannelType, out ID3D11AuthenticatedChannel* ppAuthenticatedChannel) mut => VT.CreateAuthenticatedChannel(ref this, ChannelType, out ppAuthenticatedChannel);
			public HRESULT CreateCryptoSession(in Guid pCryptoType, Guid* pDecoderProfile, in Guid pKeyExchangeType, out ID3D11CryptoSession* ppCryptoSession) mut => VT.CreateCryptoSession(ref this, pCryptoType, pDecoderProfile, pKeyExchangeType, out ppCryptoSession);
			public HRESULT CreateVideoDecoderOutputView(ref ID3D11Resource pResource, in D3D11_VIDEO_DECODER_OUTPUT_VIEW_DESC pDesc, ID3D11VideoDecoderOutputView** ppVDOVView) mut => VT.CreateVideoDecoderOutputView(ref this, ref pResource, pDesc, ppVDOVView);
			public HRESULT CreateVideoProcessorInputView(ref ID3D11Resource pResource, ref ID3D11VideoProcessorEnumerator pEnum, in D3D11_VIDEO_PROCESSOR_INPUT_VIEW_DESC pDesc, ID3D11VideoProcessorInputView** ppVPIView) mut => VT.CreateVideoProcessorInputView(ref this, ref pResource, ref pEnum, pDesc, ppVPIView);
			public HRESULT CreateVideoProcessorOutputView(ref ID3D11Resource pResource, ref ID3D11VideoProcessorEnumerator pEnum, in D3D11_VIDEO_PROCESSOR_OUTPUT_VIEW_DESC pDesc, ID3D11VideoProcessorOutputView** ppVPOView) mut => VT.CreateVideoProcessorOutputView(ref this, ref pResource, ref pEnum, pDesc, ppVPOView);
			public HRESULT CreateVideoProcessorEnumerator(in D3D11_VIDEO_PROCESSOR_CONTENT_DESC pDesc, out ID3D11VideoProcessorEnumerator* ppEnum) mut => VT.CreateVideoProcessorEnumerator(ref this, pDesc, out ppEnum);
			public uint32 GetVideoDecoderProfileCount() mut => VT.GetVideoDecoderProfileCount(ref this);
			public HRESULT GetVideoDecoderProfile(uint32 Index, out Guid pDecoderProfile) mut => VT.GetVideoDecoderProfile(ref this, Index, out pDecoderProfile);
			public HRESULT CheckVideoDecoderFormat(in Guid pDecoderProfile, DXGI_FORMAT Format, out BOOL pSupported) mut => VT.CheckVideoDecoderFormat(ref this, pDecoderProfile, Format, out pSupported);
			public HRESULT GetVideoDecoderConfigCount(in D3D11_VIDEO_DECODER_DESC pDesc, out uint32 pCount) mut => VT.GetVideoDecoderConfigCount(ref this, pDesc, out pCount);
			public HRESULT GetVideoDecoderConfig(in D3D11_VIDEO_DECODER_DESC pDesc, uint32 Index, out D3D11_VIDEO_DECODER_CONFIG pConfig) mut => VT.GetVideoDecoderConfig(ref this, pDesc, Index, out pConfig);
			public HRESULT GetContentProtectionCaps(Guid* pCryptoType, Guid* pDecoderProfile, out D3D11_VIDEO_CONTENT_PROTECTION_CAPS pCaps) mut => VT.GetContentProtectionCaps(ref this, pCryptoType, pDecoderProfile, out pCaps);
			public HRESULT CheckCryptoKeyExchange(in Guid pCryptoType, Guid* pDecoderProfile, uint32 Index, out Guid pKeyExchangeType) mut => VT.CheckCryptoKeyExchange(ref this, pCryptoType, pDecoderProfile, Index, out pKeyExchangeType);
			public HRESULT SetPrivateData(in Guid guid, uint32 DataSize, void* pData) mut => VT.SetPrivateData(ref this, guid, DataSize, pData);
			public HRESULT SetPrivateDataInterface(in Guid guid, IUnknown* pData) mut => VT.SetPrivateDataInterface(ref this, guid, pData);

			[CRepr]
			public struct VTable : IUnknown.VTable
			{
				public new function [CallingConvention(.Stdcall)] HRESULT(ref ID3D11VideoDevice self, in D3D11_VIDEO_DECODER_DESC pVideoDesc, in D3D11_VIDEO_DECODER_CONFIG pConfig, out ID3D11VideoDecoder* ppDecoder) CreateVideoDecoder;
				public new function [CallingConvention(.Stdcall)] HRESULT(ref ID3D11VideoDevice self, ref ID3D11VideoProcessorEnumerator pEnum, uint32 RateConversionIndex, out ID3D11VideoProcessor* ppVideoProcessor) CreateVideoProcessor;
				public new function [CallingConvention(.Stdcall)] HRESULT(ref ID3D11VideoDevice self, D3D11_AUTHENTICATED_CHANNEL_TYPE ChannelType, out ID3D11AuthenticatedChannel* ppAuthenticatedChannel) CreateAuthenticatedChannel;
				public new function [CallingConvention(.Stdcall)] HRESULT(ref ID3D11VideoDevice self, in Guid pCryptoType, Guid* pDecoderProfile, in Guid pKeyExchangeType, out ID3D11CryptoSession* ppCryptoSession) CreateCryptoSession;
				public new function [CallingConvention(.Stdcall)] HRESULT(ref ID3D11VideoDevice self, ref ID3D11Resource pResource, in D3D11_VIDEO_DECODER_OUTPUT_VIEW_DESC pDesc, ID3D11VideoDecoderOutputView** ppVDOVView) CreateVideoDecoderOutputView;
				public new function [CallingConvention(.Stdcall)] HRESULT(ref ID3D11VideoDevice self, ref ID3D11Resource pResource, ref ID3D11VideoProcessorEnumerator pEnum, in D3D11_VIDEO_PROCESSOR_INPUT_VIEW_DESC pDesc, ID3D11VideoProcessorInputView** ppVPIView) CreateVideoProcessorInputView;
				public new function [CallingConvention(.Stdcall)] HRESULT(ref ID3D11VideoDevice self, ref ID3D11Resource pResource, ref ID3D11VideoProcessorEnumerator pEnum, in D3D11_VIDEO_PROCESSOR_OUTPUT_VIEW_DESC pDesc, ID3D11VideoProcessorOutputView** ppVPOView) CreateVideoProcessorOutputView;
				public new function [CallingConvention(.Stdcall)] HRESULT(ref ID3D11VideoDevice self, in D3D11_VIDEO_PROCESSOR_CONTENT_DESC pDesc, out ID3D11VideoProcessorEnumerator* ppEnum) CreateVideoProcessorEnumerator;
				public new function [CallingConvention(.Stdcall)] uint32(ref ID3D11VideoDevice self) GetVideoDecoderProfileCount;
				public new function [CallingConvention(.Stdcall)] HRESULT(ref ID3D11VideoDevice self, uint32 Index, out Guid pDecoderProfile) GetVideoDecoderProfile;
				public new function [CallingConvention(.Stdcall)] HRESULT(ref ID3D11VideoDevice self, in Guid pDecoderProfile, DXGI_FORMAT Format, out BOOL pSupported) CheckVideoDecoderFormat;
				public new function [CallingConvention(.Stdcall)] HRESULT(ref ID3D11VideoDevice self, in D3D11_VIDEO_DECODER_DESC pDesc, out uint32 pCount) GetVideoDecoderConfigCount;
				public new function [CallingConvention(.Stdcall)] HRESULT(ref ID3D11VideoDevice self, in D3D11_VIDEO_DECODER_DESC pDesc, uint32 Index, out D3D11_VIDEO_DECODER_CONFIG pConfig) GetVideoDecoderConfig;
				public new function [CallingConvention(.Stdcall)] HRESULT(ref ID3D11VideoDevice self, Guid* pCryptoType, Guid* pDecoderProfile, out D3D11_VIDEO_CONTENT_PROTECTION_CAPS pCaps) GetContentProtectionCaps;
				public new function [CallingConvention(.Stdcall)] HRESULT(ref ID3D11VideoDevice self, in Guid pCryptoType, Guid* pDecoderProfile, uint32 Index, out Guid pKeyExchangeType) CheckCryptoKeyExchange;
				public new function [CallingConvention(.Stdcall)] HRESULT(ref ID3D11VideoDevice self, in Guid guid, uint32 DataSize, void* pData) SetPrivateData;
				public new function [CallingConvention(.Stdcall)] HRESULT(ref ID3D11VideoDevice self, in Guid guid, IUnknown* pData) SetPrivateDataInterface;
			}
		}
		[CRepr]
		public struct ID3D11Device : IUnknown
		{
			public const new Guid IID = .(0xdb6f6ddb, 0xac77, 0x4e88, 0x82, 0x53, 0x81, 0x9d, 0xf9, 0xbb, 0xf1, 0x40);
			
			public new VTable* VT { get => (.)vt; }
			
			public HRESULT CreateBuffer(in D3D11_BUFFER_DESC pDesc, D3D11_SUBRESOURCE_DATA* pInitialData, ID3D11Buffer** ppBuffer) mut => VT.CreateBuffer(ref this, pDesc, pInitialData, ppBuffer);
			public HRESULT CreateTexture1D(in D3D11_TEXTURE1D_DESC pDesc, D3D11_SUBRESOURCE_DATA* pInitialData, ID3D11Texture1D** ppTexture1D) mut => VT.CreateTexture1D(ref this, pDesc, pInitialData, ppTexture1D);
			public HRESULT CreateTexture2D(in D3D11_TEXTURE2D_DESC pDesc, D3D11_SUBRESOURCE_DATA* pInitialData, ID3D11Texture2D** ppTexture2D) mut => VT.CreateTexture2D(ref this, pDesc, pInitialData, ppTexture2D);
			public HRESULT CreateTexture3D(in D3D11_TEXTURE3D_DESC pDesc, D3D11_SUBRESOURCE_DATA* pInitialData, ID3D11Texture3D** ppTexture3D) mut => VT.CreateTexture3D(ref this, pDesc, pInitialData, ppTexture3D);
			public HRESULT CreateShaderResourceView(ref ID3D11Resource pResource, D3D11_SHADER_RESOURCE_VIEW_DESC* pDesc, ID3D11ShaderResourceView** ppSRView) mut => VT.CreateShaderResourceView(ref this, ref pResource, pDesc, ppSRView);
			public HRESULT CreateUnorderedAccessView(ref ID3D11Resource pResource, D3D11_UNORDERED_ACCESS_VIEW_DESC* pDesc, ID3D11UnorderedAccessView** ppUAView) mut => VT.CreateUnorderedAccessView(ref this, ref pResource, pDesc, ppUAView);
			public HRESULT CreateRenderTargetView(ref ID3D11Resource pResource, D3D11_RENDER_TARGET_VIEW_DESC* pDesc, ID3D11RenderTargetView** ppRTView) mut => VT.CreateRenderTargetView(ref this, ref pResource, pDesc, ppRTView);
			public HRESULT CreateDepthStencilView(ref ID3D11Resource pResource, D3D11_DEPTH_STENCIL_VIEW_DESC* pDesc, ID3D11DepthStencilView** ppDepthStencilView) mut => VT.CreateDepthStencilView(ref this, ref pResource, pDesc, ppDepthStencilView);
			public HRESULT CreateInputLayout(D3D11_INPUT_ELEMENT_DESC* pInputElementDescs, uint32 NumElements, void* pShaderBytecodeWithInputSignature, uint BytecodeLength, ID3D11InputLayout** ppInputLayout) mut => VT.CreateInputLayout(ref this, pInputElementDescs, NumElements, pShaderBytecodeWithInputSignature, BytecodeLength, ppInputLayout);
			public HRESULT CreateVertexShader(void* pShaderBytecode, uint BytecodeLength, ID3D11ClassLinkage* pClassLinkage, ID3D11VertexShader** ppVertexShader) mut => VT.CreateVertexShader(ref this, pShaderBytecode, BytecodeLength, pClassLinkage, ppVertexShader);
			public HRESULT CreateGeometryShader(void* pShaderBytecode, uint BytecodeLength, ID3D11ClassLinkage* pClassLinkage, ID3D11GeometryShader** ppGeometryShader) mut => VT.CreateGeometryShader(ref this, pShaderBytecode, BytecodeLength, pClassLinkage, ppGeometryShader);
			public HRESULT CreateGeometryShaderWithStreamOutput(void* pShaderBytecode, uint BytecodeLength, D3D11_SO_DECLARATION_ENTRY* pSODeclaration, uint32 NumEntries, uint32* pBufferStrides, uint32 NumStrides, uint32 RasterizedStream, ID3D11ClassLinkage* pClassLinkage, ID3D11GeometryShader** ppGeometryShader) mut => VT.CreateGeometryShaderWithStreamOutput(ref this, pShaderBytecode, BytecodeLength, pSODeclaration, NumEntries, pBufferStrides, NumStrides, RasterizedStream, pClassLinkage, ppGeometryShader);
			public HRESULT CreatePixelShader(void* pShaderBytecode, uint BytecodeLength, ID3D11ClassLinkage* pClassLinkage, ID3D11PixelShader** ppPixelShader) mut => VT.CreatePixelShader(ref this, pShaderBytecode, BytecodeLength, pClassLinkage, ppPixelShader);
			public HRESULT CreateHullShader(void* pShaderBytecode, uint BytecodeLength, ID3D11ClassLinkage* pClassLinkage, ID3D11HullShader** ppHullShader) mut => VT.CreateHullShader(ref this, pShaderBytecode, BytecodeLength, pClassLinkage, ppHullShader);
			public HRESULT CreateDomainShader(void* pShaderBytecode, uint BytecodeLength, ID3D11ClassLinkage* pClassLinkage, ID3D11DomainShader** ppDomainShader) mut => VT.CreateDomainShader(ref this, pShaderBytecode, BytecodeLength, pClassLinkage, ppDomainShader);
			public HRESULT CreateComputeShader(void* pShaderBytecode, uint BytecodeLength, ID3D11ClassLinkage* pClassLinkage, ID3D11ComputeShader** ppComputeShader) mut => VT.CreateComputeShader(ref this, pShaderBytecode, BytecodeLength, pClassLinkage, ppComputeShader);
			public HRESULT CreateClassLinkage(out ID3D11ClassLinkage* ppLinkage) mut => VT.CreateClassLinkage(ref this, out ppLinkage);
			public HRESULT CreateBlendState(in D3D11_BLEND_DESC pBlendStateDesc, ID3D11BlendState** ppBlendState) mut => VT.CreateBlendState(ref this, pBlendStateDesc, ppBlendState);
			public HRESULT CreateDepthStencilState(in D3D11_DEPTH_STENCIL_DESC pDepthStencilDesc, ID3D11DepthStencilState** ppDepthStencilState) mut => VT.CreateDepthStencilState(ref this, pDepthStencilDesc, ppDepthStencilState);
			public HRESULT CreateRasterizerState(in D3D11_RASTERIZER_DESC pRasterizerDesc, ID3D11RasterizerState** ppRasterizerState) mut => VT.CreateRasterizerState(ref this, pRasterizerDesc, ppRasterizerState);
			public HRESULT CreateSamplerState(in D3D11_SAMPLER_DESC pSamplerDesc, ID3D11SamplerState** ppSamplerState) mut => VT.CreateSamplerState(ref this, pSamplerDesc, ppSamplerState);
			public HRESULT CreateQuery(in D3D11_QUERY_DESC pQueryDesc, ID3D11Query** ppQuery) mut => VT.CreateQuery(ref this, pQueryDesc, ppQuery);
			public HRESULT CreatePredicate(in D3D11_QUERY_DESC pPredicateDesc, ID3D11Predicate** ppPredicate) mut => VT.CreatePredicate(ref this, pPredicateDesc, ppPredicate);
			public HRESULT CreateCounter(in D3D11_COUNTER_DESC pCounterDesc, ID3D11Counter** ppCounter) mut => VT.CreateCounter(ref this, pCounterDesc, ppCounter);
			public HRESULT CreateDeferredContext(uint32 ContextFlags, ID3D11DeviceContext** ppDeferredContext) mut => VT.CreateDeferredContext(ref this, ContextFlags, ppDeferredContext);
			public HRESULT OpenSharedResource(HANDLE hResource, in Guid ReturnedInterface, void** ppResource) mut => VT.OpenSharedResource(ref this, hResource, ReturnedInterface, ppResource);
			public HRESULT CheckFormatSupport(DXGI_FORMAT Format, out uint32 pFormatSupport) mut => VT.CheckFormatSupport(ref this, Format, out pFormatSupport);
			public HRESULT CheckMultisampleQualityLevels(DXGI_FORMAT Format, uint32 SampleCount, out uint32 pNumQualityLevels) mut => VT.CheckMultisampleQualityLevels(ref this, Format, SampleCount, out pNumQualityLevels);
			public void CheckCounterInfo(out D3D11_COUNTER_INFO pCounterInfo) mut => VT.CheckCounterInfo(ref this, out pCounterInfo);
			public HRESULT CheckCounter(in D3D11_COUNTER_DESC pDesc, out D3D11_COUNTER_TYPE pType, out uint32 pActiveCounters, uint8* szName, uint32* pNameLength, uint8* szUnits, uint32* pUnitsLength, uint8* szDescription, uint32* pDescriptionLength) mut => VT.CheckCounter(ref this, pDesc, out pType, out pActiveCounters, szName, pNameLength, szUnits, pUnitsLength, szDescription, pDescriptionLength);
			public HRESULT CheckFeatureSupport(D3D11_FEATURE Feature, void* pFeatureSupportData, uint32 FeatureSupportDataSize) mut => VT.CheckFeatureSupport(ref this, Feature, pFeatureSupportData, FeatureSupportDataSize);
			public HRESULT GetPrivateData(in Guid guid, out uint32 pDataSize, void* pData) mut => VT.GetPrivateData(ref this, guid, out pDataSize, pData);
			public HRESULT SetPrivateData(in Guid guid, uint32 DataSize, void* pData) mut => VT.SetPrivateData(ref this, guid, DataSize, pData);
			public HRESULT SetPrivateDataInterface(in Guid guid, IUnknown* pData) mut => VT.SetPrivateDataInterface(ref this, guid, pData);
			public D3D_FEATURE_LEVEL GetFeatureLevel() mut => VT.GetFeatureLevel(ref this);
			public uint32 GetCreationFlags() mut => VT.GetCreationFlags(ref this);
			public HRESULT GetDeviceRemovedReason() mut => VT.GetDeviceRemovedReason(ref this);
			public void GetImmediateContext(out ID3D11DeviceContext* ppImmediateContext) mut => VT.GetImmediateContext(ref this, out ppImmediateContext);
			public HRESULT SetExceptionMode(uint32 RaiseFlags) mut => VT.SetExceptionMode(ref this, RaiseFlags);
			public uint32 GetExceptionMode() mut => VT.GetExceptionMode(ref this);

			[CRepr]
			public struct VTable : IUnknown.VTable
			{
				public new function [CallingConvention(.Stdcall)] HRESULT(ref ID3D11Device self, in D3D11_BUFFER_DESC pDesc, D3D11_SUBRESOURCE_DATA* pInitialData, ID3D11Buffer** ppBuffer) CreateBuffer;
				public new function [CallingConvention(.Stdcall)] HRESULT(ref ID3D11Device self, in D3D11_TEXTURE1D_DESC pDesc, D3D11_SUBRESOURCE_DATA* pInitialData, ID3D11Texture1D** ppTexture1D) CreateTexture1D;
				public new function [CallingConvention(.Stdcall)] HRESULT(ref ID3D11Device self, in D3D11_TEXTURE2D_DESC pDesc, D3D11_SUBRESOURCE_DATA* pInitialData, ID3D11Texture2D** ppTexture2D) CreateTexture2D;
				public new function [CallingConvention(.Stdcall)] HRESULT(ref ID3D11Device self, in D3D11_TEXTURE3D_DESC pDesc, D3D11_SUBRESOURCE_DATA* pInitialData, ID3D11Texture3D** ppTexture3D) CreateTexture3D;
				public new function [CallingConvention(.Stdcall)] HRESULT(ref ID3D11Device self, ref ID3D11Resource pResource, D3D11_SHADER_RESOURCE_VIEW_DESC* pDesc, ID3D11ShaderResourceView** ppSRView) CreateShaderResourceView;
				public new function [CallingConvention(.Stdcall)] HRESULT(ref ID3D11Device self, ref ID3D11Resource pResource, D3D11_UNORDERED_ACCESS_VIEW_DESC* pDesc, ID3D11UnorderedAccessView** ppUAView) CreateUnorderedAccessView;
				public new function [CallingConvention(.Stdcall)] HRESULT(ref ID3D11Device self, ref ID3D11Resource pResource, D3D11_RENDER_TARGET_VIEW_DESC* pDesc, ID3D11RenderTargetView** ppRTView) CreateRenderTargetView;
				public new function [CallingConvention(.Stdcall)] HRESULT(ref ID3D11Device self, ref ID3D11Resource pResource, D3D11_DEPTH_STENCIL_VIEW_DESC* pDesc, ID3D11DepthStencilView** ppDepthStencilView) CreateDepthStencilView;
				public new function [CallingConvention(.Stdcall)] HRESULT(ref ID3D11Device self, D3D11_INPUT_ELEMENT_DESC* pInputElementDescs, uint32 NumElements, void* pShaderBytecodeWithInputSignature, uint BytecodeLength, ID3D11InputLayout** ppInputLayout) CreateInputLayout;
				public new function [CallingConvention(.Stdcall)] HRESULT(ref ID3D11Device self, void* pShaderBytecode, uint BytecodeLength, ID3D11ClassLinkage* pClassLinkage, ID3D11VertexShader** ppVertexShader) CreateVertexShader;
				public new function [CallingConvention(.Stdcall)] HRESULT(ref ID3D11Device self, void* pShaderBytecode, uint BytecodeLength, ID3D11ClassLinkage* pClassLinkage, ID3D11GeometryShader** ppGeometryShader) CreateGeometryShader;
				public new function [CallingConvention(.Stdcall)] HRESULT(ref ID3D11Device self, void* pShaderBytecode, uint BytecodeLength, D3D11_SO_DECLARATION_ENTRY* pSODeclaration, uint32 NumEntries, uint32* pBufferStrides, uint32 NumStrides, uint32 RasterizedStream, ID3D11ClassLinkage* pClassLinkage, ID3D11GeometryShader** ppGeometryShader) CreateGeometryShaderWithStreamOutput;
				public new function [CallingConvention(.Stdcall)] HRESULT(ref ID3D11Device self, void* pShaderBytecode, uint BytecodeLength, ID3D11ClassLinkage* pClassLinkage, ID3D11PixelShader** ppPixelShader) CreatePixelShader;
				public new function [CallingConvention(.Stdcall)] HRESULT(ref ID3D11Device self, void* pShaderBytecode, uint BytecodeLength, ID3D11ClassLinkage* pClassLinkage, ID3D11HullShader** ppHullShader) CreateHullShader;
				public new function [CallingConvention(.Stdcall)] HRESULT(ref ID3D11Device self, void* pShaderBytecode, uint BytecodeLength, ID3D11ClassLinkage* pClassLinkage, ID3D11DomainShader** ppDomainShader) CreateDomainShader;
				public new function [CallingConvention(.Stdcall)] HRESULT(ref ID3D11Device self, void* pShaderBytecode, uint BytecodeLength, ID3D11ClassLinkage* pClassLinkage, ID3D11ComputeShader** ppComputeShader) CreateComputeShader;
				public new function [CallingConvention(.Stdcall)] HRESULT(ref ID3D11Device self, out ID3D11ClassLinkage* ppLinkage) CreateClassLinkage;
				public new function [CallingConvention(.Stdcall)] HRESULT(ref ID3D11Device self, in D3D11_BLEND_DESC pBlendStateDesc, ID3D11BlendState** ppBlendState) CreateBlendState;
				public new function [CallingConvention(.Stdcall)] HRESULT(ref ID3D11Device self, in D3D11_DEPTH_STENCIL_DESC pDepthStencilDesc, ID3D11DepthStencilState** ppDepthStencilState) CreateDepthStencilState;
				public new function [CallingConvention(.Stdcall)] HRESULT(ref ID3D11Device self, in D3D11_RASTERIZER_DESC pRasterizerDesc, ID3D11RasterizerState** ppRasterizerState) CreateRasterizerState;
				public new function [CallingConvention(.Stdcall)] HRESULT(ref ID3D11Device self, in D3D11_SAMPLER_DESC pSamplerDesc, ID3D11SamplerState** ppSamplerState) CreateSamplerState;
				public new function [CallingConvention(.Stdcall)] HRESULT(ref ID3D11Device self, in D3D11_QUERY_DESC pQueryDesc, ID3D11Query** ppQuery) CreateQuery;
				public new function [CallingConvention(.Stdcall)] HRESULT(ref ID3D11Device self, in D3D11_QUERY_DESC pPredicateDesc, ID3D11Predicate** ppPredicate) CreatePredicate;
				public new function [CallingConvention(.Stdcall)] HRESULT(ref ID3D11Device self, in D3D11_COUNTER_DESC pCounterDesc, ID3D11Counter** ppCounter) CreateCounter;
				public new function [CallingConvention(.Stdcall)] HRESULT(ref ID3D11Device self, uint32 ContextFlags, ID3D11DeviceContext** ppDeferredContext) CreateDeferredContext;
				public new function [CallingConvention(.Stdcall)] HRESULT(ref ID3D11Device self, HANDLE hResource, in Guid ReturnedInterface, void** ppResource) OpenSharedResource;
				public new function [CallingConvention(.Stdcall)] HRESULT(ref ID3D11Device self, DXGI_FORMAT Format, out uint32 pFormatSupport) CheckFormatSupport;
				public new function [CallingConvention(.Stdcall)] HRESULT(ref ID3D11Device self, DXGI_FORMAT Format, uint32 SampleCount, out uint32 pNumQualityLevels) CheckMultisampleQualityLevels;
				public new function [CallingConvention(.Stdcall)] void(ref ID3D11Device self, out D3D11_COUNTER_INFO pCounterInfo) CheckCounterInfo;
				public new function [CallingConvention(.Stdcall)] HRESULT(ref ID3D11Device self, in D3D11_COUNTER_DESC pDesc, out D3D11_COUNTER_TYPE pType, out uint32 pActiveCounters, uint8* szName, uint32* pNameLength, uint8* szUnits, uint32* pUnitsLength, uint8* szDescription, uint32* pDescriptionLength) CheckCounter;
				public new function [CallingConvention(.Stdcall)] HRESULT(ref ID3D11Device self, D3D11_FEATURE Feature, void* pFeatureSupportData, uint32 FeatureSupportDataSize) CheckFeatureSupport;
				public new function [CallingConvention(.Stdcall)] HRESULT(ref ID3D11Device self, in Guid guid, out uint32 pDataSize, void* pData) GetPrivateData;
				public new function [CallingConvention(.Stdcall)] HRESULT(ref ID3D11Device self, in Guid guid, uint32 DataSize, void* pData) SetPrivateData;
				public new function [CallingConvention(.Stdcall)] HRESULT(ref ID3D11Device self, in Guid guid, IUnknown* pData) SetPrivateDataInterface;
				public new function [CallingConvention(.Stdcall)] D3D_FEATURE_LEVEL(ref ID3D11Device self) GetFeatureLevel;
				public new function [CallingConvention(.Stdcall)] uint32(ref ID3D11Device self) GetCreationFlags;
				public new function [CallingConvention(.Stdcall)] HRESULT(ref ID3D11Device self) GetDeviceRemovedReason;
				public new function [CallingConvention(.Stdcall)] void(ref ID3D11Device self, out ID3D11DeviceContext* ppImmediateContext) GetImmediateContext;
				public new function [CallingConvention(.Stdcall)] HRESULT(ref ID3D11Device self, uint32 RaiseFlags) SetExceptionMode;
				public new function [CallingConvention(.Stdcall)] uint32(ref ID3D11Device self) GetExceptionMode;
			}
		}
		[CRepr]
		public struct ID3D11Debug : IUnknown
		{
			public const new Guid IID = .(0x79cf2233, 0x7536, 0x4948, 0x9d, 0x36, 0x1e, 0x46, 0x92, 0xdc, 0x57, 0x60);
			
			public new VTable* VT { get => (.)vt; }
			
			public HRESULT SetFeatureMask(uint32 Mask) mut => VT.SetFeatureMask(ref this, Mask);
			public uint32 GetFeatureMask() mut => VT.GetFeatureMask(ref this);
			public HRESULT SetPresentPerRenderOpDelay(uint32 Milliseconds) mut => VT.SetPresentPerRenderOpDelay(ref this, Milliseconds);
			public uint32 GetPresentPerRenderOpDelay() mut => VT.GetPresentPerRenderOpDelay(ref this);
			public HRESULT SetSwapChain(IDXGISwapChain* pSwapChain) mut => VT.SetSwapChain(ref this, pSwapChain);
			public HRESULT GetSwapChain(out IDXGISwapChain* ppSwapChain) mut => VT.GetSwapChain(ref this, out ppSwapChain);
			public HRESULT ValidateContext(ref ID3D11DeviceContext pContext) mut => VT.ValidateContext(ref this, ref pContext);
			public HRESULT ReportLiveDeviceObjects(D3D11_RLDO_FLAGS Flags) mut => VT.ReportLiveDeviceObjects(ref this, Flags);
			public HRESULT ValidateContextForDispatch(ref ID3D11DeviceContext pContext) mut => VT.ValidateContextForDispatch(ref this, ref pContext);

			[CRepr]
			public struct VTable : IUnknown.VTable
			{
				public new function [CallingConvention(.Stdcall)] HRESULT(ref ID3D11Debug self, uint32 Mask) SetFeatureMask;
				public new function [CallingConvention(.Stdcall)] uint32(ref ID3D11Debug self) GetFeatureMask;
				public new function [CallingConvention(.Stdcall)] HRESULT(ref ID3D11Debug self, uint32 Milliseconds) SetPresentPerRenderOpDelay;
				public new function [CallingConvention(.Stdcall)] uint32(ref ID3D11Debug self) GetPresentPerRenderOpDelay;
				public new function [CallingConvention(.Stdcall)] HRESULT(ref ID3D11Debug self, IDXGISwapChain* pSwapChain) SetSwapChain;
				public new function [CallingConvention(.Stdcall)] HRESULT(ref ID3D11Debug self, out IDXGISwapChain* ppSwapChain) GetSwapChain;
				public new function [CallingConvention(.Stdcall)] HRESULT(ref ID3D11Debug self, ref ID3D11DeviceContext pContext) ValidateContext;
				public new function [CallingConvention(.Stdcall)] HRESULT(ref ID3D11Debug self, D3D11_RLDO_FLAGS Flags) ReportLiveDeviceObjects;
				public new function [CallingConvention(.Stdcall)] HRESULT(ref ID3D11Debug self, ref ID3D11DeviceContext pContext) ValidateContextForDispatch;
			}
		}
		[CRepr]
		public struct ID3D11SwitchToRef : IUnknown
		{
			public const new Guid IID = .(0x1ef337e3, 0x58e7, 0x4f83, 0xa6, 0x92, 0xdb, 0x22, 0x1f, 0x5e, 0xd4, 0x7e);
			
			public new VTable* VT { get => (.)vt; }
			
			public BOOL SetUseRef(BOOL UseRef) mut => VT.SetUseRef(ref this, UseRef);
			public BOOL GetUseRef() mut => VT.GetUseRef(ref this);

			[CRepr]
			public struct VTable : IUnknown.VTable
			{
				public new function [CallingConvention(.Stdcall)] BOOL(ref ID3D11SwitchToRef self, BOOL UseRef) SetUseRef;
				public new function [CallingConvention(.Stdcall)] BOOL(ref ID3D11SwitchToRef self) GetUseRef;
			}
		}
		[CRepr]
		public struct ID3D11TracingDevice : IUnknown
		{
			public const new Guid IID = .(0x1911c771, 0x1587, 0x413e, 0xa7, 0xe0, 0xfb, 0x26, 0xc3, 0xde, 0x02, 0x68);
			
			public new VTable* VT { get => (.)vt; }
			
			public HRESULT SetShaderTrackingOptionsByType(uint32 ResourceTypeFlags, uint32 Options) mut => VT.SetShaderTrackingOptionsByType(ref this, ResourceTypeFlags, Options);
			public HRESULT SetShaderTrackingOptions(ref IUnknown pShader, uint32 Options) mut => VT.SetShaderTrackingOptions(ref this, ref pShader, Options);

			[CRepr]
			public struct VTable : IUnknown.VTable
			{
				public new function [CallingConvention(.Stdcall)] HRESULT(ref ID3D11TracingDevice self, uint32 ResourceTypeFlags, uint32 Options) SetShaderTrackingOptionsByType;
				public new function [CallingConvention(.Stdcall)] HRESULT(ref ID3D11TracingDevice self, ref IUnknown pShader, uint32 Options) SetShaderTrackingOptions;
			}
		}
		[CRepr]
		public struct ID3D11RefTrackingOptions : IUnknown
		{
			public const new Guid IID = .(0x193dacdf, 0x0db2, 0x4c05, 0xa5, 0x5c, 0xef, 0x06, 0xca, 0xc5, 0x6f, 0xd9);
			
			public new VTable* VT { get => (.)vt; }
			
			public HRESULT SetTrackingOptions(uint32 uOptions) mut => VT.SetTrackingOptions(ref this, uOptions);

			[CRepr]
			public struct VTable : IUnknown.VTable
			{
				public new function [CallingConvention(.Stdcall)] HRESULT(ref ID3D11RefTrackingOptions self, uint32 uOptions) SetTrackingOptions;
			}
		}
		[CRepr]
		public struct ID3D11RefDefaultTrackingOptions : IUnknown
		{
			public const new Guid IID = .(0x03916615, 0xc644, 0x418c, 0x9b, 0xf4, 0x75, 0xdb, 0x5b, 0xe6, 0x3c, 0xa0);
			
			public new VTable* VT { get => (.)vt; }
			
			public HRESULT SetTrackingOptions(uint32 ResourceTypeFlags, uint32 Options) mut => VT.SetTrackingOptions(ref this, ResourceTypeFlags, Options);

			[CRepr]
			public struct VTable : IUnknown.VTable
			{
				public new function [CallingConvention(.Stdcall)] HRESULT(ref ID3D11RefDefaultTrackingOptions self, uint32 ResourceTypeFlags, uint32 Options) SetTrackingOptions;
			}
		}
		[CRepr]
		public struct ID3D11InfoQueue : IUnknown
		{
			public const new Guid IID = .(0x6543dbb6, 0x1b48, 0x42f5, 0xab, 0x82, 0xe9, 0x7e, 0xc7, 0x43, 0x26, 0xf6);
			
			public new VTable* VT { get => (.)vt; }
			
			public HRESULT SetMessageCountLimit(uint64 MessageCountLimit) mut => VT.SetMessageCountLimit(ref this, MessageCountLimit);
			public void ClearStoredMessages() mut => VT.ClearStoredMessages(ref this);
			public HRESULT GetMessage(uint64 MessageIndex, D3D11_MESSAGE* pMessage, out uint pMessageByteLength) mut => VT.GetMessage(ref this, MessageIndex, pMessage, out pMessageByteLength);
			public uint64 GetNumMessagesAllowedByStorageFilter() mut => VT.GetNumMessagesAllowedByStorageFilter(ref this);
			public uint64 GetNumMessagesDeniedByStorageFilter() mut => VT.GetNumMessagesDeniedByStorageFilter(ref this);
			public uint64 GetNumStoredMessages() mut => VT.GetNumStoredMessages(ref this);
			public uint64 GetNumStoredMessagesAllowedByRetrievalFilter() mut => VT.GetNumStoredMessagesAllowedByRetrievalFilter(ref this);
			public uint64 GetNumMessagesDiscardedByMessageCountLimit() mut => VT.GetNumMessagesDiscardedByMessageCountLimit(ref this);
			public uint64 GetMessageCountLimit() mut => VT.GetMessageCountLimit(ref this);
			public HRESULT AddStorageFilterEntries(ref D3D11_INFO_QUEUE_FILTER pFilter) mut => VT.AddStorageFilterEntries(ref this, ref pFilter);
			public HRESULT GetStorageFilter(D3D11_INFO_QUEUE_FILTER* pFilter, out uint pFilterByteLength) mut => VT.GetStorageFilter(ref this, pFilter, out pFilterByteLength);
			public void ClearStorageFilter() mut => VT.ClearStorageFilter(ref this);
			public HRESULT PushEmptyStorageFilter() mut => VT.PushEmptyStorageFilter(ref this);
			public HRESULT PushCopyOfStorageFilter() mut => VT.PushCopyOfStorageFilter(ref this);
			public HRESULT PushStorageFilter(ref D3D11_INFO_QUEUE_FILTER pFilter) mut => VT.PushStorageFilter(ref this, ref pFilter);
			public void PopStorageFilter() mut => VT.PopStorageFilter(ref this);
			public uint32 GetStorageFilterStackSize() mut => VT.GetStorageFilterStackSize(ref this);
			public HRESULT AddRetrievalFilterEntries(ref D3D11_INFO_QUEUE_FILTER pFilter) mut => VT.AddRetrievalFilterEntries(ref this, ref pFilter);
			public HRESULT GetRetrievalFilter(D3D11_INFO_QUEUE_FILTER* pFilter, out uint pFilterByteLength) mut => VT.GetRetrievalFilter(ref this, pFilter, out pFilterByteLength);
			public void ClearRetrievalFilter() mut => VT.ClearRetrievalFilter(ref this);
			public HRESULT PushEmptyRetrievalFilter() mut => VT.PushEmptyRetrievalFilter(ref this);
			public HRESULT PushCopyOfRetrievalFilter() mut => VT.PushCopyOfRetrievalFilter(ref this);
			public HRESULT PushRetrievalFilter(ref D3D11_INFO_QUEUE_FILTER pFilter) mut => VT.PushRetrievalFilter(ref this, ref pFilter);
			public void PopRetrievalFilter() mut => VT.PopRetrievalFilter(ref this);
			public uint32 GetRetrievalFilterStackSize() mut => VT.GetRetrievalFilterStackSize(ref this);
			public HRESULT AddMessage(D3D11_MESSAGE_CATEGORY Category, D3D11_MESSAGE_SEVERITY Severity, D3D11_MESSAGE_ID ID, PSTR pDescription) mut => VT.AddMessage(ref this, Category, Severity, ID, pDescription);
			public HRESULT AddApplicationMessage(D3D11_MESSAGE_SEVERITY Severity, PSTR pDescription) mut => VT.AddApplicationMessage(ref this, Severity, pDescription);
			public HRESULT SetBreakOnCategory(D3D11_MESSAGE_CATEGORY Category, BOOL bEnable) mut => VT.SetBreakOnCategory(ref this, Category, bEnable);
			public HRESULT SetBreakOnSeverity(D3D11_MESSAGE_SEVERITY Severity, BOOL bEnable) mut => VT.SetBreakOnSeverity(ref this, Severity, bEnable);
			public HRESULT SetBreakOnID(D3D11_MESSAGE_ID ID, BOOL bEnable) mut => VT.SetBreakOnID(ref this, ID, bEnable);
			public BOOL GetBreakOnCategory(D3D11_MESSAGE_CATEGORY Category) mut => VT.GetBreakOnCategory(ref this, Category);
			public BOOL GetBreakOnSeverity(D3D11_MESSAGE_SEVERITY Severity) mut => VT.GetBreakOnSeverity(ref this, Severity);
			public BOOL GetBreakOnID(D3D11_MESSAGE_ID ID) mut => VT.GetBreakOnID(ref this, ID);
			public void SetMuteDebugOutput(BOOL bMute) mut => VT.SetMuteDebugOutput(ref this, bMute);
			public BOOL GetMuteDebugOutput() mut => VT.GetMuteDebugOutput(ref this);

			[CRepr]
			public struct VTable : IUnknown.VTable
			{
				public new function [CallingConvention(.Stdcall)] HRESULT(ref ID3D11InfoQueue self, uint64 MessageCountLimit) SetMessageCountLimit;
				public new function [CallingConvention(.Stdcall)] void(ref ID3D11InfoQueue self) ClearStoredMessages;
				public new function [CallingConvention(.Stdcall)] HRESULT(ref ID3D11InfoQueue self, uint64 MessageIndex, D3D11_MESSAGE* pMessage, out uint pMessageByteLength) GetMessage;
				public new function [CallingConvention(.Stdcall)] uint64(ref ID3D11InfoQueue self) GetNumMessagesAllowedByStorageFilter;
				public new function [CallingConvention(.Stdcall)] uint64(ref ID3D11InfoQueue self) GetNumMessagesDeniedByStorageFilter;
				public new function [CallingConvention(.Stdcall)] uint64(ref ID3D11InfoQueue self) GetNumStoredMessages;
				public new function [CallingConvention(.Stdcall)] uint64(ref ID3D11InfoQueue self) GetNumStoredMessagesAllowedByRetrievalFilter;
				public new function [CallingConvention(.Stdcall)] uint64(ref ID3D11InfoQueue self) GetNumMessagesDiscardedByMessageCountLimit;
				public new function [CallingConvention(.Stdcall)] uint64(ref ID3D11InfoQueue self) GetMessageCountLimit;
				public new function [CallingConvention(.Stdcall)] HRESULT(ref ID3D11InfoQueue self, ref D3D11_INFO_QUEUE_FILTER pFilter) AddStorageFilterEntries;
				public new function [CallingConvention(.Stdcall)] HRESULT(ref ID3D11InfoQueue self, D3D11_INFO_QUEUE_FILTER* pFilter, out uint pFilterByteLength) GetStorageFilter;
				public new function [CallingConvention(.Stdcall)] void(ref ID3D11InfoQueue self) ClearStorageFilter;
				public new function [CallingConvention(.Stdcall)] HRESULT(ref ID3D11InfoQueue self) PushEmptyStorageFilter;
				public new function [CallingConvention(.Stdcall)] HRESULT(ref ID3D11InfoQueue self) PushCopyOfStorageFilter;
				public new function [CallingConvention(.Stdcall)] HRESULT(ref ID3D11InfoQueue self, ref D3D11_INFO_QUEUE_FILTER pFilter) PushStorageFilter;
				public new function [CallingConvention(.Stdcall)] void(ref ID3D11InfoQueue self) PopStorageFilter;
				public new function [CallingConvention(.Stdcall)] uint32(ref ID3D11InfoQueue self) GetStorageFilterStackSize;
				public new function [CallingConvention(.Stdcall)] HRESULT(ref ID3D11InfoQueue self, ref D3D11_INFO_QUEUE_FILTER pFilter) AddRetrievalFilterEntries;
				public new function [CallingConvention(.Stdcall)] HRESULT(ref ID3D11InfoQueue self, D3D11_INFO_QUEUE_FILTER* pFilter, out uint pFilterByteLength) GetRetrievalFilter;
				public new function [CallingConvention(.Stdcall)] void(ref ID3D11InfoQueue self) ClearRetrievalFilter;
				public new function [CallingConvention(.Stdcall)] HRESULT(ref ID3D11InfoQueue self) PushEmptyRetrievalFilter;
				public new function [CallingConvention(.Stdcall)] HRESULT(ref ID3D11InfoQueue self) PushCopyOfRetrievalFilter;
				public new function [CallingConvention(.Stdcall)] HRESULT(ref ID3D11InfoQueue self, ref D3D11_INFO_QUEUE_FILTER pFilter) PushRetrievalFilter;
				public new function [CallingConvention(.Stdcall)] void(ref ID3D11InfoQueue self) PopRetrievalFilter;
				public new function [CallingConvention(.Stdcall)] uint32(ref ID3D11InfoQueue self) GetRetrievalFilterStackSize;
				public new function [CallingConvention(.Stdcall)] HRESULT(ref ID3D11InfoQueue self, D3D11_MESSAGE_CATEGORY Category, D3D11_MESSAGE_SEVERITY Severity, D3D11_MESSAGE_ID ID, PSTR pDescription) AddMessage;
				public new function [CallingConvention(.Stdcall)] HRESULT(ref ID3D11InfoQueue self, D3D11_MESSAGE_SEVERITY Severity, PSTR pDescription) AddApplicationMessage;
				public new function [CallingConvention(.Stdcall)] HRESULT(ref ID3D11InfoQueue self, D3D11_MESSAGE_CATEGORY Category, BOOL bEnable) SetBreakOnCategory;
				public new function [CallingConvention(.Stdcall)] HRESULT(ref ID3D11InfoQueue self, D3D11_MESSAGE_SEVERITY Severity, BOOL bEnable) SetBreakOnSeverity;
				public new function [CallingConvention(.Stdcall)] HRESULT(ref ID3D11InfoQueue self, D3D11_MESSAGE_ID ID, BOOL bEnable) SetBreakOnID;
				public new function [CallingConvention(.Stdcall)] BOOL(ref ID3D11InfoQueue self, D3D11_MESSAGE_CATEGORY Category) GetBreakOnCategory;
				public new function [CallingConvention(.Stdcall)] BOOL(ref ID3D11InfoQueue self, D3D11_MESSAGE_SEVERITY Severity) GetBreakOnSeverity;
				public new function [CallingConvention(.Stdcall)] BOOL(ref ID3D11InfoQueue self, D3D11_MESSAGE_ID ID) GetBreakOnID;
				public new function [CallingConvention(.Stdcall)] void(ref ID3D11InfoQueue self, BOOL bMute) SetMuteDebugOutput;
				public new function [CallingConvention(.Stdcall)] BOOL(ref ID3D11InfoQueue self) GetMuteDebugOutput;
			}
		}
		[CRepr]
		public struct ID3D11BlendState1 : ID3D11BlendState
		{
			public const new Guid IID = .(0xcc86fabe, 0xda55, 0x401d, 0x85, 0xe7, 0xe3, 0xc9, 0xde, 0x28, 0x77, 0xe9);
			
			public new VTable* VT { get => (.)vt; }
			
			public void GetDesc1(out D3D11_BLEND_DESC1 pDesc) mut => VT.GetDesc1(ref this, out pDesc);

			[CRepr]
			public struct VTable : ID3D11BlendState.VTable
			{
				public new function [CallingConvention(.Stdcall)] void(ref ID3D11BlendState1 self, out D3D11_BLEND_DESC1 pDesc) GetDesc1;
			}
		}
		[CRepr]
		public struct ID3D11RasterizerState1 : ID3D11RasterizerState
		{
			public const new Guid IID = .(0x1217d7a6, 0x5039, 0x418c, 0xb0, 0x42, 0x9c, 0xbe, 0x25, 0x6a, 0xfd, 0x6e);
			
			public new VTable* VT { get => (.)vt; }
			
			public void GetDesc1(out D3D11_RASTERIZER_DESC1 pDesc) mut => VT.GetDesc1(ref this, out pDesc);

			[CRepr]
			public struct VTable : ID3D11RasterizerState.VTable
			{
				public new function [CallingConvention(.Stdcall)] void(ref ID3D11RasterizerState1 self, out D3D11_RASTERIZER_DESC1 pDesc) GetDesc1;
			}
		}
		[CRepr]
		public struct ID3DDeviceContextState : ID3D11DeviceChild
		{
			public const new Guid IID = .(0x5c1e0d8a, 0x7c23, 0x48f9, 0x8c, 0x59, 0xa9, 0x29, 0x58, 0xce, 0xff, 0x11);
			
			public new VTable* VT { get => (.)vt; }
			
			[CRepr]
			public struct VTable : ID3D11DeviceChild.VTable {}
		}
		[CRepr]
		public struct ID3D11DeviceContext1 : ID3D11DeviceContext
		{
			public const new Guid IID = .(0xbb2c6faa, 0xb5fb, 0x4082, 0x8e, 0x6b, 0x38, 0x8b, 0x8c, 0xfa, 0x90, 0xe1);
			
			public new VTable* VT { get => (.)vt; }
			
			public void CopySubresourceRegion1(ref ID3D11Resource pDstResource, uint32 DstSubresource, uint32 DstX, uint32 DstY, uint32 DstZ, ref ID3D11Resource pSrcResource, uint32 SrcSubresource, D3D11_BOX* pSrcBox, uint32 CopyFlags) mut => VT.CopySubresourceRegion1(ref this, ref pDstResource, DstSubresource, DstX, DstY, DstZ, ref pSrcResource, SrcSubresource, pSrcBox, CopyFlags);
			public void UpdateSubresource1(ref ID3D11Resource pDstResource, uint32 DstSubresource, D3D11_BOX* pDstBox, void* pSrcData, uint32 SrcRowPitch, uint32 SrcDepthPitch, uint32 CopyFlags) mut => VT.UpdateSubresource1(ref this, ref pDstResource, DstSubresource, pDstBox, pSrcData, SrcRowPitch, SrcDepthPitch, CopyFlags);
			public void DiscardResource(ref ID3D11Resource pResource) mut => VT.DiscardResource(ref this, ref pResource);
			public void DiscardView(ref ID3D11View pResourceView) mut => VT.DiscardView(ref this, ref pResourceView);
			public void VSSetConstantBuffers1(uint32 StartSlot, uint32 NumBuffers, ID3D11Buffer** ppConstantBuffers, uint32* pFirstConstant, uint32* pNumConstants) mut => VT.VSSetConstantBuffers1(ref this, StartSlot, NumBuffers, ppConstantBuffers, pFirstConstant, pNumConstants);
			public void HSSetConstantBuffers1(uint32 StartSlot, uint32 NumBuffers, ID3D11Buffer** ppConstantBuffers, uint32* pFirstConstant, uint32* pNumConstants) mut => VT.HSSetConstantBuffers1(ref this, StartSlot, NumBuffers, ppConstantBuffers, pFirstConstant, pNumConstants);
			public void DSSetConstantBuffers1(uint32 StartSlot, uint32 NumBuffers, ID3D11Buffer** ppConstantBuffers, uint32* pFirstConstant, uint32* pNumConstants) mut => VT.DSSetConstantBuffers1(ref this, StartSlot, NumBuffers, ppConstantBuffers, pFirstConstant, pNumConstants);
			public void GSSetConstantBuffers1(uint32 StartSlot, uint32 NumBuffers, ID3D11Buffer** ppConstantBuffers, uint32* pFirstConstant, uint32* pNumConstants) mut => VT.GSSetConstantBuffers1(ref this, StartSlot, NumBuffers, ppConstantBuffers, pFirstConstant, pNumConstants);
			public void PSSetConstantBuffers1(uint32 StartSlot, uint32 NumBuffers, ID3D11Buffer** ppConstantBuffers, uint32* pFirstConstant, uint32* pNumConstants) mut => VT.PSSetConstantBuffers1(ref this, StartSlot, NumBuffers, ppConstantBuffers, pFirstConstant, pNumConstants);
			public void CSSetConstantBuffers1(uint32 StartSlot, uint32 NumBuffers, ID3D11Buffer** ppConstantBuffers, uint32* pFirstConstant, uint32* pNumConstants) mut => VT.CSSetConstantBuffers1(ref this, StartSlot, NumBuffers, ppConstantBuffers, pFirstConstant, pNumConstants);
			public void VSGetConstantBuffers1(uint32 StartSlot, uint32 NumBuffers, ID3D11Buffer** ppConstantBuffers, uint32* pFirstConstant, uint32* pNumConstants) mut => VT.VSGetConstantBuffers1(ref this, StartSlot, NumBuffers, ppConstantBuffers, pFirstConstant, pNumConstants);
			public void HSGetConstantBuffers1(uint32 StartSlot, uint32 NumBuffers, ID3D11Buffer** ppConstantBuffers, uint32* pFirstConstant, uint32* pNumConstants) mut => VT.HSGetConstantBuffers1(ref this, StartSlot, NumBuffers, ppConstantBuffers, pFirstConstant, pNumConstants);
			public void DSGetConstantBuffers1(uint32 StartSlot, uint32 NumBuffers, ID3D11Buffer** ppConstantBuffers, uint32* pFirstConstant, uint32* pNumConstants) mut => VT.DSGetConstantBuffers1(ref this, StartSlot, NumBuffers, ppConstantBuffers, pFirstConstant, pNumConstants);
			public void GSGetConstantBuffers1(uint32 StartSlot, uint32 NumBuffers, ID3D11Buffer** ppConstantBuffers, uint32* pFirstConstant, uint32* pNumConstants) mut => VT.GSGetConstantBuffers1(ref this, StartSlot, NumBuffers, ppConstantBuffers, pFirstConstant, pNumConstants);
			public void PSGetConstantBuffers1(uint32 StartSlot, uint32 NumBuffers, ID3D11Buffer** ppConstantBuffers, uint32* pFirstConstant, uint32* pNumConstants) mut => VT.PSGetConstantBuffers1(ref this, StartSlot, NumBuffers, ppConstantBuffers, pFirstConstant, pNumConstants);
			public void CSGetConstantBuffers1(uint32 StartSlot, uint32 NumBuffers, ID3D11Buffer** ppConstantBuffers, uint32* pFirstConstant, uint32* pNumConstants) mut => VT.CSGetConstantBuffers1(ref this, StartSlot, NumBuffers, ppConstantBuffers, pFirstConstant, pNumConstants);
			public void SwapDeviceContextState(ref ID3DDeviceContextState pState, ID3DDeviceContextState** ppPreviousState) mut => VT.SwapDeviceContextState(ref this, ref pState, ppPreviousState);
			public void ClearView(ref ID3D11View pView, in float Color, RECT* pRect, uint32 NumRects) mut => VT.ClearView(ref this, ref pView, Color, pRect, NumRects);
			public void DiscardView1(ref ID3D11View pResourceView, RECT* pRects, uint32 NumRects) mut => VT.DiscardView1(ref this, ref pResourceView, pRects, NumRects);

			[CRepr]
			public struct VTable : ID3D11DeviceContext.VTable
			{
				public new function [CallingConvention(.Stdcall)] void(ref ID3D11DeviceContext1 self, ref ID3D11Resource pDstResource, uint32 DstSubresource, uint32 DstX, uint32 DstY, uint32 DstZ, ref ID3D11Resource pSrcResource, uint32 SrcSubresource, D3D11_BOX* pSrcBox, uint32 CopyFlags) CopySubresourceRegion1;
				public new function [CallingConvention(.Stdcall)] void(ref ID3D11DeviceContext1 self, ref ID3D11Resource pDstResource, uint32 DstSubresource, D3D11_BOX* pDstBox, void* pSrcData, uint32 SrcRowPitch, uint32 SrcDepthPitch, uint32 CopyFlags) UpdateSubresource1;
				public new function [CallingConvention(.Stdcall)] void(ref ID3D11DeviceContext1 self, ref ID3D11Resource pResource) DiscardResource;
				public new function [CallingConvention(.Stdcall)] void(ref ID3D11DeviceContext1 self, ref ID3D11View pResourceView) DiscardView;
				public new function [CallingConvention(.Stdcall)] void(ref ID3D11DeviceContext1 self, uint32 StartSlot, uint32 NumBuffers, ID3D11Buffer** ppConstantBuffers, uint32* pFirstConstant, uint32* pNumConstants) VSSetConstantBuffers1;
				public new function [CallingConvention(.Stdcall)] void(ref ID3D11DeviceContext1 self, uint32 StartSlot, uint32 NumBuffers, ID3D11Buffer** ppConstantBuffers, uint32* pFirstConstant, uint32* pNumConstants) HSSetConstantBuffers1;
				public new function [CallingConvention(.Stdcall)] void(ref ID3D11DeviceContext1 self, uint32 StartSlot, uint32 NumBuffers, ID3D11Buffer** ppConstantBuffers, uint32* pFirstConstant, uint32* pNumConstants) DSSetConstantBuffers1;
				public new function [CallingConvention(.Stdcall)] void(ref ID3D11DeviceContext1 self, uint32 StartSlot, uint32 NumBuffers, ID3D11Buffer** ppConstantBuffers, uint32* pFirstConstant, uint32* pNumConstants) GSSetConstantBuffers1;
				public new function [CallingConvention(.Stdcall)] void(ref ID3D11DeviceContext1 self, uint32 StartSlot, uint32 NumBuffers, ID3D11Buffer** ppConstantBuffers, uint32* pFirstConstant, uint32* pNumConstants) PSSetConstantBuffers1;
				public new function [CallingConvention(.Stdcall)] void(ref ID3D11DeviceContext1 self, uint32 StartSlot, uint32 NumBuffers, ID3D11Buffer** ppConstantBuffers, uint32* pFirstConstant, uint32* pNumConstants) CSSetConstantBuffers1;
				public new function [CallingConvention(.Stdcall)] void(ref ID3D11DeviceContext1 self, uint32 StartSlot, uint32 NumBuffers, ID3D11Buffer** ppConstantBuffers, uint32* pFirstConstant, uint32* pNumConstants) VSGetConstantBuffers1;
				public new function [CallingConvention(.Stdcall)] void(ref ID3D11DeviceContext1 self, uint32 StartSlot, uint32 NumBuffers, ID3D11Buffer** ppConstantBuffers, uint32* pFirstConstant, uint32* pNumConstants) HSGetConstantBuffers1;
				public new function [CallingConvention(.Stdcall)] void(ref ID3D11DeviceContext1 self, uint32 StartSlot, uint32 NumBuffers, ID3D11Buffer** ppConstantBuffers, uint32* pFirstConstant, uint32* pNumConstants) DSGetConstantBuffers1;
				public new function [CallingConvention(.Stdcall)] void(ref ID3D11DeviceContext1 self, uint32 StartSlot, uint32 NumBuffers, ID3D11Buffer** ppConstantBuffers, uint32* pFirstConstant, uint32* pNumConstants) GSGetConstantBuffers1;
				public new function [CallingConvention(.Stdcall)] void(ref ID3D11DeviceContext1 self, uint32 StartSlot, uint32 NumBuffers, ID3D11Buffer** ppConstantBuffers, uint32* pFirstConstant, uint32* pNumConstants) PSGetConstantBuffers1;
				public new function [CallingConvention(.Stdcall)] void(ref ID3D11DeviceContext1 self, uint32 StartSlot, uint32 NumBuffers, ID3D11Buffer** ppConstantBuffers, uint32* pFirstConstant, uint32* pNumConstants) CSGetConstantBuffers1;
				public new function [CallingConvention(.Stdcall)] void(ref ID3D11DeviceContext1 self, ref ID3DDeviceContextState pState, ID3DDeviceContextState** ppPreviousState) SwapDeviceContextState;
				public new function [CallingConvention(.Stdcall)] void(ref ID3D11DeviceContext1 self, ref ID3D11View pView, in float Color, RECT* pRect, uint32 NumRects) ClearView;
				public new function [CallingConvention(.Stdcall)] void(ref ID3D11DeviceContext1 self, ref ID3D11View pResourceView, RECT* pRects, uint32 NumRects) DiscardView1;
			}
		}
		[CRepr]
		public struct ID3D11VideoContext1 : ID3D11VideoContext
		{
			public const new Guid IID = .(0xa7f026da, 0xa5f8, 0x4487, 0xa5, 0x64, 0x15, 0xe3, 0x43, 0x57, 0x65, 0x1e);
			
			public new VTable* VT { get => (.)vt; }
			
			public HRESULT SubmitDecoderBuffers1(ref ID3D11VideoDecoder pDecoder, uint32 NumBuffers, D3D11_VIDEO_DECODER_BUFFER_DESC1* pBufferDesc) mut => VT.SubmitDecoderBuffers1(ref this, ref pDecoder, NumBuffers, pBufferDesc);
			public HRESULT GetDataForNewHardwareKey(ref ID3D11CryptoSession pCryptoSession, uint32 PrivateInputSize, void* pPrivatInputData, out uint64 pPrivateOutputData) mut => VT.GetDataForNewHardwareKey(ref this, ref pCryptoSession, PrivateInputSize, pPrivatInputData, out pPrivateOutputData);
			public HRESULT CheckCryptoSessionStatus(ref ID3D11CryptoSession pCryptoSession, out D3D11_CRYPTO_SESSION_STATUS pStatus) mut => VT.CheckCryptoSessionStatus(ref this, ref pCryptoSession, out pStatus);
			public HRESULT DecoderEnableDownsampling(ref ID3D11VideoDecoder pDecoder, DXGI_COLOR_SPACE_TYPE InputColorSpace, in D3D11_VIDEO_SAMPLE_DESC pOutputDesc, uint32 ReferenceFrameCount) mut => VT.DecoderEnableDownsampling(ref this, ref pDecoder, InputColorSpace, pOutputDesc, ReferenceFrameCount);
			public HRESULT DecoderUpdateDownsampling(ref ID3D11VideoDecoder pDecoder, in D3D11_VIDEO_SAMPLE_DESC pOutputDesc) mut => VT.DecoderUpdateDownsampling(ref this, ref pDecoder, pOutputDesc);
			public void VideoProcessorSetOutputColorSpace1(ref ID3D11VideoProcessor pVideoProcessor, DXGI_COLOR_SPACE_TYPE ColorSpace) mut => VT.VideoProcessorSetOutputColorSpace1(ref this, ref pVideoProcessor, ColorSpace);
			public void VideoProcessorSetOutputShaderUsage(ref ID3D11VideoProcessor pVideoProcessor, BOOL ShaderUsage) mut => VT.VideoProcessorSetOutputShaderUsage(ref this, ref pVideoProcessor, ShaderUsage);
			public void VideoProcessorGetOutputColorSpace1(ref ID3D11VideoProcessor pVideoProcessor, out DXGI_COLOR_SPACE_TYPE pColorSpace) mut => VT.VideoProcessorGetOutputColorSpace1(ref this, ref pVideoProcessor, out pColorSpace);
			public void VideoProcessorGetOutputShaderUsage(ref ID3D11VideoProcessor pVideoProcessor, out BOOL pShaderUsage) mut => VT.VideoProcessorGetOutputShaderUsage(ref this, ref pVideoProcessor, out pShaderUsage);
			public void VideoProcessorSetStreamColorSpace1(ref ID3D11VideoProcessor pVideoProcessor, uint32 StreamIndex, DXGI_COLOR_SPACE_TYPE ColorSpace) mut => VT.VideoProcessorSetStreamColorSpace1(ref this, ref pVideoProcessor, StreamIndex, ColorSpace);
			public void VideoProcessorSetStreamMirror(ref ID3D11VideoProcessor pVideoProcessor, uint32 StreamIndex, BOOL Enable, BOOL FlipHorizontal, BOOL FlipVertical) mut => VT.VideoProcessorSetStreamMirror(ref this, ref pVideoProcessor, StreamIndex, Enable, FlipHorizontal, FlipVertical);
			public void VideoProcessorGetStreamColorSpace1(ref ID3D11VideoProcessor pVideoProcessor, uint32 StreamIndex, out DXGI_COLOR_SPACE_TYPE pColorSpace) mut => VT.VideoProcessorGetStreamColorSpace1(ref this, ref pVideoProcessor, StreamIndex, out pColorSpace);
			public void VideoProcessorGetStreamMirror(ref ID3D11VideoProcessor pVideoProcessor, uint32 StreamIndex, out BOOL pEnable, out BOOL pFlipHorizontal, out BOOL pFlipVertical) mut => VT.VideoProcessorGetStreamMirror(ref this, ref pVideoProcessor, StreamIndex, out pEnable, out pFlipHorizontal, out pFlipVertical);
			public HRESULT VideoProcessorGetBehaviorHints(ref ID3D11VideoProcessor pVideoProcessor, uint32 OutputWidth, uint32 OutputHeight, DXGI_FORMAT OutputFormat, uint32 StreamCount, D3D11_VIDEO_PROCESSOR_STREAM_BEHAVIOR_HINT* pStreams, out uint32 pBehaviorHints) mut => VT.VideoProcessorGetBehaviorHints(ref this, ref pVideoProcessor, OutputWidth, OutputHeight, OutputFormat, StreamCount, pStreams, out pBehaviorHints);

			[CRepr]
			public struct VTable : ID3D11VideoContext.VTable
			{
				public new function [CallingConvention(.Stdcall)] HRESULT(ref ID3D11VideoContext1 self, ref ID3D11VideoDecoder pDecoder, uint32 NumBuffers, D3D11_VIDEO_DECODER_BUFFER_DESC1* pBufferDesc) SubmitDecoderBuffers1;
				public new function [CallingConvention(.Stdcall)] HRESULT(ref ID3D11VideoContext1 self, ref ID3D11CryptoSession pCryptoSession, uint32 PrivateInputSize, void* pPrivatInputData, out uint64 pPrivateOutputData) GetDataForNewHardwareKey;
				public new function [CallingConvention(.Stdcall)] HRESULT(ref ID3D11VideoContext1 self, ref ID3D11CryptoSession pCryptoSession, out D3D11_CRYPTO_SESSION_STATUS pStatus) CheckCryptoSessionStatus;
				public new function [CallingConvention(.Stdcall)] HRESULT(ref ID3D11VideoContext1 self, ref ID3D11VideoDecoder pDecoder, DXGI_COLOR_SPACE_TYPE InputColorSpace, in D3D11_VIDEO_SAMPLE_DESC pOutputDesc, uint32 ReferenceFrameCount) DecoderEnableDownsampling;
				public new function [CallingConvention(.Stdcall)] HRESULT(ref ID3D11VideoContext1 self, ref ID3D11VideoDecoder pDecoder, in D3D11_VIDEO_SAMPLE_DESC pOutputDesc) DecoderUpdateDownsampling;
				public new function [CallingConvention(.Stdcall)] void(ref ID3D11VideoContext1 self, ref ID3D11VideoProcessor pVideoProcessor, DXGI_COLOR_SPACE_TYPE ColorSpace) VideoProcessorSetOutputColorSpace1;
				public new function [CallingConvention(.Stdcall)] void(ref ID3D11VideoContext1 self, ref ID3D11VideoProcessor pVideoProcessor, BOOL ShaderUsage) VideoProcessorSetOutputShaderUsage;
				public new function [CallingConvention(.Stdcall)] void(ref ID3D11VideoContext1 self, ref ID3D11VideoProcessor pVideoProcessor, out DXGI_COLOR_SPACE_TYPE pColorSpace) VideoProcessorGetOutputColorSpace1;
				public new function [CallingConvention(.Stdcall)] void(ref ID3D11VideoContext1 self, ref ID3D11VideoProcessor pVideoProcessor, out BOOL pShaderUsage) VideoProcessorGetOutputShaderUsage;
				public new function [CallingConvention(.Stdcall)] void(ref ID3D11VideoContext1 self, ref ID3D11VideoProcessor pVideoProcessor, uint32 StreamIndex, DXGI_COLOR_SPACE_TYPE ColorSpace) VideoProcessorSetStreamColorSpace1;
				public new function [CallingConvention(.Stdcall)] void(ref ID3D11VideoContext1 self, ref ID3D11VideoProcessor pVideoProcessor, uint32 StreamIndex, BOOL Enable, BOOL FlipHorizontal, BOOL FlipVertical) VideoProcessorSetStreamMirror;
				public new function [CallingConvention(.Stdcall)] void(ref ID3D11VideoContext1 self, ref ID3D11VideoProcessor pVideoProcessor, uint32 StreamIndex, out DXGI_COLOR_SPACE_TYPE pColorSpace) VideoProcessorGetStreamColorSpace1;
				public new function [CallingConvention(.Stdcall)] void(ref ID3D11VideoContext1 self, ref ID3D11VideoProcessor pVideoProcessor, uint32 StreamIndex, out BOOL pEnable, out BOOL pFlipHorizontal, out BOOL pFlipVertical) VideoProcessorGetStreamMirror;
				public new function [CallingConvention(.Stdcall)] HRESULT(ref ID3D11VideoContext1 self, ref ID3D11VideoProcessor pVideoProcessor, uint32 OutputWidth, uint32 OutputHeight, DXGI_FORMAT OutputFormat, uint32 StreamCount, D3D11_VIDEO_PROCESSOR_STREAM_BEHAVIOR_HINT* pStreams, out uint32 pBehaviorHints) VideoProcessorGetBehaviorHints;
			}
		}
		[CRepr]
		public struct ID3D11VideoDevice1 : ID3D11VideoDevice
		{
			public const new Guid IID = .(0x29da1d51, 0x1321, 0x4454, 0x80, 0x4b, 0xf5, 0xfc, 0x9f, 0x86, 0x1f, 0x0f);
			
			public new VTable* VT { get => (.)vt; }
			
			public HRESULT GetCryptoSessionPrivateDataSize(in Guid pCryptoType, Guid* pDecoderProfile, in Guid pKeyExchangeType, out uint32 pPrivateInputSize, out uint32 pPrivateOutputSize) mut => VT.GetCryptoSessionPrivateDataSize(ref this, pCryptoType, pDecoderProfile, pKeyExchangeType, out pPrivateInputSize, out pPrivateOutputSize);
			public HRESULT GetVideoDecoderCaps(in Guid pDecoderProfile, uint32 SampleWidth, uint32 SampleHeight, in DXGI_RATIONAL pFrameRate, uint32 BitRate, Guid* pCryptoType, out uint32 pDecoderCaps) mut => VT.GetVideoDecoderCaps(ref this, pDecoderProfile, SampleWidth, SampleHeight, pFrameRate, BitRate, pCryptoType, out pDecoderCaps);
			public HRESULT CheckVideoDecoderDownsampling(in D3D11_VIDEO_DECODER_DESC pInputDesc, DXGI_COLOR_SPACE_TYPE InputColorSpace, in D3D11_VIDEO_DECODER_CONFIG pInputConfig, in DXGI_RATIONAL pFrameRate, in D3D11_VIDEO_SAMPLE_DESC pOutputDesc, out BOOL pSupported, out BOOL pRealTimeHint) mut => VT.CheckVideoDecoderDownsampling(ref this, pInputDesc, InputColorSpace, pInputConfig, pFrameRate, pOutputDesc, out pSupported, out pRealTimeHint);
			public HRESULT RecommendVideoDecoderDownsampleParameters(in D3D11_VIDEO_DECODER_DESC pInputDesc, DXGI_COLOR_SPACE_TYPE InputColorSpace, in D3D11_VIDEO_DECODER_CONFIG pInputConfig, in DXGI_RATIONAL pFrameRate, out D3D11_VIDEO_SAMPLE_DESC pRecommendedOutputDesc) mut => VT.RecommendVideoDecoderDownsampleParameters(ref this, pInputDesc, InputColorSpace, pInputConfig, pFrameRate, out pRecommendedOutputDesc);

			[CRepr]
			public struct VTable : ID3D11VideoDevice.VTable
			{
				public new function [CallingConvention(.Stdcall)] HRESULT(ref ID3D11VideoDevice1 self, in Guid pCryptoType, Guid* pDecoderProfile, in Guid pKeyExchangeType, out uint32 pPrivateInputSize, out uint32 pPrivateOutputSize) GetCryptoSessionPrivateDataSize;
				public new function [CallingConvention(.Stdcall)] HRESULT(ref ID3D11VideoDevice1 self, in Guid pDecoderProfile, uint32 SampleWidth, uint32 SampleHeight, in DXGI_RATIONAL pFrameRate, uint32 BitRate, Guid* pCryptoType, out uint32 pDecoderCaps) GetVideoDecoderCaps;
				public new function [CallingConvention(.Stdcall)] HRESULT(ref ID3D11VideoDevice1 self, in D3D11_VIDEO_DECODER_DESC pInputDesc, DXGI_COLOR_SPACE_TYPE InputColorSpace, in D3D11_VIDEO_DECODER_CONFIG pInputConfig, in DXGI_RATIONAL pFrameRate, in D3D11_VIDEO_SAMPLE_DESC pOutputDesc, out BOOL pSupported, out BOOL pRealTimeHint) CheckVideoDecoderDownsampling;
				public new function [CallingConvention(.Stdcall)] HRESULT(ref ID3D11VideoDevice1 self, in D3D11_VIDEO_DECODER_DESC pInputDesc, DXGI_COLOR_SPACE_TYPE InputColorSpace, in D3D11_VIDEO_DECODER_CONFIG pInputConfig, in DXGI_RATIONAL pFrameRate, out D3D11_VIDEO_SAMPLE_DESC pRecommendedOutputDesc) RecommendVideoDecoderDownsampleParameters;
			}
		}
		[CRepr]
		public struct ID3D11VideoProcessorEnumerator1 : ID3D11VideoProcessorEnumerator
		{
			public const new Guid IID = .(0x465217f2, 0x5568, 0x43cf, 0xb5, 0xb9, 0xf6, 0x1d, 0x54, 0x53, 0x1c, 0xa1);
			
			public new VTable* VT { get => (.)vt; }
			
			public HRESULT CheckVideoProcessorFormatConversion(DXGI_FORMAT InputFormat, DXGI_COLOR_SPACE_TYPE InputColorSpace, DXGI_FORMAT OutputFormat, DXGI_COLOR_SPACE_TYPE OutputColorSpace, out BOOL pSupported) mut => VT.CheckVideoProcessorFormatConversion(ref this, InputFormat, InputColorSpace, OutputFormat, OutputColorSpace, out pSupported);

			[CRepr]
			public struct VTable : ID3D11VideoProcessorEnumerator.VTable
			{
				public new function [CallingConvention(.Stdcall)] HRESULT(ref ID3D11VideoProcessorEnumerator1 self, DXGI_FORMAT InputFormat, DXGI_COLOR_SPACE_TYPE InputColorSpace, DXGI_FORMAT OutputFormat, DXGI_COLOR_SPACE_TYPE OutputColorSpace, out BOOL pSupported) CheckVideoProcessorFormatConversion;
			}
		}
		[CRepr]
		public struct ID3D11Device1 : ID3D11Device
		{
			public const new Guid IID = .(0xa04bfb29, 0x08ef, 0x43d6, 0xa4, 0x9c, 0xa9, 0xbd, 0xbd, 0xcb, 0xe6, 0x86);
			
			public new VTable* VT { get => (.)vt; }
			
			public void GetImmediateContext1(out ID3D11DeviceContext1* ppImmediateContext) mut => VT.GetImmediateContext1(ref this, out ppImmediateContext);
			public HRESULT CreateDeferredContext1(uint32 ContextFlags, ID3D11DeviceContext1** ppDeferredContext) mut => VT.CreateDeferredContext1(ref this, ContextFlags, ppDeferredContext);
			public HRESULT CreateBlendState1(in D3D11_BLEND_DESC1 pBlendStateDesc, ID3D11BlendState1** ppBlendState) mut => VT.CreateBlendState1(ref this, pBlendStateDesc, ppBlendState);
			public HRESULT CreateRasterizerState1(in D3D11_RASTERIZER_DESC1 pRasterizerDesc, ID3D11RasterizerState1** ppRasterizerState) mut => VT.CreateRasterizerState1(ref this, pRasterizerDesc, ppRasterizerState);
			public HRESULT CreateDeviceContextState(uint32 Flags, D3D_FEATURE_LEVEL* pFeatureLevels, uint32 FeatureLevels, uint32 SDKVersion, in Guid EmulatedInterface, D3D_FEATURE_LEVEL* pChosenFeatureLevel, ID3DDeviceContextState** ppContextState) mut => VT.CreateDeviceContextState(ref this, Flags, pFeatureLevels, FeatureLevels, SDKVersion, EmulatedInterface, pChosenFeatureLevel, ppContextState);
			public HRESULT OpenSharedResource1(HANDLE hResource, in Guid returnedInterface, void** ppResource) mut => VT.OpenSharedResource1(ref this, hResource, returnedInterface, ppResource);
			public HRESULT OpenSharedResourceByName(PWSTR lpName, uint32 dwDesiredAccess, in Guid returnedInterface, void** ppResource) mut => VT.OpenSharedResourceByName(ref this, lpName, dwDesiredAccess, returnedInterface, ppResource);

			[CRepr]
			public struct VTable : ID3D11Device.VTable
			{
				public new function [CallingConvention(.Stdcall)] void(ref ID3D11Device1 self, out ID3D11DeviceContext1* ppImmediateContext) GetImmediateContext1;
				public new function [CallingConvention(.Stdcall)] HRESULT(ref ID3D11Device1 self, uint32 ContextFlags, ID3D11DeviceContext1** ppDeferredContext) CreateDeferredContext1;
				public new function [CallingConvention(.Stdcall)] HRESULT(ref ID3D11Device1 self, in D3D11_BLEND_DESC1 pBlendStateDesc, ID3D11BlendState1** ppBlendState) CreateBlendState1;
				public new function [CallingConvention(.Stdcall)] HRESULT(ref ID3D11Device1 self, in D3D11_RASTERIZER_DESC1 pRasterizerDesc, ID3D11RasterizerState1** ppRasterizerState) CreateRasterizerState1;
				public new function [CallingConvention(.Stdcall)] HRESULT(ref ID3D11Device1 self, uint32 Flags, D3D_FEATURE_LEVEL* pFeatureLevels, uint32 FeatureLevels, uint32 SDKVersion, in Guid EmulatedInterface, D3D_FEATURE_LEVEL* pChosenFeatureLevel, ID3DDeviceContextState** ppContextState) CreateDeviceContextState;
				public new function [CallingConvention(.Stdcall)] HRESULT(ref ID3D11Device1 self, HANDLE hResource, in Guid returnedInterface, void** ppResource) OpenSharedResource1;
				public new function [CallingConvention(.Stdcall)] HRESULT(ref ID3D11Device1 self, PWSTR lpName, uint32 dwDesiredAccess, in Guid returnedInterface, void** ppResource) OpenSharedResourceByName;
			}
		}
		[CRepr]
		public struct ID3DUserDefinedAnnotation : IUnknown
		{
			public const new Guid IID = .(0xb2daad8b, 0x03d4, 0x4dbf, 0x95, 0xeb, 0x32, 0xab, 0x4b, 0x63, 0xd0, 0xab);
			
			public new VTable* VT { get => (.)vt; }
			
			public int32 BeginEvent(PWSTR Name) mut => VT.BeginEvent(ref this, Name);
			public int32 EndEvent() mut => VT.EndEvent(ref this);
			public void SetMarker(PWSTR Name) mut => VT.SetMarker(ref this, Name);
			public BOOL GetStatus() mut => VT.GetStatus(ref this);

			[CRepr]
			public struct VTable : IUnknown.VTable
			{
				public new function [CallingConvention(.Stdcall)] int32(ref ID3DUserDefinedAnnotation self, PWSTR Name) BeginEvent;
				public new function [CallingConvention(.Stdcall)] int32(ref ID3DUserDefinedAnnotation self) EndEvent;
				public new function [CallingConvention(.Stdcall)] void(ref ID3DUserDefinedAnnotation self, PWSTR Name) SetMarker;
				public new function [CallingConvention(.Stdcall)] BOOL(ref ID3DUserDefinedAnnotation self) GetStatus;
			}
		}
		[CRepr]
		public struct ID3D11DeviceContext2 : ID3D11DeviceContext1
		{
			public const new Guid IID = .(0x420d5b32, 0xb90c, 0x4da4, 0xbe, 0xf0, 0x35, 0x9f, 0x6a, 0x24, 0xa8, 0x3a);
			
			public new VTable* VT { get => (.)vt; }
			
			public HRESULT UpdateTileMappings(ref ID3D11Resource pTiledResource, uint32 NumTiledResourceRegions, D3D11_TILED_RESOURCE_COORDINATE* pTiledResourceRegionStartCoordinates, D3D11_TILE_REGION_SIZE* pTiledResourceRegionSizes, ID3D11Buffer* pTilePool, uint32 NumRanges, uint32* pRangeFlags, uint32* pTilePoolStartOffsets, uint32* pRangeTileCounts, uint32 Flags) mut => VT.UpdateTileMappings(ref this, ref pTiledResource, NumTiledResourceRegions, pTiledResourceRegionStartCoordinates, pTiledResourceRegionSizes, pTilePool, NumRanges, pRangeFlags, pTilePoolStartOffsets, pRangeTileCounts, Flags);
			public HRESULT CopyTileMappings(ref ID3D11Resource pDestTiledResource, in D3D11_TILED_RESOURCE_COORDINATE pDestRegionStartCoordinate, ref ID3D11Resource pSourceTiledResource, in D3D11_TILED_RESOURCE_COORDINATE pSourceRegionStartCoordinate, in D3D11_TILE_REGION_SIZE pTileRegionSize, uint32 Flags) mut => VT.CopyTileMappings(ref this, ref pDestTiledResource, pDestRegionStartCoordinate, ref pSourceTiledResource, pSourceRegionStartCoordinate, pTileRegionSize, Flags);
			public void CopyTiles(ref ID3D11Resource pTiledResource, in D3D11_TILED_RESOURCE_COORDINATE pTileRegionStartCoordinate, in D3D11_TILE_REGION_SIZE pTileRegionSize, ref ID3D11Buffer pBuffer, uint64 BufferStartOffsetInBytes, uint32 Flags) mut => VT.CopyTiles(ref this, ref pTiledResource, pTileRegionStartCoordinate, pTileRegionSize, ref pBuffer, BufferStartOffsetInBytes, Flags);
			public void UpdateTiles(ref ID3D11Resource pDestTiledResource, in D3D11_TILED_RESOURCE_COORDINATE pDestTileRegionStartCoordinate, in D3D11_TILE_REGION_SIZE pDestTileRegionSize, void* pSourceTileData, uint32 Flags) mut => VT.UpdateTiles(ref this, ref pDestTiledResource, pDestTileRegionStartCoordinate, pDestTileRegionSize, pSourceTileData, Flags);
			public HRESULT ResizeTilePool(ref ID3D11Buffer pTilePool, uint64 NewSizeInBytes) mut => VT.ResizeTilePool(ref this, ref pTilePool, NewSizeInBytes);
			public void TiledResourceBarrier(ID3D11DeviceChild* pTiledResourceOrViewAccessBeforeBarrier, ID3D11DeviceChild* pTiledResourceOrViewAccessAfterBarrier) mut => VT.TiledResourceBarrier(ref this, pTiledResourceOrViewAccessBeforeBarrier, pTiledResourceOrViewAccessAfterBarrier);
			public BOOL IsAnnotationEnabled() mut => VT.IsAnnotationEnabled(ref this);
			public void SetMarkerInt(PWSTR pLabel, int32 Data) mut => VT.SetMarkerInt(ref this, pLabel, Data);
			public void BeginEventInt(PWSTR pLabel, int32 Data) mut => VT.BeginEventInt(ref this, pLabel, Data);
			public void EndEvent() mut => VT.EndEvent(ref this);

			[CRepr]
			public struct VTable : ID3D11DeviceContext1.VTable
			{
				public new function [CallingConvention(.Stdcall)] HRESULT(ref ID3D11DeviceContext2 self, ref ID3D11Resource pTiledResource, uint32 NumTiledResourceRegions, D3D11_TILED_RESOURCE_COORDINATE* pTiledResourceRegionStartCoordinates, D3D11_TILE_REGION_SIZE* pTiledResourceRegionSizes, ID3D11Buffer* pTilePool, uint32 NumRanges, uint32* pRangeFlags, uint32* pTilePoolStartOffsets, uint32* pRangeTileCounts, uint32 Flags) UpdateTileMappings;
				public new function [CallingConvention(.Stdcall)] HRESULT(ref ID3D11DeviceContext2 self, ref ID3D11Resource pDestTiledResource, in D3D11_TILED_RESOURCE_COORDINATE pDestRegionStartCoordinate, ref ID3D11Resource pSourceTiledResource, in D3D11_TILED_RESOURCE_COORDINATE pSourceRegionStartCoordinate, in D3D11_TILE_REGION_SIZE pTileRegionSize, uint32 Flags) CopyTileMappings;
				public new function [CallingConvention(.Stdcall)] void(ref ID3D11DeviceContext2 self, ref ID3D11Resource pTiledResource, in D3D11_TILED_RESOURCE_COORDINATE pTileRegionStartCoordinate, in D3D11_TILE_REGION_SIZE pTileRegionSize, ref ID3D11Buffer pBuffer, uint64 BufferStartOffsetInBytes, uint32 Flags) CopyTiles;
				public new function [CallingConvention(.Stdcall)] void(ref ID3D11DeviceContext2 self, ref ID3D11Resource pDestTiledResource, in D3D11_TILED_RESOURCE_COORDINATE pDestTileRegionStartCoordinate, in D3D11_TILE_REGION_SIZE pDestTileRegionSize, void* pSourceTileData, uint32 Flags) UpdateTiles;
				public new function [CallingConvention(.Stdcall)] HRESULT(ref ID3D11DeviceContext2 self, ref ID3D11Buffer pTilePool, uint64 NewSizeInBytes) ResizeTilePool;
				public new function [CallingConvention(.Stdcall)] void(ref ID3D11DeviceContext2 self, ID3D11DeviceChild* pTiledResourceOrViewAccessBeforeBarrier, ID3D11DeviceChild* pTiledResourceOrViewAccessAfterBarrier) TiledResourceBarrier;
				public new function [CallingConvention(.Stdcall)] BOOL(ref ID3D11DeviceContext2 self) IsAnnotationEnabled;
				public new function [CallingConvention(.Stdcall)] void(ref ID3D11DeviceContext2 self, PWSTR pLabel, int32 Data) SetMarkerInt;
				public new function [CallingConvention(.Stdcall)] void(ref ID3D11DeviceContext2 self, PWSTR pLabel, int32 Data) BeginEventInt;
				public new function [CallingConvention(.Stdcall)] void(ref ID3D11DeviceContext2 self) EndEvent;
			}
		}
		[CRepr]
		public struct ID3D11Device2 : ID3D11Device1
		{
			public const new Guid IID = .(0x9d06dffa, 0xd1e5, 0x4d07, 0x83, 0xa8, 0x1b, 0xb1, 0x23, 0xf2, 0xf8, 0x41);
			
			public new VTable* VT { get => (.)vt; }
			
			public void GetImmediateContext2(out ID3D11DeviceContext2* ppImmediateContext) mut => VT.GetImmediateContext2(ref this, out ppImmediateContext);
			public HRESULT CreateDeferredContext2(uint32 ContextFlags, ID3D11DeviceContext2** ppDeferredContext) mut => VT.CreateDeferredContext2(ref this, ContextFlags, ppDeferredContext);
			public void GetResourceTiling(ref ID3D11Resource pTiledResource, uint32* pNumTilesForEntireResource, D3D11_PACKED_MIP_DESC* pPackedMipDesc, D3D11_TILE_SHAPE* pStandardTileShapeForNonPackedMips, uint32* pNumSubresourceTilings, uint32 FirstSubresourceTilingToGet, D3D11_SUBRESOURCE_TILING* pSubresourceTilingsForNonPackedMips) mut => VT.GetResourceTiling(ref this, ref pTiledResource, pNumTilesForEntireResource, pPackedMipDesc, pStandardTileShapeForNonPackedMips, pNumSubresourceTilings, FirstSubresourceTilingToGet, pSubresourceTilingsForNonPackedMips);
			public HRESULT CheckMultisampleQualityLevels1(DXGI_FORMAT Format, uint32 SampleCount, uint32 Flags, out uint32 pNumQualityLevels) mut => VT.CheckMultisampleQualityLevels1(ref this, Format, SampleCount, Flags, out pNumQualityLevels);

			[CRepr]
			public struct VTable : ID3D11Device1.VTable
			{
				public new function [CallingConvention(.Stdcall)] void(ref ID3D11Device2 self, out ID3D11DeviceContext2* ppImmediateContext) GetImmediateContext2;
				public new function [CallingConvention(.Stdcall)] HRESULT(ref ID3D11Device2 self, uint32 ContextFlags, ID3D11DeviceContext2** ppDeferredContext) CreateDeferredContext2;
				public new function [CallingConvention(.Stdcall)] void(ref ID3D11Device2 self, ref ID3D11Resource pTiledResource, uint32* pNumTilesForEntireResource, D3D11_PACKED_MIP_DESC* pPackedMipDesc, D3D11_TILE_SHAPE* pStandardTileShapeForNonPackedMips, uint32* pNumSubresourceTilings, uint32 FirstSubresourceTilingToGet, D3D11_SUBRESOURCE_TILING* pSubresourceTilingsForNonPackedMips) GetResourceTiling;
				public new function [CallingConvention(.Stdcall)] HRESULT(ref ID3D11Device2 self, DXGI_FORMAT Format, uint32 SampleCount, uint32 Flags, out uint32 pNumQualityLevels) CheckMultisampleQualityLevels1;
			}
		}
		[CRepr]
		public struct ID3D11Texture2D1 : ID3D11Texture2D
		{
			public const new Guid IID = .(0x51218251, 0x1e33, 0x4617, 0x9c, 0xcb, 0x4d, 0x3a, 0x43, 0x67, 0xe7, 0xbb);
			
			public new VTable* VT { get => (.)vt; }
			
			public void GetDesc1(out D3D11_TEXTURE2D_DESC1 pDesc) mut => VT.GetDesc1(ref this, out pDesc);

			[CRepr]
			public struct VTable : ID3D11Texture2D.VTable
			{
				public new function [CallingConvention(.Stdcall)] void(ref ID3D11Texture2D1 self, out D3D11_TEXTURE2D_DESC1 pDesc) GetDesc1;
			}
		}
		[CRepr]
		public struct ID3D11Texture3D1 : ID3D11Texture3D
		{
			public const new Guid IID = .(0x0c711683, 0x2853, 0x4846, 0x9b, 0xb0, 0xf3, 0xe6, 0x06, 0x39, 0xe4, 0x6a);
			
			public new VTable* VT { get => (.)vt; }
			
			public void GetDesc1(out D3D11_TEXTURE3D_DESC1 pDesc) mut => VT.GetDesc1(ref this, out pDesc);

			[CRepr]
			public struct VTable : ID3D11Texture3D.VTable
			{
				public new function [CallingConvention(.Stdcall)] void(ref ID3D11Texture3D1 self, out D3D11_TEXTURE3D_DESC1 pDesc) GetDesc1;
			}
		}
		[CRepr]
		public struct ID3D11RasterizerState2 : ID3D11RasterizerState1
		{
			public const new Guid IID = .(0x6fbd02fb, 0x209f, 0x46c4, 0xb0, 0x59, 0x2e, 0xd1, 0x55, 0x86, 0xa6, 0xac);
			
			public new VTable* VT { get => (.)vt; }
			
			public void GetDesc2(out D3D11_RASTERIZER_DESC2 pDesc) mut => VT.GetDesc2(ref this, out pDesc);

			[CRepr]
			public struct VTable : ID3D11RasterizerState1.VTable
			{
				public new function [CallingConvention(.Stdcall)] void(ref ID3D11RasterizerState2 self, out D3D11_RASTERIZER_DESC2 pDesc) GetDesc2;
			}
		}
		[CRepr]
		public struct ID3D11ShaderResourceView1 : ID3D11ShaderResourceView
		{
			public const new Guid IID = .(0x91308b87, 0x9040, 0x411d, 0x8c, 0x67, 0xc3, 0x92, 0x53, 0xce, 0x38, 0x02);
			
			public new VTable* VT { get => (.)vt; }
			
			public void GetDesc1(out D3D11_SHADER_RESOURCE_VIEW_DESC1 pDesc1) mut => VT.GetDesc1(ref this, out pDesc1);

			[CRepr]
			public struct VTable : ID3D11ShaderResourceView.VTable
			{
				public new function [CallingConvention(.Stdcall)] void(ref ID3D11ShaderResourceView1 self, out D3D11_SHADER_RESOURCE_VIEW_DESC1 pDesc1) GetDesc1;
			}
		}
		[CRepr]
		public struct ID3D11RenderTargetView1 : ID3D11RenderTargetView
		{
			public const new Guid IID = .(0xffbe2e23, 0xf011, 0x418a, 0xac, 0x56, 0x5c, 0xee, 0xd7, 0xc5, 0xb9, 0x4b);
			
			public new VTable* VT { get => (.)vt; }
			
			public void GetDesc1(out D3D11_RENDER_TARGET_VIEW_DESC1 pDesc1) mut => VT.GetDesc1(ref this, out pDesc1);

			[CRepr]
			public struct VTable : ID3D11RenderTargetView.VTable
			{
				public new function [CallingConvention(.Stdcall)] void(ref ID3D11RenderTargetView1 self, out D3D11_RENDER_TARGET_VIEW_DESC1 pDesc1) GetDesc1;
			}
		}
		[CRepr]
		public struct ID3D11UnorderedAccessView1 : ID3D11UnorderedAccessView
		{
			public const new Guid IID = .(0x7b3b6153, 0xa886, 0x4544, 0xab, 0x37, 0x65, 0x37, 0xc8, 0x50, 0x04, 0x03);
			
			public new VTable* VT { get => (.)vt; }
			
			public void GetDesc1(out D3D11_UNORDERED_ACCESS_VIEW_DESC1 pDesc1) mut => VT.GetDesc1(ref this, out pDesc1);

			[CRepr]
			public struct VTable : ID3D11UnorderedAccessView.VTable
			{
				public new function [CallingConvention(.Stdcall)] void(ref ID3D11UnorderedAccessView1 self, out D3D11_UNORDERED_ACCESS_VIEW_DESC1 pDesc1) GetDesc1;
			}
		}
		[CRepr]
		public struct ID3D11Query1 : ID3D11Query
		{
			public const new Guid IID = .(0x631b4766, 0x36dc, 0x461d, 0x8d, 0xb6, 0xc4, 0x7e, 0x13, 0xe6, 0x09, 0x16);
			
			public new VTable* VT { get => (.)vt; }
			
			public void GetDesc1(out D3D11_QUERY_DESC1 pDesc1) mut => VT.GetDesc1(ref this, out pDesc1);

			[CRepr]
			public struct VTable : ID3D11Query.VTable
			{
				public new function [CallingConvention(.Stdcall)] void(ref ID3D11Query1 self, out D3D11_QUERY_DESC1 pDesc1) GetDesc1;
			}
		}
		[CRepr]
		public struct ID3D11DeviceContext3 : ID3D11DeviceContext2
		{
			public const new Guid IID = .(0xb4e3c01d, 0xe79e, 0x4637, 0x91, 0xb2, 0x51, 0x0e, 0x9f, 0x4c, 0x9b, 0x8f);
			
			public new VTable* VT { get => (.)vt; }
			
			public void Flush1(D3D11_CONTEXT_TYPE ContextType, HANDLE hEvent) mut => VT.Flush1(ref this, ContextType, hEvent);
			public void SetHardwareProtectionState(BOOL HwProtectionEnable) mut => VT.SetHardwareProtectionState(ref this, HwProtectionEnable);
			public void GetHardwareProtectionState(out BOOL pHwProtectionEnable) mut => VT.GetHardwareProtectionState(ref this, out pHwProtectionEnable);

			[CRepr]
			public struct VTable : ID3D11DeviceContext2.VTable
			{
				public new function [CallingConvention(.Stdcall)] void(ref ID3D11DeviceContext3 self, D3D11_CONTEXT_TYPE ContextType, HANDLE hEvent) Flush1;
				public new function [CallingConvention(.Stdcall)] void(ref ID3D11DeviceContext3 self, BOOL HwProtectionEnable) SetHardwareProtectionState;
				public new function [CallingConvention(.Stdcall)] void(ref ID3D11DeviceContext3 self, out BOOL pHwProtectionEnable) GetHardwareProtectionState;
			}
		}
		[CRepr]
		public struct ID3D11Fence : ID3D11DeviceChild
		{
			public const new Guid IID = .(0xaffde9d1, 0x1df7, 0x4bb7, 0x8a, 0x34, 0x0f, 0x46, 0x25, 0x1d, 0xab, 0x80);
			
			public new VTable* VT { get => (.)vt; }
			
			public HRESULT CreateSharedHandle(SECURITY_ATTRIBUTES* pAttributes, uint32 dwAccess, PWSTR lpName, out HANDLE pHandle) mut => VT.CreateSharedHandle(ref this, pAttributes, dwAccess, lpName, out pHandle);
			public uint64 GetCompletedValue() mut => VT.GetCompletedValue(ref this);
			public HRESULT SetEventOnCompletion(uint64 Value, HANDLE hEvent) mut => VT.SetEventOnCompletion(ref this, Value, hEvent);

			[CRepr]
			public struct VTable : ID3D11DeviceChild.VTable
			{
				public new function [CallingConvention(.Stdcall)] HRESULT(ref ID3D11Fence self, SECURITY_ATTRIBUTES* pAttributes, uint32 dwAccess, PWSTR lpName, out HANDLE pHandle) CreateSharedHandle;
				public new function [CallingConvention(.Stdcall)] uint64(ref ID3D11Fence self) GetCompletedValue;
				public new function [CallingConvention(.Stdcall)] HRESULT(ref ID3D11Fence self, uint64 Value, HANDLE hEvent) SetEventOnCompletion;
			}
		}
		[CRepr]
		public struct ID3D11DeviceContext4 : ID3D11DeviceContext3
		{
			public const new Guid IID = .(0x917600da, 0xf58c, 0x4c33, 0x98, 0xd8, 0x3e, 0x15, 0xb3, 0x90, 0xfa, 0x24);
			
			public new VTable* VT { get => (.)vt; }
			
			public HRESULT Signal(ref ID3D11Fence pFence, uint64 Value) mut => VT.Signal(ref this, ref pFence, Value);
			public HRESULT Wait(ref ID3D11Fence pFence, uint64 Value) mut => VT.Wait(ref this, ref pFence, Value);

			[CRepr]
			public struct VTable : ID3D11DeviceContext3.VTable
			{
				public new function [CallingConvention(.Stdcall)] HRESULT(ref ID3D11DeviceContext4 self, ref ID3D11Fence pFence, uint64 Value) Signal;
				public new function [CallingConvention(.Stdcall)] HRESULT(ref ID3D11DeviceContext4 self, ref ID3D11Fence pFence, uint64 Value) Wait;
			}
		}
		[CRepr]
		public struct ID3D11Device3 : ID3D11Device2
		{
			public const new Guid IID = .(0xa05c8c37, 0xd2c6, 0x4732, 0xb3, 0xa0, 0x9c, 0xe0, 0xb0, 0xdc, 0x9a, 0xe6);
			
			public new VTable* VT { get => (.)vt; }
			
			public HRESULT CreateTexture2D1(in D3D11_TEXTURE2D_DESC1 pDesc1, D3D11_SUBRESOURCE_DATA* pInitialData, ID3D11Texture2D1** ppTexture2D) mut => VT.CreateTexture2D1(ref this, pDesc1, pInitialData, ppTexture2D);
			public HRESULT CreateTexture3D1(in D3D11_TEXTURE3D_DESC1 pDesc1, D3D11_SUBRESOURCE_DATA* pInitialData, ID3D11Texture3D1** ppTexture3D) mut => VT.CreateTexture3D1(ref this, pDesc1, pInitialData, ppTexture3D);
			public HRESULT CreateRasterizerState2(in D3D11_RASTERIZER_DESC2 pRasterizerDesc, ID3D11RasterizerState2** ppRasterizerState) mut => VT.CreateRasterizerState2(ref this, pRasterizerDesc, ppRasterizerState);
			public HRESULT CreateShaderResourceView1(ref ID3D11Resource pResource, D3D11_SHADER_RESOURCE_VIEW_DESC1* pDesc1, ID3D11ShaderResourceView1** ppSRView1) mut => VT.CreateShaderResourceView1(ref this, ref pResource, pDesc1, ppSRView1);
			public HRESULT CreateUnorderedAccessView1(ref ID3D11Resource pResource, D3D11_UNORDERED_ACCESS_VIEW_DESC1* pDesc1, ID3D11UnorderedAccessView1** ppUAView1) mut => VT.CreateUnorderedAccessView1(ref this, ref pResource, pDesc1, ppUAView1);
			public HRESULT CreateRenderTargetView1(ref ID3D11Resource pResource, D3D11_RENDER_TARGET_VIEW_DESC1* pDesc1, ID3D11RenderTargetView1** ppRTView1) mut => VT.CreateRenderTargetView1(ref this, ref pResource, pDesc1, ppRTView1);
			public HRESULT CreateQuery1(in D3D11_QUERY_DESC1 pQueryDesc1, ID3D11Query1** ppQuery1) mut => VT.CreateQuery1(ref this, pQueryDesc1, ppQuery1);
			public void GetImmediateContext3(out ID3D11DeviceContext3* ppImmediateContext) mut => VT.GetImmediateContext3(ref this, out ppImmediateContext);
			public HRESULT CreateDeferredContext3(uint32 ContextFlags, ID3D11DeviceContext3** ppDeferredContext) mut => VT.CreateDeferredContext3(ref this, ContextFlags, ppDeferredContext);
			public void WriteToSubresource(ref ID3D11Resource pDstResource, uint32 DstSubresource, D3D11_BOX* pDstBox, void* pSrcData, uint32 SrcRowPitch, uint32 SrcDepthPitch) mut => VT.WriteToSubresource(ref this, ref pDstResource, DstSubresource, pDstBox, pSrcData, SrcRowPitch, SrcDepthPitch);
			public void ReadFromSubresource(void* pDstData, uint32 DstRowPitch, uint32 DstDepthPitch, ref ID3D11Resource pSrcResource, uint32 SrcSubresource, D3D11_BOX* pSrcBox) mut => VT.ReadFromSubresource(ref this, pDstData, DstRowPitch, DstDepthPitch, ref pSrcResource, SrcSubresource, pSrcBox);

			[CRepr]
			public struct VTable : ID3D11Device2.VTable
			{
				public new function [CallingConvention(.Stdcall)] HRESULT(ref ID3D11Device3 self, in D3D11_TEXTURE2D_DESC1 pDesc1, D3D11_SUBRESOURCE_DATA* pInitialData, ID3D11Texture2D1** ppTexture2D) CreateTexture2D1;
				public new function [CallingConvention(.Stdcall)] HRESULT(ref ID3D11Device3 self, in D3D11_TEXTURE3D_DESC1 pDesc1, D3D11_SUBRESOURCE_DATA* pInitialData, ID3D11Texture3D1** ppTexture3D) CreateTexture3D1;
				public new function [CallingConvention(.Stdcall)] HRESULT(ref ID3D11Device3 self, in D3D11_RASTERIZER_DESC2 pRasterizerDesc, ID3D11RasterizerState2** ppRasterizerState) CreateRasterizerState2;
				public new function [CallingConvention(.Stdcall)] HRESULT(ref ID3D11Device3 self, ref ID3D11Resource pResource, D3D11_SHADER_RESOURCE_VIEW_DESC1* pDesc1, ID3D11ShaderResourceView1** ppSRView1) CreateShaderResourceView1;
				public new function [CallingConvention(.Stdcall)] HRESULT(ref ID3D11Device3 self, ref ID3D11Resource pResource, D3D11_UNORDERED_ACCESS_VIEW_DESC1* pDesc1, ID3D11UnorderedAccessView1** ppUAView1) CreateUnorderedAccessView1;
				public new function [CallingConvention(.Stdcall)] HRESULT(ref ID3D11Device3 self, ref ID3D11Resource pResource, D3D11_RENDER_TARGET_VIEW_DESC1* pDesc1, ID3D11RenderTargetView1** ppRTView1) CreateRenderTargetView1;
				public new function [CallingConvention(.Stdcall)] HRESULT(ref ID3D11Device3 self, in D3D11_QUERY_DESC1 pQueryDesc1, ID3D11Query1** ppQuery1) CreateQuery1;
				public new function [CallingConvention(.Stdcall)] void(ref ID3D11Device3 self, out ID3D11DeviceContext3* ppImmediateContext) GetImmediateContext3;
				public new function [CallingConvention(.Stdcall)] HRESULT(ref ID3D11Device3 self, uint32 ContextFlags, ID3D11DeviceContext3** ppDeferredContext) CreateDeferredContext3;
				public new function [CallingConvention(.Stdcall)] void(ref ID3D11Device3 self, ref ID3D11Resource pDstResource, uint32 DstSubresource, D3D11_BOX* pDstBox, void* pSrcData, uint32 SrcRowPitch, uint32 SrcDepthPitch) WriteToSubresource;
				public new function [CallingConvention(.Stdcall)] void(ref ID3D11Device3 self, void* pDstData, uint32 DstRowPitch, uint32 DstDepthPitch, ref ID3D11Resource pSrcResource, uint32 SrcSubresource, D3D11_BOX* pSrcBox) ReadFromSubresource;
			}
		}
		[CRepr]
		public struct ID3D11Device4 : ID3D11Device3
		{
			public const new Guid IID = .(0x8992ab71, 0x02e6, 0x4b8d, 0xba, 0x48, 0xb0, 0x56, 0xdc, 0xda, 0x42, 0xc4);
			
			public new VTable* VT { get => (.)vt; }
			
			public HRESULT RegisterDeviceRemovedEvent(HANDLE hEvent, out uint32 pdwCookie) mut => VT.RegisterDeviceRemovedEvent(ref this, hEvent, out pdwCookie);
			public void UnregisterDeviceRemoved(uint32 dwCookie) mut => VT.UnregisterDeviceRemoved(ref this, dwCookie);

			[CRepr]
			public struct VTable : ID3D11Device3.VTable
			{
				public new function [CallingConvention(.Stdcall)] HRESULT(ref ID3D11Device4 self, HANDLE hEvent, out uint32 pdwCookie) RegisterDeviceRemovedEvent;
				public new function [CallingConvention(.Stdcall)] void(ref ID3D11Device4 self, uint32 dwCookie) UnregisterDeviceRemoved;
			}
		}
		[CRepr]
		public struct ID3D11Device5 : ID3D11Device4
		{
			public const new Guid IID = .(0x8ffde202, 0xa0e7, 0x45df, 0x9e, 0x01, 0xe8, 0x37, 0x80, 0x1b, 0x5e, 0xa0);
			
			public new VTable* VT { get => (.)vt; }
			
			public HRESULT OpenSharedFence(HANDLE hFence, in Guid ReturnedInterface, void** ppFence) mut => VT.OpenSharedFence(ref this, hFence, ReturnedInterface, ppFence);
			public HRESULT CreateFence(uint64 InitialValue, D3D11_FENCE_FLAG Flags, in Guid ReturnedInterface, void** ppFence) mut => VT.CreateFence(ref this, InitialValue, Flags, ReturnedInterface, ppFence);

			[CRepr]
			public struct VTable : ID3D11Device4.VTable
			{
				public new function [CallingConvention(.Stdcall)] HRESULT(ref ID3D11Device5 self, HANDLE hFence, in Guid ReturnedInterface, void** ppFence) OpenSharedFence;
				public new function [CallingConvention(.Stdcall)] HRESULT(ref ID3D11Device5 self, uint64 InitialValue, D3D11_FENCE_FLAG Flags, in Guid ReturnedInterface, void** ppFence) CreateFence;
			}
		}
		[CRepr]
		public struct ID3D11Multithread : IUnknown
		{
			public const new Guid IID = .(0x9b7e4e00, 0x342c, 0x4106, 0xa1, 0x9f, 0x4f, 0x27, 0x04, 0xf6, 0x89, 0xf0);
			
			public new VTable* VT { get => (.)vt; }
			
			public void Enter() mut => VT.Enter(ref this);
			public void Leave() mut => VT.Leave(ref this);
			public BOOL SetMultithreadProtected(BOOL bMTProtect) mut => VT.SetMultithreadProtected(ref this, bMTProtect);
			public BOOL GetMultithreadProtected() mut => VT.GetMultithreadProtected(ref this);

			[CRepr]
			public struct VTable : IUnknown.VTable
			{
				public new function [CallingConvention(.Stdcall)] void(ref ID3D11Multithread self) Enter;
				public new function [CallingConvention(.Stdcall)] void(ref ID3D11Multithread self) Leave;
				public new function [CallingConvention(.Stdcall)] BOOL(ref ID3D11Multithread self, BOOL bMTProtect) SetMultithreadProtected;
				public new function [CallingConvention(.Stdcall)] BOOL(ref ID3D11Multithread self) GetMultithreadProtected;
			}
		}
		[CRepr]
		public struct ID3D11VideoContext2 : ID3D11VideoContext1
		{
			public const new Guid IID = .(0xc4e7374c, 0x6243, 0x4d1b, 0xae, 0x87, 0x52, 0xb4, 0xf7, 0x40, 0xe2, 0x61);
			
			public new VTable* VT { get => (.)vt; }
			
			public void VideoProcessorSetOutputHDRMetaData(ref ID3D11VideoProcessor pVideoProcessor, DXGI_HDR_METADATA_TYPE Type, uint32 Size, void* pHDRMetaData) mut => VT.VideoProcessorSetOutputHDRMetaData(ref this, ref pVideoProcessor, Type, Size, pHDRMetaData);
			public void VideoProcessorGetOutputHDRMetaData(ref ID3D11VideoProcessor pVideoProcessor, out DXGI_HDR_METADATA_TYPE pType, uint32 Size, void* pMetaData) mut => VT.VideoProcessorGetOutputHDRMetaData(ref this, ref pVideoProcessor, out pType, Size, pMetaData);
			public void VideoProcessorSetStreamHDRMetaData(ref ID3D11VideoProcessor pVideoProcessor, uint32 StreamIndex, DXGI_HDR_METADATA_TYPE Type, uint32 Size, void* pHDRMetaData) mut => VT.VideoProcessorSetStreamHDRMetaData(ref this, ref pVideoProcessor, StreamIndex, Type, Size, pHDRMetaData);
			public void VideoProcessorGetStreamHDRMetaData(ref ID3D11VideoProcessor pVideoProcessor, uint32 StreamIndex, out DXGI_HDR_METADATA_TYPE pType, uint32 Size, void* pMetaData) mut => VT.VideoProcessorGetStreamHDRMetaData(ref this, ref pVideoProcessor, StreamIndex, out pType, Size, pMetaData);

			[CRepr]
			public struct VTable : ID3D11VideoContext1.VTable
			{
				public new function [CallingConvention(.Stdcall)] void(ref ID3D11VideoContext2 self, ref ID3D11VideoProcessor pVideoProcessor, DXGI_HDR_METADATA_TYPE Type, uint32 Size, void* pHDRMetaData) VideoProcessorSetOutputHDRMetaData;
				public new function [CallingConvention(.Stdcall)] void(ref ID3D11VideoContext2 self, ref ID3D11VideoProcessor pVideoProcessor, out DXGI_HDR_METADATA_TYPE pType, uint32 Size, void* pMetaData) VideoProcessorGetOutputHDRMetaData;
				public new function [CallingConvention(.Stdcall)] void(ref ID3D11VideoContext2 self, ref ID3D11VideoProcessor pVideoProcessor, uint32 StreamIndex, DXGI_HDR_METADATA_TYPE Type, uint32 Size, void* pHDRMetaData) VideoProcessorSetStreamHDRMetaData;
				public new function [CallingConvention(.Stdcall)] void(ref ID3D11VideoContext2 self, ref ID3D11VideoProcessor pVideoProcessor, uint32 StreamIndex, out DXGI_HDR_METADATA_TYPE pType, uint32 Size, void* pMetaData) VideoProcessorGetStreamHDRMetaData;
			}
		}
		[CRepr]
		public struct ID3D11VideoDevice2 : ID3D11VideoDevice1
		{
			public const new Guid IID = .(0x59c0cb01, 0x35f0, 0x4a70, 0x8f, 0x67, 0x87, 0x90, 0x5c, 0x90, 0x6a, 0x53);
			
			public new VTable* VT { get => (.)vt; }
			
			public HRESULT CheckFeatureSupport(D3D11_FEATURE_VIDEO Feature, void* pFeatureSupportData, uint32 FeatureSupportDataSize) mut => VT.CheckFeatureSupport(ref this, Feature, pFeatureSupportData, FeatureSupportDataSize);
			public HRESULT NegotiateCryptoSessionKeyExchangeMT(ref ID3D11CryptoSession pCryptoSession, D3D11_CRYPTO_SESSION_KEY_EXCHANGE_FLAGS flags, uint32 DataSize, void* pData) mut => VT.NegotiateCryptoSessionKeyExchangeMT(ref this, ref pCryptoSession, flags, DataSize, pData);

			[CRepr]
			public struct VTable : ID3D11VideoDevice1.VTable
			{
				public new function [CallingConvention(.Stdcall)] HRESULT(ref ID3D11VideoDevice2 self, D3D11_FEATURE_VIDEO Feature, void* pFeatureSupportData, uint32 FeatureSupportDataSize) CheckFeatureSupport;
				public new function [CallingConvention(.Stdcall)] HRESULT(ref ID3D11VideoDevice2 self, ref ID3D11CryptoSession pCryptoSession, D3D11_CRYPTO_SESSION_KEY_EXCHANGE_FLAGS flags, uint32 DataSize, void* pData) NegotiateCryptoSessionKeyExchangeMT;
			}
		}
		[CRepr]
		public struct ID3D11VideoContext3 : ID3D11VideoContext2
		{
			public const new Guid IID = .(0xa9e2faa0, 0xcb39, 0x418f, 0xa0, 0xb7, 0xd8, 0xaa, 0xd4, 0xde, 0x67, 0x2e);
			
			public new VTable* VT { get => (.)vt; }
			
			public HRESULT DecoderBeginFrame1(ref ID3D11VideoDecoder pDecoder, ref ID3D11VideoDecoderOutputView pView, uint32 ContentKeySize, void* pContentKey, uint32 NumComponentHistograms, uint32* pHistogramOffsets, ID3D11Buffer** ppHistogramBuffers) mut => VT.DecoderBeginFrame1(ref this, ref pDecoder, ref pView, ContentKeySize, pContentKey, NumComponentHistograms, pHistogramOffsets, ppHistogramBuffers);
			public HRESULT SubmitDecoderBuffers2(ref ID3D11VideoDecoder pDecoder, uint32 NumBuffers, D3D11_VIDEO_DECODER_BUFFER_DESC2* pBufferDesc) mut => VT.SubmitDecoderBuffers2(ref this, ref pDecoder, NumBuffers, pBufferDesc);

			[CRepr]
			public struct VTable : ID3D11VideoContext2.VTable
			{
				public new function [CallingConvention(.Stdcall)] HRESULT(ref ID3D11VideoContext3 self, ref ID3D11VideoDecoder pDecoder, ref ID3D11VideoDecoderOutputView pView, uint32 ContentKeySize, void* pContentKey, uint32 NumComponentHistograms, uint32* pHistogramOffsets, ID3D11Buffer** ppHistogramBuffers) DecoderBeginFrame1;
				public new function [CallingConvention(.Stdcall)] HRESULT(ref ID3D11VideoContext3 self, ref ID3D11VideoDecoder pDecoder, uint32 NumBuffers, D3D11_VIDEO_DECODER_BUFFER_DESC2* pBufferDesc) SubmitDecoderBuffers2;
			}
		}
		[CRepr]
		public struct ID3D11ShaderReflectionType
		{
			public const new Guid IID = .(0x6e6ffa6a, 0x9bae, 0x4613, 0xa5, 0x1e, 0x91, 0x65, 0x2d, 0x50, 0x8c, 0x21);
			
			protected VTable* vt;
			public new VTable* VT { get => (.)vt; }
			
			public HRESULT GetDesc(out D3D11_SHADER_TYPE_DESC pDesc) mut => VT.GetDesc(ref this, out pDesc);
			public ID3D11ShaderReflectionType* GetMemberTypeByIndex(uint32 Index) mut => VT.GetMemberTypeByIndex(ref this, Index);
			public ID3D11ShaderReflectionType* GetMemberTypeByName(PSTR Name) mut => VT.GetMemberTypeByName(ref this, Name);
			public PSTR GetMemberTypeName(uint32 Index) mut => VT.GetMemberTypeName(ref this, Index);
			public HRESULT IsEqual(ref ID3D11ShaderReflectionType pType) mut => VT.IsEqual(ref this, ref pType);
			public ID3D11ShaderReflectionType* GetSubType() mut => VT.GetSubType(ref this);
			public ID3D11ShaderReflectionType* GetBaseClass() mut => VT.GetBaseClass(ref this);
			public uint32 GetNumInterfaces() mut => VT.GetNumInterfaces(ref this);
			public ID3D11ShaderReflectionType* GetInterfaceByIndex(uint32 uIndex) mut => VT.GetInterfaceByIndex(ref this, uIndex);
			public HRESULT IsOfType(ref ID3D11ShaderReflectionType pType) mut => VT.IsOfType(ref this, ref pType);
			public HRESULT ImplementsInterface(ref ID3D11ShaderReflectionType pBase) mut => VT.ImplementsInterface(ref this, ref pBase);

			[CRepr]
			public struct VTable
			{
				public new function [CallingConvention(.Stdcall)] HRESULT(ref ID3D11ShaderReflectionType self, out D3D11_SHADER_TYPE_DESC pDesc) GetDesc;
				public new function [CallingConvention(.Stdcall)] ID3D11ShaderReflectionType*(ref ID3D11ShaderReflectionType self, uint32 Index) GetMemberTypeByIndex;
				public new function [CallingConvention(.Stdcall)] ID3D11ShaderReflectionType*(ref ID3D11ShaderReflectionType self, PSTR Name) GetMemberTypeByName;
				public new function [CallingConvention(.Stdcall)] PSTR(ref ID3D11ShaderReflectionType self, uint32 Index) GetMemberTypeName;
				public new function [CallingConvention(.Stdcall)] HRESULT(ref ID3D11ShaderReflectionType self, ref ID3D11ShaderReflectionType pType) IsEqual;
				public new function [CallingConvention(.Stdcall)] ID3D11ShaderReflectionType*(ref ID3D11ShaderReflectionType self) GetSubType;
				public new function [CallingConvention(.Stdcall)] ID3D11ShaderReflectionType*(ref ID3D11ShaderReflectionType self) GetBaseClass;
				public new function [CallingConvention(.Stdcall)] uint32(ref ID3D11ShaderReflectionType self) GetNumInterfaces;
				public new function [CallingConvention(.Stdcall)] ID3D11ShaderReflectionType*(ref ID3D11ShaderReflectionType self, uint32 uIndex) GetInterfaceByIndex;
				public new function [CallingConvention(.Stdcall)] HRESULT(ref ID3D11ShaderReflectionType self, ref ID3D11ShaderReflectionType pType) IsOfType;
				public new function [CallingConvention(.Stdcall)] HRESULT(ref ID3D11ShaderReflectionType self, ref ID3D11ShaderReflectionType pBase) ImplementsInterface;
			}
		}
		[CRepr]
		public struct ID3D11ShaderReflectionVariable
		{
			public const new Guid IID = .(0x51f23923, 0xf3e5, 0x4bd1, 0x91, 0xcb, 0x60, 0x61, 0x77, 0xd8, 0xdb, 0x4c);
			
			protected VTable* vt;
			public new VTable* VT { get => (.)vt; }
			
			public HRESULT GetDesc(out D3D11_SHADER_VARIABLE_DESC pDesc) mut => VT.GetDesc(ref this, out pDesc);
			public ID3D11ShaderReflectionType* ComGetType() mut => VT.ComGetType(ref this);
			public ID3D11ShaderReflectionConstantBuffer* GetBuffer() mut => VT.GetBuffer(ref this);
			public uint32 GetInterfaceSlot(uint32 uArrayIndex) mut => VT.GetInterfaceSlot(ref this, uArrayIndex);

			[CRepr]
			public struct VTable
			{
				public new function [CallingConvention(.Stdcall)] HRESULT(ref ID3D11ShaderReflectionVariable self, out D3D11_SHADER_VARIABLE_DESC pDesc) GetDesc;
				public new function [CallingConvention(.Stdcall)] ID3D11ShaderReflectionType*(ref ID3D11ShaderReflectionVariable self) ComGetType;
				public new function [CallingConvention(.Stdcall)] ID3D11ShaderReflectionConstantBuffer*(ref ID3D11ShaderReflectionVariable self) GetBuffer;
				public new function [CallingConvention(.Stdcall)] uint32(ref ID3D11ShaderReflectionVariable self, uint32 uArrayIndex) GetInterfaceSlot;
			}
		}
		[CRepr]
		public struct ID3D11ShaderReflectionConstantBuffer
		{
			public const new Guid IID = .(0xeb62d63d, 0x93dd, 0x4318, 0x8a, 0xe8, 0xc6, 0xf8, 0x3a, 0xd3, 0x71, 0xb8);
			
			protected VTable* vt;
			public new VTable* VT { get => (.)vt; }
			
			public HRESULT GetDesc(out D3D11_SHADER_BUFFER_DESC pDesc) mut => VT.GetDesc(ref this, out pDesc);
			public ID3D11ShaderReflectionVariable* GetVariableByIndex(uint32 Index) mut => VT.GetVariableByIndex(ref this, Index);
			public ID3D11ShaderReflectionVariable* GetVariableByName(PSTR Name) mut => VT.GetVariableByName(ref this, Name);

			[CRepr]
			public struct VTable
			{
				public new function [CallingConvention(.Stdcall)] HRESULT(ref ID3D11ShaderReflectionConstantBuffer self, out D3D11_SHADER_BUFFER_DESC pDesc) GetDesc;
				public new function [CallingConvention(.Stdcall)] ID3D11ShaderReflectionVariable*(ref ID3D11ShaderReflectionConstantBuffer self, uint32 Index) GetVariableByIndex;
				public new function [CallingConvention(.Stdcall)] ID3D11ShaderReflectionVariable*(ref ID3D11ShaderReflectionConstantBuffer self, PSTR Name) GetVariableByName;
			}
		}
		[CRepr]
		public struct ID3D11ShaderReflection : IUnknown
		{
			public const new Guid IID = .(0x8d536ca1, 0x0cca, 0x4956, 0xa8, 0x37, 0x78, 0x69, 0x63, 0x75, 0x55, 0x84);
			
			public new VTable* VT { get => (.)vt; }
			
			public HRESULT GetDesc(out D3D11_SHADER_DESC pDesc) mut => VT.GetDesc(ref this, out pDesc);
			public ID3D11ShaderReflectionConstantBuffer* GetConstantBufferByIndex(uint32 Index) mut => VT.GetConstantBufferByIndex(ref this, Index);
			public ID3D11ShaderReflectionConstantBuffer* GetConstantBufferByName(PSTR Name) mut => VT.GetConstantBufferByName(ref this, Name);
			public HRESULT GetResourceBindingDesc(uint32 ResourceIndex, out D3D11_SHADER_INPUT_BIND_DESC pDesc) mut => VT.GetResourceBindingDesc(ref this, ResourceIndex, out pDesc);
			public HRESULT GetInputParameterDesc(uint32 ParameterIndex, out D3D11_SIGNATURE_PARAMETER_DESC pDesc) mut => VT.GetInputParameterDesc(ref this, ParameterIndex, out pDesc);
			public HRESULT GetOutputParameterDesc(uint32 ParameterIndex, out D3D11_SIGNATURE_PARAMETER_DESC pDesc) mut => VT.GetOutputParameterDesc(ref this, ParameterIndex, out pDesc);
			public HRESULT GetPatchConstantParameterDesc(uint32 ParameterIndex, out D3D11_SIGNATURE_PARAMETER_DESC pDesc) mut => VT.GetPatchConstantParameterDesc(ref this, ParameterIndex, out pDesc);
			public ID3D11ShaderReflectionVariable* GetVariableByName(PSTR Name) mut => VT.GetVariableByName(ref this, Name);
			public HRESULT GetResourceBindingDescByName(PSTR Name, out D3D11_SHADER_INPUT_BIND_DESC pDesc) mut => VT.GetResourceBindingDescByName(ref this, Name, out pDesc);
			public uint32 GetMovInstructionCount() mut => VT.GetMovInstructionCount(ref this);
			public uint32 GetMovcInstructionCount() mut => VT.GetMovcInstructionCount(ref this);
			public uint32 GetConversionInstructionCount() mut => VT.GetConversionInstructionCount(ref this);
			public uint32 GetBitwiseInstructionCount() mut => VT.GetBitwiseInstructionCount(ref this);
			public D3D_PRIMITIVE GetGSInputPrimitive() mut => VT.GetGSInputPrimitive(ref this);
			public BOOL IsSampleFrequencyShader() mut => VT.IsSampleFrequencyShader(ref this);
			public uint32 GetNumInterfaceSlots() mut => VT.GetNumInterfaceSlots(ref this);
			public HRESULT GetMinFeatureLevel(out D3D_FEATURE_LEVEL pLevel) mut => VT.GetMinFeatureLevel(ref this, out pLevel);
			public uint32 GetThreadGroupSize(uint32* pSizeX, uint32* pSizeY, uint32* pSizeZ) mut => VT.GetThreadGroupSize(ref this, pSizeX, pSizeY, pSizeZ);
			public uint64 GetRequiresFlags() mut => VT.GetRequiresFlags(ref this);

			[CRepr]
			public struct VTable : IUnknown.VTable
			{
				public new function [CallingConvention(.Stdcall)] HRESULT(ref ID3D11ShaderReflection self, out D3D11_SHADER_DESC pDesc) GetDesc;
				public new function [CallingConvention(.Stdcall)] ID3D11ShaderReflectionConstantBuffer*(ref ID3D11ShaderReflection self, uint32 Index) GetConstantBufferByIndex;
				public new function [CallingConvention(.Stdcall)] ID3D11ShaderReflectionConstantBuffer*(ref ID3D11ShaderReflection self, PSTR Name) GetConstantBufferByName;
				public new function [CallingConvention(.Stdcall)] HRESULT(ref ID3D11ShaderReflection self, uint32 ResourceIndex, out D3D11_SHADER_INPUT_BIND_DESC pDesc) GetResourceBindingDesc;
				public new function [CallingConvention(.Stdcall)] HRESULT(ref ID3D11ShaderReflection self, uint32 ParameterIndex, out D3D11_SIGNATURE_PARAMETER_DESC pDesc) GetInputParameterDesc;
				public new function [CallingConvention(.Stdcall)] HRESULT(ref ID3D11ShaderReflection self, uint32 ParameterIndex, out D3D11_SIGNATURE_PARAMETER_DESC pDesc) GetOutputParameterDesc;
				public new function [CallingConvention(.Stdcall)] HRESULT(ref ID3D11ShaderReflection self, uint32 ParameterIndex, out D3D11_SIGNATURE_PARAMETER_DESC pDesc) GetPatchConstantParameterDesc;
				public new function [CallingConvention(.Stdcall)] ID3D11ShaderReflectionVariable*(ref ID3D11ShaderReflection self, PSTR Name) GetVariableByName;
				public new function [CallingConvention(.Stdcall)] HRESULT(ref ID3D11ShaderReflection self, PSTR Name, out D3D11_SHADER_INPUT_BIND_DESC pDesc) GetResourceBindingDescByName;
				public new function [CallingConvention(.Stdcall)] uint32(ref ID3D11ShaderReflection self) GetMovInstructionCount;
				public new function [CallingConvention(.Stdcall)] uint32(ref ID3D11ShaderReflection self) GetMovcInstructionCount;
				public new function [CallingConvention(.Stdcall)] uint32(ref ID3D11ShaderReflection self) GetConversionInstructionCount;
				public new function [CallingConvention(.Stdcall)] uint32(ref ID3D11ShaderReflection self) GetBitwiseInstructionCount;
				public new function [CallingConvention(.Stdcall)] D3D_PRIMITIVE(ref ID3D11ShaderReflection self) GetGSInputPrimitive;
				public new function [CallingConvention(.Stdcall)] BOOL(ref ID3D11ShaderReflection self) IsSampleFrequencyShader;
				public new function [CallingConvention(.Stdcall)] uint32(ref ID3D11ShaderReflection self) GetNumInterfaceSlots;
				public new function [CallingConvention(.Stdcall)] HRESULT(ref ID3D11ShaderReflection self, out D3D_FEATURE_LEVEL pLevel) GetMinFeatureLevel;
				public new function [CallingConvention(.Stdcall)] uint32(ref ID3D11ShaderReflection self, uint32* pSizeX, uint32* pSizeY, uint32* pSizeZ) GetThreadGroupSize;
				public new function [CallingConvention(.Stdcall)] uint64(ref ID3D11ShaderReflection self) GetRequiresFlags;
			}
		}
		[CRepr]
		public struct ID3D11LibraryReflection : IUnknown
		{
			public const new Guid IID = .(0x54384f1b, 0x5b3e, 0x4bb7, 0xae, 0x01, 0x60, 0xba, 0x30, 0x97, 0xcb, 0xb6);
			
			public new VTable* VT { get => (.)vt; }
			
			public HRESULT GetDesc(out D3D11_LIBRARY_DESC pDesc) mut => VT.GetDesc(ref this, out pDesc);
			public ID3D11FunctionReflection* GetFunctionByIndex(int32 FunctionIndex) mut => VT.GetFunctionByIndex(ref this, FunctionIndex);

			[CRepr]
			public struct VTable : IUnknown.VTable
			{
				public new function [CallingConvention(.Stdcall)] HRESULT(ref ID3D11LibraryReflection self, out D3D11_LIBRARY_DESC pDesc) GetDesc;
				public new function [CallingConvention(.Stdcall)] ID3D11FunctionReflection*(ref ID3D11LibraryReflection self, int32 FunctionIndex) GetFunctionByIndex;
			}
		}
		[CRepr]
		public struct ID3D11FunctionReflection
		{
			public const new Guid IID = .(0x207bcecb, 0xd683, 0x4a06, 0xa8, 0xa3, 0x9b, 0x14, 0x9b, 0x9f, 0x73, 0xa4);
			
			protected VTable* vt;
			public new VTable* VT { get => (.)vt; }
			
			public HRESULT GetDesc(out D3D11_FUNCTION_DESC pDesc) mut => VT.GetDesc(ref this, out pDesc);
			public ID3D11ShaderReflectionConstantBuffer* GetConstantBufferByIndex(uint32 BufferIndex) mut => VT.GetConstantBufferByIndex(ref this, BufferIndex);
			public ID3D11ShaderReflectionConstantBuffer* GetConstantBufferByName(PSTR Name) mut => VT.GetConstantBufferByName(ref this, Name);
			public HRESULT GetResourceBindingDesc(uint32 ResourceIndex, out D3D11_SHADER_INPUT_BIND_DESC pDesc) mut => VT.GetResourceBindingDesc(ref this, ResourceIndex, out pDesc);
			public ID3D11ShaderReflectionVariable* GetVariableByName(PSTR Name) mut => VT.GetVariableByName(ref this, Name);
			public HRESULT GetResourceBindingDescByName(PSTR Name, out D3D11_SHADER_INPUT_BIND_DESC pDesc) mut => VT.GetResourceBindingDescByName(ref this, Name, out pDesc);
			public ID3D11FunctionParameterReflection* GetFunctionParameter(int32 ParameterIndex) mut => VT.GetFunctionParameter(ref this, ParameterIndex);

			[CRepr]
			public struct VTable
			{
				public new function [CallingConvention(.Stdcall)] HRESULT(ref ID3D11FunctionReflection self, out D3D11_FUNCTION_DESC pDesc) GetDesc;
				public new function [CallingConvention(.Stdcall)] ID3D11ShaderReflectionConstantBuffer*(ref ID3D11FunctionReflection self, uint32 BufferIndex) GetConstantBufferByIndex;
				public new function [CallingConvention(.Stdcall)] ID3D11ShaderReflectionConstantBuffer*(ref ID3D11FunctionReflection self, PSTR Name) GetConstantBufferByName;
				public new function [CallingConvention(.Stdcall)] HRESULT(ref ID3D11FunctionReflection self, uint32 ResourceIndex, out D3D11_SHADER_INPUT_BIND_DESC pDesc) GetResourceBindingDesc;
				public new function [CallingConvention(.Stdcall)] ID3D11ShaderReflectionVariable*(ref ID3D11FunctionReflection self, PSTR Name) GetVariableByName;
				public new function [CallingConvention(.Stdcall)] HRESULT(ref ID3D11FunctionReflection self, PSTR Name, out D3D11_SHADER_INPUT_BIND_DESC pDesc) GetResourceBindingDescByName;
				public new function [CallingConvention(.Stdcall)] ID3D11FunctionParameterReflection*(ref ID3D11FunctionReflection self, int32 ParameterIndex) GetFunctionParameter;
			}
		}
		[CRepr]
		public struct ID3D11FunctionParameterReflection
		{
			public const new Guid IID = .(0x42757488, 0x334f, 0x47fe, 0x98, 0x2e, 0x1a, 0x65, 0xd0, 0x8c, 0xc4, 0x62);
			
			protected VTable* vt;
			public new VTable* VT { get => (.)vt; }
			
			public HRESULT GetDesc(out D3D11_PARAMETER_DESC pDesc) mut => VT.GetDesc(ref this, out pDesc);

			[CRepr]
			public struct VTable
			{
				public new function [CallingConvention(.Stdcall)] HRESULT(ref ID3D11FunctionParameterReflection self, out D3D11_PARAMETER_DESC pDesc) GetDesc;
			}
		}
		[CRepr]
		public struct ID3D11ModuleInstance : IUnknown
		{
			public const new Guid IID = .(0x469e07f7, 0x045a, 0x48d5, 0xaa, 0x12, 0x68, 0xa4, 0x78, 0xcd, 0xf7, 0x5d);
			
			public new VTable* VT { get => (.)vt; }
			
			public HRESULT BindConstantBuffer(uint32 uSrcSlot, uint32 uDstSlot, uint32 cbDstOffset) mut => VT.BindConstantBuffer(ref this, uSrcSlot, uDstSlot, cbDstOffset);
			public HRESULT BindConstantBufferByName(PSTR pName, uint32 uDstSlot, uint32 cbDstOffset) mut => VT.BindConstantBufferByName(ref this, pName, uDstSlot, cbDstOffset);
			public HRESULT BindResource(uint32 uSrcSlot, uint32 uDstSlot, uint32 uCount) mut => VT.BindResource(ref this, uSrcSlot, uDstSlot, uCount);
			public HRESULT BindResourceByName(PSTR pName, uint32 uDstSlot, uint32 uCount) mut => VT.BindResourceByName(ref this, pName, uDstSlot, uCount);
			public HRESULT BindSampler(uint32 uSrcSlot, uint32 uDstSlot, uint32 uCount) mut => VT.BindSampler(ref this, uSrcSlot, uDstSlot, uCount);
			public HRESULT BindSamplerByName(PSTR pName, uint32 uDstSlot, uint32 uCount) mut => VT.BindSamplerByName(ref this, pName, uDstSlot, uCount);
			public HRESULT BindUnorderedAccessView(uint32 uSrcSlot, uint32 uDstSlot, uint32 uCount) mut => VT.BindUnorderedAccessView(ref this, uSrcSlot, uDstSlot, uCount);
			public HRESULT BindUnorderedAccessViewByName(PSTR pName, uint32 uDstSlot, uint32 uCount) mut => VT.BindUnorderedAccessViewByName(ref this, pName, uDstSlot, uCount);
			public HRESULT BindResourceAsUnorderedAccessView(uint32 uSrcSrvSlot, uint32 uDstUavSlot, uint32 uCount) mut => VT.BindResourceAsUnorderedAccessView(ref this, uSrcSrvSlot, uDstUavSlot, uCount);
			public HRESULT BindResourceAsUnorderedAccessViewByName(PSTR pSrvName, uint32 uDstUavSlot, uint32 uCount) mut => VT.BindResourceAsUnorderedAccessViewByName(ref this, pSrvName, uDstUavSlot, uCount);

			[CRepr]
			public struct VTable : IUnknown.VTable
			{
				public new function [CallingConvention(.Stdcall)] HRESULT(ref ID3D11ModuleInstance self, uint32 uSrcSlot, uint32 uDstSlot, uint32 cbDstOffset) BindConstantBuffer;
				public new function [CallingConvention(.Stdcall)] HRESULT(ref ID3D11ModuleInstance self, PSTR pName, uint32 uDstSlot, uint32 cbDstOffset) BindConstantBufferByName;
				public new function [CallingConvention(.Stdcall)] HRESULT(ref ID3D11ModuleInstance self, uint32 uSrcSlot, uint32 uDstSlot, uint32 uCount) BindResource;
				public new function [CallingConvention(.Stdcall)] HRESULT(ref ID3D11ModuleInstance self, PSTR pName, uint32 uDstSlot, uint32 uCount) BindResourceByName;
				public new function [CallingConvention(.Stdcall)] HRESULT(ref ID3D11ModuleInstance self, uint32 uSrcSlot, uint32 uDstSlot, uint32 uCount) BindSampler;
				public new function [CallingConvention(.Stdcall)] HRESULT(ref ID3D11ModuleInstance self, PSTR pName, uint32 uDstSlot, uint32 uCount) BindSamplerByName;
				public new function [CallingConvention(.Stdcall)] HRESULT(ref ID3D11ModuleInstance self, uint32 uSrcSlot, uint32 uDstSlot, uint32 uCount) BindUnorderedAccessView;
				public new function [CallingConvention(.Stdcall)] HRESULT(ref ID3D11ModuleInstance self, PSTR pName, uint32 uDstSlot, uint32 uCount) BindUnorderedAccessViewByName;
				public new function [CallingConvention(.Stdcall)] HRESULT(ref ID3D11ModuleInstance self, uint32 uSrcSrvSlot, uint32 uDstUavSlot, uint32 uCount) BindResourceAsUnorderedAccessView;
				public new function [CallingConvention(.Stdcall)] HRESULT(ref ID3D11ModuleInstance self, PSTR pSrvName, uint32 uDstUavSlot, uint32 uCount) BindResourceAsUnorderedAccessViewByName;
			}
		}
		[CRepr]
		public struct ID3D11Module : IUnknown
		{
			public const new Guid IID = .(0xcac701ee, 0x80fc, 0x4122, 0x82, 0x42, 0x10, 0xb3, 0x9c, 0x8c, 0xec, 0x34);
			
			public new VTable* VT { get => (.)vt; }
			
			public HRESULT CreateInstance(PSTR pNamespace, out ID3D11ModuleInstance* ppModuleInstance) mut => VT.CreateInstance(ref this, pNamespace, out ppModuleInstance);

			[CRepr]
			public struct VTable : IUnknown.VTable
			{
				public new function [CallingConvention(.Stdcall)] HRESULT(ref ID3D11Module self, PSTR pNamespace, out ID3D11ModuleInstance* ppModuleInstance) CreateInstance;
			}
		}
		[CRepr]
		public struct ID3D11Linker : IUnknown
		{
			public const new Guid IID = .(0x59a6cd0e, 0xe10d, 0x4c1f, 0x88, 0xc0, 0x63, 0xab, 0xa1, 0xda, 0xf3, 0x0e);
			
			public new VTable* VT { get => (.)vt; }
			
			public HRESULT Link(ref ID3D11ModuleInstance pEntry, PSTR pEntryName, PSTR pTargetName, uint32 uFlags, out ID3DBlob* ppShaderBlob, ID3DBlob** ppErrorBuffer) mut => VT.Link(ref this, ref pEntry, pEntryName, pTargetName, uFlags, out ppShaderBlob, ppErrorBuffer);
			public HRESULT UseLibrary(ref ID3D11ModuleInstance pLibraryMI) mut => VT.UseLibrary(ref this, ref pLibraryMI);
			public HRESULT AddClipPlaneFromCBuffer(uint32 uCBufferSlot, uint32 uCBufferEntry) mut => VT.AddClipPlaneFromCBuffer(ref this, uCBufferSlot, uCBufferEntry);

			[CRepr]
			public struct VTable : IUnknown.VTable
			{
				public new function [CallingConvention(.Stdcall)] HRESULT(ref ID3D11Linker self, ref ID3D11ModuleInstance pEntry, PSTR pEntryName, PSTR pTargetName, uint32 uFlags, out ID3DBlob* ppShaderBlob, ID3DBlob** ppErrorBuffer) Link;
				public new function [CallingConvention(.Stdcall)] HRESULT(ref ID3D11Linker self, ref ID3D11ModuleInstance pLibraryMI) UseLibrary;
				public new function [CallingConvention(.Stdcall)] HRESULT(ref ID3D11Linker self, uint32 uCBufferSlot, uint32 uCBufferEntry) AddClipPlaneFromCBuffer;
			}
		}
		[CRepr]
		public struct ID3D11LinkingNode : IUnknown
		{
			public const new Guid IID = .(0xd80dd70c, 0x8d2f, 0x4751, 0x94, 0xa1, 0x03, 0xc7, 0x9b, 0x35, 0x56, 0xdb);
			
			public new VTable* VT { get => (.)vt; }
			
			[CRepr]
			public struct VTable : IUnknown.VTable {}
		}
		[CRepr]
		public struct ID3D11FunctionLinkingGraph : IUnknown
		{
			public const new Guid IID = .(0x54133220, 0x1ce8, 0x43d3, 0x82, 0x36, 0x98, 0x55, 0xc5, 0xce, 0xec, 0xff);
			
			public new VTable* VT { get => (.)vt; }
			
			public HRESULT CreateModuleInstance(out ID3D11ModuleInstance* ppModuleInstance, ID3DBlob** ppErrorBuffer) mut => VT.CreateModuleInstance(ref this, out ppModuleInstance, ppErrorBuffer);
			public HRESULT SetInputSignature(D3D11_PARAMETER_DESC* pInputParameters, uint32 cInputParameters, out ID3D11LinkingNode* ppInputNode) mut => VT.SetInputSignature(ref this, pInputParameters, cInputParameters, out ppInputNode);
			public HRESULT SetOutputSignature(D3D11_PARAMETER_DESC* pOutputParameters, uint32 cOutputParameters, out ID3D11LinkingNode* ppOutputNode) mut => VT.SetOutputSignature(ref this, pOutputParameters, cOutputParameters, out ppOutputNode);
			public HRESULT CallFunction(PSTR pModuleInstanceNamespace, ref ID3D11Module pModuleWithFunctionPrototype, PSTR pFunctionName, out ID3D11LinkingNode* ppCallNode) mut => VT.CallFunction(ref this, pModuleInstanceNamespace, ref pModuleWithFunctionPrototype, pFunctionName, out ppCallNode);
			public HRESULT PassValue(ref ID3D11LinkingNode pSrcNode, int32 SrcParameterIndex, ref ID3D11LinkingNode pDstNode, int32 DstParameterIndex) mut => VT.PassValue(ref this, ref pSrcNode, SrcParameterIndex, ref pDstNode, DstParameterIndex);
			public HRESULT PassValueWithSwizzle(ref ID3D11LinkingNode pSrcNode, int32 SrcParameterIndex, PSTR pSrcSwizzle, ref ID3D11LinkingNode pDstNode, int32 DstParameterIndex, PSTR pDstSwizzle) mut => VT.PassValueWithSwizzle(ref this, ref pSrcNode, SrcParameterIndex, pSrcSwizzle, ref pDstNode, DstParameterIndex, pDstSwizzle);
			public HRESULT GetLastError(ID3DBlob** ppErrorBuffer) mut => VT.GetLastError(ref this, ppErrorBuffer);
			public HRESULT GenerateHlsl(uint32 uFlags, out ID3DBlob* ppBuffer) mut => VT.GenerateHlsl(ref this, uFlags, out ppBuffer);

			[CRepr]
			public struct VTable : IUnknown.VTable
			{
				public new function [CallingConvention(.Stdcall)] HRESULT(ref ID3D11FunctionLinkingGraph self, out ID3D11ModuleInstance* ppModuleInstance, ID3DBlob** ppErrorBuffer) CreateModuleInstance;
				public new function [CallingConvention(.Stdcall)] HRESULT(ref ID3D11FunctionLinkingGraph self, D3D11_PARAMETER_DESC* pInputParameters, uint32 cInputParameters, out ID3D11LinkingNode* ppInputNode) SetInputSignature;
				public new function [CallingConvention(.Stdcall)] HRESULT(ref ID3D11FunctionLinkingGraph self, D3D11_PARAMETER_DESC* pOutputParameters, uint32 cOutputParameters, out ID3D11LinkingNode* ppOutputNode) SetOutputSignature;
				public new function [CallingConvention(.Stdcall)] HRESULT(ref ID3D11FunctionLinkingGraph self, PSTR pModuleInstanceNamespace, ref ID3D11Module pModuleWithFunctionPrototype, PSTR pFunctionName, out ID3D11LinkingNode* ppCallNode) CallFunction;
				public new function [CallingConvention(.Stdcall)] HRESULT(ref ID3D11FunctionLinkingGraph self, ref ID3D11LinkingNode pSrcNode, int32 SrcParameterIndex, ref ID3D11LinkingNode pDstNode, int32 DstParameterIndex) PassValue;
				public new function [CallingConvention(.Stdcall)] HRESULT(ref ID3D11FunctionLinkingGraph self, ref ID3D11LinkingNode pSrcNode, int32 SrcParameterIndex, PSTR pSrcSwizzle, ref ID3D11LinkingNode pDstNode, int32 DstParameterIndex, PSTR pDstSwizzle) PassValueWithSwizzle;
				public new function [CallingConvention(.Stdcall)] HRESULT(ref ID3D11FunctionLinkingGraph self, ID3DBlob** ppErrorBuffer) GetLastError;
				public new function [CallingConvention(.Stdcall)] HRESULT(ref ID3D11FunctionLinkingGraph self, uint32 uFlags, out ID3DBlob* ppBuffer) GenerateHlsl;
			}
		}
		[CRepr]
		public struct ID3D11ShaderTrace : IUnknown
		{
			public const new Guid IID = .(0x36b013e6, 0x2811, 0x4845, 0xba, 0xa7, 0xd6, 0x23, 0xfe, 0x0d, 0xf1, 0x04);
			
			public new VTable* VT { get => (.)vt; }
			
			public HRESULT TraceReady(uint64* pTestCount) mut => VT.TraceReady(ref this, pTestCount);
			public void ResetTrace() mut => VT.ResetTrace(ref this);
			public HRESULT GetTraceStats(out D3D11_TRACE_STATS pTraceStats) mut => VT.GetTraceStats(ref this, out pTraceStats);
			public HRESULT PSSelectStamp(uint32 stampIndex) mut => VT.PSSelectStamp(ref this, stampIndex);
			public HRESULT GetInitialRegisterContents(ref D3D11_TRACE_REGISTER pRegister, out D3D11_TRACE_VALUE pValue) mut => VT.GetInitialRegisterContents(ref this, ref pRegister, out pValue);
			public HRESULT GetStep(uint32 stepIndex, out D3D11_TRACE_STEP pTraceStep) mut => VT.GetStep(ref this, stepIndex, out pTraceStep);
			public HRESULT GetWrittenRegister(uint32 stepIndex, uint32 writtenRegisterIndex, out D3D11_TRACE_REGISTER pRegister, out D3D11_TRACE_VALUE pValue) mut => VT.GetWrittenRegister(ref this, stepIndex, writtenRegisterIndex, out pRegister, out pValue);
			public HRESULT GetReadRegister(uint32 stepIndex, uint32 readRegisterIndex, out D3D11_TRACE_REGISTER pRegister, out D3D11_TRACE_VALUE pValue) mut => VT.GetReadRegister(ref this, stepIndex, readRegisterIndex, out pRegister, out pValue);

			[CRepr]
			public struct VTable : IUnknown.VTable
			{
				public new function [CallingConvention(.Stdcall)] HRESULT(ref ID3D11ShaderTrace self, uint64* pTestCount) TraceReady;
				public new function [CallingConvention(.Stdcall)] void(ref ID3D11ShaderTrace self) ResetTrace;
				public new function [CallingConvention(.Stdcall)] HRESULT(ref ID3D11ShaderTrace self, out D3D11_TRACE_STATS pTraceStats) GetTraceStats;
				public new function [CallingConvention(.Stdcall)] HRESULT(ref ID3D11ShaderTrace self, uint32 stampIndex) PSSelectStamp;
				public new function [CallingConvention(.Stdcall)] HRESULT(ref ID3D11ShaderTrace self, ref D3D11_TRACE_REGISTER pRegister, out D3D11_TRACE_VALUE pValue) GetInitialRegisterContents;
				public new function [CallingConvention(.Stdcall)] HRESULT(ref ID3D11ShaderTrace self, uint32 stepIndex, out D3D11_TRACE_STEP pTraceStep) GetStep;
				public new function [CallingConvention(.Stdcall)] HRESULT(ref ID3D11ShaderTrace self, uint32 stepIndex, uint32 writtenRegisterIndex, out D3D11_TRACE_REGISTER pRegister, out D3D11_TRACE_VALUE pValue) GetWrittenRegister;
				public new function [CallingConvention(.Stdcall)] HRESULT(ref ID3D11ShaderTrace self, uint32 stepIndex, uint32 readRegisterIndex, out D3D11_TRACE_REGISTER pRegister, out D3D11_TRACE_VALUE pValue) GetReadRegister;
			}
		}
		[CRepr]
		public struct ID3D11ShaderTraceFactory : IUnknown
		{
			public const new Guid IID = .(0x1fbad429, 0x66ab, 0x41cc, 0x96, 0x17, 0x66, 0x7a, 0xc1, 0x0e, 0x44, 0x59);
			
			public new VTable* VT { get => (.)vt; }
			
			public HRESULT CreateShaderTrace(ref IUnknown pShader, ref D3D11_SHADER_TRACE_DESC pTraceDesc, out ID3D11ShaderTrace* ppShaderTrace) mut => VT.CreateShaderTrace(ref this, ref pShader, ref pTraceDesc, out ppShaderTrace);

			[CRepr]
			public struct VTable : IUnknown.VTable
			{
				public new function [CallingConvention(.Stdcall)] HRESULT(ref ID3D11ShaderTraceFactory self, ref IUnknown pShader, ref D3D11_SHADER_TRACE_DESC pTraceDesc, out ID3D11ShaderTrace* ppShaderTrace) CreateShaderTrace;
			}
		}
		[CRepr]
		public struct ID3DX11Scan : IUnknown
		{
			public const new Guid IID = .(0x5089b68f, 0xe71d, 0x4d38, 0xbe, 0x8e, 0xf3, 0x63, 0xb9, 0x5a, 0x94, 0x05);
			
			public new VTable* VT { get => (.)vt; }
			
			public HRESULT SetScanDirection(D3DX11_SCAN_DIRECTION Direction) mut => VT.SetScanDirection(ref this, Direction);
			public HRESULT Scan(D3DX11_SCAN_DATA_TYPE ElementType, D3DX11_SCAN_OPCODE OpCode, uint32 ElementScanSize, ref ID3D11UnorderedAccessView pSrc, ref ID3D11UnorderedAccessView pDst) mut => VT.Scan(ref this, ElementType, OpCode, ElementScanSize, ref pSrc, ref pDst);
			public HRESULT Multiscan(D3DX11_SCAN_DATA_TYPE ElementType, D3DX11_SCAN_OPCODE OpCode, uint32 ElementScanSize, uint32 ElementScanPitch, uint32 ScanCount, ref ID3D11UnorderedAccessView pSrc, ref ID3D11UnorderedAccessView pDst) mut => VT.Multiscan(ref this, ElementType, OpCode, ElementScanSize, ElementScanPitch, ScanCount, ref pSrc, ref pDst);

			[CRepr]
			public struct VTable : IUnknown.VTable
			{
				public new function [CallingConvention(.Stdcall)] HRESULT(ref ID3DX11Scan self, D3DX11_SCAN_DIRECTION Direction) SetScanDirection;
				public new function [CallingConvention(.Stdcall)] HRESULT(ref ID3DX11Scan self, D3DX11_SCAN_DATA_TYPE ElementType, D3DX11_SCAN_OPCODE OpCode, uint32 ElementScanSize, ref ID3D11UnorderedAccessView pSrc, ref ID3D11UnorderedAccessView pDst) Scan;
				public new function [CallingConvention(.Stdcall)] HRESULT(ref ID3DX11Scan self, D3DX11_SCAN_DATA_TYPE ElementType, D3DX11_SCAN_OPCODE OpCode, uint32 ElementScanSize, uint32 ElementScanPitch, uint32 ScanCount, ref ID3D11UnorderedAccessView pSrc, ref ID3D11UnorderedAccessView pDst) Multiscan;
			}
		}
		[CRepr]
		public struct ID3DX11SegmentedScan : IUnknown
		{
			public const new Guid IID = .(0xa915128c, 0xd954, 0x4c79, 0xbf, 0xe1, 0x64, 0xdb, 0x92, 0x31, 0x94, 0xd6);
			
			public new VTable* VT { get => (.)vt; }
			
			public HRESULT SetScanDirection(D3DX11_SCAN_DIRECTION Direction) mut => VT.SetScanDirection(ref this, Direction);
			public HRESULT SegScan(D3DX11_SCAN_DATA_TYPE ElementType, D3DX11_SCAN_OPCODE OpCode, uint32 ElementScanSize, ID3D11UnorderedAccessView* pSrc, ref ID3D11UnorderedAccessView pSrcElementFlags, ref ID3D11UnorderedAccessView pDst) mut => VT.SegScan(ref this, ElementType, OpCode, ElementScanSize, pSrc, ref pSrcElementFlags, ref pDst);

			[CRepr]
			public struct VTable : IUnknown.VTable
			{
				public new function [CallingConvention(.Stdcall)] HRESULT(ref ID3DX11SegmentedScan self, D3DX11_SCAN_DIRECTION Direction) SetScanDirection;
				public new function [CallingConvention(.Stdcall)] HRESULT(ref ID3DX11SegmentedScan self, D3DX11_SCAN_DATA_TYPE ElementType, D3DX11_SCAN_OPCODE OpCode, uint32 ElementScanSize, ID3D11UnorderedAccessView* pSrc, ref ID3D11UnorderedAccessView pSrcElementFlags, ref ID3D11UnorderedAccessView pDst) SegScan;
			}
		}
		[CRepr]
		public struct ID3DX11FFT : IUnknown
		{
			public const new Guid IID = .(0xb3f7a938, 0x4c93, 0x4310, 0xa6, 0x75, 0xb3, 0x0d, 0x6d, 0xe5, 0x05, 0x53);
			
			public new VTable* VT { get => (.)vt; }
			
			public HRESULT SetForwardScale(float ForwardScale) mut => VT.SetForwardScale(ref this, ForwardScale);
			public float GetForwardScale() mut => VT.GetForwardScale(ref this);
			public HRESULT SetInverseScale(float InverseScale) mut => VT.SetInverseScale(ref this, InverseScale);
			public float GetInverseScale() mut => VT.GetInverseScale(ref this);
			public HRESULT AttachBuffersAndPrecompute(uint32 NumTempBuffers, ID3D11UnorderedAccessView** ppTempBuffers, uint32 NumPrecomputeBuffers, ID3D11UnorderedAccessView** ppPrecomputeBufferSizes) mut => VT.AttachBuffersAndPrecompute(ref this, NumTempBuffers, ppTempBuffers, NumPrecomputeBuffers, ppPrecomputeBufferSizes);
			public HRESULT ForwardTransform(in ID3D11UnorderedAccessView pInputBuffer, out ID3D11UnorderedAccessView* ppOutputBuffer) mut => VT.ForwardTransform(ref this, pInputBuffer, out ppOutputBuffer);
			public HRESULT InverseTransform(in ID3D11UnorderedAccessView pInputBuffer, out ID3D11UnorderedAccessView* ppOutputBuffer) mut => VT.InverseTransform(ref this, pInputBuffer, out ppOutputBuffer);

			[CRepr]
			public struct VTable : IUnknown.VTable
			{
				public new function [CallingConvention(.Stdcall)] HRESULT(ref ID3DX11FFT self, float ForwardScale) SetForwardScale;
				public new function [CallingConvention(.Stdcall)] float(ref ID3DX11FFT self) GetForwardScale;
				public new function [CallingConvention(.Stdcall)] HRESULT(ref ID3DX11FFT self, float InverseScale) SetInverseScale;
				public new function [CallingConvention(.Stdcall)] float(ref ID3DX11FFT self) GetInverseScale;
				public new function [CallingConvention(.Stdcall)] HRESULT(ref ID3DX11FFT self, uint32 NumTempBuffers, ID3D11UnorderedAccessView** ppTempBuffers, uint32 NumPrecomputeBuffers, ID3D11UnorderedAccessView** ppPrecomputeBufferSizes) AttachBuffersAndPrecompute;
				public new function [CallingConvention(.Stdcall)] HRESULT(ref ID3DX11FFT self, in ID3D11UnorderedAccessView pInputBuffer, out ID3D11UnorderedAccessView* ppOutputBuffer) ForwardTransform;
				public new function [CallingConvention(.Stdcall)] HRESULT(ref ID3DX11FFT self, in ID3D11UnorderedAccessView pInputBuffer, out ID3D11UnorderedAccessView* ppOutputBuffer) InverseTransform;
			}
		}
		
		// --- Functions ---
		
		[Import("d3d11.dll"), CLink, CallingConvention(.Stdcall)]
		public static extern HRESULT D3D11CreateDevice(IDXGIAdapter* pAdapter, D3D_DRIVER_TYPE DriverType, HINSTANCE Software, D3D11_CREATE_DEVICE_FLAG Flags, D3D_FEATURE_LEVEL* pFeatureLevels, uint32 FeatureLevels, uint32 SDKVersion, ID3D11Device** ppDevice, D3D_FEATURE_LEVEL* pFeatureLevel, ID3D11DeviceContext** ppImmediateContext);
		[Import("d3d11.dll"), CLink, CallingConvention(.Stdcall)]
		public static extern HRESULT D3D11CreateDeviceAndSwapChain(IDXGIAdapter* pAdapter, D3D_DRIVER_TYPE DriverType, HINSTANCE Software, D3D11_CREATE_DEVICE_FLAG Flags, D3D_FEATURE_LEVEL* pFeatureLevels, uint32 FeatureLevels, uint32 SDKVersion, DXGI_SWAP_CHAIN_DESC* pSwapChainDesc, IDXGISwapChain** ppSwapChain, ID3D11Device** ppDevice, D3D_FEATURE_LEVEL* pFeatureLevel, ID3D11DeviceContext** ppImmediateContext);
		[Import("d3dcompiler_47.dll"), CLink, CallingConvention(.Stdcall)]
		public static extern HRESULT D3DDisassemble11Trace(void* pSrcData, uint SrcDataSize, ref ID3D11ShaderTrace pTrace, uint32 StartStep, uint32 NumSteps, uint32 Flags, out ID3DBlob* ppDisassembly);
		[Import("d3dcsx.dll"), CLink, CallingConvention(.Stdcall)]
		public static extern HRESULT D3DX11CreateScan(ref ID3D11DeviceContext pDeviceContext, uint32 MaxElementScanSize, uint32 MaxScanCount, out ID3DX11Scan* ppScan);
		[Import("d3dcsx.dll"), CLink, CallingConvention(.Stdcall)]
		public static extern HRESULT D3DX11CreateSegmentedScan(ref ID3D11DeviceContext pDeviceContext, uint32 MaxElementScanSize, out ID3DX11SegmentedScan* ppScan);
		[Import("d3dcsx.dll"), CLink, CallingConvention(.Stdcall)]
		public static extern HRESULT D3DX11CreateFFT(ref ID3D11DeviceContext pDeviceContext, in D3DX11_FFT_DESC pDesc, uint32 Flags, out D3DX11_FFT_BUFFER_INFO pBufferInfo, out ID3DX11FFT* ppFFT);
		[Import("d3dcsx.dll"), CLink, CallingConvention(.Stdcall)]
		public static extern HRESULT D3DX11CreateFFT1DReal(ref ID3D11DeviceContext pDeviceContext, uint32 X, uint32 Flags, out D3DX11_FFT_BUFFER_INFO pBufferInfo, out ID3DX11FFT* ppFFT);
		[Import("d3dcsx.dll"), CLink, CallingConvention(.Stdcall)]
		public static extern HRESULT D3DX11CreateFFT1DComplex(ref ID3D11DeviceContext pDeviceContext, uint32 X, uint32 Flags, out D3DX11_FFT_BUFFER_INFO pBufferInfo, out ID3DX11FFT* ppFFT);
		[Import("d3dcsx.dll"), CLink, CallingConvention(.Stdcall)]
		public static extern HRESULT D3DX11CreateFFT2DReal(ref ID3D11DeviceContext pDeviceContext, uint32 X, uint32 Y, uint32 Flags, out D3DX11_FFT_BUFFER_INFO pBufferInfo, out ID3DX11FFT* ppFFT);
		[Import("d3dcsx.dll"), CLink, CallingConvention(.Stdcall)]
		public static extern HRESULT D3DX11CreateFFT2DComplex(ref ID3D11DeviceContext pDeviceContext, uint32 X, uint32 Y, uint32 Flags, out D3DX11_FFT_BUFFER_INFO pBufferInfo, out ID3DX11FFT* ppFFT);
		[Import("d3dcsx.dll"), CLink, CallingConvention(.Stdcall)]
		public static extern HRESULT D3DX11CreateFFT3DReal(ref ID3D11DeviceContext pDeviceContext, uint32 X, uint32 Y, uint32 Z, uint32 Flags, out D3DX11_FFT_BUFFER_INFO pBufferInfo, out ID3DX11FFT* ppFFT);
		[Import("d3dcsx.dll"), CLink, CallingConvention(.Stdcall)]
		public static extern HRESULT D3DX11CreateFFT3DComplex(ref ID3D11DeviceContext pDeviceContext, uint32 X, uint32 Y, uint32 Z, uint32 Flags, out D3DX11_FFT_BUFFER_INFO pBufferInfo, out ID3DX11FFT* ppFFT);
	}
}
